以下、図面を参照して本発明を実施するための最良の形態について説明する。
実施の形態1.
図1は、本発明の実施の形態1に係る遊技機の1つであるパチンコ遊技機1の外観構成を示す正面図、図2は、図1に示すパチンコ遊技機1の電気的構成を示すブロック図である。
本実施の形態1に係るパチンコ遊技機1は、遊技盤101を備えている。遊技盤101の図1において右下方であって、枠部材110(後述)の右下部には、遊技者によって操作され、発射部292(図2参照)を作動させるための操作ハンドル113が設けられている。操作ハンドル113は、遊技者側に突出する形状を呈している。操作ハンドル113は、発射部292を作動させて遊技球を発射させる発射指示部材114を備えている。発射指示部材114は、操作ハンドル113の外周部において、遊技者から見て右回りに回転可能に設けられている。発射部292は、発射指示部材114が遊技者によって直接操作されている場合に、遊技球を発射させる。公知の技術であるため説明を省略するが、操作ハンドル113には、遊技者が発射指示部材114を直接操作していることを検出するセンサなどが設けられている。
発射部292の作動によって発射された遊技球は、レール102a,102b間を上昇して遊技盤101の上部位置に達した後、遊技領域103内を落下する。遊技領域103には、図示を省略する複数の釘や、遊技球の落下方向を変化させる風車や、入球口が配設されており、遊技球を各種の方向に向けて落下させるようにしている。ここで、「入球口」は、いずれも後述する第1始動口105、第2始動口120、普通入賞口107、第1大入賞口109c、第2大入賞口129cの総称である。
遊技盤101の略中央部分には、図柄表示部104が配置されている。図柄表示部104は、例えば、液晶ディスプレイ(LCD)やプラズマディスプレイパネル(PDP)等のディスプレイを有している。図柄表示部104の下方には、遊技領域103に向けて打ち込まれた遊技球を受入れ可能な第1始動口105が配置されている。第1始動口105の下方には、第2始動口120が配置されている。第2始動口120は、一対の可動片(図示略)が閉状態であるときは遊技球を受け入れることが不可能又は受け入れ困難となっており、この一対の可動片が開状態であるときは、第1始動口105よりも遊技球の受け入れが容易となる。
また、図柄表示部104の左側には、入賞ゲート106が配設されている。入賞ゲート106は、遊技球の通過を検出し、第2始動口120を一定時間だけ開放させる普通図柄の抽選を行うために設けられている。図柄表示部104の左側部や下方等には、複数の普通入賞口107が配設されている。各普通入賞口107に遊技球が入球すると、所定の賞球数(例えば、10個)の払い出しが行われる。遊技領域103の最下部には、どの入球口にも入球しなかった遊技球を回収する回収口108が設けられている。
上述した図柄表示部104は、後述する副制御部203(図2参照)から第1始動口105又は第2始動口120に遊技球が入球したことが報知されたときに、複数の装飾図柄の変動表示を開始し、所定時間経過後に当該装飾図柄の変動を停止させる。この停止時に特定図柄(例えば、「777」)が揃うと、遊技者は第1大当たり遊技(長当たり遊技)を実行する権利を獲得したこととなり、その後、第1大当たり遊技(長当たり遊技)が開始される。第1大当たり遊技(長当たり遊技)が開始されると、遊技領域103の下方に位置する第1大入賞口開閉装置109における第1大入賞口開閉扉109aが、一定の期間開放する動作を所定回数(例えば、15回)繰り返し、入球した遊技球に対応する賞球が払い出される。
一方、図柄表示部104における上記装飾図柄の停止時に上記特定図柄とは別の特定図柄(例えば、「737」)が揃うと、遊技者は第2大当たり遊技(短当たり遊技)を実行する権利を獲得したこととなり、その後、第2大当たり遊技(短当たり遊技)が開始される。第2大当たり遊技(短当たり遊技)が開始されると、第1大入賞口開閉装置109の右斜め上方に位置する第2大入賞口開閉装置129における第2大入賞口開閉扉129aが、第1大入賞口開閉扉109aの開閉動作に比して短い時間にて一定の期間開放する動作を所定回数(例えば、15回)繰り返し、入球した遊技球がある場合、これに対応する賞球が払い出される。
また、遊技盤101の遊技領域103の外周には、枠部材110が設けられ、開口部から遊技領域103が遊技者側に露出している。枠部材110は、遊技者側に突出する形状を呈している。枠部材110において、遊技領域103の左上部及び右下部には、演出ライト(ランプユニット)111a及び111bがそれぞれ設けられている。各演出ライト111a及び111bは、複数のライト112を備えている。各演出ライト111a及び111bは、上下駆動モータ(図示略)でそれぞれ駆動されることにより、それぞれが備える複数のライト112から照射される光の方向を上下方向、すなわち、パチンコ遊技機1の正面にいる遊技者の頭部と腹部を結ぶ方向に平行な方向に変更可能に構成されている。
また、各ライト112は、各演出ライト111a及び111bを構成する回転駆動モータ(図示略)で駆動されることにより、それぞれ所定半径を有する円の円周方向に移動する。以上説明した構成により、各ライト112から照射された光を回転移動させつつ、各演出ライト111a及び111b全体から照射された光を上下移動させる演出を行うことができる。さらに、枠部材110の下部には、遊技球が供給される受け皿ユニット119が設けられている。この受け皿ユニット119には、図示を省略する貸し玉装置から貸し出される遊技球が供給される。
図1において、図柄表示部104の右側には、演出用の役物(以下、「演出役物」という)115が設けられている。演出役物115は、キャラクターとして人間の上半身(特に頭部)を模式的に表している。演出役物115は、キャラクターの瞼部116を開閉して、キャラクターが瞬きをするが如くに、瞼部116を上下方向に沿って移動可能に設けられている。また、演出役物115は、キャラクターの頭部を左右方向に移動可能に設けられている。
また、枠部材110において、操作ハンドル113の左側には、遊技者により操作されるチャンスボタン117が設けられている。チャンスボタン117の操作は、例えば、遊技中における特定のリーチ演出に際し、チャンスボタン117の操作を促すガイダンスが表示されている間だけ有効となる。
加えて、枠部材110には、演出効果音又は不正を知らしめる音響を出力するスピーカ277(図2参照)が組み込まれている。このスピーカ277は、高音・中音・低音の領域を出力できるタイプのものであり、通常演出時は高音・中音・低音をバランス良く出力するが、例えば、特別演出時又は不正等があった場合には、周りに良く聞こえるように高音領域を高く出力するように制御される。
次に、本発明の実施の形態1に係るパチンコ遊技機1の電気的構成について、図2に示すブロック図を参照して説明する。パチンコ遊技機1は、電気的な構成上は、制御手段200に、既述し、後述する、第1始動口検出部221等の各種検出手段や、図柄表示部104等の各種演出手段、役物作動装置231、払出部291、発射部292などが接続されて構成されている。
制御手段200は、図2に示す例では、主制御部201と、中間部202と、副制御部203と、賞球制御部204と、ランプ制御部205とから構成されている。
主制御部201は、パチンコ遊技機1の遊技に係る基本動作を制御し、ROM201bに予め記憶されているプログラム(プログラムコード)に基づき、遊技内容の進行に伴う基本処理を実行するCPU201aと、CPU201aの演算処理時におけるデータのワークエリアとして機能するRAM201c等を備えて構成されている。
この主制御部201では、第1始動口105又は第2始動口120への遊技球の入球を契機として、大当たりの抽選を行うとともに、この抽選結果に基づいて、ROM201bに記憶されている演出に係わるコマンドの選択を行う。
上記主制御部201の入力側には、第1始動口検出部221と、第2始動口検出部225と、ゲート検出部222と、普通入賞口検出部223と、第1大入賞口検出部214と、第2大入賞口検出部224とが接続されている。第1始動口検出部221は、第1始動口105に遊技球が入球したことを検出して検出結果を主制御部201に供給する。第2始動口検出部225は、第2始動口120に遊技球が入球したことを検出して検出結果を主制御部201に供給する。ゲート検出部222は、入賞ゲート106を遊技球が通過したことを検出して検出結果を主制御部201に供給する。普通入賞口検出部223は、普通入賞口107に入球した遊技球を検出して検出結果を主制御部201に供給する。第1大入賞口検出部214は、第1大入賞口109cに入球した遊技球を検出して検出結果を主制御部201に供給する。第2大入賞口検出部224は、第2大入賞口129cに入球した遊技球を検出して検出結果を主制御部201に供給する。以上説明した各検出部は、例えば、近接スイッチなどを用いて構成することができる。
また、この主制御部201の出力側には、役物作動装置231が接続されている。本実施の形態1では、上記役物作動装置231は、第1大入賞口開閉扉109a及び第2大入賞口開閉扉129a(図1参照)をそれぞれ開閉させる第1大入賞口開閉ソレノイド109b及び第2大入賞口開閉ソレノイド129bと、第2始動口120(図1参照)を開閉させる第2始動口開閉ソレノイド120bとから構成されている。
上記役物作動装置231は、主制御部201によって制御され、長当たり遊技時に、第1大入賞口開閉ソレノイド109bを通電して第1大入賞口開閉扉109aを開放したり、短当たり遊技及び小当たり遊技時に、第2大入賞口開閉ソレノイド129bを通電して第2大入賞口開閉扉129aを開放したり、また、上記普通図柄の当選によって第2始動口開閉ソレノイド120bを通電して第2始動口120を開閉したりする。
また、主制御部201は、以上概略説明した、パチンコ遊技機1の遊技に係る基本動作制御の他、本実施の形態1の特徴である、不正防止のための複数の認証データの生成、必要に応じた複数の認証データの暗号化、中間部202を介して副制御部203に送信される制御コマンドのデータ(制御コマンドデータ)及び後述する付随データへ暗号化されていない又は暗号化された複数の認証データを付加することによる認証データ付制御信号(図9参照)の生成、認証データ付制御信号の送信等の処理を行う。なお、これら認証に関する処理の詳細については、後述する。
一方、中間部202は、ROM202bに予め記憶されているプログラムに基づき、主制御部201から送信される制御コマンドデータ、付随データ及び複数の認証データを受信するとともに、制御コマンドデータ及び付随データについては副制御部203にそのまま送信し、複数の認証データについては、必要に応じた復号化、少なくとも1つの認証データを用いた認証、少なくとも1つの認証データ又は少なくとも1つの認証結果の必要に応じた暗号化、制御コマンドデータ及び付随データへ暗号化されていない又は暗号化された少なくとも1つの認証データ又は少なくとも1つの認証結果を含む認証情報を付加することによる認証情報付制御信号の生成、認証情報付制御信号の送信等の認証に関する処理を実行するCPU202aと、CPU202aの演算処理時におけるデータのワークエリアとして機能するRAM202c等を備えて構成されている。なお、これら認証に関する処理の詳細については、後述する。
また、副制御部203の入力側には、上記チャンスボタン117が操作されたことを検出するチャンスボタン検出部220が接続されている。この副制御部203は、主に遊技中における演出の制御を行うものであり、主制御部201より中間部202を介して送信される制御コマンドデータに基づいて演出の抽選及び演出処理を実行するCPU203aと、プログラム及び過去の演出パターンを記憶するROM203bと、CPU203aの演算処理時におけるデータのワークエリアとして機能するRAM203cと、図柄表示部104に表示させるための画像データが書き込まれるVRAM203d等を備えている。
この副制御部203は、主制御部201より中間部202を介して送信される演出に係る制御コマンドデータを受信すると、この制御コマンドデータに基づいて抽選を行い、演出背景パターン、リーチ演出パターン、登場キャラクター等の演出を確定するとともに、当該確定した演出の制御を行う。
また、副制御部203の出力側には、図柄表示部104が接続されており、抽選によって決定された内容のとおりに、図柄表示部104において装飾図柄演出を展開する。
そして通常、CPU203aがROM203bに記憶されたプログラムを読み込んで、背景画像表示処理、図柄画像表示及び変動処理、キャラクター画像表示処理など各種画像処理を実行し、必要な画像データをROM203bから読み出してVRAM203dに書き込む。背景画像、図柄画像、キャラクター画像は、表示画面上において図柄表示部104に重畳表示される。
すなわち、図柄画像やキャラクター画像は背景画像よりも手前に見えるように表示される。このとき、同一位置に背景画像と図柄画像が重なる場合、Zバッファ法など周知の陰面消去法により各画像データのZバッファのZ値を参照することで、図柄画像を優先してVRAM203dに記憶させる。
また、副制御部203は、以上概略説明した処理の他、認証情報付制御信号を受信した場合には、必要に応じた少なくとも1つの認証データ又は少なくとも1つの認証結果の復号化、少なくとも1つの認証データを用いた認証、送信された認証結果又は内部における認証により得られた認証結果に基づく処理、認証が不成功の場合の報知等の処理を行う。なお、これら認証に関する処理の詳細については、後述する。
また副制御部203の出力側には、スピーカ277が接続されており、副制御部203において確定したとおりに、音響が出力されるようにしている。
また副制御部203の出力側には、ランプ262、演出ライト111a及び111b、演出役物作動装置254を制御するランプ制御部205を備えている。演出役物作動装置254は、演出役物115等の、演出用の役物を作動させるモータやソレノイド等によって構成されている。
ランプ制御部205は、副制御部203より送信された制御コマンドデータに基づきROM205bから読み込んだプログラムを作動させて演出処理を実行するCPU205aと、上記プログラム及び各種演出パターンデータを記憶するROM205bと、CPU205aの演算処理時におけるデータのワークエリアとして機能するRAM205c等を備えて構成される。
上記ランプ制御部205は、遊技盤101や台枠等に設けられている各種ランプ262に対する点灯制御等を行い、また、演出ライト111a及び111bをそれぞれ構成する複数のライト112に対する点灯制御等を行い、各ライト112からの光の照射方向を変更するためにモータに対する駆動制御等を行う。
また、ランプ制御部205は、副制御部203より送信された制御コマンドデータに基づき、演出役物115を動作させるソレノイドに対する駆動制御等を行い、瞼部116を動作させるモータに対する駆動制御等を行う。
さらに、上記主制御部201には賞球制御部204が双方向にて送信可能に接続されている。賞球制御部204は、ROM204bに記憶されたプログラムに基づき、賞球制御を行う。この賞球制御部204は、ROM204bに記憶されたプログラムを作動して賞球制御の処理を実行するCPU204aと、CPU204aの演算処理時におけるデータのワークエリアとして機能するRAM204c等を備えて構成されている。
賞球制御部204は、接続される払出部291に対して、各入球口(第1始動口105、第2始動口120、普通入賞口107、第1大入賞口109c、第2大入賞口129c)に入球した遊技球に対応した賞球数を払い出す制御を行う。また、賞球制御部204は、発射部292に対する遊技球の発射の操作を検出し、遊技球の発射を制御する。払出部291は、遊技球の貯留部から所定数を払い出すためのモータ等からなる。
発射部292は、遊技のための遊技球を発射するものであり、遊技者による遊技操作を検出するセンサ(図示略)と、遊技球を発射させるソレノイド等(図示略)を備えている。賞球制御部204は、発射部292のセンサにより遊技操作を検出すると、検出された遊技操作に対応してソレノイド等を駆動させて遊技球を間欠的に発射させ、遊技盤101の遊技領域103に遊技球を送り出す。
上記構成の主制御部201と、中間部202と、副制御部203と、賞球制御部204と、ランプ制御部205とは、それぞれ異なるプリント基板(主制御基板、中間基板、副制御基板、賞球制御基板、ランプ制御基板)に搭載されている。これらのうち、中間基板、副制御基板、賞球制御基板及びランプ制御基板の総称として、「周辺基板」を用いる。なお、例えば、賞球制御部204は、主制御部201と同一のプリント基板上に搭載することもできる。また、中間部202は、副制御部203と同一のプリント基板上に搭載することもできる。
次に、上記構成のパチンコ遊技機1の動作について、図面を参照して説明する。なお、以下の説明において、「制御コマンドを送信する」とは、「当該制御コマンドを示すデータ(制御コマンドデータ)を含む制御信号を送信する」という意味であり、例えば、図9に示す第1認証データ、第2認証データや付随データの有無は考慮しないものとする。
(A)主制御部201による中間部202及び賞球制御部204への制御コマンド送信を含む処理について、図3及び図4に示すフローチャートを参照して説明する。
まず、主制御部201は、パチンコ遊技機1の電源がオンにされたか否かを判断する(図3のステップS1参照)。この判断結果が「NO」の場合には、主制御部201は、同判断を繰り返す。そして、パチンコ遊技機1の電源がオンにされると、ステップS1の判断結果が「YES」となり、主制御部201は、ステップS2へ進む。
ステップS2では、主制御部201は、中間部202及び賞球制御部204に電源オンコマンドを送信した後、ステップS3へ進む。電源オンコマンドが送信されると、中間部202は、当該電源オンコマンドを副制御部203に送信する。電源オンコマンドが送信されると、副制御部203は、図柄表示部104やランプ制御部205のそれぞれに対して電源オン時の演出用の制御コマンド(具体的には、デモ画面の表示などを指示する制御コマンド、ランプの点灯等)を送信する。
ステップS3では、主制御部201は、RAM201cに記憶されている未抽選入賞回数データを参照して、未抽選入賞回数が0回であるか否かを判断する。ここで、未抽選入賞回数とは、第1始動口検出部221又は第2始動口検出部225で検出された遊技球の数(入賞回数)から、当該遊技球の入球に対応する抽選が行われた回数(既抽選回数)を減じた数である。ステップS3の判断結果が「NO」の場合、すなわち、未抽選入賞回数が0回でない場合には、主制御部201は、後述するステップS10へ進む。一方、ステップS3の判断結果が「YES」の場合、すなわち、未抽選入賞回数が0回である場合には、主制御部201は、ステップS4へ進む。
ステップS4では、主制御部201は、客待ちデモが開始されてから経過した時間を計測した後、ステップS5へ進む。ステップS5では、主制御部201は、客待ちデモが開始されてから所定時間が経過したか否かを判断する。ステップS5の判断結果が「YES」の場合、すなわち、客待ちデモが開始されてから所定時間が経過した場合には、主制御部201は、ステップS6へ進む。
ステップS6では、主制御部201は、中間部202に客待ちデモコマンドを送信した後、ステップS7へ進む。客待ちデモコマンドが送信されると、中間部202は、当該客待ちデモコマンドを副制御部203に送信する。客待ちデモコマンドが送信されると、副制御部203は、図柄表示部104やランプ制御部205のそれぞれに対して客待ちデモ用の制御信号を送信する。
一方、ステップS5の判断結果が「NO」の場合、すなわち、客待ちデモが開始されてから所定時間が経過していない場合には、主制御部201は、ステップS7へ進む。ステップS7では、主制御部201は、第1始動口検出部221で第1始動口105への遊技球の入球が検出されたか又は第2始動口検出部225で第2始動口120への遊技球の入球が検出されたか否かを判断する。ステップS7の判断結果が「YES」の場合、すなわち、第1始動口検出部221で第1始動口105への遊技球の入球が検出されたか又は第2始動口検出部225で第2始動口120への遊技球の入球が検出された場合には、主制御部は、ステップS8へ進む。
一方、ステップS7の判断結果が「NO」の場合、すなわち、第1始動口検出部221で第1始動口105への遊技球の入球が検出されず、かつ、第2始動口検出部225で第2始動口120への遊技球の入球が検出されない場合には、主制御部は、ステップS4へ戻り、ステップS4以降の処理を繰り返す。
ステップS8では、主制御部201は、客待ちデモが開始されてから計測していた時間をクリアした後、ステップS9へ進む。ステップS9では、主制御部201は、未抽選入賞回数に1を加算した後、ステップS10へ進む。ステップS10では、主制御部201は、予め用意された乱数(例えば、0〜250)から1つの大当たり判定用乱数を無作為に取得した後、ステップS11へ進む。ステップS11では、主制御部201は、未抽選入賞回数から1を減算した後、図4に示すステップS12へ進む。
図4に示すステップS12では、主制御部201は、ステップS10の処理で取得した大当たり判定用乱数が、予め定められた大当たり乱数であるか否かを判断する。ステップS12の判断結果が「YES」の場合、すなわち、ステップS10で取得した大当たり判定用乱数が予め定められた大当たり乱数である場合には、主制御部201は、ステップS13へ進む。
ステップS13では、主制御部201は、中間部202に大当たりリーチコマンド(図柄変動コマンド)を送信した後、ステップS14へ進む。大当たりリーチコマンド(図柄変動コマンド)が送信されると、中間部202は、当該大当たりリーチコマンド(図柄変動コマンド)を副制御部203に送信する。ステップS14では、主制御部201は、図柄変動時間が経過したか否かを判断する。ステップS14の判断結果が「NO」の場合、すなわち、図柄変動時間が経過していない場合には、主制御部201は、同判断を繰り返す。そして、図柄変動時間が経過すると、ステップS14の判断結果が「YES」となり、主制御部201は、ステップS15へ進む。
ステップS15では、主制御部201は、中間部202に図柄停止コマンドを送信した後、ステップS16へ進む。図柄停止コマンドが送信されると、中間部202は、当該図柄停止コマンドを副制御部203に送信する。ステップS16では、主制御部201は、中間部202に大当たり開始コマンドを送信した後、ステップS17へ進む。大当たり開始コマンドが送信されると、中間部202は、当該大当たり開始コマンドを副制御部203に送信する。ステップS17では、主制御部201は、中間部202に大当たり中の各ラウンドに対応するコマンド(大当たりコマンド)を順次送信し、すべてのラウンドの大当たりコマンドの送信を終了した後、ステップS18へ進む。各ラウンドに対応する大当たりコマンドが順次送信されると、中間部202は、各ラウンドに対応する大当たりコマンドを副制御部203に順次送信する。ステップS18では、主制御部201は、中間部202に大当たり終了コマンドを送信した後、ステップS22へ進む。大当たり終了コマンドが送信されると、中間部202は、当該大当たり終了コマンドを副制御部203に送信する。
一方、ステップS12の判断結果が「NO」の場合、すなわち、ステップS10の処理で取得した大当たり判定用乱数が予め定められた大当たり乱数でない場合には、主制御部201は、ステップS19へ進む。ステップS19では、主制御部201は、中間部202にはずれリーチコマンド(図柄変動コマンド)を送信した後、ステップS20へ進む。はずれリーチコマンド(図柄変動コマンド)が送信されると、中間部202は、当該はずれリーチコマンド(図柄変動コマンド)を副制御部203に送信する。
ステップS20では、主制御部201は、図柄変動時間が経過したか否かを判断する。ステップS20の判断結果が「NO」の場合、すなわち、図柄変動時間が経過していない場合には、主制御部201は、同判断を繰り返す。そして、図柄変動時間が経過すると、ステップS20の判断結果が「YES」となり、主制御部201は、ステップS21へ進む。ステップS21では、主制御部201は、中間部202に図柄停止コマンドを送信した後、ステップS22へ進む。図柄停止コマンドが送信されると、中間部202は、当該図柄停止コマンドを副制御部203に送信する。
ステップS22では、主制御部201は、パチンコ遊技機1の電源がオフにされたか否かを判断する。ステップS22の判断結果が「NO」の場合、すなわち、パチンコ遊技機1の電源がオフにされていない場合には、主制御部201は、図3に示すステップS3へ戻り、ステップS3以降の処理を繰り返す。
一方、ステップS22の判断結果が「YES」の場合、すなわち、パチンコ遊技機1の電源がオフにされた場合には、主制御部201は、ステップS23へ進む。ステップS23では、主制御部201は、中間部202に終了処理コマンドを送信した後、一連の処理を終了する。終了処理コマンドが送信されると、中間部202は、当該終了処理コマンドを副制御部203に送信する。
ここで、図5に、大当たり関連コマンド(大当たりリーチコマンド、大当たり開始コマンド、大当たりコマンド、大当たり終了コマンド)の送信タイミングの一例であるタイミングチャートを示す。図5(1)に示す大当たりリーチコマンドは、実際に大当たりが発生するよりも頻繁に、かつランダムに送信される。また、図5(2)に示す大当たり開始コマンドは、実際に大当たりが発生した場合に、大当たり状態に移行する際に1度だけ送信される。さらに、図5(3)に示す大当たりコマンドは、大当たり状態に移行した後、ラウンドごとに継続的に送信される。また、図5(4)に示す大当たり終了コマンドは、大当たり状態のすべてのラウンドが終了し、通常の状態に移行する際に1度だけ送信される。
(B)次に、副制御部203による処理について説明する。以下では、図柄変動時(大当たりリーチコマンド(図4に示すステップS13参照)又は、はずれリーチコマンド(図4に示すステップS19参照)を受信した場合)及び、大当たり時の副制御部203の処理について説明する。
(i)まず、副制御部203による図柄変動処理について、図6に示すフローチャートを参照して説明する。
まず、副制御部203は、主制御部201から中間部202を介して、図柄変動コマンドである大当たりリーチコマンド(図4に示すステップS13参照)又ははずれリーチコマンド(図4に示すステップS19参照)のいずれかを受信したか否かを判断する(図6のステップS31参照)。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、大当たりリーチコマンド又ははずれリーチコマンドのいずれかを受信すると、ステップS31の判断結果が「YES」となり、副制御部203は、ステップS32へ進む。
ステップS32では、副制御部203は、予め用意された乱数(例えば、0〜250)から1つの変動演出選択用乱数を無作為に取得した後、ステップS33へ進む。ステップS33では、副制御部203は、ステップS32の処理で取得した変動演出選択用乱数に基づいて変動演出の種類を選択した後、ステップS34へ進む。
ステップS34では、副制御部203は、図柄表示部104やランプ制御部205に変動演出別の演出開始コマンドを送信した後、ステップS35へ進む。ステップS35では、副制御部203は、変動演出の演出時間が経過したか否かを判断する。ステップS35の判断結果が「NO」の場合、すなわち、変動演出の演出時間が経過していない場合には、副制御部203は、ステップS36へ進む。
ステップS36では、副制御部203は、主制御部201から中間部202を介して図柄停止コマンド(図4に示すステップS15及びS21参照)を受信したか否かを判断する。ステップS36の判断結果が「NO」の場合、すなわち、図柄停止コマンドを受信していない場合には、副制御部203は、ステップS35へ戻り、ステップS35以降の処理を繰り返す。
一方、ステップS36の判断結果が「YES」の場合、すなわち、図柄停止コマンドを受信した場合には、副制御部203は、ステップS37へ進む。また、ステップS35の判断結果が「YES」の場合、すなわち、変動演出の演出時間が経過した場合にも、副制御部203は、ステップS37へ進む。ステップS37では、副制御部203は、図柄表示部104やランプ制御部205に演出停止コマンドを送信した後、一連の処理を終了する。
(ii)次に、副制御部203による大当たり時の処理について、図7に示すフローチャートを参照して説明する。
まず、副制御部203は、主制御部201から中間部202を介して大当たり開始コマンド(図4に示すステップS16参照)を受信したか否かを判断する(図7のステップS41参照)。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、大当たり開始コマンドを受信すると、ステップS41の判断結果が「YES」となり、副制御部203は、ステップS42へ進む。
ステップS42では、副制御部203は、図柄表示部104やランプ制御部205に大当たり開始処理コマンドを送信した後、ステップS43へ進む。ステップS43では、副制御部203は、主制御部201から中間部202を介してラウンド別の大当たりコマンド(図4に示すステップS17参照)を受信したか否かを判断する。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、ラウンド別の大当たりコマンドを受信すると、ステップS43の判断結果が「YES」となり、副制御部203は、ステップS44へ進む。
ステップS44では、副制御部203は、図柄表示部104やランプ制御部205に受信したラウンド別の大当たりコマンドに対応するラウンド別処理コマンドを送信した後、ステップS45へ進む。ステップS45では、主制御部201から中間部202を介して大当たり終了コマンド(図4に示すステップS18参照)を受信したか否かを判断する。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、大当たり終了コマンドを受信すると、ステップS45の判断結果が「YES」となり、副制御部203は、ステップS46へ進む。ステップS46では、副制御部203は、図柄表示部104やランプ制御部205に大当たり終了処理コマンドを送信した後、一連の処理を終了する。
(C)次に、ランプ制御部205によるランプ制御処理について説明する。ここでは、副制御部203から図柄変動コマンドを受信した場合(図柄変動時)の処理について、図8に示すフローチャートを参照して説明する。
まず、ランプ制御部205は、副制御部203から演出開始コマンド(図6に示すステップS34参照)を受信したか否かを判断する(図8のステップS51参照)。この判断結果が「NO」の場合には、ランプ制御部205は、同判断を繰り返す。そして、演出開始コマンドを受信すると、ステップS51の判断結果が「YES」となり、ランプ制御部205は、ステップS52へ進む。
ステップS52では、ランプ制御部205は、例えば、ROM205bから予めコマンド別に記憶されているデータを読み出した後、ステップS53へ進む。ステップS53では、ランプ制御部205は、コマンド別の選択ルーチンを実行した後、ステップS54へ進む。ステップS54では、ランプ制御部205は、ランプデータをセットした後、ステップS55へ進む。
ステップS55では、ランプ制御部205は、ランプ262にランプデータを出力した後、ステップS56へ進む。これにより、ランプ262は、ランプ制御部205から出力されたランプデータに基づいて、点灯又は消灯する。ステップS56では、ランプ制御部205は、副制御部203から演出停止コマンド(図6に示すステップS37参照)を受信したか否かを判断する。この判断結果が「NO」の場合には、ランプ制御部205は、ステップS55へ戻り、ステップS55以降の処理を繰り返す。一方、ステップS56の判断結果が「YES」の場合、すなわち、副制御部203から演出停止コマンドを受信した場合には、ランプ制御部205は、ステップS57へ進む。ステップS57では、ランプ制御部205は、ランプデータの出力を停止した後、一連の処理を終了する。
以上説明したように、副制御部203及びランプ制御部205は、主制御部201から供給される制御コマンドに基づいて各種の処理を行っている。賞球制御部204についても同様である。以下、副制御部203、賞球制御部204及びランプ制御部205の総称として、「周辺部」を用いる。
一方、上記したように、遊技機に対し行われる、遊技とは無関係にメダルや遊技球などの遊技媒体を強制的に払い出させる不正行為のうち、主制御基板(主制御部)や周辺基板(周辺部)に関するものとして以下に示すものがある。
(1)正規な主制御基板と不正な主制御基板との交換
(2)主制御基板に搭載されたCPUが実行する正規なプログラムが記憶されたROMと上記プログラムを改ざんした不正なプログラムが記憶されたROMとの交換
(3)主制御基板と周辺基板との間に不正な基板(なりすまし基板)を設けた上での上記(2)のROM交換
このような不正行為が行われた場合、周辺部は不正な制御部から出力された不正な制御コマンドデータによって不正な動作を行ってしまう。何故なら、既存の制御コマンドデータには送信者が識別可能な情報が含まれていないので、制御コマンドデータを受信する周辺部では、送信された制御コマンドデータが、正規な制御部から送信されたものか否か識別できないためである。
また、上記した不正行為に限らず、例えば、主制御部から周辺部に制御コマンドデータが送信されている際に、遊技機に外部から電気的な雑音や機械的な振動等が加えられることにより、この雑音等の影響により制御コマンドデータにビットエラーが発生し、制御コマンドデータが変更されてしまうことがある。この場合、本来周辺部に送信されるべき制御コマンドデータが大当たりコマンド以外の制御コマンドのデータであるにも関わらず、ビットエラーが発生して当該制御コマンドデータが大当たりコマンドデータに変更されてしまうと、上記した不正行為が行われた場合でなくても、遊技者に不当に多くの遊技媒体(例えば、遊技球やメダルなど)が払い出され、遊技場が多大な損害を被ってしまう。
そこで、上記不正行為及び雑音等に起因する遊技機の誤動作を防止するため、本実施の形態1に係るパチンコ遊技機1では、主制御部201と副制御部203との間に中間部202を設け、主制御部201から供給される制御コマンドが所定の制御コマンドである場合、主制御部201と中間部202との間で第1段階の認証処理を行うとともに、中間部202と副制御部203との間で第2段階の認証処理を行う。ここで、所定の制御コマンドとは、具体的には、大当たり状態の処理を開始させるための大当たり開始コマンド又は、大当たり状態の処理を終了させるための大当たり終了コマンドをいう。
次に、主制御部201が中間部202に供給する制御信号のデータフォーマットの一例について、図9に示す模式図を参照して説明する。図9(1)に示すように、主制御部201が出力する通常の制御信号300には、制御コマンドデータ301及び付随データ302が含まれている。この場合の制御コマンドデータ301は、上記した大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンド固有のデータである。また、付随データ302は、制御コマンドデータ301に付随するデータであり、例えば、入賞した遊技球の数など制御コマンドデータ301に基づく処理に必要なデータである。
一方、主制御部201は、制御信号内の制御コマンドデータ301が上記した大当たり開始コマンド又は大当たり終了コマンド固有のデータである場合、図9(2)に示すように、制御コマンドデータ301及び付随データ302に加え、第1認証データ303及び第2認証データ304を含んだ認証データ付制御信号310を生成し、出力する。
このように、第1認証データ303及び第2認証データ304を制御信号に含めることによって、認証データ単体で送信する場合と比較して、主制御部201と周辺部との間の通信負荷の増大を抑えることができる。また、第1認証データ303及び第2認証データ304を制御信号に含めることによって、第1認証データ303及び第2認証データ304を単体で送信する場合と比較して、通信データ中から第1認証データ303又は第2認証データ304が抽出され、解析されてしまう危険性を低減することができる。また、認証処理は、大当たり開始コマンドデータ又は大当たり終了コマンドデータを送信するときにのみ行われるため、認証処理による主制御部201の処理負荷が認証処理によって増大する割合を抑えることができる。
さらに、認証処理は、中間部202と副制御部203とで2段階に分けて実行するので、複数段階の認証処理を副制御部203のみが実行する場合と比較して、副制御部203を構成するCPU203aの処理負荷が増大する割合を抑えることができる。このため、副制御部203の処理速度が低下し、演出のための表示がスムーズに行われないなどの不都合が発生するおそれを最小限にすることができる。
さらに、認証処理は、中間部202と副制御部203とで2段階に分けて実行するので、上記した(1)〜(3)等の主制御部に対する不正行為及び雑音等に起因する遊技機の誤動作の他、中間部202に対する上記した(1)〜(3)等と同様な不正行為及び雑音等に起因する遊技機の誤動作を防止することができ、セキュリティの向上を図ることができる。
また、大当たり開始コマンド又は大当たり終了コマンドの制御コマンドデータ301にのみ第1認証データ303及び第2認証データ304が付加されるので、副制御部203が実行するプログラムには大当たり開始コマンド又は大当たり終了コマンドに関する認証処理を追加するだけで良い。したがって、副制御部203が実行するプログラム全体にわたる新たなタイミングの設計する必要がないので、すべての制御コマンドの制御コマンドデータ301に第1認証データ303及び第2認証データ304が付加される場合と比較して、認証機能を追加するタイミングの設計・機能の実装・機能の検証など、より簡単に、少ない作業工数で実現することができる。
また、第1段階の認証処理を中間部202が実行するので、認証機能の一部を切り離すことにより、認証アルゴリズムを変更する場合、複数段階の認証処理を副制御部203のみが実行する場合と比較して、より簡単に、少ない作業工数で実現することができる。
第1認証データ303及び第2認証データ304は、主制御部201を正規の主制御部であると中間部202及び周辺部が認証するためのデータである。具体的には、第1認証データ303及び第2認証データ304は、例えば、パチンコ遊技機1又はCPU201aに固有に付与されている識別番号(ID)、プログラムカウンタ(PC)の値、スタックポイント値、乱数発生部により発生された乱数、プログラムコード検査値(以下、これらを総称して「認証基本値」という。)、あるいは上記認証基本値と大当たり開始コマンド又は大当たり終了コマンド(さらに、後述する付随データ)とを用いて生成(例えば、四則演算、論理演算など)したものである。ここで、プログラムコード検査値とは、ROM201bに記憶されたプログラムのすべて又は一部に対して、ハッシュ関数による演算やパリティチェック、巡回冗長検査(CRC:Cyclic Redundancy Check)、チェックサム(Check Sum)などの、誤り検出演算を行って得られた値、すなわち、プログラムコードの正当性を検出可能な値をいう。
中間部202が上記した第1認証データ303を用いて第1段階の認証を行い、その認証結果(第1認証結果)及び第2認証データ304を周辺部に送信し、周辺部が上記した第2認証データ304を用いて第2段階の認証を行うことによって、周辺部は、得られた認証結果(第2認証結果)及び送信された第1認証結果に基づいて、制御信号の出力元が正規の主制御部201であるか否かを判断することができる。なお、中間部202及び周辺部が第1認証データ303及び第2認証データ304を用いて認証を行うには、中間部202及び周辺部を構成するROM等の記憶手段に認証に必要なデータ(以下、「期待値」等という。)が予め記憶されている必要があることは言うまでもない。また、主制御部201のROM201bに記憶されたプログラムコードの不正な書き換えや、主制御部201のROM201bの不正な取り替えなどを検出することができる。
なお、主制御部201は、それぞれの制御信号に対して異なる第1認証データ303及び第2認証データ304を生成するものとする。具体的には、例えば、第1認証データ303及び第2認証データ304を生成するために用いるROM201b内のプログラムコードの範囲を異ならせたり、第1認証データ303及び第2認証データ304を生成するための誤り検出演算を異ならせたりするようにする。また、第1認証データ303及び第2認証データ304を生成するにあたって用いるデータは、プログラムコードに限らず、ROM201bに記憶された任意のデータであっても良い。
また、第1認証データ303及び第2認証データ304には、第1認証データ303及び第2認証データ304とともに送信される制御コマンドデータ301や付随データ302に関するデータを含ませても良い。制御コマンドデータ301や付随データ302に関するデータとは、制御コマンドデータ301や付随データ302そのものや、制御コマンドデータ301や付随データ302に対して上述したような誤り検出方式を用いた演算を行って得られた値などである。一般に、不正な制御部は、正規の主制御部201と異なる制御コマンドデータを送信することによって、周辺部に不正な動作を行わせようとする。第1認証データ303及び第2認証データ304とともに送信する制御コマンドデータ301や付随データ302を用いて第1認証データ303及び第2認証データ304を生成すれば、不正な制御部によって第1認証データ303又は第2認証データ304を再利用された場合であっても、第1認証データ303又は第2認証データ304と制御コマンドの整合がとれず、不正を検知することができる。
また、上記した不正行為に限らず、電気的な雑音や機械的な振動等に起因して、制御コマンドデータにビットエラーが発生し、制御コマンドデータが変更された場合、認証は成功しないため、上記した雑音等に起因して変更された制御コマンドデータに対応した制御コマンドの実行を防止することもできる。
第1認証データ303及び第2認証データ304に制御コマンドデータ301や付随データ302に関するデータを含ませる場合、主制御部201は制御コマンドデータ301や付随データ302に関するデータと認証基本値とを合わせて暗号化して、第1認証データ303及び第2認証データ304を生成する。
なお、認証データ付制御信号は、図9(2)に示すような制御コマンドデータ301、付随データ302、第1認証データ303及び第2認証データ304の順で配置された認証データ付制御信号310に限らず、例えば、図9(3)に示すように、第1認証データ303及び第2認証データ304を制御信号の先頭に設けた認証データ付制御信号311としたり、図9(4)に示すように、制御コマンドデータ301と付随データ302との間に第1認証データ303及び第2認証データ304を挿入した認証データ付制御信号312としたりしても良い。また、図9(2)〜(4)に示すように第1認証データ303及び第2認証データ304を連続して配置する必要はなく、制御コマンドデータ301と付随データ302との間に配置しても良いし、第1認証データ303と第2認証データ304の配置の順序を逆にしても良い。また、制御コマンドデータ301及び付随データ302とは別個に第1認証データ303及び第2認証データ304を出力することとしても良い。例えば、大当たり開始コマンドデータ又は大当たり終了コマンドデータを含む制御信号を送信した後、3回目の制御信号送信時に第1認証データ303及び第2認証データ304を付加する、などとしても良い。さらに、第1認証データ303及び第2認証データ304を生成するタイミングは、特に制限はなく、大当たり開始コマンドデータ又は大当たり終了コマンドデータが送信されるまでに生成しておけば良い。
次に、中間部202が副制御部203に供給する制御信号のデータフォーマットの一例について、図10に示す模式図を参照して説明する。主制御部201から図9(1)に示す通常の制御信号300が供給された場合には、中間部202は、図10(1)に示すように、制御コマンドデータ301及び付随データ302が含まれる通常の制御信号320を生成し、副制御部203に供給する。一方、主制御部201から、例えば、図9(2)〜(4)に示す認証データ付制御信号310〜312等が供給された場合には、中間部202は、第1認証データ303を用いて第1段階の認証を行い、例えば、図10(2)〜(4)に示す認証情報付制御信号321〜323等を生成し、副制御部203に供給する。なお、制御コマンドデータ301、付随データ302、第1認証結果305及び第2認証データ304の配置の順序には、図10(2)〜(4)に示すバリエーションの他、上記した制御コマンドデータ301、付随データ302、第1認証データ303及び第2認証データ304の配置の順序と同様のバリエーションが考えられる。
(D)次に、主制御部201と中間部202及び周辺部との間で行う制御信号の送受信処理について説明する。以下、主制御部201と中間部202との間の制御信号の送受信処理について、図11及び図12に示すフローチャートを参照して説明するが、主制御部201と賞球制御部204との間の制御信号の送受信処理も同様の手順で行われる。
図11は、主制御部201による制御信号の送信処理の一例を示すフローチャートである。まず、主制御部201は、現在、制御コマンドデータの送信タイミングであるか否かを判断する(図11のステップS61参照)。この判断結果が「NO」の場合には、主制御部201は、同判断を繰り返す。そして、制御コマンドデータの送信タイミングとなると、ステップS61の判断結果が「YES」となり、主制御部201は、ステップS62へ進む。
ステップS62では、主制御部201は、今回送信する制御コマンドが大当たり開始コマンド又は大当たり終了コマンドか否かを判断する。ステップS62の判断結果が「YES」の場合、すなわち、今回送信する制御コマンドが大当たり開始コマンド又は大当たり終了コマンドである場合には、主制御部201は、ステップS63へ進む。ステップS63では、主制御部201は、制御コマンドデータ301(大当たり開始コマンドデータ又は大当たり終了コマンドデータ)及び付随データ302をRAM201cの所定の記憶領域にセットした後、ステップS64へ進む。
ステップS64では、主制御部201は、第1認証データ303を生成した後、ステップS65へ進む。ステップS65では、主制御部201は、第2認証データ304を生成した後、ステップS66へ進む。第1認証データ303は、例えば、ROM201bに記憶されたプログラムのすべてのチェックサム(プログラムコード検査値)が考えられ、この場合、第2認証データ304として、例えば、第1認証データ303とは異なる生成方法で生成されたプログラムコード検査値又は、CPU201aに固有に付与されている識別番号(ID)、プログラムカウンタ(PC)の値が考えられる。なお、第1認証データ303又は第2認証データ304のいずれか一方又は両方は、上記したプログラムコード検査値等を所定の暗号化方式で暗号化したものを用いても良い。また、ステップS63〜S65の処理の順序を入れ替えても良い。
ステップS66では、主制御部201は、上記したステップS63〜S65のそれぞれの処理で生成した制御コマンドデータ301、付随データ302、第1認証データ303及び第2認証データ304を含む制御信号(認証データ付制御信号)を生成し、中間部202に送信した後、一連の処理を終了する。
一方、ステップS62の判断結果が「NO」の場合、すなわち、今回送信する制御コマンドが大当たり開始コマンドでも大当たり終了コマンドでもない場合には、主制御部201は、ステップS67へ進む。ステップS67では、主制御部201は、制御コマンドデータ301(大当たり開始コマンドデータ及び大当たり終了コマンドデータ以外の制御コマンドの制御コマンドデータ)及び付随データ302をRAM201cの所定の記憶領域にセットした後、ステップS68へ進む。ステップS68では、主制御部201は、上記したステップS67の処理で生成した制御コマンドデータ301及び付随データ302を含む制御信号(通常の制御信号)を生成し、中間部202に送信した後、一連の処理を終了する。
このように、主制御部201は、中間部202に大当たり開始コマンドデータ又は大当たり終了コマンドデータを送信する場合のみ、制御コマンドデータ301に認証データ303を付加する。大当たり開始コマンドや大当たり終了コマンドは、大当たり状態を開始又は終了させる制御コマンドであり、他の制御コマンドと比較して、送信頻度が低い。したがって、制御信号の中から認証データ303が抽出される危険性を低減することができる。また、制御信号の中から認証データ303が抽出されても、取得できるサンプル数が少ないため、認証データ303が解析される危険性を低減することができる。
また、認証処理が行われるのは大当たり開始コマンドデータ又は大当たり終了コマンドデータの送信時のみであるので、主制御部201の処理負荷が認証処理によって増大する割合を抑えることができる。
次に、中間部202による制御信号の受送信処理について説明する。図11は、中間部202による制御信号の受送信処理の一例を示すフローチャートである。まず、中間部202は、主制御部201から送信された制御信号を受信したか否かを判断する(図11のステップS71参照)。この判断結果が「NO」の場合には、中間部202は、同判断を繰り返す。そして、主制御部201から送信された制御信号を受信すると、ステップS71の判断結果が「YES」となり、中間部202は、ステップS72へ進む。
ステップS72では、中間部202は、受信した制御信号に第1認証データ303及び第2認証データ304が含まれているか否かを判断する。ステップS72の判断結果が「YES」の場合、すなわち、受信した制御信号に第1認証データ303及び第2認証データ304が含まれている場合には、中間部202は、ステップS73へ進む。ここで、制御信号に第1認証データ303及び第2認証データ304が含まれているか否かの判断は、例えば、制御信号のデータ量が通常の制御信号よりも多いか否かや、制御信号において第1認証データ303及び第2認証データ304が含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS73では、中間部202は、制御信号から第1認証データ303を抽出し、第1認証データ303の期待値をROM202b等から取得した後、ステップS74へ進む。ステップS74では、中間部202は、第1段階の認証処理を行った後、ステップS75へ進む。第1段階の認証処理は、例えば、以下に示す手法により行う。すなわち、例えば、制御信号に含まれている第1認証データ303と期待値とが一致するか否かを判断する。
このとき、中間部202は、第1認証データ303と期待値とが一致するか否かではなく、第1認証データ303と期待値とが所定の関係にあるか否かを判断しても良い。所定の関係とは、例えば、第1認証データ303に所定の演算を行って得た値が期待値と一致する、などの関係をいう。なお、第1認証データ303又は第2認証データ304のいずれか一方又は両方が暗号化されている場合には、中間部202は、上記した認証処理の前に、第1認証データ303又は第2認証データ304のいずれか一方又は両方の復号化を行う。
中間部202が照合に用いる期待値は、例えば、製造時など、予め中間部202を構成するROM202bの所定の記憶領域に記憶させておく。なお、中間部202が照合に用いる期待値を、他の構成部から中間部202に送信することとしても良い。他の構成部としては、例えば、賞球制御部204や認証データの期待値を生成するための専用の処理部(以下、「期待値算出部」という。)などがある。期待値算出部は、予め記憶されている期待値を中間部202に送信しても良いし、照合処理ごとに期待値を生成しても良い。また、外部接続用インターフェイス(図示略)を介して、外部の機器から中間部202や期待値算出部に期待値を算出するために必要な係数などを送信しても良い。このように、中間部202を構成するROM202bの所定の記憶領域に、予め第1認証データ303の期待値を記憶させずに、他の構成部から取得することとすれば、第1認証データ303を事後的に変更することが可能となる。
また、ステップS72の処理において、中間部202は、受信した制御信号に第1認証データ303及び第2認証データ304が含まれているか否かを判断するのではなく、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであるか否かを判断しても良い。このようにした場合、中間部202は、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであると判断した場合には、制御信号から第1認証データ303を抽出し、第1認証データ303の期待値を取得して(ステップS73)、制御信号に含まれている第1認証データ303と期待値とが一致するか否かを判断(ステップS74)すれば良い。
ステップS75では、中間部202は、制御信号に含まれている制御コマンドデータ301、付随データ302、第2認証データ304と、上記したステップS74の処理で得られた認証結果(第1認証結果)とを含む制御信号(認証情報付制御信号)を生成し、副制御部203に送信した後、一連の処理を終了する。この場合、ステップS74又はS75の処理において、中間部202は、上記した第1認証結果又は第2認証データ304のいずれか一方又は両方を暗号化した後、副制御部203に送信しても良い。
一方、ステップS72の判断結果が「NO」の場合、すなわち、受信した制御信号に第1認証データ303及び第2認証データ304が含まれていない場合、すなわち、通常の制御信号である場合には、中間部202は、ステップS76へ進む。ステップS76では、中間部202は、送信された通常の制御信号をそのまま副制御部203に送信した後、一連の処理を終了する。
次に、副制御部203による制御信号の受信処理について説明する。図13は、副制御部203による制御信号の受信処理の一例を示すフローチャートである。まず、副制御部203は、中間部202から送信された制御信号を受信したか否かを判断する(図13のステップS81参照)。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、中間部202から送信された制御信号を受信すると、ステップS81の判断結果が「YES」となり、副制御部203は、ステップS82へ進む。
ステップS82では、副制御部203は、受信した制御信号に第1認証結果305及び第2認証データ304が含まれているか否かを判断する。ステップS82の判断結果が「YES」の場合、すなわち、受信した制御信号に第1認証結果305及び第2認証データ304が含まれている場合には、副制御部203は、ステップS83へ進む。ここで、制御信号に第1認証結果305及び第2認証データ304が含まれているか否かの判断は、例えば、制御信号のデータ量が通常の制御信号よりも多いか否かや、制御信号において第1認証結果305及び第2認証データ304が含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS83では、副制御部203は、制御信号から第2認証データ304を抽出し、第2認証データ304の期待値をROM202b等から取得した後、ステップS84へ進む。ステップS84では、副制御部203は、第2段階の認証処理を行った後、ステップS85へ進む。第2段階の認証処理は、例えば、以下に示す手法により行う。すなわち、例えば、制御信号に含まれている第2認証データ304と期待値とが一致するか否かを判断する。
このとき、副制御部203は、第2認証データ304と期待値とが一致するか否かではなく、第2認証データ304と期待値とが所定の関係にあるか否かを判断しても良い。所定の関係とは、例えば、第2認証データ304に所定の演算を行って得た値が期待値と一致する、などの関係をいう。なお、第1認証結果305又は第2認証データ304のいずれか一方又は両方が暗号化されている場合には、副制御部203は、上記した認証処理の前に、第1認証結果305又は第2認証データ304のいずれか一方又は両方の復号化を行う。
副制御部203が照合に用いる期待値は、例えば、製造時など、予め副制御部203を構成するROM203bの所定の記憶領域に記憶させておく。なお、副制御部203が照合に用いる期待値を、他の構成部から副制御部203に送信することとしても良い。他の構成部としては、例えば、賞球制御部204や期待値算出部などがある。期待値算出部は、予め記憶されている期待値を副制御部203に送信しても良いし、照合処理ごとに期待値を生成しても良い。また、外部接続用インターフェイス(図示略)を介して、外部の機器から副制御部203や期待値算出部に期待値を算出するために必要な係数などを送信しても良い。このように、副制御部203を構成するROM203bの所定の記憶領域に、予め第2認証データ304の期待値を記憶させずに、他の構成部から取得することとすれば、第2認証データ304を事後的に変更することが可能となる。
また、ステップS82の処理において、副制御部203は、受信した制御信号に第1認証結果305及び第2認証データ304が含まれているか否かを判断するのではなく、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであるか否かを判断しても良い。このようにした場合、副制御部203は、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであると判断した場合には、制御信号から第2認証データ304を抽出し、第2認証データ304の期待値を取得して(ステップS83)、制御信号に含まれている第2認証データ304と期待値とが一致するか否かを判断(ステップS84)すれば良い。
ステップS85では、副制御部203は、受信した第1認証結果305及びステップS84の処理で得られた第2認証結果がいずれも認証に成功したことを示しているか否かを判断する。ステップS85の判断結果が「YES」の場合、すなわち、受信した第1認証結果305及びステップS84の処理で得られた第2認証結果がいずれも認証に成功したことを示している場合には、副制御部203は、ステップS86へ進む。また、ステップS82の判断結果が「NO」の場合、すなわち、受信した制御信号に第1認証結果305及び第2認証データ304が含まれていない場合、つまり、通常の制御信号である場合にも、副制御部203は、ステップS86へ進む。なお、上記したステップS74又はS75の処理において第1認証結果305又は第2認証データ304のいずれか一方又は両方が暗号化されている場合には、副制御部203は、上記した認証処理の前に、第1認証結果305又は第2認証データ304のいずれか一方又は両方の復号化を行う。
ステップS86では、副制御部203は、制御コマンドデータ301及び付随データ302に基づく処理を行った後、一連の処理を終了する。一方、ステップS85の判断結果が「NO」の場合、すなわち、受信した第1認証結果又はステップS84の処理で得られた第2認証結果のいずれかが認証に成功したことを示していない場合には、副制御部203は、ステップS87へ進む。ステップS87では、副制御部203は、制御コマンドデータ301及び付随データ302を破棄するとともに、不正行為を報知するための報知信号を図柄表示部104やランプ制御部205、あるいはパチンコ遊技機1を管理するセンター制御装置などに送信した後、一連の処理を終了する。なお、ステップS87の処理では、副制御部203は、データの破棄と報知のいずれか一方のみを行うこととしても良い。
図柄表示部104やランプ制御部205等は、供給された報知信号に基づいて、主制御部201に不正が行われた可能性がある旨を報知する演出を実行する。この演出は、例えば、図柄表示部104に通常出現しないキャラクタを出現させたり、通常出現するキャラクタを通常とは異なる方法で出現させるなどである。また、図柄表示部104の輝度を変えたり、色を変えたり、ランプ制御部205に対して所定のランプを表示制御するようにしても良い。いずれにせよ、当該パチンコ遊技機1の前を通過した際に、従業員がその状態に気がつくようにしてあれば良い。また、この演出は、顧客がその状態に気がつかないような演出でも良く、また、顧客が容易に気がつく演出であっても良い。顧客が容易に気がつく演出にすれば、不正行為を効率的に抑止することができる。
また、報知信号に「大当たり中」や「確率変動中」などのパチンコ遊技機1の遊技状態に関する情報を含めても良い。これらの遊技状態に関する情報に基づいて、パチンコ遊技機1を管理するセンター制御装置などによって不正行為が行われているか否かの判断を行っても良い。例えば、大当たり中や確率変動中は入賞が集中していても正常である場合がある。よって、大当たり中や確率変動中は、その他の状態とは異なる条件で不正行為のおそれがあるか否かについて判断するのが良い。また、遊技状態に関する情報は、報知信号に含めずに別信号として出力するようにしても良い。この場合、従業員は、報知信号と遊技状態に関する情報の両方に基づいて、不正行為のおそれがあるか否かについて判断する。
次に、主制御部201、中間部202及び副制御部203がそれぞれ実行する処理の相互関係の一例について、図14及び図15に示すフローチャートを参照して説明する。制御コマンドデータ301が大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンドの制御コマンドデータである場合、主制御部201は、制御コマンドデータ301及び付随データ302をRAM201cの所定の記憶領域にセット(図14のステップS91参照)した後、ステップS92へ進む。ステップS92では、主制御部201は、制御コマンドデータ301及び付随データ302を含む通常の制御信号を生成し、中間部202に送信する。
中間部202は、ステップS92の処理で送信された通常の制御信号を受信した後(ステップS93参照)、ステップS94へ進む。ステップS94では、中間部202は、送信された通常の制御信号をそのまま副制御部203に送信する。副制御部203は、ステップS94の処理で送信された通常の制御信号を受信した後(ステップS95参照)、ステップS96へ進む。ステップS96では、副制御部203は、通常の制御信号に含まれている制御コマンドデータ301及び付随データ302に基づく処理を行う。このように、制御コマンドデータ301が大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンドの制御コマンドデータである場合には、中間部202は、認証処理を行うことなく、受信した制御コマンドデータ301及び付随データ302を含み、第1認証データ及び第2認証データを含まない通常の制御信号をそのまま副制御部203に送信し、副制御部203は、受信した通常の制御信号に含まれている制御コマンドデータ301及び付随データ302に基づく処理を行う。
一方、制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータである場合、主制御部201は、制御コマンドデータ301及び付随データ302をRAM201cの所定の記憶領域にセットした(図15のステップS101参照)後、ステップS102へ進む。ステップS102では、主制御部201は、第1認証データ303を生成した後、ステップS103へ進む。ステップS103では、主制御部201は、第2認証データ304を生成した後、ステップS104へ進む。ステップS104では、主制御部201は、制御コマンドデータ301、付随データ302、第1認証データ303及び第2認証データ304を含む認証データ付制御信号を生成し、中間部202に送信する。
一方、中間部202は、ステップS104の処理で送信された認証データ付制御信号を受信した(ステップS105参照)後、ステップS106へ進む。ステップS106では、中間部202は、認証データ付制御信号に含まれる第1認証データ303を用いて認証処理を行った後、ステップS107へ進む。ステップS107では、中間部202は、認証データ付制御信号に含まれている制御コマンドデータ301、付随データ302、第2認証データ304と、上記ステップS106の処理で得られた第1認証結果とを含む認証情報付制御信号を生成し、副制御部203に送信する。
これにより、副制御部203は、ステップS107の処理で送信された認証情報付制御信号を受信した(ステップS108参照)後、ステップS109へ進む。ステップS109では、副制御部203は、認証情報付制御信号に含まれる第2認証データを用いて認証処理を行った後、ステップS110へ進む。ステップS110では、副制御部203は、受信した第1認証結果及びステップS109の処理で得られた第2認証結果がいずれも認証に成功したことを示しているか否かを判断する。ステップS110の判断結果が「YES」の場合、すなわち、受信した第1認証結果及びステップS109の処理で得られた第2認証結果がいずれも認証に成功したことを示している場合には、副制御部203は、ステップS111へ進む。ステップS111では、副制御部203は、制御コマンドデータ301及び付随データ302に基づく処理を行う。
一方、ステップS110の判断結果が「NO」の場合、すなわち、受信した第1認証結果又はステップS84の処理で得られた第2認証結果のいずれかが認証に成功したことを示していない場合には、副制御部203は、ステップS112へ進む。ステップS112では、副制御部203は、制御コマンドデータ301及び付随データ302を破棄するとともに、不正行為を報知するための報知信号を図柄表示部104やランプ制御部205に送信する。
なお、中間部202は、第1認証データ303を用いた認証処理は、第1認証データ303を受信する度に行うのではなく、複数の第1認証データ303を受信した時点で行うこととしても良い。この場合、中間部202は、例えば、大当たり開始コマンドデータ又は大当たり終了コマンドデータ、付随データ、第1認証データ及び第2認証データを含む認証データ付制御信号を1回目に受信した場合、認証処理を行わずに、そのまま副制御部203に送信する。そして、中間部202は、大当たり開始コマンドデータ又は大当たり終了コマンドデータ、付随データ、第1認証データ及び第2認証データを含む認証データ付制御信号を2回目に受信した場合、1回目に受信した第1認証データ303を用いた認証処理を行う。このとき、中間部202は、1回目に受信した第1認証データ303と2回目に受信した第1認証データ303の両方を用いて認証処理を行っても良い。このように、複数の第1認証データ303を受信した時点で認証処理を行えば、エラーによって制御信号に余分なデータが付加されてしまった場合などに、誤って認証処理を行ってしまう危険性を低減させることができる。副制御部203における第2認証データ304を用いた認証処理についても同様である。
以上説明したように、本実施の形態1に係るパチンコ遊技機1では、大当たり開始コマンドデータ又は大当たり終了コマンドデータが送信された際、中間部202及び副制御部203において、主制御部201の正当性を認証するための第1認証データ303及び第2認証データ304を用いて2段階の認証処理を行う。このため、以下に示す不正行為を検知することができる。また、今回送信する制御コマンドデータや付随データを含めて第1認証データ303又は第2認証データ304のいずれか一方又は両方を生成することとすれば、不正な主制御部による第1認証データ303及び第2認証データ304の再利用を防止して、より確実にパチンコ遊技機1への不正行為を検知することができる。
(1)正規な主制御基板と不正な主制御基板との交換
(2)主制御基板に搭載されたCPUが実行する正規なプログラムが記憶されたROMと上記プログラムを改ざんした不正なプログラムが記憶されたROMとの交換
(3)主制御基板と周辺基板との間に不正な基板(なりすまし基板)を設けた上での上記(2)のROM交換
また、上記した不正行為に限らず、電気的な雑音や機械的な振動等に起因して、制御コマンドデータにビットエラーが発生し、制御コマンドデータが変更された場合、認証は成功しないため、上記した雑音等に起因して変更された制御コマンドデータに対応した制御コマンドの実行を防止することもできる。
また、本実施の形態1に係るパチンコ遊技機1では、主制御部201が周辺部に大当たり開始コマンドデータ又は大当たり終了コマンドデータを送信する場合に、中間部202及び副制御部203において、主制御部201の正当性を認証する認証処理を行う。大当たり開始コマンドや大当たり終了コマンドは、大当たり状態を開始又は終了させる制御コマンドであり、他の制御コマンドと比較して送信頻度が低い。したがって、制御信号中から認証データが抽出される危険性を低減することができる。また、制御信号中から認証データが抽出されても、取得できるサンプル数が少ないため、認証データが解析される危険性を低減することができる。また、認証処理を行うことによって主制御部201や周辺部の処理負荷が増大するのは、大当たり開始コマンドデータ又は大当たり終了コマンドデータが送信されている期間のみであり、主制御部201や周辺部の処理負荷が増大する割合を抑えることができる。
また、本実施の形態1に係るパチンコ遊技機1では、主制御部201から送信される制御信号に含まれる制御コマンドデータが大当たり開始コマンドデータ又は大当たり終了コマンドデータである場合、制御コマンドデータ301及び付随データ302に第1認証データ303及び第2認証データ304を付加するので、第1認証データ303又は第2認証データ304単体で送信する場合と比較して、主制御部201と周辺部との間の通信負荷の増大を抑えることができる。また、第1認証データ303及び第2認証データ304を制御信号に含めることによって、第1認証データ303又は第2認証データ304を単体で送信する場合と比較して、通信データ中から第1認証データ303又は第2認証データ304が抽出され、解析されてしまう危険性を低減することができる。
さらに、本実施の形態1に係るパチンコ遊技機1では、認証処理は、中間部202と副制御部203とで2段階に分けて実行するので、複数段階の認証処理を副制御部203のみが実行する場合と比較して、副制御部203を構成するCPU203aの処理負荷が増大する割合を抑えることができる。このため、副制御部203の処理速度が低下し、演出のための表示がスムーズに行われないなどの不都合が発生するおそれを最小限にすることができる。
さらに、認証処理は、中間部202と副制御部203とで2段階に分けて実行するので、上記した(1)〜(3)等の主制御部に対する不正行為及び雑音等に起因する遊技機の誤動作の他、中間部202に対する上記した(1)〜(3)等と同様な不正行為及び雑音等に起因する遊技機の誤動作を防止することができ、セキュリティの向上を図ることができる。
また、大当たり開始コマンド又は大当たり終了コマンドの制御コマンドデータ301にのみ第1認証データ303及び第2認証データが付加されるので、副制御部203が実行するプログラムには大当たり開始コマンド又は大当たり終了コマンドに関する認証処理を追加するだけで良い。したがって、副制御部203が実行するプログラム全体にわたる新たなタイミングの設計する必要がないので、すべての制御コマンドの制御コマンドデータ301に第1認証データ303及び第2認証データが付加される場合と比較して、認証機能を追加するタイミングの設計・機能の実装・機能の検証など、より簡単に、少ない作業工数で実現することができる。
また、認証用のプログラム及び演出用のプログラムの構成が比較的簡単となるため、他の機能と整合性を保つことが容易となる。また、パチンコ遊技機1の機種ごとに演出処理が異なる場合であっても、認証処理は共通化が可能であるため、パチンコ遊技機1の機種ごとのプログラム設計が容易であり、設計時間の短縮化を図ることができるとともに、作業効率が向上する。
さらに、第1段階の認証処理を中間部202が実行するので、認証機能の一部を切り離すことにより、認証アルゴリズムを変更する場合、複数段階の認証処理を副制御部203のみが実行する場合と比較して、より簡単に、少ない作業工数で実現することができる。また、同じ機種でも、違う認証アルゴリズムを採用することも容易に実現することができる。これにより、認証データが解析される危険性を低減することができる。
実施の形態2.
次に、本発明の実施の形態2について、図面を参照して説明する。まず、本発明の実施の形態2に係る遊技機の1つであるパチンコ遊技機のハードウェア構成については、図1及び図2に示す、本発明の実施の形態1におけるパチンコ遊技機1のハードウェア構成と同様である。しかし、主制御部201が中間部202に供給する制御信号のデータフォーマット及び中間部202が副制御部203に供給する制御信号のデータフォーマットが異なっている(図9、図10、図16及び図17参照)。この制御信号のデータフォーマットの差異に伴って、パチンコ遊技機を構成する、主制御部201による制御信号の送信処理、中間部202による制御信号の受送信処理、副制御部203による制御信号の受信処理が後述するように異なっている。概略的にいえば、本発明の実施の形態2では、上記した本発明の実施の形態1と比較して、よりセキュリティが強化されているとともに、認証データ等の送信方法や認証機能を追加するタイミングの設計・機能の実装・機能の検証などより簡単に、少ない作業工数で実現することができる。
次に、主制御部201が中間部202に供給する制御信号のデータフォーマットの一例について、図16に示す模式図を参照して説明する。まず、主制御部201が中間部202に供給する通常の制御信号のデータフォーマットは、図9(1)に示す通常の制御信号300のデータフォーマットと同様である。一方、主制御部201は、制御信号内の制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータである場合、図16(1)に示すように、制御コマンドデータ301及び付随データ302に加え、第1認証データ又は第2認証データのいずれかからなる認証データ306を含んだ認証データ付制御信号330を生成し、中間部202に供給する。ここで、第1認証データとは、上記した実施の形態1の場合と同様、中間部202において第1段階の認証を行う際に用いられる認証データである。また、第2認証データとは、上記した実施の形態1の場合と同様、副制御部203において第2段階の認証を行う際に用いられる認証データである。
なお、認証データ付制御信号は、図16(1)に示すような制御コマンドデータ301、付随データ302及び認証データ306の順で配置された認証データ付制御信号330に限らず、例えば、図16(2)に示すように、認証データ306を制御信号の先頭に設けた認証データ付制御信号331としたり、図16(3)に示すように、制御コマンドデータ301と付随データ302との間に認証データ306を挿入した認証データ付制御信号332としたりしても良い。また、制御コマンドデータ301及び付随データ302とは別個に認証データ306を出力することとしても良い。大当たり開始コマンドデータ又は大当たり終了コマンドデータを含む制御信号を送信した後、3回目の制御信号送信時に認証データ306を付加する、などとしても良い。さらに、第1認証データ及び第2認証データを生成するタイミングは、特に制限はなく、大当たり開始コマンドデータ又は大当たり終了コマンドデータが送信されるまでに生成しておけば良い。
次に、中間部202が副制御部203に供給する制御信号のデータフォーマットの一例について、図17に示す模式図を参照して説明する。まず、主制御部201から図9(1)に示す通常の制御信号300が供給された場合に中間部202が生成し、副制御部203に供給する通常の制御信号のデータフォーマットは、図10(1)に示す通常の制御信号320と同様である。
主制御部201から、例えば、図16(1)〜(3)に示す認証データ付制御信号330〜332等が供給され、かつ、認証データ306が第1認証データである場合には、中間部202は、第1認証データを用いて第1段階の認証を行い、例えば、図17(1)〜(3)の各上段に示す、第1認証結果305を含んだ認証情報付制御信号340、342又は344等を生成し、副制御部203に供給する。一方、主制御部201から、例えば、図16(1)〜(3)に示す認証データ付制御信号330〜332等が供給され、かつ、認証データ306が第2認証データである場合には、中間部202は、例えば、図17(1)〜(3)の各下段に示す、第2認証データ304を含んだ認証情報付制御信号341、343又は345等を生成し、副制御部203に供給する。なお、制御コマンドデータ301、付随データ302、第1認証結果305又は第2認証データ304の配置の順序には、図17(1)〜(3)の各上下段に示すバリエーションの他、上記した制御コマンドデータ301、付随データ302及び認証データ306の配置の順序と同様のバリエーションが考えられる。
次に、主制御部201と中間部202及び周辺部との間で行う制御信号の送受信処理について説明する。以下、主制御部201と中間部202との間の制御信号の送受信処理について、図18及び図19に示すフローチャートを参照して説明するが、主制御部201と賞球制御部204との間の制御信号の送受信処理も同様の手順で行われる。
図18は、主制御部201による制御信号の送信処理の一例を示すフローチャートである。まず、主制御部201は、現在、制御コマンドデータの送信タイミングであるか否かを判断する(図18のステップS201参照)。この判断結果が「NO」の場合には、主制御部201は、同判断を繰り返す。そして、制御コマンドデータの送信タイミングとなると、ステップS201の判断結果が「YES」となり、主制御部201は、ステップS202へ進む。
ステップS202では、主制御部201は、今回送信する制御コマンドが大当たり開始コマンド又は大当たり終了コマンドか否かを判断する。ステップS202の判断結果が「YES」の場合、すなわち、今回送信する制御コマンドが大当たり開始コマンド又は大当たり終了コマンドである場合には、主制御部201は、ステップS203へ進む。ステップS203では、主制御部201は、制御コマンドデータ301(大当たり開始コマンドデータ又は大当たり終了コマンドデータ)及び付随データ302をRAM201cの所定の記憶領域にセットした後、ステップS204へ進む。
ステップS204では、主制御部201は、第1認証データが送信済みか否かを判断する。ステップS204の判断結果が「NO」の場合、すなわち、第1認証データがまだ送信していない場合には、主制御部201は、ステップS205へ進む。ここで、第1認証データが送信済みか否かの判断は、例えば、RAM201cの所定の領域に第1認証データが送信済みであることを示すフラグが立てられているか否かを判断することによって行う。ステップS205では、主制御部201は、第1認証データを生成した後、ステップS206へ進む。第1認証データの具体例は、上記した実施の形態1における第1認証データ303と同様であるので、その説明を省略する。なお、第1認証データは、上記したプログラムコード検査値等を所定の暗号化方式で暗号化したものを用いても良い。
ステップS206では、主制御部201は、上記したステップS203及びS205のそれぞれの処理で生成した制御コマンドデータ301、付随データ302及び第1認証データ(認証データ306)を含む制御信号(認証データ付制御信号)を生成し、中間部202に送信した後、一連の処理を終了する。
一方、ステップS204の判断結果が「YES」の場合、すなわち、第1認証データが送信済みである場合には、主制御部201は、ステップS207へ進む。ステップ207では、主制御部201は、第2認証データを生成した後、ステップS206へ進む。第2認証データの具体例は、上記した実施の形態1における第2認証データ304と同様であるので、その説明を省略する。なお、第2認証データ304は、上記したプログラムコード検査値等を所定の暗号化方式で暗号化したものを用いても良い。
また、ステップS202の判断結果が「NO」の場合、すなわち、今回送信する制御コマンドが大当たり開始コマンドでも大当たり終了コマンドでもない場合には、主制御部201は、ステップS208へ進む。ステップS208では、主制御部201は、制御コマンドデータ301(大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンドの制御コマンドデータ)及び付随データ302をRAM201cの所定の記憶領域にセットした後、ステップS209へ進む。ステップS209では、主制御部201は、上記したステップS208の処理で生成した制御コマンドデータ301及び付随データ302を含み、第1認証データ及び第2認証データを含まない制御信号(通常の制御信号)を生成し、中間部202に送信した後、一連の処理を終了する。
このように、主制御部201は、中間部202に大当たり開始コマンドデータ又は大当たり終了コマンドデータを送信する場合のみ、制御コマンドデータ301に第1認証データ又は第2認証データを付加する。認証処理が行われるのは大当たり開始コマンドデータ又は大当たり終了コマンドデータの送信時のみであるので、主制御部201の処理負荷が認証処理によって増大する割合を抑えることができる。
次に、中間部202による制御信号の受送信処理について説明する。図19は、中間部202による制御信号の受送信処理の一例を示すフローチャートである。まず、中間部202は、主制御部201から送信された制御信号を受信したか否かを判断する(図19のステップS221参照)。この判断結果が「NO」の場合には、中間部202は、同判断を繰り返す。そして、主制御部201から送信された制御信号を受信すると、ステップS221の判断結果が「YES」となり、中間部202は、ステップS222へ進む。
ステップS222では、中間部202は、受信した制御信号に認証データ306が含まれているか否かを判断する。ステップS222の判断結果が「YES」の場合、すなわち、受信した制御信号に認証データ306が含まれている場合には、中間部202は、ステップS223へ進む。ここで、制御信号に認証データ306が含まれているか否かの判断は、例えば、制御信号のデータ量が通常の制御信号よりも多いか否かや、制御信号において認証データ306が含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS223では、中間部202は、受信した制御信号に第1認証データが含まれているか否かを判断する。ステップS223の判断結果が「YES」の場合、すなわち、受信した制御信号に第1認証データが含まれている場合には、中間部202は、ステップS224へ進む。ここで、制御信号に第1認証データが含まれているか否かの判断は、例えば、制御信号において第1認証データが含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS224では、中間部202は、制御信号から第1認証データを抽出し、第1認証データの期待値をROM202b等から取得した後、ステップS225へ進む。ステップS225では、中間部202は、第1段階の認証処理を行った後、ステップS226へ進む。第1段階の認証処理における手法は、上記した実施の形態1における第1段階の認証処理の手法と同様であるので、その説明を省略する。また、中間部202が照合に用いる期待値の獲得方法については、上記した実施の形態1における中間部202による期待値の獲得方法と同様であるので、その説明を省略する。なお、第1認証データが暗号化されている場合には、中間部202は、上記した認証処理の前に、第1認証データの復号化を行う。
また、ステップS222の処理において、中間部202は、受信した制御信号に認証データが含まれているか否かを判断するのではなく、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであるか否かを判断しても良い。このようにした場合、中間部202は、制御信号に含まれる制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであると判断した場合には、制御信号から第1認証データを抽出し、第1認証データの期待値をROM202b等から取得して(ステップS224)、制御信号に含まれている第1認証データと期待値とが一致するか否かを判断(ステップS225)すれば良い。
ステップS226では、中間部202は、制御信号に含まれている制御コマンドデータ301、付随データ302と、上記したステップS225の処理で得られた認証結果(第1認証結果)とを含む制御信号(認証情報付制御信号)を生成し、副制御部203に送信した後、一連の処理を終了する。この場合、ステップS225又はS226の処理において、中間部202は、上記した第1認証結果を暗号化した後、副制御部203に送信しても良い。
一方、ステップS223の判断結果が「NO」の場合、すなわち、受信した制御信号に第1認証データではなく、第2認証データが含まれている場合には、中間部202は、ステップS227へ進む。ステップS227では、中間部202は、制御信号に含まれている制御コマンドデータ301、付随データ302、第2認証データとを含む制御信号をそのまま認証情報付制御信号として副制御部203に送信した後、一連の処理を終了する。この場合、ステップS227の処理において、中間部202は、第2認証データを暗号化した後、副制御部203に送信しても良い。
また、ステップS222の判断結果が「NO」の場合、すなわち、受信した制御信号に認証データ306が含まれていない場合、すなわち、通常の制御信号である場合には、中間部202は、ステップS228へ進む。ステップS228では、中間部202は、送信された通常の制御信号をそのまま副制御部203に送信した後、一連の処理を終了する。
次に、副制御部203による制御信号の受信処理について説明する。図20は、副制御部203による制御信号の受信処理の一例を示すフローチャートである。まず、副制御部203は、中間部202から送信された制御信号を受信したか否かを判断する(図20のステップS241参照)。この判断結果が「NO」の場合には、副制御部203は、同判断を繰り返す。そして、中間部202から送信された制御信号を受信すると、ステップS241の判断結果が「YES」となり、副制御部203は、ステップS242へ進む。
ステップS242では、副制御部203は、受信した制御信号に第1認証結果305が含まれているか否かを判断する。ステップS242の判断結果が「YES」の場合、すなわち、受信した制御信号に第1認証結果305が含まれている場合には、副制御部203は、ステップS243へ進む。ここで、制御信号に第1認証結果305が含まれているか否かの判断は、例えば、制御信号のデータ量が通常の制御信号よりも多いか否かや、制御信号において第1認証結果305が含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS243では、副制御部203は、受信した第1認証結果305が認証に成功したことを示しているか否かを判断する。ステップS243の判断結果が「YES」の場合、すなわち、受信した第1認証結果305が認証に成功したことを示している場合には、副制御部203は、ステップS244へ進む。なお、第1認証結果305が暗号化されている場合には、副制御部203は、上記したステップS242又はS243の処理において第1認証結果305の復号化を行う。
ステップS244では、副制御部203は、制御コマンドデータ301及び付随データ302に基づく処理を行った後、一連の処理を終了する。一方、ステップS243の判断結果が「NO」の場合、すなわち、受信した第1認証結果305が認証に成功したことを示していない場合には、副制御部203は、ステップS245へ進む。ステップS245では、副制御部203は、制御コマンドデータ301及び付随データ302を破棄するとともに、不正行為を報知するための報知信号を図柄表示部104やランプ制御部205、あるいはパチンコ遊技機1を管理するセンター制御装置などに送信した後、一連の処理を終了する。なお、ステップS245の処理では、副制御部203は、データの破棄と報知のいずれか一方のみを行うこととしても良い。なお、不正行為を報知する手法については、上記した実施の形態1における不正行為の報知手法と同様であるので、その説明を省略する。
一方、ステップS242の判断結果が「NO」の場合、すなわち、受信した制御信号に第1認証結果305が含まれていない場合には、副制御部203は、ステップS246へ進む。ステップS246では、副制御部203は、受信した制御信号に第2認証データ304が含まれているか否かを判断する。ステップS246の判断結果が「YES」の場合、すなわち、受信した制御信号に第2認証データ304が含まれている場合には、副制御部203は、ステップS247へ進む。ここで、制御信号に第2認証データ304が含まれているか否かの判断は、例えば、制御信号において第2認証データ304が含まれていることを示すフラグが立てられているか否かを判断することによって行う。
ステップS247では、副制御部203は、制御信号から第2認証データ304を抽出し、第2認証データ304の期待値をROM203b等から取得した後、ステップS248へ進む。ステップS248では、副制御部203は、第2段階の認証処理を行った後、ステップS249へ進む。第2段階の認証処理における手法は、上記した実施の形態1における第2段階の認証処理の手法と同様であるので、その説明を省略する。また、副制御部203が照合に用いる期待値の獲得方法については、上記した実施の形態1における副制御部203による期待値の獲得方法と同様であるので、その説明を省略する。なお、第2認証データが暗号化されている場合には、副制御部203は、上記した認証処理の前に、第2認証データの復号化を行う。
ステップS249では、副制御部203は、ステップS248の処理で得られた第2認証結果が認証に成功したことを示しているか否かを判断する。ステップS249の判断結果が「YES」の場合、すなわち、ステップS248の処理で得られた第2認証結果が認証に成功したことを示している場合には、副制御部203は、ステップS244へ進む。また、ステップS246の判断結果が「NO」の場合、すなわち、受信した制御信号に第1認証結果305及び第2認証データ304のいずれも含まれていない場合、つまり、通常の制御信号である場合にも、副制御部203は、ステップS244へ進む。一方、ステップS249の判断結果が「NO」の場合、すなわち、ステップS248の処理で得られた第2認証結果が認証に成功したことを示していない場合には、副制御部203は、ステップS245へ進む。
なお、ステップS249の処理では、副制御部203は、受信した第1認証結果305及びステップS248の処理で得られた第2認証結果のいずれもが認証に成功したことを示しているか否かを判断しても良い。そして、ステップS249の判断結果が「YES」の場合、すなわち、受信した第1認証結果305及びステップS248の処理で得られた第2認証結果のいずれもが認証に成功したことを示している場合には、副制御部203は、ステップS244へ進み、ステップS249の判断結果が「NO」の場合、すなわち、受信した第1認証結果305又はステップS248の処理で得られた第2認証結果のいずれか一方が認証に成功したことを示していない場合には、副制御部203は、ステップS245へ進むように構成すれば良い。
次に、主制御部201、中間部202及び副制御部203がそれぞれ実行する処理の相互関係の一例について、図21及び図22に示すフローチャートを参照して説明する。まず、制御コマンドデータ301が大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンドの制御コマンドデータである場合における、主制御部201、中間部202及び副制御部203がそれぞれ実行する処理の相互関係は、上記した実施の形態1の制御コマンドデータ301が大当たり開始コマンド及び大当たり終了コマンド以外の制御コマンドの制御コマンドデータである場合における、主制御部201、中間部202及び副制御部203がそれぞれ実行する処理の相互関係と同様であるので、その説明を省略する。
制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであって、この制御コマンドデータ301、付随データ302及び第1認証データを含む認証データ付制御信号を送信する場合、主制御部201は、制御コマンドデータ301及び付随データ302をRAM201cの所定の記憶領域にセットした(図21のステップS261参照)後、ステップS262へ進む。ステップS262では、主制御部201は、第1認証データを生成した後、ステップS263へ進む。ステップS263では、主制御部201は、制御コマンドデータ301、付随データ302及び第1認証データ(認証データ306)を含む認証データ付制御信号を生成し、中間部202に送信する。
一方、中間部202は、ステップS263の処理で送信された認証データ付制御信号を受信した(ステップS264参照)後、ステップS265へ進む。ステップS265では、中間部202は、認証データ付制御信号に含まれる第1認証データを用いて第1段階の認証処理を行った後、ステップS266へ進む。ステップS266では、中間部202は、認証データ付制御信号に含まれている制御コマンドデータ301、付随データ302と、上記ステップS265の処理で得られた第1認証結果305とを含む認証情報付制御信号を生成し、副制御部203に送信する。
これにより、副制御部203は、ステップS266の処理で送信された認証情報付制御信号を受信した(ステップS267参照)後、ステップS268へ進む。ステップS268では、副制御部203は、受信した第1認証結果305が認証に成功したことを示しているか否かを判断する。ステップS268の判断結果が「YES」の場合、すなわち、受信した第1認証結果305が認証に成功したことを示している場合には、副制御部203は、ステップS269へ進む。ステップS269では、副制御部203は、制御コマンドデータ301及び付随データ302に基づく処理を行う。
一方、ステップS268の判断結果が「NO」の場合、すなわち、受信した第1認証結果305が認証に成功したことを示していない場合には、副制御部203は、ステップS270へ進む。ステップS270では、副制御部203は、制御コマンドデータ301及び付随データ302を破棄するとともに、不正行為を報知するための報知信号を図柄表示部104やランプ制御部205に送信する。
次に、制御コマンドデータ301が大当たり開始コマンドデータ又は大当たり終了コマンドデータであって、この制御コマンドデータ301、付随データ302及び第2認証データを含む認証データ付制御信号を送信する場合、主制御部201は、制御コマンドデータ301及び付随データ302をRAM201cの所定の記憶領域にセットした(図22のステップS271参照)後、ステップS272へ進む。ステップS272では、主制御部201は、第2認証データを生成した後、ステップS273へ進む。ステップS273では、主制御部201は、制御コマンドデータ301、付随データ302及び第2認証データ(認証データ306)を含む認証データ付制御信号を生成し、中間部202に送信する。
一方、中間部202は、ステップS273の処理で送信された認証データ付制御信号を受信した(ステップS274参照)後、ステップS275へ進む。ステップS275では、中間部202は、認証データ付制御信号をそのまま認証情報付制御信号として副制御部203に送信する。
これにより、副制御部203は、ステップS275の処理で送信された認証情報付制御信号を受信した(ステップS276参照)後、ステップS277へ進む。ステップS277では、副制御部203は、受信した認証情報付制御信号に含まれる第2認証データを用いて認証処理を行った後、ステップS278へ進む。ステップS278では、副制御部203は、ステップS277の処理で得られた第2認証結果が認証に成功したことを示しているか否かを判断する。ステップS278の判断結果が「YES」の場合、すなわち、ステップS277の処理で得られた第2認証結果が認証に成功したことを示している場合には、副制御部203は、ステップS279へ進む。ステップS279では、副制御部203は、制御コマンドデータ301及び付随データ302に基づく処理を行う。
一方、ステップS278の判断結果が「NO」の場合、すなわち、ステップS278の処理で得られた第2認証結果が認証に成功したことを示していない場合には、副制御部203は、ステップS280へ進む。ステップS280では、副制御部203は、制御コマンドデータ301及び付随データ302を破棄するとともに、不正行為を報知するための報知信号を図柄表示部104やランプ制御部205に送信する。
なお、中間部202は、第1認証データを用いた認証処理は、第1認証データを受信する度に行うのではなく、複数の第1認証データを受信した時点で行うこととしても良い。この場合、中間部202は、大当たり開始コマンドデータ又は大当たり終了コマンドデータ、付随データ及び第1認証データを含む認証データ付制御信号を1回目に受信した場合、認証処理を行わない。そして、中間部202は、大当たり開始コマンドデータ又は大当たり終了コマンドデータ、付随データ及び第1認証データを含む認証データ付制御信号を2回目に受信した場合、1回目に受信した第1認証データを用いた認証処理を行う。このとき、中間部202は、1回目に受信した第1認証データと2回目に受信した第1認証データの両方を用いて認証処理を行っても良い。このように、複数の第1認証データを受信した時点で認証処理を行えば、エラーによって制御信号に余分なデータが付加されてしまった場合などに、誤って認証処理を行ってしまう危険性を低減させることができる。副制御部203における第2認証データを用いた認証処理についても同様である。
また、主制御部201は、第1認証データと第2認証データを交互に送信するのではなく、第1認証データを複数回送信した後、第2認証データを送信しても良い。この場合、中間部202は、1回ごとに送信される第1認証データ又は複数回送信される複数の第1認証データを用いて第1段階の認証処理を行い、第1認証結果を含む認証情報付制御信号を副制御部203に送信する。これにより、副制御部203は、1回ごとに送信される第1認証結果、複数回送信される複数の第1認証結果、あるいは1個又は複数個の第1認証結果及び内部で行われた第2段階の認証により得られた第2認証結果に基づいて認証が成功したか否か判断する。このように処理すれば、セキュリティの強化を図ることができる。
以上説明したように、本実施の形態2に係るパチンコ遊技機では、大当たり開始コマンドデータ又は大当たり終了コマンドデータが送信された際、中間部202及び副制御部203において、主制御部201の正当性を認証するための第1認証データ及び第2認証データを用いて2段階の認証処理を行う。このため、上記した実施の形態1の場合と同様の効果を得ることができる。
また、本実施の形態2に係るパチンコ遊技機では、第1認証データ及び第2認証データは、2回に分けて主制御部201から中間部202に送信されるので、上記した実施の形態1と比較して、不正行為者にすべての認証データを把握されることを抑止することができる。さらに、上記した実施の形態1と比較して、第1認証データ及び第2認証データの送信方法及び認証機能を追加するタイミングの設計・機能の実装・機能の検証など、より簡単に、少ない作業工数で実現することができる。
以上、本発明の実施の形態について図面を参照して詳述してきたが、具体的な構成はこれらの実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計の変更等があっても本発明に含まれる。
例えば、上述の各実施の形態では、主制御部201と副制御部203との間に中間部202を設ける例を示したが、これに限定されず、主制御部210と賞球制御部204との間に中間部を設けても良い。この場合、賞球制御部204は報知手段を備えていないが、主制御部210と賞球制御部204との間は双方向通信が可能であるので、認証が不成功となった場合には、賞球制御部204から主制御部201に対して、制御コマンドデータ及び付随データとともに認証が不成功となった旨のデータを送信するように構成しても良い。そして、主制御部201は、上記不成功となった旨のデータを中間部202を介して副制御部203に送信し、副制御部203において、上記不成功となった旨のデータに基づいて、不正行為が行われたことを報知させる。
また、上述の各実施の形態では、中間部202が主制御部201を第1段階で認証し、副制御部203が主制御部201を第2段階で認証する例を示したが、これに限定されず、中間部202が主制御部201を第1段階、第2段階あるいはそれ以上の段階で認証し、副制御部203が主制御部201を第3段階以降で認証するように構成しても良い。
また、上述の各実施の形態では、本発明をパチンコ遊技機1に適用する例を示したが、これに限定されず、本発明は、雀球遊技機、アレンジボール等のパチンコ遊技機以外の弾球遊技機、スロットマシン等の回胴式遊技機などの他の遊技機にも適用することができる。これらの遊技機においても、上述の各実施の形態と同様に構成することにより、上述の各実施の形態と同様の効果を得ることができる。
また、上述の各実施の形態は、その目的及び構成等に特に矛盾や問題がない限り、互いの技術を流用することができる。