以下、本発明の好ましい実施形態について図面を参照して説明する。まず、図1〜図18を用いて、本発明に係る遊技機の一例であるスロットマシン1の構成について説明する。
図1及び図2に示すように、スロットマシン1の筐体は、前扉3と、この前扉3によって前面側を閉じられた裏箱4とから構成されている。なお、裏箱4は基体部やキャビネットとも呼ばれ、木材等を組み立てて、前面側が開口する中空箱形に構成したものである。これらの図1及び図2では図示しないが、前扉3を開けると、その開放が後述するドアスイッチ91によって検知される。このスロットマシン1は、3個のリール21a〜21cに表示されている図柄のうち、所定の図柄の組み合わせを所定のライン上に揃えることにより、所定の枚数の遊技メダルを獲得可能な遊技を提供するものであり、図3に示すように、リール21a〜21c等により構成される図柄表示手段20(リールユニットとも称す)と、ボタンやスイッチ等により構成される操作手段30と、遊技の制御を行う主制御手段100と、遊技に対する演出を行う演出手段40と、この演出手段40を制御する副制御手段200等、から構成されている。
(主制御手段100)
主制御手段100(メイン制御手段とも称す)は、スロットマシン1における遊技の進行に係る全体を統括制御する手段であり、役の抽選を行う当選役決定手段110、リール21a〜21cの駆動(回転及び停止)制御を行うリール制御手段120、全リールが停止したときの有効ライン上の図柄組合せの判定を行う入賞判定手段130、入賞時の遊技メダルの払い出し等を制御する払出制御手段140、出玉率に関する設定値を設定する設定値設定手段150、遊技の進行や状態を制御する遊技状態制御手段160、フリーズ演出の実行制御を行うフリーズ制御手段170、操作手段30を構成するストップボタン33a〜33cの押し順を判定する操作順序判定手段175、遊技に関する情報を外部集中端子板80を介して外部機器(例えば、スロットマシン1を管理するホールコンピュータや各々のスロットマシン1の状態を表示する表示装置等)に出力する外部信号送信手段180、主制御手段100から副制御手段200に制御コマンドを送信する制御コマンド送信手段185、及び、第2乱数発生手段190を有して構成されている。この主制御手段100は、図4に示すように、演算等を行うメインCPU(中央演算処理装置)102と、役の抽選や演出(例えば、フリーズ演出等)の抽選等を行うための乱数値を発生させる乱数発生器103と、メインCPU102が各種制御を行うときに、取り込んだデータ等を一時的に記憶しておくRAM104と、遊技の進行等に必要なプログラムを記憶しておくROM105と、副制御手段200と通信を行うI/F回路106と、が主制御基板101上に取り付けられて構成されており、これらはバス107で接続されてデータの送受信が可能に構成されている。この主制御手段100において、メインCPU102は、ROM105に記憶された遊技用制御プログラムを実行し、遊技の制御を行うように構成されている。なお、メインCPU102には、プログラムの実行で用いる数値等を記憶したり、演算処理の結果を記憶したりするためのレジスタを有しており、以下の説明では、このレジスタを用いた処理について説明するが、これらの処理は一例であって、メインCPU102のレジスタとRAM104とは適宜使用することができる。換言すると、レジスタとRAMはデータを記憶することが可能な記憶領域であることから、記憶手段と称することができる。
また、この主制御基板101は、図2(b)に示すように、裏箱4の内面側の上部(後述する図柄表示手段20の上側)に配置されている。なお、この主制御基板101は、透明な基板ケース内に収容されている。この基板ケースは、主制御基板101に対する不正(ROM交換等)を防止するため、主制御基板101を内部に収容した後、かしめや、溶着(超音波による溶着、UV硬化剤による溶着、電熱による溶着等)により封止されている。この主制御基板101は、後述する副制御基板300と、図示しないハーネスや光ファイバー(電気配線の束)によって電気的に接続されている。
この主制御手段100の出力側(図3中、右側)には、図柄表示手段20が電気的に接続されている。この図柄表示手段20は、円筒外周面に沿って多種の図柄が描かれた回転可能な3個のリール21(左リール21a、中リール21b、右リール21c)、リール駆動手段22(左リール駆動手段22a、中リール駆動手段22b、右リール駆動手段22c)、及び、リール位置検出手段23(左リール位置検出手段23a、中リール位置検出手段23b、右リール位置検出手段23c)を有して構成されている。このリール21は、裏箱4の内面側の中央部に取り付けられたリールベース上に配置されている。そして、3個のリール21a〜21cが、スロットマシン1の前扉3に形成されたリール表示窓11から、上下に連続する3図柄が見えるように配置されている。よって、これらの左リール21a、中リール21b及び右リール21cは、スロットマシン1のリール表示窓11からは、合計9個の図柄(図1に示す図柄90〜98)が見えるように配置されている。
リール21a〜21cの各々には、例えば、図5に示すように0番から19番までの20個の図柄が表示されており、番号が増加する順で変動表示される。なお、この図5に示す図柄及びその配置は一例である。また、図3に示すように、リール駆動手段22(22a〜22c)は、ステッピングモータ等で構成され、リール21(21a〜21c)の各々の回転中心部に連結され、その作動は主制御手段100のリール制御手段120により制御される。さらに、リール位置検出手段23a〜23cは、回転中のリール図柄位置を検出するためのものである。具体的には、各々のリール駆動手段22(22a〜22c)の上方に配置されたリールセンサと各々のリールに設けられた被検知部材(インデックス)により構成されている。被検知部材(インデックス)がこのリールセンサの前を通過したときに、リールセンサでインデックスを検出するように構成されている。これにより、リール21(21a〜21c)が一回転するごとに、それぞれの被検知部材がリールセンサにより検知され、基準となる位置を特定することができ、この基準となる位置に基づいて各々のリール21a〜21cの停止位置を決定することができる。なお、リールセンサとしては、フォトセンサ、磁気センサ、タッチセンサ等を用いることができる。
また、リール表示窓11から見える9つの図柄のそれぞれの後方に、9個のバックランプ44が配置されている。このバックランプ44を点灯することにより、各図柄を強調表示することができる。あるいは、全てのバックランプ44を点灯し、強調したいライン上のバックランプ44の照度を高くし、強調したくないその他のバックランプ44の照度を低くしてもよい。また、後述する入賞役−A1のようにストップボタン33a〜33cの押し順が割り当てられている役に対してその押し順を演出として報知するときに、後述する無効ライン上にあるバックランプ44を点滅させたり、ストップボタン33a〜33cの停止操作毎に複数ある無効ライン上のバックランプ44を、1ラインずつ消灯させたりするように構成してもよい。
また、主制御手段100の入力側(図3中、左側)には、操作手段30が電気的に接続されており、この操作手段30はベットボタン31(1ベットボタン31a及びMAXベットボタン31b)、スタートレバー32、ストップボタン33(左ストップボタン33a、中ストップボタン33b、右ストップボタン33c)、清算ボタン34、電源スイッチ35、設定変更キースイッチ36、及び、リセット/設定スイッチ37を有している。ここで、スタートレバー32、ストップボタン33及び清算ボタン34は、図1に示すように、前扉3の遊技者側に配置されている。また、図2(b)に示すように、電源スイッチ35は、裏箱4の内面側の下部に設けられた電源ユニットに配置されており、設定変更キースイッチ36、及び、リセット/設定スイッチ37は、主制御基板101の右側に隣接するように、この主制御基板101とは別の基板(主制御基板101と電気的に接続されている基板)に実装されている。これらの設定変更キースイッチ36、及び、リセット/設定スイッチ37は、透明なカバーによって覆われており、図示していないが、このカバーを開閉したか否かを検知するための設定ドアスイッチ92が設けられている。なお、設定変更キースイッチ36、及び、リセット/設定スイッチ37は、上述した位置に配置しておく態様だけでなく、少なくとも前扉3が閉じた状態において遊技機の内部の所定位置(遊技者が操作できない位置)にそれぞれ配置されていればよい。また、本実施形態では、リセットスイッチと設定スイッチをリセット/設定スイッチ37として兼用しているが、リセットスイッチと設定スイッチを個々のスイッチとして設けてもよい。換言すると、それぞれ個々のスイッチを設けている場合には、後述する「リセット/設定スイッチ37」を、設定値の選択(更新・変更)をする場合には「設定スイッチ」、エラーを解除する場合には「リセットスイッチ」と置き換えることができる。さらにまた、設定ドアスイッチ92は設けなくてもよい。
スタートレバー32は、リール21a〜21cを始動させるときに操作するレバーであって、始動手段としての機能を有している。また、ストップボタン33(33a〜33c)は、回転しているリール21a〜21cの各々を停止させるときに遊技者が操作するボタンであって、停止手段としての機能を有している。また、ベットボタン31は、遊技者が貯留メダル(後述する「クレジット」)をスロットマシン1に投入する(ベットする)ときに操作するスイッチであって、その操作によって後述する図柄組み合わせラインが有効化される。なお、図1に示すメダル投入口51は、ベットボタン31と同様に、図柄組み合わせラインを有効化するために遊技メダルを投入する部分である。なお、1回の単位遊技にベット可能な枚数を超えて遊技メダルが投入された場合には、所定の枚数の範囲内でこのスロットマシン1の内部(遊技媒体貯留手段141)に電子的な情報として貯留(クレジット)される(例えば、RAM104に記憶される)ように構成されている(以下、単に「貯留」と呼ぶ)。また、清算ボタン34は、スロットマシン1の内部に貯留された遊技メダル及びベットされている遊技メダルを払い出すためのボタンである。また、電源スイッチ35は、このスロットマシン1の電源をオン・オフするためのスイッチである。また、設定変更キースイッチ36およびリセット/設定スイッチ37は、後述する設定値設定手段150で設定値を変更するとき等に用いられる。
また、この主制御手段100の入力側には、投入されたメダルが流路を通過したことを検出するための2つのセンサ(第1投入センサ61及び第2投入センサ62)、遊技メダルを払い出す装置であるホッパー装置から払い出された遊技メダルを検出する払出センサ76、前扉3の開閉を検出するドアスイッチ91、並びに、設定変更キースイッチ36等が格納されたエリアのドアの開閉を検出する設定ドアスイッチ92等が接続されている。払出センサ76の検出結果は払出制御手段140で処理され、ドアスイッチ91及び設定変更キースイッチ36の検出結果は設定値設定手段150で処理される。なお、図2(b)に示すように、裏箱4の内面側の下部には遊技メダルを払い出すためのホッパー装置52が配置されており、メダル投入口51からホッパー装置52に連通する流路53には、遊技メダルをホッパー装置52に貯留するか、払出し口59から排出するかを選定する(どちらにメダル流路を形成するかを選定する)ためのブロッカ60を有したセレクタが配置される。セレクタには第1投入センサ61、第2投入センサ62が配置されている。また、第1投入センサ61,第2投入センサ62は、遊技メダルが流下する過程で、第1及び第2投入センサ61,62が同時に遊技メダルを検出するタイミングがあるように配置されている。
また、この主制御手段100の出力側には、メダル投入口51から投入された遊技メダルの流路53を決定するセレクタ54に設けられたブロッカ60、ホッパーモータ75、獲得数表示器72、貯留数表示器71、状態表示器73、設定値表示器74及び外部集中端子板80が接続されている。ここで、ブロッカ60は、遊技メダルを受け付けない期間にメダル投入口51から投入されたメダルを返却用の流路に導く機能を有している。また、ホッパーモータ75は、ホッパー装置52から遊技メダルを払い出すときに作動する。このホッパーモータ75の動作は、払出制御手段140により制御される。なお、図10に示すように、上述した獲得数表示器72、貯留数表示器71及び状態表示器73は表示基板70上に配置され、さらにこの表示基板70が、図1に示すように、前扉3の遊技者側のリール表示窓11の左側に配置されている。なお、図10において、貯留数表示器71、獲得数表示器72、及び状態表示器73の下側であってスロットマシン1の内部に表示基板70(図10中、点線で示す)が配置されているまた設定値表示器74は、主制御基板101上に設けられている。なお、ホッパー装置52から払い出された遊技メダル、及び、ブロッカ60で返却用流路に導かれた遊技メダルは、前扉3の前面側の下部に設けたれた払出し口59から外部に排出される。
−貯留数表示器71、獲得数表示器72、及び状態表示器73について−
貯留数表示器71は、スロットマシン1に貯留されたメダル枚数(クレジット)を表示するLEDであり、上位桁を表示するデジット1と、下位桁を表示するデジット2とから構成されている。すなわち、貯留数表示器71は、2桁を表示する。ここで、「デジット」とは、表示部(ディスプレイ)を意味し、特に本実施形態では、セブンセグメントディスプレイ(セブンセグメント表示部、いわゆる7セグ)から構成されている。
この貯留数表示器71は、本実施形態では、後述するように「00」〜「50」(整数)の間の数字を表示可能とする。たとえば、メダルが貯留されていない状態では、貯留数表示器71の表示は、「00」となっている。ここで、1枚のメダルが手入れされる(遊技者がメダル投入口51から遊技メダルを投入する)と、当該遊技のためにその1枚のメダルがベットされる。さらに2枚を追加投入すると、当該遊技のために3枚のメダルがベットされる(ベット限界枚数が3枚の場合)。したがって、手入れされたメダルが3枚までのときは、そのメダルはベットされ、貯留されない。さらにメダルが手入れされ続けると、スロットマシン10内部にメダルが貯留されるとともに、その貯留枚数が貯留数表示器71によって表示される。
後述するように、本実施形態では、最大で50枚までのメダルを貯留可能となっている。したがって、貯留枚数が50枚となったとき(貯留数表示器71に「50」と表示されたとき)は、それ以上、メダルは貯留されない。この状態で、仮に、メダル投入口51からメダルが手入れされると、ブロッカ60により、手入れされたメダルは、払出し口59から返却される。
また、獲得数表示器72は、役の入賞時に、払出し数を表示するLEDであり、上位桁を表示するデジット3と、下位桁を表示するデジット4とから構成されている。したがって、獲得数表示器72は、貯留数表示器71と同様に、2桁を表示可能とする。なお、獲得数表示器72は、通常は獲得数を表示するが、エラー発生時にはエラーの内容(種類)を表示するLEDとして機能するため、「獲得数(又はエラー)表示器72」と称する場合もある。
この獲得数表示器72は、役の入賞時に、払い出されるメダル枚数を表示する。さらに、獲得数表示器72は、エラー発生時には、それまで表示していた獲得数に代えて、エラーコードを表示する。また、本実施形態では、押し順が割り当てられた役に対する正解押し順の情報である指示番号(指示態様とも称す)をこの獲得数表示器72に表示するように構成されている。なお、獲得数表示器72は、払い出されるメダルがないときは、表示は「00」であるが、たとえば入賞役02が入賞して7枚のメダルが払い出されると、獲得数表示器72の表示は、「00」から「07」となる。また、獲得数表示器72は、払い出されるメダルがないときは、消灯するように制御してもよい。
ここで、メダル払出しのある役(リプレイを除く)が入賞してその役に対応するメダルが払い出されるときは、払出し口59から払い出されることよりも優先して、スロットマシン1の内部にメダルが貯留される。たとえば、入賞役02に入賞する前の貯留枚数が「10」であるときは、入賞役02の入賞により、獲得数表示器72の表示が「00」から「07」に更新されるとともに、貯留数表示器71の表示が「10」から「17」に更新される。
さらにまた、役の入賞時に、貯留枚数が「50」を超えるときは、「50」を超えた分については払出し口59から払い出さされる。たとえば、役の入賞前に貯留枚数が「47」であり、入賞役01の入賞によって7枚のメダルが払い出されるとき、3枚は貯留されて貯留枚数が「50」となり、「50」を超える4枚については払出し口59から払い出される。
さらに、リプレイ(再遊技役)の入賞時は、メダルの貯留及び払出しは行われず、当該遊技でベットされていた枚数のメダルが再遊技のために自動ベットされる。たとえば、当該遊技を2ベット(2枚)で行い、リプレイが入賞したときは、2枚のメダルが自動ベットされる。同様に、当該遊技を3ベット(3枚)で行い、リプレイが入賞したときは、3枚のメダルが自動ベットされる。そして、リプレイの入賞に基づく自動ベットは、再遊技を行うためのメダルの投入であるので、その後に精算(返却)操作を行っても、当該メダルを精算することはできない。
なお、「遊技機の認定及び型式の検定等に関する規則」では、リプレイに対応する図柄の組合せが有効ラインに停止したときは、再遊技に係る条件装置の作動であって「入賞」ではないと解釈されている。しかし、本願(本明細書等)では、リプレイについても役の1つとして扱い(再遊技役)、リプレイに対応する図柄の組合せが有効ラインに停止したことを「リプレイの入賞」と称する。
図10において、状態表示器73は、7個のLED(73a〜73g)から構成されている。リプレイ表示LED73aは、リプレイの入賞時に点灯するLEDであり、リプレイの入賞に基づく自動ベットが行われると、ほぼ同時に、リプレイ表示LED73aが点灯し、自動ベット状態であることを遊技者に知らせる。
なお、再遊技役01のような通常のリプレイ(ノーマルリプレイ)の入賞時には、全リール21の停止後、すぐにメダルが自動投入され、リプレイ表示LED73aが点灯する。これに対し、所定の再遊技役(例えば、後述する再遊技役05)の図柄の組み合わせが有効ライン上に停止したとき(入賞したとき)に、フリーズが実行される構成のときは、このフリーズ中は、リプレイ表示LED73aは消灯状態を維持する。そして、フリーズが解除され、メダルの自動投入が行われると、リプレイ表示LED73aが点灯する。このフリーズの解除条件としては、所定時間(たとえば5秒)の経過だけでなく、第1投入センサ61によりメダルを検知したことを解除条件としてもよい。このとき、第1投入センサ61により検知したメダルを正常のメダル投入とするため、第1投入センサ61によるメダル検知を条件に(かつ、貯留枚数が50枚でないことを条件に)ブロッカ60をオンにするようにしてもよい。
さらに、上述した所定の再遊技役の入賞時は、フリーズを伴わなくてもよい。その場合において、所定の条件(たとえば、第1投入センサ61によりメダルを検知したこと、スタートレバー31の操作を検知したこと、又はベットボタン31の操作を検知したこと、の少なくとも1つ)を満たしたことにより、リプレイ表示LED73aを点灯するように構成することもできる。また、同様の条件により、メダルの自動投入処理が行われるように構成することもできる。
投入可表示LED73bは、メダルを投入可能な状態のときに点灯するLEDである。すなわち、遊技が終了し、次遊技に移行するためのメダルが投入される前に点灯し、いわゆるベット待ち状態を示す。なお、本実施形態ではリプレイが作動した後であっても貯留枚数に応じてベット可能なときには点灯する。
精算表示LED73cは、本実施形態では、精算処理中に点灯するLEDである。貯留メダル及び/又はベットメダル(リプレイ入賞時の自動ベットを除く)を有する状態で、清算ボタン34がオンされたときに、メダルを実際に払い出している最中に点灯する。
遊技開始LED73dは、メダルが投入され、スタートレバー32を操作可能な状態となったときに点灯するLEDである。したがって、メダルがベットされていない(又はリプレイの自動投入がされていない)状態では点灯しない。
(1枚、2枚、3枚)投入表示LED73e〜73gは、それぞれ、ベットされているメダル枚数を表示するLEDであり、1枚のメダルがベットされたときは「1BET(1枚投入表示LED73e)」が点灯し、2枚のメダルがベットされたときは、「1BET(1枚投入表示LED73e)」及び「2BET(2枚投入表示LED73f)」が点灯し、3枚のメダルがベットされたときは、「1BET(1枚投入表示LED73e)」、「2BET(2枚投入表示LED73f)」及び「3BET(3枚投入表示LED73g)」が点灯する。
なお、表示基板70をベットボタン31の側方に配置することも可能である。
(当選役決定手段110)
当選役決定手段110は、図4に示す乱数発生器103(以降の説明では、この乱数発生器103を「第1乱数発生手段」とも呼ぶ)から第1の乱数値を取得し、この乱数発生器103とは異なる第2乱数発生手段190から第2の乱数値を取得して、これらの第1の乱数値及び第2の乱数値を演算により処理して第3の乱数値を生成し、この第3の乱数値と、複数の役の各々の当選確率が乱数値の取り得る範囲に対応して定義された役抽選テーブルとにより役に当選したか否かを判定するように構成されている(以下、役抽選テーブルに設定された役毎の当選確率のデータを「確率データ」と呼ぶ)。この当選役決定手段110による当選役の決定方法については後述する。ここで、本実施形態に係るスロットマシン1の役としては、図6に示すように、特別役、入賞役、及び、再遊技役が設けられている。この当選役決定手段110は、何らかの役に当選したときは、後述するフラグ情報記憶手段111に対して当選した役のフラグをオンにする。このように、当選役決定手段110は、当選役を決定することにより、ストップボタン33a〜33cの操作態様(操作タイミング、操作順序)に応じて停止表示可能な図柄位置(停止図柄)を決定するための情報を決定する機能を有している。
ここで、特別役とは、その役に対応する図柄の組み合わせが後述する有効ライン上に停止(入賞)すると、遊技メダルは払い出されないが、特別遊技状態に移行されるという役であり、本実施形態においては、BB(ビックボーナス)としてBB1、BB2、BB3が設けられている。このBBは特別遊技の1つであるBB遊技(いわゆる、第一種特別役物に係る役物連続作動装置が作動する遊技)に移行させる役である。例えば、本実施形態に係るスロットマシン1においては、遊技メダルが3枚ベットされて遊技が行われた場合には、図5に示す特別役(BB1〜BB3)の図柄の組み合わせが有効ライン上に停止(入賞)すると、BB遊技に移行するように構成されている。ここで、BB遊技は、後述するRB遊技を、遊技メダルの払出枚数が所定枚数(例えば、BB1は334枚、BB2は238枚、BB3は60枚)を超えるまで繰り返し行うことができる遊技である。
なお、特別役はこのBBに限定されることはなく、MB(ミドルボーナス)、RB(レギュラーボーナス)、SB(シングルボーナス)、CB(チャレンジボーナス)等を設けることもできる。MBは特別遊技の1つであるMB遊技(いわゆる、第二種特別役物に係る役物連続作動装置が作動する遊技)に移行させる役である。このMB遊技は、当選役決定手段110による抽選結果に関わらず全ての小役が当選した状態となり、遊技メダルの払出枚数が所定枚数(例えば、30枚)を超えるまで繰り返し行うことができる遊技である。また、このMB遊技においては、後述するリール制御手段120は、3つのリール21a〜21cのうちの少なくとも1つのリールに対して、ストップボタン33(33a〜33c)が押されたときから、1コマ分以内で、そのリール21a〜21cの回転を停止させるよう定められている。このとき、MB遊技においてベットされる遊技メダルの枚数を、MB遊技以外のときとは異なる枚数(例えば2枚)にするように構成することも可能である。また、RBは特別遊技の他の1つであるRB遊技(いわゆる、第一種特別役物に係る条件作動装置が作動する遊技)に移行させる役である。このRB遊技は、所定小役が高確率で当選するボーナスゲームを第1の回数(例えば2回)行うか、第2の回数(例えば2回)入賞するまで繰り返し行うことができる遊技である。また、SBの図柄の組み合わせが有効ライン上に揃うと、所定小役が高確率で当選するボーナスゲームを1遊技行うSB遊技が行われるが、このSBは遊技状態を制御するための役として用いられることもある。また、CBの図柄の組み合わせが有効ライン上に揃うと、抽選結果に関わらず全ての入賞役が当選した状態となり、1遊技の結果が得られた場合に終了する。このCB遊技において、後述するリール制御手段120は、3つのリール21a〜21cのうちの少なくとも1つのリールに対して、ストップボタン33(33a〜33c)が押されたときから1コマ分以内で、そのリール21a〜21cの回転を停止させるように定められている。
また、入賞役とは、その図柄の組み合わせが有効ライン上に停止表示されると、予め定められた枚数の遊技メダルが払い出される役であり、図6に示すように、入賞役の種類に応じて、その役に対応する図柄の組み合わせ及び払い出される遊技メダルの枚数が設定されている。この本実施形態に係るスロットマシン1においては、入賞役として入賞役01〜24が設定されている。また、再遊技役(リプレイ)とは、この再遊技役の図柄の組み合わせが有効ライン上に停止表示された遊技で、投入したメダル枚数を維持して再度遊技が行えるようにした役である。本実施形態に係るスロットマシン1においては、図6に示すように再遊技役01〜08が設定されている。なお、再遊技役の図柄の組み合わせが有効ライン上に停止表示された次の遊技においても、メダル投入口51からの遊技メダルの投入は可能である。
この当選役決定手段110は、図3に示すように、抽選結果等を記憶するフラグ情報記憶手段111、及び、当選役決定手段110で特別役に当選したときに、後述する有効ライン上に対応する図柄の組み合わせが停止表示されるまで(入賞するまで)当選した状態を保持する特別役持ち越し手段112を有している。なお、先述したSBとCBは、当選した遊技で当選したことを示す情報をクリアする(持ち越さない)。
(フラグ情報記憶手段111)
フラグ情報記憶手段111は、当選役決定手段110によって何らかの役に当選したとき(後述するように、役抽選処理S5080において当選した役の条件装置検索番号が条件装置番号バッファに設定されたとき)に、当選した役の種類及びそのフラグをオンにして記憶する。なお、特別役を有するスロットマシンにおいては、フラグ情報記憶手段111に記憶されている情報が消去されるタイミング(当選フラグがオフとなるタイミング)は、特別役とそれ以外の役とで異なっている。すなわち、特別役の場合、フラグ情報記憶手段111に記憶されている情報は、特別役(SB、CB以外)の図柄の組み合わせが有効ライン上に停止表示されたことを条件として消去され、特別役(SB、CB以外)の図柄の組み合わせが有効ライン上に停止表示されなければ次遊技以降、当該図柄の組み合わせが有効ライン上に停止表示されるまで持ち越されるのに対し、それ以外の役の場合には、その役に対する図柄の組み合わせが有効ライン上に停止表示されるか否かに関わらず、当該遊技の終了の際に消去され、次遊技まで持ち越されることはない。なお、MB遊技を有するスロットマシン1においては、MB遊技中は、当選役決定手段110の抽選結果に拘わらず、特別役を除く全ての払い出しを有する役(小役)の当選フラグをオンすることができる。但し、抽選結果で再遊技役(リプレイ)が当選したときは、その再遊技役のフラグをオンにするように構成してもよい。このように、フラグ情報記憶手段111は、当選役決定手段110で決定された役を記憶する決定役記憶手段としての機能を有している。
(特別役持ち越し手段112)
特別役持ち越し手段112は、当選役決定手段110により特別役に当選し、フラグ情報記憶手段111に、この特別役に対するフラグが立てられると、当選した特別役の図柄が有効ライン上に停止表示されるまで、その当選役を持ち越し(フラグが立てられた状態を維持し)、特別役の図柄の組み合わせが有効ライン上に停止表示されると特別役の持ち越しを終了する(フラグが下げられる)。なお、特別役のうちSB及びCBは、当選した遊技で図柄を停止表示させることができないと、フラグは下げられる(次遊技に持ち越すことはできない)。また、特別役を持ち越し中(後述する内部中遊技状態であるRT4遊技状態にあるとき)に、当選役決定手段110による役抽選の結果、入賞役が当選したときは、特別役と入賞役のフラグが立っている状態であり、ストップボタン33a〜33cの操作態様によって当選フラグのうちのいずれかの図柄の組み合わせを有効ライン上に停止表示させることができる。
(リール制御手段120)
リール制御手段120は、操作手段30のスタートレバー32及びストップボタン33a〜33cが操作されたタイミングに応じて、リール21a〜21cの回転の開始及び停止の制御を行う。より具体的には、リール制御手段120は、スタートレバー32が操作されると、リール21a〜21cを回転させ、その後、ストップボタン33a〜33cが操作される毎に、後述する遊技状態制御手段160で管理されている遊技状態、当選役決定手段110による抽選の結果、並びに、ストップボタン33(左ストップボタン33a、中ストップボタン33b、右ストップボタン33c)が操作されたタイミングに基づいて、当該操作がされたストップボタン33a〜33cに対応するリール21a〜21cの停止位置を決定すると共に、リール駆動手段(ステッピングモータ)22a〜22cの駆動を制御して、その決定した位置でリール21a〜21cの各々を停止させる。
ここで、スロットマシン1のリール表示窓11に表示されているリール21a〜21cには、図柄組み合わせラインが設けられている。この「図柄組み合わせライン」とは、リール21a〜21cの停止時における図柄の並びラインであって、図柄の組み合わせを形成させるラインである。例えば、本実施形態では、図1に示すように、リール表示窓11に表示される3×3の9個の図柄停止位置90〜98に対して、それぞれのリール21a〜21cから1個ずつの図柄停止位置を選択してそれらを結ぶラインとして構成される。
さらに、これらの図柄組み合わせラインの中から、有効ラインと無効ラインとが設定される。「有効ライン」とは、本実施形態では、いずれかの役に対応する図柄の組み合わせがそのライン上に停止したときに、入賞と判定されその役に応じた利益が遊技者に付与されるラインである。一方、「無効ライン」とは、図柄組み合わせラインのうち、有効ラインとして設定されないラインであって、いずれかの役に対応する図柄の組み合わせがそのライン上に停止した場合であっても、その役に応じた利益の付与(遊技メダルの払い出し等)を行わないラインである。すなわち、無効ラインは、そもそも図柄の組み合わせの成立対象となっていないラインである。これらの有効ライン及び無効ラインは、遊技者によって投入された遊技メダルの枚数に応じて設定されるように構成することもできるし、予め決めておくこともできる。なお、本実施形態に係るスロットマシン1では、図1に示すように、左リール21aの中段の図柄停止位置91、中リール21bの中段の図柄停止位置94、及び、右リール21cの中段の図柄停止位置97を結ぶラインLが有効ラインとして設定されている。なお、この図柄組み合わせラインの構成は一例であって、本発明がこの構成に限定されることはない。
上述したリール駆動手段22a〜22cの各々を構成するステッピングモータは、特に図示していないが、主制御手段100から供給される駆動パルスにより励磁する4相のコイル(固定子)を有している。そして、4相のコイルのうち、同時に2つの相が励磁した状態となる2相励磁と、4相のコイルのうちの1つの相が励磁した状態となる1相励磁とが交互に繰り返される1−2相励磁により、ローター(回転子)が回転するように構成されている。また、このステッピングモータにはリール21a〜21cの制御用に所定のステップ数が定められており、リール21a〜21cの各図柄に対してステップ数を割り当てることで、停止を制御するように構成されている。
ここで、本実施形態に係るスロットマシン1が有するステッピングモータ(リール駆動手段22a〜22c)におけるステップ数の割り当てについて説明する。このステッピングモータは、全ステップ数として例えば336ステップ(=21×16)が設定され、かつ、定速状態の回転速度が80rpmとなっている。また、このスロットマシン1では、ストップボタン33a〜33cが操作された時点から所定の時間Ts(例えば、190ms)以内に、かつ、当該時点から最大5個の図柄の範囲内で、リール21a〜21cの回転を停止させるように構成されている。
例えば、リール21a〜21cとして、周囲に21個の図柄が配置されたリールを使用する場合には、各図柄に対して、均等に16ステップを割り当てることができる。そして、上述したように、ステッピングモータの回転速度は80rpmであることから、1ステップ当たりの制御時間は2.23msとなる。すると、ストップボタン33a〜33cの各々が操作された時点から最大で5図柄先で停止させるとすると、5図柄分のステップ数は80ステップ(=16×5)であるため、ストップボタン33a〜33cが操作されてから対応するリール21a〜21cが停止するまでの時間は、178.4ms(=2.23×80)となる。なお、ストップボタン33a〜33cの操作タイミングによっては、1ステップ分、遅れて停止の処理が行われる可能性があるが、これを考慮しても、ストップボタン33a〜33cが操作されてから対応するリール21a〜21cが停止するまでの時間は、最大で180.63ms(=178.4+2.23)となり、190ms以内に収めることができる。
しかし、本実施形態に係るスロットマシン1のリール21a〜21cには、上述したように、周囲に20個の図柄が表示されており、各図柄に対して均等にステップ数を割り当てることができない。また、21個の場合よりも図柄の数が1個減ることにより、割り当てられるステップ数が多くなる図柄が必要となるため、ステップ数の割り当てが偏ると、ストップボタン33a〜33cが操作された時点から最大で5図柄先で停止させようとした場合、190ms以内に停止させることができなくなるおそれがある。そのため、本実施形態に係るスロットマシン1では、全ステップ数として設定されている336ステップを20で除算したときの商M(すなわち16)及び余りP(すなわち16)に基づき、20個の図柄のうち、連続する5個の図柄の範囲のいずれにもM+1ステップ(すなわち、17ステップ)を割り当てたP/4個(すなわち、4個)の図柄と、Mステップ(すなわち、16ステップ)を割り当てた(20−P)/4個(すなわち、1個)の図柄とが含まれるように構成している。具体的には17ステップ、17ステップ、17ステップ、16ステップ、17ステップという並びを4回繰り返すように、リール21a〜21cの各図柄に対してステップ数を割り当てている。
このように各リール21a〜21cにステップ数を割り当てることにより、20個の図柄のうち、いずれの連続する5個の範囲においても17ステップが割り当てられた4個と16ステップが割り当てられた1個が含まれることとなるため、5個の図柄の範囲におけるステップ数の合計は84ステップ(=17×4+16)となり、停止時間を190ms以内に収めることができる。
また、上述したように、当選役決定手段110で決定される役に特別役が含まれるスロットマシン1のリール制御手段120は、特別役に当選し、特別役持ち越し手段112によりその特別役が持ち越されている遊技において、入賞役(小役)や再遊技役に当選しているときは、これらの役を優先して有効ライン上に停止させるようにリール21a〜21cの作動を制御するように構成することができる。具体的には、再遊技役が当選しているときは他の当選役に優先して必ずこの再遊技役の図柄の組み合わせが有効ライン上に停止表示される。また、入賞役については、特別役に優先して図柄の組み合わせが有効ライン上に停止表示するように構成することができる。なお、このようなリール21a〜21cを停止させる際の制御は、後述するようにリール制御用の停止テーブルを用いて行われる。
また、リール制御手段120は、前の遊技と次の遊技との間隔が所定の時間(最小遊技時間)T0以上になるようにリール21a〜21cの作動を制御するように構成されている。すなわち、スタートレバー32が操作されてリール21a〜21cが回転を開始したときから最小遊技時間T0が経過した後に次の遊技が開始されたとき(前回の遊技においてスタートレバー32が操作された時刻から時間T0が経過した時刻よりも後の時刻において再びスタートレバー32が操作されたとき)は、そのスタートレバー32の操作に応じてリール21a〜21cの回転を開始させる。しかし、前回の遊技においてスタートレバー32が操作された時刻から最小遊技時間T0が経過する時刻より前の時刻においてスタートレバー32が操作されたときは、リール制御手段120は、スタートレバー32が操作された時点ではリール21a〜21cの回転は開始させず、最小遊技時間T0が経過した時点においてリール21a〜21cの回転を開始させる。なお、この最小遊技時間T0としては、例えば、4.1秒が設定される。
ここで、本実施形態に係るスロットマシン1において、入賞役は、上述したように入賞役01〜24の24個の役から構成されている。この入賞役01〜24は、図6に示すようにそれぞれの図柄の組み合わせが異なるように構成されている。なお、図6において、左中右の各リールに停止する図柄をこの順でカギ括弧(「」)でくくって表示しており、一つのカギ括弧内でスラッシュ(/)で区切られた図柄は、それぞれの図柄が当該役を構成していることを示している。例えば、図5において、入賞役02の図柄の組み合わせは「リプレイA/リプレイB」−「ベル」−「チェリー」と表記されているが、これは、「リプレイA」−「ベル」−「チェリー」(左リール21aの中段に「リプレイA」の図柄、中リール21bの中段に「ベル」の図柄、右リール21cの中段に「チェリー」の図柄)と、「リプレイB」−「ベル」−「チェリー」(左リール21aの中段に「リプレイB」の図柄、中リール21bの中段に「ベル」の図柄、右リール21cの中段に「チェリー」の図柄)と、を含むことを示している。
また、本実施形態に係るスロットマシン1は、それぞれの役に対して複数の図柄の組み合わせが対応付けられている場合がある(例えば、入賞役02〜10、13〜16、20〜24)。なお、入賞役20の中リール21bの図柄として示す「any」は、この中リール21bに配置された図柄のいずれでもよいことを示している。
また、この入賞役01〜24に対しては、図7に示すように、これらの入賞役01〜24を組み合わせた(重複当選されるように構成された)17個の当選役が割り当てられている(入賞役−A1〜入賞役−G)。この図7において、当選役の括弧内は、当選役である入賞役に割り当てられた入賞役01〜24を示し、例えば、当選役として入賞役−A1が決定されたときは、入賞役01、入賞役07、入賞役13及び入賞役19が重複して当選することを示している。また、入賞役−Gは、上述したBB遊技が実行されているときに当選する役であり、入賞役01〜24の全てが当選する役である。このように、本実施形態においては、入賞役を含む当選役においては、上述したように入賞役が重複当選する構成と、入賞役−C、Dのように、いずれかの入賞役が単独当選する当選役も含むように構成されている。
そして、図8(a)に示すように、これらの当選役のうち、入賞役−A1〜A6、入賞役−B1〜B6に対して、ストップボタン33a〜33cの押し順が割り当てられている。以下、入賞役−A1〜A6及び入賞役−B1〜B6を「押し順ベル」と呼ぶ。また、入賞役−A1〜A6及び入賞役B1〜B6においては7枚の遊技メダルが払い出される役(以下「7枚役」と呼ぶ)の図柄の組み合わせが有効ライン上に停止する押し順を「正解押し順」と呼ぶ(また、1枚の遊技メダルが払い出される役を以下「1枚役」と呼ぶ)。この図9において、たとえば「左中右」は、第1停止として左ストップボタン33aが操作され、第2停止として中ストップボタン33bが操作され、第3停止として右ストップボタン33cが操作される場合を示している。また、「左**」は、第1停止として左ストップボタン33aが操作されるが、第2停止及び第3停止は中ストップボタン33b及び右ストップボタン33cの操作順序は任意であることを示している。
上述したように、リール制御手段120は、ストップボタン33a〜33cの各々が操作されると、対応するリール21a〜21cを、その操作がされたときに、リール表示窓11の中段に相当する位置にある図柄を含めて5図柄以内に停止するように構成されている。図5に示すように、本実施形態に係るスロットマシン1では、左リール21a〜右リール21cの何れにおいても、「ベル」の図柄は、互いの間隔が5図柄以内になるように配置されている。すなわち、ストップボタン33a〜33cがどのようなタイミングで操作されても有効ライン上に「ベル」の図柄を引き込んで停止表示させることができる。したがって、これらのリール21a〜21cの各々がどのような回転位置にあったとしても、ストップボタン33a〜33cの操作がされると、リール制御手段120は、有効ライン上に、入賞役01を構成する複数の図柄の組み合わせの何れかを有効ライン上に停止させることができる。同様に、「リプレイA」または「リプレイB」の図柄は、左リール21a〜右リール21cの何れにおいても、互いの間隔が5図柄以内になるように配置されている。右リール21cにおける「チェリー」の図柄も同様である。したがって、これらのリール21a〜21cの各々がどのような回転位置にあったとしても、ストップボタン33a〜33cの操作がされると、リール制御手段120は、有効ライン上に、入賞役02を構成する複数の図柄の組み合わせの何れかを有効ライン上に停止させることができる。また、中リール21bは、5図柄以内に「赤7」、「青7」、「バー」、「キャラ」の図柄のいずれかが配置されている。すなわち、中ストップボタン33bがどのようなタイミングで操作されても有効ライン上に「赤7」、「青7」、「バー、「キャラ」の図柄のいずれかを引き込んで停止表示させることができる。右リール21cにおける「バー」、「スイカ」、「リプレイB」の図柄と右ストップボタン33cの操作タイミングとの関係も中リール21b及び中ストップボタン33bと同じである。したがって、これらのリール21a〜21cの各々がどのような回転位置にあったとしても、ストップボタン33a〜33cの操作がされると、リール制御手段120は、有効ライン上に、入賞役24を構成する複数の図柄の組み合わせの何れかを有効ライン上に停止させることができる。このとき、入賞役24の図柄の組み合わせのいずれが中段に停止しても、図4から明らかなように、必ず下段に「ベル」−「ベル」−「ベル」の図柄が揃うことになる。
以下に、押し順ベルが当選したときのリール制御手段120による停止制御の例として、入賞役−A1が当選役である場合について、ストップボタン33a〜33cの押し順毎に説明する。なお、図7に示すように入賞役−A1に対しては、入賞役01、入賞役07、入賞役13及び入賞役19が重複当選し、その正解押し順(7枚役である入賞役01の図柄の組み合わせが有効ライン上に揃う押し順)は「左中右」である。
−左中右の順でストップボタン33a〜33cを操作した場合−
当選役として入賞役−A1が決定されたときに、左中右の順でストップボタン33a〜33cが操作される、すなわち、第1停止として左ストップボタン33aが操作され、第2停止として中ストップボタン33bが操作され、第3停止とし右ストップボタン33cが操作されると、各々のストップボタン33a〜33cの操作において、リール制御手段120は「枚数優先停止制御」に従って、有効ライン上に入賞役01の図柄の組み合わせを停止させ7枚の遊技メダルの払い出しを行う(図8(a)の「○」)。具体的には、第1停止である左ストップボタン33aの操作時に、左リール21aの中段に「ベル」の図柄を停止表示させ、第2停止である中ストップボタン33bの操作時に、中リール21bの中段に「ベル」の図柄を停止表示させ、第3停止である右ストップボタン33cの操作時に、右リール21cの中段に「ベル」の図柄を停止表示させる。ここで、「枚数優先停止制御」とは、重複当選している複数の入賞役のうち、最も払い出し枚数が多い役に対応する図柄の組み合わせが有効ライン上に停止表示されるようにリール21a〜21cを停止制御することを指す。本実施形態において、入賞役−A1で当選する入賞役のうち、払い出される遊技メダルの枚数が最も多いのは、図6に示すように、7枚の遊技メダルが払い出される入賞役01である。
−左右中の順でストップボタン33a〜33cを操作した場合−
左右中の順でストップボタン33a〜33cが操作された場合も、リール制御手段120は「枚数優先停止制御」に従って、有効ライン上に入賞役01の図柄の組み合わせを停止させ7枚の遊技メダルの払い出しを行う(図8(a)の「○」)。すなわち、第1停止である左ストップボタン33aの操作時に、左リール21aの中段に「ベル」の図柄を停止表示させ、第2停止である右ストップボタン33cの操作時に、右リール21cの中段に「ベル」の図柄を停止表示させ、第3停止である中ストップボタン33bの操作時に、中リール21bの中段に「ベル」の図柄を停止表示させる。
−中左右の順でストップボタン33a〜33cを操作した場合−
第1停止である中ストップボタン33bの操作時に、リール制御手段120は「個数優先停止制御」に従って、中リール21bの中段(有効ライン上)に停止させる図柄を決定する。ここで、「個数優先停止制御」とは、1つのリール(21a〜21cの各々)の停止受付時に、停止可能な範囲内でその図柄を有効ラインに停止させたときに入賞可能性を有する役の数が最も多くなるように、リール21a〜21cを停止制御することを指す(一つの役に複数の図柄の組み合わせが割り当てられているときは、図柄の組み合わせ毎に1個の役と考える)。本実施形態に係るスロットマシン1の場合、入賞役−A1を構成する図柄の組み合わせのうち、中リール21bに「ベル」、「キャラ」、「スイカ」、「バー」の図柄を含むものは各々1つであるが、「ブランク」の図柄を含むものは2つである。また、中リール21bにおいて、「ブランク」の図柄は中ストップボタン33bの操作タイミングに関わらず、必ず有効ライン上に引き込んで停止表示させることができる。したがって、リール制御手段120は、第1停止である中ストップボタン33bの操作に対して、中リール21bの中段(有効ライン上)に「ブランク」の図柄(入賞役07を構成する図柄)を停止表示させる。
次に、第2停止である左ストップボタン33aの操作時点で、中リール21bの中段に「ブランク」の図柄が停止しているため、左リール21aの中段に「リプレイA」の図柄を停止表示させることで、入賞役07の図柄の組み合わせを有効ライン上に揃えることができる。したがって、リール制御手段120は、左ストップボタン33aが操作されたときに、「リプレイA」の図柄を停止表示させることができるときは、この図柄を左リール21aの中段に引き込んで停止表示させる。一方、引き込むことができないときは、例えば、「リプレイB」の図柄を左リール21aの中段に停止表示させる。
そして、第3停止である右ストップボタン33cが操作される時点で、左リール21aの中段に「リプレイA」の図柄が停止表示され、中リール21bの中段に「ブランク」の図柄が停止表示されているときは、リール制御手段120は、右リール21cの中段に「スイカ」の図柄を停止表示させることができるときは、この図柄を右リール21cの中段に引き込んで停止表示させる。一方、引き込むことができないとき、及び、左リール21aの中段に「リプレイB」の図柄が停止表示されているときは、「リプレイA」の図柄を右リール21cの中段に停止表示させることにより、特定図柄03の図柄の組み合わせを有効ライン上に停止表示させる(図8(a)の「△or×」)。
ここで、図5に示すように、左リール21aにおいて「リプレイA」の図柄は、1番及び16番に配置されている。そのため、後述するように、11番〜15番の図柄が左リール21aの中段にあるときに左ストップボタン33aが操作されると、16番の「リプレイA」の図柄を左リール21aの中段に停止させることができる。また、16番〜0番の図柄が左リール21aの中段にあるときに左ストップボタン33aが操作されると、1番の「リプレイA」の図柄を左リール21aの中段に停止させることができる。すなわち、11番〜0番の10個の図柄が左リール21aの中段にあるときに左ストップボタン33aが操作されると「リプレイA」の図柄を左リール21aの中段に停止させることができるので、この左リール21aにおいて「リプレイA」の図柄を中段に停止表示させることができる確率は1/2(=10/20)となる。同様に、右リール21cにおいて、「スイカ」の図柄は、7番及び2番に配置されているため、17番〜6番の図柄が右リール21cの中段にあるときに右ストップボタン33cが操作されると「スイカ」の図柄を右リール21cの中段に停止表示させることができるので、その確率は1/2である。したがって、入賞役07の図柄の組み合わせが有効ライン上に停止表示される確率は1/4(=1/2×1/2)である。
以上より、ストップボタン33a〜33cが中左右の順で操作されたときは、1/4の確率で入賞役07の図柄の組み合わせが有効ライン上に停止表示され、3/4(=1−1/4)の確率で特定図柄03の図柄の組み合わせ(以下、「ベルこぼし目」とも呼ぶ)が有効ライン上に停止表示される。
−中右左の順でストップボタン33a〜33cを操作した場合−
中左右で操作されたときの停止制御で説明したように、第1停止である中ストップボタン33bの操作時に、リール制御手段120は「個数優先停止制御」に従って、中リール21bの中段(有効ライン上)に入賞役07を構成する図柄である「ブランク」を停止表示させる。
次に、第2停止である右ストップボタン33cの操作時点で、中リール21bの中段に「ブランク」の図柄が停止表示されているため、右リール21cの中段に「スイカ」の図柄を停止表示させると、入賞役07の図柄の組み合わせを有効ライン上に揃えることができる。したがって、リール制御手段120は、右ストップボタン33cが操作されたときに、「スイカ」の図柄を停止表示させることができるときは、この図柄を右リール21cの中段に引き込んで停止表示させる。一方、引き込むことができないときは、例えば、「リプレイA」の図柄を右リール21cの中段に停止表示させる。
そして、第3停止である左ストップボタン33aが操作される時点で、中リール21bの中段に「ブランク」の図柄が停止表示され、右リール21cの中段に「スイカ」の図柄が停止表示されているときは、リール制御手段120は、左リール21aの中段に「リプレイA」の図柄を停止表示させることができるときは、この図柄を引き込んで停止表示させる。一方、引き込むことができないときは、「ベル」の図柄を左リール21aの中段に停止表示させることにより、特定図柄02の図柄の組み合わせを停止表示させる。また、中リール21bの中段に「ブランク」の図柄が停止表示され、右リール21cの中段に「リプレイA」の図柄が停止表示されているときは、左リール21aの中段に「リプレイA」または「リプレイB」の図柄のいずれかを停止表示させることにより、特定図柄03の図柄の組み合わせを有効ライン上に停止表示させる(図8(a)の「△or×」)。
以上より、ストップボタン33a〜33cが中左右の順で操作されたときは、中右左のときと同様に、1/4の確率で入賞役07の図柄の組み合わせが有効ライン上に停止表示され、3/4の確率で特定図柄02または特定図柄03の図柄の組み合わせが有効ライン上に停止表示される。
−右左中の順でストップボタン33a〜33cを操作した場合−
第1停止である右ストップボタン33cの操作時に、リール制御手段120は「個数優先停止制御」に従って、右リール21cの中段(有効ライン上)に停止表示させる図柄を決定する。本実施形態に係るスロットマシン1の場合、入賞役−A1を構成する図柄の組み合わせのうち、右リール21cに「ベル」、「キャラ」、「スイカ」、「ブランク」の図柄を含むものは各々1つであるが、「リプレイA」の図柄を含むものは2である。また、右リール21cにおいて、「リプレイA」の図柄は右ストップボタン33cの操作タイミングに関わらず、必ず有効ライン上に引き込んで停止させることができる。したがって、リール制御手段120は、第1停止である右ストップボタン33cの操作に対して、右リール21cの中段(有効ライン上)に「リプレイA」の図柄(入賞役13を構成する図柄)を停止表示させる。
次に、第2停止である左ストップボタン33aの操作時点で、右リール21cの中段に「リプレイA」の図柄が停止しているため、左リール21aの中段に「リプレイA」の図柄を停止表示させることで、入賞役13の図柄の組み合わせを有効ライン上に揃えることができる。したがって、リール制御手段120は、左ストップボタン33aが操作されたときに、「リプレイA」の図柄を停止表示させることができるときは、この図柄を左リール21aの中段に引き込んで停止表示させる。一方、引き込むことができないときは、例えば、「リプレイB」の図柄を左リール21aの中段に停止表示させる。
そして、第3停止である中ストップボタン33bが操作される時点で、左リール21aの中段に「リプレイA」の図柄が停止表示され、右リール21cの中段に「リプレイA」の図柄が停止表示されているときは、リール制御手段120は、中リール21bの中段に「スイカ」の図柄を停止表示させることができるときは、この図柄を引き込んで停止表示させる。一方、引き込むことができないとき、及び、左リール21aの中段に「リプレイB」の図柄が停止表示されているときは、「ブランク」の図柄を中リール21bの中段に停止表示させることにより、特定図柄03の図柄の組み合わせを有効ライン上に停止表示させる(図9(a)の「△or×」)。
上述したように、左リール21aにおいて「リプレイA」の図柄を中段に停止表示させることができる確率は1/2となる。また、中リール21bにおいて、「スイカ」の図柄は、9番及び4番に配置されているため、19番〜8番の図柄が中リール21bの中段にあるときに中ストップボタン33bが操作されると「スイカ」の図柄を中リール21bの中段に停止表示させることができるので、その確率は1/2である。したがって、入賞役13の図柄の組み合わせが有効ライン上に停止表示される確率は1/4(=1/2×1/2)である。
以上より、ストップボタン33a〜33cが右左中の順で操作されたときは、1/4の確率で入賞役13の図柄の組み合わせが有効ライン上に停止表示され、3/4(=1−1/4)の確率で特定図柄03の図柄の組み合わせが有効ライン上に停止表示される。
−右中左の順でストップボタン33a〜33cを操作した場合−
右左中で操作されたときの停止制御で説明したように、第1停止である右ストップボタン33cの操作時に、リール制御手段120は「個数優先停止制御」に従って、右リール21cの中段(有効ライン上)に入賞役13を構成する図柄である「リプレイA」を停止表示させる。
次に、第2停止である中ストップボタン33bの操作時点で、右リール21cの中段に「リプレイA」の図柄が停止表示されているため、中リール21bの中段に「スイカ」の図柄を停止表示させると、入賞役13を構成する図柄を有効ライン上に停止表示させることで、入賞役13の図柄の組み合わせを有効ライン上に揃えることができる。したがって、リール制御手段120は、中ストップボタン33bが操作されたときに、「スイカ」の図柄を停止表示させることができるときは、この図柄を中リール21bの中段に引き込んで停止表示させる。一方、引き込むことができないときは、例えば、「ブランク」の図柄を左リール21aの中段に停止表示させる。
そして、第3停止である左ストップボタン33aが操作される時点で、中リール21bの中段に「スイカ」の図柄が停止表示され、右リール21cの中段に「リプレイA」の図柄が停止表示されているときは、リール制御手段120は、「リプレイA」の図柄を停止表示させることができるときは、この図柄を左リール21aの中段に引き込んで停止表示させる。一方、引き込むことができないときは、左リール21aの中段に「ベル」の図柄を停止表示させることにより、特定図柄05の図柄の組み合わせを有効ライン上に停止表示させる。また、中リール21bの中段に「ブランク」の図柄が停止表示され、右リール21cの中段に「リプレイA」の図柄が停止表示されているときは、左リール21aの中段に「リプレイA」または「リプレイB」の図柄のいずれかを停止表示させることにより、特定図柄03の図柄の組み合わせを有効ライン上に停止表示させる(図8(a)の「△or×」)。
以上より、ストップボタン33a〜33cが右中左の順で操作されたときは、右左中のときと同様に、1/4の確率で入賞役13の図柄の組み合わせが有効ライン上に停止表示され、3/4の確率で特定図柄03または特定図柄05の図柄の組み合わせが有効ライン上に停止表示される。
ここでは、押し順ベルの例として入賞役−A1に当選した場合について説明したが、入賞役−A2〜A6についても、図8(a)に示す正解押し順で(「○」で示される押し順)で操作がされたときは7枚役(入賞役01または入賞役02)の図柄の組み合わせが有効ライン上に停止表示されて7枚の遊技メダルが払い出され、それ以外の押し順(「△or×」で示される押し順)で操作がされたときは、1/4の確率で1枚役の図柄の組み合わせが停止表示されて1枚の遊技メダルが払い出され、3/4の確率で特定図柄(特定図柄01〜05のいずれか)の図柄の組み合わせが有効ライン上に停止表示される。なお、上記の説明では入賞役−A1に対するベルこぼし目を特定図柄02、03、05とした場合について説明したが、入賞役−A2〜A6に対しても、それらを構成する入賞役に応じて、特定図柄01〜05がベルこぼし目となる。
また、入賞役−B1〜B6に対しても、図8(a)に示す正解押し順でストップボタン33a〜33cが操作されたときは7枚役(入賞役01または入賞役02)の図柄の組み合わせが有効ライン上に停止表示されて7枚の遊技メダルが払い出され、それ以外の押し順(「△or×」で示される押し順)で操作がされたときは、1/4の確率で1枚役の図柄の組み合わせが停止表示されて1枚の遊技メダルが払い出され、3/4の確率で特定図柄(特定図柄01〜05のいずれか)の図柄の組み合わせが有効ライン上に停止表示される。但し、後述する内部中遊技状態(RT4遊技状態)のときは、ストップボタン33a〜33cの操作順序及び操作タイミングにかかわらず、入賞役01または入賞役02の図柄の組み合わせが有効ライン上に停止し、7枚の遊技メダルが払い出されるように構成されている。
なお、入賞役−A1〜A6及び入賞役−B1〜B6が当選したときに停止表示される特定図柄01〜05は、後述する遊技状態の移行の契機となる場合がある。
−その他の入賞役について−
また、入賞役−Cは、入賞役21を構成する図柄のうち、左リール21aにおいては、左ストップボタン33aの操作タイミングに関わらず、「リプレイA」または「リプレイB」の図柄のいずれかを中段に停止させることができるが、中リール21bにおける「スイカ」の図柄が中段に停止する確率が1/2であり、右リール21cにおける「赤7」または「キャラ」の図柄のいずれかが中段に停止する確率が1/2であることから、1/4の確率で入賞役21の図柄の組み合わせが有効ライン上に停止表示され、3/4の確率で、図5に示す図柄の組み合わせのいずれにも該当しない図柄の組み合わせ(以下、「ハズレ目」と呼ぶ)が有効ライン上に停止表示される。なお、図4から明らかなように、入賞役21の図柄の組み合わせが有効ライン上に停止表示されると、リール表示窓11内の右下がりのライン上に「スイカ」の図柄が揃うことになり、いわゆる「スイカ」として用いることができる。
また、入賞役−Dは、入賞役20を構成する図柄のうち、中リール21bにおいては任意の図柄でよく、また、右リール21cにおいては、右ストップボタン33cの操作タイミングに関わらず、「スイカ」、「チェリー」、「ベル」、「リプレイA」の図柄のいずれかを中段に停止表示させることができるが、左リール21aにおける「バー」が、9番〜13番の図柄が中段にあるときに左ストップボタン33aが操作されると中段に停止表示させることができるため、この入賞役20の図柄の組み合わせを有効ライン上に停止表示させることができる確率は1/4(=5/20)となる。したがって、入賞役−Dが当選したときは、1/4の確率で入賞役20の図柄の組み合わせが有効ライン上に停止表示され、3/4の確率でハズレ目が有効ライン上に停止表示される。なお、図4から明らかなように、入賞役20の図柄の組み合わせが有効ライン上に停止表示されると、リール表示まで11内の左下隅(左リール21aの下段)に「チェリー」の図柄が停止表示されることになり、いわゆる「チェリー」として用いることができる。
また、入賞役−Eが当選すると、ストップボタン33a〜33cの操作順序及び操作タイミングに関わらず、入賞役23の図柄の組み合わせのいずれかが有効ライン上に停止表示される。この入賞役23の図柄の組み合わせが有効ライン上に停止すると、図4から明らかなように、リール表示窓11内の下段に、「ベル」−「ベル」−「リプレイB/バー/スイカ」の図柄が停止する(例えば、左中右の順で停止操作を行うと、第1停止及び第2停止において、下段に「ベル」−「ベル」と停止表示された後、第3停止でハズレ目となる)。したがって、いわゆる「滑りチャンス目」として用いることができる。
また、入賞役−Fを構成する入賞役01及び入賞役02はいずれも、上述したようにストップボタン33a〜33cの操作順序及びタイミングに関わらず有効ライン上に停止表示させることができる図柄の組み合わせである。したがって、リール制御手段120は、入賞役−Fに当選したときは、常に入賞役01の図柄の組み合わせを有効ライン上に停止表示させるように構成してもよいし、入賞役02の図柄の組み合わせを有効ライン上に停止表示させるように構成してもよいし、操作タイミング等に応じて入賞役01または入賞役02のどちらかを有効ライン上に停止表示させるように構成してもよい。この入賞役−Fは、いわゆる「共通ベル」として用いることができる。
また、入賞役−Gは、上述したようにBB遊技が実行されているときに当選する役であり、この入賞役−Gが当選すると、リール制御手段120は、入賞役24の図柄の組み合わせを有効ライン上に停止表示させ、その結果12枚の遊技メダルが払い出される。なお、この入賞役24の図柄の組み合わせが有効ライン上に停止表示されると、図4から明らかないように、リール表示窓11内の下段に「ベル」−「ベル」−「ベル」の図柄が揃うことになる。
−再遊技役について−
また、当選役である再遊技役(リプレイ)は、図7に示すように、再遊技役−A、再遊技役−B、再遊技役−C1〜C6、再遊技役−D1〜D3、再遊技役−E、及び、再遊技役−F1〜F5から構成されており、これらの再遊技役は、図5に示す再遊技役01〜08を組み合わせて構成されている(図7のかっこ内に示す番号の意味は、入賞役のときと同じである)。なお、これらの再遊技役は、図5に示すリール21a〜21cの図柄の配置、及び、図6に示す再遊技役01〜08に割り当てられた図柄の組み合わせから明らかなように、ストップボタン33a〜33cがどのタイミングで操作されても、これらの再遊技役01〜08のいずれかの図柄の組み合わせが有効ライン上に停止するように構成されている。
ここで、再遊技役−Aは、ストップボタン33a〜33cの操作順序及びタイミングに関わらず再遊技役01の図柄の組み合わせが有効ライン上に停止表示される役である。すなわち、リール表示窓11内の中段に「リプレイA/リプレイB」−「リプレイA」−「リプレイA/リプレイB」の図柄が揃うことになり、いわゆる「通常リプレイ」として用いることができる。
また、再遊技役−Bは、ストップボタン33a〜33cの操作順序及びタイミングに関わらず再遊技役02の図柄の組み合わせが有効ライン上に停止表示される役である。図4から明らかなように、この再遊技役02の図柄の組み合わせが有効ライン上に停止表示されると、リール表示窓11内の上段に「リプレイA/リプレイB」−「リプレイA」−「リプレイA」の図柄が揃うことになり、いわゆる「平行リプレイ」として用いることができる。
また、再遊技役−C1〜C6及び再遊技役−F1〜F5には、図8(b)に示すように、ストップボタン33a〜33cの押し順が割り当てられている(以下、これらの再遊技役を「押し順リプレイ」と呼ぶ)。具体的には、再遊技役−C1〜C6の各々には、再遊技役02の図柄の組み合わせが有効ライン上に停止表示される押し順と、再遊技役03または再遊技役04の図柄の組み合わせが有効ライン上に停止表示される押し順とが割り当てられている。図4から明らかなように、再遊技役03の図柄の組み合わせが有効ライン上に停止表示されると、リール表示窓11内の右下がりのライン上に、「リプレイA/リプレイB」−「リプレイA」−「リプレイA」の図柄が揃い、また、再遊技役04の図柄の組み合わせが有効ライン上に停止表示されると、リール表示窓11内の右上がりのライン上に「リプレイA/リプレイB」−「リプレイA」−「リプレイA」の図柄が揃うことになり、いわゆる「斜めリプレイ」として用いることができる。」
また、再遊技役−F1〜F5の各々には、再遊技役08の図柄の組み合わせが有効ライン上に停止表示される押し順と、再遊技役02の図柄の組み合わせが有効ライン上に停止表示される押し順とが割り当てられている。ここで、再遊技役−F5においては、ストップボタン33a〜33cが右左中の順序で操作されても、右中左の順序で操作されても再遊技役08の図柄が有効ライン上に停止表示されるように構成されている。図4から明らかなように、再遊技役08の図柄の組み合わせが有効ライン上に停止表示されると、リール表示窓11内の上段に「リプレイA/リプレイB」−「リプレイA」−「ベル」の図柄が停止表示され、また、再遊技役02の図柄の組み合わせが有効ライン上に停止表示されると、上述したように、リール表示窓11内の上段に「リプレイA/リプレイB」−「リプレイA」−「リプレイA」の図柄が停止表示される。
なお、これらの再遊技役−C1〜C6及び再遊技役−F1〜F5に当選したときに停止表示される再遊技役02、再遊技役03、再遊技役04及び再遊技役08の図柄の組み合わせは、後述する遊技状態の移行に関するものである。
また、再遊技役−D1〜D3に対しても、図8(b)に示すように、ストップボタン33a〜33cの押し順が割り当てられており、押し順に応じて再遊技役05または再遊技役01の図柄の組み合わせが有効ライン上に停止表示されるが、遊技状態の移行には関係しない。ここで、再遊技役01の図柄の組み合わせは、上述したようにリール表示窓11内の中段に「リプレイA/リプレイB」−「リプレイA」−「リプレイA/リプレイB」の図柄が揃い、再遊技役05の図柄の組み合わせが有効ライン上に停止表示されると、図4から明らかなように、リール表示窓11内の、左上(左リール21aの上段)、中央(中リール21bの中段)、右上(右リール21cの上段)の順で、「リプレイA/リプレイB」−「リプレイA」−「リプレイA」の図柄がV字状に並ぶため、押し順により停止図柄の構成を変化させて、遊技者に遊技状態や演出状態の示唆等を行うことができる。
また、再遊技役−Eを構成する再遊技役03及び再遊技役04はいずれも、上述したようにストップボタン33a〜33cの操作順序及びタイミングに関わらず有効ライン上に停止表示させることができる図柄の組み合わせである。したがって、リール制御手段120は、再遊技役−Eに当選したときは、常に再遊技役03の図柄の組み合わせを有効ライン上に停止表示させるように構成してもよいし、再遊技役04の図柄の組み合わせを有効ライン上に停止表示させるように構成してもよいし、操作タイミング等に応じて再遊技役03または再遊技役04のどちらかを有効ライン上に停止表示させるように構成してもよい。
なお、本実施形態に係るスロットマシン1では、図8に示すように、再遊技役−A、入賞役−C、入賞役−D、入賞役−E及び入賞役−Fが特別役(BB1〜BB3)と同時に当選するように構成されている。図7に示すように、当選役を特定するための条件装置番号は、特別役を示す役物条件装置番号と、入賞役及び再遊技役を示す入賞及び再遊技条件装置番号から構成されている。なお、役物条件装置番号並びに入賞及び再遊技条件装置番号のそれぞれにおいて、ハズレは「0」として表される。そして、再遊技役または入賞役と特別役とが重複当選する当選役においては、役物条件装置番号と入賞及び再遊技条件装置番号のそれぞれに、対応する特別役と再遊技役または入賞役の条件装置番号が設定されている。
ここで、リール制御手段120によるリール21a〜21cの停止制御の方法について説明する。このリール制御手段120は、上述したリール21a〜21cの制御を行うために、図2に示すように、回転開始制御手段121、停止テーブル記憶手段122、停止位置データ作成手段123、回転位置検出手段124及び回転停止制御手段125を有している。
(回転開始制御手段121)
回転開始制御手段121は、リール21a〜21cの回転の開始に関する制御を行うためのものであり、具体的には、スタートレバー32の操作に基づいて出力されるスタート信号が入力されることで、各々のリール21a〜21cに設けられているステッピングモータ(リール駆動手段22a〜22c)に回転開始信号を出力し、これらのステッピングモータを起動させることにより、全てのリール21a〜21cの回転を開始させるように構成されている。また、回転開始制御手段121は、スタートレバー32が操作されると、予め定められた所定の加速度で全てのリール21a〜21cを回転させ、全てのリール21a〜21cの回転速度が所定の速度に達すると、この所定の速度で定速回転を行わせるように構成されている。
(停止テーブル記憶手段122)
停止テーブル記憶手段122は、リール21a〜21cを停止させるための情報である停止順序選択テーブル及び停止テーブルを記憶している。停止テーブルは、リール21a〜21cの各々において、ストップボタン33a〜33cが操作されたときにリール表示窓11の中段に相当する位置にある図柄の番号(0〜19番)に対して、どの図柄を下段に相当する位置に停止させるかについて規定されているテーブルであり、それぞれにテーブル番号が割り当てられている。なお、停止テーブルにおいては、2つの図柄番号を選択可能なときは、いずれか一方の図柄番号を予め設定してもよいし、両方を設定して、ストップボタン33a〜33cの操作タイミングに応じて、所定のアルゴリズムに従って停止する図柄番号を選択するように構成してもよい。
なお、上述した停止テーブルは、ストップボタン33a〜33cの受付操作がされたときの中段に位置する図柄番号と、その図柄番号に対して何番の図柄番号の図柄を有効ライン上(中段)に停止させるかの対応が定義されているが、本発明はこの構成に限定されることはない。例えば、受付操作がされた図柄番号に対して、何コマ滑らせて停止するかを定義するテーブル構成とすることもできる。このようなスベリコマ数による停止テーブルは、本実施形態に係るスロットマシン1のリール21a〜21bのいずれにも使用することもできるし、リール21a〜21bのうち、一部のルールに対しては、停止図柄の図柄番号を規定した停止テーブルを使用し、残りのリールに対してはスベリコマ数で定義した停止テーブルを使用するというように、使い分けることもできる。
(停止位置データ作成手段123)
停止位置データ作成手段123は、当選役決定手段110による抽選の結果に基づき、ストップボタン33a〜33cが操作された場合にリール21a〜21cを停止させる停止位置を決定するために、停止位置データを作成する。この停止位置データ作成手段123は、スタートレバー32が操作されて、3個のリール21a〜21cが全て定速回転状態となると、第1停止(最初)のストップボタンが操作されるまでの間に、3個のリール21a〜21cのそれぞれについて、停止テーブルを選択して停止位置データを作成する。また、第1停止のストップボタン(ストップボタン33a〜33cのいずれか)が操作された後は、この第1停止から遅くとも第2停止のストップボタンが操作されるまで(すなわち、第2停止のストップブタンの操作を受け付けた時点まで)の間に、第1停止のストップボタンが操作された時点でストップボタンの操作が未だ行われていない残りの2個のリール(すなわち、第1停止のストップボタンが操作された時点で回転中の2個のリール)のそれぞれについて、停止テーブルを選択して停止位置データを作成する。また同様に、第2停止のストップボタンが操作された後は、第2停止のストップボタンが操作されてから遅くとも第3停止のストップボタンが操作されるまで(すなわち、第3停止のストップボタンの操作を受け付けた時点まで)の間に、第2停止のストップボタンが操作された時点でストップボタンの操作が未だ行われていない残りの1個のリール(すなわち、第2停止のストップボタンが操作された時点で回転中の1個のリール)について、停止テーブルを選択して停止位置データを作成する。停止位置データとはRAM104に記憶され、ストップボタン33a〜33cの操作を受け付けた図柄に応じて何コマ滑りするか(どの図柄で停止するか)を示すデータを指す。具体的には、左リール21aの図柄番号「0」が停止受付されたときの滑りコマ数が記憶される記憶領域(例えば、アドレス「F0C7(H)」)、左リール21aの図柄番号「1」が停止受付されたときの滑りコマ数が記憶される記憶領域(例えば、アドレス「F0C8(H)」)、・・・、左リール21aの図柄番号「19」が停止受付されたときの滑りコマ数が記憶される記憶領域(例えば、アドレス「F0DB(H)」)のように、左リール用として20アドレスの記憶領域が設けられている。同様に、中リール21bに対応したストップボタン33bが受け付けられた場合のために、中リール21bのストップボタン33bが受け付けられた図柄番号に応じた20アドレスの記憶領域、右リール21cに対応したストップボタン33cが受け付けられた場合のために、右リール21cのストップボタン33cが受け付けられた図柄番号に応じた20アドレスの記憶領域を備えている。図20のRAM104の詳細な説明には具体的な記載はないが、これらの情報も設定値の変更(設定変更)に伴い初期化される対象となる記憶領域である。なお、各リールに対して20アドレスの記憶領域を備えているが、各リールに配置されている図柄数に応じて異なる。具体的には、各リールの図柄数が21であるときには、各リールに対して21アドレスの記憶領域を備えることとなる。このように、RAM104に予め停止位置データを記憶しておくことにより、ストップボタン33a〜33cが操作されたときにすぐに停止位置を定めることができ、本来停止しなければならない停止位置を過ぎてしまうことを防止することができる。なお、停止位置データに基づいて最終的な停止位置を決定していればよく、停止位置データが最終的な停止位置を指す場合だけでなく、停止位置データを加工して最終的な停止位置を決定するような場合でもよい。
例えば、スタートレバー32が操作された後、左リール21aに対応する左ストップボタン33a、中リール21bに対応する中ストップボタン33b、右リール21cに対応する右ストップボタン33cという順番で(すなわち、入賞役−A1に対する正解押し順で)、ストップボタン33a〜33cの操作が行われるものとする。この場合には、停止位置データ作成手段123は、スタートレバー32が操作された後、全てのリール21a〜21cについて停止テーブルを選択して停止位置データを作成する。そして、第1停止として左ストップボタン33aが操作されると、第2停止である中ストップボタン33bが操作されるまでの間に、回転中の中リール21b及び右リール21cについて停止位置データを選択して停止位置データを作成しなおす。さらに、第2停止として中ストップボタン33bが操作されると、第3停止である右ストップボタン33cが操作されるまでの間に、回転中の右リール21cについて停止位置データを選択して停止位置データを作成しなおす。なお、第3停止に対する停止位置データの作成において選択される停止テーブルが、既に第2停止に対して選択されて停止位置データが作成されているときは、再度の作成の必要はなく、第2停止のための停止位置データをそのまま第3停止で利用することができる(もちろん、再度作成し直してもよい)。
また、停止位置データ作成手段123は、スタートレバー32が操作されたときは、3つ全てのリール21a〜21の回転速度が定速となったときではなく、3つ全てのリール21a〜21cの回転速度が定速となるまでの間や、リール21a〜21cが回転を開始するまでの間に、全てのリール21a〜21cについて、停止テーブルを選択して停止位置データを作成するように構成してもよい。また、停止位置データ作成手段123は、ストップボタン33a〜33cのうち、前回のストップボタンの操作後、次のストップボタンが操作される時点までの間に、停止テーブルを選択しなおすのではなく、前回のストップボタンの操作後、次のストップボタンの操作が可能となる時点(すなわち、次のストップボタンの操作を受付可能な状態となる時点)までの間に、停止テーブルを選択して停止位置データを作成しなおすように構成してもよい。
ここで、本実施形態に係るスロットマシン1では、スタートレバー32が操作されてから第1停止のストップボタンが操作されるまで、及び、ストップボタン33a〜33cのうち、いずれか一つのストップボタンが操作されてから次のストップボタンが操作されるまでに、リール21a〜21cのうち、回転中の全てのリールについての停止テーブルを選択して停止位置データを作成できるようにすべく、スタートレバー32及びストップボタン33a〜33cが操作された後に、所定時間の間、次のストップボタンの操作を受付不可とする受付不可期間を設けている。また、本実施形態に係るスロットマシン1では、スタートレバー32が操作されてから3つ全てのリール21a〜21cの回転速度が定速となるまでの時間は、これらのリール21a〜21cについての停止データを選択して停止位置データを作成するために十分なものとなっている。
(回転位置検出手段124)
回転位置検出手段124は、ストップボタン33a〜33cが操作された時点におけるリール21a〜21cの位置を検出するためのものである。具体的には、各リール21a〜21cが回転を開始し、全てのリール21a〜21cが所定の速度で定速回転するようになった後、リールセンサ(図示しておらず)により被検知部材(インデックス)の通過が検知されたことを契機として、カウント手段によりステッピングモータのステップ数のカウントを開始する。なお、定速回転中は、後述するタイマ割込み処理が1回実行されることに基づいて1ステップ順回転するように構成されており、カウント手段によるカウント値に基づいて基準位置を通過している図柄番号やステップ数を把握することが可能となる。また、カウント手段によるステップ数のカウント値は、リールセンサにより被検知部材(インデックス)の通過が検知される都度、リセット手段によりリセットされ、この時点から新たにステップ数のカウントが行われるものとなっている。
(回転停止制御手段125)
回転停止制御手段125は、ストップボタン33a〜33cの操作に基づき、停止位置データ作成手段123aにより作成された停止位置データにおいて当該ストップボタン33a〜33cが操作された時点のリール21a〜21cの位置に対応して定められた停止位置で、これらのリール21a〜21cを停止させるためのものである。すなわち、ストップボタン33a〜33cが操作されると、このストップボタン33a〜33cが操作された時点のリール21a〜21cの位置に対応して、停止位置データに基づいた停止位置で、リール21a〜21cは停止することが可能となる。なお、次遊技でリール21a〜21cを再度回転させる際に、現在停止している図柄位置に対応したステッピングモータがどの励磁状態に対応しているかを把握しておくことは重要な要素である。たとえば、図柄位置に対応した励磁状態としてφ0、φ0・1、φ1、φ1・2、φ2、φ2・3、φ3、φ3・0の8通りのパターンがある場合、加速処理を始める励磁相をどれに指定するかによって、加速処理がスムーズにいく場合とスムーズにいかない場合がある。具体的には、停止している図柄の図柄位置の励磁状態がφ0に対応している場合、加速処理を始める励磁相がφ0のように同じ、またはφ0・1のように隣接しているときにはスムーズに加速処理を行うことができるが、φ2やφ2・3のように離れた励磁相(複数ステップ先の励磁相)から加速処理を始めると、リール21a〜21cの加速処理の初期時に「ガクっ」と、一気に図柄が変動することとなる。そのため、現在停止している図柄位置に対応した励磁状態が把握可能なデータをRAM104に記憶しておくことにより、そのデータを用いて次回の遊技開始時の加速処理をスムーズに行うことが可能となる。なお、当該データの記憶領域は、各リールの図柄位置を把握可能とするため、左リール用のアドレス、中リール用のアドレス、右リール用のアドレスのように分けて記憶してもよいし、各データをまとめて1つのアドレスに記憶してもよい。さらにまた、設定変更処理を実行するための操作、又は、設定変更処理を終了するときの操作に基づいてRAM104の当該データを記憶する記憶領域がクリアされる仕様の場合、遊技者は遊技施設の開場直後におけるリール21a〜21cの挙動(「ガクっ」となったか否か)によって、設定変更がされたか否かが把握可能となってしまう。そのため、当該データを記憶する記憶領域は、設定変更処理を実行するための操作、又は、設定変更処理を終了するときの操作に基づいてRAM104のクリアされない記憶領域(アドレス)に記憶することが望ましい。もちろん、後述する電源断処理が正常でないときやRAM104が異常と判断した場合には、後述する設定値データと同様にクリアが可能となる記憶領域である。
なお、図7には、後述する各遊技状態における役の当選確率(役抽選テーブルの構成)も示している。ここで、図7に示す数値は置数(分母を65536としたときの分子の値)を示しており、また、各役に示される「−」は、その遊技状態では当該役の抽選は行われないことを示している。また、どの役にも当選しない確率(いわゆる「ハズレ」の場合の確率)は、特別役、入賞役及び再遊技役の当選確率の合計を1から引いた値である(置数の場合は、65536から特別役、入賞役及び再遊技役の置数の合計値を引いた値)。なお、「ハズレ」は設けなくてもよい(抽選により、何れかの役に必ず当選するように構成してもよい)。また、役抽選の結果がハズレのときは、リール制御手段120は、図6に示す図柄の組み合わせのいずれにも該当しない図柄の組み合わせ(ハズレ目)を有効ライン上に停止させるように構成されている。
(入賞判定手段130)
入賞判定手段130は、リール21a〜21cの全てが停止したときに、上述した有効ライン上に役の図柄の組み合わせが並んでいるか否かを判定し、並んでいるものがあれば当該遊技でその役が成立した(入賞した)、又は、遊技状態が移行する特定図柄が停止したと判定する。
(払出制御手段140)
払出制御手段140は、入賞判定手段130による判定の結果、成立(入賞)している役(本実施形態に係るスロットマシンにおいては入賞役)に応じた遊技メダルの払い出しを行う。すなわち、この払出制御手段140は、リール21a〜21cの所定の図柄の組み合わせが停止表示されたことに基づいて遊技者に利益を付与する利益付与手段としての機能を有している。上述したように、本実施形態に係るスロットマシン1においては、内部に所定の枚数(例えば50枚)の遊技メダルを電子情報として貯留することができる(このスロットマシン1の内部に貯留されている遊技メダルを「クレジット」と呼ぶ)。メダル投入口51から最大のベット数(本実施の形態では3枚)を超える遊技メダルが投入されるか、若しくは、遊技メダルが払い出される役に入賞すると、払出制御手段140は、その遊技メダルを遊技媒体貯留手段141に記憶(内部に貯留)する。なお、貯留されている遊技メダル(クレジット)の枚数が所定の枚数(上述の場合50枚)を超えると、払出制御手段140は、超えた枚数の遊技メダルの払い出しを、ホッパーモータ75を作動させてホッパー装置52に行わせるように構成されている。また、払出制御手段140は、清算ボタン34が操作されると、ベットされている遊技メダル及び貯留されている遊技メダル(クレジット)の払い出しを、ホッパー装置52に行わせるように構成されている。このとき、ベットされている遊技メダル及び遊技媒体貯留手段141の貯留数は0になる。この遊技媒体貯留手段141に貯留されているクレジット数は、このスロットマシン1の前面(前扉3)の貯留数表示器71に表示される。
(設定値設定手段150)
設定値設定手段150は、設定変更キースイッチ36の操作により、本実施形態に係るスロットマシン1における役の抽選やATの抽選等の出玉率(払出し率)に影響を与える設定値の設定等を行うものである。なお、本実施形態では設定値データが大きくなる毎に遊技者に有利な出玉率となるように設定されている。具体的には、設定値データが「0」〜「5」の場合、設定値データが「0」のときが最小(遊技者にとって不利)となり、「5」のときが最大(遊技者にとって有利)となっている。設定変更処理の詳細は後述するが、電源スイッチ35がオフにされている状態で設定変更キースイッチ36をオンにしたまま電源スイッチ35をオンして電源を投入することによって設定値の変更を可能とし、リセット/設定スイッチ37に対する所定の操作(スイッチの操作)を行うことで設定値を選択可能(更新可能)とし、スタートレバー32を操作した後、設定変更キースイッチ36をオフすると、設定変更処理を終了するように構成されている。例えば、1〜6までの6段階の設定値を設定することができ、当選役決定手段110は、当該設定値に応じて役の当選確率を変化させ、これにより、払い出される遊技メダルの出玉率(払出し率)を変化させるように構成されている。したがって、図7に示す当選確率は一例である(例えば、設定値が1のときの値である)。また、詳細は後述するが、設定変更処理を実行するための操作(電源スイッチ35がオフにされている状態で設定変更キースイッチ36をオンにしたまま電源スイッチ35をオンして電源を投入すること)に基づいてRAM104に記憶されている情報のうちの一部(後述する設定値データなど)は保持される一方、他の情報(後述する内部遊技状態など)は初期化されるように構成することもできる。なお、設定変更処理を終了するときの操作(設定変更処理を開始後、スタートレバー32が操作されたこと、又は、設定変更キースイッチ36がオフにされること)に基づいて、RAM104の初期化を行ってもよい。また、特別役を有するスロットマシンにおいては、特別遊技状態にあるときは、上記操作を行っても設定値の変更ができないように構成することもできる。さらに、内部中遊技状態においても設定値の変更ができないように構成してもよい。また、フリーズが実行されているときは設定変更できないように構成してもよい。
(遊技状態制御手段160)
遊技状態制御手段160は、このスロットマシン1における遊技状態及び内部遊技状態を制御するものであり、RT遊技状態制御手段161及び内部遊技状態制御手段162を有して構成される。なお、この遊技状態(RT状態番号)や内部遊技状態(番号)は、RAM104に記憶される。
(RT遊技状態制御手段161)
まず、遊技状態の移行に関して説明する。図9(a)に示すように、工場出荷時のような初期状態において、非RT遊技状態(通常遊技状態)となっている。また、設定変更処理を実行するための操作、又は、設定変更処理を終了するときの操作に基づいて遊技状態も初期化する仕様の場合には、初期化処理(「RAMクリア」とも呼ばれる)によって、非RT遊技状態(通常遊技状態)になる。ここで、非RT遊技状態とは、後述するRT状態番号が「0」であることを示す。もちろん、図20に記載の通り、RT状態番号は初期化処理と対象としなくてもよい。初期化対象としないことにより、遊技施設の開場直後に、遊技者が遊技を行うことによって設定変更処理が行われたか否かを判別することとを困難にすることができる。
また、非RT遊技状態において、上述した入賞役−A1〜A6並びに入賞役−B1〜B6のいずれかに当選し、有効ライン上に特定図柄(図6に示す特定図柄01〜05のいずれか)が停止表示されると、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT1遊技状態に移行する。図8(a)に示すように、入賞役−A1〜A6並びに入賞役−B1〜B6の各々に対して割り当てられた6種類の押し順のうち、第1停止が左ストップボタン33a、中ストップボタン33b及び右ストップボタン33cの3通りに正解押し順が割り当てられているため、この入賞役−A1〜A6並びに入賞役−B1〜B6の当選に対してその正解押し順が報知されないと、2/3の確率で不正解押し順(正解押し順以外の押し順)で操作されることとなり、さらに、上述したように、不正解押し順の場合は3/4の確率で特定図柄が有効ライン上に停止表示されるため、入賞役−A1〜A6または入賞役−B1〜B6のいずれかに当選したときは、1/2(=2/3×3/4)の確率で特定図柄が有効ライン上に停止表示されてRT1遊技状態に移行することになる。
また、RT1遊技状態にあるときに、再遊技役−F1〜F5のいずれかに当選し、再遊技役08の図柄の組み合わせが有効ライン上に停止表示されると、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT2遊技状態に移行する。図7に示すように、再遊技役−F1〜F5は、遊技状態がRT1遊技状態及びRT4遊技状態にあるときに当選する役であり、図8(b)に示すように、再遊技役−F1〜F5の当選に対して、「08」で示す押し順でストップボタン33a〜33cが操作されると、再遊技役08の図柄の組み合わせが有効ライン上に停止表示される。すなわち、再遊技役−F1〜F5の当選に対して再遊技役08の図柄の組み合わせが停止表示される押し順を報知するかしないかにより、再遊技役08の図柄の組合せが停止表示される確率が異なるように構成されている。
また、RT2遊技状態にあるときに、再遊技役−C1〜C6のいずれかに当選し、再遊技役03または再遊技役04の図柄の組み合わせが有効ライン上に停止表示されると、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT3遊技状態に移行する。図8に示すように、再遊技役−C1〜C6は、遊技状態がRT2遊技状態及びRT3遊技状態にあるときに当選する役であり、図8(b)に示すように、再遊技役−C1〜C6の当選に対して、「03」、「04」で示す押し順でストップボタン33a〜33cが操作されると、再遊技役03または再遊技役04の図柄の組み合わせが有効ライン上に停止表示される。
また、RT3遊技状態においても、再遊技役−C1〜C6のいずれかに当選したときは、再遊技役03または再遊技役04の図柄の組み合わせが有効ライン上に停止表示される押し順を報知することにより、その押し順でストップボタン33a〜33cが操作されると、再遊技役03または再遊技役04の図柄の組み合わせが有効ライン上に停止表示され、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT3遊技状態を維持するように構成されている。
なお、本実施形態に係るスロットマシン1においては、上述した押し順ベルが当選したときに、7枚役の図柄の組み合わせが有効ライン上に停止表示される押し順を報知するAT遊技を備えており、AT遊技は、主にRT3遊技状態で実行される(後述するように、本実施形態に係るスロットマシン1では、AT遊技(内部遊技状態3)への移行条件が成立し、再遊技役−C1〜C6の当選に対して、再遊技役03又は04の図柄の組み合わせが停止表示される押し順が報知されているにも拘わらず、遊技者がこの押し順でストップボタン33a〜33cを操作しなかったとき(すなわち、RT3遊技状態に移行せず、RT2遊技状態が継続するとき)も、内部遊技状態3に移行してAT遊技が開始されるように構成されている)。ここで、AT遊技とは、遊技者にとって有利な押し順を報知する遊技である。例えば、上述した押し順ベル(たとえば、入賞役−A1〜A6並びに入賞役−B1〜B6)のように、ストップボタン33a〜33cを操作するときの正解押し順(7枚役の図柄の組み合わせが有効ライン上に停止表示される押し順)を、後述するように、主制御手段100により獲得数表示器72を用いて、また、演出制御手段301により画像表示装置41等を用いて遊技者に報知する(「アシストする」または「ナビする」と呼ぶ)ことで、入賞役−A1〜A6等の押し順ベルに対する入賞役01または入賞役02の図柄の組み合わせを有効ライン上に揃えることができる(結果として7枚の遊技メダルが払い出される)という遊技を提供する。なお、上述したように、AT遊技を実行するときは、上述した再遊技役の当選時にRT2遊技状態及びRT3遊技状態に移行するための押し順を報知し、また、RT3遊技状態においては、この遊技状態を維持する押し順を報知することで、RT3遊技状態でAT遊技を実行させるように構成されている。
また、RT2遊技状態及びRT3遊技状態において、再遊技役−C1〜C6のいずれかに当選し、再遊技役02の図柄の組み合わせが有効ライン上に停止表示される押し順でストップボタン33a〜33cが操作された場合、有効ライン上に再遊技役02の図柄の組み合わせが停止表示され、その結果、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT1遊技状態に移行する。また、入賞役−A1〜A6並びに入賞役−B1〜B6の何れかに当選し、正解押し順で操作されずに特定図柄が有効ライン上に停止表示された場合にも、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、RT1遊技状態に移行する。したがって、RT1遊技状態で遊技が実行されているときに、押し順が報知されないにも拘わらず、上記再遊技役に当選して遊技状態を上げる押し順でストップボタン33a〜33cが操作されたとしても、RT2遊技状態又はRT3遊技状態では、押し順を報知しなければ、上述した再遊技役−C1〜C6又は入賞役−A1〜A6、入賞役−B1〜B6の当選に対してRT1遊技状態に移行する押し順でストップボタン33a〜33cが操作される可能性が高く、基本的にはRT1遊技状態で遊技が実行されることになる。同様に、RT3遊技状態でAT遊技が終了したときも、再遊技役−C1〜C6、入賞役−A1〜A6、入賞役−B1〜B6に対する押し順の報知を行わなければ、遊技状態はRT1遊技状態に移行する可能性が高くなる。そのため、上述したAT遊技における「有利な押し順」には、AT遊技が実行されているときに、RT3遊技状態からRT1遊技状態に移行してしまったとき(押し順ベルの当選に対してストップボタン33a〜33cが正解押し順で操作されず特定図柄が停止表示された場合や、再遊技役−C1〜C6の当選に対して再遊技役03又は04の図柄の組み合せが停止表示される押し順が報知されたにも拘わらずこの押し順でストップボタン33a〜33cが操作されず、再遊技役02の図柄の組み合わせが有効ライン上に停止表示された場合)に、RT3遊技状態に移行させるための押し順の報知も含まれる。なお、AT遊技では、押し順を報知する代わりに、停止操作タイミングを示す情報(例えば、「赤を狙え」等)を報知するように構成してもよい。
ここで、上述した非RT遊技状態、RT1遊技状態、RT2遊技状態及びRT3遊技状態は非内部中遊技状態でもあり、「非内部中」とは、工場集荷後に初めて電源が投入されたときやRAMクリア時のように特別役に当選していない状態のことを指す。
また非RT遊技状態、RT1遊技状態、RT2遊技状態及びRT3遊技状態において、当選役決定手段110により特別役(BB1〜BB3)に当選し、その遊技において有効ライン上に特別役に対応する図柄の組み合わせ以外の図柄の組み合わせが停止表示されたこと、すなわち、特別役の当選に対して当該遊技で特別遊技へ移行しないことが決定すると、遊技状態制御手段160は、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、内部中遊技状態であるRT4遊技状態に移行する。ここで、「内部中」とは、特別役に当選はしているが、有効ライン上にこの特別役に対応する図柄の組み合わせを揃えていない状態のことである。このように、内部中遊技状態であるRT4遊技状態に移行すると、特別役持ち越し手段112により、当選した特別役の図柄の組み合わせが有効ライン上に停止表示されるまで当選役が持ち越される(すなわち、内部中遊技状態であるRT4遊技状態が継続される)。なお、内部中に移行するタイミングとしては、当選役決定手段110により特別役に当選したことに基づいて移行してもよい。本実施形態では、非RT遊技状態、RT1,RT2,RT3遊技状態、及び、RT4遊技状態(内部中遊技状態)のうち、RT3遊技状態以外では、後述するAT遊技が実行された場合であっても、ベットする遊技メダルの枚数の方が当該遊技で獲得できる期待枚数より多くなる(出玉率が100%未満となる)。
また、RT4遊技状態において、当選した特別役(BB1〜BB3)に対応する図柄の組み合わせを有効ライン上に停止表示させると、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、特別遊技状態に移行する。なお、本実施形態に係るスロットマシン1においては、BB1またはBB2に当選してRT4遊技状態(内部中遊技状態)に移行し、当選しているBB1またはBB2の図柄の組み合わせが有効ライン上に停止表示されたときは、RT5−12遊技状態に移行し、BB3に当選してRT4遊技状態(内部中遊技状態)に移行し、当選しているBB3の図柄の組み合わせが有効ライン上に停止表示されたときは、RT5−3遊技状態に移行するように構成されている(以下、RT5−12遊技状態とRT5−3遊技状態をまとめて「RT5遊技状態」とも呼ぶ)。RT5遊技状態では、所定の終了条件を満たすまで遊技者にとって有利な遊技(特別遊技)が実行される。ここで、所定の終了条件とは、上述したように、例えばそのRT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)において、遊技者に対して所定の枚数以上の遊技メダルが払い出された場合(例えば、BB1は334枚、BB2は238枚、BB3は60枚を超える枚数が払い出された場合)である。そして、このRT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)において所定の終了条件が満たされると、RT遊技状態制御手段161により、このスロットマシン1の遊技状態は、非RT遊技状態に移行する。なお、特別役に対応する図柄組合せが有効ライン上に停止した場合であっても、RT遊技状態制御手段161による遊技状態の変化は起こらなくてもよい。換言すると、BB遊技中のRT遊技状態は、直前の遊技で実行されていたRT状態としてもよい。但し、BB遊技中になると、当選役の役抽選テーブルが異なるため、同じRT状態番号をRAM104に記憶していた場合であっても、抽選結果等に変化は生じることとなる。
なお、いずれの遊技状態においても、入賞役に当選して対応する図柄の組み合わせを有効ライン上に停止表示させる(入賞する)と払出制御手段140により所定の枚数の遊技メダルが払い出され(若しくは貯留され)、再遊技役(リプレイ)に当選して対応する図柄の組み合わせを有効ライン上に停止表示させると再遊技が実行されるように構成されている。また、以上の遊技状態の説明は一例であり、本発明がこの遊技状態の遷移に限定されることはない。例えば、有効ライン上に当選役の図柄の組み合わせが停止表示されることにより遊技状態を移行させるように構成してもよいし、有効ラインに当選役とは異なる遊技状態移行図柄(遊技メダルの払い出しや再遊技の付与の対象とならない図柄の組み合わせ)を停止表示させて、遊技状態を移行させてもよい。
(内部遊技状態制御手段162)
次に、内部遊技状態の移行に関して説明する。内部遊技状態は、AT(報知遊技)に関する状態とも称する。本実施形態に係るスロットマシン1では、遊技状態の他に、払い出される遊技メダルの枚数に影響する演出状態(具体的にはAT遊技)を、内部遊技状態制御手段162で管理するように構成されている。従来の遊技機におけるAT遊技は、副制御手段200で管理していたが、副制御手段200を不正に改造する行為がなされたり、副制御手段200へ不正なコマンドを注入したりすることで、強制的にAT遊技にされる可能性があった。また、AT遊技のような遊技メダルの枚数に影響するような遊技を実行するか否かは、主制御手段100により管理するように求められるようになった。そのため、主制御手段100において、図9(b)に示すような複数の内部遊技状態により管理するように構成されている。
まず、工場出荷時点のような通常時は、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、内部遊技状態0(通常)となる。そして、この内部遊技状態0において、後述するAT抽選に当選すると、内部遊技状態制御手段162により前兆遊技数が決定されるとともに、このスロットマシン1の内部遊技状態は、内部遊技状態1(前兆)に移行する。この前兆遊技数は、本実施形態に係るスロットマシン1では抽選で決定されるが、予め決められた遊技数を設定するように構成してもよい。なお、本実施形態に係るスロットマシン1では、内部遊技状態0において、所定の条件を満たしたとき(例えば、当選役の中で、当選確率の低い役であるレア役に当選したとき)に、AT抽選が実行されるように構成されているが、遊技毎に抽選を行う(例えば、当選役等を考慮した確率の抽選を行ったり、当選役等を考慮せずに一律同じ確率で抽選を行ったりする)ように構成してもよい。
内部遊技状態1は、AT遊技の前兆状態であり、この内部遊技状態1で上述した前兆遊技数の遊技が実行されると、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、内部遊技状態2(AT準備)に移行する。また、この内部遊技状態2において、主制御手段100は、AT遊技を実行するために、上述した遊技状態を、RT1遊技状態からRT3遊技状態に移行させる。すなわち、この内部遊技状態2は、上述した押し順ベルや押し順リプレイの当選に対して後述するように、主制御手段100が獲得数表示器72により表示したり、副制御手段200(演出制御手段301)を介して画像表示装置42に表示したりすることにより、その正解押し順(入賞役−A1〜A6、入賞役−B1〜B6であれば、RT1遊技状態に移行しない押し順であり、再遊技役−C1〜C6、再遊技役−F1〜F5であれば、RT3遊技状態に移行させるまたはこのRT3遊技状態を維持する押し順)を報知するAT遊技の準備状態である。但し、遊技状態が非RT遊技状態であるときは、RT1遊技状態に移行させるために、押し順ベル(入賞役−A1〜A6、入賞役−B1〜B6)の当選に対してはその正解押し順が報知されない(上述したように、特定図柄が停止表示されるとRT1移行状態に移行するため)。なお、この内部遊技状態2においては、遊技状態の移行に関する押し順リプレイ及び押し順ベルの押し順だけを報知し、遊技状態の移行に関連しない押し順リプレイや押し順ベルがある場合は、その押し順は報知しないように構成してもよいし、これらの押し順も報知するように構成してもよい。そして、内部遊技状態制御手段162は、AT遊技に移行できる条件、すなわち、全てのリール21a〜21cが停止した後の現在の遊技状態がRT3遊技状態であれば、AT遊技が実行可能な状態である内部遊技状態3(AT)に移行させる。なお、本実施形態に係るスロットマシン1では、1回のAT遊技は所定の遊技数(例えば、50ゲーム)が設定されるが、AT抽選の当選時やATの実行開始時に抽選等を行ってAT遊技の遊技数を決定するように構成してもよい。
内部遊技状態3においては、上述した押し順リプレイ(再遊技役−C1〜C6(RT1遊技状態に移行してしまった場合は再遊技役−F1〜F5))と押し順ベル(入賞役−A1〜A6、入賞役−B1〜B6)の当選に対して、その正解押し順(再遊技役−C1〜C6、再遊技役−F1〜F5であれば、RT3遊技状態に移行させるまたはこのRT3遊技状態を維持する押し順であり、入賞役−A1〜A6、入賞役−B1〜B6については7枚役の図柄の組み合わせが揃う押し順である)を報知することにより、遊技者にAT遊技を提供することができる。また、内部遊技状態3で所定の遊技数の遊技が実行されると、内部遊技状態制御手段162は、ATがストックされているか否かを判断し、ATのストックがあるときは内部遊技状態1に移行し、ATのストックがないときは内部遊技状態0に移行する。なお、ATのストックがあるときは、前兆遊技数に1を設定して内部遊技状態1に移行する(すなわち、内部遊技状態1での1遊技後に、内部遊技状態2に移行することになる)。本実施形態に係るスロットマシン1では、後述するように、内部遊技状態3,5,7においてもAT遊技の権利が付与されてストックされるように構成されている。
また、内部遊技状態0において、上述した特別役(BB1〜BB3)に当選すると、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、内部遊技状態4(BB準備)に移行する。この内部遊技状態4は、特別遊技の準備状態であり、当選した特別役(BB1〜BB3)の図柄の組み合わせが有効ライン上に停止表示されるまで継続するように構成されている。そして、有効ライン上に特別役(BB1〜BB3)の図柄の組み合わせが停止表示されると、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、特別遊技中の状態(内部遊技状態0のときよりも、AT抽選に当選してATがストックされる確率が大きくなるように構成されてもよいし、内部遊技状態0と同じ確率で抽選するように構成されてもよい)である内部遊技状態5(BB)に移行する。さらに、内部遊技状態制御手段162は、特別遊技の終了条件を満たすと、上述したATがストックされているか否かを判断し、ATがストックされているときは、内部遊技状態2に移行し、ATがストックされていないときは、内部遊技状態0に移行する。
一方、内部遊技状態1、内部遊技状態2及び内部遊技状態3において、上述した特別役(BB1〜BB3)に当選し、当選した特別役に対応する図柄の組み合わせが有効ライン上に停止表示されないと、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、内部遊技状態6(上乗せ特化準備)に移行する。この内部遊技状態6も、特別遊技の準備状態であり、当選した特別役(BB1〜BB3)の図柄の組み合わせが有効ライン上に停止表示されるまで継続するように構成されている。そして、有効ライン上に特別役(BB1〜BB3)の図柄の組み合わせが停止表示されると、内部遊技状態制御手段162により、このスロットマシン1の内部遊技状態は、内部遊技状態7(上乗せ特化)に移行する(但し、内部遊技状態1、内部遊技状態2及び内部遊技状態3において特別役に当選し、当該遊技で特別役の図柄の組み合わせが停止表示されたときは、内部遊技状態6に移行せず、内部遊技状態7に移行する)。この内部遊技状態7は、AT遊技をより多く上乗せ可能な状態(これを、「上乗せ特化」と呼ぶ)であり、例えば、内部遊技状態5のときよりも、AT抽選に当選してATがストックされる確率が内部遊技状態7のときの方が大きくなるように構成されている。この内部遊技状態7においても、内部遊技状態制御手段162は、特別遊技の終了条件を満たすと、上述したATがストックされているか否かが判断され、ATがストックされているときは、内部遊技状態2に移行し、ATがストックされていないときは、内部遊技状態0に移行するが、本実施形態では、内部遊技状態6から内部遊技状態7に移行するときに、必ずATがストックされるため、内部遊技状態0に移行することはない。なお、内部遊技状態1において特別役(BB1〜BB3)に当選したときは、内部遊技状態4に移行する(当該遊技で特別役の図柄の組み合わせが停止表示されたときは内部遊技状態5に移行する)ように構成してもよい。
なお、上記の説明では、内部中遊技状態2において、「全てのリール21a〜21cが停止した後の現在の遊技状態がRT3遊技状態であれば、内部遊技状態3に移行する」ように構成した場合について説明したが、「RT2遊技状態からRT3遊技状態に移行したことを契機として内部遊技状態3に移行する」ように構成することも可能である。ここで、内部遊技状態3を終了したときに、ATのストックがあれば内部遊技状態1である前兆状態を経て、AT遊技の準備状態である内部遊技状態2からAT遊技が実行可能な状態である内部遊技状態3に移行する。この場合、前回のAT遊技におけるRT3遊技状態が継続している場合がある。そのため、内部遊技状態2において、RT2遊技状態からRT3遊技状態に移行したことを契機として内部遊技状態3に移行するように構成すると、既にRT3遊技状態にあるときは、遊技状態を、一旦RT1遊技状態に移行させて(入賞役−A1〜A6、入賞役−B1〜B6や再遊技役−C1〜C6が当選したときに、正解押し順を報知しない、又は、正解押し順以外の押し順を報知する)、再度、RT2遊技状態を経てRT3遊技状態に移行させなければならず、AT遊技が実行可能な状態である内部遊技状態3に移行するまでの期間が長くなることになる。
また、内部遊技状態2において、RT2遊技状態であるときに、遊技状態をRT3遊技状態に移行させる再遊技役−C1〜C6に当選したときは、RT3遊技状態に移行させるために、再遊技役03または再遊技役04の図柄の組み合わせが停止表示される押し順が報知されるが、本実施形態に係るスロットマシン1では、遊技者がその報知を無視して異なる押し順でストップボタン33a〜33cを操作したときも、内部遊技状態2から内部遊技状態3に移行させるように構成している。或いは、内部遊技状態2において、遊技状態がRT2遊技状態に移行したときに、内部遊技状態3に移行させてAT遊技を開始するように構成してもよい。この場合、AT遊技における押し順報知として、RT2遊技状態において、遊技状態をRT3遊技状態に移行させる押し順を報知する(再遊技役−C1〜C6に当選したときに再遊技役03又は再遊技役04の図柄の組み合わせが停止表示される押し順を報知する)ことで、RT3遊技状態に移行させることができる。
また、本実施形態に係るスロットマシン1では、AT遊技の抽選(AT抽選)を、主制御手段100によりスタートレバー32の操作を受け付けたときに実行しているが、全てのリール21a〜21cが停止した後の処理で実行するように構成してもよい。内部遊技状態、AT遊技回数(残りAT遊技数)、ATストック数、前兆遊技回数等は、RAM104にそれぞれ記憶する記憶領域を有しており、これらは先述したRAMクリアによって初期化処理の対象となるアドレスに記憶されることが望ましい。これにより、AT中に遊技施設が開場した場合に、翌日、遊技者がAT遊技の途中から再開始できることを防止することができる。一方、RT状態はRAMクリアの対象としなくてもよい。また、AT遊技で獲得できる枚数を抑制するため、AT遊技を実行可能な区間(有利区間)を所定の条件(所定のゲーム数(例えば1500ゲーム)や、所定の獲得枚数(例えば3000枚)を満たしたことを条件に終了させるようにすることができる。このとき、内部遊技状態、AT遊技回数(残りAT遊技数)、ATストック数、前兆遊技回数等、更に、AT遊技を実行可能な区間の終了条件を判断するためのカウンタは、設定変更処理を実行するための操作や設定変更処理を終了するときの操作(先述したRAMクリア)を要することなく、AT遊技を実行可能な区間を終了するための所定の条件を満たしたことに基づいてクリアする処理を実行することが望ましい。換言すると、内部遊技状態は通常状態となるので、一連の遊技で遊技者に大きな利益を与えることを防止し、過度に射幸心を煽らない遊技機を提供することができる。なお、RAMクリアに代えて、予め定められた初期値を設定するように構成してもよい。
(フリーズ制御手段170)
フリーズ制御手段170は、所定の条件を満たしたときに、遊技の進行(後述する「メイン処理」の進行)を所定の期間において不能にする(一時停止状態にする)又は抽選結果を停止表示させる制御を遅延するフリーズ演出を行う。すなわち、このフリーズ制御手段170は、フリーズ演出を実行するための抽選を行う抽選手段としての機能を有している。
(操作順序判定手段175)
操作順序判定手段175は、上述した押し順ベルや押し順リプレイが当選した遊技において、ストップボタン33a〜33cの操作順序(押し順)を取得する手段である。操作順序判定手段175により、当選役に割り当てられた押し順か否かを判定することやリール制御手段120によるリール21a〜21cの停止図柄の決定等が行われる。
(外部信号送信手段180)
外部信号送信手段180は、主制御手段100に接続された外部集中端子板80を介して、遊技に関する情報を出力するものである。ここで、遊技に関する情報とは、スタートレバー32が操作されたときの情報、投入された遊技メダルや払い出された遊技メダルの情報、特定の図柄の組み合わせ(例えば「赤7−赤7−赤7」)が有効ライン上に表示されたときの情報等であって、これらの情報に基づいて遊技回数やボーナスゲームの開始を外部装置で表示する(若しくは管理する)ための情報である。例えば、スタートレバー32が操作されたときの情報により遊技回数を表示することができ、投入された遊技メダルと払い出された遊技メダルの差から差枚数を表示することができる。また、特定の図柄が有効ライン上に表示されたときの情報により、ボーナスの回数を表示することができる。具体的な処理については後述する。
(制御コマンド送信手段185)
制御コマンド送信手段185は、主制御手段100の情報を副制御手段200に伝達するための制御コマンドを送信するための手段である。副制御手段200は、後述するように、主制御手段100から送信された制御コマンドに基づいて、演出の態様や実行タイミングを決定するように構成されている。なお、副制御手段200による制御コマンドの取りこぼし等を防止するために、同じコマンドを2回送信するように構成してもよい。
(第2乱数発生手段190)
主制御手段100は、この主制御手段100により発生する乱数値の更新が行われる第2乱数発生手段190を有している。この第2乱数発生手段190により発生する乱数値は2バイトの乱数値であって、ソフト乱数とも呼ばれる。この第2乱数発生手段190は、後述する割込処理S570が実行されるごとにソフト乱数更新処理S5570が実行されその値が更新されるように構成されている。また、このソフト乱数更新処理S5570は、遊技進行メイン処理S550により、遊技を開始してからスタートレバー32が操作されるまでの間と、リール21a〜21cが回転を開始してから全てのリールが停止するまでの間においても実行されるように構成されている。このように、割込処理S570だけでなく、遊技進行メイン処理S550内のループ処理においてソフト乱数を更新することにより、後述する遊技進行メイン処理S550内のソフト乱数の更新タイミング及び回数は、遊技者の操作の影響を受けて変化するため(1回の単位遊技でソフト乱数が更新される回数が遊技者の操作タイミング等で変化するため)、この第2乱数発生手段190で発生される乱数値(ソフト乱数)のランダム性を担保することができる。
(貯留数表示器71、獲得数表示器72、状態表示器73、設定値表示器74の制御)
本実施形態では、デジットは、デジット1〜5の5個を備える。そして、上述したように、デジット1及び2は、貯留数表示器71を構成し、デジット3及び4は、獲得数表示器72を構成する。さらに、デジット5は、設定値表示器74に相当する7セグである。図11に示すように、デジット5である設定値表示器74は、主制御基板101上に搭載されている。これに対し、デジット1〜4(貯留数表示器71及び獲得数表示器72)は、上述したように、表示基板70上に搭載されている。さらに、状態表示器73を構成する7個のLEDについても、表示基板70上に搭載されている。
図11に示すように、主制御基板101上には、メインCPU102と、3つのIC(IC1、IC2及びIC3)が搭載されている。なお、主制御基板101には、実際にはこれら3つ以外にもICが設けられているが、本実施形態では図示を省略している。ここで、IC1は、デジット信号の制御に係るICであり、IC2は、セグメント信号の制御に係るICである。また、IC3は、投入表示LED73e〜73gの制御に係るICである。
IC1〜IC3には、それぞれクロック信号入力端子を備える。一方、メインCPU102には、XCS1、XCS2、及びXCS3出力端子を有し、XCS1出力端子とIC1のクロック入力端子とが接続され、XCS2出力端子とIC2のクロック入力端子とが接続され、XCS3出力端子とIC3のクロック入力端子とが接続されている。
また、メインCPU102には、D0〜D7出力端子を有する。そして、IC1のD0〜D4入力端子と、メインCPU102のD0〜D4出力端子とが接続されている。さらにまた、IC1には、D5〜D7入力端子が設けられているが、これらはグラウンドと接続されている。さらに、メインCPU102のD0〜D7出力端子と、IC2のD0〜D7入力端子とがそれぞれ接続されている。また、メインCPU102のD0〜D3、及びD5〜D7出力端子と、IC3のD0〜D3、及びD5〜D7入力端子とがそれぞれ接続されている。さらにまた、IC3には、D4入力端子が設けられているが、D4入力端子はグラウンドと接続されている。
IC1には、D0〜D7出力端子からなる出力ポート3(後述する図17参照)を有し、D0〜D7入力端子とD0〜D7出力端子とがそれぞれ対応している。そして、D0〜D4出力端子からそれぞれデジット1〜5信号線が出て、図12中、表示基板70のデジット1〜5信号線(3番〜7番)に繋がる。なお、図17に示すように、出力ポート3のD5〜D7出力端子は、未使用(NC)である。
また、IC2には、D0〜D7出力端子からなる出力ポート4(図17参照)を有し、D0〜D7入力端子とD0〜D7出力端子とがそれぞれ対応している。そして、D0〜D7出力端子からそれぞれセグメントA〜P信号線が出て、図12中、表示基板70のセグメントA〜P信号線(8番〜15番)に繋がる。
さらにまた、IC1のD4出力端子からの信号線は、デジット5、すなわち設定値表示器74に接続される。また、デジット5は、7個のLED(a〜g)を有し、a〜gのLEDと、それぞれ、セグメントA〜G信号が接続されている。
さらに、IC3には、D0〜D7出力端子からなる出力ポート2(図17参照)を有し、D0〜D7入力端子とD0〜D7出力端子とがそれぞれ対応している。D3〜D6出力端子は未使用(NC)である。さらにまた、出力ポート4のD0〜D2出力端子から、それぞれ3枚投入表示信号線、2枚投入表示信号線、及び1枚投入表示信号線が出て、図12中、表示基板70の1枚投入表示信号線(16番)、2枚投入表示信号線(17番)、3枚投入表示信号線(18番)に繋がる。
なお、上記のIC1〜IC3のD0〜D7出力端子からの出力は、クロック入力端子の入力がオンからオフになるまで継続し続ける。
また、図12に示すように、表示基板70には、デジット1〜4が接続されている。表示基板70のデジット1信号の出力端子(3番)とデジット1とが接続されている。同様に、表示基板70のデジット2〜4信号の出力端子(4〜6番)とそれぞれデジット2〜4とが接続されている。また、デジット1〜4のいずれも、上述のデジット5と同様に、7個のLED(a〜g)を有する。そして、デジット1〜4のa〜gの各LEDは、それぞれ、セグメントA〜G信号の出力端子(8〜14番)と接続されている。
さらに、図12に示すように、表示基板70には、状態表示器73を構成する7個のLED(図10参照)、具体的には、遊技開始LED73d、精算表示LED73c、投入可表示LED73b、リプレイ表示LED73a、1枚投入表示LED73e、2枚投入表示LED73f、3枚投入表示LED73gが接続されている。
そして、遊技開始LED73d、精算表示LED73c、投入可表示LED73b、及びリプレイ表示LED73eの4つは、セグメントP信号の出力端子(15番)と接続されている。さらに、遊技開始LED73dはデジット1信号の出力端子(3番)と接続され、精算表示LED73cはデジット5信号の出力端子(7番)と接続され、投入可表示LED73bはデジット3信号の出力端子(5番)と接続され、リプレイ表示LED73aはデジット4信号の出力端子(6番)と接続されている。
また、図12に示すように、表示基板70の1枚、2枚、3枚投入表示信号の出力端子(16〜18番)は、それぞれ、1枚、2枚、3枚投入表示LED73e〜73gに接続されている。さらに、表示基板70の+5Vの電源電圧端子(1番及び2番)と、1枚、2枚、3枚投入表示LED73e〜73gとが接続されている。
上記構成において、図11中、メインCPU102は、通常時は、XCS1〜XCS3出力端子にハイレベル(約5V。以下同じ。)の電圧を印加しており、ハイレベルからローレベル(ほぼゼロV。以下同じ。)にしたとき(メインCPU102内に設けられたスイッチ(回路)により電圧を変化させる)にアクティブとなる。たとえば、IC1を駆動(選択、指定)したい場合には、XCS1出力端子をアクティブにする。これにより、アクティブ信号(チップセレクト信号)がXCS1出力端子から出力され、IC1のクロック入力端子に入力される。これにより、IC1が駆動状態(選択状態、又は指定状態ともいう。)となる。上記と同様にしてXCS2、XCS3出力端子をアクティブにすれば、それぞれIC2、IC3が駆動状態となる。
また、メインCPU102のD0〜D7出力端子は、通常、ローレベルの電圧が印加されており、「1」のデータ(データ信号)を出力するときにハイレベルの電圧が印加される。たとえば、メインCPU102のD0出力端子から「1」のデータ信号を出力すると、それぞれIC1〜IC3のD0入力端子にデータ信号が入力されるが、この瞬間に、XCS1出力端子がアクティブであるとき、IC1のD0入力端子にそのデータ信号が入力される。
さらにまた、IC1の出力ポート0には、通常時、ハイレベルの電圧が印加されており、データ信号が入力された入力端子に対応する出力端子にローレベルの電圧が印加される。たとえば、メインCPU102のD4出力端子から「1」のデータ信号を出力し、この瞬間に、XCS1出力端子がアクティブであるとき、IC1のD4入力端子にそのデータ信号が入力されるので、これに対応して、IC1のD4出力端子をローレベルにすると、デジット5のa〜gのLEDに電流が流れることが可能となる。
さらにまた、メインCPU102のD0及びD1出力端子から「1」のデータ信号を出力するとともに、XCS2出力端子をアクティブにすると、IC2のD0及びD1入力端子にデータ信号が入力される。IC2の出力ポート1は、通常時、ハイレベルの電圧が印加されている。ハイレベルの電圧が印加されているときは、図11中、トランジスタ以降の回路は、ハイ・インピーダンス(ローでもハイでもない状態)となっている。
そして、IC2のD0及びD1出力端子をローレベルにすると、エミッタとベース間の電流の変化に伴い、ハイレベル(+5V)と繋がるトランジスタのエミッタからコレクタに電流が流れ、セグメントA及びB信号線に電流が流れる。
したがって、上記のように、IC1のD4出力端子をローレベルにし、デジット5のa〜gのLEDに電流が流れることが可能な状態であるときに、上記のようにIC2のD0及びD1出力端子をローレベルにすると、セグメントA及びB信号線に電流が流れ、デジット5のa及びbのLEDが点灯するようになる。いいかえれば、デジット1〜5のセグメントA及びB信号線に電流が流れるものの、デジット1〜4にも約5Vの電圧が印加されているため、電位差が生じず、デジット1〜4に対応するa及びbのLEDは点灯しない。つまり、約0Vが印加されているデジット5に対して電流が流れることとなり、デジット5のa及びbのLEDが点灯するようになる。
また、たとえばIC1のD0出力端子をローレベルにする。さらに、IC2のD7出力端子をローレベルにすると、エミッタとベース間の電流の変化に伴い、ハイレベルと繋がるエミッタからコレクタに電流が流れ、セグメントP信号線に電流が流れる。その結果、図12中、遊技開始LED73dが点灯する。いいかえれば、デジット1〜5のセグメントP信号線に電流が流れるものの、デジット2〜5にも約5Vの電圧が印加されているため、電位差が生じず、デジット3に対応付けられている投入可表示LED73b、デジット4に対応付けられているリプレイ表示LED73a、及びデジット5に対応付けられている精算表示LED73cは点灯しない。つまり、約0Vが印加されているデジット1に対して電流が流れることとなり、デジット1に対応付けられている遊技開始LED73dが点灯するようになる。
さらに、IC3の出力ポート4のD0〜D7出力端子には、通常時はローレベルの電圧が印加されている。そして、IC3のD0〜D2出力端子のいずれかにハイレベルの電圧を印加すると、トランジスタのコレクタからエミッタに電流が流れ、トランジスタのコレクタ側がローレベルとなる。これに対し、図12に示すように、1枚、2枚、3枚投入表示LED73e〜73gの上流側と繋がる電源電圧端子(1番及び2番)には、常時、ハイレベルの電圧が印加されている。したがって、図11中、たとえばIC3のD2出力端子をハイレベルとすると、図12中、1枚投入表示信号の16番端子はローレベルとなり、1枚投入表示LED73eに電流が流れ、1枚投入表示LED73eが点灯する。
なお、図11及び図12に示すように、本実施形態の回路構成では、デジット1〜5のうち、いずれか1つのデジットのみを点灯可能に設定されている。ここで、全デジットを個別に点灯可能にするには、デジットごと、かつセグメントごとに、それぞれ独立した配線を設ける必要がある。しかし、このように設定すると配線数が多くなり、コストが増加し、組立負担も増大する。これに対し、図11及び図12のように、たとえばセグメントA信号であれば、全デジット1〜5のセグメントA信号と接続される回路構成とすれば、配線数を少なくすることができる。そして、本実施形態のような回路構成であっても、割込み処理ごとに点灯させるデジットを順次切り替えれば、実質上、全デジットを同時点灯させている状態とほとんど変わりなく(ヒトの目視では同時点灯しているかのように)見せることができる。また、割込み処理ごとに点灯させるLEDを異ならせれば、消費電力を抑え、LEDの焼き付きも抑制することができる。さらに、常時点灯しているLEDと比較して、点発光を繰り返すことにより、輝度を高くすることができる。
図13は、デジット1〜5と、セグメントA〜Pとの関係を示す図である。各デジットは、セグメントA〜Pから構成され、そのうちのセグメントA〜Gにより、いわゆる7セグを構成している。さらに、セグメントPは、状態表示器73のいずれか1つ(ただし、デジット2を除く)を構成している。
この図13に示すように、たとえばデジット1のうち、セグメントA〜Gは、貯留数表示器71の上位桁の7セグを構成するとともに、セグメントPは、遊技開始LED73dを構成している。図12に示すように、デジット1信号の出力端子(3番)は、デジット1の信号線に繋がるとともに、遊技開始LED73dの信号線にも繋がっている。また、遊技開始器73dは、表示基板70のセグメントP信号の出力端子(15番)と接続されている。
また、図13において、デジット3のうち、セグメントA〜Gは、獲得数表示器72の上位桁の7セグを構成するとともに、セグメントPは、投入可表示LED73bを構成している。図12に示すように、デジット3信号の出力端子(5番)は、デジット3の信号線に繋がるとともに、投入可表示LED73bの信号線にも繋がっている。また、投入可表示LED73bは、表示基板70のセグメントP信号の出力端子(15番)と接続されている。
同様に、図13において、デジット4のうち、セグメントA〜Gは、獲得数表示器72の下位桁の7セグを構成するとともに、セグメントPは、リプレイ表示LED73aを構成している。図12に示すように、デジット4信号の出力端子(6番)は、デジット4の信号線に繋がるとともに、リプレイ表示LED73aの信号線にも繋がっている。また、リプレイ表示LED73aは、表示基板70のセグメントP信号の出力端子(15番)と接続されている。
また、図8において、デジット5のうち、セグメントA〜Gは、設定値表示器74の7セグを構成するとともに、セグメントPは、精算表示LED73cを構成している。図11に示すように、デジット5自体は、主制御基板101上に搭載されているが、図11に示すように、デジット5信号の出力端子(7番)は、精算表示LED73cの信号線に繋がっている。また、精算表示LED73cは、表示基板70のセグメントP信号の出力端子(15番)と接続されている。
以上より、たとえばデジット1の全セグメント(セグメントA〜P)を点灯させたときは、セグメントA〜Gの点灯により、貯留数表示器71(上位桁)は、「8」を表示するとともに、セグメントPの点灯により、状態表示器73中、遊技開始LED73dが点灯する。
図14は、LED表示要求フラグ及びLED表示要求カウンタを示す図である。LED表示要求フラグは、どのLEDが点灯可能であるかを示すフラグであり、8ビット(D0〜D7)からなる1バイトデータとしてRAM104に記憶される。そして、LED表示要求フラグは、たとえばデジット1及び2、すなわち貯留数表示器71の上位桁及び下位桁が表示可能であるときは、D0及びD1ビットが「1」となり、他のデジットが表示不可でれば、他のビットは「0」となる。したがって、この場合のLED表示要求フラグのデータは、「00000011」となる。
図14に示すように、本実施形態では、通常中(遊技中及び遊技待機中)は、デジット5(設定値表示器74)をオフ、デジット1〜4をオンとする。よって、通常中のLED表示要求フラグは、「00001111」となる。また、設定変更中は、デジット5に設定値を表示するのでD4ビットが「1」となり、デジット1及び2(貯留数表示器71)を非表示とするため「0」となり、デジット3及び4(獲得数表示器72)には「88」を表示するため「1」となる。よって、設定変更中のLED表示要求フラグは「00011100」となる。
さらにまた、設定確認中(設定値確認モード)は、設定変更中と同様にデジット5に設定値を表示するのでD4ビットが「1」となる。さらに、デジット1〜4は、通常中と同じである。よって、設定確認中のLED表示要求フラグは「00011111」となる。
上記のLED表示要求フラグは、通常中、設定変更中、設定確認中に応じて値が異なるフラグである。これに対し、LED表示要求カウンタは、LED表示要求フラグと同様に、8ビット(D0〜D7)からなる1バイトデータであるが、タイマ割込み(2.235ms)ごとに値が更新されるデータであり、RAM104の所定の記憶領域に記憶される。図14に示すように、初期値として、「00010000」をとり、割込み処理ごとに、オン(「1」)となるデジットが一桁ずつ右にシフトする(シフト命令を実行)ように更新される。そして、LED表示要求カウンタの値が「00000001」のときに、次の割込み時には、「00000000」となるが、更新後に「0」になったときは、その割込み時に、再度、初期値である「00010000」に設定される。なお、全ビットが「0」になった次の割込み時に、初期値である「00010000」に設定しても良い。また、図14に示すLED表示要求フラグ及びLED表示要求カウンタの各ビットへのデジットの割り当ては、図14に示すものに限らず、種々設計することができる。たとえば、D0〜D2を未使用とし、D3〜D7を各デジットに割り当てることも可能である。
詳細な説明は後述するが、本実施形態では、LED表示要求フラグとLED表示要求カウンタとをAND演算した結果、「1」であるデジットが当該割込み処理時の点灯対象となる。なお、後述するように、スロットマシン1に復帰不可能エラーが生じた場合のエラー内容(番号)をLED表示するときには、LED表示要求フラグやLED表示要求カウンタを参照することはない。これに対し、通常エラー(電源のオン/オフ等なく復帰可能なエラー)時には、通常中と同様に、LED表示要求フラグとLED表示要求カウンタとをAND演算した結果、「1」であるLEDが点灯対象となる。
図15は、ROMに記憶されたLEDセグメントテーブルを示す図である。ここで、本実施形態では、獲得枚数、貯留枚数、指示番号に対応した指示内容(押し順を示す番号)を貯留数表示器71及び獲得数表示器72に表示し、設定値を設定値表示器74に表示するためのLEDセグメントテーブル2と、獲得数表示器72にエラー発生時におけるエラーの内容(種類)を表示するためのLEDセグメントテーブル1とから構成されている。LEDセグメントテーブルは、アドレスにごとにセグメントデータ、すなわちどのセグメントを点灯させるかのデータを記憶しているデータテーブルである。たとえば、アドレス「1211(H)」は、LEDセグメントテーブルのうちLEDセグメントテーブル2の先頭アドレス(すなわちオフセット値「0」のときに選択されるアドレス)であり、そのセグメントデータとして、16進数で「3F」(2進数で「00111111(B)」)を記憶している。なお、上述したように、本実施形態におけるLEDセグメントテーブルは、2つのテーブル(LEDセグメントテーブル1及びLEDセグメントテーブル2)に分けて構成した場合について説明したが、図15に示すようにこれらのテーブルをROM105の連続した領域に記憶している場合は、1つのLEDセグメントテーブルにより構成してもよい(例えば、セグメントに「C」を表示する場合にはオフセット値として「B(H)」を選択するようにする)。
そして、セグメントデータを2進数で表したときの8ビットデータを、「D7,D6,D5,D4,D3,D2,D1,D0」で表し、D0〜D6のデータがそれぞれLEDセグメントA〜G信号のオン/オフを表し、D7ビットがセグメントP信号のオン/オフを表す。たとえば、デジットに「0」と表示させるためには、図13中、セグメントA〜Fがオン、セグメントGがオフである。したがって、このときのセグメントデータは、「00111111」となる。よって、図15中、アドレス「1211(H)」のセグメントデータは、「00111111(B)」、すなわち、デジットに「0」を表示するデータとなる。以上のように、アドレス「1211(H)」を先頭として、順に、デジットに「0」、「1」、「2」、・・を表示するためのデータを記憶している。また、図15にけるオフセット値の使用については、後述する。
なお、本実施形態では、設定値の表示を設定値表示器74により行う場合について説明しているが、設定値表示器74を専用で設けることなく、貯留数表示器71の上位桁又は下位桁、あるいは、獲得数表示器72の上位桁又は下位桁に表示するように構成することもできる。換言すると、貯留数表示器71や獲得数表示器72にて設定値を表示するように構成してもよい。
(入力ポート及び出力ポートについて)
本実施形態のスロットマシン1において、主制御基板101は、図16に示す入力ポート0〜2と、図17及び図18に示す出力ポート0〜5とを有して構成されている。ここで、本実施形態の入力ポート0〜2及び出力ポート0〜5は、D0〜D7の8ビットが入力又は出力可能な1バイトのポートである。なお、入力ポート及び出力ポートは、図示したもの以外にも設けられているが、本実施形態では説明を省略する。また、図16〜図18中、未使用と表示したポートは、実際に使用されていないか、又は本実施形態において説明を省略する信号の入出力ポートを意味する(信号の入出力がないポートは、すべて未使用という意味ではない)。
入力ポート0は、リセット/設定スイッチ37、設定変更キースイッチ36、ドアスイッチ91、及び設定ドアスイッチ92の各信号と、電源断検知信号(電源断が発生したときに出力される信号)、及び満杯検知信号(ホッパー装置51から溢れ出たメダルを収納する不図示のサブタンク内の遊技メダルが満杯になったときに出力される信号)が入力される。なお、入力ポート0のD4ビット及びD7ビットは未使用となる。
入力ポート1は、操作スイッチであるストップボタン33(33a〜33c)、ベットボタン31(MAXベットボタン31a及び1ベットボタン31b)、清算ボタン34、及びスタートレバー32の各信号が入力される。なお、図16の例では、1ベットボタン信号(D4ビット)とMAXベットボタン信号(D3ビット)とを分けているが、MAXベットボタン31aのみが設けられる仕様のスロットマシン1であるときは、入力ポート1のD4ビットは未使用となる。
さらにまた、入力ポート2には、左、中、右リールの検出手段(リールセンサ)23(23a〜23c)、払出センサ71(詳細な説明は省略するが、2つのセンサで構成されている)、第2及び第1投入センサ62,61の各信号が入力される。
そして、後述するように、遊技を進行する情報処理として、1遊技あたり1回行うメインループないし遊技進行メイン処理S550が設けられている。メインループでは、投入されたメダルの検知や、全リール21a〜21cが停止した後の入賞処理等が行われる処理である。このメインループ中に、メインループを一旦抜けて、割込み処理(タイマ割込み処理)S570を実行する。そして、割込み処理S570では、入力ポート0〜2を検知する処理(後述するステップS576)等を実行し、その処理の実行後、再度、メインループに戻る処理を定期的に行っている。その割込み時間の間隔は、本実施形態では2.235msである。すなわち、2.235ms間隔の割込み処理ごとに、入力ポート0〜2のデータを取得する。そして、取得したデータに基づいて、入力ポートのレベルデータ(各ビットのオン/オフを示すデータ)、入力ポートの立ち上がりデータ(前回割込み時がオフで、今回割込み時がオンになったデータがどのビットであるかを示すデータ)、入力ポートの立ち下がりデータ(前回割込み時がオンで、今回割込み時がオフになったデータがどのビットであるかを示すデータ)を生成し、各データを記憶するためのRAM104の記憶領域にそれぞれ記憶する。したがって、これらのデータは、2.235msごとに更新されていく。
また、割込み処理がいつ行われたかにかかわらず、入力ポート0〜2のD0〜D7ビットのすべてを検知する。たとえば、リール21a〜21cの回転中(ストップボタン33a〜33cが操作される前)は、遊技者によってベットスイッチ31(31a,31b)が操作されることはあり得ないので、必ずしも入力ポート0のD1及びD2ビットのデータを取得する必要はないが、本実施形態では、すべてのビットのデータを取得する。
図17において、出力ポート3は、LEDデジット信号の出力用に用いられる。また、出力ポート4は、LEDセグメント信号の出力用に用いられる。これらのLEDデジット信号及びLEDセグメント信号は、設定値表示器74、貯留数表示器71、獲得数表示器72、状態表示器73を点灯/消灯させるための信号である。具体的には、たとえば出力ポート3のデータが「00000001」であるときは、デジット1のみがオンとなるので、貯留数表示器71の上位桁のみがオンとなる。さらに、出力ポート4のデータが「00111111」であるとき、セグメントA〜Fの信号がオンとなるので、デジット1には「0」と表示される。以上のように、出力ポート3でどのデジットを点灯させるかを定め、出力ポート4でどのセグメントを点灯させるかを定める。
また、出力ポート0のD6ビットからは、ブロッカ60の信号が出力される。さらにまた、D7ビットからは、ホッパーモータ75の駆動信号が出力される。ここで、ブロッカ60は、ブロッカの信号が「1」(オン)であるときは、メダル投入口51とホッパー52とを連結するメダル通路を形成し、「0」(オフ)であるときは、メダル投入口51と払出し口59とを連結する通路(返却通路)を形成する。たとえばブロッカ60の駆動時には、割込み処理によって、出力ポート3のD6ビット(図17参照)からブロッカ信号を出力する。
また、出力ポート0のD0〜D3ビットからは、左リール(第1回胴)21aの左リール駆動手段(モータ)22aの各φ0〜φ3信号が出力される。本実施形態の左、中、右リール駆動手段(モータ)22a〜22cは、上述したように1−2相励磁によりリール21a〜21cを回転するように構成されており、φ0〜φ3の4相の励磁の組合せでリール21a〜21cを駆動するようにしているため、各相の信号がそれぞれ所定のビットから出力される。また、出力ポート1のD0〜D3ビットからは、中リール(第2回胴)21bの中リール駆動手段22bの各φ0〜φ3信号が出力され、D4〜D7ビットからは、右リール(第3回胴)21cの右リール駆動手段22cの各φ0〜φ3信号が出力される。
また、出力ポート2のD0〜D2ビットからは、1〜3枚投入表示LED73e,73f,73gへの信号が出力される。
また、出力ポート5からは、外部集中端子板80への外部信号が出力され、本実施形態では、外部信号の種類に応じて外部信号1〜5、並びに、メダル払出信号及びメダル投入信号を有している。なお、外部信号は、外部集中端子板80を介してスロットマシン1の外部(ホールコンピュータや、ホールに設置されているデータカウンタ等)に出力するための信号である。
以上のようにして、1割込み内で、入力ポート0〜2の信号に基づくデータを記憶するとともに、出力ポート0〜5に対しては、記憶されている制御データに基づき信号を出力する。
(主制御手段100による押し順の報知)
上述したように、入賞役−A1〜A6及び入賞役−B1〜B6は、ストップボタン33a〜33cの押し順により獲得できる遊技メダルの枚数が変化する。また、再遊技役C1〜C6及び再遊技役−F1〜F5は、ストップボタン33a〜33cの押し順により、遊技状態が移行するため、結果として獲得できる遊技メダルの枚数に影響がある。したがって、これらの押し順については、その押し順を報知するときは、演出制御手段301を介して画像表示装置41で報知するだけでなく、主制御手段100でも報知するように構成されている(画像表示装置41が故障したときなど、主制御手段100のみでも遊技できるようにするため)。具体的には、本実施形態に係るスロットマシン1では、獲得した遊技メダルの枚数を表示するための獲得数表示器72に押し順を報知するように構成されており、図18を用いてその報知内容及び方法について説明する。ここで、図18は当選役と指示番号との関係を説明するための説明図である。
上述したように、本実施形態に係るスロットマシン1においては、3つのストップボタン33a〜33cに対して、(左中右)、(左右中)、(中左右)、(中右左)、(右左中)、(右中左)の6個の押し順、並びに、第1停止が左ストップボタン33aのとき、中ストップボタン33bのとき及び右ストップボタン33cのときの3個の押し順からなる合計9個の押し順がある。したがって、本実施形態に係るスロットマシン1では、押し順を報知可能な役に当選したときは、獲得数表示器72の一桁を用いて(本実施形態のスロットマシン1における獲得数表示器72は上述した図10に示すように、二桁の枚数が表示可能であり、その1の位の表示器(デジット4)を用いて)、1〜9の数字を表示させることにより、上記の押し順を報知する(報知しない場合を含む)ように構成されている。なお、本実施形態に係るスロットマシン1では、押し順が割り当てられた役に対してその押し順を示す指示番号が割り当てられており、その指示番号により、獲得数表示器72及び後述する演出制御手段301で画像表示装置41に演出で表示される押し順を決定するように構成されている。図18(a)に押し順が割り当てられた役の条件装置番号と指示番号との対応関係を示し、図18(b)に指示番号と獲得数表示器72及び画像表示装置41への指示内容を示す。例えば、条件装置番号が「3」の再遊技役−C1は、報知される押し順が「左中右」であるため、指示番号は「A1」となり、獲得数表示器72には「1」と表示され、画像表示装置41には「1・2・3」と表示される。また、条件装置番号が「17」の再遊技役−F5は、報知される押し順が「右左中」又は「右中左」のいずれかであるため、指示番号が「A5」又は「A6」となり、獲得数表示器72には「5」又は「6」と表示され、画像表示装置41には「2・3・1」または「3・2・1」と表示される。このように正解押し順が2つ以上ある場合には、主制御手段100は、指示番号の抽選や、当該役に対して前回表示した指示番号とは異なる指示番号を選択することにより、指示番号を決定するように構成されている。また、正解押し順の第1停止が左ストップボタン33aである入賞役−A1,A2,B1,B2に対して、指示番号「A7」(その指示内容は(1・−・−))が割り当てられ、正解押し順の第1停止が中ストップボタン33bである入賞役−A3,A4,B3,B4に対して、指示番号「A8」(その指示内容は(−・1・−))が割り当てられ、正解押し順の第1停止が右ストップボタン33cである入賞役−A5,A6,B5,B6に対して、指示番号「A9」(その指示内容は(−・−・1))が割り当てられる。なお、押し順を有しない役に当選したとき、押し順を有するが、その押し順により獲得できる遊技メダルの枚数に影響がない役(例えば、再遊技役−D1〜D3)、及び、押し順を報知しない内部遊技状態のときは、指示番号が「A0」となる。なお、図13(b)において、指示番号が「A0」のときの獲得数表示器72の指示内容は「表示なし」になっているが、「0」を表示するように構成してもよいし、デジット3に「=」、デジット4に「=」のような特殊態様を表示するようにしてもよい。
ここで、獲得数表示器72の表示において、遊技者が、獲得枚数が表示されているのか、押し順に関する情報が表示されているのかを判別可能なように、指示番号により押し順に関する情報を表示するときは、十の位の7セグメントディプレイに所定の記号(例えば、図13において、セグメントDとセグメントGを発光させた2本線)を表示するように構成されている。またこのとき、押し順ベルに対する押し順の情報か、押し順リプレイに対する押し順の情報かを判別可能なように、押し順ベルに対しては2本線を表示し、押し順リプレイに対しては3本線(例えば、セグメントA、セグメントD及びセグメントGを発光させる)を表示するなど、異なる記号を表示するように構成してもよい。なお、獲得数表示器72ではなく、専用の表示器を設けてもよいし、7セグメントディスプレイに限らず、その他の表示媒体を用いてもよい。例えば、複数のLED表示器を設け、その点灯パターンで上述した指示内容を表示してもよい。また、指示番号の代わりに、上述した当選番号(条件装置番号)を直接表示してもよいし、7セグメントディスプレイにより表示できる記号を用いて表示してもよい。また、ストップボタン33a〜33cの操作に応じて獲得数表示器72に表示する情報(数字または文字)が変化するように構成してもよい。具体的には、指示番号が「A1」のときは、スターレバー32が操作された時点で「1」を表示し、第1停止で左ストップボタン33aが操作されると「2」を表示し、第2停止で中ストップボタン33bが操作されると「3」を表示するように、左リール21a、中リール21b、右リール21cを「1」、「2」、「3」と対応付けて次に操作すべきリールを指示するように構成してもよい(第3停止で右ストップボタン33bが操作されると表示を消す)。
押し順に関する情報の表示(指示表示)は、原則、スタートレバー32が操作されてから、リール21a〜21cが定速回転に達する(ストップボタン33a〜33cの操作受け付けが有効となる)までの間に行われることが好ましい。また、獲得数表示器72による指示表示が行われた後に、画像表示装置41による指示表示が行われることが好ましい。これにより、主制御手段100から誤った指示番号が送信された場合や、副制御手段200(演出制御手段301)が主制御手段100から受信した指示番号とは異なる指示番号に対応する指示を行った場合であっても、既に、獲得数表示器72による指示表示が行われているので、その指示表示が、主制御手段100と副制御手段200で異なっていることに気が付くとともに、このような場合であっても、獲得数表示器72による指示表示に従っていれば、遊技者が不利益を被ることを防止することができる。
なお、指示表示は、リール演出(上述したフリーズ演出等)が終了してから、リール21a〜21cが定速回転に達するまでに指示表示が行われるようにしてもよい。また、リール21a〜21cが回転を開始してから、リール21a〜21cが定速回転に達するまでに指示表示が行われるようにしてもよい。また、リール21a〜21cが定速回転に達したと同時に、指示表示が行われるようにしてもよい。なお、画像表示装置41による指示表示が行われた後に、獲得数表示器72による指示表示が行われてもよいし、獲得数表示器72による指示表示と画像表示装置41による指示表示とが同時に行われてもよい。また、本実施形態に係るスロットマシン1では、獲得数表示器72の指示表示を、入賞判定後にクリアするように構成している(クリア後に獲得枚数の表示を行っている)が、第3停止受付後、または全回胴停止後にクリアしてもよい。また、上記の説明では、指示表示は、スタートレバー32が操作されてから、リール21a〜21cが定速回転に達するまでの間としたが、前回の遊技のスタートレバー32が操作されてから、今回の遊技のスタートレバー32が操作されるまでの時間が、最小遊技時間未満であったときは、スタートレバー32が操作されてからであっても、すくに指示表示を行うのではなく、最小遊技時間が経過してから(次回の最小遊技時間をセットしてから)指示表示を行うようにしてもよい。このようにすることで、指示表示がなされているにも関わらず、なかなかストップボタン33a〜33cが操作できないといった煩わしさを解消することができる。
獲得数表示器72による押し順に関する情報の表示は、遊技者の操作により(ストップボタン33a〜33cの操作毎に)、表示内容を変更せず指示番号を表示し続けるが、画像表示装置41による表示は、遊技者の操作により、表示内容が変更される。具体的には、ストップボタン33a〜33cの受け付けが開始されるまでに画像表示装置41に上述した表示(例えば、「1・2・3」)が表示され、ストップボタン33a〜33cが操作されるごとに、操作されたストップボタンに対する表示が変化する(そのストップボタンに対する数字が消えたり、暗い表示になったりする)。したがって、獲得数表示器72による表示は、遊技者が途中で操作順序を誤った場合であっても、最後のストップボタンの操作が受け付けられるまで指示番号を表示し続ける(表示を中断しない)が、画像表示装置41による表示は、押し順ナビを表示しなくなる(表示を中断する、若しくは、指示された押し順とは異なる順序で操作されたことを表示する)。ここで、画像表示装置41による表示をしなくなるのは、他の演出(失敗演出)を行うことができるからである。もちろん、遊技者が途中で操作順序を誤った場合は、画像表示装置41による表示だけでなく、獲得数表示器72による表示も中断させてもよい。ただし、この場合は、画像表示装置41による表示を先に中断し、その後、獲得数表示器72による表示を中断させることが好ましい。このようにすることで、画像表示装置41だけの表示がなされているといった状況をなくすことができるからである。また、遊技者が途中で操作順序を誤った場合であっても、画像表示装置41による表示を中断しなくてもよい。
なお、以降の説明では、獲得数表示器72に獲得枚数を表示するためのRAM104上の記憶領域(図20に示すアドレス「F011(H)」)と、指示番号の記憶領域(図20に示すアドレス「F036(H)」)をそれぞれ割り当てているが、獲得枚数と指示番号とを同時に表示することはないため、たとえば、獲得枚数データの領域に対して、獲得数を表示するときは獲得数を記憶し、指示番号を表示するときは指示番号を記憶するように構成してもよい。
(主制御手段100から副制御手段200に対する当選役に関する情報の送信)
後述するように、本実施形態に係るスロットマシン1では、副制御手段200(演出制御手段301)による演出のために、当選役決定手段110で決定された当選役を主制御手段100から副制御手段200に送信することが望ましい。しかしながら、当選役を示す条件装置番号が特定できてしまうと、正解押し順も特定できてしまうため、当選番号(又は、入賞及び再遊技条件装置番号)を副制御手段200に送信する構成の場合、不正行為(例えば、主制御手段100から副制御手段200に送信される制御コマンドを模した不正な制御コマンドを注入する行為、条件装置番号を抽出し正解押し順を不正に特定する行為、副制御手段200の不正改造行為等)が行われた際に、主制御手段100では、AT遊技の抽選に当選していない(指示表示が発生可能な内部遊技状態(例えば、図9(b)に示す内部遊技状態2〜3、6〜7)でない)にも関わらず、不正に正解押し順が特定されてしまったり、副制御手段200により勝手に画像表示装置41による表示が行われてしまったりする虞がある。そこで、本実施形態に係るスロットマシン1では、主制御手段100において、条件装置番号に対しマスク処理(正解押し順の情報を特定できないようにする処理)を行い、その情報(マスクされた条件装置番号を「演出グループ番号」と呼ぶ)を、条件装置番号の代わりに、副制御手段200へ送信するように構成している。このように構成することで、副制御手段200では、条件装置番号が送られてこなくても、マスク処理後の情報(演出グループ番号)に基づいて、演出を決定することができる。もちろん、必ずしも全ての条件装置番号においてマスク処理をしなければならないものではなく、以下の例外が認められてもよい。
(1)特別役(BB1〜BB3)の条件装置番号
(2)押し順によって出玉に影響のないリプレイ(例えば、遊技状態の移行に影響しない再遊技役)の条件装置番号
(3)押し順によって獲得枚数に差が生じない小役の条件装置番号
(4)獲得枚数が少ない(例えば、規定数未満の)小役の条件装置番号
(5)(3)かつ(4)
本実施形態に係るスロットマシン1では、AT遊技を許容している状態(例えば、内部遊技状態2,3,6,7等の指示表示が発生可能な内部遊技状態)、AT遊技を許容していない状態に関係なく、当選番号(入賞及び再遊技条件装置番号)にマスク処理をして副制御手段200に送信しているが、AT遊技を許容している状態など(例えば、指示表示が発生可能な内部遊技状態)では当選番号(入賞及び再遊技条件装置番号)を直接副制御手段200に送信し、AT遊技を許容していない状態など(例えば、指示表示が発生しない内部遊技状態)では当選番号(入賞及び再遊技条件装置番号)にマスク処理をして副制御手段200に送信するように構成してもよい。
ここで、条件装置番号のマスク処理について、図19及び図21を用いて説明する。ここで、図19はマスク処理の一例を説明するための説明図であり、図21はマスク処理の変形例を説明するための説明図である。本実施形態に係るスロットマシン1では、条件装置番号を、役の種類(再遊技役、入賞役の種類(ベル、スイカ)等)、演出の種類(同じ再遊技役でも、遊技状態の移行に関する役、弱チェリー、強チェリー等)、押し順による遊技への影響でグループ分けを行い(例えば、条件装置番号3〜8のように押し順によって出玉に影響がある再遊技役は1つのグループ、条件装置番号9〜11のように押し順によって出玉に影響ない再遊技役はそれぞれ別のグループに分ける)、図19に示すテーブルで管理している。そして、当選した条件装置番号の代わりに、このテーブルを用いて演出グループ番号を決定し、決定された演出グループ番号を副制御手段200に送信することで、いかなる条件装置番号に当選したか特定できないようにしている。その結果、正解の押し順を特定することができないようにしている。役の種類や、演出の種類は特定できるので、副制御手段200では、条件装置番号が送られてこなくても、当選役に応じた演出を決定することができる。例えば、この図19において、条件装置番号が3〜8の役(再遊技役−C1〜C6)に当選したときは、演出グループ番号として「3」が主制御手段100から副制御手段200に送信されるため、演出グループ番号が「3」であることを特定できても、どの役に当選しているかということや、その正解押し順については特定することができないが、再遊技役に応じた演出を決定することはできる。
なお、条件装置番号を演出グループ番号に変換する代わりに、条件装置番号を、上述したグループ分けを行い、当選した条件装置番号を、グループごとに共通の番号に書き換え、書き換え後の番号を副制御手段200送信することで、いかなる条件装置番号に当選したか特定できないようにすることも可能である。例えば、当選役に割り当てられた条件装置番号と重複しない番号を、上記グループに割り当てるように構成することができる。
このようなマスク処理後の情報は、基本的に主制御手段100によって参照する必要がないため、副制御手段200へ送信する直前に、マスク処理を経てから送信することが好ましい。これにより、マスク処理後の情報を、副制御手段200へ送信するまで、記憶しておく領域を別途設けておく必要がなくなるためである。もちろん、送信するよりも前に、マスク処理をしておいてもよい。
また、このようにマスク処理を行うと、副制御手段200において、演出グループ番号(又は、変換後の条件装置番号)からは正解押し順を判別することができないが、上述した指示番号が別途送信されるため、副制御手段200は、その指示番号から正解押し順を特定することができる。なお、本実施形態に係るスロットマシン1では、指示表示が発生可能な内部遊技状態(内部遊技状態2〜3、6〜7)であるときは、条件装置番号に対応する指示番号(A1〜A9)が副制御手段200に送信され、指示表示が発生しない内部遊技状態(内部遊技状態0〜1、5〜6)であるときは、指示番号として「A0」が送信される。また、本実施形態に係るスロットマシン1では、内部遊技状態ごとに、指示表示が発生可能な内部遊技状態であるか否かが定義されている。これにより、主制御手段100では、現在の内部遊技状態を参照するだけで、指示番号の決定や、指示表示をすることができるとともに、副制御手段200でも、受信した内部遊技状態や指示番号を参照するだけで、指示表示をすることができる。
また、上述した演出グループ番号又は変換後の条件装置番号と指示番号に加えて条件装置番号を副制御手段200に送信するように構成してもよい。この場合、指示表示が発生可能な内部遊技状態のときは、条件装置番号をマスクし(例えば、「0」を設定し)、指示表示が発生しない内部遊技状態のときや、指示表示が発生しない役(例えば、上述した再遊技役−D1〜D3等)のときは、マスクをしない状態の条件装置番号を送信するように構成してもよい。
ところで、上記の説明では、内部遊技状態ごとに、指示が発生可能な内部遊技状態であるか否かを定義しておくことにしたが、内部遊技状態ごとに定義しておくことなく、指示表示が発生可能か否かを判断する指標として、別途、押し順フラグというものを設け、RAM104の所定アドレスに記憶されるように構成してもよい。押し順フラグがオンであるときは、指示表示が発生可能であることを示し(内部遊技状態2〜3、6〜7では常に押し順フラグがオンになり)、他方、押し順フラグがオフであるときは、指示表示が発生可能でないことを示す。このような押し順フラグを設けることにより、同じ内部遊技状態であっても、指示が発生可能であるときと、指示が発生可能でないときとを設けることができる。例えば、基本的には、指示が発生しない内部遊技状態0(通常)においても、後述する押し順当てゲームを行うことができる(押し順当てゲームでは、指示が発生可能である必要があるため、押し順当てゲームを実行する遊技のみ押し順フラグをオンにする)。また、上記の説明では、内部遊技状態2(AT準備)と内部遊技状態3(AT)を別の内部遊技状態として管理したが、これを1つの内部遊技状態にまとめるとともに、現在がAT遊技であるか否かを判断する指標として、ATフラグというものを設け、RAM104の所定アドレスに記憶するように構成してもよい。ATフラグがオンであるときは、AT遊技であることを示し、他方、ATフラグがオフであるときは、AT遊技ではない(AT準備中である)ことを示す。
本実施形態に係るスロットマシン1では、また、主制御手段100により、獲得数表示器72による指示表示が行われた後(RAM104の所定アドレスに指示表示のための指示データを記憶する処理を実行した後)に、指示番号、演出グループ番号、及び特別役の条件装置番号が送信される(RAM104の送信用バッファに、指示番号、演出グループ番号、特別役の条件装置番号を記憶する処理を実行する)ことが好ましい。獲得数表示器72による指示表示が行われる前に、画像表示装置41による指示表示が行われることがなければ、誤った指示番号が送られた場合であっても、既に獲得数表示器72による指示表示が行われているので、画像表示装置41による指示表示が誤ったものであることに気づくことができるからである。すると、指示番号、演出グループ番号、及び特別役の条件装置番号は、主制御手段100により、獲得数表示器72による指示表示が行われた後に、主制御手段100から、指示番号、演出グループ番号、特別役の条件装置番号の順で、リール21a〜21cが定速回転に達するまでに副制御手段200に送信されることが好ましい。リール21a〜21cが定速回転に達するまでに、確実に、画像表示装置41による指示表示を行うためには、リール21a〜21cの回転開始前(加速処理の前)に、指示番号、演出グループ番号、特別役の条件装置番号が、制御コマンドとして送信するためのバッファにセットされていることが好ましい。
なお、主制御手段100は、副制御手段200に指示番号を送信した後に、獲得数表示器72による指示表示を行い、その後に、画像表示装置41による指示表示が行われるように構成してもよい。また、主制御手段100が副制御手段200に指示番号を送信した後に、遊技者が正解押し順を把握しやすい画像表示装置41による指示表示を先に行い、その後に獲得数表示器72による指示表示を行うように構成してもよい。このように構成することで、遊技者は正解押し順を即時に把握できスムーズに遊技を進行することができる。また、主制御手段100が副制御手段200に指示番号を送信した後に、獲得数表示器72による指示表示と、画像表示装置41による指示表示とを同時に行うように構成してもよい。
また、上述した押し順フラグを設ける場合は、押し順フラグも演出グループ番号、及び特別役の条件装置番号よりも前に副制御手段200に送信されている必要がある。スタートレバー32の操作時の処理において、画像表示装置41による指示表示を行うには、この時点で、押し順フラグがオンであるかオフであるかを判定する必要があるからである。
また、本実施形態に係るスロットマシン1では、内部遊技状態を、スタートレバー32が操作されるよりも前(後述する遊技開始処理S551において)に、副制御手段200に送信するように構成している。このようにすることで、副制御手段200では、スタートレバー32が操作されるよりも前に、次遊技の内部遊技状態(次遊技から内部遊技状態が移行するのか等も)を把握することができ、スタートレバー32が操作される前に、次遊技の内部遊技状態における処理の準備を行うことができるようになる。
例えば、内部遊技状態1(前兆)から内部遊技状態2(AT準備)へ移行する場合は、画像表示装置41に確定画面(ATに当選したことを示す演出)を表示することになるが、副制御手段200は、スタートレバー32が操作されるよりも前に、次遊技から内部遊技状態2(AT準備)に移行することが把握できているので、画像表示装置41に確定画面を表示するための準備をすることができ、スタートレバー32が操作された後に(特別役の条件装置番号に基づいて)、すみやかに、確定画面を表示することができる。その他にも、内部遊技状態2(AT準備)から内部遊技状態3(AT)へ移行する場合は、AT開始画面(ATを開始することを示す演出)や、内部遊技状態3(AT)中にATの残り遊技数(ATの実行可能数)を表示することになるので、スタートレバー32が操作されるよりも前に、画像表示装置41に残り遊技数を表示するための準備をすることができ(例えば、画像制御基板400のビデオRAMに残りゲーム数を表示するための情報をセットする)、スタートレバー32が操作された後に、すみやかに、残り遊技数を表示することができる。
また、上述したATフラグを設ける場合は、このATフラグもスタートレバー32が操作される前に、主制御手段100から副制御手段200に送信されていることが望ましい。
(AT遊技の開始条件について)
上述したように、本実施形態に係るスロットマシン1では、基本的に、内部遊技状態2(AT準備)において、全てのストップボタン33a〜33cが停止した後の遊技状態が、RT3遊技状態であることで、内部遊技状態3(AT)に移行するように構成されている。但し、内部遊技状態3(AT)の開始条件を、RT3遊技状態であることのみにしてしまうと、内部遊技状態2(AT準備)において、押し順リプレイ(遊技状態を移行させるための再遊技役−C1〜C6)の押し順ナビは無視し、押し順ベルの押し順には従うことで、内部遊技状態3(AT)へ移行させず、内部遊技状態2(AT準備)を延命させようとする遊技者がでてくる可能性がある。特に、本実施形態のように特別役を有している場合には、内部遊技状態2(AT準備)を延命させ、特別役の当選を待とうとする遊技者が出てくる可能性が高い。そこで、遊技状態がRT3遊技状態ではなかったとしても、押し順ナビに従わない場合は、強制的に内部遊技状態3(AT)へ移行させるようにすることで、内部遊技状態2(AT準備)を延命できないようにしている。しかし、押し順ナビを無視したことを理由に、如何なる場合であっても、内部遊技状態3(AT)へ移行する構成とすると、偶発的に、押し順を誤ってしまった場合であっても、内部遊技状態3(AT)へ移行してしまうことになり、不正な意図をもっていないような遊技者であっても、不利な遊技状態で内部遊技状態3(AT)が開始してしまうといった課題もある。したがって、状況によっては下記のいずれかを採用することができる。
(1)指示番号が示す押し順に従わない場合には、如何なる場合であっても、内部遊技状態3(AT)へ移行させる仕様
この仕様では、偶発的に、押し順を誤ってしまった遊技者を救済することはできないが、主制御手段100による処理負担の軽減ができるため、上述したように、本実施形態に係るスロットマシン1では、基本的にこの仕様を採用している。押し順ベルによる指示番号と押し順リプレイ(遊技状態の移行に関連する再遊技役)による指示番号を区別する必要がないため、遊技者の操作した押し順が、今回の指示番号が示す押し順と一致するか否かの判定のみでよく、処理負担の軽減(容量の削減)ができる。
(2)押し順リプレイ(遊技状態の移行に関連する再遊技役)当選時の指示番号が示す押し順に従わない場合には、内部遊技状態3(AT)へ移行させる仕様
この仕様であれば、ある程度、偶発的に、押し順を誤ってしまった遊技者を救済することができる。なぜなら、押し順ベルの押し順を、意図的に無視する遊技者は少ないと考えられ、押し順ベルの場合の指示番号の無視は、操作を誤ってしまった可能性が高いので、そのような遊技者を救済することができるからである。ただし、このようにするためには、指示番号をそもそも、押し順ベルと押し順リプレイ(遊技状態の移行に関連する再遊技役)で異なるものにするか(例えば、押し順ベルの「左中右」は、指示番号「A1」とし、押し順リプレイの「左中右」は、指示番号「B1」とし、指示番号「B1」が選択されているときに、指示番号が示す押し順と一致するか否かを判定する)、または遊技者の操作した押し順が、今回の指示番号が示す押し順と一致するか否かを判定した後に、今回が再遊技役の当選であったか(再遊技役の図柄の組み合わせが有効ライン上に表示されているかでもよい)の判定が必要であるため、主制御手段100による処理負担の増大(または、記憶容量の増大)が発生する。
(3)押し順リプレイ(遊技状態の移行に関連する再遊技役)当選時の指示番号が示す押し順に従わず、遊技状態が転落した場合には、内部遊技状態3(AT)へ移行させる仕様
この仕様であれば、かなりの偶発的な状態で押し順を誤ってしまった遊技者を救済することができる。なぜなら、押し順リプレイ(遊技状態の移行に関連する再遊技役)の押し順を無視しても、遊技状態が転落しなければよいので、押し順リプレイ(遊技状態の移行に関連する再遊技役)の押し順を誤ってしまった場合であっても救済される可能性があるからである。ただし、このようにするには、上記の(2)に加え、さらに遊技状態が転落したかの判定も必要となってくるので、主制御手段100による処理負担の増大(容量の増大)が発生する。本実施形態において、この仕様を採用するには、例えば、再遊技役02の図柄の組み合わせが有効ライン上に停止しても、RT1遊技状態に移行しないようにする必要がある。
なお、遊技状態がRT3遊技状態へ移行したことで、内部遊技状態3(AT)へ移行することとしたが、RT3遊技状態へ移行させる図柄の組合せが表示可能な再遊技役に当選したことをもって、内部遊技状態3(AT)へ移行するようにしてもよい。また、内部遊技状態2(AT準備)において、押し順リプレイ(遊技状態を移行させるための再遊技役−C1〜C6)の押し順ナビに従わない遊技者に対しては、一定期間は押し順ナビを行わないようにするといったペナルティを科すように構成してもよい。
(AT遊技の上乗せ(ストック)抽選の契機について)
本実施形態に係るスロットマシン1では、AT遊技の上乗せ(ストック)抽選の契機を、特定の遊技状態のときにのみに当選する条件装置番号の当選で行うように構成している。具体的には、図8に示すように、RT3遊技状態及びRT4遊技状態で当選する(言い換えると、非RT遊技状態、RT1遊技状態、RT2遊技状態では当選しない)条件装置番号が12(再遊技役−E)の当選時のみに、抽選するように構成している。このようにすることで、遊技者がAT遊技中に押し順ナビに従っていれば、RT3遊技状態を維持するので、AT遊技の上乗せ(ストック)抽選を受けることができるが、遊技者が押し順ナビに従わないようにしていれば、遊技状態がRT1遊技状態やRT2遊技状態に転落していることがあるので、結果として、上乗せの契機である再遊技役−Eに当選せず、AT遊技の上乗せ(ストック)抽選を受けることができない期間が発生する可能性がある。このようにすることで、押し順ナビに従わない遊技者に、ペナルティを課す(抽選を冷遇する)ことをせずに、一定期間の間だけAT遊技の上乗せ(ストック)抽選を受けさせないようにすることができるようになる。ここでは、再遊技を上乗せ抽選の契機としたが、特定の小役(たとえば、入賞役−C、D、E、F)でもよい。なお、上乗せをストックとしたが、AT遊技のゲーム数などの特典としてもよい。
(演出による指示表示について)
上述したように、再遊技役−D1〜D3には、ストップボタン33a〜33cの押し順が割り当てられており、押し順により有効ライン上に停止表示される図柄の組み合わせ(再遊技役)が変化するように構成されている。しかし、この再遊技役−D1〜D3は、押し順により有効ライン上に停止表示される図柄の組み合わせが変化するだけで、主制御手段100では、遊技者が得られる利益に影響はない。例えば、再遊技役−D1〜D3に当選したことで、ATのストックを決定していないし、有効ライン上に停止表示した図柄の組み合わせによって、ATのストックを決定するか否かを変化させていない。また、どのような押し順でも再遊技役の図柄の組み合わせが有効ライン上に停止表示されるため、遊技者が得られる利益は同一である。このような出玉に影響のない当選番号(入賞及び再遊技条件装置番号)が当選した遊技おいて、指示表示(出玉に影響を与えない、演出による指示表示)を行うか否かについては、主制御手段100により決定してもよいし(この場合は、指示番号も選択する)、副制御手段200により決定してもよい(この場合は、副制御手段200により、指示番号も選択する)。例えば、内部遊技状態3(AT)において、条件装置番号が「10」の再遊技役−D2に当選すると、主制御手段100は、演出グループ番号「5」と指示番号「A0」が副制御手段200に送信される。副制御手段200では、現在の内部遊技状態が内部遊技状態3(AT)であること、及び、演出グループ番号「5」であることにより、再遊技役05を停止表示させる(リプレイの図柄がV字状に並ぶ)か、それとも再遊技役01を停止表示させる(リプレイが中段に並ぶ)か、を決定し、その決定に従った指示表示を行うことができる(条件装置番号「10」は、出玉に影響のない条件装置番号のため、上述したようにマスク処理する必要がなく、演出グループ番号と1対1の関係になっており、副制御手段200は、主制御手段100からの指示番号が「A0」であっても、演出グループ番号「5」から再遊技役05の図柄の組み合わせを停止表示させる押し順を判別することができるようになっている)。すなわち、副制御手段200により指示表示を変えることができるようにしているので、副制御手段200による指示表示(画像表示装置41に表示されるストップボタン33a〜33cの押し順の報知)の内容によって、再遊技役05の図柄の組み合わせではなく、再遊技役01の図柄の組み合わせが所定のライン上に停止表示させることができる。上述したように、再遊技役−Eの当選でAT遊技の上乗せ(ストック)を抽選しており、この再遊技役−Eが当選したときは再遊技役03の図柄の組み合わせが有効ライン上に停止表示され(再遊技役04でもよい)、右下がりのライン上に「リプレイ」の図柄が揃うので、この再遊技役−D1〜D3が当選したときも、再遊技役01の図柄の組み合わせを有効ライン上に停止表示させる(中段にリプレイA又はリプレイBの図柄が揃う)ことで、遊技者に対して、ATのストックを決定しているのではないかという印象を与えることができる。主制御手段100により、決定する場合は、獲得数表示器72による指示表示も行うことができるので、出玉に影響を与えない、演出による指示表示であるか否かが、遊技者にわかりにくくはなるが、主制御手段100による処理負担が増大する。
また、再遊技役−D1〜D3に当選したときも、主制御手段100は、ストップボタン33a〜33cの押し順に関係なく、AT遊技の上乗せ(ストック)の抽選を行うように構成してもよい。この場合、AT遊技の上乗せに当選したときは、副制御手段200で、再遊技役05の図柄の組み合わせが停止表示される押し順を報知し、上乗せに当選しなかったときは、押し順の報知をしないように構成することができる。反対に、上乗せに当選したときは押し順を報知せず、上乗せに当選しなかったときに再遊技役05の図柄の組み合わせが停止表示される押し順を報知するように構成してもよい。あるいは、AT遊技の上乗せに当選したとき、および当選しなかったときで、再遊技役05の図柄の組み合わせを停止表示させる押し順を報知する確率を変化させ、抽選で報知する、しないを決定するように構成してもよい。また、再遊技役05の図柄の組み合わせを停止表示させる押し順ではなく、再遊技役01の図柄の組み合わせが停止表示される押し順を報知する(あるいは報知しない)ように構成してもよい。また、AT遊技の上乗せに当選しなかった場合でも、AT遊技のストックがあるときは再遊技役05(又は再遊技役01)の図柄の組み合わせが停止表示される押し順を報知する(若しくは報知しない)ように構成してもよい。このような構成とすることで、再遊技役−D1〜D3の当選に対して、AT遊技の上乗せ抽選の結果(若しくは、ストックがあってAT遊技が実行される可能性があること)の示唆の報知を副制御基板200側で決定することができる。また、再遊技−D1からD3としたが、押し順に依らず払出数が同じでかつ押し順で停止する図柄の組み合わせが異なる小役としてもよい。
(外部集中端子基板80を介した外部への信号出力について)
上述したように、主制御手段100を構成する外部信号送信手段180は、現在の遊技に関する情報を、外部集中端子基板80を介して外部に出力するように構成されている。この外部集中端子基板80は複数の信号を出力可能に構成されている(図17の出力ポート5参照)。まず、内部遊技状態3(AT)が開始する条件を満たしたこと(例えば、上述したように、全てのリール21a〜21cが停止した後に、遊技状態がRT3遊技状態である場合や、RT3遊技状態に移行させるための押し順ナビに遊技者が従わなかった場合)に基づいて、第1の信号(例えば、BB信号)をオンにするようにしている(AT遊技の初当り時は、第2の信号(例えば、RB信号)もオンにする)。また、内部遊技状態3(AT)の終了条件を満たしたときに、第1の信号(BB信号)をオフにするように構成している。
また、特別役(BB1〜BB3)が入賞したとき(特別遊技の開始が決定したとき)に、第2の信号(RB信号)をオンにし、特別遊技の終了条件を満たしたことにより、第2の信号(RB信号)をオフにするように構成している。
また、第1の信号(BB信号)がオンであるときに、特別役(BB1〜BB3)に当選したときであっても、第1の信号(BB信号)をオフにせず、特別役(BB1〜BB3)が入賞したことによって第1の信号(BB信号)をオフにするとともに、第2の信号(RB信号)をオンにするようにしている。これは、特別役(BB1〜BB3)の当選により第1の信号(BB信号)をオフにしてしまうと、内部遊技状態3(AT)の終了条件を満たしていないにもかかわらず、第1の信号(BB信号)がオフになることで、結果、特別役(BB)が当選したことの報知につながるためである。
なお、主制御手段100で管理するボーナスランプにより、確定報知を行った後であれば、特別役(BB1〜BB3)が入賞する前であっても第1の信号(BB信号)をオフにしてもよい。但し、ボーナスランプを設けていない場合には、画像表示装置41で確定報知を行った後であっても、特別役(BB1〜BB3)が入賞する前であっても第1の信号(BB信号)をオフにしてはいけない。これは、画像表示装置41は、副制御手段200により管理されるものであり、主制御手段100で管理するボーナスランプとは異なるためである。
(設定変更時の処理について)
本実施形態に係るスロットマシン1では、AT遊技に関する情報(内部遊技状態等)は、設定変更時にクリアされる。また、遊技状態に関する情報は、非RT遊技状態へ戻したくない仕様であればクリアしないが、戻してもよい仕様であればクリアする。なお、非RT遊技状態からRT1遊技状態へ復帰するまでに、多くの遊技数が必要な場合は、遊技者に負担を強いることになるため、クリアしない方が好ましい。
(RAM104における作業領域について)
上述した設定値の情報(設定値データ)やRT状態番号、特別役の条件装置番号(ボーナス条件装置番号)、貯留枚数データ、獲得枚数データ、LED表示要求カウンタ、LED表示要求フラグ等は、図20に示すように、RAM104の所定の領域に管理されている。なお、図20は、2バイトのアドレス(0000(H)〜FFFF(H))でメモリ空間を管理する場合についての例を示しているが、本発明がこの管理方法に限定されることはない。また、以降の説明において、「不正な改造その他の変更を防止するために必要な情報以外の情報が記憶され、又は記憶されることとなるROM105又はRAM104の記憶領域」を「使用領域」と呼ぶ。また、使用領域に格納されるプログラムを「第1プログラム」と呼び、使用領域外の領域に格納されるプログラムを「第2プログラム」と呼ぶ。図20は、第1プログラムで使用する作業領域(データ領域とも称す)と、第2プログラムで使用する作業領域とで構成されていることを示している。
(主制御手段100での処理)
次に、図21〜図43を合わせて用いて主制御手段100で実行される処理について説明する。
本実施形態に係るスロットマシン1において、主制御手段100のメインCPU102で実行される遊技用制御プログラムとして、電源投入時に実行されるプログラム開始処理S500及びこのプログラム開始処理S500に続けて実行されるプログラムであって、単位遊技毎に繰り返し実行される遊技進行メイン処理S550と、所定の割込間隔で実行される割込処理S570とで構成されている。なお、プログラム開始処理S500から遊技進行メイン処理S550を、メイン処理と称してもよい。
なお、以降の説明は、一般的な8ビットのCPUによる処理を前提とし、各々8ビットのAレジスタ(アキュームレータ)、Fレジスタ(フラグレジスタ)、Bレジスタ、Cレジスタ、Dレジスタ、Eレジスタ、Hレジスタ、Lレジスタを有し、プログラムの実行をプログラムカウンタPC及びスタックポインタSPで管理する場合を例に説明する。なお、ここでは、16ビットのデータを処理するときは、BレジスタとCレジスタ、DレジスタとEレジスタ、HレジスタとLレジスタのそれぞれを組みにしてBCレジスタ、DEレジスタ、HLレジスタとして利用するように構成されている。また、AレジスタとFレジスタを併せてAFレジスタと呼ぶ。また、Fレジスタは、下位ビットから順に、D0ビットは、演算結果によって桁上がり又は桁下がりしたときに「1」が設定されるキャリーフラグ、D1ビットは、加減算を行ったときに「1」が設定される加算/減算フラグ、D2ビットは、演算結果が奇数になった場合又はオーバーフローした場合に「1」が設定されるパリティ/オーバーフローフラグ、D3ビットは未使用、D4ビットは、4ビット目からの桁上がりがあったときに「1」が設定されるハーフキャリーフラグ、D5ビットは、後述するゼロフラグが「1」になった場合に、その他演算(LD命令)等に基づいて「1」が設定される第2ゼロフラグ、D6ビットは、演算の結果が「0」になった場合に「1」が設定されるゼロフラグ、及び、D7ビットは、演算の結果が正だったら「0」、負だったら「1」に設定されるサインフラグから構成されているものとする。また、図20には図示していないが、第1プログラムが使用するデータ領域及び第2プログラムが使用するデータ領域の各々には、第1プログラム及び第2プログラムの各々が使用するスタック領域が設けられている。スタック領域は、最初に入力されたデータが最後に取り出される(FIFO)という特徴を有するデータ領域であり、このスタック領域に蓄積されているデータの最上位のアドレスがスタックポインタSPで管理されている。すなわち、スタックポインタSPは、スタック領域内で最後に参照された(蓄積された)位置を指している。例えば、レジスタに記憶されたデータを退避させる命令(PUSH命令)のときにスタック領域にレジスタに記憶されているデータを記憶させるとともに、スタックポインタSPも更新する(ここでは、上位アドレスから下位アドレスに向けてデータをスタックするため、スタックポインタSPから退避したデータ量(バイト数)を減算する(1バイトのデータをスタックしたときは、スタックポインタSPから1減算する))。プログラム(モジュール)を呼び出す命令(CALL命令)のときにスタック領域に戻り番地を記憶させるとともに、スタックポインタSPも更新(減算)する。スタック領域に記憶(退避)しているデータをレジスタに記憶(復帰)させる命令(POP命令)のとき、レジスタにデータを記憶させるとともに、スタックポインタSPも更新(加算)する(スタック領域から取り出してレジスタに記憶させてデータ量(バイト数)をスタップポインタSPに加算する(1バイトのデータを取り出したときは、スタックポインタSPに1加算する))。CALL命令で呼ばれたプログラム(モジュール)を終了し、元のプログラム(戻り番地)に戻るリターン命令(RET命令)のとき、プログラムを戻り番地から再開するとともに、スタックポインタSPも更新(加算)する。
−プログラム開始処理S500−
本実施形態に係るスロットマシン1の電源スイッチ35が操作されて電源が投入されると、主制御手段100のメインCPU102において、図21に示すプログラム開始処理S500が実行される。このプログラム開始処理S500において、主制御手段100は、まず、メインCPU102のレジスタを初期化する(ステップS501)。例えば、RAM104の上位バイトを記憶するQレジスタがあるときは、このQレジスタに使用領域の先頭アドレスの上位バイト(図20に示す例では「F0(H)」)を記憶する。また、HLレジスタにRAM104の先頭アドレスを記憶する(ステップS502)。具体的にはHレジスタに「F0(H)」を記憶し、Lレジスタに「00(H)」を記憶する。そして、この先頭アドレスから順に、RAM104のチェックサムを算出する処理(図20に示す構成の場合は、使用領域のプログラムである第1プログラムが使用するデータ領域及び使用領域外のプログラムである第2プログラムが使用するデータ領域であるF000(H)〜F3FF(H)の範囲のチェックサムが算出される)を実行する(ステップS503、S504)。具体的には、HLレジスタが示すアドレスに記憶されているデータとAレジスタに記憶されているデータを加算し、加算した結果をAレジスタに記憶し、チェックサムの領域の最後のアドレスになるまでHLレジスタの値に「1」を加算するという処理が繰り返される。また、ステップS504における、チェックサム領域の最後のアドレスの判定は、Hレジスタに記憶されているデータのD2ビットが「1」であるか否かで判断することができる。すなわち、チェックサム領域を示す上位1バイトがHレジスタに格納されるが、「F0(H)」のときのHレジスタの値は2バイトで表現すると「11110000(B)」であり、「F4(H)」のときの値は「11110100(B)」となる。HLレジスタの値が「F3FF(H)」のときに「1」が加算されると「F400(H)」となるため、HレジスタのD2ビットが「1」となったか否かを判定することにより、チェックサム領域の最後のアドレスを判定することができる。このように構成することにより、Hレジスタの特定ビット(D2ビット)が「1」であるか否かを判断するだけで、チェックサム領域のチェックサムが算出されたか否かを判断することができる。
RAM104のチェックサムが算出されると、チェックサムが正常であるか否かが判断される(ステップS505)。上述した例では、Aレジスタに記憶されているデータが「0」のとき(正確には、Fレジスタのゼロフラグが「1」のとき)、チェックサムは正常と判断し、それ以外のときは異常と判断する。また、チェックサムが正常であると判断したときは、今回の電源投入の前の電源断において、後述する電源断処理S5400が正常に実行されたか否かを電源断処理フラグで確認する(ステップS506)。後述する電源処理済みフラグに記憶されているデータ(図20におけるF016(H)のデータ)をAレジスタに取得し、このAレジスタから「55(H)」を減算(比較演算)した値が「0」のとき(正確にはゼロフラグが「1」のとき)、電源断処理済みと判断する。そして、ステップS506で電源断処理済みである、すなわち、電源断処理S5400が正常に実行されたと判断すると、電源断復帰データに正常であることを示す値を記憶する(ステップS507)。本実施形態では、Aレジスタに記憶されているデータをEレジスタに記憶する。還元すると、Aレジスタに記憶されている「55(H)」をEレジスタに記憶する。なお、ステップS505でRAM104のチェックサムが正常でないと判断されたとき、及び、ステップS506で電源断処理済みでないと判断したときは、ステップS507を実行しない。
次に、主制御手段100は、入力ポート0のデータを読み出してAレジスタに記憶する(ステップS508)。この入力ポート0は、1バイト(8ビット)の情報であって、図16に示すように、下位ビット(D0ビット)から順に、リセット/設定スイッチ37、設定変更キースイッチ36、ドアスイッチ91、設定ドアスイッチ92の開閉又はオン・オフ情報が設定されるように構成されている。具体的には、リセット/設定スイッチ37がオンされるとD0ビットが「オフ(0)」となり、設定変更キースイッチ36がオンになるとD1ビットが「オン(1)」となり、前扉3が開放されたことをドアスイッチ91が検知するとD2ビットが「オン(1)」となり、設定変更キースイッチ36、及び、リセット/設定スイッチ37が格納されているカバーが開放されたことを設定ドアスイッチ92が検知するとD3ビットが「オフ(0)」となる。また、電源断検知信号が出力されるとD5ビットが「オフ(0)」となり、満杯検知信号が出力されるとD6ビットが「オフ(0)」となる。換言すると、本実施形態における入力ポート0は正論理(スイッチ等がオンとなったとき)で「1」となるビットと、負論理(スイッチ等がオフとなったとき)で「1」となるビットが混在している。次に、主制御手段100は、この入力ポート1の情報のうち、指定スイッチ(ドアスイッチ91、設定ドアスイッチ92及び設定変更キースイッチ36)の信号を取得する(ステップS509)。具体的には、Aレジスタに記憶されているデータと「01101001(B)」の排他的論理和を計算してAレジスタに記憶することで、正論理値に変換する。換言すると、入力ポート0に入力されているデータが、全て同一の論理(正論理又は負論理)で構成されている場合には、当該処理は不要である。そして、指定スイッチの全てがオンであるか否かを判断する(ステップS510)。具体的には、Aレジスタに記憶されているデータと「00001110(B)」の論理積を計算し、その結果をAレジスタに記憶し、このAレジスタの値から「00001110(B)」を減算(比較演算)することで、演算した結果が「0」のときゼロフラグが「1」となるので、このとき、指定スイッチの全てがオンであると判断する。すなわち、この入力ポート0の1バイトの情報を読み出すことにより、ドアの開閉又は設定変更キースイッチのオン・オフを検知することができる。例えば、設定変更キースイッチ36がオンになっており、ドアスイッチ91がオンになっており(前扉3が開放されており)、設定ドアスイッチ92がオンになっており(カバーが開いている)と、入力ポート0のデータは「01100111(B)」となる。そのため、「01101001(B)」との排他的論理和を求めると「00001110」となり、さらに、「00001110(B)」との論理積を求める「00001110」となるため、「00001110(B)」を減算(比較演算)すると結果が0となるため、D1,D2,D3が「1」であることから、指定スイッチの全てがオンであると判断することができる。なお、このとき、Eレジスタに記憶されている電源断処理済フラグの値をAレジスタに記憶する処理が実行される。また、指定スイッチとして、本実施形態ではドアスイッチ91、設定変更キースイッチ36及び設定ドアスイッチ92の3つを指しているが、これらに限られるものではない。例えば、ドアスイッチ91及び設定変更キースイッチ36の2つを指すものであってもよいし、さらにまた、他のスイッチを指定スイッチに含めてもよい。但し、ドアスイッチ91を指定スイッチに含めることにより、設定値を不正に変更するゴト行為を抑制することが可能となる。
主制御手段100は、ステップS510で指定スイッチの全てがオンであると判断したときは、RAM104の初期化範囲として特定範囲をレジスタに記憶し(ステップS511)、電源復帰が正常か否かを判断し(ステップS512)、正常であるときは、上述した初期化範囲として所定範囲をレジスタに記憶し(ステップS513)、後述する設定変更処理S517を実行する。ここで、本実施形態に係るスロットマシン1においては、電源復帰が正常に行われたときは、RAM104のうち、設定値等が記憶される所定の領域は初期化せず、それ以降の範囲を初期化し(図20の例では、F005(H)〜F1FF(H)(この範囲を「所定範囲」と呼ぶ)を初期化し(「0」を設定する))、電源復帰が正常に行われていないときは、設定値等の記憶領域である所定の領域を含む領域を初期化する(図20の例では、F000(H)〜F1FF(H)(この範囲を「特定範囲」と呼ぶ)ように構成されている。そのため、ステップS511でレジスタに特定範囲を記憶しておき、ステップS512で電源復帰が正常と判断したときは、上記レジスタに所定範囲を上書きして記憶するように構成されている。もちろん、電源復帰が正常に行われたか否かを判断し、正常に行われたときはレジスタに所定範囲を記憶し、正常に行われていなときはレジスタに特定範囲を記憶するように構成してもよい。なお、特定範囲を記憶するときは、HLレジスタに初期化領域の先頭アドレスである「F000(H)」を記憶し、BCレジスタに特定範囲のバイト数である「200(H)」を記憶する。一方、所定範囲を記憶するときは、HLレジスタに「F005(H)」を記憶し、BCレジスタに所定範囲のバイト数である「1F8(H)」を記憶する。また、ステップS512における電源復帰が正常か否かの判断は、ステップS510でEレジスタの電源断処理済フラグの値がAレジスタに記憶されており、また、電源復帰が正常であるときは、電源断処理済フラグの値が「55(H)」であることから、Aレジスタから「55(H)」を減算(比較演算)した結果、ゼロフラグが「1」であれば、電源断復帰正常と判断する。
一方、ステップS510で、指定スイッチの少なくとも一つがオフであると判断したときは、獲得数表示器72にE1エラーを表示させる(「1」を表示させる)ために、Dレジスタに「1」を表示させるためのセグメントデータ(00000110(B))を記憶させる(ステップS514)。Dレジスタに記憶された値により獲得数表示器72の表示を行う処理は、後述する復帰不可能エラー処理S5743で説明する。さらに、主制御手段100は、電源断復帰データが正常か否かを、上述したAレジスタから「55(H)」を減算(比較演算)した結果(ゼロフラグが「1」か否か)で判断し(ステップS515)、電源断復帰データが正常であると判断したときは、電源復帰処理S539を実行し、電源断復帰データが正常でないと判断したときは、復帰不可能エラー処理S5743を実行する(詳細は後述する)。この復帰不可能エラー処理S5743が実行されると、リセット/設定スイッチ37ではエラー状態を解除することができない復帰不可能エラーの状態が継続することとなる。ここで、このプログラム開始処理S500は第1プログラムに該当するため、このプログラム開始処理S500から呼び出される復帰不可能エラー処理S5743も、後述する第1プログラムの領域に格納されている。なお、後述する設定値エラーチェック処理S5740からも復帰不可能エラー処理S5743が呼び出されるが、この設定値エラーチェック処理S5740は第2プログラムに該当するため、設定値エラーチェック処理S5740から呼び出される復帰不可能エラー処理S5743は第2プログラムの領域に格納されている。すなわち、後述する復帰不可能エラー処理S5743は、第1プログラムの領域及び第2プログラムの領域にそれぞれ格納されている。
−設定変更処理S517−
主制御手段100は、設定変更処理S517に移行したときは、図22に示すように、スタックポインタSPに所定値をセットして初期化する(ステップS518)。図20に示す例では、第1プログラムが使用する領域の最後のアドレス(F1FF(H))から所定のデータをスタックする(RAM104に記憶する)ため、スタックポインタSPに「F200(H)」を記憶させる。スタックするデータとしては、レジスタの値、呼び出し命令(CALL命令)に伴うプログラムの戻り番地等が挙げられ、これらを記憶するための領域は、スタック領域と呼ばれている。そして、プログラム開始処理S500のステップS511又はS513で設定されたRAM104の所定範囲又は特定範囲を初期化する(ステップS519,S520,S521)。すなわち、RAM104における初期化の範囲(所定範囲又は特定範囲)は、その先頭アドレスがHLレジスタに記憶され、バイト数がBCレジスタに設定されているため、HLレジスタが示すアドレスに「0」を記憶し、HLレジスタに記憶されたデータに1を加算してHLレジスタに記憶し、BCレジスタに記憶されたデータから1を減算してBCレジスタに記憶するという処理を初期化の範囲に対して繰り返し、BCレジスタの値が「0」となったとき(ゼロフラグが「1」となったとき)、RAM104の初期化が終了したと判断する。なお、これらの所定範囲又は特定範囲は、図20に示すように、第1プログラムで使用される領域である。
また、主制御手段100は、RAM104のうち、第2プログラムで使用される領域(図20におけるF200(H)〜F3FF(H))を初期化する(ステップS522)。このとき、第1プログラム領域に格納されているプログラムから呼び出し命令(CALL命令)を用いて第2プログラム領域に格納されているプログラムを実行することとなる(第1プログラム領域及び第2プログラム領域については後述する)。具体的には、AFレジスタの値をスタック領域に記憶することにより退避した後に呼び出し命令を行い、第2プログラムによりRAMの初期化プログラムを実行開始する。第2プログラムによるRAM104の初期化プログラムでは、まず始めにSPレジスタに記憶されているデータを、スタックポインタ一時保存バッファ2(アドレス「F210(H)」)に記憶する。これにより、第1プログラムが使用していたスタック領域のうち、現在のスタックポインタ(次にスタックされる番地を示す情報)を保存(退避)することができる。その後、SPレジスタに「F400(H)」を記憶する。これにより、第2プログラムで使用するスタック領域のスタックポインタ(次にスタックされる番地を示す情報)をセットすることができる。その後、プッシュ(PUSH)命令により各種レジスタ(例えば、A、B、C、D、E、F、H、L、Q)をSPレジスタに記憶されているスタックポインタに基づいて第2プログラムで使用するスタック領域にスタックする。これにより、第1プログラムで使用していた各種レジスタに記憶されていたデータはスタック領域で保護することができる。その後、スタックポインタ一時保存バッファ2(アドレス「F210(H)」)に記憶されているデータをDEレジスタに記憶した後、先述した方法と同様に、HLレジスタにRAM104の初期化開始アドレスを記憶し、Bレジスタに初期化バイト数をセットすることにより、第2プログラムで使用されるRAM領域に「0」を設定することにより初期化する。その後、DEレジスタに記憶されたデータをスタックポインタ一時保存バッファ2(アドレス「F210(H)」)に記憶する。このように、第2プログラムで使用されるRAM領域を簡易的な処理でクリアする(全てのデータを消去して「0」とする)ことができるが、スタックポインタ一時保存バッファ2(アドレス「F210(H)」)のデータも消去してしまうと第1プログラムで使用するスタック領域のスタック位置が不明となることから、一度、レジスタ(本実施形態ではDEレジスタ)にデータを退避してから、RAM104のクリア処理を実行することにより、リターン(RET)命令で第1プログラムの戻り番地(CALL命令が記憶されたプログラムの次に記憶されているプログラムの番地)から処理を開始する際にも正しいスタックポインタにセットすることができる。その後、ポップ(POP)命令によりスタックしていた各種レジスタのデータを元に戻す(レジスタを復帰させる)。そして、スタックポインタ一時保存バッファ2(アドレス「F210(H)」)に記憶されているデータをSPレジスタにセットする。これにより、SPレジスタを第1プログラムで使用するスタックポインタの値に戻すことができる。これらの処理が終わったら、リターン(RET)命令により、第1プログラムの戻り番地からプログラムを再開することができる。第1プログラムでは、スタック領域からAFレジスタの値を復帰させる処理が実行される。
次に主制御手段100は、内蔵レジスタに各種値を設定して割込の種類や、タイマ割込の周期等の割込処理の起動設定を行い(ステップS523)、これにより、タイマ割込処理により約2.235ms毎に割込処理S570が実行されるように設定し(当該処理からタイマ割込処理が開始されるように設定し)、「設定変更開始」を示すデータをレジスタに(具体的にはDEレジスタに「0039(H)」を)記憶し(ステップS524)、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行する(ステップS525)。後述するように、この制御コマンドセット1処理S5000でセットされた制御コマンドは、割込処理S570により副制御手段200へ送信される(以降の説明においても同様である)。
また、主制御手段100は、割込処理S570の実行が開始されるまでの時間を確保するために、ウエイト処理を実行する(ステップS526)。このウエイト処理は、2バイト時間待ち処理であって、BCレジスタに所定の値(本実施形態では222(10進数))を設定し、後述する割込処理S570が実行される毎に、このBCレジスタの値から1を減算し、BCレジスタの値が「0」になったときにウエイトを終了するように構成されている。換言すると、ウエイト処理中は設定変更処理(メイン処理)の進行を遅延させるが、ウエイト処理中であっても割込処理は実行可能に構成されている。ここで、ウエイト処理を実行させる理由としては、副制御手段200(副制御基板300)のRAM330の初期化が完了するのを待つためである。すなわち、主制御手段100側におけるRAM104の初期化処理は比較的短時間で終了するのに対し、副制御手段200側のRAM340の初期化処理には時間がかかるため、主制御手段100側でウエイト処理を実行している。特に、主制御手段100側では、副制御手段200(副制御基板300)側で初期化処理が終了したか否かを検出することができないからである。例えば、主制御手段側は、上述したように、アドレス「F000(H)〜F1FF(H)」及び「F200(H)〜F3FF(H)」(バイト数で1024バイト)であるのに対し、副制御基板300のRAM330のクリア範囲は、例えばアドレス「000000(H)〜800000(H)
」(バイト数で約12〜13ギガバイト)である。したがって、副制御手段200(副制御基板300)側で未だ初期化処理中のときに、主制御手段100側では初期化を既に終了し、さらに処理が進んで、主制御手段100の制御処理の進行と、副制御手段200(副制御基板300)の制御処理の進行とが同期しなくなることを防止することができる。また、設定変更開始時の出力要求セット及び制御コマンドセット1の実行後、副制御手段200(副制御基板300)がRAM330の初期化を開始するが、RAM330の初期化が終了するために十分な時間をウエイト時間として設定する。これにより、副制御手段200(副制御基板300)側でRAM330の初期化処理を終了した後に、主制御手段100側でステップS527以降の処理に進むようにする。なお、ステップS524及びステップS525においてセットした設定変更開始時の制御コマンドは、ステップS526のウエイト処理中であっても副制御手段200(副制御基板300)に送信される。ただし、ステップS526でウエイト処理が実行されている間は、ステップS527以降の処理には進まない(メインループが進行しない)。このように構成することによって、副制御手段200(副制御基板300)に対し、設定変更開始時の制御コマンドを送信することができる。また、ステップS527以降の処理(設定変更の終了や、遊技の開始等)を、ウエイト時間だけ遅延させることができる。さらにまた、ステップS527以降の処理の遅延により、ステップS527以降の処理に付随する各種制御コマンド(設定変更終了時のコマンド、ベットボタン31の操作時のコマンド、スタートレバー32の操作に基づく役抽選結果に関するコマンド等)の送信タイミングを遅らせることができる。これにより、副制御手段200(副制御基板300)は、主制御手段100の処理と同期したタイミングで、各種コマンドに基づいて演出の制御及び出力が可能となる。これに対し、ステップS526のウエイト処理を実行しなかった場合には、主制御手段100の処理が先に実行されてしまう。その結果、たとえばスタートレバー32の操作に基づき役抽選結果Aとなり、リール21a〜21cの回転開始時に演出aを出力したいとき、リール21a〜21cの回転開始のタイミングで演出aが出力されず、少し遅れて演出aが出力されてしまう。
また、主制御手段100は、獲得数表示器72及び設定値表示器74を点灯させる(ステップS527)。具体的には、RAM104の獲得枚数データ(図20におけるアドレスF011(H))に「88(十進数)」を記憶する。そして、RAM104上のLED表示要求フラグ(図20におけるアドレスF013(H))に「00011100(B)」を記憶させる(図14(a)参照)。なお、LED表示要求フラグにこの値を設定すると、後述する割込処理S570により獲得数表示器72及び設定値表示器74を点灯することになる。また、このとき、HLレジスタに設定値データが記憶されているRAM104のアドレス(図20においては、F000(H))を記憶する。そして、スタートレバー32の操作が検出されるまで、設定値更新処理S5800を繰り返し実行する(ステップS528,S529)。この設定値更新処理S5800については後述する。なお、設定変更処理において、設定値表示器74のみ点灯表示可能とする場合には「00010000(B)」、設定値表示器74、獲得数表示器72、貯留数表示器71を点灯表示可能とする場合には「00011111(B)」をLED表示要求フラグに記憶させてもよい。獲得数表示器72や貯留数表示器71を点灯表示可能とする場合には、設定変更中であることが把握可能な特殊な態様(通常では表示されない態様、例えば「88」等)で表示することが好ましい。
主制御手段100は、ステップS529でスタートレバー32の操作を検出した後、設定変更キースイッチ36がオフになったことを検出すると(ステップS530)、獲得枚数データ(F011(H))をクリアし(「0」を記憶し)、LED表示要求フラグに「00001111(B)」を設定することにより、設定値表示器74を消灯状態とし、貯留数表示器71及び獲得数表示器72を点灯可能な状態とする(ステップS531)。なお、ステップS529におけるスタートレバー32の操作は、後述する割込処理S570で実行される入力ポート0〜2読込処理S5700で生成される入力ポート1立ち上がりデータ(アドレスF00E(H))のうち、D6ビットのスタートレバーセンサ信号立ち上がりが「1」であることで判断することができ、また、設定変更キースイッチ36のオフは、設定キー及び設定/リセットボタンエッジデータ(アドレスF00D(H))のうち、D0ビットの設定キースイッチ信号立ち下がりが「1」であることで判断することができる。そして、「設定変更終了」を示すデータをレジスタに記憶し(ステップS530)、具体的には、Dレジスタに「80(H)」を記憶し、Eレジスタに、F000(H)の設定値データの下位アドレス(「00(H)」)を記憶して、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行する(ステップS531)。このステップS532、及び、ステップS533により副制御手段200に送信するコマンドとして、設定変更の終了を示す情報と、設定された設定値を含む情報を含む制御コマンドを生成することができる。その後、遊技進行メイン処理S550を実行する。
設定値更新処理S5800を説明する前に、本実施形態に係るスロットマシン1における設定値について説明する。上述したように、本実施形態においては、設定変更処理S517が実行されると、RAM104のF000(H)に記憶されている設定値データを読み出し、設定値表示器74にその設定値データに対応した設定値を表示し、リセット/設定スイッチ37が操作される(押下される)毎に、設定値を更新して行くように構成されている。ここで、設定値は1〜Nの整数で表される。本実施形態では、「1,2,3,4,5,6」の6段階(N=6)に設定されているが、この構成に限定されることはない(例えば、N=3としてもよい)。また、この設定値に対応してRAM104に記憶される設定値データは0〜N−1の整数で管理されるように構成されている。例えば、上述の例では、設定値データが「0」のときは、設定値は「1」として表示され、設定値データが「5」のときは、設定値は「6」として表示される。なお、設定値と設定値データの関係も上記説明に限定されることはなく、変形例については後述する。
上述したステップS528,S529に示すように、設定値更新処理S5800は、スタートレバー32の操作が検出されるまで繰り返し実行される。この設定値更新処理S5800において、主制御手段100は、まず、Aレジスタに設定キー及び設定/リセットボタンエッジデータに記憶されているデータを格納する(ステップS5801)。この設定キー及び設定/リセットボタンエッジデータは、リセット/設定スイッチ37の操作に応じて、後述する入力ポート0〜2読込処理S5700で生成される。後述するように、リセット/設定スイッチ37が操作されていないときは、設定キー及び設定/リセットボタンエッジデータが「00000000(B)」となり、操作されたときは「00000010(B)」となる(操作されていないときはD1ビットが「0」で、操作されると「1」になる)。したがって、Aレジスタ記憶されているデータを右に1ビットシフトし、Aレジスタに記憶されているデータと「00000001(B)」の論理積演算(AND演算)を行い、HLレジスタが示すアドレス(F000(H))に記憶されているデータとAレジスタに記憶されているデータの加算演算(ADD演算)を行い、結果をAレジスタに記憶することで設定値データを更新する(ステップS5802)。すなわち、このステップS5802において、リセット/設定スイッチ37が操作されると、RAM104の設定値データの値(Aレジスタに格納されており、このAレジスタの値)に1が加算される。一方、このステップS5802において、リセット/設定スイッチ37が操作されないと、RAM104の設定値データの値(Aレジスタに格納されており、このAレジスタの値)に「0」が加算されることになるため、設定値データは更新されない。このように、大きな意味ではリセット/設定スイッチ37の操作に基づいて設定値データを更新しているが、より詳細には、リセット/設定スイッチ37のエッジデータに基づくデータを利用して設定値データを「1」更新するための処理として活用できるので、処理の負担を軽減することができる。換言すると、本実施形態の処理では、リセット/設定スイッチ37が操作されたか否かの判断肢を用いた処理(操作された場合には更新処理を実行し、操作されなかった場合には更新処理を実行しない)を実行することなく、設定値データを更新できるという利点がある。なお、設定キー及び設定/リセットボタンエッジデータ(アドレスF00D(H))のD0ビットに「リセット/設定スイッチ」のデータを記憶する場合には、上述した右に1ビットシフトする処理は不要である。
次に、主制御手段100は、Aレジスタに記憶されている設定値データの値が正常の範囲であるか、上述した例では0〜5(N−1)の範囲にあるかを判断し(ステップS5803)、正常範囲にないと判断したときはAレジスタの値を初期値(上述した例では「0」)に設定する(ステップS5804)。具体的には、Aレジスタに記憶されているデータから「6(十進数)」=Nを減算し、キャリーフラグが「1」のとき(0〜5の範囲であれば、「6」を減算すると負の値になるためキャリーフラグに「1」が設定され、6以上の値であれば、「6」を減算してもキャリーフラグは「0」となる)、Aレジスタに記憶されている設定値データは正常範囲であると判断し、キャリーフラグが「0」のとき正常範囲にないと判断することができる。また、「F000(H)」に記憶される設定値データが1〜6で管理されるような場合には、Aレジスタに記憶されているデータから「1」を減算してからその結果をAレジスタに記憶し、Aレジスタの値と「6」=Nを比較し、キャリーフラグが「1」のとき(0〜5の範囲であれば、「6」を減算すると負の値になるためキャリーフラグに「1」が設定され、6以上の値であれば、「6」を減算してもキャリーフラグは「0」となる)、Aレジスタに記憶されている設定値データは正常範囲であると判断し、キャリーフラグが「0」のとき、正常範囲にないと判断することができる。
そして、主制御手段100は、Aレジスタに記憶されているデータをHLレジスタが示すアドレス(F000(H))に記憶することで設定値データを保存する(ステップS5805)。なお、「F000(H)」に記憶される設定値データが1〜6で管理されるような場合には、Aレジスタに記憶されているデータに「1」加算した結果を保存するようにしてもよい。次に、1割込待機する処理を実行し(ステップS5806)、この設定値更新処理S5800を終了する。このステップS5806のウエイト処理を行うことにより、1回の割込処理に対して複数回の設定値更新処理S5800が実行されないようにすることができ、1回だけのリセット/設定スイッチ37の操作に対して設定値が複数段階更新されるのを防止することができる。具体的には、ステップS5806のウエイト処理では、後述する割込処理S570によって更新される割込カウンタ(F001(H))が更新された否かを判断するループ処理を実行している。換言すると、リセット/設定スイッチ37の立ち上がりデータがオンの状況下においては、ステップS5806のウエイト処理中に割込処理S570が実行され、この割込処理S570において実行される入力ポート0〜2読込処理S5700により、リセット/設定スイッチ37の立ち上がりデータをオフとしたデータをF00D(H)に記憶している。
以上の構成により、設定値データが「0→1→2→3→4→5」と変化すると、それに応じて設定値表示器74に表示されている設定値が「1→2→3→4→5→6」と変化し、また、設定値データが「5」のときにリセット/設定スイッチ37が操作されると設定値データが「0」に、設定値が「1」に戻って、上述した変化を繰り返すことができる。
なお、本実施形態に係るスロットマシン1では、RAM104の初期化が行われるときに、電源断復帰が正常に行われたときは設定値データが記憶されている領域は初期化されないが、電源断復帰が正常に行われなかったときは設定値データが記憶されている領域も初期化されてこの設定値データの値も「0」となってしまう。また、設定変更処理(設定変更モード)が実行されている旨の情報を副制御手段200に送信するため、割込処理S570を開始する必要がある。ここで、後述する設定値エラーチェック処理は、割込処理S570によって実行される。しかしながら、上述したように1〜6の設定値に対して設定値データを0〜5の範囲で管理しているため、RAM104の設定値データが初期化されたとしても正常範囲となるため、後述する割込処理S570において設定値エラーチェック処理S5740が実行されたとしても、設定値データが異常であると判断されることがないし、この構成により、設定値エラーチェック処理S5740を簡易な構成とすることができる(設定値データを1〜6の範囲で管理すると、初期化されて設定値データの値が「0」となると、上記割込処理S570で設定値エラーチェック処理が実行されたときに、エラーと判断されてしまうため、不都合が生じる)。
また、設定値更新処理S5800が繰り返し実行されている状況で(ステップS528,S529)、リセット/設定スイッチ37が操作されると、上述したように、RAM104の設定値データに更新された値が記憶される。そのため、ステップS528,S529のループ処理中に電源断が発生したとしても、その時点までの設定値データはRAM104に記憶されているため、電源断から復帰したときは、電源断が発生した時点から再開することができる。
−電源復帰処理S539−
主制御手段100は、電源復帰処理S532に移行したときは、図23に示すように、電源断処理S5400で退避したスタックポインタSPの値を復帰させ(ステップS540)、具体的には、後述する電源断処理S5400において(具体的にはステップS5405とステップS5406の間にスタックポインタSPを保存する処理がある)、スタックポインタSPに記憶されたデータをRAM104(の第1プログラム領域が使用するデータ領域(図20の「F146(H)」)に記憶する。その後、RAM104のうち、第1プログラムで使用される領域のうちデータが格納されることのない未使用領域の初期化範囲をレジスタに記憶し(ステップS541)、この初期化範囲の初期化を行う(ステップS542,S543)。また、主制御手段100は、RAM104のうち、第2プログラムで使用される領域(図20におけるF200(H)〜F3FF(H))のうち、未使用の領域を初期化する(ステップS544)。具体的には、AFレジスタの値をスタック領域に記憶することにより退避し、第2プログラムで使用される領域に「0」を設定することにより初期化し、スタック領域からAFレジスタの値を復帰させる処理が実行される。なお、このステップS544において、第2プログラムで使用される領域を初期化する処理も、第2プログラムとして実行される。次に、主制御手段100は、電源断前の入力データから最新のデータに更新するために、入力ポート0〜2のデータの読込を行う(ステップS545)。入力ポート0〜2読み込みについては後述する入力ポート0〜2読込処理S5700として説明する。その後、電源断復帰時に外部信号4を出力するときの出力時間をセットし(ステップS546)、割込の種類や、タイマ割込の周期等の割込処理の起動設定を行い(ステップS547)、これにより、タイマ割込機能により約2.235msごとに割込処理S570が実行されるように設定し(当該処理からタイマ割込処理が開始されるように設定し)、「電源断処理済フラグ」を示すデータをRAM104からクリアし(ステップS548)、電源断がされたときに中断されたプログラムの実行位置(本実施形態ではステップS573)に復帰する。
−制御コマンドセット1処理S5000・
制御コマンドセット2処理S5010−
制御コマンドセット1処理S5000は、制御コマンドセット2処理S5010を呼び出して、レジスタに記憶された情報を制御コマンドとして制御コマンドバッファに記憶させるための処理である。なお、この処理で設定された制御コマンドは、後述する制御コマンド送信処理S5290で副制御手段200に送信される。ここで、本実施形態に係るスロットマシン1における制御コマンドは2バイトデータで構成され、上位1バイトを「第1制御コマンド」と呼び、下位1バイトを「第2制御コマンド」と呼ぶ。また、副制御手段200に送信するための制御コマンドを記憶しておく制御コマンドバッファは、RAM104に設けられ、32個の制御コマンドをバッファ可能に構成されている(データサイズは64バイト)。
主制御手段100は、制御コマンドセット1処理S5000が呼び出されると、図24に示すように、まず、割込処理の実行を禁止し(ステップS5001)、制御コマンドセット2処理S5010を実行する(ステップS5002)。
この制御コマンドセット2処理S5010が呼び出されると、主制御手段100は、書込ポインタのアドレスをレジスタにセットし(ステップS5011)、このアドレスのデータ(書込ポインタの値)をレジスタにセットする(ステップS5012)。ここで、書込ポインタは、制御コマンドバッファにおいて、次の制御コマンドを書き込める位置を保持しており、制御コマンドバッファに1つの制御コマンドが書き込まれると、書込ポインタの値に1が加算される。なお、制御コマンドバッファは循環的に使用されるため、この制御コマンドバッファの最後の領域に制御コマンドが書き込まれると、書込ポインタは、制御コマンドバッファの先頭の領域の位置を記憶するように構成されている。同様に、後述する読込ポインタは、制御コマンドバッファに記憶された制御コマンドであって、未だ送信されていない制御コマンドうち、最初に記憶された位置を保持している。そして、制御コマンドバッファの先頭アドレスをレジスタにセットし(ステップS5013)、このレジスタの先頭アドレスの値に、レジスタにセットされた書込ポインタの値を2倍したものを加算することにより、制御コマンドを書き込むアドレス(以下「指定アドレス」と呼ぶ)を決定する(ステップS5014)。
次に、主制御手段100は、レジスタに記憶されている指定アドレスの位置に記憶されているデータを読み出し、このデータが「0」でないか否かを判断する。すなわち、この指定アドレスのデータが「0」でないときは、制御コマンドバッファに32個のコマンドがバッファされていることになるため、主制御手段100は、指定アドレスのデータとして「0」が記憶されているか否かを判断することにより、制御コマンドバッファに記憶されている制御コマンド数が32よりも小さいか否かを判断する(ステップS5015)。このステップS5015で制御コマンドバッファにバッファされている制御コマンドの数が32より少ないと判断すると、主制御手段100は、制御コマンドバッファに書き込むデータが、RAM104に記憶されているデータを参照する必要があるデータか否かを判断し(ステップS5016)、RAM104に記憶されているデータを参照するときは、第2制御コマンドとして書き込むデータをRAM104から読み出してレジスタに記憶する(ステップS5017)。ここで、「データを参照する必要があるデータ」としては、規定数情報(再遊技時の自動投入枚数)、設定値情報、遊技状態の情報、内部遊技状態の情報等である。そして、制御コマンドセット1処理S5000が実行される直前の処理でレジスタに記憶されたデータを、第1制御コマンドを示すデータとして送信用レジスタの指定アドレスの位置に記憶し(ステップS5018)、レジスタに記憶されている指定アドレスに1を加算して、RAM104の第1制御コマンドを記憶した次のアドレスに、レジスタに記憶されている第2制御コマンドを示すデータを記憶し(ステップS5019)、書込ポインタに1を加算し(ステップS5020)、制御コマンドセット1処理に戻る。そして、主制御手段100は、割込を許可し(ステップS5003)、制御コマンドセット1処理S5000を終了して、この制御コマンドセット1処理S5000が呼び出された処理に戻る。
−遊技進行メイン処理S550−
本実施形態に係るスロットマシン1は、電源投入後に上述したプログラム開始処理S500、設定変更処理S517または電源復帰処理S539が実行されると、遊技の進行を制御する遊技進行メイン処理S550が実行される。ここでは、1回の遊技の進行に沿ってこの遊技進行メイン処理S550を説明する。
主制御手段100は、遊技進行メイン処理S550に移行したときは、図25に示すように、まず、遊技開始処理を実行する(ステップS551)。この遊技開始処理S551では、前回の遊技での指示番号をクリアし、また、前回の遊技で有効ライン上に停止表示された図柄の組み合わせにより、今回の遊技が再遊技又は特別遊技(BB遊技)であると判断したときは、それぞれの遊技に対応する作動フラグをセットする。また、前回の遊技において、副制御手段200で実行される所定の演出が終了したときは、この所定の演出の終了に関する演出を副制御手段200で実行するために、所定の時間のウエイト(待機処理)を行う。また、各種遊技情報(設定値、遊技状態、内部遊技状態)を示す制御コマンドを制御コマンドバッファに書き込む(具体的には、上述した制御コマンドセット1処理S5000により実行される)。また、今回の遊技が再遊技であるときは、前回の遊技でベットされた遊技メダルを自動投入する処理を行う。さらに、セレクタのブロッカ60をオンにし、メダルの流路を形成する。但し、今回の遊技が再遊技であって、クレジット数が最大(50枚)であるときは、ブロッカ60をオンにしない。
次に、主制御手段100は、メダル投入口51から投入されるかベットボタン31が操作されてベットされた遊技メダルの数と規定数が一致し(遊技メダル限界フラグがオンの状態)、且つ、スタートレバー32がオンされるまで、繰り返し遊技メダル管理処理を実行する(ステップS552,S553)。具体的には、遊技メダルが投入されたときに、規定数に達していないときはベット数に1を加算し、規定数に達したときは遊技メダル限界フラグをオンにし、遊技メダル限界フラグがオンのときは貯留枚数に1を加算する。この、貯留枚数は貯留数表示器72に表示される。また、貯留枚数が最大になると、ブロッカ60をオフにする。なお、遊技メダル限界フラグは、遊技開始処理S551でクリアされる。また、このステップS553で遊技メダル限界フラグがオンで且つスタートレバー32がオンされたと判断すると、スタートレバー受付フラグがオフにされる。また、このスタートレバー受付フラグがオンとなっているときはスタートレバー32が操作可能であることを所定のランプで報知する。そして、主制御手段100は、ステップS553でベットされた遊技メダルの枚数と規定数が一致し、且つ、スタートレバー32がオンされたと判断すると、セレクタのブロッカ60をオフし(ステップS554)、役抽選処理S5080を実行して当選役を決定し(ステップS555)、続いて内部遊技状態設定処理S5120により当選役や内部遊技状態に基づいた処理を実行する(ステップS556)。また、所定の条件を満たしたときは、リール回転開始前処理S5170を実行し(ステップS557)、続いてリール停止管理処理により本遊技を実行する(ステップS558)。具体的には、最小遊技時間の経過後、当選役等に基づいてリールの停止位置等を作成し、ストップボタン33a〜33cの操作に基づいて対応するリールの停止位置を作成する。また、リール回転開始前処理で獲得枚数表示器72に指示番号を表示しているときは、全てのリールが停止したときに獲得枚数表示器72の表示をクリアする。そして、全てのリール21a〜21cが停止すると、有効ライン上に停止表示されている図柄の組み合わせに基づいて何れかの役に対応する図柄の組み合わせが停止したか否かを判断し(ステップS559)、入賞役に当選しているときは、停止表示されている図柄の組み合わせの入賞役に割り当てられている枚数の遊技メダルの払出しを行い(ステップS560)、遊技終了チェック処理S5220を実行し(ステップS561)、一回の遊技を終了してステップS551に戻る。
−役抽選処理S5080−
役抽選処理S5080は、上述した遊技進行メイン処理S550において、当選役を決定する処理である。図26に示すように、役抽選処理S5080において、主制御手段100は、第1乱数発生手段である乱数発生器103の乱数値レジスタから乱数値(2バイト乱数)を取得して第1の乱数値とし(ステップS5081)、また、第2乱数発生手段190からソフト乱数(2バイト)を読み出して第2の乱数値とする(ステップS5082)。そして、第1の乱数値と第2の乱数値から演算で(例えば、加算処理により)第3の乱数値を生成して役抽選用乱数値とし(ステップS5083)、この役抽選用乱数値をレジスタにセットする(ステップS5084)。このように、第1乱数発生手段である乱数発生器103から取得した第1の乱数値と、第2乱数発生手段190から取得したソフト乱数である第2の乱数値とから演算により第3の乱数値を生成して役抽選に用いることにより、この役抽選で用いる乱数値のランダム性を高くし、当選する役に規則性がないようにすることができる。もちろん、役抽選を第1の乱数値に基づいて(第2の乱数値を用いずに)実行してもよい。
主制御手段100は、このようにして生成された役抽選用乱数値を用いて役の抽選を行うが、このとき、本実施形態に係るスロットマシン1では、再遊技役、入賞役、特別役の順で抽選を行う。但し、再遊技役の抽選はRT5遊技状態(特別遊技状態であって、RT5−12遊技状態又はRT5−3遊技状態)では実行されない。また、特別役の抽選は、RT4遊技状態(内部中遊技状態)及びRT5遊技状態(特別遊技状態であって、RT5−12遊技状態又はRT5−3遊技状態)では実行されない。
まず、主制御手段100は、特別役の条件装置が作動しているか否か(役決定情報記憶領域の特別役が当選していることを示す特別役の条件装置フラグがセットされているか否か)をRAM104から取得して、非内部中遊技状態であるか内部中遊技状態であるかを決定し(ステップS5085)、次に、特別遊技が作動しているか否か(遊技状態情報記憶領域の特別遊技中であることを示す特別遊技作動フラグがセットされているか否か)を判断することによりRT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)であるか否かを判断し(ステップS5086)、RT5遊技状態(RT5−12遊技状態若しくはRT5−3遊技状態)でないときは、非RT遊技状態、RT1遊技状態、RT2遊技状態、RT3遊技状態及びRT4遊技状態のいずれの遊技状態であるかに応じて再遊技役の条件装置内部抽選アドレステーブルをセットし(ステップS5087)、抽選判定処理S5100を実行する(ステップS5088)。ここで、条件装置内部抽選アドレステーブルとは、図7に示す条件装置番号(当選番号)を検索キーとし(以下、検索番号と呼ぶ)、この検索番号に対して当該検索番号に対応する役の確率データ(図7に示す置数)が役の種類毎(再遊技役、入賞役、特別役)に設定されているテーブルである。後述する抽選判定処理S5100で当選の判定を行う順に検索番号と確率データの組みが並んで記憶されている。なお、以降の説明では当選判定を行う役の全てを検索番号及び確率データの組として列挙している場合について説明するが、検索番号が連続し、同じ確率データを繰り返すときは、その繰り返すデータの検索番号、確率データ及び繰り返し数を記憶するように構成してもよい。例えば、図8に示す構成の場合、非RT遊技状態において検索番号(当選番号)が18〜23の入賞役−A1〜A6は、その置数(確率データ)が1670であるため、「検索番号=18」、「確率データ=1670」、「繰り返し回数=4」と表し、繰り返す毎に検索番号に1を加算するように構成することができる。このように構成すると、条件装置内部抽選アドレステーブルに使用するメモリ量を削減することができる。
図27に示すように、抽選判定処理S5100において、主制御手段100は、再遊技役又は入賞役の抽選判定であるか否かを判断し(ステップS5101)、再遊技役又は入賞役の抽選判定であるときは、その条件装置内部抽選アドレステーブルの最初の検索番号をセットする(ステップS5102)。例えば、再遊技役の抽選判定であって、再遊技役の確率データが図8に示す順序に設定されている場合、検索番号として「1」が設定される。次に設定値別の確率データがあるか否かを判断し(ステップS5103)、設定値別の確率データがないときは、現在設定されている検索番号に基づいて設定値共通の確率データを取得し(ステップS5104)、設定値別の確率データがあるときは、設定値を取得し(ステップS5105),この設定値と現在設定されている検索番号に基づいて設定値別の確率データを取得する(ステップS5106)。また、役抽選処理S5080のステップS5084でセットした役抽選用乱数値(第3の乱数値)を読み込み(ステップS5107)、この役抽選用乱数値から現在の検索番号の確率データを減算し(ステップS5108)、確率データが減算された役抽選用乱数値を保存する(ステップS5109)。そして、主制御手段100は、現在の役抽選用乱数値が0より小さいかを判断し(ステップS5110)、役抽選用乱数値が0以上のときは、検索番号に1を加算し(ステップS5111)、全ての検索番号について検索が終了したか否かを判断し(ステップS5112)、当否判定が終了していないときは、ステップS5107に戻り上記の処理を繰り返す。ここで、設定値別の確率データがあると判断した場合(上述したステップS5103でYesと判断されたとき)の処理では、設定値データを用いた抽選を実行することとなる。このとき、ステップS5106で取得する確率データは、ROM105の第1プログラムのデータ領域に記憶されたテーブルの値である。例えば、検索番号34(当選番号32)の置数(当選確率)が、設定値「1」のとき「204」、設定値「2」のとき「205」、設定値「3」のとき「210」、設定値「4」のとき「210」、設定値「5」のとき「213」、設定値「6」のとき「215」である場合、ROM105のアドレスXに「204」、X+1に「205」、X+2に「210」、X+3に「210」、X+4に「213」、X+5に「215」が記憶されている。このような場合、確率データのテーブルの先頭アドレス(上述の例では「X」)を指定し(例えば、HLレジスタに記憶し)、RAM104に記憶されている設定値データをオフセット値として記憶し(例えば、Aレジスタに記憶し)、先頭アドレスとオフセット値との演算処理(例えば、HLレジスタとAレジスタの値を加算する処理)によって指定されるアドレスのデータを確率データとして取得することができる。このような場合、RAM104に記憶されている設定値データが、「0」から始まる値(本実施形態では「0」〜「5」)で記憶されることにより、設定値データをオフセット値としてそのまま利用することができる。例えば、設定値データ「1」から始まる値(設定値データが「1」〜「6」)の場合には、オフセット値として利用するには、設定値データを「1」減算してからテーブルを選択する必要がある。よって、設定値ごとに確率が異なる場合の抽選処理において、設定値データを「0」から記憶することにより、簡易な処理で実行することができる。なお、確率データを取得する演算処理は、これに限られるものではない。例えば、確率データが2バイトで表現される(十進数で256〜65535)場合には、設定値データを2倍した値をオフセット値とすることでより、対応した確率データを取得することができる。また、AT抽選等の別の抽選処理であって、確率データが設定値ごとに異なる場合であっても、同様なデータテーブル構成、演算処理によって同等の効果を発揮することができる。
以上より、ステップS5110で役抽選用乱数が0より小さくなったときに、そのときの検索番号の役に当選したと判断し、ステップS5112において、条件装置内部抽選アドレステーブルの全ての検索番号の確率データを減算しても役抽選用乱数が0以上のときは検索番号をクリアする(検索番号=0)ことにより(ステップS5113)、現在の条件装置内部抽選アドレステーブルに含まれる役には当選していないと判断することができる。図7の場合、非RT遊技状態のときに、抽選判定手段S5100が呼び出された時点の役抽選用乱数値(第3の乱数値)が9200であった場合、検索番号(当選番号)が「1」の再遊技役−Aの確率データ(置数であって、図7においては8962)をこの役抽選用乱数から減算しても0より小さくならないため、再遊技役−Aには当選していないと判断される。また、役抽選用乱数(第3の乱数値)が50であった場合、検索番号(当選番号)が「1」の再遊技役−Aの確率データ(8962)を役抽選用乱数から減算すると0より小さくなるため、この再遊技役−Aに当選したと判断することができる。
図26に戻り、ステップS5088の抽選判定処理の結果、再遊技役に当選したか否かを判断し(ステップS5089)、当選していると判断したときは、現在の検索番号を条件装置番号バッファに保存し(ステップS5097)、この役抽選処理S5080を終了する。一方、ステップS5089で再遊技役に当選していないと判断したときは、次に、現在の遊技状態(非RT遊技状態、RT1遊技状態、RT2遊技状態、RT3遊技状態及びRT4遊技状態)に応じて入賞役の条件装置内部抽選アドレステーブルをセットし(ステップS5090)、抽選判定処理S5100を実行する(ステップS5091)。上述の例で説明すると、ステップS5083で生成した役抽選用乱数値(第3の乱数値)が9200であった場合、再遊技役に対する抽選判定処理を実行した時点で役抽選用乱数値は238となっている(再遊技役の全ての確率データの合計値が8962であるため)。そのため、非RT遊技状態における検索番号(当選番号)が「18」の入賞役−A1の確率データが1670であるため、この入賞役−A1が当選したと判断される。主制御手段100は、ステップS5091の抽選判定の結果から入賞役に当選しているか否かを判断し(ステップS5092)、当選していないと判断したときは、特別役の条件装置が作動しているRT4遊技状態(内部中遊技状態)であるか否か、特別遊技が作動しているRT5遊技状態(特別遊技状態であって、RT5−12遊技状態又はRT5−3遊技状態のいずれか)であるか否かを判断し(ステップS5093)、RT4遊技状態及びRT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)でないときは、特別役の条件装置検索番号を取得し(ステップS5094)、特別役の条件装置内部抽選アドレステーブルをセットし(ステップS5095)、抽選判定処理S5100を実行する(ステップS5096)。この処理でも、特別役に当選したときはその検索番号が設定され、特別役に当選していないとき(再遊技役、入賞役、特別役のいずれにも当選していなく、ハズレとなったとき)は、検索番号に0が設定されている。最後に、現在の条件装置検索番号を条件装置番号バッファに保存し(ステップS5097)、この役抽選処理S5080を終了する。
ここで、図7に示すように、本実施形態に係るスロットマシン1では、再遊技役及び入賞役の条件装置番号と、特別役の条件装置番号とは独立している。したがって、特別役に当選したときは、役物当選番号にその特別役の条件装置番号が設定され、特別役に当選していないときは役物当選番号の値が「0」となる(例えば、BB1に当選したときは「1」、BB2に当選したときは「2」、BB3に当選したときは「3」となる)。なお、RAM104には、特別役の条件装置番号を記憶する記憶領域と、再遊技役及び入賞役(小役)の条件装置番号を記憶する記憶領域とがそれぞれ設けられている。遊技状態(RT状態)を上述したRAMクリアでクリアする場合には、特別役の条件装置番号を記憶する記憶領域、及び、再遊技役及び入賞役(小役)の条件装置番号を記憶する記憶領域もRAMクリアの対象とし、遊技状態(RT状態)を上述したRAMクリアでクリアしない場合には、特別役の条件装置番号を記憶する記憶領域はRAMクリアの対象とせず、再遊技役及び入賞役(小役)の条件装置番号を記憶する記憶領域はRAMクリアの対象とすることが望ましい。これにより、遊技状態(RT状態)と特別役が当選している状態(内部中)又は当選していない状態(非内部中)との整合性がとれるようになる。
このように、本実施形態に係るスロットマシン1では、役抽選のために生成した第3の乱数値(役抽選用乱数値)から、予め決められた順序で確率データ(当選判定データ)を減算していき、0より小さくなったときの確率データに対する役に当選したと判断するように構成されている。この構成によると、当選の判定を行いたい役(判定対象)毎に確率データを対応付けて条件装置内部抽選アドレステーブル(当選判定データ群)として記憶し、第3の乱数値からこの確率データを順に減算処理するだけで判定することができるので、抽選の判定処理を簡単に実現することができる。もちろん、第3の乱数値(役抽選用乱数値)に上記確率データを順番に加算していき、最大値(2バイトデータの場合は65535)を超えたときに当選していると判定することも可能である。しかしながら、加算により判定する場合、例えば、乱数値の範囲が0〜999の抽選を行う場合、第3の乱数値に所定の値(例えば、2バイトデータなら64537)を加算した上でさらに確率データを加算しなければならず、処理が複雑になってしまう。一方、上述した減算方式であれば、乱数値がどのような範囲であっても、抽選用の乱数値から確率データを順に減算することで判定することができる。
なお、以上の説明では、役の種類毎に、条件装置内部抽選アドレステーブルを設定する場合について説明したが、例えば、抽選の順序にしたがって、再遊技役、入賞役、特別役の順でまとめてテーブルを定義しておき、当選判定をする際に、判定に用いる範囲を指定するように構成してもよい。例えば、再遊技役が5個あり、その検索番号が1〜5とし、入賞役が5個あり、その検索番号が6〜10とし、特別役が1個あり、その検索番号が11として、この順で並んで定義されているとする。この場合、非RT遊技状態で再遊技役、入賞役、特別役の順で判定するときは、「検索番号が1から11個の確率データを使って判定する」と指定することで、再遊技役、入賞役、特別役の当選判定を行うことができる。一方、RT4遊技状態(内部中遊技状態)ときは、特別役の当選判定をしないので、「検索番号が1から10個の確率データを使って判定する」と指定することで、再遊技役と入賞役の判定を行うことができる。そのため、このようなデータ構造で条件装置内部抽選アドレステーブルを記憶すると、当選判定の処理をより簡単に実現することができる。
−内部遊技状態設定処理S5120−
内部遊技状態設定処理S5120は、スタートレバー32が操作されたときの内部遊技状態毎の処理を実行するものである。この内部遊技状態毎の処理においては、AT抽選や押し順ベル、押し順リプレイに対する指示番号の決定が行われる。
図28に示すように、主制御手段100は、内部遊技状態設定処理S5120を実行すると、まず、現在の内部遊技状態が「1」、「4」、「6」のいずれかであるか否かが判断され(ステップS5121)、これらの内部遊技状態であるときは、内部遊技状態設定処理S5120を終了する。一方、主制御手段100は、内部遊技状態が「1」、「4」、「6」でないときは、現在の内部遊技状態が「0」であるか否かを判断し(ステップS5122)、内部遊技状態が「0」であると判断したときは、当選役決定手段110で決定された役がレア役であるか否かを判断し(ステップS5123)、レア役でないときは、内部遊技状態設定処理S5120を終了する。また、主制御手段100は、ステップS5123でレア役に当選していると判断したときは、AT抽選を行い(ステップS5124)、AT抽選に当選したか否かを判断し(ステップS5125)、AT抽選に当選していないと判断したときは、内部遊技状態設定処理S5120を終了する。一方、ステップS5125でAT抽選に当選したと判断したときは、主制御手段100は、ATストックカウンタCSに1を加算し(ステップS5126)、前兆遊技数を抽選で決定し(ステップS5127),内部遊技状態設定処理S5120を終了する。
また、ステップS5122で内部遊技状態が「0」でないと判断したときは、主制御手段100は、現在の内部遊技状態が「2」または「3」であるか否かを判断する(ステップS5128)。そして、現在の内部遊技状態が「2」または「3」であると判断すると、主制御手段100は、図29に示すように、当選役決定手段110で決定された当選役(条件装置番号)に応じて指示番号を決定する。具体的には、図18に示すように、「左中右」が正解押し順の当選役である(条件装置番号が3、13である)と判断したときは(ステップS5129)、指示番号に「A1」を設定する(ステップS5130)。また、「左右中」が正解押し順の当選役である(条件装置番号が4、14である)と判断したときは(ステップS5131)、指示番号に「A2」を設定する(ステップS5132)。また、「中左右」が正解押し順の当選役である(条件装置番号が5、15である)と判断したときは(ステップS5133)、指示番号に「A3」を設定する(ステップS5134)。また、「中右左」が正解押し順の当選役である(条件装置番号が6、16である)と判断したときは(ステップS5135)、指示番号に「A4」を設定する(ステップS5136)。また、「右左中」が正解押し順の当選役である(条件装置番号が7、17である)と判断したときは(ステップS5137)、指示番号「A5」を設定する(ステップS5138)。また、「右中左」が正解押し順の当選役である(条件装置番号が8、17である)と判断したときは(ステップS5139)、指示番号「A6」を設定する(ステップS5140)。また、図29に示すように、「左**」が正解押し順の当選役である(条件装置番号が18,19,24,25である)と判断したときは(ステップS5141)、指示番号「A7」を設定する(ステップS5142)。また、「中**」が正解押し順の当選役である(条件装置番号が20,21,26,27である)と判断したときは(ステップS5143)、指示番号「A8」を設定する(ステップS5144)。また、「右**」が正解押し順の当選役である(条件装置番号が22,23,28,29である)と判断したときは(ステップS5145)、指示番号「A9」を設定する(ステップS5146)。また、その他の当選役のときは、指示番号を設定しない。また、上述の処理で指示番号に「A1」〜「A9」が設定されなかったときは「A0」となる。
なお、上述したように、当選役によっては(例えば、図18に示す再遊技役−F5)2つの正解押し順があるため、図29では図示していないが、指示番号を決定する前に、どちらの押し順を正解押し順とするかが選択される(選択方法は上述した通りである)。
以上の処理により指示番号が決定すると、主制御手段100は、内部遊技状態が「3」であるか否かを判断し(ステップS5147)、内部遊技状態が「3」でない(すなわち、内部遊技状態が「2」である)と判断したときは、内部遊技状態設定処理S5120を終了する。一方、ステップS5147で、内部遊技状態が「3」であると判断すると、主制御手段100は、当選役がRT3遊技状態のときのみ当選する役(具体的には、上述したように、条件装置番号が12の再遊技役−E)であるか否かが判断され(ステップS5148)、この役でないときは内部遊技状態設定処理S5120を終了し、この役であるときは、AT抽選を行い(ステップS5149)、AT抽選に当選したか否かを判断し(ステップS5150)、AT抽選に当選していないときは、内部遊技状態設定処理S5120を終了する。また、ステップS5150でAT抽選に当選したと判断したときは、ATストックカウンタCSに1を加算し(ステップS5151)、内部遊技状態設定処理S5120を終了する。
図28に戻り、ステップS5128で現在の内部遊技状態が「2」または「3」でないと判断したときは、現在の内部遊技状態が「5」又は「7」であるので、主制御手段100は、AT抽選を行い(ステップS5152)、AT抽選に当選したか否かを判断し(ステップS5153)、AT抽選に当選したときはATストックカウンタCSに1を加算し(ステップS5154)、内部遊技状態設定処理S5120を終了する。なお、ステップS5152のAT抽選において、内部遊技状態が「7」のときは、内部遊技状態が「5」のときよりも、AT抽選での当選確率が高くなるように構成している。
このように、本実施形態に係るスロットマシン1では、内部遊技状態0のときはレア役に当選したときにAT抽選が行われ、内部遊技状態3のときは、RT3遊技状態でのみ当選する役(例えば、再遊技役−E)に当選したときにAT抽選が行われ、内部遊技状態7のときは、当選役に関わらず毎遊技AT抽選が行われるように構成されている。また、内部遊技状態2及び3のときは、押し順の割り当てられた当選役に指示番号(A1〜A9)が設定される。
−リール回転開始前処理S5170−
リール回転開始前処理S5170は、上述した内部遊技状態設定処理S5120で決定された指示番号や、当選役の条件装置番号がマスクされた演出グループ番号及び特別役に当選したときの役物当選番号を副制御手段200に送信する処理である。
図31に示すように、主制御手段100は、リール回転開始前処理S5170を実行すると、内部遊技状態設定処理S5120で決定された指示番号に従って、図18(b)に示す番号(指示番号に対応した1〜9の数字)を獲得数表示器72に表示する(ステップS5171)。具体的には、図18(b)に基づいて、指示番号に対応する番号をRAM104の所定の領域(例えば、図20に示すアドレス「F036(H)」であるが、メインCPU102の所定のレジスタでもよい)に記憶する。この所定の領域(又はレジスタ)に指示番号に対する番号が記憶されると、後述する割込処理S570で実行されるLED表示処理S5600により、この記憶されている番号が獲得数表示器72に出力されるように構成されている。また、主制御手段100は、指示番号をレジスタに記憶し(ステップS5172)、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行する(ステップS5173)。また、上述したように、図14に示すテーブルを用いて条件装置番号に対してマスク処理を行い演出グループ番号を決定し(ステップS5174)、この演出グループ番号をレジスタに記憶し(ステップS5175)、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行する(ステップS5176)。さらに、役物当選番号をレジスタに記憶し(ステップS5177)、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行する(ステップS5178)。後述する割込処理S570で説明するように、指示番号に対応した情報の獲得数表示器72のへの表示(7セグ表示制御処理S575)は、指示番号の制御コマンドによる副制御手段200への送信(制御コマンド送信処理S580)よりも先に実行されるため、主制御手段100による指示番号の表示の方が副制御手段200による表示よりも優先して実行される。また、主制御手段100は、ATに関する情報をレジスタに記憶し(ステップS5179)、このレジスタの情報を制御コマンドとしてセットするために制御コマンドセット1処理S5000を実行し(ステップS5180)、リール回転開始前処理S5170を終了する。ここで、「ATに関する情報」とは、上述したような内部遊技状態(例えば、内部遊技状態2ならばAT準備中であり、内部遊技状態3ならAT遊技中である)、前兆遊技の遊技数やその残り遊技数、AT遊技の遊技数やその残り遊技数、ATのストック抽選の結果や、そのストック数、AT遊技数の上乗せ抽選の結果、上乗せ遊技数等が含まれ、それぞれの情報に対してレジスタへの記憶と、制御コマンドセット1処理が実行される。なお、この図31において制御コマンドして送信される情報は一例である。
−遊技終了チェック処理S5220−
遊技終了チェック処理S5220は、一回の遊技(単位遊技とも称する)の最後に主制御手段100で実行される遊技の状態や演出の状態(内部遊技状態)を管理する処理である。この遊技終了チェック処理S5220が実行されると、主制御手段100は、図32に示すように、まず、遊技状態遷移処理を実行する(ステップS5221)。主制御手段100は、図33に示すように、現在の遊技状態が非RT遊技状態であるか否かを判断し(ステップS5222)、非RT遊技状態であると判断したときは、図34に示すように、有効ライン上に特定図柄(特定図柄01〜05)が停止表示されているか否を判断する(ステップS5223)。上述したように、有効ライン上に特定図柄が停止表示されていると判断すると、主制御手段100は、遊技状態をRT1遊技状態に移行させ(ステップS5224)、遊技状態遷移処理S5221を終了する。一方、ステップS5223で有効ライン上に特定図柄が表示されていないと判断すると、主制御手段100は、役物当選番号が「0」でないか否か(役物当選番号に「1」、「2」、「3」のいずれかが設定されているか否か)、すなわち、特別役(BB1〜BB3)に当選したか否かを判断し(ステップS5228)、役物当選番号に「0」が設定されていると判断したときは遊技状態遷移処理S5221を終了する。また、ステップS5228で役物当選番号に「0」が設定されていない(役物当選番号に「1」、「2」、「3」のいずれかが設定されている)と判断したときは、主制御手段100は、特別役の図柄の組み合わせが有効ライン上に停止表示されているか否かを判断し(ステップS5226)、特別役の図柄の組み合わせが有効ライン上に停止表示されていないときは、遊技状態をRT4遊技状態(内部中遊技状態)に移行させ(ステップS5227)、特別役の図柄の組み合わせが有効ライン上に停止表示されているときは、遊技状態をRT5遊技状態(特別遊技状態であって、役物当選番号が「1」または「2」のときはRT5−12遊技状態、役物当選番号が「3」のときはRT5−3遊技状態)に移行させ(ステップS5228)、遊技状態遷移処理S5221を終了する。
図33に戻り、主制御手段100は、ステップS5222で現在の遊技状態が非RT遊技状態でないと判断すると、現在の遊技状態がRT1遊技状態であるか否かを判断し(ステップS5230)、RT1遊技状態であると判断すると、有効ライン上に再遊技役08の図柄の組み合わせが停止表示されているかを判断し(ステップS5231)、再遊技役08の図柄の組み合わせが停止表示されていると判断すると、遊技状態をRT2遊技状態に移行させる(ステップS5232)。一方、ステップS5231で有効ライン上に再遊技役08の図柄の組み合わせが停止表示されていないと判断すると、主制御手段100は、図34に示すように、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5225)、役物当選番号に「0」が設定されているときは遊技状態遷移処理S5221を終了する。また、ステップS5225で役物当選番号に「0」が設定されていないと判断したときは、主制御手段100は、特別役の図柄の組み合わせが有効ライン上に停止表示されているか否かを判断し(ステップS5226)、特別役の図柄の組み合わせが有効ライン上に停止表示されていないときは、遊技状態をRT4遊技状態(内部中遊技状態)に移行させ(ステップS5227)、特別役の図柄の組み合わせが有効ライン上に停止表示されているときは、遊技状態をRT5遊技状態(特別遊技状態であって、RT5−12遊技状態又はRT5−3遊技状態)に移行させ(ステップS5228)、遊技状態遷移処理S5221を終了する。
図33に戻り、主制御手段100は、ステップS5230で現在の遊技状態がRT1遊技状態でないと判断すると、現在の遊技状態がRT2遊技状態であるか否かを判断し(ステップS5233)、RT2遊技状態であると判断すると、有効ライン上に再遊技役03または再遊技役04の図柄の組み合わせが停止表示されているかを判断し(ステップS5234)、再遊技役03または再遊技役04の図柄の組み合わせが停止表示されていると判断すると、遊技状態をRT3遊技状態に移行させる(ステップS5235)。また、ステップS5234で有効ライン上に再遊技役03または再遊技役04の図柄の組み合わせが停止表示されていないと判断すると、主制御手段100は、有効ライン上に再遊技役02の図柄の組み合わせが停止表示されているかを判断し(ステップS5237)、再遊技役02の図柄の組み合わせが停止表示されていると判断したときは、遊技状態をRT1遊技状態に移行させて(ステップS5238)、遊技状態遷移処理S5221を終了する。一方、ステップS5237で再遊技役02の図柄の組み合わせが有効ライン上に停止表示されていないと判断すると、主制御手段100は、図34に示すように、有効ライン上に特定図柄が停止表示されているか否を判断する(ステップS5223)。そして、有効ライン上に特定図柄が停止表示されていると判断すると、主制御手段100は、遊技状態をRT1遊技状態に移行させ(ステップS5224)、遊技状態遷移処理S5221を終了する。一方、ステップS5223で有効ライン上に特定図柄が表示されていないと判断すると、主制御手段100は、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5225)、役物当選番号に「0」が設定されているときは遊技状態遷移処理S5221を終了する。また、ステップS5225で役物当選番号に「0」が設定されていないと判断したときは、主制御手段100は、特別役の図柄の組み合わせが有効ライン上に停止表示されているか否かを判断し(ステップS5226)、特別役の図柄の組み合わせが有効ライン上に停止表示されていないときは、遊技状態をRT4遊技状態(内部中遊技状態)に移行させ(ステップS5227)、特別役の図柄の組み合わせが有効ライン上に停止表示されているときは、遊技状態をRT5遊技状態(特別遊技状態であって、役物当選番号が「1」または「2」のときはRT5−12遊技状態、役物当選番号が「3」のときはRT5−3遊技状態)に移行させ(ステップS5228)、遊技状態遷移処理S5221を終了する。
図33に戻り、主制御手段100は、ステップS5233で現在の遊技状態がRT2遊技状態でないと判断すると、現在の遊技状態がRT3遊技状態であるか否かを判断し(ステップS5236)、RT3遊技状態であると判断すると、主制御手段100は、有効ライン上に再遊技役02の図柄の組み合わせが停止表示されているかを判断し(ステップS5237)、再遊技役02の図柄の組み合わせが停止表示されていると判断したときは、遊技状態をRT1遊技状態に移行させて(ステップS5238)、遊技状態遷移処理S5221を終了する。一方、ステップS5237で再遊技役02の図柄の組み合わせが有効ライン上に停止表示されていないと判断すると、主制御手段100は、図34に示すように、有効ライン上に特定図柄が停止表示されているか否を判断する(ステップS5223)。そして、有効ライン上に特定図柄が停止表示されていると判断すると、主制御手段100は、遊技状態をRT1遊技状態に移行させ(ステップS5224)、遊技状態遷移処理S5221を終了する。一方、ステップS5223で有効ライン上に特定図柄が表示されていないと判断すると、主制御手段100は、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5225)、役物当選番号に「0」が設定されているときは遊技状態遷移処理S5221を終了する。また、ステップS5225で役物当選番号に「0」が設定されていないと判断したときは、主制御手段100は、特別役の図柄の組み合わせが有効ライン上に停止表示されているか否かを判断し(ステップS5226)、特別役の図柄の組み合わせが有効ライン上に停止表示されていないときは、遊技状態をRT4遊技状態(内部中遊技状態)に移行させ(ステップS5227)、特別役の図柄の組み合わせが有効ライン上に停止表示されているときは、遊技状態をRT5遊技状態(特別遊技状態であって、役物当選番号が「1」または「2」のときはRT5−12遊技状態、役物当選番号が「3」のときはRT5−3遊技状態)に移行させ(ステップS5228)、遊技状態遷移処理S5221を終了する。
図33において、ステップS5236で現在の遊技状態がRT3遊技状態でないと判断すると、主制御手段100は、図34に示すように、現在の遊技状態がRT4遊技状態であるか否かを判断し(ステップS5240)、RT4遊技状態であると判断すると、有効ライン上に特別役(BB1〜BB3)の図柄の組み合わせが停止表示されているかを判断し(ステップS5241)、特別役の図柄の組み合わせが停止表示されているときは、遊技状態をRT5遊技状態(特別遊技状態であって、役物当選番号が「1」または「2」のときはRT5−12遊技状態、役物当選番号が「3」のときはRT5−3遊技状態)に移行させて(ステップS5242)、遊技状態遷移処理S5221を終了し、特別役の図柄の組み合わせが停止表示されていないときは、そのまま遊技状態遷移処理S5221を終了する。
また、ステップS5240で現在の遊技状態がRT4遊技状態でないと判断すると、現在の遊技状態はRT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)であるため、RT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)に移行してからの遊技メダルの払出枚数の総数が、当選している特別役の種類に応じて設定されている所定の枚数(例えば、BB1は334枚、BB2は238枚、BB3は60枚)を超えているか否かを判断し(ステップS5243)、超えていないときは遊技状態遷移処理S5221を終了し、超えているときは、遊技状態を非RT遊技状態に移行させ(ステップS5244)、遊技状態遷移処理S5221を終了する。
図32に戻り、主制御手段100は、遊技状態遷移処理S5221が終了すると、現在の内部遊技状態が「0」であるか否かを判断し(ステップS5250)、現在の内部遊技状態が「0」であると判断したときは、図35に示すように、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5251)、役物当選番号に「0」が設定されているときは、ATストックカウンタCSの値が0より大きいか判断する(ステップS5225)。そして、ATストックカウンタCSの値が0より大きいときは、ATストックカウンタCSから1を減算し(ステップS5253)、前兆遊技の遊技数をカウントする前兆カウンタCFに、内部遊技状態設定処理S5120のステップS5127で決定された前兆遊技数を設定し(ステップS5254)、内部遊技状態を「1」に設定して(ステップS5255)、遊技終了チェック処理S5220を終了する。また、ステップS5252でATストックカウンタCSの値が0であると判断すると、遊技終了チェック処理S5220を終了する。一方、ステップS5251で役物当選番号に「0」が設定されていないと判断したときは、主制御手段100は、有効ライン上に特別役の図柄の組み合わせが停止表示されているかを判断し(ステップS5256)、特別役の図柄の組み合わせが停止表示されているときは、内部遊技状態を「5」に設定し(ステップS5257)、特別役の図柄の組み合わせが停止表示されていないときは、内部遊技状態を「4」に設定し(ステップS5258)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段100は、ステップS5250で現在の内部遊技状態が「0」でないと判断すると、現在の内部遊技状態が「1」であるか否かを判断し(ステップS5260)、現在の内部遊技状態が「1」であると判断したときは、図35に示すように、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5261)、役物当選番号に「0」が設定されているときは、前兆遊技カウンタCFの値が0であるか否かを判断する(ステップS5262)。そして、主制御手段100は、前兆遊技カウンタCFの値が0であると判断したときは、内部遊技状態を「2」に設定し(ステップS5263)、前兆遊技カウンタCFの値が0でないと判断したときは、前兆遊技カウンタCFから1を減算し(ステップS5268),遊技終了チェック処理S5220を終了する。一方、ステップS5261で役物当選番号に「0」が設定されていないと判断したときは、有効ライン上に特別役の図柄の組み合わせが停止表示されているか否かを判断する(ステップS5264)。このステップS5264で特別役の図柄の組み合わせが停止表示されていると判断したときは、内部遊技状態を「7」に設定し(ステップS5265)、さらに、ATストックカウンタCSに1を加算する(ステップS5266)。また、ステップS5264で特別役の図柄の組み合わせが停止表示されていないと判断すると、主制御手段100は、内部遊技状態を「6」に設定する。また、主制御手段100は、前兆遊技カウンタCFから1を減算し(ステップS5268)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段100は、ステップS5260で現在の内部遊技状態が「1」でないと判断すると、現在の内部遊技状態が「2」であるか否かを判断し(ステップS5270)、現在の内部遊技状態が「2」であると判断したときは、図36に示すように、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5271)、役物当選番号に「0」が設定されているときは、現在の遊技状態がRT3遊技状態であるか判断する(ステップS5272)。さらに、現在の遊技状態がRT3遊技状態でないときは、現在の遊技において決定された指示番号(RT2遊技状態からRT3遊技状態に移行させるための再遊技役−C1〜C6の当選に対して、再遊技役03又は再遊技役04の図柄の組み合わせが有効ライン上に停止表示される押し順に対応する指示番号)に対応付けられた押し順(図18を参照)と遊技者がストップボタン33a〜33cを操作した順序が一致するか否かを判断し(ステップS5273)、現在の遊技状態がRT3遊技状態である、もしくは、指示番号と遊技者の操作が一致しないと判断したときは、内部遊技状態を「3」に設定し(ステップS5274)、1回のAT遊技の遊技数をカウントするATカウンタCAに「50」を設定し(ステップS5275)、遊技終了チェック処理S5220を終了する。一方、ステップS5271で、役物当選番号に「0」が設定されていないと判断したときは、有効ライン上に特別役の図柄の組み合わせが停止表示されているか否かを判断し(ステップS5276)、特別役の図柄の組み合わせが停止表示されているときは、内部遊技状態を「7」に設定し(ステップS5277)、ATストックカウンタCSに1を設定し(ステップS5278)、遊技終了チェック処理S5220を終了する。また、ステップS5276で特別役の図柄の組み合わせが停止表示されていないと判断したときは、内部遊技状態を「6」に設定して(ステップS5279)、遊技終了チェック処理S5220を終了する。なお、RT2遊技状態からRT3遊技状態へ移行可能な遊技では、操作に依らずに当該遊技終了時に内部遊技状態を「3」に設定するようにしてもよい。
図32に戻り、主制御手段100は、ステップS5270で現在の内部遊技状態が「2」でないと判断すると、現在の内部遊技状態が「3」であるか否かを判断し(ステップS5280)、現在の内部遊技状態が「3」であると判断したときは、図37に示すように、役物当選番号に「0」が設定されていないか否かを判断し(ステップS5281)、役物当選番号に「0」が設定されていないときは、有効ライン上に特別役の図柄の組み合わせが停止表示されているか否かを判断し(ステップS5282)、特別役の図柄の組み合わせが停止表示されているときは、内部遊技状態を「7」に設定し(ステップS5283)、ATストックカウンタCSに1を設定し(ステップS5284)、ATカウンタCAから1を減算して(ステップS5295)、遊技終了チェック処理S5220を終了する。また、ステップS5282で特別役の図柄の組み合わせが停止表示されていないと判断したときは、内部遊技状態を「6」に設定し(ステップS5285)、ATカウンタCAから1を減算して(ステップS5295)、遊技終了チェック処理S5220を終了する。また、ステップS5281で役物当選番号に「0」が設定されていると判断したときは、主制御手段100は、ATカウンタCAの値が「0」であるか否かを判断し(ステップS5289)、ATカウンタCAが「0」でないときは、ATカウンタCAから1を減算して(ステップS5295)、遊技終了チェック処理S5220を終了する。また、ステップS5289で、ATカウンタCAの値が0であると判断したときは、主制御手段100は、ATストックカウンタCSの値が0より大きいか否かを判断し(ステップS5290)、ATストックカウンタCSの値が0より大きい(すなわち、AT遊技の権利がストックされている)ときは、ATストックカウンタCSから1を減算し(ステップS5291)、前兆カウンタCFに「1」を設定し(ステップS5292)、内部遊技状態を「1」に設定して(ステップS5293)、遊技終了チェック処理S5220を終了する。また、ステップS5290でATストックカウンタCSが0であると判断したときは、主制御手段100は、内部遊技状態を「0」に設定し(ステップS5294)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段100は、ステップS5280で現在の内部遊技状態が「3」でないと判断すると、現在の内部遊技状態が「4」であるか否かを判断し(ステップS5300)、現在の内部遊技状態が「4」であると判断したときは、図38に示すように、有効ライン上に特別役の図柄の組み合わせが停止表示されているか否かを判断し(ステップS5301)、特別役の図柄の組み合わせが停止表示されているときは、内部遊技状態を「5」に設定し(ステップS5302)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段100は、ステップS5300で現在の内部遊技状態が「4」でないと判断すると、現在の内部遊技状態が「5」であるか否かを判断し(ステップS5310)、現在の内部遊技状態が「5」であると判断したときは、図38に示すように、RT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)に移行してからの遊技メダルの払い出し枚数の総数が当選している特別役の種類に応じて設定されている所定の枚数を超えているか否かを判断し(ステップS5311)、超えていないときは遊技終了チェック処理S5220を終了する。一方、ステップS5311で、遊技メダルの払い出し枚数の総数が所定の枚数を超えていると判断したときは、主制御手段100は、さらに、ATストックカウンタCSの値が0より大きいか判断し(ステップS5312)、ATストックカウンタCSの値が0より大きいときは、ATストックカウンタCSから1を減算し(ステップS5313)、内部遊技状態に「2」を設定し(ステップS5314)、遊技終了チェック処理S5220を終了する。また、ステップS5312でATストックカウンタCSの値が0であると判断したときは、主制御手段100は、内部遊技状態に「0」を設定し(ステップS5315)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段100は、ステップS5310で現在の内部遊技状態が「5」でないと判断すると、現在の内部遊技状態が「6」であるか否かを判断し(ステップS5320)、現在の内部遊技状態が「6」であると判断したときは、図38に示すように、有効ライン上に特別役の図柄の組み合わせが停止表示されているか否かを判断し(ステップS5321)、特別役の図柄の組み合わせが停止表示されているときは、内部遊技状態を「7」に設定し(ステップS5322)、ATストックカウンタCSに1を加算し(ステップS5323)、遊技終了チェック処理S5220を終了する。
図32に戻り、主制御手段10は、ステップS5320で現在の内部遊技状態が「6」でないと判断したときは、現在の内部遊技状態が「7」であるため、図38に示すように、RT5遊技状態(RT5−12遊技状態又はRT5−3遊技状態)に移行してからの遊技メダルの払い出し枚数の総数が当選している特別役の種類に応じて設定されている所定の枚数を超えているか否かを判断し(ステップS5324)、超えていないときは遊技終了チェック処理S5220を終了する。一方、ステップS5324で、遊技メダルの払い出し枚数の総数が所定の枚数を超えていると判断したときは、主制御手段100は、ATストックカウンタCSから1を減算し(ステップS5325)、内部遊技状態に「2」を設定し(ステップS5326)、遊技終了チェック処理S5220を終了する。
このように、本実施形態に係るスロットマシン1では、内部遊技状態3であるとき(AT遊技が実行されているとき)に特別役の図柄の組合せが有効ライン上に停止表示されると内部遊技状態6又は7に移行し、特別遊技が終了すると内部遊技状態2(AT準備)に移行し、所定の条件を満たすと(例えば、RT3遊技状態になると)、ATカウンタCAに50ゲームが設定され内部遊技状態3に移行される。そのため、内部遊技状態6又は7に移行する前の内部遊技状態3においてATカウンタCAの値が0でない(AT遊技の遊技数が残っている)状態でも、特別遊技後に実行される内部遊技状態3の遊技数(AT遊技の遊技数)であるATカウンタCAには50ゲームが設定されてしまう。したがって、上述した図36に示すステップS5275において、ATカウンタCAに50ゲームを設定する代わりに、現在のATカウンタCAの値に50ゲームを加算する、すなわち、前回のAT遊技で残っているゲーム数に新たに50ゲームを加算するように構成してもよい。
−割込処理S570−
主制御手段100のメインCPU102は、上述したプログラム開始処理S500、設定変更処理S517、電源復帰処理S539、及び、遊技進行メイン処理S550(これらを総称してメイン処理とも称する)を実行しているが、所定の割込間隔で、割込処理S570を実行するように構成されている。この割込処理S570は、制御用カウンタの更新、ソフト乱数の更新、入力ポートからのデータによる操作手段30等の操作の検出、リール21a〜21cの駆動制御、制御コマンドの送信等を行う処理である。
図39に示すように、この割込処理S570が実行されると、実行していたメイン処理のプログラムの番号を戻り番地としてスタック領域に記憶する。このとき、スタックポインタSPも更新(減算)される。その後、主制御手段100は、まず初期処理としてレジスタ値の退避及び重複割込の禁止を行う(ステップS571)。ここでのレジスタ値の退避とは、プッシュ(PUSH)命令により各種レジスタを先述したスタック領域に記憶することを指す。次に、主制御手段100は、電源断検出回路により電源電圧が所定値以下になったことに基づいて出力される信号が入力ポートに入力されるため、この入力ポートの状態により電源断を検知したか否かを判断する(ステップS572)。具体的には、前回割込時に記憶した入力ポート0レベルデータ(アドレスF005(H))のD5ビットと現在の入力ポート0のD5ビットを確認し、どちらも電源電圧が所定値以下となったことに基づいて電源断と判断する。電源断を検出したときは後述する電源断処理S5400を実行する。なお、電源断処理S5400を実行すると判断した場合には、電源断処理S5400のプログラム(モジュール)を呼び出し(CALL)命令で呼び出す。換言すると、電源断処理S5400を実行する場合には、スタック領域に戻り番地(本実施形態では、次のステップであるステップS573に相当するプログラムの番地)が記憶されることとなる。一方、電源断を検知しないときは、制御用カウンタ値の更新を行う(ステップS573)。この制御用カウンタとは、割込ごとに更新される(インクリメントされる)割込カウンタ等が挙げられる。また、主制御手段100は、タイマ計測を行う(ステップS574)。具体的には、最小遊技時間を計測カウンタやメダル滞留時間を計測するカウンタの減算処理を行う。換言すると、RAM104に記憶されているカウンタ値の演算処理を行う。また、主制御手段100は、7セグメントディスプレイの表示制御処理であるLED表示処理S5600を実行する(ステップS575)。例えば、獲得数表示器72に対しては、上述したように、RAM104の所定の領域(又はレジスタ)に記憶された情報に基づいて獲得数や指示情報、前扉3の開放やセレクタ内のメダルの詰まり、ホッパー装置内のメダルの詰まり等のエラー(通常エラー)状態をこの獲得数表示器72に表示する。なお、獲得数表示器72に加えて、貯留数表示器71、状態表示器72及び設定値表示器74の発光パターンも制御される。詳細は後述する。
また、主制御手段100は、入力ポート0〜2の情報を読み出す入力ポート0〜2読込処理S5700を実行する(ステップS576)。この処理により、ベットボタン31、スタートレバー32、ストップボタン33a〜33c等の操作系、並びに、セレクタやホッパー装置のセンサ系の状態を、入力ポートから読み出したデータにより生成し、RAM104に記憶する。詳細は後述する。さらに、主制御手段100は、リール21a〜21cの各々に対して回転や停止等の作動の制御を行い(ステップS577,S578)、また、ポート出力処理を行う(ステップS579)。具体的には、リール21a〜21cを回転させるステッピングモータ(リール駆動手段22a〜22c)やホッパーモータ70、ブロッカ60を作動させるための励磁出力値を出力ポートに設定する。また、主制御手段100は、後述する制御コマンド送信処理S5500を実行して遊技進行メイン処理S550等でRAM104の制御コマンドバッファに記憶された制御コマンドを副制御手段200に送信する(ステップS580)。また、主制御手段100は、RAM104に記憶されている設定値データが正常範囲であるか否かチェックするための設定値エラーチェック処理S5740を実行する(ステップS581)。
さらに、主制御手段100は、RAM104に記憶されている外部信号1データ、及び、外部信号2データ(上述したBB信号及びRB信号を出力するためのデータ)をレジスタにセットし、これらの外部信号1、2データに基づいて外部信号出力する(ステップS582)。また、主制御手段100は、上述した第2乱数発生手段190のソフト乱数値を更新し、また、リール回転開始待機カウンタ値に乱数値の更新処理(減算)を行う(ステップS583)。最後に、ステップS571で退避させたレジスタ値を復帰させ(POP命令)、次回の割込許可をして(ステップS584)、一回の割込処理S570を終了する。
−電源断処理S5400−
電源断処理S5400が実行されると、主制御手段100は、図39に示すように、全出力ポートの出力をオフし(ステップS5401)、電源断処理が実行されたことを示すデータである電源断処理済フラグをRAM104(図20に示すF016(H))に記憶する(ステップS5402)。なお、電源断処理済フラグには、この電源断処理S5400が実行されたときは、例えば「55(H)」が設定される。そして、制御コマンドの読込ポインタ(詳細は後述する)の値を偶数に設定する(ステップS5403)。本実施形態に係るスロットマシン1では、制御コマンドを副制御手段200に送信するときに、同じコマンドを2回送信している。そのため、制御コマンドの1回目の送信をしたときに電源断が発生すると、電源断復帰後の制御コマンドの処理(設定処理及び送信処理)が複雑になるため、電源断発生時に再度1回目の送信から再開できるように、読込ポインタの値を偶数にしている(具体的には書込ポインタの値の最後のビットを0にする)。このように、本実施形態においては、最後のビットの値で1回目の送信であるか2回目の送信であるかを判断しているが、1回目の送信及び2回目の送信をフラグにより管理してもよい。例えば、1回目の送信が行われると送信済みフラグを設定し、2回目の送信が行われたときにこの送信済みフラグをクリアするようにしてもよい。また、電源断発生時には再度1回目の送信から再開できるように送信済みフラグをクリアする。
次に、主制御手段100は、RAM104の全範囲(F000(H)〜F3FF(H))に対してチェックサムデータを算出し(ステップS5404,S5405)、このチェックサムデータをRAM104に記憶し(ステップS5406)、上述したリセットがされるまで待機する(ステップS5407)。ここで、本実施形態におけるチェックサムデータとは、いわゆる「2の補数データ」となるように設定される。例えば、RAM104の全範囲のサム値を1バイトで表現した結果「00100100(B)」であった場合、チェックサムデータは「11011100(B)」となる。換言すると、プログラム開始処理S500によるRAMチェックサムを行った結果が「0(00000000(B))」となるデータが記憶されることになる。
−LED表示処理S5600−
LED表示処理S5600は、貯留数表示器71、獲得数表示器72、状態表示器73及び設定値表示器74の表示制御を行う。図40に示すように、主制御手段100は、まず、出力ポート3及び4をオフにする(ステップS5601)。図17に示すように、出力ポート3はデジット信号に対応する出力ポートであり、出力ポート4は、セグメント信号に対応する出力ポートである。これらの出力ポート3及び4の各々に対して「00000000(B)」を出力することで、一旦、全表示器の出力を行わせないようにする。これにより、LEDの表示を切り替える際に、一瞬でも異なるLEDが同時に点灯して見えてしまう(被って表示されてしまうこと)を防止することができる(すなわち、残像防止)。また、主制御手段100は、RAM104のLED表示要求カウンタの値を更新する(ステップS5602)。図14(b)に示すように、LED表示要求カウンタの更新は、オンすなわち「1」になっているビットを右に1ビットシフトする処理である。具体的には、LED表示要求カウンタのアドレス(図20に示す「F012(H)」)をHLレジスタに記憶し、HLレジスタが示すアドレスのデータを右に1ビットシフトする。そして、このLED要求カウンタの値が「0」であるか、すなわち、上述したHLレジスタをシフトした結果、ゼロフラグが「1」であるか否かを判断し(ステップS5603)、「0」であるときは、HLレジスタが示すアドレスに初期値である「00010000(B)」を記憶させ、LED表示要求カウンタを初期化する(ステップS5604)。よって、LED表示要求カウンタは、ステップS5602において、「00000001(B)」から「00000000(B)」に更新されたときは、ステップS5603で「0」であると判断されるので、ステップS5604で「00010000」に更新される。すなわち、一割込処理内で、「00000001」から「00010000」に更新される。
次に、主制御手段100は、LED表示要求カウンタ及びLED表示要求フラグの値を取得する(ステップS5605)。具体的には、AレジスタにLED表示要求フラグに記憶されているデータを設定し、EレジスタにLED表示要求カウンタに記憶されているデータを設定し、HLレジスタにエラー番号のアドレス(図20におけるF014(H))を設定する。そして、今回の割込処理S570で表示するデジットのセグメントA〜Gの表示要求の確認をセットする(ステップS5606)。この処理ではまず、Aレジスタに記憶されているデータ(LED表示要求フラグ)とEレジスタに記憶されているデータ(LED表示要求カウンタ)の論理積演算を実行し、演算結果をAレジスタに記憶し、さらに、Aレジスタに記憶されているデータをDレジスタに記憶する。たとえば、
LED表示要求カウンタの値:00001000
LED表示要求フラグの値 :00001111
論理積演算の結果 :00001000
となる。あるいは、たとえば、
LED表示要求カウンタの値:00010000
LED表示要求フラグの値 :00001111
論理積演算の結果 :00000000
となる。ここで、上記論理積演算の結果が「0」であるときはゼロフラグが「1」となる。そして、主制御手段100は、LED表示要求があるか否かを判断する(ステップS5607)。ここでは、ステップS5605における論理積演算の結果、ゼロフラグが「1」でないとき(論理積演算の結果が「0」とならずゼロフラグが「0」であるとき)に、表示要求があると判断する。主制御手段100は、表示要求がないと判断したときは、出力ポート3及び4にデジット及びセグメントを出力し(ステップS5624)、LED表示処理S5600を終了する。出力ポート3及び4に対する出力において、主制御手段100は、DEレジスタに記憶されているデータとHLレジスタに記憶されているデータを交換し、Lレジスタに記憶されているデータを出力ポート3に、また、Hレジスタに記憶されているデータを出力ポート4に出力する。これにより、該当デジットの該当セグメントが点灯する。
主制御手段100は、ステップS5607において表示要求があると判断すると、まず、エラー表示データの取得及びセットを行う(ステップS5608)。具体的には、上述したようにRAM104のエラー番号のアドレスがHLレジスタに記憶されているため、HLレジスタが示すアドレスに記憶されているデータをAレジスタに記憶し、さらに、Aレジスタに記憶されているデータをBレジスタに記憶する。例えば、獲得数表示器72にホッパー装置52内のメダルが空と判断した場合のエラー(通常エラー)を示す「HE」を表示させるときは、エラー番号(アドレスF014(H))に「13(H)」が記憶されており(図15参照)、Bレジスタに「13(H)」を記憶する。また、主制御手段100は、図15に示すLEDセグメントテーブルのうち、LEDセグメントテーブル2が記憶されているROM105の領域の先頭のアドレス(図15の例では1211(H))をHLレジスタに記憶する(ステップS5609)。さらに、RAM104の設定値データをAレジスタに記憶して取得する(ステップS5610)。ここで、上述したように、本実施形態においては、設定値は1〜N(N=6)の整数であるが、RAM104の設定値データは0〜N−1(すなわち、0〜5)で管理されている。したがって、設定値データから設定値に変換するために、主制御手段100は、Aレジスタの値に1を加算し、その結果をAレジスタに記憶することで、設定値表示データを生成する(ステップS5611)。
また、主制御手段100は、設定値の表示要求があるか否かを判断する(ステップS5612)。上述したように、現在のDレジスタにはLED表示要求フラグの値とLED表示要求カウンタの値との論理積演算の結果が記憶されている。また、設定値を表示する設定値表示器74はデジット5に対応しており、図14に示すように、このデジット5は、LED表示要求フラグ及びLED表示要求カウンタにおけるD4ビットに対応している。この論理積演算において、LED表示要求フラグ表示要求フラグのD4ビットが「1」でLED表示要求カウンタのD4ビットが「1」のとき、DレジスタのD4ビットが「1」となり、設定値の表示要求があると判断することができる。主制御手段100は、設定値の表示要求がないと判断したときは、セグメント出力データを取得する(ステップS5623)。具体的には、HLレジスタに記憶されているデータ(LEDセグメントテーブル1又はLEDセグメントテーブル2の先頭アドレス)とAレジスタに記憶されている値とを加算した値が示すアドレスのデータをDレジスタに記憶する。換言すると、テーブルの先頭アドレス(HLレジスタに記憶されている値)からのオフセット値(Aレジスタに記憶されている値)によって、セグメントデータを取得することが可能となる。例えば、設定値を表示する場合、上述したように、HLレジスタにはLEDセグメントテーブル2の先頭アドレス(1211(H))が記憶され、Aレジスタには設定値(本実施形態では1〜6の整数)が記憶されている。したがって、Aレジスタの値が「6」であるとき、HLレジスタとAレジスタを加算した値は「1217(H)」となり、図15から明らかなように、Dレジスタには「7D(H)」が記憶される。そして、主制御手段100は、上述したステップS5624を実行することにより、Eレジスタに記憶されているLED表示要求カウンタの値(ここでは、「00010000」)がLレジスタを介して出力ポート3に出力され、Dレジスタに記憶されているセグメントデータの値(ここでは、「7D(H)=01111101(B)」)がHレジスタを介して出力ポート4に出力されるため、デジット5である設定値表示器74に「6」が表示されることになる。主制御手段100は、ステップS5624を実行すると、このLED表示処理S5600を終了する。
主制御手段100は、ステップS5612において、設定値の表示要求がないと判断すると、RAM104の貯留枚数データを取得する(ステップS5613)。具体的には、図20に示すように、RAM104のアドレス「F010(H)」に記憶されているデータをAレジスタに記憶する。ここで、貯留枚数データは、上述したように、10進数で2桁の値(0〜50)であるため、貯留数表示器71の2つのデジット(上位桁がデジット1、下位桁がデジット2)に10の位及び1の位のデータを表示させるために、まず、上位桁を表示させるためのオフセット値を取得する(ステップS5614)。具体的には、Aレジスタに記憶されたデータ(貯留数)を「10(十進)」で除算し、商をAレジスタに記憶する。なお、後述する下位桁を表示させるためのオフセット値を取得するために、余りをCレジスタに記憶しておく。
そして、主制御手段100は、貯留枚数の上位桁の表示要求があるか否かを判断する(ステップS5615)。ここで、貯留数表示器71の上位桁はデジット1に対応しているため、Dレジスタに記憶されている値(表示要求カウンタと表示要求フラグの論理積演算の結果)のD0ビットが「1」であるときに、貯留枚数の上位桁の表示要求があると判断することができる(図14参照)。主制御手段100は、このステップS5615において、貯留枚数の上位桁の表示要求があると判断したときは、セグメント出力データを取得し(ステップS5623)、出力ポート3及び4に対して出力を行うことにより(ステップS5624)、貯留数表示器71の上位桁(デジット1)に貯留枚数の10の位を表示させることができる。具体的には、貯留枚数が「15」のとき、Aレジスタには「1」が記憶されている。そして、HLレジスタにはLEDセグメントテーブル2の先頭アドレス(1211(H))が記憶されているため、このHLレジスタの値とAレジスタの値とを加算した結果は「1212(H)」となる。すなわち、このアドレス「1212(H)」に記憶されているデータはLEDに「1」を表示するためのセグメントデータ「06(H)=00000110(B)」であるため、貯留数表示器71の上位桁に「1」が表示されることとなる。主制御手段100は、ステップS5624を実行すると、このLED表示処理S5600を終了する。
一方、主制御手段100は、ステップS5615で、貯留枚数の上位桁の表示要求がないと判断したときは、貯留枚数の下位桁の表示要求があるか否かを判断する(ステップS5616)。ここで、貯留数表示器71の下位桁はデジット2に対応しているため、Dレジスタに記憶されている値(表示要求カウンタと表示要求フラグの論理積演算の結果)のD1ビットが「1」であるときに、貯留枚数の下位桁の表示要求があると判断することができる(図14参照)。主制御手段100は、ステップS5615において貯留枚数の下位桁の表示要求があると判断すると、貯留枚数の下位桁を表示させるためのオフセット値を取得する(ステップS5622)。上述したように、貯留枚数の下位桁はCレジスタに記憶されているため、この値をAレジスタに記憶させる。そして、上位桁と同様に、HLレジスタ及びAレジスタの値に基づいてセグメント出力データを取得し(ステップS5623)、出力ポート3及び4に対して出力を行うことにより(ステップS5624)、貯留数表示器71の下位桁(デジット2)に貯留枚数の1の位を表示させることができる。具体的には、上述した貯留枚数が「15」の例では、Aレジスタに「5」が記憶されているため、LEDセグメントテーブル2におけるアドレスは「1216(H)」となるため、このアドレスに記憶されているデータ(セグメントデータ)である「6D(H)=01101101(B)」が出力ポート4に出力され、貯留数表示器71の下位桁に「5」が表示されることとなる。主制御手段100は、ステップS5624を実行すると、このLED表示処理S5600を終了する。
主制御手段100は、ステップS5616で、貯留枚数の下位桁の表示要求がないと判断すると、獲得枚数データ又は指示番号を取得する(ステップS5617)。上述したように、本実施形態では、獲得数表示器72に対して、獲得枚数、エラー番号及び指示番号が表示される。したがって、まず、獲得枚数又は指示番号をAレジスタに記憶させる(獲得枚数を表示させるか指示番号を表示させるかを切り替えるフラグ(図示せず)を設け、獲得枚数を表示させるときは、RAM104のアドレス「F010(H)」のデータをAレジスタに記憶し、指示番号を表示させるときは、アドレス「F036(H)」のデータをAレジスタに記憶する)。また、主制御手段100は、エラー表示の状態であるか否かを判断する(ステップS5618)。ステップS5608において、エラー番号をBレジスタに記憶しており、このBレジスタに記憶されている値が「0」でないとき、エラー表示の状態と判断することができる。そして、ステップS5618において、エラー表示の状態であると判断したときは、HLレジスタにLEDセグメントテーブル1が記憶されているROM105の領域の先頭のアドレス(図15の例では121C(H))を記憶する(ステップS5619)。
そして、ステップS5614と同様に、Aレジスタに記憶されているデータ(獲得枚数、指示番号又はエラー番号)の上位桁用のオフセットを取得し(ステップS5620)、獲得枚数の上位桁の表示要求があるか否かを判断する(ステップS5621)。上位桁の表示要求があるときは、AレジスタにLEDセグメントテーブル1又はLEDセグメントテーブル2におけるオフセット値が記憶されているため、HLレジスタの値との加算結果に応じてセグメントデータを取得し(ステップS5623)、出力ポート3及び4に出力することにより(ステップS5624)、獲得数表示器72の上位桁(デジット3)に獲得枚数、指示番号又はエラー番号の上位桁が表示される。主制御手段100は、ステップS5624を実行すると、このLED表示処理S5600を終了する。一方、主制御手段100は、ステップS5621において、獲得枚数の上位桁の表示要求がないと判断すると、下位桁用のオフセット値を取得し(ステップS5622)、セグメント出力データを取得し(ステップS5623)、出力ポート3及び4に出力することにより(ステップS5624)、獲得数表示器72の下位桁(デジット4)に獲得枚数、指示番号又はエラー番号の下位桁が表示される。主制御手段100は、ステップS5624を実行すると、このLED表示処理S5600を終了する。例えば、エラー番号が「0D(H)」の場合、上位桁のオフセット値が「1」となり、また下位桁のオフセット値が「3」となり、HLレジスタにはLEDセグメントテーブル1の先頭アドレスが記憶されていることから、獲得枚数表示器72の上位桁には、アドレス121D(H)の「H」が表示され、下位桁にはアドレス121F(H)の「E」が表示される。
−入力ポート0〜2読込処理S5700−
入力ポート0〜2読込処理S5700は、入力ポート0〜2の値を読み出して、入力されたデータのレベルデータや、立ち上がり、立ち下がりエッジデータ等を生成し、RAM104に記憶する処理である。図41に示すように、主制御手段100は、まず、入力ポート0のデータを取得する(ステップS5701)。具体的には、HLレジスタにRAM104における入力ポート0レベルデータのアドレス(図20における「F005(H)」)を記憶し、HLレジスタが示すアドレスに記憶されたデータ(F005(H)のデータ)をBレジスタに記憶し、入力ポート0(アドレス「EE(H)」)のデータをAレジスタに記憶する。ここで、入力ポート0レベルデータは、図16に示す入力ポート0と同一のビット構成を有している。
また、主制御手段100は、入力ポート0データにおける未使用ビットをマスクし(ステップS5702)、入力ポート0データを正論理値に変換する(ステップS5703)。未使用ビットのマスクは、使用ビットを「1」、未使用ビットを「0」としたデータ(例えば、「01101111(B)」)とAレジスタの値の論理積演算した結果をAレジスタに記憶することで実行され、正論理値への変換はAレジスタの値と「01101001(B)」との排他的論理和演算した結果をAレジスタに記憶することで実行される。そして、このようにして算出されたAレジスタのデータをHLレジスタが示すアドレスに記憶することにより、入力ポート0レベルデータをセットする(ステップS5704)。換言すると、入力ポート0に入力されたデータに基づいて、入力ポート0レベルデータをRAM104の所定の記憶領域(F005(H))に記憶する。
また、主制御手段100は、ドアスイッチ信号がオンであるか否かを判断する(ステップS5705)。図16に示すように、Aレジスタに記憶されたD2ビットの値が「1」のときにドアスイッチ信号がオンであると判断することができる。また、主制御手段100は、ドアスイッチ信号がオンであると判断すると、設定ドアスイッチ信号がオンであるか否かを判断する(ステップS5706)。図16に示すように、Aレジスタに記憶されたD3ビットの値が「1」のときに設定ドアスイッチ信号がオンであると判断することができる。主制御手段100は、ステップS5706で設定ドアスイッチ信号がオンでないと判断したとき、及び、ステップS5705でドアスイッチ信号がオンでないと判断したときは、前回の入力ポート0レベルデータをセットするために、Bレジスタの値をAレジスタに記憶し(ステップS5707)、ステップS5708に進む。一方、ステップS5706で設定ドアスイッチ信号がオンであると判断したときは、そのままステップS5708に進む。換言すると、ドアスイッチ信号がオンでないと判断した場合には、AレジスタとBレジスタに記憶されたデータは同じになる。また、設定ドアスイッチ信号がオンでないと判断した場合にも、AレジスタとBレジスタに記憶されたデータは同じとなる。このようにすることで、後述するステップS5708以降の処理により、前扉3が開放していない状況や設定ドアが開放していない状況では、リセット/設定スイッチ37の立ち上がりデータや、設定キースイッチ信号の立ち上がりデータ、立ち下がりデータ等を生成しないこと(及び、RAM104に記憶しないこと)により、不正に設定値を変更するための設定変更モードに移行することや、設定変更モードを終了させること、また、設定変更モードにおいて設定値を更新すること等を防止することができる。
次に、主制御手段100は、設定変更キースイッチ36及びリセット/設定スイッチ37の変化ビットデータを生成する(ステップS5708)。具体的にはAレジスタに記憶されているデータとBレジスタに記憶されているデータとの排他的論理和演算を行い、演算結果をAレジスタに記憶する。この演算により、Aレジスタのデータ(今回の入力ポート0データ)とBレジスタのデータ(前回の入力ポート0データ)で変化のあるビットが「1」となり、変化のないビットは「0」となる。そして、Aレジスタに記憶されたデータと「00000011(B)」との論理積演算を行い、演算結果をAレジスタに記憶する。これにより、D1ビット(設定変更キースイッチ信号)及びD0ビット(リセット/設定スイッチ信号)だけを抽出することができる。そして、Aレジスタに記憶されたデータをDレジスタに記憶する。
また、主制御手段100は、設定変更キースイッチ36及びリセット/設定スイッチ37の立ち上がりデータを生成する(ステップS5709)。具体的には、Aレジスタのデータ(上述した変化ビットデータ)とHLレジスタに記憶されているデータが示すアドレス(入力ポート0レベルデータのアドレス(「F005(H)」))のデータとの論理積演算を行い、演算結果をAレジスタに記憶する。これにより、今回の割込処理で「1」に変化したこと(スイッチがオンと判断したこと)が検出されたデータを取得することができる。そして、Aレジスタに記憶されているデータを左に1ビットローテートシフトする演算を行い、結果をAレジスタに記憶し、このAレジスタに記憶されているデータをEレジスタに記憶する。
また、主制御手段100は、設定変更キースイッチ36の立ち下がりデータを生成する(ステップS5710)。具体的には、Bレジスタに記憶されているデータをAレジスタに記憶し、Aレジスタに記憶されているデータとDレジスタに記憶されているデータの論理積演算を行い、結果をAレジスタに記憶し、Aレジスタに記憶されているデータを右に1ビットローテートシフトする演算を行い、結果をAレジスタに記憶する。
また、主制御手段100は、定変更キースイッチ36及びリセット/設定スイッチ37のエッジデータを保存する(ステップS5711)。具体的には、Aレジスタに記憶されているデータ(設定変更キースイッチの立ち下がりデータ)とEレジスタに記憶されているデータ(設定変更キースイッチ36及びリセット/設定スイッチ37の立ち上がりデータ)との論理和演算を行い、結果をAレジスタに記憶し、Aレジスタに記憶されているデータをHLレジスタの値に8を加算した値の示すアドレスに記憶する。図20に示すように、HLレジスタは入力ポート0レベルデータのアドレスである「F005(H)」を記憶しており、このアドレスに8を加算したアドレス「F00D(H)」は、設定キー及び設定/リセットボタンエッジデータを格納する領域である。なお、この設定キー及び設定/リセットボタンエッジデータは、
D0:設定キースイッチ信号立ち下がり
D1:リセット/設定スイッチ信号立ち上がり
D2:設定キースイッチ信号立ち上がり
D3:未使用
D4:未使用
D5:未使用
D6:未使用
D7:未使用
というビット構成を有している。
また、主制御手段100は、入力ポート1データ(アドレス「F0(H)」)をAレジスタに記憶する(ステップS5712)。また、入力ポート1負論理値(「0111000(B)」をDレジスタに記憶し、入力ポート1全ビットデータ(「01111111(B)」をEレジスタに記憶し(ステップS5713)、入力ポートデータセット処理S5720を実行する(ステップS5714)。
この入力ポートデータセット処理S5720において、主制御手段100は、HLレジスタの値(入力ポート0レベルデータのアドレス)に「1」を加算した結果をHLレジスタに格納して入力ポート1又は2レベルデータのRAMアドレスをセットし(ステップS5721)、HLレジスタに記憶されているデータをBレジスタに記憶し、Aレジスタに記憶されているデータとDレジスタに記憶されているデータの排他的論理和演算を行い、演算結果をAレジスタに記憶することにより、入力ポートデータを正論理値に変換し(ステップS5722)、Aレジスタに記憶されているデータとEレジスタに記憶されているデータの論理積演算を行い、演算結果をAレジスタに記憶することにより、入力ポート未使用データをマスクし(ステップS5723)、Aレジスタに記憶されているデータをHLレジスタが示すアドレスに記憶することにより入力ポートレベルデータを保存する(ステップS5724)。そして、Aレジスタに記憶されているデータとBレジスタに記憶されているデータの排他的論理和演算を行い、演算結果をAレジスタに記憶することにより、今回と前回の変化ビットデータを生成し(ステップS5725)、Aレジスタに記憶されているデータとHLレジスタが示すアドレスに記憶されているデータの論理積演算を行い、演算結果をAレジスタに記憶することにより、入力ポート立ち上がりデータを生成し(ステップS5726)、Aレジスタに記憶されているデータをHLレジスタの値に8を加算した値のアドレスに記憶することにより、入力ポート立ち上がりデータを保存し(ステップS5727)、入力ポートデータセット処理S5720を終了する。なお、入力ポート1レベルデータのビット構成と入力ポート1立ち上がりデータのビット構成とは、入力ポート1のビット構成と同じであり、入力ポート2レベルデータのビット構成と入力ポート2立ち上がりデータのビット構成とは、入力ポート2のビット構成と同じである。
また、主制御手段100は、入力ポート1データと同様に、入力ポート2(アドレス「F0(H)」)に入力されているデータをAレジスタに記憶し(ステップS5715)、入力ポート2負論理値(「11110000(B)」をDレジスタに記憶し、入力ポート2全ビットデータ(「11111111(B)」をEレジスタに記憶し(ステップS5716)、入力ポートデータセット処理S5720を実行し(ステップS5717)、入力ポート0〜2処理を終了する。
以上のように、設定変更処理S517において割込待ち処理(ステップS5806)を行うことにより、割込処理S570による入力ポート0〜2読込処理S5700によってリセット/設定スイッチ37のエッジデータをクリアしていたが、設定変更処理S517に割込待ち処理S5806を設ける代わりに(入力ポート0〜2読込処理S5700に依らず)、メイン処理によりクリアする(F00D(H)のD1ビットを「0」にすること、又は、F00D(H)を「00000000(B)」にすること)ように構成してもよい。
−設定値エラーチェック処理S5740−
設定値エラーチェック処理S5740は、RAM104に記憶されている設定値データ(アドレス「F000(H)」)が正常範囲であるか否かをチェックし、正常範囲にないときは復帰不可能エラー処理S5743を実行するものである。図42に示すように、主制御手段100は、復帰不可能エラーとして「E6」を獲得数表示器72で表示するために、「01111101(B)」をDレジスタに記憶する(ステップS5741)。なお、「01111101(B)」は、獲得数表示器72の下位桁に「6」を表示するためのセグメントデータである。次に、設定値データが正常範囲であるか否かを判断する(ステップS5742)。具体的には、RAM104の設定値データ(アドレス「F000(H)」)の値をAレジスタに記憶し、Aレジスタから「6」を減算した結果、キャリーフラグが立たなかった場合に、正常範囲でないと判断することができる。このステップS5742で、正常範囲であると判断したときは設定値エラーチェック処理S5740を終了し、正常範囲でないと判断したときは、復帰不可能エラー処理S5743を実行する。なお、Aレジスタから「6」を減算するのは、本実施形態では設定値データが「0」〜「5」の範囲で記憶されているからであり、例えば、設定値データが「0」〜「3」であれば「4」を減算した結果に基づいて、設定値データが正常範囲であるか否かを判断することができる。また、設定値データが「1」から「6」の範囲で記憶されている場合には、設定値データをAレジスタに記憶した後に「1」を減算する処理を行い、その後「6」を減算する処理を行った結果に基づいて、設定値データが正常範囲であるか否かを判断することができる。
−復帰不可能エラー処理S5743−
復帰不可能エラー処理S5743が実行されると、主制御手段100は、デジット4(獲得数表示器72の下位桁)を指定するためのデータ「00001000(B)」をEレジスタに記憶し(ステップS5744)、デジット3(獲得数表示器72の上位桁)に捧持するセグメントを指定するためのデータ「01111001(B)」(「E」を表示することとなるデータ)をHレジスタに記憶し、デジット3(獲得数表示器72の上位桁)を指定するためのデータ「00000100(B)」をLレジスタに記憶する(ステップS5745)。また、Aレジスタ同士の排他的論理和演算を行い、その結果をAレジスタに格納することによりAレジスタをクリアし(Aレジスタに「0」を記憶させ)、Bレジスタに出力ポート数である「7(H)」を記憶し、また、Cレジスタにクリア出力ポートの先頭アドレス(出力ポート0アドレス(F1(H)))を記憶する(ステップS5746)。
次に、Aレジスタの値(「0」)をCレジスタが示すアドレスに出力してこの出力ポートをオフにし(ステップS5747)、Cレジスタに記憶されているデータに1を加算することで、次の出力ポートのアドレスを設定し(ステップS5748)、Bレジスタに記憶されているデータから1を減算して、「0」になるまでステップS5757,S5748を繰り返し実行する(ステップS5749)。
そして、主制御手段100は、Lレジスタに記憶されているデータを出力ポート3のアドレス(「F4(H)」)に記憶し、Hレジスタに記憶されているデータを出力ポート4のアドレス(「F5(H)」)に出力することにより、エラー表示を行い(ステップS5750)、DEレジスタに記憶されているデータとHLレジスタに記憶されているデータを交換する演算処理を行うことにより、上位桁/下位桁の表示切り替えを行い(ステップS5751)、ステップS5746に戻り、上記の処理を繰り返す。ここで、上述したように、Hレジスタには「01111001(B)」が記憶されているが、これは、「E」を表示するためのセグメントデータであり、Lレジスタに設定されている「00000100(B)」によりデジット3である獲得数表示器72の上位桁に「E」が表示される。また、設定値データが異常と判断した場合においては、Dレジスタには「01111101(B)」が記憶されているが、これは、「6」を表示するためのセグメントデータであり、Eレジスタに設定されている「00001000(B)」によりデジット4である獲得数表示器72の下位桁に「6」が表示される。すなわち、この処理を繰り返し実行することにより、獲得数表示器72に「E6」を表示させることができる。なお、プログラム開始処理S500に記載の通り、電源復帰データが異常と判断した場合には、ステップS514でDレジスタに「1」を表示するためのデータ「00000110(B)」が記憶されていることから、復帰不可能エラーとして「E1」と表示することができる。
上述したように、設定値エラーチェック処理S5740は第2プログラムに該当するため、この設定値エラーチェック処理S5740から呼び出される復帰不可能エラー処理S5743は第2プログラムの領域に格納されている。なお、設定値エラーチェック処理S5740及び復帰不可能エラー処理S5743は、第2プログラムに限定されることはなく、第1プログラムの領域に格納し、第1プログラムとして実行されるように構成してもよい。
−制御コマンド送信処理S5500−
制御コマンド送信処理S5500は、割込処理S570で実行され、制御コマンドを副制御手段200に送信する処理を行う。図43に示すように、まず、主制御手段100は、制御コマンドバッファ(制御コマンドセット2処理S5010で制御コマンドが書き込まれる領域)の先頭アドレスをレジスタにセットし(ステップS5501)、さらに、読込ポインタのアドレスをレジスタにセットし(ステップS5502)、先頭アドレスがセットされているレジスタの値に、読込ポインタの値(読込ポインタのアドレスに格納されている値)を加算することにより、送信制御対象の制御コマンドが格納されている制御コマンドバッファのアドレスを決定する(ステップS5503)。なお、このステップS5503において、最下位ビットの値を0にする(2進数で、11111110と論理積を行う)。これにより、読込ポインタが偶数のときも、この偶数のときから1進めた奇数のときも、偶数のときと同じアドレスになる。すなわち、読込ポインタが偶数のときは制御コマンド送信の1回目の送信が行われ、奇数のときは同じデータに対して2回目の送信を行うことができる。なお、制御コマンドバッファの先頭アドレスも偶数であるものとする。そして、このアドレスに格納されている値が0であるか否かを判断することにより制御コマンドが格納されているか否かを判断し(ステップS5504)、制御コマンドが格納されていないときはこの制御コマンド送信処理S5500を終了する。
一方、ステップS5504で制御コマンドが格納されていると判断したときは、副制御手段200に制御コマンドを送信するためのレジスタ(送信用レジスタ)のアドレスをレジスタにセットし(ステップS5505)、現在の制御コマンドバッファのアドレス(レジスタに設定されている値)にあるデータ(制御コマンドの上位1バイト)を読み出して、このデータを送信用レジスタのアドレス(レジスタに設定されている)に書き込み、また、制御コマンドバッファのアドレス(レジスタに設定されている値)に1を加算する(ステップS5506)。さらに、現在の制御コマンドバッファのアドレスにあるデータ(ステップS5506でアドレスが1進められているため、制御コマンドの下位1バイト)を読み出して、送信用レジスタのアドレスにこのデータを送信用レジスタのアドレスに書き込む(ステップS5507)。なお、送信用レジスタにデータが書き込まれると、そのデータが副制御手段200に送信される。
さらに、主制御手段100は、読込ポインタの値が奇数であるか否かを判断することにより、制御コマンドの2回目の送信が行われた否かを判断し(ステップS5508)、2回目の送信が行われたときは当該制御コマンドが格納されている送信対象制御コマンドバッファの値を0に設定してクリアする(ステップS5509)。最後に(1回目の送信時も2回目の送信時も)、読込ポインタの値に1を加算して(ステップS5510)、制御コマンド送信処理S5500を終了する。
−ソフト乱数更新処理S5570−
図43を用いてソフト乱数更新処理S5570について説明する。上述したように、割込処理S570や、遊技進行メイン処理S550等からソフト乱数更新処理S5570が呼び出されると、第2乱数発生手段190からソフト乱数の現在値を取得し(ステップS5571)、この現在値に所定の加算値を加算する(ステップS5572)。ここで、加算値は素数であって、例えば10909が利用される。このような素数を加算して更新することにより、2バイトの乱数値であれば、各更新時には異なる値となり、且つ、65536回更新すると初期値に戻る。そして、RAM104に記憶されているソフト乱数の初期値を取得し(ステップS5573)、この初期値と加算値が加算された現在値とを比較する(ステップS5574)。初期値と現在値とが一致したときは、割込処理S570が実行される毎にカウントされる割込カウンタ値を取得し(ステップS5575)、この割込カウンタ値を第2乱数発生手段190の現在値として記憶し(ステップS5576)、また、割込カウンタ値を初期値として保存する(ステップS5577)。最後に現在値(ステップS5572において更新値が加算された現在値、又は、ステップS5576で割込カウンタ値が設定された現在値)をソフト乱数値として保存することで(ステップS5578)、第2乱数発生手段190の乱数値の更新を終了する。
なお、以上の説明において、「割り込み処理」とは、主制御手段100のメインCPU102において、現在行われている処理を中断し、別の処理を実行することを意味しており、割り込み方式は特に限定されない(例えば、ハードウェア割り込みやソフトウェア割り込みといった方式を採用することができる)。
(設定値管理の変形例)
上述した構成では、RAM104の所定のアドレス(図20においては「F000(H)」に「0〜N−1(Nは整数であって、本実施形態ではN=6)」の範囲で設定値データを記憶し、この設定値データを設定変更処理S517で更新し、また、LED表示処理S5600で設定値表示器74に表示するように構成されている。しかしながら、設定値の管理はこの構成に限定されるものではない。以下に設定値管理の変形例について説明する。
−設定値管理の第1の変形例−
この第1の変形例では、設定値の更新処理が開始してからスタートレバー32が操作されて設定値が確定するまでの間は、この更新時の設定値を表示するための表示用設定値データとして記憶し、設定値表示器74に対しては表示用設定値データに基づいて設定値を表示するように構成した場合を、図44を用いて説明する。なお、この図44は、図22に示す設定変更処理S517のステップS527〜S530の処理を変更したもの(設定変更処理S517a及び設定値更新処理S5800a)であり、同一の処理は同一の番号を付して詳細な説明を省略する。
設定変更処理S517で説明したように、主制御手段100は、ステップS527において、RAM104の獲得枚数データ(F011(H))に「88(十進数)」を記憶し、また、RAM104上のLED表示要求フラグ(図20におけるアドレスF013(H))に「00011100(B)」を記憶させ、HLレジスタに設定値データが記憶されているRAM104のアドレス(図20においては、F000(H))を記憶する。そして、図44に示すように、主制御手段100は、RAM104の設定値データを表示用設定値データに記憶する(ステップS527a)。具体的は、DEレジスタにRAM104における表示用設定値データのアドレス(図20におけるF038(H))を記憶し、HLレジスタで示されるアドレスの設定値データをBレジスタに記憶し、さらに、このBレジスタに記憶されているデータをDEレジスタで示されるアドレス(表示用設定値データ)に記憶する。そして、主制御手段100は、スタートレバー32の操作を検出するまで設定値更新処理S5800aを繰り返し実行する(ステップS528a、S529a1)。なお、ステップS527aにおいて、HLレジスタで示されるアドレスの設定値データをBレジスタに記憶する前に、この設定値データが0〜5(=N−1)の範囲であるか否かを判断し、0〜5の範囲であるときは、HLレジスタで示されるアドレスのデータをそのままBレジスタに記憶し、0〜5の範囲でないときは、まず、HLレジスタが示すアドレスに「0」を設定し、その後、HLレジスタで示されるアドレスのデータをBレジスタに記憶するように構成してもよい。このように構成することにより、設定値の変更の前に、設定値データを正常値(ここでは「0」)とすることや、設定値データが正常範囲であることを確認することができる。
設定値更新処理S5800aにおいて、主制御手段100は、まず、Aレジスタに設定キー及び設定/リセットボタンエッジデータに記憶されているデータを格納する(ステップS5801a)。上述したように、リセット/設定スイッチ37が操作されていないときは、設定キー及び設定/リセットボタンエッジデータが「00000000(B)」となり、操作されたときは「00000010(B)」となる(操作されていないときはD1ビットが「0」で、操作されると「1」になる)。したがって、Aレジスタ記憶されているデータを右に1ビットシフトし、Aレジスタに記憶されているデータと「00000001(B)」の論理積演算を行い、Bレジスタに記憶されているデータとAレジスタに記憶されているデータの加算演算を行い、結果をBレジスタに記憶することで表示用設定値データを更新する(ステップS5802a)。
次に、主制御手段100は、Bレジスタに記憶されている表示用設定値データの値が正常の範囲であるか、上述した例では0〜5の範囲にあるかを判断し(ステップS5803a)、正常範囲にないと判断したときはBレジスタの値を初期値(上述した例では「0」)に設定する(ステップS5804a)。具体的には、Bレジスタに記憶されているデータから「6(十進数)」を減算し、キャリーフラグが「1」のとき(0〜5の範囲であれば、「6」を減算すると負の値になるためキャリーフラグに「1」が設定され、6以上の値であれば、「6」を減算してもキャリーフラグは「0」となる)、Bレジスタに記憶されている表示用設定値データは正常範囲であると判断することができる。そして、主制御手段100は、Bレジスタに記憶されているデータをDEレジスタが示すアドレス(F038(H))に記憶することで表示用設定値データを保存し(ステップS5805a)、1割込待機する処理を実行し(ステップS5806a)、この設定値更新処理S5800aを終了する。このステップS5806aのウエイト処理を行うことにより、1回の割込処理に対して複数回の設定値更新処理S5800aが実行されないようにすることができ、1回だけのリセット/設定スイッチ37の操作に対して設定値(ここでは、Bレジスタの値、又は、表示用設定値データ)が複数段階更新されるのを防止することができる。つまり、設定値表示器74が「1」を表示しているときにおいては、1回のリセット/設定スイッチ37の操作により、設定値表示器74が「2」以上の値になることを防止することができる。
そして、主制御手段100は、ステップS529a1でスタートレバー32が操作されたことを検出したときは、Bレジスタの値をHLレジスタが示すアドレスに記憶することにより、確定した設定値データを記憶する(ステップS529a2)。なお、このステップS529a2において、Bレジスタの値の代わりに、DEレジスタが示すアドレスのデータ(表示用設定値データ)をHLレジスタが示すアドレスに記憶するように構成してもよい。以降の処理(ステップS530以降の処理)は、設定変更処理S517で説明した通りである。
この第1の変形例によると、設定変更処理S517aのステップS528aにおいて設定値更新処理S5800aの実行が開始された後、スタートレバー32が操作されて設定値が確定するまでは、RAM104の表示用設定値データ(「F038(H)」)が更新され、設定値データ(「F000(H)」)は更新されず、スタートレバー32が操作された時点で、最終的に確定した設定値が設定値データとして記憶される。そのため、設定値更新処理S5800aが実行されており、且つ、スタートレバー32が操作される前に、電源断等が発生してこの処理が中断したとしても、設定値更新処理S5800aが実行される前の設定値データを維持することができるので、意図しない設定値データに変更されることがない。例えば、設定変更処理内のプログラムを実行中に電源断が発生し、且つ、設定変更キースイッチ36がオフとなっている状況下で電源が復帰した場合においては、電源断が発生した設定変更処理内のプログラムから開始されるように構成されている。具体的には、電源がオンとなったことに基づいてプログラム開始処理(S500)を開始し、プログラム開始処理内のステップS510でNOと判断されることにより電源復帰処理(S519)が実行可能となり、ステップS548後の電源断前のプログラムに戻るという処理により割込処理(S570)の電源断か否かを判定するステップ後のプログラム(ここでは制御用カウンタ値の更新(ステップS573))が実行され、割込処理のリターン命令により割込処理が実行されたときの戻り番地(ここでは、設定変更処理内のプログラム)から処理を実行可能となる。このとき、設定値データ「F000(H)」、及び、表示用設定値データ「F038(H)」の更新処理等は行われない。一方、設定変更処理内のプログラムを実行中に電源断が発生し、且つ、設定変更キースイッチ36がオンとなっている状況下で電源が復帰した場合においては、電源断が発生した設定変更処理内のプログラムから開始されないように構成されている。具体的には、電源がオンとなったことに基づいてプログラム開始処理(S500)を開始し、プログラム開始処理内のS510でYESと判断されることにより設定変更処理(ステップS517)が実行可能となる。換言すると、通常の電源断(電源断が正常、RAMのチェックサム値が正常)の場合には、設定値データ「F000(H)」の更新処理は行われないが、表示用設定値データ「F038(H)」の更新処理は行われる。例えば、設定値データが「1」であるが、リセット/設定スイッチ37が操作されて設定値表示器74が「4」を表示している状況下(表示用設定値データが「3」)において、設定変更処理内のプログラムを実行中に電源断が発生し、且つ、設定変更キースイッチ36がオンとなっている状況下で電源が復帰した場合においては、表示用設定値データとして「1」が記憶されることとなり、設定値表示器74には「2」が表示される。
このように、設定値データと表示用設定値データとをそれぞれRAM104の所定の記憶領域に記憶可能とすることにより、例えば、遊技施設の管理者が設定値を変更している途中に、前回(例えば、前日)の設定値は何を設定したかを再確認したくなった場合に、設定値を確定する前に電源をオフにし、設定変更キースイッチ36をオンにしたまま電源をオンにすることで、設定値を確定する前の設定値データに対応した設定値が設定値表示器74に表示されることとなる。つまり、不正に設定値が変更された可能性があると設定値を変更している途中で気づいた場合等において、再確認する機会を与えることができる。一方、遊技施設の管理者が設定値を変更している途中に、意図しない電源断(誤って電源をオフした場合等)が発生した場合には、設定変更キースイッチ36をオフにしてから電源をオンすることで、設定変更処理の途中から設定値の変更を再開することができる。
なお、この第1の変形例においては、LED表示処理S5600により設定値表示器74に設定値を表示するときは、ステップS5610においてRAM104から取得する設定値データは、設定値データ「F000(H)」ではなく、表示用設定値データ「F038(H)」である。この場合も、表示用設定値データには0〜5の範囲のデータが格納されているため、表示用設定値データは表示用設定値データに1を加算した値である(Aレジスタに記憶された表示用設定値データに「1」を加算する)。また、設定値エラーチェック処理S5740においては、RAM104の設定値データ(「F000(H)」)がチェックされる。
−設定値管理の第2の変形例−
上述した第1の変形例は一例であり、同じく図44を用いて第2の変形例について説明する。この第2の変形例も、設定値表示器74に対して、表示用設定値データに基づいて設定値を表示するように構成した場合を示している。
この第2の変形例においては、設定変更処理S517aのステップS527が実行された後に、HLレジスタにRAM104の表示用設定値データのアドレス(図20におけるF038(H))を記憶し、このHLレジスタで示されるアドレス(表示用設定値データのアドレス)にRAM104の設定値データ(F000(H))に記憶されているデータを記憶する(ステップS527a)。そして、主制御手段100は、スタートレバー32の操作を検出するまで設定値更新処理S5800aを繰り返し実行する(ステップS528a、S529a1)。
設定値更新処理S5800aにおいて、主制御手段100は、まず、Aレジスタに設定キー及び設定/リセットボタンエッジデータに記憶されているデータを格納する(ステップS5801a)。上述したように、リセット/設定スイッチ37が操作されていないときは、設定キー及び設定/リセットボタンエッジデータが「00000000(B)」となり、操作されたときは「00000010(B)」となる(操作されていないときはD1ビットが「0」で、操作されると「1」になる)。したがって、Aレジスタに記憶されているデータを右に1ビットシフトし、Aレジスタに記憶されているデータと「00000001(B)」の論理積演算を行う(演算結果はAレジスタに記憶されている)ことにより、Aレジスタの値は、リセット/設定スイッチ37が操作されたときは「00000001(B)」となり、操作がされていないときは「00000000(B)」となる。さらに、Aレジスタに記憶されている値に、HLレジスタで示されるアドレスのデータ(表示用設定値データ)を加算する(ステップS5802a)。このとき、演算結果はAレジスタに記憶されている。すなわち、この処理によりリセット/設定スイッチ37が操作されると、表示用設定値データに1が加算されることとなる。
次に、主制御手段100は、Aレジスタに記憶されている値(設定キー及び設定/リセットボタンエッジデータにより更新された表示用設定値データの値)が、正常の範囲であるか、上述した例では0〜5の範囲にあるかを判断する(ステップS5803a)。具体的には、Aレジスタの値から「6」を減算(比較演算)した結果、キャリーフラグが立っていた場合(すなわち、Aレジスタの値が0〜5の範囲であった場合)に正常範囲であると判断し、キャリーフラグが立っていなかった場合(例えば、Aレジスタの値が「6」であった場合)に正常範囲でないと判断する。そして、ステップS5803aで、正常範囲でないと判断したときは、Aレジスタの値に初期値を設定する(ステップS5804a)。例えば、Aレジスタの値とAレジスタの値の排他的論理和演算をし、その演算結果をAレジスタに記憶することにより、このAレジスタに初期値である「0」を記憶させることができる。そして、主制御手段100は、HLレジスタが示すアドレス(RAM104の表示用設定値データが記憶されるアドレス)にAレジスタの値を記憶することにより、表示用設定値データを更新し(ステップS5805a)、1割込待機する処理を実行し(ステップS5806a)、この設定値更新処理S5800aを終了する。
そして、主制御手段100は、ステップS529a1でスタートレバー32が操作されたことを検出したときは、RAM104の設定値データが記憶されているアドレス(図20におけるF000(H))にHLレジスタが示すアドレスの値(表示用設定値データ)を記憶することにより、確定した設定値データを記憶する(ステップS529a2)。
この第2の変形例においても、第1の変形例と同様に、所定の操作をすることで設定値を確定する前の設定値データに対応した設定値を確認することができ、また、意図しない電源断が発生した場合にも、設定変更の途中から設定値の変更を再開することができる。
−設定値管理の第3の変形例−
次に、図45を用いて設定値管理の第3の変形例について説明する。この第3の変形例も、設定値表示器74に対して、表示用設定値データに基づいて設定値を表示するように構成した場合を示している。なお、この図45も、図22に示す設定変更処理S517のステップS527〜S530の処理を変更したもの(設定変更処理S517b及び設定値更新処理S5800b)であり、同一の処理は同一の番号を付して詳細な説明を省略する。
図45に示すように、設定変更処理S517bにおいてステップS527が実行されると、設定値更新処理S5800bが実行される(ステップS528b)。
設定値更新処理S5800bにおいて、主制御手段100は、HLレジスタにRAM104の設定値データが記憶されているアドレス(図20におけるF000(H))を記憶する(ステップS5801b)。そして、HLレジスタが示すアドレスに記憶されている値(設定値データの値)が、正常の範囲であるか、上述した例では0〜5の範囲にあるかを判断する(ステップS5802b)。具体的には、HLレジスタが示すアドレスに記憶されている値(設定値データ)から「6」を減算(比較演算)した結果、キャリーフラグが立っていた場合(すなわち、HLレジスタに示すアドレスの値が0〜5の範囲であった場合)に正常範囲であると判断し、キャリーフラグが立っていなかった場合(例えば、HLレジスタが示すアドレスの値が「6」であった場合)に正常範囲でないと判断する。主制御手段100は、このステップS5802bで、正常範囲でないと判断したときは、HLレジスタが示すアドレスに初期値(「0」)を記憶する(ステップS5803b)。さらに、主制御手段100は、設定値を表示用設定値データに記憶する(ステップS5804b)。具体的には、HLレジスタにRAM104の表示用設定値データが記憶されるアドレス(F038(H))を記憶し、このHLレジスタが示すアドレスにRAM104の設定値データが記憶されるアドレス(F000(H))の値を記憶する。
次に、主制御手段100は、リセット/設定スイッチ37が操作されたか否かを判断する(ステップS5805b)。具体的には、設定キー及び設定/リセットボタンエッジデータは、リセット/設定スイッチ37が操作されたときに「00000010(B)」となる(D1ビットが「1」になる)ため、この設定キー及び設定/リセットボタンエッジデータと「00000010(B)」との比較演算を行った結果、ゼロフラグが「1」となったとき(D1ビットが「1」のとき)にリセット/設定スイッチ37が操作されたと判断し、ゼロフラグが「0」となったとき(D1ビットが「0」のとき)にリセット/設定スイッチ37が操作されていないと判断する。主制御手段100は、リセット/設定スイッチ37が操作されたと判断したときは、表示用設定値データに「0〜5」の範囲で「1」を加算する(ステップS5806b)。具体的には、HLレジスタが示すアドレスのデータに1を加算した結果、「1〜5」範囲のときはその値をHLレジスタが示すアドレスに記憶し、「6」になったときは「0」をHLレジスタが示すアドレスに記憶する命令(例えば、ICPLD命令(1加算した結果、特定値(本実施形態では「6」)となった場合には「0」を記憶し、特定値に達しなかった場合には1加算した結果を記憶する命令))を用いる。そして、主制御手段100は、1割込待機する処理を実行し(ステップS5807b)、スタートレバー32の操作を検出するまでステップS5805b〜ステップS5807bまでの処理を繰り返し実行する(ステップS5808b)。
主制御手段100は、ステップS5808bでスタートレバー32が操作されたと判断すると、RAM104の設定値データが記憶されるアドレス(F000(H))にHLレジスタが示すアドレスの値(表示用設定値データ)を記憶し(ステップS5809b)、設定値更新処理S5800bを終了する。
この第3の変形例においても、第1の変形例及び第2の変形例と同様に、所定の操作をすることで設定値を確定する前の設定値データに対応した設定値を確認することができ、また、意図しない電源断が発生した場合にも、設定変更の途中から設定値の変更を再開することができる。
−設定値管理の第4の変形例−
ここまでの説明では、設定値が「1〜M(Mは2以上の整数であって例えばM=6)」の範囲であるのに対し、RAM104に記憶する設定値デーは「0〜M−1」の範囲とした場合について説明したが、この第2の変形例ではRAM104に記憶する設定値データも「1〜M(例えばM=6)」とする場合について図46を用いて説明する。なお、この第4の変形例においては、設定変更処理S517は同一であり、設定値更新処理S5800が設定値更新処理S5800cに置き換わる。また、この図46において、設定値更新処理S5800と同一の処理は同一の符号を付し、詳細な説明を省略する。
設定値データを設定値と同じ「1〜M」の範囲とする場合、図46に示すように、ステップS5801及びS5802は、設定値更新処理S5800と同一の処理であり、ステップS5802で設定値データを更新した後、まず、Aレジスタに記憶されているデータをBレジスタに記憶して退避させ、さらに、Aレジスタに記憶されているデータから「1」を減算してその結果をAレジスタに記憶することにより、正常範囲を0〜5(M−1)とする(ステップS5802c)。さらに、このAレジスタから「6(十進数)」=Mを減算し、キャリーフラグが「1」のときに正常範囲であると判断し、「0」のとき正常範囲でないと判断する(ステップS5803)。そして、正常範囲でないと判断したときは、Aレジスタに初期値である「1」を記憶し(ステップS5804c1)、正常範囲であると判断したときは、Bレジスタの値をAレジスタに記憶する(ステップS5804c2)。ステップS5805及びS5806は、設定値更新処理S5800と同一の処理である。
なお、割込処理S570で実行される設定値デラ−チェック処理S5740においても、ステップS5742の処理は、上述したステップS5802c〜S5804c1、S5804c2に置き換わる。また、LED表示処理S5600におけるステップS5611(設定値データを表示するために「1」加算する処理)は不要となる。
このように構成することにより、設定値データと設定値が一致するので、データの管理が容易になる。
−設定値の確認−
上述した説明では、設定値更新処理の実行中は、設定値表示器74に更新中の設定値の値を表示するように構成されている。ここで、上述したステップS551とステップS552の間であって、ステップS553でNOと判断したとき、すなわち、遊技進行メイン処理S550において、遊技メダル管理処理S552が繰り返し実行されているときであって、ベット数が「0」のときに、設定変更キースイッチ36がオンされると、設定値を設定値表示器74に表示するように(設定値確認モードに移行するように)構成してもよい。この構成によると、設定変更キースイッチ36をオンすることで、現在の設定値を設定値表示器74に表示させて確認することができる。
−設定値データと表示用設定値データを備えた場合について−
上述した第1〜第3の変形例では、RAM104上に設定値を管理する設定値データ(F000(H))と、設定値表示器74に設定を表示するための表示用設定値データ(F038(H))とを設けた場合について説明した。このように構成した場合、設定値データ(本実施形態では「0」〜「5」)を表示用設定値データに記憶するタイミングで、設定値データを加工するための演算(本実施形態では「1」加算)した結果を表示用設定値データに記憶してもよい。換言すると割込処理S570で表示用設定値データから加工するための演算を行うことなく表示用設定値データをオフセット値として、設定値表示器74に表示することが可能となることから、割込処理S570で実行する処理時間が短くなるため、メイン処理で実行される処理時間を長くすることが可能である。
また、設定値データと表示用設定値データを備えた場合、新たなエラーチェックを実現することができる。例えば、設定値データが「0〜5」と表示用設定値データが「0〜5」の場合、設定変更処理後(具体的には遊技進行メイン処理S550)は、設定値データと表示用設定値データとが同じデータが記憶されることとなる。しかしながら、適正な手順を踏んで設定変更がなされなかった場合等においては、設定値データと表示用設定値データが不一致となる可能性が高い。そこで、遊技進行メイン処理S550中の所定のタイミング(例えば、遊技開始処理や、設定値に基づく抽選処理を実行する前や、遊技終了チェック処理)で、RAM104に記憶されている設定値データと表示用設定値データとを比較演算し、不一致と判断した場合にはエラーと判断し、エラー処理(復帰不可能エラー処理)を実行するようにしても良い。
なお、設定値データが「0〜5」で、表示用設定値データが「1〜6」で記憶されている場合には、例えば、設定値データと、表示用設定値データを「1」減算したデータとを比較演算するようにすれば良い。
さらにまた、このような比較演算は割込処理S570内でチェック(設定値エラーチェック2)しても良い。このとき、設定変更中は設定値データと表示用設定値データとが不一致となるタイミングがあることがあるから、設定変更中は設定値エラーチェック2を実行しないように、設定変更中であることを示すフラグをRAM104に記憶しておくことで、設定変更中か否かで設定値エラーチェック2を実行するか否かを決定してもよい。
また、設定値データと表示用設定値データを備えた場合、スタートレバー32の操作を契機に表示用設定値データを設定値データに記憶していたが、設定変更キースイッチ36がオフ(設定変更キースイッチ36の立ち下がりデータが「1」)となったことを契機に表示用設定値データから設定値データに記憶するように構成してもよい。
また、設定値データと表示用設定値データを備えた場合、設定値データが異常となる可能性が低減する。例えば、設定値データのみ備えた場合には、設定確認モード時にRAM104の設定値データ(F000(H))を参照することにより設定値を表示することになるが、RAM104に表示用設定値データ(F038(H))を備えた場合には、表示用設定値データを参照することにより設定値を表示することが可能となる。つまり、表示用設定値データを備えた場合には、RAM104の参照アドレスとして設定値データでは無いアドレスとなるため、設定値データにアクセスする頻度が減る。ここで、RAMアドレスにアクセスする(参照等)際に、静電気等でアクセスしたRAMアドレスの情報が破壊される可能性がある。設定値データは役抽選等の出玉に関わるデータであるため、破壊される可能性が低減することにより、遊技施設側が設定した設定値に応じた抽選を実行することがより確実となる。
(プログラムのメモリ配置について)
RAM104のデータ領域の説明でも述べたように、本実施形態に係るスロットマシン1では、「不正な改造その他の変更を防止するために必要な情報以外の情報が記憶され、又は記憶されることとなるROM105又はRAM104の記憶領域」を「使用領域」と呼び、この使用領域に格納されるプログラムを「第1プログラム」と呼び、使用領域外の領域に格納されるプログラムを「第2プログラム」と呼んでいる。例えば、本実施形態では、ROM105の記憶領域は16KBであり、その内訳は、7.5KBの使用領域と、8.5KBの使用外領域に大別される。また、メモリ空間を0000(H)〜FFFF(H)とした場合、第1プログラムが格納される領域(「第1プログラム領域」と呼ぶ)を、0000(H)〜0A56(H)とし、第2プログラムが格納される領域(「第2プログラム領域」と呼ぶ)を、2000(H)〜230A(H)として、これらの領域を明確に区分するように構成されている。ここで、ROM105における7.5KBの使用領域のうち、第1プログラム(モジュール)が格納される領域を「制御領域」と呼び、本実施形態では4.5KBを超えないように構成されている。この第1プログラムは、遊技の進行に関する処理(役抽選、AT抽選、払出処理等)を行うものである。また、7.5KBの使用領域のうち、データが格納される領域を「データ領域」と呼び、本実施形態では3.5KBを超えないように構成されている。このデータ領域には、役抽選やAT抽選等に用いる抽選テーブル等が格納される。なお、このメモリ空間において、データ領域(F000(H)〜F3FF(H))の構成は、上述した通りであり、第1プログラムが使用するデータ領域と第2プログラムが使用するデータ領域も明確に区分されている(図20参照)。また、第1プログラム及び第2プログラムの格納領域はROM105に対応し、データ領域はRAM104に対応する。
本実施形態においては、プログラム開始処理S500、設定変更処理S517、電源断復帰処理S532、遊技進行メイン処理S550、割込処理S570の基本的な部分は第1プログラム領域に格納されている。しかし、これらの処理のうち、「RAM104のうち、第2プログラムで使用する領域を初期化する処理」、「割込処理S570のうち、設定値エラーチェック処理S5740や、この処理から呼び出される復帰不可能エラー処理S5743」は、第2プログラム領域に格納されている。但し、電源断復帰処理S539から呼び出される復帰不可能エラー処理S5743は、第1プログラム領域に格納されている。
また、第2プログラム領域を設けず、全てのプログラムを第1プログラム領域で管理するように構成してもよい。
(副制御手段200)
このようなスロットマシン1においては、遊技の結果に外部からの影響を加えることができないように、遊技を制御する主制御手段100とその遊技に対する演出を制御する副制御手段200(サブ制御手段とも称する)とは分離して構成されている。ここで、副制御手段200は、副制御基板300及び画像制御基板400から構成される。そのため、主制御手段100は、副制御手段200で実行される演出を制御するために、上述の当選結果や遊技状態等の遊技に関する情報(制御状態)を含む制御コマンドを副制御手段200に送信するように構成されており、副制御手段200を構成する副制御基板300の演出制御手段301は、この制御コマンドを受信してその演出の態様を決定し、演出手段40を構成する画像表示装置41、各種演出用ランプ42、放音部(スピーカ)43、バックランプ44及びサブ操作スイッチ45により映像、光及び音響効果並びにリール表示窓11に表示される図柄を用いて演出を行うように構成されている。
この副制御手段200において副制御基板300と画像制御基板400とは、図3に示すように、バス210に接続されている。副制御基板300には、サブCPU310、乱数発生器320、RAM330、ROM340、及びI/F回路350が設けられており、これらはバス210に接続されている。一方、画像制御基板400には、サブサブCPU410、画像制御IC420及び音源IC460が設けられており、上述のバス210に接続されたサブサブCPU410により制御される。このサブサブCPU410は、画像制御基板400で実行されるプログラム等を記憶するROM495と、このプログラムの実行時にデータ等を記憶するRAM490を有している。さらに、画像制御IC420には、ビデオRAM430、画像ROM440及び表示回路450と、画像表示装置41とが接続されている。なお、画像制御IC420は、「GPU(Graphics Processing Unit)」とも呼ばれ、画像ROM440は「キャラクタROM」又は「CG−ROM」とも呼ばれる。また、音源IC460には音源ROM470及びアンプ480が接続され、アンプ480には上部及び下部スピーカ43(43a,43b)が接続されている。また、バス210には、上述の各種演出用ランプ42(42a,42b)、及び、バックランプ44も接続されてその点灯・消灯動作が副制御基板300により制御される。さらにバス210には、サブ操作スイッチ45が接続されている。このサブ操作スイッチ45は、副制御手段200の副制御基板300で実行される演出に対して遊技者からの指示を与えるものであり、例えば、ボタン及び方向キーから構成されている。このサブ操作スイッチ45は、例えば、図1に示すように、ストップボタン33a〜33cの上方に配置されている。
サブCPU310は、ROM340に記録された演出用制御プログラムをRAM330に展開して実行し、画像制御基板400に設けられたサブサブCPU410に対して演出コマンドを送信することにより、このサブサブCPU410により画像制御IC420及び音源IC460を制御して、画像表示装置41や放音部43(43a,43b)を用いて映像や音響効果による遊技の演出を行うように構成されている。なお、画像表示装置41に表示される映像は、画像制御IC420が、画像ROM440に記憶された画像情報をビデオRAM430に展開して実行することにより表示され、また、放音部43(43a,43b)から出力される音響効果(音楽、音声、効果音等)は、音源IC460が音源ROM470から取り出した音響情報に基づいて再生され、アンプ480を介して放音部43(43a,43b)から出力される。ここで、本実施形態に係るスロットマシン1では、画像表示装置41に表示される映像を用いた演出における放音部43を用いた音声の出力は、副制御基板300のサブCPU310から送信される演出コマンドに基づいて、画像制御基板400のサブサブCPU410により実行される。また、画像表示装置41を用いず、放音部43からの音の出力だけの演出(及びエラーの報知)も、サブCPU310から送信される演出コマンドによりサブサブCPU410で実行される。そのため、画像制御基板400に搭載される音源IC(サウンドチップ)460として、音を出力するチャネルを複数有するものを用いることにより、複数のチャネルに対して画像表示装置41を用いた演出の音声の出力(主に、画像制御基板400の制御による音の出力)と、画像表示装置41を用いない演出の音声の出力(主に、副制御基板300の制御による音の出力)とのそれぞれで使用するチャネルを割り当てることにより、副制御基板300と画像制御基板400とで使用チャネルが重ならないようにすることができる(例えば、16チャネルある音源IC460の場合に、1〜6チャネルを副制御基板300に割り当て、7〜16チャネルを画像制御基板400に割り当てる)。このように、副制御基板300は音出力指示手段としての機能を有し、画像制御基板400は音出力制御手段としての機能を有している。
なお、このサブCPU310で実行される演出は、上述したように、主制御手段100から送信される制御コマンドを、サブCPU310がI/F回路350を介して受信し、この制御コマンドに応じて決定・制御されるが、この演出の態様(パターン)の一部は、副制御基板300に設けられた乱数発生器320で発生された乱数値を用いて決定されるように構成されている。
図3に示すように、副制御基板300には、演出を実行する演出制御手段301、主制御手段100から送信された制御コマンドを受信する制御コマンド受信手段302及び画像制御基板400に対して演出コマンドの送受信を行う演出コマンド送受信手段303が設けられている。また、画像制御基板400には、画像及びサウンドの制御を行う画像/サウンド出力手段401、及び、副制御基板300との間で演出コマンドの送受信を行う演出コマンド送受信手段402が設けられている。なお、上述したように、主制御手段100は、同一の制御コマンドを2回送信するように構成されている。そのため、副制御基板300は、2個の同一の制御コマンドを受信したときにその制御コマンドを有効としてもよい(1個しか受信できないときは無効として破棄する)。この場合、主制御手段100から受信した制御コマンドの信頼性が向上する。また、いずれか一個の制御コマンドを受信できたときにその制御コマンドを有効としてもよい。あるいは、2個の制御コマンドの一部が欠損してもそれらの制御コマンドから1つの制御コマンドを再生することができるとは、その制御コマンドを有効として扱ってもよい。この場合、主制御手段100から送信される制御コマンドの取りこぼしを防止することができる。
従来の遊技機では、主制御手段(メイン)100で役抽選を行い、副制御手段(サブ)200でAT等の出玉に関する抽選を行っており、これらの抽選においては、メイン側で管理される設定値データに基づいて、抽選の有利度合いが異なるように構成されていた。しかし、AT等の出玉に関する抽選をメイン側で実行する遊技機の場合、メインで管理する設定値データに対する信頼性がより重要になっている。
そのため、上述したように、RAM104で記憶されている設定値データを割込処理S570で実行される設定値エラーチェック処理S5740で適宜確認することにより、設定値データの信頼性を向上させ、この設定値データに基づく抽選処理(役抽選やAT抽選等)の信頼性を向上させることができる。ここで、本実施形態では、設定値データを割込処理S570でチェックすることにより、所定の時間間隔でチェックしている。メイン処理で設定値チェックをする場合(メイン処理で設定値エラーチェック処理を実行する場合)は、抽選処理の度に設定値エラーチェック処理を呼び出して実行する必要があるため、メイン処理が増加する。しかしながら、割込処理S570で設定値エラーチェック処理S5740を実行することにより、処理負担を軽減することができる。もちろん、メイン処理による抽選処理を実行する前に、このメイン処理により設定値エラーチェック処理を実行するように構成してもよい。
また、従来の遊技機では、AT等の抽選処理やAT等の抽選テーブルは、サブ側で管理していたため、これらのプログラムやデータは副制御基板300のROM340に格納されていたが、AT等の出玉に関する抽選をメイン側で実行する遊技機の場合、これらのデータやプログラムがメイン側で管理されるため、メイン側のROM105の使用領域を圧迫するようになっている。上述したように、使用外領域に第2プログラムとしてプログラム(モジュール)を格納することにより、設定値エラーチェック処理S5740等をこの使用外領域に格納することができるので、使用領域を有効に利用することができる。
なお、上述した実施形態及び各変形例は、それぞれが上述した効果を発揮するものであり、全ての実施形態及び変形例を満たすものに限定されることはなく、実施形態や変形例の何れかを組み合わせたもの、または、種々の変形例を組み合わせたものも、上述した効果を得ることが可能である。