実施の形態1.
以下、本発明の実施の形態を、図面を参照して説明する。まず、遊技機の一例であるパチンコ遊技機1の全体の構成について説明する。図1はパチンコ遊技機(弾球遊技機)1を正面からみた正面図である。なお、ここでは、遊技機の一例としてパチンコ遊技機を示すが、本発明による遊技機はパチンコ遊技機に限られず、例えば、画像式の遊技機、コイン遊技機、および、スロット機等であってもよい。
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板(図示せず)と、それらに取り付けられる種々の部品(後述する遊技盤6を除く)とを含む構造体である。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球を貯留する余剰球受皿4や、打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。また、ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には、打ち込まれた遊技球が流下可能な遊技領域7が形成されている。
遊技領域7の中央付近には、液晶表示装置(LCD)で構成された可変表示装置9が設けられている。可変表示装置9の表示画面には、第1の実行条件である第1始動条件の成立(例えば、打球が第1始動入賞口13に入賞したこと)にもとづいて各々を識別可能な複数種類の演出用の飾り図柄(第1飾り図柄)を可変表示し表示結果を導出表示する表示領域(以下、第1可変表示部9aという。)と、第2の実行条件である第2始動条件の成立(例えば、打球が第2始動入賞口14に入賞したこと)にもとづいて各々を識別可能な複数種類の演出用の飾り図柄(第2飾り図柄)を可変表示し表示結果を導出表示する表示領域(以下、第2可変表示部9bという。)と、第1の可変表示部9aおよび第2の可変表示部9bよりも遊技者が表示内容を視認することが容易な表示領域(以下、背景図柄表示部9cという。)とがある。なお、表示内容を視認することが容易とは、例えば、表示領域のサイズが大きいことであったり、可変表示部9aおよび第2の可変表示部9bにおける表示内容が常に単色であるのに対して表示色が変わったりすることである。また、この実施形態では、背景図柄演出部9cには、左・中・右の3つの表示領域に識別情報(以下、背景図柄ともいう。)が表示制御される。なお、入賞とは、入賞口などのあらかじめ入賞領域として定められている領域に遊技球が入ったことである。また、表示結果を導出表示するとは、図柄を停止表示させることである(いわゆる再変動の前の停止を除く。)。この実施の形態では、2つの可変表示部(第1の可変表示部9aおよび第2の可変表示部9b)に対して1つの背景図柄演出部9cが設けられ、背景図柄演出部9cにおいて、2つの可変表示部において可変表示される飾り図柄(第1飾り図柄および第2飾り図柄)のいずれかに対応した演出が実行されるので、飾り図柄の状況(例えば、大当り図柄が導出表示されるか否か)を把握しづらくする。
可変表示装置9の上部には、識別情報としての特別図柄を可変表示する第1特別図柄表示器(特別図柄表示装置)8aおよび第2特別図柄表示器8bが設けられている。この実施の形態では、第1特別図柄表示器8aおよび第2特別図柄表示器8bは、それぞれ、例えば0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。第1特別図柄表示器8aおよび第2特別図柄表示器8bは、停止図柄が確変図柄であるのか非確変図柄であるのかを把握しづらくさせるために、0〜99など、より多種類の数字を可変表示するように構成されていてもよい。以下、第1特別図柄表示器8aにおいて可変表示される識別情報を第1特別図柄といい、第2特別図柄表示器8bにおいて可変表示される識別情報を第2特別図柄ということがある。また、第1特別図柄と第2特別図柄とを、特別図柄と総称することがある。なお、この実施の形態では、第1特別図柄の種類と第2特別図柄の種類とは同じ(例えば、ともに0〜9の数字)であるが、種類が異なっていてもよい。また、一部が異なっていてもよい。一例として、第1特別図柄の種類は、0〜5の数字と数字以外のキャラクタとを含み、第2特別図柄の種類は、0〜5の数字と数字以外のキャラクタであって第1特別図柄のキャラクタとは異なるものとを含むようにしてもよい。
第1特別図柄表示器8aの近傍には、第1始動入賞口13に入った有効入賞球数すなわち第1保留記憶数(保留記憶を、始動記憶または始動入賞記憶ともいう。)を表示する4つの表示器からなる第1特別図柄保留記憶表示器18aが設けられている。第1特別図柄保留記憶表示器18aは、有効始動入賞がある毎に、点灯する表示器の数を1増やす。そして、第1特別図柄表示器8aでの可変表示が開始される毎に、点灯する表示器の数を1減らす。また、第2特別図柄表示器8bの近傍には、第2始動入賞口14に入った有効入賞球数すなわち保留記憶数を表示する4つの表示器からなる第2特別図柄保留記憶表示器18bが設けられている。第2特別図柄保留記憶表示器18bは、有効始動入賞がある毎に、点灯する表示器の数を1増やす。そして、第2特別図柄表示器8bでの可変表示が開始される毎に、点灯する表示器の数を1減らす。
第1可変表示部9aは、第1特別図柄表示器8aによる特別図柄の可変表示時間中に、装飾用(演出用)の図柄としての飾り図柄の可変表示を行う。また、第2可変表示部9bは、第2特別図柄表示器8bによる特別図柄の可変表示時間中に、装飾用の図柄としての飾り図柄の可変表示を行う。飾り図柄の可変表示を行う第1可変表示部9aおよび第2可変表示部9bは、演出制御基板に搭載されている演出制御用マイクロコンピュータによって制御される。以下、第1可変表示部9aにおいて可変表示される識別情報を第1飾り図柄といい、第2可変表示部9bにおいて可変表示される識別情報を第2飾り図柄ということがある。また、第1飾り図柄と第2飾り図柄とを、飾り図柄と総称することがある。なお、第1飾り図柄の種類と第2飾り図柄の種類とは同じ(例えば、ともに0〜9の数字)であってもよいし、種類が異なっていてもよい。種類が異なる場合、一部が異なっていてもよい。一例として、第1飾り図柄の種類は、0〜5の数字と数字以外のキャラクタとを含み、第2飾り図柄の種類は、0〜5の数字と数字以外のキャラクタであって第1飾り図柄のキャラクタとは異なるものとを含むようにしてもよい。
可変表示装置9の表示画面には、第1始動入賞口13に入った有効入賞球数すなわち第1保留記憶数と、可変入賞球装置15が遊技球を受け入れやすくなった状態で形成される第2始動入賞口14に入った有効入賞球数すなわち第2保留記憶数との合計に対応する合計数(合算保留記憶数)を表示する領域(以下、図柄保留記憶表示部18cという。)がある。ここで、合計数は、基本的に第1保留記憶数と第2保留記憶数の合計であるが、例えば、第1可変表示部9aと第2可変表示部9bの表示結果の関係などにより、合計と異なる数が表示される場合がある。なお、この実施の形態では、可変入賞球装置15が遊技球を受け入れやすくなった状態は、可変入賞球装置15が開放状態になったときである。このように、この実施の形態では、第1保留記憶数と第2保留記憶数との合計を、比較的遊技者に視認されやすい図柄保留記憶表示部18cにおいて表示することによって、遊技者に、第1保留記憶数と第2保留記憶数のそれぞれを把握しづらくする。この実施の形態では、第1特別図柄保留記憶表示器18aおよび第2特別図柄保留記憶表示器18bは、それぞれ、図柄保留記憶表示部18cよりも小型のランプやLEDのような4つの表示器で構成されているが、第1保留記憶数と第2保留記憶数とをより把握しづらくするために、他の態様の表示器を用いてもよい。一例として、第1特別図柄保留記憶表示器18aおよび第2特別図柄保留記憶表示器18bをそれぞれ1個の表示器で構成し、保留記憶数に応じて表示色を異ならせたり、表示濃度を異ならせるようにする。
この実施の形態では、表示可能な合算保留記憶数すなわち合算保留記憶数の上限値は8である。特別図柄保留記憶表示部18cは、有効始動入賞がある毎に、点灯する表示領域の数を1増やす。そして、第1特別図柄表示器8aまたは第2特別図柄表示器8bの可変表示が開始される毎に、点灯する表示領域の数を1減らす。または、特別図柄保留記憶表示部18cにおける8つの表示領域のうち、あらかじめ有効始動入賞として決められている色で表示される領域の数を1増やす。そして、第1特別図柄表示器8aまたは第2特別図柄表示器8bの可変表示が開始される毎に、あらかじめ有効始動入賞として決められている色で表示される領域の数を1減らす。
また、この実施の形態では、第1保留記憶数の上限値を4にし、第2保留記憶数の上限値を4にする。従って、第1保留記憶数が4である場合に第1始動入賞口13に遊技球が入賞したときには、その入賞は第1始動条件を成立させない無効始動入賞になる。第1保留記憶数が4未満である場合に第1始動入賞口13に遊技球が入賞したときには、その入賞は第1始動条件を成立させる有効始動入賞(第1有効始動入賞)になる。同様に、第2保留記憶数が4である場合に第2始動入賞口14に遊技球が入賞したときには、その入賞は第2始動条件を成立させない無効始動入賞になる。第2保留記憶数が4未満である場合に第2始動入賞口14に遊技球が入賞したときには、その入賞は第2始動条件を成立させる有効始動入賞(第2有効始動入賞)になる。なお、この例では、第1保留記憶数の上限値を4にし、第2保留記憶数の上限値を4にし、合算保留記憶数の上限値を8にするが、それらの値は一例である。また、上限値を、遊技状態に応じて変更可能であるようにしてもよい。
この実施の形態では、第1始動入賞口13を有する入賞装置が、可変表示装置9の下方に設けられている。第1始動入賞口13に入賞した遊技球は、遊技盤6の背面に導かれ、第1始動口スイッチ13aによって検出される。
また、第1始動入賞口13の下方には、遊技球が入賞可能な第2始動入賞口14を有する可変入賞球装置15が設けられている。第2始動入賞口14に入賞した遊技球は、遊技盤6の背面に導かれ、第2始動口スイッチ14aによって検出される。可変入賞球装置15は、ソレノイド16によって開状態とされる。可変入賞球装置15が開状態になることによって、遊技球が第2始動入賞口14に入賞し易くなり(始動入賞し易くなり)、遊技者にとって有利な状態になる。
なお、この実施の形態では、図1に示すように、第2始動入賞口14の下部にのみ開閉動作を行う可変入賞球装置15が設けられているが、第1始動入賞口13および第2始動入賞口14のいずれの下部にも開閉動作を行う可変入賞球装置が設けられている構成であってもよい。
可変入賞球装置15の下方には、第1特別図柄表示部8aまたは第2特別図柄表示部8bに特定表示結果(大当り図柄)が導出表示された場合に生起する特定遊技状態(大当り遊技状態)においてソレノイド21によって開状態とされる特別可変入賞球装置が設けられている。特別可変入賞球装置は、開閉板20を備え、大入賞口を形成する。大入賞口に入った遊技球はカウントスイッチ23で検出される。
可変表示装置9の下方には、普通図柄表示器10が設けられている。普通図柄表示器10は、普通図柄と呼ばれる複数種類の識別情報(例えば、「○」および「×」)を可変表示する。
遊技球がゲート32を通過しゲートスイッチ32aで検出されると、普通図柄表示器10の表示の可変表示が開始される。この実施の形態では、左右のランプ(点灯時に図柄が視認可能になる)が交互に点灯することによって可変表示が行われ、例えば、可変表示の終了時に左側のランプが点灯すれば当りとなる。そして、普通図柄表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になる。すなわち、可変入賞球装置15の状態は、普通図柄の停止図柄が当り図柄である場合に、遊技者にとって不利な状態から有利な状態に変化する。普通図柄表示器10の近傍には、ゲート32を通過した入賞球数を表示する4つのLEDによる表示部を有する普通図柄保留記憶表示器41が設けられている。ゲート32への遊技球の通過がある毎に、普通図柄保留記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。
なお、この実施の形態では、1つの普通図柄表示器10と1つの可変入賞球装置15が設けられているが、2つの可変入賞球装置を設けた場合に、2つの普通図柄表示器を設けてもよい。
遊技盤6の遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球が取り込まれるアウト口26がある。また、遊技領域7の外側の左右上部には、所定の音声出力として効果音や音声を発声する2つのスピーカ27が設けられている。遊技領域7の外周上部、外周左部および外周右部には、前面枠に設けられた天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cが設けられている。また、左枠ランプ28bの近傍には賞球残数があるときに点灯する賞球ランプ51が設けられ、右枠ランプ28cの近傍には補給球が切れたときに点灯する球切れランプ52が設けられている。
遊技機には、遊技者が打球操作ハンドル5を操作することに応じて駆動モータを駆動し、駆動モータの回転力を利用して遊技球を遊技領域7に発射する打球発射装置(図示せず)が設けられている。打球発射装置から発射された遊技球は、遊技領域7を囲むように円形状に形成された打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。遊技球が第1始動入賞口13に入り第1始動口スイッチ13aで検出されると、第1特別図柄の可変表示を開始できる状態であれば(例えば、大当り遊技終了または前回の可変表示が終了し、第1の開始条件が成立したこと)、第1特別図柄表示部8aにおいて第1特別図柄の可変表示(変動)が開始されるとともに、可変表示部9aにおいて第1飾り図柄の可変表示が開始される。すなわち、第1特別図柄は第1始動入賞口13への入賞に対応する。第1特別図柄の可変表示を開始できる状態でなければ、第1保留記憶数が上限値に達していないことを条件として、特別図柄保留記憶表示部18cに表示される合算保留記憶数(合計数)を1増やす。ただし、この実施の形態では、第1保留記憶数が上限値に達していても、合算保留記憶数が上限値に達していなければ、特別図柄保留記憶表示部18cに表示される合算保留記憶数を1増やす。ただし、その増加分は、あくまで無効始動入賞に対応したものである。以下、増加分を、ダミー増加数ともいう。また、増加分に対応した合算保留記憶数をダミー保留記憶数という。
また、遊技球が第2始動入賞口14に入り第2始動口スイッチ14aで検出されると、第2特別図柄の可変表示を開始できる状態であれば(例えば、大当り遊技終了または前回の可変表示が終了し、第2の開始条件が成立したこと)、第2特別図柄表示部8bにおいて第2特別図柄の可変表示(変動)が開始されるとともに、第2可変表示部9bにおいて第2飾り図柄の可変表示が開始される。すなわち、第2特別図柄は第2始動入賞口14への入賞に対応する。第2特別図柄の可変表示を開始できる状態でなければ、第2保留記憶数が上限値に達していないことを条件として、特別図柄保留記憶表示部18cに表示される合算保留記憶数(合計数)を1増やす。ただし、第2保留記憶数が上限値に達していても、合算保留記憶数が上限値に達していなければ、特別図柄保留記憶表示部18cに表示される合計数を1増やす。ただし、その増加分は、あくまで無効始動入賞に対応したものである。
第1特別図柄表示器8aにおける第1特別図柄の可変表示および第1可変表示部9aにおける第1飾り図柄の可変表示は、所定時間が経過したときに停止する。停止時の第1特別図柄が大当り図柄(特定表示結果)になると、大当り遊技状態に移行する。すなわち、一定時間(例えば29秒)が経過するまで、または、所定個数(例えば、10個)の遊技球が大入賞口に入賞するまで特別可変入賞球装置(大入賞口)が開放される。大入賞口が開放されてから一定期間経過するまで、または、所定個数(例えば、10個)の打球が大入賞口に入賞するまでが大当り遊技状態における1ラウンドである。所定個数の遊技球が大入賞口に入賞すると、または大入賞口が開放されてから一定期間経過すると、継続権が発生し特別可変入賞球装置の開放が再度行われる。継続権の発生は、所定回数(例えば、15ラウンド)許容される。なお、大入賞口にV入賞領域を設け、大入賞口の開放中に打球がV入賞領域に入賞したことを条件に、継続権が発生するようにしてもよい。
第1特別図柄表示器8aにおける第1特別図柄の変動停止時の停止図柄を、確率変動を伴う大当り図柄(特別表示結果:確変図柄、例えば「7」など)にすることに決定された場合には、次に大当りとなる確率が通常状態(通常遊技状態ともいう。)および時短状態(特別図柄および飾り図柄の変動時間が短縮される遊技状態である時間短縮状態、遊技者にとって有利な遊技状態である特別遊技状態の一例)よりも高い確変状態(遊技者にとって有利な特別遊技状態の一例)という遊技者にとってさらに有利な状態になる。なお、第1特別図柄の停止図柄が確変図柄に決定されて確変状態に制御された場合すなわち確変状態に移行した場合には、第1特別図柄表示器8aにおける第1特別図柄が大当り図柄になる確率が高くなるだけでなく、第2特別図柄表示器8bにおける第2特別図柄が大当り図柄になる確率も高くなる。すなわち、第1始動入賞にもとづく大当りの判定だけでなく、第2始動入賞にもとづく大当りの判定においても通常状態よりも高い確率で大当りと判定されることになる。
また、第2特別図柄表示器8bにおける第2特別図柄の可変表示および第2可変表示部9bにおける第2飾り図柄の可変表示は、所定時間が経過したときに停止する。停止時の第2特別図柄が大当り図柄(特定表示結果)になると、大当り遊技状態に移行する。
第2特別図柄表示器8bにおける第2特別図柄の変動停止時の停止図柄を、確率変動を伴う大当り図柄(特別表示結果:確変図柄、例えば「7」など)にすることに決定された場合には、次に大当りとなる確率が通常状態および時短状態における確率よりも高い特別遊技状態に制御される。すなわち、確変状態という遊技者にとってさらに有利な状態になる。なお、第2特別図柄の停止図柄が確変図柄に決定されて大当り遊技状態終了後に特別遊技状態に制御された場合は、第2特別図柄表示器8bにおける第2特別図柄が大当り図柄になる確率が高くなるだけでなく、第1特別図柄表示器8aにおける第1特別図柄が大当り図柄になる確率も高くなる。すなわち、第2始動入賞にもとづく大当りの判定だけでなく、第1始動入賞にもとづく大当りの判定においても通常状態よりも高い確率で大当りと判定されることになる。
特別遊技状態としての確変状態では、上述したように、第1特別図柄表示器8aおよび第2特別図柄表示器8bにおいて可変表示される第1特別図柄および第2特別図柄の停止図柄が大当り図柄(特定表示結果:例えば、0〜9のうちの奇数)になる確率が通常状態より高められる。さらに、普通図柄表示器10において、停止図柄が当り図柄になる確率が通常状態より高められるとともに、可変入賞球装置15における開放時間と開放回数とのうちの一方または双方が通常状態よりも高められ、遊技者にとってさらに有利な状態になる。
なお、確変状態において、第1特別図柄表示器8aおよび第2特別図柄表示器8bにおける第1特別図柄および第2特別図柄の可変表示時間(変動時間)が通常状態よりも短縮されるようにしてもよい。その場合には、頻繁に特別図柄の可変表示が実行されるようになり、そのことからも、所定時間当たりの大当り発生の可能性が高まる。また、確変状態において、普通図柄表示器10における普通図柄の可変表示時間(変動時間)が通常状態よりも短縮されるようにしてもよい。その場合には、第2始動入賞口14への始動入賞がさらに起こりやすくなり、所定期間内での第2特別図柄表示器8bにおける第2特別図柄の可変表示回数が増加して第2特別図柄が大当り図柄になる可能性が通常状態よりも高まり、遊技者にとってさらに有利な状態になる。さらに、確変状態において、普通図柄の停止図柄が当り図柄になる確率を高くしたり、可変入賞球装置15の開放回数多くしたり開放時間を長くするようにしてもよい。
第1特別図柄の停止図柄が確変図柄となったときの特別遊技状態と第2特別図柄の停止図柄が確変図柄となったときの特別遊技状態とで格差をつけるようにしてもよい。例えば、第1特別図柄の停止図柄が確変図柄となったときの特別遊技状態を確変状態にし、第2特別図柄の停止図柄が確変図柄となったときの特別遊技状態を時短状態(大当りが発生する確率は高くならないが、特別図柄の可変表示時間が短縮される遊技状態)にするようにして、第1特別図柄の停止図柄が確変図柄となったときの方が第2特別図柄の停止図柄が確変図柄となったときよりも遊技者にとって有利な状態になるように構成してもよい。そのように構成することによって、遊技者に与えられる興趣をさらに向上させることができる。
第1特別図柄表示器8aにおける第1特別図柄の可変表示と、第1可変表示部9aにおける第1飾り図柄の可変表示とは同期している。また、第2特別図柄表示器8bにおける第2特別図柄の可変表示と、第2可変表示部9bにおける第2飾り図柄の可変表示とは同期している。ここで、同期とは、可変表示の開始時点および終了時点が同じであって、可変表示の期間が同じであることをいう。また、第1特別図柄表示器8aにおいて大当り図柄が停止表示されるときには、第1可変表示部9aにおいて大当り図柄に対応する飾り図柄が停止表示される。第2特別図柄表示器8bにおいて大当り図柄が停止表示されるときには、第2可変表示部9bにおいて大当り図柄に対応する飾り図柄が停止表示される。
さらに、第1特別図柄表示器8aにおいて確変図柄が停止表示されるときには、第1可変表示部9aにおいて確変図柄を想起させるような飾り図柄(例えば「7」)が停止表示される。第2特別図柄表示器8bにおいて確変図柄が停止表示されるときには、第2可変表示部9bにおいて確変図柄を想起させるような特別の飾り図柄(例えば「7」)が停止表示される。
また、背景図柄表示部9cでは、第1特別図柄表示器8aにおいて第1特別図柄が可変表示されているときに、第1特別図柄の可変表示に対応した演出が実行される。例えば、背景図柄表示部9cにおける3つの表示領域において背景図柄が可変表示される。リーチ演出を行う場合には、例えば、可変表示中に左右の背景図柄が停止表示される。そして、後述するように例外はあるが、基本的に第1特別図柄表示器8aにおいて第1特別図柄の停止図柄が導出表示されるときに、背景図柄表示部9cにおいて背景図柄の停止図柄が導出表示される(3つの表示領域において背景図柄が最終停止される。)。第1特別図柄の停止図柄が大当り図柄である場合には、背景図柄の停止図柄は、第1特別図柄の停止図柄が大当り図柄であることを遊技者に想起させるような背景図柄(例えば、左中右が揃った状態の3つの背景図柄)になる。以下、そのような背景図柄も、大当り図柄という。
第2特別図柄表示器8bにおいて第2特別図柄が可変表示されているときに、第2特別図柄の可変表示に対応した演出が実行される。例えば、背景図柄表示部9cにおける3つの表示領域において背景図柄が可変表示される。
また、第1特別図柄表示器8aにおいて第1特別図柄が可変表示され、同時に第2特別図柄表示器8bにおいて第2特別図柄が可変表示されているときには、第1特別図柄と第2特別図柄とのうちのいずれかの可変表示に対応した演出が実行される。
そして、第1特別図柄または第2特別図柄が単独で可変表示されている場合には、第1特別図柄または第2特別図柄の可変表示が終了し第1特別図柄または第2特別図柄の停止図柄が導出表示されるときに、背景図柄の可変表示は終了し、背景図柄の停止図柄が導出表示される。また、第1特別図柄および第2特別図柄が同時に可変表示されている場合、具体的には、第1特別図柄および第2特別図柄が同時に可変表示されている期間が存在する場合には、遅く可変表示が終了する方の特別図柄が停止表示されるときに、背景図柄の可変表示は終了する。ただし、この実施の形態では、例外的に、早く可変表示が終了する方の特別図柄が停止表示されるときに、背景図柄の可変表示が終了することもある。
次に、リーチ表示態様(リーチ)について説明する。この実施形態におけるリーチ表示態様(リーチ)とは、3つの背景図柄のうち停止した背景図柄が大当り図柄の一部を構成しているときに未だ停止していない背景図柄については可変表示(変動表示)が行われていること、および全てまたは一部の背景図柄が大当り図柄の全てまたは一部を構成しながら同期して変動表示している状態である。
例えば、背景図柄表示部9cにおける左、中、右の表示領域のうち左、右の表示領域には大当り図柄の一部になる飾り図柄(例えば、「7」)が停止表示されている状態で中の表示領域は未だ変動表示が行われている状態、および表示領域の全てまたは一部の図柄が大当り図柄の全てまたは一部を構成しながら同期して変動表示している状態(例えば、背景図柄表示部9cにおける左、中、右の表示領域の全てに変動表示が行われ、常に同一の図柄が揃っている状態で変動表示が行われている状態)がリーチ表示態様またはリーチになる。
また、リーチの際に、通常と異なる演出がランプや音で行われる。その演出と背景図柄表示部9cにおけるリーチ表示態様とをリーチ演出という。また、リーチの際に、キャラクタ(人物等を模した演出表示であり、背景図柄とは異なるもの)を表示させたり、背景図柄表示部9cの背景(図柄およびキャラクタとは異なる地の色や模様など)の表示態様(例えば、色等)を変化させたりすることがある。
図2は、主基板(遊技制御基板)31における回路構成の一例を示すブロック図である。なお、図2には、払出制御基板37および演出制御基板80等も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する遊技制御用マイクロコンピュータ(遊技制御手段に相当)560が搭載されている。遊技制御用マイクロコンピュータ560は、ゲーム制御(遊技進行制御)用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段としてのRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54およびRAM55は遊技制御用マイクロコンピュータ560に内蔵されている。すなわち、遊技制御用マイクロコンピュータ560は、1チップマイクロコンピュータである。1チップマイクロコンピュータには、少なくともRAM55が内蔵されていればよく、ROM54は外付けであっても内蔵されていてもよい。また、I/Oポート部57は、外付けであってもよい。
なお、遊技制御用マイクロコンピュータ560においてCPU56がROM54に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ560(またはCPU56)が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているマイクロコンピュータについても同様である。
また、ゲートスイッチ32a、第1始動口スイッチ13a、第2始動口スイッチ14a、およびカウントスイッチ23からの検出信号を遊技制御用マイクロコンピュータ560に与える入力ドライバ回路58も主基板31に搭載され、可変入賞球装置15を開閉するソレノイド16、特別可変入賞球装置を開閉するソレノイド21を遊技制御用マイクロコンピュータ560からの指令に従って駆動する出力回路59も主基板31に搭載され、電源投入時に遊技制御用マイクロコンピュータ560をリセットするためのシステムリセット回路(図示せず)や、大当り遊技状態の発生を示す大当り情報等の情報出力信号をホールコンピュータ等の外部装置に対して出力する情報出力回路(図示せず)も主基板31に搭載されている。なお、主基板31には、試験信号を遊技機外部に出力するための試験信号出力回路(図示せず)も設けられている。
この実施の形態では、演出制御基板80に搭載されている演出制御手段(演出制御用マイクロコンピュータで構成される。)が、中継基板77を介して遊技制御用マイクロコンピュータ560からの演出制御コマンドを受信し、飾り図柄を可変表示する第1可変表示部9aおよび第2可変表示部9bと、背景図柄を可変表示する背景図柄表示部9cと、特別図柄保留記憶表示部18cとの表示制御を行う。
図3は、中継基板77、演出制御基板80、ランプドライバ基板35および音声出力基板70の回路構成例を示すブロック図である。なお、図3に示す例では、ランプドライバ基板35および音声出力基板70には、マイクロコンピュータは搭載されていないが、マイクロコンピュータを搭載してもよい。また、ランプドライバ基板35および音声出力基板70を設けずに、演出制御に関して演出制御基板80のみを設けてもよい。
演出制御基板80は、演出制御用CPU101およびRAMを含む演出制御用マイクロコンピュータ100を搭載している。なお、RAMは外付けであってもよい。演出制御基板80において、演出制御用CPU101は、内蔵または外付けのROM(図示せず)に格納されたプログラムに従って動作し、中継基板77を介して入力される主基板31からの取込信号(演出制御INT信号)に応じて、入力ドライバ102および入力ポート103を介して演出制御コマンドを受信する。また、演出制御用CPU101は、演出制御コマンドにもとづいて、VDP(ビデオディスプレイプロセッサ)109に、可変表示装置9の表示制御を行わせる。
演出制御コマンドおよび演出制御INT信号は、演出制御基板80において、まず、入力ドライバ102に入力する。入力ドライバ102は、中継基板77から入力された信号を演出制御基板80の内部に向かう方向にしか通過させない(演出制御基板80の内部から中継基板77への方向には信号を通過させない)信号方向規制手段としての単方向性回路でもある。
中継基板77には、主基板31から入力された信号を演出制御基板80に向かう方向にしか通過させない(演出制御基板80から中継基板77への方向には信号を通過させない)信号方向規制手段としての単方向性回路74が搭載されている。単方向性回路として、例えばダイオードやトランジスタが使用される。図3には、ダイオードが例示されている。また、単方向性回路は、各信号毎に設けられる。さらに、単方向性回路である出力ポート571を介して主基板31から演出制御コマンドおよび演出制御INT信号が出力されるので、中継基板77から主基板31の内部に向かう信号が規制される。すなわち、中継基板77からの信号は主基板31の内部(遊技制御用マイクロコンピュータ560側)に入り込まない。なお、出力ポート571は、図2に示されたI/Oポート部57の一部である。また、出力ポート571の外側(中継基板77側)に、さらに、単方向性回路である信号ドライバ回路が設けられていてもよい。
さらに、演出制御用CPU101は、入出力ポート105を介してランプドライバ基板35に対してランプを駆動する信号を出力する。また、演出制御用CPU101は、入出力ポート104を介して音声出力基板70に対して音番号データを出力する。
ランプドライバ基板35において、ランプを駆動する信号は、入出力ドライバ351を介してランプドライバ352に入力される。ランプドライバ352は、ランプを駆動する信号を増幅して天枠ランプ28a、左枠ランプ28b、右枠ランプ28cなどの枠側に設けられている各ランプに供給する。また、枠側に設けられている装飾ランプ25に供給する。
音声出力基板70において、音番号データは、入出力ドライバ702を介して音声合成用IC703に入力される。音声合成用IC703は、音番号データに応じた音声や効果音を発生し増幅回路705に出力する。増幅回路705は、音声合成用IC703の出力レベルを、ボリューム706で設定されている音量に応じたレベルに増幅した音声信号をスピーカ27に出力する。音声データROM704には、音番号データに応じた制御データが格納されている。音番号データに応じた制御データは、所定期間(例えば飾り図柄の変動期間)における効果音または音声の出力態様を時系列的に示すデータの集まりである。
なお、ランプを駆動する信号および音番号データは、演出制御用CPU101とランプドライバ基板35および音声出力基板70との間で、双方向通信(信号受信側から送信側に応答信号を送信するような通信)によって伝達される。
演出制御用CPU101は、受信した演出制御コマンドに従ってキャラクタROM(図示せず)から必要なデータを読み出す。キャラクタROMは、可変表示装置9に表示される画像の中でも使用頻度の高いキャラクタ画像データ、具体的には、人物、文字、図形または記号等(飾り図柄を含む)をあらかじめ格納しておくためのものである。演出制御用CPU101は、キャラクタROMから読み出したデータをVDP109に出力する。VDP109は、演出制御用CPU101から入力されたデータにもとづいて表示制御を実行する。
この実施の形態では、可変表示装置9の表示制御を行うVDP109が演出制御基板80に搭載されている。VDP109は、演出制御用マイクロコンピュータ100とは独立したアドレス空間を有し、そこにVRAMをマッピングする。VRAMは、VDPによって生成された画像データを展開するためのバッファメモリである。そして、VDP109は、VRAM内の画像データを可変表示装置9に出力する。
なお、この実施の形態では、演出装置を制御する回路が搭載された基板として、演出制御基板80、音声出力基板70およびランプドライバ基板35が設けられているが、演出装置を制御する回路を1つの基板に搭載してもよい。さらに、可変表示装置9を制御する回路が搭載された第1の演出制御基板(表示制御基板)と、その他の演出装置(ランプ、LED、スピーカ27など)を制御する回路が搭載された第2の演出制御基板との2つの基板を設けるようにしてもよい。また、この実施の形態では、遊技制御用マイクロコンピュータ560は、演出制御用マイクロコンピュータ100に対して直接コマンドを送信していたが、他の基板(例えば、図3に示す音声出力基板70やランプドライバ基板35など)を経由して演出制御基板80における演出制御用マイクロコンピュータ100に送信されるようにしてもよい。その場合、他の基板においてコマンドが単に通過するようにしてもよいし、音声出力基板70やランプドライバ基板35にマイクロコンピュータ等の制御手段を搭載し、制御手段がコマンドを受信したことに応じて音声制御やランプ制御に関わる制御を実行し、さらに、受信したコマンドを、そのまま、または例えば簡略化したコマンドに変更して、可変表示装置9を制御する演出制御用マイクロコンピュータ100に送信するようにしてもよい。また、第1の演出制御基板と第2の演出制御基板との2つの基板を設けた場合に、遊技制御用マイクロコンピュータ560からの演出に関するコマンドは第2の演出制御基板に対して送信され、第2の演出制御基板から第1の演出制御基板に対してコマンドがそのまま送信されたり、加工(例えば、コマンドの形態や内容を変えたり、簡略化したり、必要なコマンドのみを選択)した後に送信されるように構成してもよい。
図4は、主基板31における回路構成および主基板31から演出制御基板80に送信される演出制御コマンドの信号線を示すブロック図である。図4に示すように、この実施の形態では、主基板31が搭載する遊技制御用マイクロコンピュータ560は、演出制御信号送信用の8本の信号線CD0〜CD7を用いて、演出制御コマンドを演出制御基板80に送信する。また、主基板31と演出制御基板80との間には、演出制御コマンドの取込を指示する演出制御INT信号(ストローブ信号)の信号線も配線されている。
主基板31には、図4に示すように、各種スイッチからの配線が接続されている。なお、図4では第1始動口スイッチ13aおよび第2始動口スイッチ14aのみが示されているが、主基板31には、大入賞口である特別可変入賞球装置への遊技球の入賞等を検出するためのスイッチからの配線も接続されている。さらに、主基板31には、可変入賞球装置15を開閉するソレノイド16、特別可変入賞球装置を開閉するソレノイド21への配線が接続されている。
遊技制御用マイクロコンピュータ560は、クロック回路501、システムリセット手段として機能するリセットコントローラ502、乱数回路503a,503b、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用されるRAM55、プログラムに従って動作するCPU56、CPU56に割込要求信号を送出するCTC504、払出制御基板37や演出制御基板80と非同期シリアル通信を行うシリアル通信回路505およびI/Oポート部57を内蔵する。
なお、この実施の形態では、シリアル通信回路505を内蔵するマイクロコンピュータを搭載した基板(例えば、主基板31)とは異なる基板(例えば、払出制御基板37)のマイクロコンピュータとの通信にシリアル通信回路505を用いる場合を説明するが、シリアル通信回路505は、シリアル通信回路505を内蔵するマイクロコンピュータを搭載した基板が備える別のマイクロコンピュータとシリアル通信を行ってもよい。例えば、同じ構成の2つのマイクロコンピュータが同じ基板に搭載されている場合に、各マイクロコンピュータが内蔵するシリアル通信回路が相互にシリアル通信を行ってもよい。
クロック回路501は、システムクロック信号を27(=128)分周して生成した所定の周期の基準クロック信号CLKを、各乱数回路503a,503bに出力する。リセットコントローラ502は、ローレベルの信号が一定期間入力されたとき、CPU56および各乱数回路503a,503bに所定の初期化信号を出力して、遊技制御用マイクロコンピュータ560をシステムリセットする。
また、この実施の形態では、図4に示すように、遊技制御用マイクロコンピュータ560は、発生可能な乱数の値の範囲が異なる2つの乱数回路503a,503bを搭載する。乱数回路503aは、12ビットの疑似乱数を発生する乱数回路(以下、12ビット乱数回路ともいう)である。12ビット乱数回路503aは、12ビットで発生できる範囲(すなわち、0から4095までの範囲)の値の乱数を発生する機能を備える。また、乱数回路503bは、16ビットの疑似乱数を発生する乱数回路(以下、16ビット乱数回路ともいう)である。16ビット乱数回路503bは、16ビットで発生できる範囲(すなわち、0から65535までの範囲)の値の乱数を発生する機能を備える。なお、この実施の形態では、遊技制御用マイクロコンピュータ560が2つの乱数回路を内蔵する場合を説明するが、遊技制御用マイクロコンピュータ560は、3以上の乱数回路を内蔵してもよい。また、この実施の形態では、12ビット乱数回路503aおよび16ビット乱数回路503bを包括的に表現する場合、または、12ビット乱数回路503aと16ビット乱数回路503bとのうちいずれかを指す場合に、乱数回路503という。
次に、乱数回路503の構成について説明する。図5は、乱数回路503の構成例を示すブロック図である。なお、この実施の形態において、12ビット乱数回路503aと16ビット乱数回路503bとの基本的な構成は同じである。図5に示すように、乱数回路503は、カウンタ521、比較器522、カウント値順列変更回路523、クロック信号出力回路524、カウント値更新信号出力回路525、乱数値読取信号出力回路526、乱数更新方式選択信号出力回路527、セレクタ528、乱数回路起動信号出力回路530、乱数値記憶回路531、反転回路532、ラッチ信号生成回路533およびタイマ回路534とを含む。
この実施の形態では、乱数回路503は、複数種類の識別情報の可変表示の表示結果を特定の表示結果とするか否か(例えば、第1特別図柄表示器8aおよび第2特別図柄表示器8bの表示図柄の組み合わせを大当り図柄の組み合わせとするか否か)を判定するための大当り判定用の乱数を発生する。そして、CPU56は、乱数回路503が発生した乱数にもとづいて特定の表示結果とすると判定すると、遊技状態を遊技者にとって有利な特定遊技状態(例えば、大当り遊技状態)に移行させる。なお、乱数回路503が発生した乱数を、特別図柄の変動パターンを決定する変動パターン決定用乱数など、大当り図柄以外の判定用乱数として用いてもよい。
カウンタ521は、セレクタ528によって選択された所定の信号を入力し、セレクタ528から入力する信号に応答してカウント値Cを出力する。この場合、カウンタ521は、所定の初期値を入力し、カウント値Cを一定の規則に従って初期値から所定の最終値まで循環的に更新して出力する。また、カウンタ521は、カウント値Cを最終値まで更新すると、カウント値Cを最終値まで更新した旨を示す通知信号をCPU56に出力する。この実施の形態では、カウンタ521から通知信号が出力されると、CPU56によって初期値が更新される。
この実施の形態において、カウンタ521は、セレクタ528から信号を入力するごとに(セレクタ528からの信号における立ち上がりエッヂが入力されるごとに)、カウント値Cを「0」から「4095」まで1ずつカウントアップする。また、カウンタ521は、カウント値Cを「4095」までカウントアップすると、カウント値Cを最終値まで更新した旨を示す通知信号をCPU56に出力する。すると、CPU56は、カウンタ521から通知信号を入力し、初期値を更新する。そして、カウンタ521は、CPU56によって更新された初期値から「4095」まで、再びカウント値Cをカウントアップする。また、「4095」までカウントアップすると、カウンタ521は、再び「0」からカウントを開始する。そして、カウンタ521は、更新後の初期値の1つ前の値(最終値)までカウントアップすると、通知信号をCPU56に出力する。なお、この実施の形態では、比較器522は、後述するように、全てのカウント値を入力すると通知信号をカウンタ521に出力する。この場合、カウンタ521は、比較器522から通知信号を入力すると、カウント値をリセットして「0」にする。
なお、比較器522は、入力したカウント値が乱数最大値設定レジスタ535に設定されている乱数最大値より大きいか否かを判断し、カウント値が乱数最大値より大きい(乱数最大値を越えた)と判断すると、通知信号をカウンタ521に出力してもよい。この場合、例えば、比較器522は、カウント値が乱数最大値を越えたと判断すると、クロック信号出力回路524が次に乱数発生用クロック信号SI1を出力する前に、通知信号をカウンタ521に出力する。例えば、乱数最大値設定レジスタ535に乱数最大値「256」が設定されている場合を考える。この場合、カウンタ521が「0」から「256」までカウントアップし、さらにカウント値「257」を出力すると、比較器522は、入力したカウント値「257」が乱数最大値「256」を越えたと判断し、カウンタ521に通知信号を出力する。比較器522から通知信号を入力すると、カウンタ521は、クロック信号出力回路524からの乱数発生用クロック信号SI1の入力を待つことなく、カウント値を「258」に更新し出力する。以上の処理を繰り返し実行することによって、比較器522は、カウント値「257」から「4095」まで入力している間、カウント値が乱数最大値を越えていると判断して、繰り返しカウンタ521に通知信号を出力する。そして、カウンタ521は、比較器522から通知信号を入力している間、クロック信号出力回路524からの乱数発生用クロック信号SI1の入力を待つことなく、カウント値を繰り返し更新し出力する。そのようにすることによって、クロック信号出力回路524が次に乱数発生用クロック信号SI1を出力するまでの間に、「257」から「4095」までカウント値を高速にカウントアップさせるように制御し、「257」から「4095」までの乱数値を読み飛ばす(乱数値記憶回路531に記憶させない)ように制御する。
カウント値順列変更回路523は、カウント値順列変更レジスタ(RSC)536、更新規則選択レジスタ(RRC)542および更新規則メモリ543を含む。カウント値順列変更レジスタ536は、カウンタ521がカウントアップするカウント値Cの更新順である順列(初期値から最終値までの並び順)を変更させるためのカウント値順列変更データ「01h」を格納する。カウント値順列変更回路523は、カウント値順列変更レジスタ536に数値順列変更データ「01h」が格納されているとき、カウンタ521がカウントアップして更新するカウント値Cの順列を、カウント値順列変更データ「01h」が格納されていないときとは異なる順列に変更する。「h」は、16進数であることを示す。この場合、カウント値順列変更回路523は、数値順列変更データ「01h」が格納されているとき、カウント値の順列の変更に用いる更新規則を切り換える。また、カウント値の順列の変更に用いる更新規則を切り換えた後に、カウンタ521がカウント値の更新を開始すると、カウント値順列変更レジスタ536のカウント値順列変更データは、CPU56によって、「01h」から初期値である「0(=00h)」に戻される(クリアされる)。
なお、CPU56によってカウント値順列変更データをクリアするのでなく、乱数回路503側でカウント値順列変更データをクリアするようにしてもよい。例えば、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」が書き込まれたことにもとづいて、更新規則選択レジスタ(RRC)542にレジスタ値が設定されると、カウント値順列変更回路523は、カウント値順列変更レジスタ536のレジスタ値をクリアするようにしてもよい。
図6は、更新規則選択レジスタ(RRC)542の例を示す説明図である。更新規則選択レジスタ542は、カウンタ521が出力するカウント値の並び順の並べ替え(順列の変更)に用いる更新規則を設定するレジスタである。この実施の形態では、更新規則選択レジスタ542にレジスタ値が設定されることによって、カウンタ521が出力するカウント値の順列の変更に用いる更新規則が設定される。図6に示すように、更新規則選択レジスタ542は、8ビットレジスタであり、初期値が「0(=00h)」に設定されている。また、更新規則選択レジスタ542は、ビット0〜ビット3が書込および読出ともに可能な状態に構成されている。また、更新規則選択レジスタ542は、ビット4〜ビット7が書込および読出ともに不可能な状態に構成されている。従って、更新規則選択レジスタ542のビット4〜ビット7に値を書き込む制御を行っても無効とされ、ビット4〜ビット7から読み出す値は全て「0(=0000b)」である。「b」は、2進数であることを示す。
更新規則選択レジスタ542の値(レジスタ値)は、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」が書き込まれたことに応じて、レジスタ値が「0(=00h)」から「15(=0Fh)」まで循環的に更新される。すなわち、カウント値順列変更レジスタ536にカウント値順列データ「01h」が書き込まれるごとに、更新規則選択レジスタ542のレジスタ値は、「0」から「1」ずつ加算され、「15」になった後「0」に戻る。
図7は、更新規則メモリ543の例を示す説明図である。図7に示すように、更新規則メモリ543は、更新規則選択レジスタ542の値(レジスタ値)と、カウント値の更新規則とを対応付けて格納している。図7に示す例では、例えば、更新規則選択レジスタ542にレジスタ値1が設定されている場合、更新規則Bを用いて、カウンタ521が出力するカウント値の順列が変更されることが分かる。なお、図7において、更新規則Aは、カウンタ521がカウント値Cを更新する規則と同一の更新規則であり、レジスタ値「0」に対応づけて更新規則メモリ543に格納される。また、更新規則メモリ543には、カウンタ521がカウント値Cを更新する更新規則とは異なる更新規則B〜Pが、レジスタ値「1」〜「15」に対応づけて格納される。
カウント値順列変更回路523は、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」が書き込まれている場合、まず、カウンタ521からカウント値の最終値「4095」が最初に入力されるまで、現在設定されている更新規則に従って、そのままカウント値を出力する。そして、カウント値順列変更回路523は、カウンタ521からカウント値の最終値「4095」を入力すると、カウント値の更新規則を変更する。なお、CPU56によって初期値が変更されている場合には、カウント値順列変更回路523は、カウンタ521から変更後の最終値(初期値の1つ前の値)まで入力すると、カウント値の更新規則を変更することになる。
カウント値順列変更回路523は、更新規則選択レジスタ542のレジスタ値に対応する更新規則を更新規則メモリ543から選択し、カウント値の順列の変更に用いる更新規則として設定する。また、カウント値順列変更回路523は、カウンタ521によって再び初期値「0」から順にカウント値の更新が開始されると、設定した更新規則に従って、カウント値の初期値から最終値までの順列を変更する。なお、CPU56によって初期値が変更されている場合には、カウント値順列変更回路523は、カウンタ521によって変更後の初期値から順にカウント値の更新が開始されると、設定した更新規則に従って、カウント値の初期値から最終値までの順列を変更することになる。そして、カウント値順列変更回路523は、変更した順列に従ってカウント値を出力する。
なお、この実施の形態では、後述する乱数最大値設定レジスタ535に乱数最大値が設定されていることによって、発生させる乱数の最大値が制限されている場合、カウント値順列変更回路523は、カウント値Cを乱数最大値以下に制限して順列を変更して出力する。例えば、乱数最大値設定レジスタ535に乱数最大値「256」が設定されているものとし、カウント値順列変更回路523が、更新規則Aから更新規則Bに変更して、カウント値の順列を変更するものとする。この場合、カウント値順列変更回路523は、比較器522の乱数最大値設定レジスタ535に設定されている乱数最大値「256」にもとづいて、更新規則Bに従って、カウント値の順列を「256→255→・・・→0」に変更して出力する。
以上のように、カウント値順列変更回路523は、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」が書き込まれている場合、更新規則を切り替えて用いることによって、カウント値Cの順列を変更して出力する。そのため、乱数回路503が生成する乱数のランダム性を向上させることができる。
図8は、カウント値順列変更回路523が、カウンタ521が出力するカウント値の順列を変更する場合の例を示す説明図である。図8に示すように、CPU56は、所定のタイミングで、カウント値順列変更データ「01h」をカウント値順列変更レジスタ536に書き込む。すると、更新規則選択レジスタ542のレジスタ値が1加算される。例えば、更新規則選択レジスタ542のレジスタ値が「0」から「1」に更新される。レジスタ値が更新されると、カウント値順列変更回路523は、カウンタ521から最初にカウント値の最終値「4095」が入力されるまで、更新前のレジスタ値「0」に対応する「更新規則A」に従ってカウント値を更新して出力する。このとき、カウント値順列変更回路523は、更新規則Aに従って、「0→1→・・・→4095」の順列でカウント値を出力する。
カウンタ521からカウント値の最終値「4095」が入力されると、カウント値順列変更回路523は、更新規則メモリ543から、更新後のレジスタ値「1」に対応する「更新規則B」を選択して設定する。カウント値順列変更回路523は、カウンタ521から再び初期値「0」以降のカウント値の入力を開始すると、選択設定した「更新規則B」に従って、カウント値の順列を変更して出力する。この実施の形態では、カウント値順列変更回路523は、順列を「0→1→・・・→4095」から「4095→4094→・・・→0」に変更して、カウント値を出力する。
その後、カウント値順列変更レジスタ536は、後述するように、カウント値順列変更回路523が切り替え後の更新規則に従ってカウント値の更新動作を開始したことに応じてリセットされる。そして、次にカウント値順列変更データ「01h」がカウント値順列変更レジスタ536に書き込まれるまで、カウント値順列変更回路523は、「4095→4094→・・・→0」のままの順列で、カウント値を出力し続ける。
CPU56によってカウント値順列変更データ「01h」がカウント値順列変更レジスタ536に再度書き込まれると、カウント値順列変更レジスタ536のレジスタ値が「1」から「2」に更新される。そして、カウンタ521からカウント値の最終値「4095」を入力すると、カウント値順列変更回路523は、更新規則メモリ543から、レジスタ値「2」に対応する「更新規則C」を選択して設定する。カウント値順列変更回路523は、カウンタ521から再び初期値「0」以降のカウント値の入力を開始すると、選択設定した「更新規則C」に従って、カウント値の順列を更新して出力する。この実施の形態では、カウント値順列変更回路523は、順列を「4095→4094→・・・→0」から「1→3→…→4095→0→・・・→4094」に変更して、カウント値を出力する。
以上のように、カウント値順列変更レジスタ536をリセットした後、カウント値順列データ「01h」をカウント値順列変更レジスタ536に再度書き込むことによって、カウント値の順列をさらに変更することができる。
図9は、カウント値順列変更レジスタ(RSC)536の例を示す説明図である。カウント値順列変更レジスタ536は、カウンタ521がカウントアップするカウント値の順列を変更させるためのカウント値順列変更データ「01h」を設定するレジスタである。図9に示すように、カウント値順列変更レジスタ536は、読出可能な8ビットレジスタであり、初期値が「0(=00h)」に設定されている。また、カウント値順列変更レジスタ536は、ビット0だけが書込および読出ともに可能な状態に構成されている。すなわち、カウント値順列変更レジスタ536は、ビット1〜ビット7が書込および読出ともに不可能な状態に構成されている。従って、カウント値順列変更レジスタ536のビット1〜ビット7に値を書き込む制御を行っても無効とされ、ビット1〜ビット7から読み出す値は全て「0(=0000000b)」である。
なお、カウント値順列変更レジスタ536の値は、カウント値順列変更回路523が切り替え後の更新規則に従ってカウント値の更新動作を開始したことに応じて、CPU56によってリセットされる。この場合、CPU56は、カウント値順列変更レジスタ536に書き込まれている値を、カウント値順列変更データ「01h」から初期値である「0(=00h)」に戻す。
比較器522は、ランダムRの最大値(乱数最大値)を指定するための乱数最大値設定データを格納する乱数最大値設定レジスタ(RMX)535を備える。比較器522は、乱数最大値設定レジスタ535に格納されている乱数最大値設定データに示される乱数最大値に従って、カウンタ521が更新するカウント値の更新範囲を制限する。この実施の形態では、比較器522は、カウンタ521から入力するカウント値と乱数最大値設定レジスタ535に格納されている乱数最大値設定データ(例えば「00FFh」)に示される乱数最大値(例えば「256」)とを比較する。そして、比較器522は、入力したカウント値が乱数最大値以下であると判断すると、入力したカウント値を乱数値記憶回路531に出力する。
この実施の形態では、比較器522は、具体的には、以下のような制御を行う。比較器522は、カウント値の初期値更新の際に、CPU56からカウント値の初期値をもらい、初期値から乱数最大値までのカウント値の個数を求める。例えば、カウント値の初期値が「157」であり乱数最大値が「256」である場合、比較器522は、初期値から乱数最大値までのカウント値の個数を「100個」と求める。また、比較器522は、カウント値順列変更回路523からカウント値を入力するに従って、初期値からカウント値をいくつ入力したかをカウントアップする。初期値からカウント値を入力した回数が「100回」に達すると、比較器522は、初期値「157」から最大値「256」までの全てのカウント値を入力したと判断する。そして、比較器522は、全てのカウント値を入力した旨の通知信号をカウンタ521に出力する。カウント値の個数で判断することによって、カウント値順列変更回路523によってカウント値の順列が変更されている場合であっても、比較器522は、カウント値の更新範囲を乱数最大値以下に制限し、全てのカウント値を入力した際にカウンタ521に通知信号を出力することができる。
カウント値の更新範囲を比較器522が制限する動作について説明する。なお、この実施の形態では、カウント値順列変更回路523が更新規則Aを選択し、乱数最大値設定レジスタ535に乱数最大値「256」が設定されている場合を説明する。
カウンタ521が「0」から「256」までカウント値を更新している間、カウント値順列変更回路523は、乱数最大値設定レジスタ535に設定されている乱数最大値「256」にもとづいて、更新規則Aに従って、「0」から「256」までのカウント値をそのまま比較器522に出力する。この場合、カウント値順列変更回路523は、比較器522から乱数最大値「256」の値をもらい、カウンタ521から入力するカウント値が乱数最大値より大きいか否かを判断し、更新規則が変更されているとき(例えば、更新規則B)であっても、乱数最大値設定レジスタ535に設定されている乱数最大値「256」にもとづいて、「257」から「4095」までのカウント値を比較器522に出力しない。カウンタ521は、例えば、初期値が「0」と設定されているときに、最終値「256」までカウント値を更新すると、通知信号をCPU56に出力する。通知信号を出力すると、CPU56によって、カウンタ521のカウント値の初期値が変更される。この実施の形態では、CPU56によって、初期値が「50」に変更される。
なお、カウント値が乱数最大値「256」より大きいか否かをカウント値順列変更回路523が判断するのでなく、比較器522が判定するようにしてもよい。この場合、例えば、比較器522は、カウント値が乱数最大値設定レジスタ535に設定されている乱数最大値より大きいか否かを判断し、カウント値が乱数最大値より大きいと判断すると、通知信号をカウンタ521に出力する。そして、比較器522は、カウント値が乱数最大値を超えたと判断すると、クロック信号出力回路524が次に乱数発生用クロック信号SI1を出力する前に、通知信号をカウンタ521に出力する。そのようにすることによって、比較器522は、クロック信号出力回路524が次に乱数発生用クロック信号SI1を出力するまでの間に、「257」から「4095」までカウント値を高速にカウントアップさせるようにカウンタ521を制御する。そのようにすることによって、カウント値順列変更回路523からの値が「257」未満のときだけカウント値を乱数値記憶回路531に出力するようにし、カウント値順列変更回路523からの値が「257」以上のときにはカウント値を高速で更新させるようにすることができる。
更新規則Aにもとづいて、カウント値順列変更回路523から、「0」から「255」までカウント値を入力している間、比較器522は、入力するカウント値が乱数最大値「256」以下であるので、入力したカウント値をそのまま乱数値記憶回路531に出力する。次に、カウント値順列変更回路523から入力するカウント値が「256」に達すると、比較器522は、入力したカウント値を乱数値記憶回路531に出力するとともに、初期値から最大値までの全てのカウント値を入力した旨の通知信号をカウンタ521に出力する。具体的には、比較器522は、カウント値の初期値変更の際に、CPU56からカウント値の初期値(この実施の形態では、「0」)を入力し、初期値「0」から乱数最大値(この実施の形態では、「256」)までのカウント値の個数(この実施の形態では、「257個」)を求める。そして、カウント値順列変更回路523から入力したカウント値の個数が257個に達すると、全てのカウント値を入力した旨の通知信号をカウンタ521に出力する。なお、この実施の形態では、CPU56によって初期値が「50」に変更されるので、カウンタ521は、比較器522から通知信号を入力しても、カウント値をリセットすることなく、変更後の初期値「50」からカウント値の更新を行う。
カウンタ521が変更後の初期値「50」から「256」までカウント値を更新している間、カウント値順列変更回路523は、乱数最大値設定レジスタ535に設定されている乱数最大値「256」にもとづいて、更新規則Aに従って、「50」から「256」までのカウント値をそのまま比較器522に出力する。また、カウント値順列変更回路523は、乱数最大値設定レジスタ535に設定されている乱数最大値「256」にもとづいて、「257」から「4095」までのカウント値を比較器522に出力せず、カウンタ521の更新するカウント値が1周したとき(257回更新したとき)に、カウント値順列変更レジスタ536にカウント値順列変更データが書き込まれた場合には、カウント値順列変更回路523は、カウント値の順列を変更して出力する。例えば、更新規則が更新規則Bに変更された場合、カウント値順列変更回路523は、カウント値の順列を「256→255→・・・50」に変更して出力する。
カウント値順列変更回路523から、「256」から「50」までカウント値を入力している間、比較器522は、入力したカウント値をそのまま乱数値記憶回路531に出力する。次に、カウント値順列変更回路523から入力するカウント値が「50」に達すると、比較器522は、入力したカウント値を乱数値記憶回路531に出力するとともに、初期値から最大値までの全てのカウント値を入力した旨の通知信号をカウンタ521に出力する。具体的には、比較器522は、カウント値の初期値変更の際に、CPU56からカウント値の初期値(この実施の形態では、「50」)をもらい、初期値「50」から乱数最大値(この実施の形態では、「256」)までのカウント値の個数(この実施の形態では、「207個」)を求める。そして、カウント値順列変更回路523から入力したカウント値の個数が207個に達すると、全てのカウント値を入力した旨の通知信号をカウンタ521に出力する。
なお、カウント値順列変更回路523がカウント値の順列を変更した場合であっても、比較器522は、カウント値の個数が207個に達すると、通知信号をカウンタ521に出力する。そのようにすることによって、カウント値の順列が変更された場合であっても、初期値「50」から最大値「256」までの全てのカウント値を入力したことにもとづいて、通知信号をカウンタ521に出力できる。
比較器522から通知信号を入力すると、カウンタ521は、カウント値の初期値をリセットし「0」に戻す。そして、カウンタ521は、「0」からカウント値の更新を行う。カウンタ521の値が「0」から再び更新がされると、カウンタ521からのカウント値にもとづいて、カウント値順列変更回路523は「49」〜「0」までのカウント値を比較器522に出力し、比較器522はカウント値順列変更回路523からのカウント値の入力にもとづいて乱数値記憶回路531にカウント値を出力する。そして、カウンタ521は、最終値(この実施の形態では、「49」)までカウント値を更新すると、カウンタ521は、通知信号をCPU56に出力する。通知信号を出力すると、CPU56によって、カウンタ521のカウント値の初期値が再び変更される。
以上のような動作を繰り返すことによって、比較器522は、カウンタ521に、「0」から乱数最大値「256」まで連続的にカウント値をカウントアップさせ、「0」から「256」までの値を乱数値記憶回路531にランダムR(乱数値)として記憶させる。すなわち、比較器522は、カウント値の更新範囲を乱数最大値「256」以下に制限して、カウンタ521にカウント値を更新させる。
図10は、乱数最大値設定レジスタ(RMX)535の例を示す説明図である。図10(a)は、12ビット乱数回路503aが搭載する乱数最大値設定レジスタ535の例を示す。また、図10(b)は、16ビット乱数回路503bが搭載する乱数最大値設定レジスタ535の例を示す。まず、12ビット乱数回路503aが搭載する乱数最大値設定レジスタ535について説明する。図10(a)に示すように、12ビット乱数回路503aにおいて、乱数最大値設定レジスタ535は、16ビットレジスタであり、初期値が「4095(=0FFFh)」に設定されている。乱数最大値設定レジスタ535は、ビット0〜ビット11が書込および読出ともに可能な状態に構成されている。また、乱数最大値設定レジスタ535は、ビット12〜ビット15が書込および読出ともに不可能な状態に構成されている。従って、12ビット乱数回路503aにおいて、乱数最大値設定レジスタ535のビット12〜ビット15に値を書き込む制御を行っても無効とされ、ビット12〜ビット15から読み出す値は全て「0(=0000b)」である。
また、乱数最大値設定レジスタ535に設定される乱数最大値は、所定の下限値が定められている。この実施の形態では、乱数最大値設定レジスタ535に下限値「256」より小さい値を指定する乱数最大値設定データ「0000h」〜「00FEh」が書き込まれた場合、CPU56は、乱数最大値設定レジスタ535に、初期値「4095」を指定する乱数最大値設定データ「0FFFh」を設定しなおす。すなわち、乱数最大値設定レジスタ535に設定可能な乱数最大値は「256」から「4095」までであり、CPU56は、下限値「256」より小さい値が設定されていると判断すると、乱数最大値を所定値「4095」に設定しなおす。なお、CPU56は、リセットコントローラ502によって遊技制御用マイクロコンピュータ560(具体的にはCPU56)がシステムリセットされるまで、乱数最大値設定データが書き込まれた乱数最大値設定レジスタ535を書込不可能に制御する。また、CPU56により書込不可能に制御するのでなく、乱数最大値設定レジスタ535は、データが書き込まれた後にリセット信号を入力するまで書込不可能になるように形成されていてもよい。
次に、16ビット乱数回路503bが搭載する乱数最大値設定レジスタ535について説明する。図10(b)に示すように、16ビット乱数回路503bにおいて、乱数最大値設定レジスタ535は、16ビットレジスタであり、初期値が「65535(=FFFFh)」に設定されている。また、16ビット乱数回路503bにおいて、乱数最大値設定レジスタ535は、ビット0〜ビット15の全てのビットが書込および読出ともに可能な状態に構成されている。
また、乱数最大値設定レジスタ535に下限値「256」より小さい値を指定する乱数最大値設定データ「0000h」〜「00FEh」が書き込まれた場合、CPU56は、乱数最大値設定レジスタ535に、初期値「65535」を指定する乱数最大値設定データ「FFFFh」を設定しなおす。すなわち、乱数最大値設定レジスタ535に設定可能な乱数最大値は「256」から「65535」までであり、CPU56は、下限値「256」より小さい値が設定されていると判断すると、乱数最大値を所定値「65535」に設定しなおす。なお、CPU56は、リセットコントローラ502によって遊技制御用マイクロコンピュータ560(具体的にはCPU56)がシステムリセットされるまで、乱数最大値設定データが書き込まれた乱数最大値設定レジスタ535を書込不可能に制御する。また、CPU56により書込不可能に制御するのでなく、乱数最大値設定レジスタ535は、データが書き込まれた後にリセット信号を入力するまで書込不可能になるように形成されていてもよい。
クロック信号出力回路524は、セレクタ528および反転回路532に出力するクロック信号の周期(すなわち、カウント値の更新周期)を指定するための周期設定データを格納する周期設定レジスタ(RPS)537を備える。クロック信号出力回路524は、周期設定レジスタ537に格納されている周期設定データに基づいて、遊技制御用マイクロコンピュータ560が搭載するクロック回路501から入力する基準クロック信号CLKを分周して、乱数回路503内部で乱数値の生成に用いるクロック信号(乱数発生用クロック信号SI1)を生成する。そのようにすることによって、クロック信号出力回路524は、クロック信号を所定回数入力したことを条件に、カウント値Cを更新させるための乱数発生用クロック信号SI1をカウンタ521に出力するように動作する。なお、周期設定データとは、クロック回路501から入力した基準クロック信号CLKを何分周させるかを設定するためのデータである。また、クロック出力回路524は、生成した乱数発生用クロック信号SI1をセレクタ528および反転回路532に出力する。例えば、周期設定レジスタ537に周期設定データ「0Fh(=16)」が書き込まれている場合、クロック信号出力回路524は、クロック回路501から入力する基準クロック信号CLKを16分周して乱数発生用クロック信号SI1を生成する。この場合、クロック信号出力回路524が生成する乱数発生用クロック信号SI1の周期は、「システムクロック信号の周期×128×16」になる。
図11は、周期設定レジスタ(RPS)537の例を示す説明図である。図11に示すように、周期設定レジスタ537は、8ビットレジスタであり、初期値が「256(=FFh)」に設定されている。また、周期設定レジスタ537は、書込および読出ともに可能な状態に構成されている。
また、周期設定レジスタ537に設定される周期設定データの値は、所定の下限値が定められている。この実施の形態では、周期設定レジスタ537に下限値「システムクロック信号の周期×128×7」より小さい値を指定する周期設定データ「00h〜06h」が書き込まれた場合、CPU56は、周期設定レジスタ537に下限値「システムクロック信号の周期×128×7」を指定する周期設定データ「07h」を設定しなおす。すなわち、周期設定レジスタ537に設定可能な周期は「システムクロック信号の周期×128×7」から「システムクロック信号の周期×128×256」までであり、CPU56は、下限値より小さい値が設定されていると判断すると、周期設定データを設定しなおす。なお、CPU56は、リセットコントローラ502によって遊技制御用マイクロコンピュータ560(具体的にはCPU56)がシステムリセットされるまで、周期設定データが書き込まれた周期設定レジスタ537を書込不可能に制御する。また、CPU56により書込不可能に制御するのでなく、周期設定レジスタ537は、データが書き込まれた後にリセット信号を入力するまで書込不可能になるように形成されていてもよい。
なお、周期設定レジスタ537に下限値としての周期設定データを設定することなく、設定された周期設定データにもとづいて、例えばクロック信号出力回路524が基準クロック信号CLKをそのままカウンタ521および反転回路532に出力するようにしてもよい。この場合、CPU56は、周期設定レジスタ537に設定される周期設定データの値を下限値と比較して設定しなおす処理を行う必要がなくなる。また、カウンタ521は、クロック信号出力回路524から基準クロック信号CLKを入力する毎にカウント値Cを更新することになる。
カウント値更新信号出力回路525は、カウント値更新データ「01h」を格納するカウント値更新レジスタ(RGN)538を備える。カウント値更新データとは、カウント値の更新を要求するためのデータである。カウント値更新信号出力回路525は、カウント値更新レジスタ538にカウント値更新データ「01h」が書き込まれたことに応じて、カウント値更新信号SI3をセレクタ528に出力する。
図12は、カウント値更新レジスタ(RGN)538の例を示す説明図である。図12に示すように、カウント値更新レジスタ538は、読出不能な8ビットレジスタであり、ビット0のみが書込可能な状態に構成されている。従って、カウント値更新レジスタ538のビット1〜ビット7に値を書き込む制御を行っても無効とされる。
乱数値読取信号出力回路526は、乱数値取込データ「01h」を格納する乱数値取込レジスタ(RLT)539を備える。乱数値取込データとは、乱数値記憶回路531へのカウント値の取込を要求するためのデータである。乱数値読取信号出力回路526は、乱数値取込レジスタ539に乱数値取込データ「01h」が書き込まれたことに応じて、乱数値の読み取りを要求するための乱数値読取信号をラッチ信号生成回路533に出力する。
図13は、乱数値取込レジスタ(RLT)539の例を示す説明図である。図13に示すように、乱数値取込レジスタ539は、読出不能な8ビットレジスタである。また、乱数値取込レジスタ539は、ビット0だけが書込可能な状態に構成されている。すなわち、乱数値取込レジスタ539のビット1〜ビット7に値を書き込む制御を行っても無効とされる。
乱数更新方式選択信号出力回路527は、乱数更新方式選択データを格納する乱数更新方式選択レジスタ(RTS)540を備える。乱数更新方式選択データとは、ランダムRの値を更新する方式である各乱数更新方式のうち、いずれかの乱数更新方式を指定するためのデータである。乱数更新方式選択信号出力回路527は、乱数更新方式選択レジスタ540に乱数更新方式選択データが書き込まれたことに応じて、書き込まれた乱数更新方式選択データによって指定される乱数更新方式に対応する乱数更新方式選択信号を、セレクタ528およびラッチ信号生成回路533に出力する。
図14(A)は、乱数更新方式選択レジスタ(RTS)540の例を示す説明図である。図14(A)に示すように、乱数更新方式選択レジスタ540は、8ビットレジスタであり、初期値が「00h」に設定されている。また、乱数更新方式選択レジスタ540は、ビット0〜ビット1が書込および読出ともに可能な状態に構成されている。また、乱数更新方式選択レジスタ540は、ビット2〜ビット7が書込および読出ともに不可能な状態に構成されている。従って、乱数更新方式選択レジスタ540のビット2〜ビット7に値を書き込む制御を行っても無効とされ、ビット2〜ビット7から読み出す値は全て「0(=000000b)」である。
図14(B)は、乱数更新方式選択レジスタ540に書き込まれる乱数更新方式選択データの一例の説明図である。図14(B)に示すように、乱数更新方式選択データは、2ビットのデータから構成される。乱数更新方式選択データ「01b」は、第1の乱数更新方式を指定するために用いられる。また、乱数更新方式選択データ「10b」は、第2の乱数更新方式を指定するために用いられる。なお、この実施の形態では、第1の乱数更新方式とは、カウント値更新信号出力回路525からカウント値更新信号SI3が出力されたことをトリガとして、カウント値を更新する方式である。また、第2の乱数更新方式とは、クロック信号出力回路524から乱数発生用クロック信号SI1が出力されたことをトリガとして、カウント値を更新する方式である。また、乱数更新方式選択データ「01b」または「10b」が乱数更新方式選択レジスタ540に書き込まれた場合、乱数回路503は起動可能な状態になる。一方、乱数更新方式選択データ「00b」または「11b」が乱数更新方式選択レジスタ540に書き込まれた場合、乱数回路503は起動不能な状態になる。
セレクタ528は、カウント値更新信号出力回路525から出力されるカウント値更新信号SI3、またはクロック信号出力回路524から出力される乱数発生用クロック信号SI1のいずれかを選択してカウンタ521に出力する。セレクタ528は、乱数更新方式選択信号出力回路527から第1の乱数更新方式に対応する乱数更新方式選択信号(第1の乱数更新方式選択信号ともいう)が入力されると、カウント値更新信号出力回路525から出力されるカウント値更新信号SI3を選択してカウンタ521に出力する。一方、セレクタ528は、乱数更新方式選択信号出力回路527から第2の乱数更新方式に対応する乱数更新方式選択信号(第2の乱数更新方式選択信号ともいう)が入力されると、クロック信号出力回路524から出力される乱数発生用クロック信号SI1を選択してカウンタ521に出力する。なお、セレクタ528は、乱数更新方式選択信号出力回路527から第1の更新方式選択信号が入力されると、カウント値更新信号出力回路525から出力されるカウント値更新信号SI3に応じて、クロック信号出力回路524から出力される乱数発生用クロック信号SI1に同期した数値データの更新を指示する数値更新指示信号を、カウンタ521に出力してもよい。
乱数回路起動信号出力回路530は、乱数回路起動データ「80h」を格納する乱数回路起動レジスタ(RST)541を備える。乱数回路起動データとは、乱数回路503の起動を要求するためのデータである。乱数回路起動信号出力回路530は、乱数回路起動レジスタ541に乱数回路起動データ「80h」が書き込まれると、所定の乱数回路起動信号をカウンタ521およびクロック信号出力回路537に出力し、カウンタ521およびクロック信号出力回路524をオンにさせる。そして、カウンタ521によるカウント値の更新動作とクロック信号出力回路524による内部クロック信号の出力動作とを開始させることによって、乱数回路503を起動させる。
図15は、乱数回路起動レジスタ(RST)541の例を示す説明図である。図15に示すように、乱数回路起動レジスタ541は、8ビットレジスタであり、初期値が「00h」に設定されている。乱数回路起動レジスタ541は、ビット7だけが書込および読出ともに可能な状態に構成されている。また、乱数回路起動レジスタ541は、ビット0〜ビット6が書込および読出ともに不可能な状態に構成されている。すなわち、乱数回路起動レジスタ541のビット0〜ビット6に値を書き込む制御を行っても無効とされ、ビット0〜ビット6から読み出す値は全て「0(=000000b)」である。
乱数値記憶回路531は、例えば16ビットレジスタであり、遊技制御処理における大当り判定において用いられる乱数であるランダムRの値を格納する。乱数値記憶回路531は、ラッチ信号生成回路533からラッチ信号SLを入力したことに応じて、カウンタ521から比較器522を介して出力されるカウント値CをランダムRの値として格納する。そして、乱数値記憶回路531は、ラッチ信号生成回路533からラッチ信号SLを入力するごとに、カウンタ521が更新するカウント値Cを読み込んでランダムRの値を記憶する。
図16は、乱数値記憶回路531の構成例を示す回路図である。乱数値記憶回路531は、図16に示すように、2個のAND回路201,203と、2個のNOT回路202,204と、16個のフリップフロップ回路2101〜2116と、16個のOR回路2201〜2216とを含む。
図16に示すように、AND回路201の入力端子は、ラッチ信号生成回路533の出力端子とNOT回路204の出力端子とに接続され、出力端子は、NOT回路202の入力端子とフリップフロップ回路2101〜2116のクロック端子Clk1〜Clk16とに接続されている。NOT回路202の入力端子は、AND回路201の出力端子に接続され、出力端子は、AND回路203の一方の入力端子に接続されている。
AND回路203の入力端子は、NOT回路202の出力端子と遊技制御用マイクロコンピュータ560が搭載するCPU56とに接続され、出力端子は、NOT回路204の入力端子に接続されている。NOT回路204の入力端子は、AND回路203の出力端子に接続され、出力端子は、AND回路201の一方の入力端子とOR回路2201〜2216の一方の入力端子とに接続されている。
フリップフロップ回路2101〜2116の入力端子D1〜D16は、比較器522の出力端子に接続されている。フリップフロップ回路2101〜2116のクロック端子Clk1〜Clk16は、AND回路201の出力端子に接続され、出力端子Q1〜Q16は、OR回路2201〜2216の他方の入力端子に接続されている。
OR回路2201〜2216の入力端子は、NOT回路204の出力端子とフリップフロップ回路2101〜2116の出力端子とに接続され、出力端子は、遊技制御用マイクロコンピュータ560が搭載するCPU56に接続されている。
乱数値記憶回路531の動作について説明する。図17は、乱数値記憶回路531に各信号が入力されるタイミング、および乱数値記憶回路531が各信号を出力するタイミングを示すタイミングチャートである。図17に示すように、遊技制御用マイクロコンピュータ560が搭載するCPU56から出力制御信号SC(この実施の形態では、ハイレベル信号)が入力されていない場合(すなわち、AND回路203の一方の入力端子への入力がローレベルの場合)、ラッチ信号生成回路533からラッチ信号SLが入力されると(図17に示す例では、タイミングT1,T2,T7のとき)、AND回路201の2つの入力端子への入力はともにハイレベルになる。そのため、AND回路201の出力端子から出力される信号SRはハイレベルになる。そして、AND回路201から出力された信号SRは、フリップフロップ回路2101〜2116のクロック端子Clk1〜Clk16に入力される。
フリップフロップ回路2101〜2116は、クロック端子Clk1〜Clk16から入力される信号SRの立ち上がりエッヂに応答して、比較器522から入力端子D1〜D16を介して入力されるカウント値CのビットデータC1〜C16を乱数値のビットデータR1〜R16としてラッチして記憶する。また、フリップフロップ回路2101〜2116は、記憶するランダムRのビットデータR1〜R16を出力端子Q1〜Q16から出力する。
出力制御信号SCが入力されていない場合(図17に示す例では、タイミングT3までの期間およびタイミングT6以降の期間)、AND回路203の一方の入力端子への入力がローレベルになるので、AND回路203の出力端子から出力される信号SGはローレベルになる。AND回路203が出力する信号SGは、NOT回路204において反転され、ハイレベルの信号とされる。そして、OR回路2201〜2216の一方の入力端子に、NOT回路204からハイレベルの信号が入力される。
以上のように、OR回路2201〜2216の一方の入力端子への入力がハイレベルになるので、他方の入力端子に入力される信号がハイレベルであるかローレベルであるかに関わらず、OR回路2201〜2216はハイレベルの信号を出力する。すなわち、入力されるランダムRのビットデータR1〜R16の値が「0」であるか「1」であるかに関わらず、OR回路2201〜2216から出力される信号SO1〜SO16は、全てハイレベル(「1」)になる。そのようにすることによって、乱数値記憶回路531から出力される値は、常に「65535(=1111111111111111b)」となり、乱数値記憶回路531からランダムRを読み出すことができない状態になる。すなわち、乱数値記憶回路531から乱数を読み出そうとしても、乱数値記憶回路531から常に同じ値「65535」しか読み出せない状態となり、出力制御信号SCが入力されていない場合、乱数値記憶回路531は、読出不能(ディスエーブル)状態になる。なお、16ビット乱数回路503bを用いる場合、乱数値としての値「65535」が用いられる可能性がある。この場合、CPU56は、値「65535」を読み込んだとしても、その値が乱数であるのか読出不能状態であるのかを判断することができない。そのため、図26に示す各大当り判定用の判定テーブルにおいて、あらかじめランダムRが「65535」である場合には「はずれ」と判定するように設定しておけばよい。
ラッチ信号生成回路533からラッチ信号SLが入力されていないときに、CPU56から出力制御信号SCが入力されると(図17に示す例では、タイミングT4からタイミングT6までの期間)、AND回路203の2つの入力端子への入力がともにハイレベルになるので、AND回路203の出力端子から出力される信号SGはハイレベルになる。AND回路203が出力する信号SGは、NOT回路204において反転され、ローレベルの信号とされる。そして、OR回路2201〜2216の一方の入力端子に、NOT回路204からローレベルの信号が入力される。
以上のように、OR回路2201〜2216の一方の入力端子への入力がローレベルになるので、他方の入力端子に入力される信号がハイレベルの場合、OR回路2201〜2216の出力端子からハイレベルの信号が出力される。また、OR回路2201〜2216の他方の入力端子に入力される信号がローレベルの場合、OR回路2201〜2216からローレベルの信号が出力される。すなわち、OR回路2201〜2216の他方の入力端子に入力されるランダムRのビットデータR1〜R16の値は、OR回路2201〜2216の出力端子からそのまま(すなわち、ビットデータR1〜R16の値が「1」のときは「1」が、「0」のときは「0」)出力される。そのようにすることによって、乱数値記憶回路531からのランダムRの読出が可能になる。すなわち、出力制御信号SCが入力されている場合、乱数値記憶回路531は、読出可能(イネーブル)状態になる。
ただし、CPU56から出力制御信号SCが入力される前に、ラッチ信号生成回路533からラッチ信号SLが入力されている場合には、AND回路203の一方の入力端子への入力がローレベルになるので、ラッチ信号SLが入力されている状態のままで、出力制御信号SCが入力されても(図17に示す例では、タイミングT3からタイミングT4の期間)、AND回路203の出力端子から出力される信号SGはローレベルのままになる。AND回路203が出力する信号SGは、NOT回路204において反転され、ハイレベルの信号とされる。そして、OR回路2201〜2216の一方の入力端子に、NOT回路204からハイレベルの信号が入力される。
以上のように、OR回路2201〜2216の一方の入力端子への入力がハイレベルになるので、他方の入力端子に入力される信号がハイレベルであるかローレベルであるかに関わらず、OR回路2201〜2216から出力される信号SO1〜SO16は全てハイレベルになる。そして、出力制御信号SCが入力されているにも関わらず、乱数値記憶回路531からランダムRを読み出すことができない状態のままになる。すなわち、ラッチ信号SLが入力されている場合、乱数値記憶回路531は、出力制御信号SCを受信不可能な状態になる。なお、16ビット乱数回路503bを用いる場合、乱数値としての値「65535」が用いられる可能性がある。この場合、CPU56は、値「65535」を読み込んだとしても、その値が乱数であるのか読出不能状態であるのかを判断することができない。そのため、図26に示す各大当り判定用の判定テーブルにおいて、あらかじめランダムRが「65535」である場合には「はずれ」と判定するように設定しておけばよい。
また、ラッチ信号生成回路533からラッチ信号SLが入力される前に、CPU56から出力制御信号SCが入力されている場合、AND回路201の一方の入力端子への入力がローレベルになるので、出力制御信号SCが入力されているままの状態で、ラッチ信号SLが入力されても(図17に示す例では、タイミングT5)、AND回路201の出力端子から出力される信号SRはローレベルのままになる。そのため、フリップフロップ回路2101〜2116のクロック端子Clk1〜Clk16に入力される信号SRは、ローレベルからハイレベルに立ち上がらず、フリップフロップ回路2101〜2116に格納されているランダムRのビットデータR1〜R16は、ラッチ信号SLが入力されているにも関わらず、更新されない。すなわち、出力制御信号SCが入力されている場合、乱数値記憶回路531は、ラッチ信号SLを受信不可能な状態になる。
反転回路532は、クロック信号出力回路524から入力する乱数発生用クロック信号SI1における信号レベルを反転させることによって、クロック信号の極性を反転させた反転クロック信号SI2を生成する。また、反転回路532は、生成した反転クロック信号SI2をラッチ信号生成回路533に出力する。
ラッチ信号生成回路533は、セレクタおよびフリップフロップ回路等を用いて構成される。ラッチ信号生成回路533は、乱数値読取信号出力回路526からの乱数値読取信号と反転回路532からの反転クロック信号SI2とを入力し、乱数値記憶回路531に乱数値を記憶させるためのラッチ信号SLを出力する。また、ラッチ信号生成回路533は、乱数更新方式選択信号出力回路527からの乱数更新方式選択信号によって指定された乱数値更新方式に応じて、ラッチ信号SLを出力する。この場合、ラッチ信号生成回路533は、乱数更新方式選択信号出力回路527から第1の乱数更新方式選択信号が入力された場合、反転回路532から出力される反転クロック信号SI2を選択し、ラッチ信号SLとして乱数値記憶回路531に出力する。一方、ラッチ信号生成回路533は、乱数更新方式選択信号出力回路527から第2の乱数更新方式選択信号が入力された場合、乱数値読取信号出力回路526から出力される乱数値読取信号を、反転回路532から出力される反転クロック信号SI2の立ち上がりエッヂに同期させて、ラッチ信号SLとして乱数値記憶回路531に出力する。
タイマ回路534は、第1始動入賞口13(または第2始動入賞口14)への遊技球の入賞を検出した旨の入賞検出信号SSを第1始動口スイッチ13a(または第2始動口スイッチ14a)から入力する。また、タイマ回路534は、第1始動口スイッチ13a(または第2始動口スイッチ14a)から入賞検出信号SSが継続して入力されている時間を計測する。そして、タイマ回路534は、計測時間が所定期間(例えば、3ms)になると、乱数値読取信号出力回路526の乱数値取込レジスタ539に乱数値取込データ「01h」を書き込む。例えば、タイマ回路534は、ハイレベルの信号が入力されたことに応じて起動するアップカウンタまたはダウンカウンタによって構成される。タイマ回路534は、第1始動口スイッチ13a(または第2始動口スイッチ14a)からの入力がハイレベルとなっている間(すなわち、入賞検出信号SSが継続して入力されている間)、クロック回路501から順次入力する基準クロック信号CLKをアップカウントまたはダウンカウントする。そして、タイマ回路534は、アップカウントまたはダウンカウントするカウント値が3msに対応する値になると、第1始動口スイッチ13a(または第2始動口スイッチ14a)から入賞検出信号SSが入力されたと判断して、乱数値取込データ「01h」を乱数値取込レジスタ539に書き込む。なお、乱数値取込レジスタ539は、第1始動口スイッチ13aと第2始動口スイッチ14aとのそれぞれに対応して用意されている。
図18は、遊技制御用マイクロコンピュータ560における記憶領域のアドレスマップの一例を示す説明図である。図18に示すように、遊技制御用マイクロコンピュータ560の記憶領域のうち、0000h番地〜1FFFh番地の領域は、ROM54に割り当てられている。また、7E00h番地〜7FFFh番地の領域は、RAM55に割り当てられている。さらに、FD00h番地〜FE00h番地の領域は、乱数最大値設定レジスタ535等の内蔵レジスタに割り当てられている。
また、図18に示すように、ROM54に割り当てられている0000h番地〜1FFFh番地の領域は、ユーザプログラムエリアとユーザプログラム管理エリアとを含む。0000h番地〜1F7Fh番地の領域のユーザプログラムエリアには、ユーザ(例えば、遊技機の設計者)によってあらかじめ作成されたプログラム(ユーザプログラム)550が記憶される。また、1F80h番地〜1FFFh番地の領域のユーザプログラム管理エリアには、CPU56がユーザプログラム550を実行するために必要になるデータ(ユーザプログラム実行データ)が記憶される。また、RAM55に割り当てられている7E00h番地〜7FFFh番地の領域のうち、7E00h番地〜7EFFh番地の領域は未使用領域であり、7EFFh番地〜7FFFh番地の領域はワークエリアとして用いられる。
図19は、ユーザプログラム管理エリアにおけるアドレスマップの一例を示す説明図である。図19に示すように、1F97h番地の領域には、カウンタ521に入力される初期値を変更するための方式である初期値変更方式のうち、ユーザによって選択された初期値変更方式を指定するための初期値変更方式設定データが記憶される。また、1F98h番地および1F99h番地の領域には、RAM55に割り当てられた7EFFh番地〜7FFFh番地のうち、ユーザによってあらかじめ指定されたRAM55における番地(指定RAM番地)を特定するためのRAM番地データが記憶される。この場合、指定RAM番地を示す値のうち、指定RAM番地の下位の値が1F98h番地に記憶され、指定RAM番地の上位の値が1F99h番地に記憶される。
図20は、初期値変更方式設定データの一例を示す説明図である。図20に示すように、初期値変更データは、8ビットのデータから構成される。初期値変更データ「00h」は、初期値変更方式として、初期値を変更しないことを指定するデータである。この実施の形態では、初期値変更データ「00h」が設定されている場合、乱数回路503のカウンタ521は、あらかじめ定められた初期値「0」から所定の最終値までカウント値を更新することになる。また、初期値変更データ「01h」は、初期値変更方式として、カウンタ521に入力する初期値を、遊技制御用マイクロコンピュータ560を識別するためのIDナンバにもとづく値に変更することを指定するデータである。この実施の形態では、初期値変更データ「01h」が設定されている場合、カウンタ521が更新するカウンタ値の初期値が「0」からIDナンバにもとづく値に変更され、カウンタ521は、変更後の初期値から所定の最終値までカウント値を更新することになる。
ユーザプログラムエリアに記憶されるユーザプログラム550について説明する。図21は、ユーザプログラム550の構成例を示す説明図である。図21に示すように、この実施の形態では、ユーザプログラム550は、複数種類のプログラムモジュールから構成される乱数回路設定プログラム551と、表示結果決定プログラム552と、カウント値順列変更プログラム554と、乱数値更新プログラム555と、シリアル通信回路設定プログラム556と、割込優先順位設定プログラム557とを含む。
乱数回路設定プログラム551は、乱数回路503にランダムRの値を更新させるための初期設定を行う乱数回路設定処理を実行させるためのプログラムである。すなわち、CPU56は、乱数回路設定プログラム551に従って処理を実行することによって、乱数回路設定手段として機能する。
図22は、乱数回路設定プログラム551の構成例を示す説明図である。図22に示すように、乱数回路設定プログラム551は、複数種類のプログラムモジュールとして、乱数最大値設定モジュール551aと、乱数更新方式選択モジュール551bと、周期設定モジュール551cと、乱数回路起動モジュール551dと、初期値変更モジュール551eと、乱数回路選択モジュール551fとを含む。
乱数最大値設定モジュール551aは、ユーザ(例えば、遊技機の製作者)によってあらかじめ設定されたランダムRの最大値を乱数回路503に設定させるためのプログラムモジュールである。CPU56は、乱数最大値設定モジュール551aに従って処理を実行することによって、ユーザによってあらかじめ設定されたランダムRの最大値を指定する乱数最大値設定データを、乱数最大値設定レジスタ535に書き込む。そのようにすることによって、CPU56は、ユーザによってあらかじめ設定されたランダムRの最大値を乱数回路503に設定する。例えば、ユーザによってランダムRの最大値としてあらかじめ「255」が設定された場合、CPU56は、乱数最大値設定レジスタ535に乱数最大値設定データ「00FFh」を書き込んで、ランダムRの最大値「255」を乱数回路503に設定する。
乱数更新方式選択モジュール551bは、ユーザによって選択された乱数更新方式(第1の乱数更新方式または第2の乱数更新方式)を乱数回路503に設定させるためのプログラムモジュールである。CPU56は、乱数更新方式選択モジュール551bに従って処理を実行することによって、ユーザによって選択された乱数更新方式を指定する乱数更新方式選択データ「01b」または「10b」を乱数更新方式選択レジスタ540に書き込む。そのようにすることによって、CPU56は、ユーザによって選択された乱数更新方式を乱数回路503に設定する。よって、遊技制御用マイクロコンピュータ560は、第1の乱数更新方式または第2の乱数更新方式のうちのいずれかを、乱数回路503が乱数更新に用いる乱数更新方式として選択する機能を備える。
周期設定モジュール551cは、ユーザによってあらかじめ設定された内部クロック信号の周期(すなわち、クロック信号出力回路524がセレクタ528および反転回路532にクロック信号を出力する周期)を乱数回路503に設定させるためのプログラムモジュールである。CPU56は、周期設定モジュール551cに従って処理を実行することによって、ユーザによってあらかじめ設定された内部クロック信号の周期を指定するための周期設定データを周期設定レジスタ537に書き込む。そのようにすることによって、CPU56は、ユーザによってあらかじめ設定された内部クロック信号の周期を乱数回路503に設定する。例えば、ユーザによって内部クロック信号の周期があらかじめ「システムクロック信号の周期×128×16」と設定された場合、CPU56は、周期設定レジスタ537に周期設定データ「0Fh」を書き込んで、内部クロック信号の周期「システムクロック信号の周期×128×16」を乱数回路503に設定する。
乱数回路起動モジュール551dは、乱数回路503を起動させるためのプログラムモジュールである。CPU56は、乱数回路起動モジュール551dに従って処理を実行することによって、乱数回路起動データ「80h」を乱数回路起動レジスタ541に書き込むことによって、乱数回路503を起動させる。
初期値変更モジュール551eは、カウンタ521が更新するカウント値の初期値を変更させるためのプログラムモジュールである。CPU56は、初期値変更モジュール551eに従って処理を実行することによって、初期値変更手段として機能する。CPU56は、初期値変更モジュール551eを実行して、ユーザによって選択された初期値変更方式によって、カウンタ521が更新するカウント値の初期値を変更させる。そのようにすることによって、遊技制御用マイクロコンピュータ560は、初期値変更方式を選択する機能を備えることになる。
この実施の形態では、ユーザプログラム管理エリアの1F97h番地の領域に初期値変更方式設定データ「01h」が記憶されている場合、CPU56は、カウント値の初期値を、遊技制御用マイクロコンピュータ560毎に付与された固有のIDナンバにもとづいて算出された値に変更させる。
例えば、CPU56は、ROM54(RAM55でも可)の所定の記憶領域に、遊技制御用マイクロコンピュータ560のIDナンバと、IDナンバにもとづいて所定の演算を行って求めた演算値とをあらかじめ対応付けて記憶している。この場合、例えば、遊技制御用マイクロコンピュータ560のIDナンバが「100」であるとすると、IDナンバ「100」に所定値「50」を加算して求めた演算値「150」を、あらかじめIDナンバに対応付けて記憶している。また、例えば、IDナンバ「100」に所定値「50」を減算して求めた演算値「50」を、あらかじめIDナンバに対応付けて記憶している。また、例えば、あらかじめIDナンバに対応づけて所定値だけを記憶していてもよい。そして、CPU56は、あらかじめ記憶する所定値(例えば、「50」)にIDナンバ(例えば、「100」を加算して求めた値「150」を、カウント値の初期値としてもよい。また、CPU56は、あらかじめ記憶する所定値(例えば、「50」)をIDナンバ(例えば、「100」)から減算して求めた値「50」を、カウント値の初期値としてもよい。
そして、初期値変更方式設定データ「01h」が記憶されている場合、CPU56は、あらかじめ記憶するIDナンバにもとづく演算値にカウント値の初期値を変更させる。そのようにすれば、乱数回路503が発生する乱数のランダム性をより向上させることができ、遊技制御用マイクロコンピュータ560のIDナンバを見ただけでは乱数の初期値を認識しにくくすることができる。そのため、無線信号を用いた取り込み信号を遊技機に対して発生させるなどの行為によって、大当り遊技状態への移行条件を不正に成立させられてしまうことをより確実に防止することができ、セキュリティ性を向上させることができる。
また、例えば、初期値変更方式設定データ「01h」が記憶されている場合、CPU56は、遊技制御用マイクロコンピュータ560のIDナンバと所定値とを演算して(例えば、IDナンバに所定値を加算して)求めた演算値にカウント値の初期値を変更させる。この場合、例えば、CPU56は、乱数を用いてランダムに変化させた値をIDナンバと演算することによって、演算に用いる値をランダムに更新し初期値を求めてもよい。そのようにすれば、乱数回路503が発生する乱数のランダム性をより向上させることができる。
乱数回路選択モジュール551fは、遊技制御用マイクロコンピュータ560が内蔵する各乱数回路503の中から、遊技制御処理を含むタイマ割込処理の実行時に用いる乱数回路を設定するためのプログラムモジュールである。CPU56は、乱数回路選択モジュール551fに従って処理を実行することによって、遊技制御用マイクロコンピュータ560が内蔵する2つの乱数回路(12ビット乱数回路503aおよび16ビット乱数回路503b)のうち、いずれの乱数回路をタイマ割込処理の実行時に用いるかを設定する。例えば、CPU56は、ROM54の所定の記憶領域に記憶された所定の設定値(ユーザによってあらかじめ設定された値)に従って、タイマ割込処理の実行時に用いる乱数回路として、12ビット乱数回路503aまたは16ビット乱数回路503bを設定する。
なお、タイマ割込処理の実行時に用いる乱数回路として、12ビット乱数回路503aおよび16ビット乱数回路503bの両方を設定してもよい。この場合、CPU56は、例えば、12ビット乱数回路503aが発生した乱数にもとづいて大当り判定を行い、16ビット乱数回路503bが発生した乱数にもとづいて確変判定を行うようにしてもよい。この実施の形態では、乱数値記憶回路531は、12ビット乱数回路503aと16ビット乱数回路503bとにそれぞれ存在する(すなわち、12ビット用の乱数を記憶する乱数値記憶回路と、16ビット用の乱数を記憶する乱数値記憶回路とが、別個に存在する)。また、12ビット乱数回路503aおよび16ビット乱数回路503bの両方を設定した場合、CPU56は、12ビット乱数回路503aから読み出した乱数と、16ビット乱数回路503bから読み出した乱数とを、RAM55に設けられた別々のバッファ領域にそれぞれ格納する。そのため、12ビット乱数回路503aから乱数を読み出すタイミングと、16ビット乱数回路503bから乱数を読み出すタイミングとが同じであっても、2つの異なる乱数を抽出し別々のバッファ領域に格納することができる。
乱数値更新プログラム555は、乱数更新方式として第1の乱数更新方式が選択されているときに、乱数値記憶回路531に格納されているランダムRの値を更新させるためのプログラムである。CPU56は、乱数値更新プログラム555に従って処理を実行することによって、乱数値更新手段として機能する。CPU56は、第1の乱数更新方式が選択されているときに、乱数値更新プログラム555を実行して、カウント値更新データ「01h」をカウント値更新レジスタ538に書き込むことによって、カウンタ521にカウント値を更新させ、乱数値記憶回路531に格納されているランダムRの値を更新させる。なお、乱数更新方式として第2の乱数更新方式が選択されている場合には、クロック信号出力回路537が出力する乱数発生用クロック信号によって、カウンタ521にカウント値を更新させ、乱数値記憶回路531に格納されているランダムRの値を更新させることになる。
表示結果決定プログラム552は、第1特別図柄表示器8aおよび第2特別図柄表示器8bにおける表示結果を大当り図柄とするか否かを決定するためのプログラムである。遊技制御用マイクロコンピュータ560(具体的にはCPU56)は、表示結果決定プログラム552に従って処理を実行することによって、表示結果決定手段として機能する。
この実施の形態では、遊技制御用マイクロコンピュータ560(具体的にはCPU56)は、遊技球が第1始動入賞口13(または第2始動入賞口14)に入賞して第1特別図柄(または第2特別図柄)の可変表示を実行するための条件(第1の実行条件)が成立したことに応じて、表示結果決定プログラム552に従って処理を実行する。そして、CPU56は、乱数値記憶回路531から更新後のランダムRの値を読み出して、第1特別図柄表示器8a(または第2特別図柄表示器8b)における表示結果を大当り図柄とするか否か決定する。
図23は、第1の乱数更新方式が選択されている場合に、CPU56がランダムRの値を更新させたりランダムRの値を読出したりする動作を示す説明図である。図23に示すように、第1の乱数更新方式が選択されている場合、CPU56は、カウント値更新データ「01h」をカウント値更新レジスタ538に書き込むことによって、乱数値記憶回路531が記憶するランダムRの値(例えば「2」)を更新させる。そして、CPU56は、遊技球が第1始動入賞口13(または第2始動入賞口14)に入賞して第1特別図柄(または第2特別図柄)の可変表示を実行するための条件(第2の実行条件)が成立したことに応じて、乱数値記憶回路531からランダムRの値(例えば「2」)を読み出す。
なお、乱数値記憶回路531が記憶するランダムRの値をさらに更新させる場合、前回更新時にランダムRの値を更新したときから、クロック回路501が出力するシステムクロック信号の周期以上の間隔を経過したときに、カウント値更新レジスタ538にカウント値更新データ「01h」を書き込まなければならない。なぜなら、更新後のランダムRの値を乱数値記憶回路531から読み出す時間を確保する必要があるからである。
図24は、第2の乱数更新方式が選択されている場合に、CPU56がランダムRの値を読出したりする動作を示す説明図である。図24に示すように、第2の乱数更新方式が選択されている場合、タイマ回路534は、乱数値取込コマンド「01h」を乱数値取込レジスタ539に書き込むことによって、カウンタ521が出力するカウント値(例えば「2」)を乱数値記憶回路531に取り込ませて、乱数値記憶回路531が記憶するランダムRの値を更新させる。そして、CPU56は、乱数値記憶回路531から更新後のランダムRの値(例えば「2」)を読み出す。
具体的には、第2の乱数更新方式が選択されている場合、カウンタ521は、乱数発生用クロック信号SI1を入力したことをトリガとしてカウント値Cを更新する。その後、乱数値取込コマンド「01h」が乱数値取込レジスタ539に書き込まれると、ラッチ信号生成回路533はラッチ信号SLを乱数値記憶回路531に出力する。そして、乱数値記憶回路531は、ラッチ信号SLを入力したことをトリガとしてカウンタ521が出力するカウント値を読み込んで記憶する。そして、CPU56は、乱数値記憶回路531が記憶するランダムRの値を読み出す。
なお、タイマ回路534が乱数値取込コマンド「01h」を乱数値取込レジスタ539に書き込まなければ、カウンタ521がカウント値を更新しても、乱数値記憶回路531は、カウンタ521が更新する乱数値を読み込まない。例えば、タイマ回路534が乱数値取込コマンド「01h」を乱数値取込レジスタ539に書き込み、カウンタ521が出力するカウント値「3」を乱数値記憶回路531に取り込ませて、乱数値記憶回路531が記憶するランダムRの値「3」を更新させたとする。この場合、タイマ回路534が乱数値取込コマンド「01h」を再び乱数値取込レジスタ539に書き込まなければ、カウンタ521が出力するカウント値が「3」から「4」や「5」に更新されても、乱数値記憶回路531が記憶する乱数値は更新されず、乱数値記憶回路531から読み出される乱数値は「3」のままである。
カウント値順列変更プログラム554は、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」を書き込んで、乱数値記憶回路531が記憶するカウント値の順列を変更させるカウント値順列変更処理を実行するためのプログラムである。遊技制御用マイクロコンピュータ560(具体的にはCPU56)は、カウント値順列変更プログラム554に従って処理を実行することによって、数値データ順列変更手段として機能する。CPU56は、カウント値順列変更プログラム554を実行して、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」を書き込むことによって、カウント値順列変更回路523が出力し乱数値記憶回路531に入力されるカウント値の順列を変更させる。
シリアル通信回路設定プログラム556は、シリアル通信回路505に各制御基板に搭載されたマイクロコンピュータ(この実施の形態では、払出制御用マイクロコンピュータ)とシリアル通信させるための初期設定を行うシリアル通信回路設定処理を実行させるためのプログラムである。すなわち、遊技制御用マイクロコンピュータ560(具体的にはCPU56)は、シリアル通信回路設定プログラム556に従って処理を実行することによって、シリアル通信回路設定手段として機能する。
割込優先順位設定プログラム557は、シリアル通信回路505の割り込み要求に応じて実行する割込処理の優先順位を初期設定するためのプログラムである。すなわち、遊技制御用マイクロコンピュータ560(具体的にはCPU56)は、割込優先順位設定プログラム556に従って処理を実行することによって、優先順位初期設定手段として機能する。
また、遊技制御用マイクロコンピュータ560は、図25に示すように、特図保留メモリ570と、大当り判定用テーブルメモリ571と、フラグメモリ572と、始動入賞口スイッチタイマメモリ573とを備える。それらのメモリは、具体的にはROM54またはRAM55に形成されている。なお、「ROM(またはRAM)に形成されている」とは、ROM(またはRAM)内の領域であることを意味する。また、フラグメモリ572、始動入賞口スイッチタイマメモリ573および特図保留メモリ570は、第1保留記憶と第2保留記憶のそれぞれについて設けられている。
特図保留メモリ570は、遊技球が第1始動入賞口13(または第2始動入賞口14)に入賞して第1特別図柄(または第2特別図柄)の可変表示の実行条件は成立したが、未だ可変表示の開始条件が成立していない(例えば、第1特別図柄表示器8a(または第2特別図柄表示器8b)がまだ可変表示を実行中である)可変表示の実行条件の成立回数を含む保留データを記憶するためのメモリである。特図保留メモリ570は、4つのエントリを備え、各エントリには、遊技球が第1始動入賞口13(または第2始動入賞口14)に入賞した順に、入賞に応じて乱数値記憶回路531から読み出したランダムRの値が格納される。また、特別図柄表示器8a(または第2特別図柄表示器8b)における第1特別図柄(または第2特別図柄)の可変表示が1回終了したり、大当り遊技状態が終了したりするごとに、可変表示の開始条件が成立し、特図保留メモリ570最上位の情報にもとづいた可変表示が実行される。この場合、第1特別図柄(または第2特別図柄)の可変表示の開始条件が成立すると、特図保留メモリ570の第2位以下に登録されている情報が1位ずつ繰り上がる。また、第1特別図柄(または第2特別図柄)の可変表示中に遊技球が第1始動入賞口13(または第2始動入賞口14)に新たに入賞した場合には、その新たな入賞にもとづいて乱数値記憶回路531から読み出されたランダムRの値が、特図保留メモリ570の空エントリに登録される。
大当り判定用テーブルメモリ571は、CPU56が第1特別図柄表示器8aおよび第2特別図柄表示器8bの表示結果を大当り図柄とするか否か判定するために用いる複数の大当り判定テーブルを記憶する。具体的には、大当り判定用テーブルメモリ571は、図26(A)に示すような確変状態以外の遊技状態(通常状態)において用いられる通常時大当り判定テーブルを記憶する。また、大当り判定用テーブルメモリ571は、図26(B)に示すような確変状態において用いられる確変時大当り判定テーブルを格納する。なお、図26(A),(B)に示す判定テーブルを用いて大当り判定を行う場合、乱数最大値設定レジスタ535に設定された乱数最大値によって大当りと判定する確率が大きく変化することになる。この場合、例えば、設定される乱数最大値が小さすぎると、通常時大当り判定テーブルを用いた場合と、確変時大当り判定テーブルを用いた場合とで、大当りと判定する確率の差が小さくなってしまい、遊技者の遊技に対する興味を減退させてしまうことになる。そのため、乱数回路503および乱数最大値に対応づけて、複数の判定テーブル(複数の通常時大当り判定用テーブルおよび複数の確変時大当り判定用テーブル)を大当り判定用テーブルメモリ571に記憶してもよい。そして、CPU56は、大当り判定用テーブルメモリ571が記憶する判定テーブルのうち、使用する乱数回路503および乱数最大値に対応する判定テーブルを用いて、表示結果決定プログラム552に従って、第1特別図柄表示器8aおよび第2特別図柄表示器8bの表示結果を大当り図柄とするか否か判定するようにしてもよい。そのようにすることによって、使用する乱数回路503の種類や乱数最大値が異なっても、大当りと判定する確率がある程度同じになるように制御することができる。
なお、この実施の形態では、16ビット乱数回路503bを用いることにする。すなわち、ステップS151の処理で16ビット乱数回路503bを用いることに決定されたとする。よって、ランダムRとして、16ビットで発生できる範囲(0から65535までの範囲)の値をとりうる。
フラグメモリ572には、遊技の進行を制御する遊技制御処理において用いられる各種のフラグが設定される。例えば、フラグメモリ572には、遊技状態が確変状態であることを示す確変フラグや、大当り遊技状態であることを示す大当りフラグが設定される。
始動口スイッチタイマメモリ573は、第1始動口スイッチ13a(または第2始動口スイッチ14a)から出力される入賞検出信号SSに応じて加算またはクリアされるタイマ値を記憶する。
次に、遊技機の動作について説明する。図27は、主基板31における遊技制御用マイクロコンピュータ560が実行するメイン処理を示すフローチャートである。遊技機に対して電源が投入され、リセット信号が入力されるリセット端子の入力レベルがハイレベルになると、遊技制御用マイクロコンピュータ560(具体的には、CPU56)は、プログラムの内容が正当か否か確認するための処理であるセキュリティチェック処理を実行した後、ステップS1以降のメイン処理を開始する。メイン処理において、CPU56は、まず、必要な初期設定を行う。
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスの初期化(内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化など)を行う(ステップS4)。なお、割込みモード2は、CPU56が内蔵する特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込みベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込み番地を示すモードである。
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチ(例えば、電源基板に搭載されている。)の出力信号の状態を1回だけ確認する(ステップS6)。その確認においてオンを検出した場合には、CPU56は、通常の初期化処理を実行する(ステップS10〜ステップS15)。
クリアスイッチがオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS7)。そのような保護処理が行われていないことを確認したら、CPU56は初期化処理を実行する。バックアップRAM領域にバックアップデータがあるか否かは、例えば、電力供給停止時処理においてバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS8)。ステップS8では、算出したチェックサムと、電力供給停止時処理で同一の処理によって算出され保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理を行う。具体的には、ROM54に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し(ステップS91)、バックアップ時設定テーブルの内容を順次作業領域(RAM55内の領域)に設定する(ステップS92)。作業領域はバックアップ電源によって電源バックアップされている。バックアップ時設定テーブルには、作業領域のうち初期化してもよい領域についての初期化データが設定されている。ステップS91およびS92の処理によって、作業領域のうち初期化してはならない部分については、保存されていた内容がそのまま残る。初期化してはならない部分とは、例えば、電力供給停止前の遊技状態を示すデータ(特別図柄プロセスフラグなど)、出力ポートの出力状態が保存されている領域(出力ポートバッファ)、未払出賞球数を示すデータが設定されている部分などである。
また、CPU56は、ROM54に格納されているバックアップ時コマンド送信テーブルの先頭アドレスをポインタに設定し(ステップS93)、その内容に従って演出制御基板80に、電力供給が復旧した旨を示す制御コマンド(電力供給復旧時の初期化コマンドとしての復旧コマンド)が送信されるように制御する(ステップS94)。そして、ステップS14aに移行する。
なお、この実施の形態では、バックアップフラグとチェックデータとの双方を用いてバックアップRAM領域のデータが保存されているか否か確認しているが、いずれか一方のみを用いてもよい。すなわち、バックアップフラグとチェックデータとのいずれかを、状態復旧処理を実行するための契機としてもよい。
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS10)。なお、RAM55の全領域を初期化せず、所定のデータ(例えば大当り図柄決定用乱数を生成するためのカウンタのカウント値のデータ)をそのままにしてもよい。また、ROM54に格納されている初期化時設定テーブルの先頭アドレスをポインタに設定し(ステップS11)、初期化時設定テーブルの内容を順次作業領域に設定する(ステップS12)。
ステップS11およびS12の処理によって、例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄バッファ、総賞球数格納バッファ、特別図柄プロセスフラグ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグに初期値が設定される。
また、CPU56は、ROM54に格納されている初期化時コマンド送信テーブルの先頭アドレスをポインタに設定し(ステップS13)、その内容に従ってサブ基板を初期化するための初期化コマンドをサブ基板に送信する処理を実行する(ステップS14)。初期化コマンドとして、可変表示装置9に表示される初期図柄を示すコマンド等がある。
そして、ステップS14aにおいて、CPU56は、各乱数回路503a,503bを初期設定する乱数回路設定処理を実行する。この場合、CPU56は、乱数回路設定プログラム551に従って処理を実行することによって、各乱数回路503a,503bにランダムRの値を更新させるための設定を行う。
また、CPU56は、シリアル通信回路505を初期設定するシリアル通信回路設定処理を実行する(ステップS14b)。この場合、CPU56は、シリアル通信回路設定プログラム556に従って処理を実行することによって、シリアル通信回路505に払出制御用マイクロコンピュータとシリアル通信させるための設定を行う。
シリアル通信回路505を初期設定すると、CPU56は、シリアル通信回路505の割り込み要求に応じて実行する割込処理の優先順位を初期設定する(ステップS14c)。この場合、CPU56は、割込優先順位設定プログラム557に従って処理を実行することによって、割込処理の優先順位を初期設定する。例えば、CPU56は、各割込処理のデフォルトの優先順位を含む所定の割込処理優先順位テーブルに従って、割込処理の優先順位を初期設定する。
また、ユーザによって各割込処理のデフォルトの優先順位を変更することもできる。例えば、CPU56は、ユーザ(例えば、遊技機の製作者)によって設定された割込処理を指定する指定情報を、あらかじめROM54の所定の記憶領域に記憶している。そして、CPU56は、ROM54の所定の記憶領域に記憶された指定情報に従って、割込処理の優先順位を設定する。
そして、CPU56は、所定時間(例えば2ms)毎に定期的にタイマ割込がかかるように遊技制御用マイクロコンピュータ560に内蔵されているCTCのレジスタの設定を行なう(ステップS15)。すなわち、初期値として例えば2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。この実施の形態では、2ms毎に定期的にタイマ割込がかかるとする。
初期化処理の実行(ステップS10〜S15)が完了すると、CPU56は、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)を繰り返し実行する。表示用乱数更新処理および初期値用乱数更新処理を実行するときには割込禁止状態に設定し(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態に設定する(ステップS19)。この実施の形態では、表示用乱数とは、変動パターンを決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。初期値用乱数とは、大当りとするか否か決定するための乱数を発生するためのカウンタ(大当り図柄決定用乱数発生カウンタ)等の、カウント値の初期値を決定するための乱数である。後述する遊技の進行を制御する遊技制御処理(遊技制御用マイクロコンピュータ560が、遊技機に設けられている可変表示装置、可変入賞球装置、球払出装置等の遊技用の装置を、自身で制御する処理、または他のマイクロコンピュータに制御させるために指令信号を送信する処理、遊技装置制御処理ともいう)において、大当り決定用乱数発生カウンタ等のカウント値が1周(大当り決定用乱数発生カウンタ等の取りうる値の最小値から最大値までの間の数値の個数分歩進したこと)すると、そのカウンタに初期値が設定される。
次に、メイン処理における乱数回路設定処理(ステップS14a)を説明する。図28は、乱数回路設定処理を示すフローチャートである。乱数回路設定処理において、CPU56は、乱数回路設定プログラム551に含まれる乱数回路選択モジュール551fに従って処理を実行し、遊技制御用マイクロコンピュータ560が内蔵する各乱数回路503a,503bの中から、遊技制御処理を含むタイマ割込処理の実行時に用いる乱数回路を設定する(ステップS151)。ユーザ(例えば、遊技機の製作者)によって設定されたタイマ割込処理の実行時に用いる乱数回路503を指定する指定情報は、あらかじめROM54の所定の記憶領域に記憶されている。そして、CPU56は、ROM54の所定の記憶領域に記憶された指定情報に従って、12ビット乱数回路503aまたは16ビット乱数回路503bのいずれかを選択し、選択した乱数回路をタイマ割込処理の実行時に用いる乱数回路として設定する。なお、この実施の形態では、大当り判定に用いられる乱数として、16ビット乱数回路503bが発生する乱数を用いるが、12ビット乱数回路503aと16ビット乱数回路503bとの双方について説明を行う。
上記のように、ステップS151において、更新可能な数値データの所定の範囲が異なる複数の乱数回路(12ビット乱数回路503aと16ビット乱数回路503b)について、それぞれ使用可能とするか否かを設定するので、タイマ割込処理の実行中に不要な乱数を処理することを防止することができ、遊技制御用マイクロコンピュータ560(具体的にはCPU56)の制御負担を軽減することができる。例えば、遊技制御用マイクロコンピュータ560が、2つの乱数回路503a,503bのうちの一方が発生する乱数のみを用いて遊技制御処理を行う場合、遊技制御処理に用いない方の乱数回路から乱数を読み出す処理等を行わないようにでき、遊技制御用マイクロコンピュータ560の制御負担を軽減できる。
CPU56は、ステップS151で使用する乱数回路503を設定すると、例えば、カウンタ521やクロック信号出力回路524の動作を停止させることによって、使用しないように設定した方の乱数回路のカウンタ521がカウント値Cを更新しないようにする。また、例えば、CPU56は、使用しないように設定した方の乱数回路のカウンタ521はカウント値Cを更新するが、CPU56は出力制御信号SCを出力しないようにし、乱数値記憶回路531から乱数を読み出せないように制御してもよい。また、例えば、CPU56は、使用しないように設定した方の乱数回路の乱数値取込レジスタ539に乱数値取込データ「01h」を書き込まないようにし、ラッチ信号生成回路533がラッチ信号SLを乱数値記憶回路531に出力しないように制御してもよい。
上記のように、使用する乱数回路503を設定するようにすることによって、使用する乱数回路503だけを設定することによって、生成する乱数の値の範囲を適切に設定することができる。また、タイマ割込処理の実行中に不要な乱数を処理することを防止することができ、遊技制御用マイクロコンピュータ560(具体的にはCPU56)の制御負担を軽減することができる。例えば、大当りとする判定値として離れた値(例えば、「1」と「100」を含む判定テーブルを用いて大当り判定を行う場合、所定の大当り確率(例えば、100分の1)で大当りと判定するようにすると、16ビット乱数回路503bによる乱数を用いるよりも、12ビット乱数回路503aによる乱数を用いた方が、処理すべき判定値の種類の数が少なくて済み、遊技制御用マイクロコンピュータ560の制御負担が軽減される。
また、CPU56は、乱数回路設定プログラム551に含まれる乱数最大値設定モジュール551aに従って処理を実行し、ユーザによってあらかじめ設定された乱数最大値を指定する乱数最大値設定データを、乱数最大値設定レジスタ535に書き込む(ステップS152)。そのようにすることによって、ユーザによってあらかじめ設定されたランダムRの乱数最大値を乱数回路503に設定する。なお、タイマ割込実行時に用いる乱数回路として12ビット乱数回路503aを設定した場合、CPU56は、乱数最大値(「0」〜「4095」のうちのいずれかの値)を指定する乱数最大値設定データを、12ビット乱数回路503aの乱数最大値設定レジスタ535に書き込む。また、タイマ割込実行時に用いる乱数回路として16ビット乱数回路503bを設定した場合、CPU56は、乱数最大値(「0」〜「65535」のうちのいずれかの値)を指定する乱数最大値設定データを、16ビット乱数回路503bの乱数最大値設定レジスタ535に書き込む。
なお、乱数最大値として「0」〜「255」が設定された場合には、後述する乱数最大値再設定処理において乱数最大値を所定値に設定しなおすことになる。また、乱数最大値として「256」以上の値を書き込む制御を行った場合であっても、データ化けなどの原因によって「0」〜「255」の値が乱数最大値設定レジスタ535に設定されてしまった場合には、後述する乱数最大値再設定処理において乱数最大値を所定値に設定しなおす。
上記のように、ステップS152において、生成する乱数の最大値をあらかじめ乱数最大値設定レジスタ535に設定するので、タイマ割込処理の実行中に用いる乱数の範囲より大きい値の乱数を生成してしまうことを防止でき、乱数回路503およびCPU56の処理負担を軽減することができる。
また、CPU56は、ステップS152で乱数最大値設定レジスタ535に設定した乱数最大値が所定の下限値以下でないかを確認し、乱数最大値が下限値以下である場合には、乱数最大値設定レジスタ535に設定されている乱数最大値の再設定を行う乱数最大値再設定処理を実行する(ステップS153)。
また、CPU56は、乱数回路設定プログラム551に含まれる初期値変更モジュール551eに従って処理を実行し、乱数回路503のカウンタ521が更新するカウント値の初期値を変更させる初期値変更処理を実行する(ステップS154)。
また、CPU56は、乱数回路設定プログラム551に含まれる乱数更新方式選択モジュール551bに従って処理を実行し、乱数更新方式選択データを乱数更新方式選択レジスタ540に書き込む(ステップS155)。そのようにすることによって、乱数回路503の乱数更新方式を設定する。なお、この実施の形態では、CPU56は、乱数更新方式選択データ「10h」を乱数更新方式選択レジスタ540に書き込むものとする。すなわち、この実施の形態では、乱数回路503の乱数更新方式として第2の乱数更新方式が設定される。
また、CPU56は、乱数回路設定プログラム551に含まれる周期設定モジュール551cに従って処理を実行し、ユーザによってあらかじめ設定された乱数発生用クロック信号SI1の周期を指定する周期設定データ(基準クロック信号を何分周させるかを設定するためのデータ)を、周期設定レジスタ537に書き込む(ステップS156)。そのようにすることによって、ユーザによってあらかじめ設定された乱数発生用クロック信号SI1の周期を乱数回路503に設定する。
また、CPU56は、乱数回路503のカウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521に入力する初期値を更新するか否かを設定する(ステップS157)。カウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521に入力する初期値を更新するか否かを示す設定値は、あらかじめユーザによって設定されROM54の所定領域に記憶されている。そして、CPU56は、ROM54の所定の記憶領域に記憶された所定の設定値に従って、カウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521に入力する初期値を更新するか否かを設定する。この実施の形態では、CPU56は、ステップS157において、カウンタ521に入力する初期値を更新すると判定すると、所定の最終値までカウント値が更新されたとき(カウンタ521から通知信号を入力したとき)に初期値を更新する旨を示す初期値更新フラグをセットする。
なお、CPU56によってカウント値の初期値を変更するのでなく、最終値までカウント値を更新したことにもとづいて、乱数回路503側でカウント値の初期値を所定値に変更するようにしてもよい。例えば、乱数回路503は、初期値を更新する旨を示す初期値更新データを格納する初期値更新データレジスタ、および初期値の変更を行う初期値変更回路を備え、CPU56は、ステップS157において、初期値更新データを初期値更新データレジスタに設定する。この場合、カウンタ521は、最終値までカウント値を更新すると、通知信号を初期値変更回路に出力する。すると、初期値変更回路は、初期値更新データレジスタに初期値更新データが設定されているか否かを確認する。そして、初期値変更回路は、初期値更新データが設定されていることを確認すると、カウント値の初期値を所定値に変更する。なお、初期値変更回路は、後述するカウント値順列変更処理において、順列を変更したカウント値の初期値を変更してもよい。
また、CPU56は、乱数回路503のカウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521が更新するカウント値の順列を変更するか否かを設定する(ステップS158)。カウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521が出力するカウント値の順列を変更するか否かを示す設定値は、あらかじめユーザによって設定されROM54の所定領域に記憶されている。そして、CPU56は、ROM54の所定の記憶領域に記憶された所定の設定値に従って、カウンタ521によって所定の最終値までカウント値が更新されたときに、カウンタ521が出力するカウント値の順列を変更するか否かを設定する。この実施の形態では、CPU56は、ステップS158において、カウンタ521が出力するカウント値の順列を変更すると判定すると、所定の最終値までカウント値が更新されたときにカウント値の順列を変更する旨を示すカウント値順列変更フラグをセットする。この実施の形態では、ステップS158において、所定の設定値に従ってカウント値順列変更フラグをセットする場合を説明する。CPU56は、後述するカウント値順列変更処理において、カウント値順列変更フラグがセットされていることにもとづいて、カウンタ521が出力するカウント値の順列を変更する。
なお、CPU56の制御によってカウント値の順列を変更するのでなく、最終値までカウント値を更新したことにもとづいて、乱数回路503側でカウント値の順列を変更するようにしてもよい。例えば、乱数回路503は、カウント値の順列を変更する旨を示す順列変更データを格納する順列変更データレジスタを備え、CPU56は、ステップS158において、順列変更データを順列変更データレジスタに設定する。この場合、カウンタ521が最終値までカウント値を更新すると、通知信号をカウント値順列変更回路523に出力し、通知信号を入力したカウント値順列変更回路523は、順列変更データレジスタに順列変更データが設定されているか否かを確認する。そして、カウント値順列変更回路523は、順列変更データが設定されていることを確認すると、カウント値の順列を変更する。
そして、CPU56は、乱数回路設定プログラム551に含まれる乱数回路起動モジュール551dに従って処理を実行し、乱数回路起動データ「80h」を乱数回路起動レジスタ541に書き込む(ステップS159)。そのようにすることによって、CPU56は、乱数回路503を起動させる。
次に、乱数回路設定処理における乱数最大値再設定処理(ステップS153)を説明する。図29は、乱数最大値再設定処理を示すフローチャートである。乱数最大値再設定処理において、CPU56は、乱数最大値設定レジスタ535に設定されている乱数最大値を読み込む(ステップS153a)。なお、タイマ割込処理の実行時に用いる乱数回路として12ビット乱数回路503aを設定した場合には、CPU56は、12ビット乱数回路503aの乱数最大値設定レジスタ535に設定されている乱数最大値を読み込む。また、この実施の形態のように、タイマ割込処理の実行時に用いる乱数回路として16ビット乱数回路503bを設定した場合には、CPU56は、16ビット乱数回路503bの乱数最大値設定レジスタ535に設定されている乱数最大値を読み込む。
CPU56は、読み込んだ乱数最大値が所定の下限値以下であるか否かを判定する(ステップS153b)。12ビット乱数回路503aを設定した場合、12ビット乱数回路503aにおいて設定可能な乱数最大値が「256」から「4095」までであるので、CPU56は、12ビット乱数回路503aの乱数最大値設定レジスタ535から読み込んだ乱数最大値が下限値「256」以下であるか否かを判定する。また、16ビット乱数回路503bを設定した場合、16ビット乱数回路503bにおいて設定可能な乱数最大値が「256」から「65535」までであるので、CPU56は、16ビット乱数回路503bの乱数最大値設定レジスタ535から読み込んだ乱数最大値が下限値「256」以下であるか否かを判定する。
読み込んだ乱数最大値が下限値以下である場合には、CPU56は、乱数最大値設定レジスタ535に設定される乱数最大値を所定値に設定しなおす(ステップS153c)。12ビット乱数回路503aを設定した場合には、12ビット乱数回路503aの乱数最大値設定レジスタ535から読み込んだ乱数最大値が下限値「256」以下であると判定すると、CPU56は、乱数最大値設定レジスタ535に設定される乱数最大値を所定値「4095」に設定しなおす。また、16ビット乱数回路503bを設定した場合、16ビット乱数回路503bの乱数最大値設定レジスタ535から読み込んだ乱数最大値が下限値「256」以下であると判定すると、CPU56は、乱数最大値設定レジスタ535に設定される乱数最大値を所定値「65535」に設定し直す。
以上のように、乱数最大値設定レジスタ535に設定した乱数最大値が所定の下限値以下となっている場合には、乱数最大値を所定値に設定しなおす。そのため、遊技制御用マイクロコンピュータ560の誤動作や、無線信号を用いた取り込み信号を遊技機に対して発生させるなどの行為によって、過度に小さい値が乱数の最大値として設定されてしまうことを防止することができる。従って、最小値から最大値までの値の範囲が過度に小さい乱数を生成する事態が発生することを防止することができる。
なお、この実施の形態では、ステップS152において、ユーザによってあらかじめ設定された乱数最大値を指定する乱数最大値設定データが、乱数最大値設定レジスタ535に書き込まれている。何らかの原因で書き込まれたはずの乱数最大値が変わった(所定の下限値以下になった)場合でも、乱数最大値は所定の下限値以下のまま放置されることはない。また、ステップS152の処理を実行しないようにしてもよい。その場合でも、ステップS153の処理で、乱数最大値は所定の下限値以下のまま放置されることはない。
次に、乱数回路設定処理における初期値変更処理(ステップS154)を説明する。図30は、初期値変更処理を示すフローチャートである。初期値変更処理において、CPU56は、まず、ユーザプログラム実行データエリアの1F97h番地の領域に記憶されている初期値変更方式設定データを読み出し、ユーザによって選択された初期値変更方式を特定する。この場合、CPU56は、読み出した初期値変更方式設定データの値が「01h」であるか否かを判定することによって(ステップS154a)、ユーザによって選択された初期値変更方式を特定する。
初期値変更方式設定データの値が「01h」である場合、CPU56は、乱数回路503のカウンタ521に入力する初期値を、遊技制御用マイクロコンピュータ560固有のIDナンバにもとづいて設定された値に変更する(ステップS154b)。例えば、CPU56は、ROM54の所定の記憶領域に、遊技制御用マイクロコンピュータ560のIDナンバと、IDナンバにもとづいて所定の演算を行って求めた演算値とをあらかじめ対応付けて記憶している。そして、ステップS154bにおいて、CPU56は、記憶されているIDナンバにもとづく演算値にカウント値の初期値を変更させる。また、例えば、ステップS154bにおいて、CPU56は、遊技制御用マイクロコンピュータ560のIDナンバと所定値とを演算して(例えば、IDナンバ(例えば、「100」)に所定値(例えば、「100」)を加算して)求めた演算値(例えば、「200」)にカウント値の初期値を設定する。また、カウンタ521に入力する初期値を変更すると、遊技制御用マイクロコンピュータ560は、カウント値の初期値を変更した旨を示す初期値変更フラグをセットする(ステップS154c)。
なお、CPU56は、ステップS154bにおいてカウンタ521に入力する初期値を変更する際、乱数回路503の比較器522の乱数最大値設定レジスタ535の値を確認し、IDナンバにもとづいて設定された値が乱数最大値以上であるか否かを判断する。そして、IDナンバにもとづいて設定された値が乱数最大値以上であると判断すると、CPU56は、カウンタ521に入力する初期値を変更しない(例えば、初期値を「0」のまま変更しない)。そのようにすることによって、カウント値の初期値が乱数最大値以上の値に設定されてしまう事態を防止することができる。
ステップS154aにおいて、初期値変更方式設定データの値が「01h」でない場合(すなわち、ユーザプログラム実行データエリアの1F97h番地の領域に記憶されている初期値変更方式設定データの値が「00h」である場合)、CPU56は、カウント値の初期値の変更を行わず、そのまま初期値変更処理を終了し、ステップS155に移行する。
乱数回路設定処理が実行されることによって、遊技制御処理を含むタイマ割込処理の実行時に乱数回路503に各種信号が入力され、乱数回路503内で各種信号が生成される。図31は、乱数回路503に各信号が入力されるタイミング、および乱数回路503内で各信号が生成されるタイミングを示すタイミングチャートである。
図31に示すように、クロック回路501は、所定周期ごと(図31に示すタイミングT11,T21,・・・)に、出力端子の信号レベルをローレベルからハイレベルに立ち上げることによって、乱数回路503に基準クロック信号CLK(図31(A)参照)を入力する。
クロック信号出力回路524は、クロック回路501から供給された基準クロック信号CLKを分周し、乱数発生用クロック信号SI1(図31(B)参照)を生成する。例えば、クロック信号出力回路524は、タイミングT11,T12,・・・で出力端子の信号レベルをローレベルからハイレベルに立ち上げ、タイミングT21,T22,・・・で信号レベルをハイレベルからローレベルに立ち下げることによって、乱数発生用クロック信号SI1を出力する。
なお、図31に示す例では、説明を分かりやすくするために、クロック信号出力回路524が基準クロック信号CLKを2分周して乱数発生用クロック信号SI1を生成する場合を示している。しかし、実際の乱数回路では、周期設定レジスタ537に設定可能な周期は「システムクロック信号の周期×128×7」から「システムクロック信号の周期×128×256」まである。従って、実際の乱数回路では、クロック信号出力回路524は、「システムクロック信号の周期×128×7」から「システムクロック信号の周期×128×256」までの範囲で周期設定レジスタ537に設定される周期設定データ「07h」〜「FFh」に対応した分周比で、基準クロック信号CLKを分周し乱数発生用クロック信号SI1を生成する。クロック信号出力回路524によって生成された乱数発生用クロック信号SI1は、セレクタ528と反転回路532とに出力される。
この実施の形態では、乱数回路設定処理において、第2の乱数更新方式が設定されるので、乱数更新方式選択信号出力回路527から第2の乱数更新方式選択信号がセレクタ528に入力される。セレクタ528は、乱数更新方式選択信号出力回路527から第2の乱数更新方式選択信号が入力されると、クロック信号出力回路524から入力した乱数発生用クロック信号SI1を選択してカウンタ521に出力する。カウンタ521は、セレクタ528から供給される乱数発生用クロック信号SI1の立ち上がりエッヂが入力されるごとに、カウント値Cを更新してカウント値順列変更回路523に出力する。
反転回路532は、クロック信号出力回路524から入力した乱数発生用クロック信号SI1の信号レベルを反転させることによって、反転クロック信号SI2(図31(C)参照)を生成する。例えば、反転回路532は、タイミングT11,T12,・・・で出力端子の信号レベルをハイレベルからローレベルに立ち下げ、タイミングT21,T22,・・・で信号レベルをローレベルからハイレベルに立ち上げることによって、反転クロック信号SI2を出力する。また、反転回路532によって生成された反転クロック信号SI2は、ラッチ信号生成回路533に出力される。
ラッチ信号生成回路533には、入賞検出信号SS(図31(D)参照)がタイマ回路534に入力されてから所定時間(例えば3ミリ秒)が経過すると、乱数値読取信号出力回路526から乱数値読取信号が入力される。例えば、乱数値読取信号出力回路526の出力端子の信号レベルがローレベルからハイレベルに立ち上がることによって、ラッチ信号生成回路533に乱数値読取信号が入力される。ラッチ信号生成回路533は、乱数更新方式選択信号出力回路527から第2の乱数更新方式選択信号が入力されたことに応じて、乱数値読取信号出力回路526から入力する乱数値読取信号を反転回路532から供給される反転クロック信号SI2の立ち上がりエッヂに同期させて、ラッチ信号SL(図31(E)参照)を出力する。
以上のように、乱数回路503は、タイミングT11,T12,T13・・・においてカウント値Cを更新し、タイミングT11,T12,T13とは異なるタイミングT22においてラッチ信号SLを出力させ、乱数値記憶回路531に乱数値を記憶する。
次に、遊技制御処理について説明する。図32は、タイマ割込処理を示すフローチャートである。メイン処理の実行中に、具体的には、ステップS16〜S19のループ処理の実行中における割込許可になっている期間において、タイマ割込が発生すると、CPU56は、図32に示すステップS20〜S34のタイマ割込処理を実行する。タイマ割込処理において、まず、電源断信号が出力されたか否か(オン状態になったか否か)を検出する電源断検出処理を実行する(ステップS20)。電源断信号は、例えば電源基板に搭載されている電圧低下監視回路が、遊技機に供給される電源の電圧の低下を検出した場合に出力する。そして、電源断検出処理において、CPU56は、電源断信号が出力されたことを検出したら、必要なデータをバックアップRAM領域に保存するための電力供給停止時処理を実行する。次いで、入力ドライバ回路58を介して、ゲートスイッチ32a、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23の検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
次に、CPU56は、第1特別図柄表示器8a、第2特別図柄表示器8b、普通図柄表示器10、第1特別図柄保留記憶表示器18a、第2特別図柄保留記憶表示器18bおよび普通図柄保留記憶表示器41の表示制御を行う表示制御処理を実行する(ステップS22)。第1特別図柄表示器8a、第2特別図柄表示器8bおよび普通図柄表示器10については、ステップS32,S33で設定された出力バッファの内容に応じて各表示器に対して駆動信号を出力する制御を実行する。
また、CPU56は、乱数回路設定処理において所定の最終値までカウント値が更新されたときに初期値を更新する旨の設定がされているか否か(ステップS157参照)を確認し、乱数回路503のカウンタ521に入力する初期値を更新する処理を行う(乱数回路初期値更新処理:ステップS23A)。
次いで、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(判定用乱数更新処理:ステップS23)。CPU56は、さらに、初期値用乱数および表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(初期値用乱数更新処理,表示用乱数更新処理:ステップS24,S25)。
図33は、各乱数を示す説明図である。各乱数を示す説明図である。各乱数は、以下のように使用される。
(2)ランダム2:大当りを発生させる特別図柄を決定する(大当り図柄決定用)
(3)ランダム3: 特別図柄のはずれ図柄を決定する(はずれ図柄決定用)
(4)ランダム4:特別図柄および飾り図柄の変動パターンを決定する(変動パターン決定用)
(5)ランダム5:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(6)ランダム6:ランダム1の初期値を決定する(ランダム1初期値決定用)
(7)ランダム7:ランダム5の初期値を決定する(ランダム5初期値決定用)
図32に示された遊技制御処理におけるステップS23では、遊技制御用マイクロコンピュータ560は、(2)の大当り図柄決定用乱数、(3)のはずれ図柄決定用乱数および(5)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数または初期値用乱数である。なお、遊技効果を高めるために、上記(2)〜(7)の乱数以外の乱数も用いられている。
次いで、CPU56は、乱数回路503のカウンタ521が出力するカウント値の順列をカウント値順列変更回路523に変更させるカウント値順列変更処理を行う(ステップS25A)。この実施の形態では、乱数回路設定処理のステップS158でカウント値順列変更フラグがセットされているか否かによって、カウント値順列変更処理を実行するか否かが決定されている。そして、CPU56は、カウント値順列変更フラグがセットされていることにもとづいて、カウント値順列変更処理を実行する。
さらに、CPU56は、第1特別図柄プロセス処理を行う(ステップS26A)。第1特別図柄プロセス処理では、遊技状態に応じて第1特別図柄表示器8aや特別可変入賞球装置を所定の順序で制御するための第1特別図柄プロセスフラグに従って該当する処理を実行する。CPU56は、第1特別図柄プロセスフラグの値を、遊技状態に応じて各処理中に更新する。次いで、CPU56は、第2特別図柄プロセス処理を行う(ステップS26B)。第2特別図柄プロセス処理では、遊技状態に応じて第2特別図柄表示器8bや特別可変入賞球装置を所定の順序で制御するための第2特別図柄プロセスフラグに従って該当する処理を実行する。CPU56は、第2特別図柄プロセスフラグの値を、遊技状態に応じて各処理中に更新する。
また、普通図柄プロセス処理を行う(ステップS27)。普通図柄プロセス処理では、CPU56は、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理を実行する。CPU56は、普通図柄プロセスフラグの値を、遊技状態に応じて各処理中に更新する。
次いで、CPU56は、第1可変表示部9aおよび第2可変表示部9bの表示制御に関する演出制御コマンドや保留記憶数に関する演出制御コマンドを送出する処理を行う(演出制御コマンド制御処理:ステップS28)。
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
また、CPU56は、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23の検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS30)。具体的には、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23のいずれかがオンしたことにもとづく入賞検出に応じて、払出制御基板37に搭載されている払出制御用マイクロコンピュータに賞球個数を示す払出制御コマンドを出力する。払出制御用マイクロコンピュータは、賞球個数を示す払出制御コマンドに応じて球払出装置97を駆動する。
この実施の形態では、出力ポートの出力状態に対応したRAM領域(出力ポートバッファ)が設けられているが、CPU56は、出力ポートのRAM領域におけるソレノイドのオン/オフに関する内容を出力ポートに出力する(ステップS31:出力処理)。
また、CPU56は、第1特別図柄プロセスフラグの値に応じて第1特別図柄の演出表示を行うための第1特別図柄表示制御データを第1特別図柄表示制御データ設定用の出力バッファに設定するとともに、第2特別図柄プロセスフラグの値に応じて第2特別図柄の演出表示を行うための第2特別図柄表示制御データを第2特別図柄表示制御データ設定用の出力バッファに設定する特別図柄表示制御処理を行う(ステップS32)。CPU56は、例えば、変動速度が1コマ/0.2秒であれば、0.2秒が経過する毎に、出力バッファに設定される表示制御データの値を+1する。また、CPU56は、出力バッファに設定された表示制御データに応じて、ステップS22において駆動信号を出力することによって、第1特別図柄表示器8aおよび第2特別図柄表示器8bにおける特別図柄の可変表示を実行する。
さらに、CPU56は、普通図柄プロセスフラグの値に応じて普通図柄の演出表示を行うための普通図柄表示制御データを普通図柄表示制御データ設定用の出力バッファに設定する普通図柄表示制御処理を行う(ステップS33)。CPU56は、例えば普通図柄の変動速度が0.2秒ごとに表示状態(「○」および「×」)を切り替えるような速度であれば、0.2秒が経過する毎に、出力バッファに設定される表示制御データの値(例えば、「○」を示す1と「×」を示す0)を切り替える。また、CPU56は、出力バッファに設定された表示制御データに応じて、ステップS22において駆動信号を出力することによって、普通図柄表示器10における普通図柄の演出表示を実行する。その後、割込許可状態に設定し(ステップS34)、処理を終了する。
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、遊技制御処理は、タイマ割込処理におけるステップS21〜S33(ステップS29を除く。)の処理に相当する。また、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
なお、この実施の形態では、第1特別図柄表示器8aと第2特別図柄表示器8bの2つの表示器によって第1特別図柄および第2特別図柄の変動表示が実行されるが、CPU56は、2つの表示器において同時に大当りが発生しないような制御を行う。
図34は、特別図柄保留記憶表示部18cの表示の仕方を説明するための説明図である。図34(A)に示すように、特別図柄保留記憶表示部18cには、第1保留記憶数と第2保留記憶数との合計として8つの合計数まで表示可能である。そして、第1始動条件が成立したときに、第1特別図柄の可変表示を開始できる状態でなければ、第1保留記憶数が上限値に達していないことを条件として、特別図柄保留記憶表示部18cに表示される保留記憶数(合計数)が1増やされる。また、第2始動条件が成立したときに、第2特別図柄の可変表示を開始できる状態でなければ、第2保留記憶数が上限値に達していないことを条件として、特別図柄保留記憶表示部18cに表示される保留記憶数(合計数)が1増やされる(図34(B)参照)。
しかし、図34(C)に例示するように、この実施の形態では、第1保留記憶数が上限値に達していても、合計数が上限値に達していなければ、特別図柄保留記憶表示部18cに表示される合計数を1増やす。ただし、上述したように、その増加分は、あくまで無効始動入賞に対応したものである。
なお、合計数を、可変表示装置9における特別図柄保留記憶表示部18cに代えて、例えば、可変表示装置9の外部に8つの表示を有する表示部を設け、その表示部に合計数を表示するようにしてもよい。
図35は、この実施の形態で用いられる特別図柄および飾り図柄の変動パターン(変動時間)を示す説明図である。図35に示すEXTとは、それぞれの変動パターンに対応した演出制御コマンド(2バイト構成)の2バイト目のデータである。
図35に示す例では、第1特別図柄および第1飾り図柄についての第1変動パターン#1〜#8の8種類と、第2特別図柄および第2飾り図柄についての第2変動パターン#1〜#8の8種類とが用いられる。なお、第1変動パターン#1〜#8のそれぞれは、第2変動パターン#1〜#8のそれぞれと同じであるが、演出制御コマンドとして別になっているので、図35において別個に示されている。以下、例えば変動パターン#n(n=1〜8)というときには、第1変動パターン#nと第2変動パターン#nの双方を意味する。
図35に示すように、通常状態および確変状態において変動パターン#1〜#4が用いられ、時短状態において変動パターン#5〜#8が用いられる。すなわち、通常時と確変時とで、変動時間は同じである。なお、通常状態のときである通常時に比べて、確変状態では、はずれ変動(停止図柄が大当り図柄にならず、かつ、リーチにもならない変動)時の変動時間を短くしてもよい。
図36は、背景図柄の変動パターン(変動時間)の種類を示す説明図である。この実施の形態では、通常状態および確変状態において、19種類(No.1、No.2、No.4、No.6、No.9、No.2*〜No.8*およびNo.10*〜No.16*)の変動パターンが用いられる。ただし、図36および下記記述には、No.3*、No.5*、No.7*、No.8*、No.10*〜No.16*の変動パターンの変動時間および変動態様(仮停止の有無)を示す等の理由で、実際には使用されないNo.3、No.5、No.7、No.8、No.10〜No.16も記載されている。No.1〜No.8の変動時間は、No.9〜No.16の変動時間と同じである。ただし、No.9〜No.16の変動パターンでは、変動パターン中に仮停止の状態がある。仮停止の回数は、1回に限られず、変動パターン中に複数回の仮停止がなされることがある。なお、仮停止とは、背景図柄が一旦停止表示された後に再度可変表示が実行されるような場合の停止のことをいう。また、仮停止しているときに、例えば、上下方向に繰り返し微小に変動(揺れ変動)してもよい。また、No.2*〜No.8*の変動時間は、No.2〜No.8の変動時間と同じであるが、No.2*〜No.8*の背景図柄変動パターンは、一例として最初の5秒間において高速変動(例えば、左中右の背景図柄がそれぞれ高速変動)し、5秒経過後に例えば左右の背景図柄が揃って停止し、その後、背景図柄表示部9cにおいてリーチ演出が行われるような変動パターンである。No.10*〜No.16*の変動時間は、No.10〜No.16の変動時間と同じであるが、やはり仮停止の状態を含むNo.10*〜No.16*の背景図柄変動パターンは、一例として最初の5秒間において高速変動(例えば、左中右の背景図柄がそれぞれ高速変動)し、5秒経過後に例えば左右の背景図柄が揃って停止し、その後、背景図柄表示部9cにおいてリーチ演出が行われるような変動パターンである。なお、No.2〜No.8の背景図柄変動パターンの背景図柄変動パターンを用いる場合、演出制御用マイクロコンピュータ100は、通常変動が終了したときに、例えば左右の背景図柄が揃って停止させる。また、No.2〜No.8の背景図柄変動パターンの背景図柄変動パターンは、リーチ演出が行われるような変動パターンである。
なお、背景図柄変動パターンNo.1およびNo.9は、例えば背景図柄が高速変動(表示される背景図柄が短時間で変わるような変動)する変動パターンである。また、「リーチ変動」になっている変動パターンは、変動時間が経過する前に、リーチ態様を表示するような変動パターンである。具体的には、背景図柄変動パターン名に「*」が付されていない背景図柄変動パターンは、背景図柄の変動が開始されるときに選択される背景図柄変動パターン(ステップS922,S923の処理で選択される背景図柄変動パターンNo.1およびNo.9)、後述する背景図柄の変動の切替が行われないときに切替タイミングにおいて選択される背景図柄変動パターン(ステップS969,S959の処理で選択される背景図柄変動パターンNo.2、No.4、No.6)、および背景図柄の変動の切替は行われるが切替後の変動時間(変動開始から変動終了までの全体の変動時間)が10秒であるときに選択される背景図柄変動パターン(ステップS641,S642の処理で選択される背景図柄変動パターンNo.1およびNo.9)である。背景図柄変動パターン名に「*」が付されている背景図柄変動パターンは、背景図柄の変動の切替が行われるときに切替後の背景図柄変動パターンとして選択される背景図柄変動パターン(ステップS983の処理で選択される背景図柄変動パターンNo.2*〜No.7*、ステップS982の処理で選択される背景図柄変動パターンNo.10*〜No.15*、およびステップS642の処理で選択されるNo.4*、No.6*、No.8*と、ステップS641の処理で選択されるNo.12*、No.14*、No.16*)として使用される。
図36に示す可変表示時間(変動時間)の種類は、図35に示す変動時間の種類とは異なっている。このように異なっているのは、原則として背景図柄の可変表示は特別図柄の可変表示と同期(可変表示時間が同じことを意味する。)するのであるが、第1特別図柄の可変表示期間と第2特別図柄の可変表示期間とが一部重複した場合には、背景図柄の変動時間は、第1特別図柄の変動時間にも一致しないし、第2特別図柄の変動時間にも一致しないからである。例えば、第1特別図柄の変動時間が10秒であり、第2特別図柄の変動時間が20秒であり、第1特別図柄の可変表示期間と第2特別図柄の可変表示期間とが5秒間重複した場合には、背景図柄の可変表示と特別図柄の可変表示とを同期させると、背景図柄の変動時間は25秒になる。
なお、第1特別図柄の可変表示期間と第2特別図柄の可変表示期間とが重複しない場合には、特別図柄の変動パターンに対応する背景図柄の変動パターンは、図36に示された背景図柄変動パターンのうちの2つの組み合わせ(一方は、No.1またはNo.9)で実現される。例えば、特別図柄の変動時間(可変表示時間)が20秒である場合には、背景図柄の変動パターンとしてNo.1およびNo.2が用いられる。
図37〜図41は、特別図柄および飾り図柄の可変表示と背景図柄の可変表示(変動)との関係の一例を模式的に示す説明図である。図37は、第1特別図柄および第1飾り図柄の可変表示期間と第2特別図柄および第2飾り図柄の可変表示期間とが重複しない場合の例を示す。その場合には、背景図柄は、第1特別図柄および第1飾り図柄、または第2特別図柄および第2飾り図柄に同期して変動する。
図38は、第1特別図柄および第1飾り図柄の変動が開始された後、その変動が終了しないうちに第2特別図柄および第2飾り図柄の変動が開始された場合の例を示す。そして、第2特別図柄および第2飾り図柄の変動時間が、第1特別図柄および第1飾り図柄の変動時間の残り時間よりも長い場合を示す。その場合には、第1特別図柄および第1飾り図柄の変動開始時に、背景図柄の変動が開始され、第2特別図柄および第2飾り図柄の変動開始時に、第2特別図柄および第2飾り図柄の変動に対応した変動に切り替わり、第2特別図柄および第2飾り図柄の変動終了時に、背景図柄の変動も終了する。ただし、この実施の形態では、後述するように、第2特別図柄および第2飾り図柄の変動開始時に直ちに背景図柄の変動の態様が切り替わるのではなく、第1特別図柄および第1飾り図柄の変動開始時から一定時間(例えば、10秒:背景図柄の変動開始時点から切替ポイントまでの時間)が経過したときに切り替わるように制御される。そのような制御が実行されることによって、背景図柄の変動開始後に直ぐに変動の態様が変化してしまって遊技者に違和感を与えることが防止される。また、この実施の形態では、例外はあるが、第1特別図柄と第1飾り図柄の可変表示が実行されているとき、または第2特別図柄と第2飾り図柄の可変表示が実行されているときに、第1特別図柄と第1飾り図柄または第2特別図柄と第2飾り図柄の可変表示に対応した背景図柄の可変表示が実行され、所定の可変表示時間が経過したときに、第1特別図柄と第1飾り図柄、または第2特別図柄と第2飾り図柄の可変表示の表示結果に対応する演出結果が背景図柄表示部9cに導出表示される。従って、特別図柄および飾り図柄の変動に対応した背景図柄の変動とは、例えば、特別図柄および飾り図柄の変動が通常変動(この実施の形態では、変動時間が10秒の変動)である場合のリーチ演出(例えば、変動途中で左右の背景図柄が揃った状態で停止)を含まず、停止図柄がはずれ図柄となる態様の変動であり、特別図柄および飾り図柄の変動が、停止図柄が大当り図柄となる変動である場合のリーチ演出を含み、停止図柄が大当り図柄となる態様の変動である。また、第1特別図柄および第1飾り図柄の変動開始時から一定時間が経過した時点を、以下、切替ポイントという。
図39は、第1特別図柄および第1飾り図柄の変動が開始された後、その変動が終了しないうちに、第2特別図柄および第2飾り図柄の変動が開始され、かつ、第2特別図柄および第2飾り図柄の変動が終了する場合の例を示す。その場合には、第1特別図柄および第1飾り図柄の変動開始時に、背景図柄の変動が開始され、第2特別図柄および第2飾り図柄の変動開始時に、第2特別図柄および第2飾り図柄の変動に対応した変動に切り替わらず、第1特別図柄および第1飾り図柄の変動終了時に、背景図柄の変動も終了する。
図40は、第1特別図柄および第1飾り図柄の変動(停止図柄ははずれ図柄)が開始された後、その変動が終了しないうちに、停止図柄を大当り図柄とする第2特別図柄および第2飾り図柄の変動が開始され、かつ、第1特別図柄および第1飾り図柄の変動終了時から所定時間以内の手前の時点で第2特別図柄および第2飾り図柄の変動が終了する場合の例を示す。その場合には、第1特別図柄および第1飾り図柄の変動開始時に、背景図柄の変動が開始され、第2特別図柄および第2飾り図柄の変動開始時に、第2特別図柄および第2飾り図柄の変動に対応した変動に切り替わらず、第1特別図柄および第1飾り図柄の変動終了時に、背景図柄の変動も終了するが、背景図柄表示部9cには、大当り図柄が停止表示される。
図41は、第1特別図柄および第1飾り図柄の変動(停止図柄ははずれ図柄)が開始された後、その変動が終了しないうちに、第2特別図柄および第2飾り図柄の変動が開始され、かつ、第1特別図柄および第1飾り図柄の変動終了時から所定時間を越える手前の時点で第2特別図柄および第2飾り図柄の変動が終了する場合の例を示す。その場合には、第1特別図柄および第1飾り図柄の変動開始時に、背景図柄の変動が開始され、第2特別図柄および第2飾り図柄の変動開始時に、第2特別図柄および第2飾り図柄の変動に対応した変動に切り替わらないが、第2特別図柄および第2飾り図柄の変動終了時に、背景図柄の変動も終了し、背景図柄表示部9cには、大当り図柄が停止表示される。
以下、切替ポイントおよび合算保留記憶数について図42〜図46の説明図を参照して説明する。なお、この実施の形態では、第1特別図柄および第1飾り図柄の変動開始時から、背景図柄変動パターンのうち最初に実行される方、すなわち切り替えても違和感がない背景図柄変動パターン(No.1およびNo.9)の変動時間に対応する時間が経過した時点(例えば10秒後)を切替ポイントとする。ただし、10秒は単なる一例である。また、図42〜図46では、第1特別図柄および第1飾り図柄の変動が、第2特別図柄および第2飾り図柄の変動よりも早く開始された場合を例にするが、第2特別図柄および第2飾り図柄の変動が第1特別図柄および第1飾り図柄の変動よりも早く開始された場合には、第2特別図柄および第2飾り図柄の変動の変動開始時から10秒後が切替ポイントである。この実施の形態では、背景図柄の変動が開始されると、所定の時間(変動開始から切替ポイントまでの時間)が経過するまで背景図柄の変動の切替(例えば、第1特別図柄および第1飾り図柄に対応した変動から、第2特別図柄および第2飾り図柄に対応した変動への切替)を実行しない。そして、変動開始から切替ポイントまでは、その後に背景図柄の切替が実行されても違和感がない背景図柄変動パターン、すなわち他の背景図柄変動パターンに移行しやすい背景図柄変動パターン(この例では、No.1およびNo.9)にもとづいて背景図柄の変動を行う。その変動の実行後に、他の背景図柄変動パターンに切り替える。その切替時点を切替ポイントとする。また、切替ポイントにおいて、他方の特別図柄および飾り図柄の変動(切替ポイント以前に行われていた背景図柄の変動に対応した特別図柄および飾り図柄と異なる方の特別図柄および飾り図柄の変動)が行われていれば、他方の特別図柄および飾り図柄の変動時間の残り時間に相当する背景図柄変動パターンが選択される。
図42は、切替ポイントになる前に第2特別図柄および第2飾り図柄の変動が開始された場合を示す説明図である。そして、切替ポイントにおいて、第2特別図柄および第2飾り図柄の変動時間の残り時間の方が、第1特別図柄および第1飾り図柄の変動時間の残り時間よりも長い。そして、第2特別図柄および第2飾り図柄の変動時間の残り時間が25秒である場合が例示されている。その場合には、演出制御用マイクロコンピュータ100は、切替ポイントにおいて、背景図柄の変動の態様を、背景図柄変動パターンNo.1の態様から背景図柄変動パターンNo.5*の変動の態様(図36参照)に切り替えるように制御する。この例では、背景図柄変動パターンNo.1の変動は、第1特別図柄および第1飾り図柄の変動に対応した背景図柄の変動に相当し、背景図柄変動パターンNo.5*の変動は、第2特別図柄および第2飾り図柄の変動に対応した背景図柄の変動に相当する。なお、この実施の形態では、背景図柄の変動が開始されるときには、常に、高速変動である背景図柄変動パターンNo.1またはNo.9の態様が用いられる。
また、第1保留記憶数は第1特別図柄および第1飾り図柄の変動開始時に1減算され、第2保留記憶数は第2特別図柄および第2飾り図柄の変動開始時に1減算される。合算保留記憶数は、第1特別図柄および第1飾り図柄の変動開始時に1減算されるとともに、第2特別図柄および第2飾り図柄の変動に対応した背景図柄の変動に切り替わったときすなわち切替ポイントにおいて1減算される。
図43は、切替ポイントになる前に第2特別図柄および第2飾り図柄の変動が開始された場合の他の例を示す説明図である。そして、切替ポイントにおいて、第1特別図柄および第1飾り図柄の変動時間の残り時間の方が、第2特別図柄および第2飾り図柄の変動時間の残り時間よりも長い。そして、第1特別図柄および第1飾り図柄の変動時間の残り時間が20秒である場合が例示されている。その場合には、演出制御用マイクロコンピュータ100は、切替ポイントにおいて、背景図柄の変動の態様を、背景図柄変動パターンNo.1の態様から背景図柄変動パターンNo.4の変動の態様(図36参照)に切り替えるように制御する。この例では、背景図柄変動パターンNo.1の変動および背景図柄変動パターンNo.4の変動は、第1特別図柄および第1飾り図柄の変動に対応した背景図柄の変動に相当する。なお、第1特別図柄は遊技制御用マイクロコンピュータ560によって制御されるが、第1飾り図柄は演出制御用マイクロコンピュータ100によって制御される。そして、演出制御用マイクロコンピュータ100は、第1変動パターン#3を示す演出制御コマンドを受信すると図43に示すような第1飾り図柄の変動が行われるように制御し、第1飾り図柄の変動に対応した背景図柄の変動を、背景図柄変動パターンNo.1の変動および背景図柄変動パターンNo.4で実現する。
なお、図43に例示したような場合、すなわち切替ポイントにおいて第1特別図柄および第1飾り図柄の変動に対応した態様から第2特別図柄および第2飾り図柄の変動に対応した態様に切り替えない場合には、演出制御用マイクロコンピュータ100は、切替ポイントにおいて合算保留記憶数を減算しない。しかし、第1特別図柄および第1飾り図柄の変動に対応した態様から第2特別図柄および第2飾り図柄の変動に対応した態様に切り替えない場合にも、切替ポイントにおいて合算保留記憶数を1減算するようにしてもよい。
図44は、切替ポイントになった後に第2特別図柄および第2飾り図柄の変動が開始された場合を示す説明図である。演出制御用マイクロコンピュータ100は、切替ポイントにおいて、第1特別図柄および第1飾り図柄の変動時間の残り時間である20秒に対応する背景図柄変動パターンNo.4を選択している。そして、第2特別図柄および第2飾り図柄の変動が開始される時点において、第2特別図柄および第2飾り図柄の変動時間の方が、第1特別図柄および第1飾り図柄の変動時間の残り時間よりも長い。図44には、第2特別図柄および第2飾り図柄の変動時間が30秒である場合が例示されている。その場合には、演出制御用マイクロコンピュータ100は、その時点において、背景図柄の変動の態様を、背景図柄変動パターンNo.4の態様から背景図柄変動パターンNo.6*の変動の態様(図36参照)に切り替えるように制御する。また、合算保留記憶数を1減算する。
図45は、切替ポイントになった後に第2特別図柄および第2飾り図柄の変動が開始された場合を示す説明図である。そして、その時点において、第1特別図柄および第1飾り図柄の変動時間の方が、第2特別図柄および第2飾り図柄の変動時間の残り時間よりも長い。その場合には、演出制御用マイクロコンピュータ100は、背景図柄の変動の態様を切り替えない。なお、切替ポイントでは第2特別図柄および第2飾り図柄の変動は開始されていなかったので、演出制御用マイクロコンピュータ100は、切替ポイントにおいて、第1特別図柄および第1飾り図柄の変動時間の残り時間である30秒に対応する背景図柄変動パターンNo.6を選択している。
また、合算保留記憶数は、特別図柄および飾り図柄の変動に対応した背景図柄の変動が開始されるときに−1されるのであるが、後述するように、特別図柄および飾り図柄の変動開始時期よりもそれに対応した背景図柄の変動開始時期が遅くなる場合がある。従って、図柄保留記憶表示部18cに表示されている合算保留記憶数(合計数)が、真の合計数よりも多くなっている場合がある。よって、何らかの方法で、合算保留記憶数におけるダミー保留記憶を減少させる必要がある。
上記の例にあるように、2つの特別図柄および飾り図柄(第1特別図柄および第1飾り図柄と、第2特別図柄および第2飾り図柄)の変動時期が重なることがあるので、背景図柄の変動回数が特別図柄および飾り図柄の変動回数よりも少なくなる場合がある(例えば、図43や図45に示す例では第1特別図柄および第1飾り図柄に対応した背景図柄の変動のみが行われていることになる。)。そこで、この実施の形態では、ダミー保留記憶を減少させる方法の一つとして、背景図柄変動パターンとして仮停止(例えば、0.5秒や1秒間停止)の態様を含む背景図柄変動パターン(図36参照)を用いる。そして、図46の説明図に示すように、演出制御用マイクロコンピュータ100は、背景図柄を仮停止させたときに、合算保留記憶数を1減算する。なお、第1保留記憶数と第2保留記憶数との真の合計と、合算保留記憶数との差(合算保留記憶数における第1保留記憶数と第2保留記憶数との真の合計よりも多い分)を、ダミー増加数という。また、合算保留記憶においてダミー増加数に相当する分がダミー保留記憶である。
よって、背景図柄が仮停止したときに合算保留記憶数を1減算するので、遊技者に、あたかも、仮停止後の背景図柄の再変動に伴って合算保留記憶数が1減算されたように感じさせることができる。つまり、実際には1つの保留記憶にもとづく1回の背景図柄の変動が実行されているのであるが、1つの仮停止と次の仮停止との間に相当する複数回の変動が行われ、それぞれについて合算保留記憶数が1減算されたように感じさせることができ、遊技者にできるだけ違和感を与えないようにすることができる。
なお、図37〜図46の説明図では、第1特別図柄および第1飾り図柄の変動のみが、または第1特別図柄および第1飾り図柄の変動が第2特別図柄および第2飾り図柄の変動よりも先に開始される場合を示したが、第2特別図柄および第2飾り図柄の変動のみが、または第2特別図柄および第2飾り図柄の変動が第1特別図柄および第1飾り図柄の変動よりも先に開始される場合も、演出制御用マイクロコンピュータ100は、図37〜図46に例示した場合と同様の制御を行う。つまり、演出制御用マイクロコンピュータ100は、図37〜図46の説明図において「第1」を「第2」と読み替え、かつ「第2」を「第1」と読み替えた場合の制御も実行する。
図47は、特別図柄の停止図柄と、その後に制御される遊技状態との関係の一例を示す説明図である。図47に示す例では、停止図柄が偶数の図柄である場合には、はずれとなり、奇数の図柄である場合には、大当りとなり、特別図柄の変動終了後に大当り遊技状態に移行する。さらに、奇数の図柄のうち「7」である場合には、遊技状態が通常状態から確変状態に変化する。特別図柄の変動終了後に大当り遊技状態に移行するような図柄を大当り図柄という。また、遊技状態が通常状態から確変状態に変化するような図柄を確変図柄という。また、確変図柄ではない大当り図柄を非確変図柄または非確変大当り図柄という。この実施の形態では、第1特別図柄の大当り図柄を決定することによって大当り遊技状態終了後に確変状態(特別遊技状態)と通常状態とのいずれの遊技状態に制御するかが決定される。なお、確変図柄と非確変図柄とを区別せず、単に、大当り図柄とはずれ図柄とに分けてもよい。その場合には、遊技制御用マイクロコンピュータ560は、抽選によって決定した図柄に応じて確変状態に移行させるか否か決定するのではなく、乱数等を用いて確変状態に移行させるか否かの抽選を行う。また、演出制御用マイクロコンピュータ100は、確変大当りが発生した場合に、大当り遊技が開始された後(例えば、大当り遊技中や大当り遊技の終了時)に、遊技機に設けられている電気部品によって確変大当りの報知を行う。そのように構成した場合には、遊技者は停止図柄から遊技状態の変化を把握することができなくなり報知によって初めて遊技状態の変更を把握することができるので遊技の興趣が向上する。また、第1可変表示部9aおよび第2可変表示部9bにおいて可変表示および停止表示される第1飾り図柄および第2飾り図柄は、数字、アルファベット、キャラクタ状の図柄、キャラクタ状の表示物の中に数字等が表示されている図柄、その他どのような図柄であってもよい。
次に、タイマ割込処理における乱数回路初期値更新処理(ステップS23A)について説明する。図48は、乱数回路初期値更新処理を示すフローチャートである。初期値更新処理において、CPU56は、乱数回路503のカウンタ521が出力するカウント値Cを最終値まで更新した旨を示す通知信号の状態を確認する(ステップS220)。通知信号がオン状態になっていることを検出した場合には、CPU56は、初期値更新フラグがセットされているか否かを確認する(ステップS221)。すなわち、CPU56は、乱数回路設定処理において、所定の最終値までカウント値が更新されたときに初期値を更新する旨の設定がなされたか否か(ステップS157参照)を確認する。
初期値更新フラグがセットされている場合、CPU56は、乱数回路503のカウンタ521が所定の最終値までカウント値を更新したときに、カウンタ521に入力する初期値を更新すると判断する。また、初期値更新フラグがセットされている場合、CPU56は、初期値変更フラグがセットされているか否かを確認する(ステップS222)。すなわち、CPU56は、カウント値の初期値が現在変更されているか否か(すなわち、遊技制御用マイクロコンピュータ560のIDナンバにもとづく値に変更されているか否か)を判断する。
初期値変更フラグがセットされている(すなわち、遊技制御用マイクロコンピュータ560のIDナンバにもとづく値に初期値が現在変更されている)場合、CPU56は、カウンタ521に入力する初期値を、遊技制御用マイクロコンピュータ560のIDナンバにもとづく値から元の値(例えば、「1」)にもどす(ステップS223)。そして、CPU56は、初期値変更フラグをリセットし(ステップS224)、初期値更新処理を終了する。
初期値変更フラグがセットされていない(すなわち、初期値が現在変更されていない)場合、CPU56は、カウンタ521に入力する初期値を、遊技制御用マイクロコンピュータ560のIDナンバにもとづく値に変更する(ステップS225)。この場合、例えば、遊技制御用マイクロコンピュータ560のIDナンバが「100」であるとすると、カウンタ521に入力する初期値を、IDナンバ「100」に所定値「100」を加算して求めた演算値「200」に変更する。また、例えば、カウンタ521に入力する初期値を、IDナンバ「100」に所定値「50」を減算して求めた演算値「50」に変更する。そして、CPU56は、初期値変更フラグをセットし(ステップS226)、初期値更新処理を終了する。
なお、12ビット乱数回路503aおよび16ビット乱数回路503bの両方を設定した場合、ステップS225において、CPU56は、一方の乱数回路(例えば、12ビット乱数回路503a)から読み込んだ乱数を所定値としてIDナンバに加算して、カウンタ521に入力する初期値を求めてもよい。そして、CPU56は、他の一方(例えば、16ビット乱数回路503b)から読み込んだ乱数を、大当り判定用の乱数として用いてもよい。
また、CPU56は、ステップS225においてカウンタ521に入力する初期値を更新する際、乱数回路503の比較器522の乱数最大値設定レジスタ535の値を確認し、IDナンバにもとづいて設定された値が乱数最大値以上であるか否かを判断する。そして、IDナンバにもとづいて設定された値が乱数最大値以上であると判断すると、CPU56は、カウンタ521に入力する初期値を所定値のまま更新しない(例えば、所定値「0」のまま更新しない)。そのようにすることによって、カウント値の初期値が乱数最大値以上の値に設定されてしまう事態を防止することができる。
なお、ステップS220において通知信号がオフ状態であると判断した場合、およびステップS221において初期値更新フラグがセットされていないと判断した場合、CPU56は、カウンタ521に入力する初期値を更新することなく、そのまま乱数回路初期値更新処理を終了する。
次に、タイマ割込処理におけるカウント値順列変更処理(ステップS25A)について説明する。図49は、カウント値順列変更処理を示すフローチャートである。CPU56は、カウント値順列変更プログラム554に従って処理を実行することによって、カウント値順列変更処理を行う。カウント値順列変更処理において、CPU56は、乱数回路503のカウンタ521が出力するカウント値Cを最終値まで更新した旨を示す通知信号の状態を確認する(ステップS241)。通知信号がオン状態になっていることを検出した場合には、CPU56は、カウント値順列変更フラグがセットされているか否かを確認する(ステップS242)。すなわち、CPU56は、乱数回路設定処理において、所定の最終値までカウント値が更新されたときにカウンタ521が更新するカウント値の順列を変更する旨の設定がなされたか否か(ステップS158参照)を確認する。
カウント値順列変更フラグがセットされている場合、CPU56は、乱数回路503のカウンタ521が所定の最終値までカウント値を更新したときに、カウンタ521が更新するカウント値の順列を変更すると判断する。そして、遊技制御用マイクロコンピュータ560は、カウント値順列変更レジスタ536にカウント値順列変更データ「01h」を書き込む(ステップS243)。すなわち、CPU56は、カウント値順列変更データ「01h」を書き込むことによって、乱数値記憶回路531に入力されるカウント値Cの順列をカウント値順列変更回路523に変更させる。
以上のように、カウント値順列変更処理において、乱数を所定の最終値まで更新したときに、カウンタ521が更新するカウント値の順列を変更するので、乱数回路503が生成する乱数のランダム性をより向上させることができる。
図50は、主基板31に搭載される遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する第1特別図柄プロセス処理(ステップS26A)のプログラムの一例を示すフローチャートである。上述したように、第1特別図柄プロセス処理では第1特別図柄表示器8aおよび特別可変入賞球装置を制御するための処理が実行される。なお、第2特別図柄プロセス処理(ステップS26B)のプログラムも同様に構成される。すなわち、以下の説明において、「第1」を「第2」と読み替え、「第2」を「第1」と読み替えれば、第2特別図柄プロセス処理が説明されることになる。
なお、上述したように、この実施の形態では、第1特別図柄表示器8aと第2特別図柄表示器8bの2つの表示器によって第1特別図柄および第2特別図柄の変動表示が実行される。そして、この実施の形態では、2つの表示器において大当り図柄が導出表示されたことにもとづく大当りが同時に発生しないような制御が行われる。
また、この実施の形態では、遊技状態として通常状態、確変状態および時短状態がある。そして、所定の移行条件が成立することにより、3つの遊技状態のうちのいずれかの遊技状態に移行するように制御される。遊技状態の移行に関する制御は、確変フラグおよび時短フラグのオン/オフ(セット/リセット)にもとづいて行われる。
CPU56は、第1特別図柄プロセス処理を行う際に、遊技盤6に設けられている第1始動入賞口13に遊技球が入賞したことを検出するための第1始動口スイッチ13aがオンしていたら、すなわち遊技球が第1始動入賞口13に入賞する始動入賞が発生していたら(ステップS311)、第1始動口スイッチ通過処理を実行する(ステップS312)。
また、第2特別図柄プロセスフラグの値が、第2大当り図柄停止処理〜第2大当り終了処理のいずれかに応じた値である場合には(ステップS314)、ステップS315,S316の処理を実行した後、第1特別図柄プロセス処理を終了する。そうでない場合には、ステップS317,S318の処理を実行した後、内部状態(具体的には、第1特別図柄プロセスフラグの値)に応じて、ステップS300〜S309のうちのいずれかの処理を行う。なお、この実施の形態では、第2大当り図柄停止処理〜第2大当り終了処理に応じた値は連続する値(例えば、6〜9)である。よって、CPU56のステップS314の判定処理を簡易な処理にすることができる。
ステップS315では、CPU56は、第1飾り図柄および第1特別図柄の変動中であって、かつ、演出制御用マイクロコンピュータ100に対して第1中断指定コマンドを未送信であるか否か確認する。変動中でない場合、または変動中であっても既に第1中断指定コマンドを送信している場合(例えば、第1中断指定コマンドの送信時に送信済みフラグをセットするようにして、送信済みフラグがセットされていた場合)には処理を終了するが、変動中であり、まだ第1中断指定コマンドを送信していない場合には、演出制御用マイクロコンピュータ100に対して第1中断指定コマンドを送信した後に処理を終了する(ステップS316)。また、ステップS317では、CPU56は、第1中断指定コマンドを送信した後(例えば、第1中断指定コマンドの送信時に送信済みフラグをセットするようにして、送信済みフラグがセットされているとき)にステップS317の処理が実行される場合には、演出制御用マイクロコンピュータ100に対して第1再開指定コマンドを送信した後に、ステップS300〜S309のうちのいずれかの処理を行う。なお、CPU56は、第1飾り図柄および第1特別図柄の変動中であるか否かを、第1特別図柄プロセスフラグの値がステップS303の処理に応じた値であるか否かによって判定できる。また、第2大当り遊技が実行中であるか否かを、第2特別図柄プロセスフラグによって判定できる。すなわち、第2特別図柄プロセス処理で扱われる第2特別図柄プロセスフラグの値が、ステップS305〜S309に相当する値である場合に、第2大当り遊技が実行中であると判定する。
演出制御用マイクロコンピュータ100の演出制御用CPU101は、第1中断指定コマンドを受信すると、第1飾り図柄の変動(可変表示)を中断する。また、第1再開指定コマンドを受信すると、第1飾り図柄の変動を再開する。
ステップS300〜S309の処理は、以下のような処理である。
第1特別図柄通常処理(ステップS300):第1特別図柄プロセスフラグの値が0であるときに実行される。遊技制御用マイクロコンピュータ560は、第1特別図柄の可変表示が開始できる状態になると、第1保留記憶数バッファに記憶される数値データの記憶数(保留記憶数)を確認する。第1保留記憶数バッファに記憶される数値データの記憶数は第1保留記憶数カウンタのカウント値により確認できる。また、第1保留記憶数カウンタのカウント値が0でなければ、遊技状態が確変状態であるか否か確認し、第1保留記憶数カウンタのカウント値が0でなければ、内部状態(第1特別図柄プロセスフラグ)をステップS301に応じた値(この例では1)に更新する。
第1特別図柄停止図柄設定処理(ステップS301):第1特別図柄プロセスフラグの値が1であるときに実行される。第1特別図柄の可変表示の結果、大当りとするか否か(特定表示結果とするか否か)を決定する。大当りとする場合には第1大当りフラグをセットする。また、可変表示後の第1特別図柄の停止図柄を決定する。そして、内部状態(第1特別図柄プロセスフラグ)をステップS302に応じた値(この例では2)に更新する。なお、第1大当りフラグは、大当り遊技が終了するときにリセットされる。
第1変動パターン設定処理(ステップS302):第1特別図柄プロセスフラグの値が2であるときに実行される。第1特別図柄の可変表示の変動パターン(ここでは変動時間に相当)を、始動入賞発生時に抽出した変動パターン決定用乱数(表示用乱数の一つ)の値に応じてあらかじめ定められた複数種類の変動パターンの中から選択する。また、演出制御用マイクロコンピュータ100に対して、変動パターンを指令する情報(変動パターンコマンドすなわち可変表示パターンコマンド)を送信する。そして、内部状態(第1特別図柄プロセスフラグ)をステップS303に応じた値(この例では3)に更新する。
第1特別図柄変動中処理(ステップS303):第1特別図柄プロセスフラグの値が3であるときに実行される。第1変動パターン設定処理で選択された変動パターンの変動時間が経過(ステップS302でセットされた第1特別図柄プロセスタイマがタイムアウトすなわち第1特別図柄プロセスタイマの値が0になる)すると、内部状態(第1特別図柄プロセスフラグ)をステップS304(この例では4)またはステップS305に応じた値(この例では5)に更新する。なお、特別図柄の表示結果を大当り図柄とすることに決定している場合にステップS305に応じた値に更新し、特別図柄の表示結果を大当り図柄としないことに決定している場合にステップS304に応じた値(この例では4)に更新する。
第1はずれ図柄停止処理(ステップS304):第1特別図柄プロセスフラグの値が4であるときに実行される。第1特別図柄表示器8aにおける可変表示を停止して停止図柄を表示させる。また、演出制御基板80における演出制御用マイクロコンピュータ100に、第1飾り図柄の変動の停止を示す演出制御コマンド(第1飾り図柄停止指定コマンド)を送信する制御を行う。そして、内部状態(第1特別図柄プロセスフラグ)をステップS300に応じた値(この例では0)に更新する。
第1大当り図柄停止処理(ステップS305):第1特別図柄プロセスフラグの値が5であるときに実行される。第1特別図柄表示器8aにおける可変表示を停止して停止図柄を表示させる。また、演出制御用マイクロコンピュータ100に、第1飾り図柄の変動の停止を示す演出制御コマンド(第1飾り図柄停止コマンド)を送信する制御を行う。そして、所定の大当り図柄表示期間が経過すると、内部状態(第1特別図柄プロセスフラグ)をステップS306に応じた値(この例では6)に更新する。なお、演出制御用マイクロコンピュータ100は、遊技制御用マイクロコンピュータ560が送信する第1飾り図柄の変動の停止を示す演出制御コマンド(第1飾り図柄停止指定コマンド)を受信すると第1可変表示部9aにおいて第1飾り図柄が停止されるように制御するが、変動時間が経過すると独自に第1飾り図柄の可変表示を停止させるように制御してもよい。また、演出制御用マイクロコンピュータ100は、大当り図柄表示期間において、背景図柄として大当り図柄を表示する。
第1大当り表示処理(ステップS306):第1特別図柄プロセスフラグの値が6であるときに実行される。所定期間を計測し、所定期間が経過すると、内部状態(第1特別図柄プロセスフラグ)をステップS307に応じた値(この例では7)に更新する。なお、演出制御用マイクロコンピュータ100は、所定期間において、背景図柄表示部9cに、大当りの発生を報知するための表示を行う。
第1大入賞口開放前処理(ステップS307):第1特別図柄プロセスフラグの値が7であるときに実行される。第1大入賞口開放前処理では、大入賞口を開放する制御を行う。具体的には、カウンタ(例えば大入賞口に入った遊技球数をカウントするカウンタ)などを初期化するとともに、ソレノイド21を駆動して特別可変入賞球装置を開状態にして大入賞口を開放する。また、プロセスタイマによって第1大入賞口開放中処理の実行時間を設定し、内部状態(第1特別図柄プロセスフラグ)をステップS308に応じた値(この例では8)に更新する。なお、第1大入賞口開放前処理は各ラウンド毎に実行されるが、第1ラウンドを開始する場合には、第1大入賞口開放前処理は大当り遊技を開始する処理でもある。すなわち、遊技制御用マイクロコンピュータ560は、第1大入賞口開放前処理を実行することによって特定遊技状態移行制御手段を実現している。また、特定遊技状態移行制御手段は、遊技制御用マイクロコンピュータ560が第1大当り表示処理を実行することによって実現されると定義してもよい。すなわち、特定遊技状態が開始される時点を、大当りの発生を報知するための演出が開始される時点であるとしてもよい。この場合、第2の可変表示部に表示結果として特定表示結果を導出表示する時点からの特定時間は、大当り図柄が表示されている期間に相当する。
第1大入賞口開放中処理(ステップS308):第1特別図柄プロセスフラグの値が8であるときに実行される。大当り遊技状態中のラウンド表示の演出制御コマンドを演出制御用マイクロコンピュータ100に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態(第1特別図柄プロセスフラグ)をステップS307に移行するように更新する。また、全てのラウンドを終えた場合には、内部状態(第1特別図柄プロセスフラグ)をステップS309に応じた値(この例では9)に更新する。
第1大当り終了処理(ステップS309):第1特別図柄プロセスフラグの値が9であるときに実行される。大当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御用マイクロコンピュータ100に行わせるための制御を行う。そして、内部状態(第1特別図柄プロセスフラグ)をステップS300に応じた値(この例では0)に更新する。
次に、遊技制御用マイクロコンピュータ560から演出制御用マイクロコンピュータ100に対する制御コマンドの送出方式について説明する。図51は、主基板31から演出制御基板80に送信される演出制御コマンドの信号線を示す説明図である。図51に示すように、この実施の形態では、演出制御コマンドは、演出制御信号D0〜D7の8本の信号線で主基板31から中継基板77を介して演出制御基板80に送信される。また、主基板31と演出制御基板80との間には、取込信号(演出制御INT信号)を送信するための演出制御INT信号の信号線も配線されている。
この実施の形態では、演出制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」に設定され、EXTデータの先頭ビット(ビット7)は必ず「0」に設定される。なお、そのようなコマンド形態は一例であって他のコマンド形態を用いてもよい。例えば、1バイトや3バイト以上で構成される制御コマンドを用いてもよい
図52に示すように、演出制御コマンドの8ビットの演出制御コマンドデータは、演出制御INT信号に同期して出力される。演出制御基板80に搭載されている演出制御用マイクロコンピュータ100は、演出制御INT信号が立ち上がったことを検知して、割込処理によって1バイトのデータの取り込み処理を開始する。従って、演出制御用マイクロコンピュータ100から見ると、演出制御INT信号は、演出制御コマンドデータの取り込みの契機となる信号に相当する。
演出制御コマンドは、演出制御用マイクロコンピュータ100が認識可能に1回だけ送出される。認識可能とは、この例では、演出制御INT信号のレベルが変化することであり、認識可能に1回だけ送出されるとは、例えば演出制御コマンドデータの1バイト目および2バイト目のそれぞれに応じて演出制御INT信号が1回だけパルス状(矩形波状)に出力されることである。なお、演出制御INT信号は図52に示された極性と逆極性であってもよい。
図53は、演出制御用マイクロコンピュータ100に送出される演出制御コマンドの内容の一例を示す説明図である。図53に示す例において、コマンド8000(H)〜8018(H)は、特別図柄の可変表示に対応して第1可変表示部9aまたは第2可変表示部9bにおいて可変表示される飾り図柄の変動パターンを指定する演出制御コマンド(変動パターンコマンド)である。なお、変動パターンを指定する演出制御コマンドは、変動開始を指定するためのコマンドでもある。従って、演出制御用マイクロコンピュータ100は、コマンド8000(H)〜8018(H)のいずれかを受信すると、第1可変表示部9aまたは第2可変表示部9bにおいて飾り図柄の可変表示を開始するように制御する。なお、第1変動パターン#1〜#8指定のコマンド(第1変動パターンコマンド)を、8001(H)〜8008(H)とし、第2変動パターン#1〜#8指定のコマンド(第2変動パターンコマンド)を、8011(H)〜8018(H)とする。
コマンド9000(H)は、変動パターンコマンドで指定する飾り図柄(第1飾り図柄または第2飾り図柄)の可変表示の表示結果を確変図柄とすることを指定する演出制御コマンド(確変大当り指定コマンド)である。コマンド9001(H)は、変動パターンコマンドで指定する飾り図柄の可変表示の表示結果を非確変大当り図柄とすることを指定する演出制御コマンド(通常大当り指定コマンド)である。コマンド9002(H)は、変動パターンコマンドで指定する飾り図柄の可変表示の表示結果をはずれ図柄とすることを指定する演出制御コマンド(はずれ指定コマンド)である。以下、確変大当り指定コマンド、通常大当り指定コマンドおよびはずれ指定コマンドを、表示結果コマンドということがある。なお、この実施の形態では、遊技制御用マイクロコンピュータ560は変動パターンコマンドの直前に表示結果コマンドを送信するので、演出制御用マイクロコンピュータ100は、第1変動パターンコマンドの直前に受信した表示結果コマンドは第1飾り図柄についての表示結果コマンドであると判定でき、第2変動パターンコマンドの直前に受信した表示結果コマンドは第2飾り図柄についての表示結果コマンドであると判定できるので、表示結果コマンドを第1飾り図柄と第2飾り図柄とについて兼用できるが、第1飾り図柄についての表示結果コマンドと第2飾り図柄についての表示結果コマンドとを別にしてもよい。
また、遊技制御用マイクロコンピュータ560が表示結果コマンドを送信するのではなく、確変大当り/通常大当り/はずれのそれぞれに対応させて変動パターンを定め、遊技制御用マイクロコンピュータ560は、受信した変動パターンにもとづいて飾り図柄の停止図柄を決定するようにしてもよい。
コマンドA000(H)は、第1飾り図柄の可変表示の停止を指示する演出制御コマンド(第1飾り図柄停止指定コマンド)である。コマンドA001(H)は、第2飾り図柄の可変表示の停止を指示する演出制御コマンド(第2飾り図柄停止指定コマンド)である。
コマンドA100(H)は、第1可変表示部9aにおける飾り図柄の可変表示の中断を指示する演出制御コマンド(第1中断指定コマンド)であり、コマンドA101(H)は、第1可変表示部9aにおける飾り図柄の可変表示の再開を指示する演出制御コマンド(第1再開指定コマンド)である。
コマンドA200(H)は、第2可変表示部9bにおける飾り図柄の可変表示の中断を指示する演出制御コマンド(第2中断指定コマンド)であり、コマンドA201(H)は、第2可変表示部9bにおける飾り図柄の可変表示の再開を指示する演出制御コマンド(第2再開指定コマンド)である。
コマンドBXXX(H)(X=任意の16進数)は、大当り遊技開始から大当り遊技終了までの間に送出される演出制御コマンドである。そのうち、B000(H)は、第1大当り遊技の開始を指定する演出制御コマンド(第1大当り開始指定コマンド:第1ファンファーレ指定コマンド)である。B001(H)は、第1大当り遊技の終了を指定する演出制御コマンド(第1大当り終了指定コマンド:第1エンディング指定コマンド)である。B002(H)は、第2大当り遊技の開始を指定する演出制御コマンド(第2大当り開始指定コマンド:第2ファンファーレ指定コマンド)である。B003(H)は、第2大当り遊技の終了を指定する演出制御コマンド(第2大当り終了指定コマンド:第2エンディング指定コマンド)である。
B1XX(H)は、XXで示す回数目(ラウンド)の大入賞口開放を示す演出制御コマンド(大入賞口開放時表示コマンド)である。B2XX(H)は、XXで示す回数目(ラウンド)の大入賞口閉鎖を示す演出制御コマンド(大入賞口開放後表示コマンド)である。
コマンドC000(H)は、第1保留記憶数が4に達していない状態で第1始動入賞口13に遊技球が入賞したことを示す演出制御コマンド(第1有効始動入賞指定コマンド)である。コマンドC001(H)は、第2保留記憶数が4に達していない状態で第2始動入賞口14に遊技球が入賞したことを示す演出制御コマンド(第2有効始動入賞指定コマンド)である。コマンドC100(H)は、第1保留記憶数が4である状態で第1始動入賞口13に遊技球が入賞したこと、または第2保留記憶数が4である状態で第2始動入賞口14に遊技球が入賞したことを示す演出制御コマンド(無効始動入賞指定コマンド)である。なお、第1有効始動入賞指定コマンドとして第1保留記憶数を示すコマンドを送信し、第2有効始動入賞指定コマンドとして第2保留記憶数を示すコマンドを送信してもよいが、この実施の形態では、第1有効始動入賞指定コマンドおよび第2有効始動入賞指定コマンドは、始動入賞があったことを示すコマンドである。
コマンドD000(H)は、客待ちデモンストレーションを指定する演出制御コマンドである。
コマンドE000(H)は、遊技状態が確変状態(高確率状態)に移行したときに送信される演出制御コマンド(確変状態指定コマンド)である。コマンドE001(H)は、遊技状態が時短状態に移行したときに送信される演出制御コマンド(時短状態指定コマンド)である。コマンドE002(H)は、遊技状態が通常状態(確変状態でもなく時短状態でもない状態)に移行したときに送信される演出制御コマンド(通常状態指定コマンド)である。
演出制御基板80に搭載されている演出制御用マイクロコンピュータ100(具体的には、演出制御用CPU101)は、主基板31に搭載されている遊技制御用マイクロコンピュータ560から上述した演出制御コマンドを受信すると図53に示された内容に応じて第1可変表示部9aおよび第2可変表示部9bの表示状態や背景図柄表示部9cの表示状態を変更するとともに、ランプの表示状態を変更し、音声出力基板70に対して音番号データを出力する。なお、図53に示された演出制御コマンド以外の演出制御コマンドも主基板31から演出制御基板80に送信される。例えば、大当り遊技に関するより詳細な演出制御コマンドや遊技状態を示す演出制御コマンド(例えば、初期化コマンドを示す演出制御コマンド)も主基板31から演出制御基板80に送信される。
図54は、ステップS312の第1始動口スイッチ通過処理を示すフローチャートである。第1保留記憶数カウンタが示す第1保留記憶数(または特図保留メモリ570が記憶している第1保留記憶数)が最大値である4に達しているかどうか確認する(ステップS321)。第1保留記憶数が4になっている場合には、無効始動入賞指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS333)。なお、演出制御用マイクロコンピュータ100に演出制御コマンドを送信する際に、具体的には、CPU56は、演出制御コマンドに応じたコマンド送信テーブル(あらかじめROMにコマンド毎に設定されている)のアドレスをポインタにセットする。そして、演出制御コマンドに応じたコマンド送信テーブルのアドレスをポインタにセットして、演出制御コマンド制御処理(ステップS28)において演出制御コマンドを送信する。
第1保留記憶数が4に達していなければ、CPU56は、タイマ割込処理を実行した回数を示す割込回数カウンタの値を1加算する(ステップS322)。すなわち、CPU56は、タイマ割込処理を実行した回数をカウントする処理を実行する。この実施の形態では、CPU56は、ステップS322を実行することによって、タイマ割込処理を実行するごとに、タイマ割込処理を実行した回数を示す割込回数カウンタをカウントアップする。割込回数カウンタの値を1加算すると、CPU56は、割込実行回数カウンタに示されるタイマ割込処理の実行回数があらかじめ設定されている所定回数(例えば、3回)に達しているか否か確認する(ステップS323)。すなわち、CPU56は、遊技球が第1始動入賞口13に入賞したあと、割込実行回数カウンタが所定回数に達しているか否か確認する。なお、タイマ割込処理の実行回数が所定回数に達すると、ステップS328で、CPU56は、割込実行回数カウンタをリセットする。
ステップS323において確認されるあらかじめ設定されている所定回数は、以下のように定められる。上記のように、乱数回路503のタイマ回路534は、第1始動口スイッチ13aから入賞検出信号SSが継続して入力されている時間を計測し、計測時間が所定期間になったことを検出すると、乱数値取り込みデータ「01h」を書き込む。この実施の形態では、タイマ回路534が計測する所定期間(例えば、3ms)が、所定回数のタイマ割込処理が実行される期間(例えば、2msごとのタイマ割込処理を3回実行する場合は6ms)よりも短くなるように、ステップS323において確認される所定回数(例えば、3回)が設定される。そのように設定することによって、乱数を読み出してから、乱数値記憶回路531に記憶される乱数の値が更新される前に再び乱数を読み出してしまうことを防止することができ、前回乱数値記憶回路531から読み出した乱数と同じ値の乱数を再び読み出してしまうことを防止することができる。なお、タイマ回路534が入賞検出信号SSの入力時間を計測するのでなく、CPU56が入賞検出信号SSの入力時間を計測し、乱数値取り込みデータ「01h」を乱数値取込レジスタ539に書き込むようにしてもよい。
タイマ割込処理の実行回数が所定回数に達している場合、CPU56は、特定した乱数回路503の乱数値記憶回路531に出力制御信号SCを出力し、乱数値記憶回路531を読出可能(イネーブル)状態に制御する(ステップS324)。
CPU56は、乱数回路503の乱数値記憶回路531から、乱数値として記憶されているランダムRの値を読み出す(ステップS325)。また、CPU56は、読み出したランダムRの値をRAM55における所定のバッファ領域に格納する(ステップS326)。また、CPU56は、ランダムRの値をバッファ領域に格納すると、乱数値記憶回路531への出力制御信号SCの出力を停止し、乱数値記憶回路531を読出不能(ディスエーブル)状態に制御する(ステップS327)。また、CPU56は、割込実行回数カウンタをリセットする(ステップS328)。そして、第1保留記憶数を示す第1保留記憶数カウンタの値を1増やす(ステップS329)。
さらに、CPU56は、バッファ領域に格納したランダムRの値を特図保留メモリ570の空エントリの先頭にセットする(ステップS330)。なお、特図保留メモリ570のエントリは、第1保留記憶数に応じた保存領域における大当り判定用乱数が設定される領域に相当する。また、ランダムRは、大当り判定用乱数に相当する。
さらに、ソフトウェア乱数(大当り図柄決定用乱数等を生成するためのカウンタの値等)を抽出し、それらを、抽出した乱数値として第1保留記憶数カウンタの値に対応する保存領域に格納する処理を実行する(ステップS331)。保存領域は、第1保留記憶数の上限値と同数確保されている。また、ステップS331では、図33に示された乱数のうち、ランダム2〜ランダム4が抽出される。なお、乱数を抽出するとは、乱数を生成させるためのカウンタからカウント値を読み出して、読み出したカウント値を乱数値とすることである。また、第1有効始動入賞コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS332)。
以上のように、第1始動口スイッチ通過処理において、乱数値記憶回路531からランダムRを読み出すにあたって、タイマ割込処理が所定回数実行されたこと(すなわち、タイマ割込処理が所定回数実行される間継続して入賞検出信号SSが入力されたこと)を条件に、乱数値記憶回路531から乱数を読み出す。そのため、乱数を読み出してから、乱数値記憶回路531に記憶される乱数の値が更新される前に再び乱数を読み出してしまうことを防止することができる。また、前回乱数値記憶回路531から読み出した乱数と同じ値の乱数を再び読み出してしまうことを防止することができる。
図55は、第1特別図柄プロセス処理における第1特別図柄通常処理(ステップS300)を示すフローチャートである。第1特別図柄通常処理が実行される状態は、第1特別図柄プロセスフラグの値がステップS300を示す値となっている場合である。なお、第1特別図柄プロセスフラグの値がステップS300を示す値となっている場合とは、第1特別図柄表示器8aにおいて第1特別図柄の変動表示がなされていない状態であって、かつ、第1大当り遊技(大入賞口を所定回開放)中でもない場合である。
第1特別図柄通常処理において、CPU56は、第1保留記憶数の値を確認する(ステップS51)。具体的には、第1保留記憶数カウンタのカウント値を確認する。
第1保留記憶数が0でなければ、RAM55の第1保留記憶数バッファにおける保留記憶数=1に対応する保存領域に格納されている各乱数値を読み出してRAM55の乱数バッファ領域に格納するとともに(ステップS52)、第1保留記憶数の値を1減らし(第1保留記憶数カウンタのカウント値を1減算し)、かつ、各保存領域の内容をシフトする(ステップS53)。すなわち、RAM55の第1保留記憶数バッファにおいて第1保留記憶数=n(n=2,3,4)に対応する保存領域に格納されている各乱数値を、第1保留記憶数=n−1に対応する保存領域に格納する。よって、各第1保留記憶数に対応するそれぞれの保存領域に格納されている各乱数値が抽出された順番は、常に、第1保留記憶数=1,2,3,4の順番と一致するようになっている。そして、第1特別図柄プロセスフラグの値を第1特別図柄停止図柄設定処理(ステップS301)に対応した値に更新する(ステップS54)。なお、各保存領域の内容をシフトすることによって、保留記憶数=2に対応する保存領域に格納されていた各乱数値は保留記憶数=1に対応する保存領域に格納されていた各乱数値で上書きされることになるが、各保存領域の内容をシフトせず、次に特別図柄の変動の開始条件(第1の開始条件)が成立したときに読み出し処理の対象になる保存領域を指し示すポインタの値をずらすようにしてもよい。その場合、ステップS52の処理で乱数値が読み出された保存領域の内容をクリアしてもよいし、クリアしなくてもよい。クリアしない場合には、ポインタの値がずらされているのでその保存領域の内容が参照されることはない。また、次にその保存領域に乱数値が格納されるときに、新たに抽出された乱数値が上書きされることになる。
図56および図57は、第1特別図柄プロセス処理における第1特別図柄停止図柄設定処理(ステップS301)を示すフローチャートである。第1特別図柄停止図柄設定処理において、遊技制御用マイクロコンピュータ560は、まず、第2大当りフラグがセットされているか否か確認する(ステップS60)。第2大当りフラグがセットされていれば、ステップS64に移行する。つまり、第2特別図柄および第2飾り図柄の表示結果を大当り図柄にすると決定した後から、少なくとも表示結果が導出表示されるまでの特定期間において、第1表示結果決定手段による抽選処理(ステップS62の処理)の実行が禁止される。なお、第2大当りフラグは、第2特別図柄プロセス処理において、大当りとすることに決定した場合にセットされる。また、第2大当りフラグは、例えば、第2大当り遊技が終了した場合にリセットされる。すなわち、第2大当りフラグがセットされているということは、第2特別図柄表示器8bおよび第2可変表示部9bの表示結果を大当り図柄にすると決定したことを意味する。従って、第2大当りフラグがセットされているということは、第2特別図柄表示器8bおよび第2可変表示部9bの表示結果を大当り図柄にすると決定したことにもとづいて第2特別図柄表示器8bおよび第2可変表示部9bで第2特別図柄および第2飾り図柄の変動(第2大当り変動)が実行されているか、または実行されることに決定されていることを意味する。
第2大当りフラグがセットされていない場合には、乱数バッファ領域(保存領域)から大当り判定用乱数(ランダムR)を読み出し(ステップS61)、大当り判定モジュールを実行する(ステップS62)。大当り判定モジュールは、あらかじめ決められている大当り判定値(図26参照)と大当り判定用乱数とを比較し、それらが一致したら大当りとすることに決定する処理を実行するプログラムである。大当りとすることに決定した場合には(ステップS63)、ステップS81に移行する。なお、ステップS63では、CPU56は、具体的には、大当り判定用乱数値(ランダムRの値)が図26に示す大当り判定値に一致すると、大当りとすることに決定する。通常状態または時短状態では、大当り判定用乱数値と図26(A)に記載されている数値とを比較し、確変状態では、大当り判定用乱数値と図26(B)に記載されている数値とを比較する。また、大当りとするか否か決定するということは、大当り遊技状態に移行させるか否か決定するということであるが、第1特別図柄表示器8aおよび第1可変表示部9aにおいて停止図柄を大当り図柄とするか否か決定するということでもある。
大当りとしないことに決定した場合には、CPU56は、乱数バッファ領域からはずれ図柄決定用乱数を読み出し(ステップS64)、はずれ図柄決定用乱数にもとづいてはずれ図柄(この例では偶数図柄)を決定する(ステップS65)。そして、ステップS84に移行する。
ステップS81では、CPU56は、第1大当りフラグをセットする。そして、乱数バッファ領域から大当り図柄決定用乱数を読み出し(ステップS82)、大当り図柄決定用乱数にもとづいて大当り図柄(この例では奇数図柄)を決定する(ステップS83)。そして、第1特別図柄プロセスフラグの値を第1変動パターン設定処理(ステップS302)に対応した値に更新する(ステップS84)。なお、ステップS64,S65,S82,S83の処理は、図21に示す表示結果決定プログラム552にもとづく処理に相当する。
図58は、第1特別図柄プロセス処理における第1変動パターン設定処理(ステップS302)を示すフローチャートである。第1変動パターン設定処理において、CPU56は、乱数バッファ領域から変動パターン決定用乱数を読み出す(ステップS101)。そして、遊技状態が時短状態であることを示す時短フラグがセットされている場合には(ステップS102)、時短変動パターンテーブルから変動パターンを選択する(ステップS103)。時短フラグがセットされていない場合には、確変/通常変動パターンテーブルから変動パターンを選択する(ステップS104)。
時短変動パターンテーブルとは、図35に示す第1変動パターン#5〜#8を示すデータが、変動パターン決定用乱数と比較される1つ以上の数値とともに設定されたテーブルである。CPU56は、ステップS104では、変動パターン決定用乱数と一致する数値に対応するデータを時短変動パターンテーブルから抽出し、そのデータが示す変動パターンを選択する。
確変/通常変動パターンテーブルとは、図35に示す第1変動パターン#1〜#4を示すデータが、変動パターン決定用乱数と比較される1つ以上の数値とともに設定されたテーブルである。CPU56は、ステップS103では、変動パターン決定用乱数と一致する数値に対応するデータを確変/通常変動パターンテーブルから抽出し、そのデータが示す変動パターンを選択する。
次いで、CPU56は、確変大当りとすることに決定されている場合には確変大当り指定の演出制御コマンド(確変大当り指定コマンド)を送信し、非確変大当りとすることに決定されている場合には通常大当り指定の演出制御コマンド(通常大当り指定コマンド)を送信し、大当りとすることに決定されていない場合にははずれ指定の演出制御コマンド(はずれ指定コマンド)を送信するように制御する(ステップS111)。なお、確変大当りとすることに決定されている場合とは、ステップS83において停止図柄として確変図柄が決定された場合であるが、確変大当りとするか否かを、例えば大当り図柄決定用乱数とは異なるソフトウェア乱数(確変決定用乱数)を用いた抽選によって決定するようにしてもよい。
次いで、CPU56は、ステップS103またはステップS104で選択した変動パターンに応じた変動パターンコマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS112)。また、第1特別図柄の変動を開始する(ステップS113)。例えば、ステップS32の特別図柄表示制御処理で参照される開始フラグをセットする。また、RAM55に形成されている第1変動時間タイマに、変動パターンの変動時間に応じた値を設定する(ステップS114)。そして、第1特別図柄プロセスフラグの値を第1特別図柄変動中処理(ステップS303)に対応した値に更新する(ステップS115)。
図59は、第1特別図柄プロセス処理における第1特別図柄変動中処理(ステップS303)の処理を示すフローチャートである。第1特別図柄変動中処理において、CPU56は、第1変動時間タイマを1減算し(ステップS121)、第1変動時間タイマがタイムアウトしたら(ステップS122)、第1大当りフラグがセットされている場合には、第1大当り図柄表示時間タイマに大当り図柄の表示時間に相当する値を設定し(ステップS123,S124)、第1特別図柄プロセスフラグの値を第1大当り図柄停止処理(ステップS305)に対応した値に更新する(ステップS125)。第1大当りフラグがセットされていない場合には第1特別図柄プロセスフラグの値を第1はずれ図柄停止処理(ステップS304)に対応した値に更新する(ステップS126)。第1変動時間タイマがタイムアウトしていない場合には、そのまま処理を終了する。
図60は、第1特別図柄プロセス処理における第1はずれ図柄停止処理(ステップS304)の処理を示すフローチャートである。第1はずれ図柄停止処理において、CPU56は、例えばステップS32の特別図柄表示制御処理で参照される終了フラグをセットして第1特別図柄の変動を終了させ、第1特別図柄表示器8aにはずれ図柄を導出表示する制御を行う(ステップS161)。また、演出制御用マイクロコンピュータ100に対して、第1飾り図柄停止指定コマンドを送信する制御を行う(ステップS162)。
また、確変フラグがセットされている場合には、確変回数カウンタの値を−1する(ステップS163,S164)。そして、確変回数カウンタの値が0になったか否か確認し(ステップS165)、確変回数カウンタの値が0になっていない場合にはステップS170に移行する。確変回数カウンタの値が0になっている場合には、確変フラグをリセットし(ステップS166)、時短フラグをセットする(ステップS167)。また、時短状態指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS168)。さらに、時短回数カウンタに50をセットする(ステップS169)。そして、ステップS170に移行する。
確変フラグがセットされていない場合には、時短フラグがセットされているか否か確認する(ステップS171)。時短フラグがセットされていない場合には、ステップS170に移行する。時短フラグがセットされている場合には、時短回数カウンタの値を−1する(ステップS172)。そして、時短回数カウンタの値が0になったか否か確認し(ステップS173)、時短回数カウンタの値が0になっていない場合にはステップS170に移行する。時短回数カウンタの値が0になっている場合には、時短フラグをリセットし(ステップS174)、通常状態指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS175)。そして、ステップS170に移行する。
ステップS170では、CPU56は、第1特別図柄プロセスフラグの値を第1特別図柄通常処理(ステップS300)に対応した値に更新する。
以上のような処理によって、確変状態において大当りとなることなく100回の特別図柄の可変表示が実行されると、遊技状態は時短状態に制御され、時短状態において50回の可変表示を実行可能になる。時短状態において大当りとなることなく50回の特別図柄の可変表示が実行されると、遊技状態は通常状態に制御される。
図61は、第1特別図柄プロセス処理における第1大当り図柄停止処理(ステップS305)の処理を示すフローチャートである。第1大当り図柄停止処理において、CPU56は、第1飾り図柄停止指定コマンドを送信する制御を既に実行している場合には、第1大当り図柄表示時間タイマを−1し、第1大当り図柄表示時間タイマがタイムアウト(=0)しているときには、ステップS183に移行する(ステップS180A,S180B,S180C)。第1飾り図柄停止指定コマンドを送信する制御を実行していない場合には(ステップS180A)、ステップS32の特別図柄表示制御処理で参照される終了フラグをセットして第1特別図柄の変動を終了させ、第1特別図柄表示器8aに大当り図柄を導出表示する制御を行う(ステップS181)。また、演出制御用マイクロコンピュータ100に対して、第1飾り図柄停止指定コマンドを送信する制御を行う(ステップS182)。そして、ステップS180Bに移行する。
ステップS183では、CPU56は、演出制御用マイクロコンピュータ100に対して、第1大当り開始指定コマンドを送信する制御を行う。そして、第1大当り表示時間タイマに大当り表示時間(大当りが発生したことを例えば背景図柄表示部9cにおいて報知する時間)に相当する値を設定し(ステップS184)、第1特別図柄プロセスフラグの値を第1大当り表示処理(ステップS306)に対応した値に更新する(ステップS185)。
図62は、第1特別図柄プロセス処理における第1大当り表示処理(ステップS306)の処理を示すフローチャートである。第1大当り表示処理において、CPU56は、第1大当り表示時間タイマを−1し(ステップS187)、第1大当り表示時間タイマの値が0になったら(ステップS188)、第1特別図柄プロセスフラグの値を第1大入賞口開放前処理(ステップS307)に対応した値に更新する(ステップS189)。
以上のような第1大当り表示処理によって、第1特別図柄プロセスフラグの値が第1大当り表示処理に応じた値になっている時間が、ステップS184で設定された値に応じた所定時間(例えば、1.0秒)継続する。また、第2特別図柄プロセス処理が実行されるときにも、第2特別図柄プロセスフラグの値が第2大当り表示処理に応じた値になっている時間が、所定時間(例えば、1.0秒)継続する。
図63は、第1特別図柄プロセス処理における第1大当り終了処理(ステップS309)の処理を示すフローチャートである。第1大当り終了処理において、CPU56は、第1大当りフラグをリセットし(ステップS190)、演出制御用マイクロコンピュータ100に対して、第1大当り終了指定コマンドを送信する制御を行う(ステップS191)。そして、確変大当りであったか否か確認し(ステップS192)、確変大当りであった場合には、確変回数カウンタに100をセットするとともに(ステップS193)、確変フラグをセットする(ステップS194)。また、確変状態指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS195)。そして、第1特別図柄プロセスフラグの値を第1特別図柄通常処理(ステップS300)に対応した値に更新する(ステップS196)。
確変大当りでなかった場合には、確変フラグおよび時短フラグをリセットし(ステップS197)、通常状態指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS198)。そして、ステップS196に移行する。
次に、演出制御手段の動作を説明する。図64は、演出制御基板80に搭載されている演出制御用マイクロコンピュータ100(具体的には、演出制御用CPU101)が実行するメイン処理を示すフローチャートである。演出制御用CPU101は、電源が投入されると、メイン処理の実行を開始する。メイン処理では、まず、RAM領域のクリアや各種初期値の設定、また演出制御の起動間隔を決めるためのタイマの初期設定等を行うための初期化処理を行う(ステップS701)。その後、演出制御用CPU101は、タイマ割込フラグの監視(ステップS702)を行うループ処理に移行する。タイマ割込が発生すると、演出制御用CPU101は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、演出制御用CPU101は、そのフラグをクリアし(ステップS703)、以下の演出制御処理を実行する。
演出制御処理において、演出制御用CPU101は、まず、受信した演出制御コマンドを解析し、受信した演出制御コマンドに応じたフラグをセットする(コマンド解析処理:ステップS704)。次いで、演出制御用CPU101は、第1飾り図柄プロセス処理を行う(ステップS705A)。第1飾り図柄プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(第1演出制御プロセスフラグ)に対応した処理を選択して第1可変表示部9aの表示制御を実行する。また、第2飾り図柄プロセス処理を行う(ステップS705B)。第2飾り図柄プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(第2演出制御プロセスフラグ)に対応した処理を選択して第2可変表示部9bの表示制御を実行する。さらに、背景図柄表示部9cの表示状態の制御を行う背景図柄プロセス処理を実行する(ステップS706)。また、特別図柄保留記憶表示部18cの表示状態の制御を行う保留記憶表示制御処理を実行する(ステップS707)。また、予告決定用乱数などの乱数を生成するためのカウンタのカウンタ値を更新する乱数更新処理を実行する(ステップS708)。その後、ステップS702に移行する。
なお、遊技制御用マイクロコンピュータ560から送信された演出制御コマンドは、演出制御INT信号にもとづく割込処理で受信され、RAMに形成されているバッファ領域に保存されている。コマンド解析処理では、バッファ領域に保存されている演出制御コマンドがどのコマンド(図53参照)であるのか解析する。
図65は、図64に示されたメイン処理における第1飾り図柄プロセス処理(ステップS705A)を示すフローチャートである。第1演出制御プロセス処理では、演出制御用CPU101は、第1演出制御プロセスフラグの値に応じてステップS800〜S803のうちのいずれかの処理を行う。各処理において、以下のような処理を実行する。なお、第2飾り図柄プロセス処理(ステップS705B)も、制御対象が第2可変表示部9bであるという違いはあるが、第1飾り図柄プロセス処理と同様に構成される。
第1変動パターンコマンド受信待ち処理(ステップS800):コマンド受信割込処理によって第1変動パターン指定の演出制御コマンド(第1変動パターンコマンド)を受信されたことが確認されたか否か確認する。具体的には、第1変動パターンコマンドが受信されたことを示すフラグ(第1変動パターン受信フラグ)がセットされたか否か確認する。第1変動パターン受信フラグは、演出制御用CPU101が実行するコマンド解析処理で第1変動パターン#1〜#8指定のいずれか(8001(H)〜8008(H)のいずれか)の第1変動パターンコマンドが受信されたことが確認された場合にセットされる。第1変動パターンコマンドを受信した場合には、第1飾り図柄の変動態様(変動期間中の飾り図柄の変動速度など)を、それぞれの変動パターンに応じてあらかじめ決められている複数種類のうちから選択する。なお、それぞれの変動パターンについて、あらかじめ1種類の変動態様が決められている場合には、受信した変動パターンに応じた変動態様を使用することに決定する。そして、演出制御プロセスフラグの値を第1飾り図柄変動開始処理(ステップS801)に対応した値に更新する。
第1飾り図柄変動開始処理(ステップS801):第1飾り図柄の変動が開始されるように制御する。そして、演出制御プロセスフラグの値を第1飾り図柄変動中処理(ステップS802)に対応した値に更新する。
第1飾り図柄変動中処理(ステップS802):変動パターンに応じて決められている変動時間の終了を監視する。また、第1飾り図柄の停止制御を行う。変動時間が終了したら、演出制御プロセスフラグの値を第1飾り図柄停止処理(ステップS803)に対応した値に更新する。
第1飾り図柄停止処理(ステップS803):第1飾り図柄の変動を最終停止し停止図柄を導出表示する制御を行う。そして、演出制御プロセスフラグの値を第1変動パターンコマンド受信待ち処理(ステップS800)に対応した値に更新する。
図66は、第1飾り図柄プロセス処理における第1変動パターンコマンド受信待ち処理(ステップS800)を示すフローチャートである。第1変動パターンコマンド受信待ち処理において、演出制御用CPU101は、第1変動パターンコマンドを受信したか否か確認し(ステップS831)、受信している場合には、第1飾り図柄の変動態様を、変動パターンに応じてあらかじめ決められている複数種類のうちから選択する(ステップS832)。そして、受信している表示結果コマンドにもとづいて第1飾り図柄の停止図柄を決定する(ステップS833)。ステップS833では、表示結果コマンドとして確変大当り指定コマンドを受信している場合には、停止図柄を確変大当りを想起させるような大当り図柄(例えば「7」)に決定する。通常大当り指定コマンドを受信している場合には、停止図柄を大当り図柄(例えば「7」以外の奇数図柄)に決定する。はずれ指定コマンドを受信している場合には、停止図柄をはずれを想起させるような図柄(例えば偶数)に決定する。そして、第1演出制御プロセスフラグの値を第1飾り図柄変動開始処理(ステップS801)に応じた値に更新する(ステップS834)。
図67は、第1飾り図柄プロセス処理における第1飾り図柄変動開始処理(ステップS801)を示すフローチャートである。第1飾り図柄変動開始処理において、演出制御用CPU101は、第1始動入賞数カウンタの値を−1する(ステップS841)。また、第1飾り図柄の変動を開始するように制御する(ステップS842)。例えば、VDP109に第1飾り図柄の変動開始を指示する。さらに、遊技制御用マイクロコンピュータ560から受信した変動パターンコマンドに応じた変動時間に相当する値を変動時間タイマに設定する(ステップS843)。すなわち、変動時間タイマをスタートさせる。そして、第1演出制御プロセスフラグの値を第1飾り図柄変動中処理(ステップS802)に応じた値に更新する(ステップS844)。
図68は、第1飾り図柄プロセス処理における第1飾り図柄変動中処理(ステップS802)を示すフローチャートである。第1飾り図柄変動中処理において演出制御用CPU101は、第1変動中断フラグがセットされているか否か確認し(ステップS821)、第1変動中断フラグがセットされていなければ第1中断指定コマンドを受信したか否か確認する(ステップS822)。第1中断指定コマンドを受信していれば第1変動中断フラグをセットし(ステップS823)、第1可変表示部9aにはずれ図柄を停止表示する(ステップS824)。
また、遊技者に第1飾り図柄の可変表示が継続していることを示す報知情報を背景図柄表示部9cに表示する(ステップS825、図87における(10)参照)。なお、遊技者に可変表示が継続していることを報知するための表示は、図87に示すような報知に限られず、例えば、背景図柄を通常とは異なる態様(例えば、表示領域が小さくなっている態様)で可変表示を継続することによって。第1飾り図柄の可変表示が継続していることを報知するようにしてもよい。また、この実施の形態のように第1飾り図柄を停止させるのではなく、第1飾り図柄の変動は続行されるようにし、変動時間タイマの減算処理を停止させるようにしてもよい。
また、ステップS821で第1変動中断フラグがセットされていることを確認したら、演出制御用CPU101は、第1再開指定コマンドを受信したか否か確認する(ステップS831)。第1再開指定コマンドを受信していれば、第1変動中断フラグをリセットするとともに(ステップS832)、第1可変表示部9aにおいて第1飾り図柄の変動を再開させる(ステップS833)。第1再開指定コマンドを受信していなければ第1飾り図柄変動中処理を終了する。
ステップS822で第1中断指定コマンドを受信していないことを確認したら、演出制御用CPU101は、変動時間タイマを1減算する(ステップS826)。そして、変動時間タイマがタイムアウトしていれば(ステップS827)、第1演出制御プロセスフラグの値を第1飾り図柄停止処理(ステップS803)に応じた値に更新する(ステップS828)。
以上のような制御によって、演出制御用CPU101は、第2特別図柄表示器8bおよび第2可変表示部9bに大当り図柄が導出表示されて大当り遊技状態となるときには、遊技制御用マイクロコンピュータ560から第1中断指定コマンドを受信したことにもとづいて第1変動中断フラグをセットするとともに変動中断処理を行う。そして、再開指定コマンドを受信するまでステップS826〜S827の処理を実行しないように制御する。すなわち、第1飾り図柄の変動を行わない制御がなされる。
図69は、保留記憶表示制御処理を示すフローチャートである。演出制御用CPU101は、保留記憶表示制御処理において、第1有効始動入賞指定コマンドを受信したか否か確認し(ステップS851)、第1有効始動入賞指定コマンドを受信していたら、第1始動入賞数カウンタの値を+1する(ステップS852)。そして、差数カウンタの値が0であれば(ステップS853)、合算保留記憶数を示す合算保留記憶表示カウンタすなわち合算保留記憶数をカウントする合算保留記憶表示カウンタの値を+1する(ステップS856)。
差数カウンタの値が0でない場合には、合算保留記憶表示カウンタの値を確認し、合算保留記憶表示カウンタの値が上限値である8に達していなければ(ステップS854)、ステップS856に移行する。合算保留記憶表示カウンタの値が8に達していれば、差数カウンタの値を−1し(ステップS855)、ステップS862に移行する。
また、第2有効始動入賞指定コマンドを受信していたら(ステップS857)、第2始動入賞数カウンタの値を+1する(ステップS858)。そして、差数カウンタの値が0であれば(ステップS859)、ステップS856に移行する。
差数カウンタの値が0でない場合には、合算保留記憶表示カウンタの値を確認し、合算保留記憶表示カウンタの値が上限値である8に達していなければ(ステップS860)、ステップS856に移行する。合算保留記憶表示カウンタの値が8に達していれば、差数カウンタの値を−1し(ステップS861)、ステップS862に移行する。
ステップS862では、演出制御用CPU101は、無効始動入賞指定コマンドを受信したか否か確認する。無効始動入賞指定コマンドを受信していなければステップS866に移行する。無効始動入賞指定コマンドを受信している場合には、合算保留記憶表示カウンタの値が8に達していなければ(ステップS863)、合算保留記憶表示カウンタの値を+1し(ステップS864)、差数カウンタの値を+1する(ステップS865)。そして、ステップS866に移行する。
ステップS866では、合算保留記憶表示カウンタの値が変更されたか否か確認し、合算保留記憶表示カウンタの値が変更されている場合には、図柄保留記憶表示部18cの表示状態を、変更後の値に応じた状態にする。すなわち、図柄保留記憶表示部18cに表示されている合計数(合算保留記憶数)を変更後の値に応じた数にする。なお、演出制御用CPU101が合算保留記憶表示カウンタの値が変更されたか否か確認するには、RAMに更新前合算保留記憶表示カウンタを形成し、合算保留記憶表示カウンタの値と更新前合算保留記憶表示カウンタの値とを比較し、一致していなければ、合算保留記憶表示カウンタの値が変更されたと判定すればよい。そして、演出制御用CPU101は、合算保留記憶表示カウンタの値が変更されたと判定した場合には、変更後の合算保留記憶表示カウンタの値を更新前合算保留記憶表示カウンタにセットする。また、合算保留記憶表示カウンタの値を変更する処理は、ステップS856,S864の処理の他に、後述するステップS912,S916等の処理がある。
合算保留記憶表示カウンタは、特別図柄保留記憶表示部18cに表示される合計数を示すカウンタである。差数カウンタは、ダミー増加数を示すカウンタである。第1始動入賞数カウンタの値は、演出制御用CPU101が認識している第1保留記憶数を示す。第2始動入賞数カウンタの値は、演出制御用CPU101が認識している第2保留記憶数を示す。
遊技制御用マイクロコンピュータ560は、第1保留記憶数が上限値である4に達している状態で第1始動入賞口13に遊技球が入賞したとき、または第2保留記憶数が上限値である4に達している状態で第2始動入賞口14に遊技球が入賞したときに、無効始動入賞指定コマンドを送信する。すなわち、無効始動入賞が生じたときに無効始動入賞指定コマンドを送信する。演出制御用CPU101は、ステップS862〜S865の処理によって、合算保留記憶表示カウンタの値が上限値である8に達していない限り、無効始動入賞が生じたときに特別図柄保留記憶表示部18cに表示される合計数を1増やすことになる。すなわち、ダミー増加数を1増やす。
また、演出制御用CPU101は、ステップS853〜S855の処理によって、ダミー増加数が1以上であり、かつ、合算保留記憶表示カウンタの値が上限値に達しているときに第1始動入賞が生じた場合には、ダミー増加数を1減らしてダミー保留記憶を消化する。すなわち、ダミー保留記憶を減らす。また、ステップS859〜S861の処理によって、ダミー増加数が1以上であり、かつ、合算保留記憶表示カウンタの値が上限値に達しているときに第2始動入賞が生じた場合には、ダミー増加数を1減らしてダミー保留記憶を消化する。なお、ダミー増加数が1以上であり、かつ、合算保留記憶表示カウンタの値が上限値である8に達している場合には、第1保留記憶数が上限値である4に達した状態で第1始動入賞口13に無効始動入賞が生じたためにダミー保留記憶が生じたか、第2保留記憶数が上限値である4に達した状態で第2始動入賞口14に無効始動入賞が生じたためにダミー保留記憶が生じたことを意味している。また、遊技制御用マイクロコンピュータ560は、第1保留記憶数が上限値である4に達した状態で第1有効始動入賞指定コマンドを送信することはなく、また、第2保留記憶数が上限値である4に達した状態で第2有効始動入賞指定コマンドを送信することはない(図54参照)。従って、例えば、差数カウンタの値が0でなく、かつ、合算保留記憶表示カウンタの値が上限値である8に達しているときに、第1有効始動入賞指定コマンドを受信したということは、第2保留記憶数が上限値である4に達していて、かつ、第2始動入賞口14に無効始動入賞が生じ、ダミー保留記憶数が増やされたことを意味する。そのような状況で第1有効始動入賞指定コマンドを受信した場合には、合算保留記憶におけるダミー保留記憶に応じた分が、真の合算保留記憶(この例では、第1有効始動入賞にもとづく保留記憶)に変更されることになる。
なお、ダミー保留記憶を減らす方法の一つとして、背景図柄変動パターンとして仮停止(例えば、0.5秒や1秒間停止)の態様を含む背景図柄変動パターン(図36参照)を用い、演出制御用CPU101が、背景図柄を仮停止させたときに、合算保留記憶数を1減算する方法を既に例示したが、ステップS853〜S855の処理およびステップS859〜S861の処理も、ダミー保留記憶を減らす方法の一つである。特に、ステップS855,S861の差数カウンタの値を1減らす処理を実行することによって、ダミー保留記憶の数が1減らされる。
図70は、図64に示す背景図柄プロセス処理(ステップS706)を示すフローチャートである。演出制御用CPU101は、背景図柄プロセスフラグの値に応じてステップS900〜S908のうちのいずれかの処理を行う。各処理において、以下のような処理を実行する。
背景図柄変動待ち処理(ステップS900):背景図柄の変動開始条件が成立したか否か判定し、背景図柄の変動開始条件が成立した場合には、背景図柄表示部9cにおいて変動が開始されるように制御する。背景図柄の変動開始条件は、コマンド解析処理で第1変動パターン#1〜#8指定のいずれか(8001(H)〜8008(H)のいずれか)または第2変動パターン#1〜#8指定のいずれか(8011(H)〜8018(H)のいずれか)の演出制御コマンドが受信されたことが確認された場合に成立する。そして、背景図柄プロセスフラグを、予告選択処理(ステップS901)に応じた値に更新する。
予告選択処理(ステップS901):予告演出を実行するか否かと、実行する場合の演出態様を決定する。そして、背景図柄プロセスフラグの値を背景図柄変動開始処理(ステップS902)に対応した値に更新する。なお、予告選択処理において、演出制御用CPU101は、例えば可変表示装置9においてキャラクタ画像を用いた予告演出(連続予告以外の予告演出、特別図柄の停止図柄が大当り図柄となること、またはリーチが発生することを事前に報知するための演出)を行うか否かと、行う場合の予告演出の種類を決定する。例えば、第1変動パターンコマンドを受信したことに応じて背景図柄の変動が開始され、表示結果コマンドとして確変大当り指定コマンドまたは通常大当り指定コマンドを受信している場合には、予告演出を行うことに決定する。そのときに、100%の確率で予告演出を実行するのではなく、予告演出する/しないを、乱数を用いて抽選によって決定するようにしてもよい。
背景図柄変動開始処理(ステップS902):左中右の背景図柄の変動が開始されるように制御する。また、受信している表示結果コマンドに応じて背景図柄の停止図柄を決定し、背景図柄の変動時間として、前半の背景図柄変動パターンに対応する時間、例えば10秒を設定する。そして、背景図柄プロセスフラグの値を背景図柄変動中(前半)処理(ステップS903)に対応した値に更新する。
背景図柄変動中(前半)処理(ステップS903):背景図柄の変動時間(この場合には、常に10秒)の終了を監視する。変動時間が終了したら、背景図柄プロセスフラグの値を背景図柄変動待ち処理(ステップS900)または背景図柄変動中(後半)処理(ステップS904)に対応した値に更新する。なお、飾り図柄(第1飾り図柄または第2飾り図柄)の変動時間が10秒であれば、背景図柄プロセスフラグの値を背景図柄変動待ち処理(ステップS900)に対応した値に更新し、飾り図柄の変動時間が10秒を越える時間であれば、背景図柄変動中(後半)処理(ステップS904)に対応した値に更新する。背景図柄変動中(後半)処理に対応した値に更新する場合には、背景図柄の変動時間として、飾り図柄の変動時間の残り時間(例えば、飾り図柄の変動時間が20秒であれば、残り時間は10秒)を設定する。また、背景図柄変動中(前半)処理が完了する時点(変動開始から10秒が経過した時点)は、上述した切替ポイントに相当する。
背景図柄変動中(後半)処理(ステップS904):背景図柄の変動時間の終了を監視する。変動時間が終了したら、背景図柄プロセスフラグの値を背景図柄停止処理(ステップS905)に対応した値に更新する。なお、背景図柄変動中(後半)処理において、演出制御用CPU101は、背景図柄の変動時間を延長することがある。例えば、第1変動パターン#1〜#8指定のいずれかを受信したことに応じて背景図柄の変動を開始し、背景図柄変動中(後半)処理中に、第2変動パターン#1〜#8指定のいずれかを受信したような場合である。
背景図柄停止処理(ステップS905):背景図柄の変動を最終停止し停止図柄を表示する制御を行う。そして、背景図柄プロセスフラグの値を背景図柄変動開始待ち処理(ステップS900)または大当り表示処理(ステップS906)に対応した値に更新する。なお、大当り表示処理(ステップS906)に対応した値に更新する場合には、第1大当り開始指定コマンドまたは第2大当り開始指定コマンドを受信していることを条件に、大当り表示処理(ステップS906)に対応した値に更新する。基本的には、背景図柄停止処理が実行される期間は遊技制御用マイクロコンピュータ560によって第1大当り図柄停止処理または第2大当り図柄停止処理が実行されている期間と同じであるが、後述するように、背景図柄の停止図柄として大当り図柄が導出表示されてから大当り遊技が開始されるまでの期間が短い場合がある(例えば、図75におけるステップS971や図82におけるステップS634参照)。その場合には、背景図柄停止処理が実行される期間が遊技制御用マイクロコンピュータ560によって第1大当り図柄停止処理または第2大当り図柄停止処理が実行されている期間に比べて短いことがある。
大当り表示処理(ステップS906):大当り表示の制御を行う。そして、実際に大当り遊技が開始されたことを示すことになる大入賞口解放時表示コマンド(第1ラウンドに関する大入賞口解放時表示コマンド)を受信したら背景図柄プロセスフラグの値を大当り遊技中処理(ステップS907)に対応した値に更新する。なお、基本的には、大当り表示処理が実行される期間は遊技制御用マイクロコンピュータ560によって第1大当り表示処理または第2大当り表示処理が実行されている期間と同じであるが、背景図柄の停止図柄として大当り図柄が導出表示されてから大当り遊技が開始されるまでの期間が短い場合(例えば、図75におけるステップS971や図82におけるステップS634参照)、特に、その期間が遊技制御用マイクロコンピュータ560によって第1大当り表示処理または第2大当り表示処理が実行されている期間よりも短い場合、大当り表示処理が実行される期間が遊技制御用マイクロコンピュータ560によって第1大当り図柄停止処理または第2大当り図柄停止処理が実行されている期間に比べて短いことがある。
大当り遊技中処理(ステップS907):大当り遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の演出制御コマンドを受信したら、可変表示装置9に、ラウンド数の表示させる制御等を行う。第1大当り終了指定コマンドを受信したら、背景図柄プロセスフラグの値を大当り終了処理(ステップS908)に対応した値に更新する。
大当り終了処理(ステップS908):可変表示装置9において、大当り遊技状態が終了したことを遊技者に報知する表示制御を行う。そして、背景図柄プロセスフラグの値を背景図柄プロセスフラグの値を背景図柄変動待ち処理(ステップS900)に応じた値に更新する。
図71は、背景図柄変動開始待ち処理(ステップS900)を示すフローチャートである。背景図柄変動開始待ち処理において、演出制御用CPU101は、第1変動パターンコマンドまたは第2変動パターンコマンドを受信したか否か確認する(ステップS911)。第1変動パターンコマンドまたは第2変動パターンコマンドを受信した場合には、合算保留記憶表示カウンタの値を−1する(ステップS912)。そして、背景図柄プロセスフラグを、予告選択処理(ステップS901)に応じた値に更新する(ステップS913)。
第1変動パターンコマンドまたは第2変動パターンコマンドを受信していない場合には、第1始動入賞数カウンタおよび第2始動入賞数カウンタの値が0であって、差数カウンタの値が0でない値になっているか否か確認する(ステップS915)。なお、第1始動入賞数カウンタおよび第2始動入賞数カウンタの値は、図67に示す第1飾り図柄変動開始処理におけるステップS841と第2飾り図柄変動開始処理におけるステップS841の処理に相当する処理が実行される前の値である。第1飾り図柄プロセス処理(図64におけるステップS705A)において図66に示す第1変動パターンコマンド受信待ち処理が実行されると、図67に示す第1飾り図柄変動開始処理が実行される前に、背景図柄プロセス処理(図64におけるステップS706)において図71に示す背景図柄変動開始待ち処理が実行されるからである。つまり、第1変動パターンコマンドまたは第2変動パターンコマンドにもとづいて第1飾り図柄または第2飾り図柄の変動が開始されるときには、ステップS915の処理が実行されるときに第1始動入賞数カウンタと第2始動入賞数カウンタの値とのうちのいずれかは0になっていない。よって、第1飾り図柄または第2飾り図柄の変動が開始されるときには、ステップS915の判定結果は「N」になる。なお、遊技制御用マイクロコンピュータ560は、第1保留記憶数(または第2保留記憶数)が0でない場合に(図55におけるステップS51)、第1変動パターンコマンド(または第2変動パターンコマンド)を送信する状態(図58におけるステップS112参照)に移行する。
第1始動入賞数カウンタおよび第2始動入賞数カウンタの値が0であって差数カウンタの値が0でない値になっているということは、合算保留記憶表示カウンタの値が0ではないが、合算保留記憶が全てダミー保留記憶であることを意味する。そのような場合には、演出制御用CPU101は、第1飾り図柄および第2飾り図柄の変動を開始しないが、背景図柄の変動を行うように制御する。そして、合算保留記憶を消化させる。
合算保留記憶が全てダミー保留記憶である場合に背景図柄の変動を行うということは、直前に実行された背景図柄の変動(真の保留記憶にもとづく)の開始の契機になった可変表示の開始条件の成立にもとづいて、複数回の背景図柄の変動を行うということになる。
第1始動入賞数カウンタおよび第2始動入賞数カウンタの値が0であって差数カウンタの値が0でない値になっている場合に、演出制御用CPU101は、合算保留記憶表示カウンタの値を−1し(ステップS916)、差数カウンタの値を−1する(ステップS917)。そして、背景図柄プロセスフラグを、背景図柄変動開始処理(ステップS902)に応じた値に更新する(ステップS918)。
図72は、プロセステーブルの構成例を示す説明図である。プロセステーブルとは、演出制御用CPU101が背景図柄の制御を実行する際に参照するデータが設定されたテーブルである。すなわち、演出制御用CPU101は、プロセステーブルに設定されているデータに従って背景図柄表示部9cを含む可変表示装置9の表示領域の制御を行う。プロセステーブルは、プロセスタイマ設定値と表示制御実行データ、ランプ制御実行データおよび音番号データの組み合わせが複数集まったデータで構成されている。表示制御実行データには、背景図柄の可変表示の可変表示時間(変動時間)中の変動態様を構成する各変動の態様が記載されている。また、プロセスタイマ設定値には、その変動の態様での変動時間が設定されている。演出制御用CPU101は、プロセステーブルを参照し、プロセスタイマ設定値に設定されている時間だけ表示制御実行データに設定されている変動の態様で背景図柄を変動表示させる制御を行う。
また、演出制御用CPU101は、表示制御実行データにもとづく背景図柄表示部9cの制御に同期して、プロセスタイマ設定値に設定されている時間だけランプ制御実行データにもとづいて各種ランプの点灯状態を制御し、音番号データを音声出力基板70に出力する。すなわち、各種ランプおよびスピーカ27は、背景図柄表示部9cの制御に同期して制御される。
図72に示すプロセステーブルは、演出制御基板80におけるROMに格納されている。また、プロセステーブルは、各変動パターンに応じて用意されている。さらに、予告演出を実行する場合に演出態様の違いに応じて異なるプロセステーブルが用意されている。すなわち、この実施の形態では、予告演出の演出態様は、選択されたプロセステーブルに設定されているプロセスデータにもとづいて実現される。つまり、演出制御用CPU101は、予告演出を実行するときに、予告演出の演出態様に応じたプロセステーブルの内容に従って演出制御を行う。
以下、背景図柄プロセス処理における背景図柄変動開始処理等の処理について説明する。以下の説明は、遊技状態が確変状態または通常状態の場合を例にする。遊技状態が時短状態の場合には、各種タイマに設定される時間は、以下の説明における時間の半分の時間に相当する値になる。また、背景図柄変動開始開始待ち処理において第1変動パターンコマンドを受信したことにもとづいて背景図柄の変動を開始する制御を開始する場合と、第2変動パターンコマンドを受信したことにもとづいて背景図柄の変動を開始する制御を開始する場合とがあるが、以下の説明は、第1変動パターンコマンドを受信したことにもとづいて背景図柄の変動を開始する制御を開始する場合を例にする。
図73は、背景図柄変動開始処理(ステップS902)を示すフローチャートである。背景図柄変動開始処理において、演出制御用CPU101は、背景図柄の停止図柄を決定する(ステップS920)。表示結果コマンドとしてはずれ指定コマンドを受信し、変動パターンコマンドとして変動時間が10秒のものを受信している場合には、停止図柄として、左中右図柄が不一致の背景図柄を決定する。表示結果コマンドとしてはずれ指定コマンドを受信し、変動パターンコマンドとして変動時間が10秒を越えるものを受信している場合には、停止図柄として、左右図柄が一致し中図柄が不一致の背景図柄を決定する。表示結果コマンドとして確変大当り指定コマンドまたは通常大当り指定コマンドを受信している場合には、停止図柄として大当りを想起させるような背景図柄(例えば、左中右が揃った背景図柄の通常大当り図柄)を決定する。そして、差数カウンタの値が0であるか否か確認する(ステップS921)。
差数カウンタの値が0でない場合には、演出制御用CPU101は、10秒の変動時間を有する背景図柄変動パターンNo.1およびNo.9(図36参照)のうち、仮停止の態様を含む背景図柄変動パターンNo.9を選択する(ステップS922)。差数カウンタの値が0である場合には、仮停止の態様を含まない背景図柄変動パターンNo.1を選択する(ステップS923)。
差数カウンタの値が0でないということは、消化されないダミー保留記憶がまだ存在することを意味する。その場合、変動パターン中に仮停止の状態がある背景図柄変動パターンNo.9の変動パターンを用いる。後述するように、仮停止するときに合算保留記憶表示カウンタの値と差数カウンタの値とを1減算して、ダミー保留記憶を消化する。なお、差数カウンタの値が2以上である場合には、変動パターン中に複数回(例えば2回)の仮停止がなされる背景図柄変動パターンNo.9の変動パターンを用いる。その場合、変動時間が終了するまでに、合算保留記憶表示カウンタの値と差数カウンタの値とが複数減算される。
また、背景図柄の仮停止に伴って特別図柄保留記憶表示部18cにおける合算保留記憶数が1減らされるので、遊技者は、仮停止後の背景図柄の再変動に伴って合算保留記憶数が1減らされたと感ずる。よって、合算保留記憶数に対して違和感を感じない。また、背景図柄の仮停止に伴ってダミー保留記憶を消化するということは、仮停止後の背景図柄の再変動を1回の可変表示(変動)と捉えれば、可変表示の開始条件の成立にもとづいて、複数回の背景図柄の変動を行うということになる。
演出制御用CPU101は、使用する背景図柄の変動パターンに応じたプロセステーブルを選択する(ステップS924)。そして、選択したプロセステーブルにおけるプロセスデータ1のプロセスタイマ設定値をプロセスタイマに設定してプロセスタイマをスタートさせる(ステップS925)。次いで、演出制御用CPU101は、プロセスデータ1の内容(表示制御実行データ1、ランプ制御実行データ1、音番号データ1)に従って演出装置(可変表示装置9、各種ランプ、スピーカ27)の制御を実行する(ステップS926)。例えば、背景図柄表示部9cにおいて変動パターンに応じた画像を表示させるために、VDP109に制御信号(表示制御実行データ)を出力する。また、各種ランプを点灯/消灯制御を行わせるために、ランプドライバ基板35に対して制御信号(ランプ制御実行データ)を出力する。また、スピーカ27からの音声出力を行わせるために、音声出力基板70に対して制御信号(音番号データ)を出力する。そして、変動時間(この例では10秒)に応じた値を背景図柄変動時間タイマAに設定して背景図柄変動時間タイマAをスタートさせ(ステップS927)、全体時間タイマに飾り図柄(第1変動パターンコマンドを受信したことにもとづいて背景図柄の変動を行う場合には第1飾り図柄、第2変動パターンコマンドを受信したことにもとづいて背景図柄の変動を行う場合には第2飾り図柄)の変動時間に応じた値を設定し全体変動時間タイマをスタートさせる(ステップS928)。なお、飾り図柄の変動時間が10秒である場合には、全体変動時間タイマに設定される値は、ステップS927で背景図柄変動時間タイマAに設定される値と同じである。また、ダミー保留記憶にもとづいて背景図柄の変動を行う場合(ステップS915で「Y」の場合)には、ステップS928で全体変動時間タイマに10秒に相当する値を設定する。そして、背景図柄プロセスフラグを、背景図柄変動中(前半)処理(ステップS903)に応じた値に更新する(ステップS929)。
図74〜図76は、背景図柄変動中(前半)処理(ステップS903)を示すフローチャートである。背景図柄変動中(前半)処理において、演出制御用CPU101は、全体変動時間タイマの値および背景図柄変動時間タイマAの値を−1する(ステップS941,S942)。なお、全体変動時間タイマの値が0になっているときには全体変動時間タイマの値を−1する処理を実行せず、背景図柄変動時間タイマAの値が0になっているときには背景図柄変動時間タイマAの値を−1する処理を実行しない。また、背景図柄変動時間タイマBが設定されている場合には、背景図柄変動時間タイマBの値を−1する(ステップS943)。なお、背景図柄変動時間タイマBとは、背景図柄の変動が開始された後に新たな変動パターンコマンド(この例では、第2変動パターンコマンド)を受信したときに設定されるタイマであり、そのときに、背景図柄変動時間タイマBには、新たに受信した変動パターンコマンドが示す飾り図柄(この例では、第2飾り図柄)の変動時間に応じた値が設定される。
次いで、演出制御用CPU101は、背景図柄変動時間タイマAがタイムアウトしたか否かすなわち背景図柄変動時間タイマAの値が0になったか否か確認する(ステップS944)。背景図柄変動時間タイマAがタイムアウトしている場合にはステップS953に移行する。タイムアウトしていない場合には、プロセスタイマの値を−1する(ステップS945)。プロセスタイマがタイムアウトしたら(値が0になったら)、プロセスデータの切替を行う(ステップS946,S947)。すなわち、プロセステーブルにおける次に設定されているプロセスタイマ設定値をプロセスタイマに設定するとともに、その次に設定されている表示制御実行データ、ランプ制御実行データおよび音番号データにもとづいて演出装置(可変表示装置9等)に対する制御状態を変更する。
また、切替後のプロセスデータが仮停止を示すデータであった場合には、合算保留記憶表示カウンタの値および差数カウンタの値を−1する(ステップS948)。すなわち、ダミー保留記憶を消化する。
また、演出制御用CPU101は、新たな変動パターンコマンド(この例では、第2変動パターンコマンド)を受信したか否か確認し(ステップS949)、受信していたら、背景図柄B変動要求フラグをセットし(ステップS950)、背景図柄変動時間タイマBに、新たに受信した変動パターンコマンドが示す飾り図柄(この例では、第2飾り図柄)の変動時間に応じた値を設定する(ステップS951)。背景図柄B変動要求フラグとは、切替ポイントになる前に新たな変動パターンコマンドを受信したことを示すフラグである。背景図柄Bとは、新たな変動パターンコマンドの受信にもとづいて開始されたと仮定した場合に変動開始される背景図柄である。ただし、切替ポイントの時点では背景図柄Bの変動はなされていない。
演出制御用CPU101は、ステップS944で背景図柄変動時間タイマAがタイムアウトしたと判定したら、背景図柄B変動決定フラグがセットされているか否か確認し(ステップS953)、セットされていたら、背景図柄のはずれ図柄を仮停止させる制御を行い(ステップS956)、背景図柄B変動決定フラグをリセットする(ステップS957)。そして、ステップS976に移行する。なお、背景図柄のはずれ図柄を仮停止させる場合には所定の仮停止期間だけ仮停止状態を維持する制御を行うが、そのような制御は、プロセステーブルに、仮停止を示すデータを仮停止期間を示すデータと対応付けて設定しておくことによって実現される。
なお、背景図柄B変動決定フラグとは、背景図柄の変動開始時から10秒を経過したときに、以後の背景図柄の変動は新たな変動パターンコマンドが示す飾り図柄の変動に対応したものに切り替えることに決定されたが、切替後の変動時間が図36に示す変動時間のいずれにも一致しない場合にセットされる。例えば、新たな変動パターンコマンドが示す飾り図柄の変動時間が20秒であるが、背景図柄の変動開始時から10秒を経過したときに既に3秒間の変動がなされていた(背景図柄の変動開始時から7秒を経過したときに新たな変動パターンコマンドが示す飾り図柄の変動が開始された)場合には、切替後の変動時間は17秒である。その場合、図36に示す変動時間のいずれにも一致しない。
この実施の形態では、そのような状況が生じたときには、図36に示す背景図柄の変動時間のいずれかを用いれば、新たな変動パターンコマンドが示す飾り図柄の変動の終了の時点が背景図柄の変動時間の経過時になるように、切替ポイントを移動させるように制御する。上の例では、15秒の背景図柄の変動時間を用いれば飾り図柄の変動の終了の時点が背景図柄の変動時間の経過時になるように、切替ポイントを2秒ずらす。すなわち、背景図柄の変動開始時から12秒後が変更後の切替ポイントになる。
ステップS953で背景図柄B変動決定フラグがセットされていないことを確認したら、演出制御用CPU101は、全体変動時間タイマがタイムアウトしているか否か確認する(ステップS954A)。全体変動時間タイマがタイムアウトしていたら、背景図柄B変動要求フラグがセットされているか否か確認する(ステップS954B)。背景図柄B変動要求フラグがセットされている場合には、背景図柄B変動要求フラグをリセットし(ステップS954C)、ステップS976に移行する。背景図柄B変動要求フラグがセットされていない場合には、背景図柄プロセスフラグを、背景図柄停止処理(ステップS905)に応じた値に更新する(ステップS955)。全体変動時間タイマがタイムアウトしていない場合には、ステップS958に移行する。
なお、全体変動時間タイマがタイムアウトしたときに背景図柄B変動要求フラグがセットされていないいうことは、背景図柄の変動に対応する飾り図柄(この例では、第1飾り図柄)の変動時間が10秒であって、変動時間中に新たな変動パターンコマンドを受信しなかったことを意味する。また、全体変動時間タイマがタイムアウトしていないということは、背景図柄の変動に対応する飾り図柄(この例では、第1飾り図柄)の変動時間が10秒を越えることを意味する。
ステップS958では、演出制御用CPU101は、背景図柄B変動要求フラグがセットされているか否か確認する。背景図柄B変動要求フラグがセットされていない場合、すなわち背景図柄の変動開始時から10秒が経過する前に新たな変動パターンコマンドを受信していない場合には、全体変動時間タイマの値(飾り図柄の変動時間から10秒を差し引いた時間に相当)に応じた背景図柄変動パターン(図36参照)を選択する(ステップS959)。そして、使用する背景図柄の変動パターンに応じたプロセステーブルを選択する(ステップS960)。そして、選択したプロセステーブルにおけるプロセスデータ1のプロセスタイマ設定値をプロセスタイマに設定してプロセスタイマをスタートさせる(ステップS961)。次いで、演出制御用CPU101は、プロセスデータ1の内容(表示制御実行データ1、ランプ制御実行データ1、音番号データ1)に従って演出装置(可変表示装置9、各種ランプ、スピーカ27)の制御を実行する(ステップS962)。そして、背景図柄プロセスフラグを、背景図柄変動中(後半)処理(ステップS904)に応じた値に更新する(ステップS963)。
背景図柄B変動要求フラグがセットされている場合には、演出制御用CPU101は、背景図柄B変動要求フラグをリセットする(ステップS965)。そして、背景図柄Aの変動に対応した飾り図柄(この例では、第1飾り図柄。また、背景図柄Aの変動は第1特別図柄の変動にも対応。)の停止図柄が大当り図柄に決定されているか否か確認する(ステップS965B)。大当り図柄に決定されている場合には、ステップS968に移行する。大当り図柄に決定されていない場合には、全体変動時間タイマの値(飾り図柄の変動時間から10秒を差し引いた時間に相当)と背景図柄変動時間タイマBの値(新たな変動パターンコマンドが示す飾り図柄の変動時間から、その変動の開始時から切替ポイントまでの時間を差し引いた時間に相当)とを比較する(ステップS966)。全体変動時間タイマの値の方が大きい場合には、ステップS968に移行する。
背景図柄変動時間タイマBの値の方が大きい場合には、演出制御用CPU101は、背景図柄変動時間タイマBの値に合致する変動時間を有する背景図柄変動パターン(図36参照)があるか否か判定する(ステップS975)。そのような背景図柄変動パターンがある場合には、背景図柄のはずれ図柄を仮停止させる制御を行い(ステップS975B)、背景図柄変動時間タイマBの値を全体変動時間タイマに設定し(ステップS976)、合算保留記憶表示カウンタの値を−1して(ステップS977)、ステップS981に移行する。
また、背景図柄変動時間タイマBの値に合致する変動時間を有する背景図柄変動パターンがない場合には、背景図柄変動時間タイマBの値よりも小さい変動時間(図36参照)のうち最大の値から背景図柄変動時間タイマBの値を差し引いた値を、背景図柄変動時間タイマAに設定し(ステップS978)、背景図柄変動決定フラグをセットする(ステップS979)。例えば、背景図柄変動時間タイマBの値が17秒に相当する値であった場合には、背景図柄変動時間タイマBの値よりも小さい変動時間(図36参照)のうち最大の値は15秒であるから、背景図柄変動時間タイマAに2秒に相当する値が設定される。ステップS978の処理によって、切替ポイントまで実行されていた演出が所定時間(この例では2秒)延長されることになる。なお、切替ポイントまでに実行される演出はNo.1またはNo.9の背景図柄変動パターンのリーチ演出を伴わない変動であるから、変動時間を延長しても遊技に与えられる違和感は少ない。また、この実施の形態では、背景図柄Aの変動時間を調整するが、背景図柄Bの方の変動時間を調整するようにしてもよい。例えば、背景図柄Bの最初に実行される高速変動の時間を調整するようにしてもよい。
ステップS978,S979の処理は、切替ポイントを変更するための処理である。ステップS978,S979の処理が実行された後、背景図柄変動中(前半)処理が実行されると、ステップS942〜S944の処理が実行され、背景図柄変動時間タイマAがタイムアウトとすると、変更後の切替ポイントが到来したことになり、ステップS953の処理が実行される。
ステップS968では、演出制御用CPU101は、差数カウンタの値を+1する。この実施の形態では、切替ポイントにおいて背景図柄の変動を背景図柄Bの変動に切り替えない場合(すなわち、ステップS965の判定で「全体変動時間タイマ」となった場合)には合算保留記憶数を−1せず、また、第2保留記憶数は第2飾り図柄プロセス処理において−1されているので、実質的にダミー保留記憶が1増えるからである。
ステップS965Bの処理によって、背景図柄Aの変動に対応した飾り図柄(この例では、第1飾り図柄)の停止図柄が大当り図柄に決定されている場合には、その背景図柄の変動が継続されることになる。この場合、背景図柄Aの変動に対応した飾り図柄(この例では、第1飾り図柄)の変動終了時よりも、背景図柄Bの変動に対応した飾り図柄(この例では、第2飾り図柄)の変動終了時の方が遅い場合もある。この実施の形態では、そのような場合には、背景図柄Aの変動が終了すると、可変表示装置9において、大当り遊技に関連する演出が実行される。そして、大当り遊技が実行されている間、背景図柄Bの変動に対応した飾り図柄(この例では、第2飾り図柄)の変動が中断される。その後、大当り遊技が終了すると、背景図柄Bの変動に対応した飾り図柄(この例では、第2飾り図柄)の変動が再開される。しかし、例えば第2飾り図柄の変動が再開されても、第2飾り図柄の変動に対応する背景図柄Bの変動は再開されない。なお、そのような場合には、ステップS968の処理で差数カウンタが+1されるので、あらためてステップS915の判定にもとづいて背景図柄の変動が開始される。しかし、背景図柄Aの変動に対応した飾り図柄(この例では、第1飾り図柄)の停止図柄が大当り図柄であることに対応して実行される大当り遊技の終了後に、背景図柄Bの変動を再開するようにしてもよい。
次いで、演出制御用CPU101は、背景図柄変動中処理(後半)で用いる背景図柄変動パターンを決定する。具体的には、全体変動時間タイマの値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含まない背景図柄変動パターンを選択する(ステップS969)。
なお、ここでも、差数カウンタの値が0でない場合には、全体変動時間タイマに値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含む背景図柄変動パターンを選択するようにしてもよい。ただし、ステップS968の処理で差数カウンタの値が1増やされるので、必ず仮停止の態様を含む背景図柄変動パターンが選択されることになる。仮停止の態様を含む背景図柄変動パターンを選択した場合には、仮停止するときに合算保留記憶表示カウンタの値と差数カウンタの値とを1減算して、ダミー保留記憶を消化する。なお、差数カウンタの値が2以上である場合には、変動パターン中に複数回(例えば2回)の仮停止がなされる背景図柄変動パターンを用いる。その場合、変動時間が終了するまでに、合算保留記憶表示カウンタの値と差数カウンタの値とが複数減算される。
そして、演出制御用CPU101は、ステップS949で判定した新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄の変動の停止図柄が大当り図柄であるか否か判定する(ステップS970)。大当り図柄でない場合にはステップS960に移行する。大当り図柄である場合には、その飾り図柄の変動終了時は背景図柄A(現在変動中の背景図柄すなわち全体変動時間タイマがタイムアウトしたときに停止される背景図柄)の変動終了時に対して所定時間以内であるか否か確認する(ステップS971)。所定時間以内であれば、背景図柄大当り表示フラグをセットし(ステップS972)、所定時間を越えていれば、背景図柄停止要求フラグをセットする(ステップS973)。そして、ステップS960に移行する。なお、ステップS966の処理で全体変動時間タイマの方が長いと判定され、ステップS970の判定で「N」となった場合に、仮停止の態様を含む背景図柄変動パターンを選択するようにしてもよい。
なお、この実施の形態では、所定時間は、大当り図柄の表示時間と大当り表示の時間の合計(図61に示す第1大当り図柄停止処理におけるステップS184で設定される第1大当り表示時間タイマの値に相当、第2大当り図柄停止処理については、ステップS184の処理に相当する処理で設定される第2大当り表示時間タイマの値に相当)である。すなわち、大当り図柄が導出表示されてから大当り遊技が開始されるまでの時間である。
また、演出制御用CPU101は、例えば第2変動パターンコマンドの受信の直前に受信した表示結果コマンドが確変大当り指定コマンドまたは通常大当り指定コマンドである場合にフラグをセットし、そのフラグがセットされているか否かによって、新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄の変動の停止図柄が大当り図柄であるか否か判定することができる。また、その飾り図柄の変動終了時を、背景図柄変動時間タイマBの値によって確認することができる。
また、第1特別図柄の変動と第1飾り図柄の変動とは同期し、第2特別図柄の変動と第2飾り図柄の変動とは同期しているので、また、この例では背景図柄Aは第1飾り図柄の変動に対応しているので、背景図柄Aの変動終了時と第1飾り図柄の変動終了時は同じ時点であり、ステップS970〜S973の処理は、第1特別図柄および第1飾り図柄の変動開始後変動終了時までに、第2特別図柄および第2飾り図柄の変動が開始され、さらに、その変動の停止図柄が大当り図柄である場合に、第2特別図柄および第2飾り図柄の変動が終了時点が第1特別図柄および第1飾り図柄の変動終了時に対して所定時間以内であることを条件に背景図柄大当り表示フラグをセットし(ステップS972)、所定時間を越えていることを条件に、背景図柄停止要求フラグをセットする(ステップS973)ことになる。
ステップS981では、演出制御用CPU101は、差数カウンタの値を確認する。差数カウンタの値が0でない場合には、全体変動時間タイマに値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含む背景図柄変動パターンを選択する(ステップS982)。差数カウンタの値が0である場合には、全体変動時間タイマに値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含まない背景図柄変動パターンを選択する(ステップS983)。ステップS983の処理で選択される背景図柄変動パターンは、ステップS975の判定が「Y」であったときには、No.3*、No.5*またはNo.7*(変動時間が、15秒、25秒または35秒。ステップS949の処理で新たな変動パターンコマンドが受信されたと判断されたときにステップS951の処理で背景図柄変動時間タイマBに変動時間に相当する値(10秒、20秒、30秒または40秒に相当する値)が設定されるが、その後、切替ポイントについてのステップS944の判定が行われる前に必ず背景図柄変動時間タイマBの値は減算されるので(ステップS943参照)、ステップS975の判定で「Y」になる場合には、ステップS983の処理で変動時間が10秒、20秒、30秒または40秒の背景図柄変動パターンが選択されることはない。なお、ステップS951の処理で背景図柄変動時間タイマBに10秒に相当する値が設定されたときには、ステップS975の判断で「N」と判定されたときには、背景図柄変動時間タイマBの値(10秒に相当する値よりも小さい)よりも小さい変動時間は図36において定義していないので、その場合には、ステップS955に移行するようにしてもよい。)である。ステップS975の判定が「Y」であったときには、ステップS982の処理で選択される背景図柄変動パターンは、No.11*、No.13*またはNo.15*(変動時間が、15秒、25秒または35秒)である。また、ステップS953の判定が「Y」であったときには、ステップS983の処理でNo.2*〜No.7*のうちのいずれか(変動時間が、10秒、15秒、20秒、25秒、30秒または35秒)の背景図柄変動パターンが選択される。ステップS982の処理ではNo.10*〜No.15*のうちのいずれか(変動時間が、10秒、15秒、20秒、25秒、30秒または35秒)の背景図柄変動パターンが選択される。
なお、ステップS982,S983の処理が実行されるのはステップS966の判定で背景図柄変動時間タイマBの方が大きいと判断された場合である(ステップS954AおよびS954Bの判定でともに「Y」となった場合を除く。)。その場合、背景図柄Bに対応する特別図柄および飾り図柄の変動時間の残り時間が10秒以上であって、かつ、背景図柄Bに対応する特別図柄および飾り図柄の全体の変動時間が20秒、30秒または40秒であった場合である(図36参照)。すなわち、ステップS982,S983の処理が実行される場合に、背景図柄Bに対応する特別図柄および飾り図柄の全体の変動時間が10秒であったということはない。また、後述するように、仮停止するときに合算保留記憶表示カウンタの値と差数カウンタの値とを1減算して、ダミー保留記憶を消化する。なお、差数カウンタの値が2以上である場合には、変動パターン中に複数回(例えば2回)の仮停止がなされる背景図柄変動パターンを用いる。その場合、変動時間が終了するまでに、合算保留記憶表示カウンタの値と差数カウンタの値とが複数減算される。
そして、使用する背景図柄の変動パターンに応じたプロセステーブルを選択する(ステップS984)。そして、選択したプロセステーブルにおけるプロセスデータ1のプロセスタイマ設定値をプロセスタイマに設定してプロセスタイマをスタートさせる(ステップS985)。次いで、演出制御用CPU101は、プロセスデータ1の内容(表示制御実行データ1、ランプ制御実行データ1、音番号データ1)に従って演出装置(可変表示装置9、各種ランプ、スピーカ27)の制御を実行する(ステップS986)。そして、背景図柄プロセスフラグを、背景図柄変動中(後半)処理(ステップS904)に応じた値に更新する(ステップS987)。
図77〜図80は、演出制御用CPU101による背景図柄変動開始処理および背景図柄変動中(前半)処理による背景図柄の変動の例を示す説明図である。図77は、切替ポイントが到来する前に、新たな変動パターンコマンド(この例では、第2変動パターンコマンド)を受信したことに応じて第2可変表示部9bにおいて第2飾り図柄の変動が開始されたことを示している。なお、第2特別図柄表示器8bでは、遊技制御用マイクロコンピュータ560の制御によって第2特別図柄の変動が開始されている。
そして、図77には、切替ポイントにおいて、背景図柄Aの変動時間の残り時間(第1特別図柄および第1飾り図柄の変動時間の残り時間と同じ)よりも、背景図柄B(上述したように新たな変動パターンコマンドの受信にもとづいて開始されたと仮定した場合の背景図柄の変動。切替ポイントの時点では背景図柄Bの変動はなされていない。また、その変動時間は第2特別図柄および第2飾り図柄の変動時間と同じ)の変動時間の残り時間(第2特別図柄および第2飾り図柄の変動時間の残り時間と同じ)の方が長い場合の例が示されている。さらに、背景図柄Bの変動時間の残り時間が28秒であったとする。
その場合には、演出制御用CPU101は、最初に切替ポイントになった時点(図74におけるステップS944参照)で、ステップS950でセットされた背景図柄B変動要求フラグを確認し(図75におけるステップS958参照)、背景図柄変動時間タイマAに3秒に相当する値をセットし(ステップS978参照)、背景図柄B変動決定フラグをセットする(ステップS979参照)。
そして、背景図柄変動時間タイマAがタイムアウトしたら、すなわち変更された切替ポイントの時点になったら(図74におけるステップS944参照)、背景図柄B変動決定フラグがセットされていることを確認し(ステップS953参照)、全体変動時間タイマに背景変動時間タイマBの値(背景図柄Bの変動時間の残り時間に相当。この例では25秒に相当。)を設定した後、背景図柄変動パターンを選択し(図76におけるステップS982,S983参照)、背景図柄の変動を継続させる。なお、継続される背景図柄の変動は、第2特別図柄および第2飾り図柄の変動に対応したものになる。この実施の形態では、第2特別図柄および第2飾り図柄の変動時間の残り時間が10秒よりも長い場合には、リーチ演出を伴う背景図柄の可変表示を行うことができる。そこで、図77に例示する場合には、背景図柄の変動開始から13秒が経過したときに、リーチ演出を伴うNo.5*の背景図柄変動パターン(図36参照)を用いることができる。リーチ演出を伴う背景図柄変動パターンを用いた場合には、その背景図柄変動パターンに応じたプロセステーブルに設定されているプロセスデータにもとづいて、演出制御用CPU101は、例えば最初の5秒間は左中右の背景図柄が高速変動し、5秒が経過したら左右の背景図柄を揃った状態で停止表示し、その後、背景表示部9cにおいてリーチ演出が実行されるように制御する。なお、演出制御用CPU101は、揃った状態で停止表示される左右の背景図柄の種類を、背景図柄変動パターンによる変動が開始される時点、左右の背景図柄を揃った状態で停止表示する時点、またはそれ以前の時点において、例えば乱数を用いた抽選によって決定することができる。また、図77に例示されているように背景図柄の変動の切替(例えば、第1特別図柄および第1飾り図柄に対応した背景図柄の変動から、第2特別図柄および第2飾り図柄に対応した背景図柄の変動への切替)が行われる場合には、背景図柄の停止図柄を導出表示するときに決定してもよいが、背景図柄の変動の切替が行われる時点において、対応する飾り図柄に関連して受信されている表示結果コマンドに応じた停止図柄を決定するようにしてもよい。
図78には、切替ポイントにおいて、背景図柄Aの変動時間の残り時間の方が、背景図柄Bの変動時間の残り時間よりも長い場合の例が示されている。また、背景図柄Aの変動時間の残り時間が20秒であったとする。さらに、第1始動入賞数カウンタおよび第2始動入賞数カウンタの値が0であって、差数カウンタの値が0でない値になっている場合の例が示されている。
その場合には、切替ポイントになった時点(図74におけるステップS944参照)で、全体変動時間タイマの値(背景図柄Aの変動時間の残り時間に相当)の方が背景図柄変動時間タイマBの値(背景図柄Bの変動時間の残り時間に相当)よりも大きいことを確認し(図75におけるステップS966参照)、背景図柄変動パターンを選択し(ステップS969参照)、背景図柄の変動を継続させる。なお、継続される背景図柄の変動は、第1特別図柄および第1飾り図柄の変動に対応したものである。なお、この実施の形態では、継続される背景図柄の変動が第1特別図柄および第1飾り図柄の変動に対応したものである場合には、すなわち背景図柄Bの変動に切り替えない場合には、切替ポイントにおいて合算保留記憶数を減算しない。
さらに、背景図柄の変動が終了したときに第1始動入賞数カウンタおよび第2始動入賞数カウンタの値が0であって差数カウンタの値が0でない値になっている場合には、再び背景図柄の変動が開始される(図71のステップS915参照)。このようにして、ダミー保留記憶が消化される。
図79は、ステップS949で判定した新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄(この例では、第2飾り図柄)の変動の停止図柄が大当り図柄であり、その飾り図柄の変動終了時は背景図柄Aの変動終了時に対して所定時間以内である場合を示す説明図である。なお、第2飾り図柄の停止図柄が大当り図柄である場合には、第2特別図柄の停止図柄も大当り図柄になる。
その場合には、演出制御用CPU101は、切替ポイントにおいて背景図柄Aの変動を継続するように制御するが(図75におけるステップS966,S969参照)、ステップS972の処理で、背景図柄大当り表示フラグをセットする。そして、演出制御用CPU101は、背景図柄停止処理において、背景図柄大当り表示フラグがセットされている場合には、背景図柄の停止図柄を大当り図柄に変更する。なお、この実施の形態では、第1特別図柄および第1飾り図柄の表示結果(停止図柄)を大当り図柄にすると決定した後から、少なくとも表示結果が導出表示されるまでの特定期間において、表示結果を大当り図柄にする第2特別図柄および第2飾り図柄の変動は開始されない。また、第2特別図柄および第2飾り図柄の表示結果を大当り図柄にすると決定した後から、少なくとも表示結果が導出表示されるまでの特定期間において、表示結果を大当り図柄にする第1特別図柄および第1飾り図柄の変動は開始されない。従って、停止図柄を大当り図柄にする第1特別図柄および第1飾り図柄の変動と停止図柄を大当り図柄にする第2特別図柄および第2飾り図柄の変動とが同時に実行されることはなく、停止図柄を大当り図柄にする第2特別図柄および第2飾り図柄の変動が開始されたということは、第1特別図柄および第1飾り図柄の変動の停止図柄ははずれ図柄である。
図79に示す例では、切替ポイントを過ぎて実行される背景図柄の変動は第1飾り図柄の変動に対応したものである。従って、本来、背景図柄の停止図柄ははずれ図柄にされるべきであるが、そのように制御すると、第2特別図柄および第2飾り図柄の停止時から所定時間(この実施の形態では、大当り図柄が導出表示されてから大当り遊技が開始されるまでの時間。例えば1秒。)をおいて大当り遊技が開始されることになるが、遊技者に視認されやすい背景図柄の停止図柄がはずれ図柄になってしまい、遊技者が不審感を抱く可能性がある。しかし、図79に例示したように制御すれば、そのような可能性をなくすことができる。
図80は、ステップS949で判定した新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄(この例では、第2飾り図柄)の変動の停止図柄が大当り図柄であり、その飾り図柄の変動終了時は背景図柄Aの変動終了時に対して所定時間を越える場合を示す説明図である。
その場合には、演出制御用CPU101は、切替ポイントにおいて背景図柄Aの変動を継続するように制御するが(図75におけるステップS966,S969参照)、ステップS973の処理で、背景図柄停止要求フラグをセットする。そして、演出制御用CPU101は、背景図柄停止処理において、背景図柄停止要求フラグがセットされている場合には、第2飾り図変動の終了停止時に背景図柄の変動を停止し、背景図柄の停止図柄を大当り図柄に変更する。
図80に示す例では、切替ポイントを過ぎて実行される背景図柄の変動は第1飾り図柄の変動に対応したものである。従って、本来、停止図柄の変動は第1飾り図柄に停止図柄が導出表示されるときに終了し、背景図柄の停止図柄ははずれ図柄にされるべきであるが、そのように制御すると、第2特別図柄および第2飾り図柄の停止図柄が大当り図柄であることに対応して大当り遊技が開始されることになるが、大当り遊技中に遊技者に視認されやすい背景図柄の停止図柄としてはずれ図柄が導出表示されてしまい、遊技者が不審感を抱く可能性がある。しかし、図80に例示したように制御すれば、そのような可能性をなくすことができる。
図81,図82は、背景図柄変動中(後半)処理(ステップS904)を示すフローチャートである。背景図柄変動中(後半)処理において、演出制御用CPU101は、全体変動時間タイマの値を−1する(ステップS611)。そして、全体変動時間タイマがタイムアウトしている(全体変動時間タイマの値が0になった)か否か確認し(ステップS612)、全体変動時間タイマがタイムアウトしている場合には、背景図柄プロセスフラグを、背景図柄停止処理(ステップS905)に応じた値に更新する(ステップS613)。
全体変動時間タイマがタイムアウトしていない場合には、背景図柄停止要求フラグ(ステップS973およびステップS636参照)がセットされているか否か確認し、セットされていなければ、ステップS616に移行する。背景図柄停止要求フラグがセットされている場合には、新たな変動パターンコマンド(この例では、第2変動パターンコマンド、ステップS620および図74におけるステップS949参照)を受信したことにもとづく飾り図柄(この例では、第2飾り図柄)の変動が終了したか否か確認する(ステップS615)。なお、新たな変動パターンコマンドを受信したことにもとづく飾り図柄の変動が終了したか否かは、例えば、第2飾り図柄停止指定コマンドを受信したことや、第2飾り図柄プロセスフラグの値が第2飾り図柄停止処理に応じた値に変化したことによって判定される。
新たな変動パターンコマンドを受信したことにもとづく飾り図柄の変動が終了した場合には、演出制御用CPU101は、背景図柄の変動を停止して、背景図柄停止要求フラグをリセットし(ステップS626)、背景図柄プロセスフラグを、背景図柄停止処理(ステップS905)に応じた値に更新する(ステップS627)。
ステップS616では、演出制御用CPU101は、プロセスタイマの値を−1する。プロセスタイマがタイムアウトしたら(値が0になったら)、プロセスデータの切替を行う(ステップS617,S618)。すなわち、プロセステーブルにおける次に設定されているプロセスタイマ設定値をプロセスタイマに設定するとともに、その次に設定されている表示制御実行データ、ランプ制御実行データおよび音番号データにもとづいて演出装置(可変表示装置9等)に対する制御状態を変更する。
また、切替後のプロセスデータが仮停止を示すデータであった場合には、合算保留記憶表示カウンタの値および差数カウンタの値を−1する(ステップS619)。すなわち、ダミー保留記憶を消化する。
また、演出制御用CPU101は、新たな変動パターンコマンド(この例では、第1特別図柄および第1飾り図柄に対応する背景図柄の変動が行われている場合には第2変動パターンコマンド、第2特別図柄および第2飾り図柄に対応する背景図柄の変動が行われている場合には第1変動パターンコマンド)を受信したか否か確認し(ステップS620)、受信していたら、ステップS630に移行する。
テップS630では、演出制御用CPU101は、背景図柄(第1特別図柄および第1飾り図柄に対応する背景図柄の変動が行われている場合には背景図柄A、第2特別図柄および第2飾り図柄に対応する背景図柄の変動が行われている場合には背景図柄B)の変動に対応した飾り図柄の停止図柄が大当り図柄に決定されているか否か確認する。大当り図柄に決定されている場合には、ステップS632に移行する。大当り図柄に決定されていない場合には、全体変動時間タイマの値(背景図柄の変動時間の残り時間に相当)と新たに受信した変動パターンコマンドが示す飾り図柄の変動パターンの変動時間とを比較する(ステップS631)。全体変動時間タイマの値の方が大きい場合には、ステップS632に移行する。新たに受信した変動パターンコマンドが示す飾り図柄の変動パターンの変動時間の方が大きい(長い)場合には、ステップS637に移行する。
ステップS630の処理によって、既に実行されている背景図柄(例えば、背景図柄Aとする。)の変動に対応した飾り図柄の停止図柄が大当り図柄に決定されている場合には、背景図柄Aの変動が継続されることになる。この場合、既に実行されている背景図柄Aの変動に対応した飾り図柄の変動終了時よりも、新たに受信した変動パターンコマンドが示す飾り図柄の変動終了時の方が遅い場合もある。この実施の形態では、そのような場合には、背景図柄Aの変動が終了すると、可変表示装置9において、大当り遊技に関連する演出が実行される。そして、大当り遊技が実行されている間、背景図柄Bの変動に対応した飾り図柄(この例では、第2飾り図柄)の変動が中断される。その後、大当り遊技が終了すると、背景図柄Bの変動に対応した飾り図柄(この例では、第2飾り図柄)の変動が再開される。しかし、例えば第2飾り図柄の変動が再開されても、第2飾り図柄の変動に対応する背景図柄Bの変動は再開されない。なお、そのような場合には、ステップS632の処理で差数カウンタが+1されるので、あらためてステップS915の判定にもとづいて背景図柄の変動が開始される。しかし、背景図柄Aの変動に対応した飾り図柄(この例では、第1飾り図柄)の停止図柄が大当り図柄であることに対応して実行される大当り遊技の終了後に、背景図柄Bの変動を再開するようにしてもよい。
ステップS637以降の処理では、新たに受信した変動パターンコマンドが示す飾り図柄の変動パターンの変動時間の方が長い場合には、背景図柄の変動を、新たに受信した変動パターンコマンドが示す飾り図柄の変動に対応する変動(背景図柄Bの変動)に切り替えるための制御を行う。具体的には、まず、背景図柄を仮停止し(ステップS637)、新たに受信した変動パターンコマンドが示す飾り図柄の変動パターンの変動時間を全体変動時間タイマに設定し(ステップS638)、合算保留記憶表示カウンタの値を−1する(ステップS639)。
そして、演出制御用CPU101は、差数カウンタの値を確認する(ステップS640)。差数カウンタの値が0でない場合には、全体変動時間タイマに値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含む背景図柄変動パターンを選択する(ステップS641)。差数カウンタの値が0である場合には、全体変動時間タイマに値に応じた変動時間を有する背景図柄変動パターンのうち、仮停止の態様を含まない背景図柄変動パターンを選択する(ステップS642)。ステップS642の処理で選択される背景図柄変動パターンは、No.1(通常変動の場合)、No.4*(変動時間が20秒の場合)、No.6*(変動パターンが30秒の場合)、またはNo.8*(変動時間が40秒の場合)である。ステップS641の処理で選択される背景図柄変動パターンは、No.9(通常変動の場合)、No.12*(変動時間が20秒の場合)、No.14*(変動パターンが30秒の場合)、またはNo.16*(変動時間が40秒の場合)である。なお、仮停止するときに合算保留記憶表示カウンタの値と差数カウンタの値とを1減算して、ダミー保留記憶を消化する。なお、差数カウンタの値が2以上である場合には、変動パターン中に複数回(例えば2回)の仮停止がなされる背景図柄変動パターンを用いる。その場合、変動時間が終了するまでに、合算保留記憶表示カウンタの値と差数カウンタの値とが複数減算される。また、この実施の形態では、切替ポイントを過ぎてから新たな変動パターンコマンドを受信すると直ちに背景図柄の変動を切り替えるか否か判定し、新たな変動パターンコマンドが示す変動時間の方が長いときには背景図柄の変動を切り替えるが、切替ポイントでのみ背景図柄の変動の切替が可能であるように制御してもよい。そのように制御することにより、背景図柄の切替をより自然に行うことができる。また、その場合には、切替ポイントを過ぎてから新たな変動パターンコマンドを受信したときには、変動中の背景図柄の変動が終了した後に差数カウンタの値が0でないことにもとづいて新たな変動パターンに対応する背景図柄の変動を開始するようにしてもよい。また、あらかじめ切替ポイントを複数設け、変動時間が長い背景図柄の変動が行われている場合には、新たな変動パターンコマンドを受信したときには、まだ経過していない切替ポイントのうちいずれかの切替ポイントで背景図柄を切り替えるようにしてもよい。
そして、使用する背景図柄の変動パターンに応じたプロセステーブルを選択する(ステップS643)。そして、選択したプロセステーブルにおけるプロセスデータ1のプロセスタイマ設定値をプロセスタイマに設定してプロセスタイマをスタートさせる(ステップS644)。次いで、演出制御用CPU101は、プロセスデータ1の内容(表示制御実行データ1、ランプ制御実行データ1、音番号データ1)に従って演出装置(可変表示装置9、各種ランプ、スピーカ27)の制御を実行する(ステップS645)。
ステップS632では、演出制御用CPU101は、差数カウンタの値を+1する。この実施の形態では、背景図柄の変動を背景図柄Bの変動に切り替えない場合(すなわち、ステップS631の判定で「全体変動時間タイマ」となった場合)には合算保留記憶数を−1せず、また第2保留記憶数は第2飾り図柄プロセス処理において−1されているので、実質的にダミー保留記憶が1増えるからである。
次いで、ステップS620で判定した新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄の変動の停止図柄が大当り図柄であるか否か判定する(ステップS633)。大当り図柄でない場合には処理を終了する。大当り図柄である場合には、その飾り図柄の変動終了時は背景図柄A(現在変動中の背景図柄すなわち全体変動時間タイマがタイムアウトしたときに停止される背景図柄)の変動終了時に対して所定時間以内であるか否か確認する(ステップS634)。所定時間以内であれば、背景図柄大当り表示フラグをセットし(ステップS635)、所定時間を越えていれば、背景図柄停止要求フラグをセットする(ステップS636)。なお、ステップS631の処理で全体変動時間タイマの方が長いと判定され、ステップS633の判定で「N」となった場合に、仮停止の態様を含む背景図柄変動パターンを選択するようにしてもよい。
なお、この実施の形態では、所定時間は、大当り表示の時間(図61に示す第1大当り図柄停止処理におけるステップS184で設定される第1大当り表示時間タイマの値に相当、第2大当り図柄停止処理については、ステップS184の処理に相当する処理で設定される第2大当り表示時間タイマの値に相当)である。すなわち、大当り図柄が導出表示されてから大当り遊技が開始されるまでの時間である。
図83〜図85は、演出制御用CPU101による背景図柄変動中(後半)処理による背景図柄の変動の例を示す説明図である。
そして、図83には、新たな変動パターンコマンドを受信したときに、背景図柄Aの変動時間の残り時間(第1特別図柄および第1飾り図柄の変動時間の残り時間と同じ)よりも、背景図柄B(上述したように新たな変動パターンコマンドの受信にもとづいて開始されたと仮定した場合の背景図柄の変動。切替ポイントの時点では背景図柄Bの変動はなされていない。また、その変動時間は第2特別図柄および第2飾り図柄の変動時間と同じ)の変動時間(第2特別図柄および第2飾り図柄の変動時間と同じ)の方が長い場合の例が示されている。
その場合には、演出制御用CPU101は、切替ポイントにおいて背景図柄Aの変動を継続し、新たな変動パターンコマンドを受信したときに合算保留記憶数を−1し、背景図柄変動パターンを選択し(図82におけるステップS641,S642参照)、背景図柄の変動を継続させる。なお、継続される背景図柄の変動は、第2特別図柄および第2飾り図柄の変動に対応したものである。
図84は、新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄(この例では、第2飾り図柄)の変動の停止図柄が大当り図柄であり、その飾り図柄の変動終了時は背景図柄Aの変動終了時に対して所定時間以内である場合を示す説明図である。なお、第2飾り図柄の停止図柄が大当り図柄である場合には、第2特別図柄の停止図柄も大当り図柄になる。
その場合には、演出制御用CPU101は、新たな変動パターンコマンドを受信しても背景図柄Aの変動を継続するように制御するが(図82におけるステップS631の判定結果が「全体変動時間タイマ」になったときには背景図柄変動パターンをあらためて選択することをしない)、ステップS635の処理で、背景図柄大当り表示フラグをセットする。そして、演出制御用CPU101は、背景図柄停止処理において、背景図柄大当り表示フラグがセットされている場合には、背景図柄の停止図柄を大当り図柄に変更する。なお、この実施の形態では、第1特別図柄および第1飾り図柄の表示結果(停止図柄)を大当り図柄にすると決定した後から、少なくとも表示結果が導出表示されるまでの特定期間において、表示結果を大当り図柄にする第2特別図柄および第2飾り図柄の変動は開始されない。また、第2特別図柄および第2飾り図柄の表示結果を大当り図柄にすると決定した後から、少なくとも表示結果が導出表示されるまでの特定期間において、表示結果を大当り図柄にする第1特別図柄および第1飾り図柄の変動は開始されない。従って、停止図柄を大当り図柄にする第1特別図柄および第1飾り図柄の変動と停止図柄を大当り図柄にする第2特別図柄および第2飾り図柄の変動とが同時に実行されることはなく、停止図柄を大当り図柄にする第2特別図柄および第2飾り図柄の変動が開始されたということは、第1特別図柄および第1飾り図柄の変動の停止図柄ははずれ図柄である。
図85は、ステップS620で判定した新たな変動パターンコマンド(この例では、第2変動パターンコマンド)が示す飾り図柄(この例では、第2飾り図柄)の変動の停止図柄が大当り図柄であり、その飾り図柄の変動終了時は背景図柄Aの変動終了時に対して所定時間を越える場合を示す説明図である。
その場合には、演出制御用CPU101は、背景図柄Aの変動を継続するように制御するが、ステップS636の処理で、背景図柄停止要求フラグをセットする。そして、演出制御用CPU101は、背景図柄変動中(後半)処理において、背景図柄停止要求フラグがセットされている場合には、第2飾り図柄の変動の終了停止時に背景図柄の変動を停止し、背景図柄の停止図柄を大当り図柄に変更する(図81におけるステップS615および図88におけるステップS652参照)。
図86および図87は、可変表示装置9における背景図柄表示部9cでの背景図柄の可変表示の一例を示す説明図である。なお、この実施の形態では、第1可変表示部9aと第2可変表示部9bとの2つの可変表示部において、飾り図柄の変動表示を並行して行うことが可能である。図86および図87において、(1)(2)(3)・・・というように番号順に表示状態が遷移する。なお、図86および図87において、飾り図柄および背景図柄としての矢印は、飾り図柄および背景図柄が変動中であることを示す。上述したように、図86および図87に例示するような表示演出は、演出制御用マイクロコンピュータ100によって、遊技制御用マイクロコンピュータ560から送られる演出制御コマンドにもとづいて実行される。
図86において、(1)の時点では、第1可変表示部9aと第2可変表示部9bの双方において第1飾り図柄および第2飾り図柄の変動表示が並行して実行されている。また、背景図柄表示部9cでは、第1飾り図柄と第2飾り図柄のうちのいずれかに対応した背景図柄の可変表示が行われている。(2)に示すように、第1可変表示部9aにおける第1飾り図柄の可変表示(変動)が第2可変表示部9bにおける第2飾り図柄の可変表示よりも先に終了して停止図柄(はずれ図柄)が導出表示されている。第1可変表示部9aにおいて第1飾り図柄の停止図柄が導出表示されると、第1飾り図柄の可変表示を開始できる状態であるので、CPU56は、次の可変表示についての大当り判定を行う(ステップS62)。大当り判定の結果が大当りであったとする。
その後、第2可変表示部9bにおける第2飾り図柄の可変表示が終了して停止図柄が導出され、新たな可変表示が開始される例が示されている((3),(4))。この実施の形態では、(4)の時点から開始される可変表示については強制はずれに決定される。なお、(8)の時点から開始される可変表示についても強制はずれに決定される。
また、(9)の時点で、第1可変表示部9aにおける第1飾り図柄の可変表示が終了し、第1可変表示部9aおよび背景図柄表示部9cにおいて大当り図柄が導出表示されている。そして、背景図柄表示部9cにおいて、大当りを報知するための表示がなされる((10)参照)。そのとき、第2可変表示部9bにおいて第2飾り図柄の可変表示が行われていた場合には、(9)に示すように第2可変表示部9bにおける第2飾り図柄の可変表示は中断される。そして、第2可変表示部9bにはずれ図柄が停止表示される(図68におけるステップS822,S823,S824(ただし、ステップS822,S823において「第2」を「第1」と読み替え、「第1」を「第2」と読み替える。)参照)。その後、第1大当り遊技が実行されていることが示されている((11)〜(12))。また、図87には、大当り遊技が終了すると、第2飾り図柄の可変表示が再開される例が示されている((13)参照、図68におけるステップS831,S832,S833(ただし、ステップS831,S832において「第2」を「第1」と読み替え、「第1」を「第2」と読み替える。)参照)。
図88は、背景図柄停止処理(ステップS905)を示すフローチャートである。背景図柄停止処理において、演出制御用CPU101は、背景図柄の大当り図柄が既に導出表示されているか否か確認する。既に導出表示されている場合には、ステップS653に移行する。背景図柄の大当り図柄が導出表示されていない場合には、背景図柄大当り表示フラグ(図75におけるステップS972、図82におけるステップS635参照)がセットされているか否か確認する(ステップS651)。背景図柄大当り表示フラグがセットされている場合には、背景図柄大当り表示フラグをリセットし(ステップS651B)、背景図柄表示部9cに大当り図柄を導出表示する(ステップS652)。なお、ステップS652では、演出制御用CPU101は、背景図柄の変動の切替が行われなかった場合には、ステップS920で決定された停止図柄を導出表示するが、背景図柄の変動切替が行われた場合には、ステップS920で決定された停止図柄ではなく、切替後の背景図柄の変動に対応した飾り図柄の変動の結果(はずれ図柄、通常大当り図柄または確変大当り図柄)に応じた背景図柄の停止図柄を導出表示するように制御する。背景図柄の変動切替が行われた場合に切替後の背景図柄の変動に対応した飾り図柄の変動の結果が大当り図柄である場合には、ステップS920では、背景図柄の停止図柄としてはずれ図柄が決定されている。この実施の形態では、表示結果が大当り図柄になる第1特別図柄および第1飾り図柄の変動と、表示結果が大当り図柄になる第2特別図柄および第2飾り図柄の変動とが同時に実行されないように制御されるからである。よって、背景図柄の変動切替が行われた場合に切替後の背景図柄の変動に対応した飾り図柄の変動の結果が大当り図柄である場合には、ステップS920で決定された背景図柄の停止図柄(はずれ図柄)が、大当り図柄に差し替えられて導出表示されることになる。また、ステップS920で決定された背景図柄の停止図柄(はずれ図柄)が、大当り図柄に差し替えられて導出表示されることになるのは、背景図柄の変動の切替は行われなかったが、背景図柄大当り表示フラグがセットされる場合(ステップS972,S635参照)も同様である。
背景図柄大当り表示フラグがセットされていない場合には、演出制御用CPU101は、変動を行っていた背景図柄の停止図柄を大当り図柄とするか否か判定する(ステップS655)。例えば、第1飾り図柄の変動に対応して背景図柄の変動を行っていた場合、第1飾り図柄の停止図柄が大当り図柄であるときには、背景図柄の停止図柄も大当り図柄である。背景図柄の停止図柄を大当り図柄とする場合には、ステップS652に移行する。背景図柄の停止図柄を大当り図柄としない場合には、背景図柄表示部9cにはずれ図柄を導出表示し(ステップS656)、背景図柄プロセスフラグを、背景図柄変動開始待ち処理(ステップS900)に応じた値に更新する(ステップS657)。
ステップS653では、大当り開始指定コマンド(第1特別図柄および第1飾り図柄に対応した背景図柄の変動の結果大当り図柄を導出表示した場合には第1大当り指定コマンド、第2特別図柄および第2飾り図柄に対応した背景図柄の変動の結果大当り図柄を導出表示した場合には第2大当り指定コマンド)を受信したか否か確認し、受信している場合には、背景図柄プロセスフラグを、大当り表示処理(ステップS906)に応じた値に更新する(ステップS654)。なお、特定時間(例えば、第2特別図柄表示器8bに大当り図柄が導出表示されてから大当り遊技状態が開始されるまでの時間)はあらかじめ決められているが、第1特別図柄および第1飾り図柄に対応した背景図柄の変動が停止する時点と大当り遊技状態が開始される時点とが接近している場合には、背景図柄の大当り図柄が停止表示されている期間(ステップS652参照)が短くなる。その場合には、強制的に大当り図柄が停止表示されている期間を長くする(例えば0.5秒以上にする。その分、ステップS907の大当り遊技中処理が実行される時間を短くする。)ことが好ましい。そのような制御を実現するには、演出制御用CPU101は、例えば、背景図柄停止処理が実行開始されるときに0.5秒を計測するタイマを設定し、タイマがタイムアウトする前に大当り開始指定コマンド(または、第1ラウンドについての大入賞口開放時表示コマンド)を受信したら、大当り図柄が停止表示されている期間を長くすればよい。なお、特定時間を、第2特別図柄表示器8bに大当り図柄が導出表示されてから大当り遊技状態が開始されるまでの時間よりも短くしてもよい。そのようにしたときには、例えばステップ971の処理において「N」と判定される場合が多くなるが、「Y」と判定された場合には、大当り図柄を停止表示している時間が、特定時間を短縮した分だけ長くなる。
以上に説明したように、この実施の形態では、演出制御用CPU101が、第1特別図柄表示器8aにおける第1特別図柄の可変表示および第1可変表示部9aにおける第1飾り図柄の可変表示に対応した背景図柄表示部9cにおける表示演出を開始した後に、第2特別図柄表示器8bにおける第2特別図柄の可変表示および第2可変表示部9bにおける第2飾り図柄の可変表示が開始され、かつ、第2特別図柄表示器8bおよび第2可変表示部9bに表示結果として大当り図柄を導出表示する時点から所定時間内に背景図柄表示部9cにおける表示演出を終了する場合には、背景図柄の変動時間が経過したときに背景図柄表示部9cに大当り図柄を導出表示する。よって、第2特別図柄表示器8bおよび第2可変表示部9bにおける可変表示に関する報知が遊技者に対して全くなされないうちに突然に大当り遊技が開始されるようなことが防止され、遊技者に不審感を与えないようにすることができる。
また、第1特別図柄表示器8aにおける第1特別図柄の可変表示および第1可変表示部9aにおける第1飾り図柄の可変表示に対応した背景図柄表示部9cにおける表示演出を開始した後に、第2特別図柄表示器8bにおける第2特別図柄の可変表示および第2可変表示部9bにおける第2飾り図柄の可変表示が開始され、かつ、第2特別図柄表示器8bおよび第2可変表示部9bに表示結果として大当り図柄を導出表示する時点から所定時間を越えた後に背景図柄表示部9cにおける表示演出を終了する場合には、第2特別図柄表示器8bおよび第2可変表示部9bに大当り図柄が導出表示される時点で、背景図柄表示部9cに大当り図柄を導出表示する。よって、第2特別図柄表示器8bおよび第2可変表示部9bにおける可変表示に関する報知が遊技者に対して全くなされないうちに突然に大当り遊技が開始されるようなことが防止され、遊技者に不審感を与えないようにすることができる。
実施の形態2.
上記の実施の形態では、特別図柄保留記憶表示部18cに8つの表示領域があり、合算保留記憶数の上限値は所定値(上記の実施の形態では8)に固定されていたが、合算保留記憶数の上限値を遊技状態によって変更するようにしてもよい。図89は、合算保留記憶数の上限値が変更される場合の特別図柄保留記憶表示部18cの表示例を示す説明図である。なお、この実施の形態では、特別図柄保留記憶表示部18cは上限数である8つの表示領域で構成され、それぞれの表示領域が点灯状態または消灯状態のように表示されることによって合算保留記憶数を表示しているが、特別図柄保留記憶表示部18cの構成はそのような構成に限られず、例えば、数字で合算保留記憶数を表示するように構成してもよい。また、合算保留記憶数を表示する特別図柄保留記憶表示部18cを、LCDの可変表示装置9以外に設けてもよい。
この実施の形態では、確変状態では、図89(A)に示すように、合算保留記憶数の上限値を8にして、特別図柄保留記憶表示部18cに8つの表示領域を表示する。すなわち、第1の実施の形態と同様の制御を行う。しかし、通常状態(時短状態を含む)では、図89(B)に示すように、合算保留記憶数の上限値を4にして、特別図柄保留記憶表示部18cに4つの表示領域を表示する。
上述したように、確変状態では、普通図柄表示器10において、停止図柄が当り図柄になる確率が通常状態より高められるとともに、可変入賞球装置15における開放時間と開放回数とのうちの一方または双方が通常状態よりも高められ、遊技者にとってさらに有利な状態になる。すなわち、確変状態では、第2始動入賞口14に遊技球が入賞する可能性が高くなる。そこで、確変状態では、合算保留記憶数の上限値を多くする。そのような制御を実行することによって、遊技者に合計数が増えたかのように感じさせることができ、遊技の興趣を向上させることができる。
そのような制御を実現するには、演出制御用マイクロコンピュータ100は、遊技制御用マイクロコンピュータ560から確変状態指定コマンドを受信して遊技状態が確変状態であることを確認した後には、合算保留記憶数の上限値を例えば8にする。また、電力供給開始時から最初に確変状態指定コマンドを受信するまで、および時短状態指定コマンドを受信した後には、すなわち通常状態(時短状態を含む)では、合算保留記憶数の上限値を例えば4にする。従って、通常状態では、例えば図69に示すステップS854,S860,S863の判定を、合算保留記憶表示カウンタの値が4以上であるか否かの判定に変更する。よって、演出制御用マイクロコンピュータ100において遊技状態が通常状態(時短状態を含む)に移行したか否か判定し、移行したときには合算保留記憶数の上限値を例えば4にする部分が、特別遊技状態では、少なくとも第2始動入賞装置が成立させる方の実行条件を計数する計数手段の上限数を通常状態よりも増加させる上限数設定手段に相当する。
なお、この実施の形態では、普通図柄表示器10において停止図柄が当り図柄になる確率が通常状態より高められるとともに、可変入賞球装置15における開放時間と開放回数とのうちの一方または双方が通常状態よりも高められる遊技状態(すなわち、この実施の形態での確変状態)において合算保留記憶数の上限値を増やすが、普通図柄表示器10において停止図柄が当り図柄になる確率が通常状態より高められている状態のみが生ずるように制御して、そのような状態において合算保留記憶数の上限値を増やすようにしてもよい。また、可変入賞球装置15における開放時間と開放回数とのうちの一方または双方が通常状態よりも高められている状態のみが生ずるように制御して、そのような状態において合算保留記憶数の上限値を増やすようにしてもよい。さらに、遊技者にとって有利になっているその他の遊技状態(例えば、時短状態、時短状態かつ普通図柄表示器10において停止図柄が当り図柄になる確率が通常状態より高められている状態、時短状態かつ可変入賞球装置15における開放時間と開放回数とのうちの一方または双方が通常状態よりも高められている状態)が生ずるように制御して、そのような状態において合算保留記憶数の上限値を増やすようにしてもよい。
合算保留記憶数の上限値を変更するように制御する場合でも、第1始動入賞口13への有効始動入賞数に相当する第1保留記憶数および第2始動入賞口14への有効始動入賞数に相当する第2保留記憶数の上限値は、それぞれ4である。しかし、合算保留記憶数の上限値が4になっているときには、すなわち確変状態でないときには、第2始動入賞口14に遊技球が入賞する可能性は低いので(第2保留記憶数はさほど増えないので)、合算保留記憶数の上限値を4にしても、合算保留記憶数は、ほぼ第1保留記憶数に一致する。ただし、第2保留記憶数が1以上になることもあるが、その場合には、第1保留記憶数が上限値に達していないことを条件として第2保留記憶に対応した背景図柄の可変表示を実行する。しかし、第1保留記憶数と第2保留記憶数との合計(真の合計)が4を越えている場合には、背景図柄の可変表示を実行しない。
なお、第2の実施の形態において、主基板31その他の基板のハードウェア構成は、第1の実施の形態におけるハードウェア構成と同じである。
また、この実施の形態では、確変状態では合算保留記憶数の上限値を例えば8にするが、確変状態では少なくとも第2保留記憶数の上限値を増加させるようにしてもよい。さらに、この実施の形態では、第1始動入賞口13が可変表示の第1の実行条件(第1始動条件)を成立させ、第2始動入賞口14が可変表示の第2の実行条件(第2始動条件)を成立させるが、第1始動入賞口13が可変表示の第2の実行条件(第2始動条件)を成立させ、第2始動入賞口14が可変表示の第1の実行条件(第1始動条件)を成立させるように構成してもよい。
実施の形態3.
上記の実施の形態では背景図柄を図柄(具体的には数字)にし、背景図柄による表示演出として図柄の変動を示したが、背景図柄による表示演出は、図柄やキャラクタの変動に限定されない。例えば、可変表示装置9において、キャラクタが動作するような表示演出を行うことによって、背景図柄による表示演出を実現してもよい。
図90および図91は、可変表示装置9において、キャラクタが動作するような表示演出の一例を示す説明図である。なお、図90および図91には、第1飾り図柄および第2飾り図柄としてそれぞれ左中右の3つの図柄が可変表示される例が示されている。
図90および図91に示す例では、演出制御用CPU101は、背景図柄表示部9cに、格闘技の選手のような2つのキャラクタが格闘を行う表示がなされるように制御する(図90(A)から(D)参照)。そして、リーチ演出として一方の選手が他方の選手を押さえ込んだような表示演出を行う(図91(E)参照)。さらに、飾り図柄として大当り図柄が導出表示されるときに、一方の選手が他方の選手を所定時間押さえ込んで勝利したかのような表示演出を行う(図91(F)参照)。また、飾り図柄としてはずれ図柄が導出表示されるときに、例えば、一方の選手が他方の選手に投げられたかのような表示演出を行う(図90(D)参照)。
この実施の形態では、例えば、図36に示すNo.1の背景図柄変動パターンが、図90(A)に示す表示演出に対応する。図90(A)に示す表示演出はキャラクタが対峙しているだけなので、第1の実施の形態の場合と同様に変動時間を変更(延長または短縮)しても違和感を感じさせない。図90(B),(C)は、図90(A)に示す表示演出から、はずれ図柄を停止表示するまでの表示演出である。図91(H)に示す一方の選手が直ちに勝利したかのような表示演出は、図90(A),(B),(C)に示す表示演出から、大当り図柄を停止表示するまでの表示演出である。また、一方の特別図柄に対応したリーチ演出中に他方の特別図柄として大当り図柄が導出表示される場合などには、他方の選手がギブアップしたかのような表示演出を行ってもよい(図91(G)参照)。
このような表示演出を行っても、飾り図柄の変動に対応した背景図柄による表示演出を実現することができる。
なお、第3の実施の形態において、主基板31その他の基板のハードウェア構成は、第1の実施の形態におけるハードウェア構成と同じである。
また、上記の各実施の形態では、大当りの判定をスキップすることによって(図56におけるステップS60参照)、第2特別図柄表示器8bで表示結果が大当り図柄になる第2特別図柄の可変表示が実行されているときには第1特別図柄表示器8aでの第1特別図柄の可変表示の表示結果を大当り図柄にしないように制御したが、第1特別図柄表示器8aの第1特別図柄の可変表示の表示結果を大当り図柄にしないようにするための手段は、そのようなものに限られない。例えば、CPU56は、特別図柄の変動開始時に大当りとするか否かの判定を常に行い、第2大当りフラグがセットされ、かつ、第2特別図柄が大当り変動(停止図柄を大当り図柄とする変動)中であるときには、判定結果が大当りである場合には判定結果をはずれに変更するようにしてもよい。また、CPU56は、第2大当りフラグがセットされ、かつ、第2特別図柄が変動中であるときには、大当り判定の処理を実行する前に、乱数バッファに格納されている大当り判定用乱数の値をはずれに相当する値に変更するようにしてもよい。
また、上記の各実施の形態では、時短状態は、確変状態の終了後にのみ移行されるように構成されているが、そのような構成に限られず、例えば大当り図柄のうち時短状態になる大当り図柄(時短図柄)を定め、時短状態になる大当り図柄で大当りとなった後に時短状態に制御されるように構成されていてもよい。そのように構成されている場合には、時間状態が、通常遊技状態よりも高い割合で第1事前決定手段および第2事前決定手段により特定表示結果とする旨が決定される特別遊技状態に相当する。また、大当り図柄の全てを時短図柄(すなわち、「1」「2」「5」「7」「9」の全ての図柄を時短図柄)にしてもよい。さらに、確変図柄と時短図柄とは区別されていても重複していてもよい。確変図柄と時短図柄とが重複しているときは、そのような図柄で大当りとなると、確変状態でかつ時短状態に制御されることになる。
また、上記の各実施の形態では、確変フラグや時短フラグがセットされる時点および確変フラグや時短フラグがリセットされる時点は、特別図柄の停止図柄が導出表示されたときや大当り遊技の終了時であったが、特別図柄の変動開始指示に、確変フラグや時短フラグのセット/リセットを行うようにしてもよい。特別遊技状態(確変状態または時短状態)への移行条件が成立した場合に、特別図柄の変動開始時に、確変フラグや時短フラグのセット/リセットを行わない場合(例えば、特別図柄の可変表示が終了してから確変フラグや時短フラグのセット/リセットを行う場合)には、遊技者に与えられる利益が異なってしまう可能性がある。例えば、確変状態または時短状態において確変状態の終了条件または時短状態の終了条件が成立することになる第1特別図柄の変動(可変表示)が開始された直後に、第2特別図柄の変動の開始条件が成立したときには、特別図柄の変動が終了してから確変フラグまたは時短フラグがリセットされるように構成した場合には、第2特別図柄の変動が開始されるときには、遊技状態は確変状態または時短状態であり変動時間が確変状態または時短状態において選択されうる時間になる(確変状態については、特に、通常状態において選択されうる変動時間と異なるようにした場合)。一方、第1特別図柄の変動が開始されてから変動が終了するまで第2特別図柄の変動の開始条件が成立しない場合には、確変状態または時短状態において第2特別図柄の変動は開始されない。すなわち、第2特別図柄の変動の開始条件が成立する場合としない場合とで、確変状態または時短状態における変動の回数が異なってくる(特に、確変状態または時短状態における変動可能回数が設定されている場合)。ところが、特別図柄の変動を開始するときに確変フラグまたは時短フラグをリセットすれば、そのような異なりは生じない。
また、上記の各実施の形態では、第1飾り図柄および第1特別図柄の変動中であって、かつ、第2特別図柄の停止図柄が大当り図柄であったことにもとづく第2大当り遊技の実行中であるときに、演出制御用マイクロコンピュータ100に対して第1中断指定コマンドを送信して、第1飾り図柄の変動時間の計測を中断したが、他の時点においても、第1飾り図柄の変動時間の計測を中断するようにしてもよい。例えば、いわゆるパンク抽選(確変状態において、確変状態を終了させるか否かを抽選によって決定するように構成された場合のその抽選)によって確変状態を終了させることに決定されたときに、その旨を遊技者に報知するために、演出制御用マイクロコンピュータ100に対して第1中断指定コマンドを送信して、第1飾り図柄の変動時間の計測を中断させるようにしてもよい。
また、第1可変表示実行手段は、第1の可変表示部において識別情報の可変表示が実行される可変表示時間を計測する計測手段と、第2の可変表示部において特定表示結果が導出表示されているときに計測手段の計測を中断させる計測中断手段とを含むので、第2の可変表示部において特定表示結果が導出表示されるまでは第1の可変表示部における可変表示を継続でき、第2の可変表示部に特定表示結果が導出表示されることが決定されたときに第1の可変表示部における可変表示を中断する場合に比べて、早めに第1の可変表示部における可変表示を終了させることができる。よって、可変表示の終了までの時間を長引かせて遊技者に不利益を与えることを防止できる。