(57)【特許請求の範囲】
【請求項１】
検知信号に基づいて、変動表示可能であり、特定条件を満たしたときに、遊技者にとって有利な有利状態に制御可能な遊技機であって、
前記検知信号は、第１検知信号と、第２検知信号と、を含み、
数値データを更新する数値更新手段と、
前記検知信号の出力に基づいて、前記数値更新手段によって更新された数値データを数値データ格納領域に格納する数値データ格納手段と、
前記数値データ格納領域に数値データが格納された後、該格納されている数値データが読み出されるまでは、前記数値データ格納手段による新たな数値データの格納を制限して、該格納されている数値データを保持可能な数値データ保持手段と、
前記数値データ格納領域に格納されている数値データを読み出す数値データ読出手段と、
前記数値データ読出手段が読み出した数値データを用いて、前記有利状態に制御するか否かを決定する決定手段と、
前記第１検知信号に基づく前記変動表示であるか前記第２検知信号に基づく前記変動表示であるかに関わらず、前記変動表示の時間を計測するための共通の変動計時手段と、
制御データを記憶した不揮発性記憶手段と、
前記不揮発性記憶手段の記憶内容が変更されたか否かを検査するセキュリティチェック処理を含む所定の初期設定処理の実行期間を変化させる可変手段と、を備える、
ことを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パチンコ遊技機等の遊技機に関する。
【背景技術】
【０００２】
パチンコ遊技機は、遊技領域に打ち出された遊技球が始動入賞口に入賞したことを契機として大当たり抽選を行っており、該抽選の結果に当選することで大入賞口が一定期間断続的に開放される大当たり遊技状態に制御され（１回当たりの開放が１ラウンド）、遊技者にとっての有利な状態となる。大当たり抽選に当選したことは、特図ゲームと呼ばれる液晶表示器などの変動表示装置で図柄を変動表示させ、そこに所定の出目の図柄（一般的には、同一種類の図柄）を導出させることによって報知される。
【０００３】
大当り抽選処理では、例えば、ハードウェア構成された乱数生成回路の出力値が、大当り判定用の乱数値ＲＮＤとして使用され、これを大当り当選値Ｈｉｔと比較することで大当り状態か否かが決定される。
【０００４】
ここで、乱数生成回路を構成するカウンタやラッチは、電源投入時に強制的に電源リセットされるので、この点を悪用した不正遊技が懸念されるところである。すなわち、カウンタに供給される計数クロックΦの周波数や、大当り当選値Ｈｉｔの値は、遊技機を入手して調査すれば明らかとなるので、何らかの方法で遊技機を電源リセット状態にすると共に、カウンタの計数値が大当り当選値Ｈｉｔの値に一致するタイミングを狙って、コネクタ部から違法な入賞スイッチ信号を入力すれば、大当たり状態を意図的に発生できることになる。
【０００５】
そこで、電源リセット時においても遊技機毎に電源リセットタイミングを変えた遊技機、具体的には、電源リセット信号を生成する受動素子や能動素子の特性上のバラツキを活用することで、電源リセット動作にバラツキを生じさせた遊技機が提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２９５４９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、異なるタイミングで抽出された数値データを用いて、有利状態に制御するか否かの決定が行われることを防止することができる遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明にかかる遊技機は、
検知信号に基づいて、変動表示可能であり、特定条件を満たしたときに、遊技者にとって有利な有利状態（大当たり遊技状態）に制御可能な遊技機（パチンコ遊技機１）であって、
前記検知信号は、第１検知信号と、第２検知信号と、を含み、
数値データを更新する数値更新手段（乱数生成回路５５３、乱数列変更回路５５５）と、
前記検知信号の出力に基づいて、前記数値更新手段によって更新された数値データを数値データ格納領域（乱数値レジスタ５５９Ａ、５５９Ｂ）に格納する数値データ格納手段（乱数ラッチセレクタ５５８Ａ、５５８Ｂ）と、
前記数値データ格納領域に数値データが格納された後、該格納されている数値データが読み出されるまでは、前記数値データ格納手段による新たな数値データの格納を制限して、該格納されている数値データを保持可能な数値データ保持手段（新たな数値データのラッチの禁止）と、
前記数値データ格納領域に格納されている数値データを読み出す数値データ読出手段（ステップＳ１１０）と、
前記数値データ読出手段が読み出した数値データを用いて、前記有利状態に制御するか否かを決定する決定手段（ステップＳ１１０）と、
前記第１検知信号に基づく前記変動表示であるか前記第２検知信号に基づく前記変動表示であるかに関わらず、前記変動表示の時間を計測するための共通の変動計時手段と、
制御データを記憶した不揮発性記憶手段と、
前記不揮発性記憶手段の記憶内容が変更されたか否かを検査するセキュリティチェック処理を含む所定の初期設定処理の実行期間を変化させる可変手段と、を備える、
ことを特徴とする。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態にかかるパチンコ遊技機の正面図である。
【図２】図１のパチンコ遊技機に搭載された各種の制御基板などを示す構成図である。
【図３】電源基板の構成例を示すブロック図である。
【図４】リセット信号及び電源断信号の状態を模式的に示すタイミング図である。
【図５】遊技制御用マイクロコンピュータの構成例を示すブロック図である。
【図６】遊技制御用マイクロコンピュータにおけるアドレスマップの一例を示す図である。
【図７】プログラム管理エリア及び内蔵レジスタの主要部分を例示する図である。
【図８】ヘッダ及び機能設定における設定内容の一例を示す図である。
【図９】第１乱数初期設定、第２乱数初期設定及び割込み初期設定における設定内容の一例を示す図である。
【図１０】セキュリティ時間設定における設定内容の一例を示す図である。
【図１１】内部情報レジスタの構成例等を示す図である。
【図１２】主基板の側にてカウントされる乱数値を例示する説明図である。
【図１３】乱数回路の構成例を示すブロック図である。
【図１４】乱数列変更レジスタの構成例等を示す図である。
【図１５】乱数列変更回路による乱数更新規則の変更動作を示す説明図である。
【図１６】乱数列変更回路による乱数更新規則の変更動作を示す説明図である。
【図１７】乱数値取込レジスタの構成例等を示す図である。
【図１８】乱数ラッチ選択レジスタの構成例等を示す図である。
【図１９】乱数値レジスタの構成例を示す図である。
【図２０】乱数ラッチフラグレジスタの構成例等を示す図である。
【図２１】乱数割込み制御レジスタの構成例等を示す図である。
【図２２】入力ポートレジスタの構成例等を示す図である。
【図２３】特図表示結果判定テーブルの構成例を示す図である。
【図２４】大当り種別決定テーブルの構成例を示す図である。
【図２５】遊技制御用データ保持エリアの構成例を示すブロック図である。
【図２６】セキュリティチェック処理の一例を示すフローチャートである。
【図２７】遊技制御メイン処理の一例を示すフローチャートである。
【図２８】乱数回路設定処理の一例を示すフローチャートである。
【図２９】乱数回路異常検査処理の一例を示すフローチャートである。
【図３０】遊技制御用タイマ割込み処理の一例を示すフローチャートである。
【図３１】乱数チェック処理の一例を示すフローチャートである。
【図３２】乱数更新処理の一例を示すフローチャートである。
【図３３】特別図柄プロセス処理の一例を示すフローチャートである。
【図３４】始動入賞判定処理の一例を示すフローチャートである。
【図３５】始動入賞判定処理の一例を示すフローチャートである。
【図３６】乱数回路における動作を説明するためのタイミングチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【００１１】
図１は、本実施の形態におけるパチンコ遊技機の正面図であり、主要部材の配置レイアウトを示す。パチンコ遊技機（遊技機）１は、大別して、遊技盤面を構成する遊技盤（ゲージ盤）２と、遊技盤２を支持固定する遊技機用枠（台枠）３とから構成されている。遊技盤２には、ガイドレールによって囲まれた、ほぼ円形状の遊技領域が形成されている。この遊技領域には、遊技媒体としての遊技球が、図２に示す発射モータ６１を含む打球発射装置により発射されて打ち込まれる。
【００１２】
遊技盤２の所定位置（図１に示す例では、遊技領域の右側方）には、第１特別図柄表示装置４Ａと、第２特別図柄表示装置４Ｂとが設けられている。第１特別図柄表示装置４Ａと第２特別図柄表示装置４Ｂはそれぞれ、例えば７セグメントやドットマトリクスのＬＥＤ（発光ダイオード）等から構成され、可変表示ゲームの一例となる特図ゲームにおいて、各々が識別可能な複数種類の識別情報（特別識別情報）である特別図柄（「特図」ともいう）を、変動可能に表示（可変表示）する。例えば、第１特別図柄表示装置４Ａと第２特別図柄表示装置４Ｂはそれぞれ、「０」〜「９」を示す数字や「−」を示す記号等から構成される複数種類の特別図柄を可変表示する。
【００１３】
遊技盤２における遊技領域の中央付近には、画像表示装置５が設けられている。画像表示装置５は、例えばＬＣＤ（液晶表示装置）等から構成され、各種の演出画像を表示する表示領域を形成している。画像表示装置５の表示領域では、特図ゲームにおける第１特別図柄表示装置４Ａによる第１特図の可変表示や第２特別図柄表示装置４Ｂによる第２特図の可変表示のそれぞれに対応して、例えば３つといった複数に分割された可変表示部となる飾り図柄表示部にて、各々が識別可能な複数種類の識別情報（装飾識別情報）である飾り図柄を可変表示する。この飾り図柄の可変表示も、可変表示ゲームに含まれる。
【００１４】
一例として、画像表示装置５の表示領域には、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒが配置されている。そして、特図ゲームにおいて、第１特別図柄表示装置４Ａによる第１特図の可変表示と、第２特別図柄表示装置４Ｂによる第２特図の可変表示とのうち、いずれかの可変表示が開始されることに対応して、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒの全部において飾り図柄の可変表示（例えば上下方向あるいは左右方向のスクロール表示など）が開始される。その後、特図ゲームにおける可変表示結果として確定特別図柄が停止表示（完全停止表示）されるときに、画像表示装置５における「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて、飾り図柄の可変表示結果となる確定飾り図柄（最終停止図柄）が停止表示（完全停止表示）される。
【００１５】
「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて可変表示される飾り図柄には、例えば８種類の図柄（英数字「１」〜「８」あるいは漢数字「一」〜「八」、英文字「Ａ」〜「Ｈ」、所定のモチーフに関連する８個のキャラクタを示す演出画像、数字や文字あるいは記号とキャラクタとを組み合わせた演出画像などを適用することができる。飾り図柄のそれぞれには、対応する図柄番号が付されている。例えば、「１」〜「８」を示す英数字それぞれに対して、「１」〜「８」の図柄番号が付されている。
【００１６】
飾り図柄の変動中には、「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにおいて、例えば図柄番号が小さいものから大きいものへと順次に、上方から下方へ、あるいは、右側から左側へと、流れるようなスクロール表示が行われる。そして、図柄番号が最大（例えば「８」）である飾り図柄が表示されると、続いて図柄番号が最小（例えば「１」）である飾り図柄が表示される。
【００１７】
第１特別図柄表示装置４Ａ及び第２特別図柄表示装置４Ｂの上部には、可変表示の保留数（特図保留記憶数）を特定可能に表示するための第１保留表示器２５Ａと第２保留表示器２５Ｂとが設けられている。ここで、可変表示の保留は、普通入賞球装置６Ａが形成する第１始動入賞口や普通可変入賞球装置６Ｂが形成する第２始動入賞口に遊技球が進入（始動入賞）したときに発生する。すなわち、特図ゲームや飾り図柄の可変表示といった可変表示ゲームを実行するための始動条件（「実行条件」ともいう）は成立したが、先に成立した開始条件に基づく可変表示ゲームが実行中であることやパチンコ遊技機１が大当り遊技状態に制御されていることなどにより、可変表示ゲームを開始するための開始条件は成立していないときに、成立した始動条件に対応する可変表示の保留が行われる。第１保留表示器２５Ａは、普通入賞球装置６Ａが形成する第１始動入賞口に進入した有効始動入賞球数としての第１保留記憶数を特定可能に表示する。第２保留表示器２５Ｂは、普通可変入賞球装置６Ｂが形成する第２始動入賞口に進入した有効始動入賞球数としての第２保留記憶数を特定可能に表示する。第１保留表示器２５Ａと第２保留表示器２５Ｂはそれぞれ、例えば第１保留記憶数と第２保留記憶数のそれぞれにおける上限値（例えば「４」）に対応した個数（例えば４個）のＬＥＤを含んで構成されている。
【００１８】
画像表示装置５の下方には、普通入賞球装置６Ａと、普通可変入賞球装置６Ｂとが設けられている。普通入賞球装置６Ａは、例えば所定の玉受部材によって常に一定の開放状態に保たれる第１始動入賞口を形成する。普通可変入賞球装置６Ｂは、図２に示す普通電動役物用のソレノイド８１によって垂直位置となる通常開放状態と傾動位置となる拡大開放状態とに変化する一対の可動翼片を有する電動チューリップ型役物（普通電動役物）を備え、第２始動入賞口を形成する。一例として、普通可変入賞球装置６Ｂでは、普通電動役物用のソレノイド８１がオフ状態であるときに可動翼片が垂直位置となることにより、遊技球が第２始動入賞口に進入しにくい通常開放状態となる。その一方で、普通可変入賞球装置６Ｂでは、普通電動役物用のソレノイド８１がオン状態であるときに可動翼片が傾動位置となることにより、遊技球が第２始動入賞口に進入しやすい拡大開放状態となる。
【００１９】
普通入賞球装置６Ａに形成された第１始動入賞口に進入した遊技球は、例えば図２に示す第１始動口スイッチ２２Ａによって検出される。普通可変入賞球装置６Ｂに形成された第２始動入賞口に進入した遊技球は、例えば図２に示す第２始動口スイッチ２２Ｂによって検出される。第１始動口スイッチ２２Ａによって遊技球が検出されたことに基づき、所定個数（例えば３個）の遊技球が賞球として払い出され、第１保留記憶数が所定の上限値（例えば「４」）以下であれば、第１始動条件が成立する。第２始動口スイッチ２２Ｂによって遊技球が検出されたことに基づき、所定個数（例えば３個）の遊技球が賞球として払い出され、第２保留記憶数が所定の上限値以下であれば、第２始動条件が成立する。
【００２０】
普通入賞球装置６Ａと普通可変入賞球装置６Ｂの下方には、特別可変入賞球装置７が設けられている。特別可変入賞球装置７は、図２に示す大入賞口扉用のソレノイド８２によって開閉駆動される大入賞口扉を備え、その大入賞口扉によって開放状態（第１状態）と閉鎖状態（第２状態）とに変化する大入賞口を形成する。一例として、特別可変入賞球装置７では、大入賞口扉用のソレノイド８２がオフ状態であるときに大入賞口扉が大入賞口を閉鎖状態にする。その一方で、特別可変入賞球装置７では、大入賞口扉用のソレノイド８２がオン状態であるときに大入賞口扉が大入賞口を開放状態にする。特別可変入賞球装置７に形成された大入賞口に進入した遊技球は、例えば図２に示すカウントスイッチ２３によって検出される。カウントスイッチ２３によって遊技球が検出されたことに基づき、所定個数（例えば１３個）の遊技球が賞球として払い出される。
【００２１】
遊技盤２の所定位置（図１に示す例では、遊技領域の左側方）には、普通図柄表示器２０が設けられている。一例として、普通図柄表示器２０は、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂと同様に７セグメントやドットマトリクスのＬＥＤ等から構成され、特別図柄とは異なる複数種類の識別情報である普通図柄（「普図」あるいは「普通図」ともいう）を変動可能に表示（可変表示）する。このような普通図柄の可変表示は、普図ゲーム（「普通図ゲーム」ともいう）と称される。普通図柄表示器２０は、例えば「０」〜「９」を示す数字や「−」を示す記号等から構成される複数種類の普通図柄を可変表示する。複数種類の普通図柄には、それぞれに対応した図柄番号が付されている。普通図柄表示器２０の上方には、普図保留表示器２５Ｃが設けられている。普図保留表示器２５Ｃは、例えば４個のＬＥＤを含んで構成され、通過ゲート４１を通過した有効通過球数としての普図保留記憶数を表示する。
【００２２】
遊技盤２の表面には、上記の構成以外にも、遊技球の流下方向や速度を変化させる風車及び多数の障害釘が設けられている。また、第１始動入賞口、第２始動入賞口及び大入賞口とは異なる入賞口として、例えば所定の玉受部材によって常に一定の開放状態に保たれる一般入賞口が１つ又は複数設けられてもよい。この場合には、一般入賞口のいずれかに進入した遊技球が所定の一般入賞球スイッチによって検出されたことに基づき、所定個数（例えば１０個）の遊技球が賞球として払い出されればよい。遊技領域の最下方には、いずれの入賞口にも進入しなかった遊技球が取り込まれるアウト口が設けられている。遊技機用枠３の左右上部位置には、効果音等を再生出力するためのスピーカ８Ｌ、８Ｒが設けられており、さらに遊技領域周辺部には、遊技効果ランプ９が設けられている。パチンコ遊技機１の遊技領域における各構造物（例えば普通入賞球装置６Ａ、普通可変入賞球装置６Ｂ、特別可変入賞球装置７等）の周囲には、装飾用ＬＥＤが配置されていてもよい。
【００２３】
遊技機用枠３の右下部位置には、遊技媒体としての遊技球を遊技領域に向けて発射するために遊技者等によって操作される打球操作ハンドルとなる操作ノブ３０が設けられている。例えば、遊技者等による操作量（回転量）に応じて遊技球の弾発力を調整する。遊技領域の下方における遊技機用枠３の所定位置には、賞球として払い出された遊技球や所定の球貸機により貸し出された遊技球を、打球発射装置へと供給可能に保持（貯留）する打球供給皿（上皿）が設けられている。例えば打球供給皿の上面における手前側の中央位置といった、パチンコ遊技機１の遊技機用枠３における所定位置には、押下操作などにより遊技者が操作可能な操作ボタンが設置されていてもよい。また、打球供給皿の下方には、打球供給皿に収容不能となった遊技球を保持（貯留）する余剰球受皿（下皿）が設けられている。
【００２４】
さらに、パチンコ遊技機１に隣接する所定位置には、プリペイドカード等を用いた球貸しを可能にするための処理が実行されるプリペイドカードユニット（カードユニット）が設置されてもよい。
【００２５】
普通図柄表示器２０による普図ゲームは、遊技領域に設けられた通過ゲート４１を通過した遊技球が図２に示すゲートスイッチ２１によって検出されたことといった、普通図柄表示器２０にて普通図柄の可変表示を実行するための普図始動条件が成立した後に、例えば前回の普図ゲームが終了したことといった、普通図柄の可変表示を開始するための普図開始条件が成立したことに基づいて、開始される。この普図ゲームでは、普通図柄の変動を開始させた後、所定の可変表示時間が経過すると、普通図柄の可変表示結果となる確定普通図柄を完全停止表示する。普通図柄の可変表示時間は、例えば各普図ゲームの開始時に、所定の乱数値を示す数値データを抽出することなどにより、複数種類の可変表示時間のうちで、いずれかに決定されればよい。普図ゲームにおける普通図柄の可変表示結果となる確定普通図柄として、例えば「７」を示す数字といった、特定の普通図柄（普図当り図柄）が停止表示されれば、普通図柄の可変表示結果が「普図当り」となる。その一方、確定普通図柄として、例えば「７」を示す数字以外の数字や記号といった、普図当り図柄以外の普通図柄が停止表示されれば、普通図柄の可変表示結果が「普図ハズレ」となる。普通図柄の可変表示結果が「普図当り」となったことに対応して、普通可変入賞球装置６Ｂを構成する電動チューリップの可動翼片が傾動位置となる拡大開放制御が行われ、所定時間が経過すると垂直位置に戻る通常開放制御が行われる。
【００２６】
第１特別図柄表示装置４Ａによる特図ゲームは、普通入賞球装置６Ａに形成された第１始動入賞口に進入した遊技球が図２に示す第１始動口スイッチ２２Ａによって検出されたことなどにより第１始動条件が成立した後に第１開始条件が成立したことに基づいて、開始される。第１開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第１特図を用いた今回の特図ゲームが開始可能となることにより成立する。第２特別図柄表示装置４Ｂによる特図ゲームは、普通可変入賞球装置６Ｂに形成された第２始動入賞口に進入した遊技球が図２に示す第２始動口スイッチ２２Ｂによって検出されたことなどにより第２始動条件が成立した後に第２開始条件が成立したことに基づいて、開始される。第２開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第２特図を用いた今回の特図ゲームが開始可能となることにより成立する。
【００２７】
第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂによる特図ゲームでは、特別図柄の可変表示を開始させた後、所定の可変表示時間が経過すると、特別図柄の可変表示結果となる確定特別図柄を完全停止表示する。特別図柄の可変表示時間は、各特図ゲームの開始時に決定された変動パターンに対応して、複数種類の可変表示時間のうちで、いずれかに決定される。特図ゲームにおける特別図柄の可変表示結果となる確定特別図柄として、特定の特別図柄（大当り図柄）が停止表示されれば、特定表示結果としての「大当り」となり、大当り図柄とは異なる所定の特別図柄（小当り図柄）が停止表示されれば、所定表示結果としての「小当り」となり、大当り図柄や小当り図柄以外の特別図柄（ハズレ図柄）が停止表示されれば、非特定表示結果としての「ハズレ」となる。特図ゲームでの可変表示結果が「大当り」になった後には、特定遊技状態としての大当り遊技状態に制御される。また、特図ゲームでの可変表示結果が「小当り」になった後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この実施の形態におけるパチンコ遊技機１では、一例として、「１」、「３」、「７」を示す数字を大当り図柄とし、「５」を示す数字を小当り図柄とし、「−」を示す記号をハズレ図柄としている。
【００２８】
この実施の形態では、大当り図柄となる「１」、「３」、「７」の数字を示す特別図柄のうち、「３」、「７」の数字を示す特別図柄を１５ラウンド大当り図柄とし、「１」の数字を示す特別図柄を２ラウンド大当り図柄とする。特図ゲームにおける確定特別図柄として１５ラウンド大当り図柄が停止表示された後に制御される第１特定遊技状態としての大当り遊技状態（１５ラウンド大当り状態）では、特別可変入賞球装置７の開閉板が、第１期間となる所定期間（例えば２９秒間）あるいは所定個数（例えば９個）の入賞球が発生するまでの期間にて大入賞口を開放状態とすることにより、特別可変入賞球装置７を遊技者にとって有利な第１状態に変化させるラウンドが実行される。こうしてラウンド中に大入賞口を開放状態とした開閉板は、遊技盤２の表面を落下する遊技球を受け止め、その後に大入賞口を閉鎖状態とすることにより、特別可変入賞球装置７を遊技者にとって不利な第２状態に変化させて、１回のラウンドを終了させる。１５ラウンド大当り状態では、大入賞口の開放サイクルであるラウンドの実行回数が、第１回数（例えば「１５」）となる。
【００２９】
特図ゲームにおける確定特別図柄として２ラウンド大当り図柄が停止表示された後に制御される第２特定遊技状態としての大当り遊技状態（２ラウンド大当り状態）では、各ラウンドで特別可変入賞球装置７を遊技者にとって有利な第１状態に変化させる期間（開閉板により大入賞口を開放状態とする期間）が、１５ラウンド大当り状態における第１期間よりも短い第２期間（例えば０．５秒間）となる。また、２ラウンド大当り状態では、ラウンドの実行回数が、１５ラウンド大当り状態における第１回数よりも少ない第２回数（例えば「２」）となる。
【００３０】
また、１５ラウンド大当り図柄となる「３」、「７」の数字を示す特別図柄のうち、「３」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく１５ラウンド大当り状態が終了した後には、特別遊技状態の１つとして、通常状態に比べて特図ゲームにおける特別図柄の変動時間（特図変動時間）が短縮される時短状態に制御される。ここで、通常状態とは、大当り遊技状態等の特定遊技状態や時短状態等の特別遊技状態以外の遊技状態のことであり、パチンコ遊技機１の初期設定状態（例えばシステムリセットが行われた場合のように、電源投入後に初期化処理を実行した状態）と同一の制御が行われる。時短状態は、所定回数（例えば１００回）の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了すればよい。こうした「３」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に時短状態や通常状態に制御される１５ラウンド大当り図柄は、通常大当り図柄（「非確変大当り図柄」ともいう）と称される。特図ゲームにおける確定特別図柄が通常大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「通常」（「通常大当り」ともいう）の可変表示態様（「大当り種別」ともいう）と称される。
【００３１】
１５ラウンド大当り図柄となる「３」、「７」の数字を示す特別図柄のうち、「７」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく１５ラウンド大当り状態が終了した後や、２ラウンド大当り図柄となる「１」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく２ラウンド大当り状態が終了した後には、時短状態とは異なる特別遊技状態の１つとして、例えば通常状態に比べて特図変動時間が短縮されるとともに、継続して確率変動制御（確変制御）が行われる確変状態（高確率遊技状態）に制御される。この確変状態では、各特図ゲームや飾り図柄の可変表示において、可変表示結果が「大当り」となって更に大当り遊技状態に制御される確率が、通常状態よりも高くなるように向上する。このような確変状態は、特図ゲームの実行回数に関わりなく、次に可変表示結果が「大当り」となるまで継続してもよい。これに対して、確変状態となった後に、所定回数（例えば１００回）の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了するようにしてもよい。また、確変状態において所定回数の特図ゲームが実行されたり可変表示結果が「大当り」となる以前であっても、特図ゲームが開始されるときに、所定の割合で確変状態が終了することがあるようにしてもよい。
【００３２】
「７」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される１５ラウンド大当り図柄は、確変大当り図柄と称される。特図ゲームにおける確定特別図柄が確変大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「確変」（「確変大当り」ともいう）の可変表示態様（「大当り種別」ともいう）と称される。「１」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される２ラウンド大当り図柄は、突確大当り図柄と称される。特図ゲームにおける確定特別図柄が突確大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」（「突確大当り」あるいは「突然確変大当り」ともいう）の可変表示態様（「大当り種別」ともいう）と称される。
【００３３】
確変状態や時短状態では、普通図柄表示器２０による普図ゲームにおける普通図柄の可変表示時間を通常状態のときよりも短くする制御や、各回の普図ゲームで普通図柄の可変表示結果が「普図当り」となる確率を通常状態のときよりも向上させる制御、可変表示結果が「普図当り」となったことに基づく普通可変入賞球装置６Ｂにおける可動翼片の傾動時間を通常状態のときよりも長くする制御、その傾動回数を通常状態のときよりも増加させる制御といった、第２始動入賞口に遊技球が進入する可能性を高めて第２始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われる。
【００３４】
特図ゲームにおける確定特別図柄として小当り図柄が停止表示された後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この小当り遊技状態では、２ラウンド大当り状態と同様に特別可変入賞装置７を遊技者にとって有利な第１状態に変化させる可変入賞動作が行われる。すなわち、小当り遊技状態では、例えば特別可変入賞球装置７が備える開閉板により大入賞口を第２期間にわたり開放状態とする動作が、第２回数に達するまで繰り返し実行される。小当り遊技状態が終了した後には、遊技状態の変更が行われず、可変表示結果が「小当り」となる以前の遊技状態に継続して制御されることになる。ただし、可変表示結果が「小当り」となる可変表示ゲームに対応して、時短状態を終了する旨の判定がなされた場合には、小当り遊技状態の終了後に、通常状態へと制御されることになる。
【００３５】
画像表示装置５の表示画面では、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂによる特別図柄の可変表示に対応して、飾り図柄の可変表示が行われる。すなわち、画像表示装置５の表示画面では、第１開始条件と第２開始条件のいずれか一方が成立したことに基づいて、例えば「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒにおける全部にて飾り図柄の加速表示（全図柄加速表示）を行い、所定速度に達すれば、飾り図柄の定速表示（全図柄定速表示）を行う。こうした全図柄加速表示や全図柄定速表示は、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒの全部にて飾り図柄を可変表示する全図柄変動に含まれる。こうした全図柄変動の後、例えば「左」→「右」→「中」といった所定順序で飾り図柄の減速表示（各図柄減速表示）を行い、変動速度が「０」となれば、飾り図柄を停留して表示する一方で、例えば微少な揺れや伸縮などを生じさせる仮停止表示を行う。そして、飾り図柄の可変表示を開始してからの経過時間が変動パターンなどに基づいて決定された可変表示時間に達したときには、可変表示結果となる確定飾り図柄を完全停止表示する。
【００３６】
全図柄変動が開始された後には、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒのうち全部又は一部の飾り図柄表示部にて、飾り図柄をリーチ表示状態で導出表示することがある。ここで、リーチ表示状態とは、画像表示装置５の表示画面にて導出表示された飾り図柄が大当り組合せの一部を構成しているときに未だ導出表示されていない飾り図柄（「リーチ変動図柄」ともいう）については変動が継続している表示状態、あるいは、全部又は一部の飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態のことである。具体的には、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒにおける一部（例えば「左」及び「右」の飾り図柄表示部５Ｌ、５Ｒなど）では予め定められた大当り組合せを構成する飾り図柄（例えば「７」の英数字を示す飾り図柄）が導出表示されているときに未だ導出表示されていない残りの飾り図柄表示部（例えば「中」の飾り図柄表示部５Ｃなど）では飾り図柄が変動している表示状態、あるいは、「左」、「中」、「右」の飾り図柄表示部５Ｌ、５Ｃ、５Ｒにおける全部又は一部で飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態である。また、リーチ表示状態となったことに対応して、画像表示装置５の表示画面に飾り図柄とは異なるアニメーション画像や実写画像といった演出画像を表示させたり、背景画像の表示態様を変化させたり、飾り図柄の変動態様を変化させたりすることがある。このような演出画像の表示や背景画像の表示態様の変化、飾り図柄の変動態様の変化を、リーチ演出表示（あるいは単にリーチ演出）という。リーチ演出の中には、それが出現すると、通常のリーチ演出（ノーマルリーチ）に比べて大当りが発生しやすい（高い確率で大当りとなる）ように設定されたものがある。このような特別のリーチ演出を、スーパーリーチ演出（あるいは単に「スーパーリーチ」）ともいう。
【００３７】
また、飾り図柄の可変表示中には、リーチ演出とは異なり、飾り図柄がリーチ状態で導出表示される可能性があることや、可変表示結果が「大当り」となる可能性があることを、飾り図柄の可変表示態様などにより遊技者に報知するための特定演出が実行されることがある。この実施の形態では、「滑り」、「擬似連」、「イントロ」、「発展チャンス目」、「発展チャンス目終了」といった特定演出が実行可能に設定されている。なお、これらの特定演出は、本発明とは直接の関係がないため、詳細な説明を省略する。
【００３８】
さらに、飾り図柄の可変表示中には、リーチ演出や特定演出とは異なり、例えば所定のキャラクタ画像やメッセージ画像を表示することなどといった、飾り図柄の可変表示態様以外の表示態様により、飾り図柄の可変表示状態がリーチ状態となる可能性があることや、可変表示結果が「大当り」となる可能性があることを、遊技者に報知するための予告演出が実行されることがある。例えば、「キャラクタ表示」、「ステップアップ画像」、「背景変更」といった予告演出が実行可能に設定されていればよい。これらの予告演出についても、本発明とは直接の関係がないため、詳細な説明を省略する。
【００３９】
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態とならずに、所定の非リーチ組合せとなる確定飾り図柄や、複数種類の発展チャンス目のいずれかとなる確定飾り図柄が、停止表示されることがある。このような飾り図柄の可変表示態様は、可変表示結果が「ハズレ」となる場合における「非リーチ」（「通常ハズレ」ともいう）の可変表示態様と称される。
【００４０】
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態となったことに対応して、リーチ演出が実行された後に、あるいは、リーチ演出が実行されずに、所定のリーチハズレ組合せとなる確定飾り図柄が停止表示されることがある。このような飾り図柄の可変表示結果は、可変表示結果が「ハズレ」となる場合における「リーチ」（「リーチハズレ」ともいう）の可変表示態様と称される。
【００４１】
特図ゲームにおける確定特別図柄として、１５ラウンド大当り図柄となる特別図柄のうち通常大当り図柄である「３」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後に、所定の通常大当り組合せとなる確定飾り図柄が停止表示される。ここで、通常大当り組合せとなる確定飾り図柄は、例えば画像表示装置５における「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて可変表示される図柄番号が「１」〜「８」の飾り図柄のうち、図柄番号が偶数「２」、「４」、「６」、「８」である飾り図柄のいずれか１つが、「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて所定の有効ライン上に揃って停止表示されるものであればよい。このように通常大当り組合せを構成する図柄番号が偶数「２」、「４」、「６」、「８」である飾り図柄は、通常図柄（「非確変図柄」ともいう）と称される。そして、特図ゲームにおける確定特別図柄が通常大当り図柄となることに対応して、所定のリーチ演出が実行された後に、通常大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「通常」（「通常大当り」ともいう）の可変表示態様（大当り種別ともいう）と称される。こうして「通常」の可変表示態様により可変表示結果が「大当り」となった後には、１５ラウンド大当り遊技状態に制御され、その１５ラウンド大当り状態が終了すると、時短状態又は通常状態に制御されることになる。
【００４２】
特図ゲームにおける確定特別図柄として、１５ラウンド大当り図柄となる特別図柄のうち確変大当り図柄である「７」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、大当り種別が「通常」である場合と同様のリーチ演出が実行された後に、所定の確変大当り組合せとなる確定飾り図柄が停止表示されることがある。ここで、確変大当り組合せとなる確定飾り図柄は、例えば画像表示装置５における「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて可変表示される図柄番号が「１」〜「８」の飾り図柄のうち、図柄番号が奇数「１」、「３」、「５」、「７」である飾り図柄のいずれか１つが、「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて所定の有効ライン上に揃って停止表示されるものであればよい。このように確変大当り組合せを構成する図柄番号が奇数「１」、「３」、「５」、「７」である飾り図柄は、確変図柄と称される。そして、特図ゲームにおける確定特別図柄が確変大当り図柄となることに対応して、リーチ演出が実行された後に、確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「第１確変」の可変表示態様（大当り種別ともいう）と称される。こうして「第１確変」の可変表示態様により可変表示結果が「大当り」となった後には、１５ラウンド大当り状態に制御され、その１５ラウンド大当り状態が終了すると、確変状態に制御されることになる。
【００４３】
特図ゲームにおける確定特別図柄として、１５ラウンド大当り図柄となる特別図柄のうち確変大当り図柄である「７」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、可変表示態様が「通常」である場合とは異なるリーチ演出が実行された後に、所定の確変大当り組合せとなる確定飾り図柄が停止表示されることがある。このように特図ゲームにおける確定特別図柄が確変大当り図柄となることに対応して、飾り図柄の可変表示態様が「通常」である場合とは異なるリーチ演出が実行された後に、確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「第２確変」の可変表示態様（大当り種別ともいう）と称される。こうして「第２確変」の可変表示態様により可変表示結果が「大当り」となった後には、１５ラウンド大当り状態に制御され、その１５ラウンド大当り状態が終了すると、確変状態に制御されることになる。
【００４４】
特図ゲームにおける確定特別図柄として、１５ラウンド大当り図柄となる特別図柄のうち確変大当り図柄である「７」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、飾り図柄の可変表示態様が「通常」である場合と同様のリーチ演出が実行された後に、通常大当り組合せの確定飾り図柄が停止表示されることがある。このように特図ゲームにおける確定特別図柄が確変大当り図柄となることに対応して、飾り図柄の可変表示態様が「通常」である場合と同様のリーチ演出が実行された後に、通常大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「第３確変」の可変表示態様（大当り種別ともいう）と称される。こうして「第３確変」の可変表示態様により可変表示結果が「大当り」となった後には、１５ラウンド大当り状態に制御され、その１５ラウンド大当り状態が終了すると、確変状態に制御されることになる。
【００４５】
このように、可変表示結果が「大当り」となるときの大当り種別が「第１確変」や「第２確変」である場合には、飾り図柄の可変表示にて確変大当り組合せとなる確定飾り図柄が停止表示されることで、１５ラウンド大当り状態に制御された後に確変状態となることが確定する。その一方で、可変表示結果が「大当り」となるときの大当り種別が「第３確変」である場合には、大当り種別が「通常」となる場合と同様に、飾り図柄の可変表示にて通常大当り組合せとなる確定飾り図柄が停止表示される。そのため、大当り種別が「第３確変」である場合には、確変状態となるか否かを、飾り図柄の可変表示結果からは遊技者が認識することはできない。すなわち、確変大当り組合せとなる確定飾り図柄は、大当り遊技状態に制御されることが確定する特定表示結果に含まれるとともに、確変状態に制御されることが確定する特別表示結果に含まれる。その一方で、通常大当り組合せとなる確定飾り図柄は、確変状態に制御されることが確定しない特別表示結果以外の特定表示結果（非特別表示結果）に含まれる。
【００４６】
特図ゲームにおける確定特別図柄として、２ラウンド大当り図柄となる「１」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態とならずに、所定の非リーチ組合せとなる確定飾り図柄が停止表示されることや、複数種類の発展チャンス目のいずれかとなる確定飾り図柄が停止表示されること、あるいは、複数種類の突確チャンス目として予め定められた飾り図柄の組合せのいずれかとなる確定飾り図柄が停止表示されることがある。また、特図ゲームにおける確定特別図柄として、２ラウンド大当り図柄となる「１」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後に、所定のリーチハズレ組合せとなる確定飾り図柄が停止表示されることがある。このように特図ゲームにおける確定特別図柄が２ラウンド大当り図柄である「１」の数字を示す特別図柄となることに対応して、各種の確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」（「突確大当り」あるいは「突然確変大当り」ともいう）の可変表示態様（大当り種別ともいう）と称される。こうして「突確」の可変表示態様により可変表示結果が「大当り」となった後には、２ラウンド大当り状態に制御され、その２ラウンド大当り状態が終了すると、確変状態に制御されることになる。
【００４７】
特図ゲームにおける確定特別図柄として、小当り図柄となる「５」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示態様が「突確」である場合と同様にして飾り図柄の可変表示が行われた後、所定の非リーチ組合せとなる確定飾り図柄が停止表示されることや、複数種類の発展チャンス目のいずれかとなる確定飾り図柄が停止表示されること、あるいは、所定のリーチハズレ組合せとなる確定飾り図柄が停止表示されることがある。このように特図ゲームにおける確定特別図柄が小当り図柄である「５」の数字を示す特別図柄となることに対応して、各種の確定飾り図柄が停止表示される飾り図柄の可変表示態様は、「小当り」の可変表示態様（小当り種別ともいう）と称される。ここで、複数種類の突確チャンス目のいずれかとなる確定飾り図柄は、飾り図柄の可変表示態様が「突確」となる場合に限り停止表示され、可変表示態様が「小当り」となる場合などには確定飾り図柄として停止表示されない。すなわち、飾り図柄の可変表示にて突確チャンス目となる確定飾り図柄が停止表示された場合には、「突確」の可変表示態様により可変表示結果が「大当り」となることが確定する。可変表示結果が「小当り」となった後には、２ラウンド大当り状態と同様の可変入賞動作が行われる小当り遊技状態に制御され、その小当り遊技状態が終了すると、遊技状態が変更されないことから、可変表示結果が「小当り」となる以前の遊技状態が継続する。なお、可変表示結果が「小当り」となる可変表示ゲームに対応して、確変状態や時短状態を終了する旨の判定がなされた場合には、小当り遊技状態の終了後に、通常状態へと制御されることになる。
【００４８】
可変表示結果が「大当り」となるときの大当り種別が「通常」、「第１確変」、「第３確変」のいずれかである場合には、飾り図柄の可変表示中に、特定変動表示としての変動中昇格演出が実行されることがある。変動中昇格演出では、画像表示装置５における「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒの有効ライン上に通常大当り組合せとなる飾り図柄を仮停止表示させた後に、例えば「左」、「中」、「右」の各飾り図柄表示部５Ｌ、５Ｃ、５Ｒにて同一の飾り図柄が揃った状態で再び変動させ、確変大当り組合せとなる飾り図柄と、通常大当り組合せとなる飾り図柄のうちいずれかを、確定飾り図柄として停止表示（最終停止表示）させる。ここで、飾り図柄の可変表示態様が「通常」や「第３確変」であることに対応して変動中昇格演出が実行される場合には、その変動中昇格演出として、仮停止表示させた飾り図柄を再変動させた後に通常大当り組合せとなる確定飾り図柄を停止表示する変動中昇格失敗演出が行われる。これに対して、可変表示態様が「第１確変」であることに対応して変動中昇格演出が実行される場合には、その変動中昇格演出として、仮停止表示させた飾り図柄を再変動させた後に確変大当り組合せとなる確定飾り図柄を停止表示する変動中昇格成功演出が行われる。
【００４９】
可変表示結果が「大当り」となるときの大当り種別が「通常」と「第３確変」のいずれかである場合には、可変表示結果が停止表示されてから、１５ラウンド大当り状態に制御された後、その１５ラウンド大当り状態が終了するまでの期間にて、確変状態に制御するか否かの報知演出としての大当り中昇格演出が実行される。
【００５０】
大当り中昇格演出には、確定飾り図柄が通常大当り組合せであるにもかかわらず遊技状態が確変状態となる昇格がある旨を報知する大当り中昇格成功演出と、確変状態となる昇格がない旨を報知する大当り中昇格失敗演出とがある。一例として、大当り中昇格演出では、画像表示装置５の表示領域にて飾り図柄を可変表示させ、通常図柄と、確変図柄のうちいずれかを、演出表示結果として停止表示させる。このとき、大当り中昇格失敗演出では通常図柄を演出表示結果として停止表示させる一方、大当り中昇格成功演出では確変図柄を演出表示結果として停止表示させればよい。
【００５１】
パチンコ遊技機１には、例えば図２に示すような電源基板１０、主基板１１、演出制御基板１２、音声制御基板１３、ランプ制御基板１４、払出制御基板１５、発射制御基板１７といった、各種の制御基板が搭載されている。また、パチンコ遊技機１には、主基板１１と演出制御基板１２との間で伝送される各種の制御信号を中継するための中継基板１８なども搭載されている。その他、パチンコ遊技機１の背面には、例えば情報端子基板やインタフェース基板などといった、各種の制御基板が配置されている。インタフェース基板は、パチンコ遊技機１に隣接してカードユニットが設置される場合に、払出制御基板１５とカードユニットとの間に介在する制御基板である。
【００５２】
電源基板１０は、主基板１１、演出制御基板１２、払出制御基板１５等の各制御基板と独立して設置され、パチンコ遊技機１内の各制御基板及び機構部品が使用する電圧を生成する。例えば、電源基板１０では、図３に示すように、ＡＣ２４Ｖ、ＶＬＰ（直流＋２４Ｖ）、ＶＳＬ（直流＋３０Ｖ）、ＶＤＤ（直流＋１２Ｖ）、ＶＣＣ（直流＋５Ｖ）及びＶＢＢ（直流＋５Ｖ）を生成する。電源基板１０は、例えば図３に示すように、変圧回路３０１と、直流電圧生成回路３０２と、電源監視回路３０３と、クリアスイッチ３０４とを備えて構成されている。加えて、電源基板１０には、パチンコ遊技機１内の各制御基板及び機構部品への電力供給を実行又は遮断するための電源スイッチが設けられている。
【００５３】
図３に示すように、変圧回路３０１から出力されたＡＣ２４Ｖは、例えば所定のコネクタや電源ラインを介して、払出制御基板１５へと伝送される。ＶＬＰは、例えば所定のコネクタや電源ラインを介して、ランプ制御基板１４へと伝送される。ＶＳＬ、ＶＤＤ及びＶＣＣは、例えば所定のコネクタや電源ラインを介して、主基板１１、ランプ制御基板１４及び払出制御基板１５へと伝送される。ＶＢＢは、例えば所定のコネクタや電源ラインを介して、主基板１１及び払出制御基板１５へと伝送される。
【００５４】
電源監視回路３０３は、例えば停電監視リセットモジュールＩＣを用いて構成され、電源断信号を出力する電源監視手段を実現する回路である。例えば、電源監視回路３０３は、パチンコ遊技機１において用いられる所定電圧（一例としてＶＬＰ）が所定値（一例として＋２０Ｖ）以下になった期間が、予め決められている時間（一例として５６ミリ秒）以上継続したときに、電源断信号を出力する。電源監視回路３０３から出力された電源断信号は、例えば電源基板１０に搭載された出力ドライバ回路によって増幅された後に所定のコネクタや信号ラインを介して、払出制御基板１５へと伝送され、払出制御基板１５から主基板１１へと伝送される。
【００５５】
パチンコ遊技機１への電力供給が停止するときには、電源監視回路３０３が、電源断信号を出力（ローレベルに設定）してから所定期間が経過したときに、リセット信号を出力（ローレベルに設定）する。ここでの所定期間は、例えば図２に示す主基板１１に搭載されている遊技制御用マイクロコンピュータ１００及び払出制御基板１５に搭載されている払出制御用マイクロコンピュータ１５０が、所定の電源断処理を実行するのに十分な時間であればよい。すなわち、電源監視回路３０３は、停電信号としての電源断信号を出力した後、遊技制御用マイクロコンピュータ１００及び払出制御用マイクロコンピュータ１５０が所定の電源断処理を実行完了してから、動作停止信号としてのリセット信号を出力（ローレベルに設定）する。電源監視回路３０３から出力されたリセット信号を受信した遊技制御用マイクロコンピュータ１００や払出制御用マイクロコンピュータ１５０は、動作停止状態となり、各種の制御処理の実行が停止される。また、パチンコ遊技機１への電力供給が開始され、例えば所定電圧（一例としてＶＣＣ）が所定値（一例として＋５Ｖ強）を超えたときに、電源監視回路３０３はリセット信号の出力を停止（ハイレベルに設定）する。
【００５６】
図４は、パチンコ遊技機１への電力供給が開始されたとき、及び電力供給が停止するときにおける、ＡＣ２４Ｖ、ＶＬＰ、ＶＣＣ、リセット信号及び電源断信号の状態を、模式的に示すタイミング図である。図４に示すように、パチンコ遊技機１への電力供給が開始されたときに、ＶＬＰ及びＶＣＣは徐々に規定値（直流＋２４Ｖ及び直流＋５Ｖ）に達する。このとき、ＶＬＰが第１の所定値を超えると、電源監視回路３０３は電源断信号の出力を停止（ハイレベルに設定）してオフ状態とする。また、ＶＣＣが第２の所定値を超えると、電源監視回路３０３はリセット信号の出力を停止（ハイレベルに設定）してオフ状態とする。他方、パチンコ遊技機１への電力供給が停止するときに、ＶＬＰ及びＶＣＣは徐々に低下する。このとき、ＶＬＰが第１の所定値にまで低下すると、電源監視回路３０３は電源断信号をオン状態として出力（ローレベルに設定）する。また、ＶＣＣが第２の所定値にまで低下すると、電源監視回路３０３はリセット信号をオン状態として出力（ローレベルに設定）する。
【００５７】
なお、電源スイッチをオフすることによりパチンコ遊技機１への電力供給が本来的に停止させる場合、電源断信号の出力により実行される電源断処理では、データの待避などの必要な処理を行った後に無限ループに突入して、電力の供給が遮断されるのを待機することとなる。もっとも、一定期間だけ電圧が低下した後に元の電圧まで回復する瞬断が生じた場合でも電源断信号が出力されてしまう場合があり、この場合も、電源断処理が実行されて無限ループに突入してしまう場合がある。この場合、電圧が回復しても遊技を行うための処理が実行できないため、例えば、無限ループの時間が所定時間に達したとき、システムリセットをかけて、電源投入時と同様にプログラムの先頭から処理を実行するようにすることができる。或いは、電源断処理の最後で無限ループに突入させるのではなく、電源断信号をポーリング監視する処理を実行し、電源断信号がオフ状態に変化したことの監視結果が得られたときに、システムリセットをかけて、電源投入時と同様にプログラムの先頭から処理を実行するようにすることもできる。
【００５８】
図３に示す電源基板１０が備えるクリアスイッチ３０４は、例えば押しボタン構造を有し、押下などの操作に応じてクリア信号を出力する。クリア信号は、例えばローレベルとなることでオン状態となる電気信号であればよい。クリアスイッチ３０４から出力されたクリア信号は、例えば所定のコネクタや信号ラインを介して、主基板１１へと伝送され、主基板１１から払出制御基板１５へと伝送される。また、クリアスイッチ３０４の操作がなされていないときには、クリア信号の出力を停止（ハイレベルに設定）する。
【００５９】
主基板１１は、メイン側の制御基板であり、パチンコ遊技機１における遊技の進行を制御するための各種回路が搭載されている。主基板１１は、主として、特図ゲームにおいて用いる乱数の設定機能、所定位置に配設されたスイッチ等からの信号の入力を行う機能、演出制御基板１２や払出制御基板１５などからなるサブ側の制御基板に宛てて、指令情報の一例となる制御コマンドを制御信号として出力して送信する機能、ホールの管理コンピュータに対して各種情報を出力する機能などを備えている。また、主基板１１は、第１特別図柄表示装置４Ａと第２特別図柄表示装置４Ｂを構成する各ＬＥＤ（例えばセグメントＬＥＤ）などの点灯／消灯制御を行って第１特図や第２特図の可変表示を制御することや、普通図柄表示器２０の点灯／消灯／発色制御などを行って普通図柄表示器２０による普通図柄の可変表示を制御することといった、所定の表示図柄の可変表示を制御する機能も備えている。主基板１１は、例えば図２に示すように、遊技制御用マイクロコンピュータ１００と、制御用クロック生成回路１１１と、乱数用クロック生成回路１１２と、スイッチ回路１１４と、ソレノイド回路１１５とを備えている。また、主基板１１には、遊技開始スイッチ３１が設置されている。
【００６０】
ここで、制御用クロック生成回路１１１は、遊技制御用マイクロコンピュータ１００の外部にて、所定周波数の発振信号となる制御用クロックＣＣＬＫを生成する。制御用クロック生成回路１１１により生成された制御用クロックＣＣＬＫは、例えば図５に示すような遊技制御用マイクロコンピュータ１００の制御用外部クロック端子ＥＸＣを介してクロック回路５０２に供給される。乱数用クロック生成回路１１２は、遊技制御用マイクロコンピュータ１００の外部にて、制御用クロックＣＣＬＫの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックＲＣＬＫを生成する。乱数用クロック生成回路１１２により生成された乱数用クロックＲＣＬＫは、例えば図５に示すような遊技制御用マイクロコンピュータ１００の乱数用外部クロック端子ＥＲＣを介して乱数回路５０９に供給される。一例として、乱数用クロック生成回路１１２により生成される乱数用クロックＲＣＬＫの発振周波数は、制御用クロック生成回路１１１により生成される制御用クロックＣＣＬＫの発振周波数以下となるようにすればよい。
【００６１】
スイッチ回路１１４は、遊技球検出用の各種スイッチからの検出信号を取り込んで遊技制御用マイクロコンピュータ１００に伝送する。ソレノイド回路１１５は、遊技制御用マイクロコンピュータ１００からのソレノイド駆動信号をソレノイド８１、８２に伝送する。遊技開始スイッチ３１は、例えば押しボタン構造を有し、パチンコ遊技機１において遊技機用枠３を閉じて遊技者が通常遊技を行う状態でパチンコ遊技機１の外部から触れることのできない所定箇所に配設されていればよい。そして、例えばパチンコ遊技機１の電源投入時やシステムリセット時などに、パチンコ遊技機１の初期設定を行った後に遊技開始を指示するために操作される。
【００６２】
図２に示すように、主基板１１には、ゲートスイッチ２１、第１始動口スイッチ２２Ａ、第２始動口スイッチ２２Ｂ及びカウントスイッチ２３からの検出信号を伝送する配線が接続されている。ゲートスイッチ２１、第１始動口スイッチ２２Ａ、第２始動口スイッチ２２Ｂ及びカウントスイッチ２３から出力される検出信号には、負論理が適用されており、遊技球の通過が検出されていないときがハイレベル、遊技球の通過が検出されているときがローレベルとなっている。そして、例えば、第１始動条件は、第１始動口スイッチ２２Ａからの検出信号が一定期間以上継続してローレベルとなっていることを条件として成立するものとなっている。第２始動条件や普図始動条件についても同様である。電圧の低下時には第１始動口スイッチ２２Ａの検出信号がローレベルに変化してしまうが、極短時間だけ電圧低下する瞬断によって始動条件が成立し得ないものとなっている。
【００６３】
また、主基板１１には、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂ、普通図柄表示器２０、第１保留表示器２５Ａ、第２保留表示器２５Ｂ、普図保留表示器２５Ｃなどの表示制御を行うための指令信号を伝送する配線が接続されている。さらに、主基板１１には、普通電動役物用のソレノイド８１や大入賞口扉用のソレノイド８２などの駆動制御を行うための指令信号を伝送する配線が接続されている。
【００６４】
主基板１１と演出制御基板１２との間では、例えば主基板１１から中継基板１８を介して演出制御基板１２へと向かう単一方向のみでシリアル通信を行うことにより、各種の制御コマンドが伝送される。演出制御基板１２は、主基板１１とは独立したサブ側の制御基板であり、中継基板１８を介して主基板１１から送信された制御コマンドを受信して、画像表示装置５、スピーカ８Ｌ、８Ｒ及び遊技効果ランプ９等の発光体といった演出用の電気部品（演出装置）を制御するための各種回路が搭載されている。すなわち、演出制御基板１２は、画像表示装置５における表示動作や、スピーカ８Ｌ、８Ｒからの音声出力動作、遊技効果ランプ９等の発光体における点灯動作及び消灯動作などを制御する機能を備えている。演出制御基板１２には、音声制御基板１３やランプ制御基板１４に制御信号を伝送する配線や、画像表示装置５に画像データ信号を伝送する配線などが接続されている。
【００６５】
主基板１１には、例えば中継基板１８に対応して主基板側コネクタが設けられるとともに、この主基板側コネクタと遊技制御用マイクロコンピュータ１００との間に、出力バッファ回路が接続されていてもよい。この出力バッファ回路は、例えば主基板１１から中継基板１８を介して演出制御基板１２へ向かう方向にのみ制御信号を通過させることができ、中継基板１８から主基板１１への信号の入力を阻止する。したがって、演出制御基板１２や中継基板１８の側から主基板１１の側に信号が伝わる余地はない。
【００６６】
中継基板１８には、例えば主基板１１から演出制御基板１２に対して制御信号を伝送するための配線に、伝送方向規制回路が設けられていればよい。伝送方向規制回路は、主基板１１対応の主基板用コネクタにアノードが接続されるとともに演出制御基板１２対応の演出制御基板用コネクタにカソードが接続されたダイオードと、一端がダイオードのカソードに接続されるとともに他端がグランド（ＧＮＤ）接続された抵抗とから構成されている。この構成により、伝送方向規制回路は、演出制御基板１２から中継基板１８への信号の入力を阻止して、主基板１１から演出制御基板１２へ向かう方向にのみ信号を通過させることができる。したがって、演出制御基板１２の側から主基板１１側に信号が伝わる余地はない。この実施の形態では、中継基板１８において制御信号を伝送するための配線に伝送方向規制回路を設けるとともに、主基板１１にて遊技制御用マイクロコンピュータ１００と主基板側コネクタの間に出力バッファ回路を設けることで、外部から主基板１１への不正な信号の入力を防止することができる。
【００６７】
主基板１１と払出制御基板１５との間では、例えば双方向でシリアル通信を行うことにより、各種の制御コマンドや通知信号が伝送される。払出制御基板１５は、主基板１１とは独立したサブ側の制御基板であり、主基板１１から送信された制御コマンドや通知信号を受信して、払出モータ５１による遊技球の払出動作を制御するための各種回路が搭載されている。すなわち、払出制御基板１５は、払出モータ５１による賞球の払出動作を制御する機能を備えている。払出制御基板１５には、満タンスイッチ２６や球切れスイッチ２７からの検出信号を受信するための配線や、払出モータ位置センサ７１や払出カウントスイッチ７２、エラー解除スイッチ７３からの検出信号を受信するための配線が接続されている。加えて、払出制御基板１５には、払出モータ５１における遊技球の払出制御を行うための指令信号を送信するための配線や、エラー表示用ＬＥＤ７４における表示制御を行うための指令信号を送信するための配線、インタフェース基板を介してカードユニットとの間で通信を行うための配線などが接続されている。
【００６８】
ここで、満タンスイッチ２６は、例えば遊技盤２の背面下方にて打球供給皿と余剰球受皿の間を連通する余剰球通路の側壁に設置され、余剰球受皿の満タンを検出するためのものである。賞球又は球貸し要求に基づく遊技球が多数払い出されて打球供給皿が満杯になり、遊技球が連絡口に到達した後、さらに遊技球が払い出されると、遊技球は余剰球通路を経て余剰球受皿へと導かれる。さらに遊技球が払い出されると、例えば所定の感知レバーが満タンスイッチ２６を押圧してオンする。
【００６９】
また、球切れスイッチ２７は、例えば遊技盤２の背面にて遊技球を払出モータ５１が設置された払出装置へと誘導する誘導レールの下流に設置され、誘導レールの下流にてカーブ樋を介して連通された２列の球通路内における遊技球の有無を検出するためのものである。一例として、球切れスイッチ２７は、球通路に２７〜２８個の遊技球が存在することを検出できるような位置に係止片によって係止され、球貸しの一単位の最大払出個数（例えば１００円分に相当する２５個）以上が確保されていることを確認可能にする。
【００７０】
エラー解除スイッチ７３は、払出制御用マイクロコンピュータ１５０が所定のエラー状態に制御されているときに、ソフトウェアリセットによって、そのエラー状態を解除するためのスイッチである。エラー表示用ＬＥＤ７４は、例えば７セグメントＬＥＤにより構成され、払出制御用マイクロコンピュータ１５０にてセットされたエラーフラグなどに基づいて、各種のエラーに対応するエラーコードを表示するためのものである。
【００７１】
図２に示す発射制御基板１７は、操作ノブ３０の操作量に応じて、所定の発射装置による遊技球の発射動作を制御するためのものである。発射制御基板１７には、例えば電源基板１０あるいは主基板１１からの駆動信号を伝送する配線や、払出制御基板１５及びインタフェース基板を介してカードユニットからの接続信号を伝送する配線、及び操作ノブ３０からの配線が接続されるとともに、発射モータ６１への配線が接続されている。発射制御基板１７は、操作ノブ３０の操作量に対応して発射モータ６１の駆動力を調整する。発射モータ６１は、例えば発射制御基板１７により調整された駆動力により発射バネを弾性変形させ、発射バネの付勢力を打撃ハンマに伝達して遊技球を打撃することにより、遊技球を操作ノブ３０の操作量に対応した速度で遊技領域に向けて発射させる。
【００７２】
中継基板１８を介して主基板１１から演出制御基板１２に対して送信される制御コマンドは、例えば電気信号として伝送される演出制御コマンドである。この実施の形態において、演出制御コマンドは、主基板１１に搭載された遊技制御用マイクロコンピュータ１００が備えるＣＰＵ５０５（図５参照）によって送信設定が行われ、その設定に基づいて遊技制御用マイクロコンピュータ１００が備えるシリアル通信回路５１１（図５参照）により、演出制御基板１２に対して送信される。以下の説明では、主基板１１から演出制御基板１２に対する演出制御コマンドの送信動作に、こうした遊技制御用マイクロコンピュータ１００に設けられたＣＰＵ５０５やシリアル通信回路５１１による一連の動作が含まれているものとする。この場合、演出制御基板１２の側では、例えば演出制御用マイクロコンピュータ１２０のＣＰＵが、主基板１１から伝送されたシリアル信号形式の通信データを受信した際に発生する受信割込み要求に基づく割込み処理を実行することにより、演出制御コマンドを取り込んで所定のバッファ（例えば演出用受信コマンドバッファ）等に格納してもよい。
【００７３】
演出制御コマンドには、例えば画像表示装置５における画像表示動作を制御するために用いられる表示制御コマンドや、スピーカ８Ｌ、８Ｒからの音声出力を制御するために用いられる音声制御コマンド、遊技効果ランプ９といった発光体の点灯動作などを制御するために用いられるランプ制御コマンドが含まれている。
【００７４】
図５は、主基板１１に搭載された遊技制御用マイクロコンピュータ１００の構成例を示している。図５に示す遊技制御用マイクロコンピュータ１００は、例えば１チップマイクロコンピュータであり、外部バスインタフェース５０１と、クロック回路５０２と、固有情報記憶回路５０３と、リセット／割込みコントローラ５０４と、ＣＰＵ（Central Processing Unit）５０５と、ＲＯＭ（Read Only Memory）５０６と、ＲＡＭ（Random Access Memory）５０７と、ＣＴＣ（Counter/Timer Circuit）５０８と、乱数回路５０９と、ＰＩＰ（Parallel Input Port）５１０と、シリアル通信回路５１１と、アドレスデコード回路５１２とを備えて構成される。
【００７５】
図６は、遊技制御用マイクロコンピュータ１００におけるアドレスマップの一例を示している。図６に示すように、アドレス００００Ｈ〜アドレス１ＦＦＦＨの領域は、ＲＯＭ５０６に割り当てられ、ユーザプログラムエリアとプログラム管理エリアとを含んでいる。図７（Ａ）は、ＲＯＭ５０６におけるプログラム管理エリアの主要部分について、用途や内容の一例を示している。アドレス２０００Ｈ〜アドレス２０ＦＦＨの領域は、遊技制御用マイクロコンピュータ１００の内蔵レジスタに割り当てられる内蔵レジスタエリアである。図７（Ｂ）は、内蔵レジスタエリアの主要部分について、用途や内容の一例を示している。アドレス７Ｅ００Ｈ〜アドレス７ＦＦＦＨの領域は、ＲＡＭ５０７に割り当てられたワークエリアであり、Ｉ／Ｏマップやメモリマップに割り付けることができる。アドレスＦＤＤ０Ｈ〜アドレスＦＤＦＢＨの領域は、アドレスデコード回路５１２に割り当てられるＸＣＳデコードエリアである。
【００７６】
プログラム管理エリアは、ＣＰＵ５０５がユーザプログラムを実行するために必要な情報を格納する記憶領域である。図７（Ａ）に示すように、プログラム管理エリアには、ヘッダＫＨＤＲ、機能設定ＫＦＣＳ、第１乱数初期設定ＫＲＳ１、第２乱数初期設定ＫＲＳ２、割込み初期設定ＫＩＩＳ、セキュリティ時間設定ＫＳＥＳなどが、含まれている。
【００７７】
プログラム管理エリアに記憶されるヘッダＫＨＤＲは、遊技制御用マイクロコンピュータ１００における内部データの読出設定を示す。図８（Ａ）は、ヘッダＫＨＤＲにおける設定データと動作との対応関係を例示している。ここで、遊技制御用マイクロコンピュータ１００では、ＲＯＭ読出防止機能と、バス出力マスク機能とを設定可能である。ＲＯＭ読出防止機能は、遊技制御用マイクロコンピュータ１００が備えるＲＯＭ５０６の記憶データについて、読出動作を許可又は禁止する機能であり、読出禁止に設定された状態では、ＲＯＭ５０６の記憶データを読み出すことができない。バス出力マスク機能は、外部バスインタフェース５０１に接続された外部装置から遊技制御用マイクロコンピュータ１００の内部データに対する読出要求があった場合に、外部バスインタフェース５０１におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることにより、外部装置から内部データの読み出しを不能にする機能である。図８（Ａ）に示すように、ヘッダＫＨＤＲの設定データに対応して、ＲＯＭ読出防止機能やバス出力マスク機能の動作組合せが異なるように設定される。図８（Ａ）に示す設定データのうち、ＲＯＭ読出が許可されるとともに、バス出力マスクが有効となる設定データは、バス出力マスク有効データともいう。また、ＲＯＭ読出が禁止されるとともに、バス出力マスクが有効となる設定データ（全て「００Ｈ」）は、ＲＯＭ読出禁止データともいう。ＲＯＭ読出が許可されるとともに、バス出力マスクが無効となる設定データは、バス出力マスク無効データともいう。
【００７８】
プログラム管理エリアに記憶される機能設定ＫＦＣＳは、遊技制御用マイクロコンピュータ１００におけるウォッチドッグタイマ（ＷＤＴ；Watch Dog Timet）の動作設定や、各種機能兼用端子の使用設定を示す。図８（Ｂ）は、機能設定ＫＦＣＳにおける設定内容の一例を示している。
【００７９】
機能設定ＫＦＣＳのビット番号［７−５］は、例えばリセット／割込みコントローラ５０４における割込み要因として設定可能なウォッチドッグタイマの動作許可／禁止や、許可した場合の周期を示している。機能設定ＫＦＣＳのビット番号［４］は、遊技制御用マイクロコンピュータ１００における所定の機能兼用端子（第１兼用端子）を、シリアル通信回路５１１が使用する第２チャネル送信端子ＴＸＢとするか、アドレスデコード回路５１２が使用するチップセレクト出力端子ＸＣＳ１３とするかを指定するＴＸＢ端子設定である。図８（Ｂ）に示す例において、機能設定ＫＦＣＳのビット番号［４］におけるビット値が“０”であれば、第１兼用端子がシリアル通信回路５１１での第２チャネル送信に使用される第２チャネル送信端子ＴＸＢの設定となる。これに対して、そのビット値が“１”であれば、第１兼用端子がアドレスデコード回路５１２で使用されるチップセレクト出力端子ＸＣＳ１３の設定となる。この実施の形態では、機能設定ＫＦＣＳのビット番号［４］を“０”として、第１兼用端子を第２チャネル送信端子ＴＸＢに設定することにより、演出制御基板１２との間でのシリアル通信を可能にする。
【００８０】
機能設定ＫＦＣＳのビット番号［３］は、遊技制御用マイクロコンピュータ１００における所定の機能兼用端子（第２兼用端子）を、シリアル通信回路５１１が使用する第１チャネル送信端子ＴＸＡとするか、アドレスデコード回路５１２が使用するチップセレクト出力端子ＸＣＳ１２とするかを示すＴＸＡ端子設定である。図８（Ｂ）に示す例において、機能設定ＫＦＣＳのビット番号［３］におけるビット値が“０”であれば、第２兼用端子がシリアル通信回路５１１での第１チャネル送信に使用される第１チャネル送信端子ＴＸＡの設定となる。これに対して、そのビット値が“１”であれば、第２兼用端子がアドレスデコード回路５１２で使用されるチップセレクト出力端子ＸＣＳ１２の設定となる。この実施の形態では、機能設定ＫＦＣＳのビット番号［３］を“０”として、第２兼用端子を第１チャネル送信端子ＴＸＡに設定することにより、払出制御基板１５との間でのシリアル通信を可能にする。
【００８１】
機能設定ＫＦＣＳのビット番号［２］は、遊技制御用マイクロコンピュータ１００における所定の機能兼用端子（第３兼用端子）を、シリアル通信回路５１１が使用する第１チャネル受信端子ＲＸＡとするか、ＰＩＰ５１０が使用する入力ポートＰ５とするかを示すＲＸＡ端子設定である。図８（Ｂ）に示す例において、機能設定ＫＦＣＳのビット番号［２］におけるビット値が“０”であれば、第３兼用端子がシリアル通信回路５１１での第１チャネル受信に使用される第１チャネル受信端子ＲＸＡの設定となる。これに対して、そのビット値が“１”であれば、第３兼用端子がＰＩＰ５１０で使用される入力ポートＰ５の設定となる。この実施の形態では、機能設定ＫＦＣＳのビット番号［２］を“０”として、第３兼用端子を第１チャネル受信端子ＲＸＡに設定することにより、払出制御基板１５との間でのシリアル通信を可能にする。
【００８２】
機能設定ＫＦＣＳのビット番号［１］は、遊技制御用マイクロコンピュータ１００における所定の機能兼用端子（第４兼用端子）を、ＣＰＵ５０５等に接続される外部ノンマスカブル割込み端子ＸＮＭＩとするか、ＰＩＰ５１０が使用する入力ポートＰ４とするかを示すＮＭＩ接続設定である。図８（Ｂ）に示す例において、機能設定ＫＦＣＳのビット番号［１］におけるビット値が“０”であれば、第４兼用端子がＣＰＵ５０５等に接続される外部ノンマスカブル割込み端子ＸＮＭＩの設定となる（ＣＰＵ接続）。これに対して、そのビット値が“１”であれば、第４兼用端子がＰＩＰ５１０で使用される入力ポートＰ４の設定となる（ＣＰＵ非接続）。
【００８３】
機能設定ＫＦＣＳのビット番号［０］は、遊技制御用マイクロコンピュータ１００における所定の機能兼用端子（第５兼用端子）を、ＣＰＵ５０５等に接続される外部マスカブル割込み端子ＸＩＮＴとするか、ＰＩＰ５１０が使用する入力ポートＰ３とするかを示すＸＩＮＴ接続設定である。図８（Ｂ）に示す例において、機能設定ＫＦＣＳのビット番号［０］におけるビット値が“０”であれば、第５兼用端子がＣＰＵ５０５等に接続される外部マスカブル割込み端子ＸＩＮＴの設定となる（ＣＰＵ接続）。これに対して、そのビット値が“１”であれば、第５兼用端子がＰＩＰ５１０で使用される入力ポートＰ３の設定となる（ＣＰＵ非接続）。
【００８４】
プログラム管理エリアに記憶される第１乱数初期設定ＫＲＳ１及び第２乱数初期設定ＫＲＳ２は、乱数回路５０９の初期設定を示す。図９（Ａ）は、第１乱数初期設定ＫＲＳ１における設定内容の一例を示している。図９（Ｂ）は、第２乱数初期設定ＫＲＳ２における設定内容の一例を示している。
【００８５】
第１乱数初期設定ＫＲＳ１のビット番号［３］は、乱数回路５０９を使用するか否かを示す乱数回路使用設定である。図９（Ａ）に示す例において、第１乱数初期設定ＫＲＳ１のビット番号［３］におけるビット値が“０”であれば、乱数回路５０９を使用しない設定となる一方（未使用）、“１”であれば、乱数回路５０９を使用する設定となる（使用）。この実施の形態では、第１乱数初期設定ＫＲＳ１のビット番号［３］を“１”として、乱数回路５０９を使用可能に設定する。
【００８６】
第１乱数初期設定ＫＲＳ１のビット番号［２］は、乱数回路５０９における乱数値となる数値データの更新に用いられる乱数更新クロックＲＧＫ（図１３参照）を、内部システムクロックＳＣＬＫとするか、乱数用クロックＲＣＬＫの２分周とするかを示す乱数更新クロック設定である。図９（Ａ）に示す例において、第１乱数初期設定ＫＲＳ１のビット番号［２］におけるビット値が“０”であれば、内部システムクロックＳＣＬＫを乱数更新クロックＲＧＫに用いる設定となる一方、“１”であれば、乱数用クロックＲＣＬＫを２分周して乱数更新クロックＲＧＫに用いる設定となる。この実施の形態では、第１乱数初期設定ＫＲＳ１のビット番号［２］を“１”として、乱数用クロックＲＣＬＫを２分周して乱数更新クロックＲＧＫに用いる設定とする。
【００８７】
第１乱数初期設定ＫＲＳ１のビット番号［１−０］は、乱数回路５０９における乱数更新規則を変更するか否かや、変更する場合における変更方式を示す乱数更新規則設定である。図９（Ａ）に示す例において、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値が“００”であれば、乱数更新規則を変更しない設定となり、“０１”であれば、２周目以降にて乱数更新規則をソフトウェアにより変更する設定となり、“１０”であれば、２周目以降にて乱数更新規則を自動で変更する設定となる。
【００８８】
第２乱数初期設定ＫＲＳ２のビット番号［３−２］は、固定のビット値“００”が設定される。なお、図９（Ｂ）における「００Ｂ」の“Ｂ”は２進数表示であることを示す。第２乱数初期設定ＫＲＳ２のビット番号［１−０］は、乱数回路５０９における乱数値となる数値データでのスタート値に関する設定を示す。図９（Ｂ）に示す例において、第２乱数初期設定ＫＲＳ２のビット番号［１］におけるビット値が“０”であれば、スタート値が所定のデフォルト値０００１Ｈに設定される一方、“１”であるときには、遊技制御用マイクロコンピュータ１００ごとに付与された固有の識別情報であるＩＤナンバーに基づく値がスタート値に設定される。また、図９（Ｂ）に示す例では、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値が“０”であれば、システムリセット毎にスタート値を変更しない設定となる一方、“１”であるときには、システムリセット毎にスタート値を変更する設定となる。なお、スタート値をＩＤナンバーに基づく値に設定する場合には、ＩＤナンバーに所定のスクランブル処理を施す演算や、ＩＤナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値をスタート値に用いるようにすればよい。また、スタート値をシステムリセット毎に変更する場合には、例えば遊技制御用マイクロコンピュータ１００に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時に遊技制御用マイクロコンピュータ１００が備える所定の内蔵レジスタ（乱数スタート値用レジスタ）に格納する。そして、初期設定時に乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数（例えばハッシュ関数）に代入して得られた値を用いることなどにより、スタート値がランダムに決定されればよい。フリーランカウンタは、例えば遊技制御用マイクロコンピュータ１００のＲＡＭ５０７におけるバックアップ領域といった、主基板１１におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであればよい。あるいは、フリーランカウンタは、ＲＡＭ５０７におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされてもよい。こうして、フリーランカウンタがパックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間はフリーランカウンタにおけるカウント値が保存されることになる。
【００８９】
なお、乱数回路５０９にて乱数値となる数値データを生成するための回路が２系統（第１及び第２チャネル対応）設けられる場合には、図９（Ａ）及び（Ｂ）に示す第１乱数初期設定ＫＲＳ１のビット番号［３−０］と第２乱数初期設定ＫＲＳ２のビット番号［３−０］とを、第１チャネルにおける初期設定を示すものとして使用する。その一方で、第１乱数初期設定ＫＲＳ１のビット番号［７−４］や第２乱数初期設定ＫＲＳ２のビット番号［７−４］を（図９（Ａ）及び（Ｂ）では省略）、第２チャネルにおける初期設定を示すものとして使用すればよい。
【００９０】
プログラム管理エリアに記憶される割込み初期設定ＫＩＩＳは、遊技制御用マイクロコンピュータ１００にて発生するマスカブル割込みの取扱いに関する初期設定を示す。図９（Ｃ）は、割込み初期設定ＫＩＩＳにおける設定内容の一例を示している。
【００９１】
割込み初期設定ＫＩＩＳのビット番号［７−４］では、割込みベクタの上位４ビットを設定する。割込み初期設定ＫＩＩＳのビット番号［３−０］では、マスカブル割込み要因の優先度の組合せを設定する。図９（Ｃ）に示す例において、割込み初期設定ＫＩＩＳのビット番号［３−０］により「００Ｈ」〜「０２Ｈ」及び「０６Ｈ」のいずれかが指定されれば、ＣＴＣ５０８からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。これに対して、「０３Ｈ」及び「０７Ｈ」のいずれかが指定されれば、乱数回路５０９からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。また、「０４Ｈ」及び「０５Ｈ」のいずれかが指定されれば、シリアル通信回路５１１からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。なお、同一回路からのマスカブル割込み要因を最優先とする優先度の組合せでも、指定値が異なる場合には、最優先となるマスカブル割込み要因の種類や第２順位以下における優先度の組合せなどが異なっている。
【００９２】
プログラム管理エリアに記憶されるセキュリティ時間設定ＫＳＥＳは、乱数用クロックＲＣＬＫの周波数を監視する場合に異常を検知する周波数や、遊技制御用マイクロコンピュータ１００の動作開始時などに移行するセキュリティモードの時間（セキュリティ時間）に関する設定を示す。ここで、遊技制御用マイクロコンピュータ１００の動作モードがセキュリティモードであるときには、所定のセキュリティチェック処理が実行されて、ＲＯＭ５０６の記憶内容が変更されたか否かが検査される。図１０（Ａ）は、セキュリティ時間設定ＫＳＥＳにおける設定内容の一例を示している。
【００９３】
セキュリティ時間設定ＫＳＥＳのビット番号［７−６］は、乱数用クロックＲＣＬＫの周波数を監視する場合に異常が検出される周波数を示す乱数用クロック異常検出設定である。図１０（Ｂ）は、セキュリティ時間設定ＫＳＥＳのビット番号［７−６］における設定内容の一例を示している。セキュリティ時間設定ＫＳＥＳのビット番号［７−６］は、内部システムクロックＳＣＬＫの周波数に基づき、乱数用クロックＲＣＬＫの周波数が異常と検知される基準値（判定値）を指定する。セキュリティ時間設定ＫＳＥＳのビット番号「５」は、固定のビット値“０”が設定される。
【００９４】
セキュリティ時間設定ＫＳＥＳのビット番号［４−３］は、セキュリティ時間をシステムリセット毎にランダムな時間分延長する場合の時間設定を示す。図１０（Ｃ）は、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］における設定内容の一例を示している。図１０（Ｃ）に示す例において、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値が“００”であれば、ランダムな時間延長を行わない設定となる。これに対して、そのビット値が“０１”であればショートモードの設定となり、“１０”であればロングモードの設定となる。ここで、ショートモードやロングモードが指定された場合には、例えば遊技制御用マイクロコンピュータ１００に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時に遊技制御用マイクロコンピュータ１００が備える所定の内蔵レジスタ（可変セキュリティ時間用レジスタ）に格納する。そして、初期設定時に可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数（例えばハッシュ関数）に代入して得られた値を用いることなどにより、セキュリティ時間を延長する際の延長時間がランダムに決定されればよい。一例として、内部システムクロックＳＣＬＫの周波数が６．０ＭＨｚである場合には、ショートモードにおいて０〜６８０μｓ（マイクロ秒）の範囲で延長時間がランダムに決定され、ロングモードにおいて０〜３４８，１６０μｓの範囲で延長時間がランダムに決定される。また、他の一例として、内部システムクロックＳＣＬＫの周波数が１０．０ＭＨｚである場合には、ショートモードにおいて０〜４０８μｓの範囲で延長時間がランダムに決定され、ロングモードにおいて０〜２０８，８９６μｓの範囲で延長時間がランダムに決定される。なお、セキュリティ時間を延長する際の延長時間をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタは、乱数回路５０９にて生成される乱数のスタート値をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタと、同一のカウンタであってもよいし、別個に設けられたカウンタであってもよい。
【００９５】
セキュリティ時間設定ＫＳＥＳのビット番号［２−０］は、セキュリティ時間を固定時間に加えて予め選択可能な複数の延長時間のいずれかとする場合の時間設定を示す。図１０（Ｄ）は、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］における設定内容の一例を示している。図１０（Ｄ）に示す例において、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“０００”であれば、固定時間に加える延長時間がなく延長しない設定となる。これに対して、そのビット値が“０００”以外の値であれば、内部システムクロックＳＣＬＫの周期ＴＳＣＬＫを用いて定められる複数の延長時間のいずれかに設定される。この場合には、指定されたビット値に応じて、異なる延長時間の設定となる。一例として、内部システムクロックＳＣＬＫの周波数が６．０ＭＨｚである場合に、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“００１”であれば、固定時間に加えて約６９９．１ｍｓ（ミリ秒）の延長時間が設定される。また、他の一例として、内部システムクロックＳＣＬＫの周波数が１０．０ＭＨｚである場合に、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“００１”であれば、固定時間に加えて約４１９．４ｍｓの延長時間が設定される。
【００９６】
また、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値によりショートモード又はロングモードを設定するとともに、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値を“０００”以外とすることにより固定時間に加える延長時間を設定することもできる。この場合には、ビット番号［２−０］におけるビット値に対応した延長時間と、ビット番号［４−３］におけるビット値に基づいてランダムに決定された延長時間との双方が、固定時間に加算されて、遊技制御用マイクロコンピュータ１００がセキュリティモードとなるセキュリティ時間が決定されることになる。
【００９７】
図５に示す遊技制御用マイクロコンピュータ１００が備える外部バスインタフェース５０１は、遊技制御用マイクロコンピュータ１００を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインタフェースである。この実施の形態において、外部バスインタフェース５０１には、内部リソースアクセス制御回路５０１Ａが含まれている。
【００９８】
内部リソースアクセス制御回路５０１Ａは、外部バスインタフェース５０１を介した外部装置から遊技制御用マイクロコンピュータ１００の内部データに対するアクセスを制御して、例えばＲＯＭ５０６に記憶されたゲーム制御用プログラムや固定データといった、内部データの不適切な外部読出を制限するための回路である。ここで、外部バスインタフェース５０１には、例えばインサーキットエミュレータ（ＩＣＥ；InCircuit Emulator）といった回路解析装置が、外部装置として接続されることがある。
【００９９】
一例として、ＲＯＭ５０６のプログラム管理エリアに記憶されたヘッダＫＨＤＲの内容に応じて、ＲＯＭ５０６における記憶データの読み出しを禁止するか許可するかを切り替えられるようにする。例えば、ヘッダＫＨＤＲがバス出力マスク無効データとなっている場合には、外部装置によるＲＯＭ５０６の読み出しを可能にして、内部データの外部読出を許可する。これに対して、ヘッダＫＨＤＲがバス出力マスク有効データとなっている場合には、例えば外部バスインタフェース５０１におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることなどにより、外部装置からＲＯＭ５０６の読み出しを不能にして、内部データの外部読出を禁止する。この場合、外部バスインタフェース５０１に接続された外部装置から内部データの読み出しが要求されたときには、予め定められた固定値を出力することで、外部装置からは内部データを読み出すことができないようにする。また、ヘッダＫＨＤＲがＲＯＭ読出禁止データとなっている場合には、ＲＯＭ５０６自体を読出不能として、ＲＯＭ５０６における記憶データの読み出しを防止してもよい。そして、例えば製造段階のＲＯＭでは、ヘッダＫＨＤＲをＲＯＭ読出禁止データとすることで、ＲＯＭ自体を読出不能としておき、開発用ＲＯＭとするのであればバス出力マスク無効データをヘッダＫＨＤＲに書き込むことで、外部装置による内部データの検証を可能にする。これに対して、量産用ＲＯＭとするのであればバス出力マスク有効データをヘッダＫＨＤＲに書き込むことで、ＣＰＵ５０５などによる遊技制御用マイクロコンピュータ１００の内部におけるＲＯＭ５０６の読み出しは可能とする一方で、外部装置によるＲＯＭ５０６の読み出しはできないようにすればよい。
【０１００】
他の一例として、内部リソースアクセス制御回路５０１Ａは、ＲＯＭ５０６における記憶データの全部又は一部といった、遊技制御用マイクロコンピュータ１００の内部データの読み出しが、外部バスインタフェース５０１に接続された外部装置から要求されたことを検出する。この読出要求を検出したときに、内部リソースアクセス制御回路５０１Ａは、遊技制御用マイクロコンピュータ１００の内部データの読み出しを許可するか否かの判定を行う。例えば、ＲＯＭ５０６における記憶データの全部又は一部に暗号化処理が施されているものとする。この場合、内部リソースアクセス制御回路５０１Ａは、外部装置からの読出要求がＲＯＭ５０６に記憶された暗号化処理プログラムや鍵データ等に対する読出要求であれば、この読出要求を拒否して、遊技制御用マイクロコンピュータ１００の内部データの読み出しを禁止する。外部バスインタフェース５０１では、ＲＯＭ５０６の記憶データが出力される出力ポートと、内部バスとの間にスイッチ素子を設け、内部リソースアクセス制御回路５０１Ａが内部データの読み出しを禁止した場合には、このスイッチ素子をオフ状態とするように制御すればよい。このように、内部リソースアクセス制御回路５０１Ａは、外部装置からの読出要求が所定の内部データ（例えばＲＯＭ５０６の所定領域）の読み出しを要求するものであるか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
【０１０１】
あるいは、内部リソースアクセス制御回路５０１Ａは、内部データの読出要求を検出したときに、所定の認証コードが外部装置から入力されたか否かを判定してもよい。この場合には、例えば内部リソースアクセス制御回路５０１Ａの内部あるいはＲＯＭ５０６の所定領域に、認証コードとなる所定のコードパターンが予め記憶されていればよい。そして、外部装置から認証コードが入力されたときには、この認証コードを内部記憶された認証コードと比較して、一致すれば読出要求を受容して、遊技制御用マイクロコンピュータ１００の内部データの読み出しを許可する。これに対して、外部装置から入力された認証コードが内部記憶された認証コードと一致しない場合には、読出要求を拒否して、遊技制御用マイクロコンピュータ１００の内部データの読み出しを禁止する。このように、内部リソースアクセス制御回路５０１Ａは、外部装置から入力された認証コードが内部記憶された認証コードと一致するか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。これにより、検査機関などが予め知得した正しい認証コードを用いて、遊技制御用マイクロコンピュータ１００の内部データを損なうことなく読み出すことができ、内部データの正当性を適切に検査することなどが可能になる。
【０１０２】
さらに他の一例として、内部リソースアクセス制御回路５０１Ａに読出禁止フラグを設け、読出禁止フラグがオン状態であれば外部装置によるＲＯＭ５０６の読み出しを禁止する。その一方で、読出禁止フラグがオフ状態であるときには、外部装置によるＲＯＭ５０６の読み出しが許可される。ここで、読出禁止フラグは、初期状態ではオフ状態であるが、読出禁止フラグを一旦オン状態とした後には、読出禁止フラグをクリアしてオフ状態に復帰させることができないように構成されていればよい。すなわち、読出禁止フラグはオフ状態からオン状態に不可逆的に変更することが可能とされている。例えば、内部リソースアクセス制御回路５０１Ａには、読出禁止フラグをクリアしてオフ状態とする機能が設けられておらず、どのような命令によっても読出禁止フラグをクリアすることができないように設定されていればよい。そして、内部リソースアクセス制御回路５０１Ａは、外部装置からＲＯＭ５０６における記憶データといった遊技制御用マイクロコンピュータ１００の内部データの読み出しが要求されたときに、読出禁止フラグがオンであるか否かを判定する。このとき、読出禁止フラグがオンであれば、外部装置からの読出要求を拒否して、遊技制御用マイクロコンピュータ１００の内部データの読み出しを禁止する。他方、読出禁止フラグがオフであれば、外部装置からの読出要求を受容して、遊技制御用マイクロコンピュータ１００の内部データの読み出しを許可にする。このような構成であれば、ゲーム制御用のプログラムを作成してＲＯＭ５０６に格納する提供者においては、読出禁止フラグがオフとなっている状態でデバッグの終了したプログラムをＲＯＭ５０６から外部装置に読み込むことができる。そして、デバッグの作業が終了した後に出荷する際には、読出禁止フラグをオン状態にセットすることにより、それ以後はＲＯＭ５０６の外部読出を制限することができ、パチンコ遊技機１の使用者などによるＲＯＭ５０６の読出を防止することができる。このように、内部リソースアクセス制御回路５０１Ａは、読出禁止フラグといった内部フラグがオフであるかオンであるかに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
【０１０３】
なお、読出禁止フラグを不可逆に設定するのではなく、オン状態からオフ状態に変更することも可能とする一方で、読出禁止フラグをオン状態からオフ状態に変更して内部データの読み出しが許可されるときには、ＲＯＭ５０６の記憶データを消去（例えばフラッシュ消去など）することにより、ＲＯＭ５０６の外部読出を制限するようにしてもよい。
【０１０４】
遊技制御用マイクロコンピュータ１００が備えるクロック回路５０２は、例えば制御用外部クロック端子ＥＸＣに入力される発振信号を２分周することなどにより、内部システムクロックＳＣＬＫを生成する回路である。この実施の形態では、制御用外部クロック端子ＥＸＣに制御用クロック生成回路１１１が生成した制御用クロックＣＣＬＫが入力される。クロック回路５０２により生成された内部システムクロックＳＣＬＫは、例えばＣＰＵ５０５といった、遊技制御用マイクロコンピュータ１００において遊技の進行を制御する各種回路に供給される。また、内部システムクロックＳＣＬＫは、乱数回路５０９にも供給され、乱数用クロック生成回路１１２から供給される乱数用クロックＲＣＬＫの周波数を監視するために用いられる。さらに、内部システムクロックＳＣＬＫは、クロック回路５０２に接続されたシステムクロック出力端子ＣＬＫＯから、遊技制御用マイクロコンピュータ１００の外部へと出力されてもよい。なお、内部システムクロックＳＣＬＫは、遊技制御用マイクロコンピュータ１００の外部へは出力されないことが望ましい。このように、内部システムクロックＳＣＬＫの外部出力を制限することにより、遊技制御用マイクロコンピュータ１００の内部回路（ＣＰＵ５０５など）の動作周期を外部から特定することが困難になり、乱数値となる数値データをソフトウェアにより更新する場合に、乱数値の更新周期が外部から特定されてしまうことを防止できる。
【０１０５】
遊技制御用マイクロコンピュータ１００が備える固有情報記憶回路５０３は、例えば遊技制御用マイクロコンピュータ１００の内部情報となる複数種類の固有情報を記憶する回路である。一例として、固有情報記憶回路５０３は、ＲＯＭコード、チップ個別ナンバー、ＩＤナンバーといった３種類の固有情報を記憶する。ＲＯＭ５０６コードは、ＲＯＭ５０６の所定領域における記憶データから生成される４バイトの数値であり、生成方法の異なる４つの数値が準備されればよい。チップ個別ナンバーは、遊技制御用マイクロコンピュータ１００の製造時に付与される４バイトの番号であり、遊技制御用マイクロコンピュータ１００を構成するチップ毎に異なる数値を示している。ＩＤナンバーは、遊技制御用マイクロコンピュータ１００の製造時に付与される８バイトの番号であり、遊技制御用マイクロコンピュータ１００を構成するチップ毎に異なる数値を示している。ここで、チップ個別ナンバーはユーザプログラムから読み取ることができる一方、ＩＤナンバーはユーザプログラムから読み取ることができないように設定されていればよい。なお、固有情報記憶回路５０３は、例えばＲＯＭ５０６の所定領域を用いることなどにより、ＲＯＭ５０６に含まれるようにしてもよい。あるいは、固有情報記憶回路５０３は、例えばＣＰＵ５０５の内蔵レジスタを用いることなどにより、ＣＰＵ５０５に含まれるようにしてもよい。
【０１０６】
遊技制御用マイクロコンピュータ１００が備えるリセット／割込みコントローラ５０４は、遊技制御用マイクロコンピュータ１００の内部や外部にて発生する各種リセット、割込み要求を制御するためのものである。リセット／割込みコントローラ５０４が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子ＸＳＲＳＴに一定の期間にわたりローレベル信号が入力されたときに発生するリセットである。ユーザリセットは、ウォッチドッグタイマ（ＷＤＴ）のタイムアウト信号が発生したことや、指定エリア外走行禁止（ＩＡＴ）が発生したことなど、所定の要因により発生するリセットである。
【０１０７】
リセット／割込みコントローラ５０４が制御する割込みには、ノンマスカブル割込みＮＭＩとマスカブル割込みＩＮＴが含まれている。ノンマスカブル割込みＮＭＩは、ＣＰＵ５０５の割込み禁止状態でも無条件に受け付けられる割込みであり、外部ノンマスカブル割込み端子ＸＮＭＩ（入力ポートＰ４と兼用）に一定の期間にわたりローレベル信号が入力されたときに発生する割込みである。マスカブル割込みＩＮＴは、ＣＰＵ５０５の設定命令により、割込み要求の受け付けを許可／禁止できる割込みであり、優先順位設定による多重割込みの実行が可能である。マスカブル割込みＩＮＴの要因としては、外部マスカブル割込み端子ＸＩＮＴ（入力ポートＰ３と兼用）に一定の期間にわたりローレベル信号が入力が入力されたこと、ＣＴＣ５０８に含まれるタイマ回路にてタイムアウトが発生したこと、シリアル通信回路５１１にてデータ受信又はデータ送信による割込み要因が発生したこと、乱数回路５０９にて乱数値となる数値データの取込による割込み要因が発生したことなど、複数種類の割込み要因が予め定められていればよい。
【０１０８】
リセット／割込みコントローラ５０４は、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００が備える内蔵レジスタのうち、割込みマスクレジスタＩＭＲ（アドレス２０２８Ｈ）、割込み待ちモニタレジスタＩＲＲ（アドレス２０２９Ｈ）、割込み中モニタレジスタＩＳＲ（アドレス２０２ＡＨ）、内部情報レジスタＣＩＦ（アドレス２０８ＣＨ）などを用いて、割込みの制御やリセットの管理を行う。割込みマスクレジスタＩＭＲは、互いに異なる複数の要因によるマスカブル割込みＩＮＴのうち、使用するものと使用しないものとを設定するレジスタである。割込み待ちモニタレジスタＩＲＲは、割込み初期設定ＫＩＩＳにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の発生状態を確認するレジスタである。割込み中モニタレジスタＩＳＲは、割込み初期設定ＫＩＩＳにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の処理状態を確認するレジスタである。内部情報レジスタＣＩＦは、直前に発生したリセット要因を管理したり、乱数用クロックＲＣＬＫの周波数異常を記録したりするためのレジスタである。
【０１０９】
図１１（Ａ）は、内部情報レジスタＣＩＦの構成例を示している。図１１（Ｂ）は、内部情報レジスタＣＩＦに格納される内部情報データの各ビットにおける設定内容の一例を示している。内部情報レジスタＣＩＦのビット番号［４］に格納される内部情報データＣＩＦ４は、乱数用クロックＲＣＬＫにおける周波数異常の有無を示す乱数用クロック異常指示である。図１１（Ｂ）に示す例では、乱数用クロックＲＣＬＫの周波数異常が検知されないときに、内部情報データＣＩＦ４のビット値が“０”となる一方、周波数異常が検知されたときには、そのビット値が“１”となる。内部情報レジスタＣＩＦのビット番号［２］に格納される内部情報データＣＩＦ２は、直前に発生したリセット要因がシステムリセットであるか否かを示すシステムリセット指示である。図１１（Ｂ）に示す例では、直前のリセット要因がシステムリセットではないときに（システムリセット未発生）、内部情報データＣＩＦ２のビット値が“０”となる一方、システムリセットであるときには（システムリセット発生）、そのビット値が“１”となる。内部情報データＣＩＦ２を用いた動作の第１例として、電源投入時に遊技制御用マイクロコンピュータ１００のＣＰＵ５０５などが内部情報データＣＩＦ２のビット値をチェックして、そのビット値が“１”（セット）でなければ、通常の電源投入ではないと判断する。このときには、例えば演出制御基板１２に向けて所定の演出制御コマンドを伝送させることなどにより、パチンコ遊技機１における電源投入直後に大当り遊技状態とすることを狙った不正信号の入力行為が行われた可能性がある旨を、演出装置などにより報知させてもよい。また、内部情報データＣＩＦ２を用いた動作の第２例として、パチンコ遊技機１が電源投入時にのみ確変状態を報知し、通常時には確変状態を報知しない場合に、電源投入時に遊技制御用マイクロコンピュータ１００のＣＰＵ５０５などが内部情報データＣＩＦ２のビット値をチェックして、そのビット値が“１”（セット）でなければ、遊技状態の報知を行わないようにしてもよい。
【０１１０】
内部情報レジスタＣＩＦのビット番号［１］に格納される内部情報データＣＩＦ１は、直前に発生したリセット要因がウォッチドッグタイマ（ＷＤＴ）のタイムアウトによるユーザリセットであるか否かを示すＷＤＴタイムアウト指示である。図１１（Ｂ）に示す例では、直前のリセット要因がウォッチドッグタイマのタイムアウトによるユーザリセットではないときに（タイムアウト未発生）、内部情報データＣＩＦ１のビット値が“０”となる一方、ウォッチドッグタイマのタイムアウトによるユーザリセットであるときに（タイムアウト発生）、そのビット値が“１”となる。内部情報レジスタＣＩＦのビット番号［０］に格納される内部情報データＣＩＦ０は、直前に発生したリセット要因が指定エリア外走行禁止（ＩＡＴ）によるユーザリセットであるか否かを示すＩＡＴ発生指示である。図１１（Ｂ）に示す例では、直前のリセット要因が指定エリア外走行の発生によるユーザリセットではないときに（ＩＡＴ発生なし）、内部情報データＣＩＦ０のビット値が“０”となる一方、指定エリア外走行の発生によるユーザリセットであるときに（ＩＡＴ発生あり）、そのビット値が“１”となる。
【０１１１】
遊技制御用マイクロコンピュータ１００が備えるＣＰＵ５０５は、ＲＯＭ５０６から読み出したプログラムを実行することにより、パチンコ遊技機１における遊技の進行を制御するための処理などを実行する。このときには、ＣＰＵ５０５がＲＯＭ５０６から固定データを読み出す固定データ読出動作や、ＣＰＵ５０５がＲＡＭ５０７に各種の変動データを書き込んで一時記憶させる変動データ書込動作、ＣＰＵ５０５がＲＡＭ５０７に一時記憶されている各種の変動データを読み出す変動データ読出動作、ＣＰＵ５０５が外部バスインタフェース５０１やＰＩＰ５１０、シリアル通信回路５１１などを介して遊技制御用マイクロコンピュータ１００の外部から各種信号の入力を受け付ける受信動作、ＣＰＵ５０５が外部バスインタフェース５０１やシリアル通信回路５１１などを介して遊技制御用マイクロコンピュータ１００の外部へと各種信号を出力する送信動作等も行われる。
【０１１２】
このように、遊技制御用マイクロコンピュータ１００では、ＣＰＵ５０５がＲＯＭ５０６に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ１００（又はＣＰＵ５０５）が実行する（又は処理を行う）ということは、具体的には、ＣＰＵ５０５がプログラムに従って制御を実行することである。このことは、主基板１１以外の他の基板に搭載されているマイクロコンピュータについても同様である。
【０１１３】
遊技制御用マイクロコンピュータ１００が備えるＲＯＭ５０６には、ゲーム制御用のユーザプログラムや固定データ等が記憶されている。また、ＲＯＭ５０６には、セキュリティチェックプログラム５０６Ａが記憶されている。ＣＰＵ５０５は、パチンコ遊技機１の電源投入やシステムリセットの発生に応じて遊技制御用マイクロコンピュータ１００がセキュリティモードに移行したときに、ＲＯＭ５０６に記憶されたセキュリティチェックプログラム５０６Ａを読み出し、ＲＯＭ５０６の記憶内容が変更されたか否かを検査するセキュリティチェック処理を実行する。なお、セキュリティチェックプログラム５０６Ａは、ＲＯＭ５０６とは異なる内蔵メモリに記憶されてもよい。また、セキュリティチェックプログラム５０６Ａは、例えば外部バスインタフェース５０１を介して遊技制御用マイクロコンピュータ１００に外付けされた外部メモリの記憶内容を検査するセキュリティチェック処理に対応したものであってもよい。
【０１１４】
遊技制御用マイクロコンピュータ１００が備えるＲＡＭ５０７は、ゲーム制御用のワークエリアを提供する。ここで、ＲＡＭ５０７の少なくとも一部は、電源基板１０において作成されるバックアップ電源によってバックアップされているバックアップＲＡＭであればよい。すなわち、パチンコ遊技機１への電力供給が停止しても、所定期間はＲＡＭ５０７の少なくとも一部の内容が保存される。
【０１１５】
遊技制御用マイクロコンピュータ１００が備えるＣＴＣ５０８は、例えば８ビットのプログラマブルタイマを３チャネル（ＰＴＣ０−ＰＴＣ２）内蔵して構成され、リアルタイム割込みの発生や時間計測を可能とするタイマ回路を含んでいる。各プログラマブルタイマＰＴＣ０−ＰＴＣ２は、内部システムクロックＳＣＬＫに基づいて生成されたカウントクロックの信号変化（例えばハイレベルからローレベルへと変化する立ち下がりタイミング）などに応じて、タイマ値が更新されるものであればよい。また、ＣＴＣ５０８は、例えば８ビットのプログラマブルカウンタを４チャネル（ＰＣＣ０−ＰＣＣ３）内蔵してもよい。各プログラマブルカウンタＰＣＣ０−ＰＣＣ３は、内部システムクロックＳＣＬＫの信号変化、あるいは、プログラマブルカウンタＰＣＣ０−ＰＣＣ３のいずれかにおけるタイムアウトの発生などに応じて、カウント値が更新されるものであればよい。ＣＴＣ５０８は、セキュリティ時間を延長する際の延長時間（可変設定時間）をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタや、乱数回路５０９にて生成される乱数のスタート値をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタなどを、含んでもよい。あるいは、これらのフリーランカウンタは、例えばＲＡＭ５０７のバックアップ領域といった、ＣＴＣ５０８とは異なる遊技制御用マイクロコンピュータ１００の内部回路に含まれてもよい。
【０１１６】
遊技制御用マイクロコンピュータ１００が備える乱数回路５０９は、例えば１６ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。この実施の形態では、主基板１１の側において、例えば図１２に示すような特図表示結果判定用の乱数値ＭＲ１、大当り種別決定用の乱数値ＭＲ２、リーチ判定用の乱数値ＭＲ３、変動パターン種別決定用の乱数値ＭＲ４、変動パターン決定用の乱数値ＭＲ５、加算値決定用の乱数値ＭＲ６のそれぞれを示す数値データが、カウント可能に制御される。ＣＰＵ５０５は、乱数回路５０９から抽出した数値データに基づき、例えば図２５に示す遊技制御カウンタ設定部５９４に設けられたランダムカウンタといった、乱数回路５０９とは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工あるいは更新することで、乱数値ＭＲ１〜ＭＲ６の全部又は一部を示す数値データをカウントするようにしてもよい。以下では、一例として、特図表示結果判定用の乱数値ＭＲ１を示す数値データと、加算値決定用の乱数値ＭＲ６を示す数値データとが、ハードウェアとなる乱数回路５０９からＣＰＵ５０５により抽出された数値データを、ソフトウェアにより加工することで更新され、それ以外の乱数値ＭＲ２〜ＭＲ５を示す数値データは、ＣＰＵ５０５がランダムカウンタなどを用いてソフトウェアにより更新するものとする。
【０１１７】
図１２に示す乱数値ＭＲ１〜ＭＲ６のうち、乱数値ＭＲ３〜ＭＲ５については、加算値や加算判定値、最大判定値が定められている。加算値は、１回のタイマ割込みなどに対応して各乱数値に加算する値であり、その値は乱数値を更新するための乱数更新処理が実行されるごとに異ならせることができる。例えば、加算値は、加算値決定用の乱数値ＭＲ６などに基づいて求められるものであり、一時的な変数として加算値を記憶するための領域がＲＡＭ５０７などに設けられていればよい。加算判定値は、加算値決定用の乱数値ＭＲ６との比較により、各乱数値に対応した加算値を取得するために用いられる値である。より具体的には、加算値決定用の乱数値ＭＲ６が各乱数値に対応した加算値の初期値として読み出された後、現在の加算値が加算判定値よりも小さくなったと判定されるまで、現在の加算値から加算判定値を減算した値を、新たな加算値として更新していく。乱数判定値は、最終的に求められた加算値を加算したことによる更新後の各乱数値が取り得る値の範囲内であるかを判定するために用いられる値である。そして、更新後の各乱数値が対応する乱数判定値を超えているときには、更新後の乱数値から乱数判定値を減算した値が、新たな乱数値として設定される。なお、この実施の形態において、乱数値ＭＲ２を示す数値データは、遊技制御用マイクロコンピュータ１００にてタイマ割込みが発生する毎に、１ずつ加算するように更新されるものとする。
【０１１８】
特図表示結果判定用の乱数値ＭＲ１は、特図ゲームにおける特別図柄などの可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、判定するために用いられる乱数値である。例えば、特図表示結果判定用の乱数値ＭＲ１は、「０」〜「６５５３５」の範囲の値をとる。大当り種別決定用の乱数値ＭＲ２は、可変表示結果を「大当り」とする場合に、大当り種別を複数種類のいずれかに決定するために用いられる乱数値である。例えば、大当り種別決定用の乱数値ＭＲ２は、「０」〜「９９」の範囲の値をとる。
【０１１９】
リーチ判定用の乱数値ＭＲ３は、可変表示結果を「ハズレ」とする場合に、飾り図柄をリーチ表示状態で導出表示する「リーチ」の可変表示態様とするか否かを判定するために用いられる乱数値である。例えば、リーチ判定用の乱数値ＭＲ３は、「０」〜「２３９」の範囲の値をとる。また、リーチ判定用の乱数値ＭＲ３に対応して、加算値の範囲が「０」〜「７」、加算判定値が「８」、最大判定値が「２４０」に定められている。
【０１２０】
変動パターン種別決定用の乱数値ＭＲ４は、飾り図柄の変動パターン種別を、予め用意された複数種類のいずれかに決定するために用いられる乱数値である。例えば、変動パターン種別決定用の乱数値ＭＲ４は、「０」〜「２４１」の範囲の値をとる。ここで、各変動パターン種別は、例えば飾り図柄の可変表示中に実行される演出動作などに基づいて分類された１つ又は複数の変動パターンを含むように構成されたものであればよい。変動パターン種別決定用の乱数値ＭＲ４に対応して、加算値の範囲が「０」〜「７」、加算判定値が「８」、最大判定値が「２４２」に定められている。
【０１２１】
変動パターン決定用の乱数値ＭＲ５は、飾り図柄の変動パターンを、予め用意された複数種類のいずれかに決定するために用いられる乱数値である。例えば、変動パターン決定用の乱数値ＭＲ５は、「０」〜「２５５」の範囲の値をとる。また、変動パターン決定用の乱数値ＭＲ５に対応して、加算値の範囲が「０」〜「７」、加算判定値が「８」、最大判定値が「２５６」に定められている。
【０１２２】
加算値決定用の乱数値ＭＲ６は、各乱数値に対応した加算判定値と比較されることなどにより、各乱数値に対応した加算値を取得するために用いられる値である。例えば、加算値決定用の乱数値ＭＲ６は、「０」〜「７」の範囲の値をとる。
【０１２３】
図１３は、乱数回路５０９の一構成例を示すブロック図である。乱数回路５０９は、図１３に示すように、周波数監視回路５５１、クロック用フリップフロップ５５２、乱数生成回路５５３、スタート値設定回路５５４、乱数列変更回路５５５、乱数列変更設定回路５５６、ラッチ用フリップフロップ５５７Ａ、５５７Ｂ、乱数ラッチセレクタ５５８Ａ、５５８Ｂ、乱数値レジスタ５５９Ａ、５５９Ｂを備えて構成される。なお、乱数値レジスタ５５９Ａと乱数値レジスタ５５９Ｂはそれぞれ、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００の内蔵レジスタに含まれる乱数値レジスタＲ１Ｄ（アドレス２０３８Ｈ−２０３９Ｈ）と乱数値レジスタＲ２Ｄ（アドレス２０３ＡＨ−２０３ＢＨ）に対応している。
【０１２４】
周波数監視回路５５１は、乱数用クロック生成回路１１２により生成された乱数用クロックＲＣＬＫの周波数を監視して、その異常発生を検知するための回路である。周波数監視回路５５１は、例えば乱数用外部クロック端子ＥＲＣに入力される発振信号を監視して、内部システムクロックＳＣＬＫに基づきセキュリティ時間設定ＫＳＥＳのビット番号［７−６］における設定内容（図１０（Ｂ）参照）に応じた周波数異常を検知したときに、内部情報レジスタＣＩＦのビット番号［４］を“１”にセットする。この実施の形態では、乱数用外部クロック端子ＥＲＣに乱数用クロック生成回路１１２が生成した乱数用クロックＲＣＬＫが入力される。
【０１２５】
クロック用フリップフロップ５５２は、例えばＤ型フリップフロップなどを用いて構成され、乱数用外部クロック端子ＥＲＣからの乱数用クロックＲＣＬＫがクロック端子ＣＫに入力される。また、クロック用フリップフロップ５５２では、逆相出力端子（反転出力端子）ＱバーがＤ入力端子に接続されている。そして、正相出力端子（非反転出力端子）Ｑから乱数更新クロックＲＧＫを出力する一方で、逆相出力端子（反転出力端子）Ｑバーからラッチ用クロックＲＣ０を出力する。この場合、クロック用フリップフロップ５５２は、クロック端子ＣＫに入力される乱数用クロックＲＣＬＫにおける信号状態が所定の変化をしたときに、正相出力端子（非反転出力端子）Ｑ及び逆相出力端子（反転出力端子）Ｑバーからの出力信号における信号状態を変化させる。例えば、クロック用フリップフロップ５５２は、乱数用クロックＲＣＬＫの信号状態がローレベルからハイレベルへと変化する立ち上がりのタイミング、あるいは、乱数用クロックＲＣＬＫの信号状態がハイレベルからローレベルへと変化する立ち下がりのタイミングのうち、いずれか一方のタイミングにて、Ｄ入力端子における入力信号を取り込む。このとき、正相出力端子（非反転出力端子）Ｑからは、Ｄ入力端子にて取り込まれた入力信号が反転されることなく出力される一方で、逆相出力端子（反転出力端子）Ｑバーからは、Ｄ入力端子にて取り込まれた入力信号が反転されて出力される。こうして、クロック用フリップフロップ５５２の正相出力端子（非反転出力端子）Ｑからは乱数用クロックＲＣＬＫにおける発振周波数（例えば２０ＭＨｚ）の１／２となる発振周波数（例えば１０ＭＨｚ）を有する乱数更新クロックＲＧＫが出力される一方、逆相出力端子（反転出力端子）Ｑバーからは乱数更新クロックＲＧＫの逆相信号（反転信号）、すなわち乱数更新クロックＲＧＫと同一周波数で乱数更新クロックＲＧＫとは位相がπ（＝１８０°）だけ異なるラッチ用クロックＲＣ０が出力される。
【０１２６】
クロック用フリップフロップ５５２から出力された乱数更新クロックＲＧＫは、乱数生成回路５５３のクロック端子に入力されて、乱数生成回路５５３におけるカウント値の歩進に用いられる。また、クロック用フリップフロップ５５２から出力されたラッチ用クロックＲＣ０は、分岐点ＢＲ１にてラッチ用クロックＲＣ１とラッチ用クロックＲＣ２とに分岐される。したがって、ラッチ用クロックＲＣ１とラッチ用クロックＲＣ２とは、互いに同一の発振周波数を有し、互いに共通の周期で信号状態が変化することになる。ここで、ラッチ用クロックＲＣ１やラッチ用クロックＲＣ２における信号状態の変化としては、例えばローレベルからハイレベルへと変化する立ち上がりや、ハイレベルからローレベルへと変化する立ち下がりなどがある。ラッチ用クロックＲＣ１は、ラッチ用フリップフロップ５５７Ａのクロック端子ＣＫに入力されて、始動入賞時ラッチ信号ＳＬ１の生成に用いられる乱数取得用クロックとなる。ラッチ用クロックＲＣ２は、ラッチ用フリップフロップ５５７Ｂのクロック端子ＣＫに入力されて、始動入賞時ラッチ信号ＳＬ２の生成に用いられる乱数取得用クロックとなる。
【０１２７】
ここで、乱数用クロックＲＣＬＫの発振周波数と、制御用クロック生成回路１１１によって生成される制御用クロックＣＣＬＫの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。一例として、制御用クロックＣＣＬＫの発振周波数が１１．０ＭＨｚである一方で、乱数用クロックＲＣＬＫの発振周波数は９．７ＭＨｚであればよい。そのため、乱数更新クロックＲＧＫやラッチ用クロックＲＣ１、ＲＣ２はいずれも、ＣＰＵ５０５に供給される制御用クロックＣＣＬＫとは異なる周期で信号状態が変化する発振信号となる。すなわち、クロック用フリップフロップ５５２は、乱数用クロック生成回路１１２によって生成された乱数用クロックＲＣＬＫに基づき、カウント値を更新するための乱数更新クロックＲＧＫや、複数の乱数取得用クロックとなるラッチ用クロックＲＣ１、ＲＣ２として、制御用クロックＣＣＬＫや内部システムクロックＳＣＬＫ（制御用クロックＣＣＬＫを２分周したもの）とは異なる周期で信号状態が変化する発振信号を生成する。
【０１２８】
乱数生成回路５５３は、例えば１６ビットのカウンタなどから構成され、クロック用フリップフロップ５５２から出力される乱数更新クロックＲＧＫなどの入力に基づき、数値データを更新可能な所定の範囲において所定の初期値から所定の最終値まで循環的に更新する回路である。例えば乱数生成回路５５３は、所定のクロック端子への入力信号である乱数更新クロックＲＧＫにおける立ち上がりエッジに応答して、「０」から「６５５３５」までの範囲内で設定された初期値から「６５５３５」まで１ずつ加算するように数値データをカウントアップして行く。そして、「６５５３５」までカウントアップした後には、「０」から初期値よりも１小さい最終値となる数値まで１ずつ加算するようにカウントアップすることで、数値データを循環的に更新する。
【０１２９】
スタート値設定回路５５４は、第２乱数初期設定ＫＲＳ２のビット番号［１−０］におけるビット値（図９（Ｂ）参照）に応じて、乱数生成回路５５３により生成されるカウント値におけるスタート値を設定する。例えば、スタート値設定回路５５４は、第２乱数初期設定ＫＲＳ２のビット番号［１−０］が“００”であればスタート値をデフォルト値である「００００Ｈ」に設定し、“１０”であればＩＤナンバーに基づく値に設定し、“０１”であればシステムリセット毎に変更される値に設定する。
【０１３０】
乱数列変更回路５５５は、乱数生成回路５５３により生成された数値データが一巡したときに、数値データの更新順である順列を所定の乱数更新規則に従った順列に変更可能とする回路である。例えば、乱数列変更回路５５５は、乱数生成回路５５３から出力される数値データにおけるビットの入れ替えや転置などのビットスクランブル処理を実行する。また、乱数列変更回路５５５は、例えばビットスクランブル処理に用いるビットスクランブル用キーやビットスクランブルテーブルを変更することなどにより、数値データの更新順である順列の変更を行うことができる。
【０１３１】
乱数列変更設定回路５５６は、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値（図９（Ａ）参照）などに応じて、乱数列変更回路５５５における数値データの更新順を変更する設定を行うための回路である。例えば、乱数列変更設定回路５５６は、第１乱数初期設定ＫＲＳ１のビット番号［１−０］が“００”であれば２周目以降も乱数更新規則を変更しない設定とする一方、“０１”であれば２周目以降はソフトウェアでの変更要求に応じて乱数更新規則を変更し、“１０”であれば自動で乱数更新規則を変更する。
【０１３２】
乱数列変更回路５５６は、第１乱数初期設定ＫＲＳ１のビット番号［１−０］が“０１”であることに対応してソフトウェアによる乱数更新規則の変更を行う場合に、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００が備える内蔵レジスタのうち、乱数列変更レジスタＲＤＳＣ（アドレス２０３４Ｈ）を用いて、乱数更新規則の変更を制御する。図１４（Ａ）は、乱数列変更レジスタＲＤＳＣの構成例を示している。図１４（Ｂ）は、乱数列変更レジスタＲＤＳＣに格納される乱数列変更要求データの各ビットにおける設定内容の一例を示している。乱数列変更レジスタＲＤＳＣのビット番号［０］に格納される乱数列変更要求データＲＤＳＣ０は、乱数更新規則をソフトウェアにより変更する場合に、乱数列の変更要求の有無を示している。図１４（Ｂ）に示す例では、ソフトウェアにより乱数列の変更要求がないときに、乱数列変更要求データＲＤＳＣ０のビット値が“０”となる一方、乱数列の変更要求があったときには、そのビット値が“１”となる。
【０１３３】
図１５は、乱数更新規則をソフトウェアにより変更する場合の動作例を示している。この場合、乱数生成回路５５３から出力されるカウント値順列ＲＣＮが所定の初期値から所定の最終値まで循環的に更新されたときに、乱数列変更要求データＲＤＳＣ０が“１”であることに応答して、乱数更新規則を変更する。図１５に示す動作例では、始めに乱数列変更回路５５５から出力される乱数列ＲＳＮが、「０→１→…→６５５３５」となっている。この後、ＣＰＵ５０５がＲＯＭ５０６に格納されたユーザプログラムを実行することによって、所定のタイミングで乱数列変更レジスタＲＤＳＣのビット番号［０］に“１”が書き込まれたものとする。
【０１３４】
そして、第１乱数初期設定ＫＲＳ１のビット番号［１−０］が“０１”であることに対応して、乱数列変更設定回路５５６が乱数列変更要求データＲＤＳＣ０を読み出し、そのビット値が“１”であることに応答して、乱数更新規則を変更するための設定を行う。このとき、乱数列変更設定回路５５６は、乱数生成回路５５３から出力されたカウント値順列ＲＣＮが所定の最終値に達したことに応じて、例えば予め用意された複数種類の乱数更新規則のいずれかを選択することなどにより、乱数更新規則を変更する。図１５に示す動作例では、乱数列変更回路５５５が乱数生成回路５５３から出力されたカウント値順列ＲＣＮにおける最終値に対応する数値データ「６５５３５」を出力した後、乱数列変更要求データＲＤＳＣ０に応じて乱数更新規則を変更する。その後、乱数列変更回路５５５は、変更後の乱数更新規則に従った乱数列ＲＳＮとして、「６５５３５→６５５３４→…→０」を出力する。乱数列変更レジスタＲＤＳＣは、乱数列変更設定回路５５６により乱数列変更要求データＲＤＳＣ０が読み出されたときに初期化される。そのため、再び乱数列変更レジスタＲＤＳＣのビット番号［０］にビット値“１”が書き込まれるまでは、乱数列変更回路５５５から出力される乱数列ＲＳＮが、「６５５３５→６５５３４→…→０」となる。
【０１３５】
ＣＰＵ５０５がＲＯＭ５０６に格納されたユーザプログラムを実行することによって、乱数列変更レジスタＲＤＳＣのビット番号［０］に再びビット値“１”が書き込まれると、乱数更新規則が再度変更される。図１５に示す動作例では、乱数列変更回路５５５が乱数列ＲＳＮにおける最終値に対応する数値データ「０」を出力したときに、乱数列変更要求データＲＤＳＣ０としてビット値“１”が書き込まれたことに応じて乱数更新規則を変更する。その後、乱数列変更回路５５５は、変更後の乱数更新規則に従った乱数列ＲＳＮとして、「０→２→…→６５５３４→１→…→６５５３５」を出力する。
【０１３６】
図１６は、乱数更新規則を自動で変更する場合の動作例を示している。この場合、乱数生成回路５５３から出力されるカウント値順列ＲＣＮが所定の初期値から所定の最終値まで循環的に更新されたことに応じて、乱数列変更設定回路５５６が自動的に乱数更新規則を変更する。図１６に示す動作例では、始めに乱数列変更回路５５５から出力される乱数列ＲＳＮが、「０→１→…→６５５３５」となっている。
【０１３７】
そして、乱数変更回路５５５から出力された乱数列ＲＳＮが所定の最終値に達したときに、乱数列変更設定回路５５６は、予め用意された複数種類の更新規則のうちから予め定められた順序に従って更新規則を選択することにより、更新規則を変更するようにしてもよい。あるいは、乱数列変更設定回路５５６は、複数種類の更新規則のうちから任意の更新規則を選択することにより、更新規則を変更するようにしてもよい。図１６に示す動作例では、１回目の乱数更新規則の変更により、乱数列変更回路５５５から出力される乱数列ＲＳＮが、「６５５３５→６５５３４→…→０」となる。その後、２回目の乱数更新規則の変更により、乱数列変更回路５５５から出力される乱数列ＲＳＮは、「０→２→…→６５５３４→１→…→６５５３５」となる。図１６に示す動作例では、３回目の乱数更新規則の変更により、乱数列変更回路５５５から出力される乱数列ＲＳＮは、「６５５３４→０→…→３２７６８」となる。４回目の乱数更新規則の変更が行われたときには、乱数列変更回路５５５から出力される乱数列ＲＳＮが、「１６３８３→４９１５１→…→４９１５０」となる。５回目の乱数更新規則の変更が行われたときには、乱数列変更回路５５５から出力される乱数列ＲＳＮが、「４→３→…→４６５５３１」となる。
【０１３８】
ラッチ用フリップフロップ５５７Ａ、５５７Ｂはそれぞれ、例えばＤ型フリップフロップなどを用いて構成される。ラッチ用フリップフロップ５５７Ａでは、Ｄ入力端子にＰＩＰ５１０が備える入力ポートＰ０からの配線が接続され、クロック端子ＣＫにラッチ用クロックＲＣ１を伝送する配線が接続されている。この実施の形態では、入力ポートＰ０に第１始動口スイッチ２２Ａからの第１始動入賞信号ＳＳ１が入力される。ラッチ用フリップフロップ５５７Ａは、ラッチ用クロックＲＣ１の立ち上がりエッジなどに応答して、第１始動入賞信号ＳＳ１（実際には、ＳＳ１の反転信号）を取り込み、始動入賞時ラッチ信号ＳＬ１として出力する。これにより、ラッチ用フリップフロップ５５７Ａでは、ラッチ用クロックＲＣ１の立ち上がりエッジに同期して、第１始動入賞信号ＳＳ１が始動入賞時ラッチ信号ＳＬ１として出力される。ラッチ用フリップフロップ５５７Ｂでは、Ｄ入力端子にＰＩＰ５１０が備える入力ポートＰ１からの配線が接続され、クロック端子ＣＫにラッチ用クロックＲＣ２を伝送する配線が接続されている。この実施の形態では、入力ポートＰ１に第２始動口スイッチ２２Ｂからの第２始動入賞信号ＳＳ２が入力される。ラッチ用フリップフロップ５５７Ｂは、ラッチ用クロックＲＣ２の立ち上がりエッジなどに応答して、第２始動入賞信号ＳＳ２（実際には、ＳＳ２の反転信号）を取り込み、始動入賞時ラッチ信号ＳＬ２として出力する。これにより、ラッチ用フリップフロップ５５７Ｂでは、ラッチ用クロックＲＣ２の立ち上がりエッジに同期して、第２始動入賞信号ＳＳ２が始動入賞時ラッチ信号ＳＬ２として出力される。
【０１３９】
なお、第１始動入賞信号ＳＳ１や第２始動入賞信号ＳＳ２は、第１始動口スイッチ２２Ａや第２始動口スイッチ２２Ｂから直接伝送されるものに限定されない。一例として、第１始動口スイッチ２２Ａからの出力信号や第２始動口スイッチ２２Ｂからの出力信号がオン状態となっている時間を計測し、計測した時間が所定の時間（例えば３ｍｓ）になったときに、第１始動入賞信号ＳＳ１や第２始動入賞信号ＳＳ２を出力するタイマ回路を設けてもよい。
【０１４０】
乱数ラッチセレクタ５５８Ａは、ラッチ用フリップフロップ５５７Ａから伝送される始動入賞時ラッチ信号ＳＬ１と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号ＬＬ１として選択的に出力する回路である。乱数ラッチセレクタ５５８Ｂは、ラッチ用フリップフロップ５５７Ｂから伝送される始動入賞時ラッチ信号ＳＬ２と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号ＬＬ１として選択的に出力する回路である。乱数ラッチセレクタ５５８Ａと乱数ラッチセレクタ５５８Ｂは、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００が備える内蔵レジスタのうち、乱数値取込レジスタＲＤＬＴ（アドレス２０３２Ｈ）と、乱数ラッチ選択レジスタＲＤＬＳ（アドレス２０３０Ｈ）とを用いて、乱数ラッチ信号ＬＬ１や乱数ラッチ信号ＬＬ２の出力を制御する。乱数値取込レジスタＲＤＬＴは、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを、ソフトウェアにより乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂに取り込むために用いられるレジスタである。乱数ラッチ選択レジスタＲＤＬＳは、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを、乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂに、ソフトウェアにより取り込むか、入力ポートＰ０、Ｐ１への信号入力により取り込むかの取込方法を示すレジスタである。
【０１４１】
図１７（Ａ）は、乱数値取込レジスタＲＤＬＴの構成例を示している。図１７（Ｂ）は、乱数値取込レジスタＲＤＬＴに格納される乱数値取込指定データの各ビットにおける設定内容の一例を示している。乱数値取込レジスタＲＤＬＴのビット番号［１］に格納される乱数値取込指定データＲＤＬＴ１は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂに対する乱数値取込指定の有無を示している。図１７（Ｂ）に示す例では、ソフトウェアにより乱数値レジスタＲ２Ｄに対する乱数値の取込指定がないときに、乱数値取込指定データＲＤＬＴ１のビット値が“０”となる一方、乱数値の取込指定があったときには、そのビット値が“１”となる。乱数値取込レジスタＲＤＬＴのビット番号［０］に格納される乱数値取込指定データＲＤＬＴ０は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａに対する乱数値取込指定の有無を示している。図１７（Ｂ）に示す例では、ソフトウェアにより乱数値レジスタＲ１Ｄに対する乱数値の取込指定がないときに、乱数値取込指定データＲＤＬＴ０のビット値が“０”となる一方、乱数値の取込指定があったときには、そのビット値が“１”となる。
【０１４２】
図１８（Ａ）は、乱数ラッチ選択レジスタＲＤＬＳの構成例を示している。図１８（Ｂ）は、乱数ラッチ選択レジスタＲＤＬＳに格納される乱数ラッチ選択データの各ビットにおける設定内容の一例を示している。乱数ラッチ選択レジスタＲＤＬＳのビット番号［１］に格納される乱数ラッチ選択データＲＤＬＳ１は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂへの取込方法を示している。図１８（Ｂ）に示す例では、ソフトウェアによる乱数値取込指定データＲＤＬＴ１の書き込みに応じて乱数値となる数値データを乱数値レジスタＲ２Ｄに取り込む場合に、乱数ラッチ選択データＲＤＬＳ１のビット値を“０”とする。これに対して、入力ポートＰ１への信号入力に応じて乱数値となる数値データを乱数値レジスタＲ２Ｄに取り込む場合には、乱数ラッチ選択データＲＤＬＳ１のビット値を“１”とする。乱数ラッチ選択レジスタＲＤＬＳのビット番号［０］に格納される乱数ラッチ選択データＲＤＬＳ０は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａへの取込方法を示している。図１８（Ｂ）に示す例では、ソフトウェアによる乱数値取込指定データＲＤＬＴ０の書き込みに応じて乱数値となる数値データを乱数値レジスタＲ１Ｄに取り込む場合に、乱数ラッチ選択データＲＤＬＳ０のビット値を“０”とする。これに対して、入力ポートＰ０への信号入力に応じて乱数値となる数値データを乱数値レジスタＲ１Ｄに取り込む場合には、乱数ラッチ選択データＲＤＬＳ０のビット値を“１”とする。
【０１４３】
乱数値レジスタ５５９Ａ、５５９Ｂはそれぞれ、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを乱数値として格納するレジスタである。図１９（Ａ）及び（Ｂ）は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａの構成例を示している。なお、図１９（Ａ）は、乱数値レジスタＲ１Ｄの下位バイトＲ１Ｄ（Ｌ）を示し、図１９（Ｂ）は、乱数値レジスタＲ１Ｄの上位バイトＲ１Ｄ（Ｈ）を示している。図１９（Ｃ）及び（Ｄ）は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂの構成例を示している。なお、図１９（Ｃ）は、乱数値レジスタＲ２Ｄの下位バイトＲ２Ｄ（Ｌ）を示し、図１９（Ｄ）は、乱数値レジスタＲ２Ｄの上位バイトＲ２Ｄ（Ｈ）を示している。乱数値レジスタ５５９Ａ、５５９Ｂはいずれも１６ビット（２バイト）のレジスタであり、１６ビットの乱数値を格納することができる。
【０１４４】
乱数値レジスタ５５９Ａは、乱数ラッチセレクタ５５８Ａから供給される乱数ラッチ信号ＬＬ１がオン状態となったことに応答して、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ５５９Ａは、ＣＰＵ５０５から供給されるレジスタリード信号ＲＲＳ１がオン状態となったときに、読出可能（イネーブル）状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号ＲＲＳ１がオフ状態であるときには、常に同じ値（例えば「６５５３５Ｈ」など）を出力して、読出不能（ディセーブル）状態となればよい。また、乱数値レジスタ５５９Ａは、乱数ラッチ信号ＬＬ１がオン状態である場合に、レジスタリード信号ＲＲＳ１を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ５５９Ａは、乱数ラッチ信号ＬＬ１がオン状態となるより前にレジスタリード信号ＲＲＳ１がオン状態となっている場合に、乱数ラッチ信号ＬＬ１を受信不可能な状態となるようにしてもよい。
【０１４５】
乱数値レジスタ５５９Ｂは、乱数ラッチセレクタ５５８Ｂから供給される乱数ラッチ信号ＬＬ２がオン状態となったことに応答して、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ５５９Ｂは、ＣＰＵ５０５から供給されるレジスタリード信号ＲＲＳ２がオン状態となったときに、読出可能（イネーブル）状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号ＲＲＳ２がオフ状態であるときには、常に同じ値（例えば「６５５３５Ｈ」など）を出力して、読出不能（ディセーブル）状態となればよい。また、乱数値レジスタ５５９Ｂは、乱数ラッチ信号ＬＬ２がオン状態である場合に、レジスタリード信号ＲＲＳ２を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ５５９Ｂは、乱数ラッチ信号ＬＬ２がオン状態となるより前にレジスタリード信号ＲＲＳ２がオン状態となっている場合に、乱数ラッチ信号ＬＬ２を受信不可能な状態となるようにしてもよい。
【０１４６】
乱数値レジスタ５５９Ａと乱数値レジスタ５５９Ｂは、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００が備える内蔵レジスタのうち、乱数ラッチフラグレジスタＲＤＦＭ（アドレス２０３３Ｈ）と、乱数割込み制御レジスタＲＤＩＣ（アドレス２０３１Ｈ）とを用いて、乱数ラッチ時の動作管理や割込み制御を可能にする。乱数ラッチフラグレジスタＲＤＦＭは、乱数値レジスタ５５９Ａと乱数値レジスタ５５９Ｂのそれぞれに対応して、乱数値となる数値データがラッチされたか否かを示す乱数ラッチフラグを格納するレジスタである。乱数割込み制御レジスタＲＤＩＣは、乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂに乱数値となる数値データがラッチされたときに発生する割込みの許可／禁止を設定するレジスタである。なお、乱数割込み制御レジスタＲＤＩＣは、後述する乱数値レジスタ５５９Ａまたは乱数値レジスタ５５９Ｂに数値データがラッチされたときに割込みを発生させるものとした変形例（後述）の処理で利用されるものであり、この実施の形態で利用されるものではない。
【０１４７】
図２０（Ａ）は、乱数ラッチフラグレジスタＲＤＦＭの構成例を示している。図２０（Ｂ）は、乱数ラッチフラグレジスタＲＤＦＭに格納される乱数ラッチフラグデータの各ビットにおける設定内容の一例を示している。乱数ラッチフラグレジスタＲＤＦＭのビット番号［１］に格納される乱数ラッチフラグデータＲＤＦＭ１は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図２０（Ｂ）に示す例では、乱数値レジスタＲ２Ｄに数値データが取り込まれていないときに（乱数値取込なし）、乱数ラッチフラグデータＲＤＦＭ１のビット値が“０”となる一方、数値データが取り込まれたときには（乱数値取込あり）、そのビット値が“１”となる。乱数ラッチフラグレジスタＲＤＦＭのビット番号［０］に格納される乱数ラッチフラグデータＲＤＦＭ０は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図２０（Ｂ）に示す例では、乱数値レジスタＲ１Ｄに数値データが取り込まれていないときに（乱数値取込なし）、乱数ラッチフラグデータＲＤＦＭ０のビット値が“０”となる一方、数値データが取り込まれたときには（乱数値取込あり）、そのビット値が“１”となる。
【０１４８】
図２１（Ａ）は、乱数割込み制御レジスタＲＤＩＣの構成例を示している。図２１（Ｂ）は、乱数割込み制御レジスタＲＤＩＣに格納される乱数割込み制御データの各ビットにおける設定内容の一例を示している。乱数割込み制御レジスタＲＤＩＣのビット番号［１］に格納される乱数割込み制御データＲＤＩＣ１は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図２１（Ｂ）に示す例では、乱数値レジスタＲ２Ｄへの取込時における割込みを禁止する場合に（割込み禁止）、乱数割込み制御データＲＤＩＣ１のビット値を“０”とする一方、この割込みを許可する場合には（割込み許可）、そのビット値を“１”とする。乱数割込み制御レジスタＲＤＩＣのビット番号［０］に格納される乱数割込み制御データＲＤＩＣ０は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図２１（Ｂ）に示す例では、乱数値レジスタＲ１Ｄへの取込時における割込みを禁止する場合に（割込み禁止）、乱数割込み制御データＲＤＩＣ０のビット値を“０”とする一方、この割込みを許可する場合には（割込み許可）、そのビット値を“１”とする。
【０１４９】
遊技制御用マイクロコンピュータ１００が備えるＰＩＰ５１０は、例えば６ビット幅の入力専用ポートであり、専用端子となる入力ポートＰ０〜入力ポートＰ２と、機能兼用端子となる入力ポートＰ３〜入力ポートＰ５とを含んでいる。入力ポートＰ３は、ＣＰＵ５０５等に接続される外部マスカブル割込み端子ＸＩＮＴと兼用される。入力ポートＰ４は、ＣＰＵ５０５等に接続される外部ノンマスカブル割込み端子ＸＮＭＩと兼用される。入力ポートＰ５は、シリアル通信回路５１１が使用する第１チャネル受信端子ＲＸＡと兼用される。入力ポートＰ３〜入力ポートＰ５の使用設定は、プログラム管理エリアに記憶される機能設定ＫＦＣＳにより指示される。
【０１５０】
ＰＩＰ５１０は、図７（Ｂ）に示すような遊技制御用マイクロコンピュータ１００が備える内蔵レジスタのうち、入力ポートレジスタＰＩ（アドレス２０９０Ｈ）などを用いて、入力ポートＰ０〜入力ポートＰ５の状態管理等を行う。入力ポートレジスタＰＩは、入力ポートＰ０〜入力ポートＰ５のそれぞれに対応して、外部信号の入力状態を示すビット値が格納されるレジスタである。
【０１５１】
図２２（Ａ）は、入力ポートレジスタＰＩの構成例を示している。図２２（Ｂ）は、入力ポートレジスタＰＩに格納される入力ポートデータの各ビットにおける設定内容の一例を示している。入力ポートレジスタＰＩのビット番号［５］に格納される入力ポートデータＰＩ５は、第１チャネル受信端子ＲＸＡと兼用される入力ポートＰ５における端子状態（オン／オフ）を示している。入力ポートレジスタＰＩのビット番号［４］に格納される入力ポートデータＰＩ４は、外部ノンマスカブル割込み端子ＸＮＭＩと兼用される入力ポートＰ４における端子状態（オン／オフ）を示している。入力ポートレジスタＰＩのビット番号［３］に格納される入力ポートデータＰＩ３は、外部マスカブル割込み端子ＸＩＮＴと兼用される入力ポートＰ３における端子状態（オン／オフ）を示している。入力ポートレジスタＰＩのビット番号［２］に格納される入力ポートデータＰＩ２は、入力ポートＰ２における端子状態（オン／オフ）を示している。入力ポートレジスタＰＩのビット番号［１］に格納される入力ポートデータＰＩ１は、入力ポートＰ１における端子状態（オン／オフ）を示している。入力ポートレジスタＰＩのビット番号［０］に格納される入力ポートデータＰＩ０は、入力ポートＰ０における端子状態（オン／オフ）を示している。
【０１５２】
図５に示す遊技制御用マイクロコンピュータ１００が備えるアドレスデコード回路５１２は、遊技制御用マイクロコンピュータ１００の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、遊技制御用マイクロコンピュータ１００の内部回路、あるいは、周辺デバイスとなる外部装置を、選択的に有効動作させて、ＣＰＵ５０５からのアクセスが可能となる。
【０１５３】
遊技制御用マイクロコンピュータ１００が備えるＲＯＭ５０６には、ゲーム制御用のユーザプログラムやセキュリティチェックプログラム５０６Ａの他に、遊技の進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ＲＯＭ５０６には、ＣＰＵ５０５が各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ＲＯＭ５０６には、ＣＰＵ５０５が主基板１１から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータや、飾り図柄の変動パターンを複数種類格納する変動パターンテーブルを構成するテーブルデータなどが記憶されている。
【０１５４】
図２３は、ＲＯＭ５０６に記憶される特図表示結果判定テーブルの構成例を示している。この実施の形態では、特図表示結果判定テーブルとして、図２３（Ａ）に示す第１特図表示結果判定テーブル１３０Ａと、図２３（Ｂ）に示す第２特図表示結果判定テーブル１３０Ｂとが、予め用意されている。第１特図表示結果判定テーブル１３０Ａは、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果判定用の乱数値ＭＲ１に基づいて判定するために参照されるテーブルである。第２特図表示結果判定テーブル１３０Ｂは、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果判定用の乱数値ＭＲ１に基づいて判定するために参照されるテーブルである。
【０１５５】
第１特図表示結果判定テーブル１３０Ａでは、図２５に示す遊技制御フラグ設定部５９２に設けられた確変フラグがオフであるかオンであるかに応じて、特図表示結果判定用の乱数値ＭＲ１が、大当り判定値データや小当り判定値データ、ハズレ判定値データと対応付けられるように、割り振られている。第２特図表示結果判定テーブル１３０Ｂでは、確変フラグがオフであるかオンであるかに応じて、特図表示結果判定用の乱数値ＭＲ１が、大当り判定値データやハズレ判定値データと対応付けられるように、割り振られている。第１特図表示結果判定テーブル１３０Ａや第２特別図柄表示結果判定テーブル１３０Ｂにおいて特図表示結果判定用の乱数値ＭＲ１を示すテーブルデータは、大当り遊技状態に制御するか否かの判定結果に割り振られる判定用データとなっている。そして、第１特図表示結果判定テーブル１３０Ａと第２特図表示結果判定テーブル１３０Ｂのそれぞれでは、確変フラグがオンであるときには、確変フラグがオフであるときに比べて多くの乱数値ＭＲ１が、大当り決定値データに割り振られている。ここで、パチンコ遊技機１における遊技状態が確変状態であるときには、確変フラグがオンとなる。その一方で、パチンコ遊技機１における遊技状態が通常状態や時短状態であるときには、確変フラグがオフとなる。これにより、パチンコ遊技機１における遊技状態が確変状態であるときには、通常状態や時短状態であるときに比べて、可変表示結果を「大当り」として大当り遊技状態に制御すると判定される確率が高くなる。すなわち、第１特図表示結果判定テーブル１３０Ａと第２特図表示結果判定テーブル１３０Ｂのそれぞれでは、パチンコ遊技機１における遊技状態が確変状態であるときに、通常状態や時短状態であるときに比べて大当り遊技状態に制御すると判定される確率が高くなるように、判定用データが大当り遊技状態に制御するか否かの判定結果に割り振られている。
【０１５６】
また、図２３（Ａ）に示す第１特図表示結果判定テーブル１３０Ａの設定例では、特図表示結果判定用の乱数値ＭＲ１のうち、所定範囲の値（「３００００」〜「３００９９」）が小当り判定値データと対応付けられるように割り振られている。これに対して、図２３（Ｂ）に示す第２特図表示結果判定テーブル１３０Ｂの設定例では、特図表示結果判定用の乱数値ＭＲ１が小当り判定値データとは対応付けられないように割り振られている。このような設定により、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームを開始するための第１開始条件が成立したことに基づいて可変表示結果の判定を行う場合と、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームを開始するための第２開始条件が成立したことに基づいて可変表示結果の判定を行う場合とで、可変表示結果を「小当り」として小当り遊技状態に制御すると判定される割合を、異ならせることができる。
【０１５７】
図２４は、ＲＯＭ５０６に記憶される大当り種別決定テーブル１３１の構成例を示している。大当り種別決定テーブル１３１は、可変表示結果を「大当り」として大当り遊技状態に制御すると決定されたときに、大当り種別決定用の乱数値ＭＲ２に基づき、大当り種別を複数種類のいずれかに決定するために参照されるテーブルである。大当り種別決定テーブル１３１では、図２５に示す遊技制御バッファ設定部５９５に設けられた変動特図指定バッファの値（変動特図指定バッファ値）が「１」であるか「２」であるかに応じて、大当り種別決定用の乱数値ＭＲ２が、「通常」、「第１確変」〜「第３確変」、「突確」といった複数種類の大当り種別と対応付けられるように、割り振られている。ここで、変動特図指定バッファ値は、第１開始条件の成立により第１特別図柄表示装置４Ａにて第１特図を用いた特図ゲームを開始するときに「１」が設定される一方で、第２開始条件の成立により第２特別図柄表示装置４Ｂにて第２特図を用いた特図ゲームを開始するときに「２」が設定される。また、大当り種別決定テーブル１３１は、遊技制御バッファ設定部５９５に設けられた大当り種別バッファの値（大当り種別バッファ値）を、大当り種別決定用の乱数値ＭＲ２に基づいて決定された大当り種別に対応して、「０」〜「４」のいずれかに設定するためのテーブルデータ（設定用データ）を含んでいる。
【０１５８】
図２４に示す大当り種別決定テーブル１３１の設定例では、変動特図指定バッファ値が「１」であるか「２」であるかに応じて、「突確」の大当り種別に対する大当り種別決定用の乱数値ＭＲ２の割り振りが異なっている。すなわち、変動特図指定バッファ値が「１」である場合には、大当り種別決定用の乱数値ＭＲ２のうち「８２」〜「９９」の範囲の値が「突確」の大当り種別に割り振られる一方で、変動特図指定バッファ値が「２」である場合には、「突確」の大当り種別に対して大当り種別決定用の乱数値ＭＲ２が割り振られていない。このような設定により、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームを開始するための第１開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合と、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームを開始するための第２開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合とで、大当り種別を「突確」に決定する割合を、異ならせることができる。なお、変動特図指定バッファ値が「２」である場合にも、大当り種別決定用の乱数値ＭＲ２のうち、変動特図指定バッファ値が「１」である場合とは異なる所定範囲の値が、「突確」の大当り種別に対して割り振られるようにしてもよい。一例として、変動特図指定バッファ値が「２」である場合には、大当り種別決定用の乱数値ＭＲ２のうち、変動特図指定バッファ値が「１」である場合に比べて少ない個数の値が「突確」の大当り種別に対して割り振られるように設定すれば、第２開始条件が成立したときには、第１開始条件が成立したときに比べて、「突確」の大当り種別に決定される割合を低減することができる。
【０１５９】
上記の決定において大当たり遊技状態に制御しないことが決定された場合には、リーチ判定用の乱数値ＭＲ３に基づいてリーチの可変表示態様とするか否かを判定する。なお、大当たり遊技状態に制御する場合には大当たり種別とが決定された場合には、リーチ判定用の乱数値ＭＲ３に基づく判定を行わなくとも、必ずリーチの可変表示態様となる（大当たりの前提としてリーチが出現することになるため）。さらに、これらの決定内容毎に用意された変動パターン種別決定用テーブルと、変動パターン種別決定用の乱数値ＭＲ４とに基づいて、変動パターン種別（大当たり遊技状態に制御しない場合には、非リーチハズレ、ノーマルリーチ、スーパーリーチの３種類、大当たり遊技状態に制御する場合には、ノーマルリーチ、スーパーリーチの２種類）を決定する。さらに、これらの決定内容毎に用意された変動パターンテーブルと、変動パターン決定用の乱数値ＭＲ５とに基づいて、具体的な変動パターンを決定する。
【０１６０】
遊技制御用マイクロコンピュータ１００が備えるＲＡＭ５０７には、パチンコ遊技機１における遊技の進行などを制御するために用いられる各種のデータを保持する領域として、例えば図２５に示すような遊技制御用データ保持エリア５９０が設けられている。図２５に示す遊技制御用データ保持エリア５９０は、第１特図保留記憶部５９１Ａと、第２特図保留記憶部５９１Ｂと、始動データ記憶部５９１Ｃと、遊技制御フラグ設定部５９２と、遊技制御タイマ設定部５９３と、遊技制御カウンタ設定部５９４と、遊技制御バッファ設定部５９５と、第１乱数読出部５９６Ａと、第２乱数読出部５９６Ｂとを備えている。また、ＲＡＭ５０７としては、例えばＤＲＡＭ（Dynamic RAM）が使用されており、記憶しているデータ内容を維持するためのリフレッシュ動作が必要になる。ＣＰＵ５０５には、このリフレッシュ動作を行うためのリフレッシュレジスタが内蔵されている。例えば、リフレッシュレジスタは８ビットからなり、そのうち下位７ビットはＣＰＵ５０５がＲＯＭ５０６から命令フェッチするごとに自動的にインクリメントされる。したがって、リフレッシュレジスタにおける格納値の更新は、ＣＰＵ５０５における１命令の実行時間ごとに行われることになる。
【０１６１】
第１特図保留記憶部５９１Ａは、普通入賞球装置６Ａが形成する第１始動入賞口に遊技球が入賞して第１始動条件は成立したが第１開始条件は成立していない特図ゲーム（第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲーム）の保留データを記憶する。一例として、第１特図保留記憶部５９１Ａは、第１始動入賞口への入賞順に保留番号と関連付けて、その入賞による第１始動条件の成立に基づいてＣＰＵ５０５により取得された特図表示結果判定用の乱数値ＭＲ１を示す数値データや大当り種別決定用の乱数値ＭＲ２を示す数値データを保留データとし、その数が所定の上限値（例えば「４」）に達するまで記憶する。
【０１６２】
第２特図保留記憶部５９１Ｂは、普通可変入賞球装置６Ｂが形成する第２始動入賞口に遊技球が入賞して第２始動条件は成立したが第２開始条件は成立していない特図ゲーム（第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲーム）の保留データを記憶する。一例として、第２特図保留記憶部５９１Ｂは、第２始動入賞口への入賞順に保留番号と関連付けて、その入賞による第２始動条件の成立に基づいてＣＰＵ５０５により取得された特図表示結果判定用の乱数値ＭＲ１を示す数値データや大当り種別決定用の乱数値ＭＲ２を示す数値データを保留データとし、その数が所定の上限値（例えば「４」）に達するまで記憶する。
【０１６３】
始動データ記憶部５９１Ｃは、第１始動入賞口と第２始動入賞口のいずれに遊技球が入賞したかを示す始動データを、各遊技球の入賞順を特定可能として記憶する。一例として、始動データ記憶部５９１Ｃには、合計保留記憶数の上限値（例えば「８」）に対応した領域が確保され、第１始動入賞口への入賞に対応した「第１」の始動データ、あるいは、第２始動入賞口への入賞に対応した「第２」の始動データを、各遊技球の入賞順に従った保留番号と関連付けて記憶する。
【０１６４】
遊技制御フラグ設定部５９２には、パチンコ遊技機１における遊技の進行状況などに応じて状態を更新可能な複数種類のフラグが設けられている。例えば、遊技制御フラグ設定部５９２には、複数種類のフラグそれぞれについて、フラグの値を示すデータや、オン状態あるいはオフ状態を示すデータが記憶される。この実施の形態では、遊技制御フラグ設定部５９２に、特図プロセスフラグ、普図プロセスフラグ、大当りフラグ、小当りフラグ、確変フラグ、時短フラグなどが設けられている。
【０１６５】
特図プロセスフラグは、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームの進行や、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームの進行などを制御するために実行される図３０のステップＳ９６や図３３に示す特別図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。普図プロセスフラグは、普通図柄表示器２０による普通図柄を用いた普図ゲームの進行などを制御するために実行される図３０のステップＳ９７に示す普通図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。
【０１６６】
大当りフラグは、特図ゲームが開始されるときに可変表示結果を「大当り」とする旨の判定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として大当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。小当りフラグは、特図ゲームが開始されるときに可変表示結果を「小当り」とする旨の判定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として小当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。確変フラグは、パチンコ遊技機１における遊技状態が確変状態に制御されることに対応してオン状態にセットされる一方で、確変状態が終了することなどに対応してクリアされてオフ状態となる。時短フラグは、パチンコ遊技機１における遊技状態が時短状態に制御されることに対応してオン状態にセットされる一方で、時短状態が終了することなどに対応してクリアされてオフ状態となる。
【０１６７】
遊技制御タイマ設定部５９３には、パチンコ遊技機１における遊技の進行を制御するために用いられる各種のタイマが設けられている。例えば、遊技制御タイマ設定部５９３には、複数種類のタイマそれぞれにおけるタイマ値を示すデータが記憶される。この実施の形態では、遊技制御タイマ設定部５９３に、遊技制御プロセスタイマ、特図変動タイマ、普図変動タイマなどが設けられている。
【０１６８】
遊技制御プロセスタイマは、例えば大当り遊技状態あるいは小当り遊技状態の進行を制御するための時間などを、主基板１１の側にて計測するためのものである。具体的な一例として、遊技制御プロセスタイマは、大当り遊技状態あるいは小当り遊技状態の進行を制御するために計測する時間に対応したタイマ値を示すデータを、遊技制御プロセスタイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。
【０１６９】
特図変動タイマは、特図ゲームの実行時間である特図変動時間といった特図ゲームの進行を制御するための時間を、主基板１１の側にて計測するためのものである。具体的な一例として、特図変動タイマは、特図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、特図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。
【０１７０】
普図変動タイマは、普図ゲームの実行時間である普図変動時間といった普図ゲームの進行を制御するための時間を、主基板１１の側にて計測するためのものである。具体的な一例として、普図変動タイマは、普図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、普図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。
【０１７１】
遊技制御カウンタ設定部５９４には、パチンコ遊技機１における遊技の進行を制御するために用いられるカウント値を計数するためのカウンタが複数種類設けられている。例えば、遊技制御カウンタ設定部５９４には、複数種類のカウンタそれぞれにおけるカウント値を示すデータが記憶される。この実施の形態では、遊技制御カウンタ設定部５９４に、ランダムカウンタ、第１保留記憶数カウンタ、第２保留記憶数カウンタ、合計保留記憶数カウンタ、ラウンド数カウンタ、第１始動入賞判定カウンタ、第２始動入賞判定カウンタなどが設けられている。
【０１７２】
遊技制御カウンタ設定部５９４のランダムカウンタは、遊技の進行を制御するために用いられる乱数値を示す数値データの一部を、乱数回路５０９とは別個に、ＣＰＵ５０５がソフトウェアにより更新可能にカウントするためのものである。例えば、遊技制御カウンタ設定部５９４のランダムカウンタには、乱数値ＭＲ１〜ＭＲ６を示す数値データが、ランダムカウント値として記憶される。そして、乱数値ＭＲ２〜ＭＲ５については、ＣＰＵ５０５によるソフトウェアの実行に応じて、定期的あるいは不定期に、各乱数値を示す数値データが更新される。
【０１７３】
ラウンド数カウンタは、大当り遊技状態におけるラウンドの実行回数などをカウントするためのものである。例えば、ラウンド数カウンタには、大当り遊技状態の開始時にカウント初期値「１」を示すデータが、ラウンド数カウント値として設定される。そして、１回のラウンドが終了して次回のラウンドが開始されるときに、ラウンド数カウント値が１加算されて更新される。また、ラウンド数カウンタは、小当り遊技状態における可変入賞動作の実行回数もカウントするようにしてもよい。
【０１７４】
第１始動入賞判定カウンタは、第１始動口スイッチ２２Ａから伝送される検出信号としての第１始動入賞信号ＳＳ１がオン状態（すなわち、ローレベル）となっているときに、遊技制御用のタイマ割込みが発生するごとにカウントアップされるアップカウンタとして用いられる。そして、第１始動入賞判定カウンタの値である第１始動入賞判定カウント値が所定の入賞判定値（例えば「２」）に達したときに、第１始動入賞口に進入した遊技球を有効に検出したと判定される。
【０１７５】
第２始動入賞判定カウンタは、第２始動口スイッチ２２Ｂから伝送される検出信号としての第２始動入賞信号ＳＳ２がオン状態（すなわち、ローレベル）となっているときに、遊技制御用のタイマ割込みが発生するごとにカウントアップされるアップカウンタとして用いられる。そして、第２始動入賞判定カウンタの値である第２始動入賞判定カウント値が所定の入賞判定値（例えば「２」）に達したときに、第２始動入賞口に進入した遊技球を有効に検出したと判定される。
【０１７６】
遊技制御バッファ設定部５９５は、パチンコ遊技機１における遊技の進行を制御するために用いられるデータを一時的に記憶する各種のバッファが設けられている。例えば、遊技制御バッファ設定部５９５には、複数種類のバッファそれぞれにおけるバッファ値を示すデータが記憶される。この実施の形態では、遊技制御バッファ設定部５９５に、送信コマンドバッファ、変動特図指定バッファ、大当り種別バッファ、始動口バッファなどが設けられている。
【０１７７】
送信コマンドバッファは、主基板１１からサブ側の制御基板に対して制御コマンドを送信するための設定データを一時的に格納するために用いられる。例えば、送信コマンドバッファは、複数（例えば「１２」）のバッファ領域を備えて構成され、送信する制御コマンドに対応したコマンドテーブルのＲＯＭ５０６における記憶アドレスを示す設定データなどが、各バッファ領域に格納される。また、送信コマンドバッファにおいて設定データの書込や読出を行うバッファ領域は、送信コマンドポインタなどによって指定され、複数のバッファ領域をリングバッファとして使用することができるように構成されていればよい。
【０１７８】
変動特図指定バッファには、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームと、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームのうち、いずれの特図ゲームが実行されるかを示すバッファ値が格納される。一例として、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファの値（変動特図指定バッファ値）が“１”に設定される。また、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファ値が“２”に設定される。そして、特図ゲームが終了したことなどに対応して、変動特図指定バッファ値が“０”に設定される。
【０１７９】
大当り種別バッファには、可変表示結果が「大当り」となる場合における飾り図柄の可変表示態様を、「通常」、「第１確変」〜「第３確変」、「突確」といった複数種類の大当り種別のいずれかとする決定結果に対応したバッファ値が格納される。一例として、図２４に示すような大当り種別決定テーブル１３１での設定に基づき、大当り種別が「通常」の場合には大当り種別バッファの値（大当り種別バッファ値）が「０」に設定され、大当り種別が「第１確変」の場合には大当り種別バッファ値が「１」に設定され、大当り種別が「第２確変」の場合には大当り種別バッファ値が「２」に設定され、大当り種別が「第３確変」の場合には大当り種別バッファ値が「３」に設定され、大当り種別が「突確」の場合には大当り種別バッファ値が「４」に設定される。
【０１８０】
始動口バッファには、普通入賞球装置６Ａが形成する第１始動入賞口と、普通可変入賞球装置６Ｂが形成する第２始動入賞口のうち、いずれの始動入賞口に進入した遊技球が有効に検出されたかに対応したバッファ値が、始動口バッファ値として格納される。一例として、第１始動入賞口に進入した遊技球が第１始動口スイッチ２２Ａにより有効に検出されたときには、始動口バッファ値が「１」に設定され、第２始動入賞口に進入した遊技球が第２始動口スイッチ２２Ｂにより有効に検出されたときには、始動口バッファ値が「２」に設定される。
【０１８１】
第１乱数読出部５９６Ａは、乱数値レジスタ５５９Ａに取り込まれていた数値データを格納する領域であり、第２乱数読出部５９６Ｂは、乱数値レジスタ５５９Ｂに取り込まれていた数値データを格納する領域である。例えば、遊技制御用タイマ割り込み（図３０参照）毎に、乱数ラッチフラグレジスタのビット番号［０］の値がセットされているか、すなわち乱数値レジスタ５５９Ａに数値データが取り込まれているかが監視されており、乱数値レジスタ５５９Ａに数値データが取り込まれていると、ここから数値データが読み出されて第１乱数読出部５９６Ａに書き込まれるものとなる。また、乱数ラッチフラグレジスタのビット番号［１］の値がセットされているか、すなわち乱数値レジスタ５５９Ｂに数値データが取り込まれているかも監視されており、乱数値レジスタ５５９Ｂに数値データが取り込まれていると、ここから数値データが読み出されて第２乱数読出部５９６Ｂに書き込まれるものとなる。
【０１８２】
図２に示すように、演出制御基板１２には、演出制御用マイクロコンピュータ１２０が搭載されている。また、演出制御基板１２には、演出制御用マイクロコンピュータ１２０からの描画コマンドに応じて画像データを生成するＶＤＰ（Video Display Processor）１２１や、画像表示装置５、スピーカ８Ｌ、８Ｒ及び遊技効果ランプ９等の発光体といった演出装置による演出動作を制御するために用いられる各種データを記憶する演出データメモリ１２２なども搭載されている。演出制御用マイクロコンピュータ１２０は、例えば遊技制御用マイクロコンピュータ１００と同様の構成を有する１チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット／割込みコントローラ、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＣＴＣ、乱数回路、ＰＩＰ、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、演出制御用マイクロコンピュータ１２０における構成の全部又は一部を、遊技制御用マイクロコンピュータ１００における構成とは異ならせてもよい。一例として、演出制御基板１２の側で用いられる乱数値となる数値データを、全てソフトウェアにより更新する場合には、演出制御用マイクロコンピュータ１２０が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板１１から伝送される演出制御コマンドを受信可能な受信回路が設けられていればよく、画像表示装置５、音声制御基板１３、ランプ制御基板１４に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
【０１８３】
演出制御用マイクロコンピュータ１２０では、ＣＰＵがＲＯＭから読み出した演出制御用のプログラムを実行することにより、演出用の電気部品（演出装置）による演出動作を制御するための処理が実行される。このときには、ＣＰＵがＲＯＭから固定データを読み出す固定データ読出動作や、ＣＰＵがＲＡＭに各種の変動データを書き込んで一時記憶させる変動データ書込動作、ＣＰＵがＲＡＭに一時記憶されている各種の変動データを読み出す変動データ読出動作、ＣＰＵが外部バスインタフェースやＰＩＰ、シリアル通信回路などを介して演出制御用マイクロコンピュータ１２０の外部から各種信号の入力を受け付ける受信動作、ＣＰＵが外部バスインタフェースやシリアル通信回路などを介して演出制御用マイクロコンピュータ１２０の外部へと各種信号を出力する送信動作なども行われる。なお、演出制御用マイクロコンピュータ１２０を構成する１チップのマイクロコンピュータには、少なくともＣＰＵの他にＲＡＭが内蔵されていればよく、ＲＯＭや乱数回路、ＰＩＰなどは、外付けされるものでも内蔵されるものでもよい。
【０１８４】
この実施の形態において、中継基板１８を介して主基板１１から送信された演出制御コマンドとなる制御信号は、演出制御用マイクロコンピュータ１２０が備える所定のシリアル受信端子に供給され、演出制御用マイクロコンピュータ１２０に内蔵されたシリアル通信回路にて受信される。
【０１８５】
なお、演出制御基板１２と画像表示装置５の間には、画像データにおける解像度を変換するためのスケーラ回路が設けられていてもよい。この場合、演出制御基板１２に搭載されたＶＤＰ１２１が演出制御用マイクロコンピュータ１２０からの描画コマンドに応じて生成した画像データは、スケーラ回路により解像度が変換された後、画像表示装置５に供給される。具体的な一例として、スケーラ回路は、ＶＤＰによって生成された第１の解像度による画像データを入力し、垂直方向及び水平方向のいずれか一方あるいは双方について、以下のような処理を施すことにより、入力された画像データを第１の解像度とは異なる第２の解像度に変換する。
【０１８６】
例えば、垂直方向における解像度を変換する場合には、入力された画像データの垂直方向に沿って第１のサンプルレートでアップサンプリングを行った後、予め用意されたフィルタ（例えばＦＩＲフィルタ）によるフィルタリング処理を施す。その後、垂直方向に沿って所定のスケーリング係数に対応する第２のサンプルレートでダウンサンプリングを行うようにすればよい。また、水平方向における解像度を変換する場合には、入力された画像データの水平方向に沿って、垂直方向と同じようなアップサンプリング、フィルタリング処理及びダウンサンプリングを行うようにすればよい。具体的な一例として、ＶＤＰによってＶＧＡモード（６４０×４８０ピクセル）の画像データが生成された場合に、スケーラ回路における変換処理により、その画像データをＳＸＧＡモード（１２８０×１０２４ピクセル）、あるいは他のモードに変換することが可能になる。
【０１８７】
音声制御基板１３には、例えば入出力ドライバや音声合成用ＩＣ、音声データＲＯＭ、増幅回路、ボリュームなどが搭載されている。一例として、音声制御基板１３では、演出制御基板１２から伝送された効果音信号に示される音番号データが入出力ドライバを介して音声合成用ＩＣに入力される。音声合成用ＩＣは、音番号データに応じた音声や効果音を生成し増幅回路に出力する。増幅回路は、音声合成用ＩＣの出力レベルを、ボリュームで設定されている音量に応じたレベルに増幅した音声信号を、スピーカ８Ｌ、８Ｒに出力する。音声データＲＯＭには、音番号データに応じた制御データが格納されており、音声合成用ＩＣが音番号データに応じた制御データを読み出して、音声や効果音が生成される。音声データＲＯＭの記憶データは、所定期間における音声や効果音の出力態様を時系列的に示すデータなどから構成されていればよい。
【０１８８】
ランプ制御基板１４には、例えば入出力ドライバやランプドライバなどが搭載されている。一例として、ランプ制御基板１４では、演出制御基板１２から伝送された電飾信号が、入出力ドライバを介してランプドライバに入力される。ランプドライバは、電飾信号を増幅して遊技効果ランプ９などに供給する。
【０１８９】
払出制御基板１５には、払出制御用マイクロコンピュータ１５０やスイッチ回路１５１などが搭載されている。スイッチ回路１５１には、満タンスイッチ２６、球切れスイッチ２７、払出モータ位置センサ７１、払出カウントスイッチ７２、エラー解除スイッチ７３などの各種スイッチやセンサからの検出信号が入力される。スイッチ回路１５１は、これらの検出信号を取り込んで、払出制御用マイクロコンピュータ１５０に伝送する。払出制御用マイクロコンピュータ１５０は、例えば遊技制御用マイクロコンピュータ１００と同様の１チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット／割込みコントローラ、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＣＴＣ、乱数回路、ＰＩＰ、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、払出制御用マイクロコンピュータ１５０における構成の全部又は一部を、遊技制御用マイクロコンピュータ１００における構成とは異ならせてもよい。一例として、払出制御基板１５の側で乱数値となる数値データを用いない場合には、払出制御用マイクロコンピュータ１５０が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板１１との間で双方向のシリアル通信が可能な送受信回路が１つ設けられていればよく、払出モータ５１、エラー表示用ＬＥＤ７４、発射制御基板１７に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
【０１９０】
払出制御用マイクロコンピュータ１５０では、ＣＰＵがＲＯＭから読み出した払出制御用のプログラムを実行することにより、払出モータ５１を含む払出装置による払出動作などを制御するための処理が実行される。このときには、ＣＰＵがＲＯＭから固定データを読み出す固定データ読出動作や、ＣＰＵがＲＡＭに各種の変動データを書き込んで一時記憶させる変動データ書込動作、ＣＰＵがＲＡＭに一時記憶されている各種の変動データを読み出す変動データ読出動作、ＣＰＵが外部バスインタフェースやＰＩＰ、シリアル通信回路などを介して払出制御用マイクロコンピュータ１５０の外部から各種信号の入力を受け付ける受信動作、ＣＰＵが外部バスインタフェースやシリアル通信回路などを介して払出制御用マイクロコンピュータ１５０の外部へと各種信号を出力する送信動作なども行われる。なお、払出制御用マイクロコンピュータ１５０を構成する１チップのマイクロコンピュータには、少なくともＣＰＵの他にＲＡＭが内蔵されていればよく、ＲＯＭやＰＩＰなどは、外付けされるものでも内蔵されるものでもよい。
【０１９１】
次に、本実施例におけるパチンコ遊技機１の動作（作用）を説明する。主基板１１では、電源基板１０からの電力供給が開始され遊技制御用マイクロコンピュータ１００へのリセット信号がハイレベル（オフ状態）になったことに応じて、遊技制御用マイクロコンピュータ１００が起動し、ＣＰＵ５０５がＲＯＭ５０６から読み出したセキュリティチェックプログラム５０６Ａに基づき、図２６のフローチャートに示すようなセキュリティチェック処理が実行される。このとき、遊技制御用マイクロコンピュータ１００は、セキュリティモードとなり、ＲＯＭ５０６に記憶されているゲーム制御用のユーザプログラムは未だ実行されない状態となる。
【０１９２】
図２６に示すセキュリティチェック処理を開始すると、ＣＰＵ５０５は、まず、セキュリティチェック処理が実行されることにより遊技制御用マイクロコンピュータ１００がセキュリティモードとなる時間（セキュリティ時間）を決定するための処理を実行する。このとき、ＣＰＵ５０５は、ＲＯＭ５０６のプログラム管理エリアに記憶されるセキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値を読み出す（ステップＳ１）。そして、この読出値が“０００”であるか否かを判定する（ステップＳ２）。
【０１９３】
ステップＳ２にて読出値が“０００”と判定された場合には（ステップＳ２；Ｙｅｓ）、定常設定時間を既定の固定時間に設定する（ステップＳ３）。ここで、定常設定時間は、セキュリティ時間のうち、パチンコ遊技機１におけるシステムリセットの発生等に基づくセキュリティチェック処理の実行回数（遊技制御用マイクロコンピュータ１００がセキュリティーモードとなる回数）に関わりなく、一定となる時間成分である。また、固定時間は、セキュリティ時間のうち、遊技制御用マイクロコンピュータ１００の仕様などに基づいて予め定められた不変時間成分であり、例えばセキュリティ時間として設定可能な最小値となるものであればよい。
【０１９４】
ステップＳ２にて読出値が“０００”以外と判定された場合には（ステップＳ２；Ｎｏ）、その読出値に対応して、固定時間に加えて図１０（Ｄ）に示す設定内容により選択される延長時間を、定常設定時間に設定する（ステップＳ４）。こうして、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“０００”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、固定時間に加えて予め選択可能な複数の延長時間のいずれかに設定することができる。
【０１９５】
ステップＳ３、Ｓ４の処理のいずれかを実行した後には、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値を読み出す（ステップＳ５）。そして、この読出値が“００”であるか否かを判定する（ステップＳ６）。
【０１９６】
ステップＳ６にて読出値が“００”と判定された場合には（ステップＳ６；Ｙｅｓ）、定常設定時間をセキュリティ時間に設定する（ステップＳ７）。これに対して、読出値が“００”以外と判定された場合には（ステップＳ６；Ｎｏ）、その読出値に対応して決定される可変設定時間を、定常設定時間に加算してセキュリティ時間に設定する（ステップＳ８）。ここで、可変設定時間は、セキュリティ時間のうち、セキュリティチェック処理が実行されるごとに変化する時間成分であり、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値が“０１”（ショートモード）であるか“１０”（ロングモード）であるかに応じて異なる所定の時間範囲で変化する。例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ１００に内蔵された可変セキュリティ時間用レジスタに格納される場合には、ステップＳ８の処理において、可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数（例えばハッシュ関数）に代入して得られた値を用いることなどにより、可変設定時間がシステムリセット毎に所定の時間範囲でランダムに変化するように決定されればよい。こうして、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値が“００”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、システムリセットの発生等に基づくセキュリティチェック処理が実行されるごとに所定の時間範囲で変化させることができる。
【０１９７】
ここで、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“０００”以外の値であり、なおかつ、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値が“００”以外の値である場合には、ステップＳ４にて設定される延長時間と、ステップＳ８にて設定される可変設定時間との双方が、固定時間に加算されて、セキュリティ時間が決定されることになる。
【０１９８】
ステップＳ７、Ｓ８の処理のいずれかを実行した後には、ＲＯＭ５０６の所定領域に記憶されたセキュリティコードを読み出す（ステップＳ９）。ここで、ＲＯＭ５０６の所定領域には、記憶内容のデータを所定の演算式によって演算した演算結果のセキュリティコードが予め記憶されている。セキュリティコードの生成方法としては、例えばハッシュ関数を用いてハッシュ値を生成するもの、エラー検出コード（ＣＲＣコード）を用いるもの、エラー訂正コード（ＥＣＣコード）を用いるもののいずれかといった、予め定められた生成方法を使用すればよい。また、ＲＯＭ５０６のセキュリティコード記憶領域とは異なる所定領域には、セキュリティコードを演算により特定するための演算式が、暗号化して予め記憶されている。
【０１９９】
ステップＳ９の処理に続いて、暗号化された演算式を復号化して元に戻す（ステップＳ１０）。その後、ステップＳ１０で復号化した演算式により、ＲＯＭ５０６の所定領域における記憶データを演算してセキュリティコードを特定する（ステップＳ１１）。このときセキュリティコードを特定するための演算に用いる記憶データは、例えばＲＯＭ５０６の記憶データのうち、セキュリティチェックプログラム５０６Ａとは異なるユーザプログラムの全部又は一部に相当するプログラムデータ、あるいは、所定のテーブルデータを構成する固定データの全部又は一部であればよい。そして、ステップＳ９にて読み出したセキュリティコードと、ステップＳ１１にて特定されたセキュリティコードとを比較する（ステップＳ１２）。このときには、比較結果においてセキュリティコードが一致したか否かを判定する（ステップＳ１３）。
【０２００】
ステップＳ１３にてセキュリティコードが一致しない場合には（ステップＳ１３；Ｎｏ）、ＲＯＭ５０６に不正な変更が加えられたと判断して、ＣＰＵ５０５の動作を停止状態（ＨＡＬＴ）へ移行させる。これに対して、ステップＳ１３にてセキュリティコードが一致した場合には（ステップＳ１３；Ｙｅｓ）、ステップＳ７やステップＳ８の処理で設定されたセキュリティ時間が経過したか否かを判定する（ステップＳ１４）。このとき、セキュリティ時間が経過していなければ（ステップＳ１４；Ｎｏ）、ステップＳ１４の処理を繰り返し実行して、セキュリティ時間が経過するまで待機する。そして、ステップＳ１４にてセキュリティ時間が経過したと判定された場合には（ステップＳ１４；Ｙｅｓ）、例えばＣＰＵ５０５に内蔵されたプログラムカウンタの値をＲＯＭ５０６におけるユーザプログラムの先頭アドレス（アドレス００００Ｈ）に設定することなどにより、遊技制御メイン処理の実行を開始する。こうして、遊技制御メイン処理の実行が開始されることにより、遊技制御用マイクロコンピュータ１００の動作状態がセキュリティモードからユーザモードへと移行し、ＲＯＭ５０６に記憶されたユーザプログラムの実行が開始されることになる。
【０２０１】
図２７は、遊技制御用マイクロコンピュータ１００のＣＰＵ５０５により実行される遊技制御メイン処理の一例を示すフローチャートである。なお、以下に説明する各処理は、遊技制御用マイクロコンピュータ１００が備えるＣＰＵ５０５によって実行されるものとする。また、遊技制御用マイクロコンピュータ１００が備えるＣＴＣ５０８や乱数回路５０９、シリアル通信回路５１１などで発生した各種の割込み要因に基づく割込み要求は、ＣＰＵ５０５に所定の割込み処理を実行させるためのものである。そして、ＣＰＵ５０５やＣＰＵ５０５以外の各種回路を含んだ概念を遊技制御用マイクロコンピュータ１００ということもあるものとする。図２７に示す遊技制御メイン処理を開始すると、ＣＰＵ５０５は、まず、割込禁止に設定し（ステップＳ２１）、割込モードの設定を行う（ステップＳ２２）。例えば、ステップＳ２２では、遊技制御用マイクロコンピュータ１００の特定レジスタ（Ｉレジスタ）の値（１バイト）と内蔵デバイスが出力する割込ベクタ（１バイト：最下位ビットは“０”）とを合成することにより割込アドレスが生成されるマスク可能割込の割込モード［２］が設定される。マスク可能な割込みが発生したときには、ＣＰＵ５０５が自動的に割込禁止状態となる設定を行うとともに、プログラムカウンタの内容がスタックにセーブされればよい。
【０２０２】
続いて、例えばスタックポインタ指定アドレスの設定など、スタックポインタに関わる設定を行う（ステップＳ２３）。また、図７（Ｂ）に示すような内蔵レジスタの設定（初期化）を行う（ステップＳ２４）。ステップＳ２４の処理に続いて、ＣＴＣ５０８やＰＩＰ５１０の設定が行われる（ステップＳ２５）。ステップＳ２５の処理を実行した後には、例えばＰＩＰ５１０に含まれる所定の入力ポートにおける端子状態をチェックすることなどにより、電源断信号がオフ状態となっているか否かを判定するようにしてもよい。
【０２０３】
その後、ＲＡＭ５０７をアクセス可能に設定する（ステップＳ２６）。続いて、電源基板１０に設置されたクリアスイッチ３０４から伝送されるスイッチ信号（クリア信号）の信号状態などに基づき、クリアスイッチ３０４がオン操作されたかを判定する（ステップＳ２７）。なお、ステップＳ２７の処理では、クリアスイッチ３０４から伝送されるクリア信号を複数回チェックし、連続してオン状態となったときに、クリアスイッチ３０４がオン操作されたと判定してもよい。例えば、クリア信号の状態がオフ状態であることを１回確認したら、所定時間（例えば０．１秒）が経過した後に、クリア信号の状態をもう１回確認する。このとき、クリア信号がオフ状態であれば、クリア信号がオフ状態である旨の判定を行うようにする。他方、このときにクリア信号の状態がオン状態であれば、所定時間が経過した後に、クリア信号の状態を再び確認するようにしてもよい。なお、クリア信号の状態を再確認する回数は１回であってもよいし、複数回であってもよい。また、２回チェックして、チェック結果が一致していなかったときに、もう一度確認するようにしてもよい。
【０２０４】
ステップＳ２７にてクリアスイッチ３０４がオフであるときには（ステップＳ２７；Ｎｏ）、遊技制御フラグ設定部５９２などに設けられたバックアップフラグがオンとなっているか否かを判定する（ステップＳ２８）。バックアップフラグの状態は、遊技制御用マイクロコンピュータ１００への電力供給が停止するときに、遊技制御フラグ設定部５９２などに設定される。そして、このバックアップフラグの設定箇所がバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、バックアップフラグの状態は保存されることになる。ステップＳ２８では、例えばバックアップフラグの値として「５５Ｈ」が遊技制御フラグ設定部５９２に設定されていれば、バックアップあり（オン状態）であると判断される。これに対して、「５５Ｈ」以外の値が設定されていればバックアップなし（オフ状態）であると判断される。
【０２０５】
ステップＳ２８にてバックアップフラグがオンであるときには（ステップＳ２８；Ｙｅｓ）、ＲＡＭ５０７のデータチェックを行い、チェック結果が正常であるか否かを判定する（ステップＳ２９）。ステップＳ２９の処理では、例えばＲＡＭ５０７の特定領域における記憶データを用いてチェックサムを算出し、算出されたチェックサムとメインチェックサムバッファに記憶されているチェックサムとを比較する。ここで、メインチェックサムバッファには、前回の電力供給停止時に、同様の処理によって算出されたチェックサムが記憶されている。そして、比較結果が不一致であれば、ＲＡＭ５０７の特定領域におけるデータが電力供給停止時のデータとは異なっていることから、チェック結果が正常でないと判断される。
【０２０６】
ステップＳ２９におけるチェック結果が正常であるときには（ステップＳ２９；Ｙｅｓ）、例えば遊技制御用マイクロコンピュータ１００の内部状態といった主基板１１における制御状態や、サブ側の制御基板（例えば演出制御基板１２など）の制御状態などを電力供給が停止されたときの状態に戻すための復旧時における設定を行い、電断前の遊技状態を復旧させる（ステップＳ３０）。具体的な一例として、ステップＳ３０の処理では、ＲＯＭ５０６に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し、バックアップ時設定テーブルの内容を順次に、ＲＡＭ５０７内のワークエリアに設定する。ここで、ＲＡＭ５０７のワークエリアはバックアップ電源によってバックアップされており、バックアップ時設定テーブルには、作業領域のうちで初期化してもよい領域についての初期化データが設定されていてもよい。
【０２０７】
ステップＳ２７にてクリアスイッチ３０４がオンであるときや（ステップＳ２７；Ｙｅｓ）、ステップＳ２８にてバックアップフラグがオフであるとき（ステップＳ２８；Ｎｏ）、あるいは、ステップＳ２９にてチェック結果が正常ではないときには（ステップＳ２９；Ｎｏ）、停電復旧時でない電源投入時やシステムリセット時に対応した初期化処理を実行する。この初期化処理では、ＲＡＭ５０７のクリア（初期化）を行い（ステップＳ３１）、作業領域となるワークエリアを設定する（ステップＳ３２）。なお、ステップＳ３１の処理では、所定のデータ（例えば遊技制御カウンタ設定部５９４に設けられたランダムカウンタにおける格納データなど）が任意の値あるいは予め定められている初期値などに設定されてもよい。また、ＲＡＭ５０７の全領域を初期化してもよいし、一部の領域を初期化する一方で所定のデータはそのままにしてもよい。ステップＳ３１の処理が実行されるときには、乱数回路５０９の動作状態も初期化してもよい。ステップＳ３２の処理により、遊技制御フラグ設定部５９２、遊技制御タイマ設定部５９３、遊技制御カウンタ設定部５９４、遊技制御バッファ設定部５９５などに初期値が設定されればよい。このときには、演出制御基板１２等といったサブ側の各制御基板を初期化するための制御コマンド（初期化指定コマンド）を送信してもよい。例えば、演出制御基板１２では、初期化指定コマンドの受信に応答して、画像表示装置５の表示画面においてパチンコ遊技機１における制御が初期化されたことを報知するための画像を表示させるなどの初期化報知が実行されればよい。
【０２０８】
ステップＳ３０にて電断前の遊技状態を復旧した後や、ステップＳ３２の処理を実行した後には、ＲＯＭ５０６のプログラム管理エリアにおける記憶データに基づき、遊技制御用マイクロコンピュータ１００に内蔵された各種回路の動作設定を行う（ステップＳ３３）。一例として、ステップＳ３３の処理内では、プログラム管理エリアに記憶されている第１乱数初期設定ＫＲＳ１や第２乱数初期設定ＫＲＳ２を読み出して、図２８のフローチャートに示すような乱数回路設定処理が実行される。なお、ステップＳ３３の処理は、ステップＳ２４の処理やステップＳ２５の処理が実行されるときに、実行されるようにしてもよい。
【０２０９】
図２８に示す乱数回路設定処理において、ＣＰＵ５０５は、まず、第１乱数初期設定ＫＲＳ１のビット番号［３］におけるビット値に基づき、乱数回路５０９を使用するための設定を行う（ステップＳ５１）。この実施の形態では、第１乱数初期設定ＫＲＳ１のビット番号［３］におけるビット値が予め“１”とされており、このビット値に対応して乱数回路５０９を使用する設定が行われる。続いて、第１乱数初期設定ＫＲＳ１のビット番号［２］におけるビット値に基づき、乱数回路５０９における乱数更新クロックＲＧＫの設定を行う（ステップＳ５２）。例えば、第１乱数初期設定ＫＲＳ１のビット番号［２］におけるビット値が予め“１”とされていることに対応して、乱数用クロック生成回路１１２で生成された乱数用クロックＲＣＬＫを２分周して乱数更新クロックＲＧＫとする設定が行われる。
【０２１０】
ステップＳ５２での設定を行った後には、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値に基づき、乱数回路５０９における乱数更新規則の設定を行う（ステップＳ５３）。例えば、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値が予め“００”とされている場合には、乱数列ＲＳＮにおける乱数値となる数値データの更新順を指定する乱数更新規則を２周目以降も変更しない設定がなされる。また、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値が予め“０１”とされている場合には、乱数列ＲＳＮにおける乱数更新規則を２周目以降はソフトウェアで変更する設定がなされる。さらに、第１乱数初期設定ＫＲＳ１のビット番号［１−０］におけるビット値が予め“１０”とされている場合には、乱数列ＲＳＮにおける乱数更新規則を２周目以降は自動で変更する設定がなされる。
【０２１１】
続いて、第２乱数初期設定ＫＲＳ２のビット番号［１］におけるビット値に基づき、乱数値となる数値データにおける起動時スタート値を決定する（ステップＳ５４）。例えば、第２乱数初期設定ＫＲＳ２のビット番号［１］におけるビット値が予め“０”とされている場合には、乱数のスタート値をデフォルト値「０００１Ｈ」とする設定がなされる。また、第２乱数初期設定ＫＲＳ２のビット番号［１］におけるビット値が予め“１”とされている場合には、乱数のスタート値をＩＤナンバーに基づく値とする設定がなされる。
【０２１２】
さらに、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値に基づき、乱数値となる数値データのスタート値をシステムリセット毎に変更するか否かの設定を行う（ステップＳ５５）。例えば、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値が予め“０”とされている場合には、パチンコ遊技機１の電源初期投入時（バックアップ無効後の起動）における起動であるか、システムリセットによる再起動であるかに関わりなく、ステップＳ５４にて設定した起動時スタート値をそのまま用いて、乱数回路５０９におけるスタート値とすればよい。また、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値が予め“１”とされている場合には、乱数のスタート値をシステムリセット毎に変更する設定がなされる。例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ１００に内蔵された乱数スタート値用レジスタに格納される場合には、ステップＳ５５の処理において、乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数（例えばハッシュ関数）に代入して得られた値を用いることなどにより、乱数のスタート値がシステムリセット毎に所定の数値範囲（例えば乱数生成回路５５３にて生成されるカウント値順列ＲＣＮに含まれる数値データの全部又は一部を含む範囲）でランダムに変化するように決定されればよい。こうしたステップＳ５５の処理による設定が完了すると、乱数回路５０９では乱数値の生成動作が開始されればよい。
【０２１３】
なお、乱数回路設定処理による設定は、ＣＰＵ５０５の処理が介在することなく、乱数回路５０９がプログラム管理エリアの記憶データに基づき自律的に行うようにしてもよい。この場合、乱数回路５０９は、遊技制御用マイクロコンピュータ１００がセキュリティモードとなっているときには初期設定を行わず、乱数値の生成動作が行われないようにしてもよい。そして、遊技制御用マイクロコンピュータ１００にてＣＰＵ５０５がＲＯＭ５０６に記憶されたユーザプログラムを読み出して遊技制御メイン処理の実行が開始されたときに、例えばＣＰＵ５０５から乱数回路５０９に対して初期設定を指示する制御信号が伝送されたことなどに応答して、乱数回路５０９が初期設定を行ってから乱数値の生成動作を開始するようにしてもよい。あるいは、特に乱数回路５０９が遊技制御用マイクロコンピュータ１００に外付けされる場合などには、遊技制御用マイクロコンピュータ１００がセキュリティモードとなっているときでも、乱数回路５０９がＣＰＵ５０５における処理とは独立して、プログラム管理エリアの記憶データに基づく初期設定を行ってから、乱数値の生成動作を開始するようにしてもよい。また、図２７に示すステップＳ３３の処理には、プログラム管理エリアに記憶されている割込み初期設定ＫＩＩＳを読み出して、リセット／割込みコントローラ５０４におけるマスカブル割込み要因の優先制御に関する設定を行う処理などが含まれてもよい。マスカブル割込み要因の優先順位を設定する際には、割込み初期設定ＫＩＩＳのビット番号［３−０］におけるビット値に対応して、最優先割込みの設定が行われる。例えば、割込み初期設定ＫＩＩＳのビット番号［３−０］のビット値を予め「０４Ｈ」及び「０５Ｈ」のいずれかとしておくことにより、シリアル通信回路５１１で発生した割込み要因による割込み処理を最優先で実行することができる。こうして、割込み初期設定ＫＩＩＳのビット番号［３−０］におけるビット値に応じたマスカブル割込み要因の優先制御を行うことにより、割込み処理の優先順位を任意に設定可能とし、設計の自由度を増大させることができる。
【０２１４】
ステップＳ３３での設定を行った後には、乱数回路５０９における動作異常の有無を検査するための乱数回路異常検査処理を実行する（ステップＳ３４）。図２９は、ステップＳ３４にて実行される乱数回路異常検査処理の一例を示すフローチャートである。
【０２１５】
図２９に示す乱数回路異常検査処理において、ＣＰＵ５０５は、まず、例えば遊技制御カウンタ設定部５９４などに設けられた乱数用クロック異常判定カウンタをクリアして、そのカウント値である乱数用クロック異常判定カウント値を「０」に初期化する（ステップＳ６１）。続いて、内部情報レジスタＣＩＦのビット番号［４］に格納されている内部情報データＣＩＦ４を読み出す（ステップＳ６２）。そして、ステップＳ６２での読出値が“１”であるか否かを判定する（ステップＳ６３）。このとき、乱数回路５０９が備える周波数監視回路５５１によって、乱数用外部クロック端子ＥＲＣからの乱数用クロックＲＣＬＫに周波数異常が検知された場合には、内部情報データＣＩＦ４としてビット値“１”が書き込まれる。
【０２１６】
そこで、ステップＳ６３にて読出値が“１”と判定された場合には（ステップＳ６３；Ｙｅｓ）、乱数用クロック異常判定カウント値を１加算するように更新する（ステップＳ６４）。このときには、ステップＳ６４での更新後におけるカウント値が所定のクロック異常判定値に達したか否かを判定する（ステップＳ６５）。ここで、クロック異常判定値は、周波数監視回路５５１により乱数用クロックＲＣＬＫの周波数異常が連続して検知された場合にクロック異常と判定するために予め定められた数値であればよい。ステップＳ６５にてクロック異常判定値に達していなければ、ステップＳ６２の処理に戻り、再び内部情報データＣＩＦ４のビット値に基づく判定を行う。
【０２１７】
ステップＳ６５にてクロック異常判定値に達した場合には（ステップＳ６５；Ｙｅｓ）、所定の乱数用クロックエラー時処理を実行してから（ステップＳ６６）、乱数回路異常検査処理を終了する。なお、乱数用クロックエラー時処理では、例えば演出制御基板１２に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数用クロックＲＣＬＫの周波数異常が検知されたことを報知させるとともに、所定のエラー解除手順（例えばシステムリセットやエラー解除スイッチの操作など）がとられるまでは、以後の処理には進まないようにしてもよい。また、乱数用クロックエラー時処理を実行することなく、ＣＰＵ５０５の動作を停止状態（ＨＡＬＴ）へ移行させてもよい。
【０２１８】
ステップＳ６３にて読出値が“０”と判定された場合には（ステップＳ６３；Ｎｏ）、例えば遊技制御カウンタ設定部５９４などに設けられた乱数値異常判定カウンタをクリアして、そのカウント値である乱数値異常判定カウント値を「０」に初期化する（ステップＳ６７）。なお、ステップＳ６３の処理では、ステップＳ６２にて読み出した内部情報データＣＩＦ４のビット値が複数回（例えば２回など）連続して“０”となったときに、読出値が“０”であると判定してもよい。
【０２１９】
ステップＳ６７の処理に続いて、乱数値における異常の有無をチェックするために用いるチェック値を、初期値「００００Ｈ」に設定する（ステップＳ６８）。そして、乱数回路５０９が備える乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａや乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂから、格納されている乱数値となる数値データを読み出す（ステップＳ６９）。例えば、ステップＳ６９の処理では、乱数ラッチ選択レジスタＲＤＬＳのビット番号［１］やビット番号［０］に格納される乱数ラッチ選択データＲＤＬＳ１や乱数ラッチ選択データＲＤＬＳ０のビット値を“０”として、ソフトウェアによる乱数値の取り込みを指定する。続いて、乱数値取込指定レジスタＲＤＬＴのビット番号［１］やビット番号［０］に格納される乱数値取込指定データＲＤＬＴ１や乱数値取込指定データＲＤＬＴ０のビット値を“１”として、乱数値レジスタＲ２Ｄや乱数値レジスタＲ１Ｄへの取り込みを指定する。なお、乱数値取込指定レジスタＲＤＬＴのビット番号［１］やビット番号［０］におけるビット値を“１”とすることは、ＣＰＵ５０５から乱数回路５０９に対して数値データの取り込み（ラッチ）を指示するラッチ信号を出力することに相当する。その後、乱数値レジスタＲ２Ｄに供給するレジスタリード信号ＲＲＳ２をオン状態とすることや、乱数値レジスタＲ１Ｄに供給するレジスタリード信号ＲＲＳ１をオン状態とすることにより、格納されている乱数値となる数値データを読み出すようにすればよい。なお、乱数値レジスタＲ２Ｄと乱数値レジスタＲ１Ｄのそれぞれに格納された数値データを、同時に読み出して乱数値における異常の有無をチェックしてもよいし、一方のレジスタについて異常の有無をチェックしてから、他方のレジスタについて異常の有無をチェックするようにしてもよい。
【０２２０】
ステップＳ６９にて数値データを読み出した後には、その読出値を乱数検査基準値に設定する（ステップＳ７０）。続けて、さらに乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂから乱数値となる数値データを読み出す（ステップＳ７１）。なお、ステップＳ７１での読出動作は、ステップＳ６９での読出動作と同様の手順で行われればよい。また、ステップＳ６９での読出動作と、ステップＳ７１での読出動作との間には、乱数回路５０９で生成される乱数列ＲＳＮにおける数値データが変化するために十分な遅延時間を設けるとよい。ステップＳ７１にて数値データを読み出した後には、乱数検査基準値と、ステップＳ７１での読出値との排他的論理和演算を実行する（ステップＳ７２）。また、ステップＳ７２での演算結果と、チェック値との論理和演算を実行し、演算結果を新たなチェック値とするように更新させる（ステップＳ７３）。例えば、チェック値はＲＡＭ５０７の所定領域に記憶しておき、ステップＳ７３の処理が実行される毎に、その処理で得られた演算結果を新たなチェック値として保存すればよい。これにより、乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂから読み出した数値データにおける全ビットの変化が記録され、複数回の読出中に少なくとも１回は値が変化したビットであれば、チェック値において対応するビット値が“１”となる。
【０２２１】
そこで、チェック値が「ＦＦＦＦＨ」となったか否かを判定し（ステップＳ７４）、なっていれば（ステップＳ７４；Ｙｅｓ）、全ビットについてビット値の変化が認められることから、乱数値が正常に更新されていると判断して、乱数回路異常検査処理を終了する。なお、乱数値が正常に更新されていることを確認できた場合には、乱数ラッチ選択レジスタＲＤＬＳのビット番号［１］やビット番号［０］に格納される乱数ラッチ選択データＲＤＬＳ１や乱数ラッチ選択データＲＤＬＳ０のビット値を“１”として、入力ポートＰ１への信号入力に応じた乱数値レジスタＲ２Ｄへの乱数値取込や、入力ポートＰ０への信号入力に応じた乱数値レジスタＲ１Ｄへの乱数値取込を、指示するようにしてもよい。この実施の形態では、入力ポートＰ０に第１始動口スイッチ２２Ａからの第１始動入賞信号ＳＳ１を伝送する配線が接続され、入力ポートＰ１に第２始動口スイッチ２２Ｂからの第２始動入賞信号ＳＳ２を伝送する配線が接続される。これにより、第１始動入賞信号ＳＳ１がオン状態となったときに乱数値レジスタＲ１Ｄへの乱数値取込を行う一方、第２始動入賞信号ＳＳ２がオン状態となったときに乱数値レジスタＲ２Ｄへの乱数値取込を行うことができる。
【０２２２】
ステップＳ７４にてチェック値が「ＦＦＦＦＨ」以外と判定された場合には（ステップＳ７４；Ｎｏ）、乱数値異常判定カウント値を１加算するように更新する（ステップＳ７５）。このときには、ステップＳ７５での更新後におけるカウント値が所定の乱数値異常判定値に達したか否かを判定する（ステップＳ７６）。ここで、乱数値異常判定値は、乱数回路５０９が正常動作していれば、乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂから読み出される数値データの全ビットが少なくとも１回は変化するのに十分な判定回数となるように、予め定められた数値であればよい。ステップＳ７６にて乱数値異常判定値に達していなければ、ステップＳ７１の処理に戻り、再び乱数回路５０９から乱数値となる数値データを読み出して異常の有無をチェックするための判定などを行う。
【０２２３】
ステップＳ７６にて乱数値異常判定値に達した場合には（ステップＳ７６；Ｙｅｓ）、所定の乱数値エラー時処理を実行してから（ステップＳ７７）、乱数回路異常検査処理を終了する。なお、乱数値エラー時処理では、例えば演出制御基板１２に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数値の異常が検知されたことを報知させるとともに、所定のエラー解除手順（例えばシステムリセットやエラー解除スイッチの操作など）がとられるまでは、以後の処理には進まないようにしてもよい。また、乱数値エラー時処理を実行することなく、ＣＰＵ５０５の動作を停止状態（ＨＡＬＴ）へ移行させてもよい。
【０２２４】
なお、ステップＳ３４の乱数回路異常検査処理は、ＣＰＵ５０５が実行するものに限定されず、ＣＰＵ５０５以外の遊技制御用マイクロコンピュータ１００における内蔵回路により乱数回路異常検査処理が実行されてもよい。一例として、乱数回路５０９が乱数回路異常検査処理を実行する機能を有し、乱数用クロックＲＣＬＫの周波数異常が検知されたときや、乱数値の異常が検知されたときに、エラーの発生をＣＰＵ５０５に通知するようにしてもよい。また、乱数回路異常検査処理は、ステップＳ３４のみにて実行されるものに限定されず、例えば遊技制御用マイクロコンピュータ１００にてタイマ割込みが発生する毎に、後述する遊技制御用タイマ割込み処理（図３０参照）にて乱数回路異常検査処理の一部又は全部が実行されるようにしてもよい。
【０２２５】
図２７に示すステップＳ３４にて以上のような乱数回路異常検査処理を実行した後には、主基板１１に設置された遊技開始スイッチ３１から伝送されるスイッチ信号の信号状態などに基づき、遊技開始スイッチ３１がオン操作されたか否かを判定する（ステップＳ３５）。なお、ステップＳ３５の処理では、遊技開始スイッチ３５から伝送されるスイッチ信号を複数回チェックし、連続してオン状態となったときに、遊技開始スイッチ３１がオン操作されたと判定してもよい。また、ステップＳ３５の処理は、例えばステップＳ３１及びステップＳ３２の処理が実行された場合のように、復旧のない初期状態からのスタート時（コールドスタート時）に限り実行し、例えばステップＳ３０の処理が実行された場合のように、電断前の遊技状態に復旧させるスタート時（ホットスタート時）には遊技開始スイッチ３１の操作に関わりなく、例えば遊技制御用タイマ割込み処理といった、遊技の進行を制御する処理に進めるようにしてもよい。ここで、遊技制御用マイクロコンピュータ１００が備えるＲＡＭ５０７にて遊技制御カウンタ設定部５９４に設けられたランダムカウンタとなる領域がバックアップ電源によりバックアップされている場合には、ホットスタート時であれば電断前のランダムカウンタにおける格納データを用いて乱数値となる数値データの更新を開始するので、パチンコ遊技機１の動作開始タイミングからランダムカウンタに格納された乱数値を特定することは困難になる。これに対して、コールドスタート時には、例えばステップＳ３１の処理でランダムカウンタがクリア（初期化）されてしまうことなどにより、一定の初期値（例えば「０」など）から乱数値の更新が開始され、パチンコ遊技機１の動作開始タイミングからランダムカウンタに格納された乱数値が特定されてしまう可能性がある。そこで、コールドスタート時にはステップＳ３５の処理が実行されて遊技開始スイッチ３１がオン操作されるまで待機させ、パチンコ遊技機１の動作開始タイミングからランダムカウンタに格納された乱数値が特定されることを困難にする。これにより、特に大当り判定用の乱数値（例えば特図表示結果判定用の乱数値ＭＲ１）をソフトウェアのみで更新するような場合に、いわゆる「ぶら下げ基板」を接続してパチンコ遊技機１の動作開始タイミングから所定時間が経過したタイミングで不正信号が入力されても、不正な大当り遊技状態の発生を防止できる。また、ステップＳ３５にて遊技開始スイッチ３１がオン操作されていないと判定したときには、ステップＳ３５の処理に戻る前に、乱数更新処理を実行して、ランダムカウンタに格納された乱数値をソフトウェアにより更新するようにしてもよい。これにより、遊技開始スイッチ３１のオン操作がなされたタイミングからの経過時間に加えて、パチンコ遊技機１の動作開始タイミングから遊技開始スイッチ３１のオン操作がなされるまでの経過時間も特定できなければ、たとえコールドスタート時でもランダムカウンタに格納された乱数値を特定することは困難になり、狙い撃ちや不正信号の入力などにより不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２２６】
ステップＳ３５にて遊技開始スイッチ３１がオフと判定された場合には（ステップＳ３５；Ｎｏ）、ステップＳ３５の処理を繰り返し実行して、遊技開始スイッチ３１がオン操作されるまで待機する。これにより、遊技制御用マイクロコンピュータ１００にて所定の初期設定処理が実行された後でも、遊技開始スイッチ３１がオン操作されるまでは、例えば遊技制御用タイマ割込み処理といった、遊技の進行を制御する処理の実行が開始されない。なお、遊技制御用マイクロコンピュータ１００にて実行される初期設定処理には、例えば図２６に示すセキュリティチェック処理の全体や、図２７に示す遊技制御メイン処理のうち、ステップＳ２１〜Ｓ３９の処理などが、含まれるものとすればよい。
【０２２７】
ステップＳ３５にて遊技開始スイッチ３１がオンと判定された場合（ステップＳ３５；Ｙｅｓ）、あるいは、ステップＳ３５の処理を実行しない場合には、乱数ラッチフラグレジスタのビット番号［０］の値に基づいて乱数値がラッチされているか否か、すなわち乱数値レジスタ５５９Ａに数値データが取り込まれているか否かを判定する（ステップＳ３６）。乱数値レジスタ５５９Ａに数値データが取り込まれていなければ（ステップＳ３６；Ｎｏ）、そのままステップＳ３８の処理に進む。乱数値レジスタ５５９Ａに数値データが取り込まれていれば（ステップＳ３６；Ｙｅｓ）、乱数値レジスタ５５９Ａに取り込まれている数値データを読み出すが、第１乱数読出部５９６Ａに格納することなく破棄する（ステップＳ３７）。そして、ステップＳ３８の処理に進む。
【０２２８】
ステップＳ３８では、乱数ラッチフラグレジスタのビット番号［１］の値に基づいて乱数値がラッチされているか否か、すなわち乱数値レジスタ５５９Ｂに数値データが取り込まれているか否かを判定する。乱数値レジスタ５５９Ｂに数値データが取り込まれていなければ（ステップＳ３８；Ｎｏ）、そのままステップＳ２４０の処理に進む。乱数値レジスタ５５９Ｂに数値データが取り込まれていれば（ステップＳ３８；Ｙｅｓ）、乱数値レジスタ５５９Ｂに取り込まれている数値データを読み出すが、第２乱数読出部５９６Ｂに格納することなく破棄する（ステップＳ３９）。そして、ステップＳ４０の処理に進む。
【０２２９】
ステップＳ４０では、割込み許可状態に設定して、各種割込み要求の発生を待機する。なお、ステップＳ４０の処理も、遊技制御用マイクロコンピュータ１００にて実行される初期設定処理に含まれるものとしてもよい。ステップＳ４０の処理を実行した後には、例えばステップＳ２５におけるＣＴＣ５０８の設定に基づき、２ミリ秒ごとに遊技制御用のタイマ割込みが発生するようになればよい。ステップＳ４０の処理を実行した後には、乱数更新処理が繰り返し実行される（ステップＳ４１）。
【０２３０】
こうしてステップＳ４０の処理が実行されることにより割込み許可状態となった後、例えばＣＴＣ５０８や乱数回路５０９、シリアル通信回路５１１の一部又は全部などにて同時に複数のマスカブル割込み要因が生じたときには、割込み初期設定ＫＩＩＳのビット番号［３−０］におけるビット値による指定に基づき、リセット／割込みコントローラ５０４によって優先順位の高い割込み要因が受け付けられる。リセット／割込みコントローラ５０４が割込み要因を受け付けたときには、例えばＣＰＵ５０５が備えるＩクラス割込み（ＩＲＱ）端子などに対して、オン状態の割込み要求信号を出力する。ＣＰＵ５０５にてＩＲＱ端子にオン状態の割込み要求信号が入力されたときには、例えば内部レジスタの格納データを確認した結果などに基づき、発生した割込み要因を特定し、特定された割込み要因に対応するベクタアドレスを先頭アドレスとするプログラムを実行することにより、各割込み要因に基づく割込み処理を開始することができる。
【０２３１】
遊技制御用マイクロコンピュータ１００では、例えばリセット／割込みコントローラ５０４がＣＴＣ５０８からの割込み要求を受け付けたことなどに基づき、ＣＰＵ５０５が図３０のフローチャートに示す遊技制御用タイマ割込み処理を実行する。図３０に示す遊技制御用タイマ割込み処理において、ＣＰＵ５０５は、まず、割込み禁止状態としてから、所定のスイッチ処理を実行することにより、スイッチ回路１１４を介して遊技球検出用の各スイッチ２１、２２Ａ、２２Ｂ、２３などから入力される検出信号（入賞検出信号）の状態を判定する（ステップＳ９１）。次に、詳細を後述する乱数チェック処理を実行する（ステップＳ９２）。続いて、所定のメイン側エラー処理を実行することにより、パチンコ遊技機１の異常診断を行い、その診断結果に応じて必要ならば警告を発生可能とする（ステップＳ９３）。例えば、メイン側エラー処理では、賞球過多や賞球不足、その他の動作エラーが発生した場合に対応して、異常動作の発生を報知するための設定などが行われてもよい。この後、所定の情報出力処理を実行することにより、例えばパチンコ遊技機１の外部に設置されたホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する（ステップＳ９４）。
【０２３２】
情報出力処理に続いて、乱数更新処理を実行する（ステップＳ９５）。この後、ＣＰＵ５０５は、特別図柄プロセス処理を実行する（ステップＳ９６）。特別図柄プロセス処理では、遊技制御フラグ設定部５９２に設けられた特図プロセスフラグの値をパチンコ遊技機１における遊技の進行状況に応じて更新し、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂにおける表示動作の制御や特別可変入賞球装置７における大入賞口の開閉動作設定などを所定の手順で行うために、各種の処理が選択されて実行される。
【０２３３】
特別図柄プロセス処理に続いて、普通図柄プロセス処理が実行される（ステップＳ９７）。ＣＰＵ５０５は、普通図柄プロセス処理を実行することにより、普通図柄表示器２０における表示動作（例えばセグメントＬＥＤの点灯、消灯など）を制御して、普通図柄の可変表示や普通可変入賞球装置６Ｂにおける可動翼片の傾動動作設定などを可能にする。普通図柄プロセス処理を実行した後、ＣＰＵ５０５は、例えばステップＳ９１におけるスイッチ処理の実行結果などに基づき、入賞検出信号の入力に応じて賞球個数の設定などを行う賞球処理を実行する（ステップＳ９８）。賞球処理に続いて、メイン側通信制御処理を実行することにより、主基板１１から演出制御基板１２や払出制御基板１５などのサブ側の制御基板に向けて制御コマンドを送信したり、払出制御基板１５から伝送された制御コマンドを受信したりするための通信制御を行う（ステップＳ９９）。
【０２３４】
こうしたメイン側通信制御処理が終了すると、割込み許可状態としてから、遊技制御用タイマ割込み処理を終了する。
【０２３５】
図３１は、乱数チェック処理として、図３０に示すステップＳ９２にて実行される処理の一例を示すフローチャートである。図３１に示す乱数チェック処理において、まず、乱数ラッチフラグレジスタのビット番号［０］の値に基づいて乱数値がラッチされているか否か、すなわち乱数値レジスタ５５９Ａに数値データが取り込まれているか否かを判定する（ステップＳ２３１）。乱数値レジスタ５５９Ａに数値データが取り込まれていなければ（ステップＳ２３１；Ｎｏ）、そのままステップＳ２３３の処理に進む。乱数値レジスタ５５９Ａに数値データが取り込まれていれば（ステップＳ２３１；Ｙｅｓ）、乱数値レジスタ５５９Ａに取り込まれている数値データを読み出し、第１乱数読出部５９６Ａに格納する（ステップＳ２３２）。なお、ここで乱数値レジスタ５５９Ａから数値データが読み出されることで、乱数ラッチフラグレジスタのビット番号［０］の値がリセットされ、次に普通入賞球装置６Ａに遊技球が入賞した旨の検出信号が第１始動口スイッチ２２Ａから出力されたときに、乱数値レジスタ５５９Ａに新たな数値データを取り込むことが可能となる。そして、ステップＳ２３３の処理に進む。
【０２３６】
ステップＳ２３３では、乱数ラッチフラグレジスタのビット番号［１］の値に基づいて乱数値がラッチされているか否か、すなわち乱数値レジスタ５５９Ｂに数値データが取り込まれているか否かを判定する。乱数値レジスタ５５９Ｂに数値データが取り込まれていなければ（ステップＳ２３３；Ｎｏ）、そのまま乱数チェック処理を終了する。乱数値レジスタ５５９Ｂに数値データが取り込まれていれば（ステップＳ２３３；Ｙｅｓ）、乱数値レジスタ５５９Ｂに取り込まれている数値データを読み出し、第２乱数読出部５９６Ｂに格納する（ステップＳ２３４）。なお、ここで乱数値レジスタ５５９Ｂから数値データが読み出されることで、乱数ラッチフラグレジスタのビット番号［１］の値がリセットされ、次に普通入賞球装置６Ａに遊技球が入賞した旨の検出信号が第１始動口スイッチ２２Ａから出力されたときに、乱数値レジスタ５５９Ａに新たな数値データを取り込むことが可能となる。そして、乱数チェック処理を終了する。
【０２３７】
図３２は、乱数更新処理として、図２７に示すステップＳ４１や図３０に示すステップＳ９５にて実行される処理の一例を示すフローチャートである。図３２に示す乱数更新処理において、ＣＰＵ５０５は、まず、割込み禁止状態に設定する（ステップＳ５０１）。なお、遊技制御用マイクロコンピュータ１００が乱数更新処理の開始に対応して自動的に割込み禁止状態となる場合には、ステップＳ５０１の処理を実行しなくてもよい。続いて、例えば遊技制御カウンタ設定部５９４が備えるランダムカウンタの所定領域における記憶データを更新することなどにより、大当り種別決定用の乱数値ＭＲ２を１加算する（ステップＳ５０２）。こうして、この実施の形態では、大当り種別決定用の乱数値ＭＲ２について、タイマ割込みが発生する毎に１ずつ加算するように更新する。ステップＳ５０２の処理を実行した後には、リーチ判定用の乱数値ＭＲ３を、更新対象とする乱数値として設定する（ステップＳ５０３）。
【０２３８】
そして、ＣＰＵ５０５は、例えば遊技制御カウンタ５９４に設けられたランダムカウンタなどから、加算値決定用の乱数値ＭＲ６を示す数値データを読み出す（ステップＳ５０４）。このときには、ステップＳ５０４での読出値が、更新処理の対象となる乱数値ごとに定められた加算判定値未満であるか否かを判定する（ステップＳ５０５）。ここで、図１２に示すように、乱数値ＭＲ３〜ＭＲ５のそれぞれに対応して、加算判定値が予め定められている。ステップＳ５０５にて読出値が加算判定値未満であれば（ステップＳ５０５；Ｙｅｓ）、ステップＳ５０４にて読み出した乱数値ＭＲ６を、加算値に設定する（ステップＳ５０６）。これに対して、ステップＳ５０５にて読出値が加算判定値以上であれば（ステップＳ５０５；Ｎｏ）、ステップＳ５０４にて読み出した乱数値ＭＲ６から加算判定値を減算した値を、加算値に設定する（ステップＳ５０７）。
【０２３９】
ステップＳ５０６、Ｓ５０７の処理のいずれかを実行した後には、更新処理の対象となる乱数値に加算値を加算して、加算後乱数値とする（ステップＳ５０８）。このときには、ステップＳ５０８にて得られた加算後乱数値が、更新処理の対象となる乱数値ごとに定められた最大判定値未満であるか否かを判定する（ステップＳ５０９）。ここで、図１２に示すように、乱数値ＭＲ３〜ＭＲ５のそれぞれに対応して、最大判定値が予め定められている。ステップＳ５０９にて加算後乱数値が最大判定値未満であれば（ステップＳ５０９；Ｙｅｓ）、ステップＳ５０８にて得られた加算後乱数値を、更新後乱数値に設定する（ステップＳ５１０）。これに対して、ステップＳ５０９にて加算後乱数値が最大判定値以上であれば（ステップＳ５０９；Ｎｏ）、ステップＳ５０８にて得られた加算後乱数値から最大判定値を減算した値を、更新後乱数値に設定する（ステップＳ５１１）。
【０２４０】
ステップＳ５１０、Ｓ５１１の処理のいずれかを実行した後には、ランダムカウンタにて更新処理の対象となる乱数値を格納する所定領域に、更新後乱数値をセットする（ステップＳ５１２）。こうして、更新処理の対象となる乱数値の更新が完了する。ステップＳ５１２の処理に続いて、未処理の乱数値があるか否かを判定する（ステップＳ５１３）。この実施の形態では、乱数値ＭＲ３〜ＭＲ５について、順次に更新処理の対象となる乱数値にセットすることにより、乱数更新処理が１回実行されるごとに、乱数値ＭＲ３〜ＭＲ５の全部が更新されるようにする。ステップＳ５１３にて未処理の乱数値がある場合には（ステップＳ５１３；Ｙｅｓ）、次の乱数値を更新処理の対象となる乱数値にセットしてから（ステップＳ５１４）、ステップＳ５０４の処理に戻る。他方、ステップＳ５１３にて未処理の乱数値がない場合には（ステップＳ５１３；Ｎｏ）、割込みを許可してから（ステップＳ５１５）、乱数更新処理を終了する。
【０２４１】
図３３は、特別図柄プロセス処理として、図３０に示すステップＳ９６にて実行される処理の一例を示すフローチャートである。この特別図柄プロセス処理において、ＣＰＵ５０５は、まず、始動入賞判定処理を実行する（ステップＳ１０１）。図３４及び図３５は、ステップＳ１０１にて実行される始動入賞判定処理の一例を示すフローチャートである。
【０２４２】
図３４及び図３５に示す始動入賞判定処理において、ＣＰＵ５０５は、まず、入力ポートレジスタＰＩに格納された入力ポートデータを読み出す（ステップＳ２０１）。このとき読み出された入力ポートデータは、例えば遊技制御バッファ設定部５９５などに設けられた始動入賞バッファなどに格納されればよい。そして、ステップＳ２０１にて読み出した入力ポートデータのビット番号［１］におけるビット値が“１”であるか否かを判定する（ステップＳ２０２）。この実施の形態では、ＰＩＰ５１０が備える入力ポートＰ１に第２始動口スイッチ２２Ｂからの第２始動入賞信号ＳＳ２を伝送する配線が接続されており、入力ポートデータのビット番号［１］におけるビット値を確認することにより、第２始動口スイッチ２２Ｂによる遊技球検出の有無を特定できる。そして、第２始動入賞信号ＳＳ２がオン状態である場合には、入力ポートデータのビット番号［１］におけるビット値が“１”となる。
【０２４３】
そこで、ステップＳ２０２にて“１”であると判定された場合には（ステップＳ２０２；Ｙｅｓ）、遊技制御カウンタ設定部５９４に設けられた第２始動入賞判定カウンタの値である第２始動入賞判定カウント値を、例えば１加算するなどしてカウントアップするように、更新する（ステップＳ２０３）。これに対して、ステップＳ２０２にて“０”であると判定された場合には（ステップＳ２０２；Ｎｏ）、第２始動入賞判定カウンタをクリアして、そのカウント値を「０」に初期化する（ステップＳ２０４）。
【０２４４】
ステップＳ２０３、Ｓ２０４の処理のいずれかを実行した後には、ステップＳ２０１にて読み出した入力ポートデータのビット番号［０］におけるビット値が“１”であるか否かを判定する（ステップＳ２０５）。この実施の形態では、ＰＩＰ５１０が備える入力ポートＰ０に第１始動口スイッチ２２Ａからの第１始動入賞信号ＳＳ１を伝送する配線が接続されており、入力ポートデータのビット番号［０］におけるビット値を確認することにより、第１始動口スイッチ２２Ａによる遊技球検出の有無を特定できる。そして、第１始動入賞信号ＳＳ１がオン状態である場合には、入力ポートデータのビット番号［０］におけるビット値が“１”となる。
【０２４５】
そこで、ステップＳ２０５にて“１”であると判定された場合には（ステップＳ２０５；Ｙｅｓ）、遊技制御カウンタ設定部５９４に設けられた第１始動入賞判定カウンタの値である第１始動入賞判定カウント値を、例えば１加算するなどしてカウントアップするように、更新する（ステップＳ２０６）。これに対して、ステップＳ２０５にて“０”であると判定された場合には（ステップＳ２０５；Ｎｏ）、第１始動入賞判定カウンタをクリアして、そのカウント値を「０」に初期化する（ステップＳ２０７）。
【０２４６】
ステップＳ２０６、Ｓ２０７の処理のいずれかを実行した後には、第１始動入賞判定カウント値が入賞判定値として予め定められた所定の判定値（例えば「２」）に達したか否かを判定する（ステップＳ２０８）。このとき、第１始動入賞判定カウント値が入賞判定値に達していれば（ステップＳ２０８；Ｙｅｓ）、遊技制御バッファ設定部５９５に設けられた始動口バッファの値（始動口バッファ値）を、「１」に設定する（ステップＳ２０９）。また、第１始動入賞判定カウンタをクリアして、そのカウント値を「０」に初期化する（ステップＳ２１０）。
【０２４７】
ステップＳ２０８にて第１始動入賞判定カウント値が入賞判定値に達していなければ（ステップＳ２０８；Ｎｏ）、第２始動入賞判定カウント値が入賞判定値に達したか否かを判定する（ステップＳ２１１）。このとき、第２始動入賞判定カウント値が入賞判定値に達していなければ（ステップＳ２１１；Ｎｏ）、始動入賞判定処理を終了する。これに対して、第２始動入賞判定カウント値が入賞判定値に達していれば（ステップＳ２１１；Ｙｅｓ）、始動口バッファ値を「２」に設定する（ステップＳ２１２）。また、第２始動入賞判定カウンタをクリアして、そのカウント値を「０」に初期化する（ステップＳ２１３）。
【０２４８】
ステップＳ２１０、Ｓ２１３の処理のいずれかを実行した後、ＣＰＵ５０５は、始動口バッファ値に応じた保留記憶数カウント値を読み出す（ステップＳ２１４）。例えば、始動口バッファ値が「１」であるときには、遊技制御カウンタ設定部５９４に設けられた第１保留記憶数カウンタの値（第１保留記憶数カウント値）を読み出し、始動口バッファ値が「２」であるときには、遊技制御カウンタ設定部５９４に設けられた第２保留記憶数カウンタの値（第２保留記憶数カウント値）を読み出す。そして、ステップＳ２１４における読出値が、所定の上限値（例えば「４」）に達しているか否かを判定する（図３５のステップＳ２１５）。このとき、ステップＳ２１４での読出値が上限値に達していなければ、特別図柄や飾り図柄の可変表示を開始するための始動条件が有効に成立することになる。例えば、図３４に示すステップＳ２０８にて第１始動入賞判定カウント値が入賞判定値に達したと判定された後に、ステップＳ２１５にて読出値が上限値に達していないと判定されたときには、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームや、飾り図柄の可変表示を実行するための第１始動条件が成立する。また、図３４に示すステップＳ２１１にて第２始動入賞判定カウント値が入賞判定値に達したと判定された後に、ステップＳ２１５にて読出値が上限値に達していないと判定されたときには、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームや、飾り図柄の可変表示を実行するための第２始動条件が成立する。
【０２４９】
このように、ステップＳ２１５にて読出値が上限値に達していないときには（ステップＳ２１５；Ｎｏ）、始動口バッファ値に応じた保留記憶数カウント値を１加算する（ステップＳ２１６）。例えば、始動口バッファ値が「１」であるときには、第１保留記憶数カウント値を１加算し、始動口バッファ値が「２」であるときには、第２保留記憶数カウント値を１加算する。そして、ＣＰＵ５０５は、第１保留記憶数と第２保留記憶数との合計値である合計保留記憶数を示す合計保留記憶数カウンタの値（合計保留記憶数カウント値）を１加算する（ステップＳ２１７）。
【０２５０】
ステップＳ２１７の処理に続いて、ＣＰＵ５０５は、始動口バッファ値に応じた始動データを、始動データ記憶部５９１Ｃにおける空き領域の先頭にセットして記憶させる（ステップＳ２１８）。例えば、始動口バッファ値が「１」であるときには、「第１」を示す始動データをセットし、始動口バッファ値が「２」であるときには、「第２」を示す始動データをセットする。そして、ＣＰＵ５０５は、特図表示結果判定用の乱数値ＭＲ１、大当り種別決定用の乱数値ＭＲ２、リーチ判定用の乱数値ＭＲ３、変動パターン種別決定用の乱数値ＭＲ４、変動パターン決定用の乱数値ＭＲ５を、保留データとして格納する乱数設定処理を実行する（ステップＳ２１９）。例えば、ＣＰＵ５０５は、始動口バッファ値が「１」であるか「２」であるかに応じて、第１特図保留記憶部５９１Ａと第２特図保留記憶部５９１Ｂのいずれかにおける空き領域の先頭に、第１乱数読出部５９６Ａまたは第２乱数読出部５９６Ｂに格納されている数値データを取り出し、これに基づいて特図表示結果判定用の乱数値ＭＲ１を示す数値データを設定する。また、遊技制御カウンタ設定部５９４に設けられたランダムカウンタから、乱数値ＭＲ２〜ＭＲ５を抽出し、同様に第１特図保留記憶部５９１Ａまたは第２特図保留記憶部５９１Ｂに格納する。
【０２５１】
ステップＳ２１９にて乱数設定処理を実行した後には、始動口バッファ値に応じた始動口入賞指定コマンドを送信するための設定を行う（ステップＳ２２０）。例えば、始動口バッファ値が「１」であるときには、ＲＯＭ５０６における第１始動口入賞指定コマンドテーブルの記憶アドレス（先頭アドレス）を送信コマンドバッファにおいて送信コマンドポインタによって指定されたバッファ領域に格納する。他方、始動口バッファ値が「２」であるときには、ＲＯＭ５０６における第２始動口入賞指定コマンドテーブルの記憶アドレス（先頭アドレス）を送信コマンドバッファにおいて送信コマンドポインタによって指定されたバッファ領域に格納する。こうして設定された始動口入賞指定コマンドは、例えば特別図柄プロセス処理が終了した後に図３０に示すステップＳ９９のメイン側通信制御処理が実行されることなどにより、主基板１１から演出制御基板１２に対して伝送される。
【０２５２】
また、ＣＰＵ５０５は、例えばＲＯＭ５０６における保留記憶数通知コマンドテーブルの記憶アドレスを送信コマンドバッファにおいて送信コマンドポインタによって指定されたバッファ領域に格納することなどにより、演出制御基板１２に対して保留記憶数通知コマンドを送信するための設定を行う（ステップＳ２２１）。なお、第１始動口入賞指定コマンドテーブルが、第１始動口入賞指定コマンドを送信するための設定データと、保留記憶数通知コマンドを送信するための設定データとを含むように構成されるとともに、第２始動口入賞指定コマンドテーブルが、第２始動口入賞指定コマンドを送信するための設定データと、保留記憶数通知コマンドを送信するための設定データとを含むように構成されている場合には、ステップＳ２２０、Ｓ２２１の処理として第１始動口入賞指定コマンドテーブルと第２始動口入賞指定コマンドテーブルのうち、始動口バッファ値に応じたコマンドテーブルの記憶アドレスだけを送信コマンドバッファのバッファ領域に格納すればよい。こうして設定された保留記憶数通知コマンドは、例えば特別図柄プロセス処理が終了した後、図３０に示すステップＳ９９のメイン側通信制御処理が実行されることなどにより、第１始動口入賞指定コマンドや第２始動口入賞指定コマンドに続いて、主基板１１から演出制御基板１２に対して伝送される。
【０２５３】
ステップＳ２１５にて読出値が上限値に達している場合や（ステップＳ２１５；Ｙｅｓ）、ステップＳ２２１の処理を実行した後には、始動口バッファ値が「１」であるか「２」であるかを判定する（ステップＳ２２２）。このとき、始動口バッファ値が「１」であれば（ステップＳ２２２；「１」）、始動口バッファをクリアして、そのバッファ値を「０」に初期化してから（ステップＳ２２３）、図３４に示すステップＳ２１１の処理に進む。これに対して、始動口バッファ値が「２」であるときには（ステップＳ２２２；「２」）、始動口バッファをクリアして、そのバッファ値を「０」に初期化してから（ステップＳ２２４）、始動入賞判定処理を終了する。
【０２５４】
この実施の形態では、第１始動口スイッチ２２Ａと第２始動口スイッチ２２Ｂの双方が同時に有効な遊技球の始動入賞を検出した場合には、２ミリ秒内で実行される処理によって、双方のスイッチが有効な遊技球の始動入賞を検出したことに基づく処理が実行される。すなわち、図３４に示すステップＳ２０８にて第１始動入賞判定カウント値が入賞判定値に達したと判定されたときには、図３４に示すステップＳ２０９、Ｓ２１０、Ｓ２１４の処理を実行してから、図３５に示すステップＳ２１５〜Ｓ２２１の処理を実行した後、ステップＳ２２２にて始動口バッファ値が「１」であることに対応して、ステップＳ２２３の処理を実行してから、図３４に示すステップＳ２１１の処理に進む。そして、ステップＳ２１１にて第２始動入賞判定カウント値が入賞判定値に達したと判定されたときには、図３４に示すステップＳ２１２〜Ｓ２１４の処理を実行してから、図３５に示すステップＳ２１５〜Ｓ２２１の処理を実行した後、ステップＳ２２２にて始動口バッファ値が「２」であることに対応して、ステップＳ２２４の処理を実行してから、始動入賞判定処理を終了する。これにより、第１始動口スイッチ２２Ａと第２始動口スイッチ２２Ｂの双方が同時に有効な遊技球の始動入賞を検出した場合でも、確実に双方の有効な始動入賞の検出に基づく処理を完了できる。
【０２５５】
図３３に示すステップＳ１０１にて始動入賞判定処理を実行した後には、特図プロセスフラグの値に応じて、ステップＳ１１０〜Ｓ１２０の処理のいずれかを選択して実行する。
【０２５６】
ステップＳ１１０の特別図柄通常処理は、特図プロセスフラグの値が“０”のときに実行される。この特別図柄通常処理では、第１特図保留記憶部５９１Ａや第２特図保留記憶部５９１Ｂに記憶されている保留データの有無などに基づいて、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂによる特図ゲームを開始するか否かの判定が行われる。また、特別図柄通常処理では、特図表示結果判定用の乱数値ＭＲ１を示す数値データに基づき、特別図柄や飾り図柄、色図柄などの可変表示結果を「大当り」や「小当り」とするか否かの判定が行われる。さらに、特別図柄通常処理では、特図ゲームにおける特別図柄の可変表示結果に対応して、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂによる特図ゲームにおける確定特別図柄（大当り図柄、小当り図柄及びハズレ図柄のいずれか）が設定される。
【０２５７】
ステップＳ１１１の変動パターン設定処理は、特図プロセスフラグの値が“１”のときに実行される。この変動パターン設定処理には、可変表示結果を「大当り」や「小当り」とするか否かの事前決定結果や、飾り図柄の可変表示状態をリーチ状態とするか否かのリーチ判定結果などに基づいて、変動パターン種別を複数種類のいずれかに決定する処理や、変動パターン種別の決定結果に対応して、変動パターンを複数種類のいずれかに決定する処理などが含まれている。
【０２５８】
ステップＳ１１２の特別図柄変動処理は、特図プロセスフラグの値が“２”のときに実行される。この特別図柄変動処理には、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂにおいて特別図柄を変動させるための設定を行う処理や、その特別図柄が変動を開始してからの経過時間を計測する処理などが含まれている。例えば、ステップＳ１１２の特別図柄変動処理が実行されるごとに、遊技制御タイマ設定部５９３に設けられた特図変動タイマにおける値（特図変動タイマ値）を１減算あるいは１加算することにより、第１特別図柄表示装置４Ａにおける第１特図を用いた特図ゲームであるか、第２特別図柄表示装置４Ｂにおける第２特図を用いた特図ゲームであるかに関わりなく、共通のタイマによって経過時間の測定が行われる。また、計測された経過時間が変動パターンに対応する特図変動時間に達したか否かの判定も行われる。このように、ステップＳ１１２の特別図柄変動処理は、第１特別図柄表示装置４Ａにおける第１特図を用いた特図ゲームにおける特別図柄の変動や、第２特別図柄表示装置４Ｂにおける第２特図を用いた特図ゲームにおける特別図柄の変動を、共通の処理ルーチンによって制御する処理となっている。そして、特別図柄の変動を開始してからの経過時間が特図変動時間に達したときには、特図プロセスフラグの値を“３”に更新する。
【０２５９】
ステップＳ１１３の特別図柄停止処理は、特図プロセスフラグの値が“３”のときに実行される。この特別図柄停止処理には、第１特別図柄表示装置４Ａや第２特別図柄表示装置４Ｂにて特別図柄の変動を停止させ、特別図柄の可変表示結果となる確定特別図柄を停止表示させるための設定を行う処理が含まれている。そして、遊技制御フラグ設定部５９２に設けられた大当りフラグと小当りフラグのいずれかがオンとなっているか否かの判定などが行われ、大当りフラグがオンである場合には特図プロセスフラグの値を“４”に更新し、小当りフラグがオンである場合には特図プロセスフラグの値を“８”に更新する。また、大当りフラグと小当りフラグがいずれもオフである場合には、特図プロセスフラグの値を“０”に更新する。
【０２６０】
ステップＳ１１４の大入賞口開放前処理は、特図プロセスフラグの値が“４”のときに実行される。この大入賞口開放前処理には、可変表示結果が「大当り」となったことなどに基づき、大当り遊技状態においてラウンドの実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば大入賞口開放回数最大値の設定に対応して、大入賞口を開放状態とする期間の上限を設定するようにしてもよい。一例として、大入賞口開放回数最大値が１５ラウンド大当り状態に対応した「１５」に設定されている場合には、大入賞口を開放状態とする期間の上限を「２９秒」に設定する。これに対して、大入賞口開放回数最大値が２ラウンド大当り状態に対応した「２」に設定されている場合には、大入賞口を開放状態とする期間の上限を「０．５秒」に設定する。
【０２６１】
ステップＳ１１５の大入賞口開放中処理は、特図プロセスフラグの値が“５”のときに実行される。この大入賞口開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間やカウントスイッチ２３によって検出された遊技球の個数などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。そして、大入賞口を閉鎖状態に戻すときには、大入賞口扉用のソレノイドに対するソレノイド駆動信号の供給を停止させる処理などが実行されればよい。
【０２６２】
ステップＳ１１６の大入賞口開放後処理は、特図プロセスフラグの値が“６”のときに実行される。この大入賞口開放後処理には、大入賞口を開放状態とするラウンドの実行回数が大入賞口開放回数最大値に達したか否かを判定する処理や、大入賞口開放回数最大値に達した場合に当り終了指定コマンドを送信するための設定を行う処理などが含まれている。
【０２６３】
ステップＳ１１７の大当り終了処理は、特図プロセスフラグの値が“７”のときに実行される。この大当り終了処理には、画像表示装置５やスピーカ８Ｌ、８Ｒ、遊技効果ランプ９といった演出用の電気部品（演出装置）により、大当り遊技状態の終了を報知する演出動作としてのエンディング演出が実行される期間に対応した待ち時間が経過するまで待機する処理や、その大当り遊技状態の終了に対応した各種の設定を行う処理などが含まれている。
【０２６４】
ステップＳ１１８の小当り開放前処理は、特図プロセスフラグの値が“８”のときに実行される。この小当り開放前処理には、可変表示結果が「小当り」となったことなどに基づき、小当り遊技状態において可変入賞動作の実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば可変表示結果が「小当り」であることにより大入賞口開放回数最大値が「２」であることに対応して、大入賞口を開放状態とする期間の上限を「０．５秒」に設定すればよい。
【０２６５】
ステップＳ１１９の小当り開放中処理は、特図プロセスフラグの値が“９”のときに実行される。この小当り開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。大入賞口を閉鎖状態に戻すときには、大入賞口扉用のソレノイドに対するソレノイド駆動信号の供給を停止させる処理などが実行されればよい。
【０２６６】
ステップＳ１２０の小当り終了処理は、特図プロセスフラグの値が“１０”のときに実行される。この小当り終了処理には、画像表示装置５やスピーカ８Ｌ、８Ｒ、遊技効果ランプ９といった演出用の電気部品（演出装置）により、小当り遊技状態の終了を報知する演出動作が実行される期間に対応した待ち時間が経過するまで待機する処理などが含まれている。ここで、小当り遊技状態が終了するときには、確変フラグや時短フラグの状態を変更しないようにして、小当り遊技状態となる以前のパチンコ遊技機１における遊技状態を継続させる。
【０２６７】
以下、パチンコ遊技機１における具体的な動作例について説明する。主基板１１では、電源基板１０からの初期電力供給時（バックアップ電源のない電源投入時）や、システムリセットの発生後における再起動時などに、ＣＰＵ５０５がＲＯＭ５０６などに記憶されているセキュリティチェックプログラム５０６Ａを読み出して実行することにより、遊技制御用マイクロコンピュータ１００がセキュリティモードとなる。
【０２６８】
このときには、セキュリティチェックプログラム５０６Ａに対応した処理として、例えば図２６に示すようなセキュリティチェック処理が実行される。ここで、遊技制御用マイクロコンピュータ１００がセキュリティモードとなるセキュリティ時間は、ＲＯＭ５０６のプログラム管理エリアに記憶されているセキュリティ時間設定ＫＳＥＳのビット番号［２−０］やビット番号［４−３］に予め格納されたビット値に応じて、一定の固定時間とは異なる時間成分を含むことができる。
【０２６９】
例えば、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値が“０００”以外の値であれば（図２６に示すステップＳ２；Ｎｏ）、図１０（Ｄ）に示すような設定内容に対応して、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる（ステップＳ４）。また、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値が“００”以外の値であれば（ステップＳ６；Ｎｏ）、図１０（Ｃ）に示すようなショートモード又はロングモードに対応して、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる（ステップＳ８）。
【０２７０】
こうして設定されたセキュリティ時間が経過するまでは（ステップＳ１４；Ｎｏ）、ＲＯＭ５０６に記憶されているユーザプログラムによる遊技制御メイン処理の実行が開始されない。そして、乱数回路５０９による乱数値となる数値データの生成動作も、遊技制御用マイクロコンピュータ１００がセキュリティモード中である期間では、開始されないようにすればよい。これにより、パチンコ遊技機１の電源投入やシステムリセット等による動作開始タイミングから、乱数回路５０９の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２７１】
一例として、パチンコ遊技機１の機種毎に、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値を異なる値に設定する。この場合には、図２６に示すステップＳ４にて設定される延長時間を、パチンコ遊技機１の機種毎に異ならせることができ、パチンコ遊技機１の動作開始タイミングから乱数回路５０９の動作開始タイミングを特定することが困難になる。また、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値を“０１”又は“１０”に設定することにより、ステップＳ８にて設定される可変設定時間を、システムリセット毎に異ならせる。これにより、パチンコ遊技機１の動作開始タイミングから乱数回路５０９の動作開始タイミングを特定することは著しく困難になる。
【０２７２】
図３６は、主基板１１に搭載された遊技制御用マイクロコンピュータ１００に内蔵された乱数回路５０９の動作を説明するためのタイミングチャートである。また、図３６（Ａ）では、主基板１１に搭載された制御用クロック生成回路１１１により生成される制御用クロックＣＣＬＫを示している。図３６（Ｂ）では、乱数用クロック生成回路１１２により生成される乱数用クロックＲＣＬＫを示している。図３６（Ａ）及び（Ｂ）に示すように、制御用クロックＣＣＬＫの発振周波数と、乱数用クロックＲＣＬＫの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。
【０２７３】
図３６（Ｂ）に示すように、乱数用クロックＲＣＬＫは、タイミングＴ１０，Ｔ１１，Ｔ１２，…においてローレベルからハイレベルに立ち上がる。そして、乱数用クロックＲＣＬＫは、遊技制御用マイクロコンピュータ１００の乱数用外部クロック端子ＥＲＣに供給され、図１３に示す乱数回路５０９が備えるクロック用フリップフロップ５５２におけるクロック端子ＣＫに入力される。クロック用フリップフロップ５５２は、逆相出力端子（反転出力端子）ＱバーからＤ入力端子へとフィードバックされるラッチ用クロックＲＣ０を、クロック端子ＣＫに入力される乱数用クロックＲＣＬＫの立ち上がりエッジに応答して取り込み（ラッチして）、正相出力端子（非反転出力端子）Ｑから乱数更新クロックＲＧＫとして出力する。これにより、乱数更新クロックＲＧＫは、図３６（Ｃ）に示すように、タイミングＴ１０，Ｔ１２，Ｔ１４，…において、ローレベルからハイレベルへと立ち上がり、乱数用クロックＲＣＬＫの発振周波数の１／２の発振周波数を有する信号となる。例えば、乱数用クロックＲＣＬＫの発振周波数が２０ＭＨｚであれば、乱数更新クロックＲＧＫの発振周波数は１０ＭＨｚとなる。そして、乱数用クロックＲＣＬＫの発信周波数は制御用クロックＣＣＬＫの発振周波数の整数倍にも整数分の１にもならないことから、乱数更新クロックＲＧＫの発振周波数は、制御用クロックＣＣＬＫの発振周波数とは異なる周波数となる。乱数生成回路５５３は、例えば乱数更新クロックＲＧＫの立ち上がりエッジに応答して、カウント値順列ＲＣＮにおける数値データを更新する。乱数列変更回路５５５は、乱数列変更設定回路５５６による乱数更新規則の設定に基づき、乱数生成回路５５３から出力されたカウント値順列ＲＣＮにおける数値データの更新順を変更したものを、乱数列ＲＳＮとして出力する。こうして、乱数列ＲＳＮにおける数値データは、例えば図３６（Ｄ）に示すように、乱数更新クロックＲＧＫの立ち上がりエッジなどに応答して更新される。
【０２７４】
クロック用フリップフロップ５５２から出力されるラッチ用クロックＲＣ０は、乱数更新クロックＲＧＫの反転信号となり、その発振周波数は乱数更新クロックＲＧＫの発振周波数と同一で、その位相は乱数更新クロックＲＧＫの位相とπ（＝１８０°）だけ異なる。ラッチ用クロックＲＣ０は、分岐点ＢＲ１にてラッチ用クロックＲＣ１とラッチ用クロックＲＣ２とに分岐される。したがって、例えば図３６（Ｅ）に示すように、各ラッチ用クロックＲＣ０、ＲＣ１、ＲＣ２はいずれも、共通の周期で信号状態が変化する発振信号となる。ラッチ用クロックＲＣ１は、ラッチ用フリップフロップ５５７Ａのクロック端子ＣＫに入力される。ラッチ用クロックＲＣ２は、ラッチ用フリップフロップ５５７Ｂのクロック端子ＣＫに入力される。
【０２７５】
ラッチ用フリップフロップ５５７Ａは、ラッチ用クロックＲＣ１の立ち上がりエッジに応答して、第１始動口スイッチ２２Ａから伝送されて入力ポートＰ０に供給された第１始動入賞信号ＳＳ１（実際には、ＳＳ１の反転信号）を取り込み（ラッチして）、始動入賞時ラッチ信号ＳＬ１として出力端子Ｑから出力する。そして、乱数ラッチセレクタ５５８Ａにおける取込方法が入力ポートＰ０への信号入力に指定されていれば、始動入賞時ラッチ信号ＳＬ１が乱数ラッチ信号ＬＬ１として出力される。これにより、例えば図３６（Ｆ）に示すようなタイミングでオフ状態（ローレベル）とオン状態（ハイレベル）とで信号状態が変化する第１始動入賞信号ＳＳ１は、ラッチ用クロックＲＣ１が立ち上がるタイミングＴ１１、Ｔ１３、Ｔ１５、…にてラッチ用フリップフロップ５５７Ａに取り込まれた後、図３６（Ｇ）に示すようなタイミングＴ１１、Ｔ１３で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号ＬＬ１となって、乱数ラッチセレクタ５５８Ａから出力される。ここで、第１始動口スイッチ２２Ａから伝送される第１始動入賞信号ＳＳ１は、普通入賞球装置６Ａが形成する第１始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ５５７Ａから乱数ラッチセレクタ５５８Ａを介して出力された乱数ラッチ信号ＬＬ１は、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａに供給されて、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ５５７Ａ及び乱数ラッチセレクタ５５８Ａでは、第１始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックＲＣ１を用いて、乱数値となる数値データを取得するための乱数ラッチ信号ＬＬ１が、第２始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
【０２７６】
ラッチ用フリップフロップ５５７Ｂは、ラッチ用クロックＲＣ２の立ち上がりエッジに応答して、第２始動口スイッチ２２Ｂから伝送されて入力ポートＰ１に供給された第２始動入賞信号ＳＳ２（実際には、ＳＳ２の反転信号）を取り込み（ラッチして）、始動入賞時ラッチ信号ＳＬ２として出力端子Ｑから出力する。そして、乱数ラッチセレクタ５５８Ｂにおける取込方法が入力ポートＰ１への信号入力に指定されていれば、始動入賞時ラッチ信号ＳＬ２が乱数ラッチ信号ＬＬ２として出力される。これにより、例えば図３６（Ｉ）に示すようなタイミングでオフ状態（ローレベル）とオン状態（ハイレベル）とで信号状態が変化する第２始動入賞信号ＳＳ２は、ラッチ用クロックＲＣ２が立ち上がるタイミングＴ１１、Ｔ１３、Ｔ１５、…にてラッチ用フリップフロップ５５７Ｂに取り込まれた後、図３６（Ｊ）に示すようなタイミングＴ１４、Ｔ１５で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号ＬＬ２となって、乱数ラッチセレクタ５５８Ｂから出力される。ここで、第２始動口スイッチ２２Ｂから伝送される第２始動入賞信号ＳＳ２は、普通可変入賞球装置６Ｂが形成する第２始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ５５７Ｂから乱数ラッチセレクタ５５８Ｂを介して出力された乱数ラッチ信号ＬＬ２は、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂに供給されて、乱数列変更回路５５５から出力された乱数列ＲＳＮにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ５５７Ｂ及び乱数ラッチセレクタ５５８Ｂでは、第２始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックＲＣ２を用いて、乱数値となる数値データを取得するための乱数ラッチ信号ＬＬ２が、第１始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
【０２７７】
乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａは、乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データを、乱数ラッチセレクタ５５８Ａからクロック端子へと入力される乱数ラッチ信号ＬＬ１の立ち上がりエッジに応答して取り込み（ラッチして）、記憶データとなる数値データを更新する。乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂは、乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データを、乱数ラッチセレクタ５５８Ｂからクロック端子へと入力される乱数ラッチ信号ＬＬ２の立ち上がりエッジに応答して取り込み（ラッチして）、記憶データとなる数値データを更新する。
【０２７８】
例えば図３６（Ｇ）に示すように、タイミングＴ１１にて乱数ラッチ信号ＬＬ１がオフ状態からオン状態に変化する立ち上がりエッジが生じた場合には、このタイミングＴ１１にて乱数列変更回路５５５から出力されている乱数列ＲＳＮにおける数値データが、図３６（Ｈ）に示すように、乱数値レジスタＲ１Ｄに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタＲ１Ｄとなる乱数値レジスタ５５９Ａでは、第１始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第２始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
【０２７９】
また、例えば図３６（Ｊ）に示すように、タイミングＴ１３にて乱数ラッチ信号ＬＬ２がオフ状態からオン状態に変化する立ち上がりエッジが生じた場合には、このタイミングＴ１３にて乱数列変更回路５５５から出力されている乱数列ＲＳＮにおける数値データが、図３６（Ｋ）に示すように、乱数値レジスタＲ２Ｄに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタＲ２Ｄとなる乱数値レジスタ５５９Ｂは、第２始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第１始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
【０２８０】
こうして、乱数値レジスタ５５９Ａは、ラッチ用フリップフロップ５５７Ａがラッチ用クロックＲＣ１を用いて生成した始動入賞時ラッチ信号ＳＬ１や乱数ラッチセレクタ５５８Ａから出力された乱数ラッチ信号ＬＬ１の立ち上がりエッジに応答して、乱数値ＲＳＮにおける数値データを取得する。乱数値レジスタ５５９Ａに記憶された数値データは、図３４に示すステップＳ２０８にて第１始動入賞判定カウント値が入賞判定値に達したと判定されることで（ステップＳ２０８；Ｙｅｓ）、第１始動口スイッチ２２Ａにより有効な遊技球の始動入賞が検出されたことに基いてＣＰＵ５０５によって読み出される。このとき、乱数値レジスタ５５９Ａから読み出された数値データを用いて、特図表示結果判定用の乱数値ＭＲ１や加算値決定用の乱数値ＭＲ６が設定される。
【０２８１】
また、乱数値レジスタ５５９Ｂは、ラッチ用フリップフロップ５５７Ｂがラッチ用クロックＲＣ２を用いて生成した始動入賞時ラッチ信号ＳＬ２や乱数ラッチセレクタ５５８Ｂから出力された乱数ラッチ信号ＬＬ２の立ち上がりエッジに応答して、乱数列ＲＳＮにおける数値データを取得する。乱数値レジスタ５５９Ｂに記憶された数値データは、図３４に示すステップＳ２１１にて第２始動入賞判定カウント値が入賞判定値に達したと判定されることで（ステップＳ２１１；Ｙｅｓ）、第２始動口スイッチ２２Ｂにより有効な遊技球の始動入賞が検出されたことに基づいてＣＰＵ５０５によって読み出される。このとき、乱数値レジスタ５５９Ｂから読み出された数値データを用いて、特図表示結果判定用の乱数値ＭＲ１や加算値決定用の乱数値ＭＲ６が設定される。
【０２８２】
このように、乱数回路５０９では、クロック用フリップフロップ５５２や乱数生成回路５５３、乱数列変更回路５５５などが、第１始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ５５７Ａや乱数ラッチセレクタ５５８Ａ、乱数値レジスタ５５９Ａの組合せと、第２始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ５５７Ｂや乱数ラッチセレクタ５５８Ｂ、乱数値レジスタ５５９Ｂの組合せとに対して、共通化されている。したがって、クロック用フリップフロップ５５２から出力されて乱数生成回路５５３に供給されてカウント値順列ＲＣＮにおける数値データや乱数列ＲＳＮにおける数値データの更新に用いられる乱数更新クロックＲＧＫは、第１始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成と、第２始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成とについて、共通の乱数更新用クロック信号となる。
【０２８３】
図２６に示すステップＳ１４にてセキュリティ時間が経過したと判定されたときには（ステップＳ１４；Ｙｅｓ）、ＣＰＵ５０５がＲＯＭ５０６に記憶されているユーザプログラムを読み出して、図２７に示すような遊技制御メイン処理が実行される。そして、例えばステップＳ３３における設定処理として、図２８に示すような乱数回路設定処理などが実行される。この場合、乱数回路５０９は、ＣＰＵ５０５による乱数回路設定処理での設定に基づき、乱数値となる数値データの生成動作を開始することになる。こうして乱数回路５０９による乱数値の生成動作が開始された後、主基板１１に設置された遊技開始スイッチ３１のオン操作が検出されるまでは、ステップＳ３５の処理が繰り返し実行され、ステップＳ４０の処理により割込み許可状態とする設定が行われない。そのため、乱数回路５０９による数値データの更新動作が開始された後であっても、遊技開始スイッチ３１のオン操作が検出されるまでは、例えば図３０に示す遊技制御用タイマ割込み処理といった、パチンコ遊技機１における遊技の進行を制御するための遊技制御処理が開始されることがない。これにより、遊技制御処理の開始タイミングから、乱数回路５０９の動作開始タイミングや数値データの更新動作を特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定のタイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２８４】
図９（Ｂ）に示すような第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値を“１”とすれば、例えば図２８に示すステップＳ５５の処理などにより、乱数回路５０９にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路５０９の動作開始タイミングを特定することができたとしても、乱数回路５０９が備える乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂから読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２８５】
以上説明したように、この形態におけるパチンコ遊技機１では、普通入賞球装置６Ａに遊技球が入賞したことが第１始動口スイッチ２２Ａにて検出され、オン状態（ローレベル）の検出信号が出力されると、これに基づいて始動条件が成立したか否かに関わらず、例えば、静電気などにより第１始動口スイッチ２２Ａの信号線にノイズがのった場合のように始動条件が成立していないときであっても、乱数値レジスタ５５９Ａに数値データがラッチされる。乱数値レジスタ５５９Ａに数値データが一旦ラッチされると、この数値データが読み出されない限り、乱数値レジスタ５５９Ａに新たな数値データをラッチすることが制限される。
【０２８６】
また、乱数値レジスタ５５９Ａに数値データがラッチされると、乱数ラッチフラグレジスタＲＤＦＭ０がセットされるが、乱数ラッチフラグレジスタＲＤＦＭ０がセットされたか否かは、遊技制御タイマ割込み処理が実行される毎に監視されている。乱数ラッチフラグレジスタＲＤＦＭ０がセットされている、すなわち乱数値レジスタ５５９Ａに数値データがラッチされていると、乱数値レジスタ５５９Ａから数値データが読み出され、第１乱数読出部５９６Ａに格納される。こうして乱数値レジスタ５５９Ａにラッチされていた数値データが読み出されて第１乱数読出部５９６Ａに格納されると、乱数ラッチフラグレジスタＲＤＦＭ０がリセットされ、その後に第１始動口スイッチ２２Ａの検出信号がオン状態になった場合には乱数値レジスタ５５９Ａに数値データをラッチさせることが可能となる。
【０２８７】
ところで、第１始動口スイッチ２２Ａの検出信号がオン状態となったときにおいて始動条件が成立していないとき（例えば、オン状態の期間が一定期間以上継続しない、保留記憶が満杯など）には、乱数値レジスタ５５９Ａに数値データがラッチされ、さらに第１乱数読出部５９６Ａに格納されても、第１乱数読出部５９６Ａから数値データが取り出されることはなく、特図表示結果判定用の乱数値ＭＲ１等が保留記憶されることがない。つまり、第１始動口スイッチ２２Ａの検出信号がオン状態となったときにおいて始動条件が成立していないときに乱数値レジスタ５５９Ａにラッチされた数値データに基づいて、特図ゲームが実行されることがない。これにより、第１始動口スイッチ２２Ａの検出信号がオン状態となったときにおいて始動条件が成立したタイミングでラッチされた数値データを用いて、大当たり抽選が行われてしまうことがない。
【０２８８】
ところで、第１始動口スイッチ２２Ａの検出信号がオン状態となったときにおいて始動条件が成立しているときには、乱数値レジスタ５５９Ａに数値データがラッチされ、さらに第１乱数読出部５９６Ａに格納されると、第１乱数読出部５９６Ａから数値データが取り出され、特図表示結果判定用の乱数値ＭＲ１等が保留記憶される。そして、それよりも前の保留記憶に基づく特図ゲームが終了していると、保留記憶された乱数値ＭＲ１等に基づく特図ゲームが実行されることとなる。これにより、第１始動口スイッチ２２Ａの検出信号がオン状態となったときにおいて始動条件が成立したタイミングでラッチされた数値データを用いて、大当たり抽選を確実に行うことができるものとなる。
【０２８９】
以上の効果は、乱数値レジスタ５５９Ａを乱数値レジスタ５５９Ｂと、乱数ラッチフラグデータＲＤＦＭ０を乱数ラッチフラグデータＲＤＦＭ１と、普通入賞球装置６Ａ及び第１始動口スイッチ２２Ａを普通可変入賞球装置６Ｂ及び第２始動口スイッチ２２Ｂと、第１乱数読出部５９６Ａを第２乱数読出部５９６Ｂと読み替えた場合にも、同様に生ずるものとなる。
【０２９０】
また、図３１の乱数チェック処理においては、乱数値レジスタ５５９Ａに数値データがラッチされているかと、乱数値レジスタ５５９Ｂに数値データがラッチされているかとが、別々に判定されている。そして、普通入賞球装置６Ａへの遊技球の入賞（第１始動口スイッチ６Ａからのオン状態の検出信号の出力）に基づいて乱数値レジスタ５５９Ａに数値データがラッチされたのであれば、これに対応する乱数値ＭＲ１等を用いて大当たり抽選が行われ、普通可変入賞球装置６Ｂへの遊技球の入賞（第２始動口スイッチ６Ｂからのオン状態の検出信号の出力）に基づいて乱数値レジスタ５５９Ｂに数値データがラッチされたのであれば、これに対応する乱数値ＭＲ１等を用いて大当たり抽選が行われるものとなる。このため、成立した始動条件毎に、そのタイミングでラッチされた数値データに応じて特図ゲームを確実に実行させることができるものとなる。
【０２９１】
さらに、図２７の遊技制御メイン処理においてステップＳ３５で遊技開始スイッチ３１がオン操作されたと判定された後、ステップＳ４０で割込み許可状態とされる前に、乱数値レジスタＲ１Ｄ、Ｒ２Ｄに数値データがラッチされているか否か、すなわち乱数ラッチフラグが設定されているか否かを確認し、乱数値レジスタＲ１Ｄ、Ｒ２Ｄに数値データがラッチされている場合には、ダミーで乱数値レジスタＲ１Ｄ、Ｒ２Ｄの数値データを読み出すようになっている。一般に、電源投入時やシステムリセット時には、電源基板１０から供給される電源電圧も不安定な状態となっており、第１始動入賞口スイッチ２２Ａや第２始動口スイッチ２２Ｂの誤検出も起こりやすく、第１始動入賞口６Ａまたは第２始動入賞口６Ｂに遊技球が入賞した訳でもないのに、乱数値レジスタＲ１Ｄ、Ｒ２Ｄに数値データがラッチされてしまうという事態が発生しやすい。このような場合にダミーで乱数値レジスタＲ１Ｄ、Ｒ２Ｄの数値データを読み出すものとしているため、始動条件を成立させた第１始動入賞口６Ａ、第２始動入賞口６Ｂへの遊技球の入賞タイミングとは異なるタイミングでラッチされた数値データを用いて大当たり抽選が行われてしまうことがない。
【０２９２】
また、セキュリティ時間設定ＫＳＥＳのビット番号［４−３］におけるビット値を“００”以外の値とすることにより、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる。これにより、パチンコ遊技機１の電源投入やシステムリセット等による動作開始タイミングから、乱数回路５０９の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２９３】
また、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値を“０００”以外の値とすることにより、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる。これにより、パチンコ遊技機１の電源投入やシステムリセット等による動作開始タイミングから、乱数回路５０９の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
【０２９４】
遊技制御用マイクロコンピュータ１００に内蔵又は外付けられた乱数回路５０９では、ラッチ用フリップフロップ５５７Ａ、乱数ラッチセレクタ５５８Ａ及び乱数値レジスタ５５９Ａの組合せにより、ラッチ用フリップフロップ５５７Ｂ、乱数ラッチセレクタ５５８Ｂ及び乱数値レジスタ５５９Ｂの組合せとは別個に、乱数値となる数値データを更新するように、乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データを取り込んで記憶する。これにより、例えば第１及び第２始動入賞口といった、複数の始動領域に遊技球が同時に進入して始動入賞が発生したときでも、正確な乱数値となる数値データを取得することができる。また、クロック用フリップフロップ５５２、乱数生成回路５５３及び乱数列変更回路５５５などは、ラッチ用フリップフロップ５５７Ａ、乱数ラッチセレクタ５５８Ａ及び乱数値レジスタ５５９Ａの組合せと、ラッチ用フリップフロップ５５７Ｂ、乱数ラッチセレクタ５５８Ｂ及び乱数値レジスタ５５９Ｂの組合せとに対して、共通化されており、乱数生成回路５５３に供給されることによりカウント値順列ＲＣＮや乱数列ＲＳＮの更新に用いられる乱数更新クロックＲＧＫは、各組合せに共通の乱数更新用クロック信号となる。これにより、乱数回路５０９における回路構成を簡素化することができ、パチンコ遊技機１の製造コストを削減することができる。そして、ラッチ用フリップフロップ５５７Ａ、５５７Ｂはそれぞれ、互いに共通のクロック用フリップフロップ５５２にて生成されたラッチ用クロックＲＣ０を分岐点ＢＲ１で分岐したことにより、互いに共通の周期で信号状態が変化するラッチ用クロックＲＣ１、ＲＣ２を用いて、乱数値となる数値データを取得するための始動入賞時ラッチ信号ＳＬ１や始動入賞時ラッチ信号ＳＬ２を生成する。これによっても、乱数回路５０９における回路構成の簡素化や、パチンコ遊技機１における製造コストの削減を図ることができる。
【０２９５】
また、乱数用クロック生成回路１１２により生成される乱数用クロックＲＣＬＫの発振周波数と、制御用クロック生成回路１１１により生成される制御用クロックＣＣＬＫの発振周波数とは、互いに異なっており、また、一方の発振周波数が他方の発振周波数の整数倍となることもない。そのため、乱数回路５０９のクロック用フリップフロップ５５２により生成される乱数更新クロックＲＧＫやラッチ用クロックＲＣ０の発振周波数は、乱数用クロックＲＣＬＫの発振周波数の１／２となるが、制御用クロックＣＣＬＫの発振周波数や、制御用クロックＣＣＬＫの発振周波数の１／２となる内部システムクロックＳＣＬＫの発振周波数とは、異なるものとなる。こうして、制御用クロックＣＣＬＫや内部システムクロックＳＣＬＫと、乱数更新クロックＲＧＫとに同期が生じることを防ぎ、ＣＰＵ５０５の動作タイミングからは、乱数回路５０９にて乱数生成回路５５３や乱数列変更回路５５５により生成される乱数列ＲＳＮにおける数値データの更新タイミングを特定することが困難になる。これにより、ＣＰＵ５０５の動作タイミングから乱数回路５０９における乱数値となる数値データの更新動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。また、ラッチ用クロックＲＣ０を分岐することにより生成されるラッチ用クロックＲＣ１、ＲＣ２の発振周波数も、制御用クロックＣＣＬＫや内部システムクロックＳＣＬＫの発振周波数とは、異なるものとなる。こうして、制御用クロックＣＣＬＫや内部システムクロックＳＣＬＫと、ラッチ用クロックＲＣ１、ＲＣ２とに同期が生じることを防ぎ、ＣＰＵ５０５の動作タイミングからは、乱数回路５０９にて乱数値となる数値データが取り込まれる動作タイミングを特定することが困難になる。これにより、ＣＰＵ５０５の動作タイミングから乱数回路５０９における乱数値となる数値データの取込動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。
【０２９６】
遊技制御用マイクロコンピュータ１００に内蔵されたＣＰＵ５０５は、例えば図２７に示すステップＳ３３における設定処理として、図２８に示すような乱数回路設定処理などを実行して、乱数回路５０９における乱数値の生成動作を開始させた後、主基板１１に設置された遊技開始スイッチ３１のオン操作が検出されるまでは、ステップＳ３５の処理を繰り返し実行して、パチンコ遊技機１における遊技の進行を制御するための遊技制御処理の実行を開始させない。これにより、遊技制御処理の開始タイミングからは、乱数回路５０９の動作開始タイミングや数値データの更新動作を特定することが困難になる。したがって、遊技制御処理の開始タイミングを解析した結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。なお、乱数回路５０９が遊技制御用マイクロコンピュータ１００に外付けされる場合には、例えばＣＰＵ５０５がステップＳ３５の処理を実行するより前に、乱数回路５０９がＣＰＵ５０５における処理とは独立して、プログラム管理エリアの記憶データに基づく初期設定を行ってから、乱数値の生成動作を開始すればよい。
【０２９７】
遊技制御用マイクロコンピュータ１００に内蔵又は外付けされた乱数回路５０９では、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値が“１”とされたことに対応して、乱数生成回路５５３から出力されるカウント値順列ＲＣＮや乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路５０９の動作開始タイミングを特定することができたとしても、乱数回路５０９が備える乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂから読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
【０２９８】
遊技制御用マイクロコンピュータ１００が備える外部バスインタフェース５０１では、内部リソースアクセス制御回路５０１Ａにより、例えばＲＯＭ５０６の記憶データといった、遊技制御用マイクロコンピュータ１００の内部データにつき、ＣＰＵ５０５等の内部回路以外による外部読出が制限される。これにより、例えばＲＯＭ５０６に記憶されているゲーム制御用のユーザプログラムといった、遊技制御処理プログラムが遊技制御用マイクロコンピュータ１００の外部から読み出されて解析などに提供されることを防止できる。そして、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
【０２９９】
遊技制御用マイクロコンピュータ１００に内蔵又は外付けされた乱数回路５０９では、周波数監視回路５５１により乱数用クロックＲＣＬＫにおける周波数異常が検知されたときに、内部情報レジスタＣＩＦのビット番号［４］に格納される内部情報データＣＩＦ４のビット値が“１”に設定される。そして、ＣＰＵ５０５では、例えば図２９に示すステップＳ６３にて内部情報データＣＩＦ４の読出値が“１”であると連続して判定された回数が、ステップＳ６５にてクロック異常判定値に達したと判定されたときに、乱数回路５０９の動作状態に異常が発生したと判定する。これにより、乱数用クロックＲＣＬＫとして不正信号を入力することによる不正行為を確実に防止することができる。
【０３００】
遊技制御用マイクロコンピュータ１００に内蔵されたＣＰＵ５０５は、例えば図２９に示すステップＳ７１の処理を繰り返し実行することなどにより、乱数回路５０９に対するラッチ信号の出力に相当する乱数値取込指定レジスタＲＤＬＴへのビット値“１”の書き込みを行い、乱数値レジスタ５５９Ａや乱数値レジスタ５５９Ｂに格納された数値データを複数回読み出す。そして、ステップＳ７２〜Ｓ７４の処理を実行することなどにより読み出した数値データの全ビットを監視して、変化しないビットデータの有無に基づき、ステップＳ７６にて乱数回路５０９の動作状態に異常が発生したか否かを判定する。これにより、乱数回路５０９の動作状態に異常が発生していることを確実かつ容易に検知して、不正行為を防止することができる。
【０３０１】
遊技制御用マイクロコンピュータ１００に内蔵又は外付けされた乱数回路５０９では、普通入賞球装置６Ａが形成する第１始動入賞口での遊技球の始動入賞が第１始動口スイッチ２２Ａにより検出されたときに、ラッチ用フリップフロップ５５７Ａ、乱数ラッチセレクタ５５８Ａ及び乱数値レジスタ５５９Ａの組合せにより、乱数値となる数値データを更新するように、乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データを取り込んで記憶する。その一方で、普通可変入賞球装置６Ｂが形成する第２始動入賞口での遊技球の始動入賞が第２始動口スイッチ２２Ｂにより検出されたときには、ラッチ用フリップフロップ５５７Ｂ、乱数ラッチセレクタ５５８Ｂ及び乱数値レジスタ５５９Ｂの組合せにより、乱数値となる数値データを更新するように、乱数列変更回路５５５から出力される乱数列ＲＳＮにおける数値データを取り込んで記憶する。これにより、短時間のうちに第１始動入賞口と第２始動入賞口の双方に遊技球が進入（始動入賞）したときでも、一方の始動入賞に対応して取得された乱数値が、他方の始動入賞に対応した乱数値として用いられてしまう不都合を、確実に防止することができる。
【０３０２】
遊技制御用マイクロコンピュータ１００に内蔵されたＣＰＵ５０５は、図３５に示すステップＳ２４４にて特図表示結果判定用の乱数値ＭＲ１を示す数値データが大当り判定値データと合致したときに、ステップＳ２４６にて図２４に示す大当り種別決定テーブル１３１を使用テーブルとしてセットした後、ステップＳ２４７にて大当り種別を複数種類のいずれかに決定する。そして、大当り種別決定テーブル１３１では、第１特別図柄表示装置４Ａによる第１特図を用いた特図ゲームを開始するための第１開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合と、第２特別図柄表示装置４Ｂによる第２特図を用いた特図ゲームを開始するための第２開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合とで、大当り種別が「突確」に決定される割合を異ならせるように、テーブルデータが構成されている。これにより、第１開始条件と第２開始条件のいずれが成立したかに応じて２ラウンド大当り状態に制御されることに対する遊技者の期待感を異ならせ、遊技興趣を向上させることができる。特に、第２開始条件が成立したときには大当り種別を「突確」には決定しないようにすることで、例えば確変状態や時短状態といった第２始動入賞口が拡大開放状態に制御されやすい期間において、大当り種別が「突確」となることで遊技興趣が低下することを防止でき、確変状態や時短状態において賞球が払い出される頻度を高めることができる。
【０３０３】
電源基板１０には、例えば図３に示すようなクリアスイッチ３０４が設置されている。そして、遊技制御用マイクロコンピュータ１００のＣＰＵ５０５は、図２７に示すステップＳ２７にてクリアスイッチ３０４のオン操作がなされたと判定したときに、ステップＳ３１及びステップＳ３２の処理を実行することにより、乱数回路５０９の動作状態を含めた遊技制御の初期化を行う。そして、遊技開始スイッチ３１が例えば図２に示すように主基板１１に設置されることにより、乱数回路５０９の動作状態を初期化してから遊技制御処理プログラムの実行を開始させるには、電源基板１０に設置されたクリアスイッチ３０４と主基板１１に設置された遊技開始スイッチ３１の双方に対するオン操作が要求されるので、狙い撃ちなどによる不正行為を防止することができる。
【０３０４】
遊技制御用マイクロコンピュータ１００に内蔵又は外付けされた乱数回路５０９は、第２乱数初期設定ＫＲＳ２のビット番号［０］におけるビット値が“１”である場合に、例えばＣＰＵ５０５が図２８に示すステップＳ５５の処理を実行したことなどに対応して、システムリセット毎に乱数値となる数値データのスタート値を変更する。このときには、例えば遊技制御用マイクロコンピュータ１００に内蔵されたフリーランカウンタのカウント値などを用いて、システムリセット毎に変更されるスタート値を決定すればよい。これにより、システムリセット等のタイミングにより異なる初期値決定用データを用いて初期値を決定することができ、狙い撃ちなどによる不正行為を防止することができる。
【０３０５】
本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について説明する。
【０３０６】
上記の実施の形態では、図３１の乱数チェック処理において、乱数値レジスタ５５９Ａに数値データがラッチされているかと、乱数値レジスタ５５９Ｂに数値データがラッチされているかとを別々に判定し、乱数値レジスタ５５９Ａに数値データがラッチされていると判定されたときには乱数値レジスタ５５９Ａから数値データを読み出して第１乱数読出部５９６Ａに格納し、乱数値レジスタ５５９Ｂに数値データがラッチされていると判定されたときには乱数値レジスタ５５９Ｂから数値データを読み出して第２乱数読出部５９６Ｂに格納するものとしていた。
【０３０７】
これに対して、乱数チェック処理において乱数値レジスタ５５９Ａおよび／または乱数値レジスタ５５９Ｂに数値データがラッチされているかを判定し、乱数値レジスタ５５９Ａおよび／または乱数値レジスタ５５９Ｂに数値データがラッチされていると判定されたときには、乱数値レジスタ５５９Ａから数値データを読み出して第１乱数読出部５９６Ａに格納するとともに、乱数値レジスタ５５９Ｂから数値データを読み出して第２乱数読出部５９６Ｂに格納するものとしてもよい（第１変形態様）。この場合、乱数値レジスタ５５９Ａに数値データがラッチされたときに実行される処理と、乱数値レジスタ５５９Ｂに数値データがラッチされたときに実行される処理が共通化されるものとなるので、制御負荷を軽減することができるものとなる。
【０３０８】
なお、乱数チェック処理において乱数値レジスタ５５９Ａおよび／または乱数値レジスタ５５９Ｂに数値データがラッチされているかを判定するのであれば、乱数ラッチフラグレジスタは、乱数値レジスタ５５９Ａ、５５９Ｂの双方で共通化して１つだけ設けるものとすることもできる（第２変形態様）。この場合には、乱数ラッチフラグレジスタに必要な記憶容量も削減することができるものとなる。
【０３０９】
上記の実施の形態では、乱数値レジスタ５５９Ａに数値データがラッチされているかと、乱数値レジスタ５５９Ｂに数値データがラッチされているかとを、遊技制御タイマ割込み処理が実行される度に監視しており、数値データがラッチされているとの監視結果が得られたときに、乱数値レジスタ５５９Ａまたは乱数値レジスタ５５９Ｂから数値データを読み出し、それぞれ第１乱数読出部５９６Ａ、第２乱数読出部５９６Ｂに格納するものとしていた。これに対して、乱数値レジスタ５５９Ａに数値データがラッチされたとき（すなわち、乱数ラッチフラグレジスタＲＤＦＭ０がセットされたとき）と、乱数値レジスタ５５９Ｂに数値データがラッチされたとき（すなわち、乱数ラッチフラグレジスタＲＤＦＭ１がセットされたとき）とに、割込みを発生させ、この割込みの割り込み処理ルーチンにおいて乱数値レジスタ５５９Ａから数値データを読み出して第１乱数読出部５９６Ａに格納し、乱数値レジスタ５５９Ｂから数値データを読み出して第２乱数読出部５９６Ｂに格納するものとしてもよい。
【０３１０】
ここで、乱数値レジスタ５５９Ａに数値データがラッチされたときと、乱数値レジスタ５５９Ｂに数値データがラッチされたときとで、別々の割込み（それぞれ第１割込み、第２割込み）を発生させるものとすることができる。第１割込みの割り込み処理ルーチンでは、乱数値レジスタ５５９Ａから数値データを読み出して第１乱数読出部５９６Ａに格納し、第２割込みの割り込み処理ルーチンでは、乱数値レジスタ５５９Ｂから数値データを読み出して第２乱数読出部５９６Ｂに格納するものとすることができる（第３変形態様）。この第３変形態様においても、上記の実施の形態と同様の効果を得ることができる。
【０３１１】
或いは、乱数値レジスタ５５９Ａに数値データがラッチされたときと、乱数値レジスタ５５９Ｂに数値データがラッチされたときとで、両者に共通する割込みを発生させ、この割込みの割り込み処理ルーチンにおいて乱数値レジスタ５５９Ａから数値データを読み出して第１乱数読出部５９６Ａに格納するとともに、乱数値レジスタ５５９Ｂから数値データを読み出して第２乱数読出部５９６Ｂに格納するものとすることができる（第４変形態様）。この第４変形態様においても、上記の第１変形態様と同様の効果を得ることができる。
【０３１２】
さらに、乱数値レジスタ５５９Ａに数値データがラッチされたときと、乱数値レジスタ５５９Ｂに数値データがラッチされたときとで、両者に共通する割込みを発生させるものとするのであれば、乱数ラッチフラグレジスタは、乱数値レジスタ５５９Ａ、５５９Ｂの双方で共通化して１つだけ設けるものとすることもできる（第５変形態様）。この第５変形態様においても、上記の第２変形態様と同様の効果を得ることができる。
【０３１３】
上記の実施の形態では、遊技球が第１始動入賞口６Ａまたは第２始動入賞口６Ｂに入賞し、これに基づいて始動条件が成立したときに、第１始動入賞口６Ａまたは第２始動入賞口６Ｂへの入賞により取り込まれた数値データ（乱数）そのものを第１特図記憶部５９１Ａまたは第２特図保留記憶部５９１Ｂに記憶させておくものとしていた。そして、大当たり抽選や大当たり種別抽選などは、特別図柄及び飾り図柄の変動表示を開始させるときにおいて第１特図記憶部５９１Ａまたは第２特図保留記憶部５９１Ｂに記憶させていた乱数に基づいて実行するものとしていた。これに対して、遊技球が第１始動入賞口６Ａまたは第２始動入賞口６Ｂに入賞し、これに基づいて始動条件が成立したら、第１始動入賞口６Ａまたは第２始動入賞口６Ｂへの入賞により取り込まれた乱数に基づいて大当たり抽選や大当たり種別抽選なども行ってしまい、その抽選結果を第１特図記憶部５９１Ａまたは第２特図保留記憶部５９１Ｂに記憶させておくものとしてもよい。
【０３１４】
上記実施の形態では、図２６に示すステップＳ４にて設定される延長時間が、セキュリティ時間設定ＫＳＥＳのビット番号［２−０］におけるビット値に対応して、予め選択可能な複数の延長時間のいずれかとなり、この延長時間はシステムリセット毎に変更されないものとして説明した。しかしながら、この発明はこれに限定されず、例えばＲＯＭ５０６に記憶されたユーザプログラムにおける設定などにより、固定時間に加算される延長時間を、システムリセット毎に複数の延長時間のいずれかに決定するようにしてもよい。この場合には、ステップＳ４にて設定される延長時間がいずれも、ステップＳ８にて設定可能な最長の可変設定時間に比べて、長くなるように定義しておく。そして、ステップＳ４では大まかな延長時間を決定した後、ステップＳ８では詳細な延長時間を決定すればよい。これにより、パチンコ遊技機１の電源投入時やシステムリセット時にセキュリティモードとなるセキュリティ時間を、システムリセット毎に大きく変化させることが可能になり、パチンコ遊技機１の動作開始タイミングから乱数回路５０９の動作開始タイミングや更新される数値データなどを特定することが、より困難になる。
【０３１５】
また、例えば図２６に示すステップＳ４にて設定される延長時間などは、遊技制御用マイクロコンピュータ１００を構成するチップ毎に付与されるＩＤナンバーを用いて決定されるようにしてもよい。一例として、ＩＤナンバーに所定のスクランブル処理を施す演算や、ＩＤナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値に対応して延長時間を設定してもよい。この場合には、例えばシステムリセット毎に延長時間を決定するために用いる演算式を変更することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。さらに、例えばＩＤナンバーを用いて延長時間を決定するための演算式をシステムリセット時に格納したフリーランカウンタのカウント値に対応して決定するといったように、フリーランカウンタのカウント値と、ＩＤナンバーとを組み合わせて使用することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。また、乱数回路５０９にて生成される乱数のスタート値をシステムリセット毎に変更する場合にも、フリーランカウンタのカウント値と、ＩＤナンバーとを組み合わせて使用することなどにより、乱数のスタート値を決定してもよい。
【０３１６】
上記実施の形態では、遊技制御用マイクロコンピュータ１００の外部に設けられた乱数用クロック生成回路１１２により、制御用クロック生成回路１１１で生成される制御用クロックＣＣＬＫの発振周波数とは異なる発振周波数を有する乱数用クロックＲＣＬＫを生成して、乱数回路５０９に供給するものとして説明した。しかしながら、この発明はこれに限定されず、遊技制御用マイクロコンピュータ１００のＣＰＵ５０５に供給されるクロック信号と、乱数回路５０９に供給されるクロック信号とが、共通のクロック生成回路に含まれる１つの発振器により生成された発振信号を用いて、生成されるようにしてもよい。この場合には、例えば乱数用クロックＲＣＬＫと制御用クロックＣＣＬＫをそれぞれ生成するための分周器などを設け、ラッチ用クロックＲＣ０、ＲＣ１、ＲＣ２と制御用クロックＣＣＬＫあるいは内部システムクロックＳＣＬＫとの同期が生じにくくなるように、各分周器における分周比などを設定すればよい。制御用クロック生成回路１１１と乱数用クロック生成回路１１２とは、その全部又は一部が、遊技制御用マイクロコンピュータ１００の内部に設けられてもよいし、遊技制御用マイクロコンピュータ１００の外部に設けられてもよい。
【０３１７】
上記実施の形態では、乱数回路５０９が乱数用クロック生成回路１１２により生成された乱数用クロックＲＣＬＫの供給を受け、クロック用フリップフロップ５５２により、乱数更新クロックＲＧＫとラッチ用クロックＲＣ０とを生成するものとして説明した。しかしながら、この発明はこれに限定されず、例えば乱数用クロック生成回路１１２といった、乱数回路５０９の外部において、乱数更新クロックＲＧＫやラッチ用クロックＲＣ０となる発振信号が生成されるようにしてもよい。あるいは、乱数回路５０９の内部にて、乱数更新クロックＲＧＫを生成するための回路と、ラッチ用クロックＲＣ０を生成するための回路とを、別個に設けるようにしてもよい。一例として、クロック用フリップフロップ５５２と同様のフリップフロップにより乱数更新クロックＲＧＫを生成する一方で、乱数更新クロックＲＧＫの信号状態を反転させる反転回路を設け、その反転回路から出力される信号を、ラッチ用クロックＲＣ０として用いるようにしてもよい。
【０３１８】
上記実施の形態では、クリアスイッチ３０４が電源基板１０に設置され、遊技開始スイッチ３１がクリアスイッチ３０４とは別個に主基板１１に設置されるものとして説明した。しかしながら、この発明はこれに限定されず、例えば電源基板１０及び主基板１１のいずれか一方にて、クリアスイッチ３０４と遊技開始スイッチ３１とを兼用する１つのスイッチを設置してもよい。これにより、例えば遊技開始スイッチ３１をテープ止めして固定するなどの不正行為がなされたときでも、クリアスイッチ３０４が同時に作動して制御内容がクリア（初期化）されることになるため、狙い撃ちなどによる不正行為を防止することができる。ただし、上記実施の形態では、図２６に示すステップＳ４にて延長時間を設定することや、ステップＳ８にて可変設定時間を設定することにより、セキュリティモードとなるセキュリティ時間を変更することができるので、クリアスイッチ３０４と遊技開始スイッチ３１とを兼用しない場合に、たとえ遊技開始スイッチ３１に対する不正行為がなされたとしても、パチンコ遊技機１の動作開始タイミングから乱数回路５０９の動作開始タイミングやソフトウェアによる乱数更新動作の開始タイミングなどを特定することは困難であり、狙い撃ちなどによる不正行為を防止する効果は十分に高いものとなっている。
【０３１９】
上記実施の形態では、特図表示結果判定用の乱数値ＭＲ１を示す数値データや加算値決定用の乱数値ＭＲ６を示す数値データといった、主基板１１で用いられる乱数値を設定する際に、ソフトウェアによる加工を行うものとして説明した。しかしながら、この発明はこれに限定されず、例えば演出制御基板１２といった、サブ側の制御基板で用いられる乱数値を設定する際にも、ソフトウェアによる加工を行ってもよい。一例として、演出制御基板１２に搭載された演出制御用マイクロコンピュータ１２０のＣＰＵが、飾り図柄の可変表示における確定飾り図柄となる最終停止図柄を決定するために用いる乱数値や、予告演出を実行するか否かを決定するために用いる乱数値などについて、ソフトウェアによる加工を行って設定するようにしてもよい。
【０３２０】
上記実施の形態では、例えばＲＯＭ５０６における記憶データの全部又は一部といった、遊技制御用マイクロコンピュータ１００の内部データの外部読出を、外部バスインタフェース５０１が備える内部リソースアクセス制御回路５０１Ａにより制限するものとして説明した。しかしながら、この発明はこれに限定されず、例えば遊技制御用マイクロコンピュータ１００にてＲＯＭ５０６の記憶データを外部読出するための接続端子などを、パチンコ遊技機１の提供者において外部装置が接続不能に封止することなどにより、ＲＯＭ５０６の外部読出などを制限できるようにしてもよい。
【０３２１】
上記実施の形態では、普通入賞球装置６Ａが形成する第１始動入賞口と、普通可変入賞球装置６Ｂが形成する第２始動入賞口とが、複数の始動領域として設けられるものとして説明した。しかしながら、この発明はこれに限定されず、例えば３個以上といった複数の始動領域が設けられるものであってもよい。この場合、各始動領域にて遊技球の始動入賞が検出されたことに基づき、互いに異なる特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。あるいは、例えば３個以上の始動領域のうちで、一部（少なくとも２個）の始動領域にて遊技球の始動入賞が検出されたことに基づき、同一の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。また、複数の始動領域のうち、いずれの始動領域にて遊技球の始動入賞が検出された場合でも、共通する１個（あるいは１組）の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。この場合には、複数の始動領域において遊技球の始動入賞が検出された順番と同一の順番で、特図ゲームを開始するための開始条件が成立するようにしてもよい。あるいは、複数の始動領域に優先順位を付け、優先順位が高い始動領域にて遊技球の始動入賞が検出されたことに基づく特図ゲームを開始するための開始条件を、優先順位が低い始動領域にて遊技球の始動入賞が検出されたことに基づく開始条件よりも、優先的に成立させるようにしてもよい。
【０３２２】
上記実施の形態では、可変表示結果が「小当り」となったことに基づいて小当り遊技状態に制御され、小当り遊技状態が終了した後には、遊技状態の変更が行われない。その一方で、可変表示結果が「大当り」となる場合に大当り種別が「突確」となったことに基づいて２ラウンド大当り状態に制御され、２ラウンド大当り状態が終了した後には、確変状態に制御されるものとして説明した。しかしながら、この発明はこれに限定されず、大当り種別が「突確」となる場合や可変表示結果が「小当り」となる場合に代えて、あるいは、これらの場合に加えて、「突然時短」や「突然通常」となる場合を設けるようにしてもよい。一例として、「突然時短」と「突然通常」は、可変表示結果が「大当り」となる場合における大当り種別に含まれるものとする。この場合、大当り種別決定テーブル１３１は、変動特図指定バッファ値に応じて、大当り種別決定用の乱数値ＭＲ２を、「突然時短」や「突然通常」の大当り種別に割り当てるテーブルデータが含まれるように構成されればよい。そして、可変表示結果が「大当り」となる場合に大当り種別が「突然時短」となるときには、大当り種別が「突確」の場合と同様にして２ラウンド大当り状態に制御され、２ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり時短状態に制御される。他方、可変表示結果が「大当り」となる場合に大当り種別が「突然通常」となるときには、大当り種別が「突確」の場合と同様にして２ラウンド大当り状態に制御され、２ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり通常状態に制御される。これにより、２ラウンド大当り状態の終了後に制御される遊技状態に対する遊技者の期待感を高め、遊技興趣を向上させることができる。
【０３２３】
上記実施の形態では、可変表示結果が「大当り」となったことに基づく大当り遊技状態が終了した後に、確変状態や時短状態といった遊技状態に制御できるものとして説明した。そして、確変状態や時短状態では、第２始動入賞口に遊技球が進入する可能性を高めて第２始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われるものとして説明した。しかしながら、この発明はこれに限定されず、例えば確変状態には、継続して確変制御が行われるとともに、第２始動入賞口に遊技球が進入する可能性を高める有利開放制御が行われる高確高ベース状態と、確変制御は行われるが有利開放制御は行われない高確低ベース状態とが含まれるようにしてもよい。また、時短状態には、特図変動時間が短縮されるとともに有利開放制御が行われる低確高ベース状態と、特図変動時間は短縮されるが有利開放制御は行われない低確低ベース状態とが含まれるようにしてもよい。一例として、大当り種別が「第１確変」〜「第３確変」、「突確」のいずれであるかに対応して、大当り遊技状態の終了後に、高確高ベース状態と高確低ベース状態のいずれかに制御されるようにしてもよい。他の一例として、大当り種別が「第１確変」〜「第３確変」、「突確」のいずれであるかに応じて、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれかに制御される割合を、互いに異ならせるようにしてもよい。
【０３２４】
上記実施の形態では、画像表示装置５の表示領域において、「左」、「中」、「右」の飾り図柄表示エリア５Ｌ、５Ｃ、５Ｒが設けられ、各飾り図柄表示エリア５Ｌ、５Ｃ、５Ｒにて１個の飾り図柄が停止表示されることで、予め定められた１個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるものとして説明した。しかしながら、この発明はこれに限定されず、例えば「左」、「中」、「右」の各飾り図柄表示エリア５Ｌ、５Ｃ、５Ｒにて「上段」、「中段」、「下段」の３カ所に飾り図柄を停止表示可能とし、５個あるいは８個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるようにしてもよい。
【０３２５】
上記実施の形態では、第１特別図柄表示装置４Ａ及び第２特別図柄表示装置４Ｂを備えたパチンコ遊技機１について説明したが、１つの特別図柄表示装置が設けられたパチンコ遊技機にも本発明の一部を適用することができる。この場合には、例えば図１３に示す乱数回路５０９が備えるラッチ用フリップフロップ５５７Ｂ、乱数ラッチセレクタ５５８Ｂ及び乱数値レジスタ５５９Ｂの組合せを不使用とする一方、セキュリティ時間をシステムリセット毎に所定の時間範囲で変化させたり、セキュリティ時間を固定時間に加えて予め選択可能な複数の延長時間のいずれかに設定したりすることができればよい。
【０３２６】
その他にも、パチンコ遊技機１の装置構成、データ構成、フローチャートで示した処理、画像表示装置５の表示領域における演出画像の表示動作を含めた各種の演出動作などは、本発明の趣旨を逸脱しない範囲で、任意に変更及び修正が可能である。加えて、本発明の遊技機は、入賞球の検出に応答して所定数の賞球を払い出す払出式遊技機に限定されるものではなく、遊技球を封入し入賞球の検出に応答して得点を付与する封入式遊技機にも適用することができる。
【符号の説明】
【０３２７】
１  パチンコ遊技機
４Ａ、４Ｂ  特別図柄表示装置
５  画像表示装置
１１  主基板
１２  演出制御基板
２２Ａ、２２Ｂ  始動口スイッチ
３１  遊技開始スイッチ
１００  遊技制御用マイクロコンピュータ
５０１  外部バスインタフェース
５０１Ａ  内部リソースアクセス制限回路
５０２  クロック回路
５０３  固有情報記憶回路
５０４  リセット／割込みコントローラ
５０５  ＣＰＵ
５０６  ＲＯＭ
５０７  ＲＡＭ
５０８  ＣＴＣ
５０９  乱数回路
５１０  ＰＩＰ
５１１  シリアル通信回路
５１２  アドレスデコード回路
５５１  周波数監視回路
５５２  クロック用フリップフロップ
５５３  乱数生成回路
５５４  スタート値設定回路
５５５  乱数列変更回路
５５６  乱数列変更設定回路
５５７Ａ、５５７Ｂ  ラッチ用フリップフロップ
５５８Ａ、５５８Ｂ  乱数ラッチセレクタ
５５９Ａ、５５９Ｂ  乱数値レジスタ
【図１】
0005942019.tif 000002
【図２】
0005942019.tif 000003
【図３】
0005942019.tif 000004
【図４】
0005942019.tif 000005
【図５】
0005942019.tif 000006
【図６】
0005942019.tif 000007
【図７】
0005942019.tif 000008
【図８】
0005942019.tif 000009
【図９】
0005942019.tif 000010
【図１０】
0005942019.tif 000011
【図１１】
0005942019.tif 000012
【図１２】
0005942019.tif 000013
【図１３】
0005942019.tif 000014
【図１４】
0005942019.tif 000015
【図１５】
0005942019.tif 000016
【図１６】
0005942019.tif 000017
【図１７】
0005942019.tif 000018
【図１８】
0005942019.tif 000019
【図１９】
0005942019.tif 000020
【図２０】
0005942019.tif 000021
【図２１】
0005942019.tif 000022
【図２２】
0005942019.tif 000023
【図２３】
0005942019.tif 000024
【図２４】
0005942019.tif 000025
【図２５】
0005942019.tif 000026
【図２６】
0005942019.tif 000027
【図２７】
0005942019.tif 000028
【図２８】
0005942019.tif 000029
【図２９】
0005942019.tif 000030
【図３０】
0005942019.tif 000031
【図３１】
0005942019.tif 000032
【図３２】
0005942019.tif 000033
【図３３】
0005942019.tif 000034
【図３４】
0005942019.tif 000035
【図３５】
0005942019.tif 000036
【図３６】
0005942019.tif 000037