(57)【要約】【構成】電源を投入すると、携帯ゲーム機のＣＰＵは、起動用プログラムを実行し、まず、ステップＳ３でカートリッジを検出する。カートリッジが装着されておらずかつ別のゲーム機と通信可能なときには、起動用プログラムに従って、ステップＳ１１で別のゲーム機にプログラムの転送を要求する。別のゲーム機は、その転送要求に応じて、プログラムを読出して携帯ゲーム機へ転送する。携帯ゲーム機は、起動用プログラムに従って、ステップＳ１３で、転送されたプログラムをワークＲＡＭに書込み、ステップＳ１５の認証処理の後、認証ＯＫなら、ステップＳ２１でそのワークＲＡＭに書込まれたプログラムの実行を開始する。【効果】携帯ゲーム機にカートリッジが装着されていなくても、別のゲーム機からのプログラムをダウンロードすることができるので、携帯ゲーム機の記憶容量を大きくしないで、ネットワークゲーム等をプレイできる。【選択図】図６
2011115625.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１ゲーム機と、第２ゲーム機とからなるゲームシステムであって、
各前記第１ゲーム機は、
前記第２ゲーム機にプログラムおよび第１コードの転送を要求する要求手段を備え、
前記第２ゲーム機は、
各前記第１ゲーム機から転送要求があったことに応じて、前記プログラムおよび前記第１コードを各前記第１ゲーム機へ転送する転送手段を備え、
各前記第１ゲーム機は、
第２コードを予め記憶している記憶手段と、
前記第２ゲーム機から転送される前記第１コードと、前記記憶手段に予め記憶されている前記第２コードとに基づいて正否を判断する判断手段と、
前記判断手段によって正と判断されたときに、前記第２ゲーム機から転送される前記プログラムを用いて他の前記第１ゲーム機および前記第２ゲーム機との間で通信ゲームの実行を開始する実行手段とをさらに備える、ゲームシステム。
【請求項２】
他のゲーム機にプログラムおよび第１コードの転送を要求する要求手段と、
第２コードを予め記憶している記憶手段と、
前記要求手段による転送要求に応じて前記他のゲーム機から転送される前記第１コードと、前記記憶手段に予め記憶されている前記第２コードとに基づいて正否を判断する判断手段と、
前記判断手段によって正と判断されたときに、前記他のゲーム機から転送される前記プログラムを用いて複数の前記他のゲーム機との間で通信ゲームの実行を開始する実行手段とを備える、ゲーム機。
【請求項３】
それぞれが記憶手段を備える複数のゲーム機においてそれぞれ用いられる方法であって、
他のゲーム機にプログラムおよび第１コードの転送を要求する要求ステップと、
前記要求手段による転送要求に応じて前記他のゲーム機から転送される前記第１コードと、前記記憶手段に予め記憶されている第２コードとに基づいて正否を判断する判断ステップと、
前記判断ステップにおいて正と判断されたときに、前記他のゲーム機から転送される前記プログラムを用いて複数の前記他のゲーム機との間で通信ゲームの実行を開始する実行ステップとを備える、方法。
【請求項４】
それぞれが記憶手段を備える複数のゲーム機のコンピュータによってそれぞれ実行されるプログラムであって、
前記コンピュータを、
他のゲーム機にプログラムおよび第１コードの転送を要求する要求手段と、
前記要求手段による転送要求に応じて前記他のゲーム機から転送される前記第１コードと、前記記憶手段に予め記憶されている第２コードとに基づいて正否を判断する判断手段と、
前記判断手段によって正と判断されたときに、前記他のゲーム機から転送される前記プログラムを用いて複数の前記他のゲーム機との間で通信ゲームの実行を開始する実行手段として機能させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はゲームシステムおよび携帯ゲーム機に関し、特に携帯ゲーム機およびビデオゲーム機を通信可能に接続したゲームシステムおよびそれに用いる携帯ゲーム機に関する。
【背景技術】
【０００２】
たとえば「ゲームボーイ（商品名）」のように、カートリッジを利用する携帯ゲーム機がよく知られている。
【０００３】
この種の携帯ゲーム機は、ブートプログラムが記憶されたブートＲＯＭを備えている。ブートプログラムは、携帯ゲーム機本体を初期化（メモリセルに零を書込む処理等）し、その初期化後にカートリッジに搭載されているゲームプログラムの実行を開始させるためのプログラムである。したがって、携帯ゲーム機のＣＰＵは、本体電源がオンされたときに、まず、ブートプログラムを実行する。ＣＰＵは、ブートプログラムによる初期化処理を実行した後に、ゲームプログラム処理を実行する。
【０００４】
他方、このような携帯ゲーム機は、他のゲーム機や通信装置との間で通信するための通信ポートを備えていて、カートリッジのゲームプログラムをＣＰＵによって実行している過程でその通信ポートを利用してゲームデータやゲームプログラム等を取得することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平４−１１６７４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の携帯ゲーム機では、通信ポートを利用して、他のゲーム機等からゲームデータやゲームプログラムを取得できるので、ゲームデータの交換やネットワークゲームがプレイできるという、利点がある。
【０００７】
しかしながら、携帯ゲーム機にカートリッジを装着しないかぎり、通信ポートを利用することができないので、通信ポートを介して複数の携帯ゲーム機の間でデータの送受信をするためには、各携帯ゲーム機ごとにカートリッジを用意しなければならないという問題がある。特に、複数の携帯ゲーム機でネットワークゲームを行なうためには、ネットワークゲームのプログラムを搭載したカートリッジを携帯ゲーム機毎に用意する必要が生じる。
【０００８】
例えば、特許文献１のように、携帯ゲーム機毎に同じのカートリッジを用意する必要がないように、通信ソフトなどの補助プログラムを携帯ゲーム機本体に予め記憶させておくことが考えられるが、その場合には、その補助プログラムのために記憶容量を大きくする必要が生じるので、携帯ゲーム機自体の製造コストの上昇を招くという問題も生じる。また、このように補助プログラムを携帯ゲーム機に予め記憶させる場合には、通信ポートを利用できる別の機器やゲーム機が新たに開発されたときに、それらの機器やゲーム機に対応できないという問題もある。さらに、バグフィックスや機能拡張などにより補助プログラムのバージョンアップなどがあったとき、バージョンの違う補助プログラムを記憶した携帯ゲーム機間の通信等ができないという問題が生じる場合もある。
【０００９】
それゆえに、この発明の主たる目的は、新規なゲームシステムおよび携帯ゲーム機を提供することである。
【００１０】
この発明の他の目的は、携帯ゲーム機に同種のカートリッジを装着しないでも通信ポートを利用したデータ通信ができる、ゲームシステムおよびそれに用いる携帯ゲーム機を提供することである。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明は以下の構成を採用した。
【００１２】
第１の発明は、複数の第１ゲーム機と、第２ゲーム機とからなるゲームシステムであって、各第１ゲーム機は、第２ゲーム機にプログラムおよび第１コードの転送を要求する要求手段を備え、第２ゲーム機は、各第１ゲーム機から転送要求があったことに応じて、プログラムおよび第１コードを各第１ゲーム機へ転送する転送手段を備え、各第１ゲーム機は、第２コードを予め記憶している記憶手段と、第２ゲーム機から転送される第１コードと、記憶手段に予め記憶されている第２コードとに基づいて正否を判断する判断手段と、判断手段によって正と判断されたときに、第２ゲーム機から転送されるプログラムを用いて他の第１ゲーム機および第２ゲーム機との間で通信ゲームの実行を開始する実行手段とをさらに備える、ゲームシステムである。
【００１３】
第２の発明は、他のゲーム機にプログラムおよび第１コードの転送を要求する要求手段と、第２コードを予め記憶している記憶手段と、要求手段による転送要求に応じて他のゲーム機から転送される第１コードと、記憶手段に予め記憶されている第２コードとに基づいて正否を判断する判断手段と、判断手段によって正と判断されたときに、他のゲーム機から転送されるプログラムを用いて複数の他のゲーム機との間で通信ゲームの実行を開始する実行手段とを備える、ゲーム機である。
【００１４】
また、本発明は、上記各手段を備えるプログラムや上記各手段で行われる動作を含む方法の形態で実施されてもよい。
【発明の効果】
【００１５】
この発明によれば、新規なゲームシステムおよび携帯ゲーム機を提供できる。
【００１６】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００１７】
【図１】図１はこの発明の一実施例を示す図解図である。
【図２】図２は図１実施例を示すブロック図である。
【図３】図３（Ａ）は携帯ゲーム機のブートＲＯＭを示すメモリマップであり、図３（Ｂ）は携帯ゲーム機のワークＲＡＭを示すメモリマップであり、図３（Ｃ）はカートリッジのＲＯＭを示すメモリマップである。
【図４】図４（Ａ）ビデオゲーム機のブートＲＯＭを示すメモリマップであり、図４（Ｂ）はＤＶＤ−ＲＯＭを示すメモリマップである。
【図５】図５はＤＶＤ−ＲＯＭのプログラムデータが分割して携帯ゲーム機のワークＲＡＭに転送されることを示す図解図である。
【図６】図６は実施例の全体動作を示すフロー図である。
【図７】図７はカートリッジ検出処理を示すフロー図である。
【図８】図８は携帯ゲーム機においてワークＲＡＭのプログラムデータに従ってゲームを実行する動作を示すフロー図である。
【図９】図９はこの発明の一実施例を示す図解図である。
【図１０】図１０はこの発明の他の実施例を示す図解図である。
【図１１】図１１は図１０実施例における親側携帯ゲーム機および子側携帯ゲーム機のメモリマップを示す図解図である。
【図１２】図１２は図１０実施例における親側携帯ゲーム機および子側携帯ゲーム機の動作を示すフロー図である。
【図１３】図１３は図１０実施例において親側携帯ゲーム機から転送されたデモ画面表示処理プログラムを子側携帯ゲーム機で実行した場合のデモ画面の一例を示す図解図である。
【発明を実施するための形態】
【００１８】
＜実施例＞
図１を参照して、この発明の一実施例であるゲームシステム１０は、携帯ゲーム機１２およびビデオゲーム機１４を含む。携帯ゲーム機１２の通信ポート１６とビデオゲーム機１４の通信ポート１８とが、通信ケーブル２０によって、接続される。
【００１９】
携帯ゲーム機１２は、手持ち可能なサイズのたとえば縦長または横長矩形のゲーム機本体２２を有する。その本体２２の表面上部には、ディスプレイを構成するＬＣＤ（液晶表示器）２４が設けられる。このＬＣＤ２４には、ゲーム空間およびそのゲーム空間内に存在するゲームキャラクタが表示されるとともに、必要なメッセージが表示される。本体側面には前述の通信ポート１６が設けられる。本体２２の表面下部には、コントローラ２６が配置される。コントローラ２６は、この実施例では、５つの操作キー２８、３０、３２、３４および３６を含む。これらの操作キー２８−３６は、典型的には、本体２２を把持したゲームプレイヤの手の親指で操作される。
【００２０】
操作キー２８は、ディジタルジョイスティックとして機能する十字キーであり、４つの押圧部の１つを押圧することによって、ＬＣＤ２４上に表示されたゲームキャラクタの移動方向を指示したりカーソルを移動させたりすることができる。操作キー３０は、プッシュスイッチで構成されたセレクトキーであり、ゲームモードの選択等に利用される。操作キー３２は、プッシュスイッチで構成されたスタートキーであり、ゲーム開始を指示するため等に利用される。操作キー３４は、プッシュスイッチで構成されたＡボタンキーであり、ＬＣＤ２４上のゲームキャラクタに打つ、投げる、つかむ、乗るなどの任意のアクションを行わしめるために利用される。操作キー３６は、プッシュスイッチで構成されたＢボタンキーであり、セレクトキー３０で選択したゲームモードの変更やＡボタンキー３４で決定したアクションの取り消し等のために利用される。
【００２１】
携帯ゲーム機１２において、本体２２の裏面上端部には、挿入口３８が形成される。その挿入口３８には、第１情報記憶媒体であるゲームカートリッジ４０が挿入される。図示しないが、挿入口３８の奥部とおよびゲームカートリッジ４０の挿入方向先端とには、それぞれコネクタが設けられていて、カートリッジ４０を挿入口３８に挿入したとき、２つのコネクタが互いに電気的に接続され、それによってカートリッジ４０が携帯ゲーム機１２のＣＰＵ（図２）でアクセス可能となる。
【００２２】
一方、ビデオゲーム機１４は、「別のゲーム機」として機能するゲーム機であり、扁平矩形の本体４２を含み、その本体４２の前面に前述の通信ポート１８が配置される。この実施例では、４つの通信ポート１８が設けられる。
【００２３】
本体４２の上面には、ディスクドライブ４４が設けられていて、そのディスクドライブ４４には、この実施例では、第２情報記憶媒体であるＤＶＤ−ＲＯＭ４６が装着される。
【００２４】
本体４２の後面には図示しないＡＶ（オーディオビデオ）端子が設けられていて、そのＡＶ端子がケーブル４８によってＴＶモニタ５０のＡＶ端子に接続される。ただし、このＡＶ端子は、ビデオ信号およびオーディオ信号を伝達するもものほか、それらの変調信号を伝達するものであってよい。
【００２５】
本体４２の前面に設けられた通信ポート１８に前述のように通信ケーブル２０が接続されるが、この通信ポート１８には、また、外部コントローラ５２から延びたコントローラケーブル５４が接続され得る。外部コントローラ５２は、ビデオゲーム機１４のためのものであり、この実施例では、十字キー５６、アナログジョイスティック５８、スタートキー６０および押しボタンキー群６２を含む。
【００２６】
十字キー５６およびスタートキー６０は、それぞれ、携帯ゲーム機１２の十字キー２８およびスタートキー３２と同様の構成および同様の機能を有する。アナログジョイスティック５８は、解放時に直立しかつたとえば指で外力を加えた方向に傾動する操作レバー６４を含み、この操作レバー６４を任意の方向に傾動させることによって、３６０°の範囲の任意の方向を指示することができる。アナログジョイスティック５８は、十字キー５６と同様に、ゲームキャラクタの移動やカーソル移動のために利用される。押しボタンキー群６２は、この実施例では、携帯ゲーム機１２のＡボタンキー３４およびＢボタンキー３６に相当する２つのキーのほか、上下左右の方向を指示できる４つの押しボタンキーを含む。
【００２７】
図１実施例の電気的構成が図２に示される。携帯ゲーム機１２には、前述のようにＣＰＵ６６が設けられ、このＣＰＵ６６が携帯ゲーム機１２の全体制御を司る。すなわち、ＣＰＵ６６には、先に説明した通信ポート１６、ＬＣＤ２４およびコントローラ２６が結合されるとともに、コネクタ６８を介して、カートリッジ４０が結合される。また、ＣＰＵ６６に関連して、携帯ゲーム機１２には、たとえばＳＲＡＭ等からなるワークＲＡＭ７０およびたとえばマスクＲＯＭからなるブートＲＯＭ７２が設けられる。ワークＲＡＭ７０は、ＣＰＵ６６がゲームプログラムを実行する際のワーキングエリアとして利用され、ブートＲＯＭ７２には携帯ゲーム機１２すなわちワークＲＡＭ７０やＣＰＵ６６のレジスタ等を初期化するためのブートプログラム（起動プログラム）が予め格納される。
【００２８】
ゲームカートリッジ４０は、たとえばマスクＲＯＭのようなＲＯＭ７４とたとえばＳＲＡＭのようなＲＡＭ７６とを含み、ＲＯＭ７４には第１プログラムの一例のゲームプログラムが格納され、ＲＡＭ７６にはバックアップデータが蓄積される。なお、図１では図示しなかったが、携帯ゲーム機１２にはスピーカ２５が設けられ、ＣＰＵ６６からの音声信号がこのスピーカ２５に与えられる。したがって、スピーカ２５から音声を出力すること
ができる。
【００２９】
ビデオゲーム機１４にもまたＣＰＵ７８が設けられ、そのＣＰＵ７８に、４つの通信ポート１８、ディスクドライブ４４およびＴＶモニタ５０が結合される。ＣＰＵ７８には、さらに、携帯ゲーム機１２のワークＲＡＭ７０およびブートＲＯＭ７２と同様の、ワークＲＡＭ８０およびブートＲＯＭ８２が結合される。
【００３０】
携帯ゲーム機１２のブートＲＯＭ７２、携帯ゲーム機１２のワークＲＡＭ７０およびカートリッジ４０のＲＯＭ７４のメモリマップが、それぞれ、図３（Ａ）、図３（Ｂ）および図３（Ｃ）に図示されている。
【００３１】
携帯ゲーム機１２のブートＲＯＭ７２は、たとえば１６Ｋバイトのような比較的小容量であり、初期化プログラム領域７２ａを含み、この領域７２ａには、先に述べたように、ワークＲＡＭ７０やＣＰＵレジスタ等を初期化するための初期化プログラムが格納されている。この初期化プログラム領域７２ａには、認証コード領域７２ｂが含まれ、この認証コード領域７２ｂには、たとえば商標「ＮＩＮＴＥＮＤＯ」を表すイメージデータ（ドットデータないしピクセルデータ）のような認証コードが格納されている。なお、この認証コードは、好ましくは、暗号化又はデータ圧縮されている。
【００３２】
ブートＲＯＭ７２は、さらにカートリッジ検出プログラム領域７２ｃを含み、この領域７２ｃのカートリッジ検出プログラムに従って、ＣＰＵ６６（図２）は、後の図７のフロー図で表現できるカートリッジ検出動作を実行する。ブートＲＯＭ７２の領域７２ｄに格納される通信ポートチェックプログラムは、携帯ゲーム１２の通信ポート１６に通信ケーブル２０が接続されているかどうか、およびその通信ポート１６を通して正常なデータ授受が可能かどうか、すなわち、通信ポート１６が利用可能かどうかをチェックする。
【００３３】
ブートＲＯＭ７２の領域７２ｅに格納されている転送要求コマンド発行プログラムは、後に説明するように、ビデオゲーム機１４のＣＰＵ７８（図２）に転送要求を発行するためのプログラムである。エラーチェックプログラム領域７２ｆのエラーチェックプログラムは、転送されてくるデータ（ゲームデータやプログラムデータ）のエラーチェックを実行するためのたとえばＣＲＣチェックプログラムである。
【００３４】
ブートＲＯＭ７２の領域７２ｇに格納されている認証プログラムは、領域７２ｂの認証コードを利用した認証を実行するためのプログラムである。そして、領域７２ｈの開始プログラムは、ワークＲＡＭ７０に転送されたゲームプログラムまたはカートリッジ４０のゲームプログラムの実行を開始させるためのプログラムである。
【００３５】
携帯ゲーム機１２のワークＲＡＭ７０は、認証コード領域７０ａ、メッセージ領域７０ｂ、ダウンロード領域７０ｃおよびゲーム処理領域７０ｄを含む。認証コード領域７０ａには、認証プログラムを実行する際に、ＤＶＤ−ＲＯＭ４６の領域４６Ｂａ（図４（Ｂ））から読み出された認証コードがストアされる。メッセージ領域７０ｂは、携帯ゲーム機１２のゲームプレイヤにＬＣＤ２４を通して種々のメッセージを伝達するためのメッセージデータをストアする。ダウンロード領域７０ｃには、後述のようにしたビデオゲーム機１４からダウンロードされたゲームプログラムをストアするための領域である。また、このワークＲＡＭ７０は、図示しないが、ダウンロード領域７０ｃに転送されたゲームプログラムまたはカートリッジ４０のゲームプログラムを実行するときに必要に応じてＣＰＵ６６によって利用されるワーキングメモリ領域を含む。
【００３６】
なお、ゲームカートリッジ４０のＲＯＭ７４には、認証コード領域７４ａとプログラムデータ領域７４ｂとが形成される。認証コード領域７４ａには、領域７２ｇ（図３（Ａ））の認証プログラムを実行するとき、ワークＲＡＭ７０の領域７０ａにストアされている認証コードと比較するための認証コードが予め格納されている。プログラムデータ領域７４ｂには、プログラムデータ（キャラクタデータやプログラムデータ）が予め格納されている。
【００３７】
図４（Ａ）に示すようにビデオゲーム機１４のブートＲＯＭ８２には、領域８２ａが設けられ、この領域８２ａには、初期化プログラムが予め格納されている。
【００３８】
また、図４（Ｂ）に示すＤＶＤ−ＲＯＭ４６には、大別して２つの領域４６Ａおよび４６Ｂが形成されている。領域４６Ａはビデオゲーム１４のためのプログラムを格納する領域であり、領域４６Ｂは携帯ゲーム機１２のためのプログラムを格納する領域である。実施例で用いられるＤＶＤ−ＲＯＭ４６は、周知のように、大容量であり、したがって、記憶容量に比較的余裕があり、携帯ゲーム機用プログラム格納領域４６Ｂを形成することに特に不都合はない。ビデオゲーム機用プログラムおよび携帯ゲーム機用プログラムのデータ量にもよるが、ＤＶＤ−ＲＯＭ４６に代えてＣＤ−ＲＯＭを用いても同様であろう。
【００３９】
ビデオゲーム機用プログラム格納領域４６Ａは、プログラムデータ領域４６Ａａを含み、そこには、ビデオゲーム機１４のためのゲームデータまたはゲームプログラムデータ（キャラクタデータを含む）が格納される。
【００４０】
携帯ゲーム機用プログラム格納領域４６Ｂは、認証コード領域４６Ｂａ、メッセージ領域４６Ｂｂ、ダウンロード領域４６Ｂｃおよびプログラムデータ領域４６Ｂｄを含む。認証コード領域４６Ｂａには、携帯ゲーム機１２のワークＲＡＭ７０の領域７０ａにダウンロードするための認証コード（たとえば商標「ＮＩＮＴＥＮＤＯ」を表すイメージデータ）が格納されている。なお、この認証コードは、好ましくは、暗号化又はデータ圧縮されている。
【００４１】
メッセージ領域４６Ｂｂには、携帯ゲーム機１２のワークＲＡＭ７０の領域７０ｂにダウンロードするためのメッセージデータが格納されている。ダウンロード領域４６Ｂｃは、領域４６Ｂｄのゲームプログラムを携帯ゲーム機１２のワークＲＡＭ７０の領域７０ｃにダウンロードする第２プログラム又は補助プログラムの一例のダウンロードプログラムを格納するための領域である。ダウンロードプログラムは、例えば、通信ケーブル２０の検出処理、通信異常の検出処理、データ転送処理、暗号化処理、エラー処理、認証処理等の各処理を実行するためのプログラムである。そして、領域４６Ｂｄには、そのダウンロードプログラムによって携帯ゲーム機１２にダウンロードすべきプログラムデータが格納されている。
【００４２】
なお、携帯ゲーム機用のゲームが複数（ｎ）のステージを含むものであれば、ＤＶＤ−ＲＯＭ４６のこの領域４６Ｂｄには、図５に示すように、ゲーム基本処理プログラムデータとともに、第１ステージデータ、第２ステージデータ、…、第ｎステージデータが記憶されていて、携帯ゲーム機のワークＲＡＭ７０のデータ領域７０ｄには、ゲーム基本処理プログラムデータと、その都度必要な第ｉステージのデータとがストアされる。ここで、ゲーム基本処理プログラムとは、そのゲームプログラムを携帯ゲーム機１２で実行する際に不可欠のプログラムであり、たとえばコントローラ２６のデータないし状態を取得する補助プログラムなどを含む。
【００４３】
つまり、第２情報記憶媒体であるＤＶＤ−ＲＯＭ４６の領域４６Ｂ（図４）の記憶容量が、携帯ゲーム機１２のワークＲＡＭ７０（読み書き可能記憶手段）の記憶容量より大きい場合、すなわち、ＤＶＤ−ＲＡＭ４６から携帯ゲーム機１２にダウンロードすべきデータ量がワークＲＡＭ７０の記憶容量（たとえば２５６Ｋバイト）を超えるとき、ダウンロードプログラムは、分割したデータ区分毎にダウンロードできるようにしている。ただし、その場合でも、ゲーム基本処理プログラムについては、最初にダウンロードする必要がある。そして、各ステージデータは、必要な都度、すなわち、時間的にずらせてダウンロードすればよい。なお、ワークＲＡＭ７０の領域７０ｄにダウンロードの都度上書きする場合には、ゲーム基本処理プログラムを消さない処理をするか、または各ステージデータをダウンロードするときに必ずゲーム基本処理プログラムを再度ダウンロードする必要がある。
【００４４】
ただし、ダウンロードすべきデータ量がワークＲＡＭ７０の記憶容量（たとえば２５６Ｋバイト）以内の場合には、ゲーム基本処理プログラムを含むすべてのプログラムデータを１度にダウンロードすればよいことは勿論である。
【００４５】
図１のゲームシステム１０において携帯ゲーム機１２でプレイする場合、図６の最初のステップＳ１で、携帯ゲーム機１２のＣＰＵ６６（図２）は、ブートＲＯＭ７２の領域７２ａに格納されている初期化プログラムに従って、メモリクリアなどの必要な初期化処理を実行する。
【００４６】
ついで、ステップＳ３で、ブートＲＯＭ７２の領域７２ｃに格納されているカートリッジ検出プログラムを実行する。このカートリッジ検出プログラムが図７に示される。
【００４７】
図７の最初のステップＳ３１で、ＣＰＵ６６は、図３（Ｃ）においてカートリッジ４０に認証コードが格納されている領域７６ａに相当するアドレス、一例として先頭アドレスをアドレスバス（図示せず）を出力するともに、データバス（図示せず）のデータを読み込む。もしカートリッジ４０が装着されていれば、そのとき読み込まれるデータは、認証コード（商標「ＮＩＮＴＥＮＤＯ」を表示するためのドットデータ）である。もしカートリッジ４０が装着されていなければ、そのときデータは読み込まれない。
【００４８】
そして、次のステップＳ３２では、ステップＳ３１で読み込んだデータに対応する画像をＬＣＤ２４（図１）で表示する。ステップＳ３１で認証コードが読み込まれた場合には、認証コード（商標「ＮＩＮＴＥＮＤＯ」の）文字が表示される。ステップＳ３１で何もデータが読み込まれなかった場合には、このステップＳ３２では、認証コードの文字が表示される部分に、一例として、全黒画像が表示される。
【００４９】
ステップＳ３３では、ＣＰＵ６６は、ステップＳ３１で読み込んだデータとブートＲＯＭ７２の領域７２ｂに予め設定されている認証コードとを比較する。実施例では、認証コードのチェックサムを比較する。カートリッジ４０が装着されていなければ、データが読み込まれないので、ステップＳ３４で“ＮＯ”が判断される。したがって、ステップＳ３５で、図６のステップＳ５に「カートリッジなし」のフラグ（「０」）を返送する。また、カートリッジ４０が挿入されている場合には前述のように認証コードがＣＰＵ６６に読み込まれるので、２つの認証コードが一致し、ステップＳ３４では“ＹＥＳ”が判断される。したがって、ステップＳ３６で、図６のステップＳ５に「カートリッジあり」のフラグ（「１」）を返送する。
【００５０】
このようにして、ステップＳ３でカートリッジ４０が検出される。そして、ステップＳ５では、図７サブルーチンから返送されたカートリッジフラグを参照して、カートリッジがあるかどうか判断する。このとき、カートリッジ４０が装着されていれば、ステップＳ７でブートＲＯＭ７２の領域７２ｈの開始プログラムを実行して、カートリッジ４０のＲＯＭ７４のゲームデータ領域７４ｂ（図３（Ｂ））の開始アドレスにジャンプする。したがって、この場合には、携帯ゲーム機１２に装着されているカートリッジのゲームプログラムに従ってゲームがプレイされる。
【００５１】
ステップＳ５で“ＮＯ”が判断された場合、ＣＰＵ６６は、次のステップＳ９において、ブートＲＯＭ７２の領域７２ｃのプログラムを実行し、通信ポートをチェックする。つまり、ＣＰＵ６６は、携帯ゲーム機１２の通信ポート１６とビデオゲーム機１４の通信ポート１８との間にケーブル２０（図１）が接続されているかどうか、そしてケーブル２０が接続されている場合正常なデータの授受ができるかどうかをチェックする。この２つの条件が充足されるとき、ステップＳ９において、“ＹＥＳ”が判断される。２つの条件の少なくとも一方が満足されないとき、ステップＳ９では、“ＮＯ”が判断される。
【００５２】
ステップＳ９で“ＹＥＳ”が判断されると、ステップＳ１１で、ＣＰＵ６６は、ブートＲＯＭ７２の領域７２ｅのプログラムを実行して、ビデオゲーム機１４（のＣＰＵ７８）に対して、転送要求コマンドを発行する（例えば、ネゴシエーションとも言う）。応じて、ビデオゲーム機１４のＣＰＵ７８は、図４（Ｂ）に示すＤＶＤ−ＲＯＭ４６の各領域４６Ｂａ、４６Ｂｂおよび４６ｂｃのすべてのデータと、領域４６Ｂｄの少なくとも一部のデータとをケーブル２０を通して携帯ゲーム機１２のワークＲＡＭ７０に転送する。したがって、ステップＳ１３で、そのようにしてビデオゲーム機１４から転送されてきたデータをワークＲＡＭ７０にストアする。
【００５３】
その後、ステップＳ１５で、図７のステップＳ３４と同様の認証処理を実行する。この場合、ブートＲＯＭ７２の領域７２ｂからの認証コードと比較されるのは、ＤＶＤ−ＲＯＭ４６からワークＲＡＭ７０の領域７０ａに転送されている認証コードである。ステップＳ１５の認証処理の結果、２つの認証コードが一致しなければ、認証ＮＧであり、その場合には、ステップＳ１９で、ＣＰＵ６６は、たとえば点滅させていた認証コードの文字の点滅を止めるなどして、エラー表示する。
【００５４】
２つの認証コードが一致すると認証ＯＫとなり、ステップＳ１７で“ＹＥＳ”が判断される。したがって、ＣＰＵ６６は、ステップＳ２１において、ブートＲＯＭ７２の領域７２ｈの開始プログラムを実行して、ワークＲＡＭ７０の領域７０ｄに転送されているプログラムデータの開始アドレスにジャンプさせる。したがって、この場合には、ＤＶＤ−ＲＯＭ４６から携帯ゲーム機１２に転送ないしダウンロードされたプログラムデータに従って、携帯ゲーム機１２でゲームをプレイすることができる。
【００５５】
ワークＲＡＭ７０内のプログラムを実行する場合、図８のステップＳ４１で、図５に示すゲーム基本処理プログラムを実行して、ステージデータに基づくゲームを実行する。そして、ＣＰＵ６６は、ステップＳ４２において、実行中のゲームステヘージがクリアできたかどうか、ステップＳ４２で判断する。ステップＳ４２で“ＹＥＳ”が判断されると、次のステップＳ４３において、ＣＰＵ６６は、ステップＳ４２でクリアしたのが最終ステージ、つまりｎステージであったかどうか判断する。
【００５６】
ステップＳ４３で“ＹＥＳ”が判断されると、ゲームは終了するが、“ＮＯ”の場合、ステップＳ４４において、ＣＰＵ６６は、ワークＲＡＭ７０の領域７０ｃにＤＶＤ−ＲＯＭ４６から転送されているダウンロードプログラムを実行して、次のステージデータをＤＶＤ−ＲＯＭ４６からダウンロードする。そして、ステップＳ４３で“ＹＥＳ”が判断されるまで、ステージクリアの都度、ステップＳ４４が実行され、各ステージデータが順次、ワークＲＡＭ７０の領域７０ｄにダウンロードされる。このとき、ステップＳ４５において、図３（Ｂ）のメッセージ領域７０ｂにビデオゲーム機１４からだされたメッセージデータを利用して、ＬＣＤ２４上にたとえば「ダウンロード中です」あるいは「ＮｏｗＬｏａｄｉｎｇ」のようなメッセージ表示をしてもよい。
【００５７】
この実施例では、携帯ゲーム機１２にカートリッジ４０が装着されているときには、そのカートリッジ４０に記憶されているプログラムが実行されるので、携帯ゲーム機１２における主な使用用途であるゲームの開始を遅らせることがない。
【００５８】
一方、カートリッジ４０が装着されていないときには、通信ポート１６に接続される別のゲーム機１４からプログラムを取出しているので、そのプログラムに応じた機能を携帯ゲーム機１２に持たせることができる。したがって、たとえば、携帯ゲーム機１２にダウンロードするプログラムやデータを変更すれば、単一種類の携帯ゲーム機を、各国の言語や各種の機器に容易に対応させることが可能になる。このように、携帯ゲーム機毎に大量のプログラムを予め持たせなくても、ブートＲＯＭのような小量のプログラムだけで、必要なときに必要なプログラムを別のゲーム機側から携帯ゲーム機へ供給することができる。なお、上述した補助プログラムを予め携帯ゲーム機に搭載させておいた場合には、日本語のメッセージの場合にはその携帯ゲーム機は日本圏でしか利用することができなくなるが、実施例のように、別のゲーム機から携帯ゲーム機へ補助プログラムを必要に応じて送るようにすれば、その言語圏で別のゲーム機用に販売された単一のゲームソフトによって、いずれの国で販売された携帯ゲーム機でも利用が可能になる。
【００５９】
また、図１実施例では、携帯ゲーム機１２とビデオゲーム機１４との連動ゲームをプレイすることができる。たとえば、携帯ゲーム機１２のコントローラ２６のデータをビデオゲーム機１４に取り込むための第２プログラムまたは補助プログラムの一例のデバイスドライバプログラムを上述のゲームデータと同様にしてビデオゲーム機１４から携帯ゲーム機１２にダウンロードするようにすれば、ビデオゲーム機１４がコントローラ２６の情報をケーブル２０を通して取得できるので、携帯ゲーム機１２（のコントローラ２６）をビデオゲーム機１４のコントローラ５２の代わりとして使用できる。なお、従来の携帯ゲーム機では、カートリッジが装着されていないときには、各キー入力を全く受け付けなかった。さらに、ビデオゲーム機１４から携帯ゲーム機１２にケーブル２０を通して画像データを送るようにすれば、携帯ゲーム機１２のＬＣＤ２４を、たとえば麻雀ゲームにおける手牌などのようなゲームプレイヤの個人情報を表示するためのサブ画面として利用することもできる。このとき、モニタ５０は、全体情報を表示するメイン画面として利用される。
【００６０】
さらに、図９に示すように、ビデオゲーム機１４に２台以上の複数の携帯ゲーム機１２を通信可能に接続してこのゲームシステム１０を構成することができる。この実施例では２台の携帯ゲーム機１２がビデオゲーム機１４に接続されていて、そのいずれにもカートリッジ４０（図１）を装着していない。それぞれの携帯ゲーム機１２が、ビデオゲーム機１４から、先に説明したのと同様の方法でダウンロードされる、プログラムデータを受けるようにする。したがって、この実施例では、複数の携帯ゲーム機１２で同じネットワークゲームをプレイできる。その場合、各携帯ゲーム機１２が同じプログラムを実行するのであるから、各携帯ゲーム機１２のプログラムバージョンを容易に統一することができ、従来のように各携帯ゲーム機毎にバージョンの違うカートリッジを使用する場合に生じる不都合が解消される。
【００６１】
なお、上述の実施例では、「別のゲーム機」としてビデオゲーム機を示した。しかしながら、この発明にいて「別のゲーム機」は、補助プログラム（図４（Ｂ）に示す認証コード、メッセージデータ、ダウンロードプログラム等）が記憶された情報記憶媒体を用いるゲーム機であればよく、携帯ゲーム機、据置型のビデオゲーム機などの各種のゲーム機を含む。ただし、ここで、「情報記憶媒体」とは、実施例のＤＶＤ−ＲＯＭの他に、ＣＤ−ＲＯＭ、半導体ＲＯＭ、半導体ＲＡＭ、ハードティススク、メモリーカード、カートリッジなどのように、物理的または電子的に情報を記憶することができる任意の媒体を意味する。
【００６２】
図１０は、上記「別のゲーム機」として携帯ゲーム機を用いる場合の実施例を示す。この実施例では、また、「情報記憶媒体」として、半導体メモリを内蔵したカートリッジ４０を用いる。このカートリッジ４０を装着した携帯ゲーム機１２Ａが親機または「別のゲーム機」として用いられる。そして、カートリッジ４０を装着していない他の携帯ゲーム機１２Ｂがその親側携帯ゲーム機１２Ａからプログラムの転送を受ける。したがって、すべての（この実施例では４台の）携帯ゲーム機１２Ａおよび１２Ｂが、１つのカートリッジ４０においてプログラムされている同じ通信対戦ゲームをプレイすることができる（ワンカートリッジプレイ）。
【００６３】
図１０の実施例では、親側携帯ゲーム機１２Ａのカートリッジ４０にはＲＯＭが内蔵されていて、このＲＯＭ７４は、図１１に示すように、３つのプログラム格納領域７４ａ１、７４ａ２および７４ａ３を含む。
【００６４】
プログラム格納領域７４ａ１には、メインプログラムおよび親側通信対戦ゲーム処理プログラムが格納される。このメインプログラムには、親側携帯ゲーム機から子側携帯ゲーム機へプログラムやグラフィクスデータを転送するための付与プログラムを含む。親側通信対戦ゲーム処理プログラムは、通信対戦型のゲームを処理するための親側携帯ゲーム機１２ＡのＣＰＵ６６が実行するプログラムである。
【００６５】
ＲＯＭ７４のプログラム格納領域７４ａ２には、補助プログラムが格納される。この実施例では、補助プログラムは、デモ画面表示処理プログラムであり、このデモ画面表示処理プログラムは、後述のように、図１３に示すデモ画面表示を実行するためのプログラムである。すなわち、デモ画面表示処理プログラムは、親側携帯ゲーム機１２Ａから子側携帯ゲーム機１２Ｂへのプログラム転送が完了するまで、子側携帯ゲーム機１２Ｂのゲームプレイヤに画像および／または音声によってプログラム転送状態を知らせるためのデモ画面を表示するためのプログラムである。このデモ画面表示処理プログラムは、親側携帯ゲーム機１２Ａから子側携帯ゲーム機１２Ｂに転送される。
【００６６】
また、プログラム格納領域７４ａ３には、同様に子側携帯ゲーム機１２Ｂに転送される子側通信対戦ゲーム処理プログラムが格納される。子側通信対戦ゲーム処理プログラムは、上述のゲームプログラム格納領域７４ａ１の親側通信対戦ゲーム処理プログラムと同様に、当該通信対戦ゲームを子側携帯ゲーム機１２ＢのＣＰＵ６６によって処理するためのプログラムである。
【００６７】
なお、親側携帯ゲーム機１２ＡのワークＲＡＭ７０は、親側携帯ゲーム機１２ＡのＣＰＵ６６（図２）で適宜利用される。また、親側携帯ゲーム機１２ＡのブートＲＯＭ７２には、図３（Ａ）に示すような起動プログラムが格納される。
【００６８】
さらに、子側携帯ゲーム機１２ＢのワークＲＡＭ７０は、親側携帯ゲーム機１２Ａから転送されるデモ画面表示処理プログラムおよび子側通信対戦ゲーム処理プログラムをストアするために利用される。また、子側携帯ゲーム機１２ＢのブートＲＯＭ７２には、親側携帯ゲーム機１２Ａと同様に、図３（Ａ）に示すような起動プログラムが格納される。
【００６９】
図１０に示す実施例において、ブートＲＯＭ７２に格納されている起動プログラム（図３（Ａ））を実行してカートリッジ４０が装着されていることを検出した携帯ゲーム機が親側携帯ゲーム機１２Ａとして動作し、カートリッジが装着されていないことを検出した携帯ゲーム機が子側携帯ゲーム機１２Ｂとして動作する。そして、親側携帯ゲーム機１２Ａは図１２（Ｂ）に示す動作を実行し、子側携帯ゲーム機１２Ｂは図１２（Ａ）で示す動作を実行する。
【００７０】
具体的には、カートリッジ４０が装着されている親側携帯ゲーム機１２Ａは、最初のステップＳ５１において、そのカートリッジ４０に内蔵されているＲＯＭ７４のプログラム格納領域７４ａ１のメインプログラムを実行する。そして、子側携帯ゲーム機１２Ｂおよび親側携帯ゲーム機１２Ａは、それぞれ、ステップＳ５２およびＳ５３においてお互いにネゴシェーションを実行し、通信ポート１６（図２）を用いた通信状態を確立し、双方向にデータが転送可能な状態とする。このようなネゴシエーションに従って後述のように親側携帯ゲーム機１２Ａからプログラムやデータの転送を受けるのであるから、このステップＳ５２が、子側携帯ゲーム機１２Ｂから親側携帯ゲーム機１２Ａへの転送要求あるいは転送要求コマンドとして機能することは明白である。
【００７１】
なお、図１０の実施例では、親側携帯ゲーム機１２Ａおよび子側携帯ゲーム機１２Ｂのそれぞれの通信ポート１６（図２）の間には、図１実施例で示したような通信ケーブルが接続される。したがって、親側携帯ゲーム機１２Ａおよび子側携帯ゲーム機１２Ｂの間でのネゴシェーションやデータ転送は、通信ポート１６およびそれらの間の通信ケーブルを利用して行われる。
【００７２】
ネゴシェーションの結果、通信可能状態が確立すると、親側携帯ゲーム機１２Ａは、ステップＳ５４において、ＲＯＭ７４のプログラム格納領域７４ａ２（図１１）に格納されているデモ画面表示処理プログラムを、子側携帯ゲーム機１２Ｂの通信ポート１６に転送する（転送１）とともに、ステップＳ５５において、ＲＯＭ７４のプログラム格納領域７４ａ３に格納されている子側通信対戦ゲーム処理プログラムを子側携帯ゲーム機１２Ａの通信ポート１６に転送する（転送２）。
【００７３】
子側携帯ゲーム機１２Ｂでは、ネゴシェーションステップＳ５２の後、ステップＳ５６で、その通信ポート１６にデータが転送されるのを待つ。そして、このステップＳ５６において、通信ポート１６にデータが転送されたことを検出すると、子側携帯ゲーム機１２Ｂ（のＣＰＵ）は、通信ポート１６に転送されてきたデータすなわちデモ画面表示処理プログラムをワークＲＡＭ７０に記憶する（ステップＳ５７）とともに、ステップＳ５８で、そのワークＲＡＭ７０に記憶したデモ画面表示処理プログラムの実行を開始する。このデモ画面表示処理プログラムは、たとえば図１３に示すようなデモ画面を表示する。
【００７４】
図１３に示すデモ画面は、親側携帯ゲーム機１２Ａから子側携帯ゲーム機１２Ｂへのデータ転送の期間中、図１３（Ａ）−図１３（Ｄ）に示すように順次変化するデモ画面を表示するとともに、スピーカ２５（図２、図１０）から図１３（Ａ）−図１３（Ｄ）に示すような音声を出力し、子側携帯ゲーム機１２Ｂのゲームプレイヤに対してデータ転送中であることを知らせる。
【００７５】
子側携帯ゲーム機１２Ｂでは、図１２のステップＳ５８で図１３に示すようなデモ画面表示処理プログラムの実行を開始し、続くステップＳ５９では、ステップＳ５５で親側携帯ゲーム機１２Ａから通信ポート１６に転送されてくる子側通信対戦ゲーム処理プログラムを図１１に示すようにワークＲＡＭ７０に記憶する。そして、ステップＳ６０で、その子側通信対戦ゲーム処理プログラムの転送が終了したことを判断すると、その時点で、ステップＳ６１において、子側携帯ゲーム機１２Ｂにおけるデモ画面表示処理プログラムの実行を終了する。
【００７６】
そして、子側携帯ゲーム機１２ＢではステップＳ６２において子側通信対戦ゲーム処理プログラムを実行し、親側携帯ゲーム機１２ＡではステップＳ６３において親側通信対戦ゲーム処理プログラムを実行することによって、親側携帯ゲーム機１２Ａに装着されたカートリッジ４０によって、複数の携帯ゲーム機での通信ゲームがプレイできる。
【符号の説明】
【００７７】
１０    ゲームシステム
１２、１２Ａ、１２Ｂ    携帯ゲーム機
１４    ビデオゲーム機
１６、１８    通信ポート
２０    ケーブル
４０    カートリッジ３０
４４    ディスクドライブ
４６    ＤＶＤ−ＲＯＭ
６６、７８    ＣＰＵ
７０、８０    ワークＲＡＭ
７２、８２    ブートＲＯＭ
【図１】
2011115625.tif 000003
【図２】
2011115625.tif 000004
【図３】
2011115625.tif 000005
【図４】
2011115625.tif 000006
【図５】
2011115625.tif 000007
【図６】
2011115625.tif 000008
【図７】
2011115625.tif 000009
【図８】
2011115625.tif 000010
【図９】
2011115625.tif 000011
【図１０】
2011115625.tif 000012
【図１１】
2011115625.tif 000013
【図１２】
2011115625.tif 000014
【図１３】
2011115625.tif 000015