JP3727522B2 - Game machine - Google Patents
Game machine Download PDFInfo
- Publication number
- JP3727522B2 JP3727522B2 JP2000251718A JP2000251718A JP3727522B2 JP 3727522 B2 JP3727522 B2 JP 3727522B2 JP 2000251718 A JP2000251718 A JP 2000251718A JP 2000251718 A JP2000251718 A JP 2000251718A JP 3727522 B2 JP3727522 B2 JP 3727522B2
- Authority
- JP
- Japan
- Prior art keywords
- ball
- switch
- game
- data
- payout
- 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)
Description
【0001】
【発明の属する技術分野】
本発明は、遊技者の操作に応じて遊技が行われるパチンコ遊技機、コイン遊技機、スロット機等の遊技機に関し、特に、遊技盤における遊技領域において遊技者の操作に応じて遊技が行われる遊技機に関する。
【0002】
【従来の技術】
遊技機の一例として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示部が設けられ、可変表示部の表示結果があらかじめ定められた特定の表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
【0003】
遊技価値とは、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることや、景品遊技媒体払出の条件が成立しやすくなる状態になることである。
【0004】
特別図柄を表示する可変表示部を備えた第1種パチンコ遊技機では、特別図柄を表示する可変表示部の表示結果があらかじめ定められた特定の表示態様の組合せとなることを、通常、「大当り」という。大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個(例えば10個)の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数(例えば16ラウンド)に固定されている。なお、各開放について開放時間(例えば29.5秒)が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件(例えば、大入賞口内に設けられているVゾーンへの入賞)が成立していない場合には、大当り遊技状態は終了する。
【0005】
また、「大当り」の組合せ以外の表示態様の組合せのうち、複数の可変表示部の表示結果のうちの一部が未だに導出表示されていない段階において、既に確定的な、または一時的な表示結果が導出表示されている可変表示部の表示態様が特定の表示態様の組合せとなる表示条件を満たしている状態を「リーチ」という。そして、可変表示部に可変表示される識別情報の表示結果が「大当り」となる条件を満たさない場合には「はずれ」となり、可変表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
【0006】
そして、遊技球が遊技盤に設けられている入賞口に遊技球が入賞すると、あらかじめ決められている個数の賞球払出が行われる。遊技の進行は主基板に搭載された遊技制御手段によって制御されるので、入賞にもとづく賞球個数は、遊技制御手段によって決定され、払出制御基板に送信される。なお、以下、遊技制御手段およびその他の制御手段は、遊技機に設けられている各種電気部品を制御するので、それらを電気部品制御手段と呼ぶことがある。
【0007】
【発明が解決しようとする課題】
以上のように、遊技機には、遊技制御手段を初めとする種々の電気部品制御手段が搭載されている。一般に、各電気部品制御手段はマイクロコンピュータを含んだ構成とされる。そのような電気部品制御手段は、一般に、電源電圧が立ち上がると初期化処理を行い初期状態から制御を開始する。すると、停電等の不測の電源断生じ、その後、電源復旧すると初期状態に戻ってしまうので、遊技者が得た遊技価値等が消滅してしまう等の問題が生ずることがある。そのような問題が生じないようにするには、電源電圧値の低下に伴なって発生される所定の信号に応じて遊技制御を中断し、そのときの遊技状態を、遊技機に対する電力供給停止中でも電源バックアップされている記憶手段(バックアップ記憶手段)に保存し、電力供給が完全に停止するのを待つように制御すればよい。そのような遊技機は、記憶手段に遊技状態が保存されている状態で電力供給が再開されたら、保存されている遊技状態にもとづいて遊技を再開するので、遊技者に不利益が与えられることが防止される。
【0008】
しかし、保存されている遊技状態にもとづいて遊技の再開を行うような制御を行うと、遊技機が設置されている遊技店の利便性が損なわれる場合がある。例えば、停電が生じて遊技が続行できなくなった場合に遊技の再開を待たずに遊技の続行をあきらめた遊技者があったときには、他の遊技者が遊技途中の状態から遊技を開始できることになるので、遊技状態を停電前の状態に復旧させることは好ましくない。
【0009】
また、電力の供給が停止されるときに必要なデータを保存する際に保存の仕方および復元の仕方が不適切であると、復元されたデータが電力供給停止時直前のデータと一致しない可能性がある。そのような場合には、やはり遊技者に不測の不利益を与えかねない。
【0010】
そこで、本発明は、遊技機に停電等による電源断状態が発生しても、遊技状態を保存することができるとともに、遊技店での遊技機運用上の利便性を向上させることもでき、さらに保存されていたデータを電源復帰後に確実に活用することができる遊技機を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明による遊技機は、遊技者が所定の遊技を行うことが可能な遊技機であって、遊技媒体を検出するための遊技媒体検出手段と、遊技機に設けられた電気部品を制御するための処理を実行する電気部品制御マイクロコンピュータと、電気部品制御マイクロコンピュータが制御を行う際に発生する変動データを記憶する変動データ記憶手段(例えば、RAM)と、操作に応じて操作信号を出力する操作手段(例えば、クリアスイッチ921)と、遊技機への電力供給が停止していても電力供給停止直前の変動データ記憶手段の記憶内容(電力供給が停止されたことによって遊技が中断された場合に記憶される、電力供給停止直前の最終的な制御状態の内容を意味する)を保持させることが可能な記憶内容保持手段と、遊技機で使用される所定の電源を監視して該電源の電圧が遊技媒体検出手段に供給される電圧よりも高い電圧である所定電圧に低下したことを検出したときに第1の検出信号を出力する第1の電源監視手段と、第1の電源監視手段が監視する電源と同一電源を監視し、該電源の電圧が、第1の電源監視手段が第1の検出信号を出力するときの所定電圧よりも低く、電気部品制御マイクロコンピュータの駆動電源電圧よりも高く設定された検出電圧になったときに第2の検出信号を出力する第2の電源監視手段とを備え、電気部品制御マイクロコンピュータは、第1の検出信号の入力に応じて、変動データ記憶手段に記憶内容が保存されていることを示す情報を変動データ記憶手段に保存するとともに、変動データ記憶手段の記憶内容が正常か否かの判定に用いるチェックデータを作成して変動データ記憶手段に保存する電力供給停止時処理を実行する電力供給停止時処理実行手段と、遊技機への電力供給が開始されたときにのみ、操作手段からの操作信号が入力されているか否かを判定し、操作手段からの操作信号が入力されていると判定したときには、変動データ記憶手段の記憶内容を初期化する初期化処理を実行する初期化手段と、操作手段からの操作信号が入力されていると判定されなかったことを条件に、変動データ記憶手段に情報が保存されているか否かを確認し、変動データ記憶手段に情報が保存されていることを確認したことを条件に、記憶内容保持手段により保持された変動データ記憶手段におけるチェックデータにもとづいて記憶内容が正常か否かの判定を行い、正常と判定したときに制御状態を電力供給停止直前の状態に復帰させる復帰手段とを含み、電気部品制御マイクロコンピュータは、第2の検出信号の入力に応じて動作停止状態とされることを特徴とするものである。
【0015】
電気部品制御マイクロコンピュータが所定の信号を取得するための入力ポートが設けられ、操作手段からの操作信号(例えば、クリアスイッチ信号)が入力ポートに入力されることが好ましい。
【0018】
電力供給停止時処理実行手段は、電力供給停止時処理において変動データ記憶手段へのアクセスを禁止する処理を実行することが好ましい。
【0019】
電気部品制御マイクロコンピュータは、遊技媒体の払出を制御する払出制御マイクロコンピュータであり、変動データ記憶手段が記憶する変動データは、遊技媒体の払出数のうち払出しが完了していない未払出数を特定可能なデータを含み、操作手段からの操作信号が、払出制御マイクロコンピュータに入力されるようにしてもよい。
【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に出力する。コネクタ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は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図12に示すように、入力ポート0のビット0〜7には、それぞれ、入賞口スイッチ24a、入賞口スイッチ24b、入賞口スイッチ19a、入賞口スイッチ19b、始動口スイッチ17、カウントスイッチ23、V入賞スイッチ(特定領域スイッチ)22、ゲートスイッチ12の検出信号が入力される。また、入力ポート1のビット0〜4には、それぞれ、賞球カウントスイッチ301A、満タンスイッチ48、球切れスイッチ187の検出信号、カウントスイッチ短絡信号、クリアスイッチ921の出力信号が入力される。
【0095】
次に遊技機の動作について説明する。
図13は、主基板31におけるCPU56が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されると、メイン処理において、CPU56は、まず、必要な初期設定を行う。
【0096】
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。
【0097】
この実施の形態で用いられているCPU56には、マスク可能な割込(INT)のモードとして以下の3種類のモードが用意されている。なお、マスク可能な割込が発生すると、CPU56は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
【0098】
割込モード0:割込要求を行った内蔵デバイスがRST命令(1バイト)またはCALL命令(3バイト)をCPUの内部データバス上に送出する。よって、CPU56は、RST命令に対応したアドレスまたはCALL命令で指定されるアドレスの命令を実行する。リセット時に、CPU56は自動的に割込モード0になる。よって、割込モード1または割込モード2に設定したい場合には、初期設定処理において、割込モード1または割込モード2に設定するための処理を行う必要がある。
【0099】
割込モード1:割込が受け付けられると、常に0038(h)番地に飛ぶモードである。
【0100】
割込モード2:CPU56の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた2バイトで示されるアドレスである。従って、任意の(飛び飛びではあるが)偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
【0101】
よって、割込モード2に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード1とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップS2において、CPU56は割込モード2に設定される。
【0102】
次いで、CPU56は、入力ポート578を介して入力されるクリアスイッチ921の出力信号の状態を、本例では1回だけ確認する(ステップS7)。クリアスイッチ921がオンである場合(押下されている場合)には、ローレベルのクリアスイッチ信号が出力されている。従って、CPU56は、クリアスイッチ921がオンとされていれば、通常の初期化処理を実行する(ステップS11〜ステップS15)。クリアスイッチ921のオン判定は、初期設定を行う前に実行することが好ましい。遊技機の起動に先立ってバックアップ記憶(最終記憶内容)の消去の意思を確認したのちに制御を再開することができるからである。この様な場合、初期設定を行う前に、タイマ処理やスイッチ入力判定(複数回)を行うと、バックアップ内容を壊す可能性がある。また、遊技中のパチンコ遊技機の裏側には、遊技球が流動しておりノイズが発生しやすく、このため、通常スイッチ検出は複数回入力判定を行うが、クリアスイッチ921のオン判定は、遊技開始前に行われるため、ノイズの影響を受けにくい。従って、クリアスイッチ921入力判定を1回のみとしても、ノイズの影響は受け難く、また、プログラム開発効率も上がる。なお、クリアスイッチ921が確実に操作されたか否かを重視する場合には、CPU56がクリアスイッチ921の出力信号の状態を例えば3秒間確認する構成としてもよい。
【0103】
クリアスイッチ921がオンの状態でなければ(押下されていない状態)、CPU56は、電源断時にバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の停電発生NMI処理)が行われたか否か確認する(ステップS8)。この実施の形態では、不測の電源断が生じた場合には、バックアップRAM領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、CPU56は初期化処理を実行する。
【0104】
この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電源断時にバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、図14に示すように、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
【0105】
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。
【0106】
図15は、ステップS9のパリティチェック処理の一例を示すフローチャートである。パリティチェック処理では、CPU56は、まず、RAM55におけるバックアップパリティデータ領域に設定されているデータが「00」であるか否か確認する(ステップS9a)。バックアップパリティデータ領域については後で詳しく説明する。バックアップパリティデータ領域に設定されているデータが「00」でなければ、パリティ診断(チェックサム確認)を行う(ステップS9b)。そして、チェックサム確認の結果が正当であれば(ステップS9c)、CPU56は、後述する停電復旧処理を実行する(ステップS10)。また、チェックサム確認の結果が正当でなければ、または、バックアップパリティデータ領域に設定されているデータが「00」であった場合には、通常の初期化処理を実行する(ステップS11〜S15)。
【0107】
不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0108】
チェック結果が正常であれば(ステップS9)、CPU56は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電源断時の状態に戻すための遊技状態復旧処理を行う(ステップS10)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。
【0109】
なお、この実施の形態では、ステップS7でクリアスイッチ921がオンでない場合に、バックアップデータの有無が確認されていたが、逆に、バックアップデータの有無を確認した後、バックアップデータが存在する場合(さらに、バックアップ領域のチェックを行い、バックアップ領域のチェック結果が正常であったことが確認された場合であってもよい)にクリアスイッチ921の操作状態を確認するようにしてもよい。
【0110】
また、この実施の形態では、ステップS8でバックアップデータの有無が確認された後、バックアップデータが存在する場合にステップS9でバックアップ領域のチェックが行われたが、逆に、バックアップ領域のチェック結果が正常であったことが確認された後、バックアップデータの有無の確認を行うようにしてもよい。また、バックアップデータの有無の確認、またはバックアップ領域のチェックの何れか一方の確認を行うことによって、停電復旧処理を実行するか否かを判定してもよい。
【0111】
また、例えば停電復旧処理を実行するか否か判断する場合のパリティチェック(ステップS9)の際に、すなわち、遊技状態を復旧するか否か判断する際に、保存されていたRAMデータにおける特別プロセスフラグ等や始動入賞記憶数データによって、遊技機が遊技待機状態(図柄変動中でなく、大当り遊技中でなく、確変中でなく、また、始動入賞記憶がない状態)であることが確認されたら、遊技状態復旧処理を行わずに初期化処理を実行するようにしてもよい。
【0112】
以上のように、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としたので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。従って、電源断が発生しても遊技者に不利益がもたらされることを防止することができるとともに、遊技店での遊技機運用上の利便性を向上させることもできる遊技機が提供される。
【0113】
また、上述したように、この実施の形態では、電力供給開始時に、電力供給停止時にバックアップRAM領域に記憶されたチェックデータ(チェックサムデータ)にもとづいて、初期化処理を行うか遊技状態復旧処理を行うかを決定するように構成したので、停電等の不測の電源断が発生したときに必要なデータを確実に保存することができ、さらに、保存されていたデータを電源復帰後に確実に活用することができる。
【0114】
なお、電源投入時に、変動データ記憶手段にバックアップデータが記憶されていない場合に実行される初期化処理と、変動データ記憶手段にバックアップデータが記憶されていてもクリアスイッチ921がオフ状態である場合に実行される初期化処理とは、プログラム上兼用されている。従って、遊技店での運用上の利便性を向上させる制御を付加しても、プログラム容量はさほど増えない。
【0115】
また、上述した実施の形態では、チェックサム確認の結果が正当でなかった場合には通常の初期化処理を実行するようにしていたが、チェックサム確認の結果が正当でなかった場合であっても初期化処理を行わないようにしてもよい。
【0116】
例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容を修復したあと、遊技状態復旧処理を行うようにすればよい。この場合、データの修復は、例えば、誤り訂正符号(例えば、ランダム誤り対策に用いられるハミング符号、バースト誤り対策に用いられるFire符号など、誤り特性に合わせて選択するようにすればよい)を用いて、変化したビットを検出して訂正するようにすればよい。
【0117】
また、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容に異常が発生していることを報知するようにしてもよい。この場合、異常の報知は、所定の制御によって、例えば、異常が発生したことを可変表示装置9に表示し、スピーカ27から異常が発生したことを示す音声を出力し、ランプ制御基板35が制御する異常を報知するためのランプを点灯し、あるいはエラー表示用LED374に異常を示す所定の表示を行うようにすればよい。また、バックアップRAMの記憶内容に異常が発生していることを示す所定の信号を、情報出力回路64などを介して管理コンピュータに出力するようにしてもよい。
【0118】
さらに、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、クリアスイッチ921の操作によって初期化処理の実行要求を促すための報知を行うようにしてもよい。この場合の報知も、上述したように、所定の制御によって表示や音などによって行うようにすればよい。
【0119】
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS11)。また、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、払出コマンド格納ポインタなど)に初期値を設定する初期値設定処理も行われる。さらに、サブ基板(ランプ制御基板35、払出制御基板37、音声制御基板70、図柄制御基板80)を初期化するための処理を実行する(ステップS13)。サブ基板を初期化する処理とは、例えば初期設定コマンドを送出する処理である。
【0120】
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS14)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS1において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS15)。
【0121】
この実施の形態では、CPU56の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、図16に示すように、CPU56は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする(ステップS12)。
【0122】
初期化処理の実行(ステップS11〜S15)が完了すると、メイン処理で、タイマ割込が発生したか否かの監視(ステップS17)の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理(ステップS16)も実行される。
【0123】
CPU56は、ステップS17において、タイマ割込が発生したことを認識すると、ステップS21〜S31の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートセンサ12、始動口センサ17、カウントセンサ23および入賞口スイッチ19a,19b,24a,24b等のスイッチの状態を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
【0124】
次いで、パチンコ遊技機1の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる(エラー処理:ステップS22)。
【0125】
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う(ステップS23)。CPU56は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う(ステップS24)。
【0126】
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、7セグメントLEDによる可変表示器10を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【0127】
次いで、CPU56は、特別図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(普通図柄コマンド制御処理:ステップS28)。
【0128】
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
【0129】
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動指令を行う(ステップS30)。ソレノイド回路59は、駆動指令に応じてソレノイド16,21を駆動し、可変入賞球装置15または開閉板20を開状態または閉状態とする。
【0130】
そして、CPU56は、各入賞口への入賞を検出するためのスイッチ17,23,19a,19b,24a,24bの検出出力にもとづく賞球数の設定などを行う賞球処理を実行する(ステップS31)。具体的には、入賞検出に応じて払出制御基板37に払出制御コマンドを出力する。払出制御基板37に搭載されている払出制御用CPU371は、払出制御コマンドに応じて球払出装置97を駆動する。
【0131】
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるが、タイマ割込処理で遊技制御処理を実行してもよい。
【0132】
また、メイン処理には遊技制御処理に移行すべきか否かを判定する処理が含まれ、CPU56の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理で遊技制御処理に移行すべきか否かを判定するためのフラグがセット等がなされるので、遊技制御処理の全てが確実に実行される。つまり、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することは保証されている。
【0133】
以上説明したように、この実施の形態では、CTCやPIOを内蔵するCPU56に対して、初期設定処理で割込モード2が設定される。従って、内蔵CTCを用いた定期的なタイマ割込処理を容易に実現できる。また、タイマ割込処理をプログラム上の任意の位置に設置できる。また、内蔵PIOを用いたスイッチ検出処理等を容易に割込処理で実現できる。その結果、プログラム構成が簡略化され、プログラム開発工数が低減する等の効果を得ることができる。
【0134】
次に、メイン処理におけるスイッチ処理(ステップS21)の具体例を説明する。この実施の形態では、検出信号のオン状態が所定時間継続すると、確かにスイッチがオンしたと判定されスイッチオンに対応した処理が開始される。所定時間を計測するために、スイッチタイマが用いられる。スイッチタイマは、バックアップRAM領域に形成された1バイトのカウンタであり、検出信号がオン状態を示している場合に2ms毎に+1される。図17に示すように、スイッチタイマは検出信号の数Nだけ設けられている。この実施の形態ではN=12である。なお、N=12である(13でない)のは、クリアスイッチ921の出力信号に対応したスイッチタイマが設けられていない(クリア信号の検出の有無の判断はスイッチ処理で実行されないため不必要)からである。また、RAMにおいて、各スイッチタイマのアドレスは、入力ポートのビット配列順(図12に示された上から下への順)と同じ順序で並んでいる。
【0135】
図18は、遊技制御処理におけるステップS21のスイッチ処理の処理例を示すフローチャートである。なお、スイッチ処理は、図13に示すように遊技制御処理において最初に実行される。スイッチ処理において、CPU56は、まず、入力ポート0に入力されているデータを入力する(ステップS71)。次いで、処理数として「8」を設定し(ステップS72)、入賞口スイッチ24aのためのスイッチタイマのアドレスをポインタにセットする(ステップS73)。そして、スイッチチェック処理サブルーチンをコールする(ステップS74)。
【0136】
図19は、スイッチチェック処理サブルーチンを示すフローチャートである。スイッチチェック処理サブルーチンにおいて、CPU56は、ポート入力データ、この場合には入力ポート0からの入力データを「比較値」として設定する(ステップS81)。また、クリアデータ(00)をセットする(ステップS82)。そして、ポインタ(スイッチタイマのアドレスが設定されている)が指すスイッチタイマをロードするとともに(ステップS83)、比較値を右(上位ビットから下位ビットへの方向)にシフトする(ステップS84)。比較値には入力ポート0のデータ設定されている。そして、この場合には、入賞口スイッチ24aの検出信号がキャリーフラグに押し出される。
【0137】
キャリーフラグの値が「1」であれば(ステップS85)、すなわち入賞口スイッチ24aの検出信号がオン状態であれば、スイッチタイマの値を1加算する(ステップS87)。加算後の値が0でなければ加算値をスイッチタイマに戻す(ステップS88,S89)。加算後の値が0になった場合には加算値をスイッチタイマに戻さない。すなわち、スイッチタイマの値が既に最大値(255)に達している場合には、それよりも値を増やさない。
【0138】
キャリーフラグの値が「0」であれば、すなわち入賞口スイッチ24aの検出信号がオフ状態であれば、スイッチタイマにクリアデータをセットする(ステップS86)。すなわち、スイッチがオフ状態であれば、スイッチタイマの値が0に戻る。
【0139】
その後、CPU56は、ポインタ(スイッチタイマのアドレス)を1加算するとともに(ステップS90)、処理数を1減算する(ステップS91)。処理数が0になっていなければステップS82に戻る。そして、ステップS82〜S92の処理が繰り返される。
【0140】
ステップS82〜S92の処理は、処理数分すなわち8回繰り返され、その間に、入力ポート0の8ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が1増やされる。
【0141】
CPU56は、スイッチ処理のステップS75において、入力ポート1に入力されているデータを入力する。次いで、処理数として「4」を設定し(ステップS76)、賞球カウントスイッチ301Aのためのスイッチタイマのアドレスをポインタにセットする(ステップS77)。そして、スイッチチェック処理サブルーチンをコールする(ステップS78)。
【0142】
スイッチチェック処理サブルーチンでは、上述した処理が実行されるので、ステップS82〜S92の処理が、処理数分すなわち4回繰り返され、その間に、入力ポート1の4ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が1増やされる。
【0143】
なお、この実施の形態では、遊技制御処理が2ms毎に起動されるので、スイッチ処理も2msに1回実行される。従って、スイッチタイマは、2ms毎に+1される。
【0144】
図20〜図22は、遊技制御処理におけるステップS31の賞球処理の一例を示すフローチャートである。この実施の形態では、賞球処理では、入賞口スイッチ19a,19b,24a,24b、カウントスイッチ23および始動口スイッチ17が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板37に送出されるように制御し、また、満タンスイッチ48および球切れスイッチ187が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板37に送出されるように制御する等の処理が行われる。
【0145】
賞球処理において、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS121)、スイッチタイマのアドレスのオフセットとして「0」を設定する(ステップS122)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「0」は入賞口スイッチ24aに対応したスイッチタイマが指定されることを意味する。また、繰り返し数として「4」をセットする(ステップS123)。そして、スイッチオンチェックルーチンがコールされる(ステップS124)。
【0146】
入力判定値テーブルとは、各スイッチについて、連続何回のオンが検出されたら確かにスイッチがオンしたと判定するための判定値が設定されているROM領域である。入力判定値テーブルの構成例は図25に示されている。図25に示すように、入力判定値テーブルには、上から順に、すなわちアドレス値が小さい領域から順に、「2」、「50」、「250」、「30」、「250」、「1」の判定値が設定されている。また、スイッチオンチェックルーチンでは、入力判定値テーブルの先頭アドレスとオフセット値とで決まるアドレスに設定されている判定値と、スイッチタイマの先頭アドレスとオフセット値とで決まるスイッチタイマの値とが比較され、一致した場合には、例えばスイッチオンフラグがセットされる。
【0147】
スイッチオンチェックルーチンの一例が図23に示されている。スイッチオンチェックルーチンにおいて、CPU56は、入力判定値テーブル(図25参照)の先頭アドレスを設定する(ステップS101)。そして、そのアドレスにオフセットを加算し(ステップS102)、加算後のアドレスからスイッチオン判定値をロードする(ステップS103)。
【0148】
次いで、CPU56は、スイッチタイマの先頭アドレスを設定し(ステップS104)、そのアドレスにオフセットを加算し(ステップS105)、加算後のアドレスからスイッチタイマの値をロードする(ステップS106)。各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチに対応したスイッチタイマの値がロードされる。
【0149】
そして、CPU56は、ロードしたスイッチタイマの値とスイッチオン判定値とを比較する(ステップS107)。それらが一致すれば、スイッチオンフラグをセットする(ステップ108)。
【0150】
この場合には、スイッチオンチェックルーチンにおいて、入賞口スイッチ24aに対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされる(ステップS125)。スイッチオンフラグがセットされたら、10個カウンタが1加算される(ステップS126)。スイッチチェックオンルーチンは、スイッチタイマのアドレスのオフセットが更新されつつ(ステップS129)、最初に設定された繰り返し数分だけ実行されるので(ステップS127,S128)、結局、入賞口スイッチ19a,19b,24a,24bについて、対応するスイッチタイマの値がスイッチオン判定値「2」と比較されることになる。なお、10個カウンタとは、景品としての10個の遊技球払出の回数を示すカウンタである。
【0151】
次に、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS130)、スイッチタイマのアドレスのオフセットとして「4」を設定する(ステップS131)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「4」は始動口スイッチ17に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS132)。
【0152】
スイッチオンチェックルーチンにおいて、始動口スイッチ17に対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされるので(ステップS133)、6個カウンタが1加算される(ステップS134)。なお、6個カウンタとは、景品としての6個の遊技球払出の回数を示すカウンタである。
【0153】
次いで、CPU56は、入力判定値テーブルのオフセットとして「0」を設定し(ステップS135)、スイッチタイマのアドレスのオフセットとして「5」を設定する(ステップS136)。入力判定値テーブルのオフセット「0」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「5」はカウントスイッチ23に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS137)。
【0154】
スイッチオンチェックルーチンにおいて、カウントスイッチ23に対応するスイッチタイマの値がスイッチオン判定値「2」に一致していればスイッチオンフラグがセットされるので(ステップS138)、15個カウンタが1加算される(ステップS134)。なお、15個カウンタとは、景品としての15個の遊技球払出の回数を示すカウンタである。
【0155】
さらに、CPU56は、入力判定値テーブルのオフセットとして「1」を設定し(ステップS150)、スイッチタイマのアドレスのオフセットとして「9」を設定する(ステップS151)。入力判定値テーブルのオフセット「1」は、入力判定値テーブルの2番目のデータ「50」を使用することを意味する。また、各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「9」は満タンスイッチ48に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS152)。
【0156】
スイッチオンチェックルーチンにおいて、満タンスイッチ48に対応するスイッチタイマの値が満タンスイッチオン判定値「50」に一致していればスイッチオンフラグがセットされるので(ステップS153)、満タンフラグがセットされる(ステップS154)。なお、図21には明示されていないが、満タンスイッチ48に対応したスイッチタイマの値が0になると、満タンフラグはリセットされる。
【0157】
また、CPU56は、入力判定値テーブルのオフセットとして「2」を設定し(ステップS156)、スイッチタイマのアドレスのオフセットとして「0A(H)」を設定する(ステップS157)。入力判定値テーブルのオフセット「2」は、入力判定値テーブルの3番目のデータ「250」を使用することを意味する。また、各スイッチタイマは、図12に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「0A(H)」は球切れスイッチ187に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる(ステップS158)。
【0158】
スイッチオンチェックルーチンにおいて、球切れスイッチ187に対応するスイッチタイマの値が球切れスイッチオン判定値「250」に一致していればスイッチオンフラグがセットされるので(ステップS159)、球切れフラグがセットされる(ステップS160)。なお、図21には明示されていないが、球切れスイッチ187に対応したスイッチオフタイマが用意され、その値が50になると、球切れフラグはリセットされる。
【0159】
そして、CPU56は、払出停止状態であるか否か確認する(ステップS201)。払出停止状態は、払出制御基板37に対して払出停止状態指定のコマンドを送出した後の状態である。払出停止状態でなければ、上述した球切れ状態フラグまたは満タンフラグがオンになったか否かを確認する(ステップS202)。
【0160】
いずれかがオン状態に変化したときには、払出停止状態指定に関するコマンド送信制御処理を行う(ステップS203)。コマンド送信制御処理では、払出制御コマンド用のコマンド送信テーブルに所定のデータが設定された後、払出制御コマンドの送出処理が実行される。なお、ステップS202において、いずれか一方のフラグが既にオン状態であったときに他方のフラグがオン状態になったときには、コマンド送信制御処理(ステップS203)は行われない。
【0161】
また、払出停止状態であれば、球切れ状態フラグおよび満タンフラグがともにオフ状態になったか否かを確認する(ステップS204)。ともにオフ状態となったときには、払出停止解除指定に関するコマンド送信制御処理を行う(ステップS205)。
【0162】
次いで、CPU56は、入賞に応じた賞球個数に関する払出制御コマンドをコマンド送信テーブルに設定し、設定内容に応じた払出制御コマンドを送出する制御を行う。まず、15個カウンタの値をチェックする(ステップS221)。上述したように、15個カウンタは、遊技球が大入賞口に入賞してカウントスイッチ23がオンするとカウントアップされる。15個カウンタの値が0でない場合には、15個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS222)。コマンド送信制御処理では、払出制御コマンド用のコマンド送信テーブルに所定のデータが設定された後、払出制御コマンドの送出処理が実行される。また、15個カウンタの値を−1する(ステップS223)。さらに、総賞球数格納バッファの格納値に15を加算する(ステップS224)。
【0163】
総賞球数格納バッファは、払出制御手段に対して指示した賞球個数の累積値(ただし、払い出しがなされると減算される)が格納されるバッファであり、バックアップRAMに形成されている。
【0164】
15個カウンタの値が0であれば、10個カウンタの値をチェックする(ステップS225)。上述したように、10個カウンタは、遊技球が入賞口に入賞して入賞口スイッチ19a,19b,24a,24bがオンするとカウントアップされる。10個カウンタの値が0でない場合には、10個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS226)。また、10個カウンタの値を−1する(ステップS227)。さらに、総賞球数格納バッファの格納値に10を加算する(ステップS228)。
【0165】
10個カウンタの値が0であれば、6個カウンタの値をチェックする(ステップS231)。上述したように、6個カウンタは、遊技球が始動入賞口に入賞して始動口スイッチ17がオンするとカウントアップされる。6個カウンタの値が0でない場合には、6個の賞球個数指示に関するコマンド送信制御処理を行う(ステップS232)。また、6個カウンタの値を−1する(ステップS233)。さらに、総賞球数格納バッファの格納値に6を加算する(ステップS234)。
【0166】
以上にようにして、遊技制御手段から払出制御基板37に賞球個数を指示する払出制御コマンドを出力しようとするときに、コマンド送信テーブルの設定が行われた後、コマンド送信テーブルに設定された払出制御コマンドが払出制御基板37に送出される。そして、賞球個数を指示する払出制御コマンドの送出が行われたときには、賞球払出中フラグをオンする(ステップS235)。また、賞球払出中フラグをオンしているときには(ステップS236)、球払出装置97から実際に払い出された賞球数を監視して総賞球数格納バッファの格納値を減算する賞球個数減算処理が行われる(ステップS237)。なお、賞球払出中フラグがオンからオフに変化したときには、ランプ制御基板35に対して、賞球ランプ51の点灯を指示するランプ制御コマンドが送出される。
【0167】
図24は、賞球個数減算処理の一例を示すフローチャートである。賞球個数減算処理において、CPU56は、まず、総賞球数格納バッファの格納値をロードする(ステップS241)。そして、格納値が0であるか否か確認する(ステップS242)。0であれば処理を終了する。
【0168】
0でなければ、賞球カウントスイッチ用のスイッチタイマをロードし(ステップS243)、ロード値とオン判定値(この場合は「2」)とを比較する(ステップS244)。一致したら(ステップS245)、賞球カウントスイッチ301Aが確かにオンしたとして、すなわち、確かに1個の遊技球が球払出装置97から払い出されたとして、総賞球数格納バッファの格納値を1減算する(ステップS246)。
【0169】
また、賞球情報カウンタの値を+1する(ステップS247)。そして、賞球情報カウンタの値が10以上であれば(ステップS248)、賞球情報出力カウンタの値を+1するとともに(ステップS249)、賞球情報カウンタの値を−10する(ステップS250)。なお、賞球情報出力カウンタの値は、図13に示されたメイン処理における情報出力処理(ステップS29)で参照され、その値が1以上であれば、賞球信号として1パルスが出力される。よって、この実施の形態では、10個の遊技球が賞球として払い出される度に、1つの賞球信号が遊技機外部に出力される。
【0170】
そして、総賞球数格納バッファの格納値が0になったら(ステップS251)、賞球払出中フラグをクリアし(ステップS252)、賞球残数がないことを報知するために、ランプ制御コマンド用のコマンド送信テーブルに賞球ランプ51の消灯を示すコマンドデータを設定した後(ステップS253)、ランプ制御コマンドの送出処理を実行する(ステップS254)。
【0171】
次に、遊技制御手段から各電気部品制御手段に対する制御コマンドの送出方式について説明しておく。図26は、主基板31から他の電気部品制御基板に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」とされ、EXTデータの先頭ビット(ビット7)は必ず「0」とされる。なお、図26に示されたコマンド形態は一例であって他のコマンド形態を用いてもよい。
【0172】
図27は、遊技制御基板から他の各電気部品制御基板に対する制御コマンドを構成する8ビットの制御信号とINT信号(ストローブ信号)との関係を示すタイミング図である。図27に示すように、MODEまたはEXTのデータが出力ポートに出力されてから、所定期間が経過すると、CPU56は、データ出力を示す信号であるINT信号をオン状態にする。また、そこから所定期間が経過するとINT信号をオフ状態にする。
【0173】
図28は、払出制御コマンドの内容の一例を示す説明図である。図28に示された例において、MODE=FF(H),EXT=00(H)のコマンドFF00(H)は、払出可能状態を指定する払出制御コマンドである。MODE=FF(H),EXT=01(H)のコマンドFF01(H)は、払出停止状態を指定する払出制御コマンドである。また、MODE=F0(H)のコマンドF0XX(H)は、賞球個数を指定する払出制御コマンドである。EXTである「XX」が払出個数を示す。
【0174】
払出制御手段は、主基板31の遊技制御手段からFF01(H)の払出制御コマンドを受信すると賞球払出および球貸しを停止する状態となり、FF00(H)の払出制御コマンドを受信すると賞球払出および球貸しができる状態になる。また、賞球個数を指定する払出制御コマンドを受信すると、受信したコマンドで指定された個数に応じた賞球払出制御を行う。
【0175】
なお、払出制御コマンドは、払出制御手段が認識可能に1回だけ送出される。認識可能とは、この例では、INT信号がオン状態になることであり、認識可能に1回だけ送出されるとは、この例では、払出制御信号の1バイト目および2バイト目のそれぞれに応じてINT信号が1回だけオン状態になることである。
【0176】
遊技制御手段から払出制御基板等の各電気部品制御基板に制御コマンドを出力しようとするときに、コマンド送信テーブルの設定が行われる。図29(A)は、コマンド送信テーブルの一構成例を示す説明図である。1つのコマンド送信テーブルは3バイトで構成され、1バイト目にはINTデータが設定される。また、2バイト目のコマンドデータ1には、制御コマンドの1バイト目のMODEデータが設定される。そして、3バイト目のコマンドデータ2には、制御コマンドの2バイト目のEXTデータが設定される。
【0177】
なお、EXTデータそのものがコマンドデータ2の領域に設定されてもよいが、コマンドデータ2には、EXTデータが格納されているテーブルのアドレスを指定するためのデータが設定されるようにしてもよい。この実施の形態では、コマンドデータ2のビット7(ワークエリア参照ビット)が0あれば、コマンドデータ2にEXTデータそのものが設定されていることを示す。そのようなEXTデータはビット7が0であるデータである。ワークエリア参照ビットが1あれば、他の7ビットが、EXTデータが格納されているテーブルのアドレスを指定するためのオフセットであることを示す。また、この実施の形態では各制御コマンド毎にコマンド送信テーブルが用意されている。
【0178】
図29(B)INTデータの一構成例を示す説明図である。INTデータにおけるビット0は、払出制御基板37に払出制御コマンドを送出すべきか否かを示す。ビット0が「1」であるならば、払出制御コマンドを送出すべきことを示す。従って、CPU56は、例えば賞球処理において、払出制御コマンドを送出するときには、払出制御コマンド用のコマンド送信テーブルのINTデータに「01(H)」を設定する。
【0179】
INTデータのビット1,2,3は、それぞれ、表示制御コマンド、ランプ制御コマンド、音声制御コマンドを送出すべきか否かを示すビットであり、CPU56は、それらのコマンドを送出すべき場合には、ポインタが指しているコマンド送信テーブルに、INTデータ、コマンドデータ1およびコマンドデータ2を設定する。それらのコマンドを送出するときには、INTデータの該当ビットが「1」に設定され、コマンドデータ1およびコマンドデータ2にMODEデータおよびEXTデータが設定される。
【0180】
各電気部品制御基板への制御コマンドを、対応する出力ポート(出力ポート1〜4)に出力する際に、出力ポート0のビット0〜3のうちのいずれかのビットが所定期間オン状態になるのであるが、INTデータにおけるビット配列と出力ポート0におけるビット配列とは対応している。従って、各電気部品制御基板に御コマンドを送出する際に、コマンド送信テーブルに設定されているINTデータにもとづいて、容易にINT信号の出力を行うことができる。
【0181】
図30、図31は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理(電力供給停止時処理)の処理例を示すフローチャートである。
【0182】
電力供給停止時処理において、CPU56は、AFレジスタ(アキュミュレータとフラグのレジスタ)を所定のバックアップRAM領域に退避する(ステップS451)。また、割込フラグをパリティフラグにコピーする(ステップS452)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS454〜S458)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復元され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0183】
各レジスタやスタックポインタをバックアップRAM領域に退避すると、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS481)。バックアップフラグはバックアップRAM領域に形成されている。次いで、パリティデータを作成する(ステップS482〜S491)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS482)、チェックサム算出開始アドレスをポインタにセットする(ステップS483)。また、チェックサム算出回数をセットする(ステップS484)。
【0184】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS485)。演算結果をチェックサムデータエリアにストアするとともに(ステップS486)、ポインタの値を1増やし(ステップS487)、チェックサム算出回数の値を1減算する(ステップS488)。ステップS485〜S488の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS489)。
【0185】
チェックサム算出回数の値が0になったら、CPU56は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS490)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS491)。このデータが、電源投入時にチェックされるパリティデータとなる。
【0186】
図32は、バックアップパリティデータ作成方法を説明するための説明図である。ただし、図32に示す例では、簡単のために、バックアップデータRAM領域のデータのサイズを3バイトとする。また、図32に示す例では、ステップS484でチェックサム算出回数として3がセットされるものとする。電源電圧低下にもとづく停電発生処理において、図32(A)に示すように、バックアップチェックデータ領域に、初期データ(この例では00H)が設定される。次に、「00H」とチェックサム算出開始アドレス(この例では「F0H」)の排他的論理和がとられ、その結果と次のポインタが指すRAM領域の内容(本例では「16H」)の排他的論理和がとられる。さらに、その結果と次のポインタが指すRAM領域の内容(本例では「DFH」)の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転したデータ(この例では「C6H」)がバックアップパリティデータ領域に設定される。
【0187】
電源が再投入されたときには、チェックサム確認処理(ステップS9b)においてパリティ診断が行われるが、図32(B)はパリティ診断の例を示す説明図である。バックアップ領域の全データがそのまま保存されていれば、電源再投入時に、図32(A)に示すようなデータがバックアップ領域に設定されている。
【0188】
ステップS51の処理において、CPU56は、バックアップRAM領域のバックアップパリティデータ領域に設定されていたデータ(この例では「C6H」)を初期データとし、初期データを反転したデータ(この例では「39H」)を用いて、バックアップデータ領域の各データについて順次排他的論理和をとる処理を行う。バックアップ領域の全データがそのまま保存されていれば、最終的な演算結果は、「00H」、すなわちバックアップチェックデータ領域に設定されているデータと一致する。バックアップRAM領域内のデータにビット誤りが生じていた場合には、最終的な演算結果は「00H」にならない。
【0189】
よって、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータとを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。
【0190】
このように、この実施の形態では、図15に示されたパリティチェック処理において、バックアップパリティデータ領域に設定されていたデータが「00」でないときにチェックサム確認処理が行われ(ステップS9a,S9b)、バックアップパリティデータ領域に設定されていたデータが「00」である場合には停電復旧処理を行う。
【0191】
なお、この実施の形態では、チェックサム確認処理(ステップS9b)におけるパリティ診断において図32(B)に示すようにパリティ診断を行うようにしていたが、パリティ診断において、図32(A)と同様の処理を行うようにしてもよい。すなわち、パリティ診断において、パリティデータ作成のための演算処理と同じ演算処理を行うようにしてもよい。この場合、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータ(この場合、「00」)とを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。なお、パリティ診断においてもパリティデータ作成のときと同じ演算をおこなうので、初期データを設定する必要はない。
【0192】
次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS492)。以後、内蔵RAM55のアクセスができなくなる。
【0193】
なお、この実施の形態では、遊技制御処理において用いられるデータが格納されるRAM領域は全て電源バックアップされている。従って、その内容が正しく保存されているか否かを示すチェックサムの生成処理、およびその内容を書き換えないようにするためのRAMアクセス防止処理が、遊技状態を保存するための処理に相当する。
【0194】
内蔵RAM55のアクセスを禁止する処理を実行すると、CPU56は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0195】
なお、この実施の形態では、NMIに応じて電力供給停止時処理が実行されたが、電源断信号をCPU56のマスク可能端子に接続し、マスク可能割込処理によって電力供給停止時処理を実行してもよい。また、電源断信号を入力ポートに入力し、入力ポートのチェック結果に応じて電力供給停止時処理を実行してもよい。
【0196】
以下、遊技状態復旧処理について説明する。
図33は、図13のステップS10に示された遊技状態復旧処理の一例を示すフローチャートである。この例では、CPU56は、バックアップRAMに保存されていた値を各レジスタに復元する(ステップS91)。そして、バックアップRAMに保存されていたデータにもとづいて停電時の遊技状態を確認して復帰させる(ステップS92)。従って、バックアップRAMに保存されていたデータにもとづいて、始動入賞記憶数、大当り遊技状態(大当り中である場合には、ラウンド数、カウント数、V検出の有無などを含む)、確変状態(確変中である場合には、例えば確変状態の終了条件として特別図柄の回転数の上限が定められている場合(回数切りの場合)における現在までの回転数などを含む)などの遊技状態が復旧する。また、電源断中でも保存されていた特別図柄プロセスフラグおよび普通図柄プロセスフラグの値に応じて、電源断時の特別図柄プロセス処理の進行状況および普通図柄プロセス処理の進行状況に対応した制御コマンドを、図柄制御基板80、ランプ制御基板35および音声制御基板70に送出する(ステップS94)。
【0197】
以上のように、遊技状態復旧処理では、復元された内部状態に応じて、各種電気部品の状態復元が行われるとともに、図柄制御基板80、ランプ制御基板35および音声制御基板70に対して、制御状態を電源断時の状態に戻すための制御コマンド(電源断時の制御状態を生じさせるための制御コマンド)が送出される。そのような制御コマンドは、一般に、電源断前に最後に送出された1つまたは複数の制御コマンドである。
【0198】
遊技状態を電源断時の状態に復帰させると、この実施の形態では、CPU56は、前回の電源断時の割込許可/禁止状態を復帰させるため、バックアップRAMに保存されていたパリティフラグの値を確認する(ステップS95)。パリティフラグがオフ状態であれば、割込許可設定を行う(ステップS96)。しかし、パリティフラグがオン状態であれば、そのまま(ステップS1で設定された割込禁止状態のまま)遊技状態復旧処理を終了する。パリティフラグがオン状態であるということは、図30におけるステップS452に示されたように、前回の電源断時に割込禁止状態であったことを意味する。従って、パリティフラグがオン状態である場合には、割込許可はなされない。
【0199】
この実施の形態では、上述した遊技状態復旧処理によって、以下のような状態復旧が可能である。
【0200】
始動入賞口14および大入賞口(開閉板20)の状態が復元される。表示制御手段によって制御される普通図柄の表示状態(可変表示器10の表示状態)は、電源断時に変動中であった場合を除いて復元される。表示制御手段によって制御される特別図柄の表示状態(可変表示部9の表示状態)は、電源断時に変動中であった場合を除いて復元される。さらに、可変表示部9に表示される背景やキャラクタは、特別図柄変動中および大当り遊技中であった場合を除いて復元される。
【0201】
特別図柄の変動中に電源断となった場合には、可変表示パターンの変動時間(例えば10秒)および既に実行した時間(例えば4秒)の情報がバックアップされる。そして、主基板31は、復旧時に、表示パターンを示す表示制御コマンドおよび停止図柄を示す表示制御コマンドを表示制御基板80に出力し、残り時間(上述の例では6秒)経過後に、図柄を停止させるため表示制御コマンドを出力する。従って、特別図柄の表示状態は、電源断時に特別図柄の変動中であった場合には、復旧時に、表示されていない残りの時間(上述の例では6秒)につき可変表示が実行される。なお、復旧時に表示制御基板80に対して出力される表示パターンを示す表示制御コマンドは、電源断前に出力された表示パターンを示す表示制御コマンドと同じものであってもよいが、「停電復旧中です」のような画像を表示させるためのコマンドとしてもよい。この場合、「停電復旧中です」の表示は、残りの時間(上述の例では6秒)表示される。なお、特別図柄の変動中に電源断となった場合の、普通図柄の表示状態にについても、上述と同様の制御が行われる。
【0202】
なお、大当り遊技中に電源断となった場合にも、上述した特別図柄の変動中に電源断となった場合と同様に、ラウンド中あるいはラウンド間のインターバルの残り時間について、復旧時に、表示、音、ランプ、ソレノイド21などを制御するが、主基板31は、表示制御基板80に対して電源断前に出力した確定時の図柄(停止図柄)を指定する表示制御コマンドを出力する。これにより、ラウンド中あるいはラウンド間の大当り図柄による演出が可能となり(大当り図柄で大当り演出する機種について)、また、大当り終了後の変動開始時に表示する図柄も表示制御基板80が認識することができる。
【0203】
ランプ制御手段が制御する装飾ランプ25、始動記憶表示器18、ゲート通過記憶表示器41、賞球ランプ51および球切れランプ52の表示状態が復元される。遊技効果ランプ・LED28a,28b,28cの表示状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。各制御区間とは、例えば、大当り開始報知状態、大入賞口開放前状態、大入賞口開放中状態、大当り終了報知状態である。なお、特別図柄変動中に電源断となったあと復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ遊技効果ランプ・LED28a,28b,28cの表示状態を制御するようにしてもよいが、消灯または停電復旧時特有のパターンで点灯/点滅させるようにしてもよい。
【0204】
音声制御手段が制御する音発生状態は、特別図柄変動中および大当り遊技中であった場合を除いて復元される。ただし、電源断時に大当り遊技中であった場合には、各制御区間の最初の状態に復元可能である。なお、特別図柄変動中に電源断となったあと復旧した場合には、上述した可変表示部9や可変表示装置10の表示制御と同様に、残り時間分だけ音発生状態を制御するようにしてもよいが、無音または停電復旧時特有の音声パターン(例えば「停電復旧中です」との音声)を出力するようにしてもよい。
【0205】
なお、この実施の形態では、電源断からの復旧時に、主基板31の遊技制御手段から表示制御手段、ランプ制御手段および音声制御手段に対して状態復元のための制御コマンドが送出されるが、表示制御手段、ランプ制御手段および音声制御手段が電源バックアップされる場合には、主基板31からの制御コマンドを用いることなく、表示制御手段、ランプ制御手段および音声制御手段が独自に制御状態を復元するように構成してもよい。
【0206】
また、後述するように、払出制御基板37に搭載されている払出制御手段は、電源バックアップされているので、電源断からの復旧時に、賞球払出状態および球貸し制御状態は、電源断時の状態(例えば、電圧低下を検出したときから所定時間が経過したあとの状態)に復旧する。この実施の形態では、発射制御基板は払出制御手段に接続されているので、発射制御基板91における制御状態も同様に復元される。
【0207】
なお、上記の実施の形態では、遊技制御手段において、データ保存処理および復旧処理が行われる場合について説明したが、払出制御手段、音声制御手段、ランプ制御手段および表示制御手段におけるRAMの一部も電源バックアップされ、払出制御手段、表示制御手段、音制御手段およびランプ制御手段も、上述したような処理を行ってもよい。ただし、払出制御手段、表示制御手段、音制御手段およびランプ制御手段は、復旧時にコマンド送出処理を行う必要はない。
【0208】
次に、遊技制御手段以外の電気部品制御手段においてデータ保存処理および復旧処理が行われる場合の例として、払出制御手段においてデータ保存や復旧が行われる場合について説明する。
【0209】
図34は、払出制御用CPU371周りの一構成例を示すブロック図である。図34に示すように、電源基板910の電源監視回路(電源監視手段)からの電源断信号が、バッファ回路960を介して払出制御用CPU371のマスク不能割込端子(XNMI端子)に接続されている。従って、払出制御用CPU371は、マスク不能割込処理によって電源断の発生を確認することができる。
【0210】
払出制御用CPU371のCLK/TRG2端子には、主基板31からのINT信号が接続されている。CLK/TRG2端子にクロック信号が入力されると、払出制御用CPU371に内蔵されているタイマカウンタレジスタCLK/TRG2の値がダウンカウントされる。そして、レジスタ値が0になると割込が発生する。従って、タイマカウンタレジスタCLK/TRG2の初期値を「1」に設定しておけば、INT信号の入力に応じて割込が発生することになる。
【0211】
払出制御基板37には、システムリセット回路975も搭載されているが、この実施の形態では、システムリセット回路975におけるリセットIC976は、電源投入時に、外付けのコンデンサに容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。また、リセットIC976は、VSLの電源電圧を監視して電圧値が所定値(例えば+9V)以下になると出力をローレベルにする。従って、電源断時には、リセットIC976からの信号がローレベルになることによって払出制御用CPU371がシステムリセットされる。
【0212】
リセットIC976が電源断を検知するための所定値は、通常時の電圧より低いが、払出制御用CPU371が暫くの間動作しうる程度の電圧である。また、リセットIC976が、払出制御用CPU371が必要とする電圧(この例では+5V)よりも高い電圧を監視するように構成されているので、払出制御用CPU371が必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。
【0213】
+5V電源から電力が供給されていない間、払出制御用CPU371の内蔵RAMの少なくとも一部は、電源基板から供給されるバックアップ電源がバックアップ端子に接続されることによってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、システムリセット回路975からリセット信号が発せられるので、払出制御用CPU371は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップされているので、停電等からの復旧時には停電発生時の払出制御状態に復帰することができる。
【0214】
なお、図34に示すように、スイッチ基板190に搭載されたクリアスイッチ921の出力信号が、論理を反転させるバッファ回路372A、および入力ポート372を介して入力される。なお、入力ポート372には、本例では、バッファ回路372Aを介して、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bの各スイッチの出力信号も入力されている。このような構成によれば、クリアスイッチ921の切換により出力信号がクリアスイッチ信号(ローレベル信号)とされていると、クリアスイッチ信号が反転(なお、バッファ回路372Aがクリアスイッチ信号を反転して出力した信号を、クリアスイッチ信号と呼ぶことがある。)されて払出制御用CPU371に与えられるので、払出制御用CPU371により後述する初期化処理が行われる。
【0215】
なお、図34に示された構成では、システムリセット回路975は、電源投入時に、コンデンサの容量で決まる期間のローレベルを出力し、その後ハイレベルを出力する。すなわち、リセット解除タイミングは1回だけである。しかし、図11に示された主基板31の場合と同様に、複数回のリセット解除タイミングが発生するような回路構成を用いてもよい。
【0216】
図35は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図35に示すように、入力ポートA(アドレス06H)は、主基板31から送出された払出制御コマンドの8ビットの払出制御信号を取り込むための入力ポートである。また、入力ポートB(アドレス07H)のビット0〜2には、それぞれ、賞球カウントスイッチ301A、球貸しカウントスイッチ301B、モータ位置センサの検出信号が入力される。ビット3〜5には、カードユニット50からのBRDY信号、BRQ信号およびVL信号が入力される。ビット6には、クリアスイッチ921の出力信号が入力される。
【0217】
図36は、払出制御用CPU371のメイン処理を示すフローチャートである。メイン処理では、払出制御用CPU371は、まず、必要な初期設定を行う。すなわち、払出制御用CPU371は、まず、割込禁止に設定する(ステップS701)。次に、割込モードを割込モード2に設定し(ステップS702)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS703)。また、払出制御用CPU371は、内蔵デバイスレジスタの初期化を行い(ステップS704)、CTCおよびPIOの初期化(ステップS705)を行った後に、RAMをアクセス可能状態に設定する(ステップS706)。
【0218】
この実施の形態では、内蔵CTCのうちの一つのチャネルがタイマモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをタイマモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。そして、そのチャネルによる割込がタイマ割込として用いられる。タイマ割込を例えば2ms毎に発生させたい場合は、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
【0219】
なお、タイマモードに設定されたチャネル(この実施の形態ではチャネル3)に設定される割込ベクタは、タイマ割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでタイマ割込処理の先頭番地が特定される。タイマ割込処理ではタイマ割込フラグがセットされ、メイン処理でタイマ割込フラグがセットされていることが検知されると、払出制御処理が実行される。すなわち、タイマ割込処理では、電気部品制御処理の一例である払出制御処理を実行するための設定がなされる。
【0220】
また、内蔵CTCのうちの他の一つのチャネル(この実施の形態ではチャネル2)が、遊技制御手段からの払出制御コマンド受信のための割込発生用のチャネルとして用いられ、そのチャネルがカウンタモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをカウンタモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。
【0221】
カウンタモードに設定されたチャネル(チャネル2)に設定される割込ベクタは、後述するコマンド受信割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでコマンド受信割込処理の先頭番地が特定される。
【0222】
この実施の形態では、払出制御用CPU371でも割込モード2が設定される。従って、内蔵CTCのカウントアップにもとづく割込処理を使用することができる。また、CTCが送出した割込ベクタに応じた割込処理開始番地を設定することができる。
【0223】
CTCのチャネル2(CH2)のカウントアップにもとづく割込は、上述したタイマカウンタレジスタCLK/TRG2の値が「0」になったときに発生する割込である。従って、例えばステップS705において、特定レジスタとしてのタイマカウンタレジスタCLK/TRG2に初期値「1」が設定される。また、CTCのチャネル3(CH3)のカウントアップにもとづく割込は、CPUの内部クロック(システムクロック)をカウントダウンしてレジスタ値が「0」になったら発生する割込であり、後述する2msタイマ割込として用いられる。具体的には、CH3のレジスタ値はシステムクロックの1/256周期で減算される。ステップS705において、CH3のレジスタには、初期値として2msに相当する値が設定される。
【0224】
CTCのCH2のカウントアップにもとづく割込は、CH3のカウントアップにもとづく割込よりも優先順位が高い。従って、同時にカウントアップが生じた場合に、CH2のカウントアップにもとづく割込、すなわち、コマンド受信割込処理の実行契機となる割込の方が優先される。
【0225】
次いで、払出制御用CPU371は、入力ポート372を介して入力されるクリアスイッチ921の出力信号の状態を、本例では1回だけ確認する(ステップS707)。クリアスイッチ921がオン(クリアスイッチ921が押下されている状態)である場合には、ローレベルのクリアスイッチ信号が出力されている。従って、払出制御用CPU371は、クリアスイッチ921がオンとされていれば、通常の初期化処理を実行する(ステップS711〜ステップS713)。クリアスイッチ921のオン判定は、初期設定を行う前に実行することが好ましい。遊技機の起動に先立ってバックアップ記憶(最終記憶内容)の消去の意思を確認したのちに制御を再開することができるからである。この様な場合、初期設定を行う前に、タイマ処理やスイッチ入力判定(複数回)を行うと、バックアップ内容を壊す可能性がある。また、遊技中のパチンコ遊技機の裏側には、遊技球が流動しておりノイズが発生しやすく、このため、通常スイッチ検出は複数回入力判定を行うが、クリアスイッチ921のオン判定は、遊技開始前に行われるため、ノイズの影響を受けにくい。従って、クリアスイッチ921入力判定を1回のみとしても、ノイズの影響は受け難く、また、プログラム開発効率も上がる。なお、クリアスイッチ921が確実に操作されたか否かを重視する場合には、CPU56がクリアスイッチ921の出力信号の状態を例えば3秒間確認する構成としてもよい。
【0226】
クリアスイッチ921がオンの状態でなければ(すなわち、クリアスイッチ921が押下されていない状態であれば)、払出制御用CPU371は、払出制御用のバックアップRAM領域にバックアップデータが存在しているか否かの確認を行う(ステップS708)。すなわち、例えば、主基板31のCPU56の処理と同様に、電源断時にセットされるバックアップフラグがセット状態になっているか否かによって、バックアップデータが存在しているか否か確認する。バックアップフラグがセット状態になっている場合には、バックアップデータありと判断する。
【0227】
バックアップありを確認したら、払出制御用CPU371は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。
【0228】
図37は、ステップS709のパリティチェック処理の一例を示すフローチャートである。パリティチェックでは、CPU56は、まず、RAM55におけるバックアップパリティデータ領域に設定されているデータが「00」であるか否か確認する(ステップS709a)。バックアップパリティデータ領域については後で詳しく説明する。バックアップパリティデータ領域に設定されているデータが「00」でなければ、パリティ診断(チェックサム確認)を行う(ステップS709b)。そして、チェックサム確認の結果が正当であれば(ステップS709c)、CPU56は、後述する停電復旧処理を実行する(ステップS710)。また、チェックサム確認の結果が正当でなければ、または、バックアップパリティデータ領域に設定されているデータが「00」であった場合には、通常の初期化処理を実行する(ステップS711〜S713)。
【0229】
不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0230】
チェック結果が正常であれば(ステップS709)、払出制御用CPU371は、内部状態を電源断時の状態に戻すための払出状態復旧処理を行う(ステップS710)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の指すアドレスに復帰する。
【0231】
以上のように、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としたので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。従って、電源断が発生しても遊技者に不利益がもたらされることを防止することができるとともに、遊技店での遊技機運用上の利便性を向上させることもできる遊技機が提供される。
【0232】
また、上述したように、この実施の形態では、電力供給開始時に、電力供給停止時にバックアップRAM領域に記憶されたチェックデータ(チェックサムデータ)にもとづいて、初期化処理を行うか遊技状態復旧処理を行うかを決定するように構成したので、停電等の不測の電源断が発生したときに必要なデータを確実に保存することができ、さらに、保存されていたデータを電源復帰後に確実に活用することができる。
【0233】
なお、電源投入時に、変動データ記憶手段にバックアップデータが記憶されていない場合に実行される初期化処理と、変動データ記憶手段にバックアップデータが記憶されていてもクリアスイッチ921がオフ状態である場合に実行される初期化処理とは、プログラム上兼用されている。従って、遊技店での運用上の利便性を向上させる制御を付加しても、プログラム容量はさほど増えない。
【0234】
また、上述した実施の形態では、チェックサム確認の結果が正当でなかった場合には通常の初期化処理を実行するようにしていたが、チェックサム確認の結果が正当でなかった場合であっても初期化処理を行わないようにしてもよい。
【0235】
例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容を修復したあと、遊技状態復旧処理を行うようにすればよい。この場合、データの修復は、例えば、誤り訂正符号(例えば、ランダム誤り対策に用いられるハミング符号、バースト誤り対策に用いられるFire符号など、誤り特性に合わせて選択するようにすればよい)を用いて、変化したビットを検出して訂正するようにすればよい。
【0236】
また、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、バックアップRAMの記憶内容に異常が発生していることを報知するようにしてもよい。この場合、異常の報知は、所定の制御によって、例えば、エラー表示用LED374に異常を示す所定の表示を行うようにすればよい。また、バックアップRAMの記憶内容に異常が発生していることを示す所定の信号を、情報出力回路64などを介して管理コンピュータに出力するようにしてもよい。
【0237】
さらに、例えば、チェックサム確認の結果が正当でなかった場合に、初期化処理を実行することなく、クリアスイッチ921の操作によって初期化処理の実行要求を促すための報知を行うようにしてもよい。この場合の報知も、上述したように、所定の制御によってエラー表示用LED374に表示するなどするようにすればよい。
【0238】
初期化処理では、払出制御用CPU371は、まず、RAMクリア処理を行う(ステップS711)。そして、2ms毎に定期的にタイマ割込がかかるように払出制御用CPU371に設けられているCTCのレジスタの設定が行われる(ステップS712)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS701において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS713)。
【0239】
この実施の形態では、払出制御用CPU371の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、図38に示すように、払出制御用CPU371は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする(ステップS721)。なお、図38には割込を許可することも明示されているが(ステップS720)、2msタイマ割込処理では、最初に割込許可状態に設定される。すなわち、2msタイマ割込処理中には割込許可状態になってので、INT信号の入力にもとづく払出制御コマンド受信処理を優先して実行することができる。
【0240】
払出制御用CPU371は、ステップS724において、タイマ割込フラグがセットされたことを検出するとステップS751以降の払出制御処理を実行する。以上の制御によって、この実施の形態では、払出制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、払出制御処理はメイン処理において実行されるが、タイマ割込処理で払出制御処理を実行してもよい。
【0241】
払出制御処理において、払出制御用CPU371は、まず、中継基板72を介して入力ポート372bに入力される賞球カウントスイッチ301A、球貸しカウントスイッチ301Bがオンしたか否かを判定する(スイッチ処理:ステップS751)。
【0242】
次に、払出制御用CPU371は、センサ(例えば、払出モータ289の回転数を検出するモータ位置センサ)からの信号入力状態を確認してセンサの状態を判定する等の処理を行う(入力判定処理:ステップS752)。払出制御用CPU371は、さらに、受信した払出制御コマンドを解析し、解析結果に応じた処理を実行する(コマンド解析実行処理:ステップS753)。
【0243】
次いで、払出制御用CPU371は、主基板31から払出停止指示コマンドを受信していたら払出停止状態に設定し、払出開始指示コマンドを受信していたら払出停止状態の解除を行う(ステップS754)。また、プリペイドカードユニット制御処理を行う(ステップS755)。
【0244】
次いで、払出制御用CPU371は、球貸し要求に応じて貸し球を払い出す制御を行う(ステップS756)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を球貸し側に設定する。
【0245】
さらに、払出制御用CPU371は、総合個数記憶に格納された個数の賞球を払い出す賞球制御処理を行う(ステップS757)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を賞球側に設定する。そして、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に対して駆動信号を出力し、所定の回転数分払出モータ289を回転させる払出モータ制御処理を行う(ステップS758)。
【0246】
なお、この実施の形態では、払出モータ289としてステッピングモータが用いられ、それらを制御するために1−2相励磁方式が用いられる。従って、具体的には、払出モータ制御処理において、8種類の励磁パターンデータが繰り返し払出モータ289に出力される。また、この実施の形態では、各励磁パターンデータが4msずつ出力される。
【0247】
次いで、エラー検出処理が行われ、その結果に応じてエラー表示LED374に所定の表示を行う(エラー処理:ステップS759)。
【0248】
図39は、払出制御用CPU371が内蔵するRAMの使用例を示す説明図である。この例では、バックアップRAM領域に、総合個数記憶(例えば2バイト)と貸し球個数記憶とがそれぞれ形成されている。総合個数記憶は、主基板31の側から指示された賞球払出個数の総数を記憶するものである。貸し球個数記憶は、未払出の球貸し個数を記憶するものである。
【0249】
このように、未払出の賞球個数と貸し球個数とが、所定期間はその内容を保持可能なバックアップRAM領域に記憶されるので、停電等の不測の電源断が生じても、所定期間内に電源復旧すれば、バックアップRAM領域に記憶される賞球処理および球貸し処理を続行できる。従って、遊技者に与えられる不利益を低減することができる。
【0250】
図40は、主基板31から受信した払出制御コマンドを格納するための受信バッファの一構成例を示す説明図である。この例では、2バイト構成の払出制御コマンドを6個格納可能なリングバッファ形式の受信バッファが用いられる。従って、受信バッファは、確定コマンドバッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。このように、受信コマンドを、コマンド受信カウンタのカウント値にもとづいて、リングバッファ形式の受信バッファの各確定コマンドバッファに順次格納するようにしているので、受信したコマンドのオーバーライト(重ね書き、上書き)を防止することができる。
【0251】
図41は、割込処理による払出制御コマンド受信処理を示すフローチャートである。主基板31からの払出制御用のINT信号は払出制御用CPU371のCLK/TRG2端子に入力されている。よって、主基板31からのINT信号がオン状態になると、初期値として「1」が設定されていたタイマカウンタレジスタCLK/TRG2の値が0になって払出制御用CPU371において割込がかかる。そして、図41に示す払出制御コマンドの受信処理が開始される。なお、払出制御コマンド受信処理の開始番地は、内蔵CTCから出力される割込ベクタとIレジスタに設定された値とで決定される番地である。また、タイマカウンタレジスタCLK/TRG2の値が0になると、その値は自動的に初期値(この例では「1」)に戻される。
【0252】
払出制御コマンドの受信処理において、払出制御用CPU371は、まず、各レジスタをスタックに退避する(ステップS850)。なお、割込が発生するとCPU371は自動的に割込禁止状態に設定するが、自動的に割込禁止状態にならないCPUを用いている場合には、ステップS850の処理の実行前に割込禁止命令(DI命令)を発行することが好ましい。次いで、払出制御コマンドデータの入力に割り当てられている入力ポート372aからデータを読み込む(ステップS851)。そして、2バイト構成の払出制御コマンドのうちの1バイト目であるか否か確認する(ステップS852)。1バイト目であるか否かは、受信したコマンドの先頭ビットが「1」であるか否かによって確認される。先頭ビットが「1」であるのは、2バイト構成である払出制御コマンドのうちのMODEバイト(1バイト目)のはずである(図26参照)。そこで、払出制御用CPU371は、先頭ビットが「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す確定コマンドバッファに格納する(ステップS853)。
【0253】
払出制御コマンドのうちの1バイト目でなければ、1バイト目を既に受信したか否か確認する(ステップS854)。既に受信したか否かは、受信バッファ(確定コマンドバッファ)に有効なデータが設定されているか否かによって確認される。
【0254】
1バイト目を既に受信している場合には、受信した1バイトのうちの先頭ビットが「0」であるか否か確認する。そして、先頭ビットが「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ+1が示す確定コマンドバッファに格納する(ステップS855)。先頭ビットが「0」であるのは、2バイト構成である払出制御コマンドのうちのEXTバイト(2バイト目)のはずである(図26参照)。なお、ステップS854における確認結果が1バイト目を既に受信したである場合には、2バイト目として受信したデータのうちの先頭ビットが「0」でなければ処理を終了する。
【0255】
ステップS855において、2バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに2を加算する(ステップS856)。そして、コマンド受信カウンタが12以上であるか否か確認し(ステップS857)、12以上であればコマンド受信個数カウンタをクリアする(ステップS858)。その後、退避されていたレジスタを復帰し(ステップS859)、割込許可に設定する(ステップS859)。
【0256】
コマンド受信割込処理中は割込禁止状態になっている。上述したように、2msタイマ割込処理中は割込許可状態になっているので、2msタイマ割込中にコマンド受信割込が発生した場合には、コマンド受信割込処理が優先して実行される。また、コマンド受信割込処理中に2msタイマ割込が発生しても、その割込処理は待たされる。このように、この実施の形態では、主基板31からのコマンド受信処理の処理優先度が高くなっている。
【0257】
なお、払出制御コマンドは2バイト構成であって、1バイト目(MODE)と2バイト目(EXT)とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、MODEとしてのデータを受信したのかEXTとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。
【0258】
図42は、ステップS753のコマンド解析実行処理の一例を示すフローチャートである。コマンド解析実行処理において、払出制御用CPU371は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う(ステップS753a)。受信コマンドがあれば、受信した払出制御コマンドが払出個数指示コマンドであるか否かの確認を行う(ステップS753b)。なお、確定コマンドバッファ領域中に複数の受信コマンドがある場合には、受信した払出制御コマンドが払出個数指示コマンドであるか否かの確認は、最も前に受信された受信された受信コマンドについて行われる。
【0259】
受信した払出制御コマンドが払出個数指示コマンドであれば、払出個数指示コマンドで指示された個数を総合個数記憶に加算する(ステップS753c)。すなわち、払出制御用CPU371は、主基板31のCPU56から送られた払出個数指示コマンドに含まれる賞球数をバックアップRAM領域(総合個数記憶)に記憶する。なお、払出制御用CPU371は、必要ならば、コマンド受信個数カウンタの減算や確定コマンドバッファ領域における受信コマンドシフト処理を行う。
【0260】
図43は、ステップS754の払出停止状態設定処理の一例を示すフローチャートである。払出停止状態設定処理において、払出制御用CPU371は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う(ステップS754a)。確定コマンドバッファ領域中に受信コマンドがあれば、受信した払出制御コマンドが払出停止指示コマンドであるか否かの確認を行う(ステップS754b)。払出停止指示コマンドであれば、払出制御用CPU371は、払出停止状態に設定する(ステップS754c)。
【0261】
ステップS754bで受信コマンドが払出停止指示コマンドでないことを確認すると、受信した払出制御コマンドが払出開始指示コマンドであるか否かの確認を行う(ステップS754d)。払出開始指示コマンドであれば、払出停止状態を解除する(ステップS754e)。
【0262】
図44は、ステップS751のスイッチ処理の一例を示すフローチャートである。スイッチ処理において、払出制御用CPU371は、賞球カウントスイッチ301Aがオン状態を示しているか否か確認する(ステップS751a)。オン状態を示していれば、払出制御用CPU371は、賞球カウントスイッチオンカウンタを+1する(ステップS751b)。賞球カウントスイッチオンカウンタは、賞球カウントスイッチ301Aのオン状態を検出した回数を計数するためのカウンタである。
【0263】
そして、賞球カウントスイッチオンカウンタの値をチェックし、その値が250になっていれば(ステップS751c)、賞球球詰まりフラグをセットする(ステップS751d)。つまり、賞球カウントスイッチ301Aのオン状態が長期間継続した場合に賞球球詰まりフラグがセットされる。
【0264】
また、賞球カウントスイッチオンカウンタの値が2になったときには(ステップS751e)、確実に賞球カウントスイッチ301Aがオンした判断し、賞球カウントスイッチオンフラグをセットする(ステップS751f)。
【0265】
ステップS751aにおいて賞球カウントスイッチ301Aがオン状態でないことが確認されると、払出制御用CPU371は、賞球カウントスイッチオンフラグをリセットするとともに(ステップS751h)、賞球カウントスイッチオンカウンタをクリアする(ステップS751i)。そして、球貸しカウントスイッチ301Bがオン状態を示しているか否か確認する(ステップS751j)。オン状態を示していれば、払出制御用CPU371は、球貸しカウントスイッチオンカウンタを+1する(ステップS751k)。球貸しカウントスイッチオンカウンタは、球貸しカウントスイッチ301Bのオン状態を検出した回数を計数するためのカウンタである。
【0266】
そして、球貸しカウントスイッチオンカウンタの値をチェックし、その値が250になっていれば(ステップS751l)、貸し球詰まりフラグをセットする(ステップS751m)。つまり、球貸しカウントスイッチ301Bのオン状態が長期間継続した場合に貸し球球詰まりフラグがセットされる。
【0267】
また、球貸しカウントスイッチオンカウンタの値が2になったときには(ステップS751n)、確実に球貸しカウントスイッチ301Bがオンした判断し、球貸しカウントスイッチオンフラグをセットする(ステップS751o)。
【0268】
ステップS751jにおいて球貸しカウントスイッチ301Bがオン状態でないことが確認されると、払出制御用CPU371は、球貸しカウントスイッチオンフラグをリセットするとともに(ステップS751p)球貸しカウントスイッチオンカウンタをクリアする(ステップS751q)。
【0269】
図45は、ステップS756の球貸し制御処理の一例を示すフローチャートである。なお、この実施の形態では、連続的な払出数の最大値を貸し球の一単位(例えば25個)とするが、連続的な払出数の最大値は他の数であってもよい。
【0270】
球貸し制御処理において、払出制御用CPU371は、球貸し停止中であるか否かを確認する(ステップS501)。球貸し停止中でなければ、払出制御用CPU371は、貸し球払出中であるか否かの確認を行い(ステップS511)、貸し球払出中であれば、ステップS518以降の球貸し中の処理に移行する。なお、貸し球払出中であるか否かは、後述する球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ、払出制御用CPU371は、カードユニット50から球貸し要求があったか否かを確認する(ステップS512)。要求があれば、球貸し処理中フラグをオンするとともに(ステップS513)、25(球貸し一単位数:ここでは100円分)をバックアップRAM領域の貸し球個数記憶に設定する(ステップS514)。そして、払出制御用CPU371は、EXS信号をオンして(ステップS515)、球払出装置97の下方の球振分部材311を球貸し側に設定するために振分用ソレノイド310を駆動する(ステップS516)。また、払出モータ289をオンする(ステップS517)。
【0271】
なお、払出モータ289をオンするのは、厳密には、カードユニット50が受付を認識したことを示すためにBRQ信号をOFFとしてからである。なお、球貸し処理中フラグはバックアップRAM領域に設定される。
【0272】
ステップS518において、払出制御用CPU371は、貸し球通過待ち時間中であるか否かの確認を行う(ステップS518)。貸し球通過待ち時間中でなければ、球貸し用センサ(本例では、払出モータ位置センサ)のチェックを行い(ステップS519)、また、後述する球貸しカウントスイッチチェック処理を行う(ステップS520)。
【0273】
次いで、払出制御用CPU371は、払出モータ289の駆動を終了すべきか(一単位の払出動作が終了したか)否かの確認を行う(ステップS521)。具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用CPU371は、払出モータ289の駆動を停止し(ステップS522)、貸し球通過待ち時間の設定を行う(ステップS523)。
【0274】
ステップS518で貸し球通過待ち時間中であれば、払出制御用CPU371は、後述する球貸しカウントスイッチチェック処理を行うとともに(ステップS524)、貸し球通過待ち時間が終了したか否かの確認を行う(ステップS525)。貸し球通過待ち時間は、最後の払出球が払出モータ289によって払い出されてから球貸しカウントスイッチ301Bを通過するまでの時間である。
【0275】
貸し球通過待ち時間の終了を確認すると、一単位の貸し球は全て払い出された状態であるので、振分用ソレノイド310をオフして、カードユニット50に対して次の球貸し要求の受付が可能になったことを示すためにEXS信号をオフにする(ステップS526)。また、球貸し処理中フラグをオフする(ステップS527)。
【0276】
なお、球貸し要求の受付を示すEXS信号をオフにした後、所定期間内に再び球貸し要求信号であるBRQ信号がオンしたら、振分用ソレノイド310、および払出モータ289をオフせずに球貸し処理を続行するようにしてもよい。すなわち、所定単位(この例では100円単位)毎に球貸し処理を行うのではなく、球貸し処理を連続して実行するように構成することもできる。
【0277】
貸し球個数記憶の内容は、遊技機の電源が断しても、所定期間電源基板910のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用CPU371は、貸し球個数記憶の内容にもとづいて球貸し処理を継続することができる。
【0278】
図46は、ステップS520およびS524で実行される球貸しカウントスイッチチェック処理を示すフローチャートである。球貸しカウントスイッチチェック処理は、球貸しカウントスイッチ301Bの状態を監視して、貸し球個数記憶を減算する処理である。
【0279】
球貸しカウントスイッチチェック処理において、払出制御用CPU371は、まず、球貸しカウントスイッチON待ちフラグがセットされているか否か確認する(ステップS520a)。球貸しカウントスイッチON待ちフラグがセットされていれば、球貸しカウントスイッチオンフラグがオン状態になるのを待つ(ステップS520b)。なお、球貸しカウントスイッチオンフラグは、図44に示されたスイッチ処理におけるステップS751oでセットされる。球貸しカウントスイッチオンフラグがオン状態になる前にタイマT11がタイムアウトすると球貸し経路エラーフラグをセットする(ステップS520f,S520g)。球貸しカウントスイッチ301Bがオンすると、タイマT11を停止して(ステップS520c)、球貸しカウントスイッチON待ちフラグをリセットする(ステップS520d)。なお、タイマT11は、球貸しカウントスイッチ301Bが所定期間内にオンするか否かを確認するためのタイマである。
【0280】
球貸しカウントスイッチ301Bがオンした場合には、球貸しカウントスイッチ301Bがオフすることを確認するために、オフを待つ状態であることを示す球貸しカウントスイッチOFF待ちフラグをセットする(ステップS520e)。
【0281】
従って、払出制御用CPU371は、球貸しカウントスイッチOFF待ちフラグがオンしていれば(ステップS520h)、球貸しカウントスイッチオンフラグがオフするのを待つ(ステップS520k)。球貸しカウントスイッチオンフラグがオフすると、球貸しカウントスイッチOFF待ちフラグをリセットする(ステップS520l)。そして、1個の遊技球が払い出されたことが検出されたとして、貸し球個数記憶を−1する(ステップS520m)。
【0282】
ステップS520hで、球貸しカウントスイッチOFF待ちフラグもオンしていないことを確認したら、タイマT11をスタートするとともに(ステップS520i)、球貸しカウントスイッチON待ちフラグをセットする(ステップS520j)。
【0283】
以上のように、この実施の形態では、1個の遊技球が貸し出されたことを確認する度に、貸し球個数記憶が−1される。
【0284】
図47および図48は、ステップS758の賞球制御処理の一例を示すフローチャートである。なお、この例では、連続的な払出数の最大値を貸し球の一単位と同数(例えば25個)とするが、連続的な払出数の最大値は他の数であってもよい。
【0285】
賞球制御処理において、払出制御用CPU371は、貸し球払出中であるか否か確認する(ステップS531)。貸し球払出中であるか否かは、球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ賞球の払出中であるか否か確認し(ステップS532)、賞球の払出中であれば図48に示す賞球中の処理に移行する。賞球の払出中であるか否かは、後述する賞球処理中フラグの状態によって判断される。
【0286】
貸し球払出中でも賞球払出中でもなければ、払出制御用CPU371は、カードユニット50からの球貸し準備要求があるか否か確認する(ステップS533)。球貸し準備要求があるか否かは、カードユニット50から入力されるBRDY信号のオン(要求あり)またはオフ(要求なし)を確認することによって行われる。
【0287】
カードユニット50からの球貸し準備要求がなければ、払出制御用CPU371は、総合個数記憶に格納されている賞球数(未払出の賞球数)が0でないか否か確認する(ステップS534)。総合個数記憶に格納されている賞球数が0でなければ、賞球制御用CPU371は、賞球処理中フラグをオンし(ステップS535)、総合個数記憶の値が25以上であるか否か確認する(ステップS536)。なお、賞球処理中フラグは、バックアップRAM領域に設定される。
【0288】
総合個数記憶に格納されている賞球数が25以上であると、払出制御用CPU371は、25個分の遊技球を払い出すまで払出モータ289を回転させるように払出モータ289に対して駆動信号を出力するために25個払出動作の設定を行う(ステップS537)。総合個数記憶に格納されている賞球数が25以上でなければ、払出制御用CPU371は、総合個数記憶に格納されている全ての遊技球を払い出すまで払出モータ289を回転させるように駆動信号を出力するために、全個数払出動作の設定を行う(ステップS538)。次いで、球払出装置97の下方の球振分部材311を賞球側に設定し(ステップS539)、払出モータ289をオンする(ステップS540)。そして、図48に示す賞球制御処理における賞球払出中の処理に移行する。
【0289】
図48は、払出制御用CPU371による払出制御処理における賞球中の処理の一例を示すフローチャートである。賞球中の処理において、払出制御用CPU371は、賞球通過待ち時間中であるか否かの確認を行う(ステップS541)。賞球通過待ち時間中でなければ、賞球用センサ(本例では、払出モータ位置センサ)のチェックを行い(ステップS542)、また、後述する賞球カウントスイッチチェック処理を行う(ステップS543)。
【0290】
そして、払出制御用CPU371は、払出モータ289の駆動を終了すべきか(25個または25個未満の所定の個数の払出動作が終了したか)否かの確認を行う(ステップS544)。具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用CPU371は、払出モータ289の駆動を停止し(ステップS545)、賞球通過待ち時間の設定を行う(ステップS546)。賞球通過待ち時間は、最後の払出球が払出モータ289によって払い出されてから賞球カウントスイッチ301Aを通過するまでの時間である。
【0291】
ステップS541において、賞球通過待ち時間中であれば、払出制御用CPU371は、後述する賞球カウントスイッチチェック処理を行い(ステップS547)、賞球通過待ち時間が終了したか否かの確認を行う(ステップS548)。賞球通過待ち時間が終了した時点は、ステップS537またはステップS538で設定された賞球が全て払い出された状態である。そこで、払出制御用CPU371は、賞球処理中フラグをオフする(ステップS549)。なお、賞球通過待ち時間が経過するまでに最後の払出球が賞球カウントスイッチ301Aを通過しなかった場合には、賞球経路エラーとされる。
【0292】
なお、この実施の形態では、ステップS531の判断によって球貸しが賞球処理よりも優先されることになるが、賞球処理が球貸しに優先するようにしてもよい。
【0293】
図49は、ステップS543およびS547で実行される賞球カウントスイッチチェック処理を示すフローチャートである。賞球カウントスイッチチェック処理は、賞球カウントスイッチ301Aの状態を監視して、総合個数記憶を減算する処理である。
【0294】
賞球カウントスイッチチェック処理において、払出制御用CPU371は、まず、賞球カウントスイッチON待ちフラグがセットされているか否か確認する(ステップS543a)。賞球カウントスイッチON待ちフラグがセットされていれば、賞球カウントスイッチオンフラグがオン状態になるのを待つ(ステップS543b)。なお、賞球カウントスイッチオンフラグは、図44に示されたスイッチ処理におけるステップS751fでセットされる。賞球カウントスイッチオンフラグがオン状態になる前にタイマT12がタイムアウトすると賞球経路エラーフラグをセットする(ステップS543f,S543g)。賞球カウントスイッチ301Aがオンすると、タイマT12を停止して(ステップS543c)、賞球カウントスイッチON待ちフラグをリセットする(ステップS543d)。タイマT12は、賞球カウントスイッチ301Aが所定期間内にオンするか否かを確認するためのタイマである。
【0295】
賞球カウントスイッチ301Aがオンした場合には、賞球カウントスイッチ301Aがオフすることを確認するために、オフを待つ状態であることを示す賞球カウントスイッチOFF待ちフラグをセットする(ステップS543e)。
【0296】
従って、払出制御用CPU371は、賞球カウントスイッチOFF待ちフラグがオンしていれば(ステップS543h)、賞球カウントスイッチオンフラグがオフするのを待つ(ステップS543k)。賞球カウントスイッチオンフラグがオフすると、賞球カウントスイッチOFF待ちフラグをリセットする(ステップS543l)。そして、総合個数記憶を−1する(ステップS543m)。
【0297】
ステップS543hで、賞球カウントスイッチOFF待ちフラグもオンしていないことを確認したら、タイマT12をスタートするとともに(ステップS543i)、賞球カウントスイッチON待ちフラグをセットする(ステップS543j)。
【0298】
総合個数記憶および貸し球個数記憶の内容は、それぞれ、遊技機の電源が断しても、所定期間電源基板910のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用CPU371は、総合個数記憶および貸し球個数記憶の内容にもとづいて払出処理を継続することができる。
【0299】
なお、払出制御用CPU371は、主基板31から指示された賞球個数を賞球個数記憶で総数として管理したが、賞球数毎(例えば15個、10個、6個)に管理してもよい。例えば、賞球数毎に対応した個数カウンタを設け、払出個数指定コマンドを受信すると、そのコマンドで指定された個数に対応する個数カウンタを+1する。そして、個数カウンタに対応した賞球払出が行われると、その個数カウンタを−1する(この場合、払出制御処理にて減算処理を行うようにする)。その場合にも、各個数カウンタはバックアップRAM領域に形成される。よって、遊技機の電源が断しても、所定期間中に電源が回復すれば、払出制御用CPU371は、各個数カウンタの内容にもとづいて賞球払出処理を継続することができる。
【0300】
図50、図51は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理の処理例を示すフローチャートである。この例では、NMIに応じて電力供給停止時処理が実行されるが、電源断信号を払出制御用CPU371のマスク可能端子に接続し、マスク可能割込処理によって電力供給停止時処理を実行してもよい。また、電源断信号を入力ポートに入力し、入力ポートのチェック結果に応じて電力供給停止時処理を実行してもよい。
【0301】
マスク不能割込処理において、払出制御用CPU371は、AFレジスタを所定のバックアップRAM領域に退避する(ステップS801)。また、割込フラグをパリティフラグにコピーする(ステップS802)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS804〜808)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復元され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0302】
次いで、払出制御用CPU371は、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS809)。バックアップフラグはバックアップRAM領域に形成されている。バックアップあり指定値をストアすると、払出制御用CPU371は、主基板31のCPU56の処理と同様の処理を行ってパリティデータを作成しバックアップRAM領域に保存する(ステップS810〜S819)。
【0303】
図52は、バックアップパリティデータ作成方法を説明するための説明図である。ただし、図52に示す例では、簡単のために、バックアップデータRAM領域のデータのサイズを3バイトとする。また、図52に示す例では、ステップS812でチェックサム算出回数として3がセットされるものとする。電源電圧低下にもとづく停電発生処理において、図52(A)に示すように、バックアップチェックデータ領域に、初期データ(この例では00H)が設定される。次に、「00H」とチェックサム算出開始アドレス(この例では「F0H」)の排他的論理和がとられ、その結果と次のポインタが指すRAM領域の内容(本例では「16H」)の排他的論理和がとられる。さらに、その結果と次のポインタが指すRAM領域の内容(本例では「DFH」)の排他的論理和がとられる。そして、その結果(この例では「39H」)を反転したデータ(この例では「C6H」)がバックアップパリティデータ領域に設定される。
【0304】
電源が再投入されたときには、チェックサム確認処理(ステップS709b)においてパリティ診断が行われるが、図52(B)はパリティ診断の例を示す説明図である。バックアップ領域の全データがそのまま保存されていれば、電源再投入時に、図52(A)に示すようなデータがバックアップ領域に設定されている。
【0305】
ステップS709の処理において、払出制御用CPU371は、バックアップRAM領域のバックアップパリティデータ領域に設定されていたデータ(この例では「C6H」)を初期データとし、初期データを反転したデータ(この例では「39H」)を用いて、バックアップデータ領域の各データについて順次排他的論理和をとる処理を行う。バックアップ領域の全データがそのまま保存されていれば、最終的な演算結果は、「00H」、すなわちバックアップチェックデータ領域に設定されているデータと一致する。バックアップRAM領域内のデータにビット誤りが生じていた場合には、最終的な演算結果は「00H」にならない。
【0306】
よって、CPU56は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータとを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。
【0307】
このように、この実施の形態では、図52に示されたパリティチェック処理において、バックアップパリティデータ領域に設定されていたデータが「00」でないときにチェックサム確認処理が行われ(ステップS709a,S709b)、バックアップパリティデータ領域に設定されていたデータが「00」である場合には停電復旧処理を行う。
【0308】
なお、この実施の形態では、チェックサム確認処理(ステップS709b)におけるパリティ診断において図52(B)に示すようにパリティ診断を行うようにしていたが、パリティ診断において、図52(A)と同様の処理を行うようにしてもよい。すなわち、パリティ診断において、パリティデータ作成のための演算処理と同じ演算処理を行うようにしてもよい。この場合、払出制御用CPU371は、パリティチェック処理(チェックサム確認処理)において、最終的な演算結果とバックアップチェックデータ領域に設定されているデータ(この場合、「00」)とを比較して、一致すればパリティ診断正常とする。一致しなければ、パリティ診断異常とする。なお、パリティ診断においてもパリティデータ作成のときと同じ演算をおこなうので、初期データを設定する必要はない。
【0309】
パリティデータを作成してバックアップRAM領域に保存すると、払出制御用CPU371は、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS820)。以後、内蔵RAMのアクセスができなくなる。
【0310】
なお、この実施の形態では、払出制御処理において用いられるデータが格納されるRAM領域は全て電源バックアップされている。従って、その内容が正しく保存されているか否かを示すチェックサムの生成処理、およびその内容を書き換えないようにするためのRAMアクセス防止処理が、払出制御状態を保存するための処理に相当する。
【0311】
RAMアクセス防止処理が完了すると、払出制御用CPU371は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0312】
以上に説明したように、上記の各実施の形態では、停電等の発生に応じて電源断信号が出力されたら、各基板において、始動入賞記憶数や大当り状態などの遊技制御状態や、未払出の賞球および貸し球の総数を含む払出制御状態などを保存するための処理が行われる。従って、停電発生時に保留されていた始動入賞記憶数などの遊技制御状態や、払出途中であった遊技球数などの払出制御状態がバックアップRAMに保存される。
【0313】
この場合、たとえ制御状態が保存されていたとしても、例えば電源断前に遊技していた遊技者とは異なる者が遊技を行う場合には、そのまま制御状態を復旧させることは好ましくない。上述した各実施の形態では、クリアスイッチ921の操作状態に応じて電源断時の遊技状態に復旧するか否かの判断を行うようにし、その際、クリアスイッチ921がオン状態であれば、遊技状態復旧処理は実行されず、通常の初期化処理を実行する構成としているので、遊技店員等は、遊技機の電源供給再開時に、クリアスイッチ921を操作することによって、バックアップデータ記憶領域(変動データ記憶手段)に記憶されているバックアップデータにもとづく遊技状態復旧処理を実行するか否かを選択することができる。このように、始動入賞記憶数や未払出の賞球や貸し球の総数などの制御状態を保存して復旧することができるだけでなく、遊技の再開時に例えば始動入賞記憶数、未払出の賞球、貸し球の総数などの制御状態をクリアすることを可能として、遊技店での遊技機運用上の利便性を向上させることもできる。
【0314】
また、バックアップデータが正常に保持されていなかった場合には、そのデータにもとづいて復旧させると不当な制御が実行されてしまうおそれがあるため、やはりそのまま制御状態を復旧させることは好ましくない。上述した各実施の形態では、電力供給開始時に、電力供給停止時にバックアップRAM領域に記憶されたチェックデータ(チェックサムデータ)にもとづいて、初期化処理を行うか遊技状態復旧処理を行うかを決定するように構成したので、停電等の不測の電源断が発生したときに必要なデータを確実に保存することができ、さらに、保存されていたデータを電源復帰後に確実に活用することができる。
【0315】
また、上記の各実施の形態では、遊技制御手段および払出制御手段が電源断信号に応じてバックアップ保存を行い、そのバックアップデータにもとづいて制御状態を復旧する場合に、クリアスイッチ921の操作状態に応じて初期化処理を実行し、あるいはパリティチェックの結果に応じて初期化処理を実行する場合を例示したが、表示制御手段、音制御手段およびランプ制御手段についても、保存データにもとづく状態復旧を行う場合に、クリアスイッチ921の操作状態、あるいはパリティチェックの結果に応じて初期化処理を実行するように構成してもよい。
【0316】
また、上記の各実施の形態では、クリアスイッチ921を押しボタン構造としていたが、他の構造であってもよい。図53は、スイッチ基板190に搭載された他の実施の形態におけるクリアスイッチ921の構成の一例を示す外観構成図である。図53に示すクリアスイッチ921は、「OFF」、「ON」および「クリア」の選択切り換えがされる切換操作スイッチ921aを有する。この例では、クリアスイッチ921の「OFF」が選択されているときは何らの信号も発生せずに動作停止中となっており、「ON」が選択されているときはハイレベルの信号を出力する。クリアスイッチ921は、この例では、遊技機1に対する電源供給のオン/オフ切換のためのスイッチと連動された構成とされている。従って、クリアスイッチ921で「OFF」が選択されているときには遊技機1の電源供給が停止された状態(遊技機の電源がオフの状態)にあり、「ON」および「クリア」が選択されているときには遊技機1が稼動している状態(遊技機の電源がオンの状態)にあるとすればよい。また、クリアスイッチ921の「クリア」が選択されているときに、ローレベルのクリア信号を出力するようにすればよい。
【0317】
また、上記の各実施の形態では、クリアスイッチ921が所定の操作状態とされていたときに、初期化処理を実行する構成としていたが、例えば初期化処理を実行することなく、クリアスイッチ921の操作状態に応じた特有の処理を実行するようにしてもよい。この場合、例えば、ROMの所定の記憶領域に、クリアスイッチ921が操作されたときに実行される制御プログラムを格納しておく。そして、クリアスイッチ921が所定の操作状態とされると、ROMに記憶されている制御プログラムにもどづく処理が実行され、例えば可変表示装置9に「クリアスイッチが操作されました」などの表示がされるようにする。また、例えば、初期化処理が実行されたあとに可変表示装置9に表示される特別図柄の初期表示が例えば「1、1、7」である場合に、クリアスイッチ921が操作された場合の特有の処理が実行されたあとに可変表示装置9に表示される特別図柄の初期表示が例えば「5、5、7」となるようにして、実行された処理が識別可能となるようにする。なお、ランプの点灯パターンや音などによって、実行された処理(あるいは、実行されている処理)が初期化処理であるのか、クリアスイッチ921の操作に応じた特有の処理であるのかを識別可能とするようにしてもよい。
【0318】
また、上述した各実施の形態では、初期化処理においてRAMに記憶されている変動データを全てクリアする構成(ステップS4a参照)としていたが、RAMに記憶されている変動データのうちの一部をクリアするようにしてもよい。この場合、例えば価値付与の数量にかかわる変動データ(例えば、入賞にもとづき払い出される遊技球の数量などを示すデータ)をRAMに記憶されている変動データの一部としてクリアしたり、遊技状態にかかわる変動データ(例えば、大当りか否か、大当り状態、当りか否か、確変か否か、確変状態(確変残り回数など)、時短中か否か、普通図柄や特別図柄の変動時間短縮状態(残り回数)、始動入賞記憶数などを示すデータ)をRAMに記憶されている変動データの一部としてクリアするようにすればよい。すなわち、クリアスイッチ921の操作にもとづくRAMのクリアにおいて、変動データのうちの一部のデータとして、例えば確変フラグや時短フラグのみがクリアされるようにしてもよい。なお、RAMの一部が初期化されたあとは、クリアされなかった変動データにもとづく遊技状態復旧処理(例えばステップS10)が実行されるように構成される。
【0319】
このように、変動データの一部をクリアすることができる構成とすれば、復旧させる必要のないデータを除く変動データにもとづいて遊技状態を復旧させることができる。なお、変動データの一部として価値付与の数量にかかわる変動データをクリアする構成とすれば、電源断前に得られていた遊技球を、電源投入後に不当に得ることを防止することができる。また、変動データの一部として遊技状態にかかわる変動データをクリアする構成とすれば、電源断前に得られていた例えば確変などの有利な遊技状態を、電源投入後に不当に得ることを防止することができ、あるいは不利な遊技状態を不当に与えてしまうことを防止することができる。
【0320】
また、上記の各実施の形態では、電源監視回路は電源基板910に設けられたが、電源監視回路は主基板31や払出制御基板37などの電気部品制御基板に設けられていてもよい。電源回路が搭載された電気部品制御基板が構成される場合には、電源基板には電源監視回路は搭載されない。
【0321】
上記の各実施の形態のパチンコ遊技機1は、主として、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第2種パチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
【0322】
さらに、遊技媒体が遊技球であるパチンコ遊技機に限られず、スロット機等においても本発明を適用することができる。
【0323】
【発明の効果】
以上のように、本発明によれば、遊技機を、電気部品制御マイクロコンピュータが、電力供給再開時に記憶内容保持手段により保持されたチェックデータにもとづいて記憶内容が正常か否かの判定を行い、正常と判定した場合には制御状態を電力供給停止直前の状態に復帰させることが可能であり、操作手段からの操作信号が入力されていると判定したときに、記憶内容保持手段によって保持される記憶内容による制御を行わないようにし、電気部品制御マイクロコンピュータは、第2の検出信号の入力に応じて動作停止状態とされる構成としたので、遊技店員などの判断により、保存された制御状態に復旧させないようにすることができ、遊技店での遊技機運用上の利便性を向上させることができる。また、適正な制御状態に復帰させることができるので、保存されていたデータを電源復帰後に確実に活用することが可能となる。
また、電気部品制御マイクロコンピュータが、操作手段からの操作信号が入力されていると判定されなかったことを条件に、変動データ記憶手段の記憶内容を初期化するとので、遊技店員などの判断により、電力供給開始による制御開始の初期段階でバックアップされていた制御状態をクリアすることが可能となる。
さらに、操作手段からの操作信号が入力されていると判定されなかったときにのみチェックデータの内容が確認されるため、処理効率が向上する。
【0327】
電気部品制御マイクロコンピュータが所定の信号を取得するための入力ポートが設けられ、操作手段からの操作信号が入力ポートに入力されるとした場合には、既存の入力ポートを利用した簡単な構成で、操作手段の操作の操作状態に応じて出力される例えば初期化信号を導入することが可能となる。また、操作手段の操作状態をソフトウェアによる監視によって判定することができる。
【0330】
電気部品制御マイクロコンピュータが、電力供給停止時処理において変動データ記憶手段へのアクセスを禁止する処理を実行するとした場合には、電源電圧が低下していくことに伴って生ずる可能性がある異常動作に起因するバックアップ記憶が格納されている領域(例えば、RAM)の内容破壊等を確実に防止することができ、その後の電源投入時に復旧されるRAMの保存データを確実に保護することができる。
【0331】
電気部品制御マイクロコンピュータは、遊技媒体の払出を制御する払出制御マイクロコンピュータであり、変動データ記憶手段が記憶する変動データは、遊技媒体の払出数のうち払出しが完了していない未払出数を特定可能なデータを含み、操作手段からの操作信号が、払出制御マイクロコンピュータに入力されるとした場合には、貸出要求に応じて払い出される遊技媒体の未払出数や、遊技の進行に応じて払い出される遊技媒体の未払出数をバックアップ記憶することが可能となるとともに、それらのバックアップデータを電力供給再開時に初期化することも可能となる。
【図面の簡単な説明】
【図1】 パチンコ遊技機を正面からみた正面図である。
【図2】 パチンコ遊技機の裏面に設けられている各基板を示す説明図である。
【図3】 パチンコ遊技機の機構盤を背面からみた背面図である。
【図4】 機構板に設置されている中間ベースユニット周りの構成を示す正面図である。
【図5】 球払出装置を示す分解斜視図である。
【図6】 スイッチ基板が搭載された遊技盤を正面からみた例を示す正面図である。
【図7】 クリアスイッチの構成の例を示す回路図である。
【図8】 遊技制御基板(主基板)の回路構成を示すブロック図である。
【図9】 払出制御基板および球払出装置の構成要素などの賞球に関連する構成要素を示すブロック図である。
【図10】 電源基板の一構成例を示すブロック図である。
【図11】 主基板におけるCPU周りの一構成例を示すブロック図である。
【図12】 入力ポートのビット割り当ての一例を示す説明図である。
【図13】 主基板におけるCPUが実行するメイン処理を示すフローチャートである。
【図14】 バックアップフラグと遊技状態復旧処理を実行するか否かとの関係の一例を示す説明図である。
【図15】 パリティチェック処理の例を示すフローチャートである。
【図16】 2msタイマ割込処理を示すフローチャートである。
【図17】 RAMにおけるスイッチタイマの形成例を示す説明図である。
【図18】 スイッチ処理の一例を示すフローチャートである。
【図19】 スイッチチェック処理の一例を示すフローチャートである。
【図20】 賞球処理の一例を示すフローチャートである。
【図21】 賞球処理の一例を示すフローチャートである。
【図22】 賞球処理の一例を示すフローチャートである。
【図23】 スイッチオンチェック処理を示すフローチャートである。
【図24】 賞球個数減算処理の一例を示すフローチャートである。
【図25】 入力判定値テーブルの構成例を示す説明図である。
【図26】 制御コマンドのコマンド形態の一例を示す説明図である。
【図27】 制御コマンドを構成する8ビットの制御信号とINT信号との関係を示すタイミング図である。
【図28】 払出制御コマンドの内容の一例を示す説明図である。
【図29】 コマンド送信テーブルの一構成例を示す説明図である。
【図30】 遊技制御手段におけるマスク不能割込処理を示すフローチャートである。
【図31】 遊技制御手段におけるマスク不能割込処理を示すフローチャートである。
【図32】 バックアップパリティデータ作成方法を説明するための説明図である。
【図33】 遊技状態復旧処理の一例を示すフローチャートである。
【図34】 電源監視および電源バックアップのための払出制御用CPU周りの一構成例を示すブロック図である。
【図35】 入力ポートのビット割り当ての一例を示す説明図である。
【図36】 払出制御基板におけるCPUが実行するメイン処理を示すフローチャートである。
【図37】 払出制御手段におけるパリティチェック処理の例を示すフローチャートである。
【図38】 2msタイマ割込処理を示すフローチャートである。
【図39】 払出制御手段におけるRAMの一構成例を示す説明図である。
【図40】 受信バッファの一構成例を示す説明図である。
【図41】 払出制御用CPUのコマンド受信処理の例を示すフローチャートである。
【図42】 コマンド解析実行処理の例を示すフローチャートである。
【図43】 払出停止状態設定処理の例を示すフローチャートである。
【図44】 スイッチ処理の例を示すフローチャートである。
【図45】 球貸し制御処理の例を示すフローチャートである。
【図46】 球貸しカウントスイッチチェック処理の例を示すフローチャートである。
【図47】 賞球制御処理の例を示すフローチャートである。
【図48】 賞球制御処理の例を示すフローチャートである。
【図49】 賞球カウントスイッチチェック処理の例を示すフローチャートである。
【図50】 払出制御手段におけるマスク不能割込処理を示すフローチャートである。
【図51】 払出制御手段におけるマスク不能割込処理を示すフローチャートである。
【図52】 バックアップパリティデータ作成方法を説明するための説明図である。
【図53】 他の実施の形態におけるクリアスイッチの外観構成の例を示す説明図である。
【符号の説明】
31 遊技制御基板(主基板)
37 払出制御基板
54 ROM
55 RAM
56 CPU
371 払出制御用CPU
921 クリアスイッチ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a gaming machine such as a pachinko gaming machine, a coin gaming machine, or a slot machine in which a game is performed according to a player's operation, and particularly, a game is performed according to a player's operation in a gaming area on a gaming board. It relates to gaming machines.
[0002]
[Prior art]
As an example of a gaming machine, a game medium such as a game ball is launched into a game area by a launching device, and when a game medium wins a prize area such as a prize opening provided in the game area, a predetermined number of prize balls are awarded to the player There are things that will be paid out. Further, a variable display unit capable of changing the display state is provided, and is configured to give a predetermined game value to the player when the display result of the variable display unit becomes a predetermined specific display mode There is.
[0003]
The game value means that the state of the variable winning ball device provided in the gaming area of the gaming machine is advantageous for a player who is easy to win and a right to become advantageous for a player. Or a condition that the conditions for paying out premium game media are easily established.
[0004]
In the first type pachinko gaming machine having a variable display unit that displays a special symbol, the display result of the variable display unit that displays the special symbol is usually a combination of a specific display mode defined in advance. " When the big hit occurs, for example, the big winning opening is opened a predetermined number of times, and the game shifts to a big hit gaming state where the hit ball is easy to win. And in each open period, if there is a prize for a predetermined number (for example, 10) of the big prize opening, the big prize opening is closed. And the number of times the special winning opening is opened is fixed to a predetermined number (for example, 16 rounds). An opening time (for example, 29.5 seconds) is determined for each opening, and even if the number of winnings does not reach a predetermined number, the big winning opening is closed when the opening time elapses. Further, when a predetermined condition (for example, winning in the V zone provided in the big prize opening) is not established at the time when the big prize opening is closed, the big hit gaming state is ended.
[0005]
In addition, among the combinations of display modes other than the “big hit” combination, the display results that are already deterministic or temporary at the stage where some of the display results of the plurality of variable display portions are not yet derived and displayed. A state in which the display mode of the variable display unit in which “” is derived and displayed satisfies a display condition that is a combination of specific display modes is referred to as “reach”. Then, when the display result of the identification information variably displayed on the variable display section does not satisfy the condition of “big hit”, it becomes “disconnected”, and the variable display state ends. A player plays a game while enjoying how to generate a big hit.
[0006]
When a game ball wins a winning opening provided on the game board, a predetermined number of prize balls are paid out. Since the progress of the game is controlled by the game control means mounted on the main board, the number of winning balls based on the winning is determined by the game control means and transmitted to the payout control board. In the following description, the game control means and other control means control various electrical components provided in the gaming machine, so they may be referred to as electrical component control means.
[0007]
[Problems to be solved by the invention]
As described above, various electrical component control means including game control means are mounted in the gaming machine. In general, each electrical component control means includes a microcomputer. Such an electrical component control means generally performs an initialization process and starts control from an initial state when a power supply voltage rises. Then, an unexpected power interruption such as a power failure occurs, and thereafter, when the power is restored, the state returns to the initial state, which may cause a problem such as loss of the game value obtained by the player. In order to prevent such a problem from occurring, the game control is interrupted in accordance with a predetermined signal generated along with a decrease in the power supply voltage value, and the power supply to the gaming machine is stopped at that time. In particular, it may be controlled to store in a storage means (backup storage means) that is backed up and wait for the power supply to be completely stopped. Such a gaming machine resumes the game based on the saved game state when the power supply is resumed while the game state is saved in the storage means, so that a disadvantage is given to the player. Is prevented.
[0008]
However, if the control is performed such that the game is restarted based on the stored game state, the convenience of the game store where the game machine is installed may be impaired. For example, if there is a player who has given up to continue the game without waiting for the game to resume when a power outage occurs and the game can not be continued, other players can start the game from the middle of the game Therefore, it is not preferable to restore the gaming state to the state before the power failure.
[0009]
In addition, if the data required when the power supply is stopped is stored improperly when the data is stored and restored, the restored data may not match the data immediately before the power supply was stopped. There is. In such a case, it may still give the player an unexpected disadvantage.
[0010]
Therefore, the present invention can save the gaming state even if the gaming machine is powered off due to a power failure or the like, and can also improve the convenience of gaming machine operation at the gaming store, An object of the present invention is to provide a gaming machine that can reliably use stored data after power is restored.
[0011]
[Means for Solving the Problems]
A gaming machine according to the present invention is a gaming machine in which a player can perform a predetermined game, Game medium detecting means for detecting a game medium; An electrical component control microcomputer that executes processing for controlling electrical components provided in the gaming machine, and a variation data storage means (for example, RAM) that stores variation data generated when the electrical component control microcomputer performs control ) And operation means (for example, a clear switch 921) that outputs an operation signal in response to an operation, and stored data (power supply) immediately before the power supply is stopped even if power supply to the gaming machine is stopped Storage content holding means capable of holding (meaning the content of the final control state immediately before the power supply is stopped) stored when the game is interrupted by stopping A first detection when a predetermined power source used in the gaming machine is monitored and it is detected that the voltage of the power source has dropped to a predetermined voltage that is higher than the voltage supplied to the game medium detecting means. The first power supply monitoring means for outputting a signal and the same power supply as the power supply monitored by the first power supply monitoring means are monitored, and the voltage of the power supply outputs the first detection signal by the first power supply monitoring means. A second power supply monitoring means for outputting a second detection signal when the detection voltage is lower than the predetermined voltage and higher than the drive power supply voltage of the electric component control microcomputer, Electric component control microcomputer In response to the input of the first detection signal, Information indicating that the stored contents are stored in the fluctuation data storage means is saved in the fluctuation data storage means, and check data used for determining whether or not the storage contents of the fluctuation data storage means are normal is also generated. Whether or not an operation signal from the operation means is input only when power supply stop processing execution means for executing power supply stop processing to be stored in the storage means and when power supply to the gaming machine is started. When it is determined that an operation signal is input from the operation means, an initialization means for executing an initialization process for initializing the storage contents of the variation data storage means and an operation signal from the operation means are input. Confirm that the information is stored in the fluctuation data storage means on the condition that it is not determined that the information is stored, and confirm that the information is saved in the fluctuation data storage means On the basis of the check data in the fluctuation data storage means held by the storage content holding means, and whether or not the storage contents are normal is determined. Return means for returning to the state. Therefore, the electric component control microcomputer is stopped in response to the input of the second detection signal. It is characterized by this.
[0015]
Electrical component control Microcomputer Is provided with an input port for acquiring a predetermined signal, and operating means from It is preferable that an operation signal (for example, a clear switch signal) is input to the input port.
[0018]
Processing execution means when power supply is stopped It is preferable to execute a process for prohibiting access to the variable data storage means in the process of stopping power supply.
[0019]
Electrical component control Microcomputer Payout control to control the payout of game media Microcomputer The variation data stored in the variation data storage means includes data that can identify the number of unpaid out of the payout number of game media that has not been paid out. from Operation signal is payout control Microcomputer May be input.
[0022]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
First, the overall configuration of a pachinko gaming machine that is an example of a gaming machine will be described. FIG. 1 is a front view of the
[0023]
As shown in FIG. 1, the
[0024]
Near the center of the
[0025]
An open /
[0026]
The
[0027]
In this example, a prize ball lamp 51 that is lit when there is a remaining number of prize balls is provided in the vicinity of one
[0028]
The
[0029]
The hit ball fired from the hit ball launching device enters the
[0030]
The rotation of the image in the
[0031]
When the combination of images in the
[0032]
Next, each board | substrate arrange | positioned at the back surface of the
As shown in FIG. 2, on the back surface of the
[0033]
On the back side of the gaming machine, there are installed a variable
[0034]
In addition, a
[0035]
Further, in FIG. 2, signals from the
[0036]
FIG. 3 is a rear view of the mechanism plate of the
[0037]
The game balls paid out from the
[0038]
A lot of prize balls based on the winnings are paid out, the hitting
[0039]
Next, the configuration of the intermediate base unit installed on the
[0040]
A
[0041]
The ball break switches 187a and 187b are locked by locking pieces 188 at positions where it can be detected that about 27 to 28 game balls are present in the
[0042]
The central portion of the
[0043]
Below the
[0044]
FIG. 5 is an exploded perspective view of the
[0045]
As shown in FIG. 5, the
[0046]
The
[0047]
In addition, below the ball
[0048]
[0049]
A recess is formed at the tip of the
[0050]
In other words, the payout motor position sensor including the
[0051]
When the
[0052]
As shown in FIG. 4, a
[0053]
In this way, by providing the
[0054]
In this embodiment, a
[0055]
FIG. 6 is a front view showing an example of the
[0056]
FIG. 7 is a circuit diagram showing an example of a circuit configuration of the
[0057]
FIG. 8 is a block diagram illustrating an example of a circuit configuration in the
[0058]
Further, according to the data given from the basic circuit 53, the jackpot information indicating the occurrence of the jackpot, the effective starting information indicating the number of starting winning balls used for starting the image display of the
[0059]
The basic circuit 53 includes a
[0060]
Further, the
[0061]
A ball hitting device for hitting and launching a game ball is driven by a
[0062]
In this embodiment, the lamp control means mounted on the
[0063]
FIG. 9 is a block diagram showing components related to payout, such as components of the
[0064]
The CPU 56 of the
[0065]
Further, the detection signal from the prize
[0066]
When there is a winning, a payout control command indicating the number of winning balls is input to the
In this embodiment, the
[0067]
In the
[0068]
The
[0069]
Further, a detection signal from the ball lending
[0070]
The
[0071]
A ball lending switch signal and a return switch signal are given from the
[0072]
When the power of the
[0073]
Then, the
[0074]
As described above, all signals from the
[0075]
In this embodiment, the case where the
[0076]
FIG. 10 is a block diagram illustrating a configuration example of the
[0077]
The transformer 911 converts AC voltage from the AC power source into 24V. The AC 24V voltage is output to the connector 915. The rectifier circuit 912 also generates a DC voltage of +30 V from AC 24 V and outputs it to the DC-DC converter 913 and the connector 915. The DC-DC converter 913 includes one or a plurality of converter ICs 922 (only one is shown in FIG. 10), generates + 21V, + 12V, and + 5V based on VSL and outputs the generated voltages to the connector 915. The connector 915 is connected to, for example, a relay board, and power of a voltage necessary for each electric component control board and the mechanism component is supplied from the relay board.
[0078]
However, each connector reaching each electric component control board may be provided on the
[0079]
The + 5V line from the DC-DC converter 913 branches to form a backup + 5V line. A large-capacitance capacitor 916 is connected between the backup + 5V line and the ground level. The capacitor 916 is in a storage state with respect to the backup RAM of the electrical component control board when the power supply to the gaming machine is cut off (a RAM that is backed up, that is, a backup storage means that can be in a storage content holding state even when the power supply is stopped). It becomes a backup power supply that supplies power so that it can be maintained. Further, a backflow preventing diode 917 is inserted between the + 5V line and the backup + 5V line. In this embodiment, + 5V for backup is supplied to the
[0080]
A battery that can be charged from a + 5V power supply may be used as the backup power supply. In the case of using a battery, a rechargeable battery is used in which the capacity disappears when a state in which no power is supplied from the +5 V power source continues for a predetermined time.
[0081]
Further, a power
[0082]
The predetermined value for the
[0083]
Therefore, when the voltage of the + 12V power supply decreases, the switch output becomes in the on state. However, if the power supply interruption is recognized by monitoring the + 30V power supply voltage that decreases faster than + 12V, the power supply is turned on before the switch output shows the on state. It is possible to enter a state of waiting for recovery and not detect switch output.
[0084]
Further, since the
[0085]
In the configuration shown in FIG. 10, the detection output (power cut-off signal) of the
[0086]
FIG. 11 is a block diagram illustrating a configuration example around the CPU 56 in the
[0087]
FIG. 11 also shows a system reset circuit 65. When the power is turned on, the
[0088]
As shown in FIG. 11, the reset signal from the
[0089]
For example, the detection voltage of the power supply monitoring circuit (the voltage that outputs the power-off signal) is + 22V, and the detection voltage for setting the reset signal to low level is + 9V. In such a configuration, since the power supply monitoring circuit and the system reset circuit 65 monitor the voltage of the same power supply VSL, the timing at which the voltage monitoring circuit outputs a power-off signal and the system reset circuit 65 reset the system. It is possible to reliably set the difference in timing for outputting the signal within a desired predetermined period. The desired predetermined period is a period from the start of the power supply stop process in response to the power-off signal from the power supply monitoring circuit until the completion of the power supply stop process.
[0090]
While power is not supplied from the + 5V power source that is the driving power source of the CPU 56 or the like, at least a part of the RAM is backed up by the backup power source supplied from the power supply board, and the contents are preserved even if the power source for the gaming machine is cut off. The When the +5 V power supply is restored, a reset signal is issued from the system reset circuit 65, so that the CPU 56 returns to a normal operation state. At that time, since necessary data is stored in the backup RAM, it is possible to return to the gaming state at the time of occurrence of the power failure when recovering from the power failure.
[0091]
In the configuration shown in FIG. 11, two reset signals (low level signals) are given to the reset terminal of the CPU 56 when the power is turned on, but the reset is reliably released even if the reset signal rises only once. When the CPU is used, the circuit elements denoted by
[0092]
The CPU 56 used in this embodiment also incorporates an I / O port (PIO) and a timer / counter circuit (CTC). The PIO has 4 bits PB0 to PB3 and 1 byte port PA0 to PA7. The ports PB0 to PB3 and PA0 to PA7 can be set to either input / output.
[0093]
Also, as shown in FIG. 11, the output signal of the
[0094]
FIG. 12 is an explanatory diagram showing bit assignment of input ports in this embodiment. As shown in FIG. 12, the winning
[0095]
Next, the operation of the gaming machine will be described.
FIG. 13 is a flowchart showing main processing executed by the CPU 56 on the
[0096]
In the initial setting process, the CPU 56 first sets the interrupt prohibition (step S1). Next, the interrupt mode is set to interrupt mode 2 (step S2), and a stack pointer designation address is set to the stack pointer (step S3). Then, the built-in device register is initialized (step S4). Further, after initialization (step S5) of CTC (counter / timer) and PIO (parallel input / output port) which are built-in devices (built-in peripheral circuits), the RAM is set in an accessible state (step S6).
[0097]
The CPU 56 used in this embodiment has the following three types of maskable interrupt (INT) modes. When a maskable interrupt occurs, the CPU 56 automatically sets the interrupt disabled state and saves the contents of the program counter in the stack.
[0098]
Interrupt mode 0: The built-in device that has issued the interrupt request sends an RST instruction (1 byte) or a CALL instruction (3 bytes) onto the internal data bus of the CPU. Therefore, the CPU 56 executes the instruction at the address corresponding to the RST instruction or the address specified by the CALL instruction. At reset, the CPU 56 automatically enters interrupt
[0099]
Interrupt mode 1: In this mode, when an interrupt is accepted, the mode always jumps to address 0038 (h).
[0100]
Interrupt mode 2: A mode in which the address synthesized from the value (1 byte) of the specific register (I register) of the CPU 56 and the interrupt vector (1 byte: least significant bit 0) output by the built-in device indicates the interrupt address It is. That is, the interrupt address is an address indicated by 2 bytes in which the upper address is the value of the specific register and the lower address is the interrupt vector. Therefore, an interrupt process can be set at an arbitrary address (although it is skipped). Each built-in device has a function of sending an interrupt vector when making an interrupt request.
[0101]
Therefore, when the interrupt
[0102]
Next, the CPU 56 checks the state of the output signal of the
[0103]
If the
[0104]
In this embodiment, whether or not there is backup data in the backup RAM area is confirmed by the state of the backup flag set in the backup RAM area when the power is turned off. In this example, as shown in FIG. 14, if “55H” is set in the backup flag area, it means that there is a backup (ON state), and if a value other than “55H” is set, there is no backup (OFF). State).
[0105]
After confirming that there is a backup, the CPU 56 performs a data check of the backup RAM area (parity check in this example).
[0106]
FIG. 15 is a flowchart illustrating an example of the parity check process in step S9. In the parity check process, the CPU 56 first checks whether the data set in the backup parity data area in the RAM 55 is “00” (step S9a). The backup parity data area will be described in detail later. If the data set in the backup parity data area is not “00”, a parity diagnosis (checksum confirmation) is performed (step S9b). If the result of the checksum confirmation is valid (step S9c), the CPU 56 executes a power failure recovery process described later (step S10). If the result of the checksum confirmation is not valid or if the data set in the backup parity data area is “00”, normal initialization processing is executed (steps S11 to S15). .
[0107]
In the case of recovery after an unexpected power failure, the data in the backup RAM area should have been saved, so the check result is normal. If the check result is not normal, the internal state cannot be returned to the state at the time of power-off, and therefore an initialization process that is executed when the power is turned on not at the time of power failure recovery is executed.
[0108]
If the check result is normal (step S9), the CPU 56 performs a game state restoration process for returning the internal state of the game control means and the control state of the electric component control means such as the display control means to the state when the power is cut off. (Step S10). Then, the saved value of the PC (program counter) stored in the backup RAM area is set in the PC, and the address is restored.
[0109]
In this embodiment, the presence / absence of backup data is confirmed when the
[0110]
In this embodiment, after the presence or absence of backup data is confirmed in step S8, the backup area is checked in step S9 when backup data exists. Conversely, the check result of the backup area is After it is confirmed that the data is normal, the presence / absence of backup data may be confirmed. Further, it may be determined whether or not to execute the power failure recovery processing by confirming either one of the presence / absence of backup data or the check of the backup area.
[0111]
Further, for example, in the parity check (step S9) when determining whether or not to execute the power failure recovery process, that is, when determining whether or not to restore the gaming state, a special process in the stored RAM data If it is confirmed that the gaming machine is in a game standby state (not changing in design, not in big hit game, not in probable change, or without starting prize memory) by flag or the like and starting winning memory data The initialization process may be executed without performing the game state restoration process.
[0112]
As described above, it is determined whether or not to restore the gaming state at the time of power-off according to the operation state of the
[0113]
Further, as described above, in this embodiment, when power supply is started, initialization processing or game state restoration processing is performed based on check data (checksum data) stored in the backup RAM area when power supply is stopped. Because it is configured to determine whether to perform the operation, it is possible to reliably save the necessary data when an unexpected power failure such as a power failure occurs, and to use the saved data after the power is restored can do.
[0114]
It should be noted that, when the backup data is not stored in the fluctuation data storage means when the power is turned on, and the
[0115]
In the above-described embodiment, the normal initialization process is executed when the checksum confirmation result is not valid. However, the checksum confirmation result is not valid. Also, the initialization process may not be performed.
[0116]
For example, if the result of the checksum confirmation is not valid, the game state recovery process may be performed after the stored contents of the backup RAM are restored without executing the initialization process. In this case, for example, an error correction code (for example, a Hamming code used for countermeasures against random errors or a Fire code used for countermeasures against burst errors may be selected according to error characteristics) for data restoration. Thus, the changed bits may be detected and corrected.
[0117]
Further, for example, when the result of the checksum confirmation is not valid, it may be notified that an abnormality has occurred in the stored contents of the backup RAM without executing the initialization process. In this case, the abnormality notification is performed by, for example, displaying the occurrence of an abnormality on the
[0118]
Further, for example, when the result of the checksum confirmation is not valid, notification for prompting the execution request for the initialization process may be performed by operating the
[0119]
In the initialization process, the CPU 56 first performs a RAM clear process (step S11). Also, initial value setting processing is performed for setting initial values in predetermined work areas (for example, a normal symbol determination random number counter, a normal symbol determination buffer, a special symbol left middle right symbol buffer, a payout command storage pointer, etc.). Further, processing for initializing the sub-boards (
[0120]
Then, a CTC register set in the CPU 56 is set so that a timer interrupt is periodically generated every 2 ms (step S14). That is, a value corresponding to 2 ms is set in a predetermined register (time constant register) as an initial value. Since the interruption is prohibited in step S1 of the initial setting process, the interruption is permitted before the initialization process is completed (step S15).
[0121]
In this embodiment, the built-in CTC of the CPU 56 is set to repeatedly generate a timer interrupt. In this embodiment, the repetition period is set to 2 ms. When a timer interrupt occurs, as shown in FIG. 16, the CPU 56 sets, for example, a timer interrupt flag indicating that a timer interrupt has occurred (step S12).
[0122]
When the execution of the initialization process (steps S11 to S15) is completed, the main process shifts to a loop process in which it is confirmed whether or not a timer interrupt has occurred (step S17). In the loop, display random number update processing (step S16) is also executed.
[0123]
When the CPU 56 recognizes that a timer interrupt has occurred in step S17, it executes the game control process of steps S21 to S31. In the game control process, the CPU 56 first inputs the states of the switches such as the
[0124]
Next, various abnormality diagnosis processes are performed by the self-diagnosis function provided in the
[0125]
Next, a process of updating each counter indicating each determination random number such as a big hit determination random number used for game control is performed (step S23). The CPU 56 further performs a process of updating a display random number such as a random number that determines the type of stop symbol (step S24).
[0126]
Further, the CPU 56 performs special symbol process processing (step S25). In the special symbol process control, corresponding processing is selected and executed according to a special symbol process flag for controlling the
[0127]
Next, the CPU 56 performs a process of setting a display control command related to the special symbol in a predetermined area of the RAM 55 and sending the display control command (special symbol command control process: step S27). In addition, a display control command related to the normal symbol is set in a predetermined area of the RAM 55, and a process of sending the display control command is performed (normal symbol command control process: step S28).
[0128]
Further, the CPU 56 performs information output processing for outputting data such as jackpot information, start information, probability variation information supplied to the hall management computer, for example (step S29).
[0129]
Further, the CPU 56 issues a drive command to the
[0130]
Then, the CPU 56 executes a prize ball process for setting the number of prize balls based on the detection outputs of the
[0131]
With the above control, in this embodiment, the game control process is started every 2 ms. In this embodiment, in the timer interrupt process, for example, only a flag indicating that an interrupt has occurred is set, and the game control process is executed in the main process, but the game control process is performed in the timer interrupt process. May be executed.
[0132]
In addition, the main process includes a process for determining whether or not to shift to the game control process, and whether or not the CPU 56 should shift to the game control process by the timer interrupt process based on the timer interrupt generated periodically. Since the flag for determining whether or not is set or the like, all of the game control processing is surely executed. In other words, until all the game control processes are executed, it is not determined whether or not to shift to the next game control process, so it is guaranteed that all the processes in the game control process are completed. ing.
[0133]
As described above, in this embodiment, the interrupt
[0134]
Next, a specific example of the switch process (step S21) in the main process will be described. In this embodiment, when the ON state of the detection signal continues for a predetermined time, it is certainly determined that the switch is turned on, and processing corresponding to the switch on is started. A switch timer is used to measure the predetermined time. The switch timer is a 1-byte counter formed in the backup RAM area, and is incremented by 1 every 2 ms when the detection signal indicates an ON state. As shown in FIG. 17, the switch timer is provided by the number N of detection signals. In this embodiment, N = 12. Note that N = 12 (not 13) because the switch timer corresponding to the output signal of the
[0135]
FIG. 18 is a flowchart illustrating a processing example of the switch process in step S21 in the game control process. The switch process is first executed in the game control process as shown in FIG. In the switch process, the CPU 56 first inputs data input to the input port 0 (step S71). Next, “8” is set as the number of processes (step S72), and the address of the switch timer for the winning
[0136]
FIG. 19 is a flowchart showing a switch check processing subroutine. In the switch check processing subroutine, the CPU 56 sets port input data, in this case, input data from the
[0137]
If the value of the carry flag is “1” (step S85), that is, if the detection signal of the winning
[0138]
If the value of the carry flag is “0”, that is, if the detection signal of the winning
[0139]
Thereafter, the CPU 56 adds 1 to the pointer (switch timer address) (step S90) and subtracts 1 from the number of processes (step S91). If the number of processes is not 0, the process returns to step S82. Then, the processes in steps S82 to S92 are repeated.
[0140]
The processes of steps S82 to S92 are repeated for the number of processes, that is, eight times, and during that time, the detection signal of the switch input to the 8 bits of the
[0141]
The CPU 56 inputs the data input to the
[0142]
In the switch check processing subroutine, since the above-described processing is executed, the processing of steps S82 to S92 is repeated for the number of processing, that is, four times, and the detection signal of the switch input to the 4 bits of the
[0143]
In this embodiment, since the game control process is started every 2 ms, the switch process is also executed once every 2 ms. Therefore, the switch timer is incremented by 1 every 2 ms.
[0144]
20 to 22 are flowcharts showing an example of the prize ball process in step S31 in the game control process. In this embodiment, in the prize ball processing, it is determined whether or not the
[0145]
In the prize ball process, the CPU 56 sets “0” as the offset of the input determination value table (step S121), and sets “0” as the offset of the address of the switch timer (step S122). The offset “0” in the input determination value table means that the first data in the input determination value table is used. Also, since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the switch timer address offset “0” designates the switch timer corresponding to the winning
[0146]
The input determination value table is a ROM area in which a determination value for determining that the switch has been turned on when it is detected how many times it is continuously turned on is set for each switch. A configuration example of the input determination value table is shown in FIG. As shown in FIG. 25, the input determination value table includes “2”, “50”, “250”, “30”, “250”, “1” in order from the top, that is, in order from the smallest address value. The judgment value is set. In the switch-on check routine, the judgment value set at the address determined by the head address and the offset value in the input judgment value table is compared with the value of the switch timer determined by the head address and the offset value of the switch timer. If they match, for example, a switch-on flag is set.
[0147]
An example of a switch-on check routine is shown in FIG. In the switch-on check routine, the CPU 56 sets the head address of the input determination value table (see FIG. 25) (step S101). Then, an offset is added to the address (step S102), and a switch-on determination value is loaded from the address after the addition (step S103).
[0148]
Next, the CPU 56 sets the start address of the switch timer (step S104), adds an offset to the address (step S105), and loads the value of the switch timer from the address after the addition (step S106). Since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the value of the switch timer corresponding to the switch is loaded.
[0149]
Then, the CPU 56 compares the loaded switch timer value with the switch-on determination value (step S107). If they match, a switch-on flag is set (step 108).
[0150]
In this case, in the switch-on check routine, the switch-on flag is set if the value of the switch timer corresponding to the winning
[0151]
Next, the CPU 56 sets “0” as the offset of the input determination value table (step S130), and sets “4” as the offset of the switch timer address (step S131). The offset “0” in the input determination value table means that the first data in the input determination value table is used. Also, since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the switch timer address offset “4” designates the switch timer corresponding to the
[0152]
In the switch-on check routine, if the value of the switch timer corresponding to the
[0153]
Next, the CPU 56 sets “0” as the offset of the input determination value table (step S135), and sets “5” as the offset of the switch timer address (step S136). The offset “0” in the input determination value table means that the first data in the input determination value table is used. Also, since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the offset “5” of the switch timer address indicates that the switch timer corresponding to the
[0154]
In the switch-on check routine, if the value of the switch timer corresponding to the
[0155]
Further, the CPU 56 sets “1” as the offset of the input determination value table (step S150), and sets “9” as the offset of the switch timer address (step S151). The offset “1” in the input determination value table means that the second data “50” in the input determination value table is used. Further, since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the switch timer address offset “9” designates the switch timer corresponding to the
[0156]
In the switch-on check routine, if the value of the switch timer corresponding to the
[0157]
Further, the CPU 56 sets “2” as the offset of the input determination value table (step S156), and sets “0A (H)” as the offset of the switch timer address (step S157). The offset “2” in the input determination value table means that the third data “250” in the input determination value table is used. Further, since the switch timers are arranged in the same order as the bit order of the input ports shown in FIG. 12, the switch timer address offset “0A (H)” is designated by the switch timer corresponding to the ball break
[0158]
In the switch-on check routine, if the value of the switch timer corresponding to the ball-
[0159]
Then, the CPU 56 confirms whether or not the payout is stopped (step S201). The payout stop state is a state after a payout stop state designation command is sent to the
[0160]
When any of them changes to the on state, a command transmission control process related to designation of the payout stop state is performed (step S203). In the command transmission control process, after predetermined data is set in the command transmission table for the payout control command, the payout control command sending process is executed. In step S202, when one of the flags is already on and the other flag is on, the command transmission control process (step S203) is not performed.
[0161]
If it is in the payout stop state, it is checked whether both the ball-out state flag and the full tank flag are turned off (step S204). When both are turned off, command transmission control processing relating to designation of canceling the payout stop is performed (step S205).
[0162]
Next, the CPU 56 sets a payout control command related to the number of winning balls according to the winning in the command transmission table, and performs control to send out a payout control command according to the set content. First, the value of the 15 counter is checked (step S221). As described above, the 15 counter is counted up when the game ball wins the big winning opening and the
[0163]
The total winning ball number storage buffer is a buffer for storing a cumulative value of the number of winning balls instructed to the payout control means (however, subtracted when paying out), and is formed in the backup RAM.
[0164]
If the value of the 15 counter is 0, the value of the 10 counter is checked (step S225). As described above, the 10 counter is counted up when a game ball wins a winning opening and the winning
[0165]
If the value of the 10 counter is 0, the value of the 6 counter is checked (step S231). As described above, the six counter is counted up when the game ball wins the start winning opening and the
[0166]
As described above, when a payout control command for instructing the number of prize balls is to be output from the game control means to the
[0167]
FIG. 24 is a flowchart illustrating an example of the winning ball number subtraction process. In the winning ball number subtraction process, the CPU 56 first loads the stored value of the total winning ball number storage buffer (step S241). Then, it is confirmed whether or not the stored value is 0 (step S242). If 0, the process ends.
[0168]
If it is not 0, the switch timer for the prize ball count switch is loaded (step S243), and the load value is compared with the ON determination value (in this case, “2”) (step S244). If they match (step S245), it is assumed that the prize
[0169]
Also, the value of the prize ball information counter is incremented by 1 (step S247). If the value of the prize ball information counter is 10 or more (step S248), the value of the prize ball information output counter is incremented by 1 (step S249), and the value of the prize ball information counter is incremented by -10 (step S250). Note that the value of the prize ball information output counter is referred to in the information output process (step S29) in the main process shown in FIG. 13, and if the value is 1 or more, one pulse is output as the prize ball signal. . Therefore, in this embodiment, each time ten game balls are paid out as prize balls, one prize ball signal is output to the outside of the gaming machine.
[0170]
When the stored value of the total prize ball number storage buffer becomes 0 (step S251), the prize ball paying-in flag is cleared (step S252), and a lamp control command is issued to notify that there is no prize ball remaining number. After command data indicating that the prize ball lamp 51 is extinguished is set in the command transmission table (step S253), a lamp control command sending process is executed (step S254).
[0171]
Next, a method for sending a control command from the game control means to each electric component control means will be described. FIG. 26 is an explanatory diagram showing an example of a command form of a control command sent from the
[0172]
FIG. 27 is a timing chart showing the relationship between an 8-bit control signal and an INT signal (strobe signal) that constitute a control command from the game control board to each of the other electrical component control boards. As shown in FIG. 27, when a predetermined period elapses after MODE or EXT data is output to the output port, the CPU 56 turns on an INT signal that is a signal indicating data output. Further, when a predetermined period has elapsed from that point, the INT signal is turned off.
[0173]
FIG. 28 is an explanatory diagram showing an example of the contents of the payout control command. In the example shown in FIG. 28, the command FF00 (H) with MODE = FF (H) and EXT = 00 (H) is a payout control command for designating a payout enabled state. A command FF01 (H) with MODE = FF (H) and EXT = 01 (H) is a payout control command for designating a payout stop state. A command F0XX (H) with MODE = F0 (H) is a payout control command for designating the number of winning balls. “XX”, which is EXT, indicates the number of payouts.
[0174]
When the payout control means receives the payout control command of FF01 (H) from the game control means of the
[0175]
The payout control command is sent only once so that the payout control means can recognize it. In this example, “recognizable” means that the INT signal is turned on, and “recognizable only once” means that in this example, each of the first and second bytes of the payout control signal is sent. In response, the INT signal is turned on only once.
[0176]
When a control command is to be output from the game control means to each electrical component control board such as a payout control board, the command transmission table is set. FIG. 29A is an explanatory diagram showing a configuration example of the command transmission table. One command transmission table is composed of 3 bytes, and INT data is set in the first byte. In the
[0177]
Although the EXT data itself may be set in the area of the
[0178]
FIG. 29B is an explanatory diagram illustrating a configuration example of INT data.
[0179]
[0180]
When a control command for each electric component control board is output to the corresponding output port (
[0181]
FIGS. 30 and 31 are flowcharts showing a processing example of a non-maskable interrupt process (power supply stop process) executed in response to a power-off signal from the
[0182]
In the power supply stop process, the CPU 56 saves the AF register (accumulator and flag register) in a predetermined backup RAM area (step S451). Further, the interrupt flag is copied to the parity flag (step S452). The parity flag is formed in the backup RAM area. Also, the BC register, DE register, HL register, IX register, and stack pointer are saved in the backup RAM area (steps S454 to S458). When the power is restored, the register contents are restored based on the saved contents, and the interrupt permission / prohibition state is internally set according to the contents of the parity flag.
[0183]
When each register and stack pointer are saved in the backup RAM area, the backup specified value (in this example, “55H”) is stored in the backup flag (step S481). The backup flag is formed in the backup RAM area. Next, parity data is created (steps S482 to S491). That is, first, the clear data (00) is set in the checksum data area (step S482), and the checksum calculation start address is set in the pointer (step S483). Also, the number of checksum calculations is set (step S484).
[0184]
Then, an exclusive OR between the contents of the checksum data area and the contents of the RAM area pointed to by the pointer is calculated (step S485). The calculation result is stored in the checksum data area (step S486), the pointer value is incremented by 1 (step S487), and the checksum calculation count value is decremented by 1 (step S488). The processing of steps S485 to S488 is repeated until the value of the checksum calculation count becomes 0 (step S489).
[0185]
When the value of the checksum calculation count becomes 0, the CPU 56 inverts the value of each bit of the contents of the checksum data area (step S490). Then, the inverted data is stored in the checksum data area (step S491). This data becomes parity data to be checked when the power is turned on.
[0186]
FIG. 32 is an explanatory diagram for explaining a backup parity data creation method. However, in the example shown in FIG. 32, the size of the data in the backup data RAM area is 3 bytes for simplicity. In the example shown in FIG. 32, 3 is set as the checksum calculation count in step S484. In the power failure generation process based on the power supply voltage drop, as shown in FIG. 32A, initial data (00H in this example) is set in the backup check data area. Next, the exclusive OR of “00H” and the checksum calculation start address (“F0H” in this example) is taken, and the result and the contents of the RAM area pointed to by the next pointer (“16H” in this example) Exclusive OR is taken. Further, the exclusive OR of the result and the contents of the RAM area pointed to by the next pointer (“DFH” in this example) is taken. Then, data (“C6H” in this example) obtained by inverting the result (“39H” in this example) is set in the backup parity data area.
[0187]
When the power is turned on again, parity diagnosis is performed in the checksum confirmation process (step S9b). FIG. 32B is an explanatory diagram showing an example of parity diagnosis. If all the data in the backup area is stored as it is, data as shown in FIG. 32A is set in the backup area when the power is turned on again.
[0188]
In the processing of step S51, the CPU 56 uses the data set in the backup parity data area of the backup RAM area (in this example, “C6H”) as initial data, and data obtained by inverting the initial data (in this example, “39H”). Are used to sequentially obtain exclusive OR for each data in the backup data area. If all the data in the backup area is stored as it is, the final calculation result matches “00H”, that is, the data set in the backup check data area. If a bit error has occurred in the data in the backup RAM area, the final calculation result is not “00H”.
[0189]
Therefore, the CPU 56 compares the final calculation result with the data set in the backup check data area in the parity check process (check sum confirmation process), and if they match, the parity diagnosis is normal. If they do not match, the parity diagnosis is abnormal.
[0190]
Thus, in this embodiment, in the parity check processing shown in FIG. 15, when the data set in the backup parity data area is not “00”, the checksum confirmation processing is performed (steps S9a and S9b). ) If the data set in the backup parity data area is “00”, a power failure recovery process is performed.
[0191]
In this embodiment, the parity diagnosis is performed as shown in FIG. 32B in the parity diagnosis in the checksum confirmation process (step S9b). However, the parity diagnosis is the same as in FIG. You may make it perform the process of. That is, in the parity diagnosis, the same calculation process as that for parity data creation may be performed. In this case, in the parity check process (checksum confirmation process), the CPU 56 compares the final calculation result with the data set in the backup check data area (in this case, “00”), and if they match, The parity diagnosis is normal. If they do not match, the parity diagnosis is abnormal. In the parity diagnosis, since the same calculation as that for creating parity data is performed, it is not necessary to set initial data.
[0192]
Next, an access prohibition value is set in the RAM access register (step S492). Thereafter, the built-in RAM 55 cannot be accessed.
[0193]
In this embodiment, the RAM area in which data used in the game control process is stored is all backed up. Therefore, the checksum generation process indicating whether or not the contents are correctly stored and the RAM access prevention process for preventing the contents from being rewritten correspond to the process for storing the gaming state.
[0194]
When processing for prohibiting access to the internal RAM 55 is executed, the CPU 56 enters a standby state (loop state). Therefore, nothing is done until the system is reset.
[0195]
In this embodiment, the power supply stop process is executed according to the NMI. However, the power supply stop signal is connected to the maskable terminal of the CPU 56 and the power supply stop process is executed by the maskable interrupt process. May be. Alternatively, a power-off signal may be input to the input port and the power supply stop process may be executed according to the input port check result.
[0196]
Hereinafter, the gaming state restoration process will be described.
FIG. 33 is a flowchart showing an example of the gaming state recovery process shown in step S10 of FIG. In this example, the CPU 56 restores the value stored in the backup RAM to each register (step S91). Based on the data stored in the backup RAM, the gaming state at the time of power failure is confirmed and returned (step S92). Therefore, based on the data stored in the backup RAM, the number of starting winning memories, the big hit gaming state (including the number of rounds, the count, the presence / absence of V detection, etc., when the big hit is being made), the probability variation state (probability variation) If it is in the middle, for example, when the upper limit of the number of rotations of the special symbol is defined as the end condition of the probability variation state (including the number of rotations up to the present in the case of the number cut), the gaming state is restored. . In addition, according to the values of the special symbol process flag and the normal symbol process flag that were saved even when the power was turned off, the control commands corresponding to the progress status of the special symbol process and the progress status of the normal symbol process when the power was turned off, This is sent to the
[0197]
As described above, in the game state restoration process, the state of various electrical components is restored according to the restored internal state, and control is performed on the
[0198]
In this embodiment, when the gaming state is restored to the power-off state, the CPU 56 returns the value of the parity flag stored in the backup RAM in order to restore the interrupt enable / disable state at the previous power-off. Is confirmed (step S95). If the parity flag is off, interrupt permission is set (step S96). However, if the parity flag is in the on state, the gaming state restoration process is terminated as it is (while keeping the interrupt prohibited state set in step S1). The fact that the parity flag is in an ON state means that the interrupt was prohibited when the power was last turned off as shown in step S452 in FIG. Therefore, when the parity flag is in the on state, no interrupt is permitted.
[0199]
In this embodiment, the following state recovery is possible by the gaming state recovery process described above.
[0200]
The states of the
[0201]
When the power is cut off during the change of the special symbol, information on the change time (for example, 10 seconds) of the variable display pattern and the already executed time (for example, 4 seconds) is backed up. Then, at the time of recovery, the
[0202]
Even if the power is cut off during the big hit game, the remaining time of the interval during the round or between rounds is displayed at the time of recovery, as in the case of the power off during the special symbol change described above. The
[0203]
The display states of the
[0204]
The sound generation state controlled by the sound control means is restored except when the special symbol is changing and the big hit game is being played. However, if the game is a big hit game when the power is turned off, it can be restored to the initial state of each control section. When the power is cut off during the special symbol fluctuation, the sound generation state is controlled for the remaining time in the same manner as the display control of the
[0205]
In this embodiment, a control command for restoring the state is sent from the game control means of the
[0206]
Further, as will be described later, since the payout control means mounted on the
[0207]
In the above embodiment, the case where the data storage process and the restoration process are performed in the game control means has been described, but part of the RAM in the payout control means, the sound control means, the lamp control means, and the display control means is also included. The power supply is backed up, and the payout control means, the display control means, the sound control means, and the lamp control means may perform the processing as described above. However, the payout control means, the display control means, the sound control means, and the lamp control means do not need to perform command transmission processing at the time of recovery.
[0208]
Next, as an example of the case where the data storage process and the recovery process are performed in the electrical component control means other than the game control means, the case where the data storage and recovery is performed in the payout control means will be described.
[0209]
FIG. 34 is a block diagram showing an example of the configuration around the
[0210]
The INT signal from the
[0211]
Although the system reset circuit 975 is also mounted on the
[0212]
The predetermined value for the
[0213]
While power is not supplied from the + 5V power supply, at least a part of the built-in RAM of the
[0214]
As shown in FIG. 34, the output signal of the
[0215]
In the configuration shown in FIG. 34, the system reset circuit 975 outputs a low level during a period determined by the capacitance of the capacitor when the power is turned on, and then outputs a high level. That is, the reset release timing is only once. However, as in the case of the
[0216]
FIG. 35 is an explanatory diagram showing bit assignment of input ports in this embodiment. As shown in FIG. 35, the input port A (
[0217]
FIG. 36 is a flowchart showing main processing of the
[0218]
In this embodiment, one channel of the built-in CTC is used in the timer mode. Accordingly, in the built-in device register setting process in step S704 and the process in step S705, register setting for setting the channel to be used to timer mode, register setting for permitting interrupt generation, and setting an interrupt vector. The register is set. The interrupt by the channel is used as a timer interrupt. For example, when it is desired to generate a timer interrupt every 2 ms, a value corresponding to 2 ms is set as an initial value in a predetermined register (time constant register).
[0219]
The interrupt vector set for the channel set to the timer mode (
[0220]
Further, another channel (
[0221]
The interrupt vector set in the channel (channel 2) set in the counter mode corresponds to the head address of the command reception interrupt process described later. Specifically, the start address of the command reception interrupt process is specified by the value set in the I register and the interrupt vector.
[0222]
In this embodiment, the
[0223]
The interrupt based on the count-up of the CTC channel 2 (CH2) is an interrupt that occurs when the value of the timer counter register CLK / TRG2 described above becomes “0”. Therefore, for example, in step S705, the initial value “1” is set in the timer counter register CLK / TRG2 as the specific register. An interrupt based on the count-up of CTC channel 3 (CH3) is an interrupt that occurs when the internal clock (system clock) of the CPU is counted down and the register value becomes “0”. Used as an interrupt. Specifically, the register value of CH3 is subtracted at 1/256 period of the system clock. In step S705, the CH3 register is set to a value corresponding to 2 ms as an initial value.
[0224]
Interrupts based on CTC CH2 count-up have a higher priority than interrupts based on CH3 count-up. Therefore, when the count-up occurs simultaneously, the interrupt based on the CH2 count-up, that is, the interrupt that triggers the execution of the command reception interrupt process is given priority.
[0225]
Next, the
[0226]
If the
[0227]
After confirming that there is a backup, the
[0228]
FIG. 37 is a flowchart illustrating an example of the parity check processing in step S709. In the parity check, the CPU 56 first checks whether the data set in the backup parity data area in the RAM 55 is “00” (step S709a). The backup parity data area will be described in detail later. If the data set in the backup parity data area is not “00”, parity diagnosis (checksum confirmation) is performed (step S709b). If the result of the checksum confirmation is valid (step S709c), the CPU 56 executes a power failure recovery process described later (step S710). If the result of the checksum confirmation is not valid or if the data set in the backup parity data area is “00”, normal initialization processing is executed (steps S711 to S713). .
[0229]
In the case of recovery after an unexpected power failure, the data in the backup RAM area should have been saved, so the check result is normal. If the check result is not normal, the internal state cannot be returned to the state at the time of power-off, and therefore an initialization process that is executed when the power is turned on not at the time of power failure recovery is executed.
[0230]
If the check result is normal (step S709), the
[0231]
As described above, it is determined whether or not to restore the gaming state at the time of power-off according to the operation state of the
[0232]
Further, as described above, in this embodiment, when power supply is started, initialization processing or game state restoration processing is performed based on check data (checksum data) stored in the backup RAM area when power supply is stopped. Because it is configured to determine whether to perform the operation, it is possible to reliably save the necessary data when an unexpected power failure such as a power failure occurs, and to use the saved data after the power is restored can do.
[0233]
It should be noted that, when the backup data is not stored in the fluctuation data storage means when the power is turned on, and the
[0234]
In the above-described embodiment, the normal initialization process is executed when the checksum confirmation result is not valid. However, the checksum confirmation result is not valid. Also, the initialization process may not be performed.
[0235]
For example, if the result of the checksum confirmation is not valid, the game state recovery process may be performed after the stored contents of the backup RAM are restored without executing the initialization process. In this case, for example, an error correction code (for example, a Hamming code used for countermeasures against random errors or a Fire code used for countermeasures against burst errors may be selected according to error characteristics) for data restoration. Thus, the changed bits may be detected and corrected.
[0236]
Further, for example, when the result of the checksum confirmation is not valid, it may be notified that an abnormality has occurred in the stored contents of the backup RAM without executing the initialization process. In this case, the abnormality notification may be performed by, for example, a predetermined display indicating the abnormality on the
[0237]
Further, for example, when the result of the checksum confirmation is not valid, notification for prompting the execution request for the initialization process may be performed by operating the
[0238]
In the initialization process, the
[0239]
In this embodiment, the built-in CTC of the
[0240]
The
[0241]
In the payout control process, the
[0242]
Next, the
[0243]
Next, the
[0244]
Next, the
[0245]
Further, the
[0246]
In this embodiment, a stepping motor is used as the
[0247]
Next, error detection processing is performed, and predetermined display is performed on the
[0248]
FIG. 39 is an explanatory diagram showing a usage example of the RAM built in the
[0249]
As described above, the number of unpaid prize balls and the number of rented balls are stored in the backup RAM area capable of holding the contents for a predetermined period. Therefore, even if an unexpected power failure such as a power failure occurs, If the power is restored, the winning ball processing and ball lending processing stored in the backup RAM area can be continued. Therefore, the disadvantage given to the player can be reduced.
[0250]
FIG. 40 is an explanatory diagram showing a configuration example of a reception buffer for storing a payout control command received from the
[0251]
FIG. 41 is a flowchart showing a payout control command reception process by an interrupt process. The payout control INT signal from the
[0252]
In the payout control command reception process, the
[0253]
If it is not the first byte of the payout control command, it is confirmed whether or not the first byte has already been received (step S854). Whether or not it has already been received is confirmed by whether or not valid data is set in the reception buffer (deterministic command buffer).
[0254]
If the first byte has already been received, it is confirmed whether or not the first bit of the received 1 byte is “0”. If the first bit is “0”, it is determined that the valid second byte has been received, and the received command is stored in the confirmed command buffer indicated by the command reception number counter + 1 in the reception buffer area (step S855). The leading bit “0” should be the EXT byte (second byte) in the payout control command having a two-byte configuration (see FIG. 26). If the confirmation result in step S854 indicates that the first byte has already been received, the process ends unless the first bit of the data received as the second byte is “0”.
[0255]
When the second byte of command data is stored in step S855, 2 is added to the command reception number counter (step S856). Then, it is confirmed whether or not the command reception counter is 12 or more (step S857). If it is 12 or more, the command reception number counter is cleared (step S858). Thereafter, the saved register is restored (step S859), and interrupt permission is set (step S859).
[0256]
Interrupts are disabled during command reception interrupt processing. As described above, since the interrupt is enabled during the 2 ms timer interrupt processing, if a command reception interrupt occurs during the 2 ms timer interrupt, the command reception interrupt processing is executed with priority. The Even if a 2 ms timer interrupt occurs during command reception interrupt processing, the interrupt processing is awaited. Thus, in this embodiment, the processing priority of command reception processing from the
[0257]
The payout control command has a 2-byte configuration, and the first byte (MODE) and the second byte (EXT) can be immediately distinguished on the receiving side. In other words, the reception side can immediately detect whether the data as MODE or the data as EXT has been received by the first bit. Therefore, as described above, it can be easily determined whether or not appropriate data has been received.
[0258]
FIG. 42 is a flowchart illustrating an example of the command analysis execution process in step S753. In the command analysis execution process, the
[0259]
If the received payout control command is a payout number instruction command, the number specified by the payout number instruction command is added to the total number memory (step S753c). That is, the
[0260]
FIG. 43 is a flowchart illustrating an example of the payout stop state setting process in step S754. In the payout stop state setting process, the
[0261]
If it is confirmed in step S754b that the received command is not a payout stop instruction command, it is checked whether or not the received payout control command is a payout start instruction command (step S754d). If it is a payout start instruction command, the payout stop state is canceled (step S754e).
[0262]
FIG. 44 is a flowchart illustrating an example of the switch process in step S751. In the switch process, the
[0263]
Then, the value of the prize ball count switch-on counter is checked. If the value is 250 (step S751c), a prize ball clogging flag is set (step S751d). That is, the prize ball clogging flag is set when the prize
[0264]
When the value of the prize ball count switch on counter becomes 2 (step S751e), it is determined that the prize
[0265]
When it is confirmed in step S751a that the prize
[0266]
Then, the value of the ball lending count switch-on counter is checked. If the value is 250 (step S7511), the lending ball clogging flag is set (step S751m). In other words, the lending ball clogging flag is set when the ball lending
[0267]
When the value of the ball lending count switch on counter becomes 2 (step S751n), it is determined that the ball lending
[0268]
When it is confirmed in step S751j that the ball lending
[0269]
FIG. 45 is a flowchart illustrating an example of the ball lending control process in step S756. In this embodiment, the maximum value of the continuous payout number is set as one unit (for example, 25) of the lending ball, but the maximum value of the continuous payout number may be another number.
[0270]
In the ball lending control process, the
[0271]
Strictly speaking, the
[0272]
In step S518, the
[0273]
Next, the
[0274]
If it is during the lending ball passage waiting time in step S518, the
[0275]
When the end of the lending ball passage waiting time is confirmed, all the lending balls in one unit are in a state of being paid out. Therefore, the
[0276]
After turning off the EXS signal indicating acceptance of the ball lending request, if the BRQ signal, which is the ball lending request signal, is turned on again within a predetermined period, the ball without turning off the sorting
[0277]
The contents of the rental ball number storage are saved by the backup power source of the
[0278]
FIG. 46 is a flowchart showing the ball lending count switch check process executed in steps S520 and S524. The ball lending count switch check process is a process of monitoring the state of the ball lending
[0279]
In the ball lending count switch check process, the
[0280]
When the ball lending
[0281]
Accordingly, when the ball lending count switch OFF waiting flag is on (step S520h), the
[0282]
If it is confirmed in step S520h that the ball lending count switch OFF waiting flag is not turned on, the timer T11 is started (step S520i), and the ball lending count switch ON waiting flag is set (step S520j).
[0283]
As described above, in this embodiment, every time it is confirmed that one game ball has been lent, the rented ball number storage is decremented by one.
[0284]
47 and 48 are flowcharts showing an example of the prize ball control process in step S758. In this example, the maximum value of the continuous payout number is the same as the unit of the lending ball (for example, 25), but the maximum value of the continuous payout number may be another number.
[0285]
In the winning ball control process, the
[0286]
If neither the lending ball payout nor the prize ball payout is found, the
[0287]
If there is no ball lending preparation request from the
[0288]
If the number of prize balls stored in the total number memory is 25 or more, the
[0289]
FIG. 48 is a flowchart showing an example of a process during a prize ball in the payout control process by the
[0290]
Then, the
[0291]
In step S541, if it is during the prize ball passage waiting time, the
[0292]
In this embodiment, the ball lending is prioritized over the prize ball processing according to the determination in step S531, but the prize ball processing may be prioritized over the ball lending.
[0293]
FIG. 49 is a flowchart showing the prize ball count switch check process executed in steps S543 and S547. The prize ball count switch check process is a process of monitoring the state of the prize
[0294]
In the prize ball count switch check process, the
[0295]
When the prize
[0296]
Accordingly, the
[0297]
If it is confirmed in step S543h that the award ball count switch OFF waiting flag is not turned on, the timer T12 is started (step S543i), and the award ball count switch ON waiting flag is set (step S543j).
[0298]
The contents of the total number storage and the rental ball number storage are stored by the backup power source of the
[0299]
The
[0300]
50 and 51 are flowcharts showing a processing example of the non-maskable interrupt processing executed in response to the power-off signal from the
[0301]
In the non-maskable interrupt process, the
[0302]
Next, the
[0303]
FIG. 52 is an explanatory diagram for explaining a backup parity data creation method. However, in the example shown in FIG. 52, for simplification, the size of the data in the backup data RAM area is 3 bytes. In the example shown in FIG. 52, 3 is set as the checksum calculation count in step S812. In the power failure generation process based on the power supply voltage drop, as shown in FIG. 52A, initial data (00H in this example) is set in the backup check data area. Next, the exclusive OR of “00H” and the checksum calculation start address (“F0H” in this example) is taken, and the result and the contents of the RAM area pointed to by the next pointer (“16H” in this example) Exclusive OR is taken. Further, the exclusive OR of the result and the contents of the RAM area pointed to by the next pointer (“DFH” in this example) is taken. Then, data (“C6H” in this example) obtained by inverting the result (“39H” in this example) is set in the backup parity data area.
[0304]
When the power is turned on again, parity diagnosis is performed in the checksum confirmation process (step S709b). FIG. 52B is an explanatory diagram showing an example of parity diagnosis. If all the data in the backup area is stored as it is, the data as shown in FIG. 52A is set in the backup area when the power is turned on again.
[0305]
In the process of step S709, the
[0306]
Therefore, the CPU 56 compares the final calculation result with the data set in the backup check data area in the parity check process (check sum confirmation process), and if they match, the parity diagnosis is normal. If they do not match, the parity diagnosis is abnormal.
[0307]
Thus, in this embodiment, in the parity check process shown in FIG. 52, the checksum confirmation process is performed when the data set in the backup parity data area is not “00” (steps S709a and S709b). ) If the data set in the backup parity data area is “00”, a power failure recovery process is performed.
[0308]
In this embodiment, the parity diagnosis is performed as shown in FIG. 52B in the parity diagnosis in the checksum confirmation process (step S709b). However, the parity diagnosis is the same as in FIG. 52A. You may make it perform the process of. That is, in the parity diagnosis, the same calculation process as that for parity data creation may be performed. In this case, the
[0309]
When the parity data is created and stored in the backup RAM area, the
[0310]
In this embodiment, all RAM areas in which data used in the payout control process are stored are backed up. Therefore, the checksum generation process indicating whether or not the contents are correctly stored and the RAM access prevention process for preventing the contents from being rewritten correspond to the process for storing the payout control state.
[0311]
When the RAM access prevention process is completed, the
[0312]
As described above, in each of the above-described embodiments, when a power-off signal is output in response to the occurrence of a power failure or the like, the game control state such as the start winning memory number or the big hit state or the unpaid on each board A process for saving the payout control state including the total number of prize balls and lending balls is performed. Accordingly, the game control state such as the number of start winning prizes held when a power failure occurs, and the payout control state such as the number of game balls being paid out are stored in the backup RAM.
[0313]
In this case, even if the control state is stored, it is not preferable to restore the control state as it is when, for example, a player who is different from the player who played the game before turning off the power plays a game. In each of the above-described embodiments, it is determined whether or not the game state at the time of power-off is restored according to the operation state of the
[0314]
In addition, if the backup data is not normally held, it is not preferable to restore the control state as it is because there is a risk that unjust control may be executed if the backup data is restored. In each of the above-described embodiments, when power supply is started, whether to perform initialization processing or game state restoration processing is determined based on check data (checksum data) stored in the backup RAM area when power supply is stopped Thus, the necessary data can be reliably stored when an unexpected power failure such as a power failure occurs, and the stored data can be reliably used after the power is restored.
[0315]
In each of the above embodiments, when the game control unit and the payout control unit perform backup storage in response to the power-off signal and restore the control state based on the backup data, the operation state of the
[0316]
In each of the above embodiments, the
[0317]
In each of the above-described embodiments, the initialization process is performed when the
[0318]
In each of the above-described embodiments, the configuration is such that all the variation data stored in the RAM is cleared in the initialization process (see step S4a). However, a part of the variation data stored in the RAM is used. You may make it clear. In this case, for example, the fluctuation data related to the value-added quantity (for example, data indicating the quantity of game balls to be paid out based on winning) is cleared as a part of the fluctuation data stored in the RAM, or the game state is concerned. Fluctuation data (for example, whether it is a big hit, big hit state, whether it is a hit, whether it is a probable change, a probable change state (the number of remaining probable changes, etc.), whether it is short or short, whether or not a normal symbol or a special symbol has a reduced time (remaining (Number of times) and data indicating the number of starting winning prizes and the like) may be cleared as part of the fluctuation data stored in the RAM. In other words, in clearing the RAM based on the operation of the
[0319]
Thus, if it is set as the structure which can clear a part of fluctuation data, a game state can be recovered based on the fluctuation data except the data which does not need to be recovered. In addition, if it is set as the structure which clears the fluctuation data regarding the quantity of value provision as a part of fluctuation data, it can prevent obtaining the game ball obtained before power-off unjustly after power-on. In addition, if the configuration is such that the variation data related to the gaming state is cleared as part of the variation data, it is possible to prevent an unfair acquisition of an advantageous gaming state such as a probability change obtained before the power is turned off after the power is turned on. Can be prevented, or an unfavorable gaming state can be prevented from being improperly given.
[0320]
In each of the above embodiments, the power supply monitoring circuit is provided on the
[0321]
The
[0322]
Further, the present invention is not limited to pachinko gaming machines in which the game medium is a game ball, and the present invention can also be applied to slot machines and the like.
[0323]
【The invention's effect】
As described above, according to the present invention, the electrical component control microcomputer determines whether or not the stored content is normal based on the check data held by the stored content holding means when the power supply is resumed. When it is determined to be normal, the control state can be returned to the state immediately before the power supply is stopped, and when it is determined that the operation signal from the operation unit is input, the control is held by the storage content holding unit. Do not control based on stored content In this way, the electric component control microcomputer is brought into an operation stop state in response to the input of the second detection signal. Since the configuration is adopted, it is possible to prevent the stored control state from being restored based on the judgment of the game store clerk or the like, and it is possible to improve the convenience in operating the gaming machine at the game store. In addition, since it is possible to return to an appropriate control state, it is possible to reliably use the stored data after the power is restored.
In addition, on the condition that the electric component control microcomputer does not determine that the operation signal from the operation means has been input, the storage contents of the variation data storage means are initialized. It is possible to clear the control state that was backed up at the initial stage of control start by the start of power supply.
Furthermore, since the content of the check data is confirmed only when it is not determined that the operation signal from the operation means is input, the processing efficiency is improved.
[0327]
Electrical component control Microcomputer Is provided with an input port for acquiring a predetermined signal, and operating means from If the operation signal is input to the input port, for example, an initialization signal that is output according to the operation state of the operation means can be introduced with a simple configuration using the existing input port. It becomes. Further, the operation state of the operation means can be determined by monitoring with software.
[0330]
Electrical component control Microcomputer However, if the process for prohibiting access to the fluctuation data storage means is executed in the power supply stop process, the backup storage is caused by an abnormal operation that may occur as the power supply voltage decreases. Can be reliably prevented from destroying the contents of an area (for example, RAM) in which RAM is stored, and data stored in the RAM restored when the power is turned on thereafter can be reliably protected.
[0331]
Electrical component control Microcomputer Payout control to control the payout of game media Microcomputer The variation data stored in the variation data storage means includes data that can identify the number of unpaid out of the payout number of game media that has not been paid out. from Operation signal is payout control Microcomputer If it is input to, it becomes possible to backup and store the number of unpaid game media to be paid out according to the lending request and the number of unpaid game media to be paid out according to the progress of the game, These backup data can be initialized when the power supply is resumed.
[Brief description of the drawings]
FIG. 1 is a front view of a pachinko gaming machine as viewed from the front.
FIG. 2 is an explanatory view showing each board provided on the back surface of the pachinko gaming machine.
FIG. 3 is a rear view of the mechanism board of the pachinko gaming machine as viewed from the back.
FIG. 4 is a front view showing a configuration around an intermediate base unit installed on a mechanism plate.
FIG. 5 is an exploded perspective view showing a ball dispensing device.
FIG. 6 is a front view showing an example of a game board on which a switch board is mounted as seen from the front.
FIG. 7 is a circuit diagram illustrating an example of a configuration of a clear switch.
FIG. 8 is a block diagram showing a circuit configuration of a game control board (main board).
FIG. 9 is a block diagram showing components related to a prize ball, such as components of a payout control board and a ball payout device.
FIG. 10 is a block diagram illustrating a configuration example of a power supply board.
FIG. 11 is a block diagram illustrating an example of a configuration around a CPU in a main board.
FIG. 12 is an explanatory diagram illustrating an example of bit assignment of an input port.
FIG. 13 is a flowchart showing main processing executed by the CPU on the main board.
FIG. 14 is an explanatory diagram showing an example of a relationship between a backup flag and whether or not to execute a game state recovery process.
FIG. 15 is a flowchart illustrating an example of parity check processing.
FIG. 16 is a flowchart showing a 2 ms timer interrupt process.
FIG. 17 is an explanatory diagram showing an example of forming a switch timer in a RAM.
FIG. 18 is a flowchart illustrating an example of switch processing.
FIG. 19 is a flowchart illustrating an example of a switch check process.
FIG. 20 is a flowchart showing an example of a prize ball process.
FIG. 21 is a flowchart showing an example of a prize ball process.
FIG. 22 is a flowchart showing an example of a prize ball process.
FIG. 23 is a flowchart showing a switch-on check process.
FIG. 24 is a flowchart showing an example of a prize ball number subtraction process.
FIG. 25 is an explanatory diagram of a configuration example of an input determination value table.
FIG. 26 is an explanatory diagram showing an example of a command form of a control command.
FIG. 27 is a timing chart showing a relationship between an 8-bit control signal and an INT signal constituting a control command.
FIG. 28 is an explanatory diagram showing an example of the contents of a payout control command.
FIG. 29 is an explanatory diagram of a configuration example of a command transmission table.
FIG. 30 is a flowchart showing a non-maskable interrupt process in the game control means.
FIG. 31 is a flowchart showing a non-maskable interrupt process in the game control means.
FIG. 32 is an explanatory diagram for explaining a backup parity data creation method;
FIG. 33 is a flowchart showing an example of a game state restoration process.
FIG. 34 is a block diagram showing a configuration example around a payout control CPU for power supply monitoring and power supply backup.
FIG. 35 is an explanatory diagram of an example of bit assignment of an input port.
FIG. 36 is a flowchart showing a main process executed by the CPU in the payout control board.
FIG. 37 is a flowchart showing an example of parity check processing in the payout control means.
FIG. 38 is a flowchart showing a 2 ms timer interrupt process.
FIG. 39 is an explanatory diagram showing a configuration example of a RAM in the payout control unit.
FIG. 40 is an explanatory diagram of a configuration example of a reception buffer.
FIG. 41 is a flowchart illustrating an example of command reception processing of a payout control CPU.
FIG. 42 is a flowchart illustrating an example of command analysis execution processing.
FIG. 43 is a flowchart illustrating an example of a payout stop state setting process.
FIG. 44 is a flowchart illustrating an example of switch processing.
FIG. 45 is a flowchart showing an example of a ball lending control process.
FIG. 46 is a flowchart showing an example of a ball lending count switch check process.
FIG. 47 is a flowchart showing an example of a prize ball control process.
FIG. 48 is a flowchart showing an example of a prize ball control process.
FIG. 49 is a flowchart showing an example of a prize ball count switch check process.
FIG. 50 is a flowchart showing a non-maskable interrupt process in the payout control means.
FIG. 51 is a flowchart showing a non-maskable interrupt process in the payout control means.
FIG. 52 is an explanatory diagram for describing a backup parity data creation method;
FIG. 53 is an explanatory diagram showing an example of an external configuration of a clear switch according to another embodiment.
[Explanation of symbols]
31 Game control board (main board)
37 Dispensing control board
54 ROM
55 RAM
56 CPU
371 CPU for payout control
921 Clear switch
Claims (4)
遊技媒体を検出するための遊技媒体検出手段と、
遊技機に設けられた電気部品を制御するための処理を実行する電気部品制御マイクロコンピュータと、
前記電気部品制御マイクロコンピュータが制御を行う際に発生する変動データを記憶する変動データ記憶手段と、
操作に応じて操作信号を出力する操作手段と、
遊技機への電力供給が停止していても電力供給停止直前の前記変動データ記憶手段の記憶内容を保持させることが可能な記憶内容保持手段と、
遊技機で使用される所定の電源を監視して該電源の電圧が前記遊技媒体検出手段に供給される電圧よりも高い電圧である所定電圧に低下したことを検出したときに第1の検出信号を出力する第1の電源監視手段と、
前記第1の電源監視手段が監視する前記電源と同一電源を監視し、該電源の電圧が、前記第1の電源監視手段が前記第1の検出信号を出力するときの所定電圧よりも低く、電気部品制御マイクロコンピュータの駆動電源電圧よりも高く設定された検出電圧になったときに第2の検出信号を出力する第2の電源監視手段とを備え、
前記電気部品制御マイクロコンピュータは、
前記第1の検出信号の入力に応じて、前記変動データ記憶手段に記憶内容が保存されていることを示す情報を前記変動データ記憶手段に保存するとともに、前記変動データ記憶手段の記憶内容が正常か否かの判定に用いるチェックデータを作成して前記変動データ記憶手段に保存する電力供給停止時処理を実行する電力供給停止時処理実行手段と、
遊技機への電力供給が開始されたときにのみ、前記操作手段からの操作信号が入力されているか否かを判定し、前記操作手段からの前記操作信号が入力されていると判定したときには、前記変動データ記憶手段の記憶内容を初期化する初期化処理を実行する初期化手段と、
前記操作手段からの前記操作信号が入力されていると判定されなかったことを条件に、前記変動データ記憶手段に前記情報が保存されているか否かを確認し、前記変動データ記憶手段に前記情報が保存されていることを確認したことを条件に、前記記憶内容保持手段により保持された前記変動データ記憶手段における前記チェックデータにもとづいて記憶内容が正常か否かの判定を行い、正常と判定したときに制御状態を電力供給停止直前の状態に復帰させる復帰手段とを含み、
前記電気部品制御マイクロコンピュータは、前記第2の検出信号の入力に応じて動作停止状態とされる
ことを特徴とする遊技機。A gaming machine in which a player can play a predetermined game,
Game medium detecting means for detecting a game medium;
An electrical component control microcomputer that executes processing for controlling electrical components provided in the gaming machine;
Variation data storage means for storing variation data generated when the electric component control microcomputer performs control;
An operation means for outputting an operation signal in response to an operation;
A storage content holding unit capable of holding the storage content of the variation data storage unit immediately before the power supply is stopped even when the power supply to the gaming machine is stopped ;
When a predetermined power source used in the gaming machine is monitored and it is detected that the voltage of the power source has decreased to a predetermined voltage that is higher than the voltage supplied to the game medium detecting means, the first detection signal First power monitoring means for outputting
Monitoring the same power source as the power source monitored by the first power source monitoring means, and the voltage of the power source is lower than a predetermined voltage when the first power source monitoring means outputs the first detection signal; Second power supply monitoring means for outputting a second detection signal when a detection voltage set higher than the drive power supply voltage of the electric component control microcomputer is provided;
The electrical component control microcomputer is:
In response to the input of the first detection signal, information indicating that the storage content is stored in the variation data storage unit is stored in the variation data storage unit, and the storage content of the variation data storage unit is normal. A power supply stop time process execution means for executing a power supply stop time process for creating check data to be used for determination of whether or not and storing the check data in the fluctuation data storage means;
Only when power supply to the gaming machine is started, it is determined whether or not the operation signal from the operation means is input, and when it is determined that the operation signal from the operation means is input, Initialization means for executing initialization processing for initializing the storage contents of the variation data storage means;
On the condition that the operation signal from the operation means is not input, it is confirmed whether or not the information is stored in the fluctuation data storage means, and the information is stored in the fluctuation data storage means. Is determined to be normal based on the check data in the variable data storage means held by the storage content holding means, on the condition that it has been confirmed that look including a return means for returning to the state immediately before stopping the power supply control state when,
The gaming machine according to claim 1, wherein the electric component control microcomputer is stopped in response to an input of the second detection signal .
操作手段からの操作信号が前記入力ポートに入力される
請求項1記載の遊技機。An input port for the electric component control microcomputer to acquire a predetermined signal is provided,
The gaming machine according to claim 1, wherein an operation signal from an operation unit is input to the input port.
請求項1または請求項2記載の遊技機。The gaming machine according to claim 1 or 2 , wherein the power supply stop process execution means executes a process of prohibiting access to the variable data storage means in the power supply stop process.
変動データ記憶手段が記憶する変動データは、遊技媒体の払出数のうち払出しが完了していない未払出数を特定可能なデータを含み、
操作手段からの操作信号が、前記払出制御マイクロコンピュータに入力される
請求項1から請求項3のうちのいずれかに記載の遊技機。The electric component control microcomputer is a payout control microcomputer that controls payout of game media.
The variation data stored in the variation data storage means includes data that can identify the number of unpaid out of the number of payouts of game media that has not been paid out,
The gaming machine according to any one of claims 1 to 3 , wherein an operation signal from an operation means is input to the payout control microcomputer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000251718A JP3727522B2 (en) | 2000-08-22 | 2000-08-22 | Game machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000251718A JP3727522B2 (en) | 2000-08-22 | 2000-08-22 | Game machine |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002058835A JP2002058835A (en) | 2002-02-26 |
JP2002058835A5 JP2002058835A5 (en) | 2005-06-30 |
JP3727522B2 true JP3727522B2 (en) | 2005-12-14 |
Family
ID=18741080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000251718A Expired - Fee Related JP3727522B2 (en) | 2000-08-22 | 2000-08-22 | Game machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3727522B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4888824B2 (en) * | 2005-08-25 | 2012-02-29 | 奥村遊機株式会社 | Pachinko machine |
JP5180810B2 (en) * | 2008-12-25 | 2013-04-10 | 株式会社ソフイア | Game machine |
JP5553349B2 (en) * | 2010-09-07 | 2014-07-16 | サミー株式会社 | Pachinko machine |
JP5553350B2 (en) * | 2010-09-07 | 2014-07-16 | サミー株式会社 | Pachinko machine |
JP6148283B2 (en) * | 2015-05-19 | 2017-06-14 | 株式会社三共 | Game machine |
JP6906818B2 (en) * | 2017-11-17 | 2021-07-21 | 株式会社ニューギン | Pachinko machine |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0467733U (en) * | 1990-10-18 | 1992-06-16 | ||
JPH06114142A (en) * | 1992-10-02 | 1994-04-26 | Sankyo Kk | Slot machine |
JPH06233867A (en) * | 1993-02-08 | 1994-08-23 | Sophia Co Ltd | Game machine |
JP2694521B2 (en) * | 1995-11-10 | 1997-12-24 | 株式会社ソフィア | Gaming machine |
-
2000
- 2000-08-22 JP JP2000251718A patent/JP3727522B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002058835A (en) | 2002-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3907931B2 (en) | Game machine | |
JP3859950B2 (en) | Game machine | |
JP3907926B2 (en) | Game machine | |
JP2003230719A (en) | Game machine | |
JP4790111B2 (en) | Game machine | |
JP3727522B2 (en) | Game machine | |
JP3828347B2 (en) | Game machine | |
JP2003225434A (en) | Game machine | |
JP2003230720A (en) | Game machine | |
JP3647729B2 (en) | Game machine | |
JP3907929B2 (en) | Game machine | |
JP4302306B2 (en) | Game machine | |
JP3907928B2 (en) | Game machine | |
JP3609327B2 (en) | Game machine | |
JP4137358B2 (en) | Game machine | |
JP4166803B2 (en) | Game machine | |
JP4302305B2 (en) | Game machine | |
JP4642248B2 (en) | Game machine | |
JP4242413B2 (en) | Game machine | |
JP4242050B2 (en) | Game machine | |
JP4242412B2 (en) | Game machine | |
JP2003225433A (en) | Game machine | |
JP4137360B2 (en) | Game machine | |
JP4503157B2 (en) | Game machine | |
JP4137354B2 (en) | Game machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041019 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20041019 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20050121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050318 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050920 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050928 |
|
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: 20111007 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111007 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: 20111007 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: 20111007 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111007 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121007 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121007 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131007 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |