以下、図面を参照しつつ、本発明の一実施形態を詳細に説明する。図1は、本実施の形態におけるパチンコ遊技機の正面図であり、主要部材の配置レイアウトを示す。パチンコ遊技機(遊技機)1は、大別して、遊技盤面を構成する遊技盤(ゲージ盤)2と、遊技盤2を支持固定する遊技機用枠(台枠)3とから構成されている。遊技盤2には、ガイドレールによって囲まれた、ほぼ円形状の遊技領域が形成されている。この遊技領域には、遊技媒体としての遊技球が、図2に示す発射モータ61を含む打球発射装置により発射されて打ち込まれる。
遊技盤2の所定位置(図1に示す例では、遊技領域の右側方)には、第1特別図柄表示装置4Aと、第2特別図柄表示装置4Bとが設けられている。第1特別図柄表示装置4Aと第2特別図柄表示装置4Bはそれぞれ、例えば7セグメントやドットマトリクスのLED(発光ダイオード)等から構成され、可変表示ゲームの一例となる特図ゲームにおいて、各々が識別可能な複数種類の識別情報(特別識別情報)である特別図柄(「特図」ともいう)を、変動可能に表示(可変表示)する。例えば、第1特別図柄表示装置4Aと第2特別図柄表示装置4Bはそれぞれ、「0」〜「9」を示す数字や「−」を示す記号等から構成される複数種類の特別図柄を可変表示する。なお、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにて表示される特別図柄は、「0」〜「9」を示す数字や「−」を示す記号等から構成されるものに限定されず、例えば7セグメントのLEDにおいて点灯させるものと消灯させるものとの組合せを異ならせた複数種類の点灯パターンが、複数種類の特別図柄として予め設定されていればよい。複数種類の特別図柄には、それぞれに対応した図柄番号が付されている。一例として、「0」〜「9」を示す数字それぞれには、「0」〜「9」の図柄番号が付され、「−」を示す記号には、「10」の図柄番号が付されていればよい。以下では、第1特別図柄表示装置4Aにより可変表示される特別図柄を「第1特図」ともいい、第2特別図柄表示装置4Bにより可変表示される特別図柄を「第2特図」ともいう。
第1特別図柄表示装置4Aと第2特別図柄表示装置4Bの上方には、第1保留表示器25Aと、第2保留表示器25Bとが設けられている。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、特図ゲームにおける可変表示の保留記憶数(特図保留記憶数)を特定可能に表示(特図保留記憶表示)する。一例として、第1保留表示器25Aは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームにおける可変表示の保留記憶数(第1特図保留記憶数)を特定可能に表示する。第2保留表示器25Bは、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームにおける可変表示の保留記憶数(第2特図保留記憶数)を特定可能に表示する。特図ゲームにおける可変表示の保留記憶は、普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)して始動入賞したときに発生する。すなわち、特図ゲームや飾り図柄の可変表示といった可変表示ゲームを実行するための始動条件(「実行条件」ともいう)は成立したが、先に成立した開始条件に基づく可変表示ゲームが実行中であることや、パチンコ遊技機1における遊技状態が大当り遊技状態あるいは小当り遊技状態に制御されていることなどにより、可変表示ゲームを開始するための開始条件が成立していないときに、成立した始動条件に対応する可変表示の保留記憶が行われる。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、例えば第1特図保留記憶数と第2特図保留記憶数のそれぞれにおける上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されていればよい。
遊技盤2の所定位置(図1に示す例では、遊技領域の左側方)には、普通図柄表示器20が設けられている。一例として、普通図柄表示器20は、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bと同様に7セグメントやドットマトリクスのLED等から構成され、特別図柄とは異なる複数種類の識別情報である普通図柄(「普図」あるいは「普通図」ともいう)を変動可能に表示(可変表示)する。このような普通図柄の可変表示は、普図ゲーム(「普通図ゲーム」ともいう)と称される。普通図柄表示器20は、例えば「0」〜「9」を示す数字や「−」を示す記号等から構成される複数種類の普通図柄を可変表示する。複数種類の普通図柄には、それぞれに対応した図柄番号が付されている。一例として、「0」〜「9」を示す数字それぞれには、「0」〜「9」の図柄番号が付され、「−」を示す記号には、「10」の図柄番号が付されていればよい。なお、普通図柄表示器20は、「0」〜「9」を示す数字や「−」を示す記号等を普通図柄として可変表示するものに限定されず、例えば「○」と「×」とを示す装飾ランプ(又はLED)を交互に点灯させることや、「左」、「中」、「右」といった複数の装飾ランプ(又はLED)を所定順序で点灯させることにより、普通図柄を可変表示するものであってもよい。
普通図柄表示器20の上方には、普図保留表示器25Cが設けられている。普図保留表示器25Cは、普図ゲームにおける可変表示の保留記憶数(普図保留記憶数)を特定可能に表示(普図保留記憶表示)する。ここで、普図ゲームにおける可変表示の保留記憶は、遊技領域に設けられた通過ゲート41を遊技球が通過したときに発生する。すなわち、普図ゲームの可変表示を実行するための条件は成立したが、普図ゲームを開始するための条件が成立していないときに、普図ゲームの保留記憶が行われる。普図保留表示器25Cは、例えば普図保留記憶数の上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されていればよい。
遊技盤2における遊技領域の中央付近には、画像表示装置5が設けられている。画像表示装置5は、例えば液晶表示装置(LCD:Liquid Crystal Display)等から構成され、各種の演出画像を表示する表示領域を形成している。画像表示装置5の表示領域では、特図ゲームにおける第1特別図柄表示装置4Aによる第1特図の可変表示や第2特別図柄表示装置4Bによる第2特図の可変表示のそれぞれに対応して、例えば3つといった複数に分割された可変表示部となる飾り図柄表示部にて、各々が識別可能な複数種類の識別情報(装飾識別情報)である飾り図柄を可変表示する。
一例として、画像表示装置5の表示領域には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rが配置されている。そして、特図ゲームにおいて、第1特別図柄表示装置4Aによる第1特図の可変表示と、第2特別図柄表示装置4Bによる第2特図の可変表示とのうち、いずれかの可変表示が開始されることに対応して、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部において飾り図柄の可変表示(例えば上下方向あるいは左右方向のスクロール表示など)が開始される。その後、特図ゲームにおける可変表示結果として確定特別図柄が停止表示(完全停止表示)されるときに、画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて、飾り図柄の可変表示結果となる確定飾り図柄(最終停止図柄)が停止表示(完全停止表示)される。なお、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rは、画像表示装置5の表示領域内で移動可能とされ、飾り図柄を縮小あるいは拡大して表示することができるようにしてもよい。特別図柄や飾り図柄が完全停止表示されたときには、各図柄の可変表示における表示結果が確定的に表示され、それ以後は今回の可変表示が進行しないことを遊技者が認識できる表示状態となる。これに対して、飾り図柄の可変表示を開始してから可変表示結果となる確定飾り図柄が完全停止表示されるまでの可変表示中には、飾り図柄の変動速度が「0」となって、飾り図柄が停留して表示され、例えば微少な揺れや伸縮などを生じさせる表示状態となることがある。このような表示状態は、仮停止表示ともいい、可変表示における表示結果が確定的に表示されていないものの、スクロール表示や更新表示による飾り図柄の変動が進行していないことを遊技者が認識可能となる。なお、仮停止表示には、微少な揺れや伸縮なども生じさせず、所定時間(例えば1秒間)よりも短い時間だけ、飾り図柄を完全停止表示することなどが含まれてもよい。完全停止表示や仮停止表示のように、特別図柄や飾り図柄の変動が進行していないことを遊技者が認識できる程度に表示図柄を停止表示することは、導出表示ともいう。
「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される飾り図柄には、例えば8種類の図柄(英数字「1」〜「8」あるいは漢数字「一」〜「八」、英文字「A」〜「H」、所定のモチーフに関連する8個のキャラクタを示す演出画像、数字や文字あるいは記号とキャラクタとを組み合わせた演出画像など。なお、キャラクタを示す演出画像は、例えば人物や動物、これら以外の物体、もしくは、文字などの記号、あるいは、その他の任意の図形を示す画像であればよい。)が含まれていればよい。また、こうした8種類の飾り図柄の他に、ブランク図柄(大当り組合せを構成しない図柄)が含まれていてもよい。飾り図柄のそれぞれには、対応する図柄番号が付されている。例えば、「1」〜「8」を示す英数字それぞれに対して、「1」〜「8」の図柄番号が付されている。なお、可変表示される飾り図柄の種類数は、8種類のものに限定されず、任意の複数種類からなる飾り図柄であればよい。
飾り図柄の変動中には、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおいて、例えば図柄番号が小さいものから大きいものへと順次に、上方から下方へ、あるいは、右側から左側へと、流れるようなスクロール表示が行われる。そして、図柄番号が最大(例えば「8」)である飾り図柄が表示されると、続いて図柄番号が最小(例えば「1」)である飾り図柄が表示される。あるいは、飾り図柄表示部5L、5C、5Rのうち少なくともいずれか1つ(例えば「左」の飾り図柄表示部5Lなど)において、図柄番号が大きいものから小さいものへとスクロール表示を行って、図柄番号が最小である飾り図柄が表示されると、続いて図柄番号が最大である飾り図柄が表示されるようにしてもよい。
画像表示装置5の表示領域には、始動入賞記憶表示エリア5Hが配置されている。始動入賞記憶表示エリア5Hでは、特図ゲームに対応した可変表示の保留数(特図保留記憶数)を特定可能に表示する保留記憶表示が行われる。ここで、特図ゲームに対応した可変表示の保留は、普通入賞球装置6Aが形成する第1始動入賞口や、普通可変入賞球装置6Bが形成する第2始動入賞口を、遊技球が通過(進入)することによる始動入賞に基づいて発生する。すなわち、特図ゲームや飾り図柄の可変表示といった可変表示ゲームを実行するための始動条件(「実行条件」ともいう)は成立したが、先に成立した開始条件に基づく可変表示ゲームが実行中であることやパチンコ遊技機1が大当り遊技状態や小当り遊技状態に制御されていることなどにより、可変表示ゲームの開始を許容する開始条件は成立していないときに、成立した始動条件に対応する可変表示の保留が行われる。
一例として、始動入賞記憶表示エリア5Hには、第1始動入賞口と第2始動入賞口のそれぞれに対応して、始動入賞の発生に基づき先に始動条件が成立した可変表示ゲームから順に左から右へと、表示色が変更される複数の表示部位が設けられている。そして、第1始動入賞口を遊技球が通過(進入)したことに基づき第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームの始動条件(第1始動条件)が成立したときには、通常非表示(透過色)となっている表示部位のうちの1つ(例えば非表示となっている第1始動入賞口に対応した表示部位のうち左端の表示部位)を青色表示に変化させる。また、第2始動入賞口を遊技球が通過(進入)したことに基づき第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームの始動条件(第2始動条件)が成立したときには、通常非表示となっている表示部位のうちの1つ(例えば非表示となっている第2始動入賞口に対応した表示領域のうち左端の表示部位)を赤色表示に変化させる。その後、第1特図を用いた特図ゲームの開始条件(第1開始条件)が成立したときには、例えば第1始動入賞口に対応した表示部位のうちの1つ(例えば青色表示となっている表示部位のうち右端の表示部位)を非表示に戻す。また、第2特図を用いた特図ゲームの開始条件(第2開始条件)が成立したときには、例えば第2始動入賞口に対応した表示部位のうちの1つ(例えば赤色表示となっている表示部位のうち右端の表示部位)を非表示に戻す。
なお、始動入賞記憶表示エリア5Hでは、特図保留記憶数を示す数字を表示することなどにより、特図保留記憶数を遊技者等が認識できるようにしてもよい。始動入賞記憶表示エリア5Hとともに、あるいは始動入賞記憶表示エリア5Hに代えて、特図保留記憶数を表示する表示器を設けるようにしてもよい。図1に示す例では、始動入賞記憶表示エリア5Hとともに、第1特別図柄表示装置4A及び第2特別図柄表示装置4Bの上部に、特図保留記憶数を特定可能に表示するための第1保留表示器25Aと第2保留表示器25Bとが設けられている。第1保留表示器25Aは、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した有効始動入賞球数としての第1特図保留記憶数を特定可能に表示する。第2保留表示器25Bは、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した有効始動入賞球数としての第2特図保留記憶数を特定可能に表示する。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、例えば第1特図保留記憶数と第2特図保留記憶数のそれぞれにおける上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されている。
こうして、第1始動条件や第2始動条件が成立したものの、先に開始された特図ゲームが実行中であることや、パチンコ遊技機1が大当り遊技状態や小当り遊技状態に制御されていることなどにより、特図ゲームを開始するための開始条件が成立しないときには、特図ゲームに対応した可変表示の保留が発生する。例えば、第1始動条件が成立したときに、当該第1始動条件の成立に基づく第1特図を用いた特図ゲームを開始するための第1開始条件が成立しなければ、第1特図保留記憶数が1加算(インクリメント)され、第1特図を用いた特図ゲームの実行が保留される。また、第2始動条件が成立したときに、当該第2始動条件の成立に基づく第2特図を用いた特図ゲームを開始するための第2開始条件が成立しなければ、第2特図保留記憶数が1加算(インクリメント)され、第2特図を用いた特図ゲームの実行が保留される。これに対して、第1特図を用いた特図ゲームの実行が開始されるときには、第1特図保留記憶数が1減算(デクリメント)され、第2特図を用いた特図ゲームの実行が開始されるときには、第2特図保留記憶数が1減算(デクリメント)される。
第1特図保留記憶数と第2特図保留記憶数とを加算した可変表示の保留記憶数は、特に、合計保留記憶数ともいう。単に「特図保留記憶数」というときには、通常、第1特図保留記憶数、第2特図保留記憶数及び合計保留記憶数のいずれも含む概念を指すが、特に、これらの一部(例えば第1特図保留記憶数と第2特図保留記憶数を含む一方で合計保留記憶数は除く概念)を指すこともあるものとする。
画像表示装置5の表示領域には、飾り図柄とは異なる識別情報としての色図柄を可変表示する色図柄表示部が設けられていてもよい。一例として、色図柄表示部には、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームが開始されるときに、色図柄の変動(例えば表示色の更新表示)が開始される「左」の色図柄表示部と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが開始されるときに、色図柄の変動が開始される「右」の色図柄表示部とが含まれていればよい。そして、特図ゲームにおいて可変表示結果となる確定特別図柄が完全停止表示されるときには、色図柄の変動が終了して、色図柄の可変表示結果となる確定色図柄が完全停止表示される。「左」及び「右」の色図柄表示部にて可変表示される色図柄には、例えば5種類の図柄(「黄色」、「緑色」、「赤色」、「青色」、「紫色」など)といった、複数種類の色図柄が含まれていればよい。色図柄のそれぞれには、対応する図柄番号が付されている。一例として、「黄色」、「緑色」、「赤色」、「青色」、「紫色」の色図柄それぞれに対して、「1」〜「5」の図柄番号が付されていればよい。そして、例えば特別図柄の可変表示結果(特図表示結果)が「ハズレ」である場合には色図柄の可変表示結果として「黄色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「非確変」である場合には色図柄の可変表示結果として「緑色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「確変」である場合には色図柄の可変表示結果として「赤色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「突確」である場合には色図柄の可変表示結果として「青色」の確定色図柄が停止表示され、特図表示結果が「小当り」である場合には色図柄の可変表示結果として「紫色」の確定色図柄が停止表示されればよい。
画像表示装置5の下方には、普通入賞球装置6Aと、普通可変入賞球装置6Bとが設けられている。普通入賞球装置6Aは、例えば所定の玉受部材によって常に一定の開放状態に保たれる第1始動入賞口を形成する。普通可変入賞球装置6Bは、図2に示す普通電動役物用のソレノイド81によって垂直位置となる通常開放状態と傾動位置となる拡大開放状態とに変化する一対の可動翼片を有する電動チューリップ型役物(普通電動役物)を備え、第2始動入賞口を形成する。一例として、普通可変入賞球装置6Bでは、普通電動役物用のソレノイド81がオフ状態であるときに可動翼片が垂直位置となることにより、遊技球が第2始動入賞口に進入(通過)しにくい通常開放状態となる。その一方で、普通可変入賞球装置6Bでは、普通電動役物用のソレノイド81がオン状態であるときに可動翼片が傾動位置となることにより、遊技球が第2始動入賞口に進入(通過)しやすい拡大開放状態となる。なお、普通可変入賞球装置6Bは、通常開放状態であるときでも、第2始動入賞口には遊技球が進入(通過)可能であるものの、拡大開放状態であるときよりも遊技球が進入(通過)する可能性が低くなるように構成してもよい。あるいは、普通可変入賞球装置6Bは、通常開放状態において、例えば第2始動入賞口を閉鎖することなどにより、第2始動入賞口には遊技球が進入(通過)しないように構成してもよい。
一例として、普通可変入賞球装置6Bは、台板、左右一対の開閉羽根(開閉片)、前板、支持部材、入賞球誘導部材、伝達部材、連結アーム係止部材を備えていればよい。台板は、普通可変入賞球装置6Bの設置位置にて遊技盤2の前面側に配設される。左右一対の開閉羽根(開閉片)は、台板の前面側に回動自在に設けられる。前板は、開閉羽根の前面側に配設され、台板及び開閉羽根とともに第2始動入賞口を構成する。支持部材は、台板の後側(背面側)に配設され、普通可変入賞球装置6Bの本体の一部を構成する。入賞球誘導部材は、台板の上部に配設されて普通入賞球装置6Aと普通可変入賞球装置6Bを構成するとともに、普通入賞球装置6Aが形成する第1始動入賞口に進入(通過)した遊技球を遊技盤2の背面側に誘導する誘導路を構成する。伝達部材は、筒状に形成された支持部材の内部に収容された状態で回動自在に支持され、開閉羽根と普通電動役物用のソレノイド81とを連動させるように介在する。普通電動役物用のソレノイド81は、支持部材の後面上方位置に配設されていればよい。連結アーム係止部材は、ソレノイド81が有するプランジャの先端に取り付けられて、伝達部材の連結アームと連係する。
普通可変入賞球装置6Bが備える台板と前板、及び、支持部材は、普通可変入賞球装置6Bの本体を構成する部材であるとともに、台板及び支持部材は、開閉羽根、電気的駆動部としてのソレノイド81、及び、伝達部材を支持する支持機構を構成している。
左右一対の開閉羽根は、それぞれが略三角柱に形成されており、それぞれの基部となる下部後面所定箇所からは、羽根回動軸が後方に突設され、この羽根回動軸が台板に枢支されている。そして、この羽根回動軸を中心として、開閉羽根が垂直方向を向くことで第2始動入賞口を閉塞し、第2始動入賞口に遊技球が進入(通過)しない閉鎖状態(閉止状態ともいう)となる。また、開閉羽根が垂直方向から外向きに傾動することで第2始動入賞口を開放し、第2始動入賞口に遊技球が進入(通過)しやすい開放状態となる。
開閉羽根が閉鎖状態であるときの下端位置(基端)には突出片が突設されており、開閉羽根が開放状態となるときには、前板の背面における所定高さ位置に突設された規制片に開閉羽根の突出片が当接されることで、所定の開放位置で開閉羽根の回動が規制される。開閉羽根には、開放状態であるときに外側から中央に向けて若干下方に傾斜する平坦状の球受面が形成されている。開閉羽根が開放状態であるときには、開閉羽根の球受面上に落下した遊技球を中央に向けて誘導する。開閉羽根が閉鎖状態であるときには、左右の開閉羽根における互いの球受面が遊技球の直径よりも若干大きくなる幅寸法で離間して対向するように配置されている。
開閉羽根が開放状態であるときに球受面により中央に向けて誘導された遊技球は、左右の開閉羽根の間に形成された隙間に落下する。この遊技球は、前板の底板上面から上方に向けて立設された左右一対の球誘導リブにより背面側に向けて誘導され、台板に形成された開口である第2始動入賞口を通過して背面側の支持部材内に流入する。
左右の開閉羽根には、それぞれの背面における羽根回動軸から偏心した位置に、連係ピンが後方に突設されている。各連係ピンの先端は、台板を貫通して支持部材の内部まで延出されている。この連係ピンの先端は、伝達部材に連係され、伝達部材の回動に連動して開閉羽根が開閉するように構成されている。
支持部材は、伝達部材を内部に収容した状態で回動自在に支持する。また、支持部材は、普通電動役物用のソレノイド81におけるプランジャを収容する。さらに、支持部材は、第2始動入賞口を通過して内部に進入してきた遊技球を、背面側に設けられた第2始動口スイッチ22B(図2参照)に向けて誘導可能な大きさを有する筒状に形成されている。
支持部材の左右に配置される側壁には、伝達部材の回動軸(伝達部材回動軸)を回動自在に、かつ、前後方向(ソレノイド81のプランジャが進退する方向)へと移動自在に支持するための軸受長孔が形成されている。支持部材の側壁における軸受長孔の上方には、伝達部材の案内ピンを移動案内する移動案内部となる案内溝が形成されている。この案内溝は、軸受長孔を中心とした円弧状に形成される円弧溝部(第1案内部)と、この円弧溝部の前端から前方に向けて連設される直線状の直線溝部(第2案内部)とを備えている。
支持部材に形成された案内溝の円弧溝部は、支持部材の後端面から前方に向けて切欠形成されている。円弧溝部の上円弧面(湾曲面)は、伝達部材回動軸が軸受長孔の後端であるソレノイド81側に位置しているときに、伝達部材の案内ピンを中心とした円周の約1/4をなす円弧状に形成されている。また、円弧溝部の下円弧面(湾曲面)は、伝達部材の案内ピンが直線溝部の下直線面から乗り上げ可能な緩やかな上向き湾曲面をなし、後側に向かうに従い上円弧面との離間幅が漸次広がるように形成されている。
支持部材に形成された案内溝の直線溝部には、上直線面と下直線面と前端面とが形成されている。直線溝部の上直線面は、円弧溝部の上円弧面の前端から連設されるとともに、前方に向けて略水平(ソレノイド81のプランジャにおける軸心方向)に延設され、伝達部材の案内ピンにおける上方移動を規制する。直線溝部の下直線面は、円弧溝部の下円弧面の前端から連設されるとともに、前方に向けて略水平に延設されている。直線溝部の前端面は、上直線面と下直線面とを連結するような円弧状に形成され、伝達部材の案内ピンにおける前方移動を規制する。こうした直線溝部は、伝達部材回動軸が軸受長孔の後端(回動位置)に位置しているときに、伝達部材の案内ピンを収容して上直線面により回動方向への移動を当接により規制可能であり、伝達部材回動軸が軸受長孔の前端(規制位置)に位置しているときに、上直線面による当接規制が解除されて回転方向への移動が許容される程度の長さに形成されている。
支持部材に形成された案内溝の直線溝部は、軸受長孔と平行をなすように形成されている。また、支持部材の側壁にて内面における軸受長孔の後端からは、収容凹部の後端面にかけて凹溝が後向きに凹設されており、伝達部材回動軸を支持部材の背面側から押し込んで軸受長孔内に枢支できるようになっている。
伝達部材は、左右の連係アームと、これら左右の連係アームにおける上部間を連結する連結部材としての連結アームとを備えている。左側の連係アームは、左側の開閉羽根に連係し、右側の連係アームは、右側の開閉羽根に連係する。左右の連係アームはそれぞれ、所定長に形成されたアーム部と、アーム部の基端側にて外面から外向きに突設される伝達部材回動軸と、アーム部の先端に連設されて開閉羽根の連係ピンにおける先端に係止する側面視略C字形の連係ピン係止部とを備えている。連係ピン係止部は、開閉羽根に形成された連係ピンを遊挿可能に形成された上係止片及び下係止片を備え、羽根回動軸を中心として回動する開閉羽根に連動して、この羽根回動軸を中心とした円弧に沿って昇降する開閉羽根の連係ピンが左右方向に移動するのを許容可能な左右幅寸法を有している。このように、連係ピン係止部は、開閉羽根連係部を構成している。
伝達部材の連結アームは、左右の連係アーム間に架設される左右方向(ソレノイド81のプランジャにおける軸心方向と直交する方向)を向く棒状部材で構成されており、その両端が、左右の連係アームにおけるアーム部の前後方向の中央位置上部(連係ピン係止部と伝達部材回動軸との間の上部)に連結されている。この連結アームの左右両端には、支持部材に形成された案内溝内に摺動自在に嵌合される案内ピンが外向きに突設されている。この案内ピンは、伝達部材の回動中心となる伝達部材回動軸から偏心した偏心位置に配置されており、連係アームにおけるアーム部の先端に連設された連係ピン係止部の移動案内を行う。伝達部材の連結アームには、ソレノイド81のプランジャが上方に配設された状態で、このプランジャの先端に取り付けられて下向き二股状に形成された連結アーム係止部材が係止(連係)される。このように、伝達部材の連結アームは、ソレノイド連係部を構成している。
伝達部材は、伝達部材回動軸が支持部材の軸受長孔における後端(回動位置)に位置しているときには、開閉羽根を閉鎖状態(閉止状態)とする閉止姿勢と、開閉羽根を開放状態とする開放姿勢との間で、回動自在に軸支されている。すなわち、伝達部材は、伝達部材回動軸が軸受長孔の後端(回動位置)に位置しているときには、開閉羽根を開放状態から閉鎖状態に向けて回転させる第1方向と、開閉羽根を閉鎖位置から開放状態に向けて回転させる第2方向とに回動することができる。また、伝達部材回動軸が支持部材の軸受長孔における前端(規制位置)となる開閉羽根側に位置しているときには、第1方向及び第2方向への回転が連結アームの左右両端に突設された案内ピンと支持部材の案内溝における上直線面及び下直線面とにより規制され、前後方向(ソレノイド81のプランジャが進退する方向)へのみ移動可能に支持される。
連結アーム係止部材は、ソレノイド81のプランジャにおける先端に取り付けられる取付部と、この取付部の下部左右側からそれぞれ下方に垂設される左右一対の係止部とを備えている。左右の係止部は、それぞれ所定長を有して上下方向を向く前係止片及び後係止片と、これらの前係止片及び後係止片の間に伝達部材の連結アームを遊嵌可能な前後幅を有する係止凹部とを備えている。係止凹部は、伝達部材の連結アームの昇降を許容可能な上下幅を有している。そして、ソレノイド81のプランジャにおける前後移動に応じて、伝達部材回動軸を中心として回動する伝達部材の連結アームが前後移動及び昇降自在に係止される。
普通電動役物用のソレノイド81は、本体部と、この本体部に対して進退自在に嵌合されたプランジャと、ソレノイド81の非励磁状態(オフ状態)において、プランジャを突出位置に付勢するコイルバネとを備えている。ソレノイド81が励磁状態(オン状態)であるときには、プランジャがコイルバネの付勢力に抗して後退位置に移動する。
開閉羽根と伝達部材の間は、開閉羽根の連係ピンが伝達部材の連係ピン係止部における上下の係止部間に遊嵌されることにより連係される。伝達部材とソレノイド81の間は、伝達部材の連結アームがソレノイド81のプランジャにおける先端に取り付けられた連結アーム係止部材における前後の係止片間に形成された係止凹部内に遊嵌されることにより連係される。したがって、ソレノイド81が励磁及び消磁されることでプランジャが前後方向に移動して、開閉羽根に対して進退移動することで、その進退移動力が連結アーム係止部材から連結アームを介して伝達部材に伝達され、伝達部材がプランジャに対して略直交する方向を向く伝達部材回動軸を中心として前後方向に回動する。この伝達部材の回動力が連係ピン係止部から連係ピンを介して開閉羽根に伝達され、開閉羽根がプランジャと平行の前後方向を向く羽根回動軸の周りに回動する。
伝達部材では、左右の連係アームにおける上部間に架設された連結アームがソレノイド81のプランジャに係止(連係)されており、単一のプランジャによる進退移動力を連結アームと左右の連係アームを介して左右の開閉羽根に伝達して回動させる。これにより、伝達機構の構造が簡素化され、また、左右の開閉羽根を共通のソレノイド81にて駆動するので、左右の開閉羽根を互いに同期して回動させることができる。また、伝達部材が備える左右の連係アームと上部の連結アームと、支持部材の底板とにより囲まれた空間を遊技球の誘導路として構成できるので、装置を極力コンパクト化できる。さらに、伝達部材とソレノイド81が筒状に形成された支持部材の内部に収容されることで、伝達部材やソレノイド81のプランジャ等を外部から強制的に可動させることなどが困難になり、不正行為が効果的に防止される。
ソレノイド81が励磁状態(オン状態)から非励磁状態(オフ状態)になる励磁解除動作(第1動作)が行われるときには、プランジャがコイルバネの付勢力によって後退位置から突出位置に向けて前方に移動する。このとき、伝達部材では、連結アームの後端が連結アーム係止部材の後係止片における前面により前方の開閉羽根に向けて付勢される。そして、伝達部材の案内ピンも前方に向けて付勢されるが、支持部材における案内溝の円弧溝部における上円弧面により、前方とともに下方に向けて摺接案内される。伝達部材回動軸は、支持部材における軸受長孔の後端(回動位置)に保持されており、伝達部材の連係アームが下方に向けて移動案内される。また、伝達部材の連結アームが連結アーム係止部材の後係止片における前面により前方に向けて付勢されることで、伝達部材が第1方向となる下方(連係アームの先端が下方に移動する方向)に向けて回転する。この伝達部材における第1方向への回転により、伝達部材の連係アームにおける連係ピン係止部の上係止片が開閉羽根の連係ピンを上方から係止して連係ピンを下降させる。これにより、開閉羽根が羽根回動軸を中心に回転して閉鎖状態となる。
さらに、プランジャがコイルバネの付勢力によって突出位置に向けて前方に移動すると、伝達部材の連結アームが連結アーム係止部材により前方に向けて付勢され、伝達部材の案内ピンは、支持部材における案内溝の直線溝部における上直線面及び下直線面により前方に向けて案内される。そして、伝達部材回動軸が支持部材における軸受長孔の前端(規制位置)に向けて案内される。こうして、伝達部材は、プランジャとともに前方に向けて水平にスライド移動する。その後、ソレノイド81が非励磁状態(オフ状態)に維持されていると、伝達部材の連係アームでは、連係ピン係止部がやや下向きとなる水平姿勢となり、開閉羽根の連係ピンが下限位置となり、開閉羽根が閉鎖状態に維持される。
ソレノイド81が非励磁状態(オフ状態)から励磁状態(オン状態)になる励磁動作(第2動作)が行われるときには、プランジャがコイルバネの付勢力に抗して突出位置から後退位置に向けて後方に移動する。このとき、伝達部材では、連結アームの前端が連結アーム係止部材の前係止片における背面により後方に向けて付勢される。そして、伝達部材の案内ピンが支持部材における案内溝の直線溝部における上直線面及び下直線面により後方に向けて案内される。伝達部材回動軸は、支持部材における軸受長孔の前端(規制位置)から後端(回動位置)に向けて案内される。こうして、伝達部材は、プランジャとともに後方に向けて水平にスライド移動する。この期間では、伝達部材が閉止姿勢のまま回動せずに後方に移動する。したがって、開閉羽根は閉鎖状態に維持されている。
そして、伝達部材回動軸が支持部材における軸受長孔の後端に達するとともに、伝達部材の案内ピンが支持部材における案内溝の直線溝部における後端位置、すなわち、円弧溝部の下端位置に達すると、直線溝部の上直線面による当接規制が解除される。こうして、伝達部材は上方に向けて回動可能な状態となる。
さらに、プランジャがコイルバネの付勢力に抗して後退位置に向けて後方に移動するときに、伝達部材回動軸は、支持部材における軸受長孔の後端(回動位置)で後方移動が規制される。そして、軸受長孔と案内溝の直線溝部とが互いに平行で、直線溝部が軸受長孔よりも上方に形成されていることで、伝達部材の案内ピンが上後方に向けて案内される。このとき、伝達部材の案内ピンは、支持部材における案内溝部の円弧溝部における下円弧面の前端に当接して乗り上げる。こうして、案内溝部の円弧溝部における下円弧面は、伝達部材の案内ピンを上後方に向けて確実に案内する。伝達部材の案内ピンは、支持部材における案内溝部の円弧溝部における下円弧面により、後方とともに上方に向けて摺接案内される。これにより、伝達部材の連係アームは、軸受長孔の後端に位置した伝達部材回動軸を中心として、上方に向けて移動案内される。また、伝達部材の連結アームが連結アーム係止部材の前係止片における背面により後方に向けて付勢されることで、伝達部材が第2方向となる上方(連係アームの先端が上方に移動する方向)に向けて回転する。この伝達部材における第2方向への回転により、伝達部材の連係アームにおける連係ピン係止部の下係止片が開閉羽根の連係ピンを下方から係止して連係ピンを上昇させる。これにより、開閉羽根が羽根回動軸を中心に回転して開放状態となる。
そして、プランジャが後退位置まで移動して、ソレノイド81が励磁状態(オン状態)に維持されていると、伝達部材の連係アームでは、連係ピン係止部が上向きとなる傾動姿勢となり、開閉羽根の連係ピンが上限位置となり、開閉羽根が開放状態に維持される。
ソレノイド81が非励磁状態(オフ状態)であるときに、例えば開閉羽根を強制的に開放させようとする応力が少なくとも一方の開閉羽根に加えられた場合、開閉羽根の連係ピンが下限位置から上昇して伝達部材における連係アームの上係止片に係止され、連係アームが伝達部材回動軸を中心に上方へと回転しようとする。このとき、伝達部材の案内ピンは支持部材に形成された案内溝にて直線溝部の前方に位置している。これにより、案内ピンの上方移動が案内溝の直線溝部における上直線面にて当接規制される。このように、伝達部材の上方への回転(第2方向への回転)が、伝達部材の案内ピンと、支持部材に形成された案内溝の直前溝部における上直線面との当接によって、規制される。したがって、伝達部材における連係アームの上係止片に係止された開閉羽根の連係ピンにおける上方移動も、上係止片によって当接規制される。こうして、開閉羽根を強制的に開放位置に向けて回転させようとする応力が加えられても、回転規制されている伝達部材により開閉羽根の連係ピンにおける上昇が規制されることで、閉鎖状態を維持して強制的に開放されることが防止できる。
普通入賞球装置6Aと普通可変入賞球装置6Bの下方には、特別可変入賞球装置7が設けられている。特別可変入賞球装置7は、図2に示す大入賞口扉用のソレノイド82によって開閉駆動される大入賞口扉を備え、その大入賞口扉によって開放状態(第1状態)と閉鎖状態(第2状態)とに変化する大入賞口を形成する。一例として、特別可変入賞球装置7では、大入賞口扉用のソレノイド82がオフ状態であるときに大入賞口扉が大入賞口を閉鎖状態にする。その一方で、特別可変入賞球装置7では、大入賞口扉用のソレノイド82がオン状態であるときに大入賞口扉が大入賞口を開放状態にする。特別可変入賞球装置7に形成された大入賞口に進入した遊技球は、例えば図2に示すカウントスイッチ23によって検出される。カウントスイッチ23によって遊技球が検出されたことに基づき、所定個数(例えば13個)の遊技球が賞球として払い出される。
遊技盤2の表面には、上記の構成以外にも、遊技球の流下方向や速度を変化させる風車及び多数の障害釘が設けられている。また、第1始動入賞口、第2始動入賞口及び大入賞口とは異なる入賞口として、例えば所定の玉受部材によって常に一定の開放状態に保たれる一般入賞口が1つ又は複数設けられてもよい。この場合には、一般入賞口のいずれかに進入した遊技球が所定の一般入賞球スイッチによって検出されたことに基づき、所定個数(例えば10個)の遊技球が賞球として払い出されればよい。遊技領域の最下方には、いずれの入賞口にも進入しなかった遊技球が取り込まれるアウト口が設けられている。遊技機用枠3の左右上部位置には、効果音等を再生出力するためのスピーカ8L、8Rが設けられており、さらに遊技領域周辺部には、遊技効果ランプ9が設けられている。パチンコ遊技機1の遊技領域における各構造物(例えば普通入賞球装置6A、普通可変入賞球装置6B、特別可変入賞球装置7等)の周囲には、装飾用LEDが配置されていてもよい。
遊技機用枠3の右下部位置には、遊技媒体としての遊技球を遊技領域に向けて発射するために遊技者等によって操作される打球操作ハンドルとなる操作ノブ30が設けられている。例えば、遊技者等による操作量(回転量)に応じて遊技球の弾発力を調整する。打球操作ハンドルには、打球発射装置が備える発射モータの駆動を停止させるための単発発射スイッチや、タッチリング(タッチセンサ)が設けられていればよい。遊技領域の下方における遊技機用枠3の所定位置には、賞球として払い出された遊技球や所定の球貸機により貸し出された遊技球を、打球発射装置へと供給可能に保持(貯留)する打球供給皿(上皿)が設けられている。打球供給皿の下方には、打球供給皿に収容不能となった遊技球を保持(貯留)する余剰球受皿(下皿)が設けられている。
例えば打球供給皿の上面における手前側の中央位置といった、パチンコ遊技機1の遊技機用枠3における所定位置には、押下操作などにより遊技者が所定の指示操作を可能な操作ボタンが設置されていてもよい。この操作ボタンは、押下可能であるとともに、回動可能なジョグダイアルになっていてもよい。なお、操作ボタンは、押下操作や回動操作が可能なものに限定されず、例えばタッチパネルのように接触操作や押圧操作が可能なものであってもよい。また、操作ボタン代えて、例えば赤外線センサやCCDセンサ、CMOSセンサのように、遊技者による所定の操作行為を検出できるセンサを用いてもよい。すなわち、操作ボタンは、遊技者による所定の操作行為を、機械的、電気的、あるいは、電磁的に、検出できるように構成されていればよい。操作ボタンに対する遊技者の指示操作は、所定の操作検出スイッチによって検出されればよい。
こうした操作ボタンに代えて、あるいは、操作ボタンとともに、例えば下皿を形成する部材において、下皿本体の上面における手前側の所定位置(例えば下皿の中央部分)などに、遊技者が把持して傾倒操作が可能なスティックコントローラが取り付けられてもよい。スティックコントローラは、遊技者が把持する操作桿を含み、操作桿の所定位置(例えば遊技者が操作桿を把持したときに操作手の人差し指が掛かる位置など)には、トリガボタンが設けられている。トリガボタンは、遊技者がスティックコントローラの操作桿を操作手(例えば左手など)で把持した状態において、所定の操作指(例えば人差し指など)で押引操作することなどにより所定の指示操作ができるように構成されていればよい。操作桿の内部には、トリガボタンに対する押引操作などによる所定の指示操作を検知するトリガセンサが内蔵されていればよい。スティックコントローラの下部における下皿の本体内部などには、操作桿に対する傾倒操作を検知する傾倒方向センサユニットが設けられていればよい。例えば、傾倒方向センサユニットは、パチンコ遊技機1と正対する遊技者の側からみて操作桿の中心位置よりも左側で遊技盤2の盤面と平行に配置された2つの透過形フォトセンサ(平行センサ対)と、この遊技者の側からみて操作桿の中心位置よりも右側で遊技盤2の盤面と垂直に配置された2つの透過形フォトセンサ(垂直センサ対)とを組み合わせた4つの透過形フォトセンサを含んで構成されていればよい。なお、下皿におけるスティックコントローラの取付位置は、下皿の中央部分に限定されず、左右のいずれかに寄せた位置であってもよい。
スティックコントローラと操作ボタンの取付位置は、上皿及び下皿の中央部分において上下の位置関係にあればよい。これに対して、上下の位置関係を保ったまま、スティックコントローラ及び操作ボタンの取付位置を、上皿及び下皿において左右のいずれかに寄せた位置としてもよい。あるいは、スティックコントローラと操作ボタンの取付位置が上下の位置関係にはなく、例えば左右の位置関係にあるものとしてもよい。
さらに、パチンコ遊技機1に隣接する所定位置には、プリペイドカード等を用いた球貸しを可能にするための処理が実行されるプリペイドカードユニット(カードユニット)が設置されてもよい。カードユニットは、プリペイドカードを取り込んで球貸しの処理を実行するだけでなく、会員カードや現金を取り込んで球貸しの処理を実行するものであってもよい。
普通図柄表示器20による普図ゲームは、遊技領域に設けられた通過ゲート41を通過した遊技球が図2に示すゲートスイッチ21によって検出されたことといった、普通図柄表示器20にて普通図柄の可変表示を実行するための普図始動条件が成立した後に、例えば前回の普図ゲームが終了したことといった、普通図柄の可変表示を開始するための普図開始条件が成立したことに基づいて、開始される。この普図ゲームでは、普通図柄の変動を開始させた後、所定の可変表示時間(普図変動時間)が経過すると、普通図柄の可変表示結果となる確定普通図柄を完全停止表示する。普通図柄の可変表示時間は、例えば各普図ゲームの開始時に、所定の乱数値を示す数値データを抽出することなどにより、複数種類の可変表示時間のうちで、いずれかに決定されればよい。普図ゲームにおける普通図柄の可変表示結果となる確定普通図柄として、例えば「7」を示す数字あるいは「○」を示す記号といった、特定の普通図柄(普図当り図柄)が停止表示されれば、普通図柄の可変表示結果が「普図当り」となる。その一方、確定普通図柄として、例えば「7」を示す数字以外の数字あるいは「×」を示す記号といった、普図当り図柄以外の普通図柄が停止表示されれば、普通図柄の可変表示結果が「普図ハズレ」となる。普通図柄の可変表示結果が「普図当り」となったことに対応して、普通可変入賞球装置6Bを構成する電動チューリップの可動翼片(左右一対の開閉羽根)が傾動位置(開放状態)となる拡大開放制御が行われ、所定時間が経過すると垂直位置(閉鎖状態)に戻る通常開放制御が行われる。
第1特別図柄表示装置4Aによる特図ゲームは、普通入賞球装置6Aに形成された第1始動入賞口に進入した遊技球が図2に示す第1始動口スイッチ22Aによって検出されたことなどにより第1始動条件が成立した後に第1開始条件が成立したことに基づいて、開始される。第1開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第1特図を用いた今回の特図ゲームが開始可能となることにより成立する。第2特別図柄表示装置4Bによる特図ゲームは、普通可変入賞球装置6Bに形成された第2始動入賞口に進入した遊技球が図2に示す第2始動口スイッチ22Bによって検出されたことなどにより第2始動条件が成立した後に第2開始条件が成立したことに基づいて、開始される。第2開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第2特図を用いた今回の特図ゲームが開始可能となることにより成立する。
第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームでは、特別図柄の可変表示を開始させた後、所定の可変表示時間(特図変動時間)が経過すると、特別図柄の可変表示結果となる確定特別図柄を完全停止表示する。特別図柄の可変表示時間は、各特図ゲームの開始時に、例えば図13に示すような変動パターン種別決定用の乱数値MR3を示す数値データや、変動パターン決定用の乱数値MR4を示す数値データなどに基づいて決定された変動パターンに対応して、複数種類の可変表示時間のうちで、いずれかに決定される。特図ゲームにおける特別図柄の可変表示結果は、特図表示結果ともいう。特図ゲームにおける特別図柄の可変表示結果となる確定特別図柄として、特定の特別図柄(大当り図柄)が停止表示されれば、特定表示結果としての「大当り」となり、大当り図柄とは異なる所定の特別図柄(小当り図柄)が停止表示されれば、所定表示結果としての「小当り」となり、大当り図柄や小当り図柄以外の特別図柄(ハズレ図柄)が停止表示されれば、非特定表示結果としての「ハズレ」となる。特図ゲームでの可変表示結果が「大当り」になった後には、特定遊技状態としての大当り遊技状態に制御される。また、特図ゲームでの可変表示結果が「小当り」になった後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この実施の形態におけるパチンコ遊技機1では、一例として、「1」、「3」、「7」を示す数字を大当り図柄とし、「5」を示す数字を小当り図柄とし、「−」を示す記号をハズレ図柄としている。なお、第1特別図柄表示装置4Aによる特図ゲームにおける大当り図柄や小当り図柄、ハズレ図柄といった各図柄は、第2特別図柄表示装置4Bによる特図ゲームにおける各図柄とは異なる特別図柄となるようにしてもよいし、双方の特図ゲームにおいて共通の特別図柄が大当り図柄や小当り図柄、ハズレ図柄となるようにしてもよい。
この実施の形態では、大当り図柄となる「1」、「3」、「7」の数字を示す特別図柄のうち、「3」、「7」の数字を示す特別図柄を15ラウンド大当り図柄とし、「1」の数字を示す特別図柄を2ラウンド大当り図柄とする。特図ゲームにおける確定特別図柄として15ラウンド大当り図柄が停止表示された後に制御される第1特定遊技状態としての大当り遊技状態(15ラウンド大当り状態)では、特別可変入賞球装置7の開閉板が、第1期間となる所定期間(例えば29秒間)あるいは所定個数(例えば9個)の入賞球が発生するまでの期間にて大入賞口を開放状態とすることにより、特別可変入賞球装置7を遊技者にとって有利な第1状態に変化させるラウンドが実行される。こうしてラウンド中に大入賞口を開放状態とした開閉板は、遊技盤2の表面を落下する遊技球を受け止め、その後に大入賞口を閉鎖状態とすることにより、特別可変入賞球装置7を遊技者にとって不利な第2状態に変化させて、1回のラウンドを終了させる。15ラウンド大当り状態では、大入賞口の開放サイクルであるラウンドの実行回数が、第1回数(例えば「15」)となる。ラウンドの実行回数が「15」となる15ラウンド大当り状態における遊技は、15回開放遊技とも称される。
特図ゲームにおける確定特別図柄として2ラウンド大当り図柄が停止表示された後に制御される第2特定遊技状態としての大当り遊技状態(2ラウンド大当り状態)では、各ラウンドで特別可変入賞球装置7を遊技者にとって有利な第1状態に変化させる期間(開閉板により大入賞口を開放状態とする期間)が、15ラウンド大当り状態における第1期間よりも短い第2期間(例えば0.5秒間)となる。また、2ラウンド大当り状態では、ラウンドの実行回数が、15ラウンド大当り状態における第1回数よりも少ない第2回数(例えば「2」)となる。なお、2ラウンド大当り状態では、各ラウンドで大入賞口を開放状態とする期間が第2期間となることと、ラウンドの実行回数が第2回数となることのうち、少なくともいずれか一方が行われるように制御されればよく、それ以外の制御は15ラウンド大当り状態と同様に行われるようにしてもよい。ラウンドの実行回数が「2」となる2ラウンド大当り状態における遊技は、2回開放遊技とも称される。なお、2ラウンド大当り状態では、各ラウンドで特別可変入賞球装置7とは別個に設けられた所定の入賞球装置を、遊技者にとって不利な第2状態から遊技者にとって有利な第1状態に変化させ、所定期間(第1期間又は第2期間)が経過した後に第2状態へと戻すようにしてもよい。
また、15ラウンド大当り図柄となる「3」、「7」の数字を示す特別図柄のうち、「3」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく15ラウンド大当り状態が終了した後には、特別遊技状態の1つとして、通常状態に比べて特図ゲームにおける特別図柄の変動時間(特図変動時間)が短縮される時間短縮制御(時短制御)が行われる時短状態に制御される。ここで、通常状態とは、大当り遊技状態等の特定遊技状態や時短状態等の特別遊技状態以外の遊技状態のことであり、パチンコ遊技機1の初期設定状態(例えばシステムリセットが行われた場合のように、電源投入後に初期化処理を実行した状態)と同一の制御が行われる。時短状態は、所定回数(例えば100回)の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了すればよい。なお、特図ゲームにおける確定特別図柄として15ラウンド大当り図柄のうち「3」の数字を示す特別図柄が停止表示されたことに基づく15ラウンド大当り状態が終了した後には、時短状態とはならずに通常状態となるようにしてもよい。こうした「3」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に時短状態や通常状態に制御される15ラウンド大当り図柄は、非確変大当り図柄(「通常大当り図柄」ともいう)と称される。特図ゲームにおける確定特別図柄が非確変大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「非確変」(「通常」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。
15ラウンド大当り図柄となる「3」、「7」の数字を示す特別図柄のうち、「7」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく15ラウンド大当り状態が終了した後や、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく2ラウンド大当り状態が終了した後には、時短状態とは異なる特別遊技状態の1つとして、例えば通常状態に比べて特図変動時間が短縮される時間短縮制御とともに、継続して確率変動制御(確変制御)が行われる確変状態(高確率遊技状態)に制御される。この確変状態では、各特図ゲームや飾り図柄の可変表示において、可変表示結果が「大当り」となって更に大当り遊技状態に制御される確率が、通常状態よりも高くなるように向上する。このような確変状態は、特図ゲームの実行回数に関わりなく、次に可変表示結果が「大当り」となるまで継続してもよい。これに対して、確変状態となった後に、所定回数(例えば100回)の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了するようにしてもよい。また、確変状態において所定回数の特図ゲームが実行されたり可変表示結果が「大当り」となる以前であっても、特図ゲームが開始されるときに、所定の割合で確変状態が終了することがあるようにしてもよい。確変状態における時間短縮制御は、時短状態の場合と同様に、所定回数(例えば100回)の特図ゲームが実行されたときに、終了してもよい。あるいは、確変状態における時間短縮制御は、特図ゲームの実行回数にかかわりなく、次に可変表示結果が「大当り」となるまで継続してもよい。
「7」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される15ラウンド大当り図柄は、確変大当り図柄と称される。特図ゲームにおける確定特別図柄が確変大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「確変」(「確変大当り」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。「1」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される2ラウンド大当り図柄は、突確大当り図柄と称される。特図ゲームにおける確定特別図柄が突確大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」(「突確大当り」あるいは「突然確変大当り」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。
このように、特図ゲームにおける確定特別図柄として15ラウンド大当り図柄が停止表示(導出表示)されたときには、15ラウンド大当り状態に制御されて所定回数(具体的には15回)のラウンドが実行可能となり、遊技者が多数の賞球を容易に獲得することができるという、遊技者にとって有利な遊技価値が付与される。また、可変表示結果が「大当り」で大当り種別が「確変」となったときには、15ラウンド大当り状態が終了した後に、遊技状態が確変状態となり、短時間のうちに可変表示結果が「大当り」になるという、遊技者にとって有利な遊技価値が付与される。特図ゲームにおける確定特別図柄として2ラウンド大当り図柄が停止表示(導出表示)されたときには、2ラウンド大当り状態に制御されて所定回数(具体的には2回)のラウンドが実行可能にはなるものの、ラウンドの実行回数が比較的に少ないことや、大入賞口の開放期間が比較的に短いことにより、遊技者が賞球を獲得することは困難である。その一方で、2ラウンド大当り状態が終了した後には、遊技状態が確変状態となり、短時間のうちに可変表示結果が「大当り」になるという、遊技者にとって有利な遊技価値が付与される。
確変状態や時短状態にて時間短縮制御が行われるときには、普通図柄表示器20による普図ゲームにおける普通図柄の可変表示時間(普図変動時間)を通常状態のときよりも短くする制御や、各回の普図ゲームで普通図柄の可変表示結果が「普図当り」となる確率を通常状態のときよりも向上させる制御、可変表示結果が「普図当り」となったことに基づく普通可変入賞球装置6Bにおける可動翼片(開閉羽根)の傾動時間(開放時間)を通常状態のときよりも長くする制御、その傾動回数(開放回数)を通常状態のときよりも増加させる制御といった、第2始動入賞口に遊技球が進入する可能性を高めて第2始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われる。なお、これらの制御のいずれか1つが行われるようにしてもよいし、複数の制御が組み合わせられて行われるようにしてもよい。このように、確変状態や時短状態における時間短縮制御とともに、遊技球が第2始動入賞口に進入しやすくして遊技者にとって有利となる制御は、高開放制御ともいう。高開放制御が行われることにより、第2始動入賞口は、高開放制御が行われていないときよりも拡大開放状態となる頻度が高められる。これにより、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームを実行するための第2始動条件が成立しやすくなり、特図ゲームが頻繁に実行可能となることで、次に可変表示結果が「大当り」となるまでの時間が短縮される。したがって、高開放制御が行われることにより、通常状態に比べて大当り遊技状態となりやすくなる。高開放制御が実行可能となる期間は、高開放制御期間ともいい、この期間は、パチンコ遊技機1における遊技状態が確変状態と時短状態のいずれかであるときに時間短縮制御が行われている期間と同一であればよい。
高開放制御期間であるときには、遊技状態が高ベース中であるともいう。これに対して、高開放制御期間でないときには、遊技状態が低ベース中であるともいう。この実施の形態における時短状態は、低確高ベース状態とも称される遊技状態であり、通常状態は、低確低ベース状態とも称される遊技状態である。また、確変状態において、高開放制御が行われる高開放制御期間であるときは、高確高ベース状態とも称される遊技状態であり、高開放制御期間でないときは、高確低ベース状態とも称される遊技状態である。
特図ゲームにおける確定特別図柄として小当り図柄が停止表示された後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この小当り遊技状態では、2ラウンド大当り状態と同様に特別可変入賞装置7を遊技者にとって有利な第1状態に変化させる可変入賞動作が行われる。すなわち、小当り遊技状態では、例えば特別可変入賞球装置7が備える開閉板により大入賞口を第2期間にわたり開放状態とする動作が、第2回数に達するまで繰り返し実行される。なお、小当り遊技状態では、2ラウンド大当り状態と同様に、大入賞口を開放状態とする期間が第2期間となることと、大入賞口を開放状態とする動作の実行回数が第2回数となることのうち、少なくともいずれか一方が行われるように制御されればよい。小当り遊技状態が終了した後には、遊技状態の変更が行われず、可変表示結果が「小当り」となる以前の遊技状態に継続して制御されることになる。ただし、可変表示結果が「小当り」となる可変表示ゲームに対応して、時短状態を終了する旨の判定がなされた場合には、小当り遊技状態の終了後に、通常状態へと制御されることになる。可変入賞動作により大入賞口を開放状態とする回数が「2」である小当り遊技状態における遊技は、2ラウンド大当り状態における遊技と同様に、2回開放遊技とも称される。なお、2ラウンド大当り状態における各ラウンドで特別可変入賞球装置7とは別個に設けられた入賞球装置を第1状態に変化させる場合には、小当り遊技状態でも、2ラウンド大当り状態と同様の態様で、その入賞球装置を第1状態に変化させるようにすればよい。
画像表示装置5の表示領域では、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特別図柄の可変表示に対応して、飾り図柄の可変表示が行われる。すなわち、画像表示装置5の表示領域では、第1開始条件と第2開始条件のいずれか一方が成立したことに基づいて、例えば「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄の加速表示(全図柄加速表示)を行い、所定速度に達すれば、飾り図柄の定速表示(全図柄定速表示)を行う。こうした全図柄加速表示や全図柄定速表示は、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて飾り図柄を可変表示する全図柄変動に含まれる。こうした全図柄変動の後、例えば「左」→「右」→「中」といった所定順序で飾り図柄の減速表示(各図柄減速表示)を行い、変動速度が「0」となれば、飾り図柄を停留して表示する一方で、例えば微少な揺れや伸縮などを生じさせる仮停止表示を行う。そして、飾り図柄の可変表示を開始してからの経過時間が変動パターンなどに基づいて決定された可変表示時間に達したときには、可変表示結果となる確定飾り図柄を完全停止表示する。なお、確定飾り図柄を停止表示する手順としては、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおいて所定順序で飾り図柄を減速表示するものに限定されず、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおいて同時に確定飾り図柄となる飾り図柄を減速表示(全図柄減速表示)するものが含まれていてもよい。
全図柄変動が開始された後には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rのうち全部又は一部の飾り図柄表示部にて、飾り図柄をリーチ表示状態で導出表示することがある。ここで、リーチ表示状態とは、画像表示装置5の表示領域にて導出表示された飾り図柄が大当り組合せの一部を構成しているときに未だ導出表示されていない飾り図柄(「リーチ変動図柄」ともいう)については変動が継続している表示状態、あるいは、全部又は一部の飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態のことである。具体的には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける一部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)では予め定められた大当り組合せを構成する飾り図柄(例えば「7」の英数字を示す飾り図柄)が導出表示されているときに未だ導出表示されていない残りの飾り図柄表示部(例えば「中」の飾り図柄表示部5Cなど)では飾り図柄が変動している表示状態、あるいは、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部又は一部で飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態である。また、リーチ表示状態となったことに対応して、画像表示装置5の表示領域に飾り図柄とは異なるアニメーション画像や実写画像といった演出画像を表示させたり、背景画像の表示態様を変化させたり、飾り図柄の変動態様を変化させたりすることがある。このような演出画像の表示や背景画像の表示態様の変化、飾り図柄の変動態様の変化を、リーチ演出表示(あるいは単にリーチ演出)という。リーチ演出の中には、それが出現すると、通常のリーチ演出(ノーマルリーチ)に比べて大当りが発生しやすい(高い確率で大当りとなる)ように設定されたものがある。このような特別のリーチ演出を、スーパーリーチ演出(あるいは単に「スーパーリーチ」)ともいう。一例として、スーパーリーチとなるリーチ演出には、ノーマルリーチと同様のリーチ演出を所定時間が経過するまで行ってから、例えば背景画像の表示態様や、表示されるキャラクタ、飾り図柄の変動方向といった飾り図柄の変動態様のうち、少なくともいずれか1つがリーチ表示状態となる以前やノーマルリーチのときとは異なるものとなることにより、演出態様が変化(いわゆる「発展」)して、スーパーリーチに特有のリーチ演出における導入部分が開始されるものが含まれていればよい。また、スーパーリーチとなるリーチ演出には、飾り図柄がリーチ表示状態で導出表示されたときに、ノーマルリーチと同様のリーチ演出を行うことなく、スーパーリーチに特有のリーチ演出における導入部分が開始されるものが含まれていてもよい。
また、飾り図柄の可変表示中には、リーチ演出とは異なり、飾り図柄がリーチ状態で導出表示される可能性があることや、可変表示結果が「大当り」となる可能性があることを、飾り図柄の可変表示態様などにより遊技者に報知するための特定演出が実行されることがある。この実施の形態では、「滑り」や「擬似連」といった特定演出が実行可能に設定されている。なお、この実施の形態における特定演出は、対応する演出動作が実行されるか否か応じて特図変動時間が変化するものであればよい。例えば、ある特定演出が実行される場合には、その特定演出が実行されない場合に比べて、特図変動時間が長くなるものであればよい。
「滑り」の特定演出では、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させる全図柄変動を行ってから、2つ以上の飾り図柄表示部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)にて飾り図柄を仮停止表示させた後、その仮停止表示した飾り図柄表示部のうち所定数(例えば「1」又は「2」)の飾り図柄表示部(例えば「左」の飾り図柄表示部5Lと「右」の飾り図柄表示部5Rのいずれか一方又は双方)にて飾り図柄を再び変動させた後に停止表示させることで、停止表示する飾り図柄を変更させる演出表示が行われる。なお、特定演出における飾り図柄の仮停止表示では、飾り図柄が停留して表示される一方で、例えば揺れ変動表示を行うことや短時間の停留だけで直ちに飾り図柄を再変動させることなどによって、遊技者に停止表示された飾り図柄が確定しない旨を報知すればよい。あるいは、仮停止表示でも、停止表示された飾り図柄が確定したと遊技者が認識する程度に飾り図柄を停留させてから、飾り図柄を再変動させるようにしてもよい。
「擬似連」の特定演出では、特別図柄や飾り図柄の可変表示を開始するための第1開始条件あるいは第2開始条件が1回成立したことに対応して、全図柄変動が開始されてから、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて順次に又は同時に飾り図柄を仮停止表示させた後、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて飾り図柄を再び変動させる再可変表示動作(再変動)を、所定回(例えば最大3回まで)実行する演出動作である。一例として、「擬似連」の特定演出では、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにて、擬似連チャンス目として予め定められた複数種類の飾り図柄の組合せのいずれかが仮停止表示される。そして、再変動の回数が多くなるに従って、可変表示結果が「大当り」となる割合が高くなるように設定されていればよい。これにより、遊技者は、擬似連チャンスのいずれかが仮停止表示されることで、「擬似連」の特定演出が行われると認識でき、再変動の回数が多くなるに従って、可変表示結果が「大当り」となる期待感が高められる。この実施の形態では、「擬似連」の特定演出において、再変動が1回〜3回行われることにより、第1開始条件あるいは第2開始条件が1回成立したことに基づき、飾り図柄の可変表示があたかも2回〜4回続けて開始されたかのように見せることができる。
「擬似連」の特定演出が実行される飾り図柄の可変表示中には、擬似連続変動の進行に伴って、例えば画像表示装置5の表示領域における所定位置に予め用意されたキャラクタを示す演出画像を表示することや、スピーカ8L、8Rから所定の音声(特別音)を出力させること、遊技効果ランプ9を所定の点灯パターンで点灯させること、遊技領域内あるいは遊技領域外に設けられた演出用役物が備える複数の可動部材を動作させることといった、所定の演出動作が実行されてもよい。一例として、全部の飾り図柄表示部5L、5C、5Rにて飾り図柄を仮停止表示させた後、全部の飾り図柄表示部5L、5C、5Rにて飾り図柄を再可変表示させるときには、キャラクタを示す演出画像の表示、特別音の出力、ランプの点灯、可動部材の動作のうち、いずれか1つ、あるいは、複数の動作を組み合わせた演出動作が行われることにより、擬似連続変動が行われることを認識可能に報知するようにしてもよい。
こうした飾り図柄の可変表示動作を利用した特定演出としては、「擬似連」や「滑り」の他にも、例えば「発展チャンス目」や「発展チャンス目終了」、「チャンス目停止後滑り」といった、各種の演出動作が実行されてもよい。ここで、「発展チャンス目」の特定演出では、飾り図柄の可変表示が開始されてから可変表示結果となる確定飾り図柄が導出表示されるまでに、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて、予め定められた特殊組合せに含まれる発展チャンス目を構成する飾り図柄を仮停止表示させた後、飾り図柄の可変表示状態をリーチ状態として所定のリーチ演出が開始される。これにより、発展チャンス目を構成する飾り図柄が仮停止表示されたときには、飾り図柄の可変表示状態がリーチ状態となることや、リーチ状態となった後に可変表示結果が「大当り」となることに対する、遊技者の期待感が高められる。また、「発展チャンス目終了」の特定演出では、飾り図柄の可変表示が開始された後に、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて、発展チャンス目として予め定められた組合せの飾り図柄を、確定飾り図柄として導出表示させる演出表示が行われる。「チャンス目停止後滑り」の特定演出では、「擬似連」の可変表示演出と同様に、飾り図柄の可変表示が開始されてから可変表示結果となる確定飾り図柄が導出表示されるまでに、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて複数種類の擬似連チャンス目のいずれかとなるハズレ組合せ(特殊組合せ)の飾り図柄を一旦仮停止表示させた後、「擬似連」の特定演出とは異なり、飾り図柄表示部5L、5C、5Rの一部にて飾り図柄を再び変動させることで、停止表示する飾り図柄を変更させる演出表示が行われる。
さらに、飾り図柄の可変表示中には、リーチ演出や特定演出とは異なり、例えば所定のキャラクタ画像やメッセージ画像を表示することなどといった、飾り図柄の可変表示態様以外の表示態様により、飾り図柄の可変表示状態がリーチ状態となる可能性があることや、可変表示結果が「大当り」となる可能性があることを、遊技者に報知するための予告演出が実行されることがある。例えば、「キャラクタ表示」、「ステップアップ画像」、「背景変更」といった予告演出が実行可能に設定されていればよい。なお、予告演出は、対応する演出動作が実行されるか否かによって特図変動時間に変化が生じないものであればよい。「キャラクタ表示」の予告演出では、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させてから、2つ以上の飾り図柄表示部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)にて飾り図柄を導出表示させる以前に、画像表示装置5の表示領域における所定位置に予め用意されたキャラクタ画像を表示させる演出表示が行われる。「ステップアップ画像」の予告演出では、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させてから、2つ以上の飾り図柄表示部にて飾り図柄を導出表示させる以前に、画像表示装置5の表示領域にて、予め用意された複数種類の演出画像を所定の順番に従って切り替えて表示させる演出表示が行われることがある。なお、「ステップアップ画像」の予告演出では、予め用意された複数種類の演出画像のうちいずれか1つ(例えば所定の順番において最初に表示される演出画像など)が表示された後、演出画像が切り替えられることなく、予告演出における演出表示を終了させることがあるようにしてもよい。「背景変更」の予告演出では、画像表示装置5の表示領域における背景画像の表示を、複数種類のいずれかに変更させる演出表示が行われる。
また、複数回の特図ゲームなどに対応して複数回実行される飾り図柄の可変表示にわたり、可変表示結果が「大当り」又は「小当り」となる可能性があることや、特定の変動パターン(例えばスーパーリーチを伴う変動パターン)による可変表示が実行される可能性があることを、遊技者に報知するための予告演出が、連続して実行されることがある。このような複数回の可変表示にわたり連続して実行される予告演出を、連続予告演出ともいう。これに対して、単一の可変表示に対応して実行される予告演出を、単独予告演出ともいう。連続予告演出が実行される複数回の可変表示のうちで最終の可変表示は、連続予告演出により可変表示結果が「大当り」となる可能性などが報知される対象となる可変表示であり、連続予告演出による予告対象となる可変表示ともいう。連続予告演出が実行される場合には、予告対象となる可変表示が開始されるより前に、特図ゲームの保留記憶情報に基づいて可変表示結果が「大当り」となる可能性などを予告する予告演出が開始される。
連続予告演出が開始された後には、例えば飾り図柄の可変表示が実行されるごとに、予め用意された複数種類の演出画像を所定の順番に従って選択的に表示させる演出表示により、演出態様が複数段階に変化(ステップアップ)するような演出動作が行われるようにしてもよい。このとき、変化する回数(ステップ数)が多くなるに従って、可変表示結果が「大当り」又は「小当り」となる可能性(信頼度)などが高くなるようにしてもよい。さらに変化する回数(ステップ数)によって予告する対象が変化するようにしてもよい。例えば第2ステップまで行くと「リーチ確定」、第3ステップまで行くと「スーパーリーチ確定」、第4ステップまで行くと「大当り確定」となるようなものでもよい。予告の態様の変化(ステップアップ)としては、異なるキャラクタ画像が順番に表示されるものであってもよいし、1つのキャラクタにおける形状や色等が変化することでステップアップするようなものであってもよい。すなわち、遊技者からみて予告する手段(表示、音、ランプ、可動物等)の状態が段階的に変化したと認識可能なものであればよい。
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態とならずに、所定の非リーチ組合せとなる確定飾り図柄や、複数種類の発展チャンス目のいずれかとなる確定飾り図柄が、停止表示されることがある。このような飾り図柄の可変表示態様は、可変表示結果が「ハズレ」となる場合における「非リーチ」(「通常ハズレ」ともいう)の可変表示態様と称される。
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態となったことに対応して、リーチ演出が実行された後に、所定のリーチハズレ組合せ(単に「リーチ組合せ」ともいう)となる確定飾り図柄が停止表示されることがある。このような飾り図柄の可変表示結果は、可変表示結果が「ハズレ」となる場合における「リーチ」(「リーチハズレ」ともいう)の可変表示態様と称される。
特図ゲームにおける確定特別図柄として、15ラウンド大当り図柄となる特別図柄のうち非確変大当り図柄である「3」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後に、所定の非確変大当り組合せ(「通常大当り組合せ」ともいう)となる確定飾り図柄が停止表示される。ここで、非確変大当り組合せとなる確定飾り図柄は、例えば画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される図柄番号が「1」〜「8」の飾り図柄のうち、図柄番号が偶数「2」、「4」、「6」、「8」である飾り図柄のいずれか1つが、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて所定の有効ライン上に揃って停止表示されるものであればよい。このように非確変大当り組合せを構成する図柄番号が偶数「2」、「4」、「6」、「8」である飾り図柄は、非確変図柄(「通常図柄」ともいう)と称される。そして、特図ゲームにおける確定特別図柄が非確変大当り図柄となることに対応して、所定のリーチ演出が実行された後に、非確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「非確変」(「通常」ともいう)の可変表示態様(大当り種別ともいう)と称される。こうして「非確変」の可変表示態様により可変表示結果が「大当り」となった後には、15ラウンド大当り遊技状態に制御され、その15ラウンド大当り状態が終了すると、時短状態又は通常状態に制御されることになる。
特図ゲームにおける確定特別図柄として、15ラウンド大当り図柄となる特別図柄のうち確変大当り図柄である「7」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、大当り種別が「非確変」である場合と同様のリーチ演出が実行された後などに、もしくは、大当り種別が「非確変」である場合とは異なるリーチ演出が実行された後などに、所定の確変大当り組合せとなる確定飾り図柄が停止表示されることがある。ここで、確変大当り組合せとなる確定飾り図柄は、例えば画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される図柄番号が「1」〜「8」の飾り図柄のうち、図柄番号が奇数「1」、「3」、「5」、「7」である飾り図柄のいずれか1つが、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて所定の有効ライン上に揃って停止表示されるものであればよい。このように確変大当り組合せを構成する図柄番号が奇数「1」、「3」、「5」、「7」である飾り図柄は、確変図柄と称される。そして、特図ゲームにおける確定特別図柄が確変大当り図柄となることに対応して、リーチ演出が実行された後などに、確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「確変」の可変表示態様(大当り種別ともいう)と称される。
特図ゲームにおける確定特別図柄として確変大当り図柄が停止表示される場合に、飾り図柄の可変表示結果として、非確変大当り組合せとなる確定飾り図柄が停止表示されることがあるようにしてもよい。このように、非確変大当り組合せとなる確定飾り図柄が停止表示される場合でも、特図ゲームにおける確定特別図柄として確変大当り図柄が停止表示されるときは、「確変」の可変表示態様に含まれる。こうして「確変」の可変表示態様により可変表示結果が「大当り」となった後には、15ラウンド大当り状態に制御され、その15ラウンド大当り状態が終了すると、確変状態に制御されることになる。非確変大当り組合せとなる確定飾り図柄や確変大当り組合せとなる確定飾り図柄は、まとめて大当り組合せ(特定の組合せ)の確定飾り図柄ともいう。
確定飾り図柄が非確変大当り組合せや確変大当り組合せとなる飾り図柄の可変表示中には、再抽選演出が実行されてもよい。再抽選演出では、画像表示装置5における「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rに非確変大当り組合せとなる飾り図柄を仮停止表示させた後に、例えば「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて同一の飾り図柄が揃った状態で再び変動させ、確変大当り組合せとなる飾り図柄(確変図柄)と、非確変大当り組合せとなる飾り図柄(非確変図柄)のうちいずれかを、確定飾り図柄として停止表示(最終停止表示)させる。ここで、大当り種別が「非確変」である場合に再抽選演出が実行されるときには、その再抽選演出として、仮停止表示させた飾り図柄を再変動させた後に非確変大当り組合せとなる確定飾り図柄を導出表示する変動中昇格失敗演出が行われる。これに対して、大当り種別が「確変」である場合に再抽選演出が実行されるときには、その再抽選演出として、仮停止表示させた飾り図柄を再変動させた後に確変大当り組合せとなる確定飾り図柄を停止表示する変動中昇格成功演出が実行されることもあれば、変動中昇格失敗演出が実行されることもある。
非確変大当り組合せとなる確定飾り図柄が導出表示された後には、大当り遊技状態の開始時や大当り遊技状態におけるラウンドの実行中、大当り遊技状態においていずれかのラウンドが終了してから次のラウンドが開始されるまでの期間、大当り遊技状態において最終のラウンドが終了してから次の可変表示ゲームが開始されるまでの期間などにて、確変状態に制御するか否かの報知演出となる大当り中昇格演出が実行されてもよい。なお、大当り中昇格演出と同様の報知演出が、大当り遊技状態の終了後における最初の可変表示ゲーム中などにて実行されてもよい。大当り遊技状態において最終のラウンドが終了してから実行される大当り中昇格演出を、特に「エンディング昇格演出」ということもある。
大当り中昇格演出には、確定飾り図柄が非確変大当り組合せであるにもかかわらず遊技状態が確変状態となる昇格がある旨を報知する大当り中昇格成功演出と、確変状態となる昇格がない旨を報知する大当り中昇格失敗演出とがある。例えば、大当り中昇格演出では、画像表示装置5の表示領域にて飾り図柄を可変表示させて非確変図柄と確変図柄のいずれかを演出表示結果として停止表示させること、あるいは、飾り図柄の可変表示とは異なる演出画像の表示を行うことなどにより、確変状態となる昇格の有無を、遊技者が認識できるように報知すればよい。
特図ゲームにおける確定特別図柄として、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が停止表示される場合や、小当り図柄となる「2」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態とならずに、2回開放チャンス目として予め定められた複数種類の確定飾り図柄の組合せのいずれかが停止表示されることがある。また、特図ゲームにおける確定特別図柄として、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後などに、所定のリーチ組合せとなる確定飾り図柄が停止表示されることもある。特図ゲームにおける確定特別図柄が2ラウンド大当り図柄である「1」の数字を示す特別図柄となることに対応して、各種の確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」(「突確大当り」あるいは「突然確変大当り」ともいう)の可変表示態様(大当り種別ともいう)と称される。こうして「突確」の可変表示態様により可変表示結果が「大当り」となった後には、2ラウンド大当り状態に制御され、その2ラウンド大当り状態が終了すると、確変状態に制御されることになる。
可変表示結果が「大当り」で大当り種別が「突確」となる場合には、飾り図柄の可変表示中に突確モード開始演出が実行されてもよい。突確モード開始演出では、大当り種別が「突確」となることに対応して予め定められた演出動作が行われる。突確モード開始演出が行われた後には、突確モードと称される通常の演出モードとは異なる演出モードが開始されてもよい。また、突確モード開始演出は、特別図柄や飾り図柄の可変表示中に実行される演出動作に限定されず、2ラウンド大当り状態となる期間の一部または全部においても、可変表示中から継続して実行される演出動作であってもよい。突確モード開始演出が開始されるときには、可変表示中の飾り図柄を消去して、突確モード開始演出が実行された後には、確定飾り図柄が導出表示されないようにしてもよい。突確モードでは、例えば可変表示結果が「大当り」となって確変状態が終了するまで、突確モード中演出が行われる。突確モード中演出では、画像表示装置5の表示領域における背景画像の表示態様を通常の演出モードにおける表示態様とは異なるものとすること、飾り図柄の可変表示に伴ってスピーカ8L、8Rから出力される音声を通常の演出モードにおける音声とは異なるものとすること、遊技効果ランプ9や装飾用LEDの点灯パターンを通常の演出モードにおける点灯パターンとは異なるものとすること、あるいは、これらの一部又は全部を組み合わせることにより、突確モードであることを遊技者が認識できるように報知すればよい。
確変状態では、例えば「確変中」といった確変状態であることを報知する演出画像を画像表示装置5の表示領域に表示させることや、画像表示装置5の表示領域における背景画像や飾り図柄の表示態様を通常の演出モードにおける表示態様とは異なるものとすることなどにより、確変状態であることを遊技者が認識できる確変中の演出モードとなるようにしてもよい。あるいは、確変状態では、例えば通常状態や時短状態と同様の演出モードとなることにより、確変状態であることを遊技者が認識不可能あるいは認識困難になることがあってもよい(いわゆる潜伏確変)。こうした潜伏確変が行われる期間は、遊技状態が潜伏確変中であるともいう。
パチンコ遊技機1には、例えば図2に示すような電源基板10、主基板11、演出制御基板12、音声制御基板13、ランプ制御基板14、払出制御基板15、発射制御基板17といった、各種の制御基板が搭載されている。また、パチンコ遊技機1には、主基板11と演出制御基板12との間で伝送される各種の制御信号を中継するための中継基板18なども搭載されている。なお、音声制御基板13やランプ制御基板14は、演出制御基板12とは別個の独立した基板によって構成されてもよいし、演出制御基板12にまとめられて1つの基板として構成されてもよい。その他、パチンコ遊技機1の背面には、例えば情報端子基板やインタフェース基板などといった、各種の制御基板が配置されている。インタフェース基板は、パチンコ遊技機1に隣接してカードユニットが設置される場合に、払出制御基板15とカードユニットとの間に介在する制御基板である。
電源基板10は、主基板11、演出制御基板12、払出制御基板15等の各制御基板とは独立して設置され、パチンコ遊技機1内の各制御基板及び機構部品が使用する電圧を生成する。例えば、電源基板10では、図3に示すように、AC24V、VLP(直流+24V)、VSL(直流+30V)、VDD(直流+12V)、VCC(直流+5V)及びVBB(直流+5V)を生成する。電源基板10は、例えば図3に示すように、変圧回路301と、直流電圧生成回路302と、電源監視回路303と、クリアスイッチ304とを備えて構成されている。また、電源基板10には、バックアップ電源となるコンデンサが設けられていてもよい。このコンデンサは、例えばVBB(直流+5V)の電源ラインから充電されるものであればよい。加えて、電源基板10には、パチンコ遊技機1内の各制御基板及び機構部品への電力供給を実行又は遮断するための電源スイッチが設けられていてもよい。あるいは、電源スイッチは、パチンコ遊技機1において、電源基板10の外部に設けられていてもよい。
変圧回路301は、例えば商用電源が入力側(一次側)に印加されるトランスや、トランスの入力側に設けられた過電圧保護回路としてのバリスタなどを備えて構成されたものであればよい。ここで、変圧回路301が備えるトランスは、商用電源と電源基板10の内部とを電気的に絶縁するためのものであればよい。変圧回路301は、その出力電圧として、AC24Vを生成する。直流電圧生成回路302は、例えばAC24Vを整流素子で整流昇圧することによってVSLを生成する整流平滑回路を含んでいる。VSLは、ソレノイド駆動用の電源電圧として用いられる。また、直流電圧生成回路302は、例えばAC24Vを整流素子で整流することによってVLPを生成する整流回路を含んでいる。VLPは、遊技効果ランプ9等の発光体を点灯するための電源電圧として用いられる。加えて、直流電圧生成回路302は、例えばVSLに基づいてVDDおよびVCCを生成するDC−DCコンバータを含んでいる。このDC−DCコンバータは、例えば1つ又は複数のスイッチングレギュレータと、そのスイッチングレギュレータの入力側に接続された比較的大容量のコンデンサとを含み、外部からパチンコ遊技機1への電力供給が停止したときに、VSL、VDD、VBB等の直流電圧が比較的緩やかに低下するように構成されたものであればよい。VDDは、例えば図2に示すゲートスイッチ21、第1及び第2始動口スイッチ22A、22B、カウントスイッチ23といった、遊技媒体を検出する各種スイッチに供給され、これらのスイッチを作動させるために用いられる。
図3に示すように、変圧回路301から出力されたAC24Vは、例えば所定のコネクタや電源ラインを介して、払出制御基板15へと伝送される。VLPは、例えば所定のコネクタや電源ラインを介して、ランプ制御基板14へと伝送される。VSL、VDD及びVCCは、例えば所定のコネクタや電源ラインを介して、主基板11、ランプ制御基板14及び払出制御基板15へと伝送される。VBBは、例えば所定のコネクタや電源ラインを介して、主基板11及び払出制御基板15へと伝送される。なお、演出制御基板12及び音声制御基板13には、ランプ制御基板14を経由して各電圧が供給されればよい。あるいは、演出制御基板12及び音声制御基板13には、ランプ制御基板14を経由することなく、電源基板10から直接に各電圧が供給されてもよい。
電源監視回路303は、例えば停電監視リセットモジュールICを用いて構成され、電源断信号を出力する電源監視手段を実現する回路である。例えば、電源監視回路303は、パチンコ遊技機1において用いられる所定電源電圧(一例としてVSL)が所定値(一例として+22V)を超えると、オフ状態(ハイレベル)の電源断信号を出力する。その一方で、所定電源電圧が所定値以下になった期間が、予め決められている時間(一例として56ms)以上継続したときに、オン状態(ローレベル)の電源断信号を出力する。あるいは、電源監視回路303は、パチンコ遊技機1において用いられる所定電源電圧が所定値以下になると、直ちにオン状態の電源断信号を出力するようにしてもよい。電源断信号は、例えばローレベルとなることでオン状態となりハイレベルとなることでオフ状態となる負論理の電気信号であればよい。電源監視回路303から出力された電源断信号は、例えば電源基板10に搭載された出力ドライバ回路によって増幅された後に所定のコネクタや信号ラインを介して、主基板11や払出制御基板15へと伝送される。なお、電源断信号は、払出制御基板15を介して主基板11へと伝送されるようにしてもよい。
電源断信号を出力するための監視対象となる所定電源電圧は、例えば電源電圧VSLといった、スイッチ作動用の電源電圧VDDにおける規定値(一例として+12V)よりも高い電圧であることが好ましい。これにより、スイッチ作動用の電源電圧VDDが低下して各種スイッチ(例えばゲートスイッチ21、第1及び第2始動口スイッチ22A、22B、カウントスイッチ23など)の動作状態が不安定となる以前に、電源断信号を出力する(オン状態にする)ことで、各種スイッチによる誤検出に基づく遊技制御の進行を防止できる。すなわち、スイッチ作動用の電源電圧VDDが低下すると負論理(ローレベルでオン状態となる)のスイッチ出力がオン状態となるものの、電源電圧VDDよりも早く低下する電源電圧VSLを監視して電力供給の停止を認識することで、スイッチ出力がオン状態となる以前に、電源復旧待ちの状態となってスイッチ出力を検出しない状態となることができる。
電源電圧VSLなどを主基板11、ランプ制御基板14及び払出制御基板15へと伝送する電源ラインには、大容量のコンデンサが接続されていてもよい。これに対して、電源電圧VSLを監視対象とするために電源監視回路303へと伝送する入力ラインには、このようなコンデンサが接続されていなくてもよい。この場合、監視対象となる電源監視回路303への入力ラインにおける電源電圧VSLは、コンデンサが接続された電源ラインにおける電源電圧VSLより早く低下する。すなわち、監視対象の電源電圧VSLが低下し始めた後でも、所定期間は、ソレノイドやモータなどに供給される電源ラインにおける電源電圧VSLの供給状態が維持される。したがって、監視対象となる電源電圧VSLが低下し始める場合でも、所定期間は、ソレノイドやモータなどを駆動可能な状態とすることができる。また、電源ラインにおける電源電圧VSLが低下し始める前に、電力供給の停止を認識することができる。
なお、ソレノイド駆動用の電源電圧VSLに代えて、例えば発光体点灯用の電源電圧VLPといった、スイッチ作動用の電源電圧VDDにおける規定値よりも高い任意の電源電圧を監視対象として、電源断信号を出力するようにしてもよい。また、外部からパチンコ遊技機1に供給される電力の供給停止を検出するための条件としては、パチンコ遊技機1において用いられる所定電源電圧が所定値以下になったことに限られず、外部からの電力が途絶えたことを検出できる任意の条件であればよい。例えば、AC24V等の交流波そのものを監視して交流波が途絶えたことを検出条件としてもよいし、交流波をデジタル化した信号を監視して、デジタル信号が平坦になったことをもって交流波が途絶えたことの検出条件としてもよい。
電源監視回路303は、例えば所定電源電圧(一例としてVCC)が所定値(一例として+4.5V)以下になったときに、リセット信号を出力してもよい。リセット信号は、例えばローレベルとなることでオン状態となる電気信号であればよい。電源監視回路303から出力されたリセット信号は、例えば電源基板10に搭載された出力ドライバ回路によって増幅された後に所定のコネクタや信号ラインを介して、主基板11、ランプ制御基板14及び払出制御基板15へと伝送される。演出制御基板12には、ランプ制御基板14を経由してリセット信号が伝送されればよい。あるいは、演出制御基板12に対しても、ランプ制御基板14を経由せずにリセット信号が直接に伝送されるようにしてもよい。さらに、リセット信号を出力する回路は、電源監視回路303とは別個に設けられたウォッチドッグタイマ内蔵IC、あるいはシステムリセットICなどを用いて構成されてもよい。
パチンコ遊技機1への電力供給が停止するときには、電源監視回路303が、電源断信号を出力(ローレベルに設定)してから所定期間が経過したときに、リセット信号を出力(ローレベルに設定)する。ここでの所定期間は、例えば図2に示す主基板11に搭載されている遊技制御用マイクロコンピュータ100及び払出制御基板15に搭載されている払出制御用マイクロコンピュータ150が、所定の電源断処理を実行するのに十分な時間であればよい。すなわち、電源監視回路303は、給電中信号としての電源断信号を出力した後、遊技制御用マイクロコンピュータ100及び払出制御用マイクロコンピュータ150が所定の電源断処理を実行完了してから、動作停止信号としてのリセット信号を出力(ローレベルに設定)する。電源監視回路303から出力されたリセット信号を受信した遊技制御用マイクロコンピュータ100や払出制御用マイクロコンピュータ150は、動作停止状態となり、各種の制御処理の実行が停止される。また、パチンコ遊技機1への電力供給が開始され、例えば所定電源電圧(一例としてVCC)が所定値(一例として+4.5V)を超えたときに、電源監視回路303はリセット信号の出力を停止(ハイレベルに設定)する。
図4は、パチンコ遊技機1への電力供給が開始されたとき、及び電力供給が停止するときにおける、AC24V、VSL、VCC、リセット信号及び電源断信号の状態を、模式的に示すタイミング図である。図4に示すように、パチンコ遊技機1への電力供給が開始されたときに、VSL及びVCCは徐々に規定値(直流+30V及び直流+5V)に達する。このとき、VCCが第1の所定値を超えると、電源監視回路303はリセット信号の出力を停止(ハイレベルに設定)してオフ状態とする。また、VSLが第2の所定値を超えると、電源監視回路303は電源断信号の出力を停止(ハイレベルに設定)してオフ状態とする。他方、パチンコ遊技機1への電力供給が停止するときに、VSL及びVCCは徐々に低下する。このとき、VSLが第2の所定値にまで低下すると、電源監視回路303は電源断信号をオン状態として出力(ローレベルに設定)する。また、VCCが第1の所定値にまで低下すると、電源監視回路303はリセット信号をオン状態として出力(ローレベルに設定)する。
図3に示す電源基板10が備えるクリアスイッチ304は、例えば押しボタン構造を有し、押下などの操作に応じてクリア信号を出力する。クリア信号は、例えば押下などの操作に応じてローレベルとなることでオン状態となる電気信号であればよい。あるいは、クリア信号は、例えば押下などの操作に応じてハイレベルとなることでオン状態となる電気信号であってもよい。クリアスイッチ304から出力されたクリア信号は、例えば所定のコネクタや信号ラインを介して、主基板11へと伝送され、主基板11から払出制御基板15へと伝送される。また、クリアスイッチ304の操作がなされていないときには、クリア信号の出力を停止(ハイレベルあるいはローレベルに設定)する。なお、クリアスイッチ304は、押しボタン構造以外の他の構成(例えばスライドスイッチ構造やトグルスイッチ構造、ダイヤルスイッチ構造など)であってもよい。
主基板11は、メイン側の制御基板であり、パチンコ遊技機1における遊技の進行を制御するための各種回路が搭載されている。主基板11は、主として、特図ゲームにおいて用いる乱数の設定機能、所定位置に配設されたスイッチ等からの信号の入力を行う機能、演出制御基板12や払出制御基板15などからなるサブ側の制御基板に宛てて、指令情報の一例となる制御コマンドを制御信号として出力して送信する機能、ホールの管理コンピュータに対して各種情報を出力する機能などを備えている。また、主基板11は、第1特別図柄表示装置4Aと第2特別図柄表示装置4Bを構成する各LED(例えばセグメントLED)などの点灯/消灯制御を行って第1特図や第2特図の可変表示を制御することや、普通図柄表示器20の点灯/消灯/発色制御などを行って普通図柄表示器20による普通図柄の可変表示を制御することといった、所定の表示図柄の可変表示を制御する機能も備えている。主基板11は、例えば図2に示すように、遊技制御用マイクロコンピュータ100と、制御用クロック生成回路111と、乱数用クロック生成回路112と、スイッチ回路114と、ソレノイド回路115とを備えている。また、主基板11には、遊技開始スイッチ31が設置されていてもよい。
ここで、制御用クロック生成回路111は、遊技制御用マイクロコンピュータ100の外部にて、所定周波数の発振信号となる制御用クロックCCLKを生成する。制御用クロック生成回路111により生成された制御用クロックCCLKは、例えば図6に示すような遊技制御用マイクロコンピュータ100の制御用外部クロック端子EXCを介してクロック回路502に供給される。乱数用クロック生成回路112は、遊技制御用マイクロコンピュータ100の外部にて、制御用クロックCCLKの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックRCLKを生成する。乱数用クロック生成回路112により生成された乱数用クロックRCLKは、例えば図6に示すような遊技制御用マイクロコンピュータ100の乱数用外部クロック端子ERCを介して乱数回路509に供給される。一例として、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数以下となるようにすればよい。あるいは、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数よりも高周波となるようにしてもよい。
スイッチ回路114は、遊技球検出用の各種スイッチなどからの検出信号を取り込んで遊技制御用マイクロコンピュータ100に伝送する。ソレノイド回路115は、遊技制御用マイクロコンピュータ100からのソレノイド駆動信号をソレノイド81、82に伝送する。遊技開始スイッチ31は、例えば押しボタン構造を有し、パチンコ遊技機1において遊技機用枠3を閉じて遊技者が通常遊技を行う状態でパチンコ遊技機1の外部から触れることのできない所定箇所に配設されていればよい。そして、例えばパチンコ遊技機1の電源投入時やシステムリセット時などに、パチンコ遊技機1の初期設定を行った後に遊技開始を指示するために操作される。なお、遊技開始スイッチ31は、押しボタン構造以外の他の構成(例えばスライドスイッチ構造やトグルスイッチ構造、ダイヤルスイッチ構造など)であってもよい。
図2に示すように、主基板11には、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B及びカウントスイッチ23からの検出信号を伝送する配線が接続されている。なお、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B及びカウントスイッチ23は、例えばセンサと称されるものなどのように、遊技媒体としての遊技球を検出できる任意の構成を有するものであればよい。また、主基板11には、第1特別図柄表示装置4Aや第2特別図柄表示装置4B、普通図柄表示器20、第1保留表示器25A、第2保留表示器25B、普図保留表示器25Cなどの表示制御を行うための指令信号を伝送する配線が接続されている。さらに、主基板11には、普通電動役物用のソレノイド81や大入賞口扉用のソレノイド82などの駆動制御を行うための指令信号を伝送する配線が接続されている。
主基板11と演出制御基板12との間では、例えば主基板11から中継基板18を介して演出制御基板12へと向かう単一方向のみでシリアル通信などを行うことにより、各種の制御コマンドが伝送される。演出制御基板12は、主基板11とは独立したサブ側の制御基板であり、中継基板18を介して主基板11から送信された制御コマンドを受信して、画像表示装置5、スピーカ8L、8R及び遊技効果ランプ9等の発光体といった演出用の電気部品(演出装置)を制御するための各種回路が搭載されている。すなわち、演出制御基板12は、画像表示装置5における表示動作や、スピーカ8L、8Rからの音声出力動作、遊技効果ランプ9等の発光体における点灯動作及び消灯動作などを制御する機能を備えている。演出制御基板12には、音声制御基板13やランプ制御基板14に制御信号を伝送する配線や、画像表示装置5に画像データ信号を伝送する配線などが接続されている。
主基板11には、例えば中継基板18に対応して主基板側コネクタが設けられるとともに、この主基板側コネクタと遊技制御用マイクロコンピュータ100との間に、出力バッファ回路が接続されていてもよい。この出力バッファ回路は、例えば主基板11から中継基板18を介して演出制御基板12へ向かう方向にのみ制御信号を通過させることができ、中継基板18から主基板11への信号の入力を阻止する。したがって、演出制御基板12や中継基板18の側から主基板11の側に信号が伝わる余地はない。なお、主基板11と演出制御基板12との間に中継基板18を設けない構成としてもよい。これにより、主基板11と演出制御基板12との間における配線引き回しの自由度を高めることができる。
中継基板18には、例えば主基板11から演出制御基板12に対して制御信号を伝送するための配線に、伝送方向規制回路が設けられていればよい。伝送方向規制回路は、主基板11対応の主基板用コネクタにアノードが接続されるとともに演出制御基板12対応の演出制御基板用コネクタにカソードが接続されたダイオードと、一端がダイオードのカソードに接続されるとともに他端がグランド(GND)接続された抵抗とから構成されている。この構成により、伝送方向規制回路は、演出制御基板12から中継基板18への信号の入力を阻止して、主基板11から演出制御基板12へ向かう方向にのみ信号を通過させることができる。したがって、演出制御基板12の側から主基板11側に信号が伝わる余地はない。この実施の形態では、中継基板18において制御信号を伝送するための配線に伝送方向規制回路を設けるとともに、主基板11にて遊技制御用マイクロコンピュータ100と主基板側コネクタの間に出力バッファ回路を設けることで、外部から主基板11への不正な信号の入力を防止することができる。
主基板11と払出制御基板15との間では、例えば双方向でシリアル通信を行うことにより、各種の制御コマンドや通知信号が伝送される。払出制御基板15は、主基板11とは独立したサブ側の制御基板であり、主基板11から送信された制御コマンドや通知信号を受信して、払出モータ51による遊技球の払出動作を制御するための各種回路が搭載されている。すなわち、払出制御基板15は、払出モータ51による賞球の払出動作を制御する機能を備えている。また、払出制御基板15は、例えばインタフェース基板を介したカードユニットとの通信結果に応じて払出モータ51の駆動制御を行って、球貸し動作を制御する機能を備えていてもよい。払出制御基板15には、満タンスイッチ26や球切れスイッチ27からの検出信号を受信するための配線や、払出モータ位置センサ71や払出カウントスイッチ72、エラー解除スイッチ73からの検出信号を受信するための配線が接続されている。加えて、払出制御基板15には、払出モータ51における遊技球の払出制御を行うための指令信号を送信するための配線や、エラー表示用LED74における表示制御を行うための指令信号を送信するための配線、インタフェース基板を介してカードユニットとの間で通信を行うための配線などが接続されている。
ここで、満タンスイッチ26は、例えば遊技盤2の背面下方にて打球供給皿と余剰球受皿の間を連通する余剰球通路の側壁に設置され、余剰球受皿の満タンを検出するためのものである。賞球又は球貸し要求に基づく遊技球が多数払い出されて打球供給皿が満杯になり、遊技球が連絡口に到達した後、さらに遊技球が払い出されると、遊技球は余剰球通路を経て余剰球受皿へと導かれる。さらに遊技球が払い出されると、例えば所定の感知レバーが満タンスイッチ26を押圧してオンする。
また、球切れスイッチ27は、例えば遊技盤2の背面にて遊技球を払出モータ51が設置された払出装置へと誘導する誘導レールの下流に設置され、誘導レールの下流にてカーブ樋を介して連通された2列の球通路内における遊技球の有無を検出するためのものである。一例として、球切れスイッチ27は、球通路に27〜28個の遊技球が存在することを検出できるような位置に係止片によって係止され、球貸しの一単位の最大払出個数(例えば100円分に相当する25個)以上が確保されていることを確認可能にする。なお、誘導レールは、遊技盤2の背面上方にて補給球としての遊技球を貯留する貯留タンクからの遊技球を払出装置へと誘導するものであり、球通路の下部には、払出モータ51が設置された払出装置が固定されている。
エラー解除スイッチ73は、払出制御用マイクロコンピュータ150が所定のエラー状態に制御されているときに、ソフトウェアリセットによって、そのエラー状態を解除するためのスイッチである。エラー表示用LED74は、例えば7セグメントLEDにより構成され、払出制御用マイクロコンピュータ150にてセットされたエラーフラグなどに基づいて、各種のエラーに対応するエラーコードを表示するためのものである。
図2に示す発射制御基板17は、操作ノブ30の操作量に応じて、所定の発射装置による遊技球の発射動作を制御するためのものである。発射制御基板17には、例えば電源基板10あるいは主基板11からの駆動信号を伝送する配線や、払出制御基板15及びインタフェース基板を介してカードユニットからの接続信号を伝送する配線、及び操作ノブ30からの配線が接続されるとともに、発射モータ61への配線が接続されている。なお、カードユニットからの接続信号は、払出制御基板15にて分岐されて発射制御基板17に伝送されてもよいし、カードユニットからインタフェース基板を介し、払出制御基板15を経由せずに発射制御基板17に伝送されてもよい。発射制御基板17は、操作ノブ30の操作量に対応して発射モータ61の駆動力を調整する。発射モータ61は、例えば発射制御基板17により調整された駆動力により発射バネを弾性変形させ、発射バネの付勢力を打撃ハンマに伝達して遊技球を打撃することにより、遊技球を操作ノブ30の操作量に対応した速度で遊技領域に向けて発射させる。
中継基板18を介して主基板11から演出制御基板12へと送信される制御コマンドは、例えば電気信号として伝送される演出制御コマンドである。この実施の形態において、演出制御コマンドは、主基板11に搭載された遊技制御用マイクロコンピュータ100が備えるCPU505(図6参照)によって送信設定が行われ、その設定に基づいて遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511(図6参照)の第2チャネル送信回路により、演出制御基板12に対して送信される。以下の説明では、主基板11から演出制御基板12に対する演出制御コマンドの送信動作に、こうした遊技制御用マイクロコンピュータ100に設けられたCPU505やシリアル通信回路511による一連の動作が含まれているものとする。この場合、演出制御基板12の側では、例えば演出制御用マイクロコンピュータ120のCPUが、主基板11から伝送されたシリアル信号形式の通信データを受信した際に発生する受信割込み要求に基づく割込み処理を実行することにより、演出制御コマンドを取り込んで所定のバッファ(例えば演出用受信コマンドバッファ)等に格納してもよい。なお、演出制御コマンドは、複数本の信号線(例えば8本の演出制御信号線)で主基板11から中継基板18を介し演出制御基板12に対して送信されてもよい。この場合には、演出制御コマンドを送信するための信号線に加えて、演出制御コマンドの取込みを要求する取込信号(演出制御INT信号)を送信するための信号線が配線されてもよい。
演出制御コマンドには、例えば画像表示装置5における画像表示動作を制御するために用いられる表示制御コマンドや、スピーカ8L、8Rからの音声出力を制御するために用いられる音声制御コマンド、遊技効果ランプ9といった発光体の点灯動作などを制御するために用いられるランプ制御コマンドが含まれている。図5(A)は、この実施の形態で用いられる表示制御コマンドの内容の一例を示す説明図である。表示制御コマンドは、例えば2バイト構成であり、1バイト目はMODE(コマンドの分類)を示し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット番号[7])は必ず“1”とされ、EXTデータの先頭ビットは“0”とされる。なお、図5(A)に示された表示制御コマンドの形態は一例であって、他のコマンド形態を用いてもよい。また、この例では、表示制御コマンドが2バイト構成であるとしているが、表示制御コマンドを構成するバイト数は、1であってもよいし、3以上の複数であってもよい。
図5(A)に示す例において、コマンド8001Hは、第1特別図柄表示装置4Aによる特図ゲームにおける第1特図の変動開始を指定する第1変動開始コマンドである。コマンド8002Hは、第2特別図柄表示装置4Bによる特図ゲームにおける第2特図の変動開始を指定する第2変動開始コマンドである。コマンド81XXHは、特図ゲームにおける特別図柄の可変表示に対応して画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rで可変表示される飾り図柄などの変動パターンを指定する変動パターン指定コマンドである。ここで、XXHは不特定の16進数であることを示し、演出制御コマンドによる指示内容に応じて任意に設定される値であればよい。変動パターン指定コマンドでは、指定する変動パターンなどに応じて、異なるEXTデータが設定される。
この実施の形態では、第1及び第2変動開始コマンドと、変動パターン指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、第1特図及び第2特図のいずれが変動開始となるかの指定内容と、変動パターンの指定内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、変動開始となる特別図柄(第1特図あるいは第2特図)と変動パターンとの組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、変動開始となる特別図柄と変動パターンとを特定できるようにしてもよい。ここで、変動開始となる特別図柄と変動パターンとを1つの演出制御コマンドにより特定可能となるように構成した場合には、1つの変動パターンに対して、変動開始となる特別図柄(第1特図あるいは第2特図)に応じた2種類の演出制御コマンドを用意しなければならないことがある。これに対して、変動開始となる特別図柄を指定する演出制御コマンドと、変動パターンを指定する演出制御コマンドとを別個に用意すれば、変動開始となる特別図柄に対応した2種類の演出制御コマンドと、変動パターンの種類数に対応した個数の演出制御コマンドとを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
コマンド8CXXHは、特別図柄や飾り図柄などの可変表示結果を指定する表示結果指定コマンドである。表示結果指定コマンドでは、例えば図5(B)に示すように、可変表示結果が「ハズレ」、「大当り」、「小当り」のいずれとなるかの事前決定結果、また、可変表示結果が「大当り」となる場合における大当り種別が「非確変」、「確変」、「突確」のいずれとなるかの大当り種別決定結果に対応して、異なるEXTデータが設定される。より具体的には、コマンド8C00Hは、可変表示結果が「ハズレ」となる旨の事前決定結果を示す第1表示結果指定コマンドである。コマンド8C01Hは、可変表示結果が「大当り」となる場合における大当り種別が「非確変」となる旨の事前決定結果及び大当り種別決定結果を示す第2表示結果指定コマンドである。コマンド8C02Hは、可変表示結果が「大当り」となる場合における大当り種別が「確変」となる旨の事前決定結果及び大当り種別決定結果を示す第3表示結果指定コマンドである。コマンド8C03Hは、可変表示結果が「大当り」となる場合における大当り種別が「突確」となる旨の事前決定結果及び大当り種別決定結果を示す第4表示結果指定コマンドである。コマンド8C04Hは、可変表示結果が「小当り」となる旨の事前決定結果を示す第5表示結果指定コマンドである。
この実施の形態では、変動パターン指定コマンドと表示結果指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、変動パターン指定コマンドに示される変動パターンと、表示結果指定コマンドに示される可変表示結果とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、変動パターンと可変表示結果(「ハズレ」、「大当り」及び「小当り」のいずれかと、「大当り」となる場合における大当り種別)との組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、変動パターンと可変表示結果を特定可能な情報が伝送されるようにしてもよい。あるいは、3つ以上の演出制御コマンドにより、変動パターンと可変表示結果とを特定できるようにしてもよい。ここで、変動パターンと可変表示結果とを1つの演出制御コマンドにより特定可能となるように構成した場合には、1つの変動パターンに対して、複数種類の可変表示結果に応じた複数種類の演出制御コマンドを用意しなければならないことがある。これに対して、変動パターンを指定する演出制御コマンドと、可変表示結果を通知する演出制御コマンドとを別個に用意すれば、変動パターンの種類数に対応した個数の演出制御コマンドと、可変表示結果の種類数に対応した個数の演出制御コマンドとを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
コマンド8F00Hは、画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rで飾り図柄の可変表示の停止を指定する図柄確定指定コマンドである。なお、図柄確定指定コマンドは、主基板11から演出制御基板12に対して伝送されないようにしてもよい。この場合には、変動パターン指定コマンドで指定された変動パターンに対応する可変表示時間を、演出制御基板12の側で特定し、飾り図柄の可変表示を開始してからの経過時間が可変表示時間に達したときに、主基板11からの演出制御コマンドを受信しなくても、確定飾り図柄を完全停止表示して可変表示結果を確定させるようにしてもよい。
コマンド95XXHは、パチンコ遊技機1における現在の遊技状態を指定する遊技状態指定コマンドである。遊技状態指定コマンドでは、例えばパチンコ遊技機1における現在の遊技状態が通常状態、確変状態及び時短状態のいずれであるかに対応して、異なるEXTデータが設定される。具体的な一例として、コマンド9500Hを遊技状態が通常状態である場合に対応した第1遊技状態指定コマンドとし、コマンド9501Hを遊技状態が確変状態である場合に対応した第2遊技状態指定コマンドとし、コマンド9502Hを遊技状態が時短状態である場合に対応した第3遊技状態指定コマンドとすればよい。
A0XXHは、大当り遊技状態や小当り遊技状態の開始を示す演出画像の表示を指定する当り開始指定コマンド(「ファンファーレコマンド」ともいう)である。当り開始指定コマンドでは、例えば表示結果指定コマンドと同様のEXTデータが設定されることなどにより、事前決定結果や大当り種別決定結果に応じて異なるEXTデータが設定される。あるいは、当り開始指定コマンドでは、事前決定結果や大当り種別決定結果と設定されるEXTデータとの対応関係を、表示結果指定コマンドにおける対応関係とは異ならせるようにしてもよい。
コマンドA1XXHは、大当り遊技状態や小当り遊技状態に対応して、各ラウンドや可変入賞動作で大入賞口が開放状態となっている期間における演出画像の表示を指定する大入賞口開放中指定コマンドである。コマンドA2XXHは、大当り遊技状態や小当り遊技状態に対応して、各ラウンドや可変入賞動作の終了により大入賞口が開放状態から閉鎖状態に変化した期間おける演出画像(例えばラウンド間のインターバルにおける演出画像)の表示を指定する大入賞口開放後指定コマンドである。大入賞口開放中指定コマンドや大入賞口開放後指定コマンドでは、例えば15ラウンド大当り状態におけるラウンドの実行回数(例えば「1」〜「15」)や、2ラウンド大当り状態におけるラウンドや小当り遊技状態における可変入賞動作の実行回数(例えば「1」又は「2」)に対応して、異なるEXTデータが設定される。なお、15ラウンド大当り状態であるか、2ラウンド大当り状態や小当り遊技状態であるかに応じて、大入賞口開放中指定コマンドや大入賞口開放後指定コマンドを別個に用意してもよい。これに対して、15ラウンド大当り状態と2ラウンド大当り状態、小当り遊技状態で共通の大入賞口開放中指定コマンドや大入賞口開放後指定コマンドを用いることにより、演出制御コマンドの種類数を削減することができる。また、大当り遊技状態や小当り遊技状態では、各ラウンドや可変入賞動作で大入賞口が開放状態となっている期間であるか、各ラウンドや可変入賞動作の終了により大入賞口が開放状態から閉鎖状態に変化した期間であるかに関わりなく、大当り遊技状態や小当り遊技状態の開始時点から終了時点まで継続的な演出動作が実行されるようにしてもよい。さらに、小当り遊技状態では、大入賞口開放中指定コマンドや大入賞口開放後指定コマンドの伝送が行われないようにしてもよい。
コマンドA3XXHは、大当り遊技状態や小当り遊技状態の終了時における演出画像の表示を指定する当り終了指定コマンドである。当り終了指定コマンドでは、例えば表示結果指定コマンドや当り開始指定コマンドと同様のEXTデータが設定されることなどにより、事前決定結果や大当り種別決定結果に応じて異なるEXTデータが設定される。あるいは、当り終了指定コマンドでは、事前決定結果や大当り種別決定結果と設定されるEXTデータとの対応関係を、表示結果指定コマンドや当り開始指定コマンドにおける対応関係とは異ならせるようにしてもよい。
コマンドB1XXHは、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した遊技球が第1始動口スイッチ22Aにより検出されて始動入賞が発生したことに基づき、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームを実行するための第1始動条件が成立したことを通知する第1始動口入賞指定コマンドである。コマンドB2XXHは、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した遊技球が第2始動口スイッチ22Bにより検出されて始動入賞が発生したことに基づき、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームを実行するための第2始動条件が成立したことを通知する第2始動口入賞指定コマンドである。
この実施の形態において、第1始動口入賞指定コマンドは、第1始動入賞口を通過(進入)した遊技球の検出時である第1始動入賞時に、所定の数値データを用いた判定結果を通知する演出制御コマンドとしても用いられる。また、第2始動口入賞指定コマンドは、第2始動入賞口を通過(進入)した遊技球の検出時である第2始動入賞時に、所定の数値データを用いた判定結果を通知する演出制御コマンドとしても用いられる。
例えば図5(C)に示すように、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドでは、特図表示結果が「ハズレ」となる場合に、変動パターンを決定するために用いる所定の可変表示決定用数値(例えば変動パターン種別決定用の乱数値MR3を示す数値データ)が特図ゲームの保留記憶数(特図保留記憶数)にかかわらず特定の変動パターン(例えばスーパーリーチを伴う変動パターン)とする特定パターン共通範囲の範囲内であるか範囲外であるかに応じて、異なるEXTデータが設定される。より具体的には、コマンドB100HやコマンドB200Hは、特定パターン共通範囲外であることを通知する一方で、コマンドB101HやコマンドB201Hは、特定パターン共通範囲内であることを通知する。
また、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドでは、可変表示結果を「大当り」とするか否かを決定するために用いる所定の特定表示結果決定用数値(例えば特図表示結果決定用の乱数値MR1を示す数値データ)に基づいて、特図表示結果が「大当り」に決定されるか否かの判定結果などに応じて、異なるEXTデータが設定される。より具体的には、コマンドB102HやコマンドB202Hは、特図表示結果が「大当り」又は「小当り」に決定されると判定した入賞時当り判定を通知する。これに対して、コマンドB100HやコマンドB101H、コマンドB200HやコマンドB201Hでは、特図表示結果が「大当り」や「小当り」には決定されないと判定したことが通知される。なお、入賞時当り判定は、特図表示結果が「小当り」に決定されると判定した場合を含むものに限定されず、特図表示結果が「大当り」に決定されると判定した場合のみを含むものであってもよい。あるいは、入賞時当り判定は、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」に決定されて15ラウンド大当り状態に制御されると判定した場合のみを含むものであってもよい。あるいは、特図表示結果が「大当り」で大当り種別が「突確」に決定されて2ラウンド大当り遊技状態に制御されると判定したことや、特図表示結果が「小当り」に決定されて小当り遊技状態に制御されると判定したことを通知するコマンドを、別個に用意してもよい。
さらに、第1始動口入賞指定コマンドでは、パチンコ遊技機1が大当り遊技状態に制御されている大当り中に第1始動入賞口を通過(進入)した遊技球が検出されたことや、確変状態あるいは時短状態において時短制御が行われている時短制御中に第1始動入賞口を通過(進入)した遊技球が検出されたことを、特定可能とするEXTデータが設定される。より具体的には、コマンドB103Hは、大当り中や時短制御中に第1始動入賞口を通過(進入)した遊技球が検出されたという大当り中・時短中入賞を通知する。
コマンドC0XXHは、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hなどにて特図保留記憶数を特定可能に表示するために、第1特図保留記憶数と第2特図保留記憶数との合計値である合計保留記憶数を通知する特図保留記憶数通知コマンドである。特図保留記憶数通知コマンドは、例えば第1始動条件と第2始動条件のいずれかが成立したことや、第1開始条件と第2開始条件のいずれかが成立して特図ゲームの実行が開始されることなどに対応して、第1始動口入賞指定コマンドと第2始動口入賞指定コマンドのいずれかが送信されたことに続いて、主基板11から演出制御基板12に対して送信される。特図保留記憶数通知コマンドでは、例えば図34に示す第1特図保留記憶部591Aにおける保留データと第2特図保留記憶部591Bにおける保留データの総記憶数(例えば「0」〜「8」)に対応して、異なるEXTデータが設定される。これにより、演出制御基板12の側では、第1始動条件と第2始動条件のいずれかが成立したときや、第1開始条件と第2開始条件のいずれかが成立して特図ゲームの実行が開始されるときなどに、主基板11から伝送された特図保留記憶数通知コマンドを受信して、第1特図保留記憶部591Aと第2特図保留記憶部591Bにおける保留データの総記憶数を特定することができる。
この実施の形態では、第1及び第2始動口入賞指定コマンドと保留記憶数指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、第1始動条件及び第2始動条件のいずれが成立したかの通知内容と、合計保留記憶数の通知内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、成立した始動条件(第1始動条件あるいは第2始動条件)と合計保留記憶数との組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、成立した始動条件と合計保留記憶数とを特定できるようにしてもよい。ここで、第1始動条件と第2始動条件のいずれが成立したかを、合計保留記憶数とともに1つの演出制御コマンドで特定可能とする場合には、例えば合計保留記憶数の上限値が「8」である場合に、第1始動条件と第2始動条件のそれぞれが成立した場合に対応して8種類ずつの合計16種類の演出制御コマンドを用意しなければならない。これに対して、第1始動条件と第2始動条件のいずれが成立したかを特定可能な演出制御コマンドと、合計保留記憶数を特定可能な演出制御コマンドとを別個に用意すれば、第1始動条件と第2始動条件のそれぞれを特定可能な2種類の演出制御コマンドと、合計保留記憶数を特定可能な8種類の演出制御コマンドとからなる、合計10種類の演出制御コマンドを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
また、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドとは別に、第1始動入賞時や第2始動入賞時に所定の数値データを用いた判定結果を通知する演出制御コマンドを用意してもよい。あるいは、第1始動入賞時や第2始動入賞時に所定の数値データを用いた判定結果の通知内容と、合計保留記憶数の通知内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。
コマンドD0XXは、入賞口への異常入賞などの報知を指定する異常入賞報知コマンドである。異常入賞報知コマンドでは、例えば異常が検出された事項などに対応して、異なるEXTデータが設定されればよい。異常入賞報知コマンドの一例として、第2始動入賞口への異常入賞の報知を指定するコマンドD000Hが、予め用意されていればよい。
主基板11から払出制御基板15に対して送信される制御コマンドは、例えば電気信号として伝送される払出制御コマンドである。なお、払出制御コマンドは、主基板11に搭載された遊技制御用マイクロコンピュータ100が備えるCPU505(図6参照)によって払出制御コマンドを送信するための設定が行われ、その設定に基づいて遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511(図6参照)の第1チャネル送受信回路により払出制御基板15に対して送信されるものである。以下の説明では、主基板11から払出制御基板15に対する払出制御コマンドの送信動作に、こうした遊技制御用マイクロコンピュータ100に設けられたCPU505やシリアル通信回路511による一連の動作が含まれているものとする。また、払出制御基板15から主基板11に対しては、例えば電気信号としての払出通知コマンドなどが送信される。なお、払出通知コマンドは、払出制御基板15に搭載された払出制御用マイクロコンピュータ150が備えるCPUによって払出通知コマンドを送信するための設定が行われ、その設定に基づいて払出制御用マイクロコンピュータ150が備えるシリアル通信回路により主基板11に対して送信されるものである。以下の説明では、払出制御基板15から主基板11に対する払出通知コマンドの送信動作に、こうした払出制御用マイクロコンピュータ150に設けられたCPUやシリアル通信回路による一連の動作が含まれているものとする。加えて、以下の説明では、主基板11及び払出制御基板15のいずれか一方から他方に対する所定動作の指令だけでなく、一方での動作状態を他方に通知する通知信号も、払出制御コマンドや払出通知コマンドに含まれるものとする。
主基板11から払出制御基板15に対して送信される払出制御コマンドには、払出数指定コマンドやACKフィードバックコマンドが含まれていればよい。払出数指定コマンドは、払い出すべき賞球の数を示すコマンドである。ACKフィードバックコマンドは、払出制御基板15から主基板11に対して送信された賞球ACKコマンドを主基板11の側で受信したことを示す受信確認受付信号となる。
払出制御基板15から主基板11に対して送信される払出通知コマンドには、賞球ACKコマンド、払出エラー通知コマンド、払出エラー解除コマンドが含まれていればよい。賞球ACKコマンドは、主基板11から払出制御基板15に対して送信された払出数指定コマンドを払出制御基板15の側で受信したことを示す受信確認信号となる。払出エラー通知コマンドは、払出制御基板15の側において遊技球の払出に関わる異常が発生した旨を主基板11の側に通知するコマンドである。払出エラー解除コマンドは、払出制御基板15の側で発生したエラーが解除された旨を主基板11の側に通知するコマンドである。
なお、主基板11と払出制御基板15との間では、シリアル通信によりコマンドを送受信するものに限定されず、複数本の信号線を用いたパラレル通信によりコマンドを送受信してもよい。また、払出制御基板15から主基板11に対して送信される払出エラー通知コマンドや払出エラー解除コマンドに代えて、払出制御基板15におけるエラーの発生状態を示す払出エラー状態信号を、主基板11に設けられた入力ポートの1つに入力してもよい。例えば、払出エラー状態信号は、払出制御基板15にてエラーが発生したときにオン状態となり、エラーが発生していないときや、エラーが解除されたときにオフ状態となる。この場合、主基板11の側では、タイマ割込みの発生毎に払出エラー状態信号を取り込み、その取込結果を記憶しておく。そして、今回のタイマ割込みで取り込んだ信号状態と、前回のタイマ割込みで取り込んで記憶された信号状態との排他的論理和をとることにより、払出エラー状態信号がオフ状態からオン状態に変化したことや(エラー発生時を示す)、オン状態からオフ状態に変改したことを(エラー解除時を示す)、検出できるようにすればよい。払出制御基板15におけるエラー発生時やエラー解除時には、主基板11から演出制御基板12に向け、各々に対応して用意された演出制御コマンドを伝送することなどにより、払出動作にエラーが発生したことを報知する報知動作の開始や終了を、指示するようにしてもよい。払出エラー状態信号として主基板11に設けられた入力ポートの1つに入力するものに限定されず、例えば満タン信号や球切れ信号、賞球ケースエラー信号、ドア開放信号といった、払出制御基板15に入力される信号を、それぞれ主基板11にも入力して、払出エラー状態信号の場合と同様にエラー発生時やエラー解除時を検出できるようにしてもよい。そして、検出されたエラーの種類に応じた演出制御コマンドを主基板11から演出制御基板12に向けて伝送することなどにより、検出されたエラーに応じた報知動作の開始や終了を、指示するようにしてもよい。
図6は、主基板11に搭載された遊技制御用マイクロコンピュータ100の構成例を示している。図6に示す遊技制御用マイクロコンピュータ100は、例えば1チップマイクロコンピュータであり、外部バスインタフェース501と、クロック回路502と、固有情報記憶回路503と、リセット/割込みコントローラ504と、CPU(Central Processing Unit)505と、ROM(Read Only Memory)506と、RAM(Random Access Memory)507と、CTC(Counter/Timer Circuit)508と、乱数回路509と、PIP(Parallel Input Port)510と、シリアル通信回路511と、アドレスデコード回路512とを備えて構成される。
図7は、遊技制御用マイクロコンピュータ100におけるアドレスマップの一例を示している。図7に示すように、アドレス0000H〜アドレス1FFFHの領域は、ROM506に割り当てられ、ユーザプログラムエリアとプログラム管理エリアとを含んでいる。図8(A)は、ROM506におけるプログラム管理エリアの主要部分について、用途や内容の一例を示している。アドレス2000H〜アドレス20FFHの領域は、遊技制御用マイクロコンピュータ100の内蔵レジスタに割り当てられる内蔵レジスタエリアである。図8(B)は、内蔵レジスタエリアの主要部分について、用途や内容の一例を示している。アドレス7E00H〜アドレス7FFFHの領域は、RAM507に割り当てられたワークエリアであり、I/Oマップやメモリマップに割り付けることができる。アドレスFDD0H〜アドレスFDFBHの領域は、アドレスデコード回路512に割り当てられるXCSデコードエリアである。
プログラム管理エリアは、CPU505がユーザプログラムを実行するために必要な情報を格納する記憶領域である。図8(A)に示すように、プログラム管理エリアには、ヘッダKHDR、機能設定KFCS、第1乱数初期設定KRS1、第2乱数初期設定KRS2、割込み初期設定KIIS、セキュリティ時間設定KSESなどが、含まれている。
プログラム管理エリアに記憶されるヘッダKHDRは、遊技制御用マイクロコンピュータ100における内部データの読出設定を示す。図9(A)は、ヘッダKHDRにおける設定データと動作との対応関係を例示している。ここで、遊技制御用マイクロコンピュータ100では、ROM読出防止機能と、バス出力マスク機能とを設定可能である。ROM読出防止機能は、遊技制御用マイクロコンピュータ100が備えるROM506の記憶データについて、読出動作を許可又は禁止する機能であり、読出禁止に設定された状態では、ROM506の記憶データを読み出すことができない。バス出力マスク機能は、外部バスインタフェース501に接続された外部装置から遊技制御用マイクロコンピュータ100の内部データに対する読出要求があった場合に、外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることにより、外部装置から内部データの読み出しを不能にする機能である。図9(A)に示すように、ヘッダKHDRの設定データに対応して、ROM読出防止機能やバス出力マスク機能の動作組合せが異なるように設定される。図9(A)に示す設定データのうち、ROM読出が許可されるとともに、バス出力マスクが有効となる設定データは、バス出力マスク有効データともいう。また、ROM読出が禁止されるとともに、バス出力マスクが有効となる設定データ(全て「00H」)は、ROM読出禁止データともいう。ROM読出が許可されるとともに、バス出力マスクが無効となる設定データは、バス出力マスク無効データともいう。
プログラム管理エリアに記憶される機能設定KFCSは、遊技制御用マイクロコンピュータ100におけるウォッチドッグタイマ(WDT;Watch Dog Timet)の動作設定や、各種機能兼用端子の使用設定を示す。図9(B)は、機能設定KFCSにおける設定内容の一例を示している。
機能設定KFCSのビット番号[7−5]は、例えばリセット/割込みコントローラ504における割込み要因として設定可能なウォッチドッグタイマの動作許可/禁止や、許可した場合の周期を示している。機能設定KFCSのビット番号[4]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第1兼用端子)を、シリアル通信回路511が使用する第2チャネル送信端子TXBとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS13とするかを指定するTXB端子設定である。図9(B)に示す例において、機能設定KFCSのビット番号[4]におけるビット値が“0”であれば、第1兼用端子がシリアル通信回路511での第2チャネル送信に使用される第2チャネル送信端子TXBの設定となる。これに対して、そのビット値が“1”であれば、第1兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS13の設定となる。この実施の形態では、機能設定KFCSのビット番号[4]を“0”として、第1兼用端子を第2チャネル送信端子TXBに設定することにより、演出制御基板12との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[3]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第2兼用端子)を、シリアル通信回路511が使用する第1チャネル送信端子TXAとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS12とするかを示すTXA端子設定である。図9(B)に示す例において、機能設定KFCSのビット番号[3]におけるビット値が“0”であれば、第2兼用端子がシリアル通信回路511での第1チャネル送信に使用される第1チャネル送信端子TXAの設定となる。これに対して、そのビット値が“1”であれば、第2兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS12の設定となる。この実施の形態では、機能設定KFCSのビット番号[3]を“0”として、第2兼用端子を第1チャネル送信端子TXAに設定することにより、払出制御基板15との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[2]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第3兼用端子)を、シリアル通信回路511が使用する第1チャネル受信端子RXAとするか、PIP510が使用する入力ポートP5とするかを示すRXA端子設定である。図9(B)に示す例において、機能設定KFCSのビット番号[2]におけるビット値が“0”であれば、第3兼用端子がシリアル通信回路511での第1チャネル受信に使用される第1チャネル受信端子RXAの設定となる。これに対して、そのビット値が“1”であれば、第3兼用端子がPIP510で使用される入力ポートP5の設定となる。この実施の形態では、機能設定KFCSのビット番号[2]を“0”として、第3兼用端子を第1チャネル受信端子RXAに設定することにより、払出制御基板15との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[1]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第4兼用端子)を、CPU505等に接続される外部ノンマスカブル割込み端子XNMIとするか、PIP510が使用する入力ポートP4とするかを示すNMI接続設定である。図9(B)に示す例において、機能設定KFCSのビット番号[1]におけるビット値が“0”であれば、第4兼用端子がCPU505等に接続される外部ノンマスカブル割込み端子XNMIの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第4兼用端子がPIP510で使用される入力ポートP4の設定となる(CPU非接続)。
機能設定KFCSのビット番号[0]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第5兼用端子)を、CPU505等に接続される外部マスカブル割込み端子XINTとするか、PIP510が使用する入力ポートP3とするかを示すXINT接続設定である。図9(B)に示す例において、機能設定KFCSのビット番号[0]におけるビット値が“0”であれば、第5兼用端子がCPU505等に接続される外部マスカブル割込み端子XINTの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第5兼用端子がPIP510で使用される入力ポートP3の設定となる(CPU非接続)。
プログラム管理エリアに記憶される第1乱数初期設定KRS1及び第2乱数初期設定KRS2は、乱数回路509の初期設定を示す。図10(A)は、第1乱数初期設定KRS1における設定内容の一例を示している。図10(B)は、第2乱数初期設定KRS2における設定内容の一例を示している。
第1乱数初期設定KRS1のビット番号[3]は、乱数回路509を使用するか否かを示す乱数回路使用設定である。図10(A)に示す例において、第1乱数初期設定KRS1のビット番号[3]におけるビット値が“0”であれば、乱数回路509を使用しない設定となる一方(未使用)、“1”であれば、乱数回路509を使用する設定となる(使用)。この実施の形態では、第1乱数初期設定KRS1のビット番号[3]を“1”として、乱数回路509を使用可能に設定する。
第1乱数初期設定KRS1のビット番号[2]は、乱数回路509における乱数値となる数値データの更新に用いられる乱数更新クロックRGK(図15参照)を、内部システムクロックSCLKとするか、乱数用クロックRCLKの2分周とするかを示す乱数更新クロック設定である。図10(A)に示す例において、第1乱数初期設定KRS1のビット番号[2]におけるビット値が“0”であれば、内部システムクロックSCLKを乱数更新クロックRGKに用いる設定となる一方、“1”であれば、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定となる。この実施の形態では、第1乱数初期設定KRS1のビット番号[2]を“1”として、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定とする。
第1乱数初期設定KRS1のビット番号[1−0]は、乱数回路509における乱数更新規則を変更するか否かや、変更する場合における変更方式を示す乱数更新規則設定である。図10(A)に示す例において、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が“00”であれば、乱数更新規則を変更しない設定となり、“01”であれば、2周目以降にて乱数更新規則をソフトウェアにより変更する設定となり、“10”であれば、2周目以降にて乱数更新規則を自動で変更する設定となる。
第2乱数初期設定KRS2のビット番号[3−2]は、固定のビット値“00”が設定される。なお、図10(B)における「00B」の“B”は2進数表示であることを示す。第2乱数初期設定KRS2のビット番号[1−0]は、乱数回路509における乱数値となる数値データでのスタート値に関する設定を示す。図10(B)に示す例において、第2乱数初期設定KRS2のビット番号[1]におけるビット値が“0”であれば、スタート値が所定のデフォルト値0000Hに設定される一方、“1”であるときには、遊技制御用マイクロコンピュータ100ごとに付与された固有の識別情報であるIDナンバーに基づく値がスタート値に設定される。また、図10(B)に示す例では、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“0”であれば、システムリセット毎にスタート値を変更しない設定となる一方、“1”であるときには、システムリセット毎にスタート値を変更する設定となる。なお、スタート値をIDナンバーに基づく値に設定する場合には、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値をスタート値に用いるようにすればよい。また、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”である場合には、システムリセット毎に所定のフリーランカウンタ(例えば図14に示すフリーランカウンタ554A)におけるカウント値に基づいて設定される値をスタート値に用いるようにすればよい。さらに、第2乱数初期設定KRS2のビット番号[1]及び[0]におけるビット値がともに“1”である場合には、IDナンバーとフリーランカウンタにおけるカウント値とに基づいて設定される値をスタート値に用いるようにすればよい。
なお、乱数回路509にて乱数値となる数値データを生成するための回路が2系統(第1及び第2チャネル対応)設けられる場合には、図10(A)及び(B)に示す第1乱数初期設定KRS1のビット番号[3−0]と第2乱数初期設定KRS2のビット番号[3−0]とを、第1チャネルにおける初期設定を示すものとして使用する。その一方で、第1乱数初期設定KRS1のビット番号[7−4]や第2乱数初期設定KRS2のビット番号[7−4]を(図10(A)及び(B)では省略)、第2チャネルにおける初期設定を示すものとして使用すればよい。
プログラム管理エリアに記憶される割込み初期設定KIISは、遊技制御用マイクロコンピュータ100にて発生するマスカブル割込みの取扱いに関する初期設定を示す。図10(C)は、割込み初期設定KIISにおける設定内容の一例を示している。
割込み初期設定KIISのビット番号[7−4]では、割込みベクタの上位4ビットを設定する。割込み初期設定KIISのビット番号[3−0]では、マスカブル割込み要因の優先度の組合せを設定する。図10(C)に示す例において、割込み初期設定KIISのビット番号[3−0]により「00H」〜「02H」及び「06H」のいずれかが指定されれば、CTC508からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。これに対して、「03H」及び「07H」のいずれかが指定されれば、乱数回路509からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。また、「04H」及び「05H」のいずれかが指定されれば、シリアル通信回路511からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。なお、同一回路からのマスカブル割込み要因を最優先とする優先度の組合せでも、指定値が異なる場合には、最優先となるマスカブル割込み要因の種類や第2順位以下における優先度の組合せなどが異なっている。
プログラム管理エリアに記憶されるセキュリティ時間設定KSESは、乱数用クロックRCLKの周波数を監視する場合に異常を検知する周波数や、遊技制御用マイクロコンピュータ100の動作開始時などに移行するセキュリティモードの時間(セキュリティ時間)に関する設定を示す。ここで、遊技制御用マイクロコンピュータ100の動作モードがセキュリティモードであるときには、所定のセキュリティチェック処理が実行されて、ROM506の記憶内容が変更されたか否かが検査される。図11(A)は、セキュリティ時間設定KSESにおける設定内容の一例を示している。
セキュリティ時間設定KSESのビット番号[7−6]は、乱数用クロックRCLKの周波数を監視する場合に異常が検出される周波数を示す乱数用クロック異常検出設定である。図11(B)は、セキュリティ時間設定KSESのビット番号[7−6]における設定内容の一例を示している。セキュリティ時間設定KSESのビット番号[7−6]は、内部システムクロックSCLKの周波数に基づき、乱数用クロックRCLKの周波数が異常と検知される基準値(判定値)を指定する。こうしたセキュリティ時間設定KSESのビット番号[7−6]における設定に基づき、乱数用クロックRCLKの入力状態を内部システムクロックSCLKと比較することにより、乱数用クロックRCLKの入力状態に異常が発生したか否かの判定を可能にする。セキュリティ時間設定KSESのビット番号「5」は、固定のビット値“0”が設定される。
セキュリティ時間設定KSESのビット番号[4−3]は、セキュリティ時間をシステムリセット毎にランダムな時間分延長する場合の時間設定を示す。図11(C)は、セキュリティ時間設定KSESのビット番号[4−3]における設定内容の一例を示している。図11(C)に示す例において、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”であれば、ランダムな時間延長を行わない設定となる。これに対して、そのビット値が“01”であればショートモードの設定となり、“10”であればロングモードの設定となる。ここで、ショートモードやロングモードが指定された場合には、例えば遊技制御用マイクロコンピュータ100に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時に遊技制御用マイクロコンピュータ100が備える所定の内蔵レジスタ(可変セキュリティ時間用レジスタ)に格納する。そして、初期設定時に可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、セキュリティ時間を延長する際の延長時間がランダムに決定されればよい。一例として、内部システムクロックSCLKの周波数が6.0MHzである場合には、ショートモードにおいて0〜680μs(マイクロ秒)の範囲で延長時間がランダムに決定され、ロングモードにおいて0〜348,160μsの範囲で延長時間がランダムに決定される。また、他の一例として、内部システムクロックSCLKの周波数が10.0MHzである場合には、ショートモードにおいて0〜408μsの範囲で延長時間がランダムに決定され、ロングモードにおいて0〜208,896μsの範囲で延長時間がランダムに決定される。可変セキュリティ時間用レジスタは、例えば遊技制御用マイクロコンピュータ100のRAM507におけるバックアップ領域といった、主基板11におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであればよい。あるいは、可変セキュリティ時間用レジスタは、RAM507におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされてもよい。こうして、可変セキュリティ時間用レジスタがバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間は可変セキュリティ時間用レジスタの格納値が保存されることになる。なお、フリーランカウンタにおけるカウント値を読み出して可変セキュリティ時間用レジスタに格納するタイミングは、システムリセットの発生時に限定されず、予め定められた任意のタイミングとしてもよい。あるいは、フリーランカウンタをバックアップ電源によってバックアップしておき、初期設定時にフリーランカウンタから読み出した格納値を用いてセキュリティ時間を延長する際の延長時間がランダムに決定されてもよい。
また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値によりショートモード又はロングモードを設定するとともに、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外とすることにより固定時間に加える延長時間を設定することもできる。この場合には、ビット番号[2−0]におけるビット値に対応した延長時間と、ビット番号[4−3]におけるビット値に基づいてランダムに決定された延長時間との双方が、固定時間に加算されて、遊技制御用マイクロコンピュータ100がセキュリティモードとなるセキュリティ時間が決定されることになる。
図6に示す遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501は、遊技制御用マイクロコンピュータ100を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインタフェースである。例えば、外部バスインタフェース501は、遊技制御用マイクロコンピュータ100に外付けされた外部メモリや外部入出力装置などに接続され、これらの外部装置との間でアドレス信号やデータ信号、各種の制御信号などを送受信するものであればよい。この実施の形態において、外部バスインタフェース501には、内部リソースアクセス制御回路501Aが含まれている。
内部リソースアクセス制御回路501Aは、外部バスインタフェース501を介した外部装置から遊技制御用マイクロコンピュータ100の内部データに対するアクセスを制御して、例えばROM506に記憶されたゲーム制御用プログラム(遊技制御処理プログラム)や固定データといった、内部データの不適切な外部読出を制限するための回路である。ここで、外部バスインタフェース501には、例えばインサーキットエミュレータ(ICE;InCircuit Emulator)といった回路解析装置が、外部装置として接続されることがある。
一例として、ROM506のプログラム管理エリアに記憶されたヘッダKHDRの内容に応じて、ROM506における記憶データの読み出しを禁止するか許可するかを切り替えられるようにする。例えば、ヘッダKHDRがバス出力マスク無効データとなっている場合には、外部装置によるROM506の読み出しを可能にして、内部データの外部読出を許可する。これに対して、ヘッダKHDRがバス出力マスク有効データとなっている場合には、例えば外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることなどにより、外部装置からROM506の読み出しを不能にして、内部データの外部読出を禁止する。この場合、外部バスインタフェース501に接続された外部装置から内部データの読み出しが要求されたときには、予め定められた固定値を出力することで、外部装置からは内部データを読み出すことができないようにする。また、ヘッダKHDRがROM読出禁止データとなっている場合には、ROM506自体を読出不能として、ROM506における記憶データの読み出しを防止してもよい。そして、例えば製造段階のROMでは、ヘッダKHDRをROM読出禁止データとすることで、ROM自体を読出不能としておき、開発用ROMとするのであればバス出力マスク無効データをヘッダKHDRに書き込むことで、外部装置による内部データの検証を可能にする。これに対して、量産用ROMとするのであればバス出力マスク有効データをヘッダKHDRに書き込むことで、CPU505などによる遊技制御用マイクロコンピュータ100の内部におけるROM506の読み出しは可能とする一方で、外部装置によるROM506の読み出しはできないようにすればよい。
他の一例として、内部リソースアクセス制御回路501Aは、ROM506における記憶データの全部又は一部といった、遊技制御用マイクロコンピュータ100の内部データの読み出しが、外部バスインタフェース501に接続された外部装置から要求されたことを検出する。この読出要求を検出したときに、内部リソースアクセス制御回路501Aは、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可するか否かの判定を行う。例えば、ROM506における記憶データの全部又は一部に暗号化処理が施されているものとする。この場合、内部リソースアクセス制御回路501Aは、外部装置からの読出要求がROM506に記憶された暗号化処理プログラムや鍵データ等に対する読出要求であれば、この読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。外部バスインタフェース501では、ROM506の記憶データが出力される出力ポートと、内部バスとの間にスイッチ素子を設け、内部リソースアクセス制御回路501Aが内部データの読み出しを禁止した場合には、このスイッチ素子をオフ状態とするように制御すればよい。このように、内部リソースアクセス制御回路501Aは、外部装置からの読出要求が所定の内部データ(例えばROM506の所定領域)の読み出しを要求するものであるか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
あるいは、内部リソースアクセス制御回路501Aは、内部データの読出要求を検出したときに、所定の認証コードが外部装置から入力されたか否かを判定してもよい。この場合には、例えば内部リソースアクセス制御回路501Aの内部あるいはROM506の所定領域に、認証コードとなる所定のコードパターンが予め記憶されていればよい。そして、外部装置から認証コードが入力されたときには、この認証コードを内部記憶された認証コードと比較して、一致すれば読出要求を受容して、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可する。これに対して、外部装置から入力された認証コードが内部記憶された認証コードと一致しない場合には、読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。このように、内部リソースアクセス制御回路501Aは、外部装置から入力された認証コードが内部記憶された認証コードと一致するか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。これにより、検査機関などが予め知得した正しい認証コードを用いて、遊技制御用マイクロコンピュータ100の内部データを損なうことなく読み出すことができ、内部データの正当性を適切に検査することなどが可能になる。
さらに他の一例として、内部リソースアクセス制御回路501Aに読出禁止フラグを設け、読出禁止フラグがオン状態であれば外部装置によるROM506の読み出しを禁止する。その一方で、読出禁止フラグがオフ状態であるときには、外部装置によるROM506の読み出しが許可される。ここで、読出禁止フラグは、初期状態ではオフ状態であるが、読出禁止フラグを一旦オン状態とした後には、読出禁止フラグをクリアしてオフ状態に復帰させることができないように構成されていればよい。すなわち、読出禁止フラグはオフ状態からオン状態に不可逆的に変更することが可能とされている。例えば、内部リソースアクセス制御回路501Aには、読出禁止フラグをクリアしてオフ状態とする機能が設けられておらず、どのような命令によっても読出禁止フラグをクリアすることができないように設定されていればよい。そして、内部リソースアクセス制御回路501Aは、外部装置からROM506における記憶データといった遊技制御用マイクロコンピュータ100の内部データの読み出しが要求されたときに、読出禁止フラグがオンであるか否かを判定する。このとき、読出禁止フラグがオンであれば、外部装置からの読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。他方、読出禁止フラグがオフであれば、外部装置からの読出要求を受容して、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可にする。このような構成であれば、ゲーム制御用の遊技制御処理プログラムを作成してROM506に格納する提供者においては、読出禁止フラグがオフとなっている状態でデバッグの終了したプログラムをROM506から外部装置に読み込むことができる。そして、デバッグの作業が終了した後に出荷する際には、読出禁止フラグをオン状態にセットすることにより、それ以後はROM506の外部読出を制限することができ、パチンコ遊技機1の使用者などによるROM506の読出を防止することができる。このように、内部リソースアクセス制御回路501Aは、読出禁止フラグといった内部フラグがオフであるかオンであるかに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
なお、読出禁止フラグを不可逆に設定するのではなく、オン状態からオフ状態に変更することも可能とする一方で、読出禁止フラグをオン状態からオフ状態に変更して内部データの読み出しが許可されるときには、ROM506の記憶データを消去(例えばフラッシュ消去など)することにより、ROM506の外部読出を制限するようにしてもよい。
遊技制御用マイクロコンピュータ100が備えるクロック回路502は、例えば制御用外部クロック端子EXCに入力される発振信号を2分周することなどにより、内部システムクロックSCLKを生成する回路である。この実施の形態では、制御用外部クロック端子EXCに制御用クロック生成回路111が生成した制御用クロックCCLKが入力される。クロック回路502により生成された内部システムクロックSCLKは、例えばCPU505といった、遊技制御用マイクロコンピュータ100において遊技の進行を制御する各種回路に供給される。また、内部システムクロックSCLKは、乱数回路509にも供給され、乱数用クロック生成回路112から供給される乱数用クロックRCLKの周波数を監視するために用いられる。さらに、内部システムクロックSCLKは、クロック回路502に接続されたシステムクロック出力端子CLKOから、遊技制御用マイクロコンピュータ100の外部へと出力されてもよい。なお、内部システムクロックSCLKは、遊技制御用マイクロコンピュータ100の外部へは出力されないことが望ましい。このように、内部システムクロックSCLKの外部出力を制限することにより、遊技制御用マイクロコンピュータ100の内部回路(CPU505など)の動作周期を外部から特定することが困難になり、乱数値となる数値データをソフトウェアにより更新する場合に、乱数値の更新周期が外部から特定されてしまうことを防止できる。
遊技制御用マイクロコンピュータ100が備える固有情報記憶回路503は、例えば遊技制御用マイクロコンピュータ100の内部情報となる複数種類の固有情報を記憶する回路である。一例として、固有情報記憶回路503は、ROMコード、チップ個別ナンバー、IDナンバーといった3種類の固有情報を記憶する。ROM506コードは、ROM506の所定領域における記憶データから生成される4バイトの数値であり、生成方法の異なる4つの数値が準備されればよい。チップ個別ナンバーは、遊技制御用マイクロコンピュータ100の製造時に付与される4バイトの番号であり、遊技制御用マイクロコンピュータ100を構成するチップ毎に異なる数値を示している。IDナンバーは、遊技制御用マイクロコンピュータ100の製造時に付与される8バイトの番号であり、遊技制御用マイクロコンピュータ100を構成するチップ毎に異なる数値を示している。ここで、チップ個別ナンバーはユーザプログラムから読み取ることができる一方、IDナンバーはユーザプログラムから読み取ることができないように設定されていればよい。なお、固有情報記憶回路503は、例えばROM506の所定領域を用いることなどにより、ROM506に含まれるようにしてもよい。あるいは、固有情報記憶回路503は、例えばCPU505の内蔵レジスタを用いることなどにより、CPU505に含まれるようにしてもよい。
遊技制御用マイクロコンピュータ100が備えるリセット/割込みコントローラ504は、遊技制御用マイクロコンピュータ100の内部や外部にて発生する各種リセット、割込み要求を制御するためのものである。リセット/割込みコントローラ504が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子XSRSTに一定の期間にわたりローレベル信号が入力されたときに発生するリセットである。ユーザリセットは、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことや、指定エリア外走行禁止(IAT)が発生したことなど、所定の要因により発生するリセットである。
リセット/割込みコントローラ504が制御する割込みには、ノンマスカブル割込みNMIとマスカブル割込みINTが含まれている。ノンマスカブル割込みNMIは、CPU505の割込み禁止状態でも無条件に受け付けられる割込みであり、外部ノンマスカブル割込み端子XNMI(入力ポートP4と兼用)に一定の期間にわたりローレベル信号が入力されたときに発生する割込みである。マスカブル割込みINTは、CPU505の設定命令により、割込み要求の受け付けを許可/禁止できる割込みであり、優先順位設定による多重割込みの実行が可能である。マスカブル割込みINTの要因としては、外部マスカブル割込み端子XINT(入力ポートP3と兼用)に一定の期間にわたりローレベル信号が入力が入力されたこと、CTC508に含まれるタイマ回路にてタイムアウトが発生したこと、シリアル通信回路511にてデータ受信又はデータ送信による割込み要因が発生したこと、乱数回路509にて乱数値となる数値データの取込による割込み要因が発生したことなど、複数種類の割込み要因が予め定められていればよい。
リセット/割込みコントローラ504は、図8(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、割込みマスクレジスタIMR(アドレス2028H)、割込み待ちモニタレジスタIRR(アドレス2029H)、割込み中モニタレジスタISR(アドレス202AH)、内部情報レジスタCIF(アドレス208CH)などを用いて、割込みの制御やリセットの管理を行う。割込みマスクレジスタIMRは、互いに異なる複数の要因によるマスカブル割込みINTのうち、使用するものと使用しないものとを設定するレジスタである。割込み待ちモニタレジスタIRRは、割込み初期設定KIISにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の発生状態を確認するレジスタである。割込み中モニタレジスタISRは、割込み初期設定KIISにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の処理状態を確認するレジスタである。内部情報レジスタCIFは、直前に発生したリセット要因を管理したり、乱数用クロックRCLKの周波数異常を記録したりするためのレジスタである。
図12(A)は、内部情報レジスタCIFの構成例を示している。図12(B)は、内部情報レジスタCIFに格納される内部情報データの各ビットにおける設定内容の一例を示している。内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4は、乱数用クロックRCLKにおける周波数異常の有無を示す乱数用クロック異常指示である。図12(B)に示す例では、乱数用クロックRCLKの周波数異常が検知されないときに、内部情報データCIF4のビット値が“0”となる一方、周波数異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[2]に格納される内部情報データCIF2は、直前に発生したリセット要因がシステムリセットであるか否かを示すシステムリセット指示である。図12(B)に示す例では、直前のリセット要因がシステムリセットではないときに(システムリセット未発生)、内部情報データCIF2のビット値が“0”となる一方、システムリセットであるときには(システムリセット発生)、そのビット値が“1”となる。内部情報データCIF2を用いた動作の第1例として、電源投入時に遊技制御用マイクロコンピュータ100のCPU505などが内部情報データCIF2のビット値をチェックして、そのビット値が“1”(セット)でなければ、通常の電源投入ではないと判断する。このときには、例えば演出制御基板12に向けて所定の演出制御コマンドを伝送させることなどにより、パチンコ遊技機1における電源投入直後に大当り遊技状態とすることを狙った不正信号の入力行為が行われた可能性がある旨を、演出装置などにより報知させてもよい。また、内部情報データCIF2を用いた動作の第2例として、パチンコ遊技機1が電源投入時にのみ確変状態を報知し、通常時には確変状態を報知しない場合に、電源投入時に遊技制御用マイクロコンピュータ100のCPU505などが内部情報データCIF2のビット値をチェックして、そのビット値が“1”(セット)でなければ、遊技状態の報知を行わないようにしてもよい。
内部情報レジスタCIFのビット番号[1]に格納される内部情報データCIF1は、直前に発生したリセット要因がウォッチドッグタイマ(WDT)のタイムアウトによるユーザリセットであるか否かを示すWDTタイムアウト指示である。図12(B)に示す例では、直前のリセット要因がウォッチドッグタイマのタイムアウトによるユーザリセットではないときに(タイムアウト未発生)、内部情報データCIF1のビット値が“0”となる一方、ウォッチドッグタイマのタイムアウトによるユーザリセットであるときに(タイムアウト発生)、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[0]に格納される内部情報データCIF0は、直前に発生したリセット要因が指定エリア外走行禁止(IAT)によるユーザリセットであるか否かを示すIAT発生指示である。図12(B)に示す例では、直前のリセット要因が指定エリア外走行の発生によるユーザリセットではないときに(IAT発生なし)、内部情報データCIF0のビット値が“0”となる一方、指定エリア外走行の発生によるユーザリセットであるときに(IAT発生あり)、そのビット値が“1”となる。
遊技制御用マイクロコンピュータ100が備えるCPU505は、ROM506から読み出した制御コードに基づいてユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を実行することにより、パチンコ遊技機1における遊技制御を実行する制御用CPUである。こうした遊技制御が実行されるときには、CPU505がROM506から固定データを読み出す固定データ読出動作や、CPU505がRAM507に各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPU505がRAM507に一時記憶されている各種の変動データを読み出す変動データ読出動作、CPU505が外部バスインタフェース501やPIP510、シリアル通信回路511などを介して遊技制御用マイクロコンピュータ100の外部から各種信号の入力を受け付ける受信動作、CPU505が外部バスインタフェース501やシリアル通信回路511などを介して遊技制御用マイクロコンピュータ100の外部へと各種信号を出力する送信動作等も行われる。
このように、遊技制御用マイクロコンピュータ100では、CPU505がROM506に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ100(又はCPU505)が実行する(又は処理を行う)ということは、具体的には、CPU505がプログラムに従って制御を実行することである。このことは、主基板11以外の他の基板に搭載されているマイクロコンピュータについても同様である。
遊技制御用マイクロコンピュータ100が備えるROM506には、ユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードや固定データ等が記憶されている。また、ROM506には、セキュリティチェックプログラム506Aが記憶されている。CPU505は、パチンコ遊技機1の電源投入やシステムリセットの発生に応じて遊技制御用マイクロコンピュータ100がセキュリティモードに移行したときに、ROM506に記憶されたセキュリティチェックプログラム506Aを読み出し、ROM506の記憶内容が変更されたか否かを検査するセキュリティチェック処理を実行する。なお、セキュリティチェックプログラム506Aは、ROM506とは異なる内蔵メモリに記憶されてもよい。また、セキュリティチェックプログラム506Aは、例えば外部バスインタフェース501を介して遊技制御用マイクロコンピュータ100に外付けされた外部メモリの記憶内容を検査するセキュリティチェック処理に対応したものであってもよい。
遊技制御用マイクロコンピュータ100が備えるRAM507は、ゲーム制御用のワークエリアを提供する。ここで、RAM507の少なくとも一部は、電源基板10において作成されるバックアップ電源によってバックアップされているバックアップRAMであればよい。すなわち、パチンコ遊技機1への電力供給が停止しても、所定期間はRAM507の少なくとも一部の内容が保存される。
遊技制御用マイクロコンピュータ100が備えるCTC508は、例えば8ビットのプログラマブルタイマを3チャネル(PTC0−PTC2)内蔵して構成され、リアルタイム割込みの発生や時間計測を可能とするタイマ回路を含んでいる。各プログラマブルタイマPTC0−PTC2は、内部システムクロックSCLKに基づいて生成されたカウントクロックの信号変化(例えばハイレベルからローレベルへと変化する立ち下がりタイミング)などに応じて、タイマ値が更新されるものであればよい。また、CTC508は、例えば8ビットのプログラマブルカウンタを4チャネル(PCC0−PCC3)内蔵してもよい。各プログラマブルカウンタPCC0−PCC3は、内部システムクロックSCLKの信号変化、あるいは、プログラマブルカウンタPCC0−PCC3のいずれかにおけるタイムアウトの発生などに応じて、カウント値が更新されるものであればよい。CTC508は、セキュリティ時間を延長する際の延長時間(可変設定時間)をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタなどを、含んでもよい。あるいは、こうしたフリーランカウンタは、例えばRAM507のバックアップ領域といった、CTC508とは異なる遊技制御用マイクロコンピュータ100の内部回路に含まれてもよい。
遊技制御用マイクロコンピュータ100が備える乱数回路509は、例えば16ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。この実施の形態では、主基板11の側において、例えば図13に示すような特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3、変動パターン決定用の乱数値MR4、普図表示結果決定用の乱数値MR5のそれぞれを示す数値データが、カウント(更新)可能に制御される。なお、遊技効果を高めるために、これら以外の乱数値が用いられてもよい。こうした遊技の進行を制御するために用いられる乱数は、遊技用乱数ともいう。CPU505は、乱数回路509から抽出した数値データに基づき、例えば図34に示す遊技制御カウンタ設定部594に設けられたランダムカウンタといった、乱数回路509とは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工あるいは更新することで、乱数値MR1〜MR5の全部又は一部を示す数値データをカウントするようにしてもよい。あるいは、CPU505は、乱数回路509を用いることなく、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタのみを用いて、ソフトウェアによって乱数値MR1〜MR5を示す数値データの一部をカウント(更新)するようにしてもよい。一例として、ハードウェアとなる乱数回路509からCPU505により抽出された数値データを、ソフトウェアにより加工することで、特図表示結果決定用の乱数値MR1を示す数値データが更新され、それ以外の乱数値MR2〜MR5を示す数値データは、CPU505がランダムカウンタなどを用いてソフトウェアにより更新すればよい。
特図表示結果決定用の乱数値MR1は、特図ゲームにおける特別図柄などの可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、決定するために用いられる乱数値である。例えば、特図表示結果決定用の乱数値MR1は、「0」〜「65535」の範囲の値をとる。大当り種別決定用の乱数値MR2は、可変表示結果を「大当り」とする場合に、大当り種別を複数種類のいずれかに決定するために用いられる乱数値である。例えば、大当り種別決定用の乱数値MR2は、「0」〜「99」の範囲の値をとる。
変動パターン種別決定用の乱数値MR3は、特別図柄や飾り図柄の可変表示における変動パターン種別を、予め用意された複数種類のいずれかに決定するために用いられる乱数値であり、例えば「0」〜「251」の範囲の値をとる。変動パターン決定用の乱数値MR4は、特別図柄や飾り図柄の可変表示における変動パターンを、予め用意された複数種類のいずれかに決定するために用いられる乱数値であり、例えば「0」〜「997」の範囲の値をとる。普図表示結果決定用の乱数値MR5は、普通図柄表示器20による普図ゲームにおける可変表示結果を「普図当り」とするか「普図ハズレ」とするかなどの決定を行うために用いられる乱数値であり、例えば「3」〜「13」の範囲の値をとる。すなわち、普図表示結果決定用の乱数値MR5は、普図ゲームにおける可変表示結果に基づき普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)不能な状態(通常開放状態など)から遊技球が通過(進入)可能な状態(拡大開放状態など)へと変化させるか否かなどの決定を行うために用いられる。
図14は、乱数回路509の一構成例を示すブロック図である。乱数回路509は、図14に示すように、周波数監視回路551、クロック用フリップフロップ552、乱数生成回路553、スタート値設定回路554、フリーランカウンタ554A、乱数列変更回路555、乱数列変更設定回路556、ラッチ用フリップフロップ557A、557B、乱数ラッチセレクタ558A、558B、乱数値レジスタ559A、559Bを備えて構成される。なお、乱数値レジスタ559Aと乱数値レジスタ559Bはそれぞれ、図8(B)に示すような遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれる乱数値レジスタR1D(アドレス2038H−2039H)と乱数値レジスタR2D(アドレス203AH−203BH)に対応している。
周波数監視回路551は、乱数用クロック生成回路112により生成された乱数用クロックRCLKの乱数回路509に対する入力状態を監視して、その異常発生を検知するための回路である。周波数監視回路551は、例えば乱数用外部クロック端子ERCに入力される発振信号を監視して、内部システムクロックSCLKとの比較により、セキュリティ時間設定KSESのビット番号[7−6]における設定内容(図11(B)参照)に応じた周波数異常を検知したときに、内部情報レジスタCIFのビット番号[4]を“1”にセットする。この実施の形態では、乱数用外部クロック端子ERCに乱数用クロック生成回路112が生成した乱数用クロックRCLKが入力される。
クロック用フリップフロップ552は、例えばD型フリップフロップなどを用いて構成され、乱数用外部クロック端子ERCからの乱数用クロックRCLKがクロック端子CKに入力される。また、クロック用フリップフロップ552では、逆相出力端子(反転出力端子)QバーがD入力端子に接続されている。そして、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKを出力する一方で、逆相出力端子(反転出力端子)Qバーからラッチ用クロックRC0を出力する。この場合、クロック用フリップフロップ552は、クロック端子CKに入力される乱数用クロックRCLKにおける信号状態が所定の変化をしたときに、正相出力端子(非反転出力端子)Q及び逆相出力端子(反転出力端子)Qバーからの出力信号における信号状態を変化させる。例えば、クロック用フリップフロップ552は、乱数用クロックRCLKの信号状態がローレベルからハイレベルへと変化する立ち上がりのタイミング、あるいは、乱数用クロックRCLKの信号状態がハイレベルからローレベルへと変化する立ち下がりのタイミングのうち、いずれか一方のタイミングにて、D入力端子における入力信号を取り込む。このとき、正相出力端子(非反転出力端子)Qからは、D入力端子にて取り込まれた入力信号が反転されることなく出力される一方で、逆相出力端子(反転出力端子)Qバーからは、D入力端子にて取り込まれた入力信号が反転されて出力される。こうして、クロック用フリップフロップ552の正相出力端子(非反転出力端子)Qからは乱数用クロックRCLKにおける発振周波数(例えば20MHz)の1/2となる発振周波数(例えば10MHz)を有する乱数更新クロックRGKが出力される一方、逆相出力端子(反転出力端子)Qバーからは乱数更新クロックRGKの逆相信号(反転信号)、すなわち乱数更新クロックRGKと同一周波数で乱数更新クロックRGKとは位相がπ(=180°)だけ異なるラッチ用クロックRC0が出力される。
クロック用フリップフロップ552から出力された乱数更新クロックRGKは、乱数生成回路553のクロック端子に入力されて、乱数生成回路553におけるカウント値の歩進に用いられる。また、クロック用フリップフロップ552から出力されたラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、ラッチ用クロックRC1とラッチ用クロックRC2とは、互いに同一の発振周波数を有し、互いに共通の周期で信号状態が変化することになる。ここで、ラッチ用クロックRC1やラッチ用クロックRC2における信号状態の変化としては、例えばローレベルからハイレベルへと変化する立ち上がりや、ハイレベルからローレベルへと変化する立ち下がりなどがある。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力されて、始動入賞時ラッチ信号SL1の生成に用いられる乱数取得用クロックとなる。ラッチ用クロックRC2は、ラッチ用フリップフロップ557Bのクロック端子CKに入力されて、始動入賞時ラッチ信号SL2の生成に用いられる乱数取得用クロックとなる。
ここで、乱数用クロックRCLKの発振周波数と、制御用クロック生成回路111によって生成される制御用クロックCCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。一例として、制御用クロックCCLKの発振周波数が11.0MHzである一方で、乱数用クロックRCLKの発振周波数は9.7MHzであればよい。そのため、乱数更新クロックRGKやラッチ用クロックRC1、RC2はいずれも、CPU505に供給される制御用クロックCCLKとは異なる周期で信号状態が変化する発振信号となる。すなわち、クロック用フリップフロップ552は、乱数用クロック生成回路112によって生成された乱数用クロックRCLKに基づき、カウント値を更新するための乱数更新クロックRGKや、複数の乱数取得用クロックとなるラッチ用クロックRC1、RC2として、制御用クロックCCLKや内部システムクロックSCLK(制御用クロックCCLKを2分周したもの)とは異なる周期で信号状態が変化する発振信号を生成する。
乱数生成回路553は、例えば16ビットのカウンタなどから構成され、クロック用フリップフロップ552から出力される乱数更新クロックRGKなどの入力に基づき、数値データを更新可能な所定の範囲において所定の初期値から所定の最終値まで循環的に更新する回路である。例えば乱数生成回路553は、所定のクロック端子への入力信号である乱数更新クロックRGKにおける立ち下がりエッジに応答して、「0」から「65535」までの範囲内で設定された初期値から「65535」まで1ずつ加算するように数値データをカウントアップして行く。そして、「65535」までカウントアップした後には、「0」から初期値よりも1小さい最終値となる数値まで1ずつ加算するようにカウントアップすることで、数値データを循環的に更新する。
スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]におけるビット値(図10(B)参照)に応じて、乱数生成回路553により生成されるカウント値におけるスタート値を設定する。例えば、スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]が“00”であればスタート値をデフォルト値である「0000H」に設定し、“10”であればIDナンバーに基づく値に設定し、“01”であればシステムリセット毎に変更されるフリーランカウンタ554Aにおけるカウント値に基づく値に設定し、“11”であればIDナンバーとフリーランカウンタ554Aにおけるカウント値とに基づく値に設定する。図14に示す構成例では、乱数回路509にフリーランカウンタ554Aが内蔵されている。そして、スタート値をシステムリセット毎に変更する場合には、初期設定時にフリーランカウンタ554Aのカウント値をそのまま用いること、あるいは、そのカウント値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、スタート値がランダムに決定されればよい。フリーランカウンタ554Aは、例えば遊技制御用マイクロコンピュータ100のRAM507におけるバックアップ領域といった、主基板11におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであればよい。あるいは、フリーランカウンタ554Aは、RAM507におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされてもよい。こうして、フリーランカウンタ554Aがバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間はフリーランカウンタ554Aにおけるカウント値が保存されることになる。
フリーランカウンタ554Aがバックアップ電源によってバックアップされるものに限定されず、例えばシステムリセットの発生時にフリーランカウンタ554Aのカウント値を所定の内蔵レジスタ(例えば乱数スタート値用レジスタ)に格納し、この内蔵レジスタがバックアップ電源によってバックアップされるようにしてもよい。そして、初期設定時に乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数に代入して得られた値を用いることなどにより、スタート値がランダムに決定されてもよい。この場合、フリーランカウンタ554Aにおけるカウント値を読み出して乱数スタート値用レジスタに格納するタイミングは、システムリセットの発生時に限定されず、予め定められた任意のタイミングとしてもよい。フリーランカウンタ554Aは、乱数回路509に内蔵されて数値データのスタート値をランダムに決定するために用いられる専用のフリーランカウンタであってもよい。すなわち、フリーランカウンタ554Aは、セキュリティ時間を延長する際に延長時間のランダムな決定に用いられるフリーランカウンタとは別個の構成として設けられたものであってもよい。あるいは、フリーランカウンタ554Aとして、遊技制御用マイクロコンピュータ100には内蔵されるが乱数回路509の外部に設けられて、セキュリティ時間を延長する際に延長時間のランダムな決定に用いられるフリーランカウンタと共通のものを用いてもよい。この場合には、数値データのスタート値を決定する処理と、セキュリティ時間中の延長時間をランダムに決定する処理とにおいて、例えばカウント値を代入する演算関数を互いに異ならせること、あるいは、一方の決定処理ではカウント値をそのまま用いるのに対して他方の決定処理ではカウント値を所定の演算関数に代入して得られた値を用いることなどにより、スタート値の決定手法と延長時間の決定手法とを異ならせてもよい。
このように、フリーランカウンタ554Aは、乱数回路509に内蔵されるものに限定されず、例えばCTC508に含まれるものでもよい。あるいは、例えばRAM507のバックアップ領域といった、CTC508とは異なる遊技制御用マイクロコンピュータ100の内部回路に含まれてもよい。また、フリーランカウンタ554Aは、セキュリティ時間を延長する際の延長時間をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタと、同一のカウンタであってもよいし、別個に設けられたカウンタであってもよい。
乱数列変更回路555は、乱数生成回路553により生成された数値データの順列を所定の乱数更新規則に従った順列に変更可能とする回路である。例えば、乱数列変更回路555は、乱数生成回路553から出力される数値データにおけるビットの入れ替えや転置などのビットスクランブル処理を実行する。また、乱数列変更回路555は、例えばビットスクランブル処理に用いるビットスクランブル用キーやビットスクランブルテーブルを変更することなどにより、数値データの順列を変更することができる。
乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値(図10(A)参照)などに応じて、乱数列変更回路555における乱数更新規則を変更する設定を行うための回路である。例えば、乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“00”であれば2周目以降も乱数更新規則を変更しない設定とする一方、“01”であれば2周目以降はソフトウェアでの変更要求に応じて乱数更新規則を変更し、“10”であれば自動で乱数更新規則を変更する。
乱数列変更回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応してソフトウェアによる乱数更新規則の変更を行う場合に、図8(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数列変更レジスタRDSC(アドレス2034H)を用いて、乱数更新規則の変更を制御する。図15(A)は、乱数列変更レジスタRDSCの構成例を示している。図15(B)は、乱数列変更レジスタRDSCに格納される乱数列変更要求データの各ビットにおける設定内容の一例を示している。乱数列変更レジスタRDSCのビット番号[0]に格納される乱数列変更要求データRDSC0は、乱数更新規則をソフトウェアにより変更する場合に、乱数列の変更要求の有無を示している。図15(B)に示す例では、ソフトウェアにより乱数列の変更要求がないときに、乱数列変更要求データRDSC0のビット値が“0”となる一方、乱数列の変更要求があったときには、そのビット値が“1”となる。
図16は、乱数更新規則をソフトウェアにより変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたときに、乱数列変更要求データRDSC0が“1”であることに応答して、乱数更新規則を変更する。図16に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。この後、CPU505がROM506に格納されたユーザプログラムを実行することによって、所定のタイミングで乱数列変更レジスタRDSCのビット番号[0]に“1”が書き込まれたものとする。
そして、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応して、乱数列変更設定回路556が乱数列変更要求データRDSC0を読み出し、そのビット値が“1”であることに応答して、乱数更新規則を変更するための設定を行う。このとき、乱数列変更設定回路556は、乱数生成回路553から出力されたカウント値順列RCNが所定の最終値に達したことに応じて、例えば予め用意された複数種類の乱数更新規則のいずれかを選択することなどにより、乱数更新規則を変更する。図16に示す動作例では、乱数列変更回路555が乱数生成回路553から出力されたカウント値順列RCNにおける最終値に対応する数値データ「65535」を出力した後、乱数列変更要求データRDSC0に応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「65535→65534→…→0」を出力する。乱数列変更レジスタRDSCは、乱数列変更設定回路556により乱数列変更要求データRDSC0が読み出されたときに初期化される。そのため、再び乱数列変更レジスタRDSCのビット番号[0]にビット値“1”が書き込まれるまでは、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。
CPU505がROM506に格納されたユーザプログラムを実行することによって、乱数列変更レジスタRDSCのビット番号[0]に再びビット値“1”が書き込まれると、乱数更新規則が再度変更される。図16に示す動作例では、乱数列変更回路555が乱数列RSNにおける最終値に対応する数値データ「0」を出力したときに、乱数列変更要求データRDSC0としてビット値“1”が書き込まれたことに応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「0→2→…→65534→1→…→65535」を出力する。
図17は、乱数更新規則を自動で変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたことに応じて、乱数列変更設定回路556が自動的に乱数更新規則を変更する。図17に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。
そして、乱数変更回路555から出力された乱数列RSNが所定の最終値に達したときに、乱数列変更設定回路556は、予め用意された複数種類の更新規則のうちから予め定められた順序に従って更新規則を選択することにより、更新規則を変更するようにしてもよい。あるいは、乱数列変更設定回路556は、複数種類の更新規則のうちから任意の更新規則を選択することにより、更新規則を変更するようにしてもよい。図17に示す動作例では、1回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。その後、2回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「0→2→…→65534→1→…→65535」となる。図17に示す動作例では、3回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「65534→0→…→32768」となる。4回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「16383→49151→…→49150」となる。5回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「4→3→…→465531」となる。
このように、乱数列変更回路555は、乱数生成回路553から出力されたカウント値順列RCNを、乱数列変更設定回路556の設定により予め定められた乱数更新規則に基づいて変更することで、数値データを所定手順により更新した乱数列RSNを出力することができる。
ラッチ用フリップフロップ557A、557Bはそれぞれ、例えばD型フリップフロップなどを用いて構成される。ラッチ用フリップフロップ557Aでは、D入力端子にPIP510が備える入力ポートP0からの配線が接続され、クロック端子CKにラッチ用クロックRC1を伝送する配線が接続されている。この実施の形態では、入力ポートP0に第1始動口スイッチ22Aからの第1始動入賞信号SS1が入力される。ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち下がりエッジなどに応答して、第1始動入賞信号SS1を取り込み、始動入賞時ラッチ信号SL1として出力する。これにより、ラッチ用フリップフロップ557Aでは、ラッチ用クロックRC1の立ち下がりエッジに同期して、第1始動入賞信号SS1が始動入賞時ラッチ信号SL1として出力される。ラッチ用フリップフロップ557Bでは、D入力端子にPIP510が備える入力ポートP1からの配線が接続され、クロック端子CKにラッチ用クロックRC2を伝送する配線が接続されている。この実施の形態では、入力ポートP1に第2始動口スイッチ22Bからの第2始動入賞信号SS2が入力される。ラッチ用フリップフロップ557Bは、ラッチ用クロックRC2の立ち下がりエッジなどに応答して、第2始動入賞信号SS2を取り込み、始動入賞時ラッチ信号SL2として出力する。これにより、ラッチ用フリップフロップ557Bでは、ラッチ用クロックRC2の立ち下がりエッジに同期して、第2始動入賞信号SS2が始動入賞時ラッチ信号SL2として出力される。
なお、第1始動入賞信号SS1や第2始動入賞信号SS2は、第1始動口スイッチ22Aや第2始動口スイッチ22Bから直接伝送されるものに限定されない。一例として、第1始動口スイッチ22Aからの出力信号や第2始動口スイッチ22Bからの出力信号がオン状態となっている時間を計測し、計測した時間が所定の時間(例えば3ms)になったときに、第1始動入賞信号SS1や第2始動入賞信号SS2を出力するタイマ回路を設けてもよい。
乱数ラッチセレクタ558Aは、ラッチ用フリップフロップ557Aから伝送される始動入賞時ラッチ信号SL1と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号LL1として選択的に出力する回路である。乱数ラッチセレクタ558Bは、ラッチ用フリップフロップ557Bから伝送される始動入賞時ラッチ信号SL2と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号LL1として選択的に出力する回路である。乱数ラッチセレクタ558Aと乱数ラッチセレクタ558Bは、図8(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数値取込レジスタRDLT(アドレス2032H)と、乱数ラッチ選択レジスタRDLS(アドレス2030H)とを用いて、乱数ラッチ信号LL1や乱数ラッチ信号LL2の出力を制御する。乱数値取込レジスタRDLTは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、ソフトウェアにより乱数値レジスタ559Aや乱数値レジスタ559Bに取り込むために用いられるレジスタである。乱数ラッチ選択レジスタRDLSは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、乱数値レジスタ559Aや乱数値レジスタ559Bに、ソフトウェアにより取り込むか、入力ポートP0、P1への信号入力により取り込むかの取込方法を示すレジスタである。
図18(A)は、乱数値取込レジスタRDLTの構成例を示している。図18(B)は、乱数値取込レジスタRDLTに格納される乱数値取込指定データの各ビットにおける設定内容の一例を示している。乱数値取込レジスタRDLTのビット番号[1]に格納される乱数値取込指定データRDLT1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに対する乱数値取込指定の有無を示している。図18(B)に示す例では、ソフトウェアにより乱数値レジスタR2Dに対する乱数値の取込指定がないときに、乱数値取込指定データRDLT1のビット値が“0”となる一方、乱数値の取込指定があったときには、そのビット値が“1”となる。乱数値取込レジスタRDLTのビット番号[0]に格納される乱数値取込指定データRDLT0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに対する乱数値取込指定の有無を示している。図18(B)に示す例では、ソフトウェアにより乱数値レジスタR1Dに対する乱数値の取込指定がないときに、乱数値取込指定データRDLT0のビット値が“0”となる一方、乱数値の取込指定があったときには、そのビット値が“1”となる。
図19(A)は、乱数ラッチ選択レジスタRDLSの構成例を示している。図19(B)は、乱数ラッチ選択レジスタRDLSに格納される乱数ラッチ選択データの各ビットにおける設定内容の一例を示している。乱数ラッチ選択レジスタRDLSのビット番号[1]に格納される乱数ラッチ選択データRDLS1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bへの取込方法を示している。図19(B)に示す例では、ソフトウェアによる乱数値取込指定データRDLT1の書き込みに応じて乱数値となる数値データを乱数値レジスタR2Dに取り込む場合に、乱数ラッチ選択データRDLS1のビット値を“0”とする。これに対して、入力ポートP1への信号入力に応じて乱数値となる数値データを乱数値レジスタR2Dに取り込む場合には、乱数ラッチ選択データRDLS1のビット値を“1”とする。乱数ラッチ選択レジスタRDLSのビット番号[0]に格納される乱数ラッチ選択データRDLS0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aへの取込方法を示している。図19(B)に示す例では、ソフトウェアによる乱数値取込指定データRDLT0の書き込みに応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合に、乱数ラッチ選択データRDLS0のビット値を“0”とする。これに対して、入力ポートP0への信号入力に応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合には、乱数ラッチ選択データRDLS0のビット値を“1”とする。
乱数値レジスタ559A、559Bはそれぞれ、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として格納するレジスタである。図20(A)及び(B)は、乱数値レジスタR1Dとなる乱数値レジスタ559Aの構成例を示している。なお、図20(A)は、乱数値レジスタR1Dの下位バイトR1D(L)を示し、図20(B)は、乱数値レジスタR1Dの上位バイトR1D(H)を示している。図20(C)及び(D)は、乱数値レジスタR2Dとなる乱数値レジスタ559Bの構成例を示している。なお、図20(C)は、乱数値レジスタR2Dの下位バイトR2D(L)を示し、図20(D)は、乱数値レジスタR2Dの上位バイトR2D(H)を示している。乱数値レジスタ559A、559Bはいずれも16ビット(2バイト)のレジスタであり、16ビットの乱数値を格納することができる。
乱数値レジスタ559Aは、乱数ラッチセレクタ558Aから供給される乱数ラッチ信号LL1がオン状態となったことに応答して、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ559Aは、CPU505から供給されるレジスタリード信号RRS1がオン状態となったときに、読出可能(イネーブル)状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号RRS1がオフ状態であるときには、常に同じ値(例えば「65535H」など)を出力して、読出不能(ディセーブル)状態となればよい。また、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態である場合に、レジスタリード信号RRS1を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態となるより前にレジスタリード信号RRS1がオン状態となっている場合に、乱数ラッチ信号LL1を受信不可能な状態となるようにしてもよい。
乱数値レジスタ559Bは、乱数ラッチセレクタ558Bから供給される乱数ラッチ信号LL2がオン状態となったことに応答して、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ559Bは、CPU505から供給されるレジスタリード信号RRS2がオン状態となったときに、読出可能(イネーブル)状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号RRS2がオフ状態であるときには、常に同じ値(例えば「65535H」など)を出力して、読出不能(ディセーブル)状態となればよい。また、乱数値レジスタ559Bは、乱数ラッチ信号LL2がオン状態である場合に、レジスタリード信号RRS2を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ559Bは、乱数ラッチ信号LL2がオン状態となるより前にレジスタリード信号RRS2がオン状態となっている場合に、乱数ラッチ信号LL2を受信不可能な状態となるようにしてもよい。
乱数値レジスタ559Aと乱数値レジスタ559Bは、図8(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数ラッチフラグレジスタRDFM(アドレス2033H)と、乱数割込み制御レジスタRDIC(アドレス2031H)とを用いて、乱数ラッチ時の動作管理や割込み制御を可能にする。乱数ラッチフラグレジスタRDFMは、乱数値レジスタ559Aと乱数値レジスタ559Bのそれぞれに対応して、乱数値となる数値データがラッチされたか否かを示す乱数ラッチフラグを格納するレジスタである。例えば、乱数ラッチフラグレジスタRDFMでは、乱数値レジスタ559Aと乱数値レジスタ559Bのそれぞれに対応した乱数ラッチフラグの状態(オン又はオフ)を示すデータが格納され、乱数値レジスタ559Aや乱数値レジスタ559Bに数値データが取り込まれて格納されたときに対応する乱数ラッチフラグ(ビット値のデータ)がオン状態(第1の値)となり新たな数値データの格納が制限される一方、乱数値レジスタ559Aや乱数値レジスタ559Bに格納された数値データが読み出されたときに対応する乱数ラッチフラグ(ビット値のデータ)がオフ状態(第2の値)となり新たな数値データの格納が許可される。乱数割込み制御レジスタRDICは、乱数値レジスタ559Aや乱数値レジスタ559Bに乱数値となる数値データがラッチされたときに発生する割込みの許可/禁止を設定するレジスタである。
図21(A)は、乱数ラッチフラグレジスタRDFMの構成例を示している。図21(B)は、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータの各ビットにおける設定内容の一例を示している。乱数ラッチフラグレジスタRDFMのビット番号[1]に格納される乱数ラッチフラグデータRDFM1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図21(B)に示す例では、乱数値レジスタR2Dに数値データが取り込まれていないときに(乱数値取込なし)、乱数ラッチフラグデータRDFM1のビット値が“0”(第2の値)となって乱数ラッチフラグがオフ状態にクリアされる一方、数値データが取り込まれたときには(乱数値取込あり)、そのビット値が“1”(第1の値)となって乱数ラッチフラグがオン状態にセットされる。乱数ラッチフラグレジスタRDFMのビット番号[0]に格納される乱数ラッチフラグデータRDFM0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図21(B)に示す例では、乱数値レジスタR1Dに数値データが取り込まれていないときに(乱数値取込なし)、乱数ラッチフラグデータRDFM0のビット値が“0”(第2の値)となって乱数ラッチフラグがオフ状態にクリアされる一方、数値データが取り込まれたときには(乱数値取込あり)、そのビット値が“1”(第1の値)となって乱数ラッチフラグがオン状態にセットされる。
各乱数ラッチフラグがオンであるときには、各乱数ラッチフラグと対応付けられた乱数値レジスタR1Dあるいは乱数値レジスタR2Dにおける新たな数値データの格納が制限(禁止)される。すなわち、乱数値レジスタR1Dに数値データが取り込まれたか否かを示す乱数ラッチフラグデータRDFM0のビット値が“1”となって乱数ラッチフラグがオン状態であるときには、乱数値レジスタR1Dに格納された数値データを変更することができず、新たな数値データの格納(取り込み)が制限(禁止)される。また、乱数値レジスタR2Dに乱数値データが取り込まれたか否かを示す乱数ラッチフラグデータRDFM1のビット値が“1”となって乱数ラッチフラグがオン状態であるときには、乱数値レジスタR2Dに格納された数値データを変更することができず、新たな数値データの格納(取り込み)が制限(禁止)される。これに対して、各乱数ラッチフラグがオフであるときには、各乱数ラッチフラグと対応付けられた乱数値レジスタR1Dあるいは乱数値レジスタR2Dにおける新たな数値データの格納が許可される。すなわち、乱数ラッチフラグデータRDFM0のビット値が“0”となって乱数ラッチフラグがオフ状態であるときには、乱数値レジスタR1Dに格納された数値データを変更することができ、新たな数値データの格納(取り込み)が許可される。また、乱数ラッチフラグデータRDFM1のビット値が“0”となって乱数ラッチフラグがオフ状態であるときには、乱数値レジスタR2Dに格納された数値データを変更することができ、新たな数値データの格納(取り込み)が許可される。
なお、乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値は、“0”となることで対応する乱数ラッチフラグがオフ状態にクリアされる一方で“1”となることでオン状態にセットされる正論理のものに限定されず、“1”となることで対応する乱数ラッチフラグがオフ状態となる一方で“0”となることでオン状態となる負論理のものであってもよい。すなわち、各乱数ラッチフラグは、対応する乱数値レジスタR1D又は乱数値レジスタR2Dに数値データが格納されたときにオン状態となり新たな数値データの格納が制限(禁止)される一方で、対応する乱数値レジスタR1D又は乱数値レジスタR2Dの読み出しが行われたときにオフ状態となり新たな数値データの格納が許可されるものであればよい。
図22(A)は、乱数割込み制御レジスタRDICの構成例を示している。図22(B)は、乱数割込み制御レジスタRDICに格納される乱数割込み制御データの各ビットにおける設定内容の一例を示している。乱数割込み制御レジスタRDICのビット番号[1]に格納される乱数割込み制御データRDIC1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図22(B)に示す例では、乱数値レジスタR2Dへの取込時における割込みを禁止する場合に(割込み禁止)、乱数割込み制御データRDIC1のビット値を“0”とする一方、この割込みを許可する場合には(割込み許可)、そのビット値を“1”とする。乱数割込み制御レジスタRDICのビット番号[0]に格納される乱数割込み制御データRDIC0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図22(B)に示す例では、乱数値レジスタR1Dへの取込時における割込みを禁止する場合に(割込み禁止)、乱数割込み制御データRDIC0のビット値を“0”とする一方、この割込みを許可する場合には(割込み許可)、そのビット値を“1”とする。
図6に示す構成例では、乱数回路509が遊技制御用マイクロコンピュータ100に内蔵されている。これに対して、例えば図23に示すように、乱数回路509は、遊技制御用マイクロコンピュータ100とは異なる乱数回路チップとして、遊技制御用マイクロコンピュータ100に外付けされるものであってもよい。この場合、第1始動口スイッチ22Aからの第1始動入賞信号SS1をスイッチ回路114の内部にて分岐し、一方を遊技制御用マイクロコンピュータ100が備えるPIP510の入力ポートP0へと入力させて、他方を乱数回路509が備えるラッチ用フリップフロップ557AのD入力端子へと入力させればよい。また、第2始動口スイッチ22Bからの第2始動入賞信号SS2をスイッチ回路114の内部にて分岐し、一方を遊技制御用マイクロコンピュータ100が備えるPIP510の入力ポートP1へと入力させて、他方を乱数回路509が備えるラッチ用フリップフロップ557BのD入力端子へと入力させればよい。遊技制御用マイクロコンピュータ100との間では、例えば遊技制御用マイクロコンピュータ100が備えるクロック回路502からシステムクロック出力端子CLKOを介して出力された内部システムクロックSCLKを乱数回路509が備える周波数監視回路551やクロック用フリップフロップ552へと入力させたり、遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501に接続されたアドレスバスやデータバス、制御信号線などを介して、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データの読み出しなどが行われたりすればよい。
また、図23に示すように乱数回路509が遊技制御用マイクロコンピュータ100に外付けされる場合にも、各乱数ラッチフラグの状態(オン/オフ)に応じて、乱数値レジスタR1Dや乱数値レジスタR2Dへの新たな数値データの格納が制限(禁止)あるいは許可されるようにすればよい。図8(B)に示す内蔵レジスタのうち、例えば乱数ラッチ選択レジスタRDLSや乱数割込み制御レジスタRDIC、乱数値取込レジスタRDLT、乱数ラッチフラグレジスタRDFM、乱数列変更レジスタRDSC、乱数値レジスタR1D、乱数値レジスタR2Dといった、乱数回路509が使用する各種レジスタは、遊技制御用マイクロコンピュータ100には内蔵されず、遊技制御用マイクロコンピュータ100に外付けされた乱数回路509に内蔵されるようにしてもよい。この場合、遊技制御用マイクロコンピュータ100のCPU505は、例えば外部バスインタフェース501などを介して、乱数回路509に内蔵された各種レジスタの書き込みや読み出しを行うようにすればよい。
図6に示す遊技制御用マイクロコンピュータ100が備えるPIP510は、例えば6ビット幅の入力専用ポートであり、専用端子となる入力ポートP0〜入力ポートP2と、機能兼用端子となる入力ポートP3〜入力ポートP5とを含んでいる。入力ポートP3は、CPU505等に接続される外部マスカブル割込み端子XINTと兼用される。入力ポートP4は、CPU505等に接続される外部ノンマスカブル割込み端子XNMIと兼用される。入力ポートP5は、シリアル通信回路511が使用する第1チャネル受信端子RXAと兼用される。入力ポートP3〜入力ポートP5の使用設定は、プログラム管理エリアに記憶される機能設定KFCSにより指示される。
PIP510は、図8(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、入力ポートレジスタPI(アドレス2090H)などを用いて、入力ポートP0〜入力ポートP5の状態管理等を行う。入力ポートレジスタPIは、入力ポートP0〜入力ポートP5のそれぞれに対応して、外部信号の入力状態を示すビット値が格納されるレジスタである。
図24(A)は、入力ポートレジスタPIの構成例を示している。図24(B)は、入力ポートレジスタPIに格納される入力ポートデータの各ビットにおける設定内容の一例を示している。入力ポートレジスタPIのビット番号[5]に格納される入力ポートデータPI5は、第1チャネル受信端子RXAと兼用される入力ポートP5における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[4]に格納される入力ポートデータPI4は、外部ノンマスカブル割込み端子XNMIと兼用される入力ポートP4における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[3]に格納される入力ポートデータPI3は、外部マスカブル割込み端子XINTと兼用される入力ポートP3における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[2]に格納される入力ポートデータPI2は、入力ポートP2における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[1]に格納される入力ポートデータPI1は、入力ポートP1における端子状態(オン/オフ)を示している。入力ポートレジスタPIのビット番号[0]に格納される入力ポートデータPI0は、入力ポートP0における端子状態(オン/オフ)を示している。
遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511は、例えば全二重、非同期、標準NRZ(Non Return to Zero)フォーマットで通信データを取扱う回路である。一例として、シリアル通信回路511は、外部回路との間にて双方向でシリアルデータを送受信可能な第1チャネル送受信回路と、外部回路との間にて単一方向でシリアルデータを送信のみが可能な第2チャネル送信回路とを含んでいればよい。シリアル通信回路511が備える第1チャネル送受信回路は、払出制御基板15に搭載された払出制御用マイクロコンピュータ150との間における双方向のシリアル通信に使用されてもよい。シリアル通信回路511が備える第2チャネル送信回路は、演出制御基板12に搭載された演出制御用マイクロコンピュータ120との間における単一方向(送信のみ)のシリアル通信に使用されてもよい。これにより、演出制御基板12の側から主基板11に対する信号入力を禁止して、不正行為を防止することができる。
シリアル通信回路511では、例えばオーバーランエラー、ブレークコードエラー、フレーミングエラー、パリティエラーといった、4種類のエラーが通信データの受信時に発生することがあり、いずれかのエラーが発生したときに、受信割込みを発生させることができればよい。オーバーランエラーは、受信済みの通信データがユーザプログラムによってリードされるより前に、次の通信データを受信してしまった場合に発生するエラーである。ブレークコードエラーは、通信データの受信中に所定のブレークコードが検出されたとき発生するエラーである。フレーミングエラーは、受信した通信データにおけるストップビットが“0”である場合に発生するエラーである。パリティエラーは、パリティ機能を使用する設定とした場合、受信した通信データのパリティが、予め指定したパリティと一致しない場合に発生するエラーである。
シリアル通信回路511は、第1割込み制御回路と、第2割込み制御回路とを含んでいてもよい。第1割込み制御回路は、シリアル通信回路511に含まれる第1チャネル送受信回路における割込み発生因子を管理して、通信割込み要求を制御するための回路である。第1割込み制御回路が制御する割込みには、第1チャネル送信割込みと、第1チャネル受信割込みとがある。第1チャネル送信割込みには、送信完了による割込みや、送信データエンプティによる割込みが含まれている。第1チャネル受信割込みには、受信データフルによる割込みや、ブレークコードエラー、オーバーランエラー、フレーミングエラー、パリティエラーといった受信時エラーの発生による割込みが含まれている。第2割込み制御回路は、シリアル通信回路511に含まれる第2チャネル受信回路における割込み発生因子を管理して、通信割込み要求を制御するための回路である。第2割込み制御回路が制御する割込みは、第2チャネル送信割込みである。第2チャネル送信割込みには、送信完了による割込みや、送信データエンプティによる割込みが含まれている。
遊技制御用マイクロコンピュータ100が備えるアドレスデコード回路512は、遊技制御用マイクロコンピュータ100の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、遊技制御用マイクロコンピュータ100の内部回路、あるいは、周辺デバイスとなる外部装置を、選択的に有効動作させて、CPU505からのアクセスが可能となる。
遊技制御用マイクロコンピュータ100が備えるROM506には、ゲーム制御用のユーザプログラムやセキュリティチェックプログラム506Aとなる制御コードの他に、遊技の進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ROM506には、CPU505が各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ROM506には、CPU505が主基板11から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータや、飾り図柄の変動パターンを複数種類格納する変動パターンテーブルを構成するテーブルデータなどが記憶されている。
図25は、飾り図柄の変動パターンを例示する説明図である。この実施の形態では、可変表示結果が「ハズレ」となる場合のうち、飾り図柄の可変表示態様が「非リーチ」である場合と「リーチ」である場合のそれぞれに対応して、また、可変表示結果が「大当り」となる場合のうち、大当り種別が「非確変」又は「確変」である場合と「突確」である場合、さらには、可変表示結果が「小当り」となる場合などに対応して、複数の変動パターンが予め用意されている。なお、可変表示結果が「ハズレ」で飾り図柄の可変表示態様が「非リーチ」である場合に対応した変動パターンは、非リーチ変動パターン(「非リーチハズレ変動パターン」ともいう)と称され、可変表示結果が「ハズレ」で飾り図柄の可変表示態様が「リーチ」である場合に対応した変動パターンは、リーチ変動パターン(「リーチハズレ変動パターン」ともいう)と称される。また、非リーチ変動パターンとリーチ変動パターンは、可変表示結果が「ハズレ」となる場合に対応したハズレ変動パターンに含まれる。可変表示結果が「大当り」や「小当り」である場合に対応した変動パターンは、当り変動パターンと称される。
図25に示すように、この実施の形態では、非リーチ変動パターンとして、変動パターンPA1−1〜変動パターンPA1−4が、予め用意されている。また、リーチ変動パターンとして、変動パターンPA2−1、変動パターンPA2−2、変動パターンPB2−1、変動パターンPB2−2、変動パターンPA3−1、変動パターンPA3−2、変動パターンPB3−1、変動パターンPB3−2が、予め用意されている。可変表示結果が「大当り」で大当り種別が「非確変」又は「確変」となる場合に対応した当り変動パターンとしては、変動パターンPA4−1、変動パターンPA4−2、変動パターンPB4−1、変動パターンPB4−2、変動パターンPA5−1、変動パターンPA5−2、変動パターンPB5−1、変動パターンPB5−2が、予め用意されている。可変表示結果が「大当り」で大当り種別が「突確」となる場合や、可変表示結果が「小当り」となる場合に対応した当り変動パターンとしては、変動パターンPC1−1〜変動パターンPC1−3が、予め用意されている。さらに、可変表示結果が「大当り」で大当り種別が「突確」となる場合にのみ対応した当り変動パターンとして、変動パターンPC1−4及び変動パターンPC1−5が、予め用意されている。
図26は、この実施の形態における飾り図柄の変動パターン種別を示している。図25に示す各変動パターンは、図26に示す複数の変動パターン種別のうち、少なくとも1つの変動パターン種別に含まれている。すなわち、各変動パターン種別は、例えば飾り図柄の可変表示中に実行される演出動作などに基づいて分類(グループ化)された1つ又は複数の変動パターンを含むように構成されていればよい。一例として、複数の変動パターンをリーチ演出の種類(演出態様)で分類(グループ化)して、飾り図柄の可変表示状態がリーチ状態とならない変動パターンが含まれる変動パターン種別と、ノーマルリーチを伴う変動パターンが含まれる変動パターン種別と、スーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴う変動パターンが含まれる変動パターン種別とに分ければよい。他の一例として、複数の変動パターンを「擬似連」の可変表示演出の有無や擬似連変動(再変動)の実行回数で分類(グループ化)して、「擬似連」の可変表示演出を実行しない変動パターンが含まれる変動パターン種別と、「擬似連」の可変表示演出にて擬似連変動(再変動)の実行回数を1回とする変動パターンが含まれる変動パターン種別と、「擬似連」の可変表示演出にて擬似連変動(再変動)の実行回数を2回以上とする変動パターンが含まれる変動パターン種別とに分ければよい。さらに他の一例として、複数の変動パターンを「擬似連」や「滑り」などの特定演出の有無、あるいは、飾り図柄の可変表示時間などに応じて、分類(グループ化)してもよい。複数の変動パターン種別のうちには、共通の変動パターンを含んで構成されたものがあってもよい。
図26に示す例では、可変表示結果が「ハズレ」で「非リーチ」の可変表示態様となる場合に対応して、変動パターン種別CA1−1〜変動パターン種別CA1−3が、予め用意されている。また、可変表示結果が「ハズレ」で「リーチ」の可変表示態様となる場合に対応して、変動パターン種別CA2−1〜変動パターン種別CA2−4が、予め用意されている。可変表示結果が「大当り」で「非確変」又は「確変」の可変表示態様(大当り種別)に対応して、変動パターン種別CA3−1〜変動パターン種別CA3−3が、予め用意されている。可変表示結果が「大当り」で「突確」の可変表示態様(大当り種別)である場合や可変表示結果が「小当り」である場合に対応して、変動パターン種別CA4−1が、予め用意されている。さらに、可変表示結果が「大当り」で「突確」の可変表示態様(大当り種別)である場合のみに対応して、変動パターン種別CA4−2が、予め用意されている。
変動パターン種別CA1−1は、特別図柄や飾り図柄の可変表示時間が短縮されず、また、「擬似連」や「滑り」などの可変表示演出が実行されない「短縮なし」の変動パターン種別であり、「短縮なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA1−2は、例えば通常状態にて合計保留記憶数が「3」以上であることや、確変状態又は時短状態にて合計保留記憶数が「2」以上であることに対応して、特別図柄や飾り図柄の可変表示時間が短縮されて、「擬似連」や「滑り」などの特定演出が実行されない「短縮あり」の変動パターン種別であり、「短縮あり」と予め対応付けられた変動パターンを含んでいる。なお、通常状態であるときに可変表示時間が短縮される場合に対応した変動パターン種別と、確変状態又は時短状態であるときに可変表示時間が短縮される場合に対応した変動パターン種別とを、別個に設けるようにしてもよい。また、通常状態であるときに、合計保留記憶数が「3」で可変表示時間が短縮される場合に対応した変動パターン種別と、合計保留記憶数が「4」で可変表示時間が短縮される場合に対応した変動パターン種別とを、別個に設けるようにしてもよい。変動パターン種別CA1−3は、可変表示態様が「非リーチ」となる場合に「擬似連」や「滑り」の特定演出が実行される「滑り、擬似連」の変動パターン種別であり、「滑り、擬似連」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA2−1は、「擬似連」の特定演出が実行されずに、飾り図柄の可変表示状態をリーチ状態とした後に通常のリーチ演出となるノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連なし」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA2−2は、「擬似連」の特定演出における擬似連変動(再変動)の実行回数が1回であり、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連変動1回」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連変動1回」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA2−3は、「擬似連」の特定演出における擬似連変動(再変動)の実行回数が2回であり、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連変動2回」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連変動2回」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA2−4は、飾り図柄の可変表示状態をリーチ状態とした後にスーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「スーパーリーチ(ハズレ)」の変動パターン種別であり、「スーパーリーチ(ハズレ)」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA3−1は、「擬似連」の可変表示演出が実行されずに、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「ノーマルリーチ(大当り)擬似連なし」の変動パターン種別であり、「ノーマルリーチ(大当り)擬似連なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA3−2は、「擬似連」の可変表示演出が実行されて、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「ノーマルリーチ(大当り)擬似連あり」の変動パターン種別であり、「ノーマルリーチ(大当り)擬似連あり」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA3−3は、飾り図柄の可変表示状態をリーチ状態とした後にスーパーリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「スーパーリーチ(大当り)」の変動パターン種別であり、「スーパーリーチ(大当り)」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA4−1は、2回開放チャンス目となる確定飾り図柄を導出表示する「2回開放チャンス目停止」の変動パターン種別であり、「2回開放チャンス目停止」と予め対応付けられた変動パターンを含んでいる。図25に示す変動パターンの例では、変動パターンPC1−1〜変動パターンPC1−3が、確定飾り図柄を複数種類の2回開放チャンス目のいずれかとする変動パターンとなっており、変動パターン種別CA4−1に含まれることになる。変動パターン種別CA4−2は、可変表示結果が「大当り」で大当り種別が「突確」である場合に飾り図柄の可変表示状態をリーチ状態としてからリーチ組合せの確定飾り図柄を導出表示する「2回開放時リーチハズレ」の変動パターン種別であり、「2回開放時リーチハズレ」と予め対応付けられた変動パターンを含んでいる。図25に示す変動パターンの例では、変動パターンPC1−4及び変動パターンPC1−5が、確定飾り図柄をリーチ組合せとする変動パターンとなっており、変動パターン種別CA4−2に含まれることになる。
図27は、ROM506に記憶される特図表示結果決定テーブルの構成例を示している。この実施の形態では、特図表示結果決定テーブルとして、図27(A)に示す第1特図表示結果決定テーブル130Aと、図27(B)に示す第2特図表示結果決定テーブル130Bとが、予め用意されている。第1特図表示結果決定テーブル130Aは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果決定用の乱数値MR1に基づいて決定するために参照されるテーブルである。第2特図表示結果決定テーブル130Bは、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果決定用の乱数値MR1に基づいて決定するために参照されるテーブルである。
第1特図表示結果決定テーブル130Aでは、図34に示す遊技制御フラグ設定部592に設けられた確変フラグがオフであるかオンであるかに応じて、特図表示結果決定用の乱数値MR1と比較される数値(決定値)が、「大当り」や「小当り」、「ハズレ」の特図表示結果に割り当てられている。第2特図表示結果決定テーブル130Bでは、確変フラグがオフであるかオンであるかに応じて、特図表示結果決定用の乱数値MR1と比較される数値(決定値)が、「大当り」や「ハズレ」の特図表示結果に割り当てられている。第1特図表示結果決定テーブル130Aや第2特図表示結果決定テーブル130Bにおいて、特図表示結果決定用の乱数値MR1と比較される決定値を示すテーブルデータは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの決定結果に割り当てられる決定用データとなっている。そして、第1特図表示結果決定テーブル130Aと第2特図表示結果決定テーブル130Bのそれぞれでは、確変フラグがオンであるときには、確変フラグがオフであるときに比べて多くの決定値が、「大当り」の特図表示結果に割り当てられている。ここで、パチンコ遊技機1における遊技状態が確変状態であるときには、確変フラグがオンとなる。その一方で、パチンコ遊技機1における遊技状態が通常状態や時短状態であるときには、確変フラグがオフとなる。これにより、パチンコ遊技機1における遊技状態が確変状態であるときには、通常状態や時短状態であるときに比べて、特図表示結果を「大当り」として大当り遊技状態に制御すると決定される確率が高くなる。すなわち、第1特図表示結果決定テーブル130Aと第2特図表示結果決定テーブル130Bのそれぞれでは、パチンコ遊技機1における遊技状態が確変状態であるときに、通常状態や時短状態であるときに比べて大当り遊技状態に制御すると決定される確率が高くなるように、決定用データが大当り遊技状態に制御するか否かの決定結果に割り当てられている。
また、図27(A)に示す第1特図表示結果決定テーブル130Aの設定例では、所定範囲の決定値(「30000」〜「30099」の範囲の値)が「小当り」の特図表示結果に割り当てられている。その一方で、図27(B)に示す第2特図表示結果決定テーブル130Bの設定例では、「小当り」の特図表示結果に決定値が割り当てられていない。このような設定により、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを開始するための第1開始条件が成立したことに基づいて可変表示結果の判定を行う場合と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを開始するための第2開始条件が成立したことに基づいて可変表示結果の判定を行う場合とで、特図表示結果を「小当り」として小当り遊技状態に制御すると決定される割合を、異ならせることができる。特に、第2特図を用いた特図ゲームでは特図表示結果を「小当り」として小当り遊技状態に制御すると決定されることがないので、例えば時短状態や確変状態といった、普通可変入賞球装置6Bが形成する第2始動入賞口に遊技球が進入しやすい遊技状態において、賞球を得ることが困難な小当り遊技状態の頻発を回避して、遊技の間延びによる遊技興趣の低下を防止できる。
なお、第2特図表示結果決定テーブル130Bにおいても、第1特図表示結果決定テーブル130Aにおける設定とは異なる所定範囲の決定値が、「小当り」の特図表示結果に割り当てられるようにしてもよい。あるいは、第1開始条件と第2開始条件のいずれが成立したかにかかわらず、共通の特図表示結果決定テーブルを参照して、特図表示結果の決定を行うようにしてもよい。
図27(B)に示す第2特図表示結果決定テーブル130Bの設定例では、特図表示結果決定用の乱数値MR1と比較される決定値のうち、「0」を示す値が「大当り」の特図表示結果に割り当てられている。これに対して、「0」を示す決定値は、「大当り」の特図表示結果に対して割り当てられず、「ハズレ」の特図表示結果に対して割り当てられるようにしてもよい。これにより、例えば第2乱数初期設定KRS2のビット番号[1]におけるビット値を“0”に設定した場合にスタート値となるデフォルト値「0000H」の設定タイミングで第2始動入賞信号SS1を故意に入力させて特図表示結果決定用の乱数値MR1となる「0」を示す数値データを乱数値レジスタR2Dに格納させて読み出すことや、乱数値レジスタR2Dの破壊や故障を利用して特図表示結果決定用の乱数値MR1となる「0」を示す数値データを抽出させることなどにより、不正に特図表示結果が「大当り」とされてしまうことを防止できる。また、第2特図表示結果決定テーブル130Bでは、第1特図表示結果決定テーブル130Aと同一の決定値が「大当り」の特図表示結果に割り当てられるようにしてもよい。
図28は、ROM506に記憶される大当り種別決定テーブル131の構成例を示している。大当り種別決定テーブル131は、特図表示結果を「大当り」として大当り遊技状態に制御すると決定されたときに、大当り種別決定用の乱数値MR2に基づき、大当り種別を複数種類のいずれかに決定するために参照されるテーブルである。大当り種別決定テーブル131では、図34に示す遊技制御バッファ設定部595に設けられた変動特図指定バッファの値(変動特図指定バッファ値)が「1」であるか「2」であるかに応じて、大当り種別決定用の乱数値MR2と比較される数値(決定値)が、「非確変」や「確変」、「突確」といった複数種類の大当り種別に割り当てられている。ここで、変動特図指定バッファ値は、第1開始条件の成立により第1特別図柄表示装置4Aにて第1特図を用いた特図ゲームを開始するときに「1」が設定される一方で、第2開始条件の成立により第2特別図柄表示装置4Bにて第2特図を用いた特図ゲームを開始するときに「2」が設定される。また、大当り種別決定テーブル131は、遊技制御バッファ設定部595に設けられた大当り種別バッファの値(大当り種別バッファ値)を、大当り種別決定用の乱数値MR2に基づいて決定された大当り種別に対応して、「0」〜「2」のいずれかに設定するためのテーブルデータ(設定用データ)を含んでいる。
図28に示す大当り種別決定テーブル131の設定例では、変動特図指定バッファ値が「1」であるか「2」であるかに応じて、「突確」の大当り種別に対する決定値の割当てが異なっている。すなわち、変動特図指定バッファ値が「1」である場合には、所定範囲の決定値(「82」〜「99」の範囲の値)が「突確」の大当り種別に割り当てられる一方で、変動特図指定バッファ値が「2」である場合には、「突確」の大当り種別に対して決定値が割り当てられていない。このような設定により、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを開始するための第1開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを開始するための第2開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合とで、大当り種別を「突確」に決定する割合を、異ならせることができる。特に、第2特図を用いた特図ゲームでは大当り種別を「突確」として2ラウンド大当り状態に制御すると決定されることがないので、例えば時短状態や確変状態といった、普通可変入賞球装置6Bが形成する第2始動入賞口に遊技球が進入しやすい遊技状態において、賞球を得ることが困難な2ラウンド大当り状態の頻発を回避して、遊技の間延びによる遊技興趣の低下を防止できる。なお、変動特図指定バッファ値が「2」である場合にも、変動特図指定バッファ値が「1」である場合とは異なる所定範囲の決定値が、「突確」の大当り種別に割り当てられるようにしてもよい。
図29及び図30は、ROM506に記憶される変動パターン種別決定テーブルの構成例を示している。この実施の形態では、変動パターン種別決定テーブルとして、図29(A)に示す大当り変動パターン種別決定テーブル133Aと、図29(B)に示す小当り変動パターン種別決定テーブル133Bと、図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cと、図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dとが、予め用意されている。
大当り変動パターン種別決定テーブル133Aは、特図表示結果を「大当り」にすると決定(事前決定)されたときに、大当り種別の決定結果に応じて、変動パターン種別を、変動パターン種別決定用の乱数値MR3に基づいて、複数種類のうちのいずれかに決定するために参照されるテーブルである。大当り変動パターン種別決定テーブル133Aでは、大当り種別の決定結果が「非確変」や「確変」、「突確」のいずれであるかに応じて、変動パターン種別決定用の乱数値MR3と比較される数値(決定値)が、変動パターン種別CA3−1〜変動パターン種別CA3−3、変動パターン種別CA4−1及び変動パターン種別CA4−2のいずれかに割り当てられている。大当り変動パターン種別決定テーブル133Aでは、大当り種別が複数種類のいずれに決定されたかに応じて、各変動パターン種別に決定される割合が異なるように、決定値が各変動パターン種別に割り当てられている部分がある。例えば、大当り種別が「非確変」であるか「確変」であるかに応じて、変動パターン種別CA3−1〜変動パターン種別CA3−3に対する決定値の割当てが異なっている。これにより、大当り種別を複数種類のいずれにするかの決定結果に応じて、同一の変動パターン種別に決定される割合を異ならせることができる。
また、大当り変動パターン種別決定テーブル133Aでは、大当り種別が複数種類のいずれに決定されたかに応じて、異なる変動パターン種別に決定値が割り当てられている部分がある。例えば、大当り種別が「非確変」又は「確変」である場合には、変動パターン種別CA3−1〜変動パターン種別CA3−3に対して決定値が割り当てられている一方で、変動パターン種別CA4−1及び変動パターン種別CA4−2に対しては決定値が割り当てられていない。これに対して、大当り種別が「突確」である場合には、変動パターン種別CA4−1及び変動パターン種別CA4−2に対して決定値が割り当てられている一方で、変動パターン種別CA3−1〜変動パターン種別CA3−3に対しては決定値が割り当てられていない。これにより、特図表示結果が「大当り」で大当り種別が「突確」に応じて2ラウンド大当り状態に制御される場合には、15ラウンド大当り状態に制御される場合とは異なる変動パターン種別に決定することができる。
なお、大当り種別が「非確変」や「確変」、「突確」のいずれかに決定された場合に、パチンコ遊技機1における遊技状態が通常状態や確変状態、時短状態のいずれであるかに応じて、各変動パターン種別に対する決定値の割当てを異ならせるようにしてもよい。これにより、遊技状態が複数種類のいずれであるかに応じて、同一の変動パターン種別に決定される割合を異ならせることができる。また、大当り種別が「非確変」や「確変」、「突確」のいずれかに決定された場合に、パチンコ遊技機1における遊技状態が通常状態や確変状態、時短状態のいずれであるかに応じて、異なる変動パターン種別に決定値が割り当てられるようにしてもよい。これにより、遊技状態が複数種類のいずれであるかに応じて、異なる変動パターン種別に決定することができる。
大当り種別が「非確変」と「確変」のいずれに決定されたかに応じて、各変動パターン種別に対する決定値の割当てをことならせてもよい。これにより、いずれの変動パターン種別に含まれる変動パターンによる可変表示が実行されるかに応じて、可変表示結果が「15R確変大当り」となる期待度を異ならせることができる。例えば、大当り種別が「確変」の場合に多くの決定値が割り当てられる一方、大当り種別が「非確変」の場合に少ない決定値が割り当てられる変動パターン種別に含まれる変動パターンによる可変表示が行われたときには、可変表示結果が「15R確変大当り」となる期待度が高められる。
小当り変動パターン種別決定テーブル133Bは、特図表示結果を「小当り」にすると決定(事前決定)されたときに、変動パターン種別を決定するために参照されるテーブルである。小当り変動パターン種別決定テーブル133Bでは、変動パターン種別決定用の乱数値MR3と比較される全ての数値(決定値)が、変動パターン種別CA4−1に対して割り当てられている。ここで、変動パターン種別CA4−1には、図29(A)に示す大当り変動パターン種別決定テーブル133Aにおいて、大当り種別が「突確」である場合に応じて決定値の一部が割り当てられている。このように、変動パターン種別CA4−1は、大当り種別が「突確」となる場合と、特図表示結果が「小当り」となる場合とで、共通の変動パターン種別となっている。すなわち、大当り変動パターン種別決定テーブル133Aにて大当り種別が「突確」に対応したテーブルデータと、小当り変動パターン種別決定テーブル133Bを構成するテーブルデータとには、共通の変動パターン種別が含まれるように設定されている。なお、小当り変動パターン種別決定テーブル133Bは、大当り種別が「突確」である場合に決定可能な変動パターン種別とは異なる変動パターン種別に対しても、決定値が割り当てられるように設定されてもよい。すなわち、大当り変動パターン種別決定テーブル133Aにて大当り種別が「突確」に対応したテーブルデータと、小当り変動パターン種別決定テーブル133Bを構成するテーブルデータとには、共通の変動パターン種別が含まれるとともに、それぞれに固有の変動パターン種別が含まれるように設定されてもよい。
ハズレ変動パターン種別決定テーブル(通常時)133Cと、ハズレ変動パターン種別決定テーブル(時短中)133Dは、特図表示結果を「ハズレ」にすると決定(事前決定)されたときに、変動パターン種別を、変動パターン種別決定用の乱数値MR3に基づいて、複数種類のうちのいずれかに決定するために参照されるテーブルである。ここで、ハズレ変動パターン種別決定テーブル(通常時)133Cは、例えば遊技状態が通常状態であるときに使用テーブルとして選択される。これに対して、ハズレ変動パターン種別決定テーブル(時短中)133Dは、例えば時短状態や確変状態において時間短縮制御(時短制御)が行われているときに、使用テーブルとして選択される。なお、確変状態において時短制御が行われていないときには、ハズレ変動パターン種別決定テーブル(通常時)133Cが使用テーブルとして選択されればよい。
ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数に応じて、変動パターン種別決定用の乱数値MR3と比較される数値(決定値)が、変動パターン種別CA1−1〜変動パターン種別CA1−3、変動パターン種別CA2−1〜変動パターン種別CA2−4のいずれかに割り当てられている。ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、互いに各変動パターン種別に決定される割合が異なるように、決定値が各変動パターン種別に割り当てられている部分がある。これにより、遊技状態が通常状態であるか時短状態や確変状態であるかや、時間短縮制御が行われているか否かに応じて、同一の変動パターン種別に決定される割合を異ならせることができる。なお、ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、異なる変動パターン種別に決定値が割り当てられている部分があってもよい。これにより、遊技状態が通常状態であるか時短状態や確変状態であるかや、時間短縮制御が行われているか否かに応じて、異なる変動パターン種別に決定することができる。
この実施の形態では、ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dのいずれかを参照することにより、変動パターン種別CA1−1〜変動パターン種別CA1−3や変動パターン種別CA2−1〜変動パターン種別CA2−4のいずれかに決定することができる。ここで、変動パターン種別CA1−1〜変動パターン種別CA1−3は、図26に示すように、可変表示結果が「ハズレ」で可変表示態様が「非リーチ」となる場合に対応した変動パターン種別である。また、変動パターン種別CA2−1〜変動パターン種別CA2−4は、可変表示結果が「ハズレ」で可変表示態様が「リーチ」となる場合に対応した変動パターン種別である。したがって、変動パターン種別決定用の乱数値MR3に基づき、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dを参照して変動パターン種別を決定することにより、飾り図柄の可変表示状態をリーチ状態とするか否かを決定することができる。
図30(A)及び(B)に示すハズレ変動パターン種別決定テーブル(通常時)133Cとハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、変動パターン種別決定用の乱数値MR3の値が「230」〜「251」のいずれかであれば、遊技状態や合計保留記憶数にかかわらず、少なくともスーパーリーチ(スーパーリーチαまたはスーパーリーチβ)を伴う変動パターンが分類される変動パターン種別CA2−4に決定される。すなわち、可変表示結果が「ハズレ」に決定される場合において、スーパーリーチを伴う変動パターンが分類される変動パターン種別CA2−4に対応した決定値のうちの少なくとも一部は、可変表示の開始時における合計保留記憶数にかかわらず、同一決定値が設定されている。
なお、図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cの設定例では、合計保留記憶数が「0」〜「2」である場合に、「220」〜「229」の決定値も変動パターン種別CA2−4に割り当てられており、合計保留記憶数が「3」〜「5」である場合に、「225」〜「229」の決定値も変動パターン種別CA2−4に割り当てられている。また、図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、合計保留記憶数が「0」である場合に、「225」〜「229」の決定値も変動パターン種別CA2−4に割り当てられている。このように、スーパーリーチを伴う特定の変動パターンが分類される変動パターン種別CA2−4に対応した決定値のうちには、同一決定値とは異なる決定値が含まれることがあってもよく、少なくとも一部の決定値が同一決定値となるものであればよい。これに対して、同一決定値のみがスーパーリーチを伴う特定の変動パターンが分類される変動パターン種別CA2−4に割り当てられ、同一決定値以外の決定値は割り当てられないようにしてもよい。
図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cの設定例では、合計保留記憶数が「0」〜「2」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられていない一方で、合計保留記憶数が「3」〜「5」や「6」〜「8」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられている。また、合計保留記憶数が「6」〜「8」のいずれかである場合には、合計保留記憶数が「3」〜「5」のいずれかである場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。
図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、合計保留記憶数が「0」である場合に、変動パターン種別CA1−2に対して決定値が割り当てられていない一方で、合計保留記憶数が「1」や「2」〜「8」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられている。また、合計保留記憶数が「2」〜「8」のいずれかである場合には、合計保留記憶数が「1」である場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。
ここで、変動パターン種別CA1−2には、可変表示結果が「ハズレ」で可変表示態様が「非リーチ」に対応して、特図変動時間が3000ms(ミリ秒)となる短縮ありの変動パターンPA1−2が含まれている(図31(B)を参照)。すなわち、変動パターン種別CA1−2に含まれる変動パターンPA1−2は、飾り図柄の可変表示状態がリーチ状態とはならない変動パターンであり、スーパーリーチを伴う変動パターンのいずれと比べても、その特図変動時間が短くなる短縮用の変動パターンである。そして、遊技状態が通常状態である場合などの通常時に参照されるハズレ変動パターン種別決定テーブル(通常時)133Cでは、可変表示の開始時における合計保留記憶数が「0」〜「2」のいずれかである場合に、変動パターンPA1−2に対応した決定値の設定がなく、合計保留記憶数が「3」〜「5」のいずれかである場合と比較して、合計保留記憶数が「6」〜「8」のいずれかである場合に、変動パターンPA1−2に対応した決定値の個数が多く設定されている。また、確変状態や時短状態にて時間短縮制御が行われる場合などの短縮時に参照されるハズレ変動パターン種別決定テーブル(時短中)133Dでは、可変表示の開始時における合計保留記憶数が「0」である場合に、変動パターンPA1−2に対応した決定値の設定がなく、合計保留記憶数が「1」である場合と比較して、合計保留記憶数が「2」〜「8」のいずれかである場合に、変動パターンPA1−2に対応した決定値の個数が多く設定されている。
図31は、ROM506に記憶される変動パターン決定テーブルの構成例を示している。この実施の形態では、変動パターン決定テーブルとして、図31(A)に示す当り変動パターン決定テーブル134Aと、図31(B)に示すハズレ変動パターン決定テーブル134Bとが、予め用意されている。各変動パターン決定テーブルは、変動パターン決定用の乱数値MR4などに基づいて、変動パターンを複数種類のいずれかに決定するために参照されるテーブルである。各変動パターン決定テーブルでは、変動パターン種別の決定結果に応じて、変動パターン決定用の乱数値MR4と比較される数値(決定値)が、単一種類又は複数種類の変動パターンに割り当てられている。
図32は、ROM506に記憶される普図表示結果決定テーブル135の構成例を示している。普図表示結果決定テーブル135は、普通図柄表示器20による普図ゲームにおいて普図表示結果となる確定普通図柄が導出表示されるより前に、その普図表示結果を「普図当り」とするか「普図ハズレ」とするかなどを、普図表示結果決定用の乱数値MR5に基づいて決定するために参照されるテーブルである。
普図表示結果決定テーブル135では、時短フラグがオフであるかオンであるかに応じて、普図表示結果決定用の乱数値MR5と比較される数値(決定値)が、「普図当り」又は「普図ハズレ」の普図表示結果に割り当てられている。ここで、時短フラグは、パチンコ遊技機1における遊技状態が確変状態や時短状態といった特別遊技状態であるときに、時間短縮制御が行われることに対応してオン状態にセットされる一方、時間短縮制御が終了することに対応してクリアされてオフ状態となる。普図表示結果決定テーブル135は、普図表示結果などに対応して、普通図柄の変動表示が開始されてから確定普通図柄が導出表示されるまでの普図変動時間を複数種類のいずれかに設定するための設定用データや、普図表示結果が「普図当り」となった場合に対応して普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過可能な開放状態とする制御を行う時間(開放時間)と回数(開放回数)を設定するための設定用データなどを、含んでもよい。
図32に示す普図表示結果決定テーブル135の設定例では、時短フラグがオンであるか否かに応じて、「普図当り」又は「普図ハズレ」の普図表示結果に対する決定値の割当てが異なっている。すなわち、時間短縮制御が行われる時短中には、時短中以外であるときよりも「普図当り」の普図表示結果に決定される割合が高くなるように、各普図表示結果に決定値が割り当てられている。このような設定により、時間短縮制御が行われる時短中には時短中以外であるときよりも、普図表示結果が「普図当り」となって普通可変入賞球装置6B(第2始動入賞口)を開放状態とする頻度が高められる。また、時間短縮制御が行われる時短中には時短中以外であるときよりも、普図表示結果が「普図当り」となった場合に普通可変入賞球装置6B(第2始動入賞口)を開放状態とする時間(開放時間)や回数(開放回数)が増加する。さらに、時間短縮制御が行われる時短中には時短中以外であるときよりも、普通図柄表示器20にて普通図柄の変動表示が開始されてから確定普通図柄が導出表示されるまでの普図変動時間が、短くなるように設定されてもよい。こうした設定により、時間短縮制御が行われる時短中には時短中以外であるときよりも、第2始動入賞口を遊技球が通過(進入)する可能性を高めて第2始動条件が成立しやすくする。
図33は、ROM506に記憶される始動口入賞テーブルの構成例を示している。この実施の形態では、始動口入賞テーブルとして、図33(A)に示す第1始動口入賞テーブル136Aと、図33(B)に示す第2始動口入賞テーブル136Bとが、予め用意されている。各始動口入賞テーブルは、普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、各種の設定を行うために参照されるテーブルである。
図33(A)に示す第1始動口入賞テーブル136Aは、第1始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、使用テーブルとして選択される。第1始動口入賞テーブル136Aは、第1保留記憶カウンタアドレスや乱数値レジスタR1Dアドレス、第1特図保留記憶部アドレスなどを指定するテーブルデータから構成されている。第1保留記憶カウンタアドレスは、第1保留記憶カウンタに割り当てられたアドレスである。第1保留記憶カウンタは、図34に示す遊技制御カウンタ設定部594に設けられて第1特図保留記憶数をカウントする。乱数値レジスタR1Dアドレスは、図8(B)に示す内蔵レジスタエリアにおいて乱数値レジスタR1Dに割り当てられたアドレス(例えば先頭アドレス2038Hなど)である。第1特図保留記憶部アドレスは、図34に示す第1特図保留記憶部591Aに割り当てられたアドレス(例えば先頭アドレスなど)である。
図33(B)に示す第2始動口入賞テーブル136Bは、第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、使用テーブルとして選択される。第2始動口入賞テーブル136Bは、第2保留記憶カウンタアドレスや乱数値レジスタR2Dアドレス、第2特図保留記憶部アドレスなどを指定するテーブルデータから構成されている。第2保留記憶カウンタアドレスは、第2保留記憶カウンタに割り当てられたアドレスである。第2保留記憶カウンタは、図34に示す遊技制御カウンタ設定部594に設けられて第2特図保留記憶数をカウントする。乱数値レジスタR2Dアドレスは、図8(B)に示す内蔵レジスタエリアにおいて乱数値レジスタR2Dに割り当てられたアドレス(例えば先頭アドレス203AHなど)である。第2特図保留記憶部アドレスは、図34に示す第2特図保留記憶部591Bに割り当てられたアドレス(例えば先頭アドレスなど)である。
遊技制御用マイクロコンピュータ100が備えるRAM507には、パチンコ遊技機1における遊技の進行などを制御するために用いられる各種のデータを保持する領域として、例えば図34に示すような遊技制御用データ保持エリア590が設けられている。図34に示す遊技制御用データ保持エリア590は、第1特図保留記憶部591Aと、第2特図保留記憶部591Bと、普図保留記憶部591Cと、遊技制御フラグ設定部592と、遊技制御タイマ設定部593と、遊技制御カウンタ設定部594と、遊技制御バッファ設定部595とを備えている。
第1特図保留記憶部591Aは、普通入賞球装置6Aが形成する第1始動入賞口を遊技球が通過(進入)したことによる始動入賞の発生に対応して第1始動条件は成立したが第1開始条件は成立していない特図ゲーム(第1特別図柄表示装置4Aによる第1特図を用いた特図ゲーム)の保留データを記憶する。一例として、第1特図保留記憶部591Aは、第1始動入賞口への入賞順に保留番号と関連付けて、その入賞による第1始動条件の成立に基づいてCPU505により取得された特図表示結果決定用の乱数値MR1を示す数値データや大当り種別決定用の乱数値MR2を示す数値データ、変動パターン種別決定用の乱数値MR3を示す数値データを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
第2特図保留記憶部591Bは、普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)したことによる始動入賞の発生に対応して第2始動条件は成立したが第2開始条件は成立していない特図ゲーム(第2特別図柄表示装置4Bによる第2特図を用いた特図ゲーム)の保留データを記憶する。一例として、第2特図保留記憶部591Bは、第2始動入賞口への入賞順に保留番号と関連付けて、その入賞による第2始動条件の成立に基づいてCPU505により取得された特図表示結果決定用の乱数値MR1を示す数値データや大当り種別決定用の乱数値MR2を示す数値データ、変動パターン種別決定用の乱数値MR3を示す数値データを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
普図保留記憶部591Cは、通過ゲート41を通過して普図始動条件は成立したが普図開始条件は成立していない普図ゲームの保留データを記憶する。一例として、普図保留記憶部591Cは、通過ゲート41の通過順に保留番号と関連付けて、各遊技球の通過による普図始動条件の成立に基づいてCPU505により取得された普図表示結果決定用の乱数値MR5を示す数値データなどを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
なお、第1特図保留記憶部591Aと第2特図保留記憶部591Bは、別々に設けるようにしてもよいし、これらを組み合わせた記憶領域を設けるようにしてもよい。一例として、始動データ記憶領域と乱数値記憶領域とを組み合わせた領域を8つ含む記憶領域を設けるようにしてもよい。このような構成において、始動データ記憶領域と乱数値記憶領域の各領域には、RAM507における連続したアドレスが割り当てられればよい。この場合、例えば合計保留記憶数に基づいてデータ格納先のアドレスを指定するポインタの値を更新することによって、空き領域の先頭となる始動データ記憶領域に、始動データ(第1始動入賞口と第2始動入賞口のいずれを遊技球が通過(進入)したことによる始動入賞の発生であるかを特定可能なデータ)をセットする。このとき、空き領域の先頭を特定するには、例えば1つの保留データ(始動データと乱数値を示す数値データ)におけるデータ数を合計保留記憶数に乗算した値に1加算した値(始動データ記憶領域1つ分を加算した値)を、アドレスのオフセット値として特定する。こうして特定したオフセット値に従ってポインタの値を更新すればよい。この構成では、1つの保留データに対応して始動データ記憶領域と乱数値記憶領域が1つずつの合計2つのデータ格納領域が設けられている。そこで、合計保留記憶数を2倍した値に1加算した値がアドレスのオフセット値として特定される。一例として、合計保留記憶数が「3」である場合には、オフセット値として「+7」(合計保留記憶数「3」を2倍した後に1加算した値)が特定され、このオフセット値に対応した始動データ記憶領域に始動データをセットすることになる。また、1つの保留データに対応して1つの始動データ記憶領域と2つの乱数値記憶領域との合計3つのデータ格納領域が設けられている場合には、合計保留記憶数を3倍した値に1加算した値(始動データ記憶領域1つ分を加算した値)が、アドレスのオフセット値として特定されればよい。
また、データ格納先のアドレスを指定するポインタの初期位置を保留番号「1」に対応した始動データ記憶領域とする場合には、1つの保留データにおけるデータ数を合計保留記憶数に乗算した値が、アドレスのオフセット値として特定されればよい。例えば、1つの保留データに対応して1つの始動データ記憶領域と1つの乱数値記憶領域との合計2つのデータ格納領域が設けられている場合には、合計保留記憶数を2倍した値が、アドレスのオフセット値として特定されればよい。また、1つの保留データに対応して1つの始動データ記憶領域と2つの乱数値記憶領域との合計3つのデータ格納領域が設けられている場合には、合計保留記憶数を3倍した値が、アドレスのオフセット値として特定されればよい。こうして始動データ記憶領域に始動データをセットした後には、アドレスを指定するポインタの値を1加算して、加算後のポインタが指すアドレスの乱数値記憶領域に、乱数値を示す数値データを格納すればよい。
遊技制御フラグ設定部592には、パチンコ遊技機1における遊技の進行状況などに応じて状態を更新可能な複数種類のフラグが設けられている。例えば、遊技制御フラグ設定部592には、複数種類のフラグそれぞれについて、フラグの値を示すデータや、オン状態あるいはオフ状態を示すデータが記憶される。一例として、遊技制御フラグ設定部592には、特図プロセスフラグ、普図プロセスフラグ、大当りフラグ、小当りフラグ、確変フラグ、時短フラグなどが設けられていればよい。
特図プロセスフラグは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームの進行や、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームの進行などを制御するために実行される図41のステップS96や図46に示す特別図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。普図プロセスフラグは、普通図柄表示器20による普通図柄を用いた普図ゲームの進行などを制御するために実行される図41のステップS97や図55に示す普通図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。
大当りフラグは、特図ゲームが開始されるときに特図表示結果を「大当り」とする旨の決定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として大当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。小当りフラグは、特図ゲームが開始されるときに特図表示結果を「小当り」とする旨の決定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として小当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。確変フラグは、パチンコ遊技機1における遊技状態が確変状態に制御されることに対応してオン状態にセットされる一方で、確変状態が終了することなどに対応してクリアされてオフ状態となる。時短フラグは、パチンコ遊技機1における遊技状態が時短状態に制御されることに対応してオン状態にセットされる一方で、時短状態が終了することなどに対応してクリアされてオフ状態となる。
遊技制御タイマ設定部593には、パチンコ遊技機1における遊技の進行を制御するために用いられる各種のタイマが設けられている。例えば、遊技制御タイマ設定部593には、複数種類のタイマそれぞれにおけるタイマ値を示すデータが記憶される。一例として、遊技制御タイマ設定部593には、遊技制御プロセスタイマ、特図変動タイマ、普図変動タイマ、バックアップ監視タイマなどが設けられていればよい。
遊技制御プロセスタイマは、例えば大当り遊技状態あるいは小当り遊技状態の進行を制御するための時間などを、主基板11の側にて計測するためのものである。具体的な一例として、遊技制御プロセスタイマは、大当り遊技状態あるいは小当り遊技状態の進行を制御するために計測する時間に対応したタイマ値を示すデータを、遊技制御プロセスタイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、遊技制御プロセスタイマは、大当り遊技状態もしくは小当り遊技状態の開始時点といった、所定時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
特図変動タイマは、特図ゲームの実行時間である特図変動時間といった特図ゲームの進行を制御するための時間を、主基板11の側にて計測するためのものである。具体的な一例として、特図変動タイマは、特図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、特図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、特図変動タイマは、特図ゲームの開始時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
普図変動タイマは、普図ゲームの実行時間である普図変動時間といった普図ゲームの進行を制御するための時間を、主基板11の側にて計測するためのものである。具体的な一例として、普図変動タイマは、普図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、普図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、普図変動タイマは、普図ゲームの開始時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
バックアップ監視タイマは、電源基板10に搭載された電源監視回路303から伝送される電源断信号がオン状態となってからの経過時間を計測するためのものである。一例として、電源監視回路303から供給される電源電圧VSLが低下したことに基づいて出力される電源断信号を主基板11にて検知したときに、バックアップ監視タイマによる経過時間の計測が開始される。そして、電源断信号の出力が停止されるまでは、バックアップ監視タイマによる計測を継続させる。バックアップ監視タイマによって計測された経過時間が所定時間に達すると、例えばRAM507におけるバックアップ領域のデータを保護する処理といった、電力の供給停止に対応した所定の準備処理が実行される。
遊技制御カウンタ設定部594には、パチンコ遊技機1における遊技の進行を制御するために用いられるカウント値を計数するためのカウンタが複数種類設けられている。例えば、遊技制御カウンタ設定部594には、複数種類のカウンタそれぞれにおけるカウント値を示すデータが記憶される。一例として、遊技制御カウンタ設定部594に、ランダムカウンタ、第1保留記憶カウンタ、第2保留記憶カウンタ、ラウンド数カウンタなどが設けられていればよい。
遊技制御カウンタ設定部594のランダムカウンタは、遊技の進行を制御するために用いられる乱数値を示す数値データの一部を、乱数回路509とは別個に、CPU505がソフトウェアにより更新可能にカウントするためのものである。例えば、遊技制御カウンタ設定部594のランダムカウンタには、乱数値MR1〜MR5を示す数値データが、ランダムカウント値として記憶される。そして、乱数値MR2〜MR5については、CPU505によるソフトウェアの実行に応じて、定期的あるいは不定期に、各乱数値を示す数値データが更新される。
第1保留記憶カウンタは、第1特図保留記憶部591Aにおける保留データの記憶数である第1特図保留記憶数をカウントするためのものである。例えば、第1保留記憶カウンタには、第1特図保留記憶数に対応したカウント値を示すデータが、第1保留記憶カウント値として記憶され、第1特図保留記憶数の増減に対応して更新(例えば1加算あるいは1減算)される。第2保留記憶カウンタは、第2特図保留記憶部591Bにおける保留データの記憶数である第2特図保留記憶数をカウントするためのものである。例えば、第2保留記憶カウンタには、第2特図保留記憶数に対応したカウント値を示すデータが、特図保留記憶カウント値として記憶され、特図保留記憶数の増減に対応して更新(例えば1加算あるいは1減算)される。なお、第1及び第2保留記憶カウンタとは別個に、合計保留記憶数をカウントするための合計保留記憶カウンタを設けてもよい。あるいは、合計保留記憶数は、第1保留記憶カウント値と第2保留記憶カウント値とを加算することにより特定できるようにしてもよい。
ラウンド数カウンタは、大当り遊技状態におけるラウンドの実行回数などをカウントするためのものである。例えば、ラウンド数カウンタには、大当り遊技状態の開始時にカウント初期値「1」を示すデータが、ラウンド数カウント値として設定される。そして、1回のラウンドが終了して次回のラウンドが開始されるときに、ラウンド数カウント値が1加算されて更新される。また、ラウンド数カウンタは、小当り遊技状態における可変入賞動作の実行回数もカウントするようにしてもよい。
遊技制御バッファ設定部595は、パチンコ遊技機1における遊技の進行を制御するために用いられるデータを一時的に記憶する各種のバッファが設けられている。例えば、遊技制御バッファ設定部595には、複数種類のバッファそれぞれにおけるバッファ値を示すデータが記憶される。一例として、遊技制御バッファ設定部595には、送信コマンドバッファ、変動特図指定バッファ、大当り種別バッファ、前回ポートバッファ、前々回ポートバッファ、スイッチオンバッファ、前回データバッファなどが設けられていればよい。
送信コマンドバッファは、主基板11からサブ側の制御基板に対して制御コマンドを送信するための設定データを一時的に格納するために用いられる。例えば、送信コマンドバッファは、複数(例えば「12」)のバッファ領域を備えて構成され、送信する制御コマンドに対応したコマンドテーブルのROM506における記憶アドレスを示す設定データなどが、各バッファ領域に格納される。また、送信コマンドバッファにおいて設定データの書込や読出を行うバッファ領域は、送信コマンドポインタなどによって指定され、複数のバッファ領域をリングバッファとして使用することができるように構成されていればよい。
変動特図指定バッファには、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームと、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームのうち、いずれの特図ゲームが実行されるかを示すバッファ値が格納される。一例として、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファの値(変動特図指定バッファ値)が“1”に設定される。また、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファ値が“2”に設定される。そして、特図ゲームが終了したことなどに対応して、変動特図指定バッファ値が“0”に設定される。
大当り種別バッファには、可変表示結果が「大当り」となる場合における飾り図柄の可変表示態様を、「非確変」、「確変」、「突確」といった複数種類の大当り種別のいずれかとする決定結果に対応した値が、大当り種別バッファ値として格納される。一例として、図28に示すような大当り種別決定テーブル131での設定に基づき、大当り種別が「非確変」の場合には大当り種別バッファ値が「0」に設定され、大当り種別が「確変」の場合には大当り種別バッファ値が「1」に設定され、大当り種別が「突確」の場合には大当り種別バッファ値が「2」に設定される。
前々回ポートバッファは、前々回のタイマ割込み発生時(例えば4ms前など)におけるスイッチオン/オフの判定結果が格納される1バイトのバッファである。前回ポートバッファは、前回のタイマ割込み発生時(例えば2ms前など)におけるスイッチオン/オフの判定結果が格納される1バイトのバッファである。スイッチオンバッファは、スイッチのオンが検出された場合にそのスイッチの対応ビットにおいて「1」が設定され、スイッチのオフが検出された場合にそのスイッチの対応ビットにおいて「0」が設定される1バイトのバッファである。また、前回データバッファは、図41のステップS92や図43に示すスイッチ処理の実行時に一時的に用いられる1バイトのバッファ領域である。
図35は、各1バイトのバッファを示す説明図である。前々回ポートバッファ、前回ポートバッファ、及びスイッチオンバッファのビット配列は、入力ポートレジスタPIのビット配列に対応していればよい。つまり、図24(A)及び(B)に示すビット番号[0]〜[7]に割り当てられているスイッチの検出信号等のそれぞれに対応する情報が、前々回ポートバッファ、前回ポートバッファ、及びスイッチオンバッファのビット番号[0]〜[7]に設定される。
一例として、スイッチオンバッファのビット番号[0]には、図23などに示す入力ポートP0や、図24(A)及び(B)に示す入力ポートレジスタPIのビット番号[0]に対応して、第1始動口スイッチ22Aから伝送される第1始動入賞信号SS1の状態を示すビット値が設定される。また、スイッチオンバッファのビット番号[1]には、図23などに示す入力ポートP1や、図24(A)及び(B)に示す入力ポートレジスタPIのビット番号[1]に対応して、第2始動口スイッチ22Bから伝送される第2始動入賞信号SS2の状態を示すビット値が設定される。遊技制御用マイクロコンピュータ100のCPU505は、スイッチオンバッファのビット番号[0]におけるビット値に基づいて、普通入賞球装置6Aが形成する第1始動入賞口を遊技球が通過したか否かの検出結果を特定し、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを実行するための第1始動条件を成立させることや、第1始動入賞口を通過した遊技球の検出に対応した賞球の払出を指示すること、あるいは、これらの一方もしくは双方を含めた所定の設定等を行うようにすればよい。また、遊技制御用マイクロコンピュータ100のCPU505は、スイッチオンバッファのビット番号[1]におけるビット値に基づいて、普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過したか否かの検出結果を特定し、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを実行するための第2始動条件を成立させることや、第2始動入賞口を通過(進入)した遊技球の検出に対応した賞球の払出を指示すること、あるいは、これらの一方もしくは双方を含めた所定の設定等を行うようにすればよい。
図2に示すように、演出制御基板12には、演出制御用マイクロコンピュータ120が搭載されている。また、演出制御基板12には、演出制御用マイクロコンピュータ120からの描画コマンドに応じて画像データを生成するVDP(Video Display Processor)121や、画像表示装置5、スピーカ8L、8R及び遊技効果ランプ9等の発光体といった演出装置による演出動作を制御するために用いられる各種データを記憶する演出データメモリ122なども搭載されている。演出制御用マイクロコンピュータ120は、例えば遊技制御用マイクロコンピュータ100と同様の構成を有する1チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット/割込みコントローラ、CPU、ROM、RAM、CTC、乱数回路、PIP、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、演出制御用マイクロコンピュータ120における構成の全部又は一部を、遊技制御用マイクロコンピュータ100における構成とは異ならせてもよい。一例として、演出制御基板12の側で用いられる乱数値となる数値データを、全てソフトウェアにより更新する場合には、演出制御用マイクロコンピュータ120が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板11から伝送される演出制御コマンドを受信可能な受信回路が設けられていればよく、画像表示装置5、音声制御基板13、ランプ制御基板14に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
演出制御用マイクロコンピュータ120では、CPUがROMから読み出した演出制御用のプログラムを実行することにより、演出用の電気部品(演出装置)による演出動作を制御するための処理が実行される。このときには、CPUがROMから固定データを読み出す固定データ読出動作や、CPUがRAMに各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPUがRAMに一時記憶されている各種の変動データを読み出す変動データ読出動作、CPUが外部バスインタフェースやPIP、シリアル通信回路などを介して演出制御用マイクロコンピュータ120の外部から各種信号の入力を受け付ける受信動作、CPUが外部バスインタフェースやシリアル通信回路などを介して演出制御用マイクロコンピュータ120の外部へと各種信号を出力する送信動作なども行われる。なお、演出制御用マイクロコンピュータ120を構成する1チップのマイクロコンピュータには、少なくともCPUの他にRAMが内蔵されていればよく、ROMや乱数回路、PIPなどは、外付けされるものでも内蔵されるものでもよい。中継基板18を介して主基板11から送信された演出制御コマンドとなる制御信号は、演出制御用マイクロコンピュータ120が備える所定のシリアル受信端子に供給され、演出制御用マイクロコンピュータ120に内蔵されたシリアル通信回路にて受信すればよい。あるいは、演出制御コマンドとなる制御信号は、複数本の信号線(例えば8本の演出制御信号線)を介して、主基板11から演出制御基板12へと向かう方向でパラレルに送受信されてもよい。
演出制御用マイクロコンピュータ120のROMには、演出制御用のプログラムの他に、演出動作を制御するために用いられる各種のデータテーブルなどが格納されている。例えば、演出制御用マイクロコンピュータ120のROMには、演出制御用マイクロコンピュータ120のCPUが各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブルを構成するテーブルデータ、各種の演出制御パターンを構成するパターンデータなどが記憶されている。
一例として、演出制御用マイクロコンピュータ120のROMには、演出制御用マイクロコンピュータ120のCPUが各種の演出装置(例えば画像表示装置5やスピーカ8L、8R、遊技効果ランプ9及び装飾用LED、演出用役物など)による演出動作を制御するために使用する演出制御パターンを複数種類格納した演出制御パターンテーブルが記憶されている。演出制御パターンは、パチンコ遊技機1における遊技の進行状況に応じて実行される各種の演出動作に対応して、その制御内容を示すデータなどから構成されている。演出制御パターンテーブルには、例えば特図変動時演出制御パターンと、各種演出制御パターンとが、格納されていればよい。
特図変動時演出制御パターンは、複数種類の変動パターンに対応して、特図ゲームにおいて特別図柄の変動が開始されてから特図表示結果となる確定特別図柄が導出表示されるまでの期間における、飾り図柄の可変表示動作やリーチ演出における演出表示動作、あるいは、飾り図柄の可変表示を伴わない各種の演出表示動作といった、様々な演出動作の制御内容を示すデータなどから構成されている。各種演出制御パターンは、パチンコ遊技機1における遊技の進行状況に応じて実行される各種の演出動作に対応して、その制御内容を示すデータなどから構成されている。
図36(A)は、各種の演出制御パターンの構成例を示している。図36(A)に示す構成例において、演出制御パターンは、例えば演出制御プロセスタイマ判定値、表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データ、終了コードなどを含んだプロセスデータから構成されている。
演出制御プロセスタイマ判定値は、例えば演出制御用マイクロコンピュータ120のRAMなどに設けられた演出制御プロセスタイマの格納値である演出制御プロセスタイマ値と比較される値(判定値)であって、各演出動作の実行時間(演出時間)に対応した判定値が予め設定されている。なお、演出制御プロセスタイマ判定値に代えて、例えば主基板11から所定の演出制御コマンドを受信したことや、演出制御用マイクロコンピュータ120のCPUにおいて演出動作を制御するための処理として所定の処理が実行されたことといった、所定の制御内容や処理内容に対応して、演出制御の切換タイミング等を示すデータが設定されていてもよい。
表示制御データには、例えば飾り図柄の可変表示中における各飾り図柄の変動態様を示すデータといった、画像表示装置5の表示領域における演出画像の表示態様を示すデータが含まれている。すなわち、表示制御データは、画像表示装置5の表示領域における演出画像の表示動作を指定するデータである。音声制御データには、例えば飾り図柄の可変表示中における飾り図柄の可変表示動作に連動した効果音等の出力態様を示すデータといった、スピーカ8L、8Rからの音声出力態様を示すデータが含まれている。すなわち、音声制御データは、スピーカ8L、8Rからの音声出力動作を指定するデータである。ランプ制御データには、例えば遊技効果ランプ9や装飾用LEDといった、発光体の点灯動作態様を示すデータが含まれている。すなわち、ランプ制御データは、発光体の点灯動作を指定するデータである。操作検出制御データは、例えば操作ボタンに対する遊技者の指示操作(例えば押下操作など)を有効に検出する操作有効期間や、有効に検出した場合における演出動作の制御内容等を指定するデータといった、操作ボタン(スティックコントローラが含まれてもよい)を用いた演出動作態様を示すデータが含まれている。
なお、これらの制御データは、全ての演出制御パターンに含まれなければならないものではなく、各演出制御パターンによる演出動作の内容に応じて、一部の制御データを含んで構成される演出制御パターンがあってもよい。また、演出制御パターンに含まれる複数種類のプロセスデータでは、各タイミングで実行される演出動作の内容に応じて、それぞれのプロセスデータを構成する制御データの種類が異なっていてもよい。すなわち、表示制御データや音声制御データ、ランプ制御データ、操作検出制御データの全部を含んで構成されたプロセスデータもあれば、これらの一部を含んで構成されたプロセスデータもあってよい。さらに、例えば演出用役物が備える可動部材における動作態様を示す演出用模型制御データといった、その他の各種制御データが含まれることがあってもよい。
図36(B)は、演出制御パターンの内容に従って実行される各種の演出動作を示している。演出制御用マイクロコンピュータ120のCPUは、演出制御パターンに含まれる各種の制御データに従って、演出動作の制御内容を決定する。例えば、演出制御プロセスタイマ値が演出制御プロセスタイマ判定値のいずれかと合致したときには、その演出制御プロセスタイマ判定値と対応付けられた表示制御データにより指定される態様で飾り図柄を表示させるとともに、キャラクタ画像や背景画像といった演出画像を画像表示装置5の表示領域に表示させる制御を行う。また、音声制御データにより指定される態様でスピーカ8L、8Rから音声を出力させる制御を行うとともに、ランプ制御データにより指定される態様で遊技効果ランプ9等の発光体を点滅させる制御を行い、操作検出制御データにより指定される操作有効期間にて操作ボタン等に対する操作を受け付けて演出内容を決定する制御を行う。なお、演出制御プロセスタイマ判定値と対応していても制御対象にならない演出用部品に対応するデータには、ダミーデータ(制御を指定しないデータ)が設定されてもよい。
演出制御用マイクロコンピュータ120では、例えば飾り図柄の可変表示を開始するときなどに、変動パターン指定コマンドに示された変動パターンなどに基づいてCPUが演出制御パターンをセットする。ここで、演出制御パターンをセットする際には、該当する演出制御パターンを構成するパターンデータを、演出制御用マイクロコンピュータ120のROMから読み出してRAMの所定領域に一時記憶させてもよいし、該当する演出制御パターンを構成するパターンデータのROMにおける記憶アドレスを、RAMの所定領域に一時記憶させて、ROMにおける記憶データの読出位置を指定するだけでもよい。その後、演出制御プロセスタイマ値が更新されるごとに、演出制御プロセスタイマ判定値のいずれかと合致したか否かの判定を行い、合致した場合には、対応する各種の制御データに応じた演出動作の制御を行う。こうして、演出制御用マイクロコンピュータ120では、演出制御パターンに含まれるプロセスデータ#1〜プロセスデータ#n(nは任意の整数)の内容に従って、演出装置(画像表示装置5、スピーカ8L、8R、遊技効果ランプ9等の発光体など)の制御を進行させる。なお、各プロセスデータ#1〜プロセスデータ#nにおいて、演出制御プロセスタイマ判定値#1〜#nと対応付けられた表示制御データ#1〜表示制御データ#n、音声制御データ#1〜音声制御データ#n、ランプ制御データ#1〜ランプ制御データ#n、操作検出制御データ#1〜操作検出制御データ#nは、演出装置における演出動作の制御内容を示し、演出制御の実行を指定する演出制御実行データ#1〜演出制御実行データ#nを構成する。
VDP121は、画像表示装置5の表示領域に各種画像を表示させるための高速描画機能や動画像デコード機能といった画像データ処理機能を有し、演出制御用マイクロコンピュータ120からの表示制御指令に従った画像データ処理を実行する画像処理プロセッサである。なお、VDP121は、GPU(Graphics Processing Unit)、GCL(Graphics Controller LSI)、あるいは、より一般的にDSP(Digital Signal Processor)と称される画像処理用のマイクロプロセッサであってもよい。演出データメモリ122は、例えばフラッシュメモリなどの半導体メモリや磁気メモリ、光学メモリといった不揮発性の記録媒体を用いて構成されればよい。
音声制御基板13には、例えば入出力ドライバや音声合成用IC、音声データROM、増幅回路、ボリュームなどが搭載されている。一例として、音声制御基板13では、演出制御基板12から伝送された効果音信号に示される音番号データが入出力ドライバを介して音声合成用ICに入力される。音声合成用ICは、音番号データに応じた音声や効果音を生成し増幅回路に出力する。増幅回路は、音声合成用ICの出力レベルを、ボリュームで設定されている音量に応じたレベルに増幅した音声信号を、スピーカ8L、8Rに出力する。音声データROMには、音番号データに応じた制御データが格納されており、音声合成用ICが音番号データに応じた制御データを読み出して、音声や効果音が生成される。音声データROMの記憶データは、所定期間における音声や効果音の出力態様を時系列的に示すデータなどから構成されていればよい。
ランプ制御基板14には、例えば入出力ドライバやランプドライバなどが搭載されている。一例として、ランプ制御基板14では、演出制御基板12から伝送された電飾信号が、入出力ドライバを介してランプドライバに入力される。ランプドライバは、電飾信号を増幅して遊技効果ランプ9などに供給する。
払出制御基板15には、払出制御用マイクロコンピュータ150やスイッチ回路151などが搭載されている。スイッチ回路151には、満タンスイッチ26、球切れスイッチ27、払出モータ位置センサ71、払出カウントスイッチ72、エラー解除スイッチ73などの各種スイッチやセンサからの検出信号が入力される。スイッチ回路151は、これらの検出信号を取り込んで、払出制御用マイクロコンピュータ150に伝送する。払出制御用マイクロコンピュータ150は、例えば遊技制御用マイクロコンピュータ100と同様の1チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット/割込みコントローラ、CPU、ROM、RAM、CTC、乱数回路、PIP、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、払出制御用マイクロコンピュータ150における構成の全部又は一部を、遊技制御用マイクロコンピュータ100における構成とは異ならせてもよい。一例として、払出制御基板15の側で乱数値となる数値データを用いない場合には、払出制御用マイクロコンピュータ150が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板11との間で双方向のシリアル通信が可能な送受信回路が1つ設けられていればよく、払出モータ51、エラー表示用LED74、発射制御基板17に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
払出制御用マイクロコンピュータ150では、CPUがROMから読み出した払出制御用のプログラムを実行することにより、払出モータ51を含む払出装置による払出動作などを制御するための処理が実行される。このときには、CPUがROMから固定データを読み出す固定データ読出動作や、CPUがRAMに各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPUがRAMに一時記憶されている各種の変動データを読み出す変動データ読出動作、CPUが外部バスインタフェースやPIP、シリアル通信回路などを介して払出制御用マイクロコンピュータ150の外部から各種信号の入力を受け付ける受信動作、CPUが外部バスインタフェースやシリアル通信回路などを介して払出制御用マイクロコンピュータ150の外部へと各種信号を出力する送信動作なども行われる。なお、払出制御用マイクロコンピュータ150を構成する1チップのマイクロコンピュータには、少なくともCPUの他にRAMが内蔵されていればよく、ROMやPIPなどは、外付けされるものでも内蔵されるものでもよい。
次に、本実施例におけるパチンコ遊技機1の動作(作用)を説明する。主基板11では、電源基板10からの電力供給が開始され遊技制御用マイクロコンピュータ100へのリセット信号がハイレベル(オフ状態)になったことに応じて、遊技制御用マイクロコンピュータ100が起動し、CPU505がROM506から読み出したセキュリティチェックプログラム506Aに基づき、図37のフローチャートに示すようなセキュリティチェック処理が実行される。このとき、遊技制御用マイクロコンピュータ100は、セキュリティモードとなり、ROM506に記憶されているゲーム制御用のユーザプログラムは未だ実行されない状態となる。
図37に示すセキュリティチェック処理を開始すると、CPU505は、まず、セキュリティチェック処理が実行されることにより遊技制御用マイクロコンピュータ100がセキュリティモードとなる時間(セキュリティ時間)を決定するための処理を実行する。このとき、CPU505は、ROM506のプログラム管理エリアに記憶されるセキュリティ時間設定KSESのビット番号[2−0]におけるビット値を読み出す(ステップS1)。そして、この読出値が“000”であるか否かを判定する(ステップS2)。
ステップS2にて読出値が“000”と判定された場合には(ステップS2;Yes)、定常設定時間を既定の固定時間に設定する(ステップS3)。ここで、定常設定時間は、セキュリティ時間のうち、パチンコ遊技機1におけるシステムリセットの発生等に基づくセキュリティチェック処理の実行回数(遊技制御用マイクロコンピュータ100がセキュリティーモードとなる回数)に関わりなく、一定となる時間成分である。また、固定時間は、セキュリティ時間のうち、遊技制御用マイクロコンピュータ100の仕様などに基づいて予め定められた不変時間成分であり、例えばセキュリティ時間として設定可能な最小値となるものであればよい。
ステップS2にて読出値が“000”以外と判定された場合には(ステップS2;No)、その読出値に対応して、固定時間に加えて図11(D)に示す設定内容により選択される延長時間を、定常設定時間に設定する(ステップS4)。こうして、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、固定時間に加えて予め選択可能な複数の延長時間のいずれかに設定することができる。
ステップS3、S4の処理のいずれかを実行した後には、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を読み出す(ステップS5)。そして、この読出値が“00”であるか否かを判定する(ステップS6)。
ステップS6にて読出値が“00”と判定された場合には(ステップS6;Yes)、定常設定時間をセキュリティ時間に設定する(ステップS7)。これに対して、読出値が“00”以外と判定された場合には(ステップS6;No)、その読出値に対応して決定される可変設定時間を、定常設定時間に加算してセキュリティ時間に設定する(ステップS8)。ここで、可変設定時間は、セキュリティ時間のうち、セキュリティチェック処理が実行されるごとに変化する時間成分であり、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“01”(ショートモード)であるか“10”(ロングモード)であるかに応じて異なる所定の時間範囲で変化する。例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ100に内蔵された可変セキュリティ時間用レジスタに格納される場合には、ステップS8の処理において、可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、可変設定時間がシステムリセット毎に所定の時間範囲でランダムに変化するように決定されればよい。こうして、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、システムリセットの発生等に基づくセキュリティチェック処理が実行されるごとに所定の時間範囲で変化させることができる。
ここで、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であり、なおかつ、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、ステップS4にて設定される延長時間と、ステップS8にて設定される可変設定時間との双方が、固定時間に加算されて、セキュリティ時間が決定されることになる。
ステップS7、S8の処理のいずれかを実行した後には、ROM506の所定領域に記憶されたセキュリティコードを読み出す(ステップS9)。ここで、ROM506の所定領域には、記憶内容のデータを所定の演算式によって演算した演算結果のセキュリティコードが予め記憶されている。セキュリティコードの生成方法としては、例えばハッシュ関数を用いてハッシュ値を生成するもの、エラー検出コード(CRCコード)を用いるもの、エラー訂正コード(ECCコード)を用いるもののいずれかといった、予め定められた生成方法を使用すればよい。また、ROM506のセキュリティコード記憶領域とは異なる所定領域には、セキュリティコードを演算により特定するための演算式が、暗号化して予め記憶されている。
ステップS9の処理に続いて、暗号化された演算式を復号化して元に戻す(ステップS10)。その後、ステップS10で復号化した演算式により、ROM506の所定領域における記憶データを演算してセキュリティコードを特定する(ステップS11)。このときセキュリティコードを特定するための演算に用いる記憶データは、例えばROM506の記憶データのうち、セキュリティチェックプログラム506Aとは異なるユーザプログラムの全部又は一部に相当するプログラムデータ、あるいは、所定のテーブルデータを構成する固定データの全部又は一部であればよい。そして、ステップS9にて読み出したセキュリティコードと、ステップS11にて特定されたセキュリティコードとを比較する(ステップS12)。このときには、比較結果においてセキュリティコードが一致したか否かを判定する(ステップS13)。
ステップS13にてセキュリティコードが一致しない場合には(ステップS13;No)、ROM506に不正な変更が加えられたと判断して、CPU505の動作を停止状態(HALT)へ移行させる。これに対して、ステップS13にてセキュリティコードが一致した場合には(ステップS13;Yes)、ステップS7やステップS8の処理で設定されたセキュリティ時間が経過したか否かを判定する(ステップS14)。そして、セキュリティ時間が経過していなければ(ステップS14;No)、ステップS14の処理を繰り返し実行して、セキュリティ時間が経過するまで待機する。その一方で、ステップS14にてセキュリティ時間が経過したと判定された場合には(ステップS14;Yes)、例えばCPU505に内蔵されたプログラムカウンタの値をROM506におけるユーザプログラムの先頭アドレス(アドレス0000H)に設定することなどにより、遊技制御メイン処理の実行を開始する。このときには、ROM506に記憶されたユーザプログラムを構成する制御コードの先頭から遊技制御の実行が開始されることにより、遊技制御用マイクロコンピュータ100の動作状態がセキュリティモードからユーザモードへと移行し、遊技制御メイン処理の実行が開始されることになる。
図38は、遊技制御用マイクロコンピュータ100のCPU505により実行される遊技制御メイン処理の一例を示すフローチャートである。なお、以下に説明する各処理は、遊技制御用マイクロコンピュータ100が備えるCPU505によって実行されるものとする。また、遊技制御用マイクロコンピュータ100が備えるCTC508や乱数回路509、シリアル通信回路511などで発生した各種の割込み要因に基づく割込み要求は、CPU505に所定の割込み処理を実行させるためのものである。そして、CPU505やCPU505以外の各種回路を含んだ概念を遊技制御用マイクロコンピュータ100ということもあるものとする。
図38に示す遊技制御メイン処理を開始すると、CPU505は、まず、割込禁止に設定し(ステップS21)、割込モードの設定を行う(ステップS22)。例えば、ステップS22では、遊技制御用マイクロコンピュータ100の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビットは“0”)とを合成することにより割込アドレスが生成されるマスク可能割込の割込モード[2]が設定される。マスク可能な割込みが発生したときには、CPU505が自動的に割込禁止状態となる設定を行うとともに、プログラムカウンタの内容がスタックにセーブされればよい。
続いて、例えばスタックポインタ指定アドレスの設定など、スタックポインタに関わる設定を行う(ステップS23)。また、図8(B)に示すような内蔵レジスタの設定(初期化)を行う(ステップS24)。一例として、ステップS24の処理では、第1チャネル通信設定レジスタSAFMや第2チャネル通信設定レジスタSBFM等の設定を行うことにより、シリアル通信回路511における動作設定が行われればよい。ステップS24の処理に続いて、CTC508やPIP510の設定が行われる(ステップS25)。ステップS25の処理を実行した後には、例えばPIP510に含まれる所定の入力ポートにおける端子状態をチェックすることなどにより、電源断信号がオフ状態となっているか否かを判定するようにしてもよい。
その後、RAM507をアクセス可能に設定する(ステップS26)。続いて、電源基板10に設置されたクリアスイッチ304から伝送されるスイッチ信号(クリア信号)の信号状態などに基づき、クリアスイッチ304がオン操作されたかを判定する(ステップS27)。なお、ステップS27の処理では、クリアスイッチ304から伝送されるクリア信号を複数回チェックし、連続してオン状態となったときに、クリアスイッチ304がオン操作されたと判定してもよい。例えば、クリア信号の状態がオフ状態であることを1回確認したら、所定時間(例えば0.1秒)が経過した後に、クリア信号の状態をもう1回確認する。このとき、クリア信号がオフ状態であれば、クリア信号がオフ状態である旨の判定を行うようにする。他方、このときにクリア信号の状態がオン状態であれば、所定時間が経過した後に、クリア信号の状態を再び確認するようにしてもよい。なお、クリア信号の状態を再確認する回数は1回であってもよいし、複数回であってもよい。また、2回チェックして、チェック結果が一致していなかったときに、もう一度確認するようにしてもよい。
ステップS27にてクリアスイッチ304がオフであるときには(ステップS27;No)、遊技制御フラグ設定部592などに設けられたバックアップフラグがオンとなっているか否かを判定する(ステップS28)。バックアップフラグの状態は、遊技制御用マイクロコンピュータ100への電力供給が停止するときに、遊技制御フラグ設定部592などに設定される。そして、このバックアップフラグの設定箇所がバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、バックアップフラグの状態は保存されることになる。ステップS28では、例えばバックアップフラグの値として「55H」が遊技制御フラグ設定部592に設定されていれば、バックアップあり(オン状態)であると判断される。これに対して、「55H」以外の値が設定されていればバックアップなし(オフ状態)であると判断される。
ステップS28にてバックアップフラグがオンであるときには(ステップS28;Yes)、RAM507のデータチェックを行い、チェック結果が正常であるか否かを判定する(ステップS29)。ステップS29の処理では、例えばRAM507の特定領域における記憶データを用いてチェックサムを算出し、算出されたチェックサムとメインチェックサムバッファに記憶されているチェックサムとを比較する。ここで、メインチェックサムバッファには、前回の電力供給停止時に、同様の処理によって算出されたチェックサムが記憶されている。そして、比較結果が不一致であれば、RAM507の特定領域におけるデータが電力供給停止時のデータとは異なっていることから、チェック結果が正常でないと判断される。
ステップS29におけるチェック結果が正常であるときには(ステップS29;Yes)、例えば遊技制御用マイクロコンピュータ100の内部状態といった主基板11における制御状態や、サブ側の制御基板(例えば演出制御基板12など)の制御状態などを電力供給が停止されたときの状態に戻すための復旧時における設定を行い、電断前の遊技状態を復旧させる(ステップS30)。具体的な一例として、ステップS30の処理では、ROM506に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し、バックアップ時設定テーブルの内容を順次に、RAM507内のワークエリアに設定する。ここで、RAM507のワークエリアはバックアップ電源によってバックアップされており、バックアップ時設定テーブルには、作業領域のうちで初期化してもよい領域についての初期化データが設定されていてもよい。
ステップS27にてクリアスイッチ304がオンであるときや(ステップS27;Yes)、ステップS28にてバックアップフラグがオフであるとき(ステップS28;No)、あるいは、ステップS29にてチェック結果が正常ではないときには(ステップS29;No)、停電復旧時でない電源投入時やシステムリセット時に対応した初期化処理を実行する。この初期化処理では、RAM507のクリア(初期化)を行い(ステップS31)、作業領域となるワークエリアを設定する(ステップS32)。なお、ステップS31の処理では、所定のデータ(例えば遊技制御カウンタ設定部594に設けられたランダムカウンタにおける格納データなど)が任意の値あるいは予め定められている初期値などに設定されてもよい。また、RAM507の全領域を初期化してもよいし、一部の領域を初期化する一方で所定のデータはそのままにしてもよい。ステップS31の処理が実行されるときには、乱数回路509の動作状態も初期化してもよい。ステップS32の処理により、遊技制御フラグ設定部592、遊技制御タイマ設定部593、遊技制御カウンタ設定部594、遊技制御バッファ設定部595などに初期値が設定されればよい。このときには、演出制御基板12等といったサブ側の各制御基板を初期化するための制御コマンド(初期化指定コマンド)を送信してもよい。例えば、演出制御基板12では、初期化指定コマンドの受信に応答して、画像表示装置5の表示領域においてパチンコ遊技機1における制御が初期化されたことを報知するための画像を表示させるなどの初期化報知が実行されればよい。
ステップS30にて電断前の遊技状態を復旧した後や、ステップS32の処理を実行した後には、ROM506のプログラム管理エリアにおける記憶データに基づき、遊技制御用マイクロコンピュータ100に内蔵された各種回路の動作設定を行う(ステップS33)。一例として、ステップS33の処理内では、プログラム管理エリアに記憶されている第1乱数初期設定KRS1や第2乱数初期設定KRS2を読み出して、図39のフローチャートに示すような乱数回路設定処理が実行される。なお、ステップS33の処理は、ステップS24の処理やステップS25の処理が実行されるときに、実行されるようにしてもよい。
図39に示す乱数回路設定処理において、CPU505は、まず、第1乱数初期設定KRS1のビット番号[3]におけるビット値に基づき、乱数回路509を使用するための設定を行う(ステップS51)。この実施の形態では、第1乱数初期設定KRS1のビット番号[3]におけるビット値が予め“1”とされており、このビット値に対応して乱数回路509を使用する設定が行われる。続いて、第1乱数初期設定KRS1のビット番号[2]におけるビット値に基づき、乱数回路509における乱数更新クロックRGKの設定を行う(ステップS52)。例えば、第1乱数初期設定KRS1のビット番号[2]におけるビット値が予め“1”とされていることに対応して、乱数用クロック生成回路112で生成された乱数用クロックRCLKを2分周して乱数更新クロックRGKとする設定が行われる。
ステップS52での設定を行った後には、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値に基づき、乱数回路509における乱数更新規則の設定を行う(ステップS53)。例えば、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“00”とされている場合には、乱数列RSNにおける乱数値となる数値データの更新順を指定する乱数更新規則を2周目以降も変更しない設定がなされる。また、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“01”とされている場合には、乱数列RSNにおける乱数更新規則を2周目以降はソフトウェアで変更する設定がなされる。さらに、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“10”とされている場合には、乱数列RSNにおける乱数更新規則を2周目以降は自動で変更する設定がなされる。
続いて、第2乱数初期設定KRS2のビット番号[1]におけるビット値に基づき、乱数値となる数値データにおける起動時スタート値を決定する(ステップS54)。例えば、第2乱数初期設定KRS2のビット番号[1]におけるビット値が予め“0”とされている場合には、乱数のスタート値をデフォルト値「0000H」とする設定がなされる。また、第2乱数初期設定KRS2のビット番号[1]におけるビット値が予め“1”とされている場合には、乱数のスタート値をIDナンバーに基づく値とする設定がなされる。
さらに、第2乱数初期設定KRS2のビット番号[0]におけるビット値に基づき、乱数値となる数値データのスタート値をシステムリセット毎に変更するか否かの設定を行う(ステップS55)。例えば、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“0”とされている場合には、パチンコ遊技機1の電源初期投入時(バックアップ無効後の起動)における起動であるか、システムリセットによる再起動であるかに関わりなく、ステップS54にて設定した起動時スタート値をそのまま用いて、乱数回路509におけるスタート値とすればよい。また、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“1”とされている場合には、乱数のスタート値をシステムリセット毎に変更する設定がなされる。例えば、システムリセットの発生時といった所定タイミングにて、例えばフリーランカウンタ554Aといった所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ100に内蔵された乱数スタート値用レジスタに格納される場合には、ステップS55の処理において、乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、乱数のスタート値がシステムリセット毎に所定の数値範囲(例えば乱数生成回路553にて生成されるカウント値順列RCNに含まれる数値データの全部又は一部を含む範囲)でランダムに変化するように決定されればよい。
ステップS55の処理を実行した後には、例えば乱数値レジスタR1Dや乱数値レジスタR2Dに格納されている数値データを読み出すことなどにより、乱数ラッチフラグレジスタRDFMのビット番号[1]やビット番号[0]に格納される乱数ラッチフラグデータRDFM1や乱数ラッチフラグデータRDFM0のビット値を“0”として、各乱数ラッチフラグをオフ状態にクリアする(ステップS56)。一例として、乱数ラッチフラグデータRDFM1と乱数ラッチフラグデータRDFM0について、それぞれの値が“1”であるか“0”であるかを判定し、その値が“1”であれば、対応する乱数値レジスタの読み出しを行うことにより、乱数ラッチフラグをオフ状態とすればよい。あるいは、乱数ラッチフラグデータRDFM1や乱数ラッチフラグデータRDFM0の値にかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの読み出しを行うことにより、各乱数ラッチフラグをオフ状態としてもよい。なお、ステップS56の処理により乱数値レジスタR1Dや乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。こうしたステップS56の処理による設定が完了すると、乱数回路509では乱数値の生成動作が開始されればよい。
なお、乱数回路設定処理による設定の一部又は全部は、CPU505の処理が介在することなく、乱数回路509がプログラム管理エリアの記憶データに基づき自律的に行うようにしてもよい。この場合、乱数回路509は、遊技制御用マイクロコンピュータ100がセキュリティモードとなっているときには初期設定を行わず、乱数値の生成動作が行われないようにしてもよい。そして、遊技制御用マイクロコンピュータ100にてCPU505がROM506に記憶されたユーザプログラムを読み出して遊技制御メイン処理の実行が開始されたときに、例えばCPU505から乱数回路509に対して初期設定を指示する制御信号が伝送されたことなどに応答して、乱数回路509が初期設定を行ってから乱数値の生成動作を開始するようにしてもよい。あるいは、特に乱数回路509が遊技制御用マイクロコンピュータ100に外付けされる場合などには、遊技制御用マイクロコンピュータ100がセキュリティモードとなっているときでも、乱数回路509がCPU505における処理とは独立して、プログラム管理エリアの記憶データに基づく初期設定を行ってから、乱数値の生成動作を開始するようにしてもよい。また、図38に示すステップS33の処理には、プログラム管理エリアに記憶されている割込み初期設定KIISを読み出して、リセット/割込みコントローラ504におけるマスカブル割込み要因の優先制御に関する設定を行う処理などが含まれてもよい。マスカブル割込み要因の優先順位を設定する際には、割込み初期設定KIISのビット番号[3−0]におけるビット値に対応して、最優先割込みの設定が行われる。例えば、割込み初期設定KIISのビット番号[3−0]のビット値を予め「04H」及び「05H」のいずれかとしておくことにより、シリアル通信回路511で発生した割込み要因による割込み処理を最優先で実行することができる。こうして、割込み初期設定KIISのビット番号[3−0]におけるビット値に応じたマスカブル割込み要因の優先制御を行うことにより、割込み処理の優先順位を任意に設定可能とし、設計の自由度を増大させることができる。
ステップS33での設定を行った後には、乱数回路509における動作異常の有無を検査するための乱数回路異常検査処理を実行する(ステップS34)。図40は、ステップS34にて実行される乱数回路異常検査処理の一例を示すフローチャートである。
図40に示す乱数回路異常検査処理において、CPU505は、まず、例えば遊技制御カウンタ設定部594などに設けられた乱数用クロック異常判定カウンタをクリアして、そのカウント値である乱数用クロック異常判定カウント値を「0」に初期化する(ステップS61)。続いて、内部情報レジスタCIFのビット番号[4]に格納されている内部情報データCIF4を読み出す(ステップS62)。そして、ステップS62での読出値が“1”であるか否かを判定する(ステップS63)。乱数回路509が備える周波数監視回路551では、乱数用外部クロック端子ERCにおける乱数用クロックRCLKの入力状態を、内部システムクロックSCLKと比較する。そして、乱数用クロックRCLKの入力状態に、図11(B)で示したような設定内容に応じた周波数異常が検出されたときには、内部情報データCIF4としてビット値“1”が書き込まれる。
そこで、ステップS63にて読出値が“1”と判定された場合には(ステップS63;Yes)、乱数用クロック異常判定カウント値を1加算するように更新する(ステップS64)。このときには、ステップS64での更新後におけるカウント値が所定のクロック異常判定値に達したか否かを判定する(ステップS65)。ここで、クロック異常判定値は、周波数監視回路551により乱数用クロックRCLKの周波数異常が連続して検知された場合にクロック異常と判定するために予め定められた数値であればよい。ステップS65にてクロック異常判定値に達していなければ、ステップS62の処理に戻り、再び内部情報データCIF4のビット値に基づく判定を行う。
ステップS65にてクロック異常判定値に達した場合には(ステップS65;Yes)、所定の乱数用クロックエラー時処理を実行してから(ステップS66)、乱数回路異常検査処理を終了する。なお、乱数用クロックエラー時処理では、例えば演出制御基板12に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数用クロックRCLKの周波数異常が検知されたことを報知させるとともに、所定のエラー解除手順(例えばシステムリセットやエラー解除スイッチの操作など)がとられるまでは、以後の処理には進まないようにしてもよく、あるいは、乱数用クロックエラー時処理の終了とともに乱数回路異常検査処理を終了して、以後は乱数用クロックエラー時処理を実行しない通常時とほぼ同様の遊技制御などが実行されるようにしてもよい。ここで、ステップS66にて乱数用クロックエラー時処理を実行した後に遊技制御などが実行される場合には、乱数用クロックエラー時処理の実行に対応したエラーの発生状態を記憶しておき、例えば後述する図45に示すステップS195の処理に基づき乱数用クロックRCLKの周波数異常を通知する演出制御コマンドを送信するようにしてもよい。また、乱数用クロックエラー時処理を実行することなく、CPU505の動作を停止状態(HALT)へ移行させてもよい。
ステップS63にて読出値が“0”と判定された場合には(ステップS63;No)、例えば遊技制御カウンタ設定部594などに設けられた乱数値異常判定カウンタをクリアして、そのカウント値である乱数値異常判定カウント値を「0」に初期化する(ステップS67)。なお、ステップS63の処理では、ステップS62にて読み出した内部情報データCIF4のビット値が複数回(例えば2回など)連続して“0”となったときに、読出値が“0”であると判定してもよい。
ステップS67の処理に続いて、乱数値における異常の有無をチェックするために用いるチェック値を、初期値「0000H」に設定する(ステップS68)。そして、乱数回路509が備える乱数値レジスタR1Dとなる乱数値レジスタ559Aや乱数値レジスタR2Dとなる乱数値レジスタ559Bから、格納されている乱数値となる数値データを読み出す(ステップS69)。例えば、ステップS69の処理では、乱数ラッチ選択レジスタRDLSのビット番号[1]やビット番号[0]に格納される乱数ラッチ選択データRDLS1や乱数ラッチ選択データRDLS0のビット値を“0”として、ソフトウェアによる乱数値の取り込みを指定する。続いて、乱数値取込指定レジスタRDLTのビット番号[1]やビット番号[0]に格納される乱数値取込指定データRDLT1や乱数値取込指定データRDLT0のビット値を“1”として、乱数値レジスタR2Dや乱数値レジスタR1Dへの取り込みを指定する。なお、乱数値取込指定レジスタRDLTのビット番号[1]やビット番号[0]におけるビット値を“1”とすることは、CPU505から乱数回路509に対して数値データの取り込み(ラッチ)を指示するラッチ信号を出力することに相当する。その後、乱数値レジスタR2Dに供給するレジスタリード信号RRS2をオン状態とすることや、乱数値レジスタR1Dに供給するレジスタリード信号RRS1をオン状態とすることにより、格納されている乱数値となる数値データを読み出すようにすればよい。なお、乱数値レジスタR2Dと乱数値レジスタR1Dのそれぞれに格納された数値データを、同時に読み出して乱数値における異常の有無をチェックしてもよいし、一方のレジスタについて異常の有無をチェックしてから、他方のレジスタについて異常の有無をチェックするようにしてもよい。
ステップS69にて数値データを読み出した後には、その読出値を乱数検査基準値に設定する(ステップS70)。続けて、さらに乱数値レジスタ559Aや乱数値レジスタ559Bから乱数値となる数値データを読み出す(ステップS71)。なお、ステップS71での読出動作は、ステップS69での読出動作と同様の手順で行われればよい。また、ステップS69での読出動作と、ステップS71での読出動作との間には、乱数回路509で生成される乱数列RSNにおける数値データが変化するために十分な遅延時間を設けるとよい。ステップS71にて数値データを読み出した後には、乱数検査基準値と、ステップS71での読出値との排他的論理和演算を実行する(ステップS72)。また、ステップS72での演算結果と、チェック値との論理和演算を実行し、演算結果を新たなチェック値とするように更新させる(ステップS73)。例えば、チェック値はRAM507の所定領域に記憶しておき、ステップS73の処理が実行される毎に、その処理で得られた演算結果を新たなチェック値として保存すればよい。これにより、乱数値レジスタ559Aや乱数値レジスタ559Bから読み出した数値データにおける全ビットの変化が記録され、複数回の読出中に少なくとも1回は値が変化したビットであれば、チェック値において対応するビット値が“1”となる。
そこで、チェック値が「FFFFH」となったか否かを判定し(ステップS74)、なっていれば(ステップS74;Yes)、全ビットについてビット値の変化が認められることから、乱数値が正常に更新されていると判断して、乱数回路異常検査処理を終了する。なお、乱数値が正常に更新されていることを確認できた場合には、乱数ラッチ選択レジスタRDLSのビット番号[1]やビット番号[0]に格納される乱数ラッチ選択データRDLS1や乱数ラッチ選択データRDLS0のビット値を“1”として、入力ポートP1への信号入力に応じた乱数値レジスタR2Dへの乱数値取込や、入力ポートP0への信号入力に応じた乱数値レジスタR1Dへの乱数値取込を、指示するようにしてもよい。この実施の形態では、入力ポートP0に第1始動口スイッチ22Aからの第1始動入賞信号SS1を伝送する配線が接続され、入力ポートP1に第2始動口スイッチ22Bからの第2始動入賞信号SS2を伝送する配線が接続される。これにより、第1始動入賞信号SS1がオン状態となったときに乱数値レジスタR1Dへの乱数値取込を行う一方、第2始動入賞信号SS2がオン状態となったときに乱数値レジスタR2Dへの乱数値取込を行うことができる。
ステップS74にてチェック値が「FFFFH」以外と判定された場合には(ステップS74;No)、乱数値異常判定カウント値を1加算するように更新する(ステップS75)。このときには、ステップS75での更新後におけるカウント値が所定の乱数値異常判定値に達したか否かを判定する(ステップS76)。ここで、乱数値異常判定値は、乱数回路509が正常動作していれば、乱数値レジスタ559Aや乱数値レジスタ559Bから読み出される数値データの全ビットが少なくとも1回は変化するのに十分な判定回数となるように、予め定められた数値であればよい。ステップS76にて乱数値異常判定値に達していなければ、ステップS71の処理に戻り、再び乱数回路509から乱数値となる数値データを読み出して異常の有無をチェックするための判定などを行う。
ステップS76にて乱数値異常判定値に達した場合には(ステップS76;Yes)、所定の乱数値エラー時処理を実行してから(ステップS77)、乱数回路異常検査処理を終了する。なお、乱数値エラー時処理では、例えば演出制御基板12に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数値の異常が検知されたことを報知させるとともに、所定のエラー解除手順(例えばシステムリセットやエラー解除スイッチの操作など)がとられるまでは、以後の処理には進まないようにしてもよく、あるいは、乱数値エラー時処理の終了とともに乱数回路異常検査処理を終了して、以後は乱数値エラー時処理を実行しない通常時とほぼ同様の遊技制御などが実行されるようにしてもよい。ここで、ステップS77にて乱数値エラー時処理を実行した後に遊技制御などが実行される場合には、乱数値エラー時処理の実行に対応したエラーの発生状態を記憶しておき、例えば後述する図43に示すステップS240の処理に基づき客待ちデモ指定コマンドを送信するときなどに、そのエラーの発生状態を通知する客待ちデモ指定コマンドを送信するようにしてもよい。また、乱数値エラー時処理を実行することなく、CPU505の動作を停止状態(HALT)へ移行させてもよい。
このように、乱数回路異常検査処理では、例えばステップS71の処理を繰り返し実行することなどにより、乱数回路509の乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを複数回読み出す。そして、ステップS72〜ステップS74の処理を実行することなどにより読み出した数値データの全ビットを監視して、変化しないビットデータの有無に基づき、ステップS76にて乱数回路509の動作状態に異常が発生したか否かを判定する。これにより、乱数回路509の動作状態に異常が発生していることを確実かつ容易に検知して、不正行為を防止することができる。
なお、ステップS34の乱数回路異常検査処理は、CPU505が実行するものに限定されず、CPU505以外の遊技制御用マイクロコンピュータ100における内蔵回路により乱数回路異常検査処理が実行されてもよい。一例として、乱数回路509が乱数回路異常検査処理を実行する機能を有し、乱数用クロックRCLKの周波数異常が検知されたときや、乱数値の異常が検知されたときに、エラーの発生をCPU505に通知するようにしてもよい。また、乱数回路異常検査処理は、ステップS34のみにて実行されるものに限定されず、例えば遊技制御用マイクロコンピュータ100にてタイマ割込みが発生する毎に、後述する遊技制御用タイマ割込み処理(図41参照)にて乱数回路異常検査処理の一部又は全部が実行されるようにしてもよい。すなわち、ステップS34の乱数回路異常検査処理は、図38に示すステップS35の処理を実行した後に、実行される処理としてもよい。一例として、遊技制御用タイマ割込み処理にて乱数回路異常検査処理が実行される場合には、例えば図40に示すステップS61〜ステップS66の処理を実行する一方で、ステップS67〜ステップS77の処理は実行されないようにしてもよい。ステップS67〜ステップS77の処理は、例えばステップS69の処理を繰り返し実行して乱数回路509から数値データを繰り返し読み出すためなどに、長い処理時間を要することがあり、遊技制御用タイマ割込み処理において処理落ちが発生するおそれがある。そこで、この場合にはステップS61〜ステップS66の処理のみを実行することで、遊技制御用タイマ割込み処理における処理量を軽減し、処理落ちの発生を防止することができる。
図38に示すステップS34にて以上のような乱数回路異常検査処理を実行した後には、割込み許可状態に設定して(ステップS35)、各種割込み要求の発生を待機する。ステップS35の処理を実行した後には、例えばステップS25におけるCTC508の設定に基づき、2ms(ミリ秒)ごとに遊技制御用のタイマ割込みが発生するようになればよい。ステップS35の処理を実行した後には、遊技用乱数更新処理が繰り返し実行される(ステップS36)。
なお、ステップS35の処理を実行するより前に、主基板11に設置された遊技開始スイッチ31から伝送されるスイッチ信号の信号状態などに基づき、遊技開始スイッチ31がオン操作されたか否かを判定するようにしてもよい。この場合には、遊技開始スイッチ35から伝送されるスイッチ信号を複数回チェックし、連続してオン状態となったときに、遊技開始スイッチ31がオン操作されたと判定してもよい。また、遊技開始スイッチ31のオン操作をチェックする処理は、例えばステップS31及びステップS32の処理が実行された場合のように、復旧のない初期状態からのスタート時(コールドスタート時)に限り実行し、例えばステップS30の処理が実行された場合のように、電断前の遊技状態に復旧させるスタート時(ホットスタート時)には遊技開始スイッチ31の操作に関わりなく、例えば遊技制御用タイマ割込み処理といった、遊技の進行を制御する処理に進めるようにしてもよい。ここで、遊技制御用マイクロコンピュータ100が備えるRAM507にて遊技制御カウンタ設定部594に設けられたランダムカウンタとなる領域がバックアップ電源によりバックアップされている場合には、ホットスタート時であれば電断前のランダムカウンタにおける格納データを用いて乱数値となる数値データの更新を開始するので、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値を特定することは困難になる。これに対して、コールドスタート時には、例えばステップS31の処理でランダムカウンタがクリア(初期化)されてしまうことなどにより、一定の初期値(例えば「0」など)から乱数値の更新が開始され、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値が特定されてしまう可能性がある。
そこで、コールドスタート時には遊技開始スイッチ31がオン操作されるまで待機させ、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値が特定されることを困難にする。これにより、特に大当り判定用の乱数値(例えば特図表示結果判定用の乱数値MR1)をソフトウェアのみで更新するような場合に、いわゆる「ぶら下げ基板」を接続してパチンコ遊技機1の動作開始タイミングから所定時間が経過したタイミングで不正信号が入力されても、不正な大当り遊技状態の発生を防止できる。また、遊技開始スイッチ31がオン操作されていないと判定したときには、遊技用乱数更新処理を実行して、ランダムカウンタに格納された乱数値をソフトウェアにより更新するようにしてもよい。これにより、遊技開始スイッチ31のオン操作がなされたタイミングからの経過時間に加えて、パチンコ遊技機1の動作開始タイミングから遊技開始スイッチ31のオン操作がなされるまでの経過時間も特定できなければ、たとえコールドスタート時でもランダムカウンタに格納された乱数値を特定することは困難になり、狙い撃ちや不正信号の入力などにより不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
こうしてステップS35の処理が実行されることにより割込み許可状態となった後、例えばCTC508や乱数回路509、シリアル通信回路511の一部又は全部などにて同時に複数のマスカブル割込み要因が生じたときには、割込み初期設定KIISのビット番号[3−0]におけるビット値による指定に基づき、リセット/割込みコントローラ504によって優先順位の高い割込み要因が受け付けられる。リセット/割込みコントローラ504が割込み要因を受け付けたときには、例えばCPU505が備えるIクラス割込み(IRQ)端子などに対して、オン状態の割込み要求信号を出力する。CPU505にてIRQ端子にオン状態の割込み要求信号が入力されたときには、例えば内部レジスタの格納データを確認した結果などに基づき、発生した割込み要因を特定し、特定された割込み要因に対応するベクタアドレスを先頭アドレスとするプログラムを実行することにより、各割込み要因に基づく割込み処理を開始することができる。
シリアル通信回路511が備える第1チャネル送受信回路による通信データの受信中に、オーバーランエラー、ブレークコードエラー、フレーミングエラー、パリティエラーという、4種類のエラーのいずれかが発生した場合には、第1チャネル受信割込みが発生する。このときには、CPU505が所定のシリアル通信エラー割込み処理を実行してもよい。このシリアル通信エラー割込み処理では、例えば所定の第1チャネル通信設定レジスタにおける所定のビット番号と、第2チャネル通信設定レジスタにおける所定のビット番号とに対応したビット値を、いずれも“0”に設定することなどにより、シリアル通信回路511における送信機能と受信機能をいずれも使用しないように設定すればよい。ここで、第1チャネル通信設定レジスタや第2チャネル通信設定レジスタは、遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれるものであればよい。また、第1チャネル送受信回路による通信データの受信中にエラーが発生したときには、払出モータ51を含む払出装置による遊技球の払出を禁止する制御を行うようにしてもよい。これにより、通信データの受信エラーといった異常が発生したときに、賞球となる遊技球の過剰な払出を防止することができる。
遊技制御用マイクロコンピュータ100では、例えばリセット/割込みコントローラ504がCTC508からの割込み要求を受け付けたことなどに基づき、CPU505が図41のフローチャートに示す遊技制御用タイマ割込み処理を実行する。図41に示す遊技制御用タイマ割込み処理において、CPU505は、まず、割込み禁止状態としてから、所定の電源断処理を実行する(ステップS91)。また、所定のスイッチ処理を実行することにより、スイッチ回路114を介して遊技球検出用の各スイッチ21、22A、22B、23などから入力される検出信号(入賞検出信号)の状態を判定する(ステップS92)。
ステップS92におけるスイッチ処理に続いて、所定のメイン側エラー処理を実行することにより、パチンコ遊技機1の異常診断を行い、その診断結果に応じて必要ならば警告を発生可能とする(ステップS93)。例えば、メイン側エラー処理では、賞球過多や賞球不足、その他の動作エラーが発生した場合に対応して、異常動作の発生を報知するための設定などが行われてもよい。この後、所定の情報出力処理を実行することにより、例えばパチンコ遊技機1の外部に設置されたホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する(ステップS94)。
情報出力処理に続いて、遊技用乱数更新処理を実行する(ステップS95)。この後、CPU505は、特別図柄プロセス処理を実行する(ステップS96)。特別図柄プロセス処理では、遊技制御フラグ設定部592に設けられた特図プロセスフラグの値をパチンコ遊技機1における遊技の進行状況に応じて更新し、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにおける表示動作の制御や特別可変入賞球装置7における大入賞口の開閉動作設定などを所定の手順で行うために、各種の処理が選択されて実行される。
特別図柄プロセス処理に続いて、普通図柄プロセス処理が実行される(ステップS97)。CPU505は、普通図柄プロセス処理を実行することにより、普通図柄表示器20における表示動作(例えばセグメントLEDの点灯、消灯など)を制御して、普通図柄の可変表示や普通可変入賞球装置6Bにおける可動翼片の傾動動作設定などを可能にする。普通図柄プロセス処理を実行した後、CPU505は、例えばステップS92におけるスイッチ処理の実行結果などに基づき、入賞検出信号の入力に応じて賞球個数の設定などを行う賞球処理を実行する(ステップS98)。賞球処理に続いて、メイン側通信制御処理を実行することにより、主基板11から演出制御基板12や払出制御基板15などのサブ側の制御基板に向けて制御コマンドを送信したり、払出制御基板15から伝送された制御コマンドを受信したりするための通信制御を行う(ステップS99)。
一例として、メイン側通信制御処理では、遊技制御バッファ設定部595に設けられた送信コマンドバッファに含まれる払出用送信コマンドバッファの記憶データによって指定されたコマンド送信テーブルにおける設定に対応して、シリアル通信回路511が備える第1チャネル送受信回路に送信動作の指示を送ることなどにより、払出制御コマンドの伝送を可能にする。また、遊技制御バッファ設定部595などに設けられた払出用受信コマンドバッファの記憶内容を確認して受信コマンドが格納されているか否かを判定し、格納されているときには、その受信コマンドを読み出す。なお、払出用受信コマンドバッファに対する受信コマンドの格納は、シリアル通信回路511にて第1チャネル送受信回路により払出通知コマンドとなる通信データを受信したことに応じて発生する第1チャネル受信割込みに基づいて実行される割込み処理により、行われるようにすればよい。他の一例として、メイン側通信制御処理では、送信コマンドバッファに含まれる演出用送信コマンドバッファの記憶データによって指定されたコマンド送信テーブルにおける設定に対応して、シリアル通信回路511が備える第2チャネル送信回路に送信動作の指示を送ることなどにより、演出制御コマンドの伝送を可能にする。こうしたメイン側通信制御処理を実行した後には、割込み許可状態としてから、遊技制御用タイマ割込み処理を終了する。
図38のステップS36や図41のステップS95にて実行される遊技用乱数更新処理では、例えば遊技制御カウンタ設定部594が備えるランダムカウンタの所定領域における記憶データを更新することなどにより、大当り種別決定用の乱数値MR2を1加算すればよい。これにより、大当り種別決定用の乱数値MR2について、遊技用乱数更新処理が実行される毎に1ずつ加算するように更新する。また、遊技用乱数更新処理では、遊技用乱数となる乱数値MR1〜MR5を示す数値データのうち、乱数値MR3〜MR5を示す数値データを順次に更新対象とする乱数値に設定する。ここで、例えば乱数値MR3〜MR5については、加算値や加算判定値、最大判定値が定められてもよい。一例として、変動パターン種別決定用の乱数値MR3に対応して、加算値の範囲が「0」〜「7」、加算判定値が「8」、最大判定値が「252」に定められていればよい。変動パターン決定用の乱数値MR4に対応して、加算値の範囲が「0」〜「7」、加算判定値が「8」、最大判定値が「998」に定められていればよい。普図表示結果決定用の乱数値MR5に対応して、加算値の範囲が「0」〜「2」、加算判定値が「3」、最小判定値が「3」、最大判定値が「14」に定められていればよい。
加算値は、1回のタイマ割込みなどに対応して各乱数値に加算する値であり、その値は遊技用乱数更新処理が実行されるごとに異ならせることができればよい。例えば、加算値は、加算値決定用の乱数値となる数値データなどに基づいて求められるもので、一時的な変数として加算値を記憶するための領域がRAM507などに設けられていればよい。加算判定値は、加算値決定用の乱数値との比較により、各乱数値に対応した加算値を取得するために用いられる値である。より具体的には、加算値決定用の乱数値が各乱数値に対応した加算値の初期値として読み出された後、現在の加算値が加算判定値よりも小さくなったと判定されるまで、現在の加算値から加算判定値を減算した値を、新たな加算値として更新していく。最大判定値や最小判定値は、最終的に求められた加算値を加算したことによる更新後の各乱数値が取り得る値の範囲内であるかを判定するために用いられる値である。例えば、更新後の各乱数値が対応する最大判定値以上であるときには、更新後の乱数値から最大判定値を減算した値を、新たな乱数値として設定できる。また、更新後の普図表示結果決定用の乱数値MR5から最大判定値を減算した値が対応する最小判定値「3」未満であるときには、更新後の乱数値に最小判定値を加算した値を、新たな乱数値として設定できる。なお、例えば乱数値MR2を示す数値データは、遊技制御用マイクロコンピュータ100にてタイマ割込みが発生する毎に、1ずつ加算するように更新されてもよい。
遊技用乱数更新処理では、加算値決定用の乱数値を示す数値データを読み出し、その読出値が更新対象となる乱数値ごとに定められた加算判定値未満であるか否かを判定する。そして、加算判定値未満であれば、読出値を加算値に設定する。これに対して、加算判定値以上であれば、読出値から加算判定値を減算した値を、加算値に設定する。その後、更新対象となる乱数値に加算値を加算して、加算後乱数値とする。このときには、加算後乱数値が、更新対象となる乱数値ごとに定められた最大判定値未満であるか否かを判定する。最大判定値未満であれば、加算後乱数値を更新後乱数値に設定する。これに対して、最大判定値以上であれば、加算後乱数値から最大判定値を減算した値を、更新後乱数値に設定する。また、普図表示結果決定用の乱数値MR5については、減算した値が最小判定値未満であるか否かを判定する。最小判定値以上であれば、減算後の乱数値を更新後乱数値に設定する。これに対して、最小判定値未満であれば、減算後の乱数値に最小判定値を加算した値を、更新後乱数値に設定する。こうして設定された更新後乱数値を、ランダムカウンタにて更新対象となる乱数値を格納する所定領域にセットすることで、乱数値の更新が完了する。
図42は、電源断処理として、図41のステップS91にて実行される処理の一例を示すフローチャートである。この電源断処理において、CPU505は、まず、電源断信号がオン状態であるか否か、すなわち、電源基板10に搭載された電源監視回路303から電源断信号が出力されているか否かを判定する(ステップS111)。このとき、電源断信号がオフ状態であり、電源断信号が出力されていなければ(ステップS112;No)、遊技制御タイマ設定部593に設けられたバックアップ監視タイマをクリアして、その格納値であるバックアップ監視タイマ値を初期値となる「0」に設定する(ステップS112)。これに対して、電源断信号がオン状態であり、電源断信号が出力されているときには(ステップS111;Yes)、バックアップ監視タイマ値を1加算するなどして更新する(ステップS113)。そして、ステップS113における更新後のバックアップ監視タイマ値が予め定められたバックアップ判定値(例えば「2」など)に達したか否かを判定する(ステップS114)。ステップS114にてバックアップ判定値に達していないときには(ステップS114;No)、電源断処理を終了する。
ステップS114にてバックアップ判定値に達した場合には(ステップS114;Yes)、電力の供給停止に対応するための準備処理として、ステップS115以降の処理を実行する。こうした準備処理が実行されるときには、遊技の進行を制御する状態から遊技状態を保存させるための電力供給停止時処理(電源断時制御処理)を実行する状態に移行する。ステップS114の処理でバックアップ判定値に達した場合に限り準備処理を実行することにより、ノイズ等で電源電圧が一瞬低下して電源断信号のオン状態が発生しても、誤って電力供給停止時処理が開始されてしまうことを防止できる。
電力供給停止時処理では、チェックサムを算出して、例えば遊技制御バッファ設定部595に設けられたメインチェックサムバッファなどに記憶させる(ステップS115)。一例として、ステップS115の処理では、RAM507における所定領域の先頭アドレスをチェックサム算出開始アドレスに設定し、その所定領域の最終アドレスに対応してチェックサム算出回数を設定する。こうしたチェックサム算出開始アドレスとチェックサム算出回数の設定に用いられるアドレスで特定されるRAM507の所定領域は、電力供給停止時でも内容が保存されるべき記憶領域として予め定められた内容保存領域であればよい。そして、この内容保存領域における記憶データを順次に読み出して排他的論理和を演算する。例えば、チェックサム算出開始アドレスをポインタにセットした後、RAM507においてポインタが指すアドレスの記憶データを読み出して、初期値が「00」であるチェックサムデータとの排他的論理和を演算した上で、演算結果を新たなチェックサムデータとしてストアする。このときには、ポインタの値を1加算するとともに、チェックサム算出回数を1減算する。続いて、チェックサム算出回数が「0」以外の値であれば、さらにポインタが指すアドレスの記憶データを読み出して、チェックサムデータとの排他的論理和を演算する処理や、ポインタの値を1加算してチェックサム算出回数を1減算する処理を、チェックサム算出回数が「0」になるまで繰り返し実行すればよい。チェックサム算出回数が「0」になったときには、チェックサムデータの各ビット値を反転して、得られた値をメインチェックサムバッファにストアして記憶させればよい。こうしてメインチェックサムバッファに記憶されたデータは、電源投入時にチェックされるパリティデータとして使用される。
ステップS115の処理を実行してチェックサムデータを記憶させたときには、遊技制御フラグ設定部592に設けられたバックアップフラグをオン状態にセットすればよい。その後、例えば所定のRAMアクセスレジスタにアクセス禁止値を設定することなどにより、以後、RAM507へのアクセスを禁止する(ステップS116)。電源電圧が低下していくときには、CPU505の動作などに暴走が生じることや、各種信号線における信号レベル(電圧レベル)が不安定になることなどにより、RAM507の記憶内容が誤って変更される可能性がある。そこで、ステップS116の処理によりRAM507へのアクセスを禁止した状態に設定することで、RAM507に設けられたバックアップ用の記憶領域などにおける記憶内容の誤った変更(破損)を防止できる。また、CPU505は、遊技制御用マイクロコンピュータ100が備える所定の出力ポートにクリアデータである「00」をセットするなどのクリア設定を行う(ステップS117)。さらに、CPU505は、例えばCTC508の制御レジスタに「00」をセットすることなどにより、タイマ割込み禁止状態に設定する(ステップS118)。ここで、CTC508の制御レジスタは、遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれるものであればよい。なお、ステップS117の処理による出力ポートのクリア設定や、ステップS118の処理によるタイマ割込み禁止状態の設定は、ステップS115の処理によりチェックサムが算出されるよりも前に実行してもよい。図41に示す遊技制御用タイマ割込み処理の実行が開始されるときに割込み禁止状態とする場合には、ステップS118の処理によるタイマ割込み禁止状態の設定は実行されなくてもよい。
ステップS118の処理による設定に続いて、電源断信号がオフ状態となったか否かを監視するループ処理に入る(ステップS119)。そして、電源断信号がオン状態のあいだは(ステップS119;No)、ステップS119の処理を繰り返し実行して待機する。これに対して、ステップS119にて電源断信号がオフ状態となったときには(ステップS119;No)、乱数ラッチフラグをクリアするための処理を実行する。
すなわち、乱数ラッチフラグレジスタRDFMのビット番号[0]に格納される乱数ラッチフラグデータRDFM0のビット値が“1”であるか否かに応じて、乱数値レジスタR1Dに対応する乱数ラッチフラグがオンであるか否かを判定する(ステップS120)。そして、この乱数ラッチフラグがオンであれば(ステップS120;Yes)、乱数値レジスタR1Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM0のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする(ステップS121)。また、ステップS120にて乱数ラッチフラグデータRDFM0で指定される乱数ラッチフラグがオフである場合や(ステップS120;No)、ステップS121の処理を実行した後には、乱数ラッチフラグレジスタRDFMのビット番号[1]に格納される乱数ラッチフラグデータRDFM1のビット値が“1”であるか否かに応じて、乱数値レジスタR2Dに対応する乱数ラッチフラグがオンであるか否かを判定する(ステップS122)。このとき、乱数ラッチフラグがオンであれば(ステップS122;Yes)、乱数値レジスタR2Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM1のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする(ステップS123)。こうしたステップS121やステップS123の処理により、乱数ラッチフラグがオフ状態とされて、乱数値レジスタR1Dや乱数値レジスタR2Dに新たな数値データの格納が許可された状態に設定できる。なお、ステップS121やステップS123の処理により乱数値レジスタR1Dや乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。また、ステップS120〜ステップS123の処理に代えて、乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1の値にかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの読み出しを行うことにより、各乱数ラッチフラグをオフ状態とする処理が実行されてもよい。
ステップS122にて乱数ラッチフラグデータRDFM1で指定される乱数ラッチフラグがオフであるときや(ステップS122;No)、ステップS123の処理を実行した後には、所定の電断復旧時における設定を行った後(ステップS124)、遊技制御メイン処理の先頭にリターンする。一例として、ステップS124の処理では、CPU505に内蔵されたスタックポインタに電源断復旧時ベクタテーブルの記憶アドレスを格納し、遊技制御用タイマ割込み処理から復帰(リターン)させる。ここで、電源断復旧時ベクタテーブルは、ROM506に記憶された制御コード(遊技制御プログラム)の先頭アドレスを指定するものであればよい。遊技制御タイマ割込み処理のような割込み処理から復帰(リターン)するときには、スタックポインタで指定されるアドレスの記憶データが復帰アドレスとして読み出される。こうして、ステップS124の処理を実行した後には、CPU505により、ROM506に記憶されている制御コードの先頭から、遊技制御の実行を開始(再開)させることができる。
図43は、スイッチ処理として、図41に示すステップS92にて実行される処理の一例を示す図である。このスイッチ処理において、CPU505は、まず、遊技制御バッファ設定部595に設けられた前回ポートバッファの内容を、前回データバッファに設定する(ステップSA01)。また、前々回ポートバッファの内容と前回データバッファの内容との排他的論理和をとる(ステップSA02)。そして、排他的論理和演算の結果を前回データバッファに設定する(ステップSA03)。この段階で、前回データバッファにおいて、前々回ポートバッファの8ビットと前回ポートバッファの8ビットとのうちで、値が異なるビットが「1」になっている。また、前回ポートバッファの内容を前々回ポートバッファに設定する(ステップSA04)。
そして、入力ポートレジスタPIの格納値を取り込み(ステップSA05)、その取込値と所定の判定マスク値との論理積をとる(ステップSA06)。判定マスク値は、入力ポートレジスタPIにてビット番号[0]〜[7]の各ビット値のうち、いずれを有効な入力信号として取り込むかに応じて、予め設定されたマスク値であればよい。一例として、図23に示すように、入力ポートP0に第1始動口スイッチ22Aからの第1始動入賞信号SS1が入力され、入力ポートP1に第2始動口スイッチ22Bからの第2始動入賞信号SS2が入力されるとのに加え、入力ポートP2にカウントスイッチ23からの検出信号が入力され、入力ポートP3にゲートスイッチ21からの検出信号が入力され、入力ポートP4には一般入賞口に設けられた一般入賞口スイッチからの検出信号が入力される場合であれば、「1FH」の判定マスク値が予め設定されていればよい。
ステップSA06における論理積演算の結果は、前回ポートバッファに設定される(ステップSA07)。なお、ステップSA04、SA07の処理は、次回(2ms後)にスイッチ処理が実行されるときの準備処理に相当する。そして、前回データバッファの内容と前回ポートバッファの内容との論理積をとる(ステップSA08)。この段階で、前回データバッファにおいて、前々回ポートバッファの8ビットと前回ポートバッファの8ビットとのうちで値が異なるビットが「1」になっている。すなわち、各種スイッチからの検出信号のうちで、2ms前の状態が4ms前の状態から変化した(「0」から「1」に、または「1」から「0」に)検出信号に対応するビットが「1」になっている。したがって、ステップSA08の処理を実行することにより、入力ポートレジスタPIに格納された入力信号のうちで「1」(オン状態)になっているビットであって、かつ、2ms前の状態が4ms前の状態から変化したビットが「1」(オン状態)になる。すなわち、論理積演算の結果、現時点の状態がオン状態であって、かつ、前回(2ms前)のスイッチ処理時にオフ状態からオン状態に変化したことが検出された検出信号に対応したビットが「1」(オン状態)になる。
こうして、オフ状態からオン状態に変化し、その後、2回連続してオン状態となった検出信号に対応するビットが「1」になる。なお、「2回連続して」とは「ある時点で実行されたスイッチ処理と、そのスイッチ処理の2ms後に実行されるスイッチ処理との双方で」という意味である。
ステップSA08における論理積演算の結果は、スイッチオンバッファに格納される(ステップSA09)。スイッチオンバッファでは、オフ状態からオン状態に変化した後、2回連続してオン状態が検出された検出信号に対応するビットが「1」になる。したがって、CPU505は、スイッチオンバッファにおいて「1」になっているビットに対応するスイッチの検出信号が確実にオン状態になったと確認できる。なお、「確実に」とは、2回連続してオン状態が検出されたので、すなわち4ms間オン状態が継続しているとみなせるので、検出信号のオン状態がノイズ等によるものではないと判断できるということである。その後、第2始動口異常入賞無効処理を実行してから(ステップSA10)、スイッチ処理を終了する。
図44は、ステップSA10にて実行される第2始動口異常入賞無効処理の一例を示すフローチャートである。この第2始動口異常入賞無効処理において、CPU505は、まず、遊技制御フラグ設定部592に設けられた普図プロセスフラグの値が“3”であるか否かを判定する(ステップSA21)。このとき、普図プロセスフラグの値が“3”であれば(ステップSA21;Yes)、そのまま第2始動口異常入賞無効処理を終了する。
ステップSA21にて普図プロセスフラグの値が“3”以外であると判定された場合には(ステップSA21;No)、遊技制御タイマ設定部593に設けられた第2始動口異常入賞エラー無効タイマの値(第2始動口異常入賞エラー無効タイマ値)が「0」に合致したか否かを判定する(ステップSA22)。このとき、第2始動口異常入賞エラー無効タイマ値が「0」に合致していなければ(ステップSA22;No)、第2始動口異常入賞エラー無効タイマ値を1減算して更新してから(ステップSA23)、第2始動口異常入賞無効処理を終了する。
ステップSA22にて第2始動口異常入賞エラー無効タイマ値が「0」に合致したと判定された場合には(ステップSA22;Yes)、スイッチオンバッファの内容をレジスタなどにロードする(ステップSA24)。そして、CPU505は、ロードしたスイッチオンバッファにおいて、第2始動口スイッチ22Bに対応するビット番号[1]のビット値が「1」であるか否かチェックすることにより、閉鎖状態となっている第2始動入賞口を通過(進入)した遊技球を検出する第2始動口スイッチ22Bからの検出信号がオン状態となっているか否かを判定する(ステップSA25)。
ステップSA25にて第2始動口スイッチ22Bからの検出信号がオフ状態であれば(ステップSA25;No)、閉鎖状態となっている第2始動入賞口に入賞がなかったとして、そのまま第2始動口異常入賞無効処理を終了する。これに対して、ステップSA25にてスイッチオンバッファのビット番号[4]におけるビット値が「1」であれば(ステップSA25;Yes)、閉鎖状態となっている第2始動入賞口に入賞があったとして、遊技制御フラグ設定部592に設けられた第2始動口異常入賞フラグがオンであるか否かを判定する(ステップSA26)。
ステップSA26にて第2始動口異常入賞フラグがオフであれば(ステップSA26;No)、第2始動口異常入賞フラグをオン状態にセットするとともに(ステップSA27)、第2始動口異常入賞エラー無効時間(例えば1000ms)に対応して予め定められたタイマ初期値を第2始動口異常入賞エラー無効タイマにセットしてから(ステップSA28)、第2始動口異常入賞無効処理を終了する。ここで、第2始動口異常入賞エラー無効時間は、球噛みした遊技球が第2始動口スイッチ22Bによって検出されるために必要な時間であればよい。普通可変入賞球装置6B(第2始動入賞口)における球噛みは、例えば普通可変入賞球装置6Bが備える左右一対の開閉羽根が開放状態から閉鎖状態へと変化するときに、第2始動入賞口を通過(進入)しようとする遊技球が開閉羽根と遊技領域に配設された釘との間に詰まるなどして、膠着した状態となることである。また、必要な時間とは、球噛みした状態から1球目が入賞した後、全ての球噛みしていた遊技球が検出されるまでに十分な時間であればよい。
なお、第2始動口異常入賞エラー無効時間は、1000ms以外の時間でも、球噛みした遊技球を第2始動口スイッチ22Bによって確実に検出可能な時間であれば、他の時間を用いてもよい。ステップSA28の処理では、球噛みした遊技球が第2始動口スイッチ22Bによって検出されるために十分な時間であれば、例えば後述する図57のステップS348にてセットされる2000msに対応するタイマ初期値がセットされても構わない。つまり、このような第2始動口異常入賞エラー無効時間に対応するタイマ初期値の第2始動口異常入賞エラー無効タイマへのセットは、普通可変入賞球装置6Bに2個以上の遊技球が進入して球噛みした場合に、これらの球噛みした遊技球の全てが有効に入賞するために、必要とされる。これにより、普通可変入賞球装置6Bに2個以上の遊技球が進入したときに発生する球噛みが起こった場合でも、普通可変入賞球装置6Bが閉状態に移行する以前に進入した遊技球の入賞が無効とされることを防止することができる。なお、ステップSA28にてセットされるタイマ初期値は、後述する図57のステップS348にてセットされるタイマ初期値と同一のものであってもよいし、異なるものであってもよい。
ステップSA26にて第2始動口異常入賞フラグがオンであれば(ステップSA26;Yes)、遊技制御フラグ設定部592に設けられた時短フラグがオンであるか否かをチェックすることにより、パチンコ遊技機1における遊技状態が確変状態や時短状態であるときに時間短縮制御が行われているか否かを判定する(ステップSA29)。このとき、時短フラグがオフであれば(ステップSA29;No)、スイッチオンバッファのビット番号[1]をクリアしてビット値を「0」にすることにより、第2始動入賞口への入賞を無効にする(ステップSA30)。具体的にスイッチオンバッファのビット番号[1]をクリアしてビット値を「0」とすることにより、この実施の形態では、所定個数(例えば3個)の遊技球の賞球としての払出や、第2始動条件が成立したことに基づく第2特図を用いた特図ゲーム、図41に示すステップS94の情報出力処理におけるホール用管理コンピュータへの出力が行われないようになる。なお、所定個数の遊技球の賞球としての払出、第2始動条件が成立したことに基づく第2特図を用いた特図ゲーム、情報出力処理におけるホール用管理コンピュータへの出力のうち、少なくともいずれか一つ、あるいは二つ以上を組み合わせたものが行われるものであってもよい。その後、遊技制御フラグ設定部592に設けられた異常入賞報知フラグをオン状態にセットする(ステップSA31)。
ステップSA31の処理に続いて、乱数値レジスタR2Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM1のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態としてから(ステップSA32)、第2始動口異常入賞無効処理を終了する。こうしたステップSA32の処理により、乱数ラッチフラグがオフ状態とされて乱数値レジスタR2Dに新たな数値データの格納が許可された状態に設定できる。なお、ステップSA32の処理により乱数値レジスタR2Dから読み出された数値データは、第2始動条件が成立したことに基づく第2特図を用いた特図ゲームが行われないことに対応して、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。
ステップSA29にて時短フラグがオンであれば(ステップSA29;Yes)、スイッチオンバッファのビット番号[1]をクリアすることなく、そのまま第2始動口異常入賞無効処理を終了する。
図45は、メイン側エラー処理として、図41のステップS93にて実行される処理の一例を示すフローチャートである。このメイン側エラー処理において、CPU505は、まず、所定の報知禁止期間であるか否かを判定する(ステップS191)。ここで、報知禁止期間は、例えばパチンコ遊技機1への電力供給が開始されたことに対応した初期報知が開始された場合に異常入賞の報知を禁止する期間として、予め定められたものであればよい。
ステップS191にて報知禁止期間ではないと判定された場合には(ステップS191;No)、遊技制御フラグ設定部592に設けられた異常入賞報知フラグがオンであるか否かを判定する(ステップS192)。そして、異常入賞報知フラグがオンであるときには(ステップS192;Yes)、異常入賞フラグをクリアしてオフ状態にした後(ステップS193)、異常入賞報知コマンドを送信するための設定を行う(ステップS194)。例えば、ステップS194の処理では、ROM506に予め格納されている異常入賞報知コマンドテーブルの記憶アドレス(先頭アドレス)を、送信コマンドバッファに含まれる演出制御コマンドバッファにて、送信コマンドポインタにより指定されたバッファ領域にセットする。こうして設定された異常入賞報知コマンドは、例えばメイン側エラー処理が終了した後に図41に示すステップS99のメイン側通信制御処理が実行されることなどにより、主基板11から演出制御基板12に対して伝送される。
ステップS191にて報知禁止期間であるときや(ステップS191;Yes)、ステップS192にて異常入賞報知フラグがオフであるとき(ステップS192;No)、あるいは、ステップS194の処理を実行した後には、その他のエラーに対応する設定を行ってから、メイン側エラー処理を終了する。
図46は、特別図柄プロセス処理として、図41に示すステップS96にて実行される処理の一例を示すフローチャートである。この特別図柄プロセス処理において、CPU505は、まず、始動入賞判定処理を実行する(ステップS131)。図47は、ステップS131にて実行される始動入賞判定処理の一例を示すフローチャートである。
図47に示す始動入賞判定処理を開始すると、CPU505は、まず、第1始動口スイッチ22Aにおける遊技球の検出状態をチェックする(ステップS201)。一例として、ステップS201の処理では、遊技制御バッファ設定部595に設けられた所定のスイッチオンバッファにおける格納値をロードして、第1始動口スイッチ22Aと対応付けられたビット値(ビット番号[0]のビット値など)が“0”であるか“1”であるかを特定する。このとき、チェックしたビット値が“0”であれば第1始動口スイッチ22Aは遊技球を検出しておらずオフ状態であることを示す一方、“1”であれば第1始動口スイッチ22Aは遊技球を検出したことによりオン状態であることを示す。ステップS201の処理に続いて、第1始動口入賞テーブル136Aを選択して、使用テーブルにセットする(ステップS202)。一例として、ステップS202の処理では、ROM506における第1始動口入賞テーブル136Aの記憶アドレス(先頭アドレス)を、所定のテーブルポインタに格納することで、第1始動口入賞テーブル136Aを使用テーブルとして参照可能に設定すればよい。以下、各種のテーブルを選択して使用テーブルにセットする処理において、同様の設定が行われればよい。
ステップS202の処理に続いて、ステップS201でのチェック結果に基づいて、第1始動口スイッチ22Aがオン状態であるか否かを判定する(ステップS203)。このとき、第1始動口スイッチ22Aがオン状態であれば(ステップS203;Yes)、所定の乱数値取得処理を実行するとともに(ステップS204)、入賞時乱数値判定処理を実行する(ステップS205)。
ステップS203にて第1始動口スイッチ22Aがオフ状態であると判定されたときや(ステップS203;No)、ステップS205にて入賞時乱数値判定処理を実行した後には、第2始動口スイッチ22Bにおける遊技球の検出状態をチェックする(ステップS206)。ステップS206の処理は、ステップS201の処理を第2始動口スイッチ22Bに適合させたものであればよい。続いて、第2始動口入賞テーブル136Bを選択して、使用テーブルにセットする(ステップS207)。さらに、ステップS206でのチェック結果に基づいて、第2始動口スイッチ22Bがオン状態であるか否かを判定する(ステップS208)。そして、第2始動口スイッチ22Bがオン状態であれば(ステップS208;Yes)、ステップS204と同様に乱数値取得処理を実行するとともに(ステップS209)、ステップS205と同様に入賞時乱数値判定を実行してから(ステップS210)、始動入賞判定処理を終了する。これに対して、ステップS208にて第2始動口スイッチ22Bがオフ状態であると判定されたときには、ステップS209の乱数値取得処理やステップS210の入賞時乱数値判定処理を実行せずに、始動入賞判定処理を終了する。
ステップS204やステップS209において実行される乱数値取得処理は、共通の処理ルーチンとして、予め用意されたユーザプログラム(ゲーム制御用の遊技制御処理プログラム)に含まれる制御コードにより実現される処理であればよい。この乱数値取得処理では、ステップS202の処理でセットされた第1始動口入賞テーブル136Aを使用するか、ステップS207の処理でセットされた第2始動口入賞テーブル136Bを使用するかに応じて、第1始動入賞口を遊技球が通過(進入)した場合に対応した各種処理と、第2始動入賞口を遊技球が通過(進入)した場合に対応した各種処理とのうち、いずれかを実行することができる。
図48は、乱数値取得処理として、図47のステップS204やステップS209にて実行される処理の一例を示すフローチャートである。この乱数値取得処理において、CPU505は、まず、遊技球が通過(進入)した始動入賞口に対応する保留記憶カウント値を読み出す(ステップS501)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、遊技制御カウンタ設定部594から第1保留記憶カウント値を読み出す一方、遊技球が第2始動入賞口を通過(進入)した場合には、遊技制御カウンタ設定部594から第2保留記憶カウント値を読み出す。このときには、例えば図47に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される第1保留記憶カウンタアドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される第2保留記憶カウンタアドレスに対応して、保留記憶カウント値の読出元となるRAM507の記憶アドレスなどを特定できればよい。
続いて、ステップS501の処理における読出値が、予め定められた上限値(例えば「4」など)以上であるか否かを判定する(ステップS502)。このとき、上限値未満であれば(ステップS502;No)、ステップS501の処理で読み出した保留記憶カウント値を1加算するように更新する(ステップS503)。また、遊技球が通過(進入)した始動入賞口に対応する特図保留記憶部における保留データの記憶位置を特定する(ステップS504)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、第1特図保留記憶部591Aにおける保留データの記憶位置を特定する一方、遊技球が第2始動入賞口を通過(進入)した場合には、第2特図保留記憶部591Bにおける保留データの記憶位置を特定する。このときには、例えば図47に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される第1特図保留記憶部アドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される第2特図保留記憶部アドレスに、ステップS501の処理などで読み出した保留記憶カウント値に対応するアドレス加算値を加算することなどにより、保留データの記憶位置となる第1特図保留記憶部591Aや第2特図保留記憶部592Bの記憶アドレスなどを特定できればよい。
ステップS504の処理を実行した後には、特図表示結果決定用の乱数値MR1となる数値データの読出元となる乱数値レジスタを特定する(ステップS505)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、乱数値レジスタR1Dを数値データの読出元とする一方、遊技球が第2始動入賞口を通過(進入)した場合には、乱数値レジスタR2Dを数値データの読出元とする。このときには、例えば図47に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される乱数値レジスタR1Dアドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される乱数値レジスタR2Dアドレスに対応して、数値データの読出元となる乱数値レジスタのアドレスなどを特定できればよい。
そして、ステップS505にて特定された乱数値レジスタを読み出すことなどにより、特図表示結果決定用の乱数値MR1となる数値データを抽出する(ステップS506)。すなわち、ステップS505の処理で乱数値レジスタR1Dが読出元とされた場合には、乱数回路509が備える乱数値レジスタR1Dとしての乱数値レジスタ559Aから、数値データを読み出して抽出する。その一方で、ステップS505の処理で乱数値レジスタR2Dが読出元とされた場合には、乱数回路509が備える乱数値レジスタR2Dとしての乱数値レジスタ559Bから、数値データを読み出して抽出する。このときには、数値データが読み出された乱数値レジスタR1Dあるいは乱数値レジスタR2Dに対応する乱数ラッチフラグがオフ状態になる。すなわち、ステップS505の処理で乱数値レジスタR1Dが読出元とされた場合には、ステップS506の処理による数値データの読み出しにより乱数ラッチフラグデータRDFM0のビット値が“1”から“0”へと更新され、乱数値レジスタR1Dと対応付けられた乱数ラッチフラグがオフ状態となる。その一方で、ステップS505の処理で乱数値レジスタR2Dが読出元とされた場合には、ステップS506の処理による数値データの読み出しにより乱数ラッチフラグデータRDFM1のビット値が“1”から“0”へと変更され、乱数値レジスタR2Dと対応付けられた乱数ラッチフラグがオフ状態となる。そして、ステップS506にて読み出された数値データに基づき、特図表示結果決定用の乱数値MR1を示す数値データが、保留データとしてステップS504の処理で特定された特図保留記憶部の記憶位置に記憶される(ステップS507)。
なお、乱数値レジスタR1Dや乱数値レジスタR2Dから読み出された数値データは、そのまま特図表示結果決定用の乱数値MR1として第1特図保留記憶部591Aや第2特図保留記憶部591Bに記憶されてもよいし、所定の加工処理を施してから記憶されるようにしてもよい。一例として、乱数回路509から抽出された数値データは、CPU505が有する16ビットの汎用レジスタなどに一旦格納される。続いて、CPU505に内蔵されたリフレッシュレジスタの格納値であるリフレッシュレジスタ値を、加工用の乱数値となる数値データとして読み出す。このときには、汎用レジスタにおける上位バイトにリフレッシュレジスタ値を加算する一方で、下位バイトはそのままにしておいてもよい。ここで、リフレッシュレジスタ値を加算することに代えて、減算、論理和、論理積といった、所定の演算処理を実行するようにしてもよい。あるいは、リフレッシュレジスタ値を汎用レジスタにおける下位バイトに加算などするようにしてもよい。また、乱数回路509から抽出された数値データの上位バイトと下位バイトとを入れ替えて、汎用レジスタにおける上位バイトや下位バイトとして格納してもよい。さらに、汎用レジスタにおける上位バイトもしくは下位バイトにリフレッシュレジスタ値を加算などした後に、あるいは、汎用レジスタにおける上位バイトや下位バイトに加算などの演算処理を行うことなく、上位バイトと下位バイトとを入れ替えるようにしてもよい。乱数回路509から抽出された数値データの上位バイトと下位バイトとのうち、特定のビットのデータを、他のビットのデータと入れ替えるようにしてもよい。この場合には、例えば乱数回路509における乱数値レジスタR1Dや乱数値レジスタR2Dと、汎用レジスタの上位バイトや下位バイトとを接続するバスにおいて、特定のビットのデータを他のビットのデータと入れ替えるように、配線をクロスさせるなどすればよい。その後、CPU505は、汎用レジスタの格納値と所定の論理値(例えば「FFFFH」など)とを論理積演算して、あるいは、汎用レジスタの格納値をそのまま出力して、RAM507の所定領域に格納することなどにより、16ビットの乱数値MR1を示す数値データを設定すればよい。なお、例えば14ビットの乱数値を示す数値データを設定する場合などには、汎用レジスタの格納値と「7F7FH」とを論理積演算するなどして、14ビット値を取得できるようにすればよい。また、論理積演算に代えて、論理和演算が実行されてもよい。このとき、乱数値MR1を示す数値データが格納されるRAM507の領域は、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタなどに含まれていればよい。あるいは、第1特図保留記憶部591Aや第2特図保留記憶部591Bに汎用レジスタの格納値を出力して、乱数値MR1を示す保留データとしてもよい。
また、汎用レジスタの格納値に基づき、加算値決定用の乱数値を示す数値データを設定してもよい。一例として、加算値決定用の乱数値を示す数値データが「0」〜「7」の範囲の値をとる場合には、汎用レジスタの格納値と「C0C0H」などとを論理積演算して、RAM507の所定領域に格納することなどにより、4ビットの乱数値を示す数値データを設定すればよい。
ステップS507の処理に続いて、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタなどから、大当り種別決定用の乱数値MR2を示す数値データと、変動パターン種別決定用の乱数値MR3を示す数値データとを抽出し、ステップS507にて記憶された乱数値MR1を示す数値データとともに、保留データとしてステップS504の処理で特定された特図保留記憶部の記憶位置に記憶する(ステップS508)。
ステップS508の処理を実行した後には、演出制御基板12に対して保留記憶数通知コマンドを送信するための設定を行ってから(ステップS509)、乱数値取得処理を終了する。ステップS509の処理では、例えばROM506における保留記憶数通知コマンドテーブルの記憶アドレスを送信コマンドバッファにおいて送信コマンドポインタが指定するバッファ領域にセットすればよい。
また、ステップS502にて読出値が上限値以上であると判定されたときには(ステップS502;Yes)、乱数値レジスタの読み出しにより乱数ラッチフラグをクリアしてから(ステップS510)、乱数値取得処理を終了する。ここで、ステップS510の処理では、遊技球が第1始動入賞口を通過(進入)した場合に対応して、乱数値レジスタR1Dに格納された数値データを読み出す一方、遊技球が第2始動入賞口を通過(進入)した場合に対応して、乱数値レジスタR2Dに格納された数値データを読み出す。このときには、ステップS505の処理と同様に、例えば図47に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される乱数値レジスタR1Dアドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される乱数値レジスタR2Dアドレスに対応して、数値データの読出元となる乱数値レジスタのアドレスなどを特定できればよい。
第1始動入賞信号SS1や第2始動入賞信号SS2が、第1始動口スイッチ22Aや第2始動口スイッチ22BからCPU505などを介することなく乱数回路509に入力される場合には、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数にかかわらず、第1始動入賞信号SS1や第2始動入賞信号SS2の入力に対応して、乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが格納されることになる。このときには、数値データが格納された乱数値レジスタに対応する乱数ラッチフラグがオン状態となり新たな数値データの格納が制限される。したがって、保留データの記憶数が上限値以上である場合に、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出さずに放置すると、第1始動入賞口や第2始動入賞口を新たな遊技球が通過(進入)したときに、この遊技球の通過(進入)に対応した新たな数値データを乱数値レジスタR1Dや乱数値レジスタR2Dに取り込んで格納することができず、先に通過(進入)した遊技球に対応して格納された数値データが読み出されてしまい、正確な乱数値を取得できなくなることがある。そこで、保留データの記憶数が上限値に達している場合でも、ステップS510の処理を実行して乱数値レジスタの読み出しにより乱数ラッチフラグをクリアすることで、新たな遊技球の通過(進入)に対応して正確な乱数値となる数値データの取得が可能になる。なお、ステップS510の処理により乱数値レジスタR1Dあるいは乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」とするか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。
図49は、入賞時乱数値判定処理として、図47のステップS205やステップS210にて実行される処理の一例を示すフローチャートである。この実施の形態において、特別図柄や飾り図柄の可変表示が開始されるときには、後述する特別図柄通常処理(図46のステップS140、図51)において、特図表示結果を「大当り」や「小当り」とするか否かの決定や、大当り種別の決定が行われ、後述する変動パターン設定処理(図46のステップS141、図52)において、変動パターン種別の決定や、変動パターンの決定が行われる。他方、これらの決定とは別に、遊技球が始動入賞口(第1始動入賞口又は第2始動入賞口)にて検出されたタイミングで、CPU505がステップS205やステップS210にて入賞時乱数値判定処理を実行することにより、特図表示結果が「大当り」又は「小当り」となるか否かや、飾り図柄の変動パターンが少なくともスーパーリーチを伴う変動パターンとなるか否かを、予め特定する。これにより、始動入賞口に進入した遊技球の検出に基づく飾り図柄の可変表示が開始されるより前に、特図表示結果が「大当り」又は「小当り」となることや、スーパーリーチのリーチ演出が実行されることを予測し、この予測結果に基づいて、演出制御基板12の側で演出制御用マイクロコンピュータ120のCPUなどにより複数回の可変表示にわたり連続予告演出を実行するか否かなどを決定することができる。
図49に示す入賞時乱数値判定処理において、CPU505は、まず、第1始動入賞口を遊技球が通過(進入)した第1始動口入賞であるか否かを判定する(ステップS521)。このとき、第1始動口入賞であれば(ステップS521;Yes)、パチンコ遊技機1における遊技状態が大当り遊技状態となっている大当り中であるか否かを判定する(ステップS522)。例えば、ステップS522の処理において、CPU505は、特図プロセスフラグの値が“4”〜“7”のいずれかであれば、大当り中であると判定すればよい。
ステップS522にて大当り中ではないと判定されたときには(ステップS522;No)、確変状態や時短状態において時間短縮制御が行われている時短制御中であるか否かを判定する(ステップS523)。例えば、ステップS523の処理において、CPU505は、遊技制御フラグ設定部592に設けられた時短フラグの状態を確認して、時短フラグがオンであれば時短制御中であると判定すればよい。ステップS522にて大当り中であると判定されたときや(ステップS522;Yes)、ステップS523にて時短制御中であると判定されたときには(ステップS523;Yes)、大当り中・時短中入賞を通知する第1始動口入賞指定コマンドとなるコマンドB103H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS524)、入賞時乱数値判定処理を終了する。このような大当り中・時短中入賞を通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、大当り中や時短制御中における始動入賞に基づくものが含まれると特定できる。
ステップS523にて時短制御中ではないと判定されたときには(ステップS523;No)、図48のステップS506にて読み出された数値データに基づく特図表示結果決定用の乱数値MR1を示す数値データが、所定の大当り判定範囲内であるか否かを判定する(ステップS525)。例えば、ステップS525の処理では、図27(A)に示す第1特図表示結果決定テーブル130Aを選択して、使用テーブルにセットする。続いて、使用テーブルにセットした第1特図表示結果決定テーブル130Aを参照することにより、ステップS506にて読み出された数値データに基づく乱数値MR1に応じた特図表示結果が「大当り」であるか否かが判定される。より具体的には、乱数値MR1を示す数値データと、第1特図表示結果決定テーブル130Aに格納された決定値とを比較して、乱数値MR1と合致した決定値が割り当てられている特図表示結果が「大当り」であるか否かを判定する。ここでは、パチンコ遊技機1における遊技状態が通常状態又は時短状態であれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定し、確変状態であれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が確変状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定すればよい。なお、パチンコ遊技機1における遊技状態にかかわらず、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定するようにしてもよい。
なお、パチンコ遊技機1における遊技状態の変化を予測して、その予測結果に基づき第1特図表示結果決定テーブル130Aにおいて参照するテーブルデータを切り替えるようにしてもよい。一例として、可変表示結果が「大当り」となるまで確変制御が継続して行われる場合であれば、ステップS525にて特図表示結果が「大当り」に決定されると判定したときに、図48のステップS508にて抽出された大当り種別決定用の乱数値MR2を示す数値データに基づき、図28に示す大当り種別決定テーブル131を参照することにより、大当り種別が「非確変」、「確変」、「突確」のいずれに決定されるかを判定する。そして、大当り種別が「非確変」ではなく「確変」または「突確」になると判定されたときに、遊技制御フラグ設定部592などに設けられた確変時判定フラグをオン状態にセットする。その一方で、大当り種別が「非確変」になると判定されたときには、確変時判定フラグをクリアしてオフ状態とする。そして、ステップS525の処理では、確変時判定フラグがオンであるかオフであるかを判定する。このとき、確変時判定フラグがオンであれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が確変状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを特定する。これに対して、確変時判定フラグがオフであるときには、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照すればよい。このような処理が実行されることなどにより、第1特図保留記憶部591Aに記憶された保留データに基づく特図ゲームが開始されるときの遊技状態が確変状態である場合に対応して、通常状態や時短状態のときよりも高い割合で特図表示結果が「大当り」に決定されるテーブルデータを使用して特図表示結果を特定することができ、実際の遊技状態に適合して、より正確な特図表示結果を特定できる。
ステップS525にて大当り判定範囲内ではないと判定されたときには(ステップS525;No)、その乱数値MR1が小当り判定範囲内であるか否かを判定する(ステップS526)。ステップS525にて乱数値MR1が大当り判定範囲内であると判定された場合や(ステップS525;Yes)、ステップS526にて乱数値MR1が小当り判定範囲内であると判定された場合には(ステップS526;Yes)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて入賞時当り判定がなされたことを通知する第1始動口入賞指定コマンドとなるコマンドB102H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS527)、入賞時乱数値判定処理を終了する。このような入賞時当り判定を通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」又は「小当り」に決定されることを示すものが含まれると特定できる。
なお、ステップS525にて大当り判定範囲内であると判定されたときと、ステップS526にて小当り判定範囲内であると判定されたときとでは、EXTデータの設定が異なる第1始動口入賞指定コマンドを送信することなどにより、特図表示結果が「大当り」となるか「小当り」となるかを、演出制御基板12の側で特定できるようにしてもよい。あるいは、ステップS525にて大当り判定範囲内であると判定されたときには、大当り種別決定用の乱数値MR2に基づいて大当り種別がいずれに決定されるかの判定を行い、大当り種別が「突確」に決定されると判定した場合には、ステップS526にて小当り判定範囲内であると判定した場合と共通の第1始動口入賞指定コマンドを送信する一方、大当り種別が「非確変」または「確変」に決定されると判定した場合には、大当り種別が「突確」になると判定された場合や小当り判定範囲内であると判定された場合とは異なる第1始動口入賞指定コマンドを送信してもよい。これにより、演出制御基板12の側では、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」で大当り種別が「非確変」または「確変」に決定されることを示すものが含まれる場合と、特図表示結果が「大当り」で大当り種別が「突確」または特図表示結果が「小当り」に決定されることを示すものが含まれる場合とを、区別して特定することができる。
ステップS526にて乱数値MR1が小当り判定範囲内ではないと判定されたときには(ステップS526;No)、図48のステップS508にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データが特定パターン共通範囲の範囲内であるか否かを判定する(ステップS528)。ここで、図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、遊技状態や特図保留記憶数にかかわらず、変動パターン種別決定用の乱数値MR3が「230」〜「251」の範囲内であれば、少なくともスーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴う特定の変動パターンが含まれる変動パターン種別CA2−4に決定されることになる。したがって、ステップS528の処理では、例えば図50に示すように、乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定すればよい。すなわち、CPU505は、スーパーリーチを伴う特定の変動パターンが含まれる変動パターン種別CA2−4に対応した決定値の少なくとも一部に設定された同一決定値「230」〜「251」のいずれかと乱数値SR3が合致するか否かを判定することによって、スーパーリーチを伴う変動パターンに決定されるか否かを判定することができる。なお、変動パターン種別CA2−4に対応した決定値には、同一決定値とは異なる決定値が含まれることがあってもよいし、同一決定値のみが設定されて、同一決定値以外の決定値が割り当てられていないように設定されてもよい。
ステップS528にて乱数値MR3が特定パターン共通範囲内であると判定されたときには(ステップS528;Yes)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲内であることを通知する第1始動口入賞指定コマンドとなるコマンドB101H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS529)、入賞時乱数値判定処理を終了する。これに対して、ステップS528にて乱数値MR3が特定パターン共通範囲内ではないと判定されたときには(ステップS528;No)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲外であることを通知する第1始動口入賞指定コマンドとなるコマンドB100H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS530)、入賞時乱数値判定処理を終了する。こうした特定パターン共通範囲内であるか否かを通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができる。また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特定の変動パターンに決定されることを示すものが含まれるか否かを特定できる。
ステップS521にて第1始動口入賞ではないときには(ステップS521;No)、例えば図27(B)に示す第2特図表示結果決定テーブル130Bを使用テーブルにセットして参照することなどにより、図48のステップS506にて読み出された数値データに基づく特図表示結果決定用の乱数値MR1を示す数値データが、大当り判定範囲内であるか否かを判定する(ステップS531)。このとき、パチンコ遊技機1における遊技状態の変化を予測して参照するテーブルデータを切り替えるなどしてもよいことは、ステップS525の処理と同様である。
ステップS531にて大当り判定範囲内ではないと判定された場合には(ステップS531;No)、その乱数値MR1が小当り判定範囲内であるか否かを判定する(ステップS532)。ステップS531にて大当り判定範囲内であると判定されたときや(ステップS531;Yes)、ステップS532にて小当り判定範囲内であると判定されたときには(ステップS532;Yes)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて入賞時当り判定がなされたことを通知する第2始動口入賞指定コマンドとなるコマンドB202H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS533)、入賞時乱数値判定処理を終了する。このような入賞時当り判定を通知する第2始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第2特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第2特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」又は「小当り」に決定されることを示すものが含まれると特定できる。
なお、第2始動口入賞指定コマンドに示される入賞時当り判定は、特図表示結果が「大当り」となる場合のみに通知され、特図表示結果が「小当り」となる場合には通知されないようにしてもよい。この場合、ステップS531にて乱数値MR1が大当り判定範囲内である場合にはステップS533の処理に進む一方、ステップS532にて乱数値MR1が小当り判定範囲内であれば、後述するステップS536の処理などに進むようにすればよい。あるいは、第2始動口入賞指定コマンドに示される入賞時当り判定は、特図表示結果が「大当り」で「非確変」または「確変」の大当り種別となる場合のみに通知され、「突確」の大当り種別となる場合や特図表示結果が「小当り」となる場合には通知されないようにしてもよい。この場合、ステップS531にて乱数値MR1が大当り判定範囲内である場合には、さらに大当り種別決定用の乱数値MR2が「非確変」または「確変」の判定範囲内であるか否かを判定し、この判定範囲内である場合にはステップS533の処理に進む一方、「突確」の判定範囲内である場合や、ステップS532にて乱数値MR1が小当り判定範囲内であれば、ステップS536の処理などに進むようにすればよい。なお、大当り種別が「突確」に決定されると判定した場合には、ステップS532にて特図表示結果が「小当り」に決定されると判定した場合と共通の第2始動口入賞指定コマンドを送信してもよいことなどは、ステップS525〜S527の処理と同様である。
ステップS532にて乱数値MR1が小当り判定範囲内ではないと判定されたときには(ステップS532;No)、図48のステップS508にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データが特定パターン共通範囲の範囲内であるか否かを判定する(ステップS534)。このときには、ステップS528の処理と同様に、乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定すればよい。
ステップS534にて乱数値MR3が特定パターン共通範囲内であると判定されたときには(ステップS534;Yes)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲内であることを通知する第2始動口入賞指定コマンドとなるコマンドB201H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS535)、入賞時乱数値判定処理を終了する。これに対して、ステップS534にて乱数値MR3が特定パターン共通範囲内ではないと判定されたときには(ステップS534;No)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲外であることを通知する第2始動口入賞指定コマンドとなるコマンドB200H(図5(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS536)、入賞時乱数値判定処理を終了する。こうした特定パターン共通範囲内であるか否かを通知する第2始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第2特図保留記憶数を特定可能とする演出画像の表示を更新させることができる。また、第2特図を用いた特図ゲームに対応する保留記憶情報のうちに、特定の変動パターンに決定されることを示すものが含まれるか否かを特定できる。
以上のような入賞時乱数値判定処理が実行されることにより、第1始動入賞口や第2始動入賞口を通過(進入)した遊技球が検出された時点(第1始動入賞時又は第2始動入賞時)で、パチンコ遊技機1における遊技状態や特図ゲームの保留記憶数である特図保留記憶数にかかわらず、特図表示結果が「大当り」又は「小当り」に決定されるか否かや、スーパーリーチを伴う特定の変動パターンに決定されるか否かを判定し、これらの判定結果に応じて異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドを、主基板11から演出制御基板12に対して伝送させることができる。
この実施の形態では、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dにおける決定値の割当てなどにより、変動パターン種別CA2−4に対応した決定値のうちの少なくとも一部は、第1開始条件や第2開始条件の成立に基づく可変表示の開始時における合計保留記憶数にかかわらず、同一決定値「230」〜「251」が設定される。そして、この同一決定値のいずれかに乱数値MR3が合致するか否かを判定することにより、スーパーリーチを伴う変動パターンに決定されるか否かを判定するので、スーパーリーチを伴う変動パターンに決定される旨の判定を、確実に行うことができる。すなわち、ステップS528やステップS534にて特定パターン共通範囲内ではないと判定されたときでも、スーパーリーチを伴う変動パターンに決定される場合がある一方で、特定パターン共通範囲内であると判定されたときには、常にスーパーリーチを伴う変動パターンに決定されることになりスーパーリーチを伴わない変動パターンに決定されることがない。
スーパーリーチを伴う変動パターン種別CA2−4とは異なる変動パターン種別CA1−1〜CA1−3や変動パターン種別CA2−1〜CA2−3に対応した決定値は、第1開始条件や第2開始条件の成立に基づく可変表示の開始時における合計保留記憶数に応じて、異なる決定値が設定されている。このうち、短縮用の非リーチ変動パターンとなる変動パターンPA1−2が含まれる変動パターン種別CA1−2に対応した決定値は、合計保留記憶数が所定数以上である場合には、この合計保留記憶数が所定数未満である場合と比較して、多くなるように設定される。例えば、遊技状態が通常状態であるときなどには、合計保留記憶数が「3」以上または「6」以上である場合に、「3」未満または「6」未満である場合と比較して多くの決定値が、変動パターン種別CA1−2に割り当てられている。また、遊技状態が確変状態や時短状態で時間短縮制御が行われているときには、合計保留記憶数が「1」以上または「2」以上である場合に、「1」未満または「2」未満である場合と比較して多くの決定値が、変動パターン種別CA1−2に割り当てられている。したがって、合計保留記憶数が所定数以上であるときには、所定数未満であるときに比べて平均的な可変表示時間(特図変動時間など)を短縮して、パチンコ遊技機1における稼働率の低下を防止できる。
図46のステップS131にて始動入賞判定処理を実行した後には、遊技制御フラグ設定部592に設けられた特図プロセスフラグの値に応じて、ステップS140〜ステップS150の処理のいずれかを選択して実行する。
ステップS140の特別図柄通常処理は、特図プロセスフラグの値が“0”のときに実行される。この特別図柄通常処理では、第1特図保留記憶部591Aや第2特図保留記憶部591Bに記憶されている保留データの有無などに基づいて、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームを開始するか否かの判定が行われる。また、特別図柄通常処理では、特図表示結果判定用の乱数値MR1を示す数値データに基づき、特別図柄や飾り図柄などの可変表示結果を「大当り」や「小当り」とするか否かを、その可変表示結果が導出表示される以前に決定(事前決定)する。さらに、特別図柄通常処理では、特図ゲームにおける特別図柄の可変表示結果に対応して、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームにおける確定特別図柄(大当り図柄、小当り図柄及びハズレ図柄のいずれか)が設定される。
ステップS141の変動パターン設定処理は、特図プロセスフラグの値が“1”のときに実行される。この変動パターン設定処理には、可変表示結果を「大当り」や「小当り」とするか否かの事前決定結果や、飾り図柄の可変表示状態をリーチ状態とするか否かのリーチ決定結果などに基づいて、変動パターン種別を複数種類のいずれかに決定する処理や、変動パターン種別の決定結果に対応して、変動パターンを複数種類のいずれかに決定する処理などが含まれている。
ステップS142の特別図柄変動処理は、特図プロセスフラグの値が“2”のときに実行される。この特別図柄変動処理には、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにおいて特別図柄を変動させるための設定を行う処理や、その特別図柄が変動を開始してからの経過時間を計測する処理などが含まれている。例えば、ステップS142にて特別図柄変動処理が実行されるごとに、遊技制御タイマ設定部593に設けられた特図変動タイマにおける値(特図変動タイマ値)を1減算あるいは1加算することにより、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームであるか、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームであるかに関わりなく、共通のタイマによって経過時間の測定が行われる。また、計測された経過時間が変動パターンに対応する特図変動時間に達したか否かの判定も行われる。このように、特別図柄変動処理は、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームにおける特別図柄の変動や、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームにおける特別図柄の変動を、共通の処理ルーチンによって制御する処理となっている。そして、特別図柄の変動を開始してからの経過時間が特図変動時間に達したときには、特図プロセスフラグの値を“3”に更新する。
ステップS143の特別図柄停止処理は、特図プロセスフラグの値が“3”のときに実行される。この特別図柄停止処理には、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにて特別図柄の変動を停止させ、特別図柄の可変表示結果となる確定特別図柄を停止表示させるための設定を行う処理が含まれている。そして、遊技制御フラグ設定部592に設けられた大当りフラグと小当りフラグのいずれかがオンとなっているか否かの判定などが行われ、大当りフラグがオンである場合には特図プロセスフラグの値を“4”に更新し、小当りフラグがオンである場合には特図プロセスフラグの値を“8”に更新する。また、大当りフラグと小当りフラグがいずれもオフである場合には、特図プロセスフラグの値を“0”に更新する。
ステップS144の大入賞口開放前処理は、特図プロセスフラグの値が“4”のときに実行される。この大入賞口開放前処理には、可変表示結果が「大当り」となったことなどに基づき、大当り遊技状態においてラウンドの実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば大入賞口開放回数最大値の設定に対応して、大入賞口を開放状態とする期間の上限を設定するようにしてもよい。一例として、大入賞口開放回数最大値が15ラウンド大当り状態に対応した「15」に設定されている場合には、大入賞口を開放状態とする期間の上限を「29秒」に設定する。これに対して、大入賞口開放回数最大値が2ラウンド大当り状態に対応した「2」に設定されている場合には、大入賞口を開放状態とする期間の上限を「0.5秒」に設定する。
ステップS145の大入賞口開放中処理は、特図プロセスフラグの値が“5”のときに実行される。この大入賞口開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間やカウントスイッチ23によって検出された遊技球の個数などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。大入賞口を閉鎖状態から開放状態へと変化させるときには、大入賞口扉用のソレノイド82に対するソレノイド駆動信号の供給を開始させる処理などが実行されればよい。他方、大入賞口を閉鎖状態に戻すときには、大入賞口扉用のソレノイド82に対するソレノイド駆動信号の供給を停止させる処理などが実行されればよい。
ステップS146の大入賞口開放後処理は、特図プロセスフラグの値が“6”のときに実行される。この大入賞口開放後処理には、大入賞口を開放状態とするラウンドの実行回数が大入賞口開放回数最大値に達したか否かを判定する処理や、大入賞口開放回数最大値に達した場合に当り終了指定コマンドを送信するための設定を行う処理などが含まれている。
ステップS147の大当り終了処理は、特図プロセスフラグの値が“7”のときに実行される。この大当り終了処理には、画像表示装置5やスピーカ8L、8R、遊技効果ランプ9といった演出用の電気部品(演出装置)により、大当り遊技状態の終了を報知する演出動作としてのエンディング演出が実行される期間に対応した待ち時間が経過するまで待機する処理や、その大当り遊技状態の終了に対応した各種の設定を行う処理などが含まれている。
ステップS148の小当り開放前処理は、特図プロセスフラグの値が“8”のときに実行される。この小当り開放前処理には、可変表示結果が「小当り」となったことなどに基づき、小当り遊技状態において可変入賞動作の実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば可変表示結果が「小当り」であることにより大入賞口開放回数最大値が「2」であることに対応して、大入賞口を開放状態とする期間の上限を「0.5秒」に設定すればよい。
ステップS149の小当り開放中処理は、特図プロセスフラグの値が“9”のときに実行される。この小当り開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。
ステップS150の小当り終了処理は、特図プロセスフラグの値が“10”のときに実行される。この小当り終了処理には、画像表示装置5やスピーカ8L、8R、遊技効果ランプ9といった演出用の電気部品(演出装置)により、小当り遊技状態の終了を報知する演出動作が実行される期間に対応した待ち時間が経過するまで待機する処理などが含まれている。ここで、小当り遊技状態が終了するときには、確変フラグや時短フラグの状態を変更しないようにして、小当り遊技状態となる以前のパチンコ遊技機1における遊技状態を継続させる。
図51は、特別図柄通常処理として、図46のステップS140にて実行される処理の一例を示すフローチャートである。この特別図柄通常処理において、CPU505は、まず、第2特図を用いた特図ゲームの保留記憶数を示す第2保留記憶カウント値が「0」であるか否かを判定する(ステップS221)。例えば、ステップS221の処理では、遊技制御カウンタ設定部594から読み出した第2保留記憶カウント値が「0」であるか否かを判定すればよい。ステップS221にて第2保留記憶カウント値が「0」以外であるときには(ステップS221;No)、例えば遊技制御バッファ設定部595などに設けられた変動特図指定バッファの値を「2」に更新する(ステップS222)。
ステップS221にて第2保留記憶カウント値が「0」であるときには(ステップS221;Yes)、第1特図を用いた特図ゲームの保留記憶数を示す第1保留記憶カウント値が「0」であるか否かを判定する(ステップS223)。例えば、ステップS223の処理では、遊技制御カウンタ設定部594から読み出した第1保留記憶カウント値が「0」であるか否かを判定すればよい。ステップS223にて第1保留記憶カウント値が「0」以外であるときには(ステップS223;No)、例えば遊技制御バッファ設定部595などに設けられた変動特図指定バッファの値を「1」に更新する(ステップS224)。このように、ステップS223の処理では、ステップS221にて第2保留記憶カウント値が「0」であると判定されたときに、第1保留記憶カウント値が「0」であるか否かを判定する。したがって、第2特図を用いた特図ゲームは、第1特図を用いた特図ゲームよりも優先して実行が開始される。
なお、第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して開始されるものに限定されず、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した順番に従って、それぞれの特図ゲームが順次に実行されるようにしてもよい。すなわち、第1始動条件と第2始動条件とを区別することなく、先に成立した始動条件に対応する特図ゲームから順次に実行が開始されるようにしてもよい。あるいは、第1保留記憶カウント値と第2保留記憶カウント値とのうち、いずれの値が大きいかを判定し、カウント値が大きい方に対応する特別図柄を用いた特図ゲームを優先して実行するようにしてもよい。この場合には、第1保留記憶カウント値と第2保留記憶カウント値とを比較して、第1保留記憶カウント値の方が大きい場合には、変動特図指定バッファの値を「1」に更新する一方で、第2保留記憶カウント値の方が大きい場合には、変動特図指定バッファの値を「2」に更新すればよい。また、第1保留記憶カウント値と第2保留記憶カウント値とが一致した場合には、第1特図を用いた特図ゲームを優先して実行してもよいし、第2特図を用いた特図ゲームを優先して実行してもよい。このように、保留記憶カウント値が多い方に対応する特別図柄を用いた特図ゲームを優先して実行することで、無効な始動入賞の発生を低減することができる。
ステップS222、S224の処理のいずれかを実行した後には、変動特図指定バッファ値に応じた特図保留記憶部から保留データを読み出す(ステップS225)。例えば、変動特図指定バッファ値が「1」であるときには、第1特図保留記憶部591Aにて保留番号「1」と対応付けて記憶されている保留データとして、特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3を示す数値データをそれぞれ読み出す。これに対して、変動特図指定バッファ値が「2」であるときには、第2特図保留記憶部591Bにて保留番号「1」と対応付けて記憶されている保留データとして、特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3を示す数値データをそれぞれ読み出す。このとき読み出された数値データは、例えば遊技制御バッファ設定部595などに設けられた変動用乱数バッファなどに格納されて、一時記憶されればよい。
ステップS225の処理に続いて、変動特図指定バッファ値に応じた保留記憶カウント値を1減算するとともに、変動特図指定バッファ値に応じた特図保留記憶部にて保留番号「1」より下位のエントリ(例えば保留番号「2」〜「4」に対応するエントリ)に記憶された保留データの記憶内容を、1エントリずつ上位にシフトさせる(ステップS226)。例えば、変動特図指定バッファ値が「1」である場合には、第1保留記憶カウント値を1減算するとともに、第1特図保留記憶部591Aにおける保留データの記憶内容を、1エントリずつ上位にシフトさせる。これに対して、変動特図指定バッファ値が「2」である場合には、第2保留記憶カウント値を1減算するとともに、第2特図保留記憶部591Bにおける保留データの記憶内容を、1エントリずつ上位にシフトさせる。
この後、可変表示結果を「大当り」とするか否かや「小当り」とするか否かを決定するための使用テーブルとして、変動特図指定バッファ値に応じた特図表示結果決定テーブルを選択してセットする(ステップS227)。例えば、変動特図指定バッファ値が「1」であれば図27(A)に示す第1特図表示結果決定テーブル130Aを使用テーブルとしてセットする一方で、変動特図指定バッファ値が「2」であれば図27(B)に示す第2特図表示結果決定テーブル130Bを使用テーブルとしてセットする。CPU505は、こうしてセットされた特図表示結果決定テーブルを参照することにより、ステップS225にて読み出された保留データに含まれる特図表示結果決定用の乱数値MR1を示す数値データに基づいて、特図表示結果を複数種類のいずれかに決定する(ステップS228)。そして、ステップS228にて決定された特図表示結果が「大当り」であるか否かを判定する(ステップS229)。
ステップS229にて「大当り」ではないと判定された場合には(ステップS229;No)、その特図表示結果が「小当り」であるか否かを判定する(ステップS230)。そして、「小当り」であると判定されたときには(ステップS230;Yes)、遊技制御フラグ設定部592に設けられた小当りフラグをオン状態にセットする(ステップS231)。
ステップS229にて「大当り」であると判定された場合には(ステップS229;Yes)、遊技制御フラグ設定部592に設けられた大当りフラグをオン状態にセットする(ステップS232)。このときには、大当り種別を複数種類のいずれかに決定するための使用テーブルとして、図28に示す大当り種別決定テーブル131を選択してセットする(ステップS233)。CPU505は、こうしてセットされた大当り種別決定テーブル131を参照することにより、ステップS225にて読み出された保留データに含まれる大当り種別決定用の乱数値MR2を示す数値データに基づいて、大当り種別を「非確変」、「確変」、「突確」といった複数種類のうち、いずれかに決定する(ステップS234)。なお、ステップS222にて変動特図指定バッファ値を「2」に設定した場合には、大当り種別決定テーブル131にて「突確」の大当り種別に対する決定値の割当てがないことから、大当り種別が「突確」に決定されることはない。こうしてステップS234にて決定された大当り種別に対応して、例えば遊技制御バッファ設定部595に設けられた大当り種別バッファの格納値である大当り種別バッファ値を設定することにより、ステップS234の処理で決定された大当り種別を記憶する(ステップS235)。一例として、大当り種別が「非確変」であれば大当り種別バッファ値を「0」とし、「確変」であれば「1」とし、「突確」であれば「2」とすればよい。
ステップS230にて「小当り」ではないと判定された場合や(ステップS230;No)、ステップS231、S235の処理のいずれかを実行した後には、大当り遊技状態や小当り遊技状態に制御するか否かの事前決定結果、さらには、大当り遊技状態とする場合における大当り種別の決定結果に対応して、確定特別図柄を設定する(ステップS236)。一例として、ステップS230にて特図表示結果が「小当り」ではないと判定された場合には、特図表示結果を「ハズレ」とする旨の事前決定結果に対応して、ハズレ図柄となる「−」を示す記号の特別図柄を、確定特別図柄に設定する。その一方で、ステップS230にて特図表示結果が「小当り」であると判定された場合には、特図表示結果を「小当り」とする旨の事前決定結果に対応して、小当り図柄となる「5」を示す数字の特別図柄を、確定特別図柄に設定する。また、ステップS229にて特図表示結果が「大当り」であると判定された場合には、ステップS234における大当り種別の決定結果に応じて、大当り図柄となる「1」、「3」、「7」を示す数字の特別図柄のうち、いずれかを確定特別図柄に設定する。すなわち、大当り種別を「非確変」とする決定結果に応じて、非確変大当り図柄となる「3」の数字を示す特別図柄を、確定特別図柄に設定する。また、大当り種別を「確変」とする決定結果に応じて、確変大当り図柄となる「7」の数字を示す特別図柄を、確定特別図柄に設定する。大当り種別を「突確」とする決定結果に応じて、突確大当り図柄「1」の数字を示す特別図柄を、確定特別図柄に設定する。
ステップS236にて確定特別図柄を設定した後には、特図プロセスフラグの値を変動パターン設定処理に対応した値である“1”に更新してから(ステップS237)、特別図柄通常処理を終了する。また、ステップS223にて第1保留記憶カウント値が「0」であるときには(ステップS223;Yes)、所定のデモ表示設定を行ってから(ステップS238)、特別図柄通常処理を終了する。ステップS238におけるデモ表示設定では、例えば画像表示装置5において所定の演出画像を表示することなどによるデモンストレーション表示(デモ画面表示)を指定する客待ちデモ指定コマンドが、主基板11から演出制御基板12に対して送信済みであるか否かを判定する。このとき、送信済みであれば、そのままデモ表示設定を終了する。これに対して、未送信であれば、例えばROM506における客待ちデモ指定コマンドテーブルの記憶アドレスを送信コマンドバッファにセットすることなどにより、客待ちデモ指定コマンドの送信設定を行えばよい。
図52は、変動パターン設定処理として、図46のステップS141にて実行される処理の一例を示すフローチャートである。この変動パターン設定処理において、CPU505は、まず、大当りフラグがオンであるか否かを判定する(ステップS251)。そして、大当りフラグがオンであれば(ステップS251;Yes)、変動パターン種別を複数種別のいずれかに決定するための使用テーブルとして、大当り変動パターン種別決定テーブル133Aを選択してセットする(ステップS252)。このときには、例えば遊技制御バッファ設定部595などに記憶される大当り種別バッファ値を読み取ることなどにより、大当り種別が「非確変」、「確変」、「突確」のいずれであるかを特定する(ステップS253)。
ステップS251にて大当りフラグがオフであるときには(ステップS251;No)、小当りフラグがオンであるか否かを判定する(ステップS254)。そして、小当りフラグがオンであれば(ステップS254;Yes)、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとして、小当り変動パターン種別決定テーブル133Bを選択してセットする(ステップS255)。
ステップS254にて小当りフラグがオフであるときには(ステップS254;No)、例えば遊技制御カウンタ設定部594に記憶されている第1保留記憶カウント値と第2保留記憶カウント値とを加算すること、あるいは、合計保留記憶カウント値を読み出すことなどにより、合計保留記憶数を特定する(ステップS256)。そして、時短フラグがオンであるか否かを判定する(ステップS257)。このとき、時短フラグがオフであれば(ステップS257;No)、時間短縮制御が行われていない通常時であることに対応して、ハズレ変動パターン種別決定テーブル(通常時)133Cを選択し、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとしてセットする(ステップS258)。ステップS257にて時短フラグがオンであるときには(ステップS257;Yes)、時間短縮制御が行われている時短中であることに対応して、ハズレ変動パターン種別決定テーブル(時短中)133Dを選択し、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとしてセットする(ステップS259)。
ステップS253、S255、S258、S259の処理のいずれかを実行した後には、例えば変動用乱数バッファなどに格納されている変動パターン種別決定用の乱数値MR3を示す数値データなどに基づき、使用テーブルにセットされた変動パターン種別決定テーブルを参照することにより、変動パターン種別を複数種類のいずれかに決定する(ステップS260)。ここで、ステップS260の処理では、第1始動条件が成立したことに基づき第1特別図柄表示装置4Aにより第1特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターン種別を決定するか、第2始動条件が成立したことに基づき第2特別図柄表示装置4Bにより第2特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターン種別を決定するかにかかわらず、共通のランダムカウンタなどによって更新される変動パターン種別決定用となる共通の乱数値MR3を示す数値データを用いて、共通の処理モジュールにより変動パターン種別を複数種類のいずれかに決定することができる。
図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が所定数以上である場合に、合計保留記憶数が所定数未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。例えば、ハズレ変動パターン種別決定テーブル(通常時)133Cでは、合計保留記憶数が「3」以上である場合に、合計保留記憶数が「3」未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられており、また、合計保留記憶数が「6」以上である場合に、合計保留記憶数が「6」未満である場合に比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。ハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が「1」以上である場合に、合計保留記憶数が「1」未満の「0」である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられており、また、合計保留記憶数が「2」以上である場合に、合計保留記憶数が「2」未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。変動パターン種別CA1−2には、スーパーリーチを伴う変動パターンPA3−1、変動パターンPA3−2、変動パターンPB3−1、変動パターンPB3−2と比較して特図変動時間が短い非リーチ変動パターンとしての変動パターンPA1−2が含まれている。したがって、特図表示結果が「ハズレ」となる場合には、開始条件(第1開始条件または第2開始条件)が成立したときの合計保留記憶数が所定数以上であるときに、合計保留記憶数が所定数未満であるときと比較して、変動パターンPA1−2に対応した決定値の個数が多く設定された決定値を用いて、変動パターン種別が決定される。これにより、開始条件が成立したときの合計保留記憶数に応じて平均的な特図変動時間を異ならせることができ、特に特図保留記憶数が所定数以上であるときには平均的な特図変動時間が短くなるようにして、可変表示の作動率が低下してしまう事態を極力防止することができる。
こうしてステップS260にて変動パターン種別が決定された後には、その変動パターン種別の決定結果に応じて、変動パターンを複数種類のいずれかに決定するための使用テーブルとして、当り変動パターン決定テーブル134Aと、ハズレ変動パターン決定テーブル134Bとのうち、いずれかを選択してセットする(ステップS261)。続いて、変動パターン決定用の乱数値MR4を示す数値データに基づき、ステップS261にてセットした変動パターン決定テーブルを参照することにより、変動パターンを複数種類のいずれかに決定する(ステップS262)。変動パターン決定用の乱数値MR4を示す数値データは、ステップS262の処理が実行されるときに、遊技制御カウンタ設定部594のランダムカウンタなどから抽出されてもよいし、第1始動入賞口や第2始動入賞口を通過(進入)した遊技球が検出された始動入賞時に抽出されたものを、乱数値MR1〜MR3とともに、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データとして記憶しておいてもよい。
ステップS262の処理では、第1始動条件が成立したことに基づき第1特別図柄表示装置4Aにより第1特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターンを決定するか、第2始動条件が成立したことに基づき第2特別図柄表示装置4Bにより第2特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターンを決定するかに関わらず、共通のランダムカウンタなどによって更新される変動パターン決定用となる共通の乱数値MR4を示す数値データを用いて、変動パターンを複数種類のいずれかに決定する。一例として、ステップS262の処理では、決定テーブルポインタにセットされたROM506のアドレスに記憶された決定テーブルを参照して変動パターンが決定されればよい。
このようなステップS262における変動パターンの決定に続いて、その変動パターンの決定結果に応じた特図変動時間を設定する(ステップS263)。その後、変動特図指定バッファ値に応じて、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームと、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームのいずれかを開始させるように、特別図柄の変動を開始させるための設定を行う(ステップS264)。一例として、変動特図指定バッファ値が「1」であれば、第1特別図柄表示装置4Aによる第1特図の表示を更新させる駆動信号を送信するための設定を行う。これに対して、変動特図指定バッファ値が「2」であれば、第2特別図柄表示装置4Bによる第2特図の表示を更新させる駆動信号を送信するための設定を行う。
ステップS264の処理を実行した後には、特別図柄の変動開始時用となる各種コマンドを送信するための設定を行う(ステップS265)。例えば、変動特図指定バッファ値が「1」である場合に、CPU505は、主基板11から演出制御基板12に対して第1変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドを順次に送信するために、予め用意された第1変動開始用コマンドテーブルのROM506における記憶アドレス(先頭アドレス)を示す設定データを、送信コマンドバッファにセットする。他方、変動特図指定バッファ値が「2」である場合に、CPU505は、主基板11から演出制御基板12に対して第2変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドを順次に送信するために、予め用意された第2変動開始用コマンドテーブルのROM506における記憶アドレスを示す設定データを、送信コマンドバッファにセットする。こうしたステップS265での設定を行った場合には、特別図柄プロセス処理が終了してから図41に示すステップS99のメイン側通信制御処理が実行されるごとに、主基板11から演出制御基板12に対して、第1変動開始コマンドまたは第2変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドが、順次に送信されることになる。なお、こうした複数種類の演出制御コマンドが送信される順序は、パチンコ遊技機1の仕様などに応じて、任意に設定されたものであればよい。
ステップS265での設定に続いて、特図プロセスフラグの値を特別図柄変動処理に対応した値である“2”に更新してから(ステップS266)、変動パターン設定処理を終了する。
図53は、特別図柄停止処理として、図46のステップS143にて実行される処理の一例を示すフローチャートである。この特別図柄停止処理において、CPU505は、まず、大当りフラグがオンであるか否かを判定する(ステップS281)。このとき、大当りフラグがオンであれば(ステップS281;Yes)、大当り開始時演出待ち時間を設定する(ステップS282)。例えば、ステップS282の処理では、大当り開始時演出待ち時間に対応して予め定められたタイマ初期値が、遊技制御タイマ設定部593に設けられた遊技制御プロセスタイマにセットされればよい。
ステップS282の処理に続いて、当り開始指定コマンドを主基板11から演出制御基板12に対して送信するための設定を行う(ステップS283)。例えば、ステップS283の処理では、当り開始指定コマンドを送信するために予め用意された当り開始指定コマンドテーブルのROM506における記憶アドレスを示す設定データが、送信コマンドバッファに格納されればよい。その後、大当りフラグをクリアしてオフ状態とする(ステップS284)。また、確変状態や時短状態を終了するための設定を行う(ステップS285)。例えば、ステップS285では、確変フラグや時短フラグをクリアしてオフ状態とする処理や、確変状態や時短状態における特図ゲームの実行回数をカウントするための特図変動回数カウンタをクリアする処理などが実行されればよい。そして、特別図柄プロセスフラグの値を大入賞口開放前処理に対応した値である“4”に更新してから(ステップS286)、特別図柄停止処理を終了する。
ステップS281にて大当りフラグがオフである場合には(ステップS281;No)、小当りフラグがオンであるか否かを判定する(ステップS287)。このとき、小当りフラグがオンであれば(ステップS287;Yes)、小当り開始時演出待ち時間を設定する(ステップS288)。例えば、ステップS288の処理では、小当り開始時演出待ち時間に対応して予め定められたタイマ初期値が、遊技制御プロセスタイマにセットされればよい。
ステップS288の処理に続いて、ステップS283の処理と同様に、当り開始指定コマンドを主基板11から演出制御基板12に対して送信するための設定を行う(ステップS289)。その後、小当りフラグをクリアしてオフ状態とする(ステップS290)。そして、特図プロセスフラグの値を小当り開放前処理に対応した値である“8”に更新する(ステップS291)。
また、ステップS287にて小当りフラグがオフである場合には(ステップS287;No)、特図プロセスフラグの値を特別図柄通常処理に対応した値である“0”に更新する(ステップS292)。ステップS291、S292の処理のいずれかを実行した後には、確変状態や時短状態を終了させるか否かの判定を行う(ステップS293)。例えば、ステップS293の処理では、特図変動回数カウンタの値(特図変動回数カウント値)を、例えば1減算または1加算するなどして更新し、更新後の特図変動回数カウント値が所定の特別遊技状態終了判定値と合致するか否かの判定が行われる。このとき、特別遊技状態終了判定値と合致すれば、確変フラグや時短フラグをクリアしてオフ状態とすることなどにより、確変状態や時短状態を終了して通常状態に制御すればよい。他方、特別遊技状態終了判定値と合致しなければ、確変フラグや時短フラグの状態を維持して、ステップS293の処理を終了すればよい。こうした確変状態や時短状態の終了判定を実行した後には、特別図柄停止処理が終了する。なお、特図変動回数カウント値に基づく終了判定は、時短状態である場合のみ行うようにして、確変状態については、次に可変表示結果が「大当り」となるまで継続されるようにしてもよい。あるいは、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタから、確変状態終了判定用の乱数値を示す数値データを抽出し、予めROM506などに格納された確変状態終了判定テーブルを参照することにより、確変状態を終了するか否かの判定を行うようにしてもよい。
図54は、大当り終了処理として、図46のステップS147にて実行される処理の一例を示すフローチャートである。この大当り終了処理において、CPU505は、まず、大当り終了時演出待ち時間が経過したか否かを判定する(ステップS301)。一例として、図46に示すステップS146の大入賞口開放後処理では、特図プロセスフラグの値を“7”に更新するときに、大当り終了時演出待ち時間に対応して予め定められたタイマ初期値が遊技制御プロセスタイマにセットされる。この場合、ステップS301の処理では、例えば遊技制御プロセスタイマ値を1減算することなどにより更新し、更新後の遊技制御プロセスタイマ値が所定の待ち時間経過判定値(例えば「0」など)と合致したか否かに応じて、大当り終了時演出待ち時間が経過したか否かを判定すればよい。ステップS301にて大当り終了時演出待ち時間が経過していなければ(ステップS301;No)、そのまま大当り終了処理を終了する。
これに対して、ステップS301にて大当り終了時演出待ち時間が経過した場合には(ステップS301;Yes)、遊技制御バッファ設定部595などに記憶されている大当り種別バッファ値を読み出して、大当り種別が「非確変」、「確変」、「突確」のいずれであったかを特定する(ステップS302)。このときには、特定された大当り種別が「非確変」であったか否かを判定する(ステップS303)。
ステップS303にて大当り種別が「非確変」であったと判定された場合には(ステップS303;Yes)、遊技状態を時短状態とする制御を開始するための設定を行う(ステップS304)。例えば、CPU505は、時短フラグをオン状態にセットするとともに、時短状態にて実行可能な特図ゲームの上限値に対応して予め定められたカウント初期値(例えば「100」)を、時短回数カウンタに設定する。その一方で、大当り種別が「確変」または「突確」と判定された場合には(ステップS303;No)、遊技状態を確変状態とする制御を開始するための設定を行う(ステップS305)。例えば、CPU505は、確変フラグと時短フラグをともにオン状態にセットする。また、確変状態とする場合にも、時間短縮制御が行われる特図ゲームの上限値に対応して、時短回数カウンタにカウント初期値が設定されてもよい。
ステップS304、S305の処理のいずれかを実行した後には、特図プロセスフラグをクリアして、その値を“0”に初期化してから(ステップS306)、大当り終了処理を終了する。
図55は、普通図柄プロセス処理として、図41のステップS97にて実行される処理の一例を示すフローチャートである。この普通図柄プロセス処理において、CPU505は、まず、ゲート通過判定処理を実行する(ステップS161)。例えば、ステップS161のゲート通過判定処理では、ゲートスイッチ21からの検出信号に基づき、通過ゲート41を通過した遊技球の検出があったか否かを判定し、検出がなければ、そのままゲート通過判定処理を終了する。これに対して、通過ゲート41を通過した遊技球の検出があれば、普図保留記憶部591Cにおける保留データの記憶数である普図保留記憶数を示す普図保留記憶カウント値が、普図保留上限値として予め定められた値(例えば「4」)となっているか否かを判定する。このとき、普図保留上限値に達していれば、通過ゲートにおける今回の遊技球の通過を無効として、ゲート通過判定処理を終了する。その一方で、普図保留上限値に達していない場合には、例えば遊技制御カウンタ設定部594のランダムカウンタなどによって更新される数値データのうちから、普図表示結果決定用の乱数値MR5を示す数値データを抽出する。このとき抽出した乱数値MR5を示す数値データが、保留データとして普図保留記憶部591Cにおける空きエントリの先頭にセットされることで、乱数値MR5が記憶される。この場合には、普図保留記憶数カウント値を1加算するように更新してから、ゲート通過判定処理を終了する。
ステップS161のゲート通過判定処理を実行した後、CPU505は、遊技制御フラグ設定部592に設けられた普図プロセスフラグの値に応じて、図55に示すステップS170〜S173の処理のいずれかを選択して実行する。
ステップS170の普通図柄通常処理は、普図プロセスフラグの値が“0”のときに実行される。この普通図柄通常処理では、普図保留記憶部591Cに格納された保留データの有無などに基づいて、普通図柄表示器20による普図ゲームを開始するか否かの判定が行われる。このとき、例えば普図保留記憶部591Cに格納された保留データがある場合には、普図ゲームにおける普通図柄の可変表示結果である普図表示結果を「普図当り」とするか「普図ハズレ」とするかを決定する普図表示結果決定処理が実行してから、普図プロセスフラグの値を“1”に更新する。
普図表示結果決定処理では、普図保留記憶部591Cから読み出した保留データに含まれる普図表示結果決定用の乱数値MR5を示す数値データなどに基づき、普図表示結果決定テーブル135を参照して、普図表示結果を決定する。ここで、普図表示結果決定テーブル135では、時短フラグがオンである場合に、時短フラグがオフである場合よりも普図表示結果を「普図当り」とする決定がなされる割合が高くなるように、決定値が普図表示結果に割り当てられている。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、通常状態などにて時間短縮制御が行われていないときと比較して、普図ゲームにおける普通図柄の可変表示結果が「普図当り」となりやすくなることで、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高まり、遊技球が第2始動入賞口を通過(進入)しやすくなる。
また、普図表示結果決定処理では、普図表示結果に対応する普図変動時間の決定も行われる。このとき、時短フラグがオンである場合には、時短フラグがオフである場合よりも普図変動時間が短くなるように設定される。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、普図ゲームにおける普通図柄の可変表示結果が導出表示される間隔が短くなることで、「普図当り」の可変表示結果が導出表示される間隔も短くなり、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高まり、遊技球が第2始動入賞口を通過(進入)しやすくなる。さらに、普図表示結果決定処理では、普図表示結果を「普図当り」とする場合に、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする時間(開放時間)や開放状態とする回数(開放回数)を設定してもよい。このとき、時短フラグがオンである場合には、時短フラグがオフである場合よりも開放時間や開放回数が増加するように設定される。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる時間や回数が増加することで、遊技球が第2始動入賞口を通過(進入)しやすくなる。なお、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする設定は、ステップS172の普通図柄停止処理やステップS173の普通電動役物作動処理にて行うようにしてもよい。
ステップS171の普通図柄変動処理は、普図プロセスフラグの値が“1”のときに実行される。この普通図柄変動処理では、普通図柄表示器20において普通図柄を変動させるための設定が行われるとともに、その普通図柄が変動を開始してからの経過時間が計測される。また、こうして計測された経過時間が所定の普図変動時間に達したか否かの判定が行われる。
ステップS172の普通図柄停止処理は、普図プロセスフラグの値が“2”のときに実行される。この普通図柄停止処理では、普図変動時間が経過したことに基づき、普通図柄表示器20にて普通図柄の変動を停止させ、普通図柄の可変表示結果となる確定普通図柄を停止表示(導出表示)させるための設定などを行う。ステップS173の普通電動役物作動処理は、普図プロセスフラグの値が“4”のときに実行される。この普通電動役物作動処理では、普図ゲームにおける可変表示結果(普図表示結果)が「普図当り」となったことに対応して、普通可変入賞球装置6Bが備える可動翼片(左右一対の開閉羽根)を垂直位置から傾動位置に移動させて、普通可変入賞球装置6B(第2始動入賞口)を閉鎖状態から開放状態に変化させるための設定などが行われる。
図56は、普通図柄停止処理として、図55のステップS172にて実行される処理の一例を示すフローチャートである。この普通図柄停止処理において、CPU505は、まず、普図確定表示時間として予め定められた時間(例えば1000msなど)が経過したか否かを判定する(ステップS321)。このとき、普図確定表示時間が経過していなければ(ステップS321;No)、普通図柄停止処理を終了する。なお、普図確定表示時間が経過するまでは、普通図柄表示器20にて普通図柄の可変表示結果となる確定普通図柄を停止表示(導出表示)させる制御が行われるようにしてもよい。
ステップS321にて普図確定表示時間が経過したときには(ステップS321;Yes)、普通図柄の可変表示結果(普図表示結果)が「普図当り」であるか否かを判定する(ステップS322)。このとき、「普図当り」ではなく「普図ハズレ」であれば(ステップS322;No)、普図プロセスフラグをクリアして、その値を“0”に初期化してから(ステップS323)、普通図柄停止処理を終了する。
ステップS322にて「普図当り」であるときには(ステップS322;Yes)、時短フラグがオンであるか否かを判定する(ステップS324)。この実施の形態では、確変状態や時短状態において時間短縮制御とともに高開放制御が行われるときに、時短フラグがオン状態にセットされる。したがって、時短フラグがオンであるか否かに応じて、高開放制御を行うか否かを特定することができる。
ステップS324にて時短フラグがオンであるときには(ステップS324;Yes)、高開放制御用の開放パターンを使用パターンとして選択する(ステップS325)。一例として、高開放制御用の開放パターンでは、役物作動制御時間が8000ms(8.0秒)で、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする開放時間が2000ms(2.0秒)、開放回数が3回に設定される。ここで、3回の開放動作の間には、それぞれ1000ms(1.0秒)ずつ、インターバル期間となる閉鎖時間が設けられていればよい。ステップS324にて時短フラグがオフであるときには(ステップS324;No)、通常開放制御用の開放パターンを使用パターンとして選択する(ステップS326)。一例として、通常開放制御用の開放パターンでは、役物作動制御時間が500ms(0.5秒)で、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする開放時間が500ms(0.5秒)、開放回数が1回に設定される。
ステップS325、S326の処理のいずれかを実行した後には、使用パターンに選択された開放パターンに対応する役物作動制御時間を設定する(ステップS327)。例えば、ステップS327の処理では、遊技制御タイマ設定部593などに設けられた普通電動役物開放制御タイマに、役物作動制御時間に対応したタイマ初期値が設定されればよい。その後、普図プロセスフラグの値を普通電動役物作動処理に対応した値である“3”に更新してから(ステップS328)、普通図柄停止処理を終了する。
図57は、普通電動役物作動処理として、図55のステップS173にて実行される処理の一例を示すフローチャートである。この普通電動役物作動処理において、CPU505は、まず、役物作動制御時間が経過したか否かを判定する(ステップS341)。例えば、ステップS341の処理では、普通電動役物開放制御タイマ値を1減算するなどして更新し、更新後のタイマ値が所定の制御終了判定値(例えば「0」など)と合致するか否かを判定すればよい。
ステップS341にて役物作動制御時間が経過していないときには(ステップS341;No)、第2始動口スイッチ22Bからの検出信号がオン状態となっているか否かを判定する(ステップS342)。例えば、ステップS342の処理では、スイッチオンバッファを所定のレジスタにロードした後、第2始動口スイッチ22Bに対応するビット番号[1]におけるビット値が「1」であるか否かをチェックすることにより、第2始動口スイッチ22Bからの検出信号がオン状態となったか否かが判定されればよい。
ステップS342にて第2始動口スイッチ22Bからの検出信号がオン状態であるときには(ステップS342;Yes)、普通可変入賞球装置6B(第2始動入賞口)を通過(進入)した遊技球の個数をカウントする第2始動入賞カウンタの格納値である第2始動入賞カウント値を1加算するように更新する(ステップS343)。このときには、更新後の第2始動入賞カウント値が所定の入賞上限値(例えば「8」など)未満であるか否かを判定する(ステップS344)。
ステップS342にて第2始動口スイッチ22Bからの検出信号がオフ状態であるときや(ステップS342;No)、ステップS344にて第2始動入賞カウント値が入賞上限値未満であるときには(ステップS344;Yes)、普通電動役物開放制御タイマ値や開放パターンの設定などに基づいて、普通可変入賞球装置6B(第2始動入賞口)を開放状態とするための開放設定や閉鎖状態とするための閉鎖設定を行ってから(ステップS345)、普通電動役物作動処理を終了する。例えば、ステップS345の処理では、開放時間が開始されるときに、普通電動役物用のソレノイド81に対する駆動信号の出力を開始させて普通可変入賞球装置6B(第2始動入賞口)を閉鎖状態から開放状態へと変化させる。また、開放時間が経過したときには、普通電動役物用のソレノイド81に対する駆動信号の出力を停止させて普通可変入賞球装置6B(第2始動入賞口)を開放状態から閉鎖状態へと変化させる。
ステップS344にて第2始動入賞カウント値が入賞上限値以上であるときには(ステップS344;No)、例えば普通電動役物用のソレノイド81に対する駆動信号の出力を停止させるといった、普通可変入賞球装置6B(第2始動入賞口)を閉鎖状態とするための閉鎖設定を行う。これにより、役物作動制御時間が経過するより前でも、第2始動入賞口を通過(進入)した遊技球の個数が入賞上限値に達したときには、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態となる。
ステップS341にて役物作動制御時間が経過したときや(ステップS341;Yes)、ステップS346の処理を実行した後には、第2始動口異常入賞フラグをクリアしてオフ状態とする(ステップS347)。また、第2始動口異常入賞エラー無効タイマをセットする(ステップS348)。例えば、ステップS348の処理では、第2始動口異常入賞エラー無効時間となる所定時間(例えば2000ms)に対応するタイマ初期値が設定されればよい。第2始動口異常入賞エラー無効時間は、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態となる直前に通過(進入)した遊技球が第2始動口スイッチ22Bによって検出されるまでに必要な時間であればよい。なお、第2始動口異常入賞エラー無効時間は、2000ms以外の時間でも、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態となる直前に通過(進入)した遊技球を第2始動口スイッチ22Bによって確実に検出可能な時間であれば、他の時間を用いてもよい。例えば、図44のステップSA28にてセットされる1000msに対応するタイマ初期値が設定されてもよい。
ステップS348の処理を実行した後には、普図プロセスフラグをクリアして、その値を“0”に初期化してから(ステップS349)、普通電動役物作動処理を終了する。
次に、演出制御基板12における動作を説明する。演出制御基板12では、電源基板等から電源電圧の供給を受けると、演出制御用マイクロコンピュータ120のCPUが起動し、図58のフローチャートに示すような演出制御メイン処理を実行する。なお、演出制御用マイクロコンピュータ120においても、電源投入時やシステムリセット時には、CPUによりセキュリティチェック処理が実行され、演出制御用マイクロコンピュータ120がセキュリティモードとなるようにしてもよい。この場合には、セキュリティチェック処理にてROMに不正な変更が加えられていないと判定された後、セキュリティ時間が経過してから、演出制御メイン処理の実行が開始されるユーザモードへと移行すればよい。図58に示す演出制御メイン処理を開始すると、演出制御用マイクロコンピュータ120のCPUは、まず、所定の初期化処理を実行して(ステップS401)、演出制御用マイクロコンピュータ120に内蔵又は外付けされたRAMのクリアや各種初期値の設定、また演出制御用マイクロコンピュータ120に内蔵等されたCTC(カウンタ/タイマ回路)のレジスタ設定等を行う。
その後、演出用乱数更新処理が実行され(ステップS402)、演出制御に用いる各種の乱数値として、演出制御用マイクロコンピュータ120のRAMなどに設けられたランダムカウンタによってカウントされる乱数値を示す数値データを、ソフトウェアにより更新する。続いて、タイマ割込みフラグがオンとなっているか否かの判定を行う(ステップS403)。タイマ割込みフラグは、例えば演出制御用マイクロコンピュータ120におけるCTCのレジスタ設定に基づき、所定時間(例えば2ms)が経過するごとにオン状態にセットされる。
また、演出制御基板12の側では、所定時間が経過するごとに発生するタイマ割込みとは別に、主基板11から演出制御コマンドを受信するための割込みが発生する。この割込みは、例えば演出制御用マイクロコンピュータ120が備えるシリアル通信回路における受信データフルにより発生する割込みであればよい。あるいは、主基板11と演出制御基板12との間に演出制御INT信号を伝送するための信号線を配線した場合には、演出制御INT信号がオン状態となることによる割込みが発生するようにしてもよい。こうした割込み発生に応答して、演出制御用マイクロコンピュータ120のCPUは、自動的に割込み禁止に設定するが、自動的に割込み禁止状態にならないCPUを用いている場合には、割込み禁止命令(DI命令)を発行することが望ましい。演出制御用マイクロコンピュータ120のCPUは、受信データフルによる割込み、あるいは、演出制御INT信号がオン状態となることによる割込みに対応して、例えば所定のコマンド受信割込み処理を実行する。このコマンド受信割込み処理では、演出制御用マイクロコンピュータ120のシリアル通信回路に対応して設けられた通信データレジスタなどに格納された通信データを取り込む。あるいは、コマンド受信割込み処理では、演出制御用マイクロコンピュータ120が備えるPIP等に含まれる入力ポートのうちで、中継基板18を介して主基板11から伝送された制御信号を受信する所定の入力ポートより、演出制御コマンドとなる制御信号を取り込むようにしてもよい。このとき取り込まれた演出制御コマンドは、例えば演出制御用マイクロコンピュータ120のRAMなどに設けられた演出制御コマンド受信用バッファに格納する。一例として、演出制御コマンドが2バイト構成である場合には、1バイト目(MODE)と2バイト目(EXT)を順次に受信して演出制御コマンド受信用バッファに格納する。その後、演出制御用マイクロコンピュータ120のCPUは、割込み許可に設定してから、コマンド受信割込み処理を終了する。
ステップS403にてタイマ割込みフラグがオフであれば(ステップS403;No)、ステップS402の処理に戻る。他方、ステップS403にてタイマ割込みフラグがオンである場合には(ステップS403;Yes)、タイマ割込みフラグをクリアしてオフ状態にするとともに(ステップS404)、コマンド解析処理を実行する(ステップS405)。ステップS405にて実行されるコマンド解析処理では、例えば主基板11の遊技制御用マイクロコンピュータ100から送信されて演出制御コマンド受信用バッファに格納されている各種の演出制御コマンドを読み出した後に、その読み出された演出制御コマンドに対応した設定や制御などが行われる。
ステップS405にてコマンド解析処理を実行した後には、演出制御プロセス処理を実行する(ステップS406)。この演出制御プロセス処理では、例えば画像表示装置5の表示領域における演出画像の表示動作、スピーカ8L、8Rからの音声出力動作、遊技効果ランプ9や装飾用LEDにおける点灯動作といった、演出用の電気部品(演出装置)を用いた演出動作の制御内容について、主基板11から送信された演出制御コマンド等に応じた判定や決定、設定などが行われる。演出制御プロセス処理を実行した後には、報知制御処理を実行してから(ステップS407)、ステップS402の処理に戻る。
ステップS407の報知制御処理では、例えば主基板11から伝送された異常入賞報知コマンドを受信したときに、図59に示すような異常報知画面といった所定の報知画面を画像表示装置5の表示領域に表示させることや、遊技効果ランプ9に含まれる所定の警告ランプを点灯させること、スピーカ8L、8Rから所定の警告音を出力させること、あるいは、これらの一部もしくは全部を組み合わせることにより、普通可変入賞球装置6B(第2始動入賞口)にて異常な遊技球の通過(進入)による始動入賞があった旨を報知すればよい。
図60は、演出制御コマンド解析処理として、図58のステップS404にて実行される処理の一例を示すフローチャートである。この演出制御コマンド解析処理において、演出制御用マイクロコンピュータ120のCPUは、まず、第1始動口入賞指定コマンドを受信したか否かを判定する(ステップS551)。例えば演出制御基板12の側で受信した演出制御コマンドは演出制御コマンド受信用バッファに格納されており、この演出制御コマンド受信用バッファに格納されているコマンドを読み出して内容を確認することにより、受信した演出制御コマンドを特定できればよい。
ステップS551にて第1始動口入賞指定コマンドを受信したと判定されたときには(ステップS551;Yes)、第1始動口入賞時に対応した表示更新の設定を行う(ステップS552)。例えば、ステップS552の処理では、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hで非表示となっている第1始動入賞口に対応した表示部位のうちの1つを、第1始動入賞口を通過(進入)した遊技球の検出による第1始動条件の成立に応じて、青色表示に変化させるための表示設定などが行われればよい。
ステップS552の処理に続いて、例えば演出制御用マイクロコンピュータ120のRAMにおける所定領域などに設けられた連続予告変動カウンタの格納値である連続予告変動カウント値が「0」であるか否かを判定する(ステップS553)。ここで、連続予告変動カウンタには、主基板11から伝送される第1始動口入賞指定コマンドや第2始動口入賞指定コマンドにより入賞時当り判定や特定パターン共通範囲内であることが通知されたときに、始動入賞後の合計保留記憶数や第2特図保留記憶数が設定され、そのカウント値が「0」になるまで、特図ゲームの実行開始に対応して飾り図柄の可変表示が開始されるごとに1減算されるように更新される。したがって、連続予告変動カウント値が「0」以外であるときには、保留記憶情報のうちに入賞時当り判定がなされた可変表示あるいは特定パターン共通範囲内の判定がなされた可変表示が含まれている。
ステップS553にて連続予告変動カウント値が「0」以外であるときには(ステップS553;No)、先に発生した始動入賞に基づく保留記憶情報について入賞時当り判定や特定パターン共通範囲内の判定がなされていることから、演出制御コマンド解析処理を終了する。ステップS553にて連続予告変動カウント値が「0」であるときには(ステップS553;Yes)、例えば第1始動口入賞指定コマンドにおけるEXTデータを読み取ることなどにより、入賞時当り判定が通知されたか否かを判定する(ステップS554)。このとき、入賞時当り判定が通知されていなければ(ステップS554;No)、特定パターン共通範囲内であることが通知されたか否かを判定する(ステップS555)。
ステップS555にて特定パターン共通範囲内であることが通知されていなければ(ステップS555;No)、演出制御コマンド解析処理を終了する。ステップS554にて入賞時当り判定が通知された場合や(ステップS554;Yes)、ステップS555にて特定パターン共通範囲内であることが通知された場合には(ステップS555;Yes)、例えば演出制御用マイクロコンピュータ120のRAMにおける所定領域などに設けられた連続予告フラグをオン状態にセットする(ステップS556)。
ステップS556の処理を実行した後には、連続予告変動カウント値として、始動入賞後の合計保留記憶数をセットしてから(ステップS557)、演出制御コマンド解析処理を終了する。第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、ステップS557の処理にて合計保留記憶数を連続予告変動カウント値にセットすることで、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報に基づく可変表示が実行される以前に実行される可変表示回数を特定することができる。合計保留記憶数は、例えば主基板11から伝送された保留記憶数通知コマンドのEXTデータを読み取ることなどにより、特定できればよい。
ステップS551にて第1始動口入賞指定コマンドを受信していないと判定されたときには(ステップS551;No)、第2始動口入賞指定コマンドを受信したか否かを判定する(ステップS558)。そして、第2始動口入賞指定コマンドを受信したと判定されたときには(ステップS558;Yes)、第2始動口入賞時に対応した表示更新の設定を行う(ステップS559)。例えば、ステップS559の処理では、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hで非表示となっている第2始動入賞口に対応した表示部位のうちの1つを、第2始動入賞口を通過(進入)した遊技球の検出による第2始動条件の成立に応じて、赤色表示に変化させるための表示設定などが行われればよい。
ステップS559の処理に続いて、連続予告変動カウント値が「0」となっているか否か、すなわち、先に発生した始動入賞に基づく保留記憶情報について入賞時当り判定や特定パターン共通範囲内の判定がなされているか否かを判定する(ステップS560)。このとき、連続予告変動カウント値が「0」以外であれば(ステップS560;No)、演出制御コマンド解析処理を終了する。なお、第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、連続予告演出による予告対象となる第1特図を用いた特図ゲームが開始されるより前に、遊技球が第2始動入賞口を通過(進入)して第2特図を用いた特図ゲームが実行されてしまうと、連続予告演出による予告対象となる可変表示にズレが生じることになる。そこで、ステップS560の処理にて連続予告変動カウント値が「0」以外であるときでも、その連続予告変動カウント値が第2特図保留記憶数を超えている場合のように、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報が第1始動入賞口を通過(進入)した遊技球の検出に基づくものである場合には、例えば連続予告変動カウント値をクリアして「0」に初期化してから、ステップS561の処理に進むようにしてもよい。
ステップS560にて連続予告変動カウント値が「0」であるときには(ステップS560;No)、例えば第2始動口入賞指定コマンドにおけるEXTデータを読み取ることなどにより、入賞時当り判定が通知されたか否かを判定する(ステップS561)。このとき、入賞時当り判定が通知されていなければ(ステップS561;No)、特定パターン共通範囲内であることが通知されたか否かを判定する(ステップS562)。
ステップS562にて特定パターン共通範囲内であることが通知されていなければ(ステップS562;No)、演出制御コマンド解析処理を終了する。ステップS561にて入賞時当り判定が通知された場合や(ステップS561;Yes)、ステップS562にて特定パターン共通範囲内であることが通知された場合には(ステップS562;Yes)、連続予告フラグをオン状態にセットする(ステップS563)。
ステップS563の処理を実行した後には、連続予告変動カウント値として、始動入賞後の第2特図保留記憶数をセットしてから(ステップS564)、演出制御コマンド解析処理を終了する。第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、ステップS564の処理にて第2特図保留記憶数を連続予告変動カウント値にセットすることで、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報に基づく可変表示が実行される以前に実行される可変表示回数を特定することができる。第2特図保留記憶数は、例えば主基板11から伝送された第2始動口入賞指定コマンドの受信数と、第2変動開始コマンドの受信数との差分などから、特定できればよい。例えば、第2特図保留特定カウンタの格納値である第2特図保留特定カウント値を、第2始動口入賞指定コマンドの受信ごとに1加算するように更新し、第2変動開始コマンドの受信ごとに1減算するように更新して、第2特図保留記憶数を特定できるようにすればよい。
特図表示結果が「大当り」で大当り種別が「突確」になると判定されたときや、特図表示結果が「小当り」になると判定されたときに、特図表示結果が「大当り」で大当り種別が「非確変」または「確変」になると判定されたときとは異なるEXTデータが第1始動口入賞指定コマンドなどに設定される場合には、大当り種別が「非確変」または「確変」になると判定されたときに連続予告フラグをオン状態にセットするなどの設定(連続予告演出を実行するための設定)を行う一方、大当り種別が「突確」になると判定されたときや、特図表示結果が「小当り」になると判定されたときには、連続予告演出を実行するための設定が行われないようにしてもよい。これにより、連続予告演出が実行されて特図表示結果が「大当り」となる期待感を高めておきながら、遊技者が賞球を得ることが困難な2ラウンド大当り状態や小当り遊技状態に制御されてしまうことにより遊技興趣が減退する事態を極力防止できる。
図61は、演出制御プロセス処理として、図58のステップS406にて実行される処理の一例を示すフローチャートである。この演出制御プロセス処理において、演出制御用マイクロコンピュータ120のCPUは、例えば演出制御用マイクロコンピュータ120のRAM等に設けられた演出プロセスフラグの値に応じて、以下のようなステップS180〜ステップS186の処理のいずれかを選択して実行する。
ステップS180の飾り図柄変動開始待ち処理は、演出プロセスフラグの値が“0”のときに実行される処理である。この飾り図柄変動開始待ち処理には、主基板11から伝送される変動開始コマンドとして、第1変動開始コマンドと第2変動開始コマンドのいずれかを受信したか否かに応じて、画像表示装置5の表示領域に設けられた「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける飾り図柄の可変表示を、開始するか否かの判定を行う処理などが含まれている。このとき、可変表示を開始すると判定されれば、演出プロセスフラグの値が“1”に更新される。
ステップS181の飾り図柄変動設定処理は、演出プロセスフラグの値が“1”のときに実行される処理である。この飾り図柄変動設定処理には、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームの開始や第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームの開始に対応して、飾り図柄の可変表示を含めた各種の演出動作を行うために、変動パターンや可変表示結果などに応じた最終停止図柄となる確定飾り図柄や仮停止図柄、予告演出の有無等を決定し、その決定結果に応じて、予め用意された複数種類の演出制御パターンのいずれかを、使用パターンとして選択して設定する処理などが含まれている。こうした決定や設定などが行われた後には、演出プロセスフラグの値が“2”に更新される。
ステップS182の飾り図柄変動中処理は、演出プロセスフラグの値が“2”のときに実行される処理である。この飾り図柄変動中処理には、例えば演出制御用マイクロコンピュータ120のRAM等に設けられた演出制御プロセスタイマの値(演出制御プロセスタイマ値)などに対応して、使用パターンとなる演出制御パターンなどから各種の制御データを読み出して、飾り図柄の可変表示中における各種の演出制御を行うための処理が含まれている。そして、例えば演出制御プロセスタイマ値が所定の可変表示終了値(例えば「0」)となったこと、あるいは、主基板11から伝送される図柄確定指定コマンドを受信したことなどに対応して、飾り図柄の可変表示結果となる最終停止図柄としての確定飾り図柄を完全停止表示させる。演出制御プロセスタイマ値が可変表示終了値となったことに対応して確定飾り図柄を完全停止表示させるようにすれば、変動パターン指定コマンドにより指定された変動パターンに対応する可変表示時間が経過したときに、主基板11からの演出制御コマンドによらなくても、演出制御基板12の側で自律的に確定飾り図柄を導出表示して可変表示結果を確定させることができる。確定飾り図柄を完全停止表示したときには、演出プロセスフラグの値が“3”に更新される。
ステップS183の飾り図柄変動終了時処理は、演出プロセスフラグの値が“3”のときに実行される処理である。この飾り図柄変動終了時処理には、主基板11から伝送される当り開始指定コマンドを受信したか否かを判定する処理が含まれている。このとき、当り開始指定コマンドを受信した旨の判定がなされれば、その当り開始指定コマンドから特定される可変表示結果が「大当り」である場合に、演出プロセスフラグの値が“4”に更新される。その一方で、当り開始指定コマンドから特定される可変表示結果が「小当り」である場合には、演出プロセスフラグの値が“5”に更新される。また、当り開始指定コマンドを受信せずに所定時間が経過したときには、可変表示結果が「ハズレ」であることに対応して、演出プロセスフラグの値が“0”に更新される。
ステップS184の大当り制御中演出処理は、演出プロセスフラグの値が“4”のときに実行される処理である。この大当り制御中演出処理には、例えば可変表示結果が「大当り」となったことなどに対応した演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、大当り遊技状態における各種の演出動作を制御する処理が含まれている。そして、例えば主基板11から伝送される当り終了指定コマンドを受信したことなどに対応して、演出プロセスフラグの値が“6”に更新される。
ステップS185の小当り制御中演出処理は、演出プロセスフラグの値が“5”のときに実行される処理である。この小当り制御中演出処理には、例えば可変表示結果が「小当り」となったことなどに対応して演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、小当り遊技状態における各種の演出動作を制御する処理が含まれている。そして、例えば主基板11から伝送される当り終了指定コマンドを受信したことなどに対応して、演出プロセスフラグの値が“6”に更新される。
ステップS186のエンディング演出処理は、演出プロセスフラグの値が“6”のときに実行される処理である。このエンディング演出処理には、大当り遊技状態や小当り遊技状態が終了することなどに対応した演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、大当り遊技状態や小当り遊技状態の終了に対応した各種の演出動作を制御する処理が含まれている。そして、こうした演出動作が終了したことなどに対応して、演出プロセスフラグの値が“0”に更新される。
図62は、飾り図柄変動設定処理として、図61に示すステップS181にて実行される処理の一例を示すフローチャートである。この飾り図柄変動設定処理において、演出制御用マイクロコンピュータ120のCPUは、まず、例えば主基板11から伝送された表示結果指定コマンドにおけるEXTデータを読み取ることなどにより、特図表示結果が「ハズレ」となるか否かを判定する(ステップS601)。このとき、特図表示結果が「ハズレ」となる旨の判定がなされれば(ステップS601;Yes)、例えば主基板11から伝送された変動パターン指定コマンドにおけるEXTデータを読み取ることなどにより、指定された変動パターンが飾り図柄の可変表示態様を「非リーチ」とする場合に対応した非リーチ変動パターンであるか否かを判定する(ステップS602)。
ステップS602にて非リーチ変動パターンであると判定された場合には(ステップS602;Yes)、非リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS603)。一例として、ステップS603の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される左確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の左確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「左」の飾り図柄表示エリア5Lに停止表示される左確定飾り図柄を決定する。次に、ランダムカウンタ等により更新される右確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の右確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「右」の飾り図柄表示エリア5Rに停止表示される右確定飾り図柄を決定する。このときには、右確定図柄決定テーブルにおける設定などにより、右確定飾り図柄の図柄番号が左確定飾り図柄の図柄番号とは異なるように、決定されるとよい。続いて、ランダムカウンタ等により更新される中確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の中確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「中」の飾り図柄表示エリア5Cに停止表示される中確定飾り図柄を決定する。
ステップS602にて非リーチ変動パターンではないと判定された場合には(ステップS602;No)、リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS604)。一例として、ステップS604の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される左右確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の左右確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「左」と「右」の飾り図柄表示エリア5L、5Rにて揃って停止表示される図柄番号が同一の飾り図柄を決定する。さらに、ランダムカウンタ等により更新される中確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の中確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「中」の飾り図柄表示エリア5Cにて停止表示される中確定飾り図柄を決定する。ここで、例えば中確定飾り図柄の図柄番号が左確定飾り図柄及び右確定飾り図柄の図柄番号と同一になる場合のように、確定飾り図柄が大当り組合せとなってしまう場合には、任意の値(例えば「1」)を中確定飾り図柄の図柄番号に加算または減算することなどにより、確定飾り図柄が大当り組合せとはならずにリーチ組合せとなるようにすればよい。あるいは、中確定飾り図柄を決定するときには、左確定飾り図柄及び右確定飾り図柄の図柄番号との差分(図柄差)を決定し、その図柄差に対応する中確定飾り図柄を設定してもよい。
ステップS601にて特図表示結果が「ハズレ」ではないと判定されたときには(ステップS601;No)、特図表示結果が「大当り」で大当り種別が「突確」である場合、又は、特図表示結果が「小当り」である場合であるか、これら以外の場合であるかを判定する(ステップS605)。このとき、大当り種別が「突確」又は特図表示結果が「小当り」であると判定されれば(ステップS605;Yes)、予め定められた複数種類の2回開放チャンス目のいずれかといった、大当り種別が「突確」の場合や特図表示結果が「小当り」の場合に対応した飾り図柄の可変表示結果となる確定飾り図柄の組合せを決定する(ステップS606)。一例として、変動パターン指定コマンドにより変動パターンPC1−1〜変動パターンPC1−3のいずれかが指定された場合に対応して(図25を参照)、複数種類の2回開放チャンス目のいずれかを構成する最終停止図柄となる確定飾り図柄の組合せを決定する。この場合には、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新されるチャンス目決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定のチャンス目決定テーブルを参照することなどにより、複数種類の2回開放チャンス目のいずれかを構成する確定飾り図柄の組合せを決定すればよい。また、変動パターン指定コマンドにより変動パターンPC1−4及び変動パターンPC1−5のいずれかが指定された場合には、例えばステップS604と同様の処理を実行することにより、リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定すればよい。
ステップS605にて特図表示結果が「大当り」で大当り種別が「突確」以外の「非確変」又は「確変」であると判定されたときには(ステップS605;No)、大当り組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS607)。一例として、ステップS607の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される大当り確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の大当り確定図柄決定テーブルを参照することなどにより、画像表示装置5の表示領域における「左」、「中」、「右」の飾り図柄表示エリア5L、5C、5Rに揃って停止表示される図柄番号が同一の飾り図柄を決定する。
ステップS603、S604、S606、S607の処理のいずれかを実行した後には、「擬似連」や「滑り」といった可変表示演出を実行するための設定が行われる(ステップS608)。例えば、ステップS608の処理では、主基板11から伝送された変動パターン指定コマンドにおけるEXTデータを読み取って特定された変動パターンなどに応じて、「擬似連」や「滑り」の可変表示演出が実行されるか否かを判定する。このとき、「擬似連」や「滑り」の可変表示演出が実行されると判定した場合には、「擬似連」の可変表示演出において仮停止表示されて複数種類の擬似連チャンス目のいずれかを構成する飾り図柄や、「滑り」の可変表示演出において仮停止表示される飾り図柄などを決定する。
ステップS608の処理に続いて、確変昇格演出を実行するための設定が行われる(ステップS609)。例えば、ステップS609の処理では、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」である場合に、再抽選演出を実行するか否かや、実行する場合における再抽選演出の演出態様に対応した再抽選演出パターンなどが、決定されるようにすればよい。また、ステップS609の処理では、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」である場合に、大当り中昇格演出を実行するか否かや、実行する場合における大当り中昇格演出の演出態様に対応した大当り中昇格演出パターンなどが、決定されるようにしてもよい。
ステップS609の処理を実行した後には、連続予告設定処理を実行する(ステップS610)。続いて、演出制御パターンを予め用意された複数パターンのいずれかに決定する(ステップS611)。このときには、例えば変動パターン指定コマンドに示された変動パターンなどに対応して、複数用意された特図変動時演出制御パターンのいずれかを選択し、使用パターンとしてセットする。また、ステップS608における可変表示演出の設定や、ステップS609における確変昇格演出(特に再抽選演出)の設定、ステップS610における連続予告演出の設定に対応して、複数用意された特図変動時演出制御パターンのいずれかを選択し、使用パターンとしてセットすればよい。
ステップS611の処理に続いて、例えば変動パターン指定コマンドに示された変動パターンに対応して、演出制御用マイクロコンピュータ120に内蔵された演出制御プロセスタイマの初期値を設定する(ステップS612)。そして、画像表示装置5における飾り図柄の変動を開始させるための設定を行う(ステップS613)。このときには、例えばステップS611にて使用パターンとして決定された特図変動時演出制御パターンに含まれる表示制御データが指定する表示制御指令をVDP121等に対して伝送させることなどにより、画像表示装置5の表示領域に設けられた「左」、「中」、「右」の各飾り図柄表示エリア5L、5C、5Rにて飾り図柄の変動を開始させればよい。その後、演出プロセスフラグの値を飾り図柄変動中処理に対応した値である“2”に更新してから(ステップS614)、飾り図柄変動設定処理を終了する。
図63は、連続予告設定処理として、図62のステップS610にて実行される処理の一例を示すフローチャートである。この連続予告設定処理において、演出制御用マイクロコンピュータ120のCPUは、まず、連続予告フラグがオンであるか否かを判定する(ステップS701)。このとき、連続予告フラグがオフであれば(ステップS701;No)、連続予告設定処理を終了する。
ステップS701にて連続予告フラグがオンであるときには(ステップS701;Yes)、連続予告変動カウント値を1減算するように更新する(ステップS702)。そして、更新後の連続予告変動カウント値が「0」となったか否かを判定する(ステップS703)。このとき、連続予告変動カウント値が「0」であれば(ステップS703;Yes)、連続予告フラグをクリアしてオフ状態としてから(ステップS704)、連続予告設定処理を終了する。なお、ステップS703にて連続予告変動カウント値が「0」になったときでも、連続予告演出を実行するための決定や設定が行われるようにしてもよい。ステップS703にて連続予告変動カウント値が「0」になるのは、連続予告演出により特図表示結果が「大当り」となる可能性を報知する対象となる飾り図柄の可変表示が開始されるときである。そこで、このときにも連続予告演出を実行するための決定や設定を行うことにより、報知対象となる飾り図柄の可変表示中においても連続予告演出を実行することができる。
ステップS703にて連続予告変動カウント値が「0」以外であるときには(ステップS703;No)、その連続予告変動カウント値が「3」以上であるか否かを判定する(ステップS705)。そして、連続予告変動カウント値が「3」以上であるときには(ステップS705;Yes)、予め用意された複数種類の演出態様(演出内容)のうちで、予告演出YD1の連続予告演出に決定して(ステップS706)、連続予告設定処理を終了する。
ステップS705にて連続予告変動カウント値が「3」未満であるときには(ステップS705;No)、その連続予告変動カウント値が「2」であるか否かを判定する(ステップS707)。そして、連続予告変動カウント値が「2」であるときには(ステップS707;Yes)、予め用意された複数種類の演出態様(演出内容)のうちで、予告演出YD2の連続予告演出に決定して(ステップS708)、連続予告設定処理を終了する。
ステップS707にて連続予告変動カウント値が「2」ではないときには(ステップS707;No)、連続予告変動カウント値が「1」であることに対応して、複数種類の演出態様(演出内容)のうちで、予告演出YD3の連続予告演出に決定してから(ステップS709)、連続予告設定処理を終了する。
こうして、入賞時当り判定や特定パターン共通範囲内が通知されたことに基づいて連続予告フラグがオンとなった後には、連続予告変動カウント値が「0」となるまで、連続予告演出を実行することができる。なお、入賞時当り判定や特定パターン共通範囲内が通知された場合に、常に連続予告演出が実行されるものに限定されず、所定割合で連続予告演出を実行するか否かの決定が行われるようにしてもよい。一例として、入賞時当り判定が通知されたときには、特定パターン共通範囲内が通知されたときよりも高い割合で、連続予告演出を実行する旨の決定が行われるようにしてもよい。また、入賞時当り判定や特定パターン共通範囲内が通知されない場合でも、所定割合で連続予告演出を実行する旨の決定が行われるようにしてもよい。この場合には、入賞時当り判定や特定パターン共通範囲内が通知されたか否かに応じて異なる割合で、連続予告演出を実行する旨の決定が行われるようにしてもよい。一例として、入賞時当り判定や特定パターン共通範囲内が通知されたときには、これらが通知されないときよりも高い割合で、連続予告演出を実行する旨の決定が行われるようにすればよい。
図63に示す連続予告設定処理では、連続予告変動カウント値で示される連続予告演出により特図表示結果が「大当り」となる可能性を報知する対象となる飾り図柄の可変表示が開始されるまでに実行される特図ゲームの残り回数に応じて、異なる演出態様(演出内容)の連続予告演出が決定される。これに対して、報知対象となる飾り図柄の可変表示が開始されるまでに実行される特図ゲームの残り回数(連続予告変動カウント値)にかかわらず、同一の演出態様(演出内容)となる予告演出が連続予告演出として実行されるように決定してもよい。また、入賞時当り判定や特定パターン共通範囲内のうち、いずれが通知されたかに応じて、連続予告演出における演出態様(演出内容)の決定割合を異ならせるようにしてもよい。一例として、入賞時当り判定が通知されたときには、特定パターン共通範囲内が通知されたときよりも高い割合で、特定の演出態様(例えば「激熱だよ!」のメッセージを報知する予告演出)に決定されるようにしてもよい。
複数回の可変表示にわたる連続予告演出は、一括して決定されるようにしてもよい。一例として、複数回の可変表示それぞれに対応した演出態様(演出内容)を示す連続予告演出パターンを予め複数パターン用意して、入賞時当り判定や特定パターン共通範囲内が通知されたときに、合計保留記憶数などに基づいて、いずれかの連続予告演出パターンに決定してもよい。この場合、合計保留記憶数に応じて、連続予告演出を実行するか否かの決定割合を異ならせてもよい。例えば、合計保留記憶数が所定数以上である場合には、所定数未満の場合と比較して、高い割合で連続予告演出を実行する旨の決定がされるようにしてもよい。
図64は、飾り図柄変動中処理として、図61のステップS182にて実行される処理の一例を示すフローチャートである。この飾り図柄変動中処理において、演出制御用マイクロコンピュータ120のCPUは、演出制御プロセスタイマ値を更新(例えば1減算)してから(ステップS621)、更新後の演出制御プロセスタイマ値を演出制御パターンにて示される演出制御プロセスタイマ判定値と比較して、いずれかのタイマ判定値と合致したか否かの判定を行う(ステップS622)。
ステップS622にてタイマ判定値と合致した場合には(ステップS622;Yes)、そのタイマ判定値と対応付けて演出制御パターンに格納された演出制御実行データ(例えば、表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データの一部又は全部)あるいは終了コードを読み出す(ステップS623)。ここで、ステップS622にて演出制御パターンで示される複数のタイマ判定値が演出制御プロセスタイマ値と合致した場合には、合致した各々のタイマ判定値と対応付けて格納されている複数の演出制御実行データを、ステップS623にて読み出すようにすればよい。そして、ステップS623にて終了コードが読み出されたか否かの判定を行う(ステップS624)。このとき、終了コードではないと判定された場合には(ステップS624;No)、ステップS623にて読み出された演出制御実行データに従って演出動作を制御するための演出制御指令処理を実行してから(ステップS625)、飾り図柄変動中処理を終了する。
ステップS624にて終了コードであると判定された場合には(ステップS624;Yes)、例えば所定のタイマ初期値を演出制御プロセスタイマに設定することなどにより、当り開始指定コマンド受信待ち時間の設定を行う(ステップS626)。そして、演出プロセスフラグの値を飾り図柄変動終了時処理に対応した値である“3”に更新してから(ステップS627)、飾り図柄変動中処理を終了する。これにより、次回のタイマ割込み発生時には、飾り図柄変動終了時処理が実行され、当り開始指定コマンド受信待ち時間が経過するまでに当り開始指定コマンドの受信がなければ、演出プロセスフラグがクリアされて、その値が“0”に初期化される。その一方で、当り開始指定コマンド受信待ち時間が経過するまでに当り開始指定コマンドの受信があれば、特図表示結果が「小当り」であるか「大当り」であるかに応じて、演出制御プロセスフラグの値が“4”(特図表示結果が「大当り」の場合)又は“5”(特図表示結果が「小当り」の場合)に更新されることにより、小当り時や大当り時における演出動作の制御が行われるようにすればよい。
また、ステップS622にてタイマ判定値のいずれとも合致しなかったときにも(ステップS622;No)、飾り図柄変動中処理を終了する。ただし、ステップS622の処理を実行した後に、あるいは、ステップS622の処理を実行する以前に、主基板11から伝送された図柄確定指定コマンドを受信したと判定された場合には、ステップS626の処理に進み、次回のタイマ割込み発生時には飾り図柄変動終了時処理が実行されるようにしてもよい。
図65は、演出制御指令処理として、図64に示すステップS625にて実行される処理の一例を示すフローチャートである。この演出制御指令処理において、演出制御用マイクロコンピュータ120のCPUは、図64に示すステップS623の処理で読み出された演出制御実行データの種類を特定する(ステップS721)。このときには、演出制御実行データに含まれる表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データのうち、いずれの制御データであるかが特定されればよい。
その後、特定された演出制御実行データが表示制御データであるか否かを判定する(ステップS722)。このとき、表示制御データであると判定された場合には(ステップS722;Yes)、その表示制御データが指定する表示制御指令をVDP121等に対して送出するための設定を行う(ステップS723)。
ステップS722にて表示制御データではないと判定された場合や(ステップS722;No)、ステップS723の処理を実行した後には、特定された演出制御実行データが音声制御データであるか否かを判定する(ステップS724)。このとき、音声制御データであると判定された場合には(ステップS724;Yes)、その音声制御データが指定する音番号データに応じた効果音信号を音声制御基板13に対して送出するための設定を行う(ステップS725)。
ステップS724にて音声制御データではないと判定された場合や(ステップS724;No)、ステップS725の処理を実行した後には、特定された演出制御実行データがランプ制御データであるか否かを判定する(ステップS726)。このとき、ランプ制御データであると判定された場合には(ステップS726;Yes)、そのランプ制御データが指定する電飾信号をランプ制御基板14に対して送出するための設定を行う(ステップS727)。
ステップS726にてランプ制御データではないと判定された場合や(ステップS726;No)、ステップS727の処理を実行した後には、特定された演出制御実行データが操作検出制御データであるか否かを判定する(ステップS728)。このとき、操作検出制御データではないと判定された場合には(ステップS728;No)、演出制御指令処理を終了する。これに対して、操作検出制御データであると判定された場合には(ステップS728;Yes)、その操作検出制御データに基づいて、遊技者の操作ボタン等に対する所定の指示操作(例えば押下操作など)を有効に検出して、検出結果に応じて演出動作を切換可能な期間である有効検出期間であるか否かを判定する(ステップS729)。例えば、予告演出YD1〜予告演出YD3の各連続予告演出において、操作ボタンに対する指示操作を促す演出画像を画像表示装置5の表示領域に表示させたときから所定時間が経過するまでを有効検出期間とするように、所定の演出制御プロセスタイマ判定値と対応付けられた操作検出制御データにより予め設定しておけばよい。
ステップS729にて有効検出期間であると判定された場合には(ステップS729;Yes)、操作ボタンに対する指示操作の検出結果に基づく演出制御を実行してから(ステップS730)、演出制御指令処理を終了する。例えば、ステップS730の処理では、操作ボタンから演出制御基板12へと伝送される操作検出信号に基づいて、操作ボタンに対する所定の指示操作(例えば押下操作など)が検出されたか否かを判定する。そして、操作ボタンに対する指示操作が検出されたときには、その検出結果に応じて演出内容の変更などを行うための設定が行われればよい。
ステップS729にて有効検出期間ではないと判定された場合には(ステップS729;No)、操作検出制御データなどに基づくその他の操作検出制御を行ってから(ステップS731)、演出制御指令処理を終了する。例えば、ステップS731の処理では、操作検出制御データに基づいて、有効検出期間を終了して、遊技者による指示操作等が以後に検出されないように制限するための設定を行えばよい。
以下、パチンコ遊技機1における具体的な動作例について説明する。パチンコ遊技機1では、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームや、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが実行され、また、これらの特図ゲームにおける特別図柄の可変表示に対応して、画像表示装置5の表示領域に含まれる「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにて飾り図柄の可変表示が実行される。そして、例えば確定特別図柄といった特図ゲームにおける可変表示結果や、確定飾り図柄の組合せといった飾り図柄の可変表示結果などに基づいて、例えば大当り遊技状態に制御されることといった、所定の遊技価値が付与可能となる。なお、パチンコ遊技機1にて付与可能な遊技価値とは、大当り遊技状態に制御されて大入賞口が閉鎖状態から開放状態に変化して遊技球が進入(入賞)しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることなどであればよい。また、例えば大当り遊技状態にて実行可能なラウンドの上限回数や、時短状態にて実行可能な特図ゲームの上限回数、確変状態における大当り確率、通常状態に制御されることなく大当り遊技状態に制御される回数である連チャン回数が所定回数に達すること、あるいは、これらの一部又は全部といった、パチンコ遊技機1における遊技の有利度合いに関わる任意の事項が、パチンコ遊技機1における遊技価値となり得る。
パチンコ遊技機1では、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した遊技球が第1始動口スイッチ22Aにより検出されたときや、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した遊技球が第2始動口スイッチ22Bにより検出されたときに、図48のステップS506にて読み出した数値データに基づく特図表示結果決定用の乱数値MR1や、ステップS508にて抽出した変動パターン種別決定用の乱数値MR3を用いて、図47に示すステップS205やステップS210にて入賞時乱数値判定処理が実行される。
入賞時乱数値判定処理では、図49のステップS525にて特図表示結果決定用の乱数値MR1が大当り判定範囲内である旨の判定がなされたときなどに(ステップS525;Yes)、ステップS527での送信設定に基づき、入賞時当り判定を通知する第1始動口入賞指定コマンドが、主基板11から演出制御基板12に対して伝送される。また、図49のステップS531にて特図表示結果決定用の乱数値MR1が大当り判定範囲内である旨の判定がなされたときなどには(ステップS531;Yes)、ステップS533での送信設定に基づき、入賞時当り判定を通知する第2始動口入賞指定コマンドが、主基板11から演出制御基板12に対して伝送される。
演出制御基板12では、図60のステップS551にて第1始動口入賞指定コマンドを受信したと判定した後、ステップS554にて入賞時当り判定が通知されたと判定したときに、連続予告フラグをオン状態にセットするとともに(ステップS556)、連続予告変動カウント値の設定を行う(ステップS557)。また、ステップS558にて第2始動口入賞指定コマンドを受信したと判定した後、ステップS561にて入賞時当り判定が通知されたと判定したときにも、連続予告フラグをオン状態にセットするとともに(ステップS563)、連続予告変動カウント値の設定を行う(ステップS564)。こうして連続予告変動カウント値の設定が行われることにより、乱数値MR1が大当り判定範囲内となったことなどにより可変表示結果が「大当り」などになる可変表示の保留位置(保留番号)を特定することができる。
その後、図63のステップS701にて連続予告フラグがオンであると判定され(ステップS701;Yes)、更新後の連続予告変動カウント値が「0」ではないと判定されたときには(ステップS703;No)、その連続予告変動カウント値に応じた演出態様(演出内容)の連続予告演出が決定される(ステップS705〜S709)。
図66は、図63のステップS706にて予告演出YD1に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、まず、例えば特図ゲームにおける特別図柄の変動開始などに対応して、図66(A)に示すように「左」、「中」、「右」の各飾り図柄表示エリア5L、5C、5Rにて停止表示されていた飾り図柄が、図66(B)に示すように「左」、「中」、「右」の飾り図柄表示エリア5L、5C、5Rの全部にて変動を開始する。その後、例えば図62に示すステップS611の処理で決定された連続予告演出用の演出制御パターンから読み出した表示制御データなどに従い、図66(C)に示すように、遊技者に操作ボタンの指示操作を促す演出画像YH11を表示させる。そして、遊技者が有効検出期間内に操作ボタンに対する指示操作を行い、それに応じて演出制御基板12へと伝送される操作検出信号がオン状態となった場合には、例えば図66(D)に示すようなキャラクタ画像のセリフを示す演出画像YH21を表示させる。この演出画像YH21は、「スーパーリーチかも」などのスーパーリーチの発生を予告する文字列を示している。これに対して、有効検出期間内に操作ボタンに対する指示操作がなされなかった場合には、例えば図66(E)に示すように演出画像YH11が消去されて、連続予告演出における演出動作が終了する。その後、例えば図66(F)に示すように「左」の飾り図柄表示エリア5Lにて飾り図柄を仮停止表示するなど、飾り図柄の可変表示が進行してゆく。
図67は、図63のステップS708にて予告演出YD2に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、図67(A)〜(C)に示すように、図66(A)〜(C)と同様の表示動作が行われる。その後、遊技者が有効検出期間内に操作ボタンに対する指示操作を行った場合には、例えば図67(D)に示すように、図66(D)に示す演出画像YH21とは異なる演出画像YH22を表示させることなどにより、予告演出YD1の場合とは異なる演出態様(演出内容)で報知を行う。この演出画像YH22は、「もうすぐリーチかも?」などのリーチが近いことを示唆する文字列を示している。有効検出期間内に操作ボタンに対する指示操作がなされなかった場合は、図67(E)に示すように、図66(E)と同様の演出動作制御が行われればよい。その後の表示動作は、図67(F)に示すように、図66(F)と同様に制御されればよい。
図68は、図63のステップS709にて予告演出YD3に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、図68(A)〜(C)に示すように、図66(A)〜(C)などと同様の表示動作が行われる。その後、遊技者が有効検出期間内に操作ボタンに対する指示操作を行った場合には、例えば図68(D)に示すように、図66(D)に示す演出画像YH21や図67(D)に示す演出画像YH22とは異なる演出画像YH23を表示させることなどにより、予告演出YD1や予告演出YD2の場合とは異なる演出態様(演出内容)で報知を行う。この演出画像YH23は、「次回スーパーリーチになりそう」などのスーパーリーチの発生がさらに近いことを示唆する文字列を示している。有効検出期間内に操作ボタンに対する指示操作がなされなかった場合は、図68(E)に示すように、図66(E)などと同様の演出動作制御が行われればよい。その後の表示動作は、図68(F)に示すように、図66(F)などと同様に制御されればよい。
図66〜図68に示す表示動作例では、予告演出YD1〜予告演出YD3に対応した連続予告演出として、操作ボタンに対する指示操作が行われた場合に所定のメッセージを報知する予告演出が実行される。しかしながら、この発明はこれに限定されず、任意の演出態様(演出内容)で特図表示結果が「大当り」となる可能性を報知する連続予告演出が実行されるものであればよい。一例として、操作ボタンに対する指示操作を必要とせずに所定のメッセージを報知する予告演出が、予告演出YD1〜予告演出YD3に対応した連続予告演出として実行されてもよい。他の一例として、始動入賞記憶表示エリア5Hにおける保留記憶の表示態様(例えば表示色や表示形状、キャラクタなど)を変化させることにより、複数回の可変表示にわたる連続予告演出として実行されてもよい。
図49及び図50に示す例では、変動パターン種別決定用の乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定され、ステップS528〜S530の処理などにより、特定パターン共通範囲内であるか否かを示す第1始動口入賞指定コマンドが送信され、ステップS534〜S536の処理などにより、特定パターン共通範囲内であるか否かを示す第2始動口入賞指定コマンドが送信される。これに対して、特定の変動パターン(例えばスーパーリーチを伴う変動パターン)となるか否かを判定するための閾値を複数種類設けて、いずれの閾値を用いて特定の変動パターンとなるか否かが判定されたかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるようにしてもよい。
一例として、図49に示すステップS525やステップS531にて乱数値MR1が大当り判定範囲内であると判定されたときにも、変動パターン種別決定用の乱数値MR3を用いて、特定の変動パターンに決定されるか否かの判定を行うようにしてもよい。この場合には、ステップS525やステップS531にて乱数値MR1が大当り判定範囲内であると判定されたときに、大当り種別決定用の乱数値MR2に基づき大当り種別決定テーブル131を参照することなどにより、大当り種別が「非確変」又は「確変」に決定されるか否かを判定する。そして、大当り種別が「非確変」又は「確変」に決定されるときには、変動パターン種別決定用の乱数値MR3を用いて、例えばスーパーリーチを伴う変動パターンが含まれる変動パターン種別CA3−3(図26を参照)に決定されるか否かを判定する。図29(A)に示す大当り変動パターン種別決定テーブル133Aの設定例では、大当り種別が「非確変」又は「確変」の場合に、変動パターン種別CA3−3に対応した決定値の少なくとも一部に設定された同一決定値「100」〜「251」のいずれかと乱数値MR3が合致するか否かを判定することによって、スーパーリーチを伴う変動パターンに決定されるか否かを判定することができる。そこで、大当り種別が「非確変」又は「確変」に決定されるときには、可変表示結果が「ハズレ」となる場合とは異なる同一決定値「100」〜「251」のいずれかと乱数値MR3が合致するか否かを判定して、特定パターン共通範囲の範囲内であるか否かを判定する。そして、特定パターン共通範囲内であると判定されたときには、ステップS529やステップS535にて設定される第1始動口入賞指定コマンドや第2始動口入賞指定コマンドとはEXTデータが異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドの送信設定を行うようにすればよい。
なお、可変表示結果が「大当り」で大当り種別が「非確変」又は「確変」に決定される場合と可変表示結果が「ハズレ」に決定される場合とで、特定パターン共通範囲を画する閾値を異ならせるものに限定されず、例えば可変表示結果が「ハズレ」となる場合でも、特図保留記憶数(合計保留記憶数など)や遊技状態に応じて、特定パターン共通範囲を画する閾値を異ならせるようにしてもよい。こうした場合でも、いずれの閾値を用いて特定の変動パターンとなるか否かが判定されたかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるように設定すればよい。
図49に示す入賞時乱数値判定処理を実行することなどにより、入賞時当り判定や特定パターン共通範囲内などを通知する第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが主基板11から演出制御基板12に対して送信される。これに対して、変動パターン種別決定用の乱数値MR3がとり得る値の範囲(具体的には、「0」〜「251」の範囲)を、予め複数の抽出値範囲に分割しておき、図48に示すステップS508の処理で抽出された乱数値MR3がいずれの抽出値範囲に含まれるかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるようにしてもよい。一例として、「0」〜「251」の範囲のうち、「230」〜「251」の範囲を第1抽出値範囲とし、「225」〜「229」の範囲を第2抽出値範囲とし、「220」〜「224」の範囲を第3抽出値範囲とする。この場合、例えば図49に示すステップS528やステップS534の処理などでは、変動パターン種別決定用の乱数値がいずれの抽出値範囲に含まれるかの判定を行う。そして、抽出値範囲の判定結果に応じて、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドにおけるEXTデータの設定を異ならせるようにすればよい。演出制御基板12の側では、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドのEXTデータから特定される抽出値範囲などに応じて、特定の変動パターンとなるか否かの判定などが行われるようにすればよい。
図46のステップS140では、図51に示すような特別図柄通常処理が実行されることにより、ステップS221にて第2保留記憶カウント値が「0」であると判定されたときに(ステップS221;Yes)、ステップS223にて第1保留記憶カウント値が「0」であるか否かの判定が行われる。したがって、第2特図を用いた特図ゲームは、第1特図を用いた特図ゲームよりも優先して実行されることになる。加えて、特図表示結果が「大当り」となったことに基づく大当り遊技状態が終了するときには、図54のステップS303にて大当り種別が「非確変」であると判定されたことに基づいて、ステップS304にて遊技状態を時短状態とする制御を開始するための設定が行われ、時短フラグがオン状態にセットされる。また、ステップS303にて大当り種別が「確変」又は「突確」であると判定された場合には、ステップS305にて遊技状態を確変状態とする制御を開始するための設定が行われ、時短フラグがオン状態にセットされることがある。こうして時短フラグがオン状態となることにより、時短状態や確変状態における時間短縮制御とともに高開放制御が開始されると、例えば普図ゲームにおける普図変動時間が短い時間に設定されることや、普図表示結果を「普図当り」とする決定がなされる割合が高くなること、普図表示結果を「普図当り」とする場合に普通可変入賞球装置6B(第2始動入賞口)を開放状態とする開放時間や開放回数が増加すること、あるいは、これらの一部又は全部を組み合わせることにより、遊技球が普通可変入賞球装置6B(第2始動入賞口)を通過(進入)しやすくなる。そして、図49のステップS523にて時短制御中であると判定されたときには(ステップS523;Yes)、ステップS524にて大当り中・時短中入賞を通知する第1始動口入賞指定コマンドを送信するための設定が行われ、例えばステップS525における乱数値MR1に基づく判定などの実行を制限する。
時短状態や確変状態において高開放制御が行われているときには、普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)しやすくなっており、第1特図を用いた特図ゲームの保留記憶情報に基づいて連続予告演出の実行を開始すると、第2始動入賞口に遊技球を通過(進入)させて優先的に実行される第2特図を用いた特図ゲームを実行し続けることで、可変表示結果が「大当り」となる保留記憶情報を保持した状態で多数回の可変表示を継続して実行することができる。この場合、連続予告演出は、可変表示結果が「大当り」となる保留記憶情報が保持されている状態を報知する演出となり、第2特図を用いた特図ゲームを実行することで可変表示結果が「大当り」となり、大当り遊技状態へと繰り返し制御されることになってパチンコ遊技機1の射幸性が著しく高められるおそれがある。また、遊技者が第1特図を用いた特図ゲームで可変表示結果が「大当り」となることを認識しながら、第2始動入賞口に遊技球を繰り返し通過(進入)させて第2特図を用いた特図ゲームを繰り返し実行するか、第2始動入賞口に遊技球を通過(進入)させずに第1特図を用いた特図ゲームを実行するかにより、可変表示結果が「大当り」となり大当り遊技状態へと制御されるタイミングを、遊技者の技量によって大きく変化させられるおそれがある。そこで、時短制御中であるときには、第1始動入賞口を通過(進入)した遊技球の検出に基づく連続予告演出の実行が開始されないように設定して、第1特図を用いた特図ゲームで可変表示結果が「大当り」となる可能性があることを遊技者が認識できないようにして、健全な遊技性を確保することができる。
遊技制御用マイクロコンピュータ100では、例えばCPU505が図48のステップS506にて乱数回路509の乱数値レジスタR1Dや乱数値レジスタR2Dから読み出した数値データに基づく特図表示結果決定用の乱数値MR1を示す数値データを用いて、図51のステップS228にて特図表示結果を「大当り」、「小当り」、「ハズレ」のいずれかに決定する。乱数回路509では、例えば乱数生成回路553から出力されたカウント値順列RCNを、乱数列変更設定回路556の設定により予め定められた乱数更新規則に基づいて乱数列変更回路555が変更することで、数値データを所定手順により更新した乱数列RSNが出力される。そして、入力ポートP0に入力された第1始動口スイッチ22Aからの第1始動入賞信号SS1がオン状態となったことに基づき、乱数値レジスタR1Dに乱数列RSNを構成する数値データが乱数値として取り込まれて格納される。また、入力ポートP1に入力された第2始動口スイッチ22Bからの第2始動入賞信号SS2がオン状態となったことに基づき、乱数値レジスタR2Dに乱数列RSNを構成する数値データが乱数値として取り込まれて格納される。
図69は、乱数回路509の動作を説明するためのタイミングチャートである。また、図69(A)では、主基板11に搭載された制御用クロック生成回路111により生成される制御用クロックCCLKを示している。図69(B)では、乱数用クロック生成回路112により生成される乱数用クロックRCLKを示している。なお、図69に示す各種信号は、ハイレベルでオフ状態となりローレベルでオン状態となる負論理の信号であるものとしている。図69(A)及び(B)に示すように、制御用クロックCCLKの発振周波数と、乱数用クロックRCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。
図69(B)に示すように、乱数用クロックRCLKは、タイミングT10、T11、T12、…においてハイレベルからローレベルに立ち下がる。そして、乱数用クロックRCLKは、遊技制御用マイクロコンピュータ100の乱数用外部クロック端子ERCに供給され、図14に示す乱数回路509が備えるクロック用フリップフロップ552におけるクロック端子CKに入力される。クロック用フリップフロップ552は、逆相出力端子(反転出力端子)QバーからD入力端子へとフィードバックされるラッチ用クロックRC0を、クロック端子CKに入力される乱数用クロックRCLKの立ち下がりエッジに応答して取り込み(ラッチして)、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKとして出力する。これにより、乱数更新クロックRGKは、図69(C)に示すように、タイミングT10、T12、T14、…において、ハイレベルからローレベルへと立ち下がり、乱数用クロックRCLKの発振周波数の1/2の発振周波数を有する信号となる。例えば、乱数用クロックRCLKの発振周波数が20MHzであれば、乱数更新クロックRGKの発振周波数は10MHzとなる。そして、乱数用クロックRCLKの発信周波数は制御用クロックCCLKの発振周波数の整数倍にも整数分の1にもならないことから、乱数更新クロックRGKの発振周波数は、制御用クロックCCLKの発振周波数とは異なる周波数となる。乱数生成回路553は、例えば乱数更新クロックRGKの立ち下がりエッジに応答して、カウント値順列RCNにおける数値データを更新する。乱数列変更回路555は、乱数列変更設定回路556による乱数更新規則の設定に基づき、乱数生成回路553から出力されたカウント値順列RCNにおける数値データの更新順を変更したものを、乱数列RSNとして出力する。こうして、乱数列RSNにおける数値データは、例えば図69(D)に示すように、乱数更新クロックRGKの立ち下がりエッジなどに応答して更新される。
このように、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数と、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数とは、互いに異なっており、また、一方の発振周波数が他方の発振周波数の整数倍となることもない。そのため、乱数回路509のクロック用フリップフロップ552により生成される乱数更新クロックRGKやラッチ用クロックRC0の発振周波数は、乱数用クロックRCLKの発振周波数の1/2となるが、制御用クロックCCLKの発振周波数や、制御用クロックCCLKの発振周波数の1/2となる内部システムクロックSCLKの発振周波数とは、異なるものとなる。こうして、制御用クロックCCLKや内部システムクロックSCLKと、乱数更新クロックRGKとに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数生成回路553や乱数列変更回路555により生成される乱数列RSNにおける数値データの更新タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの更新動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。
クロック用フリップフロップ552から出力されるラッチ用クロックRC0は、乱数更新クロックRGKの反転信号となり、その発振周波数は乱数更新クロックRGKの発振周波数と同一で、その位相は乱数更新クロックRGKの位相とπ(=180°)だけ異なる。ラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、例えば図69(E)に示すように、各ラッチ用クロックRC0、RC1、RC2はいずれも、共通の周期で信号状態が変化する発振信号となる。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力される。ラッチ用クロックRC2は、ラッチ用フリップフロップ557Bのクロック端子CKに入力される。
こうして、ラッチ用クロックRC0を分岐することにより生成されるラッチ用クロックRC1、RC2の発振周波数は、制御用クロックCCLKや内部システムクロックSCLKの発振周波数とは、異なるものとなる。したがって、制御用クロックCCLKや内部システムクロックSCLKと、ラッチ用クロックRC1、RC2とに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数値となる数値データが取り込まれる動作タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの取込動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。
ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち下がりエッジに応答して、第1始動口スイッチ22Aから伝送されて入力ポートP0に供給された第1始動入賞信号SS1を取り込み(ラッチして)、始動入賞時ラッチ信号SL1として出力端子Qから出力する。そして、乱数ラッチセレクタ558Aにおける取込方法が入力ポートP0への信号入力に指定されていれば、始動入賞時ラッチ信号SL1が乱数ラッチ信号LL1として出力される。これにより、例えば図69(F)に示すようなタイミングでオフ状態(ハイレベル)とオン状態(ローレベル)とで信号状態が変化する第1始動入賞信号SS1は、ラッチ用クロックRC1が立ち下がるタイミングT11、T13、T15、…にてラッチ用フリップフロップ557Aに取り込まれた後、図69(G)に示すようなタイミングT11、T13で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号LL1となって、乱数ラッチセレクタ558Aから出力される。ここで、第1始動口スイッチ22Aから伝送される第1始動入賞信号SS1は、普通入賞球装置6Aが形成する第1始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ557Aから乱数ラッチセレクタ558Aを介して出力された乱数ラッチ信号LL1は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに供給されて、乱数列変更回路555から出力された乱数列RSNにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ557A及び乱数ラッチセレクタ558Aでは、第1始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックRC1を用いて、乱数値となる数値データを取得するための乱数ラッチ信号LL1が、第2始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
ラッチ用フリップフロップ557Bは、ラッチ用クロックRC2の立ち下がりエッジに応答して、第2始動口スイッチ22Bから伝送されて入力ポートP1に供給された第2始動入賞信号SS2を取り込み(ラッチして)、始動入賞時ラッチ信号SL2として出力端子Qから出力する。そして、乱数ラッチセレクタ558Bにおける取込方法が入力ポートP1への信号入力に指定されていれば、始動入賞時ラッチ信号SL2が乱数ラッチ信号LL2として出力される。これにより、例えば図69(I)に示すようなタイミングでオフ状態(ハイレベル)とオン状態(ローレベル)とで信号状態が変化する第2始動入賞信号SS2は、ラッチ用クロックRC2が立ち下がるタイミングT11、T13、T15、…にてラッチ用フリップフロップ557Bに取り込まれた後、図69(J)に示すようなタイミングT13、T15で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号LL2となって、乱数ラッチセレクタ558Bから出力される。ここで、第2始動口スイッチ22Bから伝送される第2始動入賞信号SS2は、普通可変入賞球装置6Bが形成する第2始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ557Bから乱数ラッチセレクタ558Bを介して出力された乱数ラッチ信号LL2は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに供給されて、乱数列変更回路555から出力された乱数列RSNにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ557B及び乱数ラッチセレクタ558Bでは、第2始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックRC2を用いて、乱数値となる数値データを取得するための乱数ラッチ信号LL2が、第1始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
このように、ラッチ用フリップフロップ557Aとラッチ用フリップフロップ557Bはそれぞれ、互いに共通のクロック用フリップフロップ552にて生成されたラッチ用クロックRC0を分岐点BR1で分岐したことにより、互いに共通の周期で信号状態が変化するラッチ用クロックRC1、RC2を用いて、乱数値となる数値データを取得するための始動入賞時ラッチ信号SL1や始動入賞時ラッチ信号SL2を生成する。これにより、乱数回路509における回路構成の簡素化や、パチンコ遊技機1における製造コストの削減を図ることができる。
乱数値レジスタR1Dとなる乱数値レジスタ559Aは、乱数列変更回路555から出力される乱数列RSNにおける数値データを、乱数ラッチセレクタ558Aからクロック端子へと入力される乱数ラッチ信号LL1の立ち下がりエッジに応答して取り込み(ラッチして)、記憶データとなる数値データを更新する。乱数値レジスタR2Dとなる乱数値レジスタ559Bは、乱数列変更回路555から出力される乱数列RSNにおける数値データを、乱数ラッチセレクタ558Bからクロック端子へと入力される乱数ラッチ信号LL2の立ち下がりエッジに応答して取り込み(ラッチして)、記憶データとなる数値データを更新する。
例えば図69(G)に示すように、タイミングT11にて乱数ラッチ信号LL1がオフ状態からオン状態に変化する立ち下がりエッジが生じた場合には、このタイミングT11にて乱数列変更回路555から出力されている乱数列RSNにおける数値データが、図69(H)に示すように、乱数値レジスタR1Dに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタR1Dとなる乱数値レジスタ559Aでは、第1始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第2始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
また、例えば図69(J)に示すように、タイミングT13にて乱数ラッチ信号LL2がオフ状態からオン状態に変化する立ち下がりエッジが生じた場合には、このタイミングT13にて乱数列変更回路555から出力されている乱数列RSNにおける数値データが、図69(K)に示すように、乱数値レジスタR2Dに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタR2Dとなる乱数値レジスタ559Bは、第2始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第1始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
こうして、乱数値レジスタ559Aは、ラッチ用フリップフロップ557Aがラッチ用クロックRC1を用いて生成した始動入賞時ラッチ信号SL1や乱数ラッチセレクタ558Aから出力された乱数ラッチ信号LL1の立ち下がりエッジに応答して、乱数値RSNにおける数値データを格納する。また、乱数値レジスタ559Bは、ラッチ用フリップフロップ557Bがラッチ用クロックRC2を用いて生成した始動入賞時ラッチ信号SL2や乱数ラッチセレクタ558Bから出力された乱数ラッチ信号LL2の立ち下がりエッジに応答して、乱数列RSNにおける数値データを格納する。
このように、乱数回路509では、クロック用フリップフロップ552や乱数生成回路553、乱数列変更回路555などが、第1始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ557Aや乱数ラッチセレクタ558A、乱数値レジスタ559Aの組合せと、第2始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ557Bや乱数ラッチセレクタ558B、乱数値レジスタ559Bの組合せとに対して、共通化されている。したがって、クロック用フリップフロップ552から出力されて乱数生成回路553に供給されてカウント値順列RCNにおける数値データや乱数列RSNにおける数値データの更新に用いられる乱数更新クロックRGKは、第1始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成と、第2始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成とについて、共通の乱数更新用クロック信号となる。これにより、乱数回路509における回路構成を簡素化することができ、パチンコ遊技機1の製造コストを削減することができる。
図21(A)に示す乱数ラッチフラグレジスタRDFMでは、乱数値レジスタR1Dとなる乱数値レジスタ559Aにおける数値データの取込動作や読出動作、また、乱数値レジスタR2Dとなる乱数値レジスタ559Bにおける数値データの取込動作や読出動作に応答して、対応するビット値が“0”と“1”とに変化する。図70は、乱数ラッチフラグレジスタRDFMのビット番号[0]及び[1]に格納される乱数ラッチフラグデータRDFM0及び乱数ラッチフラグデータRDFM1の変化を説明するためのタイミングチャートである。
図70(A)に示すように、乱数ラッチ信号LL1や乱数ラッチ信号LL2が立ち下がるタイミングT20にて、図70(B)に示すように乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが取り込まれて格納されたことに対応して、図70(C)に示すように乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化する。例えば、タイミングT20にて乱数ラッチ信号LL1がオン状態(ローレベル)となったことに応答して乱数値レジスタR1Dに数値データが格納されたときには、乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化することにより、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態となる。また、タイミングT20にて乱数ラッチ信号LL2がオン状態(ローレベル)となったことに応答して乱数値レジスタR2Dに数値データが格納されたときには、乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化することにより、乱数値レジスタR2Dに対応する乱数ラッチフラグがオン状態となる。
こうして乱数ラッチフラグがオン状態となったときには、対応する乱数値レジスタR1Dや乱数値レジスタR2Dへの新たな数値データの格納が制限される。例えば、乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化したときには、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態となり、乱数値レジスタR1Dへの新たな数値データの格納が制限される。また、乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化したときには、乱数値レジスタR2Dに対応する乱数ラッチフラグがオン状態となり、乱数値レジスタR2Dへの新たな数値データの格納が制限される。したがって、対応する乱数ラッチフラグがオン状態である乱数値レジスタR1D及び/又は乱数値レジスタR2Dには、第1始動入賞信号SS1及び/又は第2始動入賞信号SS2の入力に対応して数値データを取り込むための乱数ラッチ信号LL1及び/又は乱数ラッチ信号LL2が入力されたときでも、乱数列RSNに含まれる新たな数値データの格納を行うことができない。
これにより、乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが一旦格納された後、その数値データがCPU505などから読み出されるよりも前に、例えば第1始動入賞信号SS1や第2始動入賞信号SS2がノイズ等により誤ってオン状態となったときでも、既に格納されている数値データが更新されてしまい不正確な乱数値の読み出しを防止することができる。また、乱数値取込指定データRDLT0や乱数値取込指定データRDLT1のビット値を外部から意図的に“1”に設定すること、あるいは、第1始動入賞信号SS1や第2始動入賞信号SS2を外部から意図的にオン状態とすることなどにより、既に格納されている数値データを改変するといった不正行為を防止することもできる。その一方で、乱数値レジスタR1Dや乱数値レジスタR2Dに一旦格納された数値データが長時間にわたりCPU505などから読み出されなくなると、その後に第1始動入賞信号SS1や第2始動入賞信号SS2が正常にオン状態となったときに、第1始動入賞口や第2始動入賞口における遊技球の通過(進入)に対応した正確な数値データを乱数値レジスタR1Dや乱数値レジスタR2Dに格納することができなくなる。
そこで、例えば遊技制御用マイクロコンピュータ100のCPU505は、予め定められた乱数値読出条件が成立したときに、図70(D)に示すような所定の乱数値レジスタ読出処理を実行する。そして、乱数値レジスタR1Dや乱数値レジスタR2Dの読み出しを行って乱数ラッチフラグをオフ状態とすることにより、新たな数値データの格納が許可された状態に設定する。乱数値読出条件としては、CPU505がパチンコ遊技機1における遊技制御の実行を開始することや、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときに特図ゲームの保留記憶数が所定の上限値に達していること、普通可変入賞球装置6B(第2始動入賞口)を通過(進入)した遊技球の検出に基づく第2始動条件の成立を無効とする場合にスイッチオンバッファのビット番号[1]をクリアしてビット値を「0」にすること、あるいは、これらの一部もしくは全部を含むものであればよい。図70に示す動作例では、タイミングT25にて図70(B)に示す乱数値レジスタ読出処理が完了したことに対応して、図70(C)に示すように乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値が“1”から“0”へと更新されて、対応する乱数ラッチフラグがオフ状態に設定される。
一例として、CPU505は、パチンコ遊技機1における電源供給の開始に基づいて遊技制御用マイクロコンピュータ100のシステムリセットが解除されたときに、所定のセキュリティチェック処理などを実行してから、ROM506からユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの読み出しなどを行い遊技制御の実行を開始する。このとき、CPU505は、乱数値レジスタ読出処理として図39に示すステップS56の処理を実行することにより、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態とする。なお、図39に示すステップS56の処理において、CPU505は、乱数ラッチフラグデータRDFM1と乱数ラッチフラグデータRDFM0のビット値をチェックした結果などに基づいて、乱数ラッチフラグがオン状態となっている乱数値レジスタの読み出しのみを行うようにしてもよい。あるいは、乱数ラッチフラグがオン状態であるか否かにかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの双方から数値データを読み出すことにより、各乱数ラッチフラグをオフ状態としてもよい。
パチンコ遊技機1の電源投入時などには、例えば図4(B)及び(C)に示す電源電圧VSL及び電源電圧VCCのように、各種の電源電圧が徐々に規定値まで上昇していく。こうした電源電圧の上昇中には、例えば遊技制御用マイクロコンピュータ100の内蔵回路といった、各種回路の一部分が正常に動作する一方で、他の部分は未だ正常には動作できない状態となることがある。一例として、電源電圧が不安定な状態では、第1始動入賞信号SS1や第2始動入賞信号SS2が誤ってオン状態となることなどにより、乱数回路509において乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態になって新たな数値データの格納が制限されてしまう可能性がある。また、CPU505などによる遊技制御の実行が開始された後、図41に示すステップS92のスイッチ処理が実行されるより前に、所定タイミングで乱数ラッチ信号LL1や乱数ラッチ信号LL2を乱数値レジスタR1Dや乱数値レジスタR2Dに入力することで、特図表示結果を「大当り」とする特図表示結果決定用の乱数値MR1を示す数値データを取得して大当り遊技状態に制御させる不正行為がなされる可能性がある。このように、乱数ラッチフラグがオン状態になると新たな数値データの格納が制限されるようにした場合には、第1始動入賞口や第2始動入賞口といった始動入賞口を遊技球が通過(進入)する始動入賞の発生後にノイズ等により誤った数値データが乱数値レジスタR1Dや乱数値レジスタR2Dに取り込まれて格納されることを防止できる一方で、始動入賞の発生前に電源電圧の不安定による誤動作や不正行為などにより数値データが乱数値レジスタR1Dや乱数値レジスタR2Dに取り込まれて格納された場合、その後に始動入賞が発生しても、この始動入賞の発生タイミングよりも前に既に格納されている数値データが乱数値として取得されて特図表示結果の決定などに用いられる可能性がある。
そこで、遊技制御用マイクロコンピュータ100におけるシステムリセットが解除されて遊技制御が開始されるときには、乱数ラッチフラグをオフ状態に設定して、新たな数値データの格納が許可された状態とする。これにより、例えばパチンコ遊技機1における電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データが乱数値として取得されてしまい、遊技制御における各種の決定などに使用されてしまうことを防止できる。また、遊技制御の実行が開始された後、第1始動口スイッチ22Aや第2始動口スイッチ22Bの状態がチェックされるより前に乱数ラッチ信号を入力して大当り遊技状態に制御させる不正行為を防止することができる。
他の一例として、例えば電源電圧VSLといった、パチンコ遊技機1における所定電源電圧が低下したことに基づいて、電源基板10に搭載された電源監視回路303からオン状態の電源断信号が出力される。CPU505は、図42のステップS111にてオン状態の電源断信号が出力され(ステップS111;Yes)、さらに、ステップS114にてバックアップ監視タイマ値がバックアップ判定値に達した後に、ステップS115〜ステップS118の処理を実行して電源電圧の低下によるパチンコ遊技機1の動作不安定あるいは動作停止に備えるとともに、遊技制御用マイクロコンピュータ100が動作停止状態となるまでステップS119の処理を繰り返し実行することにより、電源断信号の入力状態を繰り返し判定する。その後、ステップS119の処理を実行中に電源断信号がオフ状態となり入力されていない旨の判定がなされたときに、CPU505は、ステップS124の処理を実行してから電源断処理を終了するとともに遊技制御用タイマ割込み処理から復帰(リターン)させることにより、ROM506に記憶されているユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの先頭から、遊技制御の実行を開始させる。ここで、ステップS119の処理により電源断信号がオフ状態となり入力されていない旨の判定がなされた後、電源断処理を終了して制御コードの先頭から遊技制御の実行を開始させるより前に、乱数値レジスタ読出処理としてステップS120〜ステップS123の処理を実行することにより、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態に設定する。
図71は、遊技制御の実行中に電源電圧VSLが低下した場合の動作例を示すタイミングチャートである。始めに、例えばパチンコ遊技機1への電源供給が開始されたことなどに基づき、図71(A)に示す電源電圧VSLが所定値VSL1に達するタイミングT31よりも前のタイミングT30にて、図71(B)に示す電源電圧VCCが所定値VCC1に達する。このタイミングT30では、図71(C)に示すリセット信号がオン状態からオフ状態となる。続いて、タイミングT31にて電源電圧VSLが所定値VSL1に達したときに、図71(D)に示す電源断信号がオン状態からオフ状態となる。その後、例えばタイミングT32にて、乱数値レジスタR1Dに乱数値となる数値データが取り込まれて格納されたことに対応して、図71(E)に示す乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化することにより、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態になるものとする。
こうしてタイミングT32にて乱数値レジスタR1Dに数値データが格納された後、その数値データがCPU505などにより読み出されるよりも前のタイミングT33にて、図71(A)に示す電源電圧VSLが所定値VSL1より低下したとする。このとき、図71(D)に示す電源断信号がオン状態であると判定されたことなどに基づいて(図42のステップS111;Yes)、ステップS119にて電源断信号がオン状態であるか否かが繰り返し判定される。その後、例えばタイミングT34にて、図71(A)に示す電源電圧VSLが所定値VSL1に復帰したときには、図42に示すステップS119にて電源断信号がオフ状態であり入力されていないと判定される(ステップS119;No)。また、図42に示すステップS120にて乱数ラッチフラグデータRDFM0のビット値が“1”であり乱数ラッチフラグがオン状態であると判定されたことに基づいて、ステップS121の処理が実行される。そして、乱数値レジスタR1Dに格納された数値データが読み出され、乱数ラッチフラグデータRDFM0のビット値が“1”から“0”へと更新されて、乱数値レジスタR1Dに対応する乱数ラッチフラグがオフ状態に設定される。その後、電源断処理が終了するときには、例えば図42に示すステップS124にて設定された電源断復旧時ベクタテーブルでの指定内容などに基づいて、ROM506に記憶されているユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの先頭から遊技制御の実行を開始することで、図38に示すような遊技制御メイン処理が最初から実行される。
なお、乱数回路509において、第1始動入賞信号SS1や第2始動入賞信号SS2の立ち上がりエッジに応答して乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納される場合には、例えば図42に示すステップS119の処理を繰り返し実行している期間などに、スイッチ作動用の電源電圧VDDが所定のスイッチ電圧以下に低下した後に正常電圧値に復旧すると、その正常電圧値への復旧中に第1始動入賞信号SS1や第2始動入賞信号SS2の立ち上がりエッジが生じて乱数値レジスタR1Dや乱数値レジスタR2Dの全部に数値データが取り込まれて格納され、各乱数ラッチフラグがオン状態になることがある。このような乱数ラッチフラグのオン状態を放置すると、電源電圧の復旧後に第1始動入賞口や第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときには、乱数ラッチフラグがオン状態であることから新たな数値データの格納が制限され、電源電圧の復旧中などに取り込まれた数値データに基づいて特図表示結果の決定などが行われてしまい、始動入賞の発生タイミングとは全く異なるタイミングで取り込まれた数値データを用いた決定が行われてしまうという問題が生じる。そこで、遊技制御用マイクロコンピュータ100のCPU505は、図39に示すステップS56や図42に示すステップS121及び/又はステップS123にて乱数値レジスタR1Dや乱数値レジスタR2Dの読み出しを行い、対応する乱数ラッチフラグをオフ状態にしてから遊技制御の実行を開始(再開)させることで、上記の問題を解決することができる。
乱数値読出条件の他の一例として、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときに特図ゲームの保留記憶数が所定の上限値に達している場合がある。ここで、例えば図47に示すステップS203にて第1始動口スイッチ22Aがオン状態であると判定された後、図48に示すステップS502にて第1保留記憶カウンタの読出値が所定の上限値(例えば「4」)以上であると判定された場合には、第1特図保留記憶部591Aにて全てのエントリ(例えば保留番号が「1」〜「4」に対応するエントリ)に保留データが記憶されており、第1特図保留記憶部591Aにおける保留データの記憶数が上限記憶数に達しているために、新たな保留データを第1特図保留記憶部591Aに記憶させることができない。また、例えば図47に示すステップS208にて第2始動口スイッチ22Bがオン状態であると判定された後、図48に示すステップS502にて第2保留記憶カウンタの読出値が所定の上限値以上であると判定された場合には、第2特図保留記憶部591Bにて全てのエントリに保留データが記憶されており、第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達しているために、新たな保留データを第2特図保留記憶部591Bに記憶させることができない。こうした場合には、一般に、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したことに基づく特図ゲームの始動条件を成立させずに無効なものとし、賞球の払出しのみが行われる。
そのため、乱数回路509により生成される乱数値となる数値データを読み出さないようにすることも考えられる。しかしながら、乱数回路509では、保留データの記憶数にかかわらず、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されたことに応答して、乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態となる。そうすると、次に第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときには、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されても、乱数値レジスタR1Dや乱数値レジスタR2Dにおける新たな数値データの格納が制限されるために、始動入賞の発生に対応した正確な乱数値を取得することができなくなる。
これに対して、遊技制御用マイクロコンピュータ100のCPU505は、図48に示すステップS502にて保留記憶カウンタの読出値が所定の上限値以上であると判定したときに(ステップS502;Yes)、ステップS510の処理を実行して、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出すことで、対応する乱数ラッチフラグをオフ状態としてから、乱数値取得処理を終了する。なお、ステップS510の処理では、図47のステップS202にて第1始動口入賞テーブル136Aがセットされた場合に乱数値レジスタR1Dの読み出しを行う一方、図47のステップS207にて第2始動口入賞テーブル136Bがセットされた場合に乱数値レジスタR2Dの読み出しを行うようにする。こうして、例えば第1特別図柄表示装置4Aや第2特別図柄表示装置4Bといった、特別図柄を可変表示する表示装置が複数設けられている場合において、特図ゲームの保留記憶数が上限値に達している特別図柄と対応付けられた始動入賞口を通過(進入)した遊技球が検出されたときに、その始動入賞口と対応付けられた乱数値レジスタから数値データを読み出して新たな数値データの格納を許可する一方で、その始動入賞口と対応付けられていない乱数値レジスタからは数値データを読み出さないようにする。これにより、複数の始動入賞口のうち、いずれかを遊技球が通過(進入)したときに、他の始動入賞口に対応して乱数値となる数値データを更新や取得する動作に影響が及ばないようにすることができる。
乱数値読出条件の他の一例として、普通可変入賞球装置6B(第2始動入賞口)を通過(進入)した遊技球の検出に基づく第2始動条件の成立を異常入賞の発生に対応して無効とし、スイッチオンバッファのビット番号[1]をクリアしてビット値を「0」にする場合がある。ここで、例えば図44に示すステップSA25にて第2始動口スイッチ22Bがオン状態であると判定された後、ステップSA26における第2始動口異常入賞フラグがオンである旨の判定(ステップSA26;Yes)や、ステップSA29における時短フラグがオフである旨の判定(ステップSA29;No)がなされた場合には、ステップSA30にてスイッチオンバッファのビット番号[1]がクリアされてビット値が「0」となる。これにより、普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)したことに基づく特図ゲームの始動条件などを成立させずに無効なものとし、賞球の払出しも行われないようにする。
このとき、乱数回路509により生成される乱数値となる数値データを読み出さないようにすることも考えられる。しかしながら、乱数回路509では、CPU505での異常入賞に基づく無効判定にかかわらず、第2始動入賞信号SS2がオン状態となって入力されたことに応答して、乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態となる。そうすると、次に第2始動入賞口を遊技球が通過(進入)したときには、第2始動入賞信号SS2がオン状態となって入力されても、乱数値レジスタR2Dにおける新たな数値データの格納が制限されるために、始動入賞の発生に対応した正確な乱数値を取得することができなくなる。
これに対して、遊技制御用マイクロコンピュータ100のCPU505は、図44に示すステップSA30にてスイッチオンバッファのビット番号[1]をクリアするときに、ステップSA31の処理を実行して、乱数値レジスタR2Dに格納された数値データを読み出すことで、対応する乱数ラッチフラグをオフ状態としてから、第2始動口異常入賞無効処理を終了する。これにより、普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)したことに基づく第2始動条件の成立が異常入賞によるものとして無効とされたときに、乱数値レジスタR2Dの読み出しを行い、対応する乱数ラッチフラグをオフ状態にすることで、以後に発生する始動入賞に対応した正確な乱数値の取得が可能になる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときには、CPU505が図47に示すステップS204やステップS209にて、遊技球が通過(進入)した始動入賞口にかかわらず共通の乱数値取得処理を実行する。そして、例えば図48に示すステップS501〜ステップS510の処理といった、遊技球が通過した始動入賞口にかかわらず共通の処理ルーチンにおいて、特にステップS505及びステップS506の処理を実行することなどにより、乱数回路509が備える乱数値レジスタR1D及び乱数値レジスタR2Dのうち、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタから、乱数値となる数値データを読み出す。こうした共通の処理ルーチンにより乱数値となる数値データを読出可能にすることで、例えば第1始動入賞口や第2始動入賞口といった、複数の始動入賞口を設けたパチンコ遊技機1において、乱数値となる数値データを取得するためのプログラム量が過剰に増大することを防止できる。
主基板11では、電源基板10からの初期電力供給時(バックアップ電源のない電源投入時)や、システムリセットの発生後における再起動時などに、CPU505がROM506などに記憶されているセキュリティチェックプログラム506Aを読み出して実行することにより、遊技制御用マイクロコンピュータ100がセキュリティモードとなる。このときには、セキュリティチェックプログラム506Aに対応した処理として、例えば図37に示すようなセキュリティチェック処理が実行される。ここで、遊技制御用マイクロコンピュータ100がセキュリティモードとなるセキュリティ時間は、ROM506のプログラム管理エリアに記憶されているセキュリティ時間設定KSESのビット番号[2−0]やビット番号[4−3]に予め格納されたビット値に応じて、一定の固定時間とは異なる時間成分を含むことができる。
例えば、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であれば(図37に示すステップS2;No)、図11(D)に示すような設定内容に対応して、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる(ステップS4)。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値であれば(ステップS6;No)、図11(C)に示すようなショートモード又はロングモードに対応して、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる(ステップS8)。
こうして設定されたセキュリティ時間が経過するまでは(ステップS14;No)、ROM506に記憶されているユーザプログラムによる遊技制御メイン処理の実行が開始されない。そして、乱数回路509による乱数値となる数値データの生成動作も、遊技制御用マイクロコンピュータ100がセキュリティモード中である期間では、開始されないようにすればよい。これにより、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
一例として、パチンコ遊技機1の機種毎に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を異なる値に設定する。この場合には、図37に示すステップS4にて設定される延長時間を、パチンコ遊技機1の機種毎に異ならせることができ、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することが困難になる。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“01”又は“10”に設定することにより、ステップS8にて設定される可変設定時間を、システムリセット毎に異ならせる。これにより、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することは著しく困難になる。
図37に示すステップS14にてセキュリティ時間が経過したと判定されたときには(ステップS14;Yes)、CPU505がROM506に記憶されているユーザプログラムを読み出して、図38に示すような遊技制御メイン処理が実行される。そして、例えばステップS33における設定処理などには、図39に示すような乱数回路設定処理が含まれている。ここで、図10(B)に示すような第2乱数初期設定KRS2のビット番号[0]におけるビット値を“1”とすれば、図39に示すステップS55の処理などにより、乱数回路509にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタ559Aや乱数値レジスタ559Bから読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
乱数回路509などには、CPU505の動作とは別個に初期値決定用データとなるカウント値を更新するフリーランカウンタ554Aが設けられている。そして、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”である場合には、乱数回路509のスタート値初期設定回路554による設定などに基づき、初期設定時にフリーランカウンタ554Aのカウント値をそのまま用いること、あるいは、そのカウント値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、スタート値がランダムに決定される。これにより、CPU505の動作態様から乱数回路509においてスタート値となる数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
遊技制御用マイクロコンピュータ100のCPU505は、図52に示すステップS252にて図29(A)に示す大当り変動パターン種別決定テーブル133Aを使用テーブルにセットした後や、ステップS255にて図29(B)に示す小当り変動パターン種別決定テーブル133Bを使用テーブルにセットした後、ステップS258にて図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cを使用テーブルにセットした後、あるいは、ステップS259にて図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dを使用テーブルにセットした後に、ステップS260の処理を実行して、変動パターン種別を予め用意された複数種類のいずれかに決定する。そして、このとき決定された変動パターン種別に基づき、ステップS261にて図31(A)に示す当り変動パターン決定テーブル134Aあるいは図31(B)に示すハズレ変動パターン決定テーブル134Bを使用テーブルにセットした後に、ステップS262の処理を実行して、変動パターンを予め用意された複数種類のいずれかに決定する。これにより、変動パターン種別の追加や発生率の変更を行う場合には、変動パターン種別決定テーブルにおける決定値の設定のみを変更すればよいので、設定時間を短縮化することができる。また、詳細な変動パターンの追加や発生率の変更を行う場合には、変動パターン決定テーブルにおける決定値の設定のみを変更すればよいので、設定時間を短縮化することができる。すなわち、変動パターン種別の決定割合と、変動パターンの決定割合とを、別個に設定することができるので、変動パターン種別や変動パターンの振分けにかかわる設計変更を容易に行うことができる。
図29(A)に示す大当り変動パターン種別決定テーブル133Aの設定例では、大当り種別が「突確」である場合に対応して、変動パターン種別CA4−1及び変動パターン種別CA4−2といった、大当り種別が「非確変」又は「確変」である場合とは異なる変動パターン種別が含まれるように、テーブルデータが構成されている。このようにして、大当り種別が「突確」である場合には、「突確」以外である場合とは異なる変動パターン種別や変動パターンに決定することにより、大当り種別が「突確」であることにより2ラウンド大当り状態に制御されるにもかかわらず、15ラウンド大当り状態に制御される場合と同様の演出動作が行われて遊技者に不信感を与えてしまうことを防止できる。
図30(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図30(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例において、合計保留記憶数が所定数以上である場合には、合計保留記憶数が所定数未満である場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。変動パターン種別CA1−2には、短縮用の非リーチ変動パターンである変動パターンPA1−2のみが含まれている。したがって、合計保留記憶数が所定数以上であるときには、所定数未満であるときに比べて、特別図柄や飾り図柄の平均的な可変表示時間が短縮される。これにより、パチンコ遊技機1において可変表示の作動率(稼働率)が低下してしまう事態を極力防止することができる。
図57のステップS341において役物作動制御時間が経過して、普通可変入賞球装置6B(第2始動入賞口)を閉鎖状態とするときに、ステップS348にて第2始動口異常入賞エラー無効タイマがセットされる。その後、図44に示す第2始動口異常入賞無効処理では、ステップSA21にて普図プロセスフラグの値が“3”以外であると判定されたときに、ステップSA22にて第2始動口異常入賞エラー無効タイマがタイムアウトしたと判定されるまで、ステップSA23〜SA32の処理が実行されないように制限する。これにより、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態となる直前に第2始動入賞口を通過(進入)した遊技球を、第2始動口スイッチ22Bによって有効に検出することができる。
そして、第2始動口異常入賞エラー無効タイマがタイムアウトした後に、ステップSA25にて最初に第2始動口スイッチ22Bからの検出信号がオン状態になっていると判定された場合には、ステップSA28にて再び第2始動口異常入賞エラー無効タイマがセットされる。これにより、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態となる直前に第2始動入賞口に進入したにもかかわらず、球噛みなどにより、第2始動口スイッチ22Bによる遊技球の検出が遅れた場合でも、これを有効に検出することができ、遊技者に不利益が発生しない。
その後、ステップSA28にて再度セットされた第2始動口異常入賞エラー無効タイマがタイムアウトした後に、ステップSA25にて第2始動口スイッチ22Bからの検出信号がオン状態になっていると判定された場合には、第2始動入賞口へ異常入賞があったとして、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御が行われている場合を除き、スイッチオンバッファにおいて、第2始動口スイッチ22Bからの検出信号に対応するビット番号[1]がクリアされるとともに、異常入賞報知フラグがオン状態にセットされる。これにより、第2始動入賞口への異常入賞を無効にすることができる。
このように、普通可変入賞球装置6B(第2始動入賞口)の開閉動作を終了して閉鎖状態に移行した後に、第2始動口異常入賞エラー無効タイマがタイムアウトする以前に、第2始動口スイッチ22Bによって遊技球が検出された場合には、スイッチオンバッファのビット番号[1]がクリアされず有効とされる。これに対して、第2始動口異常入賞エラー無効タイマがタイムアウトした後に、第2始動口スイッチ22Bによって遊技球が検出された場合には、スイッチオンバッファのビット番号[1]がクリアされて無効とされる。これにより、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態に移行した後に通過(進入)して第2始動口スイッチ22Bによって検出された遊技球の入賞を無効にして不正対策を確保しつつ、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態に移行する直前に進入し、閉鎖状態に移行した後に第2始動口スイッチ22Bによって検出された遊技球の入賞が無効になって遊技者に不利益を与えてしまうといったことを防止することができる。
また、第2始動口異常入賞エラー無効タイマがタイムアウトした後、最初に第2始動口スイッチ22Bからの検出信号がオン状態になったには、再び第2始動口異常入賞エラー無効タイマをセットすることにより、球噛したときなどに、第2始動入賞口58aへの正常な入賞が無効になって、遊技者に不利益を与えてしまうといったことを防止することができる。
そして、異常入賞報知フラグがオン状態にセットされた場合には、図45に示すステップS194の設定などに基づいて異常入賞報知コマンドが主基板11から演出制御基板12に対して送信される。演出制御基板12では、演出制御用マイクロコンピュータ120のCPUが、図58に示すステップS407の報知制御処理にて、第2始動入賞口に異常入賞があったしたことを報知する異常報知画面を表示させる。これにより、パチンコ遊技機1は、異常な状態が発生したことを遊技店の店員に認識させることができる。
図44のステップSA28にて再度セットされた第2始動口異常入賞エラー無効タイマがタイムアウトした後に、ステップSA25にて第2始動口スイッチ22Bからの検出信号がオン状態になっていると判定された場合でも、時短フラグがオンであり、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御や高開放制御が行われているときには、ステップSA30の処理が実行されないように制限されて、スイッチオンバッファのビット番号[1]がクリアされない。これにより、不正が行われる可能性が低い確変状態や時短状態で時間短縮制御や高開放制御が行われているときには、スイッチオンバッファのビット番号[1]をクリアするなどの処理を省略することができるため、CPU505の処理負担の増大を防止することができる。
図43に示すスイッチ処理では、ステップSA05にて入力ポートレジスタPIの格納値が定期的に取り込まれ、ステップSA06にて判定マスク値との論理積がとられる。続いて、ステップSA08の処理では、この演算結果と、前々回における論理積演算結果及び前回における論理積演算結果の排他的論理和と、の論理積がとられて、ステップSA09にてこの演算結果がスイッチオンバッファに格納される。こうして、スイッチオンバッファには、入力ポートレジスタPIに異なるタイミングで格納された各ビット値からとられた演算結果が格納される。CPU505は、このスイッチオンバッファの内容に基づいて、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B、カウントスイッチ23などからの検出信号の入力状態を一括して判定することができる。これにより、複数のスイッチ毎に検出信号の入力状態を判定したり、スイッチ回路114にマスクをして第2始動口スイッチ22Bからの検出信号が入力されないようにしたりするなどして、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態であるときに、スイッチオンバッファのビット番号[1]がセットされてビット値が「1」にならないようにするためのプログラムを設ける必要がなくなる。このため、プログラム構成の複雑化により、CPU505での処理負担が増大することを防止することができる。
こうしたスイッチ処理は、図41に示す遊技制御用タイマ割込み処理において、ステップS96の特別図柄プロセス処理やステップS98の賞球処理が実行されるよりも前に実行される。そして、図43に示すスイッチ処理内のステップSA10にて第2始動口異常入賞無効処理が実行され、図44に示すステップSA30にてスイッチオンバッファのビット番号[1]をクリアしてビット値を「0」にすることにより、第2始動入賞口への入賞が無効にされる。したがって、第2始動入賞口への異常入賞に基づくスイッチオンバッファの格納値が、賞球の払出や、第2始動条件が成立したことに基づく第2特図を用いた特図ゲームなどに用いられることを、確実に防止できる。
図55に示すステップS170の普通図柄通常処理で普通図柄の可変表示結果となる普図表示結果を決定するときには、普図表示結果決定テーブル135を参照することにより、時短フラグがオンである場合に、時短フラグがオフである場合と比較して高い割合で、普図表示結果を「普図当り」に決定する。また、時短フラグがオンであるときには、時短フラグがオフであるときに比べて、普通図柄の可変表示時間である普図変動時間が短くなるように設定される。加えて、時短フラグがオンであるときには、時短フラグがオフであるときに比べて、普図表示結果が「普図当り」となったことに基づく普通可変入賞球装置6B(第2始動入賞口)の開放回数や開放時間が増大するように設定される。こうして、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御や高開放制御が行われるときには、通常状態などにて時間短縮制御や高開放制御が行われないときに比べて、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度を高めて、多くの賞球が払い出される可能性を高め、遊技興趣を向上させることができる。
図28に示す大当り種別決定テーブル133の設定例では、変動特図指定バッファ値が「1」であれば「突確」の大当り種別に対して決定値が割り当てられる一方で、変動特図指定バッファ値が「2」であれば「突確」の大当り種別に対して決定値が割り当てられていない。したがって、普通入賞球装置6Aに形成された第1始動入賞口に進入した遊技球が第1始動口スイッチ22Aによって検出されたことに基づいて第1始動条件が成立した後、第1開始条件が成立した場合には、普通可変入賞球装置6Bに形成された第2始動入賞口に進入した遊技球が第2始動口スイッチ22Bによって検出されたことに基づいて第2始動条件が成立した後、第2開始条件が成立した場合とは異なる割合で、大当り種別が決定される。これにより、遊技球が普通入賞球装置6Aに形成された第1始動入賞口と、普通可変入賞球装置6Bに形成された第2始動入賞口とのいずれに進入したことに基づき、大当り遊技状態に制御されたかに対して、遊技者の関心を高め、遊技興趣を向上させることができる。
図27(B)に示す第2特図表示結果決定テーブル130Bの設定例では、「小当り」の特図表示結果に対して決定値が割り当てられていない。また、図28に示す大当り種別決定テーブル133の設定例では、変動特図指定バッファ値が「2」である場合に、「突確」の大当り種別に対して決定値が割り当てられていない。そして、図51に示すステップS221、S223の処理により、第2特図を用いた特図ゲームが、第1特図を用いた特図ゲームよりも優先して実行される。したがって、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御や高開放制御が行われ、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高められているときに、第2始動条件の成立に基づく第2特図を用いた特図ゲームで大当り種別が「突確」に決定されることや、特図表示結果が「小当り」に決定されることがない。これにより、確変状態や時短状態における遊技の間延びによる遊技興趣の低下を防止できる。
普通可変入賞球装置6Bでは、ソレノイド81のプランジャが開閉羽根に対して進退移動(前後移動)することで、プランジャの直線的な進退移動力がプランジャ連係部としての連結アーム係止部材や連係アームなどを介して伝達部材の回動力に変換され、この伝達部材の回動力が開閉羽根連係部としての連係ピン係止部や連係ピンなどを介して開閉羽根の回動力に変換されて、開閉羽根の回動による開閉動作が行われる。伝達部材は、プランジャの進退移動に連動して回動する。プランジャの進退移動には、ソレノイド81の駆動停止による消磁動作(第1動作)としての前進移動と、ソレノイド81の駆動開始による励磁動作(第2動作)としての後退移動とがある。そして、プランジャの励磁動作に応じて、伝達部材回動軸が支持部材に形成された軸受長孔の前端(規制位置)から後端(回動位置)に移動することで、支持部材に形成された案内溝の回転規制部である上直線面による伝達部材の案内ピンにおける第2方向(上後方)への回転規制が解除され、伝達部材が第2方向に回転して閉止姿勢から開放姿勢となることで、開閉羽根が開放状態となる。プランジャの消磁動作に応じて、軸受長孔の後端(回動位置)に位置する伝達部材回動軸を中心として第1方向(下前方)に回転し、開放姿勢から閉止姿勢となった後、閉止姿勢のまま伝達部材回動軸が軸受長孔の後端(回動位置)から前端(規制位置)に移動することにより、伝達部材の案内ピンが案内溝部の上直線面に当接して第2方向への回転が規制される。このときには、開閉羽根を閉鎖状態から開放状態へと強制的に回動させることができないため、針金等の不正部材により開閉羽根を不正に回動させて遊技球を入賞させるといった不正行為等を極力防止することができる。
開閉羽根が一度開放状態となったときに、ピアノ線などを開閉羽根に引っ掛けて遊技球の入賞を容易にさせるといった外力を加える不正が行われたとしても、図44に示すステップSA28にて再度セットされた第2始動口異常入賞エラー無効タイマがタイムアウトした後は、第2始動入賞口への異常入賞が全て無効にされるため、遊技者の不利益を防止しつつ、被害を最小限に収めることができる。
普通可変入賞球装置6Bにおいて、開閉羽根が閉鎖状態であるときには、伝達部材の回動が装置本体を構成する支持部材の側壁に形成された案内溝の直線溝部にて案内規制される。したがって、開閉羽根を強制的に回動させようとするときなどの負荷が伝達部材を介してプランジャに直接伝達されることがなく、普通電動役物用のソレノイド81を保護して故障を防止できる。
以上説明したように、上記実施の形態におけるパチンコ遊技機1では、例えば第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態になることといった所定信号の入力に基づいて、乱数回路509で乱数生成回路553や乱数列変更回路555などにより予め定められた手順で更新される乱数列RSNに含まれる数値データが乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納されたときに、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値を“0”から“1”へと変化させることなどにより、数値データを格納した乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に対応する乱数ラッチフラグがオン状態になり新たな数値データの格納が制限される。その一方で、例えばCPU505が図48に示すステップS506の処理を実行したときといった、乱数値の読出タイミングにて乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)から乱数値となる数値データが読み出されたときに、その数値データが読み出された乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に対応する乱数ラッチフラグがオフ状態になり新たな数値データの格納が許可される。これにより、所定信号の入力に基づいて乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データは、CPU505などによって読み出されるまでにノイズ等により改変されてしまうことがなく、正確な乱数値となる数値データを取得することができる。
そして、遊技制御用マイクロコンピュータ100のCPU505などにより遊技制御の実行が開始されるときには、例えば図39に示すステップS56の処理や、図42に示すステップS120〜ステップS123の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばパチンコ遊技機1において電源遮断が発生したときや電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
第1始動入賞口を通過(進入)した遊技球が検出されて図47に示すステップS203にて第1始動口スイッチ22Aがオンであると判定されたときにはステップS204において、また、第2始動入賞口を通過(進入)した遊技球が検出されて図47に示すステップS208にて第2始動口スイッチ22Bがオンであると判定されたときにはステップS209において、遊技球が通過(進入)した始動入賞口にかかわらず共通の乱数値取得処理が実行される。そして、例えば図48に示すステップS505及びステップS506の処理といった、遊技球が通過した始動入賞口にかかわらず共通の処理ルーチンにおいて、乱数回路509が備える乱数値レジスタR1D(559A)及び乱数値レジスタR2D(559B)のうち、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタから、乱数値となる数値データを読み出す。これにより、例えば第1始動入賞口や第2始動入賞口といった、複数の始動入賞口を設けたパチンコ遊技機1において、プログラム量の過剰な増大を防止することができる。
図48に示すステップS502にて保留記憶カウンタの読出値が上限値以上であると判定されたことに対応して、乱数値の読出タイミングにて第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達しているときには、ステップS510の処理において、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタR1D(559A)又は乱数値レジスタR2D(559B)から、乱数値となる数値データを読み出すことにより、対応する乱数ラッチフラグをオフ状態に設定する。これにより、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達した後、例えば上限記憶数未満となってから乱数値の読出タイミングとなったときなどに、第1始動入賞信号SS1や第2始動入賞信号SS2といった所定信号の入力に基づく正確な乱数値を取得することができる。
図44に示すステップSA30にてスイッチオンバッファのビット番号[1]がクリアされてビット値が「0」となり、普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)したことに基づく第2始動条件の成立が異常入賞の発生により無効とされるときには、ステップSA31の処理において、遊技球が通過した第2始動入賞口に対応する乱数値レジスタR2D(559B)から、乱数値となる数値データを読み出すことにより、対応する乱数ラッチフラグをオフ状態に設定する。これにより、第2始動条件の成立が異常入賞の発生により無効とされた後、例えば新たな遊技球が普通可変入賞球装置6B(第2始動入賞口)を通過(進入)して乱数値の読出タイミングとなったときなどに、第2始動入賞信号SS2といった所定信号の入力に基づく正確な乱数値を取得することができる。
図8(A)や図11(A)及び(C)に示すセキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“00”以外の値としたときには、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定する。また、図8(A)や図11(A)及び(D)に示すセキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外の値としたときには、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定する。これにより、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
乱数回路509では、乱数生成回路553から出力されたカウント値順列RCNを乱数列変更回路555が予め定められた乱数変更規則に基づいて変更することで、数値データを所定手順により所定の更新初期値から所定の更新最終値まで循環的に更新する。そして、図8(A)や図10(B)に示す第2乱数初期設定KRS2のビット番号[0]におけるビット値を“1”としたときには、CPU505が図39に示すステップS55の処理を実行することなどにより、乱数回路509にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更する。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
より具体的には、乱数回路509などに設けられたフリーランカウンタ554により、遊技制御用マイクロコンピュータ100のCPU505における動作とは別個に初期値決定用データとなるカウント値が更新される。そして、乱数回路509のスタート値初期設定回路554による設定などに基づき、フリーランカウンタ554のカウント値を用いて乱数値となる数値データのスタート値が決定される。これにより、遊技制御用マイクロコンピュータ100のCPU505における動作態様から乱数値となる数値データを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501では、内部リソースアクセス制御回路501Aにより、例えばROM506の記憶データといった、遊技制御用マイクロコンピュータ100の内部データにつき、CPU505等の内部回路以外による外部読出が制限される。これにより、例えばROM506に記憶されているゲーム制御用のユーザプログラムといった、遊技制御処理プログラムが遊技制御用マイクロコンピュータ100の外部から読み出されて解析などに提供されることを防止できる。そして、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
遊技制御用マイクロコンピュータ100に内蔵又は外付けされた乱数回路509の周波数監視回路551では、乱数用クロック生成回路112から乱数用外部クロック端子ERCに対する乱数用クロックRCLKの入力状態を内部システムクロックSCLKと比較して、乱数用クロックRCLKにおける周波数異常が検知されたときに、内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4のビット値を“1”に設定する。そして、CPU505では、例えば図40に示すステップS63にて内部情報データCIF4の読出値が“1”であると連続して判定された回数が、ステップS65にてクロック異常判定値に達したと判定されたときに、乱数回路509の動作状態に異常が発生したと判定する。これにより、乱数用クロックRCLKとして不正信号を入力することによる不正行為を確実に防止することができる。
遊技制御用マイクロコンピュータ100のCPU505は、パチンコ遊技機1における電源供給の開始などに基づいて遊技制御用マイクロコンピュータ100のシステムリセットが解除されたときに、乱数値レジスタ読出処理として図39に示すステップS56の処理を実行することにより、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態とする。これにより、例えば電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを乱数値として取得してしまうことを防止できる。
また、図42に示すステップS111にて電源断信号がオン状態であると判定されたことなどに対応して、例えば電源電圧VSLといった所定電源電圧の低下が検出された後、遊技制御用マイクロコンピュータ100が動作停止状態となるまでは、ステップS119の処理を実行することにより、電源断信号の入力状態を繰り返し判定する。そして、ステップS119にて電源断信号がオフ状態となり入力されていない旨の判定がなされたときに、ステップS124における設定に基づきROM506に記憶された制御コードの先頭から遊技制御が開始されるより前に、ステップS120〜ステップS123の処理を実行して、オン状態となっている乱数ラッチフラグをオフ状態にする。これにより、例えば電源電圧VSLといった所定電源電圧の低下時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを乱数値として取得してしまうことを防止できる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した始動入賞の発生時に、図48のステップS506にて読み出された数値データに基づく特図表示結果決定用の乱数値MR1に基づき、図47に示すステップS205やステップS210にて図49に示すような入賞時乱数値判定処理が実行され、ステップS525やステップS531にて乱数値MR1が大当り判定範囲内であるか否かを判定して、特図表示結果が「大当り」に決定されるか否かを判定する。そして、図60のステップS554やステップS561にて入賞時当り判定が通知されたことに対応して、ステップS556やステップS563にて連続予告フラグがオン状態にセットされることなどにより、入賞時当り判定の対象となった可変表示が開始されるより前に、例えば複数回の可変表示にわたる連続予告演出といった、特定の演出動作を実行する。これにより、入賞時当り判定などの対象となった可変表示が開始されるより前に、その表示結果が「大当り」となる可能性を報知して、長期間にわたり可変表示結果が「大当り」となる期待感を持続させて、遊技興趣を向上させることができる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した始動入賞の発生時に、図48のステップS508にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データに基づき、図49のステップS528やステップS534にて特定パターン共通範囲の範囲内であるか否かを判定して、例えばスーパーリーチを伴う変動パターンといった、特定の変動パターンに決定されるか否かを判定する。そして、図60のステップS555やステップS562にて特定パターン共通範囲内が通知されたことに対応して、ステップS556やステップS563にて連続予告フラグがオン状態にセットされることなどにより、特定パターン共通範囲内の判定対象となった可変表示が開始されるより前に、例えば複数回の可変表示にわたる連続予告演出といった、特定の演出動作を実行する。これにより、特定パターン共通範囲内などの判定対象となった可変表示が開始されるより前に、その可変表示で特定の変動パターンとなる可能性を報知して、長期間にわたり可変表示結果が「大当り」となる期待感を高めて、遊技興趣を向上させることができる。
また、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が所定数以上であるか否かに応じて、変動パターン種別CA1−1〜変動パターン種別CA1−3や変動パターン種別CA2−1〜変動パターン種別CA2−3に対する決定値の割当てが異なっている。これにより、特図ゲームの保留記憶数に応じて変動パターンの決定割合を異ならせて、特別図柄や飾り図柄の可変表示時間の調整を可能にすることにより、保留記憶数が多いときには可変表示の効率を高める一方、保留記憶数が少ないときには可変表示が途切れて遊技興趣が低下することを防止できる。
その一方で、ハズレ変動パターン種別決定テーブル(通常時)133Cとハズレ変動パターン種別決定テーブル(時短中)133Dにおいて、変動パターン種別CA2−4に対応した決定値の少なくとも一部は、遊技状態や合計保留記憶数にかかわらず同一決定値「230」〜「251」が設定されている。これにより、遊技状態や合計保留記憶数にかかわらず、特定の変動パターンに決定される旨の判定を、確実に行うことができる。
この発明は、上記実施の形態に限定されず、様々な変形及び応用が可能である。例えば、上記実施の形態では、第1特別図柄表示装置4A及び第2特別図柄表示装置4Bを備えたパチンコ遊技機1について説明したが、1つの特別図柄表示装置のみが設けられたものであってもよい。この場合には、例えば図14に示す乱数回路509が備えるラッチ用フリップフロップ557B、乱数ラッチセレクタ558B及び乱数値レジスタR2D(559B)の組合せを不使用とすればよい。
また、普通入賞球装置6Aが形成する第1始動入賞口と、普通可変入賞球装置6Bが形成する第2始動入賞口とが、複数の始動領域として設けられるものに限定されず、例えば3個以上といった複数の始動領域が設けられるものであってもよい。この場合、各始動領域にて遊技球の始動入賞が検出されたことに基づき、互いに異なる特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。そして、乱数回路509には、始動領域の個数に対応して3個以上といった複数の乱数値レジスタが設けられ、また、各乱数値レジスタに対応した乱数ラッチフラグが設けられるようにすればよい。あるいは、例えば3個以上の始動領域のうちで、一部(少なくとも2個)の始動領域にて遊技球の始動入賞が検出されたことに基づき、同一の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。また、複数の始動領域のうち、いずれの始動領域にて遊技球の始動入賞が検出された場合でも、共通する1個(あるいは1組)の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。この場合には、複数の始動領域において遊技球の始動入賞が検出された順番と同一の順番で、特図ゲームを開始するための開始条件が成立するようにしてもよい。あるいは、複数の始動領域に優先順位を付け、優先順位が高い始動領域にて遊技球の始動入賞が検出されたことに基づく特図ゲームを開始するための開始条件を、優先順位が低い始動領域にて遊技球の始動入賞が検出されたことに基づく開始条件よりも、優先的に成立させるようにしてもよい。
図42に示すステップS119の処理では、電源断信号がオン状態であるか否かの判定に代えて、ウォッチドッグタイマがタイムアウトしたか否かの判定を行うようにしてもよい。例えば、ウォッチドッグタイマの入力端子に内部システムクロックSCLKといった所定の発振信号を供給し、その信号変化をカウントアップする。そして、ウォッチドッグタイマでカウントされた値が所定値(タイムアウト値)に達すると、タイムアウト信号が出力される。タイムアウト信号は所定の反転回路で論理反転された後、復帰信号としてAND回路に入力される。AND回路はリセット信号と復帰信号との論理積をとってCPU505のリセット端子に供給する。ウォッチドッグタイマにおけるタイムアウト値は、電源断信号がオン状態になってから、例えば電源電圧VSLが電源電圧VCCを生成可能な電圧値よりも低下する時間以上に設定されればよい。ウォッチドッグタイマは、電源電圧VCCを駆動電圧として動作するので、タイムアウト値は、ウォッチドッグタイマの動作可能期間に相当する値以上に設定される。したがって、パチンコ遊技機1への電力供給停止時には、そのまま電源電圧が低下して供給停止に至るのであれば、ウォッチドッグタイマがタイムアウトして復帰信号が出力されるより前に、ウォッチドッグタイマ及びその他の回路部品は動作しなくなる。なお、CPU505が遊技制御を実行しているときには、定期的にタイマクリア信号がウォッチドッグタイマに供給されて、カウント値がクリア(例えば初期値「0」に設定など)されればよい。タイマクリア信号の出力周期は、ウォッチドッグタイマがタイムアウトするまでの所要時間よりも短くなるように設定する。そのため、CPU505が通常の遊技制御を実行しているときには、ウォッチドッグタイマからタイムアウト信号が出力されることはない。
この場合、ステップS119の処理が繰り返し実行される期間では、ウォッチドッグタイマへのタイマクリア信号の供給が行われず、所定時間が経過しても電源電圧VCCが正常電圧値であれば、ウォッチドッグタイマにてタイムアウトが発生する。このときには、CPU505に供給された復帰信号に基づいて、遊技制御処理プログラムの先頭から処理を開始(再開)するようにしてもよい。このようにしても、例えば図39に示すステップS56の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。あるいは、図42に示すステップS119の処理にてウォッチドッグタイマにてタイムアウトが発生したと判定されたときに、パチンコ遊技機1が電源電圧の瞬断から復帰したと判断して、ステップS120以降の処理が実行されるようにすればよい。このようにしても、図42に示すステップS120〜ステップS123の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばパチンコ遊技機1において瞬断の発生時といった電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
図37のステップS4にて設定される延長時間は、例えばROM506に記憶されたユーザプログラムにおける設定などにより、システムリセット毎に複数の延長時間のいずれかに決定するようにしてもよい。この場合には、ステップS4にて設定される延長時間がいずれも、ステップS8にて設定可能な最長の可変設定時間に比べて、長くなるように定義しておく。そして、ステップS4では大まかな延長時間を決定した後、ステップS8では詳細な延長時間を決定すればよい。これにより、パチンコ遊技機1の電源投入時やシステムリセット時にセキュリティモードとなるセキュリティ時間を、システムリセット毎に大きく変化させることが可能になり、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングや更新される数値データなどを特定することが、より困難になる。
また、固定時間に加算される延長時間などは、遊技制御用マイクロコンピュータ100を構成するチップ毎に付与されるIDナンバーを用いて決定されるようにしてもよい。一例として、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値に対応して延長時間を設定してもよい。この場合には、例えばシステムリセット毎に延長時間を決定するために用いる演算式を変更することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。さらに、例えばIDナンバーを用いて延長時間を決定するための演算式をシステムリセット時に格納したフリーランカウンタのカウント値に対応して決定するといったように、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。また、乱数回路509にて生成される乱数のスタート値をシステムリセット毎に変更する場合にも、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、乱数のスタート値を決定してもよい。
遊技制御用マイクロコンピュータ100のCPU505に供給されるクロック信号と、乱数回路509に供給されるクロック信号は、共通のクロック生成回路に含まれる1つの発振器により生成された発振信号を用いて、生成されるようにしてもよい。この場合には、例えば乱数用クロックRCLKと制御用クロックCCLKをそれぞれ生成するための分周器などを設け、ラッチ用クロックRC0、RC1、RC2と制御用クロックCCLKあるいは内部システムクロックSCLKとの同期が生じにくくなるように、各分周器における分周比などを設定すればよい。制御用クロック生成回路111と乱数用クロック生成回路112とは、その全部又は一部が、遊技制御用マイクロコンピュータ100の内部に設けられてもよいし、遊技制御用マイクロコンピュータ100の外部に設けられてもよい。
乱数更新クロックRGKやラッチ用クロックRC0となる発振信号は、例えば乱数用クロック生成回路112といった、乱数回路509の外部において生成されるようにしてもよい。あるいは、乱数回路509の内部にて、乱数更新クロックRGKを生成するための回路と、ラッチ用クロックRC0を生成するための回路とを、別個に設けるようにしてもよい。一例として、クロック用フリップフロップ552と同様のフリップフロップにより乱数更新クロックRGKを生成する一方で、乱数更新クロックRGKの信号状態を反転させる反転回路を設け、その反転回路から出力される信号を、ラッチ用クロックRC0として用いるようにしてもよい。
ROM506の外部読出などを制限する場合には、例えば遊技制御用マイクロコンピュータ100にてROM506の記憶データを外部読出するための接続端子などを、パチンコ遊技機1の提供者において外部装置が接続不能に封止されてもよい。
上記実施の形態では、図46に示すステップS141の変動パターン設定処理として、第1開始条件と第2開始条件のいずれが成立したかに関わりなく、図52のフローチャートに示すような処理が実行されるものとして説明した。しかしながら、この発明はこれに限定されず、第1開始条件が成立した場合と第2開始条件が成立した場合とでは、互いに異なる処理を実行して、変動パターン種別を複数種類のいずれとするかの決定や、変動パターンを複数種類のいずれとするかの決定を行うようにしてもよい。この場合、変動パターン種別を決定するための処理や、変動パターンを決定するための処理は、第1開始条件と第2開始条件のいずれが成立したかに応じて異ならせる一方で、変動パターン種別決定用の乱数値MR3を示す数値データや、変動パターン決定用の乱数値MR4を示す数値データとしては、第1開始条件と第2開始条件のいずれが成立したかに関わりなく、共通の数値データを用いるようにすればよい。
また、大当り変動パターン種別決定テーブルや小当り変動パターン種別決定テーブル、ハズレ変動パターン種別決定テーブルといった変動パターン種別決定テーブルとして、第1開始条件と第2開始条件のいずれが成立したかに応じて、各変動パターン種別に対する決定値の割当てを異ならせたものを予め用意してもよい。そして、第1開始条件の成立に対応して実行される変動パターン設定処理では、第1開始条件の成立に応じた変動パターン種別決定テーブルを使用テーブルとして選択し、変動パターン種別決定用の乱数値MR3に基づいて、変動パターン種別を複数種類のいずれかに決定する。これに対して、第2開始条件の成立に対応して実行される変動パターン設定処理では、第2開始条件の成立に応じて第1開始条件が成立した場合とは異なる変動パターン種別決定テーブルを使用テーブルとして選択し、第1開始条件が成立した場合と共通の変動パターン種別決定用の乱数値MR3に基づいて、変動パターン種別を複数種類のいずれかに決定すればよい。
上記実施の形態では、可変表示結果が「小当り」となったことに基づいて小当り遊技状態に制御され、小当り遊技状態が終了した後には、遊技状態の変更が行われない。その一方で、可変表示結果が「大当り」となる場合に大当り種別が「突確」となったことに基づいて2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、確変状態に制御されるものとして説明した。しかしながら、この発明はこれに限定されず、大当り種別が「突確」となる場合や可変表示結果が「小当り」となる場合に代えて、あるいは、これらの場合に加えて、「突然時短」や「突然通常」となる場合を設けるようにしてもよい。一例として、「突然時短」と「突然通常」は、可変表示結果が「大当り」となる場合における大当り種別に含まれるものとする。この場合、大当り種別決定テーブル131は、変動特図指定バッファ値に応じて、大当り種別決定用の乱数値MR2を、「突然時短」や「突然通常」の大当り種別に割り当てるテーブルデータが含まれるように構成されればよい。そして、可変表示結果が「大当り」となる場合に大当り種別が「突然時短」となるときには、大当り種別が「突確」の場合と同様にして2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり時短状態に制御される。他方、可変表示結果が「大当り」となる場合に大当り種別が「突然通常」となるときには、大当り種別が「突確」の場合と同様にして2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり通常状態に制御される。これにより、2ラウンド大当り状態の終了後に制御される遊技状態に対する遊技者の期待感を高め、遊技興趣を向上させることができる。
このような「突然時短」や「突然通常」を設ける場合には、「突然時短」及び「突然通常」以外である場合とは異なる変動パターン種別や変動パターンに決定するようにしてもよい。これにより、大当り種別が「突然時短」や「突然通常」であることにより2ラウンド大当り状態に制御されるにもかかわらず、15ラウンド大当り状態に制御される場合と同様の演出動作が行われて遊技者に不信感を与えてしまうことを防止できる。また、大当り種別が「突然時短」や「突然通常」となる場合には、可変表示結果が「小当り」となる場合、あるいは、大当り種別が「突確」となる場合と、共通の変動パターン種別に決定可能としてもよい。これにより、変動パターンを決定する際には、大当り種別が「突然時短」や「突然通常」となる場合であるか、可変表示結果が「小当り」となる場合あるいは大当り種別が「突確」となる場合であるかに関わりなく、共通の変動パターン決定テーブルを用いることができ、データ容量の削減を図ることができる。
上記実施の形態では、可変表示結果が「大当り」となったことに基づく大当り遊技状態が終了した後に、確変状態や時短状態といった遊技状態に制御できるものとして説明した。そして、確変状態や時短状態では、第2始動入賞口に遊技球が進入する可能性を高めて第2始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われるものとして説明した。しかしながら、この発明はこれに限定されず、例えば確変状態には、継続して確変制御が行われるとともに、第2始動入賞口に遊技球が進入する可能性を高める高開放制御が行われる高確高ベース状態と、確変制御は行われるが高開放制御は行われない高確低ベース状態とが含まれるようにしてもよい。また、時短状態には、特図変動時間が短縮されるとともに高開放制御が行われる低確高ベース状態と、特図変動時間は短縮されるが高開放制御は行われない低確低ベース状態とが含まれるようにしてもよい。一例として、大当り種別が「確変」及び「突確」のいずれであるかに対応して、大当り遊技状態の終了後に、高確高ベース状態と高確低ベース状態のいずれかに制御されるようにしてもよい。他の一例として、大当り種別が「確変」及び「突確」のいずれであるかに応じて、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれかに制御される割合を、互いに異ならせるようにしてもよい。
大当り種別が「突確」である場合に変動パターン種別を複数種類のいずれかに決定する際には、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれに制御するかに応じて、異なる変動パターン種別に決定するようにしてもよい。一例として、図51に示すステップS234にて大当り種別が「突確」に決定された際には、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれに制御するかを決定するための判定処理を実行する。このとき、高確低ベース状態に制御することが決定された場合には、変動パターン種別CA4−1といった、大当り種別が「突確」となる場合と可変表示結果が「小当り」となる場合で共通の変動パターン種別に決定する。これに対して、高確高ベース状態に制御することが決定された場合には、変動パターン種別CA4−2といった、大当り種別が「突確」となる場合のみに専用の変動パターン種別に決定すればよい。これにより、大当り種別が「突確」で大当り遊技状態の終了後に高確低ベース状態となる場合には、飾り図柄の可変表示中における演出動作や2ラウンド大当り状態における演出動作として、可変表示結果が「小当り」となる場合と共通の演出動作が行われた後、高確低ベース状態となることができる。他方、大当り種別が「突確」で大当り遊技状態の終了後に高確高ベース状態となる場合には、飾り図柄の可変表示中における演出動作や2ラウンド大当り状態における演出動作として、大当り種別が「突確」となる場合のみに専用の演出動作が行われた後、高確高ベース状態となることができる。
上記実施の形態では、画像表示装置5の表示領域において、「左」、「中」、「右」の飾り図柄表示エリア5L、5C、5Rが設けられ、各飾り図柄表示エリア5L、5C、5Rにて1個の飾り図柄が停止表示されることで、予め定められた1個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるものとして説明した。しかしながら、この発明はこれに限定されず、例えば「左」、「中」、「右」の各飾り図柄表示エリア5L、5C、5Rにて「上段」、「中段」、「下段」の3カ所に飾り図柄を停止表示可能とし、5個あるいは8個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるようにしてもよい。
その他にも、パチンコ遊技機1の装置構成、データ構成、フローチャートで示した処理、画像表示装置5の表示領域における演出画像の表示動作を含めた各種の演出動作などは、本発明の趣旨を逸脱しない範囲で、任意に変更及び修正が可能である。加えて、本発明の遊技機は、入賞球の検出に応答して所定数の賞球を払い出す払出式遊技機に限定されるものではなく、遊技球を封入し入賞球の検出に応答して得点を付与する封入式遊技機にも適用することができる。
上記実施の形態では、遊技機の例として、特別図柄や飾り図柄を可変表示する機能や各種の演出画像を表示する機能を有するパチンコ遊技機1を用いて説明した。しかしながら、上記実施の形態におけるパチンコ遊技機1が備える構成及び機能の少なくとも一部は、スロットマシンなどの他の遊技機にも適用することができる。
一例として、スロットマシンが備える遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路では、例えば図14に示した構成のうち、ラッチ用フリップフロップ557B、乱数ラッチセレクタ558B及び乱数値レジスタR2D(559B)の組合せを不使用とすればよい。その一方で、例えば図6に示した構成において、PIP510が備える入力ポートP0にスロットマシンが備えるスタートレバースイッチからの検出信号を入力する。
そして、遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路では、例えばスタートレバースイッチからの検出信号がオン状態になることといった所定信号の入力に基づいて、図14に示した乱数生成回路553や乱数列変更回路555などにより予め定められた手順で更新される乱数列RSNに含まれる数値データが乱数値レジスタR1D(559A)に格納されたときに、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータRDFM0のビット値を“0”から“1”へと変化させることなどにより、数値データを格納した乱数値レジスタR1D(559A)に対応する乱数ラッチフラグがオン状態になり新たな数値データの格納が制限される。その一方で、例えば遊技制御用マイクロコンピュータのCPUが、図48に示すステップS506に相当する処理を実行したときといった、乱数値の読出タイミングにて乱数値レジスタR1D(559A)から乱数値となる数値データが読み出されたときに、その数値データが読み出された乱数値レジスタR1D(559A)に対応する乱数ラッチフラグがオフ状態になり新たな数値データの格納が許可される。これにより、所定信号の入力に基づいて乱数値レジスタR1D(559A)に格納された数値データは、遊技制御用マイクロコンピュータのCPUなどによって読み出されるまでにノイズ等により改変されてしまうことがなく、正確な乱数値となる数値データを取得することができる。
また、スロットマシンにおいても、遊技制御用マイクロコンピュータのCPUなどにより遊技制御の実行が開始されるときには、例えば図39に示すステップS56に相当する処理や、図42に示すステップS120及びステップS121に相当する処理において、乱数値レジスタR1D(559A)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばスロットマシンにおいて電源遮断が発生したときや電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
さらに、図8(A)や図11(A)及び(C)に示したものと同様に、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“00”以外の値としたときには、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定する。加えて、図8(A)や図11(A)及び(D)に示したものと同様に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外の値としたときには、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定する。これにより、スロットマシンの電源投入やシステムリセット等による動作開始タイミングから、乱数回路の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別遊技状態を発生させるなどの行為を、確実に防止することができる。
その他、スロットマシンにおいて、例えば遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路にて生成される乱数値となる数値データのスタート値をシステムリセット毎に変更すること、より具体的には、遊技制御用マイクロコンピュータのCPUにおける動作とは別個に初期値決定用データとなるカウント値を更新するフリーランカウンタから読み出したカウント値を用いて乱数値となる数値データのスタート値が決定されること、遊技制御用マイクロコンピュータが備える外部バスインタフェースでは内部リソースアクセス制御回路によりROMの記憶データといった遊技制御用マイクロコンピュータの内部データにつきCPU等の内部回路以外による外部読出が制限されること、遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路の周波数監視回路では乱数用クロックの入力状態を内部システムクロックと比較して乱数用クロックにおける周波数異常が検知されること、あるいは、これらの一部又は全部を組み合わせることなどにより、上記実施の形態におけるパチンコ遊技機1が備える構成及び機能の少なくとも一部が、スロットマシンにおいても実現されればよい。
スロットマシンは、メダル並びにクレジットを使用してゲームを実施可能なものに限らず、例えばパチンコ球を用いてゲームを行うスロットマシンや、メダルが外部に排出されることなくクレジットを使用して遊技可能な完全クレジット式のスロットマシン、可変表示装置が図柄を示す画像の表示を行う画像式のスロットマシンなどにも適用することができる。
パチンコ遊技機1やスロットマシンが備える構成及び機能の一部又は全部を実現するためのプログラム及びデータは、コンピュータ装置等に対して、着脱自在の記録媒体により配布・提供される形態に限定されるものではなく、予めコンピュータ装置等の有する記憶装置にプリインストールしておくことで配布される形態を採っても構わない。さらに、本発明を実現するためのプログラム及びデータは、通信処理部を設けておくことにより、通信回線等を介して接続されたネットワーク上の、他の機器からダウンロードすることによって配布する形態を採っても構わない。