<1.第1実施形態>
<1−1:スロットマシンの外観構成>
図1は、本発明の実施形態に係るスロットマシン1の外観を示す斜視図である。スロットマシン1の筐体は、本体2と本体2の前面に取り付けられたフロントドア3とを備えている。フロントドア3の上段右側には、第1表示部10Aが設けられている。一方、フロントドア3の中段中央部には、第2表示部10Bが設けられている。第2表示部10Bは、その大きさが第1表示部10Aよりも大きく、且つ、第1表示部10Aよりもスロットマシン1の中央部に配置されているので、第1表示部10Aよりプレイヤーに視認され易い。第1表示部10A及び第2表示部10Bの前面には、第1表示窓4A及び第2表示窓4Bが設けられている。第1表示窓4A及び第2表示窓4Bは、例えば、アクリル樹脂等の透明な材料により形成されている。また、第1表示窓4A及び第2表示窓4B上には水平に3本、斜めに2本の入賞ラインL1〜L5が設けられている。
くわえて、第2表示窓4Bの左側には補助表示部11が設けられている。補助表示部11は、各入賞ラインL1〜L5に各々対応する5個のLEDからなる。なお、第1表示窓4Aの周辺に補助表示部11を設けてもよい。プレイヤーがメダルを投入したり、あるいは、後述するベット操作を行うと、ベット数に応じた数の入賞ラインL1〜L5が有効となる。このスロットマシン1では、ベット数が1枚の場合に入賞ラインL1が有効となり、ベット数が2枚の場合に入賞ラインL1〜L3が有効となり、ベット数が3枚の場合に入賞ラインL1〜L5が有効となる。補助表示部11を構成する各LEDは、対応する入賞ラインL1〜L5が有効である場合に点灯し、無効である場合に消灯する。これによって、プレイヤーは、どの入賞ラインL1〜L5が有効であるかを知ることができる。
第1表示窓4Aの内側には、各々の外周面に複数種類の図柄が描かれた3列の左・中・右リールRa1、Ra2、Ra3が回転自在に設けられており、第2表示窓4Bの内側には、各々の外周面に複数種類の図柄が描かれた3列の左・中・右リールRb1、Rb2、Rb3が回転自在に設けられている。表示列としての左・中・右リールRa1、Ra2、Ra3は後述するメイン基板から信号によってそれらの回転(可変表示)及び停止が制御される一方、表示列としての左・中・右リールRb1、Rb2、Rb3は後述するサブ基板から信号によってそれらの回転(可変表示)及び停止が制御される。
図2に、左・中・右リールRb1、Rb2、Rb3の構造を示し、図3に、右リールRb3の詳細な構造を示す。各リールRb1〜Rb3は、環状の形状をしており、その表面には各種の図柄が印刷されている。また、右リールRb3の裏面には、一部を除いて、光を遮光する遮光膜Sが形成されている。遮光膜Sが形成された部分では、裏面側から光を照射しても光が透過しない。一方、各図柄部分は、遮光膜Sが形成されておらず、光を散乱させるための凹凸部材Pが右リールRb3の裏面に形成されている。くわえて、各図柄部分は、リール自体が白色半透明になっている。図3に示す例では、図柄「7」の輪郭部分の内部に凹凸部材Pが形成されている。
また、右リールRb3の内周面側には、右リール用照明ユニット670が配置されている。右リール用照明ユニット670は遮光壁によって仕切られた上段・中段・下段シェードを備える。各上段・中段・下段シェードには光源67が設けられている。光源67としては、冷陰極管、LED、あるいは電球を用いることができる。
さらに、右リールRb3の一部には、遮光片491がリール本体から突出して設けられており、右リールRb3が回転するとフォトセンサ492を横切るようになっている。フォトセンサ492は右リールRb3の回転位置を検出する右リール位置検出センサ49B(図11参照)として機能する。なお、左リールRb1および中リールRb2の構造およびその周辺構成は、図3を用いて説明した右リールRb3の構造およびその周辺構成と同様であり、左リールRb1および中リールRb2についても、回転位置を検出する左・中リール回転位置検出センサ47B、48Bが設けられている。これらのセンサの出力信号はサブ基板に送られる。
また、第1表示部10Aの左・中・右リールRa1、Ra2、Ra3は上述した第2表示部10Bと同様に構成されている。但し、これらのリールには、メイン基板用の左・中・右リール位置検出センサ47A、48A、49Aの他にサブ基板用の左・中・右リール位置検出センサ47C、48C、49Cが設けられている。なお、この例では、メイン基板用の左・中・右リール位置検出センサ47A、48A、49Aとサブ基板用の左・中・右リール位置検出センサ47C、48C、49Cと独立して設けたが、左・中・右リール位置検出センサ47A、48A、49Aをサブ基板用と兼用して用いてもよい。これらのセンサからは、1回転に遮光片がフォトセンサを通過するタイミングでアクティブとなる基準点通過信号が検出信号として生成される。
図1に戻り、説明を続ける。第2表示窓4Bの下方には、プレイヤーが遊技を実行するための各種操作部材が配置された操作部OPが設けられている。操作部OPは、メダル投入口5、スタートレバー6、左・中・右リールストップボタン7a,7b,7c、クレジットボタン8、及びBETボタン15を備える。
メダル投入口5は、第2表示窓4Bの右斜下に設けられており、メダルを投入できるようになっている。メダルを1枚投入すると入賞ラインL1が有効となり、メダルを2枚投入すると入賞ラインL1〜L3が有効となり、メダルを3枚投入すると入賞ラインL1〜L5が有効となる。さらに、プレイヤーが3枚を超えてメダルを投入すると、スロットマシン1は4枚以上のメダル数をクレジットとして貯留する。
BETボタン15は、第2表示窓4Bの左斜下に設けられている。BETボタン15は、プレイヤーが一回のゲームでベットするメダル数を指定するために用いられる。このBETボタン15をプレイヤーが操作することで、メダル投入口5からメダルを投入しなくても、貯留されたメダルをベットすることができる。このため、BETボタン15の操作によって指定されたメダル数に応じて、入賞ラインL1〜L5が適宜有効となる。BETボタン15の操作によって指定されたメダル数と有効となる入賞ラインL1〜L5との関係は、メダルを直接投入する場合と同じである。
スタートレバー6は、BETボタン15の下方に設けられている。スタートレバー6は、プレイヤーがゲームの開始を指示するために用いられる。プレイヤーがスタートレバー6を押し下げると、左・中・右リールRa1、Ra2、Ra3及び左・中・右リールRb1、Rb2、Rb3が一斉に回転を開始し、第1表示部10A及び第2表示部10Bの図柄が可変表示となる。
左・中・右リールストップボタン7a、7b、7cは、スタートレバー6の右横に設けられている。左・中・右リールストップボタン7a、7b、7cは、第1表示窓4A及び第2表示窓4Bで回転する左・中・右リールRa1、Ra2、Ra3及び左・中・右リールRb1、Rb2、Rb3をそれぞれ停止させるために用いられる。
スタートレバー6の左側には、メダルをスロットマシン1に貯留するか否かを決定するためのクレジットボタン8が設けられている。プレイヤーがクレジットボタン8を操作することによりクレジットを有効とするか、または無効とするかを変更することができる。所定の場合、メダル払出口10aからメダルがプレイヤーに払い出され、メダル受皿10に貯留される。
<1−2:役と図柄の関係>
図4に、左・中・右リールRa1、Ra2、Ra3及び左・中・右リールRb1、Rb2、Rb3に表示される図柄の一例を示す。この図に示すように各リールには、21個・6種類の図柄が表示されており、各図柄には図柄番号PN=1〜21が割り当てられている。以下の説明では、左・中・右を区別する必要がない場合には、第1表示部10Aの左・中・右リールRa1、Ra2、Ra3を単にメインリールと称し、第2表示部10Bの左・中・右リールRb1、Rb2、Rb3を単にサブリールと称する。
図5に、サブリールの図柄と、メインリールの図柄との対応関係を示す。この図に示すようにサブリールのある図柄は、左・中・右リールRa1、Ra2、Ra3毎に異なる図柄と対応付けられている。例えば、サブリールの図柄「7」は、左リールRa1の図柄「1」、中リールRa2の図柄「3」、右リールRa3の図柄「4」と各々対応付けられている。
図柄の組合せは、遊技価値を与える「役」と無価値な「ハズレ」とに大別される。そして、役は、表示列たる各メインリールが停止した状態において、有効な入賞ライン上に停止した図柄の組合せのうち、所定の態様のものをいう。この例では、メインリールの図柄がサブリールの図柄に対応付けられているから、各サブリールが停止した状態において、第2表示部10Bの有効な入賞ライン上に停止した図柄の組合せのうち、所定の態様のものは役に該当する。
図6に、役とサブリール及びメインリールの図柄の関係を示す。本実施形態では、役として、BB役、RB役、プラム役、ベル役、チェリー役、及びリプレイ役を採用する。役を構成する図柄が有効な入賞ライン上に揃うことを入賞といい、入賞した役に応じた枚数のメダルが払い出される。メダルは、ゲームを開始する際にスロットマシン1に投入するものであり、プレイヤーがゲームを継続するために必要である。つまり、メダルはゲームの継続等の遊技価値を有する遊技媒体といえる。
図6に示すように、メインリールの役を構成する図柄は、第1表示部10Aの複数の入賞ラインL1〜L5のうち賭けの対象となる有効化された入賞ライン上に予め定められた異なる種類の図柄が並ぶ態様であり、サブリールの役を構成する図柄は、第2表示部10Bの複数の入賞ラインL1〜L5のうち有効化された入賞ライン上に同じ種類の図柄が並ぶ態様である。本実施形態の役には次のものがある。
1)BB役 この役は、左リールRa1,Rb1、中リールRa2,Rb2、右リールRa3,Rb3における図柄番号PN=21の図柄の組合せであり、サブリールの停止態様が「7−7−7」、メインリールの停止態様が「1−3−4」である。
2)RB役 この役は、左リールRa1,Rb1、中リールRa2,Rb2、右リールRa3,Rb3における図柄番号PN=5の図柄の組合せであり、サブリールの停止態様が「BAR−BAR−BAR」、メインリールの停止態様が「2−5−3」である。
3)ベル役 この役は、左リールRa1,Rb1における図柄番号PN=16、12、9または2の図柄、中リールRa2,Rb2における図柄番号PN=20、17、13、9または3の図柄、右リールRa3,Rb3における図柄番号PN=18、13、9、または1の図柄の組合せであり、サブリールの停止態様が「ベル−ベル−ベル」、メインリールの停止態様が「5−6−7」である。
5)プラム役 この役は、左リールRa1,Rb1における図柄番号PN=18、15、9または2の図柄、中リールRa2,Rb2における図柄番号PN=18、14、10、6または1の図柄、右リールRa3,Rb3における図柄番号PN=19、14、10、6または2の図柄の組合せであり、サブリールの停止態様が「プラム−プラム−プラム」、メインリールの停止態様が「4−1−2」である。
6)チェリー役 この役は、左リールRa1,Rb1における図柄番号PN=20、13または6の図柄が入賞ラインL1〜L5のうち有効化されたものに停止すればよく、他のリールの停止位置とは無関係である。即ち、サブリールの停止態様が「チェリー−?−?」、メインリールの停止態様が「6−?−?」である。
7)リプレイ役 この役は、左リールRa1,Rb1における図柄番号PN=19、17、10または3の図柄、中リールRa2,Rb2における図柄番号PN=19、15、11、7または2の図柄、右リールRa3,Rb3における図柄番号PN=20、15、11、7または3の図柄の組合せであり、サブリールの停止態様が「リプレイ−リプレイ−リプレイ」、メインリールの停止態様が「7−4−1」である。リプレイ役が成立してもメダルの払い出しはないが、再遊技ができる。再遊技とは、新たにメダルを投入することなく再びゲームを行うことをいう。
これらの役は、遊技状態別に役毎にプレイヤーに付与される遊技価値が予め定められている。役には、1枚から15枚の払い出しが付与される役、入賞による払い出しのあるなしにかかわらずビッグボーナスやレギュラーボーナス等の有利な遊技状態が付与される役、払い出しはないがメダルを投入することなく再度、同数のメダル投入条件で遊技が行える再遊技を付与される役がある。また、これらのすべての役がどの遊技状態においても必ずしも賞として定められているとは限らない。ある遊技状態では賞として成立するが、別の遊技状態においては賞として成立しないというような役も可能である。すなわち、各役の入賞毎によってプレイヤーに付与される遊技価値は、遊技状態毎に予め定められているおり常に一定であるとは限らない。
本実施例においては、通常の遊技状態におけるプレイヤーに付与される遊技価値は、プラム役は15枚、ベル役は10枚、チェリー役は2枚の払い出しが行われ、リプレイ役は再遊技が可能となる役とする。
各種の役のうち、ベル役、チェリー役およびプラム役等の2枚から15枚程度の配当や再遊技が付与される等の比較的低い遊技価値に対応する役を総称して小役と呼ぶ。一方、RB役が入賞すると、15枚の払い出しが行われると共に遊技状態がレギュラーボーナス(以下、適宜「RB」と省略して記載する。)と呼ばれる特定遊技状態に移行する。レギュラーボーナスでは、ジャックゲームを12回行うことができ、RB期間は、ジャックゲームを12回行うか、最大8回入賞すると終了となる。ジャックゲームは、1枚のメダルをベットして中央の入賞ラインL1のみを有効にして行われる。ジャックゲームの役としては、リプレイ役を採用する。この役を構成する図柄が入賞ラインL1に揃うとスロットマシン1は15枚のメダル払い出しを行う。つまり、通常の遊技状態ではリプレイ役が揃っても再遊技ができるだけであるが、レギュラーボーナス期間中に行われるジャックゲームにおいて、リプレイ役を構成する図柄が揃うと15枚のメダルの払い出しを受けることができる。また、後述するビッグボーナス中にはレギュラーボーナスの賞にリプレイ役を割り当てている。なお、RBの遊技状態では通常の遊技状態にはないジャックゲームが行われるので、通常の遊技状態と比較してRBの遊技状態はプレイヤーにとって有利な遊技状態であるといえる。
また、BB役に入賞すると、遊技状態が通常の遊技状態からビッグボーナス(以下、必要に応じてビッグボーナスを「BB」と省略して記載する。)と呼ばれる特別の遊技状態に移行する。ビッグボーナス期間中は、レギュラーボーナスが最大3回分行えるのに加えて、小役を高当選確率状態での遊技を最大30回成立させることが可能である。ビッグボーナスは、レギュラーボーナスと比較してより有利な遊技状態である。なお、以下の説明では、ビックボーナス中のレギュラーボーナスと、単独で入賞したレギュラーボーナスとを区別するため、前者をBB中RBと称し、後者を単独RBと称する。
<1−3:スロットマシンの電気的構成>
図7は、スロットマシン1における遊技処理動作の制御を司る制御装置と、スロットマシン1を構成するもののうち本発明に関係のある周辺装置を含む回路構成とを示すブロック図である。
制御装置は、メイン基板30Aとサブ基板30Bを主たる構成要素とする。メイン基板30Aは、メインCPU31、クロック発生回路32、数列発生回路33、RAM34、ROM35、送出タイミング制御回路36、データ送出回路37、入力ポート38および出力ポート39を備える。
メインCPU31は、送出タイミング制御回路36を除くメイン基板30Aの各構成要素とバス(図示せず)を介して接続されている。メインCPU31は、第1制御プログラムCP1を実行して各構成要素を制御する。第1制御プログラムCP1には、スロットマシン1全体をどのように動作させるかが記述されている。このため、メインCPU31は、スロットマシン1の制御中枢として機能する。クロック発生回路32は、水晶振動子を含む発振回路を備えており、固定周期の基準クロック信号CLKを生成し、これをメインCPU31と数列発生回路33とに供給する。
数列発生回路33は、高速のリングカウンタで構成されており、基準クロック信号CLKをカウントしてカウントデータCDを生成する。カウントデータCDの数値範囲は、後述する賞群抽選テーブルTBL1の記憶内容によるが、例えば、0〜59999である。カウントデータCDはメインCPU31に常時供給されており、メインCPU31は、プレイヤーがスタートレバー6を押し下げたタイミングを検知し、当該タイミングでカウントデータCDをサンプリングすることによって、サンプリングデータSDを生成する。
プレイヤーはカウントデータCDの値を知ることができないから、スタートレバー6がプレイヤーによって押し下げられるタイミングはランダムである。したがって、サンプリングデータSDの値は乱数の中からある値をサンプリングしたものと等価である。なお、数列発生回路33は基準クロック信号CLKに同期して動作するので、カウントデータCDの周期は極めて短い。例えば、基準クロック信号CLKの周波数が30MHzであれば、カウントデータCDの値が「0」から「59999」まで変化するのに要する時間は、2msecである。したがって、プレイヤーが不正な手段によってカウントデータCDの値を知ることができたとしても、スタートレバー6を操作して所望の値を有するサンプリングデータSDをメインCPU31に生成させることは不可能である。
次に、RAM34は、メインCPU31の作業領域として機能し、演算処理の途中結果や必要に応じて生成されたデータや各種の制御に用いるフラグ等を記憶する。例えば、内部抽選の結果を示す内部抽選データISD等がRAM34に記憶されている。
ROM35には、第1制御プログラムCP1の他、賞群抽選テーブル群TBL1、停止テーブル群TBL2、および入賞図柄組合せテーブルTBL3等が格納されている。入賞図柄組合せテーブルTBL3には、入賞役の図柄の組合せと、入賞役のメダル払出枚数とが対応づけられて記憶されている。
本実施形態のスロットマシン1における役の種類としては、BB役、RB役、ベル役、チェリー役、プラム役及びリプレイ役があることは上述した通りである。BB役の成立はビッグボーナスに移行する契機となる一方、RB役の成立はレギュラーボーナスに移行する契機となる。また、小役の種類によってプレイヤーが獲得できる遊技価値は各々異なる。スロットマシン1の制御においては、遊技価値の相違に応じた制御が必要とされることから、遊技価値に着目して各種の役を分類しておくと便利である。そこで、本実施形態のスロットマシン1は、これらの役に対応して各賞群を割り当てる。BB役に対応する賞群をBB賞、RB役に対応する賞群をRB賞、ベル役に対応する賞群をベル賞、プラム役に対応する賞群をプラム賞、チェリー役に対応する賞群をチェリー賞、リプレイ役に対応する賞群をリプレイ賞という。
賞群抽選テーブル群TBL1は、複数の賞群抽選テーブルを含む。メインCPU31は、遊技状態に応じて選択した賞群抽選テーブルを用いて内部抽選を行う。賞群抽選テーブルとしては、通常ゲームに用いられるテーブル、ビッグボーナスゲームに用いられるテーブル、レギュラーボーナスゲームに用いられるテーブルが用意されている。
図8に通常ゲーム用の賞群抽選テーブルTBL11の記憶内容を示す。この図に示すように、賞群抽選テーブルTBL11は、第1〜第7記憶領域ADR1〜ADR7に抽選区分データを各々記憶している。抽選区分データの値は、各賞群に対応する抽選区分の幅を示す。例えば、第1記憶領域ADR1に記憶される抽選区分データはハズレに対応しておりその値は「54000」である。また、第7記憶領域ADR7に記憶される抽選区分データはBB賞に対応しており、その値は「300」である。したがって、BB賞に当選する確率はハズレに当選する確率の1/180となる。
図9は、賞群抽選テーブルTBL11を用いた内部抽選処理におけるメインCPU31の動作を示すフローチャートである。まず、メインCPU31は初期化処理を行う(ステップS1)。具体的には、変数Nの値を「0」にクリアするとともに内部レジスタに記憶している値を「0」にクリアする。
次に、メインCPU31は、サンプリングデータSDを内部レジスタに記憶し(ステップS2)、これに続いて、変数Nの値をN+1に変更する(ステップS3)。この後、メインCPU31はN番目の記憶領域から抽選区分データを読み出す(ステップS4)。初期化処理の直後の処理では、変数Nの値が「1」となるので、第1記憶領域ADR1から抽選区分データが読み出される。この場合の値は「54000」となる。
次に、メインCPU31は内部レジスタの記憶内容を読み出し、読み出したデータ値と抽選区分データ値を加算し、加算値を内部レジスタに記憶する(ステップS5)。この結果、内部レジスタの記憶内容は、元のデータ値から加算値に更新されることになる。
次に、メインCPU31は、加算値が基準値以上であるか否かを判定する(ステップS6)。基準値は、第1〜第7記憶領域ADR1〜ADR7に記憶されている各抽選区分データの値の総和と等しい。
加算値が基準値未満の場合には、メインCPU31は処理をステップS3に戻し、加算値が基準値以上になるまでステップS3からステップS6の処理を繰り返す。そして、加算値が基準値以上になると、メインCPU31は処理をステップS7に進めて、変数Nの値に応じて賞群を決定し、内部抽選データISDを生成する。具体的にはN=1のときハズレ、N=2のときリプレイ賞、N=3のときチェリー賞、N=4のときベル賞、N=5のときプラム賞、N=6のときRB賞、N=7のときBB賞に当選したと決定する。この結果、サンプリングデータSDと賞群との対応は、図8に示すように、SD=59999〜6000でハズレに、SD=5999〜4200でリプレイ賞に、SD=4199〜3000でチェリー賞に、SD=2999〜1740でベル賞に、SD=1799〜900でプラム賞に、SD=899〜300でRB賞に、SD=299〜0でBB賞に各々対応するものとなる。
そして、メインCPU31は、判定結果に基づいて内部抽選データISDを生成する。内部抽選データISDは8ビットのデータであって、第1ビットにBB賞、第2ビットにRB賞、第3ビットにベル賞、第4ビットにプラム賞、第5ビットにチェリー賞、第6ビットにリプレイ賞が各々割り当てられている。内部抽選によっていずかの賞に当選すると、メインCPU31は該当するビットの値を「1」にし、該当しない場合にはビットの値を「0」にする。したがって、内部抽選データISDを参照すれば、当選しているかハズレているか、また当選している賞群を知ることができる。
なお、以下の説明では、内部抽選データISDの第1ビットをBB当選フラグと呼び、第2ビットをRB当選フラグと呼ぶ。そして、BB当選フラグ又はRB当選フラグを「1」にすることをセット、「0」にすることをクリアと呼ぶ。小役についても同様である。小役については、あるゲームにおいて内部抽選で当選しても当該ゲームで入賞しない限りメダルの払い出しはない。しかし、RB賞とBB賞についてはあるゲームの内部抽選で当選すると、当該ゲームで入賞しなくてもBB当選フラグ又はRB当選フラグをクリアすることなく、以後のゲームで入賞するまでBB当選フラグ又はRB当選フラグを消去しない。このことを当選フラグの持ち越しという。
次に、停止テーブル群TBL2は、複数の停止テーブルから構成されている。各停止テーブルには、中央の入賞ラインL1に表示される図柄番号PNとズレコマ数を示すズレコマ数データとが対応付けられて記憶されている。ここで、ズレコマ数とは、プレイヤーが各左・中・右リールストップボタン7a、7b、7cを押し下げてから、各左・中・右リールRa1、Ra2、Ra3が停止するまでに進む図柄の数のことをいう。
各左・中・右リールRa1、Ra2、Ra3は高速で回転するため、プレイヤーが特定の図柄を狙ってストップボタンを操作したとしても、所望の図柄を停止させるには、熟練が必要となる。ストップボタン操作の習熟には、プレイヤーの個人差がある。特に、動体視力の低いプレイヤーは所望の図柄を停止させることが難しい。一方、スキルの高いプレイヤーは、所望の図柄が入賞ラインに表示されている時に、ストップボタンを操作することが可能である。
しかしながら、スキルの低いプレイヤーがゲームを楽しむためには、図柄をある程度揃い易くする必要がある一方、内部抽選の結果がハズレである場合には、役が成立しないようにリールの回転を制御する必要がある。停止テーブルは、このようなリール回転の制御ために用いられる。そして、各左・中・右リールRa1、Ra2、Ra3の停止位置は、停止テーブルを参照して定める。
図7に戻り、説明を続ける。同図に示す送出タイミング制御回路36とデータ送出回路37とは、メインCPU31が生成した各種の情報をサブ基板30Bに送信する。サブ基板30Bに送信される情報としては、内部抽選データISD、演出調整時間、スタートレバー6の操作タイミング、停止図柄番号、停止操作されたリールストップボタンを特定する停止ボタン番号等が含まれる。
次に、入力ポート38は、後述する各種のセンサから供給される信号の入力インターフェースである。一方、出力ポート39は、各モータや各種装置に対して制御信号を供給するための出力インターフェースである。
入力ポート38に接続され、各種の入力信号を発生する主要な入力信号発生手段としては、以下のものがある。投入メダル検出センサ41は、メダル投入口5を介して投入されるメダルを検知して、1個のメダルに対して1個の出力パルスを生成する。したがって、メインCPU31は、この出力パルスをカウントすることによって、投入されたメダル数を検知することができる。
BETボタンセンサ42はBETボタン15の操作を検出する。スタートレバーセンサ43はスタートレバー6の操作を検出する。左・中・右リールストップボタンセンサ44、45、46は左・中・右リールストップボタン7a、7b、7cの操作を各々検出して停止指示信号44a、45a、46aを出力する。左・中・右リール位置検出センサ47、48、49は、左・中・右リールR1、R2、R3の回転位置を検出し、基準点通過信号47a、48a、49a(検出信号)を生成する。
右リール位置検出センサ49Aは、図2および図3に示すフォトセンサ492、増幅器、およびコンパレータを備える。フォトセンサ492は発光部と受光部とを含む。受光部が受光量に応じたレベルの受光信号を出力すると、増幅器が受光信号を増幅する。コンパレータは、増幅器の出力信号を予め定められた閾値と比較して基準点通過信号49aを生成し、これを右リール位置検出センサ49Aの出力信号として出力する。右リールR3が回転すると、図2に示す遮光片491はフォトセンサ492を1回転に1回通過する。したがって、基準点通過信号49aによって、右リールR3の回転位置を検知することができる。なお、左・中位置検出センサ47A、48Aは、右リール位置検出センサ49Aと同様に構成されている。
出力ポート39に接続され、各種の出力信号の供給を受ける主要な手段としては、メダル払出機構70及び左・中・右リール駆動モータ51A、52A、53Aがある。メダル払出機構70は、スロットマシン1の内部にメダルを貯留するホッパー、ホッパーからメダルをメダル受け10に排出させるディスク機構、排出するメダルを計数するカウンタ等を備え、メインCPU31からの制御信号に基づいて、指示された枚数のメダルを排出する。
左・中・右リール駆動モータ51A、52A、53Aは、左・中・右リールRa1、Ra2、Ra3をそれぞれ回転駆動するモータであって、この例では、ステッピングモータによって構成されている。したがって、メインCPU31は左・中・右リール駆動モータ51A、52A、53Aに供給する各駆動信号51a、52a、53aのパルス数を調整することによって、左・中・右リールRa1、Ra2、Ra3の停止位置を正確に定めることが可能である。
また、各モータ51A、52A、53Aは、420個のパルスによって1回転するように構成されている。上述したように各リールRa1、Ra2、Ra3には、21個の図柄が形成されているので、20個のパルスをモータに供給することによって1個の図柄を進めることができる。また、メインCPU31は、各モータ51A、52A、53Aに供給するパルス数をカウントし、カウント結果を各位置データMD1、MD2、MD3として保持している。また、各位置データMD1、MD2、MD3の値は基準点通過信号47a、48a、49aがアクティブとなるタイミングでクリアされるようになっている。
図10は、基準点通過信号49a、図柄番号PN、駆動信号53a、および位置データMD3の関係を示すタイミングチャートである。この図に示すように、時刻t1において基準点通過信号49aがローレベルからハイレベルに立ち上がると、位置データMD3の値はクリアされる。時刻t1は、図3に示す遮光片491がフォトセンサ492を通過するタイミングである。このとき、右リールRa3の回転位置は、図4に示す図柄番号PN=1の図柄(7)が、表示窓4Aの中段に表示される。換言すれば、当該図柄が表示窓4Aの中段に表示されるように遮光片491とフォトセンサ492との取り付け位置が定められている。
そして、時刻t1から時刻t2までの期間に、20個のパルスが駆動信号53aとして右リール用駆動モータ53に供給されると、右リール用駆動モータ53は右リールRa3を1/21回転させる。この結果、表示窓4Aの中段には図4に示す図柄番号PN=2の図柄(2)が表示されることになる。以下、同様に図柄が順次表示され、時刻t3に至ると、右リールRa3が1回転して再び図柄番号PN=1の図柄(7)が表示される。このように、基準点通過信号49a、図柄番号PN、駆動信号53a、および位置データMD3は密接に関係しているから、メインCPU31は、位置データMD3に基づいて、図柄の表示状態を検知することができる。
なお、左リールRa1および中リールRa2についても上述した右リールRa3と同様に、メインCPU31は、位置データMD1、MD2に基づいて、図柄の表示状態を検知することができる。これらの点は、サブ基板30Bについても同様であり、サブCPU55は、位置データに基づいて図柄の表示状態を検知することが可能である。
次に、図11はサブ基板30Bの詳細な構成とその周辺構成とを示すブロック図である。サブ基板30Bは、サブCPU55、データ入力回路56、クロック発生回路57、ROM58、及びRAM59を備える。
サブCPU55は、第2制御プログラムCP2に従って、サブ基板30Bを制御する制御中枢として機能する。この際、サブCPU55は、各種の抽選を実行する。なお、抽選はどのような方法を用いてもよいが、例えば、メイン基板30AからサンプリングデータSDを受信し、サンプリングデータSDが所定の値を取る場合に当選としてもよい。あるいは、ソフトウエアで乱数を発生させ、その値をサンプリングして所定の値を取る場合に当選としてもよい。
データ入力回路56は、上述したデータ送出回路37から送信される各種の情報を受信し、これらをサブCPU55に引き渡すインターフェースである。クロック発生回路57はクロック信号を発生し、サブCPU55に供給する。
ROM58は、第2制御プログラムCP2の他、停止データテーブル群、図柄配列テーブルを記憶している。図柄配列テーブルは各サブリール毎に図柄番号と図柄の種類を対応付けて記憶している。また、RAM59は、サブCPU55の作業領域として機能し、第2制御プログラムCP2に従って行われる処理途中のデータやフラグ等が記憶される。
また、左・中・右バックライト65〜67はサブCPU55からの指令に従って、オン・オフが制御されるようになっている。例えば、内部抽選によって特定の賞群(例えば、ベル賞)に当選しているとき、左・中・右リールストップボタン7a、7b、7cの押し順を左・中・右バックライト65〜67を用いて報知する。具体的には、次に押すべきボタンに対応するバックライトを点灯させる一方、他のバックライトを消灯させる。
さらに、サブ基板30Bは、サウンドLSI61、音声ROM62、および音声処理回路63を備える。音声ROM62には、各種の効果音を発生させるための音データが記憶されている。サウンドLSI61は、サブCPU55からのコマンドに基づいて、所定のタイミングで音声ROM62から音データを読み出し、所定の処理を施して音声処理回路63に出力する。音声処理回路63は音データをDA変換して音声信号を生成し、音声信号を所定レベルに増幅してスピーカ68に供給する。これにより、スピーカ68から効果音が放音される。
また、サブ基板30Bは、左・中・右駆動モータ51B,52B,53B、左・中・右リール位置検出センサ47B,48B,49B、及び左・中・右リール位置検出センサ47C,48C,49Cと接続されている。左・中・右駆動モータ51B,52B,53Bは、各サブリールRb1,Rb2,Rb3を回転させるモータである。左・中・右リール位置検出センサ47B,48B,49Bは、サブリールRb1,Rb2,Rb3の回転を検知して基準点通過信号47b,48b,49bを出力する。また、左・中・右リール位置検出センサ47C,48C,49Cは、メインリールの回転を検知して基準点通過信号47c,48c,49cを出力する。
ところで、不正によりROM等の記憶装置やサブ基板30B本体が交換されるのを防ぐために、サブ基板30Bを収納しているケースを本体2に固定する際に、いわゆる「封印」を施すことがある。封印には文字や番号等の識別情報を持つ封印部材を使用する。サブ基板ケースを遊技機本体より取り外す際には、封印である識別情報を持つ部材を破壊しなければならず、その破壊をもってサブ基板ケースの取り外しを監視する。
図12は、サブ基板30Bの封印構造を示す斜視図である。本体2の側面には、サブ基板ケース300が配置される。サブ基板ケース300は、その内部にサブ基板30Bを収容する。サブ基板ケース300は、その上方において2本のネジ301及び302を用いて、本体2に固定される。ネジ301及び302の頭部には、貫通穴303及び304が設けられている。この貫通穴303及び304に識別情報が付与された封印部材305を通す。
封印部材305は挿入部30aと帯部30bを有し、1本の帯形状をしている。その一端を自身のもう一端の挿入部30aに挿入することで円環を成し、挿入部30aと帯部30bとの形状的特徴から挿入された一端が抜けなくなる。その円環を解除するには、帯部30bをニッパー等の工具で切断する。実施例では複数の電気配線を束ねる用途で使われる「結束バンド」と一般的に呼ばれる部材を用いている。封印部材305は、人力で容易に曲げられる弾力性を持つ樹脂や針金等の金属であり、貫通穴303及び305の向きが一直線上になっていなくても2本のネジの頭部を連通することができる。また、樹脂であれば図示のように貫通穴303及び304に通す帯状の箇所の端に識別情報を付与する板状の箇所を一体に成形してあれば良い。針金等の金属であれば、針金とは別に識別情報を付与する板状の部材を設けたり、鍛造や溶接で一体に成形されているものであれば良い。
なお、図示しないが、サブ基板ケース300の下方には本体2に挿入される突起部を持ち、サブ基板ケース300の上方のネジ301及び302で固定すると、サブ基板ケース300の下方は本体2から外れなくなる。従って、このサブ基板ケース300の下方をネジ止めする必要は無い。
<1−4:スロットマシンの全体動作>
次に、スロットマシン1の全体動作を説明する。図13及び図14はメインCPU31が1ゲームの開始から終了まで制御する動作を示すフローチャートである。メインCPU31は、投入メダル検出センサ41およびBETボタンセンサ42からの検出信号に基づいて、プレイヤーがベット操作を行ったか否かを判定し(ステップS11)、ベット操作有りと判定した場合には処理をステップS12に進める。
ステップS12において、メインCPU31は、スタートレバーセンサ43の検出信号に基づいて、プレイヤーがスタートレバー6を操作したか否かを判定する。プレイヤーがスタートレバー6を操作すると、メインCPU31は、ベット操作を禁止する処理を行う(ステップS13)。ベット操作が禁止されると、禁止が解除されまでの期間、プレイヤーがメダルの投入やBETボタン15を操作しても受け付けが拒否される。
次に、メインCPU31は、第1制御プログラムCP1に従って、ゲーム態様に応じた賞群抽選テーブルの設定を行う(ステップS14)。具体的には、賞群抽選テーブル群TBL1の中から、通常ゲーム、RBゲーム、またはBBゲームといったゲーム態様に応じたテーブルを選択する。この場合、メインCPU31はRAM34に記憶したRBフラグやBBフラグ等を参照して、当該ゲームのゲーム態様を特定し、その結果に基づいてテーブルを選択する。例えば、当該ゲームが、通常ゲーム(ATゲームを含む)であれば、RBフラグおよびBBフラグがクリアされていることを検知し、賞群抽選テーブル群TBL1の中から賞群抽選テーブルTBL11を選択する。
次に、メインCPU31は、ステップS14で設定した賞群抽選テーブルTBL1を用いて内部抽選処理を実行し(ステップS15)、当選した賞群又はハズレを示す当選フラグをセットする(ステップS16)。内部抽選処理および当選フラグのセットは、次の手順で行われる。第1に、メインCPU31は、スタートレバーセンサ43の検出信号がアクティブとなったタイミングで、カウントデータCDをサンプリングしてサンプリングデータSDを取得する。第2に、メインCPU31は、賞群抽選テーブルを参照して、内部抽選データISDを生成する。例えば、図8に示す賞群抽選テーブルTBL11を用い、サンプリングデータSDの値が「150」であるものとすれば、内部抽選データISDは、BB賞の当選を示すものとなる。この場合、メインCPU31は、内部抽選データISDの第1ビットに当選フラグを内部抽選データISDにセットする。この後、メインCPU31はサブ基板30Bへ当選フラグ(内部抽選データISD)を送信する(ステップS17)。
次に、メインCPU31は、演出調整時間の設定処理を実行する(ステップS18)。図15は、演出調整時間設定処理の内容を示すフローチャートである。メインCPU31は、プラム賞、ベル賞、チェリー賞、又はJAC賞に当選したか、若しくはBB中RB当選したか、否かを内部抽選データISDに基づいて順次判定し(ステップS50〜S53、S59)、内部抽選においてこれらの賞群に当選している場合には、演出調整時間を「0」にセットする(ステップS54〜S57)。
一方、内部抽選において上述した賞群のいずれにも当選していない場合には、メインCPU31は、単独RB当選か、BB当選か、ハズレかを各々判定し(ステップS58、S60、S61)、演出調整時間を抽選で決定する(ステップS62〜S65)。演出調整時間としては、例えば、5秒、10秒、20秒といったように複数の時間が予め定められており、メインCPU31は、抽選結果として選択した演出調整時間を指示する演出調整時間情報を生成する。ここで、演出調整時間情報は、演出調整時間を直接指示するものであってもよいし、あるいは、予め定められた演出調整時間のうちどの演出調整時間を選択したかを指示するものであってもよい。後者の態様は、演出調整時間をコマンド化したものであって、例えば、5秒をT1、10秒をT2、20秒をT3に対応付けておき、T1、T2、又はT3をコマンド化した演出調整時間情報として生成するものである。この場合には、コマンドの種類(T1、T2、T3)と演出調整時間(5秒、10秒、20秒)との対応付けメイン基板30A及びサブ基板30Bの双方でメモリに保持することが好ましい。
このようにして演出調整時間が決定されると、メインCPU31は、処理を図13に示すステップS19へ進め、サブ基板30Bへ演出調整時間を指示する演出調整時間情報を送信する(ステップS19)。
次に、CPU31は、内部抽選データISDに基づいて、リール停止データ群の選択を実行する(ステップS20)。例えば、BBゲーム中であることを示すBBフラグの基づいて、BBゲーム中であるか否かを判定し、この判定結果が否定される場合には、メインCPU31は、停止テーブル群TBL2の中から通常用の停止テーブルを選択する一方、判定結果が肯定される場合には、メインCPU31は、停止テーブル群TBL2の中からBB用の停止テーブルを選択する。
次に、メインCPU31はリール回転処理を実行する(ステップS21)。具体的には、駆動信号51a〜53aをアクティブにする。すると、左・中・右リール駆動モータ51A〜53Aの回転軸が回転を開始し、それに伴ってメインリールRa1〜Ra3が回転する。
この後、メインCPU31は、リール回転停止処理を実行する(ステップS22)。図16は、リール回転停止処理の内容を示すフローチャートである。まず、メインCPU31は、各メインリールの回転速度が規定速度に到達したか否かを判定する(ステップS70)。具体的には、メインCPU31は検出信号47a〜49aの周波数を検知し、検知した周波数が規定速度に相当する周波数に到達したか否かによってステップS70の判定を実行する。
メインリールの回転速度が規定速度に到達すると、メインCPU31は、1回目のボタン停止操作があったか否かを、停止指示信号44a〜46aに基づいて判定する(ステップS71)。
1回目のリールストップボタンの停止操作が検出されると、メインCPU31は今回、押下されたリールストップボタン7a〜7cの停止ボタン番号(ボタンの種別)を取得し(ステップS72)、停止操作直後の図柄番号PNを取得する(ステップS73)。具体的には、メインCPU31は各リールストップボタン7a、7b、7cが押し下げられたタイミングを各リールストップボタンセンサ44〜46からの停止指示信号44a〜46aに基づいて検知し、当該タイミングにおける図柄番号PNを取得する。この例では、リールストップボタン7aに停止ボタン番号「1」、リールストップボタン7bに停止ボタン番号「2」、リールストップボタン7cに停止ボタン番号「3」が各々割り当てられている。
次に、メインCPU31は、ステップS20において選択された停止データテーブル群の中から、内部抽選データISD及び停止ボタン番号等に基づいて、使用可能な停止データテーブル群を限定し(ステップS74)、停止操作順別の停止データテーブルの組合せを特定する(ステップS75)。この後、メインCPU31は、第1停止に使用する停止データテーブルの組合せを特定し(ステップS76)、さらに、複数の組合せがある場合には、抽選等により第1停止に使用する停止テーブルを決定する(ステップS77)。
次に、メインCPU31は、決定した停止テーブルを参照して進みコマ数を取得し(ステップS78)、押下図柄番号と進みコマ数から、停止図柄番号を算出する(ステップS79)。停止図柄番号は、当該メインリールが停止した状態における図柄番号である。この後、メインCPU31は、ボタン番号及び停止図柄番号をサブ基板30Bへ送信し(ステップS80)、停止図柄番号に基づいて停止操作があったメインリールを停止させる(ステップS81)。
次に、メインCPU31は、2回目のボタン停止操作があったか否かを、停止指示信号44a〜46aに基づいて判定し(ステップS82)、2回目のボタン停止操作があると、第2停止処理を実行する(ステップS83)。この後、メインCPU31は、3回目のボタン停止操作があったか否かを、停止指示信号44a〜46aに基づいて判定し(ステップS84)、3回目のボタン停止操作があると、第3停止処理を実行する(ステップS85)。第2停止処理及び第3停止処理は、上述したステップS72からステップS81までの処理と同様であるので、説明を省略する。そして、メインCPU31は、第1〜第3停止操作によって定まった停止図柄番号に基づいて入賞フラグを生成する(ステップS86)。入賞フラグは、入賞した役又はハズレを示す入賞情報として機能する。このように、リール回転停止処理では、最初から最後の各停止操作において、操作されたリールストップボタンを識別する情報(停止ボタン番号)と停止図柄を指示する情報(停止図柄番号)がサブ基板30Bへ送信される。ここで、リールストップボタンを識別する情報は、メインリールの停止操作を指示す停止操作情報に相当する。
説明を図13に戻す。リール回転処理が終了すると、メインCPU31は、リプレイ賞に入賞したか否かを判定する(ステップS23)。リプレイ賞に入賞すると、ベット操作を行うことなく、前ゲームで有効化された入賞ラインと同じ入賞ラインが自動的に有効化される。このため、リプレイ賞に入賞している場合には、メインCPU31は、リプレイ当選フラグをクリアし(ステップS24)、この後、処理をステップS12に戻す。
一方、リプレイ賞に入賞しなかった場合、メインCPU31は、ステップS18で決定した演出調整時間をタイマにセットし、タイマ減算処理を開始する(ステップS25)。メインCPU31はタイマ値が「0」になったか否かを判定し(ステップS26)、タイマ値が「0」になると、後述する払出処理を実行する。メインリールの回転が停止してから演出調整時間が経過するまでの期間は、何等かの役に入賞していてもメダルの払い出しが禁止され、演出調整時間が経過した後にメダルの払い出しが実行される。ステップS25及びS26を実行するメインCPU31は、サブリールの回転が最終的に停止した後にメダルが払い出されるように、演出調整時間に基づいてメダルの払出開始時刻を調整する調整手段として機能する。この例では、ステップS86で入賞フラグが生成されてから演出調整時間が経過した後にメダルが払い出されるように、演出調整時間に基づいて払出開始時刻が調整される。
なお、複数のリールストップボタン7a、7b、7cのうち、最後に操作されたボタンに対応するボタンセンサ44〜46から出力される停止指示信号44a〜46aを検知して、検知した時刻から演出調整時間が経過した後にメダルが払い出されるように、演出調整時間に基づいてメダルの払出開始時刻を調整してもよい。この場合には、図16に示すステップS84の判定条件が肯定され、3回目のボタン停止が検出された時から、ステップS25及びステップS26の処理を実行し、ステップS26の判定が肯定された場合に、図14に示すステップS27へ処理を進めればよい。
この点は、サブリールによる演出において重要である。本実施形態においては、図4を参照して説明したように何等かの役に入賞しても第1表示部10Aにおいては異なる種類の図柄が並ぶように各メインリールの図柄の配置が定められている。従って、第1表示部10Aの可変表示が停止した状態を見てもプレイヤーは役に入賞しているか否かを即座に判断することができない。従って、メインリールが停止した後もサブリールを回転させ、多様な演出を行うことが考えられる。しかしながら、役に入賞してメダルの払い出しが実行されると、その状況からプレイヤーは役に入賞したことを察知し、一方、払い出しが無ければハズレであることを察知する。このため、メインリール停止後に行われるサブリールの演出が無意味なものになってしまう。そこで、メインリールの停止を基準として、演出調整時間が経過するまでメダルの払い出しを禁止する一方、演出調整時間情報をサブ基板30Bに送信するとともに、リールストップボタン7a,7b,7cの停止操作がある度に停止ボタン番号・停止図柄番号を送信することによって、メインリールの停止タイミングをサブ基板30Bに知らせ、サブ基板30Bにおいて、演出調整時間及びメインリールの停止タイミングに基づいて、適切な演出を選択できるようにしたのである。
次に、メインCPU31は、スイカ賞、ベル賞、チェリー賞、又はプラム賞に入賞したか否かを当選フラグに基づいて順次判定し(ステップS27〜S30)、入賞図柄組合せテーブルTBL3を参照して入賞役に応じた数のメダルの払い出しを行うよう各部の制御を行う(ステップS31〜S34)。
次に、メインCPU31は、RBゲーム中か否かを判定する(ステップS35)。本実施形態においては、後述するRBゲーム開始処理(ステップS39及びS42)においてRBゲーム中であることを示すRBフラグをセットし、RBゲーム終了判断処理(ステップS36)においてRBフラグをクリアするようになっている。したがって、RBゲーム中か否かの判定は、RBフラグがセットされているかクリアされているかに基づいて行われる。
メインCPU31は、RBゲーム中であると判定した場合には、処理をステップS36に進め、RBゲーム終了判断処理を実行する。RBゲーム終了判断処理では、RBゲームが所定回数行われたか否かを判定し、所定回数行われた場合にはRBフラグをクリアする。
一方、RBゲーム中でない場合には、ステップS35の判定結果は「NO」となり、メインCPU31は、単独RB賞に入賞したか否かを判定する(ステップS37)。単独RB賞に入賞している場合には、メインCPU31は、所定数のメダルを払い出し(ステップS38)、RBゲーム開始処理を実行する(ステップS39)。この処理では、RBフラグがセットされる。単独RB賞に入賞していなければ、メインCPU31はBB中のRB入賞か否かを判定する(ステップS40)。BB賞中のRB入賞であれば、メインCPU31は、所定数のメダルを払い出し(ステップS41)、RBゲーム開始処理を実行する(ステップS42)。この処理では、RBフラグがセットされる。
次に、BB中のRB賞に入賞していなければ、メインCPU31は、BBゲーム中か否かを判定する(ステップS43)。上述したRBゲームに関する処理と同様に、本実施形態においては、後述するBBゲーム開始処理(ステップS47)においてBBゲーム中であることを示すBBフラグをセットし、BBゲーム終了判断処理(ステップS44)においてBBフラグをクリアするようになっている。したがって、BBゲーム中か否かの判定は、BBフラグがセットされているかクリアされているかに基づいて行われる。
BBゲーム中である場合には、メインCPU31は、BBゲーム終了判定処理(ステップS44)を実行する。この処理では、当該ゲームにおいて、ビックボーナスゲームが所定ゲーム数(例えば、30ゲーム)に達したか、又はBB中の最後のRBを終了した場合に、BBゲームが終了したと判定する。
BBゲーム中で無い場合には、BB入賞か否かを当選フラグに基づいて判定し(ステップS45)、BB賞に入賞した場合には、メインCPU31は、メダルの払い出し処理を実行した後(ステップS46)、BBゲーム開始処理を実行する(ステップS47)。
この後、メインCPU31は、1ゲーム終了処理を実行する(ステップS48)。この処理では、メインCPU31は、第1に、BB賞またはRB賞の取りこぼしがあったか否かを判定する。BB賞またはRB賞の取りこぼしとは、内部抽選処理(ステップS15)においてBB賞またはRB賞に当選している状態で、BB賞またはRB賞に入賞できなかったことをいう。メインCPU31は、当選フラグがセットされており、かつ、RB当選フラグまたはBB当選フラグがクリアされている場合にBB賞またはRB賞の取りこぼしが有ったと判定する一方、その他の場合はBB賞またはRB賞の取りこぼしが無かったと判定する。取りこぼし無かった場合には、RB当選フラグ及びBB当選フラグをクリアするとともに内部抽選データISDの各ビットのデータ値を「0」にクリアする。これにより、当選フラグの持ち越しが解消される。一方、取りこぼしがあった場合にはメインCPU31は、RB当選フラグ及びBB当選フラグをクリアしない。この後、メインCPU31は、ベット操作の禁止を解除する(ステップS49)。これにより、RB当選フラグ及びBB当選フラグが次のゲームに持ち越されることになる。
なお、ステップS25及びステップS26で実行される演出調整時間の処理は、ステップS22以降の処理の中で必要に応じて実行してもよく、例えば、ステップS36の直前、あるいは、ステップS41の直前で実行してもよい。
<1−5:サブ基板における処理>
次に、サブ基板30BにおけるサブCPU55の処理を説明する。図17及び18はサブリールにおける1ゲームの全体処理の内容を示すフローチャートである。この処理は、サブCPU55が、メインCPU31が実行する制御プログラムCP1とは独立して、第2制御プログラムCP2を所定周期で繰り返し実行することによって進む。サブCPU55がサブリールを表示態様を可変させる処理としては、第1処理と第2処理がある。第1処理は、メインリールの回転に対応してサブリールの表示態様を可変させるものであり、一方、第2処理は、メインリールの回転に対応してサブリールの表示態様を可変させないものである。換言すれば、第1処理は、メインリールが回転することによって第1表示窓4Aに表示される図柄の表示態様に対応するようにサブリールの表示態様を可変させるものである一方、第2処理は、第1表示窓4Aに表示される図柄の表示態様と異なる表示態様となるようにサブリールの表示態様を可変させるものである。
第1表示窓4Aに表示される図柄の表示態様は、そこに表示される図柄の挙動を意味し、例えば、図柄が上から下に移動する正転や図柄が下から上に移動する逆転といったメインリールの回転方向、メインリールの回転速度、メインリールの回転加速度、メインリールの停止又は回転の別、メインリールが等速度で回転しているのか又はコマ送りであるか等が該当する。第1処理では、例えば、メインリールが正転しているのであれば、サブリールも正転であり、メインリールの回転が始動して加速しているのであればサブリールも同様である。但し、正転・逆転、速度、加速度、停止・移動、正常・コマ送りといった図柄の挙動の総てが対応する必要はなく、少なくとも一つが対応していればよい。
まず、サブCPU55は、当選取得フラグが「1」であるか否かを判定する(ステップS90)。当選取得フラグは、各ゲーム毎にメイン基板30Aから内部抽選情報を取得すると「1」にセットされる。サブCPU55は、内部抽選情報を受信すると、サブリール可変態様選択処理を実行する(ステップS91)。
図19にサブリール可変態様選択処理の処理内容を示す。この処理にあっては、サブCPU110は、内部抽選情報に基づいて第1処理用の可変表示パターンを選択する(ステップS110)。上述したように第1処理はメインリールの回転に対応してサブリールの表示態様を可変させるものであるが、メインリールの回転に対応した可変表示には、各種のパターンがある。例えば、サブリールの回転速度をメインリールの回転速度に近付けるよう制御する制御パターン、あるいは、サブリールの回転位相をメインリールの回転位相に同期させて制御する制御パターン、さらに、回転位相の同期にはサブリールとメインリールの回転位相が1コマズレで回転する場合や、2コマズレで回転する場合が含まれる。
次に、サブCPU55は、内部抽選情報に基づいて、入賞時のサブリールの停止位置を決定すると共に(ステップS112)、非入賞時のサブリールの停止位置を決定する(ステップS113)。即ち、最終的なサブリールの停止予定位置を入賞時と非入賞時とに分けて、各サブリール毎に決定しておく。
内部抽選情報がある役に当選していることを示す場合には、当選役を構成する図柄をメインリールの入賞ライン上に引き込み、かつ、当選役以外の役が入賞しないようにメインリール及びサブリールの停止位置が制御される。また、内部抽選情報がハズレを示す場合には、全ての役に入賞しないようにメインリール及びサブリールの停止位置が制御される。しかしながら、内部抽選で当選していても、プレイヤーのリールストップボタンの操作タイミングによっては、当選役を構成する図柄を入賞ライン情報に引き込むことができない場合もありえる。ステップS112における入賞時のサブリールの停止位置は、入賞する可能性がある場合におけるサブリールの停止位置を意味する。即ち、図19の説明では、最初及び2番目の停止段階では、最終的に入賞するか否かが不明であるが、メインリールの入賞ライン上に関連する有効な図柄が揃っていて、入賞の可能性がある場合を入賞の概念に含めている。
図17に戻り説明を続ける。サブリールの可変態様選択処理が終了すると(ステップS91)、サブCPU55は処理をステップS92に進めて、左メインリール始動フラグが「1」であるか否かを判定して、当該フラグが「1」であれば左サブリールの始動処理を実行する(ステップS93)。サブCPU55は、中サブリール及び右サブリールについても同様に、始動処理を実行する(ステップS94〜S97)。各メインリール始動フラグは、メインリールに設けられた左・中・右リール位置検出センサ47C〜49Cから出力される基準点通過信号47c〜49cがアクティブになると、「1」にセットされる。
この点の詳細は後述する。
図20は、左サブリールの始動処理の内容を示すフローチャートである。なお、中・右サブリールにおいても同様の始動処理が実行される。サブCPU55は、内部抽選情報に基づいて、左サブリール処理用の可変表示パターンを選択し(ステップS120)、選択された可変表示パターンに基づいて可変表示を制御する(ステップS121)。可変表示パターンとは、表示内容の可変態様を意味する。
図17に戻り説明を続ける。ステップS98において、サブCPU55は、全てのサブリールが始動したか否かを判定して、全てのサブリールの回転が始動するまで、ステップS92からステップS97までの処理を繰り返す。
この後、サブCPU55は、図18に示すステップS99に処理を進め、左メインリール停止フラグが「1」であるか否かを判定して(ステップS99)、当該フラグが「1」であれば左サブリールの停止処理を実行する(ステップS100)。サブCPU55は、中サブリール及び右サブリールについても同様に、各メインリール停止フラグを参照して停止処理を実行する(ステップS101〜S104)。各メインリール停止フラグは、メインCPU31から送信される停止ボタン番号に基づいて生成される。即ち、左リールストップボタン7aの押下を指示する停止ボタン番号がサブ基板30Bに入力されると、サブCPU55は左メインリール停止フラグを「1」にセットし、入力された停止ボタン番号が中リールストップボタン7bの押下を指示する場合は、中メインリール停止フラグを「1」にセットし、入力された停止ボタン番号が右リールストップボタン7cの押下を指示する場合は、右メインリール停止フラグを「1」にセットする。本実施形態において、サブリール始動処理によるサブリールの回転制御は、上述した第1処理に相当する一方、サブリール停止処理によるサブリールの回転制御は上述した第2処理に相当する。そして、各リールストップボタンの操作に応じて、上述した第1処理と第2処理との切り換えが実行される。
図21は、左サブリールの停止処理の内容を示すフローチャートである。この図に示すように、サブCPU55は、入力された停止情報に基づいて第2処理用の可変表示パターンを選択する(ステップS130)。ここで、停止情報は、左メインリールの停止位置を示す情報であって、例えば、基準点からの駆動パルス数やあるいは上述した停止図柄番号が該当する。また、停止情報はメイン基板30AのメインCPU31によって生成され、サブ基板30Bに送信される。ここで、第2処理用の可変表示パターンとしては、第2処理を実行しないことも含めて、複数の可変表示パターンが用意されている。
次に、サブCPU55は、ステップS130で選択した可変表示パターンに基づいて、第2処理を実行するか否かを判定する(ステップS131)。第2処理を実行する場合には、第2処理用の可変表示パターンで可変表示を開始する(ステップS132)。そして、停止情報に基づいて、入賞又は可能性があるか否かを判定する(ステップS133)。この際、内部抽選情報が参照される。即ち、内部抽選情報がある当選役を指示する場合には、メインリールにおいて当該役を構成する図柄を入賞ライン上に引き込むことが可能か否かを判定する。また、入賞か否かの判定は、左リールストップボタン7aの操作が最後の停止操作である場合に実行され、入賞の可能性の判定は、最初から最後の直前、即ち、第1番目及び第2番目の停止操作において実行される。
入賞又はその可能性がある場合には、入賞時のサブリールの停止位置でサブリールが停止されるように、サブCPU55は左リール駆動モータ51Bを制御する(ステップS134)。一方、入賞又はその可能性がない場合には、非入賞時のサブリールの停止位置でサブリールが停止されるように、サブCPU55は左リール駆動モータ51Bを制御する(ステップS134)。
例えば、内部抽選でBB役に当選し、且つ、プレイヤーが最初の停止操作を行った結果、入賞ライン上にBB役を構成する図柄が停止した場合(つまりBBが入賞する可能性がある場合)は、入賞の可能性があるときに選択される停止態様どおりに停止制御を実行する。つまり、停止操作を受ける前までは、メインリールの回転との同期制御を行い、停止操作後は決定した停止態様どおりにサブリールの停止位置が調整される。
図22に第2処理の一例を示す。同図(A)は、逆回転の例である。この可変表示パターンは第1処理が終了した後、サブリールの回転速度が負になる。即ち、サブリールが逆回転する。例えば、サブリールが1コマ行過ぎて停止し、1コマだけサブリールを逆回転させて、当選役を構成する図柄を入賞ライン上に停止させる場合が該当する。同図(B)はコマ送りの例である。この可変表示パターンは第1処理が終了した後、サブリールを正方向に3回回転させている。この例では、1回の回転で1コマ進むようにサブリールを制御することによって、3コマのコマ送りを実現している。
また、ステップS131で判定条件が否定された場合、即ち、第2処理が実行されない場合には、サブCPU55は処理をステップS136に進めて、第1処理用の可変表示パターンで可変表示を継続する(ステップS136)。そして、停止情報に基づいて、入賞又は可能性があるか否かを判定する(ステップS133)。入賞か否かの判定は、左リールストップボタン7aの操作が最後の停止操作である場合に実行され、入賞の可能性の判定は、最初から最後の直前、即ち、第1番目及び第2番目の停止操作において実行される。この場合、メインリールの回転とサブリールの回転とは図22(C)に示すものとなる。
入賞又はその可能性がある場合には、入賞時のサブリールの停止位置でサブリールが停止されるように、サブCPU55は左リール駆動モータ51Bを制御する(ステップS134)。一方、入賞又はその可能性がない場合には、非入賞時のサブリールの停止位置でサブリールが停止されるように、サブCPU55は左リール駆動モータ51Bを制御する(ステップS134)。この場合、メインリールの回転とサブリールの回転とは図22(C)に示すものとなる。
本実施形態において、サブリールの停止態様には、0sec(例えば、図22(C))、sec(例えば、図22(A))、6sec(例えば、図22(B))の3つの時間長からなる複数の可変停止態様がある。ここで演出時間は、同期制御から非同期制御に以降したときに行われる可変停止態様の演出の長さ、即ち、第2処理の時間を意味する。
メインCPU31は、内部抽選情報と抽選で選択した演出調整時間をサブCPU55に送信する。演出調整時間は、少なくとも最後の停止するサブリールの停止時の停止態様の選択に使用される(上述したステップS130)。例えば、内部抽選情報がBBの当選を指示し、演出調整時間が6secの場合、BB用の6secの可変停止態様が選択される。最初から最後の直前の停止操作で、BBの入賞に係る図柄の並びが揃った場合に、サブリールでは、第3停止態様として、例えば、図22(B)に示すコマ送り停止態様が選択され、第2処理に移行してから6sec後にサブリールが停止するように制御が実行される。一方、メインCPU31は、メインリール全停止後から6sec経過してから、BB賞に相当する枚数のメダルが、クレジットもしくはメダル受け皿に払出しされ、BBゲームに移行する。
ここで、停止操作時にBBの入賞に係る図柄の並びが揃わないことが確定した場合は、サブリールの制御においてもメインリールの停止情報を通信手段で得ているので、BB用のハズレ用の演出を選択する。このときサブリールでは、BBは当選していることを知らしめるリーチアクション的な6secの可変停止態様の演出を導出させることが可能である。また、停止操作の途中で、BBの入賞に係る図柄の並びが揃わないことが確定した場合は、メインCPU31が演出調整時間として0secという情報を通信手段で送信することにより、サブCPU55はBB用の取りこぼし演出用の0secの停止態様で停止させることも可能である。即ち、最初から最後の直前の各停止操作タイミングに応じて、入賞の可能性がないことが確定した場合には、メインCPU31はこれを検知して、演出調整時間を変更し、変更した演出調整時間(例えば0sec)をサブCPU55に送信してもよい。この場合、メインCPU31は、時間遅延処理を省略して、次のゲームに移行させてもよい。
このように、演出調整時間情報は、内部抽選結果に応じてサブCPU55に送信するものであって、また、操作停止後によっても、改めて先の送信した演出調整時間とは異なる情報を送りなおすようにしてもよい。また、最後の停止操作後に演出調整時間を決定し、サブCPU55に送信してもよい。
ここで、重要なのは、サブリールの全停止後よりも後に払出制御を遅延させることであり、必ずしもサブリールの第2処理の時間と遅延時間とを等しくする必要もなく、好ましくは、払出制御が若干遅いほうがよい。
図18に戻り説明を続ける。サブCPU55は、全てのサブリールが停止したか否かを判定し(ステップS105)、全てのサブリールが停止するまで、ステップS99からステップS105までの処理を繰り返す。そして、全てのサブリールが停止すると、各種フラグをクリアする(ステップS106)。以上がサブリールが回転を開始して最終的に停止するまでの処理の概要である。
次に、サブCPU55が実行する処理をより詳細に説明する。図23〜25はサブCPU55が実行するタイマ割込み処理の処理内容を示すフローチャートである。タイマ割込み処理は、所定周期、例えば、2msec周期で実行される。まず、サブCPU55は、メイン基板30Aからコマンドの入力があったか否かを判定する(ステップS140)。コマンド入力があった場合には、サブCPU55は処理をステップS141に進めて、コマンドが内部抽選情報か否かを判定する。ステップS141の条件が肯定される場合には、サブCPU55は内部抽選情報を取得して(ステップS142)、当選取得フラグを「1」にセットする。
次に、サブCPU55は、コマンドが左・中・右停止情報が否かをおのおの判定する(ステップS144、147、150)。なお、メインCPU31は、左リールストップボタン7aの押下に応じて、左停止情報を生成してサブ基板30Bへ出力すると共に、中・右リールストップボタン7b、7cの押下に応じて、中停止情報及び右停止情報を生成してサブ基板30Bへ出力する。
コマンドが左停止情報である場合には、サブCPU55は左停止情報を取得して(ステップS145)、左メインリール停止フラグを「1」にセットする(ステップS146)。に、コマンドが中停止情報である場合には、サブCPU55は中停止情報を取得して(ステップS147)、中メインリール停止フラグを「1」にセットする(ステップS149)。さらに、コマンドが右停止情報である場合には、サブCPU55は右停止情報を取得して(ステップS151)、右メインリール停止フラグを「1」にセットする(ステップS152)。
この後、サブCPU55は、サブリール位置検出センサ47Cの基準通過信号47cを検知したか否かを判定し(ステップS153)、これを検知した場合には、左リール始動フラグが「1」であるか否かを判定し(ステップS154)、「1」でなければ、左サブリールの可変表示、即ち、回転を開始させて(ステップS155)、左メインリール始動フラグを「1」にセットする(ステップS156)。一方、左メインリール始動フラグが「1」である場合には、サブCPU55は、処理をステップS157に進めて、左サブリール位相・速度調整処理を実行する。左メインリールの回転が検知されると(ステップS153)、左メインリール始動フラグがセットされ(ステップS156)、左メインリール始動フラグが「1」のとき左サブリール位相・速度調整処理が実行されるから、左サブリール位相・速度調整処理は、上述した第1処理に相当する。なお、ステップS153〜S157と同様に、ステップS158〜S162では中サブリールに関する処理が実行され、ステップS163〜S167では右サブリールに関する処理が実行される。
ステップS168〜S170において、サブCPU55は、左・中・右サブリール位置検出センサ47B〜49Bから各々出力される基準点通過信号47b〜49bを検知すると、左・中・右サブリールの各位相ズレカウンタをクリアする(ステップS171〜S173)。各位相ズレカウンタは、例えば、サブCPU55の内部レジスタあるいはRAM59等によって構成される。各位相ズレカウンタのカウント値はサブリール位相・速度調整処理に用いられる。
次に、サブCPU55は、左メインリール始動フラグが「1」であるか否かを判定し(ステップS174)、判定条件が肯定される場合には、左サブリール速度カウンタのカウント値を「1」インクリメントし(ステップS175)、さらに左サブリールの位相ズレカウンタのカウント値を「1」だけインクリメントする(ステップS176)。
また、中メインリール及び中サブリールについても同様の処理を実行し(ステップS177〜S179)、さらに右メインリール及び右サブリールについても同様の処理を実行する(ステップS177〜S179)。各サブリール速度カウンタは、例えば、サブCPU55の内部レジスタあるいはRAM59等によって構成される。各サブリール速度カウンタのカウント値はサブリール位相・速度調整処理に用いられる。
次に、左サブリールの位相・速度調整処理について詳細に説明する。この処理では、左リール速度カウンタと左サブリール位相ズレカウンタの各カウント値を用いて、左サブリールの回転を制御する。図26は、左サブリールの位相・速度調整処理の処理内容を示すフローチャートである。サブCPU55は、左リール速度カウンタ値を所定のメモリ(例えば、RAM59)に保存する(ステップS200)。図23に示すように、位相・速度調整処理が実行されるのは、基準点通過信号47cがアクティブになった場合である。即ち、左メインリールの1回転に1回、位相・速度調整処理が実行されることになる。そして、ステップS175で説明したように、左リール速度カウンタのカウント値は、左メインリール始動フラグが「1」の場合、つまり、左メインリールが回転している期間において、割り込み周期(2msec)でカウント値が「1」だけインククリメントされる。従って、1回転当たりの左リール速度カウンタのカウント値は、左メインリールの回転速度を示す速度情報に相当する。なお、所定のメモリには過去10回転分の左リールカウント値が記憶されるようになっている。
次に、サブCPU55は、次の回転の速度を計測するために、左リール速度カウンタをクリアする(ステップS201)。この後、サブCPU55は、メモリにアクセスして過去10回転分の速度カウンタ値の平均値を算出する(ステップS202)。このようにして得られた速度情報の平均値が左サブリールの回転制御に用いられる。
タイマ割込みと、メインリールの回転動作は非同期で動作するから、仮にメインリールが真に一定速度で回転していても、カウント誤差が生じる。また、メインリールは機械的な構成であるから、多少回転動作に誤差が生じる。さらに、駆動モータのパルス信号はソフトウエアで生成されているので、もともと誤差を含んでいる。そこで、上述したように常に10回転分の計測パルス数を保持していて、その平均値を求めて、これを目標としてサブリールの回転速度を制御する。したがって、メインリールの速度とサブリールの速度を同一速度に制御するという意味は、略同一に制御することを意味し、メインリールの回転速度を検知し、これにサブリールの回転速度を近付ける。
次に、サブCPU55は、速度カウンタ値の平均値のハーフ値(1/2)を算出し(ステップS203)、さらに、左リール位相ズレカウンタ値からハーフ値を減算して差分を算出し(ステップS204)。左サブリールの位相ズレカウンタをクリアする(ステップS205)。
左サブリールの位相ズレカウンタのカウント値は、左メインリールが基準点(フォトセンサの取り付け位置)を通過して基準点通過信号47cがアクティブになると開始され、左サブリールが基準点の(フォトセンサの取り付け位置)を通過して基準点通過信号47bがアクティブになるまで時間を示す。即ち、左リール位相ズレカウンタ値は、左メインリールと左サブリールとの位相差を示す位相差情報である。この例では、左メインリールに設けられたメイン基板30A用のリール位置検出センサ47Aの基準点とサブ基板30B用のリール位置検出センサ47Bの基準点とは、180度異なる位置に設定されている。そして、左サブリールは、当該リールがリール位置検出センサ47Cの基準点を通過するタイミングと、左メインリールがリール位置検出センサ47Aの基準点を通過するタイミングとが、一致するように左サブリールの回転位相が調整される。即ち、左メインリールの回転の基準をリール位置検出センサ47Cの基準点としたとき、左サブリールは左メインリールに対して180度(所定値)ズレた位相で回転させることを目標とする。つまり、左メインリールの回転位相と左サブリールの回転位相との位相差を所定値(この例では、180度)に近付けるように左サブリールが制御される。
次に、サブCPU55は、差分値が予め定められた許容値範囲内か否かを判定する(ステップS206)。差分値が許容値範囲外であれば、サブCPU55は、差分値がプラスであるか否かを判定する。プラスである場合には、速度カウンタ平均値をプラスに補正して制御用のカウント値を生成する。一方、速度カウンタ平均値をマイナスに補正して制御用のカウント値を生成する。
この後、サブCPU55は、カウント値から速度を算出し(ステップS210)、左サブリールの速度を設定するように制御する。即ち、この例では、左サブリールの回転速度は、左メインリールの回転速度を目標としてフィードフォアード制御によって調整され、その回転位相はフィードバック制御によって調整される。
この位相・速度調整処理によって、メインリールの検出を基準としてサブリールの検出が遅れている場合には加速制御を行い、サブリールが進んでいる場合には減速操作が行われる。平均値処理によって求められたメインリールの回転速度値に、位相進遅の判断により遅れている場合には、求められたメインリールの回転速度値に対して、所定の速度値を加算して、サブリールの回転速度値としている。ここで位相の遅れ度合いを段階的に決め、その段階に応じてプラス値を+1、+2、+3としもよい。また、位相が進んでいると判断した場合には、メインリールの回転速度値に対して、所定の速度値を減算する。例えば、1回転を75msecで行う場合に、位相が遅れている場合には、本来75msecのところを、75.2msecというようにメインリールの75mescよりも0.2msec早い速度が設定される。また、位相ズレ量が大きい場合には、例えば、76msecというように+1msecとするように制御される。
以上、説明したように第1実施形態によれば、スタートレバー6の操作によって、メインリールが回転を開始すると、サブCPU55は、メインリールの回転をリール位置検出センサ47C〜49Cで検知して、メインリールの回転に応じてサブリールが回転するように第1処理を開始し、リールストップボタンの操作タイミングを契機として、サブリールによる可変表示を第1処理から第2処理へ切り換えた。第1処理では、両リールの速度と位相とを同期させる。また、サブリールの図柄は、役を構成する図柄が同一種類の図柄となるように配置されている。従って、プレイヤーは、サブリールを見ながら、役を構成する図柄が所定の引き込み範囲にあるタイミングでリールストップボタン7a、7b、7cを操作することによって、メインリールの入賞ライン上に所定の図柄を停止させて入賞させることが可能である。この場合、各メインリールの停止図柄は、一見して無関係なものが並ぶため、プレイヤーはメインリールを見ただけでは、入賞したか否かを容易に知ることはできないので、サブリールの停止に注目することになる。そして、サブリールでは、メインリールの回転とは無関係に演出用の表示パターンで、逆回転やコマ送りといった第2処理が実行されるので、リールによる多彩な演出を実行することができる。
<1−6:第1実施形態の変形例>
上述した第1実施形態において、以下の変形が可能である。
(1)上述した第1実施形態においては、メインリールの回転を検知するために、メインリールそのものの回転を制御するために用いられるリール位置検出センサ47A〜49Aとサブリールの回転を制御するために用いられるリール位置検出センサ47C〜49Cとを設けたがこれらを兼用してもよい。
(2)また、上述した第1処理では、サブリールの速度と位相をメインリールの回転を目標としてこれに近付けるように制御したが、いずれか一方を制御の対象としてもよい。
(3)また、上述した第2処理では、左・中・右リールRb1、Rb2、Rb3の回転中に左・中・右バックライト65、66、67を点滅させる等の演出処理を加えてもよい。
<2.第2実施形態>
次に、本発明の第2実施形態に係るスロットマシンについて説明する。上述した第1実施形態のスロットマシンでは、リール位置検出センサ47C〜49Cで生成される基準点通過信号47c〜49cをサブCPU55において直接検知した。これに対して、第2実施形態は、基準点通過信号47c〜49cがアクティブになったことをメインCPU31(第1制御手段)で検知して検知コマンドを生成し、データ送出回路37を介してサブ基板30Bに送信する。この場合、サブ基板30BのサブCPU55は、タイマ割込み間隔(2msec)で、メイン基板30Aから検知コマンドが入力されたか否かを確認して、検知コマンドの入力タイミングを基準点通過信号47c〜49cがアクティブになるタイミングとして取り扱う。あるいは、検知コマンドの入力を契機に割り込み処理を実行するようにしてもよい。
ここで、コマンドには、検知コマンドの他に、各種のコマンドが含まれるので、サブCPU55は、検知コマンドだけの発生間隔を計測して、計測結果に基づいて速度情報をする必要がある。なお、メイン基板30Aとサブ基板30Bとを所定ラインで接続して、当該所定ラインをアクティブにすることで、基準点通過信号47c〜49cがアクティブとなったことをメイン基板30Aからサブ基板30Bに伝送してもよい。この場合は、専用線による伝送であるから、コマンドの種別を判定する工程を省略することができる。
メイン基板30Aとサブ基板30Bとは、異なるクロック信号を用いて非同期で動作しており、また、不正防止の観点から、メイン基板30Aから送出されるコマンド等の情報は、ランダムに遅延されて送信されることがある。このような場合であっても、上述した平均値処理を実行することによって、伝送に伴うノイズ、具体的には、ランダムな遅延時間による誤差を除去することが可能となる。
また、本実施形態においても、第1実施形態と同様にメインリールそのものの回転を制御するために用いられるリール位置検出センサ47A〜49Aとサブリールの回転を制御するために用いられるリール位置検出センサ47C〜49Cとを兼用してもよい。
<3.第3実施形態>
上述した第1及び第2実施形態においては、第2表示部10Bとして、機械的なサブリールを採用したスロットマシンを一例として説明したが、第3実施形態に係るスロットマシンは、第2表示部10Bとして画像表示装置を用いる。
図27に第3実施形態に係るスロットマシンの外観構成を示す。このスロットマシン1には、中央部に画像表示装置91が設けられている。画像表示装置91は、画像を電気的に表示できるのであればどのような装置であってもよいが、例えば、液晶パネル、有機ELパネル、プラズマディスプレイ、又はCRT等によって構成することができる。本実施形態においては、画像表示装置91に上述したサブリールを模倣した3個の表示列がビデオリールとして表示されるようになっている。この例の各ビデオリールには、図4に示すサブリールと同様に21個、7種類の図柄が表示される。
次に、第3実施形態のスロットマシン1の電気的な構成を説明する。このスロットマシン1はサブ基板30Bの詳細な構成を除いて、図7及び図11を参照して説明した第1実施形態のスロットマシン1と同様に構成されている。図28に第3実施形態に係るサブ基板30B及びその周辺回路のブロック図を示す。
第3実施形態では、サブリールの替わりに画像表示装置91を用いるので、第1実施形態で用いたリール位置検出センサ47B〜49Cは設けられていない。また、ROM58には、サブリールに配置された各図柄の画像を示す図柄画像データDGが記憶されている。図柄画像データDGは、図柄の種類毎に区別されて管理されており、必要に応じてROM59から読み出されるようになっている。この例では、「7」、「プラム」、「ベル」、「チェリー」、「リプレイ」、「BAR」といった7個の図柄画像データDG1〜DG7がROM58に記憶されている。また、ROM58には、各図柄画像データDG1〜DG7の記憶領域を示すアドレス情報と各図柄画像データを識別するための図柄コードが対応付けられて記憶されている。サブCPU55は、制御プログラムCP2に従って図柄コードの並びを生成し、図柄の表示順序を制御するとともに、図柄コードに対応するアドレス情報を取得して、各図柄画像データDG1〜DG7をROM58から読み出て、VRAM90へ転送する。なお、ROM58は図柄画像データDGを記憶する画像記憶手段として機能する。
また、VRAM90から、データが順次読み出され表示画像データとして、画像表示装置91に供給される。サブCPU55は、垂直ブランキング期間においてROM58から読み出した図柄画像データDGをVRAM90に書き込み、表示期間においてVRAM90から表示画像データを読み出して供給する。即ち、サブCPU55は、画像表示装置91へ表示画像データを供給する供給手段として機能するとともに、VRAM90の記憶内容を更新する更新手段として機能する。
サブCPU55は、画面への図柄の表示位置を制御する。画面の上から下へ図柄が流れるように描画するために、画面のY軸方向を1ステップごとにインクリメントさせる。図柄の移動スピードを変更する場合には、例えば、10垂直ブランキング期間ごとにY軸アドレスを1ステップ移動しているところを、8垂直ブランキング期間ごとに変更するように制御する。図柄の移動スピードは、表示画像データを更新する周期と書込アドレスのインクリメントの関係によって定まるので、更新周期を一定にして、移動ステップを変更するようにしてもよい。また、VRAM90の記憶領域を指定するアドレスには連続する値が用いられ、X軸、Y軸の概念がない。そこで、サブCPU55は、X、Yアドレスから実アドレスに換算して図柄画像データDGを所定の記憶領域に書き込む。
このように、サブCPU55は、VRAM90に図柄画像データDGを書き込むことによって表示画像データを更新するが、メインリールの回転に応じた表示態様となるように第2表示部10Bを制御する第1処理とメインリールの回転とは無関係に表示態様を制御する第2処理を実行する点については、第1実施形態と同様である。
即ち、サブCPU55は、基準点通過信号47c〜49cに基づいて、各メインリールの回転速度を検知する。具体的には、第1実施形態において図26を参照して説明したように、ある基準点通過信号と次の基準点通過信号との間に発生するタイマ割込みの回数に基づいてメインリールの回転速度を検知する。この際、過去の回転速度の平均値を算出し、平均値をメインリールの回転速度値とする点は第1実施形態と同様である。そして、サブCPU55は、この表示画像の移動スピードが検知した回転速度と一致するようにVRAM90の記憶内容を更新する。また、基準点通過信号47c〜49cは、メインリールの回転位相を示す位相情報であるから、サブCPU55は各基準点通過信号47c〜49cがアクティブとなったタイミングで、対応する図柄の画像が所定位置に表示されるようにVRAM90への書き込みを制御する。これにより、第1処理が実行される。
メインリールとビデオリールとの位相を合わせるということは、メインリールの基準位置に相当する図柄位置と、図柄画像データDGの図柄位置を一致させることを意味する。ビデオリールの場合はメカニカルな制約はないので、どこの位置を基準点にするかは任意であるが、制御の容易化の観点から、図柄画像データDGの先頭を基準位置に設定することが好ましい。
位相合わせの処理にあっては、メインリールの基準位置をサブCPU55が検知したときに、強制的にビデオリールの表示位置を先頭に戻すようにすればよい。但し、位相が同期していないと、プレイヤーにはいきなり図柄画像が飛んでしまうように見えてしまう。このため、ビデオリールの画像を段階を追って先頭に戻すようにしてもよいし、次の一周の間で徐々に合わせていくように制御してもよい。
一方、第2処理において、制御の対象がサブリールの替わりに画像表示装置91である点を除いて、第1実施形態において図17〜図21を参照して説明したものと同様である。即ち、入賞時及び非入賞時のサブリールの停止位置(この例では、停止図柄)に基づいて、VRAM90への書き込みが制御される。
なお、第3実施形態においても第2実施形態と同様に、基準点通過信号47c〜49cがアクティブになったことをメインCPU31(第1制御手段)で検知して検知コマンドを生成し、データ送出回路37を介してサブ基板30Bに送信する。この場合、サブ基板30BのサブCPU55は、タイマ割込み間隔(2msec)で、メイン基板30Aから検知コマンドが入力されたか否かを確認して、検知コマンドの入力タイミングを基準点通過信号47c〜49cがアクティブになるタイミングとして取り扱う。あるいは、検知コマンドの入力を契機に割り込み処理を実行するようにしてもよい。さらに、専用線によって検知コマンドを伝送してもよい。くわえて、メインリールそのものの回転を制御するために用いられるリール位置検出センサ47A〜49Aとサブリールの回転を制御するために用いられるリール位置検出センサ47C〜49Cとを兼用してもよい。
<6:変形例>
以上、現時点において、最も、実践的であり、かつ、好ましいと思われる実施形態に関連して本発明を説明したが、本発明は、本願明細書中に開示された実施形態に限定されるものではなく、請求の範囲および明細書全体から読み取れる発明の要旨あるいは思想に反しない範囲で適宜変更可能であり、そのような変更を伴う遊技機及びその制御方法もまた本発明の技術的範囲に包含されるものとして理解されなければならない。例えば、以下に述べる変形例は、本発明に包含されることは勿論である。
(1)上述した各実施形態において、メインCPU31は、プレイヤーがスタートレバー6を操作すると、スタートレバーセンサ43からの検出信号を検知して、これを開始情報としてサブCPU55に送信すると共に、プレイヤーがリールストップボタン7a〜7bを操作すると、左・中・右リールストップボタンセンサ44〜46からの検出信号44a〜46aを検知して、これを停止操作情報としてサブCPU55に送信する。ここで、サブCPU55は、開始情報が入力されてから停止操作情報が入力されるまでの期間は、所定の規則に従って第1処理又は第2処理を実行し、停止操作情報の入力後に第2処理を実行してもよい。あるいは、サブCPU55は、メインリールの回転(第1表示手段の回転)を検知してから停止操作情報が入力されるまでの期間は、所定の規則に従って第1処理又は第2処理を実行し、停止操作情報の入力後に第2処理を実行してもよい。
例えば、回転中、即ち、開始情報が入力されてから停止操作情報が入力されるまでの期間において、サブリールの回転制御を、同期制御(第1処理)から非同期制御(第2処理)例えば、一時的に所定回転分だけ高速回転に切替え、再度同期回転に戻してもよい。このように、第1処理から第2処理に移行して最終的に停止するのではなく、開始情報が入力されてから停止操作情報が入力されるまでの期間において、同期制御中に一時的に非同期制御に以降し、同期制御に戻してもよい。
(2)上述した各実施形態において、メインリールとサブリール(ビデオリールを含む)との、位相が一致した場合には、それ以降の位相合わせをしないように制御してもよく、また、速度制御も同様である。この場合は、サブリールを等速で回転するように制御すればよい。
(3)上述した各実施形態では、第1処理において、サブリールの回転又はビデオリールの表示をメインリールの回転に同期させたが、両者が完全に同期するのではなく数コマのズレを有して連動して回転するものであってもよい。この場合には、プレイヤーが所望の図柄が停止させたい位置に差し掛かったタイミングでリールストップボタン7a、7b、7cを操作しても停止図柄がズレてしまうが、例えば、図4に示すように図柄を配置し、引き込み範囲を4コマとすれば、中リールRb2及び右リールRb3の停止操作において、図柄番号PN=12〜21のタイミングでストップボタンを操作すれば、「7」を引き込むことができる。
(4)上述した実施形態において、メインリールRa1〜Ra3に表示される複数種類の図柄は、異なる数字の図形の組によって構成されていたが、メインリールRa1〜Ra3とサブリールRb1〜Rb3の図柄の対応関係は、図29及び図30に示すものであってもよい。図29に示す例では、メインリールRa1〜Ra3に表示される複数種類の図柄は、同一形状で色彩が異なる図形の組によって構成され、図30に示す例では、メインリールRa1〜Ra3に表示される複数種類の図柄は、角の形状が異なる図形の組によって構成される。これらの例によれば、プレイヤーがメインリールRa1〜Ra3を一見しても入賞したか否かを分かり難くすることができ、プレイヤーの関心をサブリールRb1〜Rb3に惹きつけることができる。
さらに、メインリールRa1〜Ra3に表示される複数種類の図柄は、色彩が同一で形状が異なる図形の組、すなわち、同じ色で形が異なるもので構成されてもよい。この場合には、印刷版制作費や印刷工程も低減できるので、コストダウンを図ることができる。くわえて、メインリールRa1〜Ra3に表示される複数種類の図柄は、所定形状の図形を異なる角度回転させた図形の組であってもよい。例えば、「△」の図形を0度回転させた「△」、180度回転させた「▽」が含まれてもよい。
(5)上述した実施形態では、複数のメインリールRa1〜Ra3の各々において表示される複数種類の図柄が、複数のサブリールRb1〜Rb3の各々において表示される複数種類の図柄と1対1に対応したが、本発明はこれに限定されるものではない。例えば、サブリールRb1〜Rb3の図柄の一部又は全部が、メインリールRa1〜Ra3の複数種類の図柄と対応するものであってもよい。また、逆にメインリールRa1〜Ra3の図柄の一部又は全部が、サブリールRb1〜Rb3の複数種類の図柄と対応するものであってもよい。
また、サブリールの数は、メインリールの数と必ずしも一致しなくてもよく、メインリールの数よりも多くてもよいし、少なくてもよい。さらに、例えば、サブリールの行数はメインリールと同じでなくてもよく、例えば、1行だけであってもよい。また、サブリールの入賞ラインの数は、メインリールと同じでなくてもよく、例えば、8本の入賞ラインを有するものであってもよい。さらに、第2表示部10Bとして画像表示装置91を用いる場合には、画像表示装置91に表示列を表示させる必要は必ずしもなく、例えば、ルーレットゲームを表示させてもよい。この場合には、メインリールと全く異なるゲームを表示することができるので、スロットマシンにおけるゲームの自由度を拡げ、その趣向性を大幅に向上させることが可能となる。また、複数の図柄が縦横又は斜めに移動するアニメーション、円環状に配列された複数の図柄が回転するアニメーション、又は図柄が1枚ずつ表示されるアニメーションであってもよい。要は、第1処理においてアニメ−ション等の画像の可変速度がメインリールの回転に応じたものになっており、第2処理において画像をメインリールの回転と無関係に表示するのであれば、どのような画像であってもよい。また、サブリールがビデオリールであった場合に、ビデオリールの可変表示停止後にアニメーションによる多彩な演出を行うことが可能である。したがって、アニメーションが始まってから払出制御を行うようにしてもよい。
(6)上述した実施形態において、最初に演出調整時間に基づいた演出を開始した後、停止図柄や停止ボタン番号等の停止操作情報を得て、演出態様を変更するようにしてもよい。例えば、BB賞に内部抽選で当選したが、入賞しなかった場合には、最後のリールストップボタンを操作した時に、入賞しなかったことが確定する。この場合、入賞とならない態様でサブリールを停止させた後、再回転を行うようにサブリールを制御して、BB賞に入賞する態様でサブリールを停止させて、BB賞に内部当選していることをプレイヤーに報知してもよい。プレイヤーはサブリールのみを見てプレイするので、BB賞に入賞する態様よりもリーチ目で報知した方がよい。あるいは、入賞しなかった場合に演出を中止し、入賞した場合にのみ演出を行ってもよい。
(7)次に、サブリールの第1処理及び第2処理についていくつかの例を説明する。図31及び図32に変形例に係るサブリールの挙動を示す。これらの図において横軸は時間であり縦軸はサブリールの回転速度を示している。また、実線は期間を示しており、点線はサブリールの速度変化を示している。さらに、この例では、メインリールは正転しているものとし、第1処理と第2処理はサブリールの回転方向によって区別されるものとする。従って、第1処理ではサブリールを正転させ(メインリールと同じ方向の回転)、第2処理ではサブリールを逆転させる(メインリールと逆方向の回転)。
図31(A)の例は、サブCPU55に開始情報Aが入力されてから停止操作情報Bが入力されるまでの期間T1において、サブCPU55は第1処理又は第2処理を実行する。開始情報Aは、メインリールの回転開始を直接的又は間接的に示す情報であって、メインリールの回転を検知することによって得られた始動フラグであってもよいし、又は、スタートレバーセンサ43の検出信号、若しくは、検出信号をメインCPU31で検知して得たコマンドであってもよい。また、停止操作情報Bは、左・中・右リールストップボタンセンサ44〜46からの停止指示信号44a、45a、46a、あるいは、メインCPU31が停止指示信号44a、45a、46aを検知して得た停止ボタン番号であってもよい。
例えば、点線で示すようにサブリールを正転させる場合には、期間T1における処理は第1処理となる。第1処理を選択するか第2処理を選択するかは、サブCPU55が制御プログラムに従って決定する。例えば、メインCPU31から送信される内部抽選データISDに含まれる所定の当選フラグがセットされている場合に第2処理を実行してもよい。より具体的には、所定の小役に対応した当選フラグ、BB当選フラグ、又はRB当選フラグが該当する。
プレイヤーが停止ボタン7a〜7cを操作すると、メインCPU31は対応するメインリールの回転を停止させるように停止制御を開始すると共に、停止ボタン番号をサブCPU55に送信する。サブCPU55はこれを検知して、サブリールを逆転させるように制御を開始する。
期間T2においては、メインリールの回転が停止し、サブリールは逆転している。従って、期間T2において、サブCPU55は、第2処理を実行する。なお、この例では、サブリールの回転を、正転から逆転に連続して移行させたが、一旦、サブリールの回転を停止させ、その後、逆転させてもよい。
次に、図31(B)に、期間T1において、サブCPU55が第1処理又は第2処理を選択して実行し、停止操作情報Bの入力を契機に可変表示を停止させるようにサブリールを制御する例を示す。サブCPU55は開始情報Aが供給されると第1処理又は第2処理を選択して実行し、停止操作情報Bの入力を契機にサブリールを停止させるようにリール駆動モータを制御する。例えば、図31(B)に点線で示すようにサブリールが逆転する場合には、サブCPU55は、第2処理を選択する。
次に、図31(C)に、サブCPU55に開始情報Aが入力されてから所定時間経過するまでの期間は、所定の規則に従って選択した第1処理又は第2処理のうち一方の処理を継続して実行し、所定時間経過後、第1処理又は第2処理のうち他方の処理を実行する例を示す。ここでは、所定時間経過の前後で時間を期間T3と期間T4とに分けるものとする。サブCPU55は期間T3で第1処理を選択すると期間T4では第2処理を選択し、期間T3で第2処理を選択すると期間T4で第1処理を選択する。
より具体的には、サブCPU55は、所定周期の割込み信号をカウントすることによって時間を計測するタイマ機能を備え、開始情報Aが入力されたことを検知するとタイマ機能を用いて計測を開始させ、その計測値が所定時間に達したか否かを判定する。そして、サブCPU55は、所定時間に達したと判定された後、他方の処理を実行する。なお、所定時間を経過する前に停止操作情報Bが入力された場合には、一方の処理から他方の処理に移行させてもよい。
例えば、図31(C)に点線で示すように期間T3にサブリールが正転する場合には、サブCPU55は第1処理を選択し、期間T4においてサブリールが逆転する場合には、サブCPU55は第2処理を選択する。
次に、図32(A)に、サブCPU55に、開始情報Aが入力されてから最初の停止操作に伴う停止操作情報Bが入力されるまでの期間T5は、各サブリールに対して所定の規則に従って選択した第1処理又は第2処理のうち一方の処理を継続して実行し、最初の停止操作に伴う停止操作情報Bの入力を契機に、当該停止操作情報に対応するサブリールを停止させるように制御すると共に、回転中の他のサブリールのうち少なくとも一つに対して期間T5で選択されなかった他方の処理を実行する例を示す。なお、期間T5の後の時間を期間T6とし、プレイヤーが最初に左リールストップボタン7aを操作したものとする。
この場合、サブCPU55は、開始情報Aを検知すると、各サブリール毎に第1処理又は第2処理を選択して実行する。図32(A)に示す例では、サブCPU55は、総てのサブリールについて第1処理を選択して、左・中・右サブリールを正転させるように制御する。この後、プレイヤーが左リールストップボタン7aを操作すると、停止ボタン番号が停止操作情報BとしてメインCPU31からサブCPU55へ供給される。サブCPU55は、この停止操作情報Bを検知すると、左サブリールの回転を停止させるように制御すると共に、中・右サブリールについては、回転方向を逆転させる。この状態では、中・右メインリールは回転中である。したがって、サブCPU55は、期間T6において中・右サブリールに対して期間T5で選択されなかった第2処理を実行する。
この例では、あるメインリールの停止操作情報Bの入力を契機として、他のサブリールの処理状態を変更するので、複数のサブリール間の処理を関連付けることができ、演出の趣向性を大幅に向上させることができる。
次に、図32(B)に、サブCPU55に、開始情報Aが入力されてから、少なくとも一のサブリールに対して第1処理又は第2処理のうち一方の処理を選択して実行し、他のサブリールに対しては少なくとも一のサブリールとは異なる他方の処理を実行する例を示す。
この例では、開始情報Aの入力を契機に、サブCPU55が、左サブリールに対して第1処理を実行して、左サブリールが正転するように制御する一方、中・右サブリールに対して第2処理を実行して中・右サブリールを逆転させるように制御する。これにより、プレイヤーがスタートレバー6を操作すると、各サブリールのうち少なくとも一つのサブリールの挙動を他のサブリールの挙動と異ならせることができる。この結果、サブリールによる演出の趣向性が大幅に向上する。なお、上述した第1処理及び第2処理の選択を適宜組み合わせてもよいことは勿論である。また、この変形例は、第2表示部10Bとして、機械的なサブリールを取り上げて説明したが、上述した第3実施形態と同様にサブリールの替わりに画像表示装置を用い、そこにサブリールを模倣した表示列を表示してもよい。
(8)次に、サブリールRb1〜Rb3の第2処理の例として、スロー回転を説明する。この場合、CPU31は、メインリールRa1〜Ra3を1回転させるため、左・中・右駆動モータ51〜53に対して400ステップの駆動パルス51a〜53aを供給する。そして、メインCPU31は2ミリ秒間隔の割込み信号の発生ごとに、1ステップ分の駆動パルス51a〜53aを生成する。従って、メインリールRa1〜Ra3は、400ステップ、つまり800ミリ秒で1回転する。これにより、メインリールRa1〜Ra3を、75rpmの一定速度で回転させることができる。この場合、メインリールRa1〜Ra3が800ミリ秒で1回転することは、予め定められたものなので、サブCPU55はメインリールRa1〜Ra3の速度を計測する必要はなく、800ミリ秒で1回転を基準速度として取り扱う。
一方、サブCPU55は、サブリールRb1〜Rb3を1回転させるため、左・中・右駆動モータ51B〜53Bに対して400ステップの駆動パルス51b〜53bを供給する。第1処理を実行する場合は、サブCPU55は左・中・右駆動モータ51B〜53Bに対して、2ミリ秒間隔の割込み信号の発生ごとに、1ステップ分の駆動パルス51b〜53bを生成する。この場合、サブリールRb1〜Rb3の回転速度は、メインリールRa1〜Ra3と同じになる。即ち、第1処理においてサブCPU55はメインリールRa1〜Ra3の角速度と同じになるようにサブリールRb1〜Rb3の角速度を制御する。第2処理を実行する場合は、サブCPU55は左・中・右駆動モータ51B〜53Bに対して、例えば、4ミリ秒ごとに、1ステップ分の駆動パルス51b〜53bを生成する。この場合、割り込み信号を1/2分周して駆動パルス51b〜53bを生成すればよい。これにより、サブリールRb1〜Rb3のスロー回転を実現できる。なお、駆動パルス51b〜53bのパルス幅を駆動パルス51a〜53aのパルス幅より狭くなるようにサブCPU55が設定することにより、高速回転を実行してもよい。このようにして、サブCPU55は、メインリールRa1〜Ra3の回転速度と異なる速度(角速度)でサブリールRb1〜Rb3を回転させる第2処理を実行することができる。
(9)次に、サブリールRb1〜Rb3の第2処理の例として、スロー始動を説明する。図33に示すようにメインリールRa1〜Ra3の回転開始から回転停止までの回転中期間Tmは、回転速度を加速する加速期間Tm1、一定の速度で回転させる定速期間Tm2、及び一定の速度から回転速度を減速させて回転を停止させる減速期間Tm3に分けることができる。同様に、サブリールRb1〜Rb3の回転開始から回転停止までの回転中期間Tsは、加速期間Ts1、定速期間Ts2、及び減速期間Ts3に分けることができる。この例において、定速期間Tm2及び定速期間Ts2においてメインCPU31とサブCPU55は2ミリ秒周期の割り込み信号ごとに、1個の駆動パルス51a〜53a、51b〜53bを生成して、メインリールRa1〜Ra3及びサブリールRb1〜Rb3を各々駆動する。
次に、加速期間Tm1においてメインCPU31は、所定の加速パターンに従って駆動パルス51a〜53aを生成する。具体的には、以下の通りである。
1)10回の割り込み信号に対して1個の駆動パルスを生成する処理を2回繰り返す。
2)5回の割り込み信号に対して1個の駆動パルスを生成する処理を3回繰り返す。
3)3回の割り込み信号に対して1個の駆動パルスを生成する処理を4回繰り返す。
4)1回の割り込み信号に対して1個の駆動パルスを生成する処理を1回実行する。
これにより、合計48回の割り込み信号で10個の駆動パルス51a〜53aを生成する。この結果、加速期間Tm1は96ミリ秒となる。
一方、サブCPU55は、第1処理では上述した加速パターンを実行し、第2処理では別の加速パターンを実行する。図33に示す例は、加速期間Ts2において第2処理を選択した一例である。この場合、サブCPU55は以下の加速パターンに従って駆動パルス51b〜53bを生成する。
1)15回の割り込み信号に対して1個の駆動パルスを生成する処理を2回繰り返す。
2)10回の割り込み信号に対して1個の駆動パルスを生成する処理を3回繰り返す。
3)5回の割り込み信号に対して1個の駆動パルスを生成する処理を4回繰り返す。
4)3回の割り込み信号に対して1個の駆動パルスを生成する処理を5回繰り返す。
5)2回の割り込み信号に対して1個の駆動パルスを生成する処理を2回繰り返す。
4)1回の割り込み信号に対して1個の駆動パルスを生成する処理を1回繰り返す。
これにより、合計100回の割り込み信号で17個の駆動パルス51b〜53bを生成する。この結果、加速期間Ts1は200ミリ秒となる。これにより、スロー加速を行うことができる。なお、サブCPU55は、第2処理として、加速期間Ts1を加速期間Tmより短くして高速加速を実行してもよい。