[第1実施形態]
以下、本発明の好適な実施の形態を図面に基づいて説明する。なお、遊技機の説明における前後左右とは、遊技中の遊技者から見た方向を指すものとする。
〔遊技機全体図〕
図1は、遊技機を説明する図である。
遊技機10は島設備に固定される枠11に、ヒンジを介して開閉回動自在に取り付けられる開閉枠を備える。開閉枠は、前面枠12(本体枠)及びガラス枠15によって構成されている。
前面枠12には、遊技盤30(図2参照)が配設されるとともに、遊技盤30の前面を覆うカバーガラス14を有するガラス枠15が取り付けられる。カバーガラス14は、遊技盤30に形成される遊技領域32(図2参照)を視認可能とする遊技視認領域として機能する。
前面枠12及びガラス枠15は、それぞれ個別に開放することが可能となっている。例えば、ガラス枠15のみを開放することで、遊技盤30の遊技領域32にアクセスすることができる。また、前面枠12をガラス枠15が開放されていない状態で開放することで、遊技盤30の裏面側に配設された遊技制御装置(主基板)100(図3参照)等にアクセスすることができる。
ガラス枠15のカバーガラス14周囲の縁部分には、種々の枠構成部材が配設されている。
ガラス枠15の上部中央及び左側部には、遊技状態に応じて発光演出可能な装飾装置18a,18bが配設されている。装飾装置18a,18bは、内部にLED等の照明部材を収容しており、遊技状態に応じた発光演出を行う。これら装飾装置18a,18bの内部に配設される照明部材は、枠装飾装置18(図4参照)の一部を構成している。
ガラス枠15の上右角部分及び上左角部分には、上スピーカ19aがそれぞれ配設される。これら上スピーカ19aとは別に遊技機10の下部には、2つの下スピーカ19bが設けられている。下スピーカ19bは、ガラス枠15の下左角部分及び前面枠12の下右角部分に配設されている。これら上スピーカ19a及び下スピーカ19bは、効果音や警報音、報知音等を発するものである。
ガラス枠15の右側部には、遊技機10の上下方向に延設されるとともに、前方(遊技者側)に向かって突出する突出演出ユニット13が配設されている。突出演出ユニット13は、遊技の進行状態に応じて発光演出等を行う演出装置である。突出演出ユニット13の内部に配設される照明部材も枠装飾装置18(図4参照)の一部を構成している。
ガラス枠15の下部には、遊技球(遊技媒体)を貯留可能な上皿21を有する上皿ユニットが取り付けられている。上皿21は、上面が開口した箱状に形成されている。上皿21に貯留されている遊技球は、一球ずつ球発射装置(図示省略)に供給される。
上皿ユニットは、遊技者からの入力操作を受け付ける演出操作装置と、遊技者からの入力操作を受け付ける球貸操作装置と、遊技状態に応じて発光演出等を行う装飾装置22と、をさらに備える。
演出操作装置は、演出ボタン25にタッチパネル25bを組み込んだ操作装置であり、遊技者が操作しやすいように上皿ユニットの上部中央に設けられている。
遊技者が演出操作装置を操作することによって、表示装置41(図2参照)に表示される特図変動表示ゲーム(ゲーム)等において遊技者の操作を介入させた演出を行うことができる。例えば、演出パターン(演出態様)を選択したり、始動記憶に対応する変動表示ゲーム(ゲーム)の結果を事前に予告する予告演出を実行したりすることができる。なお、変動表示ゲームには特図変動表示ゲームが含まれ、単に変動表示ゲームとした場合には、本明細書では特図変動表示ゲームを指すものとする。
また、変動表示ゲームの実行中だけでなく、非実行中に遊技者が演出操作装置を操作することによっても演出パターンを変更するようにしてもよい。
なお、変動表示ゲームが実行される際の遊技状態は、複数の遊技状態からなる。通常遊技状態(通常状態)とは、特別な遊技状態が発生していない遊技状態である。また、特別な遊技状態とは、例えば、特定遊技状態としての時短状態や変動表示ゲームにおいて特別結果(例えば大当り)の発生確率が高い状態(確変状態、確率変動状態)、大当り状態(特別遊技状態)である。
ここで、確変状態(特定遊技状態)は、次の大当りが発生するまで継続するもの(ループタイプ)、所定回数の変動表示ゲームが実行されるまで継続するもの(回数切りタイプ、ST)、及び所定の確率転落抽選に当選するまで継続するもの(転落抽選タイプ)等がある。
さらに、確変状態を発生させるか否かを大当り図柄乱数によって決定せずに、大当りが発生した場合に必ず確変状態を発生させるようにしてもよいし、特定領域を備える入賞装置等を設け、特定領域を遊技球が通過した場合に確変状態を発生させるようにしてもよい。
球貸操作装置は、遊技者が遊技球を借りる場合に操作する操作装置であって、上皿ユニットの上部右側に設けられている。球貸操作装置は、球貸ボタン27と、返却ボタン28と、残高表示部26と、を備えている。球貸ボタン27は遊技球を借りる場合に遊技者が操作するボタンであり、返却ボタン28は遊技機10に隣接するように配置されるカードユニット(図示省略)からプリペイドカード等を排出させる場合に遊技者が操作するボタンである。残高表示部26は、プリペイドカード等の残高が表示される表示領域である。
装飾装置22は、内部にLED等の照明部材を収容しており、遊技状態に応じて発光演出等を行う装置であって、上皿ユニットの前側部分に設けられている。装飾装置22の内部に配設される照明部材は、枠装飾装置18(図4参照)の一部を構成している。
上記した上皿ユニット等を備えるガラス枠15の下方であって、前面枠12の下部には、球発射装置(図示省略)の動作を制御するための操作ハンドル24と、遊技球を貯留可能な下皿23とが設けられている。
操作ハンドル24は、前面枠12の右下部であって、右側の下スピーカ19bの下方に配置されている。遊技者が操作ハンドル24を回動操作することによって、球発射装置は上皿21から供給された遊技球を遊技盤30の遊技領域32に発射する。球発射装置から発射される遊技球の発射速度は、操作ハンドル24の回動操作量が大きくなるほど速くなるように設定されている。即ち、球発射装置は、遊技領域に遊技球を発射する勢(速度)である発射勢を、遊技者による操作ハンドル24の操作に対応して変更でき、発射勢の異なる種々の発射態様で遊技球を発射できる。発射態様には、遊技領域32の左側において遊技球を流下させる左打ち(通常打ち)と、遊技領域32の右側において遊技球を流下させる右打ちが含まれる。
下皿23は、上皿ユニットに対して所定の間隔をあけて、上皿ユニットの下方に配置されている。下皿23は、当該下皿23の底面を上下方向に貫通する球抜き穴23aと、球抜き穴23aを開閉するための開閉操作部23bと、を有している。遊技者が開閉操作部23bを操作して、球抜き穴23aを開くことによって、下皿23に貯留されていた遊技球を球抜き穴23aを通じて外部に排出することができる。
〔遊技盤〕
続いて、図2を参照して、遊技機10の遊技盤30について説明する。図2は、遊技機10に備えられる遊技盤30の正面図である。
図2に示すように、遊技盤30は、各種部材の取付ベースとなる平板状の遊技盤本体30aを備える。遊技盤本体30aは木製又は合成樹脂製であって、当該遊技盤本体30aの前面にはガイドレール31で囲まれた遊技領域32が設けられている。遊技機10は、ガイドレール31で囲まれた遊技領域32内に球発射装置から遊技球を発射して遊技を行うように構成されている。遊技領域32には遊技球の流下方向を変換する部材として風車や障害釘等が配設されており、発射された遊技球はこれら部材により転動方向を変えながら遊技領域32を流下する。
遊技領域32の略中央には、変動表示ゲームの表示領域となる窓部を形成するセンターケース(前面構成体)40が取り付けられている。センターケース40に形成された窓部の後方には、複数の識別情報を変動表示(可変表示)する演出表示装置(変動表示装置)としての表示装置41が配置されている。表示装置41は、例えば、液晶ディスプレイを備え、センターケース40の窓部を介して遊技盤30の前面側から表示内容が視認可能となるように配置される。なお、表示装置41は、液晶ディスプレイを備えるものに限らず、ELやCRT等のディスプレイを備えるものであってもよい。
表示装置41の表示画面(表示部)には、複数の変動表示領域が設けられており、各変動表示領域に識別情報(特別図柄)や変動表示ゲームを演出するキャラクタが表示される。その他、表示画面には遊技の進行に基づく画像(大当り表示やファンファーレ表示、エンディング表示等)が表示される。
また、センターケース40には、遊技領域32を流下する遊技球をセンターケース40の内側に導くためのワープ通路40eへの流入口40aと、ワープ通路40eを通過した遊技球が転動可能なステージ部40bとが設けられている。センターケース40のステージ部40bは、始動入賞口36及び普通変動入賞装置37の上方に配置されているため、ステージ部40b上で転動した遊技球は始動入賞口36又は普通変動入賞装置37に入賞しやすくなっている。
センターケース40の上部及び右側部には、それぞれ上部演出ユニット40c及び側部演出ユニット40dが設けられる。上部演出ユニット40c及び側部演出ユニット40dは、盤装飾装置46(図4参照)及び盤演出装置44(図4参照)の一部を構成している。
センターケース40の右側方の遊技領域32には、普通図柄始動ゲート(普図始動ゲート)34が設けられている。普図始動ゲート34の内部には、当該普図始動ゲート34を通過した遊技球を検出するためのゲートスイッチ(SW)34a(図3参照)が設けられている。遊技領域32内に打ち込まれた遊技球が普図始動ゲート34を通過すると、普図変動表示ゲームが実行される。
センターケース40の左下方の遊技領域32には一般入賞口35が配置されており、センターケース40の右下方の遊技領域32にも一般入賞口35が配置されている。これら一般入賞口35への遊技球の入賞は、一般入賞口35に備えられた入賞口スイッチ(SW)35a~35n(図3参照)によって検出される。
センターケース40の下方の遊技領域32には、特図変動表示ゲームの開始条件を付与する始動入賞口(第1始動入賞領域)36が設けられ、その直下には第2始動入賞口(第2始動入賞領域)を備えた普通変動入賞装置37が設けられる。普通変動入賞装置37は、上端側が手前側に倒れる方向に回動することで、遊技球が流入し易い状態に変換する可動部材(可動片)37bを備える。可動部材37bが閉状態である場合には遊技球が普通変動入賞装置37に入賞できないようになっている。遊技球が始動入賞口36又は普通変動入賞装置37に入賞した場合には、補助遊技として特図変動表示ゲームが実行される。
可動部材37bは、所謂ベロ型の普通電動役物であり、普図変動表示ゲームの結果が所定の停止表示態様となった場合に、普電ソレノイド37c(図3参照)を介して回動して開いて、遊技球が普通変動入賞装置37に流入しやすい開状態(遊技者にとって有利な入賞容易状態)に変化する。
なお、可動部材37bは、後述する遊技制御装置100によって制御される。遊技制御装置100は、普図変動表示ゲームの変動時間を短縮したり普図変動表示ゲームの当り確率を通常よりも高確率としたりすることで入賞容易状態の発生頻度を高めたり、通常遊技状態で発生する入賞容易状態よりも入賞容易状態の発生時間を長くしたりすることで、前述の特定遊技状態として時短状態(普電サポート状態)を発生させる。なお、確変状態(潜伏確変状態を除く)においても、重複して時短状態(普電サポート状態)が発生する。
普通変動入賞装置37の右下方の遊技領域32には、大入賞口ソレノイド39b(図3参照)によって上端側が手前側に倒れる方向に回動することで大入賞口を開放するアタッカ形式の開閉扉39cを有する特別変動入賞装置39が設けられている。特別変動入賞装置39は、特図変動表示ゲームの結果によって大入賞口を閉じた状態(遊技者にとって不利な閉塞状態)から開放状態(遊技者にとって有利な特別遊技状態)に変換し、大入賞口内への遊技球の流入を容易にさせることで、遊技者に所定の遊技価値(賞球)を付与するようになっている。なお、大入賞口内には、当該大入賞口に入った遊技球を検出する検出手段としてカウントスイッチ39a(大入賞口スイッチ39a、図3参照)が配設されている。また、大入賞口内や大入賞口近傍には、大入賞口を照らす発光部材が配設されている。
第2特別変動入賞装置39の内部には、特定領域86(いわゆるV入賞口)が設けられている。特定領域86(V入賞口)に遊技球が入球した場合に大当り終了後の確変状態(高確率状態、特定遊技状態)が確定する。特定領域86は、確変大当りの場合にのみ、長時間開放されるなどして遊技球が容易に通過できるようにしてよい。なお、遊技制御装置100は、特定領域86への遊技球の通過(V入賞)をセンサ(後述の特定領域スイッチ72)等を介して検知でき、V入賞を検知すると大当り終了後に確変状態に移行することを確定するとともに、後述の演出制御装置300にV入賞があったことを示す情報(特定領域通過コマンド等)を送信する。そして、演出制御装置300は、V入賞を表示装置41などにおいて報知できる。
一般入賞口35、始動入賞口36、普通変動入賞装置37、及び特別変動入賞装置39の大入賞口に遊技球が入賞すると、払出制御装置200(図3参照)は、入賞した入賞口の種類に応じた数の賞球を払出装置から上皿21に排出する。また、普通変動入賞装置37の下方の遊技領域32には、入賞口等に入賞しなかった遊技球を回収するアウト口30bが設けられている。
また、遊技領域32の外側であって遊技盤本体30aの右下角部には、特図変動表示ゲーム(特図1変動表示ゲーム、特図2変動表示ゲーム)及び普図変動表示ゲームを実行する一括表示装置50が設けられている。一括表示装置50は、現在の遊技状態等の情報を表示する表示部51~60を備える。
一括表示装置50は、7セグメント型の表示器(LEDランプ)等で構成された変動表示ゲーム用の第1特図変動表示部51(特図1表示器、ランプD1)及び第2特図変動表示部52(特図2表示器、ランプD2)と、普図変動表示ゲーム用の変動表示部53(普図表示器、ランプD10、D18)と、各変動表示ゲームの始動(保留)記憶数報知用の記憶表示部(特図1保留表示器54、特図2保留表示器55、普図保留表示器56)と、を有している。特図1保留表示器54はランプD11、D12により構成される。特図2保留表示器55は、ランプD13、D14により構成される。普図保留表示器56は、ランプD15、D16により構成される。
また、一括表示装置50には、右打ち時(右打ちすべき時)又は左打ち時(通常打ち時)であることを報知する第1遊技状態表示部57(第1遊技状態表示器、ランプD8)、時短状態が発生すると点灯して時短状態発生を報知する第2遊技状態表示部58(第2遊技状態表示器、ランプD9)、遊技機10の電源投入時に大当りの確率状態が高確率状態となっていることを表示する第3遊技状態表示部59(第3遊技状態表示器、確率状態表示部、ランプD17)、大当り時のラウンド数(特別変動入賞装置39の開閉回数)を表示するラウンド表示部60(ランプD3-D7)が設けられている。
特図1表示器51と特図2表示器52において、変動表示ゲームは、識別情報(例えば、中央のセグメント)の点灯消灯(点滅)を繰り返す変動表示によって実行される。なお、特図1表示器51、特図2表示器52は、このようなセグメント型の表示部に限らず、複数のLEDの集合体により構成されていてもよいし、変動表示を実行する場合に、表示器として設けられるすべてのLEDにより全点灯全消灯(全LEDの同時点滅)や、循環点灯(何れか1のLEDから所定時間毎に所定の順序で点灯し、消灯する)、または複数のLEDのうちの所定数のLEDによる点灯消灯(点滅)や循環点灯によって行ってもよい。普図表示器53においても、変動表示ゲームは、ランプD10、D18の点灯消灯を繰り返す変動表示(点滅)によって実行される。また、普図表示器53も特図1表示器51、特図2表示器52と同様に適宜構成することが可能である。
また、センターケース40の上部に設けられるランプ表示装置80は、図柄(第四特別図柄)として点灯表示と消灯表示を繰り返す変動表示(点滅)を実行するランプ表示部(LED)と、各特図変動表示ゲームの始動(保留)記憶数報知用のランプ表示部(LED)を有する。なお、ランプ表示装置80は、演出制御装置300(後述)で制御される。各特図変動表示ゲームの始動(保留)記憶数報知用のランプ表示部(LED)は、大当り発生により保留数の表示を終了するが、大当り状態中以外の場合(表示装置41で後述のリーチが発生している場合も含む)では、保留数の表示を行う。
次に、遊技機10における遊技の流れ、普図変動表示ゲーム及び特図変動表示ゲームの詳細について説明する。
遊技機10では、図示しない球発射装置から遊技領域32に向けて遊技球が打ち出されることによって遊技が行われる。打ち出された遊技球は、遊技領域32内の各所に配置された障害釘や風車等によって転動方向を変えながら遊技領域32を流下し、普図始動ゲート34、一般入賞口35、始動入賞口36、普通変動入賞装置37、又は特別変動入賞装置39に入賞するか、遊技領域32の最下部に設けられたアウト口30bへ流入し、遊技領域32から排出される。そして、一般入賞口35、始動入賞口36、普通変動入賞装置37、又は特別変動入賞装置39に遊技球が入賞すると、入賞した入賞口の種類に応じた数の賞球が払出装置を介して上皿21に排出される。
普図始動ゲート34には、当該普図始動ゲート34を通過した遊技球を検出するゲートスイッチ34a(図3参照)が設けられている。遊技球が普図始動ゲート34を通過すると、ゲートスイッチ34aによって検出され、このときに抽出された当り判定用乱数値の判定結果に基づき普図変動表示ゲームが実行される。
普図変動表示ゲームを開始できない状態、例えば、既に普図変動表示ゲームが行われており当該普図変動表示ゲームが終了していない場合や、普図変動表示ゲームの結果が当りとなって普通変動入賞装置37が開放状態に変換されている場合に、遊技球が普図始動ゲート34を通過すると、普図始動記憶数が上限数未満ならば当該記憶数が加算(+1)される。
普図始動記憶には普図変動表示ゲームの当りはずれを決定するための当り判定用乱数値が記憶されており、この当り判定用乱数値が判定値と一致した場合に、当該普図変動表示ゲームが当りとなって特定の結果態様(特定結果)が導出される。
普図変動表示ゲームは、一括表示装置50に設けられた普図表示器53で実行されるようになっている。普図表示器53は、普通識別情報(普図)として点灯状態の場合に当りを示し、消灯状態の場合にはずれを示すLEDから構成され、このLEDを点滅表示することで普通識別情報の変動表示を行い、所定の変動表示時間の経過後、LEDを点灯又は消灯することで結果を表示するようになっている。
普図始動ゲート34通過時に抽出された普図乱数値が当り値である場合には、普図表示器53に表示される普通図柄が当り状態で停止し、当り状態となる。このとき、普電ソレノイド37c(図3参照)が駆動されることにより、可動部材37bが所定の時間(例えば0.3秒間)だけ開状態に変換され、普通変動入賞装置37への遊技球の入賞が許容される。
遊技球の始動入賞口36への入賞及び普通変動入賞装置37への入賞は、始動口1スイッチ36a(図3参照)及び始動口2スイッチ37a(図3参照)によって検出される。始動入賞口36に入賞した遊技球は特図1変動表示ゲームの始動入賞球として検出され、所定の上限数を限度に記憶されるとともに、普通変動入賞装置37に入賞した遊技球は特図2変動表示ゲームの始動入賞球として検出され、所定の上限数を限度に記憶される。
特図変動表示ゲームの始動入賞球の検出時には、大当り乱数値や大当り図柄乱数値、各変動パターン乱数値等が抽出される。これら乱数値は、遊技制御装置100の特図保留記憶領域(RAMの一部)に特図始動入賞記憶として各々所定回数分(例えば最大で8回分)を限度に記憶される。特図始動入賞記憶の記憶数は、一括表示装置50の始動入賞数報知用の特図1保留表示器54や特図2保留表示器55に表示されるとともに、表示装置41の表示画面にも表示される。
遊技制御装置100は、始動入賞口36への入賞若しくは第1始動記憶に基づいて、特図1表示器51で特図1変動表示ゲームを実行する。また、遊技制御装置100は、普通変動入賞装置37への入賞若しくは第2始動記憶に基づいて、特図2表示器52で特図2変動表示ゲームを実行する。
特図1変動表示ゲーム(第1特図変動表示ゲーム)及び特図2変動表示ゲーム(第2特図変動表示ゲーム)は、特図1表示器51及び特図2表示器52において識別情報(特別図柄、特図)を変動表示した後に所定の結果態様を停止表示することで行われる。また、表示装置41では、各特図変動表示ゲームに対応して複数種類の識別情報(例えば、数字、記号、キャラクタ図柄など)を変動表示させる飾り特図変動表示ゲームが実行される。
表示装置41における飾り特図変動表示ゲームは、前述した数字等で構成される飾り特別図柄(識別情報)が左(第一特別図柄)、右(第二特別図柄)、中(第三特別図柄)の順に変動表示(スクロール表示)を開始して、所定時間後に変動している図柄を順次停止させて、特図変動表示ゲームの結果を表示することで行われる。また、表示装置41では、興趣向上のためにキャラクタの出現等の多様な演出表示が行われる。さらに、飾り特図変動表示ゲームでは、他の飾り特別図柄(識別情報)として、ランプ表示装置80のランプ表示部(LED)において、点灯表示と消灯表示の繰り返し(点滅)によって第四特別図柄(第4図柄)が変動する。ランプ表示部の変動表示は、開始から所定時間後に、はずれの場合は「点灯」、大当りの場合は「消灯」で停止する。
なお、逆に、第四特別図柄(第4図柄)としてのランプ表示部(LED)の変動表示は、はずれの場合は「消灯」、大当りの場合は「点灯」で停止する構成も可能である。また、各ランプ表示部としてLED(第4図柄LED)を複数設けて、はずれの場合に複数のうちの一つのLEDを点灯させ、大当りの場合に複数の全てのLEDが点灯させるような構成も可能である。
始動入賞口36又は普通変動入賞装置37への遊技球の入賞が所定のタイミングでなされた場合(入賞検出時の大当り乱数値が大当り値である場合)には、特図1表示器51または特図2表示器52において、特図変動表示ゲームの結果として表示図柄により特定の結果態様(特別結果態様)が導出され、大当り状態(特別遊技状態)となる。これに対応して、表示装置41の表示態様は特別結果態様(例えば「7,7,7」等の数字が揃った状態)となる。
このとき、特別変動入賞装置39は、大入賞口ソレノイド39b(図3参照)への通電によって、大入賞口が所定の時間(例えば30秒)だけ閉状態から開状態に変換される。すなわち、特別変動入賞装置39に備えられた大入賞口が所定の時間又は所定数の遊技球が入賞するまで大きく開き、この間遊技者は多くの遊技球を獲得することができるという特典が付与される。
なお、特図1表示器51及び特図2表示器52は、別々の表示器として構成してもよいし同一の表示器として構成してもよいが、各特図変動表示ゲームが同時に実行されないように設定される。
表示装置41における飾り特図変動表示ゲームについては、特図1変動表示ゲームと特図2変動表示ゲームとを別々の表示装置や別々の表示領域で実行するようにしてもよいし、同一の表示装置や表示領域で実行するようにしてもよい。この場合、特図1変動表示ゲーム及び特図2変動表示ゲームに対応する飾り特図変動表示ゲームが同時に実行されないようにする。なお、特図2変動表示ゲームは、特図1変動表示ゲームよりも優先して実行されるようになっており、特図1変動表示ゲームと特図2変動表示ゲームの始動記憶があり、特図変動表示ゲームの実行が可能な状態になった場合は特図2変動表示ゲームが実行される。
なお、以下の説明において、特図1変動表示ゲームと特図2変動表示ゲームを区別しない場合は、単に特図変動表示ゲームと称する。
また、特に限定されるわけではないが、上記始動入賞口36内の始動口1スイッチ36a、普通変動入賞装置37内の始動口2スイッチ37a、ゲートスイッチ34a、入賞口スイッチ35a、カウントスイッチ39aには、磁気検出用のコイルを備え該コイルに金属が近接すると磁界が変化する現象を利用して遊技球を検出する非接触型の磁気近接センサ(以下、近接スイッチと称する)が使用されている。また、遊技機10のガラス枠15等に設けられたガラス枠開放検出スイッチ63や前面枠(遊技枠)12等に設けられた前面枠開放検出スイッチ64(本体枠開放検出スイッチ)には、機械的な接点を有するマイクロスイッチを用いることができる。
〔遊技制御装置〕
図3は、遊技機10の遊技制御系のブロック図である。遊技機10は遊技制御装置100(主基板)を備え、遊技制御装置100は、遊技を統括的に制御する主制御装置(主基板)であって、遊技用マイクロコンピュータ(以下、遊技用マイコンと称する)111を有するCPU部110と、入力ポートを有する入力部120と、出力ポートやドライバなどを有する出力部130、CPU部110と入力部120と出力部130との間を接続するデータバス140などからなる。
CPU部110は、アミューズメントチップ(IC)と呼ばれる遊技用マイコン(CPU)111と、水晶振動子のような発振子を備え、CPUの動作クロックやタイマ割込み、乱数生成回路の基準となるクロックを生成する発振回路(水晶発振器)113などを有する。遊技制御装置100及び該遊技制御装置100によって駆動されるソレノイドやモータなどの電子部品には、電源装置400で生成されたDC32V,DC12V,DC5Vなど所定のレベルの直流電圧が供給されて動作可能にされる。
電源装置400は、24Vの交流電源からDC32Vの直流電圧を生成するACDCコンバータやDC32Vの電圧からDC12V,DC5Vなどのより低いレベルの直流電圧を生成するDC-DCコンバータなどを有する通常電源部410と、遊技用マイコン111の内部のRAMに対して停電時に電源電圧を供給するバックアップ電源部420と、停電監視回路を有し、遊技制御装置100に停電の発生、回復を知らせる停電監視信号やリセット信号などの制御信号を生成して出力する制御信号生成部430などを備える。
本実施形態では、電源装置400は、遊技制御装置100と別個に構成されているが、バックアップ電源部420及び制御信号生成部430は、別個の基板上あるいは遊技制御装置100と一体、すなわち、主基板上に設けるように構成してもよい。遊技盤30及び遊技制御装置100は機種変更の際に交換の対象となるので、実施例のように、電源装置400若しくは主基板とは別の基板にバックアップ電源部420及び制御信号生成部430を設けることにより、交換の対象から外しコストダウンを図ることができる。
バックアップ電源部420は、電解コンデンサのような大容量のコンデンサ1つで構成することができる。バックアップ電源は、遊技制御装置100の遊技用マイコン111(特に内蔵RAM)に供給され、停電中あるいは電源遮断後もRAMに記憶されたデータが保持されるようになっている。制御信号生成部430は、例えば通常電源部410で生成された32Vの電圧を監視してそれが例えば17V以下に下がると停電発生を検出して停電監視信号を変化させるとともに、所定時間後にリセット信号を出力する。また、電源投入時や停電回復時にもその時点から所定時間経過後にリセット信号を出力する。
また、遊技制御装置100にはRAM初期化スイッチ112が設けられている。RAM初期化スイッチ112が押下げられてオン操作されると初期化スイッチ信号が生成され、これに基づき遊技用マイコン111内のRAM111c及び払出制御装置200内のRAMに記憶されている情報を強制的に初期化する処理が行われる。特に限定されるわけではないが初期化スイッチ信号は電源投入時に読み込まれ、停電監視信号は遊技用マイコン111が実行するメインプログラムのメインループの中で繰り返し読み込まれる。リセット信号は強制割込み信号の一種であり、制御システム全体をリセットさせる。
また、遊技制御装置100(主基板)は、設定キースイッチ93を備える。設定キースイッチ93は、操作者の回転操作等によってオンすることによって遊技条件(遊技)に関する設定に応じた確率設定値(設定値)を変更可能な状態にする。なお、RAM初期化スイッチ112は、操作者の操作に応じて確率設定値を変更可能な設定値変更スイッチとしても使用可能である。本実施形態では、確率設定値は、大当り確率や小当り確率(小当りがある場合のみ)などの当選確率を設定するための設定値であるが、確率以外の他の遊技条件(演出など)も確率設定値に応じて変更可能である。設定キースイッチ93とRAM初期化スイッチ112は、遊技条件に関する設定(確率設定値)を変更可能な設定変更手段(設定変更装置42)を構成する。なお、RAM初期化スイッチ112ではなく、他のスイッチが、設定値変更スイッチを兼用してもよいし、専用に独自の設定値変更スイッチを設けてもよい。
設定キースイッチ93とRAM初期化スイッチ112は、遊技機10内部の遊技制御装置100上に設けられることによって、前面枠12(本体枠)が開放されなければ操作できない位置(アクセスできない位置)に配置される。即ち、一般の遊技者は、設定キースイッチ93とRAM初期化スイッチ112にアクセスして操作することができない。
後述するように、遊技機10の電源投入(停電復旧、復電)の際に、遊技機10は、設定キースイッチ93とRAM初期化スイッチ112のオン/オフ状態に応じて、確率設定値を変更可能な設定可変状態(設定変更状態、設定変更モード)、確率設定値を確認可能な設定確認状態(設定確認モード)などの各種状態に、移行することができる。
本実施形態において、確率設定値は、例えば6段階で規定され、確率設定値1(設定1)、確率設定値2(設定2)、確率設定値3(設定3)、確率設定値4(設定4)、確率設定値5(設定5)、確率設定値6(設定6)がある。一般的に、設定1が遊技者に最も不利な設定であり、設定6が遊技者に最も有利な設定である。設定1、2が低設定であり、設定3、4が中間の設定(中間設定)であり、設定5、6が高設定である。
確率設定変更処理では、操作者によってRAM初期化スイッチ112が押下操作される度に、作業用設定値領域の作業用設定値(設定)が、設定値0(設定1、確率設定値1)→設定値1(設定2、確率設定値2)→設定値2(設定3、確率設定値3)→設定値3(設定4、確率設定値4)→設定値4(設定5、確率設定値5)→設定値5(設定6、確率設定値6)→設定値0(設定1)→設定値1(設定2)→・・・のように変更される。このように、RAM初期化スイッチ112は、設定値変更スイッチとしても機能する。なお、説明の都合上、設定変更状態(設定変更モード)中に、作業用設定値0~5をそれぞれ確率設定値1~6に対応して設けるが、作業用設定値と確率設定値は同じ数値範囲(即ち0~5又は1~6)に揃えて同じものとして取り扱ってもよい(作業用設定値と確率設定値を同じ数値にする)。
なお、RAM初期化スイッチ112(設定値変更スイッチ)の操作ではなく、設定キースイッチ93を所定の位置に回転操作して確率設定値を変更する構成としてもよい。また、確率設定値は6段階に限られない。そして、選択されている0~5の作業用設定値に対応する表示用確率設定値が、例えば4桁の7セグメント型(ドットDpを含めると8セグメント型)の表示器である性能表示装置152等に表示される。
遊技用マイコン111は、CPU(中央処理ユニット:マイクロプロセッサ)111a、読出し専用のROM(リードオンリメモリ)111b及び随時読出し書込み可能なRAM(ランダムアクセスメモリ)111cを備える。
ROM111bは、遊技制御のための不変の情報(プログラム、固定データ、各種乱数の判定値等)を不揮発的に記憶する。RAM111cは、遊技制御時にCPU111aの作業領域や各種信号や乱数値の記憶領域として利用されるもので、遊技に関する情報(遊技情報)が記憶され、停電が発生しても記憶された情報の記憶保持が可能な保持記憶手段となる。ROM111b又はRAM111cとして、EEPROMのような電気的に書換え可能な不揮発性メモリを用いてもよい。
また、ROM111bは、例えば、特図変動表示ゲームの実行時間、演出内容、リーチ状態の発生の有無などを規定する変動パターン(変動態様)を決定するための変動パターンテーブルを記憶している。変動パターンテーブルとは、始動記憶として記憶されている変動パターン乱数1~3をCPU111aが参照して変動パターンを決定するためのテーブルである。また、変動パターンテーブルには、結果がはずれとなる場合に選択されるはずれ変動パターンテーブル、結果が大当りとなる場合に選択される大当り変動パターンテーブル等が含まれる。さらに、これらのパターンテーブルには、リーチ状態となった後の変動パターンである後半変動パターンを決定するためのテーブル(後半変動グループテーブルや後半変動パターン選択テーブル等)、リーチ状態となる前の変動パターンである前半変動パターンを決定するためのテーブル(前半変動グループテーブルや前半変動パターン選択テーブル等)が含まれている。
ここでリーチ(リーチ状態)とは、表示状態が変化可能な表示装置を有し、該表示装置が時期を異ならせて複数の表示結果を導出表示し、該複数の表示結果が予め定められた特別結果態様となった場合に、遊技状態が遊技者にとって有利な遊技状態(特別遊技状態)となる遊技機10において、複数の表示結果の一部がまだ導出表示されていない段階で、既に導出表示されている表示結果が特別結果態様となる条件を満たしている表示状態をいう。また、別の表現をすれば、リーチ状態とは、表示装置の変動表示制御が進行して表示結果が導出表示される前段階にまで達した時点でも、特別結果態様となる表示条件からはずれていない表示態様をいう。そして、例えば、特別結果態様が揃った状態を維持しながら複数の変動表示領域による変動表示を行う状態(いわゆる全回転リーチ)もリーチ状態に含まれる。また、リーチ状態とは、表示装置の表示制御が進行して表示結果が導出表示される前段階にまで達した時点での表示状態であって、表示結果が導出表示される以前に決定されている複数の変動表示領域の表示結果の少なくとも一部が特別結果態様となる条件を満たしている場合の表示状態をいう。
よって、例えば、特図変動表示ゲームに対応して表示装置に表示される飾り特図変動表示ゲームが、表示装置における左、中、右の変動表示領域の各々で所定時間複数の識別情報を変動表示した後、左、右、中の順で変動表示を停止して結果態様を表示するものである場合、左、右の変動表示領域で、特別結果態様となる条件を満たした状態(例えば、同一の識別情報)で変動表示が停止した状態がリーチ状態となる。他に、すべての変動表示領域の変動表示を一旦停止した時点で、左、中、右のうちいずれか二つの変動表示領域で特別結果態様となる条件を満たした状態(例えば、同一の識別情報となった状態、ただし特別結果態様は除く)をリーチ状態とし、リーチ状態から残りの一つの変動表示領域を変動表示するようにしてもよい。
そして、リーチ状態には複数のリーチ演出が含まれ、特別結果態様(大当り態様)が導出される可能性が異なる(期待度が異なる)リーチ演出の系統(種類)として、ノーマルリーチ(Nリーチ)、スペシャル1リーチ(SP1リーチ)、スペシャル2リーチ(SP2リーチ)、スペシャル3リーチ(SP3リーチ)、プレミアリーチが設定されている。なお、リーチ演出の大当りの期待度(期待値)は、リーチなし<ノーマルリーチ<スペシャル1リーチ<スペシャル2リーチ<スペシャル3リーチ<プレミアリーチの順に高くなるようになっている。また、リーチ状態は、少なくとも特図変動表示ゲームで特別結果態様が導出される場合(大当りとなる場合)における変動表示態様に含まれるようになっている。すなわち、特図変動表示ゲームで特別結果態様が導出されないと判定する場合(はずれとなる場合)における変動表示態様に含まれることもある。よって、リーチ状態が発生した状態は、リーチ状態が発生しない場合と比較して大当りとなる可能性の高い状態である。
なお、演出(予告)の期待度は、その演出が選択された場合に大当りになる確率を示唆し、大当りであるときのその演出の選択率及び大当りでないとき(はずれのとき)のその演出の選択率などに基づいて算出することができる。
CPU111aは、ROM111b内の遊技制御用プログラムを実行して、払出制御装置200や演出制御装置300に対する制御信号(コマンド)を生成したりソレノイドや表示装置の駆動信号を生成して出力して遊技機10全体の制御を行う。また、図示しないが、遊技用マイコン111は、特図変動表示ゲームの大当りを判定するための大当り乱数や大当りの図柄を決定するための大当り図柄乱数、小当りの図柄を決定するための小当り図柄乱数(小当りがある場合のみ)、特図変動表示ゲームでの変動パターン(各種リーチやリーチなしの変動表示における変動表示ゲームの実行時間等を含む)を決定するための変動パターン乱数等を生成するための乱数生成回路と、発振回路113からの発振信号(原クロック信号)に基づいてCPU111aに対する所定周期(例えば、4msec(ミリ秒))のタイマ割込み信号や乱数生成回路の更新タイミングを与えるクロックを生成するクロックジェネレータを備えている。
また、CPU111aは、特図変動表示ゲームに関する処理において、ROM111bに記憶されている複数の変動パターンテーブルの中から、いずれか一の変動パターンテーブルを取得する。具体的には、CPU111aは、特図変動表示ゲームの遊技結果(大当りあるいははずれ)や、現在の遊技状態としての特図変動表示ゲームの確率状態(通常確率状態あるいは高確率状態)、始動記憶数などに基づいて、複数の変動パターンテーブルの中から、いずれか一の変動パターンテーブルを選択して取得する。ここで、CPU111aは、特図変動表示ゲームを実行する場合に、ROM111bに記憶された複数の変動パターンテーブルのうち、いずれか一の変動パターンテーブルを取得する変動振り分け情報取得手段をなす。
払出制御装置200は、CPU、ROM、RAM、入力インタフェース、出力インタフェース等を備え、遊技制御装置100からの賞球払出し指令(コマンドやデータ)に従って、払出ユニットの払出モータ91を駆動させ、賞球を払い出させるための制御を行う。また、払出制御装置200は、カードユニット600からの貸球要求信号に基づいて払出ユニットの払出モータ91を駆動させ、貸球を払い出させるための制御を行う。
遊技制御装置100の入力部120には、遊技機に対する電波の発射を検出する電波センサ62(盤電波センサ)、普図始動ゲート34のゲートスイッチ34a、第1始動入賞口36内の始動口1スイッチ36a、第2始動入賞口37(普通変動入賞装置)内の始動口2スイッチ37a、一般入賞口35の入賞口スイッチ35a、特別変動入賞装置39の大入賞口スイッチ39aに接続され、これらのスイッチから供給されるハイレベルが11Vでロウレベルが7Vのような負論理の信号が入力され、0V-5Vの正論理の信号に変換するインタフェースチップ(近接I/F)121が設けられている。
さらに、インタフェースチップ(近接I/F)121は、特定領域スイッチ72、残存球排出口スイッチ73、アウト球検出スイッチ74に接続される。特定領域スイッチ72は、特定領域86(V入賞口)への遊技球の通過(V入賞)を検出する。残存球排出口スイッチ73は、特別変動入賞装置39からの遊技球を排出する残存球排出口を通過した遊技球を検出する。アウト球検出スイッチ74は、アウト口30bを通過する遊技球のみを検出してもよいし、遊技領域に発射されて遊技を終えた全ての遊技球を検出してもよい。
近接I/F121の出力は、第2入力ポート123、第3入力ポート124、又は、第4入力ポート126に供給されデータバス140を介して遊技用マイコン111に読み込まれる。なお、近接I/F121の出力のうち、ゲートスイッチ34a、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39aの検出信号は第3入力ポート124に入力される。
また、近接I/F121の出力のうち、電波センサ62の検出信号及びセンサやスイッチの異常を検出した際に出力される異常検知信号は第2入力ポート123に入力される。
また、近接I/F121の出力のうち、特定領域スイッチ72、残存球排出口スイッチ73、又は、アウト球検出スイッチ74の検出信号は第4入力ポート126に入力される。
また、第2入力ポート123には、遊技機10の前面枠12等に設けられた不正検出用の磁気センサスイッチ61の検出信号、遊技機10のガラス枠15等に設けられたガラス枠開放検出スイッチ63、前面枠12(本体枠)等に設けられた前面枠開放検出スイッチ64(本体枠開放検出スイッチ)からの信号、遊技機10の振動を検出する振動センサ65からの信号が入力される。また、第2入力ポート123には、遊技機10のガラス枠15等に設けられた呼出しボタンスイッチ67(後述)からの信号も入力される。
また、第2入力ポート123は、設定キースイッチ93からの設定キースイッチ信号を取り込んでデータバス140を介して遊技用マイコン111に供給する。
また、近接I/F121の出力のうち、第3入力ポート124への出力は、遊技制御装置100から中継基板70を介して図示しない試射試験装置へも供給されるようになっている。さらに、近接I/F121の出力のうち始動口1スイッチ36aと始動口2スイッチ37aの検出信号は、第3入力ポート124の他、遊技用マイコン111に入力されるように構成されている。
前述のように近接I/F121は、信号のレベル変換機能を有する。このようなレベル変換機能を可能にするため、近接I/F121には、電源装置400から通常のICの動作に必要な例えば5Vのような電圧の他に、12Vの電圧が供給されるようになっている。
第3入力ポート124が保持しているデータは、遊技用マイコン111が第3入力ポート124に割り当てられているアドレスをデコードすることによってイネーブル信号CE2をアサート(有効レベルに変化)することよって、読み出すことができる。第2入力ポート123、第4入力ポート126や後述の第1入力ポート122も同様である。
また、入力部120には、払出制御装置200から出力される枠電波不正信号、払出ビジー信号、払出異常を示すステータス信号、払出前の遊技球の不足を示すシュート球切れスイッチ信号、オーバーフローを示すオーバーフロースイッチ信号、操作ハンドル24に設けられたタッチスイッチの入力に基づくタッチスイッチ信号、RAM初期化スイッチ112からの信号を取り込んでデータバス140を介して遊技用マイコン111に供給する第1入力ポート122が設けられている。オーバーフロースイッチ信号は、下皿23に遊技球が所定量以上貯留されていること(満杯になったこと)を検出したときに出力される信号である。枠電波不正信号は前面枠12(本体枠)に設けられた枠電波センサが電波を検出することに基づき出力される信号であり、払出ビジー信号は払出制御装置200がコマンドを受付可能な状態か否かを示す信号である。
また、入力部120には、電源装置400からの停電監視信号やリセット信号などの信号を遊技用マイコン111等に入力するためのシュミットバッファ125が設けられており、シュミットバッファ125はこれらの入力信号からノイズを除去する機能を有する。電源装置400からの停電監視信号は、一旦第1入力ポート122に入力され、データバス140を介して遊技用マイコン111に取り込まれる。つまり、前述の各種スイッチからの信号と同等の信号として扱われる。遊技用マイコン111に設けられている外部からの信号を受ける端子の数には制約があるためである。
一方、シュミットバッファ125によりノイズ除去されたリセット信号RSTは、遊技用マイコン111に設けられているリセット端子に直接入力されるとともに、出力部130の各ポートに供給される。また、リセット信号RSTは出力部130を介さずに直接中継基板70に出力することで、試射試験装置に出力するために中継基板70のポート(図示省略)に保持される試射試験信号をオフするように構成されている。
また、リセット信号RSTを中継基板70を介して試射試験装置に出力可能に構成するようにしてもよい。なお、リセット信号RSTは入力部120の各ポート122,123,124には供給されない。リセット信号RSTが入る直前に遊技用マイコン111によって出力部130の各ポートに設定されたデータはシステムの誤動作を防止するためリセットする必要があるが、リセット信号RSTが入る直前に入力部120の各ポートから遊技用マイコン111が読み込んだデータは、遊技用マイコン111のリセットによって廃棄されるためである。
出力部130には、遊技用マイコン111から演出制御装置300への通信経路及び遊技用マイコン111から払出制御装置200への通信経路に配されるシュミットバッファ132が設けられている。遊技制御装置100から演出制御装置300及び払出制御装置200へは、シリアル通信でデータが送信される。なお、演出制御装置300の側から遊技制御装置100へ信号を入力できないようにした片方向通信とされている。
さらに、出力部130には、データバス140に接続され図示しない認定機関の試射試験装置へ変動表示ゲームの特図図柄情報を知らせるデータや大当りの確率状態を示す信号などを中継基板70を介して出力するバッファ133が実装可能に構成されている。バッファ133は遊技店に設置される実機(量産販売品)としてのパチンコ遊技機の遊技制御装置(主基板)には実装されない部品である。なお、前記近接I/F121から出力される始動口スイッチなど加工の必要のないスイッチの検出信号は、バッファ133を通さずに中継基板70を介して試射試験装置に供給される。
一方、磁気センサスイッチ61や電波センサ62のようにそのままでは試射試験装置に供給できない検出信号は、一旦遊技用マイコン111に取り込まれて他の信号若しくは情報に加工されて、例えば遊技機が遊技制御できない状態であることを示すエラー信号としてデータバス140からバッファ133、中継基板70を介して試射試験装置に供給される。
なお、中継基板70には、バッファ133から出力された信号を取り込んで試射試験装置に供給するポートや、バッファを介さないスイッチの検出信号の信号線を中継して伝達するコネクタなどが設けられている。中継基板70上のポートには、遊技用マイコン111から出力されるチップイネーブル信号CEも供給され、該信号CEにより選択制御されたポートの信号が試射試験装置に供給されるようになっている。
また、出力部130には、データバス140に接続され普通変動入賞装置37を開放させるソレノイド(普電ソレノイド)37c、特別変動入賞装置39を開放させる大入賞口ソレノイド39b(大入賞口ソレノイド)、レバーを動作させ特定領域86を開放させるレバーソレノイド86bの開閉データを出力するための第2出力ポート134が設けられている。
また、出力部130には、一括表示装置50に表示する内容に応じてLEDのアノード端子が接続されているセグメント線のオン/オフデータを出力するための第3出力ポート135、一括表示装置50のLEDのカソード端子が接続されているデジット線のオン/オフデータを出力するための第4出力ポート136が設けられている。
また、出力部130には、大当り情報など遊技機10に関する情報を外部情報端子71に出力するための第5出力ポート137が設けられている。外部情報端子71にはフォトリレーが備えられ、例えば遊技店に設置された外部装置(情報収集端末や遊技場内部管理装置(ホールコンピュータ)など)に接続可能であり、遊技機10に関する情報を外部装置に供給することができるようになっている。また、第5出力ポート137からはシュミットバッファ132を介して払出制御装置200に発射許可信号も出力される。
さらに、出力部130には、第2出力ポート134から出力される普電ソレノイド37cや大入賞口ソレノイド39bなどの開閉データ信号を受けてソレノイド駆動信号を生成し出力する第1ドライバ(駆動回路)138a、第3出力ポート135から出力される一括表示装置50の電流供給側のセグメント線のオン/オフ駆動信号を出力する第2ドライバ138b、第4出力ポート136から出力される一括表示装置50の電流引き込み側のデジット線のオン/オフ駆動信号を出力する第3ドライバ138c、第5出力ポート137から管理装置等の外部装置に供給する外部情報信号を外部情報端子71に出力する第4ドライバ138dが設けられている。
第1ドライバ138aには、32Vで動作するソレノイドを駆動できるようにするため、電源電圧としてDC32Vが電源装置400から供給される。また、一括表示装置50のセグメント線を駆動する第2ドライバ138bには、DC12Vが供給される。デジット線を駆動する第3ドライバ138cは、表示データに応じたデジット線を電流で引き抜くためのものであるため、電源電圧は12V又は5Vのいずれであってもよい。
12Vを出力する第2ドライバ138bによりセグメント線を介してLEDのアノード端子に電流を流し込み、接地電位を出力する第3ドライバ138cによりカソード端子よりデジット線を介して電流を引き抜くことで、ダイナミック駆動方式で順次選択されたLEDに電源電圧が流れて点灯される。外部情報信号を外部情報端子71に出力する第4ドライバ138dは、外部情報信号に12Vのレベルを与えるため、DC12Vが供給される。なお、バッファ133や第2出力ポート134、第1ドライバ138a等は、遊技制御装置100の出力部130、すなわち、主基板ではなく、中継基板70側に設けるようにしてもよい。
さらに、出力部130には、外部の検査装置500へ各遊技機の識別コードやプログラムなどの情報を送信するためのフォトカプラ139が設けられている。フォトカプラ139は、遊技用マイコン111が検査装置500との間でシリアル通信によってデータの送受信を行えるように双方通信可能に構成されている。なお、かかるデータの送受信は、通常の汎用マイクロプロセッサと同様に遊技用マイコン111が有するシリアル通信端子を利用して行われるため、入力ポート122,123,124のようなポートは設けられていない。
さらに、出力部130には、第2出力ポート134から出力されるシリアルデータ(制御用データ、点灯パターンデータ、キャラクタコード(文字コード)など)を受けて、性能表示装置152(状態表示装置)を駆動するドライバ150が設けられている。本実施形態では、性能表示装置152は、複数(4つ)の7セグメント型(ドットDpを含めると8セグメント型)の表示器(LEDランプ)からなり、ドライバ150はLEDドライバであるが、これに限られるものではない。
性能表示装置152は、遊技制御装置100(主基板)上に設けられるものであるが、他の場所に設けられてもよい。例えば、性能表示装置152は、表示用確率設定値や、性能表示として、役物比率や出玉率や排出球数を表示可能である。
ここで、排出球数は、遊技領域32から排出された遊技球の数(アウト球数とも呼ぶ)であり、入賞口を通過した遊技球の数(入賞数)とアウト口30bを通過した遊技球の数との合計である。排出球数は、アウト球検出スイッチ74の信号などをカウント(計数)することにより取得できる。本実施形態では、入賞口には、一般入賞口35、始動入賞口36(第1始動入賞口、始動口1)、普通変動入賞装置37(第2始動入賞口、始動口2)、及び、特別変動入賞装置39(大入賞口)が含まれる。
出玉率は、排出球数(或は発射球数)に対する賞球数の合計の比率(割合)であり、(獲得球数÷排出球数)×100(%)で計算される。即ち、出玉率は、排出球数100個当りの獲得球数(賞球数の合計)となる。
例えば、役物比率は、所定期間(例えば、遊技機10の電源投入から現在まで)に入賞口に入賞したことで得られた全賞球数(賞球の合計数)のうち、大当り状態中に大入賞口に入賞したことで得られた賞球数(役物別獲得球数)の割合(%)(=いわゆる連続役物比率)である。なお、役物比率は、全賞球数のうち、大入賞口に入賞したことで得られた賞球数(大当り状態中と小当り状態中)の割合(=大入賞口比率)でもよいし、或は、大入賞口及び普通変動入賞装置37(第2始動入賞口)に入賞したことで得られた賞球数の割合(=一般的に使用されるいわゆる役物比率(全役物比率))でもよい。
〔演出制御装置〕
次に、図4を用いて、演出制御装置300(サブ基板)の構成について説明する。図4は、遊技機10の演出制御系のブロック図である。
演出制御装置300は、遊技用マイコン111と同様にアミューズメントチップ(IC)からなる主制御用マイコン(CPU)311と、主制御用マイコン311からのコマンドやデータに従って表示装置41への映像表示のための画像処理を行うグラフィックプロセッサとしてのVDP(Video Display Processor)312と、各種のメロディや効果音などをスピーカ19から再生させるため音の出力を制御する音源LSI314を備えている。
主制御用マイコン311には、CPUが実行するプログラムや各種データを格納したPROM(プログラマブルリードオンリメモリ)からなるプログラムROM321、作業領域を提供するRAM322、停電時に電力が供給されなくとも記憶内容を保持可能なFeRAM323、現在の日時(年月日や曜日、時刻など)を示す情報を生成する計時手段をなすRTC(リアルタイムクロック)338が接続されている。なお、主制御用マイコン311の内部にも作業領域を提供するRAMが設けられている。
また、主制御用マイコン311にはWDT(ウォッチドッグ・タイマ)回路324が接続されている。主制御用マイコン311は、遊技用マイコン111からのコマンドを解析し、演出内容を決定してVDP312に出力映像の内容を指示したり、音源LSI314への再生音の指示、装飾ランプの点灯、モータやソレノイドの駆動制御、演出時間の管理などの処理を実行する。
VDP312には、作業領域を提供するRAM312aや、画像を拡大、縮小処理するためのスケーラ312bが設けられている。また、VDP312にはキャラクタ画像や映像データが記憶された画像ROM325や、画像ROM325から読み出されたキャラクタなどの画像データを展開したり加工したりするのに使用される超高速なVRAM(ビデオRAM)326が接続されている。
特に限定されるわけではないが、主制御用マイコン311とVDP312との間は、パラレル方式でデータの送受信が行われるように構成されている。パラレル方式でデータを送受信することで、シリアルの場合よりも短時間にコマンドやデータを送信することができる。
VDP312から主制御用マイコン311へは、表示装置41の映像とガラス枠15や遊技盤30に設けられている装飾ランプの点灯を同期させるための垂直同期信号VSYNC、データの送信タイミングを与える同期信号STSが入力される。なお、VDP312から主制御用マイコン311へは、VRAMへの描画の終了等処理状況を知らせるため割込み信号INT0~n及び主制御用マイコン311からのコマンドやデータの受信待ちの状態にあることを知らせるためのウェイト信号WAITなども入力される。
演出制御装置300には、LVDS(小振幅信号伝送)方式で表示装置41に送信する映像信号を生成する信号変換回路313が設けられている。VDP312から信号変換回路313へは、映像データ、水平同期信号HSYNC及び垂直同期信号VSYNCが入力されるようになっており、VDP312で生成された映像は、信号変換回路313を介して表示装置41に表示される。
音源LSI314には音声データが記憶された音声ROM327が接続されている。主制御用マイコン311と音源LSI314は、アドレス/データバス340を介して接続されている。また、音源LSI314から主制御用マイコン311へは割込み信号INTが入力されるようになっている。演出制御装置に300には、ガラス枠15に設けられた上スピーカ19a及び前面枠12に設けられた下スピーカ19bを駆動するオーディオパワーアンプなどからなるアンプ回路337が設けられており、音源LSI314で生成された音声はアンプ回路337を介して上スピーカ19a及び下スピーカ19bから出力される。
また、演出制御装置300には、遊技制御装置100から送信されるコマンドを受信するインタフェースチップ(コマンドI/F)331が設けられている。コマンドI/F331を介して、遊技制御装置100から演出制御装置300に送信された飾り特図保留数コマンド、飾り特図コマンド、変動コマンド、停止情報コマンド等を、演出制御指令信号(演出コマンド)として受信する。遊技制御装置100の遊技用マイコン111はDC5Vで動作し、演出制御装置300の主制御用マイコン311はDC3.3Vで動作するため、コマンドI/F331には信号のレベル変換の機能が設けられている。
また、演出制御装置300には、遊技盤30(センターケース40を含む)に設けられているLED(発光ダイオード)を有する盤装飾装置46を駆動制御する盤装飾LED制御回路332、ガラス枠15に設けられているLED(発光ダイオード)を有する枠装飾装置(例えば枠装飾装置18等)を駆動制御する枠装飾LED制御回路333、遊技盤30(センターケース40を含む)に設けられている盤演出装置44(例えば表示装置41における演出表示と協働して演出効果を高める可動役物等)を駆動制御する盤演出可動体制御回路334が設けられている。なお、盤装飾装置46には、前述のランプ表示装置80が含まれてよい。
ランプやモータ及びソレノイドなどを駆動制御するこれらの制御回路332~334は、アドレス/データバス340を介して主制御用マイコン311と接続されている。なお、ガラス枠15に設けられているモータ等の枠演出装置を駆動制御する枠演出可動体制御回路を備えていてもよい。
さらに、演出制御装置300には、ガラス枠15に設けられた演出ボタン25に内蔵されている演出ボタンスイッチ25a、演出ボタン25の表面に設けられているタッチパネル25b、盤演出装置44内のモータの初期位置等を検出する演出役物スイッチ47(演出モータスイッチ)のオン/オフ状態を検出して主制御用マイコン311に検出信号を入力する機能や、演出制御装置300に設けられた音量調節スイッチ335の状態を検出して主制御用マイコン311に検出信号を入力するスイッチ入力回路336が設けられている。
電源装置400の通常電源部410は、前述のような構成を有する演出制御装置300やそれによって制御される電子部品に対して所望のレベルの直流電圧を供給するため、モータやソレノイドを駆動するためのDC32V、液晶パネルからなる表示装置41、モータやLEDを駆動するためのDC12V、コマンドI/F331の電源電圧となるDC5Vの他に、モータやLED、スピーカを駆動するためのDC15Vの電圧を生成するように構成されている。
さらに、主制御用マイコン311として、3.3Vあるいは1.2Vのような低電圧で動作するLSIを使用する場合には、DC5Vに基づいてDC3.3VやDC1.2Vを生成するためのDC-DCコンバータが演出制御装置300に設けられる。なお、DC-DCコンバータは通常電源部410に設けるようにしてもよい。
電源装置400の制御信号生成部430により生成されたリセット信号は、主制御用マイコン311に供給され、当該デバイスをリセット状態にする。また、主制御用マイコン311から出力される形で、VDP312(VDPRESET信号)、音源LSI314、スピーカを駆動するアンプ回路337(SNDRESET信号)、ランプやモータなどを駆動制御する制御回路332~334(IORESET信号)に供給され、これらをリセット状態にする。また、演出制御装置300には遊技機10の各所を冷却する冷却FAN45が接続され、演出制御装置300の電源が投入された状態では冷却FAN45が駆動するようにされている。
次に、これらの制御回路において行われる遊技制御について説明する。遊技制御装置100の遊技用マイコン111のCPU111aは、普図始動ゲート34に備えられたゲートスイッチ34aからの遊技球の検出信号の入力に基づき、普図の当り判定用乱数値を抽出してROM111bに記憶されている判定値と比較し、普図変動表示ゲームの当り外れを判定する。
そして、普図表示器53に、識別図柄を所定時間変動表示した後、停止表示する普図変動表示ゲームを表示する。普図変動表示ゲームの結果が当りの場合は、普図表示器53に特別の結果態様を表示するとともに、普電ソレノイド37cを動作させ、普通変動入賞装置37の可動部材37bを所定時間(例えば、0.3秒間)前述のように開放する制御を行う。すなわち、遊技制御装置100が、変換部材(可動部材37b)の変換制御を行う変換制御実行手段をなす。なお、普図変動表示ゲームの結果がはずれの場合は、普図表示器53にはずれの結果態様を表示する制御を行う。
また、始動入賞口36に備えられた始動口1スイッチ36aからの遊技球の検出信号の入力に基づき始動入賞(始動記憶)を記憶し、始動記憶に基づき、特図1変動表示ゲームの大当り判定用乱数値を抽出してROM111bに記憶されている判定値と比較し、特図1変動表示ゲームの当り外れを判定する。
また、普通変動入賞装置37に備えられた始動口2スイッチ37aからの遊技球の検出信号の入力に基づき始動記憶を記憶し、始動記憶に基づき、特図2変動表示ゲームの大当り判定用乱数値を抽出してROM111bに記憶されている判定値と比較し、特図2変動表示ゲームの当り外れを判定する。
そして、遊技制御装置100のCPU111aは、特図1変動表示ゲームや特図2変動表示ゲームの判定結果を含む制御信号(演出制御コマンド)を、演出制御装置300に出力する。そして、特図1表示器51や特図2表示器52に、識別図柄を所定時間変動表示した後、停止表示する特図変動表示ゲームを表示する。すなわち、遊技制御装置100が、遊技領域32を流下する遊技球の始動入賞領域(第1始動入賞口36、普通変動入賞装置37)への入賞に基づき変動表示ゲームの進行制御を行う遊技制御手段をなす。
また、演出制御装置300は、遊技制御装置100からの制御信号に基づき、表示装置41で特図変動表示ゲームに対応した飾り特図変動表示ゲームを表示する。さらに、演出制御装置300は、遊技制御装置100からの制御信号に基づき、演出状態の設定や、スピーカ19a,19bからの音の出力、各種LEDの発光を制御する処理等を行う。すなわち、演出制御装置300が、遊技(変動表示ゲーム等)に関する演出を制御する演出制御手段をなす。
そして、遊技制御装置100のCPU111aは、特図変動表示ゲームの結果が当りの場合は、特図1表示器51や特図2表示器52に特別結果態様を表示するとともに、特別遊技状態を発生させる。特別遊技状態を発生させる処理においては、CPU111aは、例えば、大入賞口ソレノイド39bにより特別変動入賞装置39の開閉扉39cを開放させ、大入賞口内への遊技球の流入を可能とする制御を行う。
そして、大入賞口に所定個数(例えば、10個)の遊技球が入賞するか、大入賞口の開放から所定の開放可能時間(例えば、27秒又は0.05秒)が経過するかのいずれかの条件が達成されるまで大入賞口を開放することを1ラウンド(R)とし、これを所定ラウンド回数(例えば、15回、11回又は2回)継続する(繰り返す)制御(サイクル遊技)を行う。すなわち、遊技制御装置100が、停止結果態様が特別結果態様となった場合に、大入賞口を開閉する制御を行う大入賞口開閉制御手段をなす。また、特図変動表示ゲームの結果がはずれの場合は、特図1表示器51や特図2表示器52にはずれの結果態様を表示する制御を行う。
また、遊技制御装置100は、特図変動表示ゲームの結果態様に基づき、特別遊技状態の終了後に、遊技状態として高確率状態を発生可能である。高確率状態(確変状態)は、特図変動表示ゲームにて当り結果となる確率が、通常確率状態と比較して高い状態である。また、特図1変動表示ゲーム及び特図2変動表示ゲームのどちらの特図変動表示ゲームの結果態様に基づき高確率状態となっても、特図1変動表示ゲーム及び特図2変動表示ゲームの両方が高確率状態となる。
また、遊技制御装置100は、特図変動表示ゲームの結果態様に基づき、特別遊技状態の終了後に、遊技状態として時短状態(特定遊技状態)を発生可能である。時短状態においては、普図変動表示ゲーム及び普通変動入賞装置37を時短動作状態とする制御を行い、普通変動入賞装置37が通常動作状態である場合よりも、単位時間当りの普通変動入賞装置37の開放時間が実質的に多くなるように制御するため、普電サポート状態となる。なお、潜伏確変状態を除く高確率状態(通常の確変状態)でも、重複して時短状態にして普電サポートを実行する。
例えば、時短状態においては、前述の普図変動表示ゲームの実行時間(普図変動時間)を通常の第1変動表示時間よりも短い第2変動表示時間にする時間短縮変動が可能である(例えば、10000msecが1000msec)。なお、時短状態においては、特図変動表示ゲームの実行時間(特図変動時間)も通常より短縮され、特図変動表示ゲームの時間短縮変動も実行する。
また、時短状態においては、普図変動表示ゲームの結果を表示する普図停止時間を第1停止時間(例えば1604msec)よりも短い第2停止時間(例えば704msec)となるように制御することが可能である。
また、時短状態においては、普図変動表示ゲームが当り結果となって普通変動入賞装置37が開放される場合に、開放時間(普電開放時間)が通常状態の第1開放時間(例えば100msec)よりも長い第2開放時間(例えば1352msec)となるように制御することが可能である。
また、時短状態においては、普図変動表示ゲームの1回の当り結果に対して、普通変動入賞装置37の開放回数(普電開放回数)を第1開放回数(例えば2回)よりも多い回数(例えば、4回)の第2開放回数に設定することが可能である。また、時短状態においては、普図変動表示ゲームの当り結果となる確率(普図確率)を通常動作状態である場合の通常確率(低確率)よりも高い高確率とすることが可能である。
時短状態においては、普図変動時間、普図停止時間、普電開放回数、普電開放時間、普図確率のいずれか一つ又は複数を変化させることで普通変動入賞装置37を開状態に状態変換する時間を通常よりも延長するようにする。これにより、時短状態では、通常遊技状態よりも普通変動入賞装置37への入賞が容易化して、単位時間当たりの特図変動表示ゲームの実行回数が通常遊技状態よりも増加可能である。また、変化させるものが異なる複数種類の時短状態を設定することも可能である。また、通常動作状態において可動部材37bを開放しないように設定(普図確率が0)してもよい。また、当りとなった場合に第1開放態様と第2開放態様のいずれかを選択するようにしてもよい。この場合、第1開放態様と第2開放態様の選択確率を異ならせてもよい。また、高確率状態と時短状態は、それぞれ独立して発生可能であり、両方を同時に発生することも可能であるし一方のみを発生させることも可能である。
〔電源投入時の移行状態〕
前述のように、電源投入時のRAM初期化スイッチ112及び設定キースイッチ93のオンオフ状態によって、4つの状態(モード)へ移行する。
電源投入時に、RAM初期化スイッチ112と設定キースイッチ93とがオンにされている場合には、確率設定値(設定値)を変更可能な設定可変状態(設定変更状態、設定変更モード)に移行する(図5BのA1027-A1036と図6B参照)。
次に、電源投入時に、設定キースイッチ93がオンにされているがRAM初期化スイッチ112がオフの場合には、確率設定値を確認可能な設定確認状態(設定確認モード)に移行する(図5BのA1031-A1036と図6B参照)。
また、電源投入時に、設定キースイッチ93がオフであるがRAM初期化スイッチ112がオンにされている場合には、RAM初期化状態(RAMクリアモード)に移行し、RAM初期化処理(RAMクリア処理)が実行されて、RAM111cが初期化される(図5BのA1042-1044参照)。
電源投入時に、設定キースイッチ93とRAM初期化スイッチ112とがオフである場合には、通常復電状態(通常復電モード)に移行し、単に復電されるだけの状態になる。
[遊技制御装置の制御]
以下、このような遊技を行う遊技機の制御について説明する。まず、上記遊技制御装置100の遊技用マイクロコンピュータ(遊技用マイコン)111によって実行される制御について説明する。遊技用マイコン111による制御処理は、主に図5A及び図5Bに示すメイン処理と、所定時間周期(例えば4msec)で行われる図9に示すタイマ割込み処理とからなる。
〔メイン処理(遊技制御装置)〕
まず、メイン処理について説明する。図5A及び図5Bは、遊技制御装置100によるメイン処理の手順を示すフローチャートである。メイン処理は、電源が投入されることで開始される。なお、遊技制御装置100が実行する処理のフローチャートにおいて、ステップの符号(番号)は「A****」と表されている。
図5Aに示すように、遊技制御装置100は、メイン処理を開始すると、まず、割込みを禁止する処理を実行する(A1001)。さらに、割込み発生時にレジスタ等の値を退避する領域の先頭アドレスであるスタックポインタを設定するスタックポインタ設定処理を実行する(A1002)。
続いて、使用するレジスタバンクとしてレジスタバンク0を指定し(A1003)、所定のレジスタにRAM先頭アドレスの上位アドレスをセットする(A1004)。例えば、RAMのアドレスが0000h~01FFhの範囲である場合に、上位アドレスとして00hをセットする。
次に、遊技制御装置100は、発射禁止の信号を出力して発射許可信号を禁止状態に設定する(A1005)。発射許可信号は遊技制御装置100と払出制御装置200の少なくとも一方が発射禁止の信号を出力している場合に禁止状態に設定され、遊技球の発射が禁止されるようになっている。その後、遊技制御装置100は、設定キースイッチ93とRAM初期化スイッチ112の状態を読み込む(A1006)。即ち、設定キースイッチ93とRAM初期化スイッチ112からの信号を読み込む。
さらに、遊技制御装置100は、電源ディレイタイマを設定する(A1007)。電源ディレイタイマに所定の初期値を設定することにより、主制御手段をなす遊技制御装置100からの指示に従い種々の制御を行う従制御手段(例えば、払出制御装置200や演出制御装置300)のプログラムが正常に起動するまで待機するための待機時間(例えば3秒)が設定される。これにより、電源投入の際に仮に遊技制御装置100が先に立ち上がって従制御装置(例えば払出制御装置200や演出制御装置300)が立ち上がる前にコマンドを従制御装置に送ってしまい、従制御装置がコマンドを取りこぼすことを回避することができる。すなわち、遊技制御装置100が、電源投入時において、主制御手段(遊技制御装置100)の起動を遅らせて従制御装置(払出制御装置200、演出制御装置300等)の起動を待つための所定の待機時間を設定する待機手段をなす。
また、電源ディレイタイマの計時は、RAMの正当性判定(チェックサム算出)の対象とならない記憶領域(正当性判定対象外のRAM領域又はレジスタ等)を用いて行われる。これにより、RAM領域のチェックサム等のチェックデータを算出する際に、一部のRAM領域を除外して算出する必要がないため電源投入時の制御が複雑になることを防止することができる。
なお、待機時間の開始前に設定キースイッチ93とRAM初期化スイッチ112の状態を読み込むことで、設定キースイッチ93とRAM初期化スイッチ112の操作を確実に検出できる。すなわち、待機時間の経過後に設定キースイッチ93とRAM初期化スイッチ112の状態を読み込むようにすると、待機時間の経過を待ってから設定キースイッチ93とRAM初期化スイッチ112を操作したり、電源投入から待機時間の経過まで設定キースイッチ93とRAM初期化スイッチ112を操作し続けたりする必要がある。しかし、待機時間の開始前に状態を読み込むことで、このような煩わしい操作を行わなくても、電源投入時に行った設定キースイッチ93とRAM初期化スイッチ112の操作が受け付けられないような事態を防止できる。
電源ディレイタイマを設定すると(A1007)、遊技制御装置100は、待機時間の計時と、待機時間中における停電の発生を監視する処理とを実行する(A1008からA1010)。
停電監視処理が開始されると、遊技制御装置100は、まず、電源装置400から入力されている停電監視信号をポート及びデータバスを介して読み込むなどして、停電が発生しているか否か判定する(A1008)。停電が発生している場合に(A1008の結果が「Y」)、遊技機の電源が遮断されるまで待機する。
遊技制御装置100は、停電が発生していない場合には(A1008の結果が「N」)、電源投入ディレイタイマを-1更新し(A1009)、タイマの値が0であるか否かを判定する(A1010)。タイマの値が0でない場合(A1010の結果が「N」)、すなわち、待機時間が終了していない場合には、ステップA1008の処理に戻る。
すなわち、遊技制御装置100が、所定の待機時間において停電の発生を監視する停電監視手段をなす。これにより、主制御手段をなす遊技制御装置100の起動を遅らせている期間において発生した停電に対応することが可能となり、電源投入時における不具合に適切に対処することができる。なお、待機時間の終了まではRAMへのアクセスが許可されておらず、前回の電源遮断時の記憶内容が保持されたままとなっているため、ここでの停電発生時にはバックアップの処理等は行う必要がない。したがって、待機時間中に停電が発生してもRAMのバックアップを取る必要がなく、制御の負担を軽減することができる。
一方、遊技制御装置100は、タイマの値が0である場合(A1010の結果が「Y」)、すなわち、待機時間が終了した場合には、RAMやEEPROM等の読出し書込み可能なRWM(リードライトメモリ)のアクセスを許可し(A1011)、全出力ポートにオフデータを出力(出力が無い状態に設定)する(A1012)。
次に、遊技制御装置100は、シリアルポート(遊技用マイコン111に予め搭載されているポートで、本実施形態では、演出制御装置300や払出制御装置200との通信に使用)を設定する(A1013)。
さらに、ここで、性能表示装置152(状態表示装置)を駆動するドライバ150を初期設定してもよい。遊技制御装置100は、初期設定の内容に対応する制御用データを含むコマンドを、第2出力ポート134(シリアル通信回路)の送信バッファに書き込んでドライバ150に送信する。例えば、遊技制御装置100は、初期設定においてデューティ比を設定する。デューティ比は、性能表示装置152の各LED(各セグメント)の明るさに対応する。遊技制御装置100は、初期設定において、性能表示装置152の使用桁数を設定する。本実施形態では、使用桁数は4である。
次に、遊技制御装置100は、遊技用マイコン111(クロックジェネレータ)内のタイマ割込み信号及び乱数更新トリガ信号(CTC)を発生するCTC(Counter/Timer Circuit)回路を起動する(A1014)。なお、CTC回路は、遊技用マイコン111内のクロックジェネレータに設けられている。クロックジェネレータは、発振回路113からの発振信号(原クロック信号)を分周する分周回路と、分周された信号に基づいてCPU111aに対して所定周期(例えば、4ミリ秒)のタイマ割込み信号及び乱数生成回路に供給する乱数更新のトリガを与える信号CTCを発生するCTC回路とを備えている。
続いて、遊技制御装置100は、RAM(ここではRAM111c)の異常を示すRAM異常フラグをセットする(A1015)。ここでは、一旦、異常前提のフラグを所定のレジスタにセットしておく。
次に、遊技制御装置100は、RWM内の停電検査領域1の値が正常な停電検査領域チェックデータであるか否かを判定する(A1016)。そして、正常であれば(A1016の結果が「Y」)、RWM内の停電検査領域2の値が正常な停電検査領域チェックデータであるか否かを判定する(A1017)。
さらに、遊技制御装置100は、停電検査領域2の値が正常であれば(A1017の結果が「Y」)、RWM内の所定領域(例えば遊技制御用作業領域)のチェックサムを算出するチェックサム算出処理を実行し(A1018)、算出されたチェックサムと電源断時のチェックサムが一致するか否かを判定する(A1019)。チェックサムが一致する場合には(A1019の結果が「Y」)、RAMは正常であり、RAMの異常を示すRAM異常フラグをクリアする(A1020)。その後、ステップA1021の処理に移行する。
また、遊技制御装置100は、停電検査領域のチェックデータが正常なデータでないと判定された場合(A1016の結果が「N」、又は、A1017の結果が「N」)、チェックサムが一致しない場合には(A1019の結果が「N」)、RAM異常フラグをクリアすることなく、ステップA1021の処理に移行する。
次に、遊技制御装置100は、設定キースイッチ93及びRAM初期化スイッチ112の両スイッチがオンであるか否かを判定する(A1021)。遊技制御装置100は、両スイッチがオンである場合に(A1021の結果が「Y」)、設定可変状態(設定変更モード)に移行し、ステップA1027-A1037の確率設定変更中の処理を実行する。
遊技制御装置100は、設定キースイッチ93及びRAM初期化スイッチ112の少なくとも一方がオフである場合に(A1021の結果が「N」)、RAM(ここではRAM111c)の異常を示すRAM異常フラグがセットされているか否か判定する(A1022)。RAM異常フラグがセットされていない場合に(A1022の結果が「N」)、確率設定変更中フラグがセットされているか否かを判定する(A1023)。確率設定変更中フラグがセットされていない場合に(A1023の結果が「N」)、ステップA1031-A1037の確率設定確認中(設定確認状態中、設定確認モード中)の処理、ステップA1041-1044のRAM初期化処理(RAMクリア処理)、又は、ステップA1041、A1045、A1046の通常の電源投入時(電源復旧時)の処理を実行する。
遊技制御装置100は、確率設定変更中フラグがセットされている場合に(A1023の結果が「Y」)、遊技制御装置100(主基板、メイン基板)に異常があったことを報知するメイン異常エラー報知のコマンドを演出制御装置300に送信する(A1024)。メイン異常エラー報知のコマンドを受信した演出制御装置300は、遊技制御装置100の異常があったことを報知する。
続いて、遊技制御装置100は、遊技停止時の7セグ表示データ(図9(C)の「E1」のエラー表示のデータ)を性能表示装置152で表示するために性能表示装置152のドライバ150に出力する(A1025)。そして、外部装置(遊技場内部管理装置(ホールコンピュータ)や情報収集端末など)に異常を知らせるためのセキュリティ信号のオンデータを外部情報端子71に出力する(A1026)。なお、ここで、大当りに関する情報がRAM111cに残っている場合でも、大当り信号など外部情報端子71への他の信号はオフ状態に維持される。その後、ステップA1025とA1026の処理を繰り返して待機し、再度、設定変更の操作(設定キースイッチ93及びRAM初期化スイッチ112の両方のオン操作)をして電源が投入されるのを待つ。なお、ステップA1025とA1026の処理を繰り返して待機して待機している間、割込みは禁止されたままであり(A1001)、特図1、2ゲーム処理や普図ゲーム処理を実行可能なタイマ割込み処理(図7)が実行できないため、遊技(特図変動表示ゲーム、普図変動表示ゲーム)は実行できない。
このように、設定変更の操作(設定キースイッチ93及びRAM初期化スイッチ112の両方のオン操作)を実行していないのに、確率設定変更中フラグがセットされている場合に異常があったとして、A1024-A1026の処理を実行する。例えば、確率設定変更中(設定変更が完了する前)に電源がオフして再起動した場合などに、設定変更の操作を実行していないのに、確率設定変更中フラグがセットされることがある。
一方、遊技制御装置100は、RAM異常フラグがセットされている場合も(A1022の結果が「Y」)、遊技制御装置100(メイン基板)に異常があったことを報知するメイン異常エラー報知のコマンドを演出制御装置300に送信し(A1024)、遊技停止時の7セグ表示データ(図9(C)の「E1」のエラー表示のデータ)を性能表示装置152のドライバ150に出力し(A1025)、外部装置にRAM異常を知らせるために、セキュリティ信号のオンデータを外部情報端子71に出力する(A1026)。なお、前述と同様に、大当りに関する情報がRAM111cに残っている場合でも、大当り信号など外部情報端子71への他の信号はオフ状態に維持される。その後、ステップA1025とA1026の処理を繰り返して待機する。
遊技制御装置100は、設定キースイッチ93及びRAM初期化スイッチ112の両スイッチがオンである場合に(A1021の結果が「Y」)、確率設定変更中(設定可変状態中)の処理を開始して、まず、RAM異常フラグがセットされているか否かを判定する(A1027)。RAM異常フラグがセットされている場合に(A1027の結果が「Y」)、確率設定値が正しいものであるか不明であるため、RAM111cの確率設定値領域に記憶されている確率設定値をクリアし初期値(例えば最低設定値「1」)にしてから(A1028)、確率設定変更中であることを示す確率設定変更中フラグをセットする(A1029)。RAM異常フラグがセットされていない場合に(A1027の結果が「N」)、確率設定値をクリアせずに、確率設定変更中フラグをセットする(A1029)。次に、確率設定変更中のコマンドを演出制御装置300(演出制御基板)に送信し(A1030)、ステップA1034の処理に移行する。なお、確率設定変更中のコマンドを受信した演出制御装置300は、確率設定変更中であることを表示装置41などにおいて報知する。
遊技制御装置100は、設定キースイッチ93及びRAM初期化スイッチ112の少なくとも一方がオフであり(A1021の結果が「N」)、RAM異常フラグがセットされておらず(A1022の結果が「N」)、且つ、確率設定変更中フラグがセットされていない場合に(A1023の結果が「N」)、設定キースイッチ93がオンであるか否かを判定する(A1031)。設定キースイッチ93がオンである場合に(A1031の結果が「Y」)、RAM初期化スイッチ112はオフということになり、確率設定確認中(設定確認状態中)の処理が開始して、確率設定確認中であることを示す確率設定確認中フラグをセットする(A1032)。そして、確率設定確認中のコマンドを演出制御装置300(演出制御基板)に送信し(A1033)、ステップA1034の処理に移行する。なお、確率設定変更中のコマンドを受信した演出制御装置300は、確率設定確認中であることを表示装置41などにおいて報知する。
ステップA1030又はステップA1033の後に、遊技制御装置100は、確率設定変更中と確率設定確認中の共通の処理として、ステップA1034からA1040の処理を実行する。
遊技制御装置100は、まず、確率設定変更中と確率設定確認中においてセキュリティ信号を出力するために、セキュリティ信号制御タイマ領域に128ms(所定時間)をセーブする(A1034)。なお、セキュリティ信号制御タイマのカウントとセキュリティ信号の出力は、後述の確率設定変更/確認処理(図6B)において実行されるが、確率設定変更又は確率設定確認が早期に終了した場合には、残りのセキュリティ信号制御タイマのカウントとセキュリティ信号の出力は、外部情報編集処理(A1319)で実行される。確率設定変更中と確率設定確認中において、少なくとも50msは、セキュリティ信号は出力される。
次に、遊技制御装置100は、割込みを許可する(A1035)。これにより、タイマ割込み処理(図7)が実行可能となる。そして、設定キースイッチ93がオフであるか否かを判定する(A1036)。設定キースイッチ93がオンである場合に(A1036の結果が「N」)、停電が発生しているか否かを判定する(A1037)。停電が発生していない場合に(A1037の結果が「N」)、ステップA1036の処理に戻る。一方、停電が発生している場合に(A1037の結果が「Y」)、ステップA1055-A1061の停電発生時の処理を実行する。
このように、設定キースイッチ93がオンであり、停電が発生していない限り、確率設定値を変更可能な設定可変状態(設定変更状態、設定変更モード)、又は、確率設定値を確認可能な設定確認状態(設定確認モード)が継続される。
一方、遊技制御装置100は、設定キースイッチ93がオフである場合に(A1036の結果が「Y」)、割込みを禁止し(A1038)、報知終了のコマンドを演出制御装置300(演出制御基板)に送信する(A1039)。なお、報知終了のコマンドを受信した演出制御装置300は、確率設定確認中であることの報知又は確率設定変更中であることの報知を終了する。
次に、遊技制御装置100は、確率設定変更中フラグがセットされているか否か、即ち、これまで確率設定変更中であったか否かを判定する(A1040)。確率設定変更中フラグがセットされている場合に(A1040の結果が「Y」)、即ち、これまで確率設定変更中であった場合に、ステップA1042-A1044のRAM初期化処理(後述)を実行する。一方、確率設定変更中フラグがセットされていない場合に(A1040の結果が「N」)、即ち、これまで確率設定確認中であった場合に、ステップA1045以降の電源投入時(電源復旧時)の通常の処理を実行する。
遊技制御装置100は、設定キースイッチ93がオフである場合に(A1031の結果が「N」)、RAM初期化スイッチ112がオンであるか否かを判定する(A1041)。RAM初期化スイッチ112がオンである場合に(A1041の結果が「Y」)、RAM111cにおいて、確率設定値を記憶するための確率設定値領域以外のRAM領域を0クリアする(A1042)。即ち、確率設定値領域で記憶されている確率設定値を除いて、RAM111cに記憶された遊技情報は0クリアされる。さらに、前述の確率設定変更中フラグもここでクリアされる。また、ここで、確率設定値領域の他に、スタック領域や未使用領域をクリアしない構成や、性能情報やその表示(性能表示)に関連するワークエリア、スタック領域をクリアしない構成も可能である。なお、性能情報は、入賞により得られた賞球数に基づいて導出されるもの、例えば、出玉率、ベース値(通常遊技状態における出玉率)、役物比率の他、排出球数などである。
次に、遊技制御装置100は、初期化すべき領域にRAM初期化時の初期値をセーブする(A1043)。そして、RAM初期化時のコマンドを演出制御装置300(演出制御基板)に送信し(A1044)、ステップA1047の処理に移行する。
一方、遊技制御装置100は、RAM初期化スイッチ112がオフである場合に(A1041の結果が「N」)、設定キースイッチ93とRAM初期化スイッチ112が両方ともオフであるため、通常の電源投入時(電源復旧時)の処理を開始し、停電復旧処理を実行する(A1045)。例えば、初期化すべき領域に停電復旧時(復電時)の初期値をセーブする。また、前述の確率設定確認中フラグもここでクリアされる。次に、後述の特図ゲーム処理を合理的に実行するために用意されている処理番号に対応する停電復旧時のコマンドを演出制御装置300(演出制御基板)に送信し(A1046)、ステップA1047の処理に移行する。
なお、ステップA1044の処理で送信されるRAM初期化時のコマンド及びステップA1046の処理で送信される停電復旧時のコマンドには、遊技機の種類を示す機種指定コマンド、特図1、2の保留数を示す飾り特図1保留数コマンド及び飾り特図2保留数コマンド、確率の状態(高確率状態又は低確率状態)や時短状態の有無を示す確率情報コマンド、所定の演出モードで特図変動表示ゲームが実行された回数を示す演出回数情報コマンド、電源投入されたこと示す停電復旧コマンドが含まれる。
さらに、RAM初期化時のコマンド及び停電復旧時のコマンドには、遊技機10の確率設定値(設定値)の情報である設定値情報(設定情報)を示す設定値情報コマンド(確率設定値情報コマンド)が含まれる。遊技制御装置100は、電源の復旧(投入)時に、一度だけ設定値情報コマンドを演出制御装置300に送信するだけでよく、以降、演出制御装置300は自身が記憶した設定値情報を参照して演出制御を行える。
なお、RAM初期化時のコマンドには、RAM初期化のコマンド(RAMクリアのコマンド)も含まれる。RAM初期化のコマンドを受信した演出制御装置300は、例えば、表示装置41に客待ちデモを表示し、盤装飾装置46等のLEDとスピーカの音でRAM初期化(RAMクリア)の報知を30秒間行う。また、停電復旧時のコマンドには、表示装置41の画面の表示内容を指定する画面指定のコマンドが含まれる。なお、画面指定のコマンドは、特図1、2について共に普段処理中では(変動中でも当り中でもないとき)、客待ちデモコマンドであり、それ以外なら復旧画面コマンドである。
ステップA1044又はステップA1046の後に、遊技制御装置100は、乱数生成回路を起動設定する(A1047)。具体的には、乱数生成回路内の所定のレジスタ(CTC更新許可レジスタ)に乱数生成回路を起動させるためのコード(指定値)の設定などがCPU111aによって行われる。また、乱数生成回路のハードウェアで生成されるハード乱数(ここでは大当り乱数)のビット転置パターンの設定も行われる。
ビット転置パターンとは、抽出した乱数のビット配置(上段のビット転置前の配置)を、予め定められた順で入れ替えて異なるビット配置(下段のビット転置後の配置)として格納する際の入れ替え方を定めるパターンである。
本実施形態では、ビット転置パターンに従い乱数のビットを入れ替えることで、乱数の規則性を崩すことができるとともに、乱数の秘匿性を高めることができる。なお、ビット転置パターンは、固定された単一のパターンであってもよいし、予め用意された複数のパターンから選択するようにしてもよい。また、ユーザーが任意に設定できるようにしてもよい。
その後、遊技制御装置100は、電源投入時の乱数生成回路内の所定のレジスタ(ソフト乱数レジスタ1~n)の値を抽出し、対応する各種初期値乱数(大当り図柄を決定する大当り図柄乱数の初期値(大当り図柄初期値乱数)、小当り図柄を決定する小当り図柄乱数の初期値(小当り図柄初期値乱数)(小当りがある場合のみ)、普図の当りを決定する当り乱数の初期値(当り初期値乱数)、転落抽選で使用する転落抽選乱数の初期値(転落抽選初期値乱数)等)のスタート値としてRWMの所定領域にセーブし(A1048)、割込みを許可する(A1049)。本実施形態で使用するCPU111a内の乱数生成回路においては、電源投入ごとにソフト乱数レジスタの初期値が変わるように構成されているため、この値を各種初期値乱数のスタート値(初期値)とすることで、ソフトウェアで生成される乱数の規則性を崩すことができ、遊技者による不正な乱数の取得を困難にすることができる。
続いて、遊技制御装置100は、各種初期値乱数の値を更新して乱数の規則性を崩すための初期値乱数更新処理を実行する(A1050)。なお、特に限定されるわけではないが、本実施形態においては、大当り乱数、大当り図柄乱数、当り乱数、転落抽選乱数は乱数生成回路において生成される乱数を使用して生成するように構成されている。ただし、大当り乱数はCPUの動作クロックと同等以上の速度のクロックを基にして更新される所謂「高速カウンタ」であり、大当り図柄乱数、当り乱数、転落抽選乱数はプログラムの処理単位であるタイマ割込み処理と同周期となるCTC出力(タイマ割込み処理のCTC(CTC0)とは別のCTC(CTC2))を基にして更新される「低速カウンタ」である。
また、大当り図柄乱数、当り図柄乱数、転落抽選乱数においては、乱数が一巡するごとに各々の初期値乱数(ソフトウェアで生成)を用いてスタート値を変更する所謂「初期値変更方式」を採用している。なお、前記各乱数は、+1あるいは1によるカウンタ式更新でもよいし、一巡するまで範囲内のすべての値が重複なくバラバラに出現するランダム式更新でもよい。つまり、大当り乱数はハードウェアのみで更新される乱数であり、大当り図柄乱数、当り乱数、転落抽選乱数はハードウェア及びソフトウェアで更新される乱数である。
続いて、遊技制御装置100は、割込みを禁止し(A1051)、性能情報やその表示(性能表示)を編集する性能表示編集処理を実行する(A1052)。ここで、性能情報(役物比率や出玉率など)を計算してよい。また、RAM異常フラグがレジスタにセットされていた場合に、性能情報やその表示(性能表示)に関連するワークエリア、スタック領域をクリアしてもよい(ステップA1042でクリアされていないなら)。その後、割込みを許可する(A1053)。これにより、タイマ割込み処理(図7)が実行可能となる。
次に、遊技制御装置100は、停電が発生しているか否かを判定する(A1054)。停電が発生していない場合に(A1054の結果が「N」)、ステップA1050の処理に戻る。これにより、停電が発生するまで、ステップA1050-A1054の処理が繰り返される。
停電が発生した場合に(A1054の結果が「Y」)、遊技制御装置100は、停電発生時の処理を開始し、一旦割込みを禁止し(A1055)、全出力ポートにオフデータを出力する(1056)。その後、停電検査領域1に停電検査領域チェックデータ1をセーブし(A1057)、停電検査領域2に停電検査領域チェックデータ2をセーブする(A1058)。さらに、RWMの電源遮断時のチェックサムを算出するチェックサム算出処理を実行し(A1059)、さらに、算出したチェックサムをセーブする(A1060)。最後に、RWMへのアクセスを禁止する処理を実行し(A1061)、遊技機の電源が遮断されるまで待機する。
このように、停電検査領域にチェックデータをセーブするとともに、電源遮断時のチェックサムを算出することで、電源の遮断の前にRWMに記憶されていた情報が正しくバックアップされているか否かを電源再投入時に判断することができる。
〔タイマ割込み処理〕
次に、タイマ割込み処理について説明する。図6Aは、タイマ割込み処理(割込み処理プログラム)の手順を示すフローチャートである。タイマ割込み処理は、クロックジェネレータ内のCTC回路で生成される周期的なタイマ割込み信号がCPU111aに入力されることで開始される。遊技用マイコン111においてタイマ割込みが発生すると、タイマ割込み処理が開始される。
タイマ割込み処理が開始されると、遊技制御装置100は、まず、使用するレジスタバンクとしてレジスタバンク1を指定し(A1301)、所定のレジスタにRAM先頭アドレスの上位アドレスをセットする(A1302)。タイマ割込み処理の開始時にメイン処理で使用するレジスタバンク0からレジスタバンク1に切り替えることで、メイン処理で使っているレジスタを退避したのと同等になる。なお、タイマ割込み処理が開始されると、自動的に割込み禁止状態になる。
次に、遊技制御装置100は、各種センサやスイッチからの入力や、信号の取り込み、すなわち、各入力ポートの状態を読み込む入力処理を実行する(A1303)。次に、確率設定変更中フラグと確率設定確認中フラグに基づいて、確率設定変更中又は確率設定確認中であるか否かを判定する(A1304)。確率設定変更中又は確率設定確認中である場合に(A1304の結果が「Y」)、確率設定値を変更又は確認するための確率設定変更/確認処理を実行する(A1305)。
遊技制御装置100は、確率設定変更中でも確率設定確認中でもない場合に(A1304の結果が「N」)、各種処理でセットされた出力データに基づき、ソレノイド(例えば大入賞口ソレノイド39b)等のアクチュエータの駆動制御やLEDの駆動制御(発光制御)などを行うための出力処理を実行する(A1306)。なお、メイン処理におけるステップA1005の処理で発射禁止の信号を出力した場合は、この出力処理が行われることで発射許可の信号が出力され、発射許可信号を許可状態に設定可能な状態とする。
次に、遊技制御装置100は、各種処理で送信バッファにセットされたコマンドを払出制御装置200に出力する払出コマンド送信処理を実行し(A1307)、さらに、乱数更新処理1(A1308)、乱数更新処理2(A1309)を実行する。その後、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39aから正常な信号の入力があるか否かの監視や、エラーの監視(前面枠やガラス枠が開放されていないかなど)を行う入賞口スイッチ/状態監視処理を実行する(A1310)。
次に、遊技制御装置100は、大入賞口で遊技球の異常排出が発生中であるか否かを判定する(A1311)。後述の異常排出監視処理(A1318)によって異常排出発生中フラグが設定された場合に、異常排出が発生中であると判定できる。異常排出が発生中である場合に(A1311の結果が「Y」)、ステップA1315以降の処理を実行する。
遊技制御装置100は、異常排出が発生中でない場合に(A1311の結果が「N」)、特図変動表示ゲームに関する処理を行う特図ゲーム処理を実行する(A1312)。なお、特図ゲーム処理の詳細については後述する。
次に、遊技制御装置100は、普図変動表示ゲームに関する処理を行う普図ゲーム処理を実行する(A1313)。遊技機10に設けられ、特図変動ゲームの表示や遊技に関する各種情報を表示するセグメントLEDを所望の内容を表示するように駆動するセグメントLED編集処理を実行する(A1314)。
さらに、遊技制御装置100は、磁気センサスイッチ61からの検出信号をチェックして異常がないか否かを判定する磁石不正監視処理を実行する(A1315)。さらに、遊技盤の電波センサ62からの検出信号をチェックして異常がないか否かを判定する電波不正監視処理(盤電波不正監視処理)を実行する(A1316)。
その後、遊技制御装置100は、振動センサ65からの入力に基づいて振動による不正を監視する振動不正監視処理を実行する(A1317)。次に、大入賞口からの異常排出を監視する異常排出監視処理を実行する(A1318)。異常排出監視処理では、特別変動入賞装置39における大入賞口スイッチ39a、特定領域スイッチ72(V入賞口スイッチ)、残存球排出口スイッチ73からの入力に基づいて、特別変動入賞装置39の異常排出を監視し、異常排出が発生した場合に異常排出発生中フラグが設定される。なお、特別変動入賞装置39の大入賞口スイッチ39aを通過した遊技球は、特定領域スイッチ72(V入賞口スイッチ)又は残存球排出口スイッチ73を通過して排出される。
次に、遊技制御装置100は、各種外部装置に出力する信号を出力バッファにセットする外部情報編集処理を実行する(A1319)。そして、性能表示装置152の表示を制御する性能表示モニタ制御処理を実行する(A1320)。その後、タイマ割込み処理を終了する。
なお、タイマ割込み処理のリターンの際、割込み禁止状態の復元やレジスタバンクの指定の復元は、自動的に行われる構成とするが、使用するCPUによっては、外部情報編集処理の後に、割込みを許可する処理やレジスタバンクの指定をレジスタバンク0に戻す処理を行ってもよい。
〔確率設定変更/確認処理〕
次に、タイマ割込み処理における確率設定変更/確認処理(A1305)の詳細について説明する。図6Bは、確率設定変更/確認処理の手順を示すフローチャートである。確率設定変更/確認処理では、確率設定値が変更又は確認できる。
遊技制御装置100は、まず、確率設定値が正常範囲内であるか否かを判定する(A2401)。ここでの確率設定値は、RAM111cの確率設定値領域に記憶されている。
遊技制御装置100は、確率設定値が正常範囲内である場合に(A2401の結果が「Y」)、確率設定値に対応する確率設定値表示データを設定して(A2402)、性能表示装置152にドライバ150を介して出力する(A2404)。確率設定値が正常範囲内でない場合に(A2401の結果が「N」)、確率設定値表示データとして消灯データを設定して(A2403)、性能表示装置152にドライバ150を介して出力する(A2404)。
ここで、確率設定値表示データは、性能表示装置152で表示される表示用確率設定値のデータであり、確率設定値表示データ領域に記憶されている。なお、ホール関係者等の混乱を防止するため、確率設定値が異なっても同じ大当り確率(及び小当たり確率)であれば、表示用確率設定値を大当り確率(及び小当たり確率)に対応付けて同じにしてよい。即ち、同じ表示用確率設定値は、同じ大当り確率(及び小当たり確率)を意味してよい。
次に、遊技制御装置100は、セキュリティ信号制御タイマが0でなければ-1更新する(A2405)。セキュリティ信号制御タイマは、ステップA1034で設定された128ms(所定時間)である。続いて、外部装置(遊技場内部管理装置(ホールコンピュータ)など)に異常を知らせるためのセキュリティ信号のオンデータを外部情報端子71に出力する(A1026)。なお、ここで、大当り信号など外部情報端子71への他の信号はオフ状態に維持される。
その後、遊技制御装置100は、確率設定変更中フラグがセットされているか否かを判定する(A2407)。確率設定変更中フラグがセットされていない場合に(A2407の結果が「N」)、即ち、確率設定確認中である場合に、何もせずに確率設定変更/確認処理を終了する。
遊技制御装置100は、確率設定変更中フラグがセットされている場合に(A2407の結果が「Y」)、即ち、確率設定変更中である場合に、電源投入後の最初のタイマ割込み処理であるか否かを判定する(A2408)。電源投入後の最初のタイマ割込み処理である場合に(A2408の結果が「Y」)、確率設定変更/確認処理を終了する。これは、RAM初期化スイッチ112を押しっぱなしだった場合に、意図せずに確率設定値の更新がされる事態を防止するためである。
遊技制御装置100は、電源投入後の最初のタイマ割込み処理でない場合に(A2408の結果が「N」)、RAM初期化スイッチ112の入力があるか否かを判定する(A2409)。RAM初期化スイッチの入力がない場合に(A2409の結果が「N」)、確率設定変更/確認処理を終了する。
遊技制御装置100は、RAM初期化スイッチ112の入力がある場合に(A2409の結果が「Y」)、作業用設定値領域(RAM111c内又はレジスタ)の作業用設定値を0~5の範囲で+1更新するとともに、作業用設定値に対応して確率設定値領域の確率設定値1~6を+1更新する(A2410)。これにより、RAM初期化スイッチ112が操作される度に、確率設定値領域の確率設定値が1ずつ更新される。その後、確率設定変更/確認処理を終了する。なお、設定変更モードに入ったときに作業用設定値を格納する作業用設定値領域(RAM111c内又はレジスタ)に、確率設定値領域から読み出した確率設定値に対応する値(確率設定値から1減算した値)が格納されてよい。
なお、上記では、RAM初期化スイッチ112が操作される度に、作業用設定値の更新に対応して確率設定値領域の確率設定値を直接更新するようにしたが、RAM111cの作業用設定値領域に設定変更中の確率設定値(作業用設定値)を記憶するようにし、設定キースイッチ93がオフになり設定変更作業が完了したときに(A1036の結果が「Y」)、作業用設定値領域の作業用設定値に対応する値をはじめて確率設定値領域に格納するようにしてもよい。このようにすれば、設定変更中に停電が発生した場合(A1037の結果が「Y」)に、遊技制御や演出制御等に使用される確率設定値(確率設定値領域に記憶される確率設定値)が意図しない値で変更される事態を防止できる。
〔特図ゲーム処理〕
次に、前述のタイマ割込み処理における特図ゲーム処理(A1312)の詳細について説明する。図7は、特図ゲーム処理の手順を示すフローチャートである。特図ゲーム処理では、始動口1スイッチ36a及び始動口2スイッチ37aの入力の監視と、特図変動表示ゲームに関する処理全体の制御、特図の表示の設定を行う。
遊技制御装置100は、まず、始動口1スイッチ36a及び始動口2スイッチ37aの入賞を監視する始動口スイッチ監視処理を実行する(A2601)。始動口スイッチ監視処理では、始動入賞口36、第2始動入賞口をなす普通変動入賞装置37に遊技球が入賞すると、各種乱数(大当り乱数など)を抽出し、当該入賞に基づく特図変動表示ゲームの開始前の段階で入賞に基づく遊技結果を事前に判定する遊技結果事前判定を行う。なお、始動口スイッチ監視処理の詳細については後述する。
次に、遊技制御装置100は、大入賞口スイッチ監視処理を実行する(A2602)。大入賞口スイッチ監視処理では、特別変動入賞装置39内に設けられたカウントスイッチ39aでの遊技球の検出を監視する。なお、大入賞口スイッチ監視処理の詳細については後述する。
次に、遊技制御装置100は、特図ゲーム処理タイマが0でなければ-1更新する(1だけ減算する)(A2603)。特図ゲーム処理タイマは、-1更新によって、タイマ割込み処理の割込み周期(4msec)の分だけ計時されることになる。なお、特図ゲーム処理タイマの最小値は0に設定されている。次に、特図ゲーム処理タイマが0であるか否かを判定する(A2604)。特図ゲーム処理タイマが0でない場合(A2604の結果が「N」)、ステップA2619の処理に移行する。
遊技制御装置100は、特図ゲーム処理タイマが0である場合(A2604の結果が「Y」)、すなわち、タイムアップした又は既にタイムアップしていた場合には、特図ゲーム処理番号に対応する処理に分岐させるために参照する特図ゲームシーケンス分岐テーブルをレジスタに設定する(A2605)。さらに、特図ゲームシーケンス分岐テーブルを用いて特図ゲーム処理番号に対応する処理の分岐先アドレスを取得する(A2606)。続いて、特図ゲーム処理番号によるサブルーチンコールを行って、特図ゲーム処理番号に応じたゲーム分岐処理を実行する(A2607)。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「0」の場合には、特図変動表示ゲームの変動開始を監視し、特図変動表示ゲームの変動開始の設定、演出の設定や、特図変動中処理を行うために必要な情報の設定等を行う特図普段処理を実行する(A2608)。なお、特図普段処理の詳細については、図10にて後述する。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「1」の場合には、特図の停止表示時間の設定や、特図表示中処理を行うために必要な情報の設定等を行う特図変動中処理を実行する(A2609)。例えば、特図変動中処理では、特別図柄の停止を示す図柄停止コマンドや停止図柄パターンに対応する停止表示時間など必要な情報を設定して、特図表示中処理に係る処理番号「2」を設定し特図ゲーム処理番号領域にセーブする。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「2」の場合には、特図変動表示ゲームの遊技結果が大当りであれば、大当りの種類に応じたファンファーレコマンドの設定や、各大当りの大入賞口開放パターンに応じたファンファーレ時間の設定、ファンファーレ/インターバル中処理を行うために必要な情報の設定等を行う特図表示中処理を実行する(A2610)。例えば、特図表示中処理では、特図変動表示ゲームの結果が大当りであれば、ファンファーレコマンドやファンファーレ時間など必要な情報を設定して、ファンファーレ/インターバル中処理に係る処理番号「3」を設定し特図ゲーム処理番号領域にセーブする。特図変動表示ゲームの結果が大当りでなければ、特図普段処理に係る処理番号「0」を設定し特図ゲーム処理番号領域にセーブする。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「3」の場合には、大入賞口の開放時間の設定や開放回数の更新、大入賞口開放中処理を行うために必要な情報の設定等を行うファンファーレ/インターバル中処理を実行する(A2611)。例えば、ファンファーレ/インターバル中処理では、実行するラウンド遊技のラウンドに対応するラウンドコマンドや大入賞口の開放時間など必要な情報を設定して、大入賞口開放中処理に係る処理番号「4」を設定し特図ゲーム処理番号領域にセーブする。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「4」の場合には、大当りラウンドが最終ラウンドでなければインターバルコマンドを設定する一方で最終ラウンドであればエンディングコマンドを設定する処理や、大入賞口残存球処理を行うために必要な情報の設定等を行う大入賞口開放中処理を実行する(A2612)。例えば、大入賞口開放中処理では、インターバルコマンドやエンディングコマンドなど必要な情報を設定して、大入賞口残存球処理に係る処理番号「5」を設定し特図ゲーム処理番号領域にセーブする。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「5」の場合には、大当りラウンドが最終ラウンドであれば大入賞口内にある残存球が排出されるための時間を設定する処理や、大当り終了処理を行うために必要な情報の設定等を行う大入賞口残存球処理を実行する(A2613)。例えば、大入賞口開放中処理では、最終ラウンドでなければインターバル時間を特図ゲーム処理タイマ領域にセーブし、ファンファーレ/インターバル中処理に係る処理番号「3」を設定し特図ゲーム処理番号領域にセーブする。最終ラウンドであればエンディング時間を特図ゲーム処理タイマ領域にセーブし、大当り終了処理に係る処理番号「6」を設定し特図ゲーム処理番号領域にセーブする。
遊技制御装置100は、ステップA2607にてゲーム処理番号が「6」の場合には、特図普段処理を実行するために必要な情報の設定等を行う大当り終了処理を実行する(A2614)。例えば、大当り終了処理では、特図変動表示ゲームの停止図柄番号(大当り図柄番号)に対応する確率変動判定データに基づいて、大当り状態終了後の確率状態や大当り状態終了後の普電サポート状態(時短状態)など必要な情報の設定を行い、特図普段処理に係る処理番号「0」を設定し特図ゲーム処理番号領域にセーブする。確率変動判定データには、大当り状態終了後の確率状態(高確率/低確率)、及び、大当り状態終了後の普電サポート状態(時短状態)の継続ゲーム回数(時間短縮変動回数、電サポ回数)の情報が含まれる。
特図ゲーム処理番号に基づく処理が終了すると、遊技制御装置100は、特図1表示器51の変動を制御するための特図1変動制御テーブルを準備した後(A2615)、特図1表示器51に係る図柄変動制御処理を実行する(A2616)。そして、特図2表示器52の変動を制御するための特図2変動制御テーブルを準備した後(A2617)、特図2表示器52に係る図柄変動制御処理を実行する(A2618)。
〔始動口スイッチ監視処理〕
次に、特図ゲーム処理における始動口スイッチ監視処理(A2601)の詳細について説明する。図8は、始動口スイッチ監視処理の手順を示すフローチャートである。
遊技制御装置100は、まず、始動入賞口36(始動口1)に対する入賞監視テーブルを準備し(A2701)、ハード乱数取得処理を実行し(A2702)、始動入賞口36への入賞があるか否かを判定する(A2703)。始動入賞口36への入賞がない場合(A2703の結果が「N」)には、ステップA2709以降の処理を実行する。一方、始動入賞口36への入賞がある場合(A2703の結果が「Y」)、特図時短中(普電サポート状態中)であるか否かを判定する(A2704)。
遊技制御装置100は、特図時短中(普電サポート状態中)でないと判定した場合(A2704の結果が「N」)、ステップA2707以降の処理を実行する。一方、特図時短中(普電サポート状態中)である場合(A2704の結果が「Y」)、右打ち指示報知コマンドを演出コマンドとして準備して(A2705)、演出コマンド設定処理を実行する(A2706)。演出コマンド設定処理では、シリアル送信バッファに演出コマンドを書き込み、演出コマンドが演出制御装置300に送信されることになる。
即ち、普電サポート状態(時短状態)であれば、変動表示ゲームの確率状態(高確率状態/低確率状態)にかかわらず、右打ち指示報知コマンドを準備して、演出コマンド設定処理を実行する。本実施形態の場合、始動入賞口36へは左打ちの方が入賞し易く、普通変動入賞装置37へは右打ちでないと入賞しない。また、右打ちでないと、遊技球が普図始動ゲート34を通過しない。したがって、普電サポート状態(時短状態)は、左打ちよりも右打ちの方が有利となるが、普電サポート状態中に始動入賞口36に入賞があった場合(すなわち、普電サポート状態中に左打ちされた場合)には、右打ち指示報知コマンドを演出制御装置300に送信し、演出制御装置300は、右打ちするよう指示する報知(警告)を表示装置41等によって実行する。
次に、遊技制御装置100は、始動入賞口36(始動口1)による保留の情報を設定するテーブルを準備した後(A2707)、特図始動口スイッチ共通処理を実行する(A2708)。そして、第2始動入賞口(普通変動入賞装置37)に対する入賞監視テーブルを準備し(A2709)、ハード乱数取得処理を実行し(A2710)、第2始動入賞口への入賞があるか否かを判定する(A2711)。第2始動入賞口への入賞がない場合(A2711の結果が「N」)には、始動口スイッチ監視処理を終了する。
一方、遊技制御装置100は、第2始動入賞口への入賞がある場合(A2711の結果が「Y」)には、普通電動役物(普通変動入賞装置37)が作動中であるか否か、すなわち、普通変動入賞装置37が作動して遊技球の入賞が可能な開状態となっているか否かを判定する(A2712)。普通電動役物が作動中である場合(A2712の結果が「Y」)、ステップA2714の処理に移行する。
一方、遊技制御装置100は、普通電動役物が作動中でない場合(A2712の結果が「N」)、普電不正発生中であるかを判定する(A2713)。普通変動入賞装置37への不正入賞数が不正発生判定個数(例えば5個)以上である場合に普電不正発生中であると判定する。普通変動入賞装置37は、閉状態では遊技球が入賞不可能であり、開状態でのみ遊技球が入賞可能である。従って、閉状態で遊技球が入賞した場合は何らかの異常や不正が発生した場合であり、このような閉状態で入賞した遊技球があった場合はその数を不正入賞数として計数する。そして、このように計数された不正入賞数が所定の不正発生判定個数(上限値)以上である場合に不正発生中と判定する。
遊技制御装置100は、普電不正発生中でない場合(A2713の結果が「N」)、第2始動入賞口(普通変動入賞装置37)による保留の情報を設定するテーブルを準備した後(A2714)、特図始動口スイッチ共通処理を実行し(A2715)、始動口スイッチ監視処理を終了する。また、A2713にて、普電不正発生中である(A2713の結果が「Y」)と判定した場合にも、始動口スイッチ監視処理を終了する。すなわち、第2始動記憶をそれ以上発生させないようにする。
〔特図始動口スイッチ共通処理〕
次に、始動口スイッチ監視処理における特図始動口スイッチ共通処理(A2708、A2715)の詳細について説明する。図9は、特図始動口スイッチ共通処理の手順を示すフローチャートである。特図始動口スイッチ共通処理は、始動口1スイッチ36aや始動口2スイッチ37aの入力があった場合に、各々の入力について共通して行われる処理である。
遊技制御装置100は、まず、始動口1スイッチ36a及び始動口2スイッチ37aのうち、監視対象の始動口スイッチへの入賞の回数に関する情報を遊技機10の外部の管理装置に対して出力する回数である始動口信号出力回数をロードし(A2901)、ロードした値を+1更新して(A2902)、出力回数がオーバーフローするか否かを判定する(A2903)。出力回数がオーバーフローしない場合(A2903の結果が「N」)、更新後の値をRWMの始動口信号出力回数領域にセーブして(A2904)、ステップA2905の処理に移行する。一方、出力回数がオーバーフローする場合(A2903の結果が「Y」)、ステップA2905の処理に移行する。本実施形態では、始動口信号出力回数領域に「0」から「255」までの値を記憶することができる。そして、ロードした値が「255」である場合には+1更新によって更新後の値は「0」になり、出力回数がオーバーフローすると判定するよう構成されている。
次に、遊技制御装置100は、始動口1スイッチ36a及び始動口2スイッチ37aのうち、監視対象の始動口スイッチに対応する更新対象の特図保留数(始動記憶数)が上限値未満か否かを判定する(A2905)。更新対象の特図保留数が上限値未満でない場合(A2905の結果が「N」)は、特図始動口スイッチ共通処理を終了する。また、更新対象の特図保留数が上限値未満である場合(A2905の結果が「Y」)は、更新対象の特図保留数(特図1保留数又は特図2保留数)を+1更新して(A2906)、対象の始動口入賞フラグをセーブする(A2907)。
次に、遊技制御装置100は、監視対象の始動口スイッチ及び特図保留数に対応する乱数格納領域のアドレスを算出して(A2908)、ステップA2805にて準備した大当り乱数をRWMの大当り乱数格納領域にセーブする(A2909)。次に、監視対象の始動口スイッチの大当り図柄乱数を抽出し、準備して(A2910)、RWMの大当り図柄乱数格納領域にセーブする(A2911)。
次に、遊技制御装置100は、変動パターン乱数1から3を対応するRWMの変動パターン乱数格納領域にセーブして(A2912)、特図保留情報判定処理を実行する(A2913)。特図保留情報判定処理では、セーブした大当り乱数や大当り図柄乱数に基づく停止図柄情報に対応する先読み停止図柄コマンドや、セーブした変動パターン乱数1から3に基づく前半変動番号(リーチ前変動の番号)及び後半変動番号(リーチ後変動の番号)に対応する先読み変動パターンコマンドを演出コマンドとして設定する。そして、監視対象の始動口スイッチ及び特図保留数に対応する飾り特図保留数コマンドを演出コマンドとして準備し(A2914)、演出コマンド設定処理(A2915)を実行して、特図始動口スイッチ共通処理を終了する。
ここで、遊技制御装置100(RAM111c)は、始動入賞口36や普通変動入賞装置37の始動入賞領域への遊技球の流入に基づき、所定の乱数を抽出し前記変動表示ゲームの実行権利となる始動記憶として所定数を上限に記憶する始動記憶手段をなす。また、始動記憶手段(遊技制御装置100)は、第1始動入賞口(始動入賞口36)への遊技球の入賞に基づき抽出した各種の乱数値を、所定数を上限に第1始動記憶として記憶し、第2始動入賞口(普通変動入賞装置37)への遊技球の入賞に基づき抽出した各種の乱数値を、所定数を上限に第2始動記憶として記憶する。
〔特図普段処理〕
次に、特図ゲーム処理における特図普段処理(A2608)の詳細について説明する。図10は、特図普段処理の手順を示すフローチャートである。
遊技制御装置100は、まず、特図2保留数(第2始動記憶数)が0であるか否かを判定する(A3201)。特図2保留数が0である場合(A3201の結果が「Y」)、特図1保留数(第1始動記憶数)が0であるか否かを判定する(A3206)。そして、特図1保留数が0である場合(A3206の結果が「Y」)、客待ちデモが開始済みであるか否かを判定し(A3211)、客待ちデモが開始済みでない場合(A3211の結果が「N」)は、客待ちデモフラグ領域に客待ちデモ中フラグをセットする(A3212)。
続けて、遊技制御装置100は、客待ちデモコマンドを演出コマンドとして準備して(A3213)、演出コマンド設定処理を行い(A3214)、ステップA3215の処理に移行する。一方、ステップA3211にて、客待ちデモが開始済みである場合(A3211の結果が「Y」)、処理番号として特図普段処理に係る「0」を設定し(A3215)、特図ゲーム処理番号領域に処理番号をセーブして(A3216)、変動図柄判別フラグ領域をクリアする(A3217)。そして、大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブして(A3218)、特図普段処理を終了する。
また、遊技制御装置100は、特図2保留数が0でない場合(A3201の結果が「N」)、特図2変動開始処理を実行し(A3202)、特図2保留数に対応する飾り特図保留数コマンド(飾り特図2保留数コマンド)を演出コマンドとして準備して(A3203)、演出コマンド設定処理を実行する(A3204)。そして、特図2の特図変動中処理移行設定処理を実行し(A3205)、特図普段処理を終了する。
また、遊技制御装置100は、特図1保留数が0でない場合(A3206の結果が「N」)、特図1変動開始処理を実行し(A3207)、特図1保留数に対応する飾り特図保留数コマンド(飾り特図1保留数コマンド)を演出コマンドとして準備して(A3208)、演出コマンド設定処理を実行する(A3209)。そして、特図1の特図変動中処理移行設定処理を実行し(A3210)、特図普段処理を終了する。
このように、特図2保留数のチェックを特図1保留数のチェックよりも先に行うことで、特図2保留数が0でない場合には特図2変動開始処理(A3202)が実行されることとなる。すなわち、特図2変動表示ゲームが特図1変動表示ゲームに優先して実行されることとなる。つまり、遊技制御装置100が、第2始動記憶手段(遊技制御装置100)に第2始動記憶がある場合には、当該第2始動記憶に基づく変動表示ゲームを、第1始動記憶に基づく変動表示ゲームよりも優先的に実行する優先制御手段をなす。
〔特図1変動開始処理〕
次に、特図普段処理における特図1変動開始処理(A3207)の詳細について説明する。図11は、特図1変動開始処理の手順を示すフローチャートである。特図1変動開始処理は、特図1変動表示ゲームの開始時に行う処理である。
遊技制御装置100は、実行する特図変動表示ゲームの種別(ここでは特図1)を示す特図1変動フラグを変動図柄判別領域にセーブする(A3401)。続いて、特図1変動表示ゲームが大当りであるか否かを判別するための大当りフラグ1にはずれ情報や大当り情報を設定する大当りフラグ1設定処理を実行する(A3402)。大当りフラグ1設定処理の詳細については後述する。
次に、遊技制御装置100は、特図1変動表示ゲームに関する特図1停止図柄(図柄情報)の設定に係る特図1停止図柄設定処理を実行する(A3403)。特図1停止図柄設定処理では、はずれ時又は大当り時の停止図柄番号と、この停止図柄番号に対応するはずれ停止図柄パターン又は大当り停止図柄パターンをセーブする。そして、停止図柄パターンに対応する飾り特図コマンドを演出コマンドとして準備して、演出コマンド設定処理を実行する。また、停止図柄番号に対応するラウンド数情報(ラウンド上限値)と停止図柄番号に対応する確率変動判定データを取得してセーブする。
さらに、遊技制御装置100は、変動パターンを設定するためのパラメータである特図情報を設定する特図情報設定処理を実行する(A3404)。
続いて、遊技制御装置100は、特図1変動表示ゲームの変動パターンの設定に関する種々の情報を参照するための情報が設定されたテーブルである特図1変動パターン設定情報テーブルを準備する(A3405)。
その後、遊技制御装置100は、特図1変動表示ゲームにおける変動態様である変動パターン(変動パターン番号)を設定する変動パターン設定処理を実行する(A3406)。次に、遊技制御装置100は、特図1変動表示ゲームの変動開始の情報を設定する変動開始情報設定処理を実行し(A3407)、特図1変動開始処理を終了する。変動開始情報設定処理では、変動パターン(変動パターン番号)に対応する変動時間値を取得し、特図ゲーム処理タイマ領域にセーブする。そして、変動パターン番号に対応する変動コマンド(MODE、ACTION)を演出コマンドとして準備して、演出コマンド設定処理を行う。また、変動開始情報設定処理では、これから開始する特図変動表示ゲームの特図種別(特図1又は特図2)に係る特図保留数を-1更新する(1だけ減少する)。
〔特図2変動開始処理〕
次に、特図普段処理における特図2変動開始処理(A3202)の詳細について説明する。図12は、特図2変動開始処理の手順を示すフローチャートである。特図2変動開始処理は、特図2変動表示ゲームの開始時に行う処理であって、図11に示した特図1変動開始処理での処理と同様の処理を、第2始動記憶を対象として行うものである。
遊技制御装置100は、まず、実行する特図変動表示ゲームの種別(ここでは特図2)を示す特図2変動フラグを変動図柄判別領域にセーブする(A3501)。続いて、特図2変動表示ゲームが大当りであるか否かを判別するための大当りフラグ2にはずれ情報や大当り情報を設定する大当りフラグ2設定処理を実行する(A3502)。
次に、遊技制御装置100は、特図2変動表示ゲームに関する特図2停止図柄(図柄情報)の設定に係る特図2停止図柄設定処理を実行する(A3503)。さらに、変動パターンを設定するためのパラメータである特図情報を設定する特図情報設定処理を実行する(A3504)。続いて、特図2変動表示ゲームの変動パターンの設定に関する種々の情報を参照するための情報が設定されたテーブルである特図2変動パターン設定情報テーブルを準備する(A3505)。
その後、遊技制御装置100は、特図2変動表示ゲームの変動パターンを設定する変動パターン設定処理を実行する(A3506)。最後に、特図2変動表示ゲームの変動開始の情報を設定する変動開始情報設定処理を実行し(A3507)、特図2変動開始処理を終了する。
〔大当りフラグ1設定処理〕
次に、特図1変動開始処理における大当りフラグ1設定処理(A3402)の詳細について説明する。図13は、大当りフラグ1設定処理の手順を示すフローチャートである。
遊技制御装置100は、まず、大当りフラグ1領域にはずれ情報をセーブする(A3601)。次に、RWMの特図1大当り乱数格納領域(保留数1用)から大当り乱数をロードし、準備して(A3602)、当該特図1大当り乱数格納領域(保留数1用)を0クリアする(A3603)。なお、保留数1用とは、消化順序が最先(ここでは特図1のうちで最先)の特図始動記憶についての情報(乱数等)を格納する領域である。その後、準備した大当り乱数値が大当り判定値と一致するか否かに応じて大当りであるか否かを判定する大当り判定処理を実行する(A3604)。
遊技制御装置100は、大当り判定処理(A3604)の判定結果が大当りである場合(A3605の結果が「Y」)、ステップA3601にてはずれ情報をセーブした大当りフラグ1領域に大当り情報を上書きしてセーブし(A3606)、大当りフラグ1設定処理を終了する。一方、大当り判定処理(A3605)の判定結果が大当りでない場合(A3605の結果が「N」)、大当りフラグ1設定処理を終了する。このように、本実施形態において、特図1変動表示ゲームの結果は、「大当り」及び「はずれ」のうちの何れかとなる。
〔大当りフラグ2設定処理〕
次に、特図2変動開始処理における大当りフラグ2設定処理(A3502)の詳細について説明する。図14は、大当りフラグ2設定処理の手順を示すフローチャートである。この処理は、図13に示した大当りフラグ1設定処理での処理と同様の処理を、第2始動記憶を対象として行うものである。
遊技制御装置100は、まず、大当りフラグ2領域にはずれ情報をセーブする(A3701)。次に、RWMの特図2大当り乱数格納領域(保留数1用)から大当り乱数をロードし、準備して(A3702)、当該特図2大当り乱数格納領域(保留数1用)を0クリアする(A3703)。なお、保留数1用とは、消化順序が最先(ここでは特図2のうちで最先)の特図始動記憶についての情報(乱数等)を格納する領域である。その後、準備した大当り乱数値が大当り判定値と一致するか否かに応じて大当りであるか否かを判定する大当り判定処理を実行する(A3704)。
遊技制御装置100は、大当り判定処理(A3704)の判定結果が大当りである場合(A3705の結果が「Y」)、ステップA3701にてはずれ情報をセーブした大当りフラグ2領域に大当り情報を上書きしてセーブし(A3706)、大当りフラグ2設定処理を終了する。一方、大当り判定処理(A3704)の判定結果が大当りでない場合(A3705の結果が「N」)、大当りフラグ2にはずれ情報をセーブしたまま大当りフラグ2設定処理を終了する。このように、本実施形態において、特図2変動表示ゲームの結果は、「大当り」及び「はずれ」のうちの何れかとなる。
〔大当り判定処理〕
次に、大当りフラグ1設定処理と大当りフラグ2設定処理等における大当り判定処理(A3605、A3704)の詳細について説明する。図15は、大当り判定処理の手順を示すフローチャートである。なお、大当り判定処理は、タイマ割込み処理中に実行される他の処理における大当り判定処理に共通する処理であり、特図保留情報判定処理のステップA3004などでも実行される。
遊技制御装置100は、まず、大当り判定値の下限判定値を設定し(A3801)、対象の大当り乱数の値が下限判定値未満であるか否かを判定する(A3802)。なお、大当りであるとは大当り乱数が大当り判定値と一致することである。大当り判定値は連続する複数の値であり、大当り乱数が、大当り判定値の下限の値である下限判定値以上で、かつ、大当り判定値の上限の値である上限判定値以下である場合に、大当りであると判定される。
遊技制御装置100は、対象の大当り乱数の値が下限判定値未満である場合(A3802の結果が「Y」)、判定結果としてはずれ(大当り以外)を設定し(A3807)、大当り判定処理を終了する。
また、遊技制御装置100は、大当り乱数の値が下限判定値未満でない場合には(A3802の結果が「N」)、大当りの発生確率が高確率状態(確変状態)であるか否かを判定する(A3803)。そして、高確率状態である場合には(A3803の結果が「Y」)、高確率中の上限判定値を設定する(A3804)。一方、高確率状態でない場合には(A3803の結果が「N」)、低確率中の上限判定値を設定する(A3805)。
遊技制御装置100は、大当り乱数の値の上限判定値を設定すると、対象の大当り乱数の値が上限判定値より大きいか否かを判定する(A3806)。大当り乱数の値が上限判定値より大きい場合(A3806の結果が「Y」)、判定結果としてはずれ(大当り以外)を設定する(A3807)。一方、大当り乱数の値が上限判定値より大きくない場合(A3806の結果が「N」)、判定結果として大当りを設定する(A3808)。判定結果を設定すると、大当り判定処理を終了する。
〔特図情報設定処理〕
次に、特図1変動開始処理と特図2変動開始処理における特図情報設定処理(A3404、A3504)の詳細について説明する。図16は、特図情報設定処理の手順を示すフローチャートである。本実施形態において、確率状態(低確率/高確率、時短あり/なし)は変動の振り分けに直接影響せず、遊技制御装置100が管理している演出モードが変動の振り分けに影響する。演出モードは、確率状態、時短状態の有無、特図変動表示ゲームの進行状況などに応じて、複数の演出モードから一の演出モードが設定されるようになっている。
遊技制御装置100は、まず、前半変動グループ選択ポインタテーブルを設定して(A4201)、演出モード情報に対応する前半変動グループ選択ポインタを取得する(A4202)。次いで、前半変動グループ選択オフセットテーブルを設定して(A4203)、対象の特図保留数(特図1保留数又は特図2保留数)と停止図柄パターンに対応するオフセットデータを取得する(A4204)。
次に、遊技制御装置100は、前半変動グループ選択ポインタとオフセットデータを加算して(A4205)、加算して得た値を変動振分情報1領域にセーブする(A4206)。これにより変動振分情報1領域には、停止図柄の種類、保留数、及び演出モードに基づいて生成された変動振分情報1がセーブされる。この変動振分情報1は、前半変動(リーチ開始前までの変動態様)を振り分けるためのテーブルポインタであり、後に変動グループを選択するために用いられる。ただし、機種の仕様次第であるが、保留数が多い時に変動時間を短くするのははずれの場合のみであるため、はずれ以外の場合には、結果として保留数は前半変動の振り分けに影響しない。なお、変動グループとは複数の変動パターンが含まれたもので、変動パターンを決定する際には、まず変動グループを選択し、さらにこの変動グループの中から一の変動パターンを選択するようになっている。
次に、遊技制御装置100は、後半変動グループ選択ポインタテーブルを設定して(A4207)、演出モード情報に対応する後半変動グループ選択ポインタを取得する(A4208)。次いで、後半変動グループ選択オフセットテーブルを設定して(A4209)、対象の特図保留数と停止図柄パターンに対応するオフセットデータを取得する(A4210)。
次に、遊技制御装置100は、後半変動グループ選択ポインタとオフセットデータを加算して(A4211)、加算して得た値を変動振分情報2領域にセーブして(A4212)、特図情報設定処理を終了する。これにより変動振分情報2領域には、停止図柄の種類、保留数、及び演出モードに基づいて生成された変動振分情報2がセーブされる。この変動振分情報2は、後半変動(リーチの種類(リーチなしも含む。))を振り分けるためのテーブルポインタであり、後に変動グループを選択するために用いられる。ただし、はずれの場合のみ保留数に応じてリーチの発生率が変化する(保留数が多い時にリーチの発生率が低くなる)ため、はずれ以外の場合には、結果として保留数は後半変動の振り分けに影響しない。
〔変動パターン設定処理〕
次に、特図1変動開始処理及び特図2変動開始処理における変動パターン設定処理(A3406、A3506)の詳細について説明する。図17は、変動パターン設定処理の手順を示すフローチャートである。
変動パターンは、特図変動表示ゲームの開始からリーチ状態となるまでの変動態様である前半変動パターンと、リーチ状態となってから特図変動表示ゲームの終了までの変動態様である後半変動パターンとからなり、先に後半変動パターンを設定してから前半変動パターンを設定する。
遊技制御装置100は、まず、変動グループ選択アドレステーブルを設定し(A4301)、変動振分情報2に対応する後半変動グループテーブルのアドレスを取得し、準備して(A4302)、対象の変動パターン乱数1格納領域(保留数1用)から変動パターン乱数1をロードし、準備する(A4303)。本実施形態において、後半変動グループテーブルの構造は、当り用とはずれ用とで構造が異なる。具体的には、当り用は1バイトサイズ、はずれ用は2バイトサイズとなっている。はずれの発生率よりも当りの発生率が低く、1バイトでも足りるため、データ容量の節約の観点から、当り用は1バイトサイズになっている。したがって、当り時は、2バイトの変動パターン乱数1の下位の値だけを使用している。また、当りの発生率よりもはずれの発生率は高く、より多様な演出を出現させたいため、はずれ用は2バイトサイズになっている。
そして、遊技制御装置100は、特図変動表示ゲームの結果がはずれであるかを判定し(A4304)、はずれである場合(A4304の結果が「Y」)、2バイト振り分け処理(A4305)を行って、ステップA4307の処理に移行する。また、はずれでない場合(A4304の結果が「N」)、振り分け処理(A4306)を行って、ステップA4307の処理に移行する。
次に、遊技制御装置100は、振り分けられた結果得られた後半変動選択テーブル(後半変動パターン選択テーブル)のアドレスを取得し、準備して(A4307)、対象の変動パターン乱数2格納領域(保留数1用)から変動パターン乱数2をロードし、準備する(A4308)。そして、振り分け処理を実行し(A4309)、振り分けられた結果得られた後半変動番号を取得し、後半変動番号領域にセーブする(A4310)。この処理により、後半変動パターンが設定されることとなる。
次に、遊技制御装置100は、前半変動グループテーブルを設定し(A4311)、変動振分情報1と後半変動番号を基にテーブル選択ポインタを算出する(A4312)。そして、算出したポインタに対応する前半変動選択テーブル(前半変動パターン選択テーブル)のアドレスを取得し、準備して(A4313)、対象の変動パターン乱数3格納領域(保留数1用)から変動パターン乱数3をロードし、準備する(A4314)。その後、振り分け処理(A4315)を行い、振り分けられた結果得られた前半変動番号を取得し、前半変動番号領域にセーブして(A4316)、変動パターン設定処理を終了する。この処理により、前半変動パターンが設定され、特図変動表示ゲームの変動パターンが設定されることとなる。すなわち、遊技制御装置100が、ゲームの実行態様である変動パターンを複数のうちから設定する変動パターン設定手段をなす。
〔2バイト振り分け処理〕
次に、変動パターン設定処理における2バイト振り分け処理(A4305)の詳細について説明する。図18は、2バイト振り分け処理の手順を示すフローチャートである。2バイト振り分け処理は、変動パターン乱数1に基づいて後半変動グループテーブルから特図変動表示ゲームの後半変動選択テーブルを選択するための処理である。
遊技制御装置100は、まず、選択テーブル(A4302にて準備した後半変動グループテーブル)の先頭のデータが振り分けなしのコード(すなわち「0」)であるかをチェックする(A4401)。ここで、後半変動グループテーブルは、少なくとも一の後半変動選択テーブルと対応付けて所定の振り分け値を記憶しているが、後半変動パターンが「リーチなし」となる後半変動選択テーブルのみを規定する後半変動グループテーブル(例えば、結果がはずれの場合の一部の変動グループテーブル)にあっては、振り分けの必要がないため、振り分け値「0」、すなわち、振り分けなしのコードが先頭に規定されている。
そして、遊技制御装置100は、選択テーブル(後半変動グループテーブル)の先頭のデータが振り分けなしのコードである場合(A4402の結果が「Y」)は、振り分けた結果に対応するデータのアドレスに更新して(A4407)、2バイト振り分け処理を終了する。一方、選択テーブル(後半変動グループテーブル)の先頭のデータが振り分けなしのコードでない場合(A4402の結果が「N」)は、選択テーブル(後半変動グループテーブル)に最初に規定されている一の振り分け値を取得する(A4403)。
続けて、ステップA4303にて準備した乱数値(変動パターン乱数1の値)からステップA4403にて取得した振り分け値を減算して新たな乱数値を算出し(A4404)、当該算出した新たな乱数値が「0」よりも小さいかを判定する(A4405)。そして、新たな乱数値が「0」よりも小さくない場合(A4405の結果が「N」)は、次の振り分け値のアドレスに更新した後(A4406)、ステップA4403の処理に移行して、それ以降の処理を行う。すなわち、選択テーブル(後半変動グループテーブル)に次に規定されている振り分け値を取得し(A4403)、その後、前回のステップA4405にて判定済みの乱数値から振り分け値を減算することで新たな乱数値を算出して(A4404)、算出した新たな乱数値が「0」よりも小さいか否かを判定する(A4405)。
上記の処理をステップA4405にて新たな乱数値が「0」よりも小さいと判定(A4405の結果が「Y」)するまで実行する。これにより、選択テーブル(後半変動グループテーブル)に規定されている少なくとも一の後半変動選択テーブルの中から何れか一の後半変動選択テーブルが選択される。そして、ステップA4405にて、新たな乱数値が「0」よりも小さいと判定すると(A4405の結果が「Y」)、振り分けた結果に対応するデータのアドレスに更新して(A4407)、2バイト振り分け処理を終了する。
〔振り分け処理〕
次に、変動パターン設定処理における振り分け処理(A4306、A4309、A4315)の詳細について説明する。図19は、振り分け処理の手順を示すフローチャートである。振り分け処理は、変動パターン乱数2に基づいて、後半変動選択テーブル(後半変動パターングループ)から特図変動表示ゲームの後半変動パターンを選択したり、変動パターン乱数3に基づいて、前半変動選択テーブル(前半変動パターングループ)から特図変動表示ゲームの前半変動パターンを選択したりするための処理である。
遊技制御装置100は、まず、対象の選択テーブル(A4302にて準備した後半変動グループテーブル、ステップA4307にて準備した後半変動選択テーブル、又はステップA4313にて準備した前半変動選択テーブル)の先頭のデータが振り分けなしのコード(すなわち「0」)であるかをチェックする(A4501)。ここで、後半変動グループテーブル、後半変動選択テーブル、及び前半変動選択テーブルは、少なくとも一の後半変動選択テーブルや後半変動パターン(後半変動番号)や前半変動パターン(前半変動番号)と対応付けて所定の振り分け値を記憶しているが、振り分けの必要がない選択テーブルの場合、振り分け値「0」、すなわち、振り分けなしのコードが先頭に規定されている。
そして、遊技制御装置100は、対象の選択テーブル(後半変動グループテーブルや後半変動選択テーブルや前半変動選択テーブル)の先頭のデータが振り分けなしのコードである場合(A4502の結果が「Y」)、振り分けた結果に対応するデータのアドレスに更新して(A4507)、振り分け処理を終了する。一方、対象の選択テーブル(後半変動グループテーブルや後半変動選択テーブルや前半変動選択テーブル)の先頭のデータが振り分けなしのコードでない場合(A4502の結果が「N」)、対象の選択テーブル(後半変動グループテーブルや後半変動選択テーブルや前半変動選択テーブル)に最初に規定されている一の振り分け値を取得する(A4503)。
続けて、遊技制御装置100は、ステップA4303やA4308やA4314にて準備した乱数値(変動パターン乱数1や変動パターン乱数2や変動パターン乱数3の値)からステップA4503にて取得した振り分け値を減算して新たな乱数値を算出し(A4504)、当該算出した新たな乱数値が「0」よりも小さいかを判定する(A4505)。そして、新たな乱数値が「0」よりも小さくない場合(A4505の結果が「N」)は、次の振り分け値のアドレスに更新した後(A4506)、ステップA4503の処理に移行して、それ以降の処理を行う。
すなわち、対象の選択テーブル(後半変動グループテーブルや後半変動選択テーブルや前半変動選択テーブル)に次に規定されている振り分け値を取得し(A4503)、その後、前回のステップA4505にて判定済みの乱数値から振り分け値を減算することで新たな乱数値を算出して(A4504)、算出した新たな乱数値が「0」よりも小さいか否かを判定する(A4505)。上記の処理をステップA4505にて新たな乱数値が「0」よりも小さいと判定(A4505の結果が「Y」)するまで実行する。これにより、対象の選択テーブル(後半変動グループテーブルや後半変動選択テーブルや前半変動選択テーブル)に規定されている少なくとも一の後半変動選択テーブルや後半変動パターン(後半変動番号)や前半変動パターン(前半変動番号)の中から何れか一の後半変動選択テーブルや後半変動パターン(後半変動番号)や前半変動パターン(前半変動番号)が選択される。
そして、遊技制御装置100は、ステップA4505にて、新たな乱数値が「0」よりも小さいと判定すると(A4505の結果が「Y」)、振り分けた結果に対応するデータのアドレスに更新して(A4507)、振り分け処理を終了する。
〔変動開始情報設定処理〕
次に、特図1変動開始処理及び特図2変動開始処理における変動開始情報設定処理(A3407、A3507)の詳細について説明する。図20は、変動開始情報設定処理の手順を示すフローチャートである。
遊技制御装置100は、まず、対象の変動パターン乱数1~3の乱数格納領域をクリアする(A4601)。次に、前半変動時間値テーブルを設定し(A4602)、前半変動番号に対応する前半変動時間値を取得する(A4603)。さらに、後半変動時間値テーブルを設定し(A4604)、後半変動番号に対応する後半変動時間値を取得する(A4605)。
そして、遊技制御装置100は、前半変動時間値と後半変動時間値を加算し(A4606)、加算値を特図ゲーム処理タイマ領域にセーブする(A4607)。その後、前半変動番号に対応する変動コマンド(MODE)を準備し(A4608)、後半変動番号に対応する変動コマンド(ACTION)を演出コマンドとして準備して(A4609)、演出コマンド設定処理を行う(A4610)。次に、変動図柄判別フラグに対応する特図保留数を-1更新して(A4611)、変動図柄判別フラグに対応する乱数格納領域のアドレスを設定する(A4612)。次いで、乱数格納領域をシフトし(A4613)、シフト後の空き領域をクリアして(A4614)、変動開始情報設定処理を終了する。
以上の処理により、特図変動表示ゲームの開始に関する情報が設定される。すなわち、遊技制御装置100が、始動記憶手段(遊技制御装置100)に記憶された各種の乱数値の判定を行う判定手段をなす。また、遊技制御装置100が、始動記憶の判定情報に基づいて、変動表示ゲームで実行する識別情報の変動パターンを決定することが可能な変動パターン決定手段をなす。
そして、これらの特図変動表示ゲームの開始に関する情報は後に演出制御装置300に送信され、演出制御装置300では、特図変動表示ゲームの開始に関する情報の受信に基づき、決定された変動パターンに応じて飾り特図変動表示ゲームでの詳細な演出内容を設定する。これらの特図変動表示ゲームの開始に関する情報としては、始動記憶数(保留数)に関する情報を含む飾り特図保留数コマンド、停止図柄に関する情報を含む飾り特図コマンド、特図変動表示ゲームの変動パターンに関する情報を含む変動コマンド、停止時間の延長に関する情報を含む停止情報コマンドが挙げられ、この順でコマンドが演出制御装置300に送信される。特に、飾り特図コマンドを変動コマンドよりも先に送信することで、演出制御装置300での処理を効率よく進めることができる。
〔普図ゲーム処理〕
次に、タイマ割込み処理における普図ゲーム処理(A1310)の詳細について説明する。図21は、普図ゲーム処理の手順を示すフローチャートである。普図ゲーム処理では、ゲートスイッチ34aの入力の監視と、普図変動表示ゲームに関する処理全体の制御、普図の表示の設定等を行う。
遊技制御装置100は、まず、ゲートスイッチ34aからの入力を監視するゲートスイッチ監視処理を実行する(A7601)。
続いて、遊技制御装置100は、始動口2スイッチ37aからの入力を監視する普電入賞スイッチ監視処理を実行する(A7602)。
次に、遊技制御装置100は、普図ゲーム処理タイマが0でなければ-1更新する(1だけ減算する)(A7603)。なお、普図ゲーム処理タイマの最小値は0に設定されている。そして、遊技制御装置100は、普図ゲーム処理タイマの値が0となったか否かを判定する(A7604)。
遊技制御装置100は、普図ゲーム処理タイマの値が0である場合(A7604の結果が「Y」)、すなわち、タイムアップした又はすでにタイムアップしていた場合には、普図ゲーム処理番号に対応する処理に分岐させるために参照する普図ゲームシーケンス分岐テーブルをレジスタに設定する(A7605)。
さらに、遊技制御装置100は、設定された普図ゲームシーケンス分岐テーブルに基づいて普図ゲーム処理番号に対応する処理の分岐先アドレスを取得する(A7606)。そして、普図ゲーム処理番号によるサブルーチンコールを行って、普図ゲーム処理番号に応じたゲーム分岐処理を実行する(A7607)。
遊技制御装置100は、ステップA7607にてゲーム処理番号が「0」の場合には、普図変動表示ゲームの変動開始を監視し、普図変動表示ゲームの変動開始の設定や演出の設定や、普図変動中処理を行うために必要な情報の設定等を行う普図普段処理を実行する(A7608)。普図普段処理の詳細については、図22にて後述する。
また、遊技制御装置100は、ステップA7607にてゲーム処理番号が「1」の場合には、普図表示中処理を行うために必要な情報の設定等を行う普図変動中処理を実行する(A7609)。例えば、普図変動中処理では、普図表示中処理に移行するために、ゲーム処理番号として「2」を設定して普図ゲーム処理番号領域にセーブする他、普図表示時間を普図ゲーム処理タイマ領域にセーブする。
また、遊技制御装置100は、ステップA7607にてゲーム処理番号が「2」の場合には、普図変動表示ゲームの結果が当りであれば、時短状態中であるか否かに応じた普電開放時間の設定や、普図当り中処理を行うために必要な情報の設定等を行う普図表示中処理を実行する(A7610)。例えば、普図表示中処理では、普図変動表示ゲームの結果が当りの場合に、普図当り中処理に移行するために、ゲーム処理番号として「3」を設定して普図ゲーム処理番号領域にセーブする一方、はずれの場合に、普図普段処理に移行するために、ゲーム処理番号として「0」を設定して普図ゲーム処理番号領域にセーブする。
また、遊技制御装置100は、ステップA7607にてゲーム処理番号が「3」の場合は、普図当り中処理の継続、あるいは普電残存球処理を行うために必要な情報の設定等を行う普図当り中処理を実行する(A7611)。例えば、普図当り中処理では、所定回数だけ普通変動入賞装置37を開放するための設定を行った後、普電残存球処理に移行するために、ゲーム処理番号として「4」を設定して普図ゲーム処理番号領域にセーブする。
また、遊技制御装置100は、ステップA7607にてゲーム処理番号が「4」の場合は、普図当り終了処理を行うために必要な情報の設定等を行う普電残存球処理を実行する(A7612)。例えば、普電残存球処理では、普図当り終了処理に移行するために、ゲーム処理番号として「5」を設定して普図ゲーム処理番号領域にセーブする他、普図エンディング時間を普図ゲーム処理タイマ領域にセーブする。
また、遊技制御装置100は、ステップA7607にてゲーム処理番号が「5」の場合は、普図普段処理(A7608)を行うために必要な情報の設定等を行う普図当り終了処理を実行する(A7613)。例えば、普図当り終了処理では、普図普段処理に移行するために、ゲーム処理番号として「0」を設定して普図ゲーム処理番号領域にセーブする。
その後、遊技制御装置100は、普図表示器53による普通図柄の変動を制御するための普図変動制御テーブルを準備する(A7614)。その後、普図表示器53による普通図柄の変動の制御に係る図柄変動制御処理を実行し(A7615)、普図ゲーム処理を終了する。
一方、遊技制御装置100は、普図ゲーム処理タイマの値が0でない場合(A7604の結果が「N」)、すなわち、タイムアップしていない場合には、ステップA7614以降の処理を実行する。
〔普図普段処理〕
次に、普図ゲーム処理における普図普段処理(A7608)の詳細について説明する。図22は、普図普段処理の手順を示すフローチャートである。
遊技制御装置100は、まず、普図保留数が0であるか否かを判定する(A7901)。普図保留数が0である場合には(A7901の結果が「Y」)、普図普段処理移行設定処理1を実行し(A7923)、普図普段処理を終了する。普図普段処理移行設定処理1では、普図普段処理に移行するために、ゲーム処理番号として「0」を設定して普図ゲーム処理番号領域にセーブする。
また、遊技制御装置100は、普図保留数が0でない場合には(A7901の結果が「N」)、RWMの普図当り乱数格納領域(保留数1用)から当り乱数をロードし、RWMの普図当り図柄乱数格納領域(保留数1用)から当り図柄乱数をロードする(A7902)。そして、普図当り乱数格納領域(保留数1用)と普図当り図柄乱数格納領域(保留数1用)を0クリアする(A7903)。さらに、普図変動表示ゲームにて当り結果となる確率が通常よりも高い普図高確率中(高確率状態中)であるか否か、すなわち、時短状態(普電サポート状態)であるか否かを判定する(A7904)。なお、高確率中の普図当り確率は250/251であり、低確率中での普図当り確率は0/251である。
遊技制御装置100は、普図高確率中でない場合(A7904の結果が「N」)、普図低確率中の下限判定値である低確率下限判定値(ここでは251)を設定し(A7905)、普図高確率中である場合(A7904の結果が「Y」)、普図高確率中の下限判定値である高確率下限判定値(ここでは1)を設定し(A7906)、ステップA7907の処理に移行する。
遊技制御装置100は、当り乱数が上限判定値(ここでは251)以上であるか否か判定する(A7907)。なお、ここでの上限判定値は、普図高確率中と普図低確率中とで共通する。当り乱数が上限判定値以上である場合(A7907の結果が「Y」)、即ち、はずれの場合、ステップA7909の処理に移行する。当り乱数が上限判定値未満である場合(A7907の結果が「N」)、当り乱数が下限判定値未満であるか否かを判定する(A7908)。
遊技制御装置100は、当り乱数が下限判定値未満である場合(A7908の結果が「Y」)、即ち、はずれの場合、当りフラグ領域にはずれ情報をセーブする(A7909)。さらに、普図停止図柄番号としてはずれ停止図柄番号を設定し(A7910)、はずれ図柄情報を普図停止図柄情報領域にセーブし(A7911)、ステップA7915の処理に移行する。
遊技制御装置100は、当り乱数が下限判定値未満でない場合(A7908の結果が「N」)、即ち、当りの場合、当りフラグ領域に当り情報をセーブし(A7912)、ロードした当り図柄乱数に対応する当り停止図柄番号を設定し(A7913)、当り停止図柄番号に対応する当り停止図柄情報を普図停止図柄情報領域にセーブし(A7914)、ステップA7915の処理に移行する。なお、当り停止図柄は、数種類存在してよい。
次に、遊技制御装置100は、停止図柄番号を普図停止図柄領域にセーブし(A7915)、停止図柄番号を試験信号出力データ領域にセーブする(A7916)。次に、普図変動表示ゲームに関連する情報(特に普図変動表示ゲームの当り/はずれの情報)に対応する普図コマンドを演出コマンドとして準備して(A7917)、演出コマンド設定処理を実行する(A7918)。そして、普図当り乱数格納領域をシフトし(A7919)、シフト後の空き領域を0クリアした後(A7920)、普図保留数を-1更新する(A7921)。
すなわち、最も古い普図保留数1に関する普図変動表示ゲームが実行されることに伴い、普図保留数1以降に保留となっている普図保留数2~4の順位を1つずつ繰り上げる。この処理により、普図当り乱数格納領域の普図保留数2用から普図保留数4用の値が、普図当り乱数格納領域の普図保留数1用から普図保留数3用に移動することとなる。そして、普図当り乱数格納領域の普図保留数4用の値がクリアされて、普図保留数が1デクリメントされる。
次に、遊技制御装置100は、普図変動中処理移行設定処理を実行し(A7922)、普図普段処理を終了する。普図変動中処理移行設定処理では、普図変動中処理に移行するために、ゲーム処理番号として「1」を設定して普図ゲーム処理番号領域にセーブする他、普図変動時間を普図ゲーム処理タイマ領域にセーブする。
[演出制御装置の制御]
以下に、演出制御装置300が演出制御用プログラムによって実行する制御(処理)を説明する。
〔メイン処理(演出制御装置)〕
最初に、演出制御装置300によって実行されるメイン処理の詳細を説明する。図23は、演出制御装置300によって実行されるメイン処理(メインプログラム)の手順を示すフローチャートである。メイン処理は、遊技機10に電源が投入されると主制御用マイコン311(演出用マイコン)によって実行される。なお、演出制御装置300が実行する処理のフローチャートにおいて、ステップの符号(番号)は「B****」と表されている。
演出制御装置300は、メイン処理の実行が開始されると、まず、割込みを禁止する(B0001)。次にCPU311及びVDP312の初期設定を実行し(B0002、B0003)、割込みを許可する(B0004)。割込みが許可されると、遊技制御装置100から送信されたコマンドを受信するコマンド受信割込み処理を実行可能な状態となる。
次に、演出制御装置300は、表示装置41等に表示する表示用データの生成を許可し(B0005)、乱数生成に用いる乱数シードを設定する(B0006)。そして、初期化すべき領域に電源投入時の初期値をセーブする(B0007)。
続いて、演出制御装置300は、WDT(ウォッチドックタイマ)をクリアする(B0008)。WDTは、上述したCPU初期設定(B0002)で起動され、CPU311が正常に動作しているかどうかを監視する。WDTが一定周期を経過してもクリアされない場合は、WDTがタイムアップしてCPU311がリセットされる。
その後、演出制御装置300は、RTC(リアルタイムクロック)338から時刻の情報を読み込むRTC読込処理を実行する(B0009)。
RTC読込処理では、所定の周期(例えば2時間おき)でRTC338から時刻の情報を読み込む構成としてもよく、ステップB0009へ処理が移行する度に時刻の情報を読み込む必要はない。演出制御装置300への電源投入(即ち遊技機10への電源投入)の際に、一度だけ、RTC読込処理を実行する構成としてもよい(RTC読込処理の位置を変えて、例えばステップB0003とB0004の間で実行してもよい)。演出制御装置300は、RAM内のタイマ領域に時刻を計時する時刻用タイマ(計時手段)を設定し、所定の周期でRTC338から時刻の情報を読み込んだ際又は電源投入時に一度だけRTC338から時刻の情報を読み込んだ際に、時刻用タイマ(計時手段)をRTC338の時刻に合わせるよう調整してよい。そして、演出制御装置300は、時刻用タイマを使用して各種処理を実行してもよい。このようにすれば、RTC338から時刻を読み込む処理の回数を低減でき、CPU311の負荷が減少する。
次に、演出制御装置300は、遊技者による演出ボタン25の操作信号(演出ボタンスイッチ25a又はタッチパネル25bの信号)を検出したり、検出した信号に応じて演出内容(設定)を変更したりする演出ボタン入力処理を実行する(B0010)。続いて、遊技場(遊技店)の責任者や遊技者等によるLEDや液晶の輝度、音量の変更などの操作を受け付けるホール・遊技者設定モード処理を実行する(B0011)。ホール・遊技者設定モード処理において、後述の演出ポイントに応じて、遊技者は演出をカスタマイズすることができる。
次に、演出制御装置300は、演出ポイントの加算やクリアを実行する演出ポイント制御処理を実行する(B0012)。演出ポイント制御処理では、演出ポイントの加算対象となる演出や操作が実行されることで演出ポイントが加算される処理がされ、また、演出ポイントを次回の遊技に繰り越せるよう遊技終了時などに、例えば、演出ポイントの情報等を含む情報がQRコード(登録商標)として表示装置41に表示される。例えば、演出制御装置300は、ホール・遊技者設定モード処理において、QRコード(登録商標)を表示装置41に表示できる。
次に、演出制御装置300は、演出乱数などの乱数を更新するための乱数更新処理を実行し(B0013)、遊技制御装置100から受信した受信コマンドを解析して対応する受信コマンドチェック処理を実行する(B0014)。なお、受信コマンドチェック処理の詳細については、図24にて後述する。
続いて、演出制御装置300は、表示装置41で表示される客待ちデモの内容を編集して制御する客待ちデモ編集処理を実行し(B0015)、客待ち中の遊技機10の節電状態を制御する節電制御処理を実行する(B0016)。
次に、演出制御装置300は、表示装置41等の表示装置(表示手段)に表示する内容に合わせて各種データの更新を行ったり、表示装置41に表示する描画を表示フレームバッファに設定したりする演出表示編集処理を実行する(B0017)。このとき設定される描画データは、フレーム周期1/30秒(約33.3msec)以内にVDP312が描画を完了することができるものであれば問題なく表示装置41の画像を更新することができる。そして、表示フレームバッファへの描画準備を完了させて描画コマンド準備終了設定を実行する(B0018)。
続いて、演出制御装置300は、フレーム切替タイミングであるか否かを判定する(B0019)。フレーム切替タイミングでない場合は(B0019の結果が「N」)、フレーム切替タイミングになるまでB0019の処理を繰り返し、フレーム切替タイミングである場合は(B0019の結果が「Y」)、表示装置41への画面描画を指示する(B0020)。本実施形態のフレーム周期は1/30秒なので、例えば1/60秒(フレーム周期の1/2)毎の周期的なVブランク(画像更新)が2回実行されるとフレームの切り替えが行われる。なお、1/60秒で画像を更新せず、さらに間隔を大きくしてもよい。
また、演出制御装置300は、スピーカ19から出力される音を制御するサウンド制御処理を実行する(B0021)。
また、演出制御装置300は、LED等からなる装飾装置(盤装飾装置46、枠装飾装置18)を制御する装飾制御処理を実行する(B0022)。装飾制御処理では、例えば、LED等の装飾装置の輝度制御(発光制御)を実行する。
さらに、演出制御装置300は、モータ及びソレノイドで駆動される電動役物などの演出装置(盤演出装置44)を制御する可動体制御処理を実行する(B0023)。可動体制御処理では、例えば、モータを駆動する役物動作演出を設定する。
そして、演出制御装置300は、前述のB0023の処理を終えると、B0008の処理に戻る。以降、B0008からB0023までの処理を繰り返す。
〔受信コマンドチェック処理〕
次に、図24を参照して、上述したメイン処理(図23)における受信コマンドチェック処理(B0014)の詳細について説明する。図24は、演出制御装置300によって実行される受信コマンドチェック処理の手順を示すフローチャートである。
演出制御装置300は、まず、遊技制御装置100から受信したコマンド数をチェックするためにRAMのコマンド受信カウンタ領域のコマンド受信カウンタの値をコマンド受信数としてロードする(B1101)。そして、コマンド受信数が0でないか否かを判定する(B1102)。コマンド受信数が0である場合、すなわち、遊技制御装置100から受信したコマンドがない場合には(B1102の結果が「N」)、解析するコマンドがないので、受信コマンドチェック処理を終了する。
一方、演出制御装置300は、コマンド受信数が0でない場合、すなわち、遊技制御装置100からコマンドを受信している場合には(B1102の結果が「Y」)、コマンド受信カウンタ領域のコマンド受信カウンタ値をコマンド受信数分減算した後(B1103)、RAMの受信コマンドバッファの内容を解析用のコマンド領域にコピーする(B1104)。ここで、受信コマンドバッファはリングバッファなので、バッファ内の内容をコマンド領域にコピーする前にコマンド受信数を減算しても問題ない。また、コピー中に新たにコマンドを受信してもデータが上書きされることはない。
そして、演出制御装置300は、コマンド読出インデックスを0~31の範囲で+1更新(1だけ加算)する(B1105)。受信コマンドバッファは受信したコマンドを32個まで保存できるよう構成されている。受信したコマンドは、コマンド読出インデックス0~31の順に受信コマンドバッファに格納されており、ここではインデックス順に受信したコマンドを読み出して、解析用のコマンド領域にコピーする。なお、解析用のコマンド領域へのコピーが完了したタイミングで、読みだしたコマンド読出インデックスに対応する受信コマンドバッファの格納領域内はクリアされる。
演出制御装置300は、ステップB1101の処理にてロードしたコマンド受信数分のコマンドのコピーが完了したか否かを判定し(B1106)、コピーが完了していない場合は(B1106の結果が「N」)、ステップB1104からB1106の処理を繰り返す。
遊技制御装置100から送信されたコマンドを演出制御装置300が受信すると、受信コマンドバッファに受信したコマンドの内容が保存されると同時にコマンド受信カウンタ領域のコマンド受信カウンタ値が加算更新される。受信コマンドバッファには32個分のコマンドを保存することができるが、受信したコマンドの解析は、別途、解析用のコマンド領域で行われる。そして、解析用のコマンド領域に受信したコマンドの内容がコピーされると、受信コマンドバッファ及びコマンド受信カウンタ値はクリアされる。このように、受信コマンドバッファ内で直接解析を行わずに常に空き領域を確保しておくことで、コマンドの大量受信に備えることができる。
続いて、演出制御装置300は、コピーが完了した場合には(B1106の結果が「Y」)、解析用のコマンド領域の受信したコマンド内容をロードし(B1107)、内容を解析する受信コマンド解析処理を実行する(B1108)。なお、受信コマンド解析処理の詳細については、次の図25にて後述する。また、解析用のコマンド領域のアドレスを更新する(B1109)。その後、ステップB1101の処理にてロードしたコマンド受信数分のコマンドの解析が完了したか否かを判定し(B1110)、解析が完了していない場合は(B1110の結果が「N」)、ステップB1107からB1110の処理を繰り返す。解析が完了した場合には(B1110の結果が「Y」)、受信コマンドチェック処理を終了する。
〔受信コマンド解析処理〕
次に、図25を参照して、前述した受信コマンドチェック処理(図24)における受信コマンド解析処理(B1108)の詳細について説明する。図25は、演出制御装置300によって実行される受信コマンド解析処理の手順を示すフローチャートである。
演出制御装置300は、まず、受信したコマンドの上位バイトをMODE部、下位バイトをACTION部(ACT部)として分離する(B1201)。遊技制御装置100から演出制御装置300に送信されるコマンドは、MODE部(MODEコマンド)及びACTION部(ACTIONコマンド)によって構成されており、通常、コマンドの種類を示すMODE部から連続して送信される。従って、受信したコマンドの上位、下位はMODE部、ACTION部の順に構成される。
次に、演出制御装置300は、MODE部が正常範囲であるか否かを判定する(B1202)。すなわち、コマンドの種類を示すMODE部が取り得る値(種類を示すコマンド仕様として割り当てられた値)であるか否かを判定する。そして、MODE部が正常範囲である場合には(B1202の結果が「Y」)、同様にACTION部が正常範囲であるか否かを判定する(B1203)。すなわち、コマンドの内容(具体的な演出指示等)を示すACTION部が取り得る値(内容を示すコマンド仕様として割り当てられた値)であるか否かを判定する。そして、ACTION部が正常範囲である場合には(B1203の結果が「Y」)、さらに、MODE部に対するACTION部は正しい組み合せか否かを判定する(B1204)。すなわち、ACTION部の値が、MODE部によって特定される種類のコマンドが取り得る値であるのか否かを判定する。そして、正しい組み合せである場合には(B1204の結果が「Y」)、B1205以降の処理でコマンドの系統に応じたコマンド処理を実行する。
演出制御装置300は、まず、MODE部の値が変動系コマンドの範囲か否かを判定する(B1205)。なお、変動系コマンドは、飾り特別図柄の変動パターンなどを指令するコマンドであり、例えば変動コマンド(A3407)がある。そして、MODE部が変動系コマンドを表す場合には(B1205の結果が「Y」)、変動系コマンド処理を実行し(B1206)、受信コマンド解析処理を終了する。
演出制御装置300は、MODE部が変動系コマンドを表していない場合には(B1205の結果が「N」)、次に、MODE部が大当り系コマンドの範囲か否かを判定する(B1207)。なお、大当り系コマンドは、大当り中の演出に関する動作(ファンファーレ画面やラウンド画面の表示など)を指令するコマンドであり、例えば、ファンファーレ画面を指令するためのファンファーレコマンド(A2610)、ラウンド画面を指令するためのラウンドコマンド(A2611)、インターバル画面を指令するためのインターバルコマンド(A2612)、エンディング画面を指令するためのエンディングコマンド(A2612)などである。そして、MODE部が大当り系コマンドを表す場合には(B1207の結果が「Y」)、大当り系コマンド処理を実行し(B1208)、受信コマンド解析処理を終了する。
演出制御装置300は、MODE部が大当り系コマンドを表していない場合には(B1207の結果が「N」)、次に、MODE部が図柄系コマンドの範囲か否かを判定する(B1209)。なお、図柄系コマンドには、例えば、停止図柄パターンに対応する飾り特図コマンド(A3403、A3503)がある。そして、MODE部が図柄系コマンドを表す場合には(B1209の結果が「Y」)、図柄系コマンド処理を実行し(B1210)、受信コマンド解析処理を終了する。
演出制御装置300は、MODE部が図柄系コマンドを表していない場合には(B1209の結果が「N」)、次に、MODE部が単発系コマンドの範囲か否かを判定する(B1211)。そして、MODE部が単発系コマンドを表す場合には(B1211の結果が「Y」)、単発系コマンド処理を実行し(B1212)、受信コマンド解析処理を終了する。
演出制御装置300は、MODE部が単発系コマンドを表していない場合には(B1211の結果が「N」)、次に、MODE部が先読み図柄系コマンドの範囲か否かを判定する(B1213)。先読み図柄系コマンドには、例えば、先読み停止図柄コマンド(A2913)がある。そして、MODE部が先読み図柄系コマンドを表す場合には(B1213の結果が「Y」)、先読み図柄系コマンド処理を実行し(B1214)、受信コマンド解析処理を終了する。
演出制御装置300は、MODE部が先読み図柄系コマンドを表していない場合には(B1213の結果が「N」)、次に、MODE部が先読み変動系コマンドの範囲か否かを判定する(B1215)。先読み変動系コマンドには、例えば、先読み変動パターンコマンド(A2913)がある。そして、MODE部が先読み変動系コマンドを表す場合には(B1215の結果が「Y」)、先読み変動系コマンド処理を実行し(B1216)、受信コマンド解析処理を終了する。
一方、演出制御装置300は、MODE部が先読み変動系コマンドを表していない場合には(B1215の結果が「N」)、予期しないコマンド(例えば、テストモード中のみ使用するコマンド)を受信した可能性があるので、受信コマンド解析処理を終了する。また、MODE部が正常範囲でない場合(B1202の結果が「N」)、ACTION部が正常範囲でない場合(B1203の結果が「N」)、もしくは、MODE部に対するACTION部が正しい組合せでない場合も(B1204の結果が「N」)、受信コマンド解析処理を終了する。
〔単発系コマンド処理〕
次に、図26を参照して、前述した受信コマンド解析処理(図25)における単発系コマンド処理(B1212)の詳細について説明する。図26は、演出制御装置300によって実行される単発系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、まず、MODE部が遊技機の種類を示す機種指定コマンドを表すか否かを判定する(B1301)。そして、MODE部が機種指定コマンドを表す場合には(B1301の結果が「Y」)、遊技機の種類を設定する機種設定処理を実行し(B1302)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が機種指定コマンドを表していない場合には(B1301の結果が「N」)、次に、MODE部がRAM初期化のコマンドを表すか否かを判定する(B1303)。そして、MODE部がRAM初期化のコマンドを表す場合には(B1303の結果が「Y」)、RAM初期化の報知等を行うRAM初期化設定処理を実行し(B1304)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部がRAM初期化のコマンドを表していない場合には(B1303の結果が「N」)、次に、MODE部が停電復旧コマンドを表すか否かを判定する(B1305)。そして、MODE部が停電復旧コマンドを表す場合には(B1305の結果が「Y」)、停電復旧設定処理を実行し(B1306)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が停電復旧コマンドを表していない場合には(B1305の結果が「N」)、次に、MODE部が客待ちデモコマンドを表すか否かを判定する(B1307)。そして、MODE部が客待ちデモコマンドを表す場合には(B1307の結果が「Y」)、客待ちデモ設定処理を実行し(B1308)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が客待ちデモコマンドを表していない場合には(B1307の結果が「N」)、次に、MODE部が飾り特図1保留数コマンドを表すか否かを判定する(B1309)。そして、MODE部が飾り特図1保留数コマンドを表す場合には(B1309の結果が「Y」)、特図1保留情報設定処理を実行し(B1310)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が飾り特図1保留数コマンドを表していない場合には(B1309の結果が「N」)、次に、MODE部が飾り特図2保留数コマンドを表すか否かを判定する(B1311)。そして、MODE部が飾り特図2保留数コマンドを表す場合には(B1311の結果が「Y」)、特図2保留情報設定処理を実行し(B1312)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が飾り特図2保留数コマンドを表していない場合には(B1311の結果が「N」)、次に、MODE部が確率情報コマンドを表すか否かを判定する(B1313)。そして、MODE部が確率情報コマンドを表す場合には(B1313の結果が「Y」)、確率情報設定処理を実行し(B1314)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が確率情報コマンドを表していない場合には(B1313の結果が「N」)、次に、MODE部がエラー/不正系/呼出しのコマンドを表すか否かを判定する(B1315)。なお、エラー/不正系/呼出しのコマンドとして、例えば、不正発生コマンド、不正解除コマンド、状態オフコマンド、状態オンコマンド、磁石不正報知コマンド(磁気エラーコマンド)、盤電波不正報知コマンド(盤電波エラーコマンド)、呼出しコマンドがある。なお、遊技制御装置100は、呼出しボタンスイッチ67からのオン信号が入力された場合に、外部情報編集処理(A1319)で外部装置(特にホールコンピュータ)への信号を設定するとともに、演出制御装置300への呼出しコマンドを生成してよい。不正発生コマンドとして、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39aの信号に基づく不正入賞の発生を示すコマンドがある。不正解除コマンドは、不正の解除を示すコマンドである。入賞口スイッチ/状態監視処理(A1310)において、不正入賞の発生と不正の解除が監視されて、不正発生コマンドと不正解除コマンドが送信され得る。状態オンコマンドとして、ガラス枠開放検出スイッチ63からの信号の発生(ガラス枠開放エラー)や、前面枠開放検出スイッチ64(本体枠開放検出スイッチ)からの信号の発生(本体枠開放エラー、前面枠開放エラー)を示すコマンドがある。また、状態オフコマンドは、エラーの不発生を示す。入賞口スイッチ/状態監視処理(A1310)において状態オンコマンドと状態オフコマンドが送信され得る。磁気センサスイッチ61からの検出(磁石不正)があった場合に、磁石不正監視処理(A1315)において磁石不正報知コマンドが送信される。電波センサ62からの検出(電波不正)があった場合に、電波不正監視処理(A1316)において盤電波不正報知コマンドが送信される。
そして、MODE部がエラー/不正系/呼出しのコマンドを表す場合には(B1315の結果が「Y」)、エラーや不正や呼出しの報知や報知解除をするためのエラー/不正/呼出し設定処理を実行し(B1316)、単発系コマンド処理を終了する。エラー/不正/呼出し設定処理では、エラーや不正や呼出しの報知音を発生したり、エラー/不正系/呼出しのコマンドに対応する表示又は表示解除を表示装置41で実行するよう設定する。
演出制御装置300は、MODE部がエラー/不正系/呼出しのコマンドを表していない場合には(B1315の結果が「N」)、次に、MODE部が演出モード切替用のコマンド(特図表示中処理等で設定)を表すか否かを判定する(B1317)。そして、MODE部が演出モード切替用のコマンドを表す場合には(B1317の結果が「Y」)、演出モード切替設定処理を実行し(B1318)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部が演出モード切替用のコマンドを表していない場合には(B1317の結果が「N」)、次に、MODE部がアウト球数を示すアウト球数コマンドを表すか否かを判定する(B1319)。そして、MODE部がアウト球数コマンドを表す場合には(B1319の結果が「Y」)、アウト球数受信時処理を実行し(B1320)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部がアウト球数コマンドを表していない場合には(B1319の結果が「N」)、次に、MODE部がカウントのコマンド(大入賞口カウントコマンド)を表すか否かを判定する(B1321)。そして、MODE部が大入賞口スイッチのカウントのコマンドを表す場合には(B1321の結果が「Y」)、カウント情報設定処理を実行し(B1322)、単発系コマンド処理を終了する。
演出制御装置300は、MODE部がカウントのコマンドを表していない場合には(B1321の結果が「N」)、MODE部が設定値情報コマンド(確率設定値情報コマンド)を表すか否かを判定する(B1323)。設定値情報コマンドは、図6BのステップA1046の停電復旧時のコマンド及びステップA1044の処理で送信されるRAM初期化時のコマンドに含まれる。そして、MODE部が設定値情報コマンドを表す場合には(B1323の結果が「Y」)、設定値受信時処理を実行し(B1324)、単発系コマンド処理を終了する。設定値受信時処理では、設定値(確率設定値)をRAM等の記憶部に記憶するとともに必要な処理を実行する。
演出制御装置300は、MODE部が設定値情報コマンドを表していない場合には(B1323の結果が「N」)、MODE部が設定変更系のコマンドを表すか否かを判定する(B1325)。設定変更系のコマンドとして、例えば、確率設定変更中のコマンド(A1030)がある。そして、MODE部が設定変更系のコマンドを表す場合には(B1325の結果が「Y」)、設定変更系情報設定処理を実行し(B1326)、単発系コマンド処理を終了する。設定変更系情報設定処理では、設定変更系のコマンドの内容を記憶し、コマンドに対応する処理を実行する。例えば、確率設定変更中のコマンドを受信した場合に、設定変更系情報設定処理では、遊技者に設定変更中であること報知する設定変更中表示を表示装置41に表示する。
演出制御装置300は、MODE部が設定変更系のコマンドを表していない場合には(B1325の結果が「N」)、MODE部が設定確認系のコマンドを表すか否かを判定する(B1327)。設定確認系のコマンドとして、例えば、確率設定確認中のコマンド(A1033)がある。そして、MODE部が設定確認系のコマンドを表す場合には(B1327の結果が「Y」)、設定確認系情報設定処理を実行し(B1328)、単発系コマンド処理を終了する。設定確認系情報設定処理では、設定確認系のコマンドの内容を記憶し、コマンドに対応する処理を実行する。例えば、確率設定確認中のコマンドを受信した場合に、設定確認系情報設定処理では、遊技者に設定確認中であること報知する設定確認中表示を表示装置41に表示する。
次に、MODE部が図柄停止のコマンドを表すか否かを判定する(B1329)。なお、図柄停止のコマンドには、例えば、特図1の図柄停止コマンド(飾り特図1停止コマンド)と特図2の図柄停止コマンド(飾り特図2停止コマンド)がある。そして、MODE部が図柄停止のコマンドを表す場合には(B1329の結果が「Y」)、演出制御装置300は、次に、MODE部のコマンドが正常なコマンドであるか否かを判定する(B1330)。
MODE部のコマンドが正常なコマンドである場合には(B1330の結果が「Y」)、演出制御装置300は、対応する特図の停止態様を設定し(B1331)、全図柄が停止した後に遊技状態フラグを通常状態に設定して(B1332)、単発系コマンド処理を終了する。B1332の処理では、一例として、遊技状態フラグを通常状態に設定しているが、本処理が実行されるタイミングによって、遊技状態フラグは、「変動中」「大当り中」「小当り中」のフラグが設定される。
一方、MODE部が図柄停止のコマンドを表していない場合(B1329の結果が「N」)、または、MODE部のコマンドが正常ではない場合(B1330の結果が「N」)には、演出制御装置300は、単発系コマンド処理を終了する。
その他、演出制御装置300は、図26には記載されていないコマンドに対する処理を実行してよい。例えば、演出制御装置300は、始動入賞口36及び/又は普通変動入賞装置37に入賞があったことを示す始動入賞コマンドを遊技制御装置100から受信して、始動入賞コマンドに対応してスピーカから始動入賞があったことを遊技者に報知する始動入賞音を発生させるように設定してよい。
〔先読み図柄系コマンド処理〕
次に、図27を参照して、前述した受信コマンド解析処理(図25)における先読み図柄系コマンド処理(B1214)の詳細について説明する。図27は、演出制御装置300によって実行される先読み図柄系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、まず、最新保留情報が特図1保留(特図1始動記憶)の情報であるか否か、例えば、最新で受信した飾り特図保留数コマンドが飾り特図1保留数コマンドであるか否かを判定する(B1601)。最新保留情報が特図1保留の情報である場合(B1601の結果が「Y」)、先読み図柄系コマンド(先読み停止図柄コマンド)を特図1保留数に対応する特図1先読み図柄コマンド領域にセーブする(B1602)。
演出制御装置300は、最新保留情報が特図1保留の情報でない場合(B1601の結果が「N」)、即ち、最新で受信した飾り特図保留数コマンドが飾り特図2保留数コマンドである場合、先読み図柄系コマンド(先読み停止図柄コマンド)を特図2保留数に対応する特図2先読み図柄コマンド領域にセーブする(B1603)。
演出制御装置300は、ステップB1602とB1603の後、先読み変動系コマンドの受信待ちであることを示す先読み変動系コマンド受信待ちフラグを設定する(B1604)。これは、先読み図柄系コマンドと先読み変動系コマンドがセットになっているため、遊技制御装置100から先読み図柄系コマンドに続いて先読み変動系コマンドが送信されるためである。その後、先読み図柄系コマンド処理を終了する。
〔先読み変動系コマンド処理〕
次に、図28を参照して、前述した受信コマンド解析処理(図25)における先読み変動系コマンド処理(B1216)の詳細について説明する。図28は、演出制御装置300によって実行される先読み変動系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、まず、先読み変動系コマンド(先読み変動パターンコマンド)の受信待ち中であるか否かを判定する(B1701)。前述の先読み変動系コマンド受信待ちフラグ(B1604)が設定されている場合、先読み変動系コマンドの受信待ち中であると判定できる。先読み変動系コマンドの受信待ち中でない場合(B1701の結果が「N」)、先読み変動系コマンド処理を終了する。先読み変動系コマンドの受信待ち中である場合(B1701の結果が「Y」)、先読み変動系コマンド受信待ちフラグをクリアする(B1702)。
次に、演出制御装置300(サブ基板)は、最新保留情報の図柄(特図1又は特図2)の保留数に対応する先読み変動MODE変換テーブルを設定し(B1703)、先読み変動系コマンドのMODE部に対応してサブ内先読み変動コマンドMODE部を取得する(B1704)。次に、先読み変動ACT変換テーブルを設定し(B1705)、先読み変動系コマンドのACTION部(ACT部)に対応するサブ内先読み変動コマンドACT部を取得する(B1706)。
次に、演出制御装置300は、変換後のMODE部とACT部(即ち、サブ内先読み変動コマンドMODE部とACT部)が共に0以外であるか否かを判定する(B1707)。なお、正常(有効)なコマンドであれば0以外に変換される。変換後のMODE部、ACT部が共に0以外である場合(B1707の結果が「Y」)、変換後のMODE部とACT部から構成される変換後のコマンドを最新保留情報、保留数に対応する先読み変動コマンド領域(特図1先読み変動コマンド領域又は特図2先読み変動コマンド領域)にセーブする(B1708)。そして、先読みコマンド整合チェック処理を実行して(B1709)、変換後のMODE部とACT部の組合せが正常であるか否か判定する(B1710)。
なお、保留が変動表示ゲームを開始するときの保留数によって、MODE部に対応する前半変動の時間が変化する。保留が変動表示ゲームを開始するときに、保留が他になければ長めの前半変動になり、新たに保留が発生して保留数が多ければ短めの前半変動となる。従って、前半変動の時間値が遷移しても、演出制御装置300の内部コマンドが同じに扱えるように、受信した先読み変動系コマンドのMODE部をサブ内先読み変動コマンドMODE部に変換しておく。
また、リーチの種類は保留数に関係ないため、サブ内先読み変動コマンドACT部に対応する後半変動は保留数に依存しない。しかし、同一系統のリーチにも種類があるため、仮に先読み変動系コマンドのACT部(後半変動の値)を変換せずに、演出制御装置300がそのまま使うと数が多くなりチェックが困難になる。例えば、ノーマルリーチにも、ノーマルリーチ-1停止はずれ、ノーマルリーチ+1停止はずれなどの種類が存在する。従って、同一系統のリーチを示すACT部を、同じサブ内先読み変動コマンドACT部に変換することで、数を減らし、先読みコマンド整合チェック処理等のチェック処理の負担を軽減する。
次に、演出制御装置300は、変換後のMODE部とACT部(即ち、サブ内先読み変動コマンドMODE部とACT部)の少なくとも一方が0である場合(B1707の結果が「N」)、又は、変換後のMODE部とACT部の組合せが正常でない場合(B1710の結果が「N」)、変換後のコマンドに異常があるとして、先読み変動系コマンド処理を終了する。
演出制御装置300は、変換後のMODE部とACT部の組合せが正常である場合(B1710の結果が「Y」)、先読み対象の保留情報(最新保留の情報)を先読み変動コマンド領域からロードし(B1711)、最新保留の先読み演出に関する先読み抽選処理を実行する(B1712)。先読み演出としては、例えば、連続予告演出(チャンス目先読み演出を含む)、先読みゾーン演出、保留変化予告などがある。続いて、最新保留の先読み演出(保留変化予告等)が発生するか否かを判定する(B1713)。最新保留の先読み演出が発生する場合(B1713の結果が「Y」)、選出された先読み演出に対応するポイント情報を設定する(B1714)。
次に、演出制御装置300は、発生する先読み演出(保留変化予告等)が直ちに開始する演出であるか否か判定する(B1715)。発生する先読み演出が直ちに開始する演出である場合(B1715の結果が「Y」)、選出された先読み演出に対応する表示を設定する(B1716)。発生する先読み演出が直ちに開始する演出でない場合(B1715の結果が「N」)、保留シフト時(保留表示の移動時、保留数減少時)の先読み演出に対応する表示を設定、保存する(B1717)。そして、先読み変動系コマンド処理を終了する。
一方、演出制御装置300は、最新保留の先読み演出が発生しない場合(B1713の結果が「N」)、又は、発生する先読み演出が直ちに開始する演出でない場合(B1715の結果が「N」)、そのまま。先読み変動系コマンド処理を終了する。
〔図柄系コマンド処理〕
次に、図29を参照して、前述した受信コマンド解析処理(図25)における図柄系コマンド処理(B1210)の詳細について説明する。図29は、演出制御装置300によって実行される図柄系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、受信した図柄系コマンド(飾り特図1コマンド又は飾り特図2コマンド)のMODE部に対応する特図種別を設定する(B1801)。特図種別は、特図1又は特図2である。そして、図柄系コマンドのMODE部とACTION部(ACT部)の組合せに対応する図柄種別を設定し、RAM等の所定領域にセーブする(B1802)。ここで、特図1と特図2では、図柄の振分け割合が変わるので、MODE毎にテーブルを使用して、図柄種別を設定する。なお、本実施形態において、図柄種別は、はずれ図柄や、4R確変大当り図柄(4R-A1、図柄1)、4R通常大当り図柄(4R-A2、図柄2)、8R確変大当り図柄(8R-A1、図柄3)、8R通常大当り図柄(8R-A2、図柄4)、12R確変大当り図柄(12R-A1、図柄5)、12R通常大当り図柄(12R-A2、図柄6)などに対応する。
〔変動系コマンド処理〕
次に、図30を参照して、前述した受信コマンド解析処理(図25)における変動系コマンド処理(B1206)の詳細について説明する。図30は、演出制御装置300によって実行される変動系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、受信した変動系コマンド(変動コマンド)の特図種別(特図1又は特図2)が未確定であるか否かを判定する(B1901)。特図種別が未確定である場合(B1901の結果が「Y」)、変動系コマンド処理を終了する。特図種別が未確定でない場合(B1901の結果が「N」)、受信した変動系コマンドと図柄系コマンドの組合せをチェックし(B1902)、変動系コマンドと図柄種別が不整合であるか否かを判定する(B1903)。ここで、不整合とは、はずれの変動系コマンドを受信したのに大当り図柄の図柄系コマンドを受信していた場合など、演出を行う上で矛盾してしまうことである。変動系コマンドと図柄種別が不整合である場合(B1903の結果が「Y」)、変動系コマンド処理を終了する。
演出制御装置300は、変動系コマンドと図柄種別が不整合でない場合(B1903の結果が「N」)、変動系コマンド(変動コマンド)から変動パターン種別を判別し(B1904)、変動中の演出である変動演出を設定する変動演出設定処理を実行する(B1905)。なお、同じ変動系コマンドに対して、複数の演出が存在する。続いて、遊技状態(P機状態)を示す遊技状態フラグに特図変動中を設定し(B1906)、連続演出等の先読み演出回数が0でなければ-1更新する(B1907)。
〔変動演出設定処理〕
次に、図31を参照して、前述した変動系コマンド処理(図30)における変動演出設定処理(B1905)の詳細について説明する。図31は、演出制御装置300によって実行される変動演出設定処理の手順を示すフローチャートである。
演出制御装置300は、まず、変動パターン種別が、リーチなし変動(リーチ状態にならない変動)であるか否かを判定する(B2001)。変動パターン種別がリーチなし変動である場合(B2001の結果が「Y」)、演出ポイントのポイント数、機種コード、特図種別、演出モード、設定情報(設定値)に対応する前半予告振分グループアドレステーブルを設定し(B2002)、変動系コマンド(変動コマンド)のMODE部と特図種別の保留数に対応する前半予告振分グループテーブルのアドレスを取得する(B2003)。リーチなし変動の場合、保留数が多いほど変動時間が短縮されるため、保留数に対応するテーブルのアドレスを取得している。
演出制御装置300は、変動パターン種別がリーチなし変動でない場合(B2001の結果が「N」)、即ち、リーチあり変動である場合、演出ポイントのポイント数、機種コード、特図種別、演出モード、図柄種別、設定情報(設定値)に対応する前半予告振分グループアドレステーブルを設定し(B2004)、変動系コマンド(変動コマンド)のMODE部と変動パターン種別に対応する前半予告振分グループテーブルのアドレスを取得する(B2005)。
演出制御装置300は、ステップB2003、B2005の後、前半変動中(リーチ前)に出現する予告の抽選を行う(B2006)。続いて、演出ポイントのポイント数、機種コード、特図種別、演出モード、図柄種別、設定情報(設定値)に対応する後半予告振分グループアドレステーブルを設定し(B2007)、変動系コマンドのACT部に対応する後半予告振分グループテーブルのアドレスを取得し(B2008)、後半変動中(リーチ中)に出現する予告の抽選を行う(B2009)。その後、変動系コマンド(変動コマンド)のMODE部、ACT部に対応する変動演出の内容を決定する(B2010)。なお、変動系コマンドから変動時間や主なリーチ内容などがわかる。
次に、演出制御装置300は、予告の抽選結果に対応する演出(予告演出)の内容を決定する(B2011)。その後、リーチ演出等の変動演出や予告演出の内容に応じて、飾り特図変動表示ゲームの停止図柄を決定する(B2012)。ここで、はずれ図柄の場合にばらけ目を決定するなど、飾り停止図柄を具体的に決定する。
次に、演出制御装置300は、変動演出の表示設定を行い(B2013)、予告演出の表示設定を行う(B2014)。続いて、特図種別に対応する保留減少の表示設定を行い、例えば、今回変動する飾り特図に対応する保留表示が減る表示が設定される(B2015)。続いて、スピーカの音声による演出態様(音出力態様)を定める音声番号、装飾装置の発光による演出態様を定める装飾番号を設定する(B2016)。装飾装置(盤装飾装置46、枠装飾装置18)は、複数の装飾用発光部(装飾LED等)を有し、装飾番号で定められる発光態様(各LEDの色や発光タイミング等)で発光する。
なお、音声番号や装飾番号を演出内容だけでなく設定情報(設定値)に基づいて設定することも可能である。このようにすると、遊技者は、装飾装置の発光態様、即ち、装飾用発光部(LED)の発光態様から遊技機10の設定情報(設定値)を推測することを楽しめる。
次に、演出制御装置300は、特図種別に対応する飾り特図変動の表示設定を行い(B2017)、表示装置41で変動する前述の第一から第三の特別図柄以外に第四特別図柄(第4図柄、識別情報)に関する第4図柄変動の表示設定を行う(B2018)。なお、第4図柄変動は、表示装置41以外に設けた前述のランプ表示装置80のランプ表示部1、2(LED)で表示されてもよいし、表示装置41の表示画面上で実行されてもよい。
〔当り系コマンド処理〕
次に、図32を参照して、前述した受信コマンド解析処理(図25)における当り系コマンド処理(B1208)の詳細について説明する。図32は、演出制御装置300によって実行される当り系コマンド処理の手順を示すフローチャートである。
演出制御装置300は、まず、受信した当り系コマンドのMODE部がファンファーレを表すか否かを判定する(B2101)。当り系コマンドのMODE部がファンファーレを表す場合(B2101の結果が「Y」)、即ち、当り系コマンドが大当りファンファーレコマンド(又は小当りがあるなら小当りファンファーレコマンド)である場合、ファンファーレ演出を設定するためのファンファーレ演出設定処理を実行する(B2102)。なお、ファンファーレコマンドには、今回の大当りのラウンド数上限値の情報が含まれている。続いて、現在の遊技機10の遊技状態(P機状態)を示す遊技状態フラグにファンファーレ中を設定し(B2103)、当り系コマンド処理を終了する。なお、ラウンド数上限値は、図柄系コマンド(停止図柄パターンに対応する飾り特図コマンド)から判定される図柄種別からも得ることができる。
演出制御装置300は、受信した当り系コマンドのMODE部がファンファーレを表さない場合には(B2101の結果が「N」)、当り系コマンドのMODE部がラウンドを表すか否かを判定する(B2104)。MODE部がラウンドを表す場合(B2104の結果が「Y」)、即ち、当り系コマンドがラウンドコマンド(又は小当りがあるなら小当り開放中コマンド)である場合、演出制御装置300は、ラウンド演出設定処理を実行し、現在の遊技機10の遊技状態(P機状態)を示す遊技状態フラグにラウンド中を設定し(B2105、B2106)、当り系コマンド処理を終了する。
受信した当り系コマンドのMODE部がラウンドを表さない場合には(B2104の結果が「N」)、演出制御装置300は、当り系コマンドのMODE部がインターバルを表すか否かを判定する(B2107)。MODE部がインターバルを表す場合(B2107の結果が「Y」)、即ち、当り系コマンドがインターバルコマンドである場合、演出制御装置300は、インターバル演出設定処理を実行し、現在の遊技機10の遊技状態(P機状態)を示す遊技状態フラグにインターバル中を設定し(B2108、B2109)、当り系コマンド処理を終了する。(なお、小当りがあって小当りで大入賞口が一回だけ開放される場合、即ち、小当りが1ラウンドである場合、インターバルコマンドはない。)
受信した当り系コマンドのMODE部がインターバルを表さない場合には(B2107の結果が「N」)、演出制御装置300は、当り系コマンドのMODE部がエンディングを表すか否かを判定する(B2110)。MODE部がエンディングを表す場合(B2110の結果が「Y」)、即ち、当り系コマンドがエンディングコマンド(又は小当りがあるなら小当り終了画面コマンド)である場合、演出制御装置300は、エンディング演出を設定するためのエンディング演出設定処理を実行し、現在の遊技機10の遊技状態(P機状態)を示す遊技状態フラグにエンディング中を設定し(B2111、B2112)、当り系コマンド処理を終了する。
なお、受信した当り系コマンドのMODE部がエンディングを表さない場合には(B2110の結果が「N」)、演出制御装置300は、いずれの処理も実行せずに、当り系コマンド処理を終了する。
〔下皿ユニット〕
図33を参照して、下皿ユニット29の詳細な構成を説明する。図33は、下皿ユニット29を右斜め上から見た斜視図(a)と、左斜め上から見た斜視図(b)を示す。
下皿23等を備える下皿ユニット29は、上皿ユニットと形状的に適合しており上下方向に重ねて並べて配置される。下皿ユニット29は、前面枠12に取り付けられる。下皿ユニット29は、背面側の下皿ベース453と、下皿ベース453に前方から接続する左側ケース部456、中央ケース部458、及び右側ケース部460と、を備える。
また、下皿ユニット29は、左側ケース部456の前方に、遊技場(遊技店)の係員を呼び出すための呼出しボタン454を備える。したがって、遊技中の遊技者は、座っている状態で下皿ユニット29に手を伸ばすことで、容易に呼出しボタン454を押下(操作)することができる。また、呼出しボタン454は、光を透過可能なケース部材に覆われ、当該ケース部材には例えば「呼出」という文字が描かれている。したがって、遊技者は、当該文字を視認することで、呼出しボタン454が遊技場の係員を呼び出すためのボタン(操作手段)であることを認識し易くなる。呼出しボタン454には、すなわち呼出しボタン454のケース部材の下方には、枠装飾装置18のLED(発光ダイオード)が発光手段として設けられる(図示省略)。
呼出しボタン454に備えられた呼出しボタンスイッチ67からのオン信号(呼出し信号)は、遊技制御装置100(図3)に入力され、外部情報として外部情報端子板71からデータランプに送られることで、遊技情報等の表示装置であるデータランプが発光するとともに、外部装置(特にホールコンピュータ)にも送られる。また、遊技制御装置100に入力された呼出しボタンスイッチ67からのオン信号(呼出し信号)は、オン信号に対応する呼出しコマンド(演出コマンド)に変換されて演出制御装置300にも送信される。
演出制御装置300は、ステップB1315の処理で呼出しコマンド(エラー/不正系/呼出しのコマンド)を受信することで、呼出しボタン454のLEDを発光(点灯または点滅)させたり、当該LEDの発光を解除させたりできる。なお、演出制御装置300は、呼出しコマンドを受信することで、表示装置41の表示画面に対応する表示または表示の解除を行うこともできる。
中央ケース部458の前方には、下皿ユニット29の右前側を装飾する右飾り部466aが設けられる。下皿23の前方には、下皿ユニット29の左前側を装飾する左飾り部466bが設けられる。
中央ケース部458は、略上下方向に延在する縦部分458aと略左右方向に延在する横部分458bを有する。中央ケース部458の縦部分458aと右側ケース部460の間には、下スピーカ19bと操作ハンドル24の軸部24aが配置される。
下皿ユニット29は、大きく分けて、左右方向に延在する平坦部29aと、平坦部29aの右側で上方に突出する右側突出部29bからなる。平坦部29aは、下皿23、左側ケース部456、及び、中央ケース部458の横部分458bを含む。平坦部29aの上方には、上皿ユニット20の底板部(図示省略)が対面して配置される。右側突出部29bは、中央ケース部458の縦部分458a、右側ケース部460、下スピーカ19b、及び、操作ハンドル24を含む。
下皿ユニット29の下皿ベース453の背面には、遊技球の第1入口461と第2入口465が設けられる。第1入口461には、球発射装置(図示省略)から打ち出されたが遊技領域32に到達せずに戻ってきたようなファール球(落下球)が流入するとともに、上皿21が満タン(満杯)になった際に払出ユニットからの遊技球(賞球)が流入してよい。第2入口465には、上皿21から抜かれた遊技球が流入してよい。遊技球は、第1入口461と第2入口465から通路462を通って、通路462の出口463から下皿23に流入する。なお、下皿23が満タンとなった場合に、通路462に遊技球が貯留される。通路462は、第1入口461と第2入口465に連通するために、一部が、左側ケース部456と中央ケース部458の内部又は下側を通過してよい。通路462の上端には、通路462を上方から覆う透明な部材であるカバー464が設けられる。カバー464が透明であることから、ガラス枠15を前面枠12に対して開放した場合に通路462内を視認可能となる。
左側ケース部456の前方、且つ、下側ケース部459の上方には、下皿23の底部と前部を構成する皿部455が配置される。なお、左側ケース部456は、一体的に形成された上板456aと前板456bを有し、前板456bが下皿23の背板を構成する。左側ケース部456の前板456b(下皿23の背板)は、下側に行くほど奥側に位置するような傾斜を有することによって、遊技者が斜め上の前方から下皿23の遊技球を手で掻き出し易くなる。
下皿23の底部(即ち皿部455の底部)には、円環状の開口部455aと、開口部455aから4方に放射状に延びる谷部455bが設けられる。通路462の出口463から下皿23に流入した遊技球は、通り易い谷部455bを通って開口部455aに落ちる。開口部455aは、開閉部材457によって通常は閉じられているが、開閉操作部23bの操作によって開閉部材457が開く。開閉部材457が開くと、遊技球は、開口部455a(球抜き穴23a)を通過して、遊技機10の外部に排出される。
〔遊技制御装置の変形例〕
次に、図34を用いて、遊技制御装置100(主基板)の変形例の構成について説明する。遊技制御装置100は、図34に示すように構成されてもよい。図34は、遊技機10の遊技制御系の変形例の構成を示すブロック図である。なお、以下のブロック図の説明では、図3と重複する内容を適宜省略して説明する。
遊技制御装置100の変形例の構成では、図34に示すように、出力部130の第3出力ポート135は、一括表示装置50に表示する内容や呼出しボタンスイッチ67から第2入力ポート123に入力される信号に応じて、LEDのアノード端子が接続されているセグメント線のオン/オフデータを出力する。
また、出力部130の第4出力ポート136は、一括表示装置50や呼出しボタンスイッチ67のLEDのカソード端子が接続されているデジット線のオン/オフデータを出力する。
そして、第2ドライバ138bは、一括表示装置50とともに呼出しボタン454のセグメント線を駆動する。また、第3ドライバ138cは、一括表示装置50とともに呼出しボタン454のデジット線を駆動する。
したがって、変形例の構成によれば、遊技制御装置100は、一括表示装置50のLEDと同様に演出制御装置300を介することなく、呼出しボタンスイッチ67からの入力に応じて呼出しボタン454のLEDを発光(点灯または点滅)させることができる。
なお、第4出力ポート136と第5出力ポート137とを用いて、呼出しボタンスイッチ67からの検出信号に対応する外部情報信号を外部情報端子板71に出力するとともに、呼出しボタン454のLEDにオン/オフデータを出力してもよい。また、第2出力ポート134を用いて、普電ソレノイド37cや大入賞口ソレノイド39bなどの開閉データ信号を出力するとともに、呼出しボタン454のLEDにオン/オフデータを出力してもよい。なお、呼出しボタン454の1回(奇数回)の押下で呼出しボタン454のLEDにオンデータを出力し、呼出しボタン454の2回(偶数回)の押下で呼出しボタン454のLEDにオフデータを出力してよい。
また、第2入力ポート123に呼出しボタンスイッチ67からの信号が入力されると、演出制御装置300にも対応するデータが呼出しコマンド(エラー/不正系/呼出しのコマンド)として送信される。そのため、演出制御装置300は、呼出しボタン454が押された際に、表示装置41の表示画面に対応する表示を表示可能となる。
〔演出制御装置の変形例〕
図35を用いて、演出制御装置300(サブ基板)の変形例の構成について説明する。図35は、遊技機10の演出制御系の変形例の構成を示すブロック図である。例えば遊技制御装置100(図3参照)は、第2入力ポート123に呼出しボタンスイッチ67からの信号が入力されると、演出制御装置300にも対応するデータを呼出しコマンドとして送信可能であり、当該呼出しコマンドには、呼出しボタン454のLEDのオン/オフデータも含めることができる。
そして、演出制御装置300は、遊技制御装置100から呼出しコマンドを受信すると、枠装飾装置(例えば枠装飾装置18等)を駆動制御する枠装飾LED制御回路333に呼出しボタン454のLEDのオン/オフデータを含めた信号を出力することができる。なお、呼出しボタン454のLEDは、枠装飾装置18の一部として構成されてもよい。また、呼出しコマンドには、呼出しボタン454の1回(奇数回)の押下で呼出しボタン454のLEDをオンする情報が含まれ、呼出しボタン454の2回(偶数回)の押下で呼出しボタン454のLEDをオフする情報が含まれるようにしてよい。
したがって、枠装飾装置18は、ガラス枠15に設けられているLEDとともに、呼出しボタン454のLEDの発光を制御することができる。
なお、呼出しボタンスイッチ67からの信号は、演出役物SW47等とともに、演出制御装置300のスイッチ入力回路336を介して主制御用マイコン311に直接入力されてもよい。このように、呼出しボタンスイッチ67からの信号を演出制御装置300に送ることによって、遊技制御装置100を介さずに演出制御装置300が、呼出しボタン454が操作されたことを直接検出できるようになるので、呼出しボタン454の操作に対する応答性(反応性)を向上させることができる。そのため、呼出しボタン454を押した際にすぐに呼出しボタン454のLEDが発光するので、応答(反応)がないと遊技者が誤認することを防げて、呼出しボタン454の操作が連続して行われることを抑制できる。
〔呼出しボタンが操作されているときの画面遷移図の一例〕
図36は、呼出しボタン454が操作されているときの表示装置41の表示画面を時系列で示した画面遷移図の一例である。
なお、図36に示すように、表示装置41の表示画面の上方に、呼出しボタン454のLEDと同期して発光可能な発光部材180を設けることもできる。
発光部材180は、例えば、リボン状に形成され、ガラス枠15の上部または上方に設けられるLEDである。データランプを見ようとガラス枠15の上方に視線を向けた際に、遊技者は発光部材180を容易に視認することができる。なお、データランプは、ガラス枠15の上方に設けた枠装飾装置18の部材によって遮られることで、遊技中(着席中)の遊技者から直接視認し難い場合がある。
また、図36では、発光部材180の発光状態をハッチング(斜線)で表し、非発光状態をハッチングなしで表している。なお、発光部材180は、枠装飾装置18の一部として構成されてもよい。
図36(A)は、大当り中の演出としてファンファーレ演出181が実行されたときの表示装置41の表示画面である。図36(A)では、発光部材180は、非発光状態となっている。なお、ファンファーレ演出181は、大当り開始の際(直後)に実行される。
ここで、大当り状態(特別遊技状態)において大入賞口が開放されるラウンド遊技が開始されると、遊技球が大入賞口に入賞する毎に、払出装置から上皿21に所定数の賞球(遊技球)が排出される。上皿21に貯まった遊技球は、球抜き穴(不図示)と第2入口465を通過することで下皿23へと移動可能であるが、下皿23に遊技球が所定量以上貯留された(満杯になった)ことが検出されるとオーバーフロースイッチ信号が払出制御装置200から遊技制御装置100へ出力される(図3参照)。
そして、例えばファンファーレ演出後に開始されるラウンド遊技に備えて上皿21や下皿23に貯留された遊技球を予め取り出すために、遊技者が呼出しボタン454を押下(操作)すると、係員(店員、ホールスタッフ)を呼び出すための係員呼出し状態となり、図36(B)に示すように、表示装置41の表示画面に係員呼出し表示345が表示される。
図36(B)は、遊技者が呼出しボタン454を押下することで、係員呼出し表示345が表示されたときの表示装置41の表示画面である。また、係員呼出し表示345の表示とともに、図36(B)に示すように、発光部材180も発光する。なお、発光部材180の発光に合わせて、図示しないが呼出しボタン454のLEDも発光可能である。
係員呼出し表示345には、例えば、係員を呼出し中であることを示す文字表示345aと、係員を呼出し中となってからの時間がカウントダウン表示される時間表示345bとが、表示される。なお、時間表示345bのカウントダウンに合わせて、四角枠内のゲージが短く変化するゲージ表示を行うようにしてもよい。
文字表示345aには、例えば「係員を呼出し中です。」という文字を表示させることができる。
また、時間表示345bには、所定の時間(例えば30秒)から0秒に向かうカウントダウン表示を表示させることができる。なお、時間表示345bは、係員を呼出し中となってからの時間が0秒から増えるようにカウントアップ表示としてもよい。このように、時間表示345bの時間が変化することで、係員の呼出しが行われている状態が維持されていることを遊技者が認識し易くなる。なお、時間表示345bのカウントダウン表示が0になることで、すなわち所定の時間(例えば30秒)の経過によって、係員の呼出し状態が解除されるようにしてもよい。また、所定の時間が経過した後も、係員の呼出し状態を維持してもよい。
また、係員の呼出しが行われている状態が維持されていることを遊技者がより認識し易くなるように、係員呼出し表示345の吹き出しや文字(例えば文字表示345aや時間表示345b)を点滅表示にしてもよい。
発光部材180は、リボン状の部材と当該リボン状の部材の周りに配置される複数の文字(例えば「ペカ」)状の部材とから構成されてもよく、リボン状の部材とともに当該文字状の部材を発光させてもよい。また、当該文字状の部材の発光に合せて、上スピーカ19aや下スピーカ19bから例えば「ペカ、ペカ、ペカ」という文字状の部材が示す文字に対応する音(音声)を発して、発光部材180が発光していることを強調してもよい。
なお、遊技制御装置100は、払出制御装置200からオーバーフロースイッチ信号を受信すると、下皿23に貯留された遊技球を取り出すことを促す表示を表示装置41の表示画面に表示させるために当該オーバーフロースイッチ信号に対応するコマンドを演出制御装置300に送信するが、外部情報端子板71にも当該オーバーフロースイッチ信号に対応する信号(1ビットのオンオフ)を外部情報信号(全部で数ビット)に含めて送信してもよい。
このように、遊技制御装置100が外部情報端子板71にオーバーフロースイッチ信号に対応する信号を送信することによって、下皿23に遊技球が所定量以上貯留された(満杯になった)際に、遊技者が呼出しボタン454を押下しなくても、自動で係員を呼出すことができる。そのため、遊技に不慣れな初心者の遊技者であっても安心して遊技を行うことができ、遊技の興趣を向上させることができる。
その後、遊技者が呼出しボタン454を再度押下すると(2回目の押下)、図36(C)に示すように、表示装置41の表示画面に表示されていた係員呼出し表示345は非表示になる。
図36(C)は、遊技者が呼出しボタン454を再度押下した(2回目の押下の)際の、表示装置41の表示画面である。係員呼出し表示345の非表示に合わせて、発光部材180も非発光状態になる。また、図示しないが呼出しボタン454のLEDも非発光となる。なお、呼出しボタン454が再度押されること(2回目の押下)によって、係員の呼出し状態も解除(中断)可能である。
そして、遊技者が呼出しボタン454を再び押下すると(3回目の押下)。図36(D)に示すように、表示装置41の表示画面に係員呼出し表示345が再表示され、発光部材180が再び発光状態になる。また、図示しないが呼出しボタン454のLEDも発光状態にできる。
図36(D)は、遊技者が呼出しボタン454を再び押下した(3回目の押下の)際の、表示装置41の表示画面である。係員呼出し表示345が再表示されると、時間表示345bのカウントダウン表示が、係員の呼出し状態が解除(中断)された時点から(例えば25秒から)、再開される。そのため、遊技者は、呼出し開始からの総経過時間が分かり易くなる。なお、時間表示345bは、係員呼出し表示345が再表示される毎にリセットされ、例えば30秒からカウントダウン表示されるようにしてもよい。このような態様によれば、遊技者は、再度呼出しを行っていることが認識し易くなる。
このように、遊技者が2回目の呼出しボタン454の押下の後、再度3回目の押下を行うことで、係員呼出し表示345の再表示等を行うことができる。
すなわち、遊技者による呼出しボタン454の押下回数が奇数回(1、3、5、…2n+1)であるときに、係員呼出し状態となって、係員呼出し表示345の表示等が行われる。また、遊技者による呼出しボタン454の押下回数が偶数回(2、4、6、…2n)であるときに、係員呼出し状態が解除されて、係員呼出し表示345の表示等が非表示(非発光(消灯))状態になる。
このように、呼出しボタンスイッチ67からの信号を遊技制御装置100が受け付ける毎に、演出制御装置300は、係員呼出し表示345を表示または非表示に切り替えることができる。なお、遊技者による呼出しボタン454の押下が行われる前(0回)は、係員呼出し状態は解除されており、図36(A)に示すように係員呼出し表示345の表示等も行われない。
なお、遊技制御装置100は、ファンファーレ演出中に限らず、遊技中(遊技状態)であるときに、遊技者による呼出しボタン454の押下を検出することができる。したがって、遊技者は、通常遊技状態や特定遊技状態(時短状態等)、特別遊技状態(大当り時のラウンド遊技中やエンディング演出中等)に呼出しボタン454を押下することで、係員の呼出しを行うことができる。また、当該係員の呼出しに合わせて、遊技制御装置100は、演出制御装置300を介して係員呼出し状態であることを報知することができ、例えば表示装置41の表示画面に係員呼出し表示345の表示等を行うことができる。
〔呼出しボタンの操作について説明表示を行うときの画面遷移図の一例〕
図37は、呼出しボタン454の操作について説明表示を行うときの表示装置41の表示画面を時系列で示した画面遷移図の一例である。なお、図36の内容と重複する説明は適宜省略する。
例えば、演出制御装置300は、図37(A)に示すように大当り中の演出としてファンファーレ演出181が実行されたときに、図37(B)に示すように呼出しボタン454の操作を説明する説明表示182を表示装置41の表示画面に表示することができる。
図37(A)は大当り中の演出として大当り開始の際にファンファーレ演出181が実行されたときの表示装置41の表示画面であり、図37(B)は呼出しボタン454の操作を説明する説明表示182が表示されたときの表示装置41の表示画面である。
説明表示182は、例えば図37(B)に示すように、「呼出しボタンTips」や「押すごとに呼出しON/OFFが切り替わるよ。」という文字からなる。なお、説明表示182は、文字に限らず、図や写真等の画像や動画でもよい。
演出制御装置300は、ファンファーレ演出181中に説明表示182を行うことで、遊技に不慣れな遊技者に係員の呼び出し方を教示できるとともに、係員を呼び出すことに注意を向けさせることができる。そのため、ファンファーレ演出後に出球が期待できるラウンド遊技が開始されても、遊技者は係員を呼び出して上皿21や下皿23に貯留された遊技球と取り出し易くなるので、安心して遊技を行えるようになり、遊技の興趣を向上させることができる。
なお、演出制御装置300は、ファンファーレ演出181中以外にも、説明表示182を行うことができる。例えば、演出制御装置300は、ラウンド遊技中、SPリーチ中、特定領域86(いわゆるV入賞口)に遊技球が入球した後、大当り終了後の確変状態(高確率状態、特定遊技状態)の確定時などの出球が期待できるタイミング、すなわち変動表示ゲームの結果が特別結果(大当り)となる場合や特別結果となる期待度が高い場合に説明表示182を表示させることができる。
また、演出制御装置300は、説明表示182において、呼出しボタン454の操作を説明する表示を行うが、例えば下皿23からの遊技球の取り出し方や呼出しボタン454を押すごとに係員の呼出し状態が切り替わることなどの他の説明や、右打ち指示、特定領域86へ遊技球を入球させる指示などを、表示するようにしてもよい。
その後、所定の時間(例えば10秒)が経過すると、図37(C)に示すように、説明表示182は非表示になる。なお、呼出しボタンスイッチ67等からの信号が検出されたことに対応するコマンドを受け取ることで、演出制御装置300は、説明表示182を非表示にしてもよい。
さらに、説明表示182を非表示にしてから所定の時間(例えば10秒)が経過した際に、演出制御装置300は、図37(D)に示すように、注意喚起のために説明表示182を再表示してもよい。したがって、図37(B)の説明表示182を遊技者が見逃した場合であっても、図37(D)に示す再表示された説明表示182を確認することができるので、安心して遊技を行えるようになり、遊技の興趣を向上させることができる。
なお、再表示される説明表示182(図37(D))は、1回目に表示される説明表示182(図37(B))よりも小さく表示されてもよい。再表示される説明表示182が1回目に表示される説明表示182と比べて小さく表示されることによって、遊技者はファンファーレ演出181を楽しみやすくなり、遊技の興趣を向上させることができる。また、再表示された説明表示182は、徐々に小さくなるように表示してから消してもよい。
[第1実施形態の作用・効果]
本実施形態に係る遊技機10は、ゲーム(変動表示ゲーム、特図変動表示ゲーム)を実行可能な遊技制御手段(遊技制御装置100)と、ゲームに関連する演出を実行可能な演出制御手段(演出制御装置300)と、を備え、ゲームの結果が特別結果(大当り)となる場合に、遊技者に有利な特別遊技状態を発生可能である。遊技機10は、ゲームを表示可能な表示装置41と、遊技中の遊技者による操作を受け付け可能な操作手段(呼出しボタン454)と、操作が行われると、所定の信号(呼出しボタンスイッチ67からのオン信号(呼出し信号)、外部情報)を当該遊技機10の外部(例えば外部情報端子板71)に出力可能な信号出力手段(遊技制御装置100)と、を備える。演出制御手段は、操作手段が操作を受け付けると、当該操作が受け付けられていることを示す操作受付表示(係員呼出し表示345の文字表示345a)を表示装置41に表示可能であり、操作手段が操作を受け付ける毎に、操作受付表示を表示または非表示に切り替える。
このような遊技機10によれば、操作手段が操作を受け付ける毎に、表示装置41に操作受付表示が表示されたり非表示にされたりするので、遊技者は、係員の呼出しを行っている状態であるのか否かを確認しやすくなる。そのため、遊技者は安心して遊技を行い易くなるので、遊技の興趣を向上させることができる。
また、本実施形態に係る遊技機10では、演出制御手段(演出制御装置300)は、操作受付表示(係員呼出し表示345の文字表示345a)とともに、操作が受け付けられてからの時間を示す受付時間表示(係員呼出し表示345の時間表示345b)を、表示装置41に表示可能であり、操作が受け付けられてから所定時間(例えば30秒)が経過すると、操作受付表示および受付時間表示を非表示にする。
このような遊技機10によれば、係員の呼び出しが行われている状態が維持されていることを遊技者が認識し易くなり、安心して遊技を行い易くなるので、遊技の興趣を向上させることができる。
また、本実施形態に係る遊技機10では、演出制御手段(演出制御装置300)は、操作手段(呼出しボタン454)が操作を受け付ける毎に操作受付表示(係員呼出し表示345の文字表示345a)が表示または非表示に切り替わることを、説明する説明表示182を表示装置41に表示可能である。
このような遊技機10によれば、表示装置41に表示される説明表示182によって、遊技に不慣れな遊技者に係員の呼び出し方等を教示できるとともに、係員を呼び出すことに注意を向けさせられるので、安心して遊技を行えるようになり、遊技の興趣を向上させることができる。
また、本実施形態に係る遊技機10では、操作手段(呼出しボタン454)は、操作として呼出し操作を受け付け可能であり、信号出力手段(遊技制御装置100)は、呼出し操作が行われた際に、所定の信号(呼出しボタンスイッチ67からのオン信号、外部情報)として呼出し信号を出力可能である。
このような遊技機10によれば、同様に、呼出し操作が受け付けられる毎に、表示装置41に操作受付表示(係員呼出し表示345の文字表示345a)が表示されたり非表示にされたりするので、遊技者は係員の呼び出し状態を確認し易くなり、遊技の興趣を向上させることができる。
本実施形態に係る遊技機10は、遊技中(遊技機10の前で着席中)の遊技者による操作を受け付け可能な操作手段(呼出しボタン454)と、操作手段と重なる位置に設けられる発光手段(呼出しボタン454のLED)と、を備える。演出制御手段(演出制御装置300)は、操作手段が操作を受け付けると、当該操作を受け付けられていることに対応して発光手段を発光させる。
このような遊技機10によれば、呼出しボタン454を押すことで、呼出しボタン454のLEDが発光するので、操作をしたことが分かり易く、遊技の興趣を向上させることができる。
[第2実施形態]
図38から図49を参照して第2実施形態の遊技機10について説明する。なお、以下で述べる以外の構成は、第1実施形態と同様でよい。また、以下の実施形態では、第1実施形態と同じ機能を果たす構成には同一の符号を用い、重複する記載を適宜省略して説明する。
第2実施形態では、演出制御装置300は、着脱可能なパーツ(部品、部材)510のパーツ識別情報(第1識別情報、ユニットID)と、遊技機10の機種やシリーズに対応する合成識別情報(合成識別データ)が不一致である場合に、不一致であることエラーとして報知する。合成識別情報は、遊技機10の機種に対応する機種識別情報(第2識別情報、機種ID)と、遊技機10のシリーズに対応するシリーズ識別情報(第3識別情報、シリーズID)との、合成により得られる値である。
演出制御装置300は、例えば遊技機10が機種Aメイン機である場合に、機種Aに対応する機種識別情報(第2識別情報、機種ID)とメイン機(遊技機10のシリーズ)に対応するシリーズ識別情報(第3識別情報、シリーズID)とを合成し、当該合成により得られた値(合成識別情報)を保持する。
〔遊技機のパーツ〕
図38は、第2実施形態に係る着脱可能なパーツ510が遊技機10に正常に取り付けられている様子を示す図である。図39は、第2実施形態に係る着脱可能なパーツ510が遊技機10に間違って取り付けられている様子を示す図である。
パーツ510は、電気的に読取り可能なパーツ識別情報が割り当てられている。例えば、パーツ510は、取り付けられるべき遊技機10の機種情報(機種ロゴ等)が表示された板状の部材でもよいし、また、枠演出装置や盤演出装置44を構成する可動役物でも、枠装飾装置18や盤装飾装置46のLEDを有する装飾部材でもよい。パーツ510は、遊技場(遊技店)への搬入時の邪魔になる等の理由によって遊技場において遊技機10に取り付け可能なものであり、不慣れな係員が間違った機種に取り付ける可能性がある。
図38に示すように、例えば、機種Aメイン機用のパーツ510Aが遊技機10の機種Aメイン機の遊技盤30に正常に取り付けられている場合に問題は生じない。しかし、例えば、図39(A)のように機種A甘デジ機用のパーツ510Bが遊技機10の機種Aメイン機の遊技盤30に取り付けられている場合や、図39(B)のように機種Bメイン機用のパーツ510Cが遊技機10の機種Aメイン機の遊技盤30に取り付けられている場合には、問題が生じるので、演出制御装置300はスピーカ19a、19bや表示装置41を介してエラー報知する。なお、甘デジ機とは、大当りの発生確率がメイン機よりも高い機種である。
〔遊技機10のエラー報知態様〕
図40は、第2実施形態に係る遊技機10において、エラー報知が行われた場合の様子を示す図である。演出制御装置300は、例えば図40に示すように、音声情報(「ユニットエラーです」という音声)や文字による報知情報345(文字情報、「ユニットエラー」という文字)によってエラー報知を実行することができる。
なお、音声情報は、演出ボタン25を操作することにより、その出力を停止することができる。また、報知情報345は、初期化に関する画像または停電復旧に関する画像よりも優先して表示される。
図41は、第2実施形態に係る報知情報345を、特図変動表示ゲームのはずれ停止図柄を表示中の表示装置41に表示する例を示す図である。図41に示すように、「ユニットエラー」を報知する報知情報345は、例えば機種Aメイン機の遊技機10の合成識別情報(機種識別情報とシリーズ識別情報との合成値)と異なるパーツ識別情報を持つパーツ510Bやパーツ510Cが取り付けられている限り、表示装置41に表示され、遊技中(変動表示ゲーム中)においても同様に表示される。
特図変動表示ゲーム中において、大図柄の変動表示が行われる変動表示領域610(第1変動表示領域)に報知情報345が重ねて表示されるが、小図柄の変動表示が行われる変動表示領域615(第2変動表示領域)に重ねて表示されることはない。これにより、報知情報345(「ユニットエラー」)が表示されても遊技者は特図変動表示ゲームの経過及び結果を変動表示領域615において確認することができる。
〔遊技機10の構成例〕
図42Aは、第2実施形態の遊技機10の構成例を概略的に示す概略構成図である。図42Bは、第2実施形態に係るパーツ510のロータリスイッチ521を示す図である。
遊技制御装置100は、遊技機10の電源投入の際などに、遊技機10のシリーズを示す機種指定コマンドを演出制御装置300に送信する(A1044、A1046)。演出制御装置300は、受信した機種指定コマンド(B1301)からシリーズID(シリーズ識別情報)を、参照テーブル(図42C)を用いて検索する。参照テーブル(図42C)は、メモリ(例えばRAM322やFeRAM323等)に記憶され、機種指定コマンドとシリーズID(シリーズ識別情報)を対応付ける。また、演出制御装置300は、予め記憶部(FeRAM323等)に記憶されている機種IDを取得する。なお、機種指定コマンドに機種(種類)の情報も含まれている場合には、演出制御装置300は、当該機種指定コマンドに対応する機種識別情報(機種ID)を選択して設定してもよい。そして、演出制御装置300は、機種識別情報(機種ID)とシリーズ識別情報(シリーズID)とを合成し、当該合成によって得られた値を合成識別情報(合成識別データ)としてメモリ(RAM322やFeRAM323等)に保持する。なお、第2実施形態において、演出コマンドとしての機種指定コマンドは、MODE部とACTION部のうち、特にACTION部を意味するものとする。
シリーズIDは、8ビットの機種指定コマンド(特に下位2ビット:最下位ビットから2桁)の値を、メモリに記憶された参照テーブル(図42C)等を参照して変換して取得することができる。例えば、機種指定コマンド(ACTION部)が「00000001B」(16進数で01h)と「00000010B」(16進数で02h)であれば、シリーズIDは「00000000B」(00h)となり、機種指定コマンドが「00000011B」(03h)であれば、シリーズIDは「00000001B」(01h)となる。
機種指定コマンドに機種(種類)の情報とシリーズを示す情報の両方が含まれている場合には、例えば、機種IDは、8ビットの機種指定コマンドの上位6ビット(最上位ビットから6桁)から把握でき、下位2ビットを0でマスクして0に置き換えることによって取得可能である。例えば、機種指定コマンドが「00000101B」であれば、機種IDは000001となり、機種指定コマンドが「00010001B」であれば、機種IDは000100となる。なお、これら000001や000100は表示装置41の表示画面で表示されるなどして視認させる場合の数値であり、CPU311内で扱う8ビットの数値としては「00000100B」や「00010000B」となる。
合成識別情報は、機種識別情報(機種ID)とシリーズ識別情報(シリーズID)との和をとって合成したものである(合成識別情報=機種ID+シリーズID)。例えば、機種IDが「00000100B」でシリーズIDが「00000000B」であれば、合成識別情報は「00000100B」(04h)となる。例えば、機種IDが「00010000B」でシリーズIDが「00000001B」であれば、合成識別情報は「00010001B」(11h)となる。
また、演出制御装置300は、保持している合成識別情報を、パーツ510(機種パーツ510)から読取ったパーツ識別情報と比較する。パーツ510は、パーツ識別情報を保持する識別基板513を有する。そして、演出制御装置300は、パーツ識別情報(第1識別情報)と合成識別情報(合成識別データ)とが不一致である場合に、不一致であることエラーとして報知する。
パーツ510の識別基板513において、パーツ識別情報は、所定の電圧が印加された一又は複数の配線519(電線)とロータリスイッチ521とによって設定される(ロータリSW(ID設定))。
パーツ510のロータリスイッチ521は、遊技機10の機種やシリーズに対応するパーツ識別情報(第1識別情報、ユニットID)の選択に使用され、例えば図42Bに示すように、上位ビット用のロータリスイッチ521aと下位ビット用のロータリスイッチ521bとによって構成される。2つのロータリスイッチ521a、521bは、16進数(0~F)表示で1回路16ポジション(ステップ、ダイヤル)となるようにそれぞれ構成される。
例えば、ロータリスイッチ521aのポジションの矢印は「0」を指しており、ロータリスイッチ521bのポジションの矢印は「4」を指している。
また、図42Aに示すように、複数の配線519(複数の電線)の各々は、ロータリスイッチ521によって所定の電圧又は接地電圧となり、パラレルシリアル変換部516における複数(例えば8個)の端子(ポート)のうちの所定の端子に接続され、パーツ識別情報の各ビット(「1」又は「0」)の情報が入力される。
なお、配線519は、プルアップ抵抗を介して所定の電圧にプルアップされているが、プルアップ抵抗を設けなくてもよい。なお、パーツ510への電源(電圧)は、パーツ510が取り付けられた場合に、例えば、演出制御装置300又は電源装置400から供給される。
図42Aの例では、ロータリスイッチ521がオンになっている配線519に接続される端子は接地電圧(値「0」のビット)となり、ロータリスイッチ521がオフになっている配線519に接続される端子は所定の電圧(値「1」のビット)となる。
このようにして、各々の配線519におけるロータリスイッチ521のオン・オフによって、所定の電圧が入力される所定の端子を値「1」のビットとし、所定の電圧が入力されない端子(接地電圧に接続される)を値「0」のビットとして、例えば「00000100」のようなパーツ識別情報がパラレルシリアル変換部516を介して送信できる。
即ち、識別基板513は、複数の配線519によって、パラレルデータ(例えば「00000100」)としてのパーツ識別情報が割り当てられている。パーツ識別情報に割り当てられるパラレルデータ(例えば「00000100」)は、図42Bに示すようにロータリスイッチ521a、521bのポジションの値(例えば16進数の「04h」)に対応する2進数のデータである。
パーツ識別情報に割り当てられる8ビットのパラレルデータ(例えば「00000100」)のうち上位4ビット(例えば「0000」)は、上位ビット用のロータリスイッチ521aのポジションの値(例えば図42Bの値「0」)によって設定される。
また、パーツ識別情報に割り当てられる8ビットのパラレルデータ(例えば「00000100」)のうち下位4ビット(例えば「0100」)は、下位ビット用のロータリスイッチ521bのポジションの値(例えば図42Bの値「4」)によって設定される。
そして、パラレルシリアル変換部516は、入力されたパーツ識別情報(パラレルデータ)をシリアルデータに変換して、シリアル通信(ここではI2C)によって、演出制御装置300に送信する。
〔パラレルシリアル変換部〕
図43は、パラレルシリアル変換部516が通常のパラレルシリアル変換ICである場合のパラレルシリアル変換部516の構成を示す。
パラレルシリアル変換部516は、複数のD型フリップフロップ516a(D-FF)を備える通常のパラレルシリアル変換ICの構成を有する。パラレルシリアル変換部516は、端子0~7(ポート0~7)から入力されたパーツ識別情報としてのパラレルデータ(例えば「00000100」)をシリアルデータに変換して、シリアル通信(ここではI2C通信)によって接続線SDA(データ線)を介して演出制御装置300に送信する。演出制御装置300は、I2C通信におけるマスタIC300aを有し、複数のD型フリップフロップ516a用のクロック信号を、接続線SCL(タイミング信号線)を介してパラレルシリアル変換部516に入力する。
複数のD型フリップフロップ516a(D-FF)は、クロック信号に同期して右から左にパラレルデータの各ビットデータが移動するシフトレジスタを構成している。あるクロックタイミングにおける各D型フリップフロップ516aのビットデータは、次のクロックタイミングで、隣のD型フリップフロップ516aに移動する。パラレルデータの各ビットデータは、あるクロックタイミングで、複数のD型フリップフロップ516aに取り込まれ、順次、左端のD型フリップフロップ516aからシリアルデータとして出力される。即ち、パラレルデータが取り込まれてから8クロックで、シリアルデータの出力が完了する。
〔識別基板の第1変形例〕
図44Aは、パーツ510の識別基板513の第1変形例を示す。第1変形例では、識別基板513のパラレルシリアル変換部516が、通常のパラレルシリアル変換ICではなく、入力用のI2CI/Oエクスパンダ815(スレーブIC)である。入力用のI2CI/Oエクスパンダ815は、演出制御装置300のマスタIC300aにポート0~7から入力されたパーツ識別情報をデータとして入力する。
I2CI/Oエクスパンダ815(スレーブIC)は、接続線SDAに接続されるトランジスタ830、接続線SDAに接続されるフィルタ831、接続線SDAに接続されるドライバ832、接続線SCLに接続されるフィルタ833、バスコントローラ834、及びリセット信号発生回路839を備える。さらに、他のI2CI/Oエクスパンダ815によって接続線SDAが占有されているか否かを判断するためのバス監視WDT(ウォッチドッグタイマ)840、及びI2CI/Oエクスパンダ815自身が接続線SDAを占有しているか否かを判断するための自己占有WDT841を備えている。
接続線SDAは、演出制御装置300のマスタIC300aとI2CI/Oエクスパンダ815(スレーブIC)との間でデータ信号を授受するための接続線であり、データ線として機能する。接続線SCLは、接続線SDAでのデータ通信に用いられるクロック信号を入出力するための接続線であり、タイミング信号線として機能する。
フィルタ831は、接続線SDAに接続され、接続線SDAから入力されたデータ(ここでは返答信号やアドレスデータ等)のノイズを除去し、ノイズが除去されたデータをバスコントローラ834に出力する。
ドライバ832は、接続線SDAからマスタIC300aにデータ(ここではパーツ識別情報等)を出力する場合に、トランジスタ830が動作可能な電圧をトランジスタ830に印加する。
トランジスタ830は、電力消費を抑えるために電界効果トランジスタ(FET)が用いられており、トランジスタ830のゲートはドライバ832に接続され、ドレインはプルアップ抵抗Rにより所定の電圧が印加された接続線SDAに接続され、ソースは接地されている。
ドライバ832は、データ(パーツ識別情報等)をマスタIC300aに接続線SDAから出力する場合に、トランジスタ830にドレインとソースとの間に電流を流すためにトランジスタ830のゲートにトランジスタ830が動作可能な値の電圧を印加する。そして、ドライバ832は、接続線SDAの電圧をHIGHからLOWへ繰り返し変化させることによって、データを接続線SDAから出力する。
フィルタ833は、接続線SCLに接続され、接続線SCLから入力されたデータのノイズを除去し、ノイズが除去されたデータをバスコントローラ834に出力する。
また、I2CI/Oエクスパンダ815には、当該I2CI/Oエクスパンダ815に備わるアドレス設定用端子A0~A3によって固有のアドレスが設定されており、バスコントローラ834に入力されている。さらに、I2CI/Oエクスパンダ815をリセットするためのアドレスも、あらかじめ設定されている。
I2CI/Oエクスパンダ815の固有のアドレス(8ビット)は、上位3ビットからなる固定アドレス部及び下位5ビットからなる可変アドレス部によって構成される。固定アドレス部は、所定の値(例えば「110」)が予め設定され、I2CI/Oエクスパンダ815によって変更することができない。
可変アドレス部は、I2CI/Oエクスパンダ815のA0~A3の端子に設定されているパターンに対応した4ビットのI2CI/Oエクスパンダアドレスと、データが読み出し要求であるのか書き込み要求であるのかを示す1ビットのR/W識別データとによって構成される。入力用のI2CI/Oエクスパンダ815では、読み出し要求に対応して、R/W識別データには、通常「1」が登録される。
バスコントローラ834は、接続線SDAから入力されたデータのアドレスがI2CI/Oエクスパンダ815に設定された固有のアドレスと一致するか否かを判定し、一致している場合に、接続線SDAからマスタIC300aにデータ(パーツ識別情報)を出力する。I2CI/Oエクスパンダ815における8個のポート0~7(端子0~7)のうちの所定のポート(ここでは1つ)には、複数の配線519のうち対応する配線519が接続されることによって所定の電圧が印加される。従って、バスコントローラ834には、8個のポート0~7を介して8ビットのパーツ識別情報(例えば、「00000100」)がパラレルデータとして入力される。なお、所定の電圧が入力される所定のポートが値「1」のビットに対応し、それ以外の端子が値「0」のビットに対応する。
また、バスコントローラ834は、接続線SDAから入力されたデータのアドレスがI2CI/Oエクスパンダ815に設定されたリセット用のアドレスと一致するか否かを判定し、一致している場合に当該データを初期化指示データ(初期化コマンドRES)として取り込み、当該I2CI/Oエクスパンダ815を初期化する。
また、接続線SCLの信号レベルのLOWからHIGHへの変化回数が8回に達し、8ビット目のデータ(パーツ識別情報)をバスコントローラ834が出力した後、接続線SCLの信号レベルがHIGHからLOWへ変化すると、マスタIC300aは、返答信号を接続線SDAからバスコントローラ834に出力する。さらに、接続線SCLの信号レベルがLOWからHIGHへ変化することが確認され、再度接続線SCLの信号レベルがHIGHからLOWへ変化すると、接続線SDAを開放する。つまり、マスタIC300aは、接続線SCLの信号レベルのLOWからHIGHへの変化回数が9回になるタイミングで返答信号を出力する。
リセット信号発生回路839には、I2CI/Oエクスパンダ815に電源を供給する接続線Vccに接続されるVcc端子、及び外部からのリセット信号を受け付けるRESET端子が接続されている。
リセット信号発生回路839は、I2CI/Oエクスパンダ815に電源が投入され、電圧が所定値まで立ち上がると、リセット信号を発生させ、発生させたリセット信号をバスコントローラ834に入力することによって初期化する。
したがって、ハーネスを抜くとロジック用の電源を供給するための接続線Vccが一時的に断線し、ハーネスを再度差し込むと電源供給が復帰して、リセット信号発生回路839がリセット信号を出力することになる。なお、ロジック用の電源を供給するための接続線Vcc、接続線SDA、接続線SCL、及び接地線GNDなどを束ねたものをハーネスという。
バス監視WDT840は、他のI2CI/Oエクスパンダ815が接続線SDAを占有していることを検出するために用いられる。バス監視WDT840は、リセット信号発生回路839に接続されており、接続線SDAが占有されてから所定の時間が経過すると、自身のリセット信号発生回路839を作動させて、当該I2CI/Oエクスパンダ815を初期化する。
自己占有WDT841は、自身(I2CI/Oエクスパンダ815)による接続線SDAの占有を検出するために使用される。自己占有WDT841が一定時間連続して作動すると、自己占有WDT841は、リセット信号発生回路839にリセット信号を発生させて当該I2CI/Oエクスパンダ815を初期化する。
〔識別基板の第2変形例〕
図44Bは、パーツ510の識別基板513の第2変形例を示す。第2変形例では、識別基板513のパラレルシリアル変換部516が、通常のパラレルシリアル変換ICではなく、出力用のI2CI/Oエクスパンダ815(スレーブIC)である。また、第2変形例では、パーツ510は演出装置を備え演出を実行できる。演出装置は、例えばLED(発光部)等の装飾装置であるが、可動役物でもよい。
出力用のI2CI/Oエクスパンダ815は、演出制御装置300のマスタIC300aから受信した演出制御データに基づいて、パーツ510に設けられた演出装置(ここではLED、発光部)の出力状態(ここでは発光状態)を出力側のポート0~15を介して制御する。なお、I2CI/Oエクスパンダ815は、I2CI/Oエクスパンダ815の固有のアドレス(8ビット)をパーツ識別情報として利用して、演出制御装置300のマスタIC300aに入力する。
出力用のI2CI/Oエクスパンダ815は、入力用のI2CI/Oエクスパンダ815(図44A)に、出力設定レジスタ835、出力コントローラ836、I2CI/Oエクスパンダ815の出力側の各ポート0~15(端子0~15)に接続されるドライバ837、各ポート0~15に接続されるトランジスタ838A~838Pが追加されたものである。このため、入力用のI2CI/Oエクスパンダ815(図44A)と同じ構成については、適宜説明を省略する。
フィルタ831は、接続線SDAに接続され、接続線SDAから入力されたデータ(ここでは演出制御データや返答信号等)のノイズを除去し、ノイズが除去されたデータをバスコントローラ834に出力する。
ドライバ832は、接続線SDAからマスタIC300aにデータ(ここではパーツ識別情報や返答信号等)を出力する場合に、トランジスタ830が動作可能な電圧をトランジスタ830に印加する。
ドライバ832は、データ(パーツ識別情報や返答信号等)を接続線SDAから出力する場合に、トランジスタ830にドレインとソースとの間に電流を流すためにトランジスタ830のゲートにトランジスタ830が動作可能な値の電圧を印加する。そして、ドライバ832は、接続線SDAの電圧をHIGHからLOWへ繰り返し変化させることによって、データを接続線SDAから出力する。
バスコントローラ834は、識別基板513のパーツ識別情報(第1識別情報)が格納されたROM834aを備えている。バスコントローラ834は、接続線SDAから入力されたデータのアドレスがI2CI/Oエクスパンダ815に設定された固有のアドレス(A3,A2,A1,A0により定まるアドレス)と一致するか否かを判定し、一致している場合に、接続線SDAからマスタIC300aにROM834aに記憶されたデータ(パーツ識別情報(第1識別情報)や返答信号等)を出力する。
マスタIC300aに出力するパーツ識別情報は、前述のようにI2CI/Oエクスパンダ815の固有のアドレス(8ビット)であるか、固有のアドレスとは異なる別途設定された識別情報(第1変形例のようにポートを介して設定されるか記憶部(メモリ)に記憶されたもの)である。なお、バスコントローラ834からマスタIC300aにパーツ識別情報を出力することは必ずしも必要でなく、演出制御装置300は、バスコントローラ834からの返答信号を受信すると、送信したデータのアドレスをパーツ識別情報と認識するように構成してもよい。
また、バスコントローラ834は、接続線SCLの信号レベルのLOWからHIGHへの変化回数が8回に達し、8ビット目の演出制御データを接続線SDAから取り込んだ後、接続線SCLの信号レベルがHIGHからLOWへ変化すると、返答信号を接続線SDAからマスタIC300aに出力する。さらに、接続線SCLの信号レベルがLOWからHIGHへ変化することが確認され、再度接続線SCLの信号レベルがHIGHからLOWへ変化すると、接続線SDAを開放する。つまり、バスコントローラ834は、接続線SCLの信号レベルのLOWからHIGHへの変化回数が9回になるタイミングで返答信号を出力する。
出力設定レジスタ835には、当該I2CI/Oエクスパンダ815の動作モードやポート0~15の出力状態が設定される。バスコントローラ834が接続線SDAから初期化指示データを取り込んで、当該I2CI/Oエクスパンダ815が初期化された場合には、出力設定レジスタ835には、すべてのポート0~15に電流が流れないように初期状態が設定される。
出力コントローラ836は、出力設定レジスタ835に設定されたデータに基づいて、ポートドライバ837を介して、各ポート0~15に接続された演出装置(ここではLED、発光部)に電流を流すこと(点灯データの出力)によって、演出装置の出力状態(ここでは発光状態)を実際に制御する。この出力状態は、バスコントローラ834が接続線SDAから演出制御データを取り込むと、当該演出制御データに指定されている内容に更新される。
すなわち、マスタIC300aから受信した演出制御データに基づいて、出力設定レジスタ835に設定し、ストップコンディションを受信した時点で、各ポート0~15の出力状態を更新して演出装置に反映させる。
ドライバ837は、ポートに電流を流す場合に、電流を流すポートに接続されるトランジスタ838A~838Pが動作可能な電圧を当該トランジスタに印加する。
トランジスタ838A~838Pのゲートはドライバ837に接続され、ドレインは演出装置を動作させるための電圧が印加された接続線に接続するポート端子に接続され、ソースは接地されている。
トランジスタ838A~838Pのゲートに印加される電圧がトランジスタ838を動作させる所定値以上であれば、駆動電源からゲートに印加されている所定の電圧が、トランジスタ838のドレインを介して接地されているソースへ電流が流れることによって、ポート端子に接続された演出装置(ここではLED)の出力状態を制御できる。
〔機種指定コマンドおよびシリーズIDの変更(追加)モード〕
図45は、第2実施形態の演出制御装置300が実行する機種指定コマンドおよびシリーズIDの変更(追加)を行うためのID変更モード(識別情報設定状態)を示す図である。
演出制御装置300がID変更モード(識別情報設定状態)を実行すると、表示装置41の表示画面には、例えば図45に示すような表(テーブル)が表示され、受信可能な機種指定コマンドやシリーズIDやこれらの対応関係の変更(追加)が行えるようになる。ID変更モードは、例えば、開発時(出荷時)のデバッグモード中に移行することができる。デバッグモード中のID変更モードでは、演出制御装置300のコマンドI/F331に、遊技制御装置100ではなくコマンド送信装置を接続して、専用の書き替えコマンドをCPU311に送信することによって、シリーズID等の変更(追加)が行える。
なお、ID変更モードは、例えばホール設定モード(B0011)中に演出ボタン25を操作するなどして移行できるようにしてもよい。このように、メモリ(例えばRAM322やFeRAM323等)に記憶された参照テーブル(図42C)の機種指定コマンドとシリーズIDとの対応付けが、搬入時や停電時等によってクリア(削除)された場合に、遊技場(遊技店)で復元(再作成)を行うことができる。また、同様に、ホール設定モード中にID変更モードに移行できるようにすることで、メモリ(例えばRAM322やFeRAM323等)に記憶された参照テーブル(図48)の機種指定コマンドと合成識別情報との対応付けが、搬入時や停電時等によってクリア(削除)された場合に、遊技場(遊技店)で復元(再作成)を行うこともできる。
ID変更モードが実行されると、例えば図45(A)に示すように、機種指定コマンドの変更(追加)が可能になる。そして、開発者や遊技場(遊技店)の責任者(遊技場管理者)が演出ボタン25の演出ボタンスイッチ25aやタッチパネル25a等(十字キーや音量調整キーでもよい)を操作することで、図45(A)の表に示すように、機種指定コマンドを変更(追加)できる。
例えば、図45(A)の表には、遊技機10の機種が「RW1」であり、機種IDが「000001」(CPU311内で扱う数値としては「00000100B」(04h))であることが示される。また、遊技機10の機種指定(いわゆるスペック)として「Z」、「F」、「M」、「GL」、「SP」が用意されており、予備に用意できる機種指定として「予備1」、「予備2」が設けられている。
そして、例えば、機種指定が「Z」である場合には、機種指定コマンドには「01h」が設定され、シリーズIDは「00」(00000000B)に設定される。また、機種指定が「GL」である場合には、機種指定コマンドには「03h」が指定され、シリーズIDは「01」(00000001B)に設定される。なお、機種指定コマンドやシリーズIDの設定のないものは「――」と表示されるが、非表示(「 」)にしてもよい。
また、図45(A)において、例えば選択中の機種指定「M」の機種指定コマンドは点滅表示(”[――]”)される。したがって、機種指定コマンドの変更(追加)を行うために操作中の開発者や遊技場管理者は、どの機種指定コマンドが選択中であるかを認識し易く、作業効率を向上させることができる。なお、選択中の機種指定コマンドは、点滅表示に限らず、色を変更してもよく(例えば黒字から赤字)、フォントを変更してもよい(例えば太字)。
そして、図45(B)に示すように、任意の機種指定コマンド(例えば「00h」)が設定されると、当該機種指定コマンドに対応する同行(機種指定「M」の行)のシリーズID「10」が選択中([10](00000010B))になる。
その後、選択中のシリーズIDを例えば「10」に設定してから、ID変更モードを終了することによって、機種指定コマンドおよびシリーズIDの変更(追加)を、機種指定コマンドとシリーズIDを対応付ける参照テーブル(図42C)に反映させ記憶することができる。
なお、既に設定されている機種指定コマンド(例えば「01h」)やシリーズID(例えば「00」)を選択して、別の機種指定コマンド(例えば「02h」)やシリーズID(例えば「11」)に変更することもできる。
また、演出制御装置300は、機種ID(第2識別情報、例えば「00000100B」(表示上は「000001」))を新たに追加されたシリーズID(第3識別情報、例えば「00000010B」(表示上は「10」))と合成することで、新たな合成識別情報(「00000110B」(16進数で「06h」))を得て参照テーブル(図48)内の情報としてメモリに記憶することができる。例えば、新たな合成識別情報(「00000110B」)は、上位6桁(6ビット)が機種ID(表示上「000001」)になり、下位2桁(2ビット)がシリーズID(表示上「10」)になる。
そのため、遊技機10の機種Aメイン機の機種指定(スペック)が変更され(例えば通常のミドルスペックからライトミドルスペックに変更)、シリーズIDが変わった場合に(例えば「00」から「10」)、当該シリーズIDから新たに得られた合成識別情報に対応するパーツ識別情報(「00000110B」)のパーツ510を取り付けて遊技の演出に用いることができる。
したがって、遊技盤30全体を入れ替えることなく、一部の部品(例えばパーツ510)を対応するものに取り替えることで、簡便かつ安価に遊技機10の機種指定(スペック)を変更することができる。また、簡便かつ安価に遊技機10のスペックを変更できるので、例えば遊技場管理者は、遊技機10の人気に応じて遊技場に並ぶ遊技機10のスペックを適宜変更(調整)して、人気のあるスペックの遊技機10を増やすことで売上の向上を図ることができる。また、遊技者は、人気のあるスペックの遊技機10が遊技場内に増えることで当該遊技機10を台選択し易くなるので、遊技の興趣を向上させることができる。
なお、ID変更モード(識別情報設定状態)では、機種指定コマンドに対応するシリーズID(第3識別情報、シリーズ識別情報)の変更(追加)以外に、機種指定コマンドに対応する機種識別情報(第2識別情報、機種ID)の変更(追加)を行えるようにしてもよい。
〔メイン処理(演出制御装置)〕
図46は、第2実施形態に係るメイン処理(メインプログラム)の手順を示すフローチャートである。メイン処理は、遊技機10に電源が投入(復旧)されると、演出制御装置300(主制御用マイコン311)によって実行される。
第2実施形態のメイン処理は、図23のメイン処理に対して、パーツ照合処理(B5000)を追加したものであり、その他の処理は図23と同じであるため同じステップ番号を付して説明を省略する。
パーツ照合処理では、パーツ510から読取ったパーツ識別情報(第1識別情報)と、機種指定コマンド(B1301)に対応する合成識別情報(機種識別情報とシリーズ識別情報との合成値)とを比較して、パーツ識別情報と合成識別情報が不一致である場合に、エラー報知によって警告する。本実施形態では、パーツ照合処理(B5000)は、受信コマンドチェック処理(B0014)の後に実行される。
パーツ照合処理(B5000)は、遊技機10の電源投入の際に最初に実行され、その後、ステップB0008からB0023までのループ処理によって、繰り返し実行される。
〔パーツ照合処理〕
次に、図47を参照して、メイン処理(図46)におけるパーツ照合処理(B5000)の詳細について説明する。図47は、演出制御装置300によって実行されるパーツ照合処理の手順を示すフローチャートである。
演出制御装置300は、まず、照合時間タイマ(計時手段)が0でなければ-1更新する(B5001)。照合時間タイマは、パーツ識別情報を読取って機種識別情報と照合(比較)する照合タイミング或は照合時間間隔を定めるものである。そして、照合時間タイマが0であるか否かを判定する(B5002)。照合時間タイマが0でない場合に(B5002の結果が「N」)、照合タイミングでないため、パーツ照合処理を終了する。
一方、演出制御装置300は、照合時間タイマが0である場合に(B5002の結果が「Y」)、照合タイミングであるため、パーツ510からパーツ識別情報を読取る(B5003)。そして、パーツ識別情報(第1識別情報)と合成識別情報(機種識別情報(第2識別情報)とシリーズ識別情報(第3識別情報)との合成値)とを比較(照合)する(B5004)。なお、機種識別情報およびシリーズ識別情報は、遊技機10の電源投入の際の機種設定処理(B1302)において、遊技機の種類(機種)やシリーズを示す情報として、機種指定コマンドに基づいてそれぞれ設定されている。前述のように、演出制御装置300は、予め記憶部(FeRAM323等)に記憶された機種IDを取得するとともに、電源投入の際に受信した機種指定コマンドからシリーズIDを検索して、合成識別情報(機種IDとシリーズIDの和)を取得できる。
また、演出制御装置300は、参照テーブル(図48)を参照することによって、電源投入の際に受信した機種指定コマンドから合成識別情報を取得(把握)することもできる。演出制御装置300は、メモリ(例えばRAM322やFeRAM323等)には、後述する図48に示すような機種指定コマンドと合成識別情報とが対応付けられている参照テーブルが記憶されており、遊技機の機種やシリーズに対応する合成識別情報を保持している。
次に、演出制御装置300は、パーツ識別情報と合成識別情報とが一致するか否かを判定する(B5005)。パーツ識別情報と合成識別情報とが一致しない場合に(B5005の結果が「N」)、エラー報知によって、パーツ識別情報と合成識別情報とが不一致であることを報知する(B5006)。即ち、パーツ510が、パーツ510に適合(対応)しない間違った機種やシリーズに取り付けられていることを報知する。演出制御装置300は、スピーカ19a、19bから音を発生させたり、表示装置41に文字を表示することで、エラー報知(警告)を実行してもよい。また、ここで、演出制御装置300は、図48の参照テーブルを参照して、エラー報知と共に、パーツ510に適合(対応)する正しい機種やシリーズを報知してもよい。正しい機種やシリーズは、パーツ510のパーツ識別情報と同一の合成識別情報となる機種である。
続いて、演出制御装置300は、照合時間タイマの初期値を設定し(B5007)、パーツ照合処理を終了する。従って、電源投入時を初回として、照合時間タイマの初期値に相当する時間が経過する度に、定期的に、パーツ識別情報と合成識別情報とが比較(照合)されることになる。照合時間タイマの初期値は、例えば、数分に相当する時間であるが、これに限られない。
一方、演出制御装置300は、パーツ識別情報と合成識別情報が一致する場合に(B5005の結果が「Y」)、パーツ510がパーツ510に適合(対応)する正しい機種に取り付けられているため、エラー報知せずに、照合時間タイマの初期値を設定し(B5007)、パーツ照合処理を終了する。
なお、変形例として、演出制御装置300は、メモリ(例えばRAM322やFeRAM323)内に、図48の参照テーブルではなく、一種類の機種およびシリーズに対応する合成識別情報のみを保持してよい。この場合にも、演出制御装置300は、パーツ510から読取ったパーツ識別情報と、保持した合成識別情報とを比較して、パーツ識別情報と合成識別情報とが不一致である場合に、不一致であることエラーとして報知する。
〔参照テーブル〕
図48は、第2実施形態に係る機種指定コマンドと合成識別情報を対応付ける参照テーブル(図48(A))と、不適合機種の分類を示す参照テーブル(図48(B))とを示す図である。
図48(A)に示すように、演出制御手段300のメモリ(RAM322やFeRAM323(図4)等)には、遊技機10のタイプ(例えばタイプA-D)、および当該タイプの遊技機10の機種やシリーズに対応する機種指定コマンドや合成識別情報のテーブルが記憶されている。
例えば、タイプAには、遊技機10の機種Aメイン機に対応する機種指定コマンドAと合成識別情報(例えば「00000100」(16進数で「04h」))が対応付けられている。
また、タイプBには、遊技機10の機種A甘デジ機に対応する機種指定コマンドBと合成識別情報(例えば「00000101」(16進数で「05h」))が対応付けられている。
タイプCには遊技機10の機種Bメイン機に対応する機種指定コマンドCと合成識別情報(例えば「00010000」(16進数で「10h」))が対応付けられており、タイプDには遊技機10の機種B甘デジ機に対応する機種指定コマンドDと合成識別情報(例えば「00010001」(16進数で「11h」))が対応付けられている。
したがって、例えば、合成識別情報の上位6桁が「000001」であるタイプA、Bの遊技機10の機種は機種Aになり、上位6桁が「000100」であるタイプC、Dの遊技機10の機種は機種Bになる。また、例えば、合成識別情報の下位2桁が「00」であるタイプA、Cの遊技機10のシリーズはメイン機になり、「01」であるタイプB、Dの遊技機10のシリーズは甘デジ機になる。
そして、上述した図47のパーツ照合処理が実行されることで、例えば、機種Aメイン機用のパーツ510Aが、遊技機10の機種Aメイン機に取り付けられている場合には(図38)、合成識別情報(例えば「00000100」)とパーツ識別情報(例えば「00000100」)とが一致し、パーツ510が遊技機10に適合する規格品と判断されて、エラー報知が実行されない。そのため、枠装飾装置18(または盤装飾装置46)の駆動(発光)が許可される。
他方で、機種A甘デジ機用のパーツ510Bや機種Bメイン機用のパーツ510Cが、遊技機10の機種Aメイン機に取り付けられている場合には(図39(A)(B))、合成識別情報(例えば「00000100」)とパーツ識別情報(例えば「00000101」や「00010000」)とが不一致となり、パーツ510が遊技機10に適合しないと判断されて、エラー報知が実行される。また、エラー報知とともに、枠装飾装置18(または盤装飾装置46)の駆動(発光)も禁止される。
なお、エラー報知とともに、パーツ510Bに適合する正しいシリーズ(甘デジ機)やパーツ510Cに適合する正しい機種(機種B)を報知してもよい。
また、パーツ識別情報がタイプA-Dの合成識別情報のいずれにも一致しない場合には、パーツ510は遊技機10と互換性のない規格外品(不適合機種、不適合品)であると判別される。
なお、パーツ識別情報と合成識別情報とが一致しない場合(不適合機種である場合)でも、パーツ識別情報がタイプA-Dの合成識別情報のいずれかに一致すれば、パーツ510を遊技機10と互換性のある規格品(一部適合品)であるか否かを、図48(B)に示すように不適合機種の第1~第3分類に分類して判別することができる。
例えば、従来の遊技機では、低コストで遊技機を提供するための工夫として、枠装飾装置18の一部(機種要素)として部品(パーツ510)を変更することが行われていたが、遊技場で変更した場合に部品(パーツ510)が正しくないと故障の原因となる可能性があった。また枠装飾装置18が間違ったまま使用される可能性があった。
しかしながら、第2実施形態の遊技機10では、間違ったユニット(パーツ510Bやパーツ510C)が取り付けられたとしても、必ずしも枠装飾装置18(または盤装飾装置46)の駆動を禁止する必要はなく、また、遊技の進行に影響がない範囲でパーツ510の一部の駆動を許容することで、故障の要因を減らす対応も可能である。
したがって、図48(B)に示すように、演出制御装置300のメモリ(RAM322やFeRAM323(図4)等)には、パーツ510のパーツ識別情報が遊技機10の合成識別情報と一致しない場合に、パーツ510が遊技機10に互換性のある規格品(一部適合品)であるか否かを判定し分類するためのエラー分類用の参照テーブルが記憶されている。
パーツ510は、遊技盤30(図2)を装飾するものであるが、演出制御装置300により制御可能なLEDや可動部材を備えている。図48(B)に示すように、パーツ510は、対応するパーツ識別情報により、LEDのみを備えているものと、LED及び可動部材を備えているものに分類することができる。
例えば、パーツ識別番号の上位2桁が「00」または「01」である場合は、パーツ510はLEDのみ備えているものと判断することができる。また、パーツ識別情報の上位2桁が「10」または「11」である場合には、パーツ510はLED及び可動部材を備えていると判断することができる。
なお、図84(A)に示すように、パーツ識別情報が、上位2桁で対応する遊技機10のタイプA-Dを識別できるような形態となっているが、上位2桁以外の任意の2桁で遊技機10のタイプA-Dを識別できる形態としてもよい。この場合は、パーツ識別情報の上位2桁以外の任意の2桁でパーツ510がLEDのみを備えるか、LED及び可動部材を備えるかを判断することができる。このようにパーツ識別情報の一部を比較することにより、パーツ510のタイプを分類することができる。
具体的には、パーツ510が不適合品である場合には、図48(B)に示すように、互換性のある規格品であってLEDのみ備える第1分類と、互換性のある規格品であってLED及び可動部材を備える第2分類と、規格外品となる第3分類とに、分類することができる。
第1分類に関して、パーツ510が互換性のある規格品である限り、パーツ510のLEDの定格は遊技機10に対応しているため、LEDの点灯を許容することができる。
第2分類に関して、パーツ510のLED及び可動部材は、パーツ510が規格品である限りその定格も遊技機10に対応するため、駆動させることが可能である。しかし、往復動作、周回動作等、機種の相違により遊技機10に対応する可動部材の動作態様が異なる場合には、パーツ510が破損するおそれがある。よって、第2分類では、LEDの駆動(発光)を許容しつつも、パーツ510の可動部材の駆動(移動、回転など)を禁止する必要がある。
第3分類に関して、パーツ510が互換性のない規格外品である場合には、LED及び可動部材の定格が遊技機10と異なる可能性があり、これらを駆動させると遊技機10側の基板等が破損するおそれがあるため、パーツ510のLED及び可動部材の駆動を、その有無に関わらず禁止する必要がある。
なお、パーツ510が、盤装飾装置46の一部として構成されている場合、主制御用マイコン311は、盤装飾装置46に送信する信号のうち、パーツ510に関する信号だけを制限すればよく、例えば、パーツ510が第2分類に属するときは、パーツ510のLEDに係る信号の送信を許容するとともに可動部材に係る信号の送信を禁止し、例えば、パーツ510が第3分類に属するときは、パーツ510のLED及び可動部材に係る信号の送信を禁止すればよい。
例えば、図44Bに示すI2CI/Oエクスパンダ815が盤装飾装置46を駆動する場合において、例えば、PORT1がパーツ510のLEDを駆動するポートであり、PORT2がパーツ510の可動部材(モータ)を駆動するポートである場合は、PORT1及びPORT2のアドレスに属する信号の出力を禁止すればよい。
また、パーツ510が、盤装飾装置46から独立したものとして構成されている場合、主制御用マイコン311は、パーツ510が第2分類に属するときは、パーツ510のLEDに係る信号の送信を許容するとともに可動部材に係る信号の送信を禁止し、パーツ510が第3分類に属するときは、パーツ510のLED及び可動部材に係る信号の送信を禁止すればよい。
以上より、演出制御装置300(主制御用マイコン311)は、パーツ510から送信されたパーツ識別情報(第1識別情報)と演出制御装置300が備える合成識別情報(第2識別情報と第3識別情報との合成値)とを比較し、パーツ510が、遊技機10に適合する適合機種(規格品、適合品)であるか、適合しない不適合機種(規格外品、不適合品)であるかを判別することができる。
また、パーツ510が、遊技機10に適合しない不適合機種である場合には、図48(B)に示すテーブルを参照して、遊技機10とどの程度の互換性がある規格品(一部適合品)であるかを判別し分類するエラー分類を行うことができる。
〔パーツ照合処理の変形例〕
図49は、演出制御装置300によって実行されるパーツ照合処理の変形例の手順を示すフローチャートである。図49のパーツ照合処理の変形例では、演出制御装置300は、パーツ510のエラー分類を行うことで駆動(発光)制限を変化させる。
なお、図49のパーツ照合処理の変形例では、図47のパーツ照合処理と同様の処理が実行されるが、エラー報知(B5006)を行った後に、パーツ識別情報のエラー分類処理が行われる(B5006b)。また、図49と同様に、ステップB5006とB5006bとの間で、枠装飾装置18の駆動を禁止するために枠装飾装置作動禁止(B5006a)を実行してもよい。
演出制御装置300は、エラー分類処理(B5006b)において、パーツ識別情報が第1分類に属すると判別した場合には、パーツ510のLEDの駆動(発光)を許容する(B5006c)。
また、演出制御装置300は、エラー分類処理(B5006b)において、パーツ識別情報が第2分類に属すると判別した場合には、パーツ510のLEDの駆動(発光)を許容する一方パーツ510の可動部材の駆動を禁止する(B5006d)。
また、演出制御装置300は、エラー分類処理(B5006b)において、パーツ識別情報が第3分類に属すると判別した場合には、パーツ510のLED及び可動部材の駆動(発光)を禁止する(B5006e)。
このように、取り付けたパーツ510が間違ったまま使用された場合であっても、演出制御装置300が実行するエラー分類によって、遊技の進行に影響がないようにパーツ510の駆動(発光)を制限でき故障する要因を減らせるので、長寿命化につなげることができる。
[第2実施形態の作用・効果]
本実施形態に係る遊技機10は、ゲーム(変動表示ゲーム、特図変動表示ゲーム)を実行可能な遊技制御手段(遊技制御装置100)と、ゲームに関連する演出を実行可能な演出制御手段(演出制御装置300)と、を備える。遊技機10は、電気的に読取り可能な第1識別情報(パーツ識別情報、ユニットID)が割り当てられた着脱可能な部品(パーツ510)を備える。演出制御手段は、当該遊技機10の機種に対応する第2識別情報(機種識別情報、機種ID)と、当該遊技機10のシリーズに対応する第3識別情報(シリーズ識別情報、シリーズID)とを、設定可能であり、設定が行われると、第2識別情報と第3識別情報とを合成し、当該合成により得られた値を合成識別情報(合成識別データ)として保持し、部品(パーツ510)の第1識別情報を読取って合成識別情報と比較し、第1識別情報と合成識別情報とが不一致である場合に、不一致であることを報知する(エラー報知)。
このような遊技機10によれば、部品(パーツ510)の第1識別情報(パーツ識別情報、ユニットID)を読取って合成識別情報(合成識別データ)と比較し、第1識別情報と合成識別情報とが不一致である場合に、不一致であることを報知するエラー報知が行われるので、遊技機10の機種やシリーズに対応しない部品が取り付けられた際に、遊技機10に取り付けられた部品の取り違いを迅速且つ容易に判断できる
また、本実施形態に係る遊技機10では、演出制御手段(演出制御装置300)は、設定を行える識別情報設定状態(ID変更モード)へ移行可能であり、識別情報設定状態中に、第2識別情報(機種識別情報、機種ID)または第3識別情報(シリーズ識別情報、シリーズID)として設定可能な値を変更または追加可能である。
このような遊技機10によれば、遊技盤30全体を入れ替えることなく、一部の部品(例えばパーツ510)を対応するものに取り替えることで、簡便かつ安価に遊技機10の機種指定(スペック)を変更することができる。
[第3実施形態]
図50から図69を参照して第3実施形態の遊技機10について説明する。なお、以下で述べる以外の構成は、第1実施形態又は第2実施形態と同様でよい。また、以下の実施形態では、第1実施形態又は第2実施形態と同じ機能を果たす構成には同一の符号を用い、重複する記載を適宜省略して説明する。
〔遊技制御装置〕
図50は、第3実施形態に係る遊技制御系の構成例を示すブロック図である。図50では、第1実施形態の図3と異なり、遊技制御装置100(主基板、メイン基板)において、出力ポート134-137が存在せず電気回路が簡略化され、また、配線数(信号数)が減少して、電子部品等を配置するスペース(場所)を十分に確保できる。これは、以下のように、遊技用マイコン111(CPU111a)と、各ドライバ138a-138d、150や中継基板70との間の通信を従来のパラレル通信ではなくシリアル通信で行うようにしたためである。なお、遊技用マイコン111と演出制御装置300の間、遊技用マイコン111と払出制御装置200の間、遊技用マイコン111と検査装置500の間で、シリアル通信が行われることは、第1実施形態と変わりない。
遊技用マイコン111のシリアルポート173a(第1シリアルポート)からのデータは、シリアル信号線174aを介してシリアル通信(シリアル方式)でドライバ138a-138d、ドライバ150に送信される。遊技用マイコン111のシリアルポート173b(第2シリアルポート)からのデータは、シリアル信号線174bを介してシリアル通信(シリアル方式)で中継基板70に送信される。なお、第1実施形態の図3では、遊技用マイコン111からデータバス140を介してパラレル通信(パラレル方式)でデータが送信される。本実施形態において、シリアル通信は、同期式シリアル通信であり、例えばSPI(シリアル・ペリフェラル・インタフェース)によって行われるが、これに限られるものではない。
本実施形態において、ドライバ138c、138dは、各々、一つのドライバ用ICチップ156(集積回路チップ、電子部品)の一部となっている。ドライバ138b、150は、各々、一つのドライバ用ICチップ157(集積回路チップ、電子部品)の一部となっている。なお、各ドライバを一つのICチップとして設けてもよい。
遊技制御装置100(主基板)は、試射試験装置への試射試験信号を供給する中継基板70と接続するためのコネクタ部160(CN1)を有するとともに、中継基板70は、遊技制御装置100(主基板)と接続するためのコネクタ部162(CN2)を有する。コネクタ部160とコネクタ部162は、ケーブル(又はハーネス)等の電線の差込口であり、ケーブル等によって互いに電気的に接続される。なお、バッファ133と同様に、コネクタ部160(CN1)も遊技店に設置される実機(量産販売品)としてのパチンコ遊技機の遊技制御装置(主基板)には実装されない部品である。
〔遊技制御装置の回路図〕
図51と図52は、第3実施形態に係る遊技制御装置100(主基板、メイン基板)に設けられる電気回路(電子回路)の一部を例示する回路図である。なお、回路図における電子部品(ICチップなど)や素子や端子などの位置と、実際にこれらが基板に配置される位置は無関係でよい。なお、端子は、例えばピンであってよい。本実施形態において、基板は、プリント基板等の回路基板を意味する。
遊技用マイコン111のシリアルポート173aは、シリアルデータ信号(TXA)用の端子A1、シリアルクロック信号(CKA)用の端子A2、チップセレクト信号(SA0)(スレーブセレクト信号)用の端子A3を含む(図51参照)。端子A1に接続する配線は、シリアルデータ信号(TXA)を伝送するためのデータ線194(194a,194b)となり、端子A2に接続する配線は、シリアルクロック信号(CKA)を伝送するためのクロック線195(195a,195b)となり、端子A3,A4に接続する配線は、チップセレクト信号(SA0,SA1)を伝送するためのチップセレクト線196(196a,196b)となる。なお、シリアル通信によって遊技用マイコン111(マスタ)からはシリアルデータの出力だけが行われるため、端子A1はシリアルデータ出力用の端子であり、スレーブからのシリアルデータ入力用の端子は省略されている。チップセレクト信号は、入力動作又は出力動作を可能とするスレーブ(ICチップ)を選択するための信号である。
遊技用マイコン111のシリアルポート173aからのシリアル信号線174a(図50)は、少なくともシリアルデータ信号(TXA)を伝送するためのデータ線194(信号線)と、シリアルクロック信号(CKA)を伝送するためのクロック線195(信号線)から構成される。
遊技用マイコン111のシリアルポート173bは、シリアルデータ信号(TXB)用の端子B1、シリアルクロック信号(CKB)用の端子B2、チップセレクト信号(SB0)(スレーブセレクト信号)用の端子B3を含む(図52参照)。端子B1に接続する配線は、シリアルデータ信号(TXB)を伝送するためのデータ線211となり、端子B2に接続する配線は、シリアルクロック信号(CKB)を伝送するためのクロック線212となり、端子B3に接続する配線は、チップセレクト信号(SB0)を伝送するためのチップセレクト線218となる。
なお、シリアル通信によって遊技用マイコン111(マスタ)からはシリアルデータの出力だけが行われるため、端子B1はシリアルデータ出力用の端子であり、スレーブからのシリアルデータ入力用の端子は省略されている。また、シリアルポート173bが一つだけのICチップ(スレーブ)とシリアル通信を行う場合には、チップセレクト信号とそのチップセレクト線218は省略可能である。
遊技用マイコン111のシリアルポート173bからのシリアル信号線174b(図50)は、少なくともシリアルデータ信号(TXB)を伝送するためのデータ線211(信号線)と、シリアルクロック信号(CKB)を伝送するためのクロック線212(信号線)から構成される。
〔遊技用マイコンとドライバとの間のシリアル通信に係る回路図〕
図51Aは、遊技制御装置100における遊技用マイコン111と各ドライバとの間のシリアル通信に係る回路図であり、また、遊技用マイコン111と各ドライバ用ICチップの周辺の電気回路(電子回路)を例示する回路図である。図51Aは、遊技用マイコン111のシリアルポート173aからの外部情報信号、一括表示装置50のLED駆動信号、性能表示装置152へのLED駆動信号の伝送の状況などを示す。LED駆動信号は、一括表示装置50又は性能表示装置152のデジット線とセグメント線への信号である。
ドライバ用ICチップ156,157は、各々、遊技用マイコン111のシリアルポート173aからのシリアルデータ信号(TXA)をパラレルデータ信号に変換する16ビットのシリアルパラレル変換回路である。ドライバ用ICチップ156,157は、シフトレジスタと、パラレルデータラッチ回路(データレジスタ)とを有する一般的なものでよい。シフトレジスタは、例えば複数のD型フリップフロップから構成され、シリアルクロック信号(CKA)に同期して、一のD型フリップフロップのビットデータが隣のD型フリップフロップに移動して行く。パラレルデータラッチ回路は、例えば複数のD型フリップフロップから構成され、ラッチ信号を受信する所定のラッチタイミングで、シフトレジスタの16ビットのデータをラッチ(保持)して取り込む(セットする)。
ドライバ用ICチップ156,157は、カスケード接続(多段接続)され、ドライバ用ICチップ156が第1段、ドライバ用ICチップ157が第2段を構成する。遊技用マイコン111からデータ線194aによって送信されたシリアルデータ信号(TXA)は、ドライバ用ICチップ156の入力端子DINに入力し、ドライバ用ICチップ156のシフトレジスタを通過して、出力端子DOUTから出力可能とされる。ドライバ用ICチップ156の出力端子DOUTから出力したシリアルデータ信号(TXA)は、ドライバ用ICチップ157の入力端子DINに入力し、ドライバ用ICチップ157のシフトレジスタを通過する。
ドライバ用ICチップ156,157には、クロック線195aからの同じシリアルクロック信号(CKA)、チップセレクト線196aからの同じチップセレクト信号(SA0)、リセット線197aからの同じリセット信号(RESET)が並列的にそれぞれの入力端子SCK、入力端子/CS、入力端子/RESETに入力される。なお、「/」は負論理の端子を示す。ドライバ用ICチップ156,157のシフトレジスタは、同じシリアルクロック信号(CKA)で同期して動作する。ドライバ用ICチップ156,157のパラレルデータラッチ回路は、ラッチ信号として同じチップセレクト信号(SA0)を受信したタイミング(ラッチタイミング)で、シフトレジスタのデータを取り込む。ドライバ用ICチップ156,157のパラレルデータラッチ回路に取り込まれたデータは、16ビットのパラレルデータとして、パラレル出力端子(PA0-PA7,PB0-PB7)から同時に出力される。従って、2つのドライバ用ICチップ156,157は、合わせて合計32ビットのシリアルパラレル変換回路となり、シリアルデータ信号(TXA)を32ビットのパラレルデータに変換することになる。また、ドライバ用ICチップ156,157は、シュミットバッファ125からのリセット信号によって、同時にリセット(初期化)され、内部のデータがクリアされる。
ドライバ用ICチップ156のパラレル出力端子のうち端子PA0-PA7,PB0-PB2は、それぞれ、コネクタ部181(CN3)の端子S17-S7に接続する。コネクタ部181(CN3)の端子S17-S7は、ケーブル等の電線によって外部情報端子71に接続する。従って、ドライバ用ICチップ156のパラレル出力端子PA0-PA7,PB0-PB2からの信号は、外部情報A-K(外部情報信号)として、外部情報端子71に送信される。このように、ドライバ用ICチップ156のシフトレジスタ、パラレルデータラッチ回路、及び、パラレル出力端子PA0-PA7,PB0-PB2は、ドライバ138d(図50)を構成する。また、ドライバ用ICチップ156のパラレル出力端子のうち端子PB3は、ガラス枠15等の開放を示すドア信号を供給する。
例えば、外部情報A-Kは、各々、呼出し信号、アウト信号、セキュリティ信号、メイン賞球信号、大当り4信号、大当り3信号、大当り2信号、大当り1信号、始動口信号、図柄確定回数信号、扉・枠開放信号である。呼出し信号は、遊技場(ホール)の係員を呼び出すための信号であり、アウト信号は、アウト球検出スイッチ74の検出に基づく信号である。セキュリティ信号は、磁石不正や電波不正などの不正やエラーがあった場合に送信される信号である。メイン賞球信号は、入賞口への入賞により発生した賞球数(払出予定数)が所定数(ここでは10個)になる毎に生成される信号である。
大当り1信号、大当り2信号、大当り3信号、大当り4信号は、大当り情報として、機種により定義される信号であってよく、大当りの開始時にオンし、大当り終了時や時短の終了時にオフするような信号である。始動口信号は、始動口1スイッチ36aや始動口2スイッチ37aの検出に基づく始動口の入賞信号であり、図柄確定回数信号は、特図変動表示ゲームの実行回数(図柄確定の回数)を示す信号であり、扉・枠開放信号は、ガラス枠開放検出スイッチ63や前面枠開放検出スイッチ64(本体枠開放検出スイッチ)によるガラス枠15や前面枠(遊技枠)12の開放を示す信号である。
なお、セキュリティ信号、メイン賞球信号、始動口信号、扉・枠開放信号、図柄確定回数信号は、タイマ割込み処理の外部情報編集処理(A1319)で設定されてよい。
ドライバ用ICチップ156のパラレル出力端子のうち端子PB4-PB7は、それぞれ、ゲートドライバ183を介して、コネクタ部185(CN4)の端子L9-L12に接続する。コネクタ部185(CN4)は、ケーブル等の電線によって一括表示装置50に接続する。パラレル出力端子PB4-PB7は、一括表示装置50のLEDランプ(D1-D18)のカソード端子が接続されるデジット線(LEDデジット0-3)に電気的に接続することになる。このように、ドライバ用ICチップ156のシフトレジスタ、パラレルデータラッチ回路、及び、パラレル出力端子PB4-PB7は、ドライバ138c(図50)を構成する。
一括表示装置50の第1特図変動表示部51(ランプD1)と第2特図変動表示部52(ランプD2)は7セグメント型(ドットDpを入れると8セグメント型)の表示器であるため、一括表示装置50を4桁×8セグメントのLED表示器とみなして制御可能である。この場合に、デジット線(LEDデジット0-3)は、桁(デジット)を選択することになる。
ゲートドライバ183は、信号の増幅などに用いられるとともに、端子PB4-PB7からの配線を二方向に分岐する。また、端子PB4-PB7からの配線には、プルアップ抵抗R1が接続されている。ゲートドライバ183の入力端子I3とI7は、ドライバ用ICチップ156の端子PB4からの配線に接続し、入力端子I2とI5は、ドライバ用ICチップ156の端子PB5からの配線に接続し、入力端子I1とI8は、ドライバ用ICチップ156の端子PB6からの配線に接続し、入力端子I4とI6は、ドライバ用ICチップ156の端子PB7からの配線に接続する。入力端子I1―I8の信号は、増幅されて、出力端子O1-O8から出力される。デジット線に係る出力端子O5-O7は、コネクタ部185(CN4)の端子L9-L12に接続する一方、デジット線に係る出力端子O1-O4は、4桁の7セグメント型(ドットDpを含めると8セグメント型)のLED表示器である性能表示装置152のデジット線(デジット0-3)に接続する。なお、端子PB4-PB7を性能表示装置152のデジット線(デジット0-3)と一括表示装置50のデジット線(LEDデジット0-3)とで共用化することによって、コストが削減できる。
ドライバ用ICチップ157のパラレル出力端子のうち端子PA0-PA7は、それぞれ、抵抗R2を介してコネクタ部185(CN4)の端子L1-L8に接続する。コネクタ部185(CN4)は、ケーブル等の電線によって一括表示装置50に接続する。パラレル出力端子PA0-PA7は、一括表示装置50のLEDランプのアノード端子が接続されるセグメント線(LEDセグメント0-7)に電気的に接続することになる。このように、ドライバ用ICチップ157のシフトレジスタ、パラレルデータラッチ回路、及び、パラレル出力端子PA0-PA7は、ドライバ138b(図50)を構成する。
一括表示装置50のセグメント線(LEDセグメント0-7)を介してLEDのアノード端子に電流を流し込み、接地電位を出力するカソード端子よりデジット線(LEDデジット0-3)を介して電流を引き抜くことで、ダイナミック駆動方式(ダイナミック点灯方式)で順次選択されたLEDに電流が流れて点灯される。
また、ドライバ用ICチップ157のパラレル出力端子のうち端子PB0-PB7は、それぞれ、4桁の7セグメント型(ドットDpを含めると8セグメント型)のLED表示器である性能表示装置152のセグメント線(a―g、Dp)に電気的に接続する。このように、ドライバ用ICチップ157のシフトレジスタ、パラレルデータラッチ回路、及び、パラレル出力端子PB0-PB7は、ドライバ150(図50)を構成する。
性能表示装置152のセグメント線(a―g、Dp)を介してLED(発光部材、セグメント)のアノード端子に電流を流し込み、接地電位を出力するカソード端子よりデジット線(デジット0-3)を介して電流を引き抜くことで、ダイナミック駆動方式で順次選択されたLEDに電流が流れて点灯される。このようにして、性能表示装置152は、確率設定値を表示できる他、性能表示として、役物比率や出玉率やベース値(通常遊技状態における出玉率)や排出球数などの性能情報を表示できるが、本実施形態では、特にベース値を表示する。なお、性能表示装置152がベース値以外の性能情報を表示する場合にも本実施形態を適用可能である。なお、性能情報のうち、役物比率や出玉率やベース値は、賞球数に関する情報となる。
以上のように、外部情報信号、一括表示装置50のLED駆動信号(デジット線とセグメント線への信号)、性能表示装置152のLED駆動信号(デジット線とセグメント線への信号)は、遊技用マイコン111によって、出力処理(A1306)等で合成されるシリアルデータ信号(TXA)に含めて送信され、ドライバ用ICチップ156,157によってパラレルデータ信号として出力される。
図51Bは、遊技制御装置100における遊技用マイコン111とソレノイドドライバ138aとの間のシリアル通信に係る回路図であり、また、遊技用マイコン111とソレノイドドライバ用のICチップの周辺の電気回路(電子回路)を例示する回路図である。遊技用マイコン111のシリアルポート173aからのソレノイド駆動信号の伝送の状況などを示す。
ソレノイドドライバ用のICチップ138a-1,138a-2は、パラレルデータ信号としてのソレノイド駆動信号を生成し出力するドライバ(駆動回路)138a(図50)を構成する。ICチップ138a-1は、シフトレジスタとパラレルデータラッチ回路(データレジスタ)とを有する一般的な8ビットのシリアルパラレル変換回路である。ICチップ138a-2は、複数のトランジスタを直結したダーリントン接続によってICチップ138a-1からの電流信号を増幅するダーリントン電流増幅器である。
遊技用マイコン111からデータ線194bによって送信されたシリアルデータ信号(TXA)は、ICチップ138a-1の入力端子SIに入力し、ICチップ138a-1のシフトレジスタを通過する。ICチップ138a-1の入力端子SCK、入力端子/G、入力端子/SCLRには、各々、シリアルクロック信号(CKA)、イネーブル信号としてのゲート信号(GATE)、シュミットバッファ125からのリセット信号が、クロック線195b、イネーブル信号線198b(198)、リセット線197bによって入力されている。なお、データ線194bは、データ線194a(図61A)から分岐したものよく、クロック線195bは、クロック線195a(図51A)から分岐したものでよい。
ICチップ138a-1のシフトレジスタは、シリアルクロック信号(CKA)によって動作する。ICチップ138a-1のパラレルデータラッチ回路は、入力端子RCKに入力するチップセレクト信号(SA1)によってシフトレジスタのデータを取り込む。ここでのチップセレクト信号(SA1)は、ラッチ信号として機能する。ICチップ138a-1のパラレルデータラッチ回路に取り込まれたデータは、ゲート信号(GATE)が入力している場合に、8ビットのパラレルデータ信号としてパラレル出力端子(QA-QH)から出力される。ゲート信号(GATE)は、ICチップ138a-1の出力を可能にするイネーブル信号として機能している。ゲート信号(GATE)がスリーステートバッファ等の出力回路に入力することにより、出力動作が可能になった出力回路を介してパラレルデータ信号がパラレル出力端子(QA-QH)から出力される。また、ICチップ138a-1は、リセット信号によって、リセットされ、内部のデータがクリアされる。
ICチップ138a-1によってシリアルデータ信号(TXA)から生成されたパラレルデータ信号のうち、パラレル出力端子QEからの信号は、球発射装置による遊技球の発射を許可するための発射許可信号として払出制御装置200に向けて出力される。パラレル出力端子QA-QCからの信号は、それぞれ、大入賞口ソレノイド駆動信号、レバーソレノイド駆動信号、普電ソレノイド駆動信号として出力される。別な言い方では、大入賞口ソレノイド駆動信号、レバーソレノイド駆動信号、普電ソレノイド駆動信号は、遊技用マイコン111からシリアルデータ信号(TXA)に含めて送信され、ICチップ138a-1によってパラレルデータ信号として出力される。ソレノイドの数が遊技機10の機種ごとに異なっても、ソレノイドに対する駆動信号は遊技用マイコン111(CPU111a)からシリアル通信で出力されることになるため、パラレル通信の場合に必要であった配線が削減できるとともに、異なる機種間で遊技制御装置100(遊技制御手段)を共通化し易くなる。
ここで、大入賞口ソレノイド駆動信号は、特別変動入賞装置39を開放させる大入賞口ソレノイド39bを駆動するための信号であり、レバーソレノイド駆動信号は、特定領域86を開放させるレバーソレノイド86bを駆動するための信号であり、普電ソレノイド駆動信号は普通変動入賞装置37の可動部材37bを開放させる普電ソレノイド37cを駆動するための信号である。
ICチップ138a-2は、ICチップ138a-1のパラレル出力端子QA-QCからの大入賞口ソレノイド駆動信号、レバーソレノイド駆動信号、普電ソレノイド駆動信号を増幅する。ICチップ138a-1のパラレル出力端子QA-QCからの駆動信号は、各々、ICチップ138a-2の入力端子J1-J3に抵抗R4を介して入力して、増幅後に出力端子K1-K3から出力する。出力端子K1-K3からの大入賞口ソレノイド駆動信号、レバーソレノイド駆動信号、普電ソレノイド駆動信号は、各々、大入賞口ソレノイド39b、レバーソレノイド86b、普電ソレノイド37cに送信されるだけでなく、中継基板70にも送信される(図50)。
〔遊技用マイコンと中継基板との間のシリアル通信に係る回路図〕
図52は、遊技制御装置100(主基板)内で遊技用マイコン111と中継基板70との間のシリアル通信に係る回路図を例示し、また、遊技用マイコン111とコネクタ部160(CN1)の周辺の電気回路(電子回路)を例示する回路図である。
遊技用マイコン111のシリアルポート173bの端子B1-B3から出力されるシリアル信号として、シリアルデータ信号(TXB)とシリアルクロック信号(CKB)とチップセレクト信号(SB0)は、各々、コネクタ部160(CN1)のシリアルデータ信号(TXB)用の端子D7(信号端子)、シリアルクロック信号(CKB)用の端子D6(信号端子)、チップセレクト信号(SB0)用の端子D3(チップセレクト端子)にバッファ133を介して伝送される。なお、シリアルポート173bが一つだけのICチップ(スレーブ)とシリアル通信を行う場合には、チップセレクト信号と、チップセレクト信号が伝送されるチップセレクト線218は、省略可能な場合もある。
シリアルデータ信号(TXB)は、コネクタ部160(CN1)と電気的に接続する中継基板70へ送信される試射試験信号を含む。遊技機10に関する試射試験信号は、従来のパラレルデータ信号と異なり、中継基板70へ遊技用マイコン111からシリアルデータ信号(TXB)として送信される。試射試験信号は、図50の各種スイッチのオンオフの情報など、試射試験に必要な情報が、遊技用マイコン111(CPU111a)で取り込まれてシリアルデータとしてまとめられて送信される信号である。従って、スイッチの数が遊技機10の機種ごとに異なっても、パラレル通信の場合に必要であったスイッチ毎の配線が削減できるとともに、異なる機種間で遊技制御装置100(遊技制御手段)を共通化し易くなる。
シリアルデータ信号(TXB)は、中継基板70において、パラレルデータ信号に変換された後、試射試験を実施する試射試験装置に出力される。従って、中継基板70(中継手段)に予めシリアル通信に必要な配線を準備しておくだけで、異なる機種間で中継基板70を共通化し易くなる。
上記の各種スイッチとしては、ゲートスイッチ34a、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39a、特定領域スイッチ72、残存球排出口スイッチ73などがある。なお、試射試験信号としてのソレノイド駆動信号は、前述のようにドライバ138aから別のルートで中継基板70に送信される。
図6Aのタイマ割込み処理(割込み処理プログラム、遊技制御用プログラムの一部)において、各種スイッチのオンオフの情報(オンオフ信号)は遊技用マイコン111(CPU111a)に入力され取り込まれ(入力処理(A1303)、入賞口スイッチ/状態監視処理(A1310))、その後シリアルデータの試射試験信号として送信処理される(後述の試射試験信号出力処理(図57))。
また、試射試験信号出力処理(図57)で送信処理される試射試験信号として、普図変動表示ゲームの停止図柄番号に対応する図柄1信号(A7916で設定)、特図1変動表示ゲームの停止図柄番号に対応する図柄2信号(A3403で設定)、特図2変動表示ゲームの停止図柄番号に対応する図柄3信号(A3503で設定)、普図(普通図柄、普通識別情報)の変動開始に関する普図1変動中信号(A7922で設定)、特図1と特図2の変動開始に関する特図1、2変動中信号(A3205、A3210で設定)、特図1と特図2の変動終了に関する信号(A2609で設定)、普図の当りの開始に関する普1当り信号(A7610で設定)、特図1と特図2の大当りの開始に関する特1、2当り信号(A2610で設定)、右打ち指示又は左打ち指示に関する信号(発射位置指定信号1のオンオフ)(A2610やA2614などで設定)、大入賞口の開放開始と開放終了に関する信号(特別電動役物1作動中信号のオンオフ)(A2611、A2613で設定)がある。
さらに、試射試験信号出力処理(図57)で送信処理される試射試験信号として、普通変動入賞装置37の作動開始と普電作動終了に関する信号(普通電動役物1作動中信号のオンオフ)、高確率状態の開始終了に関する信号(特別図柄1高確率状態信号のオンオフ、特別図柄2高確率状態信号のオンオフ)、時短の開始と終了に関する信号(特別図柄1変動時間短縮状態信号のオンオフ、特別図柄2変動時間短縮状態信号のオンオフ、普通図柄1高確率状態信号のオンオフ、普通図柄1変動時間短縮状態信号のオンオフなど)、遊技機10のエラーの発生を示す遊技機エラー状態信号などがある。
なお、試射試験信号出力処理(図57)を実行する前に、上記の各試射試験信号のデータは、RAM111cの第1のRAM領域内(図63)にある試験信号出力データ領域に記憶、設定されている。
遊技機10に関する試射試験信号は、シリアルデータ信号(TXB)としてコネクタ部160(CN1)を介して中継基板70に送信される。
また、遊技用マイコン111は、中継基板70に設けられるシリアルパラレル変換回路192(所定回路)の動作を可能とするイネーブル線214(イネーブル配線)が接続する端子OEを有する。遊技用マイコン111の端子OEから出力するイネーブル信号(OE)は、コネクタ部160(CN1)のイネーブル信号用の端子D2(イネーブル端子)にバッファ133を介して伝送される。なお、イネーブル信号が伝送される配線をイネーブル線214とする。イネーブル線214は、バッファ133に接続する前にプルアップ抵抗Rが接続されている。
さらに、シュミットバッファ125からのリセット信号(RESET)は、コネクタ部160(CN1)のリセット信号用の端子D10(リセット端子)にバッファ133を介して伝送される。なお、リセット信号が伝送される配線をリセット線216(リセット配線)とする。
なお、その他に、コネクタ部160(CN1)は、接地された接地用の接地端子D1,D4,D5,D8,D9と、5Vの電圧が供給される電源端子D11,D12を有する。
バッファ133は、スリーステートバッファであり、/1G端子への入力がLレベル(GND)である場合に、入力端子1A1-1A4への入力の論理値(L又はH)をそのまま出力端子1Y1-1Y4から出力し、/1G端子への入力がHレベルである場合に、入力端子1A1-1A4と出力端子1Y1-1Y4の間が高インピーダンス状態となり電気的に切り離される。バッファ133は、/2G端子への入力がLレベル(GND)である場合に、入力端子2A1-2A4への入力の論理値(L又はH)をそのまま出力端子2Y1-2Y4から出力し、/2G端子への入力がHレベルである場合に、入力端子2A1-2A4と出力端子2Y1-2Y4の間が高インピーダンス状態となり電気的に切り離される。なお、「/」は負論理の端子を示す。
バッファ133は、論理値の電圧(Lレベル又はHレベル)を補正して出力するものでありオプションで設けられ、遊技用マイコン111とコネクタ部160(CN1)との配線が短い場合などは、バッファ133は不要になる。
図52では、/1G端子と/2G端子への入力がLレベル(GND)であるため、入力端子1A1-1A4,2A1-2A4へ入力した信号は、各々、出力端子1Y1-1Y4,2Y1-2Y4から出力する。従って、リセット信号(RESET)、シリアルデータ信号(TXB)、シリアルクロック信号(CKB)、チップセレクト信号(SB0)、イネーブル信号(OE)は、各々、バッファ133の入力端子1A1,1A3,1A2,1A4,2A1に入力して、出力端子1Y1,1Y3,1Y2,1Y4,2Y1からコネクタ部160(CN1)に向けて出力する。リセット信号(RESET)用の出力端子1Y1、シリアルデータ信号(TXB)用の出力端子1Y3、シリアルクロック信号(CKB)用の出力端子1Y2、チップセレクト信号(SB0)用の出力端子1Y4、イネーブル信号(OE)用の出力端子2Y1は、それぞれ、コネクタ部160(CN1)の端子D10、端子D7、端子D6、端子D3、端子D2に配線によって接続する。
〔中継基板〕
図53は、中継基板70に係る回路図を例示し、また、コネクタ部162(CN2)とシリアルパラレル変換回路192との周辺の電気回路(電子回路)を例示する回路図である。
本実施形態において、中継基板70も、遊技制御装置100の基板(主基板)と同様に、両面のプリント基板(両面基板)である。本実施形態では、回路部品(ICやコネクタなどの電子部品)を中継基板70の上面に配置する。なお、回路部品を中継基板70の両面又は下面に配置するようにしてもよい。中継基板70において、データ線211、クロック線212、イネーブル線214、リセット線216、チップセレクト線218等の配線やこれらが接続する端子は、上面(表側、上層)と下面(裏側、下層)のうち上面に配置される(下面でも良い)。なお、中継基板70は、一般的な多層のプリント基板(多層基板)でもよい。この場合には、中継基板70において、データ線211、クロック線212、イネーブル線214、リセット線216、チップセレクト線218等の配線やこれらが接続する端子は外層(最上層、表面層)に配置され、内側の2層(内層)が電源層およびグラウンド層(接地層、GND層)となる。
中継基板70のコネクタ部162(CN2)は、遊技制御装置100(主基板)のコネクタ部160(CN1)とケーブル等の電線によって接続する。コネクタ部162(CN2)の端子F1-F12は、それぞれ、コネクタ部160(CN1)の端子D1-D12に対応し電気的に接続する。コネクタ部162(CN2)は、接地された接地用の接地端子F1,F4,F5,F8,F9と、5Vの電圧が供給される電源端子F11,F12を有する。
本実施形態において、中継基板70(両面基板)において、上面の接地端子F1,F4,F5,F8,F9は、下面(裏側、下層)に存在する接地線(図示せず)にスルーホールや貫通ビアなどによって接続されて接地されている。上面の電源端子F11,F12は、下面(裏側、下層)に存在する電源線(図示せず)にスルーホールや貫通ビアなどによって接続される。なお、これら接地端子が接続する接地線(図示せず)や電源端子が接続する電源線(図示せず)は、上面(表側、上層)に存在してもよい。また、中継基板70が多層基板である場合には、接地端子F1,F4,F5,F8,F9は、内部のグラウンド層(接地層、GND層)にスルーホールや貫通ビアなどによって接続される。また、電源端子F11,F12は、内部の電源層にスルーホールや貫通ビアなどによって接続される。
コネクタ部160(CN1)からのシリアルデータ信号(TXB)、シリアルクロック信号(CKB)、チップセレクト信号(SB0)、イネーブル信号(OE)、リセット信号(RESET)は、各々、コネクタ部162(CN2)の端子F7,F6,F3,F2,F10からデータ線211、クロック線212、チップセレクト線218、イネーブル線214、リセット線216に伝送される。
シリアルデータ信号(TXB)、シリアルクロック信号(CKB)、チップセレクト信号(SB0)、イネーブル信号(OE)、リセット信号(RESET)は、バッファ191を介して、シリアルパラレル変換回路192に入力する。シリアルパラレル変換回路192は、シリアルデータ信号(TXB)に含まれる試射試験信号(シリアルデータ)を、パラレルデータ信号に変換してパラレルデータとしての試射試験信号を出力する。
バッファ191は、バッファ133と同様にスリーステートバッファであり、論理値の電圧(Lレベル又はHレベル)を補正して出力する。バッファ191は、/1G端子及び/2G端子への入力がともにLレベル(GND)である場合に、入力端子NA1-NA8への入力の論理値(L又はH)をそのまま出力端子NY1-NY8から出力し、/1G端子及び/2G端子への入力のいずれかがHレベルである場合に、入力端子NA1-NA8と出力端子NY1-NY8の間が高インピーダンス状態となり電気的に切り離される。なお、「/」は負論理の端子を示す。図53では、/1G端子と/2G端子への入力がともにLレベル(GND)であり、入力端子NA1-NA8した信号は、各々、出力端子NY1-NY8から出力する。
コネクタ部162(CN2)からのリセット線216とデータ線211は、バッファ191の入力端子NA1,NA2に接続する。リセット線216のリセット信号(RESET)とデータ線211のシリアルデータ信号(TXB)は、各々、バッファ191の入力端子NA1,NA2に入力して、出力端子NY1,NY2からシリアルパラレル変換回路192に向けて出力する。
一方、クロック線212は二股に分岐してバッファ191の入力端子NA3,NA4に接続する。クロック線212のシリアルクロック信号(CKB)は、バッファ191の入力端子NA3,NA4に入力して、出力端子NY3,NY4からシリアルクロック信号CKB1,CKB2として、シリアルパラレル変換回路192に向けて出力する。
チップセレクト線218は二股に分岐してバッファ191の入力端子NA5,NA6に接続する。チップセレクト線218のチップセレクト信号(SB0)は、バッファ191の入力端子NA5,NA6に入力して、出力端子NY5,NY6からチップセレクト信号SB01,SB02として、シリアルパラレル変換回路192に向けて出力する。
イネーブル線214は二股に分岐してバッファ191の入力端子NA7,NA8に接続する。イネーブル線214のイネーブル信号(OE)は、バッファ191の入力端子NA7,NA8に入力して、出力端子NY7,NY8からイネーブル信号OE1,OE2として、シリアルパラレル変換回路192に向けて出力する。
なお、バッファ191に接続する前に、データ線211、クロック線212、イネーブル線214、リセット線216、チップセレクト線218には、プルアップ抵抗Rが接続されている。
シリアルパラレル変換回路192は、カスケード接続された10個の8ビットシリアルパラレル変換ICチップ192a-192jからなり、最大8×10ビットのシリアルデータ信号(TXB)をパラレルデータ信号に変換して試射試験信号として出力可能である。シリアルデータ信号(TXB)は、順次シリアルパラレル変換ICチップ192a-192jを通過する。
5個の8ビットシリアルパラレル変換ICチップ192a-192e(第1グループ)と5個の8ビットシリアルパラレル変換ICチップ192f-192j(第2グループ)には、各々、分岐したシリアルクロック信号CKB1,CKB2、チップセレクト信号SB01,SB02、イネーブル信号OE1,OE2が並列的に同時に入力する。このため、第1グループのシリアルパラレル変換ICチップ192a-192eと第2グループのシリアルパラレル変換ICチップ192f-192jは、同期して動作するとともに、イネーブル信号OE1,OE2によって同時にパラレルデータ信号(試射試験信号)を出力する。また、各シリアルパラレル変換ICチップ192a-192jには並列的に同時にリセット信号(RESET)が入力可能である。即ち、シリアルパラレル変換回路192に対するリセット信号によって、各シリアルパラレル変換ICチップ192a-192jは同時にリセット(初期化)され、内部のデータがクリアされる。
各シリアルパラレル変換ICチップ192a-192jは、シフトレジスタとパラレルデータラッチ回路(データレジスタ)とを有する一般的な8ビットのシリアルパラレル変換回路である。チップセレクト信号SB01,SB02(SB0)は、ラッチ信号として機能する。パラレルデータラッチ回路は、チップセレクト信号SB01,SB02によってシフトレジスタのデータを取り込む。各シリアルパラレル変換ICチップ192a-192jのパラレルデータラッチ回路に取り込まれたデータは、イネーブル信号OE(OE1又はOE2)が入力している場合に、8ビットのパラレルデータ信号として出力される。イネーブル信号OEがスリーステートバッファ等の出力回路に入力されることにより、出力動作が可能になった出力回路を介してパラレルデータ信号が出力される。
〔メイン処理(遊技制御装置)〕
図54は、第3実施形態に係るメイン処理の後半部分の手順を示すフローチャートである。なお、ステップA1043a以外の処理は、第1実施形態のメイン処理(図5B)と同じであり、説明を省略する。
遊技制御装置100は、ステップA1043とA1044の間で、ステップA1043aにおいて、通常ベース状態判定領域(通常ベース状態判定フラグ領域)に通常ベース状態情報をセーブする。ここで、通常ベース状態情報は、ベース値(通常遊技状態における出玉率)が得られる通常遊技状態を示す値(例えば、55h=01010101B)である。
RAM初期化(RAMクリア)の際(A1041の結果が「Y」)や、設定可変状態(設定変更モード)が終了した場合(A1040の結果が「Y」)は、ステップA1042-A1043のRAM初期化処理が実行されるため、ステップA1043の後の遊技状態は、通常遊技状態となる。
なお、通常遊技状態以外の特別遊技状態(大当り状態)や特定遊技状態(確変状態、時短状態)において、通常ベース状態判定領域には、通常以外ベース状態情報がセーブされる。通常以外ベース状態情報は、ベース値(通常遊技状態における出玉率)が得られない特別遊技状態や特定遊技状態を示す値(例えば、00h=00000000B)である。
〔タイマ割込み処理〕
図55は、第3実施形態に係るタイマ割込み処理の手順を示すフローチャートである。なお、ステップA1319a、A1321-A1323以外の処理は、第1実施形態のタイマ割込み処理(図6A)と同じであり、説明を省略する。
遊技制御装置100は、ステップA1319の後で、ステップA1319aにおいて、後述のフラグレジスタ1200(図64参照)の情報(値)をRAM111cのスタック領域に退避(PUSH)する。スタック領域は、例えば、後述の遊技制御用スタック領域である。そして、性能表示装置152の表示を制御する性能表示モニタ制御処理(性能表示設定処理)を実行する(A1320)。なお、第3実施形態に係る性能表示モニタ制御処理(性能表示設定処理)の詳細については、後述する。
その後、遊技制御装置100は、退避していたフラグレジスタ1200の情報をRAM111cのスタック領域から復帰(POP)する(A1321)。
次に、遊技制御装置100は、初期表示設定フラグがオンであるか否かを判定する(A1322)。初期表示設定フラグは、RAM111cの初期表示設定フラグ領域(図63)に格納され、遊技機10の電源投入(又は電源復旧)の際において、例えばRAM初期化時の初期値として、オン状態に設定されている(A1043)。初期表示設定フラグがオンに設定されることにより、電源投入後の性能表示(性能情報)の表示開始直前に、性能表示装置152で初期表示が所定期間(例えば約5000ms)だけ実行される。初期表示は、後述の初期表示タイマ更新処理(図59)で実行され、性能表示装置152の各桁の全セグメントの動作を確認するためのものである。
遊技制御装置100は、初期表示設定フラグがオンである場合に(A1322の結果が「Y」)、初期表示設定フラグをクリアして(A1323)、タイマ割込み処理を終了する。初期表示設定フラグがオフである場合に(A1322の結果が「N」)、そのままタイマ割込み処理を終了する。これにより、遊技機10の電源投入(又は電源復旧)後の最初のタイマ割込み処理の終了時には、初期表示設定フラグはオフ状態に設定されている。即ち、電源投入直後のみ、初期表示設定フラグがオンに設定されて一度だけ性能表示装置152で初期表示が実行される。
〔出力処理〕
次に、前述のタイマ割込み処理における出力処理(A1306)の詳細について説明する。図56は、第3実施形態に係る出力処理の手順を示すフローチャートである。
なお、遊技制御用プログラムは、メイン処理(図5、図54)に対応するメインプログラムと、タイマ割込み処理に対応する割込み処理プログラムを含む。そして、割込み処理プログラムのサブルーチンであり出力処理に対応する出力処理プログラムは、ROM111bの第1のROM領域(図62)に格納(記憶)される遊技制御用プログラムの一部となる。
遊技制御装置100は、まず、性能表示装置152及び一括表示装置(LED)50のセグメント(a―g、Dp、LEDセグメント0-7)のデータを出力するポートにオフデータを出力しリセットする(A1501)。本実施形態では、このポートは、ドライバ用ICチップ157に向けてデータを出力可能なシリアルポート173aである。
性能表示装置152のセグメントのオフデータは、図51Aのドライバ用ICチップ157のパラレル出力端子PB0-PB7を介して、性能表示装置152のセグメント線(a―g、Dp)に出力される。一括表示装置(LED)50のセグメントのオフデータは、ドライバ用ICチップ157のパラレル出力端子PA0-PA7を介して、一括表示装置(LED)50のセグメント線(LEDセグメント0-7)に出力される。
次に、遊技制御装置100は、デジットカウンタの値に対応するLEDのデジット線の出力データとしてデジット出力データを取得する(A1502)。例えば、デジット出力データは、現時点のデジットカウンタの値0~3に対して、「11100000B」「11010000B」「10110000B」「01110000B」である。次に、取得したデジット線のデジット出力データと外部情報データを合成し(A1503)、合成したデータをデジット・外部情報出力ポートに出力する(A1504)。本実施形態では、デジット・外部情報出力ポートは、シリアルポート173aである。
図51Aのように、デジット出力データは、ドライバ用ICチップ156の共用化されたパラレル出力端子PB4-PB7を介して、一括表示装置50のデジット線(LEDデジット0-3)と性能表示装置152のデジット線(デジット0-3)に出力される。ここでのデジット出力データは、後述のステップA1506でデジットカウンタの値を+1更新する前に選択されていた桁(点灯桁、表示桁)を、セグメントのオフデータで消灯するためのものである。ここでの外部情報データは、ドア信号、扉・枠開放信号、図柄確定回数信号、始動口信号に対応し、ドライバ用ICチップ156のパラレル出力端子PB0-PB3を介して、外部情報端子71等に出力される。
続いて、遊技制御装置100は、外部情報ポートに出力する外部情報の各種出力データを合成し、出力する(A1505)。本実施形態では、外部情報ポートは、シリアルポート173aである。
ここでの外部情報の各種出力データは、図51Aのように、大当り1信号、大当り2信号、大当り3信号、大当り4信号、メイン賞球信号、セキュリティ信号、アウト信号、呼出し信号に対応し、ドライバ用ICチップ156のパラレル出力端子PA0-PA7を介して、外部情報端子71に出力される。
なお、前述のように、ドライバ用ICチップ156,157は、同じチップセレクト信号(SA0)を受信したタイミングで、データをパラレル出力端子(PA0-PA7,PB0-PB7)から同時に出力するため、合わせて合計32ビットのシリアルパラレル変換回路となり、シリアルデータ信号(TXA)を32ビットのパラレルデータに変換することになる。
このため、一括表示装置(LED)50及び性能表示装置152のセグメントのオフデータ、デジット出力データ、外部情報データ(始動口信号、図柄確定回数信号、扉・枠開放信号、ドア信号、呼出し信号、アウト信号、セキュリティ信号、メイン賞球信号、大当り4信号、大当り3信号、大当り2信号、大当り1信号)は、連続して、シリアルポート173aから32ビットのシリアルデータ信号(TXA)として出力される。従って、ステップA1501-A1505(後述するステップA1508-A1514についても同様)は、連続する纏まった処理になる。
その後、遊技制御装置100は、一括表示装置(LED)50及び性能表示装置152のデジット線(LEDデジット0-3、デジット0-3)を順次スキャンするためのデジットカウンタの値を0~3の範囲で+1更新する(A1506)。なお、「3」である場合には+1更新によって更新後の値は「0」になる。
なお、前述のように、一括表示装置50のデジット線(LEDデジット0-3)と性能表示装置152のデジット線(デジット0-3)は、ドライバ用ICチップ156の共用化されたパラレル出力端子PB4-PB7からの共通の駆動信号によって駆動される。そして、デジットカウンタの値が0桁を示す0の場合にLEDデジット0とデジット0が、デジットカウンタの値が1桁を示す1の場合にLEDデジット1とデジット1が、デジットカウンタの値が2桁を示す2の場合にLEDデジット2とデジット2が、デジットカウンタの値が3桁を示す3の場合にLEDデジット3とデジット3が、セグメント線から電流を引き抜く電圧(接地電位)を出力する。従って、デジットカウンタの値を更新することによって、一括表示装置(LED)50の8セグメントのLED(一桁に対応付けられる8個のLED)と性能表示装置152の桁が、共に順次選択される。そして、ダイナミック駆動方式(ダイナミック点灯方式)で、順次選択された桁(点灯桁、表示桁)のLEDが通電されて点灯する。
次に、遊技制御装置100は、初期表示設定フラグがオンであるか否かを判定する(A1507)。初期表示設定フラグがオンである場合に(A1507の結果が「Y」)、ステップA1515の処理に移行する。一方、初期表示設定フラグがオフである場合に(A1507の結果が「N」)、性能表示出力処理として、性能表示装置152の更新後のデジットカウンタに対応する桁の出力データ(表示データ)を、0桁目~3桁目出力データ領域の対応するいずれか一つからロードして桁出力ポートに出力し(A1508)、ステップA1509の処理に移行する。
即ち、デジットカウンタが0であれば0桁目出力データ領域から出力データをロードし、デジットカウンタが1であれば1桁目出力データ領域から出力データをロードし、デジットカウンタが2であれば2桁目出力データ領域から出力データをロードし、デジットカウンタが3であれば3桁目出力データ領域から出力データをロードし、桁出力ポートに出力する。これにより、性能表示装置152の0桁~3桁(デジット0~3)に、デジットカウンタの更新によって表示データが高速で順次表示されて性能情報の性能表示が行える。
なお、性能表示の0桁目~3桁目出力データ領域は、RAM111cの第2のRAM領域内(図63)の領域外用作業領域にある。なお、0桁目~3桁目出力データ領域をまとめて性能表示データ領域と呼ぶ。
本実施形態では、桁出力ポートは、シリアルポート173aである。桁の出力データは、1つの桁の全セグメントのオン/オフデータであり、ドライバ用ICチップ157のパラレル出力端子PB0-PB7を介して、性能表示装置152のセグメント線(a―g、Dp)に出力される。例えば、桁の出力データ(Dp,g,f,e,d,c,b,a)は、この桁に「0」の数値を表示するには、「00111111B」(1はオン、0はオフ)となり、「3」の数値を表示するには、「01001111B」となる。
次に、遊技制御装置100は、更新後のデジットカウンタの値に対応するセグメント領域から、一括表示装置(LED)50のセグメント線(LEDセグメント0-7)の出力データをロードし(A1509)、ロードしたデータをセグメント出力用のポートに出力する(A1510)。セグメント領域は、RAM111cの遊技制御用作業領域にある(図63参照)。本実施形態では、セグメント出力用のポートは、シリアルポート173aである。
続いて、遊技制御装置100は、A1502-A1504と同様に、更新後のデジットカウンタの値に対応するLEDのデジット線の出力データとしてデジット出力データを取得し(A1511)、取得したデジット線のデジット出力データと外部情報データを合成し(A1512)、合成したデータをデジット・外部情報出力ポートに出力する(A1513)。本実施形態では、デジット・外部情報出力ポートは、シリアルポート173aである。例えば、デジット出力データは、A1506で更新後のデジットカウンタの値0~3の各々に対して、「11100000B」「11010000B」「10110000B」「01110000B」である。
次に、遊技制御装置100は、A1505と同様に、外部情報ポートに出力する外部情報の各種出力データを合成し、出力する(A1514)。本実施形態では、外部情報ポートは、シリアルポート173aである。
その後、遊技制御装置100は、ソレノイド信号出力ポートに出力するソレノイド駆動信号データを合成する(A1515)。ここで、各ソレノイド駆動信号データは、図51Bのソレノイドドライバ用のICチップ138a-1のパラレル出力端子QA-QCを介して出力される大入賞口ソレノイド駆動信号、レバーソレノイド駆動信号、普電ソレノイド駆動信号のデータである。
続いて、遊技制御装置100は、さらに、合成したデータと発射許可の出力データを合成し(A1516)、最終的に合成したデータをソレノイド信号・発射許可信号出力ポートに出力する(A1517)。本実施形態では、ソレノイド信号・発射許可信号出力ポート(ソレノイド信号出力ポート及び発射許可信号出力ポート)は、ドライバ138a-1に向けてデータを出力可能なシリアルポート173aである。
その後、遊技制御装置100は、後述のフラグレジスタ1200(図64参照)の情報(値)をRAM111cのスタック領域に退避(PUSH)する(A1518)。本実施形態において、ここでのスタック領域は、後述の遊技制御用スタック領域である。
次に、遊技制御装置100は、試射試験信号出力処理を実行する(A1519)。試射試験信号出力処理では、試射試験装置への試射試験信号を出力する中継基板70上の各試験端子出力ポートに向けて送信するデータをロードして合成し、試験信号出力ポートに合成したデータを出力する。中継基板70上の各試験端子出力ポートは、図53の各シリアルパラレル変換ICチップ192a-192jである。本実施形態では、試験信号出力ポートは、中継基板70ひいてはシリアルパラレル変換回路192に向けてデータを出力可能なシリアルポート173bであり、シリアルポート173aではない。即ち、試射試験信号出力処理で使用される出力ポートであるシリアルポート173b(第2シリアルポート)は、A1501、A1504、A1505、A1508、A1510、A1513、A1514、A1517の処理で使用される出力ポートであるシリアルポート173a(第1シリアルポート)とは異なる。
このように、中継基板70(中継手段)へ送信する試射試験信号(シリアルデータ信号)を、シリアルポート173aと異なるシリアルポート173bから出力する。このため、試射試験に関する部品(例えば、前述のようにバッファ133やコネクタ部160)が量産時(試射試験の際以外)に未実装となったとしても、シリアルポート173aにドライバ138a-138d、150(駆動手段)を介して接続される外部情報端子71、一括表示装置50、ソレノイド39b、37c、86b、性能表示装置152等の制御に影響を与えることがない。
その後、遊技制御装置100は、退避していたフラグレジスタ1200の情報をRAM111cのスタック領域から復帰(POP)する(A1520)。
〔試射試験信号出力処理〕
次に、前述の出力処理における試射試験信号出力処理(A1519)の詳細について説明する。図57は、試射試験信号出力処理の手順を示すフローチャートである。なお、試射試験信号出力処理に対応する試射試験信号出力プログラムは、出力処理プログラムから呼び出し命令(CALL命令)によって呼び出されるサブルーチンである。試射試験信号出力プログラム自体は、ROM111bの第2のROM領域(図62)に格納(記憶)され、ROM111bの第1のROM領域に格納(記憶)されない。
遊技制御装置100は、まず、スタックポインタをスタックポインタ格納領域(図63)にセーブする(A1701)。スタックポインタ格納領域は、RAM111cの第2のRAM領域内(図63)に設けられる領域外用作業領域(第2ワークエリア)内の最後尾のアドレスにあり、そのアドレスよりも後のアドレスの領域を領域外用スタック領域として切り分ける。その後、スタックポインタに、領域外用の初期値、即ち、領域外用スタック領域(図63)の先頭アドレスを設定する(A1702)。
そして、遊技制御装置100は、CPU111aの全レジスタの情報(値)を領域外用スタック領域(図63)に退避(PUSH)する(A1703)。ここで全レジスタとは、レジスタバンク0の汎用レジスタ(WA,BC,DE,HL,IX,IY)とレジスタバンク1の汎用レジスタ(WA,BC,DE,HL,IX,IY)(図64参照)である。
このように、以下のステップA1704-A1709において試射試験信号のデータを出力する前に、CPU111a(演算処理手段)が備えるレジスタの情報(値)を、RAM111c(更新情報記憶手段)のスタック領域に退避させる。CPU111aのレジスタは、試射試験信号のデータの出力中に中継基板70や試射試験装置などの遊技機外部の装置からノイズ等によって影響を受ける可能性があるが、レジスタの情報をスタック領域に退避させて保護しておく。なお、性能情報の表示データを出力する性能表示出力処理(A1508)など、遊技機外部の装置とは関連しない出力の処理の前には、レジスタの情報を保護する必要はなく、CPU111aのレジスタの情報(値)をスタック領域に退避させず、退避させるデータの容量を少なくできる。
次に、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート1に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173bに合成したデータを出力する(A1704)。試験端子出力ポート1は、中継基板70の8ビットシリアルパラレル変換ICチップ192fに対応する。試験端子出力ポート1から試射試験装置へ出力される試射試験信号は、普図変動表示ゲームの停止図柄番号を示す図柄1信号だけである。なお、ロードされる各試射試験信号のデータは、RAM111cの第1のRAM領域内(図63)にある試験信号出力データ領域に記憶、設定されている。
次に、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート2に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173bに合成したデータを出力する(A1705)。試験端子出力ポート2は、中継基板70の8ビットシリアルパラレル変換ICチップ192eに対応する。試験端子出力ポート2から試射試験装置へ出力される試射試験信号は、特図2変動表示ゲームの停止図柄番号に対応する図柄3信号と、特図2変動中信号であり、これら信号が合成される。なお、図柄3信号と特図2変動中信号は、8ビットのデータ中で異なるビットで定義され干渉しない。
続いて、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート3に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173bに合成したデータを出力する(A1706)。試験端子出力ポート3は、中継基板70の8ビットシリアルパラレル変換ICチップ192dに対応する。試験端子出力ポート3から試射試験装置へ出力される試射試験信号は、特図1変動表示ゲームの停止図柄番号に対応する図柄2信号と、特図1変動中信号であり、これら信号が合成される。なお、図柄2信号と特図1変動中信号は、8ビットのデータ中で異なるビットで定義され干渉しない。
その後、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート4に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173bに合成したデータを出力する(A1707)。試験端子出力ポート4は、中継基板70の8ビットシリアルパラレル変換ICチップ192cに対応する。試験端子出力ポート4から試射試験装置へ出力される試射試験信号は、普図1変動中信号と、普通図柄1高確率状態信号(普1高確)と、特図1の時短を示す特別図柄1変動時間短縮状態信号と、特図2の時短を示す特別図柄2変動時間短縮状態信号とであり、これら信号が合成される。なお、これら信号は、8ビットのデータ中で異なるビットで定義され干渉しない。
次に、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート5に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173bに合成したデータを出力する(A1708)。試験端子出力ポート5は、中継基板70の8ビットシリアルパラレル変換ICチップ192bに対応する。試験端子出力ポート5から試射試験装置へ出力される試射試験信号は、普図の当りの開始に関する普1当り信号と、普通変動入賞装置37の作動開始に関する普通電動役物1作動中信号と、特図1の小当りの開始に関する特1小当り信号(特図1の小当りが存在する場合)と、特図1の大当りの開始に関する特1当り信号と、特図2の小当りの開始に関する特2小当り信号(特図2の小当りが存在する場合)と、特図2の大当りの開始に関する特2当り信号と、特別変動入賞装置39の大入賞口の開放開始に関する信号(特別電動役物1作動中信号)と、他の特別変動入賞装置(特別変動入賞装置39以外に存在する場合)の大入賞口の開放開始に関する信号(特別電動役物2作動中信号)とであり、これら信号が合成される。なお、これら信号は、8ビットのデータ中で異なるビットで定義され干渉しない。
続いて、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート6に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173aに合成したデータを出力する(A1709)。試験端子出力ポート6は、中継基板70の8ビットシリアルパラレル変換ICチップ192aに対応する。試験端子出力ポート6から試射試験装置へ出力される試射試験信号は、右打ち指示又は左打ち指示のいずれかを示す信号(発射位置指定信号1)と、遊技機10のエラーの発生を示す遊技機エラー状態信号と、条件1有効信号と、役物1有効信号と、V入賞の発生を示す条件装置作動中信号と、特別変動入賞装置が連続して作動すること(役物連続作動)を示す役物作動中信号とであり、これら信号が合成される。なお、これら信号は、8ビットのデータ中で異なるビットで定義され干渉しない。
なお、ステップA1709の終了時において、中継基板70のシリアルパラレル変換回路192に対して、チップセレクト信号SB01,SB02、イネーブル信号OE1,OE2が並列的に同時に入力する。このため、シリアルパラレル変換回路192の8ビットシリアルパラレル変換ICチップ192f-192aは、同時に試射試験信号(パラレルデータ信号)を出力する。なお、使用されない8ビットシリアルパラレル変換ICチップ192g-192jには、試射試験信号(シリアルデータ信号)が送信されないため、各8ビットシリアルパラレル変換ICチップ192g-192jからは、ゼロの8ビットデータ「00000000B」がパラレルデータ信号として出力される。
次に、遊技制御装置100は、CPU111aの全レジスタの情報(値)を領域外用スタック領域(図63)から復帰(POP)する(A1710)。そして、スタックポインタ格納領域(図63)の値をスタックポインタにロードし(A1711)、出力処理を終了する。
なお、A1704-A1709の各ステップにおいて、遊技制御装置100は、試射試験装置への試射試験信号を出力する試験端子出力ポート1~6(8ビットシリアルパラレル変換ICチップ192f-192a)の各々に送信するデータをロードして合成し、試験信号出力ポートとしてのシリアルポート173aに合成したデータを出力する。なお、8ビットシリアルパラレル変換ICチップ192g-192jも使用する場合には、試験端子出力ポート7~10(8ビットシリアルパラレル変換ICチップ192j-192g)の各々に送信するデータをロードして合成し、シリアルポート173aに合成したデータを出力する。
〔性能表示モニタ制御処理(性能表示設定処理)〕
次に、前述のタイマ割込み処理における性能表示モニタ制御処理(性能表示設定処理)(A1320)の詳細について説明する。図58は、性能表示モニタ制御処理の手順を示すフローチャートである。
なお、性能表示モニタ制御処理に対応する性能表示モニタ制御プログラム(性能表示設定プログラム)は、割込み処理プログラムから呼び出し命令(CALL命令)によって呼び出されるサブルーチンである。性能表示モニタ制御プログラム自体は、そのサブルーチン(A1904、A1905、A1907等の処理のプログラム)も含めて、ROM111bの第2のROM領域(図62)に格納(記憶)され、ROM111bの第1のROM領域に格納(記憶)されない。
遊技制御装置100は、まず、スタックポインタをスタックポインタ格納領域(図63)にセーブする(A1901)。スタックポインタ格納領域は、RAM111cの第2のRAM領域内(図63)に設けられる領域外用作業領域(第2ワークエリア)内の最後尾のアドレスにあり、そのアドレスよりも後のアドレスの領域を領域外用スタック領域(性能表示用スタック領域等)として切り分ける。その後、スタックポインタに、性能表示制御用の初期値、即ち、領域外用スタック領域(性能表示用スタック領域等)(図63)の先頭アドレスを設定する(A1902)。
次に、遊技制御装置100は、CPU111aの全レジスタの情報(値)を領域外用スタック領域(図63)に退避(PUSH)する。ここで全レジスタとは、レジスタバンク0の汎用レジスタ(WA,BC,DE,HL,IX,IY)とレジスタバンク1の汎用レジスタ(WA,BC,DE,HL,IX,IY)(図64参照)である(A1903)。A1901-A1903の処理は、A1701-A1703と同様の処理である。
その後、遊技制御装置100は、RAM111cの第2のRAM領域内(図63)にある領域外用作業領域(第2ワークエリア)をチェック(検査)する第2ワークRAMチェック処理を実行する(A1904)。第2ワークRAMチェック処理では、領域外用作業領域(第2ワークエリア)のチェックを行い、異常があれば領域外用作業領域の制御用領域を0クリアし、0以外の初期値が必要な領域に初期値を設定する。なお、スタックポインタ格納領域と領域外用スタック領域はクリアしない。
続いて、遊技制御装置100は、前述の初期表示に関する制御を実行する初期表示タイマ更新処理(図59)を実行する(A1905)。
その後、遊技制御装置100は、RAM111cの第1のRAM領域内(図63)にある遊技制御用作業領域(第1ワークエリア)のスイッチ検出情報(SW検出情報)を、第2のRAM領域内にある領域外用作業領域(第2ワークエリア)にコピーする処理を実行する(A1906)。この処理において、入力ポート122,123,124,126の信号に検出状態(オン状態)への変化のあったスイッチのスイッチ検出情報(立上がりエッジ)をコピーする。
コピーの際、ベース値(通常遊技状態における出玉率)の算出に関係のないスイッチのスイッチ検出情報は消去する。ベース値の算出に関係のないスイッチは、基本的に検出があっても賞球のないスイッチ又はセンサ(ゲートスイッチ34a、電波センサ62、前面枠開放検出スイッチ64など)であるが、アウト球検出スイッチ74はベース値の算出に関係するため除かれる。即ち、本実施形態では、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39a、アウト球検出スイッチ74のうち、検出状態(オン状態)への変化のあったスイッチのスイッチ検出情報(立上がりエッジ)をコピーする。
上記のコピーによって、性能表示の表示内容の更新に関する処理(性能表示モニタ制御処理の表示内容更新処理、性能表示モニタ集計処理)において、第2のRAM領域内にある領域外用作業領域(第2ワークエリア)のみにアクセスすれば良いので、性能表示に関するプログラム(後述の性能表示モニタ制御プログラム、性能表示モニタ集計プログラム)を作成し易くなるとともに、理解し易くなる。
次に、遊技制御装置100は、表示内容更新処理を実行する(A1907)。表示内容更新処理では、性能表示装置152に表示する表示態様を管理し、性能表示モニタ集計処理(性能表示編集処理、メイン処理のA1052)で計算等した性能情報(本実施形態ではベース値)に基づいて、性能表示装置152の桁の出力データ(表示データ)を0桁目~3桁目出力データ領域に設定する。0桁目~3桁目出力データ領域は、RAM111cの第2のRAM領域内(図63)に設けられる領域外用作業領域(第2ワークエリア)内にある。
続いて、遊技制御装置100は、CPU111aの全レジスタの情報(値)を領域外用スタック領域(図63)から復帰(POP)する(A1908)。そして、スタックポインタ格納領域(図63)の値をスタックポインタにロードし(A1909)、性能表示モニタ制御処理を終了する。
〔初期表示タイマ更新処理〕
次に、前述の性能表示モニタ制御処理(性能表示設定処理)における初期表示タイマ更新処理(A1905)の詳細について説明する。図59は、初期表示タイマ更新処理の手順を示すフローチャートである。
遊技制御装置100は、まず、初期表示設定フラグがオンであるか否かを判定する(A2001)。初期表示設定フラグがオフの場合に(A2001の結果が「N」)、ステップA2005の処理に進む。
遊技制御装置100は、初期表示設定フラグがオンの場合に(A2001の結果が「Y」)、初期表示タイマ領域にタイマ初期値(例えば約5000msに相当)をセーブし(A2002)、点滅制御タイマ領域にタイマ初期値(例えば約300msに相当)をセーブし(A2003)、点滅制御ポインタ領域に初期値をセーブする(A2004)。
なお、初期表示タイマ領域、点滅制御タイマ領域、及び、点滅制御ポインタ領域は、RAM111cの第2のRAM領域内(図63)にある領域外用作業領域(第2ワークエリア)に設けられる。
次に、遊技制御装置100は、初期表示タイマが0であるか否かを判定する(A2005)。初期表示タイマが0でない場合に(A2005の結果が「N」)、初期表示タイマを-1更新する(A2006)。初期表示タイマが0である場合に(A2005の結果が「Y」)、即ち、初期表示タイマがタイムアップした又は既にタイムアップしていた場合には、初期表示タイマ更新処理を終了する。
なお、前述の表示内容更新処理(A1907)において、点滅制御タイマ領域の点滅制御タイマは更新されて点滅制御タイマがタイプアップした場合に、点滅制御ポインタ領域の点滅制御ポインタが更新される。点滅制御ポインタは、点灯状態のデータと消灯状態のデータを交互に示す。これにより、遊技機10の電源投入直後に、性能表示装置152の各桁の全セグメント(全LED、全発光部材)の点滅によって、初期表示が所定期間(例えば約5000ms)だけ実行される。点滅周期は、点滅制御タイマ領域のタイマ初期値の2倍(例えば約300ms×2)であり、点滅の繰り返し回数は、5000/600≒8回である。このような、初期表示によって、電源投入の際に、性能表示装置152の各桁の全セグメントが正常に動作するか否かを確認することができる。
〔性能表示モニタ集計処理(性能表示編集処理)〕
次に、前述のメイン処理(図54)における性能表示編集処理(A1052)の一例として、性能表示モニタ集計処理について説明する。図60は、性能表示モニタ集計処理(性能表示編集処理)の手順を示すフローチャートである。
なお、性能表示モニタ集計処理に対応する性能表示モニタ集計プログラム(性能表示編集プログラム)は、メインプログラムから呼び出し命令(CALL命令)によって呼び出されるサブルーチンである。性能表示モニタ集計プログラム自体は、そのサブルーチン(A2204、A2209等の処理のプログラム)も含めて、ROM111bの第2のROM領域(図62)に格納(記憶)され、ROM111bの第1のROM領域に格納(記憶)されない。
遊技制御装置100は、A1901-A1904と同様に、まず、スタックポインタをスタックポインタ格納領域にセーブし(A2201)、その後、スタックポインタに、性能表示制御用の初期値、即ち、領域外用スタック領域(性能表示用スタック領域等)の先頭アドレスを設定し(A2202)、CPU111aの全レジスタの情報(値)を領域外用スタック領域に退避(PUSH)し(A2203)、RAM111cの第2のRAM領域内にある領域外用作業領域(第2ワークエリア)をチェック(検査)する第2ワークRAMチェック処理を実行する(A2204)。
次に、遊技制御装置100は、現在、管理区間の切り替わりであるか否かを判定する(A2205)。管理区間とは、所定範囲のアウト球数(排出球数)に対して定義される計測区間であり、複数の管理区間が連続して設けられている(図69参照)。ここでのアウト球数は、全遊技状態でのアウト球数である総アウト球数である。全遊技状態は、通常遊技状態の他、通常遊技状態以外の遊技状態(特別遊技状態と特定遊技状態等)も含む。
本実施形態において、ベース値の計測区間である管理区間として、遊技場(遊技店)の開場時(開店時)の電源投入からの総アウト球数Xに対して、区間A(0≦X<300)、区間B(300≦X<60300)、区間C(60300≦X<120300)、区間D(120300≦X<180300)、区間E(180300≦X<240300)、・・・・が設けられる(図69参照)。管理区間の切り替わりは、隣り合う管理区間の境界であり、本実施形態において電源投入からの総アウト球数=300、60300、120300、180300個などである。
区間Aの範囲(幅)は300個であり、それ以外の区間の範囲(幅)は60000個である。従って、各管理区間内における総アウト球数のカウント値を示す総アウトカウントSOUTが、所定値(区間Aでは300、それ以外の区間では60000)に到達すると、隣の管理区間に移行して切り替わる。
そして、遊技制御装置100は、管理区間の切り替わりである場合に(A2205の結果が「Y」)、区間切り替わり時の初期設定を実行して(A2206)、ステップA2210の処理に移行する。区間切り替わり時の初期設定として、総アウトカウンタSOUT、通常アウトカウンタTOUT、及び、通常賞球数カウンタNSHOをクリアし、各管理区間の最終ベース値(又は最新ベース値)を隣の管理区間のベース値格納領域にシフト(移動)する。なお、現在の管理区間と1,2,3回前の管理区間の最終ベース値(又は最新ベース値)は、第2のRAM領域内の領域外用作業領域におけるベース値格納領域0~3に記憶される。
ここで、総アウトカウンタSOUTが、各管理区間内において全遊技状態でのアウト球数をカウント(計数)したカウント値を示すのに対して、通常アウトカウンタTOUTは、各管理区間内において通常遊技状態でのアウト球数(排出球数)をカウントしたカウント値を示す。通常賞球数カウンタNSHOは、各管理区間内において通常遊技状態での全賞球数(獲得球数)をカウントしたカウント値を示す。
本実施形態において、アウト球は、遊技領域32から排出された遊技球、即ち、遊技領域32に発射されて遊技を終えた遊技球であり、アウト球検出スイッチ74によって検出される。そして、遊技制御装置100は、アウト球検出スイッチ74からの検出の入力があった場合に、後述のように、総アウトカウンタSOUTと通常アウトカウンタTOUTのカウンタ値を+1更新する(1だけ加算する)。
一方、遊技制御装置100は、管理区間の切り替わりでない場合に(A2205の結果が「N」)、監視対象のスイッチの何れかに検出(入力)があったか否かを判定する(A2207)。本実施形態において、監視対象のスイッチは、検出によって賞球が発生する各入賞スイッチ、及び、アウト球検出スイッチ74である。本実施形態では、入賞スイッチは、始動口1スイッチ36a、始動口2スイッチ37a、入賞口スイッチ35a、大入賞口スイッチ39aである。
そして、遊技制御装置100は、監視対象のスイッチの何れにも検出(入力)がなかった場合に(A2207の結果が「N」)、ベース値を算出するための除算処理を行う除算タスク処理を実行する(A2208)。除算タスク処理では、通常遊技状態における出玉率であるベース値として、(通常賞球数カウンタNSHOのカウンタ値)÷(通常アウトカウンタTOUTのカウンタ値)×100(%)を算出する。なお、この算出において、小数点第1位は四捨五入される。
一方、遊技制御装置100は、監視対象のスイッチの何れかに検出(入力)があった場合に(A2207の結果が「Y」)、監視対象のスイッチの検出(スイッチからの入力)に対応する種々の処理を行う賞球加算判定処理を実行する(A2209)。
賞球加算判定処理において、いずれかの入賞スイッチに検出があった場合には、遊技制御装置100は、当該入賞スイッチの検出に対応して払い出される賞球数を通常賞球数カウンタNSHOのカウント値に加算する。例えば、始動入賞口36(始動口1スイッチ36a)、普通変動入賞装置37(始動口2スイッチ37a)、一般入賞口35(入賞口スイッチ35a)、特別変動入賞装置39(大入賞口スイッチ39a)の各々に対して、賞球数は、4個、1個、3個、10個である。
また、賞球加算判定処理において、アウト球検出スイッチ74に検出があった場合には、遊技制御装置100は、総アウトカウンタSOUTと通常アウトカウンタTOUTのカウンタ値を+1更新する(1だけ加算する)。
なお、賞球加算判定処理において、遊技制御装置100は、ベース値を計算する上で、検出(入力)が有効な期間か否かを判定する。検出が有効な期間以外では、監視対象のスイッチに検出があっても、遊技制御装置100はこの検出を無効にする。なお、有効な期間は、出玉率がベース値(通常ベースとも呼ばれる)と扱われる期間、即ち、通常遊技状態の期間である。また、入賞口スイッチ/状態監視処理(図55のA1310)などにおいて、特別変動入賞装置39への大入賞口不正又は普通変動入賞装置37への普電不正が検知された場合には、遊技制御装置100は、対象スイッチである大入賞口スイッチ39a又は始動口2スイッチ37aの検出は無効とする。
さらに、賞球加算判定処理では、1回の処理で、1スイッチ分の検出に対応する処理が行われる。そして、検出に対応する処理を行ったスイッチの検出情報(入力情報)はクリアされる。従って、極短期間に監視対象の複数のスイッチに検出(入力)があった場合には、先の1スイッチ分の検出に対応する処理が行われ当該スイッチの検出情報はクリアされることになるが、後の1スイッチ分の検出に対応する処理は次回の賞球加算判定処理(次回の性能表示モニタ集計処理内)で行われ、それまで当該スイッチの検出情報は維持されることになる。このようにして、処理されていない検出情報は維持される。
その後、遊技制御装置100は、A1908-A1909と同様に、CPU111aの全レジスタの情報(値)を領域外用スタック領域から復帰(POP)する(A2210)。そして、スタックポインタ格納領域の値をスタックポインタにロードし(A2211)、性能表示モニタ集計処理を終了する。
〔ROMとRAMの記憶領域〕
図61から図63を参照して、遊技制御装置100のROM111bとRAM111cの記憶領域について説明する。図61は、ROM111bとRAM111cの記憶領域の概略を例示する図である。図62は、ROM111bの記憶領域の詳細を例示する図である。図63は、RAM111cの記憶領域の詳細を例示する図である。なお、見易くするため、図61から図63において、各領域の幅は、実際のアドレスの幅に比例せずに描かれている。
遊技制御装置100において、CPU111aは、プログラムによって所定の演算処理を行う演算処理手段を構成し、ROM111bは、プログラムを記憶するプログラム記憶手段を構成し、RAM111cは、演算処理手段によって更新される情報(演算結果等)を記憶可能な更新情報記憶手段を構成する。
図61のように、ROM111b(プログラム記憶手段)は、アドレス8000h~9ADBhの第1のROM領域(第1プログラム記憶領域)と、アドレス9C10h~A1F2hの第2のROM領域(第2プログラム記憶領域)と、第1のROM領域と第2のROM領域の間の未使用領域(アドレス9ADCh~9C0Fh、第1未使用ROM領域)と、を備える。第1のROM領域と第2のROM領域は、アドレス9ADCh~9C0Fhの当該未使用領域を挟むようにアドレス空間(又は、メモリ空間)において位置する。
遊技制御用プログラムの不正な改変を行うと遊技制御用プログラムのサイズが大きくなることもあるが、当該未使用領域(第1未使用ROM領域)の存在により、第1のROM領域の遊技制御用プログラムの不正な改変が難しくなる。なお、全ての未使用領域のアドレスには、制御で使用されることのない所定の数値が格納されてもよい。また、CPU111aは、当該未使用領域(第1未使用ROM領域)が使用されると、リセットするようにしてもよい。
また、第2のROM領域の後にも、アドレスA1F3h~BF1Fhの未使用領域(第2未使用ROM領域)があり、さらにその後に、ハードウェア(HW)パラメータやベクタテーブル等を格納するアドレスBF20h~BFFFhのプログラム管理エリアがある。第2のROM領域とプログラム管理エリアは、アドレスA1F3h~BF1Fhの当該未使用領域を挟むようにアドレス空間において位置する。
RAM111c(更新情報記憶手段)は、アドレス0000h~012Fhの第1のRAM領域(第1情報記憶領域)と、アドレス01B0h~01FFhの第2のRAM領域(第2情報記憶領域)と、第1のRAM領域と第2のRAM領域の間の未使用領域(アドレス0130h~01AFh、第1未使用RAM領域)と、を備える。第1のRAM領域と第2のRAM領域は、アドレス0130h~01AFhの当該未使用領域を挟むようにアドレス空間(又は、メモリ空間)において位置する。また、第2のRAM領域の後にも、アドレス0200h~03FFhの未使用領域(第2未使用RAM領域)がある。
なお、第2のRAM領域の後に未使用領域を設けず、第2のRAM領域の最後のアドレスをRAM111cの最後のアドレスに一致させて、第2のRAM領域をアドレス03B0h~03FFhの領域に設ける構成も可能である。
図62のように、第1のROM領域では、アドレス8000h~8BA8hが遊技制御用プログラムの格納される遊技制御用プログラム領域となり、アドレス8BA9h~8FFFhが未使用領域(第3未使用ROM領域)となり、アドレス9000h~9ADBhが遊技制御用プログラムによって使用される遊技制御用データが格納される遊技制御用データ領域となる。なお、遊技制御用プログラム領域と遊技制御用データ領域の間に未使用領域(第3未使用ROM領域)を設けない構成も可能である。遊技制御用データ領域には、各種のテーブルやデータ等が記憶されている。
第1のROM領域は、遊技制御用プログラムとその遊技制御用データが格納される領域である。なお、遊技制御用プログラムの概念には遊技制御用データを含めてもよい。遊技制御用プログラムは、遊技を制御するためのプログラム(コード又は命令の集まり)である。遊技制御用プログラムは、所定の領域外プログラムを除いて、メイン処理(図5)に対応するメイン処理プログラムとそのサブルーチンのプログラム、タイマ割込み処理に対応する割込み処理プログラムとそのサブルーチンのプログラムを含む。
前述のように、タイマ割込み処理内の各処理(例えば、特図1停止図柄設定処理、特図2停止図柄設定処理、普図普段処理等)において、試射試験信号のデータを設定する試射試験信号設定処理(例えばA3403、A3503、A7916など)が含まれている。このため、遊技制御用プログラムは、試射試験信号設定処理に対応する試射試験信号設定プログラム(試射試験信号設定コード)を含む。試射試験信号設定プログラム(試射試験信号設定コード)の実行によって、CPU111aは、各試射試験信号(前述)のデータを、出力前にRAM111cの第1のRAM領域内にある試験信号出力データ領域に記憶、設定する(図61の#1に対応)。
また、遊技制御用プログラムは、出力処理(図56)の性能表示出力処理(A1508)に対応する性能表示出力プログラム(性能表示出力コード)を含む。従って、性能表示出力プログラムも第1のROM領域内に記憶される。性能表示出力プログラムの実行によって、CPU111aは、遊技機に係る性能情報の表示データであって、第2のRAM領域の0桁目~3桁目出力データ領域に記憶された表示データ(出力データ)を、レジスタにロード(参照、取得)して出力する(図61の#4に対応)。これにより、性能表示装置152の0桁~3桁(デジット0~3)に性能情報の性能表示がなされる。なお、本実施形態で、性能情報はベース値であるが、他の性能情報として役物比率や排出球数(アウト球数)を表示してもよい。
また、遊技制御用プログラムは、確率設定変更/確認処理(図6B)のステップA2410の処理に対応する設定値変更プログラム(設定値変更コード)を含む。従って、設定値変更プログラムも、第1のROM領域内に記憶される。設定値変更プログラムの実行によって、CPU111aは、第1のRAM領域(第1情報記憶領域)の確率設定値領域の確率設定値を更新して、更新後の確率設定値を当該確率設定値領域に記憶、設定する(図61の#1に対応)。
第2のROM領域は、第1のROM領域の遊技制御用プログラム以外の領域外プログラムが格納される領域であり、第1のROM領域の外にある。なお、領域外プログラムの概念には領域外プログラムが使用するデータ(性能表示用データなど)を含めてもよい。領域外プログラムは、性能表示モニタ制御処理に対応する性能表示モニタ制御プログラム(性能表示設定プログラム)とそのサブルーチンのプログラム、性能表示モニタ集計処理に対応する性能表示モニタ集計プログラム(性能表示編集プログラム)とそのサブルーチンのプログラム、及び、試射試験信号出力処理に対応する試射試験信号出力プログラムとそのサブルーチンのプログラムを含む。
性能表示モニタ制御プログラム(性能表示設定プログラム)の実行によって、CPU111aは、性能表示モニタ集計プログラムによって計算された性能情報(ベース値)に基づいて、第2のRAM領域の0桁目~3桁目出力データ領域(性能表示データ領域)に表示データ(出力データ)を記憶、設定する(図61の#3に対応)。
性能表示モニタ集計プログラム(性能表示編集プログラム)の実行によって、CPU111aは、いずれかの入賞スイッチに検出があった場合に入賞スイッチごとの賞球数を加算して通常賞球数カウンタNSHOを更新し、アウト球検出スイッチ74に検出があった場合に通常アウトカウンタTOUTを+1更新して、さらに、通常賞球数カウンタNSHOと通常アウトカウンタTOUTのカウンタ値に基づいて性能情報(ベース値)を計算する。また、性能表示モニタ集計プログラムによって、CPU111aは、アウト球検出スイッチ74に検出があった場合に総アウトカウンタSOUTを+1更新して、総アウトカウンタSOUTのカウンタ値に基づいて各管理区間の切り替わりを管理し、管理区間ごとに通常賞球数カウンタNSHOと通常アウトカウンタTOUTをカウントして性能情報(ベース値)を計算する。
試射試験信号出力プログラムの実行によって、CPU111aは、第1のRAM領域内の試験信号出力データ領域に設定された各試射試験信号のデータを、レジスタにロード(参照、取得)してシリアルデータとしてシリアルポート173bに出力する(図61の#2に対応)。
以上のように、領域外プログラムとして、試射試験信号出力プログラムは、第2のROM領域(第2プログラム記憶領域)に格納されて、第1のROM領域(第1プログラム記憶領域)から未使用領域(第1未使用ROM領域)を介して分離されている。即ち、試射試験信号出力プログラムは、試射試験信号設定プログラムや性能表示出力プログラム等の遊技制御用プログラムが格納される第1のROM領域とは別の場所となる第2のROM領域に置かれる。従って、試射試験信号出力プログラムに相当する部分が分かり易くなり他の遊技機への使い回し(他の遊技機との共用化)ができ、遊技機10で使用されるプログラムの開発効率を向上できる。なお、試射試験信号を出力するだけの処理を行う試射試験信号出力プログラムは、遊技機の機種によらずアルゴリズムが同じであるため、共通に同じものを使用可能であり、異なる機種でも使い回しが容易である。
しかし、入賞口の種類や数、時短状態や確変状態が存在するか否かなどの遊技機の仕様に応じて試射試験信号は遊技機の機種ごとに異なるため、試射試験信号のデータを設定する試射試験信号設定プログラムは、遊技機の機種ごとに異なり、異なる機種間での使い回しが困難である。また、性能情報の表示データと変動表示ゲームの表示データはLED表示器である性能表示装置152及び一括表示装置50の桁ごとに略同時に出力が行われ、出力処理プログラムにおいて、性能情報の表示データを出力する性能表示出力プログラム(A1508に対応)は、変動表示ゲームの表示データを出力するセグメント出力プログラム(A1509、A1510に対応)などと渾然一体となっており、遊技機の異なる機種間での使い回しが困難である。従って、試射試験信号設定プログラム又は性能表示出力プログラムと、試射試験信号出力プログラムとが、ROM111bの記憶領域において混在すると、使い回しが容易な試射試験信号出力プログラムに相当する部分が分かり難くなり、遊技機の制御プログラムの開発効率が低下する可能性があった。
また、試射試験信号出力プログラムと同様に、性能表示モニタ制御プログラム(性能表示設定プログラム)と性能表示モニタ集計プログラム(性能表示編集プログラム)も、遊技機の機種によらずアルゴリズムが同じであるため、共通に同じものを使用可能であり、異なる機種でも使い回しが容易である。このため、性能表示モニタ制御プログラムと性能表示モニタ集計プログラムは、第2のROM領域(第2プログラム記憶領域)に格納されて、第1のROM領域(第1プログラム記憶領域)から未使用領域(第1未使用ROM領域)を介して分離されている。即ち、性能表示モニタ制御プログラムと性能表示モニタ集計プログラムは、試射試験信号設定プログラムや性能表示出力プログラム等の遊技制御用プログラムが格納される第1のROM領域とは別の場所となる第2のROM領域に置かれる。従って、性能表示モニタ制御プログラムと性能表示モニタ集計プログラムに相当する部分が分かり易くなり他の遊技機への使い回し(他の遊技機との共用化)ができ、遊技機10で使用されるプログラムの開発効率を向上できる。
図63のように、第1のRAM領域では、アドレス0000h~00F6hが遊技制御用作業領域(第1ワークエリア)となり、アドレス00F7h~012Fhが遊技制御用スタック領域となる。
遊技制御用作業領域の先頭アドレス(アドレス0000h)には、確率設定値を格納する確率設定値領域があり、続いて、停電検査領域1(アドレス0001h)がある。なお、確率設定値領域のアドレスが、RAM111cの先頭アドレス且つ第1のRAM領域の先頭アドレスであるため、図54のステップA1042とA1043におけるRAMクリア処理(RAM初期化処理)において、確率設定値領域を除いてRAM111c又は第1のRAM領域の少なくとも一部をクリア(初期化)する場合に、確率設定値領域より前の領域をRAMクリア処理(RAM初期化処理)の対象に設定する必要がなくなり、RAMクリア処理(RAM初期化処理)が簡単になる。
また、遊技制御用作業領域の最後から一つ前には停電検査領域2(アドレス00F5h)があり、遊技制御用作業領域の最後にはチェックサムを格納するチェックサム領域(アドレス00F6h)がある。
また、第1のRAM領域の停電検査領域1と停電検査領域2の間には、確率設定モードフラグ領域(アドレス0002h)、通常ベース状態判定領域(アドレス0004h)、初期表示設定フラグ領域(アドレス0005h)が存在する。確率設定モードフラグ領域には、確率設定変更中フラグ又は確率設定確認中フラグが格納される。通常ベース状態判定領域には、通常遊技状態であれば通常ベース状態情報が設定され、通常遊技状態以外の遊技状態(特別遊技状態、特定遊技状態等)であれば通常ベース状態情報は設定されない。初期表示設定フラグ領域には、初期表示設定フラグが格納される。
その他、第1のRAM領域の停電検査領域1と停電検査領域2の間には、試験信号出力データ領域や変動パターン乱数領域など、遊技制御等に必要な情報を格納する種々の領域が存在する。なお、試験信号出力データ領域は、まとめて設けずに、試射試験信号の種類(図柄1信号、普図1変動中信号、発射位置指定信号1など)に応じた位置に点在してもよい。
図63のように、第2のRAM領域では、アドレス01B0h~01D0hが領域外用作業領域となり、アドレス01D2h~01FFhが領域外用スタック領域となる。領域外用作業領域(第2ワークエリア)は、遊技制御用作業領域(第1ワークエリア)以外の作業領域となり、領域外用スタック領域は、遊技制御用スタック領域以外のスタック領域となる。領域外用スタック領域は、性能表示に関連して使用される性能表示用スタック領域等を含む。
領域外用作業領域において、先頭から順に、通常賞球数カウンタ領域(アドレス01B0h、01B1h)、通常アウトカウンタ領域(アドレス01B2h、01B3h)、総アウトカウンタ領域(アドレス01B4h、01B5h)が設けられる。通常賞球数カウンタ領域、通常アウトカウンタ領域、総アウトカウンタ領域は、各々、通常賞球数カウンタNSHO、通常アウトカウンタTOUT、総アウトカウンタSOUTのカウント値が格納され、2バイトの領域である。これら2バイトのカウンタは、0から65535までカウント(計数)できる。
なお、管理区間の範囲(幅)は総アウトカウントSOUTに対して60000個又は300個であるため、管理区間内で通常アウトカウンタTOUTと総アウトカウンタSOUTはオーバフローしない(最大値65535に到達しない)。また、ベース値は典型的には30(%)であるため、管理区間内で通常賞球数カウンタNSHOもオーバフローしない(最大値65535に到達しない)。即ち、管理区間を設けることによって、2バイトの通常アウトカウンタTOUT、総アウトカウンタSOUT、通常賞球数カウンタNSHOがオーバフローしない(最大値65535に到達しない)ので、正確にベース値等の性能情報を計算できる。
また、領域外用作業領域において、最後には、領域外用作業領域と領域外用スタック領域とを分ける2バイトのスタックポインタ格納領域(アドレス01D0h、01D1h)が設けられる。カウンタ領域とスタックポインタ格納領域との間には、性能表示の0桁目~3桁目出力データ領域(性能表示データ領域)が設けられる。
このように、賞球数又はアウト球数に関連する性能情報に係るデータ(通常アウトカウンタTOUT、総アウトカウンタSOUT、通常賞球数カウンタNSHOのカウンタ値)とその性能表示のデータ(0桁目~3桁目出力データ、桁の出力データ)を、未使用領域によって第1のRAM領域から区別できる第2のRAM領域に記憶することによって、性能情報又は性能表示に関するプログラム(性能表示出力プログラム、性能表示モニタ制御プログラム、性能表示モニタ集計プログラム)の開発が容易になるとともにプログラムが理解し易くなる。
なお、本実施形態において、遊技制御装置100は、電源投入(電源復旧)の際に、所定の条件が成立する場合に第1のRAM領域(第1情報記憶領域)の少なくとも一部(例えば、確率設定値領域以外のRAM領域)を初期化するが、第2のRAM領域(第2情報記憶領域)を初期化しない。ここで所定の条件とは、図54のステップA1040又はA1041の結果が「Y」となることであり、例えば、RAM初期化処理(RAMクリア処理)を実行するために、RAM初期化スイッチ112がオンにされていることである。これにより、遊技場の開場中(開店中)に不正などがあって、RAM初期化スイッチ112をオンして電源投入(電源復旧)しても、性能情報(ベース値)の計算に用いる情報が記憶されるカウンタ領域(アドレス01B0h~01B5h)と性能表示の0桁目~3桁目出力データ領域は、クリアも初期化もされず、性能情報(ベース値)の表示の継続性が維持できる。本実施形態では、性能情報(ベース値)の計算に用いる情報は、少なくとも通常賞球数カウンタNSHOのカウンタ値(賞球数に関する情報)と通常アウトカウンタTOUTのカウンタ値である。
〔CPUの構成〕
図64は、第3実施形態に係る遊技用マイコン111のCPU111aの内部構成を示すブロック図である。第3実施形態においては、CPU111aは、CPUコア102として示されている。CPUコア102はZ80系のCPUとして構成されている。
図64に示すCPUコア102(CPU111a)は、それぞれ8ビットの幅を有する、Wレジスタ1201A、Aレジスタ1202A、Bレジスタ1204A、Cレジスタ1205A、Dレジスタ1207A、Eレジスタ1208A、Hレジスタ1210A、Lレジスタ1211Aを備えている。
これらの汎用レジスタは、Wレジスタ1201AとAレジスタ1202Aとを組み合わせて、16ビットの幅を有するWAレジスタ1203A(ペアレジスタ、レジスタペア)として使用することも可能である。同様に、Bレジスタ1204AとCレジスタ1205Aとを組み合わせたBCレジスタ1206A(ペアレジスタ、レジスタペア)、Dレジスタ1207AとEレジスタ1208Aとを組み合わせたDEレジスタ1209A(ペアレジスタ、レジスタペア)、Hレジスタ1210AとLレジスタ1211Aとを組み合わせたHLレジスタ1212A(ペアレジスタ、レジスタペア)を使用することも可能である。
さらに、CPUコア102(CPU111a)は、それぞれ16ビットの幅を有する、IXレジスタ1231a、IYレジスタ1232aを備えている。IXレジスタ1231a、IYレジスタ1232aは、命令解釈実行回路1242がデータにアクセスする際のインデックスとして用いられる。また、IYレジスタ1232aは、アドレス空間(又は、メモリ空間)におけるRAM111c(更新情報記憶手段)の先頭アドレスを設定するための先頭アドレス指定レジスタとして使用できる。
なお、これらの汎用レジスタは、1つの汎用レジスタ群(レジスタバンク0のレジスタ群)1220Aを形成している。一方、CPUコア102は、レジスタバンク0のレジスタ群1220Aに含まれる汎用レジスタと同一(又は同様)の構成を有する、もう1つの汎用レジスタ群(レジスタバンク1のレジスタ群)1220Bを備えている。
このレジスタバンク1のレジスタ群1220Bには、レジスタバンク0のWレジスタ1201A~Lレジスタ1211Aと同一の機能を有する、Wレジスタ1201B~Lレジスタ1211Bを備えている。これらのレジスタも、レジスタバンク0同様に、WAレジスタ1203B~HLレジスタ1212Bとして、16ビットのレジスタとして使用することが可能である。また、レジスタバンク1のレジスタ群1220Bには、IXレジスタ1231a、IYレジスタ1232aと同一の機能を有する、IXレジスタ1231b、IYレジスタ1232bを備えている。
さらに、CPUコア102は、8ビットの幅を有するフラグレジスタ1200を備えている。
フラグレジスタ1200は、レジスタを用いた演算結果が格納される。また、フラグレジスタ1200のビットであるレジスタバンクセレクタ(RBS)によって、2つの汎用レジスタ群1220A、1220Bのうちのいずれを、演算対象として用いるかが選択される。
レジスタバンクセレクタ(RBS)により選択されたレジスタ群に属する各レジスタは、命令解釈実行回路1242によって演算に用いられる。一方、選択されていないレジスタ群に属する各レジスタは、レジスタバンクセレクタ(RBS)の値が変更されて選択対象となるまでは、値を保持する。
また、CPUコア102は、DPレジスタ1230を備えている。DPレジスタ1230は、例えば、アドレス空間(又は、メモリ空間)におけるROM111bの遊技制御用データ領域の先頭アドレスを格納するために使用できる。
さらに、CPUコア102は、それぞれ16ビットの幅を有する、スタックポインタとして機能するSPレジスタ1233、及びプログラムカウンタとして機能するPCレジスタ1234を備えている。
スタックポインタ1233は、スタック領域にデータを格納する(又はデータを取り出す)際の領域の位置を示す。プログラムカウンタ1234は、命令解釈実行回路1242で実行されている命令が格納されているアドレスを示している。
命令解釈実行回路1242は、プログラム(遊技制御用プログラム又は領域外プログラム)を実行して、CPUコア102内部の各レジスタを用いた演算処理を行う。具体的には、ROM111bにて、プログラムカウンタ1234に示されるアドレスに記憶されたデータを読み出すとともに、読み出したデータをコードと見なして、コードに対応する命令を実行する。命令解釈実行回路1242は、所定の命令セットに含まれる命令を解釈実行である。
故に、本実施形態においては、CPUコア102(CPU111a)自体を演算処理手段として例示しているが、CPUコア102の内部では、命令解釈実行回路1242が主体となって演算処理手段の機能を果たしている。なお、RAM111cは、演算処理手段(CPU111a、CPUコア102)によって更新される情報が記憶される更新情報記憶手段となるとともに、バックアップ電源によって停電が発生したとしても記憶された情報の記憶保持が可能な保持記憶手段となる。
なお、命令解釈実行回路1242は、プログラムの命令に対応して、アクセス回路1243、アドレスバス721、及びデータバス722を介して、CPUコア102外部のROM111b、RAM111c、及び他の回路との間で、データの授受を行う場合もある。アドレスバス721は、16ビットの信号線によって構成され、CPUコア102は、アドレスバス721に指定したアドレスを出力し、データバス722を介して指定したアドレス(ROM111b、RAM111c等のアドレス)に格納されたデータを入出力する。
また、命令解釈実行回路1242は、ROM111bの命令を1つずつ実行する毎に、次の命令が格納されているアドレスをプログラムカウンタ1234に格納する。このようにして命令の実行と、プログラムカウンタ1234の更新を繰り返すことで、遊技制御プログラムが順次実行される。なお、遊技用マイコン111に設けられている割込制御回路724からの割込信号を受け付けると、プログラムカウンタ1234の値は、予め設定された割込処理のアドレスの値に切り替えられる。
この命令解釈実行回路1242及びCPUコア102に備える各レジスタは、内部バス1235によって、データが授受される。
初期値設定回路1241は、CPUコア102に備える各レジスタに初期値をハード的に設定する回路である。
内蔵リセット回路1240は、遊技用マイコン111に設けられているセキュリティ回路725からのリセット信号を受信すると、初期値設定回路1241を起動させ、CPUコア102に備える各レジスタに初期値を設定させたのちに、命令解釈実行回路1242を起動させる。
〔プログラムリスト〕
図65-図67は、第3実施形態に係る遊技制御装置100のCPU111a(CPUコア102)が実行する出力処理プログラム、性能表示モニタ制御プログラム(性能表示設定プログラム、試射試験信号出力プログラムのプログラム構造を例示するプログラムリストである。図65-図67は、あくまでプログラム構造を一例として示すものであり、適宜、コードの削除や追加など改変可能である。各プログラムリストは、8ビットマイクロプロセッサであるZ80に対応したアセンブリ言語による命令(ソースコード)のリストであり、擬似命令(アセンブラに対する命令)等を除いて、ROM111bに記憶される機械語命令(マシンコード)に1対1に対応する。いずれの命令も機械語命令として命令解釈実行回路1242が解釈実行可能な命令セットに含まれる。
各プログラムリストにおける一行の記載は、左側より、便宜のために付した「行番号」、「ROM111b内のアドレス」、「コードの機械語データ(機械語命令)」、「アセンブリ言語のコード」、説明の便宜のために付した「コメント」からなる。「アセンブリ言語のコード」は、操作内容(演算内容)を示す「ニーモニック」、命令対象の「オペランド」に分けられる。プログラムリストの命令は、サブルーチンを呼び出す命令やジャンプ命令(分岐命令)等がない限り、基本的に行番号の順に(小さなものから大きなものへ)プログラムリストの上から下へ実行される。
〔出力処理プログラム〕
図65A-図65Cは、出力処理プログラムのプログラム構造を示すプログラムリストである。
行番号2924は、サブルーチンとしての出力処理プログラムのラベルを示す。
行番号2931では、IYレジスタの値同士について排他的論理和をとることによって、RAM111cの先頭アドレスとしてIYレジスタの値をクリアして0に設定しておく(コード「XOR IY,IY」)。
行番号2934では、Aレジスタの値同士について排他的論理和をとることによって、性能表示の消灯データとしてAレジスタの値をクリアして0に設定しておく(コード「XOR A,A」)。
行番号2935では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0(即ち、ラベルC_SPIBUFA0に対応する数値の番号の送受信バッファレジスタ)にAレジスタの値0を出力する(コードOUT (C_SPIBUFA0),A)。これにより、性能表示装置152の現在のデジットカウンタに対応する桁が消灯する。
行番号2938では、再度、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0(即ち、ラベルC_SPIBUFA0に対応する数値の番号の送受信バッファレジスタ)にAレジスタの値0を出力する(コードOUT (C_SPIBUFA0),A)。これにより、一括表示装置50の現在のデジットカウンタに対応する桁が消灯する。行番号2934、行番号2935、行番号2938の処理は、出力処理(図56)のステップA1501の処理に対応する。
行番号2941では、テーブルD_DIGTBLの先頭アドレスに対応する数値をHLレジスタにロードする(コードLD HL,D_DIGTBL)。
行番号2942では、デジットカウンタ(アドレスR_DIGCNT+00H)の数値(0~3)をAレジスタにロードする(コードLD A,(IY+R_DIGCNT+00H))。なお、ここでIYレジスタの値は0である。
行番号2943では、サブルーチンV_GET_BYTEを呼び出して、テーブルD_DIGTBLに基づいて、デジットカウンタR_DIGCNTの数値に対応するデジット出力データをAレジスタに取得する(コードCALLV V_GET_BYTE)。行番号2943の処理は、出力処理のステップA1502の処理に対応する。
行番号2945では、2バイトの外部情報データ領域(アドレスR_INFBF2+00H)から外部情報データとしてドア信号、扉・枠開放信号、図柄確定回数信号、始動口信号のデータをHLレジスタにロードする(コードLD HL,(IY+R_INFBF2+00H))。ドア信号、扉・枠開放信号のデータは、Hレジスタにロードされ、図柄確定回数信号、始動口信号のデータは、Lレジスタにロードされる。
行番号2946では、Lレジスタの図柄確定回数信号、始動口信号のデータとAレジスタのデジット出力データを合成して、Aレジスタに格納する(コードOR A,L)。
行番号2947では、さらに、Hレジスタのドア信号、扉・枠開放信号のデータとAレジスタのデータを合成して、Aレジスタに格納する(コードOR A,H)。これにより、Aレジスタにデジット出力データと外部情報データ(ドア信号、扉・枠開放信号、図柄確定回数信号、始動口信号のデータ)が合成される。行番号2945-行番号2947の処理は、出力処理のステップA1503の処理に対応する。
行番号2948では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタの合成データを出力する(コードOUT (C_SPIBUFA0),A)。これにより、デジット出力データと外部情報データの合成データがシリアルポート173aに出力される。行番号2948の処理は、出力処理のA1504の処理に対応する。
行番号2950では、BレジスタにAレジスタの合成データをロードする(コードLD B,A)。Bレジスタの値は、後で、スタック領域に退避される。
行番号2953では、2バイトの外部情報データ領域(アドレスR_INFBF1+00H)から外部情報データとして、メイン賞球信号、セキュリティ信号、アウト信号、呼出し信号のデータをWAレジスタにロードする(コードLD WA,(IY+R_INFBF1+00H))。セキュリティ信号、アウト信号、メイン賞球信号のデータは、Aレジスタにロードされ、呼出し信号のデータは、Wレジスタにロードされる。
行番号2954では、2バイトの外部情報データ領域(アドレスR_INFBF1+02H)から外部情報データとして、大当り1信号、大当り2信号、大当り3信号、大当り4信号のデータをHLレジスタにロードする(コードLD HL,(IY+R_INFBF1+02H))。大当り1信号、大当り4信号は、Lレジスタにロードされ、大当り2信号、大当り3信号は、Hレジスタにロードされる。
行番号2955から行番号2957では、AレジスタとWレジスタとLレジスタとHレジスタの値を合成して、Aレジスタに格納する(コードOR A,W;コードOR A,L;コードOR A,H)。これにより、外部情報の各種出力データ(大当り1信号、大当り2信号、大当り3信号、大当り4信号、メイン賞球信号、セキュリティ信号、アウト信号、呼出し信号のデータ)が合成されてAレジスタに格納される。
行番号2958では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタの合成データを出力する(コードOUT (C_SPIBUFA0),A)。行番号2953から行番号2958の処理は、出力処理のA1505の処理に対応する。
行番号2962では、CレジスタにAレジスタの合成データをロードする(コードLD B,A)。Cレジスタの値は、後で、スタック領域に退避される(コードLD C,A)。
行番号2963では、BCレジスタの値をスタック領域に退避する(コードPUSH BC)。これにより、デジット出力データと外部情報データの合成データと、外部情報の各種出力データの合成データがスタック領域に退避され、後で復帰させて使用可能となる。
行番号2971では、デジットカウンタのアドレスR_DIGCNT+00HをEレジスタにロードする(コードLD E,R_DIGCNT+00H)。
行番号2972では、C_DIG_MAXの値をBレジスタにロードする(コードLD B,C_DIG_MAX)。C_DIG_MAXは、デジットカウンタ上限値である3に1を加えた値であり、本実施形態では4である。
行番号2973では、サブルーチンV_INC_BYTEを呼び出して、デジットカウンタ(アドレスR_DIGCNT+00H)の値をC_DIG_MAXにならない限り+1更新してAレジスタに格納し、デジットカウンタ上限値を超えてC_DIG_MAXになった場合には0をAレジスタに格納する(コードCALLV V_INC_BYTE)。行番号2971から行番号2973の処理は、出力処理のA1506の処理に対応する。
行番号2976では、性能表示データ領域(0桁目~3桁目出力データ領域)の先頭アドレス(R_EDVBF1+00H)をHLレジスタに格納する(コードLD HL,R_EDVBF1+00H)。
行番号2977では、現在Aレジスタに格納されている更新後のデジットカウンタの値をBレジスタにロードする(コードLD B,A)。
行番号2978では、サブルーチンV_GET_BYTEを呼び出して、Aレジスタの値をHLレジスタに加算して得たアドレスに記憶された数値をAレジスタに格納する(コードCALLV V_GET_BYTE)。これにより、更新後のデジットカウンタに対応する桁の出力データ(表示データ)を、0桁目~3桁目出力データ領域の対応する一つからロードして、Aレジスタに格納する。
行番号2986では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタの値(桁の出力データ)を出力する(コードOUT (C_SPIBUFA0),A)。行番号2976から行番号2986の処理は、性能表示出力プログラムとなり、出力処理のA1508の処理に対応する。
行番号2989では、セグメント領域の先頭アドレス(R_SEGBF+00H)をHLレジスタに格納する(コードLD HL,R_SEGBF+00H)。
行番号2990では、現在Bレジスタに格納されている更新後のデジットカウンタの値をAレジスタにロードする(コードLD A,B)。
行番号2991では、サブルーチンV_GET_BYTEを呼び出して、Aレジスタの値をHLレジスタに加算して得たアドレスに記憶された数値をAレジスタに格納する(コードCALLV V_GET_BYTE)。これにより、更新後のデジットカウンタに対応するセグメント領域のデータをAレジスタに格納する。行番号2989から行番号2991の処理は、出力処理のA1509の処理に対応する。
行番号2999では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタのデータを出力する(コードOUT (C_SPIBUFA0),A)。これにより、更新後のデジットカウンタに対応するセグメント領域から、一括表示装置(LED)50のセグメント線(LEDセグメント0-7)の出力データが出力される。行番号2999の処理は、出力処理のA1510の処理に対応する。
行番号3002では、テーブルD_DIGTBLの先頭アドレスに対応する数値をHLレジスタにロードする(コードLD HL,D_DIGTBL)。
行番号3003では、現在Bレジスタに格納されている更新後のデジットカウンタの値をAレジスタにロードする(コードLD A,B)。
行番号3004では、サブルーチンV_GET_BYTEを呼び出して、テーブルD_DIGTBLに基づいて、Aレジスタの値(更新後のデジットカウンタの値)に対応するデジット出力データをAレジスタに取得する(コードCALLV V_GET_BYTE)。行番号3002から行番号3004の処理は、出力処理のA1511の処理に対応する。
行番号3005では、スタック領域に退避していた値をBCレジスタに復帰する(コードPOP BC)。これにより、デジット出力データと外部情報データの合成データがBレジスタに、外部情報の各種出力データの合成データがCレジスタに格納される。
行番号3006では、00001111BでマスクしてBレジスタの上位4ビットの値をゼロにしてBレジスタに格納する(コードAND B,00001111B)。これにより、Bレジスタに外部情報データが取得される。
行番号3007では、Aレジスタの更新後のデジットカウンタの値に対応するデジット出力データと、Bレジスタの外部情報データとを合成して、Aレジスタに格納する(コードOR A,B)。行番号3002から行番号3007の処理は、出力処理のA1512の処理に対応する。
行番号3008では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタの合成データを出力する(コードOUT (C_SPIBUFA0),A)。これにより、デジットカウンタの更新後のデジット出力データと外部情報データの合成データがシリアルポート173aに出力される。行番号3008の処理は、出力処理のA1513の処理に対応する。
行番号3011では、現在Cレジスタに格納されている外部情報の各種出力データの合成データを、Aレジスタに格納する(コードLD A,C)。
行番号3012では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA0にAレジスタの合成データを出力する(コードOUT (C_SPIBUFA0),A)。行番号3011から行番号3012の処理は、出力処理のA1514の処理に対応する。
行番号3019では、Aレジスタの値同士について排他的論理和をとることによって、Aレジスタの値をクリアして0に設定しておく(コードXOR A,A)。
行番号3024では、アドレス(R_FSOLBF+00H)に記憶された普電ソレノイド駆動信号のデータを、現在0の値であるAレジスタに加算して格納する(コードOR A,(IY+R_FSOLBF+00H))。なお、ここでIYレジスタの値は0である。
行番号3025では、Aレジスタの普電ソレノイド駆動信号のデータと、アドレス(R_TSOLBF+00H)に記憶された大入賞口ソレノイド駆動信号のデータを合成して、Aレジスタに格納する(コードOR A,(IY+R_TSOLBF+00H))。
行番号3026では、Aレジスタのデータと、アドレス(R_LSOLBF+00H)に記憶されたレバーソレノイド駆動信号のデータを合成して、Aレジスタに格納する(コードOR A,(IY+R_LSOLBF+00H))。これにより、ソレノイド信号出力ポートに出力するソレノイド駆動信号データが合成される。行番号3019から行番号3026の処理は、出力処理のA1515の処理に対応する。
行番号3027では、Aレジスタの合成データと、発射許可の出力データC_SHOT_OKを合成して、Aレジスタに格納する(コードOR A,C_SHOT_OK)。行番号3027の処理は、出力処理のA1516の処理に対応する。
行番号3030では、シリアルポート173aに対応する送受信バッファレジスタC_SPIBUFA1に、Aレジスタの最終的な合成データを出力する(コードOUT (C_SPIBUFA1),A)。行番号3030の処理は、出力処理のA1517の処理に対応する。
行番号3035では、フラグレジスタ1200の情報(値)を遊技制御用スタック領域に退避する(コードPUSH PSW)。行番号3035の処理は、出力処理のA1518の処理に対応する。
行番号3036では、試射試験信号出力プログラムをサブルーチンP_SOUTPUTとして呼び出す(コードCALL P_SOUTPUT)。行番号3036の処理は、出力処理のA1519の処理に対応する。なお、性能表示出力プログラム等を含む出力処理プログラムは、第1のROM領域に格納されているが、試射試験信号出力プログラム自体は、第2のROM領域に格納されている。
行番号3037では、退避していたフラグレジスタ1200の情報を遊技制御用スタック領域から復帰(POP)する(コードPOP PSW)。行番号3037の処理は、出力処理のA1520の処理に対応する。
行番号3039では、サブルーチンとしての出力処理プログラムを終了して、割込み処理プログラムに戻る(コードRET)。
〔性能表示モニタ制御プログラム(性能表示設定プログラム)〕
図66は、性能表示モニタ制御プログラム(性能表示設定プログラム)のプログラム構造を示すプログラムリストである。性能表示モニタ制御プログラム(性能表示設定プログラム)は、領域外プログラムとして、第2のROM領域に格納されている。
行番号9522では、サブルーチンとしての性能表示モニタ制御プログラムのラベルを示す。(コードP_SHYMT:)。
行番号9532では、アドレス(R_ESTCKPT+00H)のスタックポインタ格納領域にスタックポインタSPの値を格納する(コードLD (R_ESTCKPT+00H),SP)。行番号9532の処理は、性能表示モニタ制御処理のA1901の処理に対応する。
行番号9533では、スタックポインタに、領域外用スタック領域(性能表示用スタック領域等)の先頭アドレスをロードする(コードLD SP,C_S_STKTOP)。行番号9533の処理は、性能表示モニタ制御処理のA1902の処理に対応する。
行番号9534では、レジスタバンクセレクタ(RBS)に0を設定し、レジスタバンク0を選択する(コードLD RBS,0)。
行番号9535では、レジスタバンク0のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域に退避する(コードPUSH WA,BC,DE,HL,IX,IY)。
行番号9536では、レジスタバンクセレクタ(RBS)に1を設定し、レジスタバンク1を選択する(コードLD RBS,1)。
行番号9537では、レジスタバンク1のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域に退避する(コードPUSH WA,BC,DE,HL,IX,IY)。行番号9534から行番号9537の処理は、性能表示モニタ制御処理のA1903の処理に対応する。
行番号9540では、第2ワークRAMチェック処理のサブルーチンP_RWMCCKを呼び出す(コードCALL P_RWMCCK)。行番号9540の処理は、性能表示モニタ制御処理のA1904の処理に対応する。
行番号9541では、初期表示タイマ更新処理のサブルーチンP_INITTM_PRCを呼び出す(コードCALL P_INITTM_PRC)。行番号9541の処理は、性能表示モニタ制御処理のA1905の処理に対応する。
行番号9544では、スイッチ関連のアドレステーブル(D_TBL_SWINF1)の先頭アドレスをHLレジスタにロードする(コードLD HL,D_TBL_SWINF1)。
行番号9546では、ROM111b内の所定アドレス(9C2B)にラベルP_SHYMT_10を割り当てる(コードP_SHYMT_10:)。
行番号9547では、HLレジスタ内のアドレス(最初はスイッチ関連のアドレステーブルの先頭アドレス)に記憶されたアドレス値をDEレジスタにロードする(コードLD DE,(HL+))。「HL+」は、ロード後にHLレジスタ内のアドレスを次のアドレスに更新することを意味する。
行番号9548では、DEレジスタに終了コード0000Hがロードされた場合にラベルP_SHYMT_20の処理に分岐(ジャンプ)する(コードJR Z,P_SHYMT_20)。
行番号9551では、DEレジスタに格納されたアドレス値(例えば005Bh)に記憶された今回のスイッチ検出情報を、Aレジスタにロードする(コードLD A,(DE))。なお、今回のスイッチ検出情報は、第1のRAM領域内の遊技制御用作業領域(第1ワークエリア)に記憶されている。
行番号9552では、現在のHLレジスタ内のアドレスに記憶されたマスク値と、Aレジスタの今回のスイッチ検出情報との論理積をとって、今回のスイッチ検出情報からベース値の算出に関係のないスイッチのスイッチ検出情報は消去する(コードAND A,(HL+))。そして、HLレジスタの値を+1更新する。
行番号9553では、現在のHLレジスタ内のアドレスに記憶されたアドレス値(例えば01CAh)をDEレジスタにロードする(コードLD DE,(HL+))。なお、このアドレス値は、第2のRAM領域内の領域外用作業領域(第2ワークエリア)にあり、前回のスイッチ検出情報が記憶されている。そして、HLレジスタの値を+1更新する。
行番号9554では、DEレジスタに格納されたアドレス値(例えば01CAh)に記憶された前回のスイッチ検出情報と、Aレジスタの今回のスイッチ検出情報の論理和をとって、Aレジスタに格納する(コードOR A,(DE))。なお、前回のスイッチ検出情報は、賞球加算判定処理(A2209)で検出に対応する処理を行ったスイッチの検出情報(ビット)はクリアされているが、検出に対応する処理を行っていないスイッチの検出情報(ビットの値1)は維持されている。従って、Aレジスタには、今回のスイッチ検出情報を含めて未処理のスイッチの検出情報が格納されている。
行番号9555では、Aレジスタの値をDEレジスタに格納されたアドレス値(例えば01CAh)にロードする(コードLD (DE),A)。これにより、遊技制御用作業領域(第1ワークエリア)の今回のスイッチ検出情報は、ベース値の算出に関係のないスイッチのスイッチ検出情報を消去した形で、第2のRAM領域内にある領域外用作業領域(第2ワークエリア、例えばアドレス01CAh)にコピーされる。なお、コピーされた今回のスイッチ検出情報は、次回の性能表示モニタ制御プログラムの実行においては、前回のスイッチ検出情報として取り扱われる。
行番号9556では、ラベルP_SHYMT_10の処理に戻るよう分岐(ジャンプ)する(コードJR P_SHYMT_10)。従って、終了コード0000Hが検出されるまで、行番号9546から行番号9556までの処理が繰り返され、必要なスイッチのスイッチ検出情報が領域外用作業領域にコピーされる。行番号9546から行番号9556までの処理は、性能表示モニタ制御処理のA1906の処理に対応する。
行番号9559では、ROM内の所定アドレス(9C39)にラベルP_SHYMT_10を割り当てる(コードP_SHYMT_20:)
行番号9560では、表示内容更新処理のサブルーチンP_DSPSHMを呼び出す(コードCALL P_DSPSHM)。性能表示装置152の桁の出力データ(表示データ)を0桁目~3桁目出力データ領域に設定する。行番号9560の処理は、性能表示モニタ制御処理のA1907の処理に対応する。
行番号9563では、レジスタバンク1のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域から復帰する(コードPOP WA,BC,DE,HL,IX,IY)。
行番号9564では、レジスタバンクセレクタ(RBS)に0を設定し、レジスタバンク0を選択する(コードLD RBS,0)。
行番号9565では、レジスタバンク0のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域から復帰する(コードPOP WA,BC,DE,HL,IX,IY)。行番号9563から行番号9565の処理は、性能表示モニタ制御処理のA1908の処理に対応する。
行番号9567では、スタックポインタ格納領域の値をスタックポインタにロードする(コードLD SP,(R_ESTCKPT+00H))。行番号9567の処理は、性能表示モニタ制御処理のA1909の処理に対応する。
行番号9569では、サブルーチンとしての性能表示モニタ制御プログラムを終了して、割込み処理プログラムに戻る(コードRET)。
〔性能表示モニタ制御プログラム(性能表示設定プログラム)〕
図67は、試射試験信号出力プログラムのプログラム構造を示すプログラムリストである。試射試験信号出力プログラムは、領域外プログラムとして、第2のROM領域に格納されている。
行番号10538では、サブルーチンとしての試射試験信号出力プログラムのラベルを示す。(コードP_SOUTPUT:)。
行番号10540では、アドレス(R_ESTCKPT+00H)のスタックポインタ格納領域にスタックポインタSPの値を格納する(コードLD (R_ESTCKPT+00H),SP)。行番号10540の処理は、試射試験信号出力処理のA1701の処理に対応する。
行番号10541では、スタックポインタに、領域外用スタック領域(性能表示用スタック領域)の先頭アドレスをロードする(コードLD SP,C_S_STKTOP)。行番号10541の処理は、試射試験信号出力処理のA1702の処理に対応する。
行番号10542では、レジスタバンクセレクタ(RBS)に0を設定し、レジスタバンク0を選択する(コードLD RBS,0)。
行番号10543では、レジスタバンク0のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域に退避する(コードPUSH WA,BC,DE,HL,IX,IY)。
行番号10544では、レジスタバンクセレクタ(RBS)に1を設定し、レジスタバンク1を選択する(コードLD RBS,1)。
行番号10545では、レジスタバンク1のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域に退避する(コードPUSH WA,BC,DE,HL,IX,IY)。行番号10542から行番号10545の処理は、試射試験信号出力処理のA1703の処理に対応する。
行番号10550では、Aレジスタの値同士について排他的論理和をとることによって、試射試験信号の0クリアデータとしてAレジスタの値をクリアして0に設定しておく(コードXOR A,A)。
行番号10551では、シリアルポート173bに対応する送信バッファレジスタC_SPIBUFB(即ち、ラベルC_SPIBUFBに対応する数値の番号の送受信バッファレジスタ)に試射試験信号の0クリアデータを出力する(コードOUT (C_SPIBUFB),A)。
行番号10558では、アドレステーブルD_SKNDAT2の先頭アドレスを、HLレジスタにロードする(コードLD HL,D_SKNDAT2)。アドレステーブルD_SKNDAT2は、各試射試験信号が記憶される試験信号出力データ領域のアドレスを定義する。
行番号10559では、サブルーチンP_SNK_OUTを呼び出して、HLレジスタのアドレス値を所定の回数だけ+1更新しながらそのアドレス値に記憶されたデータを順次合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。ここでは、試験端子出力ポート1に送信するデータを合成して出力する。行番号10559の処理は、試射試験信号出力処理のA1704の処理に対応する。
行番号10560では、サブルーチンP_SNK_OUTを呼び出して、行番号10559と同様に、試験端子出力ポート2に送信するデータを合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。行番号10560の処理は、試射試験信号出力処理のA1705の処理に対応する。
行番号10561では、サブルーチンP_SNK_OUTを呼び出して、行番号10559と同様に、試験端子出力ポート3に送信するデータを合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。行番号10561の処理は、試射試験信号出力処理のA1706の処理に対応する。
行番号10562では、サブルーチンP_SNK_OUTを呼び出して、行番号10559と同様に、試験端子出力ポート4に送信するデータを合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。行番号10562の処理は、試射試験信号出力処理のA1707の処理に対応する。
行番号10563では、サブルーチンP_SNK_OUTを呼び出して、行番号10559と同様に、試験端子出力ポート5に送信するデータを合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。行番号10563の処理は、試射試験信号出力処理のA1708の処理に対応する。
行番号10564では、サブルーチンP_SNK_OUTを呼び出して、行番号10559と同様に、試験端子出力ポート6に送信するデータを合成し、シリアルポート173bに合成したデータを出力する(コードCALL P_SNK_OUT)。行番号10564の処理は、試射試験信号出力処理のA1709の処理に対応する。
行番号10569では、レジスタバンク1のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域から復帰する(コードPOP WA,BC,DE,HL,IX,IY)。
行番号10570では、レジスタバンクセレクタ(RBS)に0を設定し、レジスタバンク0を選択する(コードLD RBS,0)。
行番号10571では、レジスタバンク0のWAレジスタ、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタ、IYレジスタの情報(値)を領域外用スタック領域から復帰する(コードPOP WA,BC,DE,HL,IX,IY)。行番号10569から行番号10571の処理は、試射試験信号出力処理のA1710の処理に対応する。
行番号10573では、スタックポインタ格納領域の値をスタックポインタにロードする(コードLD SP,(R_ESTCKPT+00H))。行番号10573の処理は、試射試験信号出力処理のA1711の処理に対応する。
行番号10575では、サブルーチンとしての試射試験信号出力プログラムを終了して、出力処理プログラム(割込み処理プログラム内)に戻る(コードRET)。
〔ベース値の表示態様〕
図68と図69を参照して、性能表示装置152で性能情報として表示されるベース値の表示態様を説明する。
図68は、前述の性能表示モニタ制御処理(性能表示設定処理)(図58)と性能表示モニタ集計処理(性能表示編集処理)(図60)によって設定され、性能表示出力処理(図56のA1508)によって表示データが出力されて表示されるベース値の表示例を示す図である。
図68のように、ベース値は、5秒(所定期間)ごとに、種類を切り換えて循環的に表示される。例えば、表示されるベース値の種類は、計測中のリアルタイム値(即ち、現在計測中の管理区間の最新ベース値(最終のベース値))→1回前の管理区間全体を通して計測したベース値(即ち、1回前の管理区間の最終ベース値)→2回前の管理区間全体を通して計測したベース値(即ち、2回前の管理区間の最終ベース値)→3回前の管理区間全体を通して計測したベース値(即ち、3回前の管理区間の最終ベース値)→計測中のリアルタイム値→・・・のように、切り換えられる。
なお、前述のように、ベース値の計測中のリアルタイム値は、ベース値格納領域0に記憶される。1,2,3回前の管理区間全体を通して計測したベース値は、ベース値格納領域1,2,3に記憶される。そして、管理区間の切り替わりの際に隣のベース値格納領域にシフト(移動)して記憶される(図60のA2206)。
ここで、桁0と桁1は、ベース値の種類を識別して示す識別セグ(識別用セグメント)に対応する。桁2と桁3は、ベース値を比率(%)として示す比率セグ(比率用セグメント、数値用セグメント)に対応する。電源投入の際に、桁0から桁3において、前述の初期表示(全桁の全セグメントの点滅)を表示する。
なお、識別セグ(桁0と桁1)は、ベース値の計測中のリアルタイム値に対応して、「bL.」と表示し、1回前の管理区間全体を通して計測したベース値に対応して、「b1.」と表示し、2回前の管理区間全体を通して計測したベース値に対応して、「b2.」と表示し、3回前の管理区間全体を通して計測したベース値に対応して、「b3.」と表示する。
なお、比率セグ(桁2と桁3)は、四捨五入後のベース値が100以上の場合には「99.」と表示し、通常アウトカウンタTOUTのカウンタ値が0の場合には「00」と表示する。
図69(A)は、ベース値の計測区間である管理区間を示す。管理区間は、総アウト球数が300個又は60000個増加するごとに、遊技場(遊技店)の開場時(開店時)の電源投入から区間A→区間B→区間C→区間D→区間E→・・・のように、切り替わる。なお、前述のように、不正などがあってRAMクリア(RAM初期化)が実行されても、通常賞球数カウンタNSHO、通常アウトカウンタTOUT、総アウトカウンタSOUTをクリアせず継続してカウントして、各管理区間(区間A~E)が変更を受けないようにするとともに、性能情報(ベース値)が急に変化しないようにしてよい。
図69(B)は、区間A~Eに対して、ベース値の計測中のリアルタイム値(bL.)、及び、1~3回前の管理区間全体を通して計測したベース値(b1.~b3.)の表示態様を説明する図である。
リアルタイム値(bL.)に関して、識別セグ(桁0と桁1)は、区間Aでは「bL.」を点滅させて表示し、区間B以降の区間では、通常アウトカウンタTOUTが0~5999の場合に「bL.」を点滅表示し、通常アウトカウンタが6000以上の場合に「bL.」を点灯表示する。これにより、リアルタイム値が安定しない間は「bL.」を点滅表示することになる。リアルタイム値(bL.)に関して、比率セグ(桁2と桁3)は、区間Aではリアルタイム値を計算(計測)しても「--」と表示し、区間B以降の区間ではそのまま計算したリアルタイム値を表示する。区間Aではリアルタイム値が安定しないため表示しない。
1回前の管理区間全体を通して計測したベース値(b1.)に関して、識別セグ(桁0と桁1)は、区間A、Bでは「b1.」を点滅させて表示し、区間C以降の区間では「b1.」を点灯表示する。ベース値(b1.)に関して、比率セグ(桁2と桁3)は、区間Aと区間Bでは「--」と表示し、区間C~Eでは、それぞれ、区間B~Dの最終ベース値(リアルタイム値の最終値)をそのまま表示する。
2回前の管理区間全体を通して計測したベース値(b2.)に関して、識別セグ(桁0と桁1)は、区間A~Cでは「b2.」を点滅させて表示し、区間D以降の区間では「b2.」を点灯表示する。ベース値(b2.)に関して、比率セグ(桁2と桁3)は、区間A~Cでは「--」と表示し、区間D、Eでは、それぞれ、区間B、Cの最終ベース値(リアルタイム値の最終値)をそのまま表示する。
3回前の管理区間全体を通して計測したベース値(b3.)に関して、識別セグ(桁0と桁1)は、区間A~Dでは「b3.」を点滅させて表示し、区間E以降の区間では「b3.」を点灯表示する。ベース値(b3.)に関して、比率セグ(桁2と桁3)は、区間A~Dでは「--」と表示し、区間Eでは、それぞれ、区間Bの最終ベース値をそのまま表示する。
[第3実施形態の作用・効果]
第3実施形態に係る遊技機10は、ゲーム(変動表示ゲーム)を実行可能な遊技制御手段(例えば遊技制御装置100)を備え、ゲームの結果が特別結果となる場合に、遊技者に有利な特別遊技状態を発生可能である。遊技制御手段は、プログラムを記憶するプログラム記憶手段(例えばROM111b)と、プログラムによって所定の演算処理を行う演算処理手段(例えばCPU111a)と、演算処理手段によって更新される情報が記憶可能な更新情報記憶手段(例えばRAM111c)と、を備える。プログラム記憶手段は、第1プログラム記憶領域(例えば第1のROM領域)と、第2プログラム記憶領域(例えば第2のROM領域)と、第1プログラム記憶領域と第2プログラム記憶領域の間の未使用領域(例えば第1未使用ROM領域)と、を備える。演算処理手段(例えばCPU111a)は、第1プログラム記憶領域内に記憶される試験信号設定プログラムによって、当該遊技機に係る試験信号(例えば試射試験信号)のデータを設定し、第2プログラム記憶領域内に記憶される試験信号出力プログラムによって、試験信号のデータを出力する。
このような遊技機10によると、試験信号出力プログラムは、試験信号設定プログラムが格納される第1プログラム記憶領域(例えば第1のROM領域)とは別の場所と認識可能な第2プログラム記憶領域(例えば第2のROM領域)に置かれる。従って、試験信号出力プログラムに相当する部分が分かり易くなり他の遊技機への使い回し(他の遊技機との共用化)ができ、遊技機10で使用されるプログラムの開発効率を向上できる。
また、第3実施形態に係る遊技機10では、演算処理手段は、試験信号のデータをシリアルデータとして出力する。従って、遊技制御手段(例えば遊技制御装置100)において、配線数(信号数)やコネクタの端子数(ピン数)が減少し、電子部品等を配置するスペース(場所)を十分に確保でき、コスト削減にもつながる。なお、試験信号のデータをパラレルデータとして出力する場合には、送信するデータの種類に応じた配線や端子を設ける必要があるため、配線数(信号数)やコネクタの端子数(ピン数)が大きくなる。
第3実施形態に係る遊技機10において、更新情報記憶手段(例えばRAM111c)は、第1情報記憶領域(例えば第1のRAM領域)と、第2情報記憶領域(例えば第2のRAM領域)と、第1情報記憶領域と第2情報記憶領域の間の未使用領域(例えば第1未使用RAM領域)と、を備える。演算処理手段(例えばCPU111a)は、第1プログラム記憶領域(例えば第1のROM領域)内に記憶される性能表示出力プログラムによって、第2情報記憶領域(例えば第2のRAM領域)に記憶された当該遊技機に係る性能情報の表示データを出力し、第2プログラム記憶領域(例えば第2のROM領域)内に記憶される試験信号出力プログラムによって、第1情報記憶領域(例えば第1のRAM領域)に記憶された当該遊技機に係る試験信号のデータを出力する。
このような遊技機10によると、試験信号出力プログラムに相当する部分が分かり易くなり他の遊技機への使い回し(他の遊技機との共用化)ができ、遊技機10で使用されるプログラムの開発効率を向上できる。また、性能情報の表示データと試験信号のデータが、未使用領域によって区別できる異なる領域(第1情報記憶領域、第2情報記憶領域)に記憶されることによって、これらデータの取り扱いが簡単になり、性能表示出力プログラムと試験信号出力プログラムの開発が簡単になるとともに理解し易くなる。
また、第3実施形態に係る遊技機10において、演算処理手段(例えばCPU111a)は、試験信号のデータを出力する前に、演算処理手段が備えるレジスタの値を、更新情報記憶手段のスタック領域に退避させ、性能情報の表示データを出力する前には、演算処理手段が備えるレジスタの値を、更新情報記憶手段のスタック領域に退避させない。
このような遊技機10によると、演算処理手段(例えばCPU111a)のレジスタは、試射試験信号のデータの出力中に中継基板70や試射試験装置などの遊技機外部の装置から影響を受ける可能性があるが、試験信号のデータを出力する前にレジスタの値をスタック領域に退避させて保護することができる。なお、遊技機外部の装置とは関連しない性能情報の表示データの出力の前には、レジスタの値をスタック領域に退避させず、退避させるデータの容量を少なくできる。
また、第3実施形態に係る遊技機10において、演算処理手段は、性能情報の表示データと試験信号のデータをシリアルデータとして、互いに異なる出力ポートから出力する。このため、試射試験に関する部品が量産時(試射試験の際以外)に未実装となったとしても、性能情報の表示データの出力に影響を与えることがない。
また、第3実施形態に係る遊技機10において、遊技に関する設定に応じた設定値(確率設定値)を変更可能な設定変更手段(例えば設定変更装置42)を備え、演算処理手段は、第1プログラム記憶領域(例えば第1のROM領域)内に記憶される設定値変更プログラムによって、設定値を第1情報記憶領域(例えば第1のRAM領域)に設定する。従って、設定値変更プログラムの実行によって、演算処理手段は、確率設定値領域の確率設定値を更新して、更新後の確率設定値を第1情報記憶領域の確率設定値領域に記憶、設定することができる。
また、第3実施形態に係る遊技機10において、演算処理手段は、電源投入の際に、所定の条件下で第1情報記憶領域の少なくとも一部を初期化するが、第2情報記憶領域を初期化しない。従って、遊技場の開場中(開店中)に不正などがあって、更新情報記憶手段(例えばRAM111c)の初期化が実行されても、第2情報記憶領域はクリアも初期化もされず、性能情報(例えばベース値)の表示データの継続性(連続性)が維持でき、性能情報を確認するものに違和感を与えない。
[第4実施形態]
図70を参照して第4実施形態の遊技機10について説明する。なお、以下で述べる以外の構成は、第1実施形態と同様でよい。また、以下の実施形態では、第1実施形態と同じ機能を果たす構成には同一の符号を用い、重複する記載を適宜省略して説明する。
なお、第4実施形態で示すベース値は、遊技機10の性能値(性能情報)であり、通常遊技状態における出玉率である。また、一般に、ベース値は遊技機ごとに設定値(固定値)が定められている。第4実施形態では、遊技機10の設定値(設計ベース値)を遊技用マイコン111のROM111b(図3)に格納しておく例を示す。また、遊技用マイコン111のCPU111a(図3)は、出玉率の計算(ベース計算)を行うことにより、実射におけるベース値(計測ベース値)を取得する。なお、出玉率は、上述したように、(獲得球数÷排出球数)×100(%)で計算される。
〔ベースエラー報知処理〕
まず、ベースエラー報知処理について説明する。図70は、遊技制御装置100によるベースエラー報知処理の手順を示すフローチャートである。ベースエラー報知処理は、性能表示編集処理(図5BのA1052)の一環として実行されてもよい。或は、タイマ割込み処理(図6A)のステップA1318とA1319の間で実行されてもよい。
図70に示すように、遊技制御装置100は、ベースエラー報知処理を開始すると、まず、アウト球数が規定数以上であるか否かを判定する(A10101)。なお、アウト球数(排出球数)は、アウト球検出スイッチ74(図3)の信号などをカウント(計数)することにより取得できる。また、取得したアウト球数は、アウト球数領域(例えば、遊技用マイコン111のRAM111c(図3)内の領域)に格納される。また、規定数は、60000個である。規定数は、一定でなくてもよく、状況(例えば遊技機10の電源投入からの時間や遊技状態)に応じて変更されてよい。
アウト球数が規定数未満である場合(A10101の結果が「N」)には、アウト球数が規定数以上であるか否かの判定を繰り返し行う(A10101)。一方、アウト球数が規定数以上である場合(A10101の結果が「Y」)には、遊技制御装置100は、遊技用マイコン111のROM111b(図3)に記憶されている設計ベース値を取得する(A10102)。なお、アウト球数を格納するアウト球数領域は、規定数に到達すると(すなわち、A10101の結果が「Y」になると)ゼロクリアされる。
次に、遊技制御装置100は、出玉率の計算(ベース計算)を行うことにより、実射におけるベース値(計測ベース値)を取得する(A10103)。なお、ベース値(計測ベース値)は、性能値(性能情報)として性能表示編集処理において計算されている(A1052)。次に、遊技制御装置100は、取得した計測ベース値と、遊技用マイコン111のROM111b(図3)から取得した設計ベース値との差分(絶対値)を算出する(A10104)。具体的には、(計測ベース値)-(設計ベース値)を計算し、その計算結果の値の絶対値を求める。
次に、遊技制御装置100は、計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の0~10%の範囲内にあるか否かを判定する(A10105)。すなわち、計測ベース値と設計ベース値との差分(絶対値)の、設計ベース値に対する割合を計算する。具体的には、{(計測ベース値と設計ベース値との差分(絶対値))÷(設計ベース値)}×100(%)を計算する。そして、その計算結果が設計ベース値の0~10%の範囲内にあるか否かを判定する。
計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の0~10%の範囲内にある場合(A10105の結果が「Y」)には、ベースエラー報知処理を終了する。このように、計測ベース値と設計ベース値との乖離の程度が微少である場合には、遊技機10に対する不正や遊技機10の故障、または、遊技機10の障害釘の状態が出荷時と異なる、などのおそれも少ないと考えられるため、ベースエラー報知を行わずに、ベースエラー報知処理を終了する。
一方、計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の10%を超えている場合(A10105の結果が「N」)には、遊技制御装置100は、計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の21%以上であるか否かを判定する(A10106)。計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の21%以上である場合(A10106の結果が「Y」)には、遊技制御装置100は、所定のレジスタに強エラーフラグを設定する(A10107)。
このように、強エラーフラグが設定されると、遊技制御装置100は、強エラーを表示させるためのデータを性能表示装置152のドライバ150に出力し、さらに、外部装置(情報収集端末や遊技場内部管理装置(ホールコンピュータ)など)に強エラーを知らせるための強エラー信号のオンデータを外部情報端子71に出力する。
例えば、強エラーフラグが設定されると、外部情報編集処理(図6AのA1319)によって、強エラー信号のオンデータが外部情報出力データ領域にセーブされて外部装置に報知される。例えば遊技店に設置された外部装置(情報収集端末や遊技場内部管理装置(ホールコンピュータ)など)に報知され、その外部装置から、計測ベース値と設計ベース値が大きく異なる旨の強エラー報知情報が音声や画像表示などによって出力される。この強エラー報知情報の出力により、ホール関係者等が遊技機10の不正や故障を速やかに判断することが可能となる。
或は、強エラーフラグが設定されると、性能表示モニタ制御処理(図6AのA1320)によって、強エラーを表示させるためのデータをドライバ150に出力して、強エラーが性能表示装置152において報知(表示)される。このように、性能表示装置152において、計測ベース値と設計ベース値が大きく異なる旨の強エラー報知情報が報知(表示)されることにより、ホール関係者等が遊技機10の不正や故障を速やかに判断することが可能となる。
一方、計測ベース値と設計ベース値との差分(絶対値)が設計ベース値の21%未満(すなわち、10%を超えているが21%未満)である場合(A10106の結果が「N」)には、遊技制御装置100は、所定のレジスタに弱エラーフラグを設定する(A10108)。
このように、弱エラーフラグが設定されると、遊技制御装置100は、弱エラーを表示させるためのデータを性能表示装置152のドライバ150に出力し、さらに、外部装置(情報収集端末や遊技場内部管理装置(ホールコンピュータ)など)に弱エラーを知らせるための弱エラー信号のオンデータを外部情報端子71に出力する。
例えば、弱エラーフラグが設定されると、外部情報編集処理(図6AのA1319)によって、弱エラー信号のオンデータが外部情報出力データ領域にセーブされて外部装置に報知される。例えば遊技店に設置された外部装置(情報収集端末や遊技場内部管理装置(ホールコンピュータ)など)に報知され、その外部装置から、計測ベース値と設計ベース値が軽微に異なる旨の弱エラー報知情報が音声や画像表示などによって出力される。この弱エラー報知情報の出力により、ホール関係者等が遊技機10の不正や故障、または、遊技機10の障害釘の状態が出荷時と異なることなどを速やかに判断することが可能となる。
或は、弱エラーフラグが設定されると、性能表示モニタ制御処理(図6AのA1320)によって、弱エラーを表示させるためのデータをドライバ150に出力して、弱エラーが性能表示装置152において報知(表示)される。このように、性能表示装置152において、計測ベース値と設計ベース値が軽微に異なる旨の弱エラー報知情報が報知(表示)されることにより、ホール関係者等が遊技機10の不正や故障、または、遊技機10の障害釘の状態が出荷時と異なることなどを速やかに判断することが可能となる。
なお、強エラー報知情報と弱エラー報知情報の報知の態様は異なる。例えば、前述のように性能表示装置152が4桁の7セグメント型の表示器である場合において、強エラー報知情報は、4桁を使って目立つように「EEEE」と表示され、弱エラー報知情報は目立たないように「----」のように表示されてよい。また、例えば、外部装置において、強エラー報知情報は、スピーカからの大きな音声やモニタへの大きな画像表示によって報知され、弱エラー報知情報は、小さな音声やモニタへの小さな画像表示によって報知されてよい。
[第4実施形態の作用・効果]
第4実施形態に係る遊技機10は、ゲーム(普図変動表示ゲーム、特図変動表示ゲーム)を実行可能であり、ゲームの結果が特別結果(大当り)となる場合に、遊技者に有利な特別遊技状態(大当り状態)を発生可能な遊技機である。また、遊技機10は、遊技機10の性能値(ベース値(通常遊技状態における出玉率))を計測する性能値計測手段(遊技制御装置100(特に遊技用マイコンCPU111a))と、その計測された性能値(計測ベース値)と所定の設計値(設計ベース値)との差分(計測ベース値と設計ベース値との差分(絶対値))を算出する演算手段(遊技制御装置100(特に遊技用マイコンCPU111a))と、その差分の所定の設計値に対する割合が所定値(例えば、10%)よりも大きい場合に、エラー(弱エラー、強エラー)を報知するエラー報知手段(遊技制御装置100(特に遊技用マイコンCPU111a)など)と、を備える。
このような遊技機10によれば、遊技機10の性能値(ベース値)を計測し、その計測された性能値(計測ベース値)と所定の設計値(設計ベース値)との差分を算出し、その差分の所定の設計値に対する割合が所定値(例えば、10%)よりも大きい場合(かつ、21%未満の場合)に、弱エラーを報知することができるため、遊技機10の不正や故障、または、遊技機10の障害釘の状態が出荷時と異なることなどを速やかに発見することができる。
また、このような遊技機10によれば、遊技機10の性能値(ベース値)を計測し、その計測された性能値(計測ベース値)と所定の設計値(設計ベース値)との差分を算出し、その差分の所定の設計値に対する割合が所定値(例えば、21%)以上の場合に、強エラーを報知することができるため、遊技機10の不正や故障を速やかに発見することができる。
また、第4実施形態に係る遊技機10において、遊技領域から排出された遊技球の排出球数が規定数となった場合に、演算手段(遊技制御装置100)は差分を算出し、エラー報知手段(遊技制御装置100など)はエラーを報知可能である。従って、常に差分を算出したりエラーを報知するわけでなく、演算手段やエラー報知手段の負荷が軽減される。
[第5実施形態]
図71から図82を参照して、第5実施形態について説明する。なお、以下で述べる以外の構成は、第1実施形態から第4実施形態までの実施形態と同様でよい。
〔第5実施形態の演出制御装置〕
図71は、第5実施形態の遊技機10を構成する演出制御装置300とこれに接続する基板等を表すブロック図である。図71に示すように、本実施形態の遊技機10は、電源装置400、遊技制御装置100(遊技制御手段、不図示)、演出制御装置300(演出制御手段)を備え、演出制御装置300に盤面中継基板915、枠中継基板916、冷却ファン45、LVDS基板918、ROM基板920等がハーネス及びコネクタ(CN)を介して接続された形をとっている。
演出制御装置300は、電源装置400に接続され、直流電源(32V、15V、12V、5V)、停電監視信号(5V)、リセット信号(5V)が入力される。また演出制御装置300には、解析ポート955等が接続できるようになっている。
演出制御装置300には、電圧生成部800(電圧生成手段)が設けられている。電圧生成部800は、電源装置400からの直流電源(5V)から、1.05V、1.5V、3.3Vの出力電圧を生成する。電圧生成部800の詳細については後述する。
盤面中継基板915は、盤面モータドライバ44a(盤演出装置44の一部)、盤面モータセンサ47a(演出役物スイッチ47)、盤面装飾LEDドライバ46a(盤装飾装置46の一部)との間で信号を送受信するための中継基板である。また、盤面中継基板915には、演出制御装置300を介して電源装置400から直流電源(32V,15V,12V,5V)が供給される。
枠中継基板916は、枠モータドライバ44b(枠演出装置の一部)、演出ボタンスイッチ25a、枠モータセンサ47b、第1枠スピーカ(上スピーカ19a)、第2枠スピーカ(下スピーカ19b)、枠装飾LEDドライバ18a(枠装飾装置18の一部)との間で信号を送受信するための中継基板である。また、枠中継基板916には、演出制御装置300を介して電源装置400から直流電源(12V,5V)が供給される。
冷却FAN45は、演出制御装置300を介して電源装置400から直流電源(12V)が供給されることで動作する。
LVDS基板918は、演出制御装置300と、表示装置41とを中継する中継基板である。LVDS基板918には、演出制御装置300を介して電源装置400から直流電源(32V,12V,5V)が供給される。またLVDS基板918には、電圧生成部800から直流電源(3.3V)が供給され、当該直流電源を表示装置41に出力する。
LVDS基板918には、電源生成回路919を設けることができる。電源生成回路919は、電源装置400から供給された直流電源(32V)を直流電源(12V)に変換して表示装置41(LEDバックライト917)に出力する。これにより、接続する表示装置41の規格に応じて電源生成回路919を設計することができ、表示装置41を交換する場合でも、LVDS基板918を取り替えるだけで演出制御装置300の改造を行う必要がないので、その分、表示装置41の交換を容易に行うことができる。
ROM基板920は、画像ROM325を備え、画像ROM325に記憶された画像情報をVDP312(ビデオディスプレイプロセッサ、演算回路)に出力するものである。ROM基板920には、電圧生成部800から直流電源(3.3V)が供給される。
演出制御装置300には、第1VDP-RAM923(記憶手段)及び第2VDP-RAM924(記憶手段)が設けられている。第1VDP-RAM923及び第2VDP-RAM924は、VDP312でデコードされた画像情報(動画、静止画)を一時的に格納する記憶媒体であり、電圧生成部800から直流電源(1.5V)が供給されることで動作する。
演出制御装置300を構成するVDP312(汎用ポート942)は、外部との信号の送受信を3.3Vの信号により行う。しかし、VDP312を構成する内蔵ホストCPU(CPU311、画像処理手段、VDPコア、演算処理手段)は、1.05Vで動作し、第1VDP-RAM923(記憶手段)及び第2VDP-RAM924(記憶手段)に接続するDRAMI/F940は1.5Vで動作する。よって、VDP312は、電圧生成部800から直流電源(1.05V、1.5V、3.3V)が供給されることで動作する。
VDP312の入力側として、演出制御装置300には、電源装置400(停電監視信号、リセット信号)の信号のレベル変換(5.0V→3.3V)を行うレベル変換回路921、遊技制御装置100(演出コマンド)の信号のレベル変換(5.0V→3.3V)を行うレベル変換回路922、盤面モータセンサ47aからの信号のレベル変換(5.0V→3.3V)を行うレベル変換回路926、演出ボタンスイッチ25a及び枠モータセンサ47bからの信号のレベル変換(5.0V→3.3V)を行うレベル変換回路929が設けられている。
また、VDP312の出力側として、演出制御装置300には、盤面中継基板915(盤面モータドライバ44a、盤面モータセンサ47a)に送信する信号のレベル変換(3.3V→5.0V)を行うレベル変換回路925、枠中継基板916(枠モータドライバ44b、演出ボタンスイッチ25a、枠モータセンサ47b)に送信する信号のレベル変換(3.3V→5.0V)を行うレベル変換回路928、LVDS基板918を介して表示装置41(LEDバックライト917)に送信する信号のレベル変換(3.3V→5.0V)を行うレベル変換回路934が設けられている。
さらに、VDP312の双方向通信用として、演出制御装置300には、盤面装飾LEDドライバ46aとI2C通信方式により双方向で送信する信号のレベルシフト(3.3V⇔5.0V)を行うレベルシフト回路927と、枠装飾LEDドライバ18a(枠装飾装置18)とI2C通信方式により双方向で送信する信号のレベルシフト(3.3V⇔5.0V)を行うレベルシフト回路932が設けられている。
演出制御装置300には、電源装置400からの直流電源(15V)が供給され、VDP312から出力される音声データを増幅するアンプ回路337(第1アンプ回路930、第2アンプ回路931)が設けられている。第1アンプ回路930は、第1枠スピーカ(上スピーカ19a)に増幅後の音声データを出力し、第2アンプ回路931は、第2枠スピーカ(下スピーカ19b)に増幅後の音声データを出力する。
演出制御装置300には、VDP312から出力されるLVDS信号を安定化させる保護回路933が設けられ、保護回路933は、LVDS基板918を介して表示装置41にLVDS信号(3.3V)を出力する。
なお、演出制御装置300には、VDP312の動作を監視するウォッチドッグタイマ回路324、VDP312が実行するプログラムや各種データを格納したPROM321、停電時に電力が供給されなくとも記憶内容を保持可能なFeRAM323、音量調節スイッチ335(入力回路)等が設けられている。また、LVDS基板918には、レベルシフト回路932の高電圧(5V)側に接続されたリアルタイムクロック回路338が設けられている。
VDP312は、遊技制御装置100から送信された演出コマンドを解析するCPU311(内蔵ホストCPU)、CPU311の作業領域を提供するRAM322(内蔵CPUワークメモリ)、CPU311とVDP312内のデータの送受信を行うCPUI/F937、PROM321内のデータをCPU311に送信するとともにCPU311が演出コマンドを解析して得られる各種コマンド(ディスプレイリスト、モータコマンド、ランプコマンド、サウンドコマンド)を出力するHOSTCPUI/F938、VDP312の初期設定を行うシステム制御レジスタ939を有する。
VDP312は、外部と信号を送受信する汎用ポート942、画像ROM325から画像情報を読み取るCGバスI/F941、第1VDP-RAM923及び第2VDP-RAM924との間で画像情報(動画、静止画)の送受信を行うDRAMI/F940を有する。
VDP312は、モータコマンドに基づいてモータ制御データを出力し、ランプコマンドに基づいてLED制御データを出力するコントローラ943を有する。コントローラ943は、モータコマンドに基づいてモータ制御データを生成し、これを盤面モータドライバ44a、盤面モータセンサ47a、枠モータドライバ44b、枠モータセンサ47bに互いに識別できる形で出力する。
また、コントローラ943は、ランプデコーダ944に基づいてランプコマンドをデコードしてLED制御データを生成し、これを盤面装飾LEDドライバ46a、枠装飾LEDドライバ18a(枠装飾装置18の一部)に互いに識別できる形で出力する。
VDP312は、サウンドコマンドに基づいて音声データを出力する音ROM327を有する。音ROM327は、サウンドコマンドに基づいて自身が記憶している音声データを選択するとともに、音源LSI314(サウンドデコーダ)に基づいて音声データをデコードし、ポストエフェクタ945及び音量調節スイッチ335による音質調整を介して第1枠スピーカ(上スピーカ19a)及び第2枠スピーカ(下スピーカ19b)に出力する。
VDP312は、ディスプレイリストに基づいて画像処理を行う画像処理回路を備えている。画像処理回路は、ディスプレイリストに基づいて画像ROM325またはVRAM326(記憶手段)から画像情報を読み出すプリローダ回路946と、読み出した画像情報をVRAM326(または、第1VDP-RAM923、第2VDP-RAM924)にデコードするグラフィックスデコーダ947と、VRAM326(または、第2VDP-RAM924)上のフレームバッファに画像情報を描画する描画回路948と、当該画像情報の座標設定を行うジオメトリエンジン949と、VRAM326(または、第1VDP-RAM923、第2VDP-RAM924)において記憶領域を割り当てるインデックステーブル回路950と、VRAM326(または、第1VDP-RAM923、第2VDP-RAM924)に記憶されたフレームバッファデータ等を表示出力する表示回路951(表示A、表示B、表示C)と、フレームバッファデータ等を出力選択回路952を介してLVDS方式等で表示装置41に出力する信号変換回路313と、その他画像処理回路内のデータの送受信を行うデータ転送回路953と、を有し、これらがバス954を通じて相互にデータの送受信を行っている。
VDP312は、アドレスバス935、データバス936を有している。アドレスバス935は、HOSTCPUI/F938、システム制御レジスタ939、DRAMI/F940、CGバスI/F941、汎用ポート942、コントローラ943、音ROM327、グラフィックスデコーダ947、データ転送回路953、プリローダ回路946、表示回路951、描画回路948の間でアドレスの送受信を行っている。データバス936は、HOSTCPUI/F938、DRAMI/F940、VRAM326、CGバスI/F941、コントローラ943、音ROM327、グラフィックスデコーダ947、データ転送回路953、プリローダ回路946、表示回路951、描画回路948の間でデータの送受信を行っている。
本実施形態では、第1VDP-RAM923及び第2VDP-RAM924は、DRAMI/F940に接続する共通のアドレスバス959a及びデータバス959bを有する。第1VDP-RAM923は、データバス959bを介して画像情報(16ビット)の上位8ビットにアクセス可能であり、第2VDP-RAM924は、データバス959bを介して画像情報の下位8ビットにアクセス可能な構成となっている。
ここで、画像情報(16ビット)は、一つのアドレスに動画(上位8ビット)のデータと静止画(下位8ビット)のデータが関連付けられる。よって、動画のデータが第1VDP-RAM923に記憶され、静止画のデータが第2VDP-RAM924に記憶される。
これにより、表示回路951が読み出し用に一つのアドレスを指定すると、第1VDP-RAM923に記憶された動画のデータと、第2VDP-RAM924に記憶された静止画のデータと、を同時に読み出すことができるので、表示装置41への画像情報(動画のデータ、静止画のデータ)の転送速度を向上させることができる。
〔装飾制御装置〕
図72は、装飾制御装置750の回路図である。ここで、装飾制御装置750(演出装置)は、前記の盤面中継基板915(盤面モータドライバ44a)または枠中継基板916(枠モータドライバ44b)に相当する。
装飾制御装置750は、演出制御装置300に電気的に接続され、電源装置400から32V、15V、12V、5Vの電源供給を受けている。また、装飾制御装置750には、VDP312(CPU311)からシリアルデータ信号(SDATA)、シリアルクロック信号(SCLK)、ラッチ信号(LATCH)、イネーブル信号(ENBL)が入力される。
装飾制御装置750には、ドライバ751、ドライバ752、ドライバ753が配置(ドライバの個数は任意)されている。ドライバ751,752は、役物を動作させるモータM1,M2(第1の被駆動部)(ステッピングモータ(不図示))を駆動させるものであり、ドライバ753は、役物を動作させるソレノイドS(第2の被駆動部、不図示)を駆動させるものであるが、それぞれ同様の構成を有している。
ドライバ751,752,753にはそれぞれVDP312(CPU311)(図71)からシリアルデータ信号(SDATA)、シリアルクロック信号(SCLK)、ラッチ信号(LATCH)、イネーブル信号(ENBL)が入力される。これらの信号はHigh(5V)、Low(0V)の2値の羅列により表現され、例えばシリアルデータ信号(SDATA)は12ビットで表現される。
ドライバ751,752,753には、シリアルデータ信号(SDATA)が送信される信号線754A、シリアルクロック信号(SCLK)が送信される信号線754B、ラッチ信号(LATCH)が送信される信号線754C、イネーブル信号(ENBL)が送信される信号線754Dが接続される。
信号線754A-754Dには、High(5V)及びLow(0V)を安定化させるための素子、すなわちプルアップ抵抗755A-755D、ツェナーダイオード756A-756D、抵抗757A-757D、コンデンサ758A-758D、バッファ759A-759D(シングル・シュミットトリガ・バッファ)、抵抗760A-760Dが取り付けられている。
プルアップ抵抗755A-755Dは、一端が5V端子(電源装置400(DC5V))に接続され、他端が信号線754A-754Dに接続され、各信号がHIGHのときに信号線754A-754Dの電圧を5Vに引き上げるものである。
ツェナーダイオード756A-756Dは、カソード側が信号線754A-754Dに接続され、アノード側が接地されている。ツェナーダイオード756A-756Dは、各信号がHIGHのときに信号線754A-754Dの電圧が5Vを超えないように、ツェナー電圧(ツェナー降伏電圧)が5Vに設定されたものが適用されている。
抵抗757A-757Dは、プルアップ抵抗755A-755Dの信号線754A-754Dとの接続位置よりも信号の下流となる位置において信号線754A-754Dに介装されている。
コンデンサ758A-758Dは、一端が信号線754A-754Dにおいて抵抗757A-757Dよりも信号の下流となる位置に接続され、他端が接地されている。
抵抗757A-757D及びコンデンサ758A-758Dは、ドライバ751,752,753を出力先とするローパスフィルタとして機能する。
バッファ759A-759Dは、信号線754A-754Dにおいて、コンデンサ758A-758Dの信号線754A-754Dとの接続位置よりも信号の下流となる位置に介装され、各信号(電圧)の揺らぎを解消するものである。抵抗760A-760Dは、信号線754A-754Dにおいてバッファ759A-759Dが介装された位置よりも信号の下流となる位置に介装され、ドライバ751,752,753に入力される電流(信号)を調整するものである。
ドライバ751,752,753は入力側として、駆動電圧入力端子VM、クランプ電圧入力端子VCLAMP、シリアルデータ入力端子SDATAIN、シリアルクロック入力端子SCLK、ラッチ信号入力端子LATCH、イネーブル信号入力端子ENBL、リセット端子RESETを有する。また、ドライバ751,752,753は出力側として、第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4、シリアルデータ出力端子SDATAOを有し、さらにグランド端子GNDを有する。各ドライバ751,752,753は、シフトレジスタとラッチ回路等からなり、入力端子SDATAINからのシリアルデータをラッチ信号によって取り込んで、第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4から出力できる。
信号線754Aは、ドライバ751のシリアルデータ入力端子SDATAINに接続されている。信号線754Bは、先端で分岐してドライバ751,752,753のシリアルクロック入力端子SCLKにそれぞれ接続されている。信号線754Cは、先端で分岐してドライバ751,752,753のラッチ信号入力端子LATCHにそれぞれ接続されている。信号線754Dは、先端で分岐してドライバ751,752,753のイネーブル信号入力端子ENBLにそれぞれ接続されている。ドライバ751,752,753において、イネーブル信号がHighのとき第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4の出力が禁止され、Lowのときに当該出力が許容される。
ドライバ751の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4は、例えば役物のモータM1(ステッピングモータ(不図示))に接続され、同様にドライバ752の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4は前記モータM1とは異なる他のモータM2(ステッピングモータ(不図示))に接続されている。ドライバ753の第1出力端子OUT1(他の出力端子でもよい)は、例えば役物のソレノイドS(不図示)に接続されている。ドライバ753の第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4は未使用としているが、他のソレノイドの駆動用に用いてもよい。
なお、モータM1、モータM2は回転力により役物等を駆動させるものであり、ソレノイドSは往復運動により役物等を駆動させるものであり、駆動態様が互いに異なる。
ドライバ751,752,753の駆動電圧入力端子VMには12V端子(電源装置400(DC12V))が接続され、ドライバ751,752,753のリセット端子RESETにはコンデンサ761を介して12V端子(電源装置400(DC12V))が接続されている。リセット端子RESETには、通常接地電位が供給されるが、12V端子からの高周波ノイズ信号などによる電圧上昇に起因するリセット信号が入力され、リセット信号はドライバ751,752,753内部の構成要素(シフトレジスタ、ラッチ回路等)を初期化する。
ドライバ751,752のクランプ電圧入力端子VCLAMPにはツェナーダイオード762(逆流防止手段)を介して15V端子(電源装置400(DC15V))が接続されている。ツェナーダイオード762はアノード側が15V端子に接続されカソード側がクランプ電圧入力端子に接続され、15V端子に対する電流の逆流を防止する。一方、ドライバ753のクランプ電圧入力端子には32V端子(電源装置400(DC32V))が接続されている。
ドライバ751のシリアルデータ出力端子SDATAOはドライバ752のシリアルデータ入力端子ADATAINに接続され、ドライバ752のシリアルデータ出力端子SDATAOはドライバ753のシリアルデータ入力端子SDATAINに接続されている。
シリアルデータ信号(SDATA)(例えば12ビット)は、シリアルクロック信号(SCLK)をトリガとしてドライバ751(例えば4ビット取り込み可能)に先頭ビットから順に取り込まれ、ドライバ752(例えば4ビット取り込み可能)、ドライバ753(例えば4ビット取り込み可能)へと送り出され、シリアルデータ信号(SDATA)全体がドライバ751、ドライバ752、ドライバ753に亘って取り込まれた段階でラッチ信号(LATCH)(HIGH)がドライバ751、ドライバ752、ドライバ753に同時に入力される。これにより、ドライバ751の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4からモータS1を駆動する電圧(HighまたはLow)が出力され、ドライバ752の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4からモータS2を駆動する電圧(HighまたはLow)が出力され、ドライバ753の第1出力端子OUT1からソレノイドSを駆動する電圧(HighまたはLow)が出力される。
よって、本実施形態では、一つのシリアルデータ信号(SDATA)で駆動態様の異なる複数の被駆動部(モータM1,M2、ソレノイドS)を同時に駆動制御できるので、演出制御装置300は、複数の(複数種類の)役物の駆動制御を容易に行うことができる。
ここで、ドライバ751,752は、それぞれモータM1,M2(不図示)に取り付けられている。モータM1を駆動する4つのコイル(不図示)について、各コイル(不図示)の一端は、15V端子に接続され、他端がドライバ751の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4において互いに異なる出力端子に接続されている。同様に、モータM2を駆動する4つのコイル(不図示)について、各コイル(不図示)の一端は、15V端子に接続され、他端がドライバ752の第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4において互いに異なる出力端子に接続されている。
よって、ドライバ751,752において、第1出力端子OUT1、第2出力端子OUT2、第3出力端子OUT3、第4出力端子OUT4の出力がそれぞれ0V(Low)のときに各コイルが駆動し、それぞれ15V(High)のときに各コイルの駆動は停止する。
同様に、ドライバ753は、ソレノイドS(不図示)に取り付けられているが、ソレノイドSの一端は32V端子に接続され、他端が第1出力端子OUT1(他の出力端子でもよい)に接続されている。よって、第1出力端子OUT1の出力が0V(Low)のときにソレノイドSが駆動し、32V(High)のときにソレノイドSの駆動は停止する。
本実施形態では、駆動電圧入力端子VMに入力されるドライバ751,752,753の駆動電圧(V2=12V)を、クランプ電圧入力端子VCLAMPに入力されるクランプ電圧(V3=15V,32V)よりも低い電圧に設定している。
これにより、モータM1,M2への電力を供給して電力消費の高いクランプ電圧の電力供給源(電源装置400のDC15Vを出力するDC15V電源やDC32Vを出力するDC32V電源)に対する負担を軽減することで、ドライバ751,752,753と被駆動物(モータM1,M2、ソレノイドS)を安定的に動作させることができる。またドライバ751,752,753の駆動電圧(V2)をクランプ電圧(V3)よりも低くすることでドライバ751,752,753を構成するIC(シフトレジスタ、ラッチ回路等を含む集積回路)の発熱を低減することができる。なお、上記電力供給源に対する負担が小さい場合には、ドライバ751,752,753の駆動電圧の電力供給源を、クランプ電圧の電力供給源(15V,32V)と同じにしてもよい。
また本実施形態では、ドライバ751,752,753の駆動電圧(V2=12V)を、シリアルデータ信号SDATA等の信号を送信する信号線754A-754Dの電圧(V1=5V)よりも高くしている。これにより、通信用の電力供給源と駆動用の電力供給源が別になるので、データの送信とドライバ751,752,753の動作を安定化させることができる。以上より、V3(クランプ電圧)≧V2(駆動電圧)>V1(データの出力電圧)の関係を満たすことで、電力配分が適正となり、データの送信、ドライバ751,752,753の駆動、ドライバ751,752,75に係る被駆動物(モータM1,M2、ソレノイドS)の駆動を安定化させることができる。
なお、ドライバ753のシリアルデータ出力端子SDATAOは未使用としているが、ドライバ751,752,753以外のドライバのシリアルデータ入力端子SDATAINに接続してもよい。この場合、当該ドライバ(複数個のドライバがシリアルデータ信号(SDATA)を送信する信号線に関して直列に接続した態様であってもよい)にはドライバ751,752,753と同様に、シリアルデータ信号(SDATA)、シリアルクロック信号(SCLK)、ラッチ信号(LATCH)、イネーブル信号(ENBL)が入力され、シリアルデータ信号(SDATA)のビット数もドライバの個数に従って適宜設計される。
〔電源装置の停電発生時の動作〕
図73は、DC32V電源、DC15V電源、DC12V電源、DC5V電源の立下りを示すタイムチャートである。電源装置400は、DC32Vの直流電圧を発生させるDC32V電源と、DC15Vの直流電圧を発生させるDC15V電源と、DC12Vの直流電圧を発生させるDC12V電源と、DC5Vの直流電圧を発生させるDC5V電源と、を備える。DC32V電源は、例えば24Vの交流電源を32Vの直流電圧に変換するスイッチングレギュレータであり、前記交流電源がシャットダウンしても所定時間(例えば、交流電源の2周期分(瞬電保証期間))出力電圧を維持できるようになっており、その後出力電圧が単調減少するように構成されている。
また、DC15V電源、DC12V電源、DC5V電源は、それぞれDC32V電源から出力された直流電圧(32V)を所定の直流電圧(15V,12V,5V)に変換するDC-DCコンバータである。電源装置400において、制御信号生成部430(電源装置中の他の構成要素でもよい)は、例えば17.2V-20Vの範囲で監視電圧を設定可能であり、DC32V電源の電圧が監視電圧以下に下がると停電発生を検出して停電監視信号を変化させている。
図73に示すように、時刻t0で24Vの交流電源がシャットダウンしても、DC32V電源の電圧は瞬電保証期間を目安として32Vの出力を維持しているが、瞬電保証期間の後半になると電圧が下がり始める。
制御信号生成部430は、時刻t1において、DC32V電源の出力電圧が21V以下に下がるとDC32V電源からDC15V電源(第3の電源)への電圧の供給を停止することによってDC15V電源からの電圧の供給も終了し、時刻t2においてDC32V電源の電圧が16V以下に下がるとDC32V電源からDC12V電源(第2の電源)への電圧の供給を停止することによってDC12V電源からの電圧の供給も終了し、時刻t3においてDC32V電源の電圧が10V以下に下がるとDC32V電源からDC5V電源(第1の電源)への電圧の供給を停止することによってDC5V電源からの電圧の供給も終了させている。
よって、停電が発生すると、まずDC15V電源で駆動するモータM1,M2及びソレノイドSの駆動が停止し(図72)、次にDC12V電源で駆動するドライバ751,752,753の駆動が停止し、最後にドライバ751,752,753に入力されるデータ(DC5V電源が駆動源)の送信(すなわちVDP312の動作)が停止する(図71)。
これにより、ドライバ751,752,753の駆動が停止する前に、モータM1,M2及びソレノイドSの駆動が停止するのでこれらの誤動作を回避することができる。また、ドライバ751,752,753の駆動が停止したのちにデータの送信が停止するので、ドライバ751,752,753の誤動作を回避することができる。さらにデータの送信、すなわちVDP312の動作が最後になるので、VDP311内の処理時間を確保してVDP312内のエラーの発生を抑制することができる。
〔電子部品の配列〕
図74は、演出制御装置300内のVDP312と音量調節スイッチ335との接続態様を示す回路図である。演出制御装置300において、VDP312(汎用ポート942)に接続される音量調節スイッチ335は、音量調節用のロータ(不図示)を備え、これを回転させることで音量を段階的に設定することができる。音量調節スイッチ335は、例えば4ビット(音量を16段階、または10段階で設定可能)の音量信号に変換してVDP312に出力することができる。音量調節スイッチ335は、グランド端子GNDと、出力端子Y0-Y3を備える。出力端子Y0は、音量信号の最下位ビットを出力し、出力端子Y1は、音量信号の最下位よりも1段上位のビットを出力し、出力端子Y2は、音量信号の最下位より2段上位のビットを出力し、出力端子Y3は音量信号の最上位ビットを出力する。
音量調節スイッチ335の出力端子Y0-Y3は、それぞれ信号線763A-763DによりVDP312の汎用ポート942(P0-P3)に接続されている。そして、信号線763A-763Dには、プルアップ抵抗764A-764D、抵抗765A-765D、コンデンサ766A-766Dが接続されている。
プルアップ抵抗764A-764Dは、一端が電圧生成部800からの3.3V端子に接続され、他端が信号線763A-763Dに接続されている。プルアップ抵抗764A-764Dは、音量信号の各ビットがHighとなっているときに信号線763A-763Dの電圧を3.3Vに引き上げるものである。なお、音量調節スイッチ335の各出力端子(各ビット)とこれに対応する汎用ポート942(P0-P3の一つ)は、ロータの回転によって、グランド端子GNDと電気的に接続すると0V(Low)となり、グランド端子GNDと電気的に接続しない場合には、3.3V(Low)になる。
抵抗765A-765Dは、信号線763A-763Dにおいて、信号線763A-763Dのプルアップ抵抗764A-764Dとの接続位置よりも音量信号の送信方向の下流となる位置に介装されている。コンデンサ766A-766Dは、一端が信号線763A-763Dにおいて抵抗765A-765Dよりも音量信号の送信方向の下流となる位置に接続され、他端が接地されている。抵抗765A-765D及びコンデンサ766A-766Dは汎用ポート942側に対するローパスフィルタとして機能する。
プルアップ抵抗764A-764D、抵抗765A-765D、コンデンサ766A-766Dは、演出制御装置300を構成する基板上に配置されるが、これらを電流の向き(または電圧の印加する方向)に沿って揃えて実装することが好適である。
これらの電子部品(抵抗、コンデンサ)は極性を持たないため、実装方向を逆にしたとしても基本的に回路特性に影響を与えることはない。しかし、演出制御装置300において信号パターン(配線パターン)は複雑に入り組んでおり、さらに当該電子部品の実装方法も任意とすると、チェック対象の電子部品を予測しながら電子部品及び信号線のチェック作業を行うことが困難となる。
しかし、一つの信号線(例えば信号線763A)に対して実装する電子部品(プルアップ抵抗764A、抵抗765A、コンデンサ766C)の向きを電流の向きに合わせて実装することで信号線の途中に実装される電子部品の向きからチェック対象を予測しやすくなり、チェック作業の効率を向上させることができる。例えば、一つの信号線(例えば信号線763A)に沿って、電流の向きに電子部品を順番にチェックするなど場合に、チェック作業の効率を向上させることができる。
また、複数の信号線(信号線763A-763D)において互いに対応する電子部品(例えば、プルアップ抵抗764A-764D)の間で、電流の向きに沿った向きに揃えて実装することより、互いに対応する電子部品の識別を容易に行うことができる。
電子部品(抵抗、コンデンサ)は、接続ピンが2つあるが、電子部品の上面には型番等の製品情報のほかに便宜上の符号が付されており、例えば電子部品の本体の一方のピン(1ピン)の根元に隣接する部分に「1」(または白丸「○」や黒丸「●」)が付され、当該本体の他方のピン(2ピン)の根元に隣接する部分に「2」が付されている(または無印)。したがって、例えば、電流が1ピンから2ピンに流れるように(1ピンが高電圧側となるように)電子部品を実装することで、チェック対象の予測を容易に行うことができる。図74では、各電子部品の1ピン側に「・」を付している。
図75は、演出制御装置内のVDPとモータセンサ等との接続態様を示す回路図である。VDP312には、演出ボタン25に組み込まれた演出ボタンスイッチ25a(プッシュスイッチ)からの検知信号PUSHSWと、装飾制御装置750等が制御する複数のモータ(不図示、たとえば8個)がそれぞれ初期位置(初期の回転位置)にあるか否かを検知する枠モータセンサ47b(例えば8個)からの検知信号MSW1-MSW8が入力される。
演出ボタンスイッチ25a(プッシュスイッチ)は、演出ボタン25(図1)が押下されていないときはHigh(5V)の検知信号PUSHSWを出力し、演出ボタン25が押下されたときに接地されてLow(0V)の検知信号PUSHSWを送信する。
枠モータセンサ47bは、モータが初期位置にあるときにHigh(5V)の検知信号を出力し、当該初期位置にない場合にはLow(0V)の検知信号を出力する。
演出ボタンスイッチ25aは、信号線767A(検知信号PUSHSWが送信される)に接続され、信号線767Aは、レベル変換回路771に接続されている。ここで、レベル変換回路771は、図71のレベル変換回路929に対応する。信号線767Aには、プルアップ抵抗768A、抵抗769A、コンデンサ770Aが接続されている。
枠モータセンサ47bは、信号線767B-767I(検知信号MSW1-MSW8を送信する)に接続され、信号線767B-767Iは、レベル変換回路771に接続されている。信号線767B-767Iには、プルアップ抵抗768B-768I、抵抗769B-769I、コンデンサ770B-770Iが接続されている。
プルアップ抵抗768A-768Iは、一端が5V端子(電源装置400(DC5V))に接続され、他端が信号線767A-767Iに接続されている。プルアップ抵抗768A-768Iは、枠モータセンサ47bの出力がHighとなっているときに信号線767A-767Iの電圧を5Vに引き上げるものである。
抵抗769A-769Iは、信号線767A-767Iにおいて、信号線767A-767Iのプルアップ抵抗768A-768Iとの接続位置よりも検知信号の送信方向の下流となる位置に介装されている。コンデンサ770A-770Iは、一端が信号線767A-767Iにおいて抵抗769A-769Iよりも検知信号の送信方向の下流となる位置に接続され、他端が接地されている。抵抗769A-769I及びコンデンサ770A-770Iはレベル変換回路771側に対するローパスフィルタとして機能する。
レベル変換回路771は、信号線767A-767I(5V)により送信された検知信号を、信号線773A-773I(3.3V)により送信される検知信号に変換してVDP312の汎用ポート942(ポートP4-P12)に送信する。
レベル変換回路771は、入力端子A、入力端子D1-D8、出力端子P、出力端子Y1-Y8、駆動電圧入力端子VCC、グランド端子GNDを備えている。
入力端子Aは信号線767Aに接続され検知信号PUSHSWが入力される端子である。入力端子D1―D8は、信号線767B-767Iに接続され、検知信号MSW1-MSW8が入力される端子である。
信号線773Aは出力端子PとポートP4とを接続するものである。信号線773B-773Iは、出力端子Y1-Y8とポートP5-P12とを接続するものである。出力端子Pは、3.3Vに変換された検知信号PUSHSWをポートP4に送信するものである。出力端子Y1-Y8は、3.3Vに変換された検知信号MSW1-MSW8をポートP5-P12に送信するものである。
レベル変換回路771の駆動電圧入力端子VCCは3.3V端子(電圧生成部800(3.3V)、図71)に接続され、また一端が接地されたコンデンサ772にも接続されている。
図74に示す場合と同様に、図75において、一つの信号線(例えば信号線767A)に対して実装する電子部品(プルアップ抵抗768A、抵抗769A)の向きを電流の向きに合わせて実装することで信号線の途中に実装される電子部品の向きからチェック対象を予測しやすくなり、チェック作業の効率を向上させることができる。
また複数の信号線(信号線767A-763I)において互いに対応する電子部品(例えば、プルアップ抵抗768A-768I)の間で、電流の向きに沿った向きに揃えて実装することより、互いに対応する電子部品の識別を容易に行うことができる。
図74に示す場合と同様に、図75において、各電子部品の1ピン側に「・」を付している。図75においても、電流が1ピンから2ピンに流れるように(1ピンが高電圧側となるように)電子部品(抵抗、コンデンサ)を実装することで、チェック対象の予測を容易に行うことができる。
ただし、コンデンサ770A-770Iでは、1ピンがグランド側となるように実装されている。例えば、抵抗769A-769Iとコンデンサ770A-770Iの概観が紛らわしい場合は、向きを互いに逆向きにすることで両者を区別することも可能である。
〔LVDS伝達回路〕
図76は、演出制御装置300内のVDPと表示装置41との接続態様を示す回路図である。図71に示すように、VDP312(信号変換回路313)は、フレームバッファデータ(画像データ)をLVDS方式に係る差動信号に変換して表示装置41(演出装置)に出力するLVDS伝達回路に接続されている。差動信号は、保護回路933及びLVDS基板918を介して表示装置41に送信される。
図76(保護回路933及びLVDS基板918は省略)に示すように、VDP312(信号変換回路313)と表示装置41(表示装置41に接続するコネクタ)は、信号線774A-774Fにより接続されている。
信号線774Aは、VDP312の出力端子TA-と表示装置41の入力端子RxIN0-とを接続する。信号線774Bは、VDP312の出力端子TA+と表示装置41の入力端子RxIN0+とを接続する。
信号線774Cは、VDP312の出力端子TB-と表示装置41の入力端子RxIN1-とを接続する。信号線774Dは、VDP312の出力端子TB+と表示装置41の入力端子RxIN1+とを接続する。
信号線774Eは、VDP312の出力端子TC-と表示装置41の入力端子RxIN2-とを接続する。信号線774Fは、VDP312の出力端子TC+と表示装置41の入力端子RxIN2+とを接続する。
信号線774Gは、VDP312の出力端子TCLK-と表示装置41の入力端子CKIN-とを接続する。信号線774Hは、VDP312の出力端子TCLK+と表示装置41の入力端子CKIN+とを接続する。
信号線774Iは、VDP312の出力端子TD-と表示装置41の入力端子RxIN3-とを接続する。信号線774Jは、VDP312の出力端子TD+と表示装置41の入力端子RxIN3+とを接続する。
出力端子TA-及び出力端子TA+は、互いに逆相となる差動信号を出力し、入力端子RxIN0-及び入力端子RxIN0+に当該差動信号が入力される。出力端子TB-及び出力端子TB+は、互いに逆相となる差動信号を出力し、入力端子RxIN1-及び入力端子RxIN1+に当該差動信号が入力される。出力端子TC-及び出力端子TC+は、互いに逆相となる差動信号を出力し、入力端子RxIN2-及び入力端子RxIN2+に当該差動信号が入力される。
出力端子TCLK-及び出力端子TCLK+は、互いに逆相となる差動信号を出力し、入力端子CKIN-及び入力端子CKIN+に当該差動信号が入力される。出力端子TD-及び出力端子TD+は、互いに逆相となる差動信号を出力し、入力端子RxIN3-及び入力端子RxIN3+に当該差動信号が入力される。
出力端子TA-(出力端子TA+)、出力端子TB-(出力端子TB+)、出力端子TC-(出力端子TC+)、出力端子TD-(出力端子TD+)は、表示装置41に表示する画像データの画素ごとの色(赤、緑、青)の諧調を示すデータを羅列したシリアルデータ信号(画像データ)を表示装置41に送信する。また、出力端子TCLK-(出力端子TCLK+)は、当該シリアルデータを表示装置41が取り込む際のシリアルクロック信号を送信する。
信号線774A及び信号線774Bには、フィルタ775Aが介装され、信号線774C及び信号線774Dには、フィルタ775Bが介装され、信号線774E及び信号線774Fには、フィルタ775Cが介装され、信号線774G及び信号線774Hには、フィルタ775Dが介装され、信号線774I及び信号線774Jには、フィルタ775Eが介装されている。なお、フィルタ775A-775Eは、例えば、LVDS基板918に配置されるが、表示装置41に組み込まれていてもよい。
フィルタ775A-775Eは、例えばコモンコードチョークコイルが適用され、互いに逆相となる差動信号(ディファレンシャルモード)に対してはインダクタとして作用せず、同相で混入するノイズ信号(コモンモード)に対してはインダクタとして作用し、ノイズ信号を互いに相殺することができる。よって、信号線774A-774Jのフィルタ775A-775Eよりも手前となる位置で混入したノイズ信号はフィルタ775A-775Eにおいて除去される。
表示装置41では、入力端子RxIN0-及び入力端子RxIN0+から入力されたシリアルデータ信号の差分、入力端子RxIN1-及び入力端子RxIN1+から入力されたシリアルデータ信号の差分、入力端子RxIN2-及び入力端子RxIN2+から入力されたシリアルデータ信号の差分、入力端子RxIN3-及び入力端子RxIN3+から入力されたシリアルデータ信号の差分を取ることで、各シリアルデータ信号を増幅させるとともに送信途中で混入したノイズを除去している。同様に、表示装置41では、入力端子CKIN3-及び入力端子CKIN3+から入力されたシリアルクロック信号の差分を取ることで、シリアルクロック信号を増幅させるとともに送信途中で混入したノイズを除去している。
上記いずれの信号もLowにおいて0V、Highにおいて3.3Vを定格としている。しかし、差動信号の一方において、当該信号(Low)が0Vよりも低くなる、または当該信号(High)が3.3Vよりも高くなる場合が発生すると、差動信号の一方の信号(電圧)の振幅と、他方の信号(電圧)の振幅に差が生じることになる。この場合、差動信号の一方と他方では信号の立ち上がり及び立下りに差が生じるため、フィルタ775A-775Eが差動信号に対してインダクタとして作用して差動信号が不安定となる。この場合、当該差動信号について表示装置41側で前記の差分をとってもノイズを除去しきれず、また前記の差分によって得られる画像データも不安定になるおそれがある。
そこで、本実施形態では、図76に示すように、信号線774A-774Jに対して電圧の上限と下限を規定するクランプダイオード回路776A,776B,776C(電圧規定手段)を設けている。クランプダイオード回路776A,776B,776Cは、例えばLVDS基板918に配置されている。クランプダイオード回路776A,776B,776Cは、ツェナー電圧が3.3VのツェナーダイオードZDと、2つのダイオードD1、D2を同じ方向に向けて直列に接続させた直列回路の4つが並列に接続されたものである。
ツェナーダイオードZDは、カソード側が3.3V端子(電圧生成部800(DC3.3V)、図71)に接続され、アノード側が接地している。ダイオードD1は、アノード側がダイオードD2のカソード側に接続され、カソード側が3.3V端子(電圧生成部800(DC3.3V))に接続されている。ダイオードD2は、カソード側がダイオードD1のアノード側に接続され、アノード側が接地している。
クランプダイオード回路776A中のダイオードD1とダイオードD2との接続中点M1が信号線774Aに接続され、接続中点M2が信号線774Bに接続され、接続中点M3が信号線774Cに接続され、接続中点M4が信号線774Dに接続されている。
クランプダイオード回路776B中のダイオードD1とダイオードD2との接続中点M5が信号線774Eに接続され、接続中点M6が信号線774Fに接続され、接続中点M7が信号線774Gに接続され、接続中点M8が信号線774Hに接続されている。
クランプダイオード回路776C中のダイオードD1とダイオードD2との接続中点M9が信号線774Iに接続され、接続中点M10が信号線774Jに接続されている。一方、接続中点M11及び接続中点M12は接地されている。
クランプダイオード回路776A-776Cの初期状態では、ツェナーダイオードZDのカソード側とアノード側の電位差は3.3Vに維持され、3.3V端子の電圧が3.3Vを超えたとしても当該電位差は3.3Vに維持される。また、ツェナーダイオードZDに並列に接続され、ダイオードD1及びダイオードD2に係る直列回路の両端の電位差も3.3Vに固定されている。
この状態で、ノイズ信号(電流)が接続中点M1-M10に流入して接続中点M1-M10の電圧が3.3Vよりも高くなっていく場合、ダイオードD1のアノード及びカソード間の電位差がダイオードD1の閾値電圧Vf1(小さい値)に到達するとダイオードD1がオン状態となるので、接続中点M1-M10におけるそれ以上の電圧上昇は抑制され、結果的にノイズ信号による電圧上昇が抑制される。
同様に、ノイズ信号(電流)が接続中点M1-M10に流入して接続中点M1-M10の電圧が0Vよりも低くなっていく場合、ダイオードD1のアノード及びカソード間の電位差がダイオードD2の閾値電圧Vf2(小さい値)に到達するとダイオードD2がオン状態となるので、接続中点M1-M10におけるそれ以上の電圧下降は抑制され、結果的にノイズ信号による電圧下降が抑制される。
以上のように、クランプダイオード回路776A-776Cにより差動信号の電圧の上限(約3.3V)と下限(約0V)が規定されるので、差動信号の一方と差動信号の他方が互いに逆相であって同じ電圧の振幅を持った状態が維持され、差動信号の差分により得られるデータ(画像データ)を安定化させることができる。
図71に示すように、VDP312と盤面中継基板915及び枠中継基板9916との間で相互にデータ通信を行うI2Cバス通信が用いられている。そして、I2Cバス通信において、シリアルデータ、シリアルクロックをそれぞれ差動信号により送信する場合には、本実施形態のクランプダイオード回路776A(776B,776C:電圧規定手段)を適用することができる。すなわち、シリアルデータに係る差動信号を送信する一対の信号線、シリアルクロックに係る差動信号を送信する一対の信号線に対して、本実施形態のクランプダイオード回路776Aを適用することができる。
〔メイン処理及び演出装置エラー監視処理〕
図77は、演出制御装置300のメイン処理を示すフローチャートである。図78は、演出制御装置300によって実行される演出装置エラー監視処理の手順を示すフローチャートである。本実施形態の演出制御装置300のメイン処理は基本的に図23に示すメイン処理と共通するが、可動体制御処理(B0023)の後に演出装置エラー監視処理(B0024)が追加されている。
図78に示すように、演出制御装置300は、装飾制御装置750から演出装置情報を取得する(B11001)。ここで、演出装置情報とは、例えば、モータセンサからの検知信号MSW1-MSW8(図75)や、装飾制御装置750とモータM1,M2(図72)を接続するケーブル(コネクタ)の接続状態や、装飾制御装置750とソレノイドS(図72)を接続するケーブル(コネクタ)の接続状態を示す情報が含まれる。
演出制御装置300は、演出装置情報を解析しこれが適正か否か判定する(B11002)。ここで演出装置情報が適正か否かとは、例えば、検知信号MSW1-MSW8(図75)に基づき各モータ(8個)で動作する役物がそれぞれ所定位置(初期位置)にあるか否か、前記ケーブルの接続状態が良好であるか否か等が含まれる。
演出制御装置300は、演出装置情報が適正(B11001の結果が「Y」)であれば演出装置エラー監視処理を終了する。一方、演出装置情報が適正ではない(B11011の結果が「N」)であれば、エラー設定処理(B11003)を行う。エラー設定処理では、エラーの報知音が発生するように、及び/若しくは、表示装置41にエラー情報(例えばエラーコードで表示される)が表示されるように設定する。
〔タイマ割込み処理〕
図79は演出制御装置300(詳細にはVDP312のCPU311)によって実行される可動体制御タイマ割込み処理の手順を示すフローチャートである。ここでは、上記装飾制御装置750として盤演出装置44(図4)を適用し、上記モータM1,M2として盤演出装置44(電動役物、可動役物)内の演出用ステッピングモータを適用し、演出用ステッピングモータの制御に関して説明する。演出用ステッピングモータは、例えば、盤演出装置44(電動役物、可動役物)として側部演出ユニット40dを移動動作させる。
可動体制御タイマ割込み処理(図79)は、演出制御装置300のメイン処理(図77)に対するタイマ割込み処理の一つとして、制御基本周期(割込み周期)ごとに実行される。本実施形態では、制御基本周期(割込み周期)は1ms(msec:ミリ秒)である。
演出制御装置300は、まず、演出用ステッピングモータ(ここではモータA(M1)とモータB(M2)とする)に関する制御データに基づいて、モータA制御処理(B20001)とモータB制御処理(B20002)を実行する。モータA制御処理とモータB制御処理は、同様の処理である。なお、可動体制御処理(図77のB0023)は、変動演出設定処理(図31のB1905)等で設定される演出に基づいて、可動役物(盤演出装置44、可動体)の動作態様として、可動役物を動作可能な演出用ステッピングモータに関する制御データを設定する。また、制御対象の演出用ステッピングモータが2つより多くなる場合には、モータA制御処理とモータB制御処理と同様のモータ制御処理を追加してよい。
演出制御装置300は、次に、モータAの出力データとモータBの出力データとを合成し(B20003)、合成したデータを対応するポートへ出力する(B20004)。これによって、モータA(M1)とモータB(M2)を駆動制御する盤面モータドライバ44aに合成したデータが送られる。ここで、「合成」とは、例えば複数ビットのデータのうち上位の数ビットにモータAの出力データを入れ、下位の数ビットにモータBの出力データを入れるような処理を意味する。以上により、可動体制御タイマ割込み処理を終了する。
次に、図80を参照して、可動体制御タイマ割込み処理(図79)におけるモータA制御処理(B20001)における詳細について説明する。図80は、演出制御装置300によって実行されるモータA制御処理の手順を示すフローチャートである。モータA制御処理では、モータAの出力データが取得(設定)される。なお、モータBの出力データが取得(設定)されるモータB制御処理もモータA制御処理と同様に実行される。
演出制御装置300は、まず、モータ制御コードをロードする(B21001)。モータ制御コードは、可動体制御処理(図77のB0023)において、演出用ステッピングモータに関する制御データとして設定されている。モータ制御コードは、モータをどのように制御するかを示す情報であり、「停止」、「CW」、「CCW」などを示すコードがある。なお、「CW」は時計回り方向のモータの回転を意味し、「CCW」は反時計回り方向のモータの回転を意味する。
次に、演出制御装置300は、まず、モータ制御コードが、モータの「停止」を指示する停止コードであるか否かを判定する(B21002)。モータ制御コードが停止コードである場合(B21002の結果が「Y」)、モータへの出力データとしてオフ出力データを設定する(B21003)。そして、可動体制御タイマ割込み処理ごとに更新(加算)されるカウンタ値(カウント値、計数値)の初期値として0を設定しておき、前回の可動体制御タイマ割込み処理におけるカウンタ値の整数部を示す変数N(前回)に初期値として0を設定しておく(B21004)。その後、出力データ(ここではオフ出力データ)をモータ出力データ領域にセーブし(B21011)、モータA制御処理を終了する。従って、演出用ステッピングモータ(ここではモータA)は、停止状態に維持される。
一方、モータ制御コードが停止コードでない場合(B21002の結果が「N」)、演出制御装置300は、遊技状態に応じた一定の加算値を設定する(B21005)。遊技状態として、通常遊技状態、特別遊技状態、特定遊技状態(時短状態や確変状態などの普電サポート状態)がある。次に、カウンタ値に加算値を加算して更新する(B21006)。なお、カウンタ値を2進数表現で表現して、加算処理は、固定小数点演算により実行すると高速になる。ステップB21006の処理は、カウンタ値(又はタイマ値)を変化させて更新するカウンタ手段(又はタイマ手段)を構成する。
例えば、時間短縮変動などにおいて可動役物の動作速度(演出用ステッピングモータの速度)を早くした方が好適になる特定遊技状態において、加算値は0.666に設定し、その他の時間短縮変動のない通常遊技状態や特別遊技状態において、加算値は0.5に設定してよい。なお、後述のように、カウンタ値に対する加算値が大きくなると、演出用ステッピングモータの速度(モータ制御用の出力データの更新速度)が速まり、可動役物(可動体)の動作速度も速まることになる。また、加算値が1未満であるため、後述のように、演出用ステッピングモータの制御周期が、制御基本周期(割込み周期=1ms)よりも大きくなる。
次に、演出制御装置300は、いわゆるfloor関数(=床関数)によってカウンタ値の小数部分を切り捨ててカウンタ値の整数部を取得し、変数N(今回)に格納する(N(今回)←floor(カウンタ値))(B21007)。なお、N(今回)は、現在実行中の今回の可動体制御タイマ割込み処理におけるカウンタ値の整数部を示す。そして、演出制御装置300は、カウンタ値の整数部Nが変化して更新されたか否かを判定する(B21008)。即ち、演出制御装置300は、カウンタ値の整数部が繰り上がったか否かを判定する。具体的には、今回のタイマ割込みにおける整数部であるN(今回)の値が前回のタイマ割込みにおける整数部であるN(前回)の値よりも大きいか否か、又はN(前回)と異なるか否かを判定する。
演出制御装置300は、カウンタ値の整数部Nが変化して更新された場合(B21008の結果が「Y」)、演出用ステッピングモータへの出力データ(ここではモータAを駆動するための出力データ)を設定又は更新する(B21009)。なお、出力データテーブル内の出力データのアドレスを示す出力データポインタを更新することによって、出力データを次のデータに更新してよい。このように、カウンタ値の整数部Nが変化して更新されることが、出力データが設定又は更新される所定条件となる。
例えば、カウンタ値の整数部Nが変化して更新された場合に、出力データをオン設定することによって、演出用ステッピングモータの基準クロック(シリアルクロックSCLKなど)が生成されるようにしてよい(カウンタ値の整数部Nが変化しない場合はオフ設定)。或は、出力データの更新によって、直接的にステップ更新(励磁される相(励磁相)の更新)が行われてもよい。
そして、演出制御装置300は、変数N(前回)にN(今回)の値を格納する(B21010)。次に、取得した出力データをモータ出力データ領域にセーブし(B21011)、モータA制御処理を終了する。
以上のように、カウンタ値の整数部Nが変化すると、演出用ステッピングモータを駆動するための出力データが更新又は設定され、演出用ステッピングモータの基準クロックが生成されてよい。別例では、カウンタ値の整数部Nが変化すると、出力データの更新又は設定によって、直接的に励磁される相(励磁相)を更新し、演出用ステッピングモータのロータ(回転軸)を1ステップ(即ち、所定のステップ角度)だけ回転してもよい(ステップ更新)。従って、カウンタ値に対する加算値が大きくなるほど、演出用ステッピングモータの速度、ひいては可動役物の動作速度も速めることができる。
〔制御フローの分岐〕
図77に示すメイン処理、及び図79に示すタイマ割込み処理においては制御フローが分岐する部分が存在する。例えばメイン処理であれば、フレーム切替タイミングであるか否かの判定(B0019)の結果に応じて処理が分岐する。また、メイン処理中の演出装置エラー監視処理(B0024,図78)において、前記のように演出装置情報が適正であるか否かの判断(B11002)の結果に応じて処理が分岐する。なお、サブルーチン(演出ボタン入力処理、受信コマンドチェック処理などの個別の処理)の呼出しを分岐処理の一種と捉えることもできるが、ステップB0010、B0011、B0012、B0014-B0016、B0022-B0024において、処理が分岐する。
また、メイン処理中の受信コマンドチェック処理(B0014)(図24)において、コマンド受信数が0でないか否かの判定(B1102)、ロードしたコマンド受信数分のコピーが完了した否かの判定(B1106)、ロードしたコマンド受信数分のコマンドの解析が完了したか否かの判定(B1110)の結果に応じて処理がそれぞれ分岐する。
そして、受信コマンドチェック処理(B0014、図24)中の受信コマンド解析処理(B1108、図25)において、受信したコマンドの上位のMODE部が正常範囲か否かの判定(B1202)、受信したコマンドの下位のACTION部が正常範囲であるか否かの判定(B1203)、MODE部に対するACTION部が正しい組み合わせであるか否かの判定(B1204)の結果に応じて処理がそれぞれ分岐する。
また、MODE部について、変動系コマンド範囲であるか否かの判定(B1205)、大当り系コマンド範囲であるか否かの判定(B1207)、単発系コマンド範囲であるか否かの判定(B1211)、図柄系コマンド範囲であるか否かの判定(B1209)、先読み図柄系コマンド範囲であるか否かの判定(B1213)、先読み変動系コマンド範囲であるか否かの判定(B1215)の結果に応じて処理がそれぞれ分岐する。
さらに、例えば、受信コマンド解析処理(B1108、図25)中の単発系コマンド処理(B1212、図26)におけるMODE部について、機種指定コマンドを表すか否かの判定(B1301)、RAM初期化のコマンドを表すか否かの判定(B1303)、停電復旧コマンドを表すか否かの判定(B1305)、客待ちデモコマンドを表すか否かの判定(B1307)、飾り特図1保留数コマンドを表すか否かの判定(B1309)、飾り特図2保留数コマンドを表すか否かの判定(B1311)、確率情報コマンドを表すか否かの判定(B1313)、エラー/不正系/呼出しのコマンドを表すか否かの判定(B1315)、演出モード切替用のコマンドを表すか否かの判定(B1317)、アウト球数コマンドを表すか否かの判定(B1319)、カウントのコマンド(大入賞口カウントコマンド)を表すか否かの判定(B1321)、設定値情報コマンドであるか否かの判定(B1323)、設定変更系のコマンドを表すか否か(B1325)、設定確認系のコマンドを表すか否かの判定(B1327)、図柄停止のコマンドを表すか否かの判定(B1329)、MODE部のコマンドが正常であるか否かの判定(B1330)の結果に応じて処理がそれぞれ分岐する。
可動体制御タイマ割込み処理(図78)中のモータA制御処理(B20001、図79)において、モータ制御コードが、モータの「停止」を指示する停止コードであるか否かの判定(B21002)、カウンタ値の整数部Nが変化して更新されたか否かの判定(B21008)の結果に応じて処理がそれぞれ分岐する。なお、サブルーチン(モータA制御処理、モータB制御処理などの個別の処理)の呼出しを分岐処理の一種と捉えることもできるが、ステップB20001、B20002において、処理が分岐する。
〔パイプライン処理と遅延分岐処理〕
図81は、演出制御装置内のCPU311が行う遅延分岐処理を示す図であり、図81(a)は遅延分岐処理が実行される場合、図81(b)は遅延分岐処理が実行されない場合を示す。演出制御装置300のVDP312を構成する内蔵ホストCPU(CPU311)は、PROM321等に内蔵されている命令またはデータをプログラムカウンタ(PC)により定められた順番に従って取り出して各種プログラムを実行している。また、CPU311(第2CPU)で実行する命令は、命令取り込み(IF)、命令解釈(ID)、命令実行(EX)、メモリアクセス(MA)、レジスタ書き込み(WB)という命令要素に分割される。そして、各命令の異なった命令要素を同時に実行することで、他の処理方法では複数ステップかかる命令実行を見かけ上1ステップで行うパイプライン処理により一連の命令が実行される。さらに、CPU311は、上記の制御フローの分岐に対応して遅延分岐命令に基づく遅延分岐処理を行っている。
図81(a)では、CPU311のプログラムカウンタ(PC)に従ってN番地、N+1番地、N+2番地、N+3番地に関連付けられた命令が順に実行され、その後N+4番地に関連づけられた命令が実行されずにM番地に関連付けられた命令が実行される場合を示している。ここで、プログラムカウンタ(PC)は、CPU311がプログラムカウンタのカウント値(番地)に係る命令取り込み(IF)を行うと、保持するカウント値(番地)に1を加算してカウント値(番地)を更新するものである。
図81(a)においては、以下の(1)から(5)の順に処理が進行する。
(1)CPU311は、プログラムカウンタ(PC)に保持されたN番地に関連付けられた通常命令(N)の命令取り込み(IF)を行い、プログラムカウンタ(PC)の番地をN+1番地に更新する。なお、通常命令とは分岐命令を含まない任意の命令である。また、番地は、メモリ(PROM321等)のアドレスである。
(2)CPU311は、プログラムカウンタ(PC)に保持されたN+1番地に関連付けられた通常命令(N+1)の命令取り込み(IF)と通常命令(N)の命令解釈(ID)を行い、プログラムカウンタ(PC)の番地をN+2番地に更新する。
(3)CPU311は、プログラムカウンタ(PC)に保持されたN+2番地に関連付けられた遅延分岐命令(遅延分岐成立:M番地に分岐)(N+2)の命令取り込み(IF)と通常命令(N+1)の命令解釈(ID)と通常命令(N)の命令実行(EX)を行い、プログラムカウンタ(PC)の番地をN+3番地に更新する。
(4)CPU311は、プログラムカウンタ(PC)に保持されたN+3番地に関連付けられた通常命令(遅延スロット)(N+3)の命令取り込み(IF)と遅延分岐命令(遅延分岐成立:M番地に分岐)(N+2)の命令解釈(ID)と通常命令(N+1)の命令実行(EX)と通常命令(N)のメモリアクセス(MA)を行う。
(5)CPU311は、遅延分岐命令(遅延分岐成立:M番地に分岐)(N+2)の命令実行(EX)によりプログラムカウンタ(PC)の番地をM番地に更新するとともに、当該M番地に関連付けられた通常命令(分岐先スロット)(M)の命令取り込み(IF)を行い、また通常命令(N+1)のメモリアクセス(MA)及び通常命令(N)のレジスタ書き込み(WB)を行う。
よって、遅延分岐命令が成立した場合には、本来予定されていた通常命令(N+4)が実行されることはないが、遅延分岐命令(N+2)の次の通常命令(遅延スロット)(N+3)は実行される。これにより、分岐時のパイプラインの乱れを軽減して命令要素の実行を迅速に行うことができる。
一方、図81(b)のように、遅延分岐命令が成立しない場合は、遅延分岐命令(N+2)の後の通常命令(N+3)及び通常命令(N+4)が順に実行される。
ここで、図81(a)の通常命令(分岐先スロット)(M)は、例えば、遊技制御装置100からのコマンドに起因するエラー/不正/呼出し設定処理(B1316、図26)、演出制御装置300の制御対象(装飾制御装置750)のエラーに起因するエラー設定処理(B11003、図78)が適用できる。すなわち、CPU311の外部で発生したエラーに対しては遅延分岐処理により対処することができ、効率良くエラー報知処理を実行することができる。
なお、遊技制御装置100を構成する遊技用マイコン111のCPU111a(第1CPU)も上記同様に一連の命令(演出制御装置300にコマンドを送信するための命令)をパイプライン処理(及び遅延分岐処理)により実行可能である。
〔例外処理〕
図82は、演出制御装置内のCPU311のCPUエラーに係るエラー処理の手順を示す図である。CPU311はCPU311自身のエラーであるCPUエラー(例外要因)が発生した場合に、実行中の命令を中断してエラー処理(例外処理)を実行する。CPUエラーには、アドレスエラー、バスエラー、レジスタバンクエラー等があるが、ここではアドレスエラーを例に説明する。アドレスエラーは、命令取り込み(IF)の際に本来命令が格納されていないような不適切なアドレスに関連付けられたデータを取り込む等の場合が該当し、当該データを命令解釈(ID)したときに検出される。
CPU311は、アドレスエラーが発生するとアドレスエラーが検出された命令(N)と命令実行(EX)前の命令(N+1)を停止させ、プログラムカウンタ(PC)による命令の実行を一時的に中断して行うシーケンス制御を含むエラー処理を実行する。
図82に示すように、プログラムカウンタ(PC)のN番地に関連付けられた命令(N)にアドレスエラーが検出される場合を考える。この場合、命令(N)の命令解釈(ID)によりアドレスエラーが検知され、当該命令(N)及びその次の命令(N+1)がキャンセルされる。しかし、アドレスエラー検知時に命令実行(EX)以降の命令要素を実行中の命令(N-1)、命令(N-2)、命令(N-3)の進行は継続される。
ここで、CPU311には、例外要因に対応した複数のエラー処理(例外サービスルーチン)のベクタアドレス(ベクタテーブルアドレスオフセット)を包含する例外処理ベクタテーブルが設定されている。
よって、命令(N-1)のレジスタ書き込み(WB)が終了すると、CPU311は、上記アドレスエラーを検知後、シーケンス制御により、当該アドレスエラーに対応するエラー処理のベクタアドレス(開始アドレス:M)を計算する命令を実行し、ステータスレジスタ内の情報(各種命令の処理の状態を表す情報)をCPU311が備える汎用レジスタのスタックに退避させる命令を実行し、プログラムレジスタ(PC)内の情報(番地)を前記スタックに退避させる命令を実行する。なお、退避するプログラムレジスタ(PC)の情報(番地)は、アドレスエラーが検知された命令に係る番地(N)となる。図82に示すように、上記シーケンス制御による一連の命令は、パイプライン処理により実行することが可能である。なお、上記シーケンス制御においては、CPU311は命令取り込み(IF)を行わず、シーケンス制御側からCPU311に送信された命令につき、命令解釈(ID)の段階から実行可能であるが、図82に示すように、命令取り込み(IF)から実行してもよい。
CPU311は、算出されたベクタアドレス(M)にジャンプするジャンプ命令[M]を実行し、当該命令の最後の命令要素(PC(WB))においてプログラムカウンタ(PC)に当該ベクタアドレス(M番地)を書き込む。なお、ベクタアドレスを計算する命令で、計算結果をレジスタとしてのプログラムカウンタ(PC)に書き込んだ場合には、ここでの命令は省略してよい(ベクタアドレスを計算する命令自体がジャンプ命令となる)。
CPU311は、ベクタアドレス(M番地)に関連付けられたエラー処理(エラー処理命令(M)、エラー処理命令(M+1)、・・・、エラー処理命令(M+k-1)、エラー処理命令(M+k))(k:整数)を開始する。なおジャンプ命令[M]とエラー処理命令(M)の間には遅延スロットがないので、ジャンプ命令[M]は遅延分岐命令には該当しない。
エラー処理を複数の命令により実行する場合は、パイプライン処理により実行することが可能である。すなわち、図81に示すように、M番地に関連付けられた命令(M)について命令取り込み(IF)を行うことでプログラムカウンタ(PC)の番地がM+1番地に更新され、M+1番地に関連付けられた命令(M+1)の命令の取り込み(IF)を行うとともに命令(M)の命令解読(ID)を行う、という態様で複数の命令を順次実行していき、エラー処理の最後の命令(M+k)まで実行することができる。
ここで、エラー処理の命令には、CPU311におけるアドレスエラー等のCPUエラーの報知をするためのエラー設定処理(図78:エラー設定処理(B11003)と同様の処理)の命令を組み込むことも可能である。エラー設定処理を組み込むことで、表示装置41やスピーカを用いてCPUエラーが発生したことを報知することができる。
エラー処理の最後の命令(M+k)の次は、アドレスエラーが検知された命令(N)を実行する。このため、図82に示すように、例えばエラー処理の最後から2番目の命令(M+k-1)をプログラムカウンタ(PC)の番地をスタックに退避させていたN番地に復帰させてジャンプ(分岐)させる遅延分岐命令(プログラムカウンタ復帰命令)とし、エラー処理の最後の命令(M+k)を、スタックに退避させていたステータスレジスタの情報(命令(N)に関連する情報など)をステータスレジスタに戻す遅延スロット(ステータスレジスタ復帰命令)として実行可能となるように構成することも好適である。これにより、最後の命令(M+k)の命令解読(ID)と同時に命令(N)の命令取り込み(IF)が可能となり、また最後の命令(M+k)の命令実行(EX)と同時に命令(N)の命令解読(ID)及び命令(N+1)の命令取り込み(IF)を行うことができる。
もちろん、エラー処理はパイプライン処理によらず実行することが可能であり、エラー処理(M+k)の終了後に命令(N)の実行を開始してもよい。この場合には、命令(M+k-1)をステータスレジスタ復帰命令とし、命令(M+k)をプログラムカウンタ復帰命令としてよい。
〔表示装置におけるエラーの表示例〕
遊技制御装置100からのコマンドに起因するエラー/不正/呼出し設定処理(B1316、図26)の内容、演出制御装置300の制御対象(装飾制御装置750)のエラーに起因するエラー設定処理(B11003、図78)の内容、CPUエラーに関するエラー設定処理の内容は、表示装置41に表示することができる。
エラー/不正/呼出し設定処理(B1316、図26)では、不正発生コマンド、不正解除コマンド、状態オフコマンド、状態オンコマンド、磁石不正報知コマンド(磁気エラーコマンド)、盤電波不正報知コマンド(盤電波エラーコマンド)が識別されている。よって各エラーを1ビットのフラグで表現し、これらを上記の順番で上ビットから並べた2進数(または16進数)のエラーコードにより表現することが可能である。例えば正常であれば「0」により表現し、異常であれば「1」と表現するものとし、不正発生コマンドにのみ異常があったと識別された場合、エラーコードは「A100000」(第1表示データ)と表示することができる。ここで「A」は、遊技制御装置100から送信されたエラーコード(演出コマンド)であることを示すものとする。
エラー設定処理(B11003、図78)では、例えば、検知信号MSW1-MSW8(図75)に係る各モータ(8個)で動作する役物がそれぞれ所定位置(初期位置)にあるか否か、装飾制御装置750と前記モータとを接続するケーブル(8本)の接続状態が良好であるか否かが識別されている。例えば、MSW1に係るモータで動作する役物が所定位置(初期位置)になく、MSW2に係るモータと装飾制御装置750とを接続するケーブルが接続不良である場合は、上記同様にビットを並べるものとすると「B10000000」(モータ)(第2表示データ)、「C01000000」(ケーブル)(第2表示データ)と表示することができる。ここで、「B」はモータのエラーコードを示すものとし、「C」はケーブルのエラーコードを示すものとする。ここで「C」では2番目のケーブルが接続不良と判定されているので、「B」の左から2番目が示すモータで動作する役物が「0」(正常)と判定されていても実際には異常であると判断できる。
CPUエラーに係るエラー設定処理では、実際に用いたベクタアドレスをそのまま表示装置41で表示するように命令を構築することも可能である。例えばアドレスエラーであれば「H00000024」(16進法)またはその下位2桁「24」(16進法)と表示することができる。よって、表示されたベクタアドレスによりCPUエラーの内容を把握することが可能である。いずれのエラーコードも、互いに重ならない条件で、表示装置41の任意の位置に表示することができる。
[第5実施形態の作用・効果]
第5実施形態に係る遊技機10によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、を備える遊技機10において、演出制御手段(演出制御装置300)が演出装置(装飾制御装置750)に送信するデータ(シリアルデータ等)の出力電圧をV1とし、演出装置(装飾制御装置750)の駆動電圧をV2とし、演出装置(装飾制御装置750)のクランプ電圧をV3とすると、V3≧V2>V1の関係を満たすことを特徴とする。
これにより、電力消費の高いクランプ電圧の電力供給源(電源装置400のDC15Vを出力するDC15V電源やDC32Vを出力するDC32V電源)に対する負担を軽減することで、演出装置(装飾制御装置750)と被駆動物(モータM1,M2、ソレノイドS)を安定的に動作させることができる。また演出装置(装飾制御装置750)の駆動電圧(V2)をクランプ電圧(V3)よりも低くすることで演出装置(装飾制御装置750)を構成するIC(シフトレジスタ、ラッチ回路等を含む集積回路)の発熱を低減することができる。なお、上記電力供給源に対する負担が小さい場合には、演出装置(装飾制御装置750)の駆動電圧の電力供給源を、クランプ電圧の電力供給源(15V,32V)と同じにしてもよい。
また本実施形態では、演出装置(装飾制御装置750)の駆動電圧(V2=12V)を、シリアルデータ信号SDATA等の信号を送信する信号線754A-754Dの電圧(V1=5V)、すなわち演出制御装置300(演出制御手段)が装飾制御装置750(演出装置)に送信するシリアルデータ等のデータの出力電圧(V1)よりも高くしている。これにより、通信用の電力供給源と駆動用の電力供給源が別になるので、データの送信と演出装置(装飾制御装置750)の動作を安定化させることができる。以上より、V3(クランプ電圧)≧V2(駆動電圧)>V1(データの出力電圧)の関係を満たすことで、電力配分が適正となり、データの送信、演出装置(装飾制御装置750)の駆動、演出装置(装飾制御装置750)に係る被駆動物(モータM1,M2、ソレノイドS)の駆動を安定化させることができる。
第5実施形態の遊技機10によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、演出制御手段(演出制御装置300)が演出装置(装飾制御装置750)に送信するデータ(シリアルデータ等)を出力するための電圧を供給する第1の電源(DC5V電源)と、演出装置(装飾制御装置750)の駆動電圧を供給する第2の電源(DC12V電源)と、演出装置(装飾制御装置750)のクランプ電圧を供給する第3の電源(DC15V電源)と、を備える遊技機10において、停電発生時に、第3の電源(DC15V電源)、第2の電源(DC12C電源)、第1の電源(DC5V電源)の順に電圧の供給を停止することを特徴とする。
上記構成により、演出装置(装飾制御装置750)の駆動が停止する前に、演出装置(装飾制御装置750)の被駆動部(モータM1,M2及びソレノイドS)の駆動が停止するのでこれらの誤動作を回避することができる。また、また演出装置(装飾制御装置750)の駆動が停止したのちにデータの送信が停止するので、演出装置(装飾制御装置750)の誤動作を回避することができる。さらにデータの送信、すなわち演出制御手段(演出制御装置300(VDP312))の動作停止が最後になるので、演出制御手段(演出制御装置300(VDP312))内の処理時間を確保して演出制御手段(演出制御装置300(VDP312))内のエラーの発生を抑制することができる。以上より、演出制御手段(演出制御装置300)及び演出装置(装飾制御装置750)の動作を安定化させることができる。
第5実施形態の遊技機10によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、を備える遊技機10において、演出装置(装飾制御装置750)には、第1の被駆動部(モータS1,S2)を駆動させる第1の演出装置(ドライバ751、ドライバ752)と、第2の被駆動部(ソレノイドS)を駆動させるとともに第1の演出装置(ドライバ751、ドライバ752)の後段に接続された第2の演出装置(ドライバ753)と、を含み、演出制御手段(演出制御装置300)は、演出装置(装飾制御装置750)にシリアルデータを送信し、第1の演出装置(ドライバ751、ドライバ752)は、シリアルデータの後段を取り込んで第1の被駆動部(モータM1,M2)を駆動させるとともにシリアルデータの前段を第2の演出装置(ドライバ753)に送信し、第2の演出装置(ドライバ753)は、シリアルデータの前段を取り込んで第2の被駆動部(ソレノイドS)を駆動させ、第1の被駆動部(モータM1,M2)と第2の被駆動部(ソレノイドS)は、駆動態様が互いに異なることを特徴とする。
上記構成により、一つのシリアルデータ信号(SDATA)で駆動態様の異なる複数の被駆動部(モータM1,M2、ソレノイドS)を同時に駆動制御できるので、演出制御装置300は、複数の(互いに異なるクランプ電圧を駆動する複数種類の)役物の駆動制御を容易に行うことができる。
第5実施形態において、第1の演出装置(ドライバ751,752)と第2の演出装置(ドライバ753)は、クランプ電圧が互いに異なることを特徴とする。第1の演出装置(ドライバ751,752)と第2の演出装置(ドライバ753)とで、クランプ電圧が互いに異なっていても、これらを安定的に駆動させることができる。
第5実施形態において、第1の被駆動部は、モータM1,M2であり、第2の被駆動部は、ソレノイドSであることを特徴とする。これにより、一つの演出装置(装飾制御装置750)において、モータM1,M2及びソレノイドSを安定的に動作させることができる。
第5実施形態において、第1の演出装置(ドライバ751,752)のクランプ電圧の供給源(15V端子(電源装置400(DC15V電源)))と第1の演出装置(ドライバ751,752)の間には逆流防止手段(ツェナーダイオード762)が配置されている。これにより、大電流を用いるモータM1,M2からの電流の逆流を防止できる。
第5実施形態の遊技機10によれば、遊技制御手段(遊技制御装置100)からの指令に対応して演出装置(装飾制御装置750)を制御する演出制御手段(演出制御装置300)を備える遊技機10において、演出制御手段(演出制御装置300)は、信号を伝達可能な信号線(例えば信号線763A(図74)、信号線767A(図75))を備え、信号線(例えば、信号線763A(図74)、信号線767A(図75))には複数の電子部品((プルアップ抵抗764A、抵抗765A、コンデンサ766A)(図74)、(プルアップ抵抗768A、抵抗769A)(図75))が介装され、複数の電子部品((プルアップ抵抗764A、抵抗765A、コンデンサ766A)(図74)、(プルアップ抵抗768A、抵抗769A)(図75))は、信号線(信号線763A(図74)、信号線767A(図75))における電流に沿った向きに揃えて実装されていることを特徴とする。
上記構成により、一つの信号線(例えば、信号線763A(図74)、信号線767A(図75))に対して実装する電子部品((プルアップ抵抗764A、抵抗765A、コンデンサ766C)(図74)、(プルアップ抵抗768A、抵抗769A)(図75))の向きを電流の向きに合わせて実装することで信号線(例えば、信号線763A(図74)、信号線767A(図75))の途中に実装される電子部品((プルアップ抵抗764A、抵抗765A、コンデンサ766C)(図74)、(プルアップ抵抗768A、抵抗769A)(図75))の向きからチェック対象を予測しやすくなり、電子部品及び信号線のチェック作業の効率を向上させることができる。
第5実施形態の遊技機10によれば、遊技制御手段(遊技制御装置100)からの指令に対応して演出装置(装飾制御装置750)を制御する演出制御手段(演出制御装置300)を備える遊技機10において、演出制御手段(演出制御装置300)は、信号を伝達可能な複数の信号線(信号線763A-763D(図74)、信号線767A-767I(図75))を備え、信号線(信号線763A-763D(図74)、信号線767A-767I(図75))には電子部品(例えば、抵抗765A-765D(図74)、抵抗769A-769I(図75))が介装され、電子部品(例えば、抵抗765A-765D(図74)、抵抗769A-769I(図75))は、信号線(信号線763A-763D(図74)、信号線767A-767I(図75))における電流に沿った向きに揃えて実装されていることを特徴とする。
上記構成により、複数の信号線(信号線763A-763D(図74)、信号線767A-767I(図75))において互いに対応する電子部品(例えば、プルアップ抵抗764A-764D(図74)、プルアップ抵抗768A-768I(図75))の間で、電流の向きに沿った向きに揃えて実装することより、互いに対応する電子部品(例えば、プルアップ抵抗764A-764D(図74)、プルアップ抵抗768A-768I(図75))の識別を容易に行うことができる。
第5実施形態において、演出制御手段(演出制御装置300)は、演出装置を制御する信号を出力する演算回路(VDP312)と、信号線(信号線763A-763D(図74)、信号線767A-767I(図75))を介して、演算回路(VDP312)に向けて信号を入力する入力回路(音量調節スイッチ335(図74)、モータセンサ又はプッシュスイッチ(図75))と、を備えることを特徴とする。
上記構成により、演算回路(VDP312)と入力回路(音量調節スイッチ335(図74)、モータセンサ又はプッシュスイッチ(図75))との間に介装された電子部品のチェック作業の効率を向上させることができる。
第5実施形態において、電子部品は、抵抗またはコンデンサであることを特徴とする。これにより、極性を持たない電子部品のチェック作業の効率を向上させることができる。
第5実施形態において、電子部品(抵抗、またはコンデンサ)は、所定の端子(1ピン)を備える同種の部品であり、所定の端子(1ピン)を高電圧側又は低電圧側に揃えて実装されていることを特徴とする。これにより、新たな構成を用いることなく、電子部品のチェック作業の効率を向上させることができる。
第5実施形態の遊技機10によれば、遊技制御手段(遊技制御装置100)からの指令に対応した差動信号を演出装置(表示装置41)に出力する演出制御手段(演出制御装置300)を備える遊技機10において、差動信号を送信する一対の信号線(信号線774A及び信号線774B、信号線774C及び信号線774D、信号線774E及び信号線774F、信号線774G及び信号線774H、信号線774I及び信号線774J)に差動信号の電圧の上限と下限を規定する電圧規定手段(クランプダイオード回路776A-776C)を配置したことを特徴とする。
上記構成により、電圧規定手段(例えば、クランプダイオード回路776A-776C)により差動信号の電圧の上限(3.3V)と下限(0V)が規定されるので、差動信号の一方と差動信号の他方が互いに逆相であって同じ電圧の振幅を持った状態が維持され、差動信号の差分により得られるデータ(画像データ)を安定化させることができる。
第5実施形態の遊技機10によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、を備える遊技機10において、演出制御手段(演出制御装置300)は、遅延分岐命令による遅延分岐処理を包含可能なパイプライン処理を実行するCPU311を備え、CPU311は、CPU311自身のエラーであるCPUエラーが発生した場合に、遅延分岐命令によらない分岐処理を含む例外処理により、分岐先の処理でCPUエラーに対処し、CPUエラー以外の遊技機10のエラーである遊技機エラーが発生した場合に、遅延分岐処理によって、分岐先の処理で当該遊技機エラーを報知可能であることを特徴とする。
これにより、遅延分岐命令により、分岐時のパイプラインの乱れを軽減して、効率よくエラー報知処理を実行することができる。またCPU311自身に起因するCPUエラー(例外処理)が発生した場合は、パイプライン処理よりも例外処理を優先的に行うことにより、早期にCPUエラーの対処を行うことができる。
第5実施形態において、CPU311は、パイプライン処理において一連の命令を実行中に、CPUエラーが発生した場合に、一連の命令のうち実行中の命令(例えば命令(N-1))の終了後に例外処理を実行し、例外処理の終了後に、一連の命令のうち、最後に行った命令(例えば命令(N-1))の次の命令(例えば命令(N))を実行することを特徴とする。これにより、一連の命令を確実に実行することができる。
第5実施形態において、遊技機エラーは、演出装置(装飾制御装置750)に発生したエラーであることを特徴とする。これにより、演出装置(装飾制御装置750)に発生したエラーの検出は遊技制御装置100が行う必要がないので、遊技制御装置100の負担増を回避できる。
第5実施形態の遊技機10によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、を備える遊技機10において、演出制御手段(演出制御装置300)は、タイマ割込み処理(可動体制御タイマ割込み処理(図79))において遅延分岐命令による遅延分岐処理を包含可能なパイプライン処理を実行するCPU311を備え、CPU311は、CPU311自身のエラーであるCPUエラーが発生した場合に、遅延分岐命令によらない分岐処理を含む例外処理により、分岐先の処理で当該CPUエラーに対処し、CPUエラー以外の遊技機10のエラーである遊技機エラーが発生した場合に、遅延分岐処理によって、分岐先の処理で当該遊技機エラーを報知可能であることを特徴とする。
これにより、遅延分岐命令により、分岐時のパイプラインの乱れを軽減して、効率よくエラー報知処理を実行することができる。またCPU311自身に起因するCPUエラー(例外処理)が発生した場合は、パイプライン処理よりも例外処理を優先的に行うことにより、早期にCPUエラーの対処を行い、タイマ割込み処理(可動体制御タイマ割込み処理(図79))を再開することができる。
第5実施形態において、CPU311は、タイマ割込み処理(可動体制御タイマ割込み処理(図79))において、遅延分岐処理によって、分岐先の処理で演出装置(装飾制御装置750)の制御を実行することを特徴とする。これにより、遅延分岐命令により、分岐時のパイプラインの乱れを軽減して、効率よく演出装置(装飾制御装置750)の制御を実行することができる。
第5実施形態の遊技機によれば、遊技の演出を行う演出装置(装飾制御装置750)と、遊技制御手段(遊技制御装置100)からの指令に対応して、演出装置(装飾制御装置750)を制御可能な演出制御手段(演出制御装置300)と、を備える遊技機10において、遊技制御手段(遊技制御装置100)は、遊技機10に発生した遊技機エラーを監視して、演出制御手段(演出制御装置300)に指令して当該遊技機エラーを報知させる第1CPU(CPU111a)を備え、演出制御手段(演出制御装置300)は、遅延分岐命令による遅延分岐処理を包含可能なパイプライン処理を実行する第2CPU(CPU311)を備え、第2CPU(CPU311)は、第2CPU自身(CPU311)のエラーであるCPUエラーが発生した場合に、遅延分岐命令によらない分岐処理を含む例外処理によって、分岐先の処理で当該CPUエラーに対処し、演出装置(装飾制御装置750)に関連するエラーであり、遊技機エラーとは異なる演出装置エラーが発生した場合に、遅延分岐処理によって、分岐先の処理で当該演出装置エラーを報知可能であることを特徴とする。
これにより、遅延分岐命令により、分岐時のパイプラインの乱れを軽減して、効率よく演出装置エラーの報知を実行することができる。また第2CPU(CPU311)自身に起因するCPUエラー(例外処理)が発生した場合は、パイプライン処理よりも例外処理を優先的に行うことにより、早期にCPUエラーの対処を行うことができる。
第5実施形態において、第1CPU(CPU111a)は、遊技機エラーを示す第1指令(演出コマンド)を第2CPU(CPU311)に送信し、第2CPU(CPU311)は、第1指令(演出コマンド)に対応する第1表示データ(エラーコード「A100000」)、及び演出装置(装飾制御装置750)に関連する演出装置エラーが発生したことを示す第2表示データ(エラーコード「B10000000」、エラーコード「C01000000」)を表示装置41に送信する制御を実行し、第1表示データ(エラーコード「A100000」)及び第2表示データ(エラーコード「B10000000」、エラーコード「C01000000」)は、表示装置41において互いに識別可能に表示されることを特徴とする。
これにより、遊技機エラー、演出装置(装飾制御装置750)に関連する演出装置エラーを遊技場関係者が容易に識別することができる。
なお、本発明は、以上説明した実施形態に限定されることなく、その技術的思想の範囲内において種々の変形や変更が可能であり、それらも本発明の技術的範囲に含まれることが明白である。例えば、複数の実施形態を組合せることも可能である。また、例えば、本発明を他の種類の遊技機(スロットマシンなど)に適用することもできる。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味及び内容の範囲でのすべての変更が含まれることが意図される。
例えば、上述の実施形態をスロットマシンに適用する場合において、遊技に使用する遊技媒体は、遊技球に代えてメダル(コイン)になり、賞球数はメダルの払い出し枚数に代えられる。そして、スロットマシンでは、性能情報としての出玉率(ベース)は、スロットマシンへのメダルの投入枚数に対する払い出し枚数の比率(%)となり、役物比率は、所定期間に払い出したメダルの枚数のうち、各種ボーナスにより払い出した枚数の比率(%)となる。