JP4064047B2 - Game machine - Google Patents

Game machine Download PDF

Info

Publication number
JP4064047B2
JP4064047B2 JP2000305475A JP2000305475A JP4064047B2 JP 4064047 B2 JP4064047 B2 JP 4064047B2 JP 2000305475 A JP2000305475 A JP 2000305475A JP 2000305475 A JP2000305475 A JP 2000305475A JP 4064047 B2 JP4064047 B2 JP 4064047B2
Authority
JP
Japan
Prior art keywords
control
data
game
command
lamp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000305475A
Other languages
Japanese (ja)
Other versions
JP2002113229A (en
JP2002113229A5 (en
Inventor
詔八 鵜川
憲司 永田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sankyo Co Ltd
Original Assignee
Sankyo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sankyo Co Ltd filed Critical Sankyo Co Ltd
Priority to JP2000305475A priority Critical patent/JP4064047B2/en
Publication of JP2002113229A publication Critical patent/JP2002113229A/en
Publication of JP2002113229A5 publication Critical patent/JP2002113229A5/ja
Application granted granted Critical
Publication of JP4064047B2 publication Critical patent/JP4064047B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、遊技者の操作に応じて遊技が行われるパチンコ遊技機、コイン遊技機、スロット機等の遊技機に関する。
【0002】
【従来の技術】
遊技機として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示部が設けられ、可変表示部の表示結果があらかじめ定められた特定の表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
【0003】
遊技価値とは、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることや、景品遊技媒体払出の条件が成立しやすくなる状態になることである。また、入賞等の所定の条件成立に応じて所定量の遊技球やコインが付与されたり得点が加算されたりする場合に、それらを価値または有価価値と呼ぶことにする。
【0004】
パチンコ遊技機では、特別図柄を表示する可変表示部の表示結果があらかじめ定められた特定の表示態様の組合せとなることを、通常、「大当り」という。大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個(例えば10個)の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数(例えば16ラウンド)に固定されている。なお、各開放について開放時間(例えば29.5秒)が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件(例えば、大入賞口内に設けられているVゾーンへの入賞)が成立していない場合には、大当り遊技状態は終了する。
【0005】
また、「大当り」の組合せ以外の「はずれ」の表示態様の組合せのうち、複数の可変表示部の表示結果のうちの一部が未だに導出表示されていない段階において、既に表示結果が導出表示されている可変表示部の表示態様が特定の表示態様の組合せとなる表示条件を満たしている状態を「リーチ」という。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
【0006】
遊技機における遊技進行はマイクロコンピュータ等による遊技制御手段によって制御される。可変表示装置に表示される識別情報、キャラクタ画像および背景画像は、遊技制御手段からの表示制御コマンドデータに従って動作する表示制御手段によって制御される。可変表示装置に表示される識別情報、キャラクタ画像および背景画像は、一般に、表示制御用のマイクロコンピュータとマイクロコンピュータの指示に応じて画像データを生成して可変表示装置側に転送するビデオディスプレイプロセッサ(VDP)とによって制御されるが、表示制御用のマイクロコンピュータのプログラム容量は大きい。
【0007】
従って、プログラム容量に制限のある遊技制御手段のマイクロコンピュータで可変表示装置に表示される識別情報等を制御することはできず、遊技制御手段のマイクロコンピュータとは別の表示制御用のマイクロコンピュータを含む表示制御手段が設けられる。よって、遊技の進行を制御する遊技制御手段は、表示制御手段に対して表示制御のためのコマンドを送信する必要がある。
【0008】
また、そのような遊技機では、遊技盤にスピーカが設けられ、遊技効果を増進するために遊技の進行に伴ってスピーカから種々の効果音が発せられる。また、遊技盤にランプやLED等の発光体が設けられ、遊技効果を増進するために遊技の進行に伴ってそれらの発光体が点灯されたり消灯されたりする。一般に、効果音を発生する音声制御は、遊技の進行を制御する遊技制御手段によって行われる。また、発光体の点灯/消灯制御は、遊技の進行を制御する遊技制御手段によって行われる。すると、遊技機の機種が異なると、効果音の発生の仕方も異なり、また、ランプやLEDの点灯/消灯のパターン異なるので、それに応じて遊技制御手段の構成を変更しなければならない。従って、機種が異なると遊技制御手段を設計し直す必要があり、設計コストが増大するという問題がある。
【0009】
そのような問題を回避するには、音声制御手段を搭載した音制御基板を遊技制御手段とは別に設けたり、発光体制御手段を搭載した発光体制御基板を遊技制御手段とは別に設けたりして、遊技の進行に応じて遊技制御手段から音声制御手段や発光体制御手段に制御コマンドを送る構成にすればよい。そのような構成によれば、音声制御手段や発光体制御手段が制御コマンドの解釈を変更することによって、異なる機種にも対応できる。音制御基板および発光体制御基板以外の基板であって、制御用のマイクロプロセッサを含む制御手段を搭載した各制御基板に制御コマンドを送出する場合も、同様な構成をとることができる。
【0010】
【発明が解決しようとする課題】
しかし、遊技機の機種が異なると、遊技機における発光体の数や配置が異なることがある。また、発光体を用いた演出パターン(点灯/消灯のパターン)や音を用いた演出パターン(音の出し方やタイミング等)が異なることが多い。その場合、音制御基板や発光体制御基板に搭載される音声制御手段や発光体制御手段等の演出制御手段における演出制御用のソフトウェアを変更しなければならない。その結果、新たな機種を開発する場合に、既存の機種の演出制御用のソフトウェアをそのまま流用した場合に比べて開発期間が長くなってしまう。
【0011】
そこで、本発明は、他機種に流用する際に演出制御用プログラムを変更しなければならない可能性をより低減し、他機種への流用をより容易にした演出制御プログラムおよび演出制御用データに関する構造を有する遊技機を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明による遊技機は、遊技者が所定の遊技を行い、入賞に応じて景品遊技媒体を払い出す遊技機であって、遊技の進行を制御する遊技制御用マイクロコンピュータを搭載した遊技制御基板と、遊技制御用マイクロコンピュータから出力される演出制御コマンドにもとづいて演出用部品を制御する演出制御用マイクロコンピュータを搭載した演出制御基板とを備え、遊技制御用マイクロコンピュータは、電力供給が開始されたときに、割込禁止状態に設定した後、遊技制御用マイクロコンピュータの内部タイマが遊技制御用マイクロコンピュータに対して定期的にタイマ割込を発生するように初期設定して割込許可状態に設定し、割込許可状態に設定した後、所定の乱数を更新する更新処理を繰り返し実行するループ処理を実行し、タイマ割込が発生したことにもとづいて、ループ処理から遊技の進行を制御する遊技制御処理に移行し、電力供給が停止するときに遊技機に対する電力供給が停止しても遊技制御処理において用いられるデータがバックアップ電源により保持されるRAMに割込フラグの状態を示すデータを保持させ、電力供給が開始されたときにRAMに保持されている遊技制御処理において用いられるデータにもとづいて遊技状態を復帰させる遊技状態復帰制御を実行することが可能であり、電力供給が開始されたときに実行される遊技状態復帰制御においてRAMに保持されていた割込フラグの状態を示すデータにもとづいてタイマ割込を許可する状態またはタイマ割込を禁止する状態に設定し、演出制御コマンドを出力するときに、演出制御コマンドのコマンドデータを出力した後にコマンドデータの取込を指示する取込信号として、所定時間に亘って矩形波のレベルを変化させ、所定時間が経過した後でも、所定の期間中はコマンドデータの出力を維持し、演出制御用マイクロコンピュータは、取込信号に応じて演出制御コマンドを入力し、演出制御コマンドに対応して、ROMの制御用データ格納領域に格納された制御用データのうち演出用部品の制御パターンを示すデータを選択し、選択した制御パターンを示すデータに従って演出用部品を制御する処理を実行し、制御用データ格納領域において、制御用データのうち、複数の機種間で共通に用いられ、初期化処理を行うときに用いられる初期化データは、制御パターンを示すデータよりも前部に配置され、電力供給が開始したときに初期化データを用いて初期化処理を実行することを特徴とする。なお、前部とは、制御用データを格納する所定サイズの記憶領域における比較的アドレスが小さい領域である。
【0015】
初期化データには、演出制御用マイクロコンピュータが制御プログラムを実行する際に使用するワークエリアの初期設定のためのデータが含まれていてもよい。
【0016】
初期化データには、情報を出力するために用いられる出力ポートを初期設定するためのデータが含まれていてもよい。
【0018】
制御パターンを示すデータには発光体の点灯パターンを示すデータが含まれていてもよい
【0023】
【発明の実施の形態】
以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機1を正面からみた正面図である。なお、ここでは、遊技機の一例としてパチンコ遊技機を示すが、本発明はパチンコ遊技機に限られず、例えばコイン遊技機やスロット機等であってもよい。
【0024】
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿3がある。打球供給皿3の下部には、打球供給皿3からあふれた遊技球を貯留する余剰玉受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の後方には、遊技盤6が着脱可能に取り付けられている。また、遊技盤6の前面には遊技領域7が設けられている。
【0025】
遊技領域7の中央付近には、複数種類の図柄を可変表示するための可変表示部(特別図柄表示装置)9と7セグメントLEDによる普通図柄表示器(普通図柄表示装置)10とを含む可変表示装置8が設けられている。可変表示部9には、例えば「左」、「中」、「右」の3つの図柄表示エリアがある。可変表示装置8の側部には、打球を導く通過ゲート11が設けられている。通過ゲート11を通過した打球は、玉出口13を経て始動入賞口14の方に導かれる。通過ゲート11と玉出口13との間の通路には、通過ゲート11を通過した打球を検出するゲートスイッチ12がある。また、始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ17によって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
【0026】
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。この実施の形態では、開閉板20が大入賞口を開閉する手段となる。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(Vゾーン)に入った入賞球はVカウントスイッチ22で検出される。また、開閉板20からの入賞球はカウントスイッチ23で検出される。可変表示装置8の下部には、始動入賞口14に入った入賞球数を表示する4個の表示部を有する始動入賞記憶表示器18が設けられている。この例では、4個を上限として、始動入賞がある毎に、始動入賞記憶表示器18は点灯している表示部を1つずつ増やす。そして、可変表示部9の可変表示が開始される毎に、点灯している表示部を1つ減らす。
【0027】
遊技盤6には、複数の入賞口19,24が設けられ、遊技球のそれぞれの入賞口19,24への入賞は、対応して設けられている入賞口スイッチ19a,19b,24a,24bによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、遊技効果LED28aおよび遊技効果ランプ28b,28cが設けられている。
【0028】
そして、この例では、一方のスピーカ27の近傍に、景品球払出時に点灯する賞球ランプ51が設けられ、他方のスピーカ27の近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
【0029】
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カード内に記録された残額情報に端数(100円未満の数)が存在する場合にその端数を打球供給皿3の近傍に設けられる度数表示LEDに表示させるための端数表示スイッチ152、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
【0030】
打球発射装置から発射された打球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が通過ゲート11を通ってゲートスイッチ12で検出されると、普通図柄表示器10の表示数字が連続的に変化する状態になる。また、打球が始動入賞口14に入り始動口スイッチ17で検出されると、図柄の変動を開始できる状態であれば、可変表示部9内の図柄が回転を始める。図柄の変動を開始できる状態でなければ、始動入賞記憶を1増やす。
【0031】
可変表示部9内の画像の回転は、一定時間が経過したときに停止する。停止時の画像の組み合わせが大当り図柄の組み合わせであると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球が特定入賞領域に入賞しVカウントスイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
【0032】
停止時の可変表示部9内の画像の組み合わせが確率変動を伴う大当り図柄の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、高確率状態という遊技者にとってさらに有利な状態となる。また、普通図柄表示器10における停止図柄が所定の図柄(当り図柄=小当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、高確率状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。
【0033】
次に、パチンコ遊技機1の裏面に配置されている各基板について説明する。
図2に示すように、パチンコ遊技機1の裏面では、枠体2A内の機構板の上部に玉貯留タンク38が設けられ、パチンコ遊技機1が遊技機設置島に設置された状態でその上方から遊技球が球貯留タンク38に供給される。球貯留タンク38内の遊技球は、誘導樋39を通って賞球ケース40Aで覆われる球払出装置に至る。
【0034】
遊技機裏面側では、可変表示部9を制御する図柄制御基板を含む可変表示制御ユニット29、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37、およびモータの回転力を利用して打球を遊技領域7に発射する打球発射装置が設置されている。さらに、装飾ランプ25、遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に信号を送るためのランプ制御基板35、スピーカ27からの音声発生を制御するための音制御基板70および打球発射装置を制御するための発射制御基板91も設けられている。
【0035】
さらに、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910が設けられ、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および所定個数の球貸し毎に発生する球貸し信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤34が設置されている。
【0036】
なお、図2には、ランプ制御基板35および音制御基板70からの信号を、枠側に設けられている遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に供給するための電飾中継基板A77が示されているが、信号中継の必要に応じて他の中継基板も設けられる。
【0037】
図3はパチンコ遊技機1の機構板を背面からみた背面図である。球貯留タンク38に貯留された玉は誘導樋39を通り、図3に示されるように、球切れ検出器(球切れスイッチ)187a,187bを通過して球供給樋186a,186bを経て球払出装置97に至る。球切れスイッチ187a,187bは遊技球通路内の遊技球の有無を検出するスイッチであるが、球タンク38内の補給球の不足を検出する球切れ検出スイッチ167も設けられている。以下、球切れスイッチ187a,187bを、球切れスイッチ187と表現することがある。
【0038】
球払出装置97から払い出された遊技球は、連絡口45を通ってパチンコ遊技機1の前面に設けられている打球供給皿3に供給される。連絡口45の側方には、パチンコ遊技機1の前面に設けられている余剰玉受皿4に連通する余剰玉通路46が形成されている。
【0039】
入賞にもとづく景品球が多数払い出されて打球供給皿3が満杯になり、ついには遊技球が連絡口45に到達した後さらに遊技球が払い出されると遊技球は、余剰玉通路46を経て余剰玉受皿4に導かれる。さらに遊技球が払い出されると、感知レバー47が満タンスイッチ48を押圧して満タンスイッチ48がオンする。その状態では、球払出装置97内のステッピングモータの回転が停止して球払出装置97の動作が停止するとともに打球発射装置34の駆動も停止する。
【0040】
図4は、主基板31における回路構成の一例を示すブロック図である。なお、図4には、払出制御基板37、ランプ制御基板35、音制御基板70、発射制御基板91および図柄制御基板80も示されている。なお、以下、払出制御基板37、ランプ制御基板35、音制御基板70および図柄制御基板80を電気部品制御基板ということがある。また、電気部品制御基板に搭載されているマイクロコンピュータを含む制御手段を電気部品制御手段ということがある。電気部品制御手段によって制御される電気部品のうち、遊技演出に関わるものが演出部品である。そして、ランプ制御基板35、音制御基板70および図柄制御基板80は演出部品制御基板の例でもある。また、ランプ制御基板35、音制御基板70および図柄制御基板80に搭載されている電気部品制御手段(ランプ制御手段、音声制御手段および表示制御手段)は演出部品制御手段の例でもある。
【0041】
主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路53と、ゲートスイッチ12、始動口スイッチ17、Vカウントスイッチ22、カウントスイッチ23、入賞口スイッチ19a,19b,24a,24b、満タンスイッチ48、球切れスイッチ187および賞球カウントスイッチ301Aからの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16、開閉板20を開閉するソレノイド21および大入賞口内の経路を切り換えるための切換ソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
【0042】
なお、図4には示されていないが、カウントスイッチ短絡信号もスイッチ回路58を介して基本回路53に伝達される。
【0043】
また、基本回路53から与えられるアドレス信号をデコードしてI/Oポート部57のうちのいずれかのI/Oポートを選択するための信号を出力するアドレスデコード回路67と、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示部9の画像表示開始に利用された始動入賞球の個数を外部で特定可能とするために可変表示の停止時に出力される有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部機器に対して出力する情報出力回路64が搭載されている。
【0044】
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段の一例であるRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。
【0045】
さらに、主基板31には、電源投入時に基本回路53をリセットするためのシステムリセット回路65が設けられている。
【0046】
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
【0047】
なお、この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている始動記憶表示器18、ゲート通過記憶表示器41および装飾ランプ25の表示制御を行うとともに、枠側に設けられている遊技効果ランプ・LED28a,28b,28c、賞球ランプ51および球切れランプ52の表示制御を行う。また、特別図柄を可変表示する可変表示部9および普通図柄を可変表示する普通図柄表示器10の表示制御は、図柄制御基板80に搭載されている表示制御手段によって行われる。
【0048】
図5は、図柄制御基板80内の回路構成を、可変表示部9の一実現例であるLCD(液晶表示装置)82、普通図柄表示器10、主基板31の出力ポート(ポート0,2)570,572および出力バッファ回路620,62Aとともに示すブロック図である。出力ポート(出力ポート2)572からは8ビットのデータが出力され、出力ポート570からは1ビットのストローブ信号(INT信号)が出力される。
【0049】
表示制御用CPU101は、制御データROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して表示制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、表示制御用CPU101がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと表示制御用CPU101との間に、I/Oポートが設けられる。
【0050】
そして、表示制御用CPU101は、受信した表示制御コマンドに従って、LCD82に表示される画面の表示制御を行う。具体的には、表示制御コマンドに応じた指令をVDP103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
【0051】
なお、図5には、VDP103をリセットするためのリセット回路83、VDP103に動作クロックを与えるための発振回路85、および使用頻度の高い画像データを格納するキャラクタROM86も示されている。キャラクタROM86に格納される使用頻度の高い画像データとは、例えば、LCD82に表示される人物、動物、または、文字、図形もしくは記号等からなる画像などである。
【0052】
入力バッファ回路105A,105Bは、主基板31から図柄制御基板80へ向かう方向にのみ信号を通過させることができる。従って、図柄制御基板80側から主基板31側に信号が伝わる余地はない。すなわち、入力バッファ回路105A,105Bは、入力ポートともに不可逆性情報入力手段を構成する。図柄制御基板80内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。
【0053】
なお、出力ポート570,572の出力をそのまま図柄制御基板80に出力してもよいが、単方向にのみ信号伝達可能な出力バッファ回路620,62Aを設けることによって、主基板31から図柄制御基板80への一方向性の信号伝達をより確実にすることができる。すなわち、出力バッファ回路620,62Aは、出力ポートともに不可逆性情報出力手段を構成する。不可逆性情報出力手段によって、図柄制御基板80への信号伝達線を介する不正信号の入力が確実に防止される。
【0054】
また、高周波信号を遮断するノイズフィルタ107として、例えば3端子コンデンサやフェライトビーズが使用されるが、ノイズフィルタ107の存在によって、表示制御コマンドに基板間でノイズが乗ったとしても、その影響は除去される。なお、主基板31のバッファ回路620,62Aの出力側にもノイズフィルタを設けてもよい。
【0055】
図6は、主基板31およびランプ制御基板35における信号送受信部分を示すブロック図である。この実施の形態では、遊技領域7の外側に設けられている遊技効果LED28a、遊技効果ランプ28b,28cと遊技盤に設けられている装飾ランプ25の点灯/消灯と、賞球ランプ51および球切れランプ52の点灯/消灯とを示すランプ制御コマンドが主基板31からランプ制御基板35に出力される。また、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドも主基板31からランプ制御基板35に出力される。
【0056】
図6に示すように、ランプ制御に関するランプ制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,3)570,573から出力される。出力ポート(出力ポート3)573は8ビットのデータを出力し、出力ポート570は1ビットのINT信号を出力する。ランプ制御基板35において、主基板31からの制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。なお、ランプ制御用CPU351がI/Oポートを内蔵していない場合には、入力バッファ回路355A,355Bとランプ制御用CPU351との間に、I/Oポートが設けられる。
【0057】
ランプ制御基板35において、ランプ制御用CPU351は、各制御コマンドに応じて定義されている遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25の点灯/消灯パターンに従って、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に対して点灯/消灯信号を出力する。点灯/消灯信号は、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に出力される。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
【0058】
主基板31において、CPU56は、RAM55の記憶内容に未払出の賞球残数があるときに賞球ランプ51の点灯を指示する制御コマンドを出力し、前述した遊技盤裏面の払出球通路186a,186bの上流に設置されている球切れスイッチ187a,187b(図3参照)が遊技球を検出しなくなると球切れランプ52の点灯を指示する制御コマンドを出力する。ランプ制御基板35において、各制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。ランプ制御用CPU351は、それらの制御コマンドに応じて、賞球ランプ51および球切れランプ52を点灯/消灯する。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
【0059】
さらに、ランプ制御用CPU351は、制御コマンドに応じて始動記憶表示器18およびゲート通過記憶表示器41に対して点灯/消灯信号を出力する。
【0060】
入力バッファ回路355A,355Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路355A,355Bは、主基板31からランプ制御基板35へ向かう方向にのみ信号を通過させることができる。従って、ランプ制御基板35側から主基板31側に信号が伝わる余地はない。たとえ、ランプ制御基板35内の回路に不正改造が加えられても、不正改造によって出力される信号がメイン基板31側に伝わることはない。なお、入力バッファ回路355A,355Bの入力側にノイズフィルタを設けてもよい。
【0061】
また、主基板31において、出力ポート570,573の外側にバッファ回路620,63Aが設けられている。バッファ回路620,63Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、ランプ制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,63Aの出力側にノイズフィルタを設けてもよい。
【0062】
図7は、主基板31における音声制御コマンドの信号送信部分および音制御基板70の構成例を示すブロック図である。この実施の形態では、遊技進行に応じて、遊技領域7の外側に設けられているスピーカ27の音声出力を指示するための音声制御コマンドが、主基板31から音制御基板70に出力される。
【0063】
図7に示すように、音声制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,4)570,574から出力される。出力ポート(出力ポート4)574からは8ビットのデータが出力され、出力ポート570からは1ビットのINT信号が出力される。音制御基板70において、主基板31からの各信号は、入力バッファ回路705A,705Bを介して音声制御用CPU701に入力する。なお、音声制御用CPU701がI/Oポートを内蔵していない場合には、入力バッファ回路705A,705Bと音声制御用CPU701との間に、I/Oポートが設けられる。
【0064】
そして、例えばディジタルシグナルプロセッサによる音声合成回路702は、音声制御用CPU701の指示に応じた音声や効果音を発生し音量切替回路703に出力する。音量切替回路703は、音声制御用CPU701の出力レベルを、設定されている音量に応じたレベルにして音量増幅回路704に出力する。音量増幅回路704は、増幅した音声信号をスピーカ27に出力する。
【0065】
入力バッファ回路705A,705Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路705A,705Bは、主基板31から音制御基板70へ向かう方向にのみ信号を通過させることができる。よって、音制御基板70側から主基板31側に信号が伝わる余地はない。従って、音制御基板70内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。なお、入力バッファ回路705A,705Bの入力側にノイズフィルタを設けてもよい。
【0066】
また、主基板31において、出力ポート570,574の外側にバッファ回路620,67Aが設けられている。バッファ回路620,67Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、音制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,67Aの出力側にノイズフィルタを設けてもよい。
【0067】
図8は、払出制御基板37および球払出装置97の構成要素などの払出に関連する構成要素を示すブロック図である。図8に示すように、満タンスイッチ48からの検出信号は、中継基板71を介して主基板31のI/Oポート57に入力される。満タンスイッチ48は、余剰球受皿4の満タンを検出するスイッチである。また、球切れスイッチ187(187a,187b)からの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力される。
【0068】
主基板31のCPU56は、球切れスイッチ187からの検出信号が球切れ状態を示しているか、または、満タンスイッチ48からの検出信号が満タン状態を示していると、払出禁止を指示する払出制御コマンドを送出する。払出禁止を指示する払出制御コマンドを受信すると、払出制御基板37の払出制御用CPU371は球払出処理を停止する。
【0069】
さらに、賞球カウントスイッチ301Aからの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力される。賞球カウントスイッチ301Aは、球払出装置97の払出機構部分に設けられ、実際に払い出された賞球払出球を検出する。
【0070】
入賞があると、払出制御基板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が内蔵されている。
【0071】
また、主基板31において、出力ポート570,571の外側にバッファ回路620,68Aが設けられている。バッファ回路620,68Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、払出制御基板37から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,68Aの出力側にノイズフィルタを設けてもよい。
【0072】
払出制御用CPU371は、出力ポート372gを介して、貸し球数を示す球貸し個数信号をターミナル基板160に出力し、ブザー駆動信号をブザー基板75に出力する。ブザー基板75にはブザーが搭載されている。さらに、出力ポート372eを介して、エラー表示用LED374にエラー信号を出力する。
【0073】
さらに、払出制御基板37の入力ポート372bには、中継基板72を介して、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bからの検出信号が入力される。球貸しカウントスイッチ301Bは、球払出装置97の払出機構部分に設けられ、実際に払い出された貸し球を検出する。払出制御基板37からの払出モータ289への駆動信号は、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に伝えられる。
【0074】
カードユニット50には、カードユニット制御用マイクロコンピュータが搭載されている。また、カードユニット50には、端数表示スイッチ152、連結台方向表示器153、カード投入表示ランプ154およびカード挿入口155が設けられている(図1参照)。残高表示基板74には、打球供給皿3の近傍に設けられている度数表示LED、球貸しスイッチおよび返却スイッチが接続される。
【0075】
残高表示基板74からカードユニット50には、遊技者の操作に応じて、球貸しスイッチ信号および返却スイッチ信号が払出制御基板37を介して与えられる。また、カードユニット50から残高表示基板74には、プリペイドカードの残高を示すカード残高表示信号および球貸し可表示信号が払出制御基板37を介して与えられる。カードユニット50と払出制御基板37の間では、接続信号(VL信号)、ユニット操作信号(BRDY信号)、球貸し要求信号(BRQ信号)、球貸し完了信号(EXS信号)およびパチンコ機動作信号(PRDY信号)がI/Oポート372fを介してやりとりされる。
【0076】
パチンコ遊技機1の電源が投入されると、払出制御基板37の払出制御用CPU371は、カードユニット50にPRDY信号を出力する。また、カードユニット制御用マイクロコンピュータは、VL信号を出力する。払出制御用CPU371は、VL信号の入力状態により接続状態/未接続状態を判定する。カードユニット50においてカードが受け付けられ、球貸しスイッチが操作され球貸しスイッチ信号が入力されると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRDY信号を出力する。この時点から所定の遅延時間が経過すると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRQ信号を出力する。
【0077】
そして、払出制御基板37の払出制御用CPU371は、カードユニット50に対するEXS信号を立ち上げ、カードユニット50からのBRQ信号の立ち下がりを検出すると、払出モータ289を駆動し、所定個の貸し球を遊技者に払い出す。このとき、振分用ソレノイド310は駆動状態とされている。すなわち、球振分部材311を球貸し側に向ける。そして、払出が完了したら、払出制御用CPU371は、カードユニット50に対するEXS信号を立ち下げる。その後、カードユニット50からのBRDY信号がオン状態でなければ、賞球払出制御を実行する。
【0078】
以上のように、カードユニット50からの信号は全て払出制御基板37に入力される構成になっている。従って、球貸し制御に関して、カードユニット50から主基板31に信号が入力されることはなく、主基板31の基本回路53にカードユニット50の側から不正に信号が入力される余地はない。
【0079】
なお、この実施の形態では、カードユニット50が遊技機とは別体として遊技機に隣接して設置されている場合を例にするが、カードユニット50は遊技機と一体化されていてもよい。また、コイン投入に応じてその金額に応じた遊技球を遊技機が貸し出すように構成した場合でも本発明を適用できる。
【0080】
図9は、電源基板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は、ソレノイド駆動電源となる。
【0081】
トランス911は、交流電源からの交流電圧を24Vに変換する。AC24V電圧は、コネクタ915に出力される。また、整流回路912は、AC24Vから+30Vの直流電圧を生成し、DC−DCコンバータ913およびコネクタ915に出力する。DC−DCコンバータ913は、1つまたは複数のコンバータIC922(図9では1つのみを示す。)を有し、VSLにもとづいて+21V、+12Vおよび+5Vを生成してコネクタ915に出力する。コンバータIC922の入力側には、比較的大容量のコンデンサ923が接続されている。従って、外部からの遊技機に対する電力供給が停止したときに、+30V、+12V、+5V等の直流電圧は、比較的緩やかに低下する。この結果、コンデンサ923は、後述する補助駆動電源の役割を果たす。コネクタ915は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。
【0082】
ただし、電源基板910に各電気部品制御基板に至る各コネクタを設け、電源基板910から、中継基板を介さずにそれぞれの基板に至る各電圧を供給するようにしてもよい。また、図9には1つのコネクタ915が代表して示されているが、コネクタは、各電気部品制御基板対応に設けられている。
【0083】
DC−DCコンバータ913からの+5Vラインは分岐してバックアップ+5Vラインを形成する。バックアップ+5Vラインとグラウンドレベルとの間には大容量のコンデンサ916が接続されている。コンデンサ916は、遊技機に対する電力供給が遮断されたときの電気部品制御基板のバックアップRAM(電源バックアップされているRAMすなわち電力供給停止時にも記憶内容保持状態となりうるバックアップ記憶手段)に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、+5Vラインとバックアップ+5Vラインとの間に、逆流防止用のダイオード917が挿入される。この実施の形態では、バックアップ用の+5Vは、主基板31および払出制御基板37に供給される。
【0084】
なお、バックアップ電源として、+5V電源から充電可能な電池を用いてもよい。電池を用いる場合には、+5V電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。
【0085】
また、電源基板910には、電源監視用IC902が搭載されている。電源監視用IC902は、VSL電圧を導入し、VSL電圧を監視することによって電源断の発生を検出する。具体的には、VSL電圧が所定値(この例では+22V)以下になったら、電源断が生ずるとして電源断信号を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧(この例では+5V)よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるVSLが用いられている。電源監視用IC902からの電源断信号は、主基板31や払出制御基板37等に供給される。
【0086】
電源監視用IC902が電源断を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のCPUが暫くの間動作しうる程度の電圧である。また、電源監視用IC902が、CPU等の回路素子を駆動するための電圧(この例では+5V)よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、CPUが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。さらに、監視電圧としてVSL(+30V)を用いる場合には、遊技機の各種スイッチに供給される電圧が+12Vであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、+30V電源の電圧を監視すると、+30V作成の以降に作られる+12Vが落ち始める以前の段階でそれの低下を検出できる。
【0087】
よって、+12V電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、+12Vより早く低下する+30V電源電圧を監視して電源断を認識すれば、スイッチ出力がオン状態を呈する前に電源復旧待ちの状態に入ってスイッチ出力を検出しない状態とすることができる。
【0088】
また、電源監視用IC902は、電気部品制御基板とは別個の電源基板910に搭載されているので、電源監視回路から複数の電気部品制御基板に電源断信号を供給することができる。電源断信号を必要とする電気部品制御基板が幾つあっても電源監視手段は1つ設けられていればよいので、各電気部品制御基板における各電気部品制御手段が後述する復帰制御を行っても、遊技機のコストはさほど上昇しない。
【0089】
なお、図9に示された構成では、電源監視用IC902の検出出力(電源断信号)は、バッファ回路918,919を介してそれぞれの電気部品制御基板(例えば主基板31と払出制御基板37)に伝達されるが、例えば、1つの検出出力を中継基板に伝達し、中継基板から各電気部品制御基板に同じ信号を分配する構成でもよい。また、電源断信号を必要とする基板数に応じたバッファ回路を設けてもよい。
【0090】
図10は、CPU56の内部構成例を詳細に示すブロック図である。CPUコア501はレジスタを内蔵しプログラムに従って演算処理等を行う。クロックジェネレータ502は、外部から供給されるクロック信号を分周して各内蔵デバイスに供給する。なお、クロックジェネレータ502は、1/2分周クロックをシステムクロックとしてCLKO端子から出力可能であり、出力制御回路511を介して、システムクロックを分周したクロック信号をIEO/SCLK0端子から出力可能である。
【0091】
リセット割込コントローラ503は、XRST端子に入力されるシステムリセット信号やXNMI端子に入力されるマスク不能割込要求信号等をCPUコア501に伝える。外部バスインタフェース504は、アドレスバス、データバスおよび各種制御信号の方向制御や駆動制御を行うバスドライバである。内蔵RAM55は電源バックアップ可能であり、内蔵ROM54にはプログラムが格納される。アドレスデコーダ505は、出力制御回路511を介して4本のチップセレクト信号XCS0〜3を出力可能である。なお、チップセレクト信号XCS0〜3の端子は、入出力ポートPB0〜PB3と兼用されている。
【0092】
メモリ制御回路510は、内蔵ROM54および内蔵RAM55を制御するための信号を生成する。また、メモリ制御回路510には、内蔵RAM55へのアクセスを許可することを設定するレジスタが内蔵されている。
【0093】
PIO506は、8ビットの内蔵入力ポートPA0〜PA7である。なお、内蔵PIOを使用しない場合には、例えば、使用しないポートを入力モードとして、そのポートをグラウンドレベルに接続する。また、CTC508は、2本の外部クロック/タイマトリガ入力CLK/TRG2,3と2本のタイマ出力ZC/TO0,1を内蔵している。
【0094】
次に遊技機の動作について説明する。
図11は、主基板31におけるCPU56が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されると、メイン処理において、CPU56は、まず、必要な初期設定を行う。
【0095】
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。
【0096】
この実施の形態で用いられているCPU56には、マスク可能な割込(INT)のモードとして以下の3種類のモードが用意されている。なお、マスク可能な割込が発生すると、CPU56は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
【0097】
割込モード0:割込要求を行った内蔵デバイスがRST命令(1バイト)またはCALL命令(3バイト)をCPUの内部データバス上に送出する。よって、CPU56は、RST命令に対応したアドレスまたはCALL命令で指定されるアドレスの命令を実行する。リセット時に、CPU56は自動的に割込モード0になる。よって、割込モード1または割込モード2に設定したい場合には、初期設定処理において、割込モード1または割込モード2に設定するための処理を行う必要がある。
【0098】
割込モード1:割込が受け付けられると、常に0038(h)番地に飛ぶモードである。
【0099】
割込モード2:CPU56の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた2バイトで示されるアドレスである。従って、任意の(飛び飛びではあるが)偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
【0100】
よって、割込モード2に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード1とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップS2において、CPU56は割込モード2に設定される。
【0101】
そして、電源断時にバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS7)。この実施の形態では、不測の電源断が生じた場合には、バックアップRAM領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、CPU56は初期化処理を実行する。
【0102】
この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電源断時にバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、図12に示すように、バックアップフラグ領域に「55(H)」が設定されていればバックアップあり(オン状態)を意味し、「55(H)」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
【0103】
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0104】
チェック結果が正常であれば(ステップS8)、CPU56は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電源断時の状態に戻すための遊技状態復旧処理を行う(ステップS9)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。
【0105】
ステップS9の遊技状態復旧処理では、例えば、CPU56は、バックアップRAMに保存されていた値を各レジスタに復元する。そして、バックアップRAMに保存されていたデータにもとづいて電源断時の遊技状態を確認して復帰させる。すなわち、バックアップRAMに保存されていたデータにもとづいて電源断時の特別図柄プロセス処理の進行状況を復元する。その結果、電源断時に図柄の変動中であった場合には内部状態がその状態になり、電源断時に大当り遊技状態であった場合には内部状態がその状態になり、電源断時に高確率状態であった場合には内部状態がその状態になる。そして、復元された状態に応じて、必要であれば、ソレノイド回路59を介してソレノイド16やソレノイド21を駆動し、始動入賞口14や開閉板20の開閉状態の復旧を行う。また、電源断中でも保存されていた特別図柄プロセスフラグおよび普通図柄プロセスフラグの値に応じて、電源断時の特別図柄プロセス処理の進行状況および普通図柄プロセス処理の進行状況に対応した制御コマンドを、図柄制御基板80、ランプ制御基板35および音制御基板70に送出する。
【0106】
以上のように、遊技状態復旧処理では、復元された内部状態に応じて、各種電気部品の状態復元が行われるとともに、図柄制御基板80、ランプ制御基板35および音制御基板70に対して、制御状態を電源断時の状態に戻すための制御コマンド(電源断時の制御状態を生じさせるための制御コマンド)が送出される。そのような制御コマンドは、一般に、電源断前に最後に送出された1つまたは複数の制御コマンドである。例えば、電源断時に可変表示装置9において図柄の変動中であった場合には、その変動における停止図柄がバックアップRAMの記憶内容から復元され、停止図柄(可変表示結果)を示す制御コマンドや図柄の確定を示す制御コマンドを表示制御手段に送出したりする。
【0107】
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS11)。また、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、払出コマンド格納ポインタなど)に初期値を設定する初期値設定処理も行われる。さらに、サブ基板(ランプ制御基板35、払出制御基板37、音制御基板70、図柄制御基板80)を初期化するための処理を実行する(ステップS13)。サブ基板を初期化する処理とは、例えば初期設定コマンドを送出する処理である。初期設定コマンドとして、例えば、払出制御基板37に出力される払出可能状態指定コマンド(払出可能状態の場合)または払出停止状態指定コマンド(払出不能状態の場合)がある。払出不能状態として、例えば、球切れスイッチ187または満タンスイッチ48がオンしていた状態がある。すなわち、CPU56は、球切れスイッチ187または満タンスイッチ48がオンしていたら払出制御基板37に払出停止状態指定コマンドを送出し、そうでなければ、払出可能状態指定コマンドを送出する。なお、払出可能状態指定コマンド(払出可能状態の場合)または払出停止状態指定コマンド(払出不能状態の場合)は、ステップS9の遊技状態復旧処理においても実行されるように構成してもよい。
【0108】
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS14)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS1において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS15)。
【0109】
この実施の形態では、CPU56の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、図13に示すように、CPU56は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする(ステップS12)。
【0110】
初期化処理の実行(ステップS11〜S15)が完了すると、メイン処理で、タイマ割込が発生したか否かの監視(ステップS17)の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理(ステップS16)も実行される。
【0111】
CPU56は、ステップS17において、タイマ割込が発生したことを認識すると、ステップS21〜S31の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートセンサ12、始動口センサ17、カウントセンサ23および入賞口スイッチ19a,19b,24a,24b等のスイッチの状態を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
【0112】
次いで、パチンコ遊技機1の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる(エラー処理:ステップS22)。
【0113】
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う(ステップS23)。CPU56は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う(ステップS24)。
【0114】
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、7セグメントLEDによる普通図柄表示器10を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【0115】
次いで、CPU56は、特別図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(普通図柄コマンド制御処理:ステップS28)。
【0116】
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
【0117】
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動指令を行う(ステップS30)。ソレノイド回路59は、駆動指令に応じてソレノイド16,21を駆動し、可変入賞球装置15または開閉板20を開状態または閉状態とする。
【0118】
そして、CPU56は、各入賞口への入賞を検出するためのスイッチ17,23,19a,19b,24a,24bの検出出力にもとづく賞球数の設定などを行う賞球処理を実行する(ステップS31)。具体的には、入賞検出に応じて払出制御基板37に払出制御コマンドを出力する。払出制御基板37に搭載されている払出制御用CPU371は、払出制御コマンドに応じて球払出装置97を駆動する。
【0119】
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるが、タイマ割込処理で遊技制御処理を実行してもよい。
【0120】
また、メイン処理には遊技制御処理に移行すべきか否かを判定する処理が含まれ、CPU56の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理で遊技制御処理に移行すべきか否かを判定するためのフラグがセット等がなされるので、遊技制御処理の全てが確実に実行される。つまり、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することは保証されている。
【0121】
以上に説明したように、この実施の形態では、CTCやPIOを内蔵するCPU56に対して、初期設定処理で割込モード2が設定される。従って、内蔵CTCを用いた定期的なタイマ割込処理を容易に実現できる。また、タイマ割込処理をプログラム上の任意の位置に設置できる。また、内蔵PIOを用いたスイッチ検出処理等を容易に割込処理で実現できる。その結果、プログラム構成が簡略化され、プログラム開発工数が低減する等の効果を得ることができる。
【0122】
なお、CTCおよびPIOの設定(ステップS5)が完了した後に、IEO/SCLK0端子から出力されるクロック信号の周波数を決めるための内部レジスタの設定を行ってもよい。その際、クロック信号の周波数は、遊技制御処理の起動周期である2msに応じた周波数とされる。そのような設定を行うと、IEO/SCLK0端子から、遊技制御処理の起動周期に応じた周波数のクロック信号がCPU56から外部出力される。すると、CPU56の外部において遊技制御処理の起動周期に対応した信号を観測することができる。よって、そのような信号を用いて、遊技機外部においてCPU56による遊技制御処理をシミュレーションしたり、CPU56の動作状況を試験したりすることが容易になる。
【0123】
図14(A)は、主基板31から他の電気部品制御基板の電気部品制御手段に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」とされ、EXTデータの先頭ビット(ビット7)は必ず「0」とされる。このように、電気部品制御手段への制御指令となる制御コマンドは、複数のデータで構成され、先頭ビットによってそれぞれを区別可能な態様になっている。
【0124】
図14(B)は、各電気部品制御手段に対する制御コマンドを構成する8ビットの制御信号CD0〜CD7とINT信号との関係を示すタイミング図である。図14(B)に示すように、MODEまたはEXTのデータが出力ポートに出力されてから、所定の期間が経過すると、CPU56は、データ出力を示す信号であるINT信号(取込信号)をハイレベルにする。また、そこから所定の期間が経過するとINT信号をローレベルにする。さらに、次に送出すべきデータがある場合には、すなわち、MODEデータ送出後では、所定の期間をおいてから2バイト目のデータを出力ポートに送出する。このように、取込信号はMODEおよびEXTのデータのそれぞれについて出力される。
【0125】
この実施の形態では、遊技制御手段から各電気部品制御基板に制御コマンドを出力しようとするときに、ROM55に設定されているコマンド送信テーブルの先頭アドレスの設定が行われる。図14(C)は、コマンド送信テーブルの一構成例を示す説明図である。1つのコマンド送信テーブルは3バイトで構成され、1バイト目にはINTデータが設定される。また、2バイト目のコマンドデータ1には、制御コマンドの1バイト目のMODEデータが設定される。そして、3バイト目のコマンドデータ2には、制御コマンドの2バイト目のEXTデータが設定される。
【0126】
なお、EXTデータそのものがコマンドデータ2の領域に設定されてもよいが、コマンドデータ2には、EXTデータが格納されているテーブルのアドレスを指定するためのデータが設定されるようにしてもよい。例えば、コマンドデータ2のビット7(ワークエリア参照ビット)が0であれば、コマンドデータ2にEXTデータそのものが設定されていることを示す。そのようなEXTデータはビット7が0であるデータである。例えば、ワークエリア参照ビットが1であれば、EXTデータとして、コマンド拡張データテーブルの内容を使用することを示す。
【0127】
図14(D)INTデータの一構成例を示す説明図である。INTデータにおけるビット0は、払出制御基板37に払出制御コマンドを送出すべきか否かを示す。ビット0が「1」であるならば、払出制御コマンドを送出すべきことを示す。また、INTデータにおけるビット1は、図柄出制御基板80に表示制御コマンドを送出すべきか否かを示す。ビット1が「1」であるならば、表示制御コマンドを送出すべきことを示す。INTデータのビット2,3は、それぞれ、ランプ制御コマンド、音声制御コマンドを送出すべきか否かを示すビットである。コマンド送信テーブルは、払出制御コマンド、表示制御コマンド、ランプ制御コマンドおよび音声制御コマンドの各制御コマンドのそれぞれについて用意されている。
【0128】
図15は、この実施の形態でのROM54のアドレスマップを示す説明図である。図15に示す例では、0000(H)番地からプログラム領域が割り当てられている。また、1000(H)番地〜1FFF(H)番地に制御用データ領域が割り当てられている。
【0129】
制御用データ領域において、最も前部には内蔵デバイスレジスタ設定テーブルとCTC,PIO設定テーブルがある。内蔵デバイスレジスタ設定テーブルには、CTCやPIO等の内蔵デバイスの動作状態を決めるための内蔵デバイスレジスタのアドレスや内蔵デバイスを初期化のための値が順次格納されている。すなわち、メイン処理のステップS4で、CPU56は、所定の汎用レジスタ(HLレジスタ等)に内蔵デバイスレジスタ設定テーブルのアドレスを設定し、HLレジスタ等の内容が指すアドレスのデータ(内蔵デバイスレジスタのアドレスおよび内蔵デバイスを初期化のための値)を順次ロードして、内蔵デバイスレジスタに、内蔵デバイスを初期化のための値を設定する。
【0130】
このように、内蔵デバイスレジスタの設定に際して、ROMの制御用データ領域に設定されているデータを使用するので、ステップS4のプログラムでは、直接に内蔵デバイスレジスタのアドレスを設定したり内蔵デバイスレジスタにデータを設定する命令を使用しない。従って、プログラムは見やすいものとなり、プログラム保守が容易になる。また、内蔵デバイスレジスタの初期化のための値を変更する必要が生じても、プログラムを変更する必要はなく、制御用データ領域のデータのみを変更すればよい。
【0131】
メイン処理のステップS5のCTCおよびPIOの設定についても、CTCの各チャネルの制御レジスタおよびPIOの各チャネル(各ポート)のコマンドレジスタのアドレスや各レジスタに対する設定値がCTC,PIO設定テーブルに順次格納されている。従って、ステップS5では、CPU56は、所定の汎用レジスタ(HLレジスタ等)にCTC,PIO設定テーブルのアドレスを設定し、HLレジスタ等の内容が指すアドレスのデータ(CTCの各チャネルの制御レジスタおよびPIOの各チャネルのコマンドレジスタのアドレスや各レジスタに対する設定値)を順次ロードして、各レジスタに設定値を設定する。
【0132】
制御用データ領域において、内蔵デバイスレジスタの初期設定のためのデータ(ステップS4,S5で使用するデータ)の次には、作業領域,ワークエリア設定テーブルが格納されている。作業領域,ワークエリア設定テーブルは、CPU56が遊技制御の実行中に使用する作業領域,ワークエリア(RAM)の初期値および遊技進行中の各状態における作業領域の設定値を設定するためのテーブルであり、作業領域,ワークエリアのアドレスと設定されるべき値とが格納されている。CPU56は、例えば、メイン処理のステップS11で、所定の汎用レジスタ(HLレジスタ等)に作業領域,ワークエリア設定テーブルのアドレスを設定し、HLレジスタ等の内容が指すアドレスのデータ(作業領域,ワークエリアの初期値)を順次ロードして、作業領域,ワークエリアに初期値を設定する。また、ステップS25(特別図柄プロセス処理)で、遊技状態の変化(例えば、図柄変動中状態から大入賞口開放状態への変化)が生じたときに、作業領域,ワークエリアに設定されている値を用いて、作業領域の値を設定する。
【0133】
制御用データ領域において、次に、コマンド拡張データアドレステーブルが格納されている。コマンド拡張データアドレステーブルは、CPU56が電気部品制御手段に対してコマンドを送出する場合に上述したコマンド拡張データテーブルのデータを使用する際に用いられる。コマンド拡張データアドレステーブルの次には、コマンド送信テーブルが格納されている。
【0134】
さらに、大当り図柄設定用テーブルが制御用データ領域に格納されている。大当り図柄設定用テーブルには、大当りとする場合の図柄に対応した図柄番号が設定されている。
【0135】
次いで、制御用データ領域において、変動パターンを特定するためのデータが設定されている変動パターン振り分けテーブルのどのデータを使用するのかを決めるための変動パターン振り分けテーブルオフセット値テーブルが格納されている。変動パターン振り分けテーブルオフセット値テーブルは、メイン処理のステップS25(特別図柄プロセス処理)で参照される。変動パターン振り分けテーブルオフセット値テーブルの次に、変動パターン振り分けテーブルが格納されている。次に、特別図柄変動回数カウンタの初期値が設定されている特別図柄変動回数設定テーブルが格納されている。
【0136】
そして、制御用データ領域において、低確率時の特別図柄判定値テーブルが格納されている。低確率時の特別図柄判定値テーブルには、遊技機の状態が低確率状態(大当りとする確率が高められていない状態)における大当り判定値が設定されている。CPU56は、メイン処理のステップS25(特別図柄プロセス処理)において、大当り判定用の乱数が大当り判定値と一致したときに大当りとすることに決定する。また、低確率時の特別図柄判定値テーブルの次に、高確率時の特別図柄判定値テーブルが格納されている。低確率時の特別図柄判定値テーブルには、遊技機の状態が低確率状態(大当りとする確率が高められている状態)における大当り判定値が設定されている。
【0137】
以上のように、内蔵デバイスのレジスタの初期設定のためのデータ、およびCPU56が制御プログラムを実行する際に使用するワークエリアの初期設定のためのデータは、制御用データ領域の前部に格納されている。遊技機の機種が異なっても、使用するマイクロコンピュータが同じである場合には、内蔵デバイスのレジスタの初期設定の方法は変わらないのが一般的であるから、複数の機種間で共通に使用されるデータについては制御用データを格納する記憶領域における前部に配置されることになる。
【0138】
また、作業領域,ワークエリア設定テーブルも、制御用データ領域の前部に格納されている。すなわち、マイクロコンピュータが制御プログラムを実行する際に使用する作業領域,ワークエリアの初期設定のためのデータは、複数の機種間で共通に使用される可能性が高いので、記憶領域における前部に配置される。
【0139】
制御用データ領域において、低確率時の特別図柄判定値テーブルおよび高確率時の特別図柄判定値テーブルは、後部に格納されている。従って、機種変更に当たって、大当り判定値を変更するのは容易である。制御用データ領域における後部に設定されていれば、データ数すなわち大当り判定値数を増減することが容易であり、かつ、判定値そのものを変更するにも、後部にあった方が変更誤りの可能性が小さいと考えられるからである。そして、高確率時の特別図柄判定値テーブルは、低確率時の特別図柄判定値テーブルよりも後に設定されている。従って、高確率とする制御を行わない機種(プリペイドカードを使用しない現金機等)に制御プログラムおよび制御用データを流用する場合、高確率時の特別図柄判定値テーブルを削除するだけでよい。
【0140】
電気部品制御手段に出力する制御コマンドを作成するためのデータや変動パターン振り分けテーブルのデータ等の識別情報の表示結果に関するデータは、内蔵デバイスレジスタに関するデータや作業領域,ワークエリア設定テーブルに比べて、機種変更に応じて変更される可能性が比較的高いので、制御用データ領域における中間部に設定されている。
【0141】
また、空き領域は、制御用データ領域における最も後部に設けられている。従って、制御用データ領域におけるデータ数の増減に容易に対応することができる。
【0142】
なお、プリペイドカードにより遊技媒体の貸出を行う遊技機(いわゆるCR機)と遊技媒体の貸出についてプリペイドカード介在させない遊技機(いわゆる現金機)とで共通に使用されるデータは、制御用データ領域における前部に配置されていることが好ましい。そして、それらの間で非共通なデータは制御用データ領域における後部に配置されていることが好ましい。そのように構成しておけば、CR機の制御用データの後部のデータを削除するだけで、現金機用の制御用データを作成できる。
【0143】
図16〜図17は、電源基板910からの電源断信号に応じて実行される電力供給停止時処理の処理例を示すフローチャートである。なお、電源断信号は、CPU56のマスク不能割込端子に接続され、マスク不能割込によって電力供給停止時処理が起動される。
【0144】
電力供給停止時処理において、CPU56は、AFレジスタ(アキュミュレータとフラグのレジスタ)を所定のバックアップRAM領域に退避する(ステップS51)。また、割込フラグをパリティフラグにコピーする(ステップS52)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS54〜S58)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復元され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0145】
次に、バックアップあり指定値(この例では「55(H)」)をバックアップフラグにストアする。バックアップフラグはバックアップRAM領域に形成されている。次いで、パリティデータを作成する(ステップS60〜S67)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS60)、チェックサム算出開始アドレスをポインタにセットする(ステップS61)。また、チェックサム算出回数をセットする(ステップS62)。
【0146】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS63)。演算結果をチェックサムデータエリアにストアするとともに(ステップS64)、ポインタの値を1増やし(ステップS65)、チェックサム算出回数の値を1減算する(ステップS66)。ステップS63〜S66の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS67)。
【0147】
チェックサム算出回数の値が0になったら、CPU56は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS68)。そして、反転後のデータをチェックサムバッファにストアする(ステップS69)。このデータが、電源投入時にチェックされるパリティデータとなる。次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS70)。以後、内蔵RAM55のアクセスができなくなる。
【0148】
さらに、CPU56は、クリアデータ(00)を適当なレジスタにセットし(ステップS71)、処理数(この例では「7」)を別のレジスタにセットする(ステップS72)。また、出力ポート0のアドレスをIOポインタに設定する(ステップS73)。IOポインタとして、さらに別のレジスタが用いられる。なお、処理数「7」はI/Oポートの数に相当する。
【0149】
そして、IOポインタが指すアドレスにクリアデータをセットするとともに(ステップS74)、IOポインタの値を1増やし(ステップS75)、処理数の値を1減算する(ステップS77)。ステップS74〜S76の処理が、処理数の値が0になるまで繰り返される。その結果、全ての出力ポートにクリアデータが設定され、全ての出力ポートがオフ状態になる。
【0150】
従って、遊技状態を保存するための処理(この例では、チェックサムの生成およびRAMアクセス防止)が実行された後、各出力ポートは直ちにオフ状態になる。なお、この実施の形態では、遊技制御処理において用いられるデータが格納されるRAM領域は全て電源バックアップされている。
【0151】
図18は、この実施の形態におけるRAM領域のアドレスマップを示す説明図である。図18に示すように、RAM領域の先頭はバックアップフラグの領域に割り当てられている。そして、最後部にチェックサムバッファの領域が割り当てられている。
【0152】
図19は、チェックサム作成方法の一例を説明するための説明図である。ただし、図19に示す例では、簡単のために、バックアップRAM領域のデータのサイズを3バイトとする。電源電圧低下にもとづく電力供給停止時処理において、図19に示すように、チェックサムデータとして初期データ(この例では00(H))が設定される。次に、「00(H)」と「F0(H)」の排他的論理和がとられ、その結果と「16(H)」の排他的論理和がとられる。さらに、その結果と「DF(H)」の排他的論理和がとられる。そして、その結果(この例では「39(H)」)を論理反転して得られた値(この例では「C6(H)」)がバックアップパリティデータ領域に設定される。なお、図19では、説明を容易にするために、論理反転前のデータ「39(H)」がチェックサムバッファに格納されている様子が示されている。なお、初期データとしての00(H)はステップS60で設定されるチェックサムデータに対するクリアデータに応じた値であり、実際には、00(H)との排他的論理和は演算前と後とで値が変わらないので、00(H)との排他的論理和演算を行わなくてもよい。すなわち、図19に示す初期データは、単に、図16に示されたフローチャートとの整合をとるために記載されているものである。
【0153】
この実施の形態では、チェックサムバッファは、バックアップRAM領域(変動データ記憶手段)の最後のアドレスに格納されている。従って、例えば、チェックサム作成方法のプログラムに誤りがないかどうか確認する際に、容易にその確認を行うことができる。RAM領域の最終アドレスの値が正しいか否か確認すればよいからである。また、この実施の形態では、チェックサム算出開始アドレスはバックアップフラグが設定されるアドレスであり、チェックサム算出最終アドレスは賞球制御用フラグ・バッファのうちの最後のアドレスである(図18参照)。従って、賞球制御用フラグ・バッファの後、すなわち、バックアップRAM領域の最後のアドレスをチェックサムバッファの領域にすれば、RAM領域において無駄が生ずることはない。
【0154】
なお、確認のしやすさやRAM領域の無駄防止を考慮すると、バックアップRAM領域の最初のアドレスをチェックサムバッファの領域にしてもよい。
【0155】
また、遊技機への電力供給開始時にはパリティチェックOKか否かの判断が行われるが(図11におけるステップS8)、その判断では、電力供給停止時処理におけるパリティデータを作成処理(ステップS60〜S67)と同様の処理が行われ、処理結果すなわち演算結果がチェックサムバッファの内容と一致したらパリティチェックOKと判定される。
【0156】
上記の実施の形態では、バックアップRAM領域の最後または最初のアドレスをチェックサムバッファの領域にしたが、バックアップRAM領域の中途の領域にチェックサムバッファの領域を割り当ててもよい。図20は、そのようなRAM領域のメモリマップの一例を示す説明図である。なお、図20に示すチェックサムバッファの領域の位置は一例であって、バックアップRAM領域の中途であれば、他の箇所をチェックサムバッファの領域の位置にしてもよい。
【0157】
図21〜図22は、バックアップRAM領域の中途の領域にチェックサムバッファの領域を割り当てた場合の電力供給停止時処理を示すフローチャートである。この場合には、ステップS62Aにおいて、チェックサム算出回数の前半を設定する。図20に示す例では、チェックサム算出回数の前半は、バックアップフラグのアドレスから特別図柄関連フラグ・カウンタ・バッファにおける最後のアドレスまでの間の領域サイズに対応する。
【0158】
そして、チェックサム算出回数の前半に対する演算が終了すると、チェックサム算出回数(後半)をセットする(ステップS82)。図20に示す例では、チェックサム算出開始アドレス(後半)は普通図柄関連フラグ・カウンタ・バッファの先頭アドレスであり、チェックサム算出回数(後半)は、普通図柄関連フラグ・カウンタ・バッファにおける最初のアドレスから賞球制御用フラグ・バッファにおける最後のアドレスまでの間の領域サイズに対応する。
【0159】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS83)。演算結果をチェックサムデータエリアにストアするとともに(ステップS84)、ポインタの値を1増やし(ステップS85)、チェックサム算出回数の値を1減算する(ステップS86)。ステップS83〜S86の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS87)。
【0160】
チェックサム算出回数の値が0になったら、CPU56は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS68)。そして、反転後のデータをチェックサムバッファにストアする(ステップS69)。次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS70)。そして、図17に示された処理と同様の処理を行う。
【0161】
図23は、バックアップRAM領域の中途の領域にチェックサムバッファの領域を割り当てた場合のパリティチェックOKか否かの判断、すなわち電力供給開始時のパリティチェック処理(図11におけるステップS8)を示すフローチャートである。
【0162】
パリティチェック処理において、CPU56は、まず、チェックサムバッファの内容を論理反転し(ステップS89)、初期データ(00)をチェックサムデータエリアにセットし(ステップS90)、チェックサム算出開始アドレスをポインタにセットする(ステップS91)。また、チェックサム算出回数をセットする(ステップS92)。図20に示された例では、チェックサム算出開始アドレスはバックアップフラグのアドレスであり、チェックサム算出回数は、バックアップRAM領域のアドレスから最後のアドレスまでの領域サイズに対応した数である。すなわち、チェックサムバッファがバックアップRAM領域の中途に割り当てられているにもかかわらず、チェックサムの演算は、バックアップRAM領域の最初から最後まで通して実行される。
【0163】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS93)。演算結果をチェックサムデータエリアにストアするとともに(ステップS94)、ポインタの値を1増やし(ステップS95)、チェックサム算出回数の値を1減算する(ステップS96)。ステップS93〜S96の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS97)。
【0164】
チェックサム算出回数の値が0になったら、CPU56は、演算結果が00(H)であるか否か確認する(ステップS99)。00(H)であればパリティチェックOKとし(ステップS100)、チェックサムバッファの内容を0クリアする(ステップS102)。00(H)でなければ、パリティチェックNGとし(ステップS101)、チェックサムバッファの内容を0クリアする(ステップS102)。従って、チェックサムバッファの内容は、パリティチェックが行われると内容が00(H)にクリアされる。なお、遊技機への電力供給開始時には、RAMクリア処理(図11に示すステップS11)においてチェックサムバッファの内容は00(H)にクリアされる。
【0165】
このように、遊技機への電力供給停止時に、CPU56は、初期データおよびバックアップRAM領域の各データの排他的論理和を順次演算することによってチェックサムを作成してバックアップRAM領域に格納し、遊技機への電力供給開始時に、バックアップRAM領域に格納されている各データの排他的論理和を順次演算して演算結果が00(H)であったらバックアップRAM領域に記憶されている最終記憶内容(電力供給が停止したことによって遊技が中断された場合に記憶される電力供給停止直前の最終的な制御状態に関する記憶内容)が正常であると判定する。そして、バックアップRAM領域の内容にもとづいて制御状態を電力供給停止前の状態に復旧させる制御を行う。この場合には、演算結果をチェックサムバッファの内容と比較する必要はなく、単に、00(H)と比較すればよいので、パリティチェック処理が簡略化されるメリットがある。
【0166】
図24は、チェックサム作成方法を説明するための説明図である。ただし、図24に示す例では、簡単のために、バックアップRAM領域のデータのサイズを3バイトとする。電源電圧低下にもとづく電力供給停止時処理において、図24(A)に示すように、チェックサムデータとして初期データ(チェックサムデータの初期データとしてのクリアデータ)が設定される。次に、「00(H)」と「F0(H)」の排他的論理和がとられ、その結果と「16(H)」の排他的論理和がとられる。さらに、その結果と「DF(H)」の排他的論理和がとられる。そして、その結果(この例では「39(H)」)を論理反転して得られた値(この例では「C6(H)」)が、バックアップRAM領域におけるバックアップパリティデータ領域に設定される。なお、図24では、説明を容易にするために、論理反転前のデータ「39(H)」がチェックサムバッファに格納されている様子が示されている。
【0167】
そして、電力供給開始時のパリティチェック処理において、図24(B)に示すように、チェックサムデータとして初期データが設定される。次に、「00(H)」と「F0(H)」の排他的論理和がとられ、その結果と「39(H)」の排他的論理和がとられ、さらに「16(H)」の排他的論理和がとられる。次いで、その結果と「DF(H)」の排他的論理和がとられる。そして、演算結果は00(H)であるから、パリティチェックOKと判断される。
【0168】
なお、ここでは、図21および図22に示されたように、チェックサムバッファを排他的論理和演算の対象から除外し、チェックサムバッファよりも前のバックアップRAM領域について順次排他的論理和演算を行い、次いで、チェックサムバッファよりも後のバックアップRAM領域について順次排他的論理和演算を行うようにしたが、チェックサムの作成処理開始時には、バックアップRAM領域におけるチェックサムバッファの内容は00(H)になっていれば排他的論理和演算に影響を与えないので、バックアップRAM領域の最初のアドレスから最後のアドレスまで通して順次排他的論理和演算を行っても同じ結果が得られる。なお、上記の実施の形態では、電力供給開始時のRAMクリアの際、およびパリティチェックが行われたときに、バックアップRAM領域におけるチェックサムバッファの内容は00(H)になっている。
【0169】
次に、遊技制御手段以外の電気部品制御手段においてデータ保存処理および復旧処理が行われる場合の例として、払出制御手段においてデータ保存や復旧が行われる場合について説明する。
【0170】
図25は、払出制御用CPU371周りの一構成例を示すブロック図である。図25に示すように、電源基板910の電源監視回路(電源監視手段)からの電源断信号が、バッファ回路960を介して払出制御用CPU371のマスク不能割込端子(XNMI端子)に接続されている。従って、払出制御用CPU371は、マスク不能割込処理によって電源断の発生を確認することができる。
【0171】
払出制御用CPU371のCLK/TRG2端子には、主基板31からのINT信号が接続されている。CLK/TRG2端子にクロック信号が入力されると、払出制御用CPU371に内蔵されているタイマカウンタレジスタCLK/TRG2の値がダウンカウントされる。そして、レジスタ値が0になると割込が発生する。従って、タイマカウンタレジスタCLK/TRG2の初期値を「1」に設定しておけば、INT信号の入力に応じて割込が発生することになる。
【0172】
払出制御基板37には、システムリセット回路975も搭載されているが、この実施の形態では、システムリセット回路975におけるリセットIC976は、電源投入時に、外付けのコンデンサに容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。また、リセットIC976は、VSLの電源電圧を監視して電圧値が所定値(例えば+9V)以下になると出力をローレベルにする。従って、電源断時には、リセットIC976からの信号がローレベルになることによって払出制御用CPU371がシステムリセットされる。
【0173】
リセットIC976が電源断を検知するための所定値は、通常時の電圧より低いが、払出制御用CPU371が暫くの間動作しうる程度の電圧である。また、リセットIC976が、払出制御用CPU371が必要とする電圧(この例では+5V)よりも高い電圧を監視するように構成されているので、払出制御用CPU371が必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。
【0174】
+5V電源から電力が供給されていない間、払出制御用CPU371の内蔵RAMの少なくとも一部は、電源基板から供給されるバックアップ電源がバックアップ端子に接続されることによってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、システムリセット回路975からリセット信号が発せられるので、払出制御用CPU371は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップされているので、停電等からの復旧時には停電発生時の払出制御状態に復帰することができる。
【0175】
図26は、払出制御用CPU371が実行するメイン処理を示すフローチャートである。メイン処理では、払出制御用CPU371は、まず、必要な初期設定を行う。すなわち、払出制御用CPU371は、まず、割込禁止に設定する(ステップS701)。次に、割込モードを割込モード2に設定し(ステップS702)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS703)。また、払出制御用CPU371は、内蔵デバイスレジスタの初期化を行い(ステップS704)、CTCおよびPIOの初期化(ステップS705)を行った後に、RAMをアクセス可能状態に設定する(ステップS706)。
【0176】
この実施の形態では、内蔵CTCのうちの一つのチャネルがタイマモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをタイマモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。そして、そのチャネルによる割込がタイマ割込として用いられる。タイマ割込を例えば2ms毎に発生させたい場合は、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
【0177】
なお、タイマモードに設定されたチャネル(この実施の形態ではチャネル3)に設定される割込ベクタは、タイマ割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでタイマ割込処理の先頭番地が特定される。タイマ割込処理ではタイマ割込フラグがセットされ、メイン処理でタイマ割込フラグがセットされていることが検知されると、払出制御処理が実行される。すなわち、タイマ割込処理では、電気部品制御処理の一例である払出制御処理を実行するための設定がなされる。
【0178】
また、内蔵CTCのうちの他の一つのチャネル(この実施の形態ではチャネル2)が、遊技制御手段からの払出制御コマンド受信のための割込発生用のチャネルとして用いられ、そのチャネルがカウンタモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理およびステップS705の処理において、使用するチャネルをカウンタモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。
【0179】
カウンタモードに設定されたチャネル(チャネル2)に設定される割込ベクタは、後述するコマンド受信割込処理の先頭番地に相当するものである。具体的は、Iレジスタに設定された値と割込ベクタとでコマンド受信割込処理の先頭番地が特定される。
【0180】
この実施の形態では、払出制御用CPU371でも割込モード2が設定される。従って、内蔵CTCのカウントアップにもとづく割込処理を使用することができる。また、CTCが送出した割込ベクタに応じた割込処理開始番地を設定することができる。
【0181】
CTCのチャネル2(CH2)のカウントアップにもとづく割込は、上述したタイマカウンタレジスタCLK/TRG2の値が「0」になったときに発生する割込である。従って、例えばステップS705において、特定レジスタとしてのタイマカウンタレジスタCLK/TRG2に初期値「1」が設定される。また、CTCのチャネル3(CH3)のカウントアップにもとづく割込は、CPUの内部クロック(システムクロック)をカウントダウンしてレジスタ値が「0」になったら発生する割込であり、後述する2msタイマ割込として用いられる。具体的には、CH3のレジスタ値はシステムクロックの1/256周期で減算される。ステップS705において、CH3のレジスタには、初期値として2msに相当する値が設定される。
【0182】
CTCのCH2のカウントアップにもとづく割込は、CH3のカウントアップにもとづく割込よりも優先順位が高い。従って、同時にカウントアップが生じた場合に、CH2のカウントアップにもとづく割込、すなわち、コマンド受信割込処理の実行契機となる割込の方が優先される。
【0183】
そして、払出制御用CPU371は、払出制御用のバックアップRAM領域にバックアップデータが存在しているか否かの確認を行う(ステップS707)。すなわち、例えば、主基板31のCPU56の処理と同様に、電源断時にセットされるバックアップフラグがセット状態になっているか否かによって、バックアップデータが存在しているか否か確認する。バックアップフラグがセット状態になっている場合には、バックアップデータありと判断する。
【0184】
バックアップありを確認したら、払出制御用CPU371は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う。不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【0185】
チェック結果が正常であれば(ステップS708)、払出制御用CPU371は、内部状態を電源断時の状態に戻すための払出状態復旧処理を行う(ステップS709)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の指すアドレスに復帰する。
【0186】
払出状態復旧処理では、少なくとも未払出の賞球個数を示すデータと未払出の貸し球個数を示すデータとが復元される。すなわち、未払出の賞球個数および未払出の貸し球個数を示すデータはバックアップRAMに形成されている。そして、未払出の賞球個数を示すデータと未払出の貸し球個数を示すデータとが復元されれば、後述する球貸し制御処理(ステップS756)および賞球制御処理(ステップS757)において、それらのデータにもとづいて払出制御が実行される。従って、賞球払出処理中や球貸し処理中に電源断が生じても、電源復旧時に、未払出の賞球や球貸しの処理が続行され、遊技者に不利益が与えられることはない。
【0187】
初期化処理では、払出制御用CPU371は、まず、RAMクリア処理を行う(ステップS711)。そして、2ms毎に定期的にタイマ割込がかかるように払出制御用CPU371に設けられているCTCのレジスタの設定が行われる(ステップS712)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。そして、初期設定処理のステップS701において割込禁止とされているので、初期化処理を終える前に割込が許可される(ステップS713)。
【0188】
この実施の形態では、払出制御用CPU371の内蔵CTCが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は2msに設定される。そして、タイマ割込が発生すると、払出制御用CPU371は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする。
【0189】
払出制御用CPU371は、ステップS724において、タイマ割込フラグがセットされたことを検出するとステップS751以降の払出制御処理を実行する。以上の制御によって、この実施の形態では、払出制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、払出制御処理はメイン処理において実行されるが、タイマ割込処理で払出制御処理を実行してもよい。
【0190】
払出制御処理において、払出制御用CPU371は、まず、中継基板72を介して入力ポート372bに入力される賞球カウントスイッチ301A、球貸しカウントスイッチ301Bがオンしたか否かを判定する(スイッチ処理:ステップS751)。
【0191】
次に、払出制御用CPU371は、センサ(例えば、払出モータ289の回転数を検出するモータ位置センサ)からの信号入力状態を確認してセンサの状態を判定する等の処理を行う(入力判定処理:ステップS752)。払出制御用CPU371は、さらに、受信した払出制御コマンドを解析し、解析結果に応じた処理を実行する(コマンド解析実行処理:ステップS753)。
【0192】
次いで、払出制御用CPU371は、主基板31から払出停止指示コマンドを受信していたら払出停止状態に設定し、払出開始指示コマンドを受信していたら払出停止状態の解除を行う(ステップS754)。また、プリペイドカードユニット制御処理を行う(ステップS755)。
【0193】
次いで、払出制御用CPU371は、球貸し要求に応じて貸し球を払い出す制御を行う(ステップS756)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を球貸し側に設定する。
【0194】
さらに、払出制御用CPU371は、バックアップRAMに形成されている総合個数記憶に格納された個数の賞球を払い出す賞球制御処理を行う(ステップS757)。このとき、払出制御用CPU371は、振分ソレノイド310によって球振分部材311を賞球側に設定する。そして、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に対して駆動信号を出力し、所定の回転数分払出モータ289を回転させる払出モータ制御処理を行う(ステップS758)。
【0195】
次いで、エラー検出処理が行われ、その結果に応じてエラー表示LED374に所定の表示を行う(エラー処理:ステップS759)。
【0196】
図27〜図28は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理(電力供給停止時処理)の処理例を示すフローチャートである。
【0197】
電力供給停止時処理において、払出制御用CPU371は、AFレジスタを所定のバックアップRAM領域に退避する(ステップS801)。また、割込フラグをパリティフラグにコピーする(ステップS802)。パリティフラグはバックアップRAM領域に形成されている。また、BCレジスタ、DEレジスタ、HLレジスタ、IXレジスタおよびスタックポインタをバックアップRAM領域に退避する(ステップS804〜808)。
【0198】
次に、バックアップあり指定値(例えば「55H」)をバックアップフラグにストアする。バックアップフラグはバックアップRAM領域に形成されている。次いで、主基板31のCPU56の処理と同様の処理を行ってパリティデータを作成しバックアップRAM領域に保存する(ステップS810〜S819)。そして、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS820)。以後、内蔵RAMのアクセスができなくなる。
【0199】
さらに、払出制御用CPU371は、クリアデータ(00)を適当なレジスタにセットし(ステップS821)、処理数(この例では「3」)を別のレジスタにセットする(ステップS822)。また、出力ポートのアドレスうちの最も小さいアドレス(この例では「00H」)をIOポインタに設定する(ステップS823)。IOポインタとして、さらに別のレジスタが用いられる。なお、処理数「3」は、出力ポート数に対応した数である。
【0200】
そして、IOポインタが指すアドレスにクリアデータをセットするとともに(ステップS824)、IOポインタの値を1増やし(ステップS825)、処理数の値を1減算する(ステップS827)。ステップS824〜S826の処理が、処理数の値が0になるまで繰り返される。その結果、全ての出力ポートにクリアデータが設定され、全ての出力ポートがオフ状態になる。
【0201】
また、遊技機への電力供給開始時にはパリティチェックOKか否かの判断が行われるが(図26におけるステップS708)、その判断では、電力供給停止時処理におけるパリティデータを作成処理(ステップS810〜S817)と同様の処理が行われ、処理結果すなわち演算結果がチェックサムバッファの内容と一致したらパリティチェックOKと判定される。
【0202】
払出制御用CPU371を含む払出制御手段においても、チェックサムバッファは、バックアップRAM領域(変動データ記憶手段)の最初または最後のアドレスに格納されていれば、例えば、チェックサム作成方法のプログラムに誤りがないかどうか確認する際に、容易にその確認を行うことができる。また、RAM領域において無駄が生ずることはない。
【0203】
そして、払出制御手段についても、CPU56を含む遊技制御手段の場合と同様に、バックアップRAM領域の中途の領域にチェックサムバッファの領域を割り当ててもよい。そのように構成した場合には、電力供給開始時のパリティチェック処理(図26におけるステップS708)において、チェックサムの演算は、バックアップRAM領域の最初から最後まで通して実行される。そして、バックアップRAM領域の中途の領域にチェックサムバッファの領域を割り当てた場合には、演算結果をチェックサムバッファの内容と比較する必要はなく、単に、00(H)と比較すればよいので、パリティチェック処理が簡略化されるメリットがある。
【0204】
以上に説明したように、上記の各実施の形態では、複数の機種間で共通に使用されるデータについては制御用データ領域における前部に配置され、複数の機種間で共通に使用される可能性が低いデータについては制御用データ領域における後部に配置されているので、共通に使用される可能性が低いデータについての変更が容易であるとともに、複数の機種間で共通に使用されるデータについては流用の際に変更を施す必要性を低減させることができる。
【0205】
また、遊技機への電力供給開始時に、変動データ記憶手段に格納されているチェックデータにもとづいて変動データ記憶手段に記憶されている最終記憶内容が正常であるか否かの判定を行い、正常である場合には最終記憶内容にもとづいて制御状態を電力供給停止前の状態に復旧させる制御を行うように構成されている場合に、チェックデータを、変動データ記憶手段の最初または最後のアドレスに格納するようにしたので、チェックデータ作成方法のプログラムに誤りがないかどうか確認する際に、容易にその確認を行うことができる。また、RAM領域において無駄が生ずることはない。
【0206】
さらに、チェックデータを、変動データ記憶手段の中途のアドレスに格納するようにした場合には、演算結果を、保存されているチェックサムデータと比較する必要はなく、単に、00(H)と比較すればよいので、パリティチェック処理が簡略化されるメリットがある。
【0207】
次に演出制御手段の動作につて説明する。まず、演出制御手段の一例であるランプ制御基板35に搭載されたランプ制御用CPU351を含む発光体制御手段としてのランプ制御手段の動作を説明する。
【0208】
図29は、主基板31からランプ制御基板35に送出されるランプ制御コマンドの内容の一例を示す説明図である。ランプ制御コマンドは、図14に示されたようにMODEとEXTの2バイト構成である。図29に示す例において、コマンド8000(H)〜8022(H)、8100(H)〜8122(H)は、可変表示部9における特別図柄の変動パターンに対応したランプ・LED表示制御パターンを指定するランプ制御コマンドである。例えば、コマンド8000(H)〜8022(H)は変動時間短縮のない変動パターンに対応したコマンドであり、コマンド8100(H)〜8122(H)は変動時間短縮のある変動パターンに対応したコマンドである。また、コマンドA0XX(X=4ビットの任意の値)は、特別図柄の可変表示の停止時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドBXXXは、大当り遊技開始から大当り遊技終了までの間のランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドC000は、客待ちデモンストレーション時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。
【0209】
なお、コマンド8XXX、AXXX、BXXXおよびCXXXは、遊技進行状況に応じて遊技制御手段から送出されるランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から上述したランプ制御コマンドを受信すると図29に示された内容に応じてランプ・LEDの表示状態を変更する。
【0210】
コマンドE0XXは、始動記憶表示器18の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、始動記憶表示器18における「XX」で指定される個数の表示器を点灯状態とする。また、コマンドE1XXは、ゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、ゲート通過記憶表示器41における「XX」で指定される個数の表示器を点灯状態とする。すなわち、それらのコマンドは、保留個数という情報を報知するために設けられている発光体の制御を指示するコマンドである。なお、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数に関するコマンドが点灯個数の増減を示すように構成されていてもよい。
【0211】
コマンドE200およびE201は、賞球ランプ51の表示状態に関するランプ制御コマンドであり、コマンドE300およびE301は、球切れランプ52の表示状態に関するランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から「E201」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がある場合としてあらかじめ定められた表示状態とし、「E200」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がない場合としてあらかじめ定められた表示状態とする。
【0212】
また、主基板31の遊技制御手段から「E300」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球あり中の表示状態とし、「E301」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球切れ中の表示状態とする。すなわち、コマンドE200およびE201は、未賞球の遊技球があることを遊技者等に報知するために設けられている発光体を制御することを示すコマンドであり、コマンドE300およびE301は、補給球が切れていることを遊技者や遊技店員に報知するために設けられている発光体を制御することを示すコマンドである。
【0213】
コマンドE400は、遊技機の電源投入時、または特定遊技状態(高確率状態や時短状態、この例では高確率状態)から通常状態(低確率状態や非時短状態、この例では低確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドE401は、通常状態(低確率状態や非時短状態、この例では低確率状態)から特定遊技状態(高確率状態や時短状態、この例では高確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。
【0214】
コマンドE402は、大当り遊技中に発生したエラーが解除されたときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドE403は、カウントスイッチ23のエラーが発生したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。すなわち、それらのコマンドは、発光体によって遊技状態を報知することを指示するコマンドである。
【0215】
この実施の形態では、ランプ制御手段は、遊技状態を報知することを指示するコマンドを受信すると、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部または全部を用いて、遊技状態を報知するための点灯/消灯制御を行う。なお、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cは、それぞれ、複数の発光体の集まりで構成されていてもよく、その場合、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部を用いて遊技状態を報知するということは、例えば、装飾ランプ25を構成する複数の発光体のうちの一部を用いてもよいということも意味する。
【0216】
図30は、ランプ制御用CPU351が実行するメイン処理を示すフローチャートである。ランプ制御用CPU351は、メイン処理において、まず、レジスタ、ワークエリアを含むRAMおよび出力ポート等を初期化する初期化処理を実行する(ステップS441)。次いで、主基板31からランプ制御コマンドを受信したか否かの確認を行う(ステップS442:コマンド確認処理)。また、受信したランプ制御コマンドに応じて、使用するランプデータを変更する等の処理であるコマンド実行処理を行う(ステップS443)。なお、主基板31からのランプ制御コマンドは、INT信号の入力に応じて起動される割込処理で取り込まれ、RAMに形成されている入力バッファに格納される。
【0217】
その後、この実施の形態では、ランプ制御用CPU351は、タイマ割込フラグの監視(ステップS444)を行うループ処理に移行する。そして、図31に示すように、タイマ割込が発生すると、ランプ制御用CPU351は、タイマ割込フラグをセットする(ステップS450)。メイン処理において、タイマ割込フラグがセットされていたら、ランプ制御用CPU351は、そのフラグをクリアするとともに(ステップS445)、ランププロセス更新処理およびポート出力処理を行う(ステップS446,S447)。
【0218】
この実施の形態では、遊技の進行に応じて点滅制御されるランプ・LEDの点灯パターンは、ROMに格納されているランプデータに応じて制御される。ランプデータは、制御パターンの種類毎(図29に示された変動パターン指定の種類を示す制御コマンドおよび遊技進行状況に応じて遊技制御手段から送出されるその他の遊技演出に関する制御コマンド毎)に用意されている。各ランプデータには、ランプ・LEDを点灯または消灯することを示すデータ、および点灯または消灯の期間(プロセスタイマ値)を示すデータが設定されている。すなわち、制御用データ領域には、発光体の点灯パターンを示すデータが格納されている。
【0219】
ランププロセス更新処理では、プロセスタイマ値に応じた値が初期設定されたタイマの値の減算処理が行われ、そのタイマがタイムアウトすると、ランプデータにおける次のアドレスに設定されているデータに応じてランプ・LEDを消灯または点灯させることに決定されるとともに、その決定結果に応じたプロセスタイマ値がタイマに設定される。また、プロセスタイマ値がタイマに設定されたときには点灯/消灯の切替がなされたときであるから、ポート出力処理において、ランプ・LEDを点灯または消灯のためのデータが該当する出力ポートに出力される。
【0220】
また、この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、ランププロセス更新処理およびポート出力処理は、2ms毎に起動される。
【0221】
図32は、ランプ制御基板35に搭載されたROMのアドレスマップを示す説明図である。ROM領域には制御用データ領域と制御プログラム領域とがあるが、制御用データ領域において、最前部に初期化データテーブルが格納されている。ランプ制御用CPU351も、主基板31のCPU56と同様に、初期化に際して、制御用データ領域に格納されている初期化データを用いて、レジスタ、RAMおよび出力ポート等の初期化を行う。初期化データは、機種が異なっても共通に使用される可能性が高い。すなわち、制御用データのうち複数の機種間で共通に使用される制御用データについては制御用データを格納する記憶領域における前部に配置されている。また、制御用データ領域において、後部には、機種が変わると変更されうる制御用データが格納されている。すなわち、複数の機種間で共通に使用される可能性が低い制御用データについては制御用データを格納する前記記憶領域における後部に配置されている。
【0222】
制御用データ領域において、次に、記憶表示LED表示テーブルが格納されている。記憶表示LED表示テーブルには、例えば、「1」、「2」、「3」および「4」のデータが設定されている。そして、例えば、メイン処理におけるコマンド実行処理(ステップS443)において、始動入賞記憶数ランプ指定コマンドを受信したことを確認したら、記憶表示LED表示テーブルにおける該当データを参照して、始動記憶表示器18の点灯/消灯制御を行う。具体的には、例えば、点灯個数に応じた所定のフラグがセットされ、ポート出力処理において、そのフラグを参照して、始動記憶表示器18に対して信号を出力するための出力ポートに「1」または「0」が出力される。
【0223】
次いで、コマンド上位バイトテーブルが格納されている。コマンド上位バイトテーブルには、ランプ制御コマンドの上位バイト(MODEデータ)に応じた処理が格納されているプログラムのアドレスと、MODEデータに応じたアドレステーブルとが設定されている。例えば、コマンド実行処理(ステップS443)において、受信したランプ制御コマンドのMODEデータに従ってコマンド上位バイトテーブルの内容が参照され、対応する処理(プログラム)が実行される。その処理では、アドレステーブルと受信したランプ制御コマンドの下位バイト(EXTデータ)とに応じて、制御用データ領域においてコマンド上位バイトテーブルの次に格納されているランプデータ選択テーブルにおけるデータが特定される。そして、特定されたデータが指すランプデータが選択される。
【0224】
例えば、主基板31から受信したランプ制御コマンドが8000(変動ランプ指定#1)であった場合には、コマンド上位バイトテーブルにおける80(H)に対応したデータ(4バイト)が参照される。そのデータの上位2バイトは、上位バイトが80(H)であるランプ制御コマンドを受信したときの処理が格納されているアドレスである。そして、図33に示すように、その処理において、コマンド上位バイトテーブルのデータにおける下位の2バイトの内容と受信したランプ制御コマンドのEXTデータとの和の値が示すランプデータ選択テーブルのデータが特定される。従って、受信したランプ制御コマンドの上位バイトが80(H)である場合に参照されるコマンド上位バイトテーブルにおける下位2バイトは、変動ランプ指定に関するランプデータ選択テーブルの先頭アドレスに相当する。
【0225】
図32に示すように、制御プログラム領域において、最前部にはメイン処理プログラムが格納され、次いで、初期化処理、コマンド認識処理、コマンド実行処理の各プログラムが格納されている。次に、特定ランプ・LED処理のプログラムが格納されている。特定ランプ・LED処理のプログラムとは、ランプ制御コマンドを受信したときの処理を実行する各プログラムである。
【0226】
さらに、制御プログラム領域において、ランププロセス更新処理、ポート出力処理、コマンド受信割込処理、タイマ割込処理が格納されている。
【0227】
この実施の形態では、ランプ・LEDの点灯のパターンを示すデータが制御用データ領域におけるランプデータに格納されている。そして、メイン処理におけるランププロセス更新処理(ステップS446)において、ランプデータを参照してランプ・LEDの点灯/消灯が制御される。従って、ランプ・LEDの点灯のパターンを変更したい場合には、ランプデータを変更するだけでよく、メイン処理のプログラムを変更する必要はない。
【0228】
また、主基板31のランプ制御コマンドは、コマンドの分類を示すMODEデータに応じた処理(プログラム)で処理される。MODEデータに応じた処理(ランプ制御コマンドを受信したときの処理)の先頭アドレスは、コマンド上位バイトテーブルに格納されている。従って、何らかの理由で、ランプ制御コマンドを受信したときの処理のプログラムを変更し、先頭アドレスが変わってしまったような場合でも、コマンド上位バイトテーブルの内容を変更するだけで、先頭アドレスの変更に対応することができる。そして、ランプ制御コマンドを受信したときの処理のプログラムを変更した場合でも、メイン処理、初期化処理、コマンド認識処理およびコマンド実行処理のプログラムを変更する必要はない。すなわち、制御プログラム領域の前部に配置されているプログラムを変更する必要はない。従って、複数の機種間で共通に使用可能な共通プログラムは制御プログラムを格納する記憶領域における前部に配置され、非共通プログラムが記憶領域における後部に格納されていることになる。
【0229】
さらに、使用するランプデータは、ランプデータ選択テーブルに格納されているアドレスによって特定される。従って、受信したランプ制御コマンドに応じた点灯パターン(ランプデータに格納されているパターン)を変更したい場合、ランプデータ選択テーブルに設定されているアドレスを変更することによって容易に対応することができる。この場合も、制御プログラム領域の前部に配置されているプログラムを変更する必要はない。
【0230】
図34は、主基板31から音制御基板70に送出される音声制御コマンドの内容の一例を示す説明図である。音声制御コマンドもMODEとEXTの2バイト構成である。図34に示す例において、コマンド8XXX(X=4ビットの任意の値)は、特別図柄の変動期間における音発生パターンを指定する音声制御コマンドである。コマンドBXXX(X=4ビットの任意の値)は、大当り遊技開始から大当り遊技終了までの間における音発生パターンを指定する音声制御コマンドである。その他のコマンドは、特別図柄の変動および大当り遊技に関わらない音声制御コマンドである。音制御基板70に搭載されている音声制御手段(音制御手段)は、主基板31の遊技制御手段から上述した音声制御コマンドを受信すると図34に示された内容に応じて音出力状態を変更する。
【0231】
図29および図34に示されたように、ランプ制御コマンドおよび音声制御コマンドは、全てMODE部分とEXT部分とからなっている。すなわち、音声制御コマンドとランプ制御コマンドの形態は共通している。なお、主基板31の遊技制御手段から図柄制御基板80に送出される図柄制御コマンドの形態も音声制御コマンドおよびランプ制御コマンドの形態と共通している。
【0232】
遊技制御手段から演出制御手段(ランプ制御手段、音声制御手段および表示制御手段)に送出される各制御コマンドの形態が共通しているので、遊技制御手段のCPU56が実行するプログラムにおいて、各制御コマンドの作成部分と出力部分を容易に共通化することができる。その結果、遊技制御手段が実行する制御プログラムのコマンドの送出に関するモジュールが簡略化され、プログラム保守が容易になるとともに、他機種へのプログラム流用も容易になる。
【0233】
図35は、音声制御用CPU701が実行するメイン処理を示すフローチャートである。音声制御用CPU701は、メイン処理において、まず、レジスタ、ワークエリアを含むRAMおよび出力ポート等を初期化する初期化処理を実行する(ステップS461)。次いで、主基板31から音声制御コマンドを受信したか否かの確認を行う(ステップS462:コマンド確認処理)。また、受信した音声制御コマンドに応じて、使用する音声データを変更する等の処理であるコマンド実行処理を行う(ステップS463)。なお、主基板31からの音声制御コマンドは、INT信号の入力に応じて起動される割込処理で取り込まれ、RAMに形成されている入力バッファに格納される。
【0234】
その後、この実施の形態では、音声制御用CPU701は、タイマ割込フラグの監視(ステップS464)を行うループ処理に移行する。そして、図36に示すように、タイマ割込が発生すると、音声制御用CPU701は、タイマ割込フラグをセットする(ステップS470)。メイン処理において、タイマ割込フラグがセットされていたら、音声制御用CPU701は、そのフラグをクリアするとともに(ステップS465)、音声プロセス更新処理およびポート出力処理を行う(ステップS466,S467)。
【0235】
この実施の形態では、遊技の進行に応じてスピーカ27から出力される音声パターンは、ROMに格納されている音声データに応じて制御される。音声データは、制御パターンの種類毎(図35に示された制御コマンド毎)に用意されている。
【0236】
また、音声合成回路702は、転送リクエスト信号(SIRQ)、シリアルクロック信号(SICK)、シリアルデータ信号(SI)および転送終了信号(SRDY)によって制御される。音声合成回路702は、SIRQがローレベルになると、SICKに同期してSIを1ビットずつ取り込み、SRDYがローレベルになるとそれまでに受信した各SIからなるデータを1つの音声再生用データと解釈する。
【0237】
各音声データには、音声合成回路702に出力されるシリアルデータ信号に応じたデータ、およびそのデータに応じて発生される音声の継続期間(プロセスタイマ値)を示すデータが設定されている。すなわち、制御用データには、音発生手段(この例ではスピーカ27)からの出力パターンを示すデータが格納されている。
【0238】
音声プロセス更新処理では、プロセスタイマ値に応じた値が初期設定されたタイマの値の減算処理が行われ、そのタイマがタイムアウトすると、音声データにおける次のアドレスに設定されているデータに応じて出力音声に変更することが決定されるとともに、その決定結果に応じたプロセスタイマ値がタイマに設定される。また、プロセスタイマ値がタイマに設定されたときには出力音声の切替がなされたときであるから、ポート出力処理(ステップS467)において、音声合成回路702にデータを出力するための出力ポートを介して、音声合成回路702に、新たな出力音声に対応したデータが出力される。
【0239】
具体的には、音声制御用CPU701は、ポート出力処理において、SIRQをオン(ローレベル)にして、ROM(音声コマンドデータ領域)から読み出したデータ(音声コマンド)をSICKに同期してSIとして出力し、出力が完了したらSRDYをローレベルにする。音声合成回路702は、SIによってデータを受信すると、受信したデータに応じた音声を発生する。
【0240】
また、この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、音声プロセス更新処理およびポート出力処理は、2ms毎に起動される。
【0241】
図37は、音制御基板70に搭載されたROMのアドレスマップを示す説明図である。ROM領域には制御用データ領域と制御プログラム領域とがあるが、制御用データ領域において、最前部に初期化データテーブルが格納されている。音声制御用CPU701も、主基板31のCPU56およびランプ制御用CPU351と同様に、初期化に際して、制御用データ領域に格納されている初期化データを用いて、レジスタ、RAMおよび出力ポート等の初期化を行う。初期化データは、機種が異なっても共通に使用される可能性が高い。すなわち、制御用データのうち複数の機種間で共通に使用される制御用データについては制御用データを格納する記憶領域における前部に配置されている。また、制御用データ領域において、後部には、機種が変わると変更されうる制御用データが格納されている。すなわち、複数の機種間で共通に使用される可能性が低い制御用データについては制御用データを格納する前記記憶領域における後部に配置されている。
【0242】
制御用データ領域において、次に、コマンド上位バイトテーブルが格納されている。コマンド上位バイトテーブルには、音声制御コマンドの上位バイト(MODEデータ)に応じた処理が格納されているプログラムのアドレスと、MODEデータに応じたアドレステーブルとが設定されている。例えば、コマンド実行処理(ステップS463)において、受信した音声制御コマンドのMODEデータに従ってコマンド上位バイトテーブルの内容が参照され、対応する処理(プログラム)が実行される。その処理では、アドレステーブルと受信した音声制御コマンドの下位バイト(EXTデータ)とに応じて、制御用データ領域においてコマンド上位バイトテーブルの次に格納されている音声データ選択テーブルにおけるデータが特定される。そして、特定されたデータが指す音声データが選択される。
【0243】
例えば、主基板31から受信した音声制御コマンドが8000(変動中音指定#1)であった場合には、コマンド上位バイトテーブルにおける80(H)に対応したデータ(4バイト)が参照される。そのデータの上位2バイトは、上位バイトが80(H)である音声制御コマンドを受信したときの処理すなわち音声アドレス選択処理が格納されているアドレスである。そして、図38に示すように、その処理において、コマンド上位バイトテーブルのデータにおける下位の2バイトの内容と受信した音声制御コマンドのEXTデータとの和の値が示す音声データ選択テーブルのデータが特定される。従って、受信した音声制御コマンドの上位バイトが80(H)である場合に参照されるコマンド上位バイトテーブルにおける下位2バイトは、変動中音指定に関する音声データ選択テーブルの先頭アドレスに相当する。なお、この実施の形態では、MODEデータがいずれの値であっても、同一の音声アドレス選択処理が実行されるように構成されている。
【0244】
図37に示すように、制御プログラム領域において、最前部にはメイン処理プログラムが格納され、次いで、初期化処理、コマンド認識処理、コマンド実行処理の各プログラムが格納されている。次に、音声アドレス選択処理のプログラムが格納されている。
【0245】
さらに、制御プログラム領域において、音声プロセス更新処理、ポート出力処理、コマンド受信割込処理、タイマ割込処理が格納されている。
【0246】
この実施の形態では、音声合成回路702に与えられるデータすなわち出力音声を示すデータが制御用データ領域における音声コマンドデータに格納されている。そして、メイン処理における音声プロセス更新処理(ステップS466)において、音声データが参照され、さらに音声コマンドデータを参照して出力音声が制御される。従って、出力音声のパターンを変更したい場合には、音声データまたは音声コマンドデータを変更するだけでよく、メイン処理のプログラムを変更する必要はない。
【0247】
また、主基板31の音声制御コマンドは、コマンドの分類を示すMODEデータに応じた処理(プログラム)で処理される。MODEデータに応じた処理(音声アドレス選択処理)の先頭アドレスは、コマンド上位バイトテーブルに格納されている。従って、何らかの理由で、音声制御コマンドを受信したときの処理のプログラムを変更し、先頭アドレスが変わってしまったような場合でも、コマンド上位バイトテーブルの内容を変更するだけで、先頭アドレスの変更に対応することができる。そして、音声アドレス選択処理のプログラムを変更した場合やプログラムを追加した場合でも、メイン処理、初期化処理、コマンド認識処理およびコマンド実行処理のプログラムを変更する必要はない。すなわち、制御プログラム領域の前部に配置されているプログラムを変更する必要はない。従って、複数の機種間で共通に使用可能な共通プログラムは制御プログラムを格納する記憶領域における前部に配置され、非共通プログラムが記憶領域における後部に格納されていることになる。
【0248】
さらに、使用する音声データは、音声データ選択テーブルに格納されているアドレスによって特定される。従って、受信した音声制御コマンドに応じた出力音声パターン(音声データに格納されているパターン)を変更したい場合、音声データ選択テーブルに設定されているアドレスを変更することによって容易に対応することができる。この場合も、制御プログラム領域の前部に配置されているプログラムを変更する必要はない。
【0249】
図39は、主基板31および電気部品制御基板の他の構成例を示すブロック図である。この例では、遊技機に設けられている発光体、音発生手段(この例ではスピーカ27)および図柄表示手段(この例では可変表示部9)を制御する演出制御手段が搭載されている演出制御基板400が設けられている。演出制御手段は、主基板31の遊技制御手段から演出制御コマンドを受信し、受信したコマンドにもとづいて、装飾ランプ25、遊技効果ランプ・LED28a,28b,28c、賞球ランプ51、球切れランプ52、始動記憶表示器18およびゲート通過記憶表示器41の表示制御を行うとともに、スピーカ27からの音発生制御を行う。さらに、識別情報としての特別図柄を可変表示する可変表示部9および識別情報としての普通図柄を可変表示する可変表示部10の表示制御を行う。なお、図39では、発射制御に関する部分は省略されている。
【0250】
図40は、演出制御基板400の回路構成例を主基板31のコマンド送出部分とともに示すブロック図である。図40に示すように、主基板31の出力ポート出力ポート572からは8ビットのデータCD0〜CD7(演出制御コマンドを構成する演出制御信号)が出力され、出力ポート570からは1ビットのストローブ信号(INT信号)が出力される。なお、演出制御コマンドの送出方法は、例えば、図14に示されたランプ制御コマンドや音声制御コマンドの場合と同じでよい。
【0251】
演出制御用CPU401は、制御データROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して演出制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、演出制御用CPU401がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと演出制御用CPU401との間に、I/Oポートが設けられる。
【0252】
そして、演出制御用CPU401は、受信した演出制御コマンドに従って、可変表示部としてのLCD82および普通図柄表示器10の表示制御を行う。可変表示部の表示制御を行うために、具体的には、演出制御コマンドに応じた指令をVDP103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
【0253】
演出制御用CPU401は、既に説明したランプ制御用CPU351および音声制御用CPU701の動作と同じ動作を行って、遊技機に設けられているランプ・LED(発光体)およびスピーカ(音発生手段)27の制御を行う。また、演出制御コマンドに従って、可変表示部9および普通図柄表示器10の表示制御を行う。
【0254】
図柄制御基板80、ランプ制御基板35および音制御基板70がそれぞれ独立して設けられている構成において、主基板31の遊技制御手段からのランプ制御コマンドの形態と音声制御コマンドの形態とは共通化されていた。また、表示制御コマンドの形態を、ランプ制御コマンドの形態および音声制御コマンドの形態と共通化することも可能であった。従って、1種類の演出制御コマンドによって、可変表示部の表示制御、ランプ制御および音声制御を行わせることは容易である。
【0255】
なお、この実施の形態では、演出制御基板400に搭載されている演出制御手段が可変表示部の表示制御、ランプ制御および音声制御を行っているが、図柄制御基板と演出制御基板とを設け、可変表示部9および普通図柄表示器10の表示制御は図柄制御基板に搭載されている表示制御手段によって実現され、ランプ制御および音声制御は演出制御基板に搭載されている演出制御手段によって実行されるように構成してもよい。その場合、主基板31の遊技制御手段が表示制御手段に対する表示制御コマンドと演出制御手段に対する演出制御コマンドとを送出するようにしてもよいが、遊技制御手段から表示制御コマンドを受けた表示制御手段が、受信した表示制御コマンドから演出制御コマンドを作成して演出制御基板に対して送出するように構成してもよい。
【0256】
以上のように、上記の各実施の形態では、ランプ制御基板35、音制御手段70、演出制御基板400に搭載されているマイクロコンピュータが制御プログラムおよびROM内の制御用データを用いて演出用部品の制御を行う際に、制御用データに演出用部品の制御パターン(発光体の点灯パターンや出力音声パターン)を示すデータが含まれ、マイクロコンピュータが実行する制御プログラムにおける共通プログラムが、遊技制御手段からのコマンドに応じた制御パターンを示すデータを参照して演出用部品の制御を行うように構成されているので、共通プログラムとしてのメイン処理、コマンド認識処理およびコマンド実行処理等を変更することなく、制御プログラムを他機種に流用することができる。すなわち、他機種に流用する際に、必要であるならば、制御用データの領域に格納されている制御パターンや非共通プログラムのみを変更するだけでよい。
【0257】
なお、上記の各実施の形態のパチンコ遊技機1は、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第2種パチンコ遊技機や、始動入賞または始動ゲートの通過にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物へ入賞し、かつ、複数の入賞領域のうち特別の入賞領域への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
【0258】
また、パチンコ遊技機に限られず、スロット機等においても、何らかの動作をする電気部品等を制御するためのマイクロコンピュータや電気部品制御基板が備えられている場合などには本発明を適用することができる。
【0259】
【発明の効果】
発明では、遊技機を、演出制御手段におけるマイクロコンピュータが、制御プログラムおよび遊技の進行による内容の変化がない制御用データを用いて演出用部品の制御を行い、制御用データには演出用部品の制御パターンを示すデータが含まれ、マイクロコンピュータが実行する制御プログラムにおける共通プログラムは、遊技制御手段からのコマンドに応じた制御パターンを示すデータを制御用データ領域から参照し、参照したデータに従って演出用部品の制御を行い、複数の機種間で共通に使用される制御用データについては制御用データを格納する記憶領域における前部に配置され、複数の機種間で共通に使用される可能性が低い制御用データについては制御用データを格納する記憶領域における後部に配置されているように構成したので、制御プログラム等の他機種への流用をより容易にすることができる効果がある。すなわち、制御内容を変更する必要がある場合には、制御用データを格納する記憶領域おける後部にある非共通データを変更すればよい。
【0262】
発明では、マイクロコンピュータが制御プログラムを実行する際に使用するワークエリアの初期設定のためのデータが、制御用データを記憶する記憶領域における前部に配置されているので、流用に際して変更の可能性が小さいワークエリアの初期設定のための制御用データを前部に配置することによって、制御用データ全体の流用を容易にすることができる。
【0263】
発明では、出力ポートを初期設定するためのデータが制御用データを記憶する記憶領域における前部に配置されているので、流用に際して変更の可能性が小さい出力ポートの初期設定のための制御用データを前部に配置することによって、制御用データ全体の流用を容易にすることができる。
【0265】
発明では、制御用データに発光体の点灯パターンを示すデータが含まれるので、他機種に流用する場合、点灯パターンが変わる場合であっても、点灯パターンを示すデータの内容を変更すれば共通プログラムを変更しなくてよい。
【図面の簡単な説明】
【図1】 パチンコ遊技機を正面からみた正面図である。
【図2】 パチンコ遊技機の裏面に設けられている各基板を示す説明図である。
【図3】 パチンコ遊技機の機構盤を背面からみた背面図である。
【図4】 遊技制御基板(主基板)の回路構成を示すブロック図である。
【図5】 図柄制御基板内の回路構成を示すブロック図である。
【図6】 ランプ制御基板内の回路構成を示すブロック図である。
【図7】 音制御基板内の回路構成を示すブロック図である。
【図8】 払出制御基板および球払出装置の構成要素などの賞球に関連する構成要素を示すブロック図である。
【図9】 電源基板の一構成例を示すブロック図である。
【図10】 CPUの内部構成をより詳細に示すブロック図である。
【図11】 主基板におけるCPUが実行するメイン処理の例を示すフローチャートである。
【図12】 遊技状態復旧処理を実行するか否かの決定方法の例を示す説明図である。
【図13】 2msタイマ割込処理の例を示すフローチャートである。
【図14】 主基板から他の電気部品制御基板の電気部品制御手段に送出される制御コマンドの制御を説明するための説明図である。
【図15】 ROMのアドレスマップを示す説明図である。
【図16】 遊技制御手段における電力供給停止時処理の処理例を示すフローチャートである。
【図17】 遊技制御手段における電力供給停止時処理の処理例を示すフローチャートである。
【図18】 RAMのアドレスマップを示す説明図である。
【図19】 チェックサム作成方法の一例を説明するための説明図である。
【図20】 RAMのアドレスマップの他の例を示す説明図である。
【図21】 遊技制御手段における電力供給停止時処理の他の処理例を示すフローチャートである。
【図22】 遊技制御手段における電力供給停止時処理の他の処理例を示すフローチャートである。
【図23】 パリティチェック処理を示すフローチャートである。
【図24】 チェックサム作成方法の他の例を説明するための説明図である。
【図25】 払出制御用CPU周りの一構成例を示すブロック図である。
【図26】 払出制御基板におけるCPUが実行するメイン処理を示すフローチャートである。
【図27】 払出制御手段における電力供給停止時処理を示すフローチャートである。
【図28】 払出制御手段における電力供給停止時処理を示すフローチャートである。
【図29】 ランプ制御コマンドの内容の一例を示す説明図である。
【図30】 ランプ制御用CPUが実行するメイン処理を示すフローチャートである。
【図31】 ランプ制御用CPUが実行するタイマ割込処理を示すフローチャートである。
【図32】 ランプ制御基板に搭載されたROMのアドレスマップを示す説明図である。
【図33】 ランプ制御手段におけるコマンド上位バイトテーブル、ランプコマンド選択テーブルおよびランプデータの関係を示す説明図である。
【図34】 音声制御コマンドの内容の一例を示す説明図である。
【図35】 音声制御用CPUが実行するメイン処理を示すフローチャートである。
【図36】 音声制御用CPUが実行するタイマ割込処理を示すフローチャートである。
【図37】 音制御基板に搭載されたROMのアドレスマップを示す説明図である。
【図38】 音声制御手段におけるコマンド上位バイトテーブル、ランプコマンド選択テーブルおよびランプデータの関係を示す説明図である。
【図39】 主基板31および演出制御基板の構成例を示すブロック図である。
【図40】 演出制御基板の回路構成例を主基板のコマンド送出部分とともに示すブロック図である。
【符号の説明】
31 遊技制御基板(主基板)
35 ランプ制御基板
37 払出制御基板
56 CPU
70 音制御基板
80 図柄制御基板
101 表示制御用CPU
351 ランプ制御用CPU
371 払出制御用CPU
400 演出制御基板
401 演出制御用CPU
701 音制御用CPU
[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 played in accordance with a player's operation.
[0002]
[Prior art]
As 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 paid out to the player. There is something to be done. 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 to a player who is easy to win and a right to become advantageous to the player. Or a condition that the conditions for paying out premium game media are easily established. Further, when a predetermined amount of game balls or coins are awarded or a score is added in accordance with the establishment of a predetermined condition such as winning, these are referred to as value or valuable value.
[0004]
In a pachinko game machine, the combination of a specific display mode with a predetermined display result of a variable display unit that displays special symbols is usually referred to as “big hit”. 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 “out of” display modes other than the “big hit” combination, the display results are already derived and displayed at a stage where some of the display results of the plurality of variable display portions have not yet been derived and displayed. A state in which the display mode of the variable display unit satisfies a display condition that is a combination of specific display modes is referred to as “reach”. A player plays a game while enjoying how to generate a big hit.
[0006]
The game progress in the gaming machine is controlled by game control means such as a microcomputer. The identification information, character image, and background image displayed on the variable display device are controlled by display control means that operates in accordance with display control command data from the game control means. In general, the identification information, character image, and background image displayed on the variable display device are a display control microcomputer and a video display processor that generates image data in accordance with instructions from the microcomputer and transfers the image data to the variable display device side ( VDP), the program capacity of the display control microcomputer is large.
[0007]
Therefore, it is impossible to control the identification information displayed on the variable display device by the microcomputer of the game control means having a limited program capacity, and a microcomputer for display control different from the microcomputer of the game control means. Including display control means is provided. Therefore, the game control means for controlling the progress of the game needs to transmit a display control command to the display control means.
[0008]
In such a gaming machine, a speaker is provided on the game board, and various sound effects are emitted from the speaker as the game progresses in order to enhance the gaming effect. In addition, light emitters such as lamps and LEDs are provided on the game board, and these light emitters are turned on and off as the game progresses in order to enhance the gaming effect. Generally, sound control for generating sound effects is performed by game control means for controlling the progress of the game. Further, the lighting / extinguishing control of the light emitter is performed by a game control means for controlling the progress of the game. Then, if the model of the gaming machine is different, the method of generating the sound effect is different, and the pattern of lighting / extinguishing of the lamp and LED is different, so the configuration of the game control means must be changed accordingly. Therefore, if the models are different, it is necessary to redesign the game control means, which increases the design cost.
[0009]
In order to avoid such a problem, a sound control board equipped with sound control means is provided separately from the game control means, or a light emitter control board equipped with light emitter control means is provided separately from the game control means. Thus, the control command may be sent from the game control means to the sound control means or the light emitter control means as the game progresses. According to such a configuration, it is possible to cope with different models by changing the interpretation of the control command by the voice control unit and the light emitter control unit. A similar configuration can be adopted when a control command is sent to each control board on which a control means including a control microprocessor is mounted, which is a board other than the sound control board and the light emitter control board.
[0010]
[Problems to be solved by the invention]
However, if the game machine type is different, the number and arrangement of light emitters in the game machine may be different. In addition, there are often different production patterns (lighting / extinguishing patterns) using a light emitter and production patterns (how to make sound, timing, etc.) using sound. In that case, software for effect control in effect control means such as sound control means and light emitter control means mounted on the sound control board or light emitter control board must be changed. As a result, when a new model is developed, the development period becomes longer than when the existing model production control software is used as it is.
[0011]
Therefore, the present invention further reduces the possibility of having to change the program for rendering control when diverting to other models, and the structure relating to the rendering control program and rendering control data that can be easily diverted to other models It aims at providing the gaming machine which has.
[0012]
[Means for Solving the Problems]
A gaming machine according to the present invention is a gaming machine in which a player plays a predetermined game and pays out a prize game medium according to a prize, and includes a game control board equipped with a game control microcomputer for controlling the progress of the game, And an effect control board equipped with an effect control microcomputer for controlling the effect parts based on the effect control command output from the game control microcomputer, When power supply is started, after setting the interrupt disabled state, the internal timer of the game control microcomputer is initialized so that it periodically generates a timer interrupt to the game control microcomputer. Set to interrupt enabled state, set to interrupt enabled state, then execute a loop process that repeatedly executes an update process to update a predetermined random number, and based on the occurrence of a timer interrupt, the game starts from the loop process. The state of the interrupt flag in the RAM that holds data used in the game control process even if the power supply to the gaming machine is stopped when the power supply is stopped when the power supply is stopped. The game is stored based on the data used in the game control process held in the RAM when the power supply is started. Based on the data indicating the state of the interrupt flag held in the RAM in the gaming state return control that is executed when power supply is started. Set the timer interrupt enabled state or timer interrupt disabled state, When outputting the production control command, the level of the rectangular wave is changed over a predetermined period of time as a capture signal for instructing the capture of command data after outputting the command data of the production control command. After that, the command data output is maintained for a predetermined period, and the production control microcomputer inputs the production control command according to the capture signal, and stores the ROM control data corresponding to the production control command. In the control data stored in the area, data indicating the control pattern of the production part is selected, and the process for controlling the production part is executed in accordance with the data indicating the selected control pattern. The initialization data that is used in common among multiple models and used when performing initialization processing indicates the control pattern. Than over data arranged in front, and executes an initialization process using the initialization data when power supply is started. The front part is an area having a relatively small address in a storage area of a predetermined size for storing control data.
[0015]
For initialization data, for production control Data for initial setting of the work area used when the microcomputer executes the control program Contains It may be.
[0016]
The initialization data includes Data to initialize the output port used to output information Contains It may be.
[0018]
Data indicating control pattern In , Includes data indicating the lighting pattern of the light emitter May be .
[0023]
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 pachinko gaming machine 1 as seen from the front. Here, a pachinko gaming machine is shown as an example of a gaming machine, but the present invention is not limited to a pachinko gaming machine, and may be a coin gaming machine, a slot machine, or the like.
[0024]
As shown in FIG. 1, the pachinko gaming machine 1 has a glass door frame 2 formed in a frame shape. There is a hitting ball supply tray 3 on the lower surface of the glass door frame 2. Under the hitting ball supply tray 3, there are provided an extra ball receiving tray 4 for storing game balls overflowing from the hitting ball supply tray 3 and a hitting operation handle (operation knob) 5 for firing the hitting ball. A game board 6 is detachably attached to the rear side of the glass door frame 2. A game area 7 is provided on the front surface of the game board 6.
[0025]
Near the center of the game area 7, a variable display including a variable display unit (special symbol display device) 9 for variably displaying a plurality of types of symbols and a normal symbol display device (ordinary symbol display device) 10 using a 7-segment LED. A device 8 is provided. The variable display unit 9 has, for example, three symbol display areas of “left”, “middle”, and “right”. A passing gate 11 for guiding a hit ball is provided on the side of the variable display device 8. The hit ball that has passed through the passing gate 11 is guided to the start winning opening 14 through the ball outlet 13. In the passage between the passage gate 11 and the ball exit 13, there is a gate switch 12 that detects a hit ball that has passed through the passage gate 11. The winning ball that has entered the start winning opening 14 is guided to the back of the game board 6 and detected by the start opening switch 17. A variable winning ball device 15 that opens and closes is provided below the start winning opening 14. The variable winning ball device 15 is opened by a solenoid 16.
[0026]
An open / close plate 20 that is opened by a solenoid 21 in a specific gaming state (big hit state) is provided below the variable winning ball device 15. In this embodiment, the opening / closing plate 20 is a means for opening and closing the special winning opening. Of the winning balls guided from the opening / closing plate 20 to the back of the game board 6, the winning ball entering one (V zone) is detected by the V count switch 22. A winning ball from the opening / closing plate 20 is detected by the count switch 23. At the bottom of the variable display device 8, a start winning memory display 18 having four display units for displaying the number of winning balls that have entered the start winning opening 14 is provided. In this example, with the upper limit being four, each time there is a start prize, the start prize storage display 18 increases the number of lit display units one by one. Then, each time the variable display of the variable display unit 9 is started, the lit display unit is reduced by one.
[0027]
The game board 6 is provided with a plurality of winning holes 19, 24, and winning of the game balls to the respective winning holes 19, 24 is performed by correspondingly provided winning hole switches 19a, 19b, 24a, 24b. Detected. Decorative lamps 25 blinking during the game are provided around the left and right sides of the game area 7, and an outlet 26 for absorbing a hit ball that has not won a prize is provided below. Two speakers 27 that emit sound effects are provided on the left and right upper portions outside the game area 7. On the outer periphery of the game area 7, a game effect LED 28a and game effect lamps 28b and 28c are provided.
[0028]
In this example, a prize ball lamp 51 that is lit when a prize ball is paid out is provided in the vicinity of one speaker 27, and a ball break lamp 52 that is lit when a supply ball is cut out in the vicinity of the other speaker 27. Is provided. Further, FIG. 1 also shows a card unit 50 that is installed adjacent to the pachinko gaming machine 1 and enables lending of a ball by inserting a prepaid card.
[0029]
The card unit 50 has a usable indicator lamp 151 indicating whether or not it is in a usable state, and when the remaining amount information recorded in the card has a fraction (a number less than 100 yen), the fraction is indicated as a hitting tray. 3, a fraction display switch 152 for displaying on a frequency display LED provided in the vicinity of 3, a connecting table direction indicator 153 indicating which side of the pachinko gaming machine 1 corresponds to the card unit 50, in the card unit 50 Check the card insertion indicator lamp 154 indicating that a card is inserted, the card insertion slot 155 into which a card as a recording medium is inserted, and the mechanism of the card reader / writer provided on the back of the card insertion slot 155. In some cases, a card unit lock 156 is provided for releasing the card unit 50.
[0030]
The hit ball fired from the hit ball launching device enters the game area 7 through the hit ball rail, and then descends the game area 7. When the hit ball is detected by the gate switch 12 through the passing gate 11, the display number of the normal symbol display 10 changes continuously. Further, when the hit ball enters the start winning opening 14 and is detected by the start opening switch 17, the symbol in the variable display portion 9 starts to rotate if the variation of the symbol can be started. If it is not in a state where the change of the symbol can be started, the start winning memory is increased by one.
[0031]
The rotation of the image in the variable display unit 9 stops when a certain time has elapsed. If the combination of images at the time of the stop is a combination of jackpot symbols, the game shifts to a jackpot gaming state. That is, the opening / closing plate 20 is opened until a predetermined time elapses or a predetermined number (for example, 10) of hit balls wins. When the hit ball enters the specific winning area while the opening / closing plate 20 is opened and is detected by the V count switch 22, a right to continue is generated and the opening / closing plate 20 is opened again. The generation of the continuation right is allowed a predetermined number of times (for example, 15 rounds).
[0032]
When the combination of images in the variable display section 9 at the time of stop is a combination of jackpot symbols with probability fluctuations, the probability of the next jackpot increases. That is, it becomes a more advantageous state for the player in a high probability state. Further, when the stop symbol in the normal symbol display 10 is a predetermined symbol (winning symbol = small winning symbol), the variable winning ball device 15 is opened for a predetermined time. Further, in the high probability state, the probability that the stop symbol in the normal symbol display 10 becomes a winning symbol is increased, and the opening time and the number of times of opening of the variable winning ball device 15 are increased.
[0033]
Next, each board | substrate arrange | positioned at the back surface of the pachinko game machine 1 is demonstrated.
As shown in FIG. 2, on the back surface of the pachinko gaming machine 1, a ball storage tank 38 is provided above the mechanism plate in the frame 2 </ b> A, and the pachinko gaming machine 1 is installed above the gaming machine installation island. The game balls are supplied to the ball storage tank 38. The game balls in the ball storage tank 38 pass through the guide basket 39 and reach the ball payout device covered with the prize ball case 40A.
[0034]
On the back side of the gaming machine, a variable display control unit 29 including a symbol control board for controlling the variable display unit 9, a game control board (main board) 31 on which a game control microcomputer and the like are mounted are installed. Further, a payout control board 37 on which a payout control microcomputer for performing ball payout control and the like, and a hitting ball launching device for hitting a hitting ball into the game area 7 using the rotational force of the motor are installed. Furthermore, the sound control for controlling the sound generation from the decoration lamp 25, the game effect LED 28a, the game effect lamps 28b and 28c, the lamp control board 35 for sending signals to the prize ball lamp 51 and the ball break lamp 52, and the speaker 27. A launch control board 91 for controlling the board 70 and the ball hitting device is also provided.
[0035]
Furthermore, a power supply board 910 on which a power supply circuit for generating DC30V, DC21V, DC12V and DC5V is mounted is provided, and a terminal board 160 provided with terminals for outputting various information to the outside of the gaming machine is installed above. Has been. The terminal board 160 has at least a ball break terminal for introducing and outputting an output of the ball break detection switch, an award ball terminal for externally outputting a prize ball number signal, and a predetermined number of balls for lending. A ball lending terminal for outputting a generated ball lending signal to the outside is provided. In addition, an information terminal board 34 having terminals for outputting various information from the main board 31 to the outside of the gaming machine is installed near the center.
[0036]
In FIG. 2, signals from the lamp control board 35 and the sound control board 70 are supplied to the game effect LED 28a, the game effect lamps 28b and 28c, the prize ball lamp 51, and the ball break lamp 52 provided on the frame side. Although the electrical relay board A77 for doing this is shown, other relay boards are also provided if necessary for signal relay.
[0037]
FIG. 3 is a rear view of the mechanism plate of the pachinko gaming machine 1 as seen from the back. The balls stored in the ball storage tank 38 pass through the guide rod 39 and pass through the ball break detectors (ball break switches) 187a and 187b, as shown in FIG. 3, through the ball supply rods 186a and 186b. Device 97 is reached. The ball break switches 187a and 187b are switches that detect the presence or absence of a game ball in the game ball passage, but a ball break detection switch 167 that detects a shortage of supply balls in the ball tank 38 is also provided. Hereinafter, the ball break switches 187a and 187b may be expressed as ball break switches 187.
[0038]
The game balls paid out from the ball payout device 97 are supplied to the hitting ball supply tray 3 provided on the front surface of the pachinko gaming machine 1 through the connection port 45. A surplus ball passage 46 communicating with the surplus ball receiving tray 4 provided on the front surface of the pachinko gaming machine 1 is formed on the side of the communication port 45.
[0039]
A lot of premium balls based on the winnings are paid out and the hitting ball supply tray 3 becomes full. Finally, when the game balls reach the contact port 45 and further game balls are paid out, the game balls are surplus via the surplus ball passage 46. It is guided to the ball receiving tray 4. When the game ball is further paid out, the sensing lever 47 presses the full tank switch 48 and the full tank switch 48 is turned on. In this state, the rotation of the stepping motor in the ball dispensing device 97 is stopped, the operation of the ball dispensing device 97 is stopped, and the driving of the ball hitting device 34 is also stopped.
[0040]
FIG. 4 is a block diagram illustrating an example of a circuit configuration in the main board 31. 4 also shows a payout control board 37, a lamp control board 35, a sound control board 70, a launch control board 91, and a symbol control board 80. Hereinafter, the payout control board 37, the lamp control board 35, the sound control board 70, and the symbol control board 80 may be referred to as electrical component control boards. Further, the control means including the microcomputer mounted on the electric component control board may be referred to as electric component control means. Of the electrical components controlled by the electrical component control means, those related to the game effect are effect components. The lamp control board 35, the sound control board 70, and the symbol control board 80 are also examples of effect parts control boards. The electric component control means (lamp control means, sound control means, and display control means) mounted on the lamp control board 35, the sound control board 70, and the symbol control board 80 are also examples of effect parts control means.
[0041]
The main board 31 includes a basic circuit 53 for controlling the pachinko gaming machine 1 according to a program, a gate switch 12, a start port switch 17, a V count switch 22, a count switch 23, winning port switches 19a, 19b, 24a, 24b, The switch circuit 58 for supplying signals from the tongue switch 48, the ball break switch 187 and the prize ball count switch 301A to the basic circuit 53, the solenoid 16 for opening / closing the variable prize ball device 15, the solenoid 21 for opening / closing the opening / closing plate 20, and the big prize A solenoid circuit 59 for driving a switching solenoid 21A for switching a route in the mouth according to a command from the basic circuit 53 is mounted.
[0042]
Although not shown in FIG. 4, the count switch short circuit signal is also transmitted to the basic circuit 53 via the switch circuit 58.
[0043]
Also, an address decode circuit 67 that decodes an address signal supplied from the basic circuit 53 and outputs a signal for selecting any I / O port of the I / O port unit 57, and is supplied from the basic circuit 53. Jackpot information indicating the occurrence of a jackpot, effective start information output when the variable display is stopped to enable the number of start winning balls used for starting the image display of the variable display unit 9 to be specified externally, An information output circuit 64 is provided for outputting an information output signal such as probability variation information indicating that a probability variation has occurred to an external device such as a hall computer.
[0044]
The basic circuit 53 includes a ROM 54 that stores a game control program and the like, a RAM 55 that is an example of storage means used as a work memory, a CPU 56 that performs control operations according to the program, and an I / O port unit 57. In this embodiment, the ROM 54 and RAM 55 are built in the CPU 56. That is, the CPU 56 is a one-chip microcomputer. The one-chip microcomputer only needs to incorporate at least the RAM 55, and the ROM 54 and the I / O port unit 57 may be externally attached or built-in.
[0045]
Further, the main board 31 is provided with a system reset circuit 65 for resetting the basic circuit 53 when the power is turned on.
[0046]
A ball hitting device for hitting and launching a game ball is driven by a drive motor 94 controlled by a circuit on the launch control board 91. Then, the driving force of the drive motor 94 is adjusted according to the operation amount of the operation knob 5. That is, the circuit on the firing control board 91 is controlled so that the hit ball is fired at a speed corresponding to the operation amount of the operation knob 5.
[0047]
In this embodiment, the lamp control means mounted on the lamp control board 35 controls the display of the start memory indicator 18, the gate passing memory indicator 41 and the decoration lamp 25 provided on the game board. At the same time, display control of the game effect lamps / LEDs 28a, 28b, 28c, the prize ball lamp 51 and the ball-out lamp 52 provided on the frame side is performed. The display control of the variable display unit 9 for variably displaying the special symbol and the normal symbol display 10 for variably displaying the normal symbol is performed by display control means mounted on the symbol control board 80.
[0048]
FIG. 5 shows the circuit configuration in the symbol control board 80, LCD (Liquid Crystal Display) 82, which is an example of realization of the variable display unit 9, the normal symbol display 10, and the output ports (ports 0 and 2) of the main board 31. It is a block diagram shown with 570,572 and output buffer circuit 620,62A. The output port (output port 2) 572 outputs 8-bit data, and the output port 570 outputs a 1-bit strobe signal (INT signal).
[0049]
The display control CPU 101 operates in accordance with a program stored in the control data ROM 102. When an INT signal is input from the main board 31 via the noise filter 107 and the input buffer circuit 105B, display control is performed via the input buffer circuit 105A. Receive commands. As the input buffer circuits 105A and 105B, for example, general-purpose ICs 74HC540 and 74HC14 can be used. When the display control CPU 101 does not have an I / O port, an I / O port is provided between the input buffer circuits 105A and 105B and the display control CPU 101.
[0050]
Then, the display control CPU 101 performs display control of the screen displayed on the LCD 82 in accordance with the received display control command. Specifically, a command corresponding to the display control command is given to the VDP 103. The VDP 103 reads out necessary data from the character ROM 86. The VDP 103 generates image data to be displayed on the LCD 82 according to the input data, and outputs R, G, B signals and a synchronization signal to the LCD 82.
[0051]
5 also shows a reset circuit 83 for resetting the VDP 103, an oscillation circuit 85 for supplying an operation clock to the VDP 103, and a character ROM 86 for storing frequently used image data. The frequently used image data stored in the character ROM 86 is, for example, a person, animal, or an image made up of characters, figures, symbols, or the like displayed on the LCD 82.
[0052]
The input buffer circuits 105A and 105B can pass signals only in the direction from the main board 31 toward the symbol control board 80. Therefore, there is no room for signals to be transmitted from the symbol control board 80 side to the main board 31 side. That is, the input buffer circuits 105A and 105B constitute irreversible information input means together with the input ports. Even if the tampering is added to the circuit in the symbol control board 80, the signal output by the tampering is not transmitted to the main board 31 side.
[0053]
The outputs of the output ports 570 and 572 may be output to the symbol control board 80 as they are, but by providing the output buffer circuits 620 and 62A capable of transmitting signals only in one direction, the main board 31 and the symbol control board 80 are provided. One-way signal transmission can be made more reliable. That is, the output buffer circuits 620 and 62A constitute irreversible information output means together with the output ports. The irreversible information output means reliably prevents an illegal signal from being input to the symbol control board 80 via the signal transmission line.
[0054]
In addition, for example, a three-terminal capacitor or a ferrite bead is used as the noise filter 107 that cuts off the high-frequency signal. However, even if noise is added to the display control command between the substrates due to the presence of the noise filter 107, the influence is removed. Is done. A noise filter may also be provided on the output side of the buffer circuits 620 and 62A of the main board 31.
[0055]
FIG. 6 is a block diagram showing signal transmission / reception portions in the main board 31 and the lamp control board 35. In this embodiment, the game effect LED 28a, the game effect lamps 28b and 28c provided on the outside of the game area 7, and the decoration lamp 25 provided on the game board are turned on / off, and the prize ball lamp 51 and the ball are out of play. A lamp control command indicating turning on / off of the lamp 52 is output from the main board 31 to the lamp control board 35. Further, a lamp control command indicating the number of lighting of the start memory display 18 and the gate passing memory display 41 is also output from the main board 31 to the lamp control board 35.
[0056]
As shown in FIG. 6, the lamp control command related to the lamp control is output from the output ports (output ports 0 and 3) 570 and 573 of the I / O port unit 57 in the basic circuit 53. The output port (output port 3) 573 outputs 8-bit data, and the output port 570 outputs a 1-bit INT signal. In the lamp control board 35, a control command from the main board 31 is input to the lamp control CPU 351 via the input buffer circuits 355A and 355B. When the lamp control CPU 351 does not include an I / O port, an I / O port is provided between the input buffer circuits 355A and 355B and the lamp control CPU 351.
[0057]
In the lamp control board 35, the lamp control CPU 351 performs the game effect LED 28 a and the game effect lamp according to the turn-on / off pattern of the game effect LED 28 a, the game effect lamps 28 b and 28 c and the decoration lamp 25 defined according to each control command. 28b, 28c, and the decoration lamp 25 are turned on / off signals. The on / off signal is output to the game effect LED 28a, the game effect lamps 28b and 28c, and the decoration lamp 25. The on / off pattern is stored in the built-in ROM or external ROM of the lamp control CPU 351.
[0058]
In the main board 31, the CPU 56 outputs a control command for instructing the lighting of the prize ball lamp 51 when there is an unpaid prize ball remaining in the stored contents of the RAM 55, and the above-mentioned payout ball passage 186 a, When the ball break switches 187a and 187b (see FIG. 3) installed upstream of 186b no longer detect a game ball, a control command is output to instruct the ball break lamp 52 to be lit. In the lamp control board 35, each control command is input to the lamp control CPU 351 via the input buffer circuits 355A and 355B. The lamp control CPU 351 turns on / off the prize ball lamp 51 and the ball-out lamp 52 in accordance with these control commands. The on / off pattern is stored in the built-in ROM or external ROM of the lamp control CPU 351.
[0059]
Further, the lamp control CPU 351 outputs a light on / off signal to the start memory display 18 and the gate passage memory display 41 in accordance with the control command.
[0060]
As the input buffer circuits 355A and 355B, for example, 74HC540 and 74HC14 which are general-purpose CMOS-ICs are used. The input buffer circuits 355A and 355B can pass signals only in the direction from the main board 31 toward the lamp control board 35. Therefore, there is no room for signals to be transmitted from the lamp control board 35 side to the main board 31 side. Even if unauthorized modification is added to the circuit in the lamp control board 35, the signal output by the unauthorized modification is not transmitted to the main board 31 side. Note that a noise filter may be provided on the input side of the input buffer circuits 355A and 355B.
[0061]
In the main board 31, buffer circuits 620 and 63A are provided outside the output ports 570 and 573. As the buffer circuits 620 and 63A, for example, general-purpose CMOS-ICs 74HC250 and 74HC14 are used. According to such a configuration, since a signal input from the outside to the inside of the main board 31 is blocked, a signal line that can give a signal from the lamp control board 70 to the main board 31 is further reliably eliminated. be able to. A noise filter may be provided on the output side of the buffer circuits 620 and 63A.
[0062]
FIG. 7 is a block diagram illustrating a configuration example of the signal transmission part of the voice control command and the sound control board 70 on the main board 31. In this embodiment, a voice control command for instructing voice output from the speaker 27 provided outside the game area 7 is output from the main board 31 to the sound control board 70 as the game progresses.
[0063]
As shown in FIG. 7, the voice control command is output from the output ports (output ports 0 and 4) 570 and 574 of the I / O port unit 57 in the basic circuit 53. The output port (output port 4) 574 outputs 8-bit data, and the output port 570 outputs a 1-bit INT signal. In the sound control board 70, each signal from the main board 31 is input to the sound control CPU 701 via the input buffer circuits 705A and 705B. When the audio control CPU 701 does not have an I / O port, an I / O port is provided between the input buffer circuits 705A and 705B and the audio control CPU 701.
[0064]
Then, for example, a voice synthesis circuit 702 using a digital signal processor generates voice and sound effects according to instructions from the voice control CPU 701 and outputs them to the volume switching circuit 703. The volume switching circuit 703 sets the output level of the audio control CPU 701 to a level corresponding to the set volume and outputs the level to the volume amplification circuit 704. The volume amplifier circuit 704 outputs the amplified audio signal to the speaker 27.
[0065]
As the input buffer circuits 705A and 705B, for example, 74HC540 and 74HC14, which are general-purpose CMOS-ICs, are used. The input buffer circuits 705A and 705B can pass signals only in the direction from the main board 31 toward the sound control board 70. Therefore, there is no room for signals to be transmitted from the sound control board 70 side to the main board 31 side. Therefore, even if unauthorized modification is added to the circuit in the sound control board 70, a signal output by the unauthorized modification is not transmitted to the main board 31 side. A noise filter may be provided on the input side of the input buffer circuits 705A and 705B.
[0066]
In the main board 31, buffer circuits 620 and 67A are provided outside the output ports 570 and 574. As the buffer circuits 620 and 67A, for example, general-purpose CMOS-ICs 74HC250 and 74HC14 are used. According to such a configuration, since a signal input from the outside to the inside of the main board 31 is blocked, a signal line that can give a signal to the main board 31 from the sound control board 70 is further reliably eliminated. be able to. A noise filter may be provided on the output side of the buffer circuits 620 and 67A.
[0067]
FIG. 8 is a block diagram showing components related to payout, such as components of the payout control board 37 and the ball payout device 97. As shown in FIG. 8, the detection signal from the full switch 48 is input to the I / O port 57 of the main board 31 via the relay board 71. The full tank switch 48 is a switch for detecting a full tank of the surplus ball tray 4. The detection signal from the ball break switch 187 (187a, 187b) is also input to the I / O port 57 of the main board 31 through the relay board 72 and the relay board 71.
[0068]
The CPU 56 of the main board 31 issues a payout prohibition when the detection signal from the ball break switch 187 indicates a ball shortage state or when the detection signal from the full tank switch 48 indicates a full tank state. Send a control command. When a payout control command for instructing payout is received, the payout control CPU 371 of the payout control board 37 stops the ball payout process.
[0069]
Further, a detection signal from the prize ball count switch 301 </ b> A is also input to the I / O port 57 of the main board 31 via the relay board 72 and the relay board 71. The prize ball count switch 301A is provided in a payout mechanism portion of the ball payout device 97, and detects a prize ball payout ball actually paid out.
[0070]
When there is a winning, a payout control command indicating the number of winning balls is input to the payout control board 37 from the output ports (ports 0, 1) 570, 571 of the main board 31. The output port (output port 1) 571 outputs 8-bit data, and the output port 570 outputs a 1-bit strobe signal (INT signal). A payout control command indicating the number of winning balls is input to the I / O port 372a via the input buffer circuit 373A. The INT signal is input to the interrupt terminal of the payout control CPU 371 via the input buffer circuit 373B. The payout control CPU 371 inputs a payout control command via the I / O port 372a, and drives the ball payout device 97 in accordance with the payout control command to perform prize ball payout.
In this embodiment, the payout control CPU 371 is a one-chip microcomputer and incorporates at least a RAM.
[0071]
In the main board 31, buffer circuits 620 and 68A are provided outside the output ports 570 and 571. As the buffer circuits 620 and 68A, for example, general-purpose CMOS-ICs 74HC250 and 74HC14 are used. According to such a configuration, since a signal input from the outside to the inside of the main board 31 is blocked, it is possible to more reliably eliminate a signal line from which a signal may be given from the payout control board 37 to the main board 31. be able to. A noise filter may be provided on the output side of the buffer circuits 620 and 68A.
[0072]
The payout control CPU 371 outputs a ball lending number signal indicating the number of lending balls to the terminal board 160 and a buzzer driving signal to the buzzer board 75 via the output port 372g. A buzzer is mounted on the buzzer substrate 75. Further, an error signal is output to the error display LED 374 via the output port 372e.
[0073]
Furthermore, detection signals from the prize ball count switch 301A and the ball lending count switch 301B are input to the input port 372b of the payout control board 37 via the relay board 72. The ball lending count switch 301B is provided in a payout mechanism portion of the ball payout device 97, and detects a lending ball actually paid out. A drive signal from the payout control board 37 to the payout motor 289 is transmitted to the payout motor 289 in the payout mechanism portion of the ball payout device 97 via the output port 372c and the relay board 72.
[0074]
The card unit 50 is equipped with a card unit control microcomputer. Further, the card unit 50 is provided with a fraction display switch 152, a connecting table direction indicator 153, a card insertion display lamp 154, and a card insertion slot 155 (see FIG. 1). The balance display board 74 is connected with a frequency display LED, a ball lending switch, and a return switch provided in the vicinity of the hitting ball supply tray 3.
[0075]
A ball lending switch signal and a return switch signal are given from the balance display board 74 to the card unit 50 via the payout control board 37 in accordance with the player's operation. Further, a card balance display signal indicating a prepaid card balance and a ball lending display signal are given to the balance display board 74 from the card unit 50 via the payout control board 37. Between the card unit 50 and the payout control board 37, a connection signal (VL signal), a unit operation signal (BRDY signal), a ball lending request signal (BRQ signal), a ball lending completion signal (EXS signal) and a pachinko machine operation signal ( PRDY signal) is exchanged via the I / O port 372f.
[0076]
When the power of the pachinko gaming machine 1 is turned on, the payout control CPU 371 of the payout control board 37 outputs a PRDY signal to the card unit 50. The card unit control microcomputer outputs a VL signal. The payout control CPU 371 determines the connected / unconnected state based on the input state of the VL signal. When a card is received in the card unit 50, the ball lending switch is operated and a ball lending switch signal is input, the card unit control microcomputer outputs a BRDY signal to the payout control board 37. When a predetermined delay time elapses from this point, the card unit control microcomputer outputs a BRQ signal to the payout control board 37.
[0077]
Then, the payout control CPU 371 of the payout control board 37 raises the EXS signal to the card unit 50, and when detecting the fall of the BRQ signal from the card unit 50, drives the payout motor 289 to draw a predetermined number of rental balls. Pay to the player. At this time, the sorting solenoid 310 is in a driving state. That is, the ball distribution member 311 is directed to the ball lending side. When the payout is completed, the payout control CPU 371 causes the EXS signal to the card unit 50 to fall. Thereafter, if the BRDY signal from the card unit 50 is not on, prize ball payout control is executed.
[0078]
As described above, all signals from the card unit 50 are input to the payout control board 37. Accordingly, with respect to the ball lending control, no signal is input from the card unit 50 to the main board 31, and there is no room for an illegal signal input from the card unit 50 side to the basic circuit 53 of the main board 31.
[0079]
In this embodiment, the case where the card unit 50 is installed adjacent to the gaming machine as a separate body from the gaming machine is taken as an example, but the card unit 50 may be integrated with the gaming machine. . Further, the present invention can be applied even when the gaming machine is lent out according to the amount of coins inserted according to the amount of coins.
[0080]
FIG. 9 is a block diagram illustrating a configuration example of the power supply substrate 910. The power supply board 910 is installed independently of the electric part control boards such as the main board 31, the symbol control board 80, the sound control board 70, the lamp control board 35, and the payout control board 37, and each electric part control board in the gaming machine and Generates voltage used by mechanical components. In this example, AC24V, VSL (DC + 30V), DC + 21V, DC + 12V, and DC + 5V are generated. A capacitor 916 serving as a backup power supply is charged from a line of power supply for driving DC + 5V, that is, an IC or the like on each substrate. Note that VSL is generated by rectifying and boosting AC24V with a rectifier element in the rectifier circuit 912. VSL is a solenoid driving power source.
[0081]
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 has one or a plurality of converter ICs 922 (only one is shown in FIG. 9), generates + 21V, + 12V, and + 5V based on VSL and outputs the generated voltages to the connector 915. A relatively large capacitor 923 is connected to the input side of the converter IC 922. Accordingly, when the power supply to the gaming machine from the outside is stopped, the DC voltage such as + 30V, + 12V, + 5V, etc., decreases relatively slowly. As a result, the capacitor 923 serves as an auxiliary drive power source described later. 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.
[0082]
However, each connector reaching each electric component control board may be provided on the power supply board 910 to supply each voltage from the power supply board 910 to each board without going through the relay board. FIG. 9 shows one connector 915 as a representative, but the connector is provided for each electrical component control board.
[0083]
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 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 main board 31 and the payout control board 37.
[0084]
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.
[0085]
Further, a power supply monitoring IC 902 is mounted on the power supply board 910. The power supply monitoring IC 902 detects the occurrence of power interruption by introducing the VSL voltage and monitoring the VSL voltage. Specifically, when the VSL voltage becomes equal to or lower than a predetermined value (+22 V in this example), a power-off signal is output as a power-off occurs. The power supply voltage to be monitored is preferably higher than the power supply voltage (+5 V in this example) of the circuit element mounted on each electric component control board. In this example, VSL, which is a voltage immediately after being converted from AC to DC, is used. A power-off signal from the power monitoring IC 902 is supplied to the main board 31, the payout control board 37, and the like.
[0086]
The predetermined value for the power monitoring IC 902 to detect the power-off is lower than the normal voltage, but is a voltage that allows the CPU on each electrical component control board to operate for a while. Further, the power monitoring IC 902 is configured to monitor a voltage that is higher than a voltage for driving a circuit element such as a CPU (+5 V in this example) and immediately after being converted from AC to DC. Therefore, the monitoring range can be expanded for the voltage required by the CPU. Therefore, more precise monitoring can be performed. Furthermore, when VSL (+ 30V) is used as the monitoring voltage, the voltage supplied to the various switches of the gaming machine is + 12V, so that it can be expected to prevent erroneous switch-on detection at the time of instantaneous power interruption. That is, when the voltage of the + 30V power supply is monitored, it is possible to detect a decrease in the level before + 12V created after the creation of + 30V starts to drop.
[0087]
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.
[0088]
Further, since the power monitoring IC 902 is mounted on the power supply board 910 that is separate from the electrical component control board, a power-off signal can be supplied from the power monitoring circuit to the plurality of electrical component control boards. Even if there are any number of electrical component control boards that require a power-off signal, it is only necessary to provide one power supply monitoring means. Therefore, even if each electrical component control means on each electrical component control board performs return control described later. The cost of the gaming machine does not increase so much.
[0089]
In the configuration shown in FIG. 9, the detection output (power cut-off signal) of the power monitoring IC 902 is supplied to the respective electric component control boards (for example, the main board 31 and the payout control board 37) via the buffer circuits 918 and 919. However, for example, a configuration may be adopted in which one detection output is transmitted to the relay board and the same signal is distributed from the relay board to each electric component control board. Further, a buffer circuit corresponding to the number of substrates that require a power-off signal may be provided.
[0090]
FIG. 10 is a block diagram showing an example of the internal configuration of the CPU 56 in detail. The CPU core 501 has a register and performs arithmetic processing according to a program. The clock generator 502 divides a clock signal supplied from the outside and supplies it to each built-in device. The clock generator 502 can output a 1/2 frequency-divided clock as a system clock from the CLKO terminal, and can output a clock signal obtained by dividing the system clock from the IEO / SCLK0 terminal via the output control circuit 511. is there.
[0091]
The reset interrupt controller 503 notifies the CPU core 501 of a system reset signal input to the XRST terminal, a non-maskable interrupt request signal input to the XNMI terminal, and the like. The external bus interface 504 is a bus driver that performs direction control and drive control of an address bus, a data bus, and various control signals. The built-in RAM 55 can be backed up and a program is stored in the built-in ROM 54. The address decoder 505 can output four chip select signals XCS0 to 3 via the output control circuit 511. Note that the terminals of the chip select signals XCS0-3 are also used as input / output ports PB0-PB3.
[0092]
The memory control circuit 510 generates signals for controlling the built-in ROM 54 and the built-in RAM 55. In addition, the memory control circuit 510 has a built-in register that sets permission to access the built-in RAM 55.
[0093]
The PIO 506 is an 8-bit built-in input port PA0 to PA7. When the built-in PIO is not used, for example, the unused port is set to the input mode, and the port is connected to the ground level. The CTC 508 includes two external clock / timer trigger inputs CLK / TRG 2 and 3 and two timer outputs ZC / TO 0 and 1.
[0094]
Next, the operation of the gaming machine will be described.
FIG. 11 is a flowchart showing main processing executed by the CPU 56 on the main board 31. When the power to the gaming machine is turned on, in the main process, the CPU 56 first performs necessary initial settings.
[0095]
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).
[0096]
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.
[0097]
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 mode 0. Therefore, when setting to interrupt mode 1 or interrupt mode 2, it is necessary to perform a process for setting to interrupt mode 1 or interrupt mode 2 in the initial setting process.
[0098]
Interrupt mode 1: In this mode, when an interrupt is accepted, the mode always jumps to address 0038 (h).
[0099]
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.
[0100]
Therefore, when the interrupt mode 2 is set, it becomes possible to easily process an interrupt request from each built-in device, and it is possible to install an interrupt process at an arbitrary position in the program. . Furthermore, unlike interrupt mode 1, it is also easy to prepare each interrupt process for each interrupt generation factor. As described above, in this embodiment, the CPU 56 is set to the interrupt mode 2 in step S2 of the initial setting process.
[0101]
Then, it is confirmed whether or not data protection processing for the backup RAM area (for example, power supply stop processing such as addition of parity data) is performed when the power is turned off (step S7). In this embodiment, when an unexpected power failure occurs, processing for protecting data in the backup RAM area is performed. When such protection processing is performed, it is assumed that there is a backup. When it is confirmed that there is no backup, the CPU 56 executes an initialization process.
[0102]
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. 12, if “55 (H)” is set in the backup flag area, it means that there is a backup (ON state), and a value other than “55 (H)” is set. Means no backup (off state).
[0103]
After confirming that there is a backup, the CPU 56 performs a data check of the backup RAM area (parity check in this example). 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 at the time of power-on not at the time of power failure recovery is executed.
[0104]
If the check result is normal (step S8), 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 S9). 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.
[0105]
In the game state restoration process in step S9, for example, the CPU 56 restores the values stored in the backup RAM to the respective registers. Based on the data stored in the backup RAM, the gaming state at the time of power-off is confirmed and returned. That is, based on the data stored in the backup RAM, the progress of the special symbol process when the power is turned off is restored. As a result, if the design is changing when the power is turned off, the internal state becomes that state.If the power is turned off, the internal state becomes that state. If it is, the internal state becomes that state. Then, according to the restored state, if necessary, the solenoid 16 and the solenoid 21 are driven via the solenoid circuit 59 to restore the open / closed state of the start winning opening 14 and the open / close plate 20. 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, It is sent to the symbol control board 80, the lamp control board 35 and the sound control board 70.
[0106]
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 symbol control board 80, the lamp control board 35, and the sound control board 70. A control command for returning the state to the state at the time of power-off (control command for causing a control state at the time of power-off) is sent out. Such control commands are generally one or more control commands that were last sent prior to a power failure. For example, if the variable display device 9 is changing the symbol when the power is turned off, the stop symbol in the variation is restored from the stored contents of the backup RAM, and the control command or symbol indicating the stop symbol (variable display result) is displayed. A control command indicating confirmation is sent to the display control means.
[0107]
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 (lamp control board 35, payout control board 37, sound control board 70, symbol control board 80) is executed (step S13). The process of initializing the sub board is a process of sending an initial setting command, for example. As the initial setting command, for example, there is a payout enable state designation command (in the payout ready state) or a payout stop state designation command (in the payout impossible state) output to the payout control board 37. As a state where the payout is impossible, for example, there is a state where the ball break switch 187 or the full switch 48 is turned on. That is, the CPU 56 sends out a payout stop state designation command to the payout control board 37 if the ball break switch 187 or the full tank switch 48 is on, and sends out a payout possible state designation command otherwise. Note that the payout enable state designation command (in the payout enable state) or the payout stop state designation command (in the payout disable state) may be executed in the gaming state recovery process in step S9.
[0108]
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).
[0109]
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 the timer interrupt occurs, as shown in FIG. 13, the CPU 56 sets a timer interrupt flag indicating that a timer interrupt has occurred, for example (step S12).
[0110]
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.
[0111]
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 gate sensor 12, the start port sensor 17, the count sensor 23, and the winning port switches 19a, 19b, 24a, and 24b via the switch circuit 58, Is determined (switching process: step S21).
[0112]
Next, various abnormality diagnosis processes are performed by the self-diagnosis function provided in the pachinko gaming machine 1, and an alarm is issued if necessary according to the result (error process: step S22).
[0113]
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).
[0114]
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 pachinko gaming machine 1 in a predetermined order according to the gaming state. The value of the special symbol process flag is updated during each process according to the gaming state. Further, normal symbol process processing is performed (step S26). In the normal symbol process, the corresponding process is selected and executed in accordance with the normal symbol process flag for controlling the normal symbol display 10 by the 7-segment LED in a predetermined order. The value of the normal symbol process flag is updated during each process according to the gaming state.
[0115]
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).
[0116]
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).
[0117]
Further, the CPU 56 issues a drive command to the solenoid circuit 59 when a predetermined condition is established (step S30). The solenoid circuit 59 drives the solenoids 16 and 21 in accordance with the drive command, thereby bringing the variable winning ball device 15 or the opening / closing plate 20 into an open state or a closed state.
[0118]
Then, the CPU 56 executes a prize ball process for setting the number of prize balls based on the detection outputs of the switches 17, 23, 19a, 19b, 24a, 24b for detecting a winning at each winning mouth (step S31). ). Specifically, a payout control command is output to the payout control board 37 in response to winning detection. The payout control CPU 371 mounted on the payout control board 37 drives the ball payout device 97 according to the payout control command.
[0119]
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.
[0120]
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.
[0121]
As described above, in this embodiment, the interrupt mode 2 is set in the initial setting process for the CPU 56 incorporating the CTC and PIO. Therefore, a periodic timer interrupt process using the built-in CTC can be easily realized. Also, the timer interrupt process can be set at an arbitrary position on the program. In addition, switch detection processing using the built-in PIO can be easily realized by interrupt processing. As a result, it is possible to obtain effects such as a simplified program configuration and a reduced number of program development steps.
[0122]
Note that after the setting of CTC and PIO (step S5) is completed, an internal register for determining the frequency of the clock signal output from the IEO / SCLK0 terminal may be set. At that time, the frequency of the clock signal is set to a frequency corresponding to 2 ms which is the start cycle of the game control process. When such setting is performed, a clock signal having a frequency corresponding to the activation period of the game control process is externally output from the CPU 56 from the IEO / SCLK0 terminal. Then, a signal corresponding to the activation cycle of the game control process can be observed outside the CPU 56. Therefore, it becomes easy to simulate a game control process by the CPU 56 and to test an operation state of the CPU 56 outside the gaming machine using such a signal.
[0123]
FIG. 14A is an explanatory diagram showing an example of a command form of a control command sent from the main board 31 to the electric component control means of another electric component control board. In this embodiment, the control command has a 2-byte configuration, the first byte represents MODE (command classification), and the second byte represents EXT (command type). The first bit (bit 7) of the MODE data is always “1”, and the first bit (bit 7) of the EXT data is always “0”. As described above, the control command serving as a control command to the electrical component control means is composed of a plurality of data, and can be distinguished from each other by the first bit.
[0124]
FIG. 14B is a timing chart showing the relationship between the 8-bit control signals CD0 to CD7 and the INT signal constituting the control command for each electric component control means. As shown in FIG. 14B, when a predetermined period elapses after MODE or EXT data is output to the output port, the CPU 56 sets the INT signal (capture signal) indicating a data output to a high level. To level. Further, when a predetermined period elapses, the INT signal is set to a low level. Further, when there is data to be transmitted next, that is, after the MODE data is transmitted, the second byte of data is transmitted to the output port after a predetermined period. In this way, the capture signal is output for each of the MODE and EXT data.
[0125]
In this embodiment, when a control command is to be output from the game control means to each electric component control board, the head address of the command transmission table set in the ROM 55 is set. FIG. 14C is an explanatory diagram illustrating 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 command data 1 of the second byte, MODE data of the first byte of the control command is set. Then, in the command data 2 of the third byte, the EXT data of the second byte of the control command is set.
[0126]
Although the EXT data itself may be set in the area of the command data 2, the command data 2 may be set with data for designating the address of the table storing the EXT data. . For example, if bit 7 (work area reference bit) of command data 2 is 0, it indicates that EXT data itself is set in command data 2. Such EXT data is data in which bit 7 is 0. For example, if the work area reference bit is 1, it indicates that the contents of the command extension data table are used as EXT data.
[0127]
FIG. 14D is an explanatory diagram showing a configuration example of INT data. Bit 0 in the INT data indicates whether or not a payout control command should be sent to the payout control board 37. If bit 0 is “1”, it indicates that a payout control command should be sent. Bit 1 in the INT data indicates whether or not a display control command should be sent to the symbol output control board 80. If bit 1 is “1”, it indicates that a display control command should be sent. Bits 2 and 3 of the INT data are bits indicating whether a lamp control command and a voice control command should be sent, respectively. The command transmission table is prepared for each control command of the payout control command, the display control command, the lamp control command, and the voice control command.
[0128]
FIG. 15 is an explanatory diagram showing an address map of the ROM 54 in this embodiment. In the example shown in FIG. 15, a program area is allocated from address 0000 (H). Further, a control data area is assigned to addresses 1000 (H) to 1FFF (H).
[0129]
In the control data area, the frontmost part includes a built-in device register setting table and a CTC / PIO setting table. In the built-in device register setting table, addresses of built-in device registers for determining the operation state of built-in devices such as CTC and PIO and values for initializing the built-in devices are sequentially stored. That is, in step S4 of the main process, the CPU 56 sets the address of the built-in device register setting table in a predetermined general-purpose register (HL register or the like), and the address data (the address of the built-in device register and the address indicated by the contents of the HL register or the like). The values for initializing the internal device are sequentially loaded, and the values for initializing the internal device are set in the internal device register.
[0130]
As described above, when setting the internal device register, the data set in the control data area of the ROM is used. Therefore, in the program in step S4, the address of the internal device register is directly set or the data is stored in the internal device register. Do not use instructions to set Therefore, the program becomes easy to see and the program maintenance becomes easy. Even if it is necessary to change the value for initializing the built-in device register, it is not necessary to change the program, and only the data in the control data area needs to be changed.
[0131]
Regarding the setting of CTC and PIO in step S5 of the main process, the control register address of each CTC channel and the command register address of each channel (each port) of PIO and the setting values for each register are sequentially stored in the CTC and PIO setting table. Has been. Accordingly, in step S5, the CPU 56 sets the address of the CTC / PIO setting table in a predetermined general-purpose register (HL register, etc.), and the data of the address indicated by the contents of the HL register (the control register and PIO of each channel of the CTC). The command register address of each channel and the setting value for each register are sequentially loaded, and the setting value is set in each register.
[0132]
In the control data area, a work area and work area setting table are stored next to the data for initial setting of the built-in device register (data used in steps S4 and S5). The work area and work area setting table is a table for setting the work area used by the CPU 56 during execution of the game control, the initial value of the work area (RAM), and the setting values of the work area in each state during the game. Yes, it stores work area and work area addresses and values to be set. For example, the CPU 56 sets the address of the work area and work area setting table in a predetermined general-purpose register (HL register, etc.) in step S11 of the main process, and the data (work area, work address) indicated by the contents of the HL register, etc. (Initial value of area) is sequentially loaded, and initial values are set in the work area and work area. In addition, in step S25 (special symbol process), the values set in the work area and work area when a change in the gaming state (for example, a change from the symbol changing state to the big prize opening state) occurs. Is used to set the value of the work area.
[0133]
Next, in the control data area, a command extended data address table is stored. The command extension data address table is used when the CPU 56 uses the data in the command extension data table described above when sending a command to the electrical component control means. Next to the command extended data address table, a command transmission table is stored.
[0134]
Further, a jackpot symbol setting table is stored in the control data area. In the jackpot symbol setting table, a symbol number corresponding to the symbol when the jackpot is set is set.
[0135]
Next, in the control data area, a variation pattern distribution table offset value table for determining which data of the variation pattern distribution table in which data for specifying the variation pattern is set is used. The variation pattern distribution table offset value table is referred to in step S25 (special symbol process) of the main process. The variation pattern distribution table is stored next to the variation pattern distribution table offset value table. Next, a special symbol variation number setting table in which an initial value of the special symbol variation number counter is set is stored.
[0136]
In the control data area, a special symbol determination value table at a low probability is stored. In the special symbol determination value table at the time of low probability, a jackpot determination value is set when the state of the gaming machine is in a low probability state (a state in which the probability of being a jackpot is not increased). In step S25 (special symbol process) of the main process, the CPU 56 determines that the jackpot is determined when the jackpot determination random number matches the jackpot determination value. In addition, a special symbol determination value table at a high probability is stored next to the special symbol determination value table at a low probability. In the special symbol determination value table at the time of low probability, a jackpot determination value is set when the state of the gaming machine is a low probability state (a state in which the probability of being a jackpot is increased).
[0137]
As described above, the data for initial setting of the register of the built-in device and the data for initial setting of the work area used when the CPU 56 executes the control program are stored in the front part of the control data area. ing. Even if the model of the gaming machine is different, if the microcomputer to be used is the same, the method of initial setting of the register of the built-in device is generally the same, so it is commonly used among multiple models. The data to be stored is arranged at the front in the storage area for storing the control data.
[0138]
A work area and work area setting table are also stored in the front part of the control data area. In other words, the data used for initial setting of the work area and work area used when the microcomputer executes the control program is likely to be used in common among a plurality of models. Be placed.
[0139]
In the control data area, the special symbol determination value table at the low probability and the special symbol determination value table at the high probability are stored in the rear part. Therefore, it is easy to change the jackpot determination value when changing the model. If it is set in the rear part of the control data area, it is easy to increase or decrease the number of data, that is, the number of jackpot judgment values, and even if the judgment value itself is changed, the rear part can cause a change error. This is because the nature is considered to be small. The special symbol determination value table at the high probability is set after the special symbol determination value table at the low probability. Therefore, when diverting the control program and control data to a model that does not perform control with high probability (such as a cash machine that does not use a prepaid card), it is only necessary to delete the special symbol determination value table at the time of high probability.
[0140]
Data related to the display result of identification information such as data for creating control commands to be output to the electrical component control means and data of the fluctuation pattern sorting table, compared to data related to the built-in device register, work area, work area setting table, Since there is a relatively high possibility of being changed in accordance with the model change, it is set in the middle part in the control data area.
[0141]
The empty area is provided at the rearmost part in the control data area. Therefore, it is possible to easily cope with an increase or decrease in the number of data in the control data area.
[0142]
Note that the data used in common between the gaming machine (so-called CR machine) that lends game media using a prepaid card and the gaming machine (so-called cash machine) that does not intervene with a prepaid card for lending gaming media is in the control data area. It is preferable that it is arrange | positioned at the front part. The data that is not common between them is preferably arranged in the rear part of the control data area. With such a configuration, it is possible to create control data for a cash machine simply by deleting the rear data of the control data for the CR machine.
[0143]
FIGS. 16 to 17 are flowcharts showing processing examples of power supply stop processing executed in response to the power-off signal from the power supply board 910. The power-off signal is connected to the non-maskable interrupt terminal of the CPU 56, and the power supply stop process is started by the non-maskable interrupt.
[0144]
In the power supply stop process, the CPU 56 saves the AF register (accumulator and flag register) in a predetermined backup RAM area (step S51). Further, the interrupt flag is copied to the parity flag (step S52). The parity flag is formed in the backup RAM area. Further, the BC register, DE register, HL register, IX register, and stack pointer are saved in the backup RAM area (steps S54 to S58). 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.
[0145]
Next, the backup specified value (“55 (H)” in this example) is stored in the backup flag. The backup flag is formed in the backup RAM area. Next, parity data is created (steps S60 to S67). That is, first, the clear data (00) is set in the checksum data area (step S60), and the checksum calculation start address is set in the pointer (step S61). Also, the number of checksum calculations is set (step S62).
[0146]
Then, the exclusive OR of the contents of the checksum data area and the contents of the RAM area pointed to by the pointer is calculated (step S63). The calculation result is stored in the checksum data area (step S64), the pointer value is incremented by 1 (step S65), and the value of the checksum calculation count is decremented by 1 (step S66). The processes in steps S63 to S66 are repeated until the value of the checksum calculation count becomes 0 (step S67).
[0147]
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 S68). Then, the inverted data is stored in the checksum buffer (step S69). This data becomes parity data to be checked when the power is turned on. Next, an access prohibition value is set in the RAM access register (step S70). Thereafter, the built-in RAM 55 cannot be accessed.
[0148]
Further, the CPU 56 sets the clear data (00) in an appropriate register (step S71), and sets the number of processes (in this example, “7”) in another register (step S72). Further, the address of the output port 0 is set in the IO pointer (step S73). Another register is used as the IO pointer. The processing number “7” corresponds to the number of I / O ports.
[0149]
Then, clear data is set at the address pointed to by the IO pointer (step S74), the value of the IO pointer is incremented by 1 (step S75), and the value of the processing number is subtracted by 1 (step S77). The processes in steps S74 to S76 are repeated until the value of the number of processes becomes zero. As a result, clear data is set for all output ports, and all output ports are turned off.
[0150]
Therefore, after the processing for saving the game state (in this example, checksum generation and RAM access prevention) is executed, each output port is immediately turned off. In this embodiment, the RAM area in which data used in the game control process is stored is all backed up.
[0151]
FIG. 18 is an explanatory diagram showing an address map of the RAM area in this embodiment. As shown in FIG. 18, the head of the RAM area is assigned to the backup flag area. A checksum buffer area is allocated at the end.
[0152]
FIG. 19 is an explanatory diagram for explaining an example of a checksum creation method. However, in the example shown in FIG. 19, the data size of the backup RAM area is 3 bytes for simplicity. In the power supply stop process based on the power supply voltage drop, as shown in FIG. 19, initial data (00 (H) in this example) is set as the checksum data. Next, an exclusive OR of “00 (H)” and “F0 (H)” is taken, and an exclusive OR of “16 (H)” is taken with the result. Further, an exclusive OR of the result and “DF (H)” is taken. Then, a value (“C6 (H)” in this example) obtained by logically inverting the result (“39 (H)” in this example) is set in the backup parity data area. In FIG. 19, for ease of explanation, a state in which data “39 (H)” before logic inversion is stored in the checksum buffer is shown. Note that 00 (H) as the initial data is a value corresponding to the clear data for the checksum data set in step S60. In practice, exclusive OR with 00 (H) is performed before and after the operation. Since the value does not change, it is not necessary to perform an exclusive OR operation with 00 (H). That is, the initial data shown in FIG. 19 is described only for consistency with the flowchart shown in FIG.
[0153]
In this embodiment, the checksum buffer is stored at the last address of the backup RAM area (variable data storage means). Therefore, for example, when checking whether there is an error in the program of the checksum creation method, it can be easily confirmed. This is because it is sufficient to confirm whether the value of the final address in the RAM area is correct. In this embodiment, the checksum calculation start address is an address where a backup flag is set, and the checksum calculation final address is the last address in the prize ball control flag buffer (see FIG. 18). . Therefore, if the last address in the backup RAM area is used as the checksum buffer area after the prize ball control flag buffer, there is no waste in the RAM area.
[0154]
In consideration of ease of confirmation and prevention of waste of the RAM area, the first address of the backup RAM area may be used as the checksum buffer area.
[0155]
Further, at the start of power supply to the gaming machine, it is determined whether or not the parity check is OK (step S8 in FIG. 11). In this determination, parity data is created (steps S60 to S67) in the power supply stop process. ) Is performed, and if the processing result, that is, the operation result matches the contents of the checksum buffer, it is determined that the parity check is OK.
[0156]
In the above embodiment, the last or first address of the backup RAM area is used as the checksum buffer area. However, the checksum buffer area may be allocated to an intermediate area of the backup RAM area. FIG. 20 is an explanatory diagram showing an example of a memory map of such a RAM area. Note that the position of the checksum buffer area shown in FIG. 20 is merely an example, and if it is in the middle of the backup RAM area, another position may be used as the position of the checksum buffer area.
[0157]
FIGS. 21 to 22 are flowcharts showing power supply stop processing when a checksum buffer area is allocated to an intermediate area of the backup RAM area. In this case, in the step S62A, the first half of the number of checksum calculations is set. In the example shown in FIG. 20, the first half of the number of checksum calculations corresponds to the area size from the address of the backup flag to the last address in the special symbol related flag counter buffer.
[0158]
When the calculation for the first half of the checksum calculation count is completed, the checksum calculation count (second half) is set (step S82). In the example shown in FIG. 20, the checksum calculation start address (second half) is the head address of the normal symbol-related flag counter buffer, and the checksum calculation count (second half) is the first address in the normal symbol-related flag counter buffer. This corresponds to the area size from the address to the last address in the winning ball control flag buffer.
[0159]
Then, the exclusive OR of the contents of the checksum data area and the contents of the RAM area pointed to by the pointer is calculated (step S83). The calculation result is stored in the checksum data area (step S84), the pointer value is incremented by 1 (step S85), and the value of the checksum calculation count is decremented by 1 (step S86). The processes in steps S83 to S86 are repeated until the value of the checksum calculation count becomes 0 (step S87).
[0160]
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 S68). Then, the inverted data is stored in the checksum buffer (step S69). Next, an access prohibition value is set in the RAM access register (step S70). Then, the same processing as that shown in FIG. 17 is performed.
[0161]
FIG. 23 is a flowchart showing determination of whether or not the parity check is OK when the checksum buffer area is allocated to the middle area of the backup RAM area, that is, the parity check processing at the start of power supply (step S8 in FIG. 11). It is.
[0162]
In the parity check process, the CPU 56 first logically inverts the contents of the checksum buffer (step S89), sets the initial data (00) in the checksum data area (step S90), and uses the checksum calculation start address as a pointer. Set (step S91). Also, the number of checksum calculations is set (step S92). In the example shown in FIG. 20, the checksum calculation start address is a backup flag address, and the checksum calculation count is a number corresponding to the area size from the address of the backup RAM area to the last address. That is, although the checksum buffer is allocated in the middle of the backup RAM area, the checksum calculation is executed from the beginning to the end of the backup RAM area.
[0163]
Then, the exclusive OR of the contents of the checksum data area and the contents of the RAM area pointed to by the pointer is calculated (step S93). The calculation result is stored in the checksum data area (step S94), the pointer value is incremented by 1 (step S95), and the value of the checksum calculation count is decremented by 1 (step S96). The processes in steps S93 to S96 are repeated until the value of the checksum calculation count becomes 0 (step S97).
[0164]
When the value of the checksum calculation count becomes 0, the CPU 56 checks whether or not the calculation result is 00 (H) (step S99). If it is 00 (H), the parity check is OK (step S100), and the contents of the checksum buffer are cleared to 0 (step S102). If it is not 00 (H), the parity check is NG (step S101), and the contents of the checksum buffer are cleared to 0 (step S102). Therefore, the contents of the checksum buffer are cleared to 00 (H) when a parity check is performed. At the start of power supply to the gaming machine, the contents of the checksum buffer are cleared to 00 (H) in the RAM clear process (step S11 shown in FIG. 11).
[0165]
As described above, when the power supply to the gaming machine is stopped, the CPU 56 sequentially calculates the exclusive OR of the initial data and each data in the backup RAM area to create a checksum and store it in the backup RAM area. When the power supply to the machine is started, the exclusive OR of each data stored in the backup RAM area is sequentially calculated, and if the calculation result is 00 (H), the final storage contents stored in the backup RAM area ( It is determined that the stored content regarding the final control state immediately before the power supply stop stored when the game is interrupted due to the power supply stop is normal. Based on the contents of the backup RAM area, control is performed to restore the control state to the state before the power supply is stopped. In this case, there is no need to compare the operation result with the contents of the checksum buffer, and it is only necessary to compare the result with 00 (H), so that there is an advantage that the parity check process is simplified.
[0166]
FIG. 24 is an explanatory diagram for explaining a checksum creation method. However, in the example shown in FIG. 24, the size of the data in the backup RAM area is 3 bytes for simplicity. In the power supply stop process based on the power supply voltage drop, as shown in FIG. 24A, initial data (clear data as the initial data of the checksum data) is set as the checksum data. Next, an exclusive OR of “00 (H)” and “F0 (H)” is taken, and an exclusive OR of “16 (H)” is taken with the result. Further, an exclusive OR of the result and “DF (H)” is taken. Then, a value (“C6 (H)” in this example) obtained by logically inverting the result (“39 (H)” in this example) is set in the backup parity data area in the backup RAM area. FIG. 24 shows a state where the data “39 (H)” before logic inversion is stored in the checksum buffer for easy explanation.
[0167]
In the parity check process at the start of power supply, initial data is set as checksum data as shown in FIG. Next, an exclusive OR of “00 (H)” and “F0 (H)” is taken, and an exclusive OR of “39 (H)” is obtained, and “16 (H)” is further obtained. XOR is taken. Then, an exclusive OR of the result and “DF (H)” is taken. Since the calculation result is 00 (H), it is determined that the parity check is OK.
[0168]
Here, as shown in FIGS. 21 and 22, the checksum buffer is excluded from the exclusive OR operation target, and the exclusive OR operation is sequentially performed on the backup RAM area before the checksum buffer. Next, the exclusive OR operation is sequentially performed on the backup RAM area after the checksum buffer. At the start of the checksum creation process, the contents of the checksum buffer in the backup RAM area are 00 (H). If this is the case, the exclusive OR operation is not affected. Therefore, even if the exclusive OR operation is sequentially performed from the first address to the last address in the backup RAM area, the same result can be obtained. In the above embodiment, the contents of the checksum buffer in the backup RAM area are 00 (H) when the RAM is cleared at the start of power supply and when the parity check is performed.
[0169]
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.
[0170]
FIG. 25 is a block diagram illustrating a configuration example around the payout control CPU 371. As shown in FIG. 25, the power-off signal from the power supply monitoring circuit (power supply monitoring means) of the power supply board 910 is connected to the non-maskable interrupt terminal (XNMI terminal) of the payout control CPU 371 via the buffer circuit 960. Yes. Therefore, the payout control CPU 371 can confirm the occurrence of power interruption by the non-maskable interrupt process.
[0171]
The INT signal from the main board 31 is connected to the CLK / TRG2 terminal of the payout control CPU 371. When a clock signal is input to the CLK / TRG2 terminal, the value of the timer counter register CLK / TRG2 built in the payout control CPU 371 is down-counted. When the register value becomes 0, an interrupt occurs. Therefore, if the initial value of the timer counter register CLK / TRG2 is set to “1”, an interrupt is generated according to the input of the INT signal.
[0172]
Although the system reset circuit 975 is also mounted on the payout control board 37, in this embodiment, the reset IC 976 in the system reset circuit 975 outputs an output to the external capacitor for a predetermined time determined by the capacity when the power is turned on. The output is set to a low level and the output is set to a high level when a predetermined time has elapsed. Further, the reset IC 976 monitors the power supply voltage of VSL, and when the voltage value becomes a predetermined value (for example, +9 V) or less, the reset IC 976 sets the output to a low level. Therefore, when the power is turned off, the payout control CPU 371 is system reset by the signal from the reset IC 976 becoming low level.
[0173]
The predetermined value for the reset IC 976 to detect power-off is lower than the normal voltage, but is a voltage that allows the payout control CPU 371 to operate for a while. Further, since the reset IC 976 is configured to monitor a voltage higher than the voltage required by the payout control CPU 371 (in this example, +5 V), the monitoring range for the voltage required by the payout control CPU 371 is set. Can be spread. Therefore, more precise monitoring can be performed.
[0174]
While power is not supplied from the + 5V power supply, at least a part of the built-in RAM of the payout control CPU 371 is backed up by connecting the backup power supplied from the power supply board to the backup terminal, and the power to the gaming machine is cut off. The contents are saved. When the +5 V power supply is restored, a reset signal is issued from the system reset circuit 975, so that the payout control CPU 371 returns to a normal operation state. At that time, since necessary data is backed up, it is possible to return to the payout control state at the time of the power failure when recovering from the power failure.
[0175]
FIG. 26 is a flowchart showing main processing executed by the payout control CPU 371. In the main process, the payout control CPU 371 first performs necessary initial settings. That is, the payout control CPU 371 first sets the interruption prohibition (step S701). Next, the interrupt mode is set to interrupt mode 2 (step S702), and a stack pointer designation address is set to the stack pointer (step S703). The payout control CPU 371 initializes the built-in device register (step S704), initializes the CTC and PIO (step S705), and then sets the RAM in an accessible state (step S706).
[0176]
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).
[0177]
The interrupt vector set for the channel set to the timer mode (channel 3 in this embodiment) corresponds to the start address of the timer interrupt process. Specifically, the start address of the timer interrupt process is specified by the value set in the I register and the interrupt vector. In the timer interrupt process, a timer interrupt flag is set. When it is detected in the main process that the timer interrupt flag is set, a payout control process is executed. That is, in the timer interrupt process, settings for executing a payout control process, which is an example of an electrical component control process, are made.
[0178]
Further, another channel (channel 2 in this embodiment) of the built-in CTC is used as an interrupt generation channel for receiving a payout control command from the game control means, and this channel is used in the counter mode. Used in. 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 the counter mode, register setting for permitting interrupt generation, and setting an interrupt vector. The register is set.
[0179]
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.
[0180]
In this embodiment, the interruption mode 2 is also set in the payout control CPU 371. Therefore, an interrupt process based on counting up the built-in CTC can be used. Further, it is possible to set an interrupt processing start address corresponding to the interrupt vector transmitted by the CTC.
[0181]
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.
[0182]
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.
[0183]
Then, the payout control CPU 371 checks whether backup data exists in the payout control backup RAM area (step S707). That is, for example, similarly to the processing of the CPU 56 of the main board 31, whether or not backup data exists is confirmed by whether or not the backup flag that is set when the power is turned off is set. If the backup flag is set, it is determined that there is backup data.
[0184]
After confirming that there is a backup, the payout control CPU 371 performs a data check (parity check in this example) in the backup RAM area. 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 at the time of power-on not at the time of power failure recovery is executed.
[0185]
If the check result is normal (step S708), the payout control CPU 371 performs a payout state recovery process for returning the internal state to the state when the power is turned off (step S709). Then, it returns to the address indicated by the PC (program counter) stored in the backup RAM area.
[0186]
In the payout state restoration process, at least data indicating the number of unpaid winning balls and data indicating the number of unpaid lending balls are restored. That is, data indicating the number of unpaid prize balls and the number of unpaid lent balls is formed in the backup RAM. Then, when the data indicating the number of unpaid prize balls and the data indicating the number of unpaid balls are restored, in the ball lending control process (step S756) and the prize ball control process (step S757) described later, The payout control is executed based on the data. Therefore, even if the power interruption occurs during the winning ball payout process or during the ball lending process, the unpaid award ball or ball lending process is continued when the power is restored, and there is no disadvantage to the player.
[0187]
In the initialization process, the payout control CPU 371 first performs a RAM clear process (step S711). Then, the CTC register provided in the payout control CPU 371 is set so that a timer interrupt is periodically generated every 2 ms (step S712). 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 S701 of the initial setting process, the interruption is permitted before the initialization process is finished (step S713).
[0188]
In this embodiment, the built-in CTC of the payout control CPU 371 is set to repeatedly generate a timer interrupt. In this embodiment, the repetition period is set to 2 ms. When a timer interrupt occurs, the payout control CPU 371 sets a timer interrupt flag indicating that a timer interrupt has occurred, for example.
[0189]
The payout control CPU 371 executes a payout control process after step S751 when detecting that the timer interrupt flag is set in step S724. With the above control, in this embodiment, the payout control process is started every 2 ms. In this embodiment, only the flag is set in the timer interrupt process, and the payout control process is executed in the main process, but the payout control process may be executed in the timer interrupt process.
[0190]
In the payout control process, the payout control CPU 371 first determines whether or not the prize ball count switch 301A and the ball lending count switch 301B input to the input port 372b via the relay board 72 are turned on (switch process: Step S751).
[0191]
Next, the payout control CPU 371 performs processing such as checking the signal input state from a sensor (for example, a motor position sensor that detects the rotation speed of the payout motor 289) and determining the state of the sensor (input determination processing). : Step S752). The payout control CPU 371 further analyzes the received payout control command and executes a process according to the analysis result (command analysis execution process: step S753).
[0192]
Next, the payout control CPU 371 sets the payout stop state if the payout stop instruction command is received from the main board 31, and cancels the payout stop state if the payout start instruction command is received (step S754). Further, a prepaid card unit control process is performed (step S755).
[0193]
Next, the payout control CPU 371 performs control for paying out the rental balls in response to the ball rental request (step S756). At this time, the payout control CPU 371 sets the ball sorting member 311 to the ball lending side by the sorting solenoid 310.
[0194]
Further, the payout control CPU 371 performs prize ball control processing for paying out the number of prize balls stored in the total number memory formed in the backup RAM (step S757). At this time, the payout control CPU 371 sets the ball sorting member 311 to the prize ball side by the sorting solenoid 310. Then, a drive signal is output to the payout motor 289 in the payout mechanism portion of the ball payout device 97 via the output port 372c and the relay board 72, and a payout motor control process for rotating the payout motor 289 by a predetermined number of rotations is performed. (Step S758).
[0195]
Next, error detection processing is performed, and predetermined display is performed on the error display LED 374 according to the result (error processing: step S759).
[0196]
27 to 28 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 power supply board 910.
[0197]
In the power supply stop process, the payout control CPU 371 saves the AF register in a predetermined backup RAM area (step S801). Further, the interrupt flag is copied to the parity flag (step S802). 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 S804 to S808).
[0198]
Next, a backup specified value (for example, “55H”) is stored in the backup flag. The backup flag is formed in the backup RAM area. Next, processing similar to that of the CPU 56 of the main board 31 is performed to create parity data and store it in the backup RAM area (steps S810 to S819). Then, an access prohibition value is set in the RAM access register (step S820). Thereafter, the built-in RAM cannot be accessed.
[0199]
Further, the payout control CPU 371 sets clear data (00) in an appropriate register (step S821), and sets the number of processes (in this example, “3”) in another register (step S822). In addition, the smallest address (in this example, “00H”) among the addresses of the output ports is set in the IO pointer (step S823). Another register is used as the IO pointer. The processing number “3” is a number corresponding to the number of output ports.
[0200]
Then, clear data is set at the address pointed to by the IO pointer (step S824), the value of the IO pointer is incremented by 1 (step S825), and the value of the processing number is subtracted by 1 (step S827). The processes in steps S824 to S826 are repeated until the value of the number of processes becomes zero. As a result, clear data is set for all output ports, and all output ports are turned off.
[0201]
Further, at the start of power supply to the gaming machine, it is determined whether or not the parity check is OK (step S708 in FIG. 26). In this determination, the parity data in the power supply stop process is created (steps S810 to S817). ) Is performed, and if the processing result, that is, the operation result matches the contents of the checksum buffer, it is determined that the parity check is OK.
[0202]
Also in the payout control means including the payout control CPU 371, if the checksum buffer is stored at the first or last address of the backup RAM area (variable data storage means), for example, the checksum creation method program has an error. When confirming whether there is any, it can be easily confirmed. In addition, there is no waste in the RAM area.
[0203]
As for the payout control means, as in the case of the game control means including the CPU 56, a checksum buffer area may be allocated to an intermediate area of the backup RAM area. In such a configuration, in the parity check process at the start of power supply (step S708 in FIG. 26), the checksum calculation is executed from the beginning to the end of the backup RAM area. When the checksum buffer area is allocated in the middle of the backup RAM area, it is not necessary to compare the calculation result with the contents of the checksum buffer. There is an advantage that the parity check process is simplified.
[0204]
As described above, in each of the above embodiments, data that is commonly used among a plurality of models can be arranged in the front part in the control data area and can be commonly used among a plurality of models. Since data with low likelihood is placed at the rear of the control data area, it is easy to change data that is unlikely to be used in common, and data that is commonly used among multiple models Can reduce the need to make changes when diverting.
[0205]
Further, when power supply to the gaming machine is started, it is determined whether or not the final stored content stored in the fluctuation data storage means is normal based on the check data stored in the fluctuation data storage means. If it is configured to perform control to restore the control state to the state before the power supply is stopped based on the last stored content, the check data is stored in the first or last address of the fluctuation data storage means. Since the data is stored, when checking whether there is an error in the program of the check data creation method, it can be easily confirmed. In addition, there is no waste in the RAM area.
[0206]
Furthermore, when the check data is stored at an intermediate address of the fluctuation data storage means, it is not necessary to compare the calculation result with the stored checksum data, but simply with 00 (H). Therefore, there is an advantage that the parity check process is simplified.
[0207]
Next, the operation of the effect control means will be described. First, the operation of the lamp control means as the light emitter control means including the lamp control CPU 351 mounted on the lamp control board 35 as an example of the effect control means will be described.
[0208]
FIG. 29 is an explanatory diagram showing an example of the contents of a lamp control command sent from the main board 31 to the lamp control board 35. The lamp control command has a 2-byte configuration of MODE and EXT as shown in FIG. In the example shown in FIG. 29, commands 8000 (H) to 8022 (H) and 8100 (H) to 8122 (H) designate a lamp / LED display control pattern corresponding to the variation pattern of the special symbol in the variable display unit 9. This is the lamp control command to be performed. For example, commands 8000 (H) to 8022 (H) are commands corresponding to a variation pattern without variation time reduction, and commands 8100 (H) to 8122 (H) are commands corresponding to a variation pattern with variation time reduction. is there. The command A0XX (X = any value of 4 bits) is a lamp control command for instructing a lamp / LED display control pattern when the variable symbol special display is stopped. The command BXXX is a lamp control command for instructing a lamp / LED display control pattern from the start of the jackpot game to the end of the jackpot game. The command C000 is a lamp control command for instructing a lamp / LED display control pattern during a customer waiting demonstration.
[0209]
The commands 8XXX, AXXX, BXXX and CXXX are ramp control commands sent from the game control means in accordance with the game progress status. When the lamp control means receives the above-described lamp control command from the game control means of the main board 31, the lamp / LED display state is changed in accordance with the contents shown in FIG.
[0210]
The command E0XX is a lamp control command indicating the number of lighting of the start memory display 18. For example, the lamp control means turns on the number of displays designated by “XX” in the start memory display 18. The command E1XX is a lamp control command indicating the number of lighting of the gate passing memory display 41. For example, the lamp control means turns on the number of displays designated by “XX” in the gate passing storage display 41. That is, these commands are commands for instructing the control of the light emitters provided for informing the information of the reserved number. In addition, the command regarding the number of lighting of the start memory | storage display 18 and the gate passage memory | storage display 41 may be comprised so that increase / decrease in the number of lighting may be shown.
[0211]
The commands E200 and E201 are lamp control commands related to the display state of the winning ball lamp 51, and the commands E300 and E301 are lamp control commands related to the display state of the ball-out lamp 52. When the lamp control means receives the lamp control command of “E201” from the game control means of the main board 31, the lamp control means sets the display state of the prize ball lamp 51 as a predetermined display state when there is a prize ball remaining, and “E200” When the lamp control command is received, the display state of the prize ball lamp 51 is set to a display state determined in advance as a case where no prize ball remains.
[0212]
When the lamp control command “E300” is received from the game control means of the main board 31, the display state of the ball break lamp 52 is changed to the display state with a ball, and when the lamp control command “E301” is received, the ball break lamp 52 is displayed. The display state of is the display state when the ball is out. That is, commands E200 and E201 are commands indicating control of a light-emitting body provided for notifying a player or the like that there is a non-prize ball, and commands E300 and E301 are supply balls. This is a command indicating that a light-emitting body provided for notifying a player or a game clerk that the game has expired is controlled.
[0213]
The command E400 is changed from a specific gaming state (high probability state or short-time state, high probability state in this example) to a normal state (low probability state or non-time-short state, low probability state in this example) when the gaming machine is turned on. This is a lamp control command for instructing a lamp / LED display control pattern at the time of transition. The command E401 is a lamp / LED display when a transition is made from a normal state (low probability state or non-time-short state, in this example low probability state) to a specific gaming state (high probability state or time-short state, in this example high probability state). This is a lamp control command for designating a control pattern.
[0214]
The command E402 is a lamp control command for instructing a lamp / LED display control pattern when an error occurring during the big hit game is canceled. The command E403 is a lamp control command for instructing a lamp / LED display control pattern when an error of the count switch 23 occurs. That is, these commands are commands for instructing to notify the gaming state by the light emitter.
[0215]
In this embodiment, when the lamp control means receives a command instructing to notify the gaming state, the lamp control means uses a part or all of the decoration lamp 25, the game effect LED 28a, and the game effect lamps 28b and 28c, Turn on / off control to notify the gaming state. The decorative lamp 25, the game effect LED 28a, and the game effect lamps 28b, 28c may each be composed of a plurality of light emitters. In this case, the decorative lamp 25, the game effect LED 28a, and the game effect lamp 28b, Notifying the gaming state using a part of 28c also means that, for example, a part of a plurality of light emitters constituting the decorative lamp 25 may be used.
[0216]
FIG. 30 is a flowchart showing main processing executed by the lamp control CPU 351. In the main process, the lamp control CPU 351 first executes an initialization process for initializing a register, a RAM including a work area, an output port, and the like (step S441). Next, it is confirmed whether or not a lamp control command has been received from the main board 31 (step S442: command confirmation processing). Further, a command execution process, such as a process of changing lamp data to be used, is performed according to the received lamp control command (step S443). The lamp control command from the main board 31 is taken in by an interrupt process activated in response to the input of the INT signal and stored in an input buffer formed in the RAM.
[0217]
Thereafter, in this embodiment, the lamp control CPU 351 proceeds to a loop process for monitoring a timer interrupt flag (step S444). Then, as shown in FIG. 31, when a timer interrupt occurs, the lamp control CPU 351 sets a timer interrupt flag (step S450). If the timer interrupt flag is set in the main processing, the lamp control CPU 351 clears the flag (step S445), and performs lamp process update processing and port output processing (steps S446 and S447).
[0218]
In this embodiment, the lighting pattern of the lamp / LED that is controlled to blink according to the progress of the game is controlled according to the lamp data stored in the ROM. The ramp data is prepared for each type of control pattern (a control command indicating the type of variation pattern designation shown in FIG. 29 and another control command related to other game effects sent from the game control means according to the game progress status). Has been. In each lamp data, data indicating that the lamp / LED is turned on or off, and data indicating a lighting or extinguishing period (process timer value) are set. That is, data indicating the lighting pattern of the light emitter is stored in the control data area.
[0219]
In the ramp process update process, the value of the timer corresponding to the process timer value is initially subtracted, and when the timer times out, the ramp data is updated according to the data set at the next address in the ramp data. A decision is made to turn off or turn on the LED, and a process timer value corresponding to the decision result is set in the timer. In addition, since the process timer value is set to the timer, it is when the lighting / extinguishing is switched, so in the port output processing, the data for turning on / off the lamp / LED is output to the corresponding output port. .
[0220]
In this embodiment, it is assumed that the timer interruption takes every 2 ms. That is, the ramp process update process and the port output process are started every 2 ms.
[0221]
FIG. 32 is an explanatory diagram showing an address map of a ROM mounted on the lamp control board 35. The ROM area includes a control data area and a control program area. In the control data area, an initialization data table is stored in the forefront. Similarly to the CPU 56 of the main board 31, the lamp control CPU 351 also initializes registers, RAM, output ports, and the like using initialization data stored in the control data area. The initialization data is likely to be used in common even if the models are different. That is, the control data used in common among a plurality of models among the control data is arranged in the front part in the storage area for storing the control data. In the control data area, control data that can be changed when the model is changed is stored in the rear part. That is, control data that is unlikely to be used in common among a plurality of models is arranged at the rear of the storage area for storing control data.
[0222]
Next, in the control data area, a memory display LED display table is stored. For example, data “1”, “2”, “3”, and “4” are set in the storage display LED display table. For example, when it is confirmed in the command execution process (step S443) in the main process that the start winning memory number lamp designation command has been received, the corresponding data in the memory display LED display table is referred to, and the start memory display 18 Turn on / off control. Specifically, for example, a predetermined flag corresponding to the number of lighting is set, and in the port output processing, referring to the flag, “1” is output to the output port for outputting a signal to the start memory display 18. "Or" 0 "is output.
[0223]
Next, a command upper byte table is stored. In the command upper byte table, an address of a program storing a process corresponding to the upper byte (MODE data) of the lamp control command and an address table corresponding to the MODE data are set. For example, in the command execution process (step S443), the contents of the command upper byte table are referenced according to the MODE data of the received lamp control command, and the corresponding process (program) is executed. In the processing, data in the lamp data selection table stored next to the command upper byte table in the control data area is specified in accordance with the address table and the lower byte (EXT data) of the received lamp control command. . Then, the lamp data indicated by the specified data is selected.
[0224]
For example, when the lamp control command received from the main board 31 is 8000 (variable lamp designation # 1), data (4 bytes) corresponding to 80 (H) in the command upper byte table is referred to. The upper 2 bytes of the data is an address storing a process when a lamp control command whose upper byte is 80 (H) is received. Then, as shown in FIG. 33, in the process, the data of the lamp data selection table indicated by the sum of the contents of the lower 2 bytes in the data of the command upper byte table and the EXT data of the received lamp control command is specified. Is done. Therefore, the lower 2 bytes in the command upper byte table referred to when the upper byte of the received lamp control command is 80 (H) corresponds to the head address of the lamp data selection table related to the variable lamp designation.
[0225]
As shown in FIG. 32, in the control program area, the main processing program is stored at the forefront, and then the initialization processing, command recognition processing, and command execution processing programs are stored. Next, a specific lamp / LED processing program is stored. The specific lamp / LED processing program is a program for executing processing when a lamp control command is received.
[0226]
Furthermore, in the control program area, lamp process update processing, port output processing, command reception interrupt processing, and timer interrupt processing are stored.
[0227]
In this embodiment, data indicating the lamp / LED lighting pattern is stored in the lamp data in the control data area. In the lamp process update process (step S446) in the main process, lighting / extinguishing of the lamp / LED is controlled with reference to the lamp data. Accordingly, when it is desired to change the lamp / LED lighting pattern, it is only necessary to change the lamp data, and it is not necessary to change the main processing program.
[0228]
The lamp control command of the main board 31 is processed by a process (program) corresponding to MODE data indicating the command classification. The start address of the process corresponding to the MODE data (process when the lamp control command is received) is stored in the command upper byte table. Therefore, even if the program for processing the lamp control command is changed for some reason and the start address changes, it is possible to change the start address simply by changing the contents of the command upper byte table. Can respond. Even when the processing program when the lamp control command is received is changed, it is not necessary to change the main processing, initialization processing, command recognition processing, and command execution processing programs. That is, it is not necessary to change the program arranged in the front part of the control program area. Therefore, the common program that can be used in common among a plurality of models is arranged in the front part in the storage area for storing the control program, and the non-common program is stored in the rear part in the storage area.
[0229]
Further, the lamp data to be used is specified by the address stored in the lamp data selection table. Accordingly, when it is desired to change the lighting pattern (pattern stored in the lamp data) according to the received lamp control command, it can be easily handled by changing the address set in the lamp data selection table. Also in this case, there is no need to change the program arranged in the front part of the control program area.
[0230]
FIG. 34 is an explanatory diagram showing an example of the contents of a voice control command sent from the main board 31 to the sound control board 70. The voice control command also has a 2-byte configuration of MODE and EXT. In the example shown in FIG. 34, the command 8XXX (X = any value of 4 bits) is a voice control command for designating a sound generation pattern in a special symbol variation period. The command BXXX (X = any value of 4 bits) is a voice control command for designating a sound generation pattern from the start of the jackpot game to the end of the jackpot game. Other commands are voice control commands that are not related to special symbol changes and jackpot games. When the sound control means (sound control means) mounted on the sound control board 70 receives the above-described voice control command from the game control means of the main board 31, the sound output state is changed according to the contents shown in FIG. To do.
[0231]
As shown in FIGS. 29 and 34, the lamp control command and the voice control command are all composed of a MODE portion and an EXT portion. That is, the voice control command and the lamp control command have the same form. The form of the symbol control command sent from the game control means of the main board 31 to the symbol control board 80 is also common to the form of the voice control command and the lamp control command.
[0232]
Since the form of each control command sent from the game control means to the effect control means (lamp control means, sound control means and display control means) is the same, each control command in the program executed by the CPU 56 of the game control means The creation part and the output part can be easily shared. As a result, the module relating to the transmission of the command of the control program executed by the game control means is simplified, the program maintenance becomes easy, and the program diversion to other models becomes easy.
[0233]
FIG. 35 is a flowchart showing main processing executed by the voice control CPU 701. In the main process, the voice control CPU 701 first executes an initialization process for initializing a register, a RAM including a work area, an output port, and the like (step S461). Next, it is confirmed whether or not a voice control command has been received from the main board 31 (step S462: command confirmation processing). Further, a command execution process that is a process such as changing the voice data to be used is performed according to the received voice control command (step S463). Note that the voice control command from the main board 31 is captured by an interrupt process activated in response to the input of the INT signal, and stored in an input buffer formed in the RAM.
[0234]
Thereafter, in this embodiment, the voice control CPU 701 proceeds to a loop process for monitoring a timer interrupt flag (step S464). Then, as shown in FIG. 36, when a timer interrupt occurs, the voice control CPU 701 sets a timer interrupt flag (step S470). If the timer interrupt flag is set in the main process, the voice control CPU 701 clears the flag (step S465) and performs voice process update processing and port output processing (steps S466 and S467).
[0235]
In this embodiment, the sound pattern output from the speaker 27 in accordance with the progress of the game is controlled according to the sound data stored in the ROM. Audio data is prepared for each type of control pattern (for each control command shown in FIG. 35).
[0236]
The voice synthesis circuit 702 is controlled by a transfer request signal (SIRQ), a serial clock signal (SICK), a serial data signal (SI), and a transfer end signal (SRDY). When the SIRQ becomes low level, the voice synthesis circuit 702 captures SI one bit at a time in synchronization with SICK, and when SRDY becomes low level, interprets data composed of each SI received as one voice reproduction data. To do.
[0237]
In each audio data, data corresponding to the serial data signal output to the audio synthesis circuit 702 and data indicating the duration (process timer value) of the audio generated according to the data are set. That is, the control data stores data indicating the output pattern from the sound generating means (the speaker 27 in this example).
[0238]
In the audio process update process, the value of the timer corresponding to the process timer value is initially subtracted, and when the timer times out, it is output according to the data set at the next address in the audio data It is determined to change to voice, and a process timer value corresponding to the determination result is set in the timer. Further, since the output voice is switched when the process timer value is set in the timer, in the port output process (step S467), via the output port for outputting data to the voice synthesis circuit 702, Data corresponding to the new output voice is output to the voice synthesis circuit 702.
[0239]
Specifically, in the port output process, the voice control CPU 701 turns on SIRQ (low level), and outputs data (voice command) read from the ROM (voice command data area) as SI in synchronization with SICK. When the output is completed, SRDY is set to a low level. When the voice synthesis circuit 702 receives data by SI, the voice synthesis circuit 702 generates voice corresponding to the received data.
[0240]
In this embodiment, it is assumed that the timer interruption takes every 2 ms. That is, the voice process update process and the port output process are started every 2 ms.
[0241]
FIG. 37 is an explanatory diagram showing an address map of the ROM mounted on the sound control board 70. The ROM area includes a control data area and a control program area. In the control data area, an initialization data table is stored in the forefront. Similarly to the CPU 56 and the lamp control CPU 351 of the main board 31, the voice control CPU 701 uses the initialization data stored in the control data area to initialize registers, RAM, output ports, and the like. I do. The initialization data is likely to be used in common even if the models are different. That is, the control data used in common among a plurality of models among the control data is arranged in the front part in the storage area for storing the control data. In the control data area, control data that can be changed when the model is changed is stored in the rear part. That is, control data that is unlikely to be used in common among a plurality of models is arranged at the rear of the storage area for storing control data.
[0242]
Next, in the control data area, a command upper byte table is stored. In the command upper byte table, an address of a program storing a process corresponding to the upper byte (MODE data) of the voice control command and an address table corresponding to the MODE data are set. For example, in the command execution process (step S463), the contents of the command upper byte table are referenced according to the MODE data of the received voice control command, and the corresponding process (program) is executed. In the processing, data in the voice data selection table stored next to the command upper byte table in the control data area is specified according to the address table and the lower byte (EXT data) of the received voice control command. . Then, the audio data indicated by the specified data is selected.
[0243]
For example, when the voice control command received from the main board 31 is 8000 (fluctuating middle tone designation # 1), data (4 bytes) corresponding to 80 (H) in the command upper byte table is referred to. The upper 2 bytes of the data are an address where a process when a voice control command whose upper byte is 80 (H) is received, that is, a voice address selection process is stored. Then, as shown in FIG. 38, in the processing, the data of the voice data selection table indicated by the sum of the contents of the lower two bytes in the data of the command upper byte table and the EXT data of the received voice control command is specified. Is done. Therefore, the lower two bytes in the command upper byte table referred to when the upper byte of the received voice control command is 80 (H) corresponds to the head address of the voice data selection table related to the changing middle tone designation. In this embodiment, the same voice address selection process is executed regardless of the value of the MODE data.
[0244]
As shown in FIG. 37, in the control program area, the main processing program is stored at the forefront, and then the initialization processing, command recognition processing, and command execution processing programs are stored. Next, a program for voice address selection processing is stored.
[0245]
Furthermore, in the control program area, voice process update processing, port output processing, command reception interrupt processing, and timer interrupt processing are stored.
[0246]
In this embodiment, data given to the voice synthesis circuit 702, that is, data indicating output voice is stored in the voice command data in the control data area. Then, in the voice process update process (step S466) in the main process, the voice data is referred to and the output voice is controlled with reference to the voice command data. Therefore, when it is desired to change the output voice pattern, it is only necessary to change the voice data or voice command data, and there is no need to change the main processing program.
[0247]
The voice control command of the main board 31 is processed by a process (program) corresponding to MODE data indicating the command classification. The start address of the process (voice address selection process) according to the MODE data is stored in the command upper byte table. Therefore, even if the program for processing when a voice control command is received is changed for some reason and the start address changes, it is possible to change the start address simply by changing the contents of the command upper byte table. Can respond. Even when the voice address selection processing program is changed or a program is added, it is not necessary to change the main processing, initialization processing, command recognition processing, and command execution processing programs. That is, it is not necessary to change the program arranged in the front part of the control program area. Therefore, the common program that can be used in common among a plurality of models is arranged in the front part in the storage area for storing the control program, and the non-common program is stored in the rear part in the storage area.
[0248]
Furthermore, the audio data to be used is specified by the address stored in the audio data selection table. Therefore, when it is desired to change the output voice pattern (pattern stored in the voice data) according to the received voice control command, it can be easily handled by changing the address set in the voice data selection table. . Also in this case, there is no need to change the program arranged in the front part of the control program area.
[0249]
FIG. 39 is a block diagram showing another configuration example of the main board 31 and the electrical component control board. In this example, effect control equipped with effect control means for controlling a light emitter, sound generation means (speaker 27 in this example), and symbol display means (in this example, variable display unit 9) provided in the gaming machine. A substrate 400 is provided. The effect control means receives the effect control command from the game control means of the main board 31, and based on the received command, the decoration lamp 25, the game effect lamps / LEDs 28a, 28b, 28c, the prize ball lamp 51, and the ball break lamp 52 In addition, display control of the start memory display 18 and the gate passage storage display 41 is performed, and sound generation control from the speaker 27 is performed. Further, display control is performed on the variable display unit 9 that variably displays a special symbol as identification information and the variable display unit 10 that variably displays a normal symbol as identification information. In FIG. 39, the portion related to the launch control is omitted.
[0250]
FIG. 40 is a block diagram showing a circuit configuration example of the effect control board 400 together with a command transmission part of the main board 31. As shown in FIG. 40, 8-bit data CD0 to CD7 (effect control signals constituting an effect control command) are output from the output port output port 572 of the main board 31, and a 1-bit strobe signal is output from the output port 570. (INT signal) is output. Note that the method of sending the effect control command may be the same as that of the lamp control command and the voice control command shown in FIG. 14, for example.
[0251]
The effect control CPU 401 operates in accordance with a program stored in the control data ROM 102. When an INT signal is input from the main board 31 via the noise filter 107 and the input buffer circuit 105B, the effect control is performed via the input buffer circuit 105A. Receive commands. As the input buffer circuits 105A and 105B, for example, general-purpose ICs 74HC540 and 74HC14 can be used. If the effect control CPU 401 does not have an I / O port, an I / O port is provided between the input buffer circuits 105A and 105B and the effect control CPU 401.
[0252]
Then, the effect control CPU 401 performs display control of the LCD 82 as the variable display unit and the normal symbol display 10 in accordance with the received effect control command. In order to perform display control of the variable display unit, specifically, a command according to the effect control command is given to the VDP 103. The VDP 103 reads out necessary data from the character ROM 86. The VDP 103 generates image data to be displayed on the LCD 82 according to the input data, and outputs R, G, B signals and a synchronization signal to the LCD 82.
[0253]
The effect control CPU 401 performs the same operations as those of the lamp control CPU 351 and the voice control CPU 701 already described, and the lamp / LED (light emitter) and speaker (sound generating means) 27 provided in the gaming machine. Take control. Moreover, display control of the variable display part 9 and the normal symbol display 10 is performed according to the production control command.
[0254]
In the configuration in which the symbol control board 80, the lamp control board 35 and the sound control board 70 are provided independently, the form of the lamp control command from the game control means of the main board 31 and the form of the voice control command are shared. It had been. In addition, the form of the display control command can be made common with the form of the lamp control command and the form of the voice control command. Therefore, it is easy to perform display control of the variable display unit, lamp control, and sound control by one kind of effect control command.
[0255]
In this embodiment, the effect control means mounted on the effect control board 400 performs display control, lamp control and sound control of the variable display unit, but a symbol control board and an effect control board are provided, Display control of the variable display unit 9 and the normal symbol display 10 is realized by display control means mounted on the symbol control board, and lamp control and sound control are executed by the effect control means mounted on the effect control board. You may comprise as follows. In this case, the game control means of the main board 31 may send a display control command for the display control means and an effect control command for the effect control means, but the display control means that has received the display control command from the game control means. However, an effect control command may be created from the received display control command and sent to the effect control board.
[0256]
As described above, in each of the above embodiments, the microcomputer mounted on the lamp control board 35, the sound control means 70, and the effect control board 400 uses the control program and the control data in the ROM to produce the effect parts. When the control is performed, the control data includes data indicating the control pattern of the effect part (lighting pattern of the light emitter and output sound pattern), and the common program in the control program executed by the microcomputer is the game control means. Since it is configured to control the production parts with reference to the data indicating the control pattern according to the command from the main without changing the main process, command recognition process, command execution process, etc. as a common program The control program can be diverted to other models. That is, when diverting to other models, if necessary, only the control pattern and non-common program stored in the control data area need be changed.
[0257]
The pachinko gaming machine 1 according to each of the above embodiments has a predetermined game value given to the player when the special symbol stop symbol variably displayed on the variable display unit 9 based on the start winning combination is a combination of the predetermined symbols. The first type pachinko gaming machine that can be granted, the second type pachinko that can be given a predetermined game value to the player if there is a winning in a predetermined area of the electric game that is released based on the start winning When a stop symbol of a symbol variably displayed based on a gaming machine, start winning prize or starting gate is a combination of a predetermined symbol, a prize is awarded to a predetermined electric accessory that is released, and a special one of a plurality of winning areas is special. The present invention can be applied even to a third-class pachinko gaming machine in which a predetermined right is generated or continues when there is a winning in the winning area.
[0258]
Further, the present invention is not limited to pachinko gaming machines but can be applied to slot machines or the like when a microcomputer or an electrical component control board for controlling electrical components or the like that perform some operation is provided. it can.
[0259]
【The invention's effect】
Book In the invention, the microcomputer in the effect control means controls the effect parts using the control program and the control data that does not change the contents due to the progress of the game, and the control data contains the effect parts. Data indicating the control pattern is included, and the common program in the control program executed by the microcomputer refers to the data indicating the control pattern according to the command from the game control means from the control data area, and for the effect according to the referenced data Control data that controls parts and is used in common among multiple models is placed at the front of the storage area for storing control data and is unlikely to be used in common among multiple models. The control data is arranged at the rear of the storage area for storing the control data. Since, there is an effect that can be easier to divert to other models, such as the control program. That is, when it is necessary to change the control contents, non-common data in the rear part of the storage area for storing the control data may be changed.
[0262]
Book In the invention, the data for initial setting of the work area used when the microcomputer executes the control program is arranged in the front part in the storage area for storing the control data. By disposing the control data for initial setting of the work area having a small size at the front, it is possible to facilitate the diversion of the entire control data.
[0263]
Book In the invention, since the data for initializing the output port is arranged in the front part in the storage area for storing the control data, the control data for initial setting of the output port that is less likely to be changed upon diversion Can be easily used in the entire control data.
[0265]
Book In the invention, since the data for indicating the lighting pattern of the light emitter is included in the control data, the common program can be used if the content of the data indicating the lighting pattern is changed even if the lighting pattern changes when diverted to other models. It is not necessary to change.
[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 substrate 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 block diagram showing a circuit configuration of a game control board (main board).
FIG. 5 is a block diagram showing a circuit configuration in a symbol control board.
FIG. 6 is a block diagram showing a circuit configuration in a lamp control board.
FIG. 7 is a block diagram showing a circuit configuration in a sound control board.
FIG. 8 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. 9 is a block diagram illustrating a configuration example of a power supply board.
FIG. 10 is a block diagram showing the internal configuration of a CPU in more detail.
FIG. 11 is a flowchart showing an example of a main process executed by a CPU on a main board.
FIG. 12 is an explanatory diagram showing an example of a method for determining whether or not to execute a game state restoration process.
FIG. 13 is a flowchart illustrating an example of a 2 ms timer interrupt process.
FIG. 14 is an explanatory diagram for describing control of a control command sent from the main board to the electric component control means of another electric component control board.
FIG. 15 is an explanatory diagram showing a ROM address map;
FIG. 16 is a flowchart showing a processing example of power supply stop processing in the game control means.
FIG. 17 is a flowchart showing a processing example of power supply stop processing in the game control means.
FIG. 18 is an explanatory diagram showing an address map of a RAM.
FIG. 19 is an explanatory diagram for explaining an example of a checksum creation method;
FIG. 20 is an explanatory diagram showing another example of a RAM address map;
FIG. 21 is a flowchart showing another example of processing when power supply is stopped in the game control means.
FIG. 22 is a flowchart showing another example of processing when power supply is stopped in the game control means.
FIG. 23 is a flowchart showing a parity check process.
FIG. 24 is an explanatory diagram for explaining another example of a checksum creation method;
FIG. 25 is a block diagram illustrating a configuration example around a payout control CPU;
FIG. 26 is a flowchart showing main processing executed by the CPU in the payout control board.
FIG. 27 is a flowchart showing a power supply stop process in the payout control means.
FIG. 28 is a flowchart showing a power supply stop process in the payout control means.
FIG. 29 is an explanatory diagram showing an example of the content of a lamp control command.
FIG. 30 is a flowchart showing main processing executed by a lamp control CPU;
FIG. 31 is a flowchart showing a timer interrupt process executed by a lamp control CPU.
FIG. 32 is an explanatory diagram showing an address map of a ROM mounted on the lamp control board.
FIG. 33 is an explanatory diagram showing a relationship among a command upper byte table, a lamp command selection table, and lamp data in the lamp control means.
FIG. 34 is an explanatory diagram showing an example of the contents of a voice control command.
FIG. 35 is a flowchart illustrating main processing executed by the voice control CPU.
FIG. 36 is a flowchart showing a timer interrupt process executed by the voice control CPU.
FIG. 37 is an explanatory diagram showing an address map of a ROM mounted on the sound control board.
FIG. 38 is an explanatory diagram showing a relationship among a command upper byte table, a lamp command selection table, and lamp data in the voice control means.
FIG. 39 is a block diagram illustrating a configuration example of a main board 31 and an effect control board.
FIG. 40 is a block diagram showing a circuit configuration example of an effect control board together with a command transmission part of the main board.
[Explanation of symbols]
31 Game control board (main board)
35 Lamp control board
37 Dispensing control board
56 CPU
70 sound control board
80 design control board
101 CPU for display control
351 CPU for lamp control
371 CPU for payout control
400 Production control board
401 CPU for effect control
701 Sound control CPU

Claims (4)

遊技者が所定の遊技を行い、入賞に応じて景品遊技媒体を払い出す遊技機であって、
遊技の進行を制御する遊技制御用マイクロコンピュータを搭載した遊技制御基板と、
前記遊技制御用マイクロコンピュータから出力される演出制御コマンドにもとづいて演出用部品を制御する演出制御用マイクロコンピュータを搭載した演出制御基板とを備え、
前記遊技制御用マイクロコンピュータは、
電力供給が開始されたときに、割込禁止状態に設定した後、前記遊技制御用マイクロコンピュータの内部タイマが前記遊技制御用マイクロコンピュータに対して定期的にタイマ割込を発生するように初期設定して割込許可状態に設定し、
割込許可状態に設定した後、所定の乱数を更新する更新処理を繰り返し実行するループ処理を実行し、
前記タイマ割込が発生したことにもとづいて、前記ループ処理から遊技の進行を制御する遊技制御処理に移行し、
電力供給が停止するときに遊技機に対する電力供給が停止しても前記遊技制御処理において用いられるデータがバックアップ電源により保持されるRAMに割込フラグの状態を示すデータを保持させ、
電力供給が開始されたときに前記RAM保持されている前記遊技制御処理において用いられるデータにもとづいて遊技状態を復帰させる遊技状態復帰制御を実行することが可能であり、
電力供給が開始されたときに実行される前記遊技状態復帰制御において前記RAMに保持されていた割込フラグの状態を示すデータにもとづいて前記タイマ割込を許可する状態または前記タイマ割込を禁止する状態に設定し、
前記遊技制御用マイクロコンピュータは、前記演出制御コマンドを出力するときに、該演出制御コマンドのコマンドデータを出力した後にコマンドデータの取込を指示する取込信号として、所定時間に亘って矩形波のレベルを変化させ、該所定時間が経過した後でも、所定の期間中は前記コマンドデータの出力を維持し、
前記演出制御用マイクロコンピュータは、
前記取込信号に応じて前記演出制御コマンドを入力し、
前記演出制御コマンドに対応して、ROMの制御用データ格納領域に格納された制御用データのうち前記演出用部品の制御パターンを示すデータを選択し、
選択した前記制御パターンを示すデータに従って前記演出用部品を制御する処理を実行し、
前記制御用データ格納領域において、前記制御用データのうち、複数の機種間で共通に用いられ、初期化処理を行うときに用いられる初期化データは、前記制御パターンを示すデータよりも前部に配置され、
電力供給が開始したときに前記初期化データを用いて前記初期化処理を実行する
ことを特徴とする遊技機。
A gaming machine in which a player plays a predetermined game and pays out a prize game medium in accordance with a prize,
A game control board equipped with a game control microcomputer for controlling the progress of the game;
An effect control board equipped with an effect control microcomputer that controls effect parts based on an effect control command output from the game control microcomputer,
The game control microcomputer is:
Initial setting so that the internal timer of the game control microcomputer periodically generates a timer interrupt to the game control microcomputer after setting the interrupt disabled state when power supply is started To set the interrupt enabled state,
After setting the interrupt permission state, execute a loop process that repeatedly executes an update process to update a predetermined random number,
Based on the occurrence of the timer interrupt, the process shifts from the loop process to a game control process for controlling the progress of the game,
Even if the power supply to the gaming machine is stopped when the power supply is stopped, the data used in the game control process is held by the backup power source to hold the data indicating the state of the interrupt flag,
It is possible to execute the game status return control for returning the game state based on the data used in the game control process, which is held in the RAM when power supply is started,
In the gaming state return control executed when power supply is started, the timer interrupt is permitted or the timer interrupt is prohibited based on the data indicating the state of the interrupt flag held in the RAM. Set the status to
When the game control microcomputer outputs the effect control command, the game control microcomputer outputs a rectangular wave for a predetermined time as a capture signal for instructing command data capture after outputting the command data of the effect control command. The level is changed and the output of the command data is maintained during a predetermined period even after the predetermined time has elapsed.
The production control microcomputer is:
Input the production control command according to the capture signal,
In response to the effect control command, select data indicating the control pattern of the effect parts from the control data stored in the control data storage area of the ROM,
Performing a process of controlling the effect parts according to the data indicating the selected control pattern;
In the control data storage area, among the control data, the initialization data that is used in common among a plurality of models and used when performing the initialization process is in front of the data indicating the control pattern. Arranged,
A gaming machine, wherein the initialization process is executed using the initialization data when power supply is started.
初期化データには、演出制御用マイクロコンピュータが制御プログラムを実行する際に使用するワークエリアの初期設定のためのデータが含まれる
請求項1記載の遊技機。
The gaming machine according to claim 1, wherein the initialization data includes data for initial setting of a work area used when the production control microcomputer executes the control program.
初期化データには、情報を出力するために用いられる出力ポートを初期設定するためのデータが含まれる
請求項1または請求項2記載の遊技機。
The gaming machine according to claim 1 or 2, wherein the initialization data includes data for initial setting of an output port used for outputting information.
制御パターンを示すデータには、発光体の点灯パターンを示すデータが含まれる
請求項1から請求項3のうちのいずれかに記載の遊技機。
The game machine according to any one of claims 1 to 3, wherein the data indicating the control pattern includes data indicating a lighting pattern of the light emitter.
JP2000305475A 2000-10-04 2000-10-04 Game machine Expired - Fee Related JP4064047B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000305475A JP4064047B2 (en) 2000-10-04 2000-10-04 Game machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000305475A JP4064047B2 (en) 2000-10-04 2000-10-04 Game machine

Publications (3)

Publication Number Publication Date
JP2002113229A JP2002113229A (en) 2002-04-16
JP2002113229A5 JP2002113229A5 (en) 2005-09-15
JP4064047B2 true JP4064047B2 (en) 2008-03-19

Family

ID=18786327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000305475A Expired - Fee Related JP4064047B2 (en) 2000-10-04 2000-10-04 Game machine

Country Status (1)

Country Link
JP (1) JP4064047B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4064792B2 (en) * 2002-11-18 2008-03-19 株式会社三共 Game machine
JP4064791B2 (en) * 2002-11-18 2008-03-19 株式会社三共 Game machine
JP5337846B2 (en) * 2011-07-04 2013-11-06 株式会社ニューギン Game machine
JP6655912B2 (en) * 2015-08-27 2020-03-04 株式会社オリンピア Gaming machine
JP2019000229A (en) * 2017-06-13 2019-01-10 株式会社平和 Game machine

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH064111B2 (en) * 1985-07-13 1994-01-19 邦雄 毒島 Ball game machine
JP3710857B2 (en) * 1995-09-22 2005-10-26 株式会社三共 Game machine
JP3142790B2 (en) * 1997-02-19 2001-03-07 株式会社ソフィア Pachinko machine
JP4161393B2 (en) * 1997-11-08 2008-10-08 タイヨーエレック株式会社 Game machine
JPH11221649A (en) * 1998-02-06 1999-08-17 Sintokogio Ltd Water spray cooling system device for molding sand
JP4043635B2 (en) * 1999-03-12 2008-02-06 株式会社三共 Game machine

Also Published As

Publication number Publication date
JP2002113229A (en) 2002-04-16

Similar Documents

Publication Publication Date Title
JP4118480B2 (en) Game machine
JP3588035B2 (en) Gaming machine
JP2001046595A (en) Game machine
JP3833438B2 (en) Game machine
JP4064047B2 (en) Game machine
JP4330782B2 (en) Game machine
JP2003190425A (en) Game machine
JP2001046604A (en) Game machine
JP4763082B2 (en) Game machine
JP4413388B2 (en) Game machine
JP4680363B2 (en) Game machine
JP4763083B2 (en) Game machine
JP3792476B2 (en) Game machine
JP2002000816A (en) Game machine
JP2001037963A (en) Game machine
JP2008062090A (en) Game machine
JP2002000905A (en) Game machine
JP4249233B2 (en) Game machine
JP4347378B2 (en) Game machine
JP4298767B2 (en) Game machine
JP4593600B2 (en) Game machine
JP2002095840A (en) Game machine
JP4249232B2 (en) Game machine
JP4249234B2 (en) Game machine
JP4347380B2 (en) Game machine

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050324

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051201

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071101

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071109

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: 20071218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071226

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4064047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 3

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: 20110111

Year of fee payment: 3

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: 20110111

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120111

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120111

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130111

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130111

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140111

Year of fee payment: 6

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees