<全体構成>
図1は本発明の一実施形態に係るスロットマシン100の外観斜視図である。方向について言う場合には、図1に示すようにスロットマシン100の高さ方向を上下方向、正面(又は前面)−背面方向を奥行き方向、これらに直交する方向を左右方向とし、左右は正面視を基準とする。
図1に示すスロットマシン100は、本体101と、本体101の正面に取り付けられ、本体101に対して開閉可能な前面扉102と、を備える。本体101の中央内部には、(図示省略)外周面に複数種類の図柄が配置されたリールが3個(左リール110、中リール111、右リール112)収納され、スロットマシン100の内部で回転できるように構成されている。これらのリール110乃至112はステッピングモータ等の駆動装置により回転駆動される。
本実施形態において、各図柄は帯状部材に等間隔で適当数印刷され、この帯状部材が所定の円形筒状の枠材に貼り付けられて各リール110乃至112が構成されている。リール110乃至112上の図柄は、遊技者から見ると、図柄表示窓113から縦方向に概ね3つ表示され、合計9つの図柄が見えるようになっている。そして、各リール110乃至112を回転させることにより、遊技者から見える図柄の組み合せが変動することとなる。つまり、各リール110乃至112は複数種類の図柄の組合せを変動可能に表示する表示装置として機能する。なお、このような表示装置としてはリール以外にも液晶表示装置等の電子画像表示装置も採用できる。また、本実施形態では、3個のリールをスロットマシン100の中央内部に備えているが、リールの数やリールの設置位置はこれに限定されるものではない。
各々のリール110乃至112の背面には、図柄表示窓113に表示される個々の図柄を照明するためのバックライト(図示省略)が配置されている。バックライトは、各々の図柄ごとに遮蔽されて個々の図柄を均等に照射できるようにすることが望ましい。なお、スロットマシン100内部において各々のリール110乃至112の近傍には、投光部と受光部から成る光学式センサ(図示省略)が設けられており、この光学式センサの投光部と受光部の間をリールに設けられた一定の長さの遮光片が通過するように構成されている。このセンサの検出結果に基づいてリール上の図柄の回転方向の位置を判断し、目的とする図柄が入賞ライン上に表示されるようにリール110乃至112を停止させる。
入賞ライン表示ランプ120は、有効となる入賞ラインを示すランプである。有効となる入賞ラインは、遊技媒体としてベットされたメダルの数によって予め定まっている。入賞ラインは5ラインあり、例えば、メダルが1枚ベットされた場合、中段の水平入賞ラインが有効となり、メダルが2枚ベットされた場合、上段水平入賞ラインと下段水平入賞ラインが追加された3本が有効となり、メダルが3枚ベットされた場合、右下り入賞ラインと右上り入賞ラインが追加された5ラインが入賞ラインとして有効になる。
なお、入賞ラインの数については5ラインに限定されるものではなく、また、例えば、メダルが1枚ベットされた場合に、中段の水平入賞ライン、上段水平入賞ライン、下段水平入賞ライン、右下り入賞ラインおよび右上り入賞ラインの5ラインを有効な入賞ラインとして設定してもよく、ベット数に関係なく、一律に同一数の入賞ラインを有効な入賞ラインとして設定してもよい。
告知ランプ123は、例えば、後述する内部抽選において特定の入賞役(具体的には、ボーナス)に内部当選していること、または、ボーナス遊技中であることを遊技者に知らせるランプである。遊技メダル投入可能ランプ124は、遊技者が遊技メダルを投入可能であることを知らせるためのランプである。再遊技ランプ122は、前回の遊技において入賞役の一つである再遊技に入賞した場合に、今回の遊技が再遊技可能であること(メダルの投入が不要であること)を遊技者に知らせるランプである。リールパネルランプ128は演出用のランプである。
ベットボタン130乃至132は、スロットマシン100に電子的に貯留されているメダル(クレジットという)を所定の枚数分投入するためのボタンである。本実施形態においては、ベットボタン130が押下される毎に1枚ずつ最大3枚まで投入され、ベットボタン131が押下されると2枚投入され、ベットボタン132が押下されると3枚投入されるようになっている。以下、ベットボタン132はMAXベットボタンとも言う。なお、遊技メダル投入ランプ129は、投入されたメダル数に応じた数のランプを点灯させ、規定枚数のメダルの投入があった場合、遊技の開始操作が可能な状態であることを知らせる遊技開始ランプ121が点灯する。
メダル投入口141は、遊技を開始するに当たって遊技者がメダルを投入するための投入口である。すなわち、メダルの投入は、ベットボタン130乃至132により電子的に投入することもできるし、メダル投入口141から実際のメダルを投入(投入操作)することもでき、投入とは両者を含む意味である。貯留枚数表示器125は、スロットマシン100に電子的に貯留されているメダルの枚数を表示するための表示器である。遊技情報表示器126は、各種の内部情報(例えば、ボーナス遊技中のメダル払出枚数)を数値で表示するための表示器である。払出枚数表示器127は、何らかの入賞役に入賞した結果、遊技者に払出されるメダルの枚数を表示するための表示器である。貯留枚数表示器125、遊技情報表示器126、および、払出枚数表示器127は、7セグメント(SEG)表示器とした。
スタートレバー135は、リール110乃至112の回転を開始させるためのレバー型のスイッチである。即ち、メダル投入口141に所望するメダル枚数を投入するか、ベットボタン130乃至132を操作して、スタートレバー135を操作すると、リール110乃至112が回転を開始することとなる。スタートレバー135に対する操作を遊技の開始操作と言う。
ストップボタンユニット136には、ストップボタン137乃至139が設けられている。ストップボタン137乃至139は、スタートレバー135の操作によって回転を開始したリール110乃至112を個別に停止させるためのボタン型のスイッチであり、各リール110乃至112に対応づけられている。以下、ストップボタン137乃至139に対する操作を停止操作と言い、最初の停止操作を第1停止操作、次の停止操作を第2停止操作、最後の停止操作を第3停止操作という。なお、各ストップボタン137乃至139の内部に発光体を設けてもよく、ストップボタン137乃至139の操作が可能である場合、該発光体を点灯させて遊技者に知らせることもできる。
メダル返却ボタン133は、投入されたメダルが詰まった場合に押下してメダルを取り除くためのボタンである。精算ボタン134は、スロットマシン100に電子的に貯留されたメダル、ベットされたメダルを精算し、メダル払出口155から排出するためのボタンである。ドアキー孔140は、スロットマシン100の前面扉102のロックを解除するためのキーを挿入する孔である。
ストップボタンユニット136の下部には、機種名の表示と各種証紙の貼付とを行うタイトルパネル162が設けられている。タイトルパネル162の下部には、メダル払出口155、メダルの受け皿161が設けられている。
音孔160a乃至160cはスロットマシン100内部に設けられているスピーカの音を外部に出力するための孔である。前面扉102の左右各部に設けられたサイドランプ144は遊技を盛り上げるための装飾用のランプである。前面扉102の上部には演出装置600が配設されている。演出装置600は各リール110乃至112よりも上方に配置されている。これは、各リール110乃至112の視認性を確保すると共に、演出装置600が備えるモータ等の発熱が、各リール110乃至112の駆動系やスロットマシン100の制御系に熱害を与えないようにすることができる。演出装置600の詳細については後述する。
<制御部>
図2を用いて、スロットマシン100の制御部の制御部の回路構成について詳細に説明する。なお、同図は制御部の回路ブロック図を示したものである。スロットマシン100の制御部は、大別すると、遊技の進行を制御する主制御部300と、主制御部300が送信するコマンド信号(以下、単に「コマンド」と呼ぶ)に応じて、主な演出の制御を行う第1副制御部400と、第1副制御部400より送信されたコマンドに基づいて液晶表示装置601を制御する第2副制御部500と、によって構成されている。
<主制御部>
まず、スロットマシン100の主制御部300について説明する。主制御部300は、主制御部300の全体を制御する基本回路302を備えており、この基本回路302には、CPU304と、制御プログラムデータ、入賞役の内部抽選時に用いる抽選データ、リールの停止位置等を記憶するためのROM306と、一時的にデータを記憶するためのRAM308と、各種デバイスの入出力を制御するためのI/O310と、時間や回数等を計測するためのカウンタタイマ312と、WDT(ウォッチドックタイマ)314を搭載している。なお、ROM306やRAM308については他の記憶装置を用いてもよく、この点は後述する第1副制御部400や第2副制御部500についても同様である。
この基本回路302のCPU304は、水晶発振器314bが出力する所定周期のクロック信号をシステムクロックとして入力して動作する。さらには、CPU304は、電源が投入されるとROM306の所定エリアに格納された分周用のデータをカウンタタイマ312に送信し、カウンタタイマ312は受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU304に送信する。CPU304は、この割込み要求を契機に各センサ等の監視や駆動パルスの送信を実行する。例えば、水晶発振器314bが出力するクロック信号を8MHz、カウンタタイマ312の分周値を1/256、ROM306の分周用のデータを47に設定した場合、割り込みの基準時間は、256×47÷8MHz=1.504msとなる。
主制御部300は、0〜65535の範囲で数値を変動させるハードウェア乱数カウンタとして使用している乱数発生回路316と、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路338を備えており、CPU304は、この起動信号出力回路338から起動信号が入力された場合に、遊技制御を開始する(後述する主制御部メイン処理を開始する)。
また、主制御部300には、センサ回路320を備えており、CPU304は、割り込み時間ごとに各種センサ318(ベットボタン130センサ、ベットボタン131センサ、ベットボタン132センサ、メダル投入口141から投入されたメダルのメダル受付センサ、スタートレバー135センサ、ストップボタン137センサ、ストップボタン138センサ、ストップボタン139センサ、精算ボタン134センサ、メダル払出装置180から払い出されるメダルのメダル払出センサ、リール110のインデックスセンサ、リール111のインデックスセンサ、リール112のインデックスセンサ、等)の状態を監視している。
なお、センサ回路320がスタートレバーセンサのHレベルを検出した場合には、この検出を示す信号を乱数発生回路316に出力する。この信号を受信した乱数発生回路316は、そのタイミングにおける値をラッチし、抽選に使用する乱数値を格納するレジスタに記憶する。
メダル受付センサは、メダル投入口141の内部通路に2個設置されており、メダルの通過有無を検出する。スタートレバー135センサは、スタートレバー135内部に2個設置されており、遊技者によるスタート操作を検出する。ストップボタン137センサ、ストップボタン138センサ、および、ストップボタン139は、各々のストップボタン137乃至139に設置されており、遊技者によるストップボタンの操作を検出する。
ベットボタン130センサ、ベットボタン131センサ、および、ベットボタン132センサは、メダル投入ボタン130乃至132のそれぞれに設置されており、RAM308に電子的に貯留されているメダルを遊技への投入メダルとして投入する場合の投入操作を検出する。精算ボタン134センサは、精算ボタン134に設けられている。精算ボタン134が一回押されると、電子的に貯留されているメダルを精算する。メダル払出センサは、メダル払出装置180が払い出すメダルを検出するためのセンサである。なお、以上の各センサは、非接触式のセンサであっても接点式のセンサであってもよい。
リール110のインデックスセンサ、リール111のインデックスセンサ、および、リール112のインデックスセンサは、各リール110乃至112の取付台の所定位置に設置されており、リールフレームに設けた遮光片が通過するたびにLレベルになる。CPU304は、この信号を検出すると、リールが1回転したものと判断し、リールの回転位置情報をゼロにリセットする。
主制御部300は、リール装置110乃至112に設けたステッピングモータを駆動する駆動回路322、投入されたメダルを選別するメダルセレクタ170に設けたソレノイドを駆動する駆動回路324、メダル払出装置180に設けたモータを駆動する駆動回路326、各種ランプ338(入賞ライン表示ランプ120、告知ランプ123、遊技メダル投入可能ランプ124、再遊技ランプ122、遊技メダル投入ランプ129は、遊技開始ランプ121、貯留枚数表示器125、遊技情報表示器126、払出枚数表示器127)を駆動する駆動回路328を備えている。
また、基本回路302には、情報出力回路334(外部集中端子板248)を接続しており、主制御部300は、この情報出力回路334を介して、外部のホールコンピュータ(図示省略)等が備える情報入力回路334aにスロットマシン100の遊技情報(例えば、遊技状態)を出力する。
また、主制御部300は、電源管理部(図示しない)から主制御部300に供給している電源の電圧値を監視する電圧監視回路330を備えており、電圧監視回路330は、電源の電圧値が所定の値(本実施例では9v)未満である場合に電圧が低下したことを示す低電圧信号を基本回路302に出力する。
また、主制御部300は、第1副制御部400にコマンドを送信するための出力インタフェースを備えており、第1副制御部400との通信を可能としている。なお、主制御部300と第1副制御部400との情報通信は一方向の通信であり、主制御部300は第1副制御部400にコマンド等の信号を送信できるように構成しているが、第1副制御部400からは主制御部300にコマンド等の信号を送信できないように構成している。
<副制御部>
次に、スロットマシン100の第1副制御部400について説明する。第1副制御部400は、主制御部300が送信した制御コマンドを入力インタフェースを介して受信し、この制御コマンドに基づいて第1副制御部400の全体を制御する基本回路402を備えており、この基本回路402は、CPU404と、一時的にデータを記憶するためのRAM408と、各種デバイスの入出力を制御するためのI/O410と、時間や回数等を計測するためのカウンタタイマ412を搭載している。基本回路402のCPU404は、水晶発振器414が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。ROM406は、第1副制御部400の全体を制御するための制御プログラム及びデータ、バックライトの点灯パターンや各種表示器を制御するためのデータ等を記憶する。
CPU404は、所定のタイミングでデータバスを介してROM406の所定エリアに格納された分周用のデータをカウンタタイマ412に送信する。カウンタタイマ412は、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU404に送信する。CPU404は、この割込み要求のタイミングをもとに、各ICや各回路を制御する。
また、第1副制御部400には、音源IC418を設けており、音源IC418に出力インタフェースを介してスピーカ272、277を設けている。音源IC418は、CPU404からの命令に応じてアンプおよびスピーカ272、277から出力する音声の制御を行う。音源IC418には音声データが記憶されたS−ROM(サウンドROM)が接続されており、このROMから取得した音声データをアンプで増幅させてスピーカ272、277から出力する。
また、第1副制御部400には、駆動回路422が設けられ、駆動回路422に入出力インタフェースを介して各種ランプ420(上部ランプ、下部ランプ、サイドランプ144、タイトルパネル162ランプ、等)が接続されている。
また、CPU404は、出力インタフェースを介して第2副制御部500へ信号の送受信を行う。第2副制御部500は、演出装置600が備える液晶表示装置601の表示制御を行う。なお、液晶表示装置601に代えて他の電子画像表示装置、例えば、複数セグメントディスプレイ(7セグディスプレイ)、ドットマトリクスディスプレイ、有機ELディスプレイ、プラズマディスプレイを採用してもよく、更に、リール(ドラム)等の電子画像表示装置以外の表示装置を採用してもよい。
第2副制御部500は、第1副制御部400が送信した制御コマンドを入力インタフェースを介して受信し、この制御コマンドに基づいて第2副制御部500の全体を制御する基本回路502を備えており、この基本回路502は、CPU504と、一時的にデータを記憶するためのRAM508と、各種デバイスの入出力を制御するためのI/O510と、時間や回数等を計測するためのカウンタタイマ512と、を搭載している。基本回路502のCPU504は、水晶発振器514が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。ROM506は、第2副制御部500の全体を制御するための制御プログラム及びデータ、画像表示用のデータ等を記憶する。
CPU504は、所定のタイミングでデータバスを介してROM506の所定エリアに格納された分周用のデータをカウンタタイマ512に送信する。カウンタタイマ512は、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU404に送信する。CPU504は、この割込み要求のタイミングをもとに、各ICや各回路を制御する。
また、第2副制御部500には、VDP534(ビデオ・ディスプレイ・プロセッサー)を設けており、このVDP534には、バスを介してROM506、VRAM536が接続されている。VDP534は、CPU504からの信号に基づいてROM306に記憶された画像データ等を読み出し、VRAM536のワークエリアを使用して表示画像を生成し、液晶表示装置601に画像を表示する。
第3副制御部700は、演算処理装置であるCPUや、各IC、各回路と信号の送受信を行うためのデータバス及びアドレスバスを備え、以下に述べる構成を有する。
クロック補正回路は、水晶発振器から発振されたクロックを補正し、補正後のクロックをシステムクロックとしてCPUに供給する回路である。このCPUは、第1副制御部400からの信号(コマンド)を入出力インタフェースを介して受信し、第3副制御部700全体を制御する。
また、CPUにはタイマ回路が外部バスを介して接続されている。CPUは、所定のタイミングで外部データバスを介してROMの所定エリアに格納された分周用のデータをタイマ回路に送信する。タイマ回路は、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに、割り込み要求をCPUに送信する。CPUは、この割込み要求のタイミングをもとに、各ICや各回路を制御する。
また、CPUには、外部バスを介して、ROMおよびRAMが接続されている。ROMには、第3副制御部700全体を制御するための制御プログラムデータや演出用のデータが記憶されている。RAMは、CPUで処理されるプログラムのワークエリア等を有する。
また、CPUには、第1副制御部400および第2副制御部500と同様に、外部ICを選択するためのアドレスデコード回路が接続されており、アドレスデコード回路には、外部の機器から信号を受信するための入力インタフェース、および外部の機器へ信号を送信するための出力インタフェースが接続されている。入力インタフェースには、演出装置600が備える左モータセンサ639L、右モータセンサ639Rが接続されている。
出力インタフェースには、演出装置600が備える左モータ642Lおよび右モータ642Rがドライバを介して接続されている。
また、アドレスデコード回路には、入出力インタフェースが接続されている。この入出力インタフェースは、第1副制御部400から信号(コマンド)を受信すると共に第1副制御部400に信号(コマンド)を送信するためのインタフェースである。CPUは、入出力インタフェースを介して第1副制御部400から受信したコマンドに基づいて、演出装置600の各駆動機構を制御する処理を実行すると共に、コマンドを入出力インタフェースを介して第1副制御部400に送信する。
<図柄配列>
図3(a)を用いて、上述の各リール110乃至112に施される図柄配列について説明する。なお、同図は、各リール(左リール110、中リール111、右リール112)に施される図柄の配列を平面的に展開して示した図である。各リール110乃至112には、同図の右側に示す複数種類(本実施形態では8種類)の図柄が所定コマ数(本実施形態では、番号0〜20の21コマ)だけ配置されている。また、同図の左端に示した番号0〜20は、各リール110乃至112上の図柄の配置位置を示す番号である。例えば、本実施形態では、左リール110の番号1のコマには「リプレイ」の図柄、中リール111の番号0のコマには「ベル」の図柄、右リール112の番号2のコマには「スイカ」の図柄、がそれぞれ配置されている。
<入賞役の種類>
次に、図3(b)を用いて、スロットマシン100の入賞役の種類について説明する。なお、同図は入賞役(作動役を含む)の種類、各入賞役に対応する図柄組合せ、各入賞役の作動または払出を示している。本実施形態における入賞役のうち、ビッグボーナス(BB1、BB2)および、レギュラーボーナス(RB)はボーナス遊技に移行する役として、また、再遊技(リプレイ)は新たにメダルを投入することなく再遊技が可能となる役として、それぞれ入賞役とは区別され「作動役」と呼ばれる場合があるが、本実施形態における「入賞役」には、作動役である、ビッグボーナス、レギュラーボーナス、再遊技が含まれる。また、本実施形態における「入賞」には、メダルの配当を伴わない(メダルの払い出しを伴わない)作動役の図柄組合せが有効ライン上に表示される場合も含まれ、例えば、ビッグボーナス、レギュラーボーナス、再遊技への入賞が含まれる。
スロットマシン100の入賞役には、ビッグボーナス(BB1、BB2)と、レギュラーボーナス(RB)と、小役(チェリー、スイカ、ベル)と、再遊技(リプレイ)がある。なお、入賞役の種類は、これに限定されるものではなく、任意に採用できることは言うまでもない。
「ビッグボーナス(BB1、BB2)」(以下、単に、「BB」と称する場合がある)は、入賞により特別遊技であるビッグボーナス遊技(BB遊技)が開始される特別役(作動役)である。対応する図柄組合せは、BB1が「白7−白7−白7」、BB2が「青7−青7−青7」である。また、BB1、BB2についてはフラグ持越しを行う。すなわち、BB1、BB2に内部当選すると、これを示すフラグが立つ(主制御部300のRAM308の所定のエリア内に記憶される)が、その遊技においてBB1、BB2に入賞しなかったとしても、入賞するまで内部当選を示すフラグが立った状態が維持され、次遊技以降でもBB1、BB2に内部当選中となり、BB1に対応する図柄組み合わせ「白7−白7−白7」、BB2に対応する図柄組み合わせ「青7−青7−青7」が、揃って入賞する状態にある。
「レギュラーボーナス(RB)」は、入賞によりレギュラーボーナス遊技(RB遊技)が開始される特殊役(作動役)である。対応する図柄組合せは、「ボーナス−ボーナス−ボーナス」である。なお、RBについても上述のBBと同様にフラグ持越しを行う。但し、(詳細は後述するが)ビッグボーナス遊技(BB遊技)においては、レギュラーボーナス遊技(RB遊技)が内部当選することや、図柄組み合わせが入賞ライン上に表示されること、を開始条件とせずに、ビッグボーナス遊技の開始後からレギュラーボーナス遊技を開始し、1回のレギュラーボーナス遊技を終了した場合には次のレギュラーボーナス遊技をすぐに開始するような自動的にレギュラーボーナス遊技を開始させる設定としてもよい。
「小役(チェリー、スイカ、ベル)」(以下、単に、「チェリー」、「スイカ」、「ベル」と称する場合がある)は、入賞により所定数のメダルが払い出される入賞役で、対応する図柄組合せは、チェリーが「チェリー−ANY−ANY」、スイカが「スイカ−スイカ−スイカ」、ベルが「ベル−ベル−ベル」である。また、対応する払出枚数は同図に示す通りである。なお、「チェリー−ANY−ANY」の場合、左リール110の図柄が「チェリー」であればよく、中リール111と右リール112の図柄はどの図柄でもよい。
「再遊技(リプレイ)」は、入賞により次回の遊技でメダル(遊技媒体)の投入を行うことなく遊技を行うことができる入賞役(作動役)であり、メダルの払出は行われない。なお、対応する図柄組合せは、再遊技は「リプレイ−リプレイ−リプレイ」である。
<遊技状態の種類>
次に、スロットマシン100の遊技状態の種類について説明する。遊技状態とは、抽選などにおいて選択する抽選データの種別を識別するための情報である。本実施形態では、スロットマシン100の遊技状態は、通常遊技と、BB遊技と、RB遊技と、ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技と、に大別した。但し、内部当選遊技は、通常遊技に含まれる区分けであってもよい。
<通常遊技>
通常遊技に内部当選する入賞役には、ビッグボーナス(BB)と、レギュラーボーナス(RB)と、再遊技(リプレイ)と、小役(チェリー、スイカ、ベル)がある。「ビッグボーナス(BB)」は、入賞により特別遊技であるビッグボーナス遊技(BB遊技)が開始される特別役(作動役)である。レギュラーボーナス(RB)」は、入賞によりレギュラーボーナス遊技(RB遊技)を開始する特殊役(作動役)である。「再遊技(リプレイ)」は、入賞により次回の遊技でメダルの投入を行うことなく遊技を行うことができる入賞役(作動役)であり、メダルの払出も行われない。「小役」は、入賞により所定数のメダルが払い出される入賞役である。
なお、各々の役の内部当選確率は、通常遊技に用意された抽選データから、各々の役に対応付けされた抽選データの範囲に該当する数値データを、内部抽選時に取得される乱数値の範囲の数値データ(例えば65535)で除した値で求められる。通常遊技に用意された抽選データは、予めいくつかの数値範囲に分割され、各数値範囲に各々の役やハズレを対応付けしている。内部抽選を実行した結果得られた乱数値が、何れの役に対応する抽選データに対応する値であったかを判定し、内部抽選役を決定する。この抽選データは少なくとも1つの役の当選確率を異ならせた設定1〜設定6が用意され、遊技店の係員等はいずれかの設定値を任意に選択し、設定することができる。
通常遊技は、内部抽選の結果が概ねハズレ(ビッグボーナス(BB)、レギュラーボーナス(RB)、再遊技(リプレイ)および小役に当選していない)となる設定、又は、停止表示結果がいずれの役の図柄組合せに該当しないハズレの停止表示結果が概ね導出される設定がされており、獲得するメダルの総数が、投入したメダルの総数に満たない遊技状態になっている。よって、遊技者にとっては不利益となる遊技状態である。但し、予め定めた条件を満たした場合(例えば、特定の図柄組み合わせが表示された場合)には、再遊技の内部当選の確率を上昇させる変動をさせてもよい遊技状態であり、この場合、遊技に用いられるメダルの消費が抑えられ、小役の入賞によって所定数のメダルが払い出されることにより、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態になり、遊技者にとっては利益となる遊技状態になる場合がある。
<BB遊技>
BB遊技は、遊技者にとっては利益となる遊技状態になるように設定されている。つまり、BB遊技は、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態となる。BB遊技は、本実施形態では、ビッグボーナス(BB)の入賞により開始され、RB遊技(後述する)を連続して繰り返し実行可能になっており、遊技中に予め定められた一の数(例えば、465枚)を超えるメダルが獲得された場合に終了する。但し、BB遊技はRB遊技を複数回数実行可能であればよく、例えば、RB遊技を開始する役(図柄組み合わせは例えば、リプレイ−リプレイ−リプレイ)を設定し、この役が内部当選した場合、または、入賞した場合に、RB遊技を開始するように設定してもよい。さらには、BB遊技は、BB遊技中のRB遊技を除くBB一般遊技を予め定めた回数(例えば、30回)実行した場合、または、BB遊技中に実行したRB遊技の回数が予め定めた回数に達した場合(例えば、3回)に終了するようにしてもよい。
<RB遊技>
RB遊技は、遊技者にとっては利益となる遊技状態になるように設定されている。つまり、RB遊技は、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態となる。RB遊技は、本実施形態では、レギュラーボーナス(RB)の入賞により開始され、予め定めた一の役が内部当選の確率を上昇させる変動(例えば、「設定1」「通常遊技」に設定された「小役1」の内部当選確率1/15を、予め定めた一の値である内部当選確率1/1.2に上昇させる)をし、予め定めた一の数(例えば、8回)の入賞があった場合に終了する。RB遊技は、予め定めた回数(少なくとも2回)の入賞があった場合(例えば、8回)、または、RB遊技中に実行したRB遊技の回数が予め定めた回数に達した場合(例えば、8回)に終了するようにしてもよい。上述したBB遊技は、RB遊技を複数回数実行可能であるので、一回のRB遊技を行った場合には、BB遊技で得られるメダルの総数よりも少ないメダル数を獲得して終了することとなる。
<ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技>
ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技に内部当選する入賞役には、再遊技(リプレイ)と、小役がある。ビッグボーナス(BB)およびレギュラーボーナス(RB)は内部当選することはなく、ビッグボーナス(BB)かレギュラーボーナス(RB)に対応する図柄組み合わせを入賞させることが可能となっている遊技状態である。
但し、ビッグボーナス(BB)およびレギュラーボーナス(RB)に内部当選した次遊技から、再遊技の内部当選の確率を変動させてもよく、例えば、再遊技の内部当選の確率を上昇させる変動をさせて、ビッグボーナス(BB)およびレギュラーボーナス(RB)対応する図柄組み合わせが入賞するまでの間は、獲得するメダルの総数が、投入したメダルの総数とほぼ同じとなる遊技状態とし、通常遊技と比べると遊技者にとっては利益となる遊技状態としてもよい。なお、BB遊技、RB遊技は両者とも遊技者にとって利益となる遊技状態であるため、総じて、ボーナス遊技、又は、特別遊技と称する場合がある。
<演出装置600>
次に、演出装置600の構成について説明する。図4(a)は正面側から見た演出装置600の斜視図、図4(b)は背面側から見た演出装置600の斜視図、図5は正面側から見た演出装置600の分解斜視図である。
演出装置600は正面カバー602を備える。正面カバー602は、中央に開口部を有する枠体であり、その背後に位置する液晶表示装置601や演出部材移動装置610を保護する。液晶表示装置601は本実施形態の場合、方形のパネル状をなしており、その正面には方形の表示部(表示画面)601aを備える。上側支持板603、下側支持板604及び背板605は、演出部材移動装置610を支持する部材である。
<演出部材移動装置610>
図6は演出部材移動装置610の斜視図であり、右演出部材620R及び左演出部材620Lを分離した状態を示す図である。なお、右演出部材620R及び左演出部材620Lを演出部材と総称することがある。演出部材移動装置610は、その中央部に液晶表示装置601(図6において不図示)が装着され、演出部材620R及び620Lを液晶表示装置601の表示部601a上(液晶表示装置601の遊技者側)で移動させることができる。また、演出部材移動装置610には、右モータセンサ639R及び左モータセンサ639Lが設けられており、演出部材620R及び620Lの位置を制御(より詳細にはモータ制御)するにあたり、これらのセンサの検出結果が用いられる(詳細は後述)。なお本実施形態では、演出部材620R及び620Lが、液晶表示装置601の遊技者側を左右方向に移動する構成としたが、上下方向に移動する構成とすることも可能であり、移動方向は適宜選択できる。
図7は図6の状態から更に演出部材移動装置610を分解した図である。演出部材移動装置610は、案内機構630と駆動機構640とを備える。
<案内機構>
案内機構630は演出部材620R及び620Lの移動を案内するための機構である。図7を参照して、本実施形態の場合、案内機構630は、ガイド部材631乃び632と、ガイド部材631に沿って移動するスライダ631aR及び631aLと、ガイド部材632に沿って移動するスライダ632aR及び632aLと、ローラ635R及び635Lと、を備える。
<正面側及び背面側の案内機構>
ガイド部材631乃び632は、本実施形態の場合、断面円形の軸であり、左右方向に互いに平行に延設されている。ガイド部材631は、その両端部が支持部材637に支持され、ガイド部材632は、その両端部が支持部材638に支持される。
ガイド部材631は、液晶表示装置601(図7において不図示)の正面側で上方に位置しており、ガイド部材632は、液晶表示装置601の正面側で下方に位置している。本実施形態の場合、ガイド部材631はスライダ631aR、631aLに挿通しており、また、ガイド部材632はスライダ632aR、632aLに挿通している。
スライダ631aRと632aRとには、これらに跨るようにして右演出部材620Rが連結され、スライダ631aLと632aLとには、これらに跨るようにして左演出部材620Lが連結される。ガイド部材631及び632に沿ってスライダ631aR、632aR、スライダ631aL、632aLが移動することで、液晶表示装置601の正面側において、その正面に沿った同一面上での演出部材620R及び620Lが移動することになる。スライダ631aRとスライダ631aLとには、被検出片SDがそれぞれ形成されている。この被検出片SDは、支持部材637に設けられた右モータセンサ639R及び左モータセンサ639Lにより検出され、演出部材620R及び620Lが特定の位置(例えば初期位置)にあることが検出される。
<駆動機構>
次に、図7及び図8を参照して駆動機構640について説明する。図8は駆動機構640の分解斜視図である。駆動機構640は、上側の支持板641aと、下側の支持板641bと、これらの間の支柱641cと、を備える。支持板641aは、モータ642R、642Lを支持する。本実施形態の場合、これらのモータ642R、642Lはいずれもステッピングモータである。モータ642Rは演出部材620Rを、モータ642Lは演出部材620Lを、それぞれ移動させる駆動力を発生し、演出部材620R及び演出部材620Lはそれぞれ独立して移動制御される。
上側の支持板641aと、下側の支持板641bの間には、上下方向に延び、互いに平行な軸645R及び645Lが支持される。液晶表示装置601は軸645R及び645Lの間に配置されるため、軸645R及び645Lの間から表示部601aが正面に露出する構成である。図9は軸645R及び645L周辺の構造の分解斜視図である。軸645R及び645Lは、その両端部に断面がD字状のDカット部645aを有し、Dカット部645aを除いた区間は断面が円形となっている。
軸645Lには、上から順に、カットワッシャW01、ベアリングBR01、回転体646DL、樹脂ワッシャW02、回転体646ML、ベアリングBR02、回転体646FL、ベアリングBR03、ローラ635L、ベアリングBR04、回転体646FL、ベアリングBR05、樹脂ワッシャW03、回転体646DL、ベアリングBR06、カットワッシャW04が装着される。
カットワッシャW01、W04は、それぞれ、支持板641a、支持板641bに対する軸645Lの抜止め防止用の嵌合部材である。ベアリングBR01、BR06は、それぞれ支持板641a、支持板641bに取り付けられて、軸645Lを円滑に回転自在に支持するための軸受けである。
本実施形態では、動力伝達機構としてベルト伝動機構を採用する。このため、回転体646DL、回転体646ML、回転体646FL、回転体646FL、回転体646DLはいずれもプーリであるが、例えば、チェーンベルト伝動機構を採用する場合はスプロケットとなる。
回転体646DL及び646MLは、Dカット部645aの断面形状に対応するD字状の孔を有し、ここにDカット部645aが挿通して回転方向に対しては回転不能となる意味で軸645Lに固定される固定回転体である。回転体646DLは本来1つで足りるが、動作を安定させるため、補助回転体として1つ追加して合計2つとし、上下に離間して配置している。回転体646FLはベアリングBR02及びBR05を介して軸645Lに取り付けられるため、軸645Lに対して回転自在な自由回転体である。回転体646FLも本来1つで足りるが、動作を安定させるため、補助回転体として1つ追加して合計2つとし、上下に離間して配置している。ローラ635LはベアリングBR03及びBR04を介して軸645Lに取り付けられ、軸645Lに対して回転自在である。
軸645Rには、上から順に、カットワッシャW11、ベアリングBR11、回転体646FR、ベアリングBR12、樹脂ワッシャW12、回転体646MR、回転体646DR、ベアリングBR13、ローラ635R、ベアリングBR14、回転体646DR、樹脂ワッシャW13、ベアリングBR15、回転体646FR、ベアリングBR16、カットワッシャW14が装着される。
カットワッシャW11、W14は、それぞれ、支持板641a、支持板641bに対する軸645Rの抜止め防止用の嵌合部材である。ベアリングBR11、BR16は、それぞれ支持板641a、支持板641bに取り付けられて、軸645Rを円滑に回転自在に支持するための軸受けである。
上記の通り、本実施形態では、動力伝達機構としてベルト伝動機構を採用する。このため、回転体646FR、回転体646MR、回転体646DR、回転体646DR、回転体646FRはいずれもプーリであるが、例えば、チェーンベルト伝動機構を採用する場合はスプロケットとなる。
回転体646MR及び646DRは、Dカット部645aの断面形状に対応するD字状の孔を有し、ここにDカット部645aが挿通して回転方向に対しては回転不能となる意味で軸645Rに固定される固定回転体である。回転体646FRはベアリングBR12及びBR15を介して軸645Rに取り付けられるため、軸645Rに対して回転自在な自由回転体である。ローラ635RはベアリングBR13及びBR14を介して軸645Rに取り付けられ、軸645Rに対して回転自在である。
図8に戻り、駆動機構640は無端の紐体643R、643L、644L、644Rを備える。上記の通り、本実施形態では、動力伝達機構としてベルト伝動機構を採用する。このため、紐体643R、643L、644L、644Rはいずれもベルトであるが、例えば、チェーンベルト伝動機構を採用する場合はチェーンとなる。紐体と回転体との関係を図10を参照して説明する。図10は駆動機構640の説明図であり、特に紐体と回転体との関係を示している。
紐体643Rはモータ642Rの出力軸に取り付けられた回転体と回転体646MRとに巻き回されている。したがって、モータ642Rを回転させると軸645Rが回転することになる。紐体643Lはモータ642Lの出力軸に取り付けられた回転体と回転体646MLとに巻き回されている。したがって、モータ642Lを回転させると軸645Lが回転することになる。
紐体644Lは、回転体646DLと回転体646FRとに巻き回されている。回転体646DLは軸645Lに固定されているため、その回転により回転して紐体644Lが走行するが、回転体646FRは軸645Rに回転自在に取り付けられているため、その回転が軸645Rに伝達されず、また、軸645Rの回転により回転するものでもない。上側の紐体644Lには、スライダ631aLが固定される。また、下側の紐体644Lには、スライダ632aLが固定される。よって、紐体644Lが走行すると左演出部材620Lが移動することになる。図10では、左演出部材620Lがスライダ631aL及び632aLを介して紐体644Lに固定されていることが示されている。
なお、紐体644L、回転体646DL及び回転体646FRの組は、本来1組で足りるが、動作を安定させるため、補助紐体、補助回転体として1組追加して合計2組とし、上下に離間して配置している。
紐体644Rは、回転体646DRと回転体646FLとに巻き回されている。回転体646DRは軸645Rに固定されているため、その回転により回転して紐体644Rが走行するが、回転体646FLは軸645Lに回転自在に取り付けられているため、その回転が軸645Lに伝達されず、また、軸645Lの回転により回転するものでもない。上側の紐体644Rには、スライダ631aRが固定される。また、下側の紐体644Rには、スライダ632aRが固定される。よって、紐体644Rが走行すると右演出部材620Rが移動することになる。図10では、右演出部材620Rがスライダ631aR及び632aRを介して紐体644Rに固定されていることが示されている。
なお、紐体644L、回転体646DL及び回転体646FRの組と同様、紐体644R、回転体646DR及び回転体646FLの組は、本来1組で足りるが、動作を安定させるため、補助紐体、補助回転体として1組追加して合計2組とし、上下に離間して配置している。2組とするか1組とするかは、演出部材620R及び620Lの動作態様に応じて適宜選択でき、例えば、一方の演出部材は2組採用で動作を安定させ、他方の演出部材は本来的に動作が安定していることから1組採用としてもよい。
また、回転体646DL、646FL、646DR、646FRはいずれも同径であるため、液晶表示装置601の正面側の走行区間において、紐体644L及び644Rは互いに平行である。
さて、本実施形態では、回転体646DLの駆動軸となる軸645Lを、回転体646FLを回転自在に支持する軸としても用い、これらの共通軸とした。また、回転体646DRの駆動軸となる軸645Rを、回転体646FRを回転自在に支持する軸としても用い、これらの共通軸とした。このため、別々に軸を設定する場合よりも、演出部材620R及び620Lの有効移動スペースとして、より大きなスペースを確保できる。なお、本実施形態では、軸645Rと軸645Lとの双方を共通軸としたが、いずれか一方のみを共通軸とした構成であっても、より大きな有効移動スペースを確保できる。また、本実施形態では、1つの紐体について回転体を2つ設けた構成としたが、回転体は3以上であってもよい。その場合、2つの共通軸に設ける回転体をいずれも回転自在な回転体とすることができる。例えば、紐体644Lを走行させる駆動用の回転体が別に存在する場合は、回転体646DLも回転自在な回転体とすることが可能である。要するに、2つの演出部材の各駆動機構で、軸を共通するための要件は、双方の駆動機構の各回転体が共通軸に固定されないことであり、少なくとも一方の回転体が回転自在であればよいことになる。
ここで、図11を用いて、左演出部材620Lおよび右演出部材620Rの移動範囲について説明する。同図は、左演出部材620Lおよび右演出部材620Rの移動範囲を示す図である。
まず、上記説明した機構により、左演出部材620Lおよび右演出部材620Rは、演出装置600内において液晶表示装置601を左右に移動することができるように構成されている。本実施形態では、左演出部材620Lおよび右演出部材620Rの最大移動可能範囲を666ステップとし、このステップ単位で左演出部材620Lおよび右演出部材620Rが動作するようにモータ642Lおよびモータ642Rを制御している。
図11(a)には、左演出部材620Lの最大移動可能範囲が示されている。このうち、両端から6ステップ分の区間については、左演出部材620Lと他の構成部材との衝突を避けるため、あえて進入しないように制御される。従って、通常の左演出部材620Lの移動範囲は、この両端の6ステップ分の区間(米印で示す区間)を除いた654ステップ分の区間となる。このうち、左側の端を全開位置と称し、右側の端を全閉位置と称する。また、左演出部材620Lの位置は、全閉位置からの距離(ステップ数)で表される。すなわち、全開位置は654ステップの位置に相当し、全閉位置は0ステップの位置に相当し、通常移動範囲の中心位置は327ステップの位置に相当する。また、通常移動範囲の左端6ステップ分の区間は、左演出部材620Lに設けられた被検出片SDが左モータセンサ639Lに検出される区間であり、残りの区間である648ステップの位置から全閉位置までの区間は、左演出部材620Lに設けられた被検出片SDが左モータセンサ639Lに検出されない区間である。なお、本実施形態では、上記648ステップの位置をセンサ位置と称する。図11(a)には、これらの各位置と、これを表すステップの値が示されている。なお、以下では、全開位置から全閉位置に向かう方向を閉方向と称し、その逆を開方向と称する。この左演出部材620Lの場合は、閉方向は遊技者から見て右方向となり、開方向は遊技者から見て左方向となる。
図11(b)には、右演出部材620Rの最大移動可能範囲が示されている。このうち、両端から6ステップ分の区間については、右演出部材620Rと他の構成部材との衝突を避けるため、あえて進入しないように制御される。従って、通常の右演出部材620Rの移動範囲は、この両端の6ステップ分の区間(米印で示す区間)を除いた654ステップ分の区間となる。このうち、右側の端を全開位置と称し、右側の端を全閉位置と称する。また、右演出部材620Rの位置は、全閉位置からの距離(ステップ数)で表される。すなわち、全開位置は654ステップの位置に相当し、全閉位置は0ステップの位置に相当し、通常移動範囲の中心位置は327ステップの位置に相当する。また、通常移動範囲の右端6ステップ分の区間は、右演出部材620Rに設けられた被検出片SDが右モータセンサ639Rに検出される区間であり、残りの区間である648ステップの位置から全閉位置までの区間は、右演出部材620Rに設けられた被検出片SDが右モータセンサ639Rに検出されない区間である。なお、本実施形態では、上記648ステップの位置をセンサ位置と称する。図11(b)には、これらの各位置と、これを表すステップの値が示されている。なお、この右演出部材620Rの場合は、閉方向は遊技者から見て左方向となり、開方向は遊技者から見て右方向となる。
<主制御部メイン処理>
図12を用いて、主制御部300のCPU304が実行する主制御部メイン処理について説明する。なお、同図は主制御部メイン処理の流れを示すフローチャートである。上述したように、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)338を設けている。この起動信号を入力した基本回路302のCPU304は、リセット割込によりリセットスタートしてROM306に予め記憶している制御プログラムに従って図12に示す主制御部メイン処理を実行する。
電源投入が行われると、まず、ステップS101で各種の初期設定を行う。この初期設定では、CPU304のスタックポインタ(SP)へのスタック初期値の設定、割込禁止の設定、I/O310の初期設定、RAM308に記憶する各種変数の初期設定、WDT314への動作許可及び初期値の設定等を行う。
ステップS102ではメダル投入・スタート操作受付処理を実行する。ここではメダルの投入の有無をチェックし、メダルの投入に応じて入賞ライン表示ランプ120を点灯させる。なお、前回の遊技で再遊技に入賞した場合は、前回の遊技で投入されたメダル枚数と同じ数のメダルを投入する処理を行うので、遊技者によるメダルの投入が不要となる。また、スタートレバー135が操作されたか否かのチェックを行い、スタートレバー135の操作があればステップS103へ進む。
ステップS103では投入されたメダル枚数を確定し、有効な入賞ラインを確定する。ステップS104では乱数発生回路316で発生させた乱数を取得する。ステップS105では、現在の遊技状態に応じてROM306に格納されている入賞役抽選テーブルを読み出し、これとステップS104で取得した乱数値とを用いて内部抽選を行う。内部抽選の結果、いずれかの入賞役に内部当選した場合、その入賞役の内部当選フラグをONにする。ステップS106では内部抽選結果に基づき、リール停止データを選択する。
ステップS107では全リール110乃至112の回転を開始させる。ステップS108では、ストップボタン137乃至139の受け付けが可能になり、いずれかのストップボタンが押されると、押されたストップボタンに対応するリール110乃至112の何れかをステップS106で選択したリール停止制御データに基づいて停止させる。リールの停止制御は、基本的には、内部当選した入賞役がある場合は、その入賞役に対応する図柄組み合わせが表示されることは許容し、ハズレ等の場合はいずれの役に対応する図柄組み合わせも表示されないように、いわゆる引き込み・蹴飛ばしといったリールの停止制御を行う。
全リール110乃至112が停止するとステップS109へ進む。ステップS109では、入賞判定を行う。ここでは、有効化された入賞ライン上に、何らかの入賞役に対応する絵柄組合せが表示された場合にその入賞役に入賞したと判定する。例えば、有効化された入賞ライン上に「ベル−ベル−ベル」が揃っていたならばベル入賞と判定する。また、フラグ持ち越しの場合を除き、内部当選フラグをリセットする。
ステップS110では払い出しのある何らかの入賞役に入賞していれば、その入賞役に対応する枚数のメダルを入賞ライン数に応じて払い出す。ステップS111では遊技状態制御処理を行う。遊技状態制御処理では、通常遊技、BB遊技、RB遊技、内部当選遊技、の各遊技状態の移行に関する処理を行い、それらの開始条件、終了条件の成立により、遊技状態を移行する。なお、この遊技状態制御処理では、BB遊技の終了時にBB終了演出用の演出タイマを設定する処理が実行される。この演出タイマは、BB遊技の終了時の演出を実行するために設定されるタイマである。また、このタイマは演出装置600に設けられた可動部材の位置補正が完了するまでの期間を担保(遊技の進行を遅延)するタイマでもある。こうして本実施形態では、停止表示された図柄の組み合わせに基づいて遊技者に特典を付与している。以上により1ゲームが終了する。以降ステップS102へ戻って上述した処理を繰り返すことにより遊技が進行することになる。
<第1副制御部400の処理>
図13を用いて、第1副制御部400の処理について説明する。なお、図13(a)は、第1副制御部400のCPU404が実行するメイン処理のフローチャートである。図13(b)は、第1副制御部400のコマンド受信割込処理のフローチャートである。図13(c)は、第1副制御部400のタイマ割込処理のフローチャートである。
まず、図13(a)のステップS201では、各種の初期設定を行う。電源投入が行われると、まずステップS201で初期化処理が実行される。この初期化処理では、入出力ポートの初期設定や、RAM408内の記憶領域の初期化処理等を行う。ステップS202では、タイマ変数が10以上か否かを判定し、タイマ変数が10となるまでこの処理を繰り返し、タイマ変数が10以上となったときには、ステップS203の処理に移行する。
ステップS203では、タイマ変数に0を代入する。ステップS204では、未処理コマンドに応じたコマンド処理を行う。なお、本実施形態では、遊技状態更新コマンドを受信すると、後述する遊技状態更新時処理が実行される(図19)。コマンド処理では第1副制御部400のCPU404は、主制御部300からコマンドを受信したか否かを判別する。ステップS205では、演出制御処理を行う。例えば、ステップS204で新たなコマンドがあった場合には、このコマンドに対応する処理を行う。この処理には、例えば、演出データをROM406から読み出す等の処理を行い、演出データの更新が必要な場合には演出データの更新処理を行うことが含まれる。
ステップS206では、ステップS205の処理結果に基づいて、演出装置600が備えるモータの駆動制御を行うためのコマンドを第3副制御部700へ送信する設定を行う。ステップS207では、ステップS205の処理結果に基づいて音制御処理を行う。例えば、ステップS205で読み出した演出データの中に音源IC418への命令がある場合には、この命令を音源IC418に出力する。ステップS208では、ステップS205の処理結果に基づいてランプ制御処理を行う。例えば、ステップS205で読み出した演出データの中に各種ランプ420への命令がある場合には、この命令を駆動回路422に出力する。
ステップS209では、ステップS205の処理結果に基づいて第2副制御部500に制御コマンドを送信する設定を行う情報出力処理を行う。例えば、ステップS205で読み出した演出データの中に第2副制御部500に送信する制御コマンドがある場合には、この制御コマンドを出力する設定を行い、ステップS202へ戻る。
次に、図13(b)を用いて、第1副制御部400のコマンド受信割込処理について説明する。このコマンド受信割込処理は、第1副制御部400が、主制御部300が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS210では、主制御部300が出力したコマンドを未処理コマンドとしてRAM408に設けたコマンド記憶領域に記憶する。
次に、図13(c)を用いて、第1副制御部400のCPU404によって実行する第1副制御部タイマ割込処理について説明する。第1副制御部400は、所定の周期(本実施形態では2msに1回)でタイマ割込を発生するハードウェアタイマを備えており、このタイマ割込を契機として、タイマ割込処理を所定の周期で実行する。
ステップS211では、図13(a)に示す第1副制御部メイン処理におけるステップS202において説明したRAM408のタイマ変数記憶領域の値に、1を加算して元のタイマ変数記憶領域に記憶する。従って、ステップS202において、タイマ変数の値が10以上と判定されるのは20ms毎(2ms×10)となる。ステップS212では、ステップS206で設定された第3副制御部700への制御コマンドの送信、ステップS209で設定された第2副制御部500への制御コマンドの送信、演出用乱数値の更新処理等を行う。
次に、図14を用いて、図13(a)の第1副制御部メイン処理における第1副制御部初期設定処理(ステップS201)の詳細について説明する。同図は、図13(a)に示す第1副制御部初期設定処理(ステップS201)の流れを示すフローチャートである。
まず、最初のステップS2001では、電源の準備が完了したか(起動に必要な電圧が供給されているか否か)が判定される。この処理は電源の準備が完了するまで繰り返し実行され、電源の準備が完了するとステップS2003に進む。
ステップS2003では、左モータ642Lを制御するための制御情報を初期化するコマンドが設定され、続くステップS2005では、右モータ642Rを制御するための制御情報を初期化するコマンドが設定され、ステップS2007に進む。
ステップS2007では、駆動異常判定タイマに値が設定され、ステップS2009に進む。この駆動異常判定タイマは、左モータ642Lおよび右モータ642Rに対する異常の判定に用いられる(図15のステップS2111)。
ステップS2009では、位置補正事前処理が実行される。この処理では、左モータ642Lまたは右モータ642Rに異常があるかを判定し、後の初期設定時位置補正処理の事前処理として左演出部材620Lおよび右演出部材620Rの位置を調整する。その後、ステップS2011に進む。なお、この位置補正事前処理の詳細については図15を用いて後述する。
ステップS2011では、初期設定時位置補正処理が実行される。この処理では、左演出部材620Lおよび右演出部材620Rの位置を制御するにあたり位置情報の初期化を行い、ステップS2013に進む。なお、この初期設定時位置補正処理の詳細については図17を用いて後述する。
ステップS2013では、待機位置移動処理が実行され、この第1副制御部初期設定処理を終了する。なお、この待機位置移動処理の詳細については図18を用いて後述する。
次に、図15、図16、および図29を用いて、図14の第1副制御部初期設定処理における位置補正事前処理(ステップS2009)の詳細について説明する。図15は、図14に示す位置補正事前処理(ステップS2009)の流れを示すフローチャートである。また、図16は、モータ制御用のデータを表で示す図である。また、図29は、図14に示す第1副制御部初期設定処理のうち、位置補正事前処理と、初期設定時位置補正処理による演出部材の動作の一部を示す図である。
この図16には、左演出部材620Lおよび右演出部材620Rの位置補正を行うために用いられる位置補正データが示されている。この位置補正データは第3副制御部700のROMに格納されており、左演出部材620Lおよび右演出部材620Rの移動時間(4バイトで表記)と、その移動ステップ数(4バイトで表記)から成る。なお、移動ステップ数については最初の1バイトが「0」であれば開方向(全閉位置から全開位置に向かう方向)への移動を示し、「8」であれば閉方向(全開位置から全閉位置に向かう方向)への移動を示す。このとき、残りの3バイトは移動距離を示している。
例えば、左演出部材620Lに対する位置補正データIDが「L_PR_B1」の位置補正データの場合、移動時間に「H’0010」が記載されているが、これは16msに相当する(16msの16進数表記)。また、移動ステップ数には「H’8008」が記載されているが、これは移動方向が閉方向(左演出部材620Lでは右方向)であることを示しており、残りの3バイトの「008」は8ステップ分の移動距離であることを示している。すなわち、位置補正データIDが「L_PR_B1」の位置補正データは、左演出部材620Lが、16msの時間で右方向に8ステップ分移動することを示している。なお、図16の備考欄には、この移動の詳細が示されている。この位置補正データIDが第1副制御部400から第3副制御部700に送信され、このIDに応じた制御が実行されることになる。
なお、図16に示す位置補正データは、左演出部材620Lおよび右演出部材620Rの位置補正を行うために用いられるものであり、これらの演出部材を用いた演出を実行する際に用いられるものではない。なお、これらの位置補正データは、相対座標動作(相対動作)による移動を行うものである。
図15に戻り、まず、ステップS2101では、第3副制御部700からの信号に基づいて、左モータセンサ639Lが被検出片SDを検出したか否かが判定される。なお、ここで、左モータセンサ639Lが被検出片SDを検出した場合として想定しているのは、左演出部材620Lが、全開位置から閉方向に6ステップ分の区間(図11参照)にある場合である。この条件を満たす場合にはステップS2103に進み、そうでない場合には、ステップS2105に進む。
ステップS2103では、位置補正データIDを「L_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、閉方向(右方向)に8ステップ分移動する。この移動によって、左演出部材620Lの被検出片SDが、左モータセンサ639Lに検出されない位置(センサ位置よりも右側、図11参照)に移動することになる。その後、ステップS2105に進む。
ステップS2105では、第3副制御部700からの信号に基づいて、右モータセンサ639Rが被検出片SDを検出したか否かが判定される。なお、ここで、右モータセンサ639Rが被検出片SDを検出した場合として想定しているのは、右演出部材620Rが、全開位置から閉方向に6ステップ分の区間(図11参照)にある場合である。この条件を満たす場合にはステップS2107に進み、そうでない場合には、ステップS2109に進む。
ステップS2107では、位置補正データIDを「R_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、閉方向(左方向)に8ステップ分移動する。この移動によって、右演出部材620Rの被検出片SDが、右モータセンサ639Rに検出されない位置(センサ位置よりも左側、図11参照)に移動することになる。その後、ステップS2109に進む。
ステップS2109では、第3副制御部700からの信号に基づいて、左モータセンサ639Lおよび右モータセンサ639Rのいずれかが被検出片SDを検出した状態となっているか否か判定される。この条件を満たす場合には、ステップS2111に進み、そうでない場合にはステップS2117に進む。
上記ステップS2101からステップS2107では、モータセンサ639L、639Rが被検出片SDを検出しない場合には演出部材620L、620Rの位置が維持され、被検出片SDを検出した場合には被検出片SDを検出しない位置まで移動される。従って、何の異常もなければ、ステップS2101からステップS2107の処理によって双方のモータセンサ639L、639Rは被検出片SDを検出しない状態となり、ステップS2109の判定処理によってステップS2117に進むことになる。一方、いずれかのモータセンサが被検出片SDを検出した状態となっている場合には、何らかの異常である可能性があるため、これに対処すべくステップS2111に進むことになる。
ステップS2111では、駆動異常判定タイマが0か否かが判定される。この条件を満たす場合にはステップS2113に進み、そうでない場合にはステップS2109を再度実行する。この駆動異常判定タイマは、第1副制御部400のタイマ割込み処理の各種更新処理(図13のステップS212)においてカウントダウンされる。すなわち、この駆動異常判定タイマで設定された期間に亘って異常の有無を判定させ、異常が継続している場合にステップS2113に進むことになる。
ステップS2113では、左モータ642Lおよび右モータ642Rの駆動停止を要求するコマンドが設定される。このコマンドを受信した第3副制御部700による駆動停止処理により、モータの停止制御が実行される(図24)。さらにステップS2115では、駆動部に何らかの異常があることを報知し、この位置補正事前処理を終了する。
一方、ステップS2109の判定処理で、双方のモータセンサ639L、639Rが被検出片SDを検出しない状態である場合に進むステップS2117では、位置補正データIDを「L_PR_B2」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、開方向(左方向)に666ステップ分の移動を開始する(図29(a)の左演出部材620L参照)。このステップ分の移動は、左モータセンサ639Lによって左演出部材620Lの被検出片SDが検出される位置まで移動させるためのものである。そして、この移動の最中に、ステップS2119によって左モータセンサ639Lが左演出部材620Lの被検出片SDを検出すると、ステップS2121によって左モータ642Lの駆動停止を要求するコマンドが設定され、このコマンドを受信した第3副制御部700による駆動停止処理においてモータの停止制御が実行される(図24、図29(b)の左演出部材620L参照)。
ここで、上記の説明でステップS2117で左演出部材620Lを「666ステップ」移動させる理由について補足する。本実施形態では、演出部材620の被検出片SDがモータセンサ639に検出されたときの位置を基準とし、この基準位置に対する演出部材620の移動量によって演出部材620の位置を把握している。しかし、例えば脱調が生じた場合や、店員によって意図的に移動させられた場合には、第3副制御部700が把握している移動量と実際の移動量が異なるため、演出部材620の正確な位置を把握できなくなってしまう。そこで、図11で説明した最大移動可能範囲のどこに演出部材620があっても、被検出片SDがモータセンサ639に検出される位置に演出部材620を移動させることができるように、この最大移動可能範囲に相当するステップ数(666ステップ)だけ演出部材620を移動させる構成を採用している。なお、以降の処理においても、同様の趣旨で最大移動可能範囲に相当するステップ数(666ステップ)だけ演出部材620を移動させる場合がある(図15のステップS2123、図20のステップS2503)。
続くステップS2123では、位置補正データIDを「R_PR_B2」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、開方向(右方向)に666ステップ分の移動を開始する(図29(a)の右演出部材620R参照)。このステップ分の移動は、右モータセンサ639Rによって右演出部材620Rの被検出片SDが検出される位置まで移動させるためのものである。そして、この移動の最中に、ステップS2125によって右モータセンサ639Rが右演出部材620Rの被検出片SDを検出すると、ステップS2127によって右モータ642Rの駆動停止を要求するコマンドが設定され、このコマンドを受信した第3副制御部700による駆動停止処理においてモータの停止制御が実行される(図24、図29(b)の右演出部材620R参照)。このステップS2127が終わると、この位置補正事前処理を終了する。
上記説明したステップS2117からステップS2127までの処理によって、左モータセンサ639Lが左演出部材620Lの被検出片SDを検出している状態で左演出部材620Lを停止させる一方、右モータセンサ639Rが右演出部材620Rの被検出片SDを検出している状態で右演出部材620Rを停止させることになる。
次に、図17を用いて、図14の第1副制御部初期設定処理における初期設定時位置補正処理(ステップS2011)の詳細について説明する。図17は、図14に示す初期設定時位置補正処理(ステップS2011)の流れを示すフローチャートである。なお、以下の説明では、図29を適宜参照する。
この初期設定時位置補正処理は、図15で説明した位置補正準備処理の後に実行される。すなわち、左演出部材620Lが、左モータセンサ639Lによって被検出片SDが検出される位置にあり、また右演出部材620Rが、右モータセンサ639Rによって被検出片SDが検出される位置(図29(b)に示す位置)にある状態で、この処理が開始される。
まず、ステップS2201では、位置補正データIDを「L_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、閉方向(右方向)に8ステップ分の移動を開始する(図29(c))。この移動は、左モータセンサ639Lによって左演出部材620Lの被検出片SDが検出されない位置に移動させるためのものである。そして、この移動の最中に、ステップS2203の判定処理により、第3副制御部700からの信号に基づいて左モータセンサ639Lが左演出部材620Lの被検出片SDを検出しなくなったことが判定されると、続くステップS2205で左モータの現在のステップ数に648ステップを設定するコマンドが設定される。すなわち、左演出部材620Lに設けられた被検出片SDが左モータセンサ639Lに検出されない範囲のうち、左側の端が「648ステップ」の位置と定められることになる。この処理の後、ステップS2207に進む。
ステップS2207では、位置補正データIDを「R_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、閉方向(左方向)に8ステップ分の移動を開始する(図29(c))。この移動は、右モータセンサ639Rによって右演出部材620Rの被検出片SDが検出されない位置に移動させるためのものである。そして、この移動の最中に、ステップS2209の判定処理により、第3副制御部700からの信号に基づいて右モータセンサ639Rが右演出部材620Rの被検出片SDを検出しなくなったことが判定されると、続くステップS2211で右モータの現在のステップ数に648ステップを設定するコマンドが設定される。すなわち、右演出部材620Rに設けられた被検出片SDが右モータセンサ639Rに検出されない範囲のうち、右側の端が「648ステップ」の位置と定められることになる。この処理の後、この初期設定時位置補正処理を終了する。
次に、図18および図30を用いて、図14の第1副制御部初期設定処理における待機位置移動処理(ステップS2013)の詳細について説明する。図18は、図14に示す待機位置移動処理(ステップS2013)の流れを示すフローチャートである。図30は、図18に示す待機位置移動処理による動作を示す図である。
まず、ステップS2301では、位置補正データIDを「L_PR_B3」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、開方向(左方向)に8ステップ分の移動を開始する(図30(a))の左演出部材620L)。
続くステップS2303では、位置補正データIDを「R_PR_B3」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、開方向(右方向)に8ステップ分の移動を開始する(図30(a))の右演出部材620R)。
ステップS2305では、第3副制御部700からの信号に基づいて、左モータセンサ639Lによって左演出部材620Lの被検出片SDが検出されたか否かが判定される。被検出片SDを検出している場合にはステップS2307に進み、検出していない場合にはこのステップS2305を繰り返す。
ステップS2307では、第3副制御部700からの信号に基づいて、右モータセンサ639Rによって右演出部材620Rの被検出片SDが検出されたか否かが判定される。被検出片SDを検出している場合にはステップS2309に進み、検出していない場合にはこのステップS2307を繰り返す。
ステップS2309では、位置補正データIDを「R_PR_B4」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、閉方向(左方向)に654ステップ移動する(図30(b))の右演出部材620R)。なお、このデータでは移動時間が1ms(H’0001)となっているが、654ステップの移動には1ms以上の時間がかかる。この場合のように、指示された時間が最短時間より短い場合には、最も速い速度での移動が実行される。この処理の後、この待機位置移動処理を終了する。
上記ステップS2301およびステップS2303により、図17の初期設定時位置補正処理で移動したステップ数だけ左演出部材620Lおよび右演出部材620Rが戻ることになる。すなわち、左演出部材620Lは、その被検出片SDが左モータセンサ639Lによって検出される位置に移動し、右演出部材620Rは、その被検出片SDが右モータセンサ639Rによって検出される位置に移動する(図30(a))。そして、ステップS2305およびステップS2307によって双方の演出部材620L、620Rがこの位置に移動したかが判定されると、ステップS2309で右演出部材620Rが移動可能範囲の左端付近まで移動する(図30(b))。これによって、左演出部材620Lと右演出部材620Rが組み合わされた状態になる(図30(c))。この位置が、本実施形態における左演出部材620Lと右演出部材620Rの待機位置となる。なお、双方の演出部材620がこの待機位置にあるときは、正面カバー602に隠れて遊技者から視認し難いように構成されている。
次に、図19を用いて、図13(a)に示す第1副制御部メイン処理のコマンド処理(ステップS204)において、遊技状態更新コマンドを受信した際に実行される遊技状態更新時処理の詳細について説明する。同図は、図13(a)に示すコマンド処理(ステップS204)において、遊技状態更新コマンドを受信した際に実行される遊技状態更新時処理の流れを示すフローチャートである。
まず、ステップS2401では、遊技状態更新コマンドに含まれる情報に基づいて、現在の遊技状態を示すRT情報が更新される。なお、特別遊技状態(特別遊技の状態)から通常遊技状態(通常遊技の状態)へ移行する際には、第3副制御部700に位置補正のタイミングであることを示すコマンドの送信設定が実行される。
続くステップS2403では、RT情報に基づいて第1副制御部400の遊技状態を移行させるモード移行処理が実行され、ステップS2405に進む。
ステップS2405では、RT情報に基づいて特別遊技状態が終了したか否かが判定される。この条件を満たす場合にはステップS2407に進み、そうでない場合にはステップS2409に進む。
ステップS2407では、遊技状態更新時位置補正処理が実行され、ステップS2409に進む。なお、この遊技状態更新時位置補正処理の詳細については、図20を用いて後述する。
ステップS2409では、遊技状態更新コマンドに基づくその他の処理が実行され、この遊技状態更新時処理を終了する。なお、特別遊技状態から通常遊技状態へ移行する際には、第3副制御部700に位置補正のタイミングが終了したことを示すコマンドの送信設定が実行される。
次に、図20を用いて、図19の遊技状態更新時処理における遊技状態更新時位置補正処理(ステップS2407)の詳細について説明する。同図は、図19に示す遊技状態更新時位置補正処理(ステップS2407)の流れを示すフローチャートである。なお、この処理は、左演出部材620Lと右演出部材620Rが特別遊技状態における演出動作の終了時に並んでいることを想定した処理である。
まず、ステップS2501では、位置補正データIDを「L_PR_B4」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、閉方向(右方向)に666ステップ分の移動を開始する。
続くステップS2503では、位置補正データIDを「R_PR_B2」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、開方向(右方向)に666ステップ分の移動を開始する。
ステップS2505では、第3副制御部700からの信号に基づいて、右モータセンサ639Rが右演出部材620Rの被検出片SDを検出したか否かが判定される。この条件を満たす場合にはステップS2507に進み、そうでない場合には、再度ステップS2505を実行する。
ステップS2507では、左モータ642Lおよび右モータ642Rの駆動停止を要求するコマンドが設定され、ステップS2509に進む。なお、このコマンドを受信した第3副制御部700による駆動停止処理においてモータの停止制御が実行される(図24)。
ステップS2509では、演出担保時間が経過したか否かを判定する。この演出担保時間が経過していない場合には再度このステップS2509を実行し、演出担保時間が経過した場合にはステップS2511に進む。
ステップS2511では、位置補正データIDを「L_PR_B5」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、開方向(左方向)に654ステップ分移動する。
続くステップS2513では、位置補正データIDを「R_PR_B5」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、閉方向(左方向)に654ステップ分移動する。
ステップS2515では、第3副制御部700からの信号に基づいて、右モータセンサ639Rが右演出部材620Rの被検出片SDを検出しているか否かが判定される。右モータセンサ639Rが右演出部材620Rの被検出片SDを検出している場合にはこのステップS2515を実行し、右モータセンサ639Rが右演出部材620Rの被検出片SDを検出していない場合にはステップS2517に進む。
ステップS2517では、右モータ642Rの現在のステップ数に648ステップを設定するコマンドが設定される。
ステップS2519では、第3副制御部700からの信号に基づいて、左モータセンサ639Lが左演出部材620Lの被検出片SDを検出したか否かが判定される。この条件を満たす場合にはステップS2521に進み、そうでない場合には、再度ステップS2519を実行する。
ステップS2521では、左モータおよび右モータの駆動停止を要求するコマンドが設定され、ステップS2523に進む。なお、このコマンドを受信した第3副制御部700による駆動停止処理においてモータの停止制御が実行される(図24)。
ステップS2523では、位置補正データIDを「L_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、閉方向(右方向)に8ステップ分移動する。
続くステップS2525では、位置補正データIDを「R_PR_B3」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、開方向(右方向)に8ステップ分移動する。
ステップS2527では、第3副制御部700からの信号に基づいて、左モータセンサ639Lが左演出部材620Lの被検出片SDを検出しているか否かが判定される。左モータセンサ639Lが左演出部材620Lの被検出片SDを検出している場合にはこのステップS2527を実行し、左モータセンサ639Lが左演出部材620Lの被検出片SDを検出していない場合にはステップS2529に進む。
ステップS2529では、左モータ642Lの現在のステップ数に648ステップを設定するコマンドが設定される。
ステップS2531では、位置補正データIDを「L_PR_B3」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、左演出部材620Lは、開方向(左方向)に8ステップ分移動する。
続くステップS2533では、位置補正データIDを「R_PR_B1」に更新するコマンドが設定される(図16参照)。このコマンドを受信した第3副制御部700によって位置補正データ更新処理(図27)および駆動処理(図25)が実行されることにより、右演出部材620Rは、閉方向(左方向)に8ステップ分移動する。この処理の後、この遊技状態更新時位置補正処理を終了する。
なお、この遊技状態更新時位置補正処理が終了するまでの間に遊技が進行してしまわないように、主制御部300ではタイマ(演出タイマ)を用いてこの処理に要する時間待機する処理を実行することで、遊技を進行させないようにしている。
ここで、上記説明した遊技状態更新時位置補正処理による演出部材620の動作について、さらに図31、図32、および図33を用いて説明する。図31は、通常遊技状態における演出の一例を示す図である。図32は、遊技状態更新時位置補正処理による演出部材620の動作を示す図である。図33は、図32の動作と、液晶表示装置601の画像が組み合わされている様子を示す図である。
まず、通常遊技状態では、演出部材620の動作と液晶表示装置601の画像を組み合わせた演出が実行される。図31には、待機位置にあった演出部材620が、演出の開始に伴い演出装置600の中央に移動した様子が示されている(図31(a)および(b))。なお、このとき左右の演出部材620は巻物の状態(組み合せた状態)を維持するため、一緒に移動(あるいは一方の演出部材を伴ってもう一方が移動)する。さらに、演出部材620の内側の隙間から新たな景色が広がるように画像を表示させつつ、左演出部材620Lおよび右演出部材620Rを離れさせる演出が実行される。
一方、特別遊技状態中は、左演出部材620Lおよび右演出部材620Rが待機位置にあり、特別遊技状態の終了時に、上記説明した遊技状態更新時位置補正処理が開始される。
まず、上記ステップS2501からステップS2507までの動作について説明する。まず、ステップS2503は、右演出部材620Rの被検出片SDが右モータセンサ639Rに検出される位置まで移動させるためのものである。なお、ステップS2501では左演出部材620Lを移動させているが、これは、双方の演出部材620を一緒に移動させることにより、この移動があたかも演出の一部であるかのように認識させるための処理である。また、通常遊技状態での演出においても双方の演出部材620が一緒に移動する演出が実行されるため(図31(a)(b))、位置補正であるにも関わらず遊技者に違和感を与えないようにすることができる。図32(a)には、ステップS2501およびステップS2503により、双方の演出部材620が一緒に右方向に移動していることが示されている。なお、図33(a)に示すように、液晶表示装置601では、双方の演出部材620の移動に合わせて画像を表示する演出が実行される。そして、この移動の最中に、ステップS2505で右モータセンサ639Rにより右演出部材620Rの被検出片SDが検出されたと判定されると、続くステップS2507で左モータ642Lおよび右モータ642Rの駆動停止が要求され、後述する駆動停止処理においてモータの停止制御が実行される(図24)。なお、このモータの停止制御の後、ステップS2509で演出担保時間が経過するまで待機処理が実行されるが、これは上記説明した液晶表示装置601による演出が一定時間実行するのを待つための処理である。図33(b)には、ステップS2507で駆動停止した演出部材620が、液晶表示装置601による演出が一定時間実行される間、待機処理により停止したままになっていることが示されている。
上記説明したステップS2501からステップS2509までの処理によって、右モータセンサ639Rが右演出部材620Rの被検出片SDを検出している状態であって、且つ左演出部材620Lおよび右演出部材620Rが揃った状態で、双方の演出部材620を停止させることになる。
次に、ステップS2511およびステップS2513では、左演出部材620Lおよび右演出部材620Rが揃った状態(組み合わされた状態)のまま、通常移動範囲のうちの左端に向けて移動を開始する(図32(b))。この移動中、ステップS2515で右モータセンサ639Rにより右演出部材620Rの被検出片SDが検出されなくなったと判定されると、続くステップS2517で右モータの現在のステップ数に648ステップが設定される。すなわち、右演出部材620Rに設けられた被検出片SDが右モータセンサ639Rに検出されない範囲のうち、右側の端が「648ステップ」の位置と定められることになる。なお、この移動に合わせて液晶表示装置601による演出が実行される(図33(c))。
さらに移動を続け(図32(c))、ステップS2519で左モータセンサ639Lにより左演出部材620Lの被検出片SDが検出されたと判定されると、続くステップS2521で左モータ642Lおよび右モータ642Rの駆動停止が要求され、後述する駆動停止処理においてモータの停止制御が実行される(図24)。
続くステップS2523およびステップS2525では、左演出部材620Lおよび右演出部材620Rが揃った状態(組み合わされた状態)のまま、右方向に8ステップ分の移動を開始する。この移動中、ステップS2527で左モータセンサ639Lにより左演出部材620Lの被検出片SDが検出されなくなったと判定されると、続くステップS2529で左モータの現在のステップ数に648ステップが設定される。すなわち、左演出部材620Lに設けられた被検出片SDが左モータセンサ639Rに検出されない範囲のうち、左側の端が「648ステップ」の位置と定められることになる。
続くステップS2531およびステップS2533では、左演出部材620Lおよび右演出部材620Rが揃った状態のまま左方向に8ステップ分移動する。この移動により、上述した待機位置移動処理(図18)で説明した待機位置に、双方の演出部材620が配置された状態になる。
次に、図21を用いて、図13(a)の第1副制御部メイン処理におけるモータ制御処理(ステップS206)の詳細について説明する。同図は、図13(a)に示すモータ制御処理(ステップS206)の流れを示すフローチャートである。
まず、ステップS2601では、第1副制御部メイン処理における演出制御処理(図13のステップS205)の結果、左モータ642Lや右モータ642Rに対する演出指示データが更新(例えば、左演出部材620Lまたは右演出部材620Rに対する演出指示の更新(上書き更新)や、左演出部材620Lまたは右演出部材620Rに対して指示された演出の終了指示の更新(上書き更新)等)されたか否かが判定される。この条件を満たす場合にはステップS2603に進み、そうでない場合にはステップS2605に進む。
ステップS2603では、左モータ642Lや右モータ642Rに対して駆動停止を要求するコマンドが設定され、ステップS2605に進む。なお、駆動停止が要求されたモータ642に対しては、第3副制御部700の駆動停止処理において停止制御が実行される(図24)。
ステップS2605では、パーツリストデータの更新許可がされているか否かが判定される。この条件を満たす場合にはステップS2607に進み、そうでない場合にはこのモータ制御処理を終了する。なお、このパーツリストデータの更新許可は、第3副制御部700からの信号に基づいて設定される(図24のステップS3111)。
ステップS2607では、演出指示データに従いパーツリストデータを更新するコマンドが設定された後、パーツリストデータの更新許可がない状態に設定され、このモータ制御処理を終了する。なお、このコマンドを受信した第3副制御部700では、パーツデータ更新処理(図6)および駆動処理(図25)が実行され、パーツリストデータに基づく演出が実行されることになる。
ここで、演出指示データおよびパーツリストデータについて説明する。図22は、演出指示データ、パーツリストデータ、およびパーツデータの構造を示した概念図である。
本実施形態では、左演出部材620Lおよび右演出部材620Rに対する演出を実行するために、モータ642Lおよび右モータ642Rを制御するためのデータであるパーツリストデータが第3副制御部700のROMに格納されている。第1副制御部メイン処理における演出制御処理(図13のステップS205)では、演出に必要なパーツリストデータを読み出すための演出指示データが生成され、この演出指示データに基づいてパーツリストデータの演出パターンNOが第3副制御部700に送信される。第3副制御部700では、この演出パターンNOに該当するパーツリストデータを用いて左モータ642Lおよび右モータ642Rを制御し、様々な演出が実行できるように構成されている。図22には、左モータ642Lおよび右モータ642Rのそれぞれに対する演出指示データがあることが示されている。
パーツリストデータは、同図に示されるように、例えば「演出パターンNO」、「動作回数」、「データ数(N)」および「演出データ1〜N」の項目から構成されており、第3副制御部700のROMの所定記憶領域に予め記憶されている。
まず、「演出パターンNO」は、パーツリストデータ毎に割り振られた固有の番号である。「動作回数」の領域には、0〜65535の範囲で動作回数が格納されており、この動作回数だけ「演出データ1〜N」に示す動作が繰り返される(0の場合は無限ループとなる)。「データ数(N)」の領域には、0〜65535の範囲でデータ1〜Nの総数(N)が格納されている(0の場合は無効(無視)となる)。「演出データ1〜N」の領域には、パーツデータを参照するためのアドレス(各々のパーツデータが格納されているROM上の先頭アドレス)がそれぞれ格納されている。すなわち、パーツリストデータは、最小単位の制御情報である複数のパーツデータを時系列的に組み合わせることで、様々な連続動作の制御を実行可能に構成されている。
パーツデータは、同図に示されるように、例えば「演出データID」、「目的位置(停止ポジション)」、「移動に要する時間」の項目から構成されており、第3副制御部700のROMの所定記憶領域に予め記憶されている。
まず、「演出データID」は、パーツデータ毎に割り振られた固有の符号である。なお、この「演出データID」は、絶対座標動作(通常動作)か相対座標動作(相対動作)かを識別可能な符号を含むものである。「目的位置」の領域に格納されているデータは演出部材620の移動先を示すデータであるが、「演出データID」が絶対座標動作を示す符号を含む場合と、相対座標動作を示す符号を含むの場合とで、その内容が異なる。まず、絶対座標動作の場合には、全閉位置から目的位置までのステップ数(全閉位置を原点とする絶対位置)が格納されている。一方、相対座標移動の場合には、移動ステップ数(相対移動量)とその移動方向を示す情報が格納されている。
絶対座標動作の場合には、目的位置までのステップ数から現在のステップ数を減ずることで移動ステップ数を算出し、この移動ステップ数だけ演出部材620を移動させる制御が実行される。なお、算出された値が正の値である場合には開方向へ移動させる制御が実行され、負の値である場合には閉方向へ移動させる制御が実行される。一方、相対座標動作の場合、移動ステップ数の計算は必要なく、「目的位置」の領域に格納されている移動ステップ数と移動方向を示す情報に従って、演出部材620を移動させる制御が実行される。
「移動に要する時間」の領域には、0〜65535msの範囲で移動に要する時間が格納されている(0の場合は最速動作となる)。
<第3副制御部700の処理>
次に、図23を用いて、第3副制御部700において所定の周期(ここでは0.5ms)で実行されるインターバルタイマ割込処理の詳細について説明する。同図は、第3副制御部700において実行されるインターバルタイマ割込処理の流れを示すフローチャートである。
まず、ステップS3001では、第3副制御部700のRAMに記憶されている駆動停止フラグがオンに設定されているか否かが判定される。このフラグがオンに設定されている場合にはステップS3007に進み、オフに設定されている場合にはステップS3003に進む。
ステップS3003では、駆動停止処理が実行され、ステップS3005に進む。なお、この駆動停止処理の詳細については図24を用いて後述する。
ステップS3005では、駆動処理が実行され、ステップS3007に進む。なお、この駆動処理の詳細については図25を用いて後述する。
ステップS3007では、パーツリストデータの更新コマンドを受信したか否かが判定される。この条件を満たす場合にはステップS3009に進み、そうでない場合にはステップS3011に進む。
ステップS3009では、パーツデータ更新処理が実行され、ステップS3011に進む。なお、このパーツデータ更新処理の詳細については図26を用いて後述する。
ステップS3011では、位置補正データIDの更新コマンドを受信したか否かが判定される。この条件を満たす場合にはステップS3013に進み、そうでない場合にはこのインターバルタイマ割込処理を終了する。
ステップS3013では、位置補正データ更新処理が実行され、このインターバルタイマ割込処理を終了する。なお、この位置補正データ更新処理の詳細については図27を用いて後述する。
次に、図24を用いて、図23のインターバルタイマ割込処理における駆動停止処理(ステップS3003)の詳細について説明する。同図は、図23に示す駆動停止処理(ステップS3003)の流れを示すフローチャートである。
まず、ステップS3101では、第1副制御部400から駆動停止の要求がされたか否かが判定される。この条件を満たす場合にはステップS3103に進み、そうでない場合にはこの駆動停止処理を終了する。
ステップS3103では、モータ642の停止制御に用いる駆動停止情報がセットされ、ステップS3105に進む。
ステップS3105では、駆動停止フラグがセットされ、ステップS3107に進む。
ステップS3107では、ステップS3103でセットされた駆動停止情報を含む動作情報が、モータドライバに出力される。この処理によって、駆動停止が要求されたモータ642の駆動が停止される。
続くステップS3109では、位置補正のタイミングであるか否かが判定される。本実施形態では、特別遊技状態が終了したときに第1副制御部400から送信されるコマンドに基づいて、位置補正のタイミングであるか否かを判定する(図19のステップS2401、ステップS2409)。この条件を満たす場合にはステップS3113に進み、そうでない場合にはステップS3111に進む。
ステップS3111では、第1副制御部400にパーツリストデータの更新を許可するコマンドが設定され、この駆動停止処理を終了する。
次に、図25を用いて、図23のインターバルタイマ割込処理における駆動処理(ステップS3005)の詳細について説明する。同図は、図23に示す駆動処理(ステップS3005)の流れを示すフローチャートである。
まず、ステップS3201では、駆動情報を変更するタイミングであるか否かが判定される。駆動情報を変更するタイミングである場合にはステップS3203に進み、そうでない場合にはステップS3209に進む。本実施形態では、パーツリストデータに従って全てのパーツデータが更新された時、後述する移動ステップ数カウンタが0となった時、および、位置補正データが更新された時に、このタイミングであると判定される。
ステップS3203では、後述するパーツデータ更新処理(図26)で更新されてから、このステップS3203でまだ参照されていないパーツデータのうち、読み出し順序が最も早いものが参照され、移動ステップ数カウンタの値がセットされる。なお、この移動ステップ数については図16および図22を用いて説明したため、ここでの説明は省略する。
続くステップS3205では、出力回数カウント判定値がセットされる。以下、この出力回数カウント判定値について説明する。
上述したようにモータ642はステッピングモータであり、2相励磁の場合、1回のパルス出力に対して1ステップの移動が行われるように構成されている。例えば、移動ステップ数が10である場合には、10回のパルス出力が必要になる。この移動については、移動に要する時間(図22参照)が定められている。この移動に要する時間を、移動に必要なパルスの出力回数で除算すると、1回のパルス出力あたりの所要時間が求められる。一方、第3副制御部700では、所定の周期(0.5ms)で図23に示すインターバルタイマ割込処理およびこの駆動処理が実行されることになる。上記1回のパルス出力あたりの所要時間を、この割込み周期(駆動処理の実行周期)で除算することで、割込み処理(駆動処理)が何回実行された時点で1回のパルス出力を行えばよいかが求められる。例えば、1回のパルス出力あたりの所要時間が2msである場合には、2/0.5=4となり、割込み処理(駆動処理)が4回実行された時点で1回のパルスを出力すればよいことになる。この1回のパルス出力に要する割込み回数(駆動処理の実行回数)が、上記出力回数カウント判定値として用いられる。
以上説明したように、上記出力回数カウント判定値とは、パーツデータによる移動制御を行うにあたり、必要となるパルス出力1回あたりの割込み回数を定めた値であり、「移動に要する時間」/「移動に必要なパルスの出力回数(=移動ステップ数)」/「割込み周期」で求められる。なお、1−2相励磁の場合、2相励磁の倍のパルス出力が必要となるので、上記の値を2倍した値が用いられる。
さらに続くステップS2307では、モータ642の駆動制御に用いる駆動情報がセットされる。この駆動情報は、回転方向、トルク、励磁方法(2相、1−2相)等の情報を含む。パーツデータによる移動方向については、図16および図22を用いて説明したが、この移動方向に相当する回転方向が、駆動情報にセットされる。また、第3副制御部700のROMには、移動ステップ数と出力回数カウント判定値に対応するトルクおよび励磁方法を格納した動作テーブルが設けられている。この動作テーブルから、上記移動ステップ数と出力回数カウント判定値に対応するトルクおよび励磁方法が参照され、駆動情報にセットされる。
ステップS3209では、パルスの出力タイミングであるか否かが判定される。この条件を満たす場合にはステップS3211に進み、そうでない場合にはステップS3217に進む。本実施形態では、第3副制御部700のRAMに出力回数カウンタが設けられており、この出力回数カウンタの値と上記出力回数カウンタ判定値が等しくなったときに、パルスの出力タイミングであると判定される。
ステップS3211では、ステップS3207でセットされた駆動情報を含む動作情報(例えば、1パルス分の動作を行うことを示す2バイト構成の情報)が、モータドライバに出力され、ステップS3213に進む。
ステップS3213では、移動ステップ数カウンタの値が減算される。具体的には、駆動情報の励磁方法が2相励磁である場合には1が減算される。また、駆動情報の励磁方法が1−2相励磁である場合にはステップS3211が2回実行される度に1が減算される。
ステップS3215では、モータ642の現在ステップ数を更新する処理が実行される。具体的には、駆動情報の励磁方法が2相励磁であって、回転方向がステップ数を増加させる方向(移動方向が全閉位置から全開位置に向かう方向)である場合には1が加算される。これとは反対に、回転方向がステップ数を減少させる方向(移動方向が全開位置から全閉位置に向かう方向)である場合には1が減算される。なお、駆動情報の励磁方法が2相励磁ではなく1−2相励磁である場合にはステップS3211が2回実行される度に上記の加算(または減算)される点が異なる。
ステップS3217では、出力回数カウンタの値を更新する処理が実行される。具体的には、ステップS3209で出力タイミングであると判定された場合には出力回数カウンタの値に0がセットされ、それ以外の場合には出力回数カウンタの値に1が加算される。
次に、図26を用いて、図23のインターバルタイマ割込処理におけるパーツデータ更新処理(ステップS2709)の詳細について説明する。同図は、図23に示すパーツデータ更新処理(ステップS2709)の流れを示すフローチャートである。
まず、ステップS3301では、更新されたパーツリストデータ(第1副制御部400から送信された最新のパーツリストデータ)を参照してパーツデータが抽出される。そして続くステップS3303で、抽出したパーツデータによる更新処理が実行される。
さらに続くステップS3305では、駆動停止フラグがリセット(オフに設定)される。このフラグがオフに設定されることで、後に駆動処理(図23のステップS3001、図25)が実行され、この駆動処理によって各パーツデータ(パーツリストデータ)に基づいて演出部材620が移動することになる。この駆動停止フラグの設定の後、パーツデータ更新処理を終了する。
次に、図27を用いて、図23のインターバルタイマ割込処理における位置補正データ更新処理(ステップS2713)の詳細について説明する。同図は、図23に示す位置補正データ更新処理(ステップS2713)の流れを示すフローチャートである。
まず、ステップS3401では、更新された位置補正データID(第1副制御部400から送信された最新の位置補正ID)を参照して位置補正データ(図16参照)が抽出される。そして続くステップS3403で、抽出した位置補正データによる更新処理が実行される。
さらに続くステップS3405では、駆動停止フラグがリセット(オフに設定)される。このフラグがオフに設定されることで、後に駆動処理(図23のステップS3001、図25)が実行され、この駆動処理によって位置補正データに基づいて演出部材620が移動することになる。この駆動停止フラグの設定の後、位置補正データ更新処理を終了する。
<第2副制御部500の処理>
図28を用いて、第2副制御部500の処理について説明する。なお、図28(a)は、第2副制御部500のCPU504が実行するメイン処理のフローチャートである。図28(b)は、第2副制御部500のコマンド受信割込処理のフローチャートである。図28(c)は、第2副制御部500のタイマ割込処理のフローチャートである。図28(d)は、第2副制御部500の画像制御処理のフローチャートである。
まず、図28(a)のステップS301では、各種の初期設定を行う。電源投入が行われると、まずステップS301で初期化処理が実行される。この初期化処理では、入出力ポート初期設定や、RAM508内の記憶領域の初期化処理等を行う。ステップS302では、タイマ変数が10以上か否かを判定し、タイマ変数が10となるまでこの処理を繰り返し、タイマ変数が10以上となったときには、ステップS303の処理に移行する。
ステップS303では、タイマ変数に0を代入する。ステップS304では、コマンド処理を行う。コマンド処理では第2副制御部500のCPU504は、第1副制御部400のCPU404からコマンドを受信したか否かを判別する。ステップS305では、演出制御処理を行う。例えば、ステップS304で新たなコマンドがあった場合には、このコマンドに対応する処理を行う。この処理には、例えば、演出データをROM506から読み出す等の処理を行い、演出データの更新が必要な場合には演出データの更新処理を行うことが含まれる。
ステップS306では、ステップS305の処理結果に基づいて液晶表示装置601の画像制御処理を行う。例えば、ステップS305で読み出した演出データの中に画像制御の命令がある場合には、この命令に対応する画像制御を行い(詳細は後述する)、ステップS302へ戻る。
次に、図28(b)を用いて、第2副制御部500のコマンド受信割込処理について説明する。このコマンド受信割込処理は、第2副制御部500が、第1副制御部400が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS311では、第1副制御部400が出力したコマンドを未処理コマンドとしてRAM508に設けたコマンド記憶領域に記憶する。
次に、図28(c)を用いて、第2副制御部500のCPU504によって実行する第2副制御部タイマ割込処理について説明する。第2副制御部500は、所定の周期(本実施形態では2msに1回)でタイマ割込を発生するハードウェアタイマを備えており、このタイマ割込を契機として、タイマ割込処理を所定の周期で実行する。
ステップS312では、図28(a)に示す第2副制御部メイン処理におけるステップS302において説明したRAM508のタイマ変数記憶領域の値に、1を加算して元のタイマ変数記憶領域に記憶する。従って、ステップS302において、タイマ変数の値が10以上と判定されるのは20ms毎(2ms×10)となる。S43では、演出用乱数値の更新処理等を行う。
次に、図28(d)を用いて、第2副制御部500のメイン処理におけるステップS306の画像制御処理について説明する。同図は、画像制御処理の流れを示すフローチャートを示した図である。
ステップS321では、画像データの転送指示を行う。ここでは、CPU504は、まず、VRAM536の表示領域Aと表示領域Bの描画領域の指定をスワップする。これにより、描画領域に指定されていない表示領域に記憶された1フレームの画像が液晶表示装置601に表示される。
次に、CPU504は、VDP534のアトリビュートレジスタに、位置情報等テーブルに基づいてROM座標(ROM506の転送元アドレス)、VRAM座標(VRAM536の転送先アドレス)などを設定した後、ROM506からVRAM536への画像データの転送開始を指示する命令を設定する。VDP534は、アトリビュートレジスタに設定された命令に基づいて画像データをROM506からVRAM536に転送する。その後、VDP536は、転送終了割込信号をCPU504に対して出力する。
ステップS322では、VDP534からの転送終了割込信号が入力されたか否かを判定し、転送終了割込信号が入力された場合はステップS323に進み、そうでない場合は転送終了割込信号が入力されるのを待つ。ステップS323では、演出シナリオ構成テーブルおよびアトリビュートデータなどに基づいて、パラメータ設定を行う。ここでは、CPU504は、S51でVRAM536に転送した画像データに基づいてVRAM536の表示領域AまたはBに表示画像を形成するために、表示画像を構成する画像データの情報(VRAM536の座標軸、画像サイズ、VRAM座標(配置座標)など)をVDP534に指示する。VDP534はアトリビュートレジスタに格納された命令に基づいてアトリビュートに従ったパラメータ設定を行う。
ステップS324では、描画指示を行う。この描画指示では、CPU504は、VDP534に画像の描画開始を指示する。VDP534は、CPU504の指示に従ってフレームバッファにおける画像描画を開始する。ステップS325では、画像の描画終了に基づくVDP534からの生成終了割込み信号が入力されたか否かを判定し、生成終了割込み信号が入力された場合はステップS326に進み、そうでない場合は生成終了割込み信号が入力されるのを待つ。ステップS326では、RAM508の所定の領域に設定され、何シーンの画像を生成したかをカウントするシーン表示カウンタをインクリメント(+1)して処理を終了する。
<本実施形態の特徴について>
以上説明した遊技台の特徴について説明する。
まず、図31を用いて説明したように、本実施形態のスロットマシン100では、左演出部材620Lおよび右演出部材620Rを移動させつつ、液晶表示装置601でこの移動(位置)に合わせた画像を表示することで、全体として一つの演出が実行されるように構成されている。
ここで、メンテナンス不良や部品の摩耗等によって、左演出部材620Lおよび右演出部材620Rの位置が予定の位置からずれてしまい、液晶表示装置601に表示される画像と合わなくなる場合がある。また、左演出部材620Lおよび右演出部材620Rの間隔がずれてしまう場合がある。こうしたずれが生じると、遊技者に違和感を与えてしまい、遊技の興趣が減退する虞がある。
本実施形態では、電源投入時および特別遊技状態の終了時に演出部材620を移動させてモータセンサ639の検出状況を確認し、さらに、被検出片SDが検出される位置に左演出部材620Lを待機させ、被検出片SDが検出される位置から所定の距離移動した位置に右演出部材620Rを待機させることで、上記の問題が生じにくくしている。以下具体的に説明する。
電源投入時の処理では、演出部材620を移動させる処理が実行される(図14の第1副制御部初期設定処理)。この処理において左モータセンサ639Lが非検出状態から検出状態に切り替わることが確認され(図15のステップS2119)、さらに、検出状態から非検出状態に切り替わることが確認される(図17のステップS2203)。さらに続いて、左演出部材620Lの被検出片SDが左モータセンサ639Lに検出される位置で左演出部材620Lを待機させる処理が実行される(図18のステップS2301、ステップS2305)。同様に、右モータセンサ639Rについても、非検出状態から検出状態に切り替わることが確認され(図15のステップS2125)、さらに、検出状態から非検出状態に切り替わることが確認される(図17のステップS2209)。さらに続いて、右演出部材620Rの被検出片SDが右モータセンサ639Rに検出される位置に右演出部材620Rを移動させた後(図18のステップS2303、ステップS2307)、この位置から654ステップ閉方向(左方向)へ離れた位置で、右演出部材620Rを待機させる処理が実行される(図18のステップS2309)。
一方、特別遊技状態の終了時の処理でも、演出部材620を移動させる処理が実行される(図20の遊技状態更新時位置補正処理)。この処理においては、左演出部材620Lと右演出部材620Rを一緒に移動させる(図32参照)。そしてまず、右モータセンサ639Rについて、非検出状態から検出状態に切り替わることが確認され(図20のステップS2505)、さらに、検出状態から非検出状態に切り替わることが確認される(図20のステップS2515)。さらに続いて、左モータセンサ639Lが非検出状態から検出状態に切り替わることが確認され(図20のステップS2519)、検出状態から非検出状態に切り替わることが確認される(図20のステップS2527)。これらの確認処理の後、左演出部材620Lの被検出片SDが左モータセンサ639Lに検出される位置で左演出部材620Lおよび右演出部材620Rを待機させる処理が実行される(図20のステップS2531、ステップS2533)。
以上説明した処理によって、左演出部材620Lおよび右演出部材620Rは、モータセンサ639に被検出片SDが検出される位置を起点とした待機位置に配置される。すなわち、左演出部材620Lおよび右演出部材620Rが正常である場合の位置からずれた状態であっても、所定の待機位置に左演出部材620Lおよび右演出部材620Rを戻すことで、このずれを補正することができる。
なお、上述したように、本実施形態では、演出部材が絶対座標動作を行う場合がある。絶対座標動作は、現在のモータのステップ数と目標位置のステップ数から実際の移動ステップ数を導出するため、現在のモータのステップ数が正常である場合の数とずれている場合には液晶表示装置601による画像との間にずれが生じてしまったり、左演出部材620Lと右演出部材620Rの間隔が開きすぎたり、逆に狭すぎて干渉したりするといった問題が生じる。こうした問題を解決するため、被検出片SDがモータセンサ639に検出されなくなったときに各モータのステップ数を初期化(補正)している(図17のステップS2205、ステップS2211、図20のステップS2517、ステップS2529)。なお、本実施形態では、被検出片SDがモータセンサ639に検出されなくなったときに、648ステップという値で初期化をしているが、この値は一例であり、演出部材620の移動範囲の大きさや、モータの移動量等によって、適切な値を採用することができる。また、本実施形態では、図11に示すように全閉位置を0ステップの位置とし、そこから移動に要するステップ数に基づいて他の位置を規定しているが、例えば全開位置を0ステップの位置としてもよいし、中心位置やセンサ位置を0ステップの位置としてもよい。
以上説明したように、本実施形態のスロットマシン100では、絶対座標動作および相対座標動作のいずれであっても、モータセンサの検出状況に基づいて演出部材620の位置を補正することができる。特に、本実施形態によれば、電源投入時だけでなく、それ以降のタイミング(本実施形態では特別遊技状態終了時)でもずれを補正できる。このため、演出部材620の位置が液晶表示装置601の画像とずれにくくすることができる。また、左演出部材620Lと右演出部材620Rの間隔が開きすぎたり、左演出部材620Lと右演出部材620Rが干渉したりするといったことも防止することができる。
なお、本実施形態では演出部材620の位置のずれを補正する処理(図20)を特別遊技状態終了時に実行させる例について説明したが、例えば遊技中であってもよいし、デモンストレーション中であってもよい。例えば本実施形態の特別役に内部当選する確率が0.5%である場合、演出部材620の位置のずれを補正する処理はこの確率に依存し、およそ0.5%の確率で実行されることになる。ここで例えば、通常遊技状態中にもこの処理が実行されるようにすることで、この処理の実行頻度を向上させることができる。この演出部材620の位置のずれを補正する処理の実行タイミングについては任意に設定することが出来る。なお、遊技中以外で演出部材620の位置のずれを補正する処理を実行させると、遊技の開始を妨げてしまう場合があるが、遊技中に実行させることで稼働に影響を与えることなく、演出部材620の位置のずれを補正する処理の実行頻度を高めることができる。さらに、いわゆるフリーズ中やボーナス終了時のような、遊技の進行ができなくなっている期間に演出部材620の位置のずれを補正する処理を実行させることで、遊技者に違和感を与えずにこの補正処理を確実に実行させることができる。
また、本実施形態では特に言及していないが、演出部材620の位置のずれを補正する処理においては、演出部材620の移動速度を演出を実行する場合よりも遅い速度にし、かつ速度が一定であることが好ましい。この構成によれば、センサの確認処理をより正確かつ安定して行うことができる。
また、遊技中の補正については図33に示すように、液晶表示装置601で補正処理中の動作に合わせた画像を表示することにより、遊技者に違和感を与えることなく演出部材620の位置のずれを補正することができる。なお、この際の画像とは、液晶表示装置601の全体を用いて表示する画像であってもよいし、また、演出部材620によって構成される隙間から見える画像のように、液晶表示装置601の一部を用いて表示する画像であってもよい。さらに、演出部材620の位置補正の際に用いる画像については特に制限はなく、例えば、演出の際に用いられる画像を流用してもよいし、これとは異なる画像を用いてもよい。例えば、当該遊技の状態に関わる情報(例えば獲得枚数)を含む画像であってもよい。一方で、電源投入時において演出部材620の位置補正を行う際には、画像を用いずに行わせてもよい。この場合、電源投入時に液晶表示装置601の起動を待たずに演出部材620の位置補正が実行して、処理を早めに終了させることができる。
本実施形態では、特別遊技状態の終了時に、右モータセンサ639R、左モータセンサ639Lの順で確認処理を行う例について説明した(図20)。例えば、この処理において、ステップS2519以降の処理を行わず、右モータセンサ639Rだけを基準に演出部材620が移動する構成を採用してもよい。
以上説明した実施形態では、電源投入時における演出部材620の位置補正処理(図17)と、遊技中(特別遊技状態の終了時)における演出部材620の位置補正処理(図20)が異なる例について説明したが、これらの処理が共通であってもよい。
また、上記実施形態では、スロットマシンに本発明を適用した例を例示したが、パチンコ機等、他の遊技台にも本発明は適用可能である。パチンコ機に適用する場合、液晶表示装置601は特典付与に関わる図柄(特別図柄、普通図柄、装飾図柄)の組合せを変動表示する表示装置として利用することも可能である。なお、パチンコ機の場合、いわゆる大当り中や、大当り中のラウンド間におけるインターバル中に、可動部材の位置の補正を行わせてもよい。
<実施形態のまとめ>
以上の説明では、
画像を表示する表示画面を有する画像表示手段(液晶表示装置601)と、
前記表示画面に沿って該表示画面の前面を移動する装飾移動部材(演出部材620)と、
前記装飾移動部材を演出として移動させる演出移動制御を行う演出移動制御手段(第1副制御部400)と、
を備えた遊技台であって、
前記装飾移動部材は、第一の装飾移動部材(右演出部材620R)と、該第一の装飾移動部材と分離して個別に移動可能な第二の装飾移動部材(左演出部材620L)と、から成り、
第一の位置に設けられ、前記第一の装飾移動部材が該第一の位置に達したことを検出するための第一のセンサ(右モータセンサ639R)と、
電源投入時において、前記第一の装飾移動部材を移動させて前記第一のセンサの検出状況を確認する処理を少なくとも含む第一の確認処理(図15、図17)を行う第一の確認処理手段(第1副制御部400)と、
前記第一の確認処理が行われたのちの所定のタイミング(特別遊技状態の終了後)において、前記第一の装飾移動部材を移動させて前記第一のセンサの検出状況を確認する処理を少なくとも含む第二の確認処理(図20)を行う第二の確認処理手段(第1副制御部400)と、を備え、
前記演出移動制御手段は、前記第一のセンサによる検出状況に基づいて、前記第一の装飾移動部材を移動させる前記演出移動制御を行うものであり(図15、図17、図20でセンサの確認に基づく補正がされた状態で、右演出部材620Rによる演出が実行される)、
前記第二の確認処理手段は、
前記第二の確認処理において前記第一の装飾移動部材を移動させる場合には、前記第二の装飾移動部材を伴って移動させる制御を行うもの(図33参照)であることを特徴とする遊技台、が記載されている。
この遊技台によれば、確認処理によって第一の装飾移動部材と第二の装飾移動部材によるずれがない状態を維持することができる。さらに、この遊技中の確認処理を、遊技者に違和感を与えることなく実行することができる。
また、
上記記載の遊技台であって、
前記装飾移動部材は、
前記第一の装飾移動部材および前記第二の装飾移動部材が合体した状態で一の装飾(本実施形態では巻物の外観)を構成するものであり、
前記第二の確認処理手段は、
前記第二の確認処理において、前記一の装飾が構成されている状態を保ったまま前記装飾移動部材を移動させる制御を行うもの(図33参照)であることを特徴とする遊技台、が記載されている。
この遊技台によれば、遊技中の確認処理の際に、第一の装飾移動部材と第二の装飾移動部材による一の装飾が維持されるため、遊技者に違和感を与えることなくこの確認処理を実行することができる。
また、
上記記載の遊技台であって、
前記第一の位置とは異なる第二の位置に設けられ、前記第二の装飾移動部材が該第二の位置に達したことを検出するための第二のセンサ(左モータセンサ639L)を備え、
前記第一の確認処理手段は、
電源投入時において、前記第二の装飾移動部材を移動させて前記第二のセンサの検出状況を確認する処理を少なくとも含む前記第一の確認処理(図15、図17)を行うものであり、
前記第二の確認処理手段は、
前記第二の装飾移動部材を移動させて前記第二のセンサの検出状況を確認する処理を少なくとも含む前記第二の確認処理(図20)を行うものであり、
前記演出移動制御手段は、前記第二のセンサによる検出状況に基づいて、前記第二の装飾移動部材を移動させる前記演出移動制御を行うものであり(図15、図17、図20でセンサの確認に基づく補正がされた状態で、左演出部材620Lによる演出が実行される)、
前記第二の確認処理手段は、
前記第二の確認処理において前記第二の装飾移動部材を移動させる場合には、前記第一の装飾移動部材を伴って移動させる制御を行うもの(図33参照)であることを特徴とする遊技台、が記載されている。
この遊技台では、第一の装飾移動部材および第二の装飾移動部材のそれぞれに対して個別にセンサを設け、これらのセンサによる確認処理を行うことで、第一の装飾移動部材と第二の装飾移動部材によるずれがない状態を維持することができる。さらに、これらの確認処理を、遊技者に違和感を与えることなく実行することができる。
また、
上記記載の遊技台であって、
前記第二の確認処理手段は、
前記第一の装飾移動部材を移動させて前記第一のセンサの検出状況を確認する処理を実行した後で前記第二の装飾移動部材を移動させて前記第二のセンサの検出状況を確認する処理を実行するもの(図33参照)であることを特徴とする遊技台、が記載されている。
この遊技台では、個々の確認処理を順番に実行することで、各確認処理の確実性を向上させることができる。
また、
上記記載の遊技台であって、
前記第一の位置は、前記第一の装飾移動部材の基準位置(図11の右モータセンサ639Rの位置)であり、
前記第二の位置は、前記第二の装飾移動部材の基準位置(図11の左モータセンサ639Lの位置)であり、
前記第一の位置からの前記第一の装飾移動部材の移動距離に基づいて、前記第一の装飾移動部材の位置を管理する第一の管理手段(現在の右モータのステップ数を記憶している第3副制御部700のRAM)と、
前記第二の位置からの前記第二の装飾移動部材の移動距離に基づいて、前記第二の装飾移動部材の位置を管理する第二の管理手段(現在の左モータのステップ数を記憶している第3副制御部700のRAM)と、
をさらに備え、
前記演出移動制御手段は、前記第一の管理手段で管理された前記第一の装飾移動部材の位置と、前記第二の管理手段で管理された前記第二の装飾移動部材の位置に基づいて、前記演出移動制御を実行し(図22の演出指示データから導出される移動ステップ数の記載および図25の駆動処理参照)、
前記第一の確認処理手段は、前記第一の確認処理による前記第一のセンサの検出状況に基づいて、前記第一の装飾移動部材の基準位置を予め定めた第一の初期値に更新し、前記第一の確認処理による前記第二のセンサの検出状況に基づいて、前記第二の装飾移動部材の基準位置を予め定めた第二の初期値に更新するもの(図17のステップS2205、ステップS2211)であり、
前記第二の確認処理手段は、前記第二の確認処理による前記第一のセンサの検出状況に基づいて、前記第一の装飾移動部材の基準位置を前記第一の初期値に更新し、前記第二の確認処理による前記第二のセンサの検出状況に基づいて、前記第二の装飾移動部材の基準位置を前記第二の初期値に更新するもの(図20のステップS2517、ステップS2529)であることを特徴とする遊技台、が記載されている。
この遊技台によれば、遊技者に違和感を与えることなく、装飾移動部材の基準位置の補正を行うことができる。
また、
上記記載の遊技台であって、
前記第一の確認処理手段は、前記第一の確認処理における前記第一の装飾移動部材の移動速度を、前記演出移動制御による前記第一の装飾移動部材の移動速度よりも遅く、かつ一定の移動速度とし、
前記第一の確認処理手段は、前記第一の確認処理における前記第二の装飾移動部材の移動速度を、前記演出移動制御による前記第二の装飾移動部材の移動速度よりも遅く、かつ一定の移動速度とし、
前記第二の確認処理手段は、前記第二の確認処理における前記第一の装飾移動部材の移動速度を、前記演出移動制御による前記第一の装飾移動部材の移動速度よりも遅く、かつ一定の移動速度とし、
前記第二の確認処理手段は、前記第二の確認処理における前記第二の装飾移動部材の移動速度を、前記演出移動制御による前記第二の装飾移動部材の移動速度よりも遅く、かつ一定の移動速度としたものであることを特徴とする遊技台、が記載されている。
この遊技台では、第二の確認処理において装飾移動部材の移動速度を遅くしたことにより、確認処理を安定して実行することができる。
また、
上記記載の遊技台であって、
前記第二の確認処理手段は、
遊技中における前記所定のタイミング(特別遊技状態の終了時)で前記第二の確認処理を行うものであることを特徴とする遊技台、が記載されている。
この遊技台では、第二の確認処理を遊技中に実行させることで、確認処理の実行頻度を上げつつも稼働に影響を与えないようにすることができる。
また、
上記記載の遊技台であって、
遊技者の操作を受け付ける操作手段(スタートレバー135、ストップボタン137〜139、ベットボタン130〜132)と、
前記操作手段の操作に基づいて遊技を進行させる遊技進行手段(主制御部300)と、を備え、
前記第二の確認処理手段は、
前記操作手段の操作に関わらず前記遊技進行手段が遊技を進行させない遊技期間内における前記所定のタイミング(例えば、いわゆるフリーズ中やボーナス終了時のような、遊技の進行ができなくなっている期間)で、前記第二の確認処理を行うものであることを特徴とする遊技台、が記載されている。
この遊技台では、第二の確認処理が遊技を進行させない期間に実行されるため、第二の確認処理の確認処理の実行頻度を上げつつも遊技者に違和感を与えないようにすることができる。