(57)【要約】【課題】  開発や設計の難易度およびデータ容量を増大することなく、不正動作を防止するのに好適な遊技機を提供する。【解決手段】  パチンコ機の主制御部２００は、ＣＰＵ２０２、アクセス制御装置２３０を備える。ＣＰＵ２０２は、ＣＰＵコア２０３、Ｉ／Ｆ２１２を備え、ＣＰＵコア２０３は、Ｉ／Ｆ２１２を介して、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスをはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力する処理を実行する。アクセス制御装置２３０は、レジスタ２３４、２３６と、命令コード列およびアドレスをＩ／Ｆ２１２から入力する入力部２３１と、入力部２３１で入力した命令コード列およびアドレスに基づいて、ＣＰＵ２０２によるレジスタ２３４、２３６へのアクセスを制御するアクセス制御部２３８とを備える。【選択図】  図３
2010088483.tif 000002
【特許請求の範囲】
【請求項１】
遊技の主制御を行う主制御基板と、前記主制御基板の制御により動作する周辺基板とを備える遊技機であって、
前記主制御基板は、
所定条件の成立を契機として抽選を行う抽選手段と、
図柄表示手段で図柄を変動表示する制御を行う変動表示制御手段と、
前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段と、
遊技に関するデータ処理を行うデータ処理装置とを有し、
前記データ処理装置は、
データ処理手段と、
前記図柄の停止後に前記特賞状態が発生せず通常状態が継続することを指定するためのはずれコマンドを前記周辺基板に送信する送信手段と、
前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力手段とを有し、
前記周辺基板は、
前記はずれコマンドを受信する受信手段を有し、
当該遊技機は、
前記データ処理装置によるアクセスを制御するアクセス制御装置をさらに備え、
前記アクセス制御装置は、
前記データ処理を行うためのデータを記憶する記憶手段と、
前記命令に関する情報を前記出力手段から入力する入力手段と、
前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有することを特徴とする遊技機。
【請求項２】
遊技の主制御を行う主制御基板と、前記主制御基板の制御により動作する周辺基板とを備える遊技機であって、
前記主制御基板は、
所定条件の成立を契機として抽選を行う抽選手段と、
図柄表示手段で図柄を変動表示する制御を行う変動表示制御手段と、
前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段と、
前記図柄の停止後に前記特賞状態が発生せず通常状態が継続することを指定するためのはずれコマンドを前記周辺基板に送信する送信手段とを有し、
前記周辺基板は、
遊技に関するデータ処理を行うデータ処理装置を有し、
前記データ処理装置は、
データ処理手段と、
前記はずれコマンドを受信する受信手段と、
前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力手段とを有し、
当該遊技機は、
前記データ処理装置によるアクセスを制御するアクセス制御装置をさらに備え、
前記アクセス制御装置は、
前記データ処理を行うためのデータを記憶する記憶手段と、
前記命令に関する情報を前記出力手段から入力する入力手段と、
前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有することを特徴とする遊技機。
【請求項３】
請求項１および２のいずれか１項において、
前記アクセス制御手段は、前記入力手段で入力した命令に関する情報に基づいてアクセス許可条件が成立すると判定したときは、前記記憶手段へのアクセスを許可し、前記アクセス許可条件が成立しないと判定したときは、前記記憶手段へのアクセスを制限することを特徴とする遊技機。
【請求項４】
請求項３において、
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列を出力し、
前記アクセス許可条件は、前記入力手段で入力した命令コードまたは命令コード列が所定のコードまたはコード列であることを含むことを特徴とする遊技機。
【請求項５】
請求項３および４のいずれか１項において、
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段をさらに有し、
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の前記命令コード記憶手段における記憶位置を示す記憶位置情報を出力し、
前記アクセス許可条件は、前記入力手段で入力した記憶位置情報の記憶位置が所定の記憶位置であることを含むことを特徴とする遊技機。
【請求項６】
請求項３および４のいずれか１項において、
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算を行う演算手段とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含むことを特徴とする遊技機。
【請求項７】
請求項３および４のいずれか１項において、
前記データ処理装置は、
前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、
前記命令コード記憶手段に記憶された所定の固定値を用いて所定の演算を行う演算手段とをさらに有し、
前記出力手段は、前記演算手段の演算結果を出力し、
前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含むことを特徴とする遊技機。
【請求項８】
請求項３ないし７のいずれか１項において、
前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報を出力し、
前記アクセス許可条件は、前記入力手段で入力した実行結果情報の実行結果が所定の結果であることを含むことを特徴とする遊技機。
【請求項９】
請求項１ないし８のいずれか１項において、
前記アクセス制御手段は、前記記憶手段のうち特定のアドレス空間へのアクセスを制御することを特徴とする遊技機。
【請求項１０】
請求項１ないし９のいずれか１項において、
前記アクセス制御手段によるアクセス制御の状況を通知する制御状況通知手段をさらに備えることを特徴とする遊技機。
【請求項１１】
コンピュータからなる請求項１および２のいずれかに記載のアクセス制御装置に対して、請求項１および２のいずれかに記載のデータ処理装置によるアクセスを制御する処理を実行させるためのアクセス制御プログラムであって、
前記データ処理手段が実行する命令に関する情報を前記出力手段から入力する入力ステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含む処理を実行させるためのプログラムであることを特徴とするアクセス制御プログラム。
【請求項１２】
請求項１記載の遊技機に適用される遊技制御方法であって、
前記データ処理装置に対しては、
前記はずれコマンドを前記周辺基板に送信する送信ステップと、
前記出力手段が、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力ステップを含み、
前記アクセス制御装置に対しては、
前記命令に関する情報を前記出力手段から入力する入力ステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含むことを特徴とする遊技制御方法。
【請求項１３】
請求項２記載の遊技機に適用される遊技制御方法であって、
前記データ処理装置に対しては、
前記はずれコマンドを受信する受信ステップと、
前記出力手段が、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力ステップを含み、
前記アクセス制御装置に対しては、
前記命令に関する情報を前記出力手段から入力する入力ステップと、
前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含むことを特徴とする遊技制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図柄表示装置で図柄を変動表示し、所定の態様で図柄を停止させた後に特賞状態を発生させる遊技機に係り、特に、開発や設計の難易度およびデータ容量を増大することなく、不正動作を防止するのに好適な遊技機およびアクセス制御プログラム、並びに遊技制御方法に関する。
【背景技術】
【０００２】
パチンコ機等の遊技機は、法令に従って所定の検定機関で検定試験に付される。検定試験では、遊技機のマイクロプロセッサが実行する命令コード列が一定の要件を満たしていることが合格条件の一つとして要求される。そして、検定試験に合格した遊技機だけが市場に流通させることができる。
【０００３】
しかしながら、市場に流通した後に、遊技機の基板やチップ（ＬＳＩ等の半導体装置）を不正なものに交換したり、不正なチップを追加したり、マイクロプロセッサを改造したり、マイクロプロセッサのＲＯＭを書き換えたりするといった不正行為が行われることがある。これらは、主に、不正の利益を得る目的をもって第三者が遊技機を不正動作させるために行うものである。
【０００４】
また、不正行為に限らず、電気的・物理的なエラーにより遊技機が不正動作した場合も同様の問題が考えられる。電気的・物理的なエラーとしては、例えば、命令コード列の読出（フェッチ）時に、電磁波や静電気等の影響によりビットエラーが発生し、命令コード列の内容が変化してしまうような場合が挙げられる。
【０００５】
このように、不正行為やエラーに起因する不正動作は、パチンコホール等への損害が大きく、これを防止することが求められている。
【０００６】
従来、マイクロプロセッサ等の不正動作を防止する技術としては、例えば、特許文献１、２記載の技術が知られている。
【０００７】
特許文献１記載の技術は、プログラムカウンタの値をレジスタで保持するとともに、メモリ上の保護領域のアドレスを保持するテーブル、および保護領域へのアクセスが許されている命令のアドレスを保持するテーブルを保持しておき、アクセス検出回路によって、命令の解読結果、アクセス先のアドレスとテーブルのアドレスの比較結果に基づき、保護領域へのアクセス命令かどうかを判定する。そして、保護領域へのアクセス命令が検出された場合、比較回路によってレジスタおよびテーブルのアドレスを比較して、保護領域へのアクセスが許されていないエリアから読み出された命令と判断したときに禁止信号を出力して、不正なメモリアクセスを禁止する。
【０００８】
特許文献２記載の技術は、遊技機のＲＯＭに記憶されているプログラムデータをＲＯＭチェッカによってチェックするものである。
【特許文献１】特開平１０−２２８４２１号公報
【特許文献２】特開平１１−３３３１０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１記載の技術にあっては、命令コード列の解読やプログラムカウンタ値の読込を行うため、不正動作検出処理の工程が複雑となり、開発や設計の難易度が高くなってしまうという問題があった。
【００１０】
また、特許文献２記載の技術にあっては、ＲＯＭチェッカをその都度接続してチェックを行うため、遊技機の稼働中に行うことができず、チェック作業が容易でないという問題があった。ＲＯＭチェッカの機能に相当する不正動作検出処理を設け、遊技機の起動時または稼働中にチェックを行うことも考えられるが、チェックのためにＲＯＭと同等容量のテーブルを用意する必要がある。しかしながら、遊技機に対しては、制御プログラムのためのデータ容量が法令で厳しく制限されているため、そのような大容量のテーブルを持つことは現実的でない。
【００１１】
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、開発や設計の難易度およびデータ容量を増大することなく、不正動作を防止するのに好適な遊技機およびアクセス制御プログラム、並びに遊技制御方法を提供することを目的としている。
【課題を解決するための手段】
【００１２】
〔発明１〕  上記目的を達成するために、発明１の遊技機は、遊技の主制御を行う主制御基板と、前記主制御基板の制御により動作する周辺基板とを備える遊技機であって、前記主制御基板は、所定条件の成立を契機として抽選を行う抽選手段と、図柄表示手段で図柄を変動表示する制御を行う変動表示制御手段と、前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段と、遊技に関するデータ処理を行うデータ処理装置とを有し、前記データ処理装置は、データ処理手段と、前記図柄の停止後に前記特賞状態が発生せず通常状態が継続することを指定するためのはずれコマンドを前記周辺基板に送信する送信手段と、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力手段とを有し、前記周辺基板は、前記はずれコマンドを受信する受信手段を有し、当該遊技機は、前記データ処理装置によるアクセスを制御するアクセス制御装置をさらに備え、前記アクセス制御装置は、前記データ処理を行うためのデータを記憶する記憶手段と、前記命令に関する情報を前記出力手段から入力する入力手段と、前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有する。
【００１３】
このような構成であれば、主制御基板では、所定条件が成立すると、抽選手段により、これを契機として抽選が行われる。また、変動表示制御手段により、図柄表示手段で図柄を変動表示する制御が行われる。そして、特賞状態発生手段により、抽選手段の抽選結果に基づいて、所定の態様で図柄が停止した後に特賞状態が発生する。
【００１４】
一方、図柄の停止後に特賞状態が発生せず通常状態が継続すると、主制御基板のデータ処理装置では、送信手段により、はずれコマンドが周辺基板に送信される。
【００１５】
周辺基板では、受信手段により、はずれコマンドを受信する。
【００１６】
また、主制御基板のデータ処理装置では、出力手段により、データ処理手段が実行する命令に関する情報がはずれコマンドと対応付けられて外部に出力される。
【００１７】
アクセス制御装置では、入力手段により、命令に関する情報が入力され、アクセス制御手段により、入力された命令に関する情報に基づいて、データ処理装置による記憶手段へのアクセスが制御される。
【００１８】
これにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
【００１９】
また、はずれコマンドは、はずれ時に送信されるので、特賞状態系のコマンドに比して送信頻度が高い。そのため、抽選の後にアクセス制御を行うという流れを基本とすることができる。特賞状態時の遊技制御処理は、機種ごとに演出方法が変更されるなど、特殊な処理に区分されるが、はずれ時の遊技制御処理は、機種ごとの差異が少ない。したがって、はずれ時にアクセス制御を行うようにすれば、アクセス制御の流れに大きな変更を加えることがないので、他の機種への汎用性を向上することができる。
【００２０】
また、はずれコマンドの送信時にアクセス制御装置へのアクセスが行われるので、各コマンドの送信ごとにアクセスを行う場合に比して、主制御基板および周辺基板の処理負荷を低減することができる。したがって、主制御基板または周辺基板が高い処理能力を有していない遊技機や、処理負荷が大きい遊技機に対しても適用することができる。
【００２１】
ここで、命令に関する情報としては、例えば、（１）命令コード若しくは命令コード列、（２）命令コード若しくは命令コード列の記憶位置を示す記憶位置情報（例えば、アドレス）、（３）命令コード若しくは命令コード列の実行結果を示す実行結果情報（例えば、フラグレジスタの値）、または（４）それら情報のうち１若しくは複数の情報に基づき得られる２次情報（例えば、演算等により得られる演算情報）が含まれる。以下、発明２の遊技機、発明１１のアクセス制御プログラム、並びに発明１２および１３の遊技制御方法において同じである。
【００２２】
また、アクセスの「制御」については、例えば、（１）命令に関する情報または当該情報に基づき得られる２次情報に基づいてアクセス許可条件が成立すると判定したときは、アクセスの一部または全部を許可し、アクセス許可条件が成立しないと判定したときは、アクセスの一部または全部を制限すること、（２）命令に関する情報または当該情報に基づき得られる２次情報に基づいてアクセス制限条件が成立すると判定したときは、アクセスの一部または全部を制限し、アクセス制限条件が成立しないと判定したときは、アクセスの一部または全部を許可することが含まれる。アクセス許可条件またはアクセス制限条件としては、例えば、（１）命令に関する情報または当該情報に基づき得られる２次情報が所定の値、内容または範囲内であること、（２）命令に関する情報または当該情報に基づき得られる２次情報が所定の値、内容または範囲内でないことが含まれる。また、アクセスの「制限」については、例えば、（１）アクセスの一部または全部を禁止すること、（２）アクセス要求に応じたアクセス結果が得られないように制御すること（例えば、アクセス要求に係るデータとは異なるデータを読み出させまたは書き込ませること）が含まれる。以下、発明２の遊技機、発明１１のアクセス制御プログラム、並びに発明１２および１３の遊技制御方法において同じである。
【００２３】
また、命令に関する情報における当該命令と、アクセス制御との関係については、例えば、（１）記憶手段へのアクセスのためにデータ処理手段が実行する命令に関する情報に基づいて、当該命令に係るアクセスを制御すること、（２）データ処理手段が実行する命令に関する情報に基づいて、当該命令よりも前または後に、記憶手段へのアクセスのためにデータ処理手段が実行する命令に係るアクセスを制御することが含まれる。（２）の場合は、因果関係が分かりにくく、不正行為が行われる可能性をさらに低減することができる。以下、発明２の遊技機、発明１１のアクセス制御プログラム、並びに発明１２および１３の遊技制御方法において同じである。
【００２４】
また、命令に関する情報の対応付けとしては、例えば、命令に関する情報をはずれコマンドに付加すること、はずれコマンドの出力または入力に関連する規則で（例えば、はずれコマンドを出力してから所定時間経過後に）命令に関する情報を出力すること、命令に関する情報へのアクセスに必要なアクセス情報（例えば、リンク情報）をはずれコマンドに付加すること、はずれコマンドの出力または入力に関連する規則でアクセス情報を送信することが含まれる。以下、発明２の遊技機、発明１１のアクセス制御プログラム、並びに発明１２および１３の遊技制御方法において同じである。
【００２５】
また、はずれコマンドの送信時は、アクセス制御の全部を行ってもよいし、アクセス制御の一部を行ってもよい。アクセス制御の一部としては、例えば、アクセス制御が、（１）命令に関する情報についての判定を行うこと、（２）所定の判定結果が得られたときに記憶手段へのアクセスを制限することとからなる場合は、命令に関する情報についての判定だけをはずれコマンドの送信時に行い、記憶手段へのアクセス制限は、記憶手段へのアクセスがあったときに行うことが考えられる。また、命令に関する情報を保持しておき、その後に（１）、（２）を行う場合の当該保持も、アクセス制御の一部に含まれる。以下、発明２の遊技機、発明１１のアクセス制御プログラム、並びに発明１２および１３の遊技制御方法において同じである。
【００２６】
また、特賞状態とは、遊技者に対して所定の遊技価値を付与可能な有利な状態をいい、例えば、大入賞口の開放動作等が含まれる。以下、発明２の遊技機において同じである。
【００２７】
また、所定条件の成立としては、パチンコ機である場合は、例えば、始動入賞口に遊技球が入賞すること、パチスロ機である場合は、例えば、遊技開始を指示する操作レバーが操作されることが含まれる。以下、発明２の遊技機において同じである。
【００２８】
また、記憶手段は、あらゆる手段でかつあらゆる時期にデータを記憶可能なものを含み、所定のデータをあらかじめ記憶してあるものであってもよいし、所定のデータをあらかじめ記憶することなく、本遊技機の動作時に外部からの入力等によって所定のデータを記憶するものであってもよい。以下、発明２の遊技機において同じである。
【００２９】
〔発明２〕  さらに、発明２の遊技機は、遊技の主制御を行う主制御基板と、前記主制御基板の制御により動作する周辺基板とを備える遊技機であって、前記主制御基板は、所定条件の成立を契機として抽選を行う抽選手段と、図柄表示手段で図柄を変動表示する制御を行う変動表示制御手段と、前記抽選手段の抽選結果に基づいて、所定の態様で前記図柄を停止させた後に特賞状態を発生させる特賞状態発生手段と、前記図柄の停止後に前記特賞状態が発生せず通常状態が継続することを指定するためのはずれコマンドを前記周辺基板に送信する送信手段とを有し、前記周辺基板は、遊技に関するデータ処理を行うデータ処理装置を有し、前記データ処理装置は、データ処理手段と、前記はずれコマンドを受信する受信手段と、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力手段とを有し、当該遊技機は、前記データ処理装置によるアクセスを制御するアクセス制御装置をさらに備え、前記アクセス制御装置は、前記データ処理を行うためのデータを記憶する記憶手段と、前記命令に関する情報を前記出力手段から入力する入力手段と、前記入力手段で入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御手段とを有する。
【００３０】
このような構成であれば、主制御基板では、所定条件が成立すると、抽選手段により、これを契機として抽選が行われる。また、変動表示制御手段により、図柄表示手段で図柄を変動表示する制御が行われる。そして、特賞状態発生手段により、抽選手段の抽選結果に基づいて、所定の態様で図柄が停止した後に特賞状態が発生する。
【００３１】
一方、図柄の停止後に特賞状態が発生せず通常状態が継続すると、主制御基板では、送信手段により、はずれコマンドが周辺基板に送信される。
【００３２】
周辺基板のデータ処理装置では、受信手段により、はずれコマンドを受信する。また、出力手段により、データ処理手段が実行する命令に関する情報がはずれコマンドと対応付けられて外部に出力される。
【００３３】
アクセス制御装置では、入力手段により、命令に関する情報が入力され、アクセス制御手段により、入力された命令に関する情報に基づいて、データ処理装置による記憶手段へのアクセスが制御される。
【００３４】
これにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
【００３５】
また、はずれコマンドは、はずれ時に送信されるので、特賞状態系のコマンドに比して送信頻度が高い。そのため、抽選の後にアクセス制御を行うという流れを基本とすることができる。特賞状態時の遊技制御処理は、機種ごとに演出方法が変更されるなど、特殊な処理に区分されるが、はずれ時の遊技制御処理は、機種ごとの差異が少ない。したがって、はずれ時にアクセス制御を行うようにすれば、アクセス制御の流れに大きな変更を加えることがないので、他の機種への汎用性を向上することができる。
【００３６】
また、はずれコマンドの送信時にアクセス制御装置へのアクセスが行われるので、各コマンドの送信ごとにアクセスを行う場合に比して、主制御基板および周辺基板の処理負荷を低減することができる。したがって、主制御基板または周辺基板が高い処理能力を有していない遊技機や、処理負荷が大きい遊技機に対しても適用することができる。
【００３７】
〔発明３〕  さらに、発明３の遊技機は、発明１および２のいずれか１の遊技機において、前記アクセス制御手段は、前記入力手段で入力した命令に関する情報に基づいてアクセス許可条件が成立すると判定したときは、前記記憶手段へのアクセスを許可し、前記アクセス許可条件が成立しないと判定したときは、前記記憶手段へのアクセスを制限する。
【００３８】
このような構成であれば、アクセス制御装置では、アクセス制御手段により、入力された命令に関する情報に基づいてアクセス許可条件が成立すると判定されると、記憶手段へのアクセスが許可される。これに対し、入力された命令に関する情報に基づいてアクセス許可条件が成立しないと判定されると、記憶手段へのアクセスが制限される。
【００３９】
〔発明４〕  さらに、発明４の遊技機は、発明３の遊技機において、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列を出力し、前記アクセス許可条件は、前記入力手段で入力した命令コードまたは命令コード列が所定のコードまたはコード列であることを含む。
【００４０】
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列が出力される。
【００４１】
アクセス制御装置では、入力手段により、命令コードまたは命令コード列が入力され、アクセス制御手段により、入力された命令コードまたは命令コード列が所定のコードまたはコード列であると判定されると、記憶手段へのアクセスが許可される。
【００４２】
これにより、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
【００４３】
〔発明５〕  さらに、発明５の遊技機は、発明３および４のいずれか１の遊技機において、前記データ処理装置は、前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段をさらに有し、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の前記命令コード記憶手段における記憶位置を示す記憶位置情報を出力し、前記アクセス許可条件は、前記入力手段で入力した記憶位置情報の記憶位置が所定の記憶位置であることを含む。
【００４４】
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列の命令コード記憶手段における記憶位置を示す記憶位置情報が出力される。
【００４５】
アクセス制御装置では、入力手段により、記憶位置情報が入力され、アクセス制御手段により、入力された記憶位置情報の記憶位置が所定の記憶位置であると判定されると、記憶手段へのアクセスが許可される。
【００４６】
これにより、不正な位置に記憶された命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
【００４７】
ここで、命令コード列の記憶位置としては、例えば、命令コード列のうち先頭の命令コードの記憶位置、命令コード列のうち所定番目の命令コードの記憶位置、命令コード列に含まれる命令コードのそれぞれの記憶位置が含まれる。
【００４８】
また、命令コード記憶手段は、あらゆる手段でかつあらゆる時期に命令コードを記憶可能なものを含み、命令コードをあらかじめ記憶してあるものであってもよいし、命令コードをあらかじめ記憶することなく、本遊技機の動作時に外部からの入力等によって命令コードを記憶するものであってもよい。以下、発明６および７の遊技機において同じである。
【００４９】
〔発明６〕  さらに、発明６の遊技機は、発明３および４のいずれか１の遊技機において、前記データ処理装置は、前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、前記命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算を行う演算手段とをさらに有し、前記出力手段は、前記演算手段の演算結果を出力し、前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含む。
【００５０】
このような構成であれば、データ処理装置では、演算手段により、命令コード記憶手段に記憶された命令コードまたは命令コード列の少なくとも一部を用いて所定の演算が行われ、出力手段により、その演算結果が出力される。
【００５１】
アクセス制御装置では、入力手段により、演算手段の演算結果が入力され、アクセス制御手段により、入力された演算結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。
【００５２】
〔発明７〕  さらに、発明７の遊技機は、発明３および４のいずれか１の遊技機において、前記データ処理装置は、前記データ処理手段が実行する命令コードを記憶する命令コード記憶手段と、前記命令コード記憶手段に記憶された所定の固定値を用いて所定の演算を行う演算手段とをさらに有し、前記出力手段は、前記演算手段の演算結果を出力し、前記アクセス許可条件は、前記入力手段で入力した演算結果が所定の結果であることを含む。
【００５３】
このような構成であれば、データ処理装置では、演算手段により、命令コード記憶手段に記憶された所定の固定値を用いて所定の演算が行われ、出力手段により、その演算結果が出力される。
【００５４】
アクセス制御装置では、入力手段により、演算手段の演算結果が入力され、アクセス制御手段により、入力された演算結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。
【００５５】
〔発明８〕  さらに、発明８の遊技機は、発明３ないし７のいずれか１の遊技機において、前記出力手段は、前記データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報を出力し、前記アクセス許可条件は、前記入力手段で入力した実行結果情報の実行結果が所定の結果であることを含む。
【００５６】
このような構成であれば、データ処理装置では、出力手段により、データ処理手段が実行する命令コードまたは命令コード列の実行結果を示す実行結果情報が出力される。
【００５７】
アクセス制御装置では、入力手段により、実行結果情報が入力され、アクセス制御手段により、入力された実行結果情報の実行結果が所定の結果であると判定されると、記憶手段へのアクセスが許可される。
【００５８】
これにより、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性が低減する。
【００５９】
〔発明９〕  さらに、発明９の遊技機は、発明１ないし８のいずれか１の遊技機において、前記アクセス制御手段は、前記記憶手段のうち特定のアドレス空間へのアクセスを制御する。
【００６０】
このような構成であれば、アクセス制御装置では、アクセス制御手段により、記憶手段のうち特定のアドレス空間へのアクセスが制御される。これにより、記憶手段のうち、機密情報等の重要な情報が記憶されたアドレス空間へのアクセスを制御することにより、重要な情報が不正に書き換えられたり読み出されたりする可能性が低減する。
【００６１】
〔発明１０〕  さらに、発明１０の遊技機は、発明１ないし９のいずれか１の遊技機において、前記アクセス制御手段によるアクセス制御の状況を通知する制御状況通知手段をさらに備える。
【００６２】
このような構成であれば、制御状況通知手段により、アクセス制御手段によるアクセス制御の状況が通知される。
【００６３】
ここで、制御状況通知手段は、通知対象が認識可能な方法により通知を行えばよく、通知対象が人である場合は、例えば、表示、音声出力、振動その他五感で知覚可能な方法により行うことができる。通知対象がコンピュータ等である場合は、信号出力、データ送信その他コンピュータ等が認識可能な方法により行うことができる。
【００６４】
〔発明１１〕  一方、上記目的を達成するために、発明１１のアクセス制御プログラムは、コンピュータからなる発明１および２のいずれかのアクセス制御装置に対して、発明１および２のいずれかのデータ処理装置によるアクセスを制御する処理を実行させるためのアクセス制御プログラムであって、前記データ処理手段が実行する命令に関する情報を前記出力手段から入力する入力ステップと、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含む処理を実行させるためのプログラムである。
【００６５】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明１または２のアクセス制御装置と同等の作用が得られる。
【００６６】
〔発明１２〕  一方、上記目的を達成するために、発明１２の遊技制御方法は、発明１の遊技機に適用される遊技制御方法であって、前記データ処理装置に対しては、前記はずれコマンドを前記周辺基板に送信する送信ステップと、前記出力手段が、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力ステップを含み、前記アクセス制御装置に対しては、前記命令に関する情報を前記出力手段から入力する入力ステップと、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含む。
【００６７】
〔発明１３〕  さらに、発明１３の遊技制御方法は、発明２の遊技機に適用される遊技制御方法であって、前記データ処理装置に対しては、前記はずれコマンドを受信する受信ステップと、前記出力手段が、前記データ処理手段が実行する命令に関する情報を前記はずれコマンドと対応付けて外部に出力する出力ステップを含み、前記アクセス制御装置に対しては、前記命令に関する情報を前記出力手段から入力する入力ステップと、前記入力ステップで入力した命令に関する情報に基づいて、前記データ処理装置による前記記憶手段へのアクセスを制御するアクセス制御ステップとを含む。
【発明の効果】
【００６８】
以上説明したように、発明１の遊技機によれば、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正行為やエラーに起因する不正動作が行われる可能性を低減することができるという効果が得られる。また、データ処理装置とは別体のアクセス制御装置がアクセス制御機能を実現するので、データ処理装置自体が不正動作検出処理を行う必要がなく、従来に比して、開発や設計の難易度が高くなることを抑制することができるという効果も得られる。さらに、命令に関する情報に基づいてアクセスが制御されるので、ＲＯＭと同等容量のテーブルを用意する必要がなく、従来に比して、データ容量が増大することを抑制することができるという効果も得られる。さらに、主制御基板のデータ処理装置が不正動作する可能性を低減することができるという効果も得られる。さらに、はずれコマンドの送信時であるはずれ時にアクセス制御が行われるので、アクセス制御の流れに大きな変更を加えることがないので、他の機種への汎用性を向上することができるという効果も得られる。さらに、はずれコマンドの送信時にアクセス制御装置へのアクセスが行われるので、各コマンドの送信ごとにアクセスを行う場合に比して、主制御基板および周辺基板の処理負荷を低減することができる。したがって、主制御基板または周辺基板が高い処理能力を有していない遊技機や、処理負荷が大きい遊技機に対しても適用することができるという効果も得られる。
【００６９】
さらに、発明２の遊技機によれば、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正行為やエラーに起因する不正動作が行われる可能性を低減することができるという効果が得られる。また、データ処理装置とは別体のアクセス制御装置がアクセス制御機能を実現するので、データ処理装置自体が不正動作検出処理を行う必要がなく、従来に比して、開発や設計の難易度が高くなることを抑制することができるという効果も得られる。さらに、命令に関する情報に基づいてアクセスが制御されるので、ＲＯＭと同等容量のテーブルを用意する必要がなく、従来に比して、データ容量が増大することを抑制することができるという効果も得られる。さらに、周辺基板のデータ処理装置が不正動作する可能性を低減することができるという効果も得られる。さらに、はずれコマンドの送信時であるはずれ時にアクセス制御が行われるので、アクセス制御の流れに大きな変更を加えることがないので、他の機種への汎用性を向上することができるという効果も得られる。さらに、はずれコマンドの送信時にアクセス制御装置へのアクセスが行われるので、各コマンドの送信ごとにアクセスを行う場合に比して、主制御基板および周辺基板の処理負荷を低減することができる。したがって、主制御基板または周辺基板が高い処理能力を有していない遊技機や、処理負荷が大きい遊技機に対しても適用することができるという効果も得られる。
【００７０】
さらに、発明３の遊技機によれば、アクセス許可条件の成否によりアクセスが制御されるので、データ容量が増大することをさらに抑制することができるという効果が得られる。
【００７１】
さらに、発明４の遊技機によれば、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができるという効果が得られる。
【００７２】
さらに、発明５の遊技機によれば、不正な位置に記憶された命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができるという効果が得られる。
【００７３】
さらに、発明６の遊技機によれば、命令コード記憶手段に記憶された命令コードまたは命令コード列が不正に書き換えられたことを検出することができるという効果が得られる。
【００７４】
さらに、発明７の遊技機によれば、命令コード記憶手段が不正なものに交換されたことを検出することができるという効果が得られる。
【００７５】
さらに、発明８の遊技機によれば、不正に書き換えられた命令コードまたは命令コード列や、ビットエラーによって内容が変化した命令コードまたは命令コード列が実行されることにより、記憶手段のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができるという効果が得られる。
【００７６】
さらに、発明９の遊技機によれば、記憶手段のうち、機密情報等の重要な情報が記憶されたアドレス空間へのアクセスを制御することにより、重要な情報が不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができるという効果が得られる。
【００７７】
さらに、発明１０の遊技機によれば、不正動作が行われた可能性があることを把握することができるという効果が得られる。
【００７８】
一方、発明１１のアクセス制御プログラム、または発明１２若しくは１３の遊技制御方法によれば、発明１または２の遊技機と同等の効果が得られる。
【発明を実施するための最良の形態】
【００７９】
〔第１の実施の形態〕
以下、本発明の第１の実施の形態を図面を参照しながら説明する。図１ないし図２０は、本発明に係る遊技機およびアクセス制御プログラム、並びに遊技制御方法の第１の実施の形態を示す図である。
【００８０】
本実施の形態は、本発明に係る遊技機およびアクセス制御プログラム、並びに遊技制御方法をパチンコ機に適用したものである。
【００８１】
〔遊技盤の構成〕
まず、パチンコ機における遊技盤１０１の構成を説明する。
【００８２】
図１は、遊技盤１０１の正面図である。
【００８３】
図１において、遊技盤１０１の左側には、円弧を描いて上方に延長する２つのレール１０２ａ、１０２ｂが設けられている。遊技領域１０３には、遊技球の落下軌跡を変則的にするための複数の釘（不図示）が設けられ、落下途中の位置には、遊技球の落下方向を変化させる風車や入賞口が設けられている。遊技球は、遊技盤１０１の下部位置に配置された発射部（不図示）により発射され、レール１０２ａ、１０２ｂ間を上昇して遊技盤１０１の上部位置に達した後、遊技領域１０３内を落下する。
【００８４】
遊技盤１０１の中央部には、３つの領域にそれぞれ演出図柄を独立に変動させながら表示する図柄表示部１０４が設けられている。図柄表示部１０４は、例えば、液晶表示器（ＬＣＤ（Liquid Crystal
Display））またはＣＲＴ（Cathode Ray Tube）ディスプレイ等の可変表示装置、７セグメントＬＥＤ、ドットマトリクス表示装置、モータの回転により可変表示するドラム等であり、複数の数字や図柄等からなる演出図柄を変動表示する。
【００８５】
図柄表示部１０４の下方には、遊技球を入賞可能な始動入賞口１０５が設けられている。また、図柄表示部１０４の左右両側には、それぞれ入賞ゲート１０６が設けられている。入賞ゲート１０６を遊技球が通過すると、所定の抽選が行われ、これに当選すると、始動入賞口１０５が所定時間だけ開放する。
【００８６】
始動入賞口１０５の左右両側には、それぞれ普通入賞口１０７が設けられている。普通入賞口１０７に遊技球が入賞すると、遊技球１個につき所定数（例えば、１０個）の遊技球が賞球として払い出される。
【００８７】
始動入賞口１０５の下方には、通常時は閉止状態であるが図柄表示部１０４の演出図柄が大当たり図柄（例えば、「７７７」）となったときは、開放状態となって遊技球を入賞可能とする大入賞口１０９が設けられている。大当たり抽選で「大当たり」（以下、単に「大当たり」という。）となったときは、大入賞口１０９の全面に設置された開閉部材が開閉動作を繰り返す。開閉部材が開放中は、多数の遊技球の入賞を受け付ける。大入賞口１０９に遊技球が入賞すると、遊技球１個につき所定数（例えば、１０個）の遊技球が賞球として払い出される。大入賞口１０９の開放は、所定時間（例えば、３０秒）経過するか、所定数（例えば、１０個）の遊技球が入賞するまで継続する。大入賞口１０９の１回の開放期間をラウンドと呼び、ラウンドは、最大で所定回数（以下、最大ラウンド数という。）継続する。
【００８８】
遊技領域１０３の最下方には、いずれの入賞口にも入賞しなかった遊技球を回収するための回収口１０８が設けられている。
【００８９】
〔遊技制御装置の構成〕
次に、パチンコ機における遊技制御装置１００の構成を説明する。
【００９０】
図２は、遊技制御装置１００の構成を示すブロック図である。
【００９１】
遊技制御装置１００は、図２に示すように、遊技の主制御を行う主制御部２００と、主制御部２００の制御により遊技の演出制御を行う演出制御部３００と、主制御部２００の制御により遊技球の払出制御を行う賞球制御部４００とを有して構成されている。
【００９２】
主制御部２００は、遊技の主制御を行い、遊技の演出制御または遊技球の払出制御を行うための各種の制御コマンドを演出制御部３００および賞球制御部４００にそれぞれ送信する。
【００９３】
主制御部２００には、始動入賞口１０５に入賞した遊技球を検出する始動入賞口検出部２８０と、入賞ゲート１０６を通過した遊技球を検出するゲート検出部２８２と、普通入賞口１０７に入賞した遊技球を検出する普通入賞口検出部２８４と、大入賞口１０９に入賞した遊技球を検出する大入賞口検出部２８６とが接続されている。これらの検出部２８０〜２８６は、例えば、近接スイッチを用いて構成することができる。
【００９４】
主制御部２００には、さらに、大当たり中に大入賞口１０９の開閉部材を開閉動作させる大入賞口開閉部２８８と、演出制御部３００と、賞球制御部４００とが接続されている。なお、演出制御部３００との通信は、主制御部２００から演出制御部３００への一方向となっている。これに対し、賞球制御部４００との通信は、双方向となっている。
【００９５】
大入賞口開閉部２８８は、例えば、ソレノイドを用いて構成することができる。大当たりは、大当たり決定乱数に基づいて所定確率（例えば、１／３００）で発生するようあらかじめプログラムされている。
【００９６】
演出制御部３００は、主制御部２００から制御コマンドを受信し、受信した制御コマンドに基づいて遊技の演出制御を行う。演出制御部３００は、制御プログラムを記憶したＲＯＭ３０４と、ＲＯＭ３０４の制御プログラムに従って演出制御処理を実行するＣＰＵ３０２と、ＣＰＵ３０２の演算処理時におけるデータのワークエリアとして機能するＲＡＭ３０６と、図柄表示部１０４に表示させる画像データを書き込むＶＲＡＭ３０８と、外部装置との入出力を行うＩ／Ｆ３１０とを有して構成されている。
【００９７】
ＲＡＭ３０６は、主制御部２００からの入力データ、演算処理のためのデータ、乱数を生成するための乱数カウンタその他各種のカウンタ、および各種のフラグを記憶する。
【００９８】
Ｉ／Ｆ３１０には、主制御部２００と、図柄表示部１０４と、スピーカ３８０から音声を出力する音声制御を行う音声制御部３８２と、ランプ３８４を点灯させるランプ制御を行うランプ制御部３８６とが接続されている。
【００９９】
賞球制御部４００は、主制御部２００から制御コマンドを受信し、受信した制御コマンドに基づいて遊技球の払出制御を行う。賞球制御部４００は、制御プログラムを記憶したＲＯＭ４０４と、ＲＯＭ４０４の制御プログラムに従って払出制御処理を実行するＣＰＵ４０２と、ＣＰＵ４０２の演算処理時におけるデータのワークエリアとして機能するＲＡＭ４０６と、外部装置との入出力を行うＩ／Ｆ４１０とを有して構成されている。
【０１００】
Ｉ／Ｆ４１０には、主制御部２００と、遊技球の貯留部から所定数の遊技球を払い出す払出部４８０と、遊技球を遊技盤１０１に発射する発射部４８２とが接続されている。
【０１０１】
賞球制御部４００は、払出部４８０に対して、各入賞口（始動入賞口１０５、普通入賞口１０７、大入賞口１０９）への入賞に応じて所定数の遊技球を払い出す制御を行う。また、発射部４８２に対する操作を検出し、遊技球の発射を制御する。
【０１０２】
発射部４８２は、遊技者による操作を検出するセンサ（不図示）と、遊技球を発射させるソレノイド（不図示）とを有して構成されている。賞球制御部４００は、発射部４８２のセンサにより操作を検出すると、その操作量に応じてソレノイドを駆動させて遊技球を間欠的に発射する。
【０１０３】
なお、主制御部２００、演出制御部３００および賞球制御部４００は、それぞれ異なるプリント基板（主制御基板、演出制御基板および賞球制御基板）に設けられる。これに限らず、例えば、賞球制御部４００は、主制御部２００と同一のプリント基板に設けることもできる。
【０１０４】
〔主制御部の構成〕
次に、主制御部２００の構成を説明する。
【０１０５】
図３は、主制御部２００の構成を示すブロック図である。
【０１０６】
主制御部２００は、図３に示すように、ＤＩＰ（Dual Inline
Package）等からなるワンチップ型のマイクロプロセッサであるＣＰＵ２０２と、ＣＰＵ２０２によるアクセスを制御するアクセス制御装置２３０と、パチンコ機の検定試験に用いられる検査ポート２４０とを有して構成されている。
【０１０７】
ＣＰＵ２０２は、制御プログラムを記憶したＲＯＭ２０４と、ＲＯＭ２０４の制御プログラムに従って遊技制御処理を実行するＣＰＵコア２０３と、ＣＰＵコア２０３の演算処理時におけるデータのワークエリアとして機能するＲＡＭ２０６と、検査ポート２４０を介してＣＰＵコア２０３が実行する命令コード列その他の検査データを出力するセキュリティ検査回路２０８とを有して構成されている。
【０１０８】
ＣＰＵ２０２は、さらに、外部装置との入出力を行うＩ／Ｆ２１０、２１２と、時間を計測するタイマ２１４とを有して構成されている。そして、ＣＰＵコア２０３、ＲＯＭ２０４、ＲＡＭ２０６、セキュリティ検査回路２０８、Ｉ／Ｆ２１０、２１２およびタイマ２１４は、バス２１６を介して相互に接続されている。
【０１０９】
ＲＡＭ２０６は、主制御部２００に対する入出力データ、演算処理のためのデータ、乱数を生成するための乱数カウンタその他各種のカウンタ、大当たりフラグその他各種のフラグ、および保留球数を記憶する。ＲＡＭ２０６の内容は、バックアップ電源（不図示）により電源遮断時でも保持される。
【０１１０】
乱数カウンタは、大当たり抽選に用いる乱数（大当たり決定乱数）、演出図柄の停止態様を決定するための乱数（停止図柄決定乱数）、演出図柄の変動パターンを決定するための乱数（変動パターン決定乱数）、演出図柄の一部をリーチ図柄（例えば、「７７」）で停止させて大当たりの予告を行う演出（以下、リーチ演出という。）の有無を決定するための乱数（リーチ決定乱数）、その他遊技制御に用いる乱数のそれぞれに対応して設けられている。また、保留球数とは、始動入賞口１０５に入賞した遊技球の数であって大当たり抽選が行われていない分をいう。
【０１１１】
Ｉ／Ｆ２１２には、アクセス制御装置２３０が接続されている。ＣＰＵ２０２は、そのハードウェア構造上、バス２１６を介して送受信されるアドレス信号、データ信号および制御信号を外部に出力しない構成となっている。また、バス２１６の信号線がＣＰＵ２０２に内蔵されているので、アクセス制御装置２３０をバス２１６の信号線に直結することも改造を要し難しい。したがって、そのままの構成では、アクセス制御装置２３０は、ＣＰＵコア２０３が実行する命令に関する情報を取得することができない。そこで、本実施の形態では、ＣＰＵコア２０３が実行する命令に関する情報として、ＣＰＵコア２０３が実行する命令コード列、およびそのＲＯＭ２０４におけるアドレス（以下、単にアドレスという。）を、Ｉ／Ｆ２１２を介して出力する処理をＣＰＵコア２０３に実行させる。この出力処理は、例えば、ＲＯＭ２０４の制御プログラムの一処理として組み込んでおくことができる。これにより、アクセス制御装置２３０は、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスをＩ／Ｆ２１２から入力することができる。ここで、命令コード列のアドレスとは、命令コード列のうち先頭の命令コードのアドレスをいう。
【０１１２】
なお、演出制御部３００は、ＣＰＵ３０２、ＲＯＭ３０４、ＲＡＭ３０６、ＶＲＡＭ３０８およびＩ／Ｆ３１０のほか、遊技の演出制御に必要な複数のデバイスからなる演出関連デバイス群３１４を有して構成されている。同様に、賞球制御部４００は、ＣＰＵ４０２、ＲＯＭ４０４、ＲＡＭ４０６およびＩ／Ｆ４１０のほか、遊技球の払出制御に必要な複数のデバイスからなる賞球関連デバイス群４１４を有して構成されている。
【０１１３】
〔制御コマンドのデータ構造〕
次に、制御コマンドのデータ構造を説明する。
【０１１４】
図４は、通常の制御コマンドおよび命令コード列付制御コマンドのデータ構造を示す図である。
【０１１５】
通常の制御コマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであって、図４に示すように、制御コマンド５００のみからなる。これに対し、命令コード列付制御コマンドは、はずれ非リーチコマンドまたははずれリーチコマンドである制御コマンド５００に、ＣＰＵコア２０３が実行する命令コード列５０２およびそのアドレス５０４を付加してなる。
【０１１６】
図５は、制御コマンド５００のデータ構造を示す図である。
【０１１７】
制御コマンド５００は、図５に示すように、制御コマンド５００を識別するための識別子であるモード（ＭＯＤＥ）と、制御コマンド５００の具体的な実行内容を示すデータであるイベント（ＥＶＥＮＴ）とからなる。モードには、１バイト長のモード識別番号が、イベントには、１バイト長のイベント番号がそれぞれ設定される。
【０１１８】
図６は、主制御部２００から送信される制御コマンドの内容を示す図である。
【０１１９】
制御コマンドには、図６に示すように、電源オンコマンド、電源オフコマンド、客待ちデモコマンド、客待ちデモ停止コマンド、変動パターンコマンド、大当たり開始コマンド、大当たり終了コマンドおよび大当たりコマンドがある。
【０１２０】
電源オンコマンドは、電源の投入を指定するための制御コマンドであって、電源投入時に演出制御部３００および賞球制御部４００に送信される。
【０１２１】
電源オフコマンドは、電源の遮断を指定するための制御コマンドであって、電源遮断時に演出制御部３００および賞球制御部４００に送信される。
【０１２２】
客待ちデモコマンドは、遊技客を誘致するためのデモンストレーション演出（以下、客待ちデモという。）の開始を指定するための制御コマンドであって、遊技中断時に演出制御部３００に送信される。
【０１２３】
客待ちデモ停止コマンドは、客待ちデモの終了を指定するための制御コマンドであって、遊技再開時に演出制御部３００に送信される。
【０１２４】
変動パターンコマンドは、演出図柄の変動パターンを指定するための制御コマンドであって、演出図柄の変動開始時に演出制御部３００に送信される。変動パターンコマンドには、はずれ非リーチコマンド、はずれリーチコマンドおよび大当たりリーチコマンドがある。
【０１２５】
はずれ非リーチコマンドは、大当たり抽選で「はずれ」（以下、単に「はずれ」という。）となったときに選択される変動パターンのうちリーチ演出を行わない変動パターンを指定するための制御コマンドである。はずれ非リーチコマンドには、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスが付加される。
【０１２６】
はずれリーチコマンドは、はずれ時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための制御コマンドである。はずれリーチコマンドには、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスが付加される。演出制御部３００では、はずれリーチコマンドまたははずれ非リーチコマンドに基づいてはずれであることを判定することができる。
【０１２７】
大当たりリーチコマンドは、大当たり時に選択される変動パターンのうちリーチ演出を行う変動パターンを指定するための制御コマンドである。演出制御部３００では、大当たりリーチコマンドに基づいて大当たりであることを判定することができる。
【０１２８】
大当たり開始コマンドは、大当たり演出の開始を指定するための制御コマンドであって、大当たり演出の開始時に演出制御部３００に送信される。
【０１２９】
大当たり終了コマンドは、大当たり演出の終了を指定するための制御コマンドであって、大当たり演出の終了時（最終ラウンドの終了時）に演出制御部３００に送信される。
【０１３０】
大当たりコマンドは、大当たりを指定するための制御コマンドであって、これには、ラウンド開始コマンドおよびラウンド終了コマンドがある。
【０１３１】
ラウンド開始コマンドは、ラウンドの開始を指定するための制御コマンドであって、ラウンドの開始時に演出制御部３００に送信される。ラウンド開始コマンドは、各ラウンドごとに設定されている。例えば、最大ラウンド数が１５回である場合は、１５種類のラウンド開始コマンドが設定される。したがって、ラウンドが２回以上継続する場合は、大当たり中にラウンド開始コマンドが複数回にわたって送信されることになる。
【０１３２】
ラウンド終了コマンドは、ラウンドの終了を指定するための制御コマンドであって、最終ラウンドを除くラウンドの終了時に演出制御部３００に送信される。ラウンド終了コマンドは、最終ラウンドを除く各ラウンドごとに設定されている。例えば、最大ラウンド数が１５回である場合は、１４種類のラウンド終了コマンドが設定される。したがって、ラウンドが３回以上継続する場合は、大当たり中にラウンド終了コマンドが複数回にわたって送信されることになる。
【０１３３】
なお、これら制御コマンドは、あくまで代表的なものであり、その他にも各種の制御コマンドが規定されている。
【０１３４】
〔ＣＰＵコアおよびアクセス制御装置の構成〕
次に、ＣＰＵコア２０３およびアクセス制御装置２３０の構成を説明する。
【０１３５】
図７は、ＣＰＵコア２０３およびアクセス制御装置２３０の構成を示すブロック図である。なお、図７では、説明の便宜上、構成の一部を省略している。
【０１３６】
ＣＰＵコア２０３は、図７に示すように、ＲＯＭ２０４に記憶された命令コード列を読み出し（フェッチ）、読み出した命令コード列に従ってデータ処理を行う。ＣＰＵコア２０３は、制御部２０３ａ、演算部２０３ｂおよびレジスタ２０３ｃを有して構成されている。
【０１３７】
制御部２０３ａは、ＣＰＵ２０２全体の動作を制御し、命令コード列その他データの読出および書込を行うためにバス２１６に制御信号を出力する。
【０１３８】
演算部２０３ｂは、レジスタ２０３ｃに保持されたデータに対して演算を行う。
【０１３９】
レジスタ２０３ｃは、ＲＯＭ２０４から読み出した命令コード列およびそのアドレス、並びに演算部２０３ｂで処理したデータを保持する。
【０１４０】
アクセス制御装置２３０は、入力部２３１、演算部２３２、レジスタ２３４、２３６およびアクセス制御部２３８を有して構成されている。
【０１４１】
入力部２３１は、ラッチ回路等からなり、はずれ非リーチコマンドまたははずれリーチコマンドに付加されている、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスをＩ／Ｆ２１２から入力する。
【０１４２】
演算部２３２は、認証に必要な認証情報を生成する。
【０１４３】
レジスタ２３４は、演算部２３２で生成した認証情報を保持する。レジスタ２３４へのアクセスは、アクセス制御部２３８により制御される。
【０１４４】
レジスタ２３６は、ＣＰＵコア２０３で処理したデータを保持する。レジスタ２３６へのアクセスは、アクセス制御部２３８により制御される。
【０１４５】
アクセス制御部２３８は、レジスタ２３４、２３６に対するリード要求を入力したときは、そのリード要求に係るリード命令およびそのアドレスを入力部２３１から入力し、入力したリード命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ２３４、２３６からのデータの読出を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ２３４、２３６からのデータの読出を禁止する。具体的には、入力部２３１で入力した命令コード列が、あらかじめ許可されたコード列（以下、許可命令コード列という。）であり、かつ、その命令コード列のアドレスが、あらかじめ許可されたアドレス（以下、許可アドレスという。）であるときにのみ、レジスタ２３４、２３６からデータを読み出すことができる。
【０１４６】
アクセス制御部２３８は、レジスタ２３６に対するライト要求を入力したときは、そのライト要求に係るライト命令およびそのアドレスを入力部２３１から入力し、入力したライト命令およびアドレスに基づいてアクセス許可条件が成立すると判定したときは、レジスタ２３６へのデータの書込を許可する。これに対し、アクセス許可条件が成立しないと判定したときは、レジスタ２３６へのデータの書込を禁止する。具体的には、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ２３６にデータを書き込むことができる。
【０１４７】
〔アクセス制御処理〕
次に、アクセス制御部２３８で実行されるアクセス制御処理を説明する。
【０１４８】
図８は、アクセス制御処理を示すフローチャートである。
【０１４９】
アクセス制御部２３８は、アクセス制御処理を実行すると、図８に示すように、まず、ステップＳ１００に移行する。
【０１５０】
ステップＳ１００では、レジスタ２３４、２３６に対するリード要求をＩ／Ｆ２１２から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップＳ１０２に移行する。
【０１５１】
ステップＳ１０２では、はずれ非リーチコマンドまたははずれリーチコマンドをＩ／Ｆ２１２から入力したか否かを判定し、はずれ非リーチコマンドまたははずれリーチコマンドを入力したと判定したとき(Yes)は、ステップＳ１０４に移行するが、そうでないと判定したとき(No)は、はずれ非リーチコマンドまたははずれリーチコマンドを入力するまでステップＳ１０２で待機する。
【０１５２】
ステップＳ１０４では、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスを入力部２３１から入力し、ステップＳ１０６に移行する。
【０１５３】
ステップＳ１０６では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップＳ１０８に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップＳ１１０に移行する。
【０１５４】
ステップＳ１１０では、レジスタ２３４、２３６が保持しているデータを読み出し、ステップＳ１１２に移行して、読み出したデータをＩ／Ｆ２１２に出力する。出力されたデータは、Ｉ／Ｆ２１２を介してＣＰＵコア２０３のレジスタ２０３ｃに保持される。
【０１５５】
次いで、ステップＳ１１４に移行して、レジスタ２３６に対するライト要求をＩ／Ｆ２１２から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップＳ１１６に移行する。
【０１５６】
ステップＳ１１６では、はずれ非リーチコマンドまたははずれリーチコマンドをＩ／Ｆ２１２から入力したか否かを判定し、はずれ非リーチコマンドまたははずれリーチコマンドを入力したと判定したとき(Yes)は、ステップＳ１１８に移行するが、そうでないと判定したとき(No)は、はずれ非リーチコマンドまたははずれリーチコマンドを入力するまでステップＳ１１６で待機する。
【０１５７】
ステップＳ１１８では、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスを入力部２３１から入力し、ステップＳ１２０に移行する。
【０１５８】
ステップＳ１２０では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップＳ１２２に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップＳ１２４に移行する。
【０１５９】
ステップＳ１２４では、ＣＰＵコア２０３のレジスタ２０３ｃが保持しているデータをＩ／Ｆ２１２から入力し、ステップＳ１２６に移行して、入力したデータをレジスタ２３６に書き込み、アクセス制御処理を終了する。
【０１６０】
一方、ステップＳ１２２で、許可アドレスでないと判定したとき(No)、ステップＳ１２０で、許可命令コード列でないと判定したとき(No)、およびステップＳ１１４で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ２３６にデータを書き込まずに、アクセス制御処理を終了する。このとき、ＣＰＵコア２０３は、アクセス制御装置２３０からの通知を受け、不正が行われている可能性がある旨の通知（以下、不正通知という。）を行ってもよい。不正通知は、例えば、所定のメッセージ、マークまたは画像を図柄表示部１０４に表示したり、所定のメッセージ音や効果音をスピーカ３８０から出力したり、Ｉ／Ｆ２１０を介してＣＰＵ２０２の製造元、管理者または他の機器にエラーメッセージを送信したり、Ｉ／Ｆ２１０を介して上記表示や音声出力を他の機器に行わせるための制御信号を送信したりすることにより行うことができる。これにより、主制御部２００に不正が行われた可能性があることをユーザ等に認識させ、調査や修理等の措置を講じさせることができる。
【０１６１】
一方、ステップＳ１０８で、許可アドレスでないと判定したとき(No)、ステップＳ１０６で、許可命令コード列でないと判定したとき(No)、およびステップＳ１００で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ２３４、２３６が保持しているデータをＩ／Ｆ２１２に出力せずに、ステップＳ１１４に移行する。このとき、ＣＰＵコア２０３のレジスタ２０３ｃには、アクセス制御装置２３０からの出力がないので、「００００」や「１１１１」等の非正当値が保持される。非正当値を所定値にしておき、その値がレジスタ２０３ｃに保持された場合、ＣＰＵコア２０３は、不正通知を行ってもよい。ここで、所定値とは、例えば、複数種類の固定値群や、あらかじめ変動規則を定めておいた変動値である。
【０１６２】
〔ＲＯＭのメモリ構造〕
次に、ＲＯＭ２０４のメモリ構造を説明する。
【０１６３】
図９は、ＲＯＭ２０４のメモリ構造を模式的に示した図である。
【０１６４】
ＲＯＭ２０４は、図９に示すように、ＣＰＵコア２０３が実行する命令コード列を記憶する。
【０１６５】
ＲＯＭ２０４の記憶領域２０４ａには、所定領域ごと（例えば、１バイトごと）にアドレスが割り当てられている。図９の例では、記憶領域２０４ａに対してアドレス「０ｘ０００」〜「０ｘＮＮＮ」が割り当てられており、各アドレスは１バイト分の領域を示している。例えば、アドレス「０ｘ１００」〜「０ｘ１０３」には、命令コード列「０ｘＡＢＣＤＥＦＧＨ」（リード命令）が格納されている。また、アドレス「０ｘ１０４」〜「０ｘ１０７」には、命令コード列「０ｘＪＫＬＭＮＯＰＱ」（ライト命令）が格納されている。
【０１６６】
〔遊技制御処理〕
次に、ＣＰＵコア２０３で実行される遊技制御処理を説明する。
【０１６７】
ＣＰＵコア２０３は、所定の動作クロック（例えば、４[ms]）で１サイクルを実行可能な制御プログラムをＲＯＭ２０４から読み出し、読み出した制御プログラムに従って、図１０のフローチャートに示す遊技制御処理を実行する。
【０１６８】
図１０は、遊技制御処理を示すフローチャートである。
【０１６９】
遊技制御処理は、ＣＰＵコア２０３において実行されると、図１０に示すように、まず、ステップＳ２００に移行する。
【０１７０】
ステップＳ２００では、電源がオンになったか否かを判定し、電源がオンになったと判定したとき(Yes)は、ステップＳ２０２に移行するが、そうでないと判定したとき(No)は、電源がオンになるまでステップＳ２００で待機する。
【０１７１】
ステップＳ２０２では、ＲＡＭ２０６の内容を初期化し、Ｉ／Ｆ２１０を介して、演出制御部３００および賞球制御部４００に電源オンコマンドを送信する初期化処理を実行する。
【０１７２】
次いで、ステップＳ２０４に移行して、始動入賞口１０５に遊技球が入賞したことを判定する入賞判定処理を実行し、ステップＳ２０６に移行して、大当たりの判定を行うとともに演出図柄の変動パターンを決定する大当たり判定処理を実行し、ステップＳ２０８に移行して、大入賞口１０９の開閉部材を所定パターンで開放させる電動役物制御処理を実行し、ステップＳ２１０に移行する。
【０１７３】
ステップＳ２１０では、賞球制御部４００に対して遊技球の払出を指定するための制御コマンド（払出制御コマンド）をＲＡＭ２０６の送信バッファに格納する賞球払出制御処理を実行し、ステップＳ２１２に移行して、送信バッファに格納された制御コマンドを演出制御部３００または賞球制御部４００に送信する制御コマンド送信処理を実行し、ステップＳ２１４に移行する。
【０１７４】
ステップＳ２１４では、電源がオフになったか否かを判定し、電源がオフになったと判定したとき(Yes)は、ステップＳ２１６に移行して、Ｉ／Ｆ２１０を介して、演出制御部３００および賞球制御部４００に電源オフコマンドを送信する終了処理を実行し、遊技制御処理を終了する。
【０１７５】
一方、ステップＳ２１４で、電源がオフになっていないと判定したとき(No)は、ステップＳ２０４に移行する。
【０１７６】
なお、乱数カウンタは、上記動作クロックの１周期（例えば、４[ms]）のうち各処理を実行した残余時間を利用して更新される。またその他、遊技制御処理と並列に実行される乱数更新処理で更新することもできる。乱数カウンタは、例えば、「０」から順に「１」ずつカウントアップを行っていき、カウント値が最大値（例えば、「９９９」）を超えたときに「０」に戻すことにより、所定の数値範囲（例えば、「０」〜「９９９」）で循環的にカウントを行う。
【０１７７】
〔制御コマンド送信処理〕
次に、ステップＳ２１２の制御コマンド送信処理を説明する。
【０１７８】
図１１は、制御コマンド送信処理を示すフローチャートである。
【０１７９】
制御コマンド送信処理は、ステップＳ２１２において実行されると、図１１に示すように、まず、ステップＳ３００に移行する。
【０１８０】
ステップＳ３００では、制御コマンドを送信バッファから読み出し、ステップＳ３０２に移行して、読み出した制御コマンドがはずれ非リーチコマンドまたははずれリーチコマンドであるか否かを判定し、はずれ非リーチコマンドまたははずれリーチコマンドであると判定したとき(Yes)は、ステップＳ３０４に移行する。
【０１８１】
ステップＳ３０４では、ＣＰＵ２０２に接続された機器（以下、接続機器という。）の認証を行う接続機器認証処理を実行し、一連の処理を終了して元の処理に復帰させる。
【０１８２】
一方、ステップＳ３０２で、はずれ非リーチコマンドまたははずれリーチコマンドでないと判定したとき(No)は、ステップＳ３０６に移行して、Ｉ／Ｆ２１０を介して、ステップＳ３００で読み出した制御コマンドをそのまま演出制御部３００または賞球制御部４００に送信し、一連の処理を終了して元の処理に復帰させる。
【０１８３】
〔接続機器認証処理〕
次に、ステップＳ３０４の接続機器認証処理を説明する。
【０１８４】
ＣＰＵ２０２には、各種の機器の接続が可能であるが、ユーザやメーカが承認していない機器が不正に接続され、ＣＰＵ２０２の誤動作を発生させたり、ＲＯＭ２０４のデータが改ざんされたり、盗まれたりする恐れがある。これを防止するため、ＣＰＵ２０２は、接続機器の認証を行う。なお、接続機器認証処理の実行にはアクセス制御装置２３０も密接に関係するため、ここでは、接続機器認証処理の実行に伴うＣＰＵコア２０３およびアクセス制御装置２３０の動作を説明する。
【０１８５】
図１２は、接続機器認証処理の実行に伴うＣＰＵコア２０３およびアクセス制御装置２３０の動作を示すフローチャートである。
【０１８６】
ＣＰＵコア２０３は、図１２に示すように、まず、ステップＳ４００を経て、ＲＡＭ２０６のフラグに基づいてステップＳ４１４の処理まで終了しているか否かを判定する。その結果、ステップＳ４１４の処理まで終了していないと判定したとき(No)は、ステップＳ４０２、Ｓ４０４を経て、接続機器から認証用データを取得し、Ｉ／Ｆ２１２を介して、取得した認証用データを用いて検証値Ｖの生成要求を出力する。検証値Ｖは、接続機器を認証するために用いる値である。なお、ステップＳ４０２で取得した認証用データをそのまま検証値Ｖとしてもよい。
【０１８７】
アクセス制御装置２３０は、検証値Ｖの生成要求を入力すると、ステップＳ４０６を経て、演算部２３２で検証値Ｖを生成し、レジスタ２３４に保持する。
【０１８８】
次いで、ＣＰＵコア２０３は、ステップＳ４０８を経て、アクセス制御装置２３０のレジスタ２３４から検証値Ｖを読み出すリード命令をＲＯＭ２０４から読み出し、読み出したリード命令を実行することにより、Ｉ／Ｆ２１２を介してレジスタ２３４に対するリード要求を出力する。また、ステップＳ４１０を経て、読み出したリード命令およびそのアドレスを、ステップＳ３００で読み出したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ２１２を介して出力するとともにＩ／Ｆ２１０を介して演出制御部３００に送信する。
【０１８９】
アクセス制御装置２３０は、リード要求を入力すると、ステップＳ４１２を経て、はずれ非リーチコマンドまたははずれリーチコマンドを入力し、はずれ非リーチコマンドまたははずれリーチコマンドに付加されているリード命令およびそのアドレスを入力する。そして、許可命令コード列および許可アドレスであれば、レジスタ２３４が保持している検証値Ｖを読み出し、読み出した検証値ＶをＩ／Ｆ２１２に出力する。
【０１９０】
ＣＰＵコア２０３は、検証値Ｖを入力すると、ステップＳ４１４を経て、入力した検証値Ｖをレジスタ２０３ｃに保持し、ステップＳ４１４の処理まで終了したことを示すフラグをＲＡＭ２０６に格納し、一連の処理を終了して元の処理に復帰させる。
【０１９１】
一方、ＣＰＵコア２０３は、ステップＳ４００で、ステップＳ４１４の処理まで終了していると判定したとき(Yes)は、ステップＳ４１６を経て、ＲＡＭ２０６のフラグに基づいてステップＳ４２２の処理まで終了しているか否かを判定する。その結果、ステップＳ４２２の処理まで終了していないと判定したとき(No)は、ステップＳ４１８を経て、アクセス制御装置２３０のレジスタ２３６に検証値Ｖを書き込むライト命令をＲＯＭ２０４から読み出し、読み出したライト命令を実行することにより、Ｉ／Ｆ２１２を介してレジスタ２３６に対するライト要求を出力する。また、ステップＳ４２０を経て、読み出したライト命令およびそのアドレスを、ステップＳ３００で読み出したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ２１２を介して出力するとともにＩ／Ｆ２１０を介して演出制御部３００に送信する。さらに、ステップＳ４２２を経て、Ｉ／Ｆ２１２を介して、ステップＳ４１４でレジスタ２０３ｃに保持した検証値Ｖを出力する。そして、ステップＳ４２２の処理まで終了したことを示すフラグをＲＡＭ２０６に格納し、一連の処理を終了して元の処理に復帰させる。
【０１９２】
アクセス制御装置２３０は、ライト要求を入力すると、ステップＳ４２４を経て、はずれ非リーチコマンドまたははずれリーチコマンドを入力し、はずれ非リーチコマンドまたははずれリーチコマンドに付加されているライト命令およびそのアドレスを入力する。そして、許可命令コード列および許可アドレスであれば、検証値Ｖを入力し、入力した検証値Ｖをレジスタ２３６に書き込む。
【０１９３】
一方、ＣＰＵコア２０３は、ステップＳ４１６で、ステップＳ４２２の処理まで終了していると判定したとき(Yes)は、ステップＳ４２６を経て、ＲＡＭ２０６のフラグに基づいてステップＳ４３４の処理まで終了しているか否かを判定する。その結果、ステップＳ４３４の処理まで終了していないと判定したとき(No)は、ステップＳ４２８を経て、Ｉ／Ｆ２１２を介して期待値Ｐの生成要求を出力する。期待値Ｐは、検証値Ｖを照合するために用いる値である。
【０１９４】
アクセス制御装置２３０は、期待値Ｐの生成要求を入力すると、ステップＳ４３０を経て、演算部２３２で期待値Ｐを生成し、レジスタ２３４に保持する。
【０１９５】
次いで、ＣＰＵコア２０３は、ステップＳ４３２を経て、アクセス制御装置２３０のレジスタ２３４から期待値Ｐを読み出すリード命令をＲＯＭ２０４から読み出し、読み出したリード命令を実行することにより、Ｉ／Ｆ２１２を介してレジスタ２３４に対するリード要求を出力する。また、ステップＳ４３４を経て、読み出したリード命令およびそのアドレスを、ステップＳ３００で読み出したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ２１２を介して出力するとともにＩ／Ｆ２１０を介して演出制御部３００に送信する。そして、ステップＳ４３４の処理まで終了したことを示すフラグをＲＡＭ２０６に格納し、一連の処理を終了して元の処理に復帰させる。
【０１９６】
アクセス制御装置２３０は、リード要求を入力すると、ステップＳ４３６を経て、はずれ非リーチコマンドまたははずれリーチコマンドを入力し、はずれ非リーチコマンドまたははずれリーチコマンドに付加されているリード命令およびそのアドレスを入力する。そして、許可命令コード列および許可アドレスであれば、レジスタ２３４が保持している期待値Ｐを読み出し、読み出した期待値ＰをＩ／Ｆ２１２に出力する。
【０１９７】
一方、ＣＰＵコア２０３は、ステップＳ４２６で、ステップＳ４３４の処理まで終了していると判定したとき(Yes)は、ステップＳ４３８を経て、ＲＡＭ２０６のフラグに基づいてステップＳ４５０、Ｓ４５２の処理まで終了しているか否かを判定する。その結果、ステップＳ４５０、Ｓ４５２の処理まで終了していないと判定したとき(No)は、ステップＳ４４０を経て、アクセス制御装置２３０のレジスタ２３６から検証値Ｖを読み出すリード命令をＲＯＭ２０４から読み出し、読み出したリード命令を実行することにより、Ｉ／Ｆ２１２を介してレジスタ２３６に対するリード要求を出力する。また、ステップＳ４４２を経て、読み出したリード命令およびそのアドレスを、ステップＳ３００で読み出したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ２１２を介して出力するとともにＩ／Ｆ２１０を介して演出制御部３００に送信する。
【０１９８】
アクセス制御装置２３０は、リード要求を入力すると、ステップＳ４４４を経て、はずれ非リーチコマンドまたははずれリーチコマンドを入力し、はずれ非リーチコマンドまたははずれリーチコマンドに付加されているリード命令およびそのアドレスを入力する。そして、許可命令コード列および許可アドレスであれば、レジスタ２３６が保持している検証値Ｖを読み出し、読み出した検証値ＶをＩ／Ｆ２１２に出力する。
【０１９９】
ＣＰＵコア２０３は、検証値Ｖおよび期待値Ｐを入力すると、ステップＳ４４６、Ｓ４４８を経て、検証値Ｖと期待値Ｐとを照合し、照合結果が正しいか否かを判定する。照合結果が正しいか否かは、例えば、検証値Ｖが期待値Ｐと所定関係にあるか否かにより判定する。所定関係とは、例えば、検証値Ｖが期待値Ｐと一致していること、検証値Ｖおよび期待値Ｐの一方を所定の演算方法により演算した演算値が他方と一致していること、検証値Ｖおよび期待値Ｐに大小関係その他の相関関係があることをいう。
【０２００】
照合結果が正しいと判定したとき(Yes)は、ＣＰＵコア２０３は、ステップＳ４５０を経て、接続機器を認証し、ステップＳ４５０の処理まで終了したことを示すフラグをＲＡＭ２０６に格納し、一連の処理を終了して元の処理に復帰させる。一方、照合結果が正しくないと判定したとき(No)は、ＣＰＵコア２０３は、ステップＳ４５２を経て、接続機器を認証せず、ステップＳ４５２の処理まで終了したことを示すフラグをＲＡＭ２０６に格納し、一連の処理を終了して元の処理に復帰させる。接続機器を認証しなかった場合、ＣＰＵコア２０３は、不正通知を行ったり接続機器との接続を切断したりする。
【０２０１】
一方、ＣＰＵコア２０３は、ステップＳ４３８で、ステップＳ４５０、Ｓ４５２の処理まで終了していると判定したとき(Yes)は、ステップＳ４５４を経て、Ｉ／Ｆ２１０を介して、ステップＳ３００で読み出したはずれ非リーチコマンドまたははずれリーチコマンドをそのまま演出制御部３００に送信する。
【０２０２】
〔入賞判定処理〕
次に、ステップＳ２０４の入賞判定処理を説明する。
【０２０３】
図１３は、入賞判定処理を示すフローチャートである。
【０２０４】
入賞判定処理は、ステップＳ２０４において実行されると、図１３に示すように、まず、ステップＳ５００に移行する。
【０２０５】
ステップＳ５００では、保留球数が「０」であるか否かを判定し、保留球数が「０」であると判定したとき(Yes)は、ステップＳ５０２に移行する。
【０２０６】
ステップＳ５０２では、タイマ２１４を用いて始動入賞口１０５への最後の入賞から所定時間（例えば、１０分）が経過したか否かを判定し、所定時間が経過したと判定したとき(Yes)は、ステップＳ５０４に移行する。
【０２０７】
ステップＳ５０４では、客待ちデモを行う客待ちデモ実行処理を実行する。客待ちデモ実行処理では、客待ちデモコマンドを送信バッファに格納することにより客待ちデモを開始する。また、始動入賞口１０５への入賞、発射部４８２に対する操作等を契機として遊技の再開を検出したときは、客待ちデモ停止コマンドを送信バッファに格納することにより客待ちデモを終了する。これにより、ステップＳ２１２の制御コマンド送信処理では、客待ちデモコマンドまたは客待ちデモ停止コマンドが演出制御部３００に送信される。
【０２０８】
次いで、ステップＳ５０６に移行して、Ｉ／Ｆ２１０を介して始動入賞口検出部２８０からのセンサ信号を読み込み、読み込んだセンサ信号に基づいて始動入賞口１０５に遊技球が入賞したことを検出したか否かを判定し、遊技球の入賞を検出したと判定したとき(Yes)は、ステップＳ５０８に移行する。
【０２０９】
ステップＳ５０８では、保留球数が「４」以上であるか否かを判定し、保留球数が「４」未満であると判定したとき(No)は、ステップＳ５１０に移行して、保留球数に「１」を加算し、ステップＳ５１２に移行する。
【０２１０】
ステップＳ５１２では、大当たり決定乱数、停止図柄決定乱数その他遊技制御に用いる乱数を乱数カウンタから取得し、ステップＳ５１４に移行して、取得した各乱数を、保留球数に対応したＲＡＭ２０６の所定領域にそれぞれ格納し、一連の処理を終了して元の処理に復帰させる。
【０２１１】
一方、ステップＳ５０８で、保留球数が「４」以上であると判定したとき(Yes)、およびステップＳ５０６で、遊技球の入賞を検出しないと判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
【０２１２】
一方、ステップＳ５０２で、所定時間が経過していないと判定したとき(No)、およびステップＳ５００で、保留球数が「０」でないと判定したとき(No)はいずれも、ステップＳ５０６に移行する。
【０２１３】
〔大当たり判定処理〕
次に、ステップＳ２０６の大当たり判定処理を説明する。
【０２１４】
図１４は、大当たり判定処理を示すフローチャートである。
【０２１５】
大当たり判定処理は、所定確率で大当たりを発生させるために、大当たり決定乱数がとり得る所定の数値範囲（例えば、「０」〜「４００」）に１個の大当たり値を設定し、始動入賞口１０５に遊技球が入賞した入賞タイミングで大当たり決定乱数を取得し、取得した乱数値と大当たり値とが一致しているときに大当たりを発生させる処理であって、ステップＳ２０６において実行されると、図１４に示すように、まず、ステップＳ６００に移行する。
【０２１６】
ステップＳ６００では、図柄表示部１０４において演出図柄が変動中か否かを判定し、演出図柄が変動中でないと判定したとき(No)は、ステップＳ６０２に移行して、保留球数が「１」以上であるか否かを判定し、保留球数が「１」以上であると判定したとき(Yes)は、ステップＳ６０４に移行する。
【０２１７】
ステップＳ６０４では、保留球数に対応したＲＡＭ２０６の所定領域から大当たり決定乱数を読み出し、ステップＳ６０６に移行して、読み出した乱数値が大当たり値と一致しているか否かを判定し、大当たり値と一致していると判定したとき(Yes)は、ステップＳ６０８に移行して、大当たりフラグをセットし、ステップＳ６１０に移行する。
【０２１８】
ステップＳ６１０では、大当たり時に停止させる演出図柄の態様を決定する大当たり時停止図柄決定処理を実行する。大当たり時停止図柄決定処理では、例えば、大当たり用の停止図柄決定テーブルをＲＯＭ２０４から読み出す。そして、保留球数に対応したＲＡＭ２０６の所定領域から停止図柄決定乱数を読み出し、読み出した乱数値の順位の停止図柄番号を、読み出した停止図柄決定テーブルから取得し、取得した停止図柄番号を示す制御コマンド（図柄指定コマンド）を送信バッファに格納する。
【０２１９】
次いで、ステップＳ６１２に移行して、大当たり時に変動表示する演出図柄の変動パターンを決定する大当たり時変動パターン決定処理を実行する。大当たり時変動パターン決定処理では、例えば、リーチ決定乱数を乱数カウンタから取得し、取得した乱数値に対応する大当たり用の変動パターン決定テーブルをＲＯＭ２０４から読み出す。大当たりリーチコマンドは、１または複数の特定の変動パターン決定テーブルにのみ登録されているので、リーチ決定乱数に基づくこの選択は、リーチ演出を行うか否かを決定することになる。そして、変動パターン決定乱数を乱数カウンタから取得し、取得した乱数値の順位の変動パターン番号を、読み出した変動パターン決定テーブルから取得し、取得した変動パターン番号を示す変動パターンコマンドを送信バッファに格納する。これにより、ステップＳ２１２の制御コマンド送信処理では、大当たりリーチコマンドその他大当たり時に選択される変動パターンコマンドが演出制御部３００に送信される。
【０２２０】
次いで、ステップＳ６１４に移行して、演出制御部３００に対して演出図柄の変動開始を指定するための制御コマンド（変動開始コマンド）を送信バッファに格納する図柄変動開始処理を実行し、ステップＳ６１６に移行して、保留球数から「１」を減算し、一連の処理を終了して元の処理に復帰させる。
【０２２１】
一方、ステップＳ６０６で、大当たり値と一致しないと判定したとき(No)は、ステップＳ６１８に移行して、はずれ時に停止させる演出図柄の態様を決定するはずれ時停止図柄決定処理を実行する。はずれ時停止図柄決定処理は、ステップＳ６１０と同様に構成される。ステップＳ６１０と異なるのは、はずれ用の停止図柄決定テーブルを用いる点である。
【０２２２】
次いで、ステップＳ６２０に移行して、はずれ時に変動表示する演出図柄の変動パターンを決定するはずれ時変動パターン決定処理を実行する。はずれ時変動パターン決定処理は、ステップＳ６１２と同様に構成される。ステップＳ６１２と異なるのは、はずれ用の変動パターン決定テーブルを用いる点である。これにより、ステップＳ２１２の制御コマンド送信処理では、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスが付加されたはずれ非リーチコマンド、命令コード列およびアドレスが付加されたはずれリーチコマンドその他はずれ時に選択される変動パターンコマンドが演出制御部３００に送信される。
【０２２３】
ステップＳ６２０の処理が終了すると、ステップＳ６１４に移行する。
【０２２４】
一方、ステップＳ６００で、図柄表示部１０４において演出図柄が変動中であると判定したとき(Yes)は、ステップＳ６２２に移行する。
【０２２５】
ステップＳ６２２では、演出図柄の変動を開始してから所定時間（例えば、３０秒）が経過したか否かを判定し、所定時間が経過したと判定したとき(Yes)は、ステップＳ６２４に移行して、演出制御部３００に対して演出図柄の停止を指定するための制御コマンド（図柄停止コマンド）を送信バッファに格納する図柄停止処理を実行し、一連の処理を終了して元の処理に復帰させる。
【０２２６】
一方、ステップＳ６２２で、所定時間が経過していないと判定したとき(No)、およびステップＳ６０２で、保留球数が「０」であると判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
【０２２７】
〔電動役物制御処理〕
次に、ステップＳ２０８の電動役物制御処理を説明する。
【０２２８】
図１５は、電動役物制御処理を示すフローチャートである。
【０２２９】
電動役物制御処理は、ステップＳ１０８において実行されると、図１５に示すように、まず、ステップＳ７００に移行する。
【０２３０】
ステップＳ７００では、大当たりフラグに基づいて大当たりか否かを判定し、大当たりフラグがセットされていることにより大当たりであると判定したとき(Yes)は、ステップＳ７０２に移行する。
【０２３１】
ステップＳ７０２では、大当たり演出を開始するタイミングであるか否かを判定し、大当たり演出を開始するタイミングであると判定したとき(Yes)は、ステップＳ７０４に移行する。
【０２３２】
ステップＳ７０４では、大当たり開始コマンドを送信バッファに格納する大当たり演出開始処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップＳ２１２の制御コマンド送信処理では、大当たり開始コマンドが演出制御部３００に送信される。
【０２３３】
一方、ステップＳ７０２で、大当たり演出を開始するタイミングでないと判定したとき(No)は、ステップＳ７０６に移行して、ラウンドを開始するタイミングであるか否かを判定し、ラウンドを開始するタイミングであると判定したとき(Yes)は、ステップＳ７０８に移行する。
【０２３４】
ステップＳ７０８では、ラウンド開始コマンドを送信バッファに格納するラウンド開始処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップＳ２１２の制御コマンド送信処理では、ラウンド開始コマンドが演出制御部３００に送信される。
【０２３５】
一方、ステップＳ７０６で、ラウンドを開始するタイミングでないと判定したとき(No)は、ステップＳ７１０に移行して、ラウンドが継続中であるか否かを判定し、ラウンドが継続中であると判定したとき(Yes)は、ステップＳ７１２に移行する。
【０２３６】
ステップＳ７１２では、大入賞口開閉部２８８により大入賞口１０９の開閉を制御する大入賞口開閉制御処理を実行し、一連の処理を終了して元の処理に復帰させる。
【０２３７】
一方、ステップＳ７１０で、ラウンドが継続中でないと判定したとき(No)は、ステップＳ７１４に移行して、ラウンドを終了するタイミングであるか否かを判定し、ラウンドを終了するタイミングであると判定したとき(Yes)は、ステップＳ７１６に移行する。
【０２３８】
ステップＳ７１６では、ラウンド回数に「１」を加算し、ステップＳ７１８に移行して、ラウンド回数が最大ラウンド数（例えば、１５回）を超えたか否かを判定し、最大ラウンド数を超えていないと判定したとき(No)は、ステップＳ７２０に移行する。
【０２３９】
ステップＳ７２０では、ラウンド終了コマンドを送信バッファに格納するラウンド終了処理を実行し、一連の処理を終了して元の処理に復帰させる。これにより、ステップＳ２１２の制御コマンド送信処理では、ラウンド終了コマンドが演出制御部３００に送信される。
【０２４０】
一方、ステップＳ７１８で、ラウンド回数が最大ラウンド数を超えていると判定したとき(Yes)は、ステップＳ７２２に移行する。
【０２４１】
ステップＳ７２２では、大当たり終了コマンドを送信バッファに格納する大当たり演出終了処理を実行する。これにより、ステップＳ２１２の制御コマンド送信処理では、大当たり終了コマンドが演出制御部３００に送信される。
【０２４２】
次いで、ステップＳ７２４に移行して、大当たりフラグをリセットし、一連の処理を終了して元の処理に復帰させる。
【０２４３】
一方、ステップＳ７１４で、ラウンドを終了するタイミングでないと判定したとき(No)、およびステップＳ７００で、大当たりフラグがリセットされていることにより大当たりでないと判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
【０２４４】
〔演出制御処理〕
次に、演出制御部３００で実行される演出制御処理を説明する。
【０２４５】
ＣＰＵ３０２は、制御プログラムをＲＯＭ３０４から読み出し、読み出した制御プログラムに従って、図１６のフローチャートに示す演出制御処理を実行する。
【０２４６】
図１６は、演出制御処理を示すフローチャートである。
【０２４７】
演出制御処理は、ＣＰＵ３０２において実行されると、図１６に示すように、まず、ステップＳ８００に移行する。
【０２４８】
ステップＳ８００では、変動パターンコマンドを受信する変動パターンコマンド受信処理を実行し、ステップＳ８０２に移行して、大当たりコマンドを受信する大当たりコマンド受信処理を実行し、ステップＳ８０４に移行する。
【０２４９】
ステップＳ８０４では、変動パターンコマンドおよび大当たりコマンド以外の制御コマンドを受信するその他制御コマンド受信処理を実行し、ステップＳ８００に移行する。
【０２５０】
〔変動パターンコマンド受信処理〕
次に、ステップＳ８００の変動パターンコマンド受信処理を説明する。
【０２５１】
図１７は、変動パターンコマンド受信処理を示すフローチャートである。
【０２５２】
変動パターンコマンド受信処理は、ステップＳ８００において実行されると、図１７に示すように、まず、ステップＳ９００に移行する。
【０２５３】
ステップＳ９００では、Ｉ／Ｆ３１０を介して変動パターンコマンドを受信したか否かを判定し、変動パターンコマンドを受信したと判定したとき(Yes)は、ステップＳ９０２に移行するが、そうでないと判定したとき(No)は、変動パターンコマンドを受信するまでステップＳ９００で待機する。
【０２５４】
ステップＳ９０２では、乱数カウンタから乱数を取得し、ステップＳ９０４に移行して、取得した乱数に基づいて、受信した変動パターンコマンドに対応する複数の変動演出のなかからいずれかを選択し、ステップＳ９０６に移行する。
【０２５５】
ステップＳ９０６では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、選択した変動演出の開始を指定するための制御コマンド（変動演出開始コマンド）をそれぞれ送信する変動演出開始処理を実行する。
【０２５６】
次いで、ステップＳ９０８に移行して、変動演出開始コマンドを送信してから所定時間（例えば、３０秒）が経過したか否かを判定し、所定時間が経過していないと判定したとき(No)は、ステップＳ９１０に移行して、Ｉ／Ｆ３１０を介して図柄停止コマンドを受信したか否かを判定し、図柄停止コマンドを受信したと判定したとき(Yes)は、ステップＳ９１２に移行する。
【０２５７】
ステップＳ９１２では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、変動演出の終了を指定するための制御コマンド（変動演出終了コマンド）をそれぞれ送信する変動演出終了処理を実行する。
【０２５８】
ステップＳ９１２の処理が終了すると、一連の処理を終了して元の処理に復帰させる。
【０２５９】
一方、ステップＳ９１０で、図柄停止コマンドを受信しないと判定したとき(No)は、ステップＳ９０８に移行する。
【０２６０】
一方、ステップＳ９０８で、所定時間が経過したと判定したとき(Yes)は、ステップＳ９１２に移行する。
【０２６１】
なお、乱数カウンタの更新は、主制御部２００で採用される上記方法により行うことができる。ただし、更新方法は、主制御部２００とは必ずしも同一でなくてもよい。
【０２６２】
〔大当たりコマンド受信処理〕
次に、ステップＳ８０２の大当たりコマンド受信処理を説明する。
【０２６３】
図１８は、大当たりコマンド受信処理を示すフローチャートである。
【０２６４】
大当たりコマンド受信処理は、ステップＳ８０２において実行されると、図１８に示すように、まず、ステップＳ１０００に移行する。
【０２６５】
ステップＳ１０００では、Ｉ／Ｆ３１０を介して大当たり開始コマンドを受信したか否かを判定し、大当たり開始コマンドを受信したと判定したとき(Yes)は、ステップＳ１００２に移行する。
【０２６６】
ステップＳ１００２では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、大当たり演出の開始を指定するための制御コマンド（大当たり演出開始コマンド）をそれぞれ送信する大当たり演出開始処理を実行する。
【０２６７】
次いで、ステップＳ１００４に移行して、Ｉ／Ｆ３１０を介してラウンド開始コマンドを受信したか否かを判定し、ラウンド開始コマンドを受信したと判定したとき(Yes)は、ステップＳ１００６に移行する。
【０２６８】
ステップＳ１００６では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、ラウンド演出の開始を指定するための制御コマンド（ラウンド演出開始コマンド）をそれぞれ送信するラウンド演出開始処理を実行する。
【０２６９】
次いで、ステップＳ１００８に移行して、Ｉ／Ｆ３１０を介してラウンド終了コマンドを受信したか否かを判定し、ラウンド終了コマンドを受信したと判定したとき(Yes)は、ステップＳ１０１０に移行する。
【０２７０】
ステップＳ１０１０では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、ラウンド演出の終了を指定するための制御コマンド（ラウンド演出終了コマンド）をそれぞれ送信するラウンド演出終了処理を実行し、ステップＳ１００４に移行する。
【０２７１】
一方、ステップＳ１００８で、ラウンド終了コマンドを受信しないと判定したとき(No)は、ステップＳ１０１２に移行して、Ｉ／Ｆ３１０を介して大当たり終了コマンドを受信したか否かを判定し、大当たり終了コマンドを受信したと判定したとき(Yes)は、ステップＳ１０１４に移行する。
【０２７２】
ステップＳ１０１４では、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、大当たり演出の終了を指定するための制御コマンド（大当たり演出終了コマンド）をそれぞれ送信する大当たり演出終了処理を実行し、一連の処理を終了して元の処理に復帰させる。
【０２７３】
一方、ステップＳ１０１２で、大当たり終了コマンドを受信しないと判定したとき(No)は、ステップＳ１００８に移行する。
【０２７４】
一方、ステップＳ１００４で、ラウンド開始コマンドを受信しないと判定したとき(No)は、ラウンド開始コマンドを受信するまでステップＳ１００４で待機する。
【０２７５】
一方、ステップＳ１０００で、大当たり開始コマンドを受信しないと判定したとき(No)は、大当たり開始コマンドを受信するまでステップＳ１０００で待機する。
【０２７６】
〔本実施の形態の動作〕
次に、本実施の形態の動作を説明する。
【０２７７】
まず、パチンコ機に電源が投入されると、主制御部２００では、ステップＳ２０２を経て、初期化処理が実行される。初期化処理では、電源オンコマンドが送信される。電源オンコマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、命令コード列およびアドレスが付加されることなく演出制御部３００および賞球制御部４００にそのまま送信される。
【０２７８】
演出制御部３００では、電源オンコマンドを受信すると、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して、電源オン時の演出用の制御コマンド（具体的には、デモ画面の表示、ランプ３８４の点灯、音声の出力を指定するための制御コマンド）がそれぞれ送信される。
【０２７９】
初期化処理が終了すると、主制御部２００では、ステップＳ２０４〜Ｓ２１２を経て、入賞判定処理、大当たり判定処理、電動役物制御処理および制御コマンド送信処理が所定周期で繰り返し実行される。これにより、パチンコ機は、遊技可能な状態となる。遊技者は、貸し出しを受けた遊技球をパチンコ機に装填し、発射部４８２を操作して遊技球を遊技盤１０１に発射することにより遊技を行うことができる。
【０２８０】
遊技者により発射された遊技球が始動入賞口１０５に入賞すると、主制御部２００では、ステップＳ５０６、Ｓ５１２を経て、その入賞タイミングで大当たり決定乱数が取得される。そして、ステップＳ６０４、Ｓ６０６を経て、取得された乱数値が大当たり値と一致していれば、大当たりとなる。
【０２８１】
大当たりとなると、ステップＳ６１０、Ｓ６１２を経て、大当たり時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、大当たり図柄を指定するための図柄指定コマンドおよび大当たりリーチコマンドが送信される。大当たりリーチコマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０２８２】
演出制御部３００では、大当たりリーチコマンドを受信すると、ステップＳ９０２〜Ｓ９１２を経て、受信した大当たりリーチコマンドに基づいて大当たりリーチ変動時の処理が実行される。
【０２８３】
主制御部２００では、ステップＳ６１４、Ｓ６２４を経て、所定の変動パターンで演出図柄を変動表示させ、演出図柄の一部をリーチ図柄で停止させた後に大当たり図柄で演出図柄を停止させる。演出図柄が停止すると、制御コマンド送信処理では、大当たり開始コマンドが送信される。大当たり開始コマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０２８４】
演出制御部３００では、大当たり開始コマンドを受信すると、ステップＳ１００２を経て、受信した大当たり開始コマンドに基づいて大当たり演出開始時の処理が実行される。
【０２８５】
大当たり中は、最大ラウンド数を上限として所定条件を満たすまでラウンドが継続される。制御コマンド送信処理では、ラウンドの開始時および終了時に大当たりコマンドが送信される。大当たりコマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０２８６】
演出制御部３００では、大当たりコマンドを受信すると、ステップＳ９０６、Ｓ９１０を経て、受信した大当たりコマンドに基づいて大当たり演出中の処理が実行される。
【０２８７】
また、大当たり中は、大入賞口１０９が所定の開閉パターンで開放し、大入賞口１０９に遊技球が入賞すると、遊技球１個につき所定数の遊技球が賞球として払い出される。
【０２８８】
そして、最終ラウンドが終了すると、制御コマンド送信処理では、大当たり終了コマンドが送信される。大当たり終了コマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０２８９】
演出制御部３００では、大当たり終了コマンドを受信すると、ステップＳ１０１４を経て、受信した大当たり終了コマンドに基づいて大当たり演出終了時の処理が実行される。
【０２９０】
一方、ステップＳ６０４、Ｓ６０６を経て、取得された乱数値が大当たり値と一致しなければ、はずれとなる。
【０２９１】
はずれとなると、ステップＳ６１８、Ｓ６２０を経て、はずれ時の停止図柄の態様および変動パターンが決定される。このとき、リーチ演出を行うことが決定されると、制御コマンド送信処理では、はずれ図柄（または、はずれ図柄となる旨）を指定するための図柄指定コマンドおよびはずれリーチコマンドが送信される。これに対し、リーチ演出を行わないことが決定されると、制御コマンド送信処理では、同図柄指定コマンドおよびはずれ非リーチコマンドが送信される。はずれリーチコマンドまたははずれ非リーチコマンドの送信時は、ステップＳ３０４を経て、接続機器認証処理が実行される。
【０２９２】
接続機器認証処理では、ステップＳ４０２〜Ｓ４５４を経て、アクセス制御装置２３０により接続機器の認証が行われる。このとき、アクセス制御装置２３０へのアクセスのためにＣＰＵコア２０３が実行する命令コード列およびそのアドレスは、ステップＳ４１０、Ｓ４２０、Ｓ４３４、Ｓ４４２を経て、はずれ非リーチコマンドまたははずれリーチコマンドに付加されて出力される。これにより、接続機器の正当性を認証することができる。しかしながら、例えば、悪意を有する第三者によって、不正な機器が認証されるように接続機器認証処理を改ざんされてしまう場合がある。
【０２９３】
例えば、ステップＳ４２４では、アクセス制御装置２３０のレジスタ２３６に対して検証値Ｖが書き込まれている。このとき、レジスタ２３６に書き込まれるのは、本来、ＣＰＵコア２０３のレジスタ２０３ｃに保持されている検証値Ｖである。しかしながら、不正な命令コード列によって、レジスタ２３６に書き込む値をレジスタ２０３ｃ以外の場所（または、レジスタ２０３ｃのうち検証値Ｖが保持されている領域以外の領域）に記憶された値とすることが可能となる。
【０２９４】
また、例えば、ステップＳ４１２では、アクセス制御装置２３０のレジスタ２３４から検証値Ｖが読み出されている。このとき、読み出す値をレジスタ２３４以外の場所（または、レジスタ２３４のうち検証値Ｖが保持されている領域以外の領域）に記憶された値とすることが可能となる。
【０２９５】
これらの不正は、例えば、不正なパッチ等によってＣＰＵコア２０３の処理を分岐させることにより可能となる。
【０２９６】
このような不正行為が行われると、正しい接続機器認証処理が行えず、不正な機器の接続が可能となってしまう。そのため、主制御部２００では、アクセス制御装置２３０を設け、ＣＰＵ２０２によるレジスタ２３４、２３６へのアクセスを制御する。これにより、不正な命令コード列の実行により不正な機器が認証されてしまう可能性を低減することができる。
【０２９７】
図１９は、アクセス制御部２３８が行うアクセス制御の概要を示す説明図である。なお、図１９では、説明の便宜上、構成の一部を省略している。
【０２９８】
図１９に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「０ｘＪＫＬＭＮＯＰＱ」（ライト命令）およびアドレス「０ｘ１０４」であるとする。このとき、正規のＲＯＭ２０４には、アドレス「０ｘ１０４」〜「０ｘ１０７」に命令コード列「０ｘＪＫＬＭＮＯＰＱ」（ライト命令）が記憶されている。
【０２９９】
ＣＰＵコア２０３が、アドレス「０ｘ１０４」〜「０ｘ１０７」から命令コード列「０ｘＪＫＬＭＮＯＰＱ」を読み出して実行する場合（矢印α）、アクセス制御部２３８は、レジスタ２３６へのデータの書込を許可する。
【０３００】
ところが、例えば、不正例１のように、アドレス「０ｘ２００」〜「０ｘ２０３」に不正な命令コード列「０ｘＰＯＩＵＹＴＲＥ」（ライト命令）が書き込まれてしまったとする。この場合、ＣＰＵコア２０３が、アドレス「０ｘ２００」〜「０ｘ２０３」から命令コード列「０ｘＰＯＩＵＹＴＲＥ」を読み出して実行しても（矢印β）、命令コード列のアドレスが許可アドレスではないので、アクセス制御部２３８は、レジスタ２３６へのデータの書込を禁止する（ライト命令を拒否）。
【０３０１】
また、例えば、不正例２のように、アドレス「０ｘ０８０」〜「０ｘ０８３」に不正な命令コード列「０ｘＬＫＪＨＧＦＤＳ」が挿入されてしまったとする。この不正な命令コード列は、例えば、レジスタ２３６に書き込む値を変更する命令コード列である。しかしながら、この不正な命令コード列が挿入されたことにより、本来実行が許可される命令コード列「０ｘＪＫＬＭＮＯＰＱ」（ライト命令）のアドレスが「０ｘ１０８」〜「０ｘ１０Ｂ」となってしまっている。
【０３０２】
そのため、ＣＰＵコア２０３が、アドレス「０ｘ１０８」〜「０ｘ１０Ｂ」から命令コード列「０ｘＪＫＬＭＮＯＰＱ」を読み出して実行しても（矢印γ）、命令コード列のアドレスが許可アドレスではないので、アクセス制御部２３８は、レジスタ２３６へのデータの書込を禁止する（ライト命令を拒否）。このとき、ＣＰＵコア２０３は、アクセス制御装置２３０からの通知を受け、不正通知を行ってもよい。これにより、不正な命令コード列「０ｘＬＫＪＨＧＦＤＳ」の実行により書き込み値が変更されたとしても、その値がレジスタ２３６に書き込まれないので、不正行為が行われる可能性を低減することができる。
【０３０３】
一方、アクセス制御部２３８は、上記不正行為のほか、ビットエラーによりＣＰＵ２０２が誤動作する可能性を低減することもできる。
【０３０４】
図２０は、アクセス制御部２３８が行うアクセス制御の概要を示す説明図である。
【０３０５】
図２０に示すように、例えば、許可命令コード列および許可アドレスが、命令コード列「０ｘＡＢＣＤＥＦＧＨ」（リード命令）およびアドレス「０ｘ１００」、並びに、命令コード列「０ｘＡＢＣＤＥＦＧＩ」（ライト命令）およびアドレス「０ｘ１０４」であるとする。このとき、正規のＲＯＭ２０４には、アドレス「０ｘ１００」〜「０ｘ１０３」に命令コード列「０ｘＡＢＣＤＥＦＧＨ」（リード命令）が記憶されている。
【０３０６】
ＣＰＵコア２０３が命令コード列を読み出す際、命令コード列にビットエラー（例えば、「１」が「０」となる。）が発生してしまう場合がある。その結果、ＣＰＵコア２０３がアドレス「０ｘ１００」〜「０ｘ１０３」から読み出した命令コード列「０ｘＡＢＣＤＥＦＧＨ」（リード命令）が、例えば、命令コード列「０ｘＡＢＣＤＥＦＧＩ」（ライト命令）に置き換わってしまう場合がある（矢印δ）。この場合、ＣＰＵコア２０３が命令コード列「０ｘＡＢＣＤＥＦＧＩ」（ライト命令）を実行すると、アクセス制御装置２３０のデータが予期しない形で書き換えられてしまう可能性がある。
【０３０７】
しかしながら、このようなライト命令が実行されたとしても（矢印ε）、命令コード列のアドレスが許可アドレスではないので、アクセス制御部２３８は、レジスタ２３６へのデータの書込を禁止する（ライト命令を拒否）。
【０３０８】
演出制御部３００では、はずれリーチコマンドまたははずれ非リーチコマンドを受信すると、ステップＳ９０２〜Ｓ９１２を経て、受信したはずれリーチコマンドまたははずれ非リーチコマンドに基づいてはずれ変動時の処理が実行される。
【０３０９】
一方、遊技が中断されると、主制御部２００では、客待ちデモ実行処理が実行される。そして、制御コマンド送信処理では、客待ちデモコマンドが送信される。客待ちデモコマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０３１０】
演出制御部３００では、客待ちデモコマンドを受信すると、客待ちデモ開始時の処理として、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
【０３１１】
その後、遊技が再開されると、制御コマンド送信処理では、客待ちデモ停止コマンドが送信される。客待ちデモ停止コマンドは、はずれ非リーチコマンドおよびはずれリーチコマンド以外の制御コマンドであるので、ステップＳ３０６を経て、命令コード列およびアドレスが付加されることなく演出制御部３００にそのまま送信される。
【０３１２】
演出制御部３００では、客待ちデモ停止コマンドを受信すると、客待ちデモ終了時の処理として、図柄表示部１０４、音声制御部３８２およびランプ制御部３８６に対して客待ちデモ用の制御コマンドがそれぞれ送信される。
【０３１３】
〔本実施の形態の効果〕
このようにして、本実施の形態では、アクセス制御装置２３０は、レジスタ２３４、２３６と、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスをＩ／Ｆ２１２から入力する入力部２３１と、入力部２３１で入力した命令コード列およびアドレスに基づいて、ＣＰＵ２０２によるレジスタ２３４、２３６へのアクセスを制御するアクセス制御部２３８とを備える。
【０３１４】
これにより、レジスタ２３４、２３６のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正行為やエラーに起因する不正動作が行われる可能性を低減することができる。また、ＣＰＵ２０２とは別体のアクセス制御装置２３０がアクセス制御機能を実現するので、ＣＰＵコア２０３自体が不正動作検出処理を行う必要がなく、従来に比して、開発や設計の難易度が高くなることを抑制することができる。さらに、命令コード列およびそのアドレスに基づいてアクセスが制御されるので、ＲＯＭ２０４と同等容量のテーブルを用意する必要がなく、従来に比して、データ容量が増大することを抑制することができる。
【０３１５】
さらに、ＤＩＰ等からなるワンチップ型のマイクロプロセッサであるＣＰＵ２０２を採用する場合において、ＣＰＵコア２０３が不正動作検出処理を行う構成では、ＣＰＵ２０２が丸ごと交換されるような不正行為が行われると、ＣＰＵコア２０３自体が交換されてしまうことになるので、ＣＰＵ２０２の正当性を認証することはできない。これに対し、本実施の形態は、アクセス制御装置２３０がＣＰＵ２０２とは別体に設けられているので、そのような不正行為が行われても、ＣＰＵ２０２の正当性を認証することができる。
【０３１６】
さらに、ＤＩＰ等からなるワンチップ型のマイクロプロセッサであるＣＰＵ２０２を採用する場合において、アクセス制御装置２３０のアクセス制限機能を実現する回路等をＣＰＵ２０２に内蔵する構成では、ＣＰＵ２０２を新たに開発、設計等しなければならず、既存のＣＰＵには適用することができない。これに対し、本実施の形態では、アクセス制御装置２３０をＣＰＵ２０２に接続するだけでよいので、既存のＣＰＵにも適用することができる。
【０３１７】
さらに、本実施の形態では、主制御部２００は、アクセス制御装置２３０へのアクセスのためにＣＰＵコア２０３が実行する命令コード列およびそのアドレスをはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力する。
【０３１８】
これにより、はずれ非リーチコマンドまたははずれリーチコマンドは、はずれ時に送信されるので、大当たり系の制御コマンドに比して送信頻度が高い。そのため、大当たり抽選の後に接続機器の認証を行うという流れを基本とすることができる。大当たり時の遊技制御処理は、機種ごとに演出方法が変更されるなど、特殊な処理に区分されるが、はずれ時の遊技制御処理は、機種ごとの差異が少ない。したがって、はずれ時に認証を行うようにすれば、認証の流れに大きな変更を加えることがないので、他の機種への汎用性を向上することができる。
【０３１９】
さらに、はずれ非リーチコマンドおよびはずれリーチコマンドの送信時に接続機器の認証が行われるので、各制御コマンドの送信ごとに認証を行う場合に比して、主制御部２００および演出制御部３００の処理負荷を低減することができる。したがって、主制御部２００または演出制御部３００が高い処理能力を有していないパチンコ機や、処理負荷が大きいパチンコ機に対しても適用することができる。
【０３２０】
さらに、命令コード列およびアドレスをはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力するので、命令コード列およびアドレスを単体で出力する場合に比して、通信データ中から命令コード列およびアドレスが抽出される可能性を低減することができる。
【０３２１】
さらに、本実施の形態では、アクセス制御部２３８は、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであるときにのみ、レジスタ２３４、２３６へのアクセスを許可する。
【０３２２】
これにより、不正に書き換えられた命令コード列、ビットエラーによって内容が変化した命令コード列、または不正なアドレスに記憶された命令コード列が実行されることにより、レジスタ２３４、２３６のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
【０３２３】
さらに、本実施の形態では、アクセス制御装置２３０によるアクセス制御の状況に応じて不正通知を行う。
【０３２４】
これにより、不正動作が行われた可能性があることを把握することができる。
【０３２５】
さらに、本実施の形態では、主制御部２００のＣＰＵ２０２にアクセス制御装置２３０を適用した。
【０３２６】
これにより、主制御部２００のＣＰＵ２０２が不正動作する可能性を低減することができる。主制御部２００は、遊技の根幹となる主制御を行っているので、セキュリティ効果が高い。
【０３２７】
上記第１の実施の形態において、はずれ非リーチコマンドおよびはずれリーチコマンドは、発明１または１２のはずれコマンドに対応し、図柄表示部１０４は、発明１の図柄表示手段に対応し、ＣＰＵ２０２は、発明１、５、１１または１２のデータ処理装置に対応している。また、ＣＰＵコア２０３は、発明１、４、５、１１または１２のデータ処理手段に対応し、ＲＯＭ２０４は、発明５の命令コード記憶手段に対応し、Ｉ／Ｆ２１０およびステップＳ３０６、Ｓ４１０、Ｓ４２０、Ｓ４３４、Ｓ４４２、Ｓ４５４は、発明１の送信手段に対応している。
【０３２８】
また、上記第１の実施の形態において、ステップＳ３０６、Ｓ４１０、Ｓ４２０、Ｓ４３４、Ｓ４４２、Ｓ４５４は、発明１２の送信ステップに対応し、Ｉ／Ｆ２１２およびステップＳ４１０、Ｓ４２０、Ｓ４３４、Ｓ４４２は、発明１、４、５、１１または１２の出力手段に対応している。また、ステップＳ４１０、Ｓ４２０、Ｓ４３４、Ｓ４４２は、発明１２の出力ステップに対応し、Ｉ／Ｆ３１０およびステップＳ９００、Ｓ９１０、Ｓ１０００、Ｓ１００４、Ｓ１００８、Ｓ１０１２は、発明１の受信手段に対応し、入力部２３１は、発明１、３ないし５の入力手段に対応している。
【０３２９】
また、上記第１の実施の形態において、レジスタ２３４、２３６は、発明１、３、１１または１２の記憶手段に対応し、アクセス制御部２３８およびステップＳ１０６〜Ｓ１１２、Ｓ１２０〜Ｓ１２６は、発明１、３または１０のアクセス制御手段に対応し、ステップＳ１０６〜Ｓ１１２、Ｓ１２０〜Ｓ１２６は、発明１１または１２のアクセス制御ステップに対応している。また、ステップＳ５１２、Ｓ５１４、Ｓ６０４、Ｓ６０６は、発明１の抽選手段に対応し、ステップＳ６１０、Ｓ６１２、Ｓ６２４は、発明１の特賞状態発生手段に対応し、ステップＳ６１４は、発明１の変動表示制御手段に対応している。
【０３３０】
〔第２の実施の形態〕
次に、本発明の第２の実施の形態を図面を参照しながら説明する。図２１ないし図２３は、本発明に係る遊技機およびアクセス制御プログラム、並びに遊技制御方法の第２の実施の形態を示す図である。
【０３３１】
本実施の形態は、上記第１の実施の形態に対して、アクセス制御部２３８が、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスに加えて、命令コード列から算出されたチェック値に基づいてアクセスを制御する点が異なる。なお、以下、上記第１の実施の形態と異なる部分についてのみ説明し、上記第１の実施の形態と重複する部分については同一の符号を付して説明を省略する。
【０３３２】
〔主制御部の構成〕
まず、主制御部２００の構成を説明する。
【０３３３】
図２１は、主制御部２００の構成を示すブロック図である。
【０３３４】
ＣＰＵ２０２は、図２１に示すように、ＣＰＵコア２０３、ＲＯＭ２０４、ＲＡＭ２０６、セキュリティ検査回路２０８、Ｉ／Ｆ２１０、２１２およびタイマ２１４のほか、命令コード列からチェック値を算出するチェック値算出部２１８を有して構成されている。これらは、バス２１６を介して相互に接続されている。
【０３３５】
チェック値算出部２１８は、命令コード列をＲＯＭ２０４から取得する。そして、取得した命令コード列から、命令コード列の正当性を検査するチェック値を算出する。チェック値は、アクセス制御部２３８によるアクセス制御に用いられる。ここで、チェック値とは、ＲＯＭ２０４に記憶された一部若しくはすべての命令コード若しくは命令コード列、１つの命令コードの一部またはそれらの組み合わせから算出される値である。チェック値算出部２１８は、例えば、ＲＯＭ２０４に記憶されたすべての命令コード列に対して、ハッシュ関数による演算、パリティチェック、巡回冗長検査（ＣＲＣ（Cyclic Redundancy
Check））またはチェックサム等の誤り検出演算を行ってチェック値を算出する。このように、チェック値は、ＲＯＭ２０４に実際に記憶されている命令コード列から算出される。したがって、チェック値を用いて照合を行うことにより、ＲＯＭ２０４に記憶された命令コード列の不正な書き換えや、ＲＯＭ２０４の不正な差し替え等を検出することができる。
【０３３６】
入力部２３１は、はずれ非リーチコマンドまたははずれリーチコマンドに付加されている、ＣＰＵコア２０３が実行する命令コード列およびそのアドレス、並びにチェック値算出部２１８で算出したチェック値をＩ／Ｆ２１２から入力する。このとき、チェック値を複数に分割して入力してもよい。この場合、各分割データを結合することによりチェック値を複合する。
【０３３７】
アクセス制御部２３８は、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部２３１で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ２３４、２３６へのアクセスを許可する。所定関係とは、例えば、チェック値が期待値と一致していること、チェック値および期待値の一方を所定の演算方法により演算した演算値が他方と一致していること、チェック値および期待値に大小関係その他の相関関係があることをいう。このように、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、不正動作が行われる可能性をさらに低減することができる。
【０３３８】
アクセス制御部２３８が照合に用いる期待値は、例えば、あらかじめ（製造時等）アクセス制御部２３８に記憶させておく。また、アクセス制御部２３８が照合に用いる期待値を、他の構成部からアクセス制御部２３８に送信してもよい。他の構成部とは、例えば、ＣＰＵコア２０３やチェック値の期待値を生成するための専用の処理部（以下、期待値算出部という。）である。ＣＰＵコア２０３や期待値算出部は、あらかじめ記憶されている期待値をアクセス制御部２３８に送信してもよいし、照合処理ごとに期待値を生成してもよい。また、Ｉ／Ｆ２１０を介して、外部の機器からＣＰＵコア２０３や期待値算出部に期待値を算出するために必要な係数等を受信してもよい。このように、アクセス制御部２３８に、あらかじめ期待値を記憶させずに、他の構成部から入力することとすれば、ＲＯＭ２０４のチェック値を後発的に変更することが可能となる。
【０３３９】
〔チェック値算出処理〕
次に、チェック値算出部２１８で実行されるチェック値算出処理を説明する。
【０３４０】
図２２は、チェック値算出処理を示すフローチャートである。
【０３４１】
チェック値算出部２１８は、チェック値算出処理を実行すると、図２２に示すように、まず、ステップＳ１１００に移行する。
【０３４２】
ステップＳ１１００では、アクセス制御部２３８からチェック値の取得要求を受信したか否かを判定し、チェック値の取得要求を受信したと判定したとき(Yes)は、ステップＳ１１０２に移行するが、そうでないと判定したとき(No)は、チェック値の取得要求を受信するまでステップＳ１１００で待機する。
【０３４３】
ステップＳ１１０２では、ＲＯＭ２０４から命令コード列を読み出し、ステップＳ１１０４に移行して、読み出した命令コード列に対して上記誤り検出演算を行ってチェック値を算出し、ステップＳ１１０６に移行して、算出したチェック値をアクセス制御部２３８に送信し、チェック値算出処理を終了する。
【０３４４】
〔アクセス制御処理〕
次に、アクセス制御部２３８で実行されるアクセス制御処理を説明する。
【０３４５】
図２３は、アクセス制御処理を示すフローチャートである。
【０３４６】
アクセス制御部２３８は、アクセス制御処理を実行すると、図２３に示すように、まず、ステップＳ１２００に移行する。
【０３４７】
ステップＳ１２００では、レジスタ２３４、２３６に対するリード要求をＩ／Ｆ２１２から入力したか否かを判定し、リード要求を入力したと判定したとき(Yes)は、ステップＳ１２０２に移行する。
【０３４８】
ステップＳ１２０２では、はずれ非リーチコマンドまたははずれリーチコマンドをＩ／Ｆ２１２から入力したか否かを判定し、はずれ非リーチコマンドまたははずれリーチコマンドを入力したと判定したとき(Yes)は、ステップＳ１２０４に移行するが、そうでないと判定したとき(No)は、はずれ非リーチコマンドまたははずれリーチコマンドを入力するまでステップＳ１２０２で待機する。
【０３４９】
ステップＳ１２０４では、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスを入力部２３１から入力し、ステップＳ１２０６に移行する。
【０３５０】
ステップＳ１２０６では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップＳ１２０８に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップＳ１２１０に移行する。
【０３５１】
ステップＳ１２１０では、チェック値の取得要求をチェック値算出部２１８に送信し、ステップＳ１２１２に移行して、その応答としてチェック値を入力部２３１から入力し、ステップＳ１２１４に移行する。
【０３５２】
ステップＳ１２１４では、アクセス制御部２３８に記憶されている期待値を読み出したしたり、ＣＰＵコア２０３や期待値算出部が生成した期待値を受信したりすることによりチェック値の期待値を取得し、ステップＳ１２１６に移行する。
【０３５３】
ステップＳ１２１６では、入力したチェック値が、入力した期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップＳ１２１８に移行する。
【０３５４】
ステップＳ１２１８では、レジスタ２３４、２３６が保持しているデータを読み出し、ステップＳ１２２０に移行して、読み出したデータをＩ／Ｆ２１２に出力する。出力されたデータは、Ｉ／Ｆ２１２を介してＣＰＵコア２０３のレジスタ２０３ｃに保持される。
【０３５５】
次いで、ステップＳ１２２２に移行して、レジスタ２３６に対するライト要求をＩ／Ｆ２１２から入力したか否かを判定し、ライト要求を入力したと判定したとき(Yes)は、ステップＳ１２２４に移行する。
【０３５６】
ステップＳ１２２４では、はずれ非リーチコマンドまたははずれリーチコマンドをＩ／Ｆ２１２から入力したか否かを判定し、はずれ非リーチコマンドまたははずれリーチコマンドを入力したと判定したとき(Yes)は、ステップＳ１２２６に移行するが、そうでないと判定したとき(No)は、はずれ非リーチコマンドまたははずれリーチコマンドを入力するまでステップＳ１２２４で待機する。
【０３５７】
ステップＳ１２２６では、ＣＰＵコア２０３が実行する命令コード列およびそのアドレスを入力部２３１から入力し、ステップＳ１２２８に移行する。
【０３５８】
ステップＳ１２２８では、入力した命令コード列が許可命令コード列であるか否かを判定し、許可命令コード列であると判定したとき(Yes)は、ステップＳ１２３０に移行して、入力したアドレスが許可アドレスであるか否かを判定し、許可アドレスであると判定したとき(Yes)は、ステップＳ１２３２に移行する。
【０３５９】
ステップＳ１２３２〜Ｓ１２３６では、ステップＳ１２１０〜Ｓ１２１４と同様の処理を実行し、ステップＳ１２３８に移行する。
【０３６０】
ステップＳ１２３８では、チェック値が期待値と一致しているか否かを判定し、チェック値が期待値と一致していると判定したとき(Yes)は、ステップＳ１２４０に移行する。
【０３６１】
ステップＳ１２４０では、ＣＰＵコア２０３のレジスタ２０３ｃが保持しているデータをＩ／Ｆ２１２から入力し、ステップＳ１２４２に移行して、入力したデータをレジスタ２３６に書き込み、アクセス制御処理を終了する。
【０３６２】
一方、ステップＳ１２３８で、チェック値が期待値と一致していないと判定したとき(No)、ステップＳ１２３０で、許可アドレスでないと判定したとき(No)、ステップＳ１２２８で、許可命令コード列でないと判定したとき(No)、およびステップＳ１２２２で、ライト要求を入力しないと判定したとき(No)はいずれも、レジスタ２３６にデータを書き込まずに、アクセス制御処理を終了する。このとき、ＣＰＵコア２０３は、アクセス制御装置２３０からの通知を受け、不正通知を行ってもよい。
【０３６３】
一方、ステップＳ１２１６で、チェック値が期待値と一致していないと判定したとき(No)、ステップＳ１２０８で、許可アドレスでないと判定したとき(No)、ステップＳ１２０６で、許可命令コード列でないと判定したとき(No)、およびステップＳ１２００で、リード要求を入力しないと判定したとき(No)はいずれも、レジスタ２３４、２３６が保持しているデータをＩ／Ｆ２１２に出力せずに、ステップＳ１２２２に移行する。このとき、ＣＰＵコア２０３のレジスタ２０３ｃに非正当値が保持されるが、その値が所定値である場合、ＣＰＵコア２０３は、不正通知を行ってもよい。
【０３６４】
〔本実施の形態の効果〕
このようにして、本実施の形態では、ＣＰＵ２０２は、ＲＯＭ２０４に記憶された命令コード列からチェック値を算出するチェック値算出部２１８を備え、アクセス制御部２３８は、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部２３１で入力したチェック値がチェック値の期待値と所定関係にあるときにのみ、レジスタ２３４、２３６へのアクセスを許可する。
【０３６５】
これにより、ＲＯＭ２０４に記憶された命令コード列が不正に書き換えられたことを検出することができる。また、命令コード列およびアドレスの照合と、チェック値の照合とを組み合わせることにより、不正動作が行われる可能性をさらに低減することができる。なお、チェック値の照合は、命令コード列およびアドレスの照合と組み合わせて行うので、チェック値の算出に比較的処理負荷が軽い誤り検出演算（例えば、パリティチェック）を用いても、一定の精度を得ることができる。
【０３６６】
上記第２の実施の形態において、ＣＰＵ２０２は、発明６のデータ処理装置に対応し、ＣＰＵコア２０３は、発明６のデータ処理手段に対応し、ＲＯＭ２０４は、発明６の命令コード記憶手段に対応し、チェック値算出部２１８は、発明６の演算手段に対応している。また、入力部２３１は、発明６の入力手段に対応している。
【０３６７】
〔他の実施の形態〕
なお、上記第２の実施の形態において、アクセス制御装置２３０は、命令コード列からチェック値を算出するように構成したが、これに限らず、次の３つの構成を採用することができる。
（１）第１の構成
第１の構成は、命令コード列に代えて、ＲＯＭ２０４に記憶されたデータ（以下、第１算出基礎データという。）からチェック値を算出する。第１算出基礎データとは、例えば、ＲＯＭ２０４に記憶された所定の固定値である。なお、第１算出基礎データは、固定値に限らず、変動前後のデータ値を正確に予測可能な変動データであってもよい。変動前後のデータ値を正確に予測可能とは、具体的には、例えば、変動範囲が定まっている場合や変動規則が定まっている場合をいう。
【０３６８】
チェック値算出部２１８は、第１算出基礎データをＲＯＭ２０４から読み出し、読み出した第１算出基礎データからチェック値を算出する。
【０３６９】
アクセス制御部２３８は、あらかじめ第１算出基礎データの期待値を記憶している。アクセス制御部２３８は、期待値からチェック値を算出し、入力部２３１で入力したチェック値が、算出したチェック値と所定関係にあるか否かを判定する。その他、入力部２３１で入力したチェック値が期待値と所定関係にあるか否かを判定してもよい。なお、命令コード列から算出したチェック値と、第１算出基礎データから算出したチェック値の両方に基づいてアクセス制御を行ってもよい。
【０３７０】
これにより、ＲＯＭ２０４が不正なものに交換されたことを検出することができる。
【０３７１】
この場合において、ＣＰＵ２０２は、発明７のデータ処理装置に対応し、ＣＰＵコア２０３は、発明７のデータ処理手段に対応し、ＲＯＭ２０４は、発明７の命令コード記憶手段に対応し、チェック値算出部２１８は、発明７の演算手段に対応している。また、入力部２３１は、発明７の入力手段に対応している。
（２）第２の構成
第２の構成は、命令コード列に代えて、ＣＰＵコア２０３が実行する命令コード列の実行結果（以下、第２算出基礎データという。）からチェック値を算出する。第２算出基礎データとは、例えば、ＣＰＵコア２０３のフラグレジスタの値である。なお、第２算出基礎データは、フラグレジスタの値に限らず、命令コード列が正しく実行されたときに第１の値を返し、それ以外は第２の値を返す関数の戻り値であってもよい。
【０３７２】
チェック値算出部２１８は、第２算出基礎データをフラグレジスタ等から取得し、取得した第２算出基礎データからチェック値を算出する。
【０３７３】
アクセス制御部２３８は、第１の構成の場合と同様に構成することができる。なお、第１算出基礎データから算出したチェック値にさらに基づいてアクセス制御を行ってもよい。
【０３７４】
また、第２算出基礎データからチェック値を算出せず、第２算出基礎データをそのまま用いてもよい。すなわち、アクセス制御部２３８は、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、第２算出基礎データが所定値であるときにのみ、アクセスを許可する。
【０３７５】
これにより、不正に書き換えられた命令コード列や、ビットエラーによって内容が変化した命令コード列が実行されることにより、レジスタ２３４、２３６のデータが不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
【０３７６】
この場合において、ＣＰＵコア２０３は、発明８のデータ処理手段に対応し、入力部２３１は、発明８の入力手段に対応している。
（３）第３の構成
第３の構成は、命令コード列に代えて、命令コード列のアドレス（以下、第３算出基礎データという。）からチェック値を算出する。
【０３７７】
チェック値算出部２１８は、第３算出基礎データをバス２１６等から取得し、取得した第３算出基礎データからチェック値を算出する。
【０３７８】
アクセス制御部２３８は、第１の構成の場合と同様に構成することができる。なお、第１算出基礎データおよび第２算出基礎データの一方または両方から算出したチェック値にさらに基づいてアクセス制御を行ってもよい。
【０３７９】
また、上記第２の実施の形態において、アクセス許可条件は、入力部２３１で入力した命令コード列が許可命令コード列であり、かつ、その命令コード列のアドレスが許可アドレスであり、かつ、入力部２３１で入力したチェック値がチェック値の期待値と所定関係にあることとしたが、これに限らず、（１）入力部２３１で入力した命令コード列が許可命令コード列であること、（２）その命令コード列のアドレスが許可アドレスであること、（３）入力部２３１で入力したチェック値がチェック値の期待値と所定関係にあることのうちいずれか１つまたは任意の２つの組み合わせとすることもできる。第１算出基礎データまたは第２算出基礎データを用いる場合も、（１）〜（３）との任意の組み合わせでアクセス許可条件を設定することができる。また、上記第１の実施の形態においても、（１）または（２）でアクセス許可条件を設定することができる。
【０３８０】
また、上記第１および第２の実施の形態においては、アクセス制御装置２３０を主制御部２００に設けたが、これに限らず、次の２つの構成を採用することができる。
（１）第１の構成
第１の構成は、アクセス制御装置２３０を演出制御部３００に設けた構成である。
【０３８１】
図２４は、演出制御部３００の構成を示すブロック図である。
【０３８２】
演出制御部３００は、図２４に示すように、ＣＰＵ３０２およびアクセス制御装置２３０を有して構成されている。
【０３８３】
ＣＰＵ３０２は、ＤＩＰ等からなるワンチップ型のマイクロプロセッサであって、ＣＰＵコア３０３、ＲＯＭ３０４、ＲＡＭ３０６、ＶＲＡＭ３０８、Ｉ／Ｆ３１０および演出関連デバイス群３１４のほか、外部装置との入出力を行うＩ／Ｆ３１２を有して構成されている。これらは、バス３１６を介して相互に接続されている。
【０３８４】
アクセス制御装置２３０は、Ｉ／Ｆ３１２に接続されている。ＣＰＵ３０２は、そのハードウェア構造上、バス３１６を介して送受信されるアドレス信号、データ信号および制御信号を外部に出力しない構成となっている。また、バス３１６の信号線がＣＰＵ３０２に内蔵されているので、アクセス制御装置２３０をバス３１６の信号線に直結することも改造を要し難しい。したがって、そのままの構成では、アクセス制御装置２３０は、ＣＰＵコア３０３が実行する命令に関する情報を取得することができない。そこで、第１の構成では、ＣＰＵコア３０３が実行する命令に関する情報として、ＣＰＵコア３０３が実行する命令コード列、およびそのＲＯＭ３０４におけるアドレスを、主制御部２００から受信したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ３１２を介して出力する処理をＣＰＵコア３０３に実行させる。この出力処理は、例えば、ＲＯＭ３０４の制御プログラムの一処理として組み込んでおくことができる。これにより、アクセス制御装置２３０は、ＣＰＵコア３０３が実行する命令コード列およびそのアドレスをＩ／Ｆ３１２から入力することができる。
【０３８５】
これにより、演出制御部３００のＣＰＵ３０２が不正動作する可能性を低減することができる。
【０３８６】
この場合において、演出制御部３００は、発明２の周辺基板に対応している。
（２）第２の構成
第２の構成は、アクセス制御装置２３０を賞球制御部４００に設けた構成である。
【０３８７】
図２５は、賞球制御部４００の構成を示すブロック図である。
【０３８８】
賞球制御部４００は、図２５に示すように、ＣＰＵ４０２およびアクセス制御装置２３０を有して構成されている。
【０３８９】
ＣＰＵ４０２は、ＤＩＰ等からなるワンチップ型のマイクロプロセッサであって、ＣＰＵコア４０３、ＲＯＭ４０４、ＲＡＭ４０６、Ｉ／Ｆ４１０および賞球関連デバイス群４１４のほか、外部装置との入出力を行うＩ／Ｆ４１２を有して構成されている。これらは、バス４１６を介して相互に接続されている。
【０３９０】
アクセス制御装置２３０は、Ｉ／Ｆ４１２に接続されている。ＣＰＵ４０２は、そのハードウェア構造上、バス４１６を介して送受信されるアドレス信号、データ信号および制御信号を外部に出力しない構成となっている。また、バス４１６の信号線がＣＰＵ４０２に内蔵されているので、アクセス制御装置２３０をバス４１６の信号線に直結することも改造を要し難しい。したがって、そのままの構成では、アクセス制御装置２３０は、ＣＰＵコア４０３が実行する命令に関する情報を取得することができない。そこで、第２の構成では、ＣＰＵコア４０３が実行する命令に関する情報として、ＣＰＵコア４０３が実行する命令コード列、およびそのＲＯＭ４０４におけるアドレスを、主制御部２００から受信したはずれ非リーチコマンドまたははずれリーチコマンドに付加して、Ｉ／Ｆ４１２を介して出力する処理をＣＰＵコア４０３に実行させる。この出力処理は、例えば、ＲＯＭ４０４の制御プログラムの一処理として組み込んでおくことができる。これにより、アクセス制御装置２３０は、ＣＰＵコア４０３が実行する命令コード列およびそのアドレスをＩ／Ｆ４１２から入力することができる。
【０３９１】
これにより、賞球制御部４００のＣＰＵ４０２が不正動作する可能性を低減することができる。
【０３９２】
この場合において、賞球制御部４００は、発明２の周辺基板に対応している。
【０３９３】
また、上記第１および第２の実施の形態において、アクセス制御部２３８は、レジスタ２３４、２３６へのアクセスを制御するように構成したが、これに限らず、レジスタ２３４、２３６のうち特定のアドレス空間へのアクセスを制御するように構成することもできる。
【０３９４】
これにより、レジスタ２３４、２３６のうち、機密情報等の重要な情報が記憶されたアドレス空間へのアクセスを制御することにより、重要な情報が不正に書き換えられたり読み出されたりする可能性を低減することができるので、不正動作が行われる可能性をさらに低減することができる。
【０３９５】
また、上記第１および第２の実施の形態においては、命令コード列の単位で読出、実行、判定その他の処理を行うように構成したが、これに限らず、命令コードの単位で読出、実行、判定その他の処理を行うように構成することもできる。これは、上記他の実施の形態についても同様である。代表例として、入力した命令コードが、あらかじめ許可されたコードであり、かつ、その命令コードのアドレスが許可アドレスであるときにのみ、アクセスを許可する。アクセス許可条件の組み合わせについては、命令コード列の場合と同様の組み合わせを採用することができる。
【０３９６】
また、上記第１および第２の実施の形態においては、アクセス制御装置２３０を１つだけ設けたが、これに限らず、複数のアクセス制御装置２３０を設けることもできる。２台の場合、例えば、第１アクセス制御装置は、入力部２３１、演算部２３２、レジスタ２３４およびアクセス制御部２３８を有して構成されている。第２アクセス制御装置は、入力部２３１、演算部２３２、レジスタ２３６およびアクセス制御部２３８を有して構成されている。この場合、アクセス制御部２３８は、いずれかのアクセス制御装置にのみ設けてもよい。
【０３９７】
また、上記第２の実施の形態において、チェック値算出部２１８は、チェック値の取得要求に応じてチェック値を算出するように構成したが、これに限らず、所定条件が成立したときにチェック値を算出し、算出したチェック値をアクセス制御部２３８に送信するように構成することもできる。
【０３９８】
また、上記第１および第２の実施の形態において、ＣＰＵ２０２は、２つのＩ／Ｆ２１０、２１２を設けて構成したが、これに限らず、１つのＩ／Ｆのみを設けて構成してもよいし、さらに多数のＩ／Ｆを設けて構成してもよい。図２４におけるＣＰＵ３０２および図２５におけるＣＰＵ４０２についても同様である。
【０３９９】
また、上記第１および第２の実施の形態において、ＣＰＵ２０２は、アクセス制御装置２３０を利用して接続機器認証処理を行うように構成したが、これに限らず、アクセス制御装置２３０を利用して乱数を取得するように構成することもできる。図２４におけるＣＰＵ３０２および図２５におけるＣＰＵ４０２についても同様である。
【０４００】
この場合、演算部２３２は、乱数生成器等からなり、遊技制御に用いる乱数および認証に必要な認証情報を生成する。遊技制御に用いる乱数としては、大当たり決定乱数、停止図柄決定乱数、変動パターン決定乱数、リーチ決定乱数その他遊技制御に用いる乱数を生成する。
【０４０１】
アクセス制御装置２３０のレジスタ２３４から乱数を読み出す場合、命令コード列およびアドレスをはずれ非リーチコマンドまたははずれリーチコマンドに付加する構成では、命令コード列およびそのアドレスの出力タイミングと、乱数の読出タイミングとが一致しないことがある。すなわち、命令コード列およびそのアドレスははずれ図柄変動開始時に出力されるのに対し、大当たり決定乱数は始動入賞口１０５への入賞タイミングで読み出さなければならない。そこで、アクセス制御装置２３０の構成として、例えば、次の２つの構成を採用することができる。
【０４０２】
第１の構成は、制御コマンドの送信時に認証（命令コード列、アドレスまたはチェック値の一致の判定結果）が得られたときは、所定許可回数のアクセスに限り認証を行わない。所定許可回数は、認証が得られた後最初のアクセスから計数を開始してもよいし、認証が得られた後所定回数のアクセスを待って計数を開始してもよい。後者の場合、計数開始前のアクセスは禁止される。したがって、認証後に所定回数のダミーアクセスが必要となり、この回数が分からなければ、認証が得られてもレジスタ２３４、２３６へのアクセスができないので、不正動作が行われる可能性を低減することができる。
【０４０３】
第２の構成は、制御コマンドの送信時に認証が得られたときは、所定許可期間内に限り認証を行わない。所定許可期間は、認証が得られた直後から開始してもよいし、認証が得られた後所定時間経過を待って開始してもよい。後者の場合、開始前のアクセスは禁止される。また、開始前にアクセスがあったときは、その後のアクセスを禁止してもよい。したがって、認証後に所定時間の待機が必要となり、この時間が分からなければ、認証が得られてもレジスタ２３４、２３６へのアクセスができないので、不正動作が行われる可能性を低減することができる。
【０４０４】
また、上記第１および第２の実施の形態においては、アクセス制御装置２３０を主制御部２００に設けて構成したが、これに限らず、演出制御部３００、賞球制御部４００その他の場所に設けて構成することもできる。図２４および図２５の構成についても同様である。すなわち、アクセス制御装置２３０を利用するＣＰＵ２０２、３０２、４０２と、アクセス制御装置２３０とは、同一の基板に設けなくてもよく、異なる基板その他の場所に設けることができる。
【０４０５】
また、上記第１および第２の実施の形態においては、１つの命令コード列およびアドレスを１つのはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力するように構成したが、これに限らず、複数の命令コード列およびアドレスを１つのはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力するように構成することもできる。例えば、図１２の接続機器認証処理では、命令コード列およびアドレスを４回入出力しているので、４つの命令コード列およびアドレスを１つのはずれ非リーチコマンドまたははずれリーチコマンドに付加して出力すれば、はずれ非リーチコマンドまたははずれリーチコマンドの１回の送信で接続機器認証処理を完了することができる。図２４および図２５の構成についても同様である。
【０４０６】
また、上記第１および第２の実施の形態において、主制御部２００は、はずれ非リーチコマンドおよびはずれリーチコマンドの各送信ごとに命令コード列およびアドレスを出力するように構成したが、これに限らず、はずれ非リーチコマンドまたははずれリーチコマンドの所定の送信単位ごとに命令コード列およびアドレスを出力するように構成することもできる。図２４および図２５の構成についても同様である。
【０４０７】
所定の送信単位ごとに出力する構成としては、例えば、はずれ非リーチコマンドまたははずれリーチコマンドをｎ（ｎは２以上の整数）回送信するごとに出力する構成、所定時間内に送信されるはずれ非リーチコマンドまたははずれリーチコマンドを単位としてその開始または終了ごとに出力する構成を採用することができる。
【０４０８】
また、上記第１および第２の実施の形態において、主制御部２００は、はずれ非リーチコマンドおよびはずれリーチコマンドの両方に命令コード列およびアドレスを付加するように構成したが、これに限らず、いずれか一方のみに付加するように構成することもできる。図２４および図２５の構成についても同様である。
【０４０９】
また、上記第１および第２の実施の形態において、主制御部２００は、はずれ非リーチコマンドおよびはずれリーチコマンドに命令コード列およびアドレスを付加するように構成したが、これに限らず、はずれ非リーチコマンドおよびはずれリーチコマンド以外の１または複数種類の制御コマンドに命令コード列およびアドレスを付加するように構成することもできる。図２４および図２５の構成についても同様である。
【０４１０】
他の制御コマンドとしては、例えば、電源オンコマンド、電源オフコマンド、客待ちデモコマンド、客待ちデモ停止コマンド、大当たりリーチコマンド、大当たり開始コマンド、大当たり終了コマンド、大当たりコマンド、図柄指定コマンド、変動開始コマンドおよび図柄停止コマンドが考えられる。
【０４１１】
この場合、セキュリティ強度と処理負荷のバランスを考慮し、命令コード列およびアドレスを付加する制御コマンドを選択することができる。すなわち、送信頻度が高い制御コマンドであれば単位時間あたりの認証回数が多くなるので、処理負荷は大きくなるがセキュリティ強度は高くなる。逆に、送信頻度が低い制御コマンドであれば単位時間あたりの認証回数が少なくなるので、セキュリティ強度は低くなるが処理負荷は小さくなる。したがって、セキュリティ強度を高くしたい場面では、送信頻度の高い制御コマンドを選択し、処理負荷を小さくしたい場面では、送信頻度の低い制御コマンドを選択する。これらの場面は、例えば、所望に応じてテーブル等に設定し、主制御部２００に保持させておけばよい。例えば、遊技者が所定数以上となる見込みの日または時間帯は、セキュリティ強度を高くしたい場面に設定し、それ以外の日または時間帯は、処理負荷を小さくしたい場面に設定することが考えられる。
【０４１２】
また、上記第１および第２の実施の形態においては、はずれ非リーチコマンドまたははずれリーチコマンドの後に命令コード列およびアドレスを付加したが、これに限らず、はずれ非リーチコマンドまたははずれリーチコマンドの前に命令コード列およびアドレスを付加してもよいし、はずれ非リーチコマンドまたははずれリーチコマンドとの間に他のデータ（例えば、ダミーデータ）を介して命令コード列およびアドレスを付加してもよい。また、はずれ非リーチコマンドまたははずれリーチコマンドと命令コード列およびアドレスの一方を出力してから所定時間経過後に他方を出力してもよいし、命令コード列およびアドレスに代えて命令コード列およびアドレスへのアクセスに必要なアクセス情報（例えば、リンク情報）を付加等してもよい。図２４および図２５の構成についても同様である。
【０４１３】
また、上記第１および第２の実施の形態においては、はずれ非リーチコマンドおよびはずれリーチコマンドの各送信ごとにアクセス制御を行うように構成したが、これに限らず、命令コード列およびアドレスを保持しておき、所定のタイミングで、保持している命令コード列およびアドレスに基づいて一括でアクセス制御を行うように構成することもできる。図２４および図２５の構成についても同様である。
【０４１４】
また、上記第１および第２の実施の形態において、図１０ないし図１５のフローチャートに示す遊技制御処理を実行するにあたってはいずれも、ＲＯＭ２０４にあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをＲＡＭ２０６に読み込んで実行するようにしてもよい。図８、図１６ないし図１８、図２２および図２３のフローチャートに示す処理についても同様である。
【０４１５】
ここで、記憶媒体とは、ＲＡＭ、ＲＯＭ等の半導体記憶媒体、ＦＤ、ＨＤ等の磁気記憶型記憶媒体、ＣＤ、ＣＤＶ、ＬＤ、ＤＶＤ等の光学的読取方式記憶媒体、ＭＯ等の磁気記憶型／光学的読取方式記憶媒体であって、電子的、磁気的、光学的等の読み取り方法のいかんにかかわらず、コンピュータで読み取り可能な記憶媒体であれば、あらゆる記憶媒体を含むものである。
【０４１６】
また、上記第１および第２の実施の形態においては、本発明をパチンコ機に適用した場合について説明したが、これに限らず、本発明の主旨を逸脱しない範囲で、パチスロ機、アミューズメントゲーム機その他の遊技機にも適用可能である。
【図面の簡単な説明】
【０４１７】
【図１】遊技盤１０１の正面図である。
【図２】遊技制御装置１００の構成を示すブロック図である。
【図３】主制御部２００の構成を示すブロック図である。
【図４】通常の制御コマンドおよび命令コード列付制御コマンドのデータ構造を示す図である。
【図５】制御コマンド５００のデータ構造を示す図である。
【図６】主制御部２００から送信される制御コマンドの内容を示す図である。
【図７】ＣＰＵコア２０３およびアクセス制御装置２３０の構成を示すブロック図である。
【図８】アクセス制御処理を示すフローチャートである。
【図９】ＲＯＭ２０４のメモリ構造を模式的に示した図である。
【図１０】遊技制御処理を示すフローチャートである。
【図１１】制御コマンド送信処理を示すフローチャートである。
【図１２】接続機器認証処理の実行に伴うＣＰＵコア２０３およびアクセス制御装置２３０の動作を示すフローチャートである。
【図１３】入賞判定処理を示すフローチャートである。
【図１４】大当たり判定処理を示すフローチャートである。
【図１５】電動役物制御処理を示すフローチャートである。
【図１６】演出制御処理を示すフローチャートである。
【図１７】変動パターンコマンド受信処理を示すフローチャートである。
【図１８】大当たりコマンド受信処理を示すフローチャートである。
【図１９】アクセス制御部２３８が行うアクセス制御の概要を示す説明図である。
【図２０】アクセス制御部２３８が行うアクセス制御の概要を示す説明図である。
【図２１】主制御部２００の構成を示すブロック図である。
【図２２】チェック値算出処理を示すフローチャートである。
【図２３】アクセス制御処理を示すフローチャートである。
【図２４】演出制御部３００の構成を示すブロック図である。
【図２５】賞球制御部４００の構成を示すブロック図である。
【符号の説明】
【０４１８】
１０１…遊技盤、  １０２ａ、１０２ｂ…レール、  １０３…遊技領域、  １０４…図柄表示部、  １０５…始動入賞口、  １０６…入賞ゲート、  １０７…普通入賞口、  １０９…大入賞口、  １０８…回収口、  １００…遊技制御装置、  ２００…主制御部、  ２０２、３０２、４０２…ＣＰＵ、  ２０３、３０３、４０３…ＣＰＵコア、  ２０３ａ…制御部、  ２０３ｂ、２３２…演算部、  ２０３ｃ、２３４、２３６…レジスタ、  ２０４、３０４、４０４…ＲＯＭ、  ２０４ａ…記憶領域、  ２０６、３０６、４０６…ＲＡＭ、  ２０８…セキュリティ検査回路、  ２１０、２１２、３１０、３１２、４１０、４１２…Ｉ／Ｆ、  ２１４…タイマ、  ２１６、３１６、４１６…バス、  ２１８…チェック値算出部、  ２３０…アクセス制御装置、  ２３１…入力部、  ２３８…アクセス制御部、  ２４０…検査ポート、  ２８０…始動入賞口検出部、  ２８２…ゲート検出部、  ２８４…普通入賞口検出部、  ２８６…大入賞口検出部、  ２８８…大入賞口開閉部、  ３００…演出制御部、  ３０８…ＶＲＡＭ、  ３１４…演出関連デバイス群、  ３８０…スピーカ、  ３８２…音声制御部、  ３８４…ランプ、  ３８６…ランプ制御部、  ４００…賞球制御部、  ４１４…賞球関連デバイス群、  ４８０…払出部、  ４８２…発射部
【図１】
2010088483.tif 000003
【図２】
2010088483.tif 000004
【図３】
2010088483.tif 000005
【図４】
2010088483.tif 000006
【図５】
2010088483.tif 000007
【図６】
2010088483.tif 000008
【図７】
2010088483.tif 000009
【図８】
2010088483.tif 000010
【図９】
2010088483.tif 000011
【図１０】
2010088483.tif 000012
【図１１】
2010088483.tif 000013
【図１２】
2010088483.tif 000014
【図１３】
2010088483.tif 000015
【図１４】
2010088483.tif 000016
【図１５】
2010088483.tif 000017
【図１６】
2010088483.tif 000018
【図１７】
2010088483.tif 000019
【図１８】
2010088483.tif 000020
【図１９】
2010088483.tif 000021
【図２０】
2010088483.tif 000022
【図２１】
2010088483.tif 000023
【図２２】
2010088483.tif 000024
【図２３】
2010088483.tif 000025
【図２４】
2010088483.tif 000026
【図２５】
2010088483.tif 000027