情報処理装置
【課題】 メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できることに加えて、装着した場合であっても、動作モードに応じて、異なるプログラムを起動できるマイク一体型カラオケ装置を提供する。
【解決手段】 プロセッサ51は、アドレス空間の第1領域にマッピングされたブートプログラムBP1又はBP2を電源投入時に実行する。ROM53及びOTPROM77はそれぞれブートプログラムBP1及びBP2を格納している。カートリッジ2が未装着の場合はROM53が第1領域に配置される。カートリッジ2が装着され、かつ、カラオケモードが選択されている場合、OTPROM77が第1領域に配置される。カートリッジ2が装着され、かつ、ライトモードが選択されている場合、ROM53が第1領域に配置される。
【解決手段】 プロセッサ51は、アドレス空間の第1領域にマッピングされたブートプログラムBP1又はBP2を電源投入時に実行する。ROM53及びOTPROM77はそれぞれブートプログラムBP1及びBP2を格納している。カートリッジ2が未装着の場合はROM53が第1領域に配置される。カートリッジ2が装着され、かつ、カラオケモードが選択されている場合、OTPROM77が第1領域に配置される。カートリッジ2が装着され、かつ、ライトモードが選択されている場合、ROM53が第1領域に配置される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、装着されたメモリカートリッジに格納されたプログラムを処理する情報処理装置及びその関連技術に関する。
【背景技術】
【0002】
特許文献1には、マイク一体型カラオケ装置が開示されている。このマイク一体型カラオケ装置に内蔵されたROM(read only memory)には警告メッセージ表示プログラムが記憶され、マイク一体型カラオケ装置に着脱されるメモリカートリッジにはカラオケプログラムが記憶される。メモリカートリッジが装着されていないときは、警告メッセージ表示プログラムが第1の態様でアドレス空間にマッピングされ、電源投入時に、この警告メッセージ表示プログラムが起動される。一方、メモリカートリッジが装着されているときは、警告メッセージ表示プログラムおよびカラオケプログラムが第2の態様でアドレス空間にマッピングされ、電源投入時に、カラオケプログラムが起動される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動することができる。
【0003】
【特許文献1】特開2002−132509号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
この従来技術は、メモリカートリッジが装着された場合に、メモリカートリッジのROMからカラオケプログラムやカラオケデータを読み込むことだけを想定した技術である。このように、メモリカートリッジを装着したときの動作モードは1つ、つまり、メモリカートリッジからリードして実行するモードのみである。
【0005】
ところが、マイク一体型カラオケ装置により、メモリカートリッジにカラオケプログラムやカラオケデータを書き込むことを想定することもできる。この場合、動作モードは2つ、つまり、上記のモードに加えて、メモリカートリッジにライトするモードがある。
【0006】
そこで、本発明の目的は、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できることに加えて、装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる情報処理装置及びその関連技術を提供することである。
【課題を解決するための手段】
【0007】
本発明の第1の観点によれば、情報処理装置は、第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、前記第1ブートプログラムを格納した第1のメモリと、前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、を備え、前記メモリカートリッジが前記コネクタに装着されていない場合は、前記第1のメモリが前記第1領域に配置され、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1のメモリが前記アドレス空間の第2領域に配置されるとともに、前記第2のメモリが前記第1領域に配置され、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1のメモリが前記第1領域に配置されるとともに、前記第2のメモリが前記第2領域に配置される。
【0008】
この構成によれば、メモリカートリッジが未装着の場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。また、第1動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第2ブートプログラムが最初に実行される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できる。
【0009】
さらに、第2動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。従って、メモリカートリッジを装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【0010】
本発明の第2の観点によれば、情報処理装置は、第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、前記第1ブートプログラムを格納した第1のメモリと、前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、前記メモリカートリッジが前記コネクタに装着されていない場合は、前記プロセッサからの第1イネーブル信号を伝達する第1の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1の信号線を前記第2のメモリに接続するとともに、前記プロセッサからの第2イネーブル信号を伝達する第2の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1の信号線を前記第1のメモリに接続するとともに、前記第2の信号線を前記第2のメモリに接続する接続機構と、を備え、前記プロセッサは、アドレスが前記第1領域を示す場合に、前記第1イネーブル信号をアクティブにし、アドレスが前記アドレス空間の第2領域を示す場合に、前記第2イネーブル信号をアクティブにする。
【0011】
この構成によれば、メモリカートリッジが未装着の場合は、第1イネーブル信号を伝達する第1の信号線が第1のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、メモリカートリッジが未装着の場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。また、第1動作モードにおいてメモリカートリッジが装着されている場合は、第1イネーブル信号を伝達する第1の信号線が第2のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、第1動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第2ブートプログラムが最初に実行される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できる。
【0012】
さらに、第2動作モードにおいてメモリカートリッジが装着されている場合は、第1イネーブル信号を伝達する第1の信号線が第1のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、第2動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。従って、メモリカートリッジを装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。また、16進数の表現に関しては、10進数と区別するために数字の末尾に「h」を付けて表記する。
【0014】
図1(a)は、本発明の実施の形態による情報処理装置としてのマイク一体型カラオケ装置1によるライトモードにおけるパーソナルコンピュータ(以下、「PC」と呼ぶ。)3との接続状態を示す図である。図1(b)は、マイク一体型カラオケ装置1によるカラオケモードにおけるテレビジョンモニタ7との接続状態を示す図である。
【0015】
図1(a)に示すように、マイク一体型カラオケ装置1と、PC3と、をUSB(universal serial bus)ケーブル5で接続する。ライトモードでは、マイク一体型カラオケ装置1は、PC3からUSBケーブル5を介して送信されたカラオケデータを、装着されたメモリカートリッジ2に書き込む。カラオケデータは、例えば、PC3が、後述のネットワーク4からダウンロードしたものである。
【0016】
図1(b)に示すように、マイク一体型カラオケ装置1と、テレビジョンモニタ7と、をA/V(audio/video)ケーブル9で接続する。カラオケモードでは、マイク一体型カラオケ装置1は、装着されたメモリカートリッジ2に格納されたカラオケプログラムを実行して、カラオケデータに基づくビデオ信号及びオーディオ信号を生成して、A/Vケーブル9により、テレビジョンモニタ7に与える。その結果、テレビジョンモニタ7には、カラオケのための映像(背景及び歌詞など)が表示され、テレビジョンモニタ7のスピーカ(図示せず)からは、音声(歌声及び伴奏など)が出力される。
【0017】
図2(a)はマイク一体型カラオケ装置1の正面図、図2(b)は背面図、図2(c)は右側面図である。図2(a)に示すように、マイク一体型カラオケ装置1の上端部にはマイクロフォン11が設けられる。また、マイク一体型カラオケ装置1の正面には、リセットスイッチ13、テンポ制御キー17、ボリューム制御キー15、キャンセルキー19、エコーモード選択キー21、曲選択/ピッチ制御キー23、ボイスエフェクトモード選択キー27、及び決定キー25が設けられる。
【0018】
リセットスイッチ13は、選択した曲番号を含むすべてをリセットするためのものである。テンポ制御キー17は、2つのスイッチからなり、カラオケすなわち伴奏の再生速度(テンポ)を速くしまたは遅くするためのキーである。ボリューム制御キー15は、2つのスイッチからなり、カラオケすなわち伴奏の再生音量(ボリューム)を大きくしまたは小さくするためのキーである。
【0019】
曲選択/ピッチ制御キー23は、2つのスイッチからなり、曲番号をインクリメントしまたはデクリメントするために利用されるとともに、プレイヤの音程に合わせてカラオケのピッチ周波数すなわち音程をたとえば1度ずつ上下させるために利用される。エコーモード選択キー21は、エコーモードにおいてエコー時間(遅延時間)を選択的に設定するために利用される。
【0020】
ボイスエフェクトモード選択キー27は、ボイスエフェクトモード1、ボイスエフェクトモード2およびボイスエフェクトモード3を設定する。ボイスエフェクトモード1は、入力音声の周波数に対し出力音声の周波数が高くなるように音声を加工するモードであり、ボイスエフェクトモード2は、入力音声の周波数に対して出力音声の周波数が低くなるように音声を加工するモードである。さらに、ボイスエフェクトモード3は、上下に連続的にかつ繰り返し出力音声の周波数が変化(スイープ)するように音声を加工するモードである。
【0021】
キャンセルキー19は、テンポ制御キー17で設定したテンポ、ボリューム制御キー15で設定した伴奏ボリューム、曲選択/ピッチ制御キー23で設定した曲番号およびピッチ、エコーモード選択キー21で設定したエコーモード、またはボイスエフェクトモード選択キー27で設定したボイスエフェクトモードをキャンセルするためのキーである。このキャンセルキー19は、演奏中の曲を中断するためにも用いられる。
【0022】
決定キー25は、テンポ制御キー17で設定したテンポ、ボリューム制御キー15で設定した伴奏ボリューム、曲選択/ピッチ制御キー23で設定した曲番号およびピッチ、エコーモード選択キー21で設定したエコーモード、またはボイスエフェクトモード選択キー27で設定したボイスエフェクトモードを決定し有効化するためのキーである。
【0023】
マイク一体型カラオケ装置1には、LED(light emitting diode)14が内蔵されており、電源がオンのときに点灯し、オフのとき消灯する。また、ライトモードにおいて、USBケーブル5を介してPC3と通信している時は、LED14は点滅する。
【0024】
図2(b)に示すように、マイク一体型カラオケ装置1の背面には、スロット16が形成され、このスロット16に設けられた後述のコネクタ76に、メモリカートリッジ2が着脱自在に装着される。マイク一体型カラオケ装置1は電池駆動のものであり、背面に電池ボックス20が設けられる。
【0025】
図2(c)に示すように、マイク一体型カラオケ装置1の右側面には、スライド式のモード選択スイッチ29、及びUSBポート31が設けられる。USBポート31には、USBケーブル5が接続される。モード選択スイッチ29は、電源スイッチを兼ねており、中央に位置したときが電源オフ、一方端に位置したときが電源オン及びカラオケモードへのエントリ、他方端に位置したときが電源オン及びライトモードへのエントリである。
【0026】
図3は、図1のマイク一体型カラオケ装置1の電気的構成を示す図である。図3に示すように、このマイク一体型カラオケ装置1は、プロセッサ51、ROM(以下、「本体ROM」と呼ぶ。)53、バス55、マイクロフォン11、モード選択スイッチ29、セレクタ61、キーマトリクス回路63、USBコントローラ65、アンプ67,71、ミキサ69、オーディオ信号出力端子73、及びビデオ信号出力端子75を含む。
【0027】
プロセッサ51は、図示しないが、CPU(central processing unit)、グラフィックプロセッサ、サウンドプロセッサ、およびDMAプロセッサ等の各種プロセッサを含むとともに、アナログ信号を取り込むときに用いられるA/D変換器や、キー操作信号や赤外線信号のような入力信号を受けかつ出力信号を外部機器に与える入出力制御回路を含む。CPUは、入力信号に応じて必要な演算を実行し、その結果をグラフィックプロセッサやサウンドプロセッサ等に与える。したがって、グラフィックプロセッサやサウンドプロセッサはその演算結果に応じた画像処理や音声処理を実行する。
【0028】
このプロセッサ51にはバス55が接続されていて、このバス55には、プロセッサ51とともに基板(図示せず)に設けられている本体ROM53およびメモリカートリッジ2に内蔵されるOTPROM(one time programmable ROM:以下、「カートリッジROM」と呼ぶ。)77が結合される。したがって、プロセッサ51は、バス55を通して本体ROM53およびカートリッジROM77にアクセスでき、そこからプログラムやデータを取り出したり、カートリッジROM77に書き込むことができる。
【0029】
モード選択スイッチ29は、カラオケモードが選択されたときは、ハイ(high)レベルのモード選択信号MSをプロセッサ51のI/Oポート(入出力ポート)及びセレクタ61に与え、ライトモードが選択されたときは、ロー(low)レベルのモード選択信号MSをプロセッサ51のI/Oポート及びセレクタ61に与える。これにより、プロセッサ51は、動作モードに応じたプログラムを実行する。
【0030】
セレクタ61は、メモリカートリッジ2の装着/未装着および動作モードに応じて、信号線(ライン)の接続を切り替える。この点は、後で詳述する。キーマトリクス回路63は、2つのスイッチからなるテンポ制御キー17、2つのスイッチからなるボリューム制御キー15、キャンセルキー19、エコーモード選択キー21、2つのスイッチからなる曲選択/ピッチ制御キー23、ボイスエフェクトモード選択キー27、及び決定キー25、つまり、10個のスイッチを含み、キーマトリクスを構成している。キースキャンのための5つの入力信号は、プロセッサ51のI/Oポートからキーマトリクス回路63に与えられ、2つの出力信号は、キーマトリクス回路63からプロセッサ51のI/Oポートに与えられる。
【0031】
カラオケモードでは次の処理が実行される。マイクロフォン11からの音声信号は、アンプ67を通してプロセッサ51のアナログ入力ポート及びミキサ69に与えられる。プロセッサ51のサウンドプロセッサで処理された結果であるアナログオーディオ信号は、ミキサ62に与えられ、アンプ67を介したマイクロフォン11からの音声信号とミキシングされ、アンプ71を介して、オーディオ信号出力端子73に出力される。また、プロセッサ51のグラフィックプロセッサで処理された結果であるアナログビデオ信号は、ビデオ信号出力端子75に出力される。オーディオ信号出力端子73及びビデオ信号出力端子75に、A/Vケーブル9が接続され、オーディオ信号及びビデオ信号がテレビジョンモニタ7に与えられる。
【0032】
ライトモードでは次の処理が実行される。USBコントローラ65は、USBケーブル5を介して、PC3と通信して、PC3からカラオケデータを取得する。USBコントローラ56は、I/Oポートを介して、プロセッサ51により制御される。プロセッサ51は、USBコントローラ65が取得したカラオケデータをI/Oポート介して受け取り、バス55を介して、これらをカートリッジROM77に書き込む。なお、PC3は、ネットワーク4に接続され、ネットワーク4に接続されたサーバ(図示せず)から、カラオケデータをダウンロードする。
【0033】
ここで、本体ROM53およびカートリッジROM77に格納されたプログラムおよびデータについて説明する。本体ROM53には、ブートプログラムBP1、警告メッセージ表示プログラムNP1,NP2、カラオケ画像データ、カラオケ音楽データ、書き込み制御プログラム、及びUSB制御プログラムが記憶される。
【0034】
ブートプログラムBP1は、ライトモード時およびメモリカートリッジ2が装着されていないカラオケモード時に、システムのブートを行うプログラムである。警告メッセージ表示プログラムNP1は、メモリカートリッジ2が装着されていない状態でカラオケモードが選択されているときに実行され、これによって警告メッセージがテレビジョンモニタ7に表示される。カラオケ画像データおよびカラオケ音楽データは、メモリカートリッジ2に記憶されたいずれの曲にも共通して用いられるデータである。カラオケ画像データは、タイトル画面データ、基本背景画面データ、フレームおよびアイコンデータならびにフォントデータからなり、カラオケ音楽データは、基本音源データからなる。
【0035】
警告メッセージ表示プログラムNP2は、メモリカートリッジ2が装着されていない状態あるいはマイク一体型カラオケ装置1とPC3とがUSBケーブル5により接続されていない状態で、ライトモードが選択されているときに実行され、これによって警告メッセージがテレビジョンモニタ7に表示される。
【0036】
USB制御プログラムは、ライトモードにおいて、コマンドを与えて、USBコントローラ65を制御するプログラムである。書き込み制御プログラムは、ライトモードにおいて、USBコントローラ65がPC3から取得したカラオケデータをカートリッジROM77に書き込むためのプログラムである。
【0037】
なお、ブートプログラムBP1は、動作モード(カラオケモード、ライトモード)に応じて、警告メッセージ表示プログラムNP1、あるいは、警告メッセージ表示プログラムNP1、USB制御プログラム、及び書き込み制御プログラムを起動する。
【0038】
カートリッジROM77には、複数のバンクから構成されるブランクエリア及び既書込みエリアが存在する。
【0039】
ブランクエリアは、ユーザによるメモリカートリッジ2の購入時(工場からの出荷時)には、何もデータが書き込まれていない領域である。原則として、1つのバンクに、1曲分のカラオケデータが書き込まれる。ただし、所定数のバンクに、1曲分のカラオケデータを書き込むこともできる。このように、バンク単位で、カラオケデータが書き込まれる。また、カートリッジROM77は、OTPROMであるため、未格納状態のバンクにのみ、カラオケデータを書き込むことができる。つまり、一旦、あるバンクに、カラオケデータが書き込まれた後は、そのバンクへの再度の書込みはできない。さらに、言い換えると、一度限りの書き込みが可能である。
【0040】
既書き込みエリアには、ユーザによるメモリカートリッジ2の購入時(出荷時)に既に、ブートプログラムBP2、カラオケプログラム、共通データ、当該メモリカートリッジ2の識別情報(ID)、書き込み可能曲数の情報、状態テーブル、カートリッジ容量、及びカートリッジ名、が書き込まれている。
【0041】
ブートプログラムBP2は、メモリカートリッジ2が装着されているカラオケモード時にシステムのブートを行うプログラムである。カラオケプログラムは、メモリカートリッジ2が装着されているカラオケモード時に実行され、シーケンス制御、映像表示制御、A/D変換および音声加工、並びに音楽再生制御などの処理を行うプログラムである。共通データは、楽曲の種類に関係なく共通に使用される画像データ及び音楽データ等である。
【0042】
カートリッジ名は、メモリカートリッジ2の種別を判断するために付けられる。メモリカートリッジ2には、カラオケ用のものもあれば、ゲーム用のものもあり、その他の用途のものも存在しうる。これらを区別するために、メモリカートリッジ2には、カートリッジ名が格納される。状態テーブルは、複数の状態フラグを含み、この状態フラグは、バンクごとに設けられる。この状態フラグは、対応するバンクの書き込み状態を示す。書き込み状態としては、「未使用(空)」、「書き込み途中」、「書き込み正常」、及び、「書き込み不正常」の4つの状態がある。
【0043】
ブランクエリアを構成する各バンクには、カラオケデータ及びインデックス情報が書き込まれる。カラオケデータは、背景画像データ、曲名画像データ、歌詞データ、及び、楽譜データなどからなる。インデックス情報は、バンクに書き込まれた背景画像データ、曲名画像データ、歌詞データ、及び、楽譜データ、の格納位置情報などである。なお、本実施の形態では、ブランクエリアなる名称を用いているが、カラオケデータ等が書き込まれた後は、もちろんブランクではない。
【0044】
カートリッジROM77に格納されたカラオケデータや共通データなど、及び本体ROM53に格納されたカラオケ画像データやカラオケ音楽データなどは、カラオケプログラムによる処理に用いられる。
【0045】
次に、セレクタ61の詳細を説明する。
【0046】
図4は、カラオケモードにおいてメモリカートリッジ2が装着されていないときのプロセッサ51と本体ROM53との接続状態を示す図解図である。なお、破線で示したカートリッジROM77は、メモリカートリッジ2が装着されていない状態を示している。
【0047】
図4に示すように、プロセッサ51のCE1出力ポートに接続されたラインL1は、セレクタ61のポートa2及びb2に接続される。プロセッサ51のCE2出力ポートに接続されたラインL2は、コネクタ側端子761bに接続される。
【0048】
セレクタ61のポートa1及びb1に接続されたラインL3は、コネクタ側端子762bに接続される。セレクタ61のポートA1及びB2に接続されたラインL4は、コネクタ側端子763bに接続される。セレクタ61のポートA2及びB1に接続されたラインL5は、本体ROM53のCE入力ポートに接続される。
【0049】
カートリッジROM77のCE入力ポートに接続されたラインL8は、メモリカートリッジ2の装着時において、コネクタ側端子763bに接続される。プロセッサ51のWE出力ポートに接続されたラインL6は、本体ROM53のWE入力ポート、及びメモリカートリッジ2装着時のカートリッジROM77のWE入力ポートに接続される。プロセッサ51のOE出力ポートに接続されたラインL7は、本体ROM53のOE入力ポート、及びメモリカートリッジ2装着時のカートリッジROM77のOE入力ポートに接続される。
【0050】
セレクタ61は、モード選択スイッチ29からのモード選択信号MSがカラオケモードを示している場合は、ポートb1とB1、ポートb2とB2、ポートb3とB3、ポートb4とB4を接続し、ポートa1とA1、ポートa2とA2、ポートa3とA3、ポートa4とA4を切り離す(図4及び図5)。一方、セレクタ61は、モード選択信号MSがライトモードを示している場合は、ポートa1とA1、ポートa2とA2、ポートa3とA3、ポートa4とA4を接続し、ポートb1とB1、ポートb2とB2、ポートb3とB3、ポートb4とB4を切り離す(図6及び図7)。
【0051】
図4に示すように、カラオケモードにおいてメモリカートリッジ2が装着されていない場合は、スイッチSW1がオフ、スイッチSW2がオンになり、ラインL1とラインL4とラインL3とラインL5とが接続されるため、CE1出力ポートから出力されるチップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が未装着のときは、モード選択スイッチ29によりカラオケモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、OE出力ポートから出力するアウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1及び警告メッセージ表示プログラムNP1を実行する。
【0052】
図5は、カラオケモードにおいてメモリカートリッジ2が装着されているときのプロセッサ51と本体ROM53とカートリッジROM77との接続状態を示す図解図である。図5に示すように、カラオケモードにおいてメモリカートリッジ2が装着されている場合は、スイッチSW1がオン、スイッチSW2がオフになり、ラインL1とラインL4とラインL8とが接続されるため、チップイネーブル信号CE1は、カートリッジROM77のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、モード選択スイッチ29によりカラオケモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、カートリッジROM77からプログラムやデータを読み出し、ブートプログラムBP2及びカラオケプログラムを実行する。
【0053】
一方、ラインL2とラインL3とラインL5とが接続されるため、CE2出力ポートから出力されるチップイネーブル信号CE2は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、プロセッサ51は、チップイネーブル信号CE2をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からデータを読み出すことができる。
【0054】
図6は、ライトモードにおいてメモリカートリッジ2が装着されていないときのプロセッサ51と本体ROM53との接続状態を示す図解図である。なお、破線で示したカートリッジROM77は、メモリカートリッジ2が装着されていない状態を示している。
図6に示すように、ライトモードにおいてメモリカートリッジ2が装着されていない場合は、スイッチSW1がオフ、スイッチSW2がオンになり、ラインL1とラインL5とが接続されるため、チップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されていないときは、モード選択スイッチ29によりライトモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1及び警告メッセージ表示プログラムNP2を実行する。
【0055】
図7は、ライトモードにおいてメモリカートリッジ2が装着されているときのプロセッサ51と本体ROM53とカートリッジROM77との接続状態を示す図解図である。図7に示すように、ライトモードにおいてメモリカートリッジ2が装着されている場合は、スイッチSW1がオン、スイッチSW2がオフになり、ラインL1とラインL5とが接続されるため、チップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、モード選択スイッチ29によりライトモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1、書き込み制御プログラム、USB制御プログラム、及び警告メッセージ表示プログラムNP2を実行する。
【0056】
一方、ラインL2とラインL3とラインL4とラインL8とが接続されるため、CE2出力ポートから出力されるチップイネーブル信号CE2は、カートリッジROM77のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、プロセッサ51は、チップイネーブル信号CE2をアクティブにし、かつ、ライトイネーブル信号WEをアクティブにして、カートリッジROM77の空きバンクに、カラオケデータを書き込むことができる。
【0057】
図8は、マイク一体型カラオケ装置1のスロット16に設けられたコネクタ76及びメモリカートリッジ2の形状を示す外観図である。図9は、コネクタ76及びメモリカートリッジ2の形状を示す図解図である。
【0058】
図8及び図9に示すように、メモリカートリッジ2の下面側ハウジング86aには基板86bが固着され、基板86bの表面には、幅方向にわたって複数のカートリッジ側端子86c,86c,…が形成される。このうち、基板86bの幅方向中央に位置する2つのカートリッジ側端子861cおよび862cは互いに接続され、スイッチSW1をなす。
【0059】
一方、コネクタ76には、下側ハウジング86aおよび基板86bの先端を挿入するための横長の挿入部76aが形成され、挿入部76aの内側には、幅方向にわたって複数のコネクタ側端子76b,76b,…が形成される。図9から分かるように、各々のコネクタ側端子76bは、長さ方向の適宜の位置で上側ハウジング76cに密着し、この位置で固定されている。コネクタ側端子76bは上側ハウジング76cから挿入部76aに向かって屈曲し、再度上側ハウジング76cに向かって屈曲する。挿入部76aの上方には矩形状の開口部が幅方向にわたって複数形成され、各々のコネクタ側端子76bの一方端は、これらの開口部から露出する。
【0060】
コネクタ76の幅方向中央の適宜の位置には2つの開口部を跨ぐように金属片が設けられ、この金属片がスイッチSW2をなす。この2つの開口部から露出する2つのコネクタ側端子762bおよび763bは、外力が与えられないとき(つまり、メモリカートリッジ2が装着されていないとき)、このスイッチSW2によって電気的に接続される。
【0061】
下面側ハウジング86aおよび基板86bの先端部が挿入部76aに挿入されると、各々のコネクタ側端子76bが下側ハウジング86aおよび基板86bによって持ち上げられ、基板86b上の各々のカートリッジ側端子86cと接触する。このとき、コネクタ側端子761bおよび762bはスイッチSW1と接触し、これによってコネクタ側端子761bおよび762bが短絡される。一方、コネクタ側端子762bおよび763bはスイッチSW2から離れ、これによってコネクタ側端子762bおよび763bが開放される。なお、コネクタ側端子762bおよび763bにはカートリッジ側端子862cおよび863cが接触するが、カートリッジ側端子862cおよび863cはいずれも開放されており、コネクタ側端子762bおよび763bが短絡されることはない。
【0062】
次に、アドレス空間のマッピング状態を説明する。
【0063】
図10は、図3のプロセッサ51から見たアドレス空間の図解図である。図10に示すように、チップイネーブル信号CE1およびCE2は、互いに異なるアドレス値に対応して出力される。つまり、上位8ビットのアドレス値が”00h”〜”3Fh”のいずれかを示し、かつ下位16ビットのアドレス値が”FFFFh”〜”8000h”のいずれかを示すとき、あるいは上位8ビットのアドレス値が”80h”〜”BFh”のいずれかを示すときは、チップイネーブル信号CE1がアクティブにされる。一方、上位8ビットのアドレス値が”60h”〜”7Fh”のいずれかを示し、かつ下位16ビットのアドレス値が”FFFFh”〜”8000h”のいずれかを示すとき、あるいは上位8ビットのアドレス値が”E0h”〜”FFh”のいずれかを示すときは、チップイネーブル信号CE2がアクティブにされる。
【0064】
図11は、カラオケモードにおいてメモリカートリッジ2が装着されていないときのアドレス空間のマッピング状態を示す図解図である。図11に示すように、カラオケモードにおいてメモリカートリッジ2が装着されていないときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されていないときは、プロセッサ51のCE1出力ポートは本体ROM53のCE入力ポートに接続されるからである(図4参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE1により活性化されるからである。
【0065】
プロセッサ51は、電源が投入されると、上位8ビットが”00h”のアドレスからアクセスを開始する。具体的には、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP1は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、カラオケモードにおいてメモリカートリッジ2が装着されていない状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0066】
図12は、カラオケモードにおいてメモリカートリッジ2が装着されているときのアドレス空間のマッピング状態を示す図解図である。図12に示すように、カラオケモードにおいてメモリカートリッジ2が装着されているときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、カートリッジROM77が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE1出力ポートはカートリッジROM77のCE入力ポートに接続されるからである(図5参照)。つまり、この場合、カートリッジROM77は、チップイネーブル信号CE1により活性化されるからである。
【0067】
また、上位8ビットが”60h”〜”7Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”E0h”〜”FFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE2は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE2出力ポートは本体ROM53のCE入力ポートに接続されるからである(図5参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE2により活性化されるからである。
【0068】
上記のように、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP2は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、カラオケモードにおいてメモリカートリッジ2が装着されている状態で電源が投入されたときは、ブートプログラムBP2が最初に実行される。
【0069】
以上のように、カラオケモードにおいて、メモリカートリッジ2が装着されていないときと装着されているときとでプロセッサ51から見たアドレス空間のマッピング状態を異ならせるようにしたため、メモリカートリッジ2の着脱状態に応じて、本体ROM53およびカートリッジROM77に記憶された各々のプログラムを適切に起動させることができる。
【0070】
図13は、ライトモードにおいてメモリカートリッジ2が装着されているときのアドレス空間のマッピング状態を示す図解図である。図13に示すように、ライトモードにおいてメモリカートリッジ2が装着されているときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、ライトモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE1出力ポートは本体ROM53のCE入力ポートに接続されるからである(図7参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE1により活性化されるからである。
【0071】
また、上位8ビットが”60h”〜”7Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”E0h”〜”FFh”を示し、かつ下位16ビットが狽eFFFh煤`”0000h”を示すアドレス空間に、カートリッジROM77が配置される。なぜなら、チップイネーブル信号CE2は、アドレスが上記した値のときにアクティブにされるところ、ライトモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE2出力ポートはカートリッジROM77のCE入力ポートに接続されるからである(図7参照)。つまり、この場合、カートリッジROM77は、チップイネーブル信号CE2により活性化されるからである。
【0072】
上記のように、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP1は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、ライトモードにおいてメモリカートリッジ2が装着されている状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0073】
以上のことから明らかなように、メモリカートリッジ2が装着されている場合でも、動作モード(カラオケモード、ライトモード)に応じて、本体ROM53およびカートリッジROM77に記憶された各々のプログラムを適切に起動させることができる。
【0074】
さて一方、ライトモードにおいてメモリカートリッジ2が装着されていないときは、本体ROM53は、チップイネーブル信号CE1により活性化されるため(図6参照)、本体ROM53は、図11と同じ配置となる。プロセッサ51は上位8ビットが”00h”のアドレスからアクセスを開始するため、ライトモードにおいてメモリカートリッジ2が装着されていない状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0075】
次に、プロセッサ51のI/Oポートの数が不足した場合の対処方法を説明する。
【0076】
図14は、カラオケモードにおけるプロセッサ51とキーマトリクス回路63とUSBコントローラ65との接続状態を示す図解図である。図14に示すように、キーマトリクス回路63の一方の出力信号を伝達するラインL9は、セレクタ61のポートb3に接続される。キーマトリクス回路63の他方の出力信号を伝達するラインL10は、ポートb4に接続される。ポートB3に接続されたラインL11は、プロセッサ51のI/Oポート及びセレクタ61のポートa3に接続される。ポートB4に接続されたラインL12は、プロセッサ51のI/Oポートに接続される。ポートA3に接続されたラインL13は、USBコントローラ65のCS入力ポートに接続される。他のラインL1〜L8の接続関係及びセレクタ61の動作は、図4と同じである。
【0077】
カラオケモードにおいてメモリカートリッジ2が装着されている場合、セレクタ61により、ラインL9とラインL11とが接続されるとともに、ラインl0とラインL12とが接続される。従って、カラオケモードでは、プロセッサ51は、I/Oポートを介して、キーマトリクス回路63からの2つの出力信号を受け取ることができる。
【0078】
図15は、ライトモードにおけるプロセッサ51とキーマトリクス回路63とUSBコントローラ65との接続状態を示す図解図である。図15に示すように、ライトモードにおいてメモリカートリッジ2が装着されている場合、セレクタ61により、ラインL9とラインL11とが非接続にされるとともに、ラインl0とラインL12とが非接続状態にされる。従って、ライトモードでは、プロセッサ51のI/Oポートには、キーマトリクス回路63からの2つの出力信号は入力されない。一方、セレクタ61により、ラインL13とラインL11とが接続される。従って、プロセッサ51は、ラインL11に接続されたI/Oポートを介して、USBコントローラ65に、チップセレクト信号CSを与え、USBコントローラ65を活性化することができる。
【0079】
以上のように、プロセッサ51のI/Oポートに接続されるラインL11の接続先を、カラオケモードとライトモードとで切り替えることにより、I/Oポートの不足を解消できる。つまり、ラインL11が接続されたI/Oポートを、キーマトリクス回路63の一方の出力信号と、USBコントローラ65に与えるチップセレクト信号CSと、で共用することで、I/Oポートの不足を解消できる。
【0080】
さて、以上のように、本実施の形態によれば、メモリカートリッジ2が未装着の場合、本体ROM53は図11のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP1が最初に実行される。また、カラオケモードにおいてメモリカートリッジ2が装着されている場合、カートリッジROM77は図12のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP2が最初に実行される。以上のように、メモリカートリッジ2を装着したときと装着しないときとで異なるプログラムを起動できる。
【0081】
さらに、ライトモードにおいてメモリカートリッジ2が装着されている場合、本体ROM53は図13のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP1が最初に実行される。従って、メモリカートリッジ2を装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【0082】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種々の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【0083】
(1)上記では、メモリカートリッジ2にOTPROM77を内蔵した。ただし、メモリカートリッジ2に内蔵するメモリは、OTPROMに限られない。例えば、フラッシュメモリを内蔵することもできる。
【0084】
(2)マイク一体型カラオケ装置1は、オートパワーオフ機能(例えば、15分間無操作で電源オフ)を有しているが、USBコントローラ65が、PC3の電源で動作しているときは、オートパワーオフ機能は実行されない。
【0085】
(3)上記では、カートリッジROM77には、カラオケプログラムが予め格納されており、カラオケデータだけを書き込んだが、書き込み対象は、データに限らずプログラムも含まれる。また、カートリッジROM77への書き込み対象は、カラオケに関するものに限らず、ゲームプログラムやゲームデータなど、特に限定されない。
【0086】
(4)上記では、USBコントローラ65、プロセッサ51、及びバス55を経由して、カラオケデータをカートリッジROM77に書き込んだ。このような経路ではなく、DMAコントローラを設け、DMAコントローラ及びUSBコントローラ65をバス55に接続して、プロセッサ51を介さずに、DMAコントローラにより、USBコントローラ65が取得したカラオケデータを、カートリッジROM77に書き込むこともできる。
【0087】
(5)上記では、本体ROM53に、警告メッセージ表示プログラムNP2、書き込み制御プログラム、及びUSB制御プログラムを格納した。ただし、これらのプログラムを、カートリッジROM77の既書込みエリアに格納してもよい。この場合は、ライドモードにおいて、メモリカートリッジ2が装着されていないときは、図11に示したように本体ROM53が配置される。従って、接続関係は図4のようになる。一方、ライドモードにおいて、メモリカートリッジ2が装着されているときは、図12に示したように本体ROM53及びカートリッジROM77が配置される。従って、接続関係は図5のようになる。
【図面の簡単な説明】
【0088】
【図1】(a)本発明の実施の形態による情報処理装置としてのマイク一体型カラオケ装置によるライトモードにおけるパーソナルコンピュータとの接続状態を示す図。(b)同マイク一体型カラオケ装置によるカラオケモードにおけるテレビジョンモニタとの接続状態を示す図。
【図2】(a)同マイク一体型カラオケ装置の正面図。(b)同マイク一体型カラオケ装置の背面図。(c)同マイク一体型カラオケ装置の右側面図。
【図3】同マイク一体型カラオケ装置の電気的構成を示す図。
【図4】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されていないときのプロセッサと本体ROMとの接続状態を示す図解図。
【図5】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されているときのプロセッサと本体ROMとカートリッジROMとの接続状態を示す図解図。
【図6】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されていないときのプロセッサと本体ROMとの接続状態を示す図解図。
【図7】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されているときのプロセッサと本体ROMとカートリッジROMとの接続状態を示す図解図。
【図8】同マイク一体型カラオケ装置のコネクタ及びメモリカートリッジの形状を示す外観図。
【図9】同マイク一体型カラオケ装置のコネクタ及びメモリカートリッジの形状を示す図解図。
【図10】同マイク一体型カラオケ装置に搭載されたプロセッサから見たアドレス空間の図解図。
【図11】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されていないときのアドレス空間のマッピング状態を示す図解図。
【図12】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されているときのアドレス空間のマッピング状態を示す図解図。
【図13】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されているときのアドレス空間のマッピング状態を示す図解図。
【図14】同マイク一体型カラオケ装置のカラオケモードにおけるプロセッサとキーマトリクス回路とUSBコントローラとの接続状態を示す図解図。
【図15】同マイク一体型カラオケ装置のライトモードにおけるプロセッサとキーマトリクス回路とUSBコントローラとの接続状態を示す図解図。
【符号の説明】
【0089】
1…マイク一体型カラオケ装置、2…メモリカートリッジ、3…パーソナルコンピュータ、4…ネットワーク、5…USBケーブル、7…テレビジョンモニタ、9…A/Vケーブル、29…モード選択スイッチ、51…プロセッサ、53…ROM(本体ROM)、61…セレクタ、63…キーマトリクス回路、65…USBコントローラ、77…OTPROM(カートリッジROM)。
【技術分野】
【0001】
本発明は、装着されたメモリカートリッジに格納されたプログラムを処理する情報処理装置及びその関連技術に関する。
【背景技術】
【0002】
特許文献1には、マイク一体型カラオケ装置が開示されている。このマイク一体型カラオケ装置に内蔵されたROM(read only memory)には警告メッセージ表示プログラムが記憶され、マイク一体型カラオケ装置に着脱されるメモリカートリッジにはカラオケプログラムが記憶される。メモリカートリッジが装着されていないときは、警告メッセージ表示プログラムが第1の態様でアドレス空間にマッピングされ、電源投入時に、この警告メッセージ表示プログラムが起動される。一方、メモリカートリッジが装着されているときは、警告メッセージ表示プログラムおよびカラオケプログラムが第2の態様でアドレス空間にマッピングされ、電源投入時に、カラオケプログラムが起動される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動することができる。
【0003】
【特許文献1】特開2002−132509号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
この従来技術は、メモリカートリッジが装着された場合に、メモリカートリッジのROMからカラオケプログラムやカラオケデータを読み込むことだけを想定した技術である。このように、メモリカートリッジを装着したときの動作モードは1つ、つまり、メモリカートリッジからリードして実行するモードのみである。
【0005】
ところが、マイク一体型カラオケ装置により、メモリカートリッジにカラオケプログラムやカラオケデータを書き込むことを想定することもできる。この場合、動作モードは2つ、つまり、上記のモードに加えて、メモリカートリッジにライトするモードがある。
【0006】
そこで、本発明の目的は、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できることに加えて、装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる情報処理装置及びその関連技術を提供することである。
【課題を解決するための手段】
【0007】
本発明の第1の観点によれば、情報処理装置は、第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、前記第1ブートプログラムを格納した第1のメモリと、前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、を備え、前記メモリカートリッジが前記コネクタに装着されていない場合は、前記第1のメモリが前記第1領域に配置され、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1のメモリが前記アドレス空間の第2領域に配置されるとともに、前記第2のメモリが前記第1領域に配置され、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1のメモリが前記第1領域に配置されるとともに、前記第2のメモリが前記第2領域に配置される。
【0008】
この構成によれば、メモリカートリッジが未装着の場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。また、第1動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第2ブートプログラムが最初に実行される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できる。
【0009】
さらに、第2動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。従って、メモリカートリッジを装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【0010】
本発明の第2の観点によれば、情報処理装置は、第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、前記第1ブートプログラムを格納した第1のメモリと、前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、前記メモリカートリッジが前記コネクタに装着されていない場合は、前記プロセッサからの第1イネーブル信号を伝達する第1の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1の信号線を前記第2のメモリに接続するとともに、前記プロセッサからの第2イネーブル信号を伝達する第2の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1の信号線を前記第1のメモリに接続するとともに、前記第2の信号線を前記第2のメモリに接続する接続機構と、を備え、前記プロセッサは、アドレスが前記第1領域を示す場合に、前記第1イネーブル信号をアクティブにし、アドレスが前記アドレス空間の第2領域を示す場合に、前記第2イネーブル信号をアクティブにする。
【0011】
この構成によれば、メモリカートリッジが未装着の場合は、第1イネーブル信号を伝達する第1の信号線が第1のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、メモリカートリッジが未装着の場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。また、第1動作モードにおいてメモリカートリッジが装着されている場合は、第1イネーブル信号を伝達する第1の信号線が第2のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、第1動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第2ブートプログラムが最初に実行される。以上のように、メモリカートリッジを装着したときと装着しないときとで異なるプログラムを起動できる。
【0012】
さらに、第2動作モードにおいてメモリカートリッジが装着されている場合は、第1イネーブル信号を伝達する第1の信号線が第1のメモリに接続される。そして、第1イネーブル信号は、アドレスが第1領域を示す場合にアクティブにされる。このため、第2動作モードにおいてメモリカートリッジが装着されている場合、第1領域にマッピングされる第1ブートプログラムが最初に実行される。従って、メモリカートリッジを装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。また、16進数の表現に関しては、10進数と区別するために数字の末尾に「h」を付けて表記する。
【0014】
図1(a)は、本発明の実施の形態による情報処理装置としてのマイク一体型カラオケ装置1によるライトモードにおけるパーソナルコンピュータ(以下、「PC」と呼ぶ。)3との接続状態を示す図である。図1(b)は、マイク一体型カラオケ装置1によるカラオケモードにおけるテレビジョンモニタ7との接続状態を示す図である。
【0015】
図1(a)に示すように、マイク一体型カラオケ装置1と、PC3と、をUSB(universal serial bus)ケーブル5で接続する。ライトモードでは、マイク一体型カラオケ装置1は、PC3からUSBケーブル5を介して送信されたカラオケデータを、装着されたメモリカートリッジ2に書き込む。カラオケデータは、例えば、PC3が、後述のネットワーク4からダウンロードしたものである。
【0016】
図1(b)に示すように、マイク一体型カラオケ装置1と、テレビジョンモニタ7と、をA/V(audio/video)ケーブル9で接続する。カラオケモードでは、マイク一体型カラオケ装置1は、装着されたメモリカートリッジ2に格納されたカラオケプログラムを実行して、カラオケデータに基づくビデオ信号及びオーディオ信号を生成して、A/Vケーブル9により、テレビジョンモニタ7に与える。その結果、テレビジョンモニタ7には、カラオケのための映像(背景及び歌詞など)が表示され、テレビジョンモニタ7のスピーカ(図示せず)からは、音声(歌声及び伴奏など)が出力される。
【0017】
図2(a)はマイク一体型カラオケ装置1の正面図、図2(b)は背面図、図2(c)は右側面図である。図2(a)に示すように、マイク一体型カラオケ装置1の上端部にはマイクロフォン11が設けられる。また、マイク一体型カラオケ装置1の正面には、リセットスイッチ13、テンポ制御キー17、ボリューム制御キー15、キャンセルキー19、エコーモード選択キー21、曲選択/ピッチ制御キー23、ボイスエフェクトモード選択キー27、及び決定キー25が設けられる。
【0018】
リセットスイッチ13は、選択した曲番号を含むすべてをリセットするためのものである。テンポ制御キー17は、2つのスイッチからなり、カラオケすなわち伴奏の再生速度(テンポ)を速くしまたは遅くするためのキーである。ボリューム制御キー15は、2つのスイッチからなり、カラオケすなわち伴奏の再生音量(ボリューム)を大きくしまたは小さくするためのキーである。
【0019】
曲選択/ピッチ制御キー23は、2つのスイッチからなり、曲番号をインクリメントしまたはデクリメントするために利用されるとともに、プレイヤの音程に合わせてカラオケのピッチ周波数すなわち音程をたとえば1度ずつ上下させるために利用される。エコーモード選択キー21は、エコーモードにおいてエコー時間(遅延時間)を選択的に設定するために利用される。
【0020】
ボイスエフェクトモード選択キー27は、ボイスエフェクトモード1、ボイスエフェクトモード2およびボイスエフェクトモード3を設定する。ボイスエフェクトモード1は、入力音声の周波数に対し出力音声の周波数が高くなるように音声を加工するモードであり、ボイスエフェクトモード2は、入力音声の周波数に対して出力音声の周波数が低くなるように音声を加工するモードである。さらに、ボイスエフェクトモード3は、上下に連続的にかつ繰り返し出力音声の周波数が変化(スイープ)するように音声を加工するモードである。
【0021】
キャンセルキー19は、テンポ制御キー17で設定したテンポ、ボリューム制御キー15で設定した伴奏ボリューム、曲選択/ピッチ制御キー23で設定した曲番号およびピッチ、エコーモード選択キー21で設定したエコーモード、またはボイスエフェクトモード選択キー27で設定したボイスエフェクトモードをキャンセルするためのキーである。このキャンセルキー19は、演奏中の曲を中断するためにも用いられる。
【0022】
決定キー25は、テンポ制御キー17で設定したテンポ、ボリューム制御キー15で設定した伴奏ボリューム、曲選択/ピッチ制御キー23で設定した曲番号およびピッチ、エコーモード選択キー21で設定したエコーモード、またはボイスエフェクトモード選択キー27で設定したボイスエフェクトモードを決定し有効化するためのキーである。
【0023】
マイク一体型カラオケ装置1には、LED(light emitting diode)14が内蔵されており、電源がオンのときに点灯し、オフのとき消灯する。また、ライトモードにおいて、USBケーブル5を介してPC3と通信している時は、LED14は点滅する。
【0024】
図2(b)に示すように、マイク一体型カラオケ装置1の背面には、スロット16が形成され、このスロット16に設けられた後述のコネクタ76に、メモリカートリッジ2が着脱自在に装着される。マイク一体型カラオケ装置1は電池駆動のものであり、背面に電池ボックス20が設けられる。
【0025】
図2(c)に示すように、マイク一体型カラオケ装置1の右側面には、スライド式のモード選択スイッチ29、及びUSBポート31が設けられる。USBポート31には、USBケーブル5が接続される。モード選択スイッチ29は、電源スイッチを兼ねており、中央に位置したときが電源オフ、一方端に位置したときが電源オン及びカラオケモードへのエントリ、他方端に位置したときが電源オン及びライトモードへのエントリである。
【0026】
図3は、図1のマイク一体型カラオケ装置1の電気的構成を示す図である。図3に示すように、このマイク一体型カラオケ装置1は、プロセッサ51、ROM(以下、「本体ROM」と呼ぶ。)53、バス55、マイクロフォン11、モード選択スイッチ29、セレクタ61、キーマトリクス回路63、USBコントローラ65、アンプ67,71、ミキサ69、オーディオ信号出力端子73、及びビデオ信号出力端子75を含む。
【0027】
プロセッサ51は、図示しないが、CPU(central processing unit)、グラフィックプロセッサ、サウンドプロセッサ、およびDMAプロセッサ等の各種プロセッサを含むとともに、アナログ信号を取り込むときに用いられるA/D変換器や、キー操作信号や赤外線信号のような入力信号を受けかつ出力信号を外部機器に与える入出力制御回路を含む。CPUは、入力信号に応じて必要な演算を実行し、その結果をグラフィックプロセッサやサウンドプロセッサ等に与える。したがって、グラフィックプロセッサやサウンドプロセッサはその演算結果に応じた画像処理や音声処理を実行する。
【0028】
このプロセッサ51にはバス55が接続されていて、このバス55には、プロセッサ51とともに基板(図示せず)に設けられている本体ROM53およびメモリカートリッジ2に内蔵されるOTPROM(one time programmable ROM:以下、「カートリッジROM」と呼ぶ。)77が結合される。したがって、プロセッサ51は、バス55を通して本体ROM53およびカートリッジROM77にアクセスでき、そこからプログラムやデータを取り出したり、カートリッジROM77に書き込むことができる。
【0029】
モード選択スイッチ29は、カラオケモードが選択されたときは、ハイ(high)レベルのモード選択信号MSをプロセッサ51のI/Oポート(入出力ポート)及びセレクタ61に与え、ライトモードが選択されたときは、ロー(low)レベルのモード選択信号MSをプロセッサ51のI/Oポート及びセレクタ61に与える。これにより、プロセッサ51は、動作モードに応じたプログラムを実行する。
【0030】
セレクタ61は、メモリカートリッジ2の装着/未装着および動作モードに応じて、信号線(ライン)の接続を切り替える。この点は、後で詳述する。キーマトリクス回路63は、2つのスイッチからなるテンポ制御キー17、2つのスイッチからなるボリューム制御キー15、キャンセルキー19、エコーモード選択キー21、2つのスイッチからなる曲選択/ピッチ制御キー23、ボイスエフェクトモード選択キー27、及び決定キー25、つまり、10個のスイッチを含み、キーマトリクスを構成している。キースキャンのための5つの入力信号は、プロセッサ51のI/Oポートからキーマトリクス回路63に与えられ、2つの出力信号は、キーマトリクス回路63からプロセッサ51のI/Oポートに与えられる。
【0031】
カラオケモードでは次の処理が実行される。マイクロフォン11からの音声信号は、アンプ67を通してプロセッサ51のアナログ入力ポート及びミキサ69に与えられる。プロセッサ51のサウンドプロセッサで処理された結果であるアナログオーディオ信号は、ミキサ62に与えられ、アンプ67を介したマイクロフォン11からの音声信号とミキシングされ、アンプ71を介して、オーディオ信号出力端子73に出力される。また、プロセッサ51のグラフィックプロセッサで処理された結果であるアナログビデオ信号は、ビデオ信号出力端子75に出力される。オーディオ信号出力端子73及びビデオ信号出力端子75に、A/Vケーブル9が接続され、オーディオ信号及びビデオ信号がテレビジョンモニタ7に与えられる。
【0032】
ライトモードでは次の処理が実行される。USBコントローラ65は、USBケーブル5を介して、PC3と通信して、PC3からカラオケデータを取得する。USBコントローラ56は、I/Oポートを介して、プロセッサ51により制御される。プロセッサ51は、USBコントローラ65が取得したカラオケデータをI/Oポート介して受け取り、バス55を介して、これらをカートリッジROM77に書き込む。なお、PC3は、ネットワーク4に接続され、ネットワーク4に接続されたサーバ(図示せず)から、カラオケデータをダウンロードする。
【0033】
ここで、本体ROM53およびカートリッジROM77に格納されたプログラムおよびデータについて説明する。本体ROM53には、ブートプログラムBP1、警告メッセージ表示プログラムNP1,NP2、カラオケ画像データ、カラオケ音楽データ、書き込み制御プログラム、及びUSB制御プログラムが記憶される。
【0034】
ブートプログラムBP1は、ライトモード時およびメモリカートリッジ2が装着されていないカラオケモード時に、システムのブートを行うプログラムである。警告メッセージ表示プログラムNP1は、メモリカートリッジ2が装着されていない状態でカラオケモードが選択されているときに実行され、これによって警告メッセージがテレビジョンモニタ7に表示される。カラオケ画像データおよびカラオケ音楽データは、メモリカートリッジ2に記憶されたいずれの曲にも共通して用いられるデータである。カラオケ画像データは、タイトル画面データ、基本背景画面データ、フレームおよびアイコンデータならびにフォントデータからなり、カラオケ音楽データは、基本音源データからなる。
【0035】
警告メッセージ表示プログラムNP2は、メモリカートリッジ2が装着されていない状態あるいはマイク一体型カラオケ装置1とPC3とがUSBケーブル5により接続されていない状態で、ライトモードが選択されているときに実行され、これによって警告メッセージがテレビジョンモニタ7に表示される。
【0036】
USB制御プログラムは、ライトモードにおいて、コマンドを与えて、USBコントローラ65を制御するプログラムである。書き込み制御プログラムは、ライトモードにおいて、USBコントローラ65がPC3から取得したカラオケデータをカートリッジROM77に書き込むためのプログラムである。
【0037】
なお、ブートプログラムBP1は、動作モード(カラオケモード、ライトモード)に応じて、警告メッセージ表示プログラムNP1、あるいは、警告メッセージ表示プログラムNP1、USB制御プログラム、及び書き込み制御プログラムを起動する。
【0038】
カートリッジROM77には、複数のバンクから構成されるブランクエリア及び既書込みエリアが存在する。
【0039】
ブランクエリアは、ユーザによるメモリカートリッジ2の購入時(工場からの出荷時)には、何もデータが書き込まれていない領域である。原則として、1つのバンクに、1曲分のカラオケデータが書き込まれる。ただし、所定数のバンクに、1曲分のカラオケデータを書き込むこともできる。このように、バンク単位で、カラオケデータが書き込まれる。また、カートリッジROM77は、OTPROMであるため、未格納状態のバンクにのみ、カラオケデータを書き込むことができる。つまり、一旦、あるバンクに、カラオケデータが書き込まれた後は、そのバンクへの再度の書込みはできない。さらに、言い換えると、一度限りの書き込みが可能である。
【0040】
既書き込みエリアには、ユーザによるメモリカートリッジ2の購入時(出荷時)に既に、ブートプログラムBP2、カラオケプログラム、共通データ、当該メモリカートリッジ2の識別情報(ID)、書き込み可能曲数の情報、状態テーブル、カートリッジ容量、及びカートリッジ名、が書き込まれている。
【0041】
ブートプログラムBP2は、メモリカートリッジ2が装着されているカラオケモード時にシステムのブートを行うプログラムである。カラオケプログラムは、メモリカートリッジ2が装着されているカラオケモード時に実行され、シーケンス制御、映像表示制御、A/D変換および音声加工、並びに音楽再生制御などの処理を行うプログラムである。共通データは、楽曲の種類に関係なく共通に使用される画像データ及び音楽データ等である。
【0042】
カートリッジ名は、メモリカートリッジ2の種別を判断するために付けられる。メモリカートリッジ2には、カラオケ用のものもあれば、ゲーム用のものもあり、その他の用途のものも存在しうる。これらを区別するために、メモリカートリッジ2には、カートリッジ名が格納される。状態テーブルは、複数の状態フラグを含み、この状態フラグは、バンクごとに設けられる。この状態フラグは、対応するバンクの書き込み状態を示す。書き込み状態としては、「未使用(空)」、「書き込み途中」、「書き込み正常」、及び、「書き込み不正常」の4つの状態がある。
【0043】
ブランクエリアを構成する各バンクには、カラオケデータ及びインデックス情報が書き込まれる。カラオケデータは、背景画像データ、曲名画像データ、歌詞データ、及び、楽譜データなどからなる。インデックス情報は、バンクに書き込まれた背景画像データ、曲名画像データ、歌詞データ、及び、楽譜データ、の格納位置情報などである。なお、本実施の形態では、ブランクエリアなる名称を用いているが、カラオケデータ等が書き込まれた後は、もちろんブランクではない。
【0044】
カートリッジROM77に格納されたカラオケデータや共通データなど、及び本体ROM53に格納されたカラオケ画像データやカラオケ音楽データなどは、カラオケプログラムによる処理に用いられる。
【0045】
次に、セレクタ61の詳細を説明する。
【0046】
図4は、カラオケモードにおいてメモリカートリッジ2が装着されていないときのプロセッサ51と本体ROM53との接続状態を示す図解図である。なお、破線で示したカートリッジROM77は、メモリカートリッジ2が装着されていない状態を示している。
【0047】
図4に示すように、プロセッサ51のCE1出力ポートに接続されたラインL1は、セレクタ61のポートa2及びb2に接続される。プロセッサ51のCE2出力ポートに接続されたラインL2は、コネクタ側端子761bに接続される。
【0048】
セレクタ61のポートa1及びb1に接続されたラインL3は、コネクタ側端子762bに接続される。セレクタ61のポートA1及びB2に接続されたラインL4は、コネクタ側端子763bに接続される。セレクタ61のポートA2及びB1に接続されたラインL5は、本体ROM53のCE入力ポートに接続される。
【0049】
カートリッジROM77のCE入力ポートに接続されたラインL8は、メモリカートリッジ2の装着時において、コネクタ側端子763bに接続される。プロセッサ51のWE出力ポートに接続されたラインL6は、本体ROM53のWE入力ポート、及びメモリカートリッジ2装着時のカートリッジROM77のWE入力ポートに接続される。プロセッサ51のOE出力ポートに接続されたラインL7は、本体ROM53のOE入力ポート、及びメモリカートリッジ2装着時のカートリッジROM77のOE入力ポートに接続される。
【0050】
セレクタ61は、モード選択スイッチ29からのモード選択信号MSがカラオケモードを示している場合は、ポートb1とB1、ポートb2とB2、ポートb3とB3、ポートb4とB4を接続し、ポートa1とA1、ポートa2とA2、ポートa3とA3、ポートa4とA4を切り離す(図4及び図5)。一方、セレクタ61は、モード選択信号MSがライトモードを示している場合は、ポートa1とA1、ポートa2とA2、ポートa3とA3、ポートa4とA4を接続し、ポートb1とB1、ポートb2とB2、ポートb3とB3、ポートb4とB4を切り離す(図6及び図7)。
【0051】
図4に示すように、カラオケモードにおいてメモリカートリッジ2が装着されていない場合は、スイッチSW1がオフ、スイッチSW2がオンになり、ラインL1とラインL4とラインL3とラインL5とが接続されるため、CE1出力ポートから出力されるチップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が未装着のときは、モード選択スイッチ29によりカラオケモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、OE出力ポートから出力するアウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1及び警告メッセージ表示プログラムNP1を実行する。
【0052】
図5は、カラオケモードにおいてメモリカートリッジ2が装着されているときのプロセッサ51と本体ROM53とカートリッジROM77との接続状態を示す図解図である。図5に示すように、カラオケモードにおいてメモリカートリッジ2が装着されている場合は、スイッチSW1がオン、スイッチSW2がオフになり、ラインL1とラインL4とラインL8とが接続されるため、チップイネーブル信号CE1は、カートリッジROM77のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、モード選択スイッチ29によりカラオケモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、カートリッジROM77からプログラムやデータを読み出し、ブートプログラムBP2及びカラオケプログラムを実行する。
【0053】
一方、ラインL2とラインL3とラインL5とが接続されるため、CE2出力ポートから出力されるチップイネーブル信号CE2は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、プロセッサ51は、チップイネーブル信号CE2をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からデータを読み出すことができる。
【0054】
図6は、ライトモードにおいてメモリカートリッジ2が装着されていないときのプロセッサ51と本体ROM53との接続状態を示す図解図である。なお、破線で示したカートリッジROM77は、メモリカートリッジ2が装着されていない状態を示している。
図6に示すように、ライトモードにおいてメモリカートリッジ2が装着されていない場合は、スイッチSW1がオフ、スイッチSW2がオンになり、ラインL1とラインL5とが接続されるため、チップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されていないときは、モード選択スイッチ29によりライトモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1及び警告メッセージ表示プログラムNP2を実行する。
【0055】
図7は、ライトモードにおいてメモリカートリッジ2が装着されているときのプロセッサ51と本体ROM53とカートリッジROM77との接続状態を示す図解図である。図7に示すように、ライトモードにおいてメモリカートリッジ2が装着されている場合は、スイッチSW1がオン、スイッチSW2がオフになり、ラインL1とラインL5とが接続されるため、チップイネーブル信号CE1は、本体ROM53のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、モード選択スイッチ29によりライトモードが選択され電源がオンされると、プロセッサ51は、チップイネーブル信号CE1をアクティブにし、かつ、アウトプットイネーブル信号OEをアクティブにして、本体ROM53からプログラムやデータを読み出し、ブートプログラムBP1、書き込み制御プログラム、USB制御プログラム、及び警告メッセージ表示プログラムNP2を実行する。
【0056】
一方、ラインL2とラインL3とラインL4とラインL8とが接続されるため、CE2出力ポートから出力されるチップイネーブル信号CE2は、カートリッジROM77のCE入力ポートに与えられる。従って、メモリカートリッジ2が装着されているときは、プロセッサ51は、チップイネーブル信号CE2をアクティブにし、かつ、ライトイネーブル信号WEをアクティブにして、カートリッジROM77の空きバンクに、カラオケデータを書き込むことができる。
【0057】
図8は、マイク一体型カラオケ装置1のスロット16に設けられたコネクタ76及びメモリカートリッジ2の形状を示す外観図である。図9は、コネクタ76及びメモリカートリッジ2の形状を示す図解図である。
【0058】
図8及び図9に示すように、メモリカートリッジ2の下面側ハウジング86aには基板86bが固着され、基板86bの表面には、幅方向にわたって複数のカートリッジ側端子86c,86c,…が形成される。このうち、基板86bの幅方向中央に位置する2つのカートリッジ側端子861cおよび862cは互いに接続され、スイッチSW1をなす。
【0059】
一方、コネクタ76には、下側ハウジング86aおよび基板86bの先端を挿入するための横長の挿入部76aが形成され、挿入部76aの内側には、幅方向にわたって複数のコネクタ側端子76b,76b,…が形成される。図9から分かるように、各々のコネクタ側端子76bは、長さ方向の適宜の位置で上側ハウジング76cに密着し、この位置で固定されている。コネクタ側端子76bは上側ハウジング76cから挿入部76aに向かって屈曲し、再度上側ハウジング76cに向かって屈曲する。挿入部76aの上方には矩形状の開口部が幅方向にわたって複数形成され、各々のコネクタ側端子76bの一方端は、これらの開口部から露出する。
【0060】
コネクタ76の幅方向中央の適宜の位置には2つの開口部を跨ぐように金属片が設けられ、この金属片がスイッチSW2をなす。この2つの開口部から露出する2つのコネクタ側端子762bおよび763bは、外力が与えられないとき(つまり、メモリカートリッジ2が装着されていないとき)、このスイッチSW2によって電気的に接続される。
【0061】
下面側ハウジング86aおよび基板86bの先端部が挿入部76aに挿入されると、各々のコネクタ側端子76bが下側ハウジング86aおよび基板86bによって持ち上げられ、基板86b上の各々のカートリッジ側端子86cと接触する。このとき、コネクタ側端子761bおよび762bはスイッチSW1と接触し、これによってコネクタ側端子761bおよび762bが短絡される。一方、コネクタ側端子762bおよび763bはスイッチSW2から離れ、これによってコネクタ側端子762bおよび763bが開放される。なお、コネクタ側端子762bおよび763bにはカートリッジ側端子862cおよび863cが接触するが、カートリッジ側端子862cおよび863cはいずれも開放されており、コネクタ側端子762bおよび763bが短絡されることはない。
【0062】
次に、アドレス空間のマッピング状態を説明する。
【0063】
図10は、図3のプロセッサ51から見たアドレス空間の図解図である。図10に示すように、チップイネーブル信号CE1およびCE2は、互いに異なるアドレス値に対応して出力される。つまり、上位8ビットのアドレス値が”00h”〜”3Fh”のいずれかを示し、かつ下位16ビットのアドレス値が”FFFFh”〜”8000h”のいずれかを示すとき、あるいは上位8ビットのアドレス値が”80h”〜”BFh”のいずれかを示すときは、チップイネーブル信号CE1がアクティブにされる。一方、上位8ビットのアドレス値が”60h”〜”7Fh”のいずれかを示し、かつ下位16ビットのアドレス値が”FFFFh”〜”8000h”のいずれかを示すとき、あるいは上位8ビットのアドレス値が”E0h”〜”FFh”のいずれかを示すときは、チップイネーブル信号CE2がアクティブにされる。
【0064】
図11は、カラオケモードにおいてメモリカートリッジ2が装着されていないときのアドレス空間のマッピング状態を示す図解図である。図11に示すように、カラオケモードにおいてメモリカートリッジ2が装着されていないときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されていないときは、プロセッサ51のCE1出力ポートは本体ROM53のCE入力ポートに接続されるからである(図4参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE1により活性化されるからである。
【0065】
プロセッサ51は、電源が投入されると、上位8ビットが”00h”のアドレスからアクセスを開始する。具体的には、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP1は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、カラオケモードにおいてメモリカートリッジ2が装着されていない状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0066】
図12は、カラオケモードにおいてメモリカートリッジ2が装着されているときのアドレス空間のマッピング状態を示す図解図である。図12に示すように、カラオケモードにおいてメモリカートリッジ2が装着されているときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、カートリッジROM77が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE1出力ポートはカートリッジROM77のCE入力ポートに接続されるからである(図5参照)。つまり、この場合、カートリッジROM77は、チップイネーブル信号CE1により活性化されるからである。
【0067】
また、上位8ビットが”60h”〜”7Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”E0h”〜”FFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE2は、アドレスが上記した値のときにアクティブにされるところ、カラオケモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE2出力ポートは本体ROM53のCE入力ポートに接続されるからである(図5参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE2により活性化されるからである。
【0068】
上記のように、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP2は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、カラオケモードにおいてメモリカートリッジ2が装着されている状態で電源が投入されたときは、ブートプログラムBP2が最初に実行される。
【0069】
以上のように、カラオケモードにおいて、メモリカートリッジ2が装着されていないときと装着されているときとでプロセッサ51から見たアドレス空間のマッピング状態を異ならせるようにしたため、メモリカートリッジ2の着脱状態に応じて、本体ROM53およびカートリッジROM77に記憶された各々のプログラムを適切に起動させることができる。
【0070】
図13は、ライトモードにおいてメモリカートリッジ2が装着されているときのアドレス空間のマッピング状態を示す図解図である。図13に示すように、ライトモードにおいてメモリカートリッジ2が装着されているときは、上位8ビットが”00h”〜”3Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”80h”〜”BFh”を示し、かつ下位16ビットが”FFFFh”〜”0000h”を示すアドレス空間に、本体ROM53が配置される。なぜなら、チップイネーブル信号CE1は、アドレスが上記した値のときにアクティブにされるところ、ライトモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE1出力ポートは本体ROM53のCE入力ポートに接続されるからである(図7参照)。つまり、この場合、本体ROM53は、チップイネーブル信号CE1により活性化されるからである。
【0071】
また、上位8ビットが”60h”〜”7Fh”を示し、かつ下位16ビットが”FFFFh”〜”8000h”を示すアドレス空間、及び、上位8ビットが”E0h”〜”FFh”を示し、かつ下位16ビットが狽eFFFh煤`”0000h”を示すアドレス空間に、カートリッジROM77が配置される。なぜなら、チップイネーブル信号CE2は、アドレスが上記した値のときにアクティブにされるところ、ライトモードにおいてメモリカートリッジ2が装着されているときは、プロセッサ51のCE2出力ポートはカートリッジROM77のCE入力ポートに接続されるからである(図7参照)。つまり、この場合、カートリッジROM77は、チップイネーブル信号CE2により活性化されるからである。
【0072】
上記のように、プロセッサ51は、電源が投入されると、アドレス”00FFFC”,”00FFFD”にアクセスして、その2バイトにより示される位置にマッピングされたプログラムを実行する。ブートプログラムBP1は、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされているため、ライトモードにおいてメモリカートリッジ2が装着されている状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0073】
以上のことから明らかなように、メモリカートリッジ2が装着されている場合でも、動作モード(カラオケモード、ライトモード)に応じて、本体ROM53およびカートリッジROM77に記憶された各々のプログラムを適切に起動させることができる。
【0074】
さて一方、ライトモードにおいてメモリカートリッジ2が装着されていないときは、本体ROM53は、チップイネーブル信号CE1により活性化されるため(図6参照)、本体ROM53は、図11と同じ配置となる。プロセッサ51は上位8ビットが”00h”のアドレスからアクセスを開始するため、ライトモードにおいてメモリカートリッジ2が装着されていない状態で電源が投入されたときは、ブートプログラムBP1が最初に実行される。
【0075】
次に、プロセッサ51のI/Oポートの数が不足した場合の対処方法を説明する。
【0076】
図14は、カラオケモードにおけるプロセッサ51とキーマトリクス回路63とUSBコントローラ65との接続状態を示す図解図である。図14に示すように、キーマトリクス回路63の一方の出力信号を伝達するラインL9は、セレクタ61のポートb3に接続される。キーマトリクス回路63の他方の出力信号を伝達するラインL10は、ポートb4に接続される。ポートB3に接続されたラインL11は、プロセッサ51のI/Oポート及びセレクタ61のポートa3に接続される。ポートB4に接続されたラインL12は、プロセッサ51のI/Oポートに接続される。ポートA3に接続されたラインL13は、USBコントローラ65のCS入力ポートに接続される。他のラインL1〜L8の接続関係及びセレクタ61の動作は、図4と同じである。
【0077】
カラオケモードにおいてメモリカートリッジ2が装着されている場合、セレクタ61により、ラインL9とラインL11とが接続されるとともに、ラインl0とラインL12とが接続される。従って、カラオケモードでは、プロセッサ51は、I/Oポートを介して、キーマトリクス回路63からの2つの出力信号を受け取ることができる。
【0078】
図15は、ライトモードにおけるプロセッサ51とキーマトリクス回路63とUSBコントローラ65との接続状態を示す図解図である。図15に示すように、ライトモードにおいてメモリカートリッジ2が装着されている場合、セレクタ61により、ラインL9とラインL11とが非接続にされるとともに、ラインl0とラインL12とが非接続状態にされる。従って、ライトモードでは、プロセッサ51のI/Oポートには、キーマトリクス回路63からの2つの出力信号は入力されない。一方、セレクタ61により、ラインL13とラインL11とが接続される。従って、プロセッサ51は、ラインL11に接続されたI/Oポートを介して、USBコントローラ65に、チップセレクト信号CSを与え、USBコントローラ65を活性化することができる。
【0079】
以上のように、プロセッサ51のI/Oポートに接続されるラインL11の接続先を、カラオケモードとライトモードとで切り替えることにより、I/Oポートの不足を解消できる。つまり、ラインL11が接続されたI/Oポートを、キーマトリクス回路63の一方の出力信号と、USBコントローラ65に与えるチップセレクト信号CSと、で共用することで、I/Oポートの不足を解消できる。
【0080】
さて、以上のように、本実施の形態によれば、メモリカートリッジ2が未装着の場合、本体ROM53は図11のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP1が最初に実行される。また、カラオケモードにおいてメモリカートリッジ2が装着されている場合、カートリッジROM77は図12のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP2が最初に実行される。以上のように、メモリカートリッジ2を装着したときと装着しないときとで異なるプログラムを起動できる。
【0081】
さらに、ライトモードにおいてメモリカートリッジ2が装着されている場合、本体ROM53は図13のように配置され、アドレス”00FFFC”,”00FFFD”の2バイトにより示される位置にマッピングされたブートプログラムBP1が最初に実行される。従って、メモリカートリッジ2を装着した場合であっても、動作モードに応じて、異なるプログラムを起動できる。
【0082】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種々の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【0083】
(1)上記では、メモリカートリッジ2にOTPROM77を内蔵した。ただし、メモリカートリッジ2に内蔵するメモリは、OTPROMに限られない。例えば、フラッシュメモリを内蔵することもできる。
【0084】
(2)マイク一体型カラオケ装置1は、オートパワーオフ機能(例えば、15分間無操作で電源オフ)を有しているが、USBコントローラ65が、PC3の電源で動作しているときは、オートパワーオフ機能は実行されない。
【0085】
(3)上記では、カートリッジROM77には、カラオケプログラムが予め格納されており、カラオケデータだけを書き込んだが、書き込み対象は、データに限らずプログラムも含まれる。また、カートリッジROM77への書き込み対象は、カラオケに関するものに限らず、ゲームプログラムやゲームデータなど、特に限定されない。
【0086】
(4)上記では、USBコントローラ65、プロセッサ51、及びバス55を経由して、カラオケデータをカートリッジROM77に書き込んだ。このような経路ではなく、DMAコントローラを設け、DMAコントローラ及びUSBコントローラ65をバス55に接続して、プロセッサ51を介さずに、DMAコントローラにより、USBコントローラ65が取得したカラオケデータを、カートリッジROM77に書き込むこともできる。
【0087】
(5)上記では、本体ROM53に、警告メッセージ表示プログラムNP2、書き込み制御プログラム、及びUSB制御プログラムを格納した。ただし、これらのプログラムを、カートリッジROM77の既書込みエリアに格納してもよい。この場合は、ライドモードにおいて、メモリカートリッジ2が装着されていないときは、図11に示したように本体ROM53が配置される。従って、接続関係は図4のようになる。一方、ライドモードにおいて、メモリカートリッジ2が装着されているときは、図12に示したように本体ROM53及びカートリッジROM77が配置される。従って、接続関係は図5のようになる。
【図面の簡単な説明】
【0088】
【図1】(a)本発明の実施の形態による情報処理装置としてのマイク一体型カラオケ装置によるライトモードにおけるパーソナルコンピュータとの接続状態を示す図。(b)同マイク一体型カラオケ装置によるカラオケモードにおけるテレビジョンモニタとの接続状態を示す図。
【図2】(a)同マイク一体型カラオケ装置の正面図。(b)同マイク一体型カラオケ装置の背面図。(c)同マイク一体型カラオケ装置の右側面図。
【図3】同マイク一体型カラオケ装置の電気的構成を示す図。
【図4】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されていないときのプロセッサと本体ROMとの接続状態を示す図解図。
【図5】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されているときのプロセッサと本体ROMとカートリッジROMとの接続状態を示す図解図。
【図6】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されていないときのプロセッサと本体ROMとの接続状態を示す図解図。
【図7】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されているときのプロセッサと本体ROMとカートリッジROMとの接続状態を示す図解図。
【図8】同マイク一体型カラオケ装置のコネクタ及びメモリカートリッジの形状を示す外観図。
【図9】同マイク一体型カラオケ装置のコネクタ及びメモリカートリッジの形状を示す図解図。
【図10】同マイク一体型カラオケ装置に搭載されたプロセッサから見たアドレス空間の図解図。
【図11】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されていないときのアドレス空間のマッピング状態を示す図解図。
【図12】同マイク一体型カラオケ装置のカラオケモードにおいてメモリカートリッジが装着されているときのアドレス空間のマッピング状態を示す図解図。
【図13】同マイク一体型カラオケ装置のライトモードにおいてメモリカートリッジが装着されているときのアドレス空間のマッピング状態を示す図解図。
【図14】同マイク一体型カラオケ装置のカラオケモードにおけるプロセッサとキーマトリクス回路とUSBコントローラとの接続状態を示す図解図。
【図15】同マイク一体型カラオケ装置のライトモードにおけるプロセッサとキーマトリクス回路とUSBコントローラとの接続状態を示す図解図。
【符号の説明】
【0089】
1…マイク一体型カラオケ装置、2…メモリカートリッジ、3…パーソナルコンピュータ、4…ネットワーク、5…USBケーブル、7…テレビジョンモニタ、9…A/Vケーブル、29…モード選択スイッチ、51…プロセッサ、53…ROM(本体ROM)、61…セレクタ、63…キーマトリクス回路、65…USBコントローラ、77…OTPROM(カートリッジROM)。
【特許請求の範囲】
【請求項1】
第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、
前記第1ブートプログラムを格納した第1のメモリと、
前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、を備え、
前記メモリカートリッジが前記コネクタに装着されていない場合は、前記第1のメモリが前記第1領域に配置され、
前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1のメモリが前記アドレス空間の第2領域に配置されるとともに、前記第2のメモリが前記第1領域に配置され、
前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1のメモリが前記第1領域に配置されるとともに、前記第2のメモリが前記第2領域に配置される、情報処理装置。
【請求項2】
第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、
前記第1ブートプログラムを格納した第1のメモリと、
前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、
前記メモリカートリッジが前記コネクタに装着されていない場合は、前記プロセッサからの第1イネーブル信号を伝達する第1の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1の信号線を前記第2のメモリに接続するとともに、前記プロセッサからの第2イネーブル信号を伝達する第2の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1の信号線を前記第1のメモリに接続するとともに、前記第2の信号線を前記第2のメモリに接続する接続機構と、を備え、
前記プロセッサは、アドレスが前記第1領域を示す場合に、前記第1イネーブル信号をアクティブにし、アドレスが前記アドレス空間の第2領域を示す場合に、前記第2イネーブル信号をアクティブにする、情報処理装置。
【請求項3】
前記第1動作モードは、前記第2のメモリからプログラム及び/又はデータをリードするモードであり、前記第2動作モードは、前記第2のメモリにプログラム及び/又はデータをライトするモードである、請求項1又は2記載の情報処理装置。
【請求項1】
第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、
前記第1ブートプログラムを格納した第1のメモリと、
前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、を備え、
前記メモリカートリッジが前記コネクタに装着されていない場合は、前記第1のメモリが前記第1領域に配置され、
前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1のメモリが前記アドレス空間の第2領域に配置されるとともに、前記第2のメモリが前記第1領域に配置され、
前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1のメモリが前記第1領域に配置されるとともに、前記第2のメモリが前記第2領域に配置される、情報処理装置。
【請求項2】
第1ブートプログラム及び第2ブートプログラムのうち、アドレス空間の第1領域にマッピングされたプログラムを電源投入時に実行するプロセッサと、
前記第1ブートプログラムを格納した第1のメモリと、
前記第2ブートプログラムを格納した第2のメモリを内蔵したメモリカートリッジが装着されるコネクタと、
前記メモリカートリッジが前記コネクタに装着されていない場合は、前記プロセッサからの第1イネーブル信号を伝達する第1の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第1動作モードが選択されている場合は、前記第1の信号線を前記第2のメモリに接続するとともに、前記プロセッサからの第2イネーブル信号を伝達する第2の信号線を前記第1のメモリに接続し、前記メモリカートリッジが前記コネクタに装着されており、かつ、第2動作モードが選択されている場合は、前記第1の信号線を前記第1のメモリに接続するとともに、前記第2の信号線を前記第2のメモリに接続する接続機構と、を備え、
前記プロセッサは、アドレスが前記第1領域を示す場合に、前記第1イネーブル信号をアクティブにし、アドレスが前記アドレス空間の第2領域を示す場合に、前記第2イネーブル信号をアクティブにする、情報処理装置。
【請求項3】
前記第1動作モードは、前記第2のメモリからプログラム及び/又はデータをリードするモードであり、前記第2動作モードは、前記第2のメモリにプログラム及び/又はデータをライトするモードである、請求項1又は2記載の情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2006−79244(P2006−79244A)
【公開日】平成18年3月23日(2006.3.23)
【国際特許分類】
【出願番号】特願2004−260779(P2004−260779)
【出願日】平成16年9月8日(2004.9.8)
【出願人】(396025861)新世代株式会社 (138)
【Fターム(参考)】
【公開日】平成18年3月23日(2006.3.23)
【国際特許分類】
【出願日】平成16年9月8日(2004.9.8)
【出願人】(396025861)新世代株式会社 (138)
【Fターム(参考)】
[ Back to top ]