(57)【特許請求の範囲】
【請求項１】
アプリケーションプログラムを示す情報をメニューに表示して、起動するアプリケーションプログラムの選択を受け付けるエンタテインメント装置であって、
アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報とを有するアプリケーションモジュールが記憶された記憶媒体と、
前記エンタテインメント装置の起動時において、
前記エンタテインメント装置に接続されたハードウェアの構成を取得し、前記記憶媒体に記憶されている前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうかを判定し、満たすと判定したアプリケーションモジュールに係るアプリケーションプログラムを示す情報をメニューの表示対象とする制御部とを備えることを特徴とするエンタテインメント装置。
【請求項２】
前記アプリケーションモジュールの各々は、
さらに、対応するアプリケーションプログラムの名称を示すアプリケーション名と、当該アプリケーションプログラムのバージョン情報とを有し、
前記制御部は、
さらに、前記記憶媒体に、同一のアプリケーション名を有するアプリケーションモジュールが複数記憶されているか否かを判定し、記憶されていると判定した場合、それらのアプリケーションモジュールの有するバージョン情報を基に、最も新しいバージョンのアプリケーションプログラムを示す情報をメニューの表示対象とすること
を特徴とする請求項１記載のエンタテインメント装置。
【請求項３】
前記アプリケーションモジュールの各々は、
さらに、対応するアプリケーションプログラムをメニューに表示するための情報であるメニュー情報を有し、
前記制御部は、
前記エンタテインメント装置に接続されたハードウェアの構成を取得し、前記記憶媒体に記憶されている前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうかを判定し、満たすと判定したアプリケーションモジュールの有するメニュー情報をメニューの表示対象とすること
を特徴とする請求項１記載のエンタテインメント装置。
【請求項４】
メニュー情報テーブルの有する情報を用いてアプリケーションプログラムを示す情報をメニューに表示し、起動するアプリケーションプログラムの選択を受け付けるエンタテインメント装置であって、
アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報と、当該アプリケーションプログラムをメニューに表示するための情報であるメニュー情報とを有するアプリケーションモジュールが記憶された記憶媒体と、
前記エンタテインメント装置の起動時において、
前記エンタテインメント装置に接続されたハードウェアの構成を取得し、前記記憶媒体に記憶された前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうかを判定し、満たすと判定したアプリケーションモジュールの有するメニュー情報を前記メニュー情報テーブルに登録する制御部を備えること
を特徴とするエンタテインメント装置。
【請求項５】
電子機器の起動時において、メニューに表示させる表示対象を作成するメニュー表示対象作成方法であって、
前記電子機器は、アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報とを有するアプリケーションモジュールが記憶された記憶媒体を有し、
前記電子機器の有する演算装置が、
前記記憶媒体に記憶されたアプリケーションモジュールを参照するステップと、
前記電子機器に接続されたハードウェアの構成を取得し、前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうか判定し、満たすと判定したアプリケーションモジュールに係るアプリケーションプログラムを示す情報をメニューの表示対象とするステップと、を実行すること
を特徴とするメニュー表示対象作成方法。
【請求項６】
電子機器の起動時において、メニューに表示されるメニュー情報が登録されるメニュー情報テーブルの作成方法であって
前記電子機器は、アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報と、当該アプリケーションプログラムをメニューに表示するための情報であるメニュー情報とを有するアプリケーションモジュールが記憶された記憶媒体を有し、
前記電子機器の有する演算装置が、
前記記憶媒体に記憶されたアプリケーションモジュールを参照するステップと、
前記電子機器に接続されたハードウェアの構成を取得し、前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうか判定し、満たすと判定したアプリケーションモジュールの有するメニュー情報を前記メニュー情報テーブルに登録するステップと、を実行すること
を特徴とするメニュー情報テーブルの作成方法。
【請求項７】
コンピュータの起動時において、メニューに表示させる表示対象を作成するメニュー表示対象作成プログラムを記録した、コンピュータ読み取り可能な記録媒体であって、
前記コンピュータは、アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報とを有するアプリケーションモジュールが記憶された記憶媒体を有し、
前記コンピュータの有する演算装置に、
前記記憶媒体に記憶されたアプリケーションモジュールを参照するステップと、
前記コンピュータに接続されたハードウェアの構成を取得し、前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうか判定し、満たすと判定したアプリケーションモジュールに係るアプリケーションプログラムを示す情報をメニューの表示対象とするステップと、
を実行させるためのメニュー表示対象作成プログラムを記憶した記録媒体。
【請求項８】
コンピュータの起動時において、メニューに表示されるメニュー情報が登録されるメニュー情報テーブルの作成プログラムを記録した、コンピュータ読み取り可能な記録媒体でであって、
前記コンピュータは、アプリケーションプログラム毎のアプリケーションモジュールであって、アプリケーションプログラムと、当該アプリケーションプログラムが動作するために必要なハードウェアの情報である要求ハードウェア情報と、当該アプリケーションプログラムをメニューに表示するための情報であるメニュー情報とを有するアプリケーションモジュールが記憶された記憶媒体を有し、
前記コンピュータの有する演算装置に、
前記記憶媒体に記憶されたアプリケーションモジュールを参照するステップと、
前記コンピュータに接続されたハードウェアの構成を取得し、前記アプリケーションモジュール毎に、前記取得したハードウェアの構成が、要求ハードウェア情報を満たすかどうか判定し、満たすと判定したアプリケーションモジュールの有するメニュー情報を前記メニュー情報テーブルに登録するステップと、
を実行させる作成プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、起動するアプリケーションの選択を受け付けるためにメニューを表示するエンタテインメント装置と、当該メニューの表示方法と、該方法を実現するためのプログラムを保持する情報記録媒体とに関する。
【０００２】
【従来の技術】
ゲーム用プログラムを実行するための専用装置であったゲーム機は、従来のゲーム実行機能に加えて、オーディオＣＤ−ＲＯＭ（Compact Disk - Read Only Memory）再生機能など、他の機能をも実現するようになってきており、総合的エンタテインメント装置として位置づけられるようになってきている。
【０００３】
このような複数の機能を備えるエンタテインメント装置では、実現する機能に応じて、異なるアプリケーションを実行する必要がある。そこで、ＴＶ（Television）受像機といったディスプレイ装置に、搭載された機能を示すメニュー画面を表示し、その選択を受け付けて、選択された機能に応じたアプリケーションを実行する必要がある。そこで、従来の装置では、内蔵ＲＯＭ（Read Only Memory）にあらかじめ登録されたメニュー画面を表示して、実現する機能（すなわち実行するアプリケーション）の選択を受け付けていた。
【０００４】
【発明が解決しようとする課題】
しかし、この従来のメニュー表示では、出荷時に内蔵ＲＯＭにあらかじめ記憶されたものを表示するのみであり、出荷後の機能の追加・変更やそれに伴う表示の変更などに動的に対応することはできなかった。
【０００５】
そこで、本発明では、実際に実現可能な機能に応じて表示を随時変更することのできるメニュー表示方法と、該方法を用いてメニューを表示することのできるエンタテインメント装置と、該方法を実現するためのプログラムを保持する情報記録媒体とを提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、本発明では、アプリケーションごとに設けられた該アプリケーションのプログラムを保持するアプリケーションモジュールを参照して、アプリケーションを抽出する動作制御部と、抽出されたアプリケーションのメニューを作成して表示し、起動するアプリケーションの選択を受け付けるメニュー作成部とを備えるエンタテインメント装置が提供される。なお、エンタテインメント装置とは、ゲーム等のプログラムを実行する装置を呼ぶ。本発明では、アプリケーションモジュールはエンタテインメント装置に設けられていなくてもよい。
【０００７】
本発明では、アプリケーションモジュールが、アプリケーションが動作するために必要なハードウエアの情報である要求ハードウエア情報を保持し、動作制御部が、エンタテインメント装置の接続された機器の情報と、アプリケーションモジュールの保持する要求ハードウエア情報とを基に、当該アプリケーションが実行可能か否かを判断し、実行可能であると判断したアプリケーションを抽出するようにしてもよい。
【０００８】
また、アプリケーションモジュールが、アプリケーションのバージョン情報を保持し、動作制御部は、同一アプリケーションが登録された複数のアプリケーションモジュールを検出すると、このバージョン情報を基に、新しいバージョンのアプリケーションを抽出するようにしてもよい。なお、同一アプリケーションが登録された複数のアプリケーションモジュールを検出すると、動作制御部が現在の装置構成に最適なアプリケーションを抽出するようにすることもできる。
【０００９】
また、本発明では、アプリケーションごとに設けられた、該アプリケーションのプログラムとメニュー表示のためのメニュー情報とを保持するアプリケーションモジュールを参照して、アプリケーションごとにメニュー情報が登録されたメニュー情報テーブルを作成する動作制御部と、メニュー情報テーブルを参照し、該メニュー情報テーブルに登録されたメニュー情報を基にアプリケーションのメニューを作成して表示し、起動するアプリケーションの選択を受け付けるメニュー作成部とを備えるエンタテインメント装置が提供される。メニュー情報は、例えば、２次元または３次元画像データ、あるいは、プログラムとすることができる。
【００１０】
さらに、本発明では、アプリケーションごとに設けられた該アプリケーションのプログラムを保持するアプリケーションモジュールを参照して、アプリケーションを検出する動作制御部と、検出されたアプリケーションの少なくとも一部のメニューを作成して表示し、起動するアプリケーションの選択を受け付けるメニュー作成部とを備えるエンタテインメント装置であって、アプリケーションモジュールが、このエンタテインメント装置に接続された外部の記憶媒体（すなわち、スロット部に挿着されたメモリカードやハードディスクドライブ、通信回線を介して接続された記憶装置など）と、このエンタテインメント装置に装着された記憶媒体（すなわち、光ディスク装置にセットされた光ディスクなど）と、このエンタテインメント装置に内蔵された記憶媒体（すなわち、ＲＯＭ（Read Only Memory）など）との少なくともいずれかに保持されており、動作制御部は、上記外部の記憶媒体と、上記装着された記憶媒体と、上記内蔵記憶装置の記憶媒体との少なくともいずれかを検索してアプリケーションモジュールを検出する手段を備えるエンタテインメント装置が提供される。
【００１１】
また、本発明では、上述の各エンタテインメント装置において用いられるメニュー表示方法として、つぎの方法が提供される。すなわち、本発明では、
（１）アプリケーションごとに設けられた該アプリケーションのプログラムを保持するアプリケーションモジュールを参照して、アプリケーションを抽出するステップと、この抽出されたアプリケーションのメニューを作成して表示するステップとを備えるメニュー表示方法、
（２）アプリケーションごとに設けられた、該アプリケーションのプログラムとメニュー表示のためのメニュー情報とを保持するアプリケーションモジュールを参照して、アプリケーションごとにメニュー情報が登録されたメニュー情報テーブルを作成するステップと、このメニュー情報テーブルを参照し、該メニュー情報テーブルに登録されたメニュー情報を基にアプリケーションのメニューを作成して表示するステップとを備えるメニュー表示方法、および、
（３）エンタテインメント装置におけるメニュー表示方法であって、アプリケーションごとに設けられた該アプリケーションのプログラムを保持するアプリケーションモジュールを、このエンタテインメント装置に接続された外部の記憶媒体と、このエンタテインメント装置に装着された記憶媒体と、このエンタテインメント装置の内蔵する記憶装置の記憶媒体との少なくともいずれかを検索して検出するステップと、検出されたアプリケーションモジュールに対応するアプリケーションの少なくとも一部のメニューを作成して表示するステップとを備えるメニュー表示方法が提供される。
【００１２】
さらに本発明では、上述の各メニュー表示方法の少なくともいずれかを実現するためのプログラムを保持する機械読み取り可能な記憶媒体（例えば、光記憶媒体、磁気記録媒体、光磁気記録媒体、ＲＯＭ、メモリカードなど）とが提供される。
【００１３】
【発明の実施の形態】
以下に、図面を用いて本発明の実施例を説明する。なお、以下の実施例において示した装置構成、処理手順等は一例に過ぎず、本発明はこれに限定されるものではない。
【００１４】
Ａ．ハードウエア構成
図１に示すように、本実施例のエンタテインメント装置１は、中央演算処理装置(CPU : Central Processing Unit)５１およびその周辺装置等からなる制御系５０と、フレーム・バッファ６３に描画を行う画像処理装置(GPU : Graphic Processing Unit)６２等からなる画像制御部６０と、楽音,効果音等を発生するための音声処理装置(SPU : Sound Processing Unit)等からなる音声制御部７０と、光記憶媒体からの情報の読み出しを行う光記憶装置制御部８０と、信号の入出力を制御する通信制御部９０と、これらの各部が接続されているバス３０と、各部に電力を供給するための電源ユニット（図示せず）など備えている。
【００１５】
（１）制御系５０
制御系５０は、ＣＰＵ５１と、割り込み制御やダイレクト・メモリ・アクセス（DMA : Direct Memory Access）転送の制御等を行う周辺装置制御部５２と、ランダム・アクセス・メモリ（RAM : Random Access Memory）からなるメインメモリ（主記憶装置）５３と、各種プログラム等が格納されているＲＯＭ５４および書き換え可能なフラッシュＲＯＭ５５とを備える。
【００１６】
ＲＯＭ５４には、メインメモリ５３、画像制御部６０、音声制御部７０といった各部を管理・制御するいわゆるオペレーティング・システム（OS : Operating system）や、ゲームを実行するためのアプリケーション等、各種プログラムが保持されている。なお、フラッシュＲＯＭ５５は書き換え可能なＲＯＭであり、ＯＳやアプリケーションが使用する一部のデータなどが保存される。
【００１７】
ＣＰＵ５１は、ＲＯＭ５４、フラッシュＲＯＭ５５、光ディスク装置８１等からメインメモリ５３に読み込まれたプログラムを実行する装置である。ＣＰＵ５１は、ＲＯＭ５４にあらかじめ保持され実行時にメインメモリ５３に読み込まれたオペレーティング・システムのプログラムを実行することにより、このエンタテインメント装置１の全体を制御する。
【００１８】
また、ＣＰＵ５１は、メインメモリ５３に読み込まれたアプリケーションプログラムを実行することにより、ゲームのなどの各種アプリケーションを実行する。 なお、ＣＰＵ５１が実行するアプリケーションは、光ディスク（ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ（Digital Video Disk - Read Only Memory）など）にあらかじめ保持され、光ディスク装置８１により読み取られて、メインメモリ５３に格納されたものであってもよく、ＲＯＭ５４またはフラッシュＲＯＭ５５にあらかじめ保持されたものをメインメモリ５３に読み込んだものでもよく、通信制御部９０を介して外部（例えば、スロット部９６を介して接続されるメモリカードなどの取り外し可能なＲＯＭまたはフラッシュＲＯＭなどや、外部機器接続端子９３を介して接続される外部機器、通信端子９４またはＰＣＭＣＩＡ端子９５を介して接続される外部ネットワークなど）から取り込み、直接または間接にメインメモリ５３へ格納したものであってもよい。
【００１９】
また、本実施例のエンタテインメント装置１では、メインメモリ５３、ＧＰＵ６２、画像デコーダ６４およびデコーダ８２等の間でのＣＰＵ５１を介さない直接のデータ転送（いわゆるＤＭＡ転送）を行うための周辺機器制御部５２を、制御系５１に設けている。これにより、本実施例のエンタテインメント装置１では、ＣＰＵ５１の負荷を低減し、高速なデータ転送を行うことが可能になっている。なお、この周辺機器制御部５２は、割り込みの制御も行う。
【００２０】
（２）画像制御部６０
画像制御部６０は、座標変換等の処理を行うジオメトリ・トランスファ・エンジン（GPU : Geometry Transfer Engine）６１と、ＣＰＵ５１からの描画指示に従って描画を行うＧＰＵ６２と、このＧＰＵ６２により描画された画像を記憶するフレーム・バッファ６３と、離散コサイン変換等の直交変換により圧縮されて符号化された画像データを復号する画像デコーダ６４と、ＡＶ（Audio Visual）出力端子（すなわち映像音声出力端子）６５とを備えている。
【００２１】
ＧＴＥ６１は、例えば複数の演算を並列に実行する並列演算機構を備え、ＣＰＵ５１からの演算要求に応じて座標変換,光源計算,行列あるいはベクトル等の演算を高速に行う装置である。このＧＴＥ６１を設けることによって、本実施例のエンタテインメント装置１では、ＣＰＵ５１の負荷を低減するとともに、高速な座標演算を行うことができるようになっている。
【００２２】
ＧＰＵ６２は、ＣＰＵ５１からの描画命令に従って多角形(ポリゴン)等の描画データを作成し、これをフレーム・バッファ６３に格納し、また、作成した描画データをＡＶ出力端子６５へ出力する。本実施例のＧＰＵ６２は、一つの三角形状のポリゴンに同じ色で描画するフラット・シェーディング、ポリゴンの頂点の色から補完してポリゴン内の色を決めるグロー・シェーディング、および、テクスチャ領域に記憶されているテクスチャをポリゴンに張り付けるテクスチャ・マッピングなどを行うことができ、１秒間に最大７５００万程度のポリゴンの描画を行うことができるようになっている。
【００２３】
フレーム・バッファ６３は、表示する画像のデータを保持するための記憶領域であり、本実施例では、ＧＰＵ６２からの描画あるいはメインメモリ５３からの転送と、表示のための読み出しとを同時に行うことができるいわゆるデュアル・ポートＲＡＭ（Random Access Memory）からなる。
【００２４】
なお、本実施例のフレーム・バッファ６３は、表示画像のデータを保持するための表示画像記憶領域の他に、ＧＰＵ６２がポリゴン等の描画を行う際に参照するカラー・ルックアップテーブル(CLUT : Co1or Look Up Tab1e)が記憶されるＣＬＵＴ領域と、描画時に座標変換されてＧＰＵ６２によって描画されるポリゴン等の中に挿入(マッピング)される素材(テクスチャ)が記憶されるテクスチャ領域とを備える。これらのＣＬＵＴ領域とテクスチャ領域は、表示領域の変更等に従って動的に変更されるようになっている。
【００２５】
画像デコーダ６４は、ＣＰＵ５１からの制御により、メインメモリ５３に記憶されている静止画あるいは動画の画像データを復号してメインメモリ５３に記憶する。また、この再生された画像データは、ＧＰＵ６２を介してフレーム・バッファ６３に記憶することにより、上述のＧＰＵ６２によって描画される画像の背景として使用することができるようになっている。
【００２６】
ＡＶ出力端子６５は、映像信号、音声信号等の各種信号を、ＴＶ受像機等の表示装置に出力するための端子である。
【００２７】
（３）音声制御部７０
サウンド・システム７０は、ＣＰＵ５１からの指示に基づいて、楽音,効果音等を発生し、ＡＶ出力端子６５に出力するＳＰＵ７１と、このＳＰＵ７１により、波形データ等が記録されるサウンド・バッファ７２とを備えている。
【００２８】
ＳＰＵ７１は、例えば１６ビットの音声データを４ビットの差分信号として適応予測符号化(ADPCM : Adaptive Differential Pulse Code Modulation)された音声データを再生するＡＤＰＣＭ復号機能と、サウンド・バッファ７２に記憶されている波形データを再生する再生機能と、サウンド・バッファ７２に記憶されている波形データを変調させて再生する変調機能等を備えておいる。このため、サウンド・システム７０は、ＣＰＵ５１からの指示によってサウンド・バッファ７２に記録された波形データに基づいて楽音,効果音等を発生するいわゆるサンプリング音源として使用することができるようになっている。
【００２９】
（４）光ディスク制御部８０
光ディスク制御部８０は、光ディスクに記録されたプログラムやデータ等を再生する光ディスク装置８１と、例えばエラー訂正符号(ECC : Error Correction Code)などが付加されて記録されているプログラム,データ等を復号するデコーダ８２と、光ディスク装置８１からのデータを一時的に記憶することにより、光ディスクからのテータの読み出しを高速化するパヅファ８３とを備えている。デコーダ８２には、演算処理のためのサブＣＰＵ８４が接続されている。
【００３０】
光ディスク装置８１は、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭといった光ディスクに保持された情報（プログラム、音声データ、画像データなど）を再生するための装置である。光ディスク装置８１により光ディスクから読み出された情報は、デコーダ８２で復号された後、情報の種類に応じて、例えばアプリケーションプログラムであればメインメモリ５３等へ、オーディオ用音声データであれば必要に応じてＳＰＵ７１でデジタル／アナログ変換等の処理が施された後、ＡＶ出力端子６５へ、ＡＶ用音声データ映像データであれば必要に応じてＧＰＵ６２でデジタル／アナログ変換等の処理が施された後、ＡＶ出力端子６５へ、それぞれ転送される。
【００３１】
（５）通信制御部９０
通信制御部９０は、バス３０を介して行われるＣＰＵ５１との通信を制御する通信制御機９１と、外部との電気的接続を図るための各種端子９２〜９４およびスロット部９５，９６とを備える。端子９２〜９４、スロット部９５，９６は、それぞれ通信制御機９１に電気的に接続されている。
【００３２】
データ転送端子９２は、外部とのデータ転送のための端子であり、本実施例では、ＩＥＥＥ（The Institute of Electrical and Electronics Engineers）１３９４規格に準拠している。デジタルカメラやビデオデッキ等を、ケーブルを介してこの端子９２に接続することで、これらの機器に保持された映像、音声等をエンタテインメント装置１に取り込むことができる。
【００３３】
外部機器接続端子９３は、キーボード等の入力装置や、マウス等のポインティングデバイス、プリンタ等の印刷装置、フロッピーディスク、光磁気ディスク等の磁気記録媒体を用いた外部記憶装置等を接続するための端子であり、本実施例では、ＵＳＢ(Universal Serial Bus)規格に準拠している。本実施例のエンタテインメント装置１では、この外部機器接続端子２０が２つ設けられている。
【００３４】
通信端子９４は、外部機器との通信を行うための端子であり、本実施例では、赤外線を使ったデータ通信の規格であるＩｒＤＡ(Infrared Data Association)規格に準拠している。本実施例のエンタテインメント装置１は、この同じ規格に準拠した端子を備える外部機器との間であれば、ケーブル等で接続することなく赤外線通信でデータの受け渡しが可能となる。
【００３５】
ＰＣＭＣＩＡスロット９５は、モデムカード等の各種カード型周辺機器を挿着するためのＰＣＭＣＩＡ（Personal Computer Memory Card International Association）規格に準拠したスロットである。本実施例のエンタテインメント装置１は、このスロット９５にモデムカードを挿着することにより、インターネットなどの公衆網を用いた通信を行うことができる。
【００３６】
スロット部９６は、使用者からの指示の入力を受け付けるコントローラを接続し、指示の入力信号を受け付けるためのコントローラ接統部（図示せず）と、ゲームの設定・進行状況等のでデータを保持するための外部補助記憶装置であるメモリカードを挿着し、メモリカードとの間の入出力を行うためのメモリカード挿入部（図示せず）とを備える。なお、本実施例のエンタテインメント装置１では、コントローラ接統部およびメモリカード挿入部はそれぞれ２つ設けられている。また、本実施例では、メモリカード挿入部には、外部補助記憶装置として、携帯用電子機器を接続することもできる。
【００３７】
コントローラ接続部に接続されたコントローラは、使用者からの指示を入力するために、例えば１６個の指示キーを有し、通信制御機９１からの指示に従って、この指示キーの状態を、同期式通信により、通信制御機９１に毎秒６０回程度送信する。これを受けた通信制御機９１は、コントローラの指示キーの状態をＣＰＵ５１に通知する。
【００３８】
また、ＣＰＵ５１は、通信制御機９１を介して、メモリカード挿入部に挿着された外部補助記憶装置へのデータの入出力を行う。外部補助記憶装置には、例えば、ゲームの進行や設定を示すデータなどをの記憶領域が設けられている。なお、本実施例の通信制御機９１には、電気的な破壊を防止するための保護回路が内蔵されている。メモリカードや携常用電子機器といった外部補助記憶装置は、バス３０から分離されており、装置本体の電源を入れた状態で、着脱することができる。従って、記憶容量不足などの理由で交換が必要になった場合も、装置本体の電源を遮断することなく、これらの外部補助記憶装置を挿し換えることができる。
【００３９】
Ｂ．機能構成
本実施例のエンタテインメント装置１の機能構成を、図２に示す。本実施例のエンタテインメント装置１は、全体の動作を制御する動作制御部２１と、起動可能なアプリケーションのメニューを作成するメニュー作成部２２と、ゲーム用プログラムを実行するゲーム実行部２０と、画像制御部６０、音声制御部７０、光ディスク制御部８０および通信制御部９０とを備え、メニュー作成部が作成するメニューにより起動するアプリケーションごとにアプリケーションモジュールが用意されている。また、起動可能なアプリケーション群の情報を保持するための記憶領域であるアプリケーションテーブル２３と、メニュー表示するアプリケーションを登録するための記憶領域であるメニュー情報テーブル２４と、接続されている周辺機器等を示すデバイス情報テーブル２５とがメインメモリ５３に作成される。
【００４０】
なお、本実施例では、ゲーム実行部２０、動作制御部２１およびメニュー作成部２２は、ＲＯＭ５４にあらかじめ保持され、メインメモリ５３に読み込まれたプログラムをＣＰＵ５１が実行することにより実現されるが、本発明はこのようなソフトウエアによる実現手段により限定されるものではなく、同様のステップを実行するハードワイヤードロジックを含むハードウエア装置などによって実現されてもよい。
【００４１】
また、本実施例では、ゲーム実行部２０、動作制御部２１およびメニュー作成部２２を実現するためのプログラムが保持されている情報記録媒体はＲＯＭ５４であるが、本発明はこれには限られない。例えばフラッシュＲＯＭ５５、光ディスク装置８１により読み取られる光ディスク、スロット部９６に挿着されたメモリカード等、制御系５０が読み取り可能な他の情報記録媒体にプログラムが保持されていてもよい。
【００４２】
Ｃ．データ構造
本実施例では、アプリケーションテーブル２３、メニュー情報テーブル２４およびデバイステーブル２５は、メインメモリ５３に動的に確保される記憶領域である。しかし、本発明はこれには限られず、フラッシュＲＯＭ５５など他の領域に確保されてもよい。また、動作させるアプリケーションごとにそのプログラムなどを保持する記憶領域であるアプリケーションモジュール２６があらかじめ設けられている。
【００４３】
（１）アプリケーションモジュール２６
アプリケーションモジュール２６は、図３に示すように、アプリケーションヘッダの記憶領域３１と、当該アプリケーションのメニュー表示のための情報であるメニュー情報の記憶領域３２と、当該アプリケーションを動作させるためのプログラムモジュール群の記憶領域３３とを備える。
【００４４】
アプリケーションヘッダ記憶領域３１には、アプリケーション名、バージョン、当該アプリケーションの動作に必要なハードウエアの一覧などが登録されている。また、メニュー情報記憶領域３２には、メニュー情報として、メニュー表示用画像の２次元／３次元データ、表示プログラム、文字データなどを適宜保持することができ、その内容はメニュー作成部２２による表示処理の内容に応じて適宜決定すればよい。
【００４５】
なお、アプリケーションモジュール２６は、図２にアプリケーションモジュール２６ａとして図示したように、ＲＯＭ５４、フラッシュＲＯＭ５５などの内蔵記憶装置に保持されていてもよく、アプリケーションモジュール２６ｂ，２６ｃとして示すようにエンタテインメント装置１の外部に保持されていてもよい。
【００４６】
例えば、通信制御部９０のスロット部９６に挿着された外部補助記憶装置、ＰＣＭＣＩＡスロット９５を介して接続された外部記憶装置（ハードディスクドライブなど）や、光ディスク制御部８０の光ディスク装置８１にセットされた光ディスクなどが、アプリケーションモジュール２６ｂ，２６ｃを保持する媒体として使用することができる。また、ＰＣＭＣＩＡスロット９５にモデムカードなどの通信機器が挿着されている場合は、これを介して接続可能な外部ネットワークにアプリケーションモジュール２６ｂが保持されていてもよく、外部機器接続端子９３に接続された外部機器や、通信端子９４を介して通信可能な外部機器にアプリケーションモジュール２６ｂが保持されていてもよい。
【００４７】
なお、図２ではアプリケーションモジュール２６ａ〜ｃがすべて設けられているが、本発明はこれに限定されるものではなく、これら全てがそろっている必要はない。適宜、所望のアプリケーションに応じたアプリケーションモジュール２６を、動作制御部２１がアクセス可能な記憶装置に保持すればよい。
【００４８】
また、アプリケーションの種類についても、特に限定されるものではない。本実施例においてメニューにより起動されるアプリケーションには、オーディオＣＤ（Compact Disk）の再生を行うＣＤプレーヤー、ＤＶＤ（Digital Video Disk）およびＤＶＤオーディオディスクの再生を行うＤＶＤプレーヤー、メモリカードの保持する情報を複写・削除などするためのメモリカードユーティリティ、現在時刻を表示する時計、インターネットなどのネットワークを介して通信を行うためのコミュニケーションツール（メーラー、ブラウザ等）などが上げられる。
【００４９】
（２）アプリケーションテーブル２３
アプリケーションテーブル２３は、図４（ａ）に示すように、動作可能なアプリケーションごとに、アプリケーション情報記憶領域２３０が設けられており、各アプリケーション情報記憶領域２３０は、それぞれ、アプリケーションヘッダの記憶領域２３１と、メニュー情報の記憶領域２３２と、アプリケーションモジュールの格納場所を示す情報の記憶領域２３３とを備える。
【００５０】
（３）メニュー情報テーブル２４
メニュー情報テーブル２４は、図４（ｂ）に示すように、動作可能なアプリケーションごとに、表示アイテム情報記憶領域２４０が設けられており、各表示アイテム情報記憶領域２４０は、それぞれ、各表示アイテム情報記憶領域２４０のサイズなどを保持するヘッダ記憶領域２４１と、メニュー情報の記憶領域２４２と、当該表示アイテム情報の示すアプリケーションのプログラムが格納された場所の情報の記憶領域２４３とを備える。
【００５１】
（４）デバイス情報テーブル２５
デバイス情報テーブル２５は、接続されている周辺機器等の一覧を示すテーブルであり、図５に示すように、各機器ごとに、機器を示す識別子の記憶領域５１と該機器の接続場所を示すアドレス情報の記憶領域５２とを備える周辺機器情報記憶領域５０が設けられている。
【００５２】
Ｄ．処理手順
本実施例のエンタテインメント装置１では、電源が投入されると、まず動作制御部２１が起動される。
【００５３】
（１）動作制御部２１の処理
ａ．全体の流れ
起動された動作制御部２１は、図６に示すように、まず、動作確認等、所定の初期化処理を行い（ステップ６０１）、アプリケーションテーブル２３を作成した後（ステップ６０２）、このアプリケーションテーブル２３をもとにメニュー情報テーブルを作成した後（ステップ６０３）、光ディスク制御部８０の光ディスク装置８１にゲーム用光ディスクがセットされていれば（ステップ６０４）、ゲーム実行部２０によりゲーム用プログラムを実行させ（ステップ６０５）、ゲームが終了すると、処理をステップ６０１へ戻す。なお、動作制御部２１が、ステップ６０１における初期化処理等において、音声制御部７０を介して音声データを出力したり、画像制御部６０を介して画像データを出力したりするようにしてもよい。また、アプリケーションテーブル作成処理（ステップ６０２）およびメニュー情報テーブル作成処理（ステップ６０３）は、初期化処理（ステップ６０１）の一部として実行するようにしてもよい。
【００５４】
ステップ５０３において起動されたゲーム実行部２０は、光ディスク制御部８０を介して当該光ディスクの保持するゲーム用プログラムを読み込み、通信制御部９０を介して受け付けた入力に応じて、画像制御部６０、音声制御部７０の動作を制御しつつ当該プログラムを実行する。
【００５５】
ステップ６０４においてゲーム用光ディスクがセットされていない場合、動作制御部２１は、メニュー作成部２２を起動して、メニュー作成部２２からの応答を待つ（ステップ６０６）。
【００５６】
ここで、動作制御部２１は、光ディスク制御部８０の光ディスク装置８１にゲーム用光ディスクがセットされたことを検出すると（ステップ６０７）、処理をステップ６０５に進めて、ゲーム実行部２０にゲーム用プログラムを実行させる。
【００５７】
ステップ６０４においてゲーム用光ディスクがセットされていない場合、動作制御部２１は、メニュー作成部６０６からの選択されたアプリケーションの通知があれば（ステップ６０８）、アプリケーションテーブル２３の、選択されたアプリケーションに対応する格納場所情報記憶領域２３３を参照して、当該選択されたアプリケーションを起動し（ステップ６０９）、処理をステップ６０７へ戻す。
【００５８】
なお、本実施例では、ステップ６０７においてゲーム用光ディスクがセットされたことを検出すると、ゲーム用プログラムが実行されるが（ステップ６０５）、このようにする代わりに、ゲーム用光ディスクがセットされたことを動作制御部２１がメニュー作成部２２に通知し、これを受けたメニュー作成部２２が表示するメニューにゲーム用の表示アイテムを追加するようにしてもよい。
【００５９】
ｂ．アプリケーションテーブル作成処理（ステップ６０２）
つぎに、ステップ６０２における動作制御部２１の処理を、図７を用いて説明する。
【００６０】
ステップ６０２において、動作制御部２１は、まず、メインメモリ５３にアプリケーションテーブル２３およびデバイス情報テーブル２５の領域をそれぞれ確保した後、通信制御部９０等に接続された周辺機器等のハードウエア構成を取得し、検出した周辺機器の情報を基に、デバイス情報テーブル２５を作成する（ステップ７０１）。
【００６１】
続いて、動作制御部２１は、ＲＯＭ５４、フラッシュＲＯＭ５５、光ディスク装置８１にセットされた光ディスク、スロット部９６に挿着されたメモリカード、ＰＣＭＣＩＡスロット９５に挿着された外部記憶装置、外部機器接続端子９３に接続された外部機器など、内蔵または接続された記憶媒体を有する全デバイスのうちの未処理のいずれかを処理対象として（ステップ７０２）、当該デバイスの記憶媒体にアプリケーションモジュール２６が保持されているか否か（すなわち、アプリケーションヘッダ３１が保持されているか否か）、検索する（７０３）。
【００６２】
ここで、アプリケーションモジュール２６がまったく検出されなければ（ステップ７０４）、動作制御部２１は、上記全デバイスが処理済であればデバイス情報テーブル作成処理を終了し、未処理のデバイスが残っていれば処理をステップ７０２へ戻す（ステップ７１０）。
【００６３】
ステップ７０３において、アプリケーションモジュール２６が検出されると（ステップ７０４）、動作制御部２１は、いずれかのアプリケーションモジュールを処理対象として（ステップ７０５）、当該アプリケーションモジュールのアプリケーションヘッダ記憶領域３１に保持された、実行に必要なハードウエアの情報と、デバイス情報テーブル７０１の内容とを比較して、当該アプリケーションが実行可能か否かを判断する（ステップ７０６）。
【００６４】
ステップ７０６において実行不可と判断すると、動作制御部２１は、処理対象デバイスに未処理アプリケーションモジュールが残っていなければ、処理をステップ７１０へ進め、未処理アプリケーションモジュールが残っていれば、処理をステップ７０５へ戻す（ステップ７０９）。
【００６５】
ステップ７０６において実行可能と判断すると、動作制御部２１は、処理対象アプリケーションモジュールに登録されたアプリケーションが最新か否か判断する（ステップ７０７）。すなわち、動作制御部２１は、処理対象アプリケーションモジュールのアプリケーションヘッダ記憶領域３１に保持されたアプリケーション名が既にアプリケーションテーブルに登録されているか否か検査する。ここで、未登録であれば、動作制御部２１は現在処理対象としているアプリケーションモジュールのものが最新であると判断する。また、既に同じ名称のアプリケーションが登録されていれば、処理対象アプリケーションモジュールのアプリケーションヘッダ記憶領域３１に保持されたバージョン情報と、アプリケーションテーブル２３のアプリケーションヘッダ記憶領域２３１に保持されたバージョン情報とを比較して最新であるか否か判断する。
【００６６】
ここで、最新ではないと判断すると、動作制御部２１は処理をステップ７０９へ進める。また、最新であると判断すると、動作制御部２１は、アプリケーションテーブル２３に当該アプリケーションモジュールを登録する（ステップ７０８）。すなわち、ステップ７０８において、動作制御部２１は、アプリケーションテーブル２３に新たにアプリケーション情報記憶領域２３０を確保し、アプリケーションヘッダ格納領域２３１およびメニュー情報格納領域２３２にそれそれアプリケーションモジュール２６から読み込んだ情報を格納するとともに、当該アプリケーションモジュール２６の格納場所を示す情報を、格納場所情報記憶領域２３３に格納する。この登録処理（ステップ７０８）が終了すると、動作制御部２１は、処理をステップ７０９へ進める。
【００６７】
なお、ハードウエア環境による動作の可否を判定する必要がない場合は、デバイス情報テーブル作成処理（ステップ７０１）、および、実行可能か否かの判定処理（ステップ７０６）は省略することができる。
【００６８】
また、本実施例では、最新のバージョンのアプリケーションを選択してアプリケーションテーブルへ登録しているが、エンタテインメント装置１の現在の装置構成（システム構成）、他のアプリケーションとの競合状態などを判断して、例えば、現在の装置構成で実行可能であり、他のアプリケーションとの競合がないといった最適なアプリケーションを選択するようにしてもよい。
【００６９】
ｃ．メニュー情報テーブル作成処理（ステップ６０３）
つぎに、ステップ６０３における動作制御部２１の処理を、図８を用いて説明する。
【００７０】
ステップ６０３において、動作制御部２１は、まず、メインメモリ５３にメニュー情報テーブル２４の領域を確保した後、アプリケーションテーブル２３のアプリケーション情報記憶領域２３０のうちのいずれかを処理対象として（ステップ８０１）、当該記憶領域２３０に登録されたアプリケーションをメニュー情報テーブル２４に登録した後（ステップ８０２）、未処理のアプリケーション情報記憶領域２３０が残っていれば（ステップ８０６）、処理をステップ８０１へ戻して登録処理（ステップ８０２）を繰り返し、すべてのアプリケーション情報記憶領域２３０が処理済であれば（ステップ８０６）、ステップ６０３の処理を終了する。
【００７１】
なお、ステップ８０２における登録処理はつぎの通りである。ステップ８０２において、まず、動作制御部２１は、メニュー情報テーブル２４に新たな表示アイテム情報記憶領域２４０を確保してヘッダを作成し、ヘッダ記憶領域２４１へ格納した後（ステップ８０２）、アプリケーションテーブル２３のメニュー情報記憶領域２３２から読み込んだ情報を、表示アイテム情報記憶領域２４０のメニュー情報記憶領域２４２へ格納するとともに、アプリケーションテーブル２３の格納場所情報記憶領域２３３から読み込んだ情報を、表示アイテム情報記憶領域２４０の格納場所情報記憶領域２４３へ格納する（ステップ８０４）。
【００７２】
（２）メニュー作成部２２の処理
ステップ６０６において動作制御部２１から呼び出されたメニュー作成部２２は、メニュー情報テーブル２４の各表示アイテム情報記憶領域２４０を参照し、メニュー情報記憶領域２４２に保持された情報を基に、アプリケーションごとの表示アイテムを作成して、その表示アイテムが表示画面の所定の位置に表示されるようにメニュー画面を作成して、画像処理部６０を介して出力する（ステップ９０１）。図１０に、このときの表示画面１００の例を示す。本実施例では、個々の表示アイテム１０１がそれぞれ選択領域となっており、スロット部９６に接続されたコントローラ等の入力装置による選択を受け付けることができるようになっている。
【００７３】
次に、動作制御部２１は、表示アイテム１０１のいずれかの選択の入力が、通信制御部を介して行われるのを待ち（ステップ９０２）、入力されると、その選択されたアプリケーションを動作制御部２１に通知する（ステップ９０３）。
【００７４】
なお、本実施例では、起動するアプリケーションが選択されると、メニュー作成部２１はその選択されたアプリケーションを動作制御部２１へ通知するが、例えば、メニュー情報テーブル２４の格納場所情報記憶領域２４３から当該選択されたアプリケーションの格納場所情報を読み出し、その格納場所情報を動作制御部２１へ通知するようにしてもよい。
【００７５】
また、ステップ９０１における表示アイテム１０１の作成方法およびメニューの表示方法は、特に限定されるものではないが、例えば、メニュー情報として文字列を用いる場合には、図１０に示すように、表示アイテム１０１である文字列を一覧表示してメニューとすることができる。また、メニュー情報として２次元または３次元の画像データを用いる場合には、２次元または３次元のイメージを表示アイテムとし、このイメージを画面上に並べてメニューとすることができる。さらに、メニュー情報として表示イメージの動作を定義したプログラムを用いる場合には、動作するイメージを表示アイテムとし、これを並べるなどしてメニュー画面とすることができる。さらに、メニューの表示アイテムとして文字列または画像の他、音声制御部７０を介して出力される音声データを用いるようにすることもできる。
【００７６】
Ｅ．本実施例の効果
このように、本実施例では、アプリケーションごとにメニュー情報を保持し、これを用いてメニューを表示するため、アプリケーションの追加・変更に伴うメニュー項目（表示アイテム）の追加・変更が自動的に行われる。
【００７７】
さらに、本実施例では、アプリケーションテーブルを作成する際、実行可能なアプリケーションのみを抽出するため、ハードウエア構成を変更した場合であっても、当該変更に伴って、表示されるメニューの内容も自動的に変更される。
【００７８】
また、本実施例では、アプリケーションテーブルを作成する際、バージョン情報を基にアプリケーションが抽出されるので、常に最新および／または最適なアプリケーションを起動することができ、アプリケーションのバージョンアップにも動的に対応できる。
【００７９】
さらに、本実施例では、あらかじめ定められたメニューを表示するのでなく、メニュー作成部２２により動的にメニューを作成するため、文字列等に限定されることなく、多様な表現形式を採ることができる。
【００８０】
【発明の効果】
以上のように、本発明によれば、実際に実現可能な機能に応じてメニュー表示を随時変更することができ、出荷後の機能の追加や変更、表示の変更などに動的に対応することができる。
【図面の簡単な説明】
【図１】  実施例におけるエンタテインメント装置のハードウエア構成図である。
【図２】  実施例におけるエンタテインメント装置の機能ブロック図である。
【図３】  アプリケーションモジュールのデータ構造例を示す模式図である。
【図４】  アプリケーションテーブルおよびメニュー情報テーブルのデータ構造例を示す模式図である。
【図５】  デバイス情報テーブルのデータ構造例を示す模式図である。
【図６】  実施例における動作制御部の処理を示す流れ図である。
【図７】  アプリケーションテーブル作成処理の例を示す流れ図である。
【図８】  メニュー情報テーブル作成処理の例を示す流れ図である。
【図９】  実施例におけるメニュー作成部の処理を示す流れ図である。
【図１０】  メニュー表示画面例を示す説明図である。
【符号の説明】
１…エンタテインメント装置、２０…ゲーム実行部、２１…動作制御部、２２…メニュー作成部、２３…アプリケーションテーブル、２４…メニュー情報テーブル、２５…デバイス情報テーブル、２６，２６ａ〜ｃ…アプリケーションモジュール、３０…バス、５０…制御系、５１…ＣＰＵ、５２…周辺装置制御部、５３…メインメモリ、５４…ＲＯＭ、５５…フラッシュＲＯＭ、６０…画像制御部、６１…ＧＴＥ、６２…ＧＰＵ、６３…フレーム・バッファ、６４…画像デコーダ、６５…ＡＶ出力端子、７０…音声制御部、７１…ＳＰＵ、７２…サウンド・バッファ、８０…光ディスク制御部、８１…光ディスク装置、８２…デコーダ、８３…バッファ、８４…サブＣＰＵ、９０…通信制御部、９１…通信制御機、９２…データ転送端子、９３…外部機器接続端子、９４…通信端子、９５…ＰＣＭＣＩＡ端子。
【図１】
0004291467.tif 000002
【図２】
0004291467.tif 000003
【図３】
0004291467.tif 000004
【図４】
0004291467.tif 000005
【図５】
0004291467.tif 000006
【図６】
0004291467.tif 000007
【図７】
0004291467.tif 000008
【図８】
0004291467.tif 000009
【図９】
0004291467.tif 000010
【図１０】
0004291467.tif 000011