JP3609327B2 - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP3609327B2 JP3609327B2 JP2000247125A JP2000247125A JP3609327B2 JP 3609327 B2 JP3609327 B2 JP 3609327B2 JP 2000247125 A JP2000247125 A JP 2000247125A JP 2000247125 A JP2000247125 A JP 2000247125A JP 3609327 B2 JP3609327 B2 JP 3609327B2
- Authority
- JP
- Japan
- Prior art keywords
- switch
- ball
- power supply
- game
- signal
- 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
Links
Images
Landscapes
- Pinball Game Machines (AREA)
- Display Devices Of Pinball Game Machines (AREA)
Description
【発明の属する技術分野】
本発明は、遊技者の操作に応じて遊技が行われるパチンコ遊技機、コイン遊技機、スロット機等の遊技機に関し、特に、遊技盤における遊技領域において遊技者の操作に応じて遊技が行われる遊技機に関する。
【0002】
【従来の技術】
遊技機の一例として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示部が設けられ、可変表示部の表示結果があらかじめ定められた特定の表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
【0003】
遊技価値とは、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることや、景品遊技媒体払出の条件が成立しやすくなる状態になることである。
【0004】
特別図柄を表示する可変表示部を備えた第1種パチンコ遊技機では、特別図柄を表示する可変表示部の表示結果があらかじめ定められた特定の表示態様の組合せとなることを、通常、「大当り」という。大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個(例えば10個)の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数(例えば16ラウンド)に固定されている。なお、各開放について開放時間(例えば29.5秒)が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件(例えば、大入賞口内に設けられているVゾーンへの入賞)が成立していない場合には、大当り遊技状態は終了する。
【0005】
また、「大当り」の組合せ以外の表示態様の組合せのうち、複数の可変表示部の表示結果のうちの一部が未だに導出表示されていない段階において、既に確定的な、または一時的な表示結果が導出表示されている可変表示部の表示態様が特定の表示態様の組合せとなる表示条件を満たしている状態を「リーチ」という。そして、可変表示部に可変表示される識別情報の表示結果が「大当り」となる条件を満たさない場合には「はずれ」となり、可変表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
【0006】
そして、遊技球が遊技盤に設けられている入賞口に遊技球が入賞すると、あらかじめ決められている個数の賞球払出が行われる。遊技の進行は主基板に搭載された遊技制御手段によって制御されるので、入賞にもとづく賞球個数は、遊技制御手段によって決定され、払出制御基板に送信される。なお、以下、遊技制御手段およびその他の制御手段は、遊技機に設けられている各種電気部品を制御するので、それらを電気部品制御手段と呼ぶことがある。
【0007】
【発明が解決しようとする課題】
以上のように、遊技機には、遊技制御手段を初めとする種々の電気部品制御手段が搭載されている。一般に、各電気部品制御手段はマイクロコンピュータを含んだ構成とされる。そのような電気部品制御手段は、一般に、電源電圧が立ち上がると初期化処理を行い初期状態から制御を開始する。すると、停電等の不測の電源断生じ、その後、電源復旧すると初期状態に戻ってしまうので、遊技者が得た遊技価値等が消滅してしまう等の問題が生ずることがある。そのような問題が生じないようにするには、電源電圧値の低下に伴なって発生される所定の信号に応じて遊技制御を中断し、そのときの遊技状態を、遊技機に対する電力供給停止中でも電源バックアップされている記憶手段(バックアップ記憶手段)に保存し、電力供給が完全に停止するのを待つように制御すればよい。そのような遊技機は、記憶手段に遊技状態が保存されている状態で電力供給が再開されたら、保存されている遊技状態にもとづいて遊技を再開するので、遊技者に不利益が与えられることが防止される。
【0008】
しかし、バックアップ記憶手段に遊技状態を保存し電力供給が停止するのを待つ処理を行う直前に電気部品が動作中であった場合には、電力供給が停止するまで、電気部品制御手段から電気部品に対して動作状態を示す信号が与えられることになる。すると、電力供給再開時に復帰させるべき遊技状態を保存したにもかかわらず、さらに遊技が続行されてしまうような状況が起こりうる。例えば、可変表示部における可変表示開始の条件となる始動入賞口がソレノイド等で駆動される可変入賞球装置であった場合に、その可変入賞球装置への入賞球の保留記憶値を保存したにもかかわらず、電力供給が停止するのを遊技制御手段が待っている間に始動入賞口としての可変入賞球装置にさらに入賞してしまうこともある。そのような場合、電力供給再開時には保存されている遊技状態が復帰されるので、遊技者から見ると、始動入賞の保留記憶値が少なくなってしまっているように見え、トラブルが発生しかねない。
【0009】
また、電力の供給が停止されるときに必要なデータを保存する際に保存の仕方および復元の仕方が不適切であると、復元されたデータが電力供給停止時直前のデータと一致しない可能性がある。そのような場合には、やはり遊技者に不測の不利益を与えかねない。
【0010】
そこで、本発明は、不測の電源断時等において電気部品の動作状態を適切に設定して適切な遊技状態を保存することができるとともに、保存されていたデータを電源復帰後に確実に活用することができる遊技機を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明による遊技機は、遊技者が所定の遊技を行い、遊技領域に設けられている入賞領域に遊技球が入賞したことに応じて遊技者に賞球を払い出す遊技機であって、遊技機に設けられた電気部品を制御するための電気部品制御マイクロコンピュータと、電気部品制御マイクロコンピュータが制御を行う際に発生する変動データを記憶する変動データ記憶手段と、遊技機への電力供給が停止していても電力供給停止直前の変動データ記憶手段の記憶内容を保持させることが可能な記憶内容保持手段と、電気部品制御マイクロコンピュータが信号を出力するための出力ポートと、遊技球が入賞領域に入賞したことを検出し、遊技者に賞球を払い出すために電気部品制御マイクロコンピュータに検出信号を出力する遊技球検出手段と、交流電源からの交流電圧を直流電圧に変換する整流手段と、整流手段によって交流電圧から変換された直流電圧から、該直流電圧よりも低い電圧であって遊技球検出手段に供給される直流電圧と、遊技球検出手段に供給される直流電圧よりも低く電気部品制御マイクロコンピュータの駆動電源電圧である直流電圧とを生成する直流電圧生成手段と、整流手段によって交流電圧から変換された直流電圧を監視し、該直流電圧が遊技球検出手段に供給される直流電圧よりも高い電圧である第1の検出電圧に低下したことを検出したときに第1の検出信号を出力する第1の電源監視手段とを備え、電気部品制御マイクロコンピュータは、第1の検出信号の入力に応じて、制御状態を変動データ記憶手段に保存するための処理である電力供給停止時処理を行い、電力供給停止時処理において、出力ポートに出力された信号をクリアする出力ポートクリア処理を行うとともに、記憶内容保持手段により保持された記憶内容が正常か否かの判定に用いられるチェックデータ(例えば、チェックサムデータ)を作成し、第1の電源監視手段が監視する直流電圧と同一の直流電圧を監視し、該直流電圧が、第1の検出電圧よりも低く、電気部品制御マイクロコンピュータの駆動電源電圧よりも高く設定された第2の検出電圧になったときに第2の検出信号を出力する第2の電源監視手段を備え、第2の電源監視手段は、第1の電源監視手段が第1の検出信号を出力した後に第2の電源監視手段が第2の検出信号を出力するまでに電気部品制御マイクロコンピュータが電力供給停止時処理を完了するように設定された第2の検出電圧になったときに電気部品制御マイクロコンピュータに第2の検出信号を出力し、電気部品制御マイクロコンピュータは、第2の検出信号の入力に応じて動作停止状態とされ、電気部品制御マイクロコンピュータは、電力供給開始時に、変動データ記憶手段に保存されていたチェックデータによって変動データ記憶手段に保存されていた記憶内容が正当であるか否かを判定し、変動データ記憶手段に保存されている記憶内容が正当でない旨の判定をしたときには、変動データ記憶手段の記憶内容を初期化することを特徴とするものである。
【0012】
電気部品制御マイクロコンピュータは、賞球を払い出す払出手段を制御する払出制御マイクロコンピュータであり、出力ポートクリア処理によって、払出手段(例えば、球払出装置97)が賞球を払い出しているときには払い出しを停止させることが好ましい。
【0013】
電気部品制御マイクロコンピュータは、可変入賞球装置(例えば、可変入賞球装置15、大入賞口など)を制御する遊技制御マイクロコンピュータであり、出力ポートクリア処理によって、可変入賞球装置が開状態であるときには閉状態に制御することが好ましい。
【0014】
電気部品制御マイクロコンピュータは、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を所定期間実行することが好ましい。
【0015】
遊技球検出手段には、賞球の払い出しを行う払出手段によって払い出された賞球を検出するための払出検出手段が含まれるのが好ましい。
【0016】
電気部品制御マイクロコンピュータは、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を実行する前に、出力ポートクリア処理を行うようにしてもよい。
【0017】
電気部品制御マイクロコンピュータは、電力供給開始時に、チェックデータにもとづいて、変動データ記憶手段に記憶されている記憶内容が正常である旨の判定をしたことを条件に(例えば、チェックサム確認の結果が正当である場合)、変動データ記憶手段に記憶されている記憶内容にもとづいて制御状態を復旧させる遊技状態復旧制御を実行することが好ましい。
【0019】
操作に応じて操作信号を出力する操作手段(例えば、クリアスイッチ921)を備え、電気部品制御マイクロコンピュータは、電力供給開始時にのみ操作信号の状態を確認し、操作信号が入力されていることを確認したときには、変動データ記憶手段の記憶内容を初期化することが好ましい。
【0020】
電気部品制御マイクロコンピュータは、電力供給開始時に、操作信号が入力されていないことを条件に、チェックデータにもとづいて、変動データ記憶手段の記憶内容の判定を行うようにしてもよい。
【0021】
電気部品制御マイクロコンピュータは、電力供給停止時処理において変動データ記憶手段へのアクセスを禁止する処理を実行することが好ましい。
【0022】
【発明の実施の形態】
以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機1を正面からみた正面図である。なお、ここでは、遊技機の一例としてパチンコ遊技機を示すが、本発明はパチンコ遊技機に限られず、例えばコイン遊技機やスロット機等であってもよい。
【0023】
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿3がある。打球供給皿3の下部には、打球供給皿3からあふれた遊技球を貯留する余剰玉受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の後方には、遊技盤6が着脱可能に取り付けられている。また、遊技盤6の前面には遊技領域7が設けられている。
【0024】
遊技領域7の中央付近には、複数種類の図柄を可変表示するための可変表示部(特別図柄表示装置)9と7セグメントLEDによる普通図柄表示器(普通図柄表示装置)10とを含む可変表示装置8が設けられている。可変表示部9には、例えば「左」、「中」、「右」の3つの図柄表示エリアがある。可変表示装置8の側部には、打球を導く通過ゲート11が設けられている。通過ゲート11を通過した打球は、玉出口13を経て始動入賞口14の方に導かれる。通過ゲート11と玉出口13との間の通路には、通過ゲート11を通過した打球を検出するゲートスイッチ12がある。また、始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ17によって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
【0025】
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。この実施の形態では、開閉板20が大入賞口を開閉する手段となる。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(Vゾーン)に入った入賞球はV入賞スイッチ22で検出される。また、開閉板20からの入賞球はカウントスイッチ23で検出される。可変表示装置8の下部には、始動入賞口14に入った入賞球数を表示する4個の表示部を有する始動入賞記憶表示器18が設けられている。この例では、4個を上限として、始動入賞がある毎に、始動入賞記憶表示器18は点灯している表示部を1つずつ増やす。そして、可変表示部9の可変表示が開始される毎に、点灯している表示部を1つ減らす。
【0026】
遊技盤6には、複数の入賞口19,24が設けられ、遊技球のそれぞれの入賞口19,24への入賞は、対応して設けられている入賞口スイッチ19a,19b,24a,24bによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、遊技効果LED28aおよび遊技効果ランプ28b,28cが設けられている。
【0027】
そして、この例では、一方のスピーカ27の近傍に、賞球残数があるときに点灯する賞球ランプ51が設けられ、他方のスピーカ27の近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
【0028】
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カード内に記録された残額情報に端数(100円未満の数)が存在する場合にその端数を打球供給皿3の近傍に設けられる度数表示LEDに表示させるための端数表示スイッチ152、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
【0029】
打球発射装置から発射された打球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が通過ゲート11を通ってゲートスイッチ12で検出されると、普通図柄表示器10の表示数字が連続的に変化する状態になる。また、打球が始動入賞口14に入り始動口スイッチ17で検出されると、図柄の変動を開始できる状態であれば、可変表示部9内の図柄が回転を始める。図柄の変動を開始できる状態でなければ、始動入賞記憶を1増やす。
【0030】
可変表示部9内の画像の回転は、一定時間が経過したときに停止する。停止時の画像の組み合わせが大当り図柄の組み合わせであると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球が特定入賞領域に入賞しV入賞スイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
【0031】
停止時の可変表示部9内の画像の組み合わせが確率変動を伴う大当り図柄の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、高確率状態という遊技者にとってさらに有利な状態となる。また、普通図柄表示器10における停止図柄が所定の図柄(当り図柄=小当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、高確率状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。
【0032】
次に、パチンコ遊技機1の裏面に配置されている各基板について説明する。
図2に示すように、パチンコ遊技機1の裏面では、枠体2A内の機構板の上部に玉貯留タンク38が設けられ、パチンコ遊技機1が遊技機設置島に設置された状態でその上方から遊技球が球貯留タンク38に供給される。球貯留タンク38内の遊技球は、誘導樋39を通って賞球ケース40Aで覆われる球払出装置に至る。
【0033】
遊技機裏面側では、可変表示部9を制御する可変表示制御ユニット29、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37、およびモータの回転力を利用して打球を遊技領域7に発射する打球発射装置が設置されている。さらに、装飾ランプ25、遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に信号を送るためのランプ制御基板35、スピーカ27からの音声発生を制御するための音声制御基板70および打球発射装置を制御するための発射制御基板91も設けられている。なお、払出制御基板37には、エラー表示用LED374も搭載されている。
【0034】
また、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910が設けられ、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および球貸し個数信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤34が設置されている。
【0035】
さらに、図2には、ランプ制御基板35および音声制御基板70からの信号を、枠側に設けられている遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に供給するための電飾中継基板A77および度数表示LED等を搭載した残高表示基板74が示されている。また、この実施の形態では、各基板(例えば、主基板31、払出制御基板37)に含まれる変動データ記憶手段(例えば、バックアップRAM)に記憶されたバックアップデータをクリアするためのクリアスイッチ921が搭載されたスイッチ基板190が設けられている。なお、スイッチ基板190には、例えば主基板などの他の基板と接続されるコネクタ(図6、図7参照)が設けられている。さらに、図示はしないが、信号中継の必要に応じて他の中継基板も設けられる。
【0036】
図3はパチンコ遊技機1の機構板を背面からみた背面図である。球貯留タンク38に貯留された玉は誘導樋39を通り、図3に示されるように、球切れ検出器(球切れスイッチ)187a,187bを通過して球供給樋186a,186bを経て球払出装置97に至る。球切れスイッチ187a,187bは遊技球通路内の遊技球の有無を検出するスイッチであるが、球タンク38内の補給球の不足を検出する球切れ検出スイッチ167も設けられている。以下、球切れスイッチ187a,187bを、球切れスイッチ187と表現することがある。
【0037】
球払出装置97から払い出された遊技球は、連絡口45を通ってパチンコ遊技機1の前面に設けられている打球供給皿3に供給される。連絡口45の側方には、パチンコ遊技機1の前面に設けられている余剰玉受皿4に連通する余剰玉通路46が形成されている。
【0038】
入賞にもとづく景品球が多数払い出されて打球供給皿3が満杯になり、ついには遊技球が連絡口45に到達した後さらに遊技球が払い出されると遊技球は、余剰玉通路46を経て余剰玉受皿4に導かれる。さらに遊技球が払い出されると、感知レバー47が満タンスイッチ48を押圧して満タンスイッチ48がオンする。その状態では、球払出装置97内のステッピングモータの回転が停止して球払出装置97の動作が停止するとともに打球発射装置34の駆動も停止する。
【0039】
次に、機構板36に設置されている中間ベースユニットの構成について説明する。中間ベースユニットには、球供給樋186a,186bや球払出装置97が設置される。図4に示すように、中間ベースユニットの上下には連結凹突部182が形成されている。連結凹突部182は、中間ベースユニットと機構板36の上部ベースユニットおよび下部ベースユニットを連結固定するものである。
【0040】
中間ベースユニットの上部には通路体184が固定されている。そして、通路体184の下部に球払出装置97が固定されている。通路体184は、カーブ樋174(図3参照)によって流下方向を左右方向に変換された2列の遊技球を流下させる払出球通路186a,186bを有する。払出球通路186a,186bの上流側には、球切れスイッチ187a,187bが設置されている。球切れスイッチ187a,187bは、払出球通路186a,186b内の遊技球の有無を検出するものであって、球切れスイッチ187a,187bが遊技球を検出しなくなると球払出装置97における払出モータ(図4において図示せず)の回転を停止して球払出が不動化される。
【0041】
なお、球切れスイッチ187a,187bは、払出球通路186a,186bに27〜28個程度の遊技球が存在することを検出できるような位置に係止片188によって係止されている。すなわち、球切れスイッチ187a,187bは、賞球の一単位の最大払出量(この実施の形態では15個)および球貸しの一単位の最大払出量(この実施の形態では100円:25個)以上が確保されていることが確認できるような位置に設置されている。
【0042】
通路体184の中央部は、内部を流下する遊技球の球圧を弱めるように、左右に湾曲する形状に形成されている。そして、払出球通路186a,186bの間に止め穴189が形成されている。止め穴189の裏面は中間ベースユニットに設けられている取付ボスがはめ込まれる。その状態で止めねじがねじ止めされて、通路体184は中間ベースユニットに固定される。なお、ねじ止めされる前に、中間ベースユニットに設けられている係止突片185によって通路体184の位置合わせを行えるようになっている。
【0043】
通路体184の下方には、球払出装置97に遊技球を供給するとともに故障時等には球払出装置97への遊技球の供給を停止する球止め装置190が設けられている。球止め装置190の下方に設置される球払出装置97は、直方体状のケース198の内部に収納されている。ケース198の左右4箇所には突部が設けられている。各突部が中間ベースユニットに設けられている位置決め突片に係った状態で、中間ベースユニットの下部に設けられている弾性係合片にケース198の下端がはめ込まれる。
【0044】
図5は球払出装置97の分解斜視図である。球払出装置97の構成および作用について図5を参照して説明する。この実施形態における球払出装置97は、ステッピングモータ(払出モータ)289がスクリュー288を回転させることによりパチンコ玉を1個ずつ払い出す。なお、球払出装置97は、入賞にもとづく景品球だけでなく、貸し出すべき遊技球も払い出す。
【0045】
図5に示すように、球払出装置97は、2つのケース198a,198bを有する。それぞれのケース198a,198bの左右2箇所に、球払出装置97の設置位置上部に設けられた位置決め突片に当接される係合突部280が設けられている。また、それぞれのケース198a,198bには、球供給路281a,281bが形成されている。球供給路281a,281bは湾曲面282a,282bを有し、湾曲面282a,282bの終端の下方には、球送り水平路284a,284bが形成されている。さらに、球送り水平路284a,284bの終端に球排出路283a,283bが形成されている。
【0046】
球供給路281a,281b、球送り水平路284a,284b、球排出路283a,283bは、ケース198a,198bをそれぞれ前後に区画する区画壁295a,295bの前方に形成されている。また、区画壁295a,295bの前方において、玉圧緩衝部材285がケース198a,198b間に挟み込まれる。玉圧緩衝部材285は、球払出装置97に供給される玉を左右側方に振り分けて球供給路281a,281bに誘導する。
【0047】
また、玉圧緩衝部材285の下部には、発光素子(LED)286と受光素子(図示せず)とによる払出モータ位置センサが設けられている。発光素子286と受光素子とは、所定の間隔をあけて設けられている。そして、この間隔内に、スクリュー288の先端が挿入されるようになっている。なお、玉圧緩衝部材285は、ケース198a,198bが張り合わされたときに、完全にその内部に収納固定される。
【0048】
球送り水平路284a,284bには、払出モータ289によって回転させられるスクリュー288が配置されている。払出モータ289はモータ固定板290に固定され、モータ固定板290は、区画壁295a,295bの後方に形成される固定溝291a,291bにはめ込まれる。その状態で払出モータ289のモータ軸が区画壁295a,295bの前方に突出するので、その突出の前方にスクリュー288が固定される。スクリュー288の外周には、払出モータ289の回転によって球送り水平路284a,284bに載置された遊技球を前方に移動させるための螺旋突起288aが設けられている。
【0049】
そして、スクリュー288の先端には、発光素子286を収納するように凹部が形成され、その凹部の外周には、2つの切欠部292が互いに180度離れて形成されている。従って、スクリュー288が1回転する間に、発光素子286からの光は、切欠部292を介して受光素子で2回検出される。
【0050】
つまり、発光素子286と受光素子とによる払出モータ位置センサは、スクリュー288を定位置で停止するためのものであり、かつ、払出動作が行われた旨を検出するものである。なお、発光素子286、受光素子および払出モータ289からの配線は、まとめられてケース198a,198bの後部下方に形成された引出穴から外部に引き出されコネクタに結線される。
【0051】
遊技球が球送り水平路284a,284bに載置された状態において、払出モータ289が回転すると、スクリュー288の螺旋突起288aによって、遊技球は、球送り水平路284a,284b上を前方に向かって移動する。そして、遂には、球送り水平路284a,284bの終端から球排出路283a,283bに落下する。このとき、左右の球送り水平路284a,284bからの落下は交互に行われる。すなわち、スクリュー288が半回転する毎に一方から1個の遊技球が落下する。従って、1個の遊技球が落下する毎に、発光素子286からの光が受光素子によって検出される。
【0052】
図4に示すように、球払出装置97の下方には、球振分部材311が設けられている。球振分部材311は、振分ソレノイド310によって駆動される。例えば、ソレノイド310のオン時には、球振分部材311は右側に倒れ、オフ時には左側に倒れる。振分ソレノイド310の下方には、近接スイッチによる賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bが設けられている。入賞にもとづく賞球時には、球振分部材311は右側に倒れ、球排出路283a,283bからの玉はともに賞球カウントスイッチ301Aを通過する。また、球貸し時には、球振分部材311は左側に倒れ、球排出路283a,283bからの玉はともに球貸しカウントスイッチ301Bを通過する。従って、球払出装置97は、賞球時と球貸し時とで払出流下路を切り替えて、所定数の遊技媒体の払出を行うことができる。
【0053】
このように、球振分部材311を設けることによって、2条の玉流路を落下してきた玉は、賞球カウントスイッチ301Aと球貸しカウントスイッチ301Bとのうちのいずれか一方しか通過しない。従って、賞球であるのか球貸しであるのかの判断をすることなく、賞球カウントスイッチ301Aと球貸しカウントスイッチ301Bの検出出力から、直ちに賞球数または球貸し数を把握することができる。
【0054】
なお、この実施の形態では、電気的駆動源の駆動によって遊技球を払い出す球払出装置として、ステッピングモータの回転によって遊技球が払い出される球払出装置97を用いることにするが、その他の駆動源によって遊技球を送り出す構造の球払出装置を用いてもよいし、電気的駆動源の駆動によってストッパを外し遊技球の自重によって払い出しがなされる構造の球払出装置を用いてもよい。また、この実施の形態では、球払出装置97は賞球にもとづく景品球と貸出要求にもとづく貸し球の双方を払い出すが、それぞれについて払出装置が設けられていてもよい。
【0055】
図6は、スイッチ基板190が搭載された遊技盤6を正面からみた例を示す正面図である。図2において、パチンコ遊技機1の裏面にスイッチ基板190が搭載された状態の例として、枠体2Aを含む裏面の状態について説明したが、さらに詳細には、スイッチ基板190は、例えば図6に示すように、遊技機1の裏面側の遊技盤6に設置されている。なお、図6には、例えば主基板などの他の基板と接続されるためのコネクタ922が開示されている。
【0056】
図7は、スイッチ基板190に搭載されたクリアスイッチ921の回路構成の一例を示す回路図である。クリアスイッチ921は、本例では、押しボタン構造とされている。クリアスイッチ921が押下されていれば(オン状態であれば)、ローレベルのクリアスイッチ信号が出力され、コネクタ922を介して例えば主基板31などの各基板に対して送信される。また、クリアスイッチ921が押下されていなければ(オフ状態であれば)、ハイレベルの出力信号が出力される。
【0057】
図8は、主基板31における回路構成の一例を示すブロック図である。なお、図8には、払出制御基板37、ランプ制御基板35、音声制御基板70、発射制御基板91、図柄制御基板80およびスイッチ基板190も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路53と、ゲートスイッチ12、始動口スイッチ17、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ19a,19b,24a,24b、満タンスイッチ48、球切れスイッチ187および賞球カウントスイッチ301Aからの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16、開閉板20を開閉するソレノイド21および大入賞口内の経路を切り換えるためのソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。なお、この実施の形態では、スイッチ回路58は、スイッチ基板190に搭載されたクリアスイッチ921からの信号をも基本回路53に与える。また、図8には示されていないが、カウントスイッチ短絡信号もスイッチ回路58を介して基本回路53に伝達される。
【0058】
また、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示部9の画像表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部機器に対して出力する情報出力回路64が搭載されている。
【0059】
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段の一例であるRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。
【0060】
さらに、主基板31には、電源投入時に基本回路53をリセットするためのシステムリセット回路65が設けられている。
【0061】
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
【0062】
なお、この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている始動記憶表示器18、ゲート通過記憶表示器41および装飾ランプ25の表示制御を行うとともに、枠側に設けられている遊技効果ランプ・LED28a,28b,28c、賞球ランプ51および球切れランプ52の表示制御を行う。また、特別図柄を可変表示する可変表示部9および普通図柄を可変表示する普通図柄表示器10の表示制御は、図柄制御基板80に搭載されている表示制御手段によって行われる。
【0063】
図9は、払出制御基板37および球払出装置97の構成要素などの払出に関連する構成要素を示すブロック図である。図9に示すように、満タンスイッチ48からの検出信号は、中継基板71を介して主基板31のI/Oポート57に入力される。満タンスイッチ48は、余剰球受皿4の満タンを検出するスイッチである。また、球切れスイッチ187(187a,187b)からの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力される。
【0064】
主基板31のCPU56は、球切れスイッチ187からの検出信号が球切れ状態を示しているか、または、満タンスイッチ48からの検出信号が満タン状態を示していると、払出禁止を指示する払出制御コマンドを送出する。払出禁止を指示する払出制御コマンドを受信すると、払出制御基板37の払出制御用CPU371は球払出処理を停止する。
【0065】
さらに、賞球カウントスイッチ301Aからの検出信号は、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力されるとともに、中継基板72を介して払出制御基板37の入力ポート372bに入力される。賞球カウントスイッチ301Aは、球払出装置97の払出機構部分に設けられ、実際に払い出された賞球払出球を検出する。
【0066】
入賞があると、払出制御基板37には、主基板31の出力ポート(ポート0,1)570,571から賞球個数を示す払出制御コマンドが入力される。出力ポート(出力ポート1)571は8ビットのデータを出力し、出力ポート570は1ビットのストローブ信号(INT信号)を出力する。賞球個数を示す払出制御コマンドは、入力バッファ回路373Aを介してI/Oポート372aに入力される。INT信号は、入力バッファ回路373Bを介して払出制御用CPU371の割込端子に入力されている。払出制御用CPU371は、I/Oポート372aを介して払出制御コマンドを入力し、払出制御コマンドに応じて球払出装置97を駆動して賞球払出を行う。
なお、この実施の形態では、払出制御用CPU371は、1チップマイクロコンピュータであり、少なくともRAMが内蔵されている。
【0067】
また、主基板31において、出力ポート570,571の外側にバッファ回路620,68Aが設けられている。バッファ回路620,68Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、払出制御基板37から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,68Aの出力側にノイズフィルタを設けてもよい。
【0068】
払出制御用CPU371は、出力ポート372cを介して、貸し球数を示す球貸し個数信号をターミナル基板160に出力する。さらに、出力ポート372dを介して、エラー表示用LED374にエラー信号を出力する。
【0069】
さらに、払出制御基板37の入力ポート372bには、中継基板72を介して球貸しカウントスイッチ301Bからの検出信号が入力される。球貸しカウントスイッチ301Bは、球払出装置97の払出機構部分に設けられ、実際に払い出された貸し球を検出する。払出制御基板37からの払出モータ289への駆動信号はあ、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に伝えられ、振分ソレノイド310への駆動信号は、出力ポート372eおよび中継基板72を介して球払出装置97の払出機構部分における振分ソレノイド310に伝えられる。
【0070】
カードユニット50には、カードユニット制御用マイクロコンピュータが搭載されている。また、カードユニット50には、端数表示スイッチ152、連結台方向表示器153、カード投入表示ランプ154およびカード挿入口155が設けられている(図1参照)。残高表示基板74には、打球供給皿3の近傍に設けられている度数表示LED、球貸しスイッチおよび返却スイッチが接続される。
【0071】
残高表示基板74からカードユニット50には、遊技者の操作に応じて、球貸しスイッチ信号および返却スイッチ信号が払出制御基板37を介して与えられる。また、カードユニット50から残高表示基板74には、プリペイドカードの残高を示すカード残高表示信号および球貸し可表示信号が払出制御基板37を介して与えられる。カードユニット50と払出制御基板37の間では、接続信号(VL信号)、ユニット操作信号(BRDY信号)、球貸し要求信号(BRQ信号)、球貸し完了信号(EXS信号)およびパチンコ機動作信号(PRDY信号)が入力ポート372bおよび出力ポート372eを介してやりとりされる。
【0072】
パチンコ遊技機1の電源が投入されると、払出制御基板37の払出制御用CPU371は、カードユニット50にPRDY信号を出力する。また、カードユニット制御用マイクロコンピュータは、VL信号を出力する。払出制御用CPU371は、VL信号の入力状態により接続状態/未接続状態を判定する。カードユニット50においてカードが受け付けられ、球貸しスイッチが操作され球貸しスイッチ信号が入力されると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRDY信号を出力する。この時点から所定の遅延時間が経過すると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRQ信号を出力する。
【0073】
そして、払出制御基板37の払出制御用CPU371は、カードユニット50に対するEXS信号を立ち上げ、カードユニット50からのBRQ信号の立ち下がりを検出すると、払出モータ289を駆動し、所定個の貸し球を遊技者に払い出す。このとき、振分ソレノイド310は駆動状態とされている。すなわち、球振分部材311を球貸し側に向ける。そして、払出が完了したら、払出制御用CPU371は、カードユニット50に対するEXS信号を立ち下げる。その後、カードユニット50からのBRDY信号がオン状態でなければ、賞球払出制御を実行する。
【0074】
以上のように、カードユニット50からの信号は全て払出制御基板37に入力される構成になっている。従って、球貸し制御に関して、カードユニット50から主基板31に信号が入力されることはなく、主基板31の基本回路53にカードユニット50の側から不正に信号が入力される余地はない。また、カードユニット50で用いられる電源電圧AC24Vは払出制御基板37から供給される。
【0075】
なお、この実施の形態では、カードユニット50が遊技機とは別体として遊技機に隣接して設置されている場合を例にするが、カードユニット50は遊技機と一体化されていてもよい。また、コイン投入に応じてその金額に応じた遊技球を遊技機が貸し出すように構成した場合でも本発明を適用できる。
【0076】
図10は、電源基板910の一構成例を示すブロック図である。電源基板910は、主基板31、図柄制御基板80、音声制御基板70、ランプ制御基板35および払出制御基板37等の電気部品制御基板と独立して設置され、遊技機内の各電気部品制御基板および機構部品が使用する電圧を生成する。この例では、AC24V、VSL(DC+30V)、DC+21V、DC+12VおよびDC+5Vを生成する。また、バックアップ電源となるコンデンサ916は、DC+5Vすなわち各基板上のIC等を駆動する電源のラインから充電される。なお、VSLは、整流回路912において、整流素子でAC24Vを整流昇圧することによって生成される。VSLは、ソレノイド駆動電源となる。
【0077】
トランス911は、交流電源からの交流電圧を24Vに変換する。AC24V電圧は、コネクタ915に出力される。また、整流回路912は、AC24Vから+30Vの直流電圧を生成し、DC−DCコンバータ913およびコネクタ915に出力する。DC−DCコンバータ913は、1つまたは複数のコンバータIC922(図10では1つのみを示す。)を有し、VSLにもとづいて+21V、+12Vおよび+5Vを生成してコネクタ915に出力する。コンバータIC922の入力側には、比較的大容量のコンデンサ923が接続されている。従って、外部からの遊技機に対する電力供給が停止したときに、+30V、+12V、+5V等の直流電圧は、比較的緩やかに低下する。この結果、コンデンサ923は、後述する補助駆動電源の役割を果たす。コネクタ915は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。
【0078】
ただし、電源基板910に各電気部品制御基板に至る各コネクタを設け、電源基板910から、中継基板を介さずにそれぞれの基板に至る各電圧を供給するようにしてもよい。また、図10には1つのコネクタ915が代表して示されているが、コネクタは、各電気部品制御基板対応に設けられている。
【0079】
DC−DCコンバータ913からの+5Vラインは分岐してバックアップ+5Vラインを形成する。バックアップ+5Vラインとグラウンドレベルとの間には大容量のコンデンサ916が接続されている。コンデンサ916は、遊技機に対する電力供給が遮断されたときの電気部品制御基板のバックアップRAM(電源バックアップされているRAMすなわち電力供給停止時にも記憶内容保持状態となりうるバックアップ記憶手段)に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、+5Vラインとバックアップ+5Vラインとの間に、逆流防止用のダイオード917が挿入される。この実施の形態では、バックアップ用の+5Vは、主基板31および払出制御基板37に供給される。
【0080】
なお、バックアップ電源として、+5V電源から充電可能な電池を用いてもよい。電池を用いる場合には、+5V電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。
【0081】
また、電源基板910には、電源監視用IC902が搭載されている。電源監視用IC902は、VSL電圧を導入し、VSL電圧を監視することによって電源断の発生を検出する。具体的には、VSL電圧が所定値(この例では+22V)以下になったら、電源断が生ずるとして電圧低下信号(電源断信号)を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧(この例では+5V)よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるVSLが用いられている。電源監視用IC902からの電圧低下信号は、主基板31や払出制御基板37等に供給される。
【0082】
電源監視用IC902が電源断を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のCPUが暫くの間動作しうる程度の電圧である。また、電源監視用IC902が、CPU等の回路素子を駆動するための電圧(この例では+5V)よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、CPUが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。さらに、監視電圧としてVSL(+30V)を用いる場合には、遊技機の各種スイッチに供給される電圧が+12Vであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、+30V電源の電圧を監視すると、+30V作成の以降に作られる+12Vが落ち始める以前の段階でそれの低下を検出できる。
【0083】
よって、+12V電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、+12Vより早く低下する+30V電源電圧を監視して電源断を認識すれば、スイッチ出力がオン状態を呈する前に電源復旧待ちの状態に入ってスイッチ出力を検出しない状態となることができる。
【0084】
また、電源監視用IC902は、電気部品制御基板とは別個の電源基板910に搭載されているので、電源監視回路から複数の電気部品制御基板に電源断信号を供給することができる。電源断信号を必要とする電気部品制御基板が幾つあっても電源監視手段は1つ設けられていればよいので、各電気部品制御基板における各電気部品制御手段が後述する復帰制御を行っても、遊技機のコストはさほど上昇しない。
【0085】
なお、図10に示された構成では、電源監視用IC902の検出出力(電源断信号)は、バッファ回路918,919を介してそれぞれの電気部品制御基板(例えば主基板31と払出制御基板37)に伝達されるが、例えば、1つの検出出力を中継基板に伝達し、中継基板から各電気部品制御基板に同じ信号を分配する構成でもよい。また、電源断信号を必要とする基板数に応じたバッファ回路を設けてもよい。
【0086】
図11は、主基板31におけるCPU56周りの一構成例を示すブロック図である。図11に示すように、電源基板910の電源監視回路(電源監視手段)からの電源断信号(電圧低下信号)が、CPU56のマスク不能割込端子(XNMI端子)に接続されている。電源監視回路は、遊技機が使用する各種直流電源のうちのいずれかの電源の電圧を監視して電源電圧低下を検出する回路である。この実施の形態では、VSLの電源電圧を監視して電圧値が所定値以下になるとローレベルの電源断信号を発生する。VSLは、遊技機で使用される直流電圧のうちで最大のものであり、この例では+30Vである。従って、CPU56は、割込処理によって電源断の発生を確認することができる。
【0087】
図11には、システムリセット回路65も示されている。リセットIC651は、電源投入時に、外付けのコンデンサの容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。すなわち、リセット信号をハイレベルに立ち上げてCPU56を動作可能状態にする。また、リセットIC651は、電源監視回路が監視する電源電圧と等しい電源電圧であるVSLの電源電圧を監視して電圧値が所定値(電源監視回路が電源断信号を出力する電源電圧値よりも低い値)以下になると出力をローレベルにする。従って、CPU56は、電源監視回路からの電源断信号に応じて所定の電力供給停止時処理を行った後、システムリセットされる。
【0088】
図11に示すように、リセット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は、確実に動作を開始する。
【0089】
そして、例えば、電源監視回路の検出電圧(電源断信号を出力することになる電圧)を+22Vとし、リセット信号をローレベルにするための検出電圧を+9Vとする。そのように構成した場合には、電源監視回路とシステムリセット回路65とが、同一の電源VSLの電圧を監視するので、電圧監視回路が電源断信号を出力するタイミングとシステムリセット回路65がシステムリセット信号を出力するタイミングの差を所望の所定期間に確実に設定することができる。所望の所定期間とは、電源監視回路からの電源断信号に応じて電力供給停止時処理を開始してから電力供給停止時処理が確実に完了するまでの期間である。
【0090】
CPU56等の駆動電源である+5V電源から電力が供給されていない間、RAMの少なくとも一部は、電源基板から供給されるバックアップ電源によってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、システムリセット回路65からリセット信号が発せられるので、CPU56は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップRAMに保存されているので、停電等からの復旧時に停電発生時の遊技状態に復帰することができる。
【0091】
なお、図11に示す構成では、電源投入時にCPU56のリセット端子に2回のリセット信号(ローレベル信号)が与えられるが、リセット信号の立ち上がりタイミングが1回しかなくても確実にリセット解除されるCPUを使用する場合には、符号941〜949で示された回路素子は不要である。その場合、リセットIC651の出力がそのままCPU56のリセット端子に接続される。
【0092】
この実施の形態で用いられるCPU56は、I/Oポート(PIO)およびタイマ/カウンタ回路(CTC)も内蔵している。PIOは、PB0〜PB3の4ビットおよびPA0〜PA7の1バイトのポートを有する。PB0〜PB3およびPA0〜PA7のポートは、入力/出力いずれにも設定できる。
【0093】
また、図11に示すように、スイッチ基板190に搭載されたクリアスイッチ921の出力信号が、論理を反転させるバッファ回路578A、および入力ポート578を介して入力される。なお、入力ポート578には、バッファ回路578Aを介して、V入賞スイッチ22などの他の各スイッチの出力信号も入力されている。このような構成によれば、クリアスイッチ921の切換により出力信号がクリアスイッチ信号(ローレベル信号)とされていると、クリアスイッチ信号が反転(なお、バッファ回路578Aがクリアスイッチ信号を反転して出力した信号を、クリアスイッチ信号と呼ぶことがある。)されてCPU56に与えられるので、CPU56により変動データ記憶手段の記憶内容が初期データとされる処理が行われるが、その詳細は後述する。このように、クリアスイッチ921の出力信号が入力ポート578を介して入力するようにしているので、簡単な構成でクリアスイッチ信号を導入することが可能となる。
【0094】
図12および図13は、この実施の形態における出力ポートの割り当てを示す説明図である。図12に示すように、出力ポート0は各電気部品制御基板に送出される制御コマンドのストローブ信号(INT信号)の出力ポートである。また、払出制御基板37に送出される払出制御コマンドの8ビットのデータは出力ポート1から出力され、図柄制御基板80に送出される表示制御コマンドの8ビットのデータは出力ポート2から出力され、ランプ制御基板35に送出されるランプ制御コマンドの8ビットのデータは出力ポート3から出力される。そして、図13に示すように、音声制御基板70に送出される音声制御コマンドの8ビットのデータは出力ポート4から出力される。
【0095】
また、出力ポート5から、情報出力回路64を介して情報端子板34に至る各種情報出力用信号すなわち制御に関わる情報の出力データが出力される。そして、出力ポート6から、可変入賞球装置15を開閉するためのソレノイド16、大入賞口の開閉板2おを開閉するためのソレノイド21、および大入賞口内の経路を切り換えるためのソレノイド21Aに対する駆動信号が出力される。
【0096】
図14は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図14に示すように、入力ポート0のビット0〜7には、それぞれ、入賞口スイッチ24a、入賞口スイッチ24b、入賞口スイッチ19a、入賞口スイッチ19b、始動口スイッチ17、カウントスイッチ23、V入賞スイッチ(特定領域スイッチ)22、ゲートスイッチ12の検出信号が入力される。また、入力ポート1のビット0〜4には、それぞれ、賞球カウントスイッチ301A、満タンスイッチ48、球切れスイッチ187の検出信号、カウントスイッチ短絡信号、クリアスイッチ921の出力信号が入力される。
【0097】
次に遊技機の動作について説明する。
図15は、主基板31におけるCPU56が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されると、メイン処理において、CPU56は、まず、必要な初期設定を行う。
【0098】
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。
【0099】
この実施の形態で用いられているCPU56には、マスク可能な割込(INT)のモードとして以下の3種類のモードが用意されている。なお、マスク可能な割込が発生すると、CPU56は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
【0100】
割込モード0:割込要求を行った内蔵デバイスがRST命令(1バイト)またはCALL命令(3バイト)をCPUの内部データバス上に送出する。よって、CPU56は、RST命令に対応したアドレスまたはCALL命令で指定されるアドレスの命令を実行する。リセット時に、CPU56は自動的に割込モード0になる。よって、割込モード1または割込モード2に設定したい場合には、初期設定処理において、割込モード1または割込モード2に設定するための処理を行う必要がある。
【0101】
割込モード1:割込が受け付けられると、常に0038(h)番地に飛ぶモードである。
【0102】
割込モード2:CPU56の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた2バイトで示されるアドレスである。従って、任意の(飛び飛びではあるが)偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
【0103】
よって、割込モード2に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード1とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップS2において、CPU56は割込モード2に設定される。
【0104】
次いで、CPU56は、入力ポート578を介して入力されるクリアスイッチ921の出力信号の状態を、本例では1回だけ確認する(ステップS7)。クリアスイッチ921がオンである場合(押下されている場合)には、ローレベルのクリアスイッチ信号が出力されている。従って、CPU56は、クリアスイッチ921がオンとされていれば、通常の初期化処理を実行する(ステップS11〜ステップS15)。クリアスイッチ921のオン判定は、初期設定を行う前に実行することが好ましい。遊技機の起動に先立ってバックアップ記憶(最終記憶内容)の消去の意思を確認したのちに制御を再開することができるからである。この様な場合、初期設定を行う前に、タイマ処理やスイッチ入力判定(複数回)を行うと、バックアップ内容を壊す可能性がある。また、遊技中のパチンコ遊技機の裏側には、遊技球が流動しておりノイズが発生しやすく、このため、通常スイッチ検出は複数回入力判定を行うが、クリアスイッチ921のオン判定は、遊技開始前に行われるため、ノイズの影響を受けにくい。従って、クリアスイッチ921入力判定を1回のみとしても、ノイズの影響は受け難く、また、プログラム開発効率も上がる。なお、クリアスイッチ921が確実に操作されたか否かを重視する場合には、CPU56がクリアスイッチ921の出力信号の状態を例えば3秒間確認する構成としてもよい。
【0105】
クリアスイッチ921がオンの状態でなければ(押下されていない状態)、CPU56は、電源断時にバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の停電発生NMI処理)が行われたか否か確認する(ステップS8)。この実施の形態では、不測の電源断が生じた場合には、バックアップRAM領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、CPU56は初期化処理を実行する。
【0106】
この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電源断時にバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、図16に示すように、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
【0107】
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。
【0108】
図17は、ステップS9のパリティチェック処理の一例を示すフローチャートである。パリティチェック処理では、CPU56は、まず、RAM55におけるバックアップパリティデータ領域に設定されているデータが「00」であるか否か確認する(ステップS9a)。バックアップパリティデータ領域については後で詳しく説明する。バックアップパリティデータ領域に設定されているデータが「00」でなければ、パリティ診断(チェックサム確認)を行う(ステップS9b)。そして、チェックサム確認の結果が正当であれば(ステップS9c)、CPU56は、後述する停電復旧処理を実行する(ステップS10)。また、チェックサム確認の結果が正当でなければ、または、バックアップパリティデータ領域に設定されているデータが「00」であった場合には、通常の初期化処理を実行する(ステップS11〜S15)。
【0109】
不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0110】
チェック結果が正常であれば(ステップS9)、CPU56は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電源断時の状態に戻すための遊技状態復旧処理を行う(ステップS10)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。
【0111】
なお、この実施の形態では、ステップS7でクリアスイッチ921がオンでない場合に、バックアップデータの有無が確認されていたが、逆に、バックアップデータの有無を確認した後、バックアップデータが存在する場合(さらに、バックアップ領域のチェックを行い、バックアップ領域のチェック結果が正常であったことが確認された場合であってもよい)にクリアスイッチ921の操作状態を確認するようにしてもよい。また、クリアスイッチ921の操作状態の確認を行わない構成(例えば、クリアスイッチ921を設けない構成)としてもよい。
【0112】
また、この実施の形態では、ステップS8でバックアップデータの有無が確認された後、バックアップデータが存在する場合にステップS9でバックアップ領域のチェックが行われたが、逆に、バックアップ領域のチェック結果が正常であったことが確認された後、バックアップデータの有無の確認を行うようにしてもよい。また、バックアップデータの有無の確認、またはバックアップ領域のチェックの何れか一方の確認を行うことによって、停電復旧処理を実行するか否かを判定してもよい。
【0113】
また、例えば停電復旧処理を実行するか否か判断する場合のパリティチェック(ステップS9)の際に、すなわち、遊技状態を復旧するか否か判断する際に、保存されていたRAMデータにおける特別プロセスフラグ等や始動入賞記憶数データによって、遊技機が遊技待機状態(図柄変動中でなく、大当り遊技中でなく、確変中でなく、また、始動入賞記憶がない状態)であることが確認されたら、遊技状態復旧処理を行わずに初期化処理を実行するようにしてもよい。
【0114】
以上のように、この実施の形態では、電力供給開始時に、電力供給停止時にバックアップRAM領域に記憶されたチェックデータ(チェックサムデータ)にもとづいて、初期化処理を行うか遊技状態復旧処理を行うかを決定するように構成したので、停電等の不測の電源断が発生したときに必要なデータを確実に保存することができ、さらに、保存されていたデータを電源復帰後に確実に活用することができる。
【0115】
また、このように、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としたので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。従って、電源断が発生しても遊技者に不利益がもたらされることを防止することができるとともに、遊技店での遊技機運用上の利便性を向上させることもできる遊技機が提供される。
【0116】
なお、電源投入時に、変動データ記憶手段にバックアップデータが記憶されていない場合に実行される初期化処理と、変動データ記憶手段にバックアップデータが記憶されていてもクリアスイッチ921がオフ状態である場合に実行される初期化処理とは、プログラム上兼用されている。従って、遊技店での運用上の利便性を向上させる制御を付加しても、プログラム容量はさほど増えない。
【0117】
また、上述した実施の形態では、チェックサム確認の結果が正当でなかった場合には通常の初期化処理を実行するようにしていたが、チェックサム確認の結果が正当でなかった場合であっても初期化処理を行わないようにしてもよい。
【0118】
例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容を修復したあと、遊技状態復旧処理を行うようにすればよい。この場合、データの修復は、例えば、誤り訂正符号(例えば、ランダム誤り対策に用いられるハミング符号、バースト誤り対策に用いられるFire符号など、誤り特性に合わせて選択するようにすればよい)を用いて、変化したビットを検出して訂正するようにすればよい。
【0119】
また、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容に異常が発生していることを報知するようにしてもよい。この場合、異常の報知は、所定の制御によって、例えば、異常が発生したことを可変表示装置9に表示し、スピーカ27から異常が発生したことを示す音声を出力し、ランプ制御基板35が制御する異常を報知するためのランプを点灯し、あるいはエラー表示用LED374に異常を示す所定の表示を行うようにすればよい。また、バックアップRAMの記憶内容に異常が発生していることを示す所定の信号を、情報出力回路64などを介して管理コンピュータに出力するようにしてもよい。
【0120】
さらに、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、クリアスイッチ921の操作によって初期化処理の実行要求を促すための報知を行うようにしてもよい。この場合の報知も、上述したように、所定の制御によって表示や音などによって行うようにすればよい。
【0121】
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS11)。また、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、払出コマンド格納ポインタなど)に初期値を設定する初期値設定処理も行われる。さらに、サブ基板(ランプ制御基板35、払出制御基板37、音声制御基板70、図柄制御基板80)を初期化するための処理を実行する(ステップS13)。サブ基板を初期化する処理とは、例えば初期設定コマンドを送出する処理である。
【0122】
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS14)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS1において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS15)。
【0123】
この実施の形態では、CPU56の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、図18に示すように、CPU56は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする(ステップS12)。
【0124】
初期化処理の実行(ステップS11〜S15)が完了すると、メイン処理で、タイマ割込が発生したか否かの監視(ステップS17)の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理(ステップS16)も実行される。
【0125】
CPU56は、ステップS17において、タイマ割込が発生したことを認識すると、ステップS21〜S31の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートセンサ12、始動口センサ17、カウントセンサ23および入賞口スイッチ19a,19b,24a,24b等のスイッチの状態を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
【0126】
次いで、パチンコ遊技機1の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる(エラー処理:ステップS22)。
【0127】
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う(ステップS23)。CPU56は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う(ステップS24)。
【0128】
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、7セグメントLEDによる可変表示器10を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【0129】
次いで、CPU56は、特別図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(普通図柄コマンド制御処理:ステップS28)。
【0130】
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
【0131】
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動指令を行う(ステップS30)。ソレノイド回路59は、駆動指令に応じてソレノイド16,21を駆動し、可変入賞球装置15または開閉板20を開状態または閉状態とする。
【0132】
そして、CPU56は、各入賞口への入賞を検出するためのスイッチ17,23,19a,19b,24a,24bの検出出力にもとづく賞球数の設定などを行う賞球処理を実行する(ステップS31)。具体的には、入賞検出に応じて払出制御基板37に払出制御コマンドを出力する。払出制御基板37に搭載されている払出制御用CPU371は、払出制御コマンドに応じて球払出装置97を駆動する。
【0133】
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるが、タイマ割込処理で遊技制御処理を実行してもよい。
【0134】
また、メイン処理には遊技制御処理に移行すべきか否かを判定する処理が含まれ、CPU56の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理で遊技制御処理に移行すべきか否かを判定するためのフラグがセット等がなされるので、遊技制御処理の全てが確実に実行される。つまり、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することは保証されている。
【0135】
以上に説明したように、この実施の形態では、CTCやPIOを内蔵するCPU56に対して、初期設定処理で割込モード2が設定される。従って、内蔵CTCを用いた定期的なタイマ割込処理を容易に実現できる。また、タイマ割込処理をプログラム上の任意の位置に設置できる。また、内蔵PIOを用いたスイッチ検出処理等を容易に割込処理で実現できる。その結果、プログラム構成が簡略化され、プログラム開発工数が低減する等の効果を得ることができる。
【0136】
なお、CTCおよびPIOの設定(ステップS5)が完了した後に、IEO/SCLK0端子から出力されるクロック信号の周波数を決めるための内部レジスタの設定を行ってもよい。その際、クロック信号の周波数は、遊技制御処理の起動周期である2msに応じた周波数とされる。そのような設定を行うと、IEO/SCLK0端子から、遊技制御処理の起動周期に応じた周波数のクロック信号がCPU56から外部出力される。すると、CPU56の外部において遊技制御処理の起動周期に対応した信号を観測することができる。よって、そのような信号を用いて、遊技機外部においてCPU56による遊技制御処理をシミュレーションしたり、CPU56の動作状況を試験したりすることが容易になる。
【0137】
また、図12および図13に示された出力ポート0〜6のうち、出力ポート0,1,2,3,4は、遊技制御処理のうちの特別図柄コマンド制御処理(ステップS25)、普通図柄コマンド制御処理(ステップS27)、賞球処理(ステップS31)等でアクセスされる。また、出力ポート5は、情報出力処理(ステップS29)でアクセスされ、出力ポート6は、特別図柄プロセス処理(ステップS25)や普通図柄プロセス処理(ステップS26)でアクセスされる。
【0138】
次に、メイン処理におけるスイッチ処理(ステップS21)の具体例を説明する。この実施の形態では、検出信号のオン状態が所定時間継続すると、確かにスイッチがオンしたと判定されスイッチオンに対応した処理が開始される。所定時間を計測するために、スイッチタイマが用いられる。スイッチタイマは、バックアップRAM領域に形成された1バイトのカウンタであり、検出信号がオン状態を示している場合に2ms毎に+1される。図19に示すように、スイッチタイマは検出信号の数Nだけ設けられている。この実施の形態ではN=12である。なお、N=12である(13でない)のは、クリアスイッチ921の出力信号に対応したスイッチタイマが設けられていない(クリア信号の検出の有無の判断はスイッチ処理で実行されないため不必要)からである。また、RAMにおいて、各スイッチタイマのアドレスは、入力ポートのビット配列順(図14に示された上から下への順)と同じ順序で並んでいる。
【0139】
図20は、遊技制御処理におけるステップS21のスイッチ処理の処理例を示すフローチャートである。なお、スイッチ処理は、図15に示すように遊技制御処理において最初に実行される。スイッチ処理において、CPU56は、まず、入力ポート0に入力されているデータを入力する(ステップS71)。次いで、処理数として「8」を設定し(ステップS72)、入賞口スイッチ24aのためのスイッチタイマのアドレスをポインタにセットする(ステップS73)。そして、スイッチチェック処理サブルーチンをコールする(ステップS74)。
【0140】
図21は、スイッチチェック処理サブルーチンを示すフローチャートである。スイッチチェック処理サブルーチンにおいて、CPU56は、ポート入力データ、この場合には入力ポート0からの入力データを「比較値」として設定する(ステップS81)。また、クリアデータ(00)をセットする(ステップS82)。そして、ポインタ(スイッチタイマのアドレスが設定されている)が指すスイッチタイマをロードするとともに(ステップS83)、比較値を右(上位ビットから下位ビットへの方向)にシフトする(ステップS84)。比較値には入力ポート0のデータ設定されている。そして、この場合には、入賞口スイッチ24aの検出信号がキャリーフラグに押し出される。
【0141】
キャリーフラグの値が「1」であれば(ステップS85)、すなわち入賞口スイッチ24aの検出信号がオン状態であれば、スイッチタイマの値を1加算する(ステップS87)。加算後の値が0でなければ加算値をスイッチタイマに戻す(ステップS88,S89)。加算後の値が0になった場合には加算値をスイッチタイマに戻さない。すなわち、スイッチタイマの値が既に最大値(255)に達している場合には、それよりも値を増やさない。
【0142】
キャリーフラグの値が「0」であれば、すなわち入賞口スイッチ24aの検出信号がオフ状態であれば、スイッチタイマにクリアデータをセットする(ステップS86)。すなわち、スイッチがオフ状態であれば、スイッチタイマの値が0に戻る。
【0143】
その後、CPU56は、ポインタ(スイッチタイマのアドレス)を1加算するとともに(ステップS90)、処理数を1減算する(ステップS91)。処理数が0になっていなければステップS82に戻る。そして、ステップS82〜S92の処理が繰り返される。
【0144】
ステップS82〜S92の処理は、処理数分すなわち8回繰り返され、その間に、入力ポート0の8ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が1増やされる。
【0145】
CPU56は、スイッチ処理のステップS75において、入力ポート1に入力されているデータを入力する。次いで、処理数として「4」を設定し(ステップS76)、賞球カウントスイッチ301Aのためのスイッチタイマのアドレスをポインタにセットする(ステップS77)。そして、スイッチチェック処理サブルーチンをコールする(ステップS78)。
【0146】
スイッチチェック処理サブルーチンでは、上述した処理が実行されるので、ステップS82〜S92の処理が、処理数分すなわち4回繰り返され、その間に、入力ポート1の4ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が1増やされる。
【0147】
なお、この実施の形態では、遊技制御処理が2ms毎に起動されるので、スイッチ処理も2msに1回実行される。従って、スイッチタイマは、2ms毎に+1される。
【0148】
図22〜図24は、遊技制御処理におけるステップS31の賞球処理の一例を示すフローチャートである。この実施の形態では、賞球処理では、入賞口スイッチ19a,19b,24a,24b、カウントスイッチ23および始動口スイッチ17が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板37に送出されるように制御し、また、満タンスイッチ48および球切れスイッチ187が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板37に送出されるように制御する等の処理が行われる。
【0149】
賞球処理において、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS121)、スイッチタイマのアドレスのオフセットとして「0」を設定する(ステップS122)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「0」は入賞口スイッチ24aに対応したスイッチタイマが指定されることを意味する。また、繰り返し数として「4」をセットする(ステップS123)。そして、スイッチオンチェックルーチンがコールされる(ステップS124)。
【0150】
入力判定値テーブルとは、各スイッチについて、連続何回のオンが検出されたら確かにスイッチがオンしたと判定するための判定値が設定されているROM領域である。入力判定値テーブルの構成例は図27に示されている。図27に示すように、入力判定値テーブルには、上から順に、すなわちアドレス値が小さい領域から順に、「2」、「50」、「250」、「30」、「250」、「1」の判定値が設定されている。また、スイッチオンチェックルーチンでは、入力判定値テーブルの先頭アドレスとオフセット値とで決まるアドレスに設定されている判定値と、スイッチタイマの先頭アドレスとオフセット値とで決まるスイッチタイマの値とが比較され、一致した場合には、例えばスイッチオンフラグがセットされる。
【0151】
スイッチオンチェックルーチンの一例が図25に示されている。スイッチオンチェックルーチンにおいて、CPU56は、入力判定値テーブル(図27参照)の先頭アドレスを設定する(ステップS101)。そして、そのアドレスにオフセットを加算し(ステップS102)、加算後のアドレスからスイッチオン判定値をロードする(ステップS103)。
【0152】
次いで、CPU56は、スイッチタイマの先頭アドレスを設定し(ステップS104)、そのアドレスにオフセットを加算し(ステップS105)、加算後のアドレスからスイッチタイマの値をロードする(ステップS106)。各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチに対応したスイッチタイマの値がロードされる。
【0153】
そして、CPU56は、ロードしたスイッチタイマの値とスイッチオン判定値とを比較する(ステップS107)。それらが一致すれば、スイッチオンフラグをセットする(ステップ108)。
【0154】
この場合には、スイッチオンチェックルーチンにおいて、入賞口スイッチ24aに対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされる(ステップS125)。スイッチオンフラグがセットされたら、10個カウンタが1加算される(ステップS126)。スイッチチェックオンルーチンは、スイッチタイマのアドレスのオフセットが更新されつつ(ステップS129)、最初に設定された繰り返し数分だけ実行されるので(ステップS127,S128)、結局、入賞口スイッチ19a,19b,24a,24bについて、対応するスイッチタイマの値がスイッチオン判定値「2」と比較されることになる。なお、10個カウンタとは、景品としての10個の遊技球払出の回数を示すカウンタである。
【0155】
次に、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS130)、スイッチタイマのアドレスのオフセットとして「4」を設定する(ステップS131)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「4」は始動口スイッチ17に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS132)。
【0156】
スイッチオンチェックルーチンにおいて、始動口スイッチ17に対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされるので(ステップS133)、6個カウンタが1加算される(ステップS134)。なお、6個カウンタとは、景品としての6個の遊技球払出の回数を示すカウンタである。
【0157】
次いで、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS135)、スイッチタイマのアドレスのオフセットとして「5」を設定する(ステップS136)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「5」はカウントスイッチ23に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS137)。
【0158】
スイッチオンチェックルーチンにおいて、カウントスイッチ23に対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされるので(ステップS138)、15個カウンタが1加算される(ステップS134)。なお、15個カウンタとは、景品としての15個の遊技球払出の回数を示すカウンタである。
【0159】
さらに、CPU56は、入力判定値テーブルのオフセットとして「1」を設定し(ステップS150)、スイッチタイマのアドレスのオフセットとして「9」を設定する(ステップS151)。入力判定値テーブルのオフセット「1」は、入力判定値テーブルの2番目のデータ「50」を使用することを意味する。また、各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「9」は満タンスイッチ48に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS152)。
【0160】
スイッチオンチェックルーチンにおいて、満タンスイッチ48に対応するスイッチタイマの値が満タンスイッチオン判定値「50」に一致していればスイッチオンフラグがセットされるので(ステップS153)、満タンフラグがセットされる(ステップS154)。なお、図23には明示されていないが、満タンスイッチ48に対応したスイッチタイマの値が0になると、満タンフラグはリセットされる。
【0161】
また、CPU56は、入力判定値テーブルのオフセットとして「2」を設定し(ステップS156)、スイッチタイマのアドレスのオフセットとして「0A(H)」を設定する(ステップS157)。入力判定値テーブルのオフセット「2」は、入力判定値テーブルの3番目のデータ「250」を使用することを意味する。また、各スイッチタイマは、図14に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「0A(H)」は球切れスイッチ187に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS158)。
【0162】
スイッチオンチェックルーチンにおいて、球切れスイッチ187に対応するスイッチタイマの値が球切れスイッチオン判定値「250」に一致していればスイッチオンフラグがセットされるので(ステップS159)、球切れフラグがセットされる(ステップS160)。なお、図23には明示されていないが、球切れスイッチ187に対応したスイッチオフタイマが用意され、その値が50になると、球切れフラグはリセットされる。
【0163】
そして、CPU56は、払出停止状態であるか否か確認する(ステップS201)。払出停止状態は、払出制御基板37に対して払出停止状態指定のコマンドを送出した後の状態である。払出停止状態でなければ、上述した球切れ状態フラグまたは満タンフラグがオンになったか否かを確認する(ステップS202)。
【0164】
いずれかがオン状態に変化したときには、払出停止状態指定に関するコマンド送信制御処理を行う(ステップS203)。コマンド送信制御処理では、払出制御コマンド用のコマンド送信テーブルに所定のデータが設定された後、払出制御コマンドの送出処理が実行される。なお、ステップS202において、いずれか一方のフラグが既にオン状態であったときに他方のフラグがオン状態になったときには、コマンド送信制御処理(ステップS203)は行われない。
【0165】
また、払出停止状態であれば、球切れ状態フラグおよび満タンフラグがともにオフ状態になったか否かを確認する(ステップS204)。ともにオフ状態となったときには、払出停止解除指定に関するコマンド送信制御処理を行う(ステップS205)。
【0166】
次いで、CPU56は、入賞に応じた賞球個数に関する払出制御コマンドをコマンド送信テーブルに設定し、設定内容に応じた払出制御コマンドを送出する制御を行う。まず、15個カウンタの値をチェックする(ステップS221)。上述したように、15個カウンタは、遊技球が大入賞口に入賞してカウントスイッチ23がオンするとカウントアップされる。15個カウンタの値が0でない場合には、15個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS222)。コマンド送信制御処理では、払出制御コマンド用のコマンド送信テーブルに所定のデータが設定された後、払出制御コマンドの送出処理が実行される。また、15個カウンタの値を−1する(ステップS223)。さらに、総賞球数格納バッファの格納値に15を加算する(ステップS224)。
【0167】
総賞球数格納バッファは、払出制御手段に対して指示した賞球個数の累積値(ただし、払い出しがなされると減算される)が格納されるバッファであり、バックアップRAMに形成されている。
【0168】
15個カウンタの値が0であれば、10個カウンタの値をチェックする(ステップS225)。上述したように、10個カウンタは、遊技球が入賞口に入賞して入賞口スイッチ19a,19b,24a,24bがオンするとカウントアップされる。10個カウンタの値が0でない場合には、10個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS226)。また、10個カウンタの値を−1する(ステップS227)。さらに、総賞球数格納バッファの格納値に10を加算する(ステップS228)。
【0169】
10個カウンタの値が0であれば、6個カウンタの値をチェックする(ステップS231)。上述したように、6個カウンタは、遊技球が始動入賞口に入賞して始動口スイッチ17がオンするとカウントアップされる。6個カウンタの値が0でない場合には、6個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS232)。また、6個カウンタの値を−1する(ステップS233)。さらに、総賞球数格納バッファの格納値に6を加算する(ステップS234)。
【0170】
以上にようにして、遊技制御手段から払出制御基板37に賞球個数を指示する払出制御コマンドを出力しようとするときに、コマンド送信テーブルの設定が行われた後、コマンド送信テーブルに設定された払出制御コマンドが払出制御基板37に送出される。そして、賞球個数を指示する払出制御コマンドの送出が行われたときには、賞球払出中フラグをオンする(ステップS235)。また、賞球払出中フラグをオンしているときには(ステップS236)、球払出装置97から実際に払い出された賞球数を監視して総賞球数格納バッファの格納値を減算する賞球個数減算処理が行われる(ステップS237)。なお、賞球払出中フラグがオンからオフに変化したときには、ランプ制御基板35に対して、賞球ランプ51の点灯を指示するランプ制御コマンドが送出される。
【0171】
図26は、賞球個数減算処理の一例を示すフローチャートである。賞球個数減算処理において、CPU56は、まず、総賞球数格納バッファの格納値をロードする(ステップS241)。そして、格納値が0であるか否か確認する(ステップS242)。0であれば処理を終了する。
【0172】
0でなければ、賞球カウントスイッチ用のスイッチタイマをロードし(ステップS243)、ロード値とオン判定値(この場合は「2」)とを比較する(ステップS244)。一致したら(ステップS245)、賞球カウントスイッチ301Aが確かにオンしたとして、すなわち、確かに1個の遊技球が球払出装置97から払い出されたとして、総賞球数格納バッファの格納値を1減算する(ステップS246)。
【0173】
また、賞球情報カウンタの値を+1する(ステップS247)。そして、賞球情報カウンタの値が10以上であれば(ステップS248)、賞球情報出力カウンタの値を+1するとともに(ステップS249)、賞球情報カウンタの値を−10する(ステップS250)。なお、賞球情報出力カウンタの値は、図15に示されたメイン処理における情報出力処理(ステップS29)で参照され、その値が1以上であれば、賞球信号(出力ポート5のビット7:図13参照)として1パルスが出力される。よって、この実施の形態では、10個の遊技球が賞球として払い出される度に、1つの賞球信号が遊技機外部に出力される。
【0174】
そして、総賞球数格納バッファの格納値が0になったら(ステップS251)、賞球払出中フラグをクリアし(ステップS252)、賞球残数がないことを報知するために、ランプ制御コマンド用のコマンド送信テーブルに賞球ランプ51の消灯を示すコマンドデータを設定した後(ステップS253)、ランプ制御コマンドの送出処理を実行する(ステップS254)。
【0175】
図28〜図30は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理(電力供給停止時処理)の処理例を示すフローチャートである。
【0176】
電力供給停止時処理において、CPU56は、AFレジスタ(アキュミュレータとフラグのレジスタ)を所定のバックアップRAM領域に退避する(ステップS451)。また、割込フラグをパリティフラグにコピーする(ステップS452)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS454〜S458)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復元され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0177】
次いで、この実施の形態では、所定期間、賞球カウントスイッチ301Aの検出信号をチェックする。そして、賞球カウントスイッチ301Aがオンしたら総賞球数バッファの内容を1減らす。
【0178】
なお、この実施の形態では、所定期間を計測するために、所定期間計測用カウンタが用いられる。所定期間計測用カウンタの値は、初期値mから、以下に説明するスイッチ検出処理のループ(S461から始まってS461に戻るループ)が1回実行される毎に−1され、その値が0になると、所定期間が終了したとする。検出処理のループでは、例外はあるがほぼ一定の処理が行われるので、ループの1周に要する時間のm倍の時間が、ほぼ所定期間に相当する。
【0179】
所定期間を計測するために、CPU56の内蔵タイマを用いてもよい。すなわち、スイッチ検出処理開始時に、内蔵タイマに所定値(所定期間に相当)を設定しておく。そして、スイッチ検出処理のループが1回実行される毎に、内蔵タイマのカウント値をチェックする。そして、カウント値が0になったら、所定期間が終了したとする。内蔵タイマの値が0になったことを検出するために内蔵タイマによる割込を用いることもできるが、この段階では制御内容(RAMに格納されている各値など)を変化させないように、割込を用いず、内蔵タイマのカウント値を読み出してチェックするようなプログラム構成の方が好ましい。
【0180】
また、所定期間は、遊技球が、球払出装置97から落下した時点から、賞球カウントスイッチ301Aに到達するまでの時間以上に設定される。球払出装置97から賞球カウントスイッチ301Aまでの距離をLとすると、その間の落下時間tは、t=√(2L/g)(g:重力加速度)になるので、所定期間は、それ以上に設定される。
【0181】
少なくとも、スイッチ検出処理が実行される所定期間では、賞球カウントスイッチ301Aが遊技球を検出できる状態でなければならない。そこで、この実施の形態では、図10に示されたように、電源基板910におけるコンバータIC922の入力側に比較的大容量の補助駆動電源としてのコンデンサ923が接続されている。よって、遊技機に対する電力供給停止時にも、ある程度の期間は+12V電源電圧がスイッチ駆動可能な範囲に維持され、賞球カウントスイッチ301Aが動作可能になる。その期間が、上記の所定期間以上になるように、コンデンサの容量が決定される。
【0182】
なお、入力ポートおよびCPU56も、コンバータIC922で作成される+5V電源で駆動されるので、電力供給停止時にも、比較的長い期間動作可能になっている。
【0183】
ステップS461において、2ms計測用カウンタに2msの時間に相当する初期値nが設定される。そして、2ms計測用カウンタの値が0になるまで(ステップS462)、2ms計測用カウンタの値が−1される(ステップS463)。
【0184】
2ms計測用カウンタの値が0になると、賞球カウントスイッチ301Aの検出信号の入力チェックが行われる。すなわち、図20および図21に示されたスイッチ処理およびスイッチチェック処理に類似した処理が行われる。具体的には、入力ポート1に入力されているデータを入力する(ステップS464)。次いで、クリアデータ(00)をセットする(ステップS465)。また、ポート入力データ、この場合には入力ポート1からの入力データを「比較値」として設定する(ステップS466)。さらに、賞球カウントスイッチ301Aのためのスイッチタイマのアドレスをポインタにセットする(ステップS467)。
【0185】
そして、ポインタ(スイッチタイマのアドレスが設定されている)が指すスイッチタイマをロードするとともに(ステップS468)、比較値を右(上位ビットから下位ビットへの方向)にシフトする(ステップS469)。比較値には入力ポート1のデータ設定されている。そして、この場合には、賞球カウントスイッチ301Aの検出信号がキャリーフラグに押し出される。
【0186】
キャリーフラグの値が「1」であれば(ステップS470)、すなわち賞球カウントスイッチ301Aの検出信号がオン状態であれば、スイッチタイマの値を1加算する(ステップS471)。キャリーフラグの値が「0」であれば、すなわち賞球カウントスイッチ301Aの検出信号がオフ状態であれば、スイッチタイマにクリアデータをセットする(ステップS472)。すなわち、スイッチがオフ状態であれば、スイッチタイマの値が0に戻る。
【0187】
そして、スイッチタイマの値が2になったときに(ステップS473)、総賞球数格納バッファの格納値を1減算するとともに(ステップS474)、賞球情報カウンタの値を+1する(ステップS475)。そして、賞球情報カウンタの値が10以上であれば(ステップS476)、賞球情報出力カウンタの値を+1するとともに(ステップS477)、賞球情報カウンタの値を−10する(ステップS478)。
【0188】
次いで、所定期間計測用カウンタの値を−1し(ステップS479)、その値が0になっていなければステップS461に戻る。
【0189】
以上の処理によって、所定期間内に賞球カウントスイッチ301Aがオンしたら、総賞球数格納バッファの値が−1される。バックアップRAMの内容を保存するための処理は、このようなスイッチ検出処理の後で行われるので、払出が完了した賞球について、必ず総賞球数格納バッファが−1される。従って、遊技球の払出に関して、保存される制御状態に矛盾が生じてしまうことが防止される。また、上記のスイッチ検出処理では、検出期間用カウンタを用いたタイマ処理が施されている。すなわち、2ms毎に賞球カウントスイッチ301Aの検出出力のチェックが行われ、2回連続してオン検出した場合に、賞球カウントスイッチ301Aが確実にオンしたと見なされる。従って、誤ってスイッチオン検出がなされてしまうことは防止される。また、スイッチ検出処理において、遊技機外部への賞球情報出力のための賞球情報出力回数カウンタの演算も行われるので、外部に出力される賞球情報と実際の払出賞球数とが食い違ってしまうようなこともない。
【0190】
なお、この実施の形態では、賞球カウントスイッチ301Aのみのスイッチ検出処理が行われたが、始動入賞口のスイッチや大入賞口に関連するV入賞スイッチ22やカウントスイッチについても同様のスイッチ検出処理を行ってもよい。また、他の入賞についても同様のスイッチ検出処理を行ってもよい。そのようなオンチェックも行う場合には、入賞口に遊技球が入賞した直後に停電が発生したような場合でも、その入賞が確実に検出され、保存される遊技状態に反映される。
【0191】
所定期間が経過すると(ステップS480)、すなわち、所定期間計測用カウンタの値が0になると、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS481)。バックアップフラグはバックアップRAM領域に形成されている。次いで、パリティデータを作成する(ステップS482〜S491)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS482)、チェックサム算出開始アドレスをポインタにセットする(ステップS483)。また、チェックサム算出回数をセットする(ステップS484)。
【0192】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS485)。演算結果をチェックサムデータエリアにストアするとともに(ステップS486)、ポインタの値を1増やし(ステップS487)、チェックサム算出回数の値を1減算する(ステップS488)。ステップS485〜S488の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS489)。
【0193】
チェックサム算出回数の値が0になったら、CPU56は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS490)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS491)。このデータが、電源投入時にチェックされるパリティデータとなる。
【0194】
図31は、バックアップパリティデータ作成方法を説明するための説明図である。ただし、図31に示す例では、簡単のために、バックアップデータRAM領域のデータのサイズを3バイトとする。また、図31に示す例では、ステップS484でチェックサム算出回数として3がセットされるものとする。電源電圧低下にもとづく停電発生処理において、図31(A)に示すように、バックアップチェックデータ領域に、初期データ(この例では00H)が設定される。次に、「00H」とチェックサム算出開始アドレス(この例では「F0H」)の排他的論理和がとられ、その結果と次のポインタが指すRAM領域の内容(本例では「16H」)の排他的論理和がとられる。さらに、その結果と次のポインタが指すRAM領域の内容(本例では「DFH」)の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転したデータ(この例では「C6H」)がバックアップパリティデータ領域に設定される。
【0195】
電源が再投入されたときには、チェックサム確認処理(ステップS9b)においてパリティ診断が行われるが、図31(B)はパリティ診断の例を示す説明図である。バックアップ領域の全データがそのまま保存されていれば、電源再投入時に、図31(A)に示すようなデータがバックアップ領域に設定されている。
【0196】
ステップS51の処理において、CPU56は、バックアップRAM領域のバックアップパリティデータ領域に設定されていたデータ(この例では「C6H」)を初期データとし、初期データを反転したデータ(この例では「39H」)を用いて、バックアップデータ領域の各データについて順次排他的論理和をとる処理を行う。バックアップ領域の全データがそのまま保存されていれば、最終的な演算結果は、「00H」、すなわちバックアップチェックデータ領域に設定されているデータと一致する。バックアップRAM領域内のデータにビット誤りが生じていた場合には、最終的な演算結果は「00H」にならない。
【0197】
よって、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータとを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。
【0198】
このように、この実施の形態では、図17に示されたパリティチェック処理において、バックアップパリティデータ領域に設定されていたデータが「00」でないときにチェックサム確認処理が行われ(ステップS9a,S9b)、バックアップパリティデータ領域に設定されていたデータが「00」である場合には停電復旧処理を行う。
【0199】
なお、この実施の形態では、チェックサム確認処理(ステップS9b)におけるパリティ診断において図31(B)に示すようにパリティ診断を行うようにしていたが、パリティ診断において、図31(A)と同様の処理を行うようにしてもよい。すなわち、パリティ診断において、パリティデータ作成のための演算処理と同じ演算処理を行うようにしてもよい。この場合、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータ(この場合、「00」)とを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。なお、パリティ診断においてもパリティデータ作成のときと同じ演算をおこなうので、初期データを設定する必要はない。
【0200】
次いで、CPU56は、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS492)。以後、内蔵RAM55のアクセスができなくなる。
【0201】
さらに、CPU56は、クリアデータ(00)を適当なレジスタにセットし(ステップS493)、処理数(この例では「7」)を別のレジスタにセットする(ステップS494)。また、出力ポート0のアドレスをIOポインタに設定する(ステップS495)。IOポインタとして、さらに別のレジスタが用いられる。
【0202】
そして、IOポインタが指すアドレスにクリアデータをセットするとともに(ステップS496)、IOポインタの値を1増やし(ステップS497)、処理数の値を1減算する(ステップS498)。ステップS496〜S498の処理が、処理数の値が0になるまで繰り返される。その結果、全ての出力ポート0〜6(図12および図13参照)にクリアデータが設定される。図12および図13に示すように、この例では、「1」がオン状態であり、クリアデータである「00」が各出力ポートにセットされるので、全ての出力ポートがオフ状態になる。
【0203】
従って、遊技状態を保存するための処理(この例では、チェックサムの生成およびRAMアクセス防止)が実行された後、各出力ポートは直ちにオフ状態になる。なお、この実施の形態では、遊技制御処理において用いられるデータが格納されるRAM領域は全て電源バックアップされている。従って、その内容が正しく保存されているか否かを示すチェックサムの生成処理、およびその内容を書き換えないようにするためのRAMアクセス防止処理が、遊技状態を保存するための処理に相当する。
【0204】
遊技状態を保存するための処理が実行された後、直ちに各出力ポートがオフ状態になるので、保存される遊技状態と整合しない状況が発生することは確実に防止される。図28〜図30に示す処理が実行されるときには、遊技機に対する電源供給が停止するので、電気部品に印加される電圧が低下していく。そして、印加電圧が駆動可能電圧を下回った時点で電気部品の駆動は停止する。従って、遊技機に対する電力供給停止時には、短時間の遅れはあるものの電気部品の駆動は停止する。
【0205】
ところが、この実施の形態のような出力ポートに対するクリア処理を行わないと、遊技状態が保存された後、電力供給が停止するのを遊技制御手段が待っている間に可変入賞球装置15にさらに入賞してしまうこともある。そのような場合、電力供給再開時には保存されている遊技状態が復帰されるので保存時の始動入賞記憶数が始動記憶表示器18に表示される。すると、遊技者から見ると、始動入賞の保留記憶値が少なくなってしまっているように見え、トラブルが発生しかねない。しかし、この実施の形態では、そのようなトラブルが生ずる可能性がなくなる。さらに、停電等が発生する直前に大入賞口を開放する制御がなされたまま電力供給停止時処理が実行されて待機ループに入った後、電源が落ちきらないまま復帰したような場合に、この実施の形態では、遊技制御は待機ループに入っているが大入賞口は開いたままになっているという現象が生じてしまうことが防止される。また、待機ループに入っている間に可変表示が開始されてしまう等の現象も防止することができる。
【0206】
また、遊技状態が保存された後に、可変入賞球装置としての大入賞口への入賞が発生する場合もあり得る。そのような場合、遊技者が認識している入賞個数と、電力供給復帰時に、保存されていた遊技状態にもとづいて表示部に表示される入賞個数とが食い違ってトラブルが生ずる可能性もある。しかし、この実施の形態では、そのようなトラブルが生ずる可能性がなくなる。
【0207】
出力ポートに対するクリア処理が完了すると、CPU56は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0208】
なお、この実施の形態では、NMIに応じて電力供給停止時処理が実行されたが、電源断信号をCPU56のマスク可能端子に接続し、マスク可能割込処理によって電力供給停止時処理を実行してもよい。また、電源断信号を入力ポートに入力し、入力ポートのチェック結果に応じて電力供給停止時処理を実行してもよい。
【0209】
また、この実施の形態では、電源断信号に応じて起動される処理の最初にレジスタの保存処理が行われたが、スイッチ検出処理においてレジスタを使用しない場合には、スイッチ検出処理の実行後に、すなわち、バックアップフラグの設定とチェックサムの算出の処理の前にレジスタ保存処理を行うことができる。その場合には、レジスタ保存処理、バックアップフラグ設定処理、チェックサム算出処理および出力ポートのオフ設定処理を電力供給停止時処理と見なすことができる。さらに、スイッチ検出処理において幾つかのレジスタを使用する場合であっても、使用しないレジスタについては、バックアップフラグの設定とチェックサムの算出の処理の前にレジスタ保存処理を行うことができる。
【0210】
なお、出力ポートのクリア処理を、スイッチ検出処理の実行前(ステップS460の前)に行ってもよい。電力供給停止時処理の実行中では、CPU56やスイッチ類はコンデンサの充電電力等で駆動されることになる。出力ポートのクリア処理をスイッチ検出処理の実行前に行った場合には、大入賞口や可変入賞装置等がソレノイド等の電気部品で駆動されるように構成されていても、それらが駆動されることはなく、コンデンサの充電電力等を電力供給停止時処理のために効果的に使用することができる。
【0211】
ただし、電源が断することが検出された後にV入賞スイッチ22を検出する場合には、ソレノイド21(大入賞口をV入賞スイッチに誘導するための部材を動作させるもの)の出力ポートについては、スイッチ検出処理の実行後にクリアする。そのようにすれば、継続権発生の条件であるV入賞をしていない状態で停電が発生した場合、停電発生直前に大入賞口に入った遊技球をV入賞スイッチ22の側に誘導することができる。従って、不当な継続権の消滅を防止することができる。この場合、所定期間は、大入賞口に入賞した遊技球がV入賞スイッチ22に到達するまでの時間以上の期間である。なお、ラッチ式のソレノイドを用いた場合には、出力ポートのクリア処理は不要である。
【0212】
また、出力ポートのクリアによって大入賞口が閉じた場合でも、大入賞口内に遊技球があることも考えられるので、電源断信号に応じて実行されるスイッチ検出処理において、カウントスイッチ23の検出も行うことが望ましい。上記の出力ポートのクリア処理をスイッチ検出処理前に行ってもよいこと、および、上記の例外的な処理については、第1種パチンコ遊技機においてのみならず、第2種パチンコ遊技機や第3種パチンコ遊技機についても同様である。
【0213】
図32は、本発明の他の実施の形態における遊技制御手段のマスク不能割込処理(電力供給停止時処理)の一部を示すフローチャートである。図32に示すフローチャートは、図28〜図30に示されたステップS451〜S492の処理に続いて実行される。すなわち、この実施の形態では、RAMアクセス禁止状態に設定された後(ステップS492)、クリアデータテーブルの先頭アドレスがポインタにセットされ(ステップS501)、次いで、データクリア処理が実行された後に(ステップS502)、システムリセットを待つ待機状態に入る。なお、ポインタとして所定のレジスタが用いられる。
【0214】
図33は、クリアデータテーブルの一構成例を示す説明図である。図33に示す例では、クリアデータテーブルには、順に、処理数データ(この例では「7」)、出力ポート0のアドレス、出力ポート0に設定されるべきクリアデータ、・・・、出力ポート6のアドレス、出力ポート6に設定されるべきクリアデータが設定されている。出力ポートのアドレスとクリアデータとは、出力ポートのアドレスが小さいものから順に設定されている。
【0215】
図34は、ステップS502のデータクリア処理を示すフローチャートである。データクリア処理において、CPU56は、ポインタの指すアドレスから処理数データを抽出する(ステップS511)。そして、ポインタの値を1増やす(ステップS512)。次いで、ポインタの指すアドレスからアドレスデータ(出力ポートのアドレス)を抽出する(ステップS513)。さらに、ポインタの値を1増やす(ステップS514)。
【0216】
そして、ポインタの指すアドレスからクリアデータを抽出し(ステップS515)、そのデータを、ステップS83で抽出したアドレスに設定する(ステップS516)。次に、処理数の値を1減算し(ステップS517)、処理数が0になったらデータクリア処理を終了する(ステップS518)。処理数が0でない場合には、ステップS511に戻る。
【0217】
クリアデータテーブルを用いるようにしても、クリア信号出力処理を迅速に行うことができ、遊技機への電力供給停止時に保存した制御状態と実際の制御状態との間の矛盾発生をより効果的に防止できる。そして、クリアデータテーブルを用いる場合には、テーブルにおいて、アドレスデータとクリアデータとをアドレス順に並べなくてもよく、テーブル構成の自由度が増す。例えば、試験信号などを用いる遊技機において試験信号をクリアしないようにしたい場合に、試験信号に関する出力ポートに関するデータをテーブルから除外することによって、容易に試験信号のクリア処理を除外することができる。また、出力ポートの増減や変更があったような場合に、テーブルの内容を変更するだけでよく、プログラム変更の必要はない。
【0218】
図35は、払出検出手段からの検出信号の入力処理が実行される様子の一例を示すタイミング図である。この実施の形態では、電源断信号は、主基板31および払出制御基板37に入力され、主基板31のCPU56および払出制御用CPU371のNMI端子に入力される。主基板31のCPU56は、マスク不能割込処理によって、上述した電力供給停止時処理を実行する。
【0219】
図35に示すように、電源断信号がオン(この例ではハイレベルからローレベルに変化)するあたりで賞球払出が実行された場合、払出検出手段からの検出信号の入力処理が実行される所定期間内で賞球カウントスイッチ301Aがオンする。従って、電源断信号がオンするあたりで実行された球払出についても、電力供給停止時処理が実行される際に、総賞球数バッファに反映することができる。
【0220】
VSLの電圧値がさらに低下して所定値(この例では+9V)にまで低下すると、図11に示されたように主基板31搭載されているリセットIC651の出力がローレベルになり、CPU56がシステムリセット状態になる。なお、CPU56は、システムリセット状態とされる前に、電力供給停止時処理を完了している。
【0221】
VSLの電圧値がさらに低下してVcc(各種回路を駆動するための+5V)を生成することが可能な電圧を下回ると、各基板において各回路が動作できない状態となる。しかし、主基板31では、電力供給停止時処理が実行され、CPU56がシステムリセット状態とされている。
【0222】
なお、後述するように、払出制御基板37における払出制御用CPU371も、同様に電力供給停止時処理を行った後にシステムリセット状態になる。
【0223】
上記の実施の形態のパチンコ遊技機1は、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
【0224】
図36は、第3種パチンコ遊技機の遊技領域7の一例を示す説明図である。この例では、始動入賞口30Aに入賞があると可変表示部9において、図柄の可変表示が開始される。そして、図柄の停止図柄が所定の図柄の組み合わせになると、権利発生用電動役物30Bが所定期間開放して入賞しやすい状態になる。その状態で、権利発生用電動役物30Bへの入賞により権利が発生すると、モータ等で駆動されるロータ30Cに入った遊技球が大入賞口30Dの始動口スイッチに導かれ、その始動口スイッチで検出されると大入賞口30Dが開放される。なお、始動入賞口30A、権利発生用電動役物30B、ロータ30Cおよび大入賞口30Dに入賞した遊技球を検出するそれぞれのスイッチが設けられている。
【0225】
このような第3種パチンコ遊技機において、停電等の発生に応じて制御状態を保存するように構成した場合にも、例えば電源断信号に応じて起動される処理で、まず、出力ポートのクリア処理でロータ30Cを駆動するモータ等を停止する。そして、ロータ30Cによって始動口スイッチ(ロータ30Cに入った遊技球を検出するスイッチ)に導かれた遊技球は、電源が断することが検出された後でも所定期間スイッチ検出処理が実行されるので、始動口スイッチで検出可能である。従って、電源が復旧したときに、大入賞口30Dの作動条件が成立することが保証される。この場合、所定期間は、ロータ30Cの遊技球を保持する部位から始動口スイッチまで遊技球が移動するまでの時間以上の期間である。また、権利発生用電動役物30Bに設けられているスイッチについても、電源が断することが検出された後でも所定期間検出処理が実行されることによって、不当な権利消滅を防止することができる。
【0226】
なお、電源断信号の発生に応じて起動される処理におけるスイッチ検出処理において全てのスイッチの検出を行う場合には、図20に示されたスイッチ処理を、所定期間中に呼び出すようにしてもよい。そして、そのように構成した場合には、スイッチタイマ値がオン判定値に達した場合の処理も行う。例えば、入賞球スイッチのスイッチタイマ値がオン判定値に達したら賞球個数を設定するための処理を行ったり(15個カウンタのインクリメント等)、V入賞スイッチ22のスイッチタイマ値がオン判定値に達したらV入賞があった旨のフラグを設定する等の処理を行う。
【0227】
以下、遊技状態復旧処理について説明する。
図37は、図15のステップS10に示された遊技状態復旧処理の一例を示すフローチャートである。この例では、CPU56は、バックアップRAMに保存されていた値を各レジスタに復元する(ステップS91)。そして、バックアップRAMに保存されていたデータにもとづいて停電時の遊技状態を確認して復帰させる。すなわち、バックアップRAMに保存されていたデータにもとづいて、ソレノイド回路59を介してソレノイド16やソレノイド21を駆動し、始動入賞口14や開閉板20の開閉状態の復旧を行う(ステップS92,S93)。また、電源断中でも保存されていた特別図柄プロセスフラグおよび普通図柄プロセスフラグの値に応じて、電源断時の特別図柄プロセス処理の進行状況および普通図柄プロセス処理の進行状況に対応した制御コマンドを、図柄制御基板80、ランプ制御基板35および音声制御基板70に送出する(ステップS94)。
【0228】
以上のように、遊技状態復旧処理では、復元された内部状態に応じて、各種電気部品の状態復元が行われるとともに、図柄制御基板80、ランプ制御基板35および音声制御基板70に対して、制御状態を電源断時の状態に戻すための制御コマンド(電源断時の制御状態を生じさせるための制御コマンド)が送出される。そのような制御コマンドは、一般に、電源断前に最後に送出された1つまたは複数の制御コマンドである。
【0229】
遊技状態を電源断時の状態に復帰させると、この実施の形態では、CPU56は、前回の電源断時の割込許可/禁止状態を復帰させるため、バックアップRAMに保存されていたパリティフラグの値を確認する(ステップS95)。パリティフラグがオフ状態であれば、割込許可設定を行う(ステップS96)。しかし、パリティフラグがオン状態であれば、そのまま(ステップS1で設定された割込禁止状態のまま)遊技状態復旧処理を終了する。パリティフラグがオン状態であるということは、図28におけるステップS452に示されたように、前回の電源断時に割込禁止状態であったことを意味する。従って、パリティフラグがオン状態である場合には、割込許可はなされない。
【0230】
この実施の形態では、上述した遊技状態復旧処理によって、以下のような状態復旧が可能である。
【0231】
始動入賞口14および大入賞口(開閉板20)の状態が復元される。表示制御手段によって制御される普通図柄の表示状態(可変表示器10の表示状態)は、電源断時に変動中であった場合を除いて復元される。表示制御手段によって制御される特別図柄の表示状態(可変表示部9の表示状態)は、電源断時に変動中であった場合を除いて復元される。さらに、可変表示部9に表示される背景やキャラクタは、特別図柄変動中および大当り遊技中であった場合を除いて復元される。
【0232】
特別図柄の変動中に電源断となった場合には、可変表示パターンの変動時間(例えば10秒)および既に実行した時間(例えば4秒)の情報がバックアップされる。そして、主基板31は、復旧時に、表示パターンを示す表示制御コマンドおよび停止図柄を示す表示制御コマンドを表示制御基板80に出力し、残り時間(上述の例では6秒)経過後に、図柄を停止させるため表示制御コマンドを出力する。従って、特別図柄の表示状態は、電源断時に特別図柄の変動中であった場合には、復旧時に、表示されていない残りの時間(上述の例では6秒)につき可変表示が実行される。なお、復旧時に表示制御基板80に対して出力される表示パターンを示す表示制御コマンドは、電源断前に出力された表示パターンを示す表示制御コマンドと同じものであってもよいが、「停電復旧中です」のような画像を表示させるためのコマンドとしてもよい。この場合、「停電復旧中です」の表示は、残りの時間(上述の例では6秒)表示される。なお、特別図柄の変動中に電源断となった場合の、普通図柄の表示状態にについても、上述と同様の制御が行われる。
【0233】
なお、大当り遊技中に電源断となった場合にも、上述した特別図柄の変動中に電源断となった場合と同様に、ラウンド中あるいはラウンド間のインターバルの残り時間について、復旧時に、表示、音、ランプ、ソレノイド21などを制御するが、主基板31は、表示制御基板80に対して電源断前に出力した確定時の図柄(停止図柄)を指定する表示制御コマンドを出力する。これにより、ラウンド中あるいはラウンド間の大当り図柄による演出が可能となり(大当り図柄で大当り演出する機種について)、また、大当り終了後の変動開始時に表示する図柄も表示制御基板80が認識することができる。
【0234】
ランプ制御手段が制御する装飾ランプ25、始動記憶表示器18、ゲート通過記憶表示器41、賞球ランプ51および球切れランプ52の表示状態が復元される。遊技効果ランプ・LED28a,28b,28cの表示状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。各制御区間とは、例えば、大当り開始報知状態、大入賞口開放前状態、大入賞口開放中状態、大当り終了報知状態である。なお、特別図柄変動中に電源断となったあと復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ遊技効果ランプ・LED28a,28b,28cの表示状態を制御するようにしてもよいが、消灯または停電復旧時特有のパターンで点灯/点滅させるようにしてもよい。
【0235】
音声制御手段が制御する音発生状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。なお、特別図柄変動中に電源断となったあと復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ音発生状態を制御するようにしてもよいが、無音または停電復旧時特有の音声パターン(例えば「停電復旧中です」との音声)を出力するようにしてもよい。
【0236】
なお、この実施の形態では、電源断からの復旧時に、主基板31の遊技制御手段から表示制御手段、ランプ制御手段および音声制御手段に対して状態復元のための制御コマンドが送出されるが、表示制御手段、ランプ制御手段および音声制御手段が電源バックアップされる場合には、主基板31からの制御コマンドを用いることなく、表示制御手段、ランプ制御手段および音声制御手段が独自に制御状態を復元するように構成してもよい。
【0237】
また、後述するように、払出制御基板37に搭載されている払出制御手段は、電源バックアップされているので、電源断からの復旧時に、賞球払出状態および球貸し制御状態は、電源断時の状態(電圧低下を検出したときから所定時間が経過したあとの状態)に復旧する。この実施の形態では、発射制御基板は払出制御手段に接続されているので、発射制御基板91における制御状態も同様に復元される。
【0238】
なお、上記の実施の形態では、遊技制御手段において、データ保存処理および復旧処理が行われる場合について説明したが、払出制御手段、音声制御手段、ランプ制御手段および表示制御手段におけるRAMの一部も電源バックアップされ、払出制御手段、表示制御手段、音制御手段およびランプ制御手段も、上述したような処理を行ってもよい。ただし、払出制御手段、表示制御手段、音制御手段およびランプ制御手段は、復旧時にコマンド送出処理を行う必要はない。
【0239】
次に、遊技制御手段以外の電気部品制御手段においてデータ保存処理および復旧処理が行われる場合の例として、払出制御手段においてデータ保存や復旧が行われる場合について説明する。
【0240】
図38は、払出制御用CPU371周りの一構成例を示すブロック図である。図38に示すように、電源基板910の電源監視回路(電源監視手段)からの電源断信号が、バッファ回路960を介して払出制御用CPU371のマスク不能割込端子(XNMI端子)に接続されている。従って、払出制御用CPU371は、マスク不能割込処理によって電源断の発生を確認することができる。
【0241】
払出制御用CPU371のCLK/TRG2端子には、主基板31からのINT信号が接続されている。CLK/TRG2端子にクロック信号が入力されると、払出制御用CPU371に内蔵されているタイマカウンタレジスタCLK/TRG2の値がダウンカウントされる。そして、レジスタ値が0になると割込が発生する。従って、タイマカウンタレジスタCLK/TRG2の初期値を「1」に設定しておけば、INT信号の入力に応じて割込が発生することになる。
【0242】
払出制御基板37には、システムリセット回路975も搭載されているが、この実施の形態では、システムリセット回路975におけるリセットIC976は、電源投入時に、外付けのコンデンサに容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。また、リセットIC976は、VSLの電源電圧を監視して電圧値が所定値(例えば+9V)以下になると出力をローレベルにする。従って、電源断時には、リセットIC976からの信号がローレベルになることによって払出制御用CPU371がシステムリセットされる。
【0243】
リセットIC976が電源断を検知するための所定値は、通常時の電圧より低いが、払出制御用CPU371が暫くの間動作しうる程度の電圧である。また、リセットIC976が、払出制御用CPU371が必要とする電圧(この例では+5V)よりも高い電圧を監視するように構成されているので、払出制御用CPU371が必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。
【0244】
+5V電源から電力が供給されていない間、払出制御用CPU371の内蔵RAMの少なくとも一部は、電源基板から供給されるバックアップ電源がバックアップ端子に接続されることによってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、システムリセット回路975からリセット信号が発せられるので、払出制御用CPU371は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップされているので、停電等からの復旧時には停電発生時の払出制御状態に復帰することができる。
【0245】
なお、図38に示すように、スイッチ基板190に搭載されたクリアスイッチ921の出力信号が、論理を反転させるバッファ回路372A、および入力ポート372を介して入力される。なお、入力ポート372には、本例では、バッファ回路372Aを介して、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bの各スイッチの出力信号も入力されている。このような構成によれば、クリアスイッチ921の切換により出力信号がクリアスイッチ信号(ローレベル信号)とされていると、クリアスイッチ信号が反転(なお、バッファ回路372Aがクリアスイッチ信号を反転して出力した信号を、クリアスイッチ信号と呼ぶことがある。)されて払出制御用CPU371に与えられるので、払出制御用CPU371により後述する初期化処理が行われる。
【0246】
なお、図38に示された構成では、システムリセット回路975は、電源投入時に、コンデンサの容量で決まる期間のローレベルを出力し、その後ハイレベルを出力する。すなわち、リセット解除タイミングは1回だけである。しかし、図11に示された主基板31の場合と同様に、複数回のリセット解除タイミングが発生するような回路構成を用いてもよい。
【0247】
図39は、この実施の形態における出力ポートの割り当てを示す説明図である。図39に示すように、出力ポートC(アドレス00H)は、払出モータ289に出力される駆動信号の出力ポートである。また、出力ポートD(アドレス01H)は、7セグメントLEDであるエラー表示LED374に出力される表示制御信号の出力ポートである。そして、出力ポートE(アドレス02H)は、振分ソレノイド310に出力される駆動信号、およびカードユニット50に対するEXS信号とPRDY信号とを出力するための出力ポートである。
【0248】
図40は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図40に示すように、入力ポートA(アドレス06H)は、主基板31から送出された払出制御コマンドの8ビットの払出制御信号を取り込むための入力ポートである。また、入力ポートB(アドレス07H)のビット0〜2には、それぞれ、賞球カウントスイッチ301A、球貸しカウントスイッチ301B、モータ位置センサの検出信号が入力される。ビット3〜5には、カードユニット50からのBRDY信号、BRQ信号およびVL信号が入力される。ビット6には、クリアスイッチ921の出力信号が入力される。
【0249】
図41は、払出制御用CPU371のメイン処理を示すフローチャートである。メイン処理では、払出制御用CPU371は、まず、必要な初期設定を行う。すなわち、払出制御用CPU371は、まず、割込禁止に設定する(ステップS701)。次に、割込モードを割込モード2に設定し(ステップS702)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS703)。また、払出制御用CPU371は、内蔵デバイスレジスタの初期化を行い(ステップS704)、CTCおよびPIOの初期化(ステップS705)を行った後に、RAMをアクセス可能状態に設定する(ステップS706)。
【0250】
この実施の形態では、内蔵CTCのうちの一つのチャネルがタイマモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをタイマモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。そして、そのチャネルによる割込がタイマ割込として用いられる。タイマ割込を例えば2ms毎に発生させたい場合は、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
【0251】
なお、タイマモードに設定されたチャネル(この実施の形態ではチャネル3)に設定される割込ベクタは、タイマ割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでタイマ割込処理の先頭番地が特定される。タイマ割込処理ではタイマ割込フラグがセットされ、メイン処理でタイマ割込フラグがセットされていることが検知されると、払出制御処理が実行される。すなわち、タイマ割込処理では、電気部品制御処理の一例である払出制御処理を実行するための設定がなされる。
【0252】
また、内蔵CTCのうちの他の一つのチャネル(この実施の形態ではチャネル2)が、遊技制御手段からの払出制御コマンド受信のための割込発生用のチャネルとして用いられ、そのチャネルがカウンタモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをカウンタモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。
【0253】
カウンタモードに設定されたチャネル(チャネル2)に設定される割込ベクタは、後述するコマンド受信割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでコマンド受信割込処理の先頭番地が特定される。
【0254】
この実施の形態では、払出制御用CPU371でも割込モード2が設定される。従って、内蔵CTCのカウントアップにもとづく割込処理を使用することができる。また、CTCが送出した割込ベクタに応じた割込処理開始番地を設定することができる。
【0255】
CTCのチャネル2(CH2)のカウントアップにもとづく割込は、上述したタイマカウンタレジスタCLK/TRG2の値が「0」になったときに発生する割込である。従って、例えばステップS705において、特定レジスタとしてのタイマカウンタレジスタCLK/TRG2に初期値「1」が設定される。また、CTCのチャネル3(CH3)のカウントアップにもとづく割込は、CPUの内部クロック(システムクロック)をカウントダウンしてレジスタ値が「0」になったら発生する割込であり、後述する2msタイマ割込として用いられる。具体的には、CH3のレジスタ値はシステムクロックの1/256周期で減算される。ステップS705において、CH3のレジスタには、初期値として2msに相当する値が設定される。
【0256】
CTCのCH2のカウントアップにもとづく割込は、CH3のカウントアップにもとづく割込よりも優先順位が高い。従って、同時にカウントアップが生じた場合に、CH2のカウントアップにもとづく割込、すなわち、コマンド受信割込処理の実行契機となる割込の方が優先される。
【0257】
次いで、払出制御用CPU371は、入力ポート372を介して入力されるクリアスイッチ921の出力信号の状態を、本例では1回だけ所定期間(例えば、0.001秒)確認する(ステップS707)。クリアスイッチ921がオン(クリアスイッチ921が押下されている状態)である場合には、ローレベルのクリアスイッチ信号が出力されている。従って、払出制御用CPU371は、クリアスイッチ921がオンとされていれば、通常の初期化処理を実行する(ステップS711〜ステップS713)。なお、CPU56がクリアスイッチ921の出力信号の状態を2回以上確認する構成としてもよい。
【0258】
クリアスイッチ921がオンの状態でなければ(すなわち、クリアスイッチ921が押下されていない状態であれば)、払出制御用CPU371は、払出制御用のバックアップRAM領域にバックアップデータが存在しているか否かの確認を行う(ステップS708)。すなわち、例えば、主基板31のCPU56の処理と同様に、電源断時にセットされるバックアップフラグがセット状態になっているか否かによって、バックアップデータが存在しているか否か確認する。バックアップフラグがセット状態になっている場合には、バックアップデータありと判断する。
【0259】
バックアップありを確認したら、払出制御用CPU371は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。
【0260】
図42は、ステップS709のパリティチェック処理の一例を示すフローチャートである。パリティチェックでは、CPU56は、まず、RAM55におけるバックアップパリティデータ領域に設定されているデータが「00」であるか否か確認する(ステップS709a)。バックアップパリティデータ領域については後で詳しく説明する。バックアップパリティデータ領域に設定されているデータが「00」でなければ、パリティ診断(チェックサム確認)を行う(ステップS709b)。そして、チェックサム確認の結果が正当であれば(ステップS709c)、CPU56は、後述する停電復旧処理を実行する(ステップS710)。また、チェックサム確認の結果が正当でなければ、または、バックアップパリティデータ領域に設定されているデータが「00」であった場合には、通常の初期化処理を実行する(ステップS711〜S713)。
【0261】
不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0262】
チェック結果が正常であれば(ステップS709)、払出制御用CPU371は、内部状態を電源断時の状態に戻すための払出状態復旧処理を行う(ステップS710)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の指すアドレスに復帰する。
【0263】
以上のように、この実施の形態では、電力供給開始時に、電力供給停止時にバックアップRAM領域に記憶されたチェックデータ(チェックサムデータ)にもとづいて、初期化処理を行うか遊技状態復旧処理を行うかを決定するように構成したので、停電等の不測の電源断が発生したときに必要なデータを確実に保存することができ、さらに、保存されていたデータを電源復帰後に確実に活用することができる。
【0264】
また、このように、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としたので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。従って、電源断が発生しても遊技者に不利益がもたらされることを防止することができるとともに、遊技店での遊技機運用上の利便性を向上させることもできる遊技機が提供される。
【0265】
なお、電源投入時に、変動データ記憶手段にバックアップデータが記憶されていない場合に実行される初期化処理と、変動データ記憶手段にバックアップデータが記憶されていてもクリアスイッチ921がオフ状態である場合に実行される初期化処理とは、プログラム上兼用されている。従って、遊技店での運用上の利便性を向上させる制御を付加しても、プログラム容量はさほど増えない。
【0266】
また、上述した実施の形態では、チェックサム確認の結果が正当でなかった場合には通常の初期化処理を実行するようにしていたが、チェックサム確認の結果が正当でなかった場合であっても初期化処理を行わないようにしてもよい。
【0267】
例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容を修復したあと、遊技状態復旧処理を行うようにすればよい。この場合、データの修復は、例えば、誤り訂正符号(例えば、ランダム誤り対策に用いられるハミング符号、バースト誤り対策に用いられるFire符号など、誤り特性に合わせて選択するようにすればよい)を用いて、変化したビットを検出して訂正するようにすればよい。
【0268】
また、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容に異常が発生していることを報知するようにしてもよい。この場合、異常の報知は、所定の制御によって、例えば、エラー表示用LED374に異常を示す所定の表示を行うようにすればよい。また、バックアップRAMの記憶内容に異常が発生していることを示す所定の信号を、情報出力回路64などを介して管理コンピュータに出力するようにしてもよい。
【0269】
さらに、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、クリアスイッチ921の操作によって初期化処理の実行要求を促すための報知を行うようにしてもよい。この場合の報知も、上述したように、所定の制御によってエラー表示用LED374に表示するなどするようにすればよい。
【0270】
初期化処理では、払出制御用CPU371は、まず、RAMクリア処理を行う(ステップS711)。そして、2ms毎に定期的にタイマ割込がかかるように払出制御用CPU371に設けられているCTCのレジスタの設定が行われる(ステップS712)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS701において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS713)。
【0271】
この実施の形態では、払出制御用CPU371の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、図43に示すように、払出制御用CPU371は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする(ステップS721)。なお、図43には割込を許可することも明示されているが(ステップS720)、2msタイマ割込処理では、最初に割込許可状態に設定される。すなわち、2msタイマ割込処理中には割込許可状態になってので、INT信号の入力にもとづく払出制御コマンド受信処理を優先して実行することができる。
【0272】
払出制御用CPU371は、ステップS724において、タイマ割込フラグがセットされたことを検出するとステップS751以降の払出制御処理を実行する。以上の制御によって、この実施の形態では、払出制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、払出制御処理はメイン処理において実行されるが、タイマ割込処理で払出制御処理を実行してもよい。
【0273】
払出制御処理において、払出制御用CPU371は、まず、中継基板72を介して入力ポート372bに入力される賞球カウントスイッチ301A、球貸しカウントスイッチ301Bがオンしたか否かを判定する(スイッチ処理:ステップS751)。
【0274】
次に、払出制御用CPU371は、センサ(例えば、払出モータ289の回転数を検出するモータ位置センサ)からの信号入力状態を確認してセンサの状態を判定する等の処理を行う(入力判定処理:ステップS752)。払出制御用CPU371は、さらに、受信した払出制御コマンドを解析し、解析結果に応じた処理を実行する(コマンド解析実行処理:ステップS753)。
【0275】
次いで、払出制御用CPU371は、主基板31から払出停止指示コマンドを受信していたら払出停止状態に設定し、払出開始指示コマンドを受信していたら払出停止状態の解除を行う(ステップS754)。また、プリペイドカードユニット制御処理を行う(ステップS755)。
【0276】
次いで、払出制御用CPU371は、球貸し要求に応じて貸し球を払い出す制御を行う(ステップS756)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を球貸し側に設定する。
【0277】
さらに、払出制御用CPU371は、総合個数記憶に格納された個数の賞球を払い出す賞球制御処理を行う(ステップS757)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を賞球側に設定する。そして、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に対して駆動信号を出力し、所定の回転数分払出モータ289を回転させる払出モータ制御処理を行う(ステップS758)。
【0278】
なお、この実施の形態では、払出モータ289としてステッピングモータが用いられ、それらを制御するために1−2相励磁方式が用いられる。従って、具体的には、払出モータ制御処理において、8種類の励磁パターンデータが繰り返し払出モータ289に出力される。また、この実施の形態では、各励磁パターンデータが4msずつ出力される。
【0279】
次いで、エラー検出処理が行われ、その結果に応じてエラー表示LED374に所定の表示を行う(エラー処理:ステップS759)。
【0280】
なお、出力ポートCは、払出制御処理における払出モータ制御処理(ステップS758)でアクセスされる。また、出力ポートDは、払出制御処理におけるエラー処理(ステップS759)でアクセスされる。そして、出力ポートEは、払出制御処理における球貸し制御処理(ステップS756)および賞球制御処理(ステップS757)でアクセスされる。
【0281】
図44は、払出制御用CPU371が内蔵するRAMの使用例を示す説明図である。この例では、バックアップRAM領域に、総合個数記憶(例えば2バイト)と貸し球個数記憶とがそれぞれ形成されている。総合個数記憶は、主基板31の側から指示された賞球払出個数の総数を記憶するものである。貸し球個数記憶は、未払出の球貸し個数を記憶するものである。
【0282】
このように、未払出の賞球個数と貸し球個数とが、所定期間はその内容を保持可能なバックアップRAM領域に記憶されるので、停電等の不測の電源断が生じても、所定期間内に電源復旧すれば、バックアップRAM領域に記憶される賞球処理および球貸し処理を続行できる。従って、遊技者に与えられる不利益を低減することができる。
【0283】
図45〜図47は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理の処理例を示すフローチャートである。この例では、NMIに応じて電力供給停止時処理が実行されるが、電源断信号を払出制御用CPU371のマスク可能端子に接続し、マスク可能割込処理によって電力供給停止時処理を実行してもよい。また、電源断信号を入力ポートに入力し、入力ポートのチェック結果に応じて電力供給停止時処理を実行してもよい。
【0284】
マスク不能割込処理において、払出制御用CPU371は、AFレジスタを所定のバックアップRAM領域に退避する(ステップS801)。また、割込フラグをパリティフラグにコピーする(ステップS802)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS804〜808)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復元され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0285】
次いで、払出モータ289に出力される駆動信号をオフ状態にする(ステップS761)。よって、球払出装置97の駆動は停止する。その後、この実施の形態では、所定期間、払出検出手段としての賞球カウントスイッチ301A(賞遊技媒体検出手段に相当)および球貸しカウントスイッチ301B(貸出遊技媒体検出手段に相当)の検出信号をチェックする。そして、賞球カウントスイッチ301Aがオンしたら総合個数記憶の内容を1減らす。また、球貸しカウントスイッチ301Bがオンしたら貸し球個数記憶の内容を1減らす。
【0286】
なお、この実施の形態では、所定期間を計測するために、所定期間計測用カウンタが用いられる。所定期間計測用カウンタの値は、初期値mから、以下に説明するスイッチ検出処理のループ(S763から始まってS763に戻るループ)が1回実行される毎に−1され、その値が0になると、所定期間が終了したとする。検出処理のループでは、例外はあるがほぼ一定の処理が行われるので、ループの1周に要する時間のm倍の時間が、ほぼ所定期間に相当する。
【0287】
所定期間を計測するために、払出制御用CPU371の内蔵タイマを用いてもよい。すなわち、スイッチ検出処理開始時に、内蔵タイマに所定値(所定期間に相当)を設定しておく。そして、スイッチ検出処理のループが1回実行される毎に、内蔵タイマのカウント値をチェックする。そして、カウント値が0になったら、所定期間が終了したとする。内蔵タイマの値が0になったことを検出するために内蔵タイマによる割込を用いることもできるが、この段階では制御内容(RAMに格納されている各値など)を変化させないように、割込を用いず、内蔵タイマのカウント値を読み出してチェックするようなプログラム構成の方が好ましい。また、所定期間は、遊技球が、球払出装置97から落下した時点から、賞球カウントスイッチ301Aまたは球貸しカウントスイッチ301Bに到達するまでの時間以上に設定される。
【0288】
少なくとも、スイッチ検出処理が実行される所定期間では、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bが遊技球を検出できる状態でなければならない。そこで、この実施の形態では、図10に示されたように、電源基板910におけるコンバータIC922の入力側に比較的大容量の補助駆動電源としてのコンデンサ923が接続されている。よって、遊技機に対する電力供給停止時にも、ある程度の期間は+12V電源電圧がスイッチ駆動可能な範囲に維持され、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bが動作可能になる。その期間が、上記の所定期間以上になるように、コンデンサの容量が決定される。
【0289】
なお、入力ポートおよび払出制御用CPU371も、コンバータIC922で作成される+5V電源で駆動されるので、電力供給停止時にも、比較的長い期間動作可能になっている。
【0290】
さらに、この実施の形態では、賞球路と貸し球路とを切り換えるために振分ソレノイド310が用いられている。よって、図10に示されたコンデンサ923の容量は、少なくとも上記の所定期間の間、振分ソレノイド310も駆動できるような容量になっている。なお、コンデンサ923は、VSLの電源ラインと並列接続されているが、電源断信号に応じて遊技制御手段が他のソレノイド(大入賞口開閉用等)の駆動信号をオフ状態にしているので、電源断信号発生後では、コンデンサ923は、各ソレノイドのうちでは振分ソレノイド310のみを駆動できればよい。
【0291】
なお、この実施の形態で用いられているコンデンサ923は補助駆動電源の一つの例であるが、補助駆動電源として他のものを用いてもよい。少なくとも、上記の所定期間の間は、賞球カウントスイッチ301A、球貸しカウントスイッチ301B、振分ソレノイド310および払出制御用CPU371等の払出制御手段を駆動できるものであれば、他の態様の補助駆動電源を用いることができる。
【0292】
払出検出手段からの検出信号の入力処理(スイッチ検出処理)では、払出制御用CPU371は、まず、所定期間計測用カウンタに、所定期間に対応した値mを設定する(ステップS762)。そして、払出制御用CPU371は、所定期間計測用カウンタの値を−1し(ステップS763)、所定期間計測用カウンタの値を確認する(ステップS764)。その値が0であれば、スイッチ検出処理を終了し、制御状態を保存するための処理である電力供給停止時処理に移行する。
【0293】
所定期間計測用カウンタの値が0になっていなければ、賞球カウントスイッチオン中であるか否か確認する(ステップS765)。オン中であれば、検出期間用カウンタの値を1減らした後(ステップS766)、検出期間用カウンタの値が0になったか否か確認する(ステップS767)。0になっていれば、入力ポートを介して賞球カウントスイッチ301Aの検出信号を確認し(ステップS768)、オン状態を示していれば、賞球カウントスイッチ301Aが確実にオンしたとして、総合個数記憶の値を1減らす(ステップS769)。
【0294】
ステップS765で、賞球カウントスイッチオン中でないことを確認したら、入力ポートを介して賞球カウントスイッチ301Aの検出信号を確認し(ステップS770)、オン状態を示していれば、賞球カウントスイッチON中フラグをセットするとともに(ステップS771)、検出期間用カウンタに初期値nをセットする(ステップS772)。
【0295】
以上の処理によって、所定期間内に賞球カウントスイッチ301Aがオンしたら、総合個数記憶の値が−1される。バックアップRAMの内容を保存するための処理は、このようなスイッチ検出処理の後で行われるので、払出が完了した賞球について、必ず総合個数記憶が−1される。従って、遊技球の払出に関して、保存される制御状態に矛盾が生じてしまうことが防止される。また、上記のスイッチ検出処理では、検出期間用カウンタを用いたタイマ処理が施されている。すなわち、一度賞球カウントスイッチ301Aのオンが検出された後、所定時間(S763からS767に至りS763に戻るループにおける処理時間のn倍)の経過後にもオンが検出されないとスイッチオンと見なされない。従って、誤ってスイッチオン検出がなされてしまうことは防止される。
【0296】
なお、通常時のスイッチ処理(図41におけるステップS751)でも、誤検出防止用のタイマ処理が施されている。よって、そのような通常時のスイッチ処理をコールするようにしてもよい。また、ここでは、検出期間用カウンタを用いたタイマ処理が行われたが、所定期間の計測の場合にCPU内蔵タイマを用いてもよいのと同様、CPU内蔵タイマを用いてスイッチ検出処理におけるタイマ処理を実現してもよい。
【0297】
賞球カウントスイッチオン中でなく、かつ、賞球カウントスイッチ301Aのオン状態が検出できない場合には、球貸しカウントスイッチ301Bについてスイッチ検出処理を行う。すなわち、払出制御用CPU371は、球貸しカウントスイッチオン中であるか否か確認する(ステップS775)。オン中であれば、検出期間用カウンタの値を1減らした後(ステップS776)、検出期間用カウンタの値が0になったか否か確認する(ステップS777)。0になっていれば、入力ポートを介して球貸しカウントスイッチ301Bの検出信号を確認し(ステップS778)、オン状態を示していれば、球貸しカウントスイッチ301Bが確実にオンしたとして、貸し球個数記憶の値を1減らす(ステップS779)。
【0298】
ステップS775で、球貸しカウントスイッチオン中でないことを確認したら、入力ポートを介して球貸しカウントスイッチ301Bの検出信号を確認し(ステップS780)、オン状態を示していれば、球貸しカウントスイッチON中フラグをセットするとともに(ステップS781)、検出期間用カウンタに初期値nをセットする(ステップS782)。
【0299】
以上の処理によって、所定期間内に球貸しカウントスイッチ301Bがオンしたら、貸し球個数記憶の値が−1される。バックアップRAMの内容を保存するための処理は、このようなスイッチ検出処理の後で行われるので、払出が完了した貸し球について、必ず貸し球個数記憶が−1される。従って、遊技球の払出に関して、保存される制御状態に矛盾が生じてしまうことが防止される。また、上記のスイッチ検出処理では、検出期間用カウンタを用いたタイマ処理が施されている。すなわち、球貸しカウントスイッチ301Bのオンが所定時間以上継続しないとスイッチオンと見なされない。従って、誤ってスイッチオン検出がなされてしまうことは防止される。
【0300】
所定期間が経過すると(ステップS764)、払出制御用CPU371は、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS809)。バックアップフラグはバックアップRAM領域に形成されている。
【0301】
次いで、主基板31のCPU56の処理と同様の処理を行ってパリティデータを作成しバックアップRAM領域に保存する(ステップS810〜S819)。
【0302】
図48は、バックアップパリティデータ作成方法を説明するための説明図である。ただし、図48に示す例では、簡単のために、バックアップデータRAM領域のデータのサイズを3バイトとする。また、図48に示す例では、ステップS812でチェックサム算出回数として3がセットされるものとする。電源電圧低下にもとづく停電発生処理において、図48(A)に示すように、バックアップチェックデータ領域に、初期データ(この例では00H)が設定される。次に、「00H」とチェックサム算出開始アドレス(この例では「F0H」)の排他的論理和がとられ、その結果と次のポインタが指すRAM領域の内容(本例では「16H」)の排他的論理和がとられる。さらに、その結果と次のポインタが指すRAM領域の内容(本例では「DFH」)の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転したデータ(この例では「C6H」)がバックアップパリティデータ領域に設定される。
【0303】
電源が再投入されたときには、チェックサム確認処理(ステップS709b)においてパリティ診断が行われるが、図48(B)はパリティ診断の例を示す説明図である。バックアップ領域の全データがそのまま保存されていれば、電源再投入時に、図48(A)に示すようなデータがバックアップ領域に設定されている。
【0304】
ステップS709の処理において、払出制御用CPU371は、バックアップRAM領域のバックアップパリティデータ領域に設定されていたデータ(この例では「C6H」)を初期データとし、初期データを反転したデータ(この例では「39H」)を用いて、バックアップデータ領域の各データについて順次排他的論理和をとる処理を行う。バックアップ領域の全データがそのまま保存されていれば、最終的な演算結果は、「00H」、すなわちバックアップチェックデータ領域に設定されているデータと一致する。バックアップRAM領域内のデータにビット誤りが生じていた場合には、最終的な演算結果は「00H」にならない。
【0305】
よって、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータとを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。
【0306】
このように、この実施の形態では、図48に示されたパリティチェック処理において、バックアップパリティデータ領域に設定されていたデータが「00」でないときにチェックサム確認処理が行われ(ステップS709a,S709b)、バックアップパリティデータ領域に設定されていたデータが「00」である場合には停電復旧処理を行う。
【0307】
なお、この実施の形態では、チェックサム確認処理(ステップS709b)におけるパリティ診断において図48(B)に示すようにパリティ診断を行うようにしていたが、パリティ診断において、図48(A)と同様の処理を行うようにしてもよい。すなわち、パリティ診断において、パリティデータ作成のための演算処理と同じ演算処理を行うようにしてもよい。この場合、払出制御用CPU371は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータ(この場合、「00」)とを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。なお、パリティ診断においてもパリティデータ作成のときと同じ演算をおこなうので、初期データを設定する必要はない。
【0308】
パリティデータを作成してバックアップRAM領域に保存すると、払出制御用CPU371は、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS820)。以後、内蔵RAMのアクセスができなくなる。
【0309】
さらに、払出制御用CPU371は、クリアデータ(00)を適当なレジスタにセットし(ステップS821)、処理数(この例では「3」)を別のレジスタにセットする(ステップS822)。また、出力ポートCのアドレス(この例では「00H」)をIOポインタに設定する(ステップS823)。IOポインタとして、さらに別のレジスタが用いられる。
【0310】
そして、IOポインタが指すアドレスにクリアデータをセットするとともに(ステップS824)、IOポインタの値を1増やし(ステップS825)、処理数の値を1減算する(ステップS827)。ステップS824〜S826の処理が、処理数の値が0になるまで繰り返される。その結果、全ての出力ポートC〜E(図39参照)にクリアデータが設定される。図39に示すように、この例では、「1」がオン状態であり、クリアデータである「00」が各出力ポートにセットされるので、全ての出力ポートがオフ状態になる。
【0311】
従って、遊技状態を保存するための処理(この例では、チェックサムの生成およびRAMアクセス防止)が実行された後、各出力ポートは直ちにオフ状態になる。なお、この実施の形態では、払出制御処理において用いられるデータが格納されるRAM領域は全て電源バックアップされている。従って、その内容が正しく保存されているか否かを示すチェックサムの生成処理、およびその内容を書き換えないようにするためのRAMアクセス防止処理が、払出制御状態を保存するための処理に相当する。
【0312】
以上のように、この実施の形態では、停電等の発生に応じて電源断信号が出力されたら、まず、球払出装置97の駆動を停止した後、所定期間、払出検出手段からの検出信号の入力処理が実行され、その後、払出制御状態を保存するための処理が行われる。従って、停電発生時に払出途中であった遊技球も、バックアップRAMの保存内容に反映される。
【0313】
すなわち、この実施の形態では、遊技機への電力供給停止時に制御状態をバックアップ記憶手段に保存するように構成した場合に、制御の矛盾等を生じさせないようにすることができる。
【0314】
なお、振分ソレノイド310の出力ポート以外の出力ポートのクリア処理を、スイッチ検出処理の実行前(ステップS761の前)に行ってもよい。電力供給停止時処理の実行中では、払出制御用CPU371やスイッチ類はコンデンサの充電電力等で駆動されることになる。出力ポートのクリア処理をスイッチ検出処理の実行前に行った場合には、コンデンサの充電電力等を電力供給停止時処理のために効率的に使用することができる。
【0315】
出力ポートに対するクリア処理が完了すると、払出制御用CPU371は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0316】
なお、ここでは、賞球カウントスイッチ301Aまたは球貸しカウントスイッチ301Bの検出信号がオン状態を示したらタイマ(検出期間用カウンタ)をセットし、タイマがタイムアップしたときにも検出信号がオン状態を示していたら、スイッチが確実にオンしたと判定したが、主基板31のCPU56と同様に、2msのタイマ(2ms計測用カウンタ)がタイムアップする毎に検出信号の判定を行うように構成してもよい。
【0317】
また、この実施の形態でも、電源断信号に応じて起動される処理の最初にレジスタの保存処理が行われたが、スイッチ検出処理においてレジスタを使用しない場合には、スイッチ検出処理の実行後に、すなわち、バックアップフラグの設定とチェックサムの算出の処理の前にレジスタ保存処理を行うことができる。その場合には、レジスタ保存処理、バックアップフラグ設定処理、チェックサム算出処理および出力ポートのオフ設定処理を電力供給停止時処理と見なすことができる。さらに、スイッチ検出処理において幾つかのレジスタを使用する場合であっても、使用しないレジスタについては、バックアップフラグの設定とチェックサムの算出の処理の前にレジスタ保存処理を行うことができる。
【0318】
図49は、本発明の他の実施の形態における払出制御手段のクリアデータテーブルを用いたマスク不能割込処理の一部を示すフローチャートである。図49に示すフローチャートは、図45〜図47に示されたステップS801〜S820の処理に続いて実行される。すなわち、この実施の形態では、RAMアクセス禁止状態に設定された後(ステップS820)、クリアデータテーブルの先頭アドレスがポインタにセットされ(ステップS831)、次いで、データクリア処理が実行された後に(ステップS832)、システムリセットを待つ待機状態に入る。なお、ポインタとして所定のレジスタが用いられる。
【0319】
図50は、クリアデータテーブルの一構成例を示す説明図である。図50に示す例では、クリアデータテーブルには、順に、処理数データ(この例では「3」)、出力ポートCのアドレス(アドレス00H)、出力ポートCに設定されるべきクリアデータ、・・・、出力ポートEのアドレス(アドレス02H)、出力ポートEに設定されるべきクリアデータが設定されている。出力ポートのアドレスとクリアデータとは、出力ポートのアドレスが小さいものから順に設定されている。
【0320】
図51は、ステップS832のデータクリア処理を示すフローチャートである。データクリア処理において、払出制御用CPU371は、ポインタの指すアドレスから処理数データを抽出する(ステップS841)。そして、ポインタの値を1増やす(ステップS842)。次いで、ポインタの指すアドレスからアドレスデータ(出力ポートのアドレス)を抽出する(ステップS843)。さらに、ポインタの値を1増やす(ステップS844)。
【0321】
そして、ポインタの指すアドレスからクリアデータを抽出し(ステップS845)、そのデータを、ステップS843で抽出したアドレスに設定する(ステップS846)。次に、処理数の値を1減算し(ステップS847)、処理数が0になったらデータクリア処理を終了する(ステップS848)。処理数が0でない場合には、ステップS841に戻る。
【0322】
クリアデータテーブルを用いるようにしても、クリア信号出力処理を迅速に行うことができ、遊技機への電力供給停止時に保存した制御状態と実際の制御状態との間の矛盾発生をより効果的に防止できる。そして、クリアデータテーブルを用いる場合には、テーブルにおいて、アドレスデータとクリアデータとをアドレス順に並べなくてもよく、テーブル構成の自由度が増す。また、出力ポートの増減や変更があったような場合に、テーブルの内容を変更するだけでよく、プログラム変更の必要はない。
【0323】
なお、クリアデータが全ての出力ポートについて00Hである場合には、クリアデータテーブルにクリアデータを含めなくてもよい。その場合には、図51に示されたデータクリア処理におけるS844,S845の処理は不要であり、ステップS846において、アドレスデータが指すアドレスにクリアデータ00Hが設定される。
【0324】
この実施の形態では、未払出の賞球および貸し球の総数が保存されるが、払出回数(例えば1回について25個)を記憶するというような他の保存方式を用いている場合であっても、電源断信号に応じて、所定期間は払出検出手段からの検出信号の入力処理が実行されるように構成されている場合には、保存される制御状態に矛盾が生じてしまうことが防止される。
【0325】
以上に説明したように、上記の各実施の形態では、停電等の発生に応じて電源断信号が出力されたら、まず、払出装置の駆動を停止した後、所定期間、払出検出手段からの検出信号の入力処理が実行され、その後、払出制御状態を保存するための処理が行われる。従って、停電発生時に払出途中であった遊技球も、バックアップRAMの保存内容に反映される。よって、遊技機への電力供給停止時に制御状態をバックアップ記憶手段に保存するように構成した場合に、保存される制御状態と実際の制御状態との間に矛盾等を生じさせないようにすることができる。
【0326】
保存される制御状態と実際の制御状態とは合致しているが、例えば電源断前に遊技していた遊技者とは異なる者が遊技を行う場合には、そのまま制御状態を復旧させることは好ましくない。上述した各実施の形態では、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としているので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。このように、保存される制御状態と実際の制御状態との間に矛盾等を生じさせないようにするだけでなく、遊技店での遊技機運用上の利便性を向上させることもできる。
【0327】
上述した実施の形態では、電源断信号に応じて発生する割込による割込処理(上述した例ではマスク不能割込処理)の開始時に球払出装置の動作を止めるとともに、所定期間、払出検出手段からの検出信号の入力処理を行った。しかし、遊技機への電力供給停止時に、まず、そのことを示す第1の信号を発生し、さらに電圧が低下すると第2の信号を発生するようにしてもよい。そして、第1の信号に応じて球払出装置の動作を止めるとともに払出検出手段からの検出信号の入力処理を行い、第2の信号に応じて、制御状態をバックアップRAMに保存するための処理を行ってもよい。
【0328】
図52は、そのような制御を行うための電源基板910Aの一構成例を示すブロック図である。この例では、電源基板910Aには、電源監視用IC932も搭載されている。電源監視用IC932は、VSL電源電圧を導入し、VSL電源電圧を監視することによって電源断の発生を検出する。具体的には、VSL電源電圧が所定値(例えば+24V)以下になったら、電源電圧が低下したとして電圧低下信号(第1の信号)を出力する。そして、電源監視用IC902は、VSL電源電圧が所定値(この例では+22V)以下になったら、電源断が生ずるとして電源断信号(第2の信号)を出力する。
【0329】
第1の信号が発生してから第2の信号が発生するまでの期間は、遊技球が、球払出装置97(または、賞球払出装置97A,貸し球払出装置97C)から落下した時点から、賞球カウントスイッチ301Aまたは球貸しカウントスイッチ301Bに到達するまでの時間以上に設定される。すなわち、その時間以上になるように、電源監視用IC902,932の監視電圧が設定される。電源監視用IC932の出力は、バッファ回路939,940を経て主基板31および払出制御基板37に至る。
【0330】
主基板31において、第1の信号である電圧低下信号は、CPU56のマスク可能外部割り込み端子に接続される。また、第2の信号である電源断信号は、上述した実施の形態と同様に、マスク不能割込端子に接続される。すなわち、第2の信号にもとづく割込の優先度は、第1の信号にもとづく割込の優先度よりも高い。
【0331】
図52、図53は、第1の信号の発生に応じて生ずる割込にもとづいて起動される割込処理(電圧低下割込処理)の一例を示すフローチャートである。主基板31のCPU56は、AFレジスタ(アキュミュレータとフラグのレジスタ)を所定のバックアップRAM領域に退避する(ステップS451)。また、割込フラグをパリティフラグにコピーする(ステップS452)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS454〜S458)。
【0332】
次いで、CPU56は、2ms計測用カウンタに2msの時間に相当する初期値nを設定する(ステップS461)。そして、2ms計測用カウンタの値が0になるまで(ステップS462)、2ms計測用カウンタの値を−1する(ステップS465)。2ms計測用カウンタの値が0になると、入力ポート1に入力されているデータを入力する(ステップS464)。次いで、クリアデータ(00)をセットする(ステップS465)。また、入力ポート1からの入力データを「比較値」として設定する(ステップS466)。さらに、賞球カウントスイッチ301Aのためのスイッチタイマのアドレスをポインタにセットする(ステップS467)。
【0333】
そして、ポインタ(スイッチタイマのアドレスが設定されている)が指すスイッチタイマをロードするとともに(ステップS468)、比較値を右(上位ビットから下位ビットへの方向)にシフトする(ステップS469)。比較値には入力ポート1のデータ設定されている。そして、この場合には、賞球カウントスイッチ301Aの検出信号がキャリーフラグに押し出される。
【0334】
キャリーフラグの値が「1」であれば(ステップS470)、すなわち賞球カウントスイッチ301Aの検出信号がオン状態であれば、スイッチタイマの値を1加算する(ステップS471)。キャリーフラグの値が「0」であれば、すなわち賞球カウントスイッチ301Aの検出信号がオフ状態であれば、スイッチタイマにクリアデータをセットする(ステップS472)。すなわち、スイッチがオフ状態であれば、スイッチタイマの値が0に戻る。
【0335】
そして、スイッチタイマの値が2になったときに(ステップS473)、総賞球数格納バッファの格納値を1減算するとともに(ステップS474)、賞球情報カウンタの値を+1する(ステップS475)。そして、賞球情報カウンタの値が10以上であれば(ステップS476)、賞球情報出力カウンタの値を+1するとともに(ステップS477)、賞球情報カウンタの値を−10する(ステップS478)。そして、ステップS461に戻る。
【0336】
ステップS461〜S478のスイッチ検出処理を行っている間に、電源電圧が低下していくので、第2の信号が発生するはずである。従って、マスク不能割込が発生する。図55は、マスク不能割込の一例を示すフローチャートである。
【0337】
マスク不能割込処理において、CPU56は、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS481)。バックアップフラグはバックアップRAM領域に形成されている。次いで、パリティデータを作成する(ステップS482〜S491)。
【0338】
そして、RAMアクセスを禁止した後に(ステップS492)、全ての出力ポートをオフ状態にする(ステップS493〜S499)。出力ポートに対するクリア処理が完了すると、CPU56は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0339】
以上の処理によって、所定期間(第1の信号発生から第2の信号発生までの期間)内に賞球カウントスイッチ301Aがオンしたら、総賞球数バッファの値が−1される。バックアップRAMの内容を保存するための処理は、このようなスイッチ検出処理の後で行われるので、払出が完了した賞球について、必ず総賞球数バッファが−1される。従って、遊技球の払出に関して、保存される制御状態に矛盾が生じてしまうことが防止される。なお、既に説明したように、所定期間において、払出検出手段以外の他の検出手段(スイッチ)の検出信号についても入力チェック処理を行ってもよい。
【0340】
また、出力ポートのクリア処理を、図53および図54に示した電圧低下割込処理におけるスイッチ検出処理の前(ステップS458の後)に行ってもよい。
【0341】
なお、この実施の形態では、電圧低下信号(第1の信号)に応じて起動される処理の最初にレジスタの保存処理が行われたが、スイッチ検出処理においてレジスタを使用しない場合には、スイッチ検出処理の実行後に、すなわち、第2の信号に応じて起動される処理において、レジスタ保存処理を行うことができる。その場合には、レジスタ保存処理、バックアップフラグ設定処理、チェックサム算出処理および出力ポートのオフ設定処理を電力供給停止時処理と見なすことができる。さらに、スイッチ検出処理において幾つかのレジスタを使用する場合であっても、使用しないレジスタについては、第2の信号に応じて起動される処理においてレジスタ保存処理を行うことができる。
【0342】
図56は、払出検出手段からの検出信号の入力処理が実行される様子の一例を示すタイミング図である。図56に示すように、電圧低下信号がオン(この例ではハイレベルからローレベルに変化)するあたりで球払出が実行された場合、払出検出手段からの検出信号の入力処理が実行される所定期間(第2の信号が発生する前での期間)内で賞球カウントスイッチ301Aがオンする。従って、電圧低下信号がオンするあたりで実行された球払出についても、総賞球数バッファに反映することができる。
【0343】
払出制御基板37においも、第1の信号である電圧低下信号は、払出制御用CPU371のマスク可能外部割り込み端子に接続される。また、第2の信号である電源断信号は、上述した実施の形態と同様に、マスク不能割込端子に接続される。すなわち、第2の信号にもとづく割込の優先度は、第1の信号にもとづく割込の優先度よりも高い。
【0344】
図57は、第1の信号の発生に応じて生ずる割込にもとづいて起動される割込処理(電圧低下割込処理)の一例を示すフローチャートである。払出制御用CPU371は、まず、AFレジスタを所定のバックアップRAM領域に退避する(ステップS801)。また、割込フラグをパリティフラグにコピーする(ステップS802)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS804〜808)。
【0345】
次いで、払出モータ289に出力される駆動信号をオフ状態にする(ステップS761)。よって、球払出装置97の駆動は停止する。賞球払出装置97Aと貸し球払出装置97Cとが別個に設けられている場合には、双方の駆動を停止する。
【0346】
そして、賞球カウントスイッチオン中であるか否か確認する(ステップS765)。オン中であれば、検出期間用カウンタの値を1減らした後(ステップS766)、検出期間用カウンタの値が0になったか否か確認する(ステップS767)。0になっていれば、入力ポートを介して賞球カウントスイッチ301Aの検出信号を確認し(ステップS768)、オン状態を示していれば、賞球カウントスイッチ301Aが確実にオンしたとして、総合個数記憶の値を1減らす(ステップS769)。
【0347】
ステップS765で、賞球カウントスイッチオン中でないことを確認したら、入力ポートを介して賞球カウントスイッチ301Aの検出信号を確認し(ステップS770)、オン状態を示していれば、賞球カウントスイッチON中フラグをセットするとともに(ステップS771)、検出期間用カウンタに初期値nをセットする(ステップS772)。
【0348】
以上の処理によって、所定期間内に賞球カウントスイッチ301Aがオンしたら、総合個数記憶の値が−1される。バックアップRAMの内容を保存するための処理は、このようなスイッチ検出処理の後で行われるので、払出が完了した賞球について、必ず総合個数記憶が−1される。従って、遊技球の払出に関して、保存される制御状態に矛盾が生じてしまうことが防止される。また、上記の処理では、検出期間用カウンタを用いたタイマ処理が施されている。すなわち、一度賞球カウントスイッチ301Aのオンが検出された後、所定時間(S763からS767に至りS763に戻るループにおける処理時間のn倍)の経過後にもオンが検出されないとスイッチオンと見なされない。従って、誤ってスイッチオン検出がなされてしまうことは防止される。
【0349】
賞球カウントスイッチオン中でなく、かつ、賞球カウントスイッチ301Aのオン状態が検出できない場合には、球貸しカウントスイッチ301Bについてスイッチ検出処理を行う。なお、その処理は、既に説明した実施の形態の場合と同様である(図46参照)。賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bについてスイッチ検出処理を行っている間に、電源電圧が低下していくので、第2の信号が発生するはずである。従って、マスク不能割込が発生する。
【0350】
なお、この実施の形態でも、少なくとも第2の信号が発生するまでの間、賞球カウントスイッチ301A、球貸しカウントスイッチ301Bおよび振分ソレノイド310のスイッチ検出処理を行う部分と払出制御手段を駆動可能な補助駆動電源(この例ではコンデンサ923)が用いられている。
【0351】
また、ここでは、賞球カウントスイッチ301Aまたは球貸しカウントスイッチ301Bの検出信号がオン状態を示したらタイマ(検出期間用カウンタ)をセットし、タイマがタイムアップしたときにも検出信号がオン状態を示していたら、スイッチが確実にオンしたと判定したが、主基板31のCPU56と同様に、2msのタイマ(2ms計測用カウンタ)がタイムアップする毎に検出信号の判定を行うように構成してもよい。
【0352】
また、出力ポートのクリア処理を、図57示す電圧低下割込処理におけるスイッチ検出処理の前(ステップS808の後)に行ってもよい。
【0353】
図58は、マスク不能割込の一例を示すフローチャートである。マスク不能割込処理において、払出制御用CPU371は、まず、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS809)。バックアップフラグはバックアップRAM領域に形成されている。次いで、主基板31のCPU56の処理と同様の処理を行ってパリティデータを作成しバックアップRAM領域に保存する(ステップS810〜S819)。そして、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS820)。以後、内蔵RAMのアクセスができなくなる。
【0354】
さらに、払出制御用CPU371は、クリアデータ(00)を適当なレジスタにセットし(ステップS821)、処理数(この例では「3」)を別のレジスタにセットする(ステップS822)。また、出力ポートCのアドレス(この例では「00H」)をIOポインタに設定する(ステップS823)。IOポインタとして、さらに別のレジスタが用いられる。
【0355】
そして、IOポインタが指すアドレスにクリアデータをセットするとともに(ステップS824)、IOポインタの値を1増やし(ステップS825)、処理数の値を1減算する(ステップS827)。ステップS824〜S826の処理が、処理数の値が0になるまで繰り返される。その結果、全ての出力ポートC〜E(図38参照)にクリアデータが設定される。
【0356】
出力ポートに対するクリア処理が完了すると、払出制御用CPU371は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0357】
この実施の形態では、電源基板910Aに搭載された電源監視手段(この例では電源監視用IC902,932)が電源を監視し、第1の条件(この例では+30V電源電圧が+24V以下になること)が成立したら第1の信号を出力し、第2の条件(この例では+30V電源電圧が+22V以下になること)が成立したら第2の信号を出力する。第1の信号が発生してから第2の信号が発生するまでの期間は、払出手段から払い出された遊技球が払出検出手段に到達するまでの時間以上に設定されている。なお、この実施の形態で用いた+22Vおよび+24Vの条件は一例であって、遊技機の機種に応じて異なる値になることもある。
【0358】
そして、第1の信号に応じた処理において、まず、払出装置の駆動を停止した後、払出検出手段からの検出信号の入力処理が繰り返し実行され、その後、第2の信号に応じて払出制御状態を保存するための処理が行われる。従って、停電発生時に払出途中であった遊技球も第1の信号に応じた処理で検出されるので、第2の信号に応じた処理においてバックアップRAMの保存内容に反映される。よって、遊技機への電力供給停止時に制御状態をバックアップ記憶手段に保存するように構成した場合に、保存される制御状態と実際の制御状態との間に矛盾等を生じさせないようにすることができる。
【0359】
電圧低下信号がオン(この例ではハイレベルからローレベルに変化)するあたりで球払出が実行された場合、払出検出手段からの検出信号の入力処理が実行される所定期間(第2の信号が発生する前での期間)内で賞球カウントスイッチ301Aまたは球貸しカウントスイッチ301Bがオンする。この実施の形態では、第1の信号の発生に応じて起動される電圧低下割込処理(図57参照)でスイッチ入力処理が実行されるので、従って、電圧低下信号がオンするあたりで実行された球払出についても、総合個数記憶または貸し球個数記憶に反映することができる。
【0360】
なお、この実施の形態では、電圧低下信号(第1の信号)に応じて起動される処理の最初にレジスタの保存処理が行われたが、スイッチ検出処理においてレジスタを使用しない場合には、スイッチ検出処理の実行後に、すなわち、第2の信号に応じて起動される処理において、レジスタ保存処理を行うことができる。その場合には、レジスタ保存処理、バックアップフラグ設定処理、チェックサム算出処理および出力ポートのオフ設定処理を電力供給停止時処理と見なすことができる。さらに、スイッチ検出処理において幾つかのレジスタを使用する場合であっても、使用しないレジスタについては、第2の信号に応じて起動される処理においてレジスタ保存処理を行うことができる。
【0361】
また、上記の各実施の形態では、遊技制御手段および払出制御手段が電源断信号に応じてスイッチ検出処理を行う場合を例示したが、表示制御手段、音制御手段およびランプ制御手段についても、制御状態保存処理が行われる場合に、電源断信号に応じて、所定の電気部品の駆動を停止し、その電気部品に関連するスイッチ手段の検出信号を所定期間に渡って確認した後に、制御状態保存処理を行うように構成してもよい。
【0362】
また、上記の各実施の形態では、クリアスイッチ921を押しボタン構造としていたが、他の構造であってもよい。図59は、スイッチ基板190に搭載された他の実施の形態におけるクリアスイッチ921の構成の一例を示す外観構成図である。図59に示すクリアスイッチ921は、「OFF」、「ON」および「クリア」の選択切り換えがされる切換操作スイッチ921aを有する。この例では、クリアスイッチ921の「OFF」が選択されているときは何らの信号も発生せずに動作停止中となっており、「ON」が選択されているときはハイレベルの信号を出力する。クリアスイッチ921は、この例では、遊技機1に対する電源供給のオン/オフ切換のためのスイッチと連動された構成とされている。従って、クリアスイッチ921で「OFF」が選択されているときには遊技機1の電源供給が停止された状態(遊技機の電源がオフの状態)にあり、「ON」および「クリア」が選択されているときには遊技機1が稼動している状態(遊技機の電源がオンの状態)にあるとすればよい。また、クリアスイッチ921の「クリア」が選択されているときに、ローレベルのクリア信号を出力するようにすればよい。
【0363】
また、上記の各実施の形態では、電源監視回路は電源基板910に設けられたが、電源監視回路は主基板31や払出制御基板37などの電気部品制御基板に設けられていてもよい。電源回路が搭載された電気部品制御基板が構成される場合には、電源基板には電源監視回路は搭載されない。
【0364】
上記の各実施の形態のパチンコ遊技機1は、主として、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第2種パチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
【0365】
さらに、遊技媒体が遊技球であるパチンコ遊技機に限られず、スロット機等においても、遊技媒体の払い出しを行う電気部品が備えられている場合には本発明を適用することができる。
【0366】
【発明の効果】
以上のように、本発明によれば、遊技機を、電気部品制御マイクロコンピュータが、遊技機への電力供給が停止するときに制御状態を変動データ記憶手段に保存するための処理である電力供給停止時処理を行い、電力供給停止時処理において、出力ポートに出力された信号をクリアする出力ポートクリア処理を行うとともに、記憶内容保持手段により保持された記憶内容が正常か否かの判定に用いられるチェックデータを作成することを特徴とするので、各電気部品の作動状態が保存された遊技状態と矛盾しないようにすることができ、適正な制御状態を保存することが可能となるとともに、適正な制御状態に復旧させることが可能となるため、保存されていたデータを電源復旧後に確実に活用することが可能となるという効果がある。また、データ破壊などが発生した誤データにもとづく復旧制御がなされてしまうことを防止することができる。
【0367】
電気部品制御マイクロコンピュータが、賞球を払い出す払出手段を制御する払出制御マイクロコンピュータであり、出力ポートクリア処理によって、払出手段の駆動を停止するように構成されていることにより、不要な払い出しがなされてしまうことが効果的に防止される。
【0368】
電気部品制御マイクロコンピュータが、可変入賞球装置を制御する遊技制御マイクロコンピュータであり、出力ポートクリア処理によって可変入賞球装置の駆動が停止するように構成されていることにより、可変入賞球装置が開放したままになるようなことがない。
【0369】
電気部品制御マイクロコンピュータが、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を所定期間実行することにより、検出すべき遊技球を検出することができ、遊技球数に関する適正な制御状態をバックアップ記憶することができる。
【0370】
遊技球検出手段には、賞球の払い出しを行う払出手段によって払い出された賞球を検出するための払出検出手段が含まれることにより、適正な賞球の払出数をバックアップ記憶することが可能となる。
【0371】
電気部品制御マイクロコンピュータが、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を実行する前に、出力ポートクリア処理を行うことにより、電気部品の動作を停止したあとに、遊技球検出手段からの入力処理を実行することができるため、適正な制御状態をバックアップ記憶することが可能となる。
【0372】
電気部品制御イクロコンピュータが、電力供給開始時に、チェックデータにもとづいて、変動データ記憶手段に記憶されている記憶内容が正常である旨の判定をしたときには、遊技状態復旧制御を実行することにより、変動データが適正に保存されていたことを確認したあと、その変動データにもとづいて適正な遊技状態に復旧させるようにすることができる。
【0374】
操作に応じて操作信号を出力する操作手段を備え、電気部品制御マイクロコンピュータが、電力供給開始時にのみ操作信号の状態を確認し、操作信号が入力されていることを確認したときには、変動データ記憶手段の記憶内容を初期化することにより、制御再開の初期段階において、保存された制御状態に復旧させないようにすることが可能となる。従って、遊技店員などの判断により、保存された制御状態に復旧させないようにすることができる。
【0375】
電気部品制御マイクロコンピュータが、電力供給開始時に、操作信号が入力されていないことを条件に、チェックデータにもとづいて、変動データ記憶手段の記憶内容の判定を行うことにより、制御再開の初期段階において、遊技店員などの判断にもとづく所定の操作がされていない場合に、保存された制御状態に復旧するように制御することが可能となる。
【0376】
電気部品制御マイクロコンピュータが、電力供給停止時処理において変動データ記憶手段へのアクセスを禁止する処理を実行することにより、電源電圧が低下していくことに伴って生ずる可能性がある異常動作に起因するバックアップ記憶が格納されている領域(例えば、RAM)の内容破壊等を確実に防止することができ、その後の電源投入時に復旧されるRAMの保存データを確実に保護することができる。
【図面の簡単な説明】
【図1】パチンコ遊技機を正面からみた正面図である。
【図2】パチンコ遊技機の裏面に設けられている各基板を示す説明図である。
【図3】パチンコ遊技機の機構盤を背面からみた背面図である。
【図4】機構板に設置されている中間ベースユニット周りの構成を示す正面図である。
【図5】球払出装置を示す分解斜視図である。
【図6】スイッチ基板が搭載された遊技盤を正面からみた例を示す正面図である。
【図7】クリアスイッチの構成の例を示す回路図である。
【図8】遊技制御基板(主基板)の回路構成を示すブロック図である。
【図9】払出制御基板および球払出装置の構成要素などの賞球に関連する構成要素を示すブロック図である。
【図10】電源基板の一構成例を示すブロック図である。
【図11】主基板におけるCPU周りの一構成例を示すブロック図である。
【図12】出力ポートのビット割り当ての一例を示す説明図である。
【図13】出力ポートのビット割り当ての一例を示す説明図である。
【図14】入力ポートのビット割り当ての一例を示す説明図である。
【図15】主基板におけるCPUが実行するメイン処理の一例を示すフローチャートである。
【図16】バックアップフラグと遊技状態復旧処理を実行するか否かとの関係の一例を示す説明図である。
【図17】パリティチェック処理の例を示すフローチャートである。
【図18】2msタイマ割込処理を示すフローチャートである。
【図19】RAMにおけるスイッチタイマの形成例を示す説明図である。
【図20】スイッチ処理の一例を示すフローチャートである。
【図21】スイッチチェック処理の一例を示すフローチャートである。
【図22】賞球処理の一例を示すフローチャートである。
【図23】賞球処理の一例を示すフローチャートである。
【図24】賞球処理の一例を示すフローチャートである。
【図25】スイッチオンチェック処理を示すフローチャートである。
【図26】賞球個数減算処理の一例を示すフローチャートである。
【図27】入力判定値テーブルの構成例を示す説明図である。
【図28】遊技制御手段におけるマスク不能割込処理を示すフローチャートである。
【図29】遊技制御手段におけるマスク不能割込処理を示すフローチャートである。
【図30】遊技制御手段におけるマスク不能割込処理を示すフローチャートである。
【図31】バックアップパリティデータ作成方法を説明するための説明図である。
【図32】遊技制御手段における電力供給停止時処理の他の例を示すフローチャートである。
【図33】クリアデータテーブルの一構成例を示す説明図である。
【図34】データクリア処理を示すフローチャートである。
【図35】検出信号の入力処理が実行される様子の一例を示すタイミング図である。
【図36】第3種パチンコ遊技機の遊技領域の一例を示す説明図である。
【図37】遊技状態復旧処理の一例を示すフローチャートである。
【図38】電源監視および電源バックアップのための払出制御用CPU周りの一構成例を示すブロック図である。
【図39】出力ポートのビット割り当ての一例を示す説明図である。
【図40】入力ポートのビット割り当ての一例を示す説明図である。
【図41】払出制御基板におけるCPUが実行するメイン処理の一例を示すフローチャートである。
【図42】払出制御手段におけるパリティチェック処理の例を示すフローチャートである。
【図43】2msタイマ割込処理を示すフローチャートである。
【図44】払出制御手段におけるRAMの一構成例を示す説明図である。
【図45】払出制御手段におけるマスク不能割込処理を示すフローチャートである。
【図46】払出制御手段におけるマスク不能割込処理を示すフローチャートである。
【図47】払出制御手段におけるマスク不能割込処理を示すフローチャートである。
【図48】バックアップパリティデータ作成方法を説明するための説明図である。
【図49】払出制御手段におけるマスク不能割込処理の他の例を示すフローチャートである。
【図50】クリアデータテーブルの一構成例を示す説明図である。
【図51】データクリア処理を示すフローチャートである。
【図52】電源基板の他の構成例を示すブロック図である。
【図53】遊技制御手段の電圧低下割込処理を示すフローチャートである。
【図54】遊技制御手段の電圧低下割込処理を示すフローチャートである。
【図55】遊技制御手段のマスク不能割込処理の他の例を示すフローチャートである。
【図56】検出信号の入力処理が実行される様子の一例を示すタイミング図である。
【図57】払出制御手段の電圧低下割込処理を示すフローチャートである。
【図58】払出制御手段のマスク不能割込処理の他の例を示すフローチャートである。
【図59】他の実施の形態におけるクリアスイッチの外観構成の例を示す説明図である。
【符号の説明】
31 遊技制御基板(主基板)
37 払出制御基板
54 ROM
55 RAM
56 CPU
57 I/Oポート
371 払出制御用CPU
921 クリアスイッチ
Claims (10)
- 遊技者が所定の遊技を行い、遊技領域に設けられている入賞領域に遊技球が入賞したことに応じて遊技者に賞球を払い出す遊技機であって、
遊技機に設けられた電気部品を制御するための電気部品制御マイクロコンピュータと、
前記電気部品制御マイクロコンピュータが制御を行う際に発生する変動データを記憶する変動データ記憶手段と、
遊技機への電力供給が停止していても電力供給停止直前の前記変動データ記憶手段の記憶内容を保持させることが可能な記憶内容保持手段と、
前記電気部品制御マイクロコンピュータが信号を出力するための出力ポートと、
遊技球が前記入賞領域に入賞したことを検出し、遊技者に賞球を払い出すために前記電気部品制御マイクロコンピュータに検出信号を出力する遊技球検出手段と、
交流電源からの交流電圧を直流電圧に変換する整流手段と、
前記整流手段によって交流電圧から変換された直流電圧から、該直流電圧よりも低い電圧であって前記遊技球検出手段に供給される直流電圧と、前記遊技球検出手段に供給される直流電圧よりも低く前記電気部品制御マイクロコンピュータの駆動電源電圧である直流電圧とを生成する直流電圧生成手段と、
前記整流手段によって交流電圧から変換された直流電圧を監視し、該直流電圧が前記遊技球検出手段に供給される直流電圧よりも高い電圧である第1の検出電圧に低下したことを検出したときに第1の検出信号を出力する第1の電源監視手段とを備え、
前記電気部品制御マイクロコンピュータは、前記第1の検出信号の入力に応じて、制御状態を前記変動データ記憶手段に保存するための処理である電力供給停止時処理を行い、該電力供給停止時処理において、前記出力ポートに出力された信号をクリアする出力ポートクリア処理を行うとともに、前記記憶内容保持手段により保持された記憶内容が正常か否かの判定に用いられるチェックデータを作成し、
前記第1の電源監視手段が監視する直流電圧と同一の直流電圧を監視し、該直流電圧が、前記第1の検出電圧よりも低く、前記電気部品制御マイクロコンピュータの駆動電源電圧よりも高く設定された第2の検出電圧になったときに第2の検出信号を出力する第2の電源監視手段を備え、
前記第2の電源監視手段は、前記第1の電源監視手段が前記第1の検出信号を出力した後に前記第2の電源監視手段が前記第2の検出信号を出力するまでに前記電気部品制御マイクロコンピュータが前記電力供給停止時処理を完了するように設定された前記第2の検出電圧になったときに前記電気部品制御マイクロコンピュータに前記第2の検出信号を出力し、
前記電気部品制御マイクロコンピュータは、前記第2の検出信号の入力に応じて動作停止状態とされ、
前記電気部品制御マイクロコンピュータは、電力供給開始時に、前記変動データ記憶手段に保存されていた前記チェックデータによって前記変動データ記憶手段に保存されていた記憶内容が正当であるか否かを判定し、前記変動データ記憶手段に保存されている記憶内容が正当でない旨の判定をしたときには、前記変動データ記憶手段の記憶内容を初期化する
ことを特徴とする遊技機。 - 電気部品制御マイクロコンピュータは、賞球を払い出す払出手段を制御する払出制御マイクロコンピュータであり、
前記払出制御マイクロコンピュータは、出力ポートクリア処理によって、前記払出手段が賞球を払い出しているときには払い出しを停止させる
請求項1記載の遊技機。 - 遊技球が発射される遊技領域に設置され、開状態と閉状態とのいずれかに制御可能な可変入賞球装置を備え、
電気部品制御マイクロコンピュータは、前記可変入賞球装置を制御する遊技制御マイクロコンピュータであり、
前記遊技制御マイクロコンピュータは、出力ポートクリア処理によって、前記可変入賞球装置が前記開状態であるときには前記閉状態に制御する
請求項1または請求項2記載の遊技機。 - 電気部品制御マイクロコンピュータは、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を所定期間実行する
請求項1から請求項3のうちのいずれかに記載の遊技機。 - 遊技球検出手段には、賞球の払い出しを行う払出手段によって払い出された賞球を検出するための払出検出手段が含まれる
請求項4記載の遊技機。 - 電気部品制御マイクロコンピュータは、第1の電源監視手段からの第1の検出信号の入力に応じて、遊技球検出手段からの検出信号の入力処理を実行する前に、出力ポートクリア処理を行う
請求項4または請求項5記載の遊技機。 - 電気部品制御マイクロコンピュータは、電力供給開始時に、チェックデータにもとづいて、変動データ記憶手段に記憶されている記憶内容が正常である旨の判定をしたことを条件に、前記変動データ記憶手段に記憶されている記憶内容にもとづいて制御状態を復旧させる遊技状態復旧制御を実行する
請求項1から請求項6のうちのいずれかに記載の遊技機。 - 操作に応じて操作信号を出力する操作手段を備え、
電気部品制御マイクロコンピュータは、電力供給開始時にのみ前記操作信号の状態を確認し、前記操作信号が入力されていることを確認したときには、変動データ記憶手段の記憶内容を初期化する
請求項1から請求項7のうちのいずれかに記載の遊技機。 - 電気部品制御マイクロコンピュータは、電力供給開始時に、操作信号が入力されていないことを条件に、チェックデータにもとづいて、変動データ記憶手段の記憶内容の判定を行う
請求項8記載の遊技機。 - 電気部品制御マイクロコンピュータは、電力供給停止時処理において変動データ記憶手段へのアクセスを禁止する処理を実行する
請求項1から請求項9のうちのいずれかに記載の遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000247125A JP3609327B2 (ja) | 2000-08-16 | 2000-08-16 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000247125A JP3609327B2 (ja) | 2000-08-16 | 2000-08-16 | 遊技機 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002058803A JP2002058803A (ja) | 2002-02-26 |
JP3609327B2 true JP3609327B2 (ja) | 2005-01-12 |
JP2002058803A5 JP2002058803A5 (ja) | 2005-05-26 |
Family
ID=18737290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000247125A Expired - Fee Related JP3609327B2 (ja) | 2000-08-16 | 2000-08-16 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3609327B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3647751B2 (ja) * | 2001-01-12 | 2005-05-18 | 株式会社三共 | 遊技機 |
JP5992498B2 (ja) * | 2014-12-22 | 2016-09-14 | 株式会社ソフイア | 遊技機 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6280716A (ja) * | 1985-10-03 | 1987-04-14 | Olympus Optical Co Ltd | マイクロコンピュータを備えた電子機器 |
JPH0777495B2 (ja) * | 1990-07-06 | 1995-08-16 | 三井物産株式会社 | 放電制御回路を備えた電力供給装置 |
JPH1085421A (ja) * | 1996-09-17 | 1998-04-07 | Sankyo Kk | 遊技機 |
-
2000
- 2000-08-16 JP JP2000247125A patent/JP3609327B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002058803A (ja) | 2002-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3907931B2 (ja) | 遊技機 | |
JP3907926B2 (ja) | 遊技機 | |
JP3647729B2 (ja) | 遊技機 | |
JP3915963B2 (ja) | 遊技機 | |
JP3727522B2 (ja) | 遊技機 | |
JP3907929B2 (ja) | 遊技機 | |
JP3842017B2 (ja) | 遊技機 | |
JP2003325909A (ja) | 遊技機 | |
JP3609327B2 (ja) | 遊技機 | |
JP4413388B2 (ja) | 遊技機 | |
JP2003175165A (ja) | 遊技機 | |
JP3842018B2 (ja) | 遊技機 | |
JP4237235B2 (ja) | 遊技機 | |
JP4237234B2 (ja) | 遊技機 | |
JP3760402B2 (ja) | 遊技機 | |
JP2003038823A (ja) | 遊技機 | |
JP3907927B2 (ja) | 遊技機 | |
JP3907928B2 (ja) | 遊技機 | |
JP2002017973A (ja) | 遊技機 | |
JP2002017972A (ja) | 遊技機 | |
JP2003225433A (ja) | 遊技機 | |
JP2002052154A (ja) | 遊技機 | |
JP2002052153A (ja) | 遊技機 | |
JP4763083B2 (ja) | 遊技機 | |
JP4242412B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040721 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20040721 |
|
TRDD | Decision of grant or rejection written | ||
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20040917 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041005 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041013 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071022 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101022 Year of fee payment: 6 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101022 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101022 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101022 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111022 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111022 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121022 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121022 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131022 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |