(本発明の例示的な実施形態)
遊技機1は、外からの力に抵抗してそれ自身を保つことのできる多くの部品を組み合わせてできており、各部品が相対的かつ定められた機能を果たす。その機能を果たす過程でにおいて、遊技機1の制御装置は、外部から供給されたエネルギーを有効な仕事に変換しつつ、所望の機能を適宜達成することで、所定の遊技を遊技者に対して提供する。
本明細書において、「デバイス」とは、遊技機1が有する、所定の機能を備える各部品(機構部品、電子部品を含む)のいずれかまたはその組合せをいう。遊技機1が有する制御装置は、遊技機1全体がその所望の機能を達成するために、遊技機1が有するデバイスを適切なタイミングで作動させる。なお、デバイスは、遊技機の内部に設置されるものとは限らず、遊技機の外面、外側に露出したものに限られない。
本発明は、遊技機1の制御用の信号が、制御装置からデバイスに向けてシリアル伝送される際に、制御対象であるデバイスの誤作動を抑制・回避をする手段を有する遊技機(特に、パチンコ遊技機)に係るものである。これ以降、本発明の技術的意義をより明確なものとするために、本発明の遊技機の具体的な実施形態を例示する。ここで示される実施形態は、あくまでも例示的なものであって、本発明がそこで記載された具体的な実施形態に限定されることを意図するものではない。
(遊技機の基本構成)
図1において、遊技機1は、例えば遊技者の指示操作により打ち出された遊技球が入賞すると賞球を払い出すように構成されたパチンコ遊技機である。この遊技機1は、遊技球が打ち出される遊技盤2と、遊技盤2を囲む枠部材5とを備えている。枠部材5は、軸支側に設けられた蝶番を中心に、遊技機1の主部に対して開閉可能に構成され、その枠部材5に対して遊技盤2が着脱可能に取り付けられている。そして、枠部材5の前面側となる所定位置(例えば、軸支側とは反対側となる端部)には錠部43が設けられており、錠部43を開錠することによって枠部材5を開くことが可能となる。
遊技盤2は、その前面に、遊技球により遊技を行うための遊技領域20が形成されている。遊技領域20には、下方(発射装置211;図4参照)から発射された遊技球が遊技盤2の主面に沿って上昇して遊技領域20の上部位置へ向かう通路を形成するレール部材(図示せず)を備えている。
また、遊技盤2には、遊技者により視認され易い位置に、各種演出のための画像を表示する画像表示器21が配設されている。画像表示器21は、遊技者によるゲームの進行に応じて、例えば、装飾図柄を表示することによって図柄抽選結果(図柄変動結果)を遊技者に報知したり、キャラクタの登場やアイテムの出現による予告演出を表示したりする。なお、画像表示器21は、液晶表示装置、EL(Electro Luminescence:電界発光)表示装置、LED(Light Emitting Diode:発光ダイオード)ドット表示装置、および7セグメントディスプレイ(以下、7セグ表示装置と記載する)等によって構成されるが、他の任意の表示装置を利用してもよい。さらに、遊技盤2の前面には、各種の演出に用いられる可動役物22および盤ランプ23が設けられている。可動役物22は、遊技盤2に対して可動に構成され、遊技者によるゲームの進行に応じて所定の動作で移動させることによって各種の演出を行う。また、盤ランプ23は、遊技者によるゲームの進行に応じて発光することによって光による各種の演出を行う。
遊技領域20には、遊技球が下方へ落下する方向を変化させる遊技くぎおよび風車(共に、図示せず)等が配設されている。また、遊技領域20には、入賞や抽選に関する種々の役物が所定の位置に配設されている。なお、図1においては、入賞や抽選に関する種々の役物の一例として、第1始動口25a、第2始動口25b、ゲート27、大入賞口28、および普通入賞口29が遊技盤2に配設されている。さらに、遊技領域20には、遊技領域20に打ち出された遊技球のうち入賞口に入賞しなかった遊技球を、遊技領域20の外に排出する排出口24が配設されている。
第1始動口25aは、遊技球が入賞して第1特別図柄抽選(大当たり抽選)が始動する。第1始動口25aは、予め定められた特別電動役物(大入賞口28)および/または予め定められた特別図柄表示器(例えば、後述する第1特別図柄表示器31a)を作動させることとなる、遊技球の入賞に係る入賞口である。第2始動口25bは、遊技球が入ると入賞して第2特別図柄抽選(大当たり抽選)が始動する。第2始動口25bは、予め定められた特別電動役物(大入賞口28)および/または予め定められた特別図柄表示器(例えば、後述する第2特別図柄表示器31b)を作動させることとなる、遊技球の入賞に係る入賞口である。ゲート27は、遊技球が通過すると普通図柄抽選(開閉抽選)が始動する。
第2始動口25bは、普通電動役物の一例として、遊技球の入口近傍に電動チューリップ26を備えている。電動チューリップ26は、チューリップの花を模した一対の羽根部を有しており、後述する電動チューリップ開閉部112(例えば、電動ソレノイド)の駆動によって当該一対の羽根部が左右に開閉し、開閉動作と共に点灯または点滅する。電動チューリップ26の一対の羽根部が閉じていると、第2始動口25bの入口がほぼ閉ざされるため、遊技球が第2始動口25bへほとんど入らない。一方、電動チューリップ26の一対の羽根部が左右に開くと、第2始動口25bの入口へ案内される開口幅が拡大するため、遊技球が始動口25へ入り易くなる。そして、電動チューリップ26は、ゲート27を遊技球が通過することによって普通図柄抽選に当選すると、点灯または点滅しながら一対の羽根部が規定時間開き、規定回数だけ開閉する。
大入賞口28は、第2始動口25bの下方に位置し、特別図柄抽選(第1特別図柄抽選、第2特別図柄抽選)の結果に応じて開放する。大入賞口28は、通常は閉状態であり遊技球が入ることがない状態となっているが、特別図柄抽選の結果に応じて遊技盤2の主面から突出傾斜して開状態となって遊技球が入り易い状態となる。例えば、大入賞口28は、所定条件(例えば、29.5秒経過または遊技球10個の入賞や開放累積時間が1.8秒以内)を満たすまで開状態となるラウンドを、所定回数(例えば、15回または1回)だけ繰り返す。また、普通入賞口29は、遊技球が入賞しても抽選が始動しない。
また、遊技盤2の所定位置(例えば、右下)に、上述した特別図柄抽選や普通図柄抽選の結果や保留数に関する表示を行う表示器3が配設されている。表示器3の詳細については、後述する。
なお、図1に示した遊技機1は、遊技領域20に2つの始動口(第1始動口25a、第2始動口25b)が配設されているが、遊技球が入ると入賞して特別図柄抽選が開始される始動口を1つだけ、または3つ以上設けてもかまわない。また、遊技機1は、遊技領域20に1つの大入賞口28が配設されているが、大入賞口28と同様の機能を有する大入賞口を複数設けてもかまわない。
また、後述により明らかとなるが、遊技機1は、所定の条件下で、特別図柄抽選時に大当たりが抽選される大当たり確率が変動することがある。例えば、遊技機1は、上記大当たり確率が相対的に低い状態(低確状態;例えば大当たり確率が300分の1)から上記大当たり確率が相対的に高い状態(高確状態;例えば大当たり確率が30分の1)へ変動することがある。また、遊技機1は、所定の条件下で、特別図柄抽選時の特別図柄変動時間が短縮されたり、普通図柄抽選時の当選する確率が高まったり、普通図柄抽選時の普通図柄変動時間が短縮されたり、電動チューリップ26の羽根部の開時間が延長されたり、電動チューリップ26の羽根部が開閉する回数が増えたりする(電チューサポート)場合がある。
ここで、賞球の払い出しについて説明する。第1始動口25a、第2始動口25b、大入賞口28、および普通入賞口29に遊技球が入る(入賞)と、遊技球が入賞した場所に応じて、1つの遊技球当たり規定個数の賞球が払い出される。例えば、第1始動口25aまたは第2始動口25bに遊技球が入賞すると4個の賞球、大入賞口28に遊技球が入賞すると13個の賞球、普通入賞口29に遊技球が入賞すると10個の賞球がそれぞれ払い出される。なお、ゲート27を遊技球が通過したことを検出しても、それに連動した賞球の払い出しはない。
遊技機1の前面となる枠部材5には、ハンドル51、レバー52、停止ボタン53、取り出しボタン54、スピーカ55、枠ランプ56、演出ボタン57、演出キー58、皿59、および錠部43等が設けられている。
遊技者がハンドル51に触れてレバー52を時計方向に回転させる操作を行うと、その操作角度に応じた打球力にて所定の時間間隔(例えば、1分間に100個)で、発射装置211(図4参照)が遊技球を電動発射する。皿59(図3参照)は、遊技機1の前方に突出して設けられ、発射装置211に供給する遊技球を一時的に溜めておく。また、皿59には、上述した賞球が払い出される。そして、皿59に溜められた遊技球は、遊技者のレバー52による操作と連動したタイミングで、供給装置(図示せず)によって1つずつ発射装置211に供給される。なお、皿59は、上下皿一体で構成してもいいし、上皿と下皿とを分離して構成してもかまわない。また、ハンドル51は、所定条件下で発光させてもかまわない。
停止ボタン53は、ハンドル51の下部側面に設けられ、ハンドル51に遊技者が触れてレバー52を時計方向に回転させている状態であっても、遊技者に押下されることによって遊技球の発射を一時的に停止させる。取り出しボタン54は、皿59が設けられた位置近傍の前面に設けられ、遊技者に押下されることによって皿59に溜まっている遊技球を箱(図示せず)に落下させる。
スピーカ55および枠ランプ56は、それぞれ遊技機1の遊技状態や状況を告知したり各種の演出を行ったりする。スピーカ55は、楽曲や音声、効果音による各種の演出を行う。また、枠ランプ56は、点灯/点滅によるパターンや発光色の違い等によって光による各種の演出を行う。なお、枠ランプ56は、光の照射方向を変更可能にして、当該照射方向を変えることによる演出を行ってもかまわない。
次に、図2を参照して、遊技機1に設けられる表示器3について説明する。図2において、表示器3は、第1特別図柄表示器31a、第2特別図柄表示器31b、第1特別図柄保留表示器32a、第2特別図柄保留表示器32b、普通図柄表示器33、普通図柄保留表示器34、および遊技状態表示器35を備えている。
第1特別図柄表示器31aは、第1始動口25aに遊技球が入賞することに対応して表示図柄が変動して表示される。例えば、第1特別図柄表示器31aは、7セグ表示装置で構成され、第1始動口25aに遊技球が入賞した場合、特別図柄(第1特別図柄)を変動表示してその抽選結果を表示する。第2特別図柄表示器31bは、第2始動口25bに遊技球が入賞することに対応して表示図柄が変動して表示される。例えば、第2特別図柄表示器31bは、7セグ表示装置で構成され、第2始動口25bに遊技球が入賞した場合、特別図柄(第2特別図柄)を変動表示してその抽選結果を表示する。普通図柄表示器33は、ゲート27を遊技球が通過することに対応して表示図柄が変動して表示される。例えば、普通図柄表示器33は、LED表示装置で構成され、遊技球がゲート27を通過した場合、普通図柄を変動表示してその抽選結果を表示する。
第1特別図柄保留表示器32aは、第1特別図柄抽選を保留している回数を表示する。第2特別図柄保留表示器32bは、第2特別図柄抽選を保留している回数を表示する。普通図柄保留表示器34は、普通図柄抽選を保留している回数を表示する。
例えば、第1特別図柄表示器31a、第2特別図柄表示器31bまたは普通図柄表示器33によって表示図柄が変動表示されている期間(入賞1回分の変動表示が行われている間)に、さらに他の遊技球が入賞した場合、その入賞した遊技球に対する表示図柄の変動表示は、先に入賞した遊技球に対する変動表示が終了するまで、規定回数(例えば、4回)を限度に保留される。このような保留がなされていることおよびその保留の数(未抽選回数)が、第1特別図柄保留表示器32a、第2特別図柄保留表示器32bおよび普通図柄保留表示器34に表示される。例えば、第1特別図柄保留表示器32a、第2特別図柄保留表示器32bおよび普通図柄保留表示器34は、それぞれ列設されたLED表示装置で構成され、その点灯態様によって保留回数が表示される。
遊技状態表示器35は、遊技機1の電源投入時点における遊技状態を表示する。遊技機1には複数の遊技状態(例えば、通常遊技状態、確変遊技状態、時短遊技状態、潜伏遊技状態)が設定されている。そして、遊技機1の電源投入時点においては、遊技状態表示器35によってその遊技状態が報知される。例えば、遊技状態表示器35は、複数のLED表示装置で構成され、その点灯態様によって遊技状態が表示される。
次に、図3を参照して、遊技機1に設けられる入力装置について説明する。図3において、遊技機1には、入力装置の一例として、演出ボタン57および演出キー58が設けられている。
演出ボタン57および演出キー58は、それぞれ遊技者が演出に対する入力を行うために設けられている。演出ボタン57は、遊技機1の前方に突出した皿59の上面脇部に設けられる。演出キー58は、中央キーと略十字に配列された複数のキーとを有し、演出ボタン57に隣接して皿59の上面脇部に設けられる。例えば、演出キー58は、その中央に1つの中央キーを配置し、中央キーの周囲に略同一形状の4つの周囲キーを配置して構成されている。演出ボタン57および演出キー58は、それぞれ遊技者に押下されることによって所定の演出が行われる。例えば、遊技者は、演出キー58の4つの周囲キーを操作することにより、画像表示器21に表示されている複数の画像のいずれかを選ぶことが可能である。また、遊技者は、演出キー58の中央キーを操作することにより、選んだ画像を情報として入力することが可能である。
また、上記内枠体の背面側には、払出用の遊技球を溜めておく球タンクや遊技球を皿59に払い出す払出機構が設けられ、各種の基板等が取り付けられている。例えば、遊技盤2の後面には、メイン基板およびサブ基板等が配設されている。
具体的には、メイン基板には、内部抽選および当選の判定等を行うメイン制御部100が構成されたメイン制御基板、遊技球を遊技領域20の上部へ発射する発射装置211を制御する発射制御部200が構成された発射制御基板、および賞球の払出を制御する払出制御部300が構成された払出制御基板等が配設されている。このメイン基板は、開封されることにより痕跡が残るように透明部材で構成されたメイン基板ケースによって密封されている。
また、サブ基板には、演出を統括的に制御する演出制御部400が構成された演出制御基板、画像や音による演出を制御する画像音響制御部500が構成された画像音響制御基板、および各種のランプ(枠ランプ56、盤ランプ23)や可動役物22による演出を制御するランプ制御部600が構成されたランプ制御基板等が配設されている。また、遊技盤2の後面には、遊技機1に供給された100VのAC電源をDC電源に変換して上述した各種の基板等に出力するスイッチング電源が配設されている。
(遊技機における制御装置)
次に、図4を参照して、遊技機1での動作制御や信号処理を行う制御装置について説明する。なお、図4は、遊技機1に設けられた制御装置の構成の一例を示すブロック図である。また、図4における「SW」との表記は、「スイッチ」を示す。
図4において、遊技機1の制御装置は、メイン制御部100、発射制御部200、払出制御部300、演出制御部400、画像音響制御部500、およびランプ制御部600を備えている。
メイン制御部100は、CPU(Central Processing Unit;中央処理装置)101、ROM(Read Only Memory)102、およびRAM(Random Access Memory)103を備えている。CPU101は、内部抽選および当選の判定等の払い出し賞球数に関連する各種制御を行う際の演算処理を行う。ROM102は、CPU101にて実行されるプログラムや各種データ等が記憶され、RAM103は、CPU101の作業用メモリ等として用いられる。以下、メイン制御部100の主な機能について説明する。
メイン制御部100は、第1始動口25aまたは第2始動口25bに遊技球が入賞すると特別図柄抽選(第1特別図柄抽選または第2特別図柄抽選)を行い、特別図柄抽選での当選か否かを示す判定結果データを演出制御部400に送る。また、メイン制御部100は、特別図柄抽選に応じて決定した当選確率の変動設定(例えば300分の1から30分の1への変動設定)および特別図柄変動時間の短縮設定を示すデータや、普通図柄抽選に応じて決定した普通図柄変動時間の短縮設定を示すデータを、演出制御部400に送る。
メイン制御部100は、電動チューリップ26の羽根部が開状態となる開時間や羽根部が開閉する回数、さらには羽根部が開閉する開閉時間間隔を制御する。また、メイン制御部100は、遊技球が第1始動口25aへ入賞したときの保留回数や、遊技球が第2始動口25bへ入賞したときの保留回数や、遊技球がゲート27を通過したときの保留回数を管理する。
メイン制御部100は、特別図柄抽選の結果に応じて、大入賞口28の開閉動作を制御する。例えば、メイン制御部100は、所定条件(例えば、29.5秒経過または遊技球10個の入賞や開放累積時間が1.8秒以内)を満たすまで、大入賞口28が突出傾斜して開状態とするラウンドを所定回数(例えば15回または1回)だけ繰り返すように制御する。また、メイン制御部100は、大入賞口28が開閉する開閉時間間隔を制御する。
メイン制御部100は、第1始動口25a、第2始動口25b、大入賞口28、および普通入賞口29に遊技球が入賞すると、遊技球が入賞した場所に応じて1つの遊技球当たり所定数の賞球を払い出すように、払出数を払出制御部300に対して指示する。例えば、メイン制御部100は、第1始動口25aまたは第2始動口25bに遊技球が入賞すると4個の賞球、大入賞口28に遊技球が入賞すると13個の賞球、普通入賞口29に遊技球が入賞すると10個の賞球をそれぞれ払い出すように、払出制御部300に指示命令(コマンド)を送る。なお、メイン制御部100は、ゲート27を遊技球が通過したことを検出しても、それに連動した賞球の払い出しを払出制御部300に指示しない。払出制御部300がメイン制御部100の指示に応じて賞球の払い出しを行った場合、払出制御部300から払い出した賞球の個数に関する情報がメイン制御部100へ送られる。そして、メイン制御部100は、払出制御部300から取得した情報に基づいて、払い出した賞球の個数を管理する。
メイン制御部100は、発射制御部200を介して、遊技球を発射する発射装置211を制御する。例えば、メイン制御部100は、所定の条件に基づいて、発射装置211が遊技球を発射する動作を許可する信号を、払出制御部300を介して発射制御部200へ送信する。
上述した機能を実現するために、メイン制御部100には、第1始動口スイッチ111a、第2始動口スイッチ111b、電動チューリップ開閉部112、ゲートスイッチ113、大入賞口スイッチ114、大入賞口開閉部115、普通入賞口スイッチ116、第1特別図柄表示器31a、第2特別図柄表示器31b、第1特別図柄保留表示器32a、第2特別図柄保留表示器32b、普通図柄表示器33、普通図柄保留表示器34、および遊技状態表示器35が接続されている。
第1始動口スイッチ111aは、第1始動口25aへ遊技球が入賞したことを検出して、その検出信号をメイン制御部100へ送る。第2始動口スイッチ111bは、第2始動口25bへ遊技球が入賞したことを検出して、その検出信号をメイン制御部100へ送る。電動チューリップ開閉部112は、メイン制御部100から送られる制御信号に応じて、電動チューリップ26の一対の羽根部を開閉する。ゲートスイッチ113は、ゲート27を遊技球が通過したことを検出して、その検出信号をメイン制御部100へ送る。大入賞口スイッチ114は、大入賞口28へ遊技球が入賞したことを検出して、その検出信号をメイン制御部100へ送る。大入賞口開閉部115は、メイン制御部100から送られる制御信号に応じて、大入賞口28を開閉する。普通入賞口スイッチ116は、普通入賞口29へ遊技球が入賞したことを検出して、その検出信号をメイン制御部100へ送る。
また、メイン制御部100は、第1始動口25aへの遊技球の入賞により始動した第1特別図柄抽選の結果を、第1特別図柄表示器31aに表示する。メイン制御部100は、第1始動口25aへの遊技球の入賞に応じて抽選を保留にしている保留回数を、第1特別図柄保留表示器32aに表示する。メイン制御部100は、第2始動口25bへの遊技球の入賞により始動した第2特別図柄抽選の結果を、第2特別図柄表示器31bに表示する。メイン制御部100は、第2始動口25bへの遊技球の入賞に応じて抽選を保留にしている保留回数を、第2特別図柄保留表示器32bに表示する。メイン制御部100は、ゲート27への遊技球の通過により始動した普通図柄抽選の結果を、普通図柄表示器33に表示する。そして、メイン制御部100は、ゲート27への遊技球の通過に応じて抽選を保留にしている保留回数を、普通図柄保留表示器34に表示する。
さらに、メイン制御部100は、遊技機1を設置している店(ホール)に設けられたホストコンピュータに対して、各種の情報を送信する。そして、メイン制御部100は、払出制御部300から取得した、払い出した賞球数に関する情報やメイン制御部100の状態等を示す情報を、上記ホストコンピュータに送信する。
発射制御部200は、CPU201、ROM202、およびRAM203を備えている。CPU201は、発射装置211に関連する各種制御を行う際の演算処理を行う。ROM202は、CPU201にて実行されるプログラムや各種データ等が記憶され、RAM203は、CPU201の作業用メモリ等として用いられる。
レバー52は、その位置が中立位置にある場合、信号を出力せずに発射停止状態となる。そして、レバー52は、時計方向に回転操作されると、その回転角度に応じた信号を打球発射指令信号として発射制御部200に出力する。発射制御部200は、打球発射指令信号に基づいて、発射装置211の発射動作を制御する。例えば、発射制御部200は、レバー52の回転角度が増すほど、遊技球が発射される速度が速くなるように、発射装置211の動作を制御する。また、発射制御部200は、メイン制御部100から発射を許可する信号を受信することによって、発射装置211の発射動作が可能となる。一方、発射制御部200は、停止ボタン53が押下された信号が出力されたり、メイン制御部100から発射を停止する制御信号が出力されたりした場合、発射装置211が遊技球を発射する動作を停止させる。
払出制御部300は、CPU301、ROM302、およびRAM303を備えている。CPU301は、払出球の払い出しを制御する際の演算処理を行う。ROM302は、CPU301にて実行されるプログラムや各種データ等が記憶され、RAM303は、CPU301の作業用メモリ等として用いられる。そして、払出制御部300は、メイン制御部100から送られたコマンドに基づいて、払出球の払い出しを制御する。
具体的には、払出制御部300は、メイン制御部100から、遊技球が入賞した場所に応じた所定数の賞球を払い出すコマンドを取得する。そして、コマンドに指定された数だけの賞球を払い出すように払出駆動部311を制御する。ここで、払出駆動部311は、遊技球の貯留部から遊技球を送り出す駆動モータを備える駆動ユニット等で構成される。
また、払出制御部300は、上記ホストコンピュータに対して各種の情報を送信する。例えば、払出制御部300は、払出駆動部311に対して払い出すように指示した賞球数に関する情報や実際に払い出された賞球数に関する情報等を、ホストコンピュータに送信する。また、払出制御部300は、メイン制御部100に対しても、同様の情報を送信する。
演出制御部400は、CPU(演出制御CPU)401、ROM402、RAM403、およびRTC(リアルタイムクロック)404を備えている。また、演出制御部400には、演出ボタン57および演出キー58が接続されている。CPU401は、演出を制御する際の演算処理を行う。ROM402は、CPU401にて実行されるプログラムや各種データ等が記憶され、RAM403は、CPU401の作業用メモリ等として用いられる。RTC404は、現時点の日時を計測する。
演出制御部400は、メイン制御部100から送られる特別図柄抽選結果等を示すデータに基づいて、演出内容を設定する。その際、演出制御部400は、遊技者によって演出ボタン57または演出キー58が押下操作された場合、当該操作入力に応じて演出内容を設定する場合もある。また、演出制御部400は、遊技機1に対する遊技が所定期間以上中断された場合、演出の1つとして客待ち用の演出を設定する。
さらに、メイン制御部100が、特別図柄抽選時の当選確率を変動させたことを示すデータを出力した場合、特別図柄抽選時の特別図柄変動時間を短縮させたことを示すデータを出力した場合、および普通図柄抽選時の普通図柄変動時間を短縮させたことを示すデータを出力した場合、演出制御部400は、それぞれ出力されたデータが示す内容に対応させて、演出内容を設定する。そして、演出制御部400は、設定した演出内容の実行を指示するコマンドを画像音響制御部500およびランプ制御部600にそれぞれ送る。
画像音響制御部500は、CPU(画像音響制御CPU)501、ROM502、およびRAM503を備えている。CPU501は、演出内容を表現する画像を制御する際の演算処理を行う。ROM502は、CPU501にて実行されるプログラムや各種データ等が記憶され、RAM503は、CPU501の作業用メモリ等として用いられる。
画像音響制御部500は、演出制御部400から送られたコマンドに基づいて、画像表示器21に表示する画像およびスピーカ55から出力する音響を制御する。具体的には、画像音響制御部500のROM502には、画像表示器21において遊技中に表示する図柄画像や背景画像、遊技者に抽選結果を報知するための装飾図柄、遊技者に予告演出を表示するためのキャラクタやアイテム等といった画像データが記憶されている。
また、画像音響制御部500のROM502には、画像表示器21に表示される画像と同期させて、または表示される画像とは独立に、スピーカ55から出力させる楽曲や音声、さらにはジングル等の効果音等の各種音響データが記憶されている。画像音響制御部500のCPU501は、ROM502に記憶された画像データや音響データの中から、演出制御部400から送られたコマンドに対応したものを選択して読み出す。そして、CPU501は、読み出した画像データを用いて、背景画像表示、図柄画像表示、図柄画像変動、およびキャラクタ/アイテム表示等のための画像処理を行う。また、CPU501は、読み出した音響データを用いて音声処理を行う。そして、CPU501は、画像処理された画像データが示す画像を画像表示器21に表示する。また、CPU501は、音声処理された音響データが示す音響をスピーカ55から出力する。
ランプ制御部600は、CPU601、ROM602、およびRAM603を備えている。CPU601は、盤ランプ23や枠ランプ56の発光、および可動役物22の動作を制御する際の演算処理を行う。ROM602は、CPU601にて実行されるプログラムや各種データ等が記憶され、RAM603は、CPU601の作業用メモリ等として用いられる。
ランプ制御部600は、演出制御部400から送られたコマンドに基づいて、盤ランプ23や枠ランプ56の点灯/点滅や発光色等を制御する。また、ランプ制御部600は、演出制御部400から送られたコマンドに基づいて、可動役物22を制御する。
具体的には、ランプ制御部600のROM602には、演出制御部400にて設定される演出内容に応じた盤ランプ23や枠ランプ56での点灯/点滅パターンデータおよび発光色パターンデータ(発光パターンデータ)が記憶されている。CPU601は、ROM602に記憶された発光パターンデータの中から、演出制御部400から送られたコマンドに対応したものを選択して読み出す。
そして、CPU601は、読み出した発光パターンデータに基づいて、盤ランプ23や枠ランプ56の発光を制御する。また、ROM602には、演出制御部400にて設定される演出内容に応じた可動役物22の動作パターンデータが記憶されている。CPU601は、ROM602に記憶された動作パターンデータの中から、演出制御部400から送られたコマンドに対応したものを選択して読み出す。そして、CPU601は、読み出した動作パターンデータに基づいて、可動役物22を制御する。
(第1の実施形態)
(制御部間のデータ伝送)
上述のように、遊技機1の制御装置は、メイン制御部100、発射制御部200、払出制御部300、演出制御部400、画像音響制御部500、およびランプ制御部600を備えている。また、これらの制御部は、それぞれ、CPUに加え、ROMおよびRAMなどの記憶領域を備えている。そして、それらの制御部は、遊技機1で行われる遊技を実現するために各種演算を行いつつ、遊技機1が有するデバイスを制御する。
メイン制御部100をはじめとする上述の制御部は、遊技機1の動作を実現するために、その制御部間で必要に応じて所定の信号を送受信する。これらの制御部は、所定の信号(例えば、データ信号、クロック信号など)を、直接または別の制御部を介して、制御対象とされるデバイス(例えば、LED、ソレノイドなど)の制御を実現する。ここで、遊技機1は、制御部から伝送する信号をシリアル方式で伝送する場合がある。以下では、ランプ制御部600、ならびにランプ制御部600の制御下にある、枠ランプ56、盤ランプ23および可動役物22の制御を一例として、本発明の例示的な実施形態を説明する。
より具体的には、制御対象である可動役物22、枠ランプ56および盤ランプ23において、例えば、可動役物22が、ソレノイドSOLによって駆動され、また、枠ランプ56および盤ランプ23が、5つの発光ダイオードであるLED1からLED5までを備える場合について説明する。
既述のように、メイン制御部100は、内部抽選および当選の判定等を行う。そして、CPU101は、内部抽選および当選の判定等の払い出し賞球数に関連する各種制御を行う際の演算処理を行う。図4に示されるように、本実施形態において、ソレノイドSOL、LED1からLED5に対する制御は、メイン制御部100から演出制御部400を介してランプ制御部600に制御用の信号が流れることで達成される。
一実施形態において、演出制御部400は、メイン制御部100から受け取った制御用のデータに基づいて、ランプ制御部400に対する制御用のデータを生成し、ランプ制御部600に対してそのデータ信号をシリアル伝送する。そして、ランプ制御部600は、そのシリアル伝送されたデータ信号に基づき、制御対象の一例である枠ランプ56および盤ランプ23の作動を制御する。本実施形態において、演出制御部400とランプ制御部600との間でシリアル伝送が行われる場合、クロック同期式のシリアル伝送が採用され得る。
すなわち、まず、メイン制御部100から入力を受けた演出制御部400において、そのCPU401から、複数のデバイスの制御情報を含むデータがパラレル出力される。次いで、このパラレル出力されたデータが、演出制御部400のシリアルインターフェースでシリアルデータに変換される。つまり、複数のデバイスの制御情報を含むパラレルで出力されたデータは、演出制御部400からランプ制御部600側(すなわち、制御対象側)へ向け、データ伝送用の信号線(データ線)を介し、そのデータ線とは別の信号線(クロック線)で伝送されるクロック信号に同期して1ビットずつ送信される。この送信されたデータがランプ制御部600に受信され、そのデータにもとづき、制御対象であるデバイスが制御される。
ここで、図5を参照して、制御データが、演出制御部400からランプ制御部600にシリアル伝送される際の例示的な流れを説明する。図5は、制御部間の通信態様を模式的に示した図である。なお、図5は、データの流れの概略を説明するための模式的な図であり、付随的な構成要素を適宜省略した態様で表現されている。また、図中、クロック信号などの流れの詳細についても省略している。
まず、メイン制御部100から演出制御部400に所定バイト長(例えば、1バイト長)のデータが、メイン制御部100から入力され、演出制御部400におけるCPU401のデータ入出力レジスタR1に保持されている状態から説明する(図5において、IN400を説明の起点とする)。
CPU401のデータ入出力レジスタR1に記憶されるデータは、内部バスを介してシフトレジスタR2へと移行する。このシフトレジスタR2は、クロック信号によりデータをシフト(移動)させる回路で、例えば、フリップフロップ(2つの安定状態を有し、それぞれを論理値の「1」と「0」として記憶・保持する機能をもった回路)を直列に接続して構成される。
クロック信号によりシフトされるデバイス制御用データが、ランプ制御部600に向け1ビットずつ演出制御部400のシリアル出力ポートから伝送される。より具体的に説明すると、演出制御部400は、シフトレジスタR2のデータの最下位ビットに1ビットの出力ラッチを備え、そのクロック信号によるシフト命令によって1バイトのデータを1ビットずつ出力していくことが可能である。ここで、1ビットずつ出力されたデータは、必要に応じて、アクセス制御・媒体変換を経てランプ制御部600へと出力される(OUT400)。
演出制御部400からランプ制御部600に1ビットずつ伝送された、所定バイトのデータは、ランプ制御部600側のアクセス制御・媒体変換を経て、そのシリアル入力ポートに入力される(IN600)。
ランプ制御部600が演出制御部400から受け取ったシリアルデータは、後続の処理に供される(図5におけるPath AまたはPath Bとして示した経路)。
Path Aで示される経路は、演出制御部400から与えられたシリアルデータが、ランプ制御部600が有する(後述する)デバイスドライバSPへと入力される経路である。他方、Path Bで示される経路は、入力されたデータがシリアル/パラレル変換を経てパラレルデータとしてCPU601に入力される経路である。Path Bにおいては、その後、CPU601が、必要に応じて、ランプ制御部600が制御対象とするデバイスに向けた制御用の信号を新たに生成し、送信することも可能である。
Path Aについては、次節で詳述するものとし、ここでは、Path Bについて補足する。
Path Bで示される経路において、ランプ制御部600のシリアル入力ポートは、上流の制御部から発生されるクロック信号と同期して1ビットずつ演出制御部400から伝送されてきた所定バイトのデータを受け取る。ランプ制御部600におけるシリアル入力ポートが、例えば、伝送されたデータの最下位ビットについて1ビットの入力ラッチを備え、その入力ラッチから読み出されたデータからシフト命令で送信側が送った所定バイトのデータに組み立てることが可能である。すなわち、シフトレジスタR4が、ランプ制御部600に設けられており、このシフトレジスタR4において、入力ラッチから読みだされたビットが順にシフトされることで、演出制御部400から送出された所定バイトのデータが組み立てられる。
このようにして、パラレルデータとしてランプ制御部600で得られたデバイスの制御情報は、必要に応じて、内部バスを介して、CPU601のデータ入出力レジスタに書き込まれる。そして、制御対象であるデバイスである可動役物22、枠ランプ56および盤ランプ23、より具体的には、可動役物22のソレノイドSOL、枠ランプ56および盤ランプ23が有する発光ダイオードであるLED1からLED5の各々を駆動するためのデバイスドライバSPに向けて、上述のランプ制御部600で得られたデバイスの制御情報は送信され得る。
(デバイスドライバへの出力)
次に、上述のPath Aで示される経路のデータの流れの詳細について説明する。ここで、可動役物22のソレノイドSOL、枠ランプ56および盤ランプ23における5つの発光ダイオードLED1からLED5までが、ランプ制御部600に設けられた出力用デバイスドライバSP(説明の簡便のため、本明細書において、以下、「デバイスドライバSP」とする)により制御される態様の一例を説明する。
本例においては、このデバイスドライバSPは、シリアルイン・パラレルアウト・ドライバであって、制御を担うCPUとの4線インターフェースにより上述のソレノイドSOLなどを制御できる、シフトレジスタR5とラッチ回路内蔵の出力ドライバである。
図6は、ランプ制御部600の上流に位置する制御部からの入力信号の流れの例とともに、デバイスドライバSPの主な構成の一例を示したブロック図である。なお、図6は、例示目的ためにデバイスドライバSPの主要な構成のみを示し、付随的な構成要素については省略した模式図である。
既述のように、ランプ制御部600の上流に位置する制御部(例えば、演出制御部400、また場合によってはメイン制御部100)は、ランプ制御部600に対して入力を与える。その入力を与える制御部のCPUを代表して、CPU*と称する。例えば、演出制御部400のCPU401が、ソレノイドSOLなどのデバイスの制御用シリアルデータを生成し伝送する場合は、CPU401がCPU*となり得る。
デバイスドライバSPは、端子として、グラウンド用端子Vss、シリアルデータ入力端子DATA、パラレルデータ出力端子Qx、クロック信号入力端子CLOCK、ラッチクロック入力端子LCK、イネーブル信号端子OE#、および電源用端子Vddなどを備える。
シリアルデータ入力端子DATAは、CPU*からのシリアルデータ入力を受ける端子である。他方、パラレルデータ出力端子Qxは、パラレルデータの出力を担う「x(自然数)」個の端子である(それぞれの端子を、Q0、Q1、・・・・・Q(x−1)とする)。すなわち、x個の端子の先にそれぞれ制御対象となるデバイスが接続され得る。
本実施形態において、可動役物22のソレノイドSOL、枠ランプ56および盤ランプ23が有する発光ダイオードであるLED1からLED5の各々を駆動するためのデバイスドライバSPの駆動のための制御用データが、パラレルデータ出力端子Qxを介してそれらのデバイスに対して出力される。
クロック信号入力端子CLOCKは、CPU*からクロック信号を受ける端子である。このクロック信号は、(上述のシリアルデータ入力端子DATAから入力される)シリアルデータ信号に同期する。
ラッチクロック入力端子LCKは、CPU*からラッチクロック信号が入力される。なお、本実施形態においては、ラッチ信号は、レベルラッチとして機能する。例えば、ドライバSPにおいて、パラレルデータ出力のために電界効果トランジスタ(FET)が設けられる。そして、ラッチクロック信号がハイレベルとなった際に、このFETがオン状態(ON)となり、他方で、当該ラッチクロック信号が、ローレベルとなった際にFETがオフ状態(OFF)となる。
イネーブル信号端子OE#は、CPU*から出力イネーブル信号を受け取る端子である。なお、記号#は、そのハードウェア回路(端子)において、そこで扱う信号が負論理(アクティブ・ロー)であることを表す記号である。例えば、このイネーブル信号端子OE#に入力される信号が、ローレベルの区間に出力がイネーブル状態となる。
次に、図7を参照して、デバイスドライバSPの基本的な経時的動作について説明する。図7は、デバイスドライバSPを用いた場合における、クロック信号、シリアルデータ信号、ラッチクロック信号、イネーブル信号、パラレルデータ信号に関する、タイミングチャートである。
図7では、クロック信号などを伴って、デバイス制御用のデータに対応する1バイト(=8ビット)データブロックがシリアル伝送され、そのデータ信号がCPU*からシリアルデータ入力端子DATAに入力される場合を示している。なお、シリアルデータとして伝送されるデータブロックは、8ビット以外のデータ長(例えば、12ビット、16ビット、24ビット、32ビットなど)であってよく、ここで示した例示的な8ビットに限られるものではない。
デバイスドライバSPが、CPU*からシリアルデータ入力端子DATAにシリアルデータの入力を受けるとき、このシリアルデータは、例えば、クロック信号入力端子CLOCKから入力されるクロック信号の立ち上がり同期で(図7において上向きの矢印で示した時点で)シフトレジスタに読み込まれる。なお、本実施形態では、クロック信号の立ち上がり(ライジングエッジ)を用いるエッジトリガ型の態様での実装例を示したが、他の態様で実装してもよい。例えば、信号の立ち下がり(フォーリングエッジ)を用いても、またライジングエッジとフォーリングエッジとの両方を用いるマスタスレーブを用いてもよい。
本実施形態では、クロック信号入力端子CLOCKに入力において8クロック経過した後に、LCK端子に入力されるラッチ信号がハイレベルとなる(図7のLCK端子の欄における上向の矢印を参照)。上述のように、ラッチ信号はレベルラッチである。すなわち、ラッチ信号がローレベルである区間においてデータをデバイスドライバSPの内部ラッチ回路に保持し、他方、ラッチ信号がハイレベルとなる区間で内部ラッチ回路におけるデータを更新する。
つまり、図7に示されるように、パラレルデータ出力端子Qx(X=0〜7)の出力データは、ラッチ信号がハイレベルとなった時点の8クロック前までのデータを用いて設定される。そして、内部ラッチ回路に保持されたデータは、出力イネーブル信号がローレベルのときに出力される。
このようにして、8ビット(=1バイト)のシリアルデータが、CPU*からデバイスドライバSPに伝送され、クロック信号の立ち上がりに同期して順にシフトレジスタR5に書き込まれる。すなわち、8ビットのシリアルデータは、D7、D6、D5、D4、D3、D2、D1、D0の順にデバイスドライバSPのシフトレジスタ上をシフトし、それらのデバイスへの出力はラッチ信号とイネーブル信号により制御により、パラレルデータ出力端子Qxを介して適宜パラレル出力される。
本実施形態において、上述のシリアルデータ(D7〜D0)と、そのデータにより制御される対象であるデバイス(可動役物22のソレノイドSOL、枠ランプ56および盤ランプ23における5つの発光ダイオードLED1〜LED5)との対応関係は、例えば、図8に示される関係である。
図8は、シリアル伝送された8ビットのデータブロックがパラレル変換されたときに、デバイスドライバSPのパラレルデータ出力端子Qxに出力されるデータと、その出力端子Qxおよびその接続先のデバイス(LED1など)との対応関係の一例を示した。
図8に示されるように、制御における単位データブロック(D7〜D0)には、ソレノイドSOLを制御するためのビット(D4)が含まれている。そして、当該データブロックがパラレルに変換されると、このデータD4は端子Q4に出力される。
本実施形態において、パラレルデータ出力端子Q4に出力されるビットが、(0と1との二元符号としての)論理値1を取ったときに当該ソレノイドSOLを作動させる。ここで、「論理値1を取ったときに当該ソレノイドSOLを作動させる」条件は、当該論理値1とソレノイドSOLの作動状態とが対応づけられていることを意味する。遊技機1における、ソレノイドSOLの機械的出力、励起電流、作動周期を含めたその作動の態様は、その遊技機1において適宜設定される。
本実施形態において、デバイスドライバSPは、CPU*からシリアル伝送によりデータ信号、クロック信号等を受け取るが、そのデータ信号の構成は、特徴的である。
上述のソレノイドSOLの誤作動を特に回避することを目的とする場合、そのデータ信号のシリアル伝送の順序において、そのソレノイドSOLに対応するデータ信号上のビット(D4)に隣接するビット(D3,D5)は、「0」に固定される。
ここで、特定ビットとデータ信号の伝送順序において「隣接する」ビットとは、所定データ長(例えば、8ビット)のデータブロックがシリアル伝送される際に、その特定ビットを基準として伝送順が1ビット前または1ビット後の位置にあるビットである。例えば、図8で示される例においては、ビットD4に隣接するビットとは、ビットD3およびD5である。
本実施形態においては、制御の流れにおいてデバイスドライバSPの上流に位置する制御部(特に、その制御部のCPU*)が、入力されるデータ信号を生成し、それをデバイスドライバSPに対してシリアル伝送する。そして、制御の流れにおいて上流に位置する制御部は、下流の制御対象デバイスに対する制御用データを生成するとき、特に誤作動を回避するべき制御対象デバイスの制御用ビットに隣接するビットを「0」に固定する(つまり、特に誤作動を回避したい制御対象デバイスの作動を意味する符号とは、逆の符号である0に固定する)。
より具体的には、ソレノイドSOLに対応するビットに「隣接する」ビットであるD3およびD5が、0に固定されるように制御部においてデータブロックが生成され、次いで、そのデータブロックが制御対象側へとシリアル伝送される。そして、図8に示されるように、LED1からLED5を制御するためのビットが、(0に固定された)ビット(D3,D5)以外の位置に配される(図8)。本実施形態においては、ビットD3およびD5に対応するパラレルデータ出力端子Q3およびQ5は、いずれのデバイスにも接続されていない端子(NC)である。すなわち、ビットD3およびD5は、いずれのデバイスの制御にも用いられていない。
シリアル伝送しようとする所定データ長のデータブロックにおいて、制御対象のソレノイドSOLに対応するビットD4に隣接するビットD3およびD5を0とする場合、例えば、CPU*が当該データに対してビットマスク操作を行うことにより、所望のビットパターンを得ることができる。
ビットマスク操作は、例えば、ふたつの同じ長さのビットパターンを入力とし、同じ位置のビット毎にAND(論理積)操作を行って同じ長さのビットパターンを出力する操作である。各ビット位置で、入力するふたつのビットがどちらも1であれば、出力ビットは1となるが、他方が0であれば出力は0となる。
すなわち、D5およびD3を0として固定する場合、CPU*は、生成された8ビット長のデバイス制御用データブロックIN1を入力の1つとし、同じ8ビット長の別のデータブロックIN2を別の入力として、ビットマスク操作をすることができる。このデータブロックIN2において、データブロックIN1のビットD3およびD5に対応する位置のビットを0に固定し、別の位置に対応するビットは1に固定ておけば、D3およびD5の位置は0でマスクされる。このようなビットマスク操作を行なった上で制御用データブロックをシリアル伝送することで、D3およびD5の位置は常に0とした上で、シリアル伝送を行うことができる。なお、このような操作以外であっても、ビットD3およびD5を0に固定した上で、そのデータをシリアル伝送できれば、別の方法で制御対象側に送るデータを生成してもよい。
このような構成をとることで、仮に、ソレノイドSOLを制御するビットが、基準とすべきクロック信号に対して正しい位置から1ビット分シフトされた状態でデバイスドライバSP側に解釈された場合であっても、作動すべきでないソレノイドSOLは、この場合において作動するということはない。つまり、ソレノイドSOLに対応する制御用ビットの隣接するビットが、論理値0に固定されているので、クロック信号との関係でデータ信号が(例えば、ノイズなどにより)正しい位置から1ビット分シフトされた場合であっても、ソレノイドSOLの制御するためのビットとして解釈されるビットは、0である。その結果として、1ビット分シフトされた場合であっても、ソレノイドSOLが作動すべきではない時点で作動しない。
従来、LED1などを制御するビットと、ソレノイドSOLを制御するビットとが隣接した位置関係で制御用データブロックが生成されていた場合であって、そのデータブロックがシリアル伝送される際にクロック信号に対して1ビット分のシフトが生じてしまったときには、LED1の作動を示す「1」との値の存在によりソレノイドSOLが誤作動する可能性があった。すなわち、LED1の作動を示す「1」が、ソレノイドSOLの作動を示すものとしてデバイスドライバSPにより解釈される場合が生じていた。これにより、制御部側がソレノイドSOLについて「0」として制御用データを伝送しても、正しくはLED1の作動を示す「1」として送られたビットの存在のために、ソレノイドSOLが誤作動していた。
つまり、本実施形態の遊技機によって、少なくとも上述のような問題は回避することが可能である。
上述の例においては、遊技機1が、ソレノイドSOLを含む複数のデバイスの制御を行う場合であって、当該複数のデバイスを制御するための所定データ長(本例では、1バイト)のデータブロックをシリアル方式により伝送されるときについて説明した。ここで、誤作動を回避するための制御対象を、ソレノイドSOLとしたが、かならずしもソレノイドに限られない。すなわち、モータなどのデバイスが、ソレノイドSOLと同様に制御対象とすることが必要である場合は、当該モータを制御対象としてもよい。
また、所定バイト長の伝送データにおける複数のデバイスの制御用データの配列も、上述したものに限られるものではない。すなわち、その伝送データにおける配列は、誤作動を回避するための制御対象デバイスに対応するビットの両隣に、当該制御対象のデバイスの駆動を示す符号とは逆の符号が設定されている限りにおいて、その他の配列および他の制御対象のデバイスの種類も適宜変更され得る。
したがって、上述のような構成をとることで、特に厳しい管理が必要なデバイスの制御情報を含むデータ信号が、クロック信号に対して1ビット分のずれを生じたとしても、その非駆動を示す0が割り振られた隣接するビットが存在するので、当該デバイスの誤作動を抑制することが可能である。これにより、より安全性の高いシリアル伝送を行う遊技機が提供される。
(第2の実施形態)
上述の実施形態として、遊技機1は、データの伝送順序において、ソレノイドSOLに対応するビットに隣接するビットを0として固定することで、ソレノイドSOLの誤作動を回避または抑制する。
本実施形態の遊技機1は、シリアル伝送された所定データ長のデバイス制御用データブロックが適切なかたちで制御対象デバイスにシリアル伝送されていることを判定する手段さらにを実装することで、制御対象のデバイス(例えば、ソレノイド)の誤作動を回避または抑制し得る。
本実施形態において、ソレノイドSOLの制御に対応するビットが1であり、かつそれに隣接するビットがともに0であることをデバイスドライバSP側が確認できたことを条件に、ソレノイドSOLが作動される。すなわち、データ信号の伝送順序において、ソレノイドSOLの制御に対応するビットと隣接するビットが、0に固定されてシリアル伝送されることとに加え、デバイスドライバSPがそのデータを受け取る前にその3ビットの状態を判別する手段(演算する手段)を設ける。
具体的には、ランプ制御部600のデバイスドライバSPが、8ビットのデータブロックをシリアル伝送により受けた場合に、遊技機1は、ソレノイドSOLに対応するビット(以下、Bsolとする)と、そのビットとデータ信号の伝送順序において隣接するビット(B1、B2)の各々との間で、次のような演算を行う論理回路を構成する。
《ビットBsolの状態を判定するための論理演算》
(1)Bsolと、B1およびB2のそれぞれとの間で排他的論理和(XOR)をとる。すなわち、
Bsol XOR B1(この演算結果をXB1とする):および
Bsol XOR B2(この演算結果をXB2とする)
を実行する。
(2)次いで、(1)の演算の結果について論理積(AND)をとる。すなわち、
XB1 AND XB2(この演算結果をABとする)
を実行する。
(3)さらに、(2)の演算結果ABと、Bsolとの論理積(AND)をとる。
(4)そして、(3)の演算結果が、真(1)であれば、Bsolの状態は正常と判断する。
ランプ制御部600において、このような演算を行う論理回路は、例えば、(PathAにおける)デバイスドライバSPのすぐ上流に設置され、上記演算結果が最終的に真となる場合にのみ、デバイスドライバSPに対して、伝送された8ビット分のデータブロックを与えるなどの処理を行うことにより、誤りのあるデータの入力を回避・抑制することが可能である。
したがって、上述のような論理回路をデバイスドライバSPの上流に設けることで、ソレノイドSOLの制御に対応するビットと、それに隣接するビットとを含む3ビット(B1,Bsol,B2)の関係性に基づき、安全性をより高めた遊技機1が提供される。
すなわち、ランプ制御部600に向けてシリアル伝送された所定データ長のデータブロックにおいて、それに含まれるソレノイドSOLの制御に対応するビットBsolが1であり、かつそれに隣接するビットB1およびB2がともに0であることを、デバイスドライバSP側が確認できたことを条件に、ソレノイドSOLが作動する。
このような構成をとることで、ソレノイドSOLの作動に関して安全性がさらに向上する。すなわち、(B1,Bsol,B2)=(0,1,0)との関係にあるデータ信号がCPU*において生成され、その後シリアル伝送されたにもかかわらず、何らかの理由により、(B1,Bsol,B2)=(1,1,0)、(0,1,1)、(1,1,1)といった関係にあるデータがデバイスドライバSP側で受けとられた場合であっても、本実施形態の遊技機により誤りのある入力データが生じたものとして、ソレノイドSOLの作動を回避することが可能となる。
(変形例)
第二の実施形態においては、遊技機1が、(B1,Bsol,B2)の3つのビットについて論理演算を行う論理回路を実装することで、ソレノイドSOLの作動に関して安全性を向上させた。しかしながら、B1と、B2とのいずれか一方との関係性をみるだけで十分である場合は、次のようなBsolとB1(もしくは、B2)との間で論理演算を行ってもよい。
《ビットBsolの状態を判定するための論理演算》
(1)*:Bsolと、B1との間で排他的論理和(XOR)をとる:
Bsol XOR B1(この演算結果をXB1とする)
(2)*:(2)*の演算結果XB1と、Bsolとの論理積(AND)をとる
(3)*:(3)*の演算結果が、真(1)であれば、Bsolの状態は正常と判断する
上述のように、ランプ制御部600に備えられるソレノイドSOL等の制御過程により、本発明の例示的な実施形態を説明してきたが、本発明に係る技術的思想を、その例示的な実施形態に限定して解釈するべきではない。
例えば、ランプ制御部600に限らず、メイン制御部100、発射制御部200、払出制御部300、演出制御部400、画像音響制御部500などの他制御装置の制御下にある、デバイスの作動に関するデータが、そのデバイスドライバへとシリアル伝送される場合であれば、上述したような誤作動の抑制・回避方法を応用することで、そのデバイスの安全性をより高め遊技機が提供される。
本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および科学技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
以上のように、本発明の実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。