以下、本発明の一実施形態に係るパチンコ遊技機(遊技機)の構成及び各種動作について、図面を参照しながら説明する。
<機能フロー>
まず、図1を参照して、本実施形態に係るパチンコ遊技機の機能について説明する。図1は、本実施形態に係るパチンコ遊技機の機能フローを示す図である。
パチンコゲームは、図1に示すように、ユーザの操作により遊技球が発射され、その遊技球が各種入賞した場合に遊技球の払出制御処理が行われるゲームである。また、パチンコゲームには、特別図柄を用いる特別図柄ゲーム、普通図柄を用いる普通図柄ゲームが含まれる。特別図柄ゲームにおいて「大当り」となったときや、普通図柄ゲームにおいて「当り」となったときには、相対的に、遊技球が入賞する可能性が増大し、遊技球の払出制御処理が行われ易くなる。
また、各種入賞には、特別図柄ゲームにおいて特別図柄の可変表示が行われるための一つの条件である特別図柄始動入賞や、普通図柄ゲームにおいて普通図柄の可変表示が行われるための一つの条件である普通図柄始動入賞も含まれる。
なお、本明細書でいう「可変表示」とは、変動可能に表示される概念であり、例えば、実際に変動して表示される「変動表示」、実際に停止して表示される「停止表示」等を可能にするものである。また、「可変表示」では、例えば特別図柄ゲームの結果として特別図柄(識別情報)が表示される「導出表示」を行うことができる。すなわち、本明細書では、「変動表示」の開始から「導出表示」までの動作を1回の「可変表示」と称する。さらに、本明細書において、「識別情報」とは、特別図柄、普通図柄、装飾図柄、識別図柄等のパチンコ遊技で使用される「図柄」や、パチスロ又はスロット遊技で使用される識別図柄や装飾図柄などの、遊技者が遊技を行う上で、遊技の結果を表示又は示唆する際に使用される図柄を含み得る意味であり、以下に記載する実施形態及び各種変形例中の各種図柄もまた含み得る。
以下、特別図柄ゲーム及び普通図柄ゲームの処理フローの概要を説明する。
(1)特別図柄ゲーム
特別図柄ゲームにおいて特別図柄始動入賞があった場合には、大当り判定用カウンタ及び図柄決定用カウンタからそれぞれ乱数値(大当り判定用乱数値及び図柄決定用乱数値)が抽出され、抽出された各乱数値が記憶される(図1に示す特別図柄ゲーム中の特別図柄始動入賞処理のフロー参照)。
また、図1に示すように、特別図柄ゲーム中の特別図柄制御処理では、最初に、特別図柄の可変表示を開始する条件が成立したか否かが判定される。この判定処理では、特別図柄始動入賞によって乱数値が記憶されているか否かを参照し、乱数値が記憶されていることを一つの条件として、特別図柄の可変表示を開始する条件が成立したと判定する。
次いで、特別図柄の可変表示を開始する場合、大当り判定用カウンタから抽出された大当り判定用乱数値が参照され、「大当り」とするか否かの大当り判定が行われる。その後、停止図柄決定処理が行われる。この処理では、図柄決定用カウンタから抽出された図柄決定用乱数値と、上述した大当り判定の結果とが参照され、停止表示させる特別図柄を決定する。
次いで、変動パターン決定処理が行われる。この処理では、変動パターン決定用カウンタから乱数値が抽出され、その乱数値と、上述した大当り判定の結果と、上述した停止表示させる特別図柄とが参照され、特別図柄の変動パターンを決定する。
次いで、演出パターン決定処理が行われる。この処理では、演出パターン決定用カウンタから乱数値が抽出され、その乱数値と、上述した大当り判定の結果と、上述した停止表示させる特別図柄と、上述した特別図柄の変動パターンとが参照され、特別図柄の可変表示に伴って実行する演出パターンを決定する。
次いで、決定された大当り判定の結果、停止表示させる特別図柄、特別図柄の変動パターン、及び、特別図柄の可変表示に伴う演出パターンが参照され、特別図柄の可変表示の制御を行う可変表示制御処理、及び、所定の演出を行う演出制御処理が実行される。
そして、可変表示制御処理及び演出表示制御処理が終了すると、「大当り」となるか否かが判定される。この判定処理において、「大当り」となったと判定されると、大当り遊技を行う大当り遊技制御処理が実行される。なお、大当り遊技では、上述した各種入賞の可能性が増大する。一方、「大当り」とならなかったと判定されると、大当り遊技制御処理が実行されない。
「大当り」とならなかったと判定された場合、又は、大当り遊技制御処理が終了した場合には、遊技状態を移行させるための遊技状態移行制御処理が行われる。この遊技状態移行制御処理では、大当り遊技状態とは異なる通常時の遊技状態の管理が行われる。通常時の遊技状態としては、例えば、上述した大当り判定において、「大当り」と判定される確率が増大する遊技状態(以下、「確変遊技状態」という)や、特別図柄始動入賞が得られやすくなる遊技状態(以下、「時短遊技状態」という)などが挙げられる。その後、再度、特別図柄の可変表示を開始させるか否かの判定処理を行い、その後は、上述した特別図柄制御処理の各種処理が繰り返される。
なお、本実施形態のパチンコ遊技機において、特別図柄の変動表示中に遊技球が始動入賞した場合には、該始動入賞時に取得される各種データ(大当り判定用乱数値、図柄決定用乱数値等)が保留される。すなわち、特別図柄の変動表示中に遊技球が始動入賞した場合には、該始動入賞に対応する特別図柄の可変表示(変動表示)が保留され、現在実行されている特別図柄の変動表示終了後に保留されている特別図柄の可変表示が開始される。以下では、保留されている特別図柄の可変表示を「保留球」ともいう。
また、本実施形態のパチンコ遊技機では、後述するように、2種類の特別図柄始動入賞(第1始動口入賞及び第2始動口入賞)を設け、各特別図柄始動入賞に対して最大4個の保留球を取得することができる。すなわち、本実施形態では、最大8個の保留球を取得することができる。
さらに、本実施形態のパチンコ遊技機は、図1には示さないが、上述した保留球の情報に基づいて保留球の当落(「大当り」当選の有無)を判定し、さらに、その判定結果に基づいて所定の演出を行う機能、すなわち、先読み演出機能も備える。
(2)普通図柄ゲーム
普通図柄ゲームにおいて普通図柄始動入賞があった場合には、当り判定用カウンタから乱数値が抽出され、その乱数値が記憶される(図1に示す普通図柄ゲーム中の普通図柄始動入賞処理のフロー参照)。
また、図1に示すように、普通図柄ゲーム中の普通図柄制御処理では、最初に、普通図柄の可変表示を開始する条件が成立したか否かが判定される。この判定処理では、普通図柄始動入賞によって乱数値が記憶されているか否かが参照され、乱数値が記憶されていることを一つの条件として、普通図柄の可変表示を開始する条件が成立したと判定する。
次いで、普通図柄の可変表示を開始する場合、当り判定用カウンタから抽出された乱数値が参照され、「当り」とするか否かの当り判定が行われる。その後、変動パターン決定処理が行われる。この処理では、当り判定の結果が参照され、普通図柄の変動パターンを決定する。
次いで、決定された当り判定の結果、及び、普通図柄の変動パターンが参照され、普通図柄の可変表示の制御を行う可変表示制御処理、及び、所定の演出を行う演出制御処理が実行される。
可変表示制御処理及び演出表示制御処理が終了すると、「当り」となるか否かが判定される。この判定処理において、「当り」となると判定されると、当り遊技を行う当り遊技制御処理が実行される。当り遊技制御処理では、上述した各種入賞の可能性、特に、特別図柄ゲームにおける遊技球の特別図柄始動入賞の可能性が増大する。一方、「当り」とならないと判定されると、当り遊技制御処理が実行されない。その後、再度、普通図柄の可変表示を開始させるか否かの判定処理を行い、その後は、上述した普通図柄制御処理の各種処理が繰り返される。
上述のように、パチンコゲームでは、特別図柄ゲームにおいて「大当り」となるか否か、遊技状態の移行状況、普通図柄ゲームにおいて「当り」となるか否か等の条件により、遊技球の払出制御処理の行われ易さが変化する。
なお、本実施形態において、各種の乱数値の抽出方式としては、プログラムを実行することによって乱数値を生成するソフト乱数方式を用いる。しかしながら、本発明はこれに限定されず、例えば、パチンコ遊技機が、所定周期で乱数が更新される乱数発生器を備える場合には、その乱数発生器におけるカウンタ(いわゆる、リングカウンタ)から乱数値を抽出するハード乱数方式を、上述した各種乱数値の抽出方式として採用してもよい。なお、ハード乱数方式を用いる場合は、所定周期とは異なるタイミングで、乱数値の初期値を決定することによって、所定周期で同じ乱数値が抽出されることを防止することができる。
<パチンコ遊技機の構造>
次に、図2及び図3を参照して、本実施形態におけるパチンコ遊技機の構造について説明する。なお、図2は、パチンコ遊技機の外観を示す斜視図である。また、図3は、パチンコ遊技機の分解斜視図である。
パチンコ遊技機1は、図2及び図3に示すように、本体2と、本体2に対して開閉自在に取り付けられたベースドア3と、ベースドア3に対して開閉自在に取り付けられたガラスドア4とを備える。
[本体]
本体2は、長方形状の開口2aを有する枠状部材で構成される(図3参照)。この本体2は、例えば、木材等の材料により形成される。
[ベースドア]
ベースドア3は、本体2の外形形状と略等しい長方形の外形形状を有する板状部材で構成される。ベースドア3は、本体2の前方(パチンコ遊技機1の正面側)に配置されており、ベースドア3を本体2の一方の側辺端部を軸にして回動させることにより、本体2の開口2aが開閉される。ベースドア3には、図3に示すように、四角形状の開口3aが設けられる。この開口3aは、ベースドア3の略中央部から上側の領域に渡って形成され、該領域の大部分を占有する大きさで形成される。
また、ベースドア3には、スピーカ11と、遊技盤12と、表示装置13(演出手段、表示手段)と、皿ユニット14と、発射装置15と、払出装置16と、基板ユニット17とが取り付けられる。
2つのスピーカ11は、ベースドア3の上部(上端部付近)に配置される。遊技盤12は、ベースドア3の前方(パチンコ遊技機1の正面側)に配置され、ベースドア3の開口3aを覆うように配置される。
遊技盤12は、光透過性を有する板形状の樹脂部材で構成される。なお、光透過性を有する樹脂としては、例えば、アクリル樹脂、ポリカーボネート樹脂、メタクリル樹脂などを用いることができる。
また、遊技盤12の前面(パチンコ遊技機1の正面側の表面)には、発射装置15から発射された遊技球が転動する遊技領域12aが形成される。この遊技領域12aは、ガイドレール41(具体的には後述の図4に示す外レール41a)に囲まれた領域であり、その外周形状は略円状である。さらに、遊技領域12aには、複数の遊技釘(後述の図4参照)が打ちこまれている。なお、遊技盤12(遊技領域12a)の構成については、後述の図4を参照しながら後で詳述する。
表示装置13は、遊技盤12の背面側(パチンコ遊技機1の正面側とは反対側)に取り付けられる。この表示装置13は、画像を表示する表示領域13aを有する。表示領域13aの大きさは、遊技盤12の表面の全部又は一部の領域を占めるような大きさに設定される。この表示装置13の表示領域13aには、演出用の識別図柄、演出画像、装飾用画像(装飾図柄)などの各種画像が表示される。遊技者は、遊技盤12を介して、表示装置13の表示領域13aに表示された各種画像を視認することができる。
なお、本実施形態では、表示装置13として、液晶表示装置を用いる。しかしながら、本発明はこれに限定されず、表示装置13として、例えば、プラズマディスプレイ、リアプロジェクションディスプレイ、CRT(Cathode Ray Tube)ディスプレイなどの表示機器を適用してもよい。
また、遊技盤12の背面側(パチンコ遊技機1の正面側とは反対側)には、スペーサ19が設けられる。このスペーサ19は、遊技盤12の背面(パチンコ遊技機1の背面側の表面)と表示装置13の前面(パチンコ遊技機1の正面側の表面)との間に設けられ、遊技盤12の遊技領域12aを転動する遊技球の流路となる空間を形成する。スペーサ19は、光透過性を有する材料で形成される。なお、本発明はこれに限定されず、スペーサ19は、例えば、一部が光透過性を有する材料で形成されていてもよいし、光透過性を有さない材料で形成されていてもよい。
皿ユニット14は、遊技盤12の下方に配置される。この皿ユニット14は、上皿21と、その下方に配置された下皿22とを有する。上皿21及び下皿22には、図2に示すように、遊技球の貸し出し、遊技球の払出し(賞球)を行うための払出口21a及び払出口22aがそれぞれ形成される。所定の払出条件が成立した場合には、払出口21a及び払出口22aから遊技球が排出されて、それぞれ、上皿21及び下皿22に貯留される。また、上皿21に貯留された遊技球は、発射装置15によって遊技領域12aに発射される。
また、皿ユニット14には、演出ボタン23が設けられる。この演出ボタン23は、上皿21上に取り付けられる。本実施形態のパチンコ遊技機1は、演出ボタン23を用いて行う所定の演出機能を有し、所定の演出を行う場合には、表示装置13の表示領域13aに、演出ボタン23の操作を促す画像が表示される。
さらに、皿ユニット14には、2つのスピーカカバー27が設けられる。2つのスピーカカバー27の一方は、上皿21及び下皿22の一方の側部に取り付けられ、2つのスピーカカバー27の他方は、上皿21及び下皿22の他方の側部に取り付けられる。また、図2及び図3には示さないが、各スピーカカバー27の裏面側(遊技者と対向する面とは反対の面側)には、対応するスピーカが設けられる。
すなわち、本実施形態のパチンコ遊技機1では、ベースドア3の上部に設けられた(後述の2つのスピーカカバー29の裏面側に設けられた)2つのスピーカ11と、2つのスピーカカバー27の裏面側に設けられた2つのスピーカとが設けられ、合計4つのスピーカが設けられる。なお、本実施形態では、後述の2つのスピーカカバー29の裏面側に設けられた2つのスピーカ11は高音用スピーカで構成され、2つのスピーカカバー27の裏面側に設けられた2つのスピーカは低音用スピーカで構成される。
発射装置15は、ベースドア3の前面において、右下の領域(右下角部付近)に配置される。この発射装置15は、遊技者によって操作可能な発射ハンドル25と、皿ユニット14の右下部に係合するパネル体26とを備える。発射ハンドル25は、パネル体26の前面側に配置され、パネル体26に回動可能に支持される。
なお、図2及び図3には示さないが、パネル体26の背面側には、遊技球の発射動作を制御するソレノイドアクチュエータ(駆動装置)が設けられる。また、図2及び図3には示さないが、発射ハンドル25の周縁部には、タッチセンサが設けられ、発射ハンドル25の内部には、発射ボリュームが設けられる。発射ボリュームは、発射ハンドル25の回動量に応じて抵抗値を変化させ、ソレノイドアクチュエータに供給する電力を変化させる。
本実施形態のパチンコ遊技機1では、遊技者の手が発射ハンドル25のタッチセンサに接触すると、タッチセンサは検知信号を出力する。これにより、遊技者が発射ハンドル25を握持したことが検知され、ソレノイドアクチュエータによる遊技球の発射が可能になる。そして、遊技者が発射ハンドル25を把持して時計回り(遊技者側から見て右回り)の方向へ回動操作すると、発射ハンドル25の回動角度に応じて発射ボリュームの抵抗値が変化し、その抵抗値に対応する電力がソレノイドアクチュエータに供給される。その結果、上皿21に貯留された遊技球が順次発射され、発射された遊技球は、ガイドレール41(後述の図4参照)に案内されて遊技盤12の遊技領域12aへ放出される。
また、図2及び図3には示さないが、発射ハンドル25の側部には、発射停止ボタンが設けられる。発射停止ボタンは、ソレノイドアクチュエータによる遊技球の発射を停止させるために設けられたボタンである。遊技者が発射停止ボタンを押下すると、発射ハンドル25を把持して回動させた状態であっても、遊技球の発射が停止される。
払出装置16及び基板ユニット17は、ベースドア3の背面側に配置される。払出装置16には、貯留ユニット(不図示)から遊技球が供給される。払出装置16は、貯留ユニットから供給された遊技球の中から、払出条件の成立に基づいて、所定個数の遊技球を上皿21又は下皿22に払い出す。基板ユニット17は、各種制御基板を有する。各種制御基板には、後述する主制御回路70や副制御回路200などが設けられる(後述の図5参照)。
[ガラスドア]
ガラスドア4は、表面が略四角形状の板状部材で構成される。また、ガラスドア4は、遊技盤12の前面側に配置され、遊技盤12を覆う大きさを有する。このガラスドア4の前面において、2つのスピーカ11と対向する上枠部(上部領域)には、それぞれ2つのスピーカカバー29が設けられる。
また、ガラスドア4の中央部において、遊技盤12の遊技領域12aと対向する領域には、少なくとも遊技領域12aを露出させるような大きさの開口4aが形成される。ガラスドア4の開口4aは、光透過性を有する保護ガラス28が取り付けられ、これにより、開口4aが塞がれる。したがって、ガラスドア4をベースドア3に対して閉じると、保護ガラス28は、遊技盤12の少なくとも遊技領域12aに対面するように配置される。
さらにガラスドア4の下枠部(保護ガラス28の下部)には、遊技者が操作可能な操作手段として、選択ボタン36及び決定ボタン37が設けられる。選択ボタン36は、例えば、表示装置13の表示領域13a(表示画面)にメニュー等の複数の選択肢が表示された際に、遊技者が表示画面上において、該複数の選択肢から所定の選択肢を選択する際の操作で用いられるボタンである。それゆえ、選択ボタン36は、図2に示すように、表示画面上における遊技者の選択操作を上下左右の方向に実行可能にする4つの移動ボタンで構成される。また、決定ボタン37は、遊技者が表示装置13の表示画面上において選択した選択肢を決定する際に押下されるボタンである。
[遊技盤]
次に、遊技盤12の構成について、図4を参照して説明する。図4は、遊技盤12の構成を示す正面図である。
遊技盤12の前面には、図4に示すように、ガイドレール41と、球通過検出器43と、第1始動口44と、第2始動口45(始動領域)と、普通電動役物46とが設けられる。また、遊技盤12の前面には、3つの一般入賞口51と、第1大入賞口53(可変入賞装置)と、第2大入賞口54(可変入賞装置)と、アウト口55と、複数の遊技釘56とが設けられる。
また、遊技盤12の前面において、その略中央に配置された表示装置13の表示領域13aの上部には、特別図柄表示装置61(特別図柄表示手段、識別情報表示手段)と、普通図柄表示装置62と、普通図柄保留表示装置63と、第1特別図柄保留表示装置64と、第2特別図柄保留表示装置65とが設けられる。
さらに、遊技盤12には、図4に示すように、可動役物として、2つの剣役物31,32(以下、第1剣役物31及び第2剣役物32という)及びシャッタ役物33が設けられる。
第1剣役物31は、図4に示すように、遊技盤12の上辺部付近に取り付けられ、第2剣役物32は、遊技盤12の一方の側辺部(図4上では、正面(遊技者側)から見て左辺部)付近に取り付けられる。なお、第1剣役物31の非可動時には、第1剣役物31はガラスドア4の上枠部の裏面に配置され、第2剣役物32の非可動時には、第2剣役物32はガラスドア4の一方の側枠部(図4上では、遊技者側から見て左側の側枠部)の裏面に配置される。すなわち、各剣役物が対応する初期位置(基準位置)に配置されている場合(各剣役物が図4中の二点鎖線で示した位置に配置されている場合)、すなわち、剣役物による演出が行われていない場合には、各剣役物は、ガラスドア4の枠部の裏面に隠れた状態となり、遊技者から見えない位置に配置された状態となる。
また、本実施形態では、シャッタ役物33は、図4に示すように、第1始動口44と、遊技者側から見て遊技領域12aの左下部付近に配置された一般入賞口51との間に取り付けられる。
なお、図4には示さないが、遊技盤12の前面には、演出用7セグカウンタも設けられる。演出用7セグカウンタは、二桁の数字や2つの英字を表示可能な表示カウンタで構成される。また、本実施形態では、特別図柄の停止表示の結果が「大当り」である場合に点灯する報知LED(Light Emitting Diode)や、大当り遊技中のラウンド数を表示するラウンド数表示LEDなどを設けてもよい。
[遊技領域の各種構成部材]
ガイドレール41は、遊技領域12aを区画する円弧状に延在した外レール41aと、この外レール41aの内側(内周側)に配置された、円弧状に延在した内レール41bとで構成される。遊技領域12aは、外レール41aの内側に形成される。外レール41a及び内レール41bは、遊技者側から見て、遊技領域12aの左側端部付近において互いに対向するように配置され、これにより、外レール41aと内レール41bとの間に、発射装置15によって発射された遊技球を遊技領域12aの上部へ案内するガイド経路41cが形成される。
また、遊技領域12aの左側上部に位置する内レール41bの先端部には、該内レール41bの先端部と、それと対向する外レール41aの一部とにより、玉放出口41dが形成される。そして、内レール41bの先端部には、玉放出口41dを塞ぐようにして、玉戻り防止片42が設けられる。この玉戻り防止片42は、玉放出口41dから遊技領域12aに放出された遊技球が、再び玉放出口41dを通過してガイド経路41cに進入することを防止する。
玉放出口41dから放出された遊技球は、遊技領域12aの上部から下部に向かって流下する。この際、遊技球は、複数の遊技釘56、第1始動口44、第2始動口45等の遊技領域12aに設けられた各種部材に衝突して、その進行方向を変えながら遊技領域12aの上部から下部に向かって流下する。
遊技領域12aの略中央には、表示装置13の表示領域13aが設けられる。この表示領域13aの上端には、障害物13bが設けられる。障害物13bを設けることにより、遊技球は、遊技領域12a内の表示領域13aと重なる領域上を通過しない。
球通過検出器43は、遊技者側から見て、表示領域13aの右側に配置される。球通過検出器43には、球通過検出器43を通過する遊技球を検出するための通過球センサ43a(後述の図5参照)が設けられる。また、球通過検出器43を遊技球が通過することにより、「当り」か否かの抽選が行われ、該抽選の結果に基づいて普通図柄の変動表示が開始される。
第1始動口44は、表示領域13aの下方に配置され、第2始動口45は、第1始動口44の下方に配置される。第1始動口44及び第2始動口45は、遊技球を受け入れ可能な部材で構成される。以下、遊技球が第1始動口44又は第2始動口45に入ること又は通過することを「入賞」という。そして、遊技球が第1始動口44又は第2始動口45に入賞すると、第1所定数(本実施形態では3個)の遊技球が払い出される。また、第1始動口44に遊技球が入球することにより、「大当り」及び「小当り」のいずれかであるか否かの抽選が行われ、該抽選の結果に基づいて特別図柄の変動表示が開始される。さらに、第2始動口45に遊技球が入球することにより、「大当り」か否かの抽選が行われ、該抽選の結果に基づいて特別図柄の変動表示が開始される。
第1始動口44には、第1始動口44に入賞した遊技球を検出するための第1始動口入賞球センサ44a(後述の図5参照)が設けられる。また、第2始動口45には、第2始動口45に入賞した遊技球を検出するための第2始動口入賞球センサ45a(後述の図5参照)が設けられる。なお、第1始動口44及び第2始動口45に入賞した遊技球は、遊技盤12に設けられた回収口(不図示)を通過して遊技球の回収部(不図示)に搬送される。
普通電動役物46は、第2始動口45に設けられる。普通電動役物46は、第2始動口45の両側に回動可能に取り付けられた一対の羽根部材と、一対の羽根部材を駆動させる普通電動役物ソレノイド46a(後述の図5参照)とを有する。この普通電動役物46は、普通電動役物ソレノイド46aにより駆動され、一対の羽根部材を拡げて第2始動口45に遊技球を入賞し易くする開放状態、及び、一対の羽根部材を閉じて第2始動口45に遊技球を入賞不可能にする閉鎖状態の一方の状態を発生させる。なお、本実施形態では、普通電動役物46が閉鎖状態である場合、一対の羽根部材の開口形態を、入賞不可能にする形態でなく、遊技球の入賞が困難になるような形態にしてもよい。
3つの一般入賞口51のうちの2つは、遊技者側から見て、遊技領域12aの左下部付近に配置される。また、残りの1つの一般入賞口51は、球通過検出器43の下方に配置され、且つ、遊技者側から見て、遊技領域12aの右下部付近に配置される。一般入賞口51は、遊技球を受け入れ可能な部材で構成される。以下では、遊技球が一般入賞口51に入ること又は通過することもまた、「入賞」という。一般入賞口51に遊技球が入賞すると、第2所定数(本実施形態では10個)の遊技球が払い出される。
一般入賞口51には、一般入賞口51に入賞した遊技球を検出するための一般入賞球センサ51a(後述の図5参照)が設けられる。
第1大入賞口53及び第2大入賞口54は、球通過検出器43の下方で、且つ、第1始動口44とその右側に設けられた一般入賞口51との間に配置される。そして、第1大入賞口53及び第2大入賞口54は、遊技球の流路に沿って上下方向に配置され、第1大入賞口53は、第2大入賞口54の上方に配置される。第1大入賞口53及び第2大入賞口54は、ともに、いわゆるアタッカー式の開閉装置であり、開閉可能なシャッタ53a及び54aと、シャッタを駆動させるソレノイドアクチュエータ(後述の図5中の第1大入賞口ソレノイド53b及び第2大入賞口ソレノイド54b)とを有する。
第1大入賞口53及び第2大入賞口54のそれぞれは、対応するシャッタが開いている状態(開放状態)のときに遊技球を受け入れ、シャッタが閉じている状態(閉鎖状態)のときには遊技球を受け入れない。以下では、遊技球が第1大入賞口53又は第2大入賞口54に入ること又は通過することもまた、「入賞」という。第1大入賞口53に遊技球が入賞すると、第3所定数球(本実施形態では10個)の遊技球が払い出される。一方、第2大入賞口54に遊技球が入賞すると、第4所定数球(本実施形態では15個)の遊技球が払い出される。
また、第1大入賞口53には、第1大入賞口53に入賞した遊技球を計数するためのカウントセンサ53c(後述の図5参照)が設けられる。さらに、第2大入賞口54には、第2大入賞口54に入賞した遊技球を計数するためのカウントセンサ54c(後述の図5参照)が設けられる。
アウト口55は、遊技領域12aの最下部に設けられる。このアウト口55は、第1始動口44、第2始動口45、一般入賞口51、第1大入賞口53及び第2大入賞口54のいずれにも入賞しなかった遊技球を受け入れる。
本実施形態の遊技領域12aにおける各種構成部材の配置を図4に示すような配置にすると、遊技者により遊技領域12aの右側の領域に遊技球が打ち込まれた場合(右打ちされた場合)、遊技釘56等により遊技球が第2始動口45に誘導される。この場合、第1始動口44に入賞する可能性はほとんどなくなる。なお、本実施形態では、後述するように、第2始動口45に入賞した方が、第1始動口44に入賞した場合より、遊技者にとって有利な「大当り」の抽選を受け易くなる。それゆえ、第2始動口45への入賞が比較的容易になる後述の「時短遊技状態」では、右打ちを行うことにより、第1始動口44への入賞の可能性(遊技者にとって不利な遊技状態となる可能性)を低くすることができる。
[特別図柄表示装置]
特別図柄表示装置61は、図4に示すように、表示装置13の表示領域13aの上部の略中央に配置される。
特別図柄表示装置61は特別図柄ゲームにおいて、特別図柄を可変表示(変動表示及び停止表示)する表示装置である。本実施形態では、図4に示すように、特別図柄を数字や記号等からなる図柄で表示する装置により特別図柄表示装置61を構成する。なお、本発明はこれに限定されず、特別図柄表示装置61を、例えば、複数のLEDにより構成してもよい。この場合には、複数のLEDの点灯・消灯によって構成される表示パターンを特別図柄として表す。
特別図柄表示装置61は、遊技球が第1始動口44又は第2始動口45に入賞したこと(特別図柄始動入賞)を契機に、特別図柄(識別情報)の変動表示を行う。そして、特別図柄表示装置61は、所定時間、特別図柄の変動表示を行った後、特別図柄の停止表示を行う。以下では、遊技球が第1始動口44に入賞したときに、特別図柄表示装置61において変動表示される特別図柄を、第1特別図柄という。また、遊技球が第2始動口45に入賞したときに、特別図柄表示装置61において変動表示される特別図柄を、第2特別図柄という。
特別図柄表示装置61において、停止表示された第1特別図柄又は第2特別図柄が特定の態様(「大当り」の態様)である場合には、遊技状態が、通常遊技状態から遊技者に有利な状態である大当り遊技状態に移行する。すなわち、特別図柄表示装置61において、第1特別図柄又は第2特別図柄が大当り遊技状態に移行する態様で停止表示されることが、「大当り」である。
大当り遊技状態では、第1大入賞口53又は第2大入賞口54が開放状態になる。具体的には、本実施形態では、遊技球が第1始動口44に入賞し、特別図柄表示装置61において第1特別図柄が特定の態様で停止表示された場合には、第1大入賞口53が開放状態となる。一方、遊技球が第2始動口45に入賞し、特別図柄表示装置61において第2特別図柄が特定の態様で停止表示された場合には、第2大入賞口54が開放状態となる。
各大入賞口の開放状態は、遊技球が所定個数入賞するまで、又は、一定期間(例えば30sec)が経過するまで維持される。そして、各大入賞口の開放状態の経過期間が、このいずれかの条件を満たすと、開放状態であった大入賞口が閉鎖状態になる。
以下では、第1大入賞口53又は第2大入賞口54が遊技球を受け入れやすい状態(開放状態)となっている遊技をラウンドゲームという。ラウンドゲーム間は、大入賞口が閉鎖状態となる。また、ラウンドゲームは、1ラウンド、2ラウンド等のラウンド数として計数される。例えば、1回目のラウンドゲームを第1ラウンド、2回目のラウンドゲームを第2ラウンドと称する。
なお、特別図柄表示装置61において、停止表示された特別図柄が特定の態様以外の態様(「ハズレ」の態様)である場合には、転落抽選に当選した場合を除き遊技状態は移行しない。すなわち、特別図柄ゲームは、特別図柄表示装置61により、特別図柄が変動表示され、その後、特別図柄が停止表示され、その結果によって遊技状態が移行又は維持されるゲームである。
また、本実施形態のパチンコ遊技機1では、第1特別図柄又は第2特別図柄の変動表示中に遊技球が第1始動口44に入賞した場合、該入賞に対応する第1特別図柄の可変表示(保留球)が保留される。そして、現在、変動表示中の第1特別図柄又は第2特別図柄が停止表示されると、保留されていた第1特別図柄の変動表示が開始される。本実施形態では、保留される第1特別図柄の可変表示の数(いわゆる、「保留個数(保留球の個数)」)を、最大4回(個)に規定する。
さらに、本実施形態では、第1特別図柄又は第2特別図柄の変動表示中に遊技球が第2始動口45に入賞した場合、該入賞に対応する第2特別図柄の可変表示(保留球)が保留される。そして、現在、変動表示中の第1特別図柄又は第2特別図柄が停止表示されると、保留されていた第2特別図柄の変動表示が開始される。本実施形態では、保留される第2特別図柄の可変表示の数(保留個数)を、最大4回(個)に規定する。したがって、本実施形態では、特別図柄の可変表示の保留個数は、合わせて最大8個となる。
また、本実施形態では、第1特別図柄の保留球及び第2特別図柄の保留球が混在した場合、一方の特別図柄の変動表示を、他方の特別図柄の変動表示よりも優先的に実行する。なお、本発明はこれに限定されず、第1特別図柄の保留球及び第2特別図柄の保留球が混在した場合、保留された順番に特別図柄の変動表示を実行するようにしてもよい。
[普通図柄表示装置]
普通図柄表示装置62は、図4に示すように、表示装置13の表示領域13aの上部の略中央に配置される。そして、本実施形態では、普通図柄表示装置62は、遊技者側から見て、特別図柄表示装置61の右側に配置される。
普通図柄表示装置62は、普通図柄ゲームにおいて、普通図柄を可変表示(変動表示及び停止表示)する表示装置である。本実施形態では、図4に示すように、普通図柄表示装置62を、上下方向に配列された2つのLED(普通図柄表示LED)により構成する。そして、普通図柄表示装置62では、各普通図柄表示LEDの点灯・消灯によって構成される表示パターンを普通図柄として表す。
普通図柄表示装置62は、遊技球が球通過検出器43を通過したことを契機に、2つの普通図柄表示LEDを交互に点灯・消灯して、普通図柄の変動表示を行う。そして、普通図柄表示装置62は、所定時間、普通図柄の変動表示を行った後、普通図柄の停止表示を行う。
普通図柄表示装置62において、停止表示された普通図柄が所定の態様(「当り」の態様)である場合には、普通電動役物46が所定の期間だけ閉鎖状態から開放状態になる。一方、停止表示された普通図柄が所定の態様以外の態様(「ハズレ」の態様)である場合には、普通電動役物46は閉鎖状態を維持する。すなわち、普通図柄ゲームは、普通図柄表示装置62により、普通図柄が変動表示されて、その後、普通図柄が停止表示され、その結果に応じて普通電動役物46が動作するゲームである。
なお、普通図柄の変動表示中に遊技球が球通過検出器43を通過した場合には、普通図柄の可変表示が保留される。そして、現在、変動表示中の普通図柄が停止表示されると、保留されていた普通図柄の変動表示が開始される。本実施形態では、保留される普通図柄の可変表示の数(すなわち、「保留個数」)を、最大4回(個)に規定する。
[普通図柄保留表示装置]
普通図柄保留表示装置63は、図4に示すように、表示装置13の表示領域13aの上部の略中央に配置される。そして、本実施形態では、普通図柄保留表示装置63は、普通図柄表示装置62の下方に配置される。
普通図柄保留表示装置63は、普通図柄の可変表示の保留個数を表示する装置である。本実施形態では、図4に示すように、普通図柄保留表示装置63を、左右方向に配列された4つのLED(普通図柄保留表示LED)により構成する。そして、普通図柄保留表示装置63では、各普通図柄保留表示LEDの点灯・消灯により、普通図柄の可変表示の保留個数を表示する。
具体的には、普通図柄の可変表示の保留個数が1個である場合、遊技者側から見て、最も左側に位置する普通図柄保留表示LED(左から1つ目の普通図柄保留表示LED)が点灯し、その他の普通図柄保留表示LEDが消灯する。普通図柄の可変表示の保留個数が2個の場合には、左から1つ目及び2つ目の普通図柄保留表示LEDが点灯し、その他の普通図柄保留表示LEDが消灯する。普通図柄の可変表示の保留個数が3個の場合は、左から1つ目〜3つ目の普通図柄保留表示LEDが点灯し、その他の普通図柄保留表示LEDが消灯する。そして、普通図柄の可変表示の保留個数が4個の場合には、全ての普通図柄保留表示LEDが点灯する。
[第1特別図柄保留表示装置]
第1特別図柄保留表示装置64は、図4に示すように、表示装置13の表示領域13aの上部において、遊技者側から見て、特別図柄表示装置61の左側に配置される。
第1特別図柄保留表示装置64は、保留されている第1特別図柄の可変表示(第1特別図柄の保留球)に関する情報を表示する装置である。本実施形態では、図4に示すように、第1特別図柄保留表示装置64は、左右方向に配列された4つのLED(第1特別図柄保留表示LED)を有する。なお、第1特別図柄保留表示装置64の表示態様は、普通図柄保留表示装置63の表示態様と同様である。すなわち、第1特別図柄の可変表示が保留されている場合には、遊技者側から見て、最も左側に位置する第1特別図柄保留表示LEDから保留個数目までの第1特別図柄保留表示LEDが点灯する。
なお、第1特別図柄保留表示装置64の構成は、図4に示す例に限定されず、少なくとも第1特別図柄の可変表示の保留個数を表示できる構成であれば、任意に構成することができる。
[第2特別図柄保留表示装置]
第2特別図柄保留表示装置65は、図4に示すように、表示装置13の表示領域13aの上部において、遊技者側から見て、第1特別図柄保留表示装置64の右側に配置される。
第2特別図柄保留表示装置65は、保留されている第2特別図柄の可変表示(第2特別図柄の保留球)に関する情報を表示する装置である。本実施形態では、図4に示すように、第2特別図柄保留表示装置65は、左右方向に配列された4つのLED(第2特別図柄保留表示LED)を有する。なお、第2特別図柄保留表示装置65の表示態様は、普通図柄保留表示装置63の表示態様と同様である。すなわち、第2特別図柄の可変表示が保留されている場合には、遊技者側から見て、最も左側に位置する第2特別図柄保留表示LEDから保留個数目までの第2特別図柄保留表示LEDが点灯する。
なお、第2特別図柄保留表示装置65の構成は、図4に示す例に限定されず、少なくとも第2特別図柄の可変表示の保留個数を表示できる構成であれば、任意に構成することができる。
[表示装置]
表示装置13は、上述のように液晶表示装置で構成され、その表示領域13aにおいて各種画像表示演出を行う。
具体的には、本実施形態では、特別図柄表示装置61に表示される特別図柄と関連する演出画像が表示領域13aに表示される。この際、例えば、特別図柄表示装置61において特別図柄が変動表示中であるときには、特定の場合を除いて、例えば、1〜8までの数字や各種文字などからなる複数の演出用識別図柄(装飾図柄)が表示領域13aに変動表示される。そして、特別図柄表示装置61において特別図柄が停止表示されると、表示領域13aにも、特別図柄に対応する複数の装飾図柄(後述の大当り図柄等)が停止表示される。
そして、特別図柄表示装置61において停止表示された特別図柄が特定の態様である(停止表示の結果が「大当り」である)場合には、「大当り」であることを遊技者に把握させるための演出画像が表示領域13aに表示される。「大当り」であることを遊技者に把握させるための演出としては、例えば、まず、停止表示された複数の装飾図柄が特定の態様(例えば、同一の装飾図柄が所定の方向に沿って並ぶ態様)となり、その後、「大当り」を報知する画像を表示するような演出が挙げられる。
また、本実施形態では、表示装置13の表示領域13aに、第1特別図柄保留表示装置64及び第2特別図柄保留表示装置65の表示内容と関連する演出画像が表示される。例えば、表示領域13aには、特別図柄の可変表示の保留個数を報知する保留情報(例えば、保留個数と同じ数の保留用図柄)が表示される。また、例えば、本実施形態のパチンコ遊技機1では、特別図柄の保留球の情報に基づいて先読み演出を行うが、この際の予告報知も表示領域13aに表示される。
なお、本実施形態では、普通図柄表示装置62において停止表示された普通図柄が所定の態様であった場合に、その情報を遊技者に把握させる演出画像を表示装置13の表示領域13aに表示させる機能をさらに設けてもよい。
[各種可動役物]
次に、遊技盤12に設けられた各種可動役物(第1剣役物31、第2剣役物32及びシャッタ役物33)の構成について簡単に説明する。
第1剣役物31は、図4に示すように、剣の形を模した第1剣状部材31aと、第1剣状部材31aを回転駆動するための第1回転機構部31bとを備える。
第1回転機構部31bは、第1剣状部材31aの剣先部とは反対側の端部(柄部)に取り付けられた第1回転ギア群31cと、第1回転ギア群31cを介して第1剣状部材31aを回転駆動するための第1モータ31dとを含んで構成される。なお、第1モータ31dは、ステッピングモータで構成することができる。また、第1回転機構部31bは、遊技者側から見て遊技盤12の右角部付近に取り付けられる。
本実施形態において、第1剣役物31が初期位置に配置されている場合には、図4中の二点鎖線で示すように、第1剣状部材31aの延在方向が遊技盤12の上辺と略平行となるように配置され、第1剣状部材31aの剣先部が遊技盤12の左辺部と対向した状態となる。そして、第1剣役物31を用いた演出の実行中には、第1回転機構部31bは、第1回転機構部31bが取り付けられた第1剣状部材31aの柄部を中心にして、第1剣状部材31aを遊技者側から見て反時計回り方向(図4中の矢印A1方向:以下、逆回転方向という)又は時計回り方向(図4中の矢印A2方向:以下、正回転方向という)に回転駆動する。
第2剣役物32は、図4に示すように、剣の形を模した第2剣状部材32aと、第2剣状部材32aを回転駆動するための第2回転機構部32bとを備える。なお、第2剣役物32は、第1剣役物31より小さな役物であり、第2剣役物32の重量は第1剣役物31の重量より軽くなる。
第2回転機構部32bは、第2剣状部材32aの剣先部とは反対側の端部(柄部)に取り付けられた第2回転ギア群32cと、第2回転ギア群32cを介して第2剣状部材32aを回転駆動するための第2モータ32dとを含んで構成される。なお、第2モータ32dは、ステッピングモータで構成することができる。また、第2回転機構部32bは、遊技者側から見て遊技盤12の左角部付近に取り付けられる。
本実施形態において、第2剣役物32が初期位置に配置されている場合には、図4中の二点鎖線で示すように、第2剣状部材32aの延在方向が遊技盤12の左辺と略平行となるように配置され、第2剣状部材32aの剣先部が遊技盤12の下辺部と対向した状態となる。そして、第2剣役物32を用いた演出の実行中には、第2回転機構部32bは、第2回転機構部32bが取り付けられた第2剣状部材32aの柄部を中心にして、第2剣状部材32aを逆回転方向(図4中の矢印A3方向)又は正回転方向(図4中の矢印A4方向)に回転駆動する。
シャッタ役物33は、主面の形状が長方形である2つの板状部材33a,33b(以下、第1パネル部材33a及び第2パネル部材33bという)と、この第1パネル部材33a及び第2パネル部材33bを同時に回転駆動するための第3回転機構部33c(後述の図68A〜図68C参照)とを備える。
第1パネル部材33a及び第2パネル部材33bは、遊技盤12に設けられたシャッタ役物用開口部34に嵌め込むようにして取り付けられる。この際、第1パネル部材33a及び第2パネル部材33bは、上下方向に並んで配置され、かつ、第1パネル部材33aの一方(図4では下辺)の長辺部と第2パネル部材33bの一方(図4では上辺)の長辺部とが互いに対向するように配置される。
また、各パネル部材は、一方の短辺部の中央と、他方の短辺部の中央とを繋ぐ中心軸(図4中の一点鎖線A5)を回転軸として回動可能となるように、シャッタ役物用開口部34を画成する枠に取り付けられている。
第3回転機構部33cは、図4には示さないが、各パネル部材の一方(図4で右側)の短辺部の中央に取り付けられたギア部材を含む第3回転ギア群と、第3回転ギア群を介して各パネル部材を回転駆動するための第3モータ(不図示)とを含んで構成される(後述の図68A〜図68C参照)。なお、第3モータは、ステッピングモータで構成することができる。
本実施形態において、シャッタ役物33を用いた演出が行われない場合には、シャッタ役物用開口部34が第1パネル部材33a及び第2パネル部材33bにより閉じられた状態となる。すなわち、各パネル部材の初期位置は、各パネル部材の主面が遊技者側(正面)に向いている時の位置となる。そして、シャッタ役物33を用いた演出の実行中には、第3回転機構部33cは、第3回転機構部33cに取り付けられた第1パネル部材33a及び第2パネル部材33bを、図4中の一点鎖線A5を中心軸として一方の回転方向又はその逆の回転方向に回転駆動(開閉駆動)する。
また、図4には示さないが、シャッタ役物33の裏面側には複数のLED35(後述の図68C参照)が設けられ、シャッタ役物33を用いた演出において、各パネル部材が開閉駆動(回転駆動)されると、LED35からの光がシャッタ役物用開口部34から外部に射出されたり、遮蔽されたりする。なお、本実施形態では、シャッタ役物33の裏面側には、所定数のLED35が横一列に配置されたLED群が4つ設けられ、この4つのLED群が上下に並んで配置されている(後述の図68C参照)。
また、本実施形態では、図示しないが、可動役物(可動体)毎に、可動役物が初期位置に存在するか否かを検出するための検知装置(位置検出手段)が設けられる。この検知装置は、例えばフォトセンサ等で構成される。
なお、上述した各可動役物を用いた演出動作では、可動役物の回転部材(剣状部材及びパネル部材)の回転位置は、所定の角度分解能を1ステップとして、そのステップの倍数(ステップ数)により規定される。この際、可動役物の回転部材(剣状部材及びパネル部材)の回転基準位置(0ステップの位置)は、可動役物が初期位置に存在するときの位置とする。例えば、角度分解能を1.5度(1ステップ)とすると、回転部材を初期位置(0ステップ)から45度回転させた位置は、30ステップとなる。また、本実施形態では、上述した各可動役物に設けられたモータ(ステッピングモータ)はそれぞれ、対応するモータドライバにより駆動される(後述の図60参照)。
<パチンコ遊技機が備える回路の構成>
次に、図5を参照しながら、本実施形態のパチンコ遊技機1が備える各種回路の構成について説明する。なお、図5は、パチンコ遊技機1の回路構成を示すブロック図である。
パチンコ遊技機1は、図5に示すように、主に遊技動作の制御を行う主制御回路70(主制御手段、遊技制御手段)と、払出・発射制御回路123と、遊技の進行に応じた演出動作の制御を行う副制御回路200(副制御手段、演出制御手段、可動体制御手段)とを有する。
[主制御回路]
主制御回路70は、ワンチップマイコン77と、クロック発生回路74と、初期リセット回路75とを備える。なお、上述のように、本実施形態では、第1始動口44又は第2始動口45の入賞時に特別図柄の抽選処理を行うが、この処理は、主制御回路70により制御される。すなわち、主制御回路70は、遊技状態を遊技者にとって有利な状態に移行させるか否かの抽選処理を行う手段(抽選手段)も兼ねる。
ワンチップマイコン77は、メインCPU(Central Processing Unit)71と、メインROM(Read Only Memory)72と、メインRAM(Random Access Memory)73と、シリアル通信部76とにより構成される。なお、メインCPU71、メインROM72、メインRAM73及びシリアル通信部76は、それぞれ別個に設けられていてもよい。
また、本実施形態では、主制御回路70の基板にメインROM72を内蔵する構成を説明するが、本発明はこれに限定されない。例えば、主制御回路70の基板に、メインROM72を搭載したROM基板を接続してもよい。さらに、本実施形態では、主制御回路70内の各種回路(各種手段)は、一体的に形成されていてもよいし、別体として形成されていてもよい。また、メインROM72は、遊技機に設置される構成で無くてもよく、遊技機と通信可能となるような構成であってもよい。
ワンチップマイコン77には、クロック発生回路74及び初期リセット回路75が接続される。メインROM72には、メインCPU71によりパチンコ遊技機1の動作を制御するための各種プログラム(後述の図82〜図91参照)や、各種データテーブル(後述の図9〜図18参照)等が記憶されている。
メインCPU71は、メインROM72に記憶されたプログラムに従って、各種処理を実行する。メインRAM73は、メインCPU71が各種処理を実行する際の一時記憶領域と作用し、メインCPU71が各種処理に必要となる種々のフラグや変数の値が記憶される。なお、本実施形態では、メインCPU71の一時記憶領域としてメインRAM73を用いるが、本発明はこれに限定されず、読み書き可能な記憶媒体であれば任意の記録媒体を一時記憶領域として用いることができる。
クロック発生回路74は、後述するシステムタイマ割込処理を実行するために、所定の周期(例えば2msec)でクロックパルスを発生する。初期リセット回路75は、電源投入時にリセット信号を生成する。そして、シリアル通信部76は、副制御回路200に対してコマンドを供給する。
また、主制御回路70には、図5に示すように、主制御回路70から送られた出力信号に応じて動作する各種の装置が接続される。
具体的には、主制御回路70には、特別図柄表示装置61、普通図柄表示装置62、普通図柄保留表示装置63、第1特別図柄保留表示装置64及び第2特別図柄保留表示装置65が接続される。これらの各装置は、主制御回路70から送られた出力信号に基づいて所定の動作を行う。例えば、主制御回路70から特別図柄表示装置61に所定の出力信号が送信されると、特別図柄表示装置61は、その出力信号に基づいて、特別図柄ゲームにおける特別図柄の可変表示の動作制御を行う。
また、主制御回路70には、普通電動役物ソレノイド46a、第1大入賞口ソレノイド53b及び第2大入賞口ソレノイド54bが接続される。そして、主制御回路70は、普通電動役物ソレノイド46aを駆動制御して、普通電動役物46の一対の羽根部材を開放状態又は閉鎖状態にする。また、主制御回路70は、第1大入賞口ソレノイド53b及び第2大入賞口ソレノイド54bをそれぞれ駆動制御して、第1大入賞口53及び第2大入賞口54を開放状態又は閉鎖状態にする。
さらに、主制御回路70には、図5に示すように、各種センサ及びスイッチに接続され、各種センサ及びスイッチの出力信号を受信する。具体的には、主制御回路70には、カウントセンサ53c,54c、一般入賞球センサ51a、通過球センサ43a、第1始動口入賞球センサ44a、第2始動口入賞球センサ45a、バックアップクリアスイッチ121などが接続される。
カウントセンサ53cは、第1大入賞口53に入賞した遊技球を計数し、その結果を示す所定の出力信号を主制御回路70に出力する。カウントセンサ54cは、第2大入賞口54に入賞した遊技球を計数し、その結果を示す所定の出力信号を主制御回路70に出力する。一般入賞球センサ51aは、一般入賞口51に遊技球が入賞した場合に、所定の検知信号を主制御回路70に出力する。
また、通過球センサ43aは、遊技球が球通過検出器43を通過した場合に、所定の検知信号を主制御回路70に出力する。第1始動口入賞球センサ44aは、遊技球が第1始動口44に入賞した場合に、所定の検知信号を主制御回路70に出力する。第2始動口入賞球センサ45aは、遊技球が第2始動口45に入賞した場合に、所定の検知信号を主制御回路70に出力する。また、バックアップクリアスイッチ121は、電断時等にバックアップデータが遊技店の管理者等の操作に応じてクリアされた場合に、所定の検知信号を主制御回路70及び払出・発射制御回路123に出力する。
さらに、主制御回路70には、払出・発射制御回路123が接続される。なお、払出・発射制御回路123及びそれに接続された各種周辺装置の内容については、後で詳述する。
[払出・発射制御回路及びその周辺装置]
払出・発射制御回路123は、賞球ケースユニット170、払出状態報知表示装置178、下皿満タンスイッチ179、発射装置15、外部端子板140及びカードユニット150に接続される。また、外部端子板140は、データ表示器141に接続され、カードユニット150は、貸し出し用操作部151に接続される。
払出・発射制御回路123は、主制御回路70から送信される各種コマンド等に基づいて、これらの周辺装置に対して信号等を入出力し、各周辺装置の動作制御を行う。例えば、払出・発射制御回路123は、主制御回路70から送信される賞球制御コマンド、カードユニット150から送信される後述の貸し球制御信号を受信し、賞球ケースユニット170に対して所定の信号を送信する。これにより、賞球ケースユニット170は、遊技球を払い出す。
賞球ケースユニット170は、遊技球の払出を行う装置であり、第1の15球担保スイッチ172a、第2の15球担保スイッチ172b、第1の計数スイッチ181a、第2の計数スイッチ181b及び払出モータ174を有する。なお、賞球ケースユニット170に含まれるこれらの構成部は、それぞれ払出・発射制御回路123に接続される。
また、ここでは図示しないが、賞球ケースユニット170の内部には、2つの球供給通路が設けられる。そして、第1の15球担保スイッチ172aは、一方の球供給通路に補給された遊技球を検出し、その検出結果を示す所定の出力信号を払出・発射制御回路123に出力する。また、第2の15球担保スイッチ172bは、他方の球供給通路に補給された遊技球を検出し、その検出結果を示す所定の出力信号を払出・発射制御回路123に出力する。
さらに、ここでは図示しないが、賞球ケースユニット170の内部には、2つの払出通路が設けられる。そして、第1の計数スイッチ181aは、一方の払出通路に払出された遊技球を検出し、その検出結果を示す所定の出力信号を払出・発射制御回路123に出力する。また、第2の計数スイッチ181bは、他方の払出通路に払出された遊技球を検出し、その検出結果を示す所定の出力信号を払出・発射制御回路123に出力する。
払出モータ174は、ステッピングモータで構成され、払出・発射制御回路123から入力された制御信号に応じて駆動される。払出モータ174は、賞球ケースユニット170内に設けられた図示しないスプロケット(回転部材)を回転駆動する。そして、このスプロケットの回転動作により、各球供給路に蓄積された遊技球が1球ずつ、対応する払出通路に移動する。
払出状態報知表示装置178は、遊技球の払出に関して異常が発生した場合に、その異常の種別を報知するための装置であり、7セグメントディスプレイにより構成される。払出状態報知表示装置178は、遊技店(遊技場)の管理者のみが視認可能となるような位置に取り付けられ、例えば、パチンコ遊技機1の裏面の所定箇所に取り付けられる。
下皿満タンスイッチ179は、下皿22に貯留された遊技球が満タンになった場合に、これを検知し、その検知結果を払出・発射制御回路123に出力する。
なお、払出・発射制御回路123は、下皿満タンスイッチ179から下皿満タン状態であることを示す信号が入力されると、下皿満タン状態である旨を払出状態報知表示装置178を用いて報知するとともに、主制御回路70に下皿満タン状態であることを示す信号を出力する。その後、主制御回路70から副制御回路200に演出制御コマンドが送信されると、副制御回路200は、例えばスピーカ群10、ランプ群20、表示装置13等を用いて下皿22が満タン状態であることを報知する。
発射装置15は、上皿21に貯留された遊技球を遊技領域12aに発射する際に遊技者に回動操作可能な発射ハンドル25を有する。払出・発射制御回路123は、発射ハンドル25が遊技者によって把持され、且つ、時計回り方向へ回動操作されたときに、その回動角度に応じて発射装置15のソレノイドアクチュエータ(不図示)に電力を供給する。これにより、発射装置15は、遊技球を発射する。なお、発射装置15の駆動手段としては、ソレノイドアクチュエータの代わりにモータを用いてもよい。
外部端子板140は、遊技店内の全てのパチンコ遊技機を管理するホールコンピュータにデータ送信するために用いられる。データ表示器141は、例えばパチンコ遊技機1の上部に遊技店の付帯設備として設置され、ホール係員を呼び出す機能や当り回数を表示する機能を有する。
貸し出し用操作部151は、遊技者に操作されると、カードユニット150に遊技球の貸し出しを要求する信号を出力する。カードユニット150は、貸し出し用操作部151から出力される遊技球の貸し出しを要求する信号に基づいて、賞球ケースユニット170を介して払出される遊技球の数(貸し球数)を決定する。そして、カードユニット150は、貸し出し用操作部151から遊技球の貸し出しを要求する信号を受信すると、決定された貸し球数の情報を含む貸し球制御信号を払出・発射制御回路123に送信する。
[副制御回路]
副制御回路200は、主制御回路70のシリアル通信部76に接続される。そして、副制御回路200(後述のホスト制御回路210)は、主制御回路70から送信される各種のコマンド(遊技の進行に関する情報)に従って、副制御回路200全体の制御を行う。そして、副制御回路200は、主制御回路70から送信される各種のコマンドに基づいて、スピーカ群10による音声再生動作の制御、表示装置13による画像表示動作の制御、LEDを含むランプ群20(演出手段)によるランプ点灯/消灯動作の制御、役物群30(装飾部材)による演出動作の制御等を行う。すなわち、副制御回路200は、主制御回路70からの指令に基づいて、各種演出装置を制御し、遊技の進行に応じた各種演出を実行する。なお、本実施形態では、副制御回路200から主制御回路70に対して信号を供給できない構成とするが、本発明はこれに限定されず、副制御回路200から主制御回路70に信号送信可能な構成を備えていてもよい。
なお、スピーカ群10には、例えば、2つのスピーカカバー29の裏面側に設けられた2つのスピーカ11、2つのスピーカカバー27の裏面側に設けられた2つのスピーカ(不図示)などが含まれる。
ランプ群20には、例えば、ガラスドア4の枠部に取り付けられた各種LEDや、シャッタ役物33の裏面側に設けられた後述の複数のLED35などが含まれる。さらに、本実施形態では、ランプ群20には、1個以上のLED、及び、各LEDを制御するための1個以上のLEDドライバが含まれる(後述の図36〜図38参照)。
また、役物群30には、例えば、遊技盤12に設けられた第1剣役物31、第2剣役物32、シャッタ役物33などが含まれる。
次に、図6を参照しながら、副制御回路200の内部構成について、より詳細に説明する。なお、図6は、副制御回路200内部の回路構成、並びに、副制御回路200とその各種周辺装置との接続関係を示すブロック図である。
副制御回路200は、図6に示すように、中継基板201と、サブ基板202と、制御ROM基板203と、CGROM(Character Generator ROM)基板204とを備える。そして、サブ基板202は、中継基板201、制御ROM基板203及びCGROM基板204に接続される。
中継基板201は、主制御回路70から送信されたコマンドを受信し、該受信したコマンドをサブ基板202に送信するための中継基板である。
サブ基板202には、ホスト制御回路210(ホスト制御手段、演出制御手段、第1の演出装置制御手段、可動体移動制御手段)、音声・LED制御回路220(発光制御手段、第2の演出装置制御手段、音制御手段)、表示制御回路230(表示制御手段)、SDRAM(Synchronous Dynamic RAM)250及び内蔵中継基板260が設けられる。
ホスト制御回路210は、主制御回路70から送信される各種のコマンドに基づいて、副制御回路200全体の動作を制御する回路であり、CPUプロセッサにより構成される。ホスト制御回路210は、サブ基板202内において、音声・LED制御回路220、表示制御回路230及び内蔵中継基板260に接続される。また、ホスト制御回路210は、制御ROM基板203に接続される。
また、ホスト制御回路210は、サブワークRAM210a及びSRAM(Static RAM)210bを有する。サブワークRAM210aは、ホスト制御回路210が各種処理を実行する際の作業用一時記憶領域と作用する記憶装置であり、ホスト制御回路210が各種処理を実行する際に必要となる種々のフラグや変数の値などを記憶する。SRAM210bは、サブワークRAM210a内の所定のデータをバックアップする記憶装置である。なお、本実施形態では、ホスト制御回路210の一時記憶領域としてRAMを用いるが、本発明はこれに限定されず、読み書き可能な記憶媒体であれば任意の記録媒体を一時記憶領域として用いてよい。また、図示しないが、ホスト制御回路210は、各可動役物のモータに出力される各種励磁データ(演出データ、駆動データ)等が格納される内蔵ROMも有する。
音声・LED制御回路220は、内蔵中継基板260を介してスピーカ群10及びランプ群20に接続され、ホスト制御回路210から入力される制御信号(制御命令:後述のサウンドリクエスト及びランプリクエスト)に基づいて、スピーカ群10による音声再生動作の制御及びランプ群20による発光動作の制御を行う回路である。また、音声・LED制御回路220は、内蔵中継基板260内のI2Cコントローラを介して役物群30(モータコントローラ270)にも接続され、ホスト制御回路210から入力される制御信号(後述の役物リクエスト)に基づいて、役物群30(各種可動役物)による役物演出動作の制御も行う。
それゆえ、機能的には、音声・LED制御回路220は、音声コントローラ220aと、ランプコントローラ220bと、役物コントローラ20cとを有する。音声コントローラ220a、ランプコントローラ220b及び役物コントローラ20cは、実質、後述のサウンド・ランプ制御モジュール226に含まれる。音声・LED制御回路220の内部構成については、後で図面を参照しながら詳述する。
なお、本実施形態では、音声・LED制御回路220から出力された制御信号及びデータ(例えば、後述のLEDデータ等)が内蔵中継基板260を介してランプ群20に送信される際、音声・LED制御回路220及びランプ群20間の通信は、SPI(Serial Periperal Interface)の通信方式(シリアル通信方式の一種)で行われる。また、音声・LED制御回路220による各種制御処理の実行周期(割込処理の周期)は、ホスト制御回路210のそれより短い。具体的には、本実施形態では、音声・LED制御回路220による各種制御処理の実行周期(以下、「制御実行周期」という)は、約12msec(第2の周期)であり、ホスト制御回路210の制御実行周期は、約33msec(第1の周期)である。
表示制御回路230は、表示装置13に接続され、ホスト制御回路210から入力される制御信号(描画リクエスト)に基づいて演出に関する画像(装飾図柄画像、背景画像、演出用画像等)を表示装置13で表示させる際の各種処理動作を制御するための回路である。なお、表示制御回路230は、ディスプレイコントローラ(後述の第1ディスプレイコントローラ238及び第2ディスプレイコントローラ239)と、内蔵VRAM(Video RAM)237とを有する。
また、表示制御回路230は、サブ基板202内においてSDRAM250に接続される。さらに、表示制御回路230は、CGROM基板204に接続される。また、表示制御回路230内のディスプレイコントローラは、中継基板を介さず直接、表示装置13に接続される。なお、表示制御回路230の内部構成については、後で図面を参照しながら詳述する。
SDRAM250は、DDR2(Double-Date Rate2) SDRAMで構成される。また、SDRAM250には、表示装置13により表示される画像(動画及び静止画)の描画処理において、各種画像データを一時的に格納する各種バッファが設けられる。具体的には、例えば、後述の図111〜図113に示すように、SDRAM250には、テクスチャバッファ、ムービバッファ、ブレンドバッファ、2つのフレームバッファ(第1フレームバッファ及び第2フレームバッファ)、モーションバッファ等が設けられる。
内蔵中継基板260は、ホスト制御回路210及び音声・LED制御回路220から出力された各種信号及び各種データを受信し、該受信した各種信号及び各種データをスピーカ群10、ランプ群20及び役物群30に送信する中継基板である。
また、内蔵中継基板260は、I2C(Inter-Integrated Circuit)コントローラ261を有し、I2Cコントローラ261は、ホスト制御回路210、音声・LED制御回路220、及び、役物群30のモータコントローラ270に接続される。すなわち、ホスト制御回路210及び音声・LED制御回路220のそれぞれは、I2Cコントローラ261及びモータコントローラ270を介して役物群30に接続される。そして、ホスト制御回路210及び音声・LED制御回路220のそれぞれから出力された制御信号及びデータ(例えば後述の励磁データ等)は、I2Cコントローラ261及びモータコントローラ270を介して役物群30に入力される。
なお、本実施形態では、I2Cコントローラ261及びモータコントローラ270間の通信は、I2Cの通信方式(シリアル通信方式の一種)で行われる。また、本実施形態では、モータコントローラ270内には、各モータを駆動するための1個以上のモータドライバが含まれる(後述の図60及び図61参照)。
また、本実施形態の構成において、モータコントローラ270を使用せずにホスト制御回路210及び音声・LED制御回路220のそれぞれが直接、役物群30内の各モータを駆動する構成にしてもよいし、モータ制御用の制御回路を別途設けてもよい。さらに、本実施形態では、1つの制御回路で複数のモータドライバ(モータ)を制御する構成を説明するが(後述の図60及び図61参照)、本発明はこれに限定されない。本実施形態において、1以上(1又は複数)の制御回路により1以上(1又は複数)のモータ(モータドライバ)を制御する構成にしてもよいし、1以上(1又は複数)の制御回路により1つのモータ(モータドライバ)を制御する構成にしてもよいし、1つの制御回路により1つのモータ(モータドライバ)を制御する構成にしてもよい。
制御ROM基板203には、サブメインROM205が設けられる。サブメインROM205には、ホスト制御回路210によりパチンコ遊技機1の演出動作を制御するための各種プログラム(後述の図92、図94〜図99、図101〜図124参照)や、各種データテーブル(後述の図19〜図21参照)が記憶される。そして、ホスト制御回路210は、サブメインROM205に記憶されたプログラムに従って、各種の処理を実行する。
なお、本実施形態では、ホスト制御回路210で用いるプログラムや各種テーブル等を記憶する記憶手段として、サブメインROM205を適用したが、本発明はこれに限定されない。このような記憶手段としては、制御手段を備えたコンピュータにより読み取り可能な記憶媒体であれば別態様の記憶媒体を用いてもよく、例えば、ハードディスク装置、CD−ROM及びDVD−ROM、ROMカートリッジ等の記憶媒体を適用してもよい。また、プログラムの各々が別々の記憶媒体に記録されていてもよい。さらに、プログラムは、予め記録媒体に記録されていてもよいし、電源投入後に外部等からダウンロードされ、サブメインROM205に記録されてもよい。
CGROM基板204には、CGROM206が設けられる。CGROM206には、例えば表示装置13で表示される画像データや、スピーカ群10内の各スピーカにより再生される音声データ(後述のアクセスデータ)などが記憶される。
なお、本実施形態では、副制御回路200内において、各種ROM基板(制御ROM基板203及びCGROM基板204)とサブ基板202とがボード・トゥ・ボードで接続される構成を説明したが、本発明はこれに限定されない。例えば、各種ROMをサブ基板202に設けられたソケット等のポートに直接挿入して、ROM機能を備えた又はROMそのものを備えた一枚の基板によりサブ基板202を構成してもよい。すなわち、サブ基板202と各種ROMとを一体的に構成してもよい。
[音声・LED制御回路]
次に、図7を参照しながら、音声・LED制御回路220の内部構成について説明する。図7は、音声・LED制御回路220の内部の回路構成、並びに、音声・LED制御回路220とその各種周辺装置及び周辺回路部との接続関係を示すブロック図である。なお、図7では、説明を簡略化するため、音声・LED制御回路220と各種周辺装置及び回路部との間に設けられる中継基板等の図示は省略する。
さらに、図7では、説明を簡略化するため、音声・LED制御回路220と内蔵中継基板260内のI2Cコントローラ261(役物群30)との接続関係の図示を省略する。また、ここでは、両者の接続関係の説明も省略する。なお、音声・LED制御回路220内の後述のサウンド・ランプ制御モジュール226は、インターフェイスを介してI2Cコントローラ261に接続されていてもよいし、直接、I2Cコントローラ261に接続されていてもよい。
音声・LED制御回路220は、図7に示すように、LSI(Large-Scale Integration)インターフェイス221と、メモリインターフェイス222と、デジタルオーディオインターフェイス223と、ペリフェラルインターフェイス224と、コマンドレジスタ225と、サウンド・ランプ制御モジュール226と、メインジェネレータ227と、マルチエフェクタ228とを備える。音声・LED制御回路220内における各部の接続関係は、次の通りである。
音声・LED制御回路220内において、サウンド・ランプ制御モジュール226は、メモリインターフェイス222、ペリフェラルインターフェイス224、コマンドレジスタ225、メインジェネレータ227及びマルチエフェクタ228に接続される。また、コマンドレジスタ225は、サウンド・ランプ制御モジュール226以外に、LSIインターフェイス221に接続される。また、メインジェネレータ227は、サウンド・ランプ制御モジュール226以外に、メモリインターフェイス222及びマルチエフェクタ228に接続される。さらに、マルチエフェクタ228は、サウンド・ランプ制御モジュール226及びメインジェネレータ227以外に、メモリインターフェイス222及びデジタルオーディオインターフェイス223に接続される。
次に、音声・LED制御回路220内の各部の構成について説明する。
LSIインターフェイス221は、ホスト制御回路210とコマンドレジスタ225との間で制御信号等(例えば、サウンドリクエスト、ランプリクエスト、役物リクエスト等)の入出力動作を行う際に用いられるインターフェイス回路である。すなわち、コマンドレジスタ225は、LSIインターフェイス221を介してホスト制御回路210に接続される。
メモリインターフェイス222は、サブメインROM205と、サウンド・ランプ制御モジュール226、メインジェネレータ227及びマルチエフェクタ228のそれぞれとの間で音声データ等の入出力動作を行う際に用いられるインターフェイス回路である。
デジタルオーディオインターフェイス223は、マルチエフェクタ228からスピーカ群10に音声信号等を出力する際に用いられるインターフェイス回路である。また、デジタルオーディオインターフェイス223は、オーディオ入力信号をマルチエフェクタ228に出力する。
ペリフェラルインターフェイス224は、ランプ群20とサウンド・ランプ制御モジュール226との間でランプ信号等(後述のLEDデータ等)の入出力動作を行う際に用いられるインターフェイス回路である。また、ペリフェラルインターフェイス224には、ランプ群20に含まれるLEDドライバにデータ出力を行う際の物理系統(SPIチャンネル)として、3つの物理系統が設けられている。なお、本実施形態では、後述のように、2つの物理系統(物理系統0(SPIチャンネル0)及び物理系統1(SPIチャンネル1))を用いる。
コマンドレジスタ225は、レジスタ群で構成される。コマンドレジスタ225は、サウンド・ランプ制御モジュール226、メインジェネレータ227及びマルチエフェクタ228の機能制御の設定を行う。また、コマンドレジスタ225は、各インターフェイス(LSIインターフェイス221、メモリインターフェイス222、デジタルオーディオインターフェイス223、ペリフェラルインターフェイス224)の動作条件の設定も行う。
なお、コマンドレジスタ225を構成する各レジスタには、IC(Integrated Circuit)が搭載され、メモリ・アクセス制御により動作を安定させたメモリチップにより各レジスタが構成される。このような構成のレジスタを用いた場合、各レジスタが接続された信号バスへの負担が小さくなるので、メモリ・チップ(レジスタ)を増やすことにより、容易に、メモリ・モジュール1枚当りの容量(コマンドレジスタ225の容量)を増加させることができる。
サウンド・ランプ制御モジュール226は、コマンドレジスタ225の設定内容に従い、音声・LED制御回路220内の各構成部(各ブロック)の動作を制御する。サウンド・ランプ制御モジュール226は、図7に示すように、シンプルアクセス制御部226a、シーケンサー部226b、ランプ制御部226c及びペリフェラル制御部226dを有する。
シンプルアクセス制御部226aは、コマンドを一括処理する回路部である。シーケンサー部226bは、ランプ点灯や音声などの自動再生動作を制御するための各種シーケンサー(自動再生機能部)を有する。そして、各シーケンサーは、タイマーやステップ条件(例えば、後述のLEDアニメーションや音声などのシーケンス再生中のステップ処理毎に設定される条件)に従って、各種動作を制御する。
ランプ制御部226cは、後述のLEDデータが設定可能な全チャンネル(8つのチャンネル)において、セットされる輝度値の計算を行い、その算出結果を外部(LEDドライバ)に送信する。また、ペリフェラル制御部226dは、ランプ制御部226cから出力された算出結果のデータをLEDドライバに送信する際の物理的な送信制御を行う。
メインジェネレータ227は、音声信号を生成する回路部である。具体的には、メインジェネレータ227は、サウンド・ランプ制御モジュール226から入力された制御信号に基づいて、CGROM206に記憶されている所定の音声データを取得し、該取得した音声データを所定の音声信号に変換する。また、メインジェネレータ227では、生成された音声信号の増幅処理も行う。
マルチエフェクタ228は、メインジェネレータ227から入力される音声信号とデジタルオーディオインターフェイス223から入力されるオーディオ入力信号とを合成するミキサーと、音声に対して各種音響効果を与えるための各種エフェクターとを有する。そして、マルチエフェクタ228は、ミキサーで合成された音声信号、エフェクターからの出力信号等をデジタルオーディオインターフェイス223を介してスピーカ群10に出力する。
[表示制御回路]
次に、図8を参照しながら、表示制御回路230の内部構成について説明する。図8は、表示制御回路230内部の回路構成、並びに、表示制御回路230とその各種周辺装置及び周辺回路部との接続関係を示すブロック図である。
表示制御回路230は、図8に示すように、メモリコントローラ231と、コマンドメモリ232と、コマンドパーサ233と、動画デコーダ234と、静止画デコーダ235と、SDRAMコントローラ236と、内蔵VRAM237と、第1ディスプレイコントローラ238と、第2ディスプレイコントローラ239と、3D(Dimension)ジオメトリエンジン240と、レンダリングエンジン241とを備える。表示制御回路230内における各部の接続関係、並びに、表示制御回路230とその各種周辺装置及び周辺回路との接続関係は、次の通りである。
表示制御回路230内において、メモリコントローラ231は、コマンドパーサ233、動画デコーダ234及び静止画デコーダ235に接続される。コマンドパーサ233は、メモリコントローラ231以外に、コマンドメモリ232、動画デコーダ234、静止画デコーダ235及び3Dジオメトリエンジン240に接続される。動画デコーダ234は、メモリコントローラ231及びコマンドパーサ233以外に、SDRAMコントローラ236に接続される。静止画デコーダ235は、メモリコントローラ231及びコマンドパーサ233以外に、内蔵VRAM237に接続される。
また、表示制御回路230内において、SDRAMコントローラ236は、動画デコーダ234以外に、内蔵VRAM237、第1ディスプレイコントローラ238及び第2ディスプレイコントローラ239に接続される。内蔵VRAM237は、静止画デコーダ235及びSDRAMコントローラ236以外に、第1ディスプレイコントローラ238、第2ディスプレイコントローラ239及びレンダリングエンジン241に接続される。さらに、3Dジオメトリエンジン240は、コマンドパーサ233以外に、レンダリングエンジン241に接続される。
なお、SDRAM250は、表示制御回路230内のメモリコントローラ231及びSDRAMコントローラ236に接続される。また、CGROM基板204は、表示制御回路230内のメモリコントローラ231に接続される。また、ホスト制御回路210は、表示制御回路230内のメモリコントローラ231及びコマンドメモリ232に接続される。さらに、表示装置13は、表示制御回路230内の第1ディスプレイコントローラ238及び第2ディスプレイコントローラ239に接続される。
次に、表示制御回路230内の各部の構成について説明する。
メモリコントローラ231は、主に、外部の各種メモリ(CGROM基板204及びSDRAM250)と表示制御回路230との間の通信制御を行う。例えば、メモリコントローラ231は、制御対象となる外部のメモリのアドレス指定信号の送受信や、メモリのレディ、ビジー管理等の処理を行い、各種メモリに対して指定したアドレスに格納されたデータ(演出データ、コマンドデータなど)を取得する処理を行う。
コマンドメモリ232は、コマンドリストを格納する内蔵メモリである。なお、コマンドリストは、コマンドメモリ232以外に、SDRAM250、CGROM基板204(CGROM206)に格納することもできる。
コマンドパーサ233は、指定されたメモリ(コマンドメモリ232、SDRAM250又はCGROM206)からコマンドリストを取得する。具体的には、本実施形態では、ホスト制御回路210により表示制御回路230内のシステム制御レジスタ(不図示)に、コマンドリストが配置されたメモリの種別(コマンドメモリ232、SDRAM250又はCGROM206)と、その開始アドレスとが設定される。そして、コマンドパーサ233は、システム制御レジスタ(不図示)に指定されたメモリ内の開始アドレスにアクセスしてコマンドリストを取得する。
また、コマンドパーサ233は、取得したコマンドリストを解析して具体的な制御コードを生成し、該制御コードを動画デコーダ234、静止画デコーダ235、3Dジオメトリエンジン240に出力する。本実施形態では、コマンドパーサ233により出力された制御コードに基づいて、表示制御回路230内の各画像処理モジュールが作動する。
動画デコーダ234は、CGROM基板204又はSDRAM250から取得された動画圧縮データを復号(デコード)する。そして、動画デコーダ234は、復号した動画データをSDRAM250(外付けRAM)に出力する。なお、動画デコーダ234から出力された動画データ(デコード結果)は、SDRAM250内に設けられた後述のムービバッファに格納される。
静止画デコーダ235は、CGROM基板204又はSDRAM250から取得された静止画圧縮データを復号する。そして、静止画デコーダ235は、復号した静止画データを内蔵VRAM237に出力する。なお、静止画デコーダ235から出力された静止画データ(デコード結果)は、内蔵VRAM237内に設けられた後述のスプライトバッファに一時的に格納される。
SDRAMコントローラ236は、後述する描画処理(後述の図111〜図113参照)で説明するように、デコードされた動画データ及び静止画データのRAMへの格納処理や、内蔵VRAM237とCGROM基板204又はSDRAM250との間における画像データの転送処理などの動作を制御するコントローラである。
内蔵VRAM237は、表示制御回路230による後述の描画処理(後述の図111〜図113参照)において、デコード処理やレンダリング処理などの各種処理を実行する際のワークRAMとして動作する。また、後述の描画処理内の各処理過程において行われる、内蔵VRAM237とCGROM基板204又はSDRAM250との間の画像データの転送処理において、各種画像データが内蔵VRAM237に一時的に格納される。
第1ディスプレイコントローラ238及び第2ディスプレイコントローラ239のそれぞれは、レンダリングエンジン241により生成されたレンダリング結果(描画結果)を取得し、該レンダリング結果を表示装置13に出力する。これにより、表示装置13の表示画面に、所定の画像が表示される。なお、本実施形態のパチンコ遊技機1のように、2つのディスプレイコントローラを設けた場合には、一つの表示制御回路230(1チップ)により、2つの画面を表示装置13に設けて各画面を独立して制御することができる。
3Dジオメトリエンジン240は、コマンドパーサ233から入力された制御コードに基づいて、3次元情報を2次元情報に変換する処理(投影変換処理)や、図形の拡大、縮小、回転及び移動等のアフィン変換(図形変換)処理を行う。そして、3Dジオメトリエンジン240は、変換処理の結果をレンダリングエンジン241に出力する。
レンダリングエンジン241は、伸張された静止画データ及び動画データが格納されたテクスチャソース(本実施形態ではSDRAM250)を参照し、該画像データに対してレンダリング(描画)処理を施する。そして、レンダリングエンジン241は、レンダリング結果をレンダリングターゲット(本実施形態では、内蔵VRAM237又はSDRAM250)に書き出す。
なお、本明細書でいう「レンダリング(描画)する」とは、動画の拡大縮小や回転などの指定情報(本実施形態では、3Dジオメトリエンジン240から出力された情報)に従ってデコードされたデータを編集することである。また、ここでいう「レンダリングエンジン」には、例えば、「ラスタライザ」、「ピクセルシェーダ」なども含まれる。それゆえ、レンダリングエンジン241では、ピクセルシェーダと同様に、画像データに対してピクセル単位で、ARGB値(A:透明度(不透明度)を示すアルファ値、R:赤色成分の輝度値、G:緑色成分の輝度値、B:青色成分の輝度値)の演算処理も行われる。
<遊技状態の種別>
次に、メインCPU71で制御及び管理される遊技状態の種別について説明する。
本実施形態において、メインCPU71で制御及び管理される遊技状態の種別としては、賞球の期待度が互いに異なる「大当り遊技状態」(特別遊技状態)及び「小当り遊技状態」(特定遊技状態)がある。「大当り遊技状態」は、第1大入賞口53又は第2大入賞口54のシャッタの開放期間(すなわち、1ラウンドの期間)が長い(例えば30sec等)ラウンドゲームが発生する遊技状態であり、遊技者にとって大きな賞球が期待できる遊技状態である。すなわち、「大当り遊技状態」では、大入賞口のシャッタの開放状態及び閉鎖状態の繰り返し態様が遊技者によって有利な状態となる。
一方、「小当り遊技状態」は、「大当り遊技状態」に比べて1ラウンドの期間が短い(例えば1.8sec等)ラウンドゲームが発生する遊技状態であり、遊技者にとって大きな賞球が期待できない遊技状態である。すなわち、「小当り遊技状態」では、大入賞口のシャッタの開放状態及び閉鎖状態の繰り返し態様が遊技者によって不利な状態となる。
また、本実施形態において、メインCPU71で制御及び管理される遊技状態の種別としては、「大当り」の当選確率が互いに異なる「確変遊技状態」(高確率遊技状態)及び「通常遊技状態」(低確率遊技状態)がある。
「確変遊技状態」は、「大当り」の当選確率(本実施形態では1/131)が高い遊技状態である。一方、「通常遊技状態」は、「確変遊技状態」に比べて「大当り」の当選確率(本実施形態では1/392)が低い遊技状態である。
さらに、本実施形態において、メインCPU71で制御及び管理される遊技状態の種別としては、普通図柄の当選確率(普通図柄が「当り」の態様になる確率)が互いに異なる「時短遊技状態」(高入賞遊技状態)及び「非時短遊技状態」(低入賞遊技状態)がある。
本明細書でいう「時短遊技状態」とは、普通図柄の当選確率が高い遊技状態のことである。すなわち、「時短遊技状態」は、第2始動口45に設けられた普通電動役物46(羽根部材)が開放状態になり易い遊技状態(第2始動口入賞が発生し易い遊技状態)であり、遊技者にとって有利な遊技状態である。なお、「時短遊技状態」は、「大当り」が決定された場合、又は、後述する所定の時短回数分の特別図柄の変動表示が実行された場合に終了する。また、時短遊技状態では、該状態中に実行される特別図柄の変動表示を行う時間である変動時間として、通常遊技状態中に選択される変動時間よりも短い変動時間が選択され易くなるように制御されていてもよい。このような制御により、時短遊技状態において通常遊技状態中よりも変動時間の短縮を行い、単位時間当たりの遊技回数を増やすことによって、遊技者に有利な遊技状態を付与してもよい。
一方、「非時短(時短なし)遊技状態」とは、普通図柄の当選確率が「時短遊技状態」に比べて低い遊技状態のことである。それゆえ、「非時短遊技状態」は、普通電動役物46(羽根部材)が開放状態になり難い遊技状態(第2始動口入賞が発生し難い遊技状態)であり、遊技者にとって不利な遊技状態である。
そして、本実施形態では、「大当り遊技状態」及び「小当り遊技状態」以外の上述した遊技状態の各種組合せの遊技状態が設けられる。具体的には、本実施形態では、「確変遊技状態」と「時短遊技状態」とが同時に発生する遊技状態(以下、「高確時短あり」の状態という)、及び、「確変遊技状態」と「非時短遊技状態」とが同時に発生する遊技状態(以下、「高確時短なし」の状態という)が設けられる。なお、「高確時短なし」の状態では、遊技状態が「確変遊技状態」であるか否かを遊技者が判別することが難しいので、ここでは、このような遊技状態を「潜確遊技状態」ともいう。また、本実施形態では、「通常遊技状態」と「非時短遊技状態」とが同時に発生する遊技状態(以下、「低確時短なし」の状態という)、及び、「通常遊技状態」と「時短遊技状態」とが同時に発生するような遊技状態(以下、「低確時短あり」の状態という)も設けられる。
<メインROMに記憶されているデータテーブルの構成>
次に、図9〜図18を参照しながら、主制御回路70のメインROM72に記憶される各種データテーブルの構成について説明する。
[大当り乱数判定テーブル(第1始動口入賞時)]
まず、図9を参照して、大当り乱数判定テーブル(第1始動口入賞時)について説明する。大当り乱数判定テーブル(第1始動口入賞時)は、第1始動口44に遊技球が入球(入賞)した際に取得される大当り判定用乱数値に基づいて「大当り」、「小当り」及び「ハズレ」のいずれかを抽選により決定する際に参照されるテーブルである。
なお、大当り判定用乱数値は、始動口入賞を契機に行われる抽選結果を判定するための乱数値であり、より具体的には、特別図柄(第1特別図柄及び第2特別図柄)の抽選結果を示す乱数値である。また、本実施形態では、大当り判定用乱数値(特別図柄の抽選用乱数値)は、0〜65535(65536種類)の中から選ばれる。
本実施形態では、第1始動口44に遊技球が入賞した場合、「大当り」、「小当り」及び「ハズレ」のいずれかが抽選により決定される。それゆえ、大当り乱数判定テーブル(第1始動口入賞時)には、図9に示すように、確変フラグの値(「0(=オフ)」又は「1(=オン)」)毎に、「大当り」、「小当り」及び「ハズレ」のそれそれの当選が決定される大当り判定用乱数値の範囲と、それに対応する判定値データ(「大当り判定値データ」、「小当り判定値データ」及び「ハズレ判定値データ」のいずれか)との関係が規定される。なお、確変フラグは、メインRAM73に格納された管理フラグの一つであり、遊技状態が「確変遊技状態」であるか否かを管理するためのフラグである。遊技状態が「確変遊技状態」である場合には、確定フラグは「1」となる。
本実施形態では、図9に示すように、第1始動口44入賞時に、確変フラグが「0」であり、大当り判定用乱数値が「777」〜「943」のいずれかである場合には、「大当り」が当選し、「大当り判定値データ」が決定される。すなわち、この場合における「大当り」の当選確率(図9中の「選択率」)は、167/65536となる。
また、第1始動口44入賞時に、確変フラグが「0」であり、大当り判定用乱数値が「1」〜「300」のいずれかである場合には、「小当り」が当選し、「小当り判定値データ」が決定される。すなわち、この場合における「小当り」の当選確率は、300/65536となる。
さらに、第1始動口44入賞時に、確変フラグが「0」であり、大当り判定用乱数値が「1」〜「300」及び「777」〜「943」のいずれでもない場合には、「ハズレ」が当選し、「ハズレ判定値データ」が決定される。
一方、第1始動口44入賞時に、確変フラグが「1」であり、大当り判定用乱数値が「777」〜「1277」のいずれかである場合には、図9に示すように、「大当り」が当選し、「大当り判定値データ」が決定される。すなわち、この場合における「大当り」の当選確率(図9中の「選択率」)は、500/65536となり、確変フラグが「0」である場合のそれより高くなる。
また、第1始動口44入賞時に、確変フラグが「1」であり、大当り判定用乱数値が「1」〜「300」のいずれかである場合には、「小当り」が当選し、「小当り判定値データ」が決定される。すなわち、この場合における「小当り」の当選確率は、300/65536となり、確変フラグが「0」である場合のそれと同じになる。
さらに、第1始動口44入賞時に、確変フラグが「1」であり、大当り判定用乱数値が「1」〜「300」及び「777」〜「1277」のいずれでもない場合には、「ハズレ」が当選し、「ハズレ判定値データ」が決定される。
上述のように、本実施形態では、第1始動口44に遊技球が入賞した場合には、入賞時の遊技状態が「確変遊技状態」であるか否かによって、選択率(大当り確率)が変動する。具体的には、遊技状態が「確変遊技状態」である時に第1始動口44に遊技球が入賞した場合の大当り確率は、遊技状態が「確変遊技状態」でない時のそれの約3倍程度高くなる。
[大当り乱数判定テーブル(第2始動口入賞時)]
次に、図10を参照して、大当り乱数判定テーブル(第2始動口入賞時)について説明する。大当り乱数判定テーブル(第2始動口入賞時)は、第2始動口45に遊技球が入球(入賞)した際に取得される大当り判定用乱数値に基づいて「大当り」か否かの抽選を行う場合に参照されるテーブルである。
本実施形態では、第2始動口45に遊技球が入賞した場合、「大当り」及び「ハズレ」のいずれかが抽選により決定される。なお、第2始動口45に遊技球が入賞した場合には、「小当り」は当選しない。それゆえ、大当り乱数判定テーブル(第2始動口入賞時)には、図10に示すように、確変フラグの値(「0(=オフ)」又は「1(=オン)」)毎に、「大当り」及び「ハズレ」のそれぞれの当選が決定される大当り判定用乱数値の範囲と、それに対応する判定値データ(「大当り判定値データ」及び「ハズレ判定値データ」のいずれか)との関係が規定される。
本実施形態では、図10に示すように、第2始動口45入賞時に、確変フラグが「0」であり、大当り判定用乱数値が「777」〜「943」のいずれかである場合には、「大当り」が当選し、「大当り判定値データ」が決定される。すなわち、この場合における「大当り」の当選確率(図10中の「選択率」)は、167/65536となる。
また、第2始動口45入賞時に、確変フラグが「0」であり、大当り判定用乱数値が「777」〜「943」のいずれでもない場合には、「ハズレ」が当選し、「ハズレ判定値データ」が決定される。
一方、第2始動口45入賞時に、確変フラグが「1」であり、大当り判定用乱数値が「777」〜「1277」のいずれかである場合には、図10に示すように、「大当り」が当選し、「大当り判定値データ」が決定される。すなわち、この場合における「大当り」の当選確率(大当り確率)は、500/65536となり、確変フラグが「0」である場合のそれより高くなる。
また、第2始動口45入賞時に、確変フラグが「1」であり、大当り判定用乱数値が「777」〜「1277」のいずれでもない場合には、「ハズレ」となり、「ハズレ判定値データ」が決定される。
上述のように、本実施形態では、第2始動口45に遊技球が入賞した場合にもまた、入賞時の遊技状態が「確変遊技状態」であるか否かによって、選択率(大当り確率)が変動する。具体的には、第1始動口44入賞時と同様に、第2始動口45入賞時においても、遊技状態が「確変遊技状態」である時に第2始動口45に遊技球が入賞した場合の大当り確率は、遊技状態が「確変遊技状態」でない時のそれの約3倍程度高くなる。
[図柄判定テーブル(第1始動口入賞時)]
次に、図11を参照して、図柄判定テーブル(第1始動口入賞時)について説明する。
本実施形態では、第1始動口44に遊技球が入賞した際に行われる大当り判定用乱数値に基づく抽選の当選種別(「大当り」、「小当り」又は「ハズレ」)と、第1始動口入賞時に取得される図柄乱数値(図柄決定用乱数値)とに基づいて、特別図柄が選択される。図柄判定テーブル(第1始動口入賞時)は、その特別図柄を選択する際に参照されるテーブルである。なお、図柄乱数値は、特別図柄を決定するための乱数値であり、大当り判定用乱数値に基づく抽選の当選種別に関係なく、0〜99(100種類)の中から選ばれる。
図柄判定テーブル(第1始動口入賞時)には、図11に示すように、大当り判定用乱数値に基づく抽選の当選種別を示す判定値データ毎に、特別図柄を指定するための図柄指定コマンド(「zA1」〜「zA3」)と、該図柄指定コマンドが選択される図柄乱数値との関係が規定される。
なお、大当り判定用乱数値に基づく抽選の当選種別が「小当り」(小当り判定値データ)である場合には、選択される図柄指定コマンドは1種類(zA2)であり、必ずその図柄指定コマンド(zA2)が決定される。また、大当り判定用乱数値に基づく抽選の当選種別が「ハズレ」(ハズレ判定値データ)である場合にも、選択される図柄指定コマンドは1種類(zA3)であり、必ずその図柄指定コマンド(zA3)が決定される。
一方、大当り判定用乱数値に基づく抽選の当選種別が「大当り」(大当り判定値データ)である場合には、図11に示すように、選択される特別図柄の種別は複数あり、「大当り」時の図柄指定コマンド(図11中の大当り時選択図柄コマンド)も複数種(「z0」〜「z4」)用意されている。そして、「大当り」時には、取得される図柄乱数値に応じて、決定される大当り時選択図柄コマンドも変化する。例えば、「大当り」時に取得された図柄乱数値が「40」〜「59」のいずれかである場合には、大当り時選択図柄コマンド「z2」が選択され、その選択率は、20/100となる。
[図柄判定テーブル(第2始動口入賞時)]
次に、図12を参照して、図柄判定テーブル(第2始動口入賞時)について説明する。
本実施形態では、第2始動口45に遊技球が入賞した際に行われる大当り判定用乱数値に基づく抽選の当選種別(「大当り」又は「ハズレ」)と、第2始動口入賞時に取得される図柄乱数値(図柄決定用乱数値)とに基づいて、特別図柄が選択される。図柄判定テーブル(第2始動口入賞時)は、その特別図柄を選択する際に参照されるテーブルである。
図柄判定テーブル(第2始動口入賞時)には、図12に示すように、大当り判定用乱数値に基づく抽選の当選種別を示す判定値データ毎に、特別図柄を指定するための図柄指定コマンド(「zA1」及び「zA3」)と、該図柄指定コマンドが選択される図柄乱数値との関係が規定される。
なお、大当り判定用乱数値に基づく抽選の当選種別が「ハズレ」(ハズレ判定値データ)である場合にも、選択される図柄指定コマンドは1種類(zA3)であり、必ずその図柄指定コマンド(zA3)が決定される。
一方、大当り判定用乱数値に基づく抽選の当選種別が「大当り」(大当り判定値データ)である場合には、図12に示すように、選択される特別図柄の種別は複数あり、「大当り」時の図柄指定コマンド(図12中の大当り時選択図柄コマンド)も複数種(「z0」及び「z4」)用意されている。そして、「大当り」時には、取得される図柄乱数値に応じて、決定される大当り時選択図柄コマンドも変化する。例えば、「大当り」時に取得された図柄乱数値が「29」〜「99」のいずれかである場合には、大当り時選択図柄コマンド「z4」が選択され、その選択率は、80/100となる。
[大当り種類決定テーブル]
次に、図13〜図16を参照して、大当り種類決定テーブルについて説明する。本実施形態では、図柄判定テーブル(図11及び図12参照)を参照して大当り時選択図柄コマンド(「z0」〜「z4」のいずれか)が決定されると、該決定された大当り時選択図柄コマンドに基づいて、「大当り」の種類(大当り遊技の内容)を決定する。大当り種類決定テーブルは、大当り時選択図柄コマンドに基づいて、「大当り」の種類(大当り遊技の内容)を決定する際に参照されるテーブルである。
また、本実施形態では、「大当り」当選時の遊技状態毎に大当り種類決定テーブルを設ける。図13は、遊技状態が「低確時短なし」であるときに「大当り」に当選した場合に参照される大当り種類決定テーブル(その1)であり、図14は、遊技状態が「低確時短あり」であるときに「大当り」に当選した場合に参照される大当り種類決定テーブル(その2)である。また、図15は、遊技状態が「高確時短なし」であるときに「大当り」に当選した場合に参照される大当り種類決定テーブル(その3)であり、図16は、遊技状態が「高確時短あり」であるときに「大当り」に当選した場合に参照される大当り種類決定テーブル(その4)である。
各大当り種類決定テーブルには、大当り時選択図柄コマンド(「z0」〜「z4」)と、「大当り」の種類を決定する各種パラメータとの関係が規定される。「大当り」の種類(大当り遊技の内容)を決定する各種パラメータとしては、時短フラグの値、時短回数、確変フラグの値及び大当り遊技におけるラウンド数が規定される。
例えば、「高確時短あり」の状態で「大当り」に当選し、且つ、大当り時選択図柄コマンドとして「z1」が決定された場合には、図16に示すように、「大当り」の種類(大当り遊技の内容)を決定する各種パラメータとして、時短フラグ「1」、時短回数「100」、確変フラグ「0」、ラウンド数「10」がセットされる。
なお、各大当り種類決定テーブルに規定されている「ラウンド数」は、大当り遊技において、大入賞口の開放時間が比較的長くなるラウンドの数である。また、「時短フラグ」は、メインRAM73に格納された管理フラグの一つであり、遊技状態が「時短遊技状態」であるか否かを管理するためのフラグである。遊技状態が「時短遊技状態」である場合には、時短フラグは「1(オン)」となる。また、「時短回数」は、「時短遊技状態」において与えられる特別図柄の変動表示の回数である。
[入賞時演出情報決定テーブル]
次に、図17を参照して、入賞時演出情報決定テーブルについて説明する。
本実施形態では、主制御回路70(メインCPU71)は、入賞時(始動口入賞時)に決定された当選種別(「大当り」、「小当り」又は「ハズレ」)と、図柄指定コマンド又は大当り時選択図柄コマンドとに基づいて、副制御回路200が演出内容を決定する際に使用する情報を決定する。例えば、副制御回路200において、特別図柄の保留球を示す保留用図柄の色変化演出に関する内容、先読み演出に関する内容等を決定する際に使用される情報が決定される。入賞時演出情報決定テーブルは、入賞時(始動口入賞時)に主制御回路70で取得された情報に基づいて、副制御回路200で実行される演出内容の概要を決定する際に参照されるテーブルである。
入賞時演出情報決定テーブルには、入賞時(始動口入賞時)に決定される各種情報の組合せと、副制御回路200で実行される演出内容の概要を示す「入賞時演出情報1」及び「入賞時演出情報2」との関係が規定される。なお、本実施形態では、入賞時(始動口入賞時)に決定される各種情報として、始動口の種別、判定値データの種別、大当り時選択図柄コマンドの種別及び図柄指定コマンドの種別が、入賞時演出情報決定テーブルに規定される。
入賞時演出情報決定テーブルに規定されている入賞時演出情報1(「1A」〜「1D」)は、副制御回路200において、主に、特別図柄の保留球を示す保留用図柄の色変化演出に関する内容を決定する際に用いられる演出情報である。副制御回路200が入賞時演出情報決定テーブルに基づいて決定された入賞時演出情報1を受信すると、副制御回路200は、該入賞時演出情報1の分類に含まれる保留用図柄の色変化演出に関する複数種の演出パターンから一つの演出パターンを選択する。
また、入賞時演出情報決定テーブルに規定されている入賞時演出情報2(「2A」〜「2D」)は、副制御回路200において、主に、特別図柄の保留球に基づく先読み演出(先読み連続演出)に関する内容を決定する際に用いられる演出情報である。副制御回路200が入賞時演出情報決定テーブルに基づいて決定された入賞時演出情報2を受信すると、副制御回路200は、該入賞時演出情報2の分類に含まれる先読み演出の複数種の演出パターンから一つの演出パターンを選択する。
本実施形態の入賞時演出情報決定テーブルを参照した場合、例えば、第1始動口入賞時に「大当り」が当選したときには、大当り選択図柄コマンドの種別に関係なく、入賞時演出情報1として「1A」が決定され、入賞時演出情報2として「2A」が決定される。
[変動演出パターン決定テーブル]
次に、図18を参照して、変動演出パターン決定テーブルについて説明する。
本実施形態では、主制御回路70(メインCPU71)は、特別図柄の変動表示開始時に、当選種別(「大当り」、「小当り」又は「ハズレ」)、図柄指定コマンド、大当り時選択図柄コマンド、変動時間等の情報に基づいて、特別図柄の変動演出パターンを決定する。変動演出パターン決定テーブルは、この特別図柄の変動演出パターンを決定する際に参照されるテーブルである。
なお、変動演出パターン決定テーブルに基づいて決定された変動演出パターン(後述の特別図柄演出開始コマンドに含まれる情報)は、主制御回路70から副制御回路200(ホスト制御回路210)に送信される。そして、副制御回路200は、変動演出パターンの情報を受信すると、該受信した変動演出パターンや遊技状態などの情報に基づいて、演出の種類を決定する。
変動演出パターン決定テーブルには、図18に示すように、入賞時(始動口入賞時)に決定される図柄指定コマンド、大当り選択図柄コマンド及び特別図柄の変動時間の組合せと、特別図柄の変動表示中に副制御回路200で実行される演出の種類(変動演出パターン)との関係が規定される。
本実施形態では、変動演出パターンは、2桁の数文字で表され、図18中の変動演出パターン欄に記載の「上位」(1桁目)のパラメータと「下位」(2桁目)のパラメータとの組合せで表される。例えば、入賞時(始動口入賞時)に決定される図柄指定コマンドが「zA1」であり、大当り選択図柄コマンドが「z0」であり、特別図柄の変動時間が「15000msec」である場合の変動演出パラメータは「C1」(上位の「C」と下位「1」との組合せ)となる。
なお、本実施形態では、変動演出パラメータの情報は、後述の特別図柄演出開始コマンドに含まれる。この際、変動演出パターン欄に規定されている「上位」のパラメータと、「下位」のパラメータとは、互いに異なるパラメータ領域に格納される。それゆえ、変動演出パターン決定テーブルでは、変動演出パターンの「上位」のパラメータと「下位」のパラメータとを別個に規定している。
<サブメインROMに記憶されているデータテーブルの構成>
次に、副制御回路200のサブメインROM205に記憶される各種データテーブルの構成について、図19〜図21を参照して説明する。
[変動演出テーブル]
まず、図19を参照して、変動演出テーブルについて説明する。
本実施形態のパチンコ遊技機1では、上述のように、副制御回路200(ホスト制御回路210)の制御により、特別図柄の変動表示中に様々な演出が実行される。この際に行われる演出の内容(演出パターン)は、特別図柄の変動表示開始時に、主制御回路70から副制御回路200に送信される後述の特別図柄演出開始コマンドに含まれる特別図柄の変動演出パターンの情報などに基づいて決定される。変動演出テーブルは、この演出内容(演出パターン)を変動演出パターンや遊技状態などの情報に基づいて決定する際に参照される。
変動演出テーブルには、図19に示すように、入賞時(始動口入賞時)に決定される各種情報(変動演出パターンの情報を含む)の組合せと、抽選により決定される演出パターン(「EN00」〜「EN44」)及び演出内容と、各演出パターンを選択(決定)するための乱数値及び選択率(当選確率)との対応関係が規定される。なお、本実施形態では、入賞時(始動口入賞時)に決定される各種情報として、特別図柄の変動演出パターンの種別(「A0」〜「A4」、「B1」〜「B3」及び「C1」〜「CF」)、特別図柄の変動時間、当選種別(「大当り」、「小当り」又は「ハズレ」)、図柄指定コマンド及び大当り時選択図柄コマンドが、変動演出テーブルに規定される。
本実施形態では、変動演出テーブルに規定されている特別図柄の変動時間は対応する演出パターンの演出時間とほぼ同じであるとする。また、変動演出テーブルに規定されている乱数値は、後述の図104に示すコマンド解析処理中のS339の処理(サブ抽選処理)で取得される乱数値であり、「0」〜「999」(1000種類)のいずれかである。
本実施形態の変動演出テーブルを参照して演出パターンを決定する際、例えば、特別図柄の変動表示開始時に決定された特別図柄の変動パターンが「C1」であり、且つ、演出パターンを選択する際に取得された乱数値が「0」〜「499」のいずれかの値である場合には、演出パターンとして「EN15」が選択される。この場合には、特別図柄の変動表示期間(15000msec)に、「ノーマルリーチ演出A」と称する演出が行われる。そして、「ノーマルリーチ演出A」の終了とともに、表示装置13の表示領域13aに「大当り」態様の表示が行われ、特別図柄が変動停止する。
なお、本実施形態において、変動演出テーブルを参照した抽選により、「スペシャル演出E」〜「スペシャル演出H」と称する演出のいずれかが決定された場合、後述するように、第1剣役物31、第2剣役物32及びシャッタ役物33を用いた役物演出が実行される。
[保留演出テーブル]
次に、図20を参照して、保留演出テーブルについて説明する。
本実施形態のパチンコ遊技機1では、副制御回路200(ホスト制御回路210)の制御により、特別図柄の保留球を示す保留用図柄の色変化に関する様々な演出が実行される。この際に行われる保留用図柄の色変化演出の内容(演出パターン)は、特別図柄の変動表示開始時に、主制御回路70から副制御回路200に送信される後述の保留加算コマンドに含まれる入賞時演出情報1(「1A」〜「1D」)などに基づいて決定される。保留演出テーブルは、この保留用図柄の色変化演出の内容(演出パターン)を入賞時演出情報1などの情報に基づいて決定する際に参照される。
保留演出テーブルには、図20に示すように、入賞時(始動口入賞時)に決定される各種情報(入賞時演出情報1を含む)の組合せと、抽選により決定される保留用図柄の色変化演出の演出パターン(「HE00」〜「HE19」)及び演出内容と、各演出パターンを選択(決定)するための乱数値及び選択率(当選確率)との対応関係が規定される。なお、本実施形態では、入賞時(始動口入賞時)に決定される各種情報として、入賞時演出情報1(「1A」〜「1D」)、当選種別(「大当り」、「小当り」又は「ハズレ」)、図柄指定コマンド及び大当り時選択図柄コマンドが、保留演出テーブルに規定される。また、保留演出テーブルに規定されている乱数値は、後述の図104に示すコマンド解析処理中のS339の処理(サブ抽選処理)で取得される乱数値であり、「0」〜「999」(1000種類)のいずれかである。
本実施形態の保留演出テーブルを参照して保留用図柄の色変化演出の演出パターンを決定する際、例えば、特別図柄の変動表示開始時に決定された入賞時演出情報1が「1A」であり、大当り時選択図柄コマンドが「z0」であり、且つ、演出パターンを選択する際に取得された乱数値が「0」〜「499」のいずれかの値である場合には、保留用図柄の色変化演出の演出パターンとして「HE00」が選択される。この場合には、保留用図柄の色変化演出として、「保留演出A」と称する演出が行われる。
[先読み演出テーブル]
次に、図21を参照して、先読み演出テーブルについて説明する。
本実施形態のパチンコ遊技機1では、特別図柄の可変表示が保留されている場合、副制御回路200(ホスト制御回路210)は、該保留されている特別図柄の可変表示の内容(保留球の内容)に応じて所定の先読み演出を行う。この際に行われる先読み演出の内容(演出パターン)は、特別図柄の変動表示開始時に、主制御回路70から副制御回路200に送信される後述の保留加算コマンドに含まれる入賞時演出情報2(「2A」〜「2D」)などに基づいて決定される。先読み演出テーブルは、この先読み演出の内容(演出パターン)を入賞時演出情報2などの情報に基づいて決定する際に参照される。
先読み演出テーブルには、図21に示すように、入賞時(始動口入賞時)に決定される各種情報(入賞時演出情報2を含む)の組合せと、抽選により決定される先読み演出の演出パターン(「SE00」〜「SE19」)及び演出内容と、各演出パターンを選択(決定)するための乱数値及び選択率(当選確率)との対応関係が規定される。なお、本実施形態では、入賞時(始動口入賞時)に決定される各種情報として、入賞時演出情報2(「2A」〜「2D」)、当選種別(「大当り」、「小当り」又は「ハズレ」)、図柄指定コマンド及び大当り時選択図柄コマンドが、先読み演出テーブルに規定される。また、先読み演出テーブルに規定されている乱数値は、後述の図104に示すコマンド解析処理中のS339の処理(サブ抽選処理)で取得される乱数値であり、「0」〜「999」(1000種類)のいずれかである。
本実施形態の先読み演出テーブルを参照して先読み演出の演出パターンを決定する際、例えば、特別図柄の変動表示開始時に決定された入賞時演出情報2が「2A」であり、大当り時選択図柄コマンドが「z0」であり、且つ、演出パターンを選択する際に取得された乱数値が「0」〜「499」のいずれかの値である場合には、先読み演出の演出パターンとして「SE00」が選択される。この場合には、先読み演出として、「先読み演出A」と称する演出が行われる。
<各種コマンドの構成>
ここで、主制御回路70から副制御回路200に送信される各種コマンドの構成について説明する。なお、本実施形態では、主制御回路70は、遊技の進行に関する情報を含むコマンド(遊技情報)を生成して、該コマンドデータを副制御回路200に送信する手段(コマンド送信手段、遊技情報送信手段)を兼ねる。
[基本構成]
まず、図22を参照して、コマンドの基本構成を説明する。なお、図22は、コマンドデータの基本構成(基本フォーマット)を示す図である。
本実施形態において、主制御回路70から副制御回路200に送信されるコマンドは、コマンド種別の情報が格納されたコマンド種別部と、遊技及び演出に関する各種情報が格納されたパラメータフィールド部とで構成される。本実施形態では、副制御回路200において実行される後述のコマンド解析処理により、パラメータフィールド部の情報が解析され、遊技及び演出に関する各種情報が取得される。
コマンド種別部は、コマンドの先頭部に設けられ、8ビット(1バイト:固定長)で構成される。一方、パラメータフィールド部には、ビット単位で遊技及び演出に関する情報が規定されており、パラメータフィールド部のビット長(長さ)は、コマンド種別に応じて変化する。
なお、本実施形態では、コマンドの送受信動作は、8ビット単位で繰り返し行われるので、パラメータフィールド部も8ビット単位で管理され、ここでは、この8ビット単位の領域を「パラメータ」と称する。また、パラメータフィールド部内に配置されているパラメータの名称を、コマンドの先頭側(コマンド種別部側)から、「第1パラメータ」、「第2パラメータ」、「第3パラメータ」、…、と称する。
以下に、コマンドの一例として、デモ表示コマンド、特別図柄演出開始コマンド、電断復帰コマンド及び保留加算コマンドの構成、並びに、これらのコマンドに含まれる各種情報の内容を図面を参照しながら具体的に説明する。
[デモ表示コマンド]
まず、図23を参照しながら、デモ表示コマンドの構成及び該コマンドに含まれる各種情報の内容について説明する。なお、図23は、デモ表示コマンドのビット単位の構成及び各ビットに格納された各種情報の内容を示す図である。
デモ表示コマンドは、コマンド種別部と、1つのパラメータ(第1パラメータ)からなるパラメータフィールド部とで構成される。すなわち、デモ表示コマンド全体のバイト数(コマンド長さ)は2バイト(16ビット)となり、パラメータフィールド部のバイト数は1バイト(8ビット)となる。
デモ表示コマンドのコマンド種別部には、デモ表示コマンドの種別を示す値「80H」が格納される。
デモ表示コマンドの第1パラメータのビット0(b0)〜ビット2(b2)には、遊技状態に対応する「状態番号」(0〜7のいずれか)が格納される。例えば、確変フラグの値が「0」であり、時短フラグの値が「0」であれば、「状態番号」として、「0」〜「7」のうち「0」〜「2」のいずれかの値がビット0(b0)〜ビット2(b2)に設定される。第1パラメータのビット4(b4)及びビット5(b5)には、時短フラグの値(「0」又は「1」)及び確変フラグの値(「0」又は「1」)がそれぞれ格納される。また、第1パラメータのビット3(b3)、ビット6(b6)及びビット7(b7)のそれぞれには、常時、データ「0」が格納される。なお、以下では、常時、データ「0」が格納されるビットを「常時0領域」ともいう。
副制御回路200において、上記構成のデモ表示コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータからデモ画面表示時の遊技状態情報(ゲームステータス)が取得される。
[特別図柄演出開始コマンド]
次に、図24を参照しながら、特別図柄演出開始コマンドの構成及び該コマンドに含まれる各種情報の内容について説明する。なお、図24は、特別図柄演出開始コマンドのビット単位の構成及び各ビットに格納された各種情報の内容を示す図である。
特別図柄演出開始コマンドは、コマンド種別部と、5つのパラメータ(第1パラメータ〜第5パラメータ)からなるパラメータフィールド部とで構成される。すなわち、特別図柄演出開始コマンド全体のバイト数は6バイト(48ビット)となり、パラメータフィールド部のバイト数は5バイト(40ビット)となる。
特別図柄演出開始コマンドのコマンド種別部には、特別図柄演出開始コマンドの種別を示す値「81H」が格納される。
特別図柄演出開始コマンドの第1パラメータのビット0〜ビット2には、遊技状態に対応する「状態番号」(0〜7のいずれか)が格納される。第1パラメータのビット4及びビット5には、時短フラグの値(「0」又は「1」)及び確変フラグの値(「0」又は「1」)がそれぞれ格納される。
第1パラメータのビット6には、転落抽選の当選/非当選の情報(「転落抽選当否情報」)が格納される。なお、転落抽選に非当選の場合には、「転落抽選当否情報」として「0」が第1パラメータのビット6に格納され、転落抽選に当選の場合には、「転落抽選当否情報」として「1」が第1パラメータのビット6に格納される。また、第1パラメータのビット3及びビット7は、常時0領域となる。
特別図柄演出開始コマンドの第2パラメータのビット0〜ビット6には、上記図柄判定テーブル(図11及び図12参照)を用いた抽選により決定される図柄指定コマンド(「zA1」〜「zA3」)に対応する値が格納される。なお、第2パラメータのビット7は、常時0領域となる。
特別図柄演出開始コマンドの第3パラメータのビット0〜ビット3には、上記変動演出パターン決定テーブル(図18参照)を用いた抽選により決定される変動演出パターンの「上位」の情報(「A」〜「C」)に対応する値が格納される。なお、第3パラメータのビット4〜ビット7は、「常時0領域」となる。
特別図柄演出開始コマンドの第4パラメータのビット0〜ビット3には、上記変動演出パターン決定テーブル(図18参照)を用いた抽選により決定される変動演出パターンの「下位」の情報(「0」〜「9」及び「A」〜「F」)に対応する値が格納される。なお、第4パラメータのビット4〜ビット7は、「常時0領域」となる。
また、特別図柄演出開始コマンドの第5パラメータのビット0〜ビット6には、残り時短変動回数に対応する値が格納される。なお、第5パラメータのビット7は、常時0領域となる。
副制御回路200において、上記構成の特別図柄演出開始コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから特別図柄演出開始時の遊技状態情報(ゲームステータス)が取得され、第2パラメータから特別図柄の停止図柄指定情報が取得され、第3パラメータ及び第4パラメータから変動演出パターン番号の指定情報が取得され、第5パラメータから残り時短変動回数の指定情報が取得される。
[電断復帰コマンド]
次に、図25及び図26を参照しながら、電断復帰コマンドの構成及び該コマンドに含まれる各種情報の内容について説明する。なお、本実施形態では、電断復帰コマンドは、2つのコマンド(第1電断復帰コマンド及び第2電断復帰コマンド)のセットで構成される。そして、図25は、第1電断復帰コマンドのビット単位の構成及び各ビットに格納された各種情報の内容を示す図である。また、図26は、第2電断復帰コマンドのビット単位の構成及び各ビットに格納された各種情報の内容を示す図である。
(1)第1電断復帰コマンド
第1電断復帰コマンドは、図25に示すように、コマンド種別部と、3つのパラメータ(第1パラメータ〜第3パラメータ)からなるパラメータフィールド部とで構成される。すなわち、第1電断復帰コマンド全体のバイト数は4バイト(32ビット)となり、パラメータフィールド部のバイト数は3バイト(24ビット)となる。
第1電断復帰コマンドのコマンド種別部には、第1電断復帰コマンドの種別を示す値「D1H」が格納される。
第1電断復帰コマンドの第1パラメータのビット0〜ビット2には、遊技状態に対応する「状態番号」(0〜7のいずれか)が格納される。第1パラメータのビット4及びビット5には、時短フラグの値(「0」又は「1」)及び確変フラグの値(「0」又は「1」)がそれぞれ格納される。第1パラメータのビット6には、「転落抽選当否情報」が格納される。なお、第1パラメータのビット3及びビット7は、それぞれ常時0領域となる。
第1電断復帰コマンドの第2パラメータのビット0〜ビット5には、特別図柄の停止図柄指定情報(「特別停止図柄指定情報」)が格納される。また、第2パラメータのビット6には、電断検知時における第1特別図柄の停止図柄の選択状態(「第1特別停止図柄選択状態」)に対応する値(「0」又は「1」)が格納される。なお、直近の特別図柄の変動表示(電断検知時及び電断検知以前において実行された変動表示のうち、最新の実行された変動表示)において、第1特別図柄の停止図柄が選択されていれば、「第1特別停止図柄選択状態」の値は「1」となり、第1特別図柄の停止図柄が選択されていなければ、「第1特別図柄選択状態」の値は「0」となる。また、第2パラメータのビット7は、常時0領域となる。
第1電断復帰コマンドの第3パラメータのビット0〜ビット5には、「特別停止図柄指定情報」が格納される。また、第3パラメータのビット6には、電断検知時における第2特別図柄の停止図柄の選択状態(「第2特別停止図柄選択状態」)に対応する値(「0」又は「1」)が格納される。なお、直近の特別図柄の変動表示(電断検知時及び電断検知以前において実行された変動表示のうち、最新の実行された変動表示)において、第2特別図柄の停止図柄が選択されていれば、「第2特別停止図柄選択状態」の値は「1」となり、第2特別図柄の停止図柄が選択されていなければ、「第2特別図柄選択状態」の値は「0」となる。また、第3パラメータのビット7は、常時0領域となる。
副制御回路200において、上記構成の第1電断復帰コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから電断復帰時における遊技状態情報(ゲームステータス)が取得され、第2パラメータから電断復帰時における第1特別図柄の停止図柄の情報が取得され、第3パラメータから電断復帰時における第2特別図柄の停止図柄の情報が取得される。
(2)第2電断復帰コマンド
第2電断復帰コマンドは、図26に示すように、コマンド種別部と、3つのパラメータ(第1パラメータ〜第3パラメータ)からなるパラメータフィールド部とで構成される。すなわち、第2電断復帰コマンド全体のバイト数は4バイト(32ビット)となり、パラメータフィールド部のバイト数は3バイト(24ビット)となる。
第2電断復帰コマンドのコマンド種別部には、第2電断復帰コマンドの種別を示す値「D2H」が格納される。
第2電断復帰コマンドの第1パラメータのビット0〜ビット2には、第2特別図柄の可変表示の保留個数に対応する値が格納される。第1パラメータのビット4〜ビット6には、第1特別図柄の可変表示の保留個数に対応する値が格納される。また、第1パラメータのビット3及びビット7は、それぞれ常時0領域となる。
なお、第2電断復帰コマンドの第1パラメータのビット0〜ビット2又はビット4〜ビット6には、保留個数が0個の場合には「000」が格納され、保留個数が1個の場合には「001」が格納され、保留個数が2個の場合には「010」が格納され、保留個数が3個の場合には「011」が格納され、保留個数が4個の場合には「100」が格納される。
第2電断復帰コマンドの第2パラメータのビット0〜ビット2には、「内部制御状態番号」が格納される。また、第2パラメータのビット3〜ビット7は、常時0領域となる。
なお、第2電断復帰コマンドの第2パラメータのビット0〜ビット2には、内部制御状態がデモ画面表示状態である場合には「000」が「内部制御状態番号」として格納され、内部制御状態が特別図柄変動状態(特別図柄の変動中状態)である場合には「001」が「内部制御状態番号」として格納され、内部制御状態が特別図柄確定状態である場合には「010」が「内部制御状態番号」として格納され、内部制御状態が特別図柄当り開始状態である場合には「011」が「内部制御状態番号」として格納される。また、第2電断復帰コマンドの第2パラメータのビット0〜ビット2には、内部制御状態が大入賞口開放状態である場合には「100」が「内部制御状態番号」として格納され、内部制御状態がラウンド間インターバル状態である場合には「101」が「内部制御状態番号」として格納され、内部制御状態が特別図柄当たり終了状態である場合には「110」が「内部制御状態番号」として格納される。
また、第2電断復帰コマンドの第3パラメータのビット0〜ビット6には、「残り時短状態変動回数」(「0」〜「99」)が格納される。また、第3パラメータのビット7は、常時0領域となる。
副制御回路200において、上記構成の第2電断復帰コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから電断復帰時における特別図柄の可変表示の保留個数の情報が取得され、第2パラメータから電断復帰時における内部状態の情報が取得され、第3パラメータから電断復帰時における残り時短変動回数の情報が取得される。
[保留加算コマンド]
次に、図27を参照しながら、保留加算コマンドの構成及び該コマンドに含まれる各種情報の内容について説明する。なお、図27は、保留加算コマンドのビット単位の構成及び各ビットに格納された各種情報の内容を示す図である。
保留加算コマンドは、コマンド種別部と、3つのパラメータ(第1パラメータ〜第3パラメータ)からなるパラメータフィールド部とで構成される。すなわち、保留加算コマンド全体のバイト数は4バイト(32ビット)となり、パラメータフィールド部のバイト数は3バイト(24ビット)となる。
保留加算コマンドのコマンド種別部には、保留加算コマンドの種別を示す値「85H」が格納される。
保留加算コマンドの第1パラメータのビット0〜ビット2には、第2特別図柄の可変表示の保留個数に対応する値が格納される。第1パラメータのビット4〜ビット6には、第1特別図柄の可変表示の保留個数に対応する値が格納される。また、第1パラメータのビット3及びビット7は、それぞれ常時0領域となる。
保留加算コマンドの第2パラメータのビット0〜ビット2には、「大当り時選択図柄情報」が格納される。なお、「大当り時選択図柄情報」は、上記図柄判定テーブル(図11及び図12参照)を用いた抽選により決定される大当り時選択図柄コマンド(「z0」〜「z4」)に対応する情報である。
第2パラメータのビット3には、「低確率時大当り当否情報」が格納される。なお、低確時に「大当り」に当選した場合には、「低確率時大当り当否情報」として「1」がビット3に格納され、低確時に「ハズレ」に当選した場合には、「低確率時大当り当否情報」として「0」がビット3に格納される。また、第2パラメータのビット4には、「高確率時大当り当否情報」が格納される。なお、高確時に「大当り」に当選した場合には、「高確率時大当り当否情報」として「1」がビット4に格納され、高確時に「ハズレ」に当選した場合には、「高確率時大当り当否情報」として「0」がビット4に格納される。これらの情報は、大当り種類決定テーブル(図13〜図16参照)に用いた抽選の結果に基づいて決定される。
第2パラメータのビット5及びビット6には、「第1入賞時演出情報」が格納される。なお、「第1入賞時演出情報」は、上記入賞時演出情報決定テーブル(図17参照)を用いた抽選により決定される入賞時演出情報1(「1A」〜「1D」)に対応する情報である。例えば、入賞時演出情報1が「1A」である場合には、「第1入賞時演出情報」として「00」がビット5及びビット6に格納され、入賞時演出情報1が「1B」である場合には、「第1入賞時演出情報」として「01」がビット5及びビット6に格納される。また、例えば、入賞時演出情報1が「1C」である場合には、「第1入賞時演出情報」として「10」がビット5及びビット6に格納され、入賞時演出情報1が「1D」である場合には、「第1入賞時演出情報」として「11」がビット5及びビット6に格納される。また、第2パラメータのビット7は、常時0領域となる。
保留加算コマンドの第3パラメータのビット4及びビット5には、「第2入賞時演出情報」が格納される。なお、「第2入賞時演出情報」は、上記入賞時演出情報決定テーブル(図17参照)を用いた抽選により決定される入賞時演出情報2(「2A」〜「2D」)に対応する情報である。例えば、入賞時演出情報2が「2A」である場合には、「第2入賞時演出情報」として「00」がビット4及びビット5に格納され、入賞時演出情報2が「2B」である場合には、「第2入賞時演出情報」として「01」がビット4及びビット5に格納される。また、例えば、入賞時演出情報2が「2C」である場合には、「第2入賞時演出情報」として「10」がビット4及びビット5に格納され、入賞時演出情報2が「2D」である場合には、「第2入賞時演出情報」として「11」がビット4及びビット5に格納される。
なお、「第1入賞時演出情報」及び「第2入賞時演出情報」の値は、保留加算コマンド生成時(保留加算時)における、先読み情報(変動前の保留に関する情報)に基づいて実行される演出の数(先読み演出が実行される保留個数)に応じて、変更(更新)してもよい。
第3パラメータのビット6には、「転落抽選情報」が格納される。なお、転落なしの場合には、「転落抽選情報」として「0」がビット6に格納され、転落ありの場合には、「転落抽選情報」として「1」がビット6に格納される。また、第3パラメータのビット0〜ビット3及びビット7のそれぞれは、常時0領域となる。
副制御回路200において、上記構成の保留加算コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから入賞時の特別図柄の可変表示の保留個数の情報が取得され、第2パラメータから保留演出の指定情報が取得され、第3パラメータから先読み演出の指定情報が取得される。
[その他のコマンド]
次に、上述した各種コマンド以外のコマンドの構成及び該コマンドに含まれる各種情報の内容について説明する。なお、ここでは、他の各種コマンドの構成の図示を省略し、各コマンド内のパラメータフィールド部の構成及び該コマンドに含まれる各種情報の概要のみを説明する。
(1)特別演出停止コマンド
特別演出停止コマンドのパラメータフィールド部は、2つのパラメータ(第1パラメータ及び第2パラメータ)で構成される。
特別演出停止コマンドの第1パラメータには、例えば、転落抽選、確変フラグ、時短フラグ、状態番号等の遊技状態情報(ゲームステータス)が格納される。また、第2パラメータには、特別図柄の停止図柄の情報が格納される。
副制御回路200において、上記構成の特別演出停止コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから特別図柄の変動表示時の演出を終了する際の各種遊技情報が取得される。
(2)特別図柄当り開始表示コマンド
特別図柄当り開始表示コマンドのパラメータフィールド部は、2つのパラメータ(第1パラメータ及び第2パラメータ)で構成される。
特別図柄当り開始表示コマンドの第1パラメータには、例えば、状態番号等の遊技状態情報(ゲームステータス)が格納される。また、第2パラメータには、特別図柄の停止図柄の情報が格納される。
副制御回路200において、上記構成の特別図柄当り開始表示コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから特別図柄の当り状態の情報(例えば、大当り中であるか否か、小当り中であるか否か等の情報)が取得される。
(3)大入賞口開放中表示コマンド
大入賞口開放中表示コマンドのパラメータフィールド部は、3つのパラメータ(第1パラメータ〜第3パラメータ)で構成される。
大入賞口開放中表示コマンドの第1パラメータには、例えば、状態番号等の遊技状態情報(ゲームステータス)が格納される。第2パラメータには、特別図柄の停止図柄の情報が格納される。また、第3パラメータには、ラウンド回数(「0」〜「15」)の情報が格納される。
副制御回路200において、上記構成の大入賞口開放中表示コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから特別図柄の当り状態の情報が取得され、第3パラメータからラウンド回数の情報が取得される。
(4)ラウンド間表示コマンド
ラウンド間表示コマンドのパラメータフィールド部は、3つのパラメータ(第1パラメータ〜第3パラメータ)で構成される。
ラウンド間表示コマンドの第1パラメータには、例えば、状態番号等の遊技状態情報(ゲームステータス)が格納される。第2パラメータには、特別図柄の停止図柄の情報が格納される。また、第3パラメータには、ラウンド回数(「0」〜「14」)の情報が格納される。
副制御回路200において、上記構成のラウンド間表示コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから特別図柄の当り状態の情報が取得され、第3パラメータからラウンド回数の情報が取得される。
(5)特別図柄当り終了表示コマンド
特別図柄当り終了表示コマンドのパラメータフィールド部は、2つのパラメータ(第1パラメータ及び第2パラメータ)で構成される。
特別図柄当り終了表示コマンドの第1パラメータには、例えば、状態番号等の遊技状態情報(ゲームステータス)が格納される。また、第2パラメータには、特別図柄の停止図柄の情報が格納される。
副制御回路200において、上記構成の特別図柄当り終了表示コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから特別図柄の当り状態の情報が取得される。
(6)保留減算コマンド
保留減算コマンドのパラメータフィールド部は、3つのパラメータ(第1パラメータ〜第3パラメータ)で構成される。
保留減算コマンドの第1パラメータには、例えば、転落抽選、確変フラグ、時短フラグ、状態番号等の遊技状態情報(ゲームステータス)が格納される。第2パラメータには、特別図柄の可変表示の保留個数の情報が格納される。また、第3パラメータには、残り時短遊技回数の情報が格納される。
副制御回路200において、上記構成の保留減算コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから変動開始時の遊技状態の情報が取得され、第2パラメータから変動開始時の保留個数の情報が取得され、第3パラメータから残り時短遊技回数の情報が取得される。
(7)入賞情報コマンド
入賞情報コマンドのパラメータフィールド部は、1つのパラメータ(第1パラメータ)で構成される。
入賞情報コマンドの第1パラメータには、例えば、カウントセンサ53c,54cの検知結果等の入賞検知情報が格納される。
副制御回路200において、上記構成の入賞情報コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから大入賞口の入賞検知情報が取得される。
(8)不正検知関連コマンド
不正検知関連コマンドのパラメータフィールド部は、2つのパラメータ(第1パラメータ及び第2パラメータ)で構成される。
不正検知関連コマンドの第1パラメータには、例えば、扉開放検知(開閉未検知、閉鎖検知、開放検知)、第1大入賞口の不正入賞検知、第2大入賞口の不正入賞検知、普通電動役物の不正入賞検知等の情報が格納される。また、第2パラメータには、例えば、誘導磁界検知、磁気検知、センサ異常検知等の情報が格納される。
副制御回路200において、上記構成の不正検知関連コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータ及び第2パラメータから不正検知情報が取得される。
(9)払出異常関連コマンド
払出異常関連コマンドのパラメータフィールド部は、1つのパラメータ(第1パラメータ)で構成される。
払出異常関連コマンドの第1パラメータには、例えば、払出エラー情報、下皿満タン情報等の情報が格納される。
副制御回路200において、上記構成の払出異常関連コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから払出異常情報が取得される。
(10)初期化コマンド
初期化コマンドのパラメータフィールド部は、1つのパラメータ(第1パラメータ)で構成される。
初期化コマンドの第1パラメータには、例えば、チェックサム異常、電断未検知での電断復帰、バックアップクリア押下時等の電源投入時の初期化要因の情報が格納される。
副制御回路200において、上記構成の初期化コマンドに対して後述のコマンド解析処理が行われると、解析結果として、第1パラメータから初期化要因の指定情報が取得される。
<コマンド受信時処理及びコマンド解析処理の概要>
次に、図28を参照しながら、ホスト制御回路210が、上述した各種コマンドを受信した際に行うコマンド受信時処理及びコマンド解析処理の概要を説明する。図28は、本実施形態におけるコマンド受信時処理の概要を示す図である。なお、このコマンド受信時処理は、ホスト制御回路210により実行される後述のメイン・サブ間コマンド制御処理(後述の図92及び図103参照)の中で受信割込処理として行われる。
本実施形態では、図28に示すように、主制御回路70(メインCPU71)からホスト制御回路210に上述したコマンドが送信され、該コマンドをホスト制御回路210が受信すると、まず、ホスト制御回路210は、受信したコマンドのデータをホスト制御回路210内に設けられたリングバッファに書き込む。なお、コマンド受信時にエラーが発生した場合には、受信したコマンドデータとエラー情報とのセット情報がリングバッファに書き込まれる。
ここで、図29に、リングバッファの概略構成を示す。本実施形態では、リングバッファは、受信したコマンドデータを格納するためのバッファ領域と、対応するエラー情報を格納するためのバッファ領域とで構成される。なお、各バッファ領域のサイズは2048バイトであり、1バイトの格納領域毎にアドレス(「0」〜「2047」)が割り当てられている。
コマンドデータを格納するためのバッファ領域では、1バイトの格納領域毎にコマンドデータが格納され、バッファ領域の先頭アドレスの領域からコマンド受信順にコマンドデータが格納される。また、エラー情報を格納するためのバッファ領域においても、1バイトの格納領域毎にエラー情報が格納され、バッファ領域の先頭アドレス側からコマンド受信順にエラー情報が格納される。この際、エラー情報は、対応するコマンドデータの格納領域のアドレスに一対一で対応付けられたエラー情報のアドレスの格納領域に格納される。
また、リングバッファの最後尾のアドレス「2047」にコマンドデータが格納された後にコマンドを受信した場合には、リングバッファの先頭アドレス「0」の格納領域にコマンドデータが格納される。
次いで、上述したリングバッファにコマンドデータが格納された後、ホスト制御回路210は、リングバッファに格納されたコマンドデータをサブワークRAM210aに転送して格納する。
そして、ホスト制御回路210は、サブワークRAM210aに格納されたコマンドの内容を解析して各種情報を取得する。具体的には、ホスト制御回路210は、コマンドのコマンド種別部に格納された情報に基づいてコマンド種別を判別するとともに、コマンドのパラメータフィールド部に格納された遊技及び演出に関する各種情報を取得する。
上述したコマンド解析処理を行った場合、コマンドの構成上の特徴に基づいて、次のような効果が得られる。
上述のように、上記各種コマンドのうち、例えば、デモ表示コマンド、特別図柄演出開始コマンド、第1電断復帰コマンド、特別演出停止コマンド、特別図柄当り開始表示コマンド等のコマンドでは、パラメータフィールド部の先頭(コマンドの先頭から2バイト目)に配置された第1パラメータにゲームステータスの情報(遊技状態情報)が格納される。それゆえ、これらのコマンドを受信しながら、1バイト毎にそのコマンドの解析処理を行った場合には、コマンド種別に関係なく、コマンドの受信開始から2バイト目のコマンド解析処理が必ずゲームスステータスの解析処理となるので、この2バイト目の解析処理を、これらのコマンドの解析処理において共通化することができる。すなわち、これらのコマンドに対してコマンド解析処理を行った場合、いずれのコマンドであっても、コマンド解析処理開始時を基準にしたゲームステータスの解析処理のタイミングが同じになるとともに、そのゲームステータスの解析処理も共通化することができる。この場合、ホスト制御回路210におけるコマンド解析処理の効率を向上させることができ、より高度な演出制御を行うことが可能になる。
また、上記構成を有するコマンドに対するコマンド解析処理では、各パラメータ内の所定のビット領域に設けられた常時0領域のチェック、パラメータ内に格納されている各データの有効範囲のチェック、及び、格納データの組み合わせのチェックを行うことにより、コマンドの有効性の有無を判定することができる。この場合、判定処理のチェック項目が増えるので、受信コマンドの有効性の有無をより正確に判断することができ、遊技者に対してより安全な遊技を提供することができる。
<アニメーションリクエスト構築手法>
本実施形態のパチンコ遊技機1では、副制御回路200内のホスト制御回路210は、主制御回路70から受信した各種コマンドに基づいて、表示装置13を用いた演出の動作を制御する際、各種演出装置(表示装置13も含む)を動作させるための指令信号(リクエスト)を生成する処理(以下、アニメーションリクエスト構築処理という)を行う。
[アニメーションリクエスト構築処理の概要]
まず、図30を参照しながら、アニメーションリクエスト構築処理の概要、及び、副制御回路200で行う各種演出制御の動作概要を説明する。なお、図30は、アニメーションリクエスト構築時の動作概要、及び、副制御回路200で行う演出制御の全体的な動作フローを示す図である。
ホスト制御回路210は、主制御回路70から各種コマンドを受信すると、図30に示すように、まず、受信コマンドに基づいて、演出内容の指定情報を含むアニメーションリクエストと称するリクエストを生成するためのオブジェクト(以下、アニメーションオブジェクトという)を生成する。
なお、本明細書でいう「オブジェクト」(処理情報)とは、広義にはプログラムの手続きの対象を抽象化する概念であり、本実施形態では、1つ又は複数の処理の集合である。具体的には、本実施形態の「オブジェクト」は、処理を呼び出す(実行契機となる名称の指定、コール、実行開始処理)ためのコマンドの集合であり、構造体が1つ又は複数の変数を内包し、各変数に対して実行する処理の呼び出しID(処理を特定するための名称など)を登録する。そして、「オブジェクト」では、このような構造体を実行することで各変数に登録された処理を実行する。また、「オブジェクト」は構造体の名称、構造体を特定可能なID又は構造体そのものであるので、「オブジェクト」は、構造体に限定されず、1つ又は複数の処理をグループ化することにより処理の実行順序などを管理することが可能な名称、ID、処理、記憶情報などを含む意味である。
近年では、ソフトウェア構築の際にはオブジェクト単位で管理され、複数のオブジェクトを組み合わせることによりソフトウェアが構築される。この場合、すでに存在するオブジェクトを利用する場合には、その内部構成や動作原理の詳細を知る必要が無く、外部からオブジェクトにメッセージ(識別コマンド、引数等)を送信すれば、オブジェクトの機能を作動させることさせることができる。
次いで、ホスト制御回路210は、アニメーションオブジェクトに基づいて(アニメーションオブジェクトを用いて)、アニメーションリクエストを生成する。そして、ホスト制御回路210は、生成されたアニメーションリクエストにも基づいて、描画リクエスト、サウンドリクエスト、ランプリクエスト、役物リクエストなどの各種リクエスト(演出開始要求)を生成する。
その後、ホスト制御回路210は、生成された各リクエストを、対応する演出装置の制御回路(コントローラ)に出力する。具体的には、ホスト制御回路210は、サウンドリクエスト及びランプリクエストを、音声・LED制御回路220に出力し、描画リクエストを表示制御回路230に出力する。
そして、音声・LED制御回路220は、入力されたサウンドリクエストに基づいて、スピーカ群10による音声再生動作の制御を行う。また、音声・LED制御回路220は、入力されたランプリクエストに基づいて、ランプ(LED)群20による発光演出(LEDアニメーション)動作の制御を行う。表示制御回路230は、入力された描画リクエストに基づいて、表示装置13による画像表示演出動作の制御を行う。
また、本実施形態では、ホスト制御回路210で生成された役物リクエストの出力態様は、各種可動役物による演出の内容に応じて変化する。
例えば、可動役物による演出内容が、演出制御の実行周期を短くする必要がある内容である場合(可動役物の演出動作を比較的細かに制御する必要がある場合)には、図30に示すように、ホスト制御回路210で生成された役物リクエストは、音声・LED制御回路220に出力される(第1出力態様)。また、例えば、可動役物による演出内容が、演出制御の実行周期を短くする必要がない内容である場合(可動役物の演出動作を細かに制御する必要がない場合)には、図30には示さないが、ホスト制御回路210で生成された役物リクエストは、ホスト制御回路210内で行う役物制御に関する処理間において受け渡される(第2出力態様)。
なお、この際、可動役物による演出内容に、演出制御の実行周期を短くする必要がある内容のみが含まれる場合には、役物リクエストは、前述した第1出力態様のみで出力される。また、可動役物による演出内容に、演出制御の実行周期を短くする必要がない内容のみが含まれる場合には、役物リクエストは、前述した第2出力態様のみで出力される。さらに、可動役物による演出内容に、演出制御の実行周期を短くする必要がある内容、及び、演出制御の実行周期を短くする必要がない内容の両方が含まれている場合には、役物リクエストは、前述した第1出力態様及び第2出力態様の両方で出力される。
そして、役物リクエストがホスト制御回路210から音声・LED制御回路220に出力された(受け渡された)場合には、音声・LED制御回路220は、入力された役物リクエストに基づいて、役物群30による演出動作の制御を行う。また、役物リクエストがホスト制御回路210内で行う役物制御に関する処理間において受け渡されれた場合には、ホスト制御回路210が、生成された役物リクエストに基づいて、役物群30による演出動作の制御を行う。
[アニメーションオブジェクトの種別]
ここで、アニメーションリクエスト構築処理で生成される(用いられる)各種アニメーションオブジェクトについて説明する。本実施形態のアニメーションリクエスト構築処理では、基本的には、演出オブジェクトと称するアニメーションオブジェクトと、保留オブジェクトと称するアニメーションオブジェクトとが生成され、この2つのアニメーションオブジェクトを用いてアニメーションリクエストが生成される。
演出オブジェクトは、受信コマンドに応じて生成されるアニメーションオブジェクトである。例えば、デモ表示コマンド受信時に生成されるアニメーションオブジェクト(オブジェクト名「Demo」、識別コマンド「80H」:以下、デモオブジェクトという)や、特別図柄演出開始コマンド受信時に生成されるアニメーションオブジェクト(オブジェクト名「HendoTz01」、識別コマンド「81H」:以下、変動オブジェクトという)などが演出オブジェクトの例として挙げられる。
なお、上述した演出オブジェクトは、抽選処理後、コマンド受信毎に後着優先で1つだけ生成される。すなわち、上述した演出オブジェクトは、複数同時に生成されることはなく、コマンド受信毎に、演出オブジェクトが上書きされる。なお、受信コマンドの呼び出しが1つずつであるため、先着順でオブジェクトが生成されていく中で、後着の受信コマンドに基づいてオブジェクトが生成されると、該後着の受信コマンドに基づいて生成されたオブジェクトにより先着の受信コマンドに基づいて生成されたオブジェクトが上書きされる。それゆえ、ここでは、「後着優先」と称する。なお、本実施形態では、後着の受信コマンドに基づいてオブジェクトが生成された場合に、先着の受信コマンドに基づいて生成されたオブジェクトを破棄するようにしてもよい。
保留オブジェクト(オブジェクト名「Horyu」)は、起動時に生成されるアニメーションオブジェクトである。この保留オブジェクトでは、現在の保留状態を画面表示する処理が行われる。また、保留オブジェクトは、基本的には、起動中は破棄されないオブジェクト(常駐型のオブジェクトの一つ)である。ただし、後述のシンプルモードオブジェクトが生成された場合には、保留オブジェクトも破棄される。
また、本実施形態では、上記アニメーションオブジェクト以外に、例えば、オブジェクト名「SimpleMode」のアニメーションオブジェクト(以下、シンプルモードオブジェクトという)や、オブジェクト名「InitAnm」のアニメーションオブジェクトなどが、アニメーションリクエスト構築処理において生成される(用いられる)。なお、シンプルモードオブジェクトについては、後で詳述する。
オブジェクト名「InitAnm」のアニメーションオブジェクトは、起動時又はRTC(Real Time Clock)エラー発生時に、サブ基板202内で発生したコマンド(例えば、時間設定画面の呼び出しコマンド、時間設定画面で時刻変更が実行された際のコマンド等)に基づいて生成されるオブジェクトであり、時刻設定画面の表示処理を行う。なお、ホスト制御回路210が主制御回路70からコマンドを受信し、他の演出オブジェクトが生成されると、オブジェクト名「InitAnm」のアニメーションオブジェクトは破棄される。
[アニメーションオブジェクトで実行される各種処理]
次に、上述したアニメーションオブジェクト内で行われる各種処理の概要について説明する。アニメーションオブジェクト内には、基本的には、初期化処理、メイン処理及び終了処理が含まれる。また、受信コマンドに応じて生成される演出オブジェクトでは、さらに、コマンド受信処理がアニメーションオブジェクト内に含まれる。そして、遊技の状況に応じて、アニメーションオブジェクト内に含まれるこれらの各種処理の中から所定の処理が呼び出されて実行される。
初期化処理は、オブジェクト生成開始時に一度だけ実行される処理である。初期化処理では、例えば、オブジェクトの初期化や抽選結果の取得などの処理が行われる。メイン処理は、オブジェクト生成中にフレーム毎に(FPS(Frames per Second)周期で)実行される処理である。メイン処理では、アニメーションリクエストの生成、セット等の処理が行われる。なお、オブジェクト生成開始時には、同フレームで初期化処理及びメイン処理が実行される。終了処理は、オブジェクト破棄時に一度だけ実行される処理である。終了処理では、不要な演出の再生終了等の処理が行われる。また、コマンド受信時理は、コマンド受信時に一度だけ実行される処理である。このコマンド受信処理は、例えば、保留加算コマンドや保留減算コマンドに基づいてアニメーション制御等を行う際に使用される。
ここで、図31及び図32を参照しながら、上述したアニメーションオブジェクトを用いたアニメーションリクエスト構築処理の流れの一例を説明する。なお、図31は、デモ表示コマンド受信時に行われるアニメーションリクエスト構築処理中のアニメーションオブジェクトの処理フローを示す図である。また、図32は、デモ表示コマンドの後に特別図柄演出開始コマンドを受信した際に行われるアニメーションリクエスト構築処理中のアニメーションオブジェクトの処理フローを示す図である。図31及び図32では、説明を簡略化するため、ホスト制御回路210が行うメイン処理のフロー(後述の図92参照)中の、メイン・サブ間コマンド制御処理、コマンド解析処理及びアニメーションリクエスト構築処理を受信コマンド数分だけループ処理するフロー部分のみを示す。
デモ表示コマンド受信時のアニメーションリクエスト構築処理内では、デモオブジェクトの初期化処理、デモオブジェクトのコマンド受信時処理、保留オブジェクトのコマンド受信処理及びデモオブジェクトのメイン処理が、この順で実行される。なお、デモオブジェクトの初期化処理では、デモオブジェクトが生成される。また、デモオブジェクトのコマンド受信時処理及び保留オブジェクトのコマンド受信処理は、識別コマンド「80H」を引数として呼び出され、実行される。そして、デモオブジェクトのメイン処理では、アニメーションリクエストが生成される。
次いで、デモ表示コマンドの後に特別図柄演出開始コマンドが受信されると、デモオブジェクトの終了処理、変動オブジェクトの初期化処理、変動オブジェクトのコマンド受信処理、保留オブジェクトのコマンド受信処理及び変動オブジェクトのメイン処理が、この順で実行される。なお、デモオブジェクトの終了処理では、この時点で生成されているデモオブジェクトが破棄される。また、変動オブジェクトの初期化処理では、変動オブジェクトが生成される。変動オブジェクトのコマンド受信時処理及び保留オブジェクトのコマンド受信処理は、識別コマンド「81H」を引数として呼び出され、実行される。そして、変動オブジェクトのメイン処理では、アニメーションリクエストが生成される。なお、このメイン処理は、次のコマンドが受信されるまで行われる。
保留オブジェクトのコマンド受信処理は、コマンド種別に関係なく実行されるが、その処理内容(処理結果)は、保留オブジェクト実行時の保留個数やゲームステータス等の状態に応じて異なる。
[シンプルモードオブジェクト]
シンプルモードオブジェクト(特定の処理情報)は、簡易画面状態時に生成されるオブジェクトであり、シンプルモードオブジェクトでは簡易画面の表示処理が行われる。シンプルモードオブジェクトは、基本的には、電断復帰コマンド(識別コマンド「D1H」)受信時であり、且つ、受信した電断復帰コマンド(図25参照)に含まれる内部制御状態(識別図柄の変動表示に関する情報)の情報が特別図柄変動状態である場合にのみ生成される。すなわち、シンプルモードオブジェクトは、特別図柄の変動表示中に電断が発生し、その後、電断復帰した際に生成される。しかしながら、本実施形態では、毎フレーム、簡易画面状態の発生の有無をチェックしているので、簡易画面状態が発生すれば、シンプルモードオブジェクトが生成される。
本実施形態では、シンプルモードオブジェクトを生成する際には、その時点で生成されている全てのオブジェクト(保留オブジェクト等の常駐型オブジェクトも含む)を終了(破棄)する。
そして、電断復帰コマンド受信時(起動時)であり、且つ、内部制御状態が特別図柄変動状態である場合には、ホスト制御回路210は、シンプルモードオブジェクトに基づいて、アニメーションリクエストを生成し、該アニメーションリクエストに基づいて、上述した各種リクエストを生成する。なお、本実施形態では、シンプルモードオブジェクトに基づいて生成された描画リクエストがホスト制御回路210から表示制御回路230に出力されると、表示制御回路230は、該描画リクエストに基づいて、電断復帰に関する情報の報知を行うアニメーション(動画、静止画含む)を作成し、該アニメーションを表示装置13に表示させる。
また、本実施形態では、シンプルモードオブジェクトが生成された場合には、シンプルモードオブジェクトが終了するまで、新たなオブジェクトは生成されない。すなわち、簡易画面状態中には、シンプルモードオブジェクト以外の他の演出オブジェクトは生成されない。そして、シンプルモードオブジェクトは、主制御回路70から変動停止に関するコマンド(変動停止コマンドや、大当たりを示すコマンドなど)が送信された場合に終了する。
上述したように、本実施形態において、内部制御状態が特別図柄変動状態(識別情報の変動表示状態)であるときに実行される電断復帰時の処理では、シンプルモードオブジェクトのみが生成されるので、電断復帰を迅速に行うことができる。
また、本実施形態では、シンプルモードオブジェクトの生成時に、受信した電断復帰コマンドに内部制御状態(識別図柄の変動表示に関する情報)が特別図柄変動状態であるという情報が含まれるか否かを判別する。それゆえ、本実施形態では、電断検知前と電断復帰後との間の遊技状態の整合性を考慮して電断復帰処理を行うことができる。
さらに、本実施形態では、上述のように、ホスト制御回路210がコマンドを受信する度に後着優先でオブジェクトが1つだけ生成される(オブジェクトが上書きされる)が、シンプルモードオブジェクトが存在しているときは、新たにオブジェクトが生成されない。それゆえ、ホスト制御回路210により受信コマンドに基づいて生成されるオブジェクトの整合性も確保される。
また、本実施形態では、電断復帰時にはシンプルモードオブジェクトにより生成されたアニメーションリクエストに基づいて、表示装置13により電断復帰中である旨の情報が報知されるので、動画を特別図柄の変動時間に合わせて途中から再生するような機能を有していない遊技機であっても、遊技者に違和感を与えることなく電断復帰を行うことができる。
さらに、本実施形態では、上述のように、シンプルモードオブジェクトの終了契機は、主制御回路70からホスト制御回路210に変動停止に関するコマンドが送信された場合である。それゆえ、例えば、変動中に電断を検知し、その後、電源復帰を行った場合であっても、例えば、シンプルモードオブジェクト終了時の表示装置13において、電断復帰後のアニメーション種別が電断検知前の変動中におけるアニメーションの種別と異なる演出が実行される、又は、再度、電断復帰前の演出と同じ演出が最初から実行されるといった不自然な演出の実行が抑制される。この結果、電断復帰時等の異常な状態であっても、遊技者に違和感を与えるような演出の発生を抑制することができ、円滑に遊技を進めることができる。
<描画制御手法の概要>
次に、ホスト制御回路210から表示制御回路230に描画リクエストが出力された際に、表示制御回路230が実行する描画処理の概要を、図33を参照しながら説明する。なお、図33は、描画処理時における画像データ(動画データ及び静止画データ)のフローを示す図である。
本実施形態では、表示装置13の液晶画面に表示する画像(動画及び/又は静止画)のデータ(圧縮データ)は、CGROM基板204内のCGROM206に格納されている。そして、描画リクエストが表示制御回路230に入力されると、表示制御回路230は、まず、CGROM206から画像圧縮データを読み出しデコード(伸張)する。この際、動画圧縮データが読み出された場合には、表示制御回路230内の動画デコーダ234により動画圧縮データがデコードされ、静止画圧縮データが読み出された場合には、表示制御回路230内の静止画デコーダ235により静止画圧縮データがデコードされる。
次いで、表示制御回路230は、画像データのデコード結果(画像伸張データ)をテクスチャソースに指定された所定のバッファに書き出す。なお、本実施形態では、テクスチャソースとして、SDRAM250(外部RAM)内に設けられたムービバッファ、テクスチャバッファや、内蔵VRAM237内のスプライトバッファが指定される。例えば、動画1枚を表示する場合には、伸張された動画データ(デコード結果)は、SDRAM250内のムービバッファに書き出される。また、例えば、静止画1枚を表示する場合には、伸張された静止画データは、内蔵VRAM237内のスプライトバッファに書き出される。
次いで、表示制御回路230は、画像データのレンダリング(描画)結果を書き出すレンダリングターゲットを指定する。なお、レンダリングターゲットとしては、例えば、SDRAM250(外部RAM)内に設けられたフレームバッファや、内蔵VRAM237内に設けられたフレームバッファなどを指定することができる。
次いで、表示制御回路230は、レンダリングエンジン241を作動させて、テクスチャソースに書き出された画像データのデコード結果に対してレンダリング処理を施し、そのレンダリング結果をレンダリングターゲットに書き出す。なお、この処理では、動画の拡大縮小や回転などの指定情報(3Dジオメトリエンジン240から入力される各種情報)に従ってレンダリング処理が行われる。
次いで、表示制御回路230は、レンダリングターゲットに書き出されたレンダリング結果(表示出力データ)を、表示装置13の表示画面に表示する。
なお、本実施形態では、レンダリングターゲットとして、2つのフレームバッファを用意する(後述の図111〜図113参照)。そして、レンダリングエンジン241からレンダリング結果をフレームバッファに書き出す際、レンダリング結果が書き出されるフレームバッファがフレーム毎に切り替えられる。例えば、所定のフレームにおいて、一方のフレームバッファにレンダリング結果を書き出した場合には、次フレームでは、他方のフレームバッファにレンダリング結果を書き出し、次々フレームでは、一方のフレームバッファにレンダリング結果を書き出す。すなわち、本実施形態では、一方のフレームバッファへのレンダリング結果の書き出し処理と、他方のフレームバッファへのレンダリング結果の書き出し処理とがフレーム毎に交互に切り替えて実行される。
また、上述したレンダリング結果の書き出し処理及び表示処理の流れの中において、所定のフレームで一方のフレームバッファに書き出されたレンダリング結果は、次フレームで表示装置13の表示画面に表示される(一方のフレームバッファの機能が描画機能から表示機能に切り替えられる)。また、次フレームで他方のフレームバッファに書き出されたレンダリング結果は、次々フレームで表示装置13の表示画面に表示される(他方のフレームバッファの機能が描画機能から表示機能に切り替えられる)。すなわち、本実施形態では、一方のフレームバッファにおけるレンダリング結果の表示処理と、他方のフレームバッファにおけるレンダリング結果の表示処理とがフレーム毎に交互に切り替えて実行される。
<音声再生制御手法の概要>
次に、ホスト制御回路210から音声・LED制御回路220にサウンドリクエストが出力された際に、音声・LED制御回路220が実行する音声再生処理の概要を、図34を参照しながら説明する。なお、図34は、音声再生処理時における音声・LED制御回路220の動作概要を示す図である。
本実施形態では、スピーカ群10に出力するサウンドデータは、CGROM206に格納されている。そして、音声・LED制御回路220にサウンドリクエストが入力されると、音声・LED制御回路220は、サウンドリクエストに基づいてアクセスナンバーを特定し、アクセスナンバーに対応付けられたアクセスデータをCGROM206から読み出す。
なお、本実施形態では、サウンドリクエストには、アクセスナンバーだけでなく、サブ基板202内で生成された音声再生処理に必要な各種シーケンス再生制御コマンド(例えば、音声再生のスタート、ストップ、ループ等の指令するコマンド)などが含まれる。
そして、音声・LED制御回路220は、読み出したアクセスデータに基づいて、音声再生処理を行う。この際、本実施形態では、シンプルアクセス制御により、サウンドの再生制御を行う。なお、ここでいう、「シンプルアクセス制御」とは、ホスト制御回路210から送信されたサウンドリクエストに基づいて、音声・LED制御回路220がCGROM206(外部ROM)に登録された複数のコマンドレジスタ列を一括設定する制御手法のことである。また、音声・LED制御回路220が同時に実行できるシンプルアクセス制御の数は、実行系統の数(本実施形態では4つ)に依存する。
図35に、アクセスデータの概略構成を示す。アクセスデータは、図35に示すように、設定データとアドレスとのセット情報が複数、所定の順序で配置されており、アクセスデータの最後尾にはシンプルアクセス終了コード(音声再生の終了を示すコード)に対応する情報が格納される。なお、図34に示すように、一つのアクセスナンバーに複数のアクセスデータが対応付けられている場合には、最後尾のアクセスデータにのみ、シンプルアクセス終了コードが設けられる。
このような構成のアクセスデータに対して、設定データを対応するアドレスにセットすると、設定データに対応する再生コードが実行され、音声再生が行われる。そして、この再生コードの実行処理を、アクセスデータ内の先頭側の設定データから最後尾まで順次行い、最終的にシンプルアクセス終了コードがセットされると、読み出したアクセスデータに基づく音声再生動作が終了する。
<ランプ(LED)の各種駆動制御手法>
次に、ホスト制御回路210から音声・LED制御回路220にランプリクエストが出力された際に、音声・LED制御回路220が実行する、ランプ群20に含まれる複数のLEDの各種駆動制御処理の内容について説明する。なお、以下に説明する本実施形態のランプ制御手法では、発光素子としてLEDを例に挙げて説明するが、本発明はこれに限定されず、他の任意の発光素子に対しても本実施形態のランプ制御手法は同様に適用することができる。
[LED制御の概要]
まず、図36を参照しながら、パチンコ遊技機1に設けられたLEDを駆動(点灯/消灯)する際の制御手法の概要を説明する。なお、図36は、LED駆動(点灯/消灯)時の信号フロー図である。
LEDの駆動(点灯/消灯)時には、まず、副制御回路200内のホスト制御回路210から音声・LED制御回路220にランプリクエスト(LED制御リクエスト)が出力される。なお、本実施形態では、ホスト制御回路210の演出制御処理(後述の図92に示す副制御メイン処理)は、所定のFPS周期(例えば、約33msec)で行われるので、音声・LED制御回路220へのランプリクエストの送信処理も所定のFPS周期で行われる。
次いで、音声・LED制御回路220にランプリクエストが入力されると、音声・LED制御回路220は、該ランプリクエストに基づいて、LEDの点灯パターン(LEDアニメーション)を設定するためのLEDデータ(駆動データ)をランプ群20内の各LEDドライバ280(発光駆動手段、演出駆動手段)に送信する。この際、音声・LED制御回路220からLEDドライバ280へのLEDデータの送信は、SPIの通信方式で行われる。また、音声・LED制御回路220からLEDドライバ280へのLEDデータの送信処理は、約12msec周期で行われる。
そして、LEDドライバ280は、受信したLEDデータに基づいて、接続されているLED281(発光手段)を所定のパターンで点灯/消灯する。これによりLEDアニメーションによる演出動作が実行される。
なお、LEDデータに基づく発光態様は、LEDドライバ280からLED281に送信される、発光態様を制御可能なLEDデータに基づいて生成された信号(制御信号)より制御される。具体的には、LEDドライバ280からLED281に送信される信号の電気的な波形パラメータ(電圧値、電流値、パルス幅のデューティー比等)により、LED281の点灯、消灯、点滅、輝度等の発光態様が制御される。
また、本実施形態では、LED281を駆動するための「駆動データに基づく制御信号」として、LEDデータに基づいて生成された信号を用いる例を説明したが、本発明はこれに限定されない。LED281を駆動する際の「駆動データに基づく制御信号」としては、LEDデータ(駆動データ)の転送態様や、LEDデータに基づいて生成されるデータであってもよい。なお、ここでいう「LEDデータに基づいて生成されるデータ」とは、信号、コマンド、電圧変化を含み、この場合には、LEDデータを受信した制御手段が、他の制御手段に対して駆動データ又は駆動データに基づく制御信号を送信する態様となる。
[音声・LED制御回路及びLED間の接続構成]
次に、図37を参照しながら、音声・LED制御回路220及び各LED281間の接続構成について説明する。なお、図37は、音声・LED制御回路220及びLED281間の概略接続構成図である。
本実施形態では、音声・LED制御回路220は、図37に示すように、LEDデータの出力系統(SPIチャンネル)として、物理系統0(SPIチャンネル0)と物理系統1(SPIチャンネル1)とを使用する。各物理系統には、複数のLEDドライバ(デバイス)280がSPIバスを介して並列に接続される。図37に示す例では、16個のLEDドライバ280(デバイス0〜デバイス15)が各物理系統に並列接続される。
そして、各LEDドライバ280には、LEDデータがセットされる複数の出力ポート(以下、単に「ポート」という)が設けられ、各ポート(接続部)に1つのLED281が接続される。すなわち、本実施形態では、LED281は、スタティック制御されるLED281である。なお、本明細書では、スタティック制御されるLED281をスタティックLED281と称する。
また、図37に示す例では、各LEDドライバ280(各デバイス)に、16個のポート(ポート0〜ポート15)が設けられる。すなわち、各LEDドライバ280(各デバイス)には16個のLED281が接続される。なお、本実施形態では、各LEDドライバ280には16個のLED281が接続されているが、本発明はこれに限定されず、LEDドライバ280(デバイス)の機能及び仕様に応じて、各LEDドライバ280に、8個、32個、64個等のLED281が接続されるようにしてもよい。
図37に示す構成のパチンコ遊技機1では、起動時に、音声・LED制御回路220は、LED281の接続構成に関する各種パラメータをSPIチャンネル毎に設定する。具体的には、音声・LED制御回路220は、起動時に、各SPIにおける使用デバイス数(各SPIチャンネルに接続されているLEDドライバ280の数)、LED281の開始ポート、LED281の終了ポート及びLEDドライバ280の開始アドレスを設定する。例えば、図37に示す例では、SPIの使用デバイス数に「16」、開始ポートに「0」、終了ポートに「15」及び開始アドレスに「0」が、それぞれセットされる。なお、LEDドライバ280の開始アドレスは、SPIチャンネル毎に適宜設定されるので、「0」に限定されない。
LED281の接続構成に関する各種パラメータを上述のようにセットすると、例えば、図37中のSPIチャンネル0に接続されたデバイス15(LEDドライバ)のポート15に接続されたLED281のアドレスは、SPI番号=0、デバイス番号=15及びポート番号=15で指定(設定)することができる。
ここで、図38を参照しながら、音声・LED制御回路220及びLEDドライバ280間の接続構成をより詳細に説明する。なお、図38は、音声・LED制御回路220及びLEDドライバ280間の接続構成図である。
音声・LED制御回路220及びLEDドライバ280間は、上述のように、SPIバス(信号配線手段)により接続されるので、各物理系統(SPIチャンネル)において、シリアル・クロック(SCL)の信号配線(タイミング信号線)と、シリアル・データ(SDO、SDI)の信号配線(データ信号線)とが別配線で設けられる。そして、音声・LED制御回路220(マスタ)の各物理系統(SPIチャンネル)において、音声・LED制御回路220のシリアル・クロック信号(タイミング信号)の出力端子(SCL_P*,SCL_N*:「*」は1又は2)は、各LEDドライバ280(スレーブ)のシリアル・クロック信号の入力端子(SCL_P,SCL_N)に接続される。また、音声・LED制御回路220のシリアル・データ(駆動データを含む送信データ)の出力端子(SDO_P*,SDO_N*)は、各LEDドライバ280のシリアル・データの入力端子(SDI_P,SDI_N)に接続される。
本実施形態では、音声・LED制御回路220及びLEDドライバ280間において、基本的には、音声・LED制御回路220(マスタ)がデータを送信し続け、各LEDドライバ280(スレーブ)は、送信されたデータを一方的に受信する。なお、この際、各LEDドライバ280は、シリアル・データの立ち上がりエッジを検出して、内部のシフトレジスタへのシリアル・データの入力を開始する。
[シリアル・データの構成]
ここで、図39に、音声・LED制御回路220からLEDドライバ280に送信されるシリアル・データの構成(フォーマット)を示す。
本実施形態では、図39に示すように、シリアル・データの先頭に、16ビット以上の領域に連続して「1」(特定のデータ)が格納される。それゆえ、LEDドライバ280が、「1」を16回以上連続して受信検知すると、LEDドライバ280の状態は、シリアル・データの入力待機状態になる。
シリアル・データ内の16ビット以上の「1」の格納領域(第1データ部)の後には、デバイスアドレス(LEDドライバ280のアドレス)の格納領域及びレジスタアドレスの格納領域がこの順で配置される。なお、デバイスアドレス(出力先情報)の格納領域(第2データ部)及びレジスタアドレスの格納領域は、それぞれ8ビット(1バイト)の領域で構成される。
本実施形態では、図39に示すように、デバイスアドレスの先頭ビットの格納領域には「0」(所定のデータ)が格納される。それゆえ、LEDドライバ280が、「1」を16回以上連続して受信検知した後、「0」を受信検知すると、LEDドライバ280の状態はデバイスアドレスに対応する信号(出力先指定信号)の待ち受け状態となる。
また、シリアル・データ内のレジスタアドレスの格納領域の後には、LEDデータの格納領域(第3データ部)が配置され、シリアル・データの最後尾の格納領域には、シリアル・データの送信終了を示す「0FFH」(FF)が配置される。この「0FFH」は、8ビット(1バイト)の格納領域で構成され、各ビット領域には、「1」が格納される。
[LEDドライバの構成及び動作概要]
次に、図40を参照しながら、LEDドライバ280の内部構成の一例を説明する。なお、図40は、LEDドライバ280の概略内部構成図である。
LEDドライバ280は、図40に示すように、デジタルコントロール部280aと、I/O部280bと、ISET部280cと、端子群280dと、ポート群280eとを有する。
デジタルコントロール部280aは、端子群280d及びI/O部280bを介して受信した信号に基づいて、自身のLEDドライバ280に接続されたLED281に駆動信号(点灯/消灯信号)を出力する。
ISET部280cは、LED281に過大電流が流れることを防止するために設けられた機能部である。ISET部280cは、過大電流を検知した場合にLEDドライバ280の動作を強制的に停止する(消灯する)。
端子群280dは、シリアル・クロック信号の入力端子(SCL)、シリアル・データの入力端子(SDI)、シリアル・データの出力端子(SDO)、信号形式選択端子(IFMODE)、出力イネーブル端子(OE)、複数のデバイスアドレス選択端子(DA0〜DA5)、及び、エラーフラグ出力端子(XERR)を含む。なお、図40では、説明を簡略化するため、図38に示すシリアル・クロック信号の2つの入力端子「SCL_P」,「SCL_N」を一つの入力端子「SCL」で示し、図38に示すシリアル・データの2つの入力端子「SDI_P」,「SDI_N」を一つの入力端子「SDI」で示す。
本実施形態では、LEDドライバ280は、SPI対応のドライバであるので、シリアル・クロック信号の入力端子(SCL)、シリアル・データの入力端子(SDI)及びシリアル・データの出力端子(SDO)のそれぞれ接続された3本の通信配線により外部と通信することができる。この際、LEDドライバ280(スレーブ)は、マスタ(音声・LED制御回路220)から入力される、シリアル・クロック信号に基づいて、シリアル・データの入出力制御を行う。
なお、本実施形態で、上述のように、音声・LED制御回路220及びLEDドライバ280間では、シリアル・データが音声・LED制御回路220からLEDドライバ280に一方的に送信される構成である。それゆえ、本実施形態では、音声・LED制御回路220及びLEDドライバ280間において、シリアル・データを送受信する際には、3本の通信配線のうち、LEDドライバ280のシリアル・クロック信号の入力端子(SCL)及びシリアル・データの入力端子(SDI)に接続された通信配線が使用される。
ここで、図41に、LEDドライバ280に1ビットのデータが各入力端子(SDI_P、SDI_N、SCL_P、SCL_N)に入力された際の動作概要を示す。
本実施形態において、LEDドライバ280の入力端子SDI_Pに「0」が入力され、且つ、入力端子SDI_Nに「1」が入力された場合には、図41に示すように、LEDドライバ280の内部のデジタル回路(例えば、後述のデジタルコントロール部280a等)に「0」が入力される。LEDドライバ280の入力端子SDI_Pに「1」が入力され、且つ、入力端子SDI_Nに「0」が入力された場合には、LEDドライバ280の内部のデジタル回路に「1」が入力される。また、LEDドライバ280の入力端子SDI_P及び入力端子SDI_Nに入力される1ビットのデータが互い同じである場合(両入力端子に「0」又は「1」が入力された場合)には、LEDドライバ280の内部のデジタル回路において、前回の入力値が維持される。
なお、図41に示すように、LEDドライバ280の入力端子SCL_P及び入力端子SCL_Nのそれぞれに入力される1ビットのデータの組み合わせと、内部のデジタル回路に入力される入力値との関係も、上述した入力端子SDI_P及び入力端子SDI_Nのそれと同様である。
信号形式選択端子(IFMODE)では、SDI、SCLにおける論理演算手法が異なる差動インターフェイス及びシングルエンドモード時のインターフェイスの中から所定のインターフェイスが選択可能である。出力イネーブル端子(OE)は、外部端子による全LED281の点灯/非点灯を可能にする端子である。具体的には、出力イネーブル端子(OE)の信号レベルをハイレベルにすることにより、LEDドライバ280の出力をオンすることができ、出力イネーブル端子(OE)の信号レベルをローレベルにすることにより、LEDドライバ280の出力をオフすることができる。
複数のデバイスアドレス選択端子(DA0〜DA5)には、LEDドライバ280のデバイスアドレスが設定される。そして、LEDドライバ280内のシフトレジスタにシリアル・データを読み込む際には、シリアル・データの出力先が指定するデバイスアドレス(音声・LED制御回路220から入力されたデバイスアドレスの情報)が、複数のデバイスアドレス選択端子(DA0〜DA5)に設定されたアドレスと一致した場合に、シリアル・データが読み込まれる。なお、このデバイスアドレスの判定処理は、デジタルコントロール部280aで行われる。
ここで、図42に、LEDドライバ280のアドレス設定モードの概要をまとめた表を示す。
本実施形態では、LEDドライバ280のアドレス設定モードとして、デバイス制御モード及びバス制御モードの2種類のモードが設けられている。なお、バス制御モードは、複数のデバイスアドレス選択端子(DA0〜DA5)に設定されたデータ(デバイスアドレス)に関係なく、シリアル・データを読み込むモードである。
デバイス制御モードにより、LEDドライバ280のデバイスアドレスを設定する場合には、図42中の「Bit0」〜「Bit5」に規定されたデータ「a0」〜「a5」がそれぞれデバイスアドレス選択端子(DA0)〜デバイスアドレス選択端子(DA5)にセットされる。なお、図42中の「Bit0」〜「Bit5」に規定されたデータ「a0」〜「a5」は、LEDドライバ280のデバイスアドレスに応じて変化する。また、図42中の「Bit6」に規定されたデータから、現在設定されているアドレス設定モードがバス制御モード及びデバイス制御モードのいずれであるかを判別することができる。
また、エラーフラグ出力端子(XERR)は、異常検知時にエラーフラグ値「1」が出力される端子である。エラーフラグ出力端子(XERR)からのエラーフラグの出力動作は、異常検知期間のみで行われ、エラーフラグ値「1」が出力された場合には、LEDドライバ280は自動復帰する。
なお、エラーフラグ出力端子(XERR)から出力されたエラーフラグ値「1」はレジスタに格納される。また、エラーフラグ出力端子(XERR)からエラーフラグ値「1」が出力されている間、LEDドライバ280のレジスタはラッチされる(状態を保持する)。そして、レジスタがリード可能になると、エラーが解除され、エラーフラグ出力端子(XERR)から「0」がレジスタに出力される。
ポート群280eは、複数のポート(図40に示す例では48個)で構成され、各ポートには1つのLED281が接続される。また、図40中のポート「OUTR*」(「*」は0〜15)には、赤色成分のLED281が接続され、ポート「OUTG*」には、緑色成分のLED281が接続され、ポート「OUTB*」には、青色成分のLED281が接続される。
本実施形態では、互いに隣り合うポート「OUTR*」、「OUTG*」及び「OUTB*」にそれぞれ接続された赤色成分のLED281、緑色成分のLED281及び青色成分のLED281により一つの色を発光させる構成にする。なお、本発明は、これに限定されず、LEDドライバ280のポートに接続されるLEDの種別として、3原色の各色成分のLED281を用いて一つの色を発光するようなLED種別以外にも、単色発光専用のLEDを別途、設けてもよい。
ここで、図43に、LED281が接続される物理系統(SPIチャンネル)と、LEDドライバ280のデバイスアドレスと、LEDドライバ280の出力端子との関係をまとめた表を示す。なお、図43に示す例は、物理系統として、2つの物理系統(物理系統0及び物理系統1)を用い、各物理系統に接続されたLEDドライバ280の個数を16個とし、各LEDドライバ280に接続されたLED281の個数を48個とした場合の構成例である。
[LEDデータ]
次に、図44を参照しながら、音声・LED制御回路220からLEDドライバ280(LED281)に出力されるLEDデータ(ポート毎にセットされるLEDデータ)の構成について説明する。なお、図44は、LEDデータのフォーマット(データ型、形式)を示す図である。
LEDデータは、再生時間(点灯時間)、赤色成分の輝度データ(発光データ)、緑色成分の輝度データ及び青色成分の輝度データを含み、ポート毎にセットされる。なお、LEDデータは、CGROM206に格納される。また、再生時間のデータ長(バイト数)は2バイトであり、各色成分の輝度データのデータ長は1バイトである。
なお、図44中に示す例では、LEDデータに、1バイトの「アライメント」と称するデータ領域も設けられるが、これは、LEDデータのデータ長(バイト数)を偶数バイトにするために設けられた調整領域である。
再生時間(点灯時間)の欄に規定される値は、時間の値ではなく、音声・LED制御回路220からLEDドライバ280へのLEDデータの送信処理の周期(約12msec)、すなわち、音声・LED制御回路220のLEDドライバ280に対する割込処理の周期を「1」としたときの値である。例えば、再生時間(点灯時間)に「12」がセットされている場合には、LEDの実際の点灯時間は約144msec(約12msec×12)となる。また、LEDデータ内の再生時間(点灯時間)に「0」がセットされている場合には、LEDデータの出力終了(所定のLEDアニメーションの終了)を意味し、該LEDデータが対応するLED281に出力されると、一連のLEDアニメーションによる演出動作が終了する。
なお、LEDデータ内における再生時間(点灯時間)の規定手法は、図44に示す例に限定されず、再生時間(点灯時間)の時間値を規定してもよい。この場合にも、音声・LED制御回路220のLEDドライバ280に対する割込処理の周期(約12msec)の整数倍の値がLEDデータ内に規定される。なお、計算不具合等により、LEDデータ内の再生時間(点灯時間)の欄に、割込処理の周期(約12msec)の整数倍以外の値が規定された場合には、周期(約12msec)の整数倍の値を超えた分が切り捨てられる。例えば、割込処理の周期が12msecであり、再生時間(点灯時間)の欄に55msecが規定された場合には、再生時間(点灯時間)の欄の値が48msecに書き換えられる。
各色成分の輝度データには、「0」(消灯)〜「255」の範囲内の整数値がセットされる。なお、本実施形態のように、LEDデータに、赤色成分の輝度データ、緑色成分の輝度データ及び青色成分の輝度データを含ませることにより、赤色LED、青色LED及び緑色LEDの3つでフルカラー発光させる場合だけでなく、赤色LED、青色LED及び緑色LEDのそれぞれを単色LEDとして使用する場合にも対応することができる。
また、輝度データ「244」及び「255」はそれぞれ16進数(HEX)で「0xFF」及び「0xFE」である。赤色、緑色、青色成分の各輝度データが「0xFE」であるときには、LED281は白色点灯する。赤色、緑色、青色成分の各輝度データが「0xFF」であるときには、該輝度データは「透明定義」の輝度データであり、「透明定義」の点灯態様は、後述のLEDデータの生成(合成)手法において説明する。また、赤色、緑色、青色成分の各輝度データが「0」であるときには、LED281は消灯するので、これらの輝度データを「消灯データ」と称する。
ここで、図45を参照しながら、スタティックLEDに対するLEDデータの出力制御処理の一例を説明する。なお、図45に示す例では、一つのLEDドライバ280に赤色LED、青色LED及び緑色LEDがそれぞれ1個ずつ接続されている例を示す。また、この例では、LEDデータ内の、再生時間(点灯時間)を「12」(約144msec)とし、赤色の輝度データ、緑色の輝度データ及び青色の輝度データのそれぞれを「0xFE」とする例を説明する。なお、このLEDデータでは、赤色LED、青色LED及び緑色LEDの3つのLEDにより白色点灯が行われる。
上述したLEDデータがLEDドライバ280に入力されると、LEDドライバ280は、後述の制御部位の情報(各ポートのポート情報)を参照して、LEDデータの中から接続されたLED281の種別に対応する輝度データを参照し、該輝度データに対応する駆動信号をLED281に出力する。それゆえ、図45に示す例では、ポート0に接続された赤色LEDには、LEDデータ内の赤色の輝度データ「0xFE」のみが出力され、赤色LEDは、赤色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。また、この際、ポート1に接続された青色LEDには、LEDデータ内の青色の輝度データ「0xFE」のみが出力され、青色LEDは、青色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。さらに、この際、ポート2に接続された緑色LEDには、LEDデータ内の緑色の輝度データ「0xFE」のみが出力され、緑色LEDは、緑色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。
なお、図45に示す例において、消灯動作を行う場合には、各色の輝度データに「0」がセットされる。
上述のように、本実施形態では、LEDドライバ280に対して出力されるLEDデータは、各色(赤、青、緑)成分の輝度値を少なくとも含み、発光態様を特定可能なデータ形態を有する。そして、LEDドライバ280からそれに接続された複数のLED281にLEDデータが出力されると、各LED281には、LEDデータ内の自身の発光色に対応する色成分の輝度データが出力される(各LED281において、LEDデータ内の対応する色成分の輝度データのみが参照される)。
このような構成のLEDデータを用いて、一つのLEDドライバ280により複数のLED281を発光制御した場合、複数のLEDが互いに異なる発光色のLED281であっても、各LED281の輝度値(データ)を把握することが容易になるので、複数のLED281による発光色の合成処理が容易になる。また、この際の発光色の合成にかかる処理を、LEDデータがセットされたLEDドライバ280により実行することも可能になるので、複雑なLED発光制御も容易に実行可能となり、LED281を用いたより高度な演出制御(LEDアニメーション制御)を容易に実行することができる。
また、本実施形態では、LEDドライバ280に対して出力されるLEDデータの構成は、LEDドライバ280に接続されたLED281の種別に関係なく同じである。それゆえ、所定のLEDドライバ280における発光態様(発光色)と同じ発光態様を行う他のLEDドライバ280に対して、所定のLEDドライバ280で用いるLEDデータを他のLEDドライバ280でも用いる(LEDデータを共通化する)ことができる。この場合、LEDデータを共通化することができるとともに、LED281の点灯動作に関する処理も共通化することができる。
このようなLEDデータ及び点灯動作処理の共通化という効果は、1つのLEDドライバ280に接続された赤色LED、緑色LED及び青色LEDを用いてフルカラー点灯を行う場合、すなわち、各色の発光配分が重要なパラメータとなるLED発光制御を実行する場合において、特に顕著になる。それゆえ、本実施形態では、フルカラーLEDの発光制御もまた容易に実行することができる。
なお、本明細書でいう、「LEDデータ(駆動データ)の形式」は、上述した複数種の色成分の輝度データ及び点灯時間に関するデータからなるデータフォーマットに限定されない。例えば、輝度データのデータフォーマットには、輝度データを生成する時に使用されるデータフォーマット、CGROM206内に格納される時のデータフォーマット等が含まれる。また、CGROM206内に格納されている輝度データが、圧縮処理やファイル形式の変換処理などによりデータフォーマットの形式を有していない変数、変数の群又はデータである場合においても、プログラム上で、該変数、変数の群(構造体)又はデータの使用方法として、それらを輝度データの一群として使用している場合には、該変数、変数の群(構造体)又はデータを輝度データのデータフォーマットとして認識することができる。それゆえ、本明細書でいう、「LEDデータ(駆動データ)の形式」とは、これらの輝度データのデータフォーマットを含む意味である。
[LEDデータの生成(合成)手法]
次に、音声・LED制御回路220で行われるLEDデータの生成(合成)処理の手法について説明する。本実施形態では、音声・LED制御回路220は、CGROM206から読み出した所定のLEDデータをそのままLEDドライバ280(ポート)に出力することもできるが、CGROM206から複数のLEDデータを読み出し、それらのLEDデータを合成して対応するポートに出力する機能も備える。
この機能を実現するために、音声・LED制御回路220には、複数のLEDデータのそれぞれを読み出して各種処理を施すための複数のチャンネルがポート毎に設けられる。具体的には、音声・LED制御回路220において、LEDデータをセット可能な8つのチャンネル(第1チャンネル〜第8チャンネル)がポート毎に設けられる。
そして、本実施形態では、チャンネル毎にLEDデータの実行優先順位が予め決められており、複数のチャンネルにLEDデータがセットされている場合には、その実行優先順位に従って(基づいて、応じて、又は、対応して)、LEDドライバ280内のポートにセットされるLEDデータが決定される。なお、本実施形態では、第1チャンネルが最もLEDデータの実行優先順位が低いチャンネルとし、チャンネル番号の増加とともに実行優先順位が高くなるようにLEDデータの実行優先順位が設定されている。それゆえ、本実施形態では、第8チャンネルが実行優先順位の最も高いチャンネルとなる。また、本実施形態では、第8チャンネルは、エラー発生時専用のチャンネルに設定される。なお、本明細書でいうチャンネル毎に設定される「LEDデータの実行優先順位」とは、LEDデータ(駆動データ)の出力、使用、設定、セット、ロードなどを行う際の優先順位である。
例えば、LEDドライバ280内の所定のポートに対して、第2、第4及び第6チャンネルにそれぞれLEDデータ(輝度データ)がセットされている場合には、これらのチャンネルのうち、実行優先順位の最も高い第6チャンネルのLEDデータが合成結果として音声・LED制御回路220からLEDドライバ280内の所定のポートに出力(セット)される。
なお、チャンネルに読み出されたLEDデータは、後述のデータテーブル情報とともに、チャンネルの登録バッファ(記憶手段)に格納される。具体的には、まず、ホスト制御回路210から音声・LED制御回路220にランプリクエスト(LED制御リクエスト)が入力されると、音声・LED制御回路220は、該ランプリクエストに基づいて、CGROM206に格納されたデータテーブル情報及びそれに対応付けられたLEDデータを取得する。データテーブル情報には、読み出したLEDデータをセットするチャンネルの情報が含まれており、音声・LED制御回路220は、このデータテーブル情報で指定されたチャンネルの登録バッファに、読み出したLEDデータ及びデータテーブル情報を上書きして格納する。ただし、読み出されたLEDデータを登録バッファに格納(上書き)する際には、チャンネルに設定されたLEDデータの実行優先順位に基づいて、LEDデータを登録バッファに上書きするか否かの判断が行われる。なお、データテーブル情報の内容については、後で詳述する。
本実施形態では、登録バッファに読み出したLEDデータ及びデータテーブル情報を上書きして格納する例を説明したが、後述の図48に示すようなLEDデータ及びデータテーブル情報を指定可能な情報(発光制御情報に対応する情報)を登録バッファに上書きして格納する構成にしてもよい。この場合には、LEDデータ及びデータテーブル情報を登録バッファとは異なる記憶領域(物理的に同じ記憶媒体の中で領域的に該記憶領域と登録バッファとが分けられている場合)から取得するように制御してもよいし、また、登録バッファに格納された情報に基づいて、物理的に異なる記憶媒体の記憶領域からLEDデータ及びデータテーブル情報を取得するように制御してもよい。
なお、「発光制御情報に対応する情報」は、後述の図48に示すLED制御IDを含む情報(発光制御情報を特定する情報)に限定されず、発光制御情報に関する情報であれば任意の情報を採用することができる。それゆえ、本実施形態の構成のように、発光制御情報に対応する情報として、発光制御情報そのもの(LEDデータ及びデータテーブル情報)を採用してもよい。
また、ここで、「透明定義」のLEDデータ(輝度データ)がセットされている場合の点灯態様を説明する。例えば、第4チャンネルに赤点灯を行うLEDデータ(輝度データ)が設定され、且つ、第6チャンネルに「透明定義」のLEDデータ(輝度データ)が設定されている場合には、第4チャンネルの赤点灯を行うLEDデータが出力される。すなわち、複数のチャンネルにLEDデータが設定されている場合に、実行優先順位の低いチャンネルのLEDデータを優先して出力したい場合には、「透明定義」のLEDデータを実行優先順位の高いチャンネルに設定する。なお、第4チャンネルに赤点灯を行うLEDデータが設定され、且つ、第6チャンネルに「消灯データ」が設定されている場合には、実行優先順位の高い第6チャンネルの「消灯データ」が優先して出力され、LED281は点灯しない。なお、例えば、第2チャンネル、第4チャンネル及び第6チャンネルにのみLEDデータがセットされ、且つ、セットされているLEDデータが全て「透明定義」のLEDデータである場合にもまた、LED281は発光しない。
また、本実施形態では、最も実行優先順位の低いチャンネルには「透明定義」のLEDデータが設定されない構成とするが、本発明はこれに限定されず、最も実行優先順位の低いチャンネルに「透明定義」のLEDデータを設定してもよい。
さらに、「消灯データ」及び「透明定義」のデータを同一に扱い、両データを、「消灯データ」又は「透明定義」のデータとして扱ってもよい。その場合には、LEDデータの構成を任意に変更し、各チャンネルで制御可能なLEDが予め重複しないようにするなど、LED制御を行う上での設定を適宜変更する。このような構成を採用した場合、例えば、「消灯データ」及び「透明定義」のデータの一方のデータしか取り扱わない遊技機においても対応可能になる。
なお、本実施形態では、「チャンネル」(系統)とは、シーケンサーチャンネルのことを示し、シーケンサーチャンネルが変数やレジスタに値を設定するというような表現が可能である。しかしながら、本発明はこれに限定されず、「チャンネル」は、例えば、単にシーケンサーの数を示すものであってもよいし、シーケンサーを含む再生手段(自動再生機能)であってもよい。また、ストップチャンネル(指定される音声再生をストップするチャンネル)などが「チャンネル」に含まれていてもよい。さらに、「チャンネル」は、表示装置13で表示されるアニメーションやLEDアニメーション、音声の再生の実行(開始、停止、終了、中断などを含む)可能な再生機能の総称であり、また、再生機能において同時に再生可能なデータ数(アニメーション数)を表すための単位(8チャンネルと言えば、同時に8つのデータを再生可能)でもある。
[LEDアニメーションの生成手法]
本実施形態のパチンコ遊技機1では、上述のように、ランプ群20に、複数のLED281が含まれる。そして、決定された演出内容に応じて、音声・LED制御回路220は、複数のLED281を様々なパターンで点灯/消灯させて所定の演出(LEDアニメーション)を行う。それゆえ、本実施形態では、LEDアニメーションが決まれば、その演出に必要な各種LEDデータが指定される。
また、本実施形態では、複数のLED281を連動させて所定のLEDアニメーションによる演出を行うので、所定のLEDアニメーションに関与する複数のLED281の点灯/消灯動作を一括して管理及び制御する。以下では、音声・LED制御回路220によりLEDアニメーションを実行するために、発光動作を一括して管理及び制御するポート群(LED群)を「制御部位」という。
本実施形態では、上述のように、音声・LED制御回路220には、LED281(ポート)毎にLEDデータがセット可能な8つのチャンネル(第1チャンネル〜第8チャンネル)が設けられているので、制御部位もチャンネル毎に設定される。そして、音声・LED制御回路220によりLEDアニメーションを実行する際には、各チャンネルの制御部位のLEDデータをチャンネル間で合成したデータがLEDアニメーションのデータとして出力される。なお、制御部位は、チャンネル間で互いに同じであってもよいし、チャンネル毎に異なっていてもよい。
また、音声・LED制御回路220には、各チャンネルにおいて設定された制御部位におけるLED281の点灯/消灯動作を一括して管理及び制御するための、シーケンサー(駆動データ制御手段)が制御部位毎に設けられる。
ここで、LEDアニメーションの生成例(LEDデータの合成例)を、図46〜図49を参照しながら具体的に説明する。
(1)生成例1
図46A及び図46Bは、制御部位の範囲がチャンネル間で互いに同じである場合のLEDアニメーションの生成及び出力動作の概要を示す図である。なお、図46A及び図46Bに示す例では、8つのLED281(第1LED〜第8LED)を用いて所定のLEDアニメーションを実行する例を説明する。また、図46A及び図46Bに示す例では、8つのチャンネルのうち、第6チャンネル〜第8チャンネルにLEDデータがセットされる例を説明する。
さらに、図46A及び図46Bに示す例では、第6チャンネル〜第8チャンネルのそれぞれにおいて、全てのLED281(第1LED〜第8LED)が制御部位として設定されている例を説明する。このような場合には、第6チャンネル〜第8チャンネルの各LED281にそれぞれ所定のLEDデータがセットされる。
具体的には、第8チャンネルでは、第1LED及び第3LEDに「赤色」点灯のLEDデータがセットされ、それ以外のLED281には「データ無し」(消灯データ)がセットされる。また、第7チャンネルでは、第1LED〜第5LEDに「緑色」点灯のLEDデータがセットされ、それ以外のLED281には「データ無し」(消灯データ)がセットされる。そして、第6チャンネルでは、全てのLED281に「青色」点灯のLEDデータがセットされる。
図46Aに示す例において、第6チャンネル〜第8チャンネルのLEDデータを合成すると、制御部位(全LED)内の各LED281には、最も実行優先順位の高い第8チャンネルのLEDデータが合成結果としてセットされる。それゆえ、この例では、図46Bに示すように、第8チャンネルに格納されているLED281の点灯パターンと同じパターンが合成後のLEDアニメーションとして出力される。
(2)生成例2
図47A及び図47Bは、制御部位の範囲がチャンネル間で互いに異なる場合のLEDアニメーションの生成及び出力動作の概要を示す図である。なお、図47A及び図47Bに示す例では、生成例1と同様に、8つのLED281(第1LED〜第8LED)を用いて所定のLEDアニメーションを実行する例を説明する。また、図47A及び図47Bに示す例では、生成例1と同様に、8つのチャンネルのうち、第6チャンネル〜第8チャンネルにLEDデータがセットされる例を説明する。
さらに、図47A及び図47Bに示す例では、第8チャンネルの制御部位が第1LED〜第3LEDに設定され、第7チャンネルの制御部位が第1LED〜第5LEDに設定され、そして、第6チャンネルの制御部位は全てのLED281に設定されている例を説明する。
また、第8チャンネルでは、第1LED及び第3LEDに「赤色」点灯のLEDデータがセットされ、第2LEDには「データ無し」(消灯データ)がセットされる。第7チャンネルでは、第1LED〜第5LEDに「緑色」点灯のLEDデータがセットされる。そして、第6チャンネルでは、全てのLED281に「青色」点灯のLEDデータがセットされる。なお、第8及び第7チャンネルにおいて、制御部位に指定されていないLED281のポートにはLEDデータはセットされない。
図47Aに示す例において、第6チャンネル〜第8チャンネルのLEDデータを合成すると、第1LED〜第3LEDでは、第6チャンネル〜第8チャンネルのLEDデータが重複するが、実行優先順位の最も高い第8チャンネルのLEDデータが合成結果としてセットされる。第4LED及び第5LEDでは、第7チャンネル及び第6チャンネルのLEDデータが重複するが、実行優先順位の高い第7チャンネルのLEDデータが合成結果としてセットされる。また、第6LED〜第8LEDでは、第6チャンネルにのみLEDデータがセットされているので、第6チャンネルのLEDデータが合成結果としてセットされる。
それゆえ、合成後のLEDアニメーションにおける、第1LED〜第3LEDの点灯パターンは、図47Bに示すように、第8チャンネルの第1LED〜第3LEDの点灯パターンと同じになり、第4LED及び第5LEDの点灯パターンは、第7チャンネルの第4LED及び第5LEDの点灯パターンと同じになり、第6LED〜第8LEDの点灯パターンは、第6チャンネルの第6LED〜第8LEDの点灯パターンと同じになる。
(3)生成例3
LEDアニメーションの生成例3では、図48並びに図49A〜図49Cを参照しながら、各チャンネルのLEDデータの上書き手順の一例を説明する。なお、図48は、各チャンネルと、各チャンネルにセットされているLEDデータ名(LED制御ID)との対応を示す図である。また、図49A〜図49Cは、生成例3における各ポートのLEDデータの上書き手順のフローを示す図である。
生成例3では、図49A〜図49Cに示すように、ポートAに接続されたLED281、ポートBに接続されたLED281、ポートCに接続されたLED281、及び、ポートDに接続されたLED281が、矩形状に配列されているLED群の構成例を説明する。また、第1チャンネルの制御部位は全ポートとし、第3チャンネルの制御部位はポートA〜ポートCとし、第6チャンネルの制御部位はポートAのみとする。そして、この例では、第1チャンネルに、LED281を「青色」点灯させるLEDデータ「LED_ID_B」がセットされ、第3チャンネルに、LED281を「赤色」点灯させるLEDデータ「LED_ID_R」がセットされ、第6チャンネルに、LED281を「黄色」点灯させるLEDデータ「LED_ID_G」がセットされる場合を考える。
このようなLEDデータを音声・LED制御回路220で合成して出力する際には、まず、音声・LED制御回路220は、図49Aに示すように、最も実行優先順位の低い第1チャンネルのLEDデータ「LED_ID_B」を全ポートにセットする。
次いで、音声・LED制御回路220は、図49Bに示すように、次に実行優先順位の低い(第1チャンネルより実行優先順位の高い)第3チャンネルのLEDデータ「LED_ID_R」をポートA〜ポートCにセットする。この結果、ポートA〜ポートCでは、LEDデータ「LED_ID_B」上に、LEDデータ「LED_ID_R」が上書きされる。
そして、音声・LED制御回路220は、図49Cに示すように、次に実行優先順位の低い(第3チャンネルより実行優先順位の高い)第6チャンネルのLEDデータ「LED_ID_Y」をポートAにセットする。この結果、ポートAでは、LEDデータ「LED_ID_R」上に、LEDデータ「LED_ID_Y」が上書きされる。
上述したLEDデータの上書き動作が終了すると、ポートAにはLEDデータ「LED_ID_Y」がセットされ、ポートB及びポートCにはLEDデータ「LED_ID_R」がセットされ、ポートDにはLEDデータ「LED_ID_B」がセットされる。その結果、ポートAのLED281が黄色点灯し、ポートB及びポートCのLED281が赤色点灯し、ポートDのLED281が青色点灯するLEDアニメーションが実行される。
なお、LEDデータの上書き処理は、チャンネル間の実行優先順位に基づいて行われるので、LEDデータの上書き順序は、図49A〜図49Cに示す例に限定されず、LEDデータの上書き順序は任意である。
[再生チャンネル及び拡張チャンネル]
本実施形態のパチンコ遊技機1は、1回のランプリクエストに基づいて1つのLEDアニメーションを実行する機能だけでなく、1回のランプリクエストに基づいて2つのLEDアニメーションを同時に実行する機能も有する。本実施形態では、後者の機能を実現するために、各チャンネルを2つの制御部位に分割し、一方の制御部位を用いて一方のLEDアニメーションを実行し、他方の制御部位を用いて他方のLEDアニメーションを実行する。
なお、以下では、1回のランプリクエストに基づいて1つのLEDアニメーション(通常のLEDアニメーション)を実行する際に使用される一方の制御部位を「再生チャンネル」と称し、1回のランプリクエストに基づいて2つのLEDアニメーションを同時に実行する際に使用される他方の制御部位を「拡張チャンネル」と称す。それゆえ、図46〜図49を参照して説明したLEDアニメーションの各種生成例の処理は、各チャンネル内の再生チャンネルを用いて実行され、2つのLEDアニメーションを同時に実行する際には、所定のチャンネルにおいて再生チャンネル(第1の系統)及び拡張チャンネル(第2の系統)の両方が使用される。
また、2つのLEDアニメーションを同時に実行する場合には、再生チャンネル及び拡張チャンネルの動作を別個に制御する必要があるので、再生チャンネル及び拡張チャンネルに対してそれぞれ別個にシーケンサー(自動再生制御機能)及び登録バッファ(第1の登録バッファ及び第2の登録バッファ)が設けられる。
ここで、各チャンネルに設けられた再生チャンネル及び拡張チャンネルの構成、並びに、それらに対応づけられたシーケンサーの構成の概要を、図50及び図51を参照しながら説明する。図50は、第8チャンネルに設けられた再生チャンネル及び拡張チャンネルの構成、並びに、それらに対応づけられたシーケンサーの構成を示す図であり、図51は、第7チャンネルに設けられた再生チャンネル及び拡張チャンネルの構成、並びに、それらに対応づけられたシーケンサーの構成を示す図である。
なお、図50及び図51に示す例では、8つのLED281(第1LED〜第8LED)を用いて所定のLEDアニメーションを実行する例を説明する。また、この例では、各チャンネルに対して2つのシーケンサーが設けられる。すなわち、トータル(8チャンネル分)で、16個のシーケンサーが設けられる。そして、各シーケンサーには、第1チャンネルのシーケンサーから順次シーケンサー番号が設定されている。
それゆえ、例えば、第1チャンネルの2つのシーケンサーにはそれぞれシーケンサー番号「0」及び「1」が設定され、第4チャンネルの2つのシーケンサーにはそれぞれシーケンサー番号「6」及び「7」が設定される。また、各チャンネルにおいて、2つのシーケンサーのうち、シーケンサー番号が小さい方のシーケンサーが再生チャンネルで使用するシーケンサーに設定される。すなわち、例えば、第1チャンネルの再生チャンネルでは、シーケンサー番号「0」のシーケンサーが使用され、第1チャンネルにおいて拡張チャンネルが設定されている場合には、シーケンサー番号「1」のシーケンサーが拡張チャンネルに対して使用される。
それゆえ、図50に示す例のように、第8チャンネルにおいて、第1LED〜第5LEDの制御部位を再生チャンネルとして制御し、残りのLED281(第6LED〜第8LED)の制御部位を拡張チャンネルとして制御する場合には、シーケンサー番号「14」のシーケンサー(図中のシーケンサー14:第1の駆動データ制御手段)が再生チャンネルで使用され、シーケンサー番号「15」のシーケンサー(図中のシーケンサー15:第2の駆動データ制御手段)が拡張チャンネルで使用される。また、図51に示す例のように、第7チャンネルにおいて、第1LED〜第7LEDの制御部位を再生チャンネルとして制御し、残りのLED281(第8LED)の制御部位を拡張チャンネルとして制御する場合には、シーケンサー番号「12」のシーケンサー(図中のシーケンサー12)が再生チャンネルで使用され、シーケンサー番号「13」のシーケンサー(図中のシーケンサー13)が拡張チャンネルで使用される。
上述した再生チャンネル及び拡張チャンネルを使用して、2つのLEDアニメーションを同時に実行する場合、2つのシーケンサーが1つのチャンネルに対してデータ更新を行うので、再生チャンネルと拡張チャンネルとの間で重複するLED281が存在すると、該LED281の制御をどちらのシーケンサーで制御するのか判断し難くなる。それゆえ、本実施形態では、再生チャンネルと拡張チャンネルとの間で重複するLED281が発生しないように、制御対象の全てのLED281に対して、再生チャンネル及び拡張チャンネルのどちらの制御部位に属するかを予め定義する。すなわち、再生チャンネルの制御部位と拡張チャンネルの制御部位との間の境界を予め定義する。
なお、再生チャンネルの制御部位と拡張チャンネルの制御部位との間の境界は任意に設定することができる。しかしながら、再生チャンネルの制御部位と拡張チャンネルの制御部位との間の境界は、プログラム初期化時において、LED制御プログラムに登録される。それゆえ、LED制御プログラムの動作中は該境界の位置を変更することはできない。
また、本実施形態のパチンコ遊技機1は、再生チャンネルのみの使用時には、再生チャンネルのクリア機能(再生チャンネルの各ポートに消灯データをセットする機能)を備えるが、再生チャンネル及び拡張チャンネルの両方を使用している場合には、各チャンネルのクリア機能が設けられていない。それゆえ、本実施形態では、再生チャンネル及び拡張チャンネルの両方を使用する場合を考慮して、予め各チャンネルのクリアデータ(消灯データ)を用意し、再生チャンネル及び拡張チャンネルをクリアする際(LEDアニメーション終了時)には、その予め用意されたクリアデータを用いる。
[LEDアニメーションの再生方式の種別]
本実施形態では、ランプリクエスト(LED制御リクエスト)に基づいて、音声・LED制御回路220は、上述のようにして生成されたLEDデータをランプ(LED)群20に出力して、所定のLEDアニメーションを実行する。この際、該所定のLEDアニメーションは、ランプリクエスト入力時に取得されるデータテーブル情報内で指定された再生方式(LEDアニメーションの実行タイミングや再生形態を指定した情報)に従って実行される。ここで、本実施形態で用意されているLEDアニメーションの各種再生方式について説明する。なお、再生方式は、LEDアニメーションの各フレーム(ランプリクエストの受信毎)において、チャンネル毎に指定される。
本実施形態では、次の5種類の名称の再生方式を用意する。
(1)「SHOT」
(2)「SHOT2」
(3)「LOOP」
(4)「NEXT」
(5)「ODONLY」
なお、本実施形態において、「再生方式」の情報には、LED281の点灯態様やLED281の点灯時間などのLED281の点灯/消灯に関わる情報を指定可能な情報であれば、任意の情報を採用することができる。再生方式として、例えば、LED281の再生方式を指定可能なID、数値、記号などを設定し、これらの情報に基づいてLED281の点灯態様の情報を参照する構成にしてもよいし、再生方式に直接、LED281の点灯態様の情報が設定されていてもよい。
「SHOT」は、セットされたLEDアニメーションを1回再生し、その後、最終フレームの点灯状態(LEDアニメーション終了時のLEDの点灯パターン)を維持する再生方式である。「SHOT2」は、セットされたLEDアニメーションを1回再生し、その後、LED281を消灯する再生方式である。
「LOOP」は、LEDアニメーションが最終フレームまで再生されれば、再度、開始フレームに戻ってLEDアニメーションの再生を繰り返す再生方式、すなわち、LEDアニメーションをループ再生する方式である。
「NEXT」(所定の再生方式)は、ランプリクエストが音声・LED制御回路220に入力された時に、他のLEDアニメーションが再生中であれば、ランプリクエストにより指定されたLEDアニメーションを、再生中のLEDアニメーションの終了後に続いて再生する方式である。なお、ランプリクエスト入力時に得られる再生方式の情報に「NEXT」指定が含まれていても、ランプリクエスト入力時に再生中のLEDアニメーションがなければ、「NEXT」指定されたLEDアニメーションを即時再生する。また、「NEXT」指定のランプリクエスト入力時に再生中であるLEDアニメーションが「LOOP」再生方式のLEDアニメーションである場合には、ループ再生中であるLEDアニメーションの最終フレーム再生後に続いて、「NEXT」指定のLEDアニメーションの再生を行う。
「ODONLY」(特定の再生方式)は、ポートにセットするLEDデータ(第2の駆動データ)がある場合にのみ、該ポートからLEDデータが出力される再生方式である。ただし、「ODONLY」指定されたチャンネルにおいて、ポートにセットするLEDデータが消灯データ(第1の駆動データ)である場合(例えば、隣り合う赤色LED、青色LED及び緑色LEDに出力するLEDデータが全て0である場合)には、「LEDデータ無し」の状態であるとし、該ポートには、LEDデータ(消灯データ)がセットされない。
なお、ランプリクエストが音声・LED制御回路220に入力された時に取得されるデータテーブル情報内で指定される再生方式のパターンは、次の12種類である。
(1)「SHOT」
(2)「SHOT2」
(3)「LOOP」
(4)「SHOT|NEXT」
(5)「SHOT2|NEXT」
(6)「LOOP|NEXT」
(7)「SHOT|ODONLY」
(8)「SHOT2|ODONLY」
(9)「LOOP|ODONLY」
(10)「SHOT|NEXT|ODONLY」
(11)「SHOT2|NEXT|ODONLY」
(12)「LOOP|NEXT|ODONLY」
上述のように、本実施形態では、LEDアニメーションの再生方式として、「SHOT」、「SHOT2」及び「LOOP」のいずれかが必ず指定され、「NEXT」及び/又は「ODONLY」は、必要(演出内容)に応じて「SHOT」、「SHOT2」及び「LOOP」のいずれかに付随して指定される。なお、上述した各種再生方式に基づくLEDアニメーションの再生動作例は、後で図面を参照しながら具体的に説明する。
[再生方式に基づくLEDアニメーションの切り替え再生]
本実施形態では、LEDアニメーションの実行期間が、ホスト制御回路210のランプリクエストの出力処理のFPS周期(例えば、約33msec)より長い場合もある。この場合には、LEDアニメーションの再生途中に、次のランプリクエストが音声・LED制御回路220に入力されることもある。
このような場合には、音声・LED制御回路220は、新たに入力されたランプリクエストに基づいて取得される再生方式に従ってLEDアニメーションの切り替え再生を行う。例えば、次のランプリクエストに基づいて取得される再生方式に「NEXT」が指定されていなければ、再生中のLEDアニメーションのデータを破棄し、新たに入力されたランプリクエストに基づいて作成されたLEDアニメーションの再生を即時開始する。
ここで、図52に、LEDアニメーションの切り替え再生パターンの各種例を示す。なお、図52は、第1ランプリクエストに基づいて作成されたLEDアニメーションの再生中に、同一チャンネルに対して、第2ランプリクエスト、又は、第2ランプリクエスト及び第3ランプリクエストが音声・LED制御回路220に入力された場合における、LEDアニメーションの切り替え再生パターンの一例をまとめた表である。
以下、図53〜図57を参照しながら、図52中の一部のLEDアニメーションの切り替え再生パターンについて説明する。
図53は、図52中の切り替え再生パターン2に対応するLEDアニメーションの時間軸上の切り替え再生フローを示す図である。なお、切り替え再生パターン2は、第1ランプリクエストに基づいて作成された再生方式「SHOT」のLEDアニメーションの再生中に、第2ランプリクエストが音声・LED制御回路220に入力され、その際の再生方式に「LOOP」が指定されている場合の切り替え再生パターンである。
切り替え再生パターン2では、まず、第1ランプリクエスト入力時に、第1ランプリクエストに基づく再生方式「SHOT」のLEDアニメーションの再生が開始される。次いで、第1ランプリクエストに基づくLEDアニメーションの再生中に、第2ランプリクエストが音声・LED制御回路220に入力される。そして、この際に得られる再生方式の情報において「LOOP」のみが指定されていると、図53に示すように、第2ランプリクエスト入力時に、再生中の第1ランプリクエストに基づくLEDアニメーションのデータが破棄され(再生中のLEDアニメーションを終了し)、第2ランプリクエストに基づく再生方式「LOOP」のLEDアニメーションの再生が即時開始される。
図54は、図52中の切り替え再生パターン4に対応するLEDアニメーションの時間軸上の切り替え再生フローを示す図である。なお、切り替え再生パターン4は、第1ランプリクエストに基づいて作成された再生方式「SHOT」のLEDアニメーションの再生中に、第2ランプリクエストが音声・LED制御回路220に入力され、その際の再生方式に「SHOT|NEXT」が指定されている場合の切り替え再生パターンである。
切り替え再生パターン4では、まず、第1ランプリクエスト入力時に、第1ランプリクエストに基づく再生方式「SHOT」のLEDアニメーションの再生が開始される。次いで、第1ランプリクエストに基づくLEDアニメーションの再生中に、第2ランプリクエストが音声・LED制御回路220に入力される。そして、この際に得られる再生方式の情報において「SHOT|NEXT」が指定されていると、図54に示すように、再生中の第1ランプリクエストに基づくLEDアニメーションの再生終了後に第2ランプリクエストに基づく再生方式「SHOT|NEXT」のLEDアニメーションの再生が開始される。この場合、第2ランプリクエストに基づくLEDアニメーションの再生動作は、第2ランプリクエストの入力時から第1ランプリクエストに基づくLEDアニメーションの再生終了時までの期間、待機状態になる。
図55は、図52中の切り替え再生パターン6に対応するLEDアニメーションの時間軸上の切り替え再生フローを示す図である。なお、切り替え再生パターン6は、第1ランプリクエストに基づいて作成された再生方式「SHOT」のLEDアニメーションの再生中に、第2ランプリクエスト及び第3ランプリクエストがこの順で音声・LED制御回路220に入力され、各ランプリクエストにおいて再生方式に「SHOT|NEXT」が指定されている場合の切り替え再生パターンである。
切り替え再生パターン6では、まず、第1ランプリクエスト入力時に、第1ランプリクエストに基づく再生方式「SHOT」のLEDアニメーションの再生が開始される。次いで、第1ランプリクエストに基づくLEDアニメーションの再生中に、第2ランプリクエスト及び第3ランプリクエストがこの順で音声・LED制御回路220に入力される。そして、各ランプリクエストにおいて再生方式の情報として「SHOT|NEXT」が指定されていると、図55に示すように、再生中の第1ランプリクエストに基づくLEDアニメーションの再生終了後に第2ランプリクエストに基づく再生方式「SHOT|NEXT」のLEDアニメーションの再生が開始され、第2ランプリクエストに基づくLEDアニメーションの再生終了後に第3ランプリクエストに基づく再生方式「SHOT|NEXT」のLEDアニメーションの再生が開始される。
この場合、第2ランプリクエストに基づくLEDアニメーションの再生動作は、第2ランプリクエストの入力時から第1ランプリクエストに基づくLEDアニメーションの再生終了時までの期間、待機状態になる。また、第3ランプリクエストに基づくLEDアニメーションの再生動作は、第3ランプリクエスト入力時から第2ランプリクエストに基づくLEDアニメーションの再生終了時までの期間、待機状態になる。
図56は、図52中の切り替え再生パターン7に対応するLEDアニメーションの時間軸上の切り替え再生フローを示す図である。なお、切り替え再生パターン7は、第1ランプリクエストに基づいて作成された再生方式「LOOP」のLEDアニメーションの再生中に、第2ランプリクエストが音声・LED制御回路220に入力され、その際の再生方式に「SHOT|NEXT」が指定されている場合の切り替え再生パターンである。
切り替え再生パターン7では、まず、第1ランプリクエスト入力時に、第1ランプリクエストに基づく再生方式「LOOP」のLEDアニメーションの再生が開始される。次いで、第1ランプリクエストに基づくLEDアニメーションの所定回数目(図56に示す例では2回目)のループ再生中に、第2ランプリクエストが音声・LED制御回路220に入力される。そして、この際に得られる再生方式の情報において「SHOT|NEXT」が指定されていると、図56に示すように、第1ランプリクエストに基づくLEDアニメーションの所定回数目のループ再生終了後に第2ランプリクエストに基づく再生方式「SHOT|NEXT」のLEDアニメーションの再生が開始される。この場合、第2ランプリクエストに基づくLEDアニメーションの再生動作は、第2ランプリクエストの入力時から第1ランプリクエストに基づくLEDアニメーションの所定回数目のループ再生終了時までの期間、待機状態になる。
なお、本実施形態では、例えば、図55や図56などで示したように、「NEXT」指定となるランプリクエストが続けて音声・LED制御回路220に入力された場合には、LEDアニメーションの連続再生が行われる。しかしながら、本実施形態では、1回の連続再生で再生されるLEDアニメーションの最大個数は8個とする。そして、8個目のLEDアニメーション再生中にランプリクエストが音声・LED制御回路220に入力され、その際に得られる再生方式が「NEXT」指定を含むものである場合には、該ランプリクエストに基づいて作成されたLEDアニメーションのデータは破棄される。この再生動作の時間軸上の切り替え再生フローを、図57に示す。
また、時間軸上のフロー図を示さないが、図52中の切り替え再生パターン11の切り替え再生態様について、簡単に説明する。切り替え再生パターン11は、第1ランプリクエストに基づいて作成された再生方式「SHOT」のLEDアニメーションの再生中に、第2ランプリクエスト及び第3ランプリクエストがこの順で音声・LED制御回路220に入力され、第2ランプリクエスト入力時に得られる再生方式の情報が「LOOP|NEXT」であり、且つ、第3ランプリクエスト入力時に得られる再生方式の情報が「SHOT」である場合のパターンである。この切り替え再生パターン11では、最遅のリクエストである第3ランプリクエストの再生方式に「NEXT」が指定されていないので、第3ランプリクエスト入力時に、再生中の第1ランプリクエストに基づくLEDアニメーションのデータ、及び、第2ランプリクエストに基づいて生成されたLEDアニメーションのデータが破棄され、第3ランプリクエストに基づく再生方式「SHOT」のLEDアニメーションの再生が即時開始される。
[ODONLY指定時の再生例]
次に、再生方式に「ODONLY」指定がある場合のLEDアニメーションの点灯動作(LEDデータの合成動作)について説明する。
ここでは、後述の図58及び図59に示すように、矩形状に配列された複数のLED281によりLEDアニメーションを実行する例を説明する。また、LEDアニメーション作成時に用いる再生チャンネルには、第1チャンネルの再生チャンネル(以下、第1再生チャンネルという)及び第2チャンネルの再生チャンネル(以下、第2再生チャンネルという)を用いる。そして、第1再生チャンネルの制御部位は全てのLED281とし、第2再生チャンネルの制御部位は、左辺部及び右辺部(サイド)に配列された複数(後述の図58及び図59に示す例では、8個)のLED281とする。
まず、各再生チャンネルに「ODONLY」が指定されていない場合のLEDアニメーションの再生態様の一例を、図58A及び図58Bを参照しながら説明する。なお、図58Aは、ランプリクエストが音声・LED制御回路220に入力されたときに取得されるデータテーブル情報に含まれる各再生チャンネルの再生仕様の情報をまとめたテーブルである。また、図58Bは、図58Aのテーブルに規定されている各再生チャンネルの再生仕様の情報に基づいてLEDアニメーションを生成する際の様子を示す図である。
なお、この例では、第1再生チャンネル(1ch)の制御部位(全体)において全LED281を赤色点灯させる点灯パターン(ptnA)と、第2再生チャンネル(2ch)の制御部位(サイド)において12msec周期で青色点灯するLED281を制御部位内で順次移動させる点灯パターン(ptnB)とを合成して、LEDアニメーションを作成する例を説明する。
各再生チャンネルに「ODONLY」が指定されていない場合には、第2再生チャンネルが第1再生チャンネルより実行優先順位が高いので、第2再生チャンネルの制御部位内のLEDデータが、第1再生チャンネルの制御部位内の対応するLED281のLEDデータ上に上書きされる。それゆえ、各再生チャンネルに「ODONLY」が指定されていない場合には、図58Bに示すように、合成後のLEDアニメーションでは、サイドのLED点灯パターンが第2再生チャンネルの点灯パターン(ptnB)と同じになる。
次に、第2再生チャンネルに「ODONLY」が指定されている場合のLEDアニメーションの再生態様の一例を、図59A及び図59Bを参照しながら説明する。なお、図59Aは、ランプリクエストが音声・LED制御回路220に入力されたときに取得されるデータテーブル情報に含まれる各再生チャンネルの再生仕様の情報をまとめたテーブルである。また、図59Bは、図59A中の各再生チャンネルの再生仕様の情報に基づいてLEDアニメーションを生成する際の様子を示す図である。
この場合には、第2再生チャンネルが第1再生チャンネルより実行優先順位が高いので、第2再生チャンネルの制御部位内のLEDデータが、第1再生チャンネルの制御部位内の対応するLED281のLEDデータ上に上書きされる。しかしながら、この際、第2再生チャンネルには再生方式に「ODONLY」が指定されているので、消灯データ以外の出力データ(LEDデータ)があるポートにおいてのみLEDデータが上書きされ、出力データが無いポート(消灯データがセットされているポート)では、LEDデータは上書きされず、第1再生チャンネルのLEDデータが維持される。それゆえ、第2再生チャンネルに「ODONLY」が指定されている場合には、図59Bに示すように、合成後のLEDアニメーションでは、サイドに配置された複数のLED281のうち、青色点灯のLEDデータがセットされているLED281のみが青色点灯し、その他のLED281は赤色点灯となる。
[データテーブル情報]
上述のように、本実施形態では、音声・LED制御回路220において、ランプリクエスト(LED制御リクエスト)に基づいてLEDアニメーションを生成して再生する場合、各LED281に出力するLEDデータだけでなく、各チャンネルの制御部位や再生方式などの各種情報も必要になる。これらの情報をまとめたものが、データテーブル情報であり、このデータテーブル情報は、LEDデータと同様に、CGROM206に格納される。
データテーブル情報は、ランプリクエストが音声・LED制御回路220に入力された際に、該ランプリクエストで指定されるLEDアニメーションのID(LEDアニメーションパターン)に基づいて、各種LEDデータとともに取得される。そして、取得されたデータテーブル情報及び各種LEDデータは、データテーブル情報で指定された再生チャンネルの登録バッファに格納される。
ここで、データテーブル情報に含まれる各種情報の内容について説明する。本実施形態では、データテーブル情報には、主に、次の6つの情報が登録される。
(1)再生方式
(2)再生チャンネル
(3)拡張チャンネル
(4)消灯データ識別
(5)制御部位
(6)LEDデータ名
再生方式の情報(再生方式情報)としては、上述した12種類の再生方式の種別が登録される。再生チャンネルの情報としては、使用する再生チャンネルの種別(チャンネル番号)が登録される。
拡張チャンネルの情報としては、拡張チャンネルの使用の有無が登録される。例えば、拡張チャンネルを使用しない場合には「0」が登録され、使用する場合には「1」が登録される。なお、拡張チャンネルの情報として「1」が登録された場合には、指定された再生チャンネルが含まれるチャンネルの拡張チャンネルが使用される。
消灯データ識別の情報としては、拡張チャンネルを使用する場合に予め用意する消灯データをどのチャンネルに登録するかを識別するための情報が登録される。なお、拡張チャンネルを使用しない場合には、この消灯データ識別の情報は登録されない。
制御部位の情報(出力先情報)としては、再生チャンネルの制御部位で使用するSPIチャンネル(物理系統)の情報(通信経路の情報)、及び、再生チャンネルで制御するポート情報(発光手段の指定情報)が登録される。ポート情報には、ポートに対して予め設定されたポート番号及びポートに接続されるLED281の種別の情報が含まれる。なお、LED281の種別の情報としては、例えば、赤色成分用のスタティックLED、緑色成分用のスタティックLED、青色成分用のスタティックLED、単色発光用LED等を識別するための情報が登録される。
また、拡張チャンネルを使用する場合には、制御部位の情報として、指定されたチャンネルにおいて、再生チャンネルの制御部位と拡張チャンネルの制御部位との境界を規定する情報等も登録される。なお、制御部位の情報は、データテーブル情報でなく、LEDデータやランプリクエストに含まれていてもよい。また、LEDデータ名の情報は、デバッグ処理でLEDアニメーションの再生履歴等を表示する際に使用されるデータ名である。
[本実施形態のランプ(LED)制御手法により得られる各種効果]
ここで、上述した本実施形態のパチンコ遊技機1において実行されるランプ(LED)制御手法により得られる各種効果をまとめて説明する。
本実施形態のランプ(LED)制御手法では、上述のように、ランプリクエストが音声・LED制御回路220に入力される度(LEDアニメーションのフレーム毎)に、LEDアニメーションの再生方式が指定される。そして、その指定された再生方式に従ってLEDアニメーションの再生が実行される。この場合、例えば、LEDアニメーションのフレーム毎にLED281に対して出力されるLEDデータ(出力データ)の出力回数(再使用回数)を設定するとともに、LEDデータを出力(セット)するタイミング(先に記憶されているLEDデータを破棄し、新しいLEDデータをセットする、又は、先に記憶されているLEDデータが出力された後に、新しいLEDデータをセットする)を決定することができる。この場合、次のような効果が得られる。
例えば、ホスト制御回路210又は音声・LED制御回路220が直接LED281に対してLEDデータを指定して制御する場合には、各LEDデータの出力回数と、LEDデータを出力(セット)するタイミングとを予め決定しておく必要がある。また、複数のLEDデータの出力制御を行う場合には、各LEDデータで同一のLED281が制御されているか否かなどの複雑な出力制御形態を全て予め設定しておく必要がある。それゆえ、この場合には、パチンコ遊技機1の開発期間が延びるといった問題だけでなく、演出のバリエーションを増やすことが困難になるという問題も発生する。
しかしながら、本実施形態では、ホスト制御回路210から入力されるランプリクエストに基づいて、音声・LED制御回路220が、LEDデータ(LEDアニメーション)の再生方式を指定し、該再生方式に基づいてフレーム単位でLEDデータの出力制御を行う。この際、本実施形態では、再生方式に「SHOT」や「LOOP」などを指定することにより、LEDデータの出力回数を容易に制御できるとともに、再生方式に「NEXT」指定を行うか否かにより、LEDデータを出力(セット)するタイミングも容易に制御することができる。それゆえ、本実施形態では、ホスト制御回路210及び音声・LED制御回路220によるLED出力制御の管理を容易に行うことができるとともに、LED(ランプ)点灯による演出パターンの種類を増加させ、該増加させた演出パターンを円滑に制御し、演出効果(遊技の興趣)を高めることができる。
また、本実施形態では、上述のように、LED281毎(ポート毎)に再生チャンネルが複数設けられ、再生チャンネル毎にLEDデータの実行優先順位が予め設定される。さらに、再生中のLEDデータに対する上述したLEDデータの上書き、追加等の判定は、指定された再生方式に従って再生チャンネル毎に個別に行われる。
それゆえ、本実施形態では、例えば、複数の再生チャンネルを実行するような状況下であっても、各再生チャンネルの登録バッファへのLEDデータの記憶制御を容易にすることができる。その結果、複数の再生チャンネルを使用して、LED281による演出パターンの組み合わせ処理を実行することが可能になるので、より複雑なLEDアニメーションの演出パターンを生成することができ、演出効果をより一層高めることができる。
また、本実施形態では、待機中(再生中)の再生チャンネルに対して複数のランプリクエストが発生しても、再生方式に基づいてデータの切り替え再生制御が行われるので、単純なデータの蓄積を行うような遊技機に比べて、より複雑な演出を実行することができる。それゆえ、本実施形態では、演出効果をより一層高めることが可能となる。
また、本実施形態のランプ(LED)制御手法では、上述のように、各チャンネルにおいて、再生チャンネル及び拡張チャンネルを設けることができ、その際、再生チェンネルの制御部位の範囲と、拡張チャンネルの制御部位の範囲とが互いに重ならないようにチャンネルを分割して、再生チャンネル及び拡張チャンネルが設定される。そして、拡張チャンネルの動作を制御するシーケンサーは、再生チャンネルの動作を制御するシーケンサーとは別個に設けられる。
このような構成を設けることにより、本実施形態では、1つのチャンネルにおいて、2チャンネル分のLEDアニメーションを同時に再生することができ、且つ、各LEDアニメーションを独立して制御することができる。それゆえ、本実施形態において、拡張チャンネルを使用したときには、再生チャンネルのみでLEDアニメーションを再生する場合に比べて、より多くのLED281を用いて、より複雑なLEDアニメーション(ランプ点灯パターン)の再生が可能なり、遊技に対する遊技者の興趣を高めることができる。
さらに、本実施形態のランプ(LED)制御手法では、上述のように、複数のLED281(演出装置)を1つのLEDドライバ280で制御することができる。また、各LEDドライバ280は、音声・LED制御回路220から送信されるLEDデータを自身で受信可能であるか否かを、自身のデバイスアドレス選択端子(DA0〜DA5)に設定されたデバイスアドレスに基づいて判別することができる。それゆえ、本実施形態では、音声・LED制御回路220は、各LEDドライバ280にSPIバスを介してデータを送信するだけの処理を行えばよいので、音声・LED制御回路220と各LEDドライバ280との間で処理を分散させることができ、音声・LED制御回路220の処理負荷を軽減することができる。
また、本実施形態では、各LEDドライバ280は、データテーブル情報に含まれる制御部位の情報に基づいて、演出に関わる信号(輝度値)を送信するLED281を特定するとともに、該LED281に送信する信号の内容も特定することもできる。この場合、音声・LED制御回路220及び各LEDドライバ280間のデータ通信における音声・LED制御回路220の処理は、データの送信処理のみとなり、データの送信速度を高速化することができる。その結果、音声・LED制御回路220及び各LEDドライバ280間におけるデータの送信速度が早くなると、LEDドライバ280の立ち上がりも早くなるので、演出制御処理の高速化を図ることができる。
さらに、本実施形態では、上述のように、各LEDドライバ280は、シリアル・データ受信時に、「1」を16回以上連続して受信検知した後(スリープモードの状態から立ち上がった後)、「0」を受信検知することによりデバイスアドレスの待ち受け状態となる。それゆえ、各LEDドライバ280は、LED281を制御するタイミング以外のタイミングにおいて、誤ってデバイスアドレスを受信しても演出制御を実行しないようにすることができ、より正確にLED281を制御することができる。
<各種可動役物の制御手法>
[役物制御手法の概要]
次に、上述した各種可動役物(演出装置)の演出動作の制御手法について説明する。
本実施形態では、可動役物の一動作パターン(一つの動作の開始から停止までの動作パターン)の実行期間が比較的短い場合、すなわち、可動役物の演出動作を比較的細かに制御する必要がある場合には、制御実行周期(割込処理の周期)が短い(約12msec)、音声・LED制御回路220によりその演出動作を制御する。なお、この際、音声・LED制御回路220は、ホスト制御回路210から入力される役物リクエスト(音声・LED制御回路220向けの役物リクエスト)に基づいて、役物制御を行う。
一方、可動役物の一動作パターンの実行期間が比較的長く、可動役物の演出動作を細かに制御する必要がない場合には、制御実行周期が長い(約33msec)、ホスト制御回路210によりその演出動作を制御する。なお、この際、ホスト制御回路210は、ホスト制御回路210内で行う役物制御に関する処理間において受け渡される役物リクエスト(ホスト制御回路210向けの役物リクエスト)に基づいて、役物制御を行う。
なお、可動役物の1つの演出動作(演出態様)は、通常、複数の動作パターン(個別動作態様)をつなぎ合わせることで構成される。それゆえ、1つの演出動作に含まれる全ての動作パターンが、細かな演出動作が求められるような内容である場合には、該演出動作は全て、音声・LED制御回路220により制御される。一方、1つの演出動作に含まれる全ての動作パターンが、細かな演出動作が求められない内容である場合には、該演出動作は全て、ホスト制御回路210により制御される。すなわち、本実施形態の役物制御手法では、同じ可動役物に対する役物制御であっても、実行される役物演出の内容に応じて、その演出動作の制御実行周期を適宜変更することができる。
また、1つの演出動作に含まれる複数の動作パターンのうちの一部に、細かな演出動作が求められる動作パターンが含まれる場合には、その細かな演出動作が求められる動作パターンの演出動作は、音声・LED制御回路220により制御され、その他の動作パターンの演出動作は、ホスト制御回路210により制御される。
この場合、1つの演出動作の中で、制御系統を切り替える必要があるが、この切り替え制御は、例えば、役物リクエストに切り替えのタイミング情報などを含ませ、その情報に基づいて切り替え動作を行ってもよい。また、例えば、切り替え動作を行う直前の動作パターンが終了した時点で、該直前の動作パターンの動作制御を行った一方の制御回路(ホスト制御回路210及び音声・LED制御回路220の一方)から他方の制御回路(ホスト制御回路210及び音声・LED制御回路220の他方)に、切り替え指令に対応するコマンドを送信し、各制御回路が、この制御回路間のコマンドの通信を契機として、制御系統の切り替え動作を行ってもよい。
なお、本実施形態では、可動役物の動作パターンが、細かな演出動作が求められる動作パターンであるか否かの判定処理は行わず、各動作パターンをホスト制御回路210及び音声・LED制御回路220のどちらで制御するかは、設計段階において予め決定されている。そして、本実施形態では、ホスト制御回路210で制御する動作パターンの励磁データと、音声・LED制御回路220で制御する動作パターンの励磁データとをそれぞれ別個に設ける。なお、ホスト制御回路210で制御する動作パターンの励磁データは、ホスト制御回路210の内部で生成されたホスト制御回路210向けの役物リクエストにセット(設定)され、音声・LED制御回路220で制御する動作パターンの励磁データは、ホスト制御回路210の内部で生成された音声・LED制御回路220向けの役物リクエストにセット(設定)される。
上述した本実施形態の役物制御手法を採用した場合、例えば、次のような各種効果が得られる。
例えば、可動役物の一動作パターンの実行時間が50msecである場合(一動作パターンの実行期間が比較的短い場合)、制御実行周期が約33msecであるホスト制御回路210でその演出動作を制御すると、ホスト制御回路210では約33msec間隔(約33msecの倍数)でしか制御することができないので、この演出動作を1回の制御実行処理で制御することなる。この場合、約33msecの制御処理期間で50msecの動作を制御(表現)することになるので、制御された演出動作の本来の動作からのズレが大きくなり、役物演出において遊技者に違和感を与える可能性がある。
しかしながら、制御実行周期が約12msecである音声・LED制御回路220でこのような一動作パターンを制御すると、4回の制御実行処理でその演出動作を制御することなる。この場合、約48msecの制御処理期間で50msecの動作を制御(表現)することになるので、制御された演出動作の本来の動作からのズレが小さくなり、役物演出において遊技者に違和感を与える可能性が小さくなる。
なお、可動役物の種別、可動役物による演出内容に関係なく、役物制御を全て、音声・LED制御回路220で行う手法も考えられるが、この場合、無駄な処理時間が増大し、副制御回路200全体の制御負荷が増大する可能性もある。それに対して、本実施形態のように、可動役物の演出内容に応じて、制御回路を適宜変更した場合にはこのような問題の発生も抑制することができる。
すなわち、本実施形態の役物制御手法では、細かな演出制御を行うことができ、これにより、演出のクオリティを保つことができるとともに、副制御回路200全体の制御負担の軽減させることができる。
[各可動役物(モータ)の駆動手法]
次に、図60を参照しながら、パチンコ遊技機1に設けられた各可動役物(モータ)の駆動手法の概要を説明する。なお、図60は、役物群30内の各可動役物(モータ)を駆動する際のデータフロー図である。
本実施形態では、ホスト制御回路210内において役物リクエストが生成(取得)されると、可動役物による演出の内容に応じて、ホスト制御回路210及び/又は音声・LED制御回路220は、図60に示すように、可動役物(例えば、第1剣役物31、第2剣役物32、シャッタ役物33等)を駆動するためのモータ272(ステッピングモータ)の励磁データをI2Cコントローラ261を介してモータコントローラ270内のモータドライバ271(駆動制御手段)に送信する。なお、可動役物が複数のモータ272により駆動される場合や、本実施形態のように可動役物が複数ある場合には、各モータ272に対応するモータドライバ271が設けられる。
具体的には、可動役物の一動作パターンの実行期間が比較的短い場合、すなわち、可動役物の演出動作を比較的細かに制御する必要がある場合には、まず、ホスト制御回路210(制御実行周期約33msec)から音声・LED制御回路220(制御実行周期約12msec)に役物リクエストが出力される。そして、音声・LED制御回路220は、入力された役物リクエストに基づいて、励磁データをI2Cコントローラ261を介して対応するモータドライバ271(可動役物のモータ272)に出力する。
一方、可動役物の一動作パターンの実行期間が比較的長く、可動役物の演出動作を細かに制御する必要がない場合には、ホスト制御回路210はその内部で生成された役物リクエストに基づいて、励磁データをI2Cコントローラ261を介して対応するモータドライバ271(可動役物のモータ272)に出力する。
さらに、可動役物の演出内容が、比較的細かな制御が必要となる内容、及び、細かな制御が必要でない内容の両方を含む場合、励磁データは、ホスト制御回路210及び音声・LED制御回路220の両方からI2Cコントローラ261に出力される。すなわち、この場合には、可動役物による演出動作は、ホスト制御回路210及び音声・LED制御回路220の両方により制御される。
なお、この際、ホスト制御回路210の制御対象となるモータドライバ271(モータ272)が、音声・LED制御回路220の制御対象となるそれと異なる場合には、ホスト制御回路210は、制御対象となるモータドライバ271に対応する励磁データを出力し、それと同時に、音声・LED制御回路220は、制御対象となるモータドライバ271に対応する励磁データを出力する。例えば、後述の役物演出の動作例(スペシャル演出E〜G)で説明するように、剣役物の演出動作をホスト制御回路210で制御し、シャッタ役物33を音声・LED制御回路220で制御するような場合には、ホスト制御回路210は、剣役物を駆動制御するモータドライバ271に剣役物用の励磁データを出力し、それと同時に、音声・LED制御回路220は、シャッタ役物33を駆動制御するモータドライバ271にシャッタ役物用の励磁データを出力する。
一方、ホスト制御回路210の制御対象となるモータドライバ271(モータ272)が、音声・LED制御回路220の制御対象となるそれと同じである場合、該モータ272(可動役物)による演出の実行演出期間において、比較的細かな制御が必要となる演出内容の実行期間には、該実行期間の励磁データが音声・LED制御回路220からモータドライバ271(モータ272)に出力され、その他の演出内容の実行期間には、該実行期間の励磁データがホスト制御回路210からモータドライバ271(モータ272)に出力される。例えば、後述の役物演出の動作例(スペシャル演出H)で説明するように、剣役物の演出内容に、剣役物の揺動動作(短い周期で振動させる動作)が含まれているような場合には、剣役物の揺動動作の実行期間には、該実行期間の励磁データが音声・LED制御回路220からモータドライバ271(モータ272)に出力され、その他の演出動作の実行期間には、該実行期間の励磁データがホスト制御回路210からモータドライバ271(モータ272)に出力される。
そして、モータドライバ271は、入力された励磁データ(駆動信号)を、接続されているモータ272(駆動手段)に出力する。これにより、対応する可動役物(例えば、第1剣役物31、第2剣役物32、シャッタ役物33等)が駆動される。
[制御回路及び可動役物間の接続構成]
ホスト制御回路210又は音声・LED制御回路220と、モータコントローラ270(モータドライバ271)との間は、I2Cバスで接続されているので、両者間ではI2C方式で信号(励磁データ)の送受信が行われる。
ここで、図61を参照しながら、ホスト制御回路210又は音声・LED制御回路220とモータドライバ271との間におけるI2Cバスを介した接続構成をより詳細に説明する。図61は、ホスト制御回路210又は音声・LED制御回路220とモータドライバ271との間におけるI2Cバスを介した接続構成図であり、図61には、複数のモータドライバ271が設けられている例を示す。すなわち、図61には、複数のモータ272により可動役物が駆動制御される場合、又は、複数の可動役物が駆動制御される場合の接続構成例を示す。
ホスト制御回路210又は音声・LED制御回路220とモータドライバ271との間では、上述のように、I2Cバスにより接続されているので、シリアル・クロック(SCL)の信号配線と、シリアル・データ(SDA)の信号配線とが別配線で設けられる。そして、ホスト制御回路210又は音声・LED制御回路220(マスタ)のシリアル・クロック信号の出力端子(SCL)は、各モータドライバ271(スレーブ)のシリアル・クロック信号の入力端子(SCL)に接続され、ホスト制御回路210又は音声・LED制御回路220のシリアル・データの入出力端子(SDA)は、各モータドライバ271のシリアル・データの入出力端子(SDA)に接続される。すなわち、本実施形態では、複数のモータドライバ271(スレーブ)がホスト制御回路210又は音声・LED制御回路220(マスタ)に対して並列接続される。
本実施形態では、ホスト制御回路210又は音声・LED制御回路220と各モータドライバ271との間において、シリアル・クロック信号の通信形態は、ホスト制御回路210又は音声・LED制御回路220から各モータドライバ271に一方的に送信する一方向通信となる。一方、シリアル・データの通信形態は、ホスト制御回路210又は音声・LED制御回路220と各モータドライバ271との間において互いにシリアル・データを入出力し合うことが可能な双方向通信となる。
各モータドライバ271(スレーブ)は、ホスト制御回路210又は音声・LED制御回路220(マスタ)から入力される、シリアル・クロック信号に基づいて、シリアル・データの入出力制御を行う。また、各モータドライバ271(スレーブ)には固有のアドレスが割り当てられており、ホスト制御回路210又は音声・LED制御回路220(マスタ)は、シリアル・データの送信先のモータドライバ271のアドレスを指定してシリアル・データを送信する。
<可動役物による各種演出動作例>
次に、本実施形態のパチンコ遊技機1において実行される、第1剣役物31、第2剣役物32及びシャッタ役物33を用いた各種演出の動作例を具体的に説明する。
[剣役物による各種演出動作]
本実施形態では、図19に示す変動演出テーブルを参照した抽選により、「スペシャル演出E」〜「スペシャル演出H」と称する演出のいずれかが決定された場合、第1剣役物31、第2剣役物32及びシャッタ役物33を用いた役物演出が実行される。そこで、まず、剣役物を用いた演出動作の一例として、「スペシャル演出E」〜「スペシャル演出H」と称する演出において実行される第1剣役物31及び第2剣役物32の演出動作について説明する。
なお、各剣役物を用いた演出における各剣役物の回転角度や回転速度などの動作態様は、以下に説明する例に限定されず、例えば演出内容等に応じて適宜設定される。また、第1剣役物31及び第2剣役物32の動作順序もまた、以下に説明する例に限定されず、例えば演出内容等に応じて適宜設定される。
(1)スペシャル演出E
まず、図62A〜図62Cを参照して、スペシャル演出Eにおいて実行される剣役物の演出(移動演出)動作を説明する。図62A〜図62Cは、スペシャル演出Eにおいて実行される剣役物の演出動作フローを示す図であり、各図は、遊技盤12の概略正面図である。なお、スペシャル演出Eは、2つの剣役物のうち、第1剣役物31のみが駆動される演出である。
スペシャル演出Eが開始されると、第1剣役物31は、その柄部を回転中心として、初期位置(特定の位置:図62Aの状態)から逆回転方向(遊技者側から見て反時計回り方向)に回転駆動される。これにより、ガラスドア4の上枠部の裏側に隠れていた第1剣役物31の第1剣状部材31aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第1剣役物31は、所定ステップ数、逆回転方向に回転駆動され停止する(所定の位置:図62Bの状態)。図62Bに示す例では、第1剣役物31(第1剣状部材31a)は初期位置から約45度回転した位置で停止する。この結果、第1剣役物31の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。
次いで、第1剣役物31が図62Bの状態で所定時間停止した後、第1剣役物31は、その停止位置から正回転方向(遊技者側から見て時計回り方向)に回転駆動される。その後、第1剣役物31(第1剣状部材31a)が初期位置まで戻されると、第1剣役物31の回転駆動が停止され(図62Cの状態)、スペシャル演出Eにおける剣役物の演出(移動演出)動作が終了する。
(2)スペシャル演出F
次に、図63A〜図63Cを参照して、スペシャル演出Fにおいて実行される剣役物の演出(移動演出)動作を説明する。図63A〜図63Cは、スペシャル演出Fにおいて実行される剣役物の演出動作フローを示す図であり、各図は、遊技盤12の概略正面図である。なお、スペシャル演出Fは、2つの剣役物のうち、第2剣役物32のみが駆動される演出である。
スペシャル演出Fが開始されると、第2剣役物32は、その柄部を回転中心として、初期位置(図63Aの状態)から逆回転方向に回転駆動される。これにより、ガラスドア4の一方の側枠部(図63Aでは遊技者側から見て左側の側枠部)の裏側に隠れていた第2剣役物31の第2剣状部材32aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第2剣役物32は、特定ステップ数、逆回転方向に回転駆動され停止する(図63Bの状態)。図63Bに示す例では、第2剣役物32(第2剣状部材32a)は初期位置から約45度回転した位置で停止する。この結果、第2剣役物32の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。
次いで、第2剣役物32が図63Bの状態で所定時間停止した後、第2剣役物32は、その停止位置から正回転方向に回転駆動される。その後、第2剣役物32(第2剣状部材32a)が初期位置まで戻されると、第2剣役物32の回転駆動が停止され(図63Cの状態)、スペシャル演出Fにおける剣役物の演出(移動演出)動作が終了する。
(3)スペシャル演出G
次に、図64A〜図64C及び図65A〜図65Bを参照して、スペシャル演出Gにおいて実行される剣役物の演出(移動演出)動作を説明する。図64A〜図64C及び図65A〜図65Bは、スペシャル演出Gにおいて実行される剣役物の演出動作フローを示す図であり、各図は、遊技盤12の概略正面図である。なお、スペシャル演出Gは、第1剣役物31及び第2剣役物32の両方が駆動される演出である。
スペシャル演出Gが開始されると、まず、第1剣役物31が、その柄部を回転中心として、初期位置(図64Aの状態)から逆回転方向に回転駆動される。これにより、ガラスドア4の上枠部の裏側に隠れていた第1剣役物31の第1剣状部材31aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第1剣役物31は、所定ステップ数、逆回転方向(反時計回り方向)に回転駆動され停止する(図64Bの状態)。図64Bに示す例では、第1剣役物31(第1剣状部材31a)は初期位置から約45度回転した位置で停止する。この結果、第1剣役物31の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。その後、第1剣役物31の停止状態が維持される。
次いで、第2剣役物32が、その柄部を回転中心として、初期位置(図64Bの状態)から逆回転方向に回転駆動される。これにより、ガラスドア4の一方の側枠部(図64Bでは遊技者側から見て左側の側枠部)の裏側に隠れていた第2剣役物31の第2剣状部材32aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第2剣役物32は、特定ステップ数、逆回転方向に回転駆動され停止する(図64Cの状態)。図64Cに示す例では、第2剣役物32(第2剣状部材32a)は初期位置から約45度回転した位置で停止する。この結果、第2剣役物32の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。スペシャル演出Gでは、この時点において、第1剣役物31の剣先部と第2剣役物32の剣先部とが互いに接近した状態が生成されるが、両者が互いに接触することはない。また、第2剣役物32は第1剣役物31より軽い役物であるので、スペシャル演出Gでは、この第2剣役物32の回転移動は、第1剣役物31のそれより高速動作で実行される。
次いで、第1剣役物31の剣先部と第2剣役物32の剣先部とが互いに接近した状態が所定時間、維持される(図65Aの状態)。そして、図65Aの状態で所定時間が経過した後、第1剣役物31及び第2剣役物32は、ともに、その停止位置から正回転方向に回転駆動される。すなわち、第1剣役物31を初期位置に戻す動作、及び、第2剣役物32を初期位置に戻す動作が開始される。なお、この例では、第1剣役物31を初期位置に戻す動作と、第2剣役物32を初期位置に戻す動作とを同時に開始する例を説明するが、本発明はこれに限定されず、第1剣役物31及び第2剣役物32の一方を初期位置に戻す動作を行った後、他方を初期位置に戻す動作を行ってもよい。
その後、第1剣役物31(第1剣状部材31a)及び第2剣役物32(第2剣状部材32a)がそれぞれ対応する初期位置まで戻されると、第1剣役物31及び第2剣役物32のそれぞれの回転駆動が停止され(図65Bの状態)、スペシャル演出Gにおける剣役物の演出(移動演出)動作が終了する。
(4)スペシャル演出H
次に、図66A〜図66C及び図67A〜図67Bを参照して、スペシャル演出Hにおいて実行される剣役物の演出(移動演出)動作を説明する。図66A〜図66C及び図67A〜図67Bは、スペシャル演出Hにおいて実行される剣役物の演出動作フローを示す図であり、各図は、遊技盤12の概略正面図である。なお、スペシャル演出Hは、第1剣役物31及び第2剣役物32の両方が駆動される演出である。
スペシャル演出Hが開始されると、まず、第1剣役物31(第1の可動体)が、その柄部を回転中心として、初期位置(第1の特定の位置:図66Aの状態)から逆回転方向に回転駆動される。これにより、ガラスドア4の上枠部の裏側に隠れていた第1剣役物31の第1剣状部材31aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第1剣役物31は、所定ステップ数、逆回転方向に回転駆動され停止する(第1の所定の位置:図66Bの状態)。図66Bに示す例では、第1剣役物31(第1剣状部材31a)は初期位置から約45度回転した位置で停止する。この結果、第1剣役物31の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。その後、第1剣役物31の停止状態が維持される。
次いで、第2剣役物32(第2の可動体)が、その柄部を回転中心として、初期位置(第2の特定の位置:図66Bの状態)から逆回転方向に回転駆動される。これにより、ガラスドア4の一方の側枠部(図66Bでは遊技者側から見て左の側枠部)の裏側に隠れていた第2剣役物31の第2剣状部材32aが遊技領域12a上に現れる(遊技者に視認可能になる)。
その後、第2剣役物32は、特定ステップ数、逆回転方向に回転駆動され停止する(第2の所定の位置:図66Cの状態)。図66Cに示す例では、第2剣役物32(第2剣状部材32a)は初期位置から約45度回転した位置で停止する。この結果、第2剣役物32の剣先部が、表示装置13の表示領域13a(表示画面)の略中央の位置まで回転移動して停止する。スペシャル演出Hでは、この時点において、第1剣役物31の剣先部と第2剣役物32の剣先部とが互いに接近した状態が生成されるが、両者が互いに接触することはない。また、スペシャル演出Hでは、この第2剣役物32の回転移動は、第1剣役物31のそれより高速動作で実行される。
次いで、第1剣役物31の剣先部と第2剣役物32の剣先部とが互いに接近した状態(図66Cの状態)において、各剣役物を、その回転方向に沿って、比較的小さな回転角度で振動させる動作(剣先部を揺らすような動作:以下、「揺動動作」という)を行う(図67Aの状態)。
具体的には、揺動動作では、各剣役物を、比較的小さな回転角度(ステップ数)で正回転方向に回転移動させる動作と、比較的小さな回転角度(ステップ数)で逆回転方向に回転移動させる動作とを交互に所定回数繰り返す動作が行われる。このような動作を行うことにより、第1剣役物31及び第2剣役物32が互いにつばぜり合いを行っているような演出動作が実現される。なお、本実施形態では、この揺動動作を行った場合、図67Aに示すように、第1剣役物31の剣先部の移動経路の一部が、第2剣役物32の剣先部の移動経路の一部と重なることになるが、この揺動動作では、両方の剣先部が互いに接触しないように、第1剣役物31及び第2剣役物32の演出動作をリンクさせて制御する。
そして、図67Aに示す各剣役物の揺動動作を所定時間行った後、各剣役物を停止させる。その後、第1剣役物31及び第2剣役物32は、ともに、正回転方向に回転駆動される。すなわち、第1剣役物31を初期位置に戻す動作、及び、第2剣役物32を初期位置に戻す動作が開始される。なお、この例では、第1剣役物31を初期位置に戻す動作と、第2剣役物32を初期位置に戻す動作とを同時に開始する例を説明するが、本発明はこれに限定されず、第1剣役物31及び第2剣役物32の一方を初期位置に戻す動作を行った後、他方を初期位置に戻す動作を行ってもよい。
その後、第1剣役物31(第1剣状部材31a)及び第2剣役物32(第2剣状部材32a)がそれぞれ対応する初期位置まで戻されると、第1剣役物31及び第2剣役物32のそれぞれの回転駆動が停止され(図67Bの状態)、スペシャル演出Hにおける剣役物の演出(移動演出)動作が終了する。
なお、上述した剣役物の演出動作は、特別図柄の1回の変動期間の中で全て行われてもよいし、剣役物による演出が決定された特別図柄の変動からそれ以降の特別図柄の変動の期間(すなわち、複数回の特別図柄の変動の期間)に跨って行われてもよい。また、上述した剣役物の演出動作は、1回の始動入賞に基づく特別図柄の変動期間において、装飾図柄により擬似的に行われる複数回の変動動作(いわゆる「擬似連」と呼ばれる動作)に合わせて実行されてもよい。
さらに、複数個の保留球が存在し、且つ、複数個の保留球の中の所定の保留球で上述した剣役物による演出が決定された場合には、複数個の保留球により発生する複数回の変動の期間に跨って、上述した剣役物の演出動作を実行してもよい。例えば、3個の保留球が存在する場合、1個目の保留球に基づく変動において、図66A〜図66Cで説明した第1剣役物31及び第2剣役物32による演出動作を行い、2個目の保留球に基づく変動において、図67A及び図67Bで説明した第1剣役物31及び第2剣役物32による演出動作を行い、3個目の保留球に基づく変動において、再度、図67A及び図67Bで説明した第1剣役物31及び第2剣役物32による演出動作を行ってもよい。
また、上述した剣役物による演出動作及び後述のシャッタ役物による演出動作では、可動体(剣役物、パネル部材)による1回の演出が終了する度に、可動体を初期位置(待機位置)に戻す例を説明するが、本発明はこれに限定されず、1回の演出が終了する度に、可動体を初期位置(待機位置)に戻さないようにしてもよい。例えば剣役物等の可動体を、複数の変動に跨って初期位置(待機位置)に戻さずに、遊技者に視認可能となる位置(特定の演出位置)に配置するような演出を行ってもよい。なお、このような演出を行う場合、演出期間中の途中の変動開始時(変動終了時)において、可動体が初期位置(待機位置)存在するか否かの確認制御は行わない構成にする。
[シャッタ役物による演出動作]
本実施形態では、上述したスペシャル演出E〜スペシャル演出Hのそれぞれにおいて、上述した剣役物による演出とともに、シャッタ役物33による演出も行われる。ここでは、スペシャル演出E〜スペシャル演出Hのそれぞれにおいて行われ得るシャッタ役物33による演出動作の一例として、「シャッタ開閉演出」及び「シャッタ揺動演出」と称する演出の動作について説明する。
なお、シャッタ役物33による演出では、シャッタ役物33の裏面側に配置された複数のLED35の発光演出も実行される。なお、この複数のLED35による発光演出の制御は、上記図36〜図59を用いて説明したLED281の発光制御と同様にして行われるが、この際、シャッタ役物33によるパネル部材の回転動作パターンと複数のLED35による発光パターンとが同期するように制御される。
(1)シャッタ開閉演出
まず、図68A〜図68Cを参照して、シャッタ開閉演出におけるシャッタ役物33の動作について説明する。図68A〜図68Cは、シャッタ開閉演出におけるシャッタ役物33の動作フローを示す図である。なお、各図中の左図は、シャッタ役物33を遊技者側から見たシャッタ役物33の正面図であり、右図は、シャッタ役物33の第3回転機構部33cの設置側とは反対側から見たシャッタ役物33の側面図である。
シャッタ役物33によるシャッタ開閉演出が開始されると、まず、シャッタ役物33の第1パネル部材33a及び第2パネル部材33bのそれぞれが、その回転軸A5を中心として、初期位置(図68Aの状態:各パネル部材によりシャッタ役物用開口部34が閉じられた状態)から一方の回転方向(図68Bの右図上で時計回り方向(矢印A6の方向))に回転駆動される(図68Bの状態)。これにより、各パネル部材の裏面側に配置された複数のLED35の一部の前面が開放される。
図68Bの状態は、シャッタ役物33の各パネル部材を初期位置から一方の回転方向(図68B中の矢印A6の方向)に約45度回転させた状態であり、この状態では、第1パネル部材33aの裏面側に配置された上段のLED群(横一列に配置された所定数のLED35で構成される)、及び、第2パネル部材33bの裏面側に配置された下段のLED群の前面が開放される。この結果、これらのLED群からの光が、シャッタ役物用開口部34を介して遊技者側に射出される。
次いで、第1パネル部材33a及び第2パネル部材33bは、初期位置から一方の回転方向(矢印A6の方向)に約90度回転した位置で停止する(図68Cの状態)。
これにより、図68Cに示すように、各パネル部材の裏面側に配置された全てのLED35の前面が開放された状態となる。すなわち、図68Cに示す例では、第1パネル部材33aの裏面側に配置された上段及び下段のLED群、並び、第2パネル部材33bの裏面側に配置された上段及び下段のLED群の前面が開放される。その結果、全てのLED35から光が、シャッタ役物用開口部34を介して遊技者側に射出される。
上述したシャッタ(各パネル部材)を開ける演出動作では、各パネル部材の上記回転動作に伴い、複数のLED35の前面の開放領域が徐々に大きくなるので、シャッタ役物用開口部34(シャッタ役物33の領域)から外部に射出される光量が徐々に大きくなる。
次いで、第1パネル部材33a及び第2パネル部材33bは、図68Cの停止位置で所定時間停止し、その後、該停止位置から一方の回転方向(図68B中の矢印A6の方向)又はそれとは逆の回転方向に回転駆動される。その後、各パネル部材が初期位置(図68Aの状態)に戻ると、各パネル部材の回転駆動が停止される。この結果、第1パネル部材33a及び第2パネル部材33bによりシャッタ役物用開口部34が閉じられ、複数のLED35からの光が各パネル部材により遮蔽される。
上述したシャッタ(各パネル部材)を閉じる演出動作では、各パネル部材の上述した回転動作に伴い、複数のLED35の前面の開放領域が徐々に小さくなるので、シャッタ役物用開口部34(シャッタ役物33の領域)から外部に射出される光量が徐々に小さくなる。
本実施形態のシャッタ開閉演出では、このようにして第1パネル部材33a及び第2パネル部材33bによる回転演出及びLED35による発光(光射出)演出が行われる。
(2)シャッタ揺動演出
次に、図69A〜図69Bを参照して、シャッタ揺動演出におけるシャッタ役物33の動作について説明する。図69A〜図69Bは、シャッタ揺動演出におけるシャッタ役物33の動作フローを示す図である。なお、各図中の左図は、シャッタ役物33を遊技者側から見たシャッタ役物33の正面図であり、右図は、シャッタ役物33の第3回転機構部33cの設置側とは反対側から見たシャッタ役物33の側面図である。
シャッタ役物33によるシャッタ揺動演出が開始されると、まず、上述したシャッタ開閉演出と同様にして、第1パネル部材33a及び第2パネル部材33bを、初期位置から約90度回転した位置で停止させる。すなわち、図68Cの状態(以下、開放状態という)が生成される。
次いで、第1パネル部材33a及び第2パネル部材33bを、開放状態の停止位置付近で、その回転方向に沿って所定の回転角度で振動させる動作(各パネル部材を揺らす動作(揺動動作))を実行する。
具体的には、まず、シャッタ役物33の各パネル部材を、開放状態の停止位置から一方の回転方向(図69Aの右図中の矢印A6の方向)に所定の回転角度(ステップ数)で回転駆動させて停止させる(図69Aの状態)。図69Aに示す例では、シャッタ役物33の各パネル部材を、開放状態の停止位置から一方の回転方向(矢印A6の方向)に約45度回転させた位置で停止させる。
次いで、シャッタ役物33の各パネル部材を、他方の回転方向(一方の回転方向とは逆の回転方向:図69Bの右図中の矢印A7の方向)に特定の回転角度(ステップ数)で回転駆動させて停止させる(図69Bの状態)。図69Bに示す例では、シャッタ役物33の各パネル部材を、図69Aの状態の停止位置から他方の回転方向(矢印A7の方向)に約90度回転させた位置で停止させる。
その後、各パネル部材を、一方の回転方向(矢印A6の方向)に回転駆動させる動作と、他方の回転方向(矢印A7の方向)に回転駆動させる動作とを交互に繰り返し、図69Aに示す各パネル部材の停止状態、及び、図69Bに示す各パネル部材の停止状態を交互に発生させる。
そして、この各パネル部材の揺動動作を所定時間実行し、該揺動動作が終了した後、上述したシャッタ開閉演出と同様にして、第1パネル部材33a及び第2パネル部材33bを初期位置(図68Aの状態)に戻す。
なお、図69A〜図69Bに示す各パネル部材の揺動動作の実行期間では、図69Aの状態と図69Bの状態との間には、図68Cの状態が発生するので、揺動動作の実行期間中のLED35の発光(光射出)演出では、シャッタ役物用開口部34(シャッタ役物33の領域)から外部に射出される光量が大きくなる演出態様(図68Cの状態)と、小さくなる演出態様(図69Aの状態又は図69Bの状態)とが交互に繰り返し発生する。
本実施形態のシャッタ揺動演出では、このようにして第1パネル部材33a及び第2パネル部材33bによる回転演出及びLED35による発光(光射出)演出が行われる。
[各種可動役物の制御例]
本実施形態では、上述したスペシャル演出E〜Hにおける各可動役物の演出動作も、上述した本実施形態の各種可動役物の制御手法が適用される。以下では、上述したスペシャル演出E〜Hにおける各可動役物の制御動作例を説明する。
(1)スペシャル演出E〜Gにおける制御動作例
スペシャル演出E〜Gのそれぞれにおいて行われる各剣役物の演出動作は、上述のように、主に、剣役物を初期位置から表示装置13の表示画面の前面まで回転移動させる動作と、剣役物を表示装置13の表示画面の前面から初期位置に回転移動させる動作とで構成される。これらの動作はいずれも、実行期間が比較的長い動作であり、細かな演出制御を必要しない内容の演出動作であるので、これらの動作は、制御実行期間が約33msecであるホスト制御回路210により制御される。
一方、スペシャル演出E〜Gのそれぞれにおいて実行される、シャッタ役物33の演出動作(シャッタ開閉演出及び/又はシャッタ揺動演出の動作)は、比較的高速な演出動作であり、細かな演出制御を必要とする内容の演出動作である。また、シャッタ役物33の各パネル部材は軽量であり、その回転動作には大きなトルクを必要としない。それゆえ、スペシャル演出E〜Gのそれぞれにおいて実行される、シャッタ役物33の演出動作は、制御実行期間が約12msecである音声・LED制御回路220により制御される。
ここで、図70に、スペシャル演出E〜Gのそれぞれにおける役物演出の制御フローを示す。
上述のように、スペシャル演出E〜Gのそれぞれでは、第1剣役物31及び第2剣役物32の演出動作は、ホスト制御回路210により制御され、シャッタ役物33の演出動作は、音声・LED制御回路220により制御される。それゆえ、スペシャル演出E〜Gのそれぞれでは、図70に示すように、ホスト制御回路210は、その内部で生成されたホスト制御回路210向けの役物リクエストに基づいて、剣役物用の励磁データを第1剣役物31及び第2剣役物32のそれぞれに出力する。一方、シャッタ役物33に対しては、音声・LED制御回路220が、ホスト制御回路210から入力された音声・LED制御回路220向けの役物リクエストに基づいて、シャッタ役物用の励磁データをシャッタ役物33に出力する。
(2)スペシャル演出Hにおける制御動作例
スペシャル演出Hにおいて行われる各剣役物の演出動作(所定の演出動作)は、上述のように、主に、剣役物を初期位置から表示装置13の表示画面の前面まで回転移動させる動作(第1の演出動作)と、各剣役物を揺動させる動作(第2の演出動作)と、剣役物を表示装置13の表示画面の前面から初期位置に回転移動させる動作とで構成される。
各剣役物のこれらの動作のうち、各剣役物の揺動動作は、実行期間が比較的短い動作パターンで構成され、細かな演出制御を必要とする内容の演出動作であるので、各剣役物の揺動動作は、制御実行期間が約12msecである音声・LED制御回路220により制御する。一方、各剣役物の揺動動作以外の動作はいずれも実行期間が比較的長い動作であり、細かな演出制御を必要しない内容の演出動作であるので、これらの動作は、制御実行期間が約33msecであるホスト制御回路210により制御される。
また、スペシャル演出Hにおいて実行される、シャッタ役物33の演出動作(シャッタ開閉演出及び/又はシャッタ揺動演出の動作)は、スペシャル演出E〜Gと同様に、比較的高速な演出動作であり、細かな演出制御を必要とする内容の演出動作である。それゆえ、スペシャル演出Hにおいても、シャッタ役物33の演出動作は、制御実行期間が約12msecである音声・LED制御回路220により制御される。
ここで、図71に、スペシャル演出Hにおける役物演出の制御フローを示す。
上述のように、スペシャル演出Hでは、第1剣役物31及び第2剣役物32の揺動動作は、音声・LED制御回路220により制御され、第1剣役物31及び第2剣役物32の揺動動作以外の動作は、ホスト制御回路210により制御される。それゆえ、スペシャル演出Hの実行期間中に実行される剣役物による演出の制御動作は、次の通りとなる。
まず、剣役物による演出において最初に行われる、各剣役物を初期位置から表示装置13の表示画面の前面まで回転移動させる動作(図66Aの状態から図66Cの状態に至る演出動作:演出動作A)では、図71に示すように、ホスト制御回路210が、その内部で生成されたホスト制御回路210向けの役物リクエストに基づいて、剣役物用の励磁データを第1剣役物31及び第2剣役物32のそれぞれに出力する。そして、この各剣役物の回転移動動作(演出動作A)が終了すると、制御系統はホスト制御回路210から音声・LED制御回路220に切り替わり、各剣役物の揺動動作(演出動作B)が開始される。
次いで、各剣役物の揺動動作(演出動作B)が開始されると、音声・LED制御回路220が、ホスト制御回路210から入力された音声・LED制御回路220向けの役物リクエストに基づいて、剣役物用の励磁データを第1剣役物31及び第2剣役物32のそれぞれに出力する。そして、この各剣役物の揺動動作(演出動作B)が終了すると、制御系統は音声・LED制御回路220からホスト制御回路210に切り替わり、各剣役物を表示装置13の表示画面の前面から初期位置に回転移動させる動作(演出動作C)が開始される。
次いで、各剣役物を表示装置13の表示画面の前面から初期位置に回転移動させる動作(演出動作C)が開始されると、ホスト制御回路210が、その内部で生成されたホスト制御回路210向けの役物リクエストに基づいて、剣役物用の励磁データを、第1剣役物31及び第2剣役物32のそれぞれに出力する。
また、スペシャル演出Hでは、上述のように、シャッタ役物33の演出動作は、音声・LED制御回路220により制御される。それゆえ、スペシャル演出Hにおけるシャッタ役物33による演出では、スペシャル演出Hの実行期間中、図71に示すように、音声・LED制御回路220が、ホスト制御回路210から入力された音声・LED制御回路220向けの役物リクエストに基づいて、シャッタ役物用の励磁データをシャッタ役物33に出力する。
なお、上記演出例では、シャッタ役物33の演出動作を音声・LED制御回路220のみで制御する例を説明したが、本発明はこれに限定されない。例えば、シャッタ役物33による演出の内容が、細かな演出制御を必要としない内容のみ(例えば、低速で回転動作するような演出のみ)である場合には、シャッタ役物33の演出動作をホスト制御回路210により制御してもよい。また、シャッタ役物33による演出内容に、細かな演出制御を必要とする内容及び細かな演出制御を必要としない内容の両方が含まれている場合には、前者の内容の演出動作を音声・LED制御回路220により制御し、後者の内容の演出動作をホスト制御回路210により制御するような構成にしてもよい。
なお、本実施形態では、可動役物の動作パターンの細かさに基づいて、可動役物の制御に用いる制御回路を切り替える手法を説明したが、本発明は限定されず、必要に応じて、次のような制御手法(制御回路の切替手法)を適宜用いてもよい。
例えば、図柄の変動時間などを考慮して、可動役物(可動体)の動作制御時間を一定期間に設定したい場合には、各制御回路の制御実行周期を整数倍し、そして、整数倍された時間が可動役物の所望の動作制御時間に最も近い値となる制御回路を用いて可動役物を制御する構成にしてもよい。
例えば、可動役物(可動体)の動作制御時間を50msにしたい場合、ホスト制御回路210の制御実行周期(33ms)を整数倍した時間の中で、意図する可動役物の動作制御時間(50ms)に最も近い値は、66ms(=33ms×2)となる。一方、音声・LED制御回路220の制御実行周期(12ms)を整数倍した時間の中で、意図する可動役物の動作制御時間に最も近い値は、48ms(=12ms×4)となる。それゆえ、この場合には、音声・LED制御回路220により、可動役物の演出動作を制御する。
しかしながら、例えば、可動役物(可動体)の動作制御時間を100msにしたい場合、ホスト制御回路210の制御実行周期(33ms)を整数倍した時間の中で、意図する可動役物の動作制御時間(100ms)に最も近い値は、99ms(=33ms×3)となる。一方、音声・LED制御回路220の制御実行周期(12ms)を整数倍した時間の中で、意図する可動役物の動作制御時間に最も近い値は、96ms(=12ms×8)となる。それゆえ、この場合には、ホスト制御回路210により、可動役物の演出動作を制御する。
このように、設定したい可動役物(可動体)の動作制御時間に基づいて、使用する制御回路を切り替える手法を採用した場合、副制御回路200内における処理負荷の分散及び低減を図ることができるだけでなく、開発者が意図する動作制御時間で可動役物の演出動作を制御することができる。
より具体的には、この制御手法(制御回路の切替手法)を用いた場合、開発者が意図する可動役物の動作制御時間が、制御実行周期の長い制御回路の制御実行時間の整数倍に近い時間であれば、制御実行周期の短い制御回路に比べて処理負荷が軽くなる制御回路で可動役物の制御を実行することができる。また、この制御手法を用いた場合、可動役物の動作制御時間が制御実行周期の長い制御回路では対応が難しくなる時間であっても、制御実行周期の短い制御回路でこのような状況に対応することができる。すなわち、この制御手法を用いた場合には、処理負荷の低減と、開発者が望む演出制御の実現とを両立することができる。
また、可動役物(可動体)の制御を行う際に、短期間で頻繁に可動役物を正方向及び逆方向に反復動作させると、可動役物の破損、脱調などが起こり、可動役物を意図したパターンで動作させることができなくなる場合がある。それゆえ、このような不具合を防止するために、可動役物(駆動手段)毎に、或いは、動作種別毎に、駆動時間の最小値(以下、「推奨駆動時間」という)を設定する場合がある。
この場合には、各制御部の実行周期を整数倍した時間の中から、推奨駆動時間を上回り、且つ、推奨駆動時間に最も近くなる時間が得られる制御部により可動役物(可動体)を駆動することが好ましい。例えば、可動役物(可動体)の推奨制御時間が98msに設定されている場合、ホスト制御回路210の制御実行周期(33ms)を整数倍した時間の中で、推奨駆動時間を上回り且つ推奨駆動時間に最も近い値は、99ms(=33ms×3)となる。一方、音声・LED制御回路220の制御実行周期(12ms)を整数倍した時間の中で、推奨駆動時間を上回り且つ推奨駆動時間に最も近い値は、108ms(=12ms×9)となる。それゆえ、この場合には、ホスト制御回路210により、可動役物の演出動作を制御する。
このように、可動役物(可動体)やその動作種別(動作パターン)に対して推奨駆動時間などの特定制御期間(閾値)が設定されている場合には、複数の制御部の中から可動役物の制御を行う制御部として、特定制御時間を超え且つ特定制御時間に最も近い制御時間で可動役物を制御可能な制御実行周期を有する制御部を用いることにより、可動役物及びその駆動手段(モータ等)の適切な保守を担保しつつ、開発者の意図する実行時間で可動役物による演出制御を行うことができる。
(3)スペシャル演出Hにおける励磁データの構成例
次に、図72及び図73を参照しながら、上述したスペシャル演出Hにおいて実行される各剣役物の演出動作に含まれる各種動作パターンの励磁データの構成について説明する。図72は、スペシャル演出Hにおいて実行される第1剣役物31の演出動作に含まれる各種動作パターンの励磁データの構成をまとめたテーブルであり、図73は、スペシャル演出Hにおいて実行される第2剣役物32の演出動作に含まれる各種動作パターンの励磁データの構成をまとめたテーブルである。なお、各テーブルでは、動作パターンの実行順に、各動作パターンの励磁データがまとめて配列されている。
なお、図72中の第1剣役物31の動作パターン1は、第1剣役物31を初期位置から表示装置13の表示画面の前面まで回転移動させて停止させる動作パターンに対応し、第1剣役物31の動作パターン10は、第1剣役物31を表示装置13の表示画面の前面から初期位置に回転移動させて停止させる動作パターンに対応する。また、第1剣役物31の動作パターン2〜9は、第1剣役物31を揺動動作させる動作パターンに対応する。図72に示す例では、動作パターン2〜9において回転方向が交互に4回反転しているので、第1剣役物31の揺動動作は、第1剣役物31の4回の振動動作により構成される。
また、図73中の第2剣役物32の動作パターン1は、第2剣役物32を初期位置から表示装置13の表示画面の前面まで回転移動させて停止させる動作パターンに対応し、第2剣役物32の動作パターン10は、第2剣役物32を表示装置13の表示画面の前面から初期位置に回転移動させて停止させる動作パターンに対応する。また、第2剣役物32の動作パターン2〜9は、第2剣役物32を揺動動作させる動作パターンに対応する。図73に示す例では、動作パターン2〜9において回転方向が交互に4回反転しているので、第2剣役物32の揺動動作は、第2剣役物32の4回の振動動作により構成される。
なお、この例では、上述のように、揺動動作における第1剣役物31の振動動作の回数が、第2剣役物32のそれと同じである例を説明するが、本発明はこれに限定されず、揺動動作における第1剣役物31の振動動作の回数が、第2剣役物32のそれと異なっていてもよい。
動作パターン毎(動作パターン1〜10)に、励磁データとして規定されている情報は、図72及び図73に示すように、モータの励磁方式、剣役物の回転方向、剣役物の動作速度、剣役物のステップ数及び剣役物の停止後励磁時間である。各情報の内容は、次の通りである。
(A)励磁方式
励磁方式は、各動作パターンにおいて採用される、可動役物を駆動するモータの励磁方式を示す情報である。励磁方式には、1相励磁方式を示す値「1」、2相励磁方式を示す値「2」、1−2相励磁方式を示す値「3」及び全相励磁方式を示す値「4」のいずれかがセットされる。
(B)回転方向
回転方向は、各動作パターンにおける可動役物(可動部材)の回転方向(移動方向)を示す情報である。回転方式には、正回転方向を示す値「1」、逆回転方向を示す値「2」及び回転無し(停止状態を保持)を示す値「3」のいずれかがセットされる。
(C)動作速度
動作速度は、各動作パターンにおける可動役物の移動速度を示す情報であるが、この情報は演出内容に応じて変化するので、図72及び図73では、動作パターン間において動作速度が同じであるか否かだけを示す。
スペシャル演出Hでは、例えば、第1剣役物31の動作パターン1の動作速度(「A」)は、第1剣役物31のその他の動作パターンの動作速度(「C」や「E」)と異なる速度にセットされるが、第1剣役物31の動作パターン2〜9内の各動作パターンの動作速度(「C」)は、互いに同じ値にセットされる。また、スペシャル演出Hでは、例えば、第2剣役物32の動作パターン1の動作速度(「F」)は、第2剣役物32のその他の動作パターンの動作速度(「H」や「E」)と異なる速度にセットされるが、第2剣役物32の動作パターン2〜9内の各動作パターンの動作速度(「H」)は、互いに同じ値にセットされる。なお、スペシャル演出Hでは、第2剣役物32の動作パターン1の動作速度(「F」)は、第1剣役物31の動作パターン1の動作速度(「A」)より早い速度に設定される。
(D)ステップ数
ステップ数は、各動作パターンにおける可動役物の移動回転角度を示す情報であるが、この情報は演出内容に応じて変化するので、図72及び図73では、動作パターン間においてステップ数が同じであるか否かだけを示す。
スペシャル演出Hでは、例えば、第1剣役物31の動作パターン1のステップ数(「B」)は、動作パターン10のそれと同じ値にセットされるが、動作パターン2〜9のステップ数(「D」)とは異なる値にセットされる。また、例えば、第1剣役物31の動作パターン2〜9内の各動作パターンのステップ数(「D」)は、互いに同じ値にセットされる。なお、第1剣役物31の動作パターン2〜9は、第1剣役物31を揺動動作させる動作パターンに対応するので、第1剣役物31の動作パターン1及び10のステップ数(「B」)は、第1剣役物31の動作パターン2〜9内の各動作パターンのステップ数(「D」)より大きくなる。
また、スペシャル演出Hでは、例えば、第2剣役物32の動作パターン1のステップ数(「G」)は、動作パターン10のそれと同じ値にセットされるが、動作パターン2〜9のステップ数(「I」)とは異なる値にセットされる。さらに、例えば、第2剣役物32の動作パターン2〜9内の各動作パターンのステップ数(「I」)は、互いに同じ値にセットされる。なお、第2剣役物32の動作パターン2〜9は、第2剣役物32を揺動動作させる動作パターンに対応するので、第2剣役物32の動作パターン1及び10のステップ数(「G」)は、第2剣役物32の動作パターン2〜9内の各動作パターンのステップ数(「I」)より大きくなる。
(E)停止後励磁時間
停止後励磁時間(駆動手段の駆動状況を示す所定のパラメータの閾値に関する情報)は、対応する動作パターンの動作が終了した後に継続してモータを励磁する(励磁電流を流す)時間である。この停止後励磁時間は、後述の図121に示す励磁時間監視処理で説明するように、エラー検知用のパラメータとなり、対応する動作パターンの動作が終了した後にこの停止後励磁時間を超えてもモータが励磁し続けられている(モータに励磁電流が流れ続けている)場合には、所定のエラー時処理(モータ停止処理)が行われる。すなわち、本実施形態では、動作パターン毎に、役物制御(モータ駆動制御)のエラー検知パラメータが含まれている。
停止後励磁時間には、12msecを示す値「1」、28msecを示す値「2」、60msecを示す値「3」、124msecを示す値「4」、508msecを示す値「5」及び1020msecを示す値「6」のいずれかがセットされる。なお、停止後励磁時間は、例えば、動作パターンにおける可動役物の演出態様(例えば、励磁時間の長短、励磁の強弱等)や、モータの特性及び耐久性などに応じて適宜設定される。
なお、図72に示す第1剣役物31の動作パターン1は、上述のように、第1剣役物31を初期位置から表示装置13の表示画面の前面まで回転移動させて停止させる動作パターンに対応する。また、第1剣役物31は、比較的大きな可動役物である。それゆえ、第1剣役物31の動作パターン1では、表示装置13の表示画面の前面(演出位置)で第1剣役物31を確実に停止させるために、図72に示すように、停止後励磁時間には比較的長い時間(「4」=124msec)がセットされる。
また、図72に示す第1剣役物31の動作パターン2〜9は、上述のように、第1剣役物31を揺動動作させる動作パターンに対応するので、動作パターン2〜9の各動作パターンでは、第1剣役物31の移動回転角度も小さく、動作速度もそれほど高く設定できない。それゆえ、第1剣役物31の動作パターン2〜9の各動作パターンでは、停止後励磁時間には短い時間(「2」=28msec)がセットされる。
さらに、図72に示す第1剣役物31の動作パターン10は、第1剣役物31を表示装置13の表示画面の前面から初期位置に回転移動させて停止させる動作パターンに対応するが、この動作パターンでは、第1剣役物31の最終的な停止位置(初期位置)は、遊技者から見えないので、第1剣役物31を確実に停止させる必要がない。それゆえ、動作パターン10では、動作パターン1の停止後励磁時間より短い停止後励磁時間(「3」=60msec)がセットされる。
また、図73に示す第2剣役物32の動作パターン1は、上述のように、第2剣役物32を初期位置から表示装置13の表示画面の前面まで回転移動させて停止させる動作パターンに対応する。なお、第2剣役物32は第1剣役物31より軽い役物であるが、スペシャル演出Hでは、上述のように、この第2剣役物32の動作パターン1の動作(回転移動動作)は、高速で行われる。それゆえ、第2剣役物32の動作パターン1では、表示装置13の表示画面の前面(演出位置)で第2剣役物32を確実に停止させるために、図73に示すように、停止後励磁時間には比較的長い時間(「4」=124msec)がセットされる。
また、図73に示す第2剣役物31の動作パターン2〜9は、上述のように、第2剣役物32を揺動動作させる動作パターンに対応するので、動作パターン2〜9の各動作パターンでは、第2剣役物32の移動回転角度も小さく、動作速度もそれほど高く設定できない。それゆえ、第2剣役物32の動作パターン2〜9の各動作パターンでは、停止後励磁時間には短い時間(「1」=28msec)がセットされる。なお、第2剣役物32は第1剣役物31より軽い役物であるので、第2剣役物32の揺動動作の動作パターンで設定される停止後励磁時間には、第1剣役物31の揺動動作の動作パターンで設定されるそれより、さらに短い値がセットされる。
さらに、図73に示す第2剣役物32の動作パターン10は、第2剣役物32を表示装置13の表示画面の前面から初期位置に回転移動させて停止させる動作パターンに対応するが、この動作パターンでは、第2剣役物32の最終的な停止位置(初期位置)は、遊技者から見えないので、第2剣役物32を確実に停止させる必要がない。それゆえ、動作パターン10では、動作パターン1の停止後励磁時間より短い停止後励磁時間(「3」=60msec)がセットされる。
図72及び図73では、各剣役物の動作パターン毎の励磁データを一つのテーブルにまとめて示したが、スペシャル演出Hでは、各剣役物の揺動動作時の制御系統がそれ以外の演出動作時の制御系統と異なるので、実際には、動作パターン2〜9を含む励磁データは、それ以外の動作パターンの励磁データ(動作パターン1及び10のデータを含む励磁データ)とは別個に設けられる。そして、スペシャル演出Hの演出制御を実行する際には、ホスト制御回路210向けの役物リクエストに動作パターン1及び10のデータを含む励磁データがセットされ、音声・LED制御回路220向けの役物リクエストに動作パターン2〜9を含む励磁データがセットされる。なお、これらの励磁データは、例えばホスト制御回路210内の内蔵ROM(不図示)等に格納される。
なお、図示を省略するが、第1剣役物31の動作パターン1と動作パターン2との間には、第2剣役物32が初期位置から表示装置13の表示画面の前面まで回転移動するまでの期間、停止状態を維持する動作パターン、すなわち、回転方向に回転無し「3」が規定された動作パターンが存在する。
また、ここでは、シャッタ役物33に供給される励磁データの構成については、図示しないが、シャッタ役物33に供給される励磁データの構成もまた、図72及び図73に示す各剣役物の励磁データと同様にして構成される。
<可動役物のエラー検知機能>
本実施形態のパチンコ遊技機1は、各可動役物が正常に作動しているか否かを検知し、エラー検知時には所定のエラー時処理を実行する各種エラー検知機能を備える。以下、本実施形態のパチンコ遊技機1が備えるエラー検知機能の一例を説明する。
[可動役物の復旧処理回数に基づくエラー検知機能]
本実施形態のパチンコ遊技機1では、可動役物が初期位置に存在すべき所定のタイミング(本実施形態では、特別図柄の変動表示開始時)で可動役物が初期位置に存在するか否かを判定し、可動役物が初期位置に存在しないと判定された場合には、可動役物を初期位置に戻す処理(復旧処理)を行う。そして、本実施形態のパチンコ遊技機1は、この復旧処理の連続実行回数に基づいてエラー時処理を行うエラー検知機能を備える。なお、このエラー検知機能の動作は、ホスト制御回路210により制御され、その制御動作は、具体的には、次のようにして行われる。
まず、ホスト制御回路210は、特別図柄の変動表示開始時(変動開始コマンド受信時)に、全ての可動役物が初期位置に存在するか否かを判別する。なお、この判別処理は、各可動役物に設けられた、初期位置検知用の検知装置(例えばフォトセンサ等)の検知結果に基づいて行う。
次いで、特別図柄の変動表示開始時(変動開始コマンド受信時)に、全ての可動役物が初期位置に存在しないと判別された場合には、ホスト制御回路210は、少なくとも初期位置に復帰していない可動役物に対して、該可動役物を初期位置に戻す処理(復旧処理)を1回行う。すなわち、本実施形態では、1回の特別図柄の変動表示期間(1回の遊技期間)において、可動役物の復旧処理を1回実行可能な構成とする。
次いで、可動役物の復旧処理を行っても、全ての可動役物が初期位置に存在しない場合には、ホスト制御回路210は、次回の特別図柄の変動表示開始時(変動開始コマンド受信時)に、再度、少なくとも初期位置に復帰していない可動役物に対して、復旧処理を行う。
なお、本実施形態では、このように可動役物の復旧処理が特別図柄の変動表示開始毎に連続して実行された場合、ホスト制御回路210は、その復旧処理の連続実行回数の更新処理(連続実行回数を1加算する処理)を行う。また、可動役物の復旧処理の連続実行回数は、サブワークRAM210aに設けられた後述の初期位置復旧カウンタにより計数される。
そして、可動役物の復旧処理を所定回数(例えば10回)行っても(復旧処理の連続実行回数が所定回数に到達しても)、全ての可動役物が初期位置に存在しない場合には、ホスト制御回路210は、可動役物にエラーが発生したと判断し、エラー時処理として、全ての可動役物を駆動するモータの動作を停止するとともに、役物リクエストの受け渡し処理を実行不可にする。
なお、本実施形態では、所定回数(例えば10回)の復旧処理が連続して実行される遊技期間(所定回数の特別図柄の変動表示期間)において復旧処理が施された可動役物が、同じ可動役物(モータ)でない場合にも、可動役物の復旧処理の連続実行回数を計数し、上述したエラー時処理を行う例を説明したが、本発明はこれに限定されない。例えば、所定回数の復旧処理が連続して実行される遊技期間において復旧処理が施された可動役物が、同じ可動役物(モータ)である場合にのみ、可動役物の復旧処理の連続実行回数を計数し、上述したエラー時処理を行うようにしてもよい。
上述した可動役物の復旧処理回数に基づくエラー検知機能の具体的な処理については、後述の図117に示す変動開始コマンド受信時役物処理、後述の図118に示す初期位置復旧カウンタ更新処理及び後述の図120に示す初期位置復旧確認処理において詳述する。また、上述した可動役物の復旧処理回数に基づくエラー検知機能を設けることにより、次のような効果が得られる。
特別図柄の変動表示開始時(変動開始コマンド受信時)に可動役物に不具合が発生した場合、当該特別図柄の変動表示開始時において上述したエラー時処理(全モータ停止等)を実行する手法も考えられる。しかしながら、この手法では、可動役物の不具合(可動役物が初期位置に復帰しない等)が、例えば、特別図柄の変動表示が複数回行われること(複数回の遊技が行われること)によりが解消される(可動役物が初期位置に復帰する)ような軽度の不具合である場合には、不必要なエラーを発生させることとなる。
それに対して、上述した本実施形態の可動役物の復旧処理回数に基づくエラー検知機能を用いると、可動役物に上述のような軽度の不具合が発生しても、可動役物の復旧処理の連続実行回数が所定回数(例えば10回)未満である遊技期間においては、エラーは発生しない。また、その遊技期間内に実行される可動役物の復旧処理により不具合が解消された場合には、上述したエラー時処理(全モータ停止等)も行われない。それゆえ、本実施形態では、上述した特別図柄の変動表示毎にエラー時処理(全モータ停止等)を実行可能にする機能を備えた遊技機のように、不必要なエラーは発生しない。
また、上述した本実施形態の可動役物の復旧処理回数に基づくエラー検知機能では、可動役物に不具合が発生していても、エラー時処理を行わない遊技期間が一定期間(所定回数(例えば10回)の復旧処理が実行される遊技期間)に限定されるので、例えば、可動役物の損傷などの重度の不具合発生も防止することができる。
[可動役物の励磁監視処理に基づくエラー検知機能]
本実施形態では、上述のように、各可動役物のモータを駆動するための励磁データには、動作パターン毎に、役物制御のエラー検知パラメータ(駆動手段の駆動状況を示す所定のパラメータの閾値に関する情報)として、停止後励磁時間が規定されている。そして、本実施形態のパチンコ遊技機1は、この停止後励磁時間に基づいて可動役物のエラーが発生したか否かを判別する機能を備える。なお、このエラー検知機能の動作は、ホスト制御回路210により制御され、その制御動作は、具体的には次のようにして行われる。
まず、ホスト制御回路210は、役物演出の制御時に、各可動役物の動作パターン毎に、該動作パターンの動作終了後に継続して可動役物が励磁し続けられる時間(以下、「励磁監視時間」という)を監視する。そして、所定の可動役物(モータ)において、動作パターン毎に監視されている励磁監視時間が対応する停止後励磁時間を超えた場合に、ホスト制御回路210は、所定の可動役物(モータ)においてエラーが発生したと判定し、エラー時処理として、全ての可動役物(モータ)又はエラー発生の可動役物(モータ)の動作を停止させる。なお、この可動役物の励磁監視処理に基づくエラー検知機能の具体的な処理については、後述の図121に示す励磁時間監視処理において詳述する。
また、本実施形態では、励磁時間監視処理においてエラーが発生した際に実行されるエラー時処理として、モータを停止(電力供給を停止)させる処理を採用する例を説明するが、本発明はこれに限定されない。例えば、モータに印加する電流値、電圧値又は電力値を低下させる(調整する)処理を励磁時間監視処理のエラー時処理として採用してもよい。
上述した可動役物の励磁監視処理に基づくエラー検知機能を設けることにより、次のような効果が得られる。
上述した可動役物の励磁監視処理に基づくエラー検知機能において、可動役物の演出動作を構成する動作パターン毎に規定される停止後励磁時間、すなわち、可動役物のエラー発生の有無を判定するための励磁監視時間の閾値に関する情報は、該動作パターンにおける可動役物の演出態様に応じて適宜設定される。それゆえ、本実施形態では、可動役物の制御態様(例えば励磁時間の長短、励磁の強弱等)に応じて、停止後励磁時間(励磁監視時間の閾値に関する情報)を細かに設定することができるので、可動役物の駆動手段(モータ)への負担を適切に抑制することができ、可動役物の故障率を低減させることができる。
また、本実施形態では、可動役物の駆動手段(モータ)の特性や耐久性に応じて、細かに停止後励磁時間(励磁監視時間の閾値に関する情報)を設定することができるので、可動役物の故障率を更に低減させることができる。
なお、本実施形態では、可動役物の動作パターン終了後に監視される励磁監視時間が励磁データの動作パターン毎に規定された停止後励磁時間を超えた場合にエラー発生と判定する構成例、すなわち、励磁データの動作パターン毎に規定された停止後励磁時間を励磁監視時間の閾値とする例を説明したが、本発明はこれに限定されない。例えば、停止後励磁時間に所定の余裕時間(例えば、15msec等)を加算した時間を励磁監視時間の閾値とし、励磁監視時間が停止後励磁時間に所定の余裕時間を加算した時間を超えた場合にエラー発生と判定する構成にしてもよい。また、この場合、停止後励磁時間に加算する所定の余裕時間は、例えば、動作パターンにおける可動役物の演出態様や、モータの特性及び耐久性などに応じて適宜設定される。
<スピーカチェック機能>
本実施形態のパチンコ遊技機1には、特別図柄の非変動中に、遊技者が、スピーカ群10内の各スピーカ(音発生装置)から出音される音量をチェックして、該音量を好みの音量に設定することが可能な機能(以下、「スピーカチェック機能」という)を備える。以下、図74A及び図74B〜図80A及び図80Bを参照しながら、スピーカチェック機能の動作を説明する。なお、図74A及び図74B〜図80A及び図80Bは、スピーカチェック機能作動時において、遊技者の操作に従って、表示装置13の表示画面(表示領域13a)に表示される各種操作画面の一例を示す図である。
また、図74A及び図74B〜図80A及び図80Bに示す例では、2つのスピーカカバー29の裏面側に設けられた2つのスピーカ11(高音用スピーカ)及び2つのスピーカカバー27の裏面側に設けられた2つのスピーカ(低音用スピーカ)の各スピーカの音量を個別にチェックすることが可能なスピーカチェック機能の動作例を説明する。
まず、スピーカチェック機能を作動させるためには、特別図柄の非変動期間において、遊技者が、決定ボタン37を所定時間押下し続ける(所謂、長押しをする)。これにより、表示装置13の表示画面(表示領域13a)には、図74Aに示すように、パスワードの入力画面が表示される。パスワードとしては、例えば遊技者が遊技履歴を携帯端末等で取得する際に用いるパスワードを使用することができる。
なお、このパスワードの入力画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び(例えば選択肢「戻る」の画像表示態様が変化した状態を生成し)、その状態で決定ボタン37を押下すると、表示装置13の表示画面が通常の遊技画面に戻る。
次いで、パスワードの入力画面において、遊技者によるパスワードの入力操作が完了すると、表示装置13の表示画面には、図74Bに示すように、メニューの選択画面が表示される。この例では、メニューの選択画面において、メニューの選択肢として、「遊技履歴確認」、「操作説明」、「液晶輝度チェック」及び「スピーカチェック」が表示される。
なお、メニューの選択画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、パスワードの入力画面(図74Aの画面)に戻る。
次いで、メニューの選択画面において、遊技者が選択ボタン36(上下の移動ボタン)を操作して、複数の選択肢の中から選択肢「スピーカチェック」を選択すると、図74Bに示すように、選択肢「スピーカチェック」の画像表示態様が変化する。図74Bに示す例では、選択肢「スピーカチェック」の文字の色と背景の色とが反転する。そして、この状態で、遊技者が決定ボタン37を押下すると、選択肢「スピーカチェック」の選択が確定し、スピーカチェック機能の作動が開始される。
スピーカチェック機能の作動が開始されると、表示装置13の表示画面には、図75Aに示すように、スピーカの選択画面が表示される。
このスピーカの選択画面では、出音チェック対象(出音条件の設定対象)とするスピーカを選択させる指示の文言(「出音するスピーカを選択して下さい」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。なお、画面中央部に表示されるスピーカの配置構成画像では、遊技者側から見て右上部及び左上部に表示された2つのスピーカの画像が、2つのスピーカカバー29の裏面側に設けられた2つのスピーカ11(高音用スピーカ)にそれぞれ対応し、右下部及び左下部に表示された2つのスピーカの画像が、2つのスピーカカバー27の裏面側に設けられた2つのスピーカ(低音用スピーカ)にそれぞれ対応する。
また、パチンコ遊技機1のスピーカの配置構成画像には、現在選択されているスピーカを示す白抜き矢印の画像(以下、単に矢印画像という)が該スピーカの画像の横に表示される。なお、図75Aに示すスピーカの選択画面の初期状態では、遊技者側から見て右下部のスピーカ(低音用スピーカ)の画像の横に矢印画像が表示され、該スピーカが選択された状態となる。
また、スピーカの選択画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、メニューの選択画面(図74Bの画面)に戻る。
次いで、スピーカの選択画面において、遊技者が選択ボタン36(上下左右の移動ボタン)を操作して、スピーカの画像の横に表示される矢印画像の位置を4つのスピーカ画像間で移動させて、出音チェック対象とするスピーカの画像の横に矢印画像をセットする。例えば、図75Bに示す例では、遊技者側から見て左上部のスピーカ(高音用スピーカ)の画像の横に矢印画像がセットされる。
そして、図75Bの状態で、遊技者が決定ボタン37を押下すると、出音チェック対象のスピーカが確定し、その後、表示装置13の表示画面には、図76Aに示すように、音量の設定画面が表示される。
この音量の設定画面では、出音チェック対象のスピーカに対して音量を設定させる指示の文言(「音量を設定して下さい」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、選択されたスピーカにおいて現在選択されている音量の値が矢印画像の横に表示される。なお、図76Aに示す音量の設定画面の初期状態では、出音チェック対象のスピーカを示す矢印画像の横に、スピーカチェック機能の作動前に設定されている音量の値(「14」)が表示される。
また、音量の設定画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、スピーカの選択画面(図75Bの画面)に戻る。
次いで、音量の設定画面において、遊技者が選択ボタン36(上下又は左右の移動ボタン)を操作して音量を増減し(音量の値を「14」から1単位で増減し)、所望の音量を選択する。なお、図76Aには、遊技者が音量を増減させずに音量「14」を選択した場合の例を示す。
そして、図76Aの状態で、遊技者が決定ボタン37を押下すると、音量が確定し、表示装置13の表示画面には、図76Bに示すように、音色の設定画面が表示される。
この音色の設定画面では、出音チェック対象のスピーカに対して音色を設定させる指示の文言(「音色を設定して下さい」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。図76Bに示す音色の設定画面では、例えば、単音、各種楽曲、各種効果音、各種エラー音等の各種システム音の中から所望の音色を選択することができる。それゆえ、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、出音チェック対象のスピーカにおいて現在選択されている音色の種別が矢印画像及び音量の下に表示される。なお、図76Bに示す音色の設定画面の初期状態では、出音チェック対象のスピーカを示す矢印画像及び音量の下に、音色のデフォルト種別として、「楽曲A」が表示される。
また、音色の設定画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、音量の選択画面(図76Aの画面)に戻る。
次いで、音色の設定画面において、遊技者が選択ボタン36(上下又は左右の移動ボタン)を操作して音色の選択肢を変化させて、所望の音色を選択する。ここでは、音色「楽曲C」を選択した場合を説明する。この場合、図示しないが、音色の設定画面では、音色の選択肢として「楽曲C」の文字が出音チェック対象のスピーカを示す矢印画像及び音量の下に表示される。
そして、図76Bに示す音色の設定画面において遊技者が所望の音色(「楽曲C」)を選択し、その状態で、遊技者が決定ボタン37を押下すると、音色が確定し、表示装置13の表示画面には、図77Aに示すように、出音開始の確認画面が表示される。
この出音開始の確認画面では、出音チェック対象のスピーカから出音を開始するか否かを確認する文言(「出音します。よろしいですか?(決定ボタンで開始)」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。この際、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、出音チェック対象のスピーカにおいて現在選択されている音量及び音色の種別が表示される。図77Aに示す例では、音量「14」及び音色「楽曲C」が出音チェック対象のスピーカの画像の横に表示される。
また、出音開始の確認画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると(例えば、遊技者が出音チェック対象のスピーカに対して出音条件の設定内容を変更する場合)、表示装置13の表示画面が一つ前の画面、すなわち、音色の選択画面(図76Bの画面)に戻る。
そして、図77Aに示す出音の確認画面において、遊技者が決定ボタン37を押下すると、出音チェック対象のスピーカから、設定された音色(「楽曲C」)が設定された音量(「14」)で出音され、表示装置13の表示画面には、図77Bに示すように、出音中を示す画面(以下、出音中画面という)が表示される。
この出音中画面では、出音チェック対象のスピーカから出音中であることを示す文言(「出音中…(決定ボタンで終了)」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。この際、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、出音チェック対象のスピーカの画像の周辺に、現在出音中であることを示す音符画像も表示される。
また、出音中画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると(例えば、遊技者が音色(楽曲)を最初から聞き直す場合)、表示装置13の表示画面が一つ前の画面、すなわち、出音開始の確認画面(図77Aの画面)に戻る。
そして、出音チェック対象のスピーカからの出音中に、遊技者が決定ボタン37を押下すると、出音動作が停止し、表示装置13の表示画面には、図78Aに示すように、出音停止の確認画面が表示される。
この出音停止の確認画面では、出音チェック対象のスピーカからの出音を停止したことを示す文言(「出音を停止しました」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。この際、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像では、出音チェック対象のスピーカの画像の周辺に表示されていた音符画像が消える。
また、出音停止の確認画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると(例えば、遊技者が音色(楽曲)を最初から聞き直す場合)、表示装置13の表示画面が二つ前の画面、すなわち、出音開始の確認画面(図77Aの画面)に戻る。
次いで、図78Aの状態で、所定期間経過した場合、又は、遊技者により所定の操作ボタン(選択ボタン36、決定ボタン37等)が押下された場合、表示装置13の表示画面には、図78Bに示すように、現在設定されているスピーカ群10の出音条件(各スピーカの音量条件)を保存するか否かの確認画面(以下、出音条件の保存画面という)が表示される。
この出音条件の保存画面では、現在設定されているスピーカ群10の出音条件を保存するか否かの文言(「この音量設定で保存しますか?(決定ボタンで確定)」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。この際、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、出音チェック対象となったスピーカに対して現在設定されている出音条件が表示される。図78Bの例では、遊技者側から見て左上部のスピーカ(高音用スピーカ)の画像の横に、現在設定されている出音条件(音量「14」及び音色「楽曲C」)が表示される。
そして、図78Bに示す出音条件の保存画面において、遊技者が決定ボタン37を押下すると、現在設定されているスピーカ群10の出音条件(音量)が保存される。この操作により、図示しないが、例えば、図78Bに示す出音条件の保存画面において、出音条件の保存が完了した旨の文言(「保存完了しました(戻るで終了)」)が画面内の上部に表示される。その後、この出音条件の保存画面において、遊技者の選択ボタン36への操作により選択肢「戻る」が選択され、その状態で決定ボタン31が押下されると(選択肢「戻る」が決定されると)、スピーカチェック機能の作動が終了する。そして、スピーカチェック機能の作動が終了すると、表示装置13の表示画面には、通常の遊技画面が表示される。
なお、図78Bに示す状態で遊技者が決定ボタン37を押下して出音条件(音量)の保存処理が行われると、出音チェック対象となったスピーカに対して、スピーカチェック機能作動前の出音条件(音量)が、スピーカチェック機能作動時に設定された出音条件(音量)に書き換えられる。しかしながら、今回のスピーカチェック機能で出音チェック対象としなかったスピーカ(図78Bに示す例では、遊技者側から見て左上部のスピーカ以外のスピーカ)に対しては、この出音条件の保存処理において、出音条件の書き換え処理は行われず、スピーカチェック機能作動前の出音条件が維持される。
また、本実施形態のスピーカチェック機能では、図78Bの状態において出音条件の保存処理を実行する前に、遊技者が、出音条件のチェック済みのスピーカ以外のスピーカの出音条件も合わせてチェックすることができる。すなわち、本実施形態のスピーカチェック機能では、複数のスピーカに対してまとめて出音条件をチェックすることができる。具体的には、図78Bに示す出音条件の保存画面において、遊技者が、決定ボタン37を押下せずに、選択ボタン36(上下左右の移動ボタンのいずれか)を押下した場合には、チェック済みのスピーカ以外のスピーカの出音条件も合わせてチェックすることができる。
例えば、図78Bに示す出音条件の保存画面において、遊技者が、決定ボタン37を押下せずに、選択ボタン36を押下すると、表示装置13の表示画面は、図79Aに示すように、2つ目のスピーカの選択画面に切り替わる。
このスピーカの選択画面では、出音チェック対象とする2つ目のスピーカを選択させる指示の文言(「出音する2つ目のスピーカを選択して下さい」)が画面内の上部に表示されるとともに、画面中央部にパチンコ遊技機1のスピーカ配置構成を示す画像が表示される。この際、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像において、チェック済みのスピーカ(左上部のスピーカ(高音用スピーカ))の画像の横には、設定済みの出音条件が表示される。また、パチンコ遊技機1のスピーカの配置構成画像では、チェック済みのスピーカ以外のスピーカ(図79Aに示す例では、遊技者側から見て右上部のスピーカ)の画像の横に、出音チェック対象を示す矢印画像が表示される。
また、この2つ目のスピーカの選択画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、出音条件の保存画面(図78Bの画面)に戻る。
そして、図79Aに示す2つ目のスピーカの選択画面において、上記図75A及び図75Bで説明した遊技者の操作と同様の操作により、2つ目の出音チェック対象のスピーカが確定すると、表示装置13の表示画面には、図79Bに示すように、2つ目の出音チェック対象のスピーカに対する音量の設定画面が表示される。なお、図79Bには、2つ目の出音チェック対象のスピーカとして遊技者側から見て右上部のスピーカ(高音用スピーカ)が選択された場合の表示画面例を示す。
この音量の設定画面では、2つ目の出音チェック対象のスピーカを示す矢印画像の横に、スピーカチェック機能の作動前に設定されている音量の値「14」と、音色「楽曲C」とが表示される。2つ目以降のスピーカの出音条件(音量)の設定操作では、音色の種別は1つ目の出音チェック対象のスピーカに対して設定された音色の種別で固定されるので、音色の種別の選択操作は行われない。なお、本発明はこれに限定されず、2つ目以降のスピーカの出音条件(音量)の設定操作において、音色の種別の選択操作を再度実行できるような構成にしてもよい。この場合、2つ目以降のスピーカに対して音色の種別の再選択操作が行われ、音色の種別が変更されると、出音チェック対象の全スピーカの音色の種別が同時に変更される。
また、図79Bに示す音量の設定画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると、表示装置13の表示画面が一つ前の画面、すなわち、2つ目の出音チェック対象のスピーカの選択画面(図79Aの画面)に戻る。
その後、2つ目の出音チェック対象のスピーカに対する音量の設定操作は、上記図76Aで説明した操作と同様にして行われ、遊技者による音量の設定操作が終了すると、表示装置13の表示画面には、図77Aに示す表示画面と同様の、出音開始の確認画面(不図示)が表示される。なお、ここでは、2つ目の出音チェック対象のスピーカに対して音量が「16」に設定された例を説明する。
そして、2つ目の出音チェック対象のスピーカの出音条件設定後に表示された出音開始の確認画面において、遊技者が決定ボタン37を押下すると、1つ目及び2つ目の出音チェック対象となったスピーカのそれぞれから、設定された音色(「楽曲C」)が設定された音量で出音され、表示装置13の表示画面は、図80Aに示すように、出音中画面が表示される。この場合、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像では、出音チェック対象となった1つ目及び2つ目のスピーカの画像の周辺に、現在出音中であることを示す音符画像が表示される。
また、出音中画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると(例えば、遊技者が音色を最初から聞き直す場合)、表示装置13の表示画面が一つ前の画面、すなわち、出音開始の確認画面(不図示)に戻る。
そして、出音チェック対象の2つのスピーカからの出音中(図80Aの状態中)に、遊技者が決定ボタン37を押下すると、出音動作が停止し、表示装置13の表示画面には、図78Aに示す画面と同様の、出音停止の確認画面(不図示)が表示される。
その後、表示装置13の表示画面には、図80Bに示すように、現在設定されているスピーカ群10の出音条件を保存するか否かの出音条件の保存画面が表示される。
そして、図80Bに示す出音条件の保存画面において、遊技者が決定ボタン37を押下すると、現在設定されているスピーカ群10の出音条件(音量)が保存される。この処理では、出音チェック対象対象となった2つのスピーカの出音条件が書き換えられる。次いで、この出音条件の保存画面において、遊技者の選択ボタン36への操作により選択肢「戻る」が選択され、その状態で決定ボタン31が押下されると(選択肢「戻る」が決定されると)、スピーカチェック機能の作動が終了する。そして、スピーカチェック機能の作動が終了すると、表示装置13の表示画面には、通常の遊技画面が表示される。
また、本実施形態のスピーカチェック機能において、図80Bの状態の後、遊技者が、さらに3つ目のスピーカを選択してその出音条件をチェックする場合には、まず、図80Bに示す出音条件の保存画面において、遊技者は、決定ボタン37を押下せずに(出音条件の保存処理を行わずに)、選択ボタン36(上下左右の移動ボタンのいずれか)を押下する。この操作により、表示装置13の表示画面は、3つ目のスピーカの選択画面(不図示)に切り替わる。
次いで、3つ目の出音チェック対象とするスピーカに対して、上記図79A及び図79Bで説明した出音チェック対象のスピーカの選択・決定操作及び音量の選択・決定操作を繰り返し行う。次いで、3つ目の出音チェック対象のスピーカに対して出音条件(音量)が決定されると、表示装置13の表示画面には、図77Aに示す表示画面と同様の、出音開始の確認画面(不図示)が表示される。
そして、3つ目の出音チェック対象のスピーカの出音条件設定後に表示された出音開始の確認画面において、遊技者が決定ボタン37を押下すると、1つ目〜3つ目の出音チェック対象となったスピーカのそれぞれから、設定された音色(「楽曲C」)が設定された音量で出音され、表示装置13の表示画面には、図81Aに示すように、出音中画面が表示される。
この場合、画面中央部に表示されるパチンコ遊技機1のスピーカの配置構成画像には、出音チェック対象となった1つ目〜3つ目のスピーカの画像の周辺に、現在出音中であることを示す音符画像が表示される。なお、図81Aには、3つ目の出音チェック対象のスピーカとして、遊技者側から見て左下部のスピーカ(低音用スピーカ)が選択され、該3つ目の出音チェック対象のスピーカに対して音量が「14」に設定された例を示す。
また、この出音中画面には、選択肢「戻る」も表示される。遊技者が、この画面において、選択ボタン36を操作して選択肢「戻る」を選び、その状態で決定ボタン37を押下すると(例えば、遊技者が音色を最初から聞き直す場合)、表示装置13の表示画面が一つ前の画面、すなわち、出音開始の確認画面(不図示)に戻る。
そして、出音チェック対象である3つのスピーカからの出音中(図81Aの状態中)に、遊技者が決定ボタン37を押下すると、出音動作が停止し、表示装置13の表示画面には、図78Aに示す画面と同様の、出音停止の確認画面(不図示)が表示される。
その後、表示装置13の表示画面には、図81Bに示すように、現在設定されているスピーカ群10の出音条件を保存するか否かの出音条件の保存画面が表示される。
そして、図81Bに示す出音条件の保存画面において、遊技者が決定ボタン37を押下すると、現在設定されているスピーカ群10の出音条件(音量)が保存される。この処理では、出音チェック対象対象となった3つのスピーカの出音条件が書き換えられる。次いで、この出音条件の保存画面において、遊技者の選択ボタン36への操作により選択肢「戻る」が選択され、その状態で決定ボタン31が押下されると(選択肢「戻る」が決定されると)、スピーカチェック機能の作動が終了する。そして、スピーカチェック機能の作動が終了すると、表示装置13の表示画面には、通常の遊技画面が表示される。
さらに、本実施形態のスピーカチェック機能において、図81Bの状態の後、遊技者が、4つ目のスピーカを選択してその出音条件を設定する場合には、まず、図81Bに示す出音条件の保存画面において、遊技者は、決定ボタン37を押下せずに(出音条件の保存処理を行わずに)、選択ボタン36(上下左右の移動ボタンのいずれか)を押下する。その後、4つ目の出音チェック対象とするスピーカに対して、上述した2つ目又は3つ目の出音チェック対象のスピーカに対して行った操作と同様の操作を繰り返し行う。
本実施形態では、このようにして、スピーカチェック機能により各スピーカの出音条件をチェックする。そして、このスピーカチェック機能を設けた場合、次のような効果が得られる。
本実施形態のように複数のスピーカ(音声発生装置)を備えたパチンコ遊技機1に対して上述したスピーカチェック機能を適用することにより、各スピーカが正常に出音されているか否かを、個別に確認することができる。
また、上記スピーカチェック機能では、各スピーカの出音状態を個別にチェックできるだけでなく、複数のスピーカからの出音状態をまとめてチェックすることができるので、例えば、ステレオ方式の出音態様において出音の左右バランスが一方に偏っていないかどうかや、和音状態に不具合がないかどうかなどを確認することができる。
また、上記スピーカチェック機能では、各スピーカの出音条件を個別に設定することができるので、音声の出音バランスを、例えば遊技者の好みや周囲の音響環境などに応じて細かに調整することができる。
さらに、上記スピーカチェック機能では、例えば、複数のスピーカからの出音(音量)バランスが狂っている場合に、視聴により出音バランスを調整すると、その後の遊技では調整後の出音バランスで演出音が発生するので、スピーカの修理等が行えない状況であっても、遊技者に対して違和感を与えずに遊技を行わせることができる。
<主制御回路の動作説明>
次に、図82〜図91を参照して、主制御回路70のメインCPU71により実行される各種処理の内容について説明する。
[主制御メイン処理]
まず、図82を参照して、メインCPU71の制御による主制御メイン処理について説明する。なお、図82は、本実施形態における主制御メイン処理の手順を示すフローチャートである。
パチンコ遊技機1に電源が投入されると、最初に、メインCPU71は、初期設定処理を行う(S1)。この処理では、メインCPU71は、例えば、メインRAM73へのアクセス許可、バックアップ復帰、作業領域の初期化等の処理を行う。次いで、メインCPU71は、初期値乱数の更新処理を行う(S2)。この処理では、メインCPU71は、初期乱数カウンタ値を更新する。
次いで、メインCPU71は、特別図柄制御処理を行う(S3)。この処理では、メインCPU71は、特別図柄ゲームの進行、特別図柄表示装置61に表示される特別図柄(第1特別図柄及び第2特別図柄)に関する所定の制御処理を行う。なお、特別図柄制御処理の詳細については、後述の図83を参照しながら後で説明する。
次いで、メインCPU71は、普通図柄制御処理を行う(S4)。この処理では、メインCPU71は、普通図柄ゲームの進行、及び、普通図柄表示装置62に表示される普通図柄に関する所定の制御処理を行う。なお、普通図柄制御処理の詳細については、後述の図87を参照しながら後で説明する。
次いで、メインCPU71は、図柄表示装置の制御処理を行う(S5)。この処理では、メインCPU71は、特別図柄制御処理(S3)及び普通図柄制御処理(S4)の実行結果に基づいて、特別図柄(第1特別図柄及び第2特別図柄)、並びに、普通図柄の可変表示の表示制御を行う。
次いで、メインCPU71は、遊技情報データ生成処理を行う(S6)。この処理では、メインCPU71は、払出・発射制御回路123、副制御回路200、遊技店のホールコンピュータ等に送信する遊技情報データを生成し、該遊技情報データをメインRAM73に格納する。
次いで、メインCPU71は、記憶・遊技状態データ生成処理を行う(S7)。この処理では、メインCPU71は、確変フラグの値及び時短フラグの値に基づいて、副制御回路200に送信する記憶・遊技状態データを生成し、該記憶・遊技状態データをメインRAM73に格納する。
そして、S7の処理後、メインCPU71は、処理をS2の処理に戻し、上述したS2以降の処理を繰り返す。
[特別図柄制御処理]
次に、図83を参照して、主制御メイン処理(図82参照)中のS3で行う特別図柄制御処理について説明する。図83は、本実施形態における特別図柄制御処理の手順を示すフローチャートである。なお、図83に示す各処理ステップの符号に並記した括弧書きの数値(「00」〜「08」)は制御状態フラグの値を示し、この制御状態フラグは、メインRAM73内の所定の記憶領域に格納される。メインCPU71は、制御状態フラグの数値に対応する各処理ステップを実行することにより、特別図柄ゲームを進行させる。
まず、メインCPU71は、制御状態フラグをロードする(S11)。この処理では、メインCPU71は、メインRAM73に記憶された制御状態フラグの値を読み出す。
メインCPU71は、S11でロードされた制御状態フラグの値に基づいて、後述のS12〜S20の各種処理を実行するか否かを判定する。この制御状態フラグは、特別図柄ゲームの遊技の状態を示すものであり、S12〜S20のいずれかの処理を実行可能にするものである。
また、メインCPU71は、S12〜S20の各処理に対して設定された待ち時間などに応じて決定される所定のタイミングで、各ステップの処理を実行する。なお、この所定のタイミングに至る前の期間では、各ステップの処理を実行せずに、他のサブルーチン処理を実行する。また、所定の周期で後述のシステムタイマ割込処理(後述の図89参照)も実行される。
そして、S11の処理が終了すると、メインCPU71は、特別図柄記憶チェック処理を行う(S12)。
この処理では、メインCPU71は、制御状態フラグが特別図柄記憶チェック処理を示す値(「00」)である場合に、特別図柄の可変表示の保留個数をチェックし、保留個数が「0」でない場合(保留球がある場合)には、当り判定、特別図柄の決定、特別図柄の変動パターンの決定等の処理を行う。また、メインCPU71は、この処理において、制御状態フラグに、後述の特別図柄変動時間管理処理(S13)を示す値(「01」)にセットし、今回の処理で決定された変動パターンに対応する特別図柄の変動時間を待ち時間タイマにセットする。すなわち、この処理により、S12の処理で決定された変動パターンに対応する特別図柄の変動時間が経過した後、後述の特別図柄変動時間管理処理が実行されるように設定される。
一方、保留個数が「0」である場合(保留球がない場合)には、メインCPU71は、デモ画面を表示するためのデモ表示処理を行う。なお、特別図柄記憶チェック処理の詳細については、後述の図84を参照しながら後で説明する。
次いで、メインCPU71は、特別図柄変動時間管理処理を行う(S13)。この処理では、メインCPU71は、制御状態フラグが特別図柄変動時間管理処理を示す値(「01」)であり、特別図柄の変動時間が経過した場合に、制御状態フラグに、後述の特別図柄表示時間管理処理(S14)を示す値(「02」)をセットし、確定後待ち時間を待ち時間タイマにセットする。すなわち、この処理により、S13の処理でセットされた確定後待ち時間が経過した後、後述の特別図柄表示時間管理処理が実行されるように設定される。
次いで、メインCPU71は、特別図柄表示時間管理処理を行う(S14)。この処理では、メインCPU71は、制御状態フラグが特別図柄表示時間管理処理を示す値(「02」)であり、S13の処理でセットされた確定後待ち時間が経過した場合に、当り判定の結果が「大当り」又は「小当り」であるか否かを判断する。そして、当り判定の結果が「大当り」又は「小当り」である場合、メインCPU71は、制御状態フラグに、後述の大当り開始インターバル管理処理(S15)を示す値(「03」)をセットし、大当り開始インターバルに対応する時間を待ち時間タイマにセットする。すなわち、この処理により、S14の処理でセットされた大当り開始インターバルに対応する時間が経過した後、後述の大当り開始インターバル管理処理が実行されるように設定される。
一方、当り判定の結果が「大当り」又は「小当り」でない場合、メインCPU71は、制御状態フラグに、後述の特別図柄ゲーム終了処理(S20)を示す値(「08」)をセットする。すなわち、この場合には、後述の特別図柄ゲーム終了処理が実行されるように設定される。なお、特別図柄表示時間管理処理の詳細については、後述の図85を参照しながら後で説明する。
次いで、メインCPU71は、S14において当り判定の結果が「大当り」又は「小当り」であると判定された場合、大当り開始インターバル管理処理を行う(S15)。この処理では、メインCPU71は、制御状態フラグが大当り開始インターバル管理処理を示す値(「03」)であり、S14の処理でセットされた大当り開始インターバルに対応する時間が経過した場合に、第1大入賞口53又は第2大入賞口54を開放させるため、メインROM72から読み出されたデータに基づいて、メインRAM73に位置付けられた変数を更新する。
また、この処理では、メインCPU71は、制御状態フラグに、後述の大入賞口開放中処理(S16)を示す値(「04」)をセットするとともに、大入賞口の開放上限時間(例えば30sec)を大入賞口開放時間タイマにセットする。すなわち、この処理により、後述の大入賞口開放中処理が実行されるように設定される。
次いで、メインCPU71は、大入賞口開放中処理を行う(S16)。この処理では、まず、メインCPU71は、制御状態フラグが大入賞口開放中処理を示す値(「04」)である場合に、大入賞口入賞カウンタが所定数以上であるという条件、及び、開放上限時間を経過した(大入賞口開放時間タイマが「0」である)という条件の一方が満たされた(所定の閉鎖条件が成立した)か否かを判断する。
S16において、一方の条件が満たされた場合には、メインCPU71は、所定の大入賞口(第1大入賞口又は第2大入賞口)を閉鎖させるため、メインRAM73に位置付けられた変数を更新する。そして、メインCPU71は、制御状態フラグに、後述の大入賞口内残留球監視処理(S17)を示す値(「05」)をセットするとともに、大入賞口内残留球監視時間を待ち時間タイマにセットする。すなわち、この処理により、S17でセットされた大入賞口内残留球監視時間が経過した後、後述の大入賞口内残留球監視処理が実行されるように設定される。
また、メインCPU71は、S16において、大入賞口開放中処理の終了直前に、副制御回路200にラウンド間表示コマンドを送信する。
次いで、メインCPU71は、大入賞口内残留球監視処理を行う(S17)。この処理では、メインCPU71は、制御状態フラグが大入賞口内残留球監視処理を示す値(「05」)であり、大入賞口内残留球監視時間が経過した場合に、大入賞口開放回数カウンタの値が大入賞口開放回数の最大値以上である(最終ラウンドである)という条件が満たされたか否かを判断する。
S17において、メインCPU71が上記条件を満たさないと判別した場合には、メインCPU71は、大入賞口再開放待ち時間管理処理を示す値(「06」)を制御状態フラグにセットする。また、メインCPU71は、ラウンド間インターバルに対応する時間を待ち時間タイマにセットする。すなわち、この処理により、ラウンド間インターバルに対応する時間が経過した後、後述の大入賞口再開放前待ち時間管理処理が実行されるように設定される。
一方、S17において、メインCPU71が上記条件を満たしたと判別した場合には、メインCPU71は、大当り終了インターバル処理を示す値(「07」)を制御状態フラグにセットし、大当り終了インターバルに対応する時間(大当り終了インターバル時間)を待ち時間タイマにセットする。すなわち、この処理により、S17でセットされた大当り終了インターバルに対応する時間が経過した後、後述の大当り終了インターバル処理が実行されるように設定される。
次いで、S17において、メインCPU71が、大入賞口開放回数カウンタの値が大入賞口開放回数の最大値以上ではないと判別した場合、メインCPU71は大入賞口再開放前待ち時間管理処理を行う(S18)。この処理では、メインCPU71は、制御状態フラグが大入賞口再開放前待ち時間管理処理を示す値(「06」)であり、ラウンド間インターバルに対応する時間が経過した場合に、大入賞口開放回数カウンタの値を「1」増加するように記憶更新する。また、メインCPU71は、大入賞口開放中処理を示す値(「04」)を制御状態フラグにセットする。そして、メインCPU71は、開放上限時間(例えば30sec)を大入賞口開放時間タイマにセットする。すなわち、この処理により、S18の処理後に上述した大入賞口開放中処理(S16)が再度実行されるように設定される。
さらに、メインCPU71は、S18において、大入賞口再開放前待ち時間管理処理の終了直前に、副制御回路200に大入賞口開放中表示コマンドを送信する。
また、S17において、メインCPU71が、大入賞口開放回数カウンタの値が大入賞口開放回数の最大値以上であると判別した場合に、大当り終了インターバル処理を行う(S19)。この処理では、メインCPU71は、制御状態フラグが大当り終了インターバル処理を示す値(「07」)であり、大当り終了インターバルに対応する時間が経過した場合に、特別図柄ゲーム終了処理を示す値(「08」)を制御状態フラグにセットする。すなわち、この処理により、S19の処理後に後述の特別図柄ゲーム終了処理が実行されるように設定される。なお、大当り終了インターバル処理の詳細については、後述の図86を参照しながら後で説明する。
そして、メインCPU71は、大当り図柄が確変図柄である場合には、遊技状態を確変遊技状態に移行させる制御を行い、大当り図柄が非確変図柄である場合には、遊技状態を通常遊技状態に移行させる制御を行う。なお、大当り図柄が「小当り」に対応する図柄である場合には、メインCPU71は、「小当り」遊技終了後の遊技状態が、「小当り」が当選した時に制御されていた遊技状態よりも有利な遊技状態に移行しないように制御する。
次いで、メインCPU71は、大当り遊技状態或いは小当り遊技状態が終了した場合、又は、「ハズレ」に当選した場合には、特別図柄ゲーム終了処理を行う(S20)。
この処理では、メインCPU71は、制御状態フラグが特別図柄ゲーム終了処理を示す値(「08」)である場合に、保留個数を示すデータ(始動記憶情報)を「1」減少するように記憶更新する。また、メインCPU71は、次回の特別図柄の変動表示を行うために、特別図柄記憶領域の更新を行う。さらに、メインCPU71は、特別図柄記憶チェック処理を示す値(「00」)を制御状態フラグにセットする。すなわち、この処理により、S20の処理後、上述した特別図柄記憶チェック処理(S12)が実行されるように設定される。
そして、S20の処理後、メインCPU71は、特別図柄制御処理を終了し、処理を主制御メイン処理(図82参照)のS4に移す。
上述したように、本実施形態のパチンコ遊技機1では、制御状態フラグに各種値を順次セットすることにより、特別図柄ゲームを進行させる。具体的には、遊技状態が大当り遊技状態及び小当り遊技状態のいずれでもなく且つ当り判定の結果が「ハズレ」である場合には、メインCPU71は、制御状態フラグを「00」、「01」、「02」、「08」の順にセットする。これにより、メインCPU71は、上述した特別図柄記憶チェック処理(S12)、特別図柄変動時間管理処理(S13)、特別図柄表示時間管理処理(S14)及び特別図柄ゲーム終了処理(S20)をこの順で所定のタイミングで実行する。
また、メインCPU71は、遊技状態が大当り遊技状態及び小当り遊技状態のいずれでもなく且つ当り判定の結果が「大当り」又は「小当り」である場合には、制御状態フラグを「00」、「01」、「02」、「03」の順でセットする。これにより、メインCPU71は、上述した特別図柄記憶チェック処理(S12)、特別図柄変動時間管理処理(S13)、特別図柄表示時間管理処理(S14)及び大当り開始インターバル管理処理(S15)をこの順で所定のタイミングで実行し、大当り遊技状態又は小当り遊技状態への移行制御を実行する。
さらに、メインCPU71は、大当り遊技状態又は小当り遊技状態への移行制御が実行された場合には、制御状態フラグを「04」、「05」、「06」の順でセットする。これにより、メインCPU71は、上述した大入賞口開放中処理(S16)、大入賞口内残留球監視処理(S17)及び大入賞口再開放前待ち時間管理処理(S18)をこの順で所定のタイミングで実行し、大当り遊技又は小当り遊技を実行する。
なお、大当り遊技中に、大当り遊技状態の終了条件が成立した場合には、メインCPU71は、制御状態フラグを「04」、「05」、「07」、「08」の順でセットする。これにより、メインCPU71は、上述した大入賞口開放中処理(S16)、大入賞口内残留球監視処理(S17)、大当り終了インターバル処理(S19)及び特別図柄ゲーム終了処理(S20)をこの順で所定のタイミングで実行し、大当り遊技状態を終了する。
上述したように、特別図柄制御処理では、ステータスに応じて処理フローを分岐させている。また、図82に示す主制御メイン処理中のS4の普通図柄制御処理(後述の図87参照)もまた、後述するように、特別図柄制御処理と同様に、ステータスに応じて処理フローを分岐させる。
本実施形態の処理プログラムは、ステータスに応じて処理を分岐させて行う場合にコール命令で、小モジュールから親モジュールへの純粋な戻り処理が可能となるように、プログラミングされている。その結果、上記処理を実行するためにジャンプテーブルを配置する場合と比較して、本実施形態では、プログラムの容量を削減することができる。
[特別図柄記憶チェック処理]
次に、図84を参照して、特別図柄制御処理(図83参照)中のS12で行う特別図柄記憶チェック処理について説明する。なお、図84は、本実施形態における特別図柄記憶チェック処理の手順を示すフローチャートである。
まず、メインCPU71は、制御状態フラグをロードする(S31)。この処理では、メインCPU71は、メインRAM73に記憶された制御状態フラグの値を読み出す。
次いで、メインCPU71は、制御状態フラグが特別図柄記憶チェック処理を示す値(「00」)であるか否かを判別する(S32)。S32において、メインCPU71が、制御状態フラグが「00」でないと判別した場合(S32がNO判定の場合)、メインCPU71は、特別図柄記憶チェック処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
一方、S32において、メインCPU71が、制御状態フラグが「00」であると判別した場合(S32がYES判定の場合)、メインCPU71は、第2始動口入賞(第2特別図柄の可変表示)の保留個数(第2始動記憶数)が「0」であるか否かを判別する(S33)。
S33において、メインCPU71が、第2始動口入賞の保留個数が「0」でないと判別した場合(S33がNO判定の場合)、メインCPU71は、第2始動口入賞の保留個数に対応する第2始動記憶数の値を「1」減算する(S34)。
本実施形態では、メインCPU71は、メインRAM73に設けられた第2特別図柄始動記憶領域(0)〜第2特別図柄始動記憶領域(4)にデータが記憶されているか否かを判別して、変動中又は保留中の第2特別図柄の可変表示に対応する特別図柄ゲームの始動記憶があるか否かを判別する。第2特別図柄始動記憶領域(0)には、変動中の第2特別図柄の可変表示に対応する特別図柄ゲームのデータ(情報)が始動記憶として記憶される。そして、第2特別図柄始動記憶領域(1)〜第2特別図柄始動記憶領域(4)には、保留されている4回分の第2特別図柄の可変表示(保留球)に対応する特別図柄ゲームのデータ(情報)が始動記憶として記憶される。なお、各第2特別図柄始動記憶領域に記憶されている始動記憶に含まれるデータは、例えば、第2始動口45の入賞時に取得した大当り判定用乱数値及び大当り図柄乱数値等のデータである。
S34の処理後、メインCPU71は、第2始動口入賞に基づいて特別図柄記憶転送処理を行う(S35)。この処理では、メインCPU71は、第2特別図柄始動記憶領域(1)〜(4)のデータを、それぞれ第2特別図柄始動記憶領域(0)〜(3)に転送(記憶)する。そして、S35の処理後、メインCPU71は、後述のS40の処理を行う。
ここで、再度、S33の処理に戻って、S33において、メインCPU71が、第2始動口入賞の保留個数が「0」であると判別した場合(S33がYES判定の場合)、メインCPU71は、第1始動口入賞(第1特別図柄の可変表示)の保留個数(第1始動記憶数)が「0」であるか否かを判別する(S36)。
S36において、メインCPU71が、第1始動口入賞の保留個数が「0」であると判別した場合(S36がYES判定の場合)、メインCPU71は、デモ表示処理を行う(S37)。そして、S37の処理後、メインCPU71は、特別図柄記憶チェック処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
なお、S37のデモ表示処理では、メインCPU71は、メインRAM73にデモ表示許可値をセットする。すなわち、メインCPU71は、第1始動口入賞及び第2始動口入賞の保留個数が「0」になった状態(特別図柄ゲームの始動記憶が「0」になった状態)が所定時間(例えば、30sec)維持されると、デモ表示許可値として所定値をセットする。また、S37のデモ表示処理においてデモ表示許可値が所定値であった場合には、メインCPU71は、デモ表示コマンドデータをメインRAM73にセットする。そして、デモ表示コマンドデータは、主制御回路70のメインCPU71から副制御回路200内のホスト制御回路210に送信される。副制御回路200は、デモ表示コマンドデータを受信すると、表示装置13の表示領域13aにデモ画面を表示させる。
一方、S36において、メインCPU71が、第1始動口入賞の保留個数が「0」でないと判別した場合(S36がNO判定の場合)、メインCPU71は、第1始動口入賞の保留個数に対応する第1始動記憶数の値を「1」減算する(S38)。
本実施形態では、メインCPU71は、メインRAM73に設けられた第1特別図柄始動記憶領域(0)〜第1特別図柄始動記憶領域(4)にデータが記憶されているか否かを判別して、変動中又は保留中の第1特別図柄の可変表示に対応する特別図柄ゲームの始動記憶があるか否かを判別する。第1特別図柄始動記憶領域(0)には、変動中の第1特別図柄の可変表示に対応する特別図柄ゲームのデータ(情報)が始動記憶として記憶される。そして、第1特別図柄始動記憶領域(1)〜第1特別図柄始動記憶領域(4)には、保留されている4回分の第1特別図柄の可変表示(保留球)に対応する特別図柄ゲームのデータ(情報)が始動記憶として記憶される。なお、各第1特別図柄始動記憶領域に記憶されている始動記憶に含まれるデータは、例えば、第1始動口44の入賞時に取得した大当り判定用乱数値及び大当り図柄乱数値等のデータである。
S38の処理後、メインCPU71は、第1始動口入賞に基づいて特別図柄記憶転送処理を行う(S39)。この処理では、メインCPU71は、第1特別図柄始動記憶領域(1)〜(4)のデータを、それぞれ第1特別図柄始動記憶領域(0)〜(3)に転送(記憶)する。そして、S39の処理後、メインCPU71は、後述のS40の処理を行う。
次いで、S35又はS39の処理後、メインCPU71は、時短状態変動回数カウンタの値が「0」であるか否かを判別する(S40)。
S40において、メインCPU71が、時短状態変動回数カウンタの値が「0」であると判別した場合(S40がYES判定の場合)、メインCPU71は、後述のS44の処理を行う。一方、S40において、メインCPU71が、時短状態変動回数カウンタの値が「0」でないと判別した場合(S40がNO判定の場合)、メインCPU71は、時短状態変動回数カウンタの値を「1」減算する(S41)。
S41の処理後、メインCPU71は、時短状態変動回数カウンタの値が「0」であるか否かを判別する(S42)。
S42において、メインCPU71が、時短状態変動回数カウンタの値が「0」でないと判別した場合(S42がNO判定の場合)、メインCPU71は、後述のS44の処理を行う。一方、S42において、メインCPU71が、時短状態変動回数カウンタの値が「0」であると判別した場合(S42がYES判定の場合)、メインCPU71は、時短フラグに「0」をセットする(S43)。
S43の処理後、S40がYES判定の場合、又は、S42がNO判定の場合、メインCPU71は、制御状態フラグに特別図柄変動時間管理処理を示す値(「01」)をセットする(S44)。また、この処理では、メインCPU71は、副制御回路200に、保留減算コマンド及び特別図柄演出開始コマンドを送信する。
次いで、メインCPU71は、大当り判断処理を行う(S45)。この処理では、メインCPU71は、始動口入賞時に取得された大当り判定用乱数値に基づいて、抽選により「大当り」、「小当り」及び「ハズレ」にいずれに当選したか判断(決定)する。
次いで、メインCPU71は、前回の変動表示に用いられた記憶領域の情報(データ)をクリアする(S46)。次いで、メインCPU71は、決定された特別図柄の変動パターンに対応する変動時間を待ち時間タイマにセットする(S47)。そして、S47の処理後、メインCPU71は、特別図柄記憶チェック処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
[特別図柄表示時間管理処理]
次に、図85を参照して、特別図柄制御処理(図83参照)中のS14で行う特別図柄表示時間管理処理について説明する。なお、図85は、本実施形態における特別図柄表示時間管理処理の手順を示すフローチャートである。
まず、メインCPU71は、制御状態フラグが特別図柄表示時間管理処理を示す値(「02」)であるか否かを判別する(S51)。S51において、メインCPU71が、制御状態フラグが特別図柄表示時間管理処理を示す値(「02」)でないと判別した場合(S51がNO判定の場合)、メインCPU71は、特別図柄表示時間管理処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
一方、S51において、メインCPU71が、制御状態フラグが特別図柄表示時間管理処理を示す値(「02」)であると判別した場合(S51がYES判定の場合)、メインCPU71は、待ち時間タイマの値(待ち時間)が「0」であるか否かを判別する(S52)。この処理では、メインCPU71は、待ち時間タイマにセットされた変動確定後の待ち時間(変動開始待ち時間)が消化されたか否かを判別する。
S52において、メインCPU71が、待ち時間タイマの値が「0」でないと判別した場合(S52がNO判定の場合)、メインCPU71は、特別図柄表示時間管理処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。一方、S52において、メインCPU71が、待ち時間タイマの値が「0」であると判別した場合(S52がYES判定の場合)、メインCPU71は、特別図柄ゲームが「大当り」であるか否かを判別する(S53)。また、この処理では、メインCPU71は、同時に、特別演出停止コマンドを副制御回路200に送信する。
S53において、メインCPU71が、特別図柄ゲームが「大当り」でないと判別した場合(S53がNO判定の場合)、メインCPU71は、制御状態フラグに特別図柄ゲーム終了処理を示す値(「08」)をセットする(S54)。そして、S54の処理後、メインCPU71は、特別図柄表示時間管理処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
一方、S53において、メインCPU71が、特別図柄ゲームが「大当り」であると判別した場合(S53がYES判定の場合)、メインCPU71は、大当りフラグをオン状態にセットする(S55)。なお、大当りフラグは、大当り遊技を行うか否かを示すフラグである。
次いで、メインCPU71は、時短状態変動回数カウンタの値、時短フラグの値及び確変フラグの値をクリアする(S56)。次いで、メインCPU71は、制御状態フラグに大当り開始インターバル管理処理を示す値(「03」)をセットする(S57)。
次いで、メインCPU71は、特別図柄(第1特別図柄又は第2特別図柄)に対応する大当り開始インターバル時間(例えば、5000msec)を待ち時間タイマにセットする(S58)。次いで、メインCPU71は、特別図柄に対応する大当り開始コマンド(特別図柄当り開始表示コマンド)をメインRAM73にセットする(S59)。また、この処理では、メインCPU71は、同時に、特別図柄当り開始表示コマンドを副制御回路200に送信する。
次いで、メインCPU71は、ラウンド数表示LEDパターンフラグをオン状態にセットする(S60)。なお、ラウンド数表示LEDパターンフラグは、残りラウンド数を所定パターンで表示するか否かを示すフラグである。そして、S60の処理後、メインCPU71は、特別図柄表示時間管理処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
[大当り終了インターバル処理]
次に、図86を参照して、特別図柄制御処理(図83参照)中のS19で行う大当り終了インターバル処理について説明する。なお、図86は、本実施形態における大当り終了インターバル処理の手順を示すフローチャートである。
まず、メインCPU71は、制御状態フラグが大当り終了インターバル処理を示す値(「07」)であるか否かを判別する(S71)。
S71において、メインCPU71が、制御状態フラグが大当り終了インターバル処理を示す値(「07」)でないと判別した場合(S71がNO判定の場合)、メインCPU71は、大当り終了インターバル処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。一方、S71において、メインCPU71が、制御状態フラグが大当り終了インターバル処理を示す値(「07」)であると判別した場合(S71がYES判定の場合)、メインCPU71は、待ち時間タイマの値が「0」であるか否かを判別する(S72)。この処理では、メインCPU71は、待ち時間タイマにセットされた大当り終了インターバル時間が消化されたか否かを判別する。
S72において、メインCPU71が、待ち時間タイマの値が「0」でないと判別した場合(S72がNO判定の場合)、メインCPU71は、大当り終了インターバル処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。一方、S72において、メインCPU71が、待ち時間タイマの値が「0」であると判別した場合(S72がYES判定の場合)、メインCPU71は、大入賞口開放回数表示LEDパターンフラグをクリアする(S73)。
次いで、メインCPU71は、ラウンド数振り分けフラグをクリアする(「0」にする)(S74)。
次いで、メインCPU71は、制御状態フラグに、特別図柄ゲーム終了処理を示す値(「08」)をセットする(S75)。また、この処理では、メインCPU71は、同時に、特別図柄当り終了表示コマンドを副制御回路200に送信する。次いで、メインCPU71は、大当りフラグをクリアする(S76)。
次いで、メインCPU71は、大当り種類決定テーブル(図13〜図16参照)を参照し、大当り当選時の遊技状態及び大当り時選択図柄コマンドの種別に基づいて、確変フラグの値をセットする(S77)。次いで、メインCPU71は、大当り種類決定テーブル(図13〜図16参照)を参照し、大当り当選時の遊技状態及び大当り時選択図柄コマンドの種別に基づいて、時短フラグの値をセットする(S78)。
次いで、メインCPU71は、時短フラグの値が「1」であるか(時短フラグがオン状態であるか)否かを判別する(S79)。S79において、メインCPU71が、時短フラグの値が「1」でないと判別した場合(S79がNO判定の場合)、メインCPU71は、大当り終了インターバル処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
一方、S79において、メインCPU71が、時短フラグの値が「1」であると判別した場合(S79がYES判定の場合)、メインCPU71は、大当り種類決定テーブル(図13〜図16参照)を参照し、大当り当選時の遊技状態及び大当り時選択図柄コマンドの種別に基づいて、対応する時短回数の値を時短状態変動回数カウンタにセットする(S80)。そして、S80の処理後、メインCPU71は、大当り終了インターバル処理を終了し、処理を特別図柄制御処理(図83参照)に戻す。
[普通図柄制御処理]
次に、図87を参照して、主制御メイン処理(図82参照)中のS4で行う普通図柄制御処理について説明する。図87は、本実施形態における普通図柄制御処理の手順を示すフローチャートである。
なお、図87に示すフローチャート中の各処理ステップの符号に並記した括弧書きの数値(「00」〜「04」)は普通図柄制御状態フラグを示し、この普通図柄制御状態フラグは、メインRAM73内の所定の記憶領域に格納される。メインCPU71は、普通図柄制御状態フラグの数値に対応する各処理ステップを実行することにより、普通図柄ゲームを進行させる。
まず、メインCPU71は、普通図柄制御状態フラグをロードする(S91)。この処理では、メインCPU71は、メインRAM73に記憶された普通図柄制御状態フラグを読み出す。メインCPU71は、S91でロードされた普通図柄制御状態フラグの値に基づいて、後述のS92〜S96の各種の処理を実行するか否かを判定する。この普通制御制御状態フラグは、普通図柄ゲームの遊技の状態を示すものであり、S92〜S96のいずれかの処理を実行可能にするものである。
また、メインCPU71は、S92〜S96の各処理に対して設定された待ち時間などに応じて決定される所定のタイミングで、各ステップの処理を実行する。なお、この所定のタイミングに至る前の期間では、各ステップの処理を実行せずに、他のサブルーチン処理を実行する。また、所定の周期で後述のシステムタイマ割込処理(後述の図89参照)も実行される。
そして、S91の処理が終了すると、メインCPU71は、普通図柄記憶チェック処理を行う(S92)。
この処理では、メインCPU71は、普通図柄制御状態フラグが普通図柄記憶チェック処理を示す値(「00」)である場合に、普通図柄の可変表示の保留個数をチェックし、保留個数が「0」でないときには、当り判定等の処理を行う。また、メインCPU71は、この処理において、普通図柄制御状態フラグに、後述の普通図柄変動時間監視処理(S93)を示す値(「01」)をセットし、今回の処理で決定された変動時間を待ち時間タイマにセットする。すなわち、この処理により、S92の処理で決定された普通図柄の変動時間が経過した後、後述の普通図柄変動時間監視処理が実行されるように設定される。
次いで、メインCPU71は、普通図柄変動時間監視処理を行う(S93)。この処理では、メインCPU71は、普通図柄制御状態フラグが普通図柄変動時間監視処理を示す値(「01」)であり、普通図柄の変動時間が経過した場合に、普通図柄制御状態フラグに、後述の普通図柄表示時間監視処理(S94)を示す値(「02」)をセットし、確定後待ち時間(例えば0.5sec)を待ち時間タイマにセットする。すなわち、この処理により、S93の処理でセットされた確定後待ち時間が経過した後、後述の普通図柄表示時間監視処理が実行されるように設定される。
次いで、メインCPU71は、普通図柄表示時間監視処理を行う(S94)。この処理では、メインCPU71は、普通図柄制御状態フラグが普通図柄表示時間監視処理を示す値(「02」)であり、S93の処理でセットされた確定後待ち時間が経過した場合に、当り判定の結果が「当り」であるか否かを判断する。そして、当り判定の結果が「当り」である場合、メインCPU71は、普通電動役物開放設定処理を行い、普通図柄制御状態フラグに、後述の普通電動役物開放処理(S95)を示す値(「03」)をセットする。すなわち、この処理により、後述の普通電動役物開放処理が実行されるように設定される。
一方、当り判定の結果が「当り」でない場合、メインCPU71は、普通図柄制御状態フラグに、後述の普通図柄ゲーム終了処理(S96)を示す値(「04」)をセットする。すなわち、この場合には、後述の普通図柄ゲーム終了処理が実行されるように設定される。
次いで、メインCPU71は、S94において当り判定の結果が「当り」であると判定された場合、普通電動役物開放処理を行う(S95)。この処理では、メインCPU71は、普通図柄制御状態フラグが普通電動役物開放処理を示す値(「03」)である場合に、普通電動役物46の開放中において所定数の始動入賞があったという条件、及び、普通電動役物46の開放上限時間を経過した(普通電役開放時間タイマが「0」である)という条件の一方が満たされたか否かを判断する。
S95において、上記一方の条件が満たされた場合には、メインCPU71は、普通電動役物46である羽根部材を閉鎖状態にするため、メインRAM73に位置付けられた変数を更新する。そして、メインCPU71は、普通図柄制御状態フラグに、後述の普通図柄ゲーム終了処理(S96)を示す値(「04」)をセットする。すなわち、この処理により、後述の普通図柄ゲーム終了処理が実行されるように設定される。
次いで、メインCPU71は、普通図柄ゲーム終了処理を行う(S96)。この処理では、メインCPU71は、普通図柄制御状態フラグが普通図柄ゲーム終了処理を示す値(「04」)である場合に、普通図柄の可変表示の保留個数を示すデータを「1」減少させるように記憶更新する。また、メインCPU71は、次回の普通図柄の変動表示を行うために、普通図柄記憶領域の更新を行う。さらに、メインCPU71は、普通図柄制御状態フラグに普通図柄記憶チェック処理を示す値(「00」)をセットする。すなわち、この処理により、S96の処理後、上述した普通図柄記憶チェック処理(S92)が実行されるように設定される。
そして、S96の処理後、メインCPU71は、普通図柄制御処理を終了し、処理を主制御メイン処理(図82参照)のS5に移す。
[電源投入時処理]
次に、図88を参照して、メインCPU71により実行される電源投入時処理について説明する。図88は、本実施形態における電源投入時処理の手順を示すフローチャートである。
まず、メインCPU71は、スタックポインタに所定の初期値を設定する(S101)。次いで、メインCPU71は、電断検知信号がオフ状態(LOWレベル)であるか否かを判別する(S102)。なお、この判定処理において、電断検知信号がオフ状態である場合には、電断検知処理が実行可能な状態に無い場合に対応する。すなわち、電断検知可能な状態では、電断検知信号がオン状態となる。
S102において、メインCPU71が、電断検知信号がオフ状態(LOWレベル)であると判別した場合(S102がYES判定の場合)、メインCPU71は、電断検知信号がオン状態(HIGHレベル)になるまで、S102の判定処理を繰り返す。一方、S102において、メインCPU71が、電断検知信号がオフ状態(LOWレベル)でないと判別した場合(S102がNO判定の場合)、メインCPU71は、内蔵のRWM(Read Write Memory)、すなわち、メインRAM73へのアクセス許可処理を行う(S103)。また、この処理では、メインCPU71は、例えば、メインRAM73の作業領域の初期化処理等の各種初期設定処理を行う。
次いで、メインCPU71は、副制御受信受付ウエイト処理を行う(S104)。この処理では、メインCPU71は、副制御回路200の動作状態が、例えばコマンドデータ等のデータを受付可能な状態になるまで待機する。次いで、メインCPU71は、CPUを内蔵したデバイスの初期化処理を行う(S105)。
次いで、メインCPU71は、バックアップクリア信号がオン状態(HIGHレベル)であるか否かを判別する(S106)。具体的には、メインCPU71は、バックアップクリアスイッチ121(図5参照)がオン状態であるか否かを判別する。
S106において、メインCPU71が、バックアップクリア信号がオン状態であると判別した場合(S106がYES判定の場合)、メインCPU71は、後述のS113の処理を行う。一方、S106において、メインCPU71が、バックアップクリア信号がオン状態でないと判別した場合(S106がNO判定の場合)、メインCPU71は、電断検知フラグが設定されている(電断検知フラグの値が「1」である)か否かを判別する(S107)。
S107において、メインCPU71が、電断検知フラグが設定されていないと判別した場合(S107がNO判定の場合)、メインCPU71は、後述のS113の処理を行う。一方、S107において、メインCPU71が、電断検知フラグが設定されていると判別した場合(S107がYES判定の場合)、メインCPU71は、作業領域の損傷チェック処理を行う(S108)。なお、この処理では、メインCPU71は、チェックサム値等に基づいて、作業領域に損傷があるか否かをチェックする。
S108の処理後、メインCPU71は、S108の作業領域の損傷チェック処理の結果に基づいて、作業領域が正常であるか否かを判別する(S109)。S109において、メインCPU71が、作業領域が正常でないと判別した場合(S109がNO判定の場合)、メインCPU71は、後述のS113の処理を行う。
一方、S109において、メインCPU71が、作業領域が正常であると判別した場合(S109がYES判定の場合)、メインCPU71は、電断復帰時に初期値のセットが必要となる作業領域の初期設定処理を行う(S110)。次いで、メインCPU71は、電断復帰時の高確率遊技状態の報知設定処理を行う(S111)。
S111の処理後、メインCPU71は、電断復帰コマンドを副制御回路200に送信する(S112)。この処理では、メインCPU71は、上述した第1電断復帰コマンド及び第2電断復帰コマンド(図25及び図26参照)を副制御回路200に送信する。そして、S112の処理後、メインCPU71は、電源投入時処理を終了する。
ここで、再度、S106、S107又はS109の処理に戻って、S106がYES判定の場合、又は、S107或いはS109がNO判定の場合、すなわち、パチンコ遊技機1を電断検知前の状態に復帰させることができない場合、メインCPU71は、全ての作業領域をクリアする(S113)。
次いで、メインCPU71は、メインRAM73の初期化時に初期値のセットが必要となる作業領域の初期設定処理を行う(S114)。次いで、メインCPU71は、メインRAM73の初期化コマンドを副制御回路200に送信する(S115)。そして、S115の処理後、メインCPU71は、電源投入時処理を終了する。
[システムタイマ割込処理]
本実施形態のパチンコ遊技機1では、メインCPU71は、メイン処理の実行中であっても、所定周期でメイン処理を中断し、システムタイマ割込処理を実行する。具体的には、メインCPU71は、クロック発生回路74から所定周期(例えば2msec)で発生されるクロックパルスに応じて、システムタイマ割込処理を実行する。ここで、図89を参照して、メインCPU71により実行されるシステムタイマ割込処理について説明する。なお、図89は、本実施形態におけるシステムタイマ割込処理の手順を示すフローチャートである。
まず、メインCPU71は、各レジスタのデータ(情報)を退避させる(S121)。次いで、メインCPU71は、乱数更新処理を行う(S122)。この処理では、メインCPU71は、大当り判定用カウンタ、図柄決定用カウンタ、当り判定用カウンタ、転落判定用カウンタ、変動パターン決定用カウンタ、演出パターン決定用カウンタなどから抽出される各種乱数値を更新する。なお、大当り判定用カウンタ及び図柄決定用カウンタは、カウンタ値の更新タイミングが不定であると、公正さに欠ける。そのため、大当り判定用カウンタ及び図柄決定用カウンタは、公正さを担保するために2msec周期で決まったタイミングで更新を行う。
次いで、メインCPU71は、スイッチ入力検出処理を行う(S123)。この処理では、メインCPU71は、各種始動口、各種入賞口及び球通過検出器43への入賞又は通過を検出する。なお、スイッチ入力検出処理の詳細については、後述の図90を参照しながら後で説明する。
次いで、メインCPU71は、タイマ更新処理を行う(S124)。具体的には、メインCPU71は、主制御回路70と副制御回路200との同期をとるための待ち時間タイマ、大入賞口の開放時間を計測するための大入賞口開放時間タイマ等の各種タイマの更新処理を行う。
次いで、メインCPU71は、コマンド出力処理を行う(S125)。この処理では、メインCPU71は、副制御回路200のホスト制御回路210に、例えば、入賞コマンド、変動コマンド等の各種コマンドを出力する。
次いで、メインCPU71は、遊技情報出力処理を行う(S126)。この処理では、メインCPU71は、主制御回路70、副制御回路200、払出・発射制御回路123等で処理される遊技に係る各種情報を、遊技店のホールコンピュータに出力する。
次いで、メインCPU71は、S121で退避させた各レジスタのデータを復帰させる(S127)。そして、S127の処理後、メインCPU71は、システムタイマ割込処理を終了する。
[スイッチ入力検出処理]
次に、図90を参照して、システムタイマ割込処理(図89参照)中のS123で行うスイッチ入力検出処理について説明する。なお、図90は、本実施形態におけるスイッチ入力検出処理の手順を示すフローチャートである。
まず、メインCPU71は、始動口入賞検出処理を行う(S131)。この処理では、メインCPU71は、第1始動口44又は第2始動口45に遊技球が入球(通過)したか否かを判別する。すなわち、メインCPU71は、第1始動口入賞球センサ44a又は第2始動口入賞球センサ45aにより遊技球の入賞が検出されたか否かを検出する。なお、始動口入賞検出処理の詳細については、後述の図91を参照しながら後で説明する。
次いで、メインCPU71は、一般入賞口通過検出処理を行う(S132)。この処理では、メインCPU71は、一般入賞口51に遊技球が入球したか否かを判別する。すなわち、メインCPU71は、一般入賞球センサ51aにより遊技球の入賞が検出されたか否かを検出する。そして、一般入賞口51への遊技球の入賞が検出された場合には、メインCPU71は、該入賞に対応する所定の各種処理を行う。
次いで、メインCPU71は、大入賞口通過検出処理を行う(S133)。この処理では、メインCPU71は、第1大入賞口53又は第2大入賞口54に遊技球が入球したか否かを判別する。すなわち、メインCPU71は、第1大入賞口ソレノイド53b又は第2大入賞口ソレノイド54bにより遊技球の入賞が検出されたか否かを検出する。そして、第1大入賞口53又は第2大入賞口54への遊技球の入賞が検出された場合には、メインCPU71は、該入賞に対応する所定の各種処理を行う。
次いで、メインCPU71は、ゲート通過検出処理を行う(S134)。この処理では、メインCPU71は、遊技球が球通過検出器43を通過したか否かを判別する。すなわち、メインCPU71は、通過球センサ43aにより遊技球の通過が検出されたか否かを検出する。次いで、遊技球が球通過検出器43を通過したことが検出された場合には、メインCPU71は、該通過に対応する所定の各種処理を行う。そして、S134の処理後、メインCPU71は、スイッチ入力検出処理を終了し、処理をシステムタイマ割込処理(図89参照)のS124に移す。
[始動口入賞検出処理]
次に、図91を参照して、スイッチ入力検出処理(図90参照)中のS131で行う始動口入賞検出処理について説明する。なお、図91は、本実施形態における始動口入賞検出処理の手順を示すフローチャートである。
まず、メインCPU71は、第1始動口入賞球センサ44aの出力信号に基づいて、第1始動口44への遊技球の入賞が検出されたか否かを判別する(S141)。
S141において、メインCPU71が、第1始動口44への遊技球の入賞が検出されていないと判別した場合(S141がNO判定の場合)、メインCPU71は、後述のS149の処理を行う。一方、S141において、メインCPU71が、第1始動口44への遊技球の入賞が検出されたと判別した場合(S141がYES判定の場合)、メインCPU71は、第1始動口入賞に対応する払出情報をメインRAM73にセットする(S142)。本実施形態では、遊技球が第1始動口44に入賞すると所定数の遊技球が払い出される。それゆえ、S142の処理では、所定数の遊技球の払出情報がセットされる。
S142の処理後、メインCPU71は、第1始動口入賞(第1特別図柄の可変表示)の保留個数(保留球の個数)が「4」未満であるか否かを判別する(S143)。
S143において、メインCPU71が、第1始動口入賞の保留個数が「4」未満でないと判別した場合(S143がNO判定の場合)、メインCPU71は、後述のS149の処理を行う。一方、S143において、メインCPU71が、第1始動口入賞の保留個数が「4」未満であると判別した場合(S143がYES判定の場合)、メインCPU71は、第1始動口入賞の保留個数を「1」加算する処理を行う(S144)。
S144の処理後、メインCPU71は、抽選に用いる各種乱数値を取得し、取得した各種乱数値をメインRAM73の所定領域に格納する(S145)。具体的には、メインCPU71は、大当り判定用乱数値、図柄乱数値、転落判定用乱数値等の各種乱数値を取得する。
次いで、メインCPU71は、第1特別停止図柄判定処理を行う(S146)。この処理では、メインCPU71は、大当り乱数判定テーブル(第1始動口)(図9参照)及び図柄判定テーブル(第1始動口)(図11参照)を参照し、S145で取得した大当り判定用乱数値及び図柄乱数値に基づいて、「大当り」か否かの判定を行うとともに、「大当り」の場合には、表示装置13の表示画面に表示される予定の大当り図柄(演出用識別図柄)の選択(判定)を行う。
次いで、メインCPU71は、転落の有無の判断処理を行う(S147)。この処理では、メインCPU71は、S145で取得した転落判定用乱数値に基づいて、転落抽選を行い、転落の発生の有無を判定する。これにより、メインCPU71は、転落抽選情報(「0」:転落無し、又は、「1」:転落有り)を取得する。
次いで、メインCPU71は、第1始動口入賞時の保留加算コマンドデータをメインRAM73にセットする(S148)。
この処理では、メインCPU71は、大当り乱数判定テーブル(第1始動口)(図9参照)、図柄判定テーブル(第1始動口)(図11参照)、大当り種類決定テーブル(図13〜図16参照)及び入賞時演出情報決定テーブル(図17参照)を参照して得られる、遊技状態(「通常」、「確変」、「時短」)、当選種別(「大当り」、「小当り」、「ハズレ」)、始動記憶数(第1特別図柄の保留個数)、図柄指定コマンド、大当り時選択図柄コマンド、入賞時演出情報、大当り判定の結果情報、転落抽選情報などの情報に基づいて、保留加算コマンドに含ませる情報(送信内容)を決定する。
なお、この際、遊技状態は、確変フラグ及び時短フラグの値を参照して取得され、当選種別は、大当り乱数判定テーブル(第1始動口)(図9参照)を参照することにより取得され、図柄指定コマンド及び大当り時選択図柄コマンドは、図柄判定テーブル(第1始動口)(図11参照)を参照することにより取得され、入賞時演出情報は、入賞時演出情報決定テーブル(図17参照)を参照することにより取得される。また、大当り判定の結果情報は、S146の処理で取得され、転落抽選情報は、S147の処理で取得される。
また、本実施形態では、S148の処理において、第1始動口入賞時の保留加算コマンドがメインCPU71から副制御回路200(ホスト制御回路210)に送信される。そして、この第1始動口入賞時の保留加算コマンドに基づいて、副制御回路200は、保留演出及び先読み演出の演出パターンを選択する。
S148の処理後、又は、S141或いはS143がNO判定の場合、メインCPU71は、第2始動口入賞球センサ45aの出力信号に基づいて、第2始動口45への遊技球の入賞が検出されたか否かを判別する(S149)。
S149において、メインCPU71が、第2始動口45への遊技球の入賞が検出されていないと判別した場合(S149がNO判定の場合)、メインCPU71は、始動口入賞検出処理を終了し、処理をスイッチ入力検出処理(図90参照)のS132に移す。一方、S149において、メインCPU71が、第2始動口45への遊技球の入賞が検出されたと判別した場合(S149がYES判定の場合)、メインCPU71は、第2始動口入賞に対応する払出情報をメインRAM73にセットする(S150)。本実施形態では遊技球が第2始動口45に入賞すると、所定数の遊技球が払い出される。それゆえ、S150の処理では、所定数の遊技球の払出情報がセットされる。
S150の処理後、メインCPU71は、第2始動口入賞(第2特別図柄の可変表示)の保留個数(保留球の個数)が「4」未満であるか否かを判別する(S151)。
S151において、メインCPU71が、第2始動口入賞の保留個数が「4」未満でないと判別した場合(S151がNO判定の場合)、メインCPU71は、始動口入賞検出処理を終了し、処理をスイッチ入力検出処理(図90参照)のS132に移す。一方、S151において、メインCPU71が、第2始動口入賞の保留個数が「4」未満であると判別した場合(S151がYES判定の場合)、メインCPU71は、第2始動口入賞の保留個数を「1」加算する処理を行う(S152)。S152の処理後、メインCPU71は、抽選に用いる各種乱数値を取得し、取得した各種乱数値をメインRAM73の所定領域に格納する(S153)。具体的には、メインCPU71は、大当り判定用乱数値、図柄乱数値、転落判定用乱数値等の各種乱数値を取得する。
次いで、メインCPU71は、第2特別停止図柄判定処理を行う(S154)。この処理では、メインCPU71は、大当り乱数判定テーブル(第2始動口)(図10参照)及び図柄判定テーブル(第2始動口)(図12参照)を参照し、S153で取得した大当り判定用乱数値及び図柄乱数値に基づいて、「大当り」か否かの判定を行うとともに、大当りの場合には、表示装置13の表示画面に表示される予定の大当り図柄(演出用識別図柄)の選択(判定)を行う。
次いで、メインCPU71は、転落の有無の判断処理を行う(S155)。この処理では、メインCPU71は、S153で取得した転落判定用乱数値に基づいて、転落抽選を行い、転落の発生の有無を判定する。これにより、メインCPU71は、転落抽選情報(「0」:転落無し、又は、「1」:転落有り)を取得する。
次いで、メインCPU71は、第2始動口入賞時の保留加算コマンドデータをメインRAM73にセットする(S156)。
この処理では、メインCPU71は、大当り乱数判定テーブル(第2始動口)(図10参照)、図柄判定テーブル(第2始動口)(図12参照)、大当り種類決定テーブル(図13〜図16参照)及び入賞時演出情報決定テーブル(図17参照)を参照して得られる、遊技状態(「通常」、「確変」、「時短」)、当選種別(「大当り」、「ハズレ」)、始動記憶数(第2特別図柄の保留個数)、図柄指定コマンド、大当り時選択図柄コマンド、入賞時演出情報、大当り判定の結果情報、転落抽選情報などの情報に基づいて、保留加算コマンドに含ませる情報(送信内容)を決定する。
なお、この際、遊技状態は、確変フラグ及び時短フラグの値を参照して取得され、当選種別は、大当り乱数判定テーブル(第2始動口)(図10参照)を参照することにより取得され、図柄指定コマンド及び大当り時選択図柄コマンドは、図柄判定テーブル(第2始動口)(図12参照)を参照することにより取得され、入賞時演出情報は、入賞時演出情報決定テーブル(図17参照)を参照することにより取得される。また、大当り判定の結果情報は、S154の処理で取得され、転落抽選情報は、S155の処理で取得される。
また、本実施形態では、S156の処理において、第2始動口入賞時の保留加算コマンドがメインCPU71から副制御回路200(ホスト制御回路210)に送信される。副制御回路200は、この第2始動口入賞時の保留加算コマンドに基づいて、保留演出及び先読み演出の演出パターンを選択する。そして、S156の処理後、メインCPU71は、始動口入賞検出処理を終了し、処理をスイッチ入力検出処理(図90参照)のS132に移す。
<副制御回路の動作説明>
次に、図92〜図124を参照して、副制御回路200のサブ基板202内の各種制御回路により実行される各種処理の内容について説明する。なお、副制御回路200は、主制御回路70から送信された各種コマンドを受信し、該各種コマンドに基づいて各種処理を行う。
[副制御メイン処理]
最初に、図92を参照して、ホスト制御回路210により実行される副制御メイン処理について説明する。図92は、本実施形態における副制御メイン処理の手順を示すフローチャートである。なお、副制御メイン処理は、電源が投入されたときに開始される処理である。
まず、ホスト制御回路210は、初期化処理を行う(S201)。この処理では、ホスト制御回路210は、例えば、ハードウェアの初期化、デバイスの初期化、アプリケーション(各種処理)の初期化、バックアップデータの復帰初期化等の各種初期設定処理を行う。なお、初期化処理の詳細については、後述の図93及び図94を参照しながら後で説明する。
次いで、ホスト制御回路210は、ウォッチドッグタイマのカウンタをクリアする(S202)。なお、起動時には、ウォッチドッグタイマのリセット時間(例えば200msec)が設定され、その後、サービスパルスの書込みが行われなかった場合(タイムアウト時)には、電断処理が開始される。また、ウォッチドッグタイマカウンタをクリアするタイミングは、副制御メイン処理内のメインループ処理(S202〜S212の処理)の開始時、デバイス初期化処理の開始時、アプリケーション初期化処理の開始時及び電断処理の開始時である。
次いで、ホスト制御回路210は、操作手段入力処理を行う(S203)。この処理では、ホスト制御回路210は、遊技者により例えば選択ボタン36、決定ボタン37などの操作手段に対して操作が行われたか否かの判定処理、及び、操作内容の情報取得処理を行う。なお、操作手段入力処理の詳細については、後述の図98を参照しながら後で説明する。
次いで、ホスト制御回路210は、メイン・サブ間コマンド制御処理を行う(S204)。この処理では、ホスト制御回路210は、メインCPU71からコマンドデータを受信した際のコマンドデータの受信処理(割込処理)及びサブワークRAM210aへのコマンドデータの格納処理を行う。なお、メイン・サブ間コマンド制御処理の詳細については、後述の図103を参照しながら後で説明する。
次いで、ホスト制御回路210は、コマンド解析処理を行う(S205)。この処理では、ホスト制御回路210は、サブワークRAM210aに格納されたコマンドの内容を解析し、コマンドに含まれる各種情報を取得する。なお、コマンド解析処理の詳細については、後述の図104を参照しながら後で説明する。
次いで、ホスト制御回路210は、アニメーションリクエスト構築処理を行う(S206)。この処理では、ホスト制御回路210は、表示装置13を用いて演出制御を行う際に必要なアニメーションリクエストを生成し、該アニメーションリクエストに基づいて(該アニメーションリクエストに対応して、該アニメーションリクエストに応じて、該アニメーションリクエストに基づいて実行される表示装置13における演出制御(表示)に対応して、などと表現可能な)各種演出装置を動作させるための各種リクエスト(サウンドリクエスト、ランプリクエスト及び役物リクエスト)を生成する。なお、アニメーションリクエスト構築処理の詳細については、後述の図106を参照しながら後で説明する。
なお、本実施形態では、上述のように、コマンドの種別に応じてコマンドのパケット数(バイト数)が異なる。そして、ホスト制御回路210において、複数のコマンドデータを受信した際に、その全てのコマンドデータの総パケット数が所定の最大パケット数以下である場合には、上述したコマンド解析処理(S205)及びアニメーションリクエスト構築処理(S206)は、受信した複数のコマンドデータに対して同一フレームで実施される。しかしながら、受信した複数のコマンドデータの総パケット数が所定の最大パケット数を超える場合には、受信した複数のコマンドデータのうち、所定の最大パケット数分のコマンドデータに対しては同一フレームにおいてコマンド解析処理(S205)及びアニメーションリクエスト構築処理(S206)を行い、残りのパケット数分のコマンドデータに対するコマンド解析処理(S205)及びアニメーションリクエスト構築処理(S206)は次フレームで実施される。
次いで、ホスト制御回路210は、上記S204〜S206の処理が受信コマンド数分実施されたか否かを判別する(S207)。
S207において、ホスト制御回路210が、上記S204〜S206の処理が受信コマンド数分実施されていないと判別した場合(S207がNO判定の場合)、ホスト制御回路210は、処理をS204に戻し、S204以降の処理を繰り返す。
一方、S207において、ホスト制御回路210が、上記S204〜S206の処理が受信コマンド数分実施されたと判別した場合(S207がYES判定の場合)、ホスト制御回路210は、描画制御処理を行う(S208)。この処理では、ホスト制御回路210は、アニメーションリクエストに基づいて、動画コマンド及び描画リクエストを生成し、該生成された動画コマンド及び前フレームで生成された描画リクエストを表示制御回路230に送信する。また、この際、表示制御回路230は、受信した動画コマンド及び描画リクエストに基づいて、表示装置13に演出画像を表示(描画)するための各種処理を行う。なお、描画制御処理の詳細については、後述の図107A及び図107Bを参照しながら後で説明する。
次いで、ホスト制御回路210は、音声制御処理を行う(S209)。この処理では、ホスト制御回路210は、サウンドリクエスト(コマンド)を音声・LED制御回路220に送信する。また、この際、音声・LED制御回路220は、受信したサウンドリクエストに基づいて、スピーカ群10による音声再生の制御処理を行う。なお、音声制御処理の詳細については、後述の図114A及び図114Bを参照しながら後で説明する。
次いで、ホスト制御回路210は、ランプ制御処理を行う(S210)。この処理では、ホスト制御回路210は、ランプリクエスト(コマンド)を音声・LED制御回路220に送信する。また、この際、音声・LED制御回路220は、受信したランプリクエストに基づいて、ランプ群20の発光制御を行う。なお、ランプ制御処理の詳細については、後述の図115A及び図115Bを参照しながら後で説明する。
次いで、ホスト制御回路210は、役物制御処理を行う(S211)。この処理では、ホスト制御回路210は、生成された役物リクエストに基づいて、役物群30を駆動させるための励磁データをI2Cコントローラ261を介してモータコントローラ270(モータドライバ271)に送信する。また、ホスト制御回路210は、決定した演出内容に応じて、生成した役物リクエストを音声・LED制御回路220に出力する。そして、モータドライバ271は、受信した励磁データを対応するモータ272に出力して役物群30を駆動する。なお、役物制御処理の詳細については、後述の図116を参照しながら後で説明する。
次いで、ホスト制御回路210は、上述したS202の処理開始からの経過時間が設定された所定のFPS周期の時間以上であるか否かを判別する(S212)。本実施形態では、ホスト制御回路210は、上述したS202〜S211の一連の処理(メインループ処理)を所定のFPS周期で実行する。なお、FPS周期は、例えば、約33msec(30FPS)等に設定される。
S212において、ホスト制御回路210が、S202の処理開始からの経過時間が所定のFPS周期の時間以上でないと判別した場合(S212がNO判定の場合)、ホスト制御回路210は、S212の判定処理を繰り返す。一方、S212において、ホスト制御回路210が、S202の処理開始からの経過時間が所定のFPS周期の時間以上であると判別した場合(S212がYES判定の場合)、ホスト制御回路210は、処理をS202に戻し、S202以降の処理を繰り返す。
[初期化処理]
次に、図93及び図94を参照して、副制御メイン処理(図92参照)中のS201で行う初期化処理について説明する。なお、図93は、本実施形態における初期化処理の動作概要を示す図であり、図94は、本実施形態における初期化処理の手順を示すフローチャートである。
パチンコ遊技機1に電源が投入されると、初期化処理において、ホスト制御回路210は、図93に示すように、自身だけでなく、ホスト制御回路210に接続された各種制御回路及びコントローラのハードウェアの初期化処理を行う。次いで、各制御回路又はコントローラは、対応するデバイス(ランプ群20、スピーカ群10、表示装置13、役物群30)の初期化処理を行う。以下に、この初期化処理の具体的にな手順を、図94のフローチャートを参照しながら説明する。
まず、ホスト制御回路210は、電源オンを検知したか否かを判別する(S221)。S221において、ホスト制御回路210が、電源オンを検知していないと判別した場合(S221がNO判定の場合)、ホスト制御回路210は、S221の判定処理を繰り返す。なお、電源オンの検知処理では、ホスト制御回路210に供給されている電源電圧が、安定しているか否かを判定するので、電源オンが検知されていない状態は、実際に電源がオン状態であってもホスト制御回路210に供給されている電源電圧が安定していないことを表す。それゆえ、S221で繰り返し行われる電源オン状態の検知処理は、ホスト制御回路210に供給されている電源電圧が安定するまでの待機処理となる。
一方、S221において、ホスト制御回路210が、電源オンを検知したと判別した場合(S221がYES判定の場合)、ホスト制御回路210は、ハードウェア初期化処理を行う(S222)。この処理では、ホスト制御回路210は、サブ基板202内に設けられた各種制御回路(自身の回路、音声・LED制御回路220及び表示制御回路230)、並びに、ホスト制御回路210に接続されたモータコントローラ270のハードウェアを初期化する。具体的には、各制御回路及びモータコントローラ270内の、レジスタの初期化処理、制御ROMの設定処理等が行われる。
次いで、ホスト制御回路210は、ウォッチドッグタイマのカウンタをクリアする(S223)。
次いで、サブ基板202内に設けられた各種制御回路、並びに、モータコントローラ270は、それぞれ対応するデバイスの初期化処理を行う(S224)。この処理では、音声・LED制御回路220は、ランプ群20及びスピーカ群10のドライバ(制御プログラム)の初期化・設定処理(ROMアクセスの設定処理等を含む)を行う。また、表示制御回路230は、表示装置13のドライバの初期化・設定処理(ROMアクセスの設定処理等を含む)を行う。また、モータコントローラ270は、役物群30内の各役物を駆動するためのモータドライバ271の初期化・設定処理(ROMアクセスの設定処理等を含む)を行う。さらに、本実施形態では、この処理において、ホスト制御回路210は、図示しない操作手段のドライバの初期化・設定処理(ROMアクセスの設定処理等を含む)も行う。
次いで、ホスト制御回路210は、ウォッチドッグタイマのカウンタをクリアする(S225)。
次いで、ホスト制御回路210は、アプリケーション初期化処理を行う(S226)。この処理では、ホスト制御回路210は、図92で説明した副制御メイン処理中のメインループ処理で行われる各種処理で使用される各種設定値の初期化処理を行う。具体的には、ホスト制御回路210は、操作手段入力処理(S203)、メイン・サブ間コマンド制御処理(S204)、アニメーションリクエスト構築処理(S206)、描画制御処理(S208)、音声制御処理(S209)及びランプ制御処理(S210)のそれぞれにおいて使用される各種設定値の初期化処理を行う。
次いで、ホスト制御回路210は、その他の各種初期化処理を行う(S227)。この処理では、ホスト制御回路210は、バックアップ復帰初期化処理、役物制御初期化処理及びLED登録処理を行う。なお、バックアップ復帰初期化処理の詳細については、後述の図95を参照しながら後で説明し、役物制御初期化処理の詳細については、後述の図96を参照しながら後で説明し、LED登録処理の詳細については、後述の図97を参照しながら後で説明する。
そして、S227の処理後、ホスト制御回路210は、初期化処理を終了し、処理を副制御メイン処理(図92参照)のS202に移す。
[バックアップ復帰初期化処理]
次に、図95を参照して、初期化処理(図94参照)中のS227で行うバックアップ復帰初期化処理について説明する。なお、図95は、本実施形態におけるバックアップ復帰初期化処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、SRAM210bのバックアップ領域に記憶されるゲームデータの整合性チェック処理を行う(S231)。このゲームデータの整合性チェック処理では、ゲームデータのサム値判定、プログラムバージョン及びマジックコード(一般的にはマジックナンバーと呼ばれるもの)のチェック、サムチェック等の処理が行われる。なお、「ゲームデータ」とは、コマンド内のパラメータの情報などが含まれ、ホスト制御回路210で行われる各種抽選処理やアニメーションリクエスト構築処理などで参照されるデータの構造体(記憶領域又は変数の集合体)のことをいう。また、後述のように、「ゲームデータ」には、各種抽選処理の抽選結果の情報(例えば演出パターン等)もまた登録される。
次いで、ホスト制御回路210は、SRAM210bのバックアップ領域に記憶されるゲームデータに整合性があるか否かを判別する(S232)。この処理では、ホスト制御回路210は、ゲームデータが破損していないか否かを判別している。
S232において、ホスト制御回路210が、ゲームデータに整合性があると判別した場合(S232がYES判定の場合)、ホスト制御回路210は、後述のS236の処理を行う。
一方、S232において、ホスト制御回路210が、ゲームデータに整合性がないと判別した場合(S232がNO判定の場合)、ホスト制御回路210は、SRAM210b内のミラーリング領域に記憶されるゲームデータの整合性チェック処理を行う(S233)。次いで、ホスト制御回路210は、SRAM210b内のミラーリング領域に記憶されるゲームデータに整合性があるか否かを判別する(S234)。
S234において、ホスト制御回路210が、ゲームデータに整合性があると判別した場合(S234がYES判定の場合)、ホスト制御回路210は、後述のS236の処理を行う。
一方、S234において、ホスト制御回路210が、ゲームデータに整合性がないと判別した場合(S234がNO判定の場合)、ホスト制御回路210は、ゲームデータ初期化処理(RAMクリア時)を行う(S235)。この処理では、ホスト制御回路210は、ゲームデータが記憶されているRAM領域をクリアする際の初期化処理を行う。具体的には、ホスト制御回路210は、変数等を初期化してゲームデータを初期値に戻す(ゲームデータを完全初期化する)。
S235の処理後、又は、S232或いはS234がYES判定の場合、ホスト制御回路210は、ゲームデータ初期化処理(電源オン時)を行う(S236)。
なお、この際、S236の処理がS232の処理後に行われた場合には、ホスト制御回路210は、SRAM210bのバックアップ領域に記憶されているゲームデータの復帰処理を行う。S236の処理がS234の処理後に行われた場合には、ホスト制御回路210は、SRAM210b内のミラーリング領域に記憶されているゲームデータの復帰処理を行う。また、S236の処理がS235の処理後に行われた場合には、ホスト制御回路210は、完全初期化されたゲームデータ(初期値)の復帰処理を行う。
次いで、ホスト制御回路210は、S236の処理により復帰させたゲームデータをSRAM210bにバックアップする(S237)。そして、S237の処理後、ホスト制御回路210は、バックアップ復帰初期化処理を終了する。
[役物制御初期化処理]
次に、図96を参照して、初期化処理(図94参照)中のS227で行う役物制御初期化処理について説明する。図96は、本実施形態における役物制御初期化処理の手順を示すフローチャートである。なお、この処理では、図92で説明した副制御メイン処理中の役物制御処理(S211)において、使用される各種設定の初期化処理を行う。
まず、ホスト制御回路210は、役物群30内の所定の可動役物の動作回数に「0」をセットする(S241)。次いで、ホスト制御回路210は、所定の可動役物を駆動するモータ272が初期位置にあるか否かを判別する(S242)。なお、この判定処理は、モータ272が初期位置にあるか否かを判別するために設けられた図示しないセンサの検出結果に基づいて行われる。
S242において、ホスト制御回路210が、モータ272が初期位置にあると判別した場合(S242がYES判定の場合)、ホスト制御回路210は、所定の可動役物で使用する全てのモータ272に対してS242の判定処理が行われたか否かを判別する(S243)。
S243において、ホスト制御回路210が、使用する全てのモータ272に対してS242の判定処理が行われていないと判別した場合(S243がNO判定の場合)、ホスト制御回路210は、処理をS241に戻し、S241以降の処理を繰り返す。
一方、S243において、ホスト制御回路210が、使用する全てのモータ272に対してS242の判定処理が行われたと判別した場合(S243がYES判定の場合)、ホスト制御回路210は、電源投入時処理を行う(S244)。S244の処理では、ホスト制御回路210は、電源投入時おいて、所定の可動役物の動作確認処理を行う。具体的には、ホスト制御回路210は、所定の可動役物を最大可動域まで又は予め定められた可動域まで移動させ、その後、所定の可動役物を初期位置に戻す。そして、S244の処理後、ホスト制御回路210は、後述のS249の処理を行う。
ここで、再度、S242の処理に戻って、S242において、ホスト制御回路210が、モータ272が初期位置にないと判別した場合(S242がNO判定の場合)、ホスト制御回路210は、所定の可動役物の動作回数が10回以上であるか否かを判別する(S245)。なお、この処理では、検査対象のモータ272に動作停止させるほどの異常(エラー)が発生しているか否かを判定するが、このエラー判定の閾値となる動作回数は10回に限定されず、任意に設定することができる。
S245において、ホスト制御回路210が、動作回数が10回以上であると判別した場合(S245がYES判定の場合)、ホスト制御回路210は、エラーが発生したモータ272(エラーモータ)の動作停止を設定する(S246)。そして、S246の処理後、ホスト制御回路210は、後述のS249の処理を行う。
一方、S245において、ホスト制御回路210が、動作回数が10回以上でないと判別した場合(S245がNO判定の場合)、ホスト制御回路210は、検査対象のモータ272を駆動して初期位置に移動させる(S247)。次いで、ホスト制御回路210は、動作回数に「1」を加算する(S248)。そして、S248の処理後、ホスト制御回路210は、処理をS242に戻し、S242以降の処理を繰り返す。
S244又はS246の処理後、ホスト制御回路210は、エラーモータの動作停止を検出したか否かを判別する(S249)。
S249において、ホスト制御回路210が、エラーモータの動作停止を検出していないと判別した場合(S249がNO判定の場合)、ホスト制御回路210は、動作状態をコマンド受信待機状態に移行させる(S250)。そして、S250の処理後、ホスト制御回路210は、役物制御初期化処理を終了する。
一方、S249において、ホスト制御回路210が、エラーモータの動作停止を検出したと判別した場合(S249がYES判定の場合)、ホスト制御回路210は、役物リクエストの受け渡し不可の状態をセットする(S251)。この処理では、ホスト制御回路210は、ホスト制御回路210により実行される役物制御に関する処理間における役物リクエストの受け渡し不可、及び、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し不可をセットする。
次いで、ホスト制御回路210は、電源が再投入されて、所定の可動役物の初期化処理が行われるまでモータ停止させる状態をセットする(S252)。そして、S252の処理後、ホスト制御回路210は、役物制御初期化処理を終了する。なお、本実施形態のように、役物群30に複数の可動役物(第1剣役物31、第2剣役物32及びシャッタ役物33)を含む場合には、役物制御初期化処理において、上記S241〜S252の処理が可動役物毎に繰り返される。
[LED登録処理]
次に、図97を参照して、初期化処理(図94参照)中のS227で行うLED登録処理について説明する。なお、図97は、本実施形態におけるLED登録処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、使用するLED281のチャンネルのハード情報を登録する(S261)。具体的には、ホスト制御回路210は、使用する各SPIのチャンネル開始ポート番号、チャンネル終了ポート番号及びチャンネル開始アドレスの設定を行う。
次いで、ホスト制御回路210は、使用するLEDドライバ280の情報設定を行う(S262)。具体的には、ホスト制御回路210は、LEDドライバ280にデータテーブル(LED281の点灯パターンの総数、LEDドライバ280に出力される輝度値に対応する情報テーブルなど)を登録する。そして、S262の処理後、ホスト制御回路210は、LED登録処理を終了する。
[操作手段入力処理]
次に、図98を参照して、副制御メイン処理(図92参照)中のS203で行う操作手段入力処理について説明する。なお、図98は、本実施形態における操作手段入力処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、メニュー実行フラグがオン状態であるか否かを判別する(S271)。メニュー実行フラグは、図74A及び図74Bで説明したメニュー選択画面の表示処理を開始するか否かを示すフラグであり、メニュー実行フラグがオン状態である場合に、メニュー選択画面の表示処理が開始される。なお、メニュー実行フラグは、後述の操作入力タイマ割込処理(後述の図101参照)において、特別図柄の非変動期間中に、遊技者により決定ボタン37が長押しされた場合にオン状態にセットされる。
S271において、ホスト制御回路210が、メニュー実行フラグがオン状態でないと判別した場合(S271がNO判定の場合)、ホスト制御回路210は、操作手段入力処理を終了し、処理を副制御メイン処理(図92参照)のS204に移す。一方、S271において、ホスト制御回路210が、メニュー実行フラグがオン状態であると判別した場合(S271がYES判定の場合)、ホスト制御回路210は、メニュー選択画面の表示設定処理を行う(S272)。この処理により、上記図74Aで説明したパスワードの入力画面が表示装置13の表示画面に表示され、遊技者がパスワードを入力することが可能な状態が生成される。
S272の処理後、ホスト制御回路210は、パスワードの確認処理を行う(S273)。この処理では、S272の処理で表示されたパスワードの入力画面上において、遊技者の操作により入力されたパスワードが正しいか否かの確認処理を行う。この処理により入力されたパスワードが正しいと判断されると、表示装置13の表示画面には、例えば図74Bに示すメニュー選択画面(メニュー一覧画面)が表示され、遊技者が複数のメニューから所定のメニューを選択することが可能な状態が生成される。
なお、S273の処理において、遊技者によるパスワードの入力が確認された場合には、表示装置13の表示画面に、上記図74Bで説明したメニュー選択画面が表示され、次のS274の処理が行われるが、例えば、遊技者によるパスワードの入力が所定期間確認されなかった場合や、図74Aに示すパスワードの入力画面上の選択肢「戻る」が遊技者により選択された場合には、操作手段入力処理が終了し、表示装置13の表示画面は、通常の遊技画面(通常画面)に戻る。
次いで、ホスト制御回路210は、選択操作処理を行う(S274)。この処理では、ホスト制御回路210は、選択ボタン36(上下左右の移動ボタン)への遊技者の操作を検出するとともに、その選択操作に対応して、メニュー選択画面上において選択中のメニューの表示態様(例えば、選択肢の文字色と背景色とを反転させる表示態様など)を複数の選択肢間で移動表示させる。また、ホスト制御回路210は、選択中の所定の選択肢上で、遊技者が決定ボタン37を押下したか否かを判別する。
なお、S274の処理において、遊技者により所定の選択肢が選ばれ、所定の選択肢が決定されたときには、次のS275の処理が行われるが、例えば、図74Bに示すメニュー選択画面中の選択肢「戻る」が遊技者により選択された場合には、表示装置13の表示画面は、パスワードの入力画面(図74Aの画面)に戻る(すなわち、S273の処理に戻る)。
次いで、ホスト制御回路210は、S274の処理において、図75〜図81で説明したスピーカチェック機能の作動が選択されたか否かを判別する(S275)。具体的には、ホスト制御回路210は、図74Bに示すメニュー選択画面において、遊技者により選択肢「スピーカチェック」が決定されたか否かを判別する。
S275において、ホスト制御回路210が、スピーカチェック機能の作動が選択されたと判別した場合(S275がYES判定の場合)、ホスト制御回路210は、スピーカ設定実行フラグをオン状態にする(S276)。この処理により、図75〜図81で説明したスピーカチェック機能が作動し、スピーカ群10の出音条件のチェック処理及び設定処理が実行可能になる。
一方、S275において、ホスト制御回路210が、スピーカチェック機能の作動が選択されなかったと判別した場合(S275がNO判定の場合)、ホスト制御回路210は、他の個別設定実行フラグをオン状態にする(S277)。この処理により、例えば、図74B中の「スピーカチェック」以外の所定の選択肢(「遊技履歴確認」、「操作説明」又は「液晶輝度チェック」)に対応するメニュー処理が実行可能になる。
S276又はS277の処理後、ホスト制御回路210は、メニュー実行フラグをオフ状態にする(S278)。
S278の処理後、ホスト制御回路210は、個別設定実行処理を行う(S279)。この処理では、選択されたメニューに対応する処理が実行される。なお、個別設定実行処理の詳細については、後述の図99を参照しながら後で詳述する。そして、S279の処理後、ホスト制御回路210は、操作手段入力処理を終了し、処理を副制御メイン処理(図92参照)のS204に移す。
[個別設定実行処理]
次に、図99を参照して、操作手段入力処理を(図98参照)中のS279で行う個別設定実行処理について説明する。なお、図99は、本実施形態における個別設定実行処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、スピーカ設定実行フラグがオン状態であるか否かを判別する(S281)。
S281において、ホスト制御回路210が、スピーカ設定実行フラグがオン状態でないと判別した場合(S281がNO判定の場合)、ホスト制御回路210は、後述のS290の処理を行う。
一方、S281において、ホスト制御回路210が、スピーカ設定実行フラグがオン状態であると判別した場合(S281がYES判定の場合)、ホスト制御回路210は、スピーカチェック機能において出音(音量)条件の設定対象(出音チェック対象)とするスピーカの選択処理を行う(S282)。
S282の処理では、まず、ホスト制御回路210は、表示装置13を制御してその表示画面に、上記図75Aに示すようなスピーカの選択画面を表示する。この処理により、遊技者が複数のスピーカの中から出音チェック対象となる所定のスピーカを選択することが可能な状態が生成される。次いで、ホスト制御回路210は、選択ボタン36(上下左右の移動ボタン)への遊技者の操作に対応して、選択中のスピーカを示すポインタ(図75A及び図75Bに示す例では白抜きの矢印画像)等を表示画面上において複数のスピーカ間で移動表示させる。さらに、ホスト制御回路210は、所定のスピーカが選択された状態で、遊技者により決定ボタン37が押下されたか否かを判別する。そして、ホスト制御回路210は、遊技者により決定ボタン37が押下された際に選択されているスピーカを出音チェック対象のスピーカ(特定の音発生装置)として決定する。この処理により、例えば、図76Aに示す音量の設定画面が表示装置13の表示画面に表示される。
なお、S282の処理において、例えば、図75Aに示すスピーカの選択画面中の選択肢「戻る」が遊技者により選択された場合には、ホスト制御回路210は、個別設定実行処理を終了し、処理を、表示装置13の表示画面にメニューの選択画面(図74Bの画面)を表示する処理(図98中のS274の処理)に戻す。
次いで、ホスト制御回路210は、S282で選択された出音チェック対象のスピーカに対して音量設定処理を行う(S283)。
S283の処理では、例えば、図76Aに示す音量の設定画面上において、遊技者による選択ボタン36(上下又は左右の移動ボタン)の操作により音量が調整され、決定ボタン37への遊技者の操作により最終的に音量が決定される。そして、ホスト制御回路210は、この遊技者の操作により決定された音量を、出音チェック対象のスピーカに対してセットする。この処理により、例えば、図76Bに示す音色の設定画面が表示装置13の表示画面に表示される。
なお、S283の処理において、例えば、図76Aに示す音量の設定画面中の選択肢「戻る」が遊技者により選択された場合には、ホスト制御回路210は、処理をS282の処理に戻す。すなわち、この場合には、ホスト制御回路210は、表示装置13の表示画面にスピーカの選択画面(図75Aの画面)を再度表示する処理を行う。
次いで、ホスト制御回路210は、S283で音量が設定された出音チェック対象のスピーカに対して音色設定処理を行う(S284)。
S284の処理では、例えば、図76Bに示す音色の設定画面上において、遊技者による選択ボタン36(上下又は左右の移動ボタン)の操作により音色(単音、楽曲、効果音、エラー音)の選択肢が順次表示され、決定ボタン37への遊技者の操作により最終的に音色が決定される。そして、ホスト制御回路210は、この遊技者の操作により決定された音色を、出音チェック対象のスピーカに対してセットする。また、本実施形態では、2つ目以降の出音チェック対象のスピーカに対しては、このS284の音色設定処理を実行してもよいし、実行しなくてもよい。
なお、S284の処理において、例えば、図76Bに示す音色の設定画面中の選択肢「戻る」を遊技者が選んだ場合には、ホスト制御回路210は、処理をS283の処理に戻す。すなわち、この場合には、ホスト制御回路210は、表示装置13の表示画面に音量の設定画面(図76Aの画面)を再度表示する処理を行う。
次いで、ホスト制御回路210は、出音データ設定処理を行う(S285)。
S285の処理では、まず、ホスト制御回路210は、S283及びS284で設定された音量及び音色で出音チェック対象のスピーカから音声を発生させるか否かの確認処理を行う。この処理により、例えば、図77Aに示す出音開始の確認画面が表示装置13の表示画面に表示される。次いで、遊技者による決定ボタン37への押下操作が実行されると、ホスト制御回路210は、出音チェック対象のスピーカからの音声出力を開始する。この処理により、例えば、図77Bに示す出音中画面が表示装置13の表示画面に表示される。その後、再度、遊技者により決定ボタン37が押下されると、ホスト制御回路210は、出音チェック対象のスピーカからの音声出力を停止する。この処理により、例えば、図78Aに示す出音停止の確認画面が表示装置13の表示画面に表示される。その後、所定期間経過した場合、又は、遊技者により所定の操作ボタン(選択ボタン36、決定ボタン37等)が押下された場合、ホスト制御回路210は、表示装置13の表示画面に、例えば、図78Bに示す出音条件の保存画面を表示する処理を行う。この処理により、後述のS286以降の処理が実行可能になる。
なお、S285の処理において、例えば、図78Aに示す出音停止の確認画面中の選択肢「戻る」を遊技者が選んだ場合(例えば、再度音声を聞き直すような場合)には、ホスト制御回路210は、表示装置13の表示画面に出音開始の確認画面(図77Aの画面)を再度表示する処理を行う。
次いで、ホスト制御回路210は、S285の処理において設定された出音条件のデータを記憶するか否かを判別する(S286)。この処理では、ホスト制御回路210は、例えば、図78Bに示す出音条件の保存画面(S285の処理後)において、遊技者により選択ボタン36及び決定ボタン37のいずれのボタンが押下操作されたかを判別する。具体的には、例えば、図78Bに示す出音条件の保存画面において、遊技者により選択ボタン36が押下操作された場合、すなわち、他のスピーカも出音チェック対象とする場合、ホスト制御回路210は、S285の処理において設定された出音条件のデータを記憶しないと判定する。一方、例えば、図78Bに示す出音条件の保存画面において、遊技者により決定ボタン37が押下操作された場合には、ホスト制御回路210は、S285の処理において設定された出音条件のデータを記憶すると判定する。
なお、S286の処理において、例えば、所定期間、遊技者により選択ボタン36及び決定ボタン37のいずれのボタンも押下操作されなかった場合、ホスト制御回路210は、選択ボタン36及び決定ボタン37の一方を押下操作したと自動的に判断し、該押下操作に対応する処理を行う。この際、ホスト制御回路210が選択ボタン36及び決定ボタン37のいずれを選択するかは、予め設定されている。
S286において、ホスト制御回路210が、出音条件のデータを記憶しないと判別した場合(S286がNO判定の場合)、ホスト制御回路210は、処理をS282の処理に戻し、S282以降の処理を繰り返す。
一方、S286において、ホスト制御回路210が、出音条件のデータを記憶すると判別した場合(S286がYES判定の場合)、ホスト制御回路210は、出音チェック対象のスピーカに対して設定された音量のデータを記憶する処理を行う(S287)。この処理では、ホスト制御回路210は、出音チェック対象のスピーカに対して、設定された音量のデータで設定処理前の音量データを書き換えるが、出音チェック対象となっていないスピーカに対しては、音量のデータを書き換え処理を行わない。また、この処理の時点において、出音チェック対象のスピーカが複数存在する場合には、ホスト制御回路210は、出音チェック対象の全てのスピーカに対して、設定された音量のデータで設定処理前の音量データを書き換える。
S287の処理後、ホスト制御回路210は、出音データが記憶された後の表示装置13の表示画面において、選択肢「戻る」が遊技者により選択された(「戻るボタン操作」がある)か否かを判別する(S288)。具体的には、ホスト制御回路210は、出音データが記憶された後の出音条件の保存画面において、遊技者の選択ボタン36への操作により選択肢「戻る」が選択され、その状態で決定ボタン31が押下されたか否かを判別する。
S288において、ホスト制御回路210が、遊技者による「戻るボタン操作」がないと判別した場合(S288がNO判定の場合)、ホスト制御回路210は、S288の判定処理を繰り返す。すなわち、ホスト制御回路210は、出音データが記憶された後の表示装置13の表示画面において、選択肢「戻る」が遊技者により選択及び決定されるまで待機する。
一方、S288において、ホスト制御回路210が、遊技者による「戻るボタン操作」があったと判別した場合(S288がYES判定の場合)、ホスト制御回路210は、スピーカ設定実行フラグをオフ状態にセットする(S289)。この処理により、スピーカチェック機能の作動が終了し、表示装置13の表示画面には通常の遊技画面(通常画面)が表示される。
そして、S289の処理後、ホスト制御回路210は、個別設定実行処理を終了するとともに、操作手段入力処理(図98参照)も終了する。
ここで、再度、S281の処理に戻って、S281がNO判定の場合、ホスト制御回路210は、メニュー選択画面(図74B参照)において表示された選択肢「スピーカチェック」以外の選択肢に対応する設定実行処理を行う(S290)。具体的には、図74Bに示す例では、ホスト制御回路210は、例えば、選択肢「遊技履歴確認」、「操作説明」又は「液晶輝度チェック」に対応する所定のメニュー実行処理を行う。なお、このS290の処理において、選択肢「スピーカチェック」以外の選択肢に対応する所定のメニュー実行処理が終了すると、表示装置13の表示画面には通常の遊技画面(通常画面)が表示される。
そして、S290の処理後、ホスト制御回路210は、個別設定実行処理を終了するとともに、操作手段入力処理(図98参照)も終了する。
なお、本実施形態では、上述のように、個別設定実行処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、スピーカチェック機能の動作を制御する(各スピーカの出音条件を個別にチェック可能な)手段(出音条件確認手段)も兼ねる。また、ホスト制御回路210(副制御回路200)は、S282の処理において複数のスピーカの中から出音チェック対象のスピーカを選択可能にする手段(音発生装置選択手段)、S283の処理において出音チェック対象のスピーカの音量を設定する手段(音量設定手段)、S285の処理において出音チェック対象のスピーカから設定された出音条件で出音させる(視聴用音信号を出音チェック対象のスピーカに出力する)手段(音信号出力手段)、及び、S287の処理において出音チェック対象のスピーカに対して設定された出音条件(音量)を記憶する手段(設定音量記憶手段)も兼ねる。
[操作入力タイマ割込処理]
次に、図100〜図102を参照して、ホスト制御回路210により実行される操作入力タイマ割込処理について説明する。なお、図100は、本実施形態における操作入力タイマ割込処理の動作概要を示す図である。図101は、本実施形態における操作入力タイマ割込処理の手順を示すフローチャートであり、図102は、操作入力タイマ割込処理内で行われるボタンスイッチ入力検出処理の手順を示すフローチャートである。
本実施形態の操作手段入力処理では、パチンコ遊技機1に設けられた各種操作手段(例えば、選択ボタン36及び決定ボタン37等)に対して遊技者により演出に関する所定操作が行われた場合、図100に示すように、該所定操作に対応する信号(図100中の入力信号)が操作手段のドライバからホスト制御回路210に出力される。そして、ホスト制御回路210は、入力信号に基づいて、遊技者の所定操作による入力状態の情報を取得する。
操作入力タイマ割込処理は、1msec周期のタイマ割込処理(測定用タイマ更新処理)として行われる。なお、図98で説明した操作手段入力処理は、予め設定されたFPS周期(例えば、約33msec)で行われる。以下に、操作入力タイマ割込処理の具体的な内容を、図101のフローチャートを参照しながら説明する。
(1)操作入力タイマ割込処理
まず、ホスト制御回路210は、タイマ更新処理を行う(S301)。次いで、ホスト制御回路210は、各レジスタのデータ(情報)を退避させる(S302)。
次いで、ホスト制御回路210は、ボタンスイッチ入力検出処理を行う(S303)。この処理では、ホスト制御回路210は、決定ボタン37に対する遊技者の長押し操作(所定の操作)が行われたか否かを検出する。そして、ホスト制御回路210が決定ボタン37への遊技者の長押し操作を検知した場合には、ホスト制御回路210は、上記図74A及び図74Bで説明したメニュー選択画面の表示機能の作動をセットする。なお、ボタンスイッチ入力検出処理の詳細については、後述の図102を参照しながら後で詳述する。
次いで、ホスト制御回路210は、S302で退避させた各レジスタのデータを復帰させる(S304)。そして、S304の処理後、ホスト制御回路210は、操作入力タイマ割込処理を終了する。
(2)ボタンスイッチ入力検出処理
次に、図102を参照して、操作入力タイマ割込処理(図101参照)中のS303で行うボタンスイッチ入力検出処理について説明する。なお、図102は、本実施形態におけるボタンスイッチ入力検出処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、遊技者による決定ボタン37への所定操作(長押し操作)があるか否かを判別する(S311)。
S311において、ホスト制御回路210が、決定ボタン37への所定操作がないと判別した場合(S311がNO判定の場合)、ホスト制御回路210は、ボタンスイッチ入力検出処理を終了し、処理を操作入力タイマ割込処理(図101参照)のS304に移す。一方、S311において、ホスト制御回路210が、決定ボタン37への所定操作があると判別した場合(S311がYES判定の場合)、ホスト制御回路210は、特別図柄の変動表示が非実行中であるか否かを判別する(S312)。
S312において、ホスト制御回路210が、特別図柄の変動表示が非実行中でないと判別した場合(S312がNO判定の場合)、ホスト制御回路210は、ボタンスイッチ入力検出処理を終了し、処理を操作入力タイマ割込処理(図101参照)のS304に移す。一方、S312において、ホスト制御回路210が、特別図柄の変動表示が非実行中であると判別した場合(S312がYES判定の場合)、ホスト制御回路210は、メニュー実行フラグをオン状態にする(S313)。この処理により、表示装置13の表示画面(表示領域13a)に、上記図74Aで説明したパスワードの入力画面が表示可能になる。
そして、S313の処理後、ホスト制御回路210は、ボタンスイッチ入力検出処理を終了し、処理を操作入力タイマ割込処理(図101参照)のS304に移す。
[メイン・サブ間コマンド制御処理(コマンド受信割込処理)]
次に、図103を参照して、副制御メイン処理(図92参照)中のS204で行うメイン・サブ間コマンド制御処理について説明する。図103は、本実施形態のメイン・サブ間コマンド制御処理内で行われるコマンド受信処理(コマンド受信割込処理)の手順を示すフローチャートである。なお、本実施形態では、主制御回路70(メインCPU71)から副制御回路200(ホスト制御回路210)にコマンドが送信され、該コマンドをホスト制御回路210が受信すると、ホスト制御回路210は、メイン・サブ間コマンド制御処理を割込処理として行う。
まず、ホスト制御回路210は、各レジスタのデータ(情報)を退避させる(S321)。
次いで、ホスト制御回路210は、コマンド受信時にエラーが発生したか否かを判別する(S322)。
S322において、ホスト制御回路210が、コマンド受信エラーが発生していないと判別した場合(S322がNO判定の場合)、ホスト制御回路210は、後述のS324の処理を行う。一方、S322において、ホスト制御回路210が、コマンド受信エラーが発生したと判別した場合(S322がYES判定の場合)、ホスト制御回路210は、エラー情報の設定処理を行う(S323)。
S323の処理後又はS322がNO判定の場合、ホスト制御回路210は、受信コマンドの格納処理を行う(S324)。この処理では、ホスト制御回路210は、受信したコマンドデータをホスト制御回路210内のリングバッファ(図29参照)に格納する。なお、コマンド受信エラーが発生し、S323においてエラー情報がセットされている場合には、受信したコマンドデータとエラー情報とのセット情報がリングバッファに格納される。
次いで、ホスト制御回路210は、S321で退避させた各レジスタのデータを復帰させる(S325)。そして、S325の処理後、ホスト制御回路210は、コマンド受信処理を終了する。
[コマンド解析処理]
次に、図104を参照して、副制御メイン処理(図92参照)中のS205で行うコマンド解析処理について説明する。図104は、本実施形態におけるコマンド解析処理の手順を示すフローチャートである。なお、以下に説明するコマンド解析処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、コマンド解析処理を行う手段(コマンド解析手段)も兼ねる。
まず、ホスト制御回路210は、サブワークRAM210aに格納された受信コマンドデータを取得する(S331)。なお、この際、受信コマンドデータに対応付けられたエラー情報がある場合には、ホスト制御回路210は、該受信コマンドデータを破棄する。
次いで、ホスト制御回路210は、受信したコマンドの種別を特定する(S332)。また、この処理では、ホスト制御回路210は、特定したコマンド種別の情報をサブワークRAM210aに保存する。なお、コマンド種別は、上述のように、各コマンドのコマンド種別部(先頭バイト領域)に格納された情報(予め設定された値)に基づいて特定される(図22〜図27参照)。例えば、受信したコマンドがデモ表示コマンドである場合には、S332の処理において、コマンド種別「80H」が、サブワークRAM210aに格納される。
次いで、ホスト制御回路210が、S332のコマンド種別の特定処理において受信したコマンドと対応するコマンド種別がないと判断した場合、ホスト制御回路210は、該受信コマンドデータを破棄する(S333)。次いで、ホスト制御回路210は、受信コマンドデータに含まれるパラメータ数を確認し、該パラメータ数が特定されたコマンド種別に対応するパラメータ数と異なる場合には、該受信コマンドデータを破棄する(S334)。
次いで、ホスト制御回路210は、コマンドパラメータチェック処理を行う(S335)。この処理では、ホスト制御回路210は、コマンド毎に設定されている各種パラメータ(図23〜図27参照)内の情報(以下、コマンドパラメータという)の内容をチェックする。具体的には、ホスト制御回路210は、例えば、パラメータ内の所定のビット領域に設けられた常時0領域のチェック、パラメータ内に格納されている各データの有効範囲のチェック、及び、格納データの組み合わせのチェックを行う。なお、コマンドパラメータチェック処理の詳細については、後述の図105を参照しながら後で説明する。
次いで、ホスト制御回路210は、受信コマンドに含まれるコマンドパラメータが正常であるか否かを判別する(S336)。この判別処理では、ホスト制御回路210は、S335のコマンドパラメータチェック処理の結果に基づいて、コマンドパラメータが正常であるか否か(コマンドの有効性の有無)を判別する。
S336において、ホスト制御回路210が、受信コマンドに含まれるコマンドパラメータが正常でないと判別した場合(S336がNO判定の場合)、ホスト制御回路210は、該受信コマンドのデータを破棄する(S337)。そして、S337の処理後、ホスト制御回路210は、コマンド解析処理を終了し、処理を副制御メイン処理(図92参照)のS206に移す。
一方、S336において、ホスト制御回路210が、受信コマンドに含まれるコマンドパラメータが正常であると判別した場合(S336がYES判定の場合)、ホスト制御回路210は、コマンドパラメータ(ゲームステータス等の情報)をゲームデータに反映(登録)させる(S338)。また、この処理では、コマンドパラメータが反映されたゲームデータをサブワークRAM210a内の所定領域に格納する。
次いで、ホスト制御回路210は、サブ抽選処理を行う(S339)。この処理では、ホスト制御回路210は、演出用の各種乱数値を取得し、受信したコマンドのコマンド種別に対応する演出内容の決定に係る抽選処理を行う。
例えば、受信したコマンドが特別図柄演出開始コマンドである場合には、ホスト制御回路210は、変動演出テーブル(図19参照)を用いた抽選処理により、変動演出パターン(「EN00」〜「EN44」)を決定する。また、例えば、受信したコマンドが保留加算コマンドである場合には、ホスト制御回路210は、保留演出テーブル(図20参照)を用いた抽選処理により、保留用図柄の色変化演出に係る演出パターン(「HE00」〜「HE19」)を決定するとともに、先読み演出テーブル(図21参照)を用いた抽選処理により、先読み演出に係る演出パターン(「SE00」〜「SE19」)を決定する。
また、S339の処理では、ホスト制御回路210は、サブ抽選処理の抽選結果(例えば、上述した各種演出パターンの情報)をサブワークRAM210a内の所定領域に格納する。
次いで、ホスト制御回路210は、S339のサブ抽選処理により得られた抽選結果をサブワークRAM210aに格納されたゲームデータに反映(登録)させる(S340)。
次いで、ホスト制御回路210は、サブワークRAM210aに格納されたゲームデータのバックアップ処理を行う(S341)。この処理により、ゲームデータが、SRAM210b内の所定領域及びそのミラーリング領域に保存される。なお、この処理でバックアップされたゲームデータは、上述したバックアップ復帰初期化処理(図95参照)において、ゲームデータが破損している場合に参照される。そして、S341の処理後、ホスト制御回路210は、コマンド解析処理を終了し、処理を副制御メイン処理(図92参照)のS206に移す。
なお、本実施形態では、上述のように、コマンド解析処理において、受信コマンドの破棄処理が行われる場合もあるが、破棄した受信コマンドの前にメインCPU71からホスト制御回路210にコマンドが全く送信されていない場合には、アニメーションリクエストが生成されないので、表示装置13の表示画面には、真っ黒な画像が表示される。一方、破棄した受信コマンドの前にメインCPU71からホスト制御回路210にコマンドが送信されている場合には、破棄した受信コマンドに基づくアニメーションリクエストは生成されず、表示装置13の表示画面には、破棄した受信コマンドの前のコマンドに基づくアニメーションリクエストにより生成された画像が維持して表示される。
[コマンドパラメータチェック処理]
次に、図105を参照して、コマンド解析処理(図104参照)中のS335で行うコマンドパラメータチェック処理について説明する。なお、図105は、本実施形態におけるコマンドパラメータチェック処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、サブワークRAM210aに格納されたコマンド種別を取得し、受信コマンドのコマンド種別に対応するチェック項目(マスキング)を設定する(S351)。
次いで、ホスト制御回路210は、受信コマンドに含まれる全ての常時0領域の情報をチェックする(S352)。なお、この処理において、ホスト制御回路210が、1以上の常時0領域において「0」以外の情報が格納されていることを検出した場合、ホスト制御回路210は、該受信コマンドを破棄する。また、解析対象の受信コマンドに常時0領域が設けられていない場合には、S352の処理は行われない。
次いで、ホスト制御回路210は、受信コマンドに含まれる各情報の値が対応する所定の範囲内の値であるか否かをチェックする(S353)。本実施形態では、受信コマンドのパラメータフィールド部に格納された情報の値は、予め所定の範囲(有効範囲)内の値となるように定義されている。例えば、第1電断復帰コマンド(図25参照)の第2パラメータの格納領域(「b0」〜「b7」の8ビットの領域)には、特別停止図柄指定情報が格納されているが、この特別停止図柄指定情報の値の有効範囲は「0x00」〜「0x20」に設定されている。そして、この処理において、ホスト制御回路210が、受信コマンドに含まれる1以上の情報において、その値が対応する所定の範囲内の値でないと判断した場合には、ホスト制御回路210は、該受信コマンドを破棄する。
次いで、ホスト制御回路210は、受信コマンドに含まれる各種情報の組合せをチェックする(S354)。本実施形態では、受信コマンドに含まれる各情報の値が対応する有効範囲内の値であっても、コマンドに含まれる各種情報の組合せに矛盾が発生する場合には、ホスト制御回路210は、該受信コマンドを破棄する。例えば、受信コマンドが特別図柄演出開始コマンドである場合、その受信コマンドに含まれるゲームステータスの情報が「小当り」を示し、図柄指定コマンドの情報が大当り図柄であるときには、コマンド内の情報の組合せに矛盾が発生しているので、ホスト制御回路210は、受信した特別図柄演出開始コマンドを破棄する。
そして、S354の処理後、ホスト制御回路210は、コマンドパラメータチェック処理を終了し、処理をコマンド解析処理(図104参照)のS336に移す。
なお、本実施形態では、上述のように、コマンドパラメータチェック処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、S352の常時0領域のチェック処理を行う手段(第1コマンド判定手段)、S353の受信コマンドに含まれる各情報の値の有効性のチェック処理を行う手段(第2コマンド判定手段)、及び、S354の受信コマンドに含まれる各種情報の組合せのチェック処理を行う手段(第3コマンド判定手段)も兼ねる。
[アニメーションリクエスト構築処理]
次に、図106を参照して、副制御メイン処理(図92参照)中のS206で行うアニメーションリクエスト構築処理について説明する。なお、図106は、本実施形態におけるアニメーションリクエスト構築処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、主制御回路70からコマンドを受信したか否かを判別する(S361)。
S361において、ホスト制御回路210が、主制御回路70からコマンドを受信していないと判別した場合(S361がNO判定の場合)、ホスト制御回路210は、後述のS372の処理を行う。一方、S361において、ホスト制御回路210が、主制御回路70からコマンドを受信したと判別した場合(S361がYES判定の場合)、ホスト制御回路210は、電断復帰コマンド(第1電断復帰コマンド及び第2電断復帰コマンド)を受信したか否かを判別する(S362)。
S362において、ホスト制御回路210が、電断復帰コマンドを受信していないと判別した場合(S362がNO判定の場合)、ホスト制御回路210は、後述のS366の処理を行う。一方、S362において、ホスト制御回路210が、電断復帰コマンドを受信したと判別した場合(S362がYES判定の場合)、ホスト制御回路210は、電断復帰コマンド(第2電断復帰コマンド)に含まれるステータス(内部制御状態)の情報が変動状態であるか否かを判別する(S363)。具体的には、ホスト制御回路210は、第2電断復帰コマンド内の第2パラメータに含まれる内部制御状態番号の格納領域に「001」(特別図柄変動状態)がセットされているか否かを判別する。なお、電断検知時の状態が特別図柄の変動表示中である場合には、S363の処理の時点において、第2電断復帰コマンドの第2パラメータ内の内部制御状態番号の格納領域に「001」(特別図柄変動状態)がセットされている。
S363において、ホスト制御回路210が、電断復帰コマンドに含まれるステータスの情報が変動状態でないと判別した場合(S363がNO判定の場合)、ホスト制御回路210は、後述のS366の処理を行う。
一方、S363において、ホスト制御回路210が、電断復帰コマンドに含まれるステータスの情報が変動状態であると判別した場合(S363がYES判定の場合)、ホスト制御回路210は、シンプルモードオブジェクトの生成処理を予約する(S364)。次いで、ホスト制御回路210は、シンプルモードオブジェクト以外の全てのオブジェクト(常駐しているオブジェクトも含む)の終了処理を行う(S365)。そして、S365の処理後、ホスト制御回路210は、後述のS370の処理を行う。
ここで、再度、S362又はS363の処理に戻って、S362又はS363がNO判定の場合、ホスト制御回路210は、オブジェクトが存在するか否かを判別する(S366)。
S366において、ホスト制御回路210が、オブジェクトが存在しないと判別した場合(S366がNO判定の場合)、ホスト制御回路210は、後述のS370の処理を行う。一方、S366において、ホスト制御回路210が、オブジェクトが存在すると判別した場合(S366がYES判定の場合)、ホスト制御回路210は、シンプルモードオブジェクトが存在するか否かを判別する(S367)。
S367において、ホスト制御回路210が、シンプルモードオブジェクトが存在しないと判別した場合(S367がNO判定の場合)、ホスト制御回路210は、後述のS369の処理を行う。一方、S367において、ホスト制御回路210が、シンプルモードオブジェクトが存在すると判別した場合(S367がYES判定の場合)、ホスト制御回路210は、特別図柄の変動表示が終了することを示すコマンド(例えば、特別演出停止コマンド、特別図柄当り終了表示コマンド等)を受信したか否かを判別する(S368)。
S368において、ホスト制御回路210が、特別図柄の変動表示が終了することを示すコマンドを受信しなかったと判別した場合(S368がNO判定の場合)、ホスト制御回路210は、後述のS372の処理を行う。一方、S368において、ホスト制御回路210が、特別図柄の変動表示が終了することを示すコマンドを受信したと判別した場合(S368がYES判定の場合)、すなわち、シンプルモードオブジェクトを終了する場合、ホスト制御回路210は、後述のS369の処理を行う。
S367がNO判定の場合又はS368がYES判定の場合、ホスト制御回路210は、既に生成されているオブジェクトの終了処理を行う(S369)。この処理により、不要な演出動作(演出画像再生、役物可動、音声再生などを示すコマンドの生成)が終了する。なお、既に生成されているオブジェクトがシンプルモードオブジェクトである場合には、この処理によりシンプルモードオブジェクトによる演出動作が終了する。
S369或いはS365の処理後、又は、S366がNO判定の場合、ホスト制御回路210は、サブワークRAM210aに格納されたコマンド種別の情報に基づいて、コマンド種別に対応するオブジェクトを生成する(S370)。なお、S365の処理後にこの処理が行われる場合には、ホスト制御回路210は、S370の処理において、シンプルモードオブジェクトを生成する。また、電源の初期投入時又はシンプルモードオブジェクトの終了時には、ホスト制御回路210は、S370の処理において、常駐型のオブジェクトも生成する。
次いで、ホスト制御回路210は、オブジェクトの初期化処理を行う(S371)。この処理では、ホスト制御回路210は、オブジェクトにより使用される記憶領域を初期化する。
S371の処理後、又は、S361或いはS368がNO判定の場合、ホスト制御回路210は、サブワークRAM210aに格納されたゲームデータの情報を参照し、オブジェクト(例えば、演出オブジェクト、保留オブジェクト、シンプルモードオブジェクトなど)に基づくアニメーションリクエストを生成し、該アニメーションリクエストをサブワークRAM210aの所定領域にセットする(S372)。この処理によりコマンド受信に応じたアニメーションリクエストが生成される。
次いで、ホスト制御回路210は、アニメーションリクエストに基づいて、アニメーションリクエストが指定する演出に対応するサウンドリクエスト、ランプリクエスト及び役物リクエストを生成する(S373)。
なお、アニメーションリクエストが指定する役物演出の内容が、ホスト制御回路210の制御実行周期(約33msec)のみで制御される内容である場合には、S373の処理において、ホスト制御回路210向けの役物リクエストのみが生成される。また、アニメーションリクエストが指定する役物演出の内容が、音声・LED制御回路220の制御実行周期(約12msec)のみで制御される内容である場合には、S373の処理において、音声・LED制御回路220向けの役物リクエストのみが生成される。さらに、アニメーションリクエストが指定する役物演出の内容に、ホスト制御回路210の制御実行周期で制御される内容、及び、音声・LED制御回路220の制御実行周期で制御される内容の両方が含まれる場合には、S373の処理において、ホスト制御回路210向けの役物リクエスト及び音声・LED制御回路220向けの役物リクエストの両方が生成される。
また、S373の処理では、ホスト制御回路210は、映像表示動作と、音声再生動作、発光動作及び役物駆動動作との同期をとるため、生成されたサウンドリクエスト、ランプリクエスト及び役物リクエストを、ホスト制御回路210内に設けられたリクエストバッファに一時的に格納する。なお、本実施形態では、リクエストバッファは、例えば、サブワークRAM210a、SRAM210b等に設けられるが、リクエストバッファの形成場所は特に限定されない。
そして、S373の処理後、ホスト制御回路210は、アニメーションリクエスト構築処理を終了し、処理を副制御メイン処理(図92参照)のS207に移す。
なお、本実施形態では、上述のように、アニメーションリクエスト構築処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、S370のオブジェクト生成処理を行う手段(処理情報生成手段)、及び、S372のアニメーションリクエストの生成処理を行う手段(演出開始要求作成手段)も兼ねる。
[描画制御処理]
次に、図107A及び図107Bを参照して、副制御メイン処理(図92参照)中のS208で行う描画制御処理について説明する。なお、図107Aは、ホスト制御回路210により実行される描画制御処理の手順を示すフローチャートである。また、図107Bは、描画制御処理においてホスト制御回路210から表示制御回路230に描画リクエストが出力された際に、表示制御回路230により実行される処理の手順を示すフローチャートである。
(1)ホスト制御回路により実行される描画制御処理
まず、ホスト制御回路210は、図107Aに示すように、動画コマンド作成処理を行う(S381)。なお、動画コマンド作成処理の詳細については、後述の図108を参照しながら後で説明する。
次いで、ホスト制御回路210は、動画再生状態の管理処理を行う(S382)。次いで、ホスト制御回路210は、動画コマンド(動画のデコード開始指令)を表示制御回路230に発行(出力)する(S383)。この処理により表示制御回路230の処理が開始される。
次いで、ホスト制御回路210は、サブワークRAM210aに格納されている、前回フレーム(前回の描画制御処理)で生成された描画リクエストを表示制御回路230に発行(出力)する(S384)。表示制御回路230は、この送信された前回フレームの描画リクエストに基づいて、描画処理を行う。
次いで、ホスト制御回路210は、全コマンドリスト作成処理を行う(S385)。この処理により、次回フレームにおいて、表示制御回路230により実行される描画処理で用いられる描画リクエストが生成され、該描画リクエストがサブワークRAM210aに格納される。なお、全コマンドリスト作成処理の詳細については、後述の図110を参照しながら後で説明する。
次いで、ホスト制御回路210は、表示制御回路230から出力された表示開始コマンドに基づいて、レンダリング結果の表示処理が開始されたことを確認する(S386)。そして、S386の処理後、ホスト制御回路210は、描画制御処理を終了し、処理を副制御メイン処理(図92参照)のS209に移す。
(2)描画制御処理時に実行される表示制御回路の処理
まず、ホスト制御回路210から出力された動画コマンド(動画のデコード開始指令)が表示制御回路230に入力されると、表示制御回路230は、動画のデコード処理を開始する(S391)。なお、本実施形態では、このデコード処理及び後述の描画処理は、2フレームの期間に渡って行われる。
次いで、ホスト制御回路210から出力された描画リクエスト(前回フレームで生成された描画リクエスト)が表示制御回路230に入力されると、表示制御回路230は、該描画リクエストに基づいて、描画処理を行う(S392)。なお、描画処理の詳細については、後述の図111〜図113を参照しながら後で説明する。
次いで、表示制御回路230は、S392の描画処理で得られたレンダリング結果(描画結果)の表示処理を開始する(S393)。この処理では、表示制御回路230は、レンダリング結果が格納されたSDRAM250内の一方のフレームバッファの機能を描画機能から表示機能に切り替えて、レンダリング結果の表示処理を開始する。
次いで、表示制御回路230は、レンダリング結果(描画結果)の表示処理が開始されたことを示す表示開始コマンドをホスト制御回路210に出力する(S394)。そして、S394の処理後、表示制御回路230は、描画制御処理時に行う上記一連の処理を終了する。このように、前回フレームで生成された描画リクエストに基づいて当該描画処理を実行するため、描画処理の終了後に実行されるフレームバッファの機能(使用領域)を描画機能(描画用記憶領域)から表示機能(表示用記憶領域)に切り替えるタイミングに合わせて、サウンドリクエスト及び役物リクエストがそれぞれ対応する制御回路に送信される。このため、サウンドリクエストや役物リクエストは、各リクエストが生成されてから2フレーム遅れて対応する制御回路に送信される。
[動画コマンド作成処理]
次に、図108を参照して、描画制御処理(図107A参照)中のS381で行う動画コマンド作成処理について説明する。なお、図108は、本実施形態における動画コマンド作成処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、サブワークRAM210aに格納されたアニメーションリクエストを参照し、描画データのルートコンポジションを設定するための情報を取得する(S401)。なお、ルートコンポジションは、演出時に表示する主な描画データのことであり、本実施形態では、設定可能なルートコンポジションの個数は最大8個である。それゆえ、本実施形態では、ルートコンポジションに設定された描画データを最大8個まで同時に再生することができる。
次いで、ホスト制御回路210は、サブワークRAM210aに格納されたアニメーションリクエストを参照し、描画データのサブコンポジションを設定するための情報を取得する(S402)。なお、サブコンポジションは、ルートコンポジションに対して副次的な視覚的効果(エフェクトなど)を与える描画データのことである。
次いで、ホスト制御回路210は、後述のS404〜S407の処理が、アニメーションリクエストにより指定される描画データに対応する全レイヤ又はアニメーションリクエストにより指定される全レイヤに応じて実行されたか否かを判別する(S403)。ここでいう、「全レイヤに応じて実行される」には、全レイヤ分実行される、全レイヤに対応した回数実行される、又は、全レイヤに基づいて実行されるなどが含まれ、アニメーションリクエスト又は描画データと対応するレイヤ数に応じた回数、後述のS404〜S407の処理が行われればよい。また、全てのレイヤでなくとも各レイヤに対して取捨選択を行うなど、様々な前提条件の下で後述のS404〜S407の処理を実行してもよい。
S403において、ホスト制御回路210が、後述のS404〜S407の処理が、アニメーションリクエストにより指定される描画データに対応する全レイヤ又はアニメーションリクエストにより指定される全レイヤに応じて実行されていないと判別した場合(S403がNO判定の場合)、ホスト制御回路210は、サブメインROM205に格納されたアニメーションデータ読込処理を行う(S404)。なお、アニメーションデータ読込処理の詳細については、後述の図109A及び図109Bを参照しながら後で説明する。
S404の処理後、ホスト制御回路210は、アニメーションデータから描画データに関する情報を取得する(S405)。次いで、ホスト制御回路210は、アニメーションリクエストにより指定された演出内容に応じて、描画データに関する情報を書き換える(S406)。この処理では、例えば、演出内容に応じて、フッテージ、エフェクト、動きに関する情報を書き換える。
次いで、ホスト制御回路210は、動画コマンド(画像データのデコード処理を開始させるコマンド)の作成処理を行う(S407)。S407の処理後、ホスト制御回路210は、処理をS403に戻し、S403以降の処理を繰り返す。
ここで、再度、S403の処理に戻って、S403において、ホスト制御回路210が、S404〜S407の処理が、アニメーションリクエストにより指定される描画データに対応する全レイヤ又はアニメーションリクエストにより指定される全レイヤに応じて実行されたと判別した場合(S403がYES判定の場合)、ホスト制御回路210は、上述したS401〜S407の処理が、アニメーションリクエストにより指定されるルートコンポジションが設定される描画データに応じて実行されたか否かを判別する(S408)。
S408において、ホスト制御回路210が、上述したS401〜S407の処理が、アニメーションリクエストにより指定されるルートコンポジションが設定される描画データに応じて実行されていないと判別した場合(S408がNO判定の場合)、ホスト制御回路210は、処理をS401に戻し、S401以降の処理を繰り返す。一方、S408において、ホスト制御回路210が、上述したS401〜S407の処理が、アニメーションリクエストにより指定されるルートコンポジションが設定される描画データに応じて実行されたと判別した場合(S408がYES判定の場合)、ホスト制御回路210は、動画コマンド作成処理を終了し、処理を描画制御処理(図107A参照)のS382に移す。
[アニメーションデータ読込処理]
次に、図109A及び図109Bを参照して、動画コマンド作成処理(図108参照)中のS404で行うアニメーションデータ読込処理について説明する。なお、図109Aは、本実施形態におけるアニメーションデータ読込処理の手順を示すフローチャートである。また、図109Bは、サブメインROM205に格納されているアニメーションデータに含まれる各種データ及びそれらのデータの格納領域の構成を示す図である。
まず、ホスト制御回路210は、サブメインROM205内の構成指定テーブルを参照し、オブジェクトで指定されたアニメーションの構成データを確認する(S411)。次いで、ホスト制御回路210は、指定された構成データのアドレスを取得する(S412)。
次いで、ホスト制御回路210は、サブメインROM205内の指定された構成データの格納領域を参照する(S413)。次いで、ホスト制御回路210は、構成データに含まれる構成情報を参照して、描画対象の情報を取得する(S414)。なお、構成情報には、主に、フレームの位置、幅、高さ、レイヤ数、開始フレーム、終了フレーム、データ更新回数(毎フレーム、2フレームなど)等の情報が含まれる。次いで、ホスト制御回路210は、構成データの格納領域を参照して、参照するレイヤデータのアドレスを取得する(S415)。
次いで、ホスト制御回路210は、S415の処理で取得されたアドレスのレイヤデータの格納領域を参照する(S416)。そして、ホスト制御回路210は、レイヤデータに含まれるレイヤ情報を取得する(S417)。なお、レイヤ情報には、例えば、フッテージID/コンポID、開始フレーム、終了フレーム、パラメータ数等の情報が含まれる。次いで、ホスト制御回路210は、レイヤの各種パラメータを取得する際に参照する各種データアドレス(例えば、パラメータアドレスやエフェクトテーブルアドレスなど)を取得する(S418)。
次いで、ホスト制御回路210は、S418の処理で取得されたパラメータアドレスのパラメータデータの格納領域を参照する(S419)。次いで、ホスト制御回路210は、パラメータデータに含まれるレイヤのパラメータ情報及びレイヤの各種パラメータを取得する(S420)。なお、レイヤのパラメータ情報には、例えば、フレーム数、データ型等の情報が含まれる。また、レイヤの各種パラメータは、フレーム毎にセットされたパラメータで構成され、副制御メイン処理がフレーム単位で実行されるたびに、対応するフレームのパラメータがリクエストされる。
次いで、ホスト制御回路210は、S417の処理で取得されたレイヤ情報に含まれるフッテージIDに対応するフッテージテーブルを参照する(S421)。次いで、ホスト制御回路210は、フッテージテーブルに格納された、フッテージ情報及びフッテージ種別毎の情報を取得する(S422)。なお、フッテージ情報には、例えば、フッテージ種別、画像幅、高さ等の情報が含まれる。また、フッテージ種別毎の情報には、例えば、デコードレート等の情報が含まれる。
次いで、ホスト制御回路210は、レイヤデータで指定されたエフェクトテーブル、すなわち、S418の処理で取得されたエフェクトテーブルアドレスのエフェクトテーブルを参照する(S423)。次いで、ホスト制御回路210は、参照するエフェクトデータのアドレスを取得する(S424)。
次いで、ホスト制御回路210は、S424の処理で取得されたアドレスのエフェクトデータの格納領域を参照する(S425)。そして、ホスト制御回路210は、エフェクトデータに含まれるエフェクト情報を取得する(S426)。なお、エフェクト情報には、例えば、エフェクト種類、パラメータ数等の情報が含まれる。次いで、ホスト制御回路210は、エフェクトデータに含まれるパラメータデータのアドレスを取得する(S427)。
次いで、ホスト制御回路210は、S427の処理で取得されたパラメータアドレスのパラメータデータの格納領域を参照する(S428)。次いで、ホスト制御回路210は、パラメータデータに含まれるエフェクトのパラメータ情報及びエフェクトの各種パラメータを取得する(S429)。なお、エフェクトのパラメータ情報には、例えば、フレーム数、データ型等の情報が含まれる。
そして、S429の処理後、ホスト制御回路210は、アニメーションデータ読込処理を終了し、処理を動画コマンド作成処理(図108参照)のS405に移す。
[全コマンドリスト作成処理(描画リクエスト生成処理)]
次に、図110を参照して、描画制御処理(図107A参照)中のS385で行う全コマンドリスト作成処理について説明する。なお、図110は、本実施形態における全コマンドリスト作成処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、後述のS432〜S438の処理が描画データの全ルートコンポジションに対して実行されたか否かを判別する(S431)。
S431において、ホスト制御回路210が、後述のS432〜S438の処理が描画データの全ルートコンポジションに対して実行されていないと判別した場合(S431がNO判定の場合)、ホスト制御回路210は、2つ目以降のルートコンポジションに対する後述のS433〜S438の処理時において、1つ目のルートコンポジションに対する処理における、静止画のデコード処理や後述の各種コマンド(静止画デコード、描画コマンド等)の生成処理などが終了するまで待機する(S432)。
次いで、ホスト制御回路210は、スプライトバッファ0用コマンドを作成する(S433)。なお、スプライトバッファ0用コマンドは、後述の描画処理において、例えば内蔵VRAM237にスプライトバッファ0を設けて、該スプライトバッファ0にCGROM基板204から静止画(スプライト)を読み込んでデコードする処理を実行する際に用いられるコマンドである。
次いで、ホスト制御回路210は、テクスチャ情報を取得する(S434)。この処理では、ホスト制御回路210は、指定されたテクスチャソース(SDRAM250)の情報を取得する。
次いで、ホスト制御回路210は、エフェクト用コマンドを作成する(S435)。なお、エフェクト用コマンドは、後述の描画処理において、例えば内蔵VRAM237にエフェクトバッファを設けて、該エフェクトバッファを用いてエフェクトデータに対して各種処理を実行する際に用いられるコマンドである。
次いで、ホスト制御回路210は、描画用コマンドを作成する(S436)。なお、描画用コマンドは、後述の描画処理において、例えば内蔵VRAM237に読み込まれた各種デコード結果に対してレンダリング(描画)処理を実行する際に用いられるコマンドである。
次いで、ホスト制御回路210は、静止画デコード用コマンドを作成する(S437)。なお、静止画デコード用コマンドは、後述の描画処理において、例えば内蔵VRAM237内の半分の領域にスプライトバッファ1を設けて、該スプライトバッファ1にCGROM基板204から静止画(スプライト)を読み込んでデコードする処理を実行する際に用いられるコマンドである。
次いで、ホスト制御回路210は、フレーム終端用コマンドを作成する(S438)。なお、フレーム終端用コマンドは、後述の描画処理において、例えば内蔵VRAM237内に設けらえたコンポジション描画バッファに最終的に格納されたレンダリング結果を、レンダリングターゲットに指定されたSDRAM250内のフレームバッファ(第1フレームバッファ又は第2フレームバッファ)に書き出す処理を実行する際に用いられるコマンドである。そして、S438の処理後、ホスト制御回路210は、処理をS431に戻し、S431以降の処理を繰り返す。
ここで、再度、S431の処理に戻って、S431において、ホスト制御回路210が、S432〜S438の処理が描画データの全ルートコンポジションに対して実行されたと判別した場合(S431がYES判定の場合)、ホスト制御回路210は、上述したS432〜S438のループ処理により生成された全てのコマンドを含む描画リクエストを生成する(S439)。そして、S439の処理後、ホスト制御回路210は、全コマンドリスト作成処理を終了し、処理を描画制御処理(図107A参照)のS386に移す。なお、本実施形態では、上述した描画制御処理(図107A)、動画コマンド作成処理(図108)、アニメーションデータ読込処理(図109A)及び全コマンドリスト作成処理(図110)において、ホスト制御回路210が実行する処理を表示制御回路230が実行してもよい。この場合には、ホスト制御回路210から表示制御回路230にアニメーションリクエストが送信され、表示制御回路230は受信したアニメーションリクエストに基づいて、これらの各種処理を行う。
[描画処理]
次に、図111〜図113を参照して、描画制御処理(図107B参照)中のS392において表示制御回路230により実行される描画処理について説明する。なお、図111A、図112A及び図113Aは、本実施形態における描画処理の手順を示すフローチャートである。また、図111B、図112B及び図113Bは、描画処理の各処理ステップにおいて行われる、CGROM基板204(CGROM206)、内蔵VRAM237及びSDRAM250間の各種データの入出力動作及び格納動作の様子を示す図である。
まず、表示制御回路230は、CGROM基板204に格納された所定の動画データをデコードしてSDRAM250内に設けられたムービバッファに格納する(S441:図111B中の矢印T1参照)。なお、ムービバッファは、動画データのデコード結果を格納するバッファである。SDRAM250内において確保されるムービバッファのサイズは、使用する動画データの大きさ(容量)、ストリーム数などに応じて変化する。
次いで、表示制御回路230は、デコードされた動画データがエフェクト描画動作において参照されるか否かを判断する(S442)。
S442において、表示制御回路230が、動画データがエフェクト描画動作において参照されないと判別した場合(S442がNO判定の場合)、表示制御回路230は、後述のS444の処理を行う。一方、S442において、表示制御回路230が、動画データがエフェクト描画動作において参照されると判別した場合(S442がYES判定の場合)、表示制御回路230は、ムービバッファに格納された動画データのデコード結果をSDRAM250内のテクスチャバッファに転送する(S443)。
なお、S443の処理では、まず、表示制御回路230は、SDRAM250内のムービバッファに格納された動画データのデコード結果を、内蔵VRAM237内に生成されたムービブレンドバッファに展開する(図111B中の矢印T2参照)。なお、この処理では、内蔵VRAM237の全領域をムービブレンドバッファとして使用する。次いで、表示制御回路230は、ムービブレンドバッファに展開された動画データのデコード結果をSDRAM250内のテクスチャバッファに転送するとともに、アルファテーブルを用いて、デコード結果に対してアルファ化処理を施す(図111B中の矢印T3参照)。
なお、アルファテーブルは、カラーデータ(RGB)とは独立したアルファ値(不透明度)を規定するテーブルであり、パターンデータの1ドット毎に1つのアルファ値が割り当てられる。このアルファテーブルは、CGROM206に格納されている。また、デコード結果のアルファ化処理では、R(赤)成分の輝度値をA(アルファ)成分の値(アルファ値)に変換してアルファ化を行う。本実施形態では、透明度(不透明度)の値であるアルファ値がRGB以外の情報として設けられており、動画の透明度(不透明度)を動的に変更する際には、アルファ値がRGB成分のうち予め定められた色成分の輝度値に設定(変換)される。このようなアルファ化処理が施された動画は、動画を3原色(RGB)で表現しない場合(白黒等で表現する場合)に使用される。
S443の処理後又はS442がNO判定の場合、表示制御回路230は、CGROM基板204に格納された、各ルートコンポジションで使用するスプライトデータを内蔵VRAM237内のスプライトバッファ0に読み出して(図111B中の矢印T4参照)デコードし、該デコード結果をSDRAM250内のテクスチャバッファに転送する(S444:図111B中の矢印T5参照)。なお、ここでいう「スプライトデータ」は、静止画データが伸張した画像データとするが、本発明はこれに限定されず、静止画データに対して、例えば、縮小、拡大、湾曲、明度変更等の加工を施したものであってもよい。S444の処理でデコードされるスプライトデータは、複数回描画される画像データ、エフェクトで利用される画像データ及びスプライトバッファ1で格納できないサイズの画像データである。また、この処理では、内蔵VRAM237の全領域をスプライトバッファ0として使用する。
次いで、表示制御回路230は、エフェクトデータの描画処理で使用するバッファサイズ(エフェクトバッファのサイズ)が内蔵VRAM237のサイズの半分以下であるか否かを判別する(S445)。なお、内蔵VRAM237内のエフェクトバッファは、SDRAM250内のテクスチャバッファに格納された各種画像のデコード結果に、S444でテクスチャバッファに転送されたスプライトデータに含まれるエフェクトデータ(エフェクトで利用される画像データ)を適用するためのバッファである。
S445において、表示制御回路230が、エフェクトデータの描画処理で使用するバッファサイズが内蔵VRAM237のサイズの半分以下でないと判別した場合(S445がNO判定の場合)、表示制御回路230は、SDRAM250内のテクスチャバッファに格納された各種画像のデコード結果に、エフェクトデータを適用するための描画処理(エフェクト演算描画処理)を行う(S446)。
具体的には、S446の処理では、まず、表示制御回路230は、テクスチャバッファに格納された各種画像及びエフェクトデータのデコード結果を、内蔵VRAM237に設けられたエフェクトバッファに読み出す(図112B中の矢印T6参照)。なお、この際、内蔵VRAM237の全領域をエフェクトバッファとして使用する。次いで、表示制御回路230は、エフェクトデータを各種画像のデコード結果に適用するための描画処理(エフェクト演算描画処理)を行う。そして、表示制御回路230は、エフェクト演算描画処理の結果(エフェクト結果)を内蔵VRAM237内のエフェクトバッファからSDRAM250内のテクスチャバッファに転送する(図112B中の矢印T7参照)。
一方、S445において、表示制御回路230が、エフェクトデータの描画処理で使用するバッファサイズが内蔵VRAM237のサイズの半分以下であると判別した場合(S445がYES判定の場合)、表示制御回路230は、内蔵VRAM237の半分の領域をエフェクトバッファとして動作させ、残りの半分の領域をコピーバッファとして動作させる(S447)。次いで、表示制御回路230は、テクスチャバッファに格納された各種画像及びエフェクトデータのデコード結果を、内蔵VRAM237に設けられたエフェクトバッファを読み出してエフェクト演算描画処理を行う(S448)。
この際、コピーバッファにエフェクトデータのデコード結果(エフェクトのソース画像)がすでに転送済みである場合には、表示制御回路230は、SDRAM250のテクスチャバッファからエフェクトのソース画像を読み出さずに、コピーバッファからエフェクトバッファにエフェクトのソース画像を直接読み出して(図112B中の矢印T8参照)エフェクト演算描画処理を行う。一方、コピーバッファにエフェクトのソース画像が転送済みでない場合には、表示制御回路230は、SDRAM250のテクスチャバッファからコピーバッファにエフェクトのソース画像を読み出した後(図112B中の矢印T9参照)、該エフェクトのソース画像をコピーバッファからエフェクトバッファに読み出してエフェクト演算描画処理を行う。そして、表示制御回路230は、エフェクト演算描画処理の結果(エフェクト結果)をコピーバッファに保存し(図112B中の矢印T10参照)、コピーバッファに保存されたエフェクト結果をSDRAM250のテクスチャバッファに転送する(図112B中の矢印T11参照)。なお、エフェクトが複数適用され、且つ、各エフェクトのバッファ使用量が内蔵VRAM237のサイズの半分以下である場合には、表示制御回路230は、エフェクト演算描画処理毎にその結果(エフェクト結果)をコピーバッファに転送し、複数のエフェクトの描画結果が最後まで終了した後、エフェクト結果をコピーバッファからSDRAM250のテクスチャバッファに転送する。
上述のように、本実施形態では、後述のコンポジション描画処理の前に、各コンポジション内で使用されるレイヤに適用される全てのエフェクトに対して描画処理が施される。また、本実施形態では、エフェクトで使用するバッファ容量が内蔵VRAM237の容量の半分以下である場合には、内蔵VRAM237内の半分の領域をコピーバッファとして利用し、エフェクトで使用するバッファ容量が内蔵VRAM237の容量の半分以下でない場合には、内蔵VRAM237の全領域をエフェクトバッファとして使用する。すなわち、エフェクトで使用するバッファ容量に応じて、エフェクトバッファとして使用される内蔵VRAM237内の領域が適宜変更される。このような処理を行うことにより、エフェクト演算描画処理を複数のエフェクトに対して適用する際の処理を高速化することができる。
S446又はS448の処理後、表示制御回路230は、S444でデコードされていない(テクスチャバッファに格納されていない)スプライトデータを内蔵VRAM237内に設けられたコンポジション描画バッファに読み出して描画する(S449)。具体的には、まず、表示制御回路230は、CGROM基板204からS444でデコードされていないスプライトデータを内蔵VRAM237内の半分の領域に設けられたスプライトバッファ1に読み出してデコードする(図113B中の矢印T12参照)。なお、スプライトデータを「スプライトバッファ1に読み出してデコードする」とは、スプライトデータをスプライトバッファ1にデコードしながら読み出す態様を含む意味である。それゆえ、この処理では、スプライトデータの読み出し処理とデコード処理とが同じタイミングで行われてもよいし、スプライトデータのデコード処理を行ってから読み出し処理を行ってもよい。すなわち、スプライトデータを「スプライトバッファ1に読み出してデコードする」処理には、スプライトデータの読み出し処理及びデコード処理の処理順序に関係なく、両処理が含まれていればよい。なお、「スプライトバッファ1に読み出してデコードする」処理がスプライトデータの読み出し処理及びデコード処理のみが含まれる処理であってもよい。
次いで、表示制御回路230は、スプライトバッファ1に格納されたスプライトデータのデコード結果をコンポジション描画バッファに転送して描画処理を行う(図113B中の矢印T13参照)。
S449の処理後、表示制御回路230は、SDRAM250内のムービバッファに格納された動画データのデコード結果を、内蔵VRAM237内のコンポジション描画バッファに読み出して描画する(S450)。具体的には、まず、表示制御回路230は、SDRAM250内のムービバッファに格納された動画データのデコード結果のカラー成分を内蔵VRAM237内の残りの半分の領域に設けられたムービブレンドバッファに転送するとともに、デコード結果に対してアルファ化処理を施す(図113B中の矢印T14参照)。次いで、表示制御回路230は、ムービブレンドバッファに転送され且つアルファ化処理が施された動画データのデコード結果をコンポジション描画バッファに転送して描画処理を行う(図113B中の矢印T15参照)。
次いで、表示制御回路230は、コンポジション描画処理を行う(S451)。なお、この処理では、次の各種処理が行われる。
まず、表示制御回路230は、テクスチャソース(SDRAM250内のテクスチャソース、ムービバッファ)に格納された各レイヤの各種ソース画像(動画/静止画デコード結果、エフェクト結果、コンポジション描画結果)を内蔵VRAM237内に設けられたコンポジション描画バッファに読み出す(図113B中の矢印T16参照)。また、表示制御回路230は、SDRAM250内のテクスチャバッファに格納された各種ソース画像をSDRAM250内に設けられたブレンドバッファ及び内蔵VRAM237内に設けられたコピーバッファに転送する(図113B中の矢印T17及びT18参照)。
次いで、表示制御回路230は、SDRAM250のブレンドバッファ及び内蔵VRAM237のコピーバッファの間で各種データを入出力させて(図113B中の矢印T19参照)、ブレンド演算描画処理を行う。なお、ブレンド演算描画処理では、動画(ムービ)データと静止画(スプライト)データとを合成する演算処理が行われる。そして、表示制御回路230は、ブレンド演算描画処理の結果(ブレンド結果)をコンポジション描画バッファに転送する(図113B中の矢印T20参照)。
次いで、表示制御回路230は、コンポジション描画バッファに読み出された各レイヤの各種ソース画像(動画/静止画デコード結果、エフェクト結果、コンポジション描画)及びブレンド結果を用いて描画(レンダリング)処理を施す。
そして、表示制御回路230は、描画(レンダリング)処理により構築された描画結果(レンダリング結果)をSDRAM250のテクスチャバッファ又はSDRAM250の所定のフレームバッファ(第1フレームバッファ又は第2フレームバッファ)に保存する(図113B中の矢印T21又はT22参照)。なお、この際、描画処理の実施対象がサブコンポジションである場合には、描画結果はテクスチャバッファに保存され、描画処理の実施対象がルートコンポジションである場合には、描画結果はフレームバッファに保存される。また、描画結果をフレームバッファに保存する場合には、前回フレームのコンポジション描画処理で描画結果が保存されたフレームバッファとは別のフレームバッファに描画結果が保存される。S451のコンポジション描画処理は上述のようにして行われる。
なお、S451のコンポジション描画処理において、以下の条件(1)〜(5)の全てが成立する場合には、表示制御回路230は、テクスチャソース(SDRAM250内のテクスチャソース、ムービバッファ)に格納された各レイヤの各種ソース画像(動画/静止画デコード結果、エフェクト結果、コンポジション描画結果)を、内蔵VRAM237内のコピーバッファにコピー描画した後、各種ソース画像をコンポジション描画バッファに読み出してコンポジション描画処理が行われる。
(1)テクスチャの左上座標が8ドットアラインに不一致
(2)回転、拡大・縮小有り
(3)バイリニアフィルタを使用
(4)ブレンド描画演算処理がマルチレンダリング処理である。
(5)テクスチャソースに格納された各レイヤの各種ソース画像がコピーバッファのサイズに収まる。
また、上述したコンポジション描画処理が、連続して同一のテクスチャソース内の各種ソース画像に対して行われる場合には、コピーバッファにキャッシュされた各種ソース画像が使用される。
そして、上述したS451の処理後、表示制御回路230は、描画処理を終了し、処理を、描画制御処理(図107B参照)中のS393に移す。
[音声制御処理]
次に、図114A及び図114Bを参照して、副制御メイン処理(図92参照)中のS209で行う音声制御処理について説明する。なお、図114Aは、ホスト制御回路210により実行される音声制御処理の手順を示すフローチャートである。また、図114Bは、音声制御処理においてホスト制御回路210から音声・LED制御回路220にサウンドリクエストが出力された際に、音声・LED制御回路220により実行される処理の手順を示すフローチャートである。
(1)ホスト制御回路により実行される音声制御処理
ホスト制御回路210は、図106のアニメーションリクエスト構築処理においてリクエストバッファに格納されたサウンドリクエストを音声・LED制御回路220に出力する(S461)。
なお、本実施形態では、ホスト制御回路210は、スピーカ群10による音声再生演出の動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、サウンドリクエストを出力する。これは、上述したように、本実施形態の表示制御回路230による画像のデコード処理及び描画処理では、その一連の処理に2フレームの期間が必要になるためである。
そして、S461の処理後、ホスト制御回路210は、音声制御処理を終了し、処理を副制御メイン処理(図92参照)のS210に移す。
(2)音声制御処理時に実行される音声・LED制御回路の処理
まず、ホスト制御回路210から出力されたサウンドリクエストが音声・LED制御回路220に入力される(S471)。次いで、音声・LED制御回路220は、音声再生の4つの実行系統の中に処理(コード)を実行可能な空いた実行系統があるか否かを判別する(S472)。
S472において、音声・LED制御回路220が、音声再生の4つの実行系統の中に空いた実行系統がないと判別した場合(S472がNO判定の場合)、音声・LED制御回路220は、空きの実行系統が発生するまで待機する(S473)。
S473の処理後、又は、S472において、音声・LED制御回路220が、音声再生の4つの実行系統の中に空いた実行系統があると判別した場合(S472がYES判定の場合)、音声・LED制御回路220は、空いている所定の実行系統にアクセスナンバーをセットする(S474)。
次いで、音声・LED制御回路220は、アクセスナンバーがセットされた実行系統において、アクセスナンバーに基づき、CGROM基板204からアクセスナンバーに対応付けられたアクセスデータを読み出す(S475)。
次いで、音声・LED制御回路220は、アクセスデータに基づいて、アクセスデータ内に規定されている複数の設定データのそれぞれを、順次、対応するアドレスに設定してコード(処理)の実行処理を開始する(S476)。この処理によりスピーカ群10による音声再生演出が開始される。なお、本実施形態では、音声の再生制御は、シンプルアクセス制御により実行される。
次いで、音声・LED制御回路220は、参照中のコードに対して複数のアクセスがあるか否かを判別する(S477)。具体的には、音声・LED制御回路220は、アクセスナンバーがセットされた実行系統で実行する参照中のコード(設定データ)に対して、他の実行系統からのアクセスがあるか否かを判別する。S477において、音声・LED制御回路220が、参照中のコードに対して複数のアクセスがないと判別した場合(S477がNO判定の場合)、音声・LED制御回路220は、後述のS479の処理を行う。
一方、S477において、音声・LED制御回路220が、参照中のコードに対して複数のアクセスがあると判別した場合(S477がYES判定の場合)、音声・LED制御回路220は、該コードの実行を最遅のサウンドリクエストに基づいて実行する(S478)。具体的には、例えば、所定のサウンドリクエストに基づいて、所定の実行系統でコード1、コード2及びコード3を実行し、且つ、次のサウンドリクエストに基づいて、他の実行系統でコード3、コード4及びコード5を実行する場合には、複数のアクセスがあるコード3の音声再生は、該次のサウンドリクエストに基づいて実行される。
S478の処理後又はS477がNO判定の場合、音声・LED制御回路220は、シンプルアクセス終了コードをセットする(S479)。そして、S479の処理後、音声・LED制御回路220は、音声制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、音声制御処理前の制御状態、音声制御処理後に実行する処理の制御状態など)時の処理に戻す。
[ランプ制御処理]
次に、図115A及び図115Bを参照して、副制御メイン処理(図92参照)中のS210で行うランプ制御処理について説明する。なお、図115Aは、ホスト制御回路210により実行されるランプ制御処理の手順を示すフローチャートである。また、図115Bは、ランプ制御処理において音声・LED制御回路220により実行される処理の手順を示すフローチャートである。
なお、本実施形態では、LEDアニメーションの再生方式において、上述した「NEXT」及び「ODONLY」が指定されていない場合の処理例を説明する。再生方式に「NEXT」及び「ODONLY」が指定されている場合を考慮したランプ制御処理については、後述の変形例2及び3(後述の図126〜図128参照)において詳述する。
(1)ホスト制御回路により実行されるランプ制御処理
ホスト制御回路210は、図106のアニメーションリクエスト構築処理においてリクエストバッファに格納されたランプリクエストを音声・LED制御回路220に出力する(S481)。なお、本実施形態では、ホスト制御回路210は、ランプ(LED)群18による演出動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、ランプリクエストを出力する。
そして、S481の処理後、ホスト制御回路210は、ランプ制御処理を終了し、処理を副制御メイン処理(図92参照)のS211に移す。
(2)ランプ制御処理時に実行される音声・LED制御回路の処理
まず、ホスト制御回路210から出力されたランプリクエストが、音声・LED制御回路220に入力される(S491)。
次いで、音声・LED制御回路220は、ランプリクエスト(LEDアニメーションのIDを含む)に基づいて、CGROM206から読み出すLEDアニメーション及びデータテーブル情報を指定する(S492)。この処理によりLEDアニメーションが指定されれば、各LED281に出力するLEDデータを指定することができる。また、この処理によりデータテーブル情報が指定されれば、再生方式、再生チャンネル、拡張チャンネル、消灯データ識別、制御部位及びLEDデータ名(デバック用)のデータを指定することができる。
次いで、音声・LED制御回路220は、指定されたデータテーブル情報を参照して、LEDアニメーションを実行する再生チャンネル(シーケンサ、レイヤ)などのデータを取得する(S493)。次いで、音声・LED制御回路220は、同じ再生チャンネルに複数のランプリクエストがあるか否かを判別する(S494)。
S494において、音声・LED制御回路220が、同じ再生チャンネルに複数のランプリクエストがあると判別した場合(S494がYES判定の場合)、音声・LED制御回路220は、最後に受信したランプリクエストに基づいて、再生チャンネル、又は、再生チャンネル及び拡張チャンネル(再生チャンネルと同チャンネルの拡張チャンネル)に、LEDアニメーションをセットする(S495)。この処理により、再生チャンネルの登録バッファ、又は、再生チャンネル及び拡張チャンネルの各登録バッファに、現在登録されているデータテーブル情報が、最後に受信したランプリクエストに基づいて取得されたデータテーブル情報により上書きされる。
一方、S494において、音声・LED制御回路220が、同じ再生チャンネルに複数のランプリクエストがないと判別した場合(S494がNO判定の場合)、音声・LED制御回路220は、再生チャンネル、又は、再生チャンネル及び拡張チャンネルに、LEDアニメーションをセットする(S496)。この処理により、再生チャンネルの登録バッファ、又は、再生チャンネル及び拡張チャンネルの各登録バッファに、今回受信したランプリクエストに基づいて取得されたデータテーブル情報が登録される。
S495又はS496の処理後、音声・LED制御回路220は、セットされたLEDアニメーションに基づいて、所定のチャンネルにおける制御対象(制御部位内)の所定のポートに設定するLEDデータ(出力データ)をCGROM206から読み込む(S497)。なお、このS497以降の処理はポート毎に実行される。
次いで、音声・LED制御回路220は、所定のポートにおいて、チャンネル間におけるLEDデータ(出力データ)の重複があるか否か、すなわち、複数のチャンネル間においてLEDデータを合成する必要があるか否かを判別する(S498)。
S498において、音声・LED制御回路220が、所定のポートにおいて、チャンネル間におけるLEDデータの重複がないと判別した場合(S498がNO判定の場合)、音声・LED制御回路220は、後述のS500の処理を行う。一方、S498において、音声・LED制御回路220が、所定のポートにおいて、チャンネル間におけるLEDデータの重複があると判別した場合(S498がYES判定の場合)、音声・LED制御回路220は、予めチャンネルに設定されたLEDデータの実行優先順位に基づいて、所定のポートにおけるLEDデータ(輝度データ)を決定する(S499)。
S499の処理では、例えば、この処理以前に、処理対象となっている所定のポートにLEDデータがセットされていなければ、今回取得したLEDデータを所定のポートにセットする。また、例えば、この処理以前にセットされている所定のポートのLEDデータが、今回、処理対象となっているチャンネルより実行優先順位が低いチャンネルのLEDデータである場合には、今回取得したLEDデータで所定のポートのLEDデータを上書きする。また、例えば、この処理以前にセットされている所定のポートのLEDデータが、今回、処理対象となっているチャンネルより実行優先順位が高いチャンネルのLEDデータである場合には、今回取得したLEDデータを破棄し、所定のポートのLEDデータを上書きしない(維持する)。このような処理をチャンネル毎に繰り返すことにより、処理対象の所定のポートにおいて、複数のチャンネルのLEDデータが合成される(複数のチャンネルの中から最も実行優先順位の高いチャンネルのLEDデータがセットされる)。
S499の処理後又はS498がNO判定の場合、音声・LED制御回路220は、所定のポートに対する上記S497〜S499の処理が、全てのチャンネル(本実施形態では8チャンネル分)に対して実行されたか否かを判別する(S500)。
S500において、音声・LED制御回路220が、所定のポートに対する上記S497〜S499の処理が全てのチャンネルに対して実行されていないと判別した場合(S500がNO判定の場合)、音声・LED制御回路220は、処理をS497に戻し、処理対象のチャンネルを変更してS497以降の処理を繰り返す。一方、S500において、音声・LED制御回路220が、所定のポートに対する上記S497〜S499の処理が全てのチャンネルに対して実行されたと判別した場合(S500がYES判定の場合)、音声・LED制御回路220は、所定のポートに対するポート直接指定データがランプリクエストに含まれているか否かを判別し、ポート直接指定データがランプリクエストに含まれている場合には、音声・LED制御回路220は、所定のポートのLEDデータをポート直接指定データで上書きする(S501)。
次いで、音声・LED制御回路220は、上述したS497〜S501の処理が全てのポートに対して実行されたか否かを判別する(S502)。なお、ここでいう、「全てのポート」とは、図97に示すLED登録処理で設定された全てのポートを意味するが、本発明はこれに限定されない。「全てのポート」が、図97に示すLED登録処理で設定されたポートに関係なく、任意に物理的に設定可能な全てのポートであってもよいし、図97に示すLED登録処理で設定されたポートの中から選択された一部のポートであってもよい。
S502において、音声・LED制御回路220が、S497〜S501の処理が全てのポートに対して実行されていないと判別した場合(S502がNO判定の場合)、音声・LED制御回路220は、処理をS497に戻し、処理対象のポートを変更してS497以降の処理を繰り返す。一方、S502において、音声・LED制御回路220が、S497〜S501の処理が全てのポートに対して実行されたと判別した場合(S502がYES判定の場合)、音声・LED制御回路220は、ランプ制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、ランプ制御処理前の制御状態、ランプ制御処理後に実行する処理の制御状態など)時の処理に戻す。
[役物制御処理]
次に、図116を参照して、副制御メイン処理(図92参照)中のS211で行う役物制御処理について説明する。図116は、本実施形態において、ホスト制御回路210により実行される役物制御処理の手順を示すフローチャートである。
なお、本実施形態のパチンコ遊技機1では、上述のように、役物演出の内容に応じて、制御実行周期が約33msecであるホスト制御回路210及び/又は制御実行周期が約12msecである音声・LED制御回路220により、役物演出の動作が制御される。そして、音声・LED制御回路220による役物演出の制御は、ホスト制御回路210から音声・LED制御回路220に出力された役物リクエストに基づいて実行されるが、この音声・LED制御回路220による役物制御処理については、後で図122A及び図122Bを参照しながら説明する。
まず、ホスト制御回路210は、現在の動作状況が主制御回路70からのコマンドの受信待機動作中であるか否かを判別する(S511)。
S511において、ホスト制御回路210が、現在の動作状況が主制御回路70からのコマンドの受信待機動作中でないと判別した場合(S511がNO判定の場合)、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
一方、S511において、ホスト制御回路210が、現在の動作状況が主制御回路70からのコマンドの受信待機動作中であると判別した場合(S511がYES判定の場合)、ホスト制御回路210は、主制御回路70から演出に関するコマンドを受信したか否かを判別する(S512)。なお、この処理で判断対象となる演出に関するコマンドは、例えば、特別図柄の変動開始、変動停止、デモ、大当りに関するコマンドであり、これらのコマンドがホスト制御回路210で受信された際に、役物群30内の可動役物が駆動される。
S512において、ホスト制御回路210が、主制御回路70から演出に関するコマンドを受信していないと判別した場合(S512がNO判定の場合)、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
一方、S512において、ホスト制御回路210が、主制御回路70から演出に関するコマンドを受信したと判別した場合(S512がYES判定の場合)、ホスト制御回路210は、変動開始コマンド受信時役物処理を行う(S513)。この処理では、ホスト制御回路210は、主に、役物リクエストの受け渡し許可/不許可を設定する。なお、変動開始コマンド受信時役物処理の詳細については、後述の図117を参照しながら後で説明する。
次いで、ホスト制御回路210は、初期位置復旧カウンタ更新処理を行う(S514)。初期位置復旧カウンタは、特別図柄の変動開始時(変動開始コマンド受信時)に行われるモータ272の初期位置復帰処理の連続実行回数を計数するカウンタである。すなわち、初期位置復旧カウンタは、初期位置復帰処理を行ってもモータ272が初期位置に復帰しない状態が連続して発生した回数を計数するカウンタである。この初期位置復旧カウンタは、サブワークRAM210aに設けられる。なお、初期位置復旧カウンタ更新処理の詳細については、後述の図118を参照しながら後で説明する。
次いで、ホスト制御回路210は、デモコマンド受信時役物処理を行う(S515)。なお、デモコマンド受信時役物処理の詳細については、後述の図119を参照しながら後で説明する。
本実施形態では、S513〜S515の各種コマンド受信時の処理を役物制御処理の中で行う例を説明したが、本発明はこれに限定されず、演出に関するコマンドを受信した際に、割込処理としてこれらの各処理を行ってもよいし、上述したコマンド解析処理(図104参照)の直後にこれらの各処理を行ってもよい。
次いで、ホスト制御回路210は、初期位置復旧確認処理を行う(S516)。なお、初期位置復旧確認処理の詳細については、後述の図120を参照しながら後で説明する。次いで、ホスト制御回路210は、現在の動作状況が主制御回路70からのコマンドの受信待機動作中であるか否かを判別する(S517)。
S517において、ホスト制御回路210が、現在の動作状況が主制御回路70からのコマンドの受信待機動作中であると判別した場合(S517がYES判定の場合)、ホスト制御回路210は、処理をS512に戻し、S512以降の処理を繰り返す。一方、S517において、ホスト制御回路210が、現在の動作状況が主制御回路70からのコマンドの受信待機動作中でないと判別した場合(S517がNO判定の場合)、ホスト制御回路210は、役物リクエストの受け渡し許可がセットされているか否かを判別する(S518)。
S518において、ホスト制御回路210が、役物リクエストの受け渡し許可がセットされていないと判別した場合(S518がNO判定の場合)、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
一方、S518において、ホスト制御回路210が、役物リクエストの受け渡し許可がセットされていると判別した場合(S518がYES判定の場合)、ホスト制御回路210は、図106のアニメーションリクエスト構築処理においてリクエストバッファに格納された役物リクエストの取得処理及び/又は音声・LED制御回路への出力処理を行う(S519)。
なお、アニメーションリクエストが指定する役物演出の内容が、ホスト制御回路210の制御実行周期(約33msec)のみで制御される内容である場合には、S519の処理において、ホスト制御回路210は、リクエストバッファに格納されたホスト制御回路210向けの役物リクエストを取得する処理のみを行う。また、アニメーションリクエストが指定する役物演出の内容が、音声・LED制御回路220の制御実行周期(約12msec)のみで制御される内容である場合には、S519の処理において、ホスト制御回路210は、リクエストバッファに格納された音声・LED制御回路220向けの役物リクエストを音声・LED制御回路220に出力する処理のみを行う。さらに、アニメーションリクエストが指定する役物演出の内容に、ホスト制御回路210の制御実行周期で制御される内容、及び、音声・LED制御回路220の制御実行周期で制御される内容の両方が含まれる場合には、S519の処理において、ホスト制御回路210は、リクエストバッファに格納されたホスト制御回路210向けの役物リクエストを取得する処理を行うとともに、リクエストバッファに格納された音声・LED制御回路220向けの役物リクエストを音声・LED制御回路220に出力する処理も行う。
また、本実施形態では、S519の処理において、ホスト制御回路210は、役物群30内の各可動役物による演出動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、上述した役物リクエストの取得処理及び/又は出力処理を実行する。
次いで、ホスト制御回路210は、取得した役物リクエストに基づいて、I2Cコントローラ261を介して励磁データをモータドライバ271に送信する(S520)。次いで、ホスト制御回路210は、I2Cコントローラ261から通信エラー信号が受信されたか否かを判別する(S521)。この処理では、ホスト制御回路210は、I2Cコントローラ261及びモータコントローラ270間の通信エラー又はI2Cコントローラ261のエラーを検知したか(取得したか又は入力されたか)否かを判別してよい。
S521において、ホスト制御回路210が、I2Cコントローラ261から通信エラー信号を受信したと判別した場合(S521がYES判定の場合)、ホスト制御回路210は、通信コントローラエラーを設定する(S522)。そして、S522の処理後、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
一方、S521において、ホスト制御回路210が、I2Cコントローラ261から通信エラー信号を受信していないと判別した場合(S521がNO判定の場合)、ホスト制御回路210は、各モータドライバ271のアドレスにアクセスできるか否かを判別する(S523)。
S523において、ホスト制御回路210が、各モータドライバ271のアドレスにアクセスできないと判別した場合(S523がNO判定の場合)、ホスト制御回路210は、接続エラーを設定する(S524)。そして、S524の処理後、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
一方、S523において、ホスト制御回路210が、各モータドライバ271のアドレスにアクセスできると判別した場合(S523がYES判定の場合)、ホスト制御回路210は、励磁時間監視処理を行う。この処理では、各可動役物の励磁データにおいて動作パターン毎に設定された停止後励磁時間(図72及び図73参照)と、対応する動作パターンの動作終了後に継続して可動役物が励磁される時間の計測値(励磁監視時間)とを比較して、エラーが発生しているか否かを判別する。なお、励磁時間監視処理の詳細については、後述の図121を参照しながら後で説明する。
次いで、ホスト制御回路210は、各可動役物(各モータ272)の動作が正常に終了した否かを判別する(S526)。
S526において、ホスト制御回路210が、各可動役物(各モータ272)の動作が正常に終了したと判別した場合(S526がYES判定の場合)、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。一方、S526において、ホスト制御回路210が、各可動役物(各モータ272)の動作が正常に終了していないと判別した場合(S526がNO判定の場合)、ホスト制御回路210は、データエラーを設定する(S527)。そして、S527の処理後、ホスト制御回路210は、役物制御処理を終了し、処理を副制御メイン処理(図92参照)のS212に移す。
[変動開始コマンド受信時役物処理]
次に、図117を参照して、役物制御処理(図116参照)中のS513で行う変動開始コマンド受信時役物処理について説明する。なお、図117は、本実施形態における変動開始コマンド受信時役物処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、変動開始コマンドを受信したか否かを判別する(S531)。具体的には、ホスト制御回路210は、例えば、上述の特別図柄演出開始コマンドを受信したか否かを判別する。
S531において、ホスト制御回路210が、変動開始コマンドを受信していないと判別した場合(S531がNO判定の場合)、ホスト制御回路210は、変動開始コマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS514に移す。一方、S531において、ホスト制御回路210が、変動開始コマンドを受信したと判別した場合(S531がYES判定の場合)、ホスト制御回路210は、全てのモータ272が初期位置にあるか否かを判別する(S532)。
S532において、ホスト制御回路210が、全てのモータ272が初期位置にあると判別した場合(S532がYES判定の場合)、ホスト制御回路210は、役物リクエストの受け渡し許可をセットする(S533)。役物リクエストの受け渡し許可がセットされると、役物群30内の各可動役物の制御状態が、コマンド受信待機状態から役物リクエスト受け渡し許可状態に移行する。なお、本実施形態では、S533の処理において、ホスト制御回路210は、ホスト制御回路210が実行する役物制御に関わる処理間における役物リクエストの受け渡し許可、並びに、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し許可をセットする。
次いで、ホスト制御回路210は、初期位置復旧カウンタに「0」をセットする(S534)。そして、S534の処理後、ホスト制御回路210は、変動開始コマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS514に移す。
一方、S532において、ホスト制御回路210が、1個以上のモータ272が初期位置にないと判別した場合(S532がNO判定の場合)、ホスト制御回路210は、役物リクエストの受け渡し不許可をセットする(S535)。なお、本実施形態では、S535の処理において、ホスト制御回路210は、ホスト制御回路210が実行する役物制御に関わる処理間における役物リクエストの受け渡し不許可、並びに、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し不許可をセットする。
次いで、ホスト制御回路210は、初期位置復旧動作への移行設定を行う(S536)。そして、S536の処理後、ホスト制御回路210は、変動開始コマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS514に移す。
なお、本実施形態では、上述のように、変動開始コマンド受信時役物処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、S532の判定処理(可動体の少なくとも一部が初期位置に存在するか否かを判定する処理)を実行する手段(判定手段)も兼ねる。
[初期位置復旧カウンタ更新処理]
次に、図118を参照して、役物制御処理(図116参照)中のS514で行う初期位置復旧カウンタ更新処理について説明する。なお、図118は、本実施形態における初期位置復旧カウンタ更新処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、変動開始コマンドを受信したか否かを判別する(S541)。具体的には、ホスト制御回路210は、例えば、上述の特別図柄演出開始コマンドを受信したか否かを判別する。
S541において、ホスト制御回路210が、変動開始コマンドを受信していないと判別した場合(S541がNO判定の場合)、ホスト制御回路210は、初期位置復旧カウンタ更新処理を終了し、処理を役物制御処理(図116参照)のS515に移す。一方、S541において、ホスト制御回路210が、変動開始コマンドを受信したと判別した場合(S541がYES判定の場合)、ホスト制御回路210は、初期位置復旧動作への移行が設定されているか否かを判別する(S542)。
S542において、ホスト制御回路210が、初期位置復旧動作への移行が設定されていると判別した場合(S542がYES判定の場合)、ホスト制御回路210は、後述のS546の処理を行う。一方、S542において、ホスト制御回路210が、初期位置復旧動作への移行が設定されていないと判別した場合(S542がNO判定の場合)、ホスト制御回路210は、全てのモータ272が初期位置にあるか否かを判別する(S543)。
S543において、ホスト制御回路210が、1個以上のモータ272が初期位置にないと判別した場合(S543がNO判定の場合)、ホスト制御回路210は、初期位置復旧カウンタ更新処理を終了し、処理を役物制御処理(図116参照)のS515に移す。一方、S543において、ホスト制御回路210が、全てのモータ272が初期位置にあると判別した場合(S543がYES判定の場合)、ホスト制御回路210は、役物リクエストの受け渡し許可をセットする(S544)。なお、本実施形態では、S544の処理において、ホスト制御回路210は、ホスト制御回路210が実行する役物制御に関わる処理間における役物リクエストの受け渡し許可、並びに、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し許可をセットする。
S544の処理後、ホスト制御回路210は、初期位置復旧カウンタに「0」をセットする(S545)。そして、S545の処理後、ホスト制御回路210は、初期位置復旧カウンタ更新処理を終了し、処理を役物制御処理(図116参照)のS515に移す。
ここで、再度、S542の処理に戻って、S542がYES判定の場合、ホスト制御回路210は、初期位置復帰処理を行う(S546)。この処理では、ホスト制御回路210は、可動役物を初期位置に戻す処理(復旧処理:リトライ動作)を行う。なお、この処理では、ホスト制御回路210は、全ての可動役物に対して初期位置に戻す処理(復旧処理)を行ってもよいし、エラーが発生している(初期位置に戻っていない)可動役物に対してのみ、初期位置に戻す処理を行ってもよい。
また、S546の処理において複数の可動役物に対して復旧処理を行う必要がある場合には、複数の可動役物に対して同時に復旧処理が行われるが、本発明はこれに限定されない。各可動役物に対して異なるタイミングで順次、復旧処理を行う構成にしてもよい。
次いで、ホスト制御回路210は、初期位置復旧カウンタの値に「1」を加算する(S547)。そして、S547の処理後、ホスト制御回路210は、初期位置復旧カウンタ更新処理を終了し、処理を役物制御処理(図116参照)のS515に移す。
なお、可動役物(可動体)の演出が、複数の変動に跨って可動役物を初期位置(待機位置)に戻さないような演出である場合には、演出期間の途中の変動開始時(変動終了時)に可動役物が初期位置に存在しなくても異常ではない。それゆえ、このような演出が行われる場合には、上述した初期位置復旧カウンタ更新処理において、変動開示コマンド受信時であり且つ初期位置復旧動作への移行が設定されている時であっても、S546の初期位置復帰処理及びS547の初期位置復旧カウンタの加算処理は行われない。
なお、本実施形態では、上述のように、初期位置復旧カウンタ更新処理は、ホスト制御回路210(副制御回路200)により制御される。すなわち、ホスト制御回路210(副制御回路200)は、S546の初期位置復帰処理を行う手段(復旧手段)も兼ねる。また、ホスト制御回路210(副制御回路200)は、S546の初期位置復旧カウンタの値を「1」加算する手段、すなわち、初期位置復帰処理を行っても可動役物の少なくとも一部が初期位置に戻らない状態が連続して発生した回数を計数する手段(復旧回数計数手段)も兼ねる。
[デモコマンド受信時役物処理]
次に、図119を参照して、役物制御処理(図116参照)中のS515で行うデモコマンド受信時役物処理について説明する。なお、図119は、本実施形態におけるデモコマンド受信時役物処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、デモコマンドを受信したか否かを判別する(S551)。具体的には、ホスト制御回路210は、例えば、上述のデモ表示コマンドを受信したか否かを判別する。
S551において、ホスト制御回路210が、デモコマンドを受信していないと判別した場合(S551がNO判定の場合)、ホスト制御回路210は、デモコマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS516に移す。一方、S551において、ホスト制御回路210が、デモコマンドを受信したと判別した場合(S551がYES判定の場合)、ホスト制御回路210は、モータ272の不具合等によるエラーが検出されているか否かを判別する(S552)。この処理では、ホスト制御回路210は、例えば、役物制御処理(図116参照)中のS521以降の処理や、後述の音声・LED制御回路220により実行される役物制御処理(後述の図122B参照)中のS583以降の処理で設定された各種エラー(通信コントローラエラー、接続エラー、データエラー)などが発生しているか否かを判別する。
S552において、ホスト制御回路210が、モータ272の不具合等によるエラーが検出されていると判別した場合(S522がYES判定の場合)、ホスト制御回路210は、役物動作時エラー動作への移行設定を行う(S553)。そして、S553の処理後、ホスト制御回路210は、デモコマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS516に移す。
一方、S552において、ホスト制御回路210が、モータ272の不具合等によるエラーが検出されていないと判別した場合(S552がNO判定の場合)、ホスト制御回路210は、全てのモータ272が初期位置にあるか否かを判別する(S554)。
S554において、ホスト制御回路210が、1個以上のモータ272が初期位置にないと判別した場合(S554がNO判定の場合)、ホスト制御回路210は、デモコマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS516に移す。一方、S554において、ホスト制御回路210が、全てのモータ272が初期位置にあると判別した場合(S554がYES判定の場合)、ホスト制御回路210は、役物励磁開放処理を行う(S555)。この処理では、ホスト制御回路210は、全てのモータ272(モータドライバ271)への励磁データの出力を停止する。
次いで、ホスト制御回路210は、役物リクエストの受け渡し許可をセットする(S556)。なお、本実施形態では、S556の処理において、ホスト制御回路210は、ホスト制御回路210が実行する役物制御に関わる処理間における役物リクエストの受け渡し許可、並びに、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し許可をセットする。
次いで、ホスト制御回路210は、初期位置復旧カウンタに「0」をセットする(S557)。そして、S557の処理後、ホスト制御回路210は、デモコマンド受信時役物処理を終了し、処理を役物制御処理(図116参照)のS516に移す。
[初期位置復旧確認処理]
次に、図120を参照して、役物制御処理(図116参照)中のS516で行う初期位置復旧確認処理について説明する。なお、図120は、本実施形態における初期位置復旧確認処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、役物リクエストの受け渡し許可がセットされているか否かを判別する(S561)。
S561において、ホスト制御回路210が、役物リクエストの受け渡し許可がセットされていると判別した場合(S561がYES判定の場合)、ホスト制御回路210は、初期位置復旧確認処理を終了し、処理を役物制御処理(図116参照)のS517に移す。一方、S561において、ホスト制御回路210が、役物リクエストの受け渡し許可がセットされていないと判別した場合(S561がNO判定の場合)、ホスト制御回路210は、役物動作時エラー動作への移行が設定されているか否かを判別する(S562)。
S562において、ホスト制御回路210が、役物動作時エラー動作への移行が設定されていないと判別した場合(S562がNO判定の場合)、ホスト制御回路210は、初期位置復旧確認処理を終了し、処理を役物制御処理(図116参照)のS517に移す。一方、S562において、ホスト制御回路210が、役物動作時エラー動作への移行が設定されていると判別した場合(S562がYES判定の場合)、ホスト制御回路210は、初期位置復旧カウンタの値が「10」以上であるか否かを判別する(S563)。
S563において、ホスト制御回路210が、初期位置復旧カウンタの値が「10」以上であると判別した場合(S563がYES判定の場合)、ホスト制御回路210は、後述のS566の処理を行う。一方、S563において、ホスト制御回路210が、初期位置復旧カウンタの値が「10」以上でないと判別した場合(S563がNO判定の場合)、ホスト制御回路210は、全てのモータ272が初期位置にあるか否かを判別する(S564)。
S564において、ホスト制御回路210が、1個以上のモータ272が初期位置にないと判別した場合(S564がNO判定の場合)、ホスト制御回路210は、初期位置復旧確認処理を終了し、処理を役物制御処理(図116参照)のS517に移す。一方、S564において、ホスト制御回路210が、全てのモータ272が初期位置にあると判別した場合(S564がYES判定の場合)、ホスト制御回路210は、コマンド受信待機動作への移行設定を行う(S565)。そして、S565の処理後、ホスト制御回路210は、初期位置復旧確認処理を終了し、処理を役物制御処理(図116参照)のS517に移す。
ここで、再度、S563の処理に戻って、S563がYES判定の場合、ホスト制御回路210は、役物リクエストの受け渡し不許可をセットする(S566)。なお、本実施形態では、S566の処理において、ホスト制御回路210は、ホスト制御回路210が実行する役物制御に関わる処理間における役物リクエストの受け渡し不許可、並びに、ホスト制御回路210から音声・LED制御回路220への役物リクエストの受け渡し不許可をセットする。
次いで、ホスト制御回路210は、電源再投入により初期化処理が行われるまで、全てのモータ272を停止する(S567)。そして、S567の処理後、ホスト制御回路210は、初期位置復旧確認処理を終了し、処理を役物制御処理(図116参照)のS517に移す。
なお、本実施形態では、上述のように、初期位置復旧カウンタの値が「10」以上である場合にモータ272を停止する例を説明したが、本発明はこれに限定されない。モータ272を停止させる(エラー時処理を実行する)ための初期位置復旧カウンタの閾値は、例えば、可動役物の演出内容やモータ272の性能、耐久性等に応じて任意に設定することができる。
[励磁時間監視処理]
次に、図121を参照して、役物制御処理(図116参照)中のS525で行う励磁時間監視処理について説明する。なお、図121は、本実施形態における励磁時間監視処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、各モータ272の励磁状態の時間をチェックする(S571)。この処理では、主に、ホスト制御回路210は、演出動作を構成する各動作パターンの動作終了後に継続して各モータ272が励磁されている時間(励磁監視時間)を監視(計測)する。
次いで、ホスト制御回路210は、全てのモータ272において、動作パターン毎に計測された励磁監視時間が対応する停止後励磁時間(図72及び図73参照)を超えているか否かを判別する(S572)。
S572において、ホスト制御回路210は、全てのモータ272において、動作パターン毎に計測された励磁監視時間が対応する停止後励磁時間を超えていないと判別した場合(S572がNO判定の場合)、ホスト制御回路210は、励磁時間監視処理を終了し、処理を役物制御処理(図116参照)のS526に移す。
一方、S572において、ホスト制御回路210は、1以上のモータ272において、動作パターン毎に計測された励磁監視時間が対応する停止後励磁時間を超えていると判別した場合(S572がYES判定の場合)、ホスト制御回路210は、モータ272の動作を停止させる(S573)。この際、ホスト制御回路210は、全てのモータ272の動作を停止させてもよいし、エラーが検知されたモータ272の動作のみを停止させてもよい。そして、S573の処理後、ホスト制御回路210は、励磁時間監視処理を終了し、処理を役物制御処理(図116参照)のS526に移す。なお、本実施形態では、励磁監視時間が対応する停止後励磁時間を超えた場合にエラー発生と判定する構成例を説明したが、本発明はこれに限定されず、例えば、励磁監視時間が、停止後励磁時間に所定の余裕時間(例えば15msec等)を加算した時間を超えた場合にエラー発生と判定する構成にしてもよい。
なお、本実施形態では、図121に示す励磁時間監視処理は、副制御回路200(ホスト制御回路210及び音声・LED制御回路220の少なくとも一方)により制御される。すなわち、副制御回路200は、S572の判定処理(監視された所定のパラメータの値(励磁監視時間)が閾値(停止後励磁時間)を超えたか否かを判定する処理)を行う手段(駆動状況監視手段)、及び、S573のエラー時処理(モータ停止処理)を行う手段(エラー時処理手段)も兼ねる。
[音声・LED制御回路による役物制御処理]
次に、図122A及び図122Bを参照して、音声・LED制御回路220により実行される役物制御処理について説明する。なお、図122Aは、ホスト制御回路210により実行される役物制御処理のフローチャート(図116参照)に対応するが、ここでは、説明を簡略化するため、音声・LED制御回路220向けの役物リクエストの出力処理(S519)のみを示す。また、図122Bは、音声・LED制御回路220により実行される役物制御処理の手順を示すフローチャートである。
なお、本実施形態では、図122A(図116)に示すホスト制御回路210による役物制御処理は、約33msecの周期で実行されるが、図122Bに示す音声・LED制御回路220による役物制御処理は、約12msecの周期で実行される。
まず、ホスト制御回路210により実行される役物制御処理(図116参照)中のS519の処理において、リクエストバッファに格納された音声・LED制御回路220向けの役物リクエストが、ホスト制御回路210から音声・LED制御回路220に出力される。これにより、音声・LED制御回路220は、役物リクエストを取得する(S581)。
次いで、音声・LED制御回路220は、役物リクエストに基づいて、I2Cコントローラ261を介して励磁データをモータドライバ271に送信する(S582)。次いで、音声・LED制御回路220は、I2Cコントローラ261から通信エラー信号が受信されたか否かを判別する(S583)。この処理では、音声・LED制御回路220は、I2Cコントローラ261及びモータコントローラ270間の通信エラー又はI2Cコントローラ261のエラーを検知したか(取得したか又は入力されたか)否かを判別してよい。
S583において、音声・LED制御回路220が、I2Cコントローラ261から通信エラー信号を受信したと判別した場合(S583がYES判定の場合)、音声・LED制御回路220は、通信コントローラエラーを設定する(S584)。この際、音声・LED制御回路220は、通信コントローラエラーに関する情報をホスト制御回路210に出力してもよい。そして、S584の処理後、音声・LED制御回路220は、役物制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、役物制御処理前の制御状態、役物制御処理後に実行する処理の制御状態など)時の処理に戻す。
一方、S583において、音声・LED制御回路220が、I2Cコントローラ261から通信エラー信号を受信していないと判別した場合(S583がNO判定の場合)、音声・LED制御回路220は、各モータドライバ271のアドレスにアクセスできるか否かを判別する(S585)。
S585において、音声・LED制御回路220が、各モータドライバ271のアドレスにアクセスできないと判別した場合(S585がNO判定の場合)、ホスト制御回路210は、接続エラーを設定する(S586)。この際、音声・LED制御回路220は、接続エラーに関する情報をホスト制御回路210に出力してもよい。そして、S586の処理後、音声・LED制御回路220は、役物制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、役物制御処理前の制御状態、役物制御処理後に実行する処理の制御状態など)時の処理に戻す。
一方、S585において、音声・LED制御回路220が、各モータドライバ271のアドレスにアクセスできると判別した場合(S585がYES判定の場合)、音声・LED制御回路220は、図121で説明した励磁時間監視処理を行う(S587)。なお、この際、励磁時間監視処理内の各処理は、音声・LED制御回路220により実行される。
次いで、音声・LED制御回路220は、各可動役物(各モータ272)の動作が正常に終了した否かを判別する(S588)。
S588において、音声・LED制御回路220が、各可動役物(各モータ272)の動作が正常に終了したと判別した場合(S588がYES判定の場合)、音声・LED制御回路220は、役物制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、役物制御処理前の制御状態、役物制御処理後に実行する処理の制御状態など)時の処理に戻す。
一方、S588において、音声・LED制御回路220が、各役物(各モータ272)の動作が正常に終了していないと判別した場合(S588がNO判定の場合)、音声・LED制御回路220は、データエラーを設定する(S589)。この際、音声・LED制御回路220は、データエラーに関する情報をホスト制御回路210に出力してもよい。そして、S589の処理後、音声・LED制御回路220は、役物制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、役物制御処理前の制御状態、役物制御処理後に実行する処理の制御状態など)時の処理に戻す。
[音声・LED制御回路及びLEDドライバ間のデータ通信処理]
次に、図123A及び図123Bを参照して、音声・LED制御回路220及びLEDドライバ280間で行われる通信処理について説明する。なお、図123Aは、音声・LED制御回路220及びLEDドライバ280間の通信処理において、音声・LED制御回路220により実行される信号及びデータの送信処理の手順を示すフローチャートである。また、図123Bは、音声・LED制御回路220及びLEDドライバ280間の通信処理において、LEDドライバ280により実行される信号及びデータの受信処理の手順を示すフローチャートである。
本実施形態では、ホスト制御回路210から音声・LED制御回路220にランプリクエストが入力されると、該ランプリクエストに基づいて、音声・LED制御回路220は、ランプ出力データ(LEDデータ)をランプ群20に含まれる各LEDドライバ280に送信する。この際、音声・LED制御回路220及びLEDドライバ280間は、上述のように、SPIバスで接続されているので、両者間ではSPI方式で信号及びシリアル・データの通信が行われる。なお、本実施形態では、音声・LED制御回路220及びLEDドライバ280間の通信形態は、音声・LED制御回路220からLEDドライバ280に一方的に信号及びシリアル・データの送信する形態となる。
以下に、ランプリクエストに基づいて、音声・LED制御回路220により実行される信号及びシリアル・データの送信処理、並びに、LEDドライバ280により実行されるデータ受信処理の具体的な手順を、それぞれ図123A及び図123Bのフローチャートを参照しながら説明する。なお、本実施形態において、音声・LED制御回路220から送信されるシリアル・データの構成は、上記図39で説明した構成とする。
(1)音声・LED制御回路のシリアル・データ送信処理
まず、音声・LED制御回路220は、図123Aに示すように、データ「1」を連続して16回以上、LEDドライバ280に送信する(S601)。すなわち、音声・LED制御回路220は、シリアル・データの先頭に配置された、データ「1」が16ビット以上連続して格納された領域のデータ(図39参照)をLEDドライバ280に送信する。
次いで、音声・LED制御回路220は、デバイスアドレスをLEDドライバ280に送信する(S602)。次いで、音声・LED制御回路220は、レジスタアドレスをLEDドライバ280に送信する(S603)。
次いで、音声・LED制御回路220は、ランプ出力データ(LEDデータ)をLEDドライバ280に送信する(S604)。そして、S604の処理後、音声・LED制御回路220は、シリアル・データの送信処理を終了する。
(2)LEDドライバの受信処理(受信データに基づく状態遷移処理)
まず、LEDドライバ280は、図123Bに示すように、スリープ状態をセットする(S611)。なお、「スリープ状態にする」とは、LEDドライバ280の動作状態を休眠(休止)状態にして動作待機の状態にすることである。また、セットされたスリープ状態は、LEDドライバ280が音声・LED制御回路220から最初のデータ「1」を受信(検出)した際に解除される。
次いで、LEDドライバ280は、音声・LED制御回路220からデータ「1」を連続16回、受信(検出)したか否かを判別する(S612)。
S612において、LEDドライバ280が、音声・LED制御回路220からデータ「1」を連続16回、受信(検出)していないと判別した場合(S612がNO判定の場合)、LEDドライバ280は、処理をS611に戻し、S611以降の処理を繰り返す。一方、S612において、LEDドライバ280が、音声・LED制御回路220からデータ「1」を連続16回、受信(検出)したと判別した場合(S612がYES判定の場合)、LEDドライバ280は、スタート待機状態をセットする(S613)。
次いで、LEDドライバ280は、データ「0」を受信したか否かを判別する(S614)。この処理では、LEDドライバ280は、デバイスアドレスの先頭ビットに格納されたデータ「0」(図39参照)を受信したか否かを判別する。
S614において、LEDドライバ280が、データ「0」を受信していないと判別した場合(S614がNO判定の場合)、LEDドライバ280は、処理をS613に戻し、S613以降の処理を繰り返す。なお、所定時間、LEDドライバ280でデータ「0」が受信されずにスタート待機状態が続いている場合には、LEDドライバ280は、タイムアウト処理として動作状態をスリープ状態に戻す処理を行ってもよい。
一方、S614において、LEDドライバ280が、データ「0」を受信したと判別した場合(S614がYES判定の場合)、LEDドライバ280は、デバイスアドレス待ち受け状態をセットする(S615)。
次いで、LEDドライバ280は、音声・LED制御回路220から送信されたデバイスアドレスを受信し、デバイスアドレスが当該LEDドライバ280に設定されたそれと一致するか否かを判別する(S616)。S616において、LEDドライバ280が、受信したデバイスアドレスが当該LEDドライバ280に設定されたそれと一致しないと判別した場合(S616がNO判定の場合)、LEDドライバ280は、処理をS611に戻し、S611以降の処理を繰り返す。一方、S616において、LEDドライバ280が、受信したデバイスアドレスが当該LEDドライバ280に設定されたそれと一致すると判別した場合(S616がYES判定の場合)、LEDドライバ280は、レジスタアドレス待ち受け状態をセットする(S617)。
次いで、LEDドライバ280は、音声・LED制御回路220から送信されたレジスタアドレスを受信し、該レジスタアドレスが存在するレジスタアドレスであるか否かを判別する(S618)。S618において、LEDドライバ280が、受信したレジスタアドレスが存在するレジスタアドレスでないと判別した場合(S618がNO判定の場合)、LEDドライバ280は、処理をS611に戻し、S611以降の処理を繰り返す。
一方、S618において、LEDドライバ280が、受信したレジスタアドレスが存在するレジスタアドレスであると判別した場合(S618がYES判定の場合)、LEDドライバ280は、データ受信状態をセットする(S619)。これにより、音声・LED制御回路220から送信されたランプ出力データ(LEDデータ)の受信処理が開始される。次いで、LEDドライバ280は、ランプ出力データ(LEDデータ)の最終データを示すデータ「0FFH(1111111B)」(図39参照)を受信したか否かを判別する(S620)。
S620において、LEDドライバ280が、データ「0FFH」を受信していないと判別した場合(S620がNO判定の場合)、LEDドライバ280は、処理をS619に戻し、S619以降の処理を繰り返す。一方、S620において、LEDドライバ280が、データ「0FFH」を受信したと判別した場合(S620がYES判定の場合)、LEDドライバ280は、処理をS611に戻し、S611以降の処理を繰り返す。
[ホスト制御回路及びモータドライバ間のデータ通信処理]
次に、図124A及び図124Bを参照して、ホスト制御回路210及びモータドライバ271間で行われる通信処理について説明する。なお、図124Aは、ホスト制御回路210及びモータドライバ271間の通信処理において、ホスト制御回路210により実行される信号及びシリアル・データの送受信処理の手順を示すフローチャートである。また、図124Bは、ホスト制御回路210及びモータドライバ271間の通信処理において、モータドライバ271により実行される信号及びデータの送受信処理の手順を示すフローチャートである。
本実施形態では、上述のように、ホスト制御回路210においてホスト制御回路210向けの役物リクエストが生成されると、該役物リクエストに基づいて、ホスト制御回路210は、モータドライバ271に励磁データに出力する。この際、ホスト制御回路210及びモータドライバ271間は、I2Cバスで接続されているので、両者間ではI2C方式で信号(データ)の送受信が行われる。なお、本実施形態では、ホスト制御回路210及びモータドライバ271間の通信方向は、双方向となる。
以下に、ホスト制御回路210向けの役物リクエストに基づいて、ホスト制御回路210により実行される信号及びデータの送受信処理、並びに、モータドライバ271により実行される信号及びデータの送受信処理の具体的な手順を、それぞれ図124A及び図124Bのフローチャートを参照しながら説明する。
(1)ホスト制御回路210のデータ送受信処理(シリアルデータ入出力処理)
まず、ホスト制御回路210は、図124Aに示すように、スタート・コンディションを発行し、I2Cバスを介してホスト制御回路210に接続された全てのモータドライバ271にコントロール・バイトを送信する(S631)。なお、この処理で送信されるコントロール・バイトには、データの送信先となる所定のモータドライバ271を特定するアドレス情報、並びに、モータドライバ271がホスト制御回路210からデータを受信するか又はモータドライバ271がホスト制御回路210にデータを送信するかを決定する後述の送受信ビットの値が含まれる。
次いで、ホスト制御回路210は、所定のモータドライバ271との間でシリアル・データの送受信を行う(S632)。S631でモータドライバ271に送信したコントロール・バイトに含まれる送受信ビットの値が、モータドライバ271がホスト制御回路210からデータを受信する動作に対応する値である場合には、S632の処理において、ホスト制御回路210は、例えば、モータ272の励磁データ等をモータドライバ271に送信する。一方、S631でモータドライバ271に送信されたコントロール・バイトに含まれる送受信ビットの値が、モータドライバ271がホスト制御回路210にデータを送信する動作に対応する値である場合には、S632の処理において、ホスト制御回路210は、例えば、エラー情報等をモータドライバ271から受信する。
次いで、ホスト制御回路210は、データの送受信処理が完了すれば、ストップ・コンディションを発行する(S633)。そして、ホスト制御回路210は、役物リクエスト取得時のデータの送受信処理を終了する。
(2)モータドライバのデータ送受信処理
まず、モータドライバ271は、図124Bに示すように、ホスト制御回路210で発行されたスタート・コンディションに含まれるコントロール・バイトの情報を参照し、コントロール・バイトに含まれるアドレスが、当該モータドライバ271のアドレスと一致するか否かを判別する(S641)。なお、ホスト制御回路210からモータドライバ271に送信されるシリアルデータの構成は、図39に示すシリアルデータの構成と同一ではないが、ホスト制御回路210からモータドライバ271に送信されるシリアルデータには、図39中のデバイスアドレスに対応する領域が設けられ、該領域に上述したコントロール・バイトの情報が格納されている。
S641において、モータドライバ271が、コントロール・バイトに含まれるアドレスが、当該モータドライバ271のアドレスと一致しないと判別した場合(S641がNO判定の場合)、モータドライバは、後述のS644の処理を行う。
一方、S641において、モータドライバ271が、コントロール・バイトに含まれるアドレスが、当該モータドライバ271のアドレスと一致すると判別した場合(S641がYES判定の場合)、モータドライバ271は、コントロール・バイトに含まれる送受信ビットの値に基づいて、ホスト制御回路210に所定のデータ(エラー情報等)を送信する、又は、特定のデータ(励磁データ等)を受信する(S642)。
次いで、モータドライバ271は、ホスト制御回路210から発行されたストップ・コンディションを受信したか否かを判別する(S643)。S643において、モータドライバ271が、ホスト制御回路210から発行されたストップ・コンディションを受信したと判別した場合(S643がYES判定の場合)、モータドライバ271は、後述のS644の処理を行う。一方、S643において、モータドライバ271が、ホスト制御回路210から発行されたストップ・コンディションを受信していないと判別した場合(S643がNO判定の場合)、モータドライバ271は、処理をS642に戻し、S642以降の処理を繰り返す。
そして、S641がNO判定の場合又はS643がYES判定の場合、モータドライバ271は、状態を待機状態に移行させる(S644)。なお、S641がNO判定の場合、すなわち、当該モータドライバ271がホスト制御回路210とデータの送受信を行うモータドライバ271でない場合には、S644の処理の時点で待機状態であるので、この場合には、モータドライバ271は、待機状態を維持する処理を行う。
なお、詳細な説明は省略するが、音声・LED制御回路220により役物制御を実行する際に行われる、音声・LED制御回路220及びモータドライバ271間の通信処理もまた、上述したホスト制御回路210及びモータドライバ271間のデータ通信処理と同様にして行われる。
<各種変形例>
本発明に係るパチンコ遊技機の構成及び演出動作の制御手法は、上記実施形態の例に限定されず、各種変形例が考えられる。以下では、その各種変形例について説明する。
[変形例1]
上記実施形態の音声制御処理(図114A及び図114B参照)では、音声・LED制御回路220が、アクセスナンバーをサウンド再生の実行系統にセットする際、4つの実行系統の空き状況を判別して、空いている実行系統にアクセスナンバーをセットする例を説明したが、本発明はこれに限定されない。例えば、アクセスナンバー毎にセットする実行系統が予め決定されていてもよい。変形例1では、そのような場合における音声制御処理の処理例を説明する。
なお、変形例1では、音声制御処理以外の処理は、上記実施形態と同様に実行することができ、この例のパチンコ遊技機の構成も、上記実施形態のそれと同様の構成にするできる。それゆえ、ここでは、音声制御処理についてのみ説明する。
図125A及び図125Bを参照して、副制御メイン処理(図92参照)中のS209で行う変形例1の音声制御処理について説明する。なお、図125Aは、ホスト制御回路210により実行されるこの例の音声制御処理の手順を示すフローチャートである。また、図125Bは、この例の音声制御処理において音声・LED制御回路220により実行される処理の手順を示すフローチャートである。
(1)ホスト制御回路により実行される音声制御処理
ホスト制御回路210は、図125Aに示すように、図106のアニメーションリクエスト構築処理においてリクエストバッファに格納されたサウンドリクエストを音声・LED制御回路220に出力する(S701)。なお、この例においても、ホスト制御回路210は、LEDデータを用いた演出動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、サウンドリクエストを出力する。
そして、S701の処理後、ホスト制御回路210は、音声制御処理を終了し、処理を副制御メイン処理(図92参照)のS210に移す。
(2)音声制御処理時に実行される音声・LED制御回路の処理
まず、図125Bに示すように、ホスト制御回路210から出力されたサウンドリクエストが音声・LED制御回路220に入力される(S711)。次いで、音声・LED制御回路220は、サウンドリクエストに基づいて、アクセスナンバーを特定する(S712)。次いで、音声・LED制御回路220は、特定したアクセスナンバーに基づいて、該アクセスナンバーをセットするサウンド再生の実行系統を決定する(S713)。
次いで、音声・LED制御回路220は、決定された実行系統において処理が実行中であるか否かを判別する(S714)。
S714において、音声・LED制御回路220が、決定された実行系統において処理が実行中でないと判別した場合(S714がNO判定の場合)、音声・LED制御回路220は、決定された実行系統にアクセスナンバーをセットする(S715)。一方、S714において、音声・LED制御回路220が、決定された実行系統において処理が実行中であると判別した場合(S714がYES判定の場合)、音声・LED制御回路220は、決定された実行系統において現在実行されているアクセスナンバーの処理終了後に、S712で特定されたアクセスナンバーの処理が実行されるように、該実行系統にS712で特定されたアクセスナンバーをセットする(S716)。この場合、S713で決定された実行系統において、現在実行されているアクセスナンバーの処理が終了するまで、音声・LED制御回路220の動作状態は待機状態となる。
S715又はS716の処理後、音声・LED制御回路220は、アクセスナンバーがセットされた実行系統において、CGROM基板204からアクセスナンバーに対応付けられたアクセスデータを読み出す(S717)。
次いで、音声・LED制御回路220は、アクセスデータに基づいて、アクセスデータ内に規定されている複数の設定データのそれぞれを、順次、対応するアドレスに設定してコード(処理)の実行処理を開始する(S718)。この処理により、スピーカ群10による音声再生の演出動作が開始される。なお、この際、この例においても、音声の再生制御は、シンプルアクセス制御により実行される。
S718の処理後、音声・LED制御回路220は、参照中のコードに対して複数のアクセスがあるか否かを判別する(S719)。具体的には、音声・LED制御回路220は、アクセスナンバーがセットされた実行系統で実行する参照中のコード(設定データ)に対して、他の実行系統からのアクセスがあるか否かを判別する。
S719において、音声・LED制御回路220が、参照中のコードに対して複数のアクセスがないと判別した場合(S719がNO判定の場合)、音声・LED制御回路220は、後述のS721の処理を行う。一方、S719において、音声・LED制御回路220が、参照中のコードに対して複数のアクセスがあると判別した場合(S719がYES判定の場合)、音声・LED制御回路220は、該参照中のコードを最遅のサウンドリクエストに基づいて実行する(S720)。
S720の処理後又はS719がNO判定の場合、音声・LED制御回路220は、シンプルアクセス終了コードをセットする(S721)。そして、S721の処理後、音声・LED制御回路220は、音声制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、音声制御処理前の制御状態、音声制御処理後に実行する処理の制御状態など)時の処理に戻す。
[変形例2]
上記実施形態のランプ制御処理(図115A及び図115B参照)では、LEDデータ(LEDアニメーション)の再生方式に「NEXT」及び/又は「ODONLY」が指定されない場合の処理例を説明したが、本発明はこれに限定されない。変形例2では、LEDデータ(LEDアニメーション)の再生方式に「NEXT」及び/又は「ODONLY」が指定されている場合も考慮したランプ制御処理について説明する。また、変形例2では、再生チャンネルのみを使用する処理例を説明する。
なお、変形例2では、ランプ制御処理以外の処理は、上記実施形態と同様に実行することができ、この例のパチンコ遊技機の構成も、上記実施形態のそれと同様の構成にするできる。それゆえ、ここでは、ランプ制御処理についてのみ説明する。
図126A及び図126Bを参照して、副制御メイン処理(図92参照)中のS210で行う変形例2のランプ制御処理について説明する。なお、図126Aは、ホスト制御回路210により実行されるこの例のランプ制御処理の手順を示すフローチャートである。また、図126Bは、この例のランプ制御処理において音声・LED制御回路220により実行される処理の手順を示すフローチャートである。
(1)ホスト制御回路により実行されるランプ制御処理
ホスト制御回路210は、図126Aに示すように、図106のアニメーションリクエスト処理においてリクエストバッファに格納されたランプリクエストを音声・LED制御回路220に出力する(S731)。なお、この例においても、ホスト制御回路210は、LEDデータを用いた演出動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、ランプリクエストを出力する。
そして、S731の処理後、ホスト制御回路210は、この例のランプ制御処理を終了し、処理を副制御メイン処理(図92参照)のS211に移す。
(2)ランプ制御処理時に実行される音声・LED制御回路の処理
まず、図126Bに示すように、ホスト制御回路210から送信されたランプリクエストが音声・LED制御回路220に入力される(S741)。
次いで、音声・LED制御回路220は、ランプリクエストに基づいて、LEDアニメーションを実行する再生チャンネル(シーケンサ、レイヤ)を指定する(S742)。具体的には、音声・LED制御回路220は、ランプリクエストに基づいて、CGROM206から読み出すLEDアニメーション(各種LEDデータ)及びデータテーブル情報を指定し、該データテーブル情報を参照して、LEDアニメーションを実行する再生チャンネル(シーケンサ、レイヤ)などのデータを取得する。
次いで、音声・LED制御回路220は、処理対象(参照中)の再生チャンネルで指定されたデータテーブル情報に基づき、LEDアニメーションの再生方式に「NEXT」が指定されていないか否か、すなわち、入力されたランプリクエストがランプ点灯動作を即時実行するリクエストであるか否かを判別する(S743)。なお、ここでは図示しないが、S743〜後述のS745の処理はチャンネル数分だけ繰り返し実行される。
S743において、音声・LED制御回路220が、参照中の再生チャンネルのLEDアニメーションの再生方式に「NEXT」が指定されていないと判別した場合(S743がYES判定の場合)、音声・LED制御回路220は、現在、再生チャンネルの登録バッファに格納されている各種情報(データテーブル情報及びLEDデータ)を、今回のランプリクエスト受信時に取得した対応する各種情報で上書き更新する(S744)。
一方、S743において、音声・LED制御回路220が、参照中の再生チャンネルのLEDアニメーションの再生方式に「NEXT」が指定されていると判別した場合(S743がNO判定の場合)、音声・LED制御回路220は、現在、登録バッファに格納されている各種情報(データテーブル情報及びLEDデータ)の後に、今回のランプリクエスト受信時に取得した対応する各種情報を追加して格納(追加更新)する(S745)。
S744の処理後又はS745の処理後、音声・LED制御回路220は、各再生チャンネルの登録バッファの参照処理を行う(S746)。次いで、音声・LED制御回路220は、登録バッファに格納されたデータテーブル情報に含まれる制御部位の情報に基づいて、LEDデータをLEDドライバ280に送信する際に使用するSPIチャンネル(物理系統)を指定する(S747)。
次いで、音声・LED制御回路220は、所定のチャンネル内において、処理対象(参照中)のポートが制御対象(制御部位内)のポートであるか否かを判別する(S748)。なお、S748の判別処理は、登録バッファに格納されたデータテーブル情報に含まれる制御部位の情報に基づいて実行され、S748以降の処理はポート数分だけ繰り返し実行される。
S748において、音声・LED制御回路220が、参照中のポートが制御対象のポートでないと判別した場合(S748がNO判定の場合)、音声・LED制御回路220は、後述のS752の処理を行う。一方、S748において、音声・LED制御回路220が、参照中のポートが制御対象のポートであると判別した場合(S748がYES判定の場合)、音声・LED制御回路220は、データテーブル情報に基づき、処理対象の再生チャンネル(制御部位)において、再生方式に「ODONLY」が指定されているか否かを判別する(S749)。
S749において、音声・LED制御回路220が、処理対象(参照中)の再生チャンネルにおいて、再生方式に「ODONLY」が指定されていると判別した場合(S749がYES判定の場合)、音声・LED制御回路220は、チャンネルに設定された実行優先順位及び出力データの有無に基づいて、ポート情報(LEDデータ)の上書き処理を行う(S750)。
S750の処理では、例えば、音声・LED制御回路220は、処理対象のチャンネルが、現在、ポートにセットされているLEDデータに対応するチャンネルより実行優先順位が高く、且つ、参照中のポート(制御対象のポート)に出力されるLEDデータ(消灯データ以外のLEDデータ)がある場合には、該LEDデータを、現在、ポートにセットされているLEDデータ上に上書きする。一方、処理対象のチャンネルが、現在、ポートにセットされているLEDデータに対応するチャンネルより実行優先順位が高く、且つ、参照中のポートに出力されるLEDデータが無い場合(出力データが消灯データである場合)には、LEDデータの上書き処理を行わず、現在、ポートにセットされているLEDデータが維持される。なお、処理対象のチャンネルが、現在、ポートにセットされているLEDデータに対応するチャンネルより実行優先順位が低い場合には、参照中のポートに出力されるLEDデータの有無に関係なく、LEDデータの上書き処理は行われず、現在、ポートにセットされているLEDデータが維持される。
一方、S749において、音声・LED制御回路220が、処理対象(参照中)の再生チャンネルにおいて、再生方式に「ODONLY」が指定されていないと判別した場合(S749がNO判定の場合)、音声・LED制御回路220は、チャンネルに設定された実行優先順位に基づいて、ポート情報(LEDデータ)の上書き処理を行う(S751)。
S751の処理では、例えば、音声・LED制御回路220は、処理対象のチャンネルが、現在、ポートにセットされているLEDデータに対応するチャンネルより実行優先順位が高い場合には、該LEDデータを、現在、ポートにセットされているLEDデータ上に上書きする。なお、この際、出力データが透明定義のLEDデータ(消灯データ)である場合にも、LEDデータの上書き処理が行われる。一方、処理対象のチャンネルが、現在、ポートにセットされているLEDデータに対応するチャンネルより実行優先順位が低い場合には、LEDデータの上書き処理は行われず、現在、ポートにセットされているLEDデータが維持される。
S750或いはS751の処理後、又は、S748がNO判定の場合、音声・LED制御回路220は、上述したS748〜S751の処理が、参照中のポートの全ての再生チャンネル(8チャンネル分)に対して実行されたか否かを判別する(S752)。
S752において、音声・LED制御回路220が、S748〜S751の処理が全ての再生チャンネルに対して実行されていないと判別した場合(S752がNO判定の場合)、音声・LED制御回路220は、処理をS748に戻し、処理対象の再生チャンネルを変更してS748以降の処理を繰り返す。
一方、S752において、音声・LED制御回路220が、S748〜S751の処理が全ての再生チャンネルに対して実行されたと判別した場合(S752がYES判定の場合)、音声・LED制御回路220は、参照中のポートに対するポート直接指定データがランプリクエストに含まれているか否かを判別し、ポート直接指定データがランプリクエストに含まれている場合には、音声・LED制御回路220は、参照中のポートのLEDデータをポート直接指定データで上書きする(S753)。
次いで、音声・LED制御回路220は、上述したS748〜S753の処理が全てのポートに対して実行されたか否かを判別する(S754)。なお、ここでいう、「全てのポート」とは、図97に示すLED登録処理で設定された全てのポートを意味するが、本発明はこれに限定されない。「全てのポート」が、図97に示すLED登録処理で設定されたポートに関係なく、任意に物理的に設定可能な全てのポートであってもよいし、図97に示すLED登録処理で設定されたポートの中から選択された一部のポートであってもよい。
S754において、音声・LED制御回路220が、S748〜S753の処理が全てのポートに対して実行されていないと判別した場合(S754がNO判定の場合)、音声・LED制御回路220は、処理をS748に戻し、処理対象のポートを変更してS748以降の処理を繰り返す。一方、S754において、音声・LED制御回路220が、S748〜S753の処理が全てのポートに対して実行されたと判別した場合(S754がYES判定の場合)、音声・LED制御回路220は、ランプ制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、ランプ制御処理前の制御状態、ランプ制御処理後に実行する処理の制御状態など)時の処理に戻す。
[変形例3]
変形例3では、上記変形例2のランプ制御処理において、再生チャンネルだけでなく、拡張チャンネルも使用した場合の処理例を説明する。なお、変形例3では、ランプ制御処理以外の処理は、上記実施形態と同様に実行することができ、この例のパチンコ遊技機の構成も、上記実施形態のそれと同様の構成にするできる。それゆえ、ここでは、ランプ制御処理についてのみ説明する。
図127A及び図127Bを参照して、副制御メイン処理(図92参照)中のS210で行う変形例3のランプ制御処理について説明する。なお、図127Aは、ホスト制御回路210により実行されるこの例のランプ制御処理の手順を示すフローチャートである。また、図127Bは、この例のランプ制御処理において音声・LED制御回路220により実行される処理の手順を示すフローチャートである。
(1)ホスト制御回路により実行されるランプ制御処理
ホスト制御回路210は、図127Aに示すように、図106のアニメーションリクエスト処理においてリクエストバッファに格納されたランプリクエストを音声・LED制御回路220に出力する(S761)。なお、この例においても、ホスト制御回路210は、LEDデータを用いた演出動作を表示装置13による演出動作と同期させるために、演出制御のリクエスト生成から2フレーム経過した後、ランプリクエストを送信する。
そして、S761の処理後、ホスト制御回路210は、この例のランプ制御処理を終了し、処理を副制御メイン処理(図92参照)のS211に移す。
(2)ランプ制御処理時に実行される音声・LED制御回路の処理
まず、図127Bに示すように、ホスト制御回路210から送信されたランプリクエストが音声・LED制御回路220に入力される(S771)。
次いで、音声・LED制御回路220は、ランプリクエストに基づいて、LEDアニメーションを実行するチャンネル(シーケンサ、レイヤ)を指定する(S772)。なお、拡張チャンネルを使用する場合には、この処理において、音声・LED制御回路220は、該拡張チャンネル及びそれと同じチャンネルの再生チャンネルで使用するシーケンサーやレイヤを指定する。一方、拡張チャンネルを使用しない場合には、この処理において、音声・LED制御回路220は、再生チャンネルで使用するシーケンサーやレイヤを指定する。
次いで、音声・LED制御回路220は、処理対象(参照中)のチャンネルで指定されたデータテーブル情報に基づき、LEDアニメーションの再生方式に「NEXT」が指定されていないか否か、すなわち、入力されたランプリクエストがランプ点灯動作を即時実行するリクエストであるか否かを判別する(S773)。なお、ここでは図示しないが、S773〜後述のS775の処理はチャンネル数分だけ繰り返し実行される。
S773において、音声・LED制御回路220が、参照中のチャンネルのLEDアニメーションの再生方式に「NEXT」が指定されていないと判別した場合(S773がYES判定の場合)、音声・LED制御回路220は、現在、チャンネルの登録バッファに格納されている各種情報(データテーブル情報及びLEDデータ)を、今回のランプリクエスト受信時に取得した対応する各種情報で上書き更新する(S774)。
一方、S773において、音声・LED制御回路220が、参照中のチャンネルのLEDアニメーションの再生方式に「NEXT」が指定されていると判別した場合(S773がNO判定の場合)、音声・LED制御回路220は、現在、チャンネルの登録バッファに格納されている各種情報(データテーブル情報及びLEDデータ)の後に、今回のランプリクエスト受信時に取得した対応する各種情報を追加して格納(追加更新)する(S775)。
なお、拡張チャンネルを使用する場合には、S774又はS775の処理において、音声・LED制御回路220は、参照中のチャンネルの再生チャンネル及び拡張チャンネルの各登録バッファに対して各種情報(データテーブル情報及びLEDデータ)の上書き更新処理又は追加更新処理を行う。一方、拡張チャンネルを使用しない場合には、S774又はS775の処理において、音声・LED制御回路220は、参照中のチャンネルの再生チャンネルの登録バッファに対して各種情報(データテーブル情報及びLEDデータ)の上書き更新処理又は追加更新処理を行う。
S774の処理後又はS775の処理後、音声・LED制御回路220は、各ポートのデータ設定処理を行う(S776)。この処理により、制御対象の各ポートに合成されたLEDデータ(出力データ)が設定される。なお、各ポートのデータ設定処理の詳細については、後述の図128を参照しながら後で説明する。そして、S776の処理後、音声・LED制御回路220は、ランプ制御処理時の上述した一連の処理を終了し、処理を音声・LED制御回路220の所定のコントロール状態(例えば、待機状態、ランプ制御処理前の制御状態、ランプ制御処理後に実行する処理の制御状態など)時の処理に戻す。
(3)各ポートのデータ設定処理
次に、図128を参照して、この例のランプ制御処理時に実行される音声・LED制御回路の処理(図127B参照)中のS776で行う各ポートのデータ設定処理について説明する。なお、図128は、この例のランプ制御処理内において音声・LED制御回路220により実行される各ポートのデータ設定処理の手順を示すフローチャートである。
まず、音声・LED制御回路220は、各チャンネルの登録バッファの参照処理を行う(S781)。
次いで、音声・LED制御回路220は、処理対象(参照中)の所定のチャンネルの登録バッファに格納されたデータテーブル情報に基づいて、該所定のチャンネルで2つのシーケンサーを使用する(再生チャンネル及び拡張チャンネルを使用する)か否かを判別する(S782)。なお、ここでは図示しないが、S782〜後述のS784の一連の処理はチャンネル数分だけ繰り返し実行される。
S782において、音声・LED制御回路220が、所定のチャンネルで2つのシーケンサーを使用すると判別した場合(S782がYES判定の場合)、音声・LED制御回路220は、再生チャンネル及び拡張チャンネルの各登録バッファに格納されたデータテーブル情報に基づいて、各シーケンサーが制御する各制御部位で使用するSPIチャンネル(物理系統)を指定する(S783)。一方、S782において、音声・LED制御回路220が、所定のチャンネルで2つのシーケンサーを使用しないと判別した場合(S782がNO判定の場合)、音声・LED制御回路220は、再生チャンネルの登録バッファに格納されたデータテーブル情報に基づいて、再生チャンネル用のシーケンサーが制御する制御部位で使用するSPIチャンネル(物理系統)を指定する(S784)。
次いで、音声・LED制御回路220は、所定のチャンネル内において、処理対象(参照中)のポートが制御対象(再生チャンネル内)のポートであるか否かを判別する(S785)。なお、S785の判別処理は、再生チャンネルの登録バッファに格納されたデータテーブル情報に基づいて実行され、S785〜後述のS791の一連の処理はポート数分だけ繰り返し実行される。
S785において、音声・LED制御回路220が、参照中のポートが制御対象のポートでないと判別した場合(S785がNO判定の場合)、音声・LED制御回路220は、後述のS789の処理を行う。一方、S785において、音声・LED制御回路220が、参照中のポートが制御対象のポートであると判別した場合(S785がYES判定の場合)、音声・LED制御回路220は、データテーブル情報に基づき、処理対象(参照中)の再生チャンネル(制御部位)において、再生方式に「ODONLY」が指定されているか否かを判別する(S786)。
S786において、音声・LED制御回路220が、参照中の再生チャンネルにおいて、再生方式に「ODONLY」が指定されていると判別した場合(S786がYES判定の場合)、音声・LED制御回路220は、チャンネルの実行優先順位及び出力データの有無に基づいて、ポート情報(LEDデータ)の上書き処理を行う(S787)。なお、この処理では、上記変形例2のランプ制御処理(図126A及び図126B)中のS750と同様の処理が行われる。
一方、S786において、音声・LED制御回路220が、参照中の再生チャンネルにおいて、再生方式に「ODONLY」が指定されていないと判別した場合(S786がNO判定の場合)、音声・LED制御回路220は、チャンネルに設定された実行優先順位に基づいて、ポート情報(LEDデータ)の上書き処理を行う(S788)。なお、この処理では、上記変形例2のランプ制御処理(図126A及び図126B)中のS751と同様の処理が行われる。
S787或いはS788の処理後、又は、S788がNO判定の場合、音声・LED制御回路220は、上述したS785〜S788の処理が、参照中のポートの全ての再生チャンネル(8チャンネル分)に対して実行されたか否かを判別する(S789)。
S789において、音声・LED制御回路220が、S785〜S788の処理が全ての再生チャンネルに対して実行されていないと判別した場合(S789がNO判定の場合)、音声・LED制御回路220は、処理をS785に戻し、処理対象の再生チャンネルを変更してS785以降の処理を繰り返す。
一方、S789において、音声・LED制御回路220が、S785〜S788の処理が全ての再生チャンネルに対して実行されたと判別した場合(S789がYES判定の場合)、音声・LED制御回路220は、参照中のポートに対するポート直接指定データがランプリクエストに含まれているか否かを判別し、ポート直接指定データがランプリクエストに含まれている場合には、音声・LED制御回路220は、参照中のポートのLEDデータをポート直接指定データで上書きする(S790)。
次いで、音声・LED制御回路220は、上述したS785〜S790の処理が全てのポートに対して実行されたか否かを判別する(S791)。
S791において、音声・LED制御回路220が、S785〜S790の処理が全てのポートに対して実行されていないと判別した場合(S791がNO判定の場合)、音声・LED制御回路220は、処理をS785に戻し、処理対象のポートを変更してS785以降の処理を繰り返す。一方、S791において、音声・LED制御回路220が、S785〜S790の処理が全てのポートに対して実行されたと判別した場合(S791がYES判定の場合)、音声・LED制御回路220は、後述のS792の処理を行う。
なお、この例において、拡張チャンネルも使用する場合には、再生チャンネルに対して行った上記S785〜S791の処理と同様の処理を、拡張チャンネルに対しても同様に行う。この際、再生チャンネルに対する上記S785〜S791の処理と、拡張チャンネルに対する上記S785〜S791の処理とを並列処理で同時に行う。なお、この際、再生チャンネルに対する上記S785〜S791の処理は、実際には、再生チャンネルに設定されたシーケンサーにより実行され、拡張チャンネルに対する上記S785〜S791の処理は、拡張チャンネルに設定されたシーケンサーにより実行される。
S791がYES判定の場合、音声・LED制御回路220は、所定のチャンネルにおいて、2つのシーケンサー(再生チャンネル用シーケンサー及び拡張チャンネル用シーケンサー)を使用して上記S785〜S791の一連の処理を実行したか否かを判別する(S792)。なお、ここでは、図示しないが、S792〜後述のS794の一連の処理は、チャンネル数分繰り返して実行される。
S792において、音声・LED制御回路220が、2つのシーケンサーを使用して上記S785〜S791の一連の処理を実行したと判別した場合(S792がYES判定の場合)、音声・LED制御回路220の各シーケンサーは、対応する制御部位にクリアデータ(消灯データ)を設定(予約)する(S793)。一方、S792において、音声・LED制御回路220が、2つのシーケンサーを使用して上記S785〜S791の一連の処理を実行しなかったと判別した場合(S792がNO判定の場合)、音声・LED制御回路220は、再生チャンネルクリア機能を実行する(S794)。この処理により、再生チャンネルの制御部位にクリアデータ(消灯データ)が設定(予約)される。
そして、上述したS792〜S794の一連の処理が、全チャンネルにおいて実行された後、音声・LED制御回路220は、各ポートのデータ設定処理を終了する。
[変形例4]
上記実施形態では、SPIバスで接続された音声・LED制御回路220(マスタ)及び各LEDドライバ280(スレーブ)間において、音声・LED制御回路220から各LEDドライバ280に一方的に、LEDデータ及びデバイスアドレスデータを含むシリアル・データを送信し、シリアル・データに含まれるデバイスアドレスデータにより送信のLEDドライバ280を指定する構成を説明したが、本発明はこれに限定されない。
例えば、音声・LED制御回路220及びLEDドライバ間においてシリアル・データを送受信する際に、スレーブ・セレクト信号により送受信するLEDドライバを指定する構成にしてもよい。変形例4では、スレーブ・セレクト信号(SS信号)を用いて、シリアル・データ(LEDデータ等)の送信先となるLEDドライバを指定する構成例を説明する。
以下に、この例における音声・LED制御回路及びLEDドライバ間の接続構成、通信原理、及び、通信処理の手順について説明するが、この例のパチンコ遊技機では、音声・LED制御回路及びLEDドライバ間の通信形態以外の構成は、上記実施形態と同様に構成することができる。それゆえ、ここでは、音声・LED制御回路及びLEDドライバ間の通信形態(構成及び通信制御手法)についてのみ説明する。
[音声・LED制御回路及びLEDドライバ間の接続構成]
まず、図129を参照しながら、変形例4の音声・LED制御回路290及びLEDドライバ291間の接続構成を説明する。なお、図129は、この例の音声・LED制御回路290及びLEDドライバ291間の接続構成を示す図である。
この例においても、音声・LED制御回路290及びLEDドライバ291間は、SPIバスにより接続されるので、各物理系統(SPIチャンネル)において、シリアル・クロック(SCL)の信号配線と、シリアル・データ(SDO、SDI)の信号配線とが別配線で設けられる。そして、音声・LED制御回路290(マスタ)の各物理系統(SPIチャンネル)において、音声・LED制御回路290のシリアル・クロック信号の各出力端子(SCL1,SCL2)は、対応する複数のLEDドライバ291(スレーブ)のシリアル・クロック信号の入力端子(SCL)に並列接続される。また、音声・LED制御回路290のシリアル・データの各出力端子(SDO1,SDO2)は、対応するLEDドライバ291のシリアル・データの入力端子(SDI)に並列接続される。さらに、音声・LED制御回路290のシリアル・データの各入力端子(SDI1,SDI2)は、対応する複数のLEDドライバ291のシリアル・データの出力端子(SDO)に並列接続される。
さらに、この例では、図129に示すように、音声・LED制御回路290(マスタ)には、複数のスレーブ・セレクト端子(SS1,SS2,SS3)が設けられ、各LEDドライバ291(スレーブ)にもスレーブ・セレクト端子(SS)が設けられる。なお、各LEDドライバ291に設けられたスレーブ・セレクト端子(SS)は、例えば、図40で説明した上記実施形態のLEDドライバ280の端子群280d内に追加して設けられる。そして、音声・LED制御回路290の各スレーブ・セレクト端子は、対応するLEDドライバ291のスレーブ・セレクト端子(SS)に接続される。
[通信原理]
次に、音声・LED制御回路290(マスタ)及びLEDドライバ291(スレーブ)間におけるシリアル・データの通信原理を、図130を参照しながら説明する。なお、図130は、音声・LED制御回路290(マスタ)及びLEDドライバ291(スレーブ)間におけるシリアル・データの通信動作の様子を示す図である。
音声・LED制御回路290は、図130に示すように、バッファ(第1記憶手段)、シフト・レジスタ(第1入出力手段)及びシフト・クロック発生部を有し、各LEDドライバ291は、バッファ(第2記憶手段)及びシフト・レジスタ(第2入出力手段)を有する。なお、音声・LED制御回路290内のシフト・レジスタは、8ビットのシフト・レジスタで構成される。また、LEDドライバ291内のシフト・レジスタも、8ビットのシフト・レジスタで構成される。
音声・LED制御回路290(マスタ)及びLEDドライバ291(スレーブ)間におけるシリアル・データの通信動作において、音声・LED制御回路290内のシフト・レジスタの動作は、シフト・クロック発生部から入力されるシリアル・クロック信号に基づいて制御される。また、LEDドライバ291内のシフト・レジスタの動作もまた、音声・LED制御回路290内のシフト・クロック発生部から出力されるシリアル・クロック信号に基づいて制御される。なお、音声・LED制御回路290内のシフト・クロック発生部から出力されるシリアル・クロック信号は、シリアル・クロックの信号配線(音声・LED制御回路290のSCL端子(SCL1,SCL2)及びLEDドライバ291のSCL端子間の接続配線)を介して、LEDドライバ291に入力される。なお、この例では、8ビット単位でデータ通信が行われる。
音声・LED制御回路290(マスタ)からLEDドライバ291(スレーブ)へのシリアル・データの通信動作が開始されると、音声・LED制御回路290(マスタ)内のバッファから音声・LED制御回路290内のシフト・レジスタに送信データ(8ビット)が送信され、該送信データを構成する各ビットのデータ(M0〜M7)がシフト・レジスタ内の対応するレジスタに格納される。また、LEDドライバ291(スレーブ)内のバッファからLEDドライバ291内のシフト・レジスタに送信データ(8ビット)が送信され、該送信データを構成する各ビットのデータ(S0〜S7)がシフト・レジスタ内の対応するレジスタに格納される。
次いで、音声・LED制御回路290内のシフト・レジスタの先頭レジスタに格納された1ビットのデータM7が、シリアル・データの通信配線(音声・LED制御回路290のSDO端子(SDO1又はSDO2)及びLEDドライバ291のSDI端子間の接続配線)を介して、LEDドライバ291に送信される。また、この際、音声・LED制御回路290のシフト・レジスタ内に格納されたデータ(M0〜M6)が一つ先頭側のレジスタにシフトして格納される。
また、音声・LED制御回路290のデータM7の送信処理と同時に、LEDドライバ291内のシフト・レジスタの先頭レジスタに格納された1ビットのデータS7が、シリアル・データの通信配線(音声・LED制御回路290のSDI端子(SDI1又はSDI2)及びLEDドライバ291のSDO端子間の接続配線)を介して、音声・LED制御回路290に送信される。また、この際、LEDドライバ291のシフト・レジスタ内に格納されたデータ(S0〜S6)が一つ先頭側のレジスタにシフトして格納される。
次いで、音声・LED制御回路290からLEDドライバ291に送信されたデータM7は、LEDドライバ291のシフト・レジスタ内の最後尾レジスタに格納される。また、この際、LEDドライバ291から音声・LED制御回路290に送信されたデータS7は、音声・LED制御回路290のシフト・レジスタ内の最後尾レジスタに格納される。
上述した1ビットのデータ通信が終了した際の、音声・LED制御回路290内のシフト・レジスタのデータ格納状態、及び、LEDドライバ291内のシフト・レジスタのデータ格納状態を、図131に示す。図131に示すように、この例のデータ通信では、各シフト・レジスタの最後尾側のレジスタから順次データが入れ替わる。
そして、上述した1ビットのデータ通信が8回繰り返されると、音声・LED制御回路290のシフト・レジスタ内のデータと、LEDドライバ291のシフト・レジスタ内のデータとが互いに入れ替わり、8ビットのデータ通信が終了する。なお、8ビットのデータ通信が終了すると、音声・LED制御回路290のシフト・レジスタに格納された8ビットの受信データ(S0〜S7)は、音声・LED制御回路290内のバッファに送信され格納される。また、LEDドライバ291のシフト・レジスタに格納された8ビットの受信データ(M0〜M7)は、LEDドライバ291内のバッファに送信され格納される。
[音声・LED制御回路及びLEDドライバ間の通信処理]
次に、図132A及び図132Bを参照して、音声・LED制御回路290及びLEDドライバ291間で行われるこの例の通信処理について説明する。なお、図132Aは、音声・LED制御回路290により実行されるこの例の信号及びデータの送受信処理の手順を示すフローチャートである。また、図132Bは、この例の音声・LED制御回路290及びLEDドライバ291間の通信処理において、LEDドライバ291により実行される信号及びデータの送受信処理の手順を示すフローチャートである。
(1)音声・LED制御回路のシリアル・データ入出力処理
まず、音声・LED制御回路290は、図132Aに示すように、スレーブ・セレクタ信号(SS信号)を全LEDドライバ291に対して送信する(S801)。この際、スレーブ・セレクト信号(アドレス指定信号)で指定されたデバイスアドレスに対応するLEDドライバ291においてのみ、スレーブ・セレクト信号が受信される。
次いで、音声・LED制御回路290は、スレーブ・セレクト信号で指定したデバイスアドレスのLEDドライバ291との間で、シリアル・データの送受信処理を行う(S802)。この際、音声・LED制御回路290は、上記図130及び図131を用いて説明した通信原理に従って、シリアル・データを8ビット単位で送受信する。次いで、音声・LED制御回路290は、シリアル・データの送受信処理を完了する(S803)。
次いで、音声・LED制御回路290は、スレーブ・セレクト信号の送信を停止する(S804)。そして、S804の処理後、音声・LED制御回路290は、シリアル・データ入出力処理を終了する。
(2)LEDドライバのシリアル・データ入出力処理
まず、LEDドライバ291は、図132Bに示すように、スレーブ・セレクト信号を受信したか否かを判別する(S811)。この処理において、該LEDドライバ291がスレーブ・セレクト信号で指定されたデバイスアドレスに対応するLEDドライバ291である場合には、S811の判定処理の結果はYES判定となる。
S811において、LEDドライバ291が、スレーブ・セレクト信号を受信していないと判別した場合(S811がNO判定の場合)、LEDドライバ291は、後述のS814の処理を行う。一方、S811において、LEDドライバ291が、スレーブ・セレクト信号を受信したと判別した場合(S811がYES判定の場合)、LEDドライバ291は、動作状態を待機状態から起動状態に移行させる(S812)。
S812の処理後、LEDドライバ291は、音声・LED制御回路290との間で、シリアル・データの送受信処理を行う(S813)。この際、LEDドライバ291は、上記図130及び図131を用いて説明した通信原理に従って、シリアル・データを8ビット単位で送受信する。そして、LEDドライバ291は、シリアル・データの送受信処理を完了する。
S813の処理後又はS811がNO判定の場合、LEDドライバ291は、動作状態を待機状態に移行又は待機状態を維持する(S814)。そして、S814の処理後、LEDドライバ291は、シリアル・データ入出力処理を終了する。
この例では、上述のように、音声・LED制御回路290から送信されるスレーブ・セレクト信号により、特定のLEDドライバ291のみを指定して、該LEDドライバ291にデータを送信することができる。この場合、上記実施形態に比べて、音声・LED制御回路290及びLEDドライバ291間の信号配線の数は多くなるが、LEDドライバ291の処理負担を減らすことができ、音声・LED制御回路290の処理負荷と、LEDドライバ291の処理負荷とのバランスを調節することができる。
[変形例5]
上記実施形態では、各ポートに1つのLED281が接続された構成、すなわち、LED281がスタティックLEDである例(スタティック出力制御の例)を説明したが、本発明はこれに限定されない。各ポートに複数のLEDが接続された構成、すなわち、LEDがダイナミック制御されるLED(以下、ダイナミックLEDと称す)であってもよい。
変形例5では、LEDがダイナミックLEDである場合の構成例(ダイナミック出力制御の構成例)を、図133を参照しながら説明する。なお、図133は、LEDデータのダイナミック出力制御の一例を示す例である。図133に示す例では、一つのポート1に3つのLED(赤色LED、青色LED及び緑色LED)が接続されている例を示す。また、この例では、LEDデータ内の、再生時間(点灯時間)を「12」(約144msec)とし、赤色成分の輝度データ、緑色成分の輝度データ及び青色成分の輝度データのそれぞれを「0xFE」とする例を説明する。すなわち、この例では、LEDデータのデータ型(フォーマット)と、上記実施形態のそれと同様にする(図44参照)。
上記データ型のLEDデータがLEDドライバに入力されると、LEDドライバは、制御部位の情報(LEDの種別情報を含む)を参照して、LEDデータの中から接続されたLEDの種別に対応する輝度データに対応する駆動信号をポート1を介してLEDに出力する。それゆえ、赤色LEDには、LEDデータ内の赤色の輝度データ「0xFE」のみが出力され、赤色LEDは、赤色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。また、青色LEDには、LEDデータ内の青色の輝度データ「0xFE」のみが出力され、青色LEDは、青色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。さらに、緑色LEDには、LEDデータ内の緑色の輝度データ「0xFE」のみが出力され、緑色LEDは、緑色の輝度データ「0xFE」に対応する輝度で約144msec間点灯する。なお、この場合、赤色LED、青色LED及び緑色LEDの3つのLEDにより白色点灯が行われる。また、この例では、LEDをダイナミック制御するので、点灯期間が約144msecである場合、LEDドライバは、2msec間隔で赤色LED、緑色LED及び青色LEDをこの順に切り替えながら、輝度データ「0xFE」に対応する駆動信号を各LEDに出力し、この一連の駆動信号の切替動作が24回繰り替えされる。
上述のように、この例では、LEDデータのデータ型が上記実施形態のそれと同じになるので、上記実施形態のパチンコ遊技機1が備える全てのスタティックLEDをダイナミックLEDで置き換えてもよいし、一部のスタティックLEDをダイナミックLEDで置き換えてもよい。
この例では、上述のように、ダイナミックLEDに出力するLEDデータのデータ型(フォーマット)を上記実施形態におけるスタティックLEDのそれと同様にすることができる。この場合、LEDの出力制御手法が互いに異なる複数のLEDを同時に使用する場合であっても、同じデータ型のLEDデータを送信することができるので、LEDドライバが実行する出力制御の種別毎に、異なるデータ型のLEDデータを用意する必要がなくなる。また、この場合、LEDデータの作成処理及びLEDデータの出力処理を、LEDの出力制御の種別に関係なく、共通化することができる。それゆえ、LEDデータの出力制御手法が互いに異なる複数種のLEDを併用しても、再生チャンネルで使用されるLEDデータの合成(上書きや更新など)が容易となり、複雑なLED出力制御を容易に実行することができる。
さらに、この例及び上記実施形態では、LEDの出力制御の種別に関係なく、LEDデータのデータ型が同じであるので、LEDドライバで制御する制御部位のLEDの個数に関係なく、各LEDデータの合成処理が容易となり、より複雑なLED制御を実施することが可能となる。すなわち、この例では、LEDを用いた演出制御の選択肢を増やすことができ、より高度な演出制御を実現することができる。
[変形例6]
変形例6では、役物群30内の各可動役物を駆動するモータ272の励磁状態(励磁継続時間等)を検知して、該検知結果に基づいて、エラー検知を行う機能をさらに備えたパチンコ遊技機の構成例についで説明する。なお、変形例6では、モータ272の励磁状態検知機能以外の構成は、上記実施形態と同様に構成することができる。それゆえ、ここでは、モータ272の励磁状態の検知機能を実現するための構成及び処理についてのみ説明する。
(1)モータの励磁状態検知の構成例
まず、モータ272の励磁状態の検知機能の構成例を、図134を参照しながら説明する。図134は、変形例6におけるモータ272の励磁状態の検知機能部の概略構成図である。なお、この例では、モータドライバ271に、4つのモータ272が接続されている例を説明する。
この例におけるモータ272の励磁状態の検知機能部275(以下、励磁状態検知部275という)は、図134に示すように、3つのOR回路(第1OR回路276、第2OR回路277及び第3OR回路278)を含む論理回路により構成される。
励磁状態検知部275内の第1OR回路276の一方の入力端子は、モータドライバ271の4つの出力端子のうち、出力端子OUT0に接続され、第1OR回路276の他方の入力端子は、モータドライバ271の出力端子OUT1に接続される。また、第2OR回路277の一方の入力端子は、モータドライバ271の出力端子OUT3に接続され、第2OR回路277の他方の入力端子は、モータドライバ271の出力端子OUT4に接続される。
励磁状態検知部275内の第3OR回路278の一方の入力端子は、第1OR回路276の出力端子に接続され、第3OR回路278の他方の入力端子は、第2OR回路277の出力端子に接続される。そして、第3OR回路278の出力端子は、モータドライバ271に設けられた励磁状態検知用の所定の入力端子Pに接続される。
図134に示す構成の励磁状態検知部275(励磁検知手段)を備えるパチンコ遊技機において、モータドライバ271から4つのモータ272の少なくとも1つに励磁データが出力されていると、励磁状態検知部275内の第3OR回路278からは、励磁検知信号(判別結果信号)としてデータ「1」がモータドライバ271に出力される。一方、モータドライバ271から4つのモータ272のいずれにも励磁データが出力されていない場合には、励磁状態検知部275内の第3OR回路278からは、励磁検知信号としてデータ「0」がモータドライバ271に出力される。
この例では、ホスト制御回路210は、モータドライバ271に入力された励磁検知信号(「1」又は「0」)に基づいて、4つのモータ272の少なくとも1つが励磁状態であるか否かを判別する。そして、ホスト制御回路210は、モータ272が連続して励磁されている時間(励磁検知信号「1」が連続して検知されている時間)をカウントし、その連続励磁時間が所定値以上になれば、全てのモータ272の駆動を停止する。なお、ここでいう、「全てのモータ272」とは、モータドライバ271に接続された全てのモータ272を意味するが、本発明はこれに限定されず、可動役物を駆動させる全モータであってもよいし、複数のモータドライバ271に接続された複数のモータ272であってもよい。
なお、励磁状態検知部275の構成は、図134に示す例に限定されず、複数のモータ272の少なくとも1つが励磁状態であるか否かを判別することができる構成であれば任意の構成にすることができる。例えば、励磁状態検知部275に含まれるOR回路の個数及びOR回路間の接続形態は、例えばモータドライバ271に接続されるモータ272の個数に応じて適宜変更することができる。また、例えば、複数のモータ272のうち、稼働率の高い一部のモータ272の励磁状態を判別するような構成にしてもよい。この場合には、励磁状態検知部275は、モータドライバ271に設けられた励磁データの複数の出力端子のうち、監視対象となる稼働率の高い一部のモータ272に対応する出力端子のみに接続される。また、複数のモータ272のうち、監視対象となる一部のモータ272の励磁状態を判別する構成では、稼働率に関係なく任意に一部のモータ272を選択し、該選択された一部のモータ272の励磁状態を監視するようにしてもよい。
(2)役物制御処理
次に、図135を参照して、ホスト制御回路210により実行されるこの例の役物制御処理についてより詳細に説明する。なお、図135は、この例の役物制御処理の手順を示すフローチャートである。
まず、ホスト制御回路210は、I2Cコントローラ261のリセット処理中であるか否かを判別する(S821)。
S821において、ホスト制御回路210が、I2Cコントローラ261のリセット処理中であると判別した場合(S821がYES判定の場合)、ホスト制御回路210は、役物制御処理を終了する。一方、S821において、ホスト制御回路210が、I2Cコントローラ261のリセット処理中でないと判別した場合(S821がNO判定の場合)、ホスト制御回路210は、全てのモータ272が初期位置にあるか否かを判別する(S822)。
S822において、ホスト制御回路210が、全てのモータ272が初期位置にあると判別した場合(S822がYES判定の場合)、ホスト制御回路210は、ホスト制御回路210向けの役物リクエストに基づいて、各モータドライバ271(モータ272)に励磁データを出力する(S823)。これにより、可動役物を用いた演出動作(モータ272の駆動動作)が開始される。次いで、ホスト制御回路210は、可動役物を用いた演出動作(モータ272の駆動動作)中にエラーが発生したか否かを判別する(S824)。
S824において、ホスト制御回路210が、エラーが発生したと判別した場合(S824がYES判定の場合)、ホスト制御回路210は、後述のS830の処理を行う。一方、S824において、ホスト制御回路210が、エラーが発生していないと判別した場合(S824がNO判定の場合)、ホスト制御回路210は、モータ272の励磁状態の継続時間(連続励磁時間)を計測する(S825)。この処理では、ホスト制御回路210は、励磁状態検知部275内の第3OR回路278からモータドライバ271に入力される励磁検知信号に基づいて、モータ272の連続励磁時間を計測する。
S825の処理後、ホスト制御回路210は、モータ272の励磁状態の継続時間(連続励磁時間)が所定時間以上であるか否かを判別する(S826)。
S826において、ホスト制御回路210が、モータ272の連続励磁時間が所定時間以上であると判別した場合(S826がYES判定の場合)、ホスト制御回路210は、後述のS830の処理を行う。一方、S826において、ホスト制御回路210が、モータ272の連続励磁時間が所定時間以上でないと判別した場合(S826がNO判定の場合)、ホスト制御回路210は、モータ272の励磁中であるか否かを判別する(S827)。
S827において、ホスト制御回路210が、モータ272の励磁中であると判別した場合(S827がYES判定の場合)、ホスト制御回路210は、処理をS824に戻し、S824以降の処理を行う。一方、S827において、ホスト制御回路210が、モータ272の励磁中でないと判別した場合(S827がNO判定の場合)、ホスト制御回路210は、役物制御処理を終了する。
ここで、再度、S822の処理に戻って、S822において、ホスト制御回路210が、1個以上のモータ272が初期位置にないと判別した場合(S822がNO判定の場合)、ホスト制御回路210は、可動役物を初期位置に移動させる(戻す)ための励磁データをモータ272に出力する(S828)。次いで、ホスト制御回路210は、可動役物を初期位置に移動させる動作(モータ272の駆動動作)においてエラーが発生したか否かを判別する(S829)。
S829において、ホスト制御回路210が、エラーが発生したと判別した場合(S829がYES判定の場合)、ホスト制御回路210は、後述のS830の処理を行う。一方、S829において、ホスト制御回路210が、エラーが発生していないと判別した場合(S829がNO判定の場合)、ホスト制御回路210は、役物制御処理を終了する。
S824、S826又はS829がYES判定の場合、ホスト制御回路210は、全てのモータ272の駆動動作を停止する(S830)。具体的には、ホスト制御回路210は、全てのモータ272の励磁を開放する。そして、S830の処理後、ホスト制御回路210は、役物制御処理を終了する。
なお、S830の処理では、ホスト制御回路210は、さらに、表示装置13を制御して、可動役物の駆動エラーが発生した旨の情報を表示画面に表示させる。ただし、このエラー表示は、電源をオフするまで解除されないようにする。
上述のように、この例では、モータ272の連続励磁時間が所定時間以上になると、全てのモータ272の駆動動作が停止される。このモータ272の駆動動作の停止処理(モータ272の保護処理)を実行するか否かの判別するためのモータ272の連続励磁時間の閾値は、例えば、可動役物による演出内容に応じて任意に設定することができる。なお、上述したモータ272の励磁状態(連続励磁時間)の検知処理及びその検知結果に基づくモータ272の保護処理は、上記実施形態で行わる役物制御処理(図116参照)の追加処理として行われてもよいし、上記実施形態の役物制御処理(図116参照)中のS518以降の処理を、図135に示すフローチャートの処理で置き換えてもよい。
なお、役物リクエストに基づいて、ホスト制御回路210からモータ272(モータドライバ271)に出力される励磁データは、可動役物の一つの所定動作(動作パターン)に対応する励磁データで構成される場合もあるが、複数の所定動作(動作パターン)にそれぞれ対応する複数の励磁データで構成される場合もある。
後者の場合には、役物リクエストに基づいて、ホスト制御回路210からモータ272(モータドライバ271)に複数の励磁データが所定の順序で出力される。そして、この場合には、この例の役物制御処理において、図135中のS824〜S827の処理を励磁データ毎(役物の一つの動作毎)に繰り返す。それゆえ、例えば、可動役物の一連の駆動動作の中で、途中の所定動作に対応する励磁データの出力動作において、モータ272の連続励磁時間が所定時間以上になる(S826がYES判定になる)と、モータ272の駆動動作がその時点で停止され、その後に出力予定の動作毎の励磁データの出力処理も停止される。
(3)この例の構成により得られる各種効果
上述のように、この例では、モータドライバ271から少なくとも一つモータ272に出力される励磁データ(電圧信号)の出力状態(モータ272の励磁状態)を励磁状態検知部275で検知し、該検知結果に基づいて、モータ272の連続励磁時間(可動役物の連続駆動時間)を計測する。そして、計測されたモータ272の連続励磁時間(可動役物の連続駆動時間)に基づいて、全てのモータ272を停止(励磁開放)するか否かを判別する。
このようなモータ272の励磁状態の検知機能を設けることにより、例えば、モータ272に対して過剰に励磁データが出力されている場合や、意図しないモータ励磁が実行されている場合などを検知することができる。その結果、可動役物の動作を保証することができるとともに、モータ272の故障を抑制することができる。
また、可動役物の一つの動作毎にモータ272の励磁状態の検知(管理)した場合には、演出動作の区切りよいタイミングでモータ272の駆動を停止することができるので、演出内容に合わせたモータ272の停止処理を行うことができる。
さらに、この例では、モータ272の励磁状態において異常を検知した場合、電源がオフされるまで、表示装置13の表示画面でエラー表示が継続される。それゆえ、この場合には、電源をオフさせてモータ272を強制的に励磁開放させる処理を促すことができる。
[変形例7]
上記実施形態では、制御実行周期が約33msecであるホスト制御回路210で主に制御される可動役物(第1剣役物31及び第2剣役物32)と、制御実行周期が約12msecである音声・LED制御回路220で制御される可動役物(シャッタ役物33)とを別個に設ける例を説明したが、本発明はこれに限定されない。例えば、一つの可動役物が複数の可動部を有し、複数の可動部の中に、長い制御実行周期で制御される可動部と、短い制御実行周期で制御される可動部とが含まれていてもよい。
変形例7では、そのような構成の可動役物の一例として、上記実施形態で説明した第1剣役物31の内部に、シャッタ役物33を設けた構成例(第1剣役物31とシャッタ役物33とを一体的に設けた構成例)を、図136及び図137を参照しながら説明する。図136は、変形例7で用いられる第1剣役物300の概略構成図であり、図137は、変形例7において役物制御を実行する際の制御フローを示す図である。
なお、この例においても、役物群には、上記実施形態と同様に、第1剣役物300以外に、第2剣役物32及びシャッタ役物33が含まれる。なお、この例における第2剣役物32及びシャッタ役物33の構成及びその制御手法は、上記実施形態と同様である。また、第1剣役物300以外の構成は上記実施形態と同様に構成する。それゆえ、以下では、第1剣役物300の構成及び制御手法のみを説明し、その他の構成についての説明は省略する。また、以下では、第1剣役物300以外の構成に対しては、上記実施形態の構成と同じ符号を付して説明する。
(1)第1剣役物の構成
第1剣役物300は、図136に示すように、剣の形を模した第1剣状部材301(第1の可動体)と、表面形状が長方形である第1パネル部材302a及び第2パネル部材302bを有するシャッタ役物部302(第2の可動体)とを備える。なお、この例では、シャッタ役物部302は、第1剣状部材301の鍔部に設けられるが、シャッタ役物部302の構成は、上記実施形態のシャッタ役物33と同様である。
また、第1剣役物300は、図136には示さないが、上記実施形態と同様に、第1剣状部材301を回転駆動するための剣回転機構部と、第1パネル部材30a及び第2パネル部材302bを同時に回転駆動するためのシャッタ回転機構部とを備える。
なお、剣回転機構部は、上記実施形態の第1回転機構部31b(図4参照)と同様に構成され、第1剣状部材301の剣先部とは反対側の端部(柄部)に取り付けられる。そして、第1剣役物300を用いた演出が行われる場合には、剣回転機構部は、上記実施形態と同様に、内部に含まれるモータを駆動して、剣回転機構部が取り付けられた第1剣状部材301の柄部を中心にして、第1剣状部材301を逆回転方向又は正回転方向に回転駆動する。
一方、シャッタ回転機構部は、上記実施形態の第3回転機構部33c(図68参照)と同様に構成され、各パネル部材の一方(図136では右側)の短辺部に取り付けられる。そして、第1剣役物300を用いた演出が行われる場合には、シャッタ回転機構部は、上記実施形態と同様に、内部に含まれるモータを駆動して、第1パネル部材302a及び第2パネル部材302bを同時に、一方の回転方向又はその逆の回転方向に回転駆動(開閉駆動)する。
さらに、第1剣役物300は、図136には示さないが、その内部であり、且つ、シャッタ役物部302の裏面側には、複数のLEDが設けられ、シャッタ役物部302を用いた演出において、各パネル部材(シャッタ)が開閉駆動されると、LEDからの光が第1剣役物300のシャッタ役物部302の領域(鍔部)から外部に射出されたり、遮蔽されたりする。
また、この例では、図136には示さないが、第1剣役物300(第1剣状部材301)が初期位置に存在するか否かを検出するための検知装置(例えばフォトセンサ等)は、第1剣役物300の外部に設けられるが、シャッタ役物部302(第1パネル部材302a及び第2パネル部材302b)が初期位置に存在するか否かを検出するための検知装置は、第1剣役物300の内部に設けられる。
(2)第1剣役物の制御フロー
この例において、第1剣役物300を用いた演出が行われる場合、第1剣状部材301を初期位置から表示装置13の表示領域13a(表示画面)の前面まで回転移動させる動作パターンの動作、及び、その逆の動作パターンの動作は、制御実行周期の長い(約33msec)、ホスト制御回路210により制御される。さらに、第1剣役物300を用いた演出において、上記実施形態で説明したスペシャル演出Hのように、第1剣状部材301を揺動動作(図67A参照)させる場合には、その揺動動作は、制御実行周期の短い(約12msec)、音声・LED制御回路220により制御される。
また、第1剣役物300を用いた演出において、シャッタ役物部302の回転駆動演出(上述したシャッタ開閉演出又はシャッタ揺動演出)を実行する場合には、その演出動作は、制御実行周期の短い(約12msec)、音声・LED制御回路220により制御される。
それゆえ、この例における第1剣役物300の演出制御処理では、図137に示すように、第1剣役物300には、ホスト制御回路210及び音声・LED制御回路220の両方から励磁データが入力される。そして、ホスト制御回路210から入力された励磁データは、第1剣状部材301を回転駆動する剣回転機構部内のモータに供給され、音声・LED制御回路220から入力された励磁データは、主に、シャッタ役物部302を回転駆動するシャッタ回転機構部内のモータに供給される。
なお、上記実施形態で説明したスペシャル演出Hのように、第1剣状部材301を揺動動作させる動作パターン(図67A参照)を含む演出では、第1剣状部材301を初期位置から表示装置13の表示領域13a(表示画面)の前面まで回転移動させる動作パターンの演出期間、及び、その逆の動作パターンの演出期間では、ホスト制御回路210から剣回転機構部内のモータに励磁データが入力され、第1剣状部材301を揺動動作させる動作パターンの演出期間では、音声・LED制御回路220から剣回転機構部内のモータに励磁データが入力される。
上述のように、この例では、複数の可動部(第1剣状部材301及びシャッタ役物部302)が含まれる可動役物(第1剣役物300)の演出制御において、各可動部の演出動作の制御は、可動部の構造や可動部により実行される演出動作内容に基づいて、制御実行周期の互いに異なる複数の制御回路から適切な制御実行周期の制御回路を用いて実行される。すなわち、複数の可動部が含まれる可動役物の演出制御においても、上記実施形態と同様に、細かな動作制御を必要とする可動部、及び、細かな動作制御を必要としない可動部のそれぞれに対して個別に、適切なスペックを有する制御回路により制御することができる。
それゆえ、この例の役物制御手法においても、演出のクオリティを保つことができるとともに、ホスト制御回路210の制御負担の軽減させることができる。また、この例のような構成の可動役物を用いた場合、細かな動作制御を必要とされる可動部と、細かな動作制御を必要としない可動部とを、別個の可動役物として設ける必要もなくなるので、設置する可動役物の点数を減らすことができ、コストダウンも図ることができる。
[変形例8]
上記実施形態では、可動役物の初期位置復帰処理(図118のS546)において、可動役物の種別に関係なく、同時に複数の可動役物を初期位置に戻す処理例を説明したが、本発明はこれに限定されない。
例えば、上記実施形態のパチンコ遊技機1では、上述した剣役物を用いたスペシャル演出Hのように、第1剣役物31及び第2剣役物32の剣先部どうしを接近させた状態で、第1剣役物31及び第2剣役物32が互いにつばぜり合いを行うような演出動作(揺動動作)が行われる(図67A参照)。このような第1剣役物31及び第2剣役物32が互いに干渉する演出動作では、第1剣役物31の剣先部の移動経路の一部が第2剣役物32の剣先部の移動経路の一部と重なるので、一方の剣役物が故障して停止してしまった場合、他方の剣役物の移動が一方の剣役物に阻害されてエラーが発生する可能性がある。それゆえ、本発明では、このような場合を考慮して、互いに干渉する演出動作を実行し得る複数の可動役物において同時にエラーが発生している場合には、各可動役物を異なるタイミングで順次、初期位置に戻す処理を行ってもよい。
変形例8では、その一例として、第1剣役物31及び第2剣役物32が同時にエラー状態にある場合に、第1剣役物31を初期位置に戻す処理と、第2剣役物32を初期位置に戻す処理とを互いに異なるタイミングで行う可動役物の初期位置復帰処理例を説明する。
ここで、図138を参照して、ホスト制御回路210により実行される第1剣役物31及び第2剣役物32に対するこの例の初期位置復帰処理についてより詳細に説明する。図138は、この例の初期位置復帰処理の手順を示すフローチャートである。なお、この例の初期位置復帰処理は、上記実施形態の図118に示す初期位置復旧カウンタ更新処理中のS546で実行される。また、この例において、シャッタ役物33を初期位置に戻す処理は、上記実施形態と同様であるので、ここでは、シャッタ役物33の初期位置復帰処理の説明は省略する。それゆえ、図138に示すこの例の初期位置復帰処理のフローチャートにおいても、シャッタ役物33の初期位置復帰処理の図示を省略する。
また、この例では、初期位置復旧カウンタの値に応じて、第1剣役物31を初期位置に戻すタイミングと、第2剣役物32を初期位置に戻すタイミングとを互いに異ならせる処理例を説明する。具体的には、初期位置復旧カウンタの値が偶数である場合に、第1剣役物31を初期位置に戻す処理を行い、初期位置復旧カウンタの値が奇数である場合に、第2剣役物32を初期位置に戻す処理を行う例を説明する。ただし、本発明はこれに限定されず、初期位置復旧カウンタの値が奇数である場合に、第1剣役物31を初期位置に戻す処理を行い、初期位置復旧カウンタの値が偶数である場合に、第2剣役物32を初期位置に戻す処理を行うような構成にしてもよい。
まず、ホスト制御回路210は、互いに干渉する演出動作を実行し得る複数の可動役物において、複数のエラー状態が発生しているか否かを判別する(S851)。具体的には、ホスト制御回路210は、第1剣役物31及び第2剣役物32の両方において、エラー状態が発生しているか否かを判別する。
S851において、ホスト制御回路210が、複数のエラー状態が発生していないと判別した場合(S851がNO判定の場合)、ホスト制御回路210は、後述のS855の処理を行う。一方、S851において、ホスト制御回路210が、複数のエラー状態が発生していると判別した場合(S851がYES判定の場合)、ホスト制御回路210は、初期位置復旧カウンタの値が偶数であるか否かを判別する(S852)。
S852において、ホスト制御回路210が、初期位置復旧カウンタの値が偶数であると判別した場合(S852がYES判定の場合)、ホスト制御回路210は、第1剣役物31の初期位置復帰処理を行う(S583)。この処理では、ホスト制御回路210は、第1剣役物31を初期位置に戻す処理(復旧処理)を行う。そして、S583の処理後、ホスト制御回路210は、この例の初期位置復帰処理を終了し、処理を初期位置復旧カウンタ更新処理(図118参照)中のS547に移す。
一方、S852において、ホスト制御回路210が、初期位置復旧カウンタの値が偶数でないと判別した場合(S852がNO判定の場合)、ホスト制御回路210は、第2剣役物32の初期位置復帰処理を行う(S584)。この処理では、ホスト制御回路210は、第2剣役物32を初期位置に戻す処理(復旧処理)を行う。そして、S584の処理後、ホスト制御回路210は、この例の初期位置復帰処理を終了し、処理を初期位置復旧カウンタ更新処理(図118参照)中のS547に移す。
ここで、再度、S851の処理に戻って、S851がNO判定の場合、ホスト制御回路210は、エラー対象の可動役物の初期位置復帰処理を行う(S585)。この処理では、ホスト制御回路210は、エラー対象の可動役物(第1剣役物31及び第2剣役物32の一方)を初期位置に戻す処理(復旧処理)を行う。そして、S585の処理後、ホスト制御回路210は、この例の初期位置復帰処理を終了し、処理を初期位置復旧カウンタ更新処理(図118参照)中のS547に移す。
上述のように、この例では、互いに干渉する演出動作を実行し得る2つの可動役物を備えたパチンコ遊技機において、一方の可動役物にのみエラーが発生し、これにより、該2つの可動役物に同時にエラーが発生した場合(例えば、本来エラーが発生しない他方の可動役物が、エラーが発生した一方の可動役物により移動が阻害されて停止した状況が発生した場合)、一方の可動役物に対して復旧処理(初期位置復帰処理)を行うタイミング(特別図柄の変動表示期間)と、他方の可動役物のそれとを異ならせる。それゆえ、この例の初期位置復帰処理を採用することにより、上述のような状況が発生しても、可動役物のエラーを確実に解消することができる。
[変形例9]
上記実施形態では、例えば図72及び図73に示すように、剣役物の励磁データの動作パターン毎に規定される停止後励磁時間を剣役物の動作履歴に関係なく一定とする例を説明したが、本発明はこれに限定されず、剣役物の動作履歴に応じて変化させてもよい。変形例9では、その一例として、剣役物を初期位置から表示装置13の表示領域13a(表示画面)の前面まで回転移動させる動作パターン(例えば図72及び図73中の動作パターン1)において設定される停止後励磁時間を、剣役物の直近の演出動作回数に応じて変化させる例を説明する。
図139に、剣役物を初期位置から表示装置13の表示領域13aの前面まで回転移動させる動作パターン(例えば図72及び図73中の動作パターン1)において設定される停止後励磁時間と、直近の10回のゲーム期間(現遊技の直前において、特別図柄の変動表示が10回実行された遊技期間:以下、単に「直近10回の遊技期間」という)における剣役物の動作回数との関係の一例を示す。この例では、直近10回の遊技期間において、剣役物の動作回数が1回以下である場合には停止後励磁時間に「4」(124msec)がセットされ、剣役物の動作回数が2回〜4回である場合には停止後励磁時間に「3」(60msec)がセットされ、剣役物の動作回数が5回以上である場合には停止後励磁時間に「2」(28msec)がセットされる。
すなわち、この例では、直近10回の遊技期間において、剣役物の動作頻度が高いほど(剣役物が劣化する可能性が高くなるほど)、停止後励磁時間を短くする。ただし、本発明はこの例に限定されず、停止後励磁時間と、剣役物の直近の動作履歴との関係は、例えば演出内容、剣役物の構成(例えば重量、モータの特性及び耐久性等)に応じて適宜設定することができる。
なお、ここでは、例えば図72及び図73中の動作パターン1の停止後励磁時間を剣役物の動作履歴に基づいて変化させる例を説明したが、本発明はこれに限定されない。例えば、例えば図72及び図73中の動作パターン2〜10の各動作パターンに設定された停止後励磁時間をそれぞれ、剣役物の動作履歴に基づいて適宜変化させてもよい。また、シャッタ役物の励磁データにおいて、動作パターン毎に設定された停止後励磁時間も、シャッタ役物の動作履歴に基づいて適宜変更してもよい。
さらに、この例では、可動役物の動作履歴の情報として、可動役物の動作回数を用いる例を説明したが、本発明はこれに限定されない。可動役物の動作履歴の情報としては、動作回数以外では、例えば、可動役物の制御時間(励磁時間)、制御内容(演出内容)などの情報を用いてもよいし、これらの情報の組合せを用いてもよい。
上述した可動役物の動作履歴に関する情報(制御履歴情報)は、ホスト制御回路210の制御により、サブワークRAM210a(記憶手段)に記憶され、特別図柄の変動表示毎に更新される。そして、ホスト制御回路210は、励磁時間監視処理(図121参照)内において、S572の判定処理の前に、可動役物の動作履歴に関する情報、及び、図139に示すようなデータテーブルを参照して、適切な停止後励磁時間を決定する。
この例のように、励磁データの動作パターン毎に設定された停止後励磁時間を、可動役物の動作履歴(例えば、動作開始、励磁時間、演出内容等)に応じて適宜変更することにより、より適切に、可動役物の励磁監視時間の閾値を設定することができる。この結果、この例では、可動役物の故障率をさらに低減することができる。
[変形例10]
上記実施形態及び上記各種変形例のパチンコ遊技機では、役物リクエストをホスト制御回路210で生成し、該役物リクエストに基づいて、ホスト制御回路210及び/又は音声・LED制御回路220が可動役物の演出動作を制御する構成例を説明したが、本発明はこれに限定されない。
例えば、音声・LED制御回路220より長い制御実行周期を有する可動役物専用の制御回路を別途設け、ホスト制御回路210で生成された役物リクエストに基づいて、可動役物専用の制御回路及び/又は音声・LED制御回路220が可動役物の演出動作を制御するような構成にしてもよい。この場合、ホスト制御回路210により直接、可動役物の演出動作を制御は行われない。このような構成にしても、上記実施形態と同様の効果が得られる。なお、可動役物専用の制御回路を設ける場合、可動役物専用の制御回路の制御実行周期は、ホスト制御回路210の制御実行周期と同じであってもよいし、ホスト制御回路210の制御実行周期と異なっていてもよい。
[変形例11]
上記実施形態及び上記各種変形例では、可動役物の初期位置復帰処理(図118に示す初期位置復旧カウンタ更新処理中のS546参照)を特別図柄の変動表示開始時(変動開始コマンド受信時)に実行可能とする構成例を説明したが、本発明はこれに限定されない。
可動役物の初期位置復帰処理は、特別図柄の変動表示(可変表示)の発生間隔で実行可能なタイミングであり、かつ、可動役物による演出が実行されていないタイミングであれば、任意のタイミングで実行することができる。例えば、特別図柄の変動表示が終了した際に、可動役物の初期位置復帰処理を実行可能にするような構成にしてもよく、この場合でも、上記実施形態と同様の効果(不必要なエラーが発生しない)が得られる。
また、上記実施形態及び上記各種変形例では、可動役物の初期位置復帰処理を、1回の特別図柄の変動表示期間において1回実行可能な構成例を説明したが、本発明はこれに限定されない。例えば、可動役物の初期位置復帰処理を、1回の特別図柄の変動表示期間において、特定の複数回数、実行可能な構成にしてもよい。
また、この場合、特定の複数回数の初期位置復帰処理の実行期間において、初期位置復帰処理の実行毎に可動役物が初期位置に復帰したか否かを判定してもよいし、特定の複数回数の初期位置復帰処理の実行終了後に、可動役物が初期位置に復帰したか否かを判定してもよい。なお、前者の判定処理を採用した場合、初期位置復帰処理を特定の複数回数実行する前に可動役物が初期位置に復帰したと判定されたときには、その時点で、初期位置復帰処理を終了する。
[変形例12]
上記実施形態の可動役物の励磁監視処理に基づくエラー検知機能では、各動作パターンの動作終了後に継続してモータが励磁される時間(励磁監視時間)を監視する例を説明したが、本発明はこれに限定されない。このエラー検知機能において用いる、モータの励磁状態を示すパラメータとしては、モータの励磁状態を示すパラメータであれば、任意のパラメータを用いることができる。例えば、上述した励磁監視時間以外では、励磁動作時の電流値、電圧値、電力値等をモータの励磁状態を示すパラメータとして用いてもよいし、これらのパラメータを組み合わせて用いてもよい。
可動役物の励磁監視処理に基づくエラー検知機能において、モータの励磁状態を示すパラメータとして励磁動作時の電流値、電圧値又は電力値を用いた場合、これらのパラメータに対応する所定の閾値(設定値)が、励磁データの動作パターン毎に設定される。この場合、例えば、動作パターンの内容(例えば、強励磁、弱励磁等)やモータの特性、耐久性等を考慮して、これらのパラメータの閾値を設定することができる。
そして、この例における可動役物の励磁監視処理に基づくエラー検知機能では、例えば、励磁動作時の電流値、電圧値又は電力値が対応する閾値を超えた場合にエラーが発生したと判定される。この際のエラー時処理としては、上記実施形態と同様に、モータを停止(電力供給を停止)してもよいし、電流値、電圧値又は電力値を低下させる(調整する)処理を行ってもよい。
また、この例における可動役物の励磁監視処理に基づくエラー検知機能において、モータの励磁状態を示すパラメータとして励磁動作時の電流値、電圧値又は電力値を用いた場合、上記変形例9と同様に、ホスト制御回路210は、役物制御処理内で、これらのパラメータの閾値を、可動役物の動作履歴に関する情報に基づいて適宜変更してもよい。
[その他の各種変形例]
上記実施形態及び上記各種変形例のパチンコ遊技機では、上述したスピーカチェック機能を、遊技者が遊技中に作動させて用いる例を説明したが、本発明は、これに限定されない。例えば、上述したスピーカチェック機能が、遊技中だけでなく、パチンコ遊技機の出荷前に行う検査の段階においても作動可能となるような構成にしてもよいし、パチンコ遊技機の出荷前に行う検査においてのみ作動可能となるような構成にしてもよい。
上記実施形態及び上記各種変形例では、遊技機としてパチンコ遊技機を例に挙げ説明したが、本発明はこれに限定されない。上述した本発明の各種技術は、他の遊技機にも適用可能であり、例えば、弾球遊技機、パチスロ遊技機、ゲーミングマシン、封入式遊技機、回動式遊技機等の各種遊技機に適用することもできる。
ところで、上述のように、従来、各種演出装置を用いて演出を行う機能を備えた遊技機では、これらの演出動作を制御する副制御部の負担を軽減するための技術が提案されている。しかしながら、例えば、特許文献1に記載の技術では、実際には、演出装置の種別に関係なく、各演出装置の制御処理は、短い実行周期で制御を行う必要のある演出装置に対する割込処理において実行されている。そして、その割込処理内において、長い実行周期で制御可能な演出装置の制御処理を行うか否かの判定処理を行っている。
すなわち、特許文献1に記載の技術では、演出装置の種別に関係なく、各演出装置の制御処理を行う割込処理は、短い実行周期で共通して行われ、その際、短い実行周期で制御を行う必要のある演出装置に対しては割込処理毎に制御処理を実行するが、長い実行周期で制御を行う演出装置に対しては、例えば2回の割込処理毎に制御処理を実行するような構成になっている。それゆえ、特許文献1で提案されているような手法では、必ずしも、副制御部の制御負担を軽減できるとは言い切れない。
本発明は、上記課題を解決するためになされたものであり、本発明の目的は、演出装置を備えた遊技機において、演出装置を用いた演出動作の制御負担を軽減するとともに、演出装置を用いてより細かな演出動作を可能にする技術を提供することである。
そして、上記構成の本発明によれば、演出装置を備えた遊技機において、演出装置を用いた演出動作の制御負担を軽減するとともに、演出装置を用いてより細かな演出動作を実行することができる。