(57)【要約】【課題】  遊技機の基板の検定をより、判り易く、より効率的に、より実際の動作を再現する。【解決手段】  プログラムに従って動作するＣＰＵを備えた遊技機の制御装置において、あらかじめ設定された周期で同期パルスを出力信号として出力する同期信号発生手段と、前記同期信号発生器からの前記出力信号を前記ＣＰＵに入力する信号入力手段と、プログラムに従って前記信号入力部を制御して前記同期信号発生器の出力信号の状態を検知する手段と、前記検知手段において前記あらかじめ設定された周期で出力される同期パルスであると判断した場合にリセット信号により開始される初期化処理の次ぎのステップからプログラム動作を実行させ、否と判断した場合に、あらかじめ定められたジョブを実行させる手段とを含み、前記実行手段において、否と決定した場合に、同期パルスであると決定するまで、繰り返して前記検知する手段を制御する。【選択図】          図８
2005169153.tif 000002
【特許請求の範囲】
【請求項１】
プログラムに従って動作するＣＰＵを備えた遊技機の制御装置において、
あらかじめ設定された周期で同期パルスを出力信号として出力する同期信号発生手段と、
前記同期信号発生器からの前記出力信号を前記ＣＰＵに入力し、前記出力信号の状態を検知する手段と、
前記検知する手段において検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると判断した場合にリセット信号により開始される初期化処理を実行した後の通常処理を実行させ、前記検知手段により検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、あらかじめ定められた処理を実行させる手段と
を含み、
前記実行させる手段において、前記あらかじめ設定された周期で出力される同期パルスでないと決定した場合に、検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると決定するまで、繰り返して前記検知する手段を制御することを特徴とする遊技機の制御装置。
【請求項２】
プログラムに従って動作するＣＰＵを備えた遊技機の制御装置において、
あらかじめ設定された周期で同期パルスを出力信号として出力する同期信号発生手段と、
前記同期信号発生器からの前記出力信号を前記ＣＰＵに入力し、前記出力信号の状態を検知する手段と、
前記検知手段により検知した信号が前記あらかじめ設定された周期で出力される同期パルスであると決定した場合に、前記周期で繰り返し実行されるプログラムの先頭からプログラム動作を実行させ、前記検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、再び前記入力部を制御して前記同期信号発生器の前記出力信号の状態を検知するように制御する制御手段と、
特別図柄を変動表示させる際に使用されるランダム要素を生成するカウンタを更新するカウンタ更新手段とを
有し、
前記制御手段は、前記検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、前検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると決定するまで、前記カウンタ更新手段を制御して前記カウンタを更新させた後に再び前記検知手段を制御することを繰り返す
ことを特徴とする遊技機の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊技機における制御装置、とくに遊技機内の各種装置の制御をするためにＣＰＵを備えたものに関する。さらに詳述すれば、ＣＰＵを利用した遊技機のプログラムを繰り返し起動する方法、あるいは遊技機の制御方式に関する。
【背景技術】
【０００２】
パチンコ機を含む、いわゆる遊技機と分類されるものには、スロットゲームなどの、色々な種類がある。近年、これらの遊技機は、遊技内容、画像生成を含む画像表示、音響生成を含む音響再生またはメカニカルな機構などに対する制御を、ＣＰＵを利用して行うことが普通になっている。また、遊技内容や画像表示についても、年々、高度の技術を使用したものに変化している。
【０００３】
図１は、遊技機、この場合、パチンコ機の正面の概観の一例を示す。パチンコ機の機械構造は、たとえば、特開平１１−３１９２５２号に示されるような従来例と同様とすることができるので、説明は本発明に関わる構成部のみに留める。
【０００４】
図１において、１００は、遊技盤面に設けられた特別図柄始動入賞口への入賞に基づいて、イメージパターンをいわゆる”変動表示”する特別図柄表示装置である。１０１は、特別図柄表示装置に表示される３組の停止図柄表示（特別識別情報）が、あらかじめ定めた特定の数字あるいは記号の組み合わせ（たとえば、大役識別情報）となったとき、すなわち、特賞状態になったときに、入賞口が開放する変動入賞装置である。１０２は特定領域であり、特賞状態中に、遊技球が入賞すると、特賞状態が継続される。
【０００５】
１０３は普通図柄表示装置であり、特定の入賞口に遊技球が入賞すると、異なる数字あるいは記号が変動しながら表示される。
【０００６】
図２は遊技機の制御系の回路構成を示す。なお、図１と同様の個所には同一の符号を付し、詳細な説明を省略する。なお太線部分は主制御部に含まれる。
【０００７】
図２において、２００は遊技機の主制御部の処理装置として機能するＣＰＵである。ＣＰＵ２００はＲＯＭ２０１およびＲＡＭ２０２を内蔵するＣＰＵチップを使用するが、ＲＯＭおよびＲＡＭはバス接続しても良い。
【０００８】
ＲＯＭ２０１には遊技機を制御するプログラムが記憶されている。このプログラムの中に、通常、特別図柄始動入賞口への入賞に基づいて変動表示後の停止図柄を決定する乱数を発生させる、すなわち、特別図柄示装置に停止表示される停止図柄が特定の組み合わせになる確率を設定し、特別図柄始動入賞口への入賞に応じて特別図柄表示装置に対して表示態様を指示する制御を行うプログラムが含まれている。ＲＯＭ２０１にはさらに、遊技機を制御するための各種のパラメータの値が格納されている。ＲＡＭ２０２はＣＰＵ２００に対する入出力データや演算処理のためのデータ等を記憶する。
【０００９】
２０３は入力ポートであり、特別図柄始動スイッチ２２、普通図柄作動スイッチ２３、大入賞口スイッチ３４、図示していないが、その他のスイッチからの信号を入力し、ＣＰＵ２００に伝える。
【００１０】
２１３は出力ポートであり、特別図柄表示装置１００、普通図柄表示装置１０３、変動入賞装置２０９、各種のランプ表示装置２１１、効果音発生装置２１２などの装置に対して主制御部からの指示を伝える。
【００１１】
２２０は同期信号発生器であり、クロック・ジェネレータからのクロック信号を受けて、約２ｍｓ〜４ｍｓの周期を持つ信号を出力し、電源回路からのパワー・オン・リセット信号を含めて主制御部のＣＰＵ２００を含むＩＣをリセットする。主制御部のＣＰＵ２００は、このハードウエア・リセット信号を受けて、周期的な動作をする。電源回路から、入力ポート２０３に入力されている信号は、前述のハードウエア・リセット信号に対して、パワー・オン時であることをＣＰＵに伝える信号である。
【００１２】
出力ポート２１３からの信号を受ける特別図柄表示装置１００は、図３に示すようにＬＣＤ３０５（図１において１００で示している）を駆動する装置であり、遊技機としての主制御部２００からの信号を受けて動作するＣＰＵ３０１と画像処理用ＬＳＩ３０４を持つ装置である。
【００１３】
遊技機のＣＰＵによる制御システムは、以上でその概要を説明したように、遊技機の制御システムとしての入力と出力は完全に分離され、この入力と出力の間には主制御部２００が位置している。
【００１４】
出力ポート２１３から信号を受ける効果音発生装置２１２も上記の特別図柄表示装置１００と同様に内部にＣＰＵを有している。
【００１５】
ＣＰＵ２００の制御下で、特別図柄表示装置１００によって表示される停止特別図柄の数字あるいは記号が特定の数字の組み合わせを表示した段階で、それが特賞（大当り）の場合ＣＰＵ２００は、出力ポート２１３を経由して変動入賞装置２０９を制御し、図１の変動入賞装置１０１の入賞口を開放する、すなわち入賞口を拡大する。ここで、特別図柄表示装置１００の制御に従って、停止特別図柄の組み合わせが決定され、そして表示されるように見えるが、実際上では、ＣＰＵ２００の制御下においてこれらの表示制御が行われており、インターフェースに関わる制御信号を除いて、特別図柄表示装置からＣＰＵ２００に対して、データが送られることはない。いわゆる”変動表示”の時間についても、停止図柄データについても、特別図柄表示装置１００はＣＰＵ２００の管理下に置かれている。
【００１６】
ここで、一般的な意味でいわゆるコンピュータ、あるいは電子計算機と称されるものが使用される環境下とは異なり、遊技機の制御に使用されるＣＰＵは、良いとは言えない環境条件下に置かれている。
【００１７】
一般的にＣＰＵ集積回路素子またはこれらを含む回路基板は、温度、湿度、電磁波ノイズ、電源事情、接地、等を含む周囲環境条件に対して影響を受けやすく、実際に置かれる環境条件と使用条件に適応させる工夫がされているのが通常である。
【００１８】
前述した電磁波ノイズまたはＡＣ電源からのノイズをＣＰＵが受けると、ＣＰＵが処理する各種データ内容が変化し、これらの変化の結果としてＣＰＵの命令取りだし時にあらかじめ定められたプログラム命令以外のアドレスの情報を取り込み、または、またはデータ内容を取り込んでしまう。このようなことが発生すると、ＣＰＵは、いわゆるプログラムの暴走等を発生させ、その後の動作は所定の動作ではなくなったり、またはまったく外部からの指令を受け付けず、まったくの動作不能状態に陥る。このような状態になることを防止するには、外来ノイズの防止対策の実行と、ウォッチ・ドッグ・タイマの使用がある。後者は、通常のＣＰＵのプログラム動作は所定のルーチンを繰り返しているとの前提で、その所定のルーチンを繰り返しが行われないことをＣＰＵの外部で検出して（実際は、通常ルーチンが実行されている場合、一定周期でウォッチ・ドッグ・タイマ・カウンタにリセット信号を送っている）、ＣＰＵに対してハードウエア・リセット信号を送るものである。通常、このウォッチ・ドッグ・タイマは、リセット入力を持つカウンタとそのカウンタがあらかじめ定めたカウント可能な最大値になったときにハードウエア・リセット信号を出力するリセット信号出力回路とから構成されている。
【００１９】
また、特願昭６０−１０２４４３号に示されるように、上述したウォッチ・ドッグ・タイマへのリセット信号の供給を停止したような動作をさせ、外来ノイズによる影響を最小限にする方法で、遊技機における複雑な制御をＣＰＵに実行させる方法が開示されている。すなわち、プログラムを内蔵したＣＰＵによって制御される遊技機において、このＣＰＵを一定周期ごとにリセットして完全に初期化するリセット信号発生手段を外部に設けている。そして、このリセット信号発生手段から発せられるリセット信号の周期を、所定のプログラム命令を一通り実行するのに要する処理時間よりも長く設定している。この周期はこの実施形態において３ｍｓとされており、一般的には２ｍｓ〜４ｍｓ程度である。この周期は、遊技機における時間的な制御、たとえば、特別電動役物の開放時間等のカウント等に使用されている。
【００２０】
このハードウエア・リセット信号を使用した従来例を図４および図７に示す。図４は、従来例のＣＰＵを使用した遊技機の基本的なプログラム・ステップの流れを表し、ハードウエア・リセットを使用した場合の基本的なフローチャートの概略を示す。ここでは、いわゆる遊技機におけるメイン基板を想定しているが、内部にＣＰＵを含む周辺基板に適用することも可能である。
【００２１】
この図４では、遊技機の各種乱数更新処理、基本タイマ更新処理、入力ポート処理、スイッチ・チェック処理、図柄制御処理、等の処理を、ジョブＡ、ジョブＢ、・・・ジョブＭとしている（ジョブＡからジョブＭまでの処理は、いわゆる、遊技機における通常処理と言われるもので、以下「通常処理」と呼ぶ）。ただし、ジョブＮについては、通常残余時間といわれている、図４に示した各種のジョブ（たとえば、ジョブＭまでのジョブ）が完了してからハードウエア・リセットが行われるまでの時間に、乱数発生のためのカウンタ更新を行う処理を表している。この図４のライン１１５は、ハードウエア・リセットにより、ハード的な方法でＣＰＵの処理が強制的にあらかじめ定められたプログラムの先頭に戻される様子を示している。このライン以外のラインはプログラムに従うフローを示している。
【００２２】
図７は、図２に示した同期信号発生器２２０とクロック・ジェネレータ２２１の部分を抜き出したものであり、従来例におけるＣＰＵ２００のパワー・オン・リセットとハードウエア・リセットの概略回路を示す図である。
【００２３】
遊技機の電源が投入されると、図７に示すパワー・オン・リセット信号２０は、しばらくの間、ロー状態を維持し、この間にＣＰＵ２００用の電源が公称電圧に落ち着く。そしてクロック・ジェネレータからクロックが供給される。しかし、この段階でも、パワー・オン・リセット信号２０はローを維持しているので、ＣＰＵ２００および周辺回路（たとえば、ＰＩＯ１４）はリセット状態となる。この後時間が経過し、パワー・オン・リセット信号がローからハイに変化すると、リセット状態は解除され、ＣＰＵ２００は、プログラムされた手順に従って、プログラムされたコマンドの実行を開始する。通常、図４のステップＳ１０２において、図７のＰＩＯのＡ０入力の信号をチェック（ポーリング）する。このとき、パワー・オン・リセット直後の場合、遅延回路３０により、ＰＩＯ１４のＡ０入力の信号はローの状態を維持している。したがって、ステップＳ１０２において、パワー・オン・リセット直後の状態であると判断し、図４のステップＳ１０３に進み、通常コールド・スタートと呼ばれるＲＡＭのデータ領域の初期設定を含む初期化処理を行う。ここで、図４のライン１１５を経由してステップＳ１０１が実行された場合、すなわち、パワー・オン・リセット以外のハードウエア・リセットが行われた場合、パワー・オン・リセット信号は、ハイの状態を維持し続けているので、ＰＩＯ１４のＡ０入力はハイである。したがって、この場合、ステップＳ１０２において、ＣＰＵ２００はパワー・オン・リセットではないと判断し、ステップＳ１０４に進む。このステップＳ１０４では、周辺機器からの割込み制御に備えて、スタック・ポインタの初期化が行われ、以後はプログラムに従って、通常処理、即ちステップＳ１０５のジョブＡ、ステップＳ１０６のジョブＢを次々と実行する。これ以後、プログラムされているジョブが順に実行され、ステップＳ１１０のジョブＭまで実行されると、つぎにハードウエア・リセットされるまでの残余の時間、ジョブＮが繰り返し実行される。この繰り返しの最中にハードウエア・リセットが行われ、先頭のステップＳ１０１に強制的に戻される。以上の繰り返しで遊技機におけるプログラク処理が遂行されてゆくことになる。
【００２４】
図７においてＣＰＵ２００はクロック・ジェネレータ２２１からのクロックに従って動作し、通常はこのクロックを分周してより低い周波数のクロックが同期信号発生器２２０に送られる。同期信号発生器は、通常、リセット入力を持つカウンタで構成され、リセット入力には、パワー・オン・リセット信号（図示していない）が入力されて、パワー・オン後のしばらくの間、このカウンタはリセットされている。リセット状態が解除されると、クロック入力には、クロック・ジェネレータからのクロック信号が入力されているので、カウントを開始する。所定数のクロックをカウントすると、ＯＲゲートに対してロー出力を出力し、ＯＲゲートを経由してＣＰＵ２００のリセット入力をローにしてＣＰＵ２００をリセットする。ここで、同期信号発生器２２０のリセットが解除されてから、最初のリセット信号が出力されるまでの時間は、同期信号から次々と出力されるリセット信号の周期に実質的に等しいことは当然である。もし、ステップＳ１０３の初期化処理にある程度の時間を必要とする場合、同期信号発生器の構成を変更し、この同期信号発生器がパワー・オン・リセットされた直後においては、必要とする時間経過後に最初の、同期信号としてのハードウエア・リセット信号を、出力するように構成することもできる。
【００２５】
また、例示しないが、別な方法では、ＣＰＵの外部に所定時間間隔でパルスを出力するタイマを設け、このタイマの出力パルスをＣＰＵの割り込み入力（たとえば、ＮＭＩ；Ｎｏｎ  Ｍａｓｋａｂｌｅ  Ｉｎｔｅｒｒｕｐｕｔ、もっとも優先度が高い割り込みで、他の割り込みが生じてもマスクされない割り込み入力）に入力し、同様の動作をさせている。
【００２６】
また、上述したハードウエア・リセットあるいはタイマ割り込みの方法は、いわゆるメイン基板だけではなく、周辺の基板に対しても実施されてきていた。これは、それぞれの基板で時間制御が必要な場合が多く、そのような制御にこのような信号から生じる時間間隔を使用するのが便利であるからである。
【００２７】
以上のような方法は、遊技機における複雑な制御を、コンパクトな形で、効率良く制御し、かつ劣悪と考えられてきた遊技機における周囲環境条件下において確実に動作させるための必要条件と考えられてきた。
【発明の開示】
【発明が解決しようとする課題】
【００２８】
現在、パチンコ、パチスロ機は、サウンド、画像等に最先端の技術導入が顕著であるが、その一方、公的機関により検査を受けて、合格したものだけが、製造および販売することが許可されている。一般的には、最先端の技術を採用すると、検査が非常に困難になると言った不具合も発生する。最先端の技術を採用しながらも、このような不具合を解消するために、サウンド、画像等の各種の機能を印刷基板として物理的に分割し、これらを、ゲームを主として制御するいわゆる主基板（メインのＣＰＵ基板で、主制御部に相当する）からのコマンドを受けて動作するような構成が望まれている。公的機関による検査において、主基板からコマンドを受ける周辺の基板はシュミレータ等による簡易な方法で検査可能なシステム構成として従来の複雑な検査工程をなくし、また、機能分割によって主にゲームの管理機能に絞られた主基板（メインＣＰＵ基板）を中心に検査することとしている。このことは、ゲームの管理機能にその機能が絞られた主基板（メイン基板）から、従来のサウンドや画像表示のための制御機能の多くを周辺基板（サブ基板）に移管することにより、主基板と周辺基板を含む全体の検査項目を大幅に減少させ、さらに検査内容そのものも単純化させることを意味している。
【００２９】
以上のような遊技機を取り巻く環境条件、この場合、前述した温度、湿度、電磁波ノイズ、電源事情、接地、等を含む物理的な周囲環境条件ではなく、規制上のソフト的な環境条件の変化に対して、上述した制御方式は少なくない問題を生じさせている。それは、メイン基板の動作仕様や動作状況を検定する際の容易さに係わる問題である。従来のソフト的な環境条件下においても問題点として存在したが、その比率が、新しいソフト的な環境条件下において、さらに大きくなっているということである。
【００３０】
すなわち、上述した検定は、いわゆるメイン基板にイン・サーキット・エミュレータを接続し、イン・サーキット・エミュレータ上で、プログラムの実行を色々と操作し確認しながら行われる。このプログラムの実行に係わる操作は、ある場合にはステップごとに、ある場合には、所定のステップまで連続して、行わせる、ことなどが行われる。また、サブ基板との信号のやり取りの確認、プログラムの実行手順、出力信号の確認、などが行われる。ここで、このイン・サーキット・エミュレータを使用した検定では、通常の遊技機としての動作形態と異なる状態で行われるということである。すなわち、通常であれば、ＣＰＵは、内蔵されているプログラムを、入力されているクロック信号に従って順に連続して実行するが、検定においては、必ずしもクロック信号に従って連続して実行されるとは限らず、イン・サーキット・エミュレータの操作によっては、プログラム途中において停止状態が数分間継続する場合がある、ということである。
【００３１】
このような、イン・サーキット・エミュレータの使用状態において、たとえば、前述した特願昭６０−１０２４４３に開示された技術を使用した場合、不具合が発生する。この場合、接続されている遊技機の基板では、実際に定期的なハードウエア・リセット信号が発生しており、上述した停止状態は、実際上では、極僅かの時間であって、リセット信号が入力されると、イン・サーキット・エミュレータの操作と無関係に、ＣＰＵは初期状態にリセットされてしまう。すなわち、それまでのプログラムの実行が途中段階で終了することになる。このことは、以降のプログラムが実行されないことを意味し、検査しているプログラムに対して、それを現実に実行した場合と、イン・サーキット・エミュレータを使用した場合における動作に違いが生じ場合があり、その検定の仕方にある種の困難性を生じさせている。
【００３２】
以上の問題は、検定中だけの問題ではなく、新規のプログラム開発等におけるプログラムの確認・検証の段階でも生じている。
【００３３】
また、周期的なハードウエア・リセットを使用する方法を採用した場合、プログラム処理が中断する場合があり得るため、と言うより、プログラム処理が所定時間過ぎると強制的に先頭に戻されてしまうため、ハードウエア・リセットの１周期以内に考えられるすべてのジョブが処理完了するように、処理時間を綿密に計算し、この周期をオーバーしないようにプログラム設計する必要が生じる。また、イン・サーキット・エミュレータを使用してデータ内容を確認しようとした場合に、プログラム処理が途中でハードウエア・リセットにより強制終了してしまうことも発生する。このため、イン・サーキット・エミュレータを使用してのデバック・検証を効率良く進めるために、どのタイミングで割り込み、ハードウエア・リセット信号が入力されても良いように設計しなくてはならず、遊技機の制御プログラム設計を矛盾無く、整合性を持って構成するのに、入念な設計・検証が必要であった。
【００３４】
また、通常の遊技機においては、ハードウエア・リセットが解除されて所定のジョブの実行が完了してから、次のハードウエア・リセットが入力されるまで、遊技機制御に使用するための乱数を生成するために、カウンタのインクリメント動作等をさせている。このような乱数発生のためのプログラム動作も、イン・サーキット・エミュレータを使用してのデバック・検証を行うと影響を受け、実際の動作状態と異なった結果（乱数値）を生じさせてしまう。
【００３５】
また、遊技機の電源が瞬断、あるいは短時間の停電が発生した場合の対策は、従来行われていなかったが、今後においては、発生確率が低いものの、対策をすることが望まれている。電源の瞬停時、瞬断時、または電源断の対策とは、ＡＣ電源の波形を監視して波形の断を検出し、この検出時点から制御電圧の降下が始まるまでの短い時間に、保持すべきデータ等の退避を行い、電源復帰時に退避したデータを基にして退避前の状態にし、退避前の実行を継続させることである。すなわち、ＣＰＵがリセットされた後に、リセット直前の状態に復帰し、プログラムを継続して実行するに必要なＣＰＵ、あるいは周辺ＩＣ（たとえば、図４の場合、ＰＩＯ１４）内の各種レジスタの値を、そして電源の断によりデータを退避した旨の情報を不揮発性のＲＡＭまたは、バッテリ・バックアップされたメモリに保存する。電源の復帰時に退避した旨の情報を元に、退避したデータを使用して、ＣＰＵの動作状態を、瞬断あるいは停電前の状態に復元する、ことである。または、電源の瞬断によるノイズの影響を受けて、あるいは、ハードウエア・リセットが行われずにプログラムの実行が停止したままの状態が所定時間経過した際に、自動的にハードウエア・リセット（あるいは、ソフトウエア・リセット）を行って、動作を復元することである。
【００３６】
この対策を行うと、瞬停あるいは短時間の停電にも関わらず、遊技機のゲーム中の色々な状態を継続して動作させることが可能になる。とくに、遊技者に有利な状態に遊技機がある場合や、遊技者に有利な権利が発生していた場合は、そのような状態を中断し、終了することなく継続することは重要である。ただし、ＣＰＵに関する事項だけであるが。
【００３７】
ここで通常、瞬停対策は、ＡＣ電源の波形の欠落または異常を検出することから始まり、この検出信号はマスクされない割り込み入力信号（ＮＭＩ）に入力されるのが常である。しかし、前述した動作のために既にＮＭＩ入力を使用していると、この通常の方法を採用することができない。また、前述したハードウエア・リセットの方法を使用した制御方法を採用していると、ＮＭＩをこの電源対策のためにＡＣ断検出信号入力として使用できるが、ＮＭＩ処理中、すなわち、上述したデータ等の退避処理、またはデータ等の復帰処理中にハードウエア・リセット信号が入力された場合は、それらの処理は中途半端に終わってしまうことになる。この退避処理や復帰処理にはある程度の時間を要し、かつハードウエア・リセット信号と無関係に発生する。したがって、これらの処理中にハードウエア・リセット信号が入力されることは、無視し得ない確率で発生することになる。
【００３８】
本発明の目的は、このような検定における不具合を解消し、イン・サーキット・エミュレータを使用した場合でも、プログラムとその結果の整合性が失われることなく、実際のプログラム実行時の動作を検定においても行わせることにある。すなわち、遊技機の基板の検定をより、判り易く、より効率的に、より実際の動作を再現する改良された遊技機の制御装置を提供することである。
【００３９】
また、本発明の目的は、今後実施される電源の瞬断時にも、あるいは一時的な停電後にもゲームを継続して行うことを可能にする遊技機の制御装置を提供することである。
【課題を解決するための手段】
【００４０】
このような目的を達成するために、本発明のプログラムに従って動作するＣＰＵを備えた遊技機の制御装置において、あらかじめ設定された周期で同期パルスを出力信号として出力する同期信号発生手段と、前記同期信号発生器からの前記出力信号を前記ＣＰＵに入力し、前記出力信号の状態を検知する手段と、前記検知する手段において検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると判断した場合にリセット信号により開始される初期化処理を実行した後の通常処理を実行させ、前記検知手段により検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、あらかじめ定められた処理を実行させる手段とを含み、前記実行させる手段において、前記あらかじめ設定された周期で出力される同期パルスでないと決定した場合に、検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると決定するまで、繰り返して前記検知する手段を制御するようにした。
【００４１】
また、プログラムに従って動作するＣＰＵを備えた遊技機の制御装置において、あらかじめ設定された周期で同期パルスを出力信号として出力する同期信号発生手段と、前記同期信号発生器からの前記出力信号を前記ＣＰＵに入力し、前記出力信号の状態を検知する手段と、前記検知手段により検知した信号が前記あらかじめ設定された周期で出力される同期パルスであると決定した場合に、前記周期で繰り返し実行されるプログラムの先頭からプログラム動作を実行させ、前記検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、再び前記入力部を制御して前記同期信号発生器の前記出力信号の状態を検知するように制御する制御手段と、特別図柄を変動表示させる際に使用されるランダム要素を生成するカウンタを更新するカウンタ更新手段とを有し、前記制御手段は、前記検知した結果が前記あらかじめ設定された周期で出力される同期パルスでないと判断した場合に、前検知した結果が前記あらかじめ設定された周期で出力される同期パルスであると決定するまで、前記カウンタ更新手段を制御して前記カウンタを更新させた後に再び前記検知手段を制御することを繰り返すようにした。
【発明の効果】
【００４２】
本発明によれば、従来方法における問題点、とくにイン・サーキット・エミュレータを使用したプログラム検証時の問題点（この検証にはプログラム開発時の検証時、および「遊技機の認定及び型式の検定に関する規則」に基づく検定時が含まれる）を解決し、プログラムの仕様や動作の確認を容易にする。
【００４３】
また、上述の検定時の問題を回避するためのプログラム設計を不要とし、プログラム設計を容易にする。
【００４４】
また、ＡＣ電源の瞬断や一時的停電の対策を取るための前提条件を与える。
【発明を実施するための最良の形態】
【００４５】
以下、本発明を適用した実施形態について図面を参照しながら説明する。図８は発明を適用した実施形態を示し、主制御部のパワー・オン・リセットおよび同期信号とＣＰＵとの関係を示している。従来例として示した図７の部分に対応した同一の部分は、同一番号で示している。また、図５は本発明を適用した実施形態を示し、主制御部の動作フローを示している。従来例として示した図４に対応する部分は同一番号を付している。
【００４６】
本発明の実施形態を示す図８において、従来例を示す図７と異なる部分は、図７のＯＲ１３が撤去され、パワー・オン・リセット信号２０が直接ＣＰＵ２００のリセットに入力され、そして同期信号発生器の出力が、ＰＩＯのＡ１入力に入力されている部分である。ＣＰＵ２００は、ＰＩＯ１４のＡ１入力をポーリングして、その入力がハイ（１）かロー（０）か調べることにより、同期信号の有無を検知する。ここで、ポーリングは、プログラムに従って行われることは勿論である。図７では、パワー・オン・リセット信号２０の遅延信号をＰＩＯ１４のＡ０入力にいれていたが、図８においてはＰＩＯ１４のＡ０入力には、図７における信号と同じ意味を持つ、Ｗａｒｍ／Ｃｏｌｄの信号を入力している。
【００４７】
このＷａｒｍ／Ｃｏｌｄの信号は、手動で設定することもでき、また前述した瞬停対策用のメモリをバックアップしているバックアップ電源の電圧が所定値以上か否かで決定される信号とすることも出きる。すなわち、この信号をチェックした際に、バックアップ電源の電圧が所定値以下を示す信号であった場合、ステップＳ１０２で、Ｃｏｌｄと判断して初期化処理ステップＳ１０３を実行し、バックアップ電源の電圧が所定値以上を示す信号であった場合には、ステップＳ１０４に進ませることができる。
【００４８】
また、この部分に、ＡＣ電源異常を検出して、ＣＰＵ内部において使用するレジスタやフラグを、電池あるいは大容量コンデンサなどによりバックアップされたＲＡＭにすべて退避させる処理をさせた場合に、電源復帰後における初期化処理において、そのことを検出し、バックアップされた電源により駆動されるＲＡＭ内に退避されているデータを使用してＣＰＵ内部を復元する復元処理をふくめることができる。その様にした場合、図５あるいは図６に示した動作フローとは別に、退避処理のための割り込み処理プログラムが設けられることは当然である。
【００４９】
図５は、本発明の実施形態１を示すものであり、主制御部の動作フローを示している。従来は、周期的なハードウエア・リセット信号による強制的なプログラムの再スタートをさせていたが、本発明においては、周期的な同期信号をプログラムによりポーリングする方法を取っている。このポーリング処理を、ジョブＮの繰り返しループの内部にステップＳ１１２Ａとして追加している。このステップＳ１１２Ａにおいて、図８のＰＩＯを制御してＡ１入力に入力されている同期信号の極性を調べ、それが周期的に発生している同期信号であると決定した場合に、このループ処理をやめて、初期化処理の後で最初に開始される通常処理の先頭であるジョブＡにジャンプさせている。
【００５０】
図６は、本発明の実施形態２を示すものであり、図５の方法と異なり、リセット解除後に初期化処理を行ない、その後は、ジョブＮ、すなわち、乱数発生のためのカウンタ更新を行う処理を実行し、このループ処理の一部に、図５で説明した同期入力の存否を調べるポーリング処理を置いている。そしてこのポーリングして得たデータに従って、ジョブＮを継続するか、または次のジョブＡを開始するかの動作をする条件付ジャンプ命令を含んでいる。同期入力信号が存在する場合に、ステップＳ１０５に進み、存在しない場合には、ジョブＮを繰り返すようにしている。
【００５１】
図５と図６の方法の違いは、リセット後の初期化処理の扱い方、通常の遊技機としての本来のジョブ、これらを同期入力に関してどの様に配分するかであり、初期化に要する時間、通常処理であるジョブＡからジョブＭまでの実行時間、同期信号周期等によってどちらかの方法が用いられる。リセット後に最初の同期信号が入力された場合を除き、図５と図６の方法に実質的な違いはない。
【００５２】
図５と図６のフローの違いは、見方を変えれば、初期化処理完了後、すなわちステップＳ１０４の後、どのステップＳに進むべきかの問題であり、図５において、ステップＳ１０４が、ステップＳ１１１Ａに進んだ場合が図６に相当する。
【００５３】
また、図５においてステップＳ１１１Ａの後にステップＳ１１２Ａを、図６においてステップＳ１１１Ｂの後に１１２Ｂとしているが、この順序を変えても、実質的な違いはない。すなわち、図５において、ジョブＮをステップＳ１１２Ａからの戻りのフローにおいて行うようにすることも可能である。ただし、この様にすると、ジョブＮを実行せずに最初のジョブＡを開始する可能性を残すことになり、実際の動作上はともかく、イン・サーキット・エミュレータを使用した場合を想定すると、図５あるいは図６に示した順序でジョブが進行することが望ましい。図示したようにすることで、ジョブＡが完了し、再びジョブＡを開始するまでに必ず、少なくとも１回のジョブＮが行われることになるからである。通常では、このジョブＮの連続繰り返し回数はランダムとなり、ジョブＮによって生成される結果としての乱数はよりランダムと想定されている。
【００５４】
図９は、図８を含めた本発明の遊技機の制御系の回路構成を示すブロック図である。図２と共通部分は同一番号で示している。なお、太線部分は、主制御部の範囲を示している。
【００５５】
以上説明した制御方式は、現在および今後の遊技機に要求される機能あるいは規制を実現する上で必要不可欠な方式である。この方式を使用することにより、検定時の検定の容易さを考慮してのプログラム作成が不要になって、プログラムの設計そのものも容易になる。同時に検定における試験期間を短縮することが可能になる。すなわち、検定において、イン・サーキット・エミュレータを使用しても、プログラムを一時的に停止させても、ＣＰＵはリセットされることがなくなり、プログラムは停止前の状態を保つことが可能になる。このことは、検定におけるプログラムの仕様確認や動作確認を容易にする。このことは、新機種の開発段階における新たなプログラムの検証および確認時にも、同じことがいえる。
【００５６】
イン・サーキット・エミュレータを使用してのＣＰＵ基板の検証時、たとえば図５において、ステップＳ１１２Ａを実行させたそのときに同期信号が入力されていた場合に限り通常処理の先頭であるジョブＡに進み、同期信号が検出されない場合は、ジョブＮを繰り返すことになる。
【００５７】
従来の制御方式でイン・サーキット・エミュレータを使用した場合などでは、場合によっては、１度もジョブＮが実行されないまま、ジョブＡを開始する場合が多く発生する。これは、ジョブＮによって発生させている乱数が固定化されることを意味している。通常の動作状態においてジョブＮは、少なくともジョブＮによってインクリメントされるカウンタを１周以上させる程度の回数が実行される。本発明の制御装置では、通常の動作状態とほぼ同じ程度に分布した乱数を、イン・サーキット・エミュレータを使用した場合にも、得ることができる。これは、イン・サーキット・エミュレータによるステップＳ１１２Ａの実行タイミングと、同期信号の繰り返し周期との間がランダムであり、このランダムな期間にジョブＮが行われるためである。
【００５８】
また、本発明の方法を用いた制御装置とすることにより、遊技機のゲーム進行について、ＡＣ電源の瞬断や一時的停電においても、ＡＣ電源の復帰後には、その前のゲームを引き続き行うための措置をすることを容易にする。とくに、主制御部のＣＰＵは基本的な部分がＺ８０（ザイログ）仕様のものであり、効果的な対策を取ることを可能にする。通常、Ｚ８０においてＮＭＩは電源の異常やメモリのパリティー・エラーなどの緊急事態における対策をＣＰＵに行わせるために用いられる。電源の異常には、ＣＰＵに供給される電源電圧の低下、ＡＣ電源の瞬間的な電圧異常、瞬断、停電などがあり、これらを検出して動作可能な時間中に、割り込み処理ルーチンで、使用するレジスタやフラグを電池あるいは大容量コンデンサなどによりバックアップされたＲＡＭにすべて退避させる処理を行なう。このような動作を従来させることは不可能であったが、本発明による遊技機では、それらの処理を可能にする。
【００５９】
以上、本発明を例示した図面を基に説明したが、例示した図面は理解を容易にするためのものであり、それぞれのブロックは必ずしも１つのパッケージのＩＣ（集積回路）を示すものではなく、機能を表している。本発明と同じ目的を達成するために、図８に示した機能構成を１つのＬＳＩの中に組み込むことも可能でり、また独立したＩＣで構成することも可能である。現在、Ｚ８０とソフトウェアがバイナリ・レベルでフル・コンパチブルで、１００ピンパッケージ内にいわゆるＺ８０の周辺ＩＣ（ＰＩＯ、ＣＴＣ、ＳＩＯ）やクロック・ジェネレータの機能を組み込んだものが市販されている。
【００６０】
また、ＣＰＵの語句を、主制御部２００においては、ＲＯＭとＲＡＭをパッケージ内部に有するいわゆるＺ８０ＣＰＵとして扱い、また特別図柄表示装置１００においてはＲＯＭとＲＡＭをパッケージ外部に有するＣＰＵとしたが、この形式の相違は本発明と無関係であり、本発明の実施に影響を与えるものではない。
【図面の簡単な説明】
【００６１】
【図１】遊技機の正面の外観の例を示す正面図である。
【図２】従来の遊技機の制御系の回路構成を示すブロック図である。
【図３】従来の遊技機の特別図柄表示装置１００の内部構成を示すブロック図である。
【図４】従来例のＣＰＵを使用した遊技機の基本的なプログラム・ステップの流れを表し、ハードウエア・リセットを使用した場合の基本的なフローチャートの概略を示す図である。
【図５】本発明における実施形態１の改良された遊技機の基本的なプログラム・ステップのフローチャートを表す図である。
【図６】本発明における実施形態２の改良された遊技機の基本的なプログラム・ステップのフローチャートを表す図である。
【図７】従来例におけるＣＰＵのパワー・オン・リセットとハードウエア・リセットの概略回路を示す図である。
【図８】本発明による実施形態を示し、ＣＰＵのパワー・オン・リセットと同期信号をＣＰＵに与える実施形態を示す図である。
【図９】本発明における実施形態の遊技機の制御系の回路構成を示すブロック図である。
【符号の説明】
【００６２】
１３    ＯＲゲート
１４    ＰＩＯ（パラレル入出力）
２０    パワー・オン・リセット信号
３０    遅延回路
１００    特別図柄表示装置
１０１    変動入賞装置
１０２    特定領域
２００    ＣＰＵ
２０３    入力ポート
２０８    電源回路
２２０    同期信号発生器
２２１    クロック・ジェネレータ
【図１】
2005169153.tif 000003
【図２】
2005169153.tif 000004
【図３】
2005169153.tif 000005
【図４】
2005169153.tif 000006
【図５】
2005169153.tif 000007
【図６】
2005169153.tif 000008
【図７】
2005169153.tif 000009
【図８】
2005169153.tif 000010
【図９】
2005169153.tif 000011
【手続補正書】
【提出日】平成17年5月9日(2005.5.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＣＰＵと、
前記ＣＰＵを電源投入時にパワー・オン・リセットするためのパワー・オン・リセット信号を受け付けるリセット手段と、
前記ＣＰＵに対する入出力データや演算処理のためのデータを記憶するＲＡＭと、
手動で設定されるＷａｒｍ／Ｃｏｌｄ信号を前記ＣＰＵに入力するＷａｒｍ／Ｃｏｌｄ信号入力手段と、
前記リセット手段によって前記パワー・オン・リセット信号を受け付けた後に、前記Ｗａｒｍ／Ｃｏｌｄ信号入力手段によって前記ＣＰＵに入力される前記Ｗａｒｍ／Ｃｏｌｄ信号がＣｏｌｄの設定であるか否かの判定を行う判定手段と、
前記判定手段によってＣｏｌｄの設定であるとの判定がなされた場合、前記ＲＡＭのデータの領域の初期設定を含む初期化処理を行う初期化手段と
を備えたことを特徴とする遊技機の制御装置。
【請求項２】
電源断時に、前記ＣＰＵ内部において使用するレジスタやフラグを含むデータをバックアップするバックアップ手段をさらに備え、
前記初期化処理は、前記バックアップ手段によってバックアップされているデータを使用して前記ＣＰＵの動作状態を電源断前の状態に復元する復元処理を含む
ことを特徴とする請求項１に記載の遊技機の制御装置。
【請求項３】
前記判定手段は、前記リセット手段によって前記パワー・オン・リセット信号を受け付けた直後に、一度だけ前記判定を行う
ことを特徴とする請求項１又は２に記載の遊技機の制御装置。
【請求項４】
あらかじめ設定された周期で同期信号を出力する同期信号発生手段と、
前記同期信号発生手段から前記ＣＰＵに入力される前記同期信号を、ポーリングによって検知する検知手段とをさらに備え、
前記検知手段によって前記同期信号を検知するまで、前記周期毎に実行される通常処理の実行を待機する
ことを特徴とする請求項１乃至３のいずれかに記載の遊技機の制御装置。
【請求項５】
前記通常処理の実行を待機する間に、ランダム要素を生成するカウンタを更新する処理を行う
ことを特徴とする請求項４に記載の遊技機の制御装置。
【請求項６】
前記同期信号発生手段と前記検知手段とが前記ＣＰＵ内に一体に構成されている
ことを特徴とする請求項４又は５に記載の遊技機の制御装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
このような検定における不具合を解消し、イン・サーキット・エミュレータを使用した場合でも、プログラムとその結果の整合性が失われることなく、実際のプログラム実行時の動作を検定においても行わせる必要がある。すなわち、遊技機の基板の検定をより、判り易く、より効率的に、より実際の動作を再現する改良された遊技機の制御装置が望まれている。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
本発明の目的は、今後実施される電源の瞬断時にも、あるいは一時的な停電後にもゲームを継続して行うことを可能にする遊技機の制御装置を提供することにある。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
このような目的を達成するために、本発明の遊技機の制御装置（図８と９）は、ＣＰＵ（２００）と、前記ＣＰＵを電源投入時にパワー・オン・リセットするためのパワー・オン・リセット信号を受け付けるリセット手段（段落００２３、段落００４５、段落００４６、図８中のＲＳＴ）と、前記ＣＰＵに対する入出力データや演算処理のためのデータを記憶するＲＡＭ（２０２、段落０００８、段落００５４）と、手動で設定されるＷａｒｍ／Ｃｏｌｄ信号を前記ＣＰＵに入力するＷａｒｍ／Ｃｏｌｄ信号入力手段（１４、Ａ０、段落００４６、段落００４７）と、前記リセット手段によって前記パワー・オン・リセット信号を受け付けた後に、前記Ｗａｒｍ／Ｃｏｌｄ信号入力手段によって前記ＣＰＵに入力される前記Ｗａｒｍ／Ｃｏｌｄ信号がＣｏｌｄの設定であるか否かの判定を行う判定手段（２００、図５、６のＳ１０２、段落００２３、段落００４５〜００４７）と、前記判定手段によってＣｏｌｄの設定であるとの判定がなされた場合、前記ＲＡＭのデータの領域の初期設定を含む初期化処理（段落００２３）を行う初期化手段（２００、図５、６のＳ１０３、段落００２３、段落００４５〜００４７）とを備えたことを特徴とする。
ここで、電源断時に、前記ＣＰＵ内部において使用するレジスタやフラグを含むデータをバックアップするバックアップ手段（段落００３５、段落００４７、段落００４８、段落００５８）をさらに備え、前記初期化処理は、前記バックアップ手段によってバックアップされているデータを使用して前記ＣＰＵの動作状態を電源断前の状態に復元する復元処理を含む（２００、図５、６のＳ１０３、段落００２３、段落００３５、段落００４８）ことを特徴とすることができる。
また、前記判定手段は、前記リセット手段によって前記パワー・オン・リセット信号を受け付けた直後に、一度だけ前記判定を行う（図５、６）ことを特徴とすることができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
また、あらかじめ設定された周期で同期信号を出力する同期信号発生手段（２２０）と、前記同期信号発生手段から前記ＣＰＵに入力される前記同期信号を、ポーリングによって検知する検知手段（２００、１４、Ａ１、Ｓ１１２Ａ、Ｓ１１２Ｂ）をとさらに備え、前記検知手段によって前記同期信号を検知するまで、前記周期毎に実行される通常処理の実行を待機する（Ｓ１１２Ａ、Ｓ１１２ＢのＮＯから、再度Ｓ１１２Ａ、Ｓ１１２Ｂへのループ処理、Ｓ１１２Ａ、Ｓ１１２ＢのＹＥＳ、図５と６のＳ１０５〜Ｓ１１０）ことを特徴とすることができる。
また、前記通常処理の実行を待機する間に、ランダム要素を生成するカウンタを更新する処理を行う（Ｓ１１２Ａ、Ｓ１１２ＢのＮＯから、再度Ｓ１１２Ａ、Ｓ１１２Ｂへのループ処理、Ｓ１１１Ａ、Ｓ１１１Ｂ）ことを特徴とすることができる。
また、前記同期信号発生手段と前記検知手段とが前記ＣＰＵ内に一体に構成されていることを特徴とすることができる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００４４
【補正方法】変更
【補正の内容】
【００４４】
本発明によれば、ＡＣ電源の瞬断や一時的停電の対策を取るための前提条件を与える。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００６０
【補正方法】変更
【補正の内容】
【００６０】
また、ＣＰＵの語句を、主制御部２００においては、ＲＯＭとＲＡＭをパッケージ内部に有するいわゆるＺ８０ＣＰＵとして扱い、また特別図柄表示装置１００においてはＲＯＭとＲＡＭをパッケージ外部に有するＣＰＵとしたが、この形式の相違は本発明と無関係であり、本発明の実施に影響を与えるものではない。
（実施形態の効果）  
本実施形態によれば、従来方法における問題点、とくにイン・サーキット・エミュレータを使用したプログラム検証時の問題点（この検証にはプログラム開発時の検証時、および「遊技機の認定及び型式の検定に関する規則」に基づく検定時が含まれる）を解決し、プログラムの仕様や動作の確認を容易にする。
また、上述の検定時の問題を回避するためのプログラム設計を不要とし、プログラム設計を容易にする。
また、ＡＣ電源の瞬断や一時的停電の対策を取るための前提条件を与える。
【手続補正１０】
【補正対象書類名】図面
【補正対象項目名】図７
【補正方法】変更
【補正の内容】
【図７】
2005169153.tif 000012
【手続補正１１】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2005169153.tif 000013