以下、本発明の一実施形態を図面を参照して説明する。まず、遊技機の一例である第1種パチンコ遊技機の全体の構成について説明する。図1は遊技盤の前面を示す正面図である。パチンコ遊技機には、遊技盤6が着脱可能に取り付けられている。遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には遊技領域7が形成されている。
遊技領域7の中央付近には、それぞれが識別情報としての特別図柄の可変表示(「特別図柄の変動」と同義)を行う複数の可変表示部を含む可変表示装置9が設けられている。可変表示装置9には、例えば「左」、「中」、「右」の3つの可変表示部(図柄表示エリア)がある。なお、可変表示部は固定的な領域であってもよいが、遊技進行中に、可変表示装置9の表示領域において移動したり大きさが変化してもよい。以下、本実施形態では、可変表示装置9がLCD(Liquid Crystal Display)上に画像を表示させる可変表示装置である場合を例に説明する。
可変表示装置9のLCDには、可変表示回数表示領域19が設けられる。確変状態および時短状態は、それぞれ、定められた回数の特別図柄の可変表示が終了するまで継続する。本実施形態では、可変表示回数表示領域19は、確変状態のときに、確変状態が終了するまでの残りの可変表示の回数を表示し、時短状態のときに、時短状態が終了するまでの残りの可変表示の回数を表示するものとする。なお、確変状態でも時短状態でもない場合、可変表示回数表示領域19には何も表示しない。図1に示す例では、確変状態(または時短状態)が終了するまでの残りの可変表示の回数が2回であることを示している。また、例えば、確変状態のときには特別図柄の背景となる領域の画像として確変状態に対応する画像を表示し、時短状態のときには特別図柄の背景となる領域の画像として時短状態に対応する画像を表示する。このように確変状態や時短状態に応じた画像を表示することで、確変状態中であること、あるいは時短状態中であることを遊技者に認識させる。
可変表示回数表示領域19は、図柄表示エリアとは区分けされて設けられているので、可変表示中も可変表示回数表示領域19に回数を表示することができる。また、この実施の形態では、可変表示回数表示領域19を可変表示装置9に設けるようにしているが、確変状態や時短状態が終了するまでの残りの可変表示の回数を表示する表示器を可変表示装置9とは別個に設けるようにしてもよい。
また、確変状態や時短状態が終了するまでの可変表示の回数が残っていても、大当りが発生した場合には、確変状態、時短状態は終了する。なお、確変状態は、大当りが発生する確率が高くなる第1の有利状態である。確変状態では、普通図柄表示器10(後述する。)における停止図柄が当り図柄になる確率が通常状態に比べて高められるようにしてもよい。また、可変入賞球装置15(後述する。)の開放時間と開放回数とのうちの一方または双方が通常状態に比べて高められるようにしてもよい。また、確変状態では、普通図柄表示器10における可変表示期間(変動時間ともいう。)が通常状態に比べて短縮されることによって、遊技者にとってさらに有利になるようにしてもよい。時短状態は、大当り遊技状態に移行する可能性が高まる第2の有利状態である。具体的には、特別図柄の変動時間(可変表示期間)が、時短状態でない場合に比べて短縮される状態である。既に説明したように、変動時間が短縮されることにより、保留記憶の消化が速くなり、大当り遊技状態に移行する可能性が高まる。また、通常状態とは、有利状態とは異なる遊技状態であり、具体的には、確変状態、時短状態および大当り遊技状態以外の遊技状態である。大当り遊技状態では、可変入賞球装置としての大入賞口が開放可能な状態になり、確変状態では、可変入賞球装置15の開放時間と開放回数とのうちの一方または双方が通常状態に比べて高められるのであるが、時短状態においても、可変入賞球装置15の開放時間と開放回数とのうちの一方または双方が通常状態に比べて高められるようにしたり、普通図柄表示器10における変動時間が短縮されるようにしてもよい。また、確変状態において、可変入賞球装置15の開放時間や開放回数の延長、および普通図柄表示器10における変動時間の短縮はなされない(すなわち、特別図柄の当りの確率が高くなるだけで、可変入賞球装置15に関する有利/不利に関しては通常状態と同じ)ようにしてもよい。
また、可変表示装置9には、始動入賞口14に入った有効入賞球数のうち未だ特別図柄の可変表示の開始に使われていない始動入賞記憶(保留記憶ともいう。)数を表示する4つの特別図柄保留記憶表示エリア(保留記憶表示エリア)18が設けられている。有効始動入賞(始動入賞記憶数が4未満のときの始動入賞)がある毎に、表示色を変化させる(例えば青色表示から黄色表示に変化させる)保留記憶表示エリア18が1増える。なお、変化前の状態は、無色や透明であってもよい。そして、可変表示装置9の可変表示が開始される毎に、表示色が変化している保留記憶表示エリア18を1減らす(すなわち表示色を元に戻す)。
可変表示装置9の下方には、始動入賞口14としての可変入賞球装置15が設けられている。始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ14aによって検出される。可変入賞球装置15は、開閉動作を行う。ソレノイド16は、可変入賞球装置15を開状態にさせる。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。開閉板20は大入賞口を開閉する手段である。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(V入賞領域)に入った入賞球はV入賞スイッチ22で検出され、開閉板20からの入賞球はカウントスイッチ23で検出される。遊技盤6の背面には、大入賞口内の経路を切り換えるためのソレノイド21Aも設けられている。
ゲート32に遊技球が入賞しゲートスイッチ32aで検出されると、普通図柄保留記憶が上限に達していなければ、所定の乱数値が抽出される。そして、普通図柄表示器10において表示状態が変化する可変表示を開始できる状態であれば、普通図柄表示器10の表示の可変表示が開始される。普通図柄表示器10において表示状態が変化する可変表示を開始できる状態でなければ、普通図柄保留記憶の値が1増やされる。普通図柄表示器10の近傍には、普通図柄保留記憶数を表示する4つのLEDによる表示部を有する普通図柄保留記憶表示器41が設けられている。ゲート32への入賞がある毎に、普通図柄保留記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。
この実施の形態では、左右のランプ(点灯時に図柄が視認可能になる)が交互に点灯することによって普通図柄の可変表示が行われ、可変表示は所定時間(例えば29.2秒)継続する。そして、可変表示の終了時に左側のランプが点灯すれば当りとなる。当りとするか否かは、ゲート32に遊技球が入賞したときに抽出された乱数の値が所定の当り判定値と一致したか否かによって決定される。普通図柄表示器10における可変表示の表示結果が当りである場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になって遊技球が入賞しやすい状態になる。すなわち、可変入賞球装置15の状態は、普通図柄の停止図柄が当り図柄である場合に、遊技者にとって不利な状態から有利な状態に変化する。
遊技盤6には、複数の入賞口29,30,33,39が設けられ、遊技球の入賞口29,30,33,39への入賞は、それぞれ入賞口スイッチ29a,30a,33a,39aによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される飾りランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音や音声を発する2つのスピーカ(図示せず。)が設けられている。
打球発射装置(図示せず。)から発射された遊技球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が始動入賞口14に入り始動口スイッチ14aで検出されると、図柄の可変表示を開始できる状態であれば、可変表示装置9において特別図柄が可変表示(変動)を始める。図柄の可変表示を開始できる状態でなければ、保留記憶数を1増やす。
可変表示装置9における特別図柄の可変表示は、定められた時間が経過したときに停止する。停止時の特別図柄の組み合わせが大当り図柄(特定表示態様)であると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球がV入賞領域に入賞しV入賞スイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
停止時の可変表示装置9における特別図柄の組み合わせが大当り図柄(特定の表示結果)のうちの特別の大当り図柄(特別の表示結果)である場合には、大当り遊技状態の後、確変状態や時短状態に移行し、遊技者にとって有利な状態となる。特別の大当り図柄(特別の表示結果)とは、大当り遊技状態の後、確変状態または時短状態に移行させる大当り図柄である。可変表示の結果、「左」、「中」、「右」の図柄が、例えば奇数で揃った状態を、特別の大当り図柄とすればよい。特別の大当り図柄のうちのある図柄(例えば、「1」、「3」、「5」または「7」で揃った図柄)となった場合(以下、この場合を、第1の移行条件が成立した場合とする。)には、確変状態のときに実行される可変表示の回数が定められる。この結果、大当り遊技状態の後、確変状態に移行する。同様に、特別の大当り図柄のうちのある図柄(例えば、「3」、「5」、「7」または「9」で揃った図柄)となった場合(以下、この場合を、第2の移行条件が成立した場合とする。)には、時短状態のときに実行される可変表示の回数が定められる。この結果、大当り遊技状態または確変状態の後、時短状態に移行する。なお、ここで示した第1の移行条件や第2の移行条件が成立する場合の図柄は例示であり、上記の例に限定されない。
図2は、遊技機の裏面に設置されている基本回路53と、演出制御基板80と、電源基板910とを示すブロック図である。
基本回路53は、プログラムに従ってパチンコ遊技機を制御する。なお、基本回路53は、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、クリアスイッチ(図示せず。)等からの信号を受信する。クリアスイッチは、例えば、電源基板910に搭載されている。
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段(変動データを記憶する手段)としてのRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。なお、CPU56はROM54に格納されているプログラムに従って制御を実行するので、以下、CPU56が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、基本回路53以外の他の基板に搭載されているCPUについても同様である。
また、RAM55は、その一部または全部がバックアップ電源によってバックアップされている不揮発性記憶手段としてのバックアップRAMである。すなわち、遊技機に対する電力供給が停止しても、所定期間(バックアップ電源が電力供給不能になるまで)は、RAM55の一部または全部の内容は保存される。特に、少なくとも、遊技状態すなわち遊技制御手段の制御状態に応じたデータ(特別図柄プロセスフラグ等)と未払出賞球数を示すデータは、バックアップRAMに保存される。また、確変状態が終了するまでの残りの可変表示の回数(後述する確変変動回数カウンタ71)と時短状態が終了するまでの残りの可変表示の回数(後述する時短変動回数カウンタ72)も、バックアップRAMに保存される。なお、遊技制御手段の制御状態に応じたデータとは、停電等が生じた後に復旧した場合に、そのデータにもとづいて、制御状態を停電等の発生前に復旧させるために必要なデータである。
電源基板910は、遊技機に電圧を供給する電源(図示せず。)から電圧を供給される。そして、遊技機の各部(基本回路53等)が使用する電圧を生成し、各部に出力する。また、電源基板910には、遊技機に供給される電源の電圧の低下を検出する電圧低下監視回路902が搭載される。電圧低下監視回路902は、遊技機に供給される電源の電圧の低下を検出した場合、その旨を示す電源断信号を出力する。CPU56は、電源断信号が出力されたことを検出したならば、バックアップRAM領域のデータ(確変状態や時短状態が終了するまでの残りの可変表示の回数等の必要なデータ)のデータ保護処理を実行する。なお、遊技機に電圧を供給する電源のほかに、バックアップRAMのためのバックアップ電源(図示せず。)が設けられている。
演出制御基板80には、演出制御用CPU101と、ROM102と、RAM103とを含むマイクロコンピュータが搭載されている。RAM103は、基本回路53におけるRAM55とは異なり、バックアップRAMではない。従って、演出制御基板80に設けられるRAM103は、簡素な構成にすることができる。さらに、バックアップ用の電源を供給する必要がなく、回路構成も簡略化でき、コストの削減ができる。また、演出制御基板80には、VDP(ビデオディスプレイプロセッサ)106も搭載されている。VDP106は、LCDを用いた可変表示装置9の表示制御を行う。VDP106は、GCL(グラフィックコントローラLSI)と呼ばれることもある。演出制御用CPU101は、RAM103を適宜用いて、ROM102に格納されたプログラムに従って動作する。また、RAM103には、確変状態が終了するまでの残りの可変表示の回数(後述する残確変時回転数73)と時短状態が終了するまでの残りの可変表示の回数(後述する残時短時回転数74)も保存される。演出制御用CPU101は、基本回路53から演出制御コマンドを受信した場合、受信した演出制御コマンドにもとづいて、VDP106に可変表示装置9の表示制御を行わせる。なお、演出制御用CPU101は、基本回路53からのストローブ信号(演出制御INT信号)に応じて、演出制御コマンドを受信する。
また、演出制御用CPU101は、演出制御コマンドを受信すると、その演出制御コマンドに応じたランプ制御コマンドをランプ制御基板(図示せず。)に送信する。ランプ制御基板に搭載されているランプ制御用CPUを含むランプ制御手段は、ランプ制御コマンドに応じて、普通図柄表示器10、普通図柄保留記憶表示器41および遊技機に設けられた各種ランプの表示制御を行う。
次に遊技機の動作について説明する。図3は、基本回路53における遊技制御手段(CPU56およびROM,RAM等の周辺回路)が実行するメイン処理を示すフローチャートである。遊技機に対して電源が投入され、リセット信号が入力されるリセット端子の入力レベルがハイレベルになると、CPU56は、プログラムの内容が正当か否かを確認するための処理であるセキュリティチェック処理を実行した後、ステップS1以降のメイン処理を開始する。メイン処理において、CPU56は、まず、必要な初期設定を行う。
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。なお、割込みモード2は、遊技制御用マイクロコンピュータ56が内蔵する特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込みベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込み番地を示すモードである。
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチの出力信号の状態を1回だけ確認する(ステップS7)。その確認においてオンを検出した場合には、CPU56は、通常の初期化処理を実行する(ステップS11〜ステップS14)。
クリアスイッチがオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS8)。そのような保護処理が行われていないことを確認したら、CPU56は初期化処理を実行する。バックアップRAM領域にバックアップデータがあるか否かは、例えば、電力供給停止時処理においてバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS9)。ステップS9では、算出したチェックサムと、電力供給停止時処理で同一の処理によって算出され保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理を行う(ステップS10)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。
なお、この実施の形態では、バックアップフラグとチェックデータとの双方を用いてバックアップRAM領域のデータが保存されているか否かを確認しているが、いずれか一方のみを用いてもよい。すなわち、バックアップフラグとチェックデータとのいずれかを、状態復旧処理を実行するための契機としてもよい。
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS11)。また、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、特別図柄プロセスフラグ、払出コマンド格納ポインタ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグ)に初期値を設定する作業領域設定処理を行う(ステップS12)。さらに、サブ基板(この実施の形態では演出制御基板80など)を初期化するための初期化コマンドを各サブ基板に送信する処理を実行する(ステップS13)。初期化コマンドとして、可変表示装置9に表示される初期図柄を示すコマンド(演出制御基板80に対して)や賞球ランプ(賞球残数があるときに点灯するランプ。図示せず。)および球切れランプ(補給球が切れたときに点灯するランプ。図示せず。)の消灯を指示するコマンド等がある。
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS14)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
初期化処理の実行(ステップS11〜S14)が完了すると、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)が繰り返し実行される。表示用乱数更新処理および初期値用乱数更新処理が実行されるときには割込禁止状態とされ(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態とされる(ステップS19)。表示用乱数とは、可変表示装置9に表示される図柄を決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。初期値用乱数とは、大当りとするか否かを決定するための乱数を発生するためのカウンタ(大当り判定用乱数発生カウンタ)等の、カウント値の初期値を決定するための乱数である。後述する遊技の進行を制御する遊技制御処理(遊技制御用マイクロコンピュータが、遊技機に設けられている可変表示装置9、可変入賞球装置、球払出装置等の遊技用の装置を、自身で制御する処理、または他のマイクロコンピュータに制御させるために指令信号を送信する処理、遊技装置制御処理ともいう)において、大当り決定用乱数発生カウンタのカウント値が1周すると、そのカウンタに初期値が設定される。
なお、表示用乱数更新処理が実行されるときには割込禁止状態とされるのは、表示用乱数更新処理が後述するタイマ割込処理でも実行されることから、タイマ割込処理における処理と競合してしまうのを避けるためである。すなわち、ステップS17の処理中にタイマ割込が発生してタイマ割込処理中で表示用乱数を発生するためのカウンタのカウント値を更新してしまったのでは、カウント値の連続性が損なわれる場合がある。しかし、ステップS17の処理中では割込禁止状態にしておけば、そのような不都合が生ずることはない。
図4は、遊技状態復旧処理(ステップS10)を示すフローチャートである。遊技状態復旧処理において、CPU56は、ROM54に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し(ステップS91)、バックアップ時設定テーブルの内容を順次作業領域(RAM55内の領域)に設定する(ステップS92)。作業領域はバックアップ電源によって電源バックアップされている。バックアップ時設定テーブルには、作業領域のうち初期化してもよい領域についての初期化データが設定されている。ステップS91およびS92の処理によって、作業領域のうち初期化してはならない部分については、保存されていた内容がそのまま残る。初期化してはならない部分とは、例えば、電力供給停止前の遊技状態を示すデータ(特別図柄プロセスフラグなど)、未払出賞球数を示すデータ、確変変動回数カウンタ71のカウント値、時短変動回数カウンタ72のカウント値などが設定されている部分である。確変変動回数カウンタ71は、確変状態での識別情報の可変表示の回数を特定可能なカウンタである。このような確変変動回数カウンタ71の態様として、確変状態が終了するまでの残りの可変表示の回数を示すカウンタや、確変状態に移行してからの可変表示の実行回数を示すカウンタなどが挙げられる。本実施形態では、確変変動回数カウンタ71は、確変状態が終了するまでの残りの可変表示の回数を示すカウンタであるものとする。また、時短変動回数カウンタ72は、時短状態での識別情報の可変表示の回数を特定可能なカウンタである。このような時短変動回数カウンタ72の態様として、時短状態が終了するまでの残りの可変表示の回数を示すカウンタや、時短状態に移行してからの可変表示の実行回数を示すカウンタなどが挙げられる。本実施の形態では、時短変動回数カウンタ72は、時短状態が終了するまでの残りの可変表示の回数を示すカウンタであるものとする。従って、確変状態や時短状態が終了するまでの残りの可変表示の回数は、電源断が生じてもバックアップされ、遊技状態復旧処理中においても初期化されずに保持される。なお、確変変動回数カウンタ71および時短変動回数カウンタ72は、基本回路53(CPU56)によって使用される。
また、CPU56は、ROM54に格納されているバックアップ時コマンド送信テーブルの先頭アドレスをポインタに設定し(ステップS93)、その内容に従ってサブ基板(払出制御基板(図示せず。)および演出制御基板80)に、電力供給が復旧した旨を示す制御コマンドが送信されるように制御する(ステップS94)。
続いて、CPU56は、バックアップしていた確変変動回数カウンタ71のカウント値が0であるか否かを判定する(ステップS95)。カウント値が0でなければ、確変変動回数カウンタ71のカウント値を示すコマンド(復旧時第1コマンド)を演出制御用CPU101に送信する(ステップS96)。続いて、ステップS97の判定処理を行う。ステップS95において、カウント値が0であると判定したならば、ステップS96の処理を行わずに、ステップS97の判定処理を行う。
ステップS97では、バックアップしていた時短変動回数カウンタ72のカウント値が0であるか否かを判定する。カウント値が0でなければ、時短変動回数カウンタ72のカウント値を示すコマンド(復旧時第2コマンド)を演出制御用CPU101に送信する(ステップS98)。そして、ステップS14に移行する。ステップS97において、カウント値が0であると判定したならば、ステップS98の処理を行わずに、ステップS14に移行する。
なお、確変状態が終了するまでの残りの可変表示の回数が0であるということは、既に確変状態が終了して時短状態に移行済みであることを意味する。従って、確変変動回数カウンタ71のカウント値が0である場合、その値「0」は、確変状態での識別情報の可変表示の回数がない旨を示している。以下の説明では、確変状態での識別情報の可変表示の回数がない旨を示す値(第1の所定値)を、「既に時短状態に移行済みであることを示す値」と記して説明する。同様に、時短状態が終了するまでの残りの可変表示の回数が0であるということは、既に通常状態に移行済みであることを意味する。従って、時短変動回数カウンタ72のカウント値が0である場合、その値「0」は、時短状態での識別情報の可変表示の回数がない旨を示している。以下の説明では、時短状態での識別情報の可変表示の回数がない旨を示す値(第2の所定値)を、「既に通常状態に移行済みであることを示す値」と記して説明する。
ステップS14で行った設定に従ってタイマ割込が発生すると、CPU56は、図5に示すステップS20〜S34の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、電源断信号が出力されたか否か(オン状態になったか否か)を検出する電源断検出処理を実行する(ステップS20)。電源断信号は、例えば電源基板910に搭載されている電圧低下監視回路902が、遊技機に供給される電源の電圧の低下を検出した場合に出力する。そして、電源断検出処理において、CPU56は、電源断信号が出力されたことを検出したら、必要なデータをバックアップRAM領域に保存するための電力供給停止時処理を実行する。
電力供給停止時処理において、CPU56は、バックアップあり指定値(本例では「55H」)をバックアップフラグにストアする。バックアップフラグはバックアップRAM領域に形成されている。次いで、バックアップ対象となるデータ(例えば、確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値など)のパリティデータ(チェックサム)を作成し、チェックサムデータエリアにストアする。このデータが、電源投入時にチェックされるパリティデータとなる。次いで、RAMアクセスレジスタにアクセス禁止値を設定する。以後、内蔵RAM55のアクセスができなくなる。その後、タイマ割込を停止してループ処理に入る。ループ処理では、電源断信号がオフ状態になったか否かを監視する。電源断信号がオフ状態になった場合には復帰アドレスとして、電源投入時実行アドレス(ステップS1のアドレス)を設定してリターン命令を実行する。
ステップS20において、電源断信号の出力が検出されなかったならば、CPU56は、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ29a等のスイッチの検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(ステップS22)。CPU56は、さらに、初期値用乱数を生成するためのカウンタのカウント値を更新する処理および表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(ステップS23,S24)。
乱数として、以下に示すような乱数を用いる。
(1)ランダム1:大当りを発生させるか否か決定する(大当り判定用)
(2)ランダム2−1〜2−3(ランダム2):特別図柄の左中右のはずれ図柄決定用(特別図柄左中右)
(3)ランダム3:大当りを発生させる特別図柄の組合せを決定する(大当り図柄決定用)
(4)ランダム4:特別図柄の変動パターンを決定する(変動パターン決定用)
(5)ランダム5:大当りを発生させない場合にリーチとするか否かを決定する(リーチ判定用)
(6)ランダム6:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(7)ランダム7:ランダム1の初期値を決定する(ランダム1初期値決定用)
(8)ランダム8:ランダム6の初期値を決定する(ランダム6初期値決定用)
図5に示された遊技制御処理におけるステップS22では、CPU56は、(1)の大当り判定用乱数、(3)の大当り図柄決定用乱数、および(6)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数または初期値用乱数である。なお、遊技効果を高めるために、上記(1)〜(8)の乱数以外の普通図柄に関する乱数等も用いられている。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
次いで、CPU56は、特別図柄に関する演出制御コマンドをRAM55の所定の領域に設定して演出制御コマンドを送出する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する演出制御コマンドをRAM55の所定の領域に設定して演出制御コマンドを送出する処理を行う(普通図柄コマンド制御処理:ステップS28)。
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
また、CPU56は、入賞口スイッチ29a,30a,33a,39aの検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS30)。具体的には、入賞口スイッチ29a,30a,33a,39aの何れかがオンしたことにもとづく入賞検出に応じて、払出制御基板(図示せず。)に賞球個数を示す払出制御コマンドを出力する。払出制御基板に搭載されている払出制御用CPUは、賞球個数を示す払出制御コマンドに応じて球払出装置を駆動する。
そして、CPU56は、保留記憶数の増減をチェックする記憶処理を実行する(ステップS31)。また、遊技機の制御状態を遊技機外部で確認できるようにするための試験信号を出力する処理である試験端子処理を実行する(ステップS32)。さらに、所定の条件が成立したときにソレノイド回路(図示せず。)に駆動指令を行う(ステップS33)。可変入賞球装置15または開閉板20を開状態または閉状態としたり、大入賞口内の遊技球通路を切り替えたりするために、ソレノイド回路は、駆動指令に応じてソレノイド16,21,21Aを駆動する。その後、割込許可状態に設定する(ステップS34)。
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
図6は、CPU56が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。図6に示す特別図柄プロセス処理は、図5のフローチャートにおけるステップS25の具体的な処理である。CPU56は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)を行い、遊技盤6に設けられている始動入賞口14に遊技球が入賞したことを検出するための始動口スイッチ14aがオンしていたら、すなわち遊技球が始動入賞口14に入賞する始動入賞が発生していたら(ステップS311)、始動口スイッチ通過処理(ステップS312)を行った後に、内部状態(特別図柄プロセスフラグ)に応じて、ステップS300〜S308のうちのいずれかの処理を行う。変動短縮タイマは、特別図柄の変動時間が短縮される場合に、変動時間を設定するためのタイマである。また、始動口スイッチ通過処理は、始動入賞記憶数を表すカウンタを1増加させ、新たに発生した始動入賞記憶に対応する各乱数を、その始動入賞記憶に応じた保存領域に格納する処理である。
特別図柄通常処理(ステップS300):特別図柄の可変表示を開始できる状態になるのを待つ。特別図柄の可変表示が開始できる状態になると、保留記憶数を確認する。保留記憶数が0でなければ、特別図柄の可変表示の結果、大当りとするか否か決定する。そして、内部状態(特別図柄プロセスフラグ)をステップS301に移行するように更新する。
特別図柄停止図柄設定処理(ステップS301):特別図柄の可変表示後の左中右図柄の停止図柄を決定する。このとき、ステップS300で、可変表示の結果、大当りとすると決定されているならば、大当りとなる停止図柄を決定する。さらに、停止図柄が、大当りとなる停止図柄(特定の表示結果)のうちの特別の停止図柄(特別の表示結果)であるならば、確変状態において実行する可変表示の回数および時短状態において実行する可変表示の回数を定める。この回数が、それぞれ、確変変動回数カウンタ71と時短変動回数カウンタ72の初期値である。そして、内部状態(特別図柄プロセスフラグ)をステップS302に移行するように更新する。
変動パターン設定処理(ステップS302):特別図柄の可変表示の変動パターン(可変表示態様)を、ランダム4の値に応じて決定する。また、変動時間タイマをスタートさせる。このとき、演出制御基板80に対して、左中右最終停止図柄と変動態様(変動パターン)を指令する情報とが送信される。また、変動パターンを指令する情報を送信した場合、そのときの状態が確変状態であるならば確変変動回数カウンタ71を更新(1だけ減算)し、そのときの状態が時短状態であるならば時短変動回数カウンタ72を更新(1だけ減算)する。そして、内部状態(特別図柄プロセスフラグ)をステップS303に移行するように更新する。
特別図柄変動処理(ステップS303):所定時間(ステップS302の変動時間タイマで示された時間)が経過すると、内部状態(特別図柄プロセスフラグ)をステップS304に移行するように更新する。
特別図柄停止処理(ステップS304):可変表示装置9において表示される全図柄が停止されるように制御する。具体的には、特別図柄停止を示す演出制御コマンドが送信される状態に設定する。そして、停止図柄が大当り図柄である場合には、内部状態(特別図柄プロセスフラグ)をステップS305に移行するように更新する。そうでない場合には、内部状態をステップS300に移行するように更新する。
大入賞口開放開始処理(ステップS305):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド21を駆動して大入賞口を開放する。また、プロセスタイマによって大入賞口開放中処理の実行時間を設定し、大当り中フラグをセットする。そして、内部状態(特別図柄プロセスフラグ)をステップS306に移行するように更新する。
大入賞口開放中処理(ステップS306):大入賞口ラウンド表示の演出制御コマンドを演出制御基板80に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。最後の大入賞口の閉成条件が成立したら、内部状態をステップS307に移行するように更新する。
特定領域有効時間処理(ステップS307):V入賞スイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態をステップS305に移行するように更新する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、内部状態をステップS308に移行するように更新する。
大当り終了処理(ステップS308):大当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御手段に行わせるための制御を行う。また、大当り遊技状態終了後に確変状態または時短状態に移行するか否かを判定する。確変状態または時短状態に移行するならば、ステップS301で定められた確変変動回数カウンタ71の初期値を示すコマンドと時短変動回数カウンタ72の初期値を示すコマンドの双方またはいずれか一方を演出制御用CPU101に送信する。そして、確変フラグ(または時短フラグ)をセットすることにより、遊技機の状態を確変状態(または時短状態)に移行させる。そして、その後、内部状態(特別図柄プロセスフラグ)をステップS300に移行するように更新する。
次に、特別図柄の可変表示の結果に応じた状態の変化について説明する。この実施の形態では、左中右の特別図柄は、それぞれ、「0」〜「11」の12通りあって、可変表示装置9において「0」から順に特別図柄の表示が変化することによって特別図柄の変動が実現される。ただし、ここで示した「0」〜「11」の12通りの特別図柄は例示であり、特別図柄の種類は12通りに限定されるわけではない。なお、特別図柄の変動中において、表示図柄の表示は非連続的に変化してもよい。また、特別図柄の最終停止図柄(確定図柄)が左中右揃った場合に大当りとなり、左右が揃った場合にリーチとなる。また、本実施形態では、左中右が奇数で揃った場合を、特別の大当り図柄(特別の表示結果)とする。なお、「1」や「2」等の予め定めた図柄で揃った場合を、特別の大当り図柄としてもよい。あるいは、大当り図柄の全てを、特別の大当り図柄としてもよい。また、本実施形態では、特別の大当り図柄のうち、「1」、「3」、「5」または「7」で揃った場合には、確変状態に移行するための条件(第1の移行条件)が成立したものとする。さらに、特別の大当り図柄のうち、「3」、「5」、「7」または「9」で揃った場合には、時短状態に移行するための条件(第2の移行条件)が成立したものとする。
特別の大当り図柄が発生し、第1の移行条件が成立した場合、大当り遊技状態終了後に、第1の有利状態としての高確率状態(確変状態)に移行する。確変状態において、大当りが発生するか、または定められた回数の特別図柄の可変表示が行われると確変状態は終了する。確変状態が終了するまでに実行する可変表示の回数(すなわち、確変状態において実行する可変表示の回数)は、確変状態の前の大当り遊技状態を導いた特別の大当り図柄に応じて定められる。本実施形態では、CPU56は、この回数を定める処理をステップS301で実行する。
確変状態では、特別図柄の変動の結果(最終停止図柄、単に停止図柄ともいう。)が大当り図柄となる確率が、確変状態でない状態(低確率状態)に比べて高められる。このことを、以下、「確変状態では高確率で当り/はずれが判定される」と表現することがある。確変状態のときに大当り図柄となる確率は、例えば10倍に高められるが、10倍でなくてもよい。また、確変状態では、普通図柄表示器10における停止図柄が当り図柄になる確率も、低確率状態に比べて高まる。なお、上述したように、普通図柄表示器10における停止図柄が当り図柄になる可能性は低確率状態での確率と同じであってもよい。
第2の移行条件が成立していて確変状態が終了すると、第2の有利状態としての特別図柄変動時間短縮(時短)状態に移行する。時短状態では、特別図柄の変動時間(可変表示期間)が、通常状態の場合や確変状態の場合に比べて短縮される。時短状態において、大当りが発生するか、または定められた回数の特別図柄の可変表示が行われると時短状態は終了する。時短状態が終了するまでに実行する可変表示の回数(すなわち、時短状態において実行する可変表示の回数)は、時短状態と確変状態の前の大当り遊技状態を導いた特別の大当り図柄に応じて定められる。本実施形態では、CPU56は、この回数を定める処理をステップS301で実行する。
なお、可変表示結果が特別の大当り図柄となったが、第1の移行条件が成立しなかった場合(左中右の図柄が「9」で揃った場合)、確変状態において実行する可変表示の回数は、便宜的に「0回」とされる。この場合、大当り遊技状態終了後、時短状態に移行することになる。
また、可変表示結果が特別の大当り図柄となったが、第2の移行条件が成立しなかった場合(左中右の図柄が「1」で揃った場合)、時短状態において実行する可変表示の回数は、便宜的に「0回」とされる。この場合、確変状態終了後、通常状態に移行することになる。
特別の大当り図柄の種類に応じて定められる「確変状態において実行する可変表示の回数」および「時短状態において実行する可変表示の回数」の組み合わせとして、例えば、「4回(確変状態)、100回(時短状態)」、「4回(確変状態)、20回(時短状態)」、「7回(確変状態)、30回(時短状態)」、「50回(確変状態)、50回(時短状態)」、「4回(確変状態)、0回(時短状態)」、「0回(確変状態)、100回(時短状態)」等が挙げられる。ここに示した回数の組み合わせは例示であり、回数の組み合わせはここに挙げた組み合わせ以外であってもよい。また、確変状態における可変表示の回数が4回であるときには、確変状態で大当りとなる確率が10倍に高められ、確変状態における可変表示の回数が50回のように多い場合には、確変状態で大当りになる確率が4倍に高められるようにしてもよい。このように、確変状態で大当りになる確率を高める程度を変化させてもよい。
なお、有利状態は、確変状態(第1の有利状態)と時短状態(第2の有利状態)とを含み、有利状態でない遊技状態(遊技機の状態)が通常状態である。また、高確率状態は確変状態であり、低確率状態は、時短状態と通常状態とを含む。
次に、変動パターンについて説明する。変動パターンとは、可変表示の態様のことである。変動パターンの例として、例えば、リーチ態様を伴わない変動パターン(「通常変動」)、リーチ態様を伴うが変動結果(停止図柄)が大当りを生じさせるものとならない変動パターン(「ノーマル」)等の各種態様がある。図7は、変動パターンの一例を示す説明図である。図7に示すデータは、変動時間パターンテーブルとして、ROM54に設定されている。また、変動時間パターンテーブルは、通常状態において選択されるテーブルと、確変状態において選択されるテーブルと、時短状態において選択されるテーブルとを含む。図7において、「EXT」とは、2バイト構成の演出制御コマンドにおける2バイト目のEXTデータを示す。なお、本実施形態では、演出制御コマンドは2バイト構成であるものとする。そして、1バイト目が「MODE」データであり、コマンドの分類を表す。2バイト目が「EXT」データであり、コマンドの種類を表す。そして、本実施形態では、1バイト目の「MODE」データは通常状態の場合、「80(H)」であるとする。また、確変状態の場合の「MODE」データは「81(H)」であり、時短状態の場合の「MODE」データは「82(H)」であるとする。CPU56は、通常状態、確変状態、および時短状態のいずれの状態であるかによって、異なる種類の変動パターンコマンドを演出制御用CPU101に送信する。本例では、常状態、確変状態、および時短状態のいずれの状態であるかによって「MODE」データを異なるデータとすることによって、変動パターンコマンドの種類を状態に応じて変化させている。
また、図7において、「時間」は変動時間(可変表示期間)を示す。図7に示すように、確変状態では、各変動パターンの変動時間が通常状態よりも3.5秒短くなっている。さらに、時短状態では、各変動パターンの変動時間が確変状態よりもさらに3秒短くなっている。
この実施の形態では、通常状態、確変状態、および時短状態で、それぞれ異なる変動時間パターンテーブルを用いている(図7参照)。図7に示されているように、変動時間パターンテーブルにおいて、1つの変動パターンについて、確変状態での変動時間は通常状態での変動時間に比べて短く、また、時短状態での変動時間は確変状態での変動時間に比べて短くなっている。例えば、変動パターン「ノーマル」について、時短状態、確変状態、通常状態での変動時間は、それぞれ、7.5秒、10.5秒、14秒である。このように、同じ変動パターンが選択されても、変動時間は、時短状態の場合が最も短く、次いで確変状態の場合が短く、通常情報の場合が最も長い。
なお、「通常変動」とは、リーチ態様を伴わない変動パターンである。「ノーマル」とは、リーチ態様を伴うが変動結果(停止図柄)が大当りを生じさせるものとならない変動パターンである。「ロング」とは、「ノーマル」と類似した変動パターンであるが変動時間が長い変動パターンである。「リーチA」は、「ロング」および「ノーマル」とは異なるリーチ態様を持つ変動パターンである。また、リーチ態様が異なるとは、リーチ変動時間において異なった態様の変動態様(速度や回転方向等)やキャラクタ等が現れることをいう。例えば、「ノーマル」では単に1種類の変動態様によってリーチ態様が実現されるのに対して、「リーチA」では、変動速度や変動方向が異なる複数の変動態様を含むリーチ態様が実現される。
また、「リーチB」は、「ロング」、「ノーマル」および「リーチA」とは異なるリーチ態様を持つ変動パターンである。そして、「全回転ショート」、「全回転ロング」は、左右中図柄が揃って変動するようなリーチ態様を含む変動パターンである。
「当り」は図柄の変動終了後に大当りが発生することを示す。「再」は、いわゆる仮停止後の再変動態様が現れることを示す。「高速」は、高速変動態様が付加されることを示す。「戻り」は、停止図柄が停止位置を一旦過ぎた後に逆変動して停止する変動態様を含むことを示す。「プレミアム」は、遊技者にとって確実に有利になる状況になる場合に使用される変動パターンであることを示す。例えば、必ず特別の大当り図柄を表示した状態で変動が終了するような変動パターンである。
図8は、遊技状態の変化の一例を説明するためのタイミング図である。図8では、特別の大当り図柄の種類に応じて、「確変状態において実行する可変表示の回数」が4回であり、「時短状態において実行する可変表示の回数」が100回であると定めた場合の例を示す。図8に示すように、特別図柄の変動の結果が大当り図柄であると、大当り遊技の終了後に、確変状態が発生する。なお、確変フラグは、遊技制御手段がRAM55に設定する内部フラグであり、セットされている状態が確変状態であることを示す。以後、定められた4回の特別図柄の変動が完了すると、時短状態に移行する。そして、時短状態は、定められた100回の特別図柄の変動が完了するまで継続する。なお、時短フラグは、遊技制御手段がRAM55に設定する内部フラグであり、セットされている状態が時短状態であることを示す。また、確変状態および時短状態は、定められた回数の変動が完了する前に大当りが発生した場合には、そのときの特別図柄の変動における特別図柄が最終停止した時点で終了する。
続いて、特別図柄通常処理(ステップS300)について説明する。特別図柄通常処理において、CPU56は、特別図柄の変動を開始することができる状態(例えば可変表示装置9において図柄の変動がなされておらず、かつ、大当り遊技中でもない状態)であれば、始動入賞記憶数(保留記憶数)の値を確認する。具体的には、始動入賞記憶数を示す始動入賞カウンタのカウント値を確認する。なお、可変表示装置9において図柄の変動がなされておらず、かつ、大当り遊技中でもない状態であるか否かは、特別図柄プロセスフラグの示す値が所定の値(ステップS300の処理を示す値)となっているか否かによって判定される。
始動入賞記憶数が0でなければ、始動入賞記憶数=1に対応する保存領域に格納されている各乱数値を読み出してRAM55の乱数バッファ領域に格納するとともに、始動入賞記憶数の値を1減らし(始動入賞記憶カウンタのカウント値を1減らし)、かつ、各保存領域の内容をシフトする。すなわち、始動入賞記憶数=n(n=2,3,4)に対応する保存領域に格納されている各乱数値を、始動入賞記憶数=n−1に対応する保存領域に格納する。よって、各始動入賞記憶数に対応するそれぞれの保存領域に格納されている各乱数値が抽出された順番は、常に、始動入賞記憶数=1,2,3,4の順番と一致するようになっている。すなわち、この例では、CPU56は、変動表示の開始条件が成立する毎に、各保存領域の内容をシフトする処理を実行するので、始動入賞が生じたときに実行された入賞時判定処理の判定結果が、いずれの始動入賞記憶に対応するのかを容易に特定することができる。
次いで、CPU56は、乱数格納バッファから大当り判定用乱数を読み出し、大当り判定モジュールを実行する。大当り判定モジュールでは、判定対象とする大当り判定用乱数と、大当り判定値が設定された大当り判定用テーブルとが用いられ、大当り判定用テーブルに設定された大当り判定値の中に判定対象の大当り判定用乱数と同じ値の大当り判定値があるか否かが確認され、あった場合には大当りとすることに決定される。なお、大当りとするときには必ずリーチを経由することになるため、大当りとすることに決定されたときには、リーチとすることに決定されたことにもなる。CPU56は、大当りとすることに決定した場合、大当りフラグをセットし、特別図柄プロセスフラグをステップS301に移行するように更新する。大当りとしないことに決定した場合には、大当りフラグをセットせずに、特別図柄プロセスフラグをステップS301に移行するように更新する。
図9は、特別図柄停止図柄設定処理(ステップS301)を示すフローチャートである。特別図柄停止図柄設定処理において、CPU56は、大当りフラグがセットされているか否か確認する(ステップS61)。大当りフラグがセットされている場合には、大当り図柄用乱数(ランダム3)の値に従って大当り図柄を決定する(ステップS62)。なお、ランダム3の値は、特別図柄通常処理(ステップS300)において、始動入賞記憶数=1に対応する保存領域に格納されている各乱数値の1つとして読み出されている。この実施の形態では、ランダム3の値に応じた大当り図柄テーブルに設定されている図柄番号の各図柄が、大当り図柄として決定される。大当り図柄テーブルには、複数種類の大当り図柄それぞれに対応した左中右の図柄番号が設定されている。
続いて、CPU56は、ステップS62で決定した大当り図柄が特別の大当り図柄(本実施形態では左中右が奇数で揃う大当り図柄)になっているか否かを判定する(ステップS41)。大当り図柄が特別の大当り図柄であるならば、ステップS42の処理を実行する。ステップS42では、第1の移行条件が成立しているか否かを判定し、第1の移行条件が成立しているならば、特別の大当り図柄の種類に応じて、確変変動回数カウンタ71のカウント値の初期値を決定する。そして、確変変動回数カウンタ71のカウント値としてその初期値を設定する(ステップS42)。ただし、第1の条件が成立していない場合には、確変変動回数カウンタ71のカウント値を0に設定する。CPU56は、ステップS42に続いて、ステップS43の処理を実行する。ステップS43では、第2の移行条件が成立しているか否かを判定し、第2の移行条件が成立しているならば、特別の大当り図柄の種類に応じて、時短変動回数カウンタ72のカウント値の初期値を決定する。そして、時短変動回数カウンタ72のカウント値としてその初期値を設定する(ステップS43)。ただし、第2の条件が成立していない場合には、時短変動回数カウンタ72のカウント値を0に設定する。本実施の形態では、大当り図柄は、ランダム3の値に応じた図柄番号の図柄として決定されるので、ステップS42,S43においても、例えば、特別の大当り図柄を導出したランダム3に応じて各初期値を決定すればよい。すなわち、特別の大当り図柄に対応するランダム3の各値ごとに、確変変動回数カウンタ71のカウント値の初期値を定めたテーブルを用意しておき、そのテーブルからランダム3(特別の大当り図柄を導出したランダム3)に応じた値を読み出すことによって、確変変動回数カウンタ71のカウント値の初期値を決定すればよい。時短変動回数カウンタ72のカウント値の初期値を決定する処理も同様に行えばよい。また、ランダム3に応じて各初期値を決定するのではなく、各種特別の大当り図柄と初期値との関係(例えば『「3」で揃った図柄ならば、初期値をX回にする』等の関係)を予め定めておき、ステップS62で決定された特別の大当り図柄に応じて初期値を設定してもよい。
また、ステップS42に移行する前の確変変動回数カウンタ71の既定値を0とすることにより、ステップS42において第1の移行条件が成立していないときに確変変動回数カウンタ71のカウント値を0に設定する処理を行わないようにしてもよい。同様にステップS43に移行する前の時短変動回数カウンタ72の既定値を0とすることにより、ステップS43において第2の移行条件が成立していないときに時短変動回数カウンタ72のカウント値を0に設定する処理を行わないようにしてもよい。
ステップS43の後、CPU56は、特別図柄プロセスフラグの値を変動パターン設定処理に対応した値に更新する(ステップS63)。また、大当り図柄が特別の大当り図柄ではないと判定された場合(ステップS41のN)、ステップS42,S43の処理を行うことなく、ステップS63に移行する。
大当りフラグがセットされていない場合には、CPU56は、乱数格納バッファからリーチ判定用乱数(ランダム5)を読み出す(ステップS64)。そして、その乱数にもとづいて、リーチとするか否かを判定する(ステップS65)。リーチ判定処理(ステップS65)では、予め用意してあるリーチ判定テーブルを用いて判定を行う。リーチ判定テーブルは、リーチとする場合の値とリーチとしない場合の値とを含むテーブルである。CPU56は、ランダム5の値が、リーチ判定テーブルにおける「リーチとする場合の値」と合致するならば、リーチとすると判定する。ランダム5の値が、リーチ判定テーブルにおける「リーチとしない場合の値」と合致するならば、リーチとしないと判定する。
リーチ判定処理においてリーチとすると判定された場合(ステップS66のY)、ランダム2−1の値に従って左右図柄を決定し、ランダム2−2の値に従って中図柄を決定する(ステップS67)。ここで、決定された中図柄が左右図柄と一致した場合には、中図柄に対応した乱数の値に1加算した値に対応する図柄を中図柄の停止図柄として、大当り図柄と一致しないようにする。そして、ステップS63に移行する。リーチ判定処理においてリーチとしないと判定された場合(ステップS66のN)、CPU56は、はずれの場合の停止図柄の決定を行う(ステップS68)。具体的には、ステップS53で読み出した値、すなわち抽出されているランダム2−1の値に従って左図柄を決定し、ランダム2−2の値に従って中図柄を決定するとともに、ランダム2−3の値に従って右図柄を決定する。なお、ここでは、左右図柄が一致した場合には右図柄を1図柄ずらし、リーチにもならないはずれとなるようにする。そして、ステップS63に移行する。
図10は、変動パターン設定処理(ステップS302)を示すフローチャートである。CPU56は、まず変動パターンを設定する(ステップS71)。ステップS71において、CPU56は、時短状態では、時短状態用の変動パターンテーブルを選択し、確変状態では、確変状態用の変動パターンテーブルを選択し、通常状態では通常状態用の変動パターンテーブルを選択する(図7参照)。そして、大当りとすることに決定されている場合には、選択したテーブルから「当り」のときに用いられる変動パターンを1つ選択する。また、大当りとはしないがリーチすることに決定されている場合には、選択したテーブルから「リーチ」のときに用いられる変動パターンを1つ選択する。そして、リーチにもしないことに決定されている場合には、選択したテーブルから「はずれ」のときに用いられる変動パターンを1つ選択する。
なお、時短状態用、確変状態用、および通常状態用の各変動パターンテーブルには、それぞれ「当り」、「リーチ」および「はずれ」のときに用いられる変動パターンの選択テーブルが含まれている。「当り」のときに用いられる変動パターンの選択テーブルでは、例えば「0〜149」の各値が、いずれかの変動パターンに対して割り当てられている。同様に、「リーチ」や「はずれ」のときに用いられる変動パターンの選択テーブルでも、「0〜149」の各値が、いずれかの変動パターンに対して割り当てられている。CPU56は、時短状態、確変状態、または通常状態に応じた変動パターンテーブルを選択する。さらに、CPU56は、選択した変動パターンから、「当り」、「リーチ」、「はずれ」に応じて選択テーブルを選択し、変動パターン決定用乱数(ランダム4)と合致する変動パターンを判定する。なお、本例では、ランダム4のとりうる値が「0〜149」であるものとする。
変動パターンを決定すると、CPU56は、決定した変動パターンの変動時間データを特別図柄プロセスタイマに設定する(ステップS72)。そして、CPU56は、決定した変動パターンを示す変動パターンコマンドを演出制御用CPU101に送信する(ステップS73)。1つの変動パターンコマンドは、1回の可変表示に対応する。すなわち、1つの変動パターンコマンドが送信されるということは、1回の可変表示が行われることを意味する。
次いで、CPU56は、停止図柄が大当り図柄であるか否か確認する(ステップS74)。停止図柄が大当り図柄であれば、確変フラグおよび時短フラグをリセットする(ステップS75,S76)。そして、ステップS86に移行する。ステップS86では、内部状態(特別図柄プロセスフラグ)をステップS303に移行するように更新する。
なお、確変フラグがセットされているということは、確変状態であることを意味し、確変フラグがリセットされているということは、確変状態ではないことを意味する。同様に、時短フラグがセットされているということは、時短状態であることを意味し、時短フラグがリセットされているということは、時短状態ではないことを意味する。
停止図柄が大当り図柄でなければ(ステップS74のN)、確変フラグがセットされているか否かを判定する(ステップS77)。確変フラグがセットされているならば、CPU56は、確変変動回数カウンタ71のカウント値を1減算する(ステップS78)。既に説明したように、1つの変動パターンコマンドが送信されるということは、1回の可変表示が行われることを意味する。従って、ステップS78では、確変変動回数カウンタ71のカウント値を1減算して、確変状態が終了するまでの残りの可変表示の回数を示す値を1減らす。CPU56は、ステップS78における減算処理の結果、確変変動回数カウンタ71のカウント値が0になったか否かを判定する(ステップS79)。カウント値が0になっていなければ、ステップS86に移行する。
本実施形態では、確変変動回数カウンタ71は、確変状態が終了するまでの残りの可変表示の回数を示すカウンタである。従って、そのカウント値が「0」であるということは、既に確変状態が終了して時短状態に移行済みであることを示している。よって、ステップS79では、確変変動回数カウンタ71のカウント値が、既に時短状態に移行済みであることを示す値である「0」になっているか否かを判定している。ステップS79において、カウント値が0になっていると判定したならば、確変フラグをリセットする(ステップS80)。続いてCPU56は、時短変動回数カウンタ72のカウント値が0より大きい値か否かを判定する(ステップS87)。時短変動回数カウンタ72のカウント値が0より大きければ、時短状態で実行される可変表示の回数があることになる。すなわち、時短状態に移行することを意味する。よって、この場合、CPU56は時短フラグをセットする(ステップS81)。その後、ステップS86に移行する。ステップS87において、時短変動回数カウンタ72のカウント値が0であると判定された場合、時短状態には移行しない。従って、この場合には、時短フラグをセットすることなくステップS86に移行する。
また、ステップS77において、確変フラグがセットされていないと判定した場合には、時短フラグがセットされているか否かを判定する(ステップS82)。時短フラグがセットされているならば、CPU56は、時短変動回数カウンタ72のカウント値を1減算する(ステップS83)。既に説明したように、1つの変動パターンコマンドが送信されるということは、1回の可変表示が行われることを意味する。従って、ステップS83では、時短変動回数カウンタ72のカウント値を1減算して、時短状態が終了するまでの残りの可変表示の回数を示す値を1減らす。CPU56は、ステップS83における減算処理の結果、時短変動回数カウンタ72のカウント値が0になったか否かを判定する(ステップS84)。カウント値が0になっていなければ、ステップS86に移行する。
本実施形態では、時短変動回数カウンタ72は、時短状態が終了するまでの残りの可変表示の回数を示すカウンタである。従って、そのカウント値が「0」であるということは、既に時短状態が終了して通常状態に移行済みであることを示している。よって、ステップS84では、時短変動回数カウンタ72のカウント値が、既に通常状態に移行済みであることを示す値である「0」になっているか否かを判定している。ステップS84において、カウント値が0になっていると判定したならば、時短フラグをリセットし(ステップS85)、ステップS86に移行する。
図11は、大当り遊技が終了したときに実行される大当り終了処理を示すフローチャートである。大当り終了処理において、CPU56は、大当り遊技状態終了後に確変状態または時短状態に移行するか否かを判定する(ステップS101)。この判定処理では、ステップS42,S43において、確変変動回数カウンタ71のカウント値の初期値および時短変動回数カウンタ72のカウント値の初期値として、少なくともいずれか一方に0以外の値が設定されたか否かを判定すればよい。いずれか一方または双方に0以外の値が設定されていれば、大当り遊技状態終了後、確変状態または時短状態に移行する。また、確変変動回数カウンタ71のカウント値の初期値および時短変動回数カウンタ72のカウント値の初期値がともに0に設定されているのであれば、大当り遊技状態終了後、通常状態に移行することになる。
大当り遊技状態終了後に確変状態または時短状態に移行すると判定した場合、CPU56は、確変変動回数カウンタ71のカウント値の初期値を示すコマンドを演出制御用CPU101に送信する(ステップS102)。ただし、確変変動回数カウンタ71のカウント値の初期値として「0」が設定されている場合には、ステップS102の処理を実行せずに、ステップS103の処理に移行する。
ステップS103では、CPU56は、時短変動回数カウンタ72のカウント値の初期値を示すコマンドを演出制御用CPU101に送信する。ただし、時短変動回数カウンタ72のカウント値の初期値として「0」が設定されている場合には、ステップS103の処理を実行せずに、ステップS104の処理に移行する。なお、大当り遊技状態後に確変状態または時短状態に移行する場合、ステップS102,S103の双方が実行されないということはなく、ステップS102,S103の少なくとも一方は実行される。
ステップS104では、確変フラグまたは時短フラグをセットする。確変変動回数カウンタ71のカウント値の初期値として「0」以外の値が設定されていて、その値を示すコマンドを演出制御用CPU101に送信した場合(ステップS102を実行した場合)、確変フラグをセットする。このとき、時短フラグはセットしない。一方、確変変動回数カウンタ71のカウント値の初期値として「0」が設定されていて、ステップS102を実行しなかった場合には、大当り遊技状態から確変状態を経由することなく時短状態に移行する。従って、この場合は、CPU56は、確変フラグをセットせずに、時短フラグをセットする。
ステップS104の後、CPU56は、内部状態(特別図柄プロセスフラグ)をステップS300に移行するように更新する(ステップS106)。
また、大当り遊技状態終了後に確変状態にも時短状態にも移行しないと判定した場合、CPU56は、非特定大当り終了コマンドを演出制御用CPU101に送信する(ステップS105)。非特定大当り終了コマンドは、大当り遊技状態の終了を示し、かつ、その後通常状態に移行することを示すコマンドである。ステップS105の後、CPU56は、ステップS106の処理を実行する。
本実施形態では、大当り終了処理(ステップS308)において、確変変動回数カウンタ71のカウント値の初期値を示すコマンドおよび時短変動回数カウンタ72のカウント値の初期値を示すコマンドを送信する場合を例にして説明した。CPU56は、これらのコマンドの送信処理を、大当り終了処理以外で行ってもよい。ただし、確変変動回数カウンタ71のカウント値の初期値を示すコマンドは、確変状態に移行する前に送信する。また、時短変動回数カウンタ72のカウント値の初期値を示すコマンドは、時短状態に移行する前に送信する。
次に、演出制御基板80に搭載される演出制御用CPU101の動作を説明する。図12は、演出制御用CPU101が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域のクリアや各種初期値の設定、また演出制御の起動間隔を決めるためのタイマの初期設定等を行うための初期化処理を行う(ステップS701)。続いて、演出制御用CPU101は、CPU56によるステップS96,S98の処理(図4参照)に応じた処理である復旧時処理を実行する(ステップS702)。その後、演出制御用CPU101は、タイマ割込フラグの監視(ステップS703)の確認を行うループ処理に移行する。タイマ割込が発生すると、演出制御用CPU101は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、演出制御用CPU101は、そのフラグをクリアし(ステップS704)、以下の演出制御処理を実行する。
この実施の形態では、タイマ割込は33ms毎にかかる。すなわち、演出制御処理は、33ms毎に起動される。また、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、具体的な演出制御処理はメイン処理において実行されるが、タイマ割込処理で演出制御処理を実行してもよい。
演出制御処理において、演出制御用CPU101は、まず、受信した演出制御コマンドを解析する(コマンド解析実行処理:ステップS705)。次いで演出制御用CPU101は、演出制御プロセス処理を行う(ステップS706)。演出制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態に対応したプロセスを選択して実行する。その後、ステップS703のタイマ割込フラグの確認を行う処理に戻る。
基本回路53からの演出制御INT信号は演出制御用CPU101の割込端子に入力されている。例えば、基本回路53からの演出制御INT信号がオン状態になると、演出制御用CPU101において割込がかかる。そして、演出制御用CPU101は、割込処理において演出制御コマンドの受信処理を実行する。演出制御コマンドの受信処理において、演出制御用CPU101は、受信した演出制御コマンドデータを、コマンド受信個数カウンタが示す受信コマンドバッファに格納する。コマンド受信個数カウンタは、受信したコマンドをどの領域に格納するのかを示すカウンタである。
図13は、初期化処理(ステップS701)の後に行う復旧時処理(ステップS702)を示すフローチャートである。復旧時処理において、演出制御用CPU101は、確変変動回数カウンタ71のカウント値を受信したか否かを確認する(ステップS721)。より具体的には、演出制御用CPU101は、ステップS96で送信される確変変動回数カウンタ71のカウント値を示すコマンド(復旧時第1コマンド)を受信したか否かを確認する。復旧時第1コマンドを受信しているならば、演出制御用CPU101は、残確変時回転数73のカウント値として、復旧時第1コマンドが示すカウント値(すなわち、確変変動回数カウンタ71のカウント値)を設定する(ステップS722)。残確変時回転数73は、演出制御用CPU101が使用するカウンタであり、確変状態での識別情報の可変表示の回数を特定可能なカウンタである。このようなカウンタの態様として、確変状態が終了するまでの残りの可変表示の回数を示すカウンタや、確変状態に移行してからの可変表示の実行回数を示すカウンタなどが挙げられる。本実施形態で示す残確変時回転数73は、確変状態が終了するまでの残りの可変表示の回数を示すカウンタである。確変状態に移行してからの可変表示の実行回数を示すカウンタ(後述の確変時回転数)を用いる実施形態については、後述する。
また、確変変動回数カウンタ71のカウント値を受信していない(すなわち復旧時第1コマンドを受信していない)ということは、CPU56が、バックアップしていた確変変動回数カウンタ71のカウント値が0であると判定したことを意味する。従って、確変変動回数カウンタ71のカウント値を受信していない場合(ステップS721のN)、演出制御用CPU101は、残確変時回転数73のカウント値として0(既に確変状態が終了して時短状態に移行済みであることを示す値)を設定する(ステップS723)。
残確変時回転数73の設定に続いて(ステップS722またはステップS723に続いて)、演出制御用CPU101は、時短変動回数カウンタ72のカウント値を受信したか否かを確認する(ステップS724)。より具体的には、演出制御用CPU101は、ステップS98で送信される時短変動回数カウンタ72のカウント値を示すコマンド(復旧時第2コマンド)を受信したか否かを確認する。復旧時第2コマンドを受信しているならば、演出制御用CPU101は、残時短時回転数74のカウント値として、復旧時第2コマンドが示すカウント値(すなわち、時短変動回数カウンタ72のカウント値)を設定する(ステップS725)。残時短時回転数74は、演出制御用CPU101が使用するカウンタであり、時短状態での識別情報の可変表示の回数を特定可能なカウンタである。このようなカウンタの態様として、時短状態が終了するまでの残りの可変表示の回数を示すカウンタや、時短状態に移行してからの可変表示の実行回数を示すカウンタなどが挙げられる。本実施形態で示す残時短時回転数74は、時短状態が終了するまでの残りの可変表示の回数を示すカウンタである。時短状態に移行してからの可変表示の実行回数を示すカウンタ(後述の時短時回転数)を用いる実施形態については、後述する。なお、残確変時回転数73や残時短時回転数74のカウント値はRAM103に記憶されるが、RAM103はバックアップRAMではないため、電源断時には消去される。
また、時短変動回数カウンタ72のカウント値を受信していない(すなわち復旧時第2コマンドを受信していない)ということは、CPU56が、バックアップしていた時短変動回数カウンタ72のカウント値が0であると判定したことを意味する。従って、時短変動回数カウンタ72のカウント値を受信していない場合(ステップS724のN)、演出制御用CPU101は、残時短時回転数74のカウント値として0(既に時短状態が終了して通常状態に移行済みであることを示す値)を設定する(ステップS726)。
残時短時回転数74の設定に続いて(ステップS725またはステップS726に続いて)、演出制御用CPU101は、残確変時回転数73のカウント値が0より大きい値か否かを判定する(ステップS727)。残確変時回転数73のカウント値が0よりも大きければ、演出制御用CPU101は、内部状態を確変状態に設定する(ステップS728)。内部状態を確変状態に設定する場合、例えば、確変状態を示す内部フラグをセットすればよい。続いて、演出制御用CPU101は、VDP106を制御して、可変表示装置9の可変表示回数表示領域19(図1参照)に残確変時回転数73のカウント値を表示させる(ステップS729)。なお、可変表示回数表示領域19にカウント値を表示させる場合、可変表示回数表示領域19専用のVRAM(図示せず。)を用意しておき、VDP106を制御して、表示するデータ(カウント値)をそのVRAMに書き込ませればよい。
演出制御用CPU101は、残確変時回転数73のカウント値が0であったならば(ステップS727のN)、残時短時回転数74のカウント値が0より大きい値か否かを判定する(ステップS730)。残時短時回転数74のカウント値が0よりも大きければ、演出制御用CPU101は、内部状態を時短状態に設定する(ステップS731)。内部状態を時短状態に設定する場合、例えば、確変状態を示す内部フラグをリセットして時短状態を示す内部フラグをセットすればよい。続いて、演出制御用CPU101は、VDP106を制御して、可変表示回数表示領域19に残時短時回転数74のカウント値を表示させる(ステップS732)。
演出制御用CPU101は、残時短時回転数74のカウント値が0であったならば(ステップS730のN)、内部状態を通常状態に設定する(ステップS733)。内部状態を通常状態に設定する場合、例えば、時短状態を示す内部フラグをリセットすればよい。
停電等の電源断が生じた場合、RAM103に記憶される残確変時回転数73や残時短時回転数74のカウント値は消去されてしまう。しかし、上述の復旧時処理において、基本回路53でバックアップされていた確変変動回数カウンタ71のカウンタ値や、時短変動回数カウンタ72のカウンタ値を受信して、残確変時回転数73や残時短時回転数74のカウント値を設定する。そして、そのカウント値を、可変表示回数表示領域19に表示する。従って、電源断から復旧した場合であっても、電源断が生じる前から引き続いて、確変状態や時短状態が終了するまでの可変表示の回数を正確に表示することができる。
また、図4に示すように、ステップS95,S97において、確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値が0である場合、CPU56は、そのカウント値を演出制御用CPU101に送信しない。そして、演出制御用CPU101は、復旧時処理(ステップS702)において、確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値を受信していない場合、残確変時回転数73や残時短時回転数74のカウント値を0に設定する。すなわち、基本回路53における遊技状態復旧処理において、確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値が0(既に時短状態に移行済みであることを示す値、あるいは既に通常状態に移行済みであることを示す値)である場合には、そのカウント値を送信しなくても、演出制御用CPU101は、残確変時回転数73や残時短時回転数74のカウント値を0に設定する。従って、遊技状態復旧処理において送信するコマンドの増加を防ぎ、CPU56が送信するコマンドの量を適正な量にしつつ、正確な残りの可変表示回数を表示することができる。よって、CPU56の制御負担の増加を抑えることができる。
図14および図15は、コマンド解析処理(ステップS705)の具体例を示すフローチャートである。基本回路53から受信した演出制御コマンドは受信コマンドバッファに格納されるが、コマンド解析処理では、演出制御用CPU101は、コマンド受信バッファに格納されているコマンドの内容を確認する。また、本実施の形態では、演出制御用CPU101は、ある1つの演出制御コマンドに応じて処理を実行する際、その1つ前の演出制御コマンドの種類を記憶しているものとする。
コマンド解析処理において、演出制御用CPU101は、まず、コマンド受信バッファに受信コマンドが格納されているか否か確認する(ステップS611)。格納されているか否かは、コマンド受信個数カウンタの値と読出ポインタとを比較することによって判定される。両者が一致している場合が、受信コマンドが格納されていない場合である。コマンド受信バッファに受信コマンドが格納されている場合には、演出制御用CPU101は、コマンド受信バッファから受信コマンドを読み出す(ステップS612)。なお、読み出したら読出ポインタの値を+1しておく。
受信した演出制御コマンドが変動パターン指定の演出制御コマンドであれば(ステップS613)、演出制御用CPU101は、そのコマンドのEXTデータを変動パターンデータ格納領域に格納し(ステップS614)、変動パターン受信フラグをセットする(ステップS615)。
また、CPU56から送信される変動パターンコマンドの種類は、通常状態、確変状態、および時短状態のいずれの状態であるかによって異なっている。本例では、通常状態、確変状態、および時短状態において、それぞれ「MODE」データが「80(H)」、「81(H)」、「82(H)」とされることによって、変動パターンコマンドの種類が異なるようにされている。演出制御用CPU101は、ステップS615の後、変動パターンコマンドが示す状態の種類と、演出制御用CPU101が認識している内部状態の種類とが異なっているか否かを判定する(ステップS616)。そして、異なっている場合には、ステップS617に移行し、一致している場合にはステップS620に移行する。例えば、内部状態が確変状態であると認識しているときに(確変状態を示す内部フラグがセットされているときに)受信した変動パターンコマンドの「MODE」データが「82(H)」であり、時短状態を示している場合、ステップS617に移行する。なお、通常、演出制御用CPU101が認識している内部状態の種類と、変動パターンコマンドが示す内部状態の種類とは一致するが、ノイズ等に起因して両者が一致しなくなる場合もある。このように、電源断以外の原因(ノイズ等)によって、両者が一致しなくなることもある。
ステップS617において、演出制御用CPU101は、可変表示回数表示領域19での残確変時回転数73(または残時短時回転数74)のカウント値の表示を停止する。すなわち、可変表示回数表示領域19に表示していたカウント値を、VDP106を制御して消去する。演出制御用CPU101は、内部状態が確変状態であると認識していて、残確変時回転数73のカウント値を表示していたときにステップS617に移行した場合、残確変時回転数73のカウント値の表示を停止する。また、内部状態が時短状態であると認識していて、残時短時回転数74のカウント値を表示していたときにステップS617に移行した場合、残時短時回転数74のカウント値の表示を停止する。
また、ステップS617の処理において、演出制御用CPU101は、残確変時回転数73のカウント値や残時短時回転数74のカウント値が予め定めた所定値以下(例えば10回以下)であることを条件に、残確変時回転数73のカウント値や残時短時回転数74のカウント値の表示を停止してもよい。残確変時回転数73のカウント値や残時短時回転数74のカウント値が大きな値である場合、CPU56が送信する変動パターンコマンドが示している状態が誤っている可能性が高いからである。例えば、演出制御用CPU101が、確変状態であると認識していて、残確変時回転数73のカウント値が90回であるようなときに、時短状態に対応する変動パターンコマンドを受信した場合、変動パターンコマンドの方が誤っている可能性が高いからである。
また、あるいは、ステップS616からステップS617に移行する態様を以下のようにしてもよい。遊技の進行に伴って所定の回数の変動パターンコマンドを受信したときに、それぞれステップS616の判定を行い、所定の可変表示回数分の変動パターンコマンドそれぞれについて、変動パターンコマンドが示す状態と内部状態とが異なっている場合に、ステップS617に移行するようにしてもよい。すなわち、変動パターンコマンドが示す状態と内部状態とが異なっているという状態が、所定の複数回の可変表示に渡って続いているときに、ステップS617に移行するようにしてもよい。
さらに、演出制御用CPU101は、認識している内部状態に応じて、残確変時回転数73または残時短時回転数74をクリアする(ステップS618)。ここで、「クリアする」とは、残確変時回転数73のカウント値を、既に時短状態に移行済みであることを示す値(本例では「0」)に更新すること、または、残時短時回転数74のカウント値を、既に通常状態に移行済みであることを示す値(本例では「0」)に更新することを意味する。演出制御用CPU101は、ステップS618において、内部状態が確変状態であると認識していているならば(確変状態を示す内部フラグがセットされているならば)、残確変時回転数73のカウント値を、既に時短状態に移行済みであることを示す値(0)に更新する。また、演出制御用CPU101は、ステップS618において、内部状態が時短状態であると認識していているならば(時短状態を示す内部フラグがセットされているならば)、残時短時回転数74のカウント値を、既に通常状態に移行済みであることを示す値(0)に更新する。
ステップS618に続いて、演出制御用CPU101は、変動パターンコマンドが示す状態に合わせて内部状態を更新する(ステップS619)。具体的には、変動パターンコマンドが時短状態を示しているならば、内部状態を時短状態に更新する。この場合、残時短時回転数74のカウント値を1減算する処理も行う。また、変動パターンコマンドが通常状態を示しているならば、内部状態を通常状態に更新する。また、変動パターンコマンドが確変状態を示しているならば、内部状態を確変状態に更新する。この場合、残確変時回転数73のカウント値を1減算する処理も行う。そして、ステップS611に移行する。
また、変動パターンコマンドが示す状態の種類と、演出制御用CPU101が認識している内部状態の種類とが一致していると判定した場合(ステップS616のN)、演出制御用CPU101は、内部状態が確変状態であるか否かを判定する(ステップS620)。内部状態が確変状態であれば、残確変時回転数73のカウント値を1減算する(ステップS621)。1つの変動パターンコマンドを受信したということは、1回の可変表示が行われることを意味する。従って、ステップS621では、残確変時回転数73のカウント値を1減算して、確変状態が終了するまでの残りの可変表示の回数を示す値を1減らす。演出制御用CPU101は、ステップS621における減算処理の結果、残確変時回転数73のカウント値が0になったか否かを判定する(ステップS622)。残確変時回転数73のカウント値が0になったならば、残時短時回転数74のカウント値が0より大きい値となっているか否かを判定する(ステップS651)。残時短時回転数74のカウント値が0より大きければ、時短状態で実行される可変表示の回数があることになる。すなわち、時短状態に移行することを意味する。よって、この場合、演出制御用CPU101は、内部状態を時短状態に設定し、残時短時回転数74のカウント値を可変表示回数表示領域19に表示させる(ステップS623)。そして、ステップS611に移行する。また、ステップS651において、残時短時回転数74のカウント値が0であると判定された場合、時短状態には移行しない。従って、この場合には、内部状態を通常状態に設定し、変表示回数表示領域19における残確変時回転数73のカウント値の表示を停止する(ステップS652)。そして、ステップS611に移行する。また、ステップS621での減算処理の結果、残確変時回転数73が0になっていなければ(ステップS622のN)、演出制御用CPU101は、減算後の残確変時回転数73のカウント値を可変表示回数表示領域19に表示させ(ステップS624)、ステップS611に移行する。
ステップS620で内部状態が確変状態でないと判定したならば、演出制御用CPU101は、内部状態が時短状態であるか否かを判定する(ステップS625)。内部状態が時短状態であれば、残時短時回転数74のカウント値を1減算する(ステップS626)。1つの変動パターンコマンドを受信したということは、1回の可変表示が行われることを意味する。従って、ステップS626では、残時短時回転数74のカウント値を1減算して、時短状態が終了するまでの残りの可変表示の回数を示す値を1減らす。演出制御用CPU101は、ステップS626における減算処理の結果、残時短時回転数74のカウント値が0になったか否かを判定する(ステップS627)。残時短時回転数74のカウント値が0になったならば、内部状態を通常状態に設定し、変表示回数表示領域19における残時短時回転数74のカウント値の表示を停止する(ステップS628)。そして、ステップS611に移行する。一方、減算処理の結果、残時短時回転数74のカウント値が0になっていなければ、演出制御用CPU101は、減算後の残時短時回転数74のカウント値を可変表示回数表示領域19に表示させ(ステップS629)、ステップS611に移行する。
また、ステップS625で内部状態が時短状態でないと判定したならば、ステップS611に移行する。
受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンド(ステップS102で送信されるコマンド)であるならば(ステップS630)、演出制御用CPU101はステップS631の処理を実行する。すなわち、演出制御用CPU101は、残確変時回転数73のカウント値の初期値を、確変変動回数カウンタ71のカウント値の初期値と等しい値として設定する(ステップS631)。そして、演出制御用CPU101は、内部状態を確変状態に設定し(ステップS632)、残確変時回転数73のカウント値を可変表示回数表示領域19に表示する(ステップS633)。ステップS633において表示されるカウント値は、ステップS631で設定された初期値である。ステップS633の後、ステップS611に移行する。
受信した演出制御コマンドが、時短変動回数カウンタ72のカウント値の初期値を示すコマンド(ステップS103で送信されるコマンド)であるならば(ステップS634)、演出制御用CPU101はステップS635の処理を実行する。すなわち、1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンド(ステップS102で送信されるコマンド)であるか否かを判定する(ステップS635)。ステップS102,S103の処理は続けて行われる。しかし、確変変動回数カウンタ71のカウント値の初期値が0である場合には、ステップS102の処理は行われない。この場合、S631〜S633の処理が行われず、残確変時回転数73のカウント値の初期値は設定されていないことになる。そこで、演出制御用CPU101は、ステップS635の判定処理を行うことによって、残確変時回転数73のカウント値の初期値が設定されているか否かを判定する。
1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンドであるならば、既にステップS631〜S633の処理が行われ、残確変時回転数73のカウント値の初期値は設定されている。そこで、この場合(ステップS635のY)、演出制御用CPU101は、残時短時回転数74のカウント値の初期値を、時短変動回数カウンタ72のカウント値の初期値と等しい値として設定する(ステップS636)。その後、ステップS611に移行する。
1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンドでないならば、ステップS102の送信処理が行われずに、ステップS103の送信処理が行われたことになる。この場合、未だステップS631〜S633の処理は行われていない。そこで、1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンドでないならば(ステップS635のN)、演出制御用CPU101は、残時短時回転数74のカウント値の初期値を、時短変動回数カウンタ72のカウント値の初期値と等しい値として設定するとともに、残確変時回転数73のカウント値の初期値を0(既に時短状態に移行済みであることを示す値)として設定する(ステップS637)。そして、演出制御用CPU101は、内部状態を時短状態に設定し(ステップS638)、残時短時回転数74のカウント値を可変表示回数表示領域19に表示する(ステップS639)。ステップS639において表示されるカウント値は、ステップS637で設定された残時短時回転数74のカウント値の初期値である。ステップS633の後、ステップS611に移行する。
また、ステップS612で読み出した受信コマンドがその他の演出制御コマンドである場合には、演出制御用CPU101は、1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンド(ステップS102で送信されるコマンド)であるか否かを判定する(ステップS640)。なお、ここでいう「その他の演出制御コマンド」とは、変動パターンコマンド、ステップS102で送信されるコマンドおよびステップS103で送信されるコマンド以外の演出制御コマンドである。その他の演出制御コマンドを受信していて、1つ前に受信した演出制御コマンドが、確変変動回数カウンタ71のカウント値の初期値を示すコマンドであるということは、ステップS103の送信処理が行われなかったことを意味する。従って、ステップS631〜S633の処理は行われているが、残時短時回転数74のカウント値の初期値は設定されていないことになる。そこで、この場合(ステップS640のY)、演出制御用CPU101は、残時短時回転数74のカウント値の初期値として0を設定する(ステップS641)。その後、受信コマンドに対応するフラグをセットする(ステップS665)。
ただし、ステップS612で読み出した受信コマンドが、非特定大当り終了コマンド(ステップS105で送信されるコマンド)である場合、演出制御用CPU101は、残確変時回転数73のカウント値の初期値および残時短時回転数74のカウント値の初期値をそれぞれ0として設定し、内部状態を通常状態に設定すればよい。そして、ステップS611に移行すればよい。
変動パターンコマンドが示す状態と、演出制御用CPU101が認識している内部状態とが異なっているとき、可変表示回数表示領域19に不正確な値が表示されている可能性が高い。本実施形態では、変動パターンコマンドが示す状態と、演出制御用CPU101が認識している内部状態とが異なっている場合、ステップS617で、可変表示回数表示領域19における表示(確変状態または時短状態が終了するまでの残りの可変表示の回数)を消去する。従って、不正確な可変表示回数を表示してしまうことを防止することができる。
また、ステップS618のクリア処理を行わないとすると、以下のような問題が生じることがある。例えば、演出制御用CPU101が確変状態であると認識しているときに、時短状態を示す変動パターンコマンドを受信したとする。この場合、ステップS617で、残確変時回転数73のカウント値の表示を停止する。そして、ステップS619において、変動パターンコマンドに合わせて、内部状態を時短状態にする。そして、残時短時回転数74のカウント値を1減算する処理も行う。すると、次に、時短状態を示す変動パターンコマンドを受信した場合、時短状態が終了するまでの回数を表示することができ、その回数の可変表示終了後には、通常状態に移行し、可変表示回数表示領域19における表示を停止する。しかし、ステップS618の処理を行っていないため、残確変時回転数73のカウント値はクリアされずに、そのまま残ってしまっている。すなわち、時短状態に移行したことを示す値(0)にならずに、ある値を示したままになっている。このとき、ノイズ等が発生して、通常状態であるにもかかわらず、ステップS620からステップS621に移行してしまうと、クリアされなかった残確変時回転数73のカウント値にもとづいて、可変表示回数表示領域19に不正確な回数を表示してしまう。ステップS618のクリア処理を行うことによって、このような不正確な回数を表示するという状況を防止することができる。
上記の実施の形態では、変動パターンコマンドが示す状態と内部状態とが異なる場合、演出制御用CPU101は、可変表示回数表示領域19における表示を停止する(ステップS617を実行)する構成となっている。変動パターンコマンドが示す状態と内部状態とが異なる場合、可変表示回数表示領域19における表示を停止するのではなく、変動パターンコマンドが示す状態にあわせて、確変状態または時短状態が終了するまでの残りの回数を表示するようにしてもよい。この場合、ステップS616までの処理、およびステップS616からステップS620に移行してからの処理は、既に説明した処理と同様である。また、変動パターンコマンドが示す状態と演出制御用CPU101が認識している内部状態とが異なると判定された場合(ステップS616のN)、演出制御用CPU101は、ステップS617の代わりに以下の処理を実行すればよい。
演出制御用CPU101は、変動パターンコマンドが示す状態が確変状態であり、残確変時回転数73のカウント値が0(既に時短状態に移行済みであることを示す値)となっていないならば、変動パターンコマンドが示している確変状態にあわせて、残確変時回転数73のカウント値を可変表示回数表示領域19に表示すればよい。残確変時回転数73のカウント値が0ならば、可変表示回数表示領域19にカウント値を表示しない。また、変動パターンコマンドが示す状態が時短状態であり、残時短時回転数74のカウント値が0(既に通常状態に移行済みであることを示す値)となっていないならば、変動パターンコマンドが示している時短状態にあわせて、残時短時回転数74のカウント値を可変表示回数表示領域19に表示すればよい。残時短時回転数74のカウント値が0ならば、可変表示回数表示領域19にカウント値を表示しない。また、変動パターンコマンドが示す状態が通常状態であるならば、可変表示回数表示領域19の表示を消去する。
ステップS617の代わりに以上の処理を実行したならば、ステップS618以降の処理を実行すればよい。
このように、変動パターンコマンドが示す状態にあわせて、確変状態または時短状態が終了するまでの残りの回数を表示するようにすれば、電源断以外の原因(ノイズ等)によって演出制御用CPU101が認識する内部状態が不正確となってしまった場合であっても、不正確な値が可変表示回数表示領域19に表示されることを防止することができる。
また、ステップS617の代わりに実行する上記の処理において、演出制御用CPU101は、変動パターンコマンドが示す状態が確変状態であり、残確変時回転数73のカウント値が0(既に時短状態に移行済みであることを示す値)となっていない場合、残時短時回転数74のカウント値が予め定めた所定値以下(例えば10回以下)であることを条件に、残確変時回転数73のカウント値を表示してもよい。残時短時回転数74のカウント値が大きい値である場合、演出制御用CPU101が内部状態を不正確に認識しているのではなく、CPU56が送信する変動パターンコマンドが示している状態(この場合、確変状態)が誤っている可能性が高いからである。同様に、演出制御用CPU101は、変動パターンコマンドが示す状態が時短状態であり、残時短時回転数74のカウント値が0(既に通常状態に移行済みであることを示す値)となっていない場合、残確変時回転数73のカウント値が予め定めた所定値以下(例えば10回以下)であることを条件に、残時短時回転数74のカウント値を表示してもよい。残確変時回転数73のカウント値が大きい値である場合、演出制御用CPU101が内部状態を不正確に認識しているのではなく、CPU56が送信する変動パターンコマンドが示している状態(この場合、時短状態)が誤っている可能性が高いからである。
ステップS617の代わりに実行する上記の処理に移行する態様を以下のようにしてもよい。遊技の進行に伴って所定の回数の変動パターンコマンドを受信したときに、それぞれステップS616の判定を行い、所定の可変表示回数分の変動パターンコマンドそれぞれにおいて、変動パターンコマンドが示す状態と内部状態とが異なっていることを条件に、ステップS617の代わりに実行する上記処理に移行するようにしてもよい。すなわち、変動パターンコマンドが示す状態と内部状態とが異なっているという状態が、所定の複数回の可変表示に渡って続いているときに、ステップS617の代わりに実行する上記処理に移行するようにしてもよい。
図12に示されたメイン処理における演出制御プロセス処理(ステップS706)では、演出制御プロセスフラグの値に応じてステップS800〜S805のうちのいずれかの処理が行われる。各処理において、以下のような処理が実行される。
変動パターンコマンド受信待ち処理(ステップS800):コマンド受信割込処理によって、変動時間を特定可能な演出制御コマンド(変動パターンコマンド)を受信したか否か確認する。具体的には、変動パターンコマンドが受信されたことを示すフラグ(変動パターン受信フラグ)がセットされたか否か確認する。変動パターン受信フラグは、コマンド解析処理によって、変動パターン指定の演出制御コマンドが受信されたことが確認された場合にセットされる(ステップS615)。
全図柄変動開始処理(ステップS801):左中右図柄の変動が開始されるように制御する。
図柄変動中処理(ステップS802):変動パターンを構成する各変動状態(変動速度)の切替タイミングを制御するとともに、変動時間の終了を監視する。また、左右図柄の停止制御を行う。
全図柄停止待ち設定処理(ステップS803):変動時間の終了時に、全図柄停止を指示する演出制御コマンド(特別図柄停止の演出制御コマンド)を受信していたら、図柄の変動を停止し停止図柄(確定図柄)を表示する制御を行う。
大当り表示処理(ステップS804):変動時間の終了後、大当り表示の制御を行う。
大当たり遊技中処理(ステップS805):大当たり遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の演出制御コマンドを受信したら、ラウンド数の表示制御等を行う。
上記の実施の形態では、確変変動回数カウンタ71が、確変状態が終了するまでの残りの可変表示の回数を示し、時短変動回数カウンタ72が、時短状態が終了するまでの残りの可変表示の回数を示す場合を説明した。確変変動回数カウンタ71が、確変状態に移行してからの可変表示の実行回数を示すカウンタであり、時短変動回数カウンタ72が、時短状態に移行してからの可変表示の実行回数を示すカウンタである構成としてもよい。以下、この場合の実施形態について説明する。この場合、演出制御用CPU101も、確変状態に移行してからの可変表示の実行回数を示すカウンタおよび時短状態に移行してからの可変表示の実行回数を示すカウンタを使用する。演出制御用CPU101が使用するカウンタであって、確変状態に移行してからの可変表示の実行回数を示すカウンタを、以下、確変時回転数と記す。また、演出制御用CPU101が使用するカウンタであって、時短状態に移行してからの可変表示の実行回数を示すカウンタを、以下、時短時回転数と記す。
本実施形態では、演出制御用CPU101は、確変状態に移行してからの可変表示の実行回数、または、時短状態に移行してからの可変表示の実行回数を可変表示回数表示領域19に表示する。
本実施の形態において、CPU56は、確変変動回数カウンタ71のカウント値が、確変状態において実行する可変表示の回数に達したならば、時短状態に移行する。このとき、確変変動回数カウンタ71のカウント値を0に初期化する。演出制御用CPU101も、確変時回転数のカウント値が、確変状態において実行する可変表示の回数に達したならば、内部状態を時短状態に設定する。このとき、確変時回転数のカウント値を0に初期化する。従って、本実施形態において、「既に時短状態に移行済みであることを示す値(確変状態での識別情報の可変表示の回数がない旨を示す値)」は0である。
また、CPU56は、時短変動回数カウンタ72のカウント値が、時短状態において実行する可変表示の回数に達したならば、通常状態に移行する。このとき、時短変動回数カウンタ72のカウント値を0に初期化する。演出制御用CPU101も、時短時回転数のカウント値が、時短状態において実行する可変表示の回数に達したならば、内部状態を通常状態に設定する。このとき、時短時回転数のカウント値を0に初期化する。従って、本実施形態において、「既に通常状態に移行済みであることを示す値(時短状態での識別情報の可変表示の回数がない旨を示す値)」は0である。
基本回路53に搭載されるCPU56が実行するメイン処理およびタイマ割込処理は、既に説明した処理と同様である(図3および図5参照)。また、電源断検出処理(ステップS20)において、電源断信号が出力されたことを検出した場合に実行する電力供給停止時処理も、既に説明した処理と同様である。従って、本実施形態においても、停電等の電源断が生じた場合、確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値は、RAM55にバックアップされる。
さらに、遊技状態復旧処理(ステップS91〜S98)の処理も、既に説明した処理内容と同様である(図4参照)。従って、電源復旧時に、バックアップされていた確変変動回数カウンタ71のカウント値が0(既に時短状態に移行済みであることを示す値)である場合、CPU56は、そのカウント値0を演出制御用CPU101に送信しない(ステップS95のY)。バックアップされていたカウント値が0でなければ、そのカウント値を演出制御用CPU101に送信する(ステップS95のN)。同様に、電源復旧時に、バックアップされていた時短変動回数カウンタ72のカウント値が0(既に通常状態に移行済みであることを示す値)である場合、CPU56は、そのカウント値0を演出制御用CPU101に送信しない(ステップS97のY)。バックアップされていたカウント値が0でなければ、そのカウント値を演出制御用CPU101に送信する(ステップS97のN)。
また、演出制御用CPU101が実行する復旧時処理は、残確変時回転数73の代わりに確変時回転数を用い、残時短時回転数74の代わりに時短時回転数を用いる点以外は、ステップS721〜S733と同様である。従って、確変変動回数カウンタ71のカウント値を受信したならば、確変時回転数のカウント値として、受信したカウント値を設定する(ステップS721のY、ステップS722)。確変変動回数カウンタ71のカウント値を受信していないならば、確変時回転数のカウント値として0を設定する(ステップS721のN、ステップS723)。また、時短変動回数カウンタ72のカウント値を受信したならば、時短時回転数のカウント値として、受信したカウント値を設定する(ステップS724のY、ステップS725)。時短変動回数カウンタ72のカウント値を受信していないならば、時短時回転数のカウント値として0を設定する(ステップS724のN、ステップS726)。
そして、確変変動回数カウンタ71のカウント値が0より大きければ、内部状態を確変状態に設定し(ステップS727のY、ステップS728)、そのカウント値を可変表示回数表示領域19に表示する(ステップS729)。また、確変変動回数カウンタ71のカウント値が0であるなら(ステップS727のN)、時短変動回数カウンタ72のカウント値が0か否かを判定する(ステップS730)。0より大きければ、内部状態を時短状態に設定し(ステップS731)、そのカウント値を可変表示回数表示領域19に表示する(ステップS732)。また、時短変動回数カウンタ72のカウント値が0ならば、内部状態を通常状態に設定する(ステップS733)。
以上のように、CPU56が実行する電源断検出処理、遊技状態復旧処理、および演出制御用CPU101が実行する復旧時処理は、既に説明した処理と同様である。従って、確変状態や時短状態に移行してからの可変表示の実行回数をカウントする場合であっても、電源断後、復旧したときに、演出制御用CPU101は、正確な回数(確変状態や時短状態に移行してからの可変表示の実行回数)を表示することができる。また、バックアップしていた確変変動回数カウンタ71や時短変動回数カウンタ72のカウント値が0である場合、CPU56は、そのカウント値を送信せず、演出制御用CPU101は、復旧時処理において、カウント値を受信していない場合、確変時回転数や時短時回転数のカウント値を0に設定する。従って、電源復旧時に送受信するコマンドの量を適正な量にすることができ、CPU56の制御負担の増加を抑えることができる。
また、本実施形態において、特別図柄停止図柄設定処理は、既に説明した場合と同様に実行すればよい(図9参照)。ただし、ステップS42において、CPU56は、特別の大当り図柄の種類に応じて、確変状態において実行する可変表示の回数を決定する。具体的には、特別の大当り図柄に対応するランダム3の各値ごとに、確変状態において実行する可変表示の回数を定めたテーブルを用意しておき、そのテーブルからランダム3(特別の大当り図柄を導出したランダム3)に応じた値を読み出すことによって、確変状態において実行する可変表示の回数を決定すればよい。また、ステップS42において、確変変動回数カウンタ71のカウント値の初期値を0として設定すればよい。同様に、ステップS43において、CPU56は、特別の大当り図柄の種類に応じて、時短状態において実行する可変表示の回数を決定する。また、時短変動回数カウンタ72のカウント値の初期値を0として設定する。
また、本実施形態において、変動パターン設定処理は、既に説明した場合と同様に実行すればよい(図10参照)。ただし、ステップS78では、確変変動回数カウンタ71のカウント値を1増加させる。また、ステップS79では、確変変動回数カウンタ71のカウント値が、確変状態において実行する可変表示の回数に達したか否かを判定する。達した場合には、ステップS80に移行し、達していない場合には、ステップS86に移行する。また、ステップS80に移行する場合、確変変動回数カウンタ71のカウント値を0(既に時短状態に移行済みであることを示す値)に初期化する。また、ステップ83では、時短変動回数カウンタ72のカウント値を1増加させる。また、ステップS84では、時短変動回数カウンタ72のカウント値が、時短状態において実行する可変表示の回数に達したか否かを判定する。達した場合には、ステップS85に移行し、達していない場合には、ステップS86に移行する。また、ステップS85に移行する場合、時短変動回数カウンタ72のカウント値を0(既に通常状態に移行済みであることを示す値)に初期化する。
また、本実施形態において、大当り終了処理は、既に説明した場合と同様に実行すればよい(図11参照)。ステップS101では、確変状態において実行する可変表示の回数と、時短状態において実行する可変表示の回数の双方または少なくても一方が0より大きいならば、大当り遊技状態終了後に、確変状態または時短状態に移行すると判定すればよい。そして、ステップS102では、確変状態において実行する可変表示の回数を示すコマンドを送信する。ただし、この回数が0回であるならば、ステップS102の処理を実行しない。ステップS103では、時短状態において実行する可変表示の回数を示すコマンドを送信する。ただし、この回数が0回であるならば、ステップS103の処理を実行しない。なお、ステップS102の処理は、確変状態に移行する前に実行すればよい。ステップS103の処理は、時短状態に移行する前に実行すればよい。
また、本実施形態において、演出制御メイン処理は、既に説明した場合と同様に実行すればよい(図12参照)。
また、本実施形態において、コマンド解析処理は、既に説明した場合と同様に実行すればよい(図14、図15参照)。ただし、演出制御用CPU101は、残確変時回転数73の代わりに確変時回転数を用い、残時短時回転数74の代わりに時短時回転数を用いる。また、ステップS621では、確変時回転数のカウント値を1増加させる。また、ステップS622では、確変時回転数のカウント値が、確変状態において実行する可変表示の回数に達したか否かを判定する。達した場合には、時短状態で実行される可変表示の回数があるか否かを判定する。時短状態で実行される可変表示の回数があるならば、ステップS623に移行し、そうでなければステップS652に移行する。また、ステップS623に移行する場合、確変時回転数のカウント値を0(既に時短状態に移行済みであることを示す値)に初期化する。また、ステップS622で、確変時回転数のカウント値が、確変状態において実行する可変表示の回数に達していないと判定した場合には、ステップS624に移行する。ステップS624では、値を1増加させた後のカウント値を表示させる。
また、ステップS626では、時短時回転数のカウント値を1増加させる。また、ステップS627では、時短時回転数のカウント値が、時短状態において実行する可変表示の回数に達したか否かを判定する。達した場合には、ステップS628に移行し、達していない場合には、ステップS629に移行する。また、ステップS628に移行する場合、時短時回転数のカウント値を0(既に通常状態に移行済みであることを示す値)に初期化する。ステップS629では、値を1増加させた後のカウント値を表示させる。
また、ステップS617〜S619の処理は、既に説明した場合と同様である。ステップS619の処理において、カウント値の更新を行う場合、減算処理ではなく加算処理を行う。例えば、変動パターンコマンドが時短状態を示しているならば、内部状態を時短状態に更新する。このとき、時短時回転数のカウント値を1加算する。
また、ステップS630では、確変状態において実行する可変表示の回数を示すコマンドを受信しているか否かを判定する。このコマンドを受信している場合、ステップS631で、確変状態において実行する可変表示の回数を記憶する処理を行う。そして、確変時回転数のカウント値の初期値として0を設定する。
また、ステップS634では、時短状態において実行する可変表示の回数を示すコマンドを受信しているか否かを判定する。このコマンドを受信している場合、ステップS635に移行する。ステップS635では、1つ前に受信した演出制御コマンドが、確変状態において実行する可変表示の回数を示すコマンドであるか否かを判定する。1つ前に受信した演出制御コマンドが、確変状態において実行する可変表示の回数を示すコマンドであるならば、ステップS636に移行し、そうでないならばステップS637に移行する。ステップS636では、時短状態において実行する可変表示の回数を記憶する処理を行う。そして、時短時回転数のカウント値の初期値として0を設定する。ステップS637では、時短状態において実行する可変表示の回数を記憶する処理を行う。また、確変状態において実行する可変表示の回数を0として記憶する処理を行う。さらに、確変時回転数および時短時回転数のカウント値の初期値として0を設定する。
また、ステップS640では、1つ前に受信した演出制御コマンドが、確変状態において実行する可変表示の回数を示すコマンドであるか否かを判定する。1つ前に受信した演出制御コマンドが、確変状態において実行する可変表示の回数を示すコマンドであるならば、ステップS641に移行し、そうでないならばステップS665に移行する。ステップS641では、時短状態において実行する可変表示の回数を0として記憶する処理を行う。さらに、時短時回転数のカウント値の初期値として0を設定する。
また、ステップS612で読み出した受信コマンドが、非特定大当り終了コマンド(ステップS105で送信されるコマンド)である場合、演出制御用CPU101は、確変状態において実行する可変表示の回数および時短状態において実行する可変表示の回数をそれぞれ0として設定する。また、確変時回転数および時短時回転数のカウント値の初期値として0を設定する。さらに、内部状態を通常状態に設定する。
本実施の形態においても、変動パターンコマンドが示す状態と、演出制御用CPU101が認識している内部状態とが異なっているとき、ステップS617の処理を実行し、可変表示回数表示領域19における表示(確変状態または時短状態に移行してから実行した可変表示の回数)を消去する。従って、不正確な可変表示回数を表示してしまうことを防止することができる。このとき、演出制御用CPU101は、確変時回転数のカウント値や時短時回転数のカウント値が予め定めた所定値以上であることを条件に、可変表示回数表示領域19における表示を消去してもよい。確変時回転数のカウント値や時短時回転数のカウント値が小さな値である場合、CPU56が送信する変動パターンコマンドが示している状態が誤っている可能性が高いからである。
また、既に説明した場合と同様に、遊技の進行に伴って所定の回数の変動パターンコマンドを受信したときに、それぞれステップS616の判定を行い、所定の可変表示回数分の変動パターンコマンドそれぞれについて、変動パターンコマンドが示す状態と内部状態とが異なっている場合に、ステップS617に移行するようにしてもよい。すなわち、変動パターンコマンドが示す状態と内部状態とが異なっているという状態が、所定の複数回の可変表示に渡って続いているときに、ステップS617に移行するようにしてもよい。
また、例えば、ステップS616からステップS617に移行した後に、通常状態になり、その後、ノイズ等が発生して、通常状態であるにもかかわらず、ステップS620からステップS621に移行してしまったとする。しかし、本実施の形態でも、ステップS618のクリア処理を行っているので、ノイズ等が発生して、通常状態であるにもかかわらず、ステップS620からステップS621に移行するようなことが生じたとしても、クリアされなかった確変時回転数のカウント値にもとづいて、可変表示回数表示領域19に不正確な回数を表示してしまうようなことはない。
変動パターンコマンドが示す状態と内部状態とが異なる場合、可変表示回数表示領域19における表示を停止するのではなく、変動パターンコマンドが示す状態にあわせて、確変状態または時短状態に移行してからの可変表示の実行回数を表示するようにしてもよい。この場合、演出制御用CPU101は、ステップS617の代わりに以下の処理を実行すればよい。
演出制御用CPU101は、変動パターンコマンドが示す状態が確変状態であり、確変時回転数のカウント値が0(既に時短状態に移行済みであることを示す値)となっていないならば、変動パターンコマンドが示している確変状態にあわせて、確変時回転数のカウント値を可変表示回数表示領域19に表示すればよい。確変時回転数のカウント値が0ならば、可変表示回数表示領域19にカウント値を表示しない。また、変動パターンコマンドが示す状態が時短状態であり、時短時回転数のカウント値が0(既に通常状態に移行済みであることを示す値)となっていないならば、変動パターンコマンドが示している時短状態にあわせて、時短時回転数のカウント値を可変表示回数表示領域19に表示すればよい。時短時回転数のカウント値が0ならば、可変表示回数表示領域19にカウント値を表示しない。また、変動パターンコマンドが示す状態が通常状態であるならば、可変表示回数表示領域19の表示を消去する。
また、既に説明した場合と同様に、遊技の進行に伴って所定の回数の変動パターンコマンドを受信したときに、それぞれステップS616の判定を行い、所定の可変表示回数分の変動パターンコマンドそれぞれにおいて、変動パターンコマンドが示す状態と内部状態とが異なっていることを条件に、ステップS617の代わりに実行する上記処理に移行するようにしてもよい。すなわち、変動パターンコマンドが示す状態と内部状態とが異なっているという状態が、所定の複数回の可変表示に渡って続いているときに、ステップS617の代わりに実行する上記処理に移行するようにしてもよい。
ステップS617の代わりに以上の処理を実行したならば、ステップS618以降の処理を実行すればよい。
このように、変動パターンコマンドが示す状態にあわせて、確変状態または時短状態に移行してからの可変表示の実行回数を表示するようにすれば、電源断以外の原因(ノイズ等)によって演出制御用CPU101が認識する内部状態が不正確となってしまった場合であっても、不正確な値が可変表示回数表示領域19に表示されることを防止することができる。
また、ステップS617の代わりに実行する上記の処理において、演出制御用CPU101は、変動パターンコマンドが示す状態が確変状態であり、確変時回転数のカウント値が0(既に時短状態に移行済みであることを示す値)となっていない場合、時短時回転数のカウント値が予め定めた所定値以上であることを条件に、確変時回転数のカウント値を表示してもよい。時短時回転数のカウント値が小さい値である場合、演出制御用CPU101が内部状態を不正確に認識しているのではなく、CPU56が送信する変動パターンコマンドが示している状態(この場合、確変状態)が誤っている可能性が高いからである。同様に、演出制御用CPU101は、変動パターンコマンドが示す状態が時短状態であり、時短時回転数のカウント値が0(既に通常状態に移行済みであることを示す値)となっていない場合、確変時回転数のカウント値が予め定めた所定値以上であることを条件に、時短時回転数のカウント値を表示してもよい。確変時回転数のカウント値が小さい値である場合、演出制御用CPU101が内部状態を不正確に認識しているのではなく、CPU56が送信する変動パターンコマンドが示している状態(この場合、時短状態)が誤っている可能性が高いからである。
上記の各実施の形態では、確変変動回数カウンタ71のカウント値の初期値や時短変動回数カウンタ72のカウント値の初期値(あるいは、確変状態や時短状態において実行する可変表示の回数)そのものを、CPU56が演出制御用CPU101に送信している。ステップS42,S43で定めた値そのものを送信するのではなく、例えば、特別の大当り図柄の種類を表すランダム3を演出制御用CPU101に送信して、演出制御用CPU101がランダム3にもとづいて確変変動回数カウンタ71のカウント値の初期値などを定める構成であってもよい。
上記の各実施の形態では、ステップS42で、確変変動回数カウンタ71のカウント値の初期値(または、確変状態において実行する可変表示の回数)を、特別の大当り図柄の種類に応じて定めている。ステップS42では、確変変動回数カウンタ71のカウント値の初期値(または、確変状態において実行する可変表示の回数)を、特別の大当り図柄の種類とは無関係の乱数を用いて、大当り図柄の種類によらずに決定してもよい。同様に、ステップS43では、時短変動回数カウンタ72のカウント値の初期値(または、時短状態において実行する可変表示の回数)を、特別の大当り図柄の種類とは無関係の乱数を用いて、大当り図柄の種類によらずに決定してもよい。
また、上記の各実施の形態では、可変表示回数表示領域19にカウント値を直接表示する場合を示した。残確変時回転数73や残時短時回転数74(あるいは、確変時回転数や時短時回転数)のカウント値を直接表示するのではなく、カウント値の大きさの程度を視覚的に表示してもよい。例えば、演出制御用CPU101が、棒状の図形をLCDに表示させ、カウント値が大きいほど、棒状の図形の長さを長く表示し、カウント値が小さいほど、棒状の図形の長さを短く表示するようにして、カウント値の大きさの程度を視覚的に表示してもよい。
また、上記の各実施の形態では、変動パターンコマンドの送受信に伴って、CPU56が、確変変動回数カウンタ71または時短変動回数カウンタ72を更新し、演出制御用CPU101が、残確変時回転数73または残時短時回転数74(あるいは、確変時回転数または時短時回転数)を更新する場合を示した。CPU56は、特別図柄停止を示す演出制御コマンドを送信したときに、確変変動回数カウンタ71または時短変動回数カウンタ72を更新してもよい。この場合、演出制御用CPU101は、特別図柄停止を示す演出制御コマンドを受信したときに、残確変時回転数73または残時短時回転数74(あるいは、確変時回転数または時短時回転数)を更新すればよい。
上記の各実施の形態において、請求項1に記載の識別情報は、特別図柄である。可変表示手段は、可変表示装置9である。あらかじめ定められている可変表示の実行条件は、始動入賞口14への遊技球の入賞である。その実行条件に対応する可変表示の開始条件は、特別図柄の最終停止および大当り遊技の終了である。特定の表示結果は、大当り図柄である。特定遊技状態は、大当り遊技状態である。特別の表示結果は、左中右の図柄が奇数で揃った状態の大当り図柄である。第1の移行条件は、左中右の図柄が奇数のうちの「1」、「3」、「5」または「7」のいずれかで揃うという条件である。第1の有利状態は、確変状態である。第2の移行条件は、左中右の図柄が奇数のうちの「3」、「5」、「7」または「9」のいずれかで揃うという条件である。第2の有利状態は、時短状態である。遊技制御手段は、CPU56、ROM54およびRAM55である。表示制御手段は、演出制御用CPU101、ROM102、RAM103およびVDP106である。表示結果判定手段は、遊技制御手段のうちステップS41を実行する部分である。第1の可変表示回数設定手段は、遊技制御手段のうちステップS42を実行する部分である。第2の可変表示回数設定手段は、遊技制御手段のうちステップS43を実行する部分である。第1の回数データ送信手段は、遊技制御手段のうちステップS102を実行する部分である。第2の回数データ送信手段は、遊技制御手段のうちステップS103を実行する部分である。各回の識別情報の可変表示に対応する可変表示コマンドは、変動パターンコマンドである。可変表示コマンド送信手段は、遊技制御手段のうちステップS73を実行する部分である。第1の遊技制御手段側カウンタは、確変変動回数カウンタ71である。第1の遊技制御手段側カウンタ設定手段は、遊技制御手段のうちステップS42を実行する部分である。第2の遊技制御手段側カウンタは、時短変動回数カウンタ72である。第2の遊技制御手段側カウンタ設定手段は、遊技制御手段のうちステップS43を実行する部分である。第1の遊技制御手段側カウンタ更新手段は、遊技制御手段のうちステップS78を実行する部分である。第2の遊技制御手段側カウンタ更新手段は、遊技制御手段のうちステップS83を実行する部分である。記憶手段は、RAM55である。第1のカウント値送信手段は、遊技制御手段のうちステップS96を実行する部分である。第2のカウント値送信手段は、遊技制御手段のうちステップS98を実行する部分である。第1の表示制御手段側カウンタは、残確変時回転数73または確変時回転数である。第1の表示制御手段側カウンタ設定手段は、表示制御手段のうちステップS631,S637を実行する部分である。第2の表示制御手段側カウンタは、残時短時回転数74または時短時回転数である。第2の表示制御手段側カウンタ設定手段は、表示制御手段のうちステップS636,S637,S641を実行する部分である。第1の表示制御手段側カウンタ更新手段は、表示制御手段のうちステップS621を実行する部分である。第2の表示制御手段側カウンタ更新手段は、表示制御手段のうちステップS626を実行する部分である。有利状態表示手段は、表示制御手段のうちステップS729,S624,S732,S623,S629を実行する部分である。第1の表示は、残確変時回転数73または確変時回転数のカウント値そのものの表示、または、そのカウント値の大きさの程度を示す表示である。第2の表示は、残時短時回転数74または時短時回転数のカウント値そのものの表示、または、そのカウント値の大きさの程度を示す表示である。
上記の各実施の形態において、請求項2に記載の第1の復旧時カウント値判定手段は、遊技制御手段のうちステップS95を実行する部分である。第2の復旧時カウント値判定手段は、遊技制御手段のうちステップS97を実行する部分である。
上記の各実施の形態において、第1の所定値は、既に第2の有利状態に移行済みであることを示す値である。第2の所定値は、既に通常状態に移行済みであることを示す値である。
上記の各実施の形態において、請求項3および請求項4に記載の、「変動パターンコマンドは、通常状態、第1の有利状態、および第2の有利状態のいずれの状態であるかによって異なるように複数種類設けられ」とは、通常状態、確変状態および時短状態のいずれの状態であるかによって「MODE」データが異なるように変動パターンコマンドが複数種類設けられていることに相当する。状態比較手段は、表示制御手段のうちステップS616を実行する部分である。