JP4642913B2 - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP4642913B2
JP4642913B2 JP2009136401A JP2009136401A JP4642913B2 JP 4642913 B2 JP4642913 B2 JP 4642913B2 JP 2009136401 A JP2009136401 A JP 2009136401A JP 2009136401 A JP2009136401 A JP 2009136401A JP 4642913 B2 JP4642913 B2 JP 4642913B2
Authority
JP
Japan
Prior art keywords
command
game
power supply
control
variable display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009136401A
Other languages
English (en)
Other versions
JP2009219897A5 (ja
JP2009219897A (ja
Inventor
詔八 鵜川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sankyo Co Ltd
Original Assignee
Sankyo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sankyo Co Ltd filed Critical Sankyo Co Ltd
Priority to JP2009136401A priority Critical patent/JP4642913B2/ja
Publication of JP2009219897A publication Critical patent/JP2009219897A/ja
Publication of JP2009219897A5 publication Critical patent/JP2009219897A5/ja
Application granted granted Critical
Publication of JP4642913B2 publication Critical patent/JP4642913B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Description

本発明は、遊技者の操作に応じて遊技が行われるパチンコ遊技機やコイン遊技機等の遊技機に関し、特に、遊技盤における遊技領域において遊技者の操作に応じて遊技が行われる遊技機に関する。
遊技機として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示部が設けられ、可変表示部の表示結果があらかじめ定められた特定の表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
特別図柄を表示する可変表示部の表示結果があらかじめ定められた特定の表示態様の組合せとなることを、通常、「大当り」という。なお、遊技価値とは、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることである。
大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個(例えば10個)の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数(例えば16ラウンド)に固定されている。なお、各開放について開放時間(例えば29.5秒)が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件(例えば、大入賞口内に設けられているVゾーンへの入賞)が成立していない場合には、大当り遊技状態は終了する。
また、「大当り」の組合せ以外の表示態様の組合せのうち、複数の可変表示部の表示結果のうちの一部が未だに導出表示されていない段階において、既に表示結果が導出表示されている可変表示部の表示態様が特定の表示態様の組合せとなる表示条件を満たしている状態を「リーチ」という。そして、可変表示部に可変表示される識別情報の表示結果が「リーチ」となる条件を満たさない場合には「はずれ」となり、可変表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
そのような遊技機では、スピーカが設けられ遊技効果を増進するために遊技の進行に伴ってスピーカから種々の効果音が発せられる。また、遊技機の遊技領域や枠体にランプやLED等の発光体が設けられ、遊技効果を増進するために遊技の進行に伴ってそれらの発光体が点灯されたり消灯されたりする。各発光体は遊技の進行状況に応じて表示制御されるので、発光体の点灯/消灯制御は、一般に、遊技の進行を制御する遊技制御手段によって行われる。なお、以下、遊技制御手段およびその他の制御手段を、それぞれ電気部品制御手段と呼ぶことがある。
遊技の進行を制御する遊技制御手段は一般にマイクロコンピュータで実現される。そして、ノイズに起因するプログラム暴走等を防止するために、遊技制御プログラムが所定期間(例えば2ms)毎に繰り返し再起動されるように構成される。遊技制御プログラムは、種々の処理プログラムを含む構成である。また、遊技制御を効果的に遂行するために、割込処理も使用されることがある。例えば2msの各所定期間を1回のプログラム実行時間と呼ぶことにすると、割込処理の発生等に起因して、遊技制御プログラムを構成する各処理プログラムの全てが実行完了しないうちに、1回のプログラム実行時間が経過してしまう可能性がある。そのような状況が発生した場合には、1回のプログラム実行時間において実行されない処理が生ずることになるので、遊技制御に支障をきたすことになる。
そこで、本発明は、遊技制御手段の制御負担を軽くすることができる遊技機を提供することを目的とする。
本発明による遊技機は、各々を識別可能な複数種類の識別情報の可変表示を行い表示結果を導出表示する可変表示部を備え、該可変表示部に特定表示結果が導出表示されたときに遊技者にとって有利な特定遊技状態に制御する遊技機であって、遊技の進行を制御する遊技制御手段と、可変表示部を制御する表示制御手段と、電力供給が停止しても所定期間は記憶内容を保持することが可能であり、遊技制御手段が制御を行う際に発生する変動データを記憶する変動データ記憶手段と、遊技機で使用される第1電源を監視して該第1電源の電圧が第1検出電圧以下となると検出信号を出力する第1の電源監視手段と、第1電源の電圧よりも低い電圧の第2電源を監視して、該第2電源の電圧が第1検出電圧よりも低い第2検出電圧以下になったときに動作停止信号を出力する第2の電源監視手段と、遊技制御手段が信号を出力するための遊技制御用出力ポートと、を備え、遊技制御手段は、可変表示部を制御することを示すコマンドを表示制御手段に出力するコマンド出力手段を含み、第1の電源監視手段からの検出信号に応じて、遊技制御用出力ポートに出力される信号の出力状態をクリアする遊技制御用出力ポートクリア処理と、制御状態を復旧させるためのデータを変動データ記憶手段に保存させるための電力供給停止時処理とを実行し、第2の電源監視手段からの動作停止信号に応じて動作停止され、電力供給が開始されたときに、変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給停止時処理を開始する前の状態に復旧させる復旧制御を実行し、コマンド出力手段は、識別情報の可変表示を開始させるときに、可変表示部における識別情報の可変表示パターンを特定するための可変表示パターンコマンド、および可変表示部における識別情報の表示結果を特定するための表示結果コマンドを出力し、識別情報の可変表示を終了させるときに、識別情報の停止を示す停止コマンドを出力し、可変表示パターンコマンドおよび表示結果コマンドを出力した後、停止コマンドを出力するまでの間には、可変表示のコマンド出力を行わず、表示制御手段は、可変表示パターンコマンドにもとづいて、可変表示部における識別情報の可変表示を開始し、停止コマンドにもとづいて、表示結果コマンドで特定される識別情報の表示結果を可変表示部に停止表示させることを特徴とする。
本発明によれば、遊技制御手段の制御負担を軽くすることができる効果がある。
パチンコ遊技機を正面からみた正面図である。 パチンコ遊技機の遊技盤を正面からみた正面図である。 パチンコ遊技機の機構板を背面からみた背面図である。 遊技制御基板(主基板)の回路構成例を示すブロック図である。 表示制御基板内の回路構成を示すブロック図である。 音声制御基板内の回路構成を示すブロック図である。 ランプ制御基板内の回路構成を示すブロック図である。 電源監視および電源バックアップのためのCPU周りの一構成例を示すブロック図である。 電源基板の一構成例を示すブロック図である。 主基板におけるCPUが実行するメイン処理の例を示すフローチャートである。 遊技状態復旧処理を実行するか否かの決定方法の例を示す説明図である。 初期設定処理の例を示すフローチャートである。 初期化処理の例を示すフローチャートである。 2msタイマ割込処理の例を示すフローチャートである。 遊技制御処理の例を示すフローチャートである。 各乱数を示す説明図である。 打球が始動入賞口に入賞したことを判定する処理を示すフローチャートである。 可変表示の停止図柄を決定する処理およびリーチ種類を決定する処理を示すフローチャートである。 大当り判定の処理を示すフローチャートである。 特別図柄プロセス処理を示すフローチャートである。 普通図柄プロセス処理を示すフローチャートである。 ゲートスイッチ処理を示すフローチャートである。 普通図柄に関する当り判定用乱数の当り/はずれを示す説明図である。 停電発生NMI処理の例を示すフローチャートである。 バックアップパリティデータ作成方法の例を説明するための説明図である。 遊技状態復旧処理の例を示すフローチャートである。 特別図柄の変動と表示制御コマンドとの関係を示すタイミング図である。 表示制御コマンドのコマンド形態の一例を示す説明図である。 表示制御コマンドの内容の一例を示す説明図である。 表示制御コマンドの送出形態の一例を示すタイミング図である。 音声制御コマンドのコマンド形態の一例を示す説明図である。 音声制御コマンドの内容の一例を示す説明図である。 音声制御コマンドの送出形態の一例を示すタイミング図である。 ランプ制御コマンドのコマンド形態の一例を示す説明図である。 ランプ制御コマンドの内容の一例を示す説明図である。 ランプ制御コマンドの送出形態の一例を示すタイミング図である。 遊技制御処理におけるコマンド制御処理を示すフローチャートである。 データ出力処理の一例を示すフローチャートである。 コマンド送出サブルーチンを示すフローチャートである。 音声制御用CPUが実行するメイン処理を示すフローチャートである。 タイマ割込処理を示すフローチャートである。 コマンド受信割込処理を示すフローチャートである。 音声制御処理を示すフローチャートである。 ランプ制御用CPUが実行するメイン処理を示すフローチャートである。 タイマ割込処理を示すフローチャートである。 コマンド受信割込処理を示すフローチャートである。 ランプ制御処理を示すフローチャートである。 ランプ・LED制御処理の一例を示すフローチャートである。
以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機1を正面からみた正面図、図2はパチンコ遊技機1の内部構造を示す全体背面図、図3はパチンコ遊技機1の遊技盤を背面からみた背面図である。なお、以下の実施の形態では、パチンコ遊技機を例に説明を行うが、本発明による遊技機はパチンコ遊技機に限られず、例えばコイン遊技機等であってもよい。また、画像式の遊技機やスロット機に適用することもできる。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿3がある。打球供給皿3の下部には、打球供給皿3からあふれた貯留球を貯留する余剰球受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の後方には、遊技盤6が着脱可能に取り付けられている。また、遊技盤6の前面には遊技領域7が設けられている。
遊技領域7の中央付近には、複数種類の図柄を可変表示するための可変表示部9と7セグメントLEDによる可変表示器10とを含む可変表示装置8が設けられている。また、可変表示器10の下部には、4個のLEDからなる通過記憶表示器(普通図柄用記憶表示器)41が設けられている。この実施の形態では、可変表示部9には、「左」、「中」、「右」の3つの図柄表示エリアがある。可変表示装置8の側部には、打球を導く通過ゲート11が設けられている。通過ゲート11を通過した打球は、球出口13を経て始動入賞口14の方に導かれる。通過ゲート11と球出口13との間の通路には、通過ゲート11を通過した打球を検出するゲートスイッチ12がある。また、始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ17によって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。この実施の形態では、開閉板20が大入賞口を開閉する手段となる。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(Vゾーン)に入った入賞球はVカウントスイッチ22で検出される。また、開閉板20からの入賞球はカウントスイッチ23で検出される。可変表示装置8の下部には、始動入賞口14に入った入賞球数を表示する4個の表示部を有する始動入賞記憶表示器18が設けられている。この例では、4個を上限として、始動入賞がある毎に、始動入賞記憶表示器18は点灯している表示部を1つずつ増やす。そして、可変表示部9の可変表示が開始される毎に、点灯している表示部を1つ減らす。
遊技盤6には、複数の入賞口19,24が設けられ、遊技球の入賞口19,24への入賞は入賞口スイッチ19a,24aによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、遊技効果LED28aおよび遊技効果ランプ28b,28cが設けられている。
そして、この例では、一方のスピーカ27の近傍に、景品球払出時に点灯する賞球ランプ51が設けられ、他方のスピーカ27の近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カード内に記録された残額情報に端数(100円未満の数)が存在する場合にその端数を打球供給皿3の近傍に設けられる度数表示LEDに表示させるための端数表示スイッチ152、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
打球発射装置から発射された打球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が通過ゲート11を通ってゲートスイッチ12で検出されると、可変表示器10の表示数字が連続的に変化する状態になる。また、打球が始動入賞口14に入り始動口スイッチ17で検出されると、図柄の変動を開始できる状態であれば、可変表示部9内の図柄が回転を始める。図柄の変動を開始できる状態でなければ、始動入賞記憶を1増やす。
可変表示部9内の画像の回転は、一定時間が経過したときに停止する。停止時の画像の組み合わせが大当り図柄の組み合わせであると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球が特定入賞領域に入賞しVカウントスイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
停止時の可変表示部9内の画像の組み合わせが確率変動を伴う大当り図柄の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、高確率状態という遊技者にとってさらに有利な状態となる。また、可変表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、高確率状態では、可変表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。
次に、パチンコ遊技機1の裏面の構造について図2を参照して説明する。
可変表示装置8の背面では、図2に示すように、機構板36の上部に遊技球タンク38が設けられ、パチンコ遊技機1が遊技機設置島に設置された状態でその上方から遊技球が遊技球タンク38に供給される。遊技球タンク38内の遊技球は、誘導樋39を通って球払出装置97に至る。
機構板36には、中継基板30を介して可変表示部9を制御する可変表示制御ユニット29、基板ケース32に覆われ遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31、可変表示制御ユニット29と遊技制御基板31との間の信号を中継するための中継基板33、および景品球などの払出制御を行う払出制御用マイクロコンピュータなどが搭載された払出制御基板37が設置されている。さらに、機構板36の下部には、モータの回転力を利用して打球を遊技領域7に発射する打球発射装置34と、遊技効果ランプ・LED28a,28b,28c、賞球ランプ51および球切れランプ52に信号を送るためのランプ制御基板35が設置されている。
また、図3はパチンコ遊技機1の機構板を背面からみた背面図である。誘導樋39を通った遊技球は、図3に示されるように、球切れ検出器(球切れスイッチ)187a,187bを通過して球供給樋186a,186bを経て球払出装置97に至る。球切れスイッチ187a,187bは遊技球通路内の遊技球の有無を検出するスイッチであるが、球タンク38内の補給球の不足を検出する球切れ検出スイッチ167も設けられている。球払出装置97から払い出された遊技球は、連絡口45を通ってパチンコ遊技機1の前面に設けられている打球供給皿3に供給される。連絡口45の側方には、パチンコ遊技機1の前面に設けられている余剰球受皿4に連通する余剰球通路46が形成されている。入賞にもとづく景品球が多数払い出されて打球供給皿3が満杯になり、ついには遊技球が連絡口45に到達した後さらに遊技球が払い出されると、遊技球は、余剰球通路46を経て余剰球受皿4に導かれる。さらに遊技球が払い出されると、感知レバー47が満タンスイッチ48を押圧して満タンスイッチ48がオンする。その状態では、球払出装置97内のステッピングモータの回転が停止して球払出装置97の動作が停止するとともに、必要に応じて打球発射装置34の駆動も停止する。
なお、この実施の形態では、電気的駆動源の駆動によって遊技球を払い出す球払出装置として、ステッピングモータの回転によって遊技球が払い出される球払出装置97を用いることにするが、その他の駆動源によって遊技球を送り出す構造の球払出装置を用いてもよいし、電気的駆動源の駆動によってストッパを外し遊技球の自重によって払い出しがなされる構造の球払出装置を用いてもよい。
賞球払出制御を行うために、入賞口スイッチ19a,24a、始動口スイッチ17およびVカウントスイッチ22からの信号が、主基板31に送られる。主基板31のCPU56は、始動口スイッチ17がオンすると6個の賞球払出に対応した入賞が発生したことを知る。また、カウントスイッチ23がオンすると15個の賞球払出に対応した入賞が発生したことを知る。そして、入賞口スイッチがオンすると10個の賞球払出に対応した入賞が発生したことを知る。なお、この実施の形態では、例えば、入賞口24に入賞した遊技球は、入賞口24からの入賞球流路に設けられている入賞口スイッチ24aで検出され、入賞口19に入賞した遊技球は、入賞口19からの入賞球流路に設けられている入賞口スイッチ19aで検出される。
図4は、主基板31における回路構成の一例を示すブロック図である。なお、図4には、払出制御基板37、ランプ制御基板35、音制御基板70、発射制御基板91および表示制御基板80も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路53と、ゲートスイッチ12、始動口スイッチ17、Vカウントスイッチ22、カウントスイッチ23、入賞口スイッチ19a,24aおよび賞球カウントスイッチ301Aからの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16および開閉板20を開閉するソレノイド21等を基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
また、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示部9の画像表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等をホール管理コンピュータ等のホストコンピュータに対して出力する情報出力回路64を含む。
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段の一例であるRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。
さらに、主基板31には、電源投入時にCPU56をリセットするためのシステムリセット回路65と、基本回路53から与えられるアドレス信号をデコードしてI/Oポート部57のうちのいずれかのI/Oポートを選択するための信号を出力するアドレスデコード回路67とが設けられている。なお、球払出装置97から主基板31に入力されるスイッチ情報もあるが、図4ではそれらは省略されている。
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
なお、この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている始動記憶表示器18、ゲート通過記憶表示器41および装飾ランプ25の表示制御を行うとともに、枠側に設けられている遊技効果ランプ・LED28a,28b,28c、賞球ランプ51および球切れランプ52の表示制御を行う。ここで、ランプ制御手段は発光体制御手段の一例である。また、特別図柄を可変表示する可変表示部9および普通図柄を可変表示する可変表示器10の表示制御は、表示制御基板80に搭載されている表示制御手段によって行われる。
装飾ランプ25および遊技効果ランプ・LED28a,28b,28cは、遊技の進行に伴って装飾的に様々に表示制御される。また、始動記憶表示器18およびゲート通過記憶表示器41は、遊技進行に伴って所定の条件が成立すると表示状態が変更される。さらに、賞球ランプ51および球切れランプ52も、遊技機の状態に応じて表示制御される。この実施の形態では、遊技制御手段とは別に設けられているランプ制御手段が、装飾ランプ25および遊技効果ランプ・LED28a,28b,28cの表示制御を行い、さらに、始動記憶表示器18、ゲート通過記憶表示器41、賞球ランプ51および球切れランプ52の表示制御も行う。従って、遊技制御手段は、遊技機に設けられている発光体の具体的な点灯/消灯制御を行わなくてよく、遊技制御手段の発光体制御に関する制御負担が大きく低減されている。
図5は、表示制御基板80内の回路構成を、可変表示部9の一実現例であるLCD(液晶表示装置)82、可変表示器10、主基板31の出力ポート(ポートA,B)571,572および出力バッファ回路63A,63Bとともに示すブロック図である。出力ポート571からは8ビットのデータが出力され、出力ポート572からは1ビットのストローブ信号(INT信号)が出力される。
表示制御用CPU101は、制御データROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して表示制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、表示制御用CPU101がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと表示制御用CPU101との間に、I/Oポートが設けられる。
そして、表示制御用CPU101は、受信した表示制御コマンドに従って、LCD82に表示される画面の表示制御を行う。具体的には、表示制御コマンドに応じた指令をVDP103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
なお、図5には、VDP103をリセットするためのリセット回路83、VDP103に動作クロックを与えるための発振回路85、および使用頻度の高い画像データを格納するキャラクタROM86も示されている。キャラクタROM86に格納される使用頻度の高い画像データとは、例えば、LCD82に表示される人物、動物、または、文字、図形もしくは記号等からなる画像などである。
入力バッファ回路105A,105Bは、主基板31から表示制御基板80へ向かう方向にのみ信号を通過させることができる。従って、表示制御基板80側から主基板31側に信号が伝わる余地はない。すなわち、入力バッファ回路105A,105Bは、入力ポートともに不可逆性情報入力手段を構成する。表示制御基板80内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。
なお、出力ポート571,572の出力をそのまま表示制御基板80に出力してもよいが、単方向にのみ信号伝達可能な出力バッファ回路63A,63Bを設けることによって、主基板31から表示制御基板80への一方向性の信号伝達をより確実にすることができる。すなわち、出力バッファ回路63A,63Bは、出力ポートともに不可逆性情報出力手段を構成する。
また、高周波信号を遮断するノイズフィルタ107として、例えば3端子コンデンサやフェライトビーズが使用されるが、ノイズフィルタ107の存在によって、表示制御コマンドに基板間でノイズが乗ったとしても、その影響は除去される。なお、主基板31のバッファ回路63A,63Bの出力側にもノイズフィルタを設けてもよい。
図6は、主基板31における音声制御コマンドの信号送信部分および音声制御基板70の構成例を示すブロック図である。この実施の形態では、遊技進行に応じて、遊技領域7の外側に設けられているスピーカ27の音声出力を指示するための音声制御コマンドが、主基板31から音声制御基板70に出力される。
図6に示すように、音声制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポートC,D)573,574から出力される。出力ポート573からは8ビットのデータが出力され、出力ポート574からは1ビットのINT信号が出力される。音声制御基板70において、主基板31からの各信号は、入力バッファ回路705,705Bを介して音声制御用CPU701に入力する。なお、音声制御用CPU701がI/Oポートを内蔵していない場合には、入力バッファ回路705A,705Bと音声制御用CPU701との間に、I/Oポートが設けられる。
そして、例えばディジタルシグナルプロセッサによる音声合成回路702は、音声制御用CPU701の指示に応じた音声や効果音を発生し音量切替回路703に出力する。音量切替回路703は、音声制御用CPU701の出力レベルを、設定されている音量に応じたレベルにして音量増幅回路704に出力する。音量増幅回路704は、増幅した音声信号をスピーカ27に出力する。
入力バッファ回路705A,705Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路705A,705Bは、主基板31から音声制御基板70へ向かう方向にのみ信号を通過させることができる。よって、音声制御基板70側から主基板31側に信号が伝わる余地はない。従って、音声制御基板70内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。なお、入力バッファ回路705A,705Bの入力側にノイズフィルタを設けてもよい。
また、主基板31において、出力ポート573,574の外側にバッファ回路67A,67Bが設けられている。バッファ回路67A,67Bとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、音声制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路67A,67Bの出力側にノイズフィルタを設けてもよい。
図7は、主基板31およびランプ制御基板35における信号送受信部分を示すブロック図である。この実施の形態では、遊技領域7の外側に設けられている遊技効果LED28a、遊技効果ランプ28b,28cと遊技盤に設けられている装飾ランプ25の点灯/消灯と、賞球ランプ51および球切れランプ52の点灯/消灯とを示すランプ制御コマンドが主基板31からランプ制御基板35に出力される。また、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドも主基板31からランプ制御基板35に出力される。
図7に示すように、ランプ制御に関するランプ制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポートE,F)575,576から出力される。出力ポート575は8ビットのデータを出力し、出力ポート576は1ビットのINT信号を出力する。ランプ制御基板35において、主基板31からの制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。なお、ランプ制御用CPU351がI/Oポートを内蔵していない場合には、入力バッファ回路355A,355Bとランプ制御用CPU351との間に、I/Oポートが設けられる。
ランプ制御基板35において、ランプ制御用CPU351は、各制御コマンドに応じて定義されている遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25の点灯/消灯パターンに従って、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に対して点灯/消灯信号を出力する。点灯/消灯信号は、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に出力される。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
主基板31において、CPU56は、RAM55の記憶内容に未払出の賞球残数があるときに賞球ランプ51の点灯を指示する制御コマンドを出力し、前述した遊技盤裏面の払出球通路186a,186bの上流に設置されている球切れスイッチ187a,187b(図3参照)が遊技球を検出しなくなると球切れランプ52の点灯を指示する制御コマンドを出力する。ランプ制御基板35において、各制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。ランプ制御用CPU351は、それらの制御コマンドに応じて、賞球ランプ51および球切れランプ52を点灯/消灯する。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
さらに、ランプ制御用CPU351は、制御コマンドに応じて始動記憶表示器18およびゲート通過記憶表示器41に対して点灯/消灯信号を出力する。
入力バッファ回路355A,355Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路355A,355Bは、主基板31からランプ制御基板35へ向かう方向にのみ信号を通過させることができる。従って、ランプ制御基板35側から主基板31側に信号が伝わる余地はない。たとえ、ランプ制御基板35内の回路に不正改造が加えられても、不正改造によって出力される信号がメイン基板31側に伝わることはない。なお、入力バッファ回路355A,355Bの入力側にノイズフィルタを設けてもよい。
また、主基板31において、出力ポート575,576の外側にバッファ回路62A,62Bが設けられている。バッファ回路62A,62Bとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、ランプ制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路62A,62Bの出力側にノイズフィルタを設けてもよい。
図8は、CPU56周りの一構成例を示すブロック図である。図8に示すように、第1の電源監視回路(電源監視手段)からの電圧低下信号が、CPU56のマスク不能割込端子(XNMI端子)に接続されている。第1の電源監視回路は、遊技機が使用する各種直流電源のうちのいずれかの電源の電圧を監視して電源電圧低下を検出する回路である。この実施の形態では、VSLの電源電圧を監視して電圧値が所定値以下になるとローレベルの電圧低下信号を発生する。VSLは、遊技機で使用される直流電圧のうちで最大のものであり、この例では+30Vである。従って、CPU56は、割込処理によって電源断の発生を確認することができる。なお、この実施の形態では、第1の電源監視回路は、後述する電源基板に搭載されている。
図8には、システムリセット回路65も示されているが、この実施の形態では、システムリセット回路65は、第2の電源監視回路も兼ねている。すなわち、リセットIC651は、電源投入時に、外付けのコンデンサの容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。すなわち、リセット信号をハイレベルに立ち上げてCPU56を動作可能状態にする。また、リセットIC651は、第1の電源監視回路が監視する電源電圧と等しい電源電圧であるVSLの電源電圧を監視して電圧値が所定値(第1の電源監視回路が電圧低下信号を出力する電源電圧値よりも低い値)以下になるとローレベルの電圧低下信号を発生する。従って、CPU56は、第1の電源監視回路からの電圧低下信号に応じて所定の電力供給停止時処理を行った後、システムリセットされる。なお、この実施の形態では、リセット信号と第2の電源監視回路からの電圧低下信号とは同一の信号である。
図8に示すように、リセットIC651からのリセット信号は、NAND回路947に入力されるとともに、反転回路(NOT回路)944を介してカウンタIC941のクリア端子に入力される。カウンタIC941は、クリア端子への入力がローレベルになると、発振器943からのクロック信号をカウントする。そして、カウンタIC941のQ5出力がNOT回路945,946を介してNAND回路947に入力される。また、カウンタIC941のQ6出力は、フリップフロップ(FF)942のクロック端子に入力される。フリップフロップ942のD入力はハイレベルに固定され、Q出力は論理和回路(OR回路)949に入力される。OR回路949の他方の入力には、NAND回路947の出力がNOT回路948を介して導入される。そして、OR回路949の出力がCPU56のリセット端子に接続されている。このような構成によれば、電源投入時に、CPU56のリセット端子に2回のリセット信号(ローレベル信号)が与えられるので、CPU56は、確実に動作を開始する。
そして、例えば、第1の電源監視回路の検出電圧(電圧低下信号を出力することになる電圧)を+22Vとし、第2の電源監視回路の検出電圧を+9Vとする。そのように構成した場合には、第1の電源監視回路と第2の電源監視回路とは、同一の電源VSLの電圧を監視するので、第1の電圧監視回路が電圧低下信号を出力するタイミングと第2の電圧監視回路が電圧低下信号を出力するタイミングの差を所望の所定期間に確実に設定することができる。所望の所定期間とは、第1の電源監視回路からの電圧低下信号に応じて電力供給停止時処理を開始してから電力供給停止時処理が確実に完了するまでの期間である。
この例では、第1の電源監視手段が検出信号を出力することになる第1検出条件は+30V電源電圧が+22Vにまで低下したことであり、第2の電源監視手段が検出信号を出力することになる第2検出条件は+30V電源電圧が+9Vにまで低下したことになる。ただし、ここで用いられている電圧値は一例であって、他の値を用いてもよい。
ただし、監視範囲が狭まるが、第1の電圧監視回路および第2の電圧監視回路の監視電圧として+5V電源電圧を用いることも可能である。その場合にも、第1の電圧監視回路の検出電圧は、第2の電圧監視回路の検出電圧よりも高く設定される。
CPU56等の駆動電源である+5V電源から電力が供給されていない間、RAMの少なくとも一部は、電源基板から供給されるバックアップ電源によってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、システムリセット回路65からリセット信号が発せられるので、CPU56は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップRAMに保存されているので、停電等からの復旧時に停電発生時の遊技状態に復帰することができる。
なお、図8では、電源投入時にCPU56のリセット端子に2回のリセット信号(ローレベル信号)が与えられる構成が示されたが、リセット信号の立ち上がりタイミングが1回しかなくても確実にリセット解除されるCPUを使用する場合には、符号941〜949で示された回路素子は不要である。その場合、リセットIC651の出力がそのままCPU56のリセット端子に接続される。
この実施の形態で用いられるCPU56は、I/Oポート(PIO)およびタイマ/カウンタ回路(CTC)も内蔵している。PIOは、PB0〜PB3の4ビットおよびPA0〜PA7の1バイトのポートを有する。PB0〜PB3およびPA0〜PA7のポートは、入力/出力いずれにも設定できる。ただし、この実施の形態では内蔵PIOを使用しない。その場合には、例えば、全ポートを入力モードとして、全ポートをグラウンドレベルに接続する。なお、電源投入時に、PIOは自動的に入力モードに設定される。
図9は、遊技機の電源基板910の一構成例を示すブロック図である。電源基板910は、主基板31、表示制御基板80、音声制御基板70、ランプ制御基板35および払出制御基板37等の電気部品制御基板と独立して設置され、遊技機内の各電気部品制御基板および機構部品が使用する電圧を生成する。この例では、AC24V、VSL(DC+30V)、DC+21V、DC+12VおよびDC+5Vを生成する。また、バックアップ電源となるコンデンサ916は、DC+5Vすなわち各基板上のIC等を駆動する電源のラインから充電される。
トランス911は、交流電源からの交流電圧を24Vに変換する。AC24V電圧は、コネクタ915に出力される。また、整流回路912は、AC24Vから+30Vの直流電圧を生成し、DC−DCコンバータ913およびコネクタ915に出力する。DC−DCコンバータ913は、+22V、+12Vおよび+5Vを生成してコネクタ915に出力する。コネクタ915は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。なお、トランス911の入力側には、遊技機に対する電源供給を停止したり開始させたりするための電源スイッチ918が設置されている。
DC−DCコンバータ913からの+5Vラインは分岐してバックアップ+5Vラインを形成する。バックアップ+5Vラインとグラウンドレベルとの間には大容量のコンデンサ916が接続されている。コンデンサ916は、遊技機に対する電力供給が遮断されたときの電気部品制御基板のバックアップRAM(電源バックアップされているRAMすなわち記憶内容保持状態となりうる記憶手段)に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、+5Vラインとバックアップ+5Vラインとの間に、逆流防止用のダイオード917が挿入される。
なお、バックアップ電源として、+5V電源から充電可能な電池を用いてもよい。電池を用いる場合には、+5V電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。
また、電源基板910には、上述した第1の電源監視回路を構成する電源監視用IC902が搭載されている。電源監視用IC902は、VSL電源電圧を導入し、VSL電源電圧を監視することによって電源断の発生を検出する。具体的には、VSL電源電圧が所定値(この例では+22V)以下になったら、電源断が生ずるとして電圧低下信号を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧(この例では+5V)よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるVSLが用いられている。電源監視用IC902からの電圧低下信号は、主基板31や払出制御基板37等に供給される。
電源監視用IC902が電源断を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のCPUが暫くの間動作しうる程度の電圧である。また、電源監視用IC902が、CPU等の回路素子を駆動するための電圧(この例では+5V)よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、CPUが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。さらに、監視電圧としてVSL(+30V)を用いる場合には、遊技機の各種スイッチに供給される電圧が+12Vであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、+30V電源の電圧を監視すると、+30V作成の以降に作られる+12Vが落ち始める以前の段階でそれの低下を検出できる。よって、+12V電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、+12Vより早く低下する+30V電源電圧を監視して電源断を認識すれば、スイッチ出力がオン状態を呈する前に電源復旧待ちの状態に入ってスイッチ出力を検出しない状態となることができる。
また、電源監視用IC902は、電気部品制御基板とは別個の電源基板910に搭載されているので、第1の電源監視回路から複数の電気部品制御基板に電圧低下信号を供給することができる。電圧低下信号を必要とする電気部品制御基板が幾つあっても第1の電源監視手段は1つ設けられていればよいので、各電気部品制御基板における各電気部品制御手段が後述する復帰制御を行っても、遊技機のコストはさほど上昇しない。
なお、図9に示された構成では、電源監視用IC902の検出出力(電圧低下信号)は、バッファ回路918,919を介してそれぞれの電気部品制御基板(例えば主基板31と払出制御基板37)に伝達されるが、例えば、1つの検出出力を中継基板に伝達し、中継基板から各電気部品制御基板に同じ信号を分配する構成でもよい。また、電圧低下信号を必要とする基板数に応じたバッファ回路を設けてもよい。
次に遊技機の動作について説明する。
図10は、主基板31におけるCPU56が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されると、メイン処理において、CPU56は、まず、必要な初期設定を行う(ステップS1)。
そして、電源断時にバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の停電発生NMI処理)が行われたか否か確認する(ステップS2)。不測の電源断が生じた場合には、後述するようにバックアップRAM領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、CPU56は初期化処理を実行する(ステップS2,S3)。なお、この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電源断時にバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。例えば、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
バックアップRAM領域にバックアップデータがある場合には、CPU56は、バックアップRAM領域のデータチェック(例えばパリティチェック)を行う(ステップS4)。不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する(ステップS5,S3)。
チェック結果が正常であれば、CPU56は、内部状態を電源断時の状態に戻すための遊技状態復旧処理を行う(ステップS6)。図11に示すように、バックアップフラグの値が「55H」に設定され、かつ、チェック結果が正常である場合に、ステップS6の遊技状態復旧処理が実行される。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する(ステップS7)。
通常の初期化処理の実行(ステップS3)が完了すると、メイン処理で、タイマ割込フラグの監視(ステップS9)の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理(ステップS8)も実行される。
なお、この実施の形態では、ステップS2でバックアップデータの有無が確認された後、バックアップデータが存在する場合にステップS4でバックアップ領域のチェックが行われたが、逆に、バックアップ領域のチェック結果が正常であったことが確認された後、バックアップデータの有無の確認を行うようにしてもよい。また、バックアップデータの有無の確認、またはバックアップ領域のチェックの何れか一方の確認を行うことによって、停電復旧処理を実行するか否かを判定してもよい。
また、例えば停電復旧処理を実行するか否か判断する場合のパリティチェック(ステップS4)の際に、すなわち、遊技状態を復旧するか否か判断する際に、保存されていたRAMデータにおける特別プロセスフラグ等や始動入賞記憶数データによって、遊技機が遊技待機状態(特別図柄変動中でなく、大当り遊技中でなく、確変中でなく、また、始動入賞記憶がない状態)であることが確認されたら、遊技状態復旧処理を行わずに初期化処理を実行するようにしてもよい。
図12は、ステップS1の初期設定処理を示すフローチャートである。初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1a)。割込禁止に設定すると、CPU56は、割込モードを割込モード2に設定し(ステップS1b)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS1c)。そして、CPU56は、内蔵デバイスレジスタの初期化を行う(ステップS1d)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS1e)を行った後、RAMをアクセス可能状態に設定する(ステップS1f)。割込モード2は、ここで用いられているCPU56が備えているモードあって、割込発生時に、特定レジスタの設定値と割込ベクタとから生成される割込番地にジャンプするようなモードである。
図13は、通常の初期化処理(ステップS3)の処理を示すフローチャートである。図13に示すように、初期化処理では、RAMのクリア処理が行われる(ステップS3a)。次いで、作業領域初期設定テーブルのアドレス値にもとづいて、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、払出コマンド格納ポインタなど)に初期値を設定する初期値設定処理(ステップS3b)が行われる。そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS3c)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理(ステップS1)において割込禁止(図12参照)とされているので、初期化処理を終える前に割込が許可される(ステップS3d)。
従って、この実施の形態では、CPU56の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、図14に示すように、タイマ割込が発生すると、CPU56は、タイマ割込フラグをセットする(ステップS12)。
CPU56は、ステップS9において、タイマ割込フラグがセットされたことを検出すると、タイマ割込フラグをリセットするとともに(ステップS10)、遊技制御処理を実行する(ステップS11)。以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、遊技制御処理はメイン処理において実行されるが、タイマ割込処理で遊技制御処理を実行してもよい。
以上に説明したように、この実施の形態では、バックアップデータの状態によって電源断時の状態に復旧するか否かの判断が行われるので、停電後の電源復旧時などにおいて電源投入されたときに、バックアップデータ記憶領域の内容の状態に応じて電源断時の状態に復旧させるか否かの判断を行うことができる。
図15は、ステップS11の遊技制御処理を示すフローチャートである。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートセンサ12、始動口センサ17、カウントセンサ23および入賞口スイッチ19a,24aの状態を入力し、各入賞口や入賞装置に対する入賞があったか否か判定する(スイッチ処理:ステップS21)。
次いで、パチンコ遊技機1の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる(エラー処理:ステップS22)。
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う(ステップS23)。CPU56は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う(ステップS24)。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、7セグメントLEDによる可変表示器10を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
また、CPU56は、表示制御基板80等に送出される制御コマンドをRAM55の所定の領域に設定する処理を行う(コマンド制御処理:ステップS27,)。
次いで、CPU56は、各種出力データの格納領域の内容を各出力ポートに出力する処理を行う(データ出力処理:ステップS29)。なお、CPU56は、例えばホール管理用コンピュータに出力される大当り情報、始動情報、確率変動情報などのデータを出力する処理等も行う。
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動信号を出力するソレノイド出力処理を行う(ステップS30)。ソレノイド回路59は、駆動信号に応じてソレノイド16,21を駆動し、可変入賞球装置15または開閉板20を開状態または閉状態とする。
また、CPU56は、各入賞口17,23,19a,24aの検出に基づく賞球数の設定などを行う(ステップS31)。すなわち、所定の条件が成立すると払出制御基板37に払出制御コマンドを出力するための制御を行う。払出制御基板37に搭載されている払出制御用CPU371は、払出制御コマンドに応じて球払出装置97を駆動する。
以上のように、メイン処理には遊技制御処理に移行すべきか否かを判定する処理が含まれ、CPU56の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理で遊技制御処理に移行すべきか否かを判定するためのフラグがセットされるので、遊技制御処理の全てが確実に実行される。つまり、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することは保証されている。
従来の一般的な遊技制御処理は、定期的に発生する外部割込によって、強制的に最初の状態に戻されていた。図15に示された例に則して説明すると、例えば、ステップS31の処理中であっても、強制的にステップS21の処理に戻されていた。つまり、遊技制御処理中の全ての各処理が実行完了する前に、次回の遊技制御処理が開始されてしまう可能性があった。
なお、ここでは、主基板31のCPU56が実行する遊技制御処理は、CPU56の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理でセットされるフラグに応じて実行されたが、定期的に(例えば2ms毎)信号を発生するハードウェア回路を設け、その回路からの信号をCPU56の外部割込端子に導入し、割込信号によって遊技制御処理に移行すべきか否かを判定するためのフラグをセットするようにしてもよい。
そのように構成した場合にも、遊技制御処理の全てが実行されるまでは、フラグの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することが保証される。
図16は、遊技制御に用いられる大当り決定用乱数等の各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:大当りを発生させるか否か決定する(大当り決定用)
(2)ランダム2−1〜2−3:左右中のはずれ図柄決定用
(3)ランダム3:大当り時の図柄の組合せを決定する(大当り図柄決定用)
(4)ランダム4:確変大当りとするか否か決定する(確変判定用)
(5)ランダム5:はずれ時にリーチするか否か決定する(リーチ判定用)
(6)ランダム6:リーチ種類を決定する(リーチ種類決定用)
(7)ランダム7:普通図柄による当りとするか否か決定する(当り判定用)
なお、遊技効果を高めるために、上記(1)〜(7)の乱数以外の乱数も用いられている。ステップS23では、CPU56は、(1)の大当り決定用乱数、(3)の大当り図柄決定用乱数、(4)の確変判定用乱数および(7)の当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらがステップS23でカウンタ値が更新される判定用乱数である。なお、その他の乱数(表示用乱数)はメイン処理のステップS8で更新されるのであるが、ステップS8において、ランダム2−1は1ずつ加算され、ランダム2−2はランダム2−1の桁上がり時に1加算され、ランダム2−3はランダム2−2の桁上がり時に1加算される。リーチ種類決定用のランダム6は、乱数にもとづいて決定される図柄との同期を防止するためにステップS8において3加算される。また、この実施の形態ではカウンタ値が加算されることによって乱数が生成されるが、カウンタ値を減算するように構成してもよい。
次に、始動入賞口14への入賞にもとづいて可変表示部9に可変表示される図柄(特別図柄)の決定方法について図17〜図19のフローチャートを参照して説明する。図17は打球が始動入賞口14に入賞したことを判定する処理を示し、図18は可変表示部9の可変表示の停止図柄を決定する処理を示す。図19は、大当りとするか否か決定する処理を示すフローチャートである。なお、ここでは、大当りとする場合に、確変とするか否かをも決定したあと停止図柄を決定するようにしているが、大当り停止図柄は確変大当りとは関係なく決定されるようにしてもよい。この場合、確変とするか否かの判断については、大当り決定後(例えば、大当り決定直後や、大当り状態終了後など)に別個に行われるようにしてもよい。
打球が遊技盤6に設けられている始動入賞口14に入賞すると、始動口センサ17がオンする。遊技制御処理のステップS25の特別図柄プロセス処理において、図17に示すように、CPU56は、スイッチ回路58を介して始動口センサ17がオンしたことを判定すると(ステップS71)、始動入賞記憶数が最大値である4に達しているかどうか確認する(ステップS72)。始動入賞記憶数が4に達していなければ、始動入賞記憶数を1増やし(ステップS73)、大当り決定用乱数の値を抽出する。そして、それを始動入賞記憶数の値に対応した乱数値格納エリアに格納する(ステップS74)。なお、始動入賞記憶数が4に達している場合には、始動入賞記憶数を増やす処理を行わない。すなわち、この実施の形態では、最大4個の始動入賞口17に入賞した打球数が記憶可能である。
図18に示すように、CPU56は、ステップS25の特別図柄プロセス処理において始動入賞記憶数の値を確認する(ステップS81)。始動入賞記憶数が0でなければ、始動入賞記憶数=1に対応する乱数値格納エリアに格納されている値を読み出すとともに(ステップS82)、始動入賞記憶数の値を1減らし、かつ、各乱数値格納エリアの値をシフトする(ステップS83)。すなわち、始動入賞記憶数=n(n=2,3,4)に対応する乱数値格納エリアに格納されている値を、始動入賞記憶数=n−1に対応する乱数値格納エリアに格納する。
そして、CPU56は、ステップS82で読み出した値、すなわち抽出されている大当り決定用乱数の値にもとづいて当り/はずれを決定する(ステップS84)。ここでは、大当り決定用乱数は0〜299の範囲の値をとることにする。図19に示すように、低確率時には例えばその値が「3」である場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。高確率時には例えばその値が「3」,「7」,「79」,「103」,「107」のいずれかである場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。
大当りと判定されたときには、CPU56は、確変判定用乱数(ランダム4)の値にもとづいて確変大当りとするか否か決定する(ステップS85)。そして、確変大当りとすることに決定された場合には(ステップS86)、確変フラグをセットする(ステップS87)。なお、確変フラグは、リーチ種類の選択等で使用される。また、大当り図柄決定用乱数(ランダム3)を抽出しその値に従って大当り図柄を決定する(ステップS88)。さらに、リーチ種類決定用乱数(ランダム6)を抽出しその値にもとづいてリーチ種類を決定する(ステップS89)。
はずれと判定された場合には、CPU56は、リーチとするか否か判定する(ステップS90)。例えば、リーチ判定用の乱数であるランダム4の値が「105」〜「1530」のいずれかである場合には、リーチとしないと決定する。そして、リーチ判定用乱数の値が「0」〜「104」のいずれかである場合にはリーチとすることを決定する。リーチとすることを決定したときには、CPU56は、リーチ図柄の決定を行う。
この実施の形態では、ランダム2−1の値に従って左右図柄を決定する(ステップS91)。また、ランダム2−2の値に従って中図柄を決定する(ステップS92)。すなわち、ランダム2−1およびランダム2−2の値の0〜15の値に対応したいずれかの図柄が停止図柄として決定される。ここで、決定された中図柄が左右図柄と一致した場合には、中図柄に対応した乱数の値に1加算した値に対応する図柄を中図柄の確定図柄として、大当り図柄と一致しないようにする。
さらに、CPU56は、リーチ種類決定用乱数(ランダム6)を抽出しその値にもとづいてリーチ種類を決定する(ステップS89)。ステップS90において、リーチしないことに決定された場合には、ランダム2−1〜2−3の値に応じて左右中図柄を決定する(ステップS93)。
以上のようにして、始動入賞にもとづく図柄変動の表示態様を大当りとするか、リーチ態様とするか、はずれとするか決定され、それぞれの停止図柄の組合せが決定される。
なお、高確率状態において、次に大当りとなる確率が上昇するとともに、7セグメントLEDによる可変表示器10の可変表示の確定までの時間が短縮され、かつ、可変表示器10の可変表示結果にもとづく当り時の可変入賞球装置15の開放回数および開放時間が高められるようにパチンコ遊技機1が構成されていてもよいし、可変表示器10の可変表示結果にもとづく当りの確率が高くなるように構成されていてもよい。また、それらのうちのいずれか一つまたは複数の状態のみが生ずるパチンコ遊技機1であってもよい。
また、この実施の形態で用いられた乱数および乱数値の範囲は一例であって、どのような乱数を用いてもよいし、範囲設定も任意である。
図20は、CPU56が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。図20に示す特別図柄プロセス処理は、図15のフローチャートにおけるステップS25の具体的な処理である。CPU56は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)を行った後に、内部状態に応じて、図20に示すステップS300〜S309のうちのいずれかの処理を行う。
ステップS310の変動短縮タイマ減算処理では、特別図柄の変動時間短縮の条件を満たしているか否か(例えば、始動入賞検出時から、その始動入賞にもとづく処理が実行されるまでに所定時間が経過しているか否か)を確認するための変動短縮タイマを減算する処理が行われる。そして、ステップS300〜S309の各処理において、以下のような処理が実行される。
特別図柄変動待ち処理(ステップS300):始動入賞口14(この実施の形態では可変入賞球装置15の入賞口)に打球入賞して始動口センサ17がオンするのを待つ。始動口センサ17がオンすると、始動入賞記憶数が満タンでなければ、始動入賞記憶数を+1するとともに大当り決定用乱数を抽出する。すなわち、図17に示された処理が実行される。
特別図柄判定処理(ステップS301):特別図柄の可変表示が開始できる状態になると、始動入賞記憶数を確認する。始動入賞記憶数が0でなければ、抽出されている大当り決定用乱数の値に応じて大当りとするかはずれとするか決定する。すなわち、図18に示された処理の前半が実行される。
停止図柄設定処理(ステップS302):左右中図柄の停止図柄を決定する。すなわち、図18に示された処理の中半が実行される。
リーチ動作設定処理(ステップS303):リーチ判定用乱数の値に応じてリーチ動作するか否か決定するとともに、リーチ種類決定用乱数の値に応じてリーチ時の変動期間を決定する。すなわち、図18に示された処理の後半が実行される。
全図柄変動開始処理(ステップS304):可変表示部9において全図柄が変動開始されるように制御する。このとき、表示制御基板80に対して、左右中最終停止図柄と変動態様を指令する情報とが送信される。処理を終えると、内部状態(プロセスフラグ)をステップS305に移行するように更新する。
全図柄停止待ち処理(ステップS305):所定時間(ステップS310の変動短縮タイマで示された時間)が経過すると、可変表示部9において表示される全図柄が停止されるように制御する。そして、停止図柄が大当り図柄の組み合わせである場合には、内部状態(プロセスフラグ)をステップS306に移行するように更新する。そうでない場合には、内部状態をステップS300に移行するように更新する。
大入賞口開放開始処理(ステップS306):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド21を駆動して大入賞口を開放する。また、大当りフラグ(大当り中であることを示すフラグ)のセットを行う。処理を終えると、内部状態(プロセスフラグ)をステップS307に移行するように更新する。
大入賞口開放中処理(ステップS307):大入賞口ラウンド表示の表示制御コマンドデータを表示制御基板80に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。最終的な大入賞口の閉成条件が成立したら、内部状態をステップS308に移行するように更新する。
特定領域有効時間処理(ステップS308):Vカウントスイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態をステップS306に移行するように更新する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、内部状態をステップS309に移行するように更新する。
大当り終了処理(ステップS309):大当り遊技状態が終了したことを遊技者に報知するための表示を行う。その表示が終了したら、内部状態をステップS300に移行するように更新する。
上述したように、始動入賞口14に打球が入賞すると、CPU56は、ステップS25(図15参照)の特別図柄プロセス処理において、大当りとするかはずれとするか、停止図柄、リーチ態様、確変とするかしないかを決定するが、その決定に応じた表示制御コマンドなどの制御コマンドを、表示制御手段などの電気部品制御手段に送出する。例えば表示制御手段では、主基板31からの表示制御コマンドに応じて可変表示部9の表示制御が行われる。
図21は、普通図柄プロセス処理(ステップS26)を示すフローチャートである。普通図柄プロセス処理では、CPU56は、ステップS61のゲートスイッチ処理を実行した後に、普通図柄プロセスフラグの値に応じてステップS62〜S66に示された処理のうちのいずれかの処理を実行する。
図22に示すように、ゲートスイッチ処理では、普通図柄変動開始の条件となる通過ゲート11の打球通過にもとづくゲートスイッチ12のオンを検出する(ステップS611)。ゲートスイッチ12がオンしていたら、ゲート通過記憶カウンタが最大値(この例では「4」)に達しているか否か確認する(ステップS612)。達していなければ、ゲート通過記憶カウンタの値を+1する(ステップS613)。なお、ゲート通過記憶カウンタの値に応じて通過記憶表示器41のLEDが点灯される。そして、CPU56は、当り判定用乱数(ランダム7)の値を抽出し、その値を記憶する(S614)。
ステップS62の普通図柄変動待ち処理では、CPU56は、普通図柄通過記憶カウンタの値が0以外であれば、普通図柄プロセスフラグの値を更新する。普通図柄通過記憶カウンタの値が0であれば何もしない。
図23は、この実施の形態での当り判定用乱数(ランダム7)と当り/はずれとの関係を示す説明図である。図23に示すように、高確率のときには当り値は3〜12のいずれかであり、低確率のときには3、5または7である。当り判定用乱数の値が当り値と一致すれば、当りと決定される。
図24は、電源基板910の電源監視回路からの電圧変化信号にもとづくNMIに応じて実行される停電発生NMI処理の一例を示すフローチャートである。停電発生NMI処理において、CPU56は、まず、停電時などの電源断時直前の割込許可/禁止状態をバックアップするために、割込禁止フラグの内容をパリティフラグに格納する(ステップS41)。次いで、割込禁止に設定する(ステップS42)。停電発生NMI処理ではRAM内容の保存を確実にするためにチェックサムの生成処理を行う。その処理中に他の割込処理が行われたのではチェックサムの生成処理が完了しないうちにCPUが動作し得ない電圧にまで低下してしまうことが考えられるので、まず、他の割込が生じないような設定がなされる。なお、停電発生NMI処理におけるステップS44〜S50は、電力供給停止時処理の一例である。
なお、割込処理中では他の割込がかからないような仕様のCPUを用いている場合には、ステップS42の処理は不要である。
次いで、CPU56は、バックアップフラグが既にセットされているか否か確認する(ステップS42)。バックアップフラグが既にセットされていれば、以後の処理を行わない。バックアップフラグがセットされていなければ、以下の電力供給停止時処理を実行する。すなわち、ステップS44からステップS50の処理を実行する。
まず、各レジスタの内容をバックアップRAM領域に格納する(ステップS44)。その後、バックアップフラグをセットする(ステップS45)。そして、バックアップRAM領域のバックアップチェックデータ領域に適当な初期値を設定し(ステップS46)、初期値およびバックアップRAM領域のデータについて順次排他的論理和をとったあと反転し(ステップS47)、最終的な演算値をバックアップパリティデータ領域に設定する(ステップS48)。また、RAMアクセス禁止状態にする(ステップS49)。電源電圧が低下していくときには、各種信号線のレベルが不安定になってRAM内容が化ける可能性があるが、このようにRAMアクセス禁止状態にしておけば、バックアップRAM内のデータが化けることはない。
さらに、CPU56は、主基板31に搭載されている全ての出力ポートに対してクリア信号を出力する。すると、全ての出力ポートは、クリア信号によりクリアされオフ状態とされる(ステップS50)。
次いで、CPU56は、ループ処理にはいる。すなわち、何らの処理もしない状態になる。従って、図8に示されたリセットIC651からのシステムリセット信号によって外部から動作禁止状態にされる前に、内部的に動作停止状態になる。よって、電源断時に確実にCPU56は動作停止する。その結果、上述したRAMアクセス禁止の制御および動作停止制御によって、電源電圧が低下していくことに伴って生ずる可能性がある異常動作に起因するRAMの内容破壊等を確実に防止することができる。
なお、この実施の形態では、停電発生NMI処理では最終部でプログラムをループ状態にしたが、ホールト(HALT)命令を発行するように構成してもよい。
また、レジスタの内容をRAM領域に格納した後にセットされるバックアップフラグは、上述したように、電源投入時において復旧すべきバックアップデータがあるか否か(停電からの復旧か否か)を判断する際に使用される。また、ステップS41からS50の処理は、CPU56がシステムリセット回路65からのシステムリセット信号を受ける前に完了する。換言すれば、システムリセット回路65からのシステムリセット信号を受ける前に完了するように、電圧監視回路の検出電圧の設定が行われている。
この実施の形態では、電力供給停止時処理開始時に、バックアップフラグの確認が行われる。そして、バックアップフラグが既にセットされている場合には電力供給停止時処理を実行しない。上述したように、バックアップフラグは、必要なデータのバックアップが完了し、その後電力供給停止時処理が完了したことを示すフラグである。従って、例えば、リセット待ちのループ状態で何らかの原因で再度NMIが発生したとしても、電力供給停止時処理が重複して実行されてしまうようなことはない。
ただし、割込処理中では他の割込がかからないような仕様のCPUを用いている場合には、ステップS43の判断は不要である。
図25は、バックアップパリティデータ作成方法の一例を説明するための説明図である。ただし、図25に示す例では、簡単のために、バックアップデータRAM領域のデータのサイズを3バイトとする。電源電圧低下にもとづく停電発生処理において、図25に示すように、バックアップチェックデータ領域に、初期データ(この例では00H)が設定される。次に、「00H」と「F0H」の排他的論理和がとられ、その結果と「16H」の排他的論理和がとられる。さらに、その結果と「DFH」の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転して得られた値(この例では「C6H」)がバックアップパリティデータ領域に設定される。
電源が再投入されたときには、停電復旧処理においてパリティ診断が行われる。バックアップ領域の全データがそのまま保存されていれば、電源再投入時に、図25に示すようなパリティデータがバックアップ領域に設定されている。
メイン処理のステップS4の処理において、CPU56は、電源発生NMI処理にて実行された処理と同様の処理を行う。すなわち、バックアップチェックデータ領域に、初期データ(この例では00H)が設定され、「00H」と「F0H」の排他的論理和がとられ、その結果と「16H」の排他的論理和がとられる。さらに、その結果と「DFH」の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転した最終演算結果を得る。バックアップ領域の全データがそのまま保存されていれば、最終的な演算結果は、「C6H」、すなわちバックアップチェックデータ領域に設定されているパリティデータと一致する。バックアップRAM領域内のデータにビット誤りが生じていた場合には、最終的な演算結果は「C6H」にならない。
よって、CPU56は、最終的な演算結果とバックアップチェックデータ領域に設定されているパリティデータとを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。
以上のように、この実施の形態では、遊技制御手段には、遊技機の電源が断しても、所定期間電源バックアップされる記憶手段(この例ではバックアップRAM)が設けられ、電源投入時に、CPU56(具体的にはCPU56が実行するプログラム)は、記憶手段がバックアップ状態にあればバックアップデータにもとづいて遊技状態を回復させる遊技状態復旧処理(ステップS6)を行うように構成される。
この実施の形態では、図9に示されたように電源基板910に電源監視回路が搭載され、図8に示されたように主基板31にシステムリセット回路65が搭載されている。そして、電源電圧が低下していくときに、システムリセット回路65がローレベルのシステムリセット信号を発生する時期は、電源監視回路(この例では電源監視用IC902)がローレベルのNMI割込信号を発生する時期よりも遅くなるように設定されている。さらに、システムリセット回路65からのローレベルのシステムリセット信号は、CPU56のリセット端子に入力されている。
すると、CPU56は、電源監視手段(電源監視用IC902)からの電圧低下信号にもとづいて停電発生処理(電力供給停止時処理)を実行した後にループ状態に入るのであるが、ループ状態において、リセット状態に入ることになる。すなわち、CPU56の動作が完全に停止する。+5V電源電圧値以下においては、CPU56の正常な動作が担保できない(即ち、動作の管理ができない状態が発生する)が、CPU56は正常に動作できる電源が供給されている状態でリセット状態になるので、不定データにもとづいて異常動作してしまうことは防止される。
このように、この実施の形態では、CPU56が、電源監視回路からの検出出力の入力に応じてループ状態に入るとともに、システムリセット回路65からの検出出力の入力に応じてシステムリセットされるように構成されている。従って、電源断時に確実なデータ保存が行われ、遊技者に不利益がもたらされることが防止される。
なお、この実施の形態では、電源監視用IC902と、システムリセット回路65は、同一の電源電圧を監視しているが、異なる電源電圧を監視してもよい。例えば、電源基板910の電源監視回路が+30V電源電圧を監視し、システムリセット回路65が+5V電源電圧を監視してもよい。そして、システムリセット回路65がローレベルのシステムリセット信号を発生するタイミングは電源監視回路がNMI割込信号を発生するタイミングに対して遅くなるように、システムリセット回路65のしきい値レベル(システムリセット信号を発生する電圧レベル)が設定される。例えば、しきい値は4.25Vである。4.25Vは、通常時の電圧より低いが、CPU56が暫くの間動作しうる程度の電圧である。なお、システムリセット回路65に設けられた遅延手段の遅延時間(本例では、コンデンサの容量)を調整して、システムリセット回路65がローレベルのシステムリセット信号を発生するタイミングを電源監視回路がNMI割込信号を発生するタイミングに対して遅らせるようにしてもよい。
また、上記の実施の形態では、CPU56は、マスク不能割込端子(XNMI端子)を介して電源基板からのNMI割込信号(電源監視手段からのNMI割込信号)を検知したが、NMI割込信号をマスク可能割込割込端子(INT端子)に導入してもよい。その場合には、割込処理(INT処理)で電力供給停止時処理が実行される。また、入力ポートを介して電源基板からのNMI割込信号を検知してもよい。その場合には、メイン処理において入力ポートの監視が行われる。
また、NMI割込信号に変えて、INT端子を介して電源基板からの割込信号を検知する場合に、メイン処理のステップS11における遊技制御処理の開始時に割込マスクをセットし、遊技制御処理の終了時に割込マスクを解除するようにしてもよい。そのようにすれば、遊技制御処理の開始前および終了後に割込がかかることになって、遊技制御処理が中途で中断されることはない。従って、払出制御コマンドを払出制御基板37に送出しているときなどにコマンド送出が中断されてしまうようなことはない。よって、停電が発生するようなときでも、払出制御コマンド等は確実に送出完了する。
また、この実施の形態では、停電発生処理(電力供給停止時処理)において、既にデータがバックアップされ電力供給停止時処理が既に実行されたことを示すバックアップフラグがセットされている場合には電力供給停止時処理を実行しないように構成されている。電源が断する過程では、再度NMIが発生する可能性がある。すると、停電発生処理においてバックアップフラグの確認を行わない場合には、再度発生したNMIによって再度電力供給停止時処理が実行される。
最初に実行された正規の電力供給停止時処理では、レジスタの内容をバックアップRAMに格納する処理が行われる(図24におけるステップS44参照)。最初に実行された正規の電力供給停止時処理後のリセット待ちの状態では電源電圧は徐々に低下していくので、レジスタの内容が破壊される可能性もある。すなわち、レジスタ値は、電源断が検出されたときの状態(最初にNMIが発生したとき)から変化している可能性がある。そのような状態で再度電力供給停止時処理が実行されると、電源断が検出されたときの状態のレジスタ値とは異なる値がバックアップRAMに格納されてしまう。すると、電源復旧時に実行される停電復旧処理において、電源断が検出されたときの状態のレジスタ値とは異なる値がレジスタに復旧されてしまう。その結果、電源断時の遊技状態とは異なる遊技状態が再現されてしまう可能性が生ずる。
以下、遊技状態復旧処理について説明する。
図26は、図10のステップS6に示された遊技状態復旧処理の一例を示すフローチャートである。この例では、CPU56は、バックアップRAMに保存されていた値を各レジスタに復元する(ステップS51)。そして、バックアップRAMに保存されていたデータにもとづいて停電時の遊技状態を確認して復帰させる。すなわち、バックアップRAMに保存されていたデータにもとづいて、ソレノイド回路59を介してソレノイド16やソレノイド21を駆動し、始動入賞口14や開閉板20の開閉状態の復旧を行う(ステップS52,S53)。また、電源断中でも保存されていた特別図柄プロセスフラグおよび普通図柄プロセスフラグの値に応じて、電源断時の特別図柄プロセス処理の進行状況および普通図柄プロセス処理の進行状況に対応した制御コマンドを、表示制御基板80、ランプ制御基板35および音声制御基板70に送出する(ステップS53)。
以上のように、遊技状態復旧処理では、復元された内部状態に応じて、各種電気部品の状態復元が行われるとともに、表示制御基板80、ランプ制御基板35および音声制御基板70に対して、制御状態を電源断時の状態に戻すための制御コマンド(電源断時の制御状態を生じさせるための制御コマンド)が送出される。そのような制御コマンドは、一般に、電源断前に最後に送出された1つまたは複数の制御コマンドである。
その結果、この実施の形態では、遊技状態復旧処理によって、以下のような状態復旧が可能である。
始動入賞口14および大入賞口(開閉板20)の状態が復元される。表示制御手段によって制御される普通図柄の表示状態(可変表示器10の表示状態)は、電源断時に変動中であった場合を除いて復元される。表示制御手段によって制御される特別図柄の表示状態(可変表示部9の表示状態)は、電源断時に変動中であった場合を除いて復元される。さらに、可変表示部9に表示される背景やキャラクタは、特別図柄変動中および大当り遊技中であった場合を除いて復元される。
特別図柄の変動中に電源断となった場合には、可変表示パターンの変動時間(例えば10秒)および既に実行した時間(例えば4秒)の情報がバックアップされる。そして、主基板31のCPU56は、復旧時に、表示パターンを示す表示制御コマンドおよび停止図柄を示す表示制御コマンドを表示制御基板80に出力し、残り時間(例えば6秒)経過後に、図柄を停止させるため表示制御コマンドを出力する。従って、電源断時に特別図柄の変動中であった場合には、復旧時に、可変表示部9において、残りの時間(例えば6秒)に応じた可変表示がなされる。なお、復旧時に表示制御基板80に対して出力される表示パターンを示す表示制御コマンドは、電源断前に出力された表示パターンを示す表示制御コマンドと同じものであってもよいが、「停電復旧中です」のような画像を表示させるためのコマンドであってもよい。その場合、残りの時間(例えば6秒)だけ「停電復旧中です」の表示がなされる。なお、特別図柄の変動中に電源断となった場合の普通図柄の表示状態についても同様の制御が行われる。
なお、大当り遊技中に電源断となった場合にも、復旧時に、特別図柄の変動中に電源断となった場合と同様に、ラウンド中あるいはラウンド間のインターバルの残り時間について、表示、音、ランプ、ソレノイド21などの制御が行われる。その場合、主基板31のCPU56は、表示制御基板80に対して電源断前に出力した確定時の図柄(停止図柄)を指定する表示制御コマンドを出力する。よって、ラウンド中あるいはラウンド間の大当り図柄による演出が可能となり(大当り図柄で大当り演出する機種について)、また、大当り終了後の変動開始時に表示する図柄も表示制御手段が認識することができる。
不測の電源断からの復旧時に、ランプ制御手段が制御する装飾ランプ25、始動記憶表示器18、ゲート通過記憶表示器41、賞球ランプ51および球切れランプ52の表示状態も復元される。また、遊技効果ランプ・LED28a,28b,28cの表示状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。各制御区間とは、例えば、大当り開始報知状態、大入賞口開放前状態、大入賞口開放中状態、大当り終了報知状態である。なお、電源断時に特別図柄変動中であって、電源復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ遊技効果ランプ・LED28a,28b,28cの表示状態を制御するようにしてもよいが、消灯または停電復旧時特有のパターンで点灯/点滅するようにしてもよい。
不測の電源断からの復旧時に、音声制御手段が制御する音発生状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。なお、電源断時に特別図柄変動中であって、電源復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ音発生状態を制御するようにしてもよいが、無音または停電復旧時特有の音声パターン(例えば「停電復旧中です」との音声)を出力するようにしてもよい。
なお、この実施の形態では、電源断からの復旧時に、主基板31の遊技制御手段から表示制御手段、ランプ制御手段および音声制御手段に対して状態復元のための制御コマンドが送出されるが、表示制御手段、ランプ制御手段および音声制御手段が電源バックアップされる場合には、主基板31からの制御コマンドを用いることなく、表示制御手段、ランプ制御手段および音声制御手段が独自に制御状態を復元するように構成してもよい。
遊技状態を電源断時の状態に復帰させると、この実施の形態では、CPU56は、前回の電源断時の割込許可/禁止状態を復帰させるために、バックアップRAMに保存されていたパリティフラグの値を確認する(ステップS55)。パリティフラグがクリアであれば、割込許可設定を行う(ステップS56)。一方、パリティフラグがオンであれば、そのまま(ステップS1aで設定された割込禁止状態のまま)遊技状態復旧処理を終える。
なお、図26では、遊技状態復旧処理が終了するとメイン処理にリターンするようになっているが、実際には、電力供給停止時処理において保存されているスタックポインタが指すスタックエリア(バックアップRAM領域にある)に記憶されているアドレス(電源断時のNMI割込発生時に実行されていたアドレス)をプログラムカウンタに書き戻してからRET命令を発行するので、NMI発生時に実行していたアドレスに戻る。
上述したように、初期設定処理を開始した後、復旧処理を終える前まで、または初期化処理を終える前までの間は、割込禁止状態とされている。従って、割込みにより処理が中断されることを防止することができる。その結果、初期設定、バックアップデータ記憶領域の内容に応じて行われる電源断時の状態に復旧させるか否かの判断、および復旧処理(または初期化処理)を確実に完了させることができる。なお、上記のように復旧処理を終える前まで割込禁止状態とする構成とした場合であっても、電源断時の割込禁止/許可状態がパリティフラグに保存されているので、復旧処理において電源断時の割込禁止/許可状態を確実に復旧させることができる。
なお、上記の実施の形態では、遊技制御手段において、データ保存処理および復旧処理が行われる場合について説明したが、払出制御手段、音声制御手段、ランプ制御手段および表示制御手段におけるRAMの一部も電源バックアップされ、払出制御手段、表示制御手段、音制御手段およびランプ制御手段も、上述したような処理を行ってもよい。ただし、払出制御手段、表示制御手段、音制御手段およびランプ制御手段は、復旧時にコマンド送出処理を行う必要はない。
以下、遊技制御手段から他の電気部品制御手段に送出される制御コマンドおよび制御コマンドにもとづく処理について説明する。
図27は、特別図柄の変動と表示制御コマンドとの関係を示すタイミング図である。図27に示すように、変動開始時に、変動パターン指定、左図柄指定、中図柄指定および右図柄指定のコマンドが主基板31から表示制御基板80に送信される。また、変動終了時に、全図柄停止を示すコマンドが送信される。このように、この実施の形態では、1回の変動について5個のコマンドが送信される。
図28は、表示制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、表示制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。
図29は、表示制御コマンドの内容の一例を示す説明図である。図29に示す例において、コマンド8000(H)〜8022(H)、8100(H)〜8122(H)は、特別図柄を可変表示する可変表示部9における特別図柄の変動パターンを指定する表示制御コマンドである。なお、変動パターンを指定するコマンドは変動開始指示も兼ねている。コマンド88XX(X=4ビットの任意の値)は、可変表示器10で可変表示される普通図柄の変動パターンに関する表示制御コマンドである。コマンド89XXは、普通図柄の停止図柄を指定する表示制御コマンドである。コマンド8AXX(X=4ビットの任意の値)は、普通図柄の可変表示の停止を指示する表示制御コマンドである。
コマンド91XX、92XXおよび93XXは、特別図柄の左中右の停止図柄を指定する表示制御コマンドである。また、コマンドA0XXは、特別図柄の可変表示の停止を指示する表示制御コマンドである。コマンドBXXXは、大当り遊技開始から大当り遊技終了までの間に送出される表示制御コマンドである。そして、コマンドC000およびEXXXは、特別図柄の変動および大当り遊技に関わらない可変表示部9の表示状態に関する表示制御コマンドである。表示制御基板80の表示制御手段は、主基板31の遊技制御手段から上述した表示制御コマンドを受信すると図29に示された内容に応じて可変表示部9および可変表示器10の表示状態を変更する。
図30は、表示制御コマンドの送出形態の一例を示すタイミング図である。この実施の形態では、8ビットの表示制御信号CD〜CD7によって表示制御コマンドが出力される。そして、表示制御コマンドの1バイト目および2バイト目が出力されているときに、INT信号がオン(この例ではローレベル)になる。INT信号のオン期間は例えば1μs以上であり、1バイト目と2バイト目との間には4μs以上の期間があけられる。表示制御手段は、INT信号に応じた割込処理によって表示制御信号CD〜CD7を入力する。
なお、表示制御コマンドは、表示制御手段が認識可能に(受信可能に)1回だけ送出される。認識可能(受信可能)とは、この例では、INT信号がオン状態になることであり、認識可能(受信可能)に1回だけ送出されるとは、この例では、INT信号が1回だけオン状態になることである。遊技制御手段は、コマンドを1回だけ送出するように構成されるので、この点からも、コマンド送出に要する負荷が軽減される。ただし、認識可能に1回だけ送出されればよいのであるから、他の送出方法を用いてもよい。
図31は、主基板31から音声制御基板70に送出される音声制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、音声制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。
図32は、音声制御コマンドの内容の一例を示す説明図である。図32に示す例において、コマンド8XXX(X=4ビットの任意の値)は、特別図柄の変動期間における音発生パターンを指定する音声制御コマンドである。コマンドBXXX(X=4ビットの任意の値)は、大当り遊技開始から大当り遊技終了までの間における音発生パターンを指定する音声制御コマンドである。その他のコマンドは、特別図柄の変動および大当り遊技に関わらない音声制御コマンドである。音声制御基板70の音声制御手段は、主基板31の遊技制御手段から上述した音声制御コマンドを受信すると図32に示された内容に応じて音声出力状態を変更する。
図33は、音声制御コマンドの送出形態の一例を示すタイミング図である。この実施の形態では、8ビットの音声制御信号CD〜CD7によって音声制御コマンドが出力される。そして、音声制御コマンドの1バイト目および2バイト目が出力されているときに、INT信号がオン(この例ではローレベル)になる。INT信号のオン期間は例えば2μs以上であり、1バイト目と2バイト目との間には30μs以上の期間があけられる。音声制御手段は、INT信号に応じた割込処理によって音声制御信号CD〜CD7を入力する。なお、音声制御コマンドは、音声制御手段が認識可能に1回だけ送出される。
図34は、ランプ制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、ランプ制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。
図35は、ランプ制御コマンドの内容の一例を示す説明図である。図35に示す例において、コマンド8000(H)〜8022(H)、8100(H)〜8122(H)は、可変表示部9における特別図柄の変動パターンに対応したランプ・LED表示制御パターンを指定するランプ制御コマンドである。また、コマンドA0XX(X=4ビットの任意の値)は、特別図柄の可変表示の停止時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドBXXXは、大当り遊技開始から大当り遊技終了までの間のランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドC000は、客待ちデモンストレーション時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。
なお、コマンド8XXX、AXXX、BXXXおよびCXXXは、遊技進行状況に応じて遊技制御手段から送出されるランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から上述したランプ制御コマンドを受信すると図35に示された内容に応じてランプ・LEDの表示状態を変更する。
コマンドE0XXは、始動記憶表示器18の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、始動記憶表示器18における「XX」で指定される個数の表示器を点灯状態とする。また、コマンドE1XXは、ゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、ゲート通過記憶表示器41における「XX」で指定される個数の表示器を点灯状態とする。すなわち、それらのコマンドは、保留個数という情報を報知するために設けられている発光体の制御を指示するコマンドである。なお、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数に関するコマンドが点灯個数の増減を示すように構成されていてもよい。
コマンドE200およびE201は、賞球ランプ51の表示状態に関するランプ制御コマンドであり、コマンドE300およびE301は、球切れランプ52の表示状態に関するランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から「E201」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がある場合としてあらかじめ定められた表示状態とし、「E200」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がない場合としてあらかじめ定められた表示状態とする。また、主基板31の遊技制御手段から「E300」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球あり中の表示状態とし、「E301」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球切れ中の表示状態とする。すなわち、コマンドE200およびE201は、未賞球の遊技球があることを遊技者等に報知するために設けられている発光体を制御することを示すコマンドであり、コマンドE300およびE301は、補給球が切れていることを遊技者や遊技店員に報知するために設けられている発光体を制御することを示すコマンドである。
コマンドE400は、遊技機の電源投入時、または特定遊技状態(高確率状態や時短状態、この例では高確率状態)から通常状態(低確率状態や非時短状態、この例では低確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドE401は、通常状態(低確率状態や非時短状態、この例では低確率状態)から特定遊技状態(高確率状態や時短状態、この例では高確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドE402は、大当り遊技中に発生したエラーが解除されたときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドE403は、カウントスイッチ23のエラーが発生したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。すなわち、それらのコマンドは、発光体によって遊技状態を報知することを指示するコマンドである。この実施の形態では、ランプ制御手段は、遊技状態を報知することを指示するコマンドを受信すると、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部または全部を用いて、遊技状態を報知するための点灯/消灯制御を行う。なお、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cは、それぞれ、複数の発光体の集まりで構成されていてもよく、その場合、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部を用いて遊技状態を報知するということは、例えば、装飾ランプ25を構成する複数の発光体のうちの一部を用いてもよいということも意味する。
図36は、ランプ制御コマンドの送出形態の一例を示すタイミング図である。この実施の形態では、8ビットのランプ制御信号CD〜CD7によってランプ制御コマンドが出力される。そして、ランプ制御コマンドの1バイト目および2バイト目が出力されているときに、INT信号がオン(この例ではローレベル)になる。INT信号のオン期間は例えば2μs以上であり、1バイト目と2バイト目との間には30μs以上の期間があけられる。INT信号のオン期間は例えば1μs以上である。ランプ制御手段は、INT信号に応じた割込処理によってランプ制御信号CD〜CD7を入力する。なお、ランプ制御コマンドは、ランプ制御手段が認識可能に1回だけ送出される。
図37は、図15に示された遊技制御処理におけるコマンド制御処理(遊技制御処理におけるステップS27)の一例を示すフローチャートである。ここでは、特別図柄の変動に関連する各制御コマンド(表示制御コマンド、音声制御コマンド、ランプ制御コマンド)、始動入賞記憶に関するランプ制御コマンドおよびゲート通過記憶に関するランプ制御コマンドを例にとって説明する。コマンド制御処理において、CPU56は、音声データに変更がないかどうか判定する(ステップS701)。音声データは、例えば特別図柄プロセス処理(遊技制御処理におけるステップS25)において、音声切替タイミングが生ずると変更される。
音声データに変更があった場合には、CPU56は、変更後の音声データに対応した音声制御コマンドデータを読み出す(ステップS702)。各音声制御コマンドデータは例えばROMに格納されている。そして、読み出した音声データを音声制御コマンドを格納するために設けられているバッファ領域#2に設定する(ステップS703)。また、音声制御コマンド送出要求をセットする(ステップS704)。
次に、CPU56は、ランプデータに変更がないかどうか判定する(ステップS711)。ランプデータも、例えば特別図柄プロセス処理において、ランプ・LED制御切替タイミングが生ずると変更される。
ランプデータに変更があった場合には、CPU56は、変更後のランプデータに対応したランプ制御コマンドデータを読み出す(ステップS712)。そして、読み出したランプデータをランプ制御コマンドを格納するために設けられているバッファ領域#1に設定する(ステップS713)。また、ランプ制御コマンド送出要求をセットする(ステップS714)。
次いで、CPU56は、始動入賞記憶に変化(増減)があったか否か判定する(ステップS715)。変化があった場合には、変化後の記憶数を示すランプ制御コマンドをバッファ領域#1に設定して(ステップS716)、ランプ制御コマンド送出要求をセットする(ステップS717)。さらに、ゲート通過記憶に変化(増減)があったか否か判定する(ステップS718)。変化があった場合には、変化後の記憶数を示すランプ制御コマンドをバッファ領域#1に設定して(ステップS719)、ランプ制御コマンド送出要求をセットする(ステップS720)。
また、CPU56は、表示制御データに変更がないかどうか判定する(ステップS721)。表示制御データも、例えば特別図柄プロセス処理において、表示制御切替タイミングが生ずると変更される。
表示制御データに変更があった場合には、変更後の表示制御データに対応した表示制御データを読み出す(ステップS722)。そして、読み出した表示制御データを、表示制御コマンドを格納するために設けられているバッファ領域#3に設定する(ステップS723)。また、表示制御制御コマンド送出要求をセットする(ステップS724)。
以上のようにして、コマンドを送出すべきタイミングになると、対応するバッファ領域に、送出されるべきコマンドが設定される。なお、ランプ制御コマンドについては、特別図柄プロセス処理以外でバッファ領域#1へのコマンド設定が行われることがある。例えば、初期化ランプ指定についてはメイン処理の初期化処理でコマンド設定が行われ、ゲート通過記憶数ランプ指定については、遊技制御処理における普通図柄プロセス処理(ステップS26)でコマンド設定が行われる。
図38は、バッファ領域に設定されたコマンドを出力するデータ出力処理(図15に示された遊技制御処理のステップS29)の一例を示すフローチャートである。データ出力処理において、CPU56は、表示制御コマンド送出要求がセットされているか否か確認する(ステップS771)。セットされていれば、特定レジスタ#1に1μsに相当する値を設定し、特定レジスタ#2に4μsに相当する値を設定し、特定レジスタ#3に「03」を設定する(ステップS772)。特定レジスタ#1には、INT信号のオン期間が設定される。また、特定レジスタ#2には、コマンドの1バイト目と2バイト目の間隔が設定される。そして、特定レジスタ#3には、どの制御コマンドを送出すべきかを示す値が設定される。
次いで、表示制御コマンド送出要求をリセットし(ステップS773)、コマンド送出サブルーチンをコールする(ステップS774)。
次に、CPU56は、音声制御コマンド送出要求がセットされているか否か確認する(ステップS776)。セットされていれば、特定レジスタ#1に2μsに相当する値を設定し、特定レジスタ#2に30μsに相当する値を設定し、特定レジスタ#3に「02」を設定する(ステップS777)。また、音声制御コマンド送出要求をリセットし(ステップS778)、コマンド送出サブルーチンをコールする(ステップS779)。
続いて、CPU56は、ランプ制御コマンド送出要求がセットされているか否か確認する(ステップS781)。セットされていれば、特定レジスタ#1に2μsに相当する値を設定し、特定レジスタ#2に30μsに相当する値を設定し、特定レジスタ#3に「01」を設定する(ステップS782)。また、ランプ制御コマンド送出要求をリセットし(ステップS783)、コマンド送出サブルーチンをコールする(ステップS784)。
図39は、コマンド送出サブルーチンを示すフローチャートである。コマンド送出サブルーチンでは、CPU56は、特定レジスタ#3に設定されている値に応じたバッファ領域(例えば「03」が設定されていれば、バッファ領域#3=表示制御コマンド格納用バッファ領域)に設定されているデータの1バイト目を、対応する出力ポートに出力する(ステップS790)。対応する出力ポートとは、ランプ制御コマンドを送出するのであれば、出力ポート575である(図7参照)。
そして、対応するINT信号をオン状態にする(ステップS791)。また、特定レジスタ#1に設定されている値に応じた時間だけディレイ時間をおいた後(ステップS792)、INT信号をオフ状態にする(ステップS793)。
次いで、特定レジスタ#2に設定されている値を確認し(ステップS794)、0が設定されていることを確認したら処理を終了する。0でない値が設定されていたら、特定レジスタ#3に設定されている値に応じたバッファ領域に設定されているデータの2バイト目を、対応する出力ポートに出力し(ステップS795)、特定レジスタ#2に設定されている値に応じた時間だけディレイ時間をおいた後(ステップS796)、対応するINT信号をオン状態にする(ステップS797)。さらに、特定レジスタ#1に設定されている値に応じた時間だけディレイ時間をおいた後(ステップS798)、INT信号をオフ状態にする(ステップS799)。
以上のような処理によって、制御コマンドは、図30、図33および図36に示されたようなタイミングで、主基板31から送出される。
この実施の形態では、表示制御コマンド、音声制御コマンドおよびランプ制御コマンドンドについて、共通のサブルーチンをコールするので、送出されるべきコマンド出力処理も共通化することができる。その結果、遊技制御手段におけるコマンド送出に要する負荷がさらに軽減される。なお、全ての制御コマンドについて共通化されていなくても、いずれか2つ以上の制御コマンド(例えば、ランプ制御コマンドと音声制御コマンド)を出力する処理が共通化されていれば、そうでない場合に比べて、遊技制御手段におけるコマンド送出に要する負荷を軽減することができる。
以下、サブ基板(この例では、表示制御基板80、音声制御基板70、ランプ制御基板37および払出制御基板37)に搭載されている各電気部品制御手段の動作を説明する。ただし、以下、主として音声制御基板70およびランプ制御基板37に搭載されている各電気部品制御手段(音声制御手段およびランプ制御手段)の動作を説明する。
まず、音声制御手段の動作について説明する。図40は、音声制御用CPU701が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域をクリアする等の初期値設定処理が行われる(ステップS201)。その後、この実施の形態では、音声制御用CPU701は、タイマ割込フラグの監視(ステップS202)の確認を行うループ処理に移行する。そして、図41に示すように、タイマ割込が発生すると、音声制御用CPU701は、タイマ割込フラグをセットする(ステップS207)。メイン処理において、タイマ割込フラグがセットされていたら、音声制御用CPU701は、そのフラグをクリアするとともに(ステップS203)、音声制御処理を行う(ステップS205)。
この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、音声制御処理は、2ms毎に起動される。
図42は、割込処理による音声制御コマンド受信処理を示すフローチャートである。主基板31からの音声制御用のINT信号は音声制御用CPU701の割込端子に入力されている。よって、主基板31からのINT信号がオン状態になると、音声制御用CPU701に割込がかかり、図42に示す音声制御コマンドの受信処理が開始される。
音声制御コマンドの受信処理において、音声制御用CPU701は、まず、音声制御コマンドデータの入力に割り当てられている入力ポートからデータを読み込む(ステップS221)。そして、2バイト構成の音声制御コマンドのうちの1バイト目を既に受信したか否か確認する(ステップS222)。既に受信したか否かは、受信バッファの1バイト目に有効なデータが設定されているか否かで確認できる。
まだ1バイト目を受信していない場合には、受信した1バイトのうちのビット7が「1」であるか否か確認する(ステップS223)。ビット7が「1」であるのは、2バイト構成の音声制御コマンドのうちのMODEバイト(1バイト目)のはずである(図31参照)。ビット7が「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファの1バイト目に格納する(ステップS224)。
1バイト目を既に受信している場合には、受信した1バイトのうちのビット7が「0」であるか否か確認する(ステップS225)。ビット7が「0」であるのは、2バイト構成の音声制御コマンドのうちのEXTバイト(2バイト目)のはずである(図31参照)。その場合には、ビット7が「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを受信バッファの2バイト目に格納する(ステップS226)。また、通信終了フラグをセットする(ステップS227)。通信終了フラグは、正常に音声制御コマンドを受信したことを示すフラグである。
ステップS225において、受信したデータのビット7が「0」でない場合には、受信したデータをあらためて受信バッファの1バイト目に格納する(ステップS228)。
上述したように、この実施の形態では、音声制御コマンドは、主基板31から受信側が認識可能に1回だけ送出される。すると、ノイズ等によって、データ化けが発生する可能性も否定できない。そこで、この実施の形態では、2バイト構成の音声制御コマンドのうちの1バイト目(MODE)のビット7を「1」とし、2バイト目(EXT)のビット7を「0」として、受信側で1バイト目を受信したのか2バイト目を受信したのかを識別可能にする。1バイト目にデータ化け等が生じてビット7が「1」でなくなった場合には、ステップS223の判断によって、そのようなデータは廃棄される。また、2バイト目にデータ化け等が生じてビット7が「0」でなくなった場合には、すなわち、「1」になった場合には、ステップS225およびステップS228の処理によって、受信データは1バイト目であると判断される。
その後、主基板31の側からは、次の音声制御コマンドの1バイト目が送出されるが、その1バイト目を正しく受信できた場合には、やはり、ステップS225およびステップS228の処理によって、受信データが1バイト目であると判断される。すなわち、その時点から、主基板31から送出された1バイト目は受信側でも1バイト目であると判断される。従って、基板間でデータ化け等が生じても、1個のコマンドは受信側において正しく受信されないが、その後、受信側において、主基板31から送出されたコマンドの2バイト目を1バイト目(MODE)と判断しコマンドの1バイト目を2バイト目(EXT)と判断してしまうようなことはない。
図43は、音声制御処理(ステップS205)を示すフローチャートである。音声制御処理において、音声制御用CPU701は、通信終了フラグがセットされているか否か確認する(ステップS231)。通信終了フラグがセットされているということは、音声制御コマンドを受信したことを意味する。
そこで、通信終了フラグがセットされていれば、それをクリアし(ステップS232)、受信コマンドを受信バッファからから読み出した後、各音声制御コマンドに対応したパターンデータが設定されている音声パターンテーブルにおける受信コマンドに対応したパターンデータを読み込む(ステップS233)。そして、読み込んだパターンデータに対応した制御データをROMから読み出し(ステップS234)、読み出した制御データにもとづいて以下の音声制御を行う。制御データとは、音の種類や音継続時間等のデータであり、各パターンデータに対応してROMに設定されている。
この実施の形態では、音声合成回路702は、転送リクエスト信号(SIRQ)、シリアルクロック信号(SICK)、シリアルデータ信号(SI)および転送終了信号(SRDY)によって制御される。音声合成回路702は、SIRQがローレベルになると、SICKに同期してSIを1ビットずつ取り込み、SRDYがローレベルになるとそれまでに受信した各SIからなるデータを1つの音声再生用データと解釈する。従って、音声制御用CPU701は、SIRQをオン(ローレベル)にして(ステップS235)、ROMから読み出した制御データをSICKに同期してSIとして出力し(ステップS236)、出力が完了したらSRDYをローレベルにする(ステップS237)。音声合成回路702は、SIによって制御データを受信すると、受信した制御データに応じた音声を発生する。
次に、ランプ制御手段の動作について説明する。図44は、ランプ制御用CPU351が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域をクリアする等の初期値設定処理が行われる(ステップS241)。その後、この実施の形態では、ランプ制御用CPU351は、タイマ割込フラグの監視(ステップS242)の確認を行うループ処理に移行する。そして、図45に示すように、タイマ割込が発生すると、ランプ制御用CPU351は、タイマ割込フラグをセットする(ステップS247)。メイン処理において、タイマ割込フラグがセットされていたら、ランプ制御用CPU351は、そのフラグをクリアするとともに(ステップS243)、ランプ制御処理を行う(ステップS245)。
この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、ランプ制御処理は、2ms毎に起動される。
図46は、割込処理によるランプ制御コマンド受信処理を示すフローチャートである。主基板31からのランプ制御用のINT信号はランプ制御用CPU351の割込端子に入力されている。よって、主基板31からのINT信号がオン状態になると、ランプ制御用CPU351に割込がかかり、図46に示すランプ制御コマンドの受信処理が開始される。
ランプ制御コマンドの受信処理において、ランプ制御用CPU351は、まず、ランプ制御コマンドデータの入力に割り当てられている入力ポートからデータを読み込む(ステップS251)。そして、2バイト構成のランプ制御コマンドのうちの1バイト目を既に受信したか否か確認する(ステップS252)。既に受信したか否かは、受信バッファの1バイト目に有効なデータが設定されているか否かで確認できる。
まだ1バイト目を受信していない場合には、受信した1バイトのうちのビット7が「1」であるか否か確認する(ステップS253)。ビット7が「1」であるのは、2バイト構成のランプ制御コマンドのうちのMODEバイト(1バイト目)のはずである(図34参照)。ビット7が「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファの1バイト目に格納する(ステップS254)。
1バイト目を既に受信している場合には、受信した1バイトのうちのビット7が「0」であるか否か確認する(ステップS255)。ビット7が「0」であるのは、2バイト構成のランプ制御コマンドのうちのEXTバイト(2バイト目)のはずである(図34参照)。その場合には、ビット7が「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを受信バッファの2バイト目に格納する(ステップS256)。また、通信終了フラグをセットする(ステップS257)。通信終了フラグは、正常にランプ制御コマンドを受信したことを示すフラグである。
ステップS255において、受信したデータのビット7が「0」でない場合には、受信したデータをあらためて受信バッファの1バイト目に格納する(ステップS258)。
図47は、ランプ制御処理(ステップS245)を示すフローチャートである。ランプ制御処理において、ランプ制御用CPU351は、通信終了フラグがセットされているか否か確認する(ステップS261)。通信終了フラグがセットされているということは、ランプ制御コマンドを受信したことを意味する。
そこで、通信終了フラグがセットされていれば、それをクリアし(ステップS262)、受信バッファから受信コマンドを読み出した後、各ランプ制御コマンドに対応するパターンデータが設定されているランプパターンテーブルにおける受信コマンドに対応したパターンデータを読み込む(ステップS263)。パターンデータが存在する場合、すなわち、パターンデータが記載されていた場合には(ステップS264)、該当する制御パターンを変更する(ステップS265)。例えば、「8000」のランプ制御コマンドを受信した場合には、飾りランプに関する制御パターンを変更し、それ以外の始動記憶表示器18、ゲート通過表示器41、賞球ランプ51および球切れランプ52の制御パターンを変更しない。そして、ランプ・LED制御処理(ステップS266)を実行する。
図48は、ランプ・LED制御処理(ステップS266)の一例を示すフローチャートである。ランプ・LED制御処理において、ランプ制御用CPU351は、まず、点灯中であるか否かをチェックする(ステップS271)。点灯中であるならば、実際の点灯時間がランプ・LED制御パターンに設定されていた点灯時間を経過したか否か確認する(ステップS272)。経過していれば、制御対象のランプ・LEDを消灯する(ステップS273)。
また、点灯中でなければ、実際の消灯時間がランプ・LED制御パターンに設定されていた消灯時間を経過したか否か確認する(ステップS274)。経過していれば、制御対象のランプ・LEDを点灯する(ステップS275)。
この例は、点灯と消灯とを繰り返す簡単な例であるが、より複雑な点灯/消灯パターンを実現する場合であっても、ランプパターンテーブルにランプ制御コマンドに対応したパターンデータを設定するとともに、各パターンデータに対応したランプ・LED制御パターン(具体的な点灯時間等が設定されているテーブル)を用意しておけば、任意の点灯/消灯パターンを実現することができる。
以上のように、ランプ制御手段および音声制御手段が遊技制御手段とは別体に設けられ、遊技制御手段は、定期的に発生する内部タイマ割込に応じて遊技制御プログラムを実行する。よって、遊技制御手段のランプ・LED制御や音発生制御に関する負担が軽減され、また、外部に割込を生じさせるための回路が必要とされないので遊技機のコストが低減する。
また、ランプ制御手段(発光体制御手段)は、遊技機の枠体に設けられている発光体だけでなく、遊技盤に設けられている発光体の点灯制御も行う。従って、遊技制御手段は遊技盤に設けられている発光体の制御を行わなくてよく、遊技制御手段の制御負荷が軽減される。
また、発光体制御手段は、少なくとも、特別図柄変動開始の条件成立の記憶数と普通図柄変動開始の条件成立の記憶数を報知するための発光体点灯制御を行う。従って、遊技制御手段がそれらの条件成立の検出および記憶を行うように構成されている場合でも、遊技制御手段は、それらの記憶数を報知するための発光体点灯制御を行わなくてよい。遊技進行に伴って遊技効果を増進するための演出的発光体点灯/消灯を行わなくてよいことに加えて、記憶数の点灯/消灯制御を行わなくてよいので、遊技制御手段の発光体点灯に関する負荷がさらに低減される。
さらに、遊技制御手段は、電源監視手段の出力信号を入力ポートを介して入力し、その信号が電源電圧低下を示していたら、RAMチェックデータを作成してRAMに格納した後に、RAMアクセス禁止状態に設定する。また、電源投入時に、RAMチェックデータにもとづいてRAMチェックを行い、データが正しく保存されていたか否か確認する。そして、正しく保存されていたことが確認されたら、遊技状態を電源断時の状態に復旧させる。よって、電源断時の遊技状態が保存されるとともに、復旧時の正確性が保証される。従って、遊技中に電源断が生じても、復旧時に遊技が電源断時の状態から再開されるので、遊技者に不利益が与えられることが防止される。
上記の実施の形態には、以下のような遊技機も開示されている。
所定の遊技を行った結果として遊技者に遊技結果価値を付与可能な遊技機であって、遊技の進行を制御する遊技制御手段と、遊技制御手段とは別体に設けられ少なくとも遊技盤に設けられている発光体の一部について遊技制御手段から送出されたコマンドに対応する点灯制御を行う発光体制御手段と、遊技制御手段とは別体に設けられ遊技制御手段から送出されたコマンドに対応する音出力制御を行う音制御手段とを備え、少なくとも遊技制御手段では、遊技制御プログラムが定期的に実行され、定期的に遊技制御プログラムを実行するためにタイマ割込が用いられる遊技機。
そのような構成によれば、遊技制御プログラムを構成する全ての処理プログラムが確実に実行されるとともに、遊技制御手段の制御負担を軽くすることができ、かつ、コスト低減を実現できる効果がある。
遊技制御手段は、遊技制御を行うための遊技制御プログラムを実行する遊技制御用マイクロコンピュータを含み、遊技制御プログラムが、少なくとも、メインルーチンと、メインルーチンの実行中に呼び出されるサブルーチンと、タイマ割込によって定期的に起動される割込処理とを含み、メインルーチンが、少なくとも、初期化処理と、遊技機の遊技状態を制御するための遊技制御処理と、遊技制御処理に移行するための移行条件の成立を判定する判定処理とを含み、割込処理が、判定処理で移行条件の成立を判定させるためのフラグを設定する符号設定処理を含む遊技機。
そのような構成によれば、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われず、遊技制御処理中の全ての各処理が実行完了することが保証されるという効果がある。
遊技制御用マイクロコンピュータが、メインルーチンにおいて、遊技制御処理に移行するための移行条件の成立を判定する際に、他の処理を繰り返し実行しながら判定処理を実行する遊技機。
そのような構成によれば、遊技制御処理の実行時間の余り時間を有効に活用することができる。
上記の他の処理には、少なくとも遊技制御に用いる数値データを更新する処理が含まれている遊技機。
そのような構成によれば、遊技制御処理の実行時間の余り時間を有効に活用することができるとともに、ランダム性が要求される数値データに関してランダム性を向上させることができる。
遊技機の電力供給停止後の復旧時に遊技状態を復帰可能に遊技制御手段のRAMが電源バックアップされ、遊技機は電源の状態を監視して所定条件が検出された場合に検出信号を出力する電源監視手段を備え、遊技制御用マイクロコンピュータが、電源監視手段の検出信号に応じて所定の電力供給停止時処理を実行するように構成されている遊技機。
そのような構成によれば、電力供給が停止しても、必要なデータが確実に保存されるので、遊技者に不利益がもたらされることを防止することができる。
電力供給停止時処理にはRAMアクセス防止処理が含まれている遊技機。
そのような構成によれば、電力供給停止時に、RAMのデータが破壊されることがないという効果がある。
電力供給停止時処理には、RAM記憶内容に関連した演算の結果得られるチェックデータを作成して保存するチェックデータ作成処理が含まれている遊技機。
そのような構成によれば、電源復旧時にチェックデータにもとづいてデータが破壊されていないかどうかチェックすることができ、保存されるデータの信頼性を向上させることができる。
遊技制御用マイクロコンピュータが、電力供給開始時の処理で、チェックデータにもとづくRAM記憶内容のチェックを行い、チェック結果が正常であればRAM記憶内容にもとづいて遊技状態の復帰処理を行うように構成されている遊技機。
そのような構成によれば、常に正常な記憶内容にもとづく遊技状態復帰処理が行われるので、正しく遊技状態復帰処理が行われる効果がある。
遊技制御用マイクロコンピュータが、チェック結果が正常でなければ初期化処理を実行するように構成されている遊技機。
そのような構成によれば、異常な記憶内容にもとづく遊技状態復帰処理が行われることはないという効果がある。
電源監視手段の検出信号が遊技制御用マイクロコンピュータの割込端子に入力され、電力供給停止時処理が割込端子への検出信号にもとづく割込処理で実行されるように構成されている遊技機。
そのような構成によれば、遊技制御用マイクロコンピュータの動作状況に関わらず直ちに電力供給停止時処理が開始されるので、遊技制御用マイクロコンピュータが動作できないような電圧にまで電源電圧が低下する前に、確実に電力供給停止時処理が完了する。
1 パチンコ遊技機
18 始動記憶表示器
31 主基板
35 ランプ制御基板
41 ゲート通過記憶表示器
70 音声制御基板
53 基本回路
56 CPU
570 入力ポート
902 電源監視用IC
910 電源基板
916 コンデンサ

Claims (1)

  1. 各々を識別可能な複数種類の識別情報の可変表示を行い表示結果を導出表示する可変表示部を備え、該可変表示部に特定表示結果が導出表示されたときに遊技者にとって有利な特定遊技状態に制御する遊技機であって、
    遊技の進行を制御する遊技制御手段と、
    前記可変表示部を制御する表示制御手段と、
    電力供給が停止しても所定期間は記憶内容を保持することが可能であり、前記遊技制御手段が制御を行う際に発生する変動データを記憶する変動データ記憶手段と、
    遊技機で使用される第1電源を監視して該第1電源の電圧が第1検出電圧以下となると検出信号を出力する第1の電源監視手段と、
    前記第1電源の電圧よりも低い電圧の第2電源を監視して、該第2電源の電圧が前記第1検出電圧よりも低い第2検出電圧以下になったときに動作停止信号を出力する第2の電源監視手段と、
    前記遊技制御手段が信号を出力するための遊技制御用出力ポートと、を備え、
    前記遊技制御手段は、
    前記可変表示部を制御することを示すコマンドを前記表示制御手段に出力するコマンド出力手段を含み、
    前記第1の電源監視手段からの前記検出信号に応じて、前記遊技制御用出力ポートに出力される信号の出力状態をクリアする遊技制御用出力ポートクリア処理と、制御状態を復旧させるためのデータを前記変動データ記憶手段に保存させるための電力供給停止時処理とを実行し、
    前記第2の電源監視手段からの前記動作停止信号に応じて動作停止され、
    電力供給が開始されたときに、前記変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を前記電力供給停止時処理を開始する前の状態に復旧させる復旧制御を実行し、
    前記コマンド出力手段は、
    識別情報の可変表示を開始させるときに、前記可変表示部における識別情報の可変表示パターンを特定するための可変表示パターンコマンド、および前記可変表示部における識別情報の表示結果を特定するための表示結果コマンドを出力し、
    識別情報の可変表示を終了させるときに、識別情報の停止を示す停止コマンドを出力し、
    前記可変表示パターンコマンドおよび前記表示結果コマンドを出力した後、前記停止コマンドを出力するまでの間には、可変表示のコマンド出力を行わず、
    前記表示制御手段は、
    前記可変表示パターンコマンドにもとづいて、前記可変表示部における識別情報の可変表示を開始し、
    前記停止コマンドにもとづいて、前記表示結果コマンドで特定される識別情報の表示結果を前記可変表示部に停止表示させる
    ことを特徴とする遊技機。
JP2009136401A 2009-06-05 2009-06-05 遊技機 Expired - Fee Related JP4642913B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009136401A JP4642913B2 (ja) 2009-06-05 2009-06-05 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009136401A JP4642913B2 (ja) 2009-06-05 2009-06-05 遊技機

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000041324A Division JP4510978B2 (ja) 2000-02-18 2000-02-18 遊技機

Publications (3)

Publication Number Publication Date
JP2009219897A JP2009219897A (ja) 2009-10-01
JP2009219897A5 JP2009219897A5 (ja) 2010-11-04
JP4642913B2 true JP4642913B2 (ja) 2011-03-02

Family

ID=41237296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009136401A Expired - Fee Related JP4642913B2 (ja) 2009-06-05 2009-06-05 遊技機

Country Status (1)

Country Link
JP (1) JP4642913B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6530738B2 (ja) * 2016-11-30 2019-06-12 株式会社ソフイア 遊技機

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001198275A (ja) * 2000-01-20 2001-07-24 Fuji Shoji:Kk 遊技機

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001198275A (ja) * 2000-01-20 2001-07-24 Fuji Shoji:Kk 遊技機

Also Published As

Publication number Publication date
JP2009219897A (ja) 2009-10-01

Similar Documents

Publication Publication Date Title
JP4799909B2 (ja) 遊技機
JP4338833B2 (ja) 遊技機
JP4703820B2 (ja) 遊技機
JP3865976B2 (ja) 遊技機
JP4510978B2 (ja) 遊技機
JP4642913B2 (ja) 遊技機
JP4642912B2 (ja) 遊技機
JP2002045547A (ja) 遊技機
JP4338832B2 (ja) 遊技機
JP4652458B2 (ja) 遊技機
JP3581053B2 (ja) 遊技機
JP2001149534A (ja) 遊技機
JP2001037963A (ja) 遊技機
JP5090491B2 (ja) 遊技機
JP4652455B2 (ja) 遊技機
JP5075998B2 (ja) 遊技機
JP4652457B2 (ja) 遊技機
JP4763082B2 (ja) 遊技機
JP2004000795A (ja) 遊技機
JP4763083B2 (ja) 遊技機
JP2004000796A (ja) 遊技機
JP2012071185A (ja) 遊技機
JP2010234164A (ja) 遊技機
JP2010234162A (ja) 遊技機
JP2004000794A (ja) 遊技機

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100916

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20100916

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20101117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101124

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101201

R150 Certificate of patent or registration of utility model

Ref document number: 4642913

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees