(57)【特許請求の範囲】
【請求項１】
カートリッジと、前記カートリッジを着脱可能に取り付けられる情報処理端末とを備える情報処理システムであって、
前記カートリッジは、第１のプログラムを記録する記録手段を含み、
前記第１のプログラムをデコードするデコーダをさらに備え、
前記情報処理端末は、前記第１のプログラムが前記デコーダによってデコードされたプログラムである第２のプログラムを実行する実行手段を含み、
一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にする処理を実行する無効処理手段をさらに備え、
前記第２のプログラムは、前記実行手段に、前記一定時間ごとに、前記無効処理手段による前記デコーダの無効を回避させる第３のプログラムを含む、情報処理システム。
【請求項２】
前記デコーダおよび前記無効処理手段は、前記情報処理端末に設けられる、請求項１に記載の情報処理システム。
【請求項３】
前記デコーダおよび前記無効処理手段は、前記カートリッジに設けられる、請求項１に記載の情報処理システム。
【請求項４】
前記情報処理端末は、メモリとコンパイラをさらに備え、
前記コンパイラは、前記第２のプログラムを前記メモリに展開し、
前記情報処理端末は、
前記カートリッジが取り付けられているか否かを検出する検出手段と、
前記検出手段が前記カートリッジが取り付けられている状態から取り外された状態となったことを検出した場合に、前記メモリに展開された前記第２のプログラムの中の少なくとも前記第３のプログラムを消去する消去手段とを含む、請求項１〜請求項３のいずれかに記載の情報処理システム。
【請求項５】
カートリッジを着脱可能に取り付けられる情報処理端末であって、
前記カートリッジは、第１のプログラムを記録する記録手段を備え、
前記第１のプログラムがデコーダによってデコードされたプログラムである第２のプログラムを実行する実行手段と、
一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にするための処理を実行する無効処理手段とを備え、
前記実行手段は、前記第２のプログラムを実行することにより、前記一定時間ごとに、前記無効処理手段による前記デコーダの無効を回避するための処理を実行する、情報処理端末。
【請求項６】
前記デコーダをさらに備える、請求項５に記載の情報処理端末。
【請求項７】
情報処理端末に着脱可能に取り付けられるカートリッジであって、
第１のプログラムを記録する記録手段を備え、
前記第１のプログラムがデコーダによってデコードされた第２のプログラムは、一定時間ごとに、前記デコーダの無効を回避するための処理を前記情報処理端末に実行させる命令を含み、
前記一定時間ごとに、前記デコーダを、当該一定時間より長い特定時間後に無効にする処理を実行する無効処理手段をさらに備える、カートリッジ。
【請求項８】
前記デコーダをさらに備える、請求項７に記載のカートリッジ。
【請求項９】
第１のプログラムを記録する記録手段を含むカートリッジと、前記カートリッジを着脱可能に取り付けられる情報処理端末とを備える情報処理システムにおけるプログラム実行方法であって、
前記情報処理端末は、メモリ、コンパイラ、およびプログラムを実行する実行手段とを含み、
前記コンパイラが、前記第１のプログラムをデコードされたコードを第２のプログラムとして前記メモリに展開するステップと、
前記プログラム実行手段が、前記第２のプログラムを実行するステップと、
前記プログラム実行手段が、一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にするための処理を実行するステップとを備え、
前記第２のプログラムを実行するステップは、前記一定時間ごとに前記デコーダの無効を回避するための処理を実行するステップを含む、プログラム実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カートリッジに記録されたプログラムの実行に関し、特に、カートリッジに記録されたプログラムの不正コピーを抑制するための情報処理システム、情報処理端末、カートリッジ、および、プログラム実行方法に関する。
【背景技術】
【０００２】
近年、各種の情報端末機器の発達から、ゲーム機用メモリカートリッジや映像用ストレージメモリ、音楽用ストレージ、メモリカード、ＩＣ（Integrated Circuit）カード等の記憶装置が市場において大量に流通している。このような記憶装置には、著作権で保護されるべき情報や、個人のプライバシーに係る情報など、第三者による無断の読出しや複製が好ましくないデータが含まれている場合も多い。このため、従来から、記憶装置からの情報の読出しや複製を規制するため、当該記憶装置を制御する周辺機器に対し、セキュリティ回路やダミーデータを発生させる回路を組込む技術が種々提案されてきた。
【０００３】
たとえば、特開昭５９−１５２５９９号公報（特許文献１）では、図１１に記載されたような回路を含む装置が開示されている。
【０００４】
図１１を参照して、当該装置には、インターフェイス回路１００１、セキュリティ回路１００２、および比較回路１００４が備えられており、記憶装置１００３に記憶されているデータは、セキュリティ回路１００２およびインターフェイス回路１００１を介して読み込まれる。そして、当該装置では、外部からパスワードが入力されると、当該パスワードが比較回路１００４へ入力される。一方、インターフェース回路１００１では、予め設定されたパスワードが固定的に記憶され、当該パスワードが比較回路１００４へ入力される。そして、比較回路１００４では、外部から入力されたパスワードとインターフェース回路１００１から入力されたパスワードの比較が行なわれる。そして、両者が一致すれば、比較回路１００４は、セキュリティ解除信号をセキュリティ回路１００２に入力する。
【特許文献１】特開昭５９−１５２５９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記したような従来の技術において、たとえば特許文献１に開示された技術では、プログラムデータのコピーをパスワードにより管理することができる。
【０００６】
しかしながら、上記した従来の技術では、不正なプログラムデータのコピーが試みられた場合、そのようなコピー動作は、禁止されるため、完了しない。このため、当該不正なコピーを試みた者は、コピー動作の実行が不成功に終わったことを即座に認識してしまう。したがって、上記した従来の技術では、その者に、システム内のデータ構造の解読等の次策を講じる動機付けを与えてしまう。
【０００７】
本発明は、かかる実情に鑑み考え出されたものであり、その目的は、不正なコピー動作を確実に抑制する、情報処理システム、情報処理端末、カートリッジ、および、プログラム実行方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明に従った情報処理システムは、カートリッジと、前記カートリッジを着脱可能に取り付けられる情報処理端末とを備える情報処理システムであって、前記カートリッジは、第１のプログラムを記録する記録手段を含み、前記第１のプログラムをデコードするデコーダをさらに備え、前記情報処理端末は、前記第１のプログラムが前記デコーダによってデコードされたプログラムである第２のプログラムを実行する実行手段を含み、一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にする処理を実行する無効処理手段をさらに備え、前記第２のプログラムは、前記実行手段に、前記一定時間ごとに、前記無効処理手段による前記デコーダの無効を回避させる第３のプログラムを含むことを特徴とする。
【０００９】
また、本発明の情報処理システムでは、前記デコーダおよび前記無効処理手段は、前記情報処理端末に設けられることが好ましい。
【００１０】
また、本発明の情報処理システムでは、前記デコーダおよび前記無効処理手段は、前記カートリッジに設けられることが好ましい。
【００１１】
また、本発明の情報処理システムでは、前記情報処理端末は、メモリとコンパイラをさらに備え、前記コンパイラは、前記第２のプログラムを前記メモリに展開し、前記情報処理端末は、前記カートリッジが取り付けられているか否かを検出する検出手段と、前記検出手段が前記カートリッジが取り付けられている状態から取り外された状態となったことを検出した場合に、前記メモリに展開された前記第２のプログラムの中の少なくとも前記第３のプログラムを消去する消去手段とを含むことが好ましい。
【００１２】
本発明に従った情報処理端末は、カートリッジを着脱可能に取り付けられる情報処理端末であって、前記カートリッジは、第１のプログラムを記録する記録手段を備え、前記第１のプログラムがデコーダによってデコードされたプログラムである第２のプログラムを実行する実行手段と、一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にするための処理を実行する無効処理手段とを備え、前記実行手段は、前記第２のプログラムを実行することにより、前記一定時間ごとに、前記無効処理手段による前記デコーダの無効を回避するための処理を実行することを特徴とする。
【００１３】
また、本発明の情報処理端末は、前記デコーダをさらに備えることが好ましい。
本発明に従ったカートリッジは、報処理端末に着脱可能に取り付けられるカートリッジであって、第１のプログラムを記録する記録手段を備え、前記第１のプログラムがデコードされた第２のプログラムは、一定時間ごとに、前記デコーダの無効を回避するための処理を前記情報処理端末に実行させる命令を含み、前記一定時間ごとに、前記デコーダを、当該一定時間より長い特定時間後に無効にする処理を実行する無効処理手段をさらに備えることを特徴とする。
【００１４】
また、本発明のカートリッジは、前記デコーダをさらに備えることが好ましい。
【００１５】
本発明に従ったプログラム実行方法は、第１のプログラムを記録する記録手段を含むカートリッジと、前記カートリッジを着脱可能に取り付けられる情報処理端末とを備える情報処理システムにおけるプログラム実行方法であって、前記情報処理端末は、メモリ、コンパイラ、およびプログラムを実行する実行手段とを含み、前記コンパイラが、前記第１のプログラムをデコードされたコードを第２のプログラムとして前記メモリに展開するステップと、前記プログラム実行手段が、前記第２のプログラムを実行するステップと、前記プログラム実行手段が、一定時間ごとに、当該一定時間より長い特定時間後に前記デコーダを無効にするための処理を実行するステップとを備え、前記第２のプログラムを実行するステップは、前記一定時間ごとに前記デコーダの無効を回避するための処理を実行するステップを含むことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、カートリッジに記録されたプログラムがデコードされて情報処理端末において実行されるとともに、一定期間ごとに、当該プログラムをデコードするデコーダを無効にするための処理が実行される。なお、当該プログラムがデコードされて実行されることによって、一定期間ごとに、デコーダが無効にされることを回避するための処理が実行される。
【００１７】
つまり、本発明によれば、情報処理端末において、単にカートリッジに記録されたプログラムがコピーされる場合には、コピーされたデータの一部に異常が生じることになる。カートリッジに記録されたプログラムが実行されなければ、デコーダが一定期間ごとに無効にされるのみで、当該無効を回避するための処理が実行されないからである。一方、情報処理端末において、カートリッジに記録されたプログラムが実行された場合には、当該プログラムは支障なく実行される。デコーダに対して、一定期間ごとに当該デコーダを無効にする処理が実行されるものの、上記プログラムが実行されることにより、一定期間ごとに当該無効を回避するための処理が実行されるためである。
【００１８】
以上の次第で、本発明によれば、カートリッジに記録されたプログラムが情報処理端末において不正にコピーされることを抑制できる。
【００１９】
また、本発明によれば、情報処理端末において、カートリッジに記録されたプログラムのコピーが試みられた場合、当該コピーの動作は見かけ上は実行される。このことから、不正コピーを試みた者は、即座にコピーが失敗していることを認識できない。したがって、不正コピーを試みた者に次策を講じる動機付けを与える時期をなるべく遅くすることができる。したがって、本発明によれば、このような観点からも、不正コピーを抑制することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態である情報処理システムについて、図面を参照して説明を行なう。
【００２１】
［１．第１の実施の形態］
［１−１．システムの構成］
図１は、本発明の情報処理システムの第１の実施の形態であるゲーム処理システムのハードウェア構成を模式的に示す図である。ゲーム処理システムは、主に、ゲーム装置１と、当該ゲーム装置１に対して着脱可能に取付けられるゲームカートリッジ４０，５０を含む。
【００２２】
ゲーム装置１は、当該ゲーム装置１の動作を全体的に制御するＣＰＵ（Central Processing Unit）１０を含む。また、ゲーム装置１は、当該ゲーム装置１に対してユーザが情報を入力するために操作される入力部３３と、情報を表示する表示部３１と、音声を出力する音声出力部３２とを含む。入力部３３は、単数または複数のキーを含む。表示部３１は、たとえばＬＣＤ（Liquid Crystal Display）等の表示装置を含む。音声出力部３２は、スピーカを含む。
【００２３】
ゲーム装置１は、さらに、ゲームカートリッジ４０と接続するためのコネクタ２２と、ゲームカートリッジ５０と接続するためのコネクタ２１を含む。
【００２４】
また、ゲーム装置１は、デコーダ１１、タイマ１２、比較器１３、割込信号発生回路１４、キーデータ記憶部１５、キー発生回路１６、バッファメモリ１７、およびフラッシュメモリ１８を含む。
【００２５】
ゲーム装置１において、ゲームカートリッジ４０のメモリ４１に記憶されたゲーム用プログラムが実行される際には、当該プログラムは、コネクタ２２を介してデコーダ１１に読込まれ、デコードされ、ＣＰＵ１０へ送られる。ＣＰＵ１０は、フラッシュメモリ１８に記憶された所定のプログラムを実行することによりコンパイラとして機能し（コンパイラ１０Ａ）、デコードされたプログラム（ソースコード）を、ネイティブコードにコンパイルしてバッファメモリ１７に展開する。ＣＰＵ１０は、バッファメモリ１７に展開されたネイティブコードを実行することにより、ゲーム用プログラムを実行する。
【００２６】
なお、ゲーム装置１では、一定時間（たとえば、０．１ｓｅｃ）ごとに、割込信号発生回路１４が、タイマ１２に対して、デコーダ１１へのクロック信号の供給についての残り時間を特定時間（上記「一定時間」よりも短い時間）とする割込信号が出力される。デコーダ１１は、タイマ１２から出力されるクロック信号を入力されることを条件として、デコード動作を実行する。タイマ１２では、割込信号発生回路１４から出力された割込信号を受信することにより、デコーダ１１へのクロック信号の出力の残り時間が、上記「特定時間」とされる。
【００２７】
ゲーム装置１では、後述するように、ゲーム用プログラムが実行されることにより、ＣＰＵ１０は、キー発生回路１６に、特定のキーを発生させるための信号を出力する。これにより、タイマ１２に対して、比較器１３から、タイマ１２におけるデコーダ１１へのクロック信号の供給のための残り時間が、上記した「一定時間」延長させるための信号が出力される。
【００２８】
つまり、本実施の形態のゲーム装置１では、割込信号発生回路１４からタイマ１２へ割込信号が送られても、ゲーム用プログラムが実行されていれば、ＣＰＵ１０がキー発生回路１６に特定のキーを発生させるための信号を出力することにより、タイマ１２からデコーダ１１へのクロック信号の供給は継続される。したがって、デコーダ１１のデコード動作は継続される。
【００２９】
［１−２．不正なプログラムコピー動作について］
ここで、ゲーム装置１において、ゲームカートリッジ４０のメモリ４１に記憶されたゲーム用プログラムが、不正に、ゲームカートリッジ５０のフラッシュメモリ５１にコピーされる場合のゲーム装置１の動作について説明する。
【００３０】
ゲーム装置１において、ＣＰＵ１０は、不正コピー用のプログラムの実行として、ゲームカートリッジ４０のメモリ４１から、ゲーム用プログラムを吸上げるように、当該ゲーム用プログラムをデコーダ１１にデコードさせ、デコードされたデータをバッファメモリ１７へ書込み、そして、バッファメモリ１７に書込んだプログラムを、コネクタ２１を介して、ゲームカートリッジ５０のフラッシュメモリ５１に記録する。
【００３１】
［１−３．ゲーム装置において実行される処理について］
［１−３−１．ゲーム用プログラムの実行］
次に、ＣＰＵ１０による、ゲームカートリッジ４０のメモリ４１に記録されたゲーム用プログラムの実行の態様について、当該プログラムが実行される際にＣＰＵ１０が実行する処理のフローチャートである図２を参照して説明する。
【００３２】
図２を参照して、ゲーム用プログラム実行処理では、ＣＰＵ１０は、まずステップＳ１０で、ゲームカートリッジ４０がコネクタ２２に接続されたか否かを判断し、接続されたと判断するとステップＳ２０へ処理を進める。
【００３３】
ステップＳ２０では、ＣＰＵ１０は、入力部３３に対してゲーム用プログラムを実行する旨の指示が入力を受付ける状態となり、ステップＳ３０へ処理を進める。ここで、ゲーム用プログラムの実行の指示を受付ける状態とは、たとえば、表示部３１に、指示の入力を促すメッセージを表示することが挙げられる。
【００３４】
ステップＳ３０では、ＣＰＵ１０は、ゲーム用プログラムを実行する旨の指示が入力されたか否かを判断し、入力されたと判断するとステップＳ４０へ処理を進め、入力されていないと判断するとステップＳ３１へ処理を進める。
【００３５】
ステップＳ３１では、ＣＰＵ１０は、入力部３３に対して他の処理を実行するための情報が入力されたか否かを判断し、そのような情報が入力されたと判断するとステップＳ３０にて指示された処理をステップＳ３２で実行して処理をステップＳ１０へ戻す。一方、そのような情報も入力されていないと判断すると、ＣＰＵ１０は、ステップＳ３０へ処理を戻す。
【００３６】
ステップＳ４０では、ＣＰＵ１０は、ゲーム用プログラムを実行して、ステップＳ５０へ処理を進める。ステップＳ５０では、後述するタイマリフレッシュ処理を実行して、ステップＳ６０へ処理を進める。
【００３７】
ステップＳ６０では、ＣＰＵ１０は、ゲームカートリッジ４０とコネクタ２２の接続が解除され、ゲームカートリッジ４０がゲーム装置１から取外されたか否かを判断し、取外されていないと判断するとステップＳ４０へ処理を戻し、取外されたと判断するとステップＳ１０へ処理を戻す。
【００３８】
［１−３−２．割込信号出力処理の実行］
次に、割込信号発生回路１４に、上記したように一定時間ごとにタイマ１２に対して割込信号を出力させるための処理である割込信号出力処理の内容を、当該処理のフローチャートである図３を参照して説明する。なお、当該処理は、ゲーム装置１において、上記したゲーム用プログラム実行処理とは独立して実行される。
【００３９】
図３を参照して、割込信号出力処理では、ＣＰＵ１０は、まずステップＳＡ１０で、上記した一定時間のカウントがタイムアウトしたか否かを判断し、タイムアウトしたと判断するとステップＳＡ２０へ処理を進める。
【００４０】
なお、ここでの一定時間のカウントは、たとえばＣＰＵ１０に内蔵されたタイマによって行なわれる。
【００４１】
ステップＳＡ２０では、ＣＰＵ１０は、割込信号発生回路１４に、タイマ１２に対して割込信号を出力させて、ステップＳＡ１０へ処理を戻す。
【００４２】
ステップＳＡ２０において割込信号発生回路１４からタイマ１２へ割込信号が出力されることにより、タイマ１２では、デコーダ１１のデコード動作を無効にするための信号を送信するまでのカウンタ（以下、適宜「無効信号送信カウンタ」と略す）のカウントが開始される。なお、ここでカウントが開始されてからタイマ１２がデコーダ１１へ上記信号を送信するまでの時間（カウント時間）は、上記した一定時間よりも長いもの（特定時間）とされている。
【００４３】
［１−３−３．ゲーム用プログラムのサブルーチンの実行］
図２に戻って、ステップＳ５０におけるタイマリフレッシュ処理は、図３を用いて説明した割込信号出力処理においてタイマ１２がカウントを開始したカウンタのカウント値をクリアするための処理である。ここで、タイマリフレッシュ処理について、当該処理のサブルーチンである図４を参照して説明する。
【００４４】
図４を参照して、タイマリフレッシュ処理では、ＣＰＵ１０は、まずステップＳ５０１で、前回タイマリフレッシュ処理を実行してからタイムアウト時間が経過したか否かを判断し、経過していると判断するとステップＳ５０２へ処理を進め、まだ経過していないと判断するとそのまま処理をリターンさせる。
【００４５】
ステップＳ５０２では、ＣＰＵ１０は、タイマ１２の無効信号送信カウンタのカウントをクリアさせて、処理をリターンさせる。
【００４６】
なお、本実施の形態において、ＣＰＵ１０が実行する割込信号出力処理のプログラムは、たとえばフラッシュメモリ１８に記録されている。
【００４７】
［１−４．第１の実施の形態における特徴的な動作について］
以上説明したように、本実施の形態では、ゲーム装置１において、デコーダ１１によってデコードされたプログラムが、コンパイラ１０Ａによってコンパイルされてバッファメモリ１７に展開され、ＣＰＵ１０は当該展開されたプログラム（ネイティブコード）を実行する。なお、図３を用いて説明したように、割込信号出力処理により、ゲーム装置１では、一定時間毎に、デコーダ１１のデコード動作を無効にするための信号の送信についてのカウンタのカウントが開始される。なお、ゲームカートリッジ４０のメモリ４１に記録されるゲーム用プログラムに基づいて実行される処理には、図２および図４を参照して説明したように、タイマリフレッシュ処理が含まれる。タイマリフレッシュ処理では、無効信号送信カウンタのカウントを、一定時間毎にクリアする処理である。つまり、本実施の形態では、タイマリフレッシュ処理が一定時間毎に実行されることにより、無効信号送信カウンタがタイムアウトして、タイマ１２がデコーダ１１へデコード動作を無効にするための信号を送信する事態を回避できる。したがって、ゲーム装置１では、ゲーム用プログラムが実行されていれば、デコーダ１１は継続してデコード動作を実行する。
【００４８】
なお、「１−２．」の欄で説明したように、ゲームカートリッジ４０のメモリ４１に記録されているゲーム用プログラムが、ゲーム装置１において単にコピー動作に供された場合には、タイマリフレッシュ処理（図２および図４参照）は実行されることはない。したがって、コピー動作の途中で、デコーダ１１のデコード動作が無効とされ、ゲーム用プログラムは、部分的に正常にデコードされない状態で、ゲームカートリッジ５０のフラッシュメモリ５１に書込まれることになる。
【００４９】
以上説明した本実施の形態によれば、ゲーム装置１においてデコーダ１１およびタイマ１２を追加するような設計変更を行なえば、本発明の情報処理システムを実現することができる。なお、ゲーム装置１とゲームカートリッジ４０とでは、ゲームカートリッジ４０の方が圧倒的に生産される数量は多いと考えられる。したがって、本実施の形態によれば、安価に、本発明を実現することができる。
【００５０】
また、本実施の形態では、ゲーム装置１と当該ゲーム装置１において実行されるプログラムを記録するゲームカートリッジ４０によって情報処理システムが実現されたが、本発明において実行されるプログラムは、ゲーム用のものに限定されず、表計算ソフトやワープロソフトのいわゆるビジネスソフト等、他の種類のアプリケーションプログラムであっても良い。
【００５１】
［２．第２の実施の形態］
図５は、本発明の情報処理システムの第２の実施の形態の構成を模式的に示す図である。
【００５２】
本実施の形態では、情報処理システムの一例であるゲーム処理システムは、主に、ゲーム装置１Ａと、当該ゲーム装置１Ａに着脱可能に装着されるゲームカートリッジ４０Ａ，５０Ａとを含む。
【００５３】
本実施の形態では、第１の実施の形態においてゲーム装置１に設けられていたデコーダとタイマが、ゲームカートリッジ４０Ａ側に備えられている。
【００５４】
なお、本実施の形態のゲーム装置１Ａに設けられているＣＰＵ１０は、第１の実施の形態において図２〜図４を参照して説明した各処理を実行するが、その内容については同様のものとすることができる。つまり、たとえば、第１の実施の形態では、割込信号出力処理において、割込信号発生回路１４はタイマ１２の無効信号送信カウンタのカウントを開始させていた。本実施の形態において実行される割込信号出力処理においても、割込信号発生回路１４は、コネクタ２２を介して、ゲームカートリッジ４０Ａに設けられているタイマ４３に対して、無効信号送信カウンタのカウントを開始させる。
【００５５】
なお、本実施の形態では、ゲームカートリッジ４０Ａは、メモリ４１、デコーダ４２、およびタイマ４３を備えている。デコーダ４２およびタイマ４３の動作は、コネクタ２２を介して、ゲーム装置１ＡのＣＰＵ１０によって制御される。そして、メモリ４１に記録されたゲーム用プログラムが実行される際には、当該プログラムはデコーダ４２によってデコードされ、デコードされたプログラムはコネクタ２２を介してＣＰＵ１０へ送られ、当該ＣＰＵ１０が所定のプログラムを実行することにより実現されるコンパイラ１０Ａによってコンパイルされて、ネイティブコードとしてバッファメモリ１７に展開される。ＣＰＵ１０は、当該展開されたネイティブコードを実行する。
【００５６】
以上説明した本実施の形態では、本発明の特徴的な構成要素であるデコーダとタイマがゲームカートリッジ４０Ａ側に設けられる。したがって、ゲーム装置１Ａ側に、既に販売等されてユーザの手元にあるゲーム装置１Ａに対して構成要素の追加を特に行なうことなく、本発明に従った情報処理システムを実現することができる。なお、割込信号発生回路１４については、フラッシュメモリ１８に、無効信号送信カウンタのカウントを開始させるようなプログラムを追加して格納することにより実現できると考えられる。
【００５７】
［３．第３の実施の形態］
図６は、本発明の情報処理システムの第３の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【００５８】
本実施の形態のゲーム処理システムは、ゲーム装置１Ｂと、ゲームカートリッジ４０とを主に含む。本実施の形態のゲーム装置１Ｂは、第１の実施の形態のゲーム装置１に対して、コネクタが１つである点で相違する。ゲーム装置１Ｂのコネクタ２２には、図６に示すようにゲームカートリッジ４０を接続させることもできるし、また、図７に示すように、ゲームカートリッジ４０とは異なる種類のゲームカートリッジであるゲームカートリッジ５０を接続させることもできる。
【００５９】
本実施の形態のゲーム装置１Ｂにおいても、図２〜図４を参照して説明した各処理が、第１の実施の形態において説明したのと同様に実行される。
【００６０】
［４．第４の実施の形態］
図８は、本発明の情報処理システムの第４の実施の形態であるゲーム処理システムの構成を模式的に示す図である。本実施の形態では、ゲーム装置１に対して、ゲームカートリッジ４０は、ＵＳＢ（Universal Serial Bus）メモリからなる。そして、ゲーム装置１のコネクタ２２には、ＵＳＢポートが接続されている。そして、ゲームカートリッジ４０は、ＵＳＢポート６０とＵＳＢ接続されることにより、ＵＳＢポート６０を介して、ゲーム装置１と接続される。
【００６１】
本実施の形態のゲーム装置１においても、図２〜図４を参照して説明した各処理が実行される。
【００６２】
［５．第５の実施の形態］
図９は、本発明の情報処理システムの第５の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【００６３】
本実施の形態のゲーム処理システムでは、ゲーム装置１のコネクタ２２には、ＬＡＮ（Local Area Network）カードなどの無線通信装置６１が接続されている。
【００６４】
また、第１の実施の形態においてゲームカートリッジ４０のメモリ４１に記録されていたゲーム用プログラムは、情報端末７０の記憶装置７３に記憶されている。なお、情報端末７０は、当該情報端末の動作を全体的に制御する制御装置７１とＬＡＮカードなどの無線通信装置とを含む。
【００６５】
そして、ゲーム装置１は、無線通信装置６１を介して、情報端末７０に接続されている。
【００６６】
本実施の形態のゲーム装置１のＣＰＵ１０は、無線通信装置６１を介して情報端末７０と通信することにより、記憶装置７３に記録されたゲーム用プログラムの読込を行なう。
【００６７】
本実施の形態のゲーム装置１においても、図２〜図４を参照して説明した各処理が実行される。
【００６８】
［６．第６の実施の形態］
図１０は、本発明の情報処理システムの第６の実施の形態である情報処理システムにおける情報処理端末の一例であるゲーム装置１のＣＰＵ１０が実行するゲーム用プログラム実行処理のフローチャートである。
【００６９】
図１０に示されたフローチャートには、図２に示されたフローチャートに対して、ステップＳ６０の処理の後、ステップＳ７０の処理が追加されている。ステップＳ７０では、ＣＰＵ１０が、バッファメモリ１７に書込んだ処理のネイティブコードを消去する。つまり、本実施の形態のゲーム装置１は、ステップＳ６０でゲームカートリッジ４０が取外されたと判断すると、ステップＳ７０で、タイマリフレッシュ処理（図４参照）を実行するためのネイティブコードをバッファメモリ１７から消去させた後、ステップＳ１０へ処理を戻す。
【００７０】
本実施の形態によれば、ゲームカートリッジ４０がゲーム装置１から取外された後、速やかに、タイマリフレッシュ処理に対応するネイティブコードが消去される。したがって、バッファメモリ１７に書込まれたままの状態で放置されたタイマリフレッシュ処理に対応するネイティブコードが、ゲームカートリッジ４０がゲーム装置１から取外された後、別のゲームカートリッジをコネクタ２２に接続されてコピーされ、それによって、タイマリフレッシュ処理の内容が解析される事態をより確実に回避できる。
【００７１】
今回開示された各実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。また、各実施の形態に記載の技術は、可能な限り組み合わされて実施されることが意図される。
【図面の簡単な説明】
【００７２】
【図１】本発明の情報処理システムの第１の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図２】図１のＣＰＵが実行するゲーム用プログラム実行処理のフローチャートである。
【図３】図１のＣＰＵが実行する割込信号出力処理のフローチャートである。
【図４】図２のタイマリフレッシュ処理のサブルーチンのフローチャートである。
【図５】本発明の情報処理システムの第２の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図６】本発明の情報処理システムの第３の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図７】本発明の情報処理システムの第３の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図８】本発明の情報処理システムの第４の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図９】本発明の情報処理システムの第５の実施の形態であるゲーム処理システムの構成を模式的に示す図である。
【図１０】本発明の情報処理システムの第６の実施の形態であるゲーム処理システムのゲーム装置において実行されるゲーム用プログラム実行処理のフローチャートである。
【図１１】従来の、プログラムＲＯＭからのプログラムデータの読出が制御される装置の構成を模式的に示す図である。
【符号の説明】
【００７３】
１，１Ａ，１Ｂ  ゲーム装置、１０  ＣＰＵ、１１，４２  デコーダ、１２，４３  タイマ、１３  比較器、１４  割込信号発生回路、１５  キーデータ記憶部、１６  キー発生回路、１７  バッファメモリ、１８，５１  フラッシュメモリ、２１，２２  コネクタ、３１  表示部、３２  音声出力部、３３  入力部、４０，５０  ゲームカートリッジ、４１  メモリ、６０  ＵＳＢポート、６１，７２  無線通信装置、７１  制御装置、７３  記憶装置、７０  情報端末。
【図１】
0005019324.tif 000002
【図２】
0005019324.tif 000003
【図３】
0005019324.tif 000004
【図４】
0005019324.tif 000005
【図５】
0005019324.tif 000006
【図６】
0005019324.tif 000007
【図７】
0005019324.tif 000008
【図８】
0005019324.tif 000009
【図９】
0005019324.tif 000010
【図１０】
0005019324.tif 000011
【図１１】
0005019324.tif 000012