以下、本発明をその一種であるパチンコ遊技機(以下、「パチンコ機」と示す)に具体化した第一実施形態を図1〜図8に基づき説明する。
図1には、パチンコ機10の機表側が略示されており、機体の外郭をなす外枠11の開口前面側には、各種の遊技用構成部材をセットする縦長方形の中枠12が開閉及び着脱自在に組み付けられている。また、中枠12の前面側には、機内部に配置された遊技盤13を透視保護するためのガラス枠を備えた前枠14と上球皿15が共に横開き状態で開閉可能に組み付けられている。また、前枠14の前面側及び遊技盤13の遊技領域13aには、点灯(点滅)又は消灯し、発光装飾に基づく発光演出を行う演出実行手段としての装飾ランプ40が設けられている。また、上球皿15の前面側には、各種音声(効果音)を出力し、音声出力に基づく音声演出を行う演出実行手段としてのスピーカ41が設けられている。中枠12の下部には、下球皿16及び発射装置17が装着されている。
遊技盤13の遊技領域13aの略中央には、液晶ディスプレイ型の可変表示器Hを備えた演出実行手段としての表示装置18が配設されている。表示装置18の可変表示器Hでは、変動画像(又は画像表示)に基づく遊技演出(表示演出)が行われるようになっている。そして、表示装置18の可変表示器Hでは、複数種類の図柄を複数列で変動させて表示する図柄組み合わせゲーム(図柄変動ゲーム)が行われるようになっている。本実施形態では、図柄組み合わせゲームで3列の図柄による組み合わせを導出し、該組み合わせを形成する各列の図柄の種類を1〜8の8種類としている。
そして、遊技者は、図柄組み合わせゲームにおいて最終的に表示された図柄組み合わせから大当り又ははずれを認識できる。可変表示器Hに表示された全列の図柄が同一種類の場合には、その図柄組み合わせ([222][777]など)から大当りを認識できる。この大当りを認識できる図柄組み合わせが大当りの図柄組み合わせとなる。大当りの図柄組み合わせが表示されると、遊技者には、大当り遊技状態が付与される。一方、表示装置18の可変表示器Hに表示された全列の図柄が同一種類でない場合には、その図柄組み合わせ([123][122][767]など)からはずれを認識できる。このはずれを認識できる図柄組み合わせがはずれの図柄組み合わせとなる。
また、表示装置18の下方には、図示しないアクチュエータ(ソレノイド、モータなど)の作動により開閉動作を行う開閉羽根を備えた始動入賞手段としての始動入賞口19が配設されている。始動入賞口19の奥方には、入賞した遊技球を検知する入賞検知センサSE(図2に示す)が設けられている。始動入賞口19は、遊技球の入賞検知を契機に、図柄組み合わせゲームの始動条件を付与し得る。また、始動入賞口19の下方には、図示しないアクチュエータ(ソレノイド、モータなど)の作動により開閉動作を行う大入賞口扉を備えた大入賞口20が配設されている。そして、大当り遊技状態が付与されると、大入賞口扉の開動作によって大入賞口20が開放されて遊技球が入賞可能となるため、遊技者は、多数の賞球が獲得できるチャンスを得ることができる。
次に、パチンコ機10の制御構成を図2に基づき説明する。
パチンコ機10の機裏側には、遊技場の電源(例えば、AC24V)を、パチンコ機10を構成する各種構成部材に供給する電源基板21が装着されている。また、パチンコ機10の機裏側には、パチンコ機10全体を制御する主制御基板22が装着されている。主制御基板22は、パチンコ機10全体を制御するための各種処理を実行し、該処理結果に応じて遊技を制御するための各種の制御信号(制御コマンド)を演算処理し、該制御信号(制御コマンド)を出力する。また、機裏側には、演出制御手段としてのサブ制御基板23が装着されている。サブ制御基板23は、主制御基板22が出力した制御信号(制御コマンド)に基づき、表示装置18の可変表示器Hの表示態様(図柄、背景、文字などの表示画像)、装飾ランプ40の発光態様(点灯(点滅)/消灯のタイミングなど)、及びスピーカ41の音声出力態様(音声出力のタイミングなど)を制御する。なお、主制御基板22は、主制御基板22自体に不正基板を装着できないようにするために、ケースカバーに収容されて機裏側に装着されている。
以下、電源基板21、主制御基板22、サブ制御基板23の具体的な構成を説明する。
電源基板21には、遊技場の電源をパチンコ機10への供給電圧として電源電圧V1(例えば、DC30V)に変換処理する電源回路24が設けられている。電源回路24には、主制御基板22及びサブ制御基板23が接続されている。そして、電源回路24は、変換処理された後の電源電圧V1を主制御基板22及びサブ制御基板23に対応する供給すべき所定の電源電圧V2,V3にさらに変換処理し、変換後の電源電圧V2,V3を主制御基板22及びサブ制御基板23に供給するようになっている。
また、電源基板21には、電源断監視回路25が設けられており、電源断監視回路25が電源回路24に接続されている。電源断監視回路25は、電源回路24から供給される電源電圧V1の電圧値を監視するようになっている。すなわち、電源断監視回路25は、電源電圧V1が所定の電圧V(例えば、DC20V)に降下したか否かを判定している。なお、この電圧Vは、遊技に支障をきたすことなくパチンコ機10を動作させるために最低限必要な電圧とされる。ここで、電源電圧V1が電圧Vに降下するのは、例えば、電源断(電源OFF)時や停電時の場合である。この場合、パチンコ機10に電源が供給されなくなってしまうため、電源電圧V1から電圧Vに降下する。これとは逆に、電源投入(電源ON)時や復電(復旧電源)時の場合は、パチンコ機10に電源が供給されるので、電圧が上昇して電源電圧V1となる。
また、電源基板21には、リセット信号回路26が設けられており、リセット信号回路26は電源断監視回路25に接続されている。電源断監視回路25は、その判定結果が肯定(即ち、電源電圧V1≦電圧V)である場合に、主制御基板22及びリセット信号回路26に対して電源電圧V1が電圧Vに降下したことを示す電源断信号Sを出力するようになっている。また、リセット信号回路26は、電源供給の開始時(電源投入時或いは復電時)又は電源断信号Sの入力時に、主制御基板22及びサブ制御基板23に対してリセット信号Reを出力し、主制御基板22及びサブ制御基板23の動作を規制するようになっている。このリセット信号Reは、その信号レベルとしてハイレベル状態とローレベル状態を示す2値信号となっている。なお、本実施形態では、リセット信号Reを入力(出力)する場合には、リセット信号Reの信号レベルをハイレベル状態にし、リセット信号Reの入力(出力)を停止する場合には、リセット信号Reの信号レベルをローレベル状態にすることとしている。また、リセット信号回路26は、リセット信号Reのハイレベル状態を一定の時間T1(例えば、400ms〜1800ms程度)の間継続した後、リセット信号Reの出力状態をハイレベル状態からローレベル状態に遷移させるようになっている。
また、電源基板21は、例えば、電気二重層コンデンサからなるバックアップ用電源(図示略)を備えている。そして、バックアップ用電源は、電源回路24に接続されており、該電源回路24から電源電圧が当該バックアップ用電源に供給されるようになっている。また、電源基板21は、主制御基板22(RAM22c)に記憶保持され、パチンコ機10の動作中に適宜書き換えられる各種制御情報(記憶内容)を消去したい場合に操作されるRAMクリアスイッチ36を備えている。そして、RAMクリアスイッチ36には、該RAMクリアスイッチ36の操作を受けて、記憶保持された記憶内容の消去(初期化処理)を指示する初期化指示信号を、主制御基板22に出力するためのRAMクリアスイッチ回路37が接続されている。本実施形態では、RAMクリアスイッチ36は、遊技店の店員のみの操作が許容されるように機裏側に設けられており、該RAMクリアスイッチ36を操作すると、RAMクリアスイッチ回路37から初期化指示信号が出力されるようになっている。そして、該RAMクリアスイッチ36を操作しながら(操作と同時に)電源を投入すると、RAMクリアスイッチ回路37から初期化指示信号が出力されて、初期化処理が実行されるようになっている。従って、本実施形態のRAMクリアスイッチ36とRAMクリアスイッチ回路37は、遊技機の電源投入時に初期化処理の実行を指示する初期化指示手段となる。
次に、主制御基板22の構成を説明する。
主制御基板22には、制御装置としてのメインCPU22aと、ROM22bと、記憶手段としてのRAM22cとが設けられている。メインCPU22aには、ROM22bと、RAM22cと、入賞検知センサSEが接続されている。メインCPU22aは、起動後、大当り判定に使用する大当り判定用乱数などの各種乱数の値を所定の周期(例えば、4ms)毎に順次更新し、更新後の値をRAM22cの設定領域に設定して更新前の値を書き換えている。ROM22bには、パチンコ機10を制御するための各種制御プログラム(メイン制御プログラム、割込み処理プログラム、電源断処理プログラムなど)や、複数種類の変動パターンなどが記憶されている。RAM22cには、パチンコ機10の動作中に適宜書き換えられる各種の情報(大当り判定用乱数の値など)が記憶(設定)されるようになっている。なお、本実施形態のメインCPU22aには、外部クロック信号を生成し、出力する外部発振回路70が接続されており、当該外部発振回路70が出力する外部クロック信号の周期に基づき、各種乱数を更新するようになっている。
前記変動パターンは、図柄が変動を開始(図柄組み合わせゲームの開始)してから全列の図柄が表示(図柄組み合わせゲームの終了)される迄の間の遊技演出(表示演出、発光演出、音声演出)のベースとなるパターンを示すものである。また、複数種類の変動パターンは、大当り演出用の変動パターンと、はずれ演出用の変動パターンとに分類されている。大当り演出は、図柄組み合わせゲームが、最終的に大当りの図柄組み合わせを表示するように展開される演出である。はずれ演出は、図柄組み合わせゲームが、最終的にはずれの図柄組み合わせを表示するように展開される演出である。
また、前記大当り判定用乱数は、予め定められた数値範囲内(例えば、「0」〜「630」の全631通りの整数)の数値を取り得るように、メインCPU22aが所定の周期毎(4ms毎)に数値を1加算して更新するようになっている。そして、メインCPU22aは、更新後の値を大当り判定用乱数の値としてRAM22cに記憶し、既に記憶されている大当り判定用乱数の値を書き換えることで大当り判定用乱数の値を順次更新するようになっている。より詳しく言えば、メインCPU22aは、更新を開始する際の値(初期値)を最小値である「0」とし、該初期値から順に「0」→「1」→…→「629」→「630」というように数値を1加算して更新するようになっている。そして、メインCPU22aは、大当り判定用乱数の値として更新された数値が最後に更新される数値(終期値)である「630(最大値)」に達すると、再び「0」〜「630」までの数値を1加算して更新するようになっている。即ち、本実施形態のパチンコ機10では、大当り判定用乱数の値を「0」〜「630」に更新するまでを大当り判定用乱数の1周期として大当り判定用乱数の値を順次更新し、この1周期の更新処理をパチンコ機10の動作中、繰り返し実行するようになっている。
RAM22cは、電源基板21のバックアップ用電源が接続されており、電源電圧V1(電源)の遮断時(電圧Vへの降下時)において、バックアップ用電源から供給された電源電圧VB(例えば、DC5V)に基づき各種制御情報を記憶保持可能に構成されている。これにより、電源遮断時における遊技状態(遊技内容)をバックアップすることが可能となる。
また、主制御基板22には、リセット入力回路(遅延手段)22dが設けられている。リセット入力回路22dは、電源基板21のリセット信号回路26に接続されており、該リセット信号回路26が出力したリセット信号Reを入力するようになっている。そして、リセット入力回路22dは、入力したリセット信号ReをメインCPU22a側に出力するようになっている。このとき、リセット入力回路22dは、リセット信号回路26からのリセット信号Reの入力状態がハイレベル状態を継続する時間T1に、予め決められた遅延時間T2を加えた時間T1+T2の間、メインCPU22aに対するリセット信号Reの出力状態をハイレベル状態とするようになっている。そして、リセット入力回路22dは、時間T1+T2の経過後、リセット信号Reの出力状態をハイレベル状態からローレベル状態に遷移させるようになっている。なお、このリセット信号Reがハイレベル状態からローレベル状態に遷移すると、メインCPU22aは、起動を開始するようになっている。即ち、メインCPU22aは、リセット信号の信号レベルがハイレベル状態となっている間、動作(制御処理)の実行が規制されるようになっている。従って、本実施形態では、リセット信号Reが起動指示信号となる。
このリセット入力回路22dは、後述する指示回路Iを介してメインCPU22aと接続されており、当該指示回路Iを介してメインCPU22aにリセット信号Reを出力するようになっている。この指示回路Iは、リセット入力回路22dから入力したリセット信号Reの入力状態がローレベル状態からハイレベル状態に遷移した場合、ランダムな遅延時間の間、メインCPU22aに出力するリセット信号Reの出力状態をローレベル状態で維持する。そして、指示回路Iは、当該遅延時間の経過後、メインCPU22aに出力するリセット信号Reの出力状態をローレベル状態からハイレベル状態に遷移させる。同様に、指示回路Iは、リセット入力回路22dから入力したリセット信号Reの入力状態がハイレベル状態からローレベル状態に遷移した場合、ランダムな遅延時間の間、メインCPU22aに出力するリセット信号Reの出力状態をハイレベル状態で維持する。そして、指示回路Iは、当該遅延時間の経過後、メインCPU22aに出力するリセット信号Reの出力状態をハイレベル状態からローレベル状態に遷移させる。
また、主制御基板22には、遊技開始信号生成回路22eが設けられている。遊技開始信号生成回路22eは、図示しないD−フリップフロップ(D−FF)を介してメインCPU22aが出力する遊技可能状態信号K1を入力可能に接続されている。また、遊技開始信号生成回路22eは、メインCPU22aに対して遊技開始信号K2を出力可能に接続されている。遊技開始信号生成回路22eは、遊技可能状態信号K1の入力状態がローレベル状態からハイレベル状態に遷移した場合、ランダムな遅延時間の間、遊技開始信号K2の出力状態をローレベル状態で維持する。そして、遊技開始信号生成回路22eは、当該遅延時間の経過後、遊技開始信号K2の出力状態をローレベル状態からハイレベル状態に遷移させる。遊技開始信号生成回路22eは、遊技可能状態信号K1の入力状態がハイレベル状態からローレベル状態に遷移した場合、ランダムな遅延時間の間、遊技開始信号K2の出力状態をハイレベル状態で維持する。そして、遊技開始信号生成回路22eは、当該遅延時間の経過後、遊技開始信号K2の出力状態をハイレベル状態からローレベル状態に遷移させる。
なお、メインCPU22aは、起動して初期化処理を終了し、少なくとも大当り判定用乱数の更新を開始して、タイマ割込み処理を繰り返し実行して、遊技が可能となった状態となったとき、遊技可能状態信号K1の出力状態をローレベル状態からハイレベル状態に遷移するようになっている。また、遊技開始信号K2がローレベル状態からハイレベル状態に遷移すると、メインCPU22aは、サブ制御基板23に対して制御信号の出力を開始するようになっている。
次に、主制御基板22のメインCPU22aが実行する各種処理について説明する。
まず、電源断処理プログラムに基づく処理について説明する。主制御基板22(メインCPU22a)は、電源断監視回路25から電源断信号Sを入力すると、電源断処理プログラムに基づき、バックアップ処理を実行する。即ち、メインCPU22aは、電源断信号Sの入力を契機に電源断処理プログラムを実行し、電源断信号Sを入力していない場合には電源断処理プログラムを実行しない(バックアップ処理を実行しない)。バックアップ処理にてメインCPU22aは、RAM22cに記憶保持されている大当り判定用乱数の値などの各種制御情報に加えて、レジスタ及びスタックポインタなどの制御情報をRAM22cに記憶保持させる。また、メインCPU22aは、RAM22cのチェックサムを算出して保存する。また、メインCPU22aは、RAM22cにバックアップフラグ(電源投入時にRAM22cに記憶保持されている制御情報が正しいか否かを判定するためのフラグ)を設定する。その後、メインCPU22aは、RAM22cへのアクセスを禁止し、リセット入力回路22d(リセット信号回路26)から出力されたリセット信号Reが入力される(ハイレベル状態になる)まで待機する。そして、リセット信号Reを入力すると、メインCPU22aの動作は規制される。電源断後は、電源基板21のバックアップ用電源(コンデンサ)からRAM22cへ電源が供給され、電源断時におけるRAM22cの記憶内容がバックアップデータとして保持される。
次に、メイン制御プログラムに基づく電源投入時のメイン処理について説明する。
主制御基板22のリセット入力回路22dは、電源供給の開始に伴いリセット信号回路26から出力されたリセット信号Reを入力すると、メインCPU22aに対して所定の規制時間の間、リセット信号Reを継続出力する(ハイレベル状態に維持する)。そして、リセット入力回路22dからのリセット信号Reの出力が停止され(ローレベル状態に遷移され)、メインCPU22aへのリセット信号Reの入力が停止すると(ローレベル状態に遷移すると)、メインCPU22aは起動し、メイン制御プログラムに基づくメイン処理(図3参照)を実行する。
メインCPU22aは、メイン制御プログラムに基づき、まず、タイマ割込み処理の割込みを禁止するとともに(ステップMA1)、CPU内蔵のRAMのアクセスを許可し(ステップMA2)、さらにCPU周辺デバイスとウオッチドッグタイマの初期設定を行い(ステップMA3,MA4)、電源投入時に必要な各種設定を行う。次に、メインCPU22aは、RAMクリアスイッチ36がオンされているか否かを確認する(ステップMA5)。すなわち、メインCPU22aは、RAM22cに記憶保持された各種制御情報(大当り判定用乱数の値、バックアップフラグなど)の消去を指示する初期化指示信号を入力したか否かを判定する。なお、メインCPU22aは、RAMクリアスイッチ36がオンされているか否かの確認を電源投入時にしか行わない。
ステップMA5の判定結果が否定の場合、メインCPU22aは、パチンコ機10の電源断時にRAM22cに設定されるバックアップフラグを確認し、該バックアップフラグが正常か否かを判定する(ステップMA6)。すなわち、正常にバックアップの処理が行われているか否かを判定する。そして、メインCPU22aは、ステップMA6の判定結果が肯定の場合にはステップMA7に移行し、ステップMA6の判定結果が否定の場合にはステップMA16に移行する。
ステップMA7に移行したメインCPU22aは、RAM22cのチェックサムを算出し、続いてステップMA7で算出したチェックサムが電源断時に算出したチェックサムの値と一致するか否かを判定する(ステップMA8)。このように、ステップMA6及びステップMA8の処理により、メインCPU22aは、RAM22cに記憶保持された制御情報(記憶内容)があるか否か、また記憶保持された制御情報がある場合には記憶保持された制御情報に異常があるか否かを判定する。そして、これらの判定結果が肯定、即ち、RAM22cに記憶保持された制御情報に異常がある場合、メインCPU22aはステップMA16に移行してRAM22cを初期化する。
なお、ステップMA6又はステップMA8の判定結果が肯定となる場合としては、電源断時に電源断処理プログラムを実行したものの、バックアップ処理が正常に行われなかった場合やバックアップ処理後にノイズ等によって、記憶内容に異常が発生した場合がある。このような場合にはバックアップフラグやチェックサムが異常(異常値)を示すことになる。また、電源が遮断されていない時(電源断信号Sを入力せず)に、メインCPU22aがリセット信号Reを入力し、メイン制御プログラムを最初から実行した場合(即ち、メインCPU22aが再起動した場合)がある。この場合にはバックアップ処理を実行していないことから、バックアップフラグは設定されない。メインCPU22aが再起動する要因としては、電源基板21のリセット信号回路26の誤動作か、又はリセット信号Reと同様の機能(役割)を果たす類似の信号(以下、この信号を「不正リセット信号Re1」と示す)が不正に取り付けられた不正基板から出力されたことが考えられる。従って、本実施形態では、不正リセット信号Re1は、起動指示信号となる。
メイン制御プログラムの説明に戻り、メインCPU22aは、ステップMA8の判定結果が肯定の場合にはステップMA9に移行し、ステップMA8の判定結果が否定の場合にはステップMA16に移行する。メインCPU22aは、ステップMA5の判定結果が肯定、ステップMA6の判定結果が否定、又はステップMA8の判定結果が否定の場合にはRAM22cに記憶されているバックアップデータを消去し、初期値に基づきパチンコ機10を起動させる(ステップMA16以降の処理)。その一方で、メインCPU22aは、ステップMA8の判定結果が肯定の場合には前記バックアップデータの設定値に基づきパチンコ機10を起動させる(ステップMA9以降の処理)。
ステップMA8の判定結果が肯定の場合、メインCPU22aは、RAMクリアスイッチ36がオンされておらず、かつ正常にバックアップが行われていることから、ステップMA9以降で復電時の処理を行う。ステップMA9にてメインCPU22aは、電源断前のスタックポインタを復帰させる。次に、メインCPU22aは、サブ制御基板23に対して電源断時の遊技状態(確率変動状態や変動時間短縮状態などを含む)に復帰させるための復帰コマンドを送信する(ステップMA10)。この復帰コマンドによりサブ制御基板23は、電源断時の遊技状態を報知させる。次に、メインCPU22aは、割込みのインターバルタイマを設定(例えば、4ms)するとともに(ステップMA11)、電源断前のレジスタを復帰する(ステップMA12)。次に、メインCPU22aは、電源断前に割込みが許可されていたか否かを判定する(ステップMA13)。メインCPU22aは、ステップMA13の判定結果が肯定の場合には割込み許可を設定するとともに(ステップMA14)、前記判定結果が否定の場合には割込みを許可せずにステップMA15に移行し、割込みの許可/不許可(禁止)を電源断前の状態に復帰させる。そして、メインCPU22aは、ステップMA15にて電源断前のアドレスを設定し、その設定したアドレスへ戻る。
一方、ステップMA16に移行したメインCPU22aは、RAM22cの初期化処理を行う。この処理は、出荷状態からの最初の電源投入時、RAMクリアスイッチ36がオンされた時、及びバックアップが異常である時に行う。ステップMA16にてメインCPU22aは、RAM22cを全てクリアする。すなわち、RAM22cの全記憶領域を0(零)クリアする。このステップMA16の処理により、大当り判定用乱数の値には、初期値として「0(零)」が設定されることとなる。次に、メインCPU22aは、スタックポインタに8000Hを設定する(スタックポインタを初期設定する)とともに(ステップMA17)、RAM22cに初期値を設定する(ステップMA18)。このステップMA16〜MA18の処理は初期化処理となる。
次に、メインCPU22aは、割込みのインターバルタイマ(例えば、4ms)を設定する(ステップMA19)。そして、メインCPU22aは、ステップMA20で割込みを禁止に設定するとともに、ステップMA21で待機時間乱数更新処理を実行し、さらにステップMA22で割込みを許可に設定する。
待機時間乱数更新処理は、タイマ割込み処理の実行後、次の割込み時間が経過する迄の待機時間中に乱数値を更新するための処理であり、この処理に係る時間はタイマ割込み処理の終了時点に応じて変動する変動時間となっている。すなわち、例えば遊技が行われていない時などタイマ割込み処理が早く終了する場合には待機時間乱数更新処理の処理時間が長くなり、図柄変動ゲームの開始時など処理量が多くタイマ割込み処理に時間を要する場合には待機時間乱数更新処理の処理時間が短くなる。この待機時間乱数更新処理にて、変動パターンを決定するために用いる変動パターン振分け用乱数や大当り図柄用乱数の初期値を決定するために用いられる大当り図柄初期値用乱数などの乱数を更新するようになっている。ステップMA22の終了後、メインCPU22aは、遊技開始信号生成回路22eに対して遊技可能状態信号K1を出力すると共に(ステップMA23)、メイン処理を終了し、続いて所定周期毎にタイマ割込み処理を実行する。このタイマ割込み処理にてメインCPU22aは、大当り判定用乱数を更新し、遊技に関する処理を実行するようになっている。つまり、メインCPU22aが遊技可能状態信号K1を出力すると同時に、主制御基板においては大当り判定用乱数が更新されて遊技可能な状態となるようになっている。
次に、タイマ割込み処理を図4にしたがって説明する。
タイマ割込み処理は、パチンコ遊技機10の起動後、所定の制御周期(例えば、4ms)毎に繰り返し実行する処理であり、このタイマ割込み処理にて各種遊技に係る処理を実行する。
メインCPU22aは、タイマ割込み処理を実行すると、まず、ウオッチドッグタイマをクリアする(ステップMB1)。次に、メインCPU22aは、遊技開始信号生成回路22eから遊技開始信号K2が既に入力されたか(遊技開始信号K2の入力状態が既にハイレベルとなったか)否かを判定する(ステップMB2)。この判定結果が否定の場合、メインCPU22aは、現在の遊技開始信号K2の入力状態がハイレベルであるか否かを判定する(ステップMB3)。すなわち、メインCPU22aは、今回のタイマ割込み処理において、遊技開始信号K2の入力状態がローレベルからハイレベルに遷移したか否かを判定する。この判定結果が肯定の場合、メインCPU22aは、RAM22cを初期化したことに基づく各種制御信号(開始信号)をサブ制御基板23に対して出力する(ステップMB4)。メインCPU22aは、ステップMB4の処理で、例えば、サブ制御基板23に対して初期図柄を表示させるための制御コマンド(開始信号)を出力する。
ステップMB2の判定結果が肯定の場合、又はステップMB4の処理が終了すると、メインCPU22aは、各種センサからの信号の入力状態を読み込む(ステップMB5)。そして、メインCPU22aは、読み込んだ入力状態を各種センサ別に保存する(ステップMB6)。次に、メインCPU22aは、各種センサのうち入賞口の入賞検知センサから入賞検知信号を入力したか否かを判定する(ステップMB7)。この判定結果が肯定の場合、メインCPU22aは、賞球払出指示コマンドを図示しない払出制御基板に出力する(ステップMB8)。払出制御基板は、当該賞球払出指示コマンドを入力すると、賞球払出指示コマンドに基づき賞球を払い出させるように球払出装置を制御する。
ステップMB7の判定結果が否定の場合、及びステップMB8の処理が終了すると、メインCPU22aは、図柄変動ゲームに係る特別図柄ゲーム処理など各種遊技に関する処理を実行する(ステップMB9)。メインCPU22aは、このステップMB9の処理において、大当り判定、最終的に表示させる最終停止図柄の決定、変動パターンの決定及び大当り遊技状態の付与などの各種遊技に関する処理を実行するようになっている。
例えば、メインCPU22aは、始動入賞口19の入賞検知センサSEからの遊技球が入賞検知されたことを示す入賞検知信号を入力していた場合、そのタイミングでRAM22cに記憶されている大当り判定用乱数の値を取得する。そして、メインCPU22aは、図柄組み合わせゲームを開始する際、遊技球の入賞検知時に取得した大当り判定用乱数の値がROM22bに記憶されている所定の大当り判定値(例えば、「7」と「511」)と一致するか否かを判定することにより、大当り判定を行う。メインCPU22aは、大当り判定の判定結果が肯定(一致)の場合に大当り遊技状態を付与するようになっている。また、大当り判定用乱数の数値が「0」〜「630」(全631通り)であるので、前記大当り値を「7」と「511」に定めた場合、パチンコ機10の大当り確率は、315.5分の1(=631分の2)となる。
そして、大当り判定の判定結果が肯定の場合(大当りの場合)、メインCPU22aは、全列が同一種類となるように大当り図柄用乱数に基づき、最終停止図柄を決定すると共に、大当り演出用の変動パターンの中から変動パターンを決定する。一方、大当り判定の判定結果が否定の場合(はずれの場合)、メインCPU22aは、全列の図柄が同一種類とならないように最終停止図柄を決定すると共に、はずれ演出用の変動パターンの中から変動パターンを決定する。
変動パターン及び最終停止図柄を決定したメインCPU22aは、サブ制御基板23(サブCPU23a)に対し、所定の制御コマンドを所定のタイミングで出力する。具体的に言えば、メインCPU22aは、変動パターンを指定すると共に図柄変動の開始を指示する変動パターン指定コマンドを最初に出力する。次に、メインCPU22aは、各列毎の最終停止図柄を指定するための図柄指定コマンドを出力する。その後に、メインCPU22aは、前記指定した変動パターンに定められている変動時間に基づいて変動停止を指示し、図柄組み合わせゲームを終了するための全図柄停止コマンドを出力する。このように、メインCPU22aは、ステップMB9にて遊技に関する各種処理を実行する。
そして、メインCPU22aは、ステップMB3の判定結果が否定の場合、又はステップMB9の処理を終了すると、乱数更新処理を実行する(ステップMB10)。この乱数更新処理にて、メインCPU22aは、少なくとも大当り判定用乱数の更新を行う。本実施形態では、大当り判定用乱数及び大当りの図柄組み合わせを決定するための大当り図柄用乱数を更新するようになっている。メインCPU22aは、ステップMB10の処理が終了すると、図5に示す待機処理を実行し(ステップMB11)、タイマ割込み処理を終了する。
このように、メインCPU22aは、タイマ割込み処理において、遊技開始信号を入力する前から大当り判定用乱数の更新を開始する一方、遊技開始信号を入力する前は、入賞検知信号を入力しないようになっている。すなわち、遊技可能となっている状態ながら、遊技に関する処理の実行を規制している。従って、メインCPU22aは、タイマ割込み処理において、遊技開始信号を入力する前、大当り判定用乱数の更新を開始して遊技可能な状態とする一方で、遊技の開始を規制している。
そして、メインCPU22aは、図5に示す待機処理を実行すると、まず、割込みを禁止に設定する(ステップMC1)とともに、待機時間乱数更新処理を実行する(ステップMC2)。この待機時間乱数更新処理は、前述したステップMA21における処理と同様の処理である。その後、メインCPU22aは、割込みを許可に設定する(ステップMC3)。そして、メインCPU22aはウオッチドッグタイマをクリアしてから所定時間(本実施形態では、4ms)経過したか否かを判定する(ステップMC4)。この判定結果が否定の場合、メインCPU22aは、再びステップMC1の処理に戻り、ステップMC1〜MC4を繰り返し実行する。一方、ステップMC4の判定結果が肯定の場合、メインCPU22aは、待機処理を終了し、タイマ割込み処理を終了する。
次に、サブ制御基板23の構成を説明する。
サブ制御基板23には、サブCPU23aと、ROM23bと、RAM23cとが設けられている。サブCPU23aには、ROM23bと、RAM23cとが接続されている。ROM23bには、遊技演出(表示演出、発光演出、音声演出)を制御するための遊技演出制御プログラムなどが記憶されている。また、RAM23cには、パチンコ機10の動作中に適宜書き換えられる各種の情報(各種制御フラグ、各種タイマの値など)が記憶(設定)されるようになっている。
また、サブ制御基板23には、リセット入力回路23dが設けられている。このリセット入力回路23dは、電源基板21のリセット信号回路26に接続されており、該リセット信号回路26が出力したリセット信号Reを入力するようになっている。また、リセット入力回路23dは、サブCPU23aに接続されており、リセット信号Reを入力すると、該リセット信号Reを予め定めた時間T1の間、サブCPU23aに継続出力するようになっている。サブCPU23aは、リセット信号Reの信号レベルがハイレベル状態となっている間、動作(制御処理)の実行が規制され、信号レベルがローレベル状態になると、起動を開始する。本実施形態では、リセット入力回路23dにおけるリセット信号Reの出力時間T1が、主制御基板22のリセット入力回路22dにおけるリセット信号Reの出力時間(出力時間T1+遅延時間T2)よりも短くなるように設定されている。このため、サブCPU23aは、メインCPU22aよりも早く起動を開始することとなる。そして、サブ制御基板23のサブCPU23aは、起動を開始すると、初期設定を行う。この初期設定において、サブCPU23aは、RAM23cの記憶内容の初期化などの処理を行う。
そして、サブCPU23aは、初期設定終了後、通常処理に移行する。この通常処理において、サブCPU23aは、主制御基板22(メインCPU22a)から制御コマンドを入力すると、遊技演出制御プログラムに基づき、入力した制御コマンドに応じた制御を行う。例えば、サブCPU23aは、変動パターン指定コマンドを入力すると、変動パターン指定コマンドにて指定された変動パターンに基づき、図柄組み合わせゲームを開始させるように表示装置18、装飾ランプ40及びスピーカ41を制御する。そして、サブCPU23aは、全図柄停止コマンドを入力すると、入力した図柄指定コマンドで指定された図柄組み合わせを表示装置18の可変表示器Hに表示させるように表示装置18の可変表示器Hの表示内容を制御する。なお、サブCPU23aは、メインCPU22aが起動するよりも早く起動して、通常処理に移行するため、メインCPU22aの起動直後に制御コマンドを入力しても、制御コマンドに応じた処理を確実に実行することができる。
次に、遊技開始信号生成回路22eについて説明する。以下、遊技開始信号生成回路22eについて図6に基づき詳しく説明する。
遊技開始信号生成回路22eは、主制御基板22に設けられており、主制御基板22のメインCPU22aに接続されている。そして、遊技開始信号生成回路22eは、当該メインCPU22aから図示しないD−FFを介して遊技可能状態信号K1が入力されるようになっている。遊技開始信号生成回路22eには、タイミングジェネレータ51(Timing Generator)と遅延回路52が設けられており、当該タイミングジェネレータ51及び遅延回路52にメインCPU22aからの遊技可能状態信号K1が入力されるようになっている。
遅延回路52は、タイミングジェネレータ51と接続されている。そして、遅延回路52は、メインCPU22aから入力した遊技可能状態信号K1の信号レベルが異なる状態に遷移した場合、タイミングジェネレータ51からの指示(信号)を受けた後にメインCPU22a側に出力する遊技開始信号K2の信号レベルを異なる状態に遷移させる。すなわち、遅延回路52は、遊技可能状態信号K1の入力時から遅延してメインCPU22a側に遊技開始信号K2として出力するようになっている。なお、遊技可能状態信号K1及び遊技開始信号K2の信号レベルが異なる状態に遷移するとは、ハイレベル状態からローレベル状態へ遷移すること又はローレベル状態からハイレベル状態へ遷移することである。
そして、タイミングジェネレータ51は、遊技開始信号生成回路22e内に設けられた発振回路53(oscillator)に接続されている。発振回路53は、内部クロック信号を生成し、当該内部クロック信号を所定の周期毎に出力している。タイミングジェネレータ51は、この内部クロック信号を入力し、この内部クロック信号に基づき遊技開始信号生成回路22eにおいて同期を取っている。また、発振回路53は、遊技開始信号生成回路22eに設けられた第1カウンタ54(10bit binary counter1)に接続されており、第1カウンタ54は、発振回路53から内部クロック信号を入力する。そして、第1カウンタ54は、当該内部クロック信号を入力する毎に(内部クロック信号の周期毎に)、予め定められた数値範囲内(例えば、「0」〜「1023」の全1024通りの整数)でカウンタ値を1加算して更新する。すなわち、第1カウンタ54は、更新を開始する際の値(初期値)を最小値である「0」とし、該初期値から順に「0」→「1」→…→「1022」→「1023」というようにカウンタ値を1加算して更新する。そして、第1カウンタ54は、カウンタ値が最後に更新される数値(終期値)である「1023(最大値)」に達すると、再び「0」〜「1023」までの数値を1加算して更新する。つまり、本実施形態では、「0」〜「1023」までを1周期としてカウンタ値を順次更新し、この1周期の更新処理をパチンコ機10の動作中、繰り返し実行する。なお、カウンタ値の更新周期(すなわち、内部クロック信号の周期)は、大当り判定用乱数の更新周期(本実施形態では、4ms)と異なるようになっている。具体的には、カウンタ値の更新周期の方が遙かに早くなっている。
また、タイミングジェネレータ51は、遊技開始信号生成回路22eに設けられたレジスタ55(10bit register)と接続されている。レジスタ55は、カウンタ値を入力可能に第1カウンタ54に接続されている。そして、タイミングジェネレータ51は、遊技開始信号生成回路22eに入力される遊技可能状態信号K1の信号レベルが異なる状態に遷移すると、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示(信号)を送るようになっている。このレジスタ55は、タイミングジェネレータ51からの当該指示を受けると、第1カウンタ54のカウンタ値を記憶するようになっている。すなわち、レジスタ55は、遊技開始信号生成回路22eに入力される遊技可能状態信号K1の信号レベルが異なる状態に遷移したときにおける第1カウンタ54のカウンタ値を記憶するようになっている。
また、タイミングジェネレータ51は、遊技開始信号生成回路22eに設けられた第2カウンタ56(10bit binary counter2)と接続されている。第2カウンタ56は、遊技開始信号生成回路22eに設けられた分周回路60から所定の周期を有する更新用クロック信号を入力するようになっている。そして、第2カウンタ56は、当該更新用クロック信号を入力する毎に(更新用クロック信号の周期毎に)、予め定められた数値範囲内(例えば、「0」〜「1023」の全1024通りの整数)で判定値を1加算して更新するようになっている。すなわち、第2カウンタ56は、更新を開始する際の値(初期値)を最小値である「0」とし、該初期値から順に「0」→「1」→…→「1022」→「1023」というように判定値を1加算して更新するようになっている。なお、本実施形態では、判定値の更新周期(更新用クロック信号の周期)は、大当り判定用乱数の更新周期(本実施形態では、4ms)と異なるように設定されている。具体的には、判定値の更新周期(本実施形態では、1ms)の方が早くなっている。
そして、タイミングジェネレータ51は、遊技開始信号生成回路22eに入力される遊技可能状態信号K1の信号レベルが異なる状態に遷移すると、第2カウンタ56に対して、初期値「0」から判定値を更新するように指示(信号)を送るようになっている。すなわち、第2カウンタ56は、レジスタ55にカウンタ値が記憶された後から判定値の更新を開始するようになっている。そして、第2カウンタ56は、判定値を更新する毎に、判定値がカウンタ値と一致するか否か判定し、判定値がカウンタ値と一致すると判定すると、タイミングジェネレータ51にその旨の通知(信号)を送る。
そして、タイミングジェネレータ51は、第2カウンタ56から判定値とカウンタ値と一致したとの通知を受け取ると、遅延回路52に対してメインCPU22a側に出力する遊技開始信号K2の信号レベルを異なる状態に遷移するように指示する。これにより、遅延回路52は、メインCPU22a側に出力する遊技開始信号K2の信号レベルを異なる状態に遷移する。
以上のことから、本実施形態の遊技開始信号生成回路22eは、不正防止手段(第1の不正防止手段)となる。また、遊技開始信号生成回路22eの第1カウンタ54がカウンタ値(第1のカウンタ値)を更新する更新手段(第1の更新手段)となる。また、遊技開始信号生成回路22eのレジスタ55がカウンタ値を取得する取得手段(第1の取得手段)となる。また、遊技開始信号生成回路22eの第2カウンタ56が判定値(第1の判定値)を更新する計測手段(第1の計測手段)となる。また、遊技開始信号生成回路22eの遅延回路52が、遊技開始信号K2を出力する出力手段(第1の出力手段)となる。また、遊技開始信号生成回路22eの発振回路53が、第1カウンタ54に内部クロック信号を出力する第1信号生成手段となり、遊技開始信号生成回路22eに接続されている外部発振回路70が、第2カウンタ56に外部クロック信号を出力する第2信号生成手段となる。また、遊技開始信号生成回路22eの発振回路53が、第1カウンタ54に内部クロック信号を出力する第1発振回路となり、遊技開始信号生成回路22eに接続されている外部発振回路70が、第2カウンタ56に外部クロック信号を出力する第2発振回路となる。また、遊技開始信号生成回路22eのタイミングジェネレータ51が、遅延回路52に対して遊技開始信号K2の信号レベルを異なる状態に遷移させることを指示する第1のタイミング指示回路となる。
このように、遊技可能状態信号K1の信号レベルが異なる状態に遷移したとき、レジスタ55に第1カウンタ54のカウンタ値を記憶させると共に、第2カウンタ56に判定値を更新させる。タイミングジェネレータ51は、判定値とカウンタ値が一致したとき、遅延回路52に遊技開始信号K2の信号レベルを異なる状態に遷移させるように指示する。このため、遊技可能状態信号K1の信号レベルが異なる状態に遷移したときにおけるカウンタ値によって遊技開始信号K2の遅延時間が左右される。
そして、第1カウンタ54は、遊技開始信号生成回路22e、すなわち、主制御基板22に電源が供給されてから、カウンタ値を更新し続ける。このため、遊技可能状態信号K1の信号レベルが異なる状態に遷移したときのカウンタ値は、遊技可能状態信号K1の信号レベルが異なる状態に遷移するときが一定でないので、結果的に乱数となり、遊技開始信号K2の遅延時間が一定でなくなる。すなわち、遊技開始信号生成回路22eに入力された遊技可能状態信号K1の信号レベルが異なる状態に遷移したときから、遊技開始信号生成回路22eがメインCPU22a側に出力する遊技開始信号K2の信号レベルを異なる状態に遷移させるタイミングまでの遅延時間は、一定でなくなる。
このため、メインCPU22aが遊技可能状態信号K1を出力してから遊技開始信号K2を入力するまでの時間が一定でなくなり、サブ制御基板23に出力する開始信号の出力開始時期が一定でなくなる。その一方、メインCPU22aは、遊技可能状態信号K1を出力した後から遊技開始信号K2を入力する前であっても大当り判定用乱数の更新を開始するため、サブ制御基板23への開始信号の出力時期から大当り判定値を取得するまでの時間は一定でなくなり、大当りとなるタイミングを把握できなくなる。従って、不正基板が、不正に開始信号(例えば、電源投入初期時コマンドのINT信号等)の出力時期を読み取って出力時期からの時間を計測しても大当りとなるタイミングを把握することができなくなり、不正を防止できる。
また、本実施形態の発振回路53は、コンデンサ、キャパシタ、抵抗などから構成されており、これらの性能には通常ばらつきがあり、また、電源が供給されていないときにおいてコンデンサの残留電荷などにも通常ばらつきがある。このため、電源投入直後において、発振回路53が生成する内部クロック信号の周期は、一定でない場合が多い。また、電源投入から遊技開始信号生成回路22eに遊技可能状態信号K1が入力されるまでの間に、第1カウンタ54のカウンタ値は、少なくとも複数回更新されるようになっている。すなわち、発振回路53は、電源投入から遊技開始信号生成回路22eに遊技可能状態信号K1が入力されるまでの間に、複数回内部クロック信号を入力する程度の速さの周期を有する内部クロック信号を生成するようになっている。以上のことから、電源投入後から最初に遊技可能状態信号K1の信号レベルが異なる状態に遷移したときに取得するカウンタ値にばらつきが生じる可能性が高い。このため、遅延時間も異なり、電源投入後から最初の大当りとなるタイミングを把握することができにくくなる。
また、本実施形態において、カウンタ値は遊技開始信号生成回路22e内部で更新されており、また、カウンタ値の更新周期は、環境変化やICの個体差により変化することがあるため、カウンタ値を把握することは困難である。また、発振回路53が出力する内部クロック信号の周期、すなわち、カウンタ値の更新周期と、大当り判定用乱数の更新周期は同期していないため、大当り判定用乱数を把握しつつ、カウンタ値を把握することは極めて困難となる。同様に、カウンタ値の更新周期と、判定値の更新周期も異なるため(非同期であるため)、判定値を把握しつつ、カウンタ値を把握することは極めて困難となる。
なお、遊技開始信号生成回路22eに設けられた分周回路60は、遊技開始信号生成回路22eの外部であって、主制御基板22に設けられた外部発振回路70から入力した外部クロック信号の周波数が高い場合に、当該外部クロック信号の周波数を分周して周波数を低くして更新用クロック信号とすることができるように構成されている。具体的には、分周回路60には、データ線S1,S2が設けられており、このデータ線S1,S2への信号の入力状況に応じて外部クロック信号の周波数を16000分の1又は20000分の1に分周した信号を更新用クロック信号として出力する、若しくはそのまま更新用クロック信号として出力するようになっている。
より詳しくは、分周回路60は、第3カウンタ61(15bit binary counter3)、データセレクタ63(SEL)、分割器62(Divide 20000/Divide16000)、及び選択切替器64(MUX:Multiplexer )から構成されている。そして、データセレクタ63は、データ線S1,S2から入力された信号に基づき、分割器62に対して外部から入力した外部クロック信号の周波数を、そのままにして出力するか、若しくは16000分の1又は20000分の1に分周して出力するかを設定する。そのままの周期で更新用クロック信号として出力すると設定された場合、データセレクタ63は、選択切替器64に対して、外部から入力した外部クロック信号をそのまま更新用クロック信号として第2カウンタ56に出力するように指示する。これにより、外部から入力された外部クロック信号は、そのまま更新用クロック信号として第2カウンタ56に出力される。例えば、分周回路60は、1KHz(キロヘルツ)の外部クロック信号を入力した場合には、分周せずに、1KHzの更新用クロック信号として第2カウンタ56に出力する。
一方、16000分の1に分周すると設定された場合は、データセレクタ63は、分割器62に対してその旨を指示する。この指示を受けた分割器62は、第3カウンタ61が16000回外部クロック信号を入力すると計測する毎に、選択切替器64に対して1回更新用クロック信号を出力させる。すなわち、外部から入力された外部クロック信号を16000回入力する毎に、選択切替器64に1回更新用クロック信号を出力する。選択切替器64は、当該更新用クロック信号を第2カウンタ56に出力する。なお、20000分の1に分周する場合も同様の処理を行うので詳細な説明は省略する。例えば、分周回路60は、16MHz(メガヘルツ)の外部クロック信号を入力した場合には、周波数を16000分の1に分周して、1KHzの更新用クロック信号として出力する。同様に、分周回路60は、20MHz(メガヘルツ)の外部クロック信号を入力した場合には、周波数を20000分の1に分周して、1KHzの更新用クロック信号として出力する。
このように、外部から入力した外部クロック信号を分周することにより、様々な周波数を有する外部クロック信号を入力しても、判定値を更新するのに適切な周期を有する(例えば、1KHzの)更新用クロック信号に変換することができる。また、外部クロック信号の分周した場合、大当り判定用乱数と判定値の更新周期が異なるため、判定値の更新周期を把握しにくくなり、大当りとなるタイミングの把握を一層困難なものとすることができる。
次に、指示回路Iについて図7に基づき説明する。なお、本実施形態では、指示回路Iと遊技開始信号生成回路22eと同一の回路構成としているため、遊技開始信号生成回路22eと同様の構成は、遊技開始信号生成回路22eと同じ符号を付してその詳細な説明は省略又は簡略する。
指示回路Iは、主制御基板22に設けられており、主制御基板22のリセット入力回路22dに接続されている。そして、指示回路Iのタイミングジェネレータ51及び遅延回路52には、リセット入力回路22dからのリセット信号Reが入力されるようになっている。そして、遅延回路52は、リセット入力回路22dから入力したリセット信号Reの信号レベルが異なる状態に遷移した場合、タイミングジェネレータ51からの指示(信号)を受けた後にメインCPU22a側に出力するリセット信号Reの信号レベルを異なる状態に遷移させる。すなわち、遅延回路52は、入力したリセット信号Reを遅延してメインCPU22a側に出力するようになっている。
また、タイミングジェネレータ51は、指示回路Iに設けられた発振回路53に接続されている。発振回路53は、内部クロック信号を生成し、当該内部クロック信号を所定の周期毎に出力している。タイミングジェネレータ51は、この内部クロック信号を入力し、この内部クロック信号に基づき指示回路Iにおいて同期を取っている。また、発振回路53は、指示回路Iに設けられた第1カウンタ54に接続されており、第1カウンタ54は、発振回路53から内部クロック信号を入力する。そして、第1カウンタ54は、当該内部クロック信号を入力する毎に(内部クロック信号の周期毎に)、予め定められた数値範囲内(例えば、「0」〜「1023」の全1024通りの整数)でカウンタ値を1加算して更新する。
また、タイミングジェネレータ51は、指示回路Iに設けられたレジスタ55と接続されている。レジスタ55は、カウンタ値を入力可能に第1カウンタ54に接続されている。そして、タイミングジェネレータ51は、指示回路Iに入力されるリセット信号Reの信号レベルが異なる状態に遷移すると、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示(信号)を送るようになっている。このレジスタ55は、タイミングジェネレータ51からの当該指示を受けると、第1カウンタ54のカウンタ値を記憶するようになっている。すなわち、レジスタ55は、指示回路Iに入力されるリセット信号Reの信号レベルが異なる状態に遷移したときにおける第1カウンタ54のカウンタ値を記憶するようになっている。
また、タイミングジェネレータ51は、指示回路Iに設けられた第2カウンタ56と接続されている。第2カウンタ56は、指示回路Iに設けられた分周回路60から所定の周期を有する更新用クロック信号を入力するようになっている。そして、第2カウンタ56は、当該更新用クロック信号を入力する毎に(更新用クロック信号の周期毎に)、予め定められた数値範囲内(例えば、「0」〜「1023」の全1024通りの整数)で判定値を1加算して更新するようになっている。
そして、タイミングジェネレータ51は、指示回路Iに入力されるリセット信号Reの信号レベルが異なる状態に遷移すると、第2カウンタ56に対して、初期値「0」から判定値を更新するように指示(信号)を送るようになっている。すなわち、第2カウンタ56は、レジスタ55にカウンタ値が記憶された後から判定値の更新を開始するようになっている。そして、第2カウンタ56は、判定値を更新する毎に、判定値がカウンタ値と一致するか否か判定し、判定値がカウンタ値と一致すると判定すると、タイミングジェネレータ51にその旨の通知(信号)を送る。
そして、タイミングジェネレータ51は、第2カウンタ56から判定値とカウンタ値と一致したとの通知を受け取ると、遅延回路52に対してメインCPU22a側に出力するリセット信号Reの信号レベルを異なる状態に遷移するように指示する。これにより、遅延回路52は、メインCPU22a側に出力するリセット信号Reの信号レベルを異なる状態に遷移する。
以上のことから、本実施形態の指示回路Iは、不正防止手段(第2の不正防止手段)となる。また、指示回路Iの第1カウンタ54がカウンタ値(第2のカウンタ値)を更新する更新手段(第2の更新手段)となる。また、指示回路Iのレジスタ55がカウンタ値を取得する取得手段(第2の取得手段)となる。また、指示回路Iの第2カウンタ56が判定値(第2の判定値)を更新する計測手段(第2の計測手段)となる。また、指示回路Iの遅延回路52が、リセット信号Reを出力する出力手段(第2の出力手段)となる。また、指示回路Iの発振回路53が、第1カウンタ54に内部クロック信号を出力する第3信号生成手段となり、指示回路Iに接続されている外部発振回路70が、第2カウンタ56に外部クロック信号を出力する第4信号生成手段となる。また、指示回路Iの発振回路53が、第1カウンタ54に内部クロック信号を出力する第3発振回路となり、指示回路Iと接続されている外部発振回路70が、第2カウンタ56に外部クロック信号を出力する第4発振回路となる。また、指示回路Iのタイミングジェネレータ51が、遅延回路52に対してリセット信号Reの信号レベルを異なる状態に遷移させることを指示する第2のタイミング指示回路となる。
このように、遊技開始信号生成回路22eと同一回路を指示回路Iとして使用するため、遊技開始信号生成回路22eを使用した場合と同様の理由で、入力されるリセット信号Reの信号レベルが異なる状態に遷移したときにおけるカウンタ値によって出力されるリセット信号Reの遅延時間が左右される。すなわち、指示回路Iに入力されたリセット信号Reの信号レベルが異なる状態に遷移したときから、指示回路IがメインCPU22a側に出力するリセット信号Reの信号レベルを異なる状態に遷移させるタイミングまでの遅延時間は、一定でなくなる。
このため、リセット信号Reを主制御基板22に入力してからメインCPU22aが起動を開始し、大当り判定用乱数の更新を開始するまでの時間が一定でなくなり、リセット信号Reを主制御基板22に入力してから時間を計測しても、大当りとなるタイミングを把握できなくなる。従って、不正リセット信号Re1を主制御基板22に入力してからの時間を計測しても大当りとなるタイミングを把握することができにくくなり、不正を防止できる。
また、本実施形態の発振回路53が生成する内部クロック信号の周期は、一定でない場合が多い。また、電源投入毎に同一タイミングでリセット信号回路26がリセット信号Reを出力した場合であっても、電源投入からリセット信号Reが指示回路Iに入力されるまでの時間は一定でない可能性が高い。また、電源投入から指示回路Iにリセット信号Reが入力されるまでの間に、第1カウンタ54のカウンタ値は、少なくとも複数回更新されるようになっている。以上のことから、電源投入後から最初にリセット信号Reの信号レベルが異なる状態に遷移したときに取得するカウンタ値にばらつきが生じる可能性が高い。このため、遅延時間も異なり、電源投入後から最初の大当りとなるタイミングを把握することができにくくなる。
また、指示回路Iは、リセット信号Reの信号レベルが異なる状態に遷移するたびに、当該遷移するタイミングを遅延させる。このため、リセット信号Reの入力時間が短すぎた場合、指示回路Iからリセット信号Reが正常に出力されない場合がある。具体的には、指示回路Iに入力されるリセット信号Reがハイレベル状態に遷移したときからローレベル状態に遷移するまでの時間が、指示回路Iに入力されるリセット信号Reがハイレベル状態に遷移してから遅延回路52が出力するリセット信号Reをハイレベル状態に遷移するまでの時間よりも短い場合、正常に出力されない場合がある。また、同様に、指示回路Iに入力されるリセット信号Reがローレベル状態に遷移したときからハイレベル状態に遷移するまでの時間が、指示回路Iに入力されるリセット信号Reがローレベル状態に遷移してから遅延回路52が出力するリセット信号Reをローレベル状態に遷移するまでの時間よりも短い場合も、正常に出力されない場合がある。このため、リセット信号Reの最大遅延時間を予め把握しておかなければ、正確なリセット信号Reの入力時間を設定することができなくなる。従って、入力時間が短い不正リセット信号Re1の入力を防止できる。また、同様にして、瞬間的にハイレベル状態に遷移した後、ローレベル状態に遷移するようなノイズを除去することが可能となる。
また、本実施形態において、カウンタ値は指示回路I内部で更新されており、また、カウンタ値の更新周期は、環境変化やICの個体差により変化することがあるため、カウンタ値を把握することは困難である。また、発振回路53が出力する内部クロック信号の周期、すなわち、カウンタ値の更新周期と、大当り判定用乱数の更新周期は同期していないため、大当り判定用乱数を把握しつつ、カウンタ値を把握することは極めて困難となる。同様に、カウンタ値の更新周期と、判定値の更新周期も異なるため(非同期であるため)、判定値を把握しつつ、カウンタ値を把握することは極めて困難となる。
なお、指示回路Iに設けられた分周回路60は、遊技開始信号生成回路22eの分周回路60と同一の構成であるため、同じ番号を付して詳細な説明は省略する。
次に、指示回路Iによるリセット信号Reの遅延タイミングと、遊技開始信号生成回路22eによる遊技開始信号K2の遅延タイミングについて図8に基づき説明する。
パチンコ機10へ電源投入がされると(時点A1)、指示回路Iに入力されるリセット信号Reの信号レベルは、ローレベル状態からハイレベル状態に遷移する。これにより、指示回路Iのタイミングジェネレータ51は、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示をする。この指示を受けて指示回路Iのレジスタ55は、第1カウンタ54のカウンタ値を記憶する。それと共に、指示回路Iのタイミングジェネレータ51は、第2カウンタ56に対して初期値から判定値を更新させるように指示をする。この指示を受けて指示回路Iの第2カウンタ56は、分周回路60から入力した更新用クロック信号の周期毎に判定値を初期値から更新する。そして、指示回路Iの第2カウンタ56は、判定値がレジスタ55に記憶されたカウンタ値と一致すると、タイミングジェネレータ51に対して判定値がカウンタ値に一致した旨を指示する。この指示を受けた指示回路Iのタイミングジェネレータ51は、遅延回路52に出力するリセット信号Reの信号レベルを異なる状態に遷移させるように指示する。
この指示を受けた指示回路Iの遅延回路52は、メインCPU22a側に出力するリセット信号Reの信号レベルをローレベル状態からハイレベル状態に遷移させる(時点A2)。すなわち、指示回路Iの遅延回路52は、ハイレベル状態に遷移したときのカウンタ値に更新用クロック信号の周期を乗じた時間α1だけメインCPU22a側に出力するリセット信号Reの信号レベルをハイレベル状態に遷移させるタイミングを遅延させる。メインCPU22aに入力されるリセット信号Reの信号レベルがハイレベル状態となると、メインCPU22aの起動が規制される。
そして、電源投入後から時間T1+T2経過後、指示回路Iに入力されるリセット信号Reの信号レベルがハイレベル状態からローレベル状態に遷移する(時点A3)。これにより、指示回路Iのタイミングジェネレータ51は、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示をする。この指示を受けて指示回路Iのレジスタ55は、第1カウンタ54のカウンタ値を記憶する。それと共に、指示回路Iのタイミングジェネレータ51は、第2カウンタ56に対して初期値から判定値を更新させるように指示をする。この指示を受けて指示回路Iの第2カウンタ56は、更新用クロック信号の周期毎に判定値を初期値から更新する。そして、指示回路Iの第2カウンタ56は、判定値がレジスタ55に記憶されたカウンタ値と一致すると、タイミングジェネレータ51に対して判定値がカウンタ値に一致した旨を指示する。この指示を受けた指示回路Iのタイミングジェネレータ51は、遅延回路52に出力するリセット信号Reの信号レベルを異なる状態に遷移させるように指示する。
この指示を受けた指示回路Iの遅延回路52は、メインCPU22a側に出力するリセット信号Reの信号レベルをハイレベル状態からローレベル状態に遷移させる(時点A4)。すなわち、指示回路Iの遅延回路52は、ローレベル状態に遷移したときのカウンタ値に更新用クロック信号の周期を乗じた時間α2だけメインCPU22a側に出力するリセット信号Reの信号レベルをローレベル状態に遷移させるタイミングを遅延させる。
メインCPU22aに入力されるリセット信号Reの信号レベルがローレベル状態に遷移すると、メインCPU22aの規制が解除され、起動を開始する。その際、メインCPU22aは、初期化指示信号を入力していた場合又はRAM22cの記憶内容が異常である場合、初期化処理を行う。これにより、メインCPU22aは、タイマ割込み処理を実行すると、大当り判定用乱数を初期値「0」から更新する。なお、以降では、初期化処理を行うものとして説明する。このため、リセット入力回路22dの出力時間T1+T2に、指示回路Iの遅延時間α2と、初期化処理に要する時間と、大当り判定用乱数の値が初期値「0」から大当り判定値(「7」又は「511」)に到達するまでの時間を加算した時間が電源投入から経過した時に、大当り判定用乱数を取得すれば、大当りとなる。しかしながら、遅延時間α2は一定でないために、電源投入から大当りとなるタイミングは一定でなくなり、電源投入から時間を計測しても大当りとなるタイミングを把握することができず、不正を防止できる。
なお、初期化指示信号を入力せず、かつ、RAM22cの記憶内容が正常である場合、メインCPU22aは、バックアップされた記憶内容を復旧して通常処理に移行する。これにより、メインCPU22aは、大当り判定用乱数をバックアップされていた値から更新し続ける。この場合、さらにバックアップ内容を知らなくては大当りとなるタイミングを把握することができないので、一層不正ができにくくなる。
そして、メインCPU22aは、メイン処理において遊技可能状態信号K1を出力すると共に(時点A5)、タイマ割込み処理を実行し、大当り判定用乱数を更新しつつ、遊技開始信号K2が入力されるまで待機する。すなわち、メインCPU22aは、遊技開始信号K2が入力されるまで大当り判定用乱数を更新する一方で、遊技に関する各種処理を実行しないようにする。
遊技可能状態信号K1がD−FFを介して遊技開始信号生成回路22eに入力されると、遊技開始信号生成回路22eに入力される遊技可能状態信号K1の信号レベルがローレベル状態からハイレベル状態に遷移する。これにより、遊技開始信号生成回路22eのタイミングジェネレータ51は、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示をする。この指示を受けて遊技開始信号生成回路22eのレジスタ55は、第1カウンタ54のカウンタ値を記憶する。それと共に、遊技開始信号生成回路22eのタイミングジェネレータ51は、第2カウンタ56に対して初期値から判定値を更新させるように指示をする。この指示を受けて遊技開始信号生成回路22eの第2カウンタ56は、分周回路60から入力した更新用クロック信号の周期毎に判定値を初期値から更新する。そして、遊技開始信号生成回路22eの第2カウンタ56は、判定値がレジスタ55に記憶されたカウンタ値と一致すると、タイミングジェネレータ51に対して判定値がカウンタ値に一致した旨を指示する。この指示を受けた遊技開始信号生成回路22eのタイミングジェネレータ51は、遅延回路52に遊技開始信号K2の信号レベルを異なる状態に遷移させるように指示する。
この指示を受けた遊技開始信号生成回路22eの遅延回路52は、メインCPU22a側に出力する遊技開始信号K2の信号レベルをローレベル状態からハイレベル状態に遷移させる(時点A6)。すなわち、遊技開始信号K2の遅延回路52は、ハイレベル状態に遷移したときのカウンタ値に更新用クロック信号の周期を乗じた時間α3だけメインCPU22a側に出力する遊技開始信号K2の信号レベルをハイレベル状態に遷移させるタイミングを遅延させる。メインCPU22aに入力される遊技開始信号K2の信号レベルがハイレベル状態となると、タイマ割込み処理において、サブ制御基板23に開始信号を出力し(時点A7)、以降、遊技に関する各種処理を実行する。すなわち、遊技者が遊技をすることが可能な状態となる。
このため、メインCPU22aが遊技可能状態信号K1を出力したときから大当り判定用乱数の値が初期値「0」から大当り判定値(「7」又は「511」)に到達するまでの時間を計測すれば、大当りとなるタイミングを特定することができる。しかしながら、遊技可能状態信号K1は主制御基板22の外部に出力されず、外部のサブ制御基板23には、遊技可能状態信号K1の出力から遅延時間α3経過後に開始信号が出力されるだけである。そして、当該遅延時間α3は一定でないために、サブ制御基板23が開始信号を入力してから大当りとなるタイミングは一定でない。従って、メインCPU22aからサブ制御基板23への開始信号の入力時から時間を計測しても大当りとなるタイミングを把握することができず、主制御基板22から出力される制御信号を読み取る不正基板による不正を防止できる。
次に、パチンコ機10の動作中に、不正基板から不正リセット信号Re1が主制御基板22に入力された場合について説明する。
不正基板から入力された不正リセット信号Re1の信号レベルが、ローレベル状態からハイレベル状態に遷移すると(時点A7)、指示回路Iのタイミングジェネレータ51は、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示をする。この指示を受けて指示回路Iのレジスタ55は、第1カウンタ54のカウンタ値を記憶する。それと共に、指示回路Iのタイミングジェネレータ51は、第2カウンタ56に対して初期値から判定値を更新させるように指示をする。この指示を受けて指示回路Iの第2カウンタ56は、分周回路60から入力した更新用クロック信号の周期毎に判定値を初期値から更新する。そして、指示回路Iの第2カウンタ56は、判定値がレジスタ55に記憶されたカウンタ値と一致すると、タイミングジェネレータ51に対して判定値がカウンタ値に一致した旨を指示する。この指示を受けた指示回路Iのタイミングジェネレータ51は、遅延回路52に不正リセット信号Re1の信号レベルを異なる状態に遷移させるように指示する。
この指示を受けた指示回路Iの遅延回路52は、メインCPU22a側に出力する不正リセット信号Re1の信号レベルをローレベル状態からハイレベル状態に遷移させる(時点A8)。すなわち、指示回路Iの遅延回路52は、ハイレベル状態に遷移したときのカウンタ値に更新用クロック信号の周期を乗じた時間α4だけメインCPU22a側に出力する不正リセット信号Re1の信号レベルをハイレベル状態に遷移させるタイミングを遅延させる。メインCPU22aに入力されるリセット信号Reの信号レベルがハイレベル状態となると、メインCPU22aの起動が規制される。
そして、不正基板から入力された不正リセット信号Re1の信号レベルが、ハイレベル状態からローレベル状態に遷移すると(時点A9)、指示回路Iのタイミングジェネレータ51は、レジスタ55に第1カウンタ54のカウンタ値を記憶するように指示をする。この指示を受けて指示回路Iのレジスタ55は、第1カウンタ54のカウンタ値を記憶する。それと共に、指示回路Iのタイミングジェネレータ51は、第2カウンタ56に対して初期値から判定値を更新させるように指示をする。この指示を受けて指示回路Iの第2カウンタ56は、更新用クロック信号の周期毎に判定値を初期値から更新する。そして、指示回路Iの第2カウンタ56は、判定値がレジスタ55に記憶されたカウンタ値と一致すると、指示回路Iのタイミングジェネレータ51に対して判定値がカウンタ値に一致した旨を指示する。この指示を受けた指示回路Iのタイミングジェネレータ51は、遅延回路52に不正リセット信号Re1の信号レベルを異なる状態に遷移させるように指示する。
この指示を受けた指示回路Iの遅延回路52は、メインCPU22a側に出力する不正リセット信号Re1の信号レベルをハイレベル状態からローレベル状態に遷移させる(時点A10)。すなわち、指示回路Iの遅延回路52は、ローレベル状態に遷移したときのカウンタ値に更新用クロック信号の周期を乗じた時間α5だけメインCPU22a側に出力する不正リセット信号Re1の信号レベルをローレベル状態に遷移させるタイミングを遅延させる。
メインCPU22aに入力される不正リセット信号Re1の信号レベルがローレベル状態に遷移すると、メインCPU22aの規制が解除され、起動を開始する。その際、動作中に不正リセット信号Re1を入力しため、メインCPU22aは、初期化指示信号を入力しておらず、またRAM22cの記憶内容が異常であるので、初期化処理を行っている。これにより、メインCPU22aは、大当り判定用乱数を初期値「0」から更新し続ける。このため、主制御基板22へ不正リセット信号Re1を入力してから、リセット入力回路22dの出力時間T1+T2に、指示回路Iの遅延時間α5と、初期化処理にかかる時間と、大当り判定用乱数の値が初期値「0」から大当り判定値(「7」又は「511」)に到達するまでの時間を加算した時間が経過した時に、大当り判定用乱数を取得すれば大当りとなる。しかしながら、遅延時間α5は不明であるため、不正リセット信号Re1の入力から大当りとなるタイミングは不明となり、電源投入から時間を計測しても大当りとなるタイミングを把握することができず、不正を防止できる。
以上詳述したように、本実施形態は、以下の効果を有する。
(1)メインCPU22aは、大当り判定用乱数の更新を開始すると共に、遊技可能状態信号K1を出力し、その後、遊技開始信号K2を入力するまで、大当り判定用乱数を更新すると共にサブ制御基板23に最初の制御信号(開始信号)を出力しないようにして待機した。そして、遊技開始信号生成回路22eは、遊技可能状態信号K1を入力すると、入力時(ハイレベル状態に遷移したとき)からランダムな遅延時間経過後、遊技開始信号K2をメインCPU22aに出力する(ハイレベル状態に遷移させる)ようにした。このため、メインCPU22aからサブ制御基板23に最初に出力される制御信号(開始信号)の入力時は、大当り判定用乱数の更新開始時からランダムな遅延時間経過後にしか入力することができなくなり、当該開始信号入力時から大当りとなるタイミングを把握することができなくなる。従って、メインCPU22aからサブ制御基板23に最初に出力される制御信号(開始信号)に基づき、不正な大当りを生起させる不正基板による不正を防止できる。
(2)遊技開始信号生成回路22eは、主制御基板22内においてメインCPU22aとは別体で設けた。このため、メインCPU22aの制御プログラムを変更する必要が無くなる。
(3)遊技開始信号生成回路22eと、指示回路Iは、同一の回路構成を有しているため、別々に回路を設計する必要が無くなり、設計の手間を少なくすることができる。
(4)遊技開始信号生成回路22eは、遊技可能状態信号K1の入力が開始(又は終了)したときにレジスタ55が取得したカウンタ値と、レジスタ55がカウンタ値を取得した後から第2カウンタ56が更新する判定値とが一致した場合に、メインCPU22aに出力する遊技開始信号K2の信号レベルを異なる状態に遷移する。すなわち、メインCPU22aから遊技可能状態信号K1の入力が開始(又は終了)されたときからカウンタ値に基づく時間遅延して、遊技開始信号K2は、メインCPU22aへ入力が開始(又は終了)される。そして、遅延する時間は、カウンタ値に基づくため、一定でない。以上のことから、遊技可能状態信号K1を入力してから遊技開始信号K2を出力するまでの時間が一定でなくなり、メインCPU22aからサブ制御基板23へ出力された制御信号に基づき計測する大当りとなるタイミングも一定でなくなる。従って、大当りの発生タイミングの把握を困難にすることができ、不正を防止できる。
(5)指示回路Iは、リセット信号Re(又は不正リセット信号Re1)の入力が開始(又は終了)したときにレジスタ55が取得したカウンタ値と、レジスタ55がカウンタ値を取得した後から第2カウンタ56が更新する判定値とが一致した場合に、メインCPU22aに出力するリセット信号Reの信号レベルを異なる状態に遷移する。すなわち、リセット信号回路26又は不正基板からリセット信号Re(又は不正リセット信号Re1)の入力が開始(又は終了)されたときからカウンタ値に基づく時間遅延して、リセット信号Reは、メインCPU22aへ入力が開始(又は終了)される。そして、遅延する時間は、カウンタ値に基づくため、一定でない。以上のことから、主制御基板22へリセット信号Re(又は不正リセット信号Re1)の入力を開始(又は終了)してからメインCPU22aが起動するタイミングが一定でなくなり、大当りとなるタイミングも一定でなくなる。従って、大当りの発生タイミングの把握を困難にすることができ、不正を防止できる。
(6)指示回路Iのカウンタ値は、大当り判定用乱数の更新周期とは異なる所定の更新周期毎に更新されるので、リセット信号回路26又は不正基板が、リセット信号Re(又は不正リセット信号Re1)を出力してから一定の更新周期で大当りとなるタイミングを計測しようとしても、大当りとなるタイミングを把握することは困難となる。従って、大当りの発生タイミングの把握を困難にすることができ、不正を防止できる。
(7)指示回路Iは、リセット信号Re(又は不正リセット信号Re1)の信号レベルが異なる状態に遷移するたびに、そのタイミングを遅延させてリセット信号ReをメインCPU22a側に出力する。このため、リセット信号Re(又は不正リセット信号Re1)の入力時間が短すぎると、メインCPU22a側に出力するリセット信号Reがハイレベル状態となる前に指示回路Iに入力されるリセット信号Reがローレベル状態となる場合がある。また、同様に、メインCPU22a側に出力するリセット信号Reがローレベル状態となる前に指示回路Iに入力されるリセット信号Reがハイレベル状態となる場合がある。これらの場合、指示回路Iは、正常にリセット信号ReをメインCPU22a側に出力することができなくなり、メインCPU22aの規制や起動を正常に行えなくなる。従って、入力時間の短い不正リセット信号Re1の入力を防止できる。
(8)指示回路Iは、リセット信号Re(又は不正リセット信号Re1)の信号レベルが異なる状態に遷移するたびに、そのタイミングを遅延させてリセット信号Re(又は不正リセット信号Re1)をメインCPU22a側に出力する。このため、リセット信号Re(又は不正リセット信号Re1)の信号レベルが、ローレベル状態からハイレベル状態に遷移した場合にメインCPU22aを起動するようにしても、ハイレベル状態からローレベル状態に遷移した場合にメインCPU22aを起動するようにしてもメインCPU22aに対応することができる。
(9)指示回路I及び遊技開始信号生成回路22eの発振回路53に使用されているコンデンサや抵抗には、通常、性能のばらつきがあり、また、電源投入時においてコンデンサに蓄えられている残留電荷も通常ばらつきがあるため、電源投入後において、発振回路53が出力するクロック信号の周期にはばらつきが生じる。このため、電源投入毎に、電源投入後最初のリセット信号Re及び遊技開始信号K2の遅延時間が異なる可能性が高い。すなわち、電源投入毎に、電源投入後最初の大当りとなるタイミングが異なる可能性が高い。また、カウンタ値は、電源投入からリセット信号Re又は遊技可能状態信号K1が入力されるまでの時間に複数回更新される、すなわち、カウンタ値の更新周期は極めて早いため、電源投入毎に取得するカウンタ値が異なる可能性が高い。このため、電源投入毎に、遅延時間が異なり、大当りとなるタイミングも異なる可能性が高い。従って、電源投入した時点から時間を計測して大当りタイミングを把握することが困難となる。
(10)主制御基板22は、ケースカバー内に収容されており、当該ケースカバーには、外部から主制御基板22に直接不正回路などを装着できないように不正防止対策がなされている。このため、主制御基板22に指示回路I及び遊技開始信号生成回路22eを取り付けることにより、メインCPU22aと指示回路Iとの間に、又はメインCPU22aと遊技開始信号生成回路22eの間に、不正基板が取り付けられることを防止できる。従って、指示回路Iを介してリセット信号Reを入力することが確実にできる。すなわち、確実にリセット信号Re(又は不正リセット信号Re1)を遅延させてメインCPU22aに入力することができる。また、遊技開始信号生成回路22eから遊技開始信号を入力することが確実にできる。すなわち、確実に遊技開始信号K2を遅延させてメインCPU22aに入力することができる。
(11)指示回路I及び遊技開始信号生成回路22eにそれぞれ分周回路60を設け、外部に備えられた外部発振回路70から入力した外部クロック信号の周期を遅くしたものを更新用クロック信号として出力するようにした。このため、高周波数の外部クロック信号を入力しても、リセット信号Reを十分に遅延させることができる。
(12)更新用クロック信号の周期毎に、第2カウンタ56は判定値を更新する。このため、更新用クロック信号の周期と大当り判定用乱数の更新周期を異ならせれば、リセット信号Reが異なる状態に遷移してから一定周期でタイミングを計った場合、大当りとなるタイミングがずれることとなる。また、計測する周期を途中で切り替えるには、指示回路Iのレジスタ55に記憶されたカウンタ値を知る必要があるため、困難である。従って、大当りとなるタイミングを把握しにくくすることができ、不正リセット信号Re1の入力による不正を防止できる。
(13)カウンタ値の更新周期を定める内部クロック信号を生成、出力する発振回路53を指示回路I及び遊技開始信号生成回路22e内に設けた。このため、内部クロック信号の周期を指示回路Iの外部から認識することは困難となる。従って、大当りとなるタイミングを把握し難くでき、不正を防止できる。
(14)指示回路I及び遊技開始信号生成回路22eの外部に設けた外部発振回路70から入力した外部クロック信号の周波数を分周回路60により16000分の1又は20000分の1に分周することができるようにした。このため、外部発振回路70から入力した外部クロック信号がどれだけ分周されているか指示回路I及び遊技開始信号生成回路22eの外部からは認識しにくくなり、判定値の更新周期を認識することが困難となる。従って、大当りとなるタイミングを把握し難くでき、不正を防止できる。
尚、上記実施形態は、次のような別の実施形態(別例)にて具体化できる。
○上記実施形態では、遊技開始信号生成回路22eと、指示回路Iは、同一の回路構成を有している。また、指示回路Iにリセット信号Reが入力されるタイミングは、遊技開始信号生成回路22eに遊技可能状態信号K1が入力されるタイミング及び遊技開始信号生成回路22eが遊技開始信号K2を出力するタイミングと全く異なる。また、指示回路Iからリセット信号Reを出力するタイミングは、遊技開始信号生成回路22eに遊技可能状態信号K1が入力されるタイミング及び遊技開始信号生成回路22eが遊技開始信号K2を出力するタイミングとも全く異なる。このため、遊技開始信号生成回路22eと、指示回路Iを1つの回路としてもよい。このようにすれば、部品を少なくすることができ、また、主制御基板22内における回路の設置スペースが少なくても不正防止回路を設置することができる。
○上記実施形態では、指示回路Iを設けたが設けなくても良い。すなわち、リセット入力回路22dとメインCPU22aが直接接続されていてもよい。
○上記実施形態では、遊技開始信号生成回路22eと、指示回路Iは同一の回路構成としたが、異なる回路構成としても良い。
○上記実施形態において、遊技開始信号生成回路22eが、遊技可能状態信号K1の入力時からランダムな遅延時間経過後、遊技開始信号K2を出力することができるならば、その回路構成を任意に変更しても良い。同様に、指示回路Iが、リセット信号Reの入力時からランダムな遅延時間経過後、メインCPU22a側にリセット信号Reを出力することができるならば、その回路構成を任意に変更しても良い。
○上記実施形態において、判定値の更新周期が遅延時間を設けるために適切な周期になるならば、外部発振回路70が出力する外部クロック信号を分周する分周回路60を設けなくても良い。すなわち、第2カウンタ56は、外部発振回路70が出力する外部クロック信号の周期毎に判定値を更新するようにしても良い。
○上記実施形態において、メインCPU22aは、リセット信号Reがハイレベル状態からローレベル状態に遷移したときに起動するようになっていたが、ローレベル状態からハイレベル状態に遷移したときに起動するようにしても良い。この場合、指示回路Iから出力されるリセット信号Reを反転する必要がある。
○上記実施形態において、指示回路Iは、リセット信号Re(又は不正リセット信号Re1)の信号レベルが異なる状態に遷移するたびに、その遷移するタイミングを遅延させていた。この別例として、メインCPU22aの起動開始がハイレベル状態からローレベル状態に遷移するタイミングで行われるのであれば、リセット信号Reがハイレベル状態からローレベル状態に遷移するときだけ遅延させるようにしてもよい。また、メインCPU22aの起動開始がローレベル状態からハイレベル状態に遷移するタイミングで行われるのであれば、リセット信号Reがローレベル状態からハイレベル状態に遷移するときだけ遅延させるようにしてもよい。
○上記実施形態において、大当り判定用乱数は、最大値まで更新されると、最小値から継続して更新するようにしていたが、必ずしも最小値から継続して更新しなくても良い。例えば、「0」→「1」→…「630」→「100」→「101」→…といように、最大値の次に、最小値でない値から継続して更新しても良い。このようにすれば、大当りとなるタイミングを把握しにくくすることができ、不正を防止できる。
○上記実施形態では、指示回路Iが出力するリセット信号Reの信号レベルを遷移させるタイミングを決定するために、判定値を1ずつ加算していき、カウンタ値に達するか否か判定していたが、カウンタ値を1ずつ減算していき、カウンタ値が0になったか否かを判定するようにしても良い。
○上記実施形態では、外部クロック信号を出力する外部発振回路70を指示回路Iの外部に設けていたが、指示回路I及び遊技開始信号生成回路22eにそれぞれ設けても良い。このようにすれば、判定値の更新周期がより判別しにくくなり、不正を防止できる。
○上記実施形態では、内部クロック信号を生成、出力する発振回路53を指示回路I及び遊技開始信号生成回路22eに設けたが、指示回路I及び遊技開始信号生成回路22eの外部に発振回路53を設けても良い。
○上記実施形態では、バックアップ処理が実行可能に構成されていたが、バックアップ処理ができなくてもよい。この場合、電源遮断時には、必ず初期化処理がなされることとなる。
○上記実施形態では、RAMクリアスイッチ36及びRAMクリアスイッチ回路37を設けたが、設けなくても良い。
○上記実施形態では、メインCPU22aと、指示回路Iと、遊技開始信号生成回路22eは、外部発振回路70から同じ周期の外部クロック信号を入力していたが、メインCPU22aと、指示回路Iと、遊技開始信号生成回路22eは、異なる周期の信号をそれぞれ入力しても良い。このようにすれば、大当たり判定用乱数の更新周期と、判定値の更新周期とが非同期となる。そして、主制御基板22の外部からこれらの3つの異なる周期を把握することは、困難であるため、効果的に不正を防止できる。
○上記実施形態では、リセット信号Reの信号レベルがハイレベル状態のとき、リセット信号Re(又は不正リセット信号Re1)が入力(出力)されたとし、ローレベル状態のとき、リセット信号Re(又は不正リセット信号Re1)の入力(出力)が終了したとしていた。この別例として、リセット信号Reの信号レベルがローレベル状態のとき、リセット信号Re(又は不正リセット信号Re1)が入力(出力)されたとし、ハイレベル状態のとき、リセット信号Re(又は不正リセット信号Re1)の入力(出力)が終了したとしてもよい。同様に、遊技可能状態信号の信号レベルがローレベル状態のとき、遊技可能状態信が入力(出力)されたとし、ハイレベル状態のとき、遊技可能状態信号の入力(出力)が終了したとしてもよい。同様に、遊技開始の信号レベルがローレベル状態のとき、遊技開始信号が入力(出力)されたとし、ハイレベル状態のとき、遊技開始信号の入力(出力)が終了したとしてもよい。
○上記実施形態のタイマ割込み処理において、メインCPU22aは、遊技者の利益に直接かかわる乱数を更新するようにしても良い。例えば、大当り判定の当選確率が高確率となる確率変動状態が付与されるか否かを決定するための乱数(例えば、大当り図柄用乱数)や、開閉羽根を開放させるか否かを決定するための乱数や、大入賞口を開放させるための小当り遊技を付与するか否かを決定するための乱数などを更新しても良い。
○上記実施形態の待機時間乱数更新処理において、メインCPU22aは、リーチ演出を実行させるか否かを決定するためのリーチ判定用乱数などの乱数を更新するようにしても良い。
○上記実施形態では、パチンコ機にて採用したが、遊技機の一種であるパチンコ式スロットマシン(回胴式遊技機、以下、「パチスロ」と示す)に具体化してもよい。なお、パチスロは、遊技者がベット数(賭数)を設定した後、スタートレバーを操作して遊技(変動ゲーム)を開始させるとともにストップボタンの操作により図柄を停止させ、その停止した図柄の組み合わせが遊技媒体の払出条件を充足させる賞態様を形成した場合に遊技媒体であるメダルを遊技者に付与するゲーム性を有する。また、パチスロは、遊技(変動ゲーム)が開始してから賞として付与される遊技媒体の払い出しが完了するまでを一遊技単位として遊技(変動ゲーム)が行われる。
より詳しく説明すると、パチスロは、遊技機全体を制御する主制御基板と、前記主制御基板からの制御信号に基づき演出実行手段を制御する演出制御手段を備える。また、パチスロは、複数の図柄を表示する図柄表示手段(演出実行手段)を備える。また、パチスロは、遊技者が遊技媒体としてのコインのベット数(賭数)を選択手段にて予め定めた最小ベット数から最大ベット数の範囲で設定した後、前記図柄表示手段において前記図柄を変動させて行う1回の遊技(図柄変動ゲーム)を開始する際に、遊技者により操作され、1回の遊技の開始を指示する開始信号を出力する開始信号出力手段としてのスタートレバーを備える。
また、パチスロの主制御基板は、前記開始信号を入力したことに基づき当選役決定乱数の値を取得し、当該当選役決定乱数の値に基づき、予め定めた複数の当選役の中から抽選により当選役を決定する制御装置を備える。また、この制御装置は、前記開始信号を入力したことに基づき前記図柄の変動を開始させる図柄変動手段としての機能を備える。また、この制御装置は、遊技者による停止操作が行われることに基づいて、図柄表示手段で変動している図柄の変動の停止を指示する停止信号を出力する停止信号出力手段と、前記停止信号を入力したことに基づき変動している図柄を停止させる停止制御手段としての機能を備えている。
また、パチスロの制御装置は、予め定められた図柄表示手段の入賞ライン上に停止表示された図柄の組み合わせが当選役決定手段の決定した当選役に対応する図柄の組み合わせである場合に賞を付与するようになっている。さらに、パチスロの制御装置は、開始信号の入力を契機に取得した当選役決定乱数に基づき、予め定めた複数の当選役の中から抽選により当選役を決定し、決定した当選役が予め決められた当選役(ボーナス役)であるときに、予め定められた図柄表示手段の入賞ライン上に停止表示された図柄の組み合わせが決定した当選役に対応する図柄の組み合わせとなった場合、遊技者に有利な大当り遊技(ボーナス遊技)を付与するようになっている。
次に、上記実施形態及び別例から把握できる技術的思想を以下に追記する。
(イ)遊技機全体を制御する主制御基板と、前記主制御基板からの制御信号に基づき演出実行手段を制御する演出制御手段とを備えた遊技機において、前記主制御手段は、起動を指示する起動指示信号の入力を契機に起動し、起動してから当選役決定乱数の値を所定の周期毎に更新し、遊技演出に関する制御を開始した後、開始信号出力手段が操作されたことにより出力される遊技の開始を指示する開始信号の入力を契機に取得した当選役決定乱数に基づき、予め定めた複数の当選役の中から抽選により当選役を決定し、決定した当選役が予め決められた当選役であるときに、予め定められた図柄表示手段の入賞ライン上に停止表示された図柄の組み合わせが決定した当選役に対応する図柄の組み合わせとなった場合、大当り遊技を付与する制御装置と、前記制御装置が前記当選役決定乱数の更新を開始して遊技が可能である場合、ランダム化された待機時間を経過した後、遊技演出に関する制御の開始を前記制御装置に対して指示する不正防止手段を備えたことを特徴とする遊技機。
(ロ)前記制御装置は、前記当選役決定乱数の更新を開始して遊技が可能である場合、前記当選役決定乱数の更新を開始して遊技が可能であることを知らせる遊技可能状態信号を前記不正防止手段に出力する一方、当該不正防止手段から遊技演出に関する制御の開始を指示する遊技開始信号を入力したときに、前記演出制御手段に対して制御信号の出力を開始するように構成されており、前記不正防止手段は、前記遊技可能状態信号を入力したとき、ランダム化された待機時間を経過した後、前記遊技開始信号を制御装置に対して出力するように構成されていることを特徴とする技術的思想(イ)に記載の遊技機。
(ハ)前記制御装置は、前記当選役決定乱数が記憶されている記憶手段の記憶内容を消去した後、前記当選役決定乱数の更新を開始して遊技が可能となった場合に、当選役決定乱数の更新を開始して遊技が可能であることを知らせる遊技可能状態信号を前記不正防止手段に出力するようになっていることを特徴とする技術的思想(イ)又は(ロ)に記載の遊技機。
10…パチンコ遊技機(遊技機)、18…表示装置、21…電源基板、22…主制御基板、22a…メインCPU(制御装置)、22e…遊技開始信号遅延回路(第1の不正防止手段)、23…サブ制御基板、23a…サブCPU、24…電源回路、25…電源断監視回路、26…リセット信号回路、36…RAMクリアスイッチ、37…RAMクリアスイッチ回路、51…タイミングジェネレータ(タイミング指示回路)、52…遅延回路(出力手段)、53…発振回路(第1信号生成手段、第1発振回路)、54…第1カウンタ(更新手段)、55…レジスタ(取得手段)、56…第2カウンタ(計測手段)、60…分周回路、61…第3カウンタ、62…分割器、63…データセレクタ、64…選択切替器、70…外部発振回路(第2信号生成手段、第2発振回路)、K1…遊技可能状態信号、K2…遊技開始信号、I…指示回路(不正防止手段、第2の不正防止手段)、Re…リセット信号(起動指示信号)、Re1…不正リセット信号(起動指示信号)、S…電源断信号。