説明

データ構造、情報記憶媒体及び製造方法

【課題】 ソフトウェアの共有化機能を有するコンピュータ装置間で、3世代以上に亘る転送ファイルの転送を可能とすること。
【解決手段】 ゲームカートリッジ20に格納される転送ファイル26は、ゲームプログラム22が転送ファイル化された転送ファイル26が重畳的に転送ファイル化された、転送ファイル化の入れ子構造を有している。即ち、入れ子構造の基底レベルであるレベル「1」ではゲームプログラム22が転送ファイル化され、レベル「n」それぞれでは、その直下レベル「n−1」で転送ファイル化された転送ファイル26[n−1]とゲームプログラム22とが転送ファイル化されている。但し、n=1,2,・・・,N、である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアが転送ファイル化された転送ファイルデータのデータ構造等に関する。
【背景技術】
【0002】
従来、コンピュータ機器間でのデータ送受信にかかる技術の1つとして、親機となる家庭用ゲーム装置のようなビデオゲーム機やパーソナルコンピュータといった家庭用コンソールに、子機となる携帯端末機等を着脱自在に接続し、この親機に搭載されたCD−ROM等の記録メディアに記録されているプログラムを子機にダウンロードし、子機においてそのプログラムを動作(実行)する技術が知られている(例えば、特許文献1参照)。
【特許文献1】特許第3597051号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
また近年、携帯型ゲーム機の中には、無線/有線通信により、他の同種のゲーム機との間でソフトウェアであるゲームプログラムの転送を行い、受信側のゲーム機においてその受信したゲームプログラムを実行可能とするソフトウェアの共有化機能を備えたものが知られている。かかる場合、予め、転送するゲームプログラムが暗号化を含む所定のファイル変換処理により転送ファイルに変換され(転送ファイル化)、この転送ファイルが、ゲームカートリッジ等のゲーム機に着脱自在な情報記憶媒体に格納(記憶)されている。
【0004】
そして送信側のゲーム機では、装着した情報記憶媒体に格納されている転送ファイルデータを他のゲーム機に送信し、受信側のゲーム機では、送信されてくる転送ファイルデータを受信とともに復元して転送ファイル化前の元のゲームプログラムを得、その後このゲームプログラムを実行可能に構成されている。
【0005】
つまり、送信側のゲーム機においては転送ファイルデータの送信が行われ、受信側のゲーム機においては転送ファイルデータの受信と復元とが行われれば良いため、ゲーム機にはソフトウェアを転送ファイル化する機能は備わっていない。またゲーム機には、ソフトウェアが不正にコピーされたり、製作者の意図に反した複製や改竄が行われるといった不正を防止し、製品の安全性を確保するため、ソフトウェア自身で自己コピーを行える機能は備わっていない。
【0006】
このような構成の制約上、ソフトウェアであるゲームプログラムの転送は、情報記憶媒体が装着されたゲーム機とその他のゲーム機との間の2世代間のみで行われていた。従って、受信した転送ファイルを更に他のゲーム機に送信するといった、3世代以上に亘る転送は困難であった。
【0007】
上記事情に鑑み、本発明は、ソフトウェアの共有化機能を有するコンピュータ装置間で、3世代以上に亘る転送ファイルの転送を可能とすることを目的としている。
【課題を解決するための手段】
【0008】
上記課題を解決するための第1の発明は、
他装置との間でデータ送受信が可能なコンピュータ(例えば、図1,5の携帯型ゲーム機1)による転送ファイルデータ受信・復元処理(例えば、図7のステップB7〜B9)によって、ソフトウェア(例えば、図2のゲームプログラム922)が転送ファイル化された転送ファイルデータ(例えば、図2の転送ファイル926)の他装置からの受信(例えば、図7のステップB9)と、受信した転送ファイルデータの転送ファイル化前の状態への復元(例えば、図7のステップB9)とが行われ、復元されたソフトウェアに従った処理が前記コンピュータによって実行されることとなる転送ファイルデータのデータ構造であって、
転送ファイルデータが重畳的に転送ファイル化され、転送ファイル化の入れ子構造を有してなるデータ構造である。
【0009】
また、第19の発明は、
他装置との間でデータ送受信が可能なコンピュータによる転送ファイルデータ受信・復元処理によって、ソフトウェアが転送ファイル化された転送ファイルデータの他装置からの受信と、受信した転送ファイルデータの転送ファイル化前の状態への復元とが行われ、復元されたソフトウェアに従った処理が前記コンピュータによって実行されることとなる転送ファイルデータの製造方法であって、
転送ファイルデータを重畳的に転送ファイル化して、転送ファイル化の入れ子構造をなす転送ファイルデータを製造する製造方法(例えば、図11の格納用転送ファイル作成処理)である。
【0010】
この第1又は第19の発明によれば、ソフトウェアが転送ファイル化された転送ファイルデータが重畳的に転送ファイル化され、転送ファイル化の入れ子構造を有してなるデータ構造の転送ファイルデータが実現される。即ち、他装置から受信し復元した転送ファイル化前の状態のデータもまた、転送化ファイルの入れ子構造を有する転送ファイルデータであるので、この復元した転送ファイルデータを、更に他装置に送信することができる。従って、3世代以上に亘る転送ファイルの転送が可能となる。
【0011】
第2の発明は、第1の発明のデータ構造において、
入れ子構造の基底レベルではソフトウェアが転送ファイル化され、基底レベルより上のレベルではソフトウェアと当該レベルの直下のレベルの転送ファイル化された転送ファイルデータとが纏めて転送ファイル化されることで転送ファイル化の入れ子構造を有してなるデータ構造である。
【0012】
また、第20の発明は、第19の発明の製造方法において、
基底レベルにおいてはソフトウェアを転送ファイル化し、基底レベルより上のレベルにおいてはソフトウェアと当該レベルの直下のレベルの転送ファイル化した転送ファイルデータとを纏めて転送ファイル化することで入れ子構造の転送ファイル化をなす転送ファイルデータを製造する製造方法である。
【0013】
この第2又は第20の発明によれば、転送ファイルデータは、入れ子構造の基底レベルではソフトウェアが転送ファイル化され、この基底レベルより上のレベルではソフトウェアと当該レベルの直下のレベルの転送ファイル化された転送ファイルとが纏めて転送ファイル化されることで、転送ファイルの入れ子構造を有してなる。即ち、復元した転送ファイル化前の状態のデータは、基底レベルより上のレベルにおいては転送ファイルデータ及びソフトウェアとなり、基底レベルにおいてはソフトウェアとなる。従って、転送ファイルデータが転送された各世代において、復元したソフトウェアの実行が可能となる。
【0014】
第3の発明は、第1又は第2の発明のデータ構造において、
前記転送ファイル化には少なくとも暗号化が含まれ、
前記コンピュータの前記転送ファイルデータ受信・復元処理において転送ファイルデータが復号される、
ことを特徴とするデータ構造である。
【0015】
この第3の発明によれば、ソフトウェアや転送ファイルデータが暗号化されて転送ファイル化されるので、転送ファイルデータの転送にかかるセキュリティが確保され、特に無線通信により転送ファイルデータの転送が為される場合に好適である。
【0016】
第4の発明は、第1〜第3の何れかの発明にデータ構造において、
前記転送ファイル化には少なくとも圧縮処理が含まれ、
前記コンピュータの前記転送ファイルデータ受信・復元処理において転送ファイルデータが伸張処理される、
ことを特徴とするデータ構造である。
【0017】
この第4の発明によれば、ソフトウェアや転送ファイルデータが圧縮されて転送ファイル化されるので、転送ファイル化後の転送ファイルのデータ量が削減され、転送ファイルデータの転送にかかる負担が軽減される。
【0018】
第5の発明は、第1〜第4の何れかの発明のデータ構造において、
入れ子構造の各レベルのソフトウェアは、入れ子構造の各レベルに応じた処理をコンピュータに実行させるためのソフトウェアであることを特徴とするデータ構造である。
【0019】
この第5の発明によれば、入れ子構造の各レベルのソフトウェアは、この各レベルに応じた処理をコンピュータに実行させるためのソフトウェアである。従って、転送ファイルの転送が可能な複数世代それぞれにおいて、復元した転送ファイルデータの入れ子構造のレベルに応じた処理が実行される。
【0020】
第6の発明は、第1〜第5の何れかの発明のデータ構造において、
前記ソフトウェアは、
転送ファイルデータの装置間の転送履歴を継承経過情報として管理する継承管理手段として前記コンピュータを機能させ、
前記継承管理手段が、他装置から当該装置の装置識別情報及び/又は当該装置の継承管理手段によって管理されている継承経過情報を取得することで、管理している継承経過情報を更新するように前記コンピュータを機能させる、
ためのソフトウェアであることを特徴するデータ構造である。
【0021】
この第6の発明によれば、転送ファイルデータの装置間の転送履歴が継承経過情報として管理され、他装置から当該装置の装置識別情報及び/又は継承経過情報を取得することで、管理されている継承経過情報が更新される。従って、この継承経過情報を参照することで、自装置が何世代目であるのか、受信した転送ファイルデータは何れの装置を経由して転送されてきたデータであるのかといったことをユーザに知らせることが可能となる。
【0022】
第7の発明は、第6の発明のデータ構造において、
前記ソフトウェアは、
前記継承管理手段により管理されている継承経過情報に基づいて、転送履歴にかかる所定処理を行う手段として前記コンピュータを機能させるためのソフトウェアであることを特徴とするデータ構造である。
【0023】
この第7の発明によれば、継承経過情報に基づいて、転送履歴にかかる、例えば表示処理といった所定処理が行われる。
【0024】
第8の発明は、第1〜第7の何れかの発明のデータ構造において、
前記ソフトウェアは、
当該ソフトウェアの復元時からの経過時間を判定する経過時間判定手段、
前記経過時間判定手段により判定された経過時間が所定の実行可能期間に達している場合、当該ソフトウェアの実行を禁止する実行禁止手段、
として前記コンピュータを機能させるためのソフトウェアであることを特徴とするデータ構造である。
【0025】
この第8の発明によれば、ソフトウェアの復元時からの経過時間が所定の実行可能期間に達している場合、該ソフトウェアの実行が禁止される。従って、例えば実行可能期間を転送ファイル化して転送ファイルに含めることで、転送ファイルの製造時に、復元されたソフトウェアの実行に制限を設けることが可能となる。
【0026】
第9の発明は、第1〜第7の何れかの発明のデータ構造において、
前記ソフトウェアは、
当該ソフトウェアの復元時からの実行回数を計数する計数手段、
前記計数手段により計数された実行回数が所定の実行可能回数に達している場合、当該ソフトウェアの実行を禁止する実行禁止手段、
として前記コンピュータを機能させるためのソフトウェアであることを特徴とするデータ構造である。
【0027】
この第9の発明によれば、ソフトウェアの復元時からの実行回数が所定の実行可能回数に達している場合、該ソフトウェアの実行が禁止される。従って、例えば実行可能回数を転送ファイル化して転送ファイルに含めることで、転送ファイルの製造時に、復元されたソフトウェアの実行に制限を設けることが可能となる。
【0028】
第10の発明は、第1〜第9の何れかの発明のデータ構造において、
入れ子構造の各レベルのソフトウェアそれぞれは、
メイン処理を実行するメイン処理実行手段、
前記メイン処理実行手段による処理時に読み出されて使用される該処理に必要なデータである実行時参照データを他装置から受信する実行時参照データ受信手段、
として前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とするデータ構造である。
【0029】
この第10の発明によれば、復元したソフトウェアの実行により、メイン処理が実行されるとともに、このメイン処理に必要な実行時参照データが他装置から受信される。
【0030】
第11の発明は、第10の発明のデータ構造において、
前記ソフトウェアは、
少なくとも前記実行時参照データを受信済みか否かを基に、前記実行時参照データを受信するか否かを判定する受信判定手段、
として前記コンピュータを機能させ、
前記実行時参照データ受信手段が、前記受信判定手段により受信すると判定された場合に前記実行時参照データを他装置から受信する、
ように前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とするデータ構造である。
【0031】
この第11の発明によれば、実行時参照データが受信されていない場合、他装置からこの実行時参照データが受信される。
【0032】
第12の発明は、第11の発明のデータ構造において、
前記ソフトウェアは、
前記受信判定手段が、更に前記受信される実行時参照データが記憶されるメモリの空き容量を基に、前記実行時参照データを受信するか否かを判定する、
ように前記コンピュータを機能させるためのプログラムである、
ことを特徴とするデータ構造である。
【0033】
この第12の発明によれば、実行時参照データが記憶されるメモリの空き容量を基に、実行時参照データを受信するか否かが判定される。
【0034】
第13の発明は、第10〜第12の何れかの発明のデータ構造において、
前記ソフトウェアは、
他装置に記憶されている複数の実行時参照データの中から、受信する実行時参照データをメモリの空き容量を基に選択するデータ選択手段として前記コンピュータを機能させ、
前記実行時参照データ受信手段が、前記データ選択手段により選択された実行時参照データを受信するように前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とするデータ構造である。
【0035】
この第13の発明によれば、複数の実行時参照データの中から、メモリの空き容量を基に選択された実行時参照データが受信される。
【0036】
第14の発明は、
第1〜第13の何れかの発明のデータ構造を有する転送ファイルデータを記憶したコンピュータ読み取り可能な情報記憶媒体(例えば、図1,5のゲームカートリッジ20)である。
【0037】
ここで「情報記憶媒体」とは、記憶されている情報をコンピュータが読み取り可能な、例えばハードディスクやMO、CD−ROM、DVD、メモリカード、ICメモリ等の記憶媒体である。従って、この第14の発明によれば、情報記憶媒体に記憶されている情報をコンピュータに読み取らせて演算処理を実行させることで、第1〜第13の何れかの発明と同様の効果を奏することができる。
【0038】
第15の発明は、
第10〜第13の何れかの発明のデータ構造を有する転送ファイルデータと、前記実行時参照データとを記憶したコンピュータ読み取り可能な情報記憶媒体(例えば、図1,5のゲームカートリッジ20)である。
【0039】
この第15の発明によれば、情報記憶媒体に記憶されている情報をコンピュータに読み取らせて演算処理を実行させることで、第10〜第13の何れかの発明と同様の効果を奏するとともに、この情報記憶媒体に記憶されている実行時参照データが、転送ファイルデータが転送される複数世代それぞれに送信され、この実行時参照データを使用したメイン処理が実行される。
【0040】
第16の発明は、第15の発明の情報記憶媒体において、
前記ソフトウェアは所定のゲームを実行するためのゲームソフトウェアであり、
前記実行時参照データには複数のゲームデータが含まれており、
前記ゲームソフトウェアは、
前記復元されたソフトウェアが入れ子構造の何れのレベルかを判定するレベル判定手段として前記コンピュータを機能させ、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のゲームデータの中から、前記レベル判定手段により判定されたレベルに応じたゲームデータに基づくゲームを実行するように前記コンピュータを機能させる、
ためのゲームソフトウェアである、
ことを特徴とする情報記憶媒体である。
【0041】
この第16の発明によれば、転送ファイル化されるソフトウェアはゲームソフトウェアであるとともに、実行時参照データには複数のゲームデータが含まれており、復元したソフトウェアの入れ子構造のレベルに応じたゲームデータに基づくゲームが実行される。
【0042】
第17の発明は、第16の発明の情報記憶媒体において、
前記実行時参照データには、前記複数のゲームデータとして複数のゲームステージ情報が含まれており、
前記ソフトウェアは、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のゲームステージ情報の中から、前記レベル判定手段により判定されたレベルに応じたゲームステージ情報に基づくゲームを実行する、
ように前記コンピュータを機能させるためのゲームソフトウェアである、
ことを特徴とする情報記憶媒体である。
【0043】
この第17の発明によれば、実行時参照データには複数のゲームステージ情報が含まれており、復元したソフトウェアの入れ子構造のレベルに応じたゲームステージ情報に基づくゲームが実行される。
【0044】
第18の発明は、第16の発明の情報記憶媒体において、
前記実行時参照データには、前記複数のゲームデータとして複数のキャラクタ情報が含まれており、
前記ゲームソフトウェアは、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のキャラクタ情報の中から、前記レベル判定手段により判定されたレベルに応じたキャラクタ情報に基づくゲームを実行する、
ようにコンピュータを機能させるためのゲームソフトウェアである、
ことを特徴とする情報記憶媒体である。
【0045】
この第18の発明によれば、実行時参照データには複数のキャラクタ情報が含まれており、復元したソフトウェアの入れ子構造のレベルに応じたキャラクタ情報に基づくゲームが実行される。
【発明の効果】
【0046】
本発明によれば、ソフトウェアが転送ファイル化された転送ファイルデータが重畳的に転送ファイル化され、転送ファイル化の入れ子構造を有してなるデータ構造の転送ファイルデータが実現される。即ち、他装置から受信し復元した転送ファイル化前の状態のデータもまた、転送化ファイルの入れ子構造を有する転送ファイルデータであるので、この復元した転送ファイルデータを、更に他装置に送信することができる。従って、3世代以上に亘る転送ファイルの転送が可能となる。
【0047】
また、復元した転送ファイル化前の状態のデータは、入れ子構造の基底レベルより上のレベルにおいては転送ファイルデータ及びソフトウェアとなり、基底レベルにおいてはソフトウェアとなる。このため、転送ファイルデータの転送が可能な各世代において、復元したソフトウェアの実行が可能となる。
【発明を実施するための最良の形態】
【0048】
以下、図面を参照して本発明に好適な実施形態を説明する。尚、以下では、本発明を、所定のゲームを実行する携帯型ゲーム機に適用し、ソフトウェアの代表例であるプログラムを転送ファイル化する場合を説明するが、本発明を適用可能な実施形態がこれに限定されるものではない。
【0049】
[携帯型ゲーム機の外観]
図1は、本実施形態における携帯型ゲーム機1の一例を示す外観図である。同図によれば、携帯型ゲーム機1は、ユーザが容易に携帯可能な大きさに形成された略四角形状の筐体を有し、この筐体の正面に、方向キー3と、ボタンスイッチ5と、ディスプレイ7と、スピーカ9とが設けられている。また筐体側面には、ゲームカートリッジ20を装着するためのカードスロット11や、図示しない電源スイッチや音量調節ボタン等が設けられている。
【0050】
筐体内部には、CPUやICメモリ類を搭載した制御装置13や、他の携帯型ゲーム機1とデータ送受信するための無線通信装置15、カードスロット11に装着されたゲームカートリッジ20の読取装置等が備えられている。制御装置13に搭載されているCPUは、方向キー3やボタンスイッチ5から入力される操作信号、ゲームカートリッジ20から読み出したプログラムやデータ等に基づいて種々のゲーム処理を実行し、ゲーム画像の画像信号及びゲーム音の音信号を生成する。そして、生成した画像信号をディスプレイ7に出力してゲーム画面を表示させ、ゲーム音の音信号をスピーカ9に出力してゲーム音を出力させる。ユーザは、ディスプレイ7に表示されるゲーム画面を見ながら方向キー3やボタンスイッチ5を操作する等してゲームを楽しむ。
【0051】
携帯型ゲーム機1がゲーム等を実行するために必要な情報(システムプログラムやゲームプログラム、ゲームデータ等)は、制御装置13に搭載されているICメモリやゲームカートリッジ20に格納されている。より具体的には、システムプログラムは制御装置13のICメモリに格納され、ゲームプログラム及びゲームデータはゲームカートリッジ20に格納されている。従って、ゲームカートリッジ20を交換することで異なるゲームを携帯型ゲーム機1に実行させることができる。
【0052】
[ソフトウェア共有化機能]
またこの携帯型ゲーム機1は、ソフトウェア共有化機能を備えている。このソフトウェア共有化機能とは、ある携帯型ゲーム機1から他の携帯型ゲーム機1へ、ゲームプログラム等のデータを無線通信装置15を介して転送(送信)し、受信したゲームプログラムに従ったゲームを受信側の携帯型ゲーム機1において実行可能とする機能である。
【0053】
図2は、ソフトウェア共有化機能を説明するための図である。同図では、ゲームカートリッジ920が装着された携帯型ゲーム機1Aから、他の携帯型ゲーム機1Bへのソフトウェアの共有化を行う場合を示している。以下、ソフトウェア共有化機能による送信側の携帯型ゲーム機1を「親機」と言い、受信側の携帯型ゲーム機1を「子機」という。即ち、同図では、携帯型ゲーム機1Aが「親機」であり、携帯型ゲーム機1Bが「子機」である。
【0054】
同図によれば、ゲームカートリッジ920には、ゲームを実行するためのゲームプログラム922及びゲームデータ924と、ソフトウェアの共有化のための転送ファイル926とが格納されている。
【0055】
転送ファイル926とは、子機に転送するための転送ファイルであり、ゲームソフトウェアであるゲームプログラム922が、ソフトウェアを転送ファイル化する転送ファイル化処理により転送ファイル化されたファイルである。この転送ファイル化処理には、暗号化及び圧縮処理が含まれている。本実施形態において、転送ファイル926は、無線通信により携帯型ゲーム機1間で送受信される。このため、暗号化することで、送受信されるゲームプログラムのセキュリティ上の安全性が確保される。また圧縮処理により転送ファイル926のデータ量が削減され、送受信にかかる負担が軽減される。
【0056】
親機は、装着されているゲームカートリッジ920に格納されている転送ファイル926及びゲームデータ924を読み出し、これを子機に送信する。このとき、各携帯型ゲーム機1では、転送ファイル926については転送ファイル用通信部222を、ゲームデータ924についてはデータ用通信部242を、それぞれ介して送受信する。詳細には、親機では、転送ファイル用通信部222が転送ファイル926を、データ用通信部242がゲームデータ924を、それぞれ子機に送信する。
【0057】
そして、子機では、転送ファイル用通信部222が、親機から送信されてくる転送ファイルを受信しつつ復元し、転送ファイル化される前の元のゲームプログラム922に変換する。また、データ用通信部242が、親機から送信されてくるゲームデータ924を受信する。ここで、転送ファイル用通信部222による転送ファイル926の復元は、上述した転送ファイル化に対応する方式である。具体的には、上述した暗号化に対応する復号、及び、圧縮処理に対応する伸張処理が含まれている。
【0058】
子機において受信されたゲームプログラム922やゲームデータ924は、当該子機の内部メモリに記憶される。そして、子機では、このゲームプログラム922及びゲームデータ924に従ったゲームを実行可能となる。
【0059】
尚、同図では、ゲームカートリッジ920が装着されている携帯型ゲーム機1を親機とし、このゲームカートリッジ920に格納されている転送ファイル926を読み出して子機に送信することとしたが、内部メモリに転送ファイル926が記憶されているとした場合には、この内部メモリに記憶されている転送ファイル926を子機に送信することとも可能である。
【0060】
また転送ファイル926やゲームデータ924の転送は、無線通信による転送に限らず、例えば、親機と子機との間を通信ケーブル等でデータ送受信可能に接続し、有線通信によって転送することとしても良い。
以上がソフトウェア共有化機能の概要である。
【0061】
次に、本実施形態の転送ファイル26について説明する。
図3は、転送ファイル26のデータ構造を説明するための図である。同図によれば、ゲームカートリッジ20には、ゲーム実行のためのゲームプログラム22及びゲームデータ24と、ソフトウェアの共有化のための転送ファイル26[N]とが格納されている。この転送ファイル26[N]は、上述のようにゲームプログラム22を転送ファイル化したファイルであり、転送ファイル26が重畳的に転送ファイル化された転送ファイル化の入れ子構造を有している。
【0062】
即ち、転送ファイル26[N]は、ゲームプログラム22と、転送ファイル26[N−1]と、レベルデータ28[N]とが纏めて1つのファイルとされ、転送ファイル化されたファイルである。また転送ファイル26[N−1]は、ゲームプログラム22と、転送ファイル26[N−2]と、レベルデータ28[N−1]とが纏めて転送ファイル化されたファイルである。また転送ファイル26[N−2]は、ゲームプログラム22と、転送ファイル26[N−3]と、レベルデータ28[N−2]とが纏めて転送ファイル化されたファイルである。
【0063】
以降も同様に、転送ファイル26[n]それぞれは、ゲームプログラム22と、転送ファイル26[n−1]と、レベルデータ28[n]とが纏めて転送ファイル化されたファイルである。但し、n=N,N−1,・・・、である。そして転送ファイル26[1]はゲームプログラム22と、レベルデータ28[1]とが纏めて1つのファイルとされ、転送ファイル化されたファイルである。
【0064】
ここでレベルデータ28とは、当該レベルデータ28が転送ファイル化された転送ファイル26での入れ子構造のレベルを示すデータである。入れ子構造のレベルは、基底レベルである転送ファイル26[1]をレベル「1」とし、この転送ファイル26[1]を転送ファイル化した転送ファイル26[2]をその上位レベルであるレベル「2」とし、そして、最上位レベルである転送ファイル26[N]をレベル「N」とするといったように、「1」〜「N」の範囲の正の整数値で定義されている。
【0065】
このように、ゲームカートリッジ20に格納されている転送ファイル26[N]のデータ構造は、基底レベルであるレベル「1」については、ゲームプログラム22と、レベルデータ28[1]とが転送ファイル化され、他の各レベル「n」については、ゲームプログラム22と、その直下レベル「n−1」の転送ファイル26[n−1]と、レベルデータ28[n]とが転送ファイル化された、転送ファイル化の入れ子構造を有している。
【0066】
即ち、転送ファイル26[N]には、入れ子構造のレベル毎に1本のゲームプログラム22が転送ファイル化されており、実質的にN本のゲームプログラム22が含まれていることになる。
【0067】
次いで、このような転送ファイル化の入れ子構造を有する転送ファイル26[N]のソフトウェア共有化機能による転送について、図4を参照して説明する。
【0068】
同図によれば、先ず、ゲームカートリッジ20が装着された携帯型ゲーム機1(これを第1世代とし、ゲーム機[1]と称する。また、後述する第m世代の各携帯型ゲーム機1を、ゲーム機[m]と称する。)から、該ゲームカートリッジ20に記憶されている転送ファイル26[N]及びゲームデータ24が、他の携帯型ゲーム機1に送信される。この携帯型ゲーム機1が、第2世代のゲーム機[2]となる。
【0069】
尚ここで、転送ファイル26及びゲームデータ24の送信は、上述のように、転送ファイル26については転送ファイル用通信部222を、ゲームデータ24についてはデータ用通信部242を、それぞれ介して行われ、受信側の携帯型ゲーム機1(子機)では、送信されてきた転送ファイル26の受信とともに復元が行われる。
【0070】
ゲーム機[2]では、送信されてきた転送ファイル26[N]を受信しつつ復元して、ゲームプログラム22、転送ファイル26[N−1]及びレベルデータ28[N]を得るとともに、ゲームデータ24を受信する。従って、ゲーム機[2]では、このゲームプログラム22及びゲームデータ24に従ったゲームを実行可能となる。また、ゲーム機[2]から、転送ファイル26[N−1]及びゲームデータ24が、更に他の携帯型ゲーム機1に送信される。この携帯型ゲーム機1が、第3世代のゲーム機[3]となる。
【0071】
ゲーム機[3]では、同様に、送信されてきた転送ファイル26[N−1]を受信しつつ復元して、ゲームプログラム22、転送ファイル26[N−2]及びレベルデータ28[N−1]を得るとともに、ゲームデータ24を受信する。従って、ゲーム機[3]では、このゲームプログラム22及びゲームデータ24に従ったゲームを実行可能となる。また、ゲーム機[3]から、転送ファイル26[N−2]及びゲームデータ24が、更に他の携帯型ゲーム機1に送信される。この携帯型ゲーム機1が、第4世代のゲーム機[4]となる。
【0072】
そして、ゲーム機[N+1]では、ゲーム機[N]から送信されてきた転送ファイル26[1]を受信しつつ復元して、ゲームプログラム22及びレベルデータ28[1]を得るとともに、ゲームデータ24を受信する。従って、ゲーム機[N+1]では、このゲームプログラム22及びゲームデータ24に従ったゲームを実行可能となる。またここで、転送ファイル26[1]には転送ファイル26が含まれていない。このため、ゲーム機[N+1]は、更に他の携帯型ゲーム機1への転送ファイル26の送信を行うことはできない。
【0073】
このように、ゲーム機[1]では、転送ファイル26[N]をゲーム機[2]に送信する。そして、以降の各世代「m」のゲーム機[m]では、直前世代のゲーム機[m−1]から送信されてくる転送ファイル26[N−(m−2)]より、ゲームプログラム22及び転送ファイル26[N−(m−1)]を得、この転送ファイル26[N−(m−1)]を次世代のゲーム機[m+1]に送信する。但し、m=2,3,・・・,N、である。そして、最終世代であるゲーム機[N+1]では、ゲーム機[N]から送信されてくる転送ファイル26[1]により、ゲームプログラム22を得る。
【0074】
このような入れ子構造を有する転送ファイル26[N]によれば、最大、第(N+1)世代のゲーム機[N+1]までのソフトウェアの共有化、即ち(N+1)世代に亘るソフトウェアの共有化が可能である。このソフトウェアの共有化によって世代間の転送可能な最大数を、世代間転送可能回数という。同図においては、世代間転送可能回数は「N」となる。
【0075】
またここで、ゲームカートリッジ20に格納される転送ファイル26[1]による世代間転送可能回数は、主に、転送されるゲームプログラム22の容量と、転送ファイル26として許容される最大のサイズである最大許容容量とによって決まる。転送ファイル26としての最大許容容量は、例えば携帯型ゲーム機1内に記憶される際のメモリ容量によって規定される。転送ファイル化に伴うゲームプログラム22の圧縮処理後の容量を「a」とし、転送ファイル26の最大許容容量を「b」とする。また転送ファイル26[N]には、上述のように実質的にN本のゲームプログラム22が圧縮されて含まれている。このため、世代間転送可能回数Nは、a×N≦b、を満足する値となる。
【0076】
[携帯型ゲーム機の機能構成]
図5は、携帯型ゲーム機1の機能構成を示すブロック図である。同図によれば、携帯型ゲーム機1は、機能的には、操作入力部120と、情報読出部140と、無線通信部160と、処理部200と、画像表示部320と、音出力部340と、記憶部400とを備えて構成される。
【0077】
操作入力部120は、ユーザによる操作指示を受け付け、操作に応じた操作信号を処理部200に出力する。図1では、方向キー3やボタンスイッチ5、不図示の電源スイッチや音量調節スイッチがこれに該当する。
【0078】
情報読出部140は、情報記憶媒体であるゲームカートリッジ20に対して情報の読み出しを行い、読み出した情報を処理部200に出力する。図1では、筐体に内蔵される読取装置がこれに該当する。
【0079】
無線通信部160は、主に他の携帯型ゲーム機1等の外部機器と通信接続し、当該外部機器との間でデータの送受信を行う。この機能は、無線LANやIrDA、BlueTooth(R)等の無線通信規格に準拠した無線通信モジュールによって実現される。図1では、筐体に内蔵された無線通信装置15がこれに該当する。
【0080】
処理部200は、携帯型ゲーム機1全体の制御やゲームの進行制御、ソフトウェア共有化の制御、通信制御、画像生成や音生成等の各種演算処理を行う。この機能は、例えばCPU(CISC型、RISC型)やASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。図1では、制御装置13に搭載されたCPUがこれに該当する。
【0081】
また本実施形態において、処理部200は、ソフトウェアの共有に係る演算処理を行うソフトウェア共有部220と、主にゲームに係る演算処理を行うゲーム演算部240と、ソフトウェア共有部220やゲーム演算部240の処理によって求められた各種のデータに基づき、各種表示画面の画像信号を生成するための画像生成部260と、効果音やBGM等の各種音の音信号を生成する音生成部280とを含んでいる。
【0082】
ソフトウェア共有部220は、他の携帯型ゲーム機1との間での転送ファイル26の送受信を制御する転送ファイル用通信部222を含み、ソフトウェア共有プログラム410に従ったソフトウェア共有化処理を実行する。
【0083】
具体的には、先ず、ゲームカートリッジ20の装着有無の判断や、受信情報用記憶部420における転送ファイル26の記憶有無の判断、操作入力部120からの操作信号等に基づいて、該携帯型ゲーム機1が親機であるか子機であるかの判断を行う。ここで、親機であるためには、(1)ゲームカートリッジ20が装着されている、(2)受信情報用記憶部420に転送ファイル26が記憶されている、の少なくとも一方を満足する必要がある。
【0084】
そして親機である場合には、転送ファイル用通信部222が、装着されているゲームカートリッジ20に格納されている転送ファイル26、或いは、受信情報用記憶部420に記憶されている転送ファイル26を子機に送信する制御を行う。
【0085】
また、子機である場合には、転送ファイル用通信部222が、親機から送信されてくる転送ファイル26の受信及び復元を行う。ここで復元された情報(ゲームプログラム22や転送ファイル26、レベルデータ28)は、受信情報用記憶部420に記憶される。そして、操作入力部120からの操作信号等に基づいて、復元されたゲームプログラム22を実行するか否かを判断し、実行する場合には、ゲーム演算部240に、この復元されたゲームプログラム22に従ったゲーム処理を実行させる。
【0086】
ゲーム演算部240は、他の携帯型ゲーム機1との間のゲームデータ24の送受信を制御するデータ用通信部242を含み、ゲームカートリッジ20に格納されているゲームプログラム22、或いは、受信情報用記憶部420に記憶されているゲームプログラム22に従ったゲーム処理を実行する。
【0087】
具体的には、先ず、当該ゲームプログラム22によるメイン処理であるゲーム実行に必要な実行時参照データであるゲームデータ24の有無を判断する。即ち、ゲームカートリッジ20に格納されているゲームプログラム22を実行しているならば、ゲームカートリッジ20に格納されているゲームデータ24を使用するので「有り」と判断し、受信情報用記憶部420に記憶されているゲームプログラム22を実行しているならば、この受信情報用記憶部420にゲームデータ24が記憶されているか否かを判断する。
【0088】
ゲームデータ24が有るならば、当該ゲームデータ24を使用してゲームを実行する。ゲームデータ24が無いならば、無線通信部160を介して親機である携帯型ゲーム機1と1対1通信を確立し、データ用通信部242が、この親機から送信されてくるゲームデータ24を受信する制御を行う。ここで親機とは、当該ゲームプログラム22の送信元である携帯型ゲーム機1のことである。受信されたゲームデータ24は、受信情報用記憶部420に記憶される。その後、この受信されたゲームデータ24を使用してゲームを実行する。
【0089】
画像生成部260は、ソフトウェア共有部220やゲーム演算部240による演算結果に基づき、ゲーム画面等の表示画面を表示するための表示画像を生成し、生成した画像の画像信号を画像表示部320に出力する。
画像表示部320は、画像生成部260からの画像信号に基づいて、例えば1/60秒毎に1フレームの画像を再描画しながら表示画面を表示する。この機能は、例えばLCDやELD、PDP、HMD等によって実現される。図1では、ディスプレイ7がこれに該当する。
【0090】
音生成部280は、ソフトウェア共有部220やゲーム演算部240による演算結果に基づき、効果音やBGM等の各種音声を生成し、生成した音声の音信号を音出力部340に出力する。
音出力部340は、音生成部280からの音信号に基づいて、BGMや効果音等の各種音声を出力する。この機能は、例えばスピーカ等によって実現される。図1では、スピーカ9がこれに該当する。
【0091】
記憶部400は、処理部200に携帯型ゲーム機1を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームやソフトウェア共有化等の各種アプリケーションを実行させるために必要なプログラムやデータ等を記憶するとともに、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部120から入力される操作信号データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、MO、RAM、VRAM等によって実現される。図1では、制御装置13に搭載されたICメモリがこれに相当する。
【0092】
本実施形態では、記憶部400は、処理部200をソフトウェア共有部220として機能させるためのソフトウェア共有プログラム410を記憶しているとともに、受信情報用記憶部420を備えている。この受信情報用記憶部420は、ソフトウェア共有化機能により、親機である他の携帯型ゲーム機1から受信した情報を記憶する。具体的には、転送ファイル用通信部222において受信、復元されたゲームプログラム22、転送ファイル26及びレベルデータ28と、データ用通信部242において受信されたゲームデータ24とを記憶する。
【0093】
[携帯型ゲーム機における処理の流れ]
図6は、携帯型ゲーム機1における全体処理の流れを説明するためのフローチャートである。同図によれば、処理部200は、先ず、ゲームカートリッジ20が装着されているか否か(装着有無)を判定する(ステップA1)。また、受信情報用記憶部420に、ゲームプログラム22及び転送ファイル26が記憶されているか否か(記憶有無)を判定する(ステップA3)。
【0094】
次に、処理部200は、この装着有無や記憶有無の判定結果、操作入力部120からの操作信号等に基づいて、ゲームを実行するか、ソフトウェアの共有化を行うかを判断する。ソフトウェアの共有化を行うならば(ステップA5:共有)、続いて、ソフトウェア共有部220がソフトウェア共有化処理を実行する(ステップA7)。また、ゲームを実行するならば(ステップA5:ゲーム)、ゲーム演算部240がゲーム処理を実行する(ステップA9)。そして各処理が終了すると、本全体処理は終了となる。
【0095】
図7は、ソフトウェア共有化処理の流れを説明するためのフローチャートである。この処理は、ソフトウェア共有部220がソフトウェア共有プログラム410を実行することで実現される。同図によれば、ソフトウェア共有部220は、先ず、ゲームカートリッジ20の装着有無や転送ファイル26の記憶有無、操作入力部120からの操作信号等に基づいて、当該携帯型ゲーム機1が親機であるか子機であるかを判断する。
【0096】
そして、親機であるならば(ステップB1:親機)、次の処理を行う。即ち、無線通信部160を介して、子機である他の携帯型ゲーム機1との間の1対1通信を確立させる(ステップB3)。次いで、転送ファイル用通信部222が、装着されているゲームカートリッジ20に格納されている転送ファイル26、或いは、受信情報用記憶部420に記憶されている転送ファイル26を、子機に送信する制御を行う(ステップB5)。
【0097】
一方、当該携帯型ゲーム機1が子機であるならば(ステップB1:子機)、ソフトウェア共有部220は次の処理を行う。即ち、無線通信部160を介して、親機である他の携帯型ゲーム機1との間の1対1通信を確立させる(ステップB7)。次いで、転送ファイル用通信部222が、親機から送信されてくる転送ファイルを受信しつつ復元し、得られた情報(ゲームプログラム22や転送ファイル26、レベルデータ28)を受信情報用記憶部420に記憶させる(ステップB9)。
【0098】
その後、ソフトウェア共有部220は、例えば操作入力部120からの操作信号に基づいて、復元されたゲームプログラム22を実行するか否かを判断する。実行するならば(ステップB11:YES)、ゲーム演算部240に、この復元されたゲームプログラム22に従ったゲーム処理を実行させる(ステップB13)。
以上の処理を行うと、本ソフトウェア共有化処理は終了となる。
【0099】
図8は、ゲーム処理の流れを説明するためのフローチャートである。この処理は、ゲーム演算部240が、ゲームカートリッジ20に格納されているゲームプログラム22、或いは、受信情報用記憶部420に記憶されているゲームプログラム22を実行することで実現される。
【0100】
同図によれば、ゲーム演算部240は、先ず、ゲームカートリッジ20の装着有無やゲームデータ24の記憶有無等に基づいて、当該ゲームプログラム22によるゲームの実行に必要なゲームデータ24の有無を判断する(ステップC1)。そして、ゲームデータ24が有るならば(ステップC3:YES)、当該ゲームデータ24を使用してゲームを実行する(ステップC11)。
【0101】
一方、ゲームデータ24が無いならば(ステップC3:NO)、ゲーム演算部240は、無線通信部160を介して、親機である他の携帯型ゲーム機1との間の1対1通信の確立させる(ステップC5)。次いで、この親機にゲームデータ24の転送を要求する(ステップC7)。そして、データ用通信部242が、親機から送信されてくるゲームデータ24を受信する制御を行い、受信したゲームデータ24を受信情報用記憶部420に記憶させる(ステップC9)。その後、この受信したゲームデータ24を使用してゲームを実行する(ステップC11)。
以上の処理を行うと、本ゲーム処理は終了となる。
【0102】
[転送ファイルの生成]
次に、ゲームカートリッジ20に格納される転送ファイル26(以下、「格納用転送ファイル」と称する)の生成について説明する。転送ファイル26の生成は、ゲームカートリッジ20のメーカ側で実施されるものである。
【0103】
図9は、格納用転送ファイルを生成するための生成システム40の全体構成を示す図である。この生成システム40は、転送ファイル化サーバ42と、格納用転送ファイル作成サーバ44とを含み、与えられたゲームプログラム22から格納用転送ファイルを生成するシステムであり、例えばゲームメーカ側に設置、管理される。
【0104】
転送ファイル化サーバ42は、格納用転送ファイル作成サーバ44からの被転送情報を転送ファイル化して転送ファイルに変換する転送ファイル化処理を行う。この転送ファイル化処理には、上述のように暗号化処理及び圧縮処理が含まれている。
【0105】
格納用転送ファイル作成サーバ44は、与えられたゲームプログラム22や、転送ファイル化サーバ42で変換された転送ファイル26等を基に被転送情報を生成し、転送ファイル化サーバ42にこの被転送情報を転送ファイルに変換させる処理を繰り返し行うことで、格納用転送ファイルを作成する。そして、格納用転送ファイル作成サーバ44により作成された格納用転送ファイルは、ゲームプログラム22及びゲームデータ24とともにゲームカートリッジ20に格納され、例えば製品として販売されたり、無償配布されたりする。
【0106】
図10は、生成システム40による格納用転送ファイルの生成方法を説明するための図である。但し、世代間転送可能回数は「N」であるとする。同図によれば、先ず、格納用転送ファイル作成サーバ44により、ゲームプログラム22と、レベルを基底レベルである「1」としたレベルデータ28[1]とが纏めて被転送情報とされ、この被転送情報が、転送ファイル化サーバ42によって転送ファイル26[1]に変換される。
【0107】
次に、格納用転送ファイル作成サーバ44により、この転送ファイル26[1]と、ゲームプログラム22と、レベルを「2」としたレベルデータ28[2]とが纏めて被転送情報とされ、転送ファイル化サーバ42によって転送ファイル26[2]に変換される。続いて、格納用転送ファイル作成サーバ44により、この転送ファイル26[2]と、ゲームプログラム22と、レベルを「3」としたレベルデータ28[3]とが纏めて被転送情報とされ、転送ファイル化サーバ42によって転送ファイル26[3]に変換される。
【0108】
以降も同様に、格納用転送ファイル作成サーバ44により転送ファイルが作成されていき、最後に、転送ファイル26[N−1]と、ゲームプログラム22と、レベルを「N」としたレベルデータ28[N]とが纏めて被情報とされ、転送ファイル化サーバ42によって転送ファイル26[N]に変換される。この転送ファイル26[N]が、格納用転送ファイルとされる。
【0109】
このように、直前に変換された転送ファイル26と、ゲームプログラム22と、レベルデータ28が纏めて被転送情報とされ、転送ファイル26に変換される一連の処理が世代間転送可能回数に等しい回数だけ繰り返されることで、格納用転送ファイルである転送ファイル26が生成される。
【0110】
図11は、格納用転送ファイル作成サーバ44によって実行される格納用転送ファイル作成処理の流れを説明するためのフローチャートである。同図によれば、格納用転送ファイル作成サーバ44は、先ず、世代間転送可能回数Nを決定する(ステップD1)。また、入れ子構造のレベルを表す変数nを、基底レベルである「1」に設定する(ステップD3)。
【0111】
次に、与えられたゲームプログラム22と、レベルを「n」としたレベルデータ28とを含む被転送情報を生成し(ステップD5)、転送ファイル化サーバ42に、この被転送情報に対する転送ファイル化処理を行わせ、転送ファイル26に変換させる(ステップD7)。
【0112】
続いて、格納用転送ファイル作成サーバ44は、変数nが世代間転送可能回数Nに一致するか否かを判断し、一致しないないならば(ステップD9:NO)、この変数nを「1」加算した値に更新する(ステップD11)。次いで、ステップD7において直前に変換された転送ファイルと、レベルを「n」としたレベルデータ28とを含む被転送情報を生成した後(ステップD13)、ステップD7に戻り、転送ファイル化サーバ42に、この被転送情報に対する転送ファイル化処理を行わせ、転送ファイルに変換させる(ステップD7)。
【0113】
一方、ステップD9において、変数nが世代間転送可能回数Nに一致するならば(ステップD9:YES)、格納用転送ファイル作成サーバ44は、ステップD7において直前に変換された転送ファイルを格納用転送ファイルとし(ステップD15)、本格納用転送ファイル生成処理を終了する。
【0114】
[作用・効果]
以上、本実施形態によれば、ゲームカートリッジ20に格納される転送ファイル26は、ゲームプログラム22が転送ファイル化された転送ファイル26が重畳的に転送ファイル化された、転送ファイル化の入れ子構造を有している。即ち、携帯型ゲーム機1において、親機であるこのゲームカートリッジ20が装着された携帯型ゲーム機1から受信し復元したデータもまた、転送ファイル化の入れ子構造を有する転送ファイル26である。このため、この復号した転送ファイル26を、更に他の携帯型ゲーム機1に転送することができる。従って、3世代以上に亘る転送ファイル26の転送が可能となる。
【0115】
また、入れ子構造の基底レベルであるレベル「1」ではゲームプログラム22が転送ファイル化され、レベル「1」より上のレベル「n」では、その直下レベル「n−1」で転送ファイル化された転送ファイル26[n−1]とゲームプログラム22とが転送ファイル化される。このため、転送ファイル26が転送された各世代においてゲームプログラム22の実行が可能となる。
【0116】
[変形例]
尚、本発明を適用可能な実施形態は上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。
【0117】
(A)例えば上述した実施形態では、転送ファイル化の入れ子構造の各レベルにおいてゲームプログラム22を同一とし、ゲームプログラム22の実行時に使用されるゲームデータ24を同一のものとして説明したが、次のようにしても良い。
【0118】
(A−1)例えば、ゲームプログラム22は同一であるが、入れ子構造のレベルに応じてゲームプログラム22の実行時に使用されるゲームデータ24中のデータを異なることとする。
【0119】
具体的には、図12に示すように、ゲームカートリッジ20には、第1世代の携帯型ゲーム機1においてゲームプログラム22の実行時に使用されるゲームデータ24[0]と、第2世代以降の各携帯型ゲーム機1に転送されるゲームデータ24Aとが格納される。ゲームデータ24Aは、入れ子構造のレベル「1」〜「N」それぞれに対応するゲームデータ24[1]〜24[N]から構成される。
【0120】
そして第2世代以降のゲーム機[2]〜[N+1]それぞれでは、ゲームプログラム22の実行の際、受信したゲームデータ24Aから、その入れ子構造のレベルに対応するゲームデータ24[N]〜24[1]を選択して使用する。ゲーム機[2]〜[N+1]それぞれにおいて、入れ子構造のレベルは、レベルデータ28[N]〜28[1]によって知ることができる。
【0121】
ここでゲームデータ24[1]〜24[N]は、何れもゲームプログラム22に対応したものであり、その内容が異なっている。具体的には、例えば、(a)自キャラクタや敵キャラクタといったゲームに登場するキャラクタのモデルデータやテクスチャ、能力パラメータが異なっていたり、キャラクタそのものが異なるといったキャラクタ情報が異なる場合や、(b)背景を含むゲームステージや天候等のゲーム条件、ゲームクリア条件が異なるといったゲームステージ情報が異なる場合がある。従って、世代が異なる各携帯型ゲーム機1において、登場するキャラクタやゲームステージが異なるのゲームを楽しむことができる。
【0122】
(A−2)また、ゲームデータ24を同一とし、入れ子構造のレベル毎に転送ファイル化されるゲームプログラム22が異なることとしても良い。この場合、例えばある世代の携帯型ゲーム機1においては野球ゲームが実行可能であり、他のある世代の携帯型ゲーム機1においてはサッカーゲームが実行可能となるといった、世代間で異なるゲームを楽しむことができる。
【0123】
(A−3)更に、入れ子構造のレベル毎に、転送ファイル化されるゲームプログラム22及び使用されるゲームデータ24中のデータが異なることとしても良い。具体的には、図13に示すように、入れ子構造のレベル「1」〜「N」それぞれにおいて、ゲームプログラム22[1]〜22「N」を転送ファイル化する。そして、この各ゲームプログラム22[1]〜22[N]に対応するゲームデータ24[1]〜[N]から構成されるゲームデータ24Bを、ゲームカートリッジ20に格納する。またこのゲームデータ24[1]〜24[N]それぞれは、入れ子構造のレベル「1」〜「N」に対応付けられていることとする。
【0124】
(B)また上述した実施形態では、ゲームプログラム22を転送ファイル化して転送ファイル26を生成することとしたが、ゲームプログラム22及びゲームデータ24を纏めて転送ファイル化することとしても良い。
【0125】
具体的には、図14に示すように、入れ子構造のレベル「1」〜「N」それぞれにおいて、ゲームプログラム22[1]〜22[N]と、このゲームプログラム22[1]〜22[N]の実行時に使用されるゲームデータ24[1]〜24[N]とを纏めて転送ファイル化することとしても良い。そして生成した転送ファイル26[N]を、ゲーム機[1]で実行されるゲームプログラム22[0]及びゲームデータ24[0]とともに、ゲームカートリッジ20に格納する。
【0126】
この場合、上述した実施形態のように、各携帯型ゲーム機1において、復元したゲームプログラム22の最初の実行時に親機から対応するゲームデータ24の受信を行う必要が無い。但し、転送ファイル26には最大許容容量があるので、その分、ゲームデータ24を転送ファイル化しない場合と比較して世代間転送可能回数Nが小さくなる。
【0127】
(C)また上述した実施形態では、復元したゲームプログラム22の実行時に、該ゲームプログラム22に従ったゲームの実行に必要なゲームデータ24が受信されていない場合、該ゲームデータ24を親機から受信することとしたが、更に、携帯型ゲーム機1の内部メモリである受信情報用記憶部420の空き容量に応じて、ゲームデータ24の受信有無を決定することとしても良い。
【0128】
具体的には、受信することとなるゲームデータ24の容量が、受信情報用記憶部420の空き容量以下である場合に、該ゲームデータ24を受信する。更に、親機において、それぞれ容量が異なる複数のゲームデータ24が記憶されることとし、子機は、受信情報用記憶部420の空き容量以下の容量のゲームデータ24を選択して受信することとしても良い。
【0129】
(D)また、各携帯型ゲーム機1において、携帯型ゲーム機1間の転送ファイル26の転送履歴の情報である継承経過情報を管理することととしても良い。継承経過情報とは、ゲームカートリッジ20に格納された1つの転送ファイル26が、どの携帯型ゲーム機1間で転送(継承)されたかを示す情報であり、そのデータ構造は、例えば各携帯型ゲーム機1の世代を基準とした階層構造を有している。
【0130】
具体的には、親機から子機への転送ファイル26の送信時に、親機が、自機の継承経過情報と、機器IDやユーザ名等の装置識別情報とを子機に送信し(例えば、図7のステップB5の次)、子機が自機の装置識別情報を親機に送信する(例えば、図7のステップB9の次)。そして、親機では、受信した子機の装置識別情報を、継承経過情報における自機の直下層に追加して更新し、子機では、受信した親機の装置識別情報を、受信した継承経過情報における自機の直上層に追加して更新する。尚、継承経過情報の送信及び更新等は、転送ファイル26の送信時ではなく、復元したゲームプログラム22の実行時、具体的には、例えばゲームデータ24の送信時(例えば、図8のステップC9の次)に行うこととしても良い。
【0131】
更に、子機は、通信可能な範囲内の親機以外の他の携帯型ゲーム機1との無線通信を確立し、該他の携帯型ゲーム機1と互いに自機の装置識別情報の送受信を行う。受信した他の携帯型ゲーム機1の装置識別情報が自機の継承経過情報に含まれている場合、該他の携帯型ゲーム機1と互いに自機の継承経過情報の送受信を行い、受信した継承経過情報を基に、自機の継承経過情報を更新する。
【0132】
更に、各携帯型ゲーム機1において、継承経過情報に基づく転送ファイル26の転送履歴を表示しても良い。具体的には、例えば自機の世代数を表示したり、自機と親機との間の各世代の携帯型ゲーム機1のユーザ名等を、その転送ファイル26の転送順に従って図示した系譜を表示したりする。
【0133】
(E)また、復元したゲームプログラム22の実行に制限を設けることとしても良い。
【0134】
(E−1)例えば、復元したゲームプログラム22の実行可能な期間に制限を設けることとする。具体的には、親機からの転送ファイル26の受信時に、転送ファイル26を復元した各情報(ゲームプログラム22や転送ファイル26等)とともに、この転送ファイル26の受信時刻を示す時刻データを受信情報用記憶部420に記憶する。
【0135】
そして、受信情報用記憶部420に記憶されているゲームプログラム22の実行時には、先ず、受信情報用記憶部420に記憶されている時刻データが示す受信時刻から現在時刻までの経過時間を算出し、この経過時間が予め定められたゲームプログラム22の実行可能な期間である実行可能期間に達しているか否かを判定する(例えば、図8のステップC1の前)。経過時間が実行可能期間を超えていないならば、該ゲームプログラム22の実行を継続し、超えているならば、例えば該ゲームプログラム22の実行可能な期限を過ぎたとするエラーメッセージを表示させ、該ゲームプログラム22の実行を禁止する。
【0136】
(E−2)また、復元したゲームプログラム22の実行可能な回数に制限を設けることとする。具体的には、親機からの転送ファイル26の受信時に、転送ファイル26を復元した各情報(ゲームプログラム22や転送ファイル26等)とともに、復元したゲームプログラム22の実行回数を示す実行回数データを初期値「0」として受信情報用記憶部420に記憶する。
【0137】
そして、受信情報用記憶部420に記憶されているゲームプログラム22の実行時には、先ず、受信情報用記憶部420に記憶されている実行回数を「1」加算した値に更新し、更新後の実行回数が、予め定められたゲームプログラム22を実行可能な回数である実行可能回数に達しているか否かを判定する(例えば、図8のステップC1の前)。実行回数が実行可能回数に達していないならば、該ゲームプログラム22の実行を継続し、達しているならば、例えば該ゲームプログラム22の実行可能な回数を過ぎたとするエラーメッセージを表示させ、該ゲームプログラム22の実行を禁止する。尚ここで、実行回数の初期値として実行可能回数を記憶し、ゲームプログラム22の実行毎に実行回数を「1」減算した値に更新し、この実行回数が「0」になると該ゲームプログラム22の実行を禁止することとしても良い。
【0138】
(F)また上述した実施形態では、コンピュータ機器として携帯型ゲーム機に適用した場合を説明したが、これ以外のゲーム機、例えば家庭用ゲーム機や業務用ゲーム機、通信機能を備え、ゲームを実行可能なパーソナルコンピュータや、携帯電話機やPDA等の携帯端末機に適用することとしても良い。
【0139】
(G)また、転送ファイル化されるソフトウェアはゲームプログラムに限らず、音楽再生ソフトといった他のアプリケーションソフトウェアであっても良い。この場合、適用するコンピュータ機器として、例えば携帯電話機やPDA等の携帯端末機、パーソナルコンピュータといった通信機能を備えた機器に適用する。
【0140】
(H)また機器間の通信方式としては、無線通信に限らず、有線通信であっても良い。
【0141】
(I)更に上述した実施形態では、ソフトウェアの転送ファイル化として暗号化及び圧縮処理を行うこととしたが、どちらか一方のみを行うこととしても良い。この場合、受信した転送ファイルを復元する際、暗号及び圧縮処理のどちらが行われたかに応じて復号又は伸張処理が行われる。
【図面の簡単な説明】
【0142】
【図1】携帯型ゲーム機の外観例。
【図2】ソフトウェア共有化機能の説明図。
【図3】転送ファイルのデータ構造の説明図。
【図4】転送ファイルの転送の説明図。
【図5】携帯型ゲーム機の機能構成図。
【図6】携帯型ゲーム機における全体処理の流れ図。
【図7】全体処理中に実行されるソフトウェア共有化処理の流れ図。
【図8】全体処理中に実行されるゲーム処理の流れ図。
【図9】格納用転送ファイルの生成システムの構成図。
【図10】格納用転送ファイルの生成の説明図。
【図11】格納用転送ファイル作成処理の流れ図。
【図12】転送ファイルのデータ構造の変形例。
【図13】転送ファイルのデータ構造の変形例。
【図14】転送ファイルのデータ構造の変形例。
【符号の説明】
【0143】
1(1A,1B) 携帯型ゲーム機
120 操作入力部
140 情報読出部
160 無線通信部
200 処理部
220 ソフトウェア共有部
222 転送ファイル用通信部
240 ゲーム演算部
242 データ用通信部
260 画像生成部
280 音生成部
320 画像表示部
340 音出力部
400 記憶部
410 ソフトウェア共有プログラム
420 受信情報用記憶部
22 ゲームプログラム
26 転送ファイル
28 レベルデータ
24 ゲームデータ
20 ゲームカートリッジ
22 ゲームプログラム
24 ゲームデータ
26 転送ファイル(格納用転送ファイル)
40 生成システム
42 転送ファイル化サーバ
44 格納用転送ファイル作成サーバ

【特許請求の範囲】
【請求項1】
他装置との間でデータ送受信が可能なコンピュータによる転送ファイルデータ受信・復元処理によって、ソフトウェアが転送ファイル化された転送ファイルデータの他装置からの受信と、受信した転送ファイルデータの転送ファイル化前の状態への復元とが行われ、復元されたソフトウェアに従った処理が前記コンピュータによって実行されることとなる転送ファイルデータのデータ構造であって、
転送ファイルデータが重畳的に転送ファイル化され、転送ファイル化の入れ子構造を有してなるデータ構造。
【請求項2】
入れ子構造の基底レベルではソフトウェアが転送ファイル化され、基底レベルより上のレベルではソフトウェアと当該レベルの直下のレベルの転送ファイル化された転送ファイルデータとが纏めて転送ファイル化されることで転送ファイル化の入れ子構造を有してなる請求項1に記載のデータ構造。
【請求項3】
前記転送ファイル化には少なくとも暗号化が含まれ、
前記コンピュータの前記転送ファイルデータ受信・復元処理において転送ファイルデータが復号される、
ことを特徴とする請求項1又は2に記載のデータ構造。
【請求項4】
前記転送ファイル化には少なくとも圧縮処理が含まれ、
前記コンピュータの前記転送ファイルデータ受信・復元処理において転送ファイルデータが伸張処理される、
ことを特徴とする請求項1〜3の何れか一項に記載のデータ構造。
【請求項5】
入れ子構造の各レベルのソフトウェアは、入れ子構造の各レベルに応じた処理をコンピュータに実行させるためのソフトウェアであることを特徴とする請求項1〜4の何れか一項に記載のデータ構造。
【請求項6】
前記ソフトウェアは、
転送ファイルデータの装置間の転送履歴を継承経過情報として管理する継承管理手段として前記コンピュータを機能させ、
前記継承管理手段が、他装置から当該装置の装置識別情報及び/又は当該装置の継承管理手段によって管理されている継承経過情報を取得することで、管理している継承経過情報を更新するように前記コンピュータを機能させる、
ためのソフトウェアであることを特徴する請求項1〜5の何れか一項に記載のデータ構造。
【請求項7】
前記ソフトウェアは、
前記継承管理手段により管理されている継承経過情報に基づいて、転送履歴にかかる所定処理を行う手段として前記コンピュータを機能させるためのソフトウェアであることを特徴とする請求項6に記載のデータ構造。
【請求項8】
前記ソフトウェアは、
当該ソフトウェアの復元時からの経過時間を判定する経過時間判定手段、
前記経過時間判定手段により判定された経過時間が所定の実行可能期間に達している場合、当該ソフトウェアの実行を禁止する実行禁止手段、
として前記コンピュータを機能させるためのソフトウェアであることを特徴とする請求項1〜7の何れか一項に記載のデータ構造。
【請求項9】
前記ソフトウェアは、
当該ソフトウェアの復元時からの実行回数を計数する計数手段、
前記計数手段により計数された実行回数が所定の実行可能回数に達している場合、当該ソフトウェアの実行を禁止する実行禁止手段、
として前記コンピュータを機能させるためのソフトウェアであることを特徴とする請求項1〜7の何れか一項に記載のデータ構造。
【請求項10】
入れ子構造の各レベルのソフトウェアそれぞれは、
メイン処理を実行するメイン処理実行手段、
前記メイン処理実行手段による処理時に読み出されて使用される該処理に必要なデータである実行時参照データを他装置から受信する実行時参照データ受信手段、
として前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とする請求項1〜9の何れか一項に記載のデータ構造である。
【請求項11】
前記ソフトウェアは、
少なくとも前記実行時参照データを受信済みか否かを基に、前記実行時参照データを受信するか否かを判定する受信判定手段、
として前記コンピュータを機能させ、
前記実行時参照データ受信手段が、前記受信判定手段により受信すると判定された場合に前記実行時参照データを端装置から受信する、
ように前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とする請求項10に記載のデータ構造。
【請求項12】
前記ソフトウェアは、
前記受信判定手段が、更に前記受信される実行時参照データが記憶されるメモリの空き容量を基に、前記実行時参照データを受信するか否かを判定する、
ように前記コンピュータを機能させるためのプログラムである、
ことを特徴とする請求項11に記載のデータ構造。
【請求項13】
前記ソフトウェアは、
他装置に記憶されている複数の実行時参照データの中から、受信する実行時参照データをメモリの空き容量を基に選択するデータ選択手段として前記コンピュータを機能させ、
前記実行時参照データ受信手段が、前記データ選択手段により選択された実行時参照データを受信するように前記コンピュータを機能させるためのソフトウェアである、
ことを特徴とする請求項10〜12の何れか一項に記載のデータ構造。
【請求項14】
請求項1〜13の何れか一項に記載のデータ構造を有する転送ファイルデータを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項15】
請求項10〜13の何れか一項に記載のデータ構造を有する転送ファイルデータと、前記実行時参照データとを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項16】
前記ソフトウェアは所定のゲームを実行するためのゲームソフトウェアであり、
前記実行時参照データには複数のゲームデータが含まれており、
前記ゲームソフトウェアは、
前記復元されたソフトウェアが入れ子構造の何れのレベルかを判定するレベル判定手段として前記コンピュータを機能させ、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のゲームデータの中から、前記レベル判定手段により判定されたレベルに応じたゲームデータに基づくゲームを実行するように前記コンピュータを機能させる、
ためのゲームソフトウェアである、
ことを特徴とする請求項15に記載の情報記憶媒体。
【請求項17】
前記実行時参照データには、前記複数のゲームデータとして複数のゲームステージ情報が含まれており、
前記ソフトウェアは、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のゲームステージ情報の中から、前記レベル判定手段により判定されたレベルに応じたゲームステージ情報に基づくゲームを実行する、
ように前記コンピュータを機能させるためのゲームソフトウェアである、
ことを特徴とする請求項16に記載の情報記憶媒体。
【請求項18】
前記実行時参照データには、前記複数のゲームデータとして複数のキャラクタ情報が含まれており、
前記ゲームソフトウェアは、
前記メイン処理実行手段が、前記実行時参照データ受信手段により受信された実行時参照データに含まれる複数のキャラクタ情報の中から、前記レベル判定手段により判定されたレベルに応じたキャラクタ情報に基づくゲームを実行する、
ようにコンピュータを機能させるためのゲームソフトウェアである、
ことを特徴とする請求項16に記載の情報記憶媒体。
【請求項19】
他装置との間でデータ送受信が可能なコンピュータによる転送ファイルデータ受信・復元処理によって、ソフトウェアが転送ファイル化された転送ファイルデータの他装置からの受信と、受信した転送ファイルデータの転送ファイル化前の状態への復元とが行われ、復元されたソフトウェアに従った処理が前記コンピュータによって実行されることとなる転送ファイルデータの製造方法であって、
転送ファイルデータを重畳的に転送ファイル化して、転送ファイル化の入れ子構造をなす転送ファイルデータを製造する製造方法。
【請求項20】
基底レベルにおいてはソフトウェアを転送ファイル化し、基底レベルより上のレベルにおいてはソフトウェアと当該レベルの直下のレベルの転送ファイル化した転送ファイルデータとを纏めて転送ファイル化することで入れ子構造の転送ファイル化をなす転送ファイルデータを製造する請求項19に記載の製造方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2006−323451(P2006−323451A)
【公開日】平成18年11月30日(2006.11.30)
【国際特許分類】
【出願番号】特願2005−143623(P2005−143623)
【出願日】平成17年5月17日(2005.5.17)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】