(第1実施形態)
以下、図面等を参照して、本発明の一実施形態について説明する。
なお、以下の実施形態のスロットマシン10は、メダルを遊技媒体としているが、メダルに限らず、遊技球等であってもよいのはもちろんである。
図1は、本実施形態におけるスロットマシン10の制御の概略を示すブロック図である。スロットマシン10は、メイン制御手段50とサブ制御手段80とを備える。
メイン制御手段50は、役の抽選、リール31の駆動(回転及び停止)制御、及び入賞時の払出し等の遊技の進行を制御するものである。メイン制御手段50は、メイン制御基板(図示せず)上に設けられており、演算等を行うCPU、遊技の進行等に必要なプログラム等を記憶しておくROM、CPUが各種の制御を行うときに取り込んだデータ等を一時的に記憶しておくRAM等を備える。
また、サブ制御手段80は、遊技中及び遊技待機中における演出の選択・出力等を制御するものである。サブ制御手段80は、サブ制御基板(図示せず)上に設けられており、演算等を行うCPU、演出用のデータ等(演出パターン等)を記憶しておくROM、CPUが各種の演出を出力するときに取り込んだデータ等を一時的に記憶しておくRAM等を備える。
なお、サブ制御基板は、メイン制御基板の下位に属する制御基板である。そして、メイン制御手段50とサブ制御手段80とは電気的に接続されており、メイン制御手段50からサブ制御手段80に一方向で、演出の出力に必要な信号や情報(コマンド)を送信するように形成されている。
図1に示すように、メイン制御手段50の入力側(図1中、左側)には、遊技者が遊技を進行する上で操作する操作スイッチであるベットスイッチ40、スタートスイッチ41、及び3つ(左、中、右)のストップスイッチ42が電気的に接続されている。
また、メイン制御手段50の入力側には、メダルセレクタ43a、第1投入検知センサ43b、第2投入検知センサ43c、払出し検知センサ44、設定キースイッチ45、設定変更スイッチ46、リセットスイッチ47、ドア開閉検知センサ48、及びカバー開閉検知センサ49が電気的に接続されている。
ベットスイッチ40は、遊技者が貯留メダルを当該遊技のために投入するときに操作するスイッチである。本実施形態では、いずれの遊技状態においても、3枚のメダルを投入して遊技を行うように設定されている。このため、ベットスイッチ40を操作すると、3枚分の貯留メダルを電気的に投入するとともに、貯留メダルの枚数(クレジット数)から「3」を減算する処理が行われる。なお、これに限らず、メダルの投入枚数は、1枚又は2枚でもよい。そして、1枚ベット用や2枚ベット用のベットスイッチを設けてもよい。
メダル投入口43は、実際のメダルを遊技者が投入する部分であり、フロントマスク部(前面扉)の前面側(遊技者側)に設けられている。
また、フロントマスク部の後面側(裏面側)には、メダル投入口43から投入されたメダルを選別するメダルセレクタ43aが設けられている。
メダル投入口43から投入されたメダルは、メダルセレクタ43aに到達する。また、メダルセレクタ43aでは、投入されたメダルが正規のものか否か、及びメダルの投入操作が有効の状態か否かに応じて、メダルの進路を切り替える。
具体的には、メダルセレクタ43aは、メダルの投入操作が有効の状態であり、かつ投入されたメダルが正規のものであれば、そのメダルをホッパー33aに誘導する。
これに対し、メダルセレクタ43aは、メダルの投入操作が無効の状態であれば、投入されたメダルが正規のものであるか否かにかかわらず、そのメダルを遊技者に返却するために、メダル受け皿に誘導する。
また、メダルセレクタ43aは、投入されたメダルが正規のものでなければ、メダルの投入操作が有効の状態か否かにかかわらず、そのメダルを遊技者に返却するために、メダル受け皿に誘導する。
さらに、メダルセレクタ43aを通過してホッパー33aへ向かうメダルの通路の途中には、上流側から順に、第1投入検知センサ43b及び第2投入検知センサ43cが設けられている。
第1投入検知センサ43b及び第2投入検知センサ43cは、いずれも、発光素子と受光素子とを有し、発光素子から発せられた光を受光素子で検知している。そして、通路を通るメダルは、発光素子と受光素子との間を通過する。このとき、受光素子に入射する光が一瞬遮られ、これによりメダルの通過を検知する。
そして、第1投入検知センサ43b、第2投入検知センサ43cの順にメダルの通過を検知すると、メダルが投入されたと判断する。
これに対し、第2投入検知センサ43c、第1投入検知センサ43bの順にメダルの通過を検知すると、エラー(メダルの逆流)が発生したと判断する。
また、第1投入検知センサ43b及び/又は第2投入検知センサ43cの遮光が一定時間以上継続すると、エラー(メダル詰まり)が発生したと判断する。
そして、メダル投入口43からメダルを投入することは、ベットスイッチ40を操作することと同様の役割を果たす。
また、本明細書において、「メダルの投入」とは、メダル投入口43に実際のメダルを投入すること、及びベットスイッチ40を操作することの双方を含む意味で使用する。
さらにまた、スタートスイッチ41は、(左、中、右のすべての)リール31を始動させるときに遊技者が操作するスイッチである。
さらに、(左、中、右)ストップスイッチ42は、3つ(左、中、右)のリール31に対応して3つ設けられ、対応するリール31を停止させるときに遊技者が操作するスイッチである。
電源ユニットは、スロットマシン10の筐体内部に設けられており、メイン制御基板やサブ制御基板等に電力を供給する電源基板と、電源基板を収納する電源ボックスとを備えている。
また、電源ボックスの前面には、電源のオン/オフを切り替えるための電源スイッチと、設定キーが挿入される設定キー挿入口とが設けられているとともに、これらを覆う開閉自在のスイッチカバーが設けられている。
スイッチカバーを開けると、電源スイッチの操作が可能になるとともに、設定キー挿入口への設定キーの挿入が可能になる。
また、設定キー挿入口に設定キーを挿入して、設定キーを時計周りに90度回転させると、設定キースイッチ45がオンになり、この状態から設定キーを反時計周りに90度回転させると、設定キースイッチ45がオフになる。
さらにまた、電源がオフの状態で設定キースイッチ45をオンにし、この状態で電源をオンにすると、設定値が変更可能となる設定変更モードになる。
さらに、電源がオンの状態で設定キースイッチ45をオンにすると、設定値が確認可能となる設定確認モードになる。
また、カバー開閉検知センサ49は、スイッチカバーの開閉を検知するセンサである。たとえば、スイッチカバーが開放された状態であるときはオンとなり、スイッチカバーが閉じた状態であるときはオフとなるように配置されている。
設定変更スイッチ46は、スロットマシン10の設定値を変更・設定するときに操作するスイッチである。本実施形態では、設定値として、設定1から設定6までの6段階を設けている。そして、設定値が高くなるほど、遊技者にとって有利となるように設定している。
なお、設定変更スイッチ46は、遊技者が操作するものではなく、スロットマシン10の設置店(ホール)側で操作するものである。このため、遊技者が操作できないように、スロットマシン10の筐体内部に設定変更スイッチ46を配置している。
リセットスイッチ47は、エラーの解除等を行うときに操作するスイッチである。リセットスイッチ47も、設定変更スイッチ46と同様に、遊技者が操作するものではなく、スロットマシン10の設置店側で操作するものである。このため、遊技者が操作できないように、スロットマシン10の筐体内部にリセットスイッチ47を配置している。
なお、リセットスイッチ47は、それ専用のスイッチを設けてもよく、また、他のスイッチと兼用にしてもよい。たとえば、1個のスイッチを、設定変更スイッチ46とリセットスイッチ47とで兼用にすることができる。この場合、1個のスイッチを、たとえば、設定変更モード中は、設定変更スイッチ46として機能させ、それ以外のときは、リセットスイッチ47として機能させることができる。
ドア開閉検知センサ48は、フロントマスク部(前面扉)の開閉を検知するセンサである。たとえば、フロントマスク部が開放された状態であるときはオンとなり、フロントマスク部が閉じた状態であるときはオフとなるように配置されている。
メイン制御手段50の出力側(図1中、右側)には、3つのモータ32、及びメダル払出し装置33の払出し駆動部33bが電気的に接続されている。
モータ32は、リール31を回転させるためのものであり、各リール31の回転中心部に連結され、後述するリール制御手段64によって制御される。
ここで、リール31は、左リール31、中リール31、右リール31からなり、左リール31を停止させるときに操作するストップスイッチ42が左ストップスイッチ42であり、中リール31を停止させるときに操作するストップスイッチ42が中ストップスイッチ42であり、右リール31を停止させるときに操作するストップスイッチ42が右ストップスイッチ42である。
リール31は、リング状のものであって、その外周面には複数種類の図柄(役に対応する図柄の組合せを構成している図柄)を印刷したリールテープを貼付したものである。本実施形態では、各リール31ごとに、21個の図柄表示領域(コマ)を等間隔で配置するとともに、各図柄表示領域(コマ)にそれぞれ所定の図柄を表示している。
メダル払出し装置33は、スロットマシン10の筐体内部に設けられており、メダルを貯留するホッパー33aと、ホッパー33aに貯留されているメダルを払い出す払出し駆動部33bと、払出し駆動部33bから払い出されたメダルを検知する払出し検知センサ44とを備えている。
払出し検知センサ44は、発光素子と受光素子とを有し、発光素子から発せられた光を受光素子で検知している。そして、払出し駆動部33bから払い出されたメダルは、払出し検知センサ44の発光素子と受光素子との間を通過する。このとき、受光素子に入射する光が一瞬遮られ、これによりメダルが払い出されたことを検知する。
また、払出し検知センサ44の遮光が一定時間以上継続すると、エラー(メダル詰まり)が発生したと判断する。
さらにまた、払出し駆動部33bが駆動しているにもかかわらず、メダルが払い出されたことを払出し検知センサ44が検知しないと、エラー(ホッパー33a内のメダルが無くなった)が発生したと判断する。
また、スロットマシン10は、前面に開口部を有する筐体と、筐体の前面を覆うように開閉可能に取り付けられたフロントマスク部(前面扉)とを備えている。
フロントマスク部のほぼ中央には、表示窓(透明窓)が設けられている。各リール31は、本実施形態では横方向に並列に3個(左リール31、中リール31、及び右リール31)設けられている。さらに、各リール31は、表示窓から、上下に連続する3図柄が見えるように配置されている。よって、スロットマシン10の表示窓から、合計3×3=9個の図柄が見えるように配置されている。そして、表示窓から見える3×3=9個の図柄の組合せ(配置)を「停止出目」と称する。
また、スロットマシン10の表示窓を含む部分には、図柄組合せラインを設けている。
ここで、「図柄組合せライン」とは、リール31の停止時における図柄の並びラインであって図柄の組合せを形成させるラインである。
そして、図柄組合せラインは、有効ラインと無効ラインとを有する。
ここで、「有効ライン」とは、いずれかの役に対応する図柄の組合せがそのラインに停止したときに、その役の入賞となるラインである。
一方、「無効ライン」とは、図柄組合せラインのうち、有効ラインとして設定されないラインであって、いずれかの役に対応する図柄の組合せがそのラインに停止した場合であっても、その役に応じた利益の付与(メダルの払出し等)を行わないラインである。すなわち、無効ラインは、そもそも図柄の組合せの成立対象となっていないラインである。
本実施形態では、5本の図柄組合せラインを設けている。そして、常に3枚のメダルを投入して遊技を行うとともに、常に5本の図柄組合せラインを有効ラインとして設定するようにしている。
なお、メダル投入枚数や遊技状態等に応じて、有効ラインと無効ラインとを設定するようにしてもよい。
図1に示すように、サブ制御手段80の出力側(図1中、右側)には、演出用ランプ21、スピーカ22、画像表示装置23、並びに発光体としてのベット用LED24及びストップ用LED25が電気的に接続されている。
演出用ランプ21は、スロットマシン10の演出用のランプであり、所定の条件を満たしたときに、それぞれ所定のパターンで点灯する。なお、演出用ランプ21には、各リール31の内周側に配置され、リール31に表示された図柄(表示窓から見える上下に連続する3図柄)を背後から照らすためのバックランプ(図示せず)や、スロットマシン10の筐体前面に配置され、役の入賞時等に点滅する上部ランプ及びサイドランプ(図示せず)等が含まれる。
また、スピーカ22は、遊技中に各種の演出を行うべく、所定の条件を満たしたときに、所定のサウンドを出力するものである。
さらにまた、画像表示装置23は、演出画像、遊技情報(たとえば、メダルの貯留枚数、メダルの払出し枚数、特別遊技の残り遊技回数や残り払出し枚数、ストップスイッチ42の押し順等)、遊技結果等の表示を行うものである。画像表示装置23としては、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機エレクトロ・ルミネッセンス(有機EL)ディスプレイ、ドットディスプレイ等が挙げられるが、本実施形態では、液晶ディスプレイによって構成されている。
さらに、発光体は、各操作スイッチにそれぞれ対応して設けられており、各操作スイッチの操作が有効の状態か又は無効の状態かを遊技者に示すものである。
本実施形態では、発光体は、カラーLEDによって構成されている。
また、発光体として、ベットスイッチ40に対応して設けられているベット用LED24と、3つ(左、中、右)のストップスイッチ42にそれぞれ対応して設けられている3つ(左、中、右)のストップ用LED25とを備えている。
さらにまた、ベット用LED24は、ベットスイッチ40の操作が有効の状態のときは赤色に発光し、ベットスイッチ40の操作が無効の状態のときは消灯する。これにより、ベットスイッチ40の操作が有効の状態か又は無効の状態かを遊技者に示すようにしている。
さらに、ストップ用LED25は、ストップスイッチ42の操作が有効の状態のときは青色に発光し、ストップスイッチ42の操作が無効の状態のときは赤色に発光する。これにより、ストップスイッチ42の操作が有効の状態か又は無効の状態かを遊技者に示すようにしている。
本実施形態では、役として、大別して、特別役、リプレイ、及び小役を設けている。
そして、各役に対応する図柄の組合せ及び入賞時の払出し枚数等を定めている。これにより、すべてのリール31の停止時に、いずれかの役に対応する図柄の組合せが有効ラインに停止すると、その役の入賞となり、その役に対応する枚数のメダルの払出し又は自動投入が行われる(ただし、特別役を除く。)。
なお、本明細書では、説明の便宜上、「いずれかの役に対応する図柄の組合せがいずれかの有効ラインに停止する」ことを、「その役が“入賞”する」と称する。
役において、まず、特別役とは、通常遊技から特別遊技に移行させる役である。
本実施形態では、特別役として、1BB(第1種ビッグボーナス)、及びRB(レギュラーボーナス)を設けている。
1BBが入賞すると、当該遊技におけるメダルの払い出しはないが、次遊技から、特別遊技の1つである1BB遊技に移行する。RBが入賞した場合についても、1BBが入賞した場合と同様である。
また、リプレイとは、再遊技役であって、当該遊技で投入したメダル枚数を維持した(メダルを自動投入する)再遊技を行うことができる役である。
さらにまた、小役とは、予め定められた枚数のメダルが払い出される役である。
ここで、スロットマシン10での遊技の進行の概略を示す。
遊技の開始時には、遊技者は、ベットスイッチ40を操作して予め貯留されたメダルを投入するか、又はメダル投入口43からメダルを投入し、スタートスイッチ41を操作(オン)する。
スタートスイッチ41が操作されると、そのときに発生する信号がメイン制御手段50に入力される。
メイン制御手段50(具体的には、後述するリール制御手段64)は、この信号を受信すると、すべてのモータ32を駆動制御して、すべてのリール31を回転させるように制御する。
このようにしてリール31がモータ32によって回転されることで、リール31上の図柄は、所定の速度で表示窓内で上下方向に移動表示される。
そして、遊技者は、ストップスイッチ42を押すことで、そのストップスイッチ42に対応するリール31(たとえば、左ストップスイッチ42に対応する左リール31)の回転を停止させる。
ストップスイッチ42が操作されると、そのときに発生する信号がメイン制御手段50に入力される。
メイン制御手段50(具体的には、後述するリール制御手段64)は、この信号を受信すると、そのストップスイッチ42に対応するモータ32を駆動制御して、そのモータ32に係るリール31の停止制御を行う。
そして、すべてのリール31の停止時に、いずれかの役に対応する図柄の組合せが有効ラインに停止したとき(すなわち、その役の入賞となったとき)は、入賞した役に対応するメダルの払出し等が行われる。
このようにして、スロットマシン10での遊技は進行していく。
また、メイン制御手段50は、遊技の進行のためのメイン処理を繰り返し実行するとともに、メイン処理と並行して、1回のメイン処理に要する時間よりも短い所定時間ごとに割込み処理を実行する。
ここで、メイン処理は、遊技の開始とともに開始し、遊技の終了とともに終了する。このため、メイン処理は、1遊技につき1回実行される。
また、本実施形態では、2.235msごとに、タイマー割込みを行うように設定されている。このため、割込み処理は、2.235msごとに実行される。
さらにまた、本実施形態では、1割込みごとにカウント値に1を加算し、8割込みでカウント値が一巡する第1割込みカウンタ51と、1割込みごとにカウント値に1を加算し、10割込みでカウント値が一巡する第2割込みカウンタ52とを備えている。
具体的には、第1割込みカウンタ51は、0からカウントを開始し、タイマー割込みが行われるごとにカウント値に1を加算し、カウント値が7に到達すると、その次はカウント値を0に戻すものである。
また、第2割込みカウンタ52は、0からカウントを開始し、タイマー割込みが行われるごとにカウント値に1を加算し、カウント値が9に到達すると、その次はカウント値を0に戻すものである。
そして、メイン制御手段50は、第1割込みカウンタ51及び第2割込みカウンタ52のカウント値に基づいて、メイン処理や割込み処理における種々の決定を行う。
また、メイン制御手段50は、遊技の進行に応じて、操作スイッチ、すなわち上述したベットスイッチ44、スタートスイッチ41、及びストップスイッチ42の操作を有効にするか又は無効にするかを制御する。
具体的には、メイン制御手段50は、遊技の開始前(全てのリール31の停止時)においては、ベットスイッチ40の操作、又はメダル投入口43からのメダルの投入操作を有効にするとともに、スタートスイッチ41の操作、及びストップスイッチ42の操作を無効にするように制御する。
そして、メイン制御手段50は、ベットスイッチ40が操作されるか、又はメダル投入口43からメダルが3枚投入されると、それ以降は、ベットスイッチ40の操作、及びメダル投入口43からのメダルの投入操作を無効にするように制御する。
たとえば、メダルが3枚投入された状態でベットスイッチ40が操作されても、メイン制御手段50は、それ以上のメダルの投入は許可せず、そのベットスイッチ40の操作は無効とする。
ただし、メダルの1枚又は2枚投入を可能とした場合には、メダルが3枚投入された後でも、投入枚数を変更可能にするために、1枚ベット用や2枚ベット用のベットスイッチについては、引き続き操作を有効にする。
なお、メイン制御手段50は、メダルが3枚投入された状態でメダル投入口43からメダルが投入されたときは、メダルの貯留枚数が50枚未満であれば、投入されたメダルをメダルセレクタ43aにてホッパー33aに誘導して内部に貯留し、メダルの貯留枚数が50枚に達していれば、投入されたメダルをメダルセレクタ43aにてメダル受け皿に誘導して遊技者に返却する。
また、メダルが投入されると、メイン制御手段50は、スタートスイッチ41の操作を有効にするとともに、ベットスイッチ40の操作、メダル投入口43からのメダルの投入操作、及びストップスイッチ42の操作を無効にするように制御する。
そして、スタートスイッチ41が操作され、リール31が回転すると、メイン制御手段50は、ストップスイッチ42の操作を有効にするとともに、ベットスイッチ40の操作、メダル投入口43からのメダルの投入操作、及びスタートスイッチ41の操作を無効にするように制御する。
このとき、再度スタートスイッチ41が操作されても、メイン制御手段50は、そのスタートスイッチ41の操作は無効とする。また、リール31の回転中にベットスイッチ40が操作されても、メイン制御手段50は、そのベットスイッチ40の操作を無効とする。さらにまた、リール31の回転中にメダル投入口43からメダルが投入されても、メイン制御手段50は、そのメダルの投入を無効とし、投入されたメダルをメダルセレクタ43aにてメダル受け皿に誘導して遊技者に返却する。
また、ストップスイッチ42の操作が有効にされている間に、ストップスイッチ42が操作されると、後述するリール制御手段64は、そのストップスイッチ42に対応するリール31を停止制御し、メイン制御手段50は、そのストップスイッチ42の操作を無効にするように制御する。これにより、一旦操作されたストップスイッチ42は、その遊技中に再度操作されても、その操作は無効とされる。
そして、全てのリール31が停止し、役の入賞時にはメダルの払出しが行われると、メイン制御手段50は、ベットスイッチ40の操作、又はメダル投入口43からのメダルの投入操作を有効にするように制御する。
なお、リプレイ入賞時には、メイン制御手段50は、ベットスイッチ40の操作、又はメダル投入口43からのメダルの投入操作を有効にすることなく、スタートスイッチ41の操作を有効にするように制御する。
また、メイン制御手段50は、操作の有効/無効の状態にかかわらず、いずれか1個の操作スイッチの操作のみ受け付けるように制御する。すなわち、メイン制御手段50は、複数個の操作スイッチが同時に操作されたときは、操作の有効/無効の状態にかかわらず、これを受け付けないように制御する。
具体的には、メイン制御手段50は、たとえば、スタートスイッチ41の操作を無効にするとともにストップスイッチ42の操作を有効にしている場合において、スタートスイッチ41が操作された状態でストップスイッチ42が操作されたときは、このストップスイッチ42の操作を受け付けないように制御する。
また、メイン制御手段50は、たとえば、3個(左、中、右)のストップスイッチ42の操作を有効にしている場合において、左ストップスイッチ42が操作された状態で中ストップスイッチ42が操作されたときは、左ストップスイッチ42の操作は受け付けるが、中ストップスイッチ42の操作は受け付けないように制御する。
また、フリーズが実行されたときは、メイン制御手段50は、フリーズが終了するまで、ベットスイッチ40の操作、メダル投入口43からのメダルの投入操作、スタートスイッチ41の操作、及びストップスイッチ42の操作を無効にするように制御する。
なお、全てのリール31の停止後にフリーズが実行されたときは、メイン制御手段50は、フリーズの実行中であっても、ベットスイッチ40の操作、又はメダル投入口43からのメダルの投入操作を有効にするように制御し、ベットスイッチ40の操作、又はメダル投入口43からのメダルの投入操作が行われたときは、その時点で、実行中のフリーズをキャンセルするように制御してもよい。
このように、メイン制御手段50は、実行中のフリーズをキャンセル可能なときに、操作スイッチの操作を有効にし、このとき操作スイッチが操作されると、実行中のフリーズをキャンセルするように制御してもよい。
また、たとえば、メイン制御手段50は、フリーズの実行中に操作スイッチの操作を有効にし、このとき操作スイッチが操作されると、実行中のフリーズを終了して、他のフリーズを実行するように制御してもよい。すなわち、フリーズを変更してもよい。
また、本実施形態では、メイン制御手段50側で制御するメイン遊技状態として、通常遊技及び特別遊技を備え、通常遊技として、RT遊技及び非RT遊技を備え、特別遊技として、1BB遊技及びRB遊技を備える。
さらにまた、サブ制御手段80側で制御するサブ遊技状態として、AT遊技及び非AT遊技を備える。
また、「RT(リプレイタイム)遊技」とは、リプレイの当選確率を非RT遊技よりも高く設定することにより、1遊技あたりの差枚数が非RT遊技よりも多くなるメイン遊技状態をいう。すなわち、リプレイに当選・入賞すれば、当該遊技でのメダル枚数が自動投入され、再遊技を行うことができるので、それだけ、メダル消費枚数が少なくなる。よって、RT遊技は、非RT遊技よりも遊技者にとって有利な遊技である。
なお、非RT遊技とはリプレイの当選確率が異なるメイン遊技状態を、RT遊技と称することもある。また、「リプレイの当選確率が異なる」には、複数種類のリプレイの当選確率の合算値は同一であるが、各リプレイの当選確率の振分け方が異なる場合や、抽選されるリプレイの種類が異なる場合を含む。さらに、非RT遊技におけるリプレイの当選確率を、RT遊技よりも高く設定してもよい。この場合、RT遊技よりも非RT遊技の方が、遊技者にとって有利な遊技となる。
このように、RT遊技とは、狭義には、リプレイの当選確率を非RT遊技よりも高く設定したメイン遊技状態を意味し、広義には、リプレイの当選確率が非RT遊技とは異なるメイン遊技状態を意味する。
また、「AT(アシストタイム)遊技」とは、ストップスイッチ42の操作内容(押し順及び/又は操作タイミング)によって遊技者にとって有利となる遊技結果が表示される場合とされない場合とを設け、非AT遊技中は、遊技者にとって有利となる遊技結果が偶然でしか表示されないが、AT遊技中は、遊技者にとって有利となる遊技結果を表示させるためのストップスイッチ42の操作内容を報知することで、遊技者は、その報知に従ってストップスイッチ42を操作すれば、最も有利な遊技結果を得ることができる(たとえば、最も有利となる図柄の組合せを有効ラインに停止させることができる、あるいは当選した役を確実に有効ラインに停止させることができる)遊技をいう。
RT遊技中にAT遊技が実行されると、RT遊技かつAT遊技(ART遊技)となる。
次に、メイン制御手段50の具体的構成について説明する。
図1に示すように、メイン制御手段50は、以下の設定値変更手段60等を備える。
なお、本実施形態における以下の各手段は例示であり、メイン制御手段50は、本実施形態で示した手段に限定されるものではない。
設定値変更手段60は、遊技者にとっての有利度を定める設定値を変更・決定するためのものである。
本実施形態では、設定値として、設定1〜設定6の6段階を設けている。
そして、設定値が高くなるほど、役(特に特別役)の当選確率が高くなって、遊技者にとっての有利度が高くなるように設定している。
また、設定値が高くなるほど、AT遊技に移行する確率が高くなって、遊技者にとっての有利度が高くなるように設定している。
なお、AT遊技に移行する確率を高くすることに代えて、又はAT遊技に移行する確率を高くするとともに、たとえば、AT遊技中の遊技回数や払出し枚数を上乗せする確率を高くしたり、AT遊技を継続する確率を高くしてもよい。
また、設定値が高くなるほど、メダルの賭数(投入枚数)に対する獲得数(払出し枚数)の期待値が高くなって、遊技者にとっての有利度が高くなるようにしてもよい。
本実施形態では、フロントマスク部(前面扉)及び電源ユニットのスイッチカバーを開放した状態で、電源を一旦オフにした後に、設定キー挿入口に設定キーを差し込み、これを時計回りに90度回転させて設定キースイッチ45をオンにしてから、電源を再度オンにすると、設定値が変更可能となる設定変更モードになる。この場合、立ち上げ処理は行われない。
なお、設定キー挿入口に設定キーを差し込み、これを時計回りに90度回転させて設定キースイッチ45をオンにし、この状態で電源を一旦オフにした後に再度オンにしても良い。
設定変更モードでは、設定値変更手段60は、所定の表示部(たとえば、図示しない7セグメント表示器)に、現在の設定値を表示する。
また、設定値変更手段60は、設定変更スイッチ46が1回操作されるごとに、設定値の表示を、・・・→「1」→「2」→「3」→「4」→「5」→「6」→「1」→「2」→・・・と順次変化させる。
さらに、設定値変更手段60は、スタートスイッチ41がオンにされると、このとき表示部に表示していた数値で設定値を確定させるとともに、設定値を確定させたことを示す「0」を表示部に表示する。
そして、設定値変更手段60は、設定値を記憶するための設定値記憶手段60a(RAM等のメモリ)を備えており、確定させた設定値を設定値記憶手段60aに記憶する。
次に、設定キーを反時計回りに90度回転させて設定キースイッチ45をオフにすると、設定変更モードが終了して、変更後の設定値で立ち上げ処理が行われる。
なお、設定キースイッチ45をオフにした状態で電源をオンにすると、変更後の設定値で立ち上げ処理が行われるようにしてもよい。
このように、設定値を変更するときは、設定変更モードにしてから、設定変更スイッチ46を操作する。そして、所望の設定値を表示部に表示させた状態で、スタートスイッチ41をオンにして、設定値を確定させる。その後、設定キースイッチ45をオフにすると、設定変更モードが終了して、変更後の設定値で立ち上げ処理が行われる。
また、メイン制御手段50側では、設定変更モードが終了すると、設定値記憶手段60aに記憶された設定値を示す設定値コマンドを生成してサブ制御手段80に送信する。
そして、サブ制御手段80側では、受信した設定値コマンドに基づいて設定値を設定し、これに応じた確率でAT遊技を実行する。
役抽選手段61は、役(上述した特別役、小役及びリプレイ)の抽選を行うものである。役抽選手段61は、たとえば、役抽選用の乱数発生手段(ハードウェア乱数等)と、この乱数発生手段が発生する乱数を抽出する乱数抽出手段と、乱数抽出手段が抽出した乱数値に基づいて、役の当選の有無及び当選役を判定する判定手段とを備えている。
乱数発生手段は、所定の領域(たとえば10進法で0〜65535)の乱数を発生させる。乱数は、たとえば200n(ナノ)secで1カウントを行うカウンターが0〜65535の範囲を1サイクルとしてカウントし続ける乱数であり、スロットマシン10の電源が投入されている間は、乱数をカウントし続ける。
乱数抽出手段は、乱数発生手段によって発生した乱数を、所定の時、本実施形態では遊技者によりスタートスイッチ41が操作(オン)された時に抽出する。判定手段は、乱数抽出手段により抽出された乱数値を、後述する役抽選テーブル62と照合することにより、その乱数値が属する領域に対応する役を決定する。たとえば、抽出した乱数値が1BBの当選領域に属する場合は、1BBの当選と判定し、非当選領域に属する場合は、非当選と判定する。
役抽選テーブル62は、当選役(役の抽選結果)の種類と、各当選役の当選確率とを定めたものである。
ここで、役抽選テーブル62において、1つの当選領域に対して、複数個の役を割り当てることがある。そして、抽出した乱数値が、複数個の役を割り当てた当選領域に属するときは、複数個の役の重複当選と判定する。すなわち、複数個の役に当該遊技で同時に重複当選する。
本実施形態では、複数個の小役に重複当選するときと、複数個のリプレイに重複当選するときとを有するように設定している。
役抽選テーブル62は、メイン遊技状態ごとに設けられている。また、役抽選テーブル62は、それぞれ所定の範囲の抽選領域を有し、この抽選領域は、各役の当選領域及び非当選領域に分けられているとともに、抽選される役が、予め設定された当選確率となるように所定の割合に設定されている。
当選フラグ制御手段63は、役抽選手段61による役の抽選結果に基づいて、各役に対応する当選フラグ63aのオン/オフを制御するものである。
本実施形態では、特別役、小役、及びリプレイの各当選フラグ63aを備える。そして、役抽選手段61による役の抽選において当選したときは、対応する役の当選フラグ63aをオンにする(当選フラグ63aを立てる)。
また、当選フラグ制御手段63は、複数個の役に当該遊技で同時に重複当選したときは、対応する複数個の役の当選フラグ63aを同時にオンにする。
リール制御手段64は、リール31の回転開始命令を受信したとき、特に本実施形態ではスタートスイッチ41が操作されたとき(スタートスイッチ41が操作された旨の信号を受信したとき)に、すべて(3つ)のリール31の回転を開始するように制御する。
なお、前遊技でのリール31の回転開始時から、当該遊技でのスタートスイッチ41が操作された時までの時間が4.1秒を経過していないときは、スタートスイッチ41の操作により役の抽選は行われるものの、スタートスイッチ41が操作された瞬間(直後)にリール31の回転は開始せず、上記4.1秒を経過後にリール31の回転が開始する。このように、スタートスイッチ41の操作時からリール31の回転が開始されるまでの時間を「ウエイト時間」という。
さらに、リール制御手段64は、役抽選手段61により役の抽選が行われた後、当該遊技における当選フラグ63aのオン/オフを参照して当選フラグ63aのオン/オフに対応する停止位置決定テーブル65を選択するとともに、ストップスイッチ42が操作されたときに、ストップスイッチ42が操作されたときのタイミングに基づいて、そのストップスイッチ42に対応するリール31の停止位置を決定するとともに、モータ32を駆動制御して、その決定した位置にそのリール31を停止させるように制御する。
たとえば、リール制御手段64は、少なくとも1つの当選フラグ63aがオンである遊技では、リール31の停止制御の範囲内において、当選役(当選フラグ63aがオンになっている役)に対応する図柄の組合せを有効ラインに停止可能にリール31を停止制御するとともに、当選役以外の役(当選フラグ63aがオフになっている役)に対応する図柄の組合せを有効ラインに停止させないようにリール31を停止制御する。
ここで、「リール31の停止制御の範囲内」とは、ストップスイッチ42が操作された瞬間からリール31が実際に停止するまでの時間又はリール31の回転量(移動コマ(図柄)数)の範囲内を意味する。
本実施形態では、ストップスイッチ42が操作された瞬間からリール31を停止させるまでの時間が190ms以内に設定されている。これにより、本実施形態では、ストップスイッチ42が操作された瞬間の図柄からリール31が停止するまでの最大移動コマ数が4コマ(ストップスイッチ42が操作された瞬間の図柄を含めて5コマ)となる。
そして、ストップスイッチ42の操作を検知した瞬間に、リール31の停止制御の範囲内にある図柄のいずれかが所定の有効ラインに停止させるべき図柄であるときは、ストップスイッチ42が操作されたときに、その図柄が所定の有効ラインに停止するように制御される。
すなわち、役の当選時にストップスイッチ42が操作された瞬間に直ちにリール31を停止させると、当選した役に係るその図柄が所定の有効ラインに停止しないときには、リール31を停止させるまでの間に、リール31の停止制御の範囲内においてリール31を回転移動制御することで、当選した役に係る図柄をできる限り所定の有効ラインに停止させるように制御する(引込み停止制御)。
また逆に、ストップスイッチ42が操作された瞬間に直ちにリール31を停止させると、当選していない役に対応する図柄の組合せがいずれかの有効ラインに停止してしまうときは、リール31の停止時に、リール31の停止制御の範囲内においてリール31を回転移動制御することで、当選していない役に対応する図柄の組合せを有効ラインに停止させないように制御する(蹴飛ばし停止制御)。
さらに、リール制御手段64は、ストップスイッチ42の押し順(操作順番)を検知する押し順検知手段64aを備える。押し順検知手段64aは、遊技者によりストップスイッチ42が操作されたときに、左、中、及び右ストップスイッチ42のうち、いずれが操作されたかを検知する。
ストップスイッチ42が操作されると、そのストップスイッチ42が操作された旨の信号が押し順検知手段64aに入力される。この信号を判別することで、押し順検知手段64aは、どのストップスイッチ42が操作されたかを検知する。
ここで、本実施形態では、ストップスイッチ42の押し順は、左中右、左右中、中左右、中右左、右左中、及び右中左の6通りある。
そして、左中右の押し順を「順押し」と称し、左右中の押し順を「順挟み」と称し、右中左の押し順を「逆押し」と称し、右左中の押し順を「逆挟み」と称する。
また、左ストップスイッチ42が最初に操作される押し順(左中右、及び左右中)を「左第1停止」と称し、中ストップスイッチ42が最初に操作される押し順(中左右、及び中右左)を「中第1停止」と称し、右ストップスイッチ42が最初に操作される押し順(右左中、及び右中左)を「右第1停止」と称する。
さらに、左ストップスイッチ42以外が最初に操作される押し順(中左右、中右左、右左中、及び右中左)を「変則押し」と称する。
停止位置決定テーブル65は、当選フラグ63aのオン/オフの状態ごと、すなわち役抽選手段61による役の抽選結果ごとに対応して設けられており、ストップスイッチ42が操作された瞬間のリール31の位置に対する、リール31の停止位置を定めたものである。そして、各停止位置決定テーブル65は、たとえば、1番の図柄が上段(中段又は下段でも可)を通過する瞬間にストップスイッチ42が操作されたときは、何図柄だけ移動制御して、何番の図柄を上段に停止させるというように停止位置を事前に定めている。
いずれかの役の単独当選時に用いる停止位置決定テーブル65は、リール31の停止制御の範囲内において、当選した役に対応する図柄の組合せを有効ラインに停止させるとともに、当選した役に対応する図柄の組合せを有効ラインに停止させることができないときは、いずれの役に対応する図柄の組合せも有効ラインに停止させないように、リール31の停止位置を定めている。
なお、リール31がどの位置にある瞬間にストップスイッチ42が操作されても、リール31の停止制御の範囲内において、対象図柄を所望の有効ラインに停止させることができること(常に入賞させることができること)を、「引込み率(PB)=1」という。
これに対し、遊技者の目押しによらなければ、対象図柄を有効ラインに停止させることができないこと(必ずしも入賞させることができないこと)を、「PB≠1」という。
複数個のリプレイの重複当選時に用いる停止位置決定テーブル65は、たとえば、左又は中第1停止時にはリプレイA(PB=1)を常に入賞させ、右第1停止時にはリプレイB(PB=1)を常に入賞させるように、リール31の停止位置を定めている。
このように、複数個のリプレイの重複当選時には、ストップスイッチ42の押し順に応じて、入賞するリプレイの種類が異なる。
また、複数個のリプレイの重複当選時には、いずれのリプレイが入賞したときも、再遊技を行うことができる。
複数個の小役の重複当選時に用いる停止位置決定テーブル65は、たとえば、左第1停止時には小役A(PB=1、入賞時のメダルの払出しが9枚)を常に入賞させ、変則押し時にはリール31の停止制御の範囲内で小役B(PB≠1、入賞時のメダルの払出しが3枚)を入賞させるように、リール31の停止位置を定めている。
このように、複数個の小役の重複当選時には、ストップスイッチ42の押し順によって、有効ラインに引き込む小役の種類、引込み率、及び入賞時のメダルの払出し枚数が異なる。すなわち、ストップスイッチ42の操作に応じて、遊技者に対して付与する利益の大きさが異なる遊技結果を表示する。
なお、遊技者に対して付与する利益が大きい遊技結果が表示される(払出し枚数が多い役に入賞する)押し順を「正解押し順」といい、正解押し順以外の押し順を「不正解押し順」という。
複数個のリプレイの重複当選時については、たとえば、遊技者にとって有利な遊技状態に移行(昇格)するリプレイが入賞する押し順や、遊技者に対して特典(サブボーナス)を付与するリプレイが入賞する押し順を「正解押し順」といい、遊技者にとって不利な遊技状態に移行(転落)するリプレイが入賞する押し順を「不正解押し順」という。
また、正解押し順でストップスイッチ42を操作することを「押し順正解」又は「押し順に正解する」といい、不正解押し順でストップスイッチ42を操作することを「押し順不正解」という。
そして、リール制御手段64は、押し順正解時には、押し順不正解時よりも遊技者に対して付与する利益が大きい遊技結果が表示されるように、リール31を停止制御する。
また、すべての当選フラグ63aがオフであるときは、非当選テーブルが用いられる。
非当選テーブルは、すべての当選フラグ63aがオフであるときに用いられ、いずれの役に対応する図柄の組合せも有効ラインに停止しないように、リール31の停止時の図柄の組合せを定めている。
停止図柄判断手段66は、リール31の停止時に、有効ラインに停止したリール31の図柄の組合せが、いずれかの役に対応する図柄の組合せと一致するか否かを判断するものである。停止図柄判断手段66は、たとえばモータ32の停止時の角度やステップ数等を検知することにより、有効ライン上の図柄を判断する。
ただし、停止図柄判断手段66は、ストップスイッチ42が操作され、停止位置決定テーブル65を用いて停止位置が決定された時に、そのリール31が停止したか否かにかかわらず、停止図柄を判断することが可能である。
払出し手段67は、停止図柄判断手段66により、リール31の停止時に有効ラインに停止した図柄の組合せがいずれかの役に対応する図柄の組合せと一致すると判断され、その役の入賞となったときに、その入賞役に応じて所定枚数のメダルを遊技者に対して払い出すか、又はクレジットの加算等の処理を行うものである。また、リプレイの入賞時には、メダルを払い出すことなく、当該遊技で投入されたメダル枚数(3枚)を自動投入するように制御する。
特別遊技制御手段68は、特別遊技の開始、特別遊技中の遊技の進行、及び特別遊技の終了を制御するものである。
1BBに対応する図柄の組合せが有効ラインに停止したときは、1BBの入賞となり、特別遊技制御手段68は、次遊技から1BB遊技を開始するように制御する。
1BB遊技では、小役の当選確率が大幅に高くなる。
また、1BB遊技の終了条件は、1BB遊技中に払い出されたメダル枚数が所定枚数(たとえば300枚)以上になったことに設定している。
このため、特別遊技制御手段68は、1BB遊技では、メダル払出し枚数をカウントし続け、カウント値が上記値になったと判断したときは、当該遊技をもって1BB遊技を終了するように制御する。
同様に、RBに対応する図柄の組合せが有効ラインに停止したときは、RBの入賞となり、特別遊技制御手段68は、次遊技からRB遊技を開始するように制御する。
RB遊技では、小役の当選確率が大幅に高くなる。
また、RB遊技の終了条件は、RB遊技中に所定遊技回数(たとえば8遊技)を消化したことに設定している。
このため、特別遊技制御手段68は、RB遊技では、消化遊技回数をカウントし続け、カウント値が上記値になったと判断したときは、当該遊技をもってRB遊技を終了するように制御する。
また、本実施形態では、メイン遊技状態として、通常遊技及び特別遊技を備え、通常遊技として、RT遊技及び非RT遊技を備え、特別遊技として、1BB遊技及びRB遊技を備えている。
そして、メイン遊技状態制御手段69は、所定の停止出目の表示、所定のリプレイの入賞、所定遊技回数の消化、特別役の当選、特別役の入賞、特別遊技中のメダルの払出し枚数又は遊技回数等に基づいて、メイン遊技状態を移行させるように制御する。
メイン制御手段50は、フリーズ制御手段70を備える。
フリーズ制御手段70は、操作スイッチの操作(メダル投入口43から投入されたメダルの受付けを含む)を、所定時間受け付けないフリーズの実行及び終了を制御するとともに、フリーズ中の擬似遊技の実行を制御するものである。すなわち、フリーズ制御手段70は、擬似遊技中の制御を含むものである。
ここで、「フリーズ(フリーズ演出、又はフリーズ動作ともいう。)」とは、一般的に、遊技機(スロットマシン10)の操作スイッチの機能を一時停止状態にすること(又はそのように制御している期間)をいう。
さらに、「操作スイッチの機能を一時停止状態にする」とは、「少なくとも1つの操作スイッチの機能が遊技を進行して遊技結果を得るためのものとして有効になっていないこと」、あるいは「操作スイッチが操作されたときにその操作の検知処理、又はその操作に基づく処理を所定時間開始しないこと、すなわち、その操作に対応する処理を所定時間遅延させて(所定時間の経過後に)行うこと」等を指す。
「遊技を進行する」とは、ベットスイッチ40を操作することによってメダルを投入する、スタートスイッチ41を操作することによって役の抽選を行うとともにリール31の回転を開始する、ストップスイッチ42を操作することによって回転中のリール31を停止させる、という遊技動作を、遊技者の意思によって進行することを指す。
したがって、ベットスイッチ40、スタートスイッチ41、及びストップスイッチ42の操作は、遊技を進行するために必要な操作である。
「遊技結果」とは、全リール31の停止時における停止出目、有効ラインに停止した図柄の組合せ(役の入賞の有無、及び入賞となった役の種類)を指す。
遊技結果は、役の抽選結果、ストップスイッチ42の操作、及びリール31の停止時の図柄の組合せにより定まるものであるので、役の抽選結果を得るためのベットスイッチ40及びスタートスイッチ41の操作、並びにリール31の停止時の図柄の組合せを得るためのストップスイッチ42の操作は、遊技結果を得るために必要な操作である。
したがって、フリーズの態様としては、たとえば、
a)メダル投入口43から投入された遊技媒体の受付け、又は予めクレジットされた遊技媒体の投入(賭け)枚数を定めるためのベットスイッチ40の操作を一時停止状態にすること、
b)遊技を開始するためのスタートスイッチ41の操作を一時停止状態にすること、
c)ストップスイッチ42の操作(リール31の停止操作)を一時停止状態にすること
等が挙げられる。
また、操作スイッチの機能を一時停止状態にする態様としては、遊技者の操作に基づく信号(例えば、遊技媒体の投入を検知するセンサからの信号、ベットスイッチ40、スタートスイッチ41又はストップスイッチ42の操作に基づき操作スイッチから送信される信号)の受付けを所定期間行わないことが挙げられる。この場合、所定期間以内に遊技者の操作に基づいて送信された信号を受け付けたときは、受け付けた信号を無効にする制御処理を行うことや、所定期間以内に遊技者の操作に基づいて送信された信号を検知したときであっても受付け処理自体を行わないことが挙げられる。
さらにまた、所定期間以内に遊技者の操作に基づいて送信された信号を受け付けたときは、遊技者の操作に基づく信号の受付けは行うが、受け付けた信号に基づいて実施する操作スイッチの制御処理を所定期間実行せずに、所定期間経過後に受け付けた信号に基づいた制御処理を開始させることが挙げられる。
さらに、スタートスイッチ41のフリーズに関しては、スタートスイッチ41を操作しても、所定期間、スタートスイッチ41の操作受付けに基づくリール31の回転を開始させないことや、所定期間、役抽選を開始しないことが挙げられる。
また、フリーズの終了条件としては、予め定めた所定時間が経過することが挙げられるが、所定時間の経過前であっても、メイン制御手段50に入力される各種操作信号によって途中でフリーズをキャンセルすることも考えられる。
この場合、単純に、スタートスイッチ41の操作入力を受け付けることでフリーズをキャンセルすることが可能であり、あるいは、所定の操作手順(例えば、「スタートスイッチ41を5回操作する」、「ストップスイッチ42を、中、右、左の順で操作する」、「所定のタイミングに合わせてベットスイッチ40を操作する」等)を検知したことを条件にフリーズをキャンセルすることも可能である。
本実施形態では、スタートスイッチ41が操作されたときに、役抽選手段61は、役の抽選を行う。次に、フリーズ制御手段70は、フリーズ及び擬似遊技を実行するか否かの抽選を行う。フリーズ及び擬似遊技の抽選は、役の抽選結果とは無関係に実行してもよいが、本実施形態では、当選確率が他の小役より低く設定されているレア小役の当選時に、フリーズ及び擬似遊技の抽選を行う。
ここで、「一遊技」、及び遊技の種類について説明する。
まず、「一遊技」とは、スタートスイッチ41の操作時から、全リール31が停止し(遊技結果を表示し)、有効ラインに停止した図柄の組合せがいずれかの役に対応する図柄の組合せであるときは、その図柄の組合せに対応する払出し等が終了するまでを指す。
なお、リプレイの入賞時は、リプレイが入賞したと判断された時までが一遊技であり、その一遊技の後に、リプレイの入賞に基づくメダルが自動投入される。メダルが自動投入された時や、メダルの自動投入時からスタートスイッチ41が操作されるまでの間を次遊技に含めるか否かは、任意である。
また、前遊技でリプレイが入賞しなかった場合において、ベットスイッチ40の操作時からスタートスイッチ41を操作するまでの間は、「一遊技」に含めてもよく、含めなくてもよい。
また、遊技の種類としては、本遊技と擬似遊技とを有する。
「本遊技」とは、操作スイッチの本来の機能(ベットスイッチ40は遊技を開始するためにメダルを投入する機能、スタートスイッチ41は遊技を開始するためにリール31の回転を開始する機能、ストップスイッチ42は、回転中のリール31を役の抽選結果に基づいて最大移動コマ数の範囲内において停止させる機能)が遊技を進行して遊技結果を得るためのものとして有効になっている遊技を指す。
本遊技では、ベットスイッチ40が操作されたときにメダルが投入され、スタートスイッチ41が操作されたときにリール31の回転を開始し、ストップスイッチ42が操作されたときに、後述の役抽選手段61による役の抽選結果に基づいてリール31を停止させ、リール31の停止時における図柄の組合せによってその遊技における遊技結果を表示する。
具体的には、ベットスイッチ40は、メダルを投入するときに遊技者が操作するスイッチであり、スタートスイッチ41は、リール31の回転を開始するときに遊技者が操作するスイッチであり、ストップスイッチ42は、回転中のリール31を停止させるときに遊技者が操作するスイッチである。遊技結果は、リール31の停止時における(有効ライン上に停止した)図柄の組合せによって得られるものであり、リール31を停止させるためには、ストップスイッチ42の操作によってリール31を停止する必要がある。
また、リール31を停止させるためには、その前提としてリール31の回転を開始させる必要があるので、スタートスイッチ41の操作は、遊技結果を得るために必要な遊技者の操作である。さらにまた、ベットスイッチ40の操作は、前遊技でリプレイが入賞した場合を除き、遊技結果を得る前提として、遊技を開始するためにメダル(遊技媒体)を投入するときに必要な操作である。
一方、ベットスイッチ40を操作してメダルを投入すること、スタートスイッチ41を操作してリール31の回転を開始すること、ストップスイッチ42を操作して回転中のリール31を停止させることは、いずれも、本遊技を進行する上で必要な操作である。
したがって、上記操作は、いずれも、本遊技を進行して、遊技結果を得るために必要な操作である。
よって、ベットスイッチ40を操作してもメダルが投入されない、スタートスイッチ41を操作してもリール31の回転が開始しない、ストップスイッチ42を操作しても、リール31が遊技結果を表示しない(リール31が停止しない)ことは、操作スイッチの機能が本遊技を進行して本遊技での遊技結果を得るためのものとして有効になっていないフリーズ中を意味する。
そして、「擬似遊技」とは、このフリーズ中に実行される遊技であって、本遊技と異なり、少なくとも1つの操作スイッチについて、その機能が、本遊技を進行して遊技結果を得るためのものとして有効になっていない遊技を指す。
擬似遊技は、常に、フリーズ中に実行する。したがって、擬似遊技中は常にフリーズ中である。これに対し、フリーズ中は常に擬似遊技中であるとは限らない。フリーズ中の一部の期間が擬似遊技である場合と、「フリーズ中=擬似遊技中」である場合とが挙げられる。
一遊技で擬似遊技を実行するときは、本遊技の遊技結果を得る前に実行し、擬似遊技の終了後に、遊技結果を得るための本遊技を再開する。
より具体的には、スタートスイッチ41が操作された瞬間に役抽選手段61により役の抽選を行うが、この時点では未だ本遊技である。役抽選の後、(本遊技中に)擬似遊技を実行するか否かを決定し、擬似遊技を実行することに決定したときは、この瞬間に(この時点で)本遊技を中断し、擬似遊技を開始する。なお、スタートスイッチ41が操作された瞬間(本遊技の開始時)から、役の抽選を行い、擬似遊技を実行することに決定し、擬似遊技を開始するためのリール31の回転を開始するまでの間は、数ms〜数十ms程度である。
また、前遊技までに擬似遊技を実行することに決定しているときも同様に、スタートスイッチ41の操作に伴う役の抽選、及び当該遊技で擬似遊技を実行するか否かを決定する場合の当該決定時までは本遊技であり、その後、本遊技を中断するとともに、前遊技までの決定に基づき、擬似遊技を開始する。
そして、リール31の回転を開始する。したがって、擬似遊技を実行するときのリール31の回転開始時は、擬似遊技中である。
また、擬似遊技では、たとえば、リール31を逆回転させることができる。
さらに、擬似遊技では、ストップスイッチ42が操作された瞬間からリール31を停止させるまでの時間を190ms以内に設定するという制限はない。このため、擬似遊技では、たとえば、3つ(左、中、右)のリール31の回転中に、先に左ストップスイッチ42が操作され、後で中ストップスイッチ42が操作されても、先に中リール31を停止させ、後で左リール31を停止させることができる。
また、フリーズ制御手段70は、擬似遊技の終了条件を満たすと、擬似遊技を終了するとともにフリーズを終了する。その後、メイン制御手段50は、本遊技を開始し、リール制御手段64は、本遊技として、3つ(左、中、右)のリール31の回転を開始する。そして、3つのリール31の回転が定速状態に到達すると、メイン制御手段50は、操作スイッチ(左、中、右ストップスイッチ42)の操作を有効にする。
メイン側エラー検知手段71は、メイン制御手段50側においてエラーを検知するものである。
本明細書において、「異常」とは、正常ではないこと、通常とは違っている(異なっている)ことを意味し、「不正」とは、正しくないこと、正義に反することを意味する。また、「エラー」とは、異常と不正との双方を含む意味で使用する。
メイン側エラー検知手段71は、ドア開閉検知センサ48のオン/オフの状態によって、フロントマスク部の開閉を検知する。具体的には、ドア開閉検知センサ48がオンのときは、フロントマスク部が開放された状態であると検知し、ドア開閉検知センサ48がオフのときは、フロントマスク部が閉じた状態であると検知する。
また、メイン側エラー検知手段71は、カバー開閉検知センサ49のオン/オフの状態によって、スイッチカバーの開閉を検知する。具体的には、カバー開閉検知センサ49がオンのときは、スイッチカバーが開放された状態であると検知し、カバー開閉検知センサ49がオフのときは、スイッチカバーが閉じた状態であると検知する。
また、メイン側エラー検知手段71は、メダル投入口43からのメダルの投入操作が無効のときに、第1投入検知センサ43b及び/又は第2投入検知センサ43cが遮光されると、エラー(投入センサ異常)を検知したと判断する。
さらにまた、メイン側エラー検知手段71は、第2投入検知センサ43c、第1投入検知センサ43bの順にメダルの通過を検知したときは、エラー(メダルの逆流)が発生したと判断する。
さらに、メイン側エラー検知手段71は、第1投入検知センサ43b及び/又は第2投入検知センサ43cの遮光が一定時間以上継続したときは、エラー(メダル詰まり)を検知したと判断する。以下、第1投入検知センサ43b及び/又は第2投入検知センサ43cにより検知したメダル詰まりを「投入メダル詰まり」という。
また、メイン側エラー検知手段71は、メダルの払出し処理を行っていない(払出し駆動部33bを駆動させていない)ときに、払出し検知センサ44が遮光されると、エラー(払出しセンサ異常)を検知したと判断する。
さらにまた、メイン側エラー検知手段71は、払出し検知センサ44の遮光が一定時間以上継続したときは、エラー(メダル詰まり)を検知したと判断する。以下、払出し検知センサ44により検知したメダル詰まりを「払出しメダル詰まり」という。
さらに、メイン側エラー検知手段71は、払出し駆動部33bが駆動しているにもかかわらず、メダルが払い出されたことを払出し検知センサ44が検知しないときは、エラー(ホッパー33a内のメダルが無くなった)が発生したと判断する。以下、ホッパー33a内のメダルが無くなることを「メダル切れ」という。
さらに、エラー解除手段72は、スロットマシン10の電源を一旦オフにした後に再度オンにすること、又はリセットスイッチ47を操作することを解除操作とし、エラーが検知された場合には、解除操作が行われたことを条件に、エラーを解除する。
また、本実施形態では、メイン制御手段50側で異常や不正を検知するメイン側エラー検知手段71と、サブ制御手段80側で異常や不正を検知するサブ側エラー検知手段86とを備えている。そして、メイン側エラー検知手段71によりエラーが検知されたときも、サブ側エラー検知手段86によりエラーが検知されたときも、エラー解除手段72によってエラーを解除する。なお、サブ側エラー検知手段86については後述する。
図1に示すように、メイン制御手段50は、コマンドを生成するコマンド生成手段73と、生成したコマンドを記憶するバッファ領域74と、バッファ領域74に記憶されているコマンドをサブ制御手段80に送信するコマンド送信手段75とを備え、サブ制御手段80は、送信されたコマンドを受信するコマンド受信手段84を備えている。
そして、コマンド生成手段73、バッファ領域74、コマンド送信手段75、及びコマンド受信手段84によって、メイン制御手段50からサブ制御手段80に種々の情報を伝達するようにしている。
ここで、コマンド生成手段73は、メイン処理又は割込み処理においてコマンドを生成することに決定したときは、決定に応じたコマンドを生成する。
また、バッファ領域74は、コマンド生成手段73により生成されたコマンドを、生成された順に記憶していく。
さらに、コマンド送信手段75は、バッファ領域74に記憶されているコマンドを、記憶された順にサブ制御手段80に送信する。
このように、生成したコマンドを生成した順にバッファ領域74に記憶するとともに、バッファ領域74に記憶されているコマンドを記憶された順にサブ制御手段80に送信する。このため、生成したコマンドを生成順にサブ制御手段80に送信することになる。
また、コマンド送信手段75は、バッファ領域74に記憶されているコマンドを、シリアル通信でサブ制御手段80に送信する。このため、メイン制御手段50からサブ制御手段80へのコマンドの送信を確実にするために、コマンド送信手段75は、バッファ領域74に記憶されている同一のコマンドを、サブ制御手段80に2回送信する。
具体的には、コマンド送信手段75は、タイマー割込みが1回行われるごとに、バッファ領域74に記憶されているコマンドをサブ制御手段80に1回送信する。すなわち、コマンド送信手段75は、1割込み(2.235ms)につき1回、コマンドを送信する。
また、コマンド送信手段75は、バッファ領域74に記憶されている同一のコマンドを2回送信したときは、そのコマンドの送信を完了したと判断して、そのコマンドをバッファ領域74から消去する。このため、コマンド送信手段75は、バッファ領域74に記憶されている1個のコマンドを送信するのに、2割込み(4.47ms)を要する。よって、2割込みごとに1個のコマンドがバッファ領域74から消去されることになる。
さらに、コマンド受信手段84は、50ms以内に同一のコマンドを2回受信したときは、そのコマンドを正しく受信したと判断する。この場合、サブ制御手段80側では、そのコマンドに応じた処理を行うように制御する。
これに対し、コマンド受信手段84は、50ms以内に同一のコマンドを2回受信しなかったときは、そのコマンドを正しく受信しなかったと判断する。この場合、サブ制御手段80側では、そのコマンドに応じた処理を行わないように制御する。
また、バッファ領域74は、メイン制御基板のRAM上に設けられており、最大で32個のコマンドを記憶可能とされている。
具体的には、バッファ領域74は、コマンドの記憶領域として、第1記憶領域から第32記憶領域までの32個の記憶領域を有している。そして、コマンド生成手段73によりコマンドが生成されると、バッファ領域74は、生成されたコマンドを、第1記憶領域から順に記憶させていき、第32記憶領域の次は、第1記憶領域が空いていることを条件に、再度、第1記憶領域に記憶させるように制御する。
また、コマンド送信手段75は、たとえば、バッファ領域74の第1記憶領域に記憶されているコマンドを2回送信したときは、そのコマンドをバッファ領域74の第1記憶領域から消去する。このとき、第2記憶領域に記憶されているコマンドがあったとしても、これを第1記憶領域に移動させることはない。すなわち、第1記憶領域から第32記憶領域に記憶されているコマンドを移動させたり書き換えることはない。このため、第1記憶領域から第32記憶領域までの全ての記憶領域を順次繰り返し使用することになる。
ここで、コマンド生成手段73が生成するコマンドとして、たとえば、設定1〜設定6の設定値を示す設定値コマンド、メイン遊技状態を示す遊技状態コマンド1〜3、停止したリール31を示す停止リールコマンド、全リール31の停止時の図柄の組合せを示す停止図柄コマンド、エラーが発生したこと及び発生したエラーの種類を示すエラー表示コマンド、メイン制御手段50の入力側に接続された各種センサのオン/オフの状態等を示す第1状態コマンド、メイン制御手段50の入力側に接続された各種スイッチの操作の有効/無効の状態等を示す第2状態コマンド、メイン制御手段50の入力側に接続された各種スイッチのオン/オフの状態等を示す第3状態コマンド等が挙げられる。
そして、これらのうち、設定値コマンド、遊技状態コマンド1〜3、停止リールコマンド、停止図柄コマンド、及びエラー表示コマンドについては、メイン処理において生成することに決定し、また、第1状態コマンド、第2状態コマンド、及び第3状態コマンドについては、割込み処理において生成することに決定する。
また、メイン処理の冒頭部分には、コマンド集中区間が設けられており、このコマンド集中区間において、設定値コマンド及び遊技状態コマンド1〜3を含めて、遊技が行われるごとにメイン制御手段50からサブ制御手段80に送信する複数個のコマンドを生成することに決定する。そして、コマンド生成手段73は、このコマンド集中区間において、設定値コマンド及び遊技状態コマンド1〜3を含む複数個のコマンドを生成する。
さらに、コマンド集中区間の経過後に、メイン処理においてコマンドを生成するか否かを決定することなくバッファ領域74に記憶されているコマンドを送信するための待ち時間を有している。そして、この待ち時間により、バッファ領域74がコマンドで溢れないようにしている。
具体的には、コマンド集中区間の経過後に、32割込み(71.52ms)の待ち時間を設けており、その間、メイン処理では、コマンドの生成を決定しない。
そして、コマンド送信手段75は、2割込み(4.47ms)で1個のコマンドを送信することから、32割込み(71.52ms)の待ち時間の間に、最大で16個のコマンドを送信することが可能である。
また、本実施形態では、メイン処理中に、メイン側エラー検知手段71によりエラーを検知したか否かを判断するとともに、割込み処理中に、メイン処理とは別個に、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
さらにまた、割込み処理では、メイン処理の待ち時間中であるか否かにかかわらず、コマンドを生成するか否かを決定する。
さらに、第1状態コマンド及び第2状態コマンドについては、割込み処理において、第1割込みカウンタ51のカウント値が「7」になるごと(8割込みごと)に、これらに含む情報に変化があったか否かを判断し、いずれかに変化があったと判断したときは、第1状態コマンド及び第2状態コマンドの双方を生成することに決定する。
ここで、コマンド送信手段75は、1個のコマンドを送信するのに2割込み(4.47ms)を要する。
また、メイン制御手段50の入力側に接続された各種スイッチは、通常、人が操作すると、オフの状態からオンの状態を経てオフの状態に戻るまでに、少なくとも25msを要する。メイン制御手段50の入力側に接続された各種センサについても同様に、通常、検知対象物を人が操作すると、オフの状態からオンの状態を経てオフの状態に戻るまでに、少なくとも25msを要する。
このため、割込み処理では、8割込み(17.88ms)ごとに、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かを判断し、変化があったと判断したときは、コマンドを生成することに決定する。
これにより、メイン制御手段50の入力側に接続された各種のセンサやスイッチのオン/オフの状態に変化があったことを検知し損なうことがないようにしつつ、コマンド送信周期よりもコマンド生成周期の方を長くして、バッファ領域74がコマンドで溢れないようにしている。
また、第1状態コマンドに含む情報に変化はないが、第2状態コマンドに含む情報に変化があったときも、第2状態コマンドに含む情報に変化はないが、第1状態コマンドに含む情報に変化があったときも、いずれも、第1状態コマンド及び第2状態コマンドの双方を生成することに決定する。
具体的には、たとえば、ベットスイッチ40の操作が有効の状態か又は無効の状態かを判断し、その結果が前回(8割込み前)の判断結果と異なったとする。この場合、第1状態コマンド及び第2状態コマンドに含む情報のうち、ベットスイッチ40の操作の有効/無効以外の情報についての判断結果にかかわらず、第1状態コマンド及び第2状態コマンドの双方を生成することに決定する。
このように、割込み処理において、第1状態コマンド及び第2状態コマンドに含む情報のいずれかに変化があったと判断したときは、第1状態コマンド及び第2状態コマンドの双方を生成することに決定する。この場合、コマンド生成手段73は、第1状態コマンド、第2状態コマンドの順に、2つのコマンドを生成する。
また、コマンド生成手段73は、第1状態コマンド又は第2状態コマンドのいずれか一方のみを生成することはなく、常に、第1状態コマンド、第2状態コマンドの順に、2つのコマンドを1つのセットとして生成する。
これに対し、割込み処理において、第1状態コマンド及び第2状態コマンドに含む情報のいずれにも変化がなかったと判断したときは、第1状態コマンド及び第2状態コマンドのいずれも生成しないことに決定する。この場合、コマンド生成手段73は、第1状態コマンド及び第2状態コマンドのいずれも生成しない。
また、第3状態コマンドについては、割込み処理において、第2割込みカウンタ52のカウント値が「9」になるごと(10割込みごと)に、これに含む情報に変化があったか否かを判断し、変化があったと判断したときは、第3状態コマンドを生成することに決定する。
上述したように、コマンド送信手段75は、1個のコマンドを送信するのに2割込み(4.47ms)を要し、また、メイン制御手段50の入力側に接続された各種のセンサやスイッチは、オフの状態からオンの状態を経てオフの状態に戻るまでに、少なくとも25msを要する。
さらにまた、本実施形態では、第1状態コマンド及び第2状態コマンドに含む情報の方が、第3状態コマンドに含む情報よりも、スロットマシン10を制御する上で重要度が高いものとなっている。
このため、割込み処理では、10割込み(22.35ms)ごとに、第3状態コマンドに含む情報に変化があったか否かを判断し、変化があったと判断したときは、第3状態コマンドを生成することに決定する。
これにより、第1状態コマンド及び第2状態コマンドの生成を優先しつつ、かつメイン制御手段50の入力側に接続された各種のセンサやスイッチのオン/オフの状態に変化があったことを検知し損なうことがないようにしつつ、コマンド送信周期よりもコマンド生成周期の方を長くして、バッファ領域74がコマンドで溢れないようにしている。
具体的には、たとえば、ベットスイッチ40がオンの状態か又はオフの状態かを判断し、その結果が前回(10割込み前)の判断結果と異なったとする。この場合、第3状態コマンドに含む情報のうち、ベットスイッチ40のオン/オフ以外の情報についての判断結果にかかわらず、第3状態コマンドを生成することに決定する。
このように、割込み処理において、第3状態コマンドに含む情報に変化があったと判断したときは、第3状態コマンドを生成することに決定する。そして、コマンド生成手段73は、第3状態コマンドを生成する。
また、本実施形態では、コマンド生成手段73が生成する各コマンドは、2バイト(16ビット)の情報で構成されており、上位1バイト(8ビット)はコマンドの種類を示し、下位1バイト(8ビット)は各種センサやスイッチのオン/オフの状態等コマンドの内容を示す。
さらにまた、本実施形態では、各コマンドの上位1バイトの7ビット目は、常に「1」に設定し、各コマンドの下位1バイトの7ビット目は、常に「0」に設定している。これにより、メイン制御手段50からサブ制御手段80にシリアル通信でコマンドを送信しても、各コマンドの上位1バイトと下位1バイトとの区別が確実につくようにしている。
また、第1状態コマンドの上位1バイトは、2進数で「10011010」(16進数で「9A」)に設定されている。
さらにまた、第1状態コマンドの下位1バイトについて、0ビット目はドア開閉検知センサ48のオン/オフの状態を示し、1ビット目はカバー開閉検知センサ49のオン/オフの状態を示し、2ビット目は設定キースイッチ45のオン/オフの状態を示し、3ビット目は設定変更スイッチ46(リセットスイッチ47と兼用)のオン/オフの状態を示す。4〜6ビット目もそれぞれ所定のセンサやスイッチのオン/オフの状態等を示す。7ビット目は、上位1バイトとの区別のため、常に「0」に設定される。
さらに、第1状態コマンドの下位1バイトの0ビット目が「1」のときは、ドア開閉検知センサ48がオンの状態(フロントマスク部が開放された状態)であることを示し、「0」のときはオフの状態(フロントマスク部が閉じた状態)であることを示す。
また、第1状態コマンドの下位1バイトの1ビット目が「1」のときは、カバー開閉検知センサ49がオンの状態(スイッチカバーが開放された状態)であることを示し、「0」のときはオフの状態(スイッチカバーが閉じた状態)であることを示す。
さらにまた、第1状態コマンドの下位1バイトの2ビット目が「1」のときは、設定キースイッチ45がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
さらに、第1状態コマンドの下位1バイトの3ビット目が「1」のときは、設定変更スイッチ46(リセットスイッチ47と兼用)がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
また、第2状態コマンドの上位1バイトは、2進数で「10011011」(16進数で「9B」)に設定されている。
さらにまた、第2状態コマンドの下位1バイトについて、0ビット目はベットスイッチ40の操作の有効/無効の状態を示す。1ビット目は左ストップスイッチ42の操作の有効/無効の状態を示し、2ビット目は中ストップスイッチ42の操作の有効/無効の状態を示し、3ビット目は右ストップスイッチ42の操作の有効/無効の状態を示す。4ビット目は投入センサ異常が検知されたか否かを示し、5ビット目は払出しセンサ異常が検知されたか否かを示し、6ビット目は投入メダル詰まりが検知されたか否かを示す。7ビット目は、上位1バイトとの区別のため、常に「0」に設定される。
さらに、第2状態コマンドの下位1バイトの0ビット目が「1」のときは、ベットスイッチ40の操作が有効の状態であることを示し、「0」のときは無効の状態であることを示す。
また、第2状態コマンドの下位1バイトの1ビット目が「1」のときは、左ストップスイッチ42の操作が有効の状態であることを示し、「0」のときは無効の状態であることを示す。
さらにまた、第2状態コマンドの下位1バイトの2ビット目が「1」のときは、中ストップスイッチ42の操作が有効の状態であることを示し、「0」のときは無効の状態であることを示す。
さらに、第2状態コマンドの下位1バイトの3ビット目が「1」のときは、右ストップスイッチ42の操作が有効の状態であることを示し、「0」のときは無効の状態であることを示す。
また、第2状態コマンドの下位1バイトの4ビット目が「1」のときは、投入センサ異常が検知されたことを示し、「0」のときは検知されていないことを示す。
さらにまた、第2状態コマンドの下位1バイトの5ビット目が「1」のときは、払出しセンサ異常が検知されたことを示し、「0」のときは検知されていないことを示す。
さらに、第2状態コマンドの下位1バイトの6ビット目が「1」のときは、投入メダル詰まりが検知されたことを示し、「0」のときは検知されていないことを示す。
たとえば、ベットスイッチ40の操作が無効の状態であり、かつ3つ(左、中、右)のストップスイッチ42の操作が有効の状態であり、かつ投入センサ異常、払出しセンサ異常、及び投入メダル詰まりのいずれも検知されていないとする。
この場合、第2状態コマンドは、2進数で「1001101100001110」、16進数で「9B0E」となる。
また、第3状態コマンドの上位1バイトは、2進数で「10011100」又は「10011101」(16進数で「9C」又は「9D」)に設定されている。
さらにまた、第3状態コマンドの下位1バイトについて、0ビット目はベットスイッチ40のオン/オフの状態を示し、1ビット目はスタートスイッチ41のオン/オフの状態を示す。2ビット目は左ストップスイッチ42のオン/オフの状態を示し、3ビット目は中ストップスイッチ42のオン/オフの状態を示し、4ビット目は右ストップスイッチ42のオン/オフの状態を示す。5〜6ビット目もそれぞれ所定のスイッチのオン/オフの状態を示す。7ビット目は、上位1バイトとの区別のため、常に「0」に設定される。
さらに、第3状態コマンドの下位1バイトの0ビット目が「1」のときは、ベットスイッチ40がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
また、第3状態コマンドの下位1バイトの1ビット目が「1」のときは、スタートスイッチ41がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
さらにまた、第3状態コマンドの下位1バイトの2ビット目が「1」のときは、左ストップスイッチ42がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
さらに、第3状態コマンドの下位1バイトの3ビット目が「1」のときは、中ストップスイッチ42がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
また、第3状態コマンドの下位1バイトの4ビット目が「1」のときは、右ストップスイッチ42がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
ここで、コマンド送信手段75は、バッファ領域74に記憶されている同一のコマンドを、サブ制御手段80に2回送信する。また、コマンド受信手段84は、50ms以内に同一のコマンドを2回受信したときは、そのコマンドを正しく受信したと判断し、50ms以内に同一のコマンドを2回受信しなかったときは、そのコマンドを正しく受信しなかったと判断する。
またここで、コマンド生成手段73は、常に、第1状態コマンド及び第2状態コマンドを1セットとして生成する。そして、コマンド送信手段75は、常に、第1状態コマンドを2回送信した後に、第2状態コマンドを2回送信する。
このため、たとえば、第1状態コマンドの送信中にコマンドを構成するビットがノイズで壊れ、コマンド受信手段84が、第1状態コマンドを1回しか受信しなかったとする。この場合、コマンド受信手段84は、第2状態コマンドを受信した時点で、第1状態コマンドの受信に失敗したことを判断できる。
これに対し、コマンド生成手段73は、第3状態コマンドについては、他のコマンドとセットで生成することはない。
このため、たとえば、コマンド生成手段73が、第3状態コマンドを2回連続して生成し、コマンド送信手段75が、これらをそれぞれ2回ずつ送信したとする。そして、先の第3状態コマンドが送信中に壊れ、コマンド受信手段84が、先の第3状態コマンドを1回しか受信しなかったとする。この場合、先の第3状態コマンドの上位1バイトと、後の第3状態コマンドの上位1バイトとが同一であると、コマンド受信手段84は、先の第3状態コマンドの受信に失敗したことを、後の第3状態コマンドを受信した時点で判断することができない。
そこで、本実施形態では、第3状態コマンドの上位1バイトとして、2進数で「10011100」(16進数で「9C」)と、2進数で「10011101」(16進数で「9D」)との2種類を有し、コマンド生成手段73は、第3状態コマンドを生成するごとに、2種類の上位1バイトを交互に切り替える。
たとえば、コマンド生成手段73は、前回、2進数で「10011100********」(16進数で「9C##」)という第3状態コマンドを生成した場合、今回は、2進数で「10011101********」(16進数で「9D##」)という第3状態コマンドを生成し、次回は再び、2進数で「10011100********」(16進数で「9C##」)という第3状態コマンドを生成する。
なお、「*」は「0」又は「1」の任意の値を、「#」は「0」〜「F」の任意の値を、それぞれ意味する。
これにより、コマンド生成手段73が、第3状態コマンドを2回連続して生成し、コマンド送信手段75が、これらをそれぞれ2回ずつ送信した場合において、コマンド受信手段84が、先の第3状態コマンドを1回しか受信しなかったときに、先の第3状態コマンドの受信に失敗したことを、後の第3状態コマンドを受信した時点で判断することができる。
また、エラー表示コマンドの上位1バイトは、2進数で「10011110」(16進数で「9E」)に設定されている。
さらにまた、エラー表示コマンドの下位1バイトには、投入センサ異常、投入メダル詰まり、メダルの逆流、払出しセンサ異常、払出しメダル詰まり、又はメダル切れ等のエラーを検知した旨の情報を含むように設定されている。
上述したように、メイン制御手段50は、メイン処理を実行するとともに、これと並行して割込み処理を実行する。
また、メイン処理において、メイン側エラー検知手段71によりエラーを検知したか否かを判断するとともに、複数種類のエラーのうち特定エラー(投入センサ異常、払出しセンサ異常、又は投入メダル詰まり)については、割込み処理において、メイン処理とは別個に、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
なお、割込み処理においてエラーを検知したか否かを判断する場合であっても、エラーの検知に対応した処理はメイン処理において実行する。
ここで、メイン処理では、待ち時間中又はリール31の回転中は、メイン側エラー検知手段71によりエラーを検知したか否かを判断せず、待ち時間中又はリール31の回転中以外は、常時、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
そして、メイン処理において、メイン側エラー検知手段71によりエラーを検知したと判断したときは、エラーの検知に対応した処理を実行するとともに、エラー表示コマンドを生成することに決定する。具体的には、投入センサ異常を検知したと判断したときは、遊技の進行を停止し、かつ投入センサ異常に対応するエラーコードを7セグメント表示器に表示し、かつ投入センサ異常を検知した旨の情報を含むエラー表示コマンドを生成することに決定する。
これに対し、割込み処理においては、待ち時間中又はリール31の回転中であるか否かにかかわらず、第1割込みカウンタ51のカウント値が「7」になるごと(8割込みごと)に、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
そして、割込み処理において、メイン側エラー検知手段71によりエラーを検知したと判断したときは、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定する。具体的には、投入センサ異常を検知したと判断したときは、投入センサ異常を検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定する。
このため、メイン側エラー検知手段71によるエラー検知のタイミングと、第1割込みカウンタ51のカウント値が「7」になるタイミングとの関係で、特定エラーについては、先にエラー表示コマンドが生成され、後で第1状態コマンド及び第2状態コマンドが生成される場合と、先に第1状態コマンド及び第2状態コマンドが生成され、後でエラー表示コマンドが生成される場合とが混在する可能性がある。これでは、サブ制御手段80側での処理に混乱が生じてしまう。
そこで、本実施形態では、割込み処理において、メイン側エラー検知手段71によりエラーを検知したと判断したときは、直ちに、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定し、メイン処理において、メイン側エラー検知手段71によりエラーを検知したと判断したときは、第1状態コマンド及び第2状態コマンドの生成を待ってから、エラー表示コマンドを生成することに決定する。
具体的には、割込み処理では、第1割込みカウンタ51のカウント値が「7」になるごとに、メイン側エラー検知手段71によりエラーを検知したか否かを判断し、エラーを検知したと判断したときは、直ちに、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定する。
これに対し、メイン処理では、メイン側エラー検知手段71によりエラーを検知したと判断した場合には、第1割込みカウンタ51のカウント値が「0」になったときに、エラーの検知に対応した処理を実行するとともに、エラー表示コマンドを生成することに決定する。
上述したように、第1割込みカウンタ51は、0からカウントを開始し、タイマー割込みが行われるごとにカウント値に1を加算し、カウント値が7に到達すると、その次はカウント値を0に戻すものである。
このため、メイン側エラー検知手段71によりエラーを検知すると、割込み処理において、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定し、その1割込み以降に、メイン処理において、エラーの検知に対応した処理を実行するとともに、エラー表示コマンドを生成することに決定する。
これにより、メイン側エラー検知手段71によりエラーを検知すると、コマンド生成手段73は、常に、第1状態コマンド、第2状態コマンド、エラー表示コマンドの順に、コマンドを生成し、コマンド送信手段75は、常に、第1状態コマンド、第2状態コマンド、エラー表示コマンドの順に、サブ制御手段80にコマンドを送信する。
したがって、サブ制御手段80側では、常に、第1状態コマンド、第2状態コマンド、エラー表示コマンドの順に、コマンドを受信するので、処理に混乱が生じないようにすることができる。
また、メイン処理では、遊技の開始時に、メイン側エラー検知手段71によりエラーを検知したときは、エラー表示コマンドを生成することに決定するとともに、エラーが解除されるまで、遊技の進行を停止し、かつエラーが発生したことをメイン制御手段50側で継続して報知(たとえば、図示しない7セグメント表示器にエラーコードを表示)するように制御する。
さらにまた、メイン処理では、待ち時間中又はリール31の回転中は、メイン側エラー検知手段71によりエラーを検知しても、エラー表示コマンドを生成することの決定を行わず、かつ遊技の進行を停止せず、かつエラーが発生したことの報知も行わないように制御する。すなわち、エラーの検知に対応した処理を実行しないように制御する。
さらに、メイン処理では、待ち時間の経過後又は全てのリール31の停止後に、メイン側エラー検知手段71によりエラーを検知したときは、遊技の開始時と同様に、エラー表示コマンドを生成することに決定するとともに、エラーが解除されるまで、遊技の進行を停止し、かつエラーが発生したことをメイン制御手段50側で継続して報知するように制御する。
また、メイン処理でエラー表示コマンドを生成することに決定すると、コマンド生成手段73は、エラー表示コマンドを生成して、これをバッファ領域74に記憶し、コマンド送信手段75は、バッファ領域74に記憶されたエラー表示コマンドをサブ制御手段80に送信する。
これに対し、割込み処理では、待ち時間中又はリール31の回転中であるか否かにかかわらず、メイン側エラー検知手段71によりエラーを検知したときは、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成することに決定する。さらに、この決定に応じて、コマンド生成手段73は、第1状態コマンド及び第2状態コマンドを生成して、これをバッファ領域74に記憶し、コマンド送信手段75は、バッファ領域74に記憶された第1状態コマンド及び第2状態コマンドをサブ制御手段80に送信する。
そして、サブ制御手段80側では、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを受信したときは、待ち時間中又はリール31の回転中であるか否かにかかわらず、エラーを検知した旨を報知する。その後、エラー表示コマンドを受信すると、エラーを検知した旨の報知から、エラーが発生した旨の報知に切り替える。
特に、リール31の回転中に、メイン側エラー検知手段71によりエラーを検知したときは、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドについては、すぐに生成されて送信されるが、エラー表示コマンドの生成及び送信は、全てのリール31の停止後である。このため、サブ制御手段80側では、リール31の回転中は、エラーを検知した旨を報知し、全てのリール31の停止後に、エラーを検知した旨の報知から、エラーが発生した旨の報知に切り替えることとなる。
また、本実施形態では、本遊技及び擬似遊技のいずれにおいても、リール31が停止したときは、コマンド生成手段73は、いずれのリール31が停止したかを示す停止リールコマンドを生成して、これをバッファ領域74に記憶し、コマンド送信手段75は、バッファ領域74に記憶された停止リールコマンドをサブ制御手段80に送信する。
上述したように、擬似遊技では、ストップスイッチ42が操作された瞬間からリール31を停止させるまでの時間を190ms以内に設定するという制限はない。このため、擬似遊技では、たとえば、3つ(左、中、右)のリール31の回転中に、先に左ストップスイッチ42が操作され、後で中ストップスイッチ42が操作されても、先に中リール31を停止させ、後で左リール31を停止させることがある。
このため、本実施形態では、リール31が停止したときは、リール31が停止したことのみならず、いずれのリール31が停止したかを示す停止リールコマンドを生成して、これをサブ制御手段80に送信する。これにより、いずれのリール31が停止したかをサブ制御手段80側で判断できるようにし、停止したリール31に応じた適切な演出を出力することができるようにしている。
続いて、電源投入時の処理の流れを、図2に示すフローチャートに基づき説明する。
図2のステップS11において、メイン制御手段50は、第1割込みカウンタ51に「0」をセットする。そして、次のステップS12に進む。
ステップS12では、コマンド生成手段73は、第1状態コマンドを生成して、これをバッファ領域74に記憶する。そして、次のステップS13に進む。
ステップS13では、コマンド生成手段73は、第2状態コマンドを生成して、これをバッファ領域74に記憶する。そして、本フローチャートによる処理は終了する。
なお、電源投入時は、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かにかかわらず、第1状態コマンド及び第2状態コマンドを順次生成する。
続いて、割込み処理の流れを、図3に示すフローチャートに基づき説明する。
図3のステップS21において、メイン制御手段50は、第1割込みカウンタ51(「0」〜「7」をループ)のカウント値が「7」未満であるか否かを判断する。
ここで、「7」未満であると判断したときはステップS22に進み、メイン制御手段50は、第1割込みカウンタ51に「1」を加算する。そして、ステップS27に進む。
これに対し、「7」であると判断したときはステップS23に進み、メイン制御手段50は、第1割込みカウンタ51に「0」をセットする。そして、ステップS24に進む。
ステップS24では、メイン制御手段50は、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かを判断する。たとえば、ベットスイッチ40の操作の有効/無効の状態が、前回(8割込み前)と異なるか否かを判断する。
ここで、変化があった(前回と異なる)と判断したときは、ステップS25に進む。これに対し、変化がなかった(前回と同一)と判断したときは、ステップS27に進む。
ステップS25では、コマンド生成手段73は、第1状態コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS26に進む。
ステップS26では、コマンド生成手段73は、第2状態コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS27に進む。
このように、ステップS21〜S26の処理により、割込み処理において、第1割込みカウンタ51のカウント値が「7」になるごと(8割込みごと)に、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かを判断し、いずれかに変化があったと判断したときは、第1状態コマンド及び第2状態コマンドの双方を生成する。
ステップS27では、メイン制御手段50は、第2割込みカウンタ52(「0」〜「9」をループ)のカウント値が「9」未満であるか否かを判断する。
ここで、「9」未満であると判断したときはステップS28に進み、メイン制御手段50は、第2割込みカウンタ52に「1」を加算する。そして、本フローチャートによる処理を終了する。
これに対し、「9」であると判断したときはステップS29に進み、メイン制御手段50は、第2割込みカウンタ52に「0」をセットする。そして、ステップS30に進む。
ステップS30では、メイン制御手段50は、第3状態コマンドに含む情報に変化があったか否かを判断する。たとえば、ベットスイッチ40のオン/オフの状態が、前回(10割込み前)と異なるか否かを判断する。
ここで、変化があった(前回と異なる)と判断したときは、ステップS31に進む。これに対し、変化がなかった(前回と同一)と判断したときは、本フローチャートによる処理を終了する。
ステップS31では、メイン制御手段50は、上位バイト切替えフラグ(「0」又は「1」)が「0」か否かを判断する。
ここで、上位バイト切替えフラグが「0」であると判断したときはステップS32に進み、コマンド生成手段73は、上位1バイトが16進数で「9C」の第3状態コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS33に進み、メイン制御手段50は、上位バイト切替えフラグに「1」をセットする。そして、本フローチャートによる処理を終了する。
これに対し、上位バイト切替えフラグが「0」ではない(「1」である)と判断したときはステップS34に進み、コマンド生成手段73は、上位1バイトが16進数で「9D」の第3状態コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS35に進み、メイン制御手段50は、上位バイト切替えフラグに「0」をセットする。そして、本フローチャートによる処理を終了する。
このように、ステップS27〜S35の処理により、割込み処理において、第2割込みカウンタ52のカウント値が「9」になるごと(10割込みごと)に、第3状態コマンドに含む情報に変化があったか否かを判断し、変化があったと判断したときは、第3状態コマンドを生成する。また、第3状態コマンドを生成するごとに、上位1バイトを交互に切り替える。
続いて、メイン処理の流れを、図4に示すフローチャートに基づき説明する。
図4のステップS41〜S44はコマンド集中区間であり、コマンド生成手段73は、ステップS41では設定値コマンドを、次のステップS42では遊技状態コマンド1を、次のステップS43では遊技状態コマンド2を、次のステップS44では遊技状態コマンド3を、順次生成して、これらを生成順にバッファ領域74に記憶する。そして、次のステップS45に進む。
ステップS45では、メイン制御手段50は、32割込み(71.52ms)の待ち時間が経過したか否かを判断し続ける。そして、待ち時間が経過したと判断したときは、次のステップS46に進む。
ステップS46では、メイン制御手段50は、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
ここで、エラーを検知したと判断したときはステップS47に進み、メイン制御手段50は、エラー対応処理を実行する。エラー対応処理については後述する。そして、エラー対応処理が終了すると、ステップS48に進む。
これに対し、エラーを検知していないと判断したときは、エラー対応処理を実行することなく、ステップS48に進む。
ステップS48では、メイン制御手段50は、スタートスイッチ41が操作されたか否かを判断する。
ここで、スタートスイッチ41が操作されたと判断したときはステップS49に進み、メイン制御手段50は、遊技進行処理を実行する。遊技進行処理については後述する。そして、遊技進行処理が終了すると、ステップS50に進む。
これに対し、スタートスイッチ41が操作されていないと判断したときは、ステップS46に戻る。
ステップS50では、メイン制御手段50は、メイン側エラー検知手段71によりエラーを検知したか否かを判断する。
ここで、エラーを検知したと判断したときはステップS51に進み、メイン制御手段50は、エラー対応処理を実行する。そして、エラー対応処理が終了すると、ステップS52に進む。
これに対し、エラーを検知していないと判断したときは、エラー対応処理を実行することなく、ステップS52に進む。
ステップS52では、メイン制御手段50は、役が入賞したか否かを判断する。
ここで、役が入賞したと判断したときはステップS53に進み、メイン制御手段50は、入賞した役に応じてメダルの払出し等を行う。そして、本フローチャートによる処理を終了する。
これに対し、役が入賞していないと判断したときは、メダルの払出し等を行うことなく、本フローチャートによる処理を終了する。
続いて、エラー対応処理の流れを、図5に示すフローチャートに基づき説明する。
図5のステップS61では、メイン制御手段50は、特定エラー(払出しセンサ異常、投入メダル詰まり、又は投入センサ異常)を検知したか否かを判断する。ここで、特定エラーを検知していないと判断したときは、ステップS62に進む。これに対し、特定エラーを検知したと判断したときは、ステップS64に進む。
ステップS62では、メイン制御手段50は、検知したエラーに対応するエラーコードを7セグメント表示器に表示し、次のステップS63では、コマンド生成手段73は、検知したエラーに対応するエラー表示コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS73に進む。
ステップS64では、メイン制御手段50は、第1割込みカウンタ51が「0」か否かを判断し続ける。そして、第1割込みカウンタ51が「0」になるとステップS65に進み、メイン制御手段50は、払出しセンサ異常を検知したか否かを判断する。
ここで、払出しセンサ異常を検知したと判断したときはステップS66に進み、メイン制御手段50は、払出しセンサ異常を検知したことを示すエラーコードを7セグメント表示器に表示し、次のステップS67では、コマンド生成手段73は、払出しセンサ異常を検知した旨の情報を含むエラー表示コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS73に進む。
これに対し、払出しセンサ異常を検知していないと判断したときは、ステップS68に進む。
ステップS68では、メイン制御手段50は、投入メダル詰まりを検知したか否かを判断する。
ここで、投入メダル詰まりを検知したと判断したときはステップS69に進み、メイン制御手段50は、投入メダル詰まりを検知したことを示すエラーコードを7セグメント表示器に表示し、次のステップS70では、コマンド生成手段73は、投入メダル詰まりを検知した旨の情報を含むエラー表示コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS73に進む。
これに対し、投入メダル詰まりを検知していないと判断したときは、ステップS71に進む。
ステップS71では、メイン制御手段50は、投入センサ異常を検知したことを示すエラーコードを7セグメント表示器に表示し、次のステップ72では、コマンド生成手段73は、投入センサ異常を検知した旨の情報を含むエラー表示コマンドを生成して、これをバッファ領域74に記憶する。そして、ステップS73に進む。
ステップS73では、メイン制御手段50は、解除操作が行われたか否かを判断し続ける。これにより、エラーが解除されるまで、遊技の進行を停止するとともに、エラーが発生した旨の報知を継続する。また、解除操作が行われたと判断したときは次のステップS74に進み、メイン制御手段50は、エラーを解除する。そして、本フローチャートによる処理を終了する。
このように、ステップS64において第1割込みカウンタ51が「0」になったときにエラー表示コマンドを生成することにより、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを生成した後に、エラー表示コマンドを生成するようにし、ひいては、常に、第1状態コマンド、第2状態コマンド、エラー表示コマンドの順に、コマンドを生成するようにしている。
また、特定エラー以外のエラー(メダルの逆流、払出しメダル詰まり、又はメダル切れ)については、対応する情報を第1状態コマンド及び第2状態コマンドに含まない。このため、特定エラー以外のエラーを検知したときは、第1割込みカウンタ51が「0」になったか否かを判断することなく、エラー表示コマンドを生成するようにしている。
続いて、遊技進行処理の流れを、図6に示すフローチャートに基づき説明する。
図6のステップS81において、役抽選手段61は、役の抽選を行う。そして、次のステップS82に進む。
ステップS82では、リール制御手段64は、全てのリール31の回転を開始する。そして、次のステップS83に進む。
ステップS83では、メイン制御手段50は、ストップスイッチ42がオンにされたか否かを判断し続ける。ストップスイッチ42がオンにされると次のステップS84に進み、リール制御手段64は、オンにされたストップスイッチ42に対応するリール31を停止制御する。そして、次のステップS85に進む。
ステップS85では、コマンド生成手段73は、停止したリール31を示す停止リールコマンドを生成して、これをバッファ領域74に記憶する。そして、次のステップS86に進む。
ステップS86では、メイン制御手段50は、全てのリール31が停止したか否かを判断する。
ここで、全てのリール31が停止したと判断したときは次のステップS87に進み、コマンド生成手段73は、全リール31の停止時の図柄の組合せを示す停止図柄コマンドを生成して、これをバッファ領域74に記憶する。そして、本フローチャートにより処理を終了する。
これに対し、回転中のリール31があると判断したときは、ステップS83に戻る。
このように、メイン処理中の遊技進行処理では、リール31の回転中は、エラーを検知しても、遊技の進行を停止せず、かつエラーが発生した旨も報知しない。すなわち、エラーの検知に対応した処理を実行しない。そして、全てのリール31の停止後に、図4のステップS50に進み、このときエラーを検知すると、遊技の進行を停止するとともに、エラーが発生した旨を報知する。
図1に示すように、サブ制御手段80は、サブ遊技状態制御手段81、及び報知制御手段82を備える。
上述したように、本実施形態では、サブ遊技状態として、AT遊技(報知遊技)、及び非AT遊技(非報知遊技)を備える。
ここで、AT遊技とは、複数個の小役に重複当選した遊技において、遊技者にとって有利となる遊技結果を表示させる(遊技者の受ける利益が大きい図柄の組合せを停止させる)ためのストップスイッチ42の押し順(正解押し順)を報知する遊技をいう。
これに対し、非AT遊技とは、複数個の小役に重複当選した遊技であっても、遊技者にとって有利となる遊技結果を表示させるためのストップスイッチ42の押し順(正解押し順)を報知しない遊技をいう。
そして、サブ遊技状態制御手段81は、サブ遊技状態間(AT遊技、及び非AT遊技の間)の移行を制御し、報知制御手段82は、ストップスイッチ42の押し順の報知を制御する。
本実施形態では、サブ遊技状態制御手段81は、所定遊技回数(50遊技)を1セットとするAT遊技を実行する。また、所定の上乗せ条件を満たしたときは、AT遊技の残り遊技回数に所定遊技回数を上乗せ(加算)し、所定の継続条件を満たしたときは、当該AT遊技を消化後すぐに次のAT遊技を継続して実行する。そして、AT遊技の終了条件を満たすと判断したときは、次遊技から、非AT遊技に移行させるように制御する。
ここで、サブ遊技状態制御手段81は、非AT遊技中に役抽選手段61でレア小役(当選確率が他の小役よりも低く設定されている小役)又はレアリプレイ(当選確率が他のリプレイよりも低く設定されているリプレイ)に当選したときは、AT遊技の実行権利を付与するか否かを決定するAT抽選を行う。そして、AT抽選で当選したときは、サブ遊技状態制御手段81は、AT遊技の実行権利を付与する。
また、サブ遊技状態制御手段81は、AT遊技の実行権利を付与したときは、AT遊技の実行条件を満たすと判断して、所定遊技回数(10遊技)消化後に、AT遊技を開始する。そして、AT遊技中に所定遊技回数(50遊技)を消化したときは、サブ遊技状態制御手段81は、AT遊技の終了条件を満たすと判断して、次遊技から、非AT遊技に移行させるように制御する。
また、本実施形態では、サブ遊技状態制御手段81は、AT遊技の実行権利の個数をカウントする実行権利カウンタを備えており、AT遊技の実行権利を付与したときは、AT遊技の実行権利の付与に応じた数値を、実行権利カウンタのカウント値に加算する。
そして、サブ遊技状態制御手段81は、AT遊技を実行したときは、AT遊技の実行に応じた数値を、実行権利カウンタのカウント値から減算する。
具体的には、サブ遊技状態制御手段81は、たとえば、AT遊技の実行権利を1個付与したときは、実行権利カウンタのカウント値に「1」を加算し、AT遊技の実行権利を3個付与したときは、実行権利カウンタのカウント値に「3」を加算する。
これにより、AT遊技の実行権利を貯留(ストック)することができ、AT遊技の実行権利を付与したときに、既に貯留しているAT遊技の実行権利があれば、AT遊技の実行権利の貯留数(ストック数)を上乗せ(加算)することができる。
また、サブ遊技状態制御手段81は、実行権利カウンタのカウント値が「1」以上のときは、AT遊技を実行するとともに、AT遊技の開始時に、実行権利カウンタのカウント値から「1」を減算する。
そして、サブ遊技状態制御手段81は、実行権利カウンタのカウント値が「0」になるまで、AT遊技を繰り返し実行する。
すなわち、AT遊技の実行権利を貯留(ストック)しているときは、貯留数(ストック数)が0になるまで、AT遊技を継続(連チャン)させる。このとき、サブ遊技状態制御手段81は、1つのAT遊技を一旦終了してから、次のAT遊技を開始する。
また、サブ遊技状態制御手段81は、AT遊技中に役抽選手段61でレア小役又はレアリプレイに当選したときは、AT遊技の残り遊技回数を上乗せするか否か及び上乗せ数を決定する上乗せ抽選を行う。そして、上乗せ抽選で当選したときは、サブ遊技状態制御手段81は、上乗せ抽選で決定した上乗せ数を、AT遊技の残り遊技回数に上乗せ(加算)する。
さらにまた、サブ遊技状態制御手段81は、AT遊技の残り遊技回数が所定遊技回数(5遊技)になったときは、AT遊技を継続するか否かを決定する継続抽選を行う。そして、AT遊技を継続することに決定したときは、当該AT遊技の残り遊技回数を消化後すぐに次のAT遊技を継続して実行する。これに対し、AT遊技を継続しないことに決定したときは、当該AT遊技の残り遊技回数を消化したときにAT遊技を終了する。
さらに、サブ遊技状態制御手段81は、AT抽選の当選確率として、10%、30%、50%の3段階を有し、上乗せ抽選の当選確率として、30%、50%、70%の3段階を有し、継続抽選の当選確率として、50%、70%、90%の3段階を有している。
また、サブ遊技状態制御手段81は、役抽選手段61でレア小役又はレアリプレイに当選したときは、AT抽選や上乗せ抽選や継続抽選の当選確率を高くするか否かを決定するモードアップ抽選を行う。
これに対し、サブ遊技状態制御手段81は、役抽選手段61でリプレイに当選したときは、AT抽選や上乗せ抽選や継続抽選の当選確率を低くするか否かを決定するモードダウン抽選を行う。
そして、サブ遊技状態制御手段81は、モードアップ抽選やモードダウン抽選の結果に従って、AT抽選や上乗せ抽選や継続抽選の当選確率を設定する。
図1に示すように、サブ制御手段80は、演出制御手段83を備える。
演出制御手段83は、上述した演出用ランプ21、スピーカ22、及び画像表示装置23からの演出の出力を制御するものである。
演出制御手段83は、受信したコマンド(たとえば、操作スイッチがオンの状態か又はオフの状態かを示す情報を含む第3状態コマンド)に応じて、演出の出力を制御する。
また、演出制御手段83は、遊技ごとに、遊技の開始時等に、役抽選手段61による役の抽選結果に基づいて、ソフトウェア乱数を用いた抽選によって、演出を選択する。
具体的には、遊技の進行に伴って、どのようなタイミングで(スタートスイッチ41の操作時や各ストップスイッチ42の操作時等)、どのような演出を出力するか(演出用ランプ21をどのように点灯、点滅又は消灯させるか、スピーカ22からどのようなサウンドを出力するか、及び画像表示装置23にどのような画像を表示させるか等)を選択する。そして、この選択に従って、演出を出力する。
また、図1に示すように、サブ制御手段80の入力側には、演出に用いる演出用スイッチ20が電気的に接続されている。
そして、演出制御手段83は、所定の条件を満たした(たとえば、上乗せ数を決定した)ときは、演出用スイッチ20が操作されると、所定の画像(たとえば、決定した上乗せ数を示す画像)を画像表示装置23に表示する。
また、図1に示すように、サブ制御手段80は、発光制御手段85を備えている。
発光制御手段85は、メイン制御手段50側から受信したコマンドに応じて、発光体としてのベット用LED24及び3つ(左、中、右)のストップ用LED25の出力を制御するものである。
具体的には、発光制御手段85は、ベットスイッチ40の操作が有効の状態である旨の情報を含むコマンド(第2状態コマンド)を受信したときは、ベット用LED24を赤色に発光させるように制御し、ベットスイッチ40の操作が無効の状態である旨の情報を含むコマンド(第2状態コマンド)を受信したときは、ベット用LED24を消灯させるように制御する。
これにより、ベットスイッチ40の操作が有効の状態か又は無効の状態かを遊技者に示すようにしている。
また、発光制御手段85は、設定キースイッチ45がオンの状態である旨の情報を含むコマンド(第1状態コマンド)を受信したときは、ベットスイッチ40の操作が有効の状態か又は無効の状態かを示す情報を含むコマンド(第2状態コマンド)を受信したか否かにかかわらず、ベット用LED24を青色に発光させるように制御する。
すなわち、発光制御手段85は、設定キースイッチ45がオンの状態である旨の情報を含むコマンド(第1状態コマンド)を受信したときは、ベットスイッチ40の操作が有効の状態であることを示す情報を含むコマンド(第2状態コマンド)を受信しても、ベット用LED24を赤色に発光させるのではなく、青色に発光させるように制御する。
つまり、ベットスイッチ40の操作は有効の状態であり、本来であればベット用LED24が赤色に発光するところ、青色に発光する。また、この状態でベットスイッチ40を操作すると、3枚分の貯留メダルが電気的に投入されるとともに、クレジット数から「3」が減算される。
その後、ベットスイッチ40の操作が無効になるため、その旨の情報を含む第2状態コマンドがメイン制御手段50側から送信されるが、これをサブ制御手段80側で受信しても、設定キースイッチ45がオンの状態のままであれば、発光制御手段85は、ベット用LED24を消灯させるのではなく、引き続き青色に発光させるように制御する。
また、発光制御手段85は、設定キースイッチ45がオンの状態である旨の情報を含むコマンド(第1状態コマンド)を受信したときは、ベットスイッチ40の操作が無効の状態であることを示す情報を含むコマンド(第2状態コマンド)を受信しても、ベット用LED24を消灯させるのではなく、青色に発光させるように制御する。
このため、設定キースイッチ45がオンの状態であるときは、常に、ベット用LED24が青色に発光し、これにより、設定キースイッチ45がオンの状態であることを、特にスロットマシン10の設置店(ホール)側に知らせることができる。
また、発光制御手段85は、レアリプレイ(当選確率が他のリプレイよりも低く設定されているリプレイ)が入賞したときは、ベットスイッチ40の操作が有効の状態か又は無効の状態かを示す情報を含むコマンド(第2状態コマンド)を受信したか否かにかかわらず、ベット用LED24をレインボーカラーで発光させるように制御する。
ここで、リプレイ入賞時には、当該遊技で投入した枚数のメダルが自動投入されるので、通常は、ベットスイッチ40は消灯する。
しかし、上述したように、本実施形態では、レアリプレイ当選時には、AT抽選が行われる。このため、レアリプレイ当選時に、ベット用LED24をレインボーカラーで発光させることにより、AT遊技に対する遊技者の期待を高めるようにしている。
なお、レアリプレイ当選時にAT抽選を行い、このAT抽選で当選したときに、発光制御手段85は、ベットスイッチ40の操作が有効の状態か又は無効の状態かを示す情報を含むコマンド(第2状態コマンド)を受信したか否かにかかわらず、ベット用LED24をレインボーカラーで発光させるように制御してもよい。
また、発光制御手段85は、ベット用LED24をレインボーカラーで発光させてから一定時間を経過したときは、ベット用LED24を消灯させて、本来の状態に戻すように制御してもよい。
さらに、発光制御手段85は、ベット用LED24をレインボーカラーで発光させた後、ベットスイッチ40又はスタートスイッチ41がオンの状態であることを示す情報を含む第3状態コマンドを受信したときは、ベット用LED24を消灯させて、本来の状態に戻すように制御してもよい。
ただし、発光制御手段85は、設定キースイッチ45がオンの状態である旨の情報を含むコマンド(第1状態コマンド)を受信したときは、レアリプレイが入賞したか否かにかかわらず、また、AT抽選で当選したか否かにかかわらず、ベット用LED24を青色に発光させるように制御する。
すなわち、発光制御手段85は、設定キースイッチ45がオンの状態であるときにベット用LED24を青色に発光させることを最優先し、次に、レアリプレイ入賞時又はAT抽選当選時にベット用LED24をレインボーカラーに発光させることを優先する。そして、ベットスイッチ40の操作の有効/無効の状態に応じてベット用LED24を赤色に発光させたり消灯させることは、優先順位が最も低く設定されている。
また、発光制御手段85は、ストップスイッチ42の操作が有効の状態である旨の情報を含むコマンド(第2状態コマンド)を受信したときは、ストップ用LED25を青色に発光させるように制御し、ストップスイッチ42の操作が無効の状態である旨の情報を含むコマンド(第2状態コマンド)を受信したときは、ストップ用LED25を赤色に発光させるように制御する。
本実施形態では、3つ(左、中、右)のストップスイッチ42を備えるとともに、これらにそれぞれ対応して、3つ(左、中、右)のストップ用LED25を備えるが、コマンド生成手段73は、3つのストップスイッチ42のそれぞれについて、その操作が有効の状態か又は無効の状態かを示す情報を含むように第2状態コマンドを生成する。
そして、発光制御手段85は、受信した第2状態コマンドに応じて、3つのストップ用LED25のそれぞれについて、青色又は赤色に発光させるように制御する。
これにより、3つのストップスイッチ42のそれぞれについて、その操作が有効の状態か又は無効の状態かを遊技者に示すようにしている。
続いて、発光制御処理の流れを、図7に示すフローチャートに基づき説明する。
図7のステップS91において、発光制御手段85は、設定キースイッチ45がオンの状態か否かを判断する。
ここで、設定キースイッチ45がオンの状態であると判断したときはステップS92に進み、発光制御手段85は、ベット用LED24を青色に発光させる。そして、本フローチャートによる処理を終了する。
これに対し、設定キースイッチ45がオンの状態ではない(オフの状態である)と判断したときは、ステップS93に進む。
ステップS93では、発光制御手段85は、レアリプレイが入賞したか否かを判断する。
ここで、レアリプレイが入賞したと判断したときはステップS94に進み、発光制御手段85は、ベット用LED24をレインボーカラーに発光させる。そして、本フローチャートによる処理を終了する。
これに対し、レアリプレイが入賞していないと判断したときは、ステップS95に進む。
ステップS95では、発光制御手段85は、ベットスイッチ40の操作が有効の状態か否かを判断する。
ここで、ベットスイッチ40の操作が有効の状態であると判断したときはステップS96に進み、発光制御手段85は、ベット用LED24を赤色に発光させる。そして、本フローチャートによる処理を終了する。
これに対し、ベットスイッチ40の操作が有効の状態ではない(無効の状態である)と判断したときはステップS97に進み、発光制御手段85は、ベット用LED24を消灯させる。そして、本フローチャートによる処理を終了する。
また、図1に示すように、サブ制御手段80は、サブ側エラー検知手段86、及びエラー報知手段87を備えている。
サブ側エラー検知手段86は、メイン制御手段50側から受信したコマンドに基づいて、サブ制御手段80側においてエラーを検知するものであり、エラー報知手段87は、エラーを検知したときにその旨を報知するものである。
本実施形態では、サブ側エラー検知手段86は、受信した第1状態コマンドに含まれる情報に基づいてエラーを検知する。
上述したように、第1状態コマンドの下位1バイトについて、0ビット目はドア開閉検知センサ48のオン/オフの状態を示し、1ビット目はカバー開閉検知センサ49のオン/オフの状態を示し、2ビット目は設定キースイッチ45のオン/オフの状態を示し、3ビット目は設定変更スイッチ46のオン/オフの状態を示す。
また、0ビット目が「1」のときは、ドア開閉検知センサ48がオンの状態(フロントマスク部が開放された状態)であることを示し、「0」のときはオフの状態(フロントマスク部が閉じた状態)であることを示す。
さらにまた、1ビット目が「1」のときは、カバー開閉検知センサ49がオンの状態(スイッチカバーが開放された状態)であることを示し、「0」のときはオフの状態(スイッチカバーが閉じた状態)であることを示す。
さらに、2ビット目が「1」のときは、設定キースイッチ45がオンの状態であることを示し、「0」のときは、オフの状態であることを示す。
また、3ビット目が「1」のときは、設定変更スイッチ46がオンの状態であることを示し、「0」のときはオフの状態であることを示す。
ここで、フロントマスク部が開放された状態(0ビット目が「1」)であり、かつスイッチカバーが開放された状態(1ビット目が「1」)であり、かつ設定キースイッチ45がオンの状態(2ビット目が「1」)であれば、正常である。
しかし、フロントマスク部が閉じた状態(0ビット目が「0」)であり、かつスイッチカバーが開放された状態(1ビット目が「1」)であり、かつ設定キースイッチ45がオンの状態(2ビット目が「1」)であるときは、正常ではない(異常である)。
また、フロントマスク部が開放された状態(0ビット目が「1」)であり、かつスイッチカバーが閉じた状態(1ビット目が「0」)であり、かつ設定キースイッチ45がオンの状態(2ビット目が「1」)であるときも、正常ではない。
さらに、フロントマスク部が閉じた状態(0ビット目が「0」)であり、かつスイッチカバーが閉じた状態(1ビット目が「0」)であり、かつ設定キースイッチ45がオンの状態(2ビット目が「1」)であるときも、正常ではない。
そこで、サブ側エラー検知手段86は、受信した第1状態コマンドの下位1バイトについて、0ビット目が「0」、1ビット目が「1」、2ビット目が「1」のときは、エラーを検知したと判断する。同様に、0ビット目が「1」、1ビット目が「0」、2ビット目が「1」のとき、及び0ビット目が「0」、1ビット目が「0」、2ビット目が「1」のときについても、エラーを検知したと判断する。
そして、サブ側エラー検知手段86によりエラーを検知したときは、エラー報知手段87は、その旨を画像表示装置23に表示することで報知する。
また、エラー報知手段87は、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドを受信したときは、リール31の回転中であるか否かにかかわらず、エラーを検知した旨を報知する。その後、エラー表示コマンドを受信すると、エラー報知手段87は、エラーを検知した旨の報知から、エラーが発生した旨の報知に切り替える。
ここで、リール31の回転中に、メイン側エラー検知手段71によりエラーを検知したとする。この場合、特定エラーを検知した旨の情報を含む第1状態コマンド及び第2状態コマンドについては、リール31の回転中であっても、割込み処理により、すぐに生成されて送信される。しかし、メイン処理により、エラー表示コマンドが生成されて送信されるとともに、遊技の進行が停止されるのは、全てのリール31の停止後である。
このため、エラー報知手段87は、リール31の回転中は、エラーを検知した旨を報知し、全てのリール31の停止後に、エラーを検知した旨の報知から、エラーが発生した旨の報知に切り替えることとなる。
(第2実施形態)
第1実施形態では、発光体としてのベット用LED24は、サブ制御手段80の出力側に電気的に接続し、発光体の出力を制御する発光制御手段85は、サブ制御手段80側に設けた。
これに対し、第2実施形態では、発光体としてのベット用LED24は、メイン制御手段50の出力側に電気的に接続し、発光体の出力を制御する発光制御手段85は、メイン制御手段50側に設けている。
そして、発光制御手段85は、ベットスイッチ40の操作が有効の状態か又は無効の状態かを判断し、有効の状態であると判断したときは、ベット用LED24を赤色に発光させるように制御し、無効の状態であると判断したときは、ベット用LED24を消灯させるように制御する。
これにより、ベットスイッチ40の操作が有効の状態か又は無効の状態かを遊技者に示すようにしている。
また、発光制御手段85は、設定キースイッチ45がオンの状態か又はオフの状態かを判断し、オンの状態であると判断したときは、ベットスイッチ40の操作が有効の状態であるか又は無効の状態であるかにかかわらず、ベット用LED24を青色に発光させるように制御する。
すなわち、発光制御手段85は、設定キースイッチ45がオンの状態であると判断したときは、ベットスイッチ40の操作が有効の状態であると判断しても、ベット用LED24を赤色に発光させるのではなく、青色に発光させるように制御する。
また、発光制御手段85は、設定キースイッチ45がオンの状態であると判断したときは、ベットスイッチ40の操作が無効の状態であると判断しても、ベット用LED24を消灯させるのではなく、青色に発光させるように制御する。
すなわち、発光制御手段85は、設定キースイッチ45がオンの状態であるときは、ベット用LED24を青色に発光させることを優先し、設定キースイッチ45がオフの状態であるときは、ベットスイッチ40の操作の有効/無効の状態に応じて、ベット用LED24を赤色に発光させたり消灯させるように制御する。
このため、設定キースイッチ45がオンの状態であるときは、常に、ベット用LED24が青色に発光し、これにより、設定キースイッチ45がオンの状態であることを、特にスロットマシン10の設置店(ホール)側に知らせることができる。
また、ベットスイッチ40の操作が有効の状態で、設定キースイッチ45をオンにすると、ベットスイッチ40の操作は無効の状態になり、かつ設定確認モードに移行し、かつベット用LED24が青色に発光する。
さらにまた、設定キースイッチ45がオンの状態で、電源をオンにすると、ベットスイッチ40の操作は無効の状態になり、かつ設定変更モードに移行し、かつベット用LED24が青色に発光する。
さらに、ベットスイッチ40の操作が無効の状態で、設定キースイッチ45をオンにすると、ベットスイッチ40の操作は無効の状態のまま維持され、かつ設定変更モードにも設定確認モードにも移行せず、かつベット用LED24は青色に発光する。
(第3実施形態)
以下、図8〜図10に基づいて、第3実施形態について説明する。
図8に示すように、第3実施形態では、第1実施形態で示した各構成に加えて、メイン制御手段50は、タイマー64b、ウエイト手段64c、書込みポインタ74a、及び読込みポインタ74bを備え、サブ制御手段80は、サブ側設定値記憶手段88を備えている。これらについては後述する。
第3実施形態では、コマンド生成手段73は、設定変更モード中か否かにかかわらず、所定時間ごとに、設定キースイッチ45のオン/オフの状態に変化があったことを条件に、設定キースイッチ45のオン/オフの状態を示す情報を含む第1状態コマンドを生成する。また、設定変更モードが終了したときは、第1状態コマンドの生成を待ってから、設定変更モードが終了したことを示す情報を含む設定変更終了コマンドを生成する。
これにより、サブ制御手段80側での設定変更に関する処理に混乱が生じないようにしつつ、設定変更に関するエラーの検知をサブ制御手段80側で実行可能にしている。
また、第3実施形態では、リール31の回転開始前に、コマンドを生成しない待機時間を設け、この待機時間の間に、バッファ領域74に記憶されている送信未完了のコマンドを全てサブ制御手段80に送信する。その後、リール31の回転を開始するとともに、リール31の回転開始を示す情報を含む回転開始コマンドを生成し、これをバッファ領域74に一旦記憶させてから、サブ制御手段80に送信する。サブ制御手段80は、回転開始コマンドを受信したときは、回転開始コマンドに応じた演出を出力する。
これにより、リール31の回転開始に合わせて演出を出力する場合において、リール31の回転開始と演出の出力との間に発生するタイムラグを小さくしている。
第1実施形態で示したように、設定変更時には、設定キースイッチ45(モード切替えスイッチ)、設定変更スイッチ46、及びスタートスイッチ41を用いる。これらのスイッチは、いずれも、メイン制御手段50の入力側に電気的に接続されている。
また、設定キースイッチ45は、設定値が変更可能となる設定変更モードにするとき、及び設定変更モードを終了するときに操作するスイッチである。
設定キー挿入口に設定キーを挿入して、設定キーを時計周りに90度回転させると、設定キースイッチ45がオンの状態になり、この状態から設定キーを反時計周りに90度回転させると、設定キースイッチ45がオフの状態になる。
さらにまた、設定変更スイッチ46は、設定変更モード中に、設定値を変更するときに操作するスイッチである。
設定変更スイッチ46は、ボタン式のスイッチとされている。また、ボタンから指を離した状態では、設定変更スイッチ46はオフの状態になる。そして、ボタンを指で押すと、設定変更スイッチ46はオンの状態になり、ボタンから指を離すと、設定変更スイッチ46はオフの状態に戻る。
さらに、スタートスイッチ41は、通常時には、リール31を始動させるときに遊技者が操作するスイッチとして機能するが、設定変更モード中は、設定値を確定させるときに操作するスイッチとして機能する。
また、設定値変更手段60は、電源投入時(電源をオンにしたとき)に、設定キースイッチ45がオンの状態であることを条件に、設定変更モードに移行させる。
具体的には、設定値変更手段60は、電源投入時に、ドア開閉検知センサ48がオンの状態(フロントマスク部が開放された状態)であり、かつカバー開閉検知センサ49がオンの状態(スイッチカバーが開放された状態)であり、かつ設定キースイッチ45がオンの状態であるときは、設定変更モードに移行させる。
たとえば、フロントマスク部及びスイッチカバーを開放し、かつ電源をオフにした状態で、設定キースイッチ45をオンにし、この状態で電源をオンにすると、設定変更モードに移行させることができる。
また、たとえば、フロントマスク部及びスイッチカバーを開放し、かつ電源をオンにした状態で、設定キースイッチ45をオンにし、この状態で電源を一旦オフにしてから再度オンにしても、設定変更モードに移行させることができる。
これに対し、設定値変更手段60は、電源投入時に、設定キースイッチ45がオンの状態であっても、ドア開閉検知センサ48又はカバー開閉検知センサ49のいずれか一方がオフの状態であるときや、ドア開閉検知センサ48及びカバー開閉検知センサ49の双方がオフの状態であるときは、設定変更モードには移行させない。
また、設定値変更手段60は、設定変更モードでは、所定の表示部(たとえば、7セグメント表示器)に、現在の設定値を表示する。
さらにまた、設定値変更手段60は、設定変更モード中に、設定変更スイッチ46が操作されるごとに、設定値を順次変更する。
具体的には、設定値変更手段60は、設定変更モード中に、ドア開閉検知センサ48及びカバー開閉検知センサ49の双方がオンの状態であることを条件に、設定変更スイッチ46がオフの状態から一旦オンの状態にされて再度オフの状態にされるごとに、設定値を順次変更する。このとき、設定値変更手段60は、表示部の設定値の表示を、・・・→「3」→「4」→「5」→「6」→「1」→「2」→・・・のように順次変化させる。
なお、設定変更スイッチ46がオフの状態からオンの状態にされるごとに、設定値を順次変更してもよい。
これに対し、設定値変更手段60は、設定変更モード中でないときは、設定変更スイッチ46が操作されても、設定値を変更しない。
また、設定値変更手段60は、設定変更モード中であっても、ドア開閉検知センサ48又はカバー開閉検知センサ49のいずれか一方がオフの状態であるときや、ドア開閉検知センサ48及びカバー開閉検知センサ49の双方がオフの状態であるときは、設定変更スイッチ46が操作されても、設定値を変更しない。
さらにまた、設定値変更手段60は、設定変更モード中に、スタートスイッチ41がオンの状態にされると、ドア開閉検知センサ48及びカバー開閉検知センサ49のオン/オフの状態にかかわらず、このとき表示部に表示していた数値で設定値を確定させるとともに、設定値を確定させたことを示す「0」を表示部に表示する。そして、設定値変更手段60は、確定させた設定値を、設定値記憶手段60aに記憶する。
すなわち、設定値変更手段60は、ドア開閉検知センサ48又はカバー開閉検知センサ49のいずれか一方がオフの状態であっても、また、ドア開閉検知センサ48及びカバー開閉検知センサ49の双方がオフの状態であっても、設定変更モード中に、スタートスイッチ41がオンの状態にされると、常に、このとき表示部に表示していた数値で設定値を確定させる。
さらに、設定値変更手段60は、設定変更モード中に、設定キースイッチ45がオフの状態にされたことを条件に、設定変更モードを終了する。
具体的には、設定値変更手段60は、設定変更モード中であって、設定値の確定後(スタートスイッチ41がオンの状態にされた後)に、設定キースイッチ45がオフの状態にされると、設定変更モードを終了する。そして、設定変更モードが終了すると、変更後の設定値で立ち上げ処理が行われる。
これに対し、設定値変更手段60は、設定変更モード中であって、設定値の確定前(スタートスイッチ41がオンの状態にされる前)は、設定キースイッチ45がオフの状態にされても、設定変更モードを終了せずに継続する。
なお、設定値変更手段60は、設定変更モード中に、先に設定キースイッチ45がオフの状態にされ、その後にスタートスイッチ41がオンの状態にされると、設定値を確定させるとともに、設定変更モードを終了する。
また、設定値変更手段60は、電源がオンの状態で設定キースイッチ45がオンにされると、設定値が確認可能となる設定確認モードに移行させる。この設定確認モードでは、設定値変更手段60は、現在の設定値(設定値記憶手段60aに記憶されている設定値)を所定の表示部(7セグメント表示器)に表示する。
また、コマンド生成手段73は、メイン処理又は割込み処理においてコマンドを生成することに決定したときは、決定に応じたコマンドを生成する。
さらにまた、バッファ領域74は、コマンド生成手段73により生成されたコマンドを、生成された順に記憶していく。
さらに、コマンド送信手段75は、バッファ領域74に記憶されているコマンドを、記憶された順にサブ制御手段80に送信する。
バッファ領域74へのコマンドの記憶、及びサブ制御手段80へのコマンドの送信については、第1実施形態と同様である。
本実施形態では、コマンド生成手段73は、メイン制御手段50に接続された各種のセンサやスイッチのオン/オフの状態を示す情報を含む第1状態コマンド、及び設定変更モードが終了したことを示す情報を含む設定変更終了コマンド等を生成する。
また、第1状態コマンドは、第1実施形態と同様に、ドア開閉検知センサ48のオン/オフの状態を示す情報、カバー開閉検知センサ49のオン/オフの状態を示す情報、設定キースイッチ45のオン/オフの状態を示す情報、及び設定変更スイッチ46のオン/オフの状態を示す情報を含む。
さらにまた、設定変更終了コマンドは、設定変更モードの終了時における設定値を示す情報を含む。
また、メイン処理では、電源投入時に、第1状態コマンドに含む情報に変化があったか否かにかかわらず、第1状態コマンドを生成することに決定する。
すなわち、メイン処理では、電源投入時には、常に、ドア開閉検知センサ48、カバー開閉検知センサ49、設定キースイッチ45、及び設定変更スイッチ46の各々についての電源投入時におけるオン/オフの状態を示す情報を含む第1状態コマンドを生成することに決定する。
さらにまた、メイン処理では、設定変更モードが終了したときは、設定変更終了コマンドを生成することに決定する。
さらに、割込み処理では、設定変更モード中であるか否かにかかわらず、所定時間ごとに、第1状態コマンドに含む情報に変化があったことを条件に、第1状態コマンドを生成することに決定する。
具体的には、割込み処理では、設定変更モード中であるか否かにかかわらず、第1割込みカウンタ51のカウント値が「7」になるごと(8割込みごと)に、第1状態コマンドに含む情報に変化があったか否かを判断し、いずれかに変化があったと判断したときは、第1状態コマンドを生成することに決定する。
なお、上述したように、設定値変更手段60は、設定変更モード中であっても、ドア開閉検知センサ48又はカバー開閉検知センサ49の少なくとも一方がオフの状態であるときは、設定変更スイッチ46が操作されても、設定値を変更しない。
このため、割込み処理においても、設定変更モード中に、ドア開閉検知センサ48又はカバー開閉検知センサ49の少なくとも一方がオフの状態であるときは、設定変更スイッチ46が操作されても、第1状態コマンドの生成を決定しない。
また、メイン処理及び割込み処理において、第1状態コマンドを生成することに決定すると、コマンド生成手段73は、第1状態コマンドを生成する。また、メイン処理において、設定変更終了コマンドを生成することに決定すると、コマンド生成手段73は、設定変更終了コマンドを生成する。
ここで、電源投入時に、ドア開閉検知センサ48、カバー開閉検知センサ49、及び設定キースイッチ45がオンの状態であると、設定変更モードに移行する。
また、電源投入時には、メイン処理により、第1状態コマンドに含む情報に変化があったか否かにかかわらず、第1状態コマンドを生成することに決定する。
さらにまた、設定変更モード中であるか否かにかかわらず、割込み処理により、所定時間ごとに、第1状態コマンドに含む情報に変化があったことを条件に、第1状態コマンドを生成することに決定する。
さらに、設定変更モードの終了時には、メイン処理により、設定変更終了コマンドを生成することに決定する。
このため、たとえば、設定変更モードが終了したときに、メイン処理において、直ちに設定変更終了コマンドを生成することに決定すると、所定時間(8割込み)ごとに繰り返す第1状態コマンドの生成タイミングとの関係で、先に第1状態コマンドが生成され、後で設定変更終了コマンドが生成される場合と、先に設定変更終了コマンドが生成され、後で第1状態コマンドが生成される場合とが混在する可能性がある。これでは、サブ制御手段側での処理に混乱が生じてしまう。
そこで、割込み処理では、設定変更モード中であるか否かにかかわらず、所定時間ごとに、第1状態コマンドに含む情報に変化があったことを条件に、第1状態コマンドを生成することに決定する。また、メイン処理では、設定変更モードが終了したときは、第1状態コマンドの生成を待ってから、設定変更終了コマンドを生成することに決定する。
具体的には、割込み処理では、設定変更モード中であるか否かにかかわらず、第1割込みカウンタ51のカウント値が「7」になるごとに、第1状態コマンドに含む情報に変化があったか否かを判断し、いずれかに変化があったと判断したときは、第1状態コマンドを生成することに決定する。
これに対し、メイン処理では、設定変更モードが終了したときは、第1割込みカウンタ51のカウント値が「0」になるまで待ち、第1割込みカウンタ51のカウント値が「0」になったときに、設定変更終了コマンドを生成することに決定する。
なお、設定変更モード中に、スタートスイッチ41がオンの状態にされると、設定値を確定させ、その後、設定キースイッチ45がオフの状態にされると、設定変更モードを終了させる。
また、設定変更モード中に、先に設定キースイッチ45がオフの状態にされ、その後にスタートスイッチ41がオンの状態にされると、設定値を確定させるとともに、設定変更モードを終了させる。
ここで、第1割込みカウンタ51のカウント値は、タイマー割込みごとに「1」ずつ加算されていき、「7」に到達すると、その次は「0」に戻る。
このため、設定値の確定後に、設定キースイッチ45がオンの状態からオフの状態になり、設定変更モードが終了すると、割込み処理により、設定キースイッチ45がオフの状態であることを示す情報を含む第1状態コマンドを生成することに決定し、その1割込み後に、メイン処理により、設定変更終了コマンドを生成することに決定する。
これにより、設定変更モードの終了時には、コマンド生成手段73は、常に、第1状態コマンド、設定変更終了コマンドの順に、コマンドを生成する。また、コマンド送信手段は、常に、第1状態コマンド、設定変更終了コマンドの順に、サブ制御手段にコマンドを送信する。
したがって、サブ制御手段側では、常に、第1状態コマンド、設定変更終了コマンドの順に、コマンドを受信するので、処理に混乱が生じないようにすることができる。
なお、第1実施形態と同様に、第1状態コマンド及び第2状態コマンドの2つのコマンドを1つのセットとして生成するようにしてもよい。
この場合、電源投入時には、コマンド生成手段73は、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かにかかわらず、第1状態コマンド、第2状態コマンドの順に、2つのコマンドを生成する。
また、設定変更モードの終了時には、コマンド生成手段73は、第1状態コマンド、第2状態コマンド、設定変更コマンドの順に、3つのコマンドを生成する。
また、サブ制御手段80は、設定値を記憶するサブ側設定値記憶手段88を備えており、サブ側設定値記憶手段88に記憶されている設定値に応じて、演出の出力を制御する。
具体的には、サブ制御手段80は、サブ側設定値記憶手段88に記憶されている設定値が高くなるほど、AT遊技の実行確率が高くなって、遊技者にとっての有利度が高くなるように設定している。
なお、メイン制御手段50側では、設定値記憶手段60aに記憶されている設定値が高くなるほど、役(特に特別役)の当選確率が高くなって、遊技者にとっての有利度が高くなるように設定している。
このように、遊技者にとっての有利度とは、メイン制御手段50側での役の当選確率や、サブ制御手段80側でのAT遊技の実行確率を含む概念である。
また、サブ制御手段80は、設定変更終了コマンドを受信したときは、受信した設定変更終了コマンドに含まれる、設定値を示す情報に基づいて、サブ側設定値記憶手段88が記憶する設定値を更新する。
たとえば、サブ側設定値記憶手段88に設定値「3」が記憶されており、このとき、設定値「6」を示す情報を含む設定変更終了コマンドを受信すると、サブ制御手段80は、サブ側設定値記憶手段88が記憶する設定値を「3」から「6」に書き換える。
なお、上述したように、割込み処理では、設定変更モード中であるか否かにかかわらず、所定時間(8割込み)ごとに、設定変更スイッチ46のオン/オフの状態に変化があったことを条件に、第1状態コマンドを生成することに決定する。
このため、サブ制御手段80は、設定変更モード中に、受信した第1状態コマンドに含まれる、設定変更スイッチ46のオン/オフの状態を示す情報に基づいて、サブ側設定値記憶手段88が記憶する設定値を更新することも可能である。
しかし、本実施形態では、サブ制御手段80は、受信した第1状態コマンドに含まれる、設定変更スイッチ46のオン/オフの状態を示す情報によっては、サブ側設定値記憶手段88が記憶する設定値を更新せず、受信した設定変更終了コマンドに含まれる、設定値を示す情報に基づいて、サブ側設定値記憶手段88が記憶する設定値を更新する。
これにより、設定変更スイッチ46が不正に操作されることでサブ側設定値記憶手段88が記憶する設定値が不正に更新されるのを防止するようにしている。
また、上述したように、割込み処理では、設定変更モード中であるか否かにかかわらず、所定時間ごとに、設定キースイッチ45のオン/オフの状態に変化があったことを条件に、設定キースイッチ45のオン/オフの状態を示す情報を含む第1状態コマンドを生成することに決定する。
そして、サブ制御手段80は、設定キースイッチ45がオンの状態であることを示す情報を含む第1状態コマンドを受信したときは、設定変更モード中であるか否かにかかわらず、設定キースイッチ45がオンの状態であることを報知する。
具体的には、サブ制御手段80の発光制御手段85は、設定キースイッチ45がオンの状態であることを示す情報を含む第1状態コマンドを受信したときは、設定変更モード中であるか否かにかかわらず、ベット用LED24を青色に発光させることで、設定キースイッチ45がオンの状態であることを報知する。これにより、設定キースイッチ45がオンの状態であることを、スロットマシン10の設置店側に知らせることができる。
また、上述したように、割込み処理では、設定変更モード中であるか否かにかかわらず、所定時間ごとに、設定変更スイッチ46のオン/オフの状態に変化があったことを条件に、設定変更スイッチ46のオン/オフの状態を示す情報を含む第1状態コマンドを生成することに決定する。
そして、サブ制御手段80は、設定変更スイッチ46がオンの状態であることを示す情報を含む第1状態コマンドを受信したときは、設定変更モード中であるか否かにかかわらず、設定変更スイッチ46がオンの状態であることを報知する。
具体的には、サブ制御手段80は、設定変更スイッチ46がオンの状態であることを示す情報を含む第1状態コマンドを受信したときは、設定変更モード中であるか否かにかかわらず、画像表示装置23に、設定変更スイッチ46がオンの状態であることを表示することで報知する。これにより、設定変更スイッチ46がオンの状態であることを、スロットマシン10の設置店側に知らせることができる。
また、サブ制御手段80は、サブ側エラー検知手段86及びエラー報知手段87を備えている。サブ側エラー検知手段86は、受信した第1状態コマンドに含まれる情報に基づいてエラー(不正又は異常)を検知する。
たとえば、サブ側エラー検知手段86は、受信した第1状態コマンドに含まれる情報に基づいて、フロントマスク部及びスイッチカバーが閉じた状態であり、かつ設定キースイッチ45がオンの状態であると判断したときは、エラーを検知したと判断する。そして、エラーを検知したときは、エラー報知手段87は、その旨を画像表示装置23に表示することで報知する。この点については、第1実施形態と同様である。
このように、サブ制御手段80側では、設定変更モード中であるか否かにかかわらず、設定キースイッチ45がオンの状態か又はオフの状態かを判断することができるので、設定変更に関するエラーを検知することができる。
続いて、第3実施形態における電源投入時の処理の流れを、図9に示すフローチャートに基づき説明する。
図9のステップS101において、メイン制御手段50は、第1割込みカウンタ51に「0」をセットする。そして、次のステップS102に進む。
ステップS102では、コマンド生成手段73は、第1状態コマンドを生成して、これをバッファ領域74に記憶する。そして、次のステップS103に進む。
ステップS103では、コマンド生成手段73は、第2状態コマンドを生成して、これをバッファ領域74に記憶する。そして、次のステップS104に進む。
このように、電源投入時は、第1状態コマンド及び第2状態コマンドに含む情報に変化があったか否かにかかわらず、第1状態コマンド及び第2状態コマンドを順次生成する。
ステップS104では、設定値変更手段60は、ドア開閉検知センサ48がオンの状態(フロントマスク部が開放された状態)であり、かつカバー開閉検知センサ49がオンの状態(スイッチカバーが開放された状態)であり、かつ設定キースイッチ45がオンの状態であるか否かを判断する。
ここで、ドア開閉検知センサ48、カバー開閉検知センサ49、及び設定キースイッチ45が全てオンの状態であると判断したときは、設定変更モードに移行させ、次のステップS105に進む。
これに対し、ドア開閉検知センサ48、カバー開閉検知センサ49、及び設定キースイッチ45のうちの少なくとも1つがオフの状態であると判断したときは、設定変更モードに移行させることなく、本フローチャートによる処理を終了する。
ステップS105では、設定値変更手段60は、設定変更スイッチ46が操作された(オフの状態から一旦オンの状態にされて再度オフの状態にされた)か否かを判断する。
ここで、設定変更スイッチ46が操作されたと判断したときは次のステップS106に進み、設定値変更手段60は、表示部に表示した設定値を示す数値を変更する。そして、次のステップS107に進む。
これに対し、設定変更スイッチ46が操作されていないと判断したときは、表示部に表示した設定値を示す数値を変更することなく、ステップS107に進む。
ステップS107では、設定値変更手段60は、スタートスイッチ41が操作された(オンの状態にされた)か否かを判断する。
ここで、スタートスイッチ41が操作されたと判断したときは次のステップS108に進み、設定値変更手段60は、このとき表示部に表示していた数値で設定値を確定させるとともに、確定させた設定値を設定値記憶手段60aに記憶させる。そして、次のステップS109に進む。
これに対し、スタートスイッチ41が操作されていないと判断したときは、ステップS105に戻る。
ステップS109では、設定値変更手段60は、設定キースイッチ45がオフの状態にされたか否かを判断し続ける。すなわち、設定キースイッチ45がオフの状態にされるまで待機する。そして、設定キースイッチ45がオフの状態にされると設定変更モードを終了し、次のステップS110に進む。
ステップS110では、コマンド生成手段73は、第1割込みカウンタ51のカウント値が「0」か否かを判断し続ける。すなわち、第1割込みカウンタ51のカウント値が「0」になるまで待機する。そして、第1割込みカウンタ51が「0」になると次のステップS111に進み、コマンド生成手段73は、設定変更モードが終了したことを示す情報、及び設定変更モードの終了時における設定値を示す情報を含む設定変更終了コマンドを生成して、これをバッファ領域74に記憶させる。そして、本フローチャートによる処理を終了する。
また、第1実施形態と同様に、メイン制御手段50は、遊技の進行のためのメイン処理を1遊技につき1回実行するとともに、メイン処理と並行して、1回のメイン処理に要する時間より短い所定時間(2.235ms)ごとに割込み処理を実行する。
また、メイン処理又は割込み処理において、コマンドを生成することに決定したときは、コマンド生成手段73は、決定に応じたコマンドを生成して、これをバッファ領域74内の所定の格納領域に順次記憶させていく。
さらにまた、割込み処理では、バッファ領域74に送信未完了のコマンドが記憶されているか否かを判断し、送信未完了のコマンドが記憶されていると判断したときは、コマンド送信手段75は、バッファ領域74に記憶されている送信未完了のコマンドを、記憶された順に(古いものから順に)、1割込みにつき1回、サブ制御手段80に送信する。
さらに、コマンド送信手段75は、バッファ領域74に記憶されている同一のコマンドを2回送信したときは、そのコマンドの送信を完了したと判断して、そのコマンドをバッファ領域74から消去する。
このため、バッファ領域74に記憶されている1個のコマンドの送信完了までに2割込みを要し、2割込みにつき1個のコマンドがバッファ領域74から消去される。
また、メイン処理では、メイン処理の開始からリール31の回転開始までの間に、複数個のコマンド、具体的には、たとえば、設定値を示す設定値コマンド、メイン遊技状態を示す遊技状態コマンド、役の抽選結果を示す役抽選結果コマンド、及び演出の制御に用いる演出関連コマンド等を生成することに決定する。特に、役抽選結果コマンド、及び演出関連コマンドについては、スタートスイッチ41の操作からリール31の回転開始までの間に生成することに決定する。
さらにまた、割込み処理では、メイン処理の開始からリール31の回転開始までの間に、第1状態コマンド、第2状態コマンド、又は第3状態コマンドの生成条件を満たしたか否かを判断し、満たしたと判断したときは、これらを生成することに決定する。
さらに、メイン処理では、リール31の回転開始後に、リール31の回転が開始したことを示す情報を含む回転開始コマンドを生成することに決定する。
そして、コマンド生成手段73は、メイン処理又は割込み処理での決定に応じてコマンドを生成するとともに、これをバッファ領域74に順次記憶させていき、コマンド送信手段75は、割込み処理により、バッファ領域74に記憶されている送信未完了のコマンドをサブ制御手段80に順次送信していく。
ここで、リール31の回転開始時に、送信未完了のコマンドがバッファ領域74に記憶されていると、回転開始コマンドは、それより前に生成された全てのコマンドの送信が完了するまで、バッファ領域74で送信待ちの状態となる。すなわち、回転開始コマンドの生成から送信までの間に大きなタイムラグが発生する。
特に、メイン制御手段50側でのリール31の回転開始に合わせて、サブ制御手段80側で演出を出力する場合には、回転開始コマンドの生成から送信までのタイムラグが大きくなるほど、リール31の回転開始と演出の出力との間に発生するタイムラグが大きくなる。
そこで、メイン処理では、リール31の回転開始前に、コマンドを生成しない待機時間を設けている。そして、この待機時間の間に、コマンド送信手段75が、割込み処理により、バッファ領域74に記憶されている送信未完了のコマンドを全てサブ制御手段80に送信するようにしている。
また、メイン処理では、待機時間中に、送信未完了のコマンドがバッファ領域74に記憶されているか否かを判断し、送信未完了のコマンドが記憶されていないと判断したときは、待機時間を終了する。すなわち、メイン処理では、バッファ領域74に記憶されている全てのコマンドの送信が完了するまで、待機時間を継続する。
さらに、メイン処理では、待機時間の経過後に、リール31の回転を開始し、リール31の回転開始後に、回転開始コマンドを生成することに決定する。この決定に応じて、コマンド生成手段73は、回転開始コマンドを生成して、これをバッファ領域74に記憶させる。その後、コマンド送信手段75は、割込み処理により、バッファ領域74に記憶されている回転開始コマンドをサブ制御手段80に送信する。
そして、サブ制御手段80は、回転開始コマンドを受信したときは、リール31の回転開始と同期するように、回転開始コマンドに応じた演出を出力するように制御する。
これにより、回転開始コマンドの生成時には、バッファ領域74には送信未完了のコマンドが記憶されていないので、回転開始コマンドの生成から送信までのタイムラグを小さくすることができ、ひいてはリール31の回転開始と演出の出力との間に発生するタイムラグを小さくすることができる。
ここで、リール31の回転開始に合わせて出力する演出として、たとえば、演出用ランプ21を所定のパターンで点灯させる演出や、スピーカ22から所定のサウンドを出力する演出や、画像表示装置23に所定の画像を表示する演出や、所定の可動物(役物)を作動させる演出が挙げられる。
すなわち、サブ制御手段80は、回転開始コマンドを受信したときは、リール31の回転開始と同期するように、演出用ランプ21を所定のパターンで点灯させたり、スピーカ22から所定のサウンドを出力したり、画像表示装置23に所定の画像を表示したり、所定の可動物を作動させるように制御する。
また、たとえば、メイン制御手段50側で回転及び停止を制御するリール31に加えて、サブ制御手段80側で回転及び停止を制御するサブリールを備え、サブ制御手段80側では、回転開始コマンドを受信したときに、サブリールの回転を開始することがある。すなわち、リール31の回転開始に合わせて、サブリールの回転を開始することがある。
この場合、回転開始コマンドの生成から送信までのタイムラグを小さくすることで、リール31の回転開始とサブリールの回転開始との間に発生するタイムラグを小さくすることができる。
また、たとえば、スタートスイッチ41の操作からリール31の回転開始までの間に、フリーズ実行モードを移行させるためのストップスイッチ31の押し順を示す情報を含む押し順コマンドを生成して、これをサブ制御手段80に送信してもよい。
ここで、たとえば、メイン制御手段50側において、フリーズの実行確率が異なる複数種類のフリーズ実行モードを設けるとともに、特定の役抽選結果となった遊技では、フリーズ実行モードを移行させるためのストップスイッチ31の押し順を決定する。
また、特定の役抽選結果として、たとえば、ストップスイッチ42の押し順にかかわらず遊技者に対して付与する利益が同一となるリプレイ当選が挙げられる。
そして、フリーズ実行モードを移行させるためのストップスイッチ31の押し順を決定したときは、押し順コマンドを生成して、これをサブ制御手段80に送信する。
また、サブ制御手段80側では、たとえば、所定のフリーズ実行モードに移行させるか否かを決定し、所定のフリーズ実行モードに移行させることに決定したときは、受信した押し順コマンドに含まれる情報に基づいて、フリーズ実行モードを移行させるためのストップスイッチ31の押し順を報知する。
さらにまた、メイン制御手段50側では、フリーズ実行モードを移行させるための押し順として決定した押し順でストップスイッチ31が操作されたときは、所定のフリーズ実行モードに移行させるように制御する。
さらに、フリーズ制御手段70は、フリーズ実行モードに応じた確率でフリーズを実行する。そして、フリーズの実行に応じて、遊技者に対して、たとえば、AT遊技に移行させたり、AT遊技中の遊技回数や払出し枚数を上乗せする等の特典を付与する。
このように、スタートスイッチ41の操作からリール31の回転開始までの間に、種々のコマンドをメイン制御手段50側で生成してサブ制御手段80側に送信するが、リール31の回転開始前に待機時間を設け、この待機時間中にコマンドを送信することで、リール31の回転開始と演出の出力との間のタイムラグを小さくすることができる。
また、メイン制御手段50は、前遊技でのリール31の回転開始時からの経過時間を計測するタイマー64bと、タイマー64bによる計測時間が規定時間(4.1秒)を経過していないと判断したときは、規定時間を経過するまで、リール31の回転開始を遅延させるウエイト手段64cとを備えている。
そして、メイン処理では、待機時間の経過後、かつリール31の回転開始前に、タイマー64bによる計測時間が規定時間を経過したか否かを判断する。すなわち、メイン処理では、待機時間の経過後に、タイマー64bによる計測時間が規定時間を経過したか否かを判断し、経過したと判断したときは、リール31の回転を開始する。
このように、タイマー64bによる計測時間が規定時間を経過したか否かの判断前に、待機時間を設けているので、計測時間が規定時間に満たないときは、計測時間が規定時間を経過するまでの間に、バッファ領域74に記憶されている送信未完了のコマンドを送信することができる。
また、第1実施形態と同様に、コマンド生成手段73が生成する各コマンドは、2バイト(16ビット)の情報で構成されており、上位1バイト(8ビット)はコマンドの種類を示し、下位1バイト(8ビット)はコマンドの内容を示す。
さらにまた、本実施形態では、バッファ領域74は、コマンドの格納領域として、1バイトの格納領域を、第1格納領域から第64格納領域まで、64個有している。
ここで、1個のコマンドが2バイトの情報で構成されるのに対し、バッファ領域74内の1個の格納領域は1バイトである。このため、1個のコマンドは、上位1バイトと下位1バイトとが、それぞれ異なる格納領域に記憶される。たとえば、上位1バイトは、第1格納領域に記憶され、下位1バイトは、第2格納領域に記憶される。このように、1個のコマンドは、バッファ領域74内の2個の格納領域に分けて記憶される。よって、バッファ領域74には、最大で32個のコマンドを記憶可能である。
また、コマンド生成手段73は、コマンドを生成すると、これをバッファ領域74内の第1格納領域及び第2格納領域から順次記憶させていき、第63格納領域及び第64格納領域まで記憶させると、その次は再度、第1格納領域及び第2格納領域に記憶させる。
さらにまた、コマンド送信手段75は、バッファ領域74に記憶されているコマンドを2回送信したときは、そのコマンドの送信を完了したと判断して、そのコマンドをバッファ領域74から消去する。
たとえば、バッファ領域74内の第1格納領域及び第2格納領域に記憶されているコマンドを2回送信したときは、そのコマンドの送信を完了したと判断して、そのコマンドをバッファ領域74の第1格納領域及び第2格納領域から消去する。
このとき、第3格納領域及び第4格納領域に記憶されているコマンドがあっても、これを第1格納領域及び第2格納領域に移動させることはない。すなわち、コマンドの移動や書き換えは行わない。このため、第1格納領域から第64格納領域までの全ての格納領域を順次繰り返し使用することになる。
また、メイン制御手段50は、書込みポインタ74a、及び読込みポインタ74bを備えている。
書込みポインタ74aは、バッファ領域74内のいずれの格納領域にコマンドを記憶させるかを示す書込み位置を指定するものであって、コマンドが記憶されるごとに書込み位置を更新するものである。
読込みポインタ74bは、バッファ領域74内のいずれの格納領域に記憶されているコマンドを送信するかを示す読込み位置を指定するものであって、コマンドが送信されるごとに読込み位置を更新するものである。
本実施形態では、第1から第64までの各格納領域に対応する数値によって、書込み位置及び読込み位置をそれぞれ示している。
具体的には、コマンドを生成することに決定すると、コマンド生成手段73は、書込みポインタ74aが示す書込み位置(数値)に対応する格納領域にコマンドが記憶されているか否かを判断する。そして、コマンドが記憶されていないと判断したときは、書込みポインタ74aが示す書込み位置に対応する格納領域と、その次の格納領域との2つの格納領域に、生成したコマンドの上位1バイトと下位1バイトとをそれぞれ記憶させる。そして、書込みポインタ74aに「2」を加算することで、書込みポインタ74aの書込み位置を更新する。
たとえば、書込みポインタ74aが「5」のときは、「5」に対応する第5格納領域にコマンドが記憶されているか否かを判断する。そして、コマンドが記憶されていないと判断したときは、「5」に対応する第5格納領域にコマンドの上位1バイトを記憶させるとともに、その次の第6格納領域にコマンドの下位1バイトを記憶させる。そして、書込みポインタ74aに「2」を加算して「7」にする。なお、書込みポインタ74aは、「63」のときに「2」が加算されると、次は、「65」ではなく、「1」に戻る。
また、コマンドを送信するときは、コマンド送信手段75は、読込みポインタ74bが示す読込み位置(数値)を取得し、取得した数値が奇数か否かを判断する。ここで、取得した数値が奇数のときは、その数値に対応する格納領域に記憶されている情報をコマンドの上位1バイトとして取得するとともに、その次の格納領域に記憶されている情報をコマンドの下位1バイトとして取得して、これらの2バイトの情報を1個のコマンドとしてサブ制御手段80に送信する。そして、読込みポインタ74bに「1」を加算することで、読込みポインタ74bの読込み位置を更新する。
たとえば、読込みポインタ74bが「3」のときは、「3」に対応する第3格納領域に記憶されている情報をコマンドの上位1バイトとして取得するとともに、その次の第4格納領域に記憶されている情報をコマンドの下位1バイトとして取得し、これら2バイトの情報を1個のコマンドとしてサブ制御手段80に送信する。そして、読込みポインタ74bに「1」を加算して「4」にする。
また、読込みポインタ74bから取得した数値が偶数のときは、その数値から「1」を減算した数値に対応する格納領域に記憶されている情報をコマンドの上位1バイトとして取得するとともに、その次の格納領域に記憶されている情報をコマンドの下位1バイトとして取得する。そして、これらの2バイトの情報を1個のコマンドとしてサブ制御手段80に送信する。また、読込みポインタ74bが偶数のときは、同一のコマンドの2回目の送信となる。このため、コマンドを送信したときは、そのコマンドを構成する情報を格納領域から消去する。そして、読込みポインタ74bに「1」を加算することで、読込みポインタ74bを更新する。
たとえば、読込みポインタ74bが「4」のときは、「4」から「1」を減算した「3」に対応する第3格納領域に記憶されている情報をコマンドの上位1バイトとして取得するとともに、その次の第4格納領域に記憶されている情報をコマンドの下位1バイトとして取得して、これら2バイトの情報を1個のコマンドとしてサブ制御手段80に送信する。
また、読込みポインタ74bが「4」のときは、読込みポインタ74bが「3」のときと同一のコマンドを送信することになる。このため、コマンドを送信したときは、第3格納領域及び第4格納領域に記憶されている情報を消去する。これにより、送信が完了したコマンドをバッファ領域74から消去する。そして、読込みポインタ74bに「1」を加算して「5」にする。なお、読込みポインタ74bは、「64」のときに「1」が加算されると、次は、「65」ではなく、「1」に戻る。
このように、読込みポインタ74bについては、「1」を加算することで読込み位置を更新する。また、読込みポインタ74bが奇数のときは、読込みポインタ74bに対応する格納領域に記憶されている情報を上位1バイトとし、その次の格納領域に記憶されている情報を下位1バイトとして、2バイトのコマンドを送信する。さらに、読込みポインタ74bが偶数のときは、前回と同一のコマンドを送信する。このようにして、同一のコマンドを2回送信する。そして、同一のコマンドを2回送信したときは、そのコマンドの送信を完了したとして、そのコマンドをバッファ領域74から消去する。
なお、コマンド生成手段73は、メイン処理での決定に応じてコマンドを生成するときと、割込み処理での決定に応じてコマンドを生成するときとを有する。このため、書込みポインタ74aは、メイン処理で更新されるときと、割込み処理で更新されるときとを有する。
これに対し、コマンド送信手段75は、割込み処理によって、バッファ領域74に記憶されているコマンドを送信し、メイン処理によってバッファ領域74に記憶されているコマンドを送信することはない。このため、読込みポインタ74bは、割込み処理によってのみ更新される。
また、読込みポインタ74bが示す読込み位置を取得した後に、書込みポインタ74aが示す書込み位置を取得し、取得した読込み位置と書込み位置とを比較することで、送信未完了のコマンドがバッファ領域74に記憶されているか否かを判断する。
ここで、読込みポインタ74bの数値と書込みポインタ74aの数値とが一致するときは、バッファ領域74に記憶されているコマンドが全て送信された(送信未完了のコマンドがバッファ領域74に記憶されていない)ことを意味する。
これに対し、読込みポインタ74bの数値と書込みポインタ74aの数値とが一致しないときは、送信未完了のコマンドがバッファ領域74に記憶されていることを意味する。
このため、メイン制御手段50は、待機時間中は、まず、読込みポインタ74bの数値を取得し、その後、書込みポインタ74aの数値を取得して、これらの数値が一致するか否かを判断する。ここで、これらの数値が一致しないと判断したときは、再度、読込みポインタ74bの数値を取得し、その後、書込みポインタ74aの数値を取得して、これらの数値が一致するか否かを判断する。すなわち、待機時間中は、これらの数値の取得、及び一致するか否かの判断を、一致すると判断するまで繰り返す。そして、これらの数値が一致すると判断したときは、待機時間を終了する。
なお、先に、書込みポインタ74aの数値を取得し、その後、読込みポインタ74bの数値を取得して、これらの数値が一致するか否かを判断することも考えられる。しかし、書込みポインタ74aの数値の取得後、読込みポインタ74bの数値の取得前に、バッファ領域74に新たなコマンドが記憶されることがある。この場合、送信未完了のコマンドがバッファ領域74に記憶されているにもかかわらず、取得した書込みポインタ74aの数値と、取得した読込みポインタ74bの数値とが一致することとなり、送信未完了のコマンドがバッファ領域74に記憶されていることを正しく判断することができなくなってしまう。
そこで、先に、読込みポインタ74bの数値を取得し、その後、書込みポインタ74aの数値を取得して、これらの数値が一致するか否かを判断する。ここで、読込みポインタ74bの数値の取得後、書込みポインタ74aの数値の取得前に、バッファ領域74に新たなコマンドが記憶されたとする。この場合、取得した読込みポインタ74bの数値と、取得した書込みポインタ74aの数値とが一致しないので、送信未完了のコマンドがバッファ領域74に記憶されていることを正しく判断することができる。
続いて、第3実施形態における遊技進行処理の流れを、図10に示すフローチャートに基づき説明する。
図10のステップS121において、役抽選手段61により役の抽選が行われると、コマンド生成手段73は、ステップS122では、役抽選結果コマンドを生成し、次のステップ123では、演出関連コマンドを生成して、これらをバッファ領域74内の所定の格納領域にそれぞれ記憶させる。そして、次のステップS124に進む。
メイン制御手段50は、ステップS124では、読込みポインタ74bの数値を取得し、次のステップS125では、書込みポインタ74aの数値を取得して、次のステップS126において、取得した両数値が一致するか否かを判断する。ここで、取得した両数値が一致すると判断したときは、次のステップS127に進む。これに対し、取得した両数値が一致しないと判断したときは、ステップS124に戻る。
すなわち、読込みポインタ74bの数値の取得、書込みポインタ74aの数値の取得、及び取得した両数値が一致するか否かの判断を、一致すると判断するまで繰り返す。また、この処理を繰り返す期間が、待機時間となる。そして、取得した両数値が一致すると判断したときは、待機時間の終了となる。
このため、待機時間の長さは、バッファ領域74に記憶されている送信未完了のコマンドの個数に応じて異なることとなる。
また、待機時間の終了時には、バッファ領域74に記憶されている全てのコマンドの送信が完了していることとなる。
ステップS127では、メイン制御手段50は、タイマー64bによる計測時間(前遊技でのリール31の回転開始時からの経過時間)が、規定時間(4.1秒)を経過したか否かを判断する。また、メイン制御手段50は、規定時間を経過したと判断するまで、ステップS127を繰り返す。この処理を繰り返す間、ウエイト手段64cは、リール31の回転開始を遅延させる。そして、規定時間を経過したと判断したときは、次のステップS128に進む。
なお、ステップS127の前に待機時間を設けているので、計測時間が規定時間に満たないときは、計測時間が規定時間を経過するまでの間に、バッファ領域74に記憶されている送信未完了のコマンドを送信することができる。
ステップS128において、リール制御手段64が全てのリール31の回転を開始させると、次のステップS129に進み、コマンド生成手段73は、回転開始コマンドを生成して、これをバッファ領域74内の所定の格納領域に記憶させる。そして、次のステップS130に進む。
ステップS130では、メイン制御手段50は、ストップスイッチ42がオンにされたか否かを判断し続ける。ストップスイッチ42がオンにされると次のステップS131に進み、リール制御手段64は、オンにされたストップスイッチ42に対応するリール31を停止制御する。そして、次のステップS132に進む。
ステップS132では、コマンド生成手段73は、停止したリール31を示す停止リールコマンドを生成して、これをバッファ領域74内の所定の格納領域に記憶させる。そして、次のステップS133に進む。
ステップS133では、メイン制御手段50は、全てのリール31が停止したか否かを判断する。
ここで、全てのリール31が停止したと判断したときは次のステップS134に進み、コマンド生成手段73は、全リール31の停止時の図柄の組合せを示す停止図柄コマンドを生成して、これをバッファ領域74内の所定の格納領域に記憶させる。そして、本フローチャートにより処理を終了する。
これに対し、回転中のリール31があると判断したときは、ステップS130に戻る。
以上、本発明の一実施形態について説明したが、本発明は、上述した実施形態に限定されるものではなく、以下のような種々の変形が可能である。
(1)上記実施形態では、メイン側エラー検知手段71及びサブ側エラー検知手段86を備えた。すなわち、メイン制御手段50側及びサブ制御手段80側でそれぞれ別個にエラー検知手段を備えた。
しかし、これに限らず、エラー検知手段は、たとえば、メイン制御手段50側にのみ備えてもよく、また、サブ制御手段80側にのみ備えてもよい。
(2)上記実施形態では、エラー解除手段72は、メイン制御手段50側にのみ備えた。
しかし、これに限らず、エラー解除手段についても、エラー検知手段と同様に、たとえば、サブ制御手段80側にのみ備えてもよく、また、メイン制御手段50側及びサブ制御手段80側にそれぞれ別個に備えてもよい。
ただし、メイン制御手段50からサブ制御手段80に一方向でコマンドを送信するため、たとえば、エラー検知手段をメイン制御手段50側に備えたときは、エラー解除手段もメイン制御手段50側に備える必要がある。
(3)上記実施形態では、メイン側エラー検知手段71及びサブ側エラー検知手段86は、各種のセンサやスイッチのオン/オフの組合せやオン/オフの状態の継続時間等によってエラーを検知した。すなわち、エラー検知手段は、ソフトウエアによって構成した。
しかし、これに限らず、エラー検知手段は、たとえば、ハードウエアによって構成してもよい。
(4)上記実施形態では、2.235msごとにタイマー割込みを行うように設定した。しかし、これに限らず、タイマー割込みの周期は、適宜設定することができる。
また、上記実施形態では、8割込みごとに第1状態コマンド及び第2状態コマンドを生成し、10割込みごとに第3状態コマンドを生成した。しかし、これに限らず、これらのコマンドを何割込みごとに生成するかは、各種のセンサやスイッチのオン/オフを検知し損なわず、かつバッファ領域74が溢れない範囲内で、適宜設定することができる。
(5)上記実施形態では、第1〜第3状態コマンドは、これらに含む情報に変化があったことを条件に、8割込み又は10割込みごとに生成した。しかし、これに限らず、第1〜第3状態コマンドは、これらに含む情報に変化があったか否かにかかわらず、常に、所定時間(たとえば、8割込み又は10割込み)ごとに生成してもよい。
(6)上記実施形態では、コマンド生成手段73は、同一のコマンドを2回送信し、コマンド受信手段84は、所定時間内に同一のコマンドを2回受信しなかったときは、そのコマンドを正しく受信しなかったと判断した。しかし、これに限らず、同一のコマンドを何回送信するかは、2回以上であれば、適宜設定することができる。同様に、同一のコマンドを何回受信すれば正しく受信したと判断するかについても、2回以上であれば、適宜設定することができる。
また、コマンドの送信回数は、1回のみにしてもよい。
(7)上記実施形態では、設定キースイッチ45がオンの状態か又はオフの状態かを示す情報は、第1状態コマンドに含み、ベットスイッチ40(操作スイッチ)の操作が有効の状態か又は無効の状態かを示す情報は、第2状態コマンドに含むようにした。
しかし、これに限らず、設定キースイッチ45がオンの状態か又はオフの状態かを示す情報も、操作スイッチの操作が有効の状態か又は無効の状態かを示す情報も、1つのコマンドに含むようにしてもよい。そして、この1つのコマンドに含まれる情報に応じて、ベット用LED24(発光体)を青色に発光させたり、赤色に発光させたり、消灯させるように制御して、操作スイッチの操作が有効の状態か又は無効の状態を示したり、設定キースイッチ45がオンの状態であることを示すようにしてもよい。
(8)上記実施形態では、発光体としてカラーLEDを備え、これを赤色や青色やレインボーカラーに発光させた。しかし、発光体の出力に応じて、操作スイッチの操作が有効の状態か又は無効の状態かを示したり、設定キースイッチ45がオンの状態であることを示すことができれば、発光体はカラーLEDに限らず、発光色も赤色や青色やレインボーカラーに限らない。
(9)上記実施形態では、設定キースイッチ45がオンの状態であることを、発光体の出力(青色の発光)によって示した。しかし、これに限らず、たとえば、フロントマスク部が開放された状態であることや、スイッチカバーが開放された状態であることや、設定変更スイッチ45がオンの状態であることを、発光体の出力によって示してもよい。
(10)上記実施形態では、バッファ領域74に記憶されているコマンドを送信するための待ち時間は、コマンド集中区間の経過後に設けた。しかし、これに限らず、コマンド集中区間の途中に待ち時間を設けてもよい。
また、上記実施形態では、待ち時間は、32割込み(71.52ms)に設定したが、これに限らず、適宜設定することができる。
さらにまた、上記実施形態では、コマンド集中区間で設定値コマンド及び遊技状態コマンド1〜3を生成した。しかし、これに限らず、コマンド集中区間で生成するコマンドの種類や個数は、スロットマシン10の機種に応じて適宜設定することができる。
(11)上記実施形態では、待ち時間は、コマンド集中区間の開始時から待ち時間の開始時までの間に生成したコマンドを送信するのに要する時間より長く設定したが、コマンド集中区間の開始時から待ち時間の開始時までの間に生成したコマンドを送信するのに要する時間より短く設定してもよい。
また、バッファ領域74に記憶されているコマンドが全て送信(消去)されるまで、つまりバッファ領域74が空になるまで、待ち時間を継続するように制御してもよい。
さらに、バッファ領域74に記憶されているコマンドの個数が所定数以下になるまで、待ち時間を継続するように制御してもよい。
すなわち、待ち時間は、一定時間に固定する場合に限らず、バッファ領域74に記憶されているコマンドの個数に応じて変動するようにしてもよい。
(12)たとえば、スタートスイッチ41に対応する発光体(たとえば、スタート用LED)を備え、これをサブ制御手段80の出力側に電気的に接続してもよい。また、メイン制御手段50側からサブ制御手段80側に送信するコマンドに、スタートスイッチ41の操作の有効/無効の状態を示す情報を含むようにしてもよい。そして、サブ制御手段80側では、受信したコマンドに含まれるスタートスイッチ41の操作の有効/無効の状態を示す情報に基づいて、スタート用LEDの出力を制御するようにしてもよい。
(13)上記実施形態では、割込み処理では、待ち時間中又はリール31の回転中か否かにかかわらず、第1割込みカウンタ51のカウント値が「7」になるごと(8割込みごと)に、メイン側エラー検知手段71によりエラーを検知したか否かを判断した。
しかし、これに限らず、たとえば、割込み処理では、待ち時間中又はリール31の回転中か否かにかかわらず、1割込みごとに、メイン側エラー検知手段71によりエラーを検知したか否かを判断してもよい。そして、エラーを検知したことを条件に、特定エラーを検知した旨の情報を含む第1及び第2状態コマンドの生成(生成することの決定)を、8割込みごとに行うようにしてもよい。
このようにしても、割込み処理において、第1及び第2状態コマンドを、これらに含む情報に変化があったことを条件に、8割込みごとに生成することができる。
(14)上記実施形態で示したコマンドはあくまでも例示であり、生成するコマンドの種類及び個数、並びに各コマンドに含む情報は、スロットマシン10の機種に応じて適宜設定することができる。
(15)第3実施形態では、コマンド生成手段73は、設定変更モード中であるか否かにかかわらず、設定キースイッチ45や設定変更スイッチ46等のオン/オフの状態に変化があったことを条件に、8割込みごとに、設定キースイッチ45や設定変更スイッチ46等のオン/オフの状態を示す情報を含む第1状態コマンドを生成した。
しかし、これに限らず、コマンド生成手段73は、設定変更モード中であるか否かにかかわらず、かつ設定キースイッチ45や設定変更スイッチ46等のオン/オフの状態に変化があったか否かにかかわらず、常に、所定時間(たとえば、8割込み)ごとに、設定キースイッチ45や設定変更スイッチ46等のオン/オフの状態を示す情報を含む第1状態コマンドを生成してもよい。
(16)第3実施形態では、メイン制御手段50は、待機時間中に、先に読込みポインタ74bの数値を取得し、その後に書込みポインタ74aの数値を取得して、取得した両数値が一致するか否かを判断することで、送信未完了のコマンドがバッファ領域74に記憶されているか否かを正しく判断するようにした。
しかし、送信未完了のコマンドがバッファ領域74に記憶されているか否かの判断は、これに限られるものではない。
たとえば、メイン制御手段50は、待機時間中に、先に書込みポインタ74aの数値を取得し、その後に読込みポインタ74bの数値を取得して、取得した両数値が一致するか否かを判断するとともに、書込みポインタ74aの数値を取得してから、読込みポインタ74bの数値を取得して、取得した両数値が一致するか否かを判断するまでの間、割込み処理によるコマンドの生成を禁止してもよい。
また、たとえば、メイン制御手段50は、待機時間中に、先に読込みポインタ74bの数値を取得し、その後に書込みポインタ74aの数値を取得して、取得した両数値が一致するか否かを判断するとともに、読込みポインタ74bの数値を取得してから、書込みポインタ74aの数値を取得して、取得した両数値が一致するか否かを判断するまでの間、割込み処理によるコマンドの生成を禁止してもよい。
すなわち、メイン制御手段50は、待機時間中における、送信未完了のコマンドがバッファ領域74に記憶されているか否かの判断時に、割込み処理によるコマンドの生成を禁止してもよい。
このようにしても、送信未完了のコマンドがバッファ領域74に記憶されているか否かを正しく判断することができる。
(17)第3実施形態では、バッファ領域74に記憶されている全てのコマンドの送信が完了するまで、待機時間を継続し、送信未完了のコマンドが記憶されていないと判断したときは、待機時間を終了した。
このため、バッファ領域74に記憶されている送信未完了のコマンドの個数に応じて、待機時間の長さが異なっていた。
しかし、これに限らず、待機時間は、バッファ領域74に記憶されている全てのコマンドの送信を完了するのに十分な長さであれば、常に一定の長さに固定してもよい。
(18)第3実施形態では、メイン制御手段50は、タイマー64bによる計測時間(前遊技でのリール31の回転開始時からの経過時間)が、規定時間(4.1秒)を経過したか否かを判断し、計測時間が規定時間を経過するまで、リール31の回転開始を遅延させ、計測時間が規定時間を経過したときは、リール31の回転を開始させた。
そして、タイマー64bによる計測時間が規定時間を経過したか否かの判断前に、バッファ領域74に記憶されているコマンドを送信するための待機時間を設けた。
しかし、リール31の回転開始の遅延処理と、待機時間との関係は、これに限られるものではない。
たとえば、メイン制御手段50は、スタートスイッチ41が操作されたときは、タイマー64bによる計測時間が規定時間を経過したか否かにかかわらず、リール31の回転を開始させるとともに、計測時間が規定時間を経過するまでは、ストップスイッチ42の操作を無効の状態にし、計測時間が規定時間を経過したときは、ストップスイッチ42の操作を有効の状態にしてもよい。
この場合、待機時間は、リール31の回転開始前に設けることが好ましい。
これにより、リール31の回転開始に合わせて演出を出力する場合に、リール31の回転開始と演出の出力との間に発生するタイムラグを小さくすることができる。
なお、計測時間が規定時間を経過する前に、リール31の回転を開始させる場合には、たとえば、左、中、右の順に、3個のリール31の回転を順次開始させてもよい。
また、たとえば、スタートスイッチ41が操作されたときに、役の抽選を行うとともに、フリーズ及び擬似遊技を実行するか否かを決定し、フリーズ及び擬似遊技を実行することに決定したときは、遊技の進行を一時停止(本遊技を中断)して、擬似遊技を開始することがある。
ここで、フリーズ(フリーズ演出ともいう。)は、操作スイッチの機能を一時停止状態にするものであり、メイン制御手段50側で制御する演出の一つである。
また、擬似遊技は、フリーズ中に実行される遊技であり、操作スイッチの機能が遊技結果を得るためのものとして有効になっていない遊技である。このため、擬似遊技でリール31が停止(一時停止、又は仮停止)しても、これは遊技結果を示すものではない。
そして、擬似遊技では、たとえば、リール31を逆回転させるなど、通常とは異なる態様でリール31を変動させることがある。
この場合、リール31の変動開始前に、メイン処理により、待機時間を設け、この待機時間の間に、割込み処理により、バッファ領域74に記憶されている送信未完了のコマンドを全てサブ制御手段80に送信する。
また、待機時間の経過後に、メイン処理により、リール31の変動を開始するとともに、リール31の変動が開始したことを示す変動開始コマンドを生成して、これをバッファ領域74に記憶させ、その後、割込み処理により、バッファ領域74に記憶されている変動開始コマンドをサブ制御手段80に送信する。
そして、サブ制御手段80は、変動開始コマンドを受信したときは、リール31の変動開始と同期するように、変動開始コマンドに応じた演出を出力する。
これにより、フリーズ中に擬似遊技を実行するとともに、擬似遊技中にリール31を変動させる(リール31の変動を伴うフリーズを実行する)場合において、リール31の変動開始に合わせて演出を出力するときに、リール31の変動開始と演出の出力との間に発生するタイムラグを小さくすることができる。
また、フリーズ中は、たとえば、図柄が一定の揺れ幅をもって上下移動を繰り返すようにリール31を動かす揺れ変動を行い、その後、リール31を逆回転させるなど、リール31の動作を切り替えることがある。
この場合、リール31の動作の切替え前に、メイン処理により、待機時間を設け、この待機時間の間に、割込み処理により、バッファ領域74に記憶されている送信未完了のコマンドを全てサブ制御手段80に送信する。
また、待機時間の経過後に、メイン処理により、リール31の動作を切り替えるとともに、リール31の動作を切り替えたことを示す動作切替えコマンドを生成して、これをバッファ領域74に記憶させ、その後、割込み処理により、バッファ領域74に記憶されている動作切替えコマンドをサブ制御手段80に送信する。
そして、サブ制御手段80は、動作切替えコマンドを受信したときは、リール31の動作の切替えタイミングと同期するように、動作切替えコマンドに応じた演出を出力する。
これにより、フリーズ中におけるリール31の動作の切替えタイミングに合わせて演出を出力するときに、リール31の動作の切替えタイミングと演出の出力との間に発生するタイムラグを小さくすることができる。
(19)第3実施形態では、コマンド送信手段75は、バッファ領域74に記憶されている同一のコマンドを2回送信したときは、そのコマンドの送信を完了したと判断して、そのコマンドをバッファ領域74から消去した。
しかし、これに限らず、コマンド送信手段75は、バッファ領域74に記憶されているコマンドを1回送信したときは、そのコマンドの送信を完了したと判断してもよい。
すなわち、第3実施形態では、1回送信では送信未完了、2回送信で送信完了としたが、1回送信で送信完了としてもよい。
また、コマンド送信手段75は、コマンドの送信を完了しても、そのコマンドをバッファ領域74から消去せずに残しておいてもよい。
そして、コマンド生成手段73は、送信済みのコマンドが記憶されている格納領域に、新たに生成したコマンドを上書きするようにしてもよい。
なお、上記(1)〜(19)の各変形例は、それぞれ単独で適用される場合に限られるものではなく、これらを適宜組み合わせて適用することもできる。
また、第1〜第3実施形態についても、これらを適宜組み合わせることができる。
<付記>
本願の原出願の出願当初の請求項に係る発明(当初発明)が解決しようとする課題、当初発明に係る課題を解決するための手段及び当初発明の効果は、以下の通りである。
(a)当初発明が解決しようとする課題
当初発明は、遊技の進行を制御するメイン制御手段と、演出の出力を制御するサブ制御手段とを備え、メイン制御手段からサブ制御手段にコマンドを送信する遊技機に関するものである。
従来の遊技機として、遊技の進行を制御するメイン制御手段と、演出の出力を制御するサブ制御手段とを備え、メイン制御手段からサブ制御手段にコマンドを送信し、サブ制御手段側では、受信したコマンドに応じて演出の出力を制御するスロットマシンが知られている(特開2011−182839号公報参照)。
このスロットマシンでは、設定値を示すコマンドをメイン制御手段からサブ制御手段に送信し、サブ制御手段側では、受信した設定値を示すコマンドに応じてAT遊技の実行確率を異ならせることで、遊技者にとっての有利度を異ならせるようにしている。
このため、設定値が不正に変更されないように、メイン制御手段側で設定変更に関するエラー(不正又は異常)の検知を行い、エラーを検知したときは、その旨を示すコマンドをサブ制御手段に送信して、サブ制御手段側で報知するようにしている。
ここで、スロットマシンでは、セキュリティの関係上、メイン制御手段側のメモリの容量に一定の制限がある。
このため、遊技の進行の制御とは直接関係のない設定変更に関するエラーの検知を、サブ制御手段側で実行することが考えられる。
しかし、設定変更に関するエラーの検知をサブ制御手段側で実行しようとすると、設定変更時にメイン制御手段側からサブ制御手段側に送信するコマンドが増加することになるため、サブ制御手段側での設定変更に関する処理に混乱が生じるおそれがある。
したがって、当初発明が解決しようとする課題は、サブ制御手段側での設定変更に関する処理に混乱が生じないようにしつつ、設定変更に関するエラーの検知をサブ制御手段側で実行可能にすることである。
(b)当初発明に係る課題を解決するための手段(なお、かっこ書きで、対応する実施形態を示す。)
第1の解決手段は、
遊技の進行を制御するメイン制御手段(50)と、
演出の出力を制御するサブ制御手段(80)と、
前記メイン制御手段と電気的に接続され、遊技者にとっての有利度を定める設定値が変更可能となる設定変更モードにするとき及び前記設定変更モードを終了するときに操作されるモード切替えスイッチ(設定キースイッチ45)と
を備え、
前記メイン制御手段は、
所定時(電源投入時)に前記モード切替えスイッチがオンの状態であることを条件に前記設定変更モードにするとともに、前記設定変更モード中に前記モード切替えスイッチがオフの状態にされたことを条件に前記設定変更モードを終了する設定値変更手段(60)と、
コマンドを生成するコマンド生成手段(73)と、
生成した前記コマンドを生成順に前記サブ制御手段に送信するコマンド送信手段(75)と
を備え、
前記コマンド生成手段は、
前記設定変更モード中であるか否かにかかわらず、所定時間(8割込み(17.88ms))ごとに、前記モード切替えスイッチのオン/オフの状態に変化があったことを条件に、前記モード切替えスイッチのオン/オフの状態を示す情報を含むコマンドC1(第1状態コマンド)を生成し、
前記設定変更モードが終了したときは、コマンドC1の生成を待ってから、前記設定変更モードが終了したことを示す情報を含むコマンドC2(設定変更終了コマンド)を生成する
ことを特徴とする。
第2の解決手段は、第1の解決手段において、
前記コマンド生成手段は、電源投入時には、前記モード切替えスイッチのオン/オフの状態に変化があったか否かにかかわらず、コマンドC1を生成する
ことを特徴とする。
第3の解決手段は、第1又は第2の解決手段において、
コマンドC2は、前記設定変更モードの終了時における前記設定値を示す情報を含み、
前記サブ制御手段は、前記設定値を記憶するサブ側設定値記憶手段(88)を備えており、前記サブ側設定値記憶手段に記憶されている前記設定値に応じて演出の出力を制御するとともに、コマンドC2を受信したときは、受信したコマンドC2に含まれる前記設定値を示す情報に基づいて、前記サブ側設定値記憶手段が記憶する前記設定値を更新する
ことを特徴とする。
第4の解決手段は、第1〜第3の解決手段において、
前記サブ制御手段は、前記モード切替えスイッチがオンの状態であることを示す情報を含むコマンドC1を受信したときは、前記設定変更モード中であるか否かにかかわらず、前記モード切替えスイッチがオンの状態であることを報知する
ことを特徴とする。
第5の解決手段は、第1〜第4の解決手段において、
前記メイン制御手段と電気的に接続され、前記設定値を変更するときに操作される設定変更スイッチ(46)を備え、
前記設定変更スイッチは、操作によりオン/オフの状態が変化するように形成され、
前記設定値変更手段は、前記設定変更モード中に、前記設定変更スイッチが操作されるごとに、前記設定値を順次変更するように制御し、
コマンドC1は、前記設定変更スイッチのオン/オフの状態を示す情報を含み、
前記コマンド生成手段は、前記設定変更モード中であるか否かにかかわらず、前記所定時間ごとに、前記設定変更スイッチのオン/オフの状態に変化があったことを条件に、コマンドC1を生成し、
前記サブ制御手段は、前記設定変更スイッチがオンの状態であることを示す情報を含むコマンドC1を受信したときは、前記設定変更モード中であるか否かにかかわらず、前記設定変更スイッチがオンの状態であることを報知する
ことを特徴とする。
第6の解決手段は、
遊技の進行を制御するメイン制御手段と、
演出の出力を制御するサブ制御手段と、
前記メイン制御手段と電気的に接続され、遊技者にとっての有利度を定める設定値が変更可能となる設定変更モードにするとき及び前記設定変更モードを終了するときに操作されるモード切替えスイッチと
を備え、
前記メイン制御手段は、
所定時に前記モード切替えスイッチがオンの状態であることを条件に前記設定変更モードにするとともに、前記設定変更モード中に前記モード切替えスイッチがオフの状態にされたことを条件に前記設定変更モードを終了する設定値変更手段と、
コマンドを生成するコマンド生成手段と、
生成した前記コマンドを生成順に前記サブ制御手段に送信するコマンド送信手段と
を備え、
前記コマンド生成手段は、
前記設定変更モード中であるか否かにかかわらず、所定時間ごとに、前記モード切替えスイッチのオン/オフの状態を示す情報を含むコマンドC1を生成し、
前記設定変更モードが終了したときは、コマンドC1の生成を待ってから、前記設定変更モードが終了したことを示す情報を含むコマンドC2を生成する
ことを特徴とする。
(作用)
当初発明においては、設定値変更手段は、所定時にモード切替えスイッチがオンの状態であることを条件に、設定変更モードにするとともに、設定変更モード中にモード切替えスイッチがオンの状態からオフの状態にされたことを条件に、設定変更モードを終了する。
また、コマンド生成手段は、設定変更モード中であるか否かにかかわらず、所定時間ごとに、モード切替えスイッチのオン/オフの状態に変化があったことを条件に、モード切替えスイッチのオン/オフの状態を示す情報を含むコマンドC1を生成する。
さらに、コマンド生成手段は、設定変更モードが終了したときは、設定変更モードが終了したことを示す情報を含むコマンドC2を生成する。
そして、コマンド送信手段は、生成されたコマンドを生成された順にサブ制御手段に送信する。
このため、サブ制御手段側では、設定変更モード中であるか否かにかかわらず、モード切替えスイッチがオンの状態か又はオフの状態かを判断することができるので、設定変更に関するエラー(不正又は異常)が発生したか否かを判断することができる。
また、モード切替えスイッチがオンの状態からオフの状態になり、設定変更モードが終了したときに、直ちにコマンドC2を生成すると、所定時間ごとに繰り返すコマンドC1の生成タイミングとの関係で、先にコマンドC1が生成され、後でコマンドC2が生成される場合と、先にコマンドC2が生成され、後でコマンドC1が生成される場合とが混在する可能性がある。これでは、サブ制御手段側での処理に混乱が生じてしまう。
そこで、当初発明では、コマンド生成手段は、設定変更モードが終了したときは、コマンドC1の生成を待ってから、コマンドC2を生成する。
このため、設定変更モードの終了時には、コマンド送信手段は、常に、コマンドC1、コマンドC2の順に、サブ制御手段にコマンドを送信し、サブ制御手段側では、常に、コマンドC1、コマンドC2の順に、コマンドを受信するので、サブ制御手段側での処理に混乱が生じないようにすることができる。
(c)当初発明の効果
当初発明によれば、サブ制御手段側での設定変更に関する処理に混乱が生じないようにしつつ、設定変更に関するエラーの検知をサブ制御手段側で実行可能にすることができる。