<遊技機の構造>
図1は前扉を閉めた状態を示すスロットマシンの正面図、図2は前扉を180度開いた状態を示すスロットマシンの正面図を示す。なお、以下の説明において、上、下、左又は右の方向は、特に断らない限り、スロットマシンに対向している遊技者から見た方向を指すものとする。
図1及び図2中、100はスロットマシンを示すもので、このスロットマシン100は、図1に示すように、スロットマシン本体120と、このスロットマシン本体120の前面片側にヒンジ等により開閉可能に取り付けられた前扉130とを備えている。前記前扉130の前面には、図1に示すように、ほぼ中央にゲーム表示部131を設け、ゲーム表示部131の右下隅部に、遊技者がメダルを投入するためのメダル投入口132を設け、メダル投入口132の下側には、メダル投入口132から投入され、詰まってしまったメダルをスロットマシン100外に強制的に排出するためのリジェクトボタン133が設けられている。
また、前記ゲーム表示部131の左下方には、ゲームを開始するためのスタートスイッチ134を設けてあり、3つのリールのそれぞれに対応して3つのストップボタン140を設けてある。前扉の下端部中央には、メダルの払出し口135を設けてある。前記ゲーム表示部131の上側には、液晶表示装置LCDが設けてある。
液晶表示装置LCDの位置には可動体50が設けられている。図15等を参照して後に詳しく説明するが、可動体50は、水平に設けられ、その状態で上下することにより演出に用いられる可動要素51、及び、可動要素51のバランスを崩さないように互いに同期して動作する2つの駆動部(ステッピンモータ)56を備える。可動要素51が水平を保つことは演出の品質上重要であり、可動要素51が傾いたり、一端の動作が他端の動作に遅れることなどは避けなければならない(符号については図15等を参照されたい)。
ストップボタン140とメダル投入口132の間、具体的には、右端のストップボタン140の右上側、かつ、メダル投入口132の左側には、操作部としてのジョグダイヤルPANが設けられている。
ジョグダイヤルPANは、図5(a)に示すように、左右に回転可能に設けられたリング状の部分であるダイヤルJDと、当該リングの回転中心に設けられた押しボタンスイッチPHSWの2つの部分を備える。遊技者は、ジョグダイヤルPANのダイヤルJDを左右に回すことができるとともに、その中心頂部の押しボタンスイッチPHSWを押下することができる。図示しないが、当該押しボタンスイッチPHSWの内部には発光素子が設けられ、例えば、押下時に点灯する。ダイヤルJDは複数のステップ(例えばステップ数=30、その角度=12度)で回転するようになっている。ダイヤルJDの回転方向及び/又は回転量(角度)、並びに押しボタンスイッチのオンオフに応じて所定の演出が行われる。
ジョグダイヤルPANは、図5(b)に示すように、押しボタンスイッチPHSWとともに、ダイヤルJDの回転を検知するための2つのセンサ[1]JS1と[2]JS2を備えている。回転に応じてセンサ[1]JS1と[2]JS2はH/Lの2つのデジタル信号を出力する。これについては後にさらに説明を加える。
スロットマシン本体120の内部には、図2に示すように、その内底面に固定され、内部に複数のメダルを貯留して、貯留したメダルを前扉130の前面に設けた払出し口135に1枚ずつ払い出すためのホッパ装置121が設置されている。このホッパ装置121の上部には、上方に向けて開口し、内部に複数のメダルを貯留するホッパタンク122を備えている。スロットマシン本体120の内部には、前扉130を閉めたときにゲーム表示部131が来る位置に三個のリールからなるリールユニット203が設置されている。リールユニット203は、外周面に複数種類の図柄が配列されている3つのリール(第1リール〜第3リール)を備えている。ゲーム表示部131には開口部が設けられていて、それを通して遊技者が前記リールユニット203の各回転リールの図柄を見ることができるようになっている。ホッパ装置121の上側のリールユニット203との間には電源部205が設けられている。
前記前扉130の裏面には、図2に示すように、メダル(コイン)セレクタ1が、前扉130の前面に設けられたメダル投入口132の裏側に取り付けられている。このメダルセレクタ1は、メダル投入口132から投入されたメダルの通過を検出しながら、当該メダルをホッパ装置121に向かって転動させ、外径が所定寸法と違う異径メダルや、鉄又は鉄合金で作製された不正メダルを選別して排除するとともに、1ゲームあたりに投入可能な所定枚数以上のメダルを選別して排除するための装置である。
また、メダルセレクタ1の下側には、図2に示すように、その下部側を覆って前扉130の払出し口135に連通する導出路136が設けられている。メダルセレクタ1により振り分けられたメダルは、この導出路136を介して払出し口135から遊技者に返却される。
図3は本実施の形態を適用し得る遊技機の一例としてのスロットマシン100の機能ブロック図を示す。
この図において電源系統についての表示は省略されている。図示しないが、スロットマシンは商用電源(AC100V)から直流電源(+5Vなど)を発生するための電源部(図2の電源部205)を備える。
スロットマシン100は、その主要な処理装置としてメイン基板(処理部)10とこれからコマンドを受けて動作するサブ基板20とを備える。なお、少なくともメイン基板10は、外部から接触不能となるようにケース内部に収容され、これら基板を取り外す際に痕跡が残るように封印処理が施されている。すなわち、メイン基板10とサブ基板20はカシメにより一体となり取り付けられるとともに、メイン基板10とサブ基板20の全体を覆う一体のケースによりカバーされている。
メイン基板10は、遊技者の操作を受けて内部抽選を行ったり、回胴の回転・停止やメダルの払い出しなどの処理(遊技処理)を行うためのものである。メイン基板10は、予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。
サブ基板20は、メイン基板10からコマンド信号を受けて内部抽選の結果を報知したり各種演出を行うためのものである。サブ基板20は、前記コマンド信号に応じた予め設定されたプログラムに従って制御動作を行うCPUと、前記プログラムを記憶する記憶手段であるROMおよび処理結果などを一時的に記憶するRAMを含む。コマンドの流れはメイン基板10からサブ基板20への一方のみであり、逆にサブ基板20からメイン基板10へコマンド等が出されることはない。
<メイン基板>
メイン基板10には、ベットスイッチBET、スタートスイッチ134,ストップボタン140,リール(回胴)ユニット203、ホッパ駆動部80、ホッパ81及びホッパ81から払い出されたメダルの枚数を数えるためのメダル検出部82(これらは前述のホッパ装置121を構成する)が接続されている。サブ基板20には液晶表示装置の制御用の液晶制御基板200、スピーカ基板201、LED基板202などの周辺基板(ローカル基板)が接続されている。周辺基板とは、サブ基板20により制御されるものであり、主に映像、光、音響により演出を行うものである。
なお、周辺基板をサブ基板20と一体に設けるようにしてもよい。例えば、サブ基板20の内部に液晶制御基板200及び/又はスピーカ基板201を設けるようにできる。
メイン基板10には、さらに、メダルセレクタ1のメダルセンサS1及びS2が接続されている。
メダルセレクタ1には、メダルを計数するためのメダルセンサS1及びS2が設けられている。メダルセンサS1及びS2は、メダルセレクタ1に設けられた図示しないメダル通路の下流側(出口近傍)に設けられている(メダル通路の上流側はメダル投入口132に連通している)。2つのメダルセンサS1とS2は、メダルの進行方向に沿って所定間隔を空けて並べて設けられている。メダルセンサS1、S2は、例えば、互いに対向した発光部と受光部とを有して断面コ字状に形成され、その検出光軸をメダル通路内に上方から臨ませて位置するフォトインタラプタである。各フォトインタラプタにより、途中で阻止されずに送られてきたメダルの通過が検出される。なお、フォトインタラプタを2つ隣接させたのは、メダル枚数を検出するだけでなく、メダルの通過が正常か否かを監視するためである。すなわち、フォトインタラプタを2つ隣接させて設けることにより、メダルの通過速度や通過方向を検出することができ、これによりメダル枚数だけでなく、逆方向に移動する不正行為を感知することができる。
リールユニット203は、3つの回胴40a〜40cと、これらをそれぞれ回転させるステッピングモータ155a〜155cと、それらの位置をそれぞれ検出する回胴位置検出器(インデックスセンサ)159a〜159cとを備える(なお、ステッピングモータ155a〜155cを単にモータ155あるいはモータと記すことがある)。
回胴制御手段1300は、回胴40a〜40cそれぞれが1回転する毎にインデックスセンサ159で検出される基準位置信号に基づいて、回胴40の基準位置(図示しないインデックスによって特定されるコマ)からの回転角度を求める(ステップモータの回転軸の回転ステップ数をカウントする)ことによって、現在の回胴40の回転状態を監視することができるようになっている。すなわち、メイン基板10は、回胴40の基準位置からの回転角度を求めることにより、ストップボタン140の作動時における回胴40の位置を得ることができる。
なお、以下の説明において、任意のひとつ又は複数の回胴を示すときは符号40を使用し、3つの回胴をそれぞれ区別して示すときは符号40a〜40cを使用することにする。
ホッパ駆動部80は、ホッパ81の図示しない回転ディスクを回転駆動して、メイン基板10によって指示された払出数のメダルを払い出す動作を行う。遊技機は、メダルを1枚払い出す毎に作動するメダル検出部82を備えており、メイン基板10は、メダル検出部82からの入力信号に基づいてホッパ81から実際に払い出されたメダルの数を管理することができる。
投入受付部(投入受付手段)1050は、メダルセレクタ1のメダルセンサS1とS2の出力を受け、遊技毎にメダルの投入を受け付けて、規定投入数に相当するメダルが投入されたことに基づいて、スタートスイッチ134に対する第1回胴〜第3回胴の回転開始操作を許可する処理を行う。なお、スタートスイッチ134の押下操作が、第1回胴〜第3回胴の回転を開始させる契機となっているとともに、内部抽選を実行する契機となっている。また、遊技状態に応じて規定投入数を設定し、通常状態およびボーナス成立状態では規定投入数を3枚に設定し、ボーナス状態では規定投入数を1枚に設定する。
メダルが投入されると、遊技状態に応じた規定投入数を限度として、投入されたメダルを投入状態に設定する。あるいは、遊技機にメダルがクレジットされた状態で、ベットスイッチBETが押下されると、遊技状態に応じた規定投入数を限度して、クレジットされたメダルを投入状態に設定する。メダルの投入を受け付けるかどうかは、メイン基板10が制御する。スタートスイッチ134が押下され各回胴の回転が開始した時点(遊技開始時点)から3つのストップボタン140が押下され各回胴の回転が停止した時点(入賞した場合はメダル払い出しが完了した時点)(遊技終了時点)の間であって、メダルの投入を受け付ける状態になっていないときは(許可されていないときは)、メダルを投入してもメダルセンサS1、S2でカウントされず、そのまま返却される。同様に、メイン基板10は、メダルの投入を受け付ける状態か否かに応じて、ベットスイッチBETの有効/無効を制御する。また、前記遊技終了時点から前記遊技開始時点までの間でベットスイッチBETは有効となるが、これ以外の期間においては(BETスイッチの押下が許可されていないときは)、ベットスイッチBETを押下しても、それは無視される。
メイン基板10は、乱数発生手段1100を内蔵する。乱数発生手段1100は、抽選用の乱数値を発生させる手段である。乱数値は、例えば、インクリメントカウンタ(所定のカウント範囲を循環するように数値をカウントするカウンタ)のカウント値に基づいて発生させることができる。なお本実施形態において「乱数値」には、数学的な意味でランダムに発生する値のみならず、その発生自体は規則的であっても、その取得タイミング等が不規則であるために実質的に乱数として機能しうる値も含まれる。
内部抽選手段1200は、遊技者がスタートスイッチ134からのスタート信号に基づいて、役の当否を決定する内部抽選を行う。すなわち、メイン基板10のメモリ(図示せず)に記憶されている抽選テーブル(図示せず)を選択する抽選テーブル選択処理、乱数発生手段1100から得た乱数の当選を判定する乱数判定処理、当選の判定結果で大当たりなどに当選したときにその旨のフラグを設定する抽選フラグ設定処理などを行う。
抽選テーブル選択処理では、図示しない記憶手段(ROM)に格納されている複数の抽選テーブル(図示せず)のうち、いずれの抽選テーブルを用いて内部抽選を行うかを決定する。抽選テーブルでは、複数の乱数値(例えば、0〜65535の65536個の乱数値)のそれぞれに対して、リプレイ、小役(ベル、チェリー)、レギュラーボーナス(RB:ボーナス)、およびビッグボーナス(BB:ボーナス)などの各種の役が対応づけられている。また、遊技状態として、通常状態、ボーナス成立状態、およびボーナス状態が設定可能とされ、さらにリプレイの抽選状態として、リプレイ無抽選状態、リプレイ低確率状態、リプレイ高確率状態が設定可能とされる。
抽選テーブル選択処理により、抽選の内容は所定の範囲内で設定可能(当選の確率を高くしたり低くしたりできる)であり、遊技機が設置されるホールなどにおいて店側により設定作業が行われる。
通常の遊技機は、BB,RB、小役等の抽選確率の異なる複数(例えば6つ)の抽選テーブルを予め備える。遊技機の抽選では、それら複数の抽選テーブルの中から1つが設定され、この設定された抽選テーブルに基づいて抽選による当たり/ハズレの判定がなされる。複数の抽選テーブルのうちどれを使用するかに関する設定を変更することを、設定の変更(以下、「設定変更」と記す)と称している。
従来、例えばスロットマシンのような遊技機では、設定値(通常1〜6)を変更する場合、遊技機の扉を開け、電源部に設けられた設定変更キースイッチに設定変更キーを挿入して当該キースイッチをオンにした状態で遊技機の電源を投入して設定変更可能な状態にし、設定変更ボタン(押ボタン)を1回押下するごとに、7セグメント表示器などに表示される設定値がインクリメントされて1〜6までの値を循環的に変化させ、所望する設定値が表示器に表示されたところでスタートスイッチを操作することで、所望する設定値を確定させている。
乱数判定処理では、スタートスイッチ134からのスタート信号に基づいて、遊技毎に乱数発生手段(図示せず)から乱数値(抽選用乱数)を取得し、取得した乱数値について前記抽選テーブルを参照して役に当選したか否かを判定する。
抽選フラグ設定処理では、乱数判定処理の結果に基づいて、当選したと判定された役の抽選フラグを非当選状態(第1のフラグ状態、オフ状態)から当選状態(第2のフラグ状態、オン状態)に設定する。2種類以上の役が重複して当選した場合には、重複して当選した2種類以上の役のそれぞれに対応する抽選フラグが当選状態に設定される。抽選フラグの設定情報は、記憶手段(RAM)に格納される。
入賞するまで次回以降の遊技に当選状態を持ち越し可能な抽選フラグ(持越可能フラグ)と、入賞の如何に関わらず次回以降の遊技に当選状態を持ち越さずに非当選状態にリセットされる抽選フラグ(持越不可フラグ)とが用意されていることがある。この場合、前者の持越可能フラグが対応づけられる役としては、レギュラーボーナス(RB)およびビッグボーナス(BB)があり、それ以外の役(例えば、小役、リプレイ)は後者の持越不可フラグに対応づけられている。すなわち抽選フラグ設定処理では、内部抽選でレギュラーボーナスに当選すると、レギュラーボーナスの抽選フラグの当選状態を、レギュラーボーナスが入賞するまで持ち越す処理を行い、内部抽選でビッグボーナスに当選すると、ビッグボーナスの抽選フラグの当選状態を、ビッグボーナスが入賞するまで持ち越す処理を行う。このときメイン基板10は、内部抽選機能により、レギュラーボーナスやビッグボーナスの抽選フラグの当選状態が持ち越されている遊技でも、レギュラーボーナスおよびビッグボーナス以外の役(小役およびリプレイ)についての当否を決定する内部抽選を行っている。すなわち抽選フラグ設定処理では、レギュラーボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているレギュラーボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定し、ビッグボーナスの抽選フラグの当選状態が持ち越されている遊技において、内部抽選で小役あるいはリプレイが当選した場合には、既に当選しているビッグボーナスの抽選フラグと内部抽選で当選した小役あるいはリプレイの抽選フラグとからなる2種類以上の役に対応する抽選フラグを当選状態に設定する。
回胴制御手段1300は、遊技者がスタートスイッチ134の押下操作(回転開始操作)によるスタート信号に基づいて、第1回胴〜第3回胴をステッピングモータにより回転駆動して、第1回胴〜第3回胴の回転速度が所定速度(約80rpm:1分間あたり約80回転となる回転速度)に達した状態において回転中の回胴にそれぞれ対応する3つのストップボタン140の押下操作(停止操作)を許可する制御を行うとともに、ステッピングモータにより回転駆動されている第1回胴〜第3回胴を抽選フラグの設定状態(内部抽選の結果)に応じて停止させる制御を行う。
また、回胴制御手段1300は、3つのストップボタン140に対する押下操作(停止操作)が許可(有効化)された状態において、遊技者が3つのストップボタン140を押下することにより、その回胴停止信号に基づいて、リールユニット203のステッピングモータへの駆動パルス(モータ駆動信号)の供給を停止することにより、第1回胴〜第3回胴の各回胴を停止させる制御を行う。
すなわち、回胴制御手段1300は、3つのストップボタン140の各ボタンが押下される毎に、第1回胴〜第3回胴のうち押下されたボタンに対応する回胴の停止位置を決定して、決定された停止位置で回胴を停止させる制御を行っている。具体的には、記憶手段(ROM)に記憶されている停止制御テーブル(図示せず)を参照して3つのストップボタンの押下タイミングや押下順序等(停止操作の態様)に応じた第1回胴〜第3回胴の停止位置を決定し、決定された停止位置で第1回胴〜第3回胴を停止させる制御を行う。
ここで停止制御テーブルでは、ストップボタン140の作動時点における第1回胴〜第3回胴の位置(押下検出位置)と、第1回胴〜第3回胴の実際の停止位置(または押下検出位置からの滑りコマ数)との対応関係が設定されている。滑りコマ数とは、回胴停止時にゲーム表示部から視認できる特定の図柄を基準位置としたときのストップボタン140の操作から対応する回胴の回転停止までの間に当該基準位置を通過する図柄の数をいう。回胴制御手段1300は、各ストップボタン140の操作から190ms以内という条件下で各回胴を停止させるため、滑りコマ数は0以上4以下の範囲内となっている(ただし、80回転/分、図柄数=21個の条件において)。抽選フラグの設定状態に応じて、第1回胴〜第3回胴の停止位置を定めるための停止制御テーブルが用意されることもある。
前述のように、回胴制御手段1300は、回胴が1回転する毎にインデックスセンサ159で検出される基準位置信号に基づいて、回胴の基準位置(リールインデックスによって検出されるコマ)からの回転角度(ステップモータの回転軸の回転ステップ数)を求めることによって、現在の回胴の回転状態を監視することができるようになっている。すなわち、メイン基板10は、ストップボタン140の作動時における回胴の位置を、回胴の基準位置からの回転角度を求めることにより得ることができる。
回胴制御手段1300は、いわゆる引き込み処理と蹴飛ばし処理とを回胴を停止させる制御として行っている。引き込み処理とは、抽選フラグが当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止するように(当選した役を入賞させることができるように)回胴を停止させる制御処理である。一方蹴飛ばし処理とは、抽選フラグが非当選状態に設定された役に対応する図柄が有効な入賞判定ライン上に停止しないように(当選していない役を入賞させることができないように)回胴を停止させる制御処理である。すなわち本実施形態の遊技機では、上記引き込み処理及び蹴飛ばし処理を実現させるべく、抽選フラグの設定状態、ストップボタン140の押下タイミング、押下順序、既に停止している回胴の停止位置(表示図柄の種類)などに応じて各回胴の停止位置が変化するように停止制御テーブルが設定されている。このように、メイン基板10は、抽選フラグが当選状態に設定された役の図柄を入賞の形態で停止可能にし、一方で抽選フラグが非当選状態に設定された役の図柄が入賞の形態で停止しないように第1回胴〜第3回胴を停止させる制御を行っている。
本実施形態の遊技機では、第1回胴〜第3回胴が、ストップボタン140が押下された時点から190ms以内に、押下されたストップボタンに対応する回転中の回胴を停止させる制御状態に設定されている。すなわち回転している各回胴の停止位置を決めるための停止制御テーブルでは、ストップボタン140の押下時点から各回胴が停止するまでに要するコマ数が0コマ〜4コマの範囲(所定の引き込み範囲)で設定されている。
入賞判定手段1400は、第1回胴〜第3回胴の停止態様に基づいて、役が入賞したか否かを判定する処理を行う。具体的には、記憶手段(ROM)に記憶されている入賞判定テーブルを参照しながら、第1回胴〜第3回胴の全てが停止した時点で入賞判定ライン上に表示されている図柄組合せが、予め定められた役の入賞の形態であるか否かを判定する。
入賞判定手段1400は、その判定結果に基づいて、入賞時処理を実行する。入賞時処理としては、例えば、小役が入賞した場合にはホッパ81を駆動してメダルの払出制御処理が行われるか、あるいはクレジットの増加され(規定の最大枚数例えば50枚まで増加され、それを超えた分だけ実際にメダル払い出される)、リプレイが入賞した場合にはリプレイ処理が行われ、ビッグボーナスやレギュラーボーナスが入賞した場合には遊技状態を移行させる遊技状態移行制御処理が行われる。
払出制御手段1500は、遊技結果に応じたメダルの払い出しに関する払出制御処理を行う。具体的には、小役が入賞した場合に、役毎に予め定められている配当に基づいて遊技におけるメダルの払出数を決定し、決定された払出数に相当するメダルを、ホッパ駆動部80でホッパ81を駆動して払い出させる。この際に、ホッパ81に内蔵される図示しないモータに電流が流れることになる。
メダルのクレジット(内部貯留)が許可されている場合には、ホッパ81によって実際にメダルの払い出しを行う代わりに、記憶手段(RAM)のクレジット記憶領域(図示省略)に記憶されているクレジット数(クレジットされたメダルの数)に対して払出数を加算するクレジット加算処理を行って仮想的にメダルを払い出す処理を行う。
リプレイ処理手段1600は、リプレイが入賞した場合に、次回の遊技に関して遊技者の所有するメダルの投入を要さずに前回の遊技と同じ準備状態に設定するリプレイ処理(再遊技処理)を行う。リプレイが入賞した場合には、遊技者の手持ちのメダル(クレジットメダルを含む)を使わずに前回の遊技と同じ規定投入数のメダルが自動的に投入状態に設定される自動投入処理が行われ、遊技機が前回の遊技と同じ入賞判定ラインを有効化した状態で次回の遊技における回転開始操作(遊技者によるスタートスイッチ134の押下操作)を待機する状態に設定される。
リプレイ処理手段1600は、所定条件下で内部抽選におけるリプレイの当選確率を変動させる制御を行うことがある。例えば、ストップボタン140の操作によって回胴を停止させた際に所定の出目が表示されるとリプレイの当選確率が変動する。リプレイの抽選状態として、リプレイが内部抽選の対象から除外されるリプレイ無抽選状態、リプレイの当選確率が約1/7.3に設定されるリプレイ低確率状態、およびリプレイの当選確率が約1/6に設定されるリプレイ高確率状態という複数種類の抽選状態を設定可能とされている。
エラー処理部1700は、図示しない扉開閉検知センサ、メダルセンサS1及びS2及びメダル検出部82の出力に基づき遊技機のエラー判定を行い、エラーと判定したときにその旨を報知するとともに、遊技機を所定の状態(例えば、操作を受け付けない状態)にする。
図示しない扉開閉検知センサは、扉130が閉じられたことを検知するセンサであり、例えばマイクロスイッチや接点などの電気的スイッチである。当該スイッチは扉130が閉じられたときに、扉130の裏側にスイッチの作用部が当接することでオン(又はオフ)になり、扉130が開放されると作用部が離れてオフ(又はオン)になるものである。扉開閉検知センサは、フォトインタラプタのような光学式のものでもよい。メダルセンサS1及びS2及びメダル検出部82については前述した。
エラー処理部1700は、具体的には次のような動作を行う。
・図示しない扉開閉検知センサの出力に基づき扉130の開放を検知したとき、エラー処理を行う。
・メダルセンサS1及びS2の出力に基づきメダルの逆流(センサS1とS2の検知順序が反対になったこと)、メダル滞留(センサS1とS2の検知時間が予め定められた閾値よりも長いこと)などを検知したとき、エラー処理を行う。
・メダル検出部82の出力に基づきメダル詰まり(メダル検出部82の検知時間が予め定められた閾値よりも長いこと)、ホッパーエンプティ(ホッパ駆動部80を動作させているにもかかわらずメダル検出部82がメダルを検知しない)などを検知したとき、エラー処理を行う。
エラー処理部1700は、上記のようにエラーと判定したときにその旨を報知するとともに、遊技機を所定の状態(エラー状態)にするが、この状態は図示しないリセットスイッチにより解除される。リセットスイッチは、例えば電源部205のパネルに設けられる。
なお、サブ基板20で生じるエラーもある。このエラーでは遊技不能状態にはならないが、サブ基板20自身の処理によりエラーが生じたことを液晶表示装置などにより報知することができる。当該エラーは例えば不正なコマンドを受信したとき(暗号化されたコマンドが正しく復号化できなかったときを含む)に発生し、当該エラーは上記リセットスイッチにより解除される(メイン基板10からサブ基板20へリセットコマンドが送られる)。
また、メイン基板10は、通常状態、ボーナス成立状態、およびボーナス状態の間で遊技状態を移行させる制御を行うことがある(遊技状態移行制御機能)。遊技状態の移行条件は、1の条件が定められていてもよいし、複数の条件が定められていてもよい。複数の条件が定められている場合には、複数の条件のうち1の条件が成立したこと、あるいは複数の条件の全てが成立したことに基づいて、遊技状態を他の遊技状態へ移行させることができる。
通常状態は、複数種類の遊技状態の中で初期状態に相当する遊技状態で、通常状態からはボーナス成立状態への移行が可能となっている。ボーナス成立状態は、内部抽選でビッグボーナスあるいはレギュラーボーナスに当選したことを契機として移行する遊技状態である。ボーナス成立状態では、通常状態における内部抽選でビッグボーナスが当選した場合、ビッグボーナスが入賞するまでビッグボーナスに対応する抽選フラグが当選状態に維持され、通常状態における内部抽選でレギュラーボーナスが当選した場合、レギュラーボーナスが入賞するまでレギュラーボーナスに対応する抽選フラグが当選状態に維持される。ボーナス状態では、ボーナス遊技によって払い出されたメダルの合計数により終了条件が成立したか否かを判断し、入賞したボーナスの種類に応じて予め定められた払出上限数を超えるメダルが払い出されると、ボーナス状態を終了させて、遊技状態を通常状態へ復帰させる。
リールユニット203は、3つの回胴40a〜40cを備えるが、3つの回胴40a〜40cそれぞれにひとつづつステッピングモータ155a〜155cが取り付けられている。ステッピングモータ155は、回転子(ロータ)として歯車状の鉄心あるいは永久磁石を備え、固定子(ステータ)として複数の巻線(コイル)を備え、電流を流す巻線を切り替えることによって回転動作させるものである。すなわち、固定子の巻線に電流を流して磁力を発生させ、回転子を引きつけることで回転するものである。回転軸を指定された角度で停止させることが可能なことから、スロットマシンの回胴の回転駆動に使用されている。複数の巻線がひとつの相を構成する。相の数として、例えば、2つ(二相)、4つ(4相)、5つ(5相)のものもある。
ステッピングモータは、各相の巻線への電流の与え方を変えることにより、特性を変えることができる(励磁モードが変わる)。二相型については次の通りである。
・一相励磁
常に巻線一相のみに電流を流す。位置決め精度は良い。
・二相励磁
二相に電流を流す。一相励磁の約2倍の出力トルクが得られる。位置決め精度は良く、停止したときの静止トルクが大きいため、停止位置を確実に保持できる。
・一−二相励磁
一相と二相を交互に切り替えて電流を流す。一相励磁・二相励磁の場合のステップ角度の半分にすることができるので、滑らかな回転を得られる。
なお、ステッピングモータを「駆動する」とは、当該モータを上記励磁により回転させることとともに、所望の位置で停止させその位置を保持するために各相を励磁することも含むものとする。
スロットマシンの回胴40a〜40cの駆動に関して、例えば、4相の基本ステップ角度1.43度のステッピングモータを使用し、パルスの出力方法として一−二相励磁を採用している。
10CGは、サブ基板20へ送るコマンドを送信するコマンド送信部である。このコマンドには、当選役の情報に関するコマンド、メダル投入枚数やクレジット枚数(貯留枚数)の情報に関するコマンドなどがある。コマンド送信部10CGは、具体的には、メイン基板10に搭載されたROMに予め書き込まれたプログラムをCPUが実行することで実現される。コマンド送信については、後に説明を加える。
次に、メイン基板10における遊技処理について図4を参照して説明を加える。
一般的に、遊技機において、メダルの投入(クレジットの投入)に始まり、払い出しが終了するまで(又はクレジット数の増加が終了するまで)が一遊技である。一遊技が終了するまでは次回の遊技に進めないという決まりがある。
先ず、規定枚数のメダルが投入されることでスタートスイッチ134が有効になり、図4の処理が開始される。
ステップS1において、スタートスイッチ134が操作されることにより、スタートスイッチ134がONとなる。そして、次のステップS2に進む。
ステップS2において、メイン基板10により抽選処理が行われる。そして、次のステップS3に進む。
ステップS3において、第1リール〜第3リールの回転が開始する。そして、次のステップS4に進む。
ステップS4において、ストップボタン140が操作されることにより、ストップボタン140がONとなる。そして、次のステップS5に進む。
ステップS5において、第1リール〜第3リールのうち押下されたストップボタン140に対応するリールについて回転停止処理が行われる。そして、次のステップS6に進む。
ステップS6において、三個のリールに対応するストップボタン140の操作が行われたか否かが判定される。そして、三個のリールに対応する3つのストップボタン140すべての操作が行われたと判定された場合、次のステップS7に進む。
ステップS7において、抽選フラグ成立中に当該抽選フラグに対応する入賞図柄が有効入賞ライン上に揃ったか否か、すなわち、入賞が確定したか否かが判定される。そして、入賞が確定したと判定された場合、次のステップS8に進む。なお、入賞が確定しなかったときは、抽選フラグが成立していてもメダルの払い出しは行われない。
ステップS8において、入賞図柄に相当するメダルが払い出される。
メダルの投入からステップS8の実行完了までが、一遊技である。ステップS8の待機処理が終了すると、処理はフローチャートの最初に戻る。言い換えれば、次の遊技が可能な状態になる(次遊技へ移行する)。
<メイン基板からサブ基板へのコマンド伝送>
サブ基板20はメイン基板10からコマンドをうけ、これに従って演出等の処理を行う。コマンドの流れはメイン基板10からサブ基板20への一方のみであり、逆にサブ基板20からメイン基板10へコマンド等が出されることはない。
サブ基板20は、メイン基板10からのコマンドに従い、例えば、予め定められた画面を液晶表示装置LCDに表示させるためのコマンド(液晶表示装置用コマンド、描画コマンド)を生成する。例えば、アニメーションなどにより演出を行う際には、多数のコマンドを連続的に次々と送信する。
図3において、20CRは、メイン基板10から受けたコマンドを受信するコマンド受信部である。コマンド受信部20CRは、具体的には、サブ基板20に搭載されたROMに予め書き込まれたプログラムをCPUが実行することで実現される。
上記コマンドとして、サブ基板20側のソフトウエアで当選内容を示唆する演出を行うためのものがある。例えば、下記ATのように、出玉を得るための示唆を液晶表示装置に表示して遊技者の操作の便宜の提供(アシスト)を図っている。当該示唆は常時出されるわけではなく、特定の場合に出される。
遊技機は、液晶表示装置、スピーカや表示ランプ等からなる演出表示装置を備える。この演出表示装置はサブ基板20により制御され、遊技者に入賞等を報知したり、いわゆるアシストタイム(AT)において、一定ゲーム間に特定の小役を台自体が何らかのアクションを伴ってユーザに教えたりするためのものである。(アシストタイム(AT):特定の小役が成立しても遊技者がリールの図柄を揃えないと払い戻しがない。小役による払い出しを確実にするために、ビッグボーナス終了後(もしくは成立時)あるいはその他の任意の契機にアシストタイムを抽選し、これに当選すると一定ゲーム間は特定の小役を揃えさせるための操作を何らかのアクションを伴って遊技者に教えるという機能)
図5(c)は、本実施の形態に係るコマンド送信部10CGのブロック図である。
101は、送信する前記コマンドを受け入れるコマンドレジスタである。コマンドレジスタ101は、コマンドを受けたらすぐに送信データレジスタ102へ送る。コマンドレジスタ101はひとつのコマンドを一時的に蓄えるものである。
コマンドは、所定ビットのひとまとまりのデータ、例えば8ビット単位のデータのセットであって、所定のコマンド体系に基づき作成されているものである。
102は、受け入れた順番で複数のコマンドを記憶するとともに、受け入れた順番に従って出力する送信データレジスタ(送信FIFO)である。
103は、送信データレジスタ102からコマンドの出力を受けてこれをサブ基板20へ送信する送信用シフトレジスタである。
メイン基板10は、生成したコマンドをコマンドレジスタ101にセットすることでサブ基板20へ送信する。
コマンド受信部20CRは、メイン基板10から受けたコマンドを受信する。例えば、シリアルデータとして受けたコマンドを直列−並列変換器(シフトレジスタ)に入力し、一定のデータ(例えば8ビット)ごとに出力する。この出力されたデータがコマンドとしてサブ基板20のCPUに渡され、解釈・実行される。
<サブ基板>
サブ基板20には液晶表示装置の制御用の液晶制御基板200、スピーカ基板201、LED基板202などの周辺基板(ローカル基板)が接続されている。さらに、可動体50を制御する可動体制御部(周辺基板)60が接続されている。
また、遊技者により操作される操作部PANの出力が接続されている。操作部PANは、例えばジョグダイヤルである。操作部PANからの信号は、図示しないI/Oを通じてサブ基板20のCPUに入力される。
なお、液晶制御基板200、スピーカ基板201、LED基板202、可動体制御部60などの周辺基板は、サブ基板20に設けられることもある(図3は、サブ基板20とは別個に周辺基板が設けられたブロック図を示すが、これに限定されない)。
図6は、サブ基板20とその周辺基板の接続の説明図である。図3に示すように、サブ基板20には、液晶制御基板200、スピーカ基板201、LED基板202、可動体制御部60が接続されている。これらは、サブ基板20の周辺基板と言うべきものである。
これら複数の周辺基板は、図6のように接続されている(LED基板202と可動体制御部60の表示は省略している)。すなわち、複数の周辺基板が共通のバス(通信回線、通信路)に接続され、当該バスを通じてサブ基板20と通信を行う。当該バスを流れる信号は、パラレル信号(例えば8ビットの線で信号を伝送するもの)あるいはシリアル信号(例えば、I2C(Inter-Integrated Circuit)のようにデータ線とクロック線の2本の線で信号を伝送するもの)である。以下の説明ではシリアル通信を例にとる。なお、図5(c)の例ではサブ基板20から出た信号がサブ基板20に戻っているが、これは一例であり、一般的なバス構造のように接続端の反対側の端が開放されていてもよい。
液晶制御基板200はVDP(Video Display Processor)を内蔵し、スピーカ基板201はサウンドコントローラを内蔵している。VDPとサウンドコントローラについては後に説明する。
図8(a)は、図6の装置におけるデータ送信のタイミングチャートである。図8(b)は、図6の装置において送信されるデータ構造を示す。
図8(a)に示すように所定間隔でデータ送信が行われる(時刻t1、t2、t3、t4、・・・)。データ送信の間隔は、例えばデータ送信が割込処理で行われる場合には割込周期(例えば512μs)である。異なるアドレスに対するデータ送信が所定回数(例えば16回)行われると最初のアドレスに戻り、データ送信が同様に繰り返される(割込処理については図14及びその説明も参照されたい)。
サブ基板20から周辺基板へは、アドレスを指定してデータを送る。具体的には、図8(b)に示すようにアドレスにデータを組み合わせたものを送信する。周辺基板A1に対してデータを送信するときは、周辺基板A1のアドレスA1に周辺基板A1用のデータAを組み合わせたものを送信し、周辺基板A2に対してデータを送信するときは、周辺基板A2のアドレスA2に周辺基板A2用のデータAを組み合わせたものを送信する(図8では同じデータAをt1とt2の2回送っているが、これはデータの送信先が周辺基板A1とA2の2箇所あるため)。
図8の例では、ひとつの割り込み周期においてひとつの周辺基板に対してのみデータを送信している。周辺基板A1と周辺基板A2へのデータは同じAであるが、t1で始まる割り込み周期でデータAを生成し、アドレスA1の周辺基板A1へ送信している。t2で始まる割り込み周期でデータAを生成し、アドレスA2の周辺基板A2へ送信している。処理A1−1はt1で始まる割り込み周期のデータAの生成処理であり、処理A1−2はそのデータ送信処理である。処理A2−1はt2で始まる割り込み周期のデータAの生成処理であり、処理A2−2はそのデータ送信処理である。
このように、ひとつの割り込み周期においてひとつの周辺基板に対してのみデータを送信しているのは、ひとつの割り込み周期において複数の周辺基板の処理を行うと処理時間が増え、当該割り込み周期において処理を完了できないおそれがあるためである。図8(a)の例では、(割り込み周期)<(処理A1−1とA1−2の処理時間)+(処理A2−1とA2−2の処理時間)であるから、ひとつの割り込み周期において複数の周辺基板の処理を行うと処理A2−1とA2−2を完了することができない。このような処理未了が生じると当該周辺基板へのデータ送信が行われなくなり(データ欠損)、可動体が停止する、画像が表示されない、電飾が点滅しない、音響が発生しないといった問題が生じる。特に、発明の実施の形態に係る可動体50は、バランスを崩さないように動かす必要がある可動要素51(詳細は後述)を備えるから、データ欠損が生じると可動要素51が傾くなどの問題が生じる。
図8のようにひとつの割り込み周期においてひとつの周辺基板に対してのみデータを送信すれば上記問題は生じないが、複数の駆動部を「同時に」駆動することができない(この解決手段については後述する)。図8(a)に示すように、周辺基板A1へのデータ送信完了から周辺基板A2へのデータ完了までの間隔は、割り込み周期に相当する。この時間差のために、一対のモータが同期して動作せず、役物の片側が傾き、バランスが崩れるおそれが生じる。
ただし、(割り込み周期)≧(処理A1−1とA1−2の処理時間)+(処理A2−1とA2−2の処理時間)であれば、つまり、周辺基板A1とA2へのデータ送信に係る処理の合計が割り込み周期を超えない場合は、ひとつの割り込み周期において2つ(複数)の周辺基板に対してデータ送信を行うことができ、この場合、複数の駆動部を「同時に」駆動することができないという問題を解決することができる(詳細は後述)。
図8において、例えば、周辺基板Bとしての液晶制御基板200へデータを送る場合は、液晶制御基板200に予め対応づけられているアドレスBを指定してそのデータBをバス(BUS、信号線)に流す。液晶制御基板200は、アドレスにより自分宛のデータであることを認識すると、アドレスに引き続くデータをラッチに取り込む。取り込んだデータに従って所定の動作を行う。取り込んだデータが、液晶制御基板200で取得したあるいは取得可能なデータをサブ基板20へ送信するコマンドであれば、当該データをサブ基板20へ送信する(所定のデータ受信後は、予め定められたデータを常にサブ基板20へ送信するようにすることもできる)。
スピーカ基板201も、液晶制御基板200と同様に動作する。
以下の説明では、送信先を特定することなく、液晶制御基板200、スピーカ基板201などの任意の送信先について適用する動作であるとき、主に「周辺基板」という用語を用いる。どの周辺基板へのデータ送信であるか特定する必要があるときは、「液晶制御基板200」というように具体的に特定するものとする。
周辺基板へのデータ送信に際して、サブ基板20は0又は1のデータが複数集まったデータ(例えば8ビットのデータ)を単位として処理を行う。また、サブ基板20は周辺基板へ、これに所定の動作を行わせるためのコマンド(命令)を送信するが、本明細書において上記データにはコマンドを含む。なお、コマンドは、所定ビットのひとまとまりのデータ、例えば8ビット単位のデータのセットであって、所定のコマンド体系に基づき作成されているものである。
以下の説明では主に「データ」という用語を用いるが、周辺機器への命令であることを明確にするために「コマンド」という用語を用いることもある。
液晶制御基板200、スピーカ基板201などの周辺機器へデータを送るために、サブ基板20はデータ送信部20TXを備える。
図7は、データ送信部20TXの内部ブロック図を示す。データ送信部20TXは、具体的には、サブ基板20に搭載されたROMに予め書き込まれたプログラムをCPUが実行することで実現される。
2101は、周辺基板へ送信するデータを受け入れるデータレジスタ(コマンドレジスタ)である。データレジスタ2101は、データを受けたらすぐに送信データレジスタ2102へ送る。データレジスタ2101はひとつの単位のデータを一時的に蓄えるものである。なお、データの内容は公知であるので、送信されるデータがどのようなものであるかについての説明は省略する。
2102は、受け入れた順番で複数のデータを記憶するとともに、受け入れた順番に従って出力する送信データレジスタである。
2103は、送信データレジスタ2102からデータの出力を受けてこれを周辺基板へ送信する送信用シフトレジスタである。送信用シフトレジスタ103は、送信すべきデータをパラレルからシリアルへ変換する。
図9は、データ(コマンド)送信とこれを受けた液晶制御基板200とスピーカ基板201の動作の概略の説明図である。
サブ基板20は、液晶制御基板200とスピーカ基板201それぞれへ画像データと音声データを送る(符号PとR)。画像データを受けて液晶制御基板200は所定の画面を表示し(符号Q)、音声データを受けてスピーカ基板201は所定の音声を発生する(符号S)。音声に限らずBGM、効果音などその他の音響も発生するが、便宜上これらも音声に含める。音声・音声データは、音響・音響データと言える。特に断らない限り、本明細書において「音声」には、通常の意味の音声とともにBGM、効果音などその他の音響も含むものとする。
また、サブ基板20は、可動体制御部60へ可動体50の制御データを送る(符号TとU)。
図9からわかるように、サブ基板20によるコマンド送信−>周辺基板によるコマンドの実行・画面表示や音声発生などの提示という流れになっている。サブ基板20が制御できるのはどのようなコマンドをどの周辺基板へ、どのタイミングで送るということであり、画面表示や音声発生などの提示をどのタイミングで行え、ということは指定できない。このためコマンドの送信タイミングは、周辺基板ごとに適切に管理する必要がある。
<画面表示と音声発生に係る構成>
遊技機における画面表示と音声発生に係る構成について説明を加える。以下の説明においては便宜上、メモリ上に描画されたものを画像と表示し、メモリを読み出して液晶表示装置LCDに表示すべきものを画面と表記することにする。概ね、ビットマップで表現されたキャラクタなどのオブジェクトは画像であり、オブジェクトが背景上に配置されて1枚の絵となったものは画面である。
図10は、VDPの構造の概略図である。VDPは、液晶制御基板に設けられたLSIであり、CPUとのインタフェースI/F、CPUからのコマンドに従い画像を描画する描画エンジンE1、描画した画像を記憶するビデオメモリVRAM、及び、ビデオメモリVRAMに記憶された画像を読み出して液晶表示装置LCDへ送る表示エンジンE2を備える。これらの各要素は、内部のバスBUSに接続され、相互にデータを読み書きできるようになっている。インタフェースI/Fは、CPUからコマンドなどのデータを受けるとともに、表示エンジンE2などからの割り込み信号をCPUへ出力することもできる。このVDPは、例えば、XGAサイズの解像度(1024×768ピクセルの解像度)で毎秒60フレームの描画及び表示が可能である。
毎秒60フレーム(=60fps)で描画及び表示する場合、1フレームの時間は16.67msである。これをフレーム時間と記すことにする。また、2つの連続するフレームをVフレームと呼ぶことにする。フレーム×2=Vフレーム×1である。Vフレームの時間は33.33msであり、その画面更新レート(更新周波数)は30fpsである。フレーム、Vフレームは、表示の単位及び処理の単位であるが、以下の説明においては、当該フレーム、Vフレームにおけるデータ、処理結果(描画された画像)、液晶表示装置LCDに表示された画像を意味することがある。例えば、Vフレーム1などのように数字(符号)が付されている場合は、特定のVフレームを示すと共にこれに対応する描画データ、画像データ、表示データを意味することがある。
液晶表示装置LCDの制御は、描画データ(液晶表示装置に対するコマンド、動画デコード情報などを含む)の保存、描画データに基づく描画実行、描画された画像の表示実行の3段階で行われる。すなわち、CPUがVDPへ描画データを送り、VDPの描画エンジンE1が描画を実行し、表示エンジンE2が液晶表示装置LDCでの画像表示を行う。この3段階の処理はそれぞれ並列(独立)に実行される。画像表示までに3段階を要するため、ある画像が表示されているタイミング(Vフレーム)において、描画実行は次のVフレームで表示されるべき画像を描画し、描画データの保存は次の次のVフレームで表示されるべき画像を保存していることになる。その様子を図11に示す。
描画データの保存、描画実行、及び、表示実行は、ひとつのVフレームについて1回の周期で実行判定がなされる。言い換えれば、描画データの保存(第1処理)、描画実行(第2処理)、表示実行(第3処理)は、それぞれVフレームを単位として実行される(正確には、Vフレームに含まれるフレーム単位で処理が行われる、例えば、Vフレーム更新中にデータ入力があった場合、Vフレームの2つのフレームの一方において入力されたデータに係る描画データの保存、描画実行、表示実行が行われる)。したがって、本遊技機の液晶表示装置LCDの更新周波数は30fpsである。なお、これは原則であって、fpsは処理状況に応じて変化し得る。
描画データを保存してからその表示を実行するまでには、2つのVフレームに相当する時間を要する。例えば、図11では、符号T1で書き込んだ描画データは、それよりもVフレーム2つ分遅れた符号T3において表示される。ただし、描画データの保存、描画実行、表示実行はそれぞれ並列に実行されるため、液晶表示装置LCDの画像はVフレーム単位で更新される。図11の例では、表示に関して、符号T3,T4、・・・においてVフレーム1、Vフレーム2、・・・のように更新されている。
図12は、サウンドコントローラSCの内部ブロック図を示す。同図は概念図であり、動作の説明に必要な部分のみを示している。
SC1は、予め再生の順番が定められ、続けて再生される複数のサウンドデータを含むフレーズデータを予め記憶するフレーズデータ記憶部である。
SC2は、フレーズデータをデコードして音響を再生するデコーダである。デコーダは、所定のサウンドデータ(例えばWAV)を音響に戻すものであり、この処理は公知であるので説明は省略する。
SC3は、デコーダSC2で再生された音響の音量を調整する音量調整部である。音量調整部SC3はデジタル又はアナログ回路で構成される。その入力がデジタル信号のときはデジタル回路、例えば乗算器で構成され、ボリュームの値を音響デジタルデータに乗算することで音量を調整する。その入力がアナログ信号のときはアナログ回路、例えば増幅器で構成され、当該増幅器の増幅率(可変抵抗器)を変えることで音量を調整する。音量調整部SC3の出力はスピーカSPへ送られる。
図13(a)はフレーズデータ記憶部SC1の記憶内容の概略を示すものである。演出A,B,C,D,・・・のように複数の演出があるときそれぞれに対応してサウンドフレーズ(音声データ)を記憶している。サウンドフレーズの数には上限があり、例えば255個のサウンドフレーズを記憶することができる。
図13(b)は演出Aの音声データ(例えばWAV)の構造を示すものである。演出Aは3つのサウンド、すなわち第1サウンド(カットイン音)、第2サウンド(キャラボイス)、第3サウンド(発展音)から構成されている。
カットイン音とは、あるショット(場面)に別のショットを挿入するカットインに対応付けられているサウンドである。キャラボイスとは、画面に表示されているキャラクタの台詞のサウンドである。発展音とは、演出の最後に、別の演出に発展する場合に加えられるサウンドである。
サブ基板20はスピーカ基板201へ、例えば図13(b)の演出Aのカットイン音を再生するデータ、キャラボイスを再生するデータ、発展音を再生するデータをそれぞれ送信する。これら3つのデータ(コマンド)を受けて、サウンドコントローラSCが所定のサウンドを発生する。
<周辺基板の制御におけるメイン処理と割込処理の関係>
サブ基板が周辺基板である可動体制御部60を制御する場合、可動体50の制御対象であるモータやソレノイドなどに対して、サブ基板20からの図6の通信系を介して可動体制御部60へコマンドを送る。
周辺基板に対して、具体的には次のような処理を行う。
・動作させたい制御内容の動作テーブル(制御データ)のポインタを設定する。
・設定されたポインタからそのテーブルの終端まで実行する。また、動作状況に応じて変化する動作状況テーブル(例えばモータテーブル)を更新する。テーブルの処理を実行中にポインタが再設定された場合には、再設定された設定ポインタに実行を切り替える。
・テーブル更新状態を確認し、データテーブルのポインタ再設定などを行う。
上記処理を行うに際して、プログラムのメインルーチン(メイン処理)と割込処理ごとに役割を分担させている。この概念を図14に示す。この図は可動体の制御について示している。他の周辺基板についても同様である(周辺基板からサブ基板へのフィードバックがない場合もある)。実線は処理を示し、点線はパラメータを示す。図14の処理の全部がサブ基板20で行われること、その一部が周辺基板で行われることのいずれもある。
なお、メイン処理の処理間隔である第1周期と、割込処理の処理間隔である第2周期とは異なることが多い。例えば、第1周期>第2周期であり、一例として、第1周期=33.3ms(30fps)、第2周期=2.08ms(480fps)である。
PP1は、メイン処理から割込処理へのパラメータであり、解析実行すべき動作テーブルのアドレスを指定するテーブル設定ポインタである。割込処理はそのポインタに従って当該動作テーブルを解析し、当該動作テーブルの終端に到達するか、又は、次の動作テーブルの指定が行われるまで動作を継続する。
MP1は、テーブル設定ポインタPP1を指定するメイン処理である。
IP1は、テーブル設定ポインタPP1を受けて行われる割込処理である。
PP2は、割込処理からメイン処理へのパラメータであり、周辺基板での動作状態を示すモータテーブル更新状態である。これは、割込処理で可動体50の動作状況をメイン処理に伝えるためのステータス情報である。メイン処理はそのステータスを確認し、必要に応じて動作テーブルの再指定、動作の停止などの指示を行う。更新状態の一部(動作フラグ関係)は、動作テーブルの制御命令によりメイン処理側で操作可能である。
IP2は、モータテーブル更新状態を更新するための割込処理である。
MP2は、モータテーブル更新状態PP2を受けて行われるメイン処理である。
<可動体50>
発明の実施の形態に係る遊技機が備える可動体50について説明を加える。
図15は可動体50の斜視図を示す。
図16は可動要素51が上昇位置(上昇限度)にある可動体50の正面図を示し、図17は可動要素51がその上昇位置から少し下降した状態の可動体50の正面図を示し、図18は可動要素51が下降位置(下降限度)にある可動体50の正面図を示す。
可動体50は液晶表示装置LCDの前面に設けられている。
可動体50は、上下する可動要素51と、この可動要素51を所定の位置で保持する保持手段61とを備えている。
可動要素51は横方向に延在する横バー部52と、この横バー部52の両端部にそれぞれ設けられたスライド部材53,53とを備えている。
また、可動体50は、左右一対の上下方向に延在するスライドレール54,54を備えている。スライドレール54,54は、左右に離間して平行に設けられており、このスライドレール54,54に沿ってスライド部材53,53が上下動可能となっている。これによって可動要素51は上下動可能に設けられている。
なお、図15に示す状態では、可動要素51は上昇位置に位置している。
可動要素51の背面側には、当該可動要素51を下部可動限界位置となる下降位置と上昇位置との間で上下動させる上下動駆動手段105が、可動体50の左右にそれぞれ設けられている。
この上下動駆動手段105は、ベース板金55に取り付けられたステッピングモータ56と、このステッピングモータ56によって図示しないギヤを介して回転されるプーリ57と、スライドレール54の下端部近傍に設けられたプーリ58と、プーリ57とプーリ58とに巻き掛けられたベルト59とを備えており、このベルト59の所定部位がスライド部材53に固定されている。したがって、ステッピングモータ56を正逆方向に回転させることによって、可動要素51は上昇位置と下降位置との間を上下動するようになっている。
ステッピングモータ56によってベルト59を正方向に回転せることによって可動要素51が下降する(可動要素51の位置が図16から図17や図18のように変化する)。ステッピングモータ56の回転方向を反対にすると可動要素51が上昇する。
図19(a)は、図15〜図18の可動体50を簡略化して示した正面図である。ステッピングモータ56及びベルト59はそれぞれ左右両側に設けられているので、左側のものには符号Lを、右側のものには符号Rを付し、両者を区別する。
図19(a)(b)の矢印で示すように、ベルト59L及び59Rを正方向に回転せることによって可動要素51が下降するが、このときステッピングモータ56Lと56Rではその回転方向が異なる。図19(b)に示すようにステッピングモータ56Lは紙面上の正面から見て左に回転し、図19(c)に示すようにステッピングモータ56Rは紙面上の正面から見て右に回転する。
このように、回転方向が異なるので、その制御において逆転処理が必要になる(逆転処理については後述する)。
<可動体50のステッピングモータ(駆動部)56とその駆動系統>
図20は、ステッピングモータ56L及び56Rの駆動系統のブロック図である。駆動回路60−1A及び励磁回路60−1Bはステッピングモータ56L用の回路である。駆動回路60−2A及び励磁回路60−2Bはステッピングモータ56R用の回路である。駆動回路60−1A、2A及び励磁回路60−1B、2Bは、例えば可動体制御部60に設けられている。ステッピングモータ56L及び56Rの駆動系統は同じ構成であるので、図20ではひとつの駆動系統を示している。
同図において、60−1A、2Aは、サブ基板20からの信号に基づきステッピングモータ56L、56Rのコイル(A相のコイル)56L−A、56R−Aとコイル(B相のコイル)56L−B、56R−Bのオンオフ(電流を流すかどうか)を切り替える駆動回路である。60−1B、2Bは、駆動回路60−1A、2Aの出力に従いコイル56L−A、54R−A及び56L−B、56R−Bへ電流を流す励磁回路である。
コイル56L−A、56R−AはA相のコイルであり、Aと/Aの2種類のコイルを含むユニポーラ型である。各相は、A端子と/A端子の他に共通端子COMを含むが、その図示は省略している。なお、バイポーラ型を使用することもできる。バイポーラ型の場合は、/AではAと逆方向に電流を流すようにする。/Bについても同様である。
コイル56L−B、56R−BはB相のコイルであり、Bと/Bの2種類のコイルを含む。
A相のコイルとB相のコイルは、例えば、A,B、/A、/B、・・・のように交互に配置されている。A→B→・・・の順に励磁するとモータは正回転し、B→A→・・・の順に励磁すると逆回転を行う。各相の励磁を切り替える間隔を短くすれば(切替周波数ppsを大きくすれば)、ステッピングモータは速く回り、間隔を長くすると遅く回る。ステッピングモータの回転速度とトルクは相反し、回転速度が大きくなるとトルクが小さくなり、回転速度が小さくなるとトルクが大きくなる。回転速度が大きいときに負荷が増加すると、脱調現象が生じやすい。
励磁する相を切り替えずに同じステータに電流を流し続けると、ロータが同じステータの位置に固定され、ステッピングモータが現在の位置を保持しつづけることになる。
図21(a)は、可動体50のステッピングモータの駆動方法の説明図である。同図は一−二相励磁の例を示している。同図の表の○はコイルに電流を流していることを示す。同図の表のステップ1、2、・・・、8の順番でコイルに電流を流すとモータは回転する。図21(b)は、図21(a)とは逆回転する例を示している。
ステップ1、2、・・・、8の切替間隔を短くすると(言い換えればひとつのコイルについての励磁時間を短くすると)回転速度が大きく、トルクが小さくなる。長くすると逆になる。
図22(a)は、二相励磁によるステッピングモータの駆動方法の説明図である。同図の表の○はコイルに電流を流していることを示す。同図の表のステップ1、2、3、4の順番でコイルに電流を流すとモータは回転する。図22(b)は、図22(a)とは逆回転する例を示している。
図20の指令信号は、例えば図21又は図22のようなコイルを順番に励磁することを指示する信号である。ステッピングモータ56Lと56Rに対する指令信号が同じであれば、ステッピングモータ56L及び56Rは同じ動作を行う。しかし、図8(a)で示すようにデータ送信は間欠的に行われるために、完全に同期した動作はできない。例えば、図8において周辺基板A1がステッピングモータ56Lの制御部であり、周辺基板A2がステッピングモータ56Rの制御部であるとすると、ステッピングモータ56Lと56Rの動作タイミングには割り込み周期(t2−t1)だけずれが生じるようになる。このようなズレを軽減することのできる制御について図23以降を参照して説明を加える。
<可動体制御部60>
図23は、発明の実施の形態に係る可動体50の制御系統を示す。この図は、図6に対応している。周辺基板である可動体制御部(第1周辺基板、第2周辺基板)60−1、60−2はそれぞれステッピングモータ56L、56Rを制御する装置である。
図24(a)は送信タイミングの説明図、図24(b)は送信データの説明図である。図24は、従来のデータ送信を示す図8に対応している。
データ送信部20TXと可動体制御部60−1(第1周辺基板)、60−2(第2周辺基板)、液晶制御基板200及びスピーカ基板201(第3周辺基板)は共通の信号線に接続されている。データ送信部20TXは、信号線を介して可動体50のステッピングモータ56L、56Rを駆動するためのデータ(演出に係るデータ)とともに当該データの宛先を示すアドレスを送信している(図24(b)参照)。
図24は、図8と比較して、周辺基板A1とA2へのデータをひとつの割り込み周期において送っている点で相違する。図24では周辺基板A1、A2、B、Cへのデータ送信回数は3回(t5、t6、t7)であるのに対し、図8では4回(t1〜t4)である。図24では周辺基板A1、A2に対するデータ送信タイミングはほぼ同じであり、その間隔はわずかである。処理A1−2は周辺基板A1へのデータ送信処理であり、処理A2−2は周辺基板A2へのデータ送信処理である。図24(a)に示すように、処理A1−2の終了tA1-2から処理A2−2の終了tA2-2までの時間は、tA2-2−tA1-2であるが、これは処理A2−2に要する時間、つまりデータ送信時間にほぼ相当する。通常、データ送信に要する時間は、割り込み周期に比べて非常に短く(十分の一〜百分の一、せいぜい数十μs程度)、したがって周辺基板A1、A2に対するデータ送信タイミングはほぼ同じとみなすことができる。これに対し、図8の例では周辺基板A1、A2に対するデータ送信タイミングは同じであるとみなすことができない。ここで、「同時」とは、周辺基板A1とA2に対するデータ送信(制御命令送出)の時間差がシリアルデータの送信時間程度の差しかなく、この時間差は当該周辺基板の動作態様の点から(例えば、可動要素51のバランスを崩さないようにステッピングモータ56Rと56Lを互いに同期して動作させるという観点から)、割り込み周期に比べて無視できる程度に小さい、という意味である。
図24において、周辺基板A1にステッピングモータ56Lの制御部を割り当て、周辺基板A2にステッピングモータ56Rの制御部を割り当てるようにすれば、それらを互いに同期して動作させることができる。
図23に示すように、サブ基板(処理部)20は、可動体50を制御するために、可動要素移動決定部20Aと、駆動部動作決定処理(第1駆動部動作決定処理)20Bと、データ生成部(第1データ生成処理)20C−1と、データ生成部(第2データ生成処理)20C−2と、逆転処理部20Dとを含む。なお、液晶制御基板200などの他の周辺基板のデータを生成するためのサブ基板20における構成の表示は省略している。
可動要素移動決定部20Aは、可動要素51の移動方向及び移動量を決定する可動要素移動決定処理を行う。例えば、可動要素51を上下どちらに動かすか、移動距離はどれだけにするかを決定する。移動距離に代えて駆動時間を決定するようにしてもよい(例えば、移動速度がほぼ一定の場合)。可動要素移動決定処理は、例えば、図14のメイン処理に相当する。
駆動部動作決定処理20Bは、可動要素移動決定部20Aで決定された移動方向に可動要素を動かすように、ステッピングモータ59Lの動作方向及び移動量を決定する第1駆動部動作決定処理を行う。例えば、決定された動作方向に応じて図21又は図22の(a)又は(b)のいずれかのテーブルを選択するとともに、ステップ1〜8又はステップ1〜4のいずれかを選択する。ステップは同時に複数選択することができる。例えば、ステップ1〜8のうちのステップ1〜4を選択することができる(ステップ数が多いとステッピングモータ59Lの回転速度が大きくなる)。なお、第1駆動部動作決定処理は、図24の処理A1−1に相当する。
データ生成部20C−1は、可動要素移動決定部20Aで決定されたステッピングモータ59Lの前記動作方向及び前記移動量に基づき可動体制御部60−1のためのデータを生成する第1データ生成処理を行う。例えば、ステップ1〜4のデータを所定の形式のデータにまとめ、データ送信部20TXへ渡す。なお、第1データ生成処理は、図24の処理A1−2に相当する。
逆転処理部20Dは、可動要素移動決定部20Aで決定されたステッピングモータ59Lの前記移動量はそのままに、前記動作方向を逆転させてステッピングモータ59R用の動作方向に変換する逆転処理を行う。前述のように、可動体50においては、可動要素51に対するステッピングモータ59Lと59Rの駆動方向が逆であるから、この逆転処理により可動要素51のバランスを崩さないようにできる。「逆転」とは、図21(a)の励磁手順1、2、3、・・・、8を、8、・・・、3、2、1のように反対にすること、あるいは、指令信号を生成する際に使用するテーブルを図21(a)から同図(b)に切り替えることである。図22の二相励磁についても同様である。逆転処理により、ステッピングモータ56Lと56Rは同じ量、同じ速度(ただし回転方向は逆)で回転する。逆転処理は簡単かつ短時間で行うことができる。例えば、図21及び図22において、他方のテーブルを選択すれば足りる。あるいは制御データのビットを反転させる程度の処理で済む。
データ生成部20C−2は、可動要素移動決定部20Aで決定されたステッピングモータ59Lの前記移動量、及び、逆転処理部20Dで逆転された動作方向に基づき可動体制御部60−2のためのデータを生成する第2データ生成処理を行う。例えば、逆転されたステップ1〜4のデータを所定の形式のデータにまとめ、データ送信部20TXへ渡す。なお、逆転処理及び第2データ生成処理は、図24の処理A2−2に相当する。
第1駆動部動作決定処理、第1データ生成処理、逆転処理及び第2データ生成処理は、例えば、図14の割り込み処理に相当する。
図23のサブ基板20の処理において、ステッピングモータ59Rの動作方向及び移動量を決定する処理を省いている。代わりに、ステッピングモータ59Lに関する第1駆動部動作決定処理の結果を、ステッピングモータ59Rに利用している。このため、図24において、図8の処理A2−1がない。
ひとつの割り込み周期において2つ(複数)の周辺基板に対してデータ送信を行うための条件は、周辺基板A1とA2へのデータ送信に係る処理の合計が割り込み周期を超えないことであると前述した。図23の装置によれば、図8の処理A2−1が不要であり(図24(a)参照)、この結果、当該条件をクリアできる可能性が高くなる。
前述の条件は、(割り込み周期)≧(処理A1−1とA1−2の処理時間)+(処理A2−1とA2−2の処理時間)であったが、図23の装置によれば、(割り込み周期)≧(処理A1−1とA1−2の処理時間)+(A2−2の処理時間)となる。前述のように、処理A2−2に要する時間はデータ送信時間にほぼ相当し、割り込み周期に比べて非常に短い(これに対し、処理A2−1に要する時間は処理A1−1と同程度であり比較的長い)。処理A2−2は逆転処理を含むが、この処理はテーブルの参照先の変更や制御データのビット反転であり、それほど時間を要さない。したがって、図23の装置によれば上記条件を満たし、ひとつの割り込み周期において2つ(複数)の周辺基板に対してデータ送信できるようになる。なお、逆転処理を含まない形態もある(後述)。
可動体50の可動要素51を動かす際にそのバランスを崩さないように複数の駆動部(ステッピングモータ)を同期しつつ動作させるので、一方の駆動部の動作方向及び移動量を決定する処理を省略できた。
可動体制御部(第1周辺基板、周辺基板A1)60−1は、固有のアドレスA1を予め記憶しているアドレス記憶部60−11と、信号線を監視し、信号線を介して送信されたアドレスがアドレス記憶部60−11のアドレスに一致したとき、アドレスとともに送信されたデータを取得する信号監視部60−12と、信号監視部60−12により取得されたデータに基づきステッピングモータ56Lの制御信号を生成する駆動部制御部60−13とを含む。
駆動部制御部60−13は、信号監視部60−12により取得されたデータに基づき指令信号を生成する指令信号生成部60−1Cと、前述の駆動回路60−1Aと、励磁回路60−1Bとを含む。
可動体制御部(第2周辺基板、周辺基板A2)60−2は、固有のアドレスA2を予め記憶しているアドレス記憶部60−21と、信号線を監視し、信号線を介して送信されたアドレスがアドレス記憶部60−21のアドレスに一致したとき、アドレスとともに送信されたデータを取得する信号監視部60−22と、信号監視部60−22により取得されたデータに基づきステッピングモータ56Rの制御信号を生成する駆動部制御部60−23とを含む。駆動部制御部60−23は、駆動部制御部60−13と同じものである。
図19に示したように、ステッピングモータ56Lと56Rでは回転方向が異なるが、逆転処理部20Dの逆転処理により、ステッピングモータ56Rは、ステッピングモータ56Rの反対方向に回転する。
したがって、発明の実施の形態によれば、ステッピングモータ56L(第1駆動部)と56R(第2駆動部)を互いに同期して動作させることができる。ここで、同期とは、回転方向は互いに逆であるが、同じ速度で同じ角度回転することである。
図25は、可動体制御部60−1の処理フローチャートである。
ST50:信号監視部60−12が信号線の信号を監視し、アドレスを取得する。
この具体的な手順は公知であるので、その説明は省略する。
ST51:信号監視部60−12が、アドレスが自分宛、例えばアドレス=アドレスA1であるかどうか判定する。YESであれば自分宛なのでST52以降の処理を実行する。
ST52:信号監視部60−12が信号線の信号を監視し、アドレスA1に引き続くデータAを取得する。
ST53:指令信号生成部60−1Cが取得されたデータAを解析し、ステッピングモータ56Lを駆動するための指令信号を生成する。
ST54:指令信号生成部60−1Cが生成した指令信号を出力する。この指令信号に基づき駆動回路60−1A及び励磁回路60−1Bが動作する。
可動体制御部60−2の処理は、可動体制御部60−1の処理と同じであるので、その説明は省略する。
発明の実施の形態によれば、図8及び図23に示すような共通の信号線を介してデータを伝送する遊技機においてデータ送信が間欠的に行われる場合であっても、複数の駆動部を「同時に」駆動することができる。前述のように、「同時」とは、可動体制御部60−1と60−2に対するデータ送信(制御命令送出)の時間差がシリアルデータの送信時間程度の差しかなく、この時間差は、可動要素51のバランスを崩さないようにステッピングモータ56Rと56Lを互いに同期して動作させるという点で、割り込み周期に比べて無視できる程度に小さい、という意味である。
発明の実施の形態によれば、図15〜図18に示すような可動要素51を上下させる可動体50について、これを駆動する一対のモータがそれぞれ完全に同期して動作するようになる。したがって、可動要素51の片側が傾いたり、バランスが崩れるといったことがない。
なお、同期させる必要のない液晶制御基板200やスピーカ基板201など他の周辺基板については、従来と同様にそれぞれ別のアドレスを設定しておき、異なるタイミングでデータを送信する。図24の例において、周辺基板Bを液晶制御基板200とし、周辺基板Cをスピーカ基板201とすれば、t6で液晶制御基板200へデータ送信し、t7でスピーカ基板201へデータ送信する。
また、ステッピングモータ59Rのデータを生成する際に、ステッピングモータ59Lの第1駆動部動作決定処理の結果を利用するので、一つの割り込み周期におけるデータ生成の時間を短縮できる。これにより、割り込み周期内にデータ送信処理が終わらない可能性を低くでき、データの欠落により可動要素51のバランスが崩れることを防止できる。
また、ステッピングモータ59Lと59Rの駆動方向が互いに反対である場合に、動作方向を逆転させる逆転処理を行い、他方のデータを生成するので、可動要素51に対する駆動方向が逆である可動体についてデータをより短時間で生成することができる。
ところで、可動要素51を所定の方向へ動かす際にステッピングモータ56Lと56Rが互いに反対方向へ回転するかどうかは、可動体50の駆動系の構造による。例えば、図26(a)に示すようにステッピングモータ56Lと56Rを同じ方向に取り付ければ、可動要素51を動かす際にステッピングモータ56Lと56Rは同じ方向に回転するようになる。あるいは、ステッピングモータ56Lと56Rの一方について、その駆動軸とプーリーの間に1枚(又は奇数枚)のギアを設けた場合も同様になる。
図26の可動体50の場合は、図23の逆転処理部23Dは不要であり、図23は、図27に示すブロック図のようになる。この発明の実施の形態は、図26及び図27の装置も含むものである。
他にも、可動体50が、可動要素51を動作させるためのステッピングモータ56Lと56Rの軸の先端にピニオンが取り付けられており、このピニオンギアが、ラックとしてのベルト59と歯合している構造を備える場合、ピニオンギアが、ステッピングモータ56Lが、軸先を右側(あるいは横バー部52の下側に設けられるなら左側)に向けてベルト59の前側(プーリよりも前側)と噛んでいるとともに、ステッピングモ一夕56Rが、軸先を左側(あるいは横バー部52の下側に設けられるなら右側)に向けてベルト59の後側(プーリよりも後側)と噛んでいるようにしてもよい。この場合も、上記例と同様に逆転処理が不要になる。
以上の説明において、可動体50は可動要素51が上下するものであり、可動要素51が傾かないようにすることが目的であった。発明の実施の形態は他の形態、例えば可動要素が左右に動くものにも適用できる。また、複数の駆動部がひとつの可動要素を動かす場合のみならず、複数の駆動部がそれぞれ別々の可動要素であって、可動要素同士が連携してひとつの演出を提供するような場合にも適用することができる。
バランスを保ちつつ可動要素を動かすことには可動要素が傾かないことが含まれるが、他にも、動きのタイミングが同じであること、動きの様子(速度、角度、移動量)が同じであることなども含まれる。
発明の実施の形態は、スロットマシン以外の遊技機、例えばパチンコ機などにも適用することができる。
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。