説明

情報処理システム、情報処理装置、情報処理プログラム

【課題】記憶媒体と情報処理装置との関連づけによるコピープロテクションを実現しつつ、他の装置でも当該記憶媒体が利用可能な情報処理システムを提供すること。
【解決手段】記憶媒体に、情報処理装置に固有のIDである本体IDを記録するためのID登録領域を設ける。また、情報処理装置には、当該本体IDが記憶されている。また、情報処理装置は、記憶媒体が装着されると、本体IDが未登録の場合は記憶媒体内のプログラムのコピーを実行するためのコピー手段を備える。コピーの際、本体IDが記憶媒体のID登録領域に記録される。また、情報処理装置は、コピーされたプログラムと記憶媒体内のプログラムとから、実行するプログラムを選択する実行プログラム選択手段を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム記憶媒体と当該記憶媒体を装着可能な情報処理装置を含む情報処理システムに関し、より特定的には、プログラムのコピーおよびプログラムの実行に関する。
【背景技術】
【0002】
従来より、特定のユーザのみに所定のプログラムをコピーさせる、あるいは、プログラムの実行を許可する技術がある。例えば、ID番号格納領域が設けられているソフトウェアが記録されたコピー媒体と、ID番号記憶装置が設けられたコンピュータシステムとを用いたコピープロテクション方式が開示されている(例えば、特許文献1)。この方式では、当該コピー媒体中のソフトウェアを、当該コンピュータシステムにおける二次記憶装置にコピーする。この際、ID番号記憶装置に記憶されているID番号が、ID番号格納領域に埋め込まれてコピーが行われる。そして、このコピー媒体を使って他のコンピュータシステムにコピーを行おうとしても、ID番号格納領域のID番号と当該他のコンピュータシステムのID番号記憶装置のID番号とが不一致であるため、他のコンピュータシステムへのコピーができないようになっている。
【0003】
また、装置固有の識別情報を用いた技術も開示されている(例えば、特許文献2)。例えば、読出し専用領域と書込可能領域を備える記憶媒体をゲーム装置に装着する。そして、当該ゲーム装置固有の識別情報を書込可能領域に書き込む。その後、記憶媒体に書き込まれた識別情報と、ゲーム装置本体に格納されている識別情報とを比較し、一致するときと一致しないときとで、ゲームプログラムの処理内容を変える技術が開示されている。
【0004】
また、未使用状態ではバージンコードが書き込まれた不揮発性メモリを記録媒体に設け、当該記録媒体が情報処理装置に装着された際、情報処理装置がバージンコードを検出すれば、自己のIDコードを書き込む技術も開示されている(例えば、特許文献3)。当該情報処理装置は、自己のIDコードが記録されていない記録媒体からはプログラムを読み出さない。これにより、IDコードの登録を行った情報処理装置でのみプログラムを実行することが可能となっている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開昭63−213027号公報
【特許文献2】特開平11−53183号公報
【特許文献3】特開2001−154839号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述したような方式や情報処理装置においては、従来から以下に示す問題点があった。上記特許文献1に開示された方式では、一旦コピーした媒体については、そのコピーを行った装置以外の装置にコピーすることができない。また、この媒体から直接プログラムを起動することもできなかった。また、上記特許文献2や特許文献3に開示されている情報処理装置では、ID番号を用いて、特定のユーザ(装置)と記憶媒体とを関連づけている。しかし、一旦いずれかの装置と関連づけられた記憶媒体は、その関連づけられた装置以外の装置では、一切利用することができなかった。つまり、上記いずれの技術も、記憶媒体と情報処理装置との間で、コピーやIDの書込等による関連づけが一旦行われれば、その記憶媒体は、関連づけられた装置以外の装置では一切利用することができなかった。
【0007】
それゆえに、本発明の目的は、記憶媒体と情報処理装置との関連づけによるコピープロテクションを実現しつつ、他の装置でも当該記憶媒体が利用可能な情報処理システムを提供することである。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係の一例を示したものであって、本発明を何ら限定するものではない。
【0009】
第1の発明は、プログラム記憶媒体(100)と当該記憶媒体を装着可能な情報処理装置本体(200)を含む情報処理システムであって、プログラム記憶媒体は、所定のプログラムを記憶するためのマスタープログラム記憶手段(17a)と、情報処理装置に固有のIDである本体IDを記録するためのID登録領域(17c)とを備えている。また、情報処理装置は、装着手段(201)と、本体ID記憶手段(208)と、コピープログラム記憶手段(207)と、コピー可否判定手段(204)と、コピー手段(205)と、本体ID登録手段(205)と、実行プログラム選択手段(210)と、実行手段(211)とを備える。装着手段は、記憶媒体を装着する。本体ID記憶手段には、本体IDが記憶される。当該本体IDは、情報処理装置の製造時に本体ID記憶手段にあらかじめ埋め込むような形で記憶させておいてもよいし、情報処理装置が初めて起動された際にランダムで生成して記憶するようにしても良い。コピープログラム記憶手段は、マスタープログラム記憶手段に記憶されているプログラムをコピープログラムとして記憶する。コピープログラム記憶手段は、典型的には、不揮発メモリである。コピー可否判定手段は、ユーザによるコピーの指示に応じて、または、情報処理装置が起動したときなどにおいて自動的に、装着手段に装着された記憶媒体のID登録領域に本体IDが記録されているか否かを判定する。コピー手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、マスタープログラム記憶手段に記憶されているプログラムをコピープログラム記憶手段にコピーする。本体ID登録手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、コピー手段がコピーを行うことに連動して、本体ID記憶手段から本体IDを読み出し、ID登録領域に当該本体IDを記録する。実行プログラム選択手段は、コピープログラム記憶手段にコピーされているプログラムおよび装着手段に装着されている記憶媒体のマスタープログラム記憶手段に記憶されているプログラムの中から、実行するプログラムを選択する。実行手段は、実行プログラム選択手段が選択したプログラムを実行する。
【0010】
第1の発明によれば、情報処理装置への無制限なコピーを制限しつつ、コピー後の記憶媒体内のプログラム、および、コピーされたプログラムの選択的な起動、実行を可能としている。また、コピーが行われた記憶媒体内のプログラムは、ID登録領域に記録された本体IDの内容にかかわらず、当該記憶媒体内から起動することが可能である。つまり、コピーが行われていない情報処理装置上であっても、記憶媒体からのプログラムの起動は可能であり、これによって、ユーザの利便性を高めることができる。また、記憶媒体からのプログラムの起動については、ID登録領域に本体IDが記録されている/いないに関わらず可能であるため、ユーザの利便性を高めることができる。
【0011】
第2の発明は、第1の発明において、ID登録領域は、本体IDを1回のみ記録可能であることを特徴とする。
【0012】
第2の発明によれば、記憶媒体から情報処理装置本体へコピーできる回数を制限しつつ、コピー後の記憶媒体内のプログラム、および、コピーされたプログラムの選択的な起動、実行を可能としている。
【0013】
第3の発明は、第1の発明において、情報処理装置は、当該ID登録領域に記録されている本体IDと本体ID記憶手段に記憶されている本体IDとが一致しているか否かを判定するID一致判定手段を更に備える。更に、コピー手段は、ID一致判定手段が本体IDが一致していると判定したときに、マスタープログラム記憶手段に記憶されているプログラムをコピープログラム記憶手段にコピーする。
【0014】
第3の発明によれば、一旦コピーが行われても、本体IDが一致する場合であれば、再度のコピーを実行することが可能となる。
【0015】
第4の発明は、第1の発明において、本体ID登録手段は、コピー可否判定手段が所定の本体IDが登録されていないと判定したとき、コピー手段がコピーを行うか否かにかかわらず(例えば、後述の図7においてユーザが「ID登録」を指示したとき、または、ID登録領域に本体IDが登録されていない或る記憶媒体が情報処理装置に装着されて、情報処理装置の電源がオンとなって起動したときに、当該情報処理装置の本体IDを自動的に当該記憶媒体のID登録領域に記憶するようにしてもよい)、本体ID記憶手段から本体IDを読み出し、ID登録領域に記録する。
【0016】
第4の発明によれば、プログラムのコピーを行わずに、本体IDのみを記憶媒体に登録することができる。これにより、ユーザの利便性を高めることが可能となる。
【0017】
第5の発明は、第1の発明において、記憶媒体は、専用データ記憶手段(175)を更に備える。専用データ記憶手段は、コピープログラム記憶手段にコピーされているプログラムが起動されたときにのみ、当該プログラムによる情報処理に用いられるデータである専用データを記憶する。また、情報処理装置は、所定のプログラムが記憶媒体から起動されたかコピープログラム記憶手段から起動されたかを判別する、起動形態判別手段を更に備える。また、実行手段は、コピープログラム記憶手段から起動されたと起動形態判別手段が判別したときのみ、専用データを用いてプログラムを実行する。なお、専用データは、コピープログラム記憶手段にコピーしてもよいし、しなくてもよい。前者の場合、実行手段は、当該コピープログラム記憶手段から当該専用データを読み出して使用し(記憶媒体から専用データを読み出してもよいが)、後者の場合、記憶媒体から専用データを読み出して使用する。また、例えば、IPLの処理において、前記所定のプログラムが前記記憶媒体から起動されたか前記コピープログラム記憶手段から起動されたかを判別しておいてその判定結果データを記憶しておく。そして、記憶媒体のプログラムまたはコピープログラム記憶手段のプログラムの処理において、当該判定結果データに応じて、コピープログラム記憶手段から起動されたことを判断して、専用データを使うか否かを判断する。
【0018】
第6の発明は、第1の発明において、記憶媒体は、所定の条件が満たされたときにのみ、所定のプログラムによって用いられるデータである拡張データを記憶する拡張データ記憶手段(176)を更に備える。また、情報処理装置は、所定のプログラムが記憶媒体から起動されたかコピープログラム記憶手段から起動されたかを判別する、起動形態判別手段と、所定のプログラムがコピープログラム記憶手段から起動されたと起動形態判別手段が判別したとき、装着手段に記憶媒体が装着されているか否かを判定する装着検出手段とを更に備える。また、実行手段は、装着検出手段によって記憶媒体が装着されていることが検出されたときのみ、拡張データを用いてプログラムを実行する。
【0019】
第5乃至第6の発明によれば、プログラムの起動元に応じて、プログラムの処理内容を変化させることが可能となる。
【0020】
第7の発明は、第1の発明において、情報処理装置は、他の情報処理装置と通信するための通信手段を更に備える。そして、情報処理システムは、一方の情報処理装置に装着された記憶媒体から起動された所定のプログラムと、他方の情報処理装置のコピープログラム記憶手段から起動された所定のプログラムとの間で通信手段を介して通信を行うことによって所定の処理を実行する。
【0021】
第7の発明によれば、1つの記憶媒体があれば、2台の情報処理装置間で通信を行いながら所定の情報処理を実行することが可能となる。
【0022】
第8の発明は、情報処理装置に固有のIDである本体IDを記録するためのID登録領域と所定のプログラムが記憶されているマスタープログラム記憶領域とを備えるプログラム記憶媒体を装着可能な情報処理装置であって、装着手段(201)と、本体ID記憶手段(208)と、コピープログラム記憶手段(207)と、コピー可否判定手段(204)と、コピー手段(205)と、本体ID登録手段(205)と、実行プログラム選択手段(210)と、実行手段(211)とを備える。装着手段は、記憶媒体を装着する。本体ID記憶手段には、本体IDが記憶される。コピープログラム記憶手段は、マスタープログラム記憶手段に記憶されているプログラムをコピープログラムとして記憶する。コピー可否判定手段は、装着手段に装着された記憶媒体のID登録領域に本体IDが記録されているか否かを判定する。コピー手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、マスタープログラム記憶手段に記憶されているプログラムをコピープログラム記憶手段にコピーする。本体ID登録手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、コピー手段がコピーを行うことに連動して、本体ID記憶手段から本体IDを読み出し、ID登録領域に当該本体IDを記録する。実行プログラム選択手段は、コピープログラム記憶手段にコピーされているプログラムおよび装着手段に装着されている記憶媒体のマスタープログラム記憶手段に記憶されているプログラムの中から、実行するプログラムを選択する。実行手段は、実行プログラム選択手段が選択したプログラムを実行する。
【0023】
第8の発明によれば、上記第1の発明と同様の効果を得ることができる。
【0024】
第9の発明は、情報処理装置に固有のIDである本体IDを記録するためのID登録領域と所定のプログラムが記憶されているマスタープログラム記憶領域とを備えるプログラム記憶媒体を装着可能な情報処理装置のコンピュータに実行させる情報処理プログラムであって、コンピュータを、コピー可否判定手段と、コピー手段と、本体ID登録手段と、実行プログラム選択手段と、実行手段として機能させる。コピー可否判定手段は、装着されている記憶媒体のID登録領域に本体IDが記録されているか否かを判定する。コピー手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、マスタープログラム記憶領域に記憶されているプログラムを情報処理装置に内蔵されている記憶手段にコピーする。本体ID登録手段は、コピー可否判定手段が本体IDが記録されていないと判定したとき、コピー手段がコピーを実行することに連動して、情報処理装置の本体IDをID登録領域に記録する。実行プログラム選択手段は、情報処理装置に内蔵されている記憶手段にコピーされているプログラム、および、装着されている記憶媒体のマスタープログラム記憶手段に記憶されているプログラムの中から、実行するプログラムを選択する。実行手段は、実行プログラム選択手段が選択したプログラムを実行する。
【0025】
第9の発明によれば、第1の発明と同様の効果を得ることができる。
【0026】
第10の発明は、所定のプログラムを記憶したプログラム記憶媒体を装着可能であり、かつ、当該所定のプログラムをコピー可能な情報処理装置のコンピュータに実行させる情報処理プログラムであって、コンピュータを、起動形態判別手段と、実行手段として機能させる。起動形態判別手段は、記憶媒体から所定のプログラムが起動されたか、コピーされた所定のプログラムが起動されたかを判別する。実行手段は、起動形態判別手段の判別結果に応じて異なる処理を実行する。
【0027】
第10の発明によれば、上記第5の発明と同様の効果を得ることができる。
【発明の効果】
【0028】
本発明によれば、情報処理装置への無制限なコピーを制限しつつ、コピー後の記憶媒体内のプログラム、および、コピーされたプログラムの選択的な起動、実行を可能としている。これにより、ユーザの利便性を高めることが可能となる。
【図面の簡単な説明】
【0029】
【図1】本発明の実施形態に係るシステムの概略を示す図
【図2】本発明の実施形態に係る記憶媒体および情報処理装置の機能ブロック図
【図3】本発明の実施形態に係る携帯型ゲーム装置10の外観図
【図4】本発明の実施形態に係る携帯型ゲーム装置10の斜視図
【図5】本発明の実施形態に係る携帯型ゲーム装置10のブロック図
【図6】本実施形態において想定するゲームの画面の一例
【図7】本実施形態において想定するゲームの画面の一例
【図8】図5のROM17aのメモリ空間を図解的に示したメモリマップ
【図9】図5のワンタイムROM17cのメモリ空間を図解的に示したメモリマップ
【図10】図5の不揮発メモリ37のメモリ空間を図解的に示したメモリマップ
【図11】図5のRAM24のメモリ空間を図解的に示したメモリマップ
【図12】本発明の実施形態に係る処理を示すフローチャート
【図13】図12のステップS2で示したカードチェック処理の詳細を示したフローチャート
【図14】図12のステップS4で示したコピー処理の詳細を示したフローチャート
【図15】図12のステップS5で示した起動処理の詳細を示したフローチャート
【図16】図15のステップS34で示した本体処理の詳細を示したフローチャート
【図17】図15のステップS36で示したカード処理の詳細を示したフローチャート
【図18】図15のステップS38で示した設定処理の詳細を示したフローチャート
【図19】図18のステップS68で示したID登録処理の詳細を示したフローチャート
【図20】図18のステップS70で示した削除処理の詳細を示したフローチャート
【図21】図16のステップS47,および図17のステップS53で示したゲーム処理の詳細を示したフローチャート
【発明を実施するための形態】
【0030】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0031】
図1は、本発明の一実施形態に係るシステムの概略を示す図である。図1では、不揮発メモリおよびコネクタを有する情報処理装置200に、例えばゲームプログラム(以下、ゲームPGと呼ぶ)が記憶されている記憶媒体100a〜100cのいずれかを装着することが可能である。そして、装着された記憶媒体100からゲームPGを読み込み、実行することができる。また、記憶媒体100のゲームPGを情報処理装置200の不揮発メモリにコピーすることが可能である。更に、当該不揮発メモリには、複数のゲームPGをコピーすることが可能である。つまり、異なるゲームPGが記憶されている記憶媒体100a〜100cを個別に装着し、それぞれからゲームPGを不揮発メモリにコピー可能である。この際、一旦コピーが行われた記憶媒体100については、他の情報処理装置200にコピーできないような処理が行われる。このようにしてコピーされたゲームPGは、記憶媒体100が装着されていなくても、不揮発メモリから起動して実行することが可能である。更に、上記のようなコピーを行った後の記憶媒体100(換言すれば、他の情報処理装置200にコピーできないような処理が行われた記憶媒体100)を装着した場合であっても、不揮発メモリからゲームPGを起動するのではなく、当該記憶媒体100内のゲームPGを直接起動して実行することも可能である。
【0032】
図2は、本発明の一実施形態に係る記憶媒体100および情報処理装置200を示した機能ブロック図である。記憶媒体100は、ゲームPGが記憶されている媒体である。また、記憶媒体100には、ID登録領域101が含まれる。当該ID登録領域101は、一度しかデータを書き込むことができない領域である。例えば、ヒューズタイプのワンタイムROMで実現される。初期状態(出荷時)では、何も書き込まれていない状態である。そして、ゲームPGがコピーされる際に、当該ゲームPGをコピーする情報処理装置200の本体IDが当該ID登録領域101に書き込まれる。
【0033】
情報処理装置200は、装着部201、装着検出部202、コピー部203、記憶部206、情報処理部209、操作部212、実行結果出力部213で構成されている。装着部201は、記憶媒体100を装着するためのコネクタやスロットである。装着検出部202は、装着部201に記憶媒体100が装着されたことを検出する。また、装着されていることを示す信号を可否判定部204や情報処理部209へ出力する。
【0034】
コピー部203は、記憶媒体100から情報処理装置200にコピーする機能を有している。コピー部203には、可否判定部204およびコピー処理部205が含まれる。可否判定部204は、ID登録領域101にアクセスし、装着された記憶媒体100がコピー可能か否かを判定する機能を有する。コピー処理部205は、可否判断部204の判定結果に基づき、装着された記憶媒体100から情報処理装置200にゲームPGをコピーする機能を有している。
【0035】
記憶部206は、ゲームPG記憶部207と本体ID記憶部208を含む。ゲームPG記憶部207は、上記コピー処理部205によってコピーされるゲームPGを記憶するための領域である。当該ゲームPG記憶部207は、読み書き可能な不揮発性のメモリで構成されている。例えば、フラッシュメモリが、ゲームPG記憶部207に該当する。
【0036】
本体ID記憶部208は、情報処理装置200本体に固有のIDである本体IDを記憶している。本体ID記憶部208は、読出ししかできないメモリ、例えばROMで構成される。
【0037】
情報処理部209は、ゲーム選択部210と、ゲーム実行部211を含む。ゲーム選択部210は、コピーされたゲームPGや装着部201に装着されている記憶媒体100に記憶されているゲームPGの情報を取得し、ゲームの選択画面を実行結果出力部213を介して画面に表示する。そして、ユーザが操作部212を介して入力した操作信号等に基づき、装着された記憶媒体100、および、ゲームPG記憶部207に記憶されたゲーム(コピーされたゲーム)の中から、起動するゲームを選択する。そして、その選択結果を、ゲーム実行部211に出力する。
【0038】
ゲーム実行部211は、ゲーム選択部210によって選択されたゲームを、記憶媒体100またはゲームPG記憶部207から読み込み、実行する。そして、実行結果(ゲーム画面や音声等)を実行結果出力部213に出力する。操作部212は、ユーザがゲームの選択指示を出したり、ゲーム実行部211が実行するゲームの操作を行うための機能を有する。実行結果出力部213は、ゲーム実行部211の実行結果を所定の画面やスピーカ等に出力するため機能を有する。
【0039】
次に、上記の構成を有する本実施形態のシステムの動作概要を説明する。まず、装着部201に記憶媒体100が装着される。これに応じて、装着検出部202は、記憶媒体100が装着されたことを検出し、可否判定部204に装着されたことを示す信号を出力する。可否判定部204は、当該信号を受けると、記憶媒体100に記憶されているゲームがコピー可能であるか否かを判定する。具体的には、ID登録領域101にアクセスし、当該領域に書込が可能であるか否かを判定する。つまり、ID登録領域101が書込不可であれば、何らかの本体IDが登録されている、すなわち、その記憶媒体100はコピー済みであると判定し、ID登録領域101が書込可能であれば、まだ何も書き込まれていない状態、すなわち、未コピーの記憶媒体100であると判定することになる。そして、可否判定部204は、ID登録領域101が書込不可のときは、コピー不可の旨の判定結果をコピー処理部205に出力する。一方、ID登録領域101が書込可能であれば、コピー可能の旨の判定結果をコピー処理部205に出力する。
【0040】
コピー処理部205は、可否判定部204からの判定結果がコピー可能の旨であれば、記憶媒体100に記憶されているゲームPGをコピーする処理を行う。具体的には、当該ゲームPGを記憶媒体100から読出し、ゲームPG記憶部207にコピーする。更に、本体ID記憶部208から本体IDを読出し、ID登録領域101にコピーする。上述のように、ID登録領域101はワンタイムROMで構成されているため、このコピー処理で本体IDが書き込まれた以降は、書込不可となる。これにより、一旦コピーを行うと、その記憶媒体100を使ったコピー処理はできなくなる。
【0041】
情報処理部209は、ゲームPGを起動して、所定のゲーム処理を実行する。記憶媒体100が装着されていないときは、上記のようにしてコピーされた結果、ゲームPG記憶部207に記憶されているゲームPGから、所定のゲームPGを選択して起動する。一方、記憶媒体100が装着されているときは、ゲームPG記憶部207に記憶されているゲームPGおよび装着されている記憶媒体100に記憶されているゲームの中から、所定のゲームPGを選択して起動する。
【0042】
情報処理部209は、ゲーム選択部210およびゲーム実行部211を含んでいる。ゲーム選択部210は、記憶媒体100が装着されている旨の信号を装着検出部202から受けていないときは、ゲームPG記憶部207からゲームの情報を取得し、選択リストを生成して画面に表示する。一方、記憶媒体100が装着されてる旨の信号を装着検出部202から受けているときは、ゲームPG記憶部207に記憶されているゲームPGに加え、記憶媒体100からもゲーム情報を読み込み、選択リストを生成して画面に表示する。ユーザは、操作部212を介して、当該選択リストから起動したいゲームを選択する。当該選択結果がゲーム実行部211に出力される。ゲーム実行部211は、選択結果に基づいて、ゲームPGをゲームPG記憶部207あるいは記憶媒体100から読出し、図示しないメモリに展開して実行する。
【0043】
このように、本実施形態のシステムでは、記憶媒体から情報処理装置本体へのコピー回数を制限しつつ、コピー後の記憶媒体内のゲームPG、および、コピーされたゲームPGの選択的な起動、実行を可能としている。
【0044】
次に、上記情報処理装置200の一例として、携帯型ゲーム装置10を例に挙げて、本発明の処理の具体例を説明する。図3は、当該携帯型ゲーム装置10の外観図である。図4は、このゲーム装置10の斜視図である。図3において、携帯型ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は上側ハウジング13aと下側ハウジング13bとによって構成されており、第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。第1のLCD11および第2のLCD12の解像度はいずれも256dot×192dotである。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【0045】
上側ハウジング13aには、後述する1対のスピーカ(図3の30a、30b)からの音を外部に放出するための音抜き孔18a、18bが形成されている。
【0046】
上側ハウジング13aと下側ハウジング13bとを開閉可能に接続するヒンジ部にはマイクロフォン用孔33が設けられている。
【0047】
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、およびYボタン14gが設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15が装着されている。下側ハウジング13bには、電源スイッチ19、メモリカード17を収納するための挿入口、スティック16を収納するための挿入口が設けられている。
【0048】
タッチパネル15は、抵抗膜方式のタッチパネルである。ただし、本発明は抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。タッチパネル15は、スティック16に限らず指で操作することも可能である。本実施形態では、タッチパネル15として、第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度が一致している必要はない。
【0049】
メモリカード17は、上記記憶媒体100の具体例の一つである。メモリカード17は、ゲームプログラムを記録した記録媒体であり、下部ハウジング13bに設けられた挿入口に着脱自在に装着される。また、上述したような、ワンタイムROMを含んでいる。
【0050】
次に、図5を参照して携帯型ゲーム装置10の内部構成を説明する。
【0051】
図5において、ハウジング13に収納される電子回路基板20には、CPUコア21(図2の装着検出部202、コピー部203および情報処理部209に相当)が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24、およびLCDコントローラ31、およびワイヤレス通信部35が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。メモリカード17は、ゲームPGを記憶するROM17aと、バックアップデータを書き換え可能に記憶するRAM17bと、上述したようなワンタイムROM17cを搭載する。メモリカード17からのゲーム起動がユーザによって選択された場合は、メモリカード17のROM17aに記憶されたゲームPGはRAM24にロードされ、RAM24にロードされたゲームPGがCPUコア21によって実行される。また、ワンタイムROM17cには、上述したようなコピー処理が行われる際に、本体IDが書き込まれる。
【0052】
RAM24には、ゲームPGの他にも、CPUコア21がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。I/F回路25には、タッチパネル15、右スピーカ30a、左スピーカ30b、図3の十字スイッチ14aやAボタン14d等から成る操作スイッチ部14、およびマイクロフォン36が接続される。右スピーカ30aと左スピーカ30bは、音抜き孔18a、18bの内側にそれぞれ配置される。マイクロフォン36は、マイクロフォン用孔33の内側に配置される。
【0053】
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて、RAM24に記憶されているゲーム画像を生成するためのデータに基づいて第1のゲーム画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2のゲーム画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29はLCDコントローラ31に接続されている。
【0054】
LCDコントローラ31はレジスタ32を含む。レジスタ32はCPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1のゲーム画像を第1のLCD11に出力し、第2VRAM29に描画された第2のゲーム画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1のゲーム画像を第2のLCD12に出力し、第2VRAM29に描画された第2のゲーム画像を第1のLCD11に出力する。
【0055】
ワイヤレス通信部35は、他のゲーム装置のワイヤレス通信部との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有している。
【0056】
不揮発メモリ37は、コピーされたゲームPGを記憶するための記憶媒体である(上記ゲームPG記憶部207に相当)。例えば、フラッシュメモリ等が該当する。そして、ユーザによって、コピーされたゲームの起動が選択された場合は、当該不揮発メモリ37に記憶されたゲームPGがRAM24にロードされ、RAM24にロードされたゲームPGがCPUコア21によって実行される。
【0057】
本体IDROM38は、上述したような、ユニークなIDである本体IDが記憶されているROMであり、図2の、本体ID記憶部208に相当するものである。つまり、当該本体IDは、携帯型ゲーム装置10の製造時に予め設定されて、出荷されることになる。
【0058】
なお、本発明はゲーム装置に限らず、ハウジングで支持された押圧式のタッチパネルを備えた任意の装置に適用することができる。例えば、据え置き型ゲーム装置のコントローラや、PDA(Personal Digital Assistant)に適用することができる。また、本発明はタッチパネルの下にディスプレイが設けられていないような入力装置にも適用することができる。
【0059】
次に、上記のように構成された携帯型ゲーム装置10の動作について、以下説明する。本実施形態では、次のような処理が行われる場合を一例として想定して説明する。まず、ゲームA、Bの2つのメモリカード17があると仮定する。そして、ゲームAのメモリカード17は、まだコピーが行われていない(例えば、購入した直後の状態)。一方、ゲームBのメモリカード17は、既に携帯型ゲーム装置10にコピーされているとする。ここで、ゲームBがコピーされた携帯型ゲーム装置10は、以下に説明する携帯型ゲーム装置10の所有者とは別の所有者にかかるものであるとする。つまり、ゲームBのメモリカード17は、他人の携帯型ゲーム装置10上で既にコピーされており、そのメモリカード17を借りている状況であるとする。
【0060】
まず、上記のようなメモリカードのうち、ゲームAのメモリカード17を装着した場合の動作について説明する。ゲームAのメモリカード17が装着されると、CPUコア21は、ワンタイムROM17cにアクセスし、書込可能か否かを判定する。ゲームAは未コピーであるため、ワンタイムROM17cは書込可能である。つまり、携帯型ゲーム装置10にコピーすることが可能であると判定されることになる。その後、画面にコピーを行っても良いか否かを確認するためのメッセージが表示される。このメッセージに対して、ユーザがコピーを行う旨の回答を入力すると、CPUコア21は、コピー処理を実行する(コピー処理の自動実行)。すなわち、CPUコア21は、メモリカード17のROM17aからゲームPGを読み込み、不揮発メモリ37に記憶する処理を実行する。更に、CPUコア21aは、本体IDROM38から本体IDを読出し、ワンタイムROM17cへ書き込む。これによって、ワンタイムROM17cは、それ以降の書込が不可となる。
【0061】
コピー処理が終われば、「起動メニュー」が表示される。このメニューには、大きく3つの項目が表示される。図6は、当該起動メニューの一例である。図6に示されるメニューにおいて、1つめの項目は、不揮発メモリ37にコピーされたゲームを読み込んで起動させる「本体起動」である。2つめの項目は、現在装着されているメモリカード17、すなわちゲームAのメモリカード17からゲームを起動させるための「カード起動」である。2つめの項目は、「設定」という項目である。この「設定」という項目を選ぶと、図7に示すような「設定メニュー」に画面が切り替わる。「設定メニュー」では、「カードコピー」「ID登録」「ゲーム削除」という、3つの項目が表示される。
【0062】
「カードコピー」は、手動でゲームをコピー、あるいは再コピーするための項目である。すなわち、本実施形態では、上述のように、未コピーのメモリカード17が装着されると、コピー処理が自動実行される。このときに表示される確認メッセージで、ユーザがコピーを行わない旨の回答を入力した場合であって、その後、ユーザがコピーすることを所望したと想定する。このような場合に、当該「設定」メニュー内の「カードコピー」から、ユーザの明示の指示によるゲームのコピーが可能となる。また、ゲームAを一旦コピーしたあと、後述の「ゲーム削除」によって不揮発メモリ37からゲームAを削除した場合であっても、当該「カードコピー」から、再度ゲームAをコピーすることが可能である(つまり、再コピー)。すなわち、一旦コピーした携帯型ゲーム装置と同じ携帯型ゲーム装置10であれば(つまり、ゲーム装置側とメモリカード17側の本体IDが一致する場合)、再コピーが可能である。
【0063】
「ID登録」は、ゲームPGのコピーは行わないが、上記ワンタイムROM17cへの本体IDの書込のみを行うための項目である。例えば、不揮発メモリ37の空き容量が不足しているときは、「ID登録」でメモリカード17に本体IDだけを書込んでおく。そして、後日、クリア済みのゲーム等、不要なゲームを後述の「ゲーム削除」で削除して、空き容量を確保する。そして、本体IDだけ書き込んでおいたメモリカード17から、上記「カードコピー」で、ゲームをコピーすることが可能となる。
【0064】
「ゲーム削除」は、不揮発メモリ37に記憶されているゲームPGを、例えば、空き容量を作るために削除するための項目である。
【0065】
図6の「起動メニュー」から、「本体起動」をユーザが指示すれば、不揮発メモリ37からゲームAが起動する。一方、「カード起動」をユーザが指示すると、メモリカード17からゲームAが起動する。つまり、この場合は、メモリカード17からも不揮発メモリ37からも、ゲームAの起動が可能である。
【0066】
次に、ゲームBのメモリカード17を装着した場合の動作について説明する。ゲームBのメモリカード17が装着されると、CPUコア21は、ワンタイムROM17cにアクセスし、書込可能か否かを判定する。ゲームBは他人の携帯型ゲーム装置10にコピー済であるため、ワンタイムROM17cは書込不可となっている。この場合、コピーができないと判定される。そのため、上記のようなコピー処理は実行されず、「起動メニュー」が表示されることになる。このとき、上記のようにしてゲームAがコピー済みであるとすると、「本体起動」からは、ゲームAを起動することが可能である。一方、「カード起動」をユーザが選択すると、ゲームBが起動することになる。つまり、他人の携帯型ゲーム装置10にコピー済みのメモリカード17の場合、自己の携帯型ゲーム装置10にコピーすることはできないが、メモリカード17からの起動は可能である。
【0067】
このように、本実施形態では、購入直後等の、未コピーのゲームについては、一度だけ、いずれかの携帯型ゲーム装置10にコピーを行うことが可能である。また、一度コピーを行ったゲームについては、メモリカード17から直接起動するのであれば、どの携帯型ゲーム装置10でも起動することが可能である。これにより、例えば、次のような遊び方が可能となる。まず、1枚のメモリカード17を購入し、プレイヤAの携帯型ゲーム装置10にコピーする。その後、当該コピー済みのメモリカード17をプレイヤBに貸す。そして、プレイヤAは、不揮発メモリ37からゲームを起動し、プレイヤBは、カードからゲームを起動する。その結果、プレイヤAとBとの間で同じゲームPGを使った対戦ゲームを行うことが可能となる。また、コピーの回数が1度だけに制限されるため、他の所有者にかかる携帯型ゲーム装置10へ無制限にコピーが行われることを防ぐことができ、ひいては、市場機会の損失を防ぐことも可能となる。
【0068】
次に、本実施形態にかかるシステムにおいて行われる処理の詳細を説明する。まず、図8〜図11を参照して、処理において用いられる主なデータについて説明する。
【0069】
図8は、メモリカード17のROM17aに記憶される主なデータを示す図である。図8において、メモリカード17のROM17aは、プログラム記憶領域172およびデータ記憶領域173で構成されているゲームPG171が記憶されている。
【0070】
プログラム記憶領域172には、ゲーム処理の実行に用いられる各種プログラムが記憶される。データ記憶領域173には、ゲーム処理の実行に用いられる各種データが記憶される。これらのデータは、基本データ174、本体起動時専用データ175、拡張データ176等で構成されている。基本データ174は、ゲーム処理において常に用いられるデータである。本体起動時専用データ175は、「本体起動」、すなわち、不揮発メモリ37からゲームが起動されたときにのみゲーム処理内で用いられるデータである、換言すれば、「カード起動」でゲームが起動されたときは、そのゲーム処理中では用いられないデータである。拡張データ176は、所定の条件を満たすときにのみ、ゲーム処理中で用いられるデータである。本実施形態では、当該所定の条件として、同じゲームがメモリカード17および不揮発メモリ37のどちらからも起動できる状態(コピーしたゲームのメモリカード17を装着している状態)で、「本体起動」によってゲームを起動した場合を想定する。
【0071】
図9は、メモリカード17のワンタイムROM17cに記憶されるデータを示す図である。ワンタイムROM17cは、一度のみデータの書込が可能な、ID登録領域177を含む。当該領域には、本体IDが記憶される。
【0072】
図10は、携帯型ゲーム装置10の不揮発メモリ37に記憶される主なデータを示す図である。図10において、不揮発メモリ37は、ゲームプログラム記憶領域371、起動履歴373、および、セーブデータ374を含む。ゲームプログラム記憶領域371は、メモリカード17からコピーされるゲームPG171が記憶される領域であり、複数のゲームPG171を記憶可能である。その構成は、上記メモリカード17のゲームPG171と同じであるため、説明は省略する。起動履歴373は、上記ゲームプログラム記憶領域371に記憶されているゲームPGについて、どのゲームがいつ起動されたか等、起動された履歴を記憶するための領域である。セーブデータ374は、各ゲーム処理において生成されるセーブデータを記憶するための領域である。
【0073】
図11は、携帯型ゲーム装置10のRAM24に記憶される主なデータを示す図である。RAM24は、起動識別フラグ241、コピーフラグ242、ゲームPG243を含む。起動識別フラグ241は、現在実行中であるゲームが、「本体起動」で起動されたか、「カード起動」で起動されたかを示すためのフラグである。本実施形態では、「本体起動」のときは、当該フラグには「本体」という値が設定され、「カード起動」のときは、当該フラグに「カード」という値が設定される。コピーフラグ242は、装着されているメモリカード17が、コピー可能であるか否かを示すためのフラグである。本実施形態では、「OK」または「NG」の値が設定されるものとする。ゲームPG243は、上記不揮発メモリ37あるいはメモリカード17に記憶されたものが、ゲーム処理に際してRAM24にコピーされたものである。
【0074】
次に、携帯型ゲーム装置10において実行される処理の流れを図12〜図21を用いて説明する。図12は、携帯型ゲーム装置10において実行される処理の流れを示すフローチャートである。携帯型ゲーム装置10の電源が投入されると、携帯型ゲーム装置10のCPUコア21は、IPLを起動する(ステップS1)。すなわち、CPUコア21は、図示しないブートROMに記憶されている起動プログラムを実行し、RAM24等の各ユニットを初期化する。
【0075】
次に、CPUコア21は、メモリカード17がコピー可能か否かをチェックするための、カードチェック処理を実行する(ステップS2)。図13は、上記ステップS2で示したカードチェック処理の詳細を示すフローチャートである。図13において、まず、CPUコア21は、コネクタ23にメモリカード17が装着されているか否かを判定する(ステップS11)。装着されていないときは(ステップS11でNO)、CPUコア21は、コピーフラグ242を「NG」に設定し(ステップS15)、カードチェック処理を終了する。一方、装着されているときは(ステップS11でYES)、続いて、ID登録領域177にアクセスし、書込み可能であるか否かを判定する(ステップS12)。当該判定の結果、書込可能と判定したときは(ステップS12でYES)、コピーフラグ242を「OK」に設定する(ステップS14)。一方、書込が不可能と判定したときは、CPUコア21は、メモリカード17のID登録領域177に登録されている本体ID(以下、登録IDと呼ぶ)を読出し、本体IDROM38に記憶されている本体IDと一致するか否かを判定する(ステップS13)。その結果、一致すれば、上記ステップS14の処理でコピーフラグ242を「OK」に設定する。一致しなければ、上記ステップS15において、コピーフラグ242に「NG」を設定する。つまり、メモリカード17に登録IDが登録されていないとき、または、メモリカード17に登録IDは登録されているが、そのIDが当該メモリカード17を装着している携帯型ゲーム装置10の本体IDと一致するときにのみ、コピーフラグ242が「OK」に設定される。以上で、カードチェック処理が終了する。
【0076】
図12に戻り、カードチェック処理が終了すれば、次に、CPUコア21は、コピーフラグ242に基づいて、装着されているメモリカード17がコピー可能であるか否かを判定する(ステップS3)。具体的には、コピーフラグ242が「OK」と設定されていれば、CPUコア21は、コピー可能と判定する。コピーフラグ242が「NG」と設定されていれば、CPUコア21は、コピー不可能と判定する。
【0077】
上記判定の結果、コピー可能と判定されたときは、CPUコア21は、コピー処理を実行する(ステップS4)。すなわち、未コピーのカードが装着されているため、この場合は、自動的にコピー処理が実行されることになる。図14は、上記ステップS4で示したコピー処理の詳細を示すフローチャートである。図14において、まず、CPUコア21は、コピー処理を行っても良いか否かをユーザに問い合わせるための確認メッセージを生成して画面に表示する(ステップS21)。例えば、「ゲームをコピーします。よろしいですか(YES/NO)」等のメッセージを表示する。
【0078】
次に、CPUコア21は、当該メッセージに対するユーザの入力の受け付けを行う(ステップS22)。ユーザからの入力(例えば、所定のキー入力)が検出されれば、その入力内容に基づいて、コピー処理を行うか否かを判定する(ステップS23)。当該判定の結果、コピーを行わないと判定したときは(ステップS23でNO)、CPUコア21は、そのままコピー処理を終了する。コピーを行うと判定したときは(ステップS23でYES)、CPUコア21は、メモリカード17からゲームPG171を読出し、不揮発メモリ37のゲームプログラム記憶領域371にコピーする(ステップS24)。
【0079】
次に、ID登録領域177にアクセスし、書込可能な状態であるか否かを判定する(ステップS25)。書き込み可能な状態であれば(S25でYES)、本体IDROM38から本体IDを読出し、ID登録領域177にコピーする(ステップS26)。一方、書き込み不可な状態であれば(S25でNO)、ステップS26の処理は行わずに、コピー処理を終了する。これは、上述したような「設定メニュー」から、先にID登録だけ済ましているような場合や、再コピーする場合が該当する。
【0080】
図12に戻り、上記コピー処理の終了後、次に、CPUコア21は、処理の終了判定を行う(ステップS6)。例えば、リセットボタンが押されたか否か、等を判定する。処理終了のとき(ステップS6でYES)、本実施形態にかかる処理は終了する。一方、NOのときは、ゲームを起動するための起動処理を実行する(ステップS5)。また、ステップS3の判定で、コピー不可と判定されたときも(ステップS3でNO)、CPUコア21は、当該起動処理を実行する。
【0081】
図15は、上記ステップS5で示した起動処理の詳細を示すフローチャートである。図15において、まず、CPUコア21は、起動メニュー(図6参照)を画面に表示する(ステップS31)。次に、CPUコア21は、当該起動メニューに対するユーザの選択入力の受付を行う(ステップS32)。ユーザからの入力が検出されれば、CPUコア21は、起動メニューから「本体起動」が選択されたか否かを判定する(ステップS33)。「本体起動」が選択されていれば(ステップS33でYES)、CPUコア21は、不揮発メモリ37からゲームを起動して実行するための、本体処理を実行する(ステップS34)。
【0082】
図16は、上記ステップS34で示した本体処理の詳細を示すフローチャートである。図16において、まず、CPUコア21は、不揮発メモリ37にアクセスし、コピーされているゲームを検出する(ステップS41)。
【0083】
次に、CPUコア21は、上記検出の結果、コピーされているゲームが1つ以上あるか否かを判定する(ステップS42)。当該判定の結果、コピーされているゲームが一つもなければ(ステップS42でNO)、その旨を画面に表示して、本体処理を終了する。
【0084】
一方、コピーされているゲームがあるときは(ステップS42でYES)、コピーされているゲームの情報、例えば、ゲームのタイトルを読み出す。そして、コピーされているゲームの一覧を生成し、ゲーム選択メニューとして第1のLCD11に表示する(ステップS43)。
【0085】
次に、CPUコア21は、当該選択メニューに対するユーザの選択入力の受付を行う(ステップS44)。いずれかのゲームを選択する入力が検出されれば、CPUコア21は、起動識別フラグ241を「本体」と設定する(ステップS45)。
【0086】
続いて、CPUコア21は、選択されたゲームに対応するゲームPGを、不揮発メモリ37からRAM24に読み込む(ステップS46)。そして、CPUコア21は、RAM24に読み込まれたゲームPGの実行、すなわち、ゲーム処理を開始する(ステップS47)。その結果、第1GPU26を介して第1のLCD11にゲーム画像が表示されることによって(第2GPU27を介して第2のLCD12に表示しても良い)、ゲームが開始される。当該ゲーム処理では、起動識別フラグ241に応じて処理内容が変わるが、本処理の詳細については後述する。以上で、本体処理が終了する。
【0087】
図15に戻り、ステップS33の判定の結果、起動メニューから「本体起動」が選ばれていないと判定したときは(ステップS33でNO)、CPUコア21は、「カード起動」が選択されたか否かを判定する(ステップS35)。「カード起動」が選択されていたと判定すれば(ステップS35でYES)、CPUコア21は、メモリカード17からゲームを実行するための、カード処理を実行する(ステップS36)。この処理では、登録IDがメモリカードに記録されている/いないに関わらず、メモリカードからゲームを起動する処理が行われる。
【0088】
図17は、上記ステップS36で示したカード処理の詳細を示すフローチャートである。図17において、まず、CPUコア21は、起動識別フラグ241に「カード」を設定する(ステップS51)。
【0089】
次に、CPUコア21は、メモリカード17にアクセスし、当該メモリカード17に格納されているゲームPGをRAM24に読み込む(ステップS52)。
【0090】
そして、CPUコア21は、RAM24に読み込まれたゲームPGの実行、すなわち、ゲーム処理を開始する(ステップS53)。その結果、第1GPU26を介して第1のLCD11にゲーム画像が表示されることによって、ゲームが開始される。当該ゲーム処理は、上記ステップS47の処理と同様であり、起動識別フラグ241に応じて処理内容が変わるが、本処理の詳細については後述する。以上で、カード処理が終了する。
【0091】
図15に戻り、ステップS35の判定の結果、起動メニューから「カード起動」が選ばれていないと判定したときは(ステップS35でNO)、CPUコア21は、起動メニューから「設定」が選択されたか否かを判定する(ステップS37)。「設定」が選択されていたと判定すれば、CPUコア21は、コピー処理に関する各種処理を実行するための、設定処理を実行する(ステップS38)。
【0092】
図18は、上記ステップS38で示した設定処理の詳細を示すフローチャートである。図18において、まず、CPUコア21は、図7で示したような設定メニューを画面に表示する(ステップS61)。
【0093】
次に、CPUコア21は、当該設定メニューに対するユーザの選択入力の受付を行う(ステップS62)。
【0094】
ユーザからの入力が検出されれば、CPUコア21は、設定メニューから「カードコピー」が選択されたか否かを判定する(ステップS63)。つまり、ユーザによる明示のコピー指示(手動でのコピー処理の実行)があったか否かを判定する。これはすなわち、本体IDのみ先に登録しておいて、後でゲームのコピーを行うような場合や、上記再コピーの場合等を想定している。「カードコピー」が選択されていれば(ステップS63でYES)、CPUコア21は、コピー可能か否かをチェックしたうえで、コピー処理を行う。具体的には、CPUコア21は、まず、メモリカード17からのコピーが可能か否かをチェックするための、カードチェック処理を実行する(ステップS64)。当該カードチェック処理は、図13を用いて上述したカードチェック処理(ステップS11〜S15)と同様の処理であるため、説明は省略する。
【0095】
ステップS64のカードチェック処理が終了すれば、次に、CPUコア21は、上記ステップS3の処理と同様に、コピーフラグ242に基づいて、コピー可能であるか否かを判定する(ステップS65)。当該判定の結果、コピー可能と判定されたときは、CPUコア21は、装着されているメモリカード17からゲームをコピーするためのコピー処理を実行する(ステップS64)。当該コピー処理は、図14を用いて上述したコピー処理(ステップS21〜S26)と同様の処理であるため、説明は省略する。一方、ステップS65の判定の結果、コピーが不可であると判定したときは(ステップS65でNO)、CPUコア21は、コピーができない旨のメッセージを画面に表示して、設定処理を終了する。
【0096】
一方、上記ステップS63の判定の結果、設定メニューから「カードコピー」が選ばれていないと判定したときは(ステップS63でNO)、CPUコア21は、「ID登録」が選択されたか否かを判定する(ステップS67)。「ID登録」が選択されたと判定すれば(ステップS67でYES)、CPUコア21は、メモリカード17に本体IDを書き込むための、ID登録処理を実行する(ステップS68)。
【0097】
図19は、上記ステップS68で示したID登録処理の詳細を示すフローチャートである。図19において、まず、CPUコア21は、装着されているメモリカード17に本体IDの登録が可能であるか否かを判定する(ステップS71)。具体的には、CPUコア21は、メモリカード17のワンタイムROM17cが書き込み可能な状態であるか否かを判定することで、本体IDの登録の可否を判定する。
【0098】
当該判定の結果、本体IDの登録が可能であると判定したときは(ステップS71でYES)、次に、CPUコア21は、本体IDROM38にアクセスし、本体IDを読み出す(ステップS72)。続けて、装着されているメモリカード17のワンタイムROM17c、すなわち、ID登録領域177に、読み出した本体IDをコピーする(ステップS73)。
【0099】
一方、ステップS71の判定の結果、本体IDの登録ができないと判定したときは(ステップS71でNO)、CPUコア21は、既にIDが登録済みである旨のメッセージを画面に表示する(ステップS74)。以上で、ID登録処理は終了する。
【0100】
図18に戻り、ステップS67の判定の結果、設定メニューから「ID登録」が選ばれていないと判定したときは(ステップS67でNO)、CPUコア21は、設定メニューから「ゲーム削除」が選択されたか否かを判定する(ステップS69)。「ゲーム削除」が選択されたと判定すれば、CPUコア21は、コピーされているゲームを削除するための、ゲーム削除処理を実行する(ステップS70)。
【0101】
図20は、上記ステップS70で示したゲーム削除処理の詳細を示すフローチャートである。図20において、まず、CPUコア21は、不揮発メモリ37にアクセスし、コピーされているゲームの情報、例えば、ゲームタイトルを取得する。そして、当該取得したゲームタイトル等の情報を一覧形式にして表示できるようなリストを生成する(ステップS81)。そして、CPUコア21は、当該リストを、コピーされているゲーム一覧として、画面に表示する(ステップS82)。
【0102】
次に、CPUコア21は、当該リストに対するユーザの選択入力(つまり、ユーザが削除したいゲームの選択)の受付を行う(ステップS83)。いずれかのゲームを選択する入力が検出されれば、CPUコア21は、選択されたゲームに対応するゲームPGを、不揮発メモリ37のゲームプログラム記憶領域371から削除する(ステップS84)。以上で、ゲーム削除処理は終了する。
【0103】
図18に戻り、ステップS69の判定の結果、「ゲーム削除」が選択されていないと判定したときは(ステップS69でNO)、CPUコア21は、そのまま設定処理を終了する。更に図15に戻り、ステップS38の設定処理が終了すれば、起動処理も終了する。また、ステップS37の判定の結果、起動メニューから「設定」が選択されていないと判定したときも、起動処理が終了する。
【0104】
図12に戻り、上記ステップS5の起動処理の終了後、次に、CPUコア21は、上述のように、処理の終了判定を行う(ステップS6)。そして、終了のときは(ステップS6でYES)、本実施形態にかかる処理が終了する。
【0105】
次に、上記ステップS47、およびステップS53にかかるゲーム処理について説明する。この処理では、ゲームを起動したのがメモリカード17からであるか、本体にコピーものからであるかに応じて、ゲーム中で使用されるデータに変化をもたせている。図21は、上記ステップS47、およびステップS53で示すゲーム処理の詳細を示すフローチャートである。図21において、まず、CPUコア21は、起動識別フラグ241が「本体」であるか否かを判定する(ステップS91)。つまり、実行中のゲームがメモリカード17から起動されたものであるか、本体にコピーされたものを起動したものであるかの判定を行う。
【0106】
当該判定の結果、起動識別フラグが「本体」ではないとき、つまり、メモリカード17からゲームが起動されていたときは(ステップS91でNO)、データ記憶領域173から読み込まれ、RAM24に展開されたデータのうち、基本データ174のみをゲーム処理中で使用するような設定を行う(ステップS92)。なお、基本データ174のみを、メモリカード17cからRAM24に読み込むようにしても良い。
【0107】
一方、起動識別フラグ241が「本体」であるとき、つまり、コピーされたゲームが起動されているときは(ステップS91でYES)、続いて、CPUコア21は、当該起動されたゲームと同じゲームのメモリカード17cが装着されているか否かを判定する(ステップS93)。当該判定の結果、メモリカード17が装着されていないと判定したときは(ステップS93でNO)、CPUコア21は、基本データ174および本体起動時専用データ175をゲーム処理中で使用するような設定を行う(ステップS94)。
【0108】
一方、本体起動したゲームと同じゲームのメモリカード17が装着されていると判定したときは(ステップS93でYES)、CPUコア21は、本体IDROM38に記憶されている本体IDと、装着されているメモリカード17に記憶されている登録IDとが一致するか否かを判定する(ステップS95)。当該判定の結果、本体IDと登録IDが一致しないとき(ステップS95でNO)、例えば、友達のメモリカード17を借りて装着しているような場合は、上記ステップS94の処理を行う。すなわち、基本データ174および本体起動時専用データ175をゲーム処理中で使用するような設定を行う。一方、本体IDと登録IDが一致するときは(ステップS95でYES)、基本データ174、本体起動時専用データ175に加え、更に、拡張データ176もゲーム処理で使用するような設定を行う(ステップS97)。
【0109】
次に、上記のようにして使用の設定が行われた各データを用いて、所定のゲーム処理が行われる。これにより、メモリカード17からゲームをしたときは、基本データ174のみを用いたゲーム処理が実行される。また、本体起動でゲームを起動したときは、基本データ174に加え、本体起動時専用データ175を用いたゲーム処理が実行される。更に、本体起動でゲームを起動した際に、当該起動したゲームのコピーに用いたメモリカードが装着されていれば、基本データ174、本体起動時専用データ175に加えて、拡張データ176を用いたゲーム処理が実行されることになる。以上で、上記ステップS47、およびステップS53にかかるゲーム処理が終了する。
【0110】
このように、本実施形態では、ワンタイムROMを用いて、コピーできる回数を1回に制限しつつ、メモリカード17からゲームをコピーした後も、当該コピーに使用したメモリカード17からゲームを起動することができる。つまり、ゲーム装置本体にゲームをコピーした後も、メモリカード17単体でゲームを起動することが可能である。また、メモリカード17からのプログラムの起動については、当該メモリカード17に本体IDが記録されている/いないに関わらず可能である。これにより、従来のように一旦コピーした媒体は使えなくなるような場合に比べ、メモリカード17の使い勝手を向上させ、ユーザの利便性を高めることができる。例えば、コピー済みのメモリカード17を兄弟に貸し、同じゲームPGを実行することで、2台の携帯型ゲーム装置10の間で通信対戦等を行うことが可能となる。つまり、1枚のメモリカード17があれば2人対戦を実行することが可能となる。
【0111】
また、上記のように、本体起動時専用データ175を用意しておくことで、カードからの起動時とコピーしての起動時とで、ゲーム内容に差異を設けることが可能となる。これにより、例えば、ゲームをコピーして楽しむという運用を促進することが可能となる。
【0112】
また、コピーしたゲームのメモリカード17については、その後は「本体起動」で起動することが一般的であり、そのメモリカード17は装着しないと考えられる。しかし、上記のような、拡張データ176を設けることで、例えば、たまたま、そのゲームのコピーに使用したメモリカード17を装着している状態で本体起動を行った場合に、普段は出現しないような「隠しキャラクタ」や「隠しアイテム」がゲーム中に出現するというような処理を行うことができる。これにより、ゲームの興趣を高めることが可能となる。
【0113】
なお、上述した実施形態においては、コピーしたゲームを起動する際に、コピーされたゲームのリストを表示し、ユーザに選択させるようにしていた。これに限らず、起動したいゲームを予めユーザが設定できるようにしてもよい。例えば、上記ステップS61で表示される設定メニュー(図7参照)に、「優先起動」という項目を設け、優先的に起動するゲームをユーザが登録できるようにしてもよい。そして、「本体起動」をユーザが行った際は、選択画面は表示せずに、「優先起動」で登録されたゲームを起動するようにしてもよい。また、コピーされているゲームが1つだけのときも、選択画面を表示せずに当該ゲームが起動するようにしてもよい。更に、「本体起動」と「カード起動」のいずれを優先させるかについて設定できるようにしてもよい。例えば、メモリカードが装着されているときは、「起動メニュー」は表示せずに、常にメモリカード17からゲームが起動されるようにしてもよい。いずれの場合も、起動媒体の選択にかかる操作を省略することができ、ユーザの利便性を高めることが可能となる。
【0114】
また、本体IDについて、上述の実施形態では、ゲーム装置本体毎にユニークなIDを割り振り、本体IDROM38に記憶した状態で出荷するようにしている。これに限らず、携帯型ゲーム装置10が初めて起動された際に本体IDを乱数を用いて生成し、本体IDROM38ではなく、不揮発メモリ37に記憶するようにしてもよい。本体IDの桁数を多く設定するようにすれば、ランダムで生成しても、他のゲーム装置と重複する可能性は低くなる。このように、本体IDを初回起動時に生成するようにすれば、上記のような、製造時に固有に割り当てる本体IDの管理を行わずにすむ。
【0115】
更に、上記ステップS2、S3の処理におけるコピーの可否判定について、ワンタイムROMの特性を利用した処理ではなく、ソフト的な処理で判定するようにしてもよい。例えば、ワンタイムROMではなく、メモリカード17のRAM17b上にID登録領域177を設けておく。そして、出荷時は、いわゆる「バージンコード」に相当するものとして、当該領域に、オール「f」となる値を設定しておく(例えば、8桁のデータである場合は、「ffffffff」)。そして、上記ステップS12の判定で、ID登録領域177のデータがオール「f」か否かを判定する。そして、オール「f」であれば、コピーフラグ242を「OK」に設定し、オール「f」でないときは、コピーフラグ242を「NG」に設定するようにしても良い。
【0116】
また、本体IDの登録に関して、上述した実施形態では、例えばステップS21〜S23のコピーを行うか否かの問いあわせにおいて、ユーザがコピーを行わないことを選択したときは、本体IDの登録も行わずにコピー処理を終了していた。しかしながら、ユーザがコピーを行わないことを選択したときでも、本体IDのみはメモリカード17に登録しておくようにしてもよい。
【0117】
また、ユーザがコピーを行わないことを一旦選択したときは、それ以降は、コピー処理を自動的に起動しないようにしてもよい。つまり、一旦ユーザがコピーを行わないことを選択すれば、図12のステップS2,S3、S4の処理は行わないようにしてもよい。例えば、上記コピー処理において、ステップS21の確認メッセージに対して、ユーザがコピーを行わないことを選択したときに、不揮発メモリ37の起動履歴373に、当該メモリカード17については、一度コピーを行うか否かの問い合わせを行った旨の情報を記憶しておく。そして、上記ステップS1のIPLの処理において、CPUコア21が当該起動履歴373にアクセスし、ユーザがコピーを行わないことを一旦選択したか否かを判定するようにすればよい。なお、このような場合に、ユーザがコピー処理を行いたいときは、上記「設定メニュー」から「カードコピー」を選択することでコピーすることが可能となる。
【0118】
更に、上述した実施形態では、購入直後等の、未コピーのメモリカード17が装着されたとき、自動的にコピー処理が実行されるようにしていた。これに限らず、コピー処理については、自動的に実行させずに、常にユーザの明示の指示によって(つまり手動で)実行するようにしても良い。上記自動的にコピー処理が実行される際も、コピーの確認メッセージは表示しているが、これによって、誤ってゲームがコピーされてしまうことをより確実に防ぐことが可能となる。
【0119】
また、メモリカード17のID登録領域17cを複数、例えば3つ設けて、3台までは別々の携帯型ゲーム装置10にコピーできるようにしてもよい。これにより、ユーザの利便性を高めることができる。
【0120】
また、上記ゲームPGのコピーについても、単なるコピーではなく、インストール(す
なわち、実行のためのなんらかの設定を伴うようなコピー)を行うようにしてもよい。
【0121】
また、上述の実施形態では、情報処理の一例としてゲーム処理を挙げていたが、これに限らず、他の情報処理に適用してもよい。
【産業上の利用可能性】
【0122】
本発明にかかる情報処理システム、情報処理装置、情報処理プログラムは、記憶媒体に記憶されたプログラムをコピーするときのユーザの利便性を高めることができ、携帯型ゲーム装置やPDA、パーソナルコンピュータ等に有用である。
【符号の説明】
【0123】
10 携帯ゲーム装置
11 第1LCD
12 第2LCD
13 ハウジング
14 操作スイッチ部
15 タッチパネル
16 スティック
17 メモリカード
20 電子回路基板
21 CPUコア
22 バス
23 コネクタ
24 RAM
25 インターフェース回路
26 第1GPU
27 第2GPU
28 第1VRAM
29 第2VRAM
30 スピーカ
31 LCDコントローラ
32 レジスタ
35 ワイヤレス通信部
36 マイクロフォン
37 不揮発メモリ
38 本体IDROM

【特許請求の範囲】
【請求項1】
プログラム記憶媒体と当該記憶媒体を装着可能な情報処理装置本体を含む情報処理システムであって、
前記プログラム記憶媒体は、
所定のプログラムを記憶するためのマスタープログラム記憶手段と、
前記情報処理装置に固有のIDである本体IDを記録するためのID登録領域とを備え、
前記情報処理装置は、
前記記憶媒体を装着可能な装着手段と、
前記本体IDが記憶されている本体ID記憶手段と、
前記マスタープログラム記憶手段に記憶されているプログラムをコピープログラムとして記憶するためのコピープログラム記憶手段と、
前記装着手段に装着された前記記憶媒体のID登録領域に本体IDが記録されているか否かを判定するコピー可否判定手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記マスタープログラム記憶手段に記憶されているプログラムを前記コピープログラム記憶手段にコピーするコピー手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記コピー手段が前記コピーを実行することに連動して、前記本体ID記憶手段から本体IDを読み出し、前記ID登録領域に当該本体IDを記録する本体ID登録手段と、
前記コピープログラム記憶手段にコピーされているプログラムおよび前記装着手段に装着されている前記記憶媒体のマスタープログラム記憶手段に記憶されているプログラムの中から、実行するプログラムを選択するための実行プログラム選択手段と、
前記実行プログラム選択手段が選択したプログラムを実行する実行手段とを備える、情報処理システム。
【請求項2】
前記ID登録領域は、前記本体IDを1回のみ記録可能であることを特徴とする、請求項1に記載の情報処理システム。
【請求項3】
前記情報処理装置は、当該ID登録領域に記録されている本体IDと前記本体ID記憶手段に記憶されている本体IDとが一致しているか否かを判定するID一致判定手段を更に備え、
前記コピー手段は、前記ID一致判定手段が前記本体IDが一致していると判定したときに、前記マスタープログラム記憶手段に記憶されているプログラムを前記コピープログラム記憶手段にコピーする、請求項1に記載の情報処理システム。
【請求項4】
前記本体ID登録手段は、前記コピー可否判定手段が本体IDが登録されていないと判定したとき、前記コピー手段が前記コピーを行うか否かにかかわらず、前記本体ID記憶手段から本体IDを読み出して、前記ID登録領域に記録可能とする、請求項1に記載の情報処理システム。
【請求項5】
前記記憶媒体は、
前記コピープログラム記憶手段にコピーされているプログラムが起動されたときにのみ、当該プログラムによる情報処理に用いられるデータである専用データを記憶する専用データ記憶手段を更に備え、
前記情報処理装置は、前記所定のプログラムが前記記憶媒体から起動されたか前記コピープログラム記憶手段から起動されたかを判別する、起動形態判別手段を更に備え、
前記実行手段は、前記コピープログラム記憶手段から起動されたと前記起動形態判別手段が判別したときのみ、前記専用データを用いてプログラムを実行する、請求項1に記載の情報処理システム。
【請求項6】
前記記憶媒体は、所定の条件が満たされたときにのみ、前記所定のプログラムによって用いられるデータである拡張データを記憶する拡張データ記憶手段を更に備え、
前記情報処理装置は、
前記所定のプログラムが前記記憶媒体から起動されたか前記コピープログラム記憶手段から起動されたかを判別する、起動形態判別手段と、
前記所定のプログラムが前記コピープログラム記憶手段から起動されたと前記起動形態判別手段が判別したとき、前記装着手段に前記記憶媒体が装着されているか否かを判定する装着検出手段とを更に備え、
前記実行手段は、前記装着検出手段によって前記記憶媒体が装着されていることが検出されたときのみ、前記拡張データを用いてプログラムを実行する、請求項1に記載の情報処理システム。
【請求項7】
前記情報処理装置は、他の情報処理装置と通信するための通信手段を更に備え、
一方の前記情報処理装置に装着された前記記憶媒体から起動された前記所定のプログラムと、他方の前記情報処理装置の前記コピープログラム記憶手段から起動された前記所定のプログラムとの間で前記通信手段を介して通信を行うことによって所定の処理を実行することを特徴とする、請求項1に記載の情報処理システム。
【請求項8】
情報処理装置に固有のIDである本体IDを記録するためのID登録領域と所定のプログラムが記憶されているマスタープログラム記憶領域とを備えるプログラム記憶媒体を装着可能な情報処理装置であって、
前記記憶媒体を装着可能な装着手段と、
前記本体IDが記憶されている本体ID記憶手段と、
前記マスタープログラム記憶領域に記憶されているプログラムが記憶されるコピープログラム記憶手段と、
前記装着手段に装着された前記記憶媒体のID登録領域に本体IDが記録されているか否かを判定するコピー可否判定手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記マスタープログラム記憶領域に記憶されているプログラムを前記コピープログラム記憶手段にコピーするコピー手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記コピー手段が前記コピーを実行することに連動して、前記本体ID記憶手段から本体IDを読み出し、前記ID登録領域に当該本体IDを記録する本体ID登録手段と、
前記コピープログラム記憶手段にコピーされているプログラムおよび前記装着手段に装着された前記記憶媒体に記憶されているプログラムの中から、実行するプログラムを選択するための実行プログラム選択手段と、
前記実行プログラム選択手段が選択したプログラムを実行する実行手段とを備える、情報処理装置。
【請求項9】
情報処理装置に固有のIDである本体IDを記録するためのID登録領域と所定のプログラムが記憶されているマスタープログラム記憶領域とを備えるプログラム記憶媒体を装着可能な情報処理装置のコンピュータに実行させる情報処理プログラムであって、
前記コンピュータを、
装着されている前記記憶媒体のID登録領域に本体IDが記録されているか否かを判定するコピー可否判定手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記マスタープログラム記憶領域に記憶されているプログラムを前記情報処理装置に内蔵されている記憶手段にコピーするコピー手段と、
前記コピー可否判定手段が本体IDが記録されていないと判定したとき、前記コピー手段が前記コピーを実行することに連動して、前記情報処理装置の本体IDを前記ID登録領域に記録する本体ID登録手段と、
前記情報処理装置に内蔵されている記憶手段にコピーされているプログラム、および、装着されている前記記憶媒体のマスタープログラム記憶手段に記憶されているプログラムの中から、実行するプログラムを選択するための実行プログラム選択手段と、
前記実行プログラム選択手段が選択したプログラムを実行する実行手段として機能させる、情報処理プログラム。
【請求項10】
所定のプログラムを記憶したプログラム記憶媒体を装着可能であり、かつ、当該所定のプログラムをコピー可能な情報処理装置のコンピュータに実行させる情報処理プログラムであって、
前記コンピュータを、
前記記憶媒体から前記所定のプログラムが起動されたか、前記コピーされた所定のプログラムが起動されたかを判別する起動形態判別手段と、
前記起動形態判別手段の判別結果に応じて異なる処理を実行する実行手段として機能させる、情報処理プログラム。

【図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

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2012−160195(P2012−160195A)
【公開日】平成24年8月23日(2012.8.23)
【国際特許分類】
【出願番号】特願2012−60831(P2012−60831)
【出願日】平成24年3月16日(2012.3.16)
【分割の表示】特願2007−156604(P2007−156604)の分割
【原出願日】平成19年6月13日(2007.6.13)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】