JP3860972B2 - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP3860972B2 JP3860972B2 JP2001025885A JP2001025885A JP3860972B2 JP 3860972 B2 JP3860972 B2 JP 3860972B2 JP 2001025885 A JP2001025885 A JP 2001025885A JP 2001025885 A JP2001025885 A JP 2001025885A JP 3860972 B2 JP3860972 B2 JP 3860972B2
- Authority
- JP
- Japan
- Prior art keywords
- power
- reset
- circuit
- signal
- clear
- 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
Description
【発明の属する技術分野】
本発明は、パチンコ機、アレンジボール機、雀球遊技機、回胴式遊技機などの遊技機に関し、特に、遊技動作中に停電などが生じても、電源復旧後には正常に元の遊技動作を再開できるように改善した遊技機に関するものである。
【0002】
【従来の技術】
パチンコ機などのパソコン内蔵型の遊技機は、電源電圧が所定値を下回った場合には正常な動作を継続することが不可能となる。そこで、パソコン内蔵型の遊技機には、落雷などに伴う停電が生じても、その影響を受けないような工夫が必要となる。
【0003】
ここで、各パチンコホールに自家発電装置を備えるような対策もあり得るが、パチンコ機での消費電力は少なくなく、しかもパチンコ機の台数も多いので、かかる対策はコスト的にも設置空間的にも現実的でない。
【0004】
そのため、停電に対する一般的な対策としては、NMIの処理によって必要なデータをRAMエリアに保存し、そのRAMエリアにバックアップ電源を供給して内容を維持し、商用電源が復旧すればバックアップされたデータを読み出して、停電前の遊技動作を再現するようにしている。
【0005】
【発明が解決しようとする課題】
しかしながら、停電などのトラブルは突発的に生じるので、例えば、停電前のパチンコ機が大当り状態であったような場合には、電源復旧後は、如何なる場合にも大当りゲームが再現される必要があり、そうでないと遊技者との間に無用のトラブルが発生してしまうことになる。また、停電状態でなくても、電源ラインに予期せぬ異常が生じることもあり、例えば、電源ラインが不安定な状態で変動しても、適切な動作をすることが望まれる。
【0006】
この発明は、かかる要請に基づいてなされたものであって、中断された遊技動作が再開されるに際して、万一、電源電圧の変動やその他の電気的トラブルがあったとしても、極力、元のゲームが再現されるように改善された遊技機を提供することを課題とする。
【0007】
【課題を解決するための手段】
上記の課題を解決するため、本発明は、装置内部に記憶された制御プログラムにしたがって遊技動作を実現する一方、前記制御プログラムにしたがった正常な処理がされなくなると、自走状態となるリセット回路の動作に基づいて、遊技動作を強制的に初期状態に戻すようにした遊技機であって、所定時間以内の間隔でパルス状のクリア信号を出力するクリア処理を設けると共に、電源投入時に生成されるパルス状の電源リセット信号を受けてこれを出力すると共に、前記電源リセット信号の後に開始される所定のカウント動作が終了した後に、パルス状のイニシャル信号を出力するクリア回路を設け、前記電源リセット信号と前記イニシャル信号に基づいてシステムを電源リセット状態にすると共に、前記クリア信号と前記イニシャル信号のOR出力を前記リセット回路のクロック端子に供給することで、前記リセット回路が自走状態となることを、電源投入直後から回避するようにした。ここで、制御プログラムは、典型的には、遊技動作を中心的に制御する主制御基板、及び/又は、主制御基板からの指令に基づいて遊技媒体を払出す払出制御基板に設けられている。
【0008】
本発明では、クリア処理に加えてクリア回路を設けているので、中断された遊技動作が再開されるに際して、万一、電源電圧の変動やその他の電気的トラブルがあったとしても、リセット手段WDTが機能して遊技動作が初期化されるようなトラブルがない。なお、本発明のクリア回路は、実施例ではシステムリセット回路がこれに該当する。
【0009】
典型的には、クリア回路52は、電源投入時の電源電圧が変動した場合にも、その変動に対応して繰り返し前記イニシャル信号PSを出力するようになっている。また、前記イニシャル信号PSは、電源リセット信号SYSRSTに基づいて生成される。なお、ここで、電源リセット信号とは、電源電圧が正常値に立ち上がったことに対応して生成されるパルス信号を意味する。
【0010】
【発明の実施の形態】
以下、本発明の一実施例であるカード式弾球遊技機に基づいて本発明の実施の形態を説明する。図1は、本実施例のパチンコ機2を示す斜視図であり、図2は、同パチンコ機2の側面図である。
【0011】
図1に示すパチンコ機2は、島構造体に着脱可能に装着される矩形枠状の木製の外枠3と、外枠3に固着されたヒンジHを介して開閉可能に枢着される前枠4とで構成されている。なお、このパチンコ機2は、カード式球貸し機1に電気的に接続された状態で、パチンコホールの島構造体の長さ方向に複数個が配設されている。
【0012】
ヒンジHを介して外枠3に枢着される前枠4には、遊技盤5が裏側から着脱自在に装着され、遊技盤5の前側に対応させて、窓部を有するガラス扉6と前面板7とが夫々開閉自在に枢着されている。前面板7には発射用の遊技球を貯留する上皿8が装着され、前枠4の下部には、上皿8から溢流し又は抜き取った遊技球を貯留する下皿9と、発射手段10の発射ハンドル11とが設けられている。
【0013】
この発射手段10は、回動操作可能な発射ハンドル11と、この発射ハンドル11の回動角度に応じた打撃力で打撃槌12(図4)により遊技球を発射させる発射モータなどを備えている。上皿8の右部には、カード式球貸し機1に対する球貸し操作用の操作パネル13が設けられ、この操作パネル13には、カード残額を3桁の数字で表示するカード残額表示部13aと、所定金額分の遊技球の球貸しを指示する球貸しスイッチ13bと、ゲーム終了時にカードの返却を指令する返却スイッチ13cとが設けられている。
【0014】
図3に示すように、遊技盤5には、金属製の外レールと内レールとからなるガイドレール15がほぼ環状に設けられ、このガイドレール15の内側の遊技領域5aには、カラーの液晶ディスプレイ16、図柄始動手段(図柄始動兼入賞手段)17、開閉式入賞手段(大入賞手段)18、複数の普通入賞手段19(上段の普通入賞手段19以外に、開閉式入賞手段18の左右両側部に6つの普通入賞手段19)、2つのゲート20(通過口)が夫々所定の位置に配設されている。
【0015】
液晶ディスプレイ16は、変動図柄を表示するとともに背景画像や各種のキャラクタの動画などを表示する第1図柄表示手段22として機能する。第1図柄表示手段22は、背景画やキャラクタをアニメーション的に表示するとともに、左右方向に並ぶ3個(左、中、右)の図柄表示部22a〜22cを有し、図柄始動手段17に遊技球が入賞することを条件に、各図柄表示部22a〜22cの表示図柄が所定時間だけ変動表示(スクロール表示)され、図柄始動手段17への遊技球の入賞タイミングに応じた抽選結果に基づいて決定される停止図柄パターンで停止する。
【0016】
液晶ディスプレイ16の直ぐ上側に、普通入賞手段19と第2図柄表示手段23とが設けられている。第2図柄表示手段23は1個の普通図柄を表示する普通図柄表示部を有し、ゲート20を通過した遊技球が検出されたとき、普通図柄表示部の表示図柄が所定時間だけ変動し、遊技球のゲート20通過時点において抽選された抽選用乱数値により決定される停止図柄を表示して停止するようになっている。図柄始動手段17は、開閉自在な左右1対の開閉爪17aを備えた電動式チューリップであり、第2図柄表示手段23の変動後の停止図柄が当り図柄を表示した場合に、開閉爪17aが所定時間だけ開放されて入賞し易くなる。
【0017】
開閉式入賞手段18は前方に開放可能な開閉板18aを備え、第1図柄表示手段22の変動後の停止図柄が「777」などの当り図柄のとき、「大当り」と称する特別遊技が開始され、開閉板18aが前側に開放される。この開閉式入賞手段18の内部に特定領域18bがあり、この特定領域18bを入賞球が通過すると、特別遊技が継続される。ここで、特別遊技状態が遊技者に有利な状態に相当する。
【0018】
開閉式入賞手段18の開閉板18aが開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞して開閉板18aが閉じるときに、遊技球が特定領域18bを通過していない場合には特別遊技が終了するが、特定領域18bを通過していれば最大で例えば16回まで特別遊技が継続され、遊技者に有利な状態に制御される。
【0019】
図4に示すように、前枠4の裏側には、遊技盤5を裏側から押さえる裏機構板30が着脱自在に装着され、この裏機構板30には開口部30aが形成され、その上側に賞球タンク33と、これから延びるタンクレール34とが設けられ、このタンクレール34に接続された払出し手段35が裏機構板30の側部に設けられ、裏機構板30の下側には払出し手段35に接続された通路ユニット36が設けられている。払出し手段35から払出された遊技球は通路ユニット36を経由して上皿排出口8a(図1)から上皿8に払出される。
【0020】
裏機構板30の開口部30aには、遊技盤5の裏側に装着された裏カバー37と、入賞手段17〜19に入賞した遊技球を排出する入賞球排出樋(不図示)とが夫々嵌合されている。この裏カバー37に装着されたケース38の内部に主制御基板39が配設され、その前側に図柄制御基板40が配設されている(図2)。主制御基板39の下側で、裏カバー37に装着されたケース41aの内部にランプ制御基板42が設けられ、このケース41aに隣接するケース41bの内部にサウンド制御基板43が設けられている。
【0021】
これらケース41a,41bの下側で裏機構板30に装着されたケース44の内部には、電源基板45と払出し制御基板46が夫々設けられている。この電源基板45には、図3に示すように、電源スイッチ80と初期化スイッチ85とが配置されている。これら両スイッチ80,85に対応する部位はケース44が切欠かれ、両スイッチ80,85の各々を指で同時に操作可能になっている。
【0022】
また、発射手段10の後側に装着されたケース47の内部には、発射制御基板48が設けられている。これら制御基板39〜40,42〜43,45〜46,48は夫々独立の基板であり、電源基板45と発射制御基板48を除く制御基板39,40,42,43,46には、ワンチップマイコンLE2080A(LE・Tech社製)を備えるコンピュータ回路が搭載されており、主制御基板39と他の制御基板40,42,43,46とは、複数本の信号線でコネクタを介して電気的に接続されている。なお、この実施例で使用するワンチップマイコンLE2080Aは、Z80(Zilog社)相当品のCPUとROMとRAMとその他のICを内蔵して構成されている。
【0023】
主制御基板39とその他の制御基板40,42,43,46とは、複数本の信号線でコネクタを介して電気的に接続され、主制御基板39から各制御基板40,42,43,46に、所定の遊技動作を実行させる種々の制御コマンドを一方向通信で送信可能になっている。制御コマンドの一方向通信を採用することで、図柄停止に関する不正を確実に防止できるとともに、主制御基板39の制御負荷を格段に軽減でき、送信制御を簡単化することができる。
【0024】
図5は、主制御基板39のうち、Z80CPUをリセット状態にするためのリセット信号発生部の回路例を図示したものである。この回路からはユーザリセット信号URSTと、システムリセット信号RSTとが出力されるが、何れの信号も、Z80CPUのリセット端子を所定時間LレベルにすることによりプログラムカウンタPCの値を強制的に0000Hにしてプログラム処理を初期状態に戻すものである。
【0025】
図5に示すように、リセット信号発生部は、CPUからのタイマクリア信号を受けて動作するウォッチドッグタイマ回路51と、リップルカウンタRBC(例えばTC74HC4020AF)及びD型フリップフロップD−FF(例えばHD74HC74)からなるシステムリセット回路52とで構成されている。そして、システムリセット回路52には、不図示の電源リセット回路からのリセット信号SYSRSTと、システムクロックXTALとが供給され、システムリセット信号RSTとイニシャル信号PSとを出力している。
【0026】
ここで、電源リセット回路からのリセット信号SYSRSTは、2つのシュミットトリガG2,G3とコンデンサ及び抵抗による遅延回路DLとによってパルス幅が広がられ、主回路基板39のCPUが、他の制御基板40,42,43,46のCPUより若干遅れてリセットされるようになっている。この動作によって、停電復旧時などの動作において、制御基板40,42,43,46が主制御基板39からのコマンドを取りこぼす恐れがなくなる。
【0027】
ウォッチドックタイマ回路51は、専用ICたるウォッチドッグタイマWDT(TA8030S)を用いている。このウォッチドッグタイマWDTは、クロック端子WDにパルス信号が入力されない自走状態では、TC端子の電圧が、ICへの電源投入後、2Vと4Vの間で充放電を繰り返し、RST端子からは、Hレベル期間TWDが1.1×C1×R1(ms)、Lレベル期間TRSTが0.75×C1(ms)のリセット信号RSTが出力される(以下、TWD+TRSTをタイマリセット周期T0と呼ぶ)。一方、クロック端子WDに正パルスが加わると、4Vに向けての充電途中でも充電電荷が放電されて、再び2Vから充電動作を始めるようになっている。
【0028】
そこで、このパチンコ機では、ウォッチドッグタイマWDTのクロック端子WDに、タイマリセット周期T0未満の所定時間TCLR毎にタイマクリア信号をソフトウェア的に加えることによって、RST端子が常時Hレベルに維持されるようにしている。パチンコ機が正常に動作している場合には、ウォッチドッグタイマ回路51に所定時間TCLR毎にタイマクリア信号が加わるので、CPUがリセットされることはないが、プログラムの暴走などによってCPU側からのタイマクリア信号が途絶えた状況では、一定時間後にウォッチドッグタイマWDTのリセット信号RSTが自動的に立下り、ユーザリセット信号URSTを受けたZ80CPUが強制的にリセットされることになる。言い換えれば、遊技動作が強制的に初期状態に戻される。
【0029】
図5に示す通り、ウォッチドッグタイマWDTのクロック端子WDには、ORゲートG1を介して、システムリセット回路52からイニシャル信号PS(反転RST信号)も加わっている。但し、このイニシャル信号PSの供給は、電源投入時のチャタリングなどの影響を排除するためであり、定常状態では、ORゲートG1にはLレベルのイニシャル信号PSが加わるので、上記したウォッチドッグタイマWDTの動作には影響を与えない。なお、電源投入時の動作は、本実施例の特徴の一つでもあり以下に詳述する。
【0030】
図6は、図5に示すシステムリセット回路52の動作内容を説明するタイムチャートである。電源が投入されると(t1)、不図示の電源リセット回路からの信号SYSRSTが図6(a)に示すように立ち上がる。すると、これに対応して、リップルカウンタRBCのクリア端子CLRがHレベルとなり、Q8やQ9を含むRBCの全出力はLレベルとなる。なお、信号SYSRSTの立ち上がり(t1)に対応して、D型フリップフロップD−FFのクリア端子CLRが立ち下がるのでD−FFのQ出力はLレベルとなる(図6(d))。
【0031】
その後、t2のタイミングで、電源リセット回路からの信号SYSRSTが図6(a)に示すように立ち下がる。すると、リップルカウンタRBCのクリア端子CLRもLレベルとなるので、リップルカウンタRBCは、システムクロックXTALのカウント動作を開始する。また、信号SYSRSTの立ち下がりに対応して(t2)、D−FFのCLR端子はHレベルになるので、その後、D型フリップフロップD−FFのクロック端子CKに信号が供給されると、HレベルのD入力がQ出力端子に現れることになる。
【0032】
一定時間後、リップルカウンタRBCのカウント動作の結果、RBCのQ8出力がHレベルとなる(t3)。すると、これに対応してイニシャル信号PSは、図6(g)に示すようにHレベルとなる。
【0033】
その後の動作につき説明すると、リップルカウンタRBCのQ8出力はやがてLレベルとなり、これに合わせてRBCのQ9出力はHレベルとなる(t4)。すると、リップルカウンタRBCのQ9出力の立ち上がりに対応して、D−FFのQ出力はHレベルとなる。そして、リップルカウンタRBCのクリア端子CLRがHレベルになることにより、これ以降のリップルカウンタRBCの全出力はLレベルに維持されることになる。
【0034】
図7は、上記のようにして生成されるシステムリセット信号RSTと、ウォッチドッグタイマ回路51の動作との関係を説明するタイムチャートである。なお、図7(a)には、電源復旧時、チャタリングその他の理由によって電源リセット回路からのリセット信号SYSRSTが、短時間の間に変動する例外的な場合を図示している。CPUは、システムリセット信号RSTがLレベルである区間τにリセットされるが、それ以前の不安定期間でもCPUがリセットされる可能性はある。但し、ワンチップマイコンの処理は、t3のタイミングで改めて最初から開始されるので、図7には、不安定期間におけるシステムリセット信号RSTの波形の記載を省略している。
【0035】
図7において、システムリセット信号RSTが図示のように変化することについては、先に、システムリセット回路52に関して説明した通りである。そこで、図7では、パチンコ機に電源が投入されたt1’以降について、ウォッチドックタイマ回路51の動作について説明する。なお、図7には、不図示の電源リセット回路からのリセット信号SYSRST(図7(a))、ORゲートG1に加わるイニシャル信号PS(図7(b))、CPUの動作内容(図7(c))、ワンチップマイコンに加わるシステムリセット信号RST(図7(d))、CPUからソフトウェア的に供給されるタイマクリア信号(図7(e))、微分コンデンサC2の微分出力(図7(f))、WDTのリセット出力RST1(図7(g))、ワンチップマイコンに加わるユーザリセット信号URST(図7(h))を図示している。
【0036】
図7(c)に記載したCPUの動作内容において、セキュリティーチェックとは、CPUが遊技制御動作を開始するに当たってプログラムエリアを含むメモリ内容をチェックして、プログラムが不正に改造されていないかを確認する作業である。遊技機では、メーカからの出荷後に不正改造される恐れもあるので、前記セキュリティーチェック作業は重要であり、また、メモリ領域を全てチェックする関係から、少なからず処理時間を要する。また、図7(c)に記載した復帰処理とは、停電などによってゲームが中断された場合、電源が復旧した段階で実行される中断ゲームの再開のための処理である。パチンコホールの開店時なら、電源投入後、セキュリティーチェックの時間を経て本来の処理に移行するが、停電後などの場合には、更にこの復帰処理の時間が必要となる。
【0037】
以上を踏まえつつウォッチドッグタイマ回路51について説明すると、実施例のウォッチドッグタイマWDT(TA8030S)は、電源電圧の供給を受けると0.5×C1×R1(ms)の後にリセット端子RSTの出力をHレベルにし、その後は、自走状態であればTWDの時間後にリセット端子RSTの電圧を立ち下げるように動作する。一方、先に説明したように、WD端子に正パルスを受けると、その段階でコンデンサC1の電荷は放電されて、リセット端子RSTの出力はHレベルのまま、更にTWDの間だけ維持される。
【0038】
本実施例の場合、ウォッチドッグタイマWDTのWD端子には、微分コンデンサC2を通してORゲートG1の出力が加わるので、WD端子の電圧は、図7(f)に示すように、t2のタイミングで正レベルの微分パルスが加わることになる。そのため、電源投入時t1’から、正規のリセット信号がCPUに供給されるt2までの期間が如何に長くても(不安定期間が如何に長くても)、t2からTWD経過後まではリセット端子RSTがLレベルに立ち下がる恐れはない。したがって、本実施例によれば、不安定期間の長短に係わらす、CPUがウォッチドッグタイマWDTの動作によってリセットされる恐れはない。
【0039】
図8は、本実施例の対比例を図示したものであり、図8(c)は、ORゲートG1を設けることなくウォッチドッグタイマWDTにタイマクリア信号のみを供給する関連回路の回路図、図8(a)(b)は、この回路の動作を説明するタイムチャートである。図8(a)のように、不安定期間のない正常時には、ウォッチドッグタイマWDTのリセット信号RSTが立ち下がるまでの時間TWDより先に、CPUからタイマクリア信号が出力されるのでトラブルは生じない。
【0040】
つまり、CPUリセットからCPUがタイマクリア信号を出力するまでの最大時間TMAXより、ウォッチドッグタイマWDTのTWDの方が大きいので(TMAX<TWD)問題が生じない。しかし、図8(b)のような不安定期間が存在する場合には、CPUがリセットされるタイミングが遅れる分、タイマクリア信号の出力タイミングが遅れるので、txのタイミングで、ウォッチドッグタイマWDTのリセット信号RSTが立ち下がり、復帰処理を正常に持続することができなくなる。これに対して、本実施例の回路では、先に説明したように、CPUがリセットされるに先立って、図7のt2のタイミングでコンデンサC1の電荷が放電されるので、図8(b)に示すようなトラブルは発生しない。
【0041】
図9は、主制御基板39で実行される遊技制御プログラムのメインルーチンを示すフローチャートである。電源がON状態になると、図5に示すシステムリセット回路52の動作によってワンチップマイコンLE2080AのCPUコア(Z80相当品)にリセット信号が加わり、図7に示す処理が開始される。
【0042】
メインルーチンは、セキュリティーチェック(ST1)が正常に終了した場合に限り実行されるが、最初に、Z80CPUは、自らを割込み禁止状態(DI)に設定し、Z80CPUコアを含むワンチップマイコンの各部を初期設定する(ST2)。なお、電源がON状態になる場合には2つのパターンがあり、停電状態からの復旧時のように、初期化スイッチ85がOFF状態で電源がON状態になる場合と、パチンコホールの開店時のように、初期化スイッチ85がON状態で電源がON状態になる場合があるが、いずれの場合もステップST2の処理が実行される。
【0043】
次に、CPUは割込みモード2に設定される(ST2)。なお、割込みモード2とは、Z80の3つの割込みモード(モード0、1、2)の中で、最も強力な割込みモードであり、CPU内部のIレジスタに記憶された1バイトデータと、割込み時にCPUがデータバスから取得する割込みベクタ(1バイト)とを組合せて、最大128個の割込み処理ルーチンにハードウェア的に分岐できる割込みモードを意味する。
【0044】
この割込みモード2の設定の後、CPUは、RAMクリア信号の値を判定する(ST3)。RAMクリア信号は、RAM領域を初期値設定するか否かを示す信号であって、初期化スイッチ85のON/OFF状態に対応した値を有している。今、パチンコホールの開店時であって、初期化スイッチ85がON状態で電源投入されたと仮定すると、ステップST3の判定がYesとなり、RAMのワークエリアが初期化され、その他のRAM領域がゼロクリアされる(ST5)。そして、CPUは割込み許可状態(EI)に設定され(ST5)、その後は無限ループ状に乱数発生処理が行われる(ST6)。なお、ステップST6の処理は、後述する大当り判定処理などの判定によって外れ状態となった場合に、どのような態様の外れゲームを演出するかを決定するための処理である。
【0045】
一方、停電状態からの復旧時のように、初期化スイッチ85がOFF状態であった場合には、ステップST3の判定に続いて、バックアップフラグBFLの内容が判定される(ST4)。バックアップフラグBFLとは、NMI処理において退避されていた中断動作時のバックアップデータが、元の状態に復帰されているか否かを示すデータであり、この実施例では、ステップST25の処理でバックアップフラグBFLが5AHとされ、ステップST12の処理においてゼロクリアされるようになっている。
【0046】
今、停電状態からの復旧時を想定すると、バックアップフラグBFLの内容は5AHである。そのため、CPUの処理は、ステップST4からステップST7に移行し、RAMのSP記憶エリアから読み出された16ビットデータがCPUのスタックポインタSPに書き込まれる(ST7)。
【0047】
次に、停電時のNMI処理において退避されていた各データを読み出して、バックアップされたコマンドを復帰させる処理を行う(ST8)。ここでコマンドとは、主制御基板から各制御基板に伝送されるコマンドであって、画像や音声によってゲームを盛り上げたり、或いは、賞球を払出すためのものであるが、CPUは、退避データを読み出すことによって必要なコマンドを作成する。次に、CPUは、POP命令を実行して、スタックエリアからAFレジスタを除く各レジスタ(BC,DE,HL)の値を復帰させる(ST9)。そして、この処理が終われば、SP記憶エリアのデータをゼロクリアする(ST11)。なお、このステップST11の処理は、技術的には必ずしも必須ではないが、公的機関からの指導に基づくものであり必ず実行される処理である。
【0048】
以上の処理の結果、停電時からの復帰処理は一応完了するので、そのことを示すべくバックアップフラグBFLをゼロクリアする(ST12)。このように、本実施例では、SP記憶エリアのデータをゼロクリアする処理(ST11)と、バックアップフラグBFLをゼロクリアする処理(ST12)とを連続して実行しているので、SP記憶エリアのデータがゼロクリアされたが、バックアップフラグBFLがゼロクリアされていない状態で、ユーザリセット信号URSTがCPUに加わる可能性が極限的に小さくなり、異常事態発生の可能性が殆どない。
【0049】
すなわち、SP記憶エリアのデータがゼロクリアされたが、バックアップフラグBFLがゼロクリアされていない状態において、何れかの回路の予期せぬ誤動作によってCPUがリセットされると、再リセット後の動作において、ステップST4の次にステップST7の処理が行われるため、スタックポインタSPには0000Hに設定されることになる。
【0050】
すると、その後の復帰処理(POP命令)においてはデタラメなデータが復帰されることになって、中断前とは全く無関係の遊技動作が再開されるか、或いはプログラムが暴走するかの事態が生じてしまう。しかし、本実施例では、SP記憶エリアのデータをゼロクリアする処理(ST11)と、バックアップフラグBFLをゼロクリアする処理(ST12)とを連続して実行するので、そのような可能性が事実上ゼロとなる。しかも、本実施例では、図7のt2のタイミングでウォッチドッグタイマWDTをクリアしているので、このような異常事態発生が確実に防止できる。
【0051】
このように、本実施例では、ステップST11とST12を連続して実行するが、AFレジスタの復帰が完了していないのに、SP記憶エリアのデータをゼロクリアし、且つバックアップフラグBFLをゼロクリアするのは、ST11やST12の処理ではAレジスタを使用するしかないので、これらST11やST12の処理を後回しにすると折角復帰させたAレジスタのデータが壊れてしまうからである。
【0052】
そのため、この実施例では、バックアップフラグBFLをゼロクリアした後にIレジスタやAFレジスタの復帰処理を行っている。具体的には、先ず、POPAFの命令を実行してIレジスタの内容をFレジスタに復帰させている(ST13)。NMIの割込み処理プログラムでは、Iレジスタの値をAレジスタにロードした後、Aレジスタの値をPUSHしているので(図10(c)参照)、このPOP命令によってFレジスタのP/Vフラグには、CPU内部の割込み許可フリップフロップIFFの値が格納されることになる。
【0053】
ここで、P/Vフラグが1の場合にはNMI処理時のCPUが割込み許可状態であったことになり、逆に、P/Vフラグが0の場合にはNMI処理時のCPUが割込み禁止状態であったことになる。そこで、P/Vフラグが0なら再度POP命令を実行してAFレジスタの値を復帰し、割込み禁止状態のままRET命令を実行する(ST15、ST16)。一方、P/Vフラグが1なら再度POP命令を実行してAFレジスタの値を復帰すると共に、割込み許可状態に変更してRET命令を実行する(ST17〜ST19)。何れにしても、RET命令が実行されることによって、スタック領域にPUSH処理されていた中断時のPC(プログラムカウンタ)の値が復元され、停電等により中断されていた処理が再開されることになる。
【0054】
ところで、ステップST12の処理を終えた後に、ウォッチドックタイマWDTからCPUリセット信号URSTは発せられるようなことがあると、再リセットされた後のCPUの処理は、ステップST4からステップST5に移行するので、もはや中断した遊技動作を再開できなくなる。しかし、このパチンコ機では、CPUがリセットされるに先立って、ウォッチドックタイマWDTをクリアしているので(図7のt2)、無意味にCPUがリセットされる恐れは極めて低い。
【0055】
なお、CPUがリセットされる恐れを更に解消する趣旨からは、図9の破線で示すように、停電時からの復帰処理完了を示す処理(ST11,12)に先だって、ステップST10のタイミングでウォッチドッグタイマWDTにタイマクリア信号を出力しても良い。この場合には、図7のt2のタイミングに加えて同様の処理が実行されるので、自走状態におけるウォッチドッグタイマWDTのリセット出力のHレベル期間TWDを短く設定して(具体的には時定数C1×R1を小さくする)、プログラム暴走時の対応を迅速化しても、そのことに伴うトラブルが生じない。
【0056】
図10は、停電などによって電源電圧が降下した際に生じるNMIの割込み処理プログラムの内容を示すフローチャートである。この割込み処理では、先ず、各レジスタ(AF,I,BC,DE,HL)の内容がスタックエリアにPUSHされる(ST20)。但し、Iレジスタの値を直接スタックエリアにPUSHすることはできないので、LD A,Iの命令を実行した後、PUSH AFの命令を実行することで代行している。
【0057】
次に、図10(b)に示すバックアップフラグBFLの記憶エリアの内容をチェックし、また、SP記憶エリアの内容をチェックする(ST21)。図9のステップST11、ST12に関して説明したように、NMI割込みから正常に復帰した場合には、バックアップフラグBFLやSP記憶エリアの内容はゼロの筈である。したがって、ステップST21の判定において、双方ともゼロであるとの条件が成立しない場合とは、NMI割込みの復帰処理中(ST1〜ST10)の間に、改めてNMI割込みが生じたことを意味する。
【0058】
このような場合には、ステップST22以降の処理に移行しても、ステップST22において、NMI割込み時のスタックポインタSPの値が破壊されるので停電前の状態を復元することができなくなる。そこで、この実施例では、NMI割込みの復帰処理中(ST1〜ST10)の間に、再度、電源電圧が降下して改めてNMI割込みが生じたような場合には、0000H番地に処理を移行させるようにしている。このように対応することによって、メインルーチンの処理は、ステップST1からステップST4に進み、更に、ステップST7に進むことによって中断前の処理を復元することが可能となる。
【0059】
一方、バックアップフラグBFLやSP記憶エリアの内容が共にゼロである通常の場合には、ステップST21からステップST22に処理が移り、ステップST20におけるPUSH命令実行後のスタックポインタSPの値が、RAMのSP記憶エリアに保存される(ST22)。図10(b)(c)は、各レジスタ(AF,I,BC,DE,HL)やスタックポインタSP、プログラムカウンタPCの退避状態を図示している。
【0060】
続いて、現在、賞球を払出し中の場合もあるので、賞球計数スイッチの状態を検出して記憶する(ST23)。なお、所定時間待機するのは(ST24)、払出し中の賞球が移動する時間を考慮したものである。その他、図示していないが、必要なデータをバックアップした後、バックアップフラグBFLのRAMエリアにフラグ値5AHを記憶し(ST25)、以降、RAMのアクセスを禁止して電源電圧が降下してCPUが非動作状態になるのを待つ(ST26)。その後、CPUは非動作状態となるが、RAMにはバックアップ電源が供給されているので、バックアップされたデータがそのまま保存され続ける。すなわち、電源が完全に遮断された後もRAMエリアは、図10(b)(c)の状態のまま維持される。
【0061】
図11は、メインルーチン(図9)の無限ループ処理(ST6)の間に2msec毎に生じるタイマ割込みINT(Maskable Interrupt禁止可能割込み)の割込み処理プログラムの内容を示すフローチャートである。タイマ割込みが生じると、各レジスタの内容はスタック領域に退避され、乱数作成処理、スイッチ入力管理処理、エラー管理処理などが行われる(ST30)。スイッチ入力管理処理は、ゲートや電動チューリップなどを遊技球が通過したか否かの判定であり、エラー管理処理は、機器内部に異常が生じていないかの判定である。また、乱数作成処理とは、ハードウェア的に更新されている当り用乱数値や大当たり乱数値の取得処理を意味する。
【0062】
その後、処理分けカウンタの値が判定されて、ST32〜ST36のうちの該当する処理が行われる。上記したエラー管理やスイッチ管理は、短い時間間隔で繰り返し行うべきであるが、一方、パチンコゲームの演出に係わる処理は遊技者のニーズに応じて複雑高度化するため、ある程度以上の処理時間を要することになる。そこで、この実施例では、全ての遊技制御動作を1回の割込み処理で完了させのではなく、5種類の処理に区分し、区分された各処理を割込み毎に分担して実行するようにしている。そのため、0〜4の範囲で循環動作する処理分けカウンタを設けて、処理分けカウンタの値に応じた処理を行うようにしている。
【0063】
具体的に説明すると、処理分けカウンタが0の場合には大入賞口の開放などに関する処理を行い(ST32)、処理分けカウンタが1の場合には当り状態(電動チューリップの開放)か否かに関する普通図柄処理を行い(ST32)、処理分けカウンタが2の場合には大当り状態か否かに関する処理を行っている(ST32)。また、処理分けカウンタが3の場合には、電動チューリップや大入賞口の開閉タイミングに関係するタイマ管理処理や、主制御基板から各制御基板に伝送されるコマンド作成処理が行われる(ST35)。処理分けカウンタが4の場合には、情報出力やエラー表示コマンドの作成処理が行われる(ST36)。そして、その後、ウォッチドッグタイマWDTにタイマクリア信号を出力するようにしている(ST37)。
【0064】
ステップST37の処理は、5回目の割込み処理において実行されるので、ステップST37におけるタイマクリア信号の発生周期は、通常は2msec×5である。しかし、NMIの割込みが生じた後、電源が復旧したような場合には、更にメインルーチン(図9)の処理が加わるので、2msec×5より長い時間タイマクリア信号が発生しなことになる。しかし、本実施例の場合には、少なくとも電源投入時に(図7のt2のタイミング)、ウォッチドッグタイマWDTがクリアされるので、停電などからの復旧後、意味もなくCPUがリセットされて中断した処理に戻れないという弊害はない。
【0065】
ステップST32〜ST36の何れかの処理が終わると、処理分けカウンタの値が更新された後(ST39)、生成されているコマンドが各制御基板に伝送される(ST40)。また、各レジスタの値が復帰されると共に割込み許可状態に変更されて、割込み処理ルーチンからメインルーチンに戻る(ST40)。なお、図11の破線で示すように、各割込み毎にウォッチドッグタイマWDTにタイマクリア信号を出力しても良く(ST38)、この場合には、充放電コンデンサC1の充電完了までの時間をより短く設定して、プログラムの暴走をより迅速に検知してCPUをリセット状態にすることが可能となる。
【0066】
以上、本発明の一実施例について説明したが、具体的な技術内容は、特に、本発明を限定するものではない。例えば、図9に記載したステップST11とステップST12の処理順序を逆転されるのも好適である。すなわち、このような実施態様では、如何なる場合にも、SP記憶エリアがゼロクリアされているにも係わらず、バックアップフラグがゼロクリアされていない状態でCPUがリセットされることはなく、最悪でも、バックアップフラグがゼロクリアされているにも係わらず、SP記憶エリアがゼロクリアされていない状態でCPUがリセットされる程度である。そして、この最悪の事態でも、バックアップフラグがゼロクリアされているので、ステップST4の処理の後、ステップST5の処理に移行してリセット処理が正しく行われる。
【0067】
また、図9の破線で示すように、ステップST37(ST38)に代えて、或いは加えて、ステップST6の処理の後にウォッチドッグタイマWDTのクリア処理を設けても良い。なお、ORゲートG1の出力は、実施例のようにコンデンサを介してウォッチドッグタイマWDTに供給する場合に限らず、直接的にリセット手段WDTに供給して良いのは勿論である。
【0068】
【発明の効果】
以上説明したように、本発明によれば、中断された遊技動作が再開されるに際して、万一、電源電圧の変動やその他の電気的トラブルがあったとしても、極力、元のゲームが再現することが可能となる。
【図面の簡単な説明】
【図1】実施例に係るパチンコ機の斜視図である。
【図2】図1のパチンコ機の側面図である。
【図3】図1のパチンコ機の正面図である。
【図4】図1のパチンコ機の背面図である。
【図5】ウォッチドッグタイマ回路とシステムリセット回路の回路例である。
【図6】システムリセット回路の回路動作を説明するタイムチャートである。
【図7】ウォッチドッグタイマ回路の動作内容を説明するタイムチャートである。
【図8】本実施例の効果を説明するためのタイムチャートと対比回路図である。
【図9】実施例に係る遊技制御プログラムのメインルーチンのフローチャートである。
【図10】停電時などに実施されるNMI割込み処理プログラムのフローチャートである。
【図11】タイマ割込みにおけるINT割込み処理プログラムのフローチャートである。
【符号の説明】
WDT ウォッチドッグタイマ
2 遊技機(パチンコ機)
ST37 クリア処理
52 クリア回路(システムリセット回路)
Claims (6)
- 装置内部に記憶された制御プログラムにしたがって遊技動作を実現する一方、前記制御プログラムにしたがった正常な処理がされなくなると、自走状態となるリセット回路の動作に基づいて、遊技動作を強制的に初期状態に戻すようにした遊技機であって、
所定時間以内の間隔でパルス状のクリア信号を出力するクリア処理を設けると共に、
電源投入時に生成されるパルス状の電源リセット信号を受けてこれを出力すると共に、前記電源リセット信号の後に開始される所定のカウント動作が終了した後に、パルス状のイニシャル信号を出力するクリア回路を設け、
前記電源リセット信号と前記イニシャル信号に基づいてシステムを電源リセット状態にすると共に、
前記クリア信号と前記イニシャル信号のOR出力を前記リセット回路のクロック端子に供給することで、前記リセット回路が自走状態となることを、電源投入直後から回避するようにしたことを特徴とする遊技機。 - 前記クリア回路は、カウンタ回路とフリップフロップ回路とを備えて構成され、前記カウンタ回路のカウンタ値が所定値に達すると、前記イニシャル信号が立ち上がるよう構成されている請求項1に記載の遊技機。
- 前記OR出力は、微分動作用のコンデンサを経由して前記リセット回路のクロック端子に供給される請求項1又は2に記載の遊技機。
- 前記イニシャル信号は、レベル反転されてCPUに供給されている請求項1〜3の何れかに記載の遊技機。
- 前記制御プログラムは、電源投入に対応して開始されて通常は無限ループ処理で終わる第1処理と、所定時間毎に繰り返し実行される第2処理とを含み、前記第1処理は、電源降下時に退避したレジスタの値を、元のレジスタに戻す復帰処理を備え、前記クリア処理は、前記復帰処理に対応して実行されている請求項1〜4の何れかに記載の遊技機。
- 前記制御プログラムは、電源投入に対応して開始されて通常は無限ループ処理で終わる第1処理と、所定時間(T)毎に繰り返し実行される第2処理とを含み、前記第2処理は、前記所定時間(T)毎に毎回実行される共通処理と、前記所定時間のN倍の時間(NT)間隔で実行される合計N種類の区分処理とで構成され、前記クリア処理は、前記区分処理のいずれか一つで実行されている請求項1〜5の何れかに記載の遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001025885A JP3860972B2 (ja) | 2001-02-01 | 2001-02-01 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001025885A JP3860972B2 (ja) | 2001-02-01 | 2001-02-01 | 遊技機 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006130263A Division JP4308221B2 (ja) | 2006-05-09 | 2006-05-09 | 遊技機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002224400A JP2002224400A (ja) | 2002-08-13 |
JP3860972B2 true JP3860972B2 (ja) | 2006-12-20 |
Family
ID=18890797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001025885A Expired - Fee Related JP3860972B2 (ja) | 2001-02-01 | 2001-02-01 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3860972B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5017682B2 (ja) * | 2007-01-31 | 2012-09-05 | 株式会社大都技研 | 遊技台 |
JP5017681B2 (ja) * | 2007-01-31 | 2012-09-05 | 株式会社大都技研 | 遊技台 |
JP2011177390A (ja) * | 2010-03-02 | 2011-09-15 | Sophia Co Ltd | 遊技機 |
JP5564656B2 (ja) * | 2010-12-28 | 2014-07-30 | 株式会社大都技研 | 遊技台 |
JP5318986B2 (ja) * | 2012-03-16 | 2013-10-16 | 株式会社藤商事 | 遊技機 |
JP5888528B2 (ja) * | 2014-05-15 | 2016-03-22 | 株式会社大都技研 | 遊技台 |
-
2001
- 2001-02-01 JP JP2001025885A patent/JP3860972B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002224400A (ja) | 2002-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4789862B2 (ja) | 遊技機 | |
JP4907608B2 (ja) | 遊技機 | |
JP3859129B2 (ja) | 遊技機 | |
JP4587997B2 (ja) | 遊技機 | |
JP3860972B2 (ja) | 遊技機 | |
JP4805968B2 (ja) | 遊技機 | |
JP2001161910A (ja) | 遊技機 | |
JP4308214B2 (ja) | 弾球遊技機 | |
JP3949898B2 (ja) | 遊技機 | |
JP3953281B2 (ja) | 遊技機 | |
JP4308221B2 (ja) | 遊技機 | |
JP3779883B2 (ja) | 遊技機 | |
JP4024235B2 (ja) | 遊技機 | |
JP2004057252A (ja) | 遊技機 | |
JP4372122B2 (ja) | 遊技機 | |
JP3917389B2 (ja) | 弾球遊技機 | |
JP3612053B2 (ja) | 遊技機 | |
JP3938495B2 (ja) | 遊技機 | |
JP2001198330A (ja) | 遊技機 | |
JP4206098B2 (ja) | 遊技機 | |
JP3891804B2 (ja) | 遊技機 | |
JP4024233B2 (ja) | 遊技機 | |
JP5475024B2 (ja) | 遊技機 | |
JP5497843B2 (ja) | 遊技機 | |
JP4024234B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060131 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060418 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060509 |
|
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: 20060829 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060925 |
|
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: 20100929 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110929 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120929 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120929 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130929 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |