本発明の実施例を以下に説明する。
本発明が適用されたスロットマシンの実施例を図面を用いて説明すると、本実施例のスロットマシン1は、前面が開口する筐体(図示略)と、この筺体の側端に回動自在に枢支された前面扉と、から構成されている。
本実施例のスロットマシン1の筐体内部には、外周に複数種の図柄が配列されたリール2L、2C、2R(以下、左リール、中リール、右リールともいう)が水平方向に並設されており、図1に示すように、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が前面扉に設けられた透視窓3から見えるように配置されている。
リール2L、2C、2Rの外周部には、図2に示すように、それぞれ「赤7(図中黒7)」、「青7(図中網掛7)」、「BAR」、「リプレイ」、「スイカ」、「チェリー」、「ベル」といった互いに識別可能な複数種類の図柄が所定の順序で、それぞれ21個ずつ描かれている。リール2L、2C、2Rの外周部に描かれた図柄は、透視窓3において各々上中下三段に表示される。
各リール2L、2C、2Rは、各々対応して設けられリールモータ32L、32C、32R(図3参照)によって回転させることで、各リール2L、2C、2Rの図柄が透視窓3に連続的に変化しつつ表示されるとともに、各リール2L、2C、2Rの回転を停止させることで、透視窓3に3つの連続する図柄が表示結果として導出表示されるようになっている。
また、前面扉には、メダルを投入可能なメダル投入部4、メダルが払い出されるメダル払出口9、クレジット(遊技者所有の遊技用価値として記憶されているメダル数)を用いてメダル1枚分の賭数を設定する際に操作される1枚BETスイッチ5、クレジットを用いて、その範囲内において遊技状態に応じて定められた規定数の賭数(本実施例では後述の通常遊技状態においては3、後述のレギュラーボーナスにおいては1)を設定する際に操作されるMAXBETスイッチ6、クレジットとして記憶されているメダル及び賭数の設定に用いたメダルを精算する(クレジット及び賭数の設定に用いた分のメダルを返却させる)際に操作される精算スイッチ10、ゲームを開始する際に操作されるスタートスイッチ7、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8Rが設けられている。
また、前面扉には、クレジットとして記憶されているメダル枚数が表示されるクレジット表示器11、後述するビッグボーナス中のメダルの獲得枚数やエラー発生時にその内容を示すエラーコード等が表示される遊技補助表示器12、入賞の発生により払い出されたメダル枚数が表示されるペイアウト表示器13が設けられている。
また、前面扉には、賭数が1設定されている旨を点灯により報知する1BETLED14、賭数が2設定されている旨を点灯により報知する2BETLED15、賭数が3設定されている旨を点灯により報知する3BETLED16、メダルの投入が可能な状態を点灯により報知する投入要求LED17、スタートスイッチ7の操作によるゲームのスタート操作が有効である旨を点灯により報知するスタート有効LED18、ウェイト(前回のゲーム開始から一定期間経過していないためにリールの回転開始を待機している状態)中である旨を点灯により報知するウェイト中LED19、後述するリプレイゲーム中である旨を点灯により報知するリプレイ中LED20が設けられている。
また、MAXBETスイッチ6の内部には、1枚BETスイッチ5及びMAXBETスイッチ6の操作による賭数の設定操作が有効である旨を点灯により報知するBETスイッチ有効LED21(図3参照)が設けられており、ストップスイッチ8L、8C、8Rの内部には、該当するストップスイッチ8L、8C、8Rによるリールの停止操作が有効である旨を点灯により報知する左、中、右停止有効LED22L、22C、22R(図3参照)がそれぞれ設けられている。
また、前面扉の内側には、所定のキー操作により後述するRAM異常エラーを除くエラー状態及び後述する打止状態を解除するためのリセット操作を検出するリセットスイッチ23、後述する設定値の変更中や設定値の確認中にその時点の設定値が表示される設定値表示器24、メダル投入部4から投入されたメダルの流路を、筐体内部に設けられた後述のホッパータンク(図示略)側またはメダル払出口9側のいずれか一方に選択的に切り替えるための流路切替ソレノイド30、メダル投入部4から投入され、ホッパータンク側に流下したメダルを検出する投入メダルセンサ31が設けられている。
筐体内部には、前述したリール2L、2C、2R、リールモータ32L、32C、32R、各リール2L、2C、2Rのリール基準位置をそれぞれ検出可能なリールセンサ33からなるリールユニット(図示略)、メダル投入部4から投入されたメダルを貯留するホッパータンク(図示略)、ホッパータンクに貯留されたメダルをメダル払出口9より払い出すためのホッパーモータ34、ホッパーモータ34の駆動により払い出されたメダルを検出する払出センサ35、電源ボックス(図示略)が設けられている。
電源ボックスの前面には、後述のビッグボーナス終了時に打止状態(リセット操作がなされるまでゲームの進行が規制される状態)に制御する打止機能の有効/無効を選択するための打止スイッチ36、後述のビッグボーナス終了時に自動精算処理(クレジットとして記憶されているメダルを遊技者の操作によらず精算(返却)する処理)に制御する自動精算機能の有効/無効を選択するための自動精算スイッチ29、起動時に設定変更モードに切り替えるための設定キースイッチ37、通常時においてはRAM異常エラーを除くエラー状態や打止状態を解除するためのリセットスイッチとして機能し、設定変更モードにおいては後述する内部抽選の当選確率(出玉率)の設定値を変更するための設定スイッチとして機能するリセット/設定スイッチ38、電源をON/OFFする際に操作される電源スイッチ39が設けられている。
本実施例のスロットマシン1においてゲームを行う場合には、まず、メダルをメダル投入部4から投入するか、あるいはクレジットを使用して賭数を設定する。クレジットを使用するには1枚BETスイッチ5、またはMAXBETスイッチ6を操作すれば良い。遊技状態に応じて定められた規定数の賭数が設定されると、入賞ラインL1〜L5(図1参照)が有効となり、スタートスイッチ7の操作が有効な状態、すなわち、ゲームが開始可能な状態となる。尚、本実施例では、規定数の賭数として後述する通常遊技状態においては3枚が定められており、後述するレギュラーボーナス中においては、1枚が定められている。尚、遊技状態に対応する規定数を超えてメダルが投入された場合には、その分はクレジットに加算される。
ゲームが開始可能な状態でスタートスイッチ7を操作すると、各リール2L、2C、2Rが回転し、各リール2L、2C、2Rの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8L、8C、8Rを操作すると、対応するリール2L、2C、2Rの回転が停止し、透視窓3に表示結果が導出表示される。
そして全てのリール2L、2C、2Rが停止されることで1ゲームが終了し、有効化されたいずれかの入賞ラインL1〜L5上に予め定められた図柄の組み合わせ(以下、役とも呼ぶ)が各リール2L、2C、2Rの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた枚数のメダルが遊技者に対して付与され、クレジットに加算される。また、クレジットが上限数(本実施例では50)に達した場合には、メダルが直接メダル払出口9(図1参照)から払い出されるようになっている。尚、有効化された複数の入賞ライン上にメダルの払出を伴う図柄の組み合わせが揃った場合には、有効化された入賞ラインに揃った図柄の組み合わせそれぞれに対して定められた払出枚数を合計し、合計した枚数のメダルが遊技者に対して付与されることとなる。ただし、1ゲームで付与されるメダルの払出枚数には、上限(本実施例では、15枚)が定められており、合計した払出枚数が上限を超える場合には、上限枚数のメダルが付与されることとなる。また、有効化されたいずれかの入賞ラインL1〜L5上に、遊技状態の移行を伴う図柄の組み合わせが各リール2L、2C、2Rの表示結果として停止した場合には図柄の組み合わせに応じた遊技状態に移行するようになっている。
図3は、スロットマシン1の構成を示すブロック図である。スロットマシン1には、図3に示すように、遊技制御基板40、演出制御基板90、電源基板100が設けられており、遊技制御基板40によって遊技状態が制御され、演出制御基板90によって遊技状態に応じた演出が制御され、電源基板100によってスロットマシン1を構成する電気部品の駆動電源が生成され、各部に供給される。
電源基板100には、外部からAC100Vの電源が供給されるとともに、このAC100Vの電源からスロットマシン1を構成する電気部品の駆動に必要な直流電圧が生成され、遊技制御基板40及び遊技制御基板40を介して接続された演出制御基板90に供給されるようになっている。また、電源基板100には、前述したホッパーモータ34、払出センサ35、打止スイッチ36、自動精算スイッチ29、設定キースイッチ37、リセット/設定スイッチ38、電源スイッチ39が接続されている。
遊技制御基板40には、前述した1枚BETスイッチ5、MAXBETスイッチ6、スタートスイッチ7、ストップスイッチ8L、8C、8R、精算スイッチ10、リセットスイッチ23、投入メダルセンサ31、リールセンサ33が接続されているとともに、電源基板100を介して前述した払出センサ35、打止スイッチ36、自動精算スイッチ29、設定キースイッチ37、リセット/設定スイッチ38が接続されており、これら接続されたスイッチ類の検出信号が入力されるようになっている。
また、遊技制御基板40には、前述したクレジット表示器11、遊技補助表示器12、ペイアウト表示器13、1〜3BETLED14〜16、投入要求LED17、スタート有効LED18、ウェイト中LED19、リプレイ中LED10、BETスイッチ有効LED21、左、中、右停止有効LED22L、22C、22R、設定値表示器24、流路切替ソレノイド30、リールモータ32L、32C、32Rが接続されているとともに、電源基板100を介して前述したホッパーモータ34が接続されており、これら電気部品は、遊技制御基板40に搭載された後述のメイン制御部41の制御に基づいて駆動されるようになっている。
遊技制御基板40には、CPU41a、ROM41b、RAM41c、I/Oポート41dを備えたマイクロコンピュータからなり、遊技の制御を行うメイン制御部41、所定範囲(本実施例では0〜16383)の乱数を発生させる乱数発生回路42、乱数発生回路から乱数を取得するサンプリング回路43、遊技制御基板40に直接または電源基板100を介して接続されたスイッチ類から入力された検出信号を検出するスイッチ検出回路44、リールモータ32L、32C、32Rの駆動制御を行うモータ駆動回路45、流路切替ソレノイド30の駆動制御を行うソレノイド駆動回路46、遊技制御基板40に接続された各種表示器やLEDの駆動制御を行うLED駆動回路47、スロットマシン1に供給される電源電圧を監視し、電圧低下を検出したときに、その旨を示す電圧低下信号をメイン制御部41に対して出力する電断検出回路48、電源投入時またはCPU41aからの初期化命令が入力されないときにCPU41aにリセット信号を与えるリセット回路49、その他各種デバイス、回路が搭載されている。
CPU41aには、処理を実行するのに必要なデータの読み出し及び書き込みが行われる複数のレジスタ(記憶領域)が設けられている。詳しくは、主に演算用データが格納されるA、Fレジスタ(フラグレジスタ)、汎用データが格納されるB、C、D、E、H、Lレジスタ、実行中のプログラムの位置を示すデータが格納されるPCレジスタ、スタックポインタ(後述するスタック領域の現在の位置を示すアドレス)が格納されるSPレジスタ、後述するリフレッシュ動作を行うRAM41cのメモリブロックを示すデータが格納されるRレジスタ、RAM41cの格納領域を参照する際の基準となる位置を示すデータが格納されるIX、IYレジスタ、割込発生時に参照する割込テーブルの位置を示すデータが格納されるIレジスタが設けられている。
CPU41aは、計時機能、タイマ割込などの割込機能(割込禁止機能を含む)を備え、ROM41bに記憶されたプログラム(後述)を実行して、遊技の進行に関する処理を行うととともに、遊技制御基板40に搭載された制御回路の各部を直接的または間接的に制御する。ROM41bは、CPU41aが実行するプログラムや各種テーブル等の固定的なデータを記憶する。RAM41cは、CPU41aがプログラムを実行する際のワーク領域等として使用される。I/Oポート41dは、メイン制御部41が備える信号入出力端子を介して接続された各回路との間で制御信号を入出力する。
メイン制御部41は、信号入力端子DATAを備えており、遊技制御基板40に接続された各種スイッチ類の検出状態がこれら信号入力端子DATAを介して入力ポートに入力される。これら信号入力端子DATAの入力状態は、CPU41aにより監視されており、CPU41aは、信号入力端子DATAの入力状態、すなわち各種スイッチ類の検出状態に応じて段階的に移行する基本処理を実行する。
また、CPU41aは、前述のように割込機能を備えており、割込の発生により基本処理に割り込んで割込処理を実行できるようになっている。本実施例では、割込1〜4の4種類の割込を実行可能であり、各割込毎にカウンタモード(信号入力端子DATAとは別個に設けられたトリガー端子CLK/TRGからの信号入力に応じて外部割込を発生させる割込モード)とタイマモード(CPU41aのクロック入力数に応じて内部割込を発生させる割込モード)のいずれかを選択して設定できるようになっている。
本実施例では、割込1〜4のうち、割込2がカウンタモードに設定され、割込3がタイマモードに設定され、割込1、4は未使用とされている。トリガー端子CLK/TRGは、前述した電断検出回路48と接続されており、CPU41aは電断検出回路48から出力された電圧低下信号の入力に応じて割込2を発生させて後述する電断割込処理を実行する。また、CPU41aは、クロック入力数が一定数に到達する毎、すなわち一定時間間隔(本実施例では、約0.56ms)毎に割込3を発生させて後述するタイマ割込処理(メイン)を実行する。また、割込1、4は、未使用に設定されているが、ノイズ等によって割込1、4が発生することがあり得る。このため、CPU41aは、割込1、4が発生した場合に、もとの処理に即時復帰させる未使用割込処理を実行するようになっている。
また、CPU41aは、割込1〜4のいずれかの割込の発生に基づく割込処理の実行中に他の割込を禁止するように設定されているとともに、複数の割込が同時に発生した場合には、割込2、3、1、4の順番で優先して実行する割込が設定されている。すなわち割込2とその他の割込が同時に発生した場合には、割込2を優先して実行し、割込3と割込1または4が同時に発生した場合には、割込3を優先して実行するようになっている。
また、CPU41aは、割込1〜4のいずれかの割込の発生に基づく割込処理の開始時に、レジスタに格納されている使用中のデータをRAM41cに設けられた後述のスタック領域に一時的に退避させるとともに、当該割込処理の終了時にスタック領域に退避させたデータをレジスタに復帰させるようになっている。
RAM41cには、DRAM(Dynamic RAM)が使用されており、記憶しているデータ内容を維持するためのリフレッシュ動作が必要となる。CPU41aには、このリフレッシュ動作を行うための前述したR(リフレッシュ)レジスタが設けられている。Rレジスタは、8ビットからなり、そのうちの下位7ビットが、CPU41aがROM41bから命令をフェッチする度に自動的にインクリメントされるもので、その値の更新は、1命令の実行時間毎に行われる。
また、メイン制御部41には、停電時においてもバックアップ電源が供給されており、バックアップ電源が供給されている間は、CPU41aによりリフレッシュ動作が行われてRAM41cに記憶されているデータが保持されるようになっている。
また、CPU41aは、起動時において、打止スイッチ36、自動精算スイッチ29の状態を取得し、CPU41aの特定のレジスタに打止機能の有効/無効、自動精算機能の有効/無効を設定するようになっている。打止スイッチ36及び自動精算スイッチ29の状態は起動時においてのみ取得し、取得した状態に基づいて打止及び自動精算機能の有効/無効が設定されるため、その後に打止スイッチ36や自動精算スイッチ29が操作されても、新たに打止及び自動精算機能の有効/無効が設定されることはない。
乱数発生回路42は、後述するように所定数のパルスを発生する度にカウントアップして値を更新するカウンタによって構成され、サンプリング回路43は、乱数発生回路42がカウントしている数値を取得する。乱数発生回路42は、乱数の種類毎にカウントする数値の範囲が定められており、本実施例では、その範囲として0〜16383が定められている。CPU41aは、その処理に応じてサンプリング回路43に指示を送ることで、乱数発生回路42が示している数値を乱数として取得する(以下、この機能をハードウェア乱数機能という)。後述する内部抽選用の乱数は、ハードウェア乱数機能により抽出した乱数をそのまま使用するのではなく、ソフトウェアにより加工して使用するが、その詳細については詳しく説明する。また、CPU41aは、前述のタイマ割込処理(メイン)により、特定のレジスタの数値を更新し、こうして更新された数値を乱数として取得する機能も有する(以下、この機能をソフトウェア乱数機能という)。
CPU41aは、I/Oポート41dを介して演出制御基板90に、各種のコマンドを送信する。遊技制御基板40から演出制御基板90へ送信されるコマンドは一方向のみで送られ、演出制御基板90から遊技制御基板40へ向けてコマンドが送られることはない。遊技制御基板40から演出制御基板90へ送信されるコマンドの伝送ラインは、ストローブ(INT)信号ライン、データ伝送ライン、グラウンドラインから構成されているとともに、演出中継基板80を介して接続されており、遊技制御基板40と演出制御基板90とが直接接続されない構成とされている。
演出制御基板90には、スロットマシン1の前面扉に配置された液晶表示器51(図1参照)、演出効果LED52、スピーカ53、54、リールLED55等の電気部品が接続されており、これら電気部品は、演出制御基板90に搭載された後述のサブ制御部91による制御に基づいて駆動されるようになっている。
演出制御基板90には、メイン制御部41と同様にCPU91a、ROM91b、RAM91c、I/Oポート91dを備えたマイクロコンピュータにて構成され、演出の制御を行うサブ制御部91、演出制御基板90に接続された液晶表示器51の駆動制御を行う液晶駆動回路92、演出効果LED52、リールLED55の駆動制御を行うランプ駆動回路93、スピーカ53、54からの音声出力制御を行う音声出力回路94、電源投入時またはCPU91aからの初期化命令が入力されないときにCPU91aにリセット信号を与えるリセット回路95、その他の回路等、が搭載されており、CPU91aは、遊技制御基板40から送信されるコマンドを受けて、演出を行うための各種の制御を行うとともに、演出制御基板90に搭載された制御回路の各部を直接的または間接的に制御する。
CPU91aは、メイン制御部41のCPU41aと同様に、タイマ割込などの割込機能(割込禁止機能を含む)を備える。サブ制御部91の割込端子(図示略)は、コマンド伝送ラインのうち、メイン制御部41がコマンドを送信する際に出力するストローブ(INT)信号線に接続されており、CPU91aは、ストローブ信号の入力に基づいて割込を発生させて、メイン制御部41からのコマンドを取得し、バッファに格納するコマンド受信割込処理を実行する。また、CPU91aは、クロック入力数が一定数に到達する毎、すなわち一定間隔毎に割込を発生させて後述するタイマ割込処理(サブ)を実行する。また、CPU91aにおいても未使用の割込が発生した場合には、もとの処理に即時復帰させる未使用割込処理を実行するようになっている。
また、CPU91aは、CPU41aとは異なり、ストローブ信号(INT)の入力に基づいて割込が発生した場合には、他の割込に基づく割込処理の実行中であっても、当該処理に割り込んでコマンド受信割込処理を実行し、他の割込が同時に発生してもコマンド受信割込処理を最優先で実行するようになっている。
また、サブ制御部91にも、停電時においてバックアップ電源が供給されており、バックアップ電源が供給されている間は、CPU91aによりリフレッシュ動作が行われてRAM91cに記憶されているデータが保持されるようになっている。
本実施例のスロットマシン1は、設定値に応じてメダルの払出率が変わるものであり、後述する内部抽選の当選確率は、設定値に応じて定まるものとなる。以下、設定値の変更操作について説明する。
設定値を変更するためには、設定キースイッチ37をON状態としてからスロットマシン1の電源をONする必要がある。設定キースイッチ37をON状態として電源をONすると、設定値表示器24に設定値の初期値として1が表示され、リセット/設定スイッチ38の操作による設定値の変更操作が可能な設定変更モードに移行する。設定変更モードにおいて、リセット/設定スイッチ38が操作されると、設定値表示器24に表示された設定値が1ずつ更新されていく(設定6から更に操作されたときは、設定1に戻る)。そして、スタートスイッチ7が操作されると設定値が確定し、確定した設定値がメイン制御部41のRAM41cに格納される。そして、設定キースイッチ37がOFFされると、遊技の進行が可能な状態に移行する。
本実施例のスロットマシン1においては、メイン制御部41のCPU41aが電圧低下信号を検出した際に、電断割込処理を実行する。電断割込処理では、レジスタを後述するRAM41cのスタックに退避し、メイン制御部41のRAM41cにいずれかのビットが1となる破壊診断用データ(本実施例では、5AH)、すなわち0以外の特定のデータを格納するとともに、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、RAM41cに格納する処理を行うようになっている。尚、RAMパリティとはRAM41cの該当する領域(本実施例では、全ての領域)の各ビットに格納されている値の排他的論理和として算出される値である。このため、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが0であれば、RAMパリティ調整用データは0となり、RAM41cの全ての領域に格納されたデータに基づくRAMパリティが1であれば、RAMパリティ調整用データは1となる。
そして、CPU41aは、その起動時においてRAM41cの全ての領域に格納されたデータに基づいてRAMパリティを計算するとともに、破壊診断用データの値を確認し、RAMパリティが0であり、かつ破壊診断用データの値も正しいことを条件に、RAM41cに記憶されているデータに基づいてCPU41aの処理状態を電断前の状態に復帰させるが、RAMパリティが0でない場合(1の場合)や破壊診断用データの値が正しくない場合には、RAM異常と判定し、RAM異常エラーコードをレジスタにセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、RAM異常エラー状態は、他のエラー状態と異なり、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更モードにおいて新たな設定値が設定されるまで解除されることがない。
また、CPU41aは、後述する内部抽選処理において当該ゲームにおいて設定された賭数が遊技状態に応じた賭数であるか否かを判定する。そして、設定された賭数が遊技状態に応じた賭数ではない場合にも、RAM異常と判定し、RAM異常エラーコードをセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、前述のようにRAM異常エラー状態は、他のエラー状態と異なり、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更モードにおいて新たな設定値が設定されるまで解除されることがない。
また、CPU41aは、後述する内部抽選処理において内部抽選に用いる設定値が適正な値であるか否かを判定する設定値判定処理を実行する。
設定値判定処理では、内部抽選に用いる設定値が適正な範囲の値(1〜6)か否かを判定する設定値判定処理1、内部抽選に用いる設定値と、設定変更時に設定された設定値と、が一致するか否かを判定する設定値判定処理2、今回のゲームの内部抽選に用いる設定値と、前回のゲームの内部抽選に用いた設定値と、が一致するか否かを判定する設定値判定処理3、を1ゲーム毎にそれぞれ実行する。
そして、設定値判定処理1において、内部抽選に用いる設定値が適正な範囲の値でない場合、または設定値判定処理2において、内部抽選に用いる設定値と、設定変更時に設定された設定値と、が一致しない場合、または設定値判定処理3において、今回のゲームの内部抽選に用いる設定値と、前回のゲームの内部抽選に用いた設定値と、が一致しない場合にも、RAM異常と判定し、RAM異常エラーコードをセットしてRAM異常エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、前述のようにRAM異常エラー状態は、他のエラー状態と異なり、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更モードにおいて新たな設定値が設定されるまで解除されることがない。
本実施例のスロットマシン1は、前述のように遊技状態に応じて設定可能な賭数の規定数が定められており、遊技状態に応じて定められた規定数の賭数が設定されたことを条件にゲームを開始させることが可能となる。本実施例では、後に説明するが、遊技状態として、レギュラーボーナス、通常遊技状態があり、このうちレギュラーボーナスに対応する賭数の規定数として1が定められており、通常遊技状態に対応する賭数の規定数として3が定められている。このため、遊技状態がレギュラーボーナスにあるときには、賭数として1が設定されるとゲームを開始させることが可能となり、遊技状態が通常遊技状態にあるときには、賭数として3が設定されるとゲームを開始させることが可能となる。尚、本実施例では、遊技状態に応じた規定数の賭数が設定された時点で、全ての入賞ラインL1〜L5が有効化されるようになっており、遊技状態に応じた規定数が1であれば、賭数として1が設定された時点で全ての入賞ラインL1〜L5が有効化され、遊技状態に応じた規定数が3であれば、賭数として3が設定された時点で全ての入賞ラインL1〜L5が有効化されることとなる。
本実施例のスロットマシン1は、全てのリール2L、2C、2Rが停止した際に、有効化された入賞ライン(本実施例の場合、常に全ての入賞ラインが有効化されるため、以下では、有効化された入賞ラインを単に入賞ラインと呼ぶ)上に役と呼ばれる図柄の組み合わせが揃うと入賞となる。入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役と、遊技状態の移行を伴う特別役と、がある。以下では、小役と再遊技役をまとめて一般役とも呼ぶ。遊技状態に応じて定められた各役の入賞が発生するためには、後述する内部抽選に当選して、当該役の当選フラグがRAM41cに設定されている必要がある。
尚、これら各役の当選フラグのうち、小役及び再遊技役の当選フラグは、当該フラグが設定されたゲームにおいてのみ有効とされ、次のゲームでは無効となるが、特別役の当選フラグは、当該フラグにより許容された役の組み合わせが揃うまで有効とされ、許容された役の組み合わせが揃ったゲームにおいて無効となる。すなわち特別役の当選フラグが一度当選すると、例え、当該フラグにより許容された役の組み合わせを揃えることができなかった場合にも、その当選フラグは無効とされずに、次のゲームへ持ち越されることとなる。
図4(a)は、当選役テーブルを示す図である。当選役テーブルは、メイン制御部41のROM41bに予め格納されており、内部抽選において抽選対象となる役及び役の組み合わせに対応して、抽選が行われる順番に割り当てられた役番号(1〜14)が登録されている。
このスロットマシン1における役としては、特別役としてビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスが、小役としてチェリー、1枚(1)、1枚(2)、ベルが、再遊技役としてリプレイが定められている。また、スロットマシン1における役の組み合わせとしては、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)が定められている。すなわち、役及び役の組み合わせの合計は14となっている。
本実施例のスロットマシン1においては、図4(a)に示すように、遊技状態が、通常遊技状態であるか、レギュラーボーナスであるか、によって抽選の対象となる役及び役の組み合わせが異なる。更に遊技状態が通常遊技状態である場合には、いずれかの特別役の持ち越し中か否か(特別役の当選フラグにいずれかの特別役が当選した旨が既に設定されているか否か)によっても抽選の対象となる役及び役の組み合わせが異なる。本実施例では、遊技状態に応じた状態番号が割り当てられており、内部抽選を行う際に、現在の遊技状態に応じた状態番号を設定し、この状態番号に応じて抽選対象となる役を特定することが可能となる。具体的には、通常遊技状態においていずれの特別役も持ち越されていない場合には、状態番号として「0」が設定され、通常遊技状態においていずれかの特別役が持ち越されている場合には、状態番号として「1」が設定され、レギュラーボーナスである場合には、状態番号として「2」が設定されるようになっている。
図4(a)に示すように、遊技状態が通常遊技状態であり、いずれの特別役も持ち越されていない状態、すなわち状態番号として「0」が設定されている場合には、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)、リプレイ、チェリー、1枚(1)、1枚(2)、ベル、すなわち全ての役及び役の組み合わせが内部抽選の対象となる。また、遊技状態が通常遊技状態であり、いずれかの特別役が持ち越されている状態、すなわち状態番号として「1」が設定されている場合には、リプレイ、チェリー、1枚(1)、1枚(2)、ベル、すなわち役番号10以降の役及び役の組み合わせが内部抽選の対象となる。また、遊技状態がレギュラーボーナス、すなわち状態番号として「2」が設定されている場合には、チェリー、1枚(1)、1枚(2)、ベル、すなわち役番号11以降の役及び役の組み合わせが内部抽選の対象となる。
チェリーは、いずれの遊技状態においても左リールについて入賞ラインのいずれかに「チェリー」の図柄が導出されたときに入賞となり、通常遊技状態においては2枚のメダルが払い出され、レギュラーボーナスにおいては15枚のメダルが払い出される。尚、「チェリー」の図柄が左リールの上段または下段に停止した場合には、入賞ラインL2、L4または入賞ラインL3、L5の2本の入賞ラインにチェリーの組み合わせが揃うこととなり、2本の入賞ライン上でチェリーに入賞したこととなるので、通常遊技状態においては4枚のメダルが払い出されることとなるが、レギュラーボーナスでは、2本の入賞ライン上でチェリーに入賞しても、1ゲームにおいて払い出されるメダル枚数の上限が15枚に設定されているため、15枚のみメダルが払い出されることとなる。1枚(1)は、いずれの遊技状態においても入賞ラインのいずれかに「青7−赤7−スイカ」の組み合わせが揃ったときに入賞となり、通常遊技状態においては1枚のメダルが払い出され、レギュラーボーナスにおいては15枚のメダルが払い出される。1枚(2)は、いずれの遊技状態においても入賞ラインのいずれかに「赤7−青7−スイカ」の組み合わせが揃ったときに入賞となり、通常遊技状態においては1枚のメダルが払い出され、レギュラーボーナスにおいては15枚のメダルが払い出される。ベルは、いずれの遊技状態においても入賞ラインのいずれかに「ベル−ベル−ベル」の組み合わせが揃ったときに入賞となり、通常遊技状態においては8枚のメダルが払い出され、レギュラーボーナスにおいては15枚のメダルが払い出される。
リプレイは、通常遊技状態において入賞ラインのいずれかに「リプレイ−リプレイ−リプレイ」の組み合わせが揃ったときに入賞となる。リプレイ入賞したときには、メダルの払い出しはないが次のゲームを改めて賭数を設定することなく開始できるので、次のゲームで設定不要となった賭数(レギュラーボーナスではリプレイ入賞しないので必ず3)に対応した3枚のメダルが払い出されるのと実質的には同じこととなる。
レギュラーボーナスは、通常遊技状態において入賞ラインのいずれかに「赤7−赤7−BAR」の組み合わせが揃ったときに入賞となる。レギュラーボーナス入賞すると、遊技状態が通常遊技状態からレギュラーボーナスに移行する。レギュラーボーナスは、12ゲームを消化したとき、または8ゲーム入賞(役の種類は、いずれでも可)したとき、のいずれか早いほうで終了する。遊技状態がレギュラーボーナスにある間は、レギュラーボーナス中フラグがRAM41cに設定される。
ビッグボーナスは、通常遊技状態において入賞ラインのいずれかに「赤7−赤7−赤7」の組み合わせ、または「青7−青7−青7」の組み合わせが揃ったときに入賞となる。ビッグボーナス入賞すると、遊技状態がビッグボーナスに移行する。ビッグボーナスに移行すると、ビッグボーナスへの移行と同時にレギュラーボーナスに移行し、レギュラーボーナスが終了した際に、ビッグボーナスが終了していなければ、再度レギュラーボーナスに移行し、ビッグボーナスが終了するまで繰り返しレギュラーボーナスに制御される。すなわちビッグボーナス中は、常にレギュラーボーナスに制御されることとなる。そして、ビッグボーナスは、当該ビッグボーナス中において遊技者に払い出したメダルの総数が466枚に達したときに終了する。この際、レギュラーボーナスの終了条件が成立しているか否かに関わらずレギュラーボーナスも終了する。遊技状態がビッグボーナスにある間は、ビッグボーナス中フラグがRAM41cに設定される。
尚、「赤7−赤7−赤7」によるビッグボーナス及び「青7−青7−青7」によるビッグボーナスを区別する必要がある場合には、それぞれビッグボーナス(1)、ビッグボーナス(2)と呼ぶものとする。また、前述したレギュラーボーナス、ビッグボーナス(1)及びビッグボーナス(2)をまとめて、単に「ボーナス」と呼ぶ場合があるものとする。
以下、本実施例の内部抽選について説明する。内部抽選は、上記した各役への入賞を許容するか否かを、全てのリール2L、2C、2Rの表示結果が導出表示される以前に(実際には、スタートスイッチ7の検出時)決定するものである。内部抽選では、まず、後述するように内部抽選用の乱数(0〜16383の整数)が取得される。そして、遊技状態に応じて定められた各役及び役の組み合わせについて、取得した内部抽選用の乱数と、遊技状態及び設定値に応じて定められた各役及び役の組み合わせの判定値数に応じて行われる。本実施例においては、各役及び役の組み合わせの判定値数から、一般役、特別役がそれぞれ単独で当選する判定値の範囲と、一般役及び特別役が重複して当選する判定値の範囲と、が特定されるようになっており、内部抽選における当選は、排他的なものではなく、1ゲームにおいて一般役と特別役とが同時に当選することがあり得る。ただし、種類の異なる特別役については、重複して当選する判定値の範囲が特定されることがなく、種類の異なる特別役については、排他的に抽選を行うものである。
遊技状態に応じて定められた各役及び役の組み合わせの参照は、図4(a)に示した当選役テーブルに登録された役番号の順番で行われる。
遊技状態が通常遊技状態であり、いずれの特別役も持ち越されていない状態、すなわち状態番号として「0」が設定されている場合には、当選役テーブルを参照し、役番号1〜14の役及び役の組み合わせ、すなわちビッグボーナス(1)[役番号1]、ビッグボーナス(2)[役番号2]、レギュラーボーナス[役番号3]、ビッグボーナス(1)+チェリー[役番号4]、ビッグボーナス(2)+チェリー[役番号5]、ビッグボーナス(1)+1枚(1)[役番号6]、ビッグボーナス(2)+1枚(1)[役番号7]、ビッグボーナス(1)+1枚(2)[役番号8]、ビッグボーナス(2)+1枚(2)[役番号9]、リプレイ[役番号10]、チェリー[役番号11]、1枚(1)[役番号12]、1枚(2)[役番号13]、ベル[役番号14]が内部抽選の対象役として順に読み出される。
また、遊技状態が通常遊技状態であり、いずれかの特別役が持ち越されている状態、すなわち状態番号として「1」が設定されている場合には、当選役テーブルを参照し、役番号10〜14の役及び役の組み合わせ、すなわちリプレイ[役番号10]、チェリー[役番号11]、1枚(1)[役番号12]、1枚(2)[役番号13]、ベル[役番号14]が内部抽選の対象役として順に読み出される。
また、遊技状態がレギュラーボーナス、すなわち状態番号として「2」が設定されている場合には、当選役テーブルを参照し、役番号11〜14の役及び役の組み合わせ、すなわちチェリー[役番号11]、1枚(1)[役番号12]、1枚(2)[役番号13]、ベル[役番号14]が内部抽選の対象役として順に読み出される。
内部抽選では、内部抽選の対象となる役または役の組み合わせ及び現在の遊技状態を示す状態番号について定められた判定値数を、内部抽選用の乱数に順次加算し、加算の結果がオーバーフローしたときに、当該役または役の組み合わせに当選したものと判定される。
そして、いずれかの役または役の組み合わせの当選が判定された場合には、当選が判定された役または役の組み合わせに対応する当選フラグをRAM41cに割り当てられた内部当選フラグ格納ワーク(iwin_flag)に設定する。内部当選フラグ格納ワーク(iwin_flag)は、2バイトの格納領域にて構成されており、そのうちの上位バイトが、特別役の当選フラグが設定される特別役格納ワークとして割り当てられ、下位バイトが、一般役の当選フラグが設定される一般役格納ワークとして割り当てられている。詳しくは、役番号1〜3のいずれかの役(特別役)が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、一般役格納ワークに設定されている当選フラグをクリアする。また、役番号4〜9のいずれかの役(特別役+一般役)が当選した場合には、当該特別役が当選した旨を示す特別役の当選フラグを特別役格納ワークに設定し、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。また、役番号10〜14のいずれかの役(一般役)が当選した場合には、当該一般役が当選した旨を示す一般役の当選フラグを一般役格納ワークに設定する。尚、いずれの役及び役の組み合わせにも当選しなかった場合には、一般役格納ワークのみクリアする。
各役及び役の組み合わせの判定値数は、メイン制御部41のROM41bに予め格納された役別テーブルに登録されている判定値数の格納アドレスに従って読み出されるものとなる。
図4(b)は、役別テーブルの例を示す図である。判定値数は、その値が256以上のものとなるものもあり、1バイト分では記憶できないので、判定値数毎に2バイト分の記憶領域を用いて登録されるものとなる。また、判定値数は、前述した遊技状態を特定可能な状態番号に対応して登録されている。同一の役または同一の役の組み合わせであっても、遊技状態に応じて当選確率が異なっている場合があるからである。また、それぞれの判定値数は、設定値に関わらずに共通になっているものと、設定値に応じて異なっているものとがある。判定値数が設定値に関わらずに共通である場合には、共通フラグが設定される(値が「1」とされる)。
役別テーブルには、図4(b)に示すように、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)、リプレイ、チェリー、1枚(1)、1枚(2)、ベルの判定値数の格納アドレスが登録されている。
ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)は、通常遊技状態においていずれの特別役も持ち越されていない場合に内部抽選の対象となる役であり、状態番号0に対応する判定値数の格納アドレスが登録されている。ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスについては、共通フラグが0となっており、設定値に応じて個別に判定値数の格納アドレスが登録されている。ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)については、共通フラグが1となっており、設定値に関わらず共通の判定値数の格納アドレスが登録されている。
リプレイは、通常遊技状態において特別役が持ち越されているか否かに関わらず内部抽選の対象となる役であり、状態番号0、1に対応する判定値数の格納アドレスが登録されている。この役の共通フラグは1であり、設定値に関わらず共通の判定値数の格納アドレスが登録されている。
チェリー、1枚(1)、2枚(2)は、いずれの遊技状態においても内部抽選の対象となる役であり、状態番号0に対応する判定値数の格納アドレスと、状態番号1に対応する判定値数の格納アドレスと、状態番号2に対応する判定値数の格納アドレスと、がそれぞれ登録されている。この役の共通フラグは1であり、設定値に関わらず共通の判定値数の格納アドレスが登録されている。
ベルは、いずれの遊技状態においても内部抽選の対象となる役であり、状態番号0に対応する判定値数の格納アドレスと、状態番号1に対応する判定値数の格納アドレスと、状態番号2に対応する判定値数の格納アドレスと、がそれぞれ登録されている。この役の共通フラグは0であり、設定値に応じて個別に判定値数の格納アドレスが登録されている。
また、役別テーブルには、各役に入賞したときに払い出されるメダルの払出枚数も登録されている。もっとも、入賞したときにメダルの払い出し対象となる役は、小役であるチェリー、1枚(1)、1枚(2)、ベルだけである。これら小役は、いずれの遊技状態においても入賞が発生可能であるが、状態番号が2であるとき、すなわち遊技状態がレギュラーボーナスにあるときには、状態番号が0、1であるとき、すなわち遊技状態が通常遊技状態にあるときよりも多いメダルが払い出されるものとなる。また、左リールの上段または下段に「チェリー」が停止した場合には、前述のように2本の入賞ラインにチェリーの組み合わせが揃ったこととなるため、それぞれの払出枚数の合計枚数が払い出されることとなる。本実施例では、通常遊技状態においてチェリーの払出枚数が2枚であるため、4枚のメダルが払い出される。レギュラーボーナスでは、チェリーの払出枚数が15枚であるが、合計枚数が上限である15枚を超えるため、この場合には15枚のメダルが払い出される。
ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの入賞は、遊技状態の移行を伴うものであり、メダルの払い出し対象とはならない。リプレイでは、メダルの払い出しを伴わないが、次のゲーム(必ず通常遊技状態)で賭数の設定に用いるメダルの投入が不要となるので実質的には3枚の払い出しと変わらない。
図5は、役別テーブルに登録されたアドレスに基づいて取得される判定値数の記憶領域を示す図である。この判定値数の記憶領域は、開発用の機種ではメイン制御部41のRAM41cに、量産機種ではメイン制御部41のROM41bに割り当てられたアドレス領域に設けられている。
例えばアドレスADDは、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(1)であって設定値が1のときに参照されるアドレスであり、このときには、ここに格納された値である15が判定値数として取得される。アドレスADD+2、ADD+4、ADD+6、ADD+8、ADD+10は、状態番号0の遊技状態において、それぞれ内部抽選の対象役がビッグボーナス(1)であって設定値が2〜6のときに参照されるアドレスである。アドレスADD+12、ADD+14、ADD+16、ADD+18、ADD+20、ADD+22は、状態番号0の遊技状態において、それぞれ内部抽選の対象役がビッグボーナス(2)であって設定値が1〜6のときに参照されるアドレスである。アドレスADD+24、ADD+26、ADD+28、ADD+30、ADD+32、ADD+34は、状態番号0の遊技状態において、それぞれ内部抽選の対象役がレギュラーボーナスであって設定値が1〜6のときに参照されるアドレスである。
これら状態番号0の遊技状態、すなわち通常遊技状態においていずれの特別役も持ち越されていない状態におけるビッグボーナス(1)、ビッグボーナス(2)については、設定値に応じて個別に判定値数が記憶され、しかも異なる判定値数が記憶されているので、設定値に応じてこれらの役及び役の組み合わせの当選確率が異なることとなる。
一方、これら状態番号0の遊技状態、すなわち通常遊技状態においていずれの特別役も持ち越されていない状態におけるレギュラーボーナスについては、設定値に応じて個別に判定値数が記憶されているが、同一の判定値数が記憶されているので、いずれの設定値においてもレギュラーボーナスの当選確率は同じとなっている。
また、アドレスADD+36は、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(1)+チェリーであるときに設定値に関わらずに参照されるアドレスであり、アドレスADD+38は、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(2)+チェリーであるときに設定値に関わらずに参照されるアドレスであり、アドレスADD+40は、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(1)+1枚(1)であるときに設定値に関わらずに参照されるアドレスであり、アドレスADD+42は、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(2)+1枚(1)であるときに設定値に関わらずに参照されるアドレスであり、アドレスADD+44は、状態番号0の遊技状態、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態において、内部抽選の対象役がビッグボーナス(1)+1枚(2)であるときに設定値に関わらずに参照されるアドレスであり、アドレスADD+46は、状態番号0、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態の遊技状態において、内部抽選の対象役がビッグボーナス(2)+1枚(2)であるときに設定値に関わらずに参照されるアドレスである。
アドレスADD+48は、状態番号0及び状態番号1のとき、すなわち通常遊技状態において、内部抽選の対象役がリプレイであるときに設定値に関わらずに参照されるアドレスである。
アドレスADD+50は、状態番号0のとき、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態の遊技状態において、内部抽選の対象役がチェリーであるときに設定値に関わらずに参照されるアドレスである。アドレスADD+52は、状態番号1のとき、すなわち通常遊技状態でいずれかの特別役が持ち越されている状態の遊技状態において、内部抽選の対象役がチェリーであるときに設定値に関わらずに参照されるアドレスである。アドレスADD+54は、状態番号2のとき、すなわちレギュラーボーナスにおいて、内部抽選の対象役がチェリーであるときに設定値に関わらずに参照されるアドレスである。
アドレスADD+56は、状態番号0のとき、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態の遊技状態において、内部抽選の対象役が1枚(1)であるときに設定値に関わらずに参照されるアドレスである。アドレスADD+58は、状態番号1のとき、すなわち通常遊技状態でいずれかの特別役が持ち越されている状態の遊技状態において、内部抽選の対象役が1枚(1)であるときに設定値に関わらずに参照されるアドレスである。アドレスADD+60は、状態番号2のとき、すなわちレギュラーボーナスにおいて、内部抽選の対象役が1枚(1)であるときに設定値に関わらずに参照されるアドレスである。
アドレスADD+62は、状態番号0のとき、すなわち通常遊技状態でいずれの特別役も持ち越されていない状態の遊技状態において、内部抽選の対象役が1枚(2)であるときに設定値に関わらずに参照されるアドレスである。アドレスADD+64は、状態番号1のとき、すなわち通常遊技状態でいずれかの特別役が持ち越されている状態の遊技状態において、内部抽選の対象役が1枚(2)であるときに設定値に関わらずに参照されるアドレスである。アドレスADD+66は、状態番号2のとき、すなわちレギュラーボーナスにおいて、内部抽選の対象役が1枚(2)であるときに設定値に関わらずに参照されるアドレスである。
アドレスADD+68、ADD+70、ADD+72、ADD+74、ADD+76、ADD+78は、状態番号0及び状態番号1の遊技状態、すなわち通常遊技状態において、それぞれ内部抽選の対象役がベルであって設定値が1〜6のときに参照されるアドレスである。アドレスADD+80、ADD+82、ADD+84、ADD+86、ADD+88、ADD+90は、状態番号2の遊技状態、すなわちレギュラーボーナスにおいて、それぞれ内部抽選の対象役がベルであって設定値が1〜6のときに参照されるアドレスである。この状態番号2の遊技状態におけるベルについては、設定値に応じて個別に判定値数が記憶されているが、設定値1と2の判定値数、3と4の判定値数、5と6の判定値数にはそれぞれ共通の判定値数が記憶されているので、設定値1と2の当選確率、3と4の当選確率、5と6の当選確率はそれぞれ共通となる。
図6(a)〜(c)は、内部抽選用の乱数の値と各役及び役の組み合わせの判定値数と、当選との関係の例を示す図である。図6(a)では通常遊技状態においていずれの特別役も持ち越されていないときの、図6(b)では通常遊技状態においていずれかの特別役が持ち越されているときの、図6(c)ではレギュラーボーナスにあるときの例をそれぞれ示している。図6(a)〜(c)のいずれも、設定値が6の場合の例を示している。
例えば、図6(a)に示すように、通常遊技状態においていずれの特別役も持ち越されていない場合には、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)、リプレイ、チェリー、1枚(1)、1枚(2)、ベルが内部抽選の対象となり、設定値6において、各役のそれぞれの判定値数は、20、20、31、10、10、5、5、5、5、2245、76、153、153、2082となる。最初に内部抽選の対象となるビッグボーナス(1)は、判定値数の20を加算することで加算結果がオーバーフローすることとなる16364〜16383が内部抽選用の乱数として取得されたときに当選となる。
次に内部抽選の対象役となるビッグボーナス(2)は、ビッグボーナス(1)の判定値数20とビッグボーナス(2)の判定値数20とを合計した40を加算することで加算結果がオーバーフローすることとなる16344〜16363が内部抽選用の乱数として取得されたときに当選となる。同様に、レギュラーボーナスは、16313〜16343が内部抽選用の乱数として取得されたときに、ビッグボーナス(1)+チェリーは、16303〜16312が内部抽選用の乱数として取得されたときに、ビッグボーナス(2)+チェリーは、16293〜16302が内部抽選用の乱数として取得されたときに、ビッグボーナス(1)+1枚(1)は、16288〜16292が内部抽選用の乱数として取得されたときに、ビッグボーナス(2)+1枚(1)は、16283〜16287が内部抽選用の乱数として取得されたときに、ビッグボーナス(1)+1枚(2)は、16278〜16282が内部抽選用の乱数として取得されたときに、ビッグボーナス(2)+1枚(2)は、16273〜16277が内部抽選用の乱数として取得されたときに、リプレイは、14028〜16272が内部抽選用の乱数として取得されたときに、チェリーは、13952〜14027が内部抽選用の乱数として取得されたときに、1枚(1)は、13799〜13951が内部抽選用の乱数として取得されたときに、1枚(2)は、13646〜13798が内部抽選用の乱数として取得されたときに、ベルは、11564〜13645が内部抽選用の乱数として取得されたときに、それぞれ当選と判定される。尚、0〜11563が内部抽選用の乱数として取得されたときには、全ての役にハズレとなる。
これらの判定値数に基づいて算出される各役及び役の組み合わせのおおよその当選確率は、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス、ビッグボーナス(1)+チェリー、ビッグボーナス(2)+チェリー、ビッグボーナス(1)+1枚(1)、ビッグボーナス(2)+1枚(1)、ビッグボーナス(1)+1枚(2)、ビッグボーナス(2)+1枚(2)、リプレイ、チェリー、1枚(1)、1枚(2)、ベルのそれぞれについて、1/819.2、1/819.2、1/528.5、1/1638、1/1638、1/3277、1/3277、1/3277、1/3277、1/7.3、1/215.6、1/107.1、1/107.1、1/7.87となる。
また、図6(b)に示すように、通常遊技状態においていずれかの特別役が持ち越されている場合には、リプレイ、チェリー、1枚(1)、1枚(2)、ベルのみが内部抽選の対象となり、設定値6においては、各役のそれぞれの判定値数が2245、96、163、163、2082となるので、14139〜16383、14043〜14138、13880〜14042、13717〜13879、11635〜13716が内部抽選用の乱数として取得されたときに、それぞれ当選と判定される。また、それぞれの役のおおよその当選確率は、1/7.3、1/170.7、1/100.5、1/100.5、1/7.87となる。尚、0〜11634が内部抽選用の乱数として取得されたときには、全ての役にハズレとなる。
また、図6(c)に示すように、レギュラーボーナスでは、チェリー、1枚(1)、1枚(2)、ベルのみが内部抽選の対象となり、設定値6においては、各役のそれぞれの判定値数が96、163、163、15919となるので、16288〜16383、16125〜16287、15962〜16124、43〜15961が内部抽選用の乱数として取得されたときに、それぞれ当選と判定される。また、それぞれの役のおおよその当選確率は、1/170.7、1/100.5、1/100.5、1/1.03となる。尚、0〜55823が内部抽選用の乱数として取得されたときには、全ての役にハズレとなる。
次に、リール2L、2C、2Rの停止制御について説明する。
本実施例では、リールの停止制御の方法として、予めROM41bに登録されている停止制御テーブルの滑りコマ数データによる停止制御(以下テーブル方式とも呼ぶ)、停止操作のタイミング毎に引込可能位置を検索し、その検索結果に基づく停止制御(以下コントロール方式とも呼ぶ)、テーブル方式とコントロール方式の双方による停止制御(以下テーブル+コントロール方式とも呼ぶ)の3つの方法を採用しており、内部抽選の結果に応じていずれかの方法によって停止制御を行う。
これら3つの方法のうちどの方法で停止制御を行うかは予め定められている。詳しくは、図7に示すように、内部抽選の結果がハズレ、チェリー、1枚(1)、1枚(2)、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの場合には、テーブル方式によって停止制御を行う。また、内部抽選の結果がベル、リプレイ、ビッグボーナス(1)+リプレイ、ビッグボーナス(2)+リプレイ、レギュラーボーナス+リプレイの場合には、コントロール方式によって停止制御を行う。また、内部抽選の結果がボーナス+小役の場合には、テーブル+コントロール方式によって停止制御を行う。
テーブル方式及びテーブル+コントロール方式によって停止制御を行う際に用いる停止制御テーブルは、ROM41bに予め登録されており、ROM41bに格納されているテーブルインデックスを参照して選択される。
テーブルインデックスには、図8に示すように、当選役別に、テーブルインデックスを参照する際の基準アドレス(table_index)から、停止制御テーブルが格納された領域の先頭アドレスを示すインデックスデータが格納されているアドレスまでの差分が登録されている。これにより当選役に応じた差分を取得し、基準アドレス(table_index)に対してその差分を加算することで該当するインデックスデータを取得することが可能となる。
本実施例では、内部抽選の結果の全てについて個別の停止制御テーブルを用いるものではなく、ベル、リプレイ、ボーナス+リプレイの場合には、コントロール方式のみで停止制御を行い、ボーナス+一般役の場合には、ボーナスのみの当選に対応する停止制御テーブルを用いるため、テーブルインデックスには、ハズレ、チェリー、1枚(1)、1枚(2)、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスのそれぞれについて、停止制御テーブルが格納された領域の先頭アドレスを示すインデックスデータが格納されている。
停止制御テーブルは、停止操作位置に応じた滑りコマ数を示す滑りコマ数データと、リールの停止状況に応じて参照すべき滑りコマ数データのアドレスと、からなる。
リールの停止状況に応じて参照される滑りコマ数データは、第1停止か、第2停止において左リールのみ停止しているか、中リールのみ停止しているか、右リールのみ停止しているか、第3停止において左、中リールが停止しているか、左、右リールが停止しているか、中、右リールが停止しているか、によって異なる場合があり、更に、いずれかのリールが停止している状況においては、停止済みのリールの停止位置によっても異なる場合があるので、それぞれの状況について、参照すべき滑りコマ数データのアドレスが回転中のリール別に登録されており、停止制御テーブルの先頭アドレスに基づいて、それぞれの状況に応じて参照すべき滑りコマ数データのアドレスが特定可能とされ、この特定されたアドレスから、それぞれの状況に応じて必要な滑りコマ数データを特定できるようになっている。
尚、内部抽選の結果、リールの停止状況や停止済みのリールの停止位置が異なる場合でも、同一の滑りコマ数データが適用される場合においては、滑りコマ数データのアドレスとして同一のアドレスが登録されているものもあり、このような場合には、同一の滑りコマ数データが参照されることとなる。
滑りコマ数データは、停止操作が行われたタイミング別の滑りコマ数を特定可能なデータである。本実施例では、リールモータ32L、32C、32Rに、168ステップ(0〜167)の周期で1周するステッピングモータを用いている。すなわちリールモータ32L、32C、32Rを168ステップ駆動させることでリール2L、2C、2Rが1周することとなる。そして、図13に示すように、リール1周に対して8ステップ(1図柄が移動するステップ数)毎に分割した21の領域(コマ)が定められており、これらの領域には、リール基準位置から1〜21の領域番号が割り当てられている。一方、1リールに配列された図柄数も21であり、各リールの図柄に対して、リール基準位置から1〜21の図柄番号が割り当てられているので、1番図柄から21番図柄に対して、それぞれ1〜21の領域番号が順に割り当てられていることとなる。そして、滑りコマ数データには、領域番号別の滑りコマ数が所定のルールで圧縮して格納されており、滑りコマ数データを展開することによって領域番号別の滑りコマ数を取得できるようになっている。
ここで停止制御の方法別の停止制御の内容について説明する。
まず、CPU41aが、テーブル方式によって停止制御を行う場合、すなわち内部抽選の結果が、ハズレ、1枚(1)、1枚(2)、チェリー、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの場合には、図9に示すように、リールの回転が開始したとき、またはリールが停止し、かつ未だ回転中のリールが残っているときに、リールの停止操作が有効になる前の段階においてテーブルインデックスを参照し、未停止のリールについて内部抽選の結果、停止済みのリールがある場合には、そのリールの停止位置に対応する停止制御テーブルの滑りコマ数データを選択する。
そして、選択した滑りコマ数データを展開してリール別にRAM41cに割り当てられた仮想滑りコマテーブル(図13参照)に格納する。
仮想滑りコマテーブルは、図13に示すように、各リール毎に、領域番号に対応して、各領域番号に対応する領域が停止基準位置(本実施例では、透視窓3の下段図柄の領域)に位置するタイミング(リール基準位置からのステップ数が各領域番号のステップ数の範囲に含まれるタイミング)でストップスイッチ8L、8C、8Rの操作が検出された場合の滑りコマ数がそれぞれ格納されるテーブルであり、滑りコマ数データから展開した滑りコマ数が、該当するリールの該当する領域番号に対応して格納されることとなる。
図14は、全てのリールが回転中の状態において、通常遊技状態においていずれの役も当選していない場合(ハズレ)、いずれのボーナスも持ち越されていない状態で1枚(1)が当選している場合(1枚(1))、いずれのボーナスも持ち越されていない状態で1枚(2)が当選している場合(1枚(2))、いずれのボーナスも持ち越されていない状態でチェリーが当選している場合(チェリー)、ビッグボーナス(1)またはレギュラーボーナスが当選しており、他の役が当選していない場合(BB(1)RB)、ビッグボーナス(2)が当選しており、他の役に当選していない場合(BB(2))に選択される左リールの滑りコマ数データを示す図であり、全てのリールが回転中の状態においては、これら滑りコマ数データのうち当選役に対応する滑りコマ数データが展開されて、それぞれの滑りコマ数が左リールの滑りコマ数として仮想滑りコマテーブルに格納されることとなる。
次いで、仮想滑りコマテーブルに滑りコマ数データから展開した滑りコマ数を格納した後、停止操作を有効とし、この状態でストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの仮想滑りコマテーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして取得した滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。
詳しくは、停止操作を検出した時点のリール基準位置からのステップ数から、取得した滑りコマ数引き込んで停止させるまでのステップ数を算出し、算出したステップ数分リールを回転させて停止させる制御を行う。これにより、停止操作が検出された停止操作位置の領域番号に対応する領域(図の停止操作ポイント)から滑りコマ数分先の停止位置となる領域番号に対応する領域(図の停止ポイント)が停止基準位置(本実施例では、透視窓3の下段図柄の領域)に停止することとなる。
次に、CPU41aが、コントロール方式によって停止制御を行う場合には、図10に示すように、リールが停止し、かつ未だ回転中のリールが残っているときに、リールの停止操作が有効になる前の段階において未停止のリールについて内部抽選の結果、停止済みのリールの停止位置に基づいて、停止操作位置毎に内部抽選の結果に対応する停止位置(当選役が入賞ライン上に揃う停止位置)を検索する。
詳しくは、停止操作位置毎に、0〜4の滑りコマ数別の停止位置を特定し、これらの停止位置のそれぞれについて不正入賞(内部抽選で当選していない役)の判定及び停止禁止位置(停止した場合に、未停止のリールにおいて不正入賞や重複入賞を回避できなくなる停止位置)の判定を行い、不正入賞や停止禁止位置である場合には、停止禁止位置フラグを設定する。
そして、0〜4の滑りコマ数別の停止位置が当選役が入賞ライン上に揃う停止位置か否かの判定を役に応じた順番(ベルの場合には、滑りコマ数が4、3、2、1、0の順番、リプレイ、ボーナス+リプレイの場合には、滑りコマ数が0、1、2、3、4の順番)で行い、当選役が入賞ライン上に揃う停止位置と判定された場合には、更に、その停止位置に対して停止禁止位置フラグが設定されているか否かの判定を行い、停止禁止位置フラグが設定されていなければ、その停止位置を取得し、取得した停止位置となる滑りコマ数を仮想滑りコマテーブルにおける該当するリールの該当する停止操作位置の領域番号に格納する。
また、当選役が入賞ライン上に揃う停止位置と判定された場合でも、その停止位置に対して停止禁止位置フラグが設定されていれば、次の停止位置についての判定を行う。また、全ての滑りコマ数の停止位置の判定を行っても当選役が入賞ライン上に揃う停止位置がない場合には、最後に判定した停止位置となる滑りコマ数を仮想滑りコマテーブルの該当するリール、該当する停止操作位置の領域番号に格納する。すなわちベルの場合には、滑りコマ数4、リプレイの場合には0がそれぞれ格納されることとなる。また、最後に判定した停止位置に対して停止禁止位置フラグが設定されている場合には、停止禁止位置フラグが設定されていない停止位置まで遡って取得し、取得した停止位置となる滑りコマ数を仮想滑りコマテーブルにおける該当するリールの該当する停止操作位置の領域番号に格納する。尚、本実施例では、後述するように「ベル」、「リプレイ」の図柄が全てのリールにおいて4コマ以内の間隔で配置されており、0〜5コマの範囲でリールを引き込んで停止させることにより必ずベルまたはリプレイを入賞ライン上に揃えることが可能であるため、必ず当選役が入賞ライン上に揃う停止位置となる滑りコマ数が格納されることとなる。
仮想滑りコマテーブルにおける回転中のリールの全ての領域番号に対して滑りコマ数が格納された後、停止操作を有効とし、この状態でストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの仮想滑りコマテーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして取得した滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。
次に、CPU41aが、テーブル+コントロール方式によって停止制御を行う場合、すなわち内部抽選の結果がボーナス+小役の場合には、図11に示すように、リールの回転が開始したとき、またはリールが停止し、かつ未だ回転中のリールが残っているときに、リールの停止操作が有効になる前の段階においてテーブルインデックスを参照し、未停止のリールについて内部抽選の結果、停止済みのリールがある場合には、そのリールの停止位置に対応する停止制御テーブルの滑りコマ数データを選択する。
そして、選択した滑りコマ数データを展開して停止操作位置毎の滑りコマ数を取得し、取得した滑りコマ数を仮想滑りコマテーブルにおける該当するリールの該当する領域番号に格納する。
次いで、内部抽選の結果、停止済みのリールの停止位置に基づいて、停止操作位置毎に停止可能位置を検索する。
詳しくは、停止操作位置毎に、0〜4の滑りコマ数別の停止位置を特定し、これらの停止位置のそれぞれについて不正入賞(内部抽選で当選していない役)の判定及び停止禁止位置(停止した場合に、未停止のリールにおいて不正入賞や重複入賞を回避できなくなる停止位置)の判定を行い、不正入賞や停止禁止位置である場合には、停止禁止位置フラグを設定する。
そして、0〜4の滑りコマ数別に検索した停止位置の優先度と、仮想滑りコマテーブルに格納されている滑りコマ数データから展開された滑りコマ数による停止位置の優先度と、を比較する。この際、仮想滑りコマテーブルに格納されている滑りコマ数に応じて図12(a)に示す順番で比較する。例えば、仮想滑りコマテーブルに格納されている滑りコマ数が0であれば、滑りコマ数0の停止位置、滑りコマ数3の停止位置、滑りコマ数1の停止位置、滑りコマ数2の停止位置、滑りコマ数4の停止位置の順番で比較する。
そして、比較の結果、仮想滑りコマテーブルに格納されている滑りコマ数による停止位置の優先度よりも滑りコマ数別に検索した停止位置の優先度の方が高いか否かを判定する。停止位置の優先度は、図12(b)に示すように、当選役がいずれの入賞ライン上にも揃わない停止位置よりも当選役がいずれかの入賞ライン上に揃う停止位置の方が優先度が高く、当選役がボーナス+小役である場合には、小役がいずれかの入賞ライン上に揃う停止位置よりもボーナスがいずれかの入賞ライン上に揃う停止位置の方が優先度が高いものとして判定する。また、第1停止及び第2停止においては、当選役がボーナス+小役である場合に、当選したボーナスと小役の双方が入賞ライン上に揃う停止位置があれば、その停止位置を単独でボーナスや小役が入賞ライン上に揃う停止位置よりも優先度が高いものとして判定する。尚、停止位置の優先度を判定する際には、図12(b)に示すように停止位置の種類同士の優先度を設定した優先度テーブルを設け、優先度テーブルを参照してどちらの停止位置の優先度が高いか否かを判定するようにしても良いし、予め定められた優先度(図12(b)に示す優先度)に従って、優先度の高い停止位置が優先度の低い停止位置よりも優先度が高いと判定されるようにしたプログラム(例えば、双方の停止位置が当選役が揃う停止位置か否かを判定し、一方は当選役が揃わない停止位置であり、他方は当選役が揃う停止位置であれば、当選役が揃う停止位置の方が優先度が高いと判定するようにし、ボーナス+小役である場合には、双方の停止位置がボーナスが揃う停止位置か否か、及び小役が揃う停止位置か否か、をそれぞれ判定し、一方はボーナスか小役が揃う停止位置が、他方はボーナスも小役も揃わない停止位置であれば、ボーナスか小役が揃う停止位置の方が優先度が高いと判定し、一方はボーナスが揃う停止位置であり、他方は小役が揃うがボーナスが揃わない停止位置であれば、ボーナスが揃う停止位置の方が優先度が高いと判定するようにしたプログラムなど)とすることで、どちらの停止位置の優先度が高いか否かを判定するようにしても良い。
そして、比較の結果、仮想滑りコマテーブルに格納されている滑りコマ数による停止位置の優先度よりも滑りコマ数別に検索した停止位置の優先度の方が高いと判定された場合には、更に滑りコマ数別に検索した停止位置に対して停止禁止位置フラグが設定されているか否かを判定し、停止禁止位置フラグが設定されていなければ、仮想滑りコマテーブルにおける該当するリールの該当する停止操作位置の領域番号に格納されている滑りコマ数を、滑りコマ数別に検索した停止位置となる滑りコマ数に更新する。
また、滑りコマ数別に検索した停止位置の優先度の方が高いと判定された場合でも、その停止位置に対して停止禁止位置フラグが設定されている場合には、次の停止位置についての優先度の比較を行う。
また、全ての滑りコマ数の停止位置と比較しても、仮想滑りコマテーブルに格納されている滑りコマ数による停止位置の優先度よりも滑りコマ数別に検索した停止位置の優先度の方が高いと判定されなかった場合には、仮想滑りコマテーブルに格納されている滑りコマ数を更新せず、滑りコマ数データから展開した滑りコマ数を維持する。
例えば、ビッグボーナス(1)+ベルが当選しており、全てのリールが未だ回転中の状態においては、図15に示すように、左リールの領域番号1〜16、20、21については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置が、滑りコマ数別に特定した停止位置には存在しないことから、滑りコマ数データから展開されて仮想滑りコマテーブルに格納されている滑りコマ数が維持される。また、領域番号17〜19については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置が存在するので、そのうち図12(a)に示す順番で、最も早い段階で優先度が高いと判定され、かつ停止禁止位置でもない停止位置となる滑りコマ数(領域番号17、18については滑りコマ数3、領域番号19については滑りコマ数0)に仮想滑りコマテーブルの滑りコマ数を更新する。
仮想滑りコマテーブルにおける回転中のリールの全ての領域番号に対して滑りコマ数の優先度の比較が終了した後、停止操作を有効とし、この状態でストップスイッチ8L、8C、8Rのうち、回転中のリールに対応するいずれかの操作が有効に検出されたときに、停止操作を検出した時点のリール基準位置からのステップ数に基づいて停止操作位置の領域番号を特定し、停止操作が検出されたリールの仮想滑りコマテーブルを参照し、特定した停止操作位置の領域番号に対応する滑りコマ数を取得する。そして取得した滑りコマ数に基づいて、操作されたストップスイッチ8L、8C、8Rに対応するリール2L、2C、2Rの回転を停止させる制御を行う。
また、本実施例では、滑りコマ数が必ず0〜4の範囲となるため、停止操作を検出してから最大4コマ図柄を引き込んでリールを停止させることが可能である。すなわち停止操作を検出した停止操作位置を含め、最大5コマの範囲から図柄の停止位置を指定できるようになっている。また、1図柄分リールを移動させるのに1コマの移動が必要であるので、停止操作を検出してから最大4図柄を引き込んでリールを停止させることが可能であり、停止操作を検出した停止操作位置を含め、最大5図柄の範囲から図柄の停止位置を指定できることとなる。
また、テーブルインデックスにおいて、1枚(1)、1枚(2)、チェリー、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスに当選している場合に対応するアドレスには、当選役を4コマの範囲で最大限に引き込み、当選していない役が揃わないように引き込む滑りコマ数が定められた停止制御テーブルを特定するインデックスデータが格納され、ハズレの場合に対応するアドレスには、いずれの役も揃わないように引き込む滑りコマ数が定められた停止制御テーブルを特定するインデックスデータが格納されているとともに、コントロール方式で停止制御を行う場合にも、当選役を4コマの範囲で最大限に引き込む滑りコマ数が仮想滑りコマテーブルに格納される。更にテーブル+コントロール方式においても、当選役を4コマの範囲で最大限に引き込む滑りコマ数が優先して仮想滑りコマテーブルに格納される。
このため、いずれかの役に当選している場合には、停止制御の方法に関わらず、当選役を4コマの範囲で最大限引き込み、当選していない役が揃わないように引き込む滑りコマ数が仮想滑りコマテーブルに格納され、リールの停止制御が行われる一方、いずれの役にも当選していない場合には、いずれの役も揃わない滑りコマ数が仮想滑りコマテーブルに格納され、リールの停止制御が行われる。これにより、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選している役の図柄を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役の図柄は、最大4コマの引込範囲でハズシて停止させる制御が行われることとなる。
また、内部抽選の結果がボーナス+小役である場合には、当選したボーナスに対応する停止制御テーブルの滑りコマ数データから展開された滑りコマ数が仮想滑りコマテーブルに格納されるとともに、当該ボーナスの引込範囲外となる停止操作位置については、入賞ライン上に最大4コマの引込範囲で当選した小役を揃えて停止させる停止位置となる滑りコマ数に更新されるので、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲で当選しているボーナスの図柄を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、入賞ライン上に最大4コマの引込範囲で当選しているボーナスを引き込めない場合には、入賞ライン上に最大4コマの引込範囲で当選している小役を揃えて停止させることができれば、これを揃えて停止させる制御が行われ、当選していない役の図柄は、4コマの引込範囲でハズシて停止させる制御が行われることとなる。すなわちこのような場合には、小役よりもボーナスを入賞ライン上に揃える制御が優先され、ボーナスを引き込めない場合にのみ、小役を入賞させることが可能となる。
また、内部抽選の結果がボーナス+リプレイである場合には、入賞ライン上に最大4コマの引込範囲でリプレイを揃えて停止させる停止位置となる滑りコマ数が仮想滑りコマテーブルに格納されるので、停止操作が行われた際に、入賞ライン上に最大4コマの引込範囲でリプレイを揃えて停止させる制御が行われる。尚、後述するように「リプレイ」は、リール2L、2C、2Rのいずれについても5図柄以内、すなわち4コマ以内の間隔で配置されており、4コマの引込範囲で必ず任意の位置に停止させることができるので、内部抽選の結果がボーナス+リプレイの場合には、遊技者によるストップスイッチ8L、8C、8Rの操作タイミングに関わらずに、必ずリプレイが揃って入賞することとなる。すなわちこのような場合には、ボーナスよりもリプレイを入賞ライン上に揃える制御が優先され、必ずリプレイが入賞することとなる。
ここで、図2に示すように、「ベル」、「リプレイ」については、リール2L、2C、2Rのいずれについても5図柄以内、すなわち4コマ以内の間隔で配置されており、4コマの引込範囲で必ず任意の位置に停止させることができる。つまり、ベル、リプレイが当選しているときには、遊技者によるストップスイッチ8L、8C、8Rの操作タイミングに関わらずに、必ず当該役を入賞させることができる。
これに対して「赤7」、「青7」、「BAR」、「チェリー」は、必ずしも5図柄以内に配置されていないため、いずれかのボーナスが当選している場合や、1枚(1)、1枚(2)、チェリーが当選している場合には、該当する図柄が引込範囲内になければ、これら当選した役を入賞ライン上に揃えることができない。すなわち停止操作位置によっては入賞させることができない場合もあり得る。
また、本実施例では、一の遊技状態における一の内部抽選結果、及びリールの停止状況(及び停止済みのリールの停止位置)に対応する停止制御の方法、テーブル方式及びテーブル+コントロール方式で停止制御を行う際に参照する滑りコマ数データ、コントロール方式で停止制御を行う際の停止位置の検索順、テーブル+コントロール方式で停止制御を行う際の停止位置の優先度の判定順、が一意的に定められており、仮想滑りコマテーブルに格納される滑りコマ数も、一の遊技状態における一の内部抽選結果、及びリールの停止状況(及び停止済みのリールの停止位置)に対して一意となる。このため、遊技状態、内部抽選結果、リールの停止状況(及び停止済みのリールの停止位置)の全てが同一条件となった際に、同一の制御パターンに基づいてリールの停止制御が行われることとなる。
次に、チャンス目及びリーチ目について説明する。本実施例におけるチャンス目とは、通常遊技状態においていずれかのボーナスが当選しているとき、または1枚(1)、1枚(2)が当選しているときに導出されうる表示態様であり、本実施例では、左リールの表示結果として、2〜4番図柄の「リプレイ・スイカ・ベル」または8〜10番図柄の「ベル・赤7・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」が停止し、いずれの役も入賞ライン上に揃っていない表示態様、中リールの表示結果として、11〜13番図柄の「チェリー・リプレイ・チェリー」、21、1、2番図柄の「チェリー・ベル・チェリー」が停止し、いずれの役も入賞ライン上に揃っていない表示態様、右リールの表示結果として、10〜12番図柄の「リプレイ・チェリー・青7」が停止し、いずれの役も入賞ライン上に揃っていない表示態様をチャンス目として適用している。
また、リーチ目とは、通常遊技状態においていずれかのボーナス(ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナス)が当選しているときのみ導出されうる表示態様であり、本実施例では、左リールの表示結果として、16〜18番図柄の「青7・スイカ・青7」が停止した表示態様を全てのボーナスのリーチ目、また、20、21、1番図柄または12〜14番図柄の「リプレイ・スイカ・ベル」が停止し、いずれの役も入賞ライン上に揃っていない表示態様をビッグボーナス(1)またはレギュラーボーナスのリーチ目として適用している。
また、本実施例では、通常遊技状態においていずれかのボーナスに当選している場合、または1枚(1)、1枚(2)が当選している場合に、各リール2L、2C、2Rの停止操作が行われた順番に関わらず、チャンス目を導出させることが可能に制御され、通常遊技状態においていずれかのボーナスに当選している場合に、各リール2L、2C、2Rの停止操作が行われた順番に関わらず、リーチ目を導出させることが可能に制御されるが、特定の条件を満たす順番(例えば、左、中、右)で各リールの停止操作が行われたことを条件にチャンス目やリーチ目を導出できるようにしても良い。
ここで、チャンス目及びリーチ目を導出させる際のリールの停止制御の一例を、図14に基づいて説明する。
図14は、通常遊技状態においていずれの役も当選していない場合(ハズレ)、いずれのボーナスも持ち越されていない状態で1枚(1)が当選している場合(1枚(1))、いずれのボーナスも持ち越されていない状態で1枚(2)が当選している場合(1枚(2))、いずれのボーナスも持ち越されていない状態でチェリーが当選している場合(チェリー)、ビッグボーナス(1)またはレギュラーボーナスが当選しており、他の役が当選していない場合(BB(1)RB)、ビッグボーナス(2)が当選しており、他の役に当選していない場合(BB(2))に選択される左リールの滑りコマ数データを示す図である。
まず、通常遊技状態においていずれの役も当選していない場合(ハズレ)においては、左リールの滑りコマ数データとして、図14のハズレの項目に対応する滑りコマ数データが選択される。この滑りコマ数データには、全ての領域番号に対して2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」や、12〜14番図柄の「リプレイ・スイカ・ベル」、16〜18番図柄の「青7・スイカ・青7」、20、21、1番図柄の「リプレイ・スイカ・ベル」以外の表示結果が特定される滑りコマ数が定められており、いずれのタイミングで左リールの停止操作が検出された場合にも、チャンス目を構成する表示結果である2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」や、リーチ目を構成する表示結果である12〜14番図柄の「リプレイ・スイカ・ベル」、16〜18番図柄の「青7・スイカ・青7」、20、21、1番図柄の「リプレイ・スイカ・ベル」が表示結果として導出されることがなく、最終的にチャンス目やリーチ目が成立することもない。
通常遊技状態においていずれのボーナスも持ち越されていない状態で1枚(1)が当選している場合(1枚(1))においては、左リールの滑りコマ数データとして、図14の1枚(1)の項目に対応する滑りコマ数データが選択される。この滑りコマ数データには、領域番号1〜3、16〜21に対して、1枚(1)の組み合わせを構成する「青7」がいずれかの入賞ライン上に停止する表示結果が特定される滑りコマ数が定められており、特に領域番号18、19に対しては、15〜17番図柄の「リプレイ・青7・スイカ」が特定される滑りコマ数が定められている。また、領域番号4〜8に対して2〜4番図柄の「リプレイ・スイカ・ベル」、領域番号10〜14に対して8〜10番図柄の「ベル・赤7・ベル」が特定される滑りコマ数が定められており、他の領域番号に対してチャンス目やリーチ目を構成する表示態様からなる表示結果以外の表示結果が特定される滑りコマ数が定められている。
よって、領域番号1〜3、16〜21のタイミング、すなわち1枚(1)の組み合わせを構成する「青7」図柄を最大4コマの範囲で引き込んでいずれかの入賞ライン上に停止させることが可能なタイミングで左リールの停止操作が検出された場合には、1枚(1)の組み合わせを構成する「青7」図柄がいずれかの入賞ライン上に停止する表示結果が導出される。特に、「青7」図柄を最大4コマの範囲で引き込んでいずれかの入賞ライン上に停止させることが可能なタイミングのうち領域番号18、19のタイミングで左リールの停止操作が検出された場合には、15〜17番図柄の「リプレイ・青7・スイカ」が導出され、最終的に入賞ライン上に1枚(1)の組み合わせが揃わなければ、他の入賞役が入賞ライン上に揃うことはないので、チャンス目が成立することとなる。また、「青7」図柄を最大4コマの範囲で引き込んで入賞ライン上に停止させることのできないタイミングのうち、領域番号4〜8のタイミングで左リールの停止操作が検出された場合には、2〜4番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、領域番号10〜14のタイミングで左リールの停止操作が検出された場合には、8〜10番図柄の「ベル・赤7・ベル」が表示結果として導出され、これらの場合には、最終的に入賞ライン上に入賞役が揃うことはないので、チャンス目が成立することとなる。また、これら以外のいずれのタイミングで左リールの停止操作が検出された場合でも、チャンス目やリーチ目を構成する表示態様が表示結果として導出されることがなく、最終的にチャンス目やリーチ目が成立することはない。
また、これらチャンス目を構成する表示結果のうち、「青7」図柄を入賞ライン上に停止させることのできないタイミング、すなわち1枚(1)を入賞させることのできないタイミングで停止操作が検出された場合に導出される2〜4番図柄の「リプレイ・スイカ・ベル」及び8〜10番図柄の「ベル・赤7・ベル」を特定する滑りコマ数が定められた停止操作位置(領域番号)の数が、「青7」がいずれかの入賞ライン上に停止する表示結果が特定される滑りコマ数が定められた停止操作位置(領域番号)の数よりも多いため、通常遊技状態において1枚(1)のみが当選している場合においては、1枚(1)の組み合わせを構成する「青7」がいずれかの入賞ライン上に停止する表示結果が導出されるよりも高い割合で、チャンス目を構成する表示結果のうち、1枚(1)を入賞させることのできないタイミングで停止操作が検出された場合に導出される2〜4番図柄の「リプレイ・スイカ・ベル」及び8〜10番図柄の「ベル・赤7・ベル」が導出されることとなる。
通常遊技状態においていずれのボーナスも持ち越されていない状態で1枚(2)が当選している場合(1枚(2))においては、左リールの滑りコマ数データとして、図14の1枚(2)の項目に対応する滑りコマ数データが選択される。この滑りコマ数データには、領域番号9〜15に対して、1枚(2)の組み合わせを構成する「赤7」がいずれかの入賞ライン上に停止する表示結果が特定される滑りコマ数が定められており、特に領域番号12、13に対しては、8〜10番図柄の「ベル・赤7・ベル」が特定される滑りコマ数が定められている。また、領域番号6〜8に対して2〜4番図柄の「リプレイ・スイカ・ベル」、領域番号17〜21に対して15〜17番図柄の「リプレイ・青7・スイカ」が特定される滑りコマ数が定められており、他の領域番号に対してチャンス目やリーチ目を構成する表示態様からなる表示結果以外の表示結果が特定される滑りコマ数が定められている。
よって、領域番号9〜15のタイミング、すなわち1枚(2)の組み合わせを構成する「赤7」図柄を最大4コマの範囲で引き込んでいずれかの入賞ライン上に停止させることが可能なタイミングで左リールの停止操作が検出された場合には、1枚(2)の組み合わせを構成する「赤7」図柄がいずれかの入賞ライン上に停止する表示結果が導出される。特に、「赤7」図柄を最大4コマの範囲で引き込んでいずれかの入賞ライン上に停止させることが可能なタイミングのうち領域番号12、13のタイミングで左リールの停止操作が検出された場合には、8〜10番図柄の「ベル・赤7・ベル」が導出され、最終的に入賞ライン上に1枚(2)の組み合わせが揃わなければ、他の入賞役が入賞ライン上に揃うことはないので、チャンス目が成立することとなる。また、「赤7」図柄を最大4コマの範囲で引き込んで入賞ライン上に停止させることのできないタイミングのうち、領域番号6〜8のタイミングで左リールの停止操作が検出された場合には、2〜4番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、領域番号17〜21のタイミングで左リールの停止操作が検出された場合には、15〜17番図柄の「リプレイ・青7・スイカ」が表示結果として導出され、これらの場合には、最終的に入賞ライン上に入賞役が揃うことはないので、チャンス目が成立することとなる。また、これら以外のいずれのタイミングで左リールの停止操作が検出された場合でも、チャンス目やリーチ目を構成する表示態様が表示結果として導出されることがなく、最終的にチャンス目やリーチ目が成立することはない。
また、これらチャンス目を構成する表示結果のうち、「赤7」図柄を入賞ライン上に停止させることのできないタイミング、すなわち1枚(2)を入賞させることのできないタイミングで停止操作が検出された場合に導出される2〜4番図柄の「リプレイ・スイカ・ベル」及び15〜17番図柄の「リプレイ・青7・スイカ」を特定する滑りコマ数が定められた停止操作位置(領域番号)の数が、「赤7」がいずれかの入賞ライン上に停止する表示結果が特定される滑りコマ数が定められた停止操作位置(領域番号)の数よりも多いため、通常遊技状態において1枚(2)のみが当選している場合においては、1枚(2)の組み合わせを構成する「赤7」がいずれかの入賞ライン上に停止する表示結果が導出されるよりも高い割合で、チャンス目を構成する表示結果のうち、1枚(2)を入賞させることのできないタイミングで停止操作が検出された場合に導出される2〜4番図柄の「リプレイ・スイカ・ベル」及び15〜17番図柄の「リプレイ・青7・スイカ」が導出されることとなる。
通常遊技状態においてビッグボーナス(1)またはレギュラーボーナスが当選し、かつ他のいずれの役も当選していない場合においては、左リールの滑りコマ数データとして、図14のBB(1)RBの項目に対応する滑りコマ数データが選択される。この滑りコマ数データには、領域番号6〜8に対して2〜4番図柄の「リプレイ・スイカ・ベル」が特定される滑りコマ数が定められ、領域番号12、13に対して8〜10番図柄の「ベル・赤7・ベル」が特定される滑りコマ数が定められ、領域番号17に対して20、21、1番図柄の「リプレイ・スイカ・ベル」が特定される滑りコマ数が定められ、領域番号16に対して12〜14番図柄の「リプレイ・スイカ・ベル」が特定される滑りコマ数が定められ、領域番号17に対して15〜17番図柄の「リプレイ・青7・スイカ」が特定される滑りコマ数が定められ、領域番号18、19に対して16〜18番図柄の「青7・スイカ・青7」が特定される滑りコマ数がそれぞれ定められており、他の領域番号に対してチャンス目やリーチ目を構成する表示態様からなる表示結果以外の表示結果が特定される滑りコマ数が定められている。
よって、領域番号6〜8のタイミングで左リールの停止操作が検出された場合には、2〜4番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、最終的に入賞ライン上に入賞役が揃うことはないので、チャンス目が成立することとなる。領域番号12、13のタイミングで左リールの停止操作が検出された場合には、8〜10番図柄の「ベル・赤7・ベル」が表示結果として導出され、最終的に入賞ライン上にビッグボーナス(1)の組み合わせが揃わなければ、他の役が入賞ライン上に揃うことはないので、チャンス目が成立することとなる。領域番号17のタイミングで左リールの停止操作が検出された場合には、15〜17番図柄の「リプレイ・青7・スイカ」が表示結果として導出され、最終的に入賞ライン上に入賞役が揃うことはないので、チャンス目が成立することとなる。
また、領域番号16のタイミングで左リールの停止操作が検出された場合には、12〜14番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、領域番号1のタイミングで左リールの停止操作が検出された場合には、20、21、1番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、いずれの場合も最終的に入賞ライン上に入賞役が揃うことはないので、ビッグボーナス(1)またはレギュラーボーナスが当選しているときのみ出現しうるリーチ目が成立することとなり、領域番号18のタイミングで左リールの停止操作が検出された場合には、16〜18番図柄の「青7・スイカ・青7」が表示結果として導出され、全てのボーナスに共通のリーチ目が成立することとなる。
通常遊技状態においてビッグボーナス(2)が当選し、かつ他のいずれの役も当選していない場合においては、左リールの滑りコマ数データとして、図14のBB(2)の項目に対応する滑りコマ数データが選択される。この滑りコマ数データには、領域番号4〜7に対して2〜4番図柄の「リプレイ・スイカ・ベル」が特定される滑りコマ数が定められ、領域番号12〜14に対して8〜10番図柄の「ベル・赤7・ベル」が特定される滑りコマ数が定められ、領域番号17に対して15〜17番図柄の「リプレイ・青7・スイカ」が特定される滑りコマ数が定められ、領域番号19〜21に対して16〜18番図柄の「青7・スイカ・青7」が特定される滑りコマ数が定められており、他の領域番号に対してチャンス目やリーチ目を構成する表示態様からなる表示結果以外の表示結果が特定される滑りコマ数が定められている。
よって、領域番号4〜7のタイミングで左リールの停止操作が検出された場合には、2〜4番図柄の「リプレイ・スイカ・ベル」が表示結果として導出され、また、領域番号12〜14のタイミングで左リールの停止操作が検出された場合には、8〜10番図柄の「ベル・赤7・ベル」が表示結果として導出され、最終的に入賞ライン上に入賞役が揃うことはないので、チャンス目が成立することとなる。また、領域番号17のタイミングで左リールの停止操作が検出された場合には、15〜17番図柄の「リプレイ・青7・スイカ」が表示結果として導出され、最終的に入賞ライン上にビッグボーナス(2)の組み合わせが揃わなければ、他の役が入賞ライン上に揃うことはないので、チャンス目が成立することとなる。また、領域番号19〜21のタイミングで左リールの停止操作が検出された場合には、16〜18番図柄の「青7・スイカ・青7」が表示結果として導出され、全てのボーナスに共通のリーチ目が成立することとなる。
以上のように通常遊技状態においていずれかのボーナスが当選し、かつ他のいずれの役も当選していない場合に、2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」を表示結果として特定可能な滑りコマ数データが左リールの滑りコマ数データとして選択されるようになっている。
また、通常遊技状態において1枚(1)のみが当選している場合に、チャンス目を構成する表示結果のうち、1枚(1)を入賞させることのできないタイミングで停止操作が行われたときに、2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」を表示結果として特定可能であり、1枚(1)の組み合わせを構成する「青7」図柄を入賞ライン上に停止させることが可能なタイミングで停止操作が行われたときに、15〜17番図柄の「リプレイ・青7・スイカ」を表示結果として特定可能な滑りコマ数データが左リールの滑りコマ数データとして選択されるようになっている。
また、通常遊技状態において1枚(2)のみが当選している場合に、チャンス目を構成する表示結果のうち、1枚(2)を入賞させることのできないタイミングで停止操作が行われたときに、2〜4番図柄の「リプレイ・スイカ・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」を表示結果として特定可能であり、1枚(2)の組み合わせを構成する「赤7」図柄を入賞ライン上に停止させることが可能なタイミングで停止操作が行われたときに、8〜10番図柄の「ベル・赤7・ベル」を表示結果として特定可能な滑りコマ数データが左リールの滑りコマ数データとして選択されるようになっている。
これにより、通常遊技状態においていずれかのボーナスが当選し、かつ他のいずれの役も当選していないとき、または通常遊技状態において1枚(1)のみが当選しているとき、または通常遊技状態において1枚役(2)のみが当選しているときに、チャンス目を導出可能な滑りコマ数データに基づいてリールの停止制御が行われることとなる。特に、通常遊技状態において1枚(1)のみが当選しているときには、1枚(1)の組み合わせを構成する「青7」図柄を入賞ライン上に停止させることができない場合に、2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」を表示結果として導出させることが可能となり、1枚(1)の組み合わせを構成する「青7」図柄を入賞ライン上に停止させることができる場合に、15〜17番図柄の「リプレイ・青7・スイカ」を表示結果として導出させることが可能となり、通常遊技状態において1枚(2)のみが当選しているときには、1枚(2)の組み合わせを構成する「赤7」図柄を入賞ライン上に停止させることができない場合に、2〜4番図柄の「リプレイ・スイカ・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」を表示結果として導出させることが可能となり、1枚(2)の組み合わせを構成する「赤7」図柄を入賞ライン上に停止させることができる場合に、8〜10番図柄の「ベル・赤7・ベル」を表示結果として導出させることが可能となる。
また、通常遊技状態においていずれかの役も当選していない場合に、チャンス目を構成する2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」、15〜17番図柄の「リプレイ・青7・スイカ」以外の表示結果を特定可能な滑りコマ数データが左リールの滑りコマ数データとして選択されるようになっている。これにより、通常遊技状態においていずれかの役も当選していないときに、チャンス目を導出しない滑りコマ数データに基づいてリールの停止制御が行われることとなる。
また、通常遊技状態においていずれかのボーナスが当選し、かつ他のいずれの役も当選していない場合、及び通常遊技状態において1枚(1)のみが当選している場合、及び通常遊技状態において1枚(2)のみが当選している場合においては、領域番号6、7、12、13のタイミングで停止操作が検出された場合にチャンス目を構成する2〜4番図柄の「リプレイ・スイカ・ベル」または8〜10番図柄の「ベル・赤7・ベル」が表示結果として導出されるが、通常遊技状態においていずれの役も当選していない場合(ハズレ)においては、領域番号6、7、12、13のいずれのタイミングで停止操作が検出されても、2〜4番図柄の「リプレイ・スイカ・ベル」または8〜10番図柄の「ベル・赤7・ベル」が表示結果として導出されることはない。つまり、ボーナスまたは1枚(1)、1枚(2)が当選している場合においては、上述のタイミングで左リールの停止操作が行われることで、チャンス目を構成する表示結果が導出されるのに対して、いずれの役も当選していない場合に、同じタイミングで左リールの停止操作が行われても、チャンス目を構成する表示結果が導出されることはない。
次に、左リールにおける図柄配列を図2に基づいて説明すると、ビッグボーナス(1)及びレギュラーボーナス、1枚(2)の組み合わせを構成する9番の「赤7」図柄が左リールの上段、中段、下段のいずれかに停止する表示態様(領域番号7〜9、8〜10、9〜11)と、ビッグボーナス(2)の組み合わせ及び1枚(1)の組み合わせを構成する16番及び18番の「青7」図柄が左リールの上段、中段、下段のいずれかに停止する表示態様(領域番号14〜16、15〜17、16〜18、17〜19、18〜20)と、がそれぞれ最大引込範囲である4コマを超えて配置されている。
このため、9番の「赤7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることが可能な停止操作位置(領域番号9〜13)で停止操作が行われた場合に、16番の「青7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることも、18番の「青7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることが可能な停止操作位置(領域番号1〜3、16〜21)で停止操作が行われた場合に、9番の「赤7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることも、できないようになっている。すなわち「赤7」図柄を入賞ライン上に引込可能な範囲のうちどのタイミングで停止操作を行っても「青7」図柄が入賞ライン上に停止することがなく、「青7」図柄を入賞ライン上に引込可能な範囲のうちどのタイミングで停止操作を行っても「赤7」図柄が入賞ライン上に停止することのない位置に、ビッグボーナス(1)及びレギュラーボーナス(1)、1枚(2)の組み合わせを構成する「赤7」図柄と、ビッグボーナス(2)の組み合わせ及び1枚(1)の組み合わせを構成する「青7」図柄と、がそれぞれ配列されているので、「赤7」図柄と「青7」図柄を同時に狙える停止操作位置が存在しないこととなる。
言い換えると、通常遊技状態においてビッグボーナス(2)または1枚(1)が当選している場合に選択される左リールの滑りコマ数データにおいて、「青7」図柄がいずれかの入賞ライン上に停止する表示態様を引き込むコマ数が定められた領域番号1〜3、16〜21と、通常遊技状態においてビッグボーナス(1)またはレギュラーボーナス、1枚(2)が当選している場合に選択される左リールの滑りコマ数データにおいて、「赤7」図柄がいずれかの入賞ライン上に停止する表示態様を引き込むコマ数が定められた領域番号9〜15と、が異なるので、「赤7」図柄と「青7」図柄を同時に狙える停止操作位置が存在しないこととなる。
また、通常遊技状態において1枚(1)よりも多くのメダルが払い出されるチェリーの組み合わせを構成する6番の「チェリー」図柄が左リールの上段、中段、下段のいずれかに停止する表示態様(領域番号4〜6、5〜7、6〜8)と、1枚(1)の組み合わせを構成する16番または18番の「青7」図柄が左リールの上段、中段、下段のいずれかに停止する表示態様(領域番号14〜16、15〜17、16〜18、17〜19、18〜20)と、がそれぞれ最大引込範囲である4コマを超えて配置されている。
このため、図14に示すように、6番の「チェリー」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることが可能な停止操作位置(領域番号6〜12)で停止操作が行われた場合に、16番または18番の「青7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることも、16番または18番の「青7」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることが可能な停止操作位置(領域番号1〜3、16〜21)で停止操作が行われた場合に、6番の「チェリー」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させることも、できないようになっている。すなわち「チェリー」図柄を入賞ライン上に引込可能な範囲のうちどのタイミングで停止操作を行っても「青7」図柄が入賞ライン上に停止することがなく、「青7」図柄を入賞ライン上に引込可能な範囲のうちどのタイミングで停止操作を行っても「チェリー」図柄が入賞ライン上に停止することのない位置に、通常遊技状態において1枚(1)よりも多くのメダルが払い出されるチェリーの組み合わせを構成する6番の「チェリー」図柄と、1枚(1)の組み合わせを構成する「青7」図柄と、がそれぞれ配列されているので、「チェリー」図柄と「青7」図柄を同時に狙える停止操作位置が存在しないこととなる。
言い換えると、通常遊技状態においてチェリーが当選している場合に選択される左リールの滑りコマ数データにおいて、「チェリー」図柄がいずれかの入賞ライン上に停止する表示態様を引き込むコマ数が定められた領域番号6〜12と、通常遊技状態において1枚(1)が当選している場合に選択される左リールの滑りコマ数データにおいて、「青7」図柄がいずれかの入賞ライン上に停止する表示態様を引き込むコマ数が定められた領域番号1〜3、16〜21と、が異なるので、「チェリー」図柄と「青7」図柄を同時に狙える停止操作位置が存在しないこととなる。
これに対して、6番の「チェリー」図柄が左リールの上段、中段、下段のいずれかに停止する表示態様(領域番号4〜6、5〜7、6〜8)と、チャンス目を構成する2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」と、がそれぞれ最大引込範囲である4コマ以内に配置されている。更に、図14に示すように、6番の「チェリー」図柄を最大4コマ引き込んでいずれかの入賞ライン上に停止させる滑りコマ数が定められた停止操作位置(領域番号6〜12)、及び1枚(1)の当選時にチャンス目を構成する2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」を停止させる滑りコマ数が定められた停止操作位置(領域番号4〜8、領域番号10〜14)が、一部重複しているため、これら重複している停止操作位置(領域番号6〜8、領域番号10〜12)で停止操作がなされた場合には、チェリーに当選していれば、6番の「チェリー」図柄をいずれかの入賞ライン上に停止し、1枚(1)に当選していれば、チャンス目を構成する2〜4番図柄の「リプレイ・スイカ・ベル」、8〜10番図柄の「ベル・赤7・ベル」が停止することとなる。
また、本実施例においてCPU41aは、リール2L、2C、2Rの回転が開始した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。尚、リール回転エラーの発生により、一時的にリールの回転が停止した場合でも、その後リール回転が再開した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。
尚、本実施例では、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっているが、リールの回転が開始してから、予め定められた自動停止時間が経過した場合に、リールの停止操作がなされない場合でも、停止操作がなされたものとみなして自動的に各リールを停止させる自動停止制御を行うようにしても良い。この場合には、遊技者の操作を介さずにリールが停止することとなるため、例え、いずれかの役が当選している場合でもいずれの役も構成しない表示結果を導出させることが好ましい。
本実施例のCPU41aは、全てのリールが停止した時点で、当該ゲームにおいて許容されていない役が入賞ライン上に揃っているか否かを判定する異常入賞判定を行う。そして、当該ゲームにおいて許容されていない役が入賞ライン上に揃った場合には、異常入賞エラー状態に制御し、遊技の進行を不能化させるようになっている。尚、異常入賞エラー状態は、前述したRAM異常エラーと同様に、リセットスイッチ23やリセット/設定スイッチ38を操作しても解除されないようになっており、前述した設定変更モードにおいて新たな設定値が設定されるまで解除されることがない。
この異常入賞判定について説明すると、まずCPU41aは、内部抽選時に当該ゲームにおいて許容されている役を示す当選フラグをRAM41cに割り当てられた内部当選フラグ格納ワーク(iwin_flag)に設定するとともに、全てのリールが停止した時点で入賞ライン上に揃っている役を示す入賞図柄フラグを設定する。そして、当選フラグから異常入賞判定用フラグを作成し、作成した異常入賞判定用フラグと入賞図柄フラグとに基づいて異常入賞か否かを判定するようになっている。
当選フラグは、当該ゲームにおいて入賞が許容されている役を示す16ビット(2バイト)の2進数値であり、それぞれの役に対して個別に定められたビットの値が1である場合に、当該役の入賞が許容された旨を示し、0である場合に当該役の入賞が許容されていない旨を示す。
図16(a)に示すように、第0ビットがビッグボーナス(1)、第1ビットがビッグボーナス(2)、第3ビットがレギュラーボーナスに対応しており、第11ビットがリプレイ、、第12ビットが1枚(1)、第13ビットが1枚(2)、第14ビットがベル、第15ビットがチェリーに対応している。第3〜10ビットはいずれの役にも対応していない。
尚、本実施例においては、1ゲームにおいて複数個の役が許容される場合があり、その場合には、当選フラグにおいて、許容された役に対応するそれぞれのビットの値を1とするようになっている。
異常入賞判定用フラグは、当該ゲームにおいて入賞が許容されている役を示す16ビット(2バイト)の2進数値であるが、それぞれの役に対して個別に定められたビットの値が0である場合に、当該役の入賞が許容された旨を示し、1である場合に、当該役の入賞が許容されていない旨を示す。すなわち異常入賞判定用フラグは、当選フラグの0と1を反転させた値である。
入賞図柄フラグは、入賞ライン上に揃った役を示す16ビット(2バイト)の2進数値であり、それぞれの役に対して個別に定められたビットの値が1である場合に、当該役が入賞した旨を示し、0である場合に当該役が入賞していない旨を示す。入賞図柄フラグも内部当選フラグと同様で、図16(a)に示すように、第0ビットがビッグボーナス(1)、第1ビットがビッグボーナス(2)、第3ビットがレギュラーボーナスに対応しており、第10ビットがリプレイ、第11ビットがJAC、第12ビットが1枚(1)、第13ビットが1枚(2)、第14ビットがベル、第15ビットがチェリーに対応している。第3〜9ビットはいずれの役にも対応していない。この入賞図柄フラグと当選フラグとを比較することで、CPU41aは異常入賞判定を実施する。
CPU41aは、異常入賞判定フラグと入賞図柄フラグとを論理積演算することにより異常入賞が発生したか否かを判定する。異常入賞判定フラグのうち当該ゲームにおいて許容されている役に対応するビットの値は0であり、この役が入賞した場合、すなわち入賞図柄フラグの対応するビットの値が1である場合であっても、入賞しなかった場合、すなわち入賞図柄フラグの対応するビットの値が0である場合であっても、論理積演算した結果は、必ず0となる。一方、異常入賞判定フラグのうち当該ゲームにおいて許容されていない役に対応するビットの値は1であり、この役が入賞しなかった場合、すなわち入賞図柄フラグの対応するビットの値が0である場合には、論理積演算した結果が0となるが、入賞した場合、すなわち入賞図柄フラグの対応するビットの値が1である場合には、論理積演算した結果が1となる。このため、許容されていない役が1つでも入賞した場合には、異常入賞判定フラグと入賞図柄フラグとを論理積演算した結果が、0以外の値となるので、この場合に異常入賞が判定されることとなる。
図16(b)は、CPU41aが異常入賞を判定するまでの処理の流れを、レジスタの値の変化に着目して示した図である。
尚、図16(a)に示すように、処理の実行開始時点においては、Hレジスタには当選フラグの上位8ビットが、Lレジスタには内部当選フラグの下位8ビットが、また、Bレジスタには入賞図柄フラグの下位8ビットが、Cレジスタには入賞図柄フラグの上位8ビットが格納されているものとする。
図16(b)に示すように、まずLレジスタに格納されている内部当選フラグの下位8ビットがAレジスタに格納される。更に、Aレジスタの全ビットを反転し、Bレジスタに格納されている入賞図柄フラグの下位8ビットと、Aレジスタの値との論理積(AND)を算出して、その結果をAレジスタに格納する。結果として、[内部当選フラグ(下位8ビット)の全ビット反転値 AND 入賞図柄フラグ(下位8ビット)]がAレジスタに格納される。
この[内部当選フラグ(下位8ビット)の全ビット反転値 AND 入賞図柄フラグ(下位8ビット)]は、入賞図柄フラグにより特定された入賞が、内部当選フラグにより許容される入賞となっている場合に[00H]となり、そうでない場合に[00H]以外の値となり異常入賞と判定される。例えば、図16(b)に示すように、下位8ビットのうち、内部当選フラグの第0ビットが1{ビッグボーナス(1)当選}、入賞図柄フラグの第0ビットが1{ビッグボーナス(1)入賞}の場合には、[内部当選フラグ(下位8ビット)の全ビット反転値 AND 入賞図柄フラグ(下位8ビット)]=[FEH AND 01H]は[00H]となる。一方、内部当選フラグの第0ビットが1{ビッグボーナス(1)当選}、入賞図柄フラグの第2ビットが1{レギュラーボーナス入賞}の場合には、[内部当選フラグ(下位8ビット)の全ビット反転値 AND 入賞図柄フラグ(下位8ビット)]=[FEH AND 04H]は04Hとなり、異常入賞と判定される。
同様に、HレジスタとCレジスタを用いることで上位8ビットについても、[内部当選フラグ(上位8ビット)の全ビット反転値 AND 入賞図柄フラグ(上位8ビット)]を算出して、その結果をAレジスタに格納する。そしてAレジスタが[00H]以外の場合には、異常入賞と判定されるようになっている。
次に、メダルの払出に伴うエラー制御について説明する。CPU41aは、小役の入賞やクレジット(賭数の設定に用いられたメダルを含む)の精算に伴い、ホッパーモータ34を駆動してメダルを払い出す制御を行う。この際、払出センサ35により一定時間以上メダルが継続して検出された場合には、メダル詰まりと判定し、ホッパーモータ34の駆動を停止し、エラー状態に制御して遊技の進行を停止させる。また、ホッパーモータ34を駆動しているにも関わらず、払出センサ35により一定時間以上メダルが検出されない場合には、一旦ホッパーモータ34の駆動を停止し、数回にわたりホッパーモータ34の駆動を再試行しても払出センサ35によりメダルが検出されない場合には、ホッパーエラー(ホッパー内のメダル不足を示すエラー)と判定し、エラー状態に制御して遊技の進行を停止させる。これらメダル詰まりエラーやホッパーエラーに伴うエラー状態は、リセットスイッチ23やリセット/設定スイッチ38が操作されることで解除され、残りのメダルを払い出す制御が行われるようになっている。
次に、メイン制御部41のRAM41cの初期化について説明する。メイン制御部41のRAM41cの格納領域は、重要ワーク、一般ワーク、特別ワーク、設定値ワーク1〜3、非保存ワーク、未使用領域、スタック領域に区分されている。
重要ワークは、各種表示器やLEDの表示用データ、I/Oポート41dの入出力データ、遊技時間の計時カウンタ等、ビッグボーナス終了時に初期化すると不都合があるデータが格納されるワークである。一般ワークは、停止制御テーブル、停止図柄、メダルの払出枚数、ビッグボーナス中のメダル払出総数等、ビッグボーナス終了時に初期化可能なデータが格納されるワークである。特別ワークは、演出制御基板90へコマンドを送信するためのデータ、各種ソフトウェア乱数等、設定開始前にのみ初期化されるデータが格納されるワークである。設定値ワーク1は、内部抽選処理で抽選を行う際に用いる設定値が格納されるワークであり、設定開始前(設定変更モードへの移行前)の初期化において0が格納された後、1に補正され、設定終了時(設定変更モードへの終了時)に新たに設定された設定値が格納されることとなる。設定値ワーク2は、内部抽選処理で抽選を行う際に設定値ワーク1から読み出された設定値が、設定終了時に格納された設定値と一致するか否かを判定する際に用いる設定値が格納されるワークであり、設定終了時(設定変更モードへの終了時)に新たに設定された設定値が格納されることとなる。設定値ワーク3は、内部抽選処理で抽選を行う際に設定値ワーク1から読み出された設定値が、前のゲームの内部抽選処理で抽選を行う際に用いた設定値と一致するか否かを判定する際に用いる設定値、すなわち前のゲームの設定値が格納されるワークであり、設定終了時(設定変更モードへの終了時)に新たに設定された設定値が格納されるとともに、1ゲーム毎に内部抽選処理で抽選を行う際に設定値ワーク1から読み出された値に更新されることとなる。非保存ワークは、各種スイッチ類の状態を保持するワークであり、起動時にRAM41cのデータが破壊されているか否かに関わらず必ず値が設定されることとなる。未使用領域は、RAM41cの格納領域のうち使用していない領域であり、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなる。スタック領域は、CPU41aのレジスタから退避したデータが格納される領域であり、このうちの未使用スタック領域は、未使用領域と同様に、後述する複数の初期化条件のいずれか1つでも成立すれば初期化されることとなるが、使用中スタック領域は、プログラムの続行のため、初期化されることはない。
本実施例においてメイン制御部41のCPU41aは、設定開始前(設定変更モードへの移行前)、ビッグボーナス終了時、起動時にRAM41cのデータが破壊されていないとき、1ゲーム終了時の4つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる4種類の初期化を行う。
初期化1は、起動時において設定キースイッチ37がONの状態であり、設定変更モードへ移行する場合において、その前に行う初期化であり、初期化1では、RAM41cの格納領域のうち、使用中スタック領域を除く全ての領域(未使用領域及び未使用スタック領域を含む)が初期化される。初期化2は、ビッグボーナス終了時に行う初期化であり、初期化2では、RAM41cの格納領域のうち、一般ワーク、未使用領域及び未使用スタック領域が初期化される。初期化3は、起動時において設定キースイッチ37がOFFの状態であり、かつRAM41cのデータが破壊されていない場合において行う初期化であり、初期化3では、非保存ワーク、未使用領域及び未使用スタック領域が初期化される。初期化4は、1ゲーム終了時に行う初期化であり、初期化4では、RAM41cの格納領域のうち、未使用領域及び未使用スタック領域が初期化される。
尚、本実施例においてRAM41cの記憶領域を初期化するとは、対象となる領域のデータを0クリアすること、すなわち対象となる領域の値を0に更新することであるが、例えば、対象となる領域のデータを予め定められた初期値に書き換えるようにしても良い。
次に、スロットマシン1から外部機器に対して出力される外部出力信号について説明する。メイン制御部41のCPU41aは、レギュラーボーナス中を示すRB中信号、ビッグボーナス中を示すBB中信号、賭数の設定に用いられたメダル数を示すメダルIN信号、入賞の発生に伴い払い出されたメダル数を示すメダルOUT信号を外部出力信号として出力する出力制御を行う。図17に示すように、遊技制御基板40は、外部出力基板110を介して外部機器に接続可能とされており、CPU41aの出力制御によって出力された外部出力信号は、外部出力基板110に接続された外部機器に出力されるようになっている。
図18は、ビッグボーナスが発生した際のRB中信号及びBB中信号の出力状況を示すタイミングチャートである。
ビッグボーナスが発生すると、CPU41aは、まずBB中信号の出力を開始する(OFFからONの状態とする)。次いで、レギュラーボーナスの発生に伴いRB中信号の出力を開始する(OFFからONの状態とする)ビッグボーナス中は、終了条件が成立するまでレギュラーボーナスに繰り返し移行するので、常にレギュラーボーナスに制御される状態となるが、CPU41aは、図18に示すように、一旦レギュラーボーナスが終了し、次のレギュラーボーナスが開始する場合に、終了するレギュラーボーナスの発生を示すRB中信号の出力を停止し(ONからOFFの状態とする)、出力待ち時間twが経過したときに再度出力を開始する(OFFからONの状態とする)制御を行うようになっている。そして、ビッグボーナスの終了条件が成立し、これに伴いレギュラーボーナスが終了すると、RB中信号の出力を停止し(ONからOFFの状態とする)、続いてBB中信号の出力も停止する(ONからOFFの状態とする)。
このようにビッグボーナス中においてレギュラーボーナスが終了し、再度レギュラーボーナスが開始する場合には、RB中信号の出力を出力待ち時間twの間停止した後、再度出力を開始するようになっており、レギュラーボーナスが一旦途切れたことをRB中信号を入力した外部機器にて判別することが可能となる。尚、出力待ち時間twは、外部機器で信号の途切れたことを判別できる程度以上の時間であれば良い。
次に、メイン制御部41のCPU41aが演出制御基板90に対して送信するコマンドについて説明する。
本実施例では、メイン制御部41のCPU41aが演出制御基板90に対して、BETコマンド、内部当選コマンド、リール回転開始コマンド、リール停止コマンド、入賞判定コマンド、払出開始コマンド、払出終了コマンド、遊技状態コマンド、待機コマンド、打止コマンド、エラーコマンド、設定開始コマンド、初期化コマンドを含む複数種類のコマンドを送信する。
BETコマンドは、メダルの投入枚数、すなわち賭数の設定に使用されたメダル枚数を特定可能なコマンドであり、メダル投入時、1枚BETスイッチ5またはMAXBETスイッチ6が操作されて賭数が設定されたときに送信される。
内部当選コマンドは、当選フラグの当選状況、並びに成立した当選フラグの種類を特定可能なコマンドであり、スタートスイッチ7が操作されてゲームが開始したときに送信される。
リール回転開始コマンドは、リールの回転の開始を通知するコマンドであり、リール2L、2C、2Rの回転が開始されたときに送信される。
リール停止コマンドは、停止するリールが左リール、中リール、右リールのいずれかであるか、該当するリールの停止操作位置の領域番号、該当するリールの停止位置の領域番号、を特定可能なコマンドであり、各リールの停止制御が行われる毎に送信される。
入賞判定コマンドは、入賞の有無、並びに入賞の種類、入賞時のメダルの払出枚数を特定可能なコマンドであり、全リールが停止して入賞判定が行われた後に送信される。
払出開始コマンドは、メダルの払出開始を通知するコマンドであり、入賞やクレジット(賭数の設定に用いられたメダルを含む)の精算によるメダルの払出が開始されたときに送信される。また、払出終了コマンドは、メダルの払出終了を通知するコマンドであり、入賞及びクレジットの精算によるメダルの払出が終了したときに送信される。
遊技状態コマンドは、次ゲームの遊技状態(通常遊技状態であるか、ビッグボーナス中であるか、レギュラーボーナス中であるか、等)を特定可能なコマンドであり、ゲームの終了時に送信される。
待機コマンドは、待機状態へ移行する旨を示すコマンドであり、1ゲーム終了後、賭数が設定されずに一定時間経過して待機状態に移行するときに送信される。
打止コマンドは、打止状態の発生または解除を示すコマンドであり、BB終了後、エンディング演出待ち時間が経過した時点で打止状態の発生を示す打止コマンドが送信され、リセット操作がなされて打止状態が解除された時点で、打止状態の解除を示す打止コマンドが送信される。
エラーコマンドは、エラー状態の発生または解除を示すコマンドであり、エラーが判定され、エラー状態に制御された時点でエラー状態の発生を示すエラーコマンドが送信され、リセット操作がなされてエラー状態が解除された時点で、エラー状態の解除を示すエラーコマンドが送信される。
設定開始コマンドは、設定変更モードの開始を示すコマンドであり、設定開始時、すなわち設定変更モードに移行した時点で送信される。
初期化コマンドは、遊技状態が初期化された旨を示すコマンドであり、設定終了時、すなわち設定変更モードの終了時に送信される。
これら各コマンドは、後述する起動処理及びゲーム処理において生成され、RAM41cの特別ワークに設けられたコマンドキューに一時格納され、前述したタイマ割込処理(メイン)において送信される。
次に、メイン制御部41のCPU41aが演出制御基板90に対して送信するコマンドに基づいてサブ制御部91が実行する演出の制御について説明する。
サブ制御部91のCPU91aは、メイン制御部41のCPU41aが送信したコマンドを受信した際に、ROM91bに格納された制御パターンテーブルを参照し、制御パターンテーブルに登録された制御内容に基づいて液晶表示器51、演出効果LED52、スピーカ53、54、リールLED55等の各種演出装置の制御を行う。
制御パターンテーブルには、複数種類の演出パターン毎に、コマンドの種類に対応する液晶表示器51の表示パターン、演出効果LED52の点灯態様、スピーカ53、54の出力態様、リールLEDの点灯態様等、これら演出装置の制御パターンが登録されており、CPU91aは、コマンドを受信した際に、制御パターンテーブルの当該ゲームにおいてRAM91cに設定されている演出パターンに対応して登録された制御パターンのうち、受信したコマンドの種類に対応する制御パターンを参照し、当該制御パターンに基づいて演出装置の制御を行う。これにより演出パターン及び遊技の進行状況に応じた演出が実行されることとなる。
尚、CPU91aは、あるコマンドの受信を契機とする演出の実行中に、新たにコマンドを受信した場合には、実行中の制御パターンに基づく演出を中止し、新たに受信したコマンドに対応する制御パターンに基づく演出を実行するようになっている。すなわち演出が最後まで終了していない状態でも、新たにコマンドを受信すると、実行していた演出はキャンセルされて新たなコマンドに基づく演出が実行されることとなる。
演出パターンは、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じた選択率にて選択され、RAM91cに設定される。演出パターンの選択率は、ROM91bに格納された演出テーブルに登録されており、CPU91aは、内部当選コマンドを受信した際に、内部当選コマンドが示す内部抽選の結果に応じて演出テーブルに登録されている選択率を参照し、その選択率に応じて複数種類の演出パターンからいずれかの演出パターンを選択し、選択した演出パターンを当該ゲームの演出パターンとしてRAM91cに設定するようになっている。
また、制御パターンテーブルには、特定のコマンド(自動停止を示すリール停止コマンド、入賞の発生を示す入賞判定コマンド、払出開始コマンド、払出終了、ビッグボーナス終了を示す遊技状態コマンド、待機コマンド、打止コマンド、エラーコマンド、設定開始コマンド、初期化コマンド等)を受信した際に参照される特定の制御パターンが格納されており、CPU91aは、これら特定のコマンドを受信した場合には、当該ゲームにおいて設定されている演出パターンに関わらず、当該コマンドに対応する特定の制御パターンを参照し、当該制御パターンに基づいて演出装置の制御を行う。
入賞の発生を示す入賞判定コマンドを受信した場合には、入賞の種類に応じた入賞時演出を実行するための入賞時演出パターンが制御パターンとして参照される。特に、ビッグボーナス入賞の発生を示す入賞判定コマンドを受信した場合には、ビッグボーナス入賞時に特有のBB入賞時演出を実行するためのBB入賞時パターンが制御パターンとして参照される。
払出開始コマンドを受信した場合には、払出効果音を出力するための払出パターンが制御パターンとして参照される。また、払出効果音の出力中に払出終了コマンドを受信すると、払出効果音の出力を停止する。尚、払出開始コマンドを受信した場合には、他のコマンドと異なり、実行中の演出を中止して受信したコマンドに対応する演出を実行するのではなく、実行中の演出は継続したまま、払出効果音の出力が行われるようになっている。すなわち他の演出と払出に伴う演出が並行して実行されることとなる。
ビッグボーナス終了を示す遊技状態コマンドを受信した場合には、ビッグボーナスの終了を示すエンディング演出を実行するためのエンディングパターンが制御パターンとして参照される。
待機コマンドを受信した場合には、待機演出を実行するための待機パターンが制御パターンとして参照される。
打止状態の発生を示す打止コマンド受信した場合には、打止状態である旨を報知するための打止報知パターンが制御パターンとして参照される。また、打止状態の解除を示す打止コマンドを受信した場合には、前述した待機パターンが制御パターンとして参照される。すなわち打止状態が解除されると待機演出が実行されることとなる。
エラー状態の発生を示すエラーコマンドを受信した場合には、エラー状態である旨及びその種類を報知するためのエラー報知パターンが制御パターンとして参照される。また、エラー状態の解除を示すエラーコマンドを受信した場合には、エラー発生時に実行していた制御パターンが参照される。すなわちエラー発生時の演出が最初から実行されることとなる。尚、後に説明するが、前述したBB入賞時演出やエンディング演出は、演出が動的に実行される経過段階と、経過段階が終了した時点でその状態(例えば、液晶表示器51には最終画面が継続して表示され、最終段階の効果音が繰り返し出力される状態)が継続される最終段階と、から構成されており、エラー発生時にこれらBB入賞時演出やエンディング演出が最終段階に到達していた場合には、エラーの解除時にこれらBB入賞時演出やエンディング演出が経過段階から実行されるのではなく、最終段階の状態に復帰することとなる。
設定開始コマンドを受信した場合には、設定変更中である旨を報知するための設定中報知パターンが参照される。また、初期化コマンドを受信した場合には、前述した待機パターンが制御パターンとして参照される。すなわち初期化コマンドを受信すると待機演出が実行されることとなる。
サブ制御部91のCPU91aは、定期的に実行するタイマ割込処理(サブ)を実行する毎に、RAM91cの全ての領域に格納されたデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、RAM91cに格納する処理を行うようになっている。
そして、CPU91aは、その起動時においてRAM91cの全ての領域に格納されたデータに基づいてRAMパリティを計算し、RAMパリティが0であることを条件に、RAM91cに記憶されているデータに基づいて電断前の演出状態に復帰させるようになっている。具体的には、最後に実行していた制御パターンを参照し、当該制御パターンに基づく制御を実行する。これにより電断前に実行していた制御パターンに基づく演出が最初から実行されることとなる。尚、電断時にBB入賞時演出やエンディング演出が最終段階に到達していた場合には、次回起動時にこれらBB入賞時演出やエンディング演出が経過段階から実行されるのではなく、最終段階の状態に復帰することとなる。また、起動時においてRAM91cの全ての領域に格納されたデータに基づいて計算したRAMパリティが0でない場合(1の場合)には、RAM異常と判定し、RAM91cの全ての領域を初期化するようになっている。
次に、賭数の設定及びクレジット(賭数の設定に用いられたメダルを含む)の精算と、演出と、の関係について説明する。図19〜図28は、賭数の設定が許容される期間及びクレジットの精算が許容される期間を示すタイミングチャートである。
図19に示すように、ゲームが実行されていない間は、賭数の設定及びクレジットの精算が許可された状態であり、この状態においては、メダルを投入するか、クレジットを用いて賭数の設定が可能に制御されている。賭数の設定が可能な状態で、遊技状態に応じた規定数の賭数が設定されていない状態であれば、メダルの投入が検出される毎に、賭数が1ずつ加算される。また、遊技状態に応じた規定数の賭数が設定された状態であれば、メダルの投入が検出される毎に、クレジットが1ずつ加算される。そして、クレジットが上限(本実施例では50枚)に到達した時点で流路切替ソレノイド30がoffとなり、投入されたメダルの流路がメダル払出口9側に切り替わり、メダルの投入が禁止される。また、クレジットが残存している状態であれば、1枚BETスイッチ5またはMAXBETスイッチ6の操作により、これらのスイッチに応じて賭数が設定され、その分がクレジットから減算される。また、クレジットが残存しているか、賭数が設定されている状態であれば、精算スイッチ10の操作により、ホッパーモータ34の駆動によりクレジットとして記憶されている分のメダル及び賭数の設定に用いられた分のメダルが払い出され、遊技者に返却されるとともに、メダルの払出に応じてクレジット及び賭数が減算される。
賭数の設定及びクレジットの精算が許可された状態において、スタートスイッチ7が操作され、ゲームが開始すると、その時点で賭数の設定もクレジットの精算も禁止される。詳しくは、流路切替ソレノイド30がoffとなり、投入されたメダルの流路がメダル払出口9側に切り替わるとともに、1枚BETスイッチ5、MAXBETスイッチ6、精算スイッチ10の操作が無効化される。尚、ゲームが開始した時点とは、リールの回転が開始した時点ではなく、スタートスイッチ7が操作されて制御段階が移った時点である。これは、前回のゲーム開始から一定期間経過していないためにウェイトがかかる場合があるが、この時点で、リールの回転開始は待機するもの制御段階としてはゲームが開始しているからである。
その後、リール2L、2C、2Rの回転が停止し、全てのリール2L、2C、2Rに表示結果が導出され、メダルの払出を伴う入賞が発生していなければ、全てのリール2L、2C、2Rに表示結果が導出された時点でゲームの終了と判定され、ゲームの終了が判定された時点で賭数の設定及びクレジットの精算の禁止が解除され、賭数の設定及びクレジットの精算が許可された状態となる。尚、例外として、リプレイ入賞が発生した場合には、賭数が自動的に設定されることとなるので、遊技者の操作による賭数の設定は禁止されたままの状態であり、この状態では、クレジットの精算も禁止されるようになっている。
また、リール2L、2C、2Rの回転が停止した結果、メダルの払出を伴う入賞が発生していれば、図20に示すように、全てのリール2L、2C、2Rに表示結果が導出された時点でゲームの終了は判定されず、当該入賞の発生に伴うメダルの払出が終了した時点で、ゲームの終了が判定され、その時点で賭数の設定及びクレジットの精算の禁止が解除され、賭数の設定及びクレジットの精算が許可された状態となる。
また、リール2L、2C、2Rの回転が停止した結果、ビッグボーナス入賞が発生していれば、図21に示すように、全てのリール2L、2C、2Rに表示結果が導出された時点でゲームの終了が判定されるとともに、CPU91aによりBB入賞時演出が実行される。BB入賞時演出は、経過段階と、最終段階と、から構成されており、まず、BB入賞時演出の演出時間にわたり動的な演出が実行される経過段階に移行し、経過段階が終了した時点でその状態が継続される最終段階に移行する。一方、CPU41aによりゲームの終了が判定された時点からの経過時間が計時されるとともに、この経過時間が、前述したBB入賞時演出が最終段階に到達するまでの期間よりも長く設定されたBB入賞時演出の演出待ち時間に到達するまで、賭数の設定は禁止されたままの状態であり、ゲームの終了が判定された時点からの経過時間がBB入賞時演出の演出待ち時間に到達した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。一方、クレジットの精算については、ゲームの終了が判定された時点で、禁止が解除され、その時点からクレジットの精算が許可された状態となる。
また、図22及び図23に示すように、ビッグボーナス入賞が発生したゲームの終了が判定された後、CPU41aにより計時されている経過時間がBB入賞時演出の演出待ち時間に到達するまでの期間において電断が発生し、その後復帰した場合には、ゲームの終了が判定された時点からの経過時間の計時を電断時の状態から再開する。すなわちメイン制御部41では、BB入賞時演出の演出待ち時間を計時するためのカウンタの値を電断時にバックアップし、次回起動時には、バックアップされているカウンタの値に基づいてBB入賞時演出の演出待ち時間の計時を再開するので、電断復旧時には、BB入賞時演出の演出待ち時間から電断前に既に経過した時間(図中Taの期間)を除いた時間(図中Tbの期間)が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。
これに対して、図22に示すように、BB入賞時演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、BB入賞時演出は経過段階の最初から実行される。一方、図23に示すように、BB入賞時演出が最終段階に到達した後の段階において電断が発生し、その後復帰した場合には、BB入賞時演出は最終段階の状態で復帰する。すなわちサブ制御部91では、電断時に実行中のBB入賞時演出が経過段階にあるか最終段階にあるか(例えば、BB入賞時演出が最終段階に到達した旨を示すフラグやBB入賞時演出が実行されてからの経過時間)のみをバックアップし、次回起動時には、BB入賞時演出が経過段階にある旨がバックアップされている場合には、BB入賞時演出が経過段階の最初から実行され、BB入賞時演出が最終段階にある旨がバックアップされていれば、BB入賞時演出が最終段階の状態で復帰することとなる。そして、BB入賞時演出が経過段階であるか、最終段階であるか、に関わらず、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、BB入賞時演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。
また、図24に示すように、ビッグボーナス入賞が発生したゲームの終了が判定された後、CPU41aにより計時されている経過時間がBB入賞時演出の演出待ち時間に到達するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、ゲームの終了が判定された時点からの経過時間の計時をエラー発生時の状態から再開する。すなわちメイン制御部41では、BB入賞時演出の演出待ち時間を計時するためのカウンタの値をエラー発生中も維持し、エラー解除後には、維持されているカウンタの値に基づいてBB入賞時演出の演出待ち時間の計時を再開するので、払出エラーが解除したときには、BB入賞時演出の演出待ち時間から払出エラーの発生前に既に経過した時間(図中Tcの期間)を除いた時間(図中Tdの期間)が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。
これに対して、図24に示すように、BB入賞時演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、BB入賞時演出は経過段階の最初から実行される。一方、特に図示しないが、BB入賞時演出が最終段階に到達した後の段階において払出エラーが発生し、当該払出エラーが解除した場合には、電断時と同様にBB入賞時演出は最終段階の状態で復帰する。すなわちサブ制御部91では、エラー発生時に実行中のBB入賞時演出が経過段階にあるか最終段階にあるかのみのデータを維持し、当該エラーが解除したときには、BB入賞時演出が経過段階にある旨のデータが維持されていれば、BB入賞時演出が経過段階の最初から実行され、BB入賞時演出が最終段階にある旨のデータが維持されていれば、BB入賞時演出が最終段階の状態で復帰することとなる。そして、BB入賞時演出が経過段階であるか、最終段階であるか、に関わらず、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、BB入賞時演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。
また、ビッグボーナス中のゲームにおいて、リール2L、2C、2Rの回転が停止した結果、ビッグボーナスの終了条件が成立したゲーム、すなわち何らかの入賞が発生してビッグボーナス中の払出総数が465枚を超えたゲームで、かつ打止機能が設定されていない場合であれば、図24に示すように、メダルの払出が終了した時点でゲームの終了が判定されるとともに、CPU91aによりエンディング演出が実行される。エンディング演出は、BB入賞時演出と同様に、経過段階と、最終段階と、から構成されており、まず、エンディング演出の演出時間にわたり動的な演出が実行される経過段階に移行し、経過段階が終了した時点でその状態が継続される最終段階に移行する。一方、CPU41aによりゲームの終了が判定された時点からの経過時間が計時されるとともに、この経過時間が、前述したエンディング演出が最終段階に到達するまでの期間よりも長く設定されたエンディング演出の演出待ち時間に到達するまで、賭数の設定は禁止されたままの状態であり、ゲームの終了が判定された時点からの経過時間がエンディング演出の演出待ち時間に到達した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。一方、クレジットの精算については、ゲームの終了が判定された時点で、禁止が解除され、その時点からクレジットの精算が許可された状態となる。
また、図23及び図24に示すように、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、CPU41aにより計時されている経過時間がエンディング演出の演出待ち時間に到達するまでの期間において電断が発生し、その後復帰した場合には、ゲームの終了が判定された時点からの経過時間の計時を電断時の状態から再開する。すなわちメイン制御部41では、エンディング演出の演出待ち時間を計時するためのカウンタの値を電断時にバックアップし、次回起動時には、バックアップされているカウンタの値に基づいてエンディング演出の演出待ち時間の計時を再開するので、電断復旧時には、エンディング演出の演出待ち時間から電断前に既に経過した時間(図中Taの期間)を除いた時間(図中Tbの期間)が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。
これに対して、図22に示すように、エンディング演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、エンディング演出は経過段階の最初から実行される。一方、図23に示すように、エンディング演出が最終段階に到達した後の段階において電断が発生し、その後復帰した場合には、エンディング演出は最終段階の状態で復帰する。すなわちサブ制御部91では、電断時に実行中のエンディング演出が経過段階にあるか最終段階にあるか(例えば、エンディング演出が最終段階に到達した旨を示すフラグやエンディング演出が実行されてからの経過時間)のみをバックアップし、次回起動時には、エンディング演出が経過段階にある旨がバックアップされている場合(例えば、エンディング演出が最終段階に到達した旨を示すフラグが設定されている場合やエンディング演出が実行されてからの経過時間が最終段階に到達している場合)には、エンディング演出が経過段階の最初から実行され、エンディング演出が最終段階にある旨がバックアップされていれば、エンディング演出が最終段階の状態で復帰することとなる。そして、エンディング演出が経過段階であるか、最終段階であるか、に関わらず、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、エンディング演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。
また、図24に示すように、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、CPU41aにより計時されている経過時間がBB入賞時演出の演出待ち時間に到達するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、ゲームの終了が判定された時点からの経過時間の計時をエラー発生時の状態から再開する。すなわちメイン制御部41では、エンディング演出の演出待ち時間を計時するためのカウンタの値をエラー発生中も維持し、エラー解除後には、維持されているカウンタの値に基づいてエンディング演出の演出待ち時間の計時を再開するので、払出エラーが解除したときには、エンディング演出の演出待ち時間から払出エラーの発生前に既に経過した時間(図中Tcの期間)を除いた時間(図中Tdの期間)が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となる。
これに対して、図24に示すように、エンディング演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出は経過段階の最初から実行される。一方、特に図示しないが、エンディング演出が最終段階に到達した後の段階において払出エラーが発生し、当該払出エラーが解除した場合には、電断時と同様にエンディング演出は最終段階の状態で復帰する。すなわちサブ制御部91では、エラー発生時に実行中のエンディング演出が経過段階にあるか最終段階にあるかのみのデータを維持し、当該エラーが解除したときには、エンディング演出が経過段階にある旨のデータが維持されていれば、エンディング演出が経過段階の最初から実行され、エンディング演出が最終段階にある旨のデータが維持されていれば、エンディング演出が最終段階の状態で復帰することとなる。そして、エンディング演出が経過段階であるか、最終段階であるか、に関わらず、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、エンディング演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。
また、ビッグボーナスの終了条件が成立したゲームで、かつ打止機能が設定されている場合であれば、図25に示すように、メダルの払出が終了した時点でゲームの終了が判定されるとともに、CPU91aにより前述のエンディング演出が実行される。一方、CPU41aによりゲームの終了が判定された時点からの経過時間が計時されるとともに、この経過時間が、前述したエンディング演出が最終段階に到達するまでの期間よりも長く設定されたエンディング演出の演出待ち時間に到達すると打止状態に制御されるため、ゲームの終了が判定された時点からの経過時間がエンディング演出の演出待ち時間に到達しても、リセットスイッチ23またはリセット/設定スイッチ38が操作されるまで、賭数の設定は禁止されたままの状態であり、リセットスイッチ23またはリセット/設定スイッチ38が操作され、打止状態が解除された時点で賭数の設定の禁止も解除され、賭数の設定が許可された状態となる。一方、クレジットの精算については、ゲームの終了が判定された時点で、禁止が解除され、その時点からクレジットの精算が許可された状態となる。
また、図26及び図27に示すように、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、CPU41aにより計時されている経過時間がエンディング演出の演出待ち時間に到達するまでの期間において電断が発生し、その後復帰した場合には、ゲームの終了が判定された時点からの経過時間の計時を電断時の状態から再開する。すなわち電断復旧時には、エンディング演出の演出待ち時間から電断前に既に経過した時間(図中Teの期間)を除いた時間(図中Tfの期間)が経過した後、リセットスイッチ23またはリセット/設定スイッチ38が操作され、打止状態が解除された時点で賭数の設定の禁止も解除され、賭数の設定が許可された状態となる。
これに対して、図26に示すように、エンディング演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、エンディング演出は経過段階の最初から実行される。一方、図27に示すように、エンディング演出が最終段階に到達した後の段階において電断が発生し、その後復帰した場合には、エンディング演出は最終段階の状態で復帰する。そして、エンディング演出が経過段階であるか、最終段階であるか、に関わらず、打止状態が発生してメイン制御部41側からその旨を示す打止コマンドを受信すると、エンディング演出はその時点でキャンセルされ、打止中報知が実行されることとなる。この状態で打止状態が解除されてメイン制御部41側からその旨を示す打止コマンドを受信すると、打止中報知は中止され、待機演出が実行されることとなる。
また、図28に示すように、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、CPU41aにより計時されている経過時間がBB入賞時演出の演出待ち時間に到達するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、ゲームの終了が判定された時点からの経過時間の計時をエラー発生時の状態から再開する。すなわち払出エラーが解除したときには、エンディング演出の演出待ち時間から払出エラーの発生前に既に経過した時間(図中Tgの期間)を除いた時間(図中Thの期間)が経過した後、リセットスイッチ23またはリセット/設定スイッチ38が操作され、打止状態が解除された時点で賭数の設定の禁止も解除され、賭数の設定が許可された状態となる。
これに対して、図28に示すように、エンディング演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出は経過段階の最初から実行される。一方、特に図示しないが、エンディング演出が最終段階に到達した後の段階において払出エラーが発生し、当該払出エラーが解除した場合には、電断時と同様にエンディング演出は最終段階の状態で復帰する。そして、エンディング演出が経過段階であるか、最終段階であるか、に関わらず、打止状態が発生してメイン制御部41側からその旨を示す打止コマンドを受信すると、エンディング演出はその時点でキャンセルされ、打止中報知が実行されることとなる。この状態で打止状態が解除されてメイン制御部41側からその旨を示す打止コマンドを受信すると、打止中報知は中止され、待機演出が実行されることとなる。
尚、本実施例では、ビッグボーナスの終了条件が、ビッグボーナス中の払出総数が465枚を超えることであるため、ビッグボーナスの終了条件が成立したゲームでは、必ずメダルの払出を伴うこととなり、払出が終了した時点でゲームの終了が判定されることとなるが、例えば、ビッグボーナスが規定ゲーム数に到達することを終了条件として適用する場合には、ビッグボーナスの終了条件が成立したゲームにおいてメダルの払出を伴わないこともあり、このような場合には、全てのリール2L、2C、2Rの表示結果が導出された時点でゲームの終了が判定されることとなる。
次に、本実施例におけるメイン制御部41のCPU41aが実行する各種制御内容を、図29〜図53に基づいて以下に説明する。
CPU41aは、リセット回路49からリセット信号が入力されると、図29のフローチャートに示す起動処理を行う。尚、リセット信号は、電源投入時及びメイン制御部41の動作が停滞した場合に出力される信号であるので、起動処理は、電源投入に伴うCPU41aの起動時及びCPU41aの不具合に伴う再起動時に行われる処理である。
起動処理では、まず、内蔵デバイスや周辺IC、割込モード、スタックポインタ等を初期化した後(Sa1)、入力ポートから電圧低下信号の検出データを取得し、電圧低下信号が入力されているか否か、すなわち電圧が安定しているか否かを判定し(Sa2)、電圧低下信号が入力されている場合には、電圧低下信号が入力されているか否かの判定以外は、いずれの処理も行わないループ処理に移行する。
Sa2のステップにおいて電圧低下信号が入力されていないと判定した場合には、Iレジスタ及びIYレジスタの値を初期化する(Sa3)とともに、打止スイッチ36、自動精算スイッチ29の状態を取得し、CPU41aの特定のレジスタに打止機能、自動精算機能の有効/無効を設定する(Sa4)。Iレジスタ及びIYレジスタの初期化により、Iレジスタには、割込発生時に参照する割込テーブルのアドレスが設定され、IYレジスタには、RAM41cの格納領域を参照する際の基準アドレスが設定される。これらの値は、固定値であり、起動時には常に初期化されることとなる。
次いで、RAM41cへのアクセスを許可し(Sa5)、設定キースイッチ37がONの状態か否かを判定する(Sa6)。Sa6のステップにおいて設定キースイッチ37がONの状態でなければ、RAM41cの全ての格納領域(未使用領域及び未使用スタック領域を含む)のRAMパリティを計算し(Sa7)、RAMパリティが0か否かを判定する(Sa8)。正常に電断割込処理が行われていれば、RAMパリティが0になるはずであり、Sa8のステップにおいてRAMパリティが0でなければ、RAM41cに格納されているデータが正常ではないので、RAM異常を示すエラーコードをレジスタに設定し(Sa10)、図30に示すエラー処理に移行する。
また、Sa8のステップにおいてRAMパリティが0であれば、更に破壊診断用データが正常か否かを判定する(Sa9)。正常に電断割込処理が行われていれば、破壊診断用データが設定されているはずであり、Sa9のステップにおいて破壊診断用データが正常でない場合(破壊診断用データが電断時に格納される5A(H)以外の場合)にも、RAM41cのデータが正常ではないので、RAM異常を示すエラーコードをレジスタに設定し(Sa10)、図30に示すエラー処理に移行する。
エラー処理では、図30に示すように、現在の遊技補助表示器12の表示状態をスタックに退避し(Sb1)、レジスタに格納されているエラーコードを遊技補助表示器12に表示する(Sb2)。
次いで、レジスタに格納されているエラーコードを確認し、当該エラーコードがRAM異常エラーを示すエラーコードであるか否かを判定し(Sb3)、RAM異常エラーを示すエラーコードである場合には、RAM41cの格納領域のうち、使用中スタック領域を除く全ての格納領域を初期化する初期化1を行った後(Sb4)、いずれの処理も行わないループ処理に移行する。
また、Sb3のステップにおいて、RAM異常以外を示すエラーコードではないと判定された場合には、リセット/設定スイッチ38の操作が検出されているか否かを判定し(Sb5)、リセット/設定スイッチ38の操作が検出されていなければ、更にリセットスイッチ23の操作が検出されているか否かを判定し(Sb6)、リセットスイッチ23の操作も検出されていなければ、Sb4のステップに戻る。すなわちリセット/設定スイッチ38またはリセットスイッチ23の操作が検出されるまで、遊技の進行が不能な状態で待機する。
そして、Sb5のステップにおいてリセット/設定スイッチ38の操作が検出された場合、またはSb6のステップにおいてリセットスイッチ23の操作が検出された場合には、レジスタに格納されているエラーコードをクリアし(Sb7)、遊技補助表示器12の表示状態をSb1のステップにおいてスタックに退避した表示状態に復帰させて(Sb8)、もとの処理に戻る。
このようにエラー処理においては、RAM異常エラー以外によるエラー処理であれば、リセット/設定スイッチ38またはリセットスイッチ23が操作されることで、エラー状態を解除してもとの処理に復帰するが、RAM異常エラーによるエラー処理であれば、リセット/設定スイッチ38またはリセットスイッチ23が操作されてもエラー状態が解除されることはない。
図29に戻り、Sa9のステップにおいて破壊診断用データが正常であると判定した場合には、RAM41cのデータは正常であるので、RAM41cの非保存ワーク、未使用領域及び未使用スタック領域を初期化する初期化3を行った後(Sa11)、破壊診断用データをクリアする(Sa12)。次いで、各レジスタを電断前の状態、すなわちスタックに保存されている状態に復帰し(Sa13)、割込を許可して(Sa14)、電断前の最後に実行していた処理に戻る。
また、Sa6のステップにおいて設定キースイッチ37がONの状態であれば、RAM41cの格納領域のうち、使用中スタック領域を除く全ての格納領域を初期化する初期化1を実行した後(Sa15)、設定値ワーク1に格納されている値(この時点では0)を1に補正する(Sa16)。次いで、割込を許可して(Sa17)、図31に示す設定変更処理、すなわち設定変更モードに移行し(Sa18)、設定変更処理の終了後、ゲーム処理に移行する。
設定変更処理では、図31に示すように、RAM41cの設定値ワーク1に格納されている設定値(設定変更処理に移行する前に設定値ワーク1の値は1に補正されているので、ここでは1である)を読み出す(Sc1)。
その後、リセット/設定スイッチ38とスタートスイッチ7の操作の検出待ちの状態となり(Sc2、Sc3)、Sc2のステップにおいてリセット/設定スイッチ38の操作が検出されると、Sc1のステップにおいて読み出した設定値に1を加算し(Sc4)、加算後の設定値が7であるか否か、すなわち設定可能な範囲を超えたか否かを判定し(Sc5)、加算後の設定値が7でなければ、再びSc2、Sc3のステップにおけるリセット/設定スイッチ38とスタートスイッチ7の操作の検出待ちの状態に戻り、Sc5のステップにおいて加算後の設定値が7であれば設定値を1に補正した後(Sc6)、再びSc2、Sc3のステップにおけるリセット/設定スイッチ38とスタートスイッチ7の操作の検出待ちの状態に戻る。
また、Sc3のステップにおいてスタートスイッチ7の操作が検出されると、その時点で選択されている変更後の設定値をRAM41cの設定値ワーク1〜3にそれぞれ格納して、設定値を確定した後(Sc7)、設定キースイッチ37がOFFの状態となるまで待機する(Sc8)。そして、Sc8のステップにおいて設定キースイッチ37のOFFが判定されると、図29のフローチャートに復帰し、ゲーム処理に移行することとなる。
このように起動処理においては、設定キースイッチ37がONの状態ではない場合に、RAMパリティが0であるか否か、破壊診断用データが正常であるか否かを判定することでRAM41cに記憶されているデータが正常か否かを判定し、RAM41cのデータが正常でなければ、エラー処理に移行する。RAM異常エラーによるエラー処理では、RAM異常エラーを示すエラーコードを遊技補助表示器12に表示させた後、いずれの処理も行わないループ処理に移行するので、ゲームの進行が不能化される。そして、RAM41cのデータが正常でなければ、割込が許可されることがないので、一度RAM異常エラーによるエラー処理に移行すると、設定キースイッチ37がONの状態で起動し、割込が許可されるまでは、電断しても電断割込処理は行われない。すなわち電断割込処理において新たにRAMパリティが0となるようにRAM調整用データが計算されて格納されることはなく、破壊診断用データが新たに設定されることもないので、CPU41aが再起動しても設定キースイッチ37がONの状態で起動した場合を除き、CPU41aを再起動させてもゲームを再開させることができないようになっている。
そして、RAM異常エラーによるエラー処理に一度移行すると、設定キースイッチ37がONの状態で起動し、RAM41cの使用中スタック領域を除く全ての領域が初期化された後、設定変更処理が行われ、リセット/設定スイッチ38の操作により新たに設定値が選択・設定されるまで、ゲームの進行が不能な状態となる。すなわちRAM異常エラーによるエラー処理に移行した状態では、リセット/設定スイッチ38の操作により新たに設定値が選択・設定されたことを条件に、ゲームの進行が不能な状態が解除され、ゲームを再開させることが可能となる。
図32は、CPU41aが実行するゲーム処理の制御内容を示すフローチャートである。
ゲーム処理では、BET処理(Sd1)、内部抽選処理(Sd2)、リール回転処理(Sd3)、入賞判定処理(Sd4)、払出処理(Sd5)、ゲーム終了時処理(Sd6)を順に実行し、ゲーム終了時処理が終了すると、再びBET処理に戻る。
Sd1のステップにおけるBET処理では、賭数を設定可能な状態で待機し、遊技状態に応じた規定数の賭数が設定され、スタートスイッチ7が操作された時点で賭数を確定する処理を実行する。
Sd2のステップにおける内部抽選処理では、Sd1のステップにおけるスタートスイッチ7の検出によるゲームスタートと同時に内部抽選用の乱数を抽出し、抽出した乱数の値に基づいて上記した各役への入賞を許容するかどうかを決定する処理を行う。この内部抽選処理では、それぞれの抽選結果に基づいて、RAM41cに当選フラグが設定される。
Sd3のステップにおけるリール回転処理では、各リール2L、2C、2Rを回転させる処理、遊技者によるストップスイッチ8L、8C、8Rの操作が検出されたことに応じて対応するリール2L、2C、2Rの回転を停止させる処理を実行する。
Sd4のステップにおける入賞判定処理では、Sd3のステップにおいて全てのリール2L、2C、2Rの回転が停止したと判定した時点で、各リール2L、2C、2Rに導出された表示結果に応じて入賞が発生したか否かを判定する処理を実行する。
Sd5のステップにおける払出処理では、Sd4のステップにおいて入賞の発生が判定された場合に、その入賞に応じた払出枚数に基づきクレジットの加算並びにメダルの払出等の処理を行う。
Sd6のステップにおけるゲーム終了時処理では、次のゲームに備えて遊技状態を設定する処理を実行する。
図33及び図34は、CPU41aがSd1のステップにおいて実行するBET処理の制御内容を示すフローチャートである。
BET処理では、まず、RAM41cにおいて賭数の値が格納されるBETカウンタの値をクリアし(Se1)、遊技状態に応じた規定数(遊技状態に応じて定められた賭数の規定数であり、レギュラーボーナスにあるときには、1が設定され、通常遊技状態にあるときには、3が設定される。)をRAM41cに設定し(Se2)、RAM41cにリプレイゲームである旨を示すリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定する(Se3)。
Se3のステップにおいて当該ゲームがリプレイゲームであると判定された場合には、BETカウンタの値を1加算し(Se4)、RAM41cに設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否を判定し(Se5)、BETカウンタの値が規定数でなければSe4のステップに戻り、BETカウンタの値が規定数であれば、メダルの投入不可を示す投入不可フラグをRAM41cに設定し(Se6)、Se8のステップに進む。
Se3のステップにおいて当該ゲームがリプレイゲームでないと判定されれば、投入待ち前の設定を行い(Se7)、Se8のステップに進む。投入待ち前の設定では、RAM41cに設定されている投入不可フラグをクリアし、1枚BETスイッチ5、MAXBETスイッチ6、スタートスイッチ7、精算スイッチ10の検出を有効化する。
Se8のステップにおいては、RAM41cに投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定する。Se8のステップにおいてメダルの投入が可能な状態であると判定された場合には、流路切替ソレノイド30をonの状態とし、メダルの流路をホッパータンク側の経路としてメダルの投入が可能な状態とし(Se9)、Se11のステップに進み、メダルの投入が可能な状態でないと判定された場合には、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路として新たなメダルの投入を禁止し(Se10)、Se11のステップに進む。
Se11のステップにおいては、投入メダルセンサ31により投入メダルの通過が検出されたか否かを判定する。Se11のステップにおいて投入メダルの通過が検出されていなければ、Se18のステップに進み、投入メダルの通過が検出されていれば、RAM41cに投入不可フラグが設定されているか否かに基づいてメダルの投入が可能な状態か否かを判定し(Se12)、メダルの投入が可能な状態でなければSe18のステップに進む。
Se12のステップにおいてメダルの投入が可能な状態であれば、RAM41cに設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否を判定し(Se13)、BETカウンタの値が規定数でなければ、BETカウンタの値を1加算し(Se14)、Se8のステップに戻る。
Se13のステップにおいてBETカウンタの値が規定数であれば、RAM41cにおいてクレジットの値が格納されるクレジットカウンタの値を1加算し(Se15)、クレジットカウンタの値が上限値である50であるか否かを判定し(Se16)、クレジットカウンタの値が50でなければ、Se8のステップに戻り、クレジットカウンタの値が50であれば投入不可フラグをRAM41cに設定し(Se17)、Se8のステップに戻る。
Se18のステップでは、スタートスイッチ7の操作が検出されているか否かを判定する。Se18のステップにおいてスタートスイッチ7の操作が検出されていなければSe22のステップに進み、スタートスイッチ7の操作が検出されていれば、RAM41cに設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否かを判定する(Se19)。
Se19のステップにおいてBETカウンタの値が規定数でなければ、Se8のステップに戻り、BETカウンタの値が規定数であれば、投入不可フラグをRAM41cに設定するとともに、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路として新たなメダルの投入を禁止し(Se20)、ゲーム開始時の設定を行う(Se21)。ゲーム開始時の設定では、1枚BETスイッチ5、MAXBETスイッチ6、スタートスイッチ7、精算スイッチ10の操作の検出を無効化する。そして、Se21のステップの後、BET処理を終了して図32のフローチャートに復帰する。これに伴い、メダルの投入、1枚BETスイッチ5及びMAXBETスイッチ6の操作の検出に基づく賭数の設定が禁止されるとともに、精算スイッチ10の操作の検出に基づくクレジットの精算が禁止されることとなる。尚、投入不可フラグは、次回ゲームのBET処理までクリアされることはなく、1枚BETスイッチ5及びMAXBETスイッチ6の操作の検出も次回ゲームのBET処理までクリアされることはないので、次回ゲームのBET処理まで賭数の設定が禁止されることとなる。また、精算スイッチ10の操作の検出は、ビッグボーナス入賞時またはビッグボーナス終了時を除いて次回ゲームのBET処理までクリアされることはないので、次回ゲームのBET処理までクレジットの精算(賭数の設定に用いられたメダルを含む)が禁止されることとなる。尚、ビッグボーナス入賞時やビッグボーナス終了時においては、次回ゲームのBET処理を待たず、ゲームが終了した時点(リール停止時、もしくはメダルの払出終了時)で精算スイッチ10の操作の検出が有効化され、クレジットの精算が可能となる。
Se22のステップにおいては、1枚BETスイッチ5の操作が検出されているか否かを判定する。Se22のステップにおいて1枚BETスイッチ5の操作が検出されていなければ、Se27のステップに進み、1枚BETスイッチ5の操作が検出されていれば、RAM41cに設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否かを判定する(Se23)。Se23のステップにおいてBETカウンタの値が規定数であればSe8のステップに戻り、BETカウンタの値が規定数でなければ、クレジットカウンタの値が0であるか否かを判定し(Se24)、クレジットカウンタの値が0であればSe8のステップに戻る。Se24のステップにおいてクレジットカウンタの値が0でなければ、クレジットカウンタの値を1減算し(Se25)、BETカウンタの値を1加算して(Se26)、Se8のステップに戻る。
Se27のステップにおいては、MAXBETスイッチ6の操作が検出されているか否かを判定する。Se27のステップにおいてMAXBETスイッチ6の操作が検出されていなければ、Se32のステップに進み、MAXBETスイッチ6の操作が検出されていれば、RAM41cに設定された賭数の規定数を参照し、BETカウンタの値が規定数であるか否かを判定する(Se28)。Se28のステップにおいてBETカウンタの値が規定数であればSe8のステップに戻り、BETカウンタの値が規定数でなければ、クレジットカウンタの値が0であるか否かを判定し(Se29)、クレジットカウンタの値が0であればSe8のステップに戻る。Se29のステップにおいてクレジットカウンタの値が0でなければ、クレジットカウンタの値を1減算し(Se30)、BETカウンタの値を1加算して(Se31)、Se28のステップに戻る。
Se32のステップにおいては、精算スイッチ10の操作が検出されているか否かを判定する。Se32のステップにおいて精算スイッチ10の操作が検出されていなければ、Se8のステップに戻り、精算スイッチ10の操作が検出されていれば、RAM41cにリプレイゲームフラグが設定されているか否かに基づいて当該ゲームがリプレイゲームであるか否かを判定し(Se33)、当該ゲームがリプレイゲームであればSe8のステップに戻る。Se33のステップにおいて当該ゲームがリプレイゲームでなければ、BETカウンタの値が0か否かを判定し(Se34)、BETカウンタの値が0であればSe36のステップに進み、BETカウンタの値が0でなければ、既に設定済み賭数の精算を行う旨を示す賭数精算フラグをRAM41cに設定し(Se35)、Se36のステップに進む。Se36のステップにおいては、ホッパーモータ34を駆動してクレジットカウンタまたはBETカウンタに格納された値分のメダルを払い出す制御、すなわちクレジットとして記憶されているメダルまたは賭数の設定に用いられたメダルを返却する制御が行われる精算処理を行う。そして、Se36のステップにおける精算処理の後、RAM41cに設定されている投入不可フラグをクリアして(Se37)、Se8のステップに戻る。
図35は、CPU41aが実行する精算処理の制御内容を示すフローチャートである。
精算処理では、まず、RAM41cに賭数精算フラグが設定されているか否かに基づいて賭数の設定に用いられたメダルを精算するか否かを判定する(Sf1)。
Sf1のステップにおいて賭数の設定に用いられたメダルの精算でない場合には、クレジットカウンタの値が0か否かを判定し(Sf2)、クレジットカウンタの値が0であれば、精算処理を終了し、元の処理に復帰する。
Sf2のステップにおいてクレジットカウンタの値が0でなければ、投入不可フラグをRAM41cに設定するとともに、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路としてメダルの投入を禁止し(Sf3)、1枚分のメダルの払出制御を行うメダル1枚払出処理を行う(Sf4)。
Sf4のステップにおけるメダル1枚払出処理では、ホッパーモータ34の駆動状態がonでなければ、ホッパーモータ34の駆動状態をonに設定する。そして、払出センサ35の検出状態を監視し、払出センサ35により1枚分のメダルの払出が検出されると、メダルの払出と判定し、次の処理に移行する。また、払出センサ35により一定時間以上メダルが継続して検出された場合には、メダル詰まりと判定し、ホッパーモータ34の駆動状態をoffに設定し、メダル詰まりエラーを示すエラーコードをレジスタに設定した後、図30に示すエラー処理に移行する。また、払出センサ35により一定時間以上メダルが検出されない場合には、一旦ホッパーモータ34の駆動状態をoffとし、数回にわたりホッパーモータ34の駆動を再試行しても払出センサ35によりメダルが検出されない場合には、ホッパーエラー(ホッパー内のメダル不足を示すエラー)を示すエラーコードをレジスタに設定した後、図30に示すエラー処理に移行する。これらメダル詰まりエラーやホッパーエラーによるエラー処理は、リセットスイッチ23やリセット/設定スイッチ38が操作されることで解除され、解除後、再びメダル1枚払出処理の先頭に戻る。
Sf4のステップにおけるメダル1枚払出処理により1枚分のメダルが払い出されると、クレジットカウンタの値を1減算し(Sf5)、クレジットカウンタの値が0か否かを判定する(Sf6)。そして、Sf6のステップにおいてクレジットカウンタの値が0でない場合には、Sf4のステップに戻り、クレジットカウンタの値が0であれば、ホッパーモータ34の駆動状態をoffに設定して駆動を停止させた後(Sf7)、精算処理を終了して、元の処理に復帰する。
Sf1のステップにおいて賭数の設定に用いられたメダルの精算である場合には、投入不可フラグをRAM41cに設定するとともに、流路切替ソレノイド30をoffの状態とし、メダルの流路をメダル払出口9側の経路としてメダルの投入を禁止し(Sf3)、Sf4のステップと同じメダル1枚払出処理を行う(Sf9)。
Sf9のステップにおけるメダル1枚払出処理により1枚分のメダルが払い出されると、BETカウンタの値を1減算し(Sf10)、BETカウンタの値が0か否かを判定する(Sf11)。そして、Sf11のステップにおいてBETカウンタの値が0でない場合には、Sf9のステップに戻り、BETカウンタの値が0であれば、RAM41cに設定されている賭数精算フラグをクリアし(Sf12)、ホッパーモータ34の駆動状態をoffに設定して駆動を停止させた後(Sf7)、精算処理を終了して、元の処理に復帰する。
図36は、CPU41aがSd2のステップにおいて実行する内部抽選処理の制御内容を示すフローチャートである。
本実施例の内部抽選処理では、まず、投入メダル枚数、すなわちBETカウンタの値、当該ゲームの遊技状態に応じて予め定められた投入メダル枚数である規定枚数、設定値ワーク1〜3の値を読み出し(Sg1)、Sg2のステップに進む。規定枚数は、通常遊技状態においては3枚、レギュラーボーナスの遊技状態においては1枚とされている。
Sg2のステップでは、Sg1のステップにて読み出した投入メダル枚数が、規定枚数か否かを判定し、投入メダル枚数が規定枚数であればSg4のステップに進み、投入メダル枚数が規定枚数でなければSg3のステップに進む。
Sg3のステップでは、投入メダル枚数が遊技状態に応じた規定枚数ではなく、RAM41cに格納されているデータが正常ではない可能性があるため、RAM異常を示すエラーコードをレジスタに格納し、図30に示すエラー処理に移行する。
Sg4のステップでは、Sg1のステップにて読み出した設定値ワーク1〜3の値に基づいて抽選に用いる設定値、すなわち設定値ワーク1に格納されている設定値が適正か否かを判定する設定値判定処理を行う。
設定値判定処理では、図37に示すように、設定値判定処理1(Sg51)、設定値判定処理2(Sg52)、設定値判定処理3(Sg53)を順次実行する。
Sg51のステップにおける設定値判定処理1では、図38に示すように、設定値ワーク1から読み出した値が1〜6の範囲か否か、すなわち今回のゲームの内部抽選に用いる設定値が適正な範囲の値か否かを判定し(Sg61)、設定値ワーク1から読み出した値が1〜6の範囲の値でなければ、RAM異常を示すエラーコードをレジスタに格納し(Sg62)、図30に示すエラー処理に移行し、設定値ワーク1から読み出した値が1〜6の範囲の値であれば、Sg52のステップにおける設定値判定処理2に進む。
Sg52のステップにおける設定値判定処理2では、図39に示すように、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致するか否か、すなわち今回のゲームの内部抽選に用いる設定値と、前回の設定変更時に設定された設定値と、が一致するか否かを判定し(Sg71)、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致しなければ、RAM異常を示すエラーコードをレジスタに格納し(Sg72)、図30に示すエラー処理に移行し、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致すれば、Sg53のステップにおける設定値判定処理3に進む。
Sg53のステップにおける設定値判定処理3では、図40に示すように、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致するか否か、すなわち今回のゲームの内部抽選に用いる設定値と、前回のゲームの内部抽選に用いた設定値と、が一致するか否かを判定し(Sg81)、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致しなければ、RAM異常を示すエラーコードをレジスタに格納し(Sg82)、図30に示すエラー処理に移行し、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致すれば、図36に示すフローチャートに復帰する。
このように設定値判定処理においては、今回のゲームの内部抽選に用いる設定値が、適正な範囲の値であるか否か、今回のゲームの内部抽選に用いる設定値と前回の設定変更時に設定された設定値とが一致するか否か、今回のゲームの内部抽選に用いる設定値と前回のゲームの内部抽選に用いた設定値とが一致するか否か、をそれぞれ判定することにより、今回のゲームの内部抽選に用いる設定値が適正な値であるか否かを判定し、少なくともいずれか1つの判定において設定値が適正な値ではないと判定された場合には、前述したRAM異常エラーを示すレジスタに格納してエラー処理に移行し、起動時にRAM41cのデータが正常ではないと判定された場合と同様に、RAM異常エラーによるエラー状態となり、ゲームの進行が不能化されるようになっている。
Sg5のステップでは、当該ゲームに用いる乱数を取得する乱数取得処理を行い、Sg6のステップに進む。乱数取得処理では、サンプリング回路43にサンプリング指令を出力し、乱数発生回路42が発生している乱数をラッチさせ、ラッチさせた乱数の値をI/Oポート41dから入力して、これを抽出し、抽出した乱数に対して所定の論理演算を行い、その結果を乱数として取得する。
Sg6のステップでは、状態番号が示す遊技状態において最初に抽選対象とする役番号をRAM41cに格納し、Sg7のステップに進む。Sg6のステップでは、状態番号が0の場合、すなわち通常遊技状態においていずれの特別役も持ち越されていない場合には、最初に抽選対象とする役番号として1(ビッグボーナス(1))を設定し、状態番号が1の場合、すなわち通常遊技状態においていずれかの特別役が持ち越されている場合には、最初に抽選対象とする役番号として10(リプレイ)を設定し、状態番号が2の場合、すなわちレギュラーボーナスの場合には、最初に抽選対象とする役番号として11(チェリー)を設定する。
Sg7のステップでは、抽選対象とする役番号が15であるか否か、すなわち抽選対象となる全ての役の抽選が終了したか否かを確認し、15である場合、すなわち抽選対象となる全ての役の抽選が終了している場合にはSg8のステップに進む。15でない場合にはSg9のステップに進む。
Sg8のステップでは、RAM41cにおいて一般役の当選フラグが格納される一般役格納ワークをクリアして、内部抽選処理を終了し、図32に示すフローチャートに復帰する。
Sg9のステップでは、処理対象の役番号に対応付けて、図4(b)の役別テーブルに登録されている共通フラグが1か否かを確認し、1である場合にはSg10のステップに進み、1でない場合にはSg11のステップに進む。
Sg10のステップでは、処理対象の役番号に対応付けて図4(b)の役別テーブルに登録されているROM41bの判定値数の格納領域のアドレス(図5参照)を読み出す。そして、このアドレスに格納されている判定値数を取得して、Sg12のステップに進む。
Sg11のステップでは、まず、RAM41cに格納されている設定値を読み出し、更に、処理対象の役番号と読み出した設定値に対応付けて、図4(b)の役別テーブルに登録されているROM41bの判定値数の格納領域のアドレスを読み出す。そして、このアドレスに格納されている判定値数を取得して、Sg12のステップに進む。
Sg12のステップでは、内部抽選用の乱数値に、Sg10またはSg11のステップにおいて取得した判定値数を加算し、加算の結果を新たな乱数値とし、Sg13のステップに進み、判定値数を内部抽選用の乱数値に加算したときにオーバーフローが生じたかを判定する。尚、オーバーフローの発生は、処理対象の役番号に該当する役が当選した旨を示している。そしてオーバーフローが生じた場合にはSg15のステップに進み。オーバーフローが生じなかった場合にはSg14のステップに進む。
Sg14のステップでは、処理対象の役番号に1を加算し、Sg7のステップに戻る。
Sg15のステップでは、役番号が1〜9であるか、すなわち特別役または特別役を含む役の組み合わせを示す役番号か否かを確認し、役番号が1〜9の場合にはSg16のステップに進み、役番号が1〜9でない場合にはSg17のステップに進む。
Sg16のステップでは、RAM41cにおいて特別役の当選フラグが格納される特別役格納ワークに、処理対象の役番号に対応する特別役の当選フラグを設定し、Sg17のステップでは、RAM41cの一般役格納ワークに、処理対象の役番号に対応する一般役の当選フラグを設定して、内部抽選処理を終了し、図32に示すフローチャートに復帰する。尚、Sg17のステップでは、役番号が1〜3の場合、一般役は当選していないため、この場合には、RAM41cの一般役格納ワークをクリアする。
図41は、CPU41aがSd3のステップにおいて実行するリール回転処理の制御内容を示すフローチャートである。
リール回転処理では、まず、前のゲームのリール回転開始時点からウェイトタイム(本実施例では、約4.1秒)が経過したか否かを判定し(Si1)、ウェイトタイムが経過していなければ、ウェイトタイムが経過するまで待機する。
そして、Si1のステップにおいてウェイトタイムが経過していれば、ウェイトタイムを新たに設定する(Si2)。
次いで、リールモータの回転開始時の設定を行い、リールの回転を開始させる(Si3)。そして、回転中のリール別に仮想滑りコマテーブルの滑りコマ数を設定する滑りコマ数設定処理を行い(Si4)、停止準備完了時の設定を行う(Si5)。これにより、停止操作を有効化させることが可能な状態となり、その後、後述するタイマ割込処理の原点通過時処理において、リールの定速回転が検出された時点で、停止操作が有効となる。
次いで、ストップスイッチ8L、8C、8Rのいずれかのストップスイッチの操作が検出されたか否かを判定し(Si6)、いずれのストップスイッチの操作も検出されていなければ、リール回転エラー(一定期間以上、リールセンサ33によりリール基準位置が検出されない場合に判定されるエラー)が発生したか否かを判定し(Si7)、リール回転エラーが発生していなければ、更に、投入エラー(メダルの投入が許可されている期間以外で、メダルの投入を検出した場合に判定されるエラー)が発生したか否か、及び払出エラー(メダルの払出が許可されている期間以外で、メダルの払出を検出した場合に判定されるエラー)が発生したか否かを判定し(Si8、Si9)、Si7〜Si9のステップにおいていずれのエラーの発生も判定されなければ、Si6のステップに戻る。
また、Si8のステップにおいて投入エラーの発生が判定された場合、またはSi9のステップにおいて払出エラーが判定された場合には、リール回転中の投入・払出エラーを示すエラーコードをレジスタに設定し(Si10)、図30に示すエラー処理に移行する(Si11)。そして、エラーが解除された場合には、再びSi6のステップに戻る。
また、Si7のステップにおいてリール回転エラーの発生が判定された場合には、リール回転エラーを示すエラーコードをレジスタに設定し(Si12)、図30に示すエラー処理に移行する(Si13)。これに伴い、リールの回転も一時的に停止する。そして、エラーが解除された場合には、再びSi3のステップに戻り、リールの回転が再開する。
また、Si6のステップにおいていずれかのストップスイッチの操作が検出された場合には、ストップスイッチに対応するリールモータにおける、その時点のリール基準位置からのステップ数(停止操作位置となるステップ数)を取得し、停止リールに対応するワークに設定した後(Si14)、停止操作に対応するリールの回転が停止するまで待機する(Si15)。
そして、停止操作に対応するリールの回転が停止すると、全てのリールが停止したか否かを判定し(Si16)、全てのリールが停止していなければ、Si4のステップに戻り、全てのリールが停止していれば、リール回転処理を終了して、図32のフローチャートに復帰する。
以上のようにリール回転処理では、リール2L、2C、2Rの回転が開始した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。尚、リール回転エラーの発生により、一時的にリールの回転が停止した場合でも、その後リール回転が再開した後、ストップスイッチ8L、8C、8Rの操作が検出されるまで、停止操作が未だ検出されていないリールの回転を継続し、ストップスイッチ8L、8C、8Rの操作が検出されたことを条件に、対応するリールに表示結果を停止させる制御を行うようになっている。
図42は、CPU41aがSi4のステップにおいて実行する滑りコマ数設定処理の制御内容を示すフローチャートである。
まず、滑りコマ数設定処理では、Si101のステップにおいて内部抽選の結果が、ベル、リプレイ、ボーナス+リプレイのいずれかであるかを判定し、ベル、リプレイ、ボーナス+リプレイ以外の結果であれば、Si102のステップに進み、ベル、リプレイ、ボーナス+リプレイのいずれかであれば、Si105のステップに進む。
Si102のステップでは、テーブルインデックスを参照し、内部抽選の結果(停止済みのリールの停止位置)に対応する停止制御テーブルの滑りコマ数データを選択し、選択した滑りコマ数データを展開して仮想滑りコマテーブルに滑りコマ数を格納する滑りコマ数データ展開処理を行った後、Si103のステップに進む。
Si103のステップでは、内部抽選の結果がボーナス+小役か否かを判定し、ボーナス+小役以外の結果であれば、そのまま滑りコマ数設定処理を終了し、図41のフローチャートに復帰し、ボーナス+小役であれば、Si104のステップに進む。
Si104のステップでは、停止操作位置毎に、滑りコマ数別の停止位置を検索するとともに、検索した停止位置の優先度と仮想滑りコマテーブルに格納されている滑りコマ数による停止位置の優先度とを比較し、検索した停止位置の優先度の方が高い場合には、仮想滑りコマテーブルの滑りコマ数を更新する滑りコマ数更新処理を行った後、滑りコマ数設定処理を終了し、図41のフローチャートに復帰する。
また、Si105のステップでは、停止操作位置毎に、0〜4の滑りコマ数による停止位置から当選役が入賞ライン上に揃う停止位置を検索し、検索によって取得した停止位置となる滑りコマ数を仮想滑りコマテーブルに格納する停止位置検索処理を行った後、滑りコマ数設定処理を終了し、図41のフローチャートに復帰する。
図43は、CPU41aがSi104のステップにおいて実行する滑りコマ数更新処理の制御内容を示すフローチャートである。
まず、滑りコマ数更新処理では、Si201のステップにおいて処理の対象とするリールを設定する。すなわち回転中のリールのうち未だ処理が済んでいないリールを対象リールとして設定し、Si202のステップに進む。
Si202のステップでは、処理の対象とする停止操作位置を示す停止操作位置ポインタを1に設定し、Si203のステップに進んで処理の対象とする滑りコマ数を示す滑りコマ数ポインタを0に設定し、Si204のステップに進む。
Si204のステップでは、停止操作位置ポインタが示す領域番号を停止操作位置として、滑りコマ数ポインタが示す滑りコマ数で停止する停止位置を取得し、Si205のステップに進み、取得した停止位置となった場合に、不正入賞が発生するか否かを判定する仮想入賞判定を行って、Si206のステップに進み、仮想入賞判定の結果、不正入賞となるか否かを判定する。
Si206のステップにおいて不正入賞でなければ、Si207のステップに進み、更に停止禁止位置となるか否かを判定する禁止位置判定を行って、Si208のステップに進み、禁止位置判定の結果、停止禁止位置となるか否かを判定する。
Si208のステップにおいて停止禁止位置ではなければ、Si210のステップに進み、Si206のステップにおいて不正入賞となると判定された場合、またはSi208のステップにおいて停止禁止位置となると判定された場合には、Si209のステップに進み、該当する停止操作位置の領域番号(停止操作位置ポインタが示す領域番号)及び滑りコマ数(滑りコマ数ポインタが示す滑りコマ数)に対応して停止禁止位置を示す停止禁止位置フラグを設定した後、Si210のステップに進む。
Si210のステップでは、滑りコマ数ポインタを1進めて、Si211のステップに進み、滑りコマ数ポインタが5であるか否かを判定し、滑りコマ数ポインタが5でなければ、Si204のステップに戻り、滑りコマ数ポインタが5であれば、すなわち0〜4の滑りコマ数全てについての判定が終了したと判定された場合には、Si212のステップに進む。
Si212のステップでは、仮想滑りコマ数テーブルにおいて該当するリール(対象リールとして設定されているリール)の該当する停止操作位置(停止操作位置ポインタが示す領域番号)に対応して格納されている滑りコマ数による停止位置の優先度と、0〜4の滑りコマ数別に取得した停止位置の優先度と、を仮想滑りコマ数テーブルに格納されている滑りコマ数に応じた順番(図12(a)に示す順番)で比較し、Si213のステップに進む。
Si213のステップでは、Si212の比較結果として滑りコマ数別に取得した停止位置の優先度の方が、仮想滑りコマ数テーブルに格納されている滑りコマ数による停止位置の優先度よりも高いか否かを判定し、仮想滑りコマ数テーブルに格納されている滑りコマ数による停止位置の優先度よりも高くなければ(優先度が同じ場合も含む)Si216のステップに進み、仮想滑りコマ数テーブルに格納されている滑りコマ数による停止位置の優先度よりも高ければ、Si214のステップに進む。
Si214のステップでは、更にSi213のステップにおいて優先度が高いと判定された停止位置が停止禁止位置か否か、すなわちこの停止位置となる滑りコマ数に対して停止禁止位置フラグが設定されているか否かを判定し、停止禁止位置であれば、Si216のステップに進み、停止禁止位置でなければ、Si215のステップに進む。
Si215のステップでは、仮想滑りコマ数テーブルにおいて該当するリール(対象リールとして設定されているリール)の該当する停止操作位置(停止操作位置ポインタが示す領域番号)に対応して格納されている滑りコマ数を、それよりも優先度の高いと判定された停止位置となる滑りコマ数に更新し、Si217のステップに進む。
Si216のステップでは、0〜4の全ての滑りコマ数別に取得した停止位置について比較したか否かを判定し、0〜4の全ての滑りコマ数別に取得した停止位置について比較が終了していればSi217のステップに進み、0〜4の全ての滑りコマ数別に取得した停止位置について比較が終了していなければSi212のステップに戻る。
Si217のステップでは、停止操作位置ポインタを1進めて、Si218のステップに進み、停止操作位置ポインタが22であるか否かを判定し、停止操作位置ポインタが22でなければ、Si203のステップに戻り、停止操作位置ポインタが22であれば、すなわち1〜21の領域番号全てについての判定が終了したと判定された場合には、Si219のステップに進む。
Si219のステップでは、未処理の回転中リールがあるか否かを判定し、未処理の回転中リールがあればSi201のステップに戻り、未処理の回転中リールがなければ、滑りコマ数更新処理を終了して、図42に示すフローチャートに復帰する。
図44は、CPU41aがSi107、Si112のステップにおいて実行する停止位置検索処理の制御内容を示すフローチャートである。
まず、停止位置検索処理では、Si301のステップにおいて処理の対象とするリールを設定する。すなわち回転中のリールのうち未だ処理が済んでいないリールを対象リールとして設定し、Si302のステップに進む。
Si302のステップでは、処理の対象とする停止操作位置を示す停止操作位置ポインタを1に設定し、Si303のステップに進んで処理の対象とする滑りコマ数を示す滑りコマ数ポインタを0に設定し、Si304のステップに進む。
Si304のステップでは、停止操作位置ポインタが示す領域番号を停止操作位置として、滑りコマ数ポインタが示す滑りコマ数で停止する停止位置を取得し、Si305のステップに進み、取得した停止位置となった場合に、不正入賞が発生するか否かを判定する仮想入賞判定を行って、Si306のステップに進み、仮想入賞判定の結果、不正入賞となるか否かを判定する。
Si306のステップにおいて不正入賞でなければ、Si307のステップに進み、更に停止禁止位置となるか否かを判定する禁止位置判定を行って、Si308のステップに進み、禁止位置判定の結果、停止禁止位置となるか否かを判定する。
Si308のステップにおいて停止禁止位置ではなければ、Si310のステップに進み、Si306のステップにおいて不正入賞となると判定された場合、またはSi308のステップにおいて停止禁止位置となると判定された場合には、Si309のステップに進み、該当する停止操作位置の領域番号(停止操作位置ポインタが示す領域番号)及び滑りコマ数(滑りコマ数ポインタが示す滑りコマ数)に対応して停止禁止位置を示す停止禁止位置フラグを設定した後、Si310のステップに進む。
Si310のステップでは、滑りコマ数ポインタを1進めて、Si311のステップに進み、滑りコマ数ポインタが5であるか否かを判定し、滑りコマ数ポインタが5でなければ、Si304のステップに戻り、滑りコマ数ポインタが5であれば、すなわち0〜4の滑りコマ数全てについての判定が終了したと判定された場合には、Si312のステップに進む。
Si312のステップでは、当選役に応じた順番(ベルであれば、4、3、2、1、0の順番、リプレイであれば、0、1、2、3、4の順番)で滑りコマ数別の停止位置を取得し、Si313のステップに進み、取得した停止位置となった場合に入賞ライン上に当選役が揃うか否かを判定する。
Si313のステップにおいて入賞ライン上に当選役が揃わなければSi315のステップに進み、入賞ライン上に当選役が揃うと判定された場合には、Si314のステップに進む。
Si314のステップでは、更にSi312で取得した停止位置が停止禁止位置か否か、すなわちこの停止位置となる滑りコマ数に対して停止禁止位置フラグが設定されているか否かを判定し、停止禁止位置であれば、Si315のステップに進み、停止禁止位置でなければ、Si316のステップに進む。
Si315のステップでは、0〜4の全ての滑りコマ数別に取得した停止位置について判定したか否かを判定し、0〜4の全ての滑りコマ数別に取得した停止位置について判定が終了していればSi316のステップに進み、0〜4の全ての滑りコマ数別に取得した停止位置について判定が終了していなければSi312のステップに戻る。
Si316のステップでは、仮想滑りコマ数テーブルにおいて該当するリール(対象リールとして設定されているリール)の該当する停止操作位置(停止操作位置ポインタが示す領域番号)に対応してSi312のステップにおいて最後に取得した停止位置となる滑りコマ数を格納し、Si317のステップに進む。尚、最後に取得した停止位置となる滑りコマ数が停止禁止位置である場合には、それよりも前に取得した停止位置となる滑りコマ数のうち停止禁止位置ではない滑りコマ数を格納する。
Si317のステップでは、停止操作位置ポインタを1進めて、Si318のステップに進み、停止操作位置ポインタが22であるか否かを判定し、停止操作位置ポインタが22でなければ、Si303のステップに戻り、停止操作位置ポインタが22であれば、すなわち1〜21の領域番号全てについての判定が終了したと判定された場合には、Si319のステップに進む。
Si319のステップでは、未処理の回転中リールがあるか否かを判定し、未処理の回転中リールがあればSi301のステップに戻り、未処理の回転中リールがなければ、停止位置検索処理を終了して、図42に示すフローチャートに復帰する。
図45は、CPU41aがSd4のステップにおいて実行する入賞判定処理の制御内容を示すフローチャートである。
本実施例における入賞判定処理は、主に3つの処理から構成される。第1の処理は、当該ゲームにおいて導出表示されたリール2L、2C、2Rの表示結果に基づいて入賞図柄フラグを設定する処理である。第2の処理は、当選フラグと入賞図柄フラグに基づいて異常入賞を判定する処理である。第3の処理は、入賞図柄フラグに基づく入賞時の処理である。
Sj1のステップは、当該ゲームにおいて導出表示されたリール2L、2C、2Rの表示結果に基づいて入賞図柄フラグを設定する処理である。
CPU41aは、まず入賞図柄判定処理を実施して(Sj1)、Sj2のステップに進む。尚、入賞図柄判定処理においては、Bレジスタに入賞図柄フラグの上位8ビットが、Cレジスタに入賞図柄フラグの下位8ビットが格納される。また、Eレジスタには払い出しメダル枚数が格納される。
以上のように、Sj1のステップにより、Bレジスタに入賞図柄フラグの上位8ビットが、Cレジスタに入賞図柄フラグの下位8ビットが格納される。
続いて実施されるSj2〜Sj10及びSj17のステップは、内部当選フラグと入賞図柄フラグに基づいて異常入賞を判定する処理である。
Sj2のステップでは、内部当選フラグ格納ワーク(iwin_flag)の値(当選フラグ)をHLレジスタに格納し、Sj3のステップに進んでLレジスタの値である内部当選フラグの下位8ビットをAレジスタに格納し、Sj4のステップに進んでAレジスタの全ビットを反転する。つまり、各ビットを0なら1へ、1なら0へと反転させて、異常入賞判定用フラグに変換し、Sj5のステップに進む。
Sj5のステップでは、Cレジスタの値である入賞図柄フラグの下位8ビットと、Aレジスタの値の論理積(AND)を算出して、その結果をAレジスタに格納して、Sj6のステップに進み、Aレジスタが0でないかを判定し、0でない場合にはSj17のステップにジャンプし、0である場合にはSj7のステップに進む。
Sj7のステップでは、Hレジスタの値である内部当選フラグの上位8ビットをAレジスタに格納し、Sj8のステップに進んでAレジスタの全ビットを反転する。つまり、各ビットを0なら1へ、1なら0へと反転させて、異常入賞判定用フラグに変換し、Sj9のステップに進む。
Sj9のステップでは、Bレジスタの値である入賞図柄フラグの上位8ビットと、Aレジスタの値の論理積(AND)を算出して、その結果をAレジスタに格納して、Sj10のステップに進み、Aレジスタが0でないかを判定し、0でない場合にはSj17のステップにジャンプし、0である場合にはSj11のステップに進む。
Sj17のステップは、Sj6及びSj10のステップにおいて、Aレジスタが0でないと判定された場合、すなわち当該ゲームにおいて許容されている入賞以外の入賞が入賞した場合のジャンプ先であり、異常入賞エラーを示すエラーコードをレジスタに設定して、図30に示すエラー処理に移行する。
以上のように、Sj2〜Sj10及びSj17のステップにより、内部当選フラグと入賞図柄フラグに基づいて異常入賞が判定される。
続いて実施されるSj11〜Sj18(Sj17除く)のステップは、入賞図柄フラグに基づく入賞時の処理である。
Sj11のステップでは、Cレジスタの値である入賞図柄フラグの下位8ビットをAレジスタに格納し、Sj12のステップに進んで、Bレジスタの値である入賞図柄フラグの上位8ビットと、Aレジスタの値の論理和(OR)を算出して、その結果をAレジスタに格納し、Sj13のステップに進む。
Sj13のステップでは、Aレジスタが0であるかを判定し、0である場合には、つまりいずれの役も入賞していない場合には処理を終了し、0でない場合には、つまりいずれかの役が入賞している場合にはSj14のステップに進む。
Sj14のステップでは、Cレジスタの値である入賞図柄フラグの下位8ビットに対して、リプレイに該当するビット(第6ビット)の値を検査して、値が0の場合には、つまりリプレイ以外の役が入賞した場合にはゼロフラグに1をセットし、値が1の場合には、つまりリプレイが入賞した場合にはゼロフラグに0をセットする。そして、Sj15のステップに進み、ゼロフラグが1であるかを判定し、1である場合には、Sj18のステップにジャンプし、1でない場合にはSj16のステップに進む。
Sj16のステップでは、リプレイゲームを示すリプレイゲーム中フラグを設定する等のリプレイが入賞したときの処理を実施して、処理を終了する。
Sj18のステップは、Sj15のステップにおいて、リプレイ以外の役が入賞した旨を確認した場合のジャンプ先であり、払い出し枚数の算出等のリプレイ以外の役が入賞したときに行われる入賞時処理を実施して、処理を終了する。
以上のように、Sj2〜Sj10及びSj17のステップにより、入賞図柄フラグに基づく入賞時の処理が実施される。
図46は、CPU41aがSj18のステップにおいて実行する入賞時処理の制御内容を示すフローチャートである。
入賞時処理では、まず、図4(b)に示す役別テーブルを参照し、当該ゲームの遊技状態(状態番号)及び入賞図柄フラグが示す役に対応するメダルの払出枚数を設定し(Sj21)、Sj22のステップに進む。
Sj22のステップにおいては、入賞図柄フラグに基づいてビッグボーナス(1)またはビッグボーナス(2)が入賞したか否かを判定し、ビッグボーナス(1)もビッグボーナス(2)も入賞していなければ、Sj25のステップに進む。ビッグボーナス(1)またはビッグボーナス(2)が入賞していれば、ビッグボーナス中を示すビッグボーナス中フラグをRAM41cに設定するとともに、RAM41cの特別役格納ワークをクリア(00Hを格納する)し(Sj23)、Sj24のステップに進み、RAM41cにおいてビッグボーナス中のメダルの払出総数が格納されるビッグボーナス中払出数カウンタの値を初期化(0とする)し(Sj24)、Sj25のステップに進む。
Sj25のステップにおいては、入賞図柄フラグに基づいてレギュラーボーナスが入賞したか否かを判定する。Sj25のステップにおいてレギュラーボーナスが入賞していなければ、入賞時処理を終了して、図45のフローチャートに復帰する。Sj25のステップにおいてレギュラーボーナスが入賞していれば、レギュラーボーナス中を示すレギュラーボーナス中フラグをRAM41cに設定するとともに、RAM41cの特別役格納ワークをクリア(00Hを格納する)し(Sj26)、レギュラーボーナスゲーム数カウンタの値及びレギュラーボーナス中の入賞回数が格納されるレギュラーボーナス中入賞カウンタの値を初期化した後(Sj27)、入賞時処理を終了して、図45のフローチャートに復帰する。
図47及び図48は、CPU41aがSd6のステップにおいて実行するゲーム終了時処理の制御内容を示すフローチャートである。
ゲーム終了時処理では、まず、Sk1のステップにおいてレギュラーボーナス中か否かを判定する。Sk1のステップでは、RAM41cにレギュラーボーナス中フラグが設定されており、かつRB中信号がONの状態である場合にレギュラーボーナス中と判定する。
Sk1のステップにおいてレギュラーボーナス中でなければ、Sk5のステップに進む。Sk1のステップにおいてレギュラーボーナス中であれば、レギュラーボーナスゲーム数カウンタの値を1減算し、入賞が発生していればレギュラーボーナス中入賞カウンタの値を1加算し(Sk2)、レギュラーボーナスの終了条件が成立したか否か、すなわちレギュラーボーナスゲーム数カウンタの値が0、もしくはレギュラーボーナス中入賞カウンタの値が8であるか否かを判定する(Sk3)。Sk3のステップにおいてレギュラーボーナスの終了条件が成立していなければ、Sk5のステップに進み、レギュラーボーナスの終了条件が成立していれば、RAM41cに設定されているレギュラーボーナス中フラグをクリアして(Sk4)、Sk5のステップに進む。
Sk5のステップでは、ビッグボーナス中か否かを判定する。Sk5のステップでは、RAM41cにビッグボーナス中フラグが設定されており、かつBB中信号がONの状態である場合にビッグボーナス中と判定する。
Sk5のステップにおいてビッグボーナス中でなければ、Sk12のステップに進み、ビッグボーナス中であれば、ビッグボーナス中払出数カウンタの値に、当該ゲームのメダルの払出枚数を加算し(Sk6)、ビッグボーナスの終了条件が成立しているか否か、すなわちビッグボーナス中払出数カウンタの値が465枚を超えているか否かを判定する(Sk7)。Sk7のステップにおいてビッグボーナスの終了条件が成立していなければ、Sk9のステップに進み、ビッグボーナスの終了条件が成立していれば、RAM41cに設定されているビッグボーナス中フラグ及びレギュラーボーナス中フラグをクリアし(Sk8)、Sk12のステップに進む。
Sk9のステップにおいては、RAM41cにレギュラーボーナス中フラグが設定されていない状態であるか否か、すなわちビッグボーナス中でかつレギュラーボーナスが未作動の状態であるか否かを判定する。Sk9のステップにおいてレギュラーボーナス中フラグが設定されている状態であれば、Sk12のステップに進み、Sk9のステップにおいてレギュラーボーナス中フラグが設定されていない状態であれば、レギュラーボーナス中を示すレギュラーボーナス中フラグ及びレギュラーボーナスの作動開始を示すレギュラーボーナス作動開始フラグをRAM41cに設定し(Sk10)、レギュラーボーナスゲーム数カウンタの値及びレギュラーボーナス中の入賞回数が格納されるレギュラーボーナス中入賞カウンタの値を初期化した後(Sk11)、Sk12のステップに進む。
Sk12のステップでは、外部出力信号のうちRB中信号がONの状態か否かを判定する。Sk12のステップにおいてRB中信号がONの状態でなければ、Sk16のステップに進み、RB中信号がONの状態であれば、RAM41cにレギュラーボーナス中フラグが設定されているか否かを判定する(Sk17)。Sk17のステップにおいてレギュラーボーナス中フラグが設定されていない場合、すなわちレギュラーボーナスが終了し、その後もレギュラーボーナスが再開しない場合には、Sk15のステップに進む。Sk13のステップにおいてレギュラーボーナス中フラグが設定されている場合には、RAM41cにレギュラーボーナス作動開始フラグが設定されているか否かを判定する(Sk14)。Sk14のステップにおいてレギュラーボーナス作動開始フラグが設定されている場合、すなわちビッグボーナス中にレギュラーボーナスが再作動する場合には、Sk15のステップに進み、Sk14のステップにおいてレギュラーボーナス作動開始フラグが設定されていない場合、すなわちレギュラーボーナス中でかつレギュラーボーナスの終了条件も成立していない場合には、Sk16のステップに進む。Sk15のステップでは、RB中信号をOFFの状態としてSk16のステップに進む。
Sk16のステップでは、RAM41cにレギュラーボーナス作動開始フラグが設定されているか否かを判定する。Sk16のステップにおいてレギュラーボーナス作動開始フラグが設定されていなければ、Sk19のステップに進み、Sk16のステップにおいてレギュラーボーナス作動開始フラグが設定されている場合、すなわち次ゲームからレギュラーボーナスが開始する場合には、RAM41cのレギュラーボーナス作動開始フラグをクリアし(Sk17)、RB中信号の出力待ち時間が経過するまで待機し(Sk18)、出力待ち時間が経過した時点でSk19のステップに進む。
Sk19のステップでは、RAM41cにビッグボーナス中フラグが設定されているか否かを判定する。Sk19のステップにおいてビッグボーナス中フラグが設定されていなければ、Sk25のステップに進み、Sk19のステップにおいてビッグボーナス中フラグが設定されていれば、外部出力信号のうちBB中信号がONの状態か否かを判定する(Sk20)。Sk20のステップにおいてBB中信号がONの状態である場合、すなわちビッグボーナス中であり、かつ次回のゲームがビッグボーナスの開始ゲームではない場合には、Sk25のステップに進み、Sk20のステップにおいてBB中信号がONの状態でない場合、すなわち次回のゲームからビッグボーナスが開始する場合には、外部出力信号のうちBB中信号をONの状態とし(Sk21)、BB入賞時演出の演出待ち時間をレジスタに設定し(Sk22)、精算スイッチ10の操作の検出を有効化した後(Sk23)、Sk22のステップにおいて設定された演出待ち時間が経過するまで待機する演出待ち処理を行う(Sk24)。そして、演出待ち処理の終了後、Sk25のステップに進む。
演出待ち処理では、図49に示すように、レジスタに設定された演出待ち時間をRAM41cの汎用時間カウンタに設定し(Sm1)、精算スイッチ10の操作が検出されたか否かを判定し(Sm2)、精算スイッチ10の操作が検出されていなければ、Sm4のステップに進み、精算スイッチ10の操作が検出されていれば、図35に示す精算処理を行い(Sm3)、その後、Sm4のステップに進む。Sm3のステップでは、汎用時間カウンタに設定された演出待ち時間が経過したか否かを判定し、演出待ち時間が経過していなければ、Sm2のステップに戻り、演出待ち時間が経過していれば、演出待ち処理を終了し、元の処理に復帰する。
Sk25のステップでは、RAM41cにレギュラーボーナス中フラグが設定されているか否かを判定する。Sk25のステップにおいてレギュラーボーナス中フラグが設定されていなければ、Sk28のステップに進み、Sk25のステップにおいてレギュラーボーナス中フラグが設定されていれば、外部出力信号のうちRB中信号がONの状態か否かを判定する(Sk26)。Sk26のステップにおいてRB中信号がONの状態である場合、すなわちレギュラーボーナス中であり、かつ次回のゲームがレギュラーボーナスの開始ゲームではない場合には、Sk28のステップに進み、Sk26のステップにおいてRB中信号がONの状態でない場合、すなわち次回のゲームからレギュラーボーナスが開始する場合には、外部出力信号のうちRB中信号をONの状態とし(Sk27)、Sk28のステップに進む。
Sk28のステップでは、外部出力信号のうちBB中信号がONの状態か否かを判定する。Sk28のステップにおいてBB中信号がONの状態でなければ、Sk46のステップに進み、Sk28のステップにおいてBB中信号がONの状態であれば、RAM41cにビッグボーナス中フラグが設定されているか否かを判定する(Sk29)。Sk29のステップにおいてビッグボーナス中フラグが設定がされている場合、すなわちビッグボーナスが終了しない場合には、Sk46のステップに進み、Sk29のステップにおいてビッグボーナス中フラグが設定されていない場合、すなわちビッグボーナスが終了する場合には、外部出力信号のうちBB中信号をOFFの状態とし(Sk30)、エンディング演出の演出待ち時間をレジスタに設定し(Sk31)、精算スイッチ10の操作の検出を有効化した後(Sk32)、Sk31のステップにおいて設定された演出待ち時間が経過するまで待機する演出待ち処理(図49参照)を行う(Sk33)。Sk33のステップにおける演出待ち処理の終了後、RAM41cの未使用領域及び未使用スタック領域に加えて一般ワークを初期化する初期化2を行った後(Sk34)、Sk35のステップに進む。
Sk35のステップでは、自動精算機能が有効に設定されているか否かを判定する。Sk35のステップにおいて自動精算機能が有効に設定されていなければ、Sk37のステップに進み、Sk35のステップにおいて自動精算機能が有効に設定されていれば、図35に示す精算処理を行い(Sk36)、その後、Sk37のステップに進む。
Sk37のステップでは、打止機能が有効に設定されているか否かを判定する。Sk37のステップにおいて打止機能が有効に設定されていなければ、Sk46のステップに進み、Sk37のステップにおいて打止機能が有効に設定されていれば、打止状態を示す打止コードをレジスタに設定し(Sk38)、レジスタに格納されている打止コードを遊技補助表示器12に表示する(Sk39)。そして、リセット/設定スイッチ38の操作が検出されているか否かを判定し(Sk40)、リセット/設定スイッチ38の操作が検出されていなければ、更にリセットスイッチ23の操作が検出されているか否かを判定し(Sk41)、リセットスイッチ23の操作も検出されていなければ、更に精算スイッチ10の操作が検出されているか否かを判定し(Sk42)、精算スイッチ10の操作も検出されていなければ、Sk40のステップに戻る。Sk40のステップにおいてリセット/設定スイッチ38の操作が検出された場合、Sk41のステップにおいてリセットスイッチ23の操作が検出された場合には、Sk44のステップに進み、Sk42のステップにおいて精算スイッチ10の操作が検出された場合には、図35に示す精算処理を行い(Sk43)、Sk38のステップに戻る。
Sk44のステップでは、レジスタに格納されている打止コードをクリアする。そして、遊技補助表示器12の表示状態をクリアして(Sk45)、Sk46のステップに進む。
Sk46のステップでは、RAM41cの未使用領域及び未使用スタック領域を初期化する初期化4を行った後、ゲーム終了時処理を終了し、図32に示すフローチャートに復帰する。
以上のように、ゲーム終了時処理では、ビッグボーナス中にレギュラーボーナスが未作動か否かの判定を1ゲーム毎に行い、ビッグボーナス中にレギュラーボーナスが未作動の場合には、レギュラーボーナスを作動させるようになっている。
また、レギュラーボーナスが未作動か否かの判定を行う前に、ビッグボーナスの終了条件が成立したか否かの判定を行い、当該判定においてビッグボーナスの終了条件が成立していない場合に、レギュラーボーナスが未作動か否かの判定を行い、未作動の場合には、レギュラーボーナスを作動させるようになっている。
また、レギュラーボーナスを作動させる際には、レギュラーボーナス中を示すRB中信号の出力待ち時間が経過するまでRB中信号を停止した状態で待機し、出力待ち時間が経過した時点で、RB中信号の出力を開始するようになっており、ビッグボーナス中に連続してレギュラーボーナスを作動させる場合でも、RB中信号の出力が停止し、この状態で出力待ち時間が経過した時点で、再度RB中信号の出力が再開するようになっている。
また、BB入賞時演出やエンディング演出の演出待ち時間が経過するまでの期間においては、精算スイッチ10の操作の検出が有効化され、この間に精算スイッチ10の操作が検出されると、クレジットの精算制御が行われることとなる。また、打止状態においても精算スイッチ10の操作の検出が有効化され、この間に精算スイッチ10の操作が検出された場合にも、クレジットの精算制御が行われることとなる。
図50及び図51は、CPU41aが割込3の発生に応じて、すなわち0.56msの間隔で起動処理やゲーム処理に割り込んで実行するタイマ割込処理(メイン)の制御内容を示すフローチャートである。
タイマ割込処理においては、まず、割込を禁止する(Sn1)。すなわち、タイマ割込処理の実行中に他の割込処理が実行されることを禁止する。そして、使用中のレジスタをスタック領域に退避する(Sn2)。
次いで、4種類のタイマ割込1〜4から当該タイマ割込処理において実行すべきタイマ割込を識別するための分岐用カウンタを1進める(Sn3)。Sn3のステップでは、分岐用カウンタ値が0〜2の場合に1が加算され、カウンタ値が3の場合に0に更新される。すなわち分岐用カウンタ値は、タイマ割込処理が実行される毎に、0→1→2→3→0・・・の順番でループする。
次いで、分岐用カウンタ値を参照して2または3か、すなわちタイマ割込3またはタイマ割込4かを判定し(Sn4)、タイマ割込3またはタイマ割込4ではない場合、すなわちタイマ割込1またはタイマ割込2の場合には、リールモータ32L、32C、32Rの始動時または定速回転中か否かを確認し、リールモータ32L、32C、32Rの始動時または定速回転中であれば、後述するSn8のモータステップ処理において変更した位相信号データや後述するSn23の最終停止処理において変更した位相信号データを出力するモータ位相信号出力処理を実行する(Sn5)。
次いで、分岐用カウンタ値を参照して1か否か、すなわちタイマ割込2か否かを判定し(Sn6)、タイマ割込2ではない場合、すなわちタイマ割込1の場合には、リールモータ32L、32C、32Rの始動時のステップ時間間隔の制御を行うリール始動処理(Sn7)、リールモータ32L、32C、32Rの位相信号データの変更を行うモータステップ処理(Sn8)、リールモータ32L、32C、32Rの停止後、一定時間経過後に位相信号を1相励磁に変更するモータ位相信号スタンバイ処理(Sn9)を順次実行した後、Sn2においてスタック領域に退避したレジスタを復帰し(Sn20)、Sn1のステップにおいて禁止した割込を許可して(Sn21)、割込前の処理に戻る。
また、Sn6のステップにおいてタイマ割込2の場合には、各種表示器をダイナミック点灯させるLEDダイナミック表示処理(Sn10)、各種LED等の点灯信号等のデータを出力ポートへ出力する制御信号等出力処理(Sn11)、各種ソフトウェア乱数を更新する乱数更新処理(Sn12)、各種時間カウンタを更新する時間カウンタ更新処理(Sn13)、コマンドキューに格納されたコマンドを演出制御基板90に対して送信するコマンド送信処理(Sn14)、外部出力信号を更新する外部出力信号更新処理(Sn15)を順次実行した後、Sn2においてスタック領域に退避したレジスタを復帰し(Sn20)、Sn1のステップにおいて禁止した割込を許可して(Sn21)、割込前の処理に戻る。
また、Sn4のステップにおいてタイマ割込3またはタイマ割込4であれば、更に、分岐用カウンタ値を参照して3か否か、すなわちタイマ割込4か否かを判定し(Sn16)、タイマ割込4でなければ、すなわちタイマ割込3であれば、入力ポートから各種スイッチ類の検出データを入力するポート入力処理(Sn17)、回転中のリール2L、2C、2Rの原点通過(リール基準位置の通過)をチェックし、リール回転エラーの発生を検知するとともに、停止準備が完了しているか(停止準備完了コードが設定されているか)を確認し、停止準備が完了しており、かつ定速回転中であれば、回転中のリールに対応するストップスイッチの操作を有効化する原点通過時処理(Sn18)、各種スイッチ類の検出信号に基づいてこれら各種スイッチが検出条件を満たしているか否かを判定するスイッチ入力判定処理(Sn19)を順次実行した後、Sn2においてスタック領域に退避したレジスタを復帰し(Sn20)、Sn1のステップにおいて禁止した割込を許可して(Sn21)、割込前の処理に戻る。
また、Sn16のステップにおいてタイマ割込4であれば、ストップスイッチ8L、8C、8Rの検出、または自動停止制御に伴って停止リールのワークに停止操作位置が格納されたときに、停止リールのワークに格納された停止操作位置から停止位置を決定し、何ステップ後に停止すれば良いかを算出する停止スイッチ処理(Sn22)、停止スイッチ処理で算出された停止までのステップ数をカウントして、停止する時期になったら2相励磁によるブレーキを開始する停止処理(Sn23)、停止処理においてブレーキを開始してから一定時間後に3相励磁とする最終停止処理(Sn24)を順次実行した後、Sn2においてスタック領域に退避したレジスタを復帰し(Sn20)、Sn1のステップにおいて禁止した割込を許可して(Sn21)、割込前の処理に戻る。
図52は、CPU41aが前述したタイマ割込処理のタイマ割込4内において実行する停止スイッチ処理の制御内容を示すフローチャートである。
停止スイッチ処理では、まず、左、中、右の順番で全てのリールについて、該当するリールのワークに停止操作位置が設定されているか否か、すなわち停止操作が検出されたか、或いは自動停止により停止が指示されたかを判定し(Sp1、Sp2)、全てのリールについて停止操作が検出されていないか、停止が指示されていなければ、停止スイッチ処理を終了し、図51のフローチャートに復帰する。
また、Sp1のステップにおいて、いずれかのリールの停止操作が検出されている場合もしくはリールの停止が指示されている場合には、Sp3のステップに進む。
Sp3のステップでは、当該リールに対応する仮想滑りコマテーブルを参照し、停止リールに対応するワークに設定されている停止操作位置のステップ数を含む領域番号から、停止位置となる領域番号を特定し、Sp4のステップに進み、現在のリール基準位置からのステップ数から、Sp3のステップにおいて特定した停止位置までに要するステップ数を算出し、算出したステップ数を設定した後、停止スイッチ処理を終了し、図51のフローチャートに復帰する。
図53は、CPU41aが割込2の発生に応じて、すなわち電断検出回路48からの電圧低下信号が入力されたときに起動処理やゲーム処理に割り込んで実行する電断割込処理の制御内容を示すフローチャートである。
電断割込処理においては、まず、割込を禁止する(Sq1)。すなわち電断割込処理の開始にともなってその他の割込処理が実行されることを禁止する。次いで、使用している可能性がある全てのレジスタをスタック領域に退避する(Sq2)。尚、前述したIレジスタ及びIYレジスタの値は使用されているが、起動時の初期化に伴って常に同一の固定値が設定されるため、ここでは保存されない。
次いで、入力ポートから電圧低下信号の検出データを取得し、電圧低下信号が入力されているか否かを判定する(Sq3)。この際、電圧低下信号が入力されていなければ、Sq2においてスタック領域に退避したレジスタを復帰し(Sq4)、Sq1のステップにおいて禁止した割込を許可して(Sq5)、割込前の処理に戻る。
また、Sq3のステップにおいて電圧低下信号が入力されていれば、破壊診断用データ(本実施例では、5A(H))をセットして(Sq6)、全ての出力ポートを初期化する(Sq7)。次いでRAM41cの全ての格納領域(未使用領域及び未使用スタック領域を含む)の排他的論理和が0になるようにRAMパリティ調整用データを計算してセットし(Sq8)、RAM41cへのアクセスを禁止する(Sq9)。
そして、電圧低下信号が入力されているか否かの判定(Sq10、尚、Sq10は、Sq3と同様の処理である)を除いて、何らの処理も行わないループ処理に入る。すなわち、そのまま電圧が低下すると内部的に動作停止状態になる。よって、電断時に確実にCPU41aは動作停止する。また、このループ処理において、電圧が回復し、電圧低下信号が入力されない状態となると、前述した起動処理が実行され、RAMパリティが0となり、かつ破壊診断用データが正常であれば、元の処理に復帰することとなる。
尚、本実施例では、RAM41cへのアクセスを禁止した後、電圧低下信号の出力状況を監視して、電圧低下信号が入力されなくなった場合に電圧の回復を判定し、起動処理へ移行するようになっているが、ループ処理において何らの処理も行わず、ループ処理が行われている間に、電圧が回復し、リセット回路49からリセット信号が入力されたことに基づいて、起動処理へ移行するようにしても良い。
次に、演出制御基板90に搭載されたサブ制御部91のCPU91aが実行する各種制御内容を、図54〜図57のフローチャートに基づいて以下に説明する。
CPU91aは、サブ制御部91にリセット回路95からリセット信号が入力されると、図54に示す起動処理(サブ)を行う。
起動処理(サブ)では、内蔵デバイスや周辺IC、割込モード、スタックポインタ等を初期化した後(Ss1)、RAM91cへのアクセスを許可する(Ss2)。そして、RAM91cの全ての格納領域のRAMパリティを計算し(Ss3)、RAMパリティが0か否かを判定する(Ss4)。
RAM91cのデータが正常であれば、RAMパリティが0になるはずであり、Ss4のステップにおいてRAMパリティが0であれば、RAM91cに格納されているデータが正常であるので、Ss5のステップに進み、電断前の演出状態を復帰させる。Ss5のステップでは、電断前にBB入賞時演出またはエンディング演出を実行していたか否かを判定し、BB入賞時演出またはエンディング演出を実行していた場合には、BB入賞時演出またはエンディング演出が最終段階に到達していたか否かを判定し(Ss6)、最終段階に到達していた場合には、最終段階の制御パターンを設定した後(Ss7)、設定された制御パターンに従って、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED等の各種演出装置の制御を行う演出制御処理を実行し(Ss9)、割込を許可して(Ss10)、ループ処理に移行する。
また、Ss5のステップにおいて電断前にBB入賞時演出またはエンディング演出を実行していなかった場合、またはSs6のステップにおいてBB入賞時演出またはエンディング演出が最終段階に到達していた場合には、電断前に最後に実行していた制御パターンを設定した後(Ss8)、設定された制御パターンに従って、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED等の各種演出装置の制御を行う演出制御処理を実行し(Ss9)、割込を許可して(Ss10)、ループ処理に移行する。
また、Ss4のステップにおいてRAMパリティが0でなければ、RAM91cに格納されているデータが正常ではないので、RAM91cを初期化した後(Ss11)、待機パターンを制御パターンとして設定した後(Ss12)、設定された制御パターンに従って、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED等の各種演出装置の制御を行う演出制御処理を実行し(Ss9)、割込を許可して(Ss10)、ループ処理に移行する。
図55は、CPU91aが内部クロックのカウントに基づいて1.12msの間隔で実行するタイマ割込処理(サブ)の制御内容を示すフローチャートである。
タイマ割込処理(サブ)においては、まず、バッファにコマンドが格納されているか否かを判定する(St1)。バッファにコマンドが格納されていなければ、St6のステップに進み、バッファにコマンドが格納されていれば、バッファからコマンドを取得し(St2)、St3のステップに進む。
St3のステップでは、受信したコマンドが内部当選コマンドの場合に、連続演出用の演出パターンがRAM91cに既に設定されているか否かを判定し、連続演出用の演出パターンが設定されていなければ、ROM91bに格納されている演出テーブルを参照し、内部当選コマンドが示す内部抽選の結果に応じた選択率にて演出パターンを選択し、選択した演出パターンを当該ゲームの演出パターンとしてRAM91cに設定する演出パターン選択処理を実行し、St4のステップに進む。
St4のステップでは、受信したコマンドに応じた処理を行うとともに、ROM91bに格納されている制御パターンテーブルを参照し、RAM91cに設定されている演出パターン及び受信したコマンドに対応して登録されている制御パターンを読み出してRAM91cに設定する制御パターン設定処理を実行し、St5のステップに進む。
St5のステップでは、St5のステップにおいて設定された制御パターンに従って、液晶表示器51、演出効果LED52、スピーカ53、54、リールLED等の各種演出装置の制御を行う演出制御処理を実行し、St6のステップに進む。
St6のステップでは、RAM91cの乱数カウンタ等の各種カウンタの値を更新する処理を行った後、St7のステップに進み、起動時にRAM91cにバックアップされているデータの内容が正常であるか否かを確認できるように、RAM91cの全ての格納領域の排他的論理和が0になるようにRAMパリティ調整用データを計算してセットし、タイマ割込処理(サブ)を終了する。
すなわちCPU91aは、メイン制御部41のCPU41aのように電断検出時にRAMパリティ調整用データをセットするのではなく、定期的に実行されるタイマ割込処理(サブ)毎に、RAMパリティ調整用データをセットし、いつ電断しても、復旧時にRAM91cにバックアップされているデータの内容が正常であるか否かを判定できるようになっている。
図56及び図57は、CPU91aがタイマ割込処理(サブ)のSt4のステップにおいて実行する制御パターン設定処理の制御内容を示すフローチャートである。
制御パターン設定処理では、まず、受信したコマンドが設定開始コマンドであるか否かを判定する(Sy1)。そして、受信したコマンドが設定開始コマンドであれば、設定中報知パターンを制御パターンとして設定し(Sy1)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
Sy1のステップにおいて、受信したコマンドが設定開始コマンドではない場合には、受信したコマンドが初期化コマンドであるか否かを判定する(Sy3)。そして受信したコマンドが初期化コマンドであれば、RAM91cの全ての領域を初期化した後(Sy4)、前述した待機パターンを制御パターンとして設定し(Sy5)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
Sy3のステップにおいて、受信したコマンドが初期化コマンドではない場合には、受信したコマンドが待機コマンドであるか否かを判定する(Sy6)。そして受信したコマンドが待機コマンドであれば、待機パターンを制御パターンとして設定し(Sy7)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
Sy6のステップにおいて、受信したコマンドが待機コマンドではない場合には、受信したコマンドが打止コマンドであるか否かを判定する(Sy8)。そして受信したコマンドが打止コマンドであれば、更に、打止状態の開始(発生)を示す打止コマンドか否かを判定し(Sy9)、打止状態の開始を示す打止コマンドであれば、打止報知パターンを制御パターンとして設定し(Sy10)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。一方、打止状態の開始を示す打止コマンドでない場合、すなわち打止状態の解除を示す打止コマンドであれば、待機パターンを制御パターンとして設定し(Sy7)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
Sy8のステップにおいて、受信したコマンドが打止コマンドではない場合には、受信したコマンドがエラーコマンドであるか否かを判定する(Sy11)。そして受信したコマンドがエラーコマンドであれば、更に、エラー状態の発生を示すエラーコマンドか否かを判定し(Sy12)、エラー状態の発生を示すエラーコマンドであれば、現在設定されている制御パターンを一時的にスタックに退避し(Sy13)、エラー報知パターンを制御パターンとして設定し(Sy14)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。一方、エラー状態の発生を示すエラーコマンドでない場合、すなわちエラー状態の解除を示すエラーコマンドであれば、Sy13のステップ、すなわち当該エラーの発生時にスタックに退避していた制御パターンを設定し(Sy15)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
Sy11のステップにおいて、受信したコマンドがエラーコマンドではない場合には、受信したコマンドが払出開始コマンドであるか否かを判定する(Sy16)。そして受信したコマンドが払出開始コマンドであれば、払出パターンをサブパターンとして設定し(Sy17)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。サブパターンは、実行中の演出の制御パターンが設定される領域とは別の領域に設定される制御パターンであり、実行中の演出の制御パターンと同時並行して演出を実行する際に、実行中の演出の制御パターンとは別個に設定される制御パターンである。すなわち通常であれば、新たな制御パターンが設定されると、もとから設定されていた制御パターンが上書きされてしまうのに対して、サブパターンとして制御パターンが設定されることで、2つの制御パターンが同時に設定される。このため、Sy17のステップにおいて払出パターンがサブパターンとして設定されることで、現在実行中の演出と同時並行して払出パターンに基づく演出が実行されることとなる。
Sy16のステップにおいて、受信したコマンドが払出開始コマンドではない場合には、受信したコマンドが払出終了コマンドであるか否かを判定する(Sy18)。そして受信したコマンドが払出終了コマンドであれば、サブパターンとして設定されている払出パターンをクリアし(Sy19)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。すなわちSy19のステップにおいては、同時並行して実行されていた払出パターンに基づく演出のみが終了し、もとから実行されていた演出のみが継続することとなる。
Sy18のステップにおいて、受信したコマンドが払出終了コマンドではない場合には、受信したコマンドが入賞判定コマンドであるか否かを判定する(Sy20)。そして受信したコマンドが入賞判定コマンドであれば、当該入賞判定コマンドがビッグボーナスの入賞を示すか否かを判定する(Sy21)。そして、当該入賞判定コマンドがビッグボーナスの入賞を示す場合には、BB入賞時パターンを制御パターンとして設定し(Sy22)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。一方、当該入賞判定コマンドがビッグボーナスの入賞を示すものではない場合には、更にビッグボーナス以外の入賞を示すか否かを判定する(Sy23)。そして、当該入賞判定コマンドがビッグボーナス以外の入賞を示す場合には、入賞が発生した際に特有の演出が実行される入賞時演出を実行するための入賞時パターンのうち、発生した入賞に対応する入賞時パターンを制御パターンとして設定し(Sy24)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。尚、Sy23のステップにおいてビッグボーナス以外の入賞を示すものでない場合には、Sy29のステップに進む。
Sy20のステップにおいて受信したコマンドが入賞判定コマンドではない場合には、受信したコマンドが遊技状態コマンドであるか否かを判定する(Sy25)。そして受信したコマンドが遊技状態コマンドでなければ、Sy29のステップに進み、遊技状態コマンドであれば、当該遊技状態コマンドが示す遊技状態をRAM91cに設定するとともに(Sy26)、設定された遊技状態に基づいて当該ゲームがビッグボーナスの終了条件が成立したゲームであったか否かを判定する(Sy27)。そして、当該ゲームがビッグボーナスの終了条件が成立したゲームであれば、エンディングパターンを制御パターンとして設定し(Sy28)、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。尚、Sy27のステップにおいて当該ゲームがビッグボーナスの終了条件が成立したゲームでなければ、Sy29のステップに進む。
Sy29のステップでは、ROM91bに格納されている制御パターンテーブルを参照し、RAM91cに設定されている演出パターン及び受信したコマンドに対応して登録されている制御パターンを読み出して設定し、制御パターン設定処理を終了して、図55に示すフローチャートに復帰する。
以上説明したように、本実施例のスロットマシン1では、内部抽選の結果に応じてテーブル方式の停止制御と、コントロール方式による停止制御と、が併用されるので、内部抽選による全ての結果について滑りコマ数データを予め用意する必要がないため、滑りコマ数データの格納容量が少なくて済む。
また、内部抽選の結果がハズレ、チェリー、1枚(1)、1枚(2)、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの場合には、テーブル方式による停止制御を行い、ベル、リプレイの当選時には、コントロール方式による停止制御を行っているため、ベルやリプレイの当選時に必要となる滑りコマ数データの格納容量を大幅に削減することができる。すなわち内部抽選の結果の性質に合わせて表示結果を多様にすることも滑りコマ数データの格納容量を削減することも可能となる。
また、本実施例では、停止操作のタイミングによっては取りこぼしの生じるチェリー、1枚(1)、1枚(2)、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの当選時に、テーブル方式による停止制御を行っているため、取りこぼしの生じる役が当選し、かつ当選した役を取りこぼした場合の表示結果を多様化できる。
特に、多くのメダルの獲得が期待できるビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスの当選時に、テーブル方式による停止制御を行っているため、これら当選したボーナスを取りこぼした際の表示結果(いわゆるリーチ目やチャンス目)を多様化できる。また、本実施例では、ボーナスの当選時に加えていずれの役も当選していないハズレの場合にも、テーブル方式による停止制御を行っているため、ハズレの場合の表示結果も多様化することが可能となり、結果としてチャンス目(ボーナスの当選時にも、非当選時にも出現し得る表示結果)の設計の自由度が広がる。すなわちハズレの場合の停止位置を滑りコマ数データによって制限できるため、チャンス目となる停止位置やその出現割合の調整が容易となる。
尚、本実施例では、ボーナスの当選時とハズレ時とでは、異なる滑りコマ数データを適用しているが、例えば、ボーナスの当選時にもハズレ時にも第1停止を共通の滑りコマ数データを用いて停止制御を行うようにしても良く、このようにすることで、第1停止のリールに表示結果が停止した時点では、その停止位置からボーナスが当選しているか否かを判別することができないので、それ以降に遊技者の期待感を持続させることができる。
また、取りこぼしの生じないベルやリプレイの当選時には、ボーナスを取りこぼした際の表示結果(チャンス目)との関連が薄い。すなわちベルやリプレイが出現した時点でボーナスの当選があまり期待できず、ベルやリプレイの当選時に、表示結果を多様化させる必要性が低い。このため、本実施例では、これらベルやリプレイといった取りこぼしの生じない役の当選時に、コントロール方式による停止制御を行っているので、効果的に滑りコマ数データの格納容量を削減することが可能となる。
また、本実施例では、テーブル方式によって停止制御を行う場合に、停止操作が有効となる前、すなわち停止操作が検出される前に、滑りコマ数データに登録された滑りコマ数を展開し、仮想滑りコマテーブルに格納するとともに、停止操作が検出された際には、仮想滑りコマテーブルを参照し、該当する停止操作位置の滑りコマ数を取得して停止制御を行うようになっており、停止操作が検出された後に滑りコマ数データを展開して滑りコマ数を取得する必要がないので、停止操作が検出された後、リールを停止させる制御を速やかに行うことが可能となり、停止操作の検出後、リールが停止するまでのタイムラグを極力短くすることができる。
また、コントロール方式によって停止制御を行う場合にも、停止操作が有効となる前に、停止操作位置毎に、当選役に応じた停止位置を検索し、その検索結果に基づく滑りコマ数を仮想滑りコマテーブルに格納するとともに、停止操作が検出された際には、仮想滑りコマテーブルを参照し、該当する停止操作位置の滑りコマ数を取得して停止制御を行うようになっており、停止操作が検出された後に当選役に応じた停止位置を検索する必要がないので、停止操作が検出された後、リールを停止させる制御を速やかに行うことが可能となり、停止操作の検出後、リールが停止するまでのタイムラグを極力短くすることができる。
また、本実施例では、内部抽選の結果に応じて選択された滑りコマ数データから展開した滑りコマ数を仮想滑りコマテーブルに格納するとともに、更に、停止操作位置毎に、滑りコマ数別の停止位置を検索し、仮想滑りコマテーブルに格納されている滑りコマ数による停止位置の優先度と、滑りコマ数別に検索した停止位置の優先度と、を比較し、滑りコマ数別に取得した停止位置の優先度の方が高いと判定された場合には、仮想滑りコマテーブルに格納されている滑りコマ数を、滑りコマ数別に検索した停止位置となる滑りコマ数に更新するテーブル+コントロール方式にて停止制御を行うことが可能とされており、これにより、予め定められた滑りコマ数データを用いて停止制御を行う場合でも、滑りコマ数データに登録された滑りコマ数から特定される停止位置以外の停止位置を導出させることができる。また、例えば、滑りコマ数データに誤った滑りコマ数(例えば、不正入賞が発生してしまう停止位置となる滑りコマ数や禁則目(不正入賞や重複入賞を回避できない可能性のある停止位置)となる滑りコマ数)が登録されている場合でも、停止位置を内部抽選の結果に応じて補正することが可能となる。
尚、本実施例では、テーブル+コントロール方式にて停止制御を行う場合に、滑りコマ数データから展開した滑りコマ数を仮想滑りコマテーブルに格納し、その滑りコマ数による停止位置の優先度と、停止操作位置毎に検索した滑りコマ数別の停止位置の優先度とを比較し、検索した滑りコマ数別の停止位置の優先度の方が高い場合に、仮想滑りコマテーブルの滑りコマ数を更新するようになっているが、滑りコマ数データから展開した滑りコマ数による停止位置の優先度と、停止操作位置毎に検索した滑りコマ数別の停止位置の優先度とを比較し、検索した滑りコマ数別の停止位置の優先度の方が高い場合に、その滑りコマ数を仮想滑りコマテーブルに格納し、それ以外の場合には、滑りコマ数データから展開した滑りコマ数を仮想滑りコマテーブルに格納するようにしても良く、このようにした場合にも上記と同様の効果を得られる。
また、本実施例では、停止位置の優先度を判定する際に、入賞ライン上に揃う役の種類によって優先度を判定しているが、例えば、当選した役がどの入賞ラインに揃うかに応じて停止位置の優先度を判定するようにしても良く、例えば、滑りコマ数データでは、下段の入賞ラインL3に当選役が揃うように滑りコマ数を登録しておくとともに、当選役を揃えることが可能な場合には、右上がりの入賞ラインL5に当選役が揃う停止位置の優先度を高くすることで、当選役を揃えることが可能な場合には、下段の入賞ラインL3にも右上がりの入賞ラインL5にも当選役が揃い得るが、取りこぼした場合(すなわち滑りコマ数が優先度の判定によって更新されていない停止操作位置で停止操作がなされた場合)には、当選役を構成する図柄が入賞ラインL3上にのみ停止するようになり、当選役を構成する図柄の停止位置を制限することが可能となる。このため、ボーナスの当選時にのみ制限した停止位置を出現可能な滑りコマ数データを用いることにより、当選役の取りこぼしでは出現し得ないリーチ目を停止させることが可能となる。
また、テーブル+コントロール方式によって停止制御を行う場合にも、停止操作が有効となる前に、滑りコマ数データに登録された滑りコマ数を展開し、仮想滑りコマテーブルに格納し、更に滑りコマ数別の停止位置を検索し、検索した停止位置との優先度に基づいて仮想滑りコマテーブルの滑りコマ数を更新する処理を行うとともに、停止操作が検出された際には、仮想滑りコマテーブルを参照し、該当する停止操作位置の滑りコマ数を取得して停止制御を行うようになっており、停止操作が検出された後に滑りコマ数データを展開して滑りコマ数を取得する必要や優先度の比較、滑りコマ数の更新などを行う必要がないので、停止操作が検出された後、リールを停止させる制御を速やかに行うことが可能となり、停止操作の検出後、リールが停止するまでのタイムラグを極力短くすることができる。
また、本実施例では、内部抽選の結果がボーナス+小役である場合、すなわち内部抽選によりボーナスと小役が同時に当選した場合やボーナスの持越中に小役が当選した場合に、テーブル+コントロール方式により停止制御を行うとともに、この際、当選したボーナスに対応する滑りコマ数データを選択し、当選した小役が入賞ライン上に揃う停止位置を検索し、滑りコマ数データから特定される停止位置が、当選したボーナスも小役も入賞ラインに停止しない停止位置であり、検索結果から特定される停止位置が、当選した小役が入賞ラインに停止する停止位置である停止操作位置、滑りコマ数データから特定される停止位置が、当選した特別役のみが入賞ラインに停止する停止位置であり、検索結果から特定される停止位置が、当選した特別役も小役も入賞ラインに停止する停止位置である停止操作位置については、全てのリールが停止した段階でボーナスと小役が重複して入賞したり、当選していない役が入賞したりするなどの特段の事情がない限り、仮想滑りコマテーブルの滑りコマ数が更新されるようになっている。このため、ボーナスのみが当選している場合と、ボーナスと小役の双方が当選している場合とで、個別に滑りコマ数データを用意せずに双方の抽選結果に応じて表示結果を導出させる制御を行うことが可能となるので、滑りコマ数データの格納容量を大幅に削減することができる。
更に、本実施例では、前述のように取りこぼしのない小役であるベルが当選した際には、コントロール方式で停止制御を行い、ボーナス+ベルが当選した際には、当選したボーナスに対応する滑りコマ数データを用いてテーブル+コントロール方式で停止制御を行っている。このため、取りこぼしのない小役、すなわち表示結果を多様化させる必要性が低い小役に対応する滑りコマ数データを一切用意せずに済むため、効果的に滑りコマ数データの格納容量を削減することが可能となる。
尚、本実施例では、ボーナス+小役が当選している場合に、当選したボーナスに対応する滑りコマ数データを選択し、当選した小役が入賞ライン上に揃う停止位置を検索し、当選した小役が入賞ライン上に揃う停止位置を検索し、滑りコマ数データから特定される停止位置が、当選したボーナスも小役も入賞ラインに停止しない停止位置であり、検索結果から特定される停止位置が、当選した小役が入賞ラインに停止する停止位置である停止操作位置、滑りコマ数データから特定される停止位置が、当選した特別役のみが入賞ラインに停止する停止位置であり、検索結果から特定される停止位置が、当選した特別役も小役も入賞ラインに停止する停止位置である停止操作位置については、仮想滑りコマテーブルの滑りコマ数が更新されるようになっているが、当選した小役に対応する滑りコマ数データを選択し、当選したボーナスが入賞ライン上に揃う停止位置を検索し、滑りコマ数データから特定される停止位置が、当選した小役のみ入賞ラインに停止する停止位置または当選した特別役も小役も入賞ラインに停止しない停止位置であり、検索結果から特定される停止位置が、当選した特別役が入賞ラインに停止する停止位置である停止操作位置について仮想滑りコマテーブルの滑りコマ数を更新するようにしても良い。すなわち前者の場合には、ボーナスと小役が同時に当選した場合に、ボーナスが単独で当選した場合の滑りコマ数データを共用しているが、後者の場合には、ボーナスと小役が同時に当選した場合に、小役が単独で当選した場合の滑りコマ数データを共用するようになっている。
例えば、後者の例として、ビッグボーナス(1)+チェリーが当選しており、全てのリールが未だ回転中の状態において、図58に示すように、左リールの領域番号1〜8、16〜17については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置、すなわちビッグボーナス(1)を構成する「赤7」図柄が入賞ライン上となる停止位置が、滑りコマ数別に特定した停止位置には存在しないことから、滑りコマ数データから展開されて仮想滑りコマテーブルに格納されている滑りコマ数が維持される。一方、領域番号9〜15については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置(ビッグボーナス(1)を構成する「赤7」図柄が入賞ライン上となる停止位置)が存在するので、そのうち図12(a)に示す順番で、最も早い段階で優先度が高いと判定され、かつ停止禁止位置でもない停止位置となる滑りコマ数に仮想滑りコマテーブルの滑りコマ数が更新されることとなる。
このようにボーナスと小役が同時に当選した場合に、小役が単独で当選した場合の滑りコマ数データを共用する構成とした場合には、ボーナスのみが当選している場合と、ボーナスと小役の双方が当選している場合とで、個別に滑りコマ数データを用意せずに双方の抽選結果に応じて表示結果を導出させる制御を行うことが可能となるので、滑りコマ数データの格納容量を大幅に削減することができるうえに、ボーナスと小役が同時に当選した際に、ボーナスを取りこぼした際の表示態様が小役のみが当選した場合と同じ表示態様となるため、表示結果からボーナスが当選しているか否かを判別することが困難となり、小役のみが当選した場合にもボーナスの当選に対する期待感を持たせることができる。
特に、表示結果によって入賞を構成する可変表示装置(本実施例ではリール2L、2C、2R)よりも視認が容易に設けられた演出用表示装置(例えば、表示結果によって入賞を構成するリールよりもサイズの大きい演出用リールや表示結果によって入賞を構成するリールの表示領域よりもサイズの大きい演出用表示領域を備える表示装置など)を設け、可変表示装置よりも演出用表示装置の表示内容(可変表示装置の表示結果に基づく演出用表示結果、例えば、演出用リールの表示結果や仮想のリールの表示結果、画像などによる演出結果など)に遊技者の意識を注目させて遊技を進行させるスロットマシン(いわゆる飾り図柄スロットマシン)において、ボーナスと小役が同時に当選した場合に、小役が単独で当選した場合の滑りコマ数データを共用する構成を適用することが効果的であり、この種のスロットマシンに適用した場合には、表示結果によって入賞を構成する可変表示装置の表示結果からボーナスが当選しているか否かを判別することが困難となるため、遊技者の意識を可変表示装置よりも演出用表示装置の表示内容に効果的に注目させることができる。
また、本実施例では、ボーナス+小役が当選した際にテーブル+コントロール方式による停止制御を行っているが、 複数種類の当選役、例えば、内部抽選の結果が、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスのいずれかである場合に、テーブル+コントロール方式により停止制御を行うとともに、この際、他の抽選結果では導出されることのない停止位置(いわゆるリーチ目)が登録された共通の滑りコマ数データ(図59参照)を選択し、それぞれ当選した種類のボーナスが入賞ライン上に揃う停止位置となる停止操作位置については、仮想滑りコマテーブルの滑りコマ数が更新されるようにしても良い。
複数種類の当選役について共通の滑りコマ数データを用いる例としては、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスのいずれが当選している場合でも、図59に示す共通滑りコマ数データを仮想滑りコマテーブルに格納し、ビッグボーナス(1)またはレギュラーボーナスが当選している場合には、図59に示すように、左リールの領域番号1〜8、10〜12、16〜21については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置、すなわちビッグボーナス(1)及びレギュラーボーナスを構成する「赤7」図柄が入賞ライン上となる停止位置が、滑りコマ数別に特定した停止位置には存在しないことから、滑りコマ数データから展開されて仮想滑りコマテーブルに格納されている滑りコマ数が維持される。一方、領域番号9、13〜15については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置(ビッグボーナス(1)及びレギュラーボーナスを構成する「赤7」図柄が入賞ライン上となる停止位置)が存在するので、そのうち図12(a)に示す順番で、最も早い段階で優先度が高いと判定され、かつ停止禁止位置でもない停止位置となる滑りコマ数に仮想滑りコマテーブルの滑りコマ数が更新されることとなる。また、ビッグボーナス(2)が当選している場合には、図59に示すように、左リールの領域番号4〜15、17〜20については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置、すなわちビッグボーナス(2)を構成する「青7」図柄が入賞ライン上となる停止位置が、滑りコマ数別に特定した停止位置には存在しないことから、滑りコマ数データから展開されて仮想滑りコマテーブルに格納されている滑りコマ数が維持される。一方、領域番号1〜3、16、21については、滑りコマ数データから展開された滑りコマ数による停止位置の優先度よりも高い停止位置(ビッグボーナス(2)を構成する「青7」図柄が入賞ライン上となる停止位置)が存在するので、そのうち図12(a)に示す順番で、最も早い段階で優先度が高いと判定され、かつ停止禁止位置でもない停止位置となる滑りコマ数に仮想滑りコマテーブルの滑りコマ数が更新されることとなる。
また、内部抽選の結果が、1枚(1)、1枚(2)、ビッグボーナス(1)、ビッグボーナス(2)、レギュラーボーナスのいずれかである場合に、テーブル+コントロール方式により停止制御を行うとともに、この際、他の抽選結果では導出されることのない停止位置(いわゆるチャンス目)が登録された共通の滑りコマ数データを選択し、それぞれ当選した役が入賞ライン上に揃う停止位置となる停止操作位置については、仮想滑りコマテーブルの滑りコマ数が更新されるようにしても良い。
このように複数種類の当選役について共通の滑りコマ数データから展開した滑りコマ数を仮想滑りコマテーブルに格納するとともに、それぞれ当選した役が入賞ライン上に揃う停止位置となる停止操作位置については、仮想滑りコマテーブルの滑りコマ数が更新することで、当選役が異なる場合あっても、共通の滑りコマ数データを用いて、かつ内部抽選の結果に応じて異なる停止位置とすることができるので、表示結果を単調化させることなく、かつ滑りコマ数データの格納容量を削減することができる。
更に、内部抽選の結果が異なる複数種類のボーナスについて共通の滑りコマ数データを用いることで、滑りコマ数データの格納容量を削減しつつ、当選したボーナスを取りこぼした場合には、共通のリーチ目を停止させることが可能となる。また、ボーナス及び特定の小役(例えば、1枚(1)、1枚(2))について共通の滑りコマ数データを用いることで、滑りコマ数データの格納容量を削減しつつ、当選したボーナスや特定の小役を取りこぼした場合には、共通のチャンス目を停止させることが可能となる。
尚、ボーナス及び特定の小役について共通の滑りコマ数データを用いる場合には、ボーナスと特定の小役が同時に当選することもあり得るが、このような場合には、小役が入賞ライン上に揃う停止位置となる停止操作位置よりもボーナスが入賞ライン上に揃う停止位置を優先して仮想滑りコマテーブルの滑りコマ数を更新すれば良い。
また、本実施例では、停止制御の方法、テーブル方式及びテーブル+コントロール方式で停止制御を行う際に参照する滑りコマ数データ、コントロール方式で停止制御を行う際の停止位置の検索順、テーブル+コントロール方式で停止制御を行う際の停止位置の優先度の判定順といった、リールの停止制御を行うための制御パターンが、全てのリールが回転中においては、内部抽選の結果に対して一意的に定められ、これらの制御パターンが内部抽選の結果に応じて一意的に選択され、選択された制御パターンに従ってリールの停止制御が行われるとともに、いずれかのリールが既に停止している場合においては、内部抽選の結果、停止済みのリールの停止位置に対して一意的に定められた制御パターンが選択し、選択された制御パターンに従ってリールの停止制御が行われるようになっており、内部抽選の結果、リールの停止状況(及び停止済みのリールの停止位置(表示結果))の全てが同一条件となった際に、同一の制御パターンに基づいてリールの停止制御が行われることとなるので、従来のように一の内部抽選結果に対して複数の制御テーブルからいずれか1つの制御テーブルを内部抽選とは異なる抽選(例えばリール制御の振分抽選など)などにより更に選択する必要がなく、リールを停止させる際の制御が複雑化することがない。
また、本実施例では、いずれかのリールが既に停止している場合において、内部抽選結果、リールの停止状況及び停止済みのリールの停止位置に対して一意的に定められた制御パターンに従ってリールの停止制御が行われるようになっているが、いずれかのリールが既に停止している場合において、内部抽選結果、リールの停止状況及び停止済みのリールの停止操作位置に対して一意的に定められた制御パターンに従ってリールの停止制御が行われるようにしても良く、このようにすることで内部抽選結果が同一であり、かつ停止済みのリールの停止位置(停止図柄)が同一の場合であっても、停止済みのリールの停止操作位置が異なる場合には、異なる停止制御テーブルが適用されることがあるため、リールの表示結果をより多彩なものにできる。
また、この場合には、1/2図柄が変動する範囲の領域、すなわち1図柄が変動する範囲未満の単位で停止済みのリールの停止操作位置を判定し、その停止操作位置に対して一意的に定められた制御パターンに従ってリールの停止制御を行うこと、すなわちある図柄が基準位置に位置するステップ数から1図柄が変動する範囲以内の異なるステップ数に対して異なる制御パターンを選択可能とすることが好ましく、このようにすれば、停止済みのリールの停止位置が同一であり、停止操作が行われたタイミングが1図柄が変動する範囲以内であっても、他のリールに適用される制御パターンを変化させることができるので、各リールの表示結果をより一層多様化することができる。
また、いずれかのリールが既に停止している場合において、内部抽選結果、リールの停止状況及び停止済みのリールの停止操作位置に対して一意的に定められた制御パターンに従ってリールの停止制御を行うものでは、例えば、いずれの役にも当選していない場合(ハズレ)において、ある特定のリールにおいて同一の停止位置が定められた領域番号の範囲で停止操作が行われた場合において同一の表示結果が導出されるが、同一の停止位置が定められた領域番号のうちの特定の領域番号の領域で停止操作が行われた場合のみ、他のリールの制御パターンとしてチャンス目を構成する表示結果を導出させることが可能な停止制御テーブルを選択し、同一の停止位置が定められた領域番号のうちの特定の領域番号以外の領域で停止操作が行われた場合に、他のリールの制御パターンとしてチャンス目を構成する表示結果を導出させることが可能な制御パターンを選択することが好ましい。これにより特定のリールを停止した時点での当該リールの停止位置が同一の場合であってもその停止操作位置が異なることによって最終的にチャンス目を導出可能に制御する場合と導出不可能に制御する場合とがあるので、いずれの役にも当選していない場合(ハズレ)のリールの表示結果が単調化してしまうことを防止できる。
また、いずれかのリールが既に停止している場合において、内部抽選結果、リールの停止状況及び停止済みのリールの停止操作位置に対して一意的に定められた制御パターンに従ってリールの停止制御を行うものにおいては、リールが停止する毎に、停止するリールが左リール、中リール、右リールのいずれかであるか、該当するリールの停止操作位置の領域番号、該当するリールの停止位置の領域番号、を特定可能なリール停止コマンドを、サブ制御部91に対して送信することが好ましく、このようにすることでサブ制御部91のCPU91aは、リールが停止した際に、そのリールの停止位置のみならず、停止操作位置に応じて異なる演出を行うことが可能となる。
特に、通常遊技状態においていずれの役にも当選していない場合(ハズレ)において、ある特定のリールにおいて同一の停止位置が定められた領域番号の範囲で停止操作が行われた場合において同一の表示結果が導出されるが、同一の停止位置が定められた領域番号のうちの特定の領域番号の領域で停止操作が行われた場合のみ、他のリールの制御パターンとしてチャンス目を構成する表示結果を導出させることが可能な制御パターンを選択し、同一の停止位置が定められた領域番号のうちの特定の領域番号以外の領域で停止操作が行われた場合に、他のリールの制御パターンとしてチャンス目を構成する表示結果を導出させることが可能な制御パターンを選択するとともに、通常遊技状態においていずれかのボーナスに当選している場合に、同一の停止位置が定められた領域番号のうち、通常遊技状態においていずれの役も当選していない場合よりも多くの領域番号に対して、他のリールの制御パターンとしてチャンス目を構成する表示結果を導出させることが可能な制御パターンを選択する場合には、リール停止コマンドを受信した際に、停止操作位置がチャンス目の導出条件を満たす場合、すなわちチャンス目を構成する表示結果を導出可能な制御パターンが選択される停止操作位置である場合において、チャンス目の導出条件を満たさないが同一の停止位置となる他の停止操作位置である場合よりも高い割合で、いずれかの特別役に当選している可能性を報知する特殊演出(例えば、通常とは異なる停止音など)を行うようにしても良く、このようにすれば、特定のリールの停止時に特殊演出が行われることで、特定のリールの停止時に特殊演出が行われない場合よりも最終的にチャンス目が導出される可能性が高まることとなり、特殊演出が行われることに伴ってチャンス目の導出、更には特別役の当選に対する遊技者の期待感を効果的に高めることができる。
また、本実施例では、役別テーブルに、特別役のみに対応する判定値数の格納先のアドレス、特別役及び一般役の双方に対応する判定値数の格納先のアドレス、一般役のみに対応する判定値数の格納先アドレスがそれぞれ登録されており、内部抽選において、取得した内部抽選用の乱数に、役別テーブルから参照された各役または役の組み合わせの判定値数を加算していき、特別役のみに対応する判定値数との加算結果がオーバーフローした場合には、特別役のみの当選を判定し、特別役及び一般役の双方に対応する判定値数との加算結果がオーバーフローした場合には、特別役及び一般役の双方の当選を判定し、一般役のみに対応する判定値数との加算結果がオーバーフローした場合には、一般役のみの当選を判定するようになっており、特別役と一般役が同時に当選し得るようになっている。すなわち1つの役別テーブルから、一般役、特別役がそれぞれ単独で当選する判定値の範囲と、一般役及び特別役が重複して当選する判定値の範囲と、が特定できるようにすることで、特別役と一般役が同時に当選し得るようになっている。これにより、ゲームの結果として一般役が入賞した場合でも、一般役よりも有利度の高い特別役の当選が否定されないので、このような状況においても特別役の入賞に対する遊技者の期待感を持続させることができる。
また、本実施例では、ビッグボーナス(1)またはビッグボーナス(2)とチェリー、1枚(1)または1枚(2)とが同時に当選可能としており、更に、ビッグボーナス(1)またはビッグボーナス(2)と1枚(1)または1枚(2)とが同時に当選する判定値の範囲よりも、ビッグボーナス(1)またはビッグボーナス(2)とチェリーが同時に当選する判定値の範囲の方が大きくなるように設定されており、ビッグボーナス(1)またはビッグボーナス(2)と1枚(1)または1枚(2)とが同時に当選する確率よりも、ビッグボーナス(1)またはビッグボーナス(2)とチェリーが同時に当選する確率の方が高くなるようになっているので、1枚(1)または1枚(2)が入賞したときよりもチェリーが入賞したときの方が、ビッグボーナス(1)またはビッグボーナス(2)と同時に当選している可能性が高くなるので、一般役が入賞したときに、その一般役の種類によって特別役の当選に対する期待感に変化を持たせることができるため、興趣を高めることができる。
尚、本実施例では、役別テーブルに、特別役のみに対応する判定値数の格納先のアドレス、特別役及び一般役の双方に対応する判定値数の格納先のアドレス、一般役のみに対応する判定値数の格納先アドレスをそれぞれ登録しておき、内部抽選において、取得した内部抽選用の乱数に、役別テーブルから参照された各役または役の組み合わせの判定値数を加算していき、特別役のみに対応する判定値数との加算結果がオーバーフローした場合には、特別役のみの当選を判定し、特別役及び一般役の双方に対応する判定値数との加算結果がオーバーフローした場合には、特別役及び一般役の双方の当選を判定し、一般役のみに対応する判定値数との加算結果がオーバーフローした場合には、一般役のみの当選を判定するようにすることで、特別役と一般役が同時に当選し得る構成としていたが、一般役の格納先アドレスが登録された一般役用の役別テーブルと、特別役の判定値数の格納先アドレスが登録された特別役用の役別テーブルと、を設け、内部抽選において、同一の内部抽選用の乱数について、一般役用の役別テーブルを参照する一般役の抽選と、特別役用の役別テーブルを参照する特別役の抽選と、を別個に行うとともに、一般役用の役別テーブルに登録されているアドレス領域に格納された判定値数及び特別役用の役別テーブルに登録されているアドレス領域に格納された判定値数から、一般役、特別役がそれぞれ単独で当選する判定値の範囲と、一般役、特別役が重複して当選する判定値の範囲と、が特定できるようにすることにより、特別役と一般役が同時に当選し得る構成としても良く、このような構成とした場合でも、ゲームの結果として一般役の入賞が発生した場合でも、一般役よりも有利度の高い特別役の当選が否定されないので、このような状況においても特別役の入賞に対する遊技者の期待感を持続させることができる。
また、本実施例では、役別テーブルに登録されている各役及び役の組み合わせの判定値数の格納先のアドレスは、設定値に応じて異なっている場合もあるが、設定値に関わらずに当選確率を同一とするものとした役及び役の組み合わせについては、設定値に関わらずに判定値数が共通化して格納されるものとなる。このように判定値数を共通化して格納することで、そのために必要な記憶容量が少なくて済むようになる。もっとも、役別テーブルにおいて、内部抽選の対象役または役の組み合わせが同じで設定値に応じて参照される判定値数を格納したアドレスが異なっていても、異なるアドレスにおいて格納されている判定値数が同じである場合がある。
一般に開発段階においては、少なくとも一部の役について設定値に応じて判定値数(すなわち当選確率)を調整しながら(すなわち、内部抽選の当選確率を調整しながら)、シミュレーションを行っていくものとしている。当初の判定値数として、設定値に応じて異なる判定値数を登録しておいたが、シミュレーションにより調整を行った結果として、設定値が異なる場合の判定値数が同一になる場合もある。当初の判定値数として、設定値に応じて同一の判定値数を登録しておいたが、シミュレーションの結果により当初から登録してあった判定値数がそのまま用いられる場合もある(シミュレーションの結果により当初とは異なる判定値数すなわち、設定値に応じて異なる判定値数となる場合もある)。そして、それぞれの場合におけるシミュレーションで適切な結果の得られた判定値数を、量産用の機種に設定する判定値数として選ぶものとしている。
ここで、シミュレーションにより調整された判定値数が結果として設定値に関わらずに同じになったとしても、その開発段階でのアドレス割り当てと同じアドレスの割り当てで判定値数をROM41bに記憶して、そのまま量産用の機種とすることができる。このため、量産用の機種において判定値数の格納方法を開発用の機種から変更する必要がなく、最初の設計段階から量産用の機種に移行するまでの開発を容易に行うことができるようになる。
また、内部抽選は、取得した内部抽選用の乱数に、役別テーブルから参照された各役または役の組み合わせの判定値数を加算していき、その加算の結果がオーバーフローしたか否かによって、それぞれの役または役の組み合わせの当選の有無を判定するものとしている。このため、各役または役の組み合わせの判定値数をそのまま用いて内部抽選を行うことができる。尚、実際の当選判定を行う前に当選判定用テーブルを生成する場合にはループ処理が2回必要になるが、この実施の形態によれば、抽選処理におけるループ処理が1回で済むようになり、抽選処理全体での処理効率が高いものとなる。
また、本実施例のスロットマシン1では、設定値ワーク1から読み出した値が1〜6の範囲か否か、すなわち内部抽選に用いる設定値が適正な範囲の値か否かを判定する設定値判定処理1を1ゲーム毎に実行し、設定値ワーク1から読み出した値が1〜6の範囲の値でなければ、RAM異常エラーによるエラー状態に制御され、ゲームの進行が不能化される。本実施例において設定値ワーク1に格納される値、すなわち設定変更処理により選択可能な設定値の範囲は1〜6の値であるので、設定値ワーク1に格納されている値が1〜6の範囲の値でなければゲームの進行が不能化されることとなる。
更に、設定された賭数が遊技状態に応じた賭数であるか否かを判定する処理を1ゲーム毎に実行し、設定された賭数が遊技状態に応じた賭数ではない場合にも、RAM異常エラーによるエラー状態に制御され、ゲームの進行が不能化される。本実施例では、遊技状態毎に対応する賭数が定められているが、その賭数とは異なる賭数でゲームが行われている場合には、RAM41cに格納されているデータが壊れているか、或いは不正なプログラムが作動している可能性があるので、設定された賭数が遊技状態に応じた賭数ではない場合にもゲームの進行が不能化されることとなる。
そして、一度RAM異常エラーによるエラー状態に制御されると、設定変更モードに移行させて、設定変更操作に基づいて設定値を新たに選択・設定しなければ、ゲームの進行が不能化された状態が解除されない。すなわちデータ化けや不正なプログラムの作動などにより、設定値が適正でない場合や設定された賭数が遊技状態に応じた賭数ではない場合には、スロットマシンにより自動的に設定された設定値ではなく、設定変更操作に基づいて選択・設定された設定値(一般的に、設定変更操作は遊技店の従業員により行われるので、遊技店側が選択した設定値である)に基づいてゲームが行われることが担保されるので、ゲームの公平性を図ることができる。
また、本実施例では、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致するか否か、すなわち内部抽選に用いる設定値と、設定変更時に設定された設定値と、が一致するか否かを判定する設定値判定処理2を1ゲーム毎に実行し、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致しない場合にも、RAM異常エラーによるエラー状態に制御され、ゲームの進行が不能化される。本実施例では、設定変更時に設定値ワーク1と設定値ワーク2のそれぞれに変更後の設定値が格納されるようになっており、通常は設定値1に格納されている値と設定値2に格納されている値とが一致するはずであり、これらの値が一致しなければ、設定値が不正に書き換えられた可能性があり、この場合にもゲームの進行が不能化されることとなる。
また、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致するか否か、すなわち今回のゲームの内部抽選に用いる設定値と、前回のゲームの内部抽選に用いた設定値と、が一致するか否かを判定する設定値判定処理3を1ゲーム毎に実行し、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致しない場合にも、RAM異常エラーによるエラー状態に制御され、ゲームの進行が不能化される。本実施例では、内部抽選に用いた設定値を設定値ワーク3に格納するようになっており、通常は設定値1に格納されている値(今回のゲームの内部抽選で用いる設定値)と設定値3に格納されている値(前回のゲームの内部抽選で用いた設定値)とが一致するはずであり、これらの値が一致しなければ、設定値が不正に書き換えられた可能性があり、この場合にもゲームの進行が不能化されることとなる。
そして、これらの判定によって一度RAM異常エラーによるエラー状態に制御されると、設定変更モードに移行させて、設定変更操作に基づいて設定値を新たに選択・設定しなければ、ゲームの進行が不能化された状態が解除されない。すなわち不正に設定値が書き換えられた可能性がある場合においてゲームを再開するためには、通常のエラー状態を解除するためのリセット操作よりも手間のかかる設定変更操作を行う必要があるので、かかる不正行為を効果的に防止することができる。
また、不正に設定値が書き換えられた可能性がある場合には、スロットマシンにより自動的に設定された設定値ではなく、設定変更操作に基づいて選択・設定された設定値(一般的に、設定変更操作は遊技店の従業員により行われるので、遊技店側が選択した設定値である)に基づいてゲームが行われることが担保されるので、ゲームの公平性を図ることができる。
また、本実施例のスロットマシン1では、メイン制御部41のRAM41cにおける未使用領域が1ゲーム毎に初期化されるので、RAM41cの未使用領域を利用して不正プログラムを格納させても、当該不正プログラムが常駐してしまうことを防止できる。
また、本実施例では、RAM41cにおける未使用領域に加えてスタック領域における未使用スタック領域も1ゲーム毎に初期化されるので、RAM41cにおいてその時点で使用されていない全ての領域が1ゲーム毎に初期化されることとなり、例え、RAM41cの未使用領域を利用せずに未使用スタック領域を利用して不正プログラムを格納させようとしても、当該不正プログラムが常駐してしまう余地を無くすことができるので、不正プログラムが常駐してしまうことを一層確実に防止できるとともに、例えば、未使用スタック領域に不正なデータ(不正プログラムが指定するアドレス等)を加え、データの復帰時にマイクロコンピュータを誤作動させることでレジスタを不正なものに書き換えてしまうことにより、本来のプログラムとは異なる動作を行わせてしまうような不正も防止できる。更に、未使用スタック領域に不正なデータが格納されることによって、本来であれば退避したデータを格納できるはずの領域が圧迫され、スタック領域がオーバーフローしてしまい、メイン制御部41を構成するマイクロコンピュータが暴走してしまう等の不具合も防止できる。
尚、本実施例では、RAM41cの未使用領域及び未使用スタック領域を1ゲーム毎に初期化しているが、少なくともRAM41cの未使用領域または未使用スタック領域のいずれか一方の領域を1ゲーム毎に初期化するものであれば良い。
また、本実施例では、ゲーム終了時にRAM41cの未使用領域及び未使用スタック領域を初期化する初期化4を毎ゲーム実行することで、RAM41cの未使用領域や未使用スタック領域を1ゲーム毎に初期化しているが、少なくとも1ゲーム毎に1回以上RAM41cの未使用領域及び/または未使用スタック領域が初期化されるものであれば、RAM41cの未使用領域及び/または未使用スタック領域の初期化を行うタイミングは、1ゲーム中のどのタイミングであっても良く、例えば、ゲーム開始時や1ゲーム毎に必ず実行される処理の実行時にRAM41cの未使用領域及び/または未使用スタック領域の初期化を行うものであっても良い。
また、設定開始前(設定変更モードへの移行前)、ビッグボーナス終了時、起動時にRAM41cのデータが破壊されていないとき、1ゲーム終了時の4つからなる初期化条件が成立した際に、各初期化条件に応じて初期化される領域の異なる4種類の初期化1〜4を行うとともに、これら4種類の初期化条件のうちどの条件が成立した場合でも、必ずRAM41cにおける未使用領域及びスタック領域における未使用スタック領域が初期化されるので、不正プログラムが常駐してしまうことを一層確実に防止できる。
特に、起動時においてRAM41cのデータが破壊されていないときに、必ずRAM41cにおける未使用領域及びスタック領域における未使用スタック領域が初期化されるので、RAM41cの未使用領域や未使用スタック領域を利用して不正プログラムや不正データが格納された場合にも、当該不正プログラムや不正データが格納されたままメイン制御部41の制御状態がRAM41cのデータに基づいて復帰してしまうことを防止できる。
また、電断割込処理において、いずれかのビットが1となる破壊診断用データをRAM41cの所定アドレスに格納した後、RAM41cの未使用領域及び未使用スタック領域を含む全てのデータに基づくRAMパリティが0となるようにRAMパリティ調整用データを計算し、格納するとともに、復旧時においてRAM41cにおける未使用領域及び未使用スタック領域を含む全ての領域に格納されているデータに基づいて計算したRAMパリティが0か否か、及び破壊診断用データが格納されているか否か、を判定し、RAMパリティが0でなかった場合、またはRAMパリティが0であっても破壊診断用データが正常に格納されていない場合には、RAM異常エラーによるエラー状態となり、設定キースイッチ37をONの状態で電源投入し、RAM41cの使用中スタック領域を除く全ての領域を初期化する初期化1が行われるまで、ゲームの進行が不可能となるので、起動時にRAM41cの未使用領域及び/または未使用スタック領域に不正プログラムが格納された場合でも、当該不正プログラムを発見して初期化することができる。
更に、RAM41cに格納されているデータが正常ではないと判定され、RAM異常エラー状態となると、RAM41cの使用中スタック領域を除く全ての領域を初期化する初期化1が行われるようになっており、RAM41cに格納されているデータが正常ではないと判定されたときにも、その後、設定キースイッチ37がONの状態で電源投入されたときにも、RAM41cの使用中スタック領域を除く全ての領域を初期化する初期化1が行われるので、RAM41cに格納されている可能性がある不正プログラムを確実に除去することができる。
また、本実施例では、RAM41cに記憶されているデータに異常が生じた場合には、RAM異常エラーによるエラー状態に制御され、ゲームの進行が不能化されるとともに、一度RAM異常エラーによるエラー状態に制御されると、設定変更モードに移行し、設定変更操作に基づいて設定値を新たに選択・設定しなければ、ゲームの進行が不能化された状態が解除されない。すなわち、RAM41cに記憶されているデータに異常が生じても、スロットマシンにより自動的に設定された設定値ではなく、設定変更操作に基づいて選択・設定された設定値(一般的に、設定変更操作は遊技店の従業員により行われるので、遊技店側が選択した設定値である)に基づいてゲームが行われることが担保されるので、ゲームの公平性を図ることができる。
また、RAM41cに記憶されたデータに異常が生じるのは、停電時やCPU41aが暴走する等、制御に不具合が生じて制御を続行できないときがほとんどである。このため本実施例では、これらの状態から復旧してCPU41aが起動するときにおいてのみデータが正常か否かの判定を行うようになっているので、RAM41cに記憶されたデータが正常か否かの判定をデータに異常が生じている可能性が高い状況においてのみ行うことができる。すなわちデータに異常が生じている可能性の低い状況では、当該判定を行わずに済み、CPU41aの負荷を軽減させることができる。
また、本実施例では、電断割込処理においてRAM41cの全てのデータに基づくRAMパリティ、すなわち排他的論理和演算した結果が0となるようにRAMパリティ調整用データを計算し、格納するとともに、復旧時においてRAM41cにおける全ての領域に格納されているデータに基づいて計算したRAMパリティが0か否かを判定することで、RAM41cのデータが正常か否かを判定しているので、当該判定を正確にかつ簡便に行うことができる。
また、本実施例では、電断割込処理において、いずれかのビットが1となる破壊診断用データ(本実施例では、5AH)、すなわち0以外の特定のデータをRAM41cの所定のアドレスに格納した後、この破壊診断用データを含むRAM41cの全てのデータに基づくRAMパリティが0となる調整用データを格納し、起動時においてRAMパリティが0か否かの判定に加えて、破壊診断用データが正常に格納されているか否かの判定を行い、RAMパリティが0であり、かつ破壊診断用データも正常に格納されていることを条件に、RAM41cのデータが正常であると判定し、RAM41cに格納されているデータに基づいて制御状態を復帰させるようになっている。これにより、全ての領域に00Hが格納されている場合、すなわちRAM41cのデータが正常でなくても、RAM41cのデータが0クリアされてしまった場合には、起動時のRAMパリティの判定により正常であると判定されてしまうが、RAM41cのデータが0クリアされてしまった場合には、破壊診断用データが格納されるべき領域も0となり、RAM41cのデータが正常ではないと判定され、誤ってRAM41cのデータが正常であると判定されてしまうことを防止できるので、起動時においてRAM41cのデータが正しい内容であるか否かの判定精度を一層高めることができる。
また、CPU41aは、起動時においてRAMパリティが0であり、かつ破壊診断用データも正常に格納されていると判定し、RAM41cのデータが正常であると判定すると、RAM41cに格納されている破壊診断用データをクリアするようになっているので、起動後もRAM41cに破壊診断用データが格納されたままの状態となることで、次回起動時においてRAM41cのデータが正常ではないにも関わらず、破壊診断用データが格納されているために正常であると誤って判定してしまうことを防止できる。
また、本実施例では、RAM41cのデータに異常が生じて、ゲームの進行が不能化された場合には、ゲームの進行が不能化された状態を解除する条件となる設定値の変更操作が有効となる設定変更モード(設定変更処理)へ移行することに伴って、RAM41cの使用中スタック領域を除く全ての領域が初期化されるので、RAM41cのデータに異常が生じたことに伴うデータの初期化及び設定値の選択・設定に伴うデータの初期化を1度で行うことができ、無駄な処理を省くことができる。更に、CPU41aの起動時には、RAM41cのデータが正常か否かを判定する前に、設定キースイッチ37がONの状態であるか否かを判定し、その時点で設定キースイッチ37がONの状態であると判定した場合には、RAM41cのデータが正常か否かの判定は行わず、設定変更モードに移行し、新たに設定値が選択・設定されることとなり、この場合にも無駄な処理を省くことができる。
尚、本実施例では、設定変更処理に移行する前に、RAM41cの使用中スタック領域を除く全ての領域を初期化する初期化1を行っているが、設定変更処理に移行することに伴って初期化1が行われれば良く、例えば、設定変更処理の終了後に行っても良いし、設定変更処理において設定値が確定した時点で行っても良い。尚、この場合には、確定した設定値が変更されてしまうと不都合が生じるので、初期化1においては、RAM41cの使用中スタック領域及び設定値ワークを除く全ての領域が初期化されることとなる。
また、本実施例では、一度RAM異常エラーによるエラー状態に制御されると、設定変更処理が行われるまで、ゲームが不能動化されるようになっているが、RAM異常エラーによるエラー状態となったときに、RAM41cの使用中スタック領域を除く全ての領域を初期化する初期化1を行うとともに、設定値を初期値(例えば、設定値1)に設定し、この状態でリセット操作がなされることで、ゲームを再開できるようにしても良い。
また、本実施例では、トリガー端子CLK/TRGに電圧低下信号が入力されることで、CPU41aが実行中の処理に割り込んで電断割込処理を実行するようになっているが、電断割込処理では、破壊診断用データを設定する処理やRAMパリティ調整用データを計算して設定する処理等、復旧時にRAM41cのデータが正常であるかを判定可能とするための処理や出力ポートの初期化等を行う前に、信号入力端子DATAに電圧低下信号が入力されているか否かの判定を行い、信号入力端子DATAにも電圧低下信号が入力されていれば、復旧時にRAM41cのデータが正常であるかを判定可能とするための処理や出力ポートの初期化等を行うのに対して、信号入力端子DATAに電圧低下信号が入力されていなければ、もとの処理に復帰するようになっている。
すなわち、メイン制御部41には、電圧低下信号が2系統の入力部に入力され、CPU41aは、一方の入力部に電圧低下信号が入力されて電断割込処理を実行しても、復旧時にRAM41cのデータが正常であるかを判定可能とするための処理や出力ポートの初期化等が実行される前に再度他方の入力部に電圧低下信号が入力されているか否かを判定し、他方の入力部にも電圧低下信号が入力されていて初めてこれらの処理が実行されるようになっており、電断を誤って検出した際に、誤って復旧時にRAM41cのデータが正常であるかを判定可能とするための処理や出力ポートの初期化等の処理が行われてしまうことが防止できるので、電断を誤って検出することに伴い、必要以上に長い間CPU41aの制御が中断されたり、必要以上に負荷がかかってしまうことを防止できる。
また、電断割込処理及びタイマ割込処理(メイン)の実行中においては、他の割込が禁止されるようになっており、例えば、タイマ割込処理(メイン)の実行中に電圧低下信号が入力された場合でも2重に割込が生じることがなく、CPU41aの処理負荷が増大してしまったりデータの整合性がとれなくなってしまうことを防止できる。特に、コマンドの送信中に電圧低下信号が入力されても、割込が生じて当該コマンドの送信が阻害されることがなく、CPU41aの駆動が停止する前に正常に送信を完了させることができる。
また、電断割込処理の割込タイミングとタイマ割込処理(メイン)の割込タイミングとが同時となった場合、すなわち割込2と割込3が同時に発生した場合には、割込2を優先し、電断割込処理を実行するとともに、タイマ割込処理(メイン)の実行中に割込2が発生した場合には、当該タイマ割込処理(メイン)の終了を待って電断割込処理を実行するようになっており、多重割込を防止しつつも極力早い段階で電断割込処理が行われるので、CPU41aの駆動が停止する前に電断割込処理を確実に行うことができる。
また、CPU41aは、割込1〜4の4種類の割込を実行可能であり、このうち未使用に設定されている割込1、4が発生した場合には、もとの処理に即時復帰させる未使用割込処理を実行するようになっている。このため、未使用の割込1、4が発生したときでも、すぐに割込前の処理に復帰することとなるので、ノイズ等によって未使用の割込が発生してもCPU41aが暴走してしまうといった不具合を防止できる。
また、本実施例のスロットマシン1では、ビッグボーナス入賞が発生したゲームにおいて、ゲームの終了が判定された時点でクレジットの精算の禁止は解除され、ゲーム終了後、BB入賞時演出待ち時間が経過するまで賭数の設定が禁止されている期間であっても、クレジット(賭数の設定に用いられたメダルを含む)として記憶されているメダルを返却させることが可能となるので、可能な限り遊技者の意志を反映して、遊技者所有のものとして記憶されているクレジット分のメダルの返却を受けることができる。これにより、例えば、ビッグボーナス入賞が発生したゲームにおいて、ビッグボーナス入賞の発生に伴うビッグボーナスのゲームを始める前に、クレジットとして記憶されているメダルの一部を景品(例えば、清涼飲料水やたばこ等)に交換したいこともあり得るが、このような遊技者の意志を反映させてメダルの返却を受けることが可能となる。
また、ビッグボーナス入賞が発生した際に、ビッグボーナス入賞の発生した旨を示すBB入賞時演出が実行されるので、ビッグボーナス入賞の発生に伴いビッグボーナスに移行する際の遊技者の興趣を効果的に高めることができる。
また、ビッグボーナスの終了条件が成立したゲームにおいて、ゲームの終了が判定された時点でクレジットの精算の禁止は解除され、ゲーム終了後、エンディング演出待ち時間が経過するまで賭数の設定が禁止されている期間であっても、クレジット(賭数の設定に用いられたメダルを含む)として記憶されているメダルを返却させることが可能となるので、可能な限り遊技者の意志を反映して、遊技者所有のものとして記憶されているクレジット分のメダルの返却を受けることができる。これにより、特に、ビッグボーナスの終了後、すぐに遊技を終了したい遊技者の意志を反映させてメダルの返却を受けることが可能となる。
また、ビッグボーナスの終了条件が成立したゲームの終了時に、ビッグボーナスが終了した旨を示すエンディング演出が実行されるので、ビッグボーナスの終了を分かりやすく報知することができる。
また、ビッグボーナスの終了条件が成立したゲームにおいて、打止状態に制御される場合でも、ゲームの終了が判定された時点でクレジットの精算の禁止は解除され、ゲームが終了し、店員によるリセット操作がなされて打止状態が解除されるまで賭数の設定が禁止されている期間であっても、クレジット(賭数の設定に用いられたメダルを含む)として記憶されているメダルを返却させることが可能となるので、可能な限り遊技者の意志を反映して、遊技者所有のものとして記憶されているクレジット分のメダルの返却を受けることができる。これにより、特に、ビッグボーナスの終了後、すぐに遊技を終了したい遊技者の意志を反映させてメダルの返却を受けることが可能となる。
また、ビッグボーナス入賞が発生したゲームの終了が判定された後、BB入賞時演出の演出待ち時間が経過するまでの期間において電断が発生し、その後復帰した場合には、BB入賞時演出の演出待ち時間から電断前に既に経過した時間を除いた時間が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となるのに対して、BB入賞時演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、BB入賞時演出は経過段階の最初から実行される。そして、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、BB入賞時演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。このため、BB入賞時演出が開始した後、このBB入賞時演出が終了する前に電断し、その後電断から復帰した場合に、BB入賞時演出が最初から実行されるが、当該BB入賞時演出の実行中において新たにコマンドを受信した場合には、実行中のBB入賞時演出がキャンセルされて新たに受信したコマンドに基づく演出が実行されるので、BB入賞時演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、サブ制御部91では、電断時に実行中のBB入賞時演出が経過段階にあるか最終段階にあるかをバックアップし、次回起動時に、BB入賞時演出が経過段階にある旨がバックアップされていれば、BB入賞時演出を経過段階の最初から実行し、BB入賞時演出が最終段階にある旨がバックアップされていれば、BB入賞時演出を最終段階の状態で復帰するようになっている。このため、BB入賞時演出が最終段階に到達している状態で電断した場合には、復帰後に、実行していたBB入賞時演出が最初から実行されることがないので、BB入賞時演出が遊技者にとって煩わしいものとなってしまうことをより効果的に防止できる。
また、ビッグボーナス入賞が発生したゲームの終了が判定された後、BB入賞時演出の演出待ち時間が経過するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、BB入賞時演出の演出待ち時間から払出エラーの発生前に既に経過した時間を除いた時間が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となるのに対して、BB入賞時演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、BB入賞時演出は経過段階の最初から実行される。そして、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、BB入賞時演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。このため、BB入賞時演出が開始した後、このBB入賞時演出が終了する前にエラー状態に制御され、その後エラー状態が解除した場合に、BB入賞時演出が最初から実行されるが、当該BB入賞時演出の実行中において新たにコマンドを受信した場合には、実行中のBB入賞時演出がキャンセルされて新たに受信したコマンドに基づく演出が実行されるので、BB入賞時演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、サブ制御部91では、エラー発生時に実行中のBB入賞時演出が経過段階にあるか最終段階にあるかのデータを維持し、当該エラーが解除したときには、BB入賞時演出が経過段階にある旨のデータが維持されていれば、BB入賞時演出が経過段階の最初から実行され、BB入賞時演出が最終段階にある旨のデータが維持されていれば、BB入賞時演出が最終段階の状態で復帰するようになっている。このため、BB入賞時演出が最終段階に到達している状態でエラーが発生した場合には、当該エラーの解除後に、実行していたBB入賞時演出が最初から実行されることがないので、BB入賞時演出が遊技者にとって煩わしいものとなってしまうことをより効果的に防止できる。
また、打止機能が設定されていない場合において、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、エンディング演出の演出待ち時間が経過するまでの期間において電断が発生し、その後復帰した場合には、エンディング演出の演出待ち時間から電断前に既に経過した時間を除いた時間が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となるのに対して、エンディング演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、エンディング演出は経過段階の最初から実行される。そして、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、エンディング演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。このため、エンディング演出が開始した後、このエンディング演出が終了する前に電断し、その後電断から復帰した場合に、エンディング演出が最初から実行されるが、当該エンディング演出の実行中において新たにコマンドを受信した場合には、実行中のエンディング演出がキャンセルされて新たに受信したコマンドに基づく演出が実行されるので、エンディング演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、サブ制御部91では、電断時に実行中のエンディング演出が経過段階にあるか最終段階にあるかをバックアップし、次回起動時に、エンディング演出が経過段階にある旨がバックアップされていれば、エンディング演出を経過段階の最初から実行し、エンディング演出が最終段階にある旨がバックアップされていれば、エンディング演出を最終段階の状態で復帰するようになっている。このため、エンディング演出が最終段階に到達している状態で電断した場合には、復帰後に、実行していたエンディング演出が最初から実行されることがないので、エンディング演出が遊技者にとって煩わしいものとなってしまうことをより効果的に防止できる。
また、打止機能が設定されていない場合において、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、エンディング演出の演出待ち時間が経過するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出の演出待ち時間から払出エラーの発生前に既に経過した時間を除いた時間が経過した時点で、賭数の設定の禁止が解除され、賭数の設定が許可された状態となるのに対して、エンディング演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出は経過段階の最初から実行される。そして、賭数が設定されてメイン制御部41側からBETコマンドを受信すると、エンディング演出はその時点でキャンセルされ、BETコマンドに対応する演出が実行されることとなる。このため、エンディング演出が開始した後、このエンディング演出が終了する前にエラー状態に制御され、その後エラー状態が解除した場合に、エンディング演出が最初から実行されるが、当該エンディング演出の実行中において新たにコマンドを受信した場合には、実行中のエンディング演出がキャンセルされて新たに受信したコマンドに基づく演出が実行されるので、エンディング演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、サブ制御部91では、エラー発生時に実行中のBB入賞時演出が経過段階にあるか最終段階にあるかのデータを維持し、当該エラーが解除したときには、BB入賞時演出が経過段階にある旨のデータが維持されていれば、BB入賞時演出が経過段階の最初から実行され、BB入賞時演出が最終段階にある旨のデータが維持されていれば、BB入賞時演出が最終段階の状態で復帰するようになっている。このため、BB入賞時演出が最終段階に到達している状態でエラーが発生した場合には、当該エラーの解除後に、実行していたBB入賞時演出が最初から実行されることがないので、BB入賞時演出が遊技者にとって煩わしいものとなってしまうことをより効果的に防止できる。
また、打止機能が設定されている場合において、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、エンディング演出の演出待ち時間が経過するまでの期間において電断が発生し、その後復帰した場合には、エンディング演出の演出待ち時間から電断前に既に経過した時間を除いた時間が経過した後、リセットスイッチ23またはリセット/設定スイッチ38が操作され、打止状態が解除された時点で賭数の設定の禁止も解除され、賭数の設定が許可された状態となるのに対して、エンディング演出が最終段階に到達する前の段階において電断が発生し、その後復帰した場合には、エンディング演出は経過段階の最初から実行される。このため、エンディング演出が開始した後、このエンディング演出が終了する前に電断し、その後電断から復帰した場合に、エンディング演出が最初から実行されるが、当該エンディング演出の実行中において打止状態の開始を示すコマンドを受信した場合には、実行中のエンディング演出がキャンセルされて打止中報知が実行されるので、エンディング演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、打止機能が設定されている場合において、ビッグボーナスの終了条件が成立したゲームの終了が判定された後、エンディング演出の演出待ち時間が経過するまでの期間において、例えば、クレジットの精算が実行され、この精算に伴うメダルの払出中に払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出の演出待ち時間から払出エラーの発生前に既に経過した時間を除いた時間が経過した後、リセットスイッチ23またはリセット/設定スイッチ38が操作され、打止状態が解除された時点で賭数の設定の禁止も解除され、賭数の設定が許可された状態となるのに対して、エンディング演出が最終段階に到達する前の段階において払出エラーが発生し、当該払出エラーが解除した場合には、エンディング演出は経過段階の最初から実行される。このため、エンディング演出が開始した後、このエンディング演出が終了する前にエラーが発生し、その後当該エラーが解除した場合に、エンディング演出が最初から実行されるが、当該エンディング演出の実行中において打止状態の開始を示すコマンドを受信した場合には、実行中のエンディング演出がキャンセルされて打止中報知が実行されるので、エンディング演出が遊技者にとって煩わしいものとなってしまうことを防止できるとともに、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、BB入賞時演出やエンディング演出の経過段階の実行に要する時間、すなわち最終段階に移行するまでの時間が、これらBB入賞時演出やエンディング演出の演出待ち時間、すなわちゲームの終了が判定されてから賭数の設定が禁止されている時間よりも短い時間に設定されているので、BB入賞時演出やエンディング演出が最終段階に到達する前に電断し、復帰後に、実行していたBB入賞時演出やエンディング演出が最初から実行される場合でも、BB入賞時演出やエンディング演出が実行される期間と賭数の設定の禁止が解除されるまでの期間との重複する期間が長くなるので、メイン制御部41及びサブ制御部91双方の制御状態に食い違いが生じてしまうことを極力防止できる。
尚、本実施例では、BB入賞時演出やエンディング演出の演出待ち時間が経過する前の段階において、エラーが発生し、エラー状態に制御されている間、BB入賞時演出やエンディング演出の演出待ち時間の計時が中断され、エラー状態が解除された時点からBB入賞時演出やエンディング演出の演出待ち時間の計時が再開されるようになっているが、これらBB入賞時演出やエンディング演出の演出待ち時間の計時をエラー状態に制御されている間も中断せずに行うようにしても良く、このようにすることで、エラー状態が解除された時点で、賭数の設定の禁止が解除され、極力早い段階で賭数の設定を行うことが可能となるうえに、この状態で賭数の設定が行われることで、再開されたBB入賞時演出やエンディング演出がキャンセルされるので、これらの演出が遊技者にとって煩わしいものとならないばかりか、メイン制御部41側の制御状態が進んでいるにも関わらず、サブ制御部91側の制御状態が停滞して、双方の制御状態に食い違いが生じてしまうことを防止できる。
また、本実施例のスロットマシン1では、ビッグボーナスへの移行と同時に、レギュラーボーナスを作動させるとともに、ビッグボーナス中は1ゲーム毎に、レギュラーボーナスが作動中か否かを判定し、レギュラーボーナスが未作動であると判定された場合には、再度レギュラーボーナスを作動させることで、ビッグボーナスが作動している間、常にレギュラーボーナスに制御するようになっている。このため、ビッグボーナスが作動している間は、レギュラーボーナスにのみ制御すれば良いので、ビッグボーナスへの移行に伴う制御を簡素化することができるとともに、1ゲーム毎にレギュラーボーナスが作動中か否かの判定が行われるため、ビッグボーナス中の各ゲームの制御プログラムを、レギュラーボーナスの作動中か否かに関わらず共通化することができるのでプログラム容量を削減することができる。
また、ビッグボーナスが作動している間は、常にレギュラーボーナスに制御されることにより、ビッグボーナス中においてメダルを最も速く増加させることができるので、従来のようにJACIN入賞に伴いレギュラーボーナスが作動するよりもビッグボーナスへの移行に伴う遊技者の興趣を高めることができる。特に、本実施例のようにレギュラーボーナスへの移行回数でビッグボーナスが終了することなく、ビッグボーナス中のメダルの払出総数が規定値(本実施例では、465枚)を超えることで終了条件が成立する場合には、ビッグボーナス中の純増枚数を高めることができるので、更にビッグボーナスへの移行に伴う遊技者の興趣を高めることができる。
また、本実施例では、レギュラーボーナスが未作動か否かの判定を行う前に、ビッグボーナスの終了条件が成立したか否かの判定を行い、当該判定においてビッグボーナスの終了条件が成立していない場合に、レギュラーボーナスが未作動か否かの判定を行い、未作動の場合には、レギュラーボーナスを作動させるようになっているので、ビッグボーナスが終了してしまうにも関わらず、レギュラーボーナスを再度作動させるための判定、すなわち不要な判定が行われることがない。
尚、本実施例では、レギュラーボーナスの作動が開始した後、レギュラーボーナスに制御されたゲーム数が規定のゲーム数(本実施例では12ゲーム)に到達するか、規定回数(本実施例では8回)入賞が発生することで終了するようになっているが、いずれか一方のみの条件でレギュラーボーナスが終了するようにしても良く、更には、1ゲームのみで終了するものや1回入賞が発生するのみで終了するものであっても良い。また、レギュラーボーナス中のメダルの払出総数や純増枚数(メダルの払出総数から賭数の設定に消費したメダルの総数を減算した枚数)が規定数を超えることで終了するものであっても良いし、これらの条件のうち、いずれかの条件が成立することで終了するものであっても良い。
また、本実施例では、ビッグボーナスの作動が開始した後、ビッグボーナス中のメダルの払出総数が規定値(本実施例では、465枚)を超えることでビッグボーナスが終了するようになっているが、その他の条件でビッグボーナスが終了するものであっても良く、例えば、ビッグボーナス中のメダルの純増枚数(メダルの払出総数から賭数の設定に消費されたメダルの総数を減算した枚数)が規定値を超えたときに終了するものや、ビッグボーナスに制御されたゲーム数が規定のゲーム数に到達すること、レギュラーボーナスへの移行回数が規定回数に到達し、かつ当該レギュラーボーナスが終了することなどでビッグボーナスの終了条件が成立するようにしたり、これらの条件のうちいずれかが成立することでビッグボーナスの終了条件が成立するようにしても良い。
また、本実施例では、ビッグボーナス中、1ゲーム毎にレギュラーボーナスが作動中か否かの判定が行われるようになっているが、ビッグボーナスへの移行と同時に、レギュラーボーナスを作動させるとともに、レギュラーボーナスの終了時に、再度レギュラーボーナスを作動させることで、ビッグボーナスが作動している間、常にレギュラーボーナスに制御するようにしても良く、このようにした場合にも、ビッグボーナスが作動している間は、レギュラーボーナスにのみ制御すれば良いので、ビッグボーナスへの移行に伴う制御を簡素化することができるとともに、1ゲーム毎にレギュラーボーナスが作動中か否かの判定を行う必要がなく、レギュラーボーナスが終了したときのみレギュラーボーナスを再作動させるための処理を行えば良いので、レギュラーボーナスの制御が終了していない状態で不要な処理が行われることがない。
また、この場合には、レギュラーボーナスの終了時に、再度レギュラーボーナスを作動させる前に、ビッグボーナスの終了条件が成立したか否かの判定を行い、当該判定においてビッグボーナスの終了条件が成立していない場合に、再度レギュラーボーナスを作動させることが好ましく、このようにすることで、ビッグボーナスが終了してすぐに終了してしまうにも関わらずレギュラーボーナスが再作動されてしまうことがない。
また、ビッグボーナスに移行後、最初のレギュラーボーナスについては、特定の入賞が発生することなどを契機として移行し、その後のレギュラーボーナスについては、レギュラーボーナス終了時に再作動する構成としても良い。
また、本実施例では、レギュラーボーナスを作動させる際に、レギュラーボーナス中を示すRB中信号の出力待ち時間が経過するまでRB中信号を停止した状態で待機し、出力待ち時間が経過した時点で、RB中信号の出力を開始するようになっており、ビッグボーナス中に連続してレギュラーボーナスを作動させる場合でも、RB中信号の出力が停止し、この状態で出力待ち時間が経過した時点で、再度RB中信号の出力が再開するようになっている。このため、レギュラーボーナスが一旦途切れたことをRB中信号を入力した外部機器にて判別することが可能となり、例えば、外部出力された信号からスロットマシンが正常に動作しているか否かなどの試験を外部機器にて適正に実施することができる。
また、本実施例では、CPU41aが異常入賞か否かの判定を行う際に、役の種類毎に割り当てられたビットの値が0である場合に、当該役の入賞が許容された旨を示し、1である場合に当該役の入賞が許容されていない旨を示す異常入賞判定用フラグと、役の種類毎に割り当てられたビットの値が1である場合に、当該役が入賞した旨を示し、1である場合に当該役が入賞していない旨を示す入賞図柄フラグと、を論理積演算し、その演算結果が0か否か、すなわち演算結果が0であるか否かを示すFレジスタのゼロフラグの値を参照するのみで異常入賞か否かを判定することが可能となり、従来のように成立している役の当選フラグのビットをわざわざ特定して、その特定したビットの値を確認する必要もないので、異常入賞か否かの判定を行う際の処理も簡略化することができる。
また、本実施例では、役の種類毎に割り当てられたビットの値が1である場合に、当該役の入賞が許容された旨を示し、0である場合に当該役の入賞が許容されていない旨を示す内部当選フラグをRAM41cに割り当てられた内部当選フラグ格納ワーク(iwin_flag)に設定するとともに、当選フラグの各ビットの1と0を反転する演算を行うことで、異常入賞判定用フラグを作成するようになっている。すなわち当選フラグを用いて簡単に異常入賞判定用フラグを作成することができる。
また、本実施例のスロットマシン1では、異常入賞が発生した場合、すなわち当該ゲームにおいて許容されていない役が入賞した場合には、異常入賞エラーによるエラー状態に制御され、ゲームの進行が不能化される。すなわち、許容されていない役が入賞した場合には、データが破壊されているか、異常なプログラムが作動している可能性があるため、ゲームの進行が不能化されることとなる。
そして、一度RAM異常エラーや異常入賞エラーによるエラー状態に制御されると、設定変更モードに移行させて、設定変更操作に基づいて設定値を新たに選択・設定しなければ、ゲームの進行が不能化された状態が解除されない。すなわちデータ化けや異常なプログラムの作動などにより、設定値が適正でない場合や設定された賭数が遊技状態に応じた賭数ではない場合、許容されていない役が入賞した場合には、スロットマシンにより自動的に設定された設定値ではなく、設定変更操作に基づいて選択・設定された設定値(一般的に、設定変更操作は遊技店の従業員により行われるので、遊技店側が選択した設定値である)に基づいてゲームが行われることが担保されるので、ゲームの公平性を図ることができる。
また、本実施例では、CPU41aが演出制御基板90に対して遊技の進行に応じたコマンドを送信し、演出制御基板90に搭載されたサブ制御部91は、遊技制御基板40から送信されたコマンドに基づいて演出の制御を行うようになっており、CPU41aは、コマンドを送信するのみで演出の制御を行う必要がないので、CPU41aの処理負荷を軽減できるうえに、演出を多彩なものにできる。
また、遊技制御基板40から演出制御基板90にコマンドが送信されるコマンド伝送ラインが、遊技制御基板40と演出制御基板90との間で演出中継基板80を介して接続されており、遊技制御基板40に演出制御基板90が直接接続される構成ではないので、コマンド伝送ラインからCPU41aに対して外部から不正な信号が入力され、遊技の制御に影響を与えられてしまうことを防止できる。
以上、本発明の実施例を図面により説明してきたが、本発明はこの実施例に限定されるものではなく、本発明の主旨を逸脱しない範囲における変更や追加があっても本発明に含まれることは言うまでもない。
例えば、滑りコマ数データに登録された滑りコマ数を展開する処理や、滑りコマ数別の停止位置を検索する処理、検索した停止位置との優先度を比較する処理などを、停止操作が有効となる前に行い、滑りコマ数を予め仮想滑りコマテーブルに格納しておくとともに、停止操作が検出された際には、仮想滑りコマテーブルを参照し、該当する停止操作位置の滑りコマ数を取得して停止制御を行うようになっているが、仮想滑りコマテーブルを設けず、停止操作が行われた時点で、上記の処理を行って停止操作のタイミングに対応する滑りコマ数を取得するようにしても良い。
また、前記実施例では、導出情報として滑りコマ数を適用しているが、少なくとも停止位置を特定できるものであれば良く、例えば、基準位置に停止する領域番号(図柄番号)などを導出情報として適用しても良い。
また、前記実施例では、テーブル方式、コントロール方式、テーブル+コントロール方式による停止制御を、内部抽選の結果に応じて選択しているが、例えば、停止時期(最初に停止するリール(第1停止)か、2番目に停止するリール(第2停止)か、3番目に停止するリール(第2停止)か)に応じて選択するようにしても良く、例えば、内部抽選の結果に関わらず、第1停止については、テーブル方式にて停止制御を行い、第2停止以降について、内部抽選の結果、停止済みリールの停止位置などによって、テーブル方式、コントロール方式、テーブル+コントロール方式による停止制御を選択するようにしても良い。
また、前記実施例では、内部抽選に用いる設定値、すなわち内部抽選の当選確率を定めた設定値として1〜6の範囲の6段階の値を適用しているが、設定値はこれに限られるものではなく、少なくとも複数段階の設定値を選択して設定できるものであれば良く、例えば、高/低の2段階を選択可能な設定値や、1〜3の範囲の3段階の設定値を選択可能な設定値などを適用しても良い。更に、RAM41cの設定値ワーク1〜3には、これら設定値を示す値として1〜6の値そのものを格納しているが、設定値を特定可能な値が格納されるものであれば良く、例えば、1〜6の設定値に対応して0〜5(実際の設定値から1を減算した値)を設定値ワーク1〜3に格納するようにしても良い。
また、前記実施例では、設定値ワーク1から読み出した値が1〜6の範囲か否かを判定する設定値判定処理1、設定値ワーク1から読み出した値と、設定値ワーク2から読み出した値と、が一致するか否かを判定する設定値判定処理2、設定値ワーク1から読み出した値と、設定値ワーク3から読み出した値と、が一致するか否かを判定する設定値判定処理3の全てを実行して、内部抽選に用いる設定値が適正であるか否かを判定しているが、これら設定値判定処理1〜3のいずれか1つの処理を行うことで、内部抽選に用いる設定値が適正であるか否かを判定するものであっても良く、例えば、設定値判定処理1のみを行うもの、設定値判定処理2のみを行うもの、設定値判定処理3のみを行うもの、設定値判定処理1〜3のうちいずれか2つの処理を行うもの、などであっても良い。
更に、設定値判定処理1〜3のうちいずれか1つの処理を毎ゲーム行い、残りの1つの処理、または残りの全ての処理を所定の契機(例えば、所定ゲーム数毎、ボーナス終了時、特定の役の当選時など)で実行するものや、設定値判定処理のうちいずれか2つの処理を1ゲーム毎に行い、残りの1つの処理を所定の契機で実行するものであっても良い。
また、前記実施例では、設定値判定処理1〜3を1ゲーム毎に実行しているが、設定値判定処理を1ゲーム毎に行うのではなく、設定値判定処理1〜3を所定ゲーム数毎に行ったり、特定の期間(ボーナス中を除く期間など)のゲームにおいて行ったりするようにしても良い。
また、前記実施例では、内部抽選処理において、内部抽選に用いる設定値が適正であるか否かを判定する設定値判定処理1〜3を実行しているが、そのタイミングは、1ゲーム中のどのタイミングであっても良く、例えば、ゲーム開始時やゲーム終了時に行うものであっても良い。
また、前記実施例では、内部抽選処理において、設定値ワーク3の値を設定値ワーク1から読み出した値(今回のゲームの内部抽選に用いるために読み出した設定値)に更新しているが、設定値ワーク3の値を設定値ワーク1から読み出した値に更新するタイミングは、当該ゲームが終了するまでのいずれかのタイミング(例えば、全てのリール2L、2C、2Rの停止時や、メダルの払出終了時など)であれば良い。
また、前記実施例では、設定変更時に、設定値ワーク1及び設定値ワーク2の2つの領域に設定値が格納され、設定値判定処理2において、設定値ワーク1に格納されている値と設定値ワーク2に格納されている値とが一致するか否かを判定し、一致しない場合に、適正な設定値ではないと判定するが、設定変更時に3つ以上の記憶領域に設定値を格納し、設定値判定処理2において、これら3つ以上の記憶領域に格納されている値が全て一致するか否かを判定し、一致しない場合に、適正な設定値ではないと判定するようにしても良い。
更に、設定変更時に3つ以上の記憶領域に設定値を格納し、設定値判定処理2において、これら3つ以上の領域に格納されている値が所定数以上一致するか否か(例えば、5つの記憶領域に設定値を格納し、そのうち3つ以上の値が一致するか否か等)を判定し、所定数以上一致しない場合に、適正な設定値ではないと判定するようにしても良く、このようにすれば、ノイズなどにより設定変更時に格納された設定値を示すデータの一部が欠損した場合でも、誤って適正な設定値ではないと判定されて遊技の進行が不能化してしまうことを防止できる。
また、前記実施例では、設定値ワーク3に前回のゲームの内部抽選に用いた設定値のみが格納され、設定値判定処理3において、設定値ワーク1に格納されている値と設定値ワーク3に格納されている値とが一致するか否か、すなわち今回のゲームの内部抽選に用いる設定値と、前回のゲームの内部抽選に用いる設定値と、が一致するか否かを判定し、一致しない場合に、適正な設定値ではないと判定するが、前回のゲーム以前の所定ゲーム数にわたり各ゲームの内部抽選に用いた設定値を格納するとともに、設定値判定処理3において今回のゲームの内部抽選に用いる設定値と、前回のゲームよりも前のゲーム(例えば、所定ゲーム数前のゲーム)の内部抽選に用いた設定値と、が一致するか否かを判定し、一致しない場合に、適正な設定値ではないと判定するようにしても良い。
また、前回のゲーム以前の所定ゲーム数にわたり各ゲームの内部抽選に用いた設定値を格納するとともに、設定値判定処理3において今回のゲームの内部抽選に用いる設定値と、前回のゲーム以前の複数のゲームの内部抽選に用いたそれぞれの設定値と、が全て一致するか否かを判定し、一致しない場合に、適正な設定値ではないと判定するようにしても良い。
更に、前回のゲーム以前の所定ゲーム数にわたり各ゲームの内部抽選に用いた設定値を格納するとともに、設定値判定処理3において今回のゲームの内部抽選に用いる設定値と、前回のゲーム以前の複数のゲームの内部抽選に用いたそれぞれの設定値と、が所定数以上一致するか否か(例えば、過去5ゲームの内部抽選に用いたそれぞれの設定値を5つの記憶領域に格納し、そのうち3つ以上の値が一致するか否か等)を判定し、所定数以上一致しない場合に、適正な設定値ではないと判定するようにしても良く、このようにすれば、ノイズなどにより設定変更時に格納された設定値を示すデータの一部が欠損した場合でも、誤って適正な設定値ではないと判定されて遊技の進行が不能化してしまうことを防止できる。
また、前記実施例では、内部抽選処理において入賞の当選を判定する際に、設定値判定処理において適正な設定値ではないと判定された場合には、RAM異常エラー状態に制御されるようになっているが、RAM41cの設定値ワークに格納されている設定値が適正な値(1〜6の範囲の値)でない場合に、設定値の初期値(例えば、設定値1)に基づく確率で入賞の当選を判定するようにしても良い。
また、前記実施例では、電断割込処理においてRAM41cのRAMパリティが0となるようにRAMパリティ調整用データを格納し、復旧時においてRAM41cのRAMパリティが0か否かを判定することで、RAM41cのデータが正常か否かを判定しているが、もちろん電断割込処理においてRAM41cのRAMパリティが1となるようにRAMパリティ調整用データを格納し、復旧時においてRAM41cのRAMパリティが1か否かを判定することで、RAM41cのデータが正常か否かを判定するようにしても良い。更には、電断割込処理においてRAM41cの全ての領域のチェックサム(該当する領域に格納されているデータの排他的論理和)を計算し、特定の領域に格納するとともに、復旧時において、RAM41cのチェックサムが格納されている特定の領域を含む全ての領域のチェックサムを計算し、その結果が00HであればRAM41cのデータが正常であると判定し、00HでなければRAM41cのデータが異常であると判定するようにしても良い。
これは、電断割込処理において正常にチェックサムが格納されていれば、復旧時において特定の領域を除く領域のチェックサムと特定の領域に格納されているデータ(電断時に計算したチェックサム)が同じ値をとるはずであり、特定の領域を除く領域のチェックサムと特定の領域に格納されているデータが一致するのであれば、双方のデータの排他的論理和を計算するとその結果が00Hとなるので、RAM41cのチェックサムが格納されている特定の領域を含む全ての領域のチェックサムを計算した結果が00Hであれば、RAM41cのデータが正常であると判定できるためである。
尚、この場合にも、電断割込処理において、チェックサムを計算する前にいずれかのビットが1となる破壊診断用データ(例えば5AH)を所定のアドレスに格納し、復旧時においては、チェックサムが00Hか否かの判定に加えて、破壊診断用データが正常に格納されているか否かの判定を行い、チェックサムが00Hであり、かつ破壊診断用データも正常であることを条件に、RAM41cのデータが正常であると判定することが好ましい。RAM41cのデータが正常でなくても、全ての領域に00Hが格納されている場合には、起動時のチェックサムの判定により正常であると判定されてしまうが、停電時にいずれかのビットが1となる破壊診断用データを格納した後、チェックサムを計算し、特定の領域に格納しておくとともに、起動時にチェックサムの判定に加えて破壊診断用データのチェックも行うことで、例え、起動時において全ての領域が0クリアされてしまい、チェックサムが00Hとなり正常と判定された場合にも、破壊診断用データが停電時に格納された値と一致しなくなり、異常と判定されるため、RAM41cに格納されているデータの異常の判定精度を高めることができる。
また、上記では、電断割込処理においてRAM41cのRAMパリティまたはチェックサムを計算し、RAM41cに格納するとともに、復旧時においてRAM41cの全ての領域に基づいて計算したRAMパリティが0であるか否か、またはRAM41cの全ての領域に基づいて計算したチェックサムが00Hであるか否か、に基づいてRAM41cのデータが正常か否かを判定しているが、電断割込処理においてRAM41cのRAMパリティまたはチェックサムを計算し、特定の領域に格納するとともに、復旧時においてRAM41cの特定の領域を除くRAMパリティまたはチェックサムを計算し、特定の領域に格納されているRAMパリティまたはチェックサムとの比較結果が一致するか否かによってRAM41cのデータが正常か否かを判定するようにしても良い。尚、この場合にも上記と同様に、RAMパリティやチェックサムを計算する前にいずれかのビットが1となる破壊診断用データを所定のアドレスに格納し、復旧時においては、RAMパリティやチェックサムが一致するか否かの判定に加えて、破壊診断用データが正常に格納されているか否かの判定を行い、RAMパリティやチェックサムが一致し、かつ破壊診断用データも正常であることを条件に、RAM41cのデータが正常であると判定することが好ましい。
また、前記実施例では、電断割込処理において破壊診断用データとして、5AHをRAM41cに格納しているが、0以外のデータを格納し、起動時に確認できるものであれば良く、このような構成であっても、起動時において全ての領域が0クリアされてしまった場合に破壊診断用データが停電時に格納された値と一致しなくなり、異常と判定されるため、RAM41cに格納されているデータの異常の判定精度を高めることができる。
また、前記実施例では、CPU41aの起動時において、RAM41cのRAMパリティを計算し、その結果が0であるか否かを判定し、RAMパリティが0であることを条件に破壊診断用データが正常に格納されているか否かの判定を行っているが、まず、破壊診断用データが正常に格納されているか否かを判定し、破壊診断用データが正常に格納されていることを条件に、RAM41cのRAMパリティを計算し、その結果が0であるか否かを判定するようにしても良く、このようにすれば、破壊診断用データが正常に格納されていない場合には、RAMパリティを計算せずに、RAM41cのデータが異常である旨を判定することができる。
また、前記実施例では、メイン制御部41の起動時においてのみRAM41cのデータが正常か否かを判定しているが、その他の契機、例えば、1ゲーム毎に判定するようにしても良い。
また、前記実施例では、メイン制御部41とは別個に設けられたリセット回路49からのリセット信号に基づいてメイン制御部41が起動するようになっているが、リセット回路をメイン制御部41を構成するマイクロコンピュータが搭載していても良い。
また、前記実施例では、メイン制御部41を構成するマイクロコンピュータにRAM41cが搭載されているが、マイクロコンピュータの外部に当該マイクロコンピュータのワークとして用いるRAMを搭載したものであっても良い。
また、前記実施例では、電断検出回路48が、スロットマシン1に用いられる直流電圧を監視し、当該直流電圧が一定の電圧以下となったときに電断を検出しているが、例えば、当該直流電圧が一定の電圧以下となった期間が一定期間継続したときに電断を検出するようにしても良い。また、スロットマシン1に供給される交流電圧を監視し、交流電圧の波形の乱れを検出したとき、またはその期間が一定期間継続したときに電断を検出するようにしても良い。
また、前記実施例では、電断検出回路48が、遊技制御基板40に搭載されているが、その他の場所に搭載されていても良く、例えば、電源基板100や電源基板100から遊技制御基板40への電源の供給ラインが経由する中継基板等に搭載されていても良い。
また、前記実施例では、各種エラー状態の内容をエラー状態に応じたエラーコードを遊技補助表示器12に表示させることで、エラーを報知するようになっている。すなわち遊技制御部41により制御される報知手段により報知されているが、これら遊技制御部41により制御される報知手段に加えて、エラー状態を示すコマンドをサブ制御部91に対して送信し、サブ制御部91により制御される報知手段によりエラーの報知が行われるようにしても良いし、遊技制御部41により制御される報知手段による報知を行わず、サブ制御部91により制御される報知手段によりエラーの報知が行われるようにしても良い。
また、前記実施例では、ビッグボーナス入賞時においてゲーム終了後、BB入賞時演出待ち時間が経過するまでの期間、打止機能が無効に設定されている場合のビッグボーナス終了時においてゲーム終了後、エンディング待ち時間が経過するまでの期間、打止機能が有効に設定されている場合のビッグボーナス終了時においてエンディング待ち時間の経過後、店員によるリセット操作がなされて打止状態が解除されるまでの期間、のいずれにおいても賭数の設定が禁止されるようになっているが、少なくともこれらいずれか1つ以上の期間において賭数の設定が禁止されるものであれば良い。
また、前記実施例のスロットマシン1では、打止機能を搭載しているが、打止機能を搭載しないスロットマシンに適用しても良い。
また、前記実施例においてBB入賞時演出の演出用待ち時間とBB終了時演出の演出用待ち時間とは、同一の時間であっても良いし、異なる時間であっても良い。
また、前記実施例では、入賞時に賭数の設定が一定期間(BB入賞時演出の演出用待ち時間)禁止される移行入賞として、ビッグボーナス入賞のみを適用しているが、その他の特別役(レギュラーボーナス入賞等)を適用しても良いし、複数種類の特別役に適用しても良い。更に、同一種類の特別役であってもその中で更にビッグボーナス入賞やレギュラーボーナス入賞が複数種類(例えば、当該ボーナス入賞を構成する図柄の組合せ、当該ボーナス入賞を構成する図柄の色、の一方または双方が異なるものや、当該ボーナス入賞を契機とするボーナス中に獲得が期待できるメダル数等、ボーナス中の制御が異なるもの等)からなる場合には、これらのうち特定のボーナス入賞のみ、入賞時に賭数の設定が一定期間禁止されるようにしても良い。また、特別役の種類(ビッグボーナス入賞とレギュラーボーナス入賞)、ビッグボーナス入賞やレギュラーボーナス入賞の種類に応じて、入賞時に賭数の設定が禁止される期間が異なるようにしても良い。そして、賭数の設定が禁止される期間に応じて実行時間の異なるボーナス入賞時の演出を実行するようにしても良い。
また、前記実施例では、終了時に賭数の設定が一定期間(エンディング演出の演出用待ち時間)禁止される特別遊技状態として、ビッグボーナスのみを適用しているが、その他の特別遊技状態(レギュラーボーナス等)を適用しても良いし、複数種類の特別遊技状態に適用しても良い。更に、同一種類の特別遊技状態であってもその中で更にビッグボーナスやレギュラーボーナスが複数種類(例えば、当該ボーナスへの移行契機となるボーナス入賞を構成する図柄の組合せ、当該ボーナスへの移行契機となるボーナス入賞を構成する図柄の色、の一方または双方が異なるものや、当該ボーナス中に獲得が期待できるメダル数等、ボーナス中の制御が異なるもの等)からなる場合には、これらのうち特定のボーナスのみ、終了時に賭数の設定が一定期間禁止されるようにしても良い。また、特別遊技状態の種類(ビッグボーナスとレギュラーボーナス)、ビッグボーナスやレギュラーボーナスの種類に応じて、終了時に賭数の設定が禁止される期間が異なるようにしても良い。そして、賭数の設定が禁止される期間に応じて実行時間の異なるエンディング演出を実行するようにしても良い。
また、前記実施例では、終了後にリセット操作がなされるまで賭数の設定が禁止される打止状態に制御される特別遊技状態として、ビッグボーナスのみを適用しているが、その他の特別遊技状態(レギュラーボーナス等)を適用しても良いし、複数種類の特別遊技状態に適用しても良い。更に、同一種類の特別遊技状態であってもその中で更にビッグボーナスやレギュラーボーナスが複数種類(例えば、当該ボーナスへの移行契機となるボーナス入賞を構成する図柄の組合せ、当該ボーナスへの移行契機となるボーナス入賞を構成する図柄の色、の一方または双方が異なるものや、当該ボーナス中に獲得が期待できるメダル数等、ボーナス中の制御が異なるもの等)からなる場合には、これらのうち特定のボーナスのみ、終了後に打止状態に制御されるようにしても良い。
また、前記実施例では、ビッグボーナスの終了条件が成立したゲームであっても、ゲームの終了が判定された時点で、クレジットの精算の禁止が解除され、賭数の設定が禁止される期間(エンディング演出の演出待ち時間)においても、クレジットの精算が可能であるが、例えば、ビッグボーナスの終了条件が成立したゲームにおいて、ゲームの終了が判定されてからの経過時間がエンディング演出の演出待ち時間に到達したときに打止状態に制御するとともに、ゲームの終了が判定されてからの経過時間がエンディング演出の演出待ち時間に到達するまで、賭数の設定及びクレジットの精算の双方を禁止し、経過時間がエンディング演出の演出待ち時間に到達した時点で、クレジットの精算の禁止のみを解除するようにしても良い。これにより、ビッグボーナスの終了条件が成立したゲームにおいて、ゲームの終了が判定されてからの経過時間がエンディング演出の演出待ち時間に到達するまでは、クレジットを精算できないが、その後の打止状態においては、打止状態の解除を待たずしてクレジットの精算が可能となるので、可能な限り遊技者の意志を反映して、遊技者所有のものとして記憶されているクレジット分のメダルの返却を受けることができる。これにより、特に、ビッグボーナスの終了時においてエンディング演出の演出待ち時間が経過した後、すぐに遊技を終了したい遊技者の意志を反映させてメダルの返却を受けることが可能となる。
また、前記実施例では、ゲーム終了時処理の終了によりゲームの終了が判定されるが、メダルの払出が終了することで、実質的にゲームは終了しているので、払出処理の終了によりゲームの終了が判定されるようにしても良い。すなわち払出処理の終了時点からクレジットの精算が可能となる構成としても良い。
また、前記実施例では、BB入賞時演出の演出待ち時間を計時する演出待ち時間用のタイマカウントと、エンディング演出の演出待ち時間を計時する演出待ち時間用のタイマカウントと、に共通のタイマカウンタを用いているが、これらのタイマカウンタを別個に備えるものであっても良い。
また、前記実施例においては、図16に示すように、当選フラグは、当選した役に該当するビットの値が1、それ以外のビットの値が0とされる。また、入賞図柄フラグは、入賞した役に該当するビットの値が1、それ以外のビットの値が0とされる。そして、内部当選フラグを全ビット反転させて、入賞図柄フラグとの論理積(AND)を算出し、その結果が00H(全ビットが0)となったときに正規入賞、00H以外(いずれかのビットが1)となったときに異常入賞と判定している。
これに対して、図60に示すように、前記実施例と同様に、当選フラグを全ビット反転した値と、入賞図柄フラグとの論理積(AND)を算出した後に、こうして算出した値の全ビットを更に反転させて、その結果がFFH(全ビットが1)となったときに正規入賞、FFH以外(いずれかのビットが0)となったときに異常入賞と判定しても良い。
また、図61に示すように、当選フラグと、入賞図柄フラグを全ビット反転した値との論理和(OR)を算出した後に、こうして算出した値の全ビットを更に反転させて、その結果が00H(全ビットが0)となったときに正規入賞、00H以外(いずれかのビットが1)となったときに異常入賞と判定しても良い。この場合には、前記実施例と同様に、演算結果が00Hか否か、すなわち演算結果が0か否かを示すFジスタ(フラグレジスタ)のゼロフラグの値を確認するのみで、異常入賞か否かを判定することができる。
また、図62に示すように、当選フラグと、入賞図柄フラグを全ビット反転した値との論理和(OR)を算出し、その結果がFFH(全ビットが1)となったときに正規入賞、FFH以外(いずれかのビットが0)となったときに異常入賞と判定しても良い。
このように図60〜図61に示す異常入賞判定の変形例においても、当選フラグまたは当選フラグを反転した値と入賞図柄フラグまたは入賞図柄フラグを反転した値とを論理和演算または論理積演算した結果が、0以外の値であるか否か、または1以外の値であるか否か、を判定するのみで異常入賞か否かを判定することが可能となる。
尚、図61、図62の場合においては、入賞に伴って設定される入賞図柄フラグを予め全ビット反転させておけば、すなわち、入賞した役に該当するビットの値が0、それ以外のビットの値が1となるように入賞図柄フラグを設定するようにしておけば、異常入賞判定処理における入賞図柄フラグの全ビットを反転させるステップは不要となる。
また、図60、図61の場合において、演算結果がFFHか否かを判定する際に、演算結果に1を加算し、加算後の値がオーバーフローした場合に演算結果がFFHであると判定し、オーバーフローしなかった場合に演算結果がFFH以外であると判定することが好ましく、このようにした場合には、演算結果がオーバーフローしたか否かを示すFレジスタのキャリーフラグの値を確認するのみで異常入賞か否かを判定することが可能となる。
次に、前記実施例のように、当選フラグは、当選した役に該当するビットの値が1、それ以外のビットの値が0とされ、また、入賞図柄フラグは、入賞した役に該当するビットの値が1、それ以外のビットの値が0とされる場合において、いずれのフラグも全ビットを反転させずに異常入賞を判定する変形例について説明する。
この変形例においては、当選フラグを異常入賞判定用フラグとして適用する。そして、内部当選フラグの各々のビットの値から、入賞図柄フラグにおける同じ位置のビットの値を減算し、すべてのビットにおいて減算結果が負の数とならなかったことを条件に、異常入賞か否かを判定する。例えば、当選フラグの第0ビットの値から、入賞図柄フラグの第0ビットの値を減算して、減算結果が負の数となったかを判定し、負の数とならなかった場合には、次のビット、すなわち内部当選フラグの第1ビットの値から、入賞図柄フラグの第1ビットの値を減算してその結果を判定していき、最終的に第0ビットから第15ビットまでのすべてにおいて、減算結果が負の数とならなかったことを条件に、異常入賞でない旨を判定する。
このようにした場合には、演算結果が負の数となったか否かを示すFレジスタのサインフラグの値を確認するのみで異常入賞か否かを判定することが可能となる。更には、これまでの実施例及び変形例のように、当選フラグと入賞図柄フラグのいずれのフラグもビットを反転せずに異常入賞か否かを判定することが可能となる。
また、前記実施例では、内部抽選に用いる判定値数が記憶されるRAM41cの判定値数記憶領域は、2バイトの領域を用いて、それぞれの場合における判定値数を記憶するものとしていた。もっとも、一般的なスロットマシンでは、特別役の判定値数は、いずれの遊技状況においても255を超えるものが設定されることはあまりない。このように255を超える判定値数を設定する必要がないものについては、1バイトの領域だけを用いて、判定値数を記憶するものとしても良い。
また、前記実施例では、判定値数が設定値に関わらず共通のものについて、その一部を設定値1〜6の全体に共通して記憶しているが、判定値数が設定値に関わらず共通のものについても、設定値1〜6のそれぞれに対して個別に記憶することもできる。また、判定値数が設定値に関わらず共通のものは、その全てを設定値1〜6の全体に共通して記憶することもできる。
また、前記実施例では、判定値数が、設定値1〜6の全体に共通して記憶されているか、設定値1〜6のそれぞれに対して個別に記憶されているかであった。もっとも、設定値1〜6の全体に共通して判定値数が記憶されない(設定値についての共通フラグが設定されない)ものとして、例えば、設定値1〜3については判定値数が共通、設定値4〜6については判定値数が共通のものとすることもできる。
また、前記実施例では、同一の設定値における同一の役または役の組み合わせについて遊技状態(状態番号)に応じて参照される判定値数が遊技状態(状態番号)のそれぞれに対して異なるアドレスに格納されていた。すなわち同一の設定値における同一の役または役の組み合わせについて遊技状態(状態番号)に応じて参照される判定値数が同じであっても個別に記憶されていたが、遊技状態(状態番号)に関わらず当選確率を同一とするものとした役または役の組み合わせについて、判定値数の格納先のアドレスを共通化したり、設定値及び遊技状態(状態番号)に関わらず当選確率を同一とするものとした役または役の組み合わせについて、判定値数の格納先のアドレスを共通化するようにしても良く、このように判定値数を共通化して格納することで、そのために必要な記憶容量が少なくて済むようになる。
また、前記実施例では、設定値等に応じて取得した判定値数を内部抽選用の乱数の値に順次加算していたが、取得した判定値数を取得した内部抽選用の乱数の値から順次減算して、減算の結果を新たな内部抽選用の乱数の値とするものとしても良い。判定値数を内部抽選用の乱数の値から減算するときには、減算の結果にオーバーフロー(ここでは、減算結果がマイナスとなること)が生じたかどうかを判定するものとすることができる。
また、前記実施例では、内部抽選において、取得した内部抽選用の乱数の値に遊技状態に応じた各役または役の組み合わせの判定値数を順次加算していき、加算結果がオーバーフローしたときに当該役または役の組み合わせを当選と判定するものとしていた。これに対して、遊技状態に応じた各役または役の組み合わせの判定値数に応じて、各役または役の組み合わせを当選と判定する判定値の範囲を定めた当選判定用テーブルをゲーム毎に作成し、取得した内部抽選用の乱数の値を各役または役の組み合わせの判定値の範囲と比較することで、内部抽選を行うものとしても良い。また、各役または役の組み合わせを当選と判定する判定値の範囲を定めた当選判定用テーブルを予めROM41bに格納しておき、取得した内部抽選用の乱数の値を各役の判定値の範囲と比較することで、内部抽選を行うものとしても良い。
また、前記実施例では、通常遊技状態において、賭数として3を設定することのみによりゲームを開始させることができた。これに対して、通常遊技状態においても、賭数として1を設定してゲームを開始させることをできるようにしたり、更には賭数として2を設定してゲームを開始させることをできるようにしても良い。これにより、通常遊技状態で賭数として1または2が設定されていたときには、賭数として3が設定されたときよりも内部抽選における小役の当選確率を低下させるともに、小役に入賞したときの払い出しメダル枚数を増加させることができる。例えば、通常遊技状態で賭数として3が設定されたときには、ベルの当選確率を1/4.82、払出枚数を7枚とするが、賭数として1または2が設定されたときには、ベルの当選確率を1/4.82よりも低くし、払出枚数を7枚よりも多くしても良い。更に賭数として1が設定されたときと2が設定されたときとで、ベルの当選確率及び払出枚数を変えても良い。
また、前記実施例では、メダル並びにクレジットを用いて賭数を設定するスロットマシンを用いているが、本発明はこれに限定されるものではなく、遊技球を用いて賭数を設定するスロットマシンや、クレジットのみを使用して賭数を設定する完全クレジット式のスロットマシンであっても良い。
更に、図63に示すように、流路切替ソレノイド30や投入メダルセンサ31など、メダルの投入機構に加えて、遊技球の取込を行う球取込装置30’、球取込装置30’により取り込まれた遊技球を検出する取込球検出スイッチ31’を設けるとともに、ホッパーモータ34や払出センサ35など、メダルの払出機構に加えて、遊技球の払出を行う球払出装置34’、球払出装置34’により払い出された遊技球を検出する払出球検出スイッチ35’を設け、メダル及び遊技球の双方を用いて賭数を設定してゲームを行うことが可能であり、かつ入賞の発生によってメダル及び遊技球が払い出されるスロットマシンに適用しても良い。