以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機を正面からみた正面図、図2は遊技盤の前面を示す正面図である。なお、以下の実施の形態では、パチンコ遊技機を例に説明を行うが、本発明による遊技機はパチンコ遊技機に限られず、スロット機などの他の遊技機に適用することもできる。
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板と、それらに取り付けられる種々の部品(後述する遊技盤を除く。)とを含む構造体である。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球を貯留する余剰球受皿4と遊技球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には遊技領域7が形成されている。
遊技領域7の中央付近には、それぞれが演出用の飾り図柄を可変表示する複数の可変表示部を含む可変表示装置(飾り図柄表示装置)9が設けられている。可変表示装置9には、例えば「左」、「中」、「右」の3つの可変表示部(図柄表示エリア)がある。可変表示装置9は、特別図柄表示器8による特別図柄の可変表示期間中に、装飾用(演出用)の図柄としての飾り図柄の可変表示を行う。飾り図柄の可変表示を行う可変表示装置9は、演出制御基板に搭載されている演出制御用マイクロコンピュータによって制御される。
可変表示装置9の下部には、始動入賞口14に入った有効入賞球数すなわち保留記憶(始動記憶または始動入賞記憶ともいう。)数を表示する4つの特別図柄保留記憶表示器18が設けられている。特別図柄保留記憶表示器18は、保留記憶数を入賞順に4個まで表示する。特別図柄保留記憶表示器18は、始動入賞口14に始動入賞がある毎に、点灯状態のLEDの数を1増やす。そして、特別図柄保留記憶表示器18は、特別図柄表示器8で可変表示が開始される毎に、点灯状態のLEDの数を1減らす(すなわち1つのLEDを消灯する)。具体的には、特別図柄保留記憶表示器18は、特別図柄表示器8で可変表示が開始される毎に、点灯状態をシフトする。なお、この例では、始動入賞口14への入賞による始動記憶数に上限数(4個まで)が設けられているが、上限数を4個以上にしてもよい。
可変表示装置9の上部には、識別情報としての特別図柄を可変表示する特別図柄表示器(特別図柄表示装置)8が設けられている。この実施の形態では、特別図柄表示器8は、例えば0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。特別図柄表示器8は、遊技者に特定の停止図柄を把握しづらくさせるために、0〜99など、より多種類の数字を可変表示するように構成されていてもよい。また、可変表示装置9は、特別図柄表示器8による特別図柄の可変表示期間中に、装飾用(演出用)の図柄としての飾り図柄の可変表示を行う。
さらに、可変表示装置9の左側には、遊技演出に用いられる可動部材としてのハンマ151が設けられている。ハンマ151は、可動部152を支点として右方向に倒れ、可変表示装置9に表示される飾り図柄のうち最も左側の飾り図柄を叩くような演出を行うことができる。
また、パチンコ遊技機1は、遊技の進行中に遊技者が操作可能な操作スイッチ81を備えている。例えば、操作スイッチ81が操作(押下)されると、可動部材としてのハンマ151が動作する。
可変表示装置9の下方には、始動入賞口14を形成する可変入賞球装置15が設けられている。始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ14aによって検出される。可変入賞球装置15は、ソレノイド16によって開状態にされる。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態に制御される開閉板を用いた可変入賞球装置20が設けられている。可変入賞球装置20は大入賞口を開閉する手段である。可変入賞球装置20に入賞し遊技盤6の背面に導かれた入賞球のうち一方(V入賞領域:特別領域)に入った入賞球はV入賞スイッチ22で検出された後カウントスイッチ23で検出され、他方の領域に入った遊技球は、そのままカウントスイッチ23で検出される。遊技盤6の背面には、大入賞口内の経路を切り換えるためのソレノイド21Aも設けられている。
遊技球がゲート32を通過しゲートスイッチ32aで検出されると、普通図柄表示器10の表示の可変表示が開始される。この実施の形態では、左右のランプ(点灯時に図柄が視認可能になる)が交互に点灯することによって可変表示が行われ、例えば、可変表示の終了時に左側のランプが点灯すれば当たりになる。そして、普通図柄表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になる。普通図柄表示器10の近傍には、ゲート32を通過した入賞球数を表示する4つのLEDによる表示部を有する普通図柄始動記憶表示器41が設けられている。ゲート32への遊技球の通過がある毎に、普通図柄始動記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。
遊技盤6には、複数の入賞口29,30,33,39が設けられ、遊技球の入賞口29,30,33,39への入賞は、それぞれ入賞口スイッチ29a,30a,33a,39aによって検出される。各入賞口29,30,33,39は、遊技媒体を受け入れて入賞を許容する領域として遊技盤6に設けられる入賞領域を構成している。なお、始動入賞口14や大入賞口も、遊技媒体を受け入れて入賞を許容する入賞領域を構成する。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった遊技球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cが設けられている。さらに、遊技領域7における各構造物(大入賞口等)の周囲には装飾LEDが設置されている。天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cおよび装飾用LEDは、遊技機に設けられている装飾発光体の一例である。
そして、この例では、左枠ランプ28bの近傍に、賞球払出中に点灯する賞球ランプ51が設けられ、天枠ランプ28aの近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、プリペイドカードが挿入されることによって球貸しを可能にするプリペイドカードユニット(以下、「カードユニット」という。)50が、パチンコ遊技機1に隣接して設置されている。
カードユニット50には、例えば、使用可能状態であるか否かを示す使用可表示ランプ、カードユニットがいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器、カードユニット内にカードが投入されていることを示すカード投入表示ランプ、記録媒体としてのカードが挿入されるカード挿入口、およびカード挿入口の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニットを解放するためのカードユニット錠が設けられている。
遊技者の操作により打球発射装置から発射された遊技球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。遊技球が始動入賞口14に入り始動口スイッチ14aで検出されると、図柄の可変表示を開始できる状態であれば、特別図柄表示器8において特別図柄が可変表示(変動)を始める。図柄の可変表示を開始できる状態でなければ、保留記憶数を1増やす。
特別図柄表示器8における特別図柄の可変表示は、一定時間が経過したときに停止する。停止時の特別図柄(停止図柄)が大当り図柄(特定表示結果)であると、大当り遊技状態に移行する。すなわち、可変入賞球装置20が、一定時間経過するまで、または、所定個数(例えば10個)の遊技球が入賞するまで開放する。そして、可変入賞球装置20の開放中に遊技球がV入賞領域に入賞しV入賞スイッチ22で検出されると、継続権が発生し可変入賞球装置20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
停止時の特別図柄表示器8における特別図柄が確率変動を伴う大当り図柄(確変図柄)である場合には、次に大当りになる確率が高くなる。すなわち、確変状態という遊技者にとってさらに有利な状態になる。
遊技球がゲート32を通過すると、普通図柄表示器10において普通図柄が可変表示される状態になる。また、普通図柄表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、確変状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。すなわち、可変入賞球装置15の開放時間と開放回数は、普通図柄の停止図柄が当り図柄であったり、特別図柄の停止図柄が確変図柄である場合等に高められ、遊技者にとって不利な状態から有利な状態に変化する。なお、開放回数が高められることは、閉状態から開状態になることも含む概念である。
次に、パチンコ遊技機1の裏面の構造について図3を参照して説明する。図3は、遊技機を裏面から見た背面図である。
図3に示すように、遊技機裏面側では、可変表示装置9を制御する演出制御用マイクロコンピュータが搭載された演出制御基板80を含む可変表示制御ユニット49、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37が設置されている。なお、演出制御マイクロコンピュータは、遊技盤6に設けられている可変表示装置9を制御するとともに、各種装飾LED、装飾ランプ25、枠側に設けられている天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cを点灯制御し、スピーカ27からの音発生を制御する。
さらに、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910やタッチセンサ基板91が設けられている。電源基板910は、大部分が主基板31と重なっているが、主基板31に重なることなく外部から視認可能に露出した露出部分がある。この露出部分には、遊技機1における主基板31および各電気部品制御基板(演出制御基板80および払出制御基板37)や遊技機に設けられている各電気部品(電力が供給されることによって動作する部品)への電力供給を実行あるいは遮断するための電力供給許可手段としての電源スイッチが設けられている。さらに、露出部分における電源スイッチの内側(基板内部側)には、交換可能なヒューズが設けられている。
なお、電気部品制御基板には、電気部品制御用マイクロコンピュータを含む電気部品制御手段が搭載されている。電気部品制御手段は、遊技制御手段等からのコマンドとしての指令信号(制御信号)に従って遊技機に設けられている電気部品(遊技用装置:球払出装置97、可変表示装置9、ランプやLEDなどの発光体、スピーカ27等)を制御する。以下、主基板31を電気部品制御基板に含めて説明を行うことがある。その場合には、電気部品制御基板に搭載される電気部品制御手段は、遊技制御手段と、遊技制御手段等からの指令信号に従って遊技機に設けられている電気部品を制御する手段とのそれぞれを指す。また、主基板31以外のマイクロコンピュータが搭載された基板をサブ基板ということがある。
遊技機裏面において、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチ167の出力を導入して外部出力するための球切れ用端子、賞球情報(賞球個数信号)を外部出力するための賞球用端子および球貸し情報(球貸し個数信号)を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子基板(情報出力基板)36が設置されている。
貯留タンク38に貯留された遊技球は誘導レール39を通り、カーブ樋を経て払出ケース40Aで覆われた球払出装置に至る。球払出装置の上部には、遊技媒体切れ検出手段としての球切れスイッチ187が設けられている。球切れスイッチ187が球切れを検出すると、球払出装置の払出動作が停止する。球切れスイッチ187は遊技球通路内の遊技球の有無を検出するスイッチであるが、貯留タンク38内の補給球の不足を検出する球切れ検出スイッチ167も誘導レール39における上流部分(貯留タンク38に近接する部分)に設けられている。球切れ検出スイッチ167が遊技球の不足を検知すると、遊技機設置島に設けられている補給機構から遊技機に対して遊技球の補給が行われる。
入賞にもとづく景品としての遊技球や球貸し要求にもとづく遊技球が多数払い出されて打球供給皿3が満杯になると、遊技球は、余剰球通路を経て余剰球受皿4に導かれる。さらに遊技球が払い出されると、感知レバー(図示せず)が貯留状態検出手段としての満タンスイッチ(図示せず)を押圧して、貯留状態検出手段としての満タンスイッチがオンする。その状態では、球払出装置内の払出モータの回転が停止して球払出装置の動作が停止するとともに打球発射装置の駆動も停止する。
図4は、遊技領域7に設けられている入賞口などの入賞領域に入賞した遊技球を検出するための各スイッチの関係を示す説明図である。図4に示すように、始動口スイッチ14a、カウントスイッチ23、および入賞口スイッチ29a,30a,33a,39aのいずれで検出された遊技球も、遊技盤6の背面において全入賞検出スイッチ34の設置位置に導かれ、全入賞検出スイッチ34で検出される。
図5は、ハンマ151の駆動装置の構造を示す斜視図である。ハンマ151は、駆動源となるモータ150によって駆動される。モータ150の回転力は、モータ150の回転軸に嵌合しているギア152に伝えられ、さらに、ギア152と噛み合うギア153に伝えられる。ギア153が嵌合している回転軸157には、切欠部156aが設けられた平板156が嵌合されている。また、回転軸157の端部には、ギア153の回転方向と同じ方向にハンマ151が回転するように、回転軸157の軸方向に対して直交する方向に、ハンマ151のアーム158が嵌合部材159を用いて嵌合されている。
モータ150の回転力によって、図5(A)に示す矢印方向にギア152が回転すると、回転力が伝えられるギア153が嵌合している回転軸157の回転に応じて平板156およびハンマ151が回転する。そして、ハンマ151が、図5(A)に示す位置から図5(B)に示す位置まで移動される。平板156に形成されている切欠部156aは、ハンマ151が図5(A)に示す位置であるときはセンサ154によって感知され、ハンマ151が図5(B)に示す位置であるときはセンサ155によって感知される。
すなわち、センサ154,155は、ハンマ151の位置を検出して検出結果を検出信号として出力する位置検出手段の一例である。センサ154,155は、それぞれ、ハンマ151の回転可能範囲の両端を検知可能な位置に設置される。ハンマ151の回転可能範囲は、例えば90度である。
図6は、主基板31における回路構成の一例を示すブロック図である。なお、図6には、遊技機に搭載されている払出制御基板37、ランプドライバ基板35、音声出力基板70、インタフェース基板66、中継基板77および演出制御基板80も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路(遊技制御手段に相当)53と、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、および全入賞計数スイッチ34からの信号を基本回路53に与える入力ドライバ回路58と、可変入賞球装置15を開閉するソレノイド16、可変入賞球装置20を開閉するソレノイド21および大入賞口内の経路を切り換えるためのソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
なお、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、全入賞計数スイッチ34等のスイッチは、センサと称されているものでもよい。すなわち、遊技球を検出できる遊技媒体検出手段(この例では遊技球検出手段)であれば、その名称を問わない。入賞検出を行う始動口スイッチ14a、カウントスイッチ23、および入賞口スイッチ29a,30a,33a,39aの各スイッチは、入賞領域への遊技球の入賞を検出する入賞検出手段でもある。なお、ゲート32のような通過ゲートであっても、賞球の払い出しが行われるものであれば、通過ゲートへ遊技球が進入することが入賞になり、通過ゲートに設けられているスイッチ(例えばゲートスイッチ32a)が入賞検出手段になる。さらに、この実施の形態では、V入賞領域に入賞した遊技球が、V入賞スイッチ22で検出されるとともにカウントスイッチ23でも検出される。よって、大入賞口に入賞した遊技球数は、カウントスイッチ23による検出数に相当する。しかし、V入賞領域に入賞した遊技球はV入賞スイッチ22のみで検出されるようにし、大入賞口に入賞した遊技球数は、V入賞スイッチ22による検出数とカウントスイッチ23による検出数との和になるようにしてもよい。さらに、V入賞領域を設けず、最終ラウンド以外のラウンドでは、常に継続権が発生するようにしてもよい。
基本回路53は、ゲーム制御(遊技進行制御)用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段(変動データを記憶する変動データ記憶手段)としてのRAM55、およびプログラムに従って制御動作を行うCPU56を有する遊技制御用マイクロコンピュータ560と、I/Oポート部57とを含む。この実施の形態では、ROM54およびRAM55は遊技制御用マイクロコンピュータ560に内蔵されている。すなわち、遊技制御用マイクロコンピュータ560は、1チップマイクロコンピュータである。1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54は外付けであっても内蔵されていてもよい。また、I/Oポート部57は、1チップマイクロコンピュータに内蔵されていてもよい。
なお、遊技制御用マイクロコンピュータ560においてCPU56がROM54に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ560が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているマイクロコンピュータについても同様である。また、遊技制御手段は、遊技制御用マイクロコンピュータ560を含む基本回路53で実現されている。
また、RAM55は、その一部または全部が電源基板910において作成されるバックアップ電源によってバックアップされている不揮発性記憶手段としてのバックアップRAMである。すなわち、遊技機に対する電力供給が停止しても、所定期間(バックアップ電源としてのコンデンサが放電してバックアップ電源が電力供給不能になるまで)は、RAM55の一部または全部の内容は保存される。特に、少なくとも、遊技状態すなわち遊技制御手段の制御状態に応じたデータ(特別図柄プロセスフラグ等)、未払出賞球数を示すデータおよび始動入賞数を示すデータ(例えば、始動入賞カウンタ)は、バックアップRAMに保存される。遊技制御手段の制御状態に応じたデータとは、停電等が生じた後に復旧した場合に、そのデータにもとづいて、制御状態を停電等の発生前に復旧させるために必要なデータである。また、制御状態に応じたデータと、未払出賞球数を示すデータと、始動入賞数を示すデータ(例えば、始動入賞カウンタ)とを遊技の進行状態を示すデータと定義する。なお、この実施の形態では、RAM55の全部が、電源バックアップされているとする。
遊技制御用マイクロコンピュータ560のリセット端子には、電源基板910からのリセット信号が入力される。また、払出制御用マイクロコンピュータのリセット端子にも、電源基板910からのリセット信号が入力される。なお、リセット信号がハイレベルになると遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータは動作可能状態になり、リセット信号がローレベルになると遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータは動作停止状態になる。従って、リセット信号がハイレベルである期間は、遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータの動作を許容する許容信号が出力されていることになり、リセット信号がローレベルである期間は、遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータの動作を停止させる動作停止信号が出力されていることになる。なお、リセット回路をそれぞれの電気部品制御基板(主基板31を含む)に搭載してもよいし、複数の電気部品制御基板のうちの一つまたは複数にリセット回路を搭載し、そこからリセット信号を他の電気部品制御基板に供給するようにしてもよい。
さらに、基本回路53の入力ポートには、払出制御基板37を経由して、電源基板910からの電源電圧が所定値以下に低下したことを示す電源断信号が入力される。また、基本回路53の入力ポートには、RAMの内容をクリアすることを指示するためのクリアスイッチが操作されたことを示すクリア信号が入力される。
クリア信号は、主基板31において分岐され、払出制御基板37にも供給される。なお、遊技制御用マイクロコンピュータ560が入力ポートを介して入力したクリア信号の状態を、出力ポートを介して払出制御基板37に出力してもよい。
この実施の形態では、演出制御基板80に搭載されている演出制御手段(演出制御用マイクロコンピュータで構成される。)が、中継基板77を介して遊技制御用マイクロコンピュータ560からの演出制御コマンドを受信し、飾り図柄を可変表示する可変表示装置9の表示制御等を行う。
図7は、払出制御基板37および球払出装置97などの払出に関連する構成要素を示すブロック図である。図7に示すように、払出制御基板37には、払出制御用CPU371を含む払出制御用マイクロコンピュータ(電気部品制御用マイクロコンピュータの一例)370が搭載されている。この実施の形態では、払出制御用マイクロコンピュータ370は、1チップマイクロコンピュータであり、少なくともRAMが内蔵されている。払出制御用CPU371、RAM(図示せず)、払出制御用プログラムを格納したROM(図示せず)およびI/Oポート等は、払出制御手段を構成する。すなわち、払出制御手段は、払出制御用CPU371、RAMおよびROMを有する払出制御用マイクロコンピュータ370と、I/Oポートとで実現される。また、I/Oポートは、払出制御用マイクロコンピュータ370に内蔵されていてもよい。払出制御用マイクロコンピュータ370におけるRAMの少なくとも一部は、電源基板910に搭載されているバックアップ電源によって電源バックアップされている。ただし、この実施の形態では、全てのRAM領域が電源バックアップされているとする。よって、遊技機に対して電力供給がなされていないときにも、所定期間(バックアップ電源としてのコンデンサが放電してバックアップ電源が電力供給不能になるまで)は、RAMの記憶内容は保存される。
球切れスイッチ187、満タンスイッチ48および払出個数カウントスイッチ301からの検出信号は、中継基板72を介して払出制御基板37のI/Oポート372fに入力される。また、払出モータ位置センサ295からの検出信号は、中継基板72を介して払出制御基板37のI/Oポート372eに入力される。払出モータ位置センサ295は、払出モータ289の回転位置を検出するための発光素子(LED)と受光素子とによるセンサであり、遊技球が詰まったこと、すなわちいわゆる球噛みを検出するために用いられる。払出制御基板37に搭載されている払出制御用マイクロコンピュータ370は、球切れスイッチ187からの検出信号が球切れ状態を示していたり、満タンスイッチ48からの検出信号が満タン状態を示していると、球払出処理を停止する。さらに、満タンスイッチ48からの検出信号が満タン状態を示していると、打球発射装置からの球発射を停止させる。
入賞口への遊技球の入賞があると、主基板31の出力回路67から、払出指令信号として、払い出すべき賞球個数を示す賞球個数信号(払出数データ)および賞球個数信号の取り込み(受信)を要求する賞球REQ信号(取込要求信号)が出力(送信)される。具体的には、オン状態になる。賞球個数信号は、4ビットのデータ(2進4桁のデータ)によって構成され、4本の信号線によって出力される。なお、信号のオン状態すなわち出力状態は、信号が有意である状態であり、オン状態になることは、信号を受ける側に対してその信号にもとづく何らかの処理を開始することを指令することを意味する。例えば、賞球個数を示す賞球個数信号および賞球REQ信号がオン状態になるということは、払出制御用マイクロコンピュータ370に対して、賞球個数信号が示す払出数を認識するように指令することを意味する。また、信号を出力することによってオン状態とし、信号出力を停止することによってオフ状態としてもよいが、オン状態にするときにはオン状態に応じた信号を出力し、オフ状態にするときにはオフ状態に応じた信号を出力することによって、オン状態とオフ状態とを切り替えてもよい。
賞球REQ信号および賞球個数信号は、入力回路373Aを介してI/Oポート372eに入力される。払出制御用マイクロコンピュータ370は、I/Oポート372eを介して賞球個数信号を入力すると、賞球個数信号が示す個数の遊技球を払い出すために球払出装置97を駆動する制御を行う。なお、主基板31の出力回路67からは、主基板31が接続されていることを示す接続確認信号も出力される。また、賞球REQ信号および賞球個数信号は、払出数を指定する払出指令信号に相当する。
また、電源基板910から、電源電圧が所定値以下に低下したことを示す電源断信号が、入力ポート372gに入力される。電源断信号は、出力回路373Bを介して主基板31に出力される。従って、出力回路373Bは、電圧低下検出信号としての電源断信号を主基板31に出力する電圧低下検出信号出力部を構成する。そして、主基板31において、入力回路68およびI/Oポート57を介して遊技制御用マイクロコンピュータ560に入力される。
なお、この実施の形態では、電源断信号は、払出制御基板37において分岐され、出力回路372Bを介して主基板31に出力される(出力回路372Bを介さず払出制御基板37では配線のみを経由するようにしてもよい。)が、払出制御基板37において分岐させず、入力ポートを介して電源断信号を入力した払出制御用マイクロコンピュータ370が、出力ポートおよび出力回路372Bを介して電源断信号を主基板31に出力するようにしてもよい。
また、主基板31から、出力回路67を介して、RAMの内容をクリアするためのクリアスイッチが操作されたことを示すクリア信号が出力される。よって、出力回路67は、初期化要求信号としてのクリア信号を払出制御基板37に出力する初期化要求信号出力部を構成する。そして、払出制御基板37において、入力回路373Aおよび入力ポート372eを介してクリア信号が払出制御用マイクロコンピュータ370に入力される。
払出制御用マイクロコンピュータ370は、出力ポート372bを介して、賞球払出数を示す賞球情報信号および貸し球数を示す球貸し個数信号をターミナル基板(枠用外部端子基板と盤用外部端子基板とを含む)160に出力する。なお、出力ポート372bの外側に、ドライバ回路が設置されているが、図7では記載省略されている。
また、払出制御用マイクロコンピュータ370は、出力ポート372cを介して、7セグメントLEDによるエラー表示用LED374にエラー信号を出力する。なお、払出制御基板37の入力ポート372fには、エラー状態を解除するためのエラー解除スイッチ375からの検出信号が入力される。エラー解除スイッチ375は、ソフトウェアリセットによってエラー状態を解除するために用いられる。
さらに、払出制御用マイクロコンピュータ370からの払出モータ289への駆動信号は、出力ポート372aおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に伝えられる。なお、出力ポート372aの外側に、ドライバ回路(モータ駆動回路)が設置されているが、図7では記載省略されている。
遊技機に隣接して設置されているカードユニット50には、カードユニット制御用マイクロコンピュータが搭載されている。また、カードユニット50には、使用可表示ランプ、連結台方向表示器、カード投入表示ランプおよびカード挿入口が設けられている。インタフェース基板(中継基板)66には、打球供給皿3の近傍に設けられている度数表示LED60、球貸し可LED61、球貸しスイッチ62および返却スイッチ63が接続される。
インタフェース基板66からカードユニット50には、遊技者の操作に応じて、球貸しスイッチ62が操作されたことを示す球貸しスイッチ信号および返却スイッチ63が操作されたことを示す返却スイッチ信号が与えられる。また、カードユニット50からインタフェース基板66には、プリペイドカードの残高を示すカード残高表示信号および球貸し可表示信号が与えられる。カードユニット50と払出制御基板37の間では、接続信号(VL信号)、ユニット操作信号(BRDY信号)、球貸し要求信号(BRQ信号)、球貸し完了信号(EXS信号)およびパチンコ機動作信号(PRDY信号)が入力ポート372fおよび出力ポート372dを介して送受信される。カードユニット50と払出制御基板37の間には、インタフェース基板66が介在している。よって、接続信号(VL信号)等の信号は、図7に示すように、インタフェース基板66を介してカードユニット50と払出制御基板37の間で送受信されることになる。
パチンコ遊技機1の電源が投入されると、払出制御基板37に搭載されている払出制御用マイクロコンピュータ370は、カードユニット50にPRDY信号を出力する。また、カードユニット制御用マイクロコンピュータは、電源が投入されると、VL信号を出力する。払出制御用マイクロコンピュータ370は、VL信号の入力状態によってカードユニット50の接続状態/未接続状態を判定する。カードユニット50においてカードが受け付けられ、球貸しスイッチが操作され球貸しスイッチ信号が入力されると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRDY信号を出力する。この時点から所定の遅延時間が経過すると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRQ信号を出力する。
そして、払出制御用マイクロコンピュータ370は、カードユニット50に対するEXS信号を立ち上げ、カードユニット50からのBRQ信号の立ち下がりを検出すると、払出モータ289を駆動し、所定個の貸し球を遊技者に払い出す。そして、払出が完了したら、払出制御用マイクロコンピュータ370は、カードユニット50に対するEXS信号を立ち下げる。その後、カードユニット50からのBRDY信号がオン状態でないことを条件に、遊技制御手段から払出指令信号を受けると賞球払出制御を実行する。
カードユニット50で用いられる電源電圧AC24Vは払出制御基板37から供給される。すなわち、カードユニット50に対する電源基板910からの電力供給は、払出制御基板37およびインタフェース基板66を介して行われる。この例では、インタフェース基板66内に配されているカードユニット50に対するAC24Vの電源供給ラインに、カードユニット50を保護するためのヒューズが設けられ、カードユニット50に所定電圧以上の電圧が供給されることが防止される。
この実施の形態では、カードユニット50が遊技機とは別体として遊技機に隣接して設置されている場合を例にするが、カードユニット50は遊技機と一体化されていてもよい。また、コイン投入に応じてその金額に応じた遊技球が貸し出されるような場合でも本発明を適用できる。
図8は、中継基板77、演出制御基板80、ランプドライバ基板35および音声出力基板70の回路構成例を示すブロック図である。なお、図8に示す例では、ランプドライバ基板35および音声出力基板70には、マイクロコンピュータは搭載されていないが、マイクロコンピュータを搭載してもよい。マイクロコンピュータを搭載した場合には、演出制御マイクロコンピュータ100は、ランプドライバ基板に搭載されるランプ制御用マイクロコンピュータおよび音声出力基板に搭載される音声制御用マイクロコンピュータに制御コマンドを送信し、ランプ制御用マイクロコンピュータおよび音声制御用マイクロコンピュータが、演出制御マイクロコンピュータ100からの制御コマンドに従って各種ランプ・LEDおよびスピーカ27を制御する。また、ランプドライバ基板35および音声出力基板70を設けずに、演出制御に関して演出制御基板80のみを設けてもよい。
演出制御基板80において、演出制御用マイクロコンピュータ(電気部品制御用マイクロコンピュータの一例)100における演出制御用CPU101は、ROM(図示せず)に格納されたプログラムに従って動作し、中継基板77を介して主基板31から送信される取込信号(演出制御INT信号)に応じて、中継基板77、入力ドライバ102および入力ポート103を介して演出制御コマンドを受信する。また、演出制御用マイクロコンピュータ100は、演出制御コマンドにもとづいて、VDP(ビデオディスプレイプロセッサ)109に、LCDを用いた可変表示装置9の表示制御を行わせる。VDP109は、GCL(グラフィックコントローラLSI)と呼ばれることもある。
中継基板77には、主基板31から入力された信号(演出制御コマンドを構成する演出制御信号と演出制御INT信号)を演出制御基板80に向かう方向にしか信号を通過させない(演出制御基板80から主基板31への方向には信号を通過させない)信号方向規制手段としての単方向性回路74が搭載されている。単方向性回路74として、例えばダイオードやトランジスタが使用される。図8には、ダイオードが例示されている。単方向性回路74は、各信号線毎に設けられる。演出制御基板80からの信号、演出制御基板80に入力される信号(操作スイッチ81の操作信号およびセンサ154,155の検出信号)、および演出制御基板80に接続されるランプドライバ基板35および音声出力基板70からの信号は、中継基板77の存在によって、主基板31の遊技制御用マイクロコンピュータ560に伝達されない。従って、遊技制御用マイクロコンピュータ560に対する外部からの信号入力経路が限定され、遊技制御用マイクロコンピュータ560に対して不正信号を送り込む不正行為がなされる可能性を低減できる。特に、この実施の形態では、遊技者が操作可能な操作手段としての操作スイッチ81と、遊技状態に応じて動作する可動部材の位置を検出する位置検出手段としてのセンサ154,155とが設けられ、遊技の進行中に遊技者が操作可能な操作手段が操作されたことを示す操作信号およびセンサ154,155からの検出信号が演出制御基板80に入力されるが、中継基板77の存在によって、操作信号や検出信号が主基板31に伝達されることはなく、操作信号や検出信号を利用した不正行為を防止することができる。
演出制御用マイクロコンピュータ100には、入力ポート106を介して、遊技者によって操作される操作スイッチ81からの操作信号、およびセンサ154,155からの検出信号が入力される。また、演出制御用マイクロコンピュータ100は、出力ポート107を介して、ハンマ151を駆動するモータ150に駆動信号を与える。
さらに、演出制御用マイクロコンピュータ100は、入出力ポート105を介してランプドライバ基板35に対してランプを駆動する信号を出力する。また、演出制御用マイクロコンピュータ100は、入出力ポート104を介して音声出力基板70に対して音番号データを出力する。
ランプドライバ基板35において、ランプを駆動する信号は、入出力ドライバ351を介してランプドライバ352に入力される。ランプドライバ352は、ランプを駆動する信号を増幅して天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、賞球ランプ51、球切れランプ52などの枠側に設けられている各ランプに供給する。また、枠側に設けられている装飾ランプ25に供給する。
音声出力基板70において、音番号データは、入出力ドライバ702を介して音声合成用IC703に入力される。音声合成用IC703は、音番号データに応じた音声や効果音を発生し増幅回路705に出力する。増幅回路705は、音声合成用IC703の出力レベルを、ボリューム706で設定されている音量に応じたレベルに増幅した音声信号をスピーカ27に出力する。音声データROM704には、音番号データに応じた制御データが格納されている。音番号データに応じた制御データは、所定期間(例えば飾り図柄の変動期間)における効果音または音声の出力態様を時系列的に示すデータの集まりである。
なお、ランプを駆動する信号および音番号データは、演出制御用マイクロコンピュータ100とランプドライバ基板35および音声出力基板70との間で、双方向通信(信号受信側から送信側に応答信号を送信するような通信)によって伝達される。
次に、電源基板910の構成を図9のブロック図を参照して説明する。電源基板910には、遊技機内の各電気部品制御基板や機構部品への電力供給を実行または遮断するための電源スイッチ914が設けられている。なお、電源スイッチ914は、遊技機において、電源基板910の外に設けられていてもよい。電源スイッチ914が閉状態(オン状態)では、交流電源(AC24V)がトランス911の入力側(一次側)に印加される。トランス911は、交流電源(AC24V)と電源基板910の内部とを電気的に絶縁するためのものであるが、その出力電圧もAC24Vである。また、トランス911の入力側には、過電圧保護回路としてのバリスタ918が設置されている。
電源基板910は、電気部品制御基板(主基板31、払出制御基板37および演出制御基板80等)と独立して設置され、遊技機内の各基板および機構部品が使用する電圧を生成する。この例では、AC24V、VSL(DC+30V)、VLP(DC+24V)、VDD(DC+12V)およびVCC(DC+5V)を生成する。また、バックアップ電源(VBB)すなわちバックアップRAMに記憶内容を保持させるための記憶保持手段となるコンデンサ916は、DC+5V(VCC)すなわち各基板上のIC等を駆動する電源のラインから充電される。また、+5Vラインとバックアップ+5V(VBB)ラインとの間に、逆流防止用のダイオード917が挿入される。なお、VSLは、整流平滑回路915において、整流素子でAC24Vを整流昇圧することによって生成される。VSLは、ソレノイド駆動電源になる。また、VLPは、ランプ点灯用の電圧であって、整流回路912において、整流素子でAC24Vを整流することによって生成される。
電源電圧生成手段としてのDC−DCコンバータ913は、1つまたは複数のスイッチングレギュレータ(図9では2つのレギュレータIC924A,924Bを示す。)を有し、VSLにもとづいてVDDおよびVCCを生成する。レギュレータIC(スイッチングレギュレータ)924A,924Bの入力側には、比較的大容量のコンデンサ923A,923Bが接続されている。従って、外部からの遊技機に対する電力供給が停止したときに、VSL、VDD、VCC等の直流電圧は、比較的緩やかに低下する。
図9に示すように、トランス911から出力されたAC24Vは、そのままコネクタ922Bに供給される。また、VLPは、コネクタ922Cに供給される。VCC、VDDおよびVSLは、コネクタ922A,922B,922Cに供給される。
コネクタ922Aに接続されるケーブルは、主基板31に接続される。また、コネクタ922Bに接続されるケーブルは、払出制御基板37に接続される。従って、コネクタ922A,922Bには、VBBも供給されている。例えば、コネクタ922Cに接続されるケーブルは、ランプドライバ基板35に接続される。なお、演出制御基板80および音声出力基板70には、ランプドライバ基板35を経由して各電圧が供給される。
また、電源基板910には、押しボタン構造のクリアスイッチ921が搭載されている。電源基板910に搭載されているので、電源基板910から主基板31に亘る電源系統を一系統にすることができ、クリアスイッチ921からのクリア信号の配線と電源系統とを分離しやすくすることができる。クリアスイッチ921が押下されるとローレベル(オン状態)のクリア信号が出力され、コネクタ922Bを介して主基板31に出力される。また、クリアスイッチ921が押下されていなければハイレベル(オフ状態)の信号が出力される。なお、クリアスイッチ921は、押しボタン構造以外の他の構成であってもよい。また、クリアスイッチ921は、遊技機において、電源基板910以外に設けられていてもよい。
さらに、電源基板910には、電気部品制御基板に搭載されているマイクロコンピュータに対するリセット信号を作成するとともに、電源断信号を出力する電源監視回路920と、電源監視回路920からのリセット信号を増幅してコネクタ922A,922B,922Cに出力するとともに、電源断信号を増幅してコネクタ922Bに出力する出力ドライバ回路925が搭載されている。なお、演出制御用マイクロコンピュータに対するリセット信号は、ランプドライバ基板35を経由して演出制御基板80に伝達される。また、リセット回路をそれぞれの電気部品制御基板に搭載した場合に、リセット信号をハイレベルにすることになる電圧値を異ならせるようにしてもよい(例えば、主基板31における場合を最も高くして、遊技制御用マイクロコンピュータ560に対するリセット信号がハイレベルになるタイミングを最も遅くする。)
電源監視回路920は電源断信号を出力する電源監視手段とリセット信号を生成するリセット信号生成手段とを実現する回路であるが、電源監視回路920として、市販の停電監視リセットモジュールICを使用することができる。電源監視回路920は、遊技機において用いられる所定電圧(例えば+24V)が所定値(例えば+5Vであるが、+18Vなど他の値としてもよい)以下になった期間が、あらかじめ決められている時間(例えば56ms)以上継続すると電源断信号を出力する。具体的には、電源断信号をオン状態(ローレベル)にする。なお、+18Vとすれば、後で説明するように、電力供給停止時のスイッチの誤検出防止が確実になる。
また、電源監視回路920は、例えば、VCCが+4.5V以下になると、リセット信号をローレベルにする。なお、この実施の形態では、電源断信号を出力する機能とリセット信号を出力する機能とが1つの電源監視回路920で実現されているが、それらを別の回路で実現してもよい。その場合、リセット信号を出力する回路として、ウォッチドッグタイマ内蔵ICを使用することができる。そのようなICとして、電源電圧の瞬断や瞬停などに起因してCPUが誤動作したり暴走したりすることを防止するために、クロック信号がクロック入力端子(CK端子)に入力されない期間(コンデンサ接続端子(TC端子)に接続される単一のコンデンサの容量に応じて設定される期間、また、タイマ監視時間は検出電圧可変端子(VS 端子)に接続される抵抗に応じて可変可能)が所定時間以上になると一定期間リセット信号をハイレベルからリセットレベル(CPUを動作停止させるレベル)としてのローレベル(ローレベル期間は、コンデンサ接続端子に接続される上記コンデンサの容量に応じて設定される)にすることを繰り返すウォッチドッグ機能を内蔵するとともに(ウォッチドッグタイマ停止端子(RCT端子)の入力レベルをGND端子の入力レベルと同じレベルである接地レベルにすることによってこの機能を停止可)、例えばVCC(動作可能電圧+0.8V以上)が+5VであるときにVCCが+4.2V以下になるとリセット信号をローレベルにし、VCCが高くなっていくときと低くなっていくときとでリセット信号のレベルを反転するための検出電圧値を変えるヒステリシス特性を有し、さらに、リセットレベルがローレベルであるリセット信号(RESET ̄端子の出力)の他に、リセットレベルがハイレベルであるリセット信号(RESET端子の出力)を出力可能であるシステムリセットICを使用することができる。なお、リセット回路をそれぞれの電気部品制御基板に搭載した場合に、電源断信号をローレベルにすることになる電圧値を異ならせるようにしてもよい(例えば、主基板31における場合を最も高くして、遊技制御用マイクロコンピュータ560に最も早く電源断信号が入力されるようにする。)
電源監視回路920は、遊技機に対する電力供給が停止する際には、電源断信号を出力(ローレベルにする)してから所定期間が経過したことを条件にリセット信号をローレベルにする。所定期間は、主基板31に搭載されている遊技制御用マイクロコンピュータ560および払出制御基板37に搭載されている払出制御用マイクロコンピュータ370が、後述する電源断処理を実行するのに十分な時間である。すなわち、電源監視回路920は、電圧低下検出信号としての電源断信号を出力した後、遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータ370が、電源断処理を実行完了した後に、動作停止信号(リセット信号のローレベル)を出力する。また、電源監視回路920は、電圧低下検出信号を出力する第1の電源監視手段と動作停止信号を出力する第2の電源監視手段とを兼ねている。また、遊技機に対する電力供給が開始され、VCCが例えば+4.5Vを越えるとリセット信号をハイレベルにする。
電源監視回路920からの電源断信号すなわち電源監視手段からの検出信号は、払出制御基板37において、入力ポート372gを介して払出制御用マイクロコンピュータ370に入力される。すなわち、払出制御用マイクロコンピュータ370は、入力ポート372gの入力信号を監視することによって遊技機への電力供給の停止の発生を確認することができる。また、電源監視回路920からの電源断信号は、払出制御基板37および主基板31に搭載されている入力ポートを介して遊技制御用マイクロコンピュータ560に入力される。すなわち、遊技制御用マイクロコンピュータ560は、入力ポートの入力信号を監視することによって遊技機への電力供給の停止の発生を確認することができる。
なお、この実施の形態では、電源監視手段が所定電位の電源の出力を監視し、外部から遊技機に供給される電力の供給停止に関わる検出条件として、遊技機の外部からの電圧(この実施の形態ではAC24V)から作成された所定の直流電圧が所定値以下になったことを用いたが、検出条件は、それに限られず、外部のからの電力が途絶えたことを検出できるのであれば、他の条件を用いてもよい。例えば、交流波そのものを監視して交流波が途絶えたことを検出条件としてもよいし、交流波をディジタル化した信号を監視して、ディジタル信号が平坦になったことをもって交流波が途絶えたことを検出条件としてもよい。さらに、例えば、+12V電源電圧や+5V電源電圧を監視して、その電圧が所定値にまで低下したことを検出して電源断信号を出力するようにしてもよい。ただし、+12Vで動作するスイッチの誤動作を防止するために、+12V以上の電圧を監視することが好ましい。
また、この実施の形態では、電源監視手段が電源基板910に搭載されているが、電源監視手段を払出制御基板37に搭載してもよい。払出制御基板37に搭載した場合には、電源監視手段から遊技制御用マイクロコンピュータ560および払出制御用マイクロコンピュータ370への電源断信号の経路が短くなり、電源断信号に対してノイズが乗る可能性を低減できる。
図10は、遊技制御手段における出力ポートの割り当ての例を示す説明図である。図10に示すように、出力ポート0は払出制御基板37に送信される払出制御信号の出力ポートである。また、演出制御基板80に送信される演出制御コマンドの8ビットのデータ(演出制御信号)は出力ポート1から出力される。なお、図10に示された「論理」(例えば1がオン状態)と逆の論理(例えば0がオン状態)を用いてもよいが、特に、接続確認信号については、主基板31と払出制御基板37との間の信号線において断線が生じた場合やケーブル外れの場合(ケーブル未接続を含む)等に、払出制御用マイクロコンピュータ370では必ずオフ状態と検知されるように「論理」が定められる。具体的には、一般に、断線やケーブル外れが生ずると信号の受信側ではハイレベルが検知されるので、主基板31と払出制御基板37との間の信号線でのハイレベルが、遊技制御手段における出力ポートにおいてオフ状態になるように「論理」が定められる。従って、必要であれば、主基板31において出力ポートの外側に、信号を論理反転させる出力バッファ回路が設置される。
また、出力ポート2から、大入賞口を開閉する可変入賞球装置20を開閉するためのソレノイド(大入賞口扉ソレノイド)21、大入賞口内の経路を切り換えるためのソレノイド(大入賞口内誘導板ソレノイド)21Aおよび可変入賞球装置15を開閉するためのソレノイド(普通電動役物ソレノイド)16に対する駆動信号が出力される。さらに、演出制御基板80に送信される演出制御コマンドについての演出制御INT信号(取込信号)も出力される。演出制御INT信号は、演出制御コマンドの8ビットのデータを取り込む(受信する)ことを演出制御手段に指令するための信号である。
図11は、遊技制御手段における入力ポートのビット割り当ての例を示す説明図である。図11に示すように、入力ポート0のビット0〜7には、それぞれ、V入賞スイッチ22、カウントスイッチ23、ゲートスイッチ32a、入賞口スイッチ33a,39a,29a,30a、始動口スイッチ14aの検出信号が入力される。また、入力ポート1のビット0〜3には、それぞれ、払出制御基板37からの電源断信号、全入賞計数スイッチ34の検出信号、払出制御基板37からの賞球ACK信号、クリアスイッチ921の検出信号(クリア信号)が入力される。
図12は、遊技機に対して電力供給が開始されたとき、および電力供給が停止するときの、マイクロコンピュータその他の回路素子の駆動電源であるVCC(+5V電源電圧)とVLP(+24V電源電圧)、電源断信号およびリセット信号の状態を模式的に示すタイミング図である。図12に示すように、遊技機に対して電力供給が開始されたときに、VCCおよびVLPは徐々に規定値(+5Vおよび+24V)に達するのであるが、VLPが第1の所定値を越えると電源断信号はハイレベル(オフ状態)になる。また、VCCが第2の所定値(例えば+4.5V)を越えると、リセット信号をハイレベルにする。
また、電力供給が停止するときに、+5V電源の出力電圧およびVLPは徐々に低下するのであるが、VLPが第1の所定値にまで低下すると、電源断信号がローレベル(オン状態)になる。また、VCCが第2の所定値にまで低下すると、リセット信号はローレベルになる。電源断信号がオン状態になるときには、+5Vおよび+12V電源の電圧出力は維持されているので、+5V電圧で動作する各マイクロコンピュータや+12V電圧で動作するスイッチ(遊技球検出のためのスイッチを含む)は動作可能になっている。電源監視手段が+12Vよりも高い電源電圧を監視し、その電源電圧が、+12Vよりも高い第1の所定値(例えば+18V)にまで低下すると電源断信号を出力するので、スイッチの誤検出(例えば、遊技球を検出していないのに、検出信号を出力する)を防止できる。また、交流波が途絶えたことを検出条件として電源断信号を出力する場合、交流波(AC24V)が途絶えたときには、AC24Vから作成される各種直流電源の電圧は徐々に低下するが、+5Vおよび+12V電源の電圧出力は維持されているので、+5V電圧で動作する各マイクロコンピュータや+12V電圧で動作するスイッチ(遊技球検出のためのスイッチを含む)は動作可能になっている。
次に遊技機の動作について説明する。図13および図14は、遊技機に対して電力供給が開始され遊技制御用マイクロコンピュータ560へのリセット信号がハイレベルになったことに応じて遊技制御用マイクロコンピュータ560が実行するメイン処理を示すフローチャートである。リセット信号が入力されるリセット端子の入力レベルがハイレベルになると、遊技制御用マイクロコンピュータ560は、プログラムの内容が正当か否かを確認するための処理であるセキュリティチェック処理を実行した後、ステップS1以降のメイン処理を開始する。メイン処理において、遊技制御用マイクロコンピュータ560は、まず、必要な初期設定を行う。
初期設定処理において、遊技制御用マイクロコンピュータ560は、まず、割込禁止に設定する(ステップS1)。次に、マスク可能割込の割込モードを設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。なお、ステップS2では、遊技制御用マイクロコンピュータ560の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードに設定する。また、マスク可能な割込が発生すると、遊技制御用マイクロコンピュータ560は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
次いで、内蔵デバイスレジスタの設定(初期化)を行う(ステップS4)。ステップS4の処理によって、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の設定(初期化)がなされる。
この実施の形態で用いられる遊技制御用マイクロコンピュータ560は、I/Oポート(PIO)およびタイマ/カウンタ回路(CTC)も内蔵している。
次に、入力ポート1のビット0の状態によって電源断信号がオフ状態になっているか否か確認する(ステップS5)。遊技機に対する電力供給が開始されたときに、+5V電源などの各種電源の出力電圧は徐々に規定値に達するのであるが、ステップS5の処理によって、すなわち、電源断信号が出力されていない(ハイレベルになっている)ことを確認することにより遊技制御用マイクロコンピュータ560は電源電圧が安定したことを確認することができる。
電源断信号がオン状態である場合には、遊技制御用マイクロコンピュータ560は、所定期間(例えば、0.1秒)の遅延時間の後に(ステップS6)、再度、電源断信号がオフ状態になっているか否か確認する。
電源断信号がオフ状態になっている場合には、遊技制御用マイクロコンピュータ560は、入力ポート0を介して入力されるクリアスイッチ921の出力信号(クリア信号)の状態を確認する(ステップS81)。クリア信号がオン状態になっていることを検出した場合には、遊技制御用マイクロコンピュータ560は、内蔵する汎用のレジスタに、クリアスイッチオンフラグをセットする(ステップS82)。このように、電源電圧が安定したことを条件にクリア信号のチェック処理に移行する。
なお、遊技制御用マイクロコンピュータ560は、入力ポート0を介して1回だけクリア信号の状態を確認するようにしてもよいが、複数回クリア信号の状態を確認するようにしてもよい。例えば、クリア信号の状態がオフ状態であることを確認したら、所定時間(例えば、0.1秒)の遅延時間をおいた後、クリア信号の状態を再確認する。そのときにクリア信号の状態がオン状態であることを確認したら、クリア信号がオン状態になっていると判定する。また、このときにクリア信号の状態がオフ状態であることを確認したら、所定時間の遅延時間をおいた後、再度、クリア信号の状態を再確認するようにしてもよい。ここで、再確認の回数は、1回または2回に限られず、3回以上であってもよい。また、2回チェックして、チェック結果が一致していなかったときにもう一度確認するようにしてもよい。
次いで、遊技の進行を制御する遊技装置制御処理(遊技制御処理)の開始タイミングをソフトウェアで遅らせるためのソフトウェア遅延処理を実行する。具体的には、まず、ウェイトカウンタ1に、初期化ウェイト回数指定値1をセットする(ステップS83)。また、ウェイトカウンタ2に、初期化ウェイト回数指定値2をセットする(ステップS84)。なお、ウェイトカウンタ1,2として、遊技制御用マイクロコンピュータ560が内蔵する汎用のレジスタが用いられる。そして、ウェイトカウンタ2の値が0になるまでウェイトカウンタ2の値を1ずつ減算する(ステップS85,S86)。ウェイトカウンタ2の値が0になったらウェイトカウンタ1の値を1減算し(ステップS87)、ウェイトカウンタ1の値が0になっていなければ(ステップS88)、ステップS84に戻る。ウェイトカウンタ1の値が0になっていれば、ソフトウェア遅延処理を終了する。
以上のようなソフトウェア遅延処理によって、ほぼ、[(初期化ウェイト回数指定値1)×(初期化ウェイト回数指定値2)×(ステップS86,S87の処理時間)]だけ、ソフトウェア遅延処理を実行しない場合に比べて、遊技制御処理の開始タイミングを遅延させることができる。換言すれば、所望の時間だけ遊技制御処理の開始タイミングを遅延させることができるように、初期化ウェイト回数指定値1,2の値が決定される。なお、初期化ウェイト回数指定値1,2の値は、ROM54に設定されている。また、ここで説明したソフトウェア遅延処理は一例であって、他の方法によってソフトウェア遅延処理を実現してもよい。なお、ステップS83〜S88の処理によって作成される遅延時間は、遊技制御処理が実行可能状態となるときから、少なくとも払出制御手段による払出制御処理が実行開始されるときまでの時間である。その間、遊技制御処理の実行開始が遅延することになる。また、この実施の形態では、演出制御用マイクロコンピュータ100は、払出制御用マイクロコンピュータ370と同様に遅延処理を実行しない。よって、遊技制御処理は、演出制御手段による制御が開始された後に開始されることになる。従って、遊技制御用マイクロコンピュータ560が電力供給開始時に演出制御用マイクロコンピュータ100にコマンド(例えば、初期化コマンドや復旧コマンド)送信する際に、演出制御用マイクロコンピュータ100は確実にコマンドを受信でき、受信したコマンドにもとづく報知処理(例えば、可変表示装置9に初期図柄を表示したり復旧の旨を表示する処理)を実行することができる。
ソフトウェア遅延処理を終了すると、RAM55をアクセス可能状態に設定する(ステップS6)。
次いで、遊技制御用マイクロコンピュータ560は、クリアスイッチオンフラグがセットされているか否か確認する(ステップS7)。クリアスイッチオンフラグがセットされていない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS8)。この実施の形態では、電力供給の停止が生じた場合には、バックアップRAM領域のデータを保護するための処理が行われている。そのような電力供給停止時処理が行われていたことを確認した場合には、遊技制御用マイクロコンピュータ560は、電力供給停止時処理が行われた、すなわち電力供給停止時の制御状態が保存されていると判定する。電力供給停止時処理が行われていないことを確認した場合には、遊技制御用マイクロコンピュータ560は初期化処理を実行する。
電力供給停止時処理が行われていたか否かは、後述する電力供給停止時処理においてバックアップRAM領域に保存されるバックアップ監視タイマの値が、電力供給停止時処理を実行したことに応じた値(例えば2)になっているか否かによって確認される。なお、そのような確認の仕方は一例であって、例えば、電力供給停止時処理においてバックアップフラグ領域に電力供給停止時処理を実行したことを示すフラグをセットし、ステップS8において、そのフラグがセットされていることを確認したら電力供給停止時処理が行われたと判定してもよい。
電力供給停止時の制御状態が保存されていると判定したら、遊技制御用マイクロコンピュータ560は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS9)。この実施の形態では、クリアデータ(00)をチェックサムデータエリアにセットし、チェックサム算出開始アドレスをポインタにセットする。また、チェックサムの対象になるデータ数に対応するチェックサム算出回数をセットする。そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する。演算結果をチェックサムデータエリアにストアするとともに、ポインタの値を1増やし、チェックサム算出回数の値を1減算する。以上の処理が、チェックサム算出回数の値が0になるまで繰り返される。チェックサム算出回数の値が0になったら、遊技制御用マイクロコンピュータ560は、チェックサムデータエリアの内容の各ビットの値を反転し、反転後のデータをチェックサムにする。
電力供給停止時処理において、上記の処理と同様の処理によってチェックサムが算出され、チェックサムはバックアップRAM領域に保存されている。ステップS9では、算出したチェックサムと保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっている可能性があることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理(ステップS10〜S15の処理)を実行する。
チェック結果が正常であれば、遊技制御用マイクロコンピュータ560は、遊技制御手段の内部状態と演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理を行う。具体的には、ROM54に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し(ステップS91)、バックアップ時設定テーブルの内容を順次作業領域(RAM55内の領域)に設定する(ステップS92)。作業領域はバックアップ電源によって電源バックアップされている。バックアップ時設定テーブルには、作業領域のうち初期化してもよい領域についての初期化データが設定されている。ステップS91およびS92の処理によって、作業領域のうち初期化してはならない部分については、保存されていた内容がそのまま残る。初期化してはならない部分とは、例えば、電力供給停止前の遊技状態を示すデータ(特別図柄プロセスフラグなど)、出力ポートの出力状態が保存されている領域(出力ポートバッファ)、未払出賞球数を示すデータが設定されている部分などである。
また、遊技制御用マイクロコンピュータ560は、ROM54に格納されているバックアップ時コマンド送信テーブルの先頭アドレスをポインタに設定し(ステップS93)、演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すために、演出制御手段に各種コマンド(停電復旧コマンドや表示結果指定コマンド、デモ表示コマンド)を送信する復旧時コマンド送信処理を行う(ステップS94)。そして、ステップS15に移行する。
初期化処理では、遊技制御用マイクロコンピュータ560は、まず、RAMクリア処理を行う(ステップS10)。なお、RAM55の全領域を初期化せず、所定のデータ(例えば大当り判定用乱数を生成するためのカウンタのカウント値のデータ)をそのままにしてもよい。例えば、大当り判定用乱数を生成するためのカウンタのカウント値のデータをそのままにした場合には、不正な手段によって初期化処理が実行される状態になったとしても、大当り判定用乱数を生成するためのカウンタのカウント値が大当り判定値に一致するタイミングを狙うことは困難である。また、ROM54に格納されている初期化時設定テーブルの先頭アドレスをポインタに設定し(ステップS11)、初期化時設定テーブルの内容を順次作業領域に設定する(ステップS12)。ステップS12では、後述する賞球カウンタに初期値(例えば200)が設定される。
ステップS11およびS12の処理によって、例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄バッファ、総賞球数格納バッファ、特別図柄プロセスフラグ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグに初期値が設定される。また、出力ポートバッファにおける接続確認信号を出力する出力ポートに対応するビットがセット(接続確認信号のオン状態に対応)される。
また、遊技制御用マイクロコンピュータ560は、ROM54に格納されている初期化時コマンド送信テーブルの先頭アドレスをポインタに設定し(ステップS13)、初期化処理が行われた旨を報知させるための初期化コマンドをサブ基板に送信する処理を実行する(ステップS14)。
そして、ステップS15において、遊技制御用マイクロコンピュータ560は、所定時間(例えば2ms)毎に定期的にタイマ割込がかかるように遊技制御用マイクロコンピュータ560に内蔵されているCTCのレジスタの設定を行なう。すなわち、初期値として例えば2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。この実施の形態では、2ms毎に定期的にタイマ割込がかかるとする。
初期化処理の実行(ステップS10〜S15)が完了すると、遊技制御用マイクロコンピュータ560は、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)を繰り返し実行する。遊技制御用マイクロコンピュータ560は、表示用乱数更新処理および初期値用乱数更新処理が実行されるときには割込禁止状態にして(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態にする(ステップS19)。なお、表示用乱数とは、特別図柄表示器8に表示される図柄を決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。初期値用乱数とは、大当りにするか否かを決定するための乱数を発生するためのカウンタ(大当り決定用乱数発生カウンタ)等のカウント値の初期値を決定するための乱数である。後述する遊技制御処理(遊技制御用マイクロコンピュータ560が、遊技機に設けられている可変表示装置9、可変入賞球装置、球払出装置等の遊技用の装置を、自身で制御する処理、または他のマイクロコンピュータに制御させるために指令信号を送信する処理、遊技装置制御処理ともいう。)における判定用乱数更新処理において、大当り決定用乱数発生カウンタの値が1ずつ+1されるが、大当り決定用乱数発生カウンタの値が1周(大当り決定用乱数発生カウンタの取りうる値の最小値から最大値までの間の数値の個数分歩進したこと)すると、そのカウンタに初期値が設定される。
なお、表示用乱数更新処理および初期値用乱数更新処理が実行されるときに割込禁止状態にされるのは、表示用乱数更新処理および初期値用乱数更新処理が後述するタイマ割込処理でも実行されることから、タイマ割込処理における処理と競合してしまうのを避けるためである。すなわち、ステップS17,S18の処理中にタイマ割込が発生してタイマ割込処理中で表示用乱数や初期値用乱数を発生するためのカウンタのカウント値を更新してしまったのでは、カウント値の連続性が損なわれる場合がある。しかし、ステップS17,S18の処理中では割込禁止状態にしておけば、そのような不都合が生ずることはない。
上述したように、遊技制御用マイクロコンピュータ560が初期化処理(ステップS10〜S15)または復旧処理(ステップS91〜S94)を開始する前に、ソフトウェア遅延処理が実行される。従って、遊技制御用マイクロコンピュータ560が初期化処理を開始する時点がサブ基板(演出制御基板80および払出制御基板37)に搭載されているマイクロコンピュータが初期化処理を完了する時点よりも遅くなる。よって、遊技機の電力供給が開始されたときに、サブ基板に搭載されているマイクロコンピュータが、遊技制御用マイクロコンピュータ560からの制御コマンドをより確実に受信することができるようになる。
また、遊技店員等は、クリアスイッチ921をオン状態してクリア信号が出力される状態にしながら遊技機に対する電力供給を開始する(例えば電源スイッチ914をオンする)ことによって、容易に初期化処理を実行させることができる。すなわち、RAMクリア等を行うことができる。
そして、この実施の形態では、遊技制御用マイクロコンピュータ560は、ソフトウェア遅延処理を実行する前に、クリア信号の確認を行う。よって、同じクリア信号が遊技制御用マイクロコンピュータ560と払出制御用マイクロコンピュータ370の双方に入力され、かつ、遊技制御用マイクロコンピュータ560がソフトウェア遅延処理を実行するように構成されていても、クリアスイッチ921に対する操作に応じて遊技制御用マイクロコンピュータ560と払出制御用マイクロコンピュータ370とが確実に初期化処理を実行することができる。例えば、遊技制御用マイクロコンピュータ560がソフトウェア遅延処理を実行した後にクリア信号の確認を行う場合には、ソフトウェア遅延処理中に払出制御用マイクロコンピュータ370が初期化処理を開始する可能性があり、遊技制御用マイクロコンピュータ560と払出制御用マイクロコンピュータ370との双方にクリア信号にもとづく初期化処理を実行させるには、少なくともソフトウェア遅延処理による遅延時間に相当する時間、クリアスイッチ921を操作し続ける必要がある。そのような必要な時間が経過する前にクリアスイッチ921の操作が停止されると、払出制御用マイクロコンピュータ370が初期処理を行ったにもかかわらず遊技制御用マイクロコンピュータ560が復旧処理を行ってしまい、制御状態がずれてしまう可能性がある。しかし、この実施の形態では、ソフトウェア遅延処理を実行する前にクリアスイッチ921からのクリア信号を確認するので、制御状態がずれてしまう可能性を低減することができる。
次に、遊技制御処理について説明する。図15は、タイマ割込処理を示すフローチャートである。メイン処理の実行中に、具体的には、ステップS16〜S19のループ処理の実行中における割込許可になっている期間において、タイマ割込が発生すると、遊技制御用マイクロコンピュータ560は、タイマ割込の発生に応じて起動されるタイマ割込処理において遊技制御処理を実行する。タイマ割込処理において、遊技制御用マイクロコンピュータ560は、まず、電源断信号が出力されたか否か(オン状態になったか否か)を検出する電源断処理(電源断検出処理)を実行する(ステップS21)。次いで、スイッチ回路58を介して、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ29a,30a,33a,39a等のスイッチの検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS22)。具体的には、各スイッチの検出信号を入力する入力ポートの状態がオン状態であれば、各スイッチに対応して設けられているスイッチタイマの値を+1する。
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(ステップS23)。遊技制御用マイクロコンピュータ560は、さらに、初期値用乱数および表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(ステップS24,S25)。
図16は、各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:大当りを発生させるか否か決定する(大当り判定用)
(2)ランダム2:特別図柄のはずれ図柄を決定する(特別図柄判定用)
(3)ランダム3:大当りを発生させる特別図柄を決定する(大当り図柄決定用)
(4)ランダム4:特別図柄の変動パターンを決定する(変動パターン決定用)
(5)ランダム5:大当りを発生させない場合にリーチとするか否か(本例では、飾り図柄でリーチ演出を実行するか否か)を決定する(リーチ判定用)
(6)ランダム6:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(7)ランダム7:ランダム1の初期値を決定する(ランダム1初期値決定用)
(8)ランダム8:ランダム6の初期値を決定する(ランダム6初期値決定用)
(9)ランダム9:確変状態を終了させるか否かを決定する(抽選判定用)。ランダム9は0〜49の範囲の値をとる。遊技制御用マイクロコンピュータ560は、確変状態において、例えば、ランダム9があらかじめ決められている1つの値と一致した場合には、確変状態を終了させる。従って、確変状態は、1/50の確率で終了(確変パンク)する。なお、ランダム9と比較される値が1つ設定されている判定値テーブルと2つ以上設定されている判定値テーブルを用意し、確変状態を終了させるか否かを決定する際に何れの判定値テーブルを用いるか決定し、決定した判定値テーブルに設定されている値とランダム9が一致した場合に確変状態を終了させるようにしてもよい。具体的には、例えばランダム9と比較される値が1つ設定されている判定値テーブルと2つ設定されている判定値テーブルを用意して選択して用いるようにすればよい。この場合、使用される判定値テーブルによって、確変状態は、1/50または1/25の確率で終了(確変パンク)することになる。また、確変図柄によって使用する判定値テーブルを決定し、確変図柄によって確変パンクの確率を異ならせるようにしてもよい。そして、確変パンクの確率の違いによって、可変表示装置9に表示される背景図柄や背景色、あるいは可変表示装置9に表示されるキャラクタを異ならせるようにして、確率の状態を遊技者に報知するようにしてもよい。
さらに、遊技制御用マイクロコンピュータ560は、特別図柄プロセス処理を行う(ステップS26)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS27)。普通図柄プロセス処理では、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
次いで、遊技制御用マイクロコンピュータ560は、特別図柄の変動に同期する飾り図柄に関する演出制御コマンドをRAM55の所定の領域に設定して演出制御コマンドを送出する処理を行う(飾り図柄コマンド制御処理:ステップS28)。なお、飾り図柄の変動が特別図柄の変動に同期するとは、変動時間(可変表示期間)が同じであることを意味する。
さらに、遊技制御用マイクロコンピュータ560は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS30)。
また、遊技制御用マイクロコンピュータ560は、入賞口スイッチ29a,30a,33a,39a等の検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS31)。具体的には、入賞口スイッチ29a,30a,33a,39a等がオンしたことにもとづく入賞検出に応じて、払出制御基板37に賞球個数を示す賞球個数信号等の払出指令信号を出力する。払出制御基板37に搭載されている払出制御用マイクロコンピュータ370は、賞球個数を示す賞球個数信号の受信に応じて球払出装置97を駆動する。
そして、遊技制御用マイクロコンピュータ560は、保留記憶数の増減をチェックする記憶処理を実行する(ステップS32)。また、遊技機の制御状態を遊技機外部で確認できるようにするための試験信号を出力する処理である試験端子処理を実行する(ステップS33)。また、この実施の形態では、出力ポートの出力状態に対応したRAM領域(出力ポートバッファ)が設けられているのであるが、遊技制御用マイクロコンピュータ560は、出力ポート2のRAM領域におけるソレノイドに関する内容(図10参照)を出力ポートに出力する(ステップS34:ソレノイド出力処理)。その後、割込許可状態に設定し(ステップS35)、処理を終了する。
以上の制御によって、この実施の形態では、遊技制御処理は定期的(例えば2ms毎)に起動されることになる。なお、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。また、ステップS22〜S34の処理(ステップS30およびS33を除く)が、遊技の進行を制御する遊技制御処理に相当する。
図17および図18は、ステップS21の電源断処理の一例を示すフローチャートである。電源断処理において、遊技制御用マイクロコンピュータ560は、まず、電源断信号が出力されているか否か(オン状態になっているか否か)確認する(ステップS450)。オン状態でなければ、RAM55に形成されているバックアップ監視タイマの値を0クリアする(ステップS451)。オン状態であれば、バックアップ監視タイマの値を1増やす(ステップS452)。そして、バックアップ監視タイマの値が判定値(例えば2)と一致すれば(ステップS453)、ステップS454以降の電力供給停止時処理すなわち電力の供給停止のための準備処理を実行する。つまり、遊技の進行を制御する状態から遊技状態を保存させるための電力供給停止時処理(電源断時制御処理)を実行する状態に移行する。なお、「RAMに形成されている」とは、RAM内の領域であることを意味する。
バックアップ監視タイマと判定値とを用いることによって、判定値に相当する時間だけ電源断信号のオン状態が継続したら、電力供給停止時処理が開始される。すなわち、ノイズ等で一瞬電源断信号のオン状態が発生しても、誤って電力供給停止時処理が開始されるようなことはない。なお、バックアップ監視タイマの値は、遊技機への電力供給が停止しても、所定期間はバックアップ電源によって保存される。従って、メイン処理におけるステップS8では、バックアップ監視タイマの値が判定値と同じ値になっていることによって、電力供給停止時処理の処理結果が保存されていることを確認できる。
電力供給停止時処理において、遊技制御用マイクロコンピュータ560は、パリティデータを作成する(ステップS454〜S463)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS454)、電力供給停止時でも内容が保存されるべきRAM領域の先頭アドレスに相当するチェックサム算出開始アドレスをポインタにセットする(ステップS455)。また、電力供給停止時でも内容が保存されるべきRAM領域の最終アドレスに相当するチェックサム算出回数をセットする(ステップS456)。
次いで、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS457)。演算結果をチェックサムデータエリアにストアするとともに(ステップS458)、ポインタの値を1増やし(ステップS459)、チェックサム算出回数の値を1減算する(ステップS460)。そして、ステップS457〜S460の処理を、チェックサム算出回数の値が0になるまで繰り返す(ステップS461)。
チェックサム算出回数の値が0になったら、遊技制御用マイクロコンピュータ560は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS462)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS463)。このデータが、電源投入時にチェックされるパリティデータになる。次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS471)。以後、内蔵RAM55のアクセスができなくなる。
さらに、遊技制御用マイクロコンピュータ560は、ROM54に格納されているポートクリア設定テーブルの先頭アドレスをポインタにセットする(ステップS472)。ポートクリア設定テーブルにおいて、先頭アドレスには処理数(クリアすべき出力ポートの数)が設定され、次いで、出力ポートのアドレスおよび出力値データ(クリアデータ:出力ポートの各ビットのオフ状態の値)が、処理数分の出力ポートについて順次設定されている。
遊技制御用マイクロコンピュータ560は、ポインタが指すアドレスのデータ(すなわち処理数)をロードする(ステップS473)。また、ポインタの値を1増やし(ステップS474)、ポインタが指すアドレスのデータ(すなわち出力ポートのアドレス)をロードする(ステップS475)。さらに、ポインタの値を1増やし(ステップS476)、ポインタが指すアドレスのデータ(すなわち出力値データ)をロードする(ステップS477)。そして、出力値データを出力ポートに出力する(ステップS478)。その後、処理数を1減らし(ステップS479)、処理数が0でなければステップS474に戻る。処理数が0であれば、すなわち、クリアすべき出力ポートを全てクリアしたら、タイマ割込を停止し(ステップS481)、ループ処理に入る。
ループ処理では、電源断信号がオフ状態になったか否かを監視する(ステップS482)。電源断信号がオフ状態になった場合には復帰アドレスとして、電源投入時実行アドレス(ステップS1のアドレス)を設定してリターン命令を実行する(ステップS483)。すなわち、メイン処理に戻る。具体的には、遊技機に設けられている遊技用の装置を制御(自身で制御することと、他のマイクロコンピュータに制御させるために指令信号を送信することの双方を含む概念)する状態に戻る。
以上の処理によって、電力供給が停止する場合には、ステップS454〜S481の電力供給停止時処理が実行され、電力供給停止時処理が実行されたことを示すデータ(判定値になっているバックアップ監視タイマのおよびチェックサム)がバックアップRAMへストアされ、RAMアクセスが禁止状態にされ、出力ポートがクリアされ、かつ、遊技制御処理を実行するためのタイマ割込が禁止状態に設定される。
この実施の形態では、RAM55がバックアップ電源によって電源バックアップ(遊技機への電力供給が停止しても所定期間はRAM55の内容が保存されこと)されている。この例では、ステップS452〜S479の処理によって、バックアップ監視タイマの値とともに、電源断信号が出力されたときのRAM55の内容にもとづくチェックサムもRAM55のバックアップ領域に保存される。遊技機への電力供給が停止した後、所定期間内に電力供給が復旧したら、遊技制御手段は、上述したステップS91〜S94の処理によって、RAM55に保存されているデータ(電力供給が停止した直前の遊技制御手段による制御状態である遊技状態を示すデータ(例えば、プロセスフラグの状態、大当り中フラグの状態、確変フラグの状態、出力ポートの出力状態等)を含む)に従って、遊技状態を、電力供給が停止した直前の状態に戻すことができる。なお、電力供給停止の期間が所定期間を越えたらバックアップ監視タイマの値とチェックサムとが正規の値とは異なるはずであるから、その場合には、ステップS10〜S15の初期化処理が実行される。
以上のように、電力供給停止時処理(電力の供給停止のための準備処理)によって、遊技状態を電力供給が停止した直前の状態に戻すためのデータが確実に変動データ記憶手段(この例ではRAM55の一部の領域)に保存される。よって、停電等による電源断が生じても、所定期間内に電源が復旧すれば、遊技状態を電力供給が停止した直前の状態に戻すことができる。
また、電源断信号がオフ状態になった場合には、ステップS1に戻る。その場合、電力供給停止時処理が実行されたことを示すデータが設定されているので、ステップS91〜S94の復旧処理が実行される。よって、電力供給停止時処理を実行した後に払出制御基板37からの電源断信号がオフ状態になったときには、遊技の進行を制御する状態に戻る。従って、電源瞬断等が生じても、遊技制御処理が停止してしまうようなことはなく、自動的に、遊技制御処理が続行される。
なお、払出制御基板37に対して送信される接続確認信号は、出力ポートをクリアする処理によってオフ状態に設定される。また、ステップS82およびS12の作業領域の設定では、接続確認信号に対応した出力ポートバッファの内容が、接続確認信号のオン状態に対応した値に設定される。そして、ステップS31の賞球処理が実行されると、出力ポートバッファの内容が出力ポートに出力されるので、払出制御基板37への接続確認信号がオン状態になる。従って、接続確認信号は、主基板31の立ち上がり時に出力される(オン状態になる)ことになる。なお、電源瞬断等から復帰した場合も、接続確認信号が出力される。
次に、メイン処理におけるスイッチ処理(ステップS21)を説明する。この実施の形態では、入賞検出またはゲート通過に関わる各スイッチの検出信号のオン状態が所定時間継続すると、確かにスイッチがオンしたと判定されスイッチオンに対応した処理が開始される。図19は、スイッチ処理で使用されるRAM55に形成される各2バイトのバッファを示す説明図である。前回ポートバッファは、前回(例えば2ms前)のスイッチオン/オフの判定結果が格納されるバッファである。ポートバッファは、今回入力したポート0の内容が格納されるバッファである。スイッチオンバッファは、スイッチのオンが検出された場合に対応ビットが1に設定され、スイッチのオフが検出された場合に対応ビットが0に設定されるバッファである。
図20は、遊技制御処理におけるステップS21のスイッチ処理の処理例を示すフローチャートである。スイッチ処理において、遊技制御用マイクロコンピュータ560は、まず、入力ポート0,1(図11参照)に入力されているデータを入力し(ステップS101)、入力したデータをポートバッファにセットする(ステップS102)。なお、入力ポート1については、ビット1のみ必要である(図11参照)。
次いで、RAM55に形成されるウェイトカウンタの初期値をセットし(ステップS103)、ウェイトカウンタの値が0になるまで、ウェイトカウンタの値を1ずつ減算する(ステップS104,S105)。
ウェイトカウンタの値が0になると、再度、入力ポート0のデータを入力し(ステップS106)、入力したデータとポートバッファにセットされているデータとの間で、ビット毎に論理積をとる(ステップS107)。そして、論理積の演算結果を、ポートバッファにセットする(ステップS108)。ステップS103〜S108の処理によって、ほぼ[ウェイトカウンタの初期値×(ステップS104,S105の処理時間)]の時間間隔を置いて入力ポート0から入力した2回の入力データのうち、2回とも「1」になっているビットのみが、ポートバッファにおいて「1」になる。つまり、所定期間としての[ウェイトカウンタの初期値×(ステップS104,S105の処理時間)]だけスイッチの検出信号のオン状態が継続すると、ポートバッファにおける対応するビットが「1」になる。
さらに、遊技制御用マイクロコンピュータ560は、前回ポートバッファにセットされているデータとポートバッファにセットされているデータとの間で、ビット毎に排他的論理和をとる(ステップS109)。排他的論理和の演算結果において、前回(例えば2ms前)のスイッチオン/オフの判定結果と、今回オンと判定されたスイッチオン/オフの判定結果とが異なっているスイッチに対応したビットが「1」になる。遊技制御用マイクロコンピュータ560は、さらに、排他的論理和の演算結果と、ポートバッファにセットされているデータとの間で、ビット毎に論理積をとる(ステップS110)。この結果、前回のスイッチオン/オフの判定結果と今回オンと判定されたスイッチオン/オフの判定結果とが異なっているスイッチに対応したビット(排他的論理和演算結果による)のうち、今回オンと判定されたスイッチに対応したビット(論理積演算による)のみが「1」として残る。
そして、遊技制御用マイクロコンピュータ560は、ステップS110における論理積の演算結果をスイッチオンバッファにセットし(ステップS111)、ステップS108における演算結果がセットされているポートバッファの内容を前回ポートバッファにセットする(ステップS112)。
以上の処理によって、所定期間継続してオン状態であったスイッチのうち、前回(例えば2ms前)のスイッチオン/オフの判定結果がオフであったスイッチ、すなわち、オフ状態からオン状態に変化したスイッチに対応したビットが、スイッチオンバッファにおいて「1」になっている。
さらに、遊技制御用マイクロコンピュータ560は、スイッチオンバッファにおける全入賞計数スイッチ34に対応するビットが0から1に変化した場合に、すなわち全入賞計数スイッチ34が入賞球を検出した場合には、賞球カウンタの値を1減らす(ステップS113,S114)。よって、賞球カウンタは、入賞数を計数するカウンタに相当する。
次に、メイン処理における特別図柄プロセス処理(ステップS26)を説明する。図21は、遊技制御用マイクロコンピュータ560が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。遊技制御用マイクロコンピュータ560は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)を行い、遊技盤6に設けられている始動入賞口14に遊技球が入賞したことを検出するための始動口スイッチ14aがオンしていたら、すなわち遊技球が始動入賞口14に入賞する始動入賞が発生していたら(ステップS311)、始動口スイッチ通過処理(ステップS312)を行った後に、内部状態に応じて、ステップS300〜S308のうちのいずれかの処理を行う。変動短縮タイマは、特別図柄の変動時間が短縮される場合に、変動時間を設定するためのタイマである。
特別図柄通常処理(ステップS300):特別図柄の可変表示を開始できる状態になるのを待つ。特別図柄の可変表示が開始できる状態になると、特別図柄についての始動入賞記憶数を確認する。始動入賞記憶数が0でなければ、特別図柄の可変表示の結果を大当りとするか否か決定する。そして、内部状態(特別図柄プロセスフラグ)をステップS301に移行するように更新する。
特別図柄停止図柄設定処理(ステップS301):特別図柄の可変表示後の停止図柄を決定する。そして、内部状態(特別図柄プロセスフラグ)をステップS302に移行するように更新する。
変動時間設定処理(ステップS302):ランダム4の値に応じて変動パターンを決定し、決定した変動パターンを指定するための変動パターンコマンドを演出制御基板80に送信する。また、その変動パターンにおける変動時間(可変表示時間:可変表示を開始してから表示結果が導出表示(停止表示)するまでの時間)を特別図柄の可変表示の変動時間とすることに決定する。また、決定した特別図柄の変動時間を計測する変動時間タイマをスタートさせる。そして、内部状態(特別図柄プロセスフラグ)をステップS303に移行するように更新する。
特別図柄変動処理(ステップS303):所定時間(ステップS302の変動時間タイマで示された時間)が経過すると、内部状態(特別図柄プロセスフラグ)をステップS304に移行するように更新する。
特別図柄停止処理(ステップS304):演出制御基板80に対して、飾り図柄の停止を指示するための飾り図柄停止コマンドを送信する。また、特別図柄表示器8における特別図柄を停止させる。そして、特別図柄の停止図柄が大当り図柄である場合には、内部状態(特別図柄プロセスフラグ)をステップS305に移行するように更新する。そうでない場合には、内部状態をステップS300に移行するように更新する。なお、飾り図柄停止コマンドを送信しない構成としてもよい。この場合、演出制御基板80は、主基板31からの変動パターンコマンドにもとづいて変動時間タイマに変動時間を設定するとともに、その変動時間タイマを更新していくことで飾り図柄の変動時間を独自に監視し、その変動時間が経過したと判定したときに飾り図柄を停止する処理を行うようにすればよい。
大入賞口開放前処理(ステップS305):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド21を駆動して大入賞口を開放する。また、プロセスタイマによって大入賞口開放中処理の実行時間を設定し、大当り中フラグをセットする。そして、内部状態(特別図柄プロセスフラグ)をステップS306に移行するように更新する。
大入賞口開放中処理(ステップS306):大入賞口ラウンド表示の演出制御コマンドを演出制御基板80に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立したら、内部状態をステップS307に移行するように更新する。
特定領域有効時間処理(ステップS307):V入賞スイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態をステップS305に移行するように更新する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、内部状態をステップS308に移行するように更新する。
大当り終了処理(ステップS308):大当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御手段に行わせるための制御を行う。そして、内部状態をステップS300に移行するように更新する。
図22は、始動口スイッチ通過処理(ステップS312)を示すフローチャートである。始動口スイッチ通過処理において、遊技制御用マイクロコンピュータ560は、始動入賞カウンタが示す始動入賞記憶数が最大値である4に達しているかどうか確認する(ステップS3111)。始動入賞記憶数が4に達していなければ、始動入賞カウンタのカウント数を1加算することで始動入賞記憶数を1増やし(ステップS3112)、大当り判定用乱数等の各乱数の値を抽出し、それらを始動入賞記憶数の値に対応した保存領域(特別図柄判定用バッファ)に格納する(ステップS3113)。なお、乱数を抽出するとは、乱数を生成させるためのカウンタからカウント値を読み出して、読み出したカウント値を乱数値とすることである。ステップS3113では、図16に示された乱数のうち、ランダム1〜ランダム5,ランダム9が抽出される。
そして、遊技制御用マイクロコンピュータ560は、変動時間を短縮するか否かの判定を行うための変動時間短縮判定時間を変動短縮タイマにセットする(ステップS3119)。なお、上述したように、ここでセットされた変動短縮タイマはステップS310にて減算される。
図23は、特別図柄プロセス処理における特別図柄通常処理(ステップS300)の例を示すフローチャートである。特別図柄通常処理において、遊技制御用マイクロコンピュータ560は、特別図柄の変動を開始することができる状態(例えば特別図柄プロセスフラグの値がステップS300を示す値となっている場合)であれば(ステップS3051)、始動入賞記憶数の値を確認する(ステップS3052)。具体的には、始動入賞カウンタのカウント値を確認する。
また、特別図柄プロセスフラグの値がステップS300を示す値となっている場合とは、特別図柄表示器8において特別図柄の変動がなされておらず、かつ、特別図柄の可変表示結果が大当り表示結果となったことにより発生した大当りにもとづく大当り遊技の実行中でもない場合である。
始動入賞記憶数が0であれば、遊技制御用マイクロコンピュータ560は、デモ表示フラグがセットされているか否かを確認する(ステップS3072)。デモ表示フラグがセットされていなければ、遊技制御用マイクロコンピュータ560は、デモ表示フラグをセットするとともに(ステップS3073)、デモコマンド(デモンストレーション表示コマンド)を演出制御基板80に対して送信する(ステップS3074)。
デモ表示フラグは、デモンストレーション表示コマンドを送信するか否かを判定するためのフラグであり、遊技機への電力供給の開始時(初期状態)ではリセット状態とされている。
始動入賞記憶数が0でなければ、遊技制御用マイクロコンピュータ560は、始動入賞記憶数=1に対応する保存領域に格納されている各乱数値を読み出してRAM55の乱数バッファ領域に格納するとともに(ステップS3053)、始動入賞カウンタのカウント値を1減算することで始動入賞記憶数の値を1減らし、かつ、各保存領域の内容をシフトする(ステップS3054)。すなわち、始動入賞記憶数=n(n=2,3,4)に対応する保存領域に格納されている各乱数値を、始動入賞記憶数=n−1に対応する保存領域に格納する。よって、各始動入賞記憶数に対応するそれぞれの保存領域に格納されている各乱数値が抽出された順番は、常に、始動入賞記憶数=1,2,3,4の順番と一致するようになっている。すなわち、この例では、可変表示の開始条件が成立する毎に、各保存領域の内容をシフトする構成としているので、各乱数値が抽出された順番を特定することができる。
次いで、遊技制御用マイクロコンピュータ560は、遊技状態が確変時短状態である場合には(ステップS3055)、時短回数カウンタが0でなければ1減算する(ステップS3056)。遊技状態が確変時短状態でない場合には、ステップS3057に移行する。なお、遊技状態は、状態データによって判定される。状態データとは、遊技状態が特別遊技状態(例えば、確変状態や時短状態)であるか否かを示すデータである。また、確変時短状態とは、確変状態への移行条件と時短状態への移行条件との双方が成立し、遊技状態が優先的に確変状態に制御されている状態をいう。
次いで、遊技制御用マイクロコンピュータ560は、遊技状態が確変状態または確変時短状態である場合には(ステップS3057)、ステップS3067,S3068の大当り判定を実行する前に、確変終了とするか否かの判定を抽選により行う(ステップS3058〜S3059)。遊技状態が確変状態でない場合には、ステップS3067に移行する。なお、確変終了とするか否かの判定を、可変表示が所定回数(例えば5回)実行される毎に実行するようにしてもよい。すなわち、例えば5回毎に抽選判定を行う場合には、確変状態に移行したあと、確変状態が終了するまで、5回目、10回目、15回目、・・・の可変表示を実行する際に抽選判定(ステップS3058〜S3059の処理)を実行するようにしてもよい。
確変状態である場合には(ステップS3057)、遊技制御用マイクロコンピュータ560は、抽選判定用乱数(確変終了判定用乱数:ランダム9)を保存領域から読み出して(ステップS3058)、読み出したランダム9の値が、確変終了値と一致するか否か判定し(ステップS3059)、一致する場合には、状態データを非確変状態に変更して確変状態(確変時短状態を含む。)を終了させる(ステップS3060)とともに、確変が終了したことを報知するための表示を行う(ステップS3061)。この場合、例えば、遊技領域7の左右周辺に、遊技状態を遊技者に報知するための遊技状態報知ランプが設けられている場合、遊技制御用マイクロコンピュータ560は、遊技状態報知ランプの例えば左側に対する駆動信号を停止し、確変が終了したことを報知するための表示(例えば、確変状態か否かを報知するための遊技状態報知ランプ(左)を消灯)を行う。
そして、時短回数カウンタが0でない場合には(ステップS3062)、遊技状態が時短状態に移行されることになるため、確変状態が終了したことを示す確変終了指定の演出制御コマンドを演出制御基板80に送信する制御を行う(ステップS3063)。
また、時短回数カウンタが0(なお、確変時短状態ではない単なる確変状態であったときにも時短回数カウンタの値は0である)であれば、状態データが時短状態を示していればその状態データを非時短状態に変更する(ステップS3064)。
以上の処理に従って、ランダム9の値にもとづいて確変状態が終了したときに、ステップS3068の大当り判定において低確率状態にもとづく抽選が実行される。
一方、ステップS3058にて読み出したランダム9の値が、確変終了値と一致しない場合には(ステップS3059)、遊技制御用マイクロコンピュータ560は、確変が継続していることを報知するための表示を行う(ステップS3066)。この場合、例えば、遊技領域7の左右周辺に、遊技状態を遊技者に報知するための遊技状態報知ランプが設けられている場合、遊技制御用マイクロコンピュータ560は、遊技状態報知ランプの例えば左側に対する駆動信号の出力状態を維持し、確変が継続していることを報知するための表示(例えば、確変状態が否かを報知するための遊技状態報知ランプ(左)の点灯状態を維持)を行う。
次いで、遊技制御用マイクロコンピュータ560は、乱数格納バッファから大当り判定用乱数を読み出し(ステップS3067)、大当り判定モジュールを実行する(ステップS3068)。大当り判定モジュールは、大当り判定用乱数が、あらかじめ決められている大当り判定値と一致したら大当りとすることに決定するプログラムである。大当りとすることに決定した場合には(ステップS3069)、遊技制御用マイクロコンピュータ560は、大当りフラグをセットする(ステップS3070)。なお、はずれとすることに決定した場合には、リーチ判定モジュールを実行してリーチとするか否かを決定する。「大当りフラグ」は、後述するステップS3075などにおいて参照される。
そして、特別図柄プロセスフラグの値を特別図柄停止図柄設定処理に対応した値に更新する(ステップS3071)。
なお、ステップS3068では、制御状態が確変状態であるか否かを加味して、確変時の大当り確率または非確変時の大当り確率で判定を行う。すなわち、状態データが示す制御状態が確変状態であるか否かを確認し、確変状態であれば確変時の大当り確率で判定を行い、非確変状態であれば非確変時の大当り確率で判定を行う。
なお、本例では、確変終了とするか否かの判定を抽選によって行うようにしていたが、確変終了とするか否かの判定を行わないようにしてもよい。すなわち、パンクによって確変状態が終了することのないようにしてもよい。この場合、上述した特別図柄通常処理において、ステップS3057〜S3066を実行しないようにすればよい。
図24は、特別図柄プロセス処理における変動時間設定処理(ステップS302)の例を示すフローチャートである。変動時間設定処理において、遊技制御用マイクロコンピュータ560は、ステップS3068での大当りの有無やリーチの有無の決定結果と、遊技状態とに応じて変動パターンテーブルを選択する(ステップS3081)。具体的には、大当りの有無やリーチの有無の決定結果と、状態データが示す遊技状態とに応じて、使用する変動パターンテーブルを決定する。
次いで、遊技制御用マイクロコンピュータ560は、状態データが時短状態となっているか否か確認し(ステップS3082)、時短状態かつ非確変状態であれば、時短回数カウンタの値を−1する(ステップS3083)。時短回数カウンタの値が0になった場合には(ステップS3084)、状態データを時短状態から非時短状態に変更する(ステップS3085)。
次いで、遊技制御用マイクロコンピュータ560は、状態データが確変状態、時短状態、または確変時短状態を示している場合には(ステップS3086)、今回の可変表示の表示結果が通常大当り(非確変かつ非時短大当り:確変状態や時短状態の終了条件を満たすこととなる大当り)であれば(ステップS3087)、状態データを非確変・非時短状態に変更する(ステップS3088)。
また、遊技制御用マイクロコンピュータ560は、状態データが確変状態、時短状態、または確変時短状態を示している場合に(ステップS3086)、今回の可変表示の表示結果が時短大当り(非確変かつ時短大当り:確変状態であればその終了条件を満たし時短状態に変更することとなり、時短状態であれば制御状態が維持されることとなる大当り)であれば(ステップS3089)、状態データを非確変・時短状態に変更するとともに、時短回数カウンタに初期値(例えば「100」)をセットする(ステップS3090)。このように、本例では、確変状態であるときに時短大当りが発生した場合には、表示結果が時短大当り図柄となる変動表示が開始される前に、状態データが確変状態から時短状態に変更されるとともに、時短回数カウンタに初期値がセットされる。また、確変時短状態であるときに時短大当りが発生した場合には、表示結果が時短大当り図柄となる変動表示が開始される前に、状態データが確変状態から時短状態に変更されるとともに、時短回数カウンタに初期値がセットされる。また、時短状態であるときに時短大当りが発生した場合には、表示結果が時短大当り図柄となる変動表示が開始される前に、状態データを変更することなく、時短回数カウンタに初期値がセットされる。
なお、状態データが時短状態(非確変かつ時短状態)を示しているときに今回の可変表示の表示結果が確変大当り(確変かつ非時短大当り)となる場合には、表示結果が確変大当り図柄となる変動表示が開始される前に状態データを時短状態から確変状態に変更するようにしてもよいし、確変大当り図柄となる変動表示の表示結果が導出表示されたあとに状態データを時短状態から確変状態に変更するようにしてもよい。
また、状態データが時短状態(非確変かつ時短状態)を示しているときに今回の可変表示の表示結果が確変時短大当りとなる場合には、表示結果が確変時短大当り図柄となる変動表示が開始される前に状態データを時短状態から確変時短状態に変更するようにしてもよいし、確変時短大当り図柄となる変動表示の表示結果が導出表示されたあとに状態データを時短状態から確変時短状態に変更するようにしてもよい。
さらに、状態データが確変状態(確変かつ非時短状態)を示しているときに今回の可変表示の表示結果が確変時短大当りとなる場合には、表示結果が確変時短大当り図柄となる変動表示が開始される前に状態データを確変状態から確変時短状態に変更するようにしてもよいし、確変時短大当り図柄となる変動表示の表示結果が導出表示されたあとに状態データを確変状態から確変時短状態に変更するようにしてもよい。
次に、遊技制御用マイクロコンピュータ560は、ステップS3081にて使用することに決定した変動パターンテーブルと、特別図柄判定用バッファに格納されている変動パターン決定用乱数(ランダム4)とにもとづいて、変動パターンを決定する(ステップS3091)。本例では、変動パターンを決定することによって、特別図柄の変動時間が決定される。なお、変動時間を決定したあと、決定した変動時間が設定されている変動パターンを複数の変動パターンの中から選択するようにしてもよい。
なお、ステップS3091では、ステップS3081にて使用することに決定した変動パターンテーブルが大当り時変動パターンテーブルであった場合には、大当りの種類(通常大当り、確変大当り、時短大当り、確変時短大当りのいずれの種類か)に応じて、変動パターンが決定される。
変動パターンを決定すると、遊技制御用マイクロコンピュータ560は、決定した変動パターン指定のコマンド送信テーブルのアドレスをポインタにセットする(ステップS3092a)。
なお、ステップS3092aでセットしたコマンドは、タイマ割込処理における飾り図柄コマンド制御処理(ステップS28)を実行することによって演出制御コマンドが演出制御基板80に送信される。この実施の形態では、演出制御手段に送信されうる各演出制御コマンドはROM54のコマンド送信テーブルに格納されている。また、飾り図柄コマンド制御処理では、遊技制御用マイクロコンピュータ560は、ポインタが示すROM54のアドレスに格納されている演出制御コマンドデータを、演出制御コマンドデータを出力するための出力ポートに設定するとともに、コマンドを送信することを示す演出制御INT信号を出力する。
次いで、遊技制御用マイクロコンピュータ560は、ステップS3068などで決定した特別図柄の表示結果(例えば、確変大当り、通常大当り、はずれなど)を示す表示結果指定のコマンド送信テーブルのアドレスをポインタにセットする(ステップS3092b)。なお、ここで送信される確変大当り、非確変大当り、はずれなどの表示結果を指定する演出制御コマンド(表示結果指定コマンド)に応じて、飾り図柄の具体的な停止図柄が演出制御基板80にて決定される。
また、ステップS3091にて特別図柄の変動時間を決定すると、遊技制御用マイクロコンピュータ560は、決定した変動時間を示す変動時間データを特別図柄プロセスタイマに設定して変動時間の計測を開始するとともに(ステップS3094,S3095)、特別図柄表示器8での特別図柄の変動表示を開始する(ステップS3095)。そして、遊技制御用マイクロコンピュータ560は、特別図柄プロセスフラグの値を特別図柄変動処理に対応した値に更新する(ステップS3098)。
図25は、特別図柄プロセス処理における特別図柄停止処理(ステップS304)の例を示すフローチャートである。特別図柄停止処理において、遊技制御用マイクロコンピュータ560は、変動中復旧フラグがセットされているか否かを確認する(ステップS3136)。変動中復旧フラグとは、後述するように、電源断によって中断した特別図柄の可変表示の変動期間が未だ終了していないことを示すフラグである。変動中復旧フラグがセットされていれば、遊技機への電力供給が再開されて計測が再開された特別図柄の変動時間が終了したことを意味するため、遊技制御用マイクロコンピュータ560は、始動入賞記憶数の値を確認する(ステップS3137a)。具体的には、始動入賞カウンタのカウント値を確認する。また、始動入賞記憶数が0であれば、遊技制御用マイクロコンピュータ560は、デモ表示フラグがセットされているか否かを確認する(ステップS3137b)。デモ表示フラグがセットされていなければ、遊技制御用マイクロコンピュータ560は、デモ表示フラグをセットするとともに(ステップS3137c)、デモンストレーション表示コマンドを演出制御基板80に送信する(ステップS3137)。そして、遊技制御用マイクロコンピュータ560は、変動中復旧フラグをリセットするとともに、復旧した特別図柄の可変表示の停止図柄を表示する(ステップS3138)。そして、ステップS3133に移行する。
なお、停止図柄が大当り図柄となるときは、ステップS3137を実行しないようにすることが好ましい。この場合、例えば、遊技制御用マイクロコンピュータ560は、変動中復旧フラグがセットされていることを確認すると、まず、大当りフラグがセットされているか否かを確認する。そして、遊技制御用マイクロコンピュータ560は、大当りフラグがセットされていないことを条件に、ステップS3137a以降の処理を実行するようにすればよい。このようにすれば、コマンド送信の制御負担を軽減させることができる。
変動中復旧フラグがセットされていなければ、遊技制御用マイクロコンピュータ560は、飾り図柄停止を示す演出制御コマンドを送信する処理を行う(ステップS3131)。また、遊技制御用マイクロコンピュータ560は、決定されている停止図柄で特別図柄を停止表示する(ステップS3132)。
また、遊技制御用マイクロコンピュータ560は、デモ表示フラグがセットされていればリセットする(ステップS3139)。なお、ステップS3137にてデモンストレーション表示コマンドを送信した直後は、ステップS3139は実行されない。例えば、ステップS3137を実行する際に実行済であることを示すフラグをセットし、ステップS3139を行う前にそのフラグを参照して実行の有無を判定し、実行済であると判定したときには、そのフラグをリセットしてステップS3139を行わないようにすればよい。
そして、遊技制御用マイクロコンピュータ560は、特別図柄の変動の停止図柄が大当り図柄であった場合には内部状態(特別図柄プロセスフラグ)をステップS305に移行するように更新し、そうでない場合には内部状態をステップS300に移行するように更新する(ステップS3135)。
なお、上記の例では、変動中復旧フラグの状態を判定し、変動中復旧フラグがセットされていればデモンストレーション表示コマンドを演出制御基板80に送信する構成としていたが、変動中復旧フラグを用いないようにしてもよい。すなわち、ステップS3136〜ステップS3138を実行しないようにしてもよい。この場合、変動中復旧フラグをセットするための後述するステップS2005も実行しないようにすればよい。このように構成しても、遊技機への電力供給が再開されて計測が再開された特別図柄の変動時間が終了したときにも、ステップS3139にてデモ表示フラグがリセットされるので、その後の上述したステップS3072〜ステップS3074の処理によってデモンストレーション表示コマンドが送信されることになる。このように構成すれば、電力供給が再開したあとの識別情報の変動時間の終了時に特別の処理によってデモンストレーション表示コマンドを送信する必要なく、特別図柄通常処理にて実行されるデモンストレーション表示コマンドの送信処理を利用することができるようになるため、コマンドの送信負担を軽減させることができるとともに、プログラムのデータ量を減少させることができROM54の必要容量を減らすことができる。
図26は、大当り遊技が終了したときに実行される大当り終了処理(ステップS308)を示すフローチャートである。大当り終了処理において、遊技制御用マイクロコンピュータ560は、大当り遊技の起因となった特別図柄の停止図柄(大当り図柄である)が確変時短図柄であったか否か確認する(ステップS3151)。確変時短図柄であった場合には、状態データを確変時短状態に変更するとともに(ステップS3152)、時短回数カウンタに所定値をセットする(ステップS3153)。なお、この実施の形態では、時短回数カウンタには100が設定される。また、遊技制御用マイクロコンピュータ560は、確変時短状態となったことを遊技者に報知する(ステップS3154)。例えば、遊技制御用マイクロコンピュータ560は、遊技状態報知ランプの左右双方に駆動信号を出力し、左右の遊技状態報知ランプを点灯状態とする。さらに、演出制御基板80に、大当り遊技状態の終了と、特別遊技状態(確変状態または時短状態)への移行とを通知するために、特定大当り終了表示指定の演出制御コマンドを送信する処理を行う(ステップS3155)。そして、特別図柄プロセスフラグの値を、特別図柄通常処理(ステップS300)に応じた値にする(ステップS3156)。
特別図柄の停止図柄が確変時短図柄でなかった場合には、特別図柄の停止図柄が確変図柄であったか否か確認する(ステップS3157)。確変図柄であった場合には、状態データを確変状態に変更する(ステップS3158)。また、遊技制御用マイクロコンピュータ560は、確変状態となったことを遊技者に報知する(ステップS3159)。例えば、遊技制御用マイクロコンピュータ560は、遊技状態報知ランプの左側に駆動信号を出力し、左側の遊技状態報知ランプを点灯状態とする。そして、ステップS3155に移行する。
特別図柄の停止図柄が確変図柄でなかった場合には、特別図柄の停止図柄が時短図柄であったか否か確認する(ステップS3160)。時短図柄であった場合には、状態データを時短状態に変更する(ステップS3161)。また、遊技制御用マイクロコンピュータ560は、時短状態となったことを遊技者に報知する(ステップS3163)。例えば、遊技制御用マイクロコンピュータ560は、遊技状態報知ランプの右側に駆動信号を出力し、右側の遊技状態報知ランプを点灯状態とする。そして、ステップS3155に移行する。
なお、上述したステップS3090にて時短回数カウンタに所定値をセットしているので、ここでは時短回数カウンタのセットは行わない。しかし、上述したステップS3090では時短回数カウンタのセットを行わず、ステップS3161にて時短回数カウンタに所定値をセットするようにしてもよい。
特別図柄の停止図柄が時短図柄でもなかった場合には、大当り遊技状態の終了を通知するために、非特定大当り終了表示指定の演出制御コマンドを送信する処理を行う(ステップS3164)。そして、ステップS3156に移行する。
なお、この実施の形態では、ステップS3153にて時短回数カウンタに100がセットされるようにしているが、時短回数は他の回数(例えば50回、120回など)とされていてもよい。また、複数種類の回数(例えば、20回、50回、100回)から時短回数が選択される構成とされていてもよく、その場合には、抽選によって選択された回数がステップS3153,S3162にて時短回数カウンタに設定される。ここでの抽選による選択は、例えば、時短回数決定用の乱数を抽出し、その抽出値と回数とが対応付けされた時短回数決定用テーブルを用いて、乱数の抽出値に対応付けされている回数を選択する処理を実行することによって行われるようにすればよい。
また、遊技制御用マイクロコンピュータ560は、ステップS3154,S3159において、遊技状態報知ランプを用いた確変時短状態又は確変状態となった旨の報知を行わないようにしてもよい。また、遊技制御用マイクロコンピュータ560は、ステップS3155において、確変状態への移行を通知するための演出制御コマンドを演出制御基板80に送信しないようにし、演出制御用マイクロコンピュータ100は、確変状態である旨の演出制御を行わないようにしてもよい。そのようにすれば、遊技状態が確変状態であるか否かを遊技者に認識されてしまうことを防止することができ、遊技者の遊技興趣が減退することを防止することができる。
次に、メイン処理における復旧時コマンド送信処理(ステップS94)を説明する。図27は、復旧時コマンド送信処理の一例を示すフローチャートである。復旧時コマンド送信処理において、遊技制御用マイクロコンピュータ560は、まず、遊技状態を電源断時の状態に復旧させることを通知するための停電復旧コマンドを、演出制御基板80に対して送信する(ステップS2002)。
次いで、遊技制御用マイクロコンピュータ560は、電源断時に特別図柄が可変表示の実行中であったか否かを確認する(ステップS2003)。この確認は、例えば、特別図柄プロセスフラグが特別図柄変動処理(ステップS303)を示す値であるか否かを確認することで行われる。
特別図柄の可変表示中であった場合には、遊技制御用マイクロコンピュータ560は、実行中の可変表示の表示結果を通知するために、本例では電源断によって中断した特別図柄の可変表示の開始時に送信した表示結果指定コマンドを、演出制御基板80に対して送信する(ステップS2004)。そして、特別図柄の可変表示の実行中の状態に復旧し、その電源断によって中断した特別図柄の可変表示の変動期間が未だ終了していないことを示す変動中復旧フラグをセットする(ステップS2005)。
なお、復旧時コマンド送信処理にて演出制御基板80に送信される演出制御コマンドは、上述したものに限らず、例えば、確変状態であることを通知するための演出制御コマンドなどの他のコマンドが含まれる。
次に、主基板31と払出制御基板37との間で送受信される払出制御信号について説明する。図28は、遊技制御手段から払出制御手段に対して出力される制御信号の内容の一例を示す説明図である。この実施の形態では、払出制御等に関する各種の制御を行うために、主基板31と払出制御基板37との間で複数種類の制御信号が送受信される。図28に示すように、接続確認信号は、主基板31の立ち上がり時(遊技制御手段が遊技制御処理を開始したとき)に出力され、払出制御基板37に対して主基板31が立ち上がったことを通知するための信号(主基板31の接続確認信号)である。また、接続確認信号は、賞球払出が可能な状態であることを示す。
賞球REQ信号は、賞球の払出要求時に出力状態(=オン状態)になる信号(すなわち賞球払出要求のトリガ信号)である。また、賞球REQ信号は、賞球ACK信号が受信されると、オフ状態になる。賞球個数信号は、払出要求を行う遊技球の個数(0〜15個)を指定するために出力される信号(賞球個数コマンド)である。賞球ACK信号は、賞球個数信号を受信したことを示す受信確認信号に相当する。なお、この実施の形態では、賞球ACK信号が受信されると賞球REQ信号はオフ状態になるので、賞球REQ信号は、受信確認受付信号も兼ねている。すなわち、賞球REQ信号がオフ状態になることが、受信確認受付信号が送信されたことに相当する。しかし、受信確認受付信号を、賞球REQ信号とは別の信号にしてもよい。
図29は、図28に示す各制御信号の送受信に用いられる信号線等を示すブロック図である。なお、図29には、電源断信号も示されている。図29に示すように、接続確認信号、賞球REQ信号および賞球個数信号は、遊技制御用マイクロコンピュータ560によって出力回路67を介して出力され、入力回路373Aを介して払出制御用マイクロコンピュータ370に入力される。また、賞球ACK信号は、払出制御用マイクロコンピュータ370によって出力回路373Bを介して出力され、入力回路68を介して遊技制御用マイクロコンピュータ560に入力される。さらに、電源断信号は、出力回路373Bを介して出力され、入力回路68を介して遊技制御用マイクロコンピュータ560に入力される。
接続確認信号、賞球REQ信号、賞球ACK信号および電源断信号は、それぞれ1ビットのデータであり、1本の信号線によって送信される。賞球個数信号は、0個〜15個を指定するので、4ビットのデータで構成され4本の信号線によって送信される。また、主基板31と払出制御基板37との間で、遊技制御用マイクロコンピュータ560への電源断信号の信号線と、払出制御に関わる制御信号(接続確認信号、賞球REQ信号、賞球ACK信号および賞球個数信号)の信号線とをまとめて配線することができる。よって、遊技機において、遊技制御用マイクロコンピュータ560への電源断信号に関する配線スペースを節減することができる。また、賞球REQ信号および賞球個数信号を1本の信号線によってシリアル送信するようにしてもよい。その場合には、賞球REQ信号のオンを示すコマンドデータおよびオフを示すコマンドデータ(受信確認受付信号に相当)がシリアル信号として送信される。また、賞球ACK信号をコマンドデータとしてシリアル送信するようにしてもよい。
図30は、払出制御信号の出力の仕方の一例を示すタイミング図である。図31は、図30における一部を拡大して示すタイミング図である。図30に示すように、入賞検出スイッチが遊技球の入賞を検出すると、遊技制御手段は、賞球REQ信号をオン状態にするとともに、賞球個数信号の出力状態を、入賞に応じて払い出される賞球数に応じた状態にする。なお、具体的には、遊技制御用マイクロコンピュータ560は、遊技球が遊技機に設けられている入賞領域に入賞したことが入賞検出スイッチの検出信号によって検知すると、あらかじめ決められた賞球数をバックアップRAMに形成されている総賞球数格納バッファの内容に加算する。そして、総賞球数格納バッファの内容が0でない値になったら、賞球REQ信号をオン状態にするとともに、賞球個数信号の出力状態を、入賞に応じて払い出される賞球数に応じた状態にする。
また、この実施の形態では、始動口スイッチ14aで遊技球が検出されると4個の賞球払出を行い、入賞口スイッチ33a,39a,29a,30aのいずれかで遊技球が検出されると7個の賞球払出を行い、カウントスイッチ23で遊技球が検出されると15個の賞球払出を行う。また、上述したように、賞球個数信号は4ビットで構成されているので、8ビットで表現されている00(H)〜0F(H)の賞球個数コマンドのうち、下位の4ビットが賞球個数信号によって主基板31から払出制御基板37に伝達される。以下、「00(H)〜0F(H)の賞球個数信号」のように表現することがあるが、実際には、賞球個数信号は、8ビットで表現されている00(H)〜0F(H)のうちの下位の4ビットに相当する。
払出制御手段は、賞球REQ信号の受信を確認すると、賞球個数信号の受信状態を確認し、賞球ACK信号を送信(=オン状態)にする。そして、賞球REQ信号がオフ状態になったことを確認すると、すなわち、受信確認受付信号を受信すると(この例では、賞球REQ信号がオフ状態になったことを検出すると)、賞球個数信号が示す賞球数を賞球未払出個数カウンタに加算する。
払出制御用マイクロコンピュータ370は、図31に示すように、賞球REQ信号の受信を確認すると、賞球ACK信号オン時間だけ賞球ACK信号のオン状態を継続し、賞球ACK信号オン時間が経過すると、賞球ACK信号をオフ状態にする。遊技制御用マイクロコンピュータ560は、賞球ACK信号がオフ状態に変化したことを確認すると賞球REQ信号をオフ状態にする。そのとき、賞球個数信号の出力状態をクリアしてオフ状態にする。すなわち、賞球個数信号が0個を示す状態(無効コマンドを出力する状態)にする。
なお、この実施の形態では、払出制御用マイクロコンピュータ370は、賞球REQ信号がオン状態になったことに応じて所定時間賞球ACK信号のオン状態を継続し、遊技制御用マイクロコンピュータ560は、賞球ACK信号がオフ状態に変化したことを確認すると賞球REQ信号をオフ状態にするが、遊技制御用マイクロコンピュータ560が賞球ACK信号がオン状態になったことを検出すると賞球REQ信号をオフ状態にし、払出制御用マイクロコンピュータ370が賞球REQ信号がオフ状態になったことを検出すると賞球ACK信号をオフ状態にするようにしてもよい。
図32は、ステップS31の賞球処理の一例を示すフローチャートである。賞球処理において、遊技制御用マイクロコンピュータ560は、賞球個数加算処理(ステップS201)と賞球制御処理(ステップS202)とを実行する。そして、RAM55に形成されるポート0バッファの内容をポート0に出力する(ステップS203)。なお、ポート0バッファの内容は、賞球制御処理において更新される。
賞球個数加算処理では、図33に示す賞球個数テーブルが使用される。賞球個数テーブルは、ROM54に設定されている。賞球個数テーブルの先頭アドレスには処理数(この例では「6」)が設定され、その後に、スイッチオンバッファ(2バイトのスイッチオンバッファのうちの入力ポート0に対応する方)の下位アドレス、入賞により賞球を払い出すことになる入賞口の各スイッチについてのスイッチ入力ビット判定値、賞球数が、入賞口の各スイッチのそれぞれに対応して順次設定されている。なお、スイッチ入力ビット判定値は、入力ポート0における各スイッチの検出信号が入力されるビットに対応した値である(図11参照)。また、スイッチオンバッファの上位アドレスは固定的な値(例えば7F(H))である。また、賞球個数テーブルにおいて、6つのスイッチオンバッファの下位アドレスのそれぞれには、同じデータが設定されている。なお、この実施の形態では、ROM54およびRAM55のアドレスは16ビットで指定される。
図34は、賞球個数加算処理を示すフローチャートである。賞球個数加算処理において、遊技制御用マイクロコンピュータ560は、賞球個数テーブルの先頭アドレスをポインタにセットする(ステップS211)。そして、ポインタが指すアドレスのデータ(この場合には処理数)をロードする(ステップS212)。次に、スイッチオンバッファの上位アドレス(8ビット)を2バイトのチェックポインタの上位1バイトにセットする(ステップS213)。
そして、ポインタの値を1増やし(ステップS214)、ポインタが指す賞球個数テーブルのデータ(この場合にはスイッチオンバッファの下位アドレス)をチェックポインタの下位1バイトにセットした後(ステップS215)、ポインタの値を1増やす(ステップS216)。次いで、チェックポインタが指すアドレスのデータ、すなわちスイッチオンバッファの内容をレジスタにロードし(ステップS217)、ロードした内容と、ポインタが指す賞球個数テーブルのデータ(この場合にはスイッチ入力ビット判定値)との論理積をとる(ステップS218)。この結果、スイッチオンバッファの内容がロードされたレジスタには、検査対象としているスイッチの検出信号に対応したビット以外の7ビットが0になる。そして、ポインタの値を1増やす(ステップS219)。
ステップS218における演算結果が0でなれば、すなわち、検査対象のスイッチの検出信号がオン状態であれば、ポインタが指す賞球個数テーブルのデータ(この場合には賞球個数)を賞球加算値に設定し(ステップS220,S221)、賞球加算値を、RAM55に形成されている16ビットの総賞球数格納バッファの内容に加算する(ステップS222)。加算の結果、桁上げが発生した場合には、総賞球数格納バッファの内容を65535(=FFFF(H))に設定する(ステップS223,224)。
ステップS225では処理数を1減らし、処理数が0であれば処理を終了し、処理数が0でなければステップS214に戻る(ステップS226)。また、ステップS220において、ステップS218における演算結果が0であること、すなわち、検査対象のスイッチの検出信号がオフ状態であることを確認したら、ステップS225に移行する。
図35は、ステップS202の賞球制御処理を示すフローチャートである。賞球制御処理では、遊技制御用マイクロコンピュータ560は、ステップS230の賞球異常検出処理を実行した後、賞球プロセスコードの値に応じて、ステップS231〜S235のいずれかの処理を実行する。
図36は、賞球プロセスコードの値が0の場合に実行される賞球送信待ち処理(ステップS231)を示すフローチャートである。遊技制御用マイクロコンピュータ560は、賞球送信待ち処理において、賞球ACK信号がオン状態になっているか否か確認する(ステップS241)。この段階では賞球ACK信号はオン状態になっていないはずであるから、賞球ACK信号がオン状態になっている場合には、賞球異常状態出力値(00(H))をポート0バッファにセットして処理を終了する(ステップS242)。なお、賞球異常状態出力値がポート0バッファにセットされると、ステップS203(図32参照)においてポート0バッファの内容がポート0に出力されることによって、賞球REQ信号、接続確認信号および賞球個数信号の全てがオフ状態になる(図10参照)。
賞球ACK信号がオフ状態であれば、賞球待機中出力値(10(H))をポート0バッファにセットする(ステップS243)。なお、賞球待機中出力値がポート0バッファにセットされると、ステップS203においてポート0バッファの内容がポート0に出力されることによって、賞球REQ信号がオフ状態になり、接続確認信号のオン状態が維持される(図10参照)。また、賞球個数信号が無効コマンド(00(H))を出力する状態になる。
次いで、遊技制御用マイクロコンピュータ560は、賞球タイマが0であるか否か確認する(ステップS244)。賞球タイマが0でなければ、賞球タイマの値を1減らして(ステップS245)、処理を終了する。賞球タイマは賞球処理において必要になる時間を計測するためのタイマであるが、この段階で賞球タイマの値が0でないということは、前回の払出処理が完了した後、次に賞球REQ信号をオン状態にするまでの賞球REQ待ち時間(連続して賞球払出が実行される場合に複数の賞球REQ信号のオン期間の間に間隔を設けるための時間)が終了していないことを意味する。なお、賞球タイマは、後述する賞球ACKオフ待ち処理のステップS276でセットされる。
賞球タイマの値が0であれば、遊技制御用マイクロコンピュータ560は、総賞球数格納バッファの内容を確認する(ステップS247)。その値が0であれば処理を終了し、0でなければ、賞球プロセスコードの値を1にした後(ステップS248)、処理を終了する。
図37は、賞球プロセスコードの値が1の場合に実行される賞球送信処理(ステップS232)を示すフローチャートである。遊技制御用マイクロコンピュータ560は、賞球送信処理において、総賞球数格納バッファの内容が賞球コマンド最大値(この例では「15」)よりも小さいか否か確認する(ステップS251)。総賞球数格納バッファの内容が賞球コマンド最大値以上であれば、賞球コマンド最大値を賞球個数バッファに設定する(ステップS252)。また、総賞球数格納バッファの内容が賞球コマンド最大値よりも小さい場合には、総賞球数格納バッファの内容を賞球個数バッファに設定する(ステップS253)。
その後、賞球REQ中出力値(30(H))を出力ポート0バッファにセットする(ステップS254)。なお、賞球REQ中出力値が出力ポート0バッファにセットされると、ステップS203において出力ポート0バッファの内容がポート0に出力されることによって、賞球REQ信号がオン状態になり、接続確認信号のオン状態が維持される(図10参照)。また、賞球個数バッファの内容を出力ポート0バッファの下位4ビットにセットする(ステップS255)。
この実施の形態では、賞球コマンド最大値は「15」である。従って、最大で「15」の払出数を指定する賞球個数信号が払出制御基板37に送信される。
賞球個数信号を送信すると、遊技制御用マイクロコンピュータ560は、総賞球数格納バッファの内容から、賞球個数バッファの内容(払出制御手段に指令した賞球払出個数)を減算する(ステップS256)。ここで、遊技制御用マイクロコンピュータ560は、賞球カウンタの値を+1する(ステップS257)。
また、遊技制御用マイクロコンピュータ560は、賞球タイマにACK開始判定時間値をセットする(ステップS258)。そして、賞球プロセスコードの値を2にして(ステップS259)、処理を終了する。なお、ACK開始判定時間値は、賞球ACK信号がオン状態になるか否かを監視するための時間値である。
なお、この例では、賞球個数信号を送信するための処理を実行した後にステップS256の減算処理を行うが、具体的には、ステップS254およびステップS255で賞球REQ中出力値と賞球個数バッファの内容とが出力ポート0バッファにセットされたあと、ステップS203において出力ポート0バッファの内容がポート0に出力される前に行われる。つまり、実際には、出力ポート0バッファの内容が実際にポート0に出力される前に減算処理が実行される。よって、ステップS256の処理を、図37に示すようにステップS254の処理の後に実行してもよいし、ステップS254の処理の直前に実行してもよい。いずれの場合にも、出力ポート0バッファの内容が実際にポート0に出力される前に減算処理が実行される。ただし、ステップS254およびステップS255で賞球REQ中出力値と賞球個数バッファの内容とが出力ポート0バッファにセットされ、その後にステップS203において出力ポート0バッファの内容がポート0に出力されて、賞球REQ信号が実際にオン状態となった後に、総賞球数格納バッファの内容から賞球個数バッファの内容を減算する減算処理を行うようにしてもよい。
図38は、賞球プロセスコードの値が2の場合に実行される賞球ACKオン待ち処理(ステップS233)を示すフローチャートである。遊技制御用マイクロコンピュータ560は、賞球ACKオン待ち処理において、賞球ACK信号がオン状態になったか否か確認する(ステップS261)。オン状態にならないときには、賞球タイマの値を1減らし(ステップS264)、その値が0でなければ処理を終了する(ステップS265)。賞球タイマの値が0になったら、払出制御用マイクロコンピュータ370が賞球ACK信号を送信しなかったと判断して、賞球待機中出力値(10(H))をポート0バッファにセットする(ステップS266)。そして、再送信フラグをセットし(ステップS267)、賞球プロセスコードの値を4にして(ステップS268)、処理を終了する。賞球待機中出力値(10(H))がポート0バッファにセットされたので、賞球REQ信号はオフ状態になる。なお、賞球プロセスコードの値が4になると、賞球再送信処理(ステップS235)が実行される状態になる。また、再送信フラグがセットされると、賞球異常検出処理(ステップS230)において、払出異常報知開始コマンドが演出制御基板80に対して送信される。
ステップS261において、賞球ACK信号がオン状態になったことを確認すると、遊技制御用マイクロコンピュータ560は、賞球タイマにACK終了判定時間値をセットする(ステップS262)。ACK終了判定時間値は、賞球ACK信号がオフ状態になるか否か監視するための時間値である。そして、賞球プロセスコードの値を3にして(ステップS263)、処理を終了する。
図39は、賞球プロセスコードの値が3の場合に実行される賞球ACKオフ待ち処理(ステップS234)を示すフローチャートである。遊技制御用マイクロコンピュータ560は、賞球ACKオフ待ち処理において、賞球ACK信号がオフ状態になったか否か確認する(ステップS271)。オフ状態にならないときには、賞球タイマの値を1減らし(ステップS272)、その値が0でなければ処理を終了する(ステップS273)。賞球タイマの値が0になったら、賞球プロセスコードの値を0にして(ステップS274)、処理を終了する。なお、この場合には、賞球プロセスコードの値が0の場合に実行される賞球待ち処理(ステップS231)におけるステップS241,S242で、通信が正常に完了しなかった場合の処理が実行される。
ステップS271において、賞球ACK信号がオフ状態になったことを確認すると、遊技制御用マイクロコンピュータ560は、賞球REQ信号をオフ状態にするために賞球待機中出力値(10(H))をポート0バッファにセットして(ステップS275)、賞球REQ待ち時間を賞球タイマにセットする(ステップS276)。そして、賞球プロセスコードの値を0にして(ステップS277)、処理を終了する。賞球REQ待ち時間は、次に賞球REQ信号をオン状態にするまでの待ち時間(連続して賞球払出が実行される場合に、複数の賞球REQ信号のオン期間の間に間隔を設けるための時間)である。また、通信が正常に完了したので、再送信フラグがセットされている場合には、再送信フラグをリセットする(ステップS278,S279)。
以上の処理によって、遊技制御手段は、払出条件の成立にもとづいて払い出される賞球としての遊技球の総数を特定可能に総賞球数格納バッファに記憶する。また、遊技制御手段は、総賞球数格納バッファに記憶されている賞球数にもとづいて払出制御手段に対して所定数の賞球の払出数を指定する払出指令信号(賞球REQ信号および賞球個数信号)を送信する。ここで、所定数は、総賞球数格納バッファに記憶されている賞球数が15個以上であれば15であり、15個未満であれば、総賞球数格納バッファに記憶されている賞球数である。そして、賞球払出を指定する賞球個数信号の送信を開始したときに、総賞球数格納バッファに記憶されている賞球数から賞球個数信号で指定した払出数を減算する減算処理を行う。なお、払出制御用マイクロコンピュータ370は、賞球個数信号を受信すると直ちに賞球ACK信号をオン状態にし(図50のステップS545,S546参照)、かつ、球払出装置97からの賞球払出に関わりなくオフ状態にするので(図51参照)、球払出装置97からの賞球払出に関わりなく賞球個数信号に関する通信を完了でき、遊技制御用マイクロコンピュータ560は、賞球個数信号で指定した払出数の賞球払出が完了する前に、連続的に次の賞球個数信号を送信することができる。
なお、この実施の形態では、払出条件の成立にもとづいて払い出される景品遊技媒体の総数を特定可能に記憶する景品遊技媒体数記憶手段として、総数そのものを記憶する総賞球数格納バッファが例示されたが、景品遊技媒体の総数を特定可能に記憶する景品遊技媒体数記憶手段は、各入賞領域への入賞数を記憶したり、賞球数が同じである入賞領域毎の入賞数(例えば4個の賞球数に対応した入賞口14、7個の賞球数に対応した入賞口33,39,29,30、15個の賞球数に対応した大入賞口への入賞数であって、未だ賞球払出が終了していない入賞数)を記憶するものであってもよい。その場合には、入賞領域毎の賞球数に応じた数が設定された賞球個数信号が遊技制御用マイクロコンピュータ560から払出制御用マイクロコンピュータ370に送信される。さらには、賞球個数を示す賞球個数信号を送信するのではなく、入賞があったことまたは入賞数を示す払出指令信号を遊技制御用マイクロコンピュータ560から払出制御用マイクロコンピュータ370に送信するようにしてもよい。
また、この実施の形態では、賞球REQ信号は、賞球ACK信号がオフ状態になったときにオフ状態に制御されたが、賞球REQ信号を、賞球ACK信号の状態に関わらず、所定時間だけオン状態に制御する(ワンショットパルスを出力する)ようにしてもよい。その場合には、払出制御用マイクロコンピュータ370は、賞球REQ信号がオン状態になったら賞球個数信号を受信して賞球ACK信号を送信するが、遊技制御用マイクロコンピュータ560は、賞球ACK信号を受信したら、賞球REQ信号とは異なる信号である受信確認受付信号を払出制御用マイクロコンピュータ370に送信する。
また、遊技制御用マイクロコンピュータ560は、賞球個数信号を送信したときに賞球カウンタの値を+1する。従って、賞球カウンタは、払出指令信号(賞球REQ信号および賞球個数信号)の送信回数を計数するカウンタに相当する。
図40は、賞球プロセスコードの値が4の場合に実行される賞球再送信処理(ステップS235)を示すフローチャートである。遊技制御用マイクロコンピュータ560は、賞球再送信処理において、賞球REQ中出力値(30(H))を出力ポート0バッファにセットする(ステップS281)。上述したように、賞球REQ中出力値が出力ポート0バッファにセットされると、ステップS203において出力ポート0バッファの内容がポート0に出力されることによって、賞球REQ信号がオン状態になる(図10参照)。また、賞球個数信号を再送するために、賞球個数バッファの内容を出力ポート0バッファの下位4ビットにセットする(ステップS283)。そして、賞球プロセスコードの値を2にして(ステップS284)、処理を終了する。
賞球プロセスコードの値が2に設定されることから、再度、賞球ACKオン待ち処理が実行される。再度実行される賞球ACKオン待ち処理において、再び賞球ACK信号がオン状態になったことを検出できなかった場合には、具体的には、ステップS265において賞球タイマがタイムアウトした場合には、再び賞球ACKオン待ち処理が実行されることになる。このように、遊技制御用マイクロコンピュータ560は、払出数データを受信したことを示す受信確認信号としての賞球ACK信号が受信できない場合(オン状態にならない場合)には、賞球ACK信号が受信できるまで、賞球個数信号の再送を繰り返す。なお、賞球個数信号の再送が行われるときには、賞球カウンタの加算処理(+1する処理)はなされない。
図41は、ステップS230の賞球異常検出処理を示すフローチャートである。賞球異常検出処理において、遊技制御用マイクロコンピュータ560は、再送信フラグがリセット状態からセット状態になったことを検出すると、払出異常報知開始コマンドを演出制御コマンドとして演出制御基板80に対して(具体的には演出制御用マイクロコンピュータ100に対して)送信する制御を行う(ステップS291,S292)。なお、遊技制御用マイクロコンピュータ560は、賞球再送信処理を実行してから払出異常報知開始コマンドを送信するのでなく、払出異常報知開始コマンドを演出制御基板80に送信してから賞球再送信処理を実行するようにしてもよい。
なお、演出制御用マイクロコンピュータ100に演出制御コマンドを送信する際に、遊技制御用マイクロコンピュータ560は、演出制御コマンドの種類に応じたコマンド送信テーブル(あらかじめROM54にコマンド毎に設定されている)のアドレスをポインタにセットする。そして、演出制御コマンドに応じたコマンド送信テーブルのアドレスをポインタにセットして、飾り図柄コマンド制御処理(ステップS28)において演出制御コマンドを送信する。
また、遊技制御用マイクロコンピュータ560は、再送信フラグがセット状態からリセット状態になったことを検出する(従って、セット状態が継続している場合には最初にリセット状態になったときにのみ検出される。)と、払出異常報知終了コマンドを演出制御基板80に対して(具体的には演出制御用マイクロコンピュータ100に対して)送信する制御を行う(ステップS293,S294)。
さらに、遊技制御用マイクロコンピュータ560は、賞球カウンタの値があらかじめ決められている所定値(過多検出用所定値、例えば250)以上になると、賞球過多報知コマンドを演出制御用マイクロコンピュータ100に送信する(ステップS295,S296)。また、賞球カウンタの値があらかじめ決められている所定値(不足検出用所定値、例えば0)になると、賞球不足報知コマンドを演出制御用マイクロコンピュータ100に送信する(ステップS297,S298)。
なお、賞球異常検出処理において、遊技制御用マイクロコンピュータ560は、賞球過多と賞球不足の両方を判定するのでなく、いずれか一方のみを判定するようにしてもよい。例えば、遊技制御用マイクロコンピュータ560は、賞球カウンタの値が所定値(例えば、250)以上であるか否かを判定し(ステップS295)、ステップS297の判定を実行せずに、賞球異常検出処理を終了してもよい。また、例えば、遊技制御用マイクロコンピュータ560は、ステップS295の判定を実行せずに、賞球カウンタの値が所定値(例えば、0)であるか否かを判定(ステップS297)する構成としてもよい。なお、賞球過多の判定のみを行い賞球不足の判定を行わない場合には、遊技制御用マイクロコンピュータ560は、賞球不足報知コマンドを演出制御用マイクロコンピュータ100に送信(ステップS298参照)しない。また、賞球不足の判定のみを行い賞球過多の判定を行わない場合には、遊技制御用マイクロコンピュータ560は、賞球過多報知コマンドを演出制御用マイクロコンピュータ100に送信(ステップS296参照)しない。
なお、この実施の形態では、遊技制御用マイクロコンピュータ560は、再送信フラグがリセットされると、ステップS294で払出異常報知終了コマンドを送信するが、送信しないように構成してもよい。その場合には、遊技制御用マイクロコンピュータ560が軽減される。また、その場合には、演出制御用マイクロコンピュータ100が、例えば所定時間後に、独自に払出異常報知を終了するように構成される(後述する図76におけるステップS893の判断が例えばタイムアウト監視とされる。)。
賞球カウンタには、初期値として例えば200が設定される(ステップS12)。また、全入賞計数スイッチ34が入賞球を検出したときに、賞球カウンタの値が−1され(ステップS113,S114)、賞球個数信号を送信すると、賞球カウンタの値が+1される(ステップS257)。すなわち、遊技制御用マイクロコンピュータ560は、入賞球を検出したときに、賞球カウンタのカウント値を歩進させ、賞球個数信号を送信するときに、賞球カウンタのカウント値を、入賞球を検出したときに歩進させた方向と逆方向に歩進させる。
賞球カウンタの初期値と過多検出用所定値および不足検出用所定値との間には十分なマージンが設けられている。上記の例では、マージンは、過多検出用所定値について50、不足検出用所定値について200である。すると、入賞球の検出と賞球個数信号の送信とが正常に遂行されている限り、賞球カウンタの値は、初期値から多少の増減はあるが、過多検出用所定値および不足検出用所定値に達することはない。なお、例えば、入賞が連続的に生じて、入賞の発生に対して、入賞にもとづく賞球個数信号の送信が遅れた場合には、賞球カウンタの値は200よりも小さくなるが、0にまで達することはまず考えられない。この実施の形態では、原則として、入賞が生ずると直ちに賞球個数信号の送信がなされるように制御されているからである。
よって、賞球カウンタの値が過多検出用所定値または不足検出用所定値に達した場合には、賞球過多または賞球不足が生じたと判定できる。後述するように、演出制御用マイクロコンピュータ100は、賞球過多報知コマンドおよび賞球不足報知コマンドに応じて可変表示装置9を用いて報知を行うので、遊技店員等は、賞球過多または賞球不足が生じたことを容易に認識できる。
また、この実施の形態では、遊技制御用マイクロコンピュータ560がコマンドを送信した回数にもとづいて賞球過多の検出を行う。よって、この実施の形態では、例えば、入賞領域に遊技媒体が入賞したことを検出するスイッチを不正にオンさせる不正行為が行われると、賞球カウンタの値が遂には250になって異常報知がなされる(入賞に応じて賞球個数信号が送信されて賞球カウンタは加算されるが、全入賞検出スイッチ34の検出にもとづく賞球カウンタの減算処理は行われないので)。また、主基板31から払出制御基板37へのコマンドの通信線に不正信号が与えられると、例えば、来ないはずの賞球ACK信号が受信され、ステップS241でエラー検出がなされる。また、例えば、払出制御用マイクロコンピュータ370の側に異常が生じた場合には、賞球ACK信号が送信されないことによって賞球カウンタの加算処理が行われなくなる結果、やはり、賞球カウンタの値が遂には0になって異常報知がなされる。
なお、この実施の形態では、入賞が検出されると賞球カウンタは−側に歩進され、賞球個数信号の送信がなされると+側に歩進されるが、入賞が検出されると賞球カウンタは+側に歩進され、賞球個数信号の送信がなされると−側に歩進されるようにしてもよい。
また、この実施の形態では、厳密には、入賞数に対して過多検出用所定値以上の回数の賞球個数信号の送信がなされたことを賞球過多とし、入賞数に対する賞球個数信号の送信回数が、不足検出用所定値分だけ少なくなったことを賞球不足としている。
次に、払出制御用マイクロコンピュータ370による払出制御手段の動作を説明する。図42は、払出制御用マイクロコンピュータ370における出力ポートの割り当ての例を示す説明図である。図42に示すように、出力ポート0は、ステッピングモータによる払出モータ289に供給される各相の信号とを出力するための出力ポートである。また、出力ポート1は、遊技制御用マイクロコンピュータ560への賞球ACK信号と、遊技機外部に出力される賞球中信号、賞球情報、球貸し情報および遊技機エラー状態信号を出力するための出力ポートである。出力ポート2は、7セグメントLEDによるエラー表示LED374の各セグメント出力の出力ポートである。
なお、払出制御基板37には、図42には示されていないが、カードユニット50へのEXS信号およびPRDY信号を出力するための出力ポート3も設けられている。
図43は、払出制御用マイクロコンピュータ370における入力ポートのビット割り当ての例を示す説明図である。図43に示すように、入力ポート0のビット0〜3には、4ビットの賞球個数信号が入力され、ビット4〜7には、それぞれ、主基板31からの接続確認信号、主基板31からの賞球REQ信号、球切れスイッチ187の検出信号、払出モータ位置センサ295の検出信号が入力される。また、入力ポート1のビット1〜3には、それぞれ、払出個数カウントスイッチ301の検出信号、エラー解除スイッチ375からの操作信号、満タンスイッチ48の検出信号が入力される。入力ポート1のビット4〜6には、それぞれ、カードユニット50からのVL信号、BRDY信号、BRQ信号が入力される。入力ポート2には、主基板31からのクリアスイッチ921の出力信号(クリア信号)、および電源基板910からの電源断信号が入力される。
次に、払出制御用マイクロコンピュータ370の動作について説明する。図44は、払出制御手段が実行するメイン処理を示すフローチャートである。メイン処理では、払出制御用マイクロコンピュータ370は、まず、必要な初期設定を行う。すなわち、払出制御用マイクロコンピュータ370は、まず、割込禁止に設定する(ステップS701)。次に、割込モードの設定を行い(ステップS702)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS703)。また、払出制御用マイクロコンピュータ370は、内蔵デバイスレジスタの初期化を行い(ステップS704)、RAMをアクセス可能状態に設定する(ステップS705)。また、賞球未払出個数カウンタ初期値として0000(H)をセットする(ステップS706)。
この実施の形態では、内蔵CTCのうちの一つのチャネルがタイマモードで使用される。従って、ステップS704の内蔵デバイスレジスタの設定処理において、使用するチャネルをタイマモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。そして、そのチャネルによる割込がタイマ割込として用いられる。タイマ割込を例えば2ms毎に発生させたい場合は、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
なお、タイマモードに設定されたチャネルに設定される割込ベクタは、タイマ割込処理の先頭アドレスに相当するものである。具体的には、Iレジスタに設定された値と割込ベクタとでタイマ割込処理の先頭アドレスが特定される。タイマ割込処理では、払出手段を制御する払出制御処理(具体的には、後述するタイマ割込処理によるステップS752〜S760の処理。少なくとも主基板からの賞球払出に関する指令信号に応じて球払出装置97を駆動する処理を含み、球貸し要求に応じて球払出装置97を駆動する処理が含まれていてもよい。)が実行される。
次いで、入力ポート2を介して入力されるクリアスイッチ921の出力信号(クリア信号)の状態を確認する(ステップS707)。その確認においてオンを検出した場合には、払出制御用マイクロコンピュータ370は、初期化処理を実行する(ステップS711〜ステップS714)。クリア信号がオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS708)。電力供給停止時処理が行われていたか否かは、後述する電力供給停止時処理においてバックアップRAM領域に保存されるバックアップ監視タイマの値が、電力供給停止時処理を実行したことに応じた値(例えば2)になっているか否かによって確認される。なお、そのような確認の仕方は一例であって、例えば、電力供給停止時処理においてバックアップフラグ領域に電力供給停止時処理を実行したことを示すフラグをセットし、ステップS708において、そのフラグがセットされていることを確認したら電力供給停止時処理が行われたと判定してもよい。
なお、払出制御用マイクロコンピュータ370は、遊技制御用マイクロコンピュータ560の場合(ステップS5,S80)と同様に、ステップS707の処理を実行する前に、電源断信号の状態にもとづいて電源電圧が安定したか否か判定するようにしてもよい。また、電源断信号の状態にもとづく判定に代えて、所定期間の短い遅延時間をおくことによって電源電圧の安定を待つようにしてもよい。
ステップS708で電力供給停止時処理が行われたと判定したら、払出制御用マイクロコンピュータ370は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS709)。この実施の形態では、クリアデータ(00)をチェックサムデータエリアにセットし、チェックサム算出開始アドレスをポインタにセットする。また、チェックサムの対象になるデータ数に対応するチェックサム算出回数をセットする。そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する。演算結果をチェックサムデータエリアにストアするとともに、ポインタの値を1増やし、チェックサム算出回数の値を1減算する。以上の処理が、チェックサム算出回数の値が0になるまで繰り返される。チェックサム算出回数の値が0になったら、遊技制御用マイクロコンピュータ560は、チェックサムデータエリアの内容の各ビットの値を反転し、反転後のデータをチェックサムにする。
後述する電力供給停止時処理において、上記の処理と同様の処理(図46に示す処理)によってチェックサムが算出され、チェックサムはバックアップRAM領域に保存されている。ステップS709では、算出したチェックサムと保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、払出制御状態復旧処理を実行せず、初期化処理(ステップS711〜S714の処理)を実行する。
チェック結果が正常であれば、払出制御用マイクロコンピュータ370は、払出制御状態復旧処理を行う。具体的には、賞球未払出個数カウンタ初期値として、バックアップRAMに形成されている賞球未払出個数カウンタの値をセットする(ステップS710)。そして、ステップS711以降の処理を実行する。
初期化処理では、払出制御用マイクロコンピュータ370は、まず、RAMクリア処理を行う(ステップS711)。また、RAM領域のフラグやカウンタなどに初期値を設定する(ステップS712)。ステップS712の処理には、賞球未払出個数カウンタ初期値を賞球未払出個数カウンタにセットする処理が含まれる。従って、払出制御状態復旧処理(ステップS710)が実行された場合には、バックアップRAMに保存されていた賞球未払出個数カウンタの値が、あらためて賞球未払出個数カウンタにセットされる。換言すれば、バックアップRAMに保存されていた賞球未払出個数カウンタの値がそのまま使用される。
そして、初期設定処理のステップS701において割込禁止にされているので、初期化処理を終える前に割込を許可する状態に設定する(ステップS714)。その後、タイマ割込の発生を監視するループ処理に入る。
上記のように、この実施の形態では、払出制御用マイクロコンピュータ370の内蔵CTCが繰り返しタイマ割込を発生するように設定される。そして、タイマ割込が発生すると、払出制御用マイクロコンピュータ370は、タイマ割込処理を実行する。
図45は、払出制御手段が実行するタイマ割込処理の例を示すフローチャートである。タイマ割込処理において、払出制御用マイクロコンピュータ370は、電源断信号が出力されたか否かを監視する電源断処理を実行する(ステップS751)。その後、ステップS752以降の払出制御処理を実行する。払出制御処理では、払出制御用マイクロコンピュータ370は、まず、入力判定処理を行う(ステップS752)。入力判定処理は、入力ポート0および入力ポート1の状態を検出して検出結果をRAMの所定の2バイト(入力状態フラグと呼ぶ。)に反映する処理である。なお、払出制御処理において、入力ポート0および入力ポート1の状態にもとづいて制御を行う場合には、直接入力ポートの状態をチェックするのではなく、入力状態フラグの状態をチェックする。
次に、払出制御用マイクロコンピュータ370は、払出モータ制御処理を実行する(ステップS753)。払出モータ制御処理では、払出モータ289を駆動すべきときには、払出モータφ1〜φ4のパターンを出力ポート0に出力するための処理を行う。
また、払出制御用マイクロコンピュータ370は、カードユニット50と通信を行うプリペイドカードユニット制御処理を実行する(ステップS754)。次いで、払出制御用マイクロコンピュータ370は、主基板31の遊技制御手段と通信を行う主制御通信処理を実行する(ステップS755)。さらに、カードユニット50からの球貸し要求に応じて貸し球を払い出す制御を行い、また、主基板からの賞球個数信号が示す個数の賞球を払い出す制御を行う賞球球貸し制御処理を実行する(ステップS756)。
そして、払出制御用マイクロコンピュータ370は、各種のエラーを検出するエラー処理を実行する(ステップS757)。また、遊技機外部に出力される賞球情報や球貸し情報を出力するための情報出力処理を実行する(ステップS758)。また、エラー処理の結果に応じてエラー表示LED374に所定の表示を行う表示制御処理を実行する(ステップS759)。
また、この実施の形態では、出力ポートの出力状態に対応したRAM領域(出力ポート0バッファ、出力ポート1バッファ、出力ポート2バッファ)が設けられているのであるが、払出制御用マイクロコンピュータ370は、出力ポート0バッファ、出力ポート1バッファおよび出力ポート2バッファの内容を出力ポートに出力する(ステップS760:出力処理)。出力ポート0バッファ、出力ポート1バッファおよび出力ポート2バッファは、払出モータ制御処理(ステップS753)、プリペイドカードユニット制御処理(ステップS754)、主制御通信処理(ステップS755)、情報出力処理(ステップS758)および表示制御処理(ステップS759)で更新される。
図46および図47は、ステップS751の電源断処理の一例を示すフローチャートである。電源断処理において、払出制御用マイクロコンピュータ370は、まず、電源断信号が出力されているか否か(オン状態になっているか否か)確認する(ステップS901)。オン状態でなければ、払出制御基板37が備えているRAMに形成されるバックアップ監視タイマの値を0クリアする(ステップS902)。オン状態であれば、RAMに形成されるバックアップ監視タイマの値を1増やす(ステップS903)。そして、バックアップ監視タイマの値が判定値(例えば2)と一致すれば(ステップS904)、ステップS911以降の電力供給停止時処理を実行する。つまり、払出制御を実行する状態から払出制御の制御状態を保存させるための電力供給停止時処理(電源断時制御処理)を実行する状態に移行する。
バックアップ監視タイマと判定値とを用いることによって、判定値に相当する時間だけ電源断信号のオン状態が継続したら、電力供給停止時処理が開始される。すなわち、ノイズ等で一瞬電源断信号のオン状態が発生しても、誤って電力供給停止時処理が開始されるようなことはない。なお、バックアップ監視タイマの値は、遊技機への電力供給が停止しても、所定期間はバックアップ電源によって保存される。従って、メイン処理におけるステップS708では、バックアップ監視タイマの値が判定値と同じ値になっていることによって、電力供給停止時処理の処理結果が保存されていることを確認できる。
電力供給停止時処理において、払出制御用マイクロコンピュータ370は、パリティデータを作成する(ステップS911〜S920)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS911)、電力供給停止時でも内容が保存されるべきRAM領域の先頭アドレスに相当するチェックサム算出開始アドレスをポインタにセットする(ステップS912)。また、電力供給停止時でも内容が保存されるべきRAM領域の最終アドレスに相当するチェックサム算出回数をセットする(ステップS913)。
次いで、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS914)。演算結果をチェックサムデータエリアにストアするとともに(ステップS915)、ポインタの値を1増やし(ステップS916)、チェックサム算出回数の値を1減算する(ステップS917)。そして、ステップS914〜S917の処理を、チェックサム算出回数の値が0になるまで繰り返す(ステップS918)。
チェックサム算出回数の値が0になったら、払出制御用マイクロコンピュータ370は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS919)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS920)。このデータが、電源投入時にチェックされるパリティデータになる。次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS921)。以後、内蔵RAM55のアクセスができなくなる。
さらに、払出制御用マイクロコンピュータ370は、ROM54に格納されているポートクリア設定テーブルの先頭アドレスをポインタにセットする(ステップS922)。ポートクリア設定テーブルにおいて、先頭アドレスには処理数(クリアすべき出力ポートの数)が設定され、次いで、出力ポートのアドレスおよび出力値データ(クリアデータ:出力ポートの各ビットのオフ状態の値)が、処理数分の出力ポートについて順次設定されている。
払出制御用マイクロコンピュータ370は、ポインタが指すアドレスのデータ(すなわち処理数)をロードする(ステップS923)。また、ポインタの値を1増やし(ステップS924)、ポインタが指すアドレスのデータ(すなわち出力ポートのアドレス)をロードする(ステップS925)。さらに、ポインタの値を1増やし(ステップS926)、ポインタが指すアドレスのデータ(すなわち出力値データ)をロードする(ステップS927)。そして、出力値データを出力ポートに出力する(ステップS928)。その後、処理数を1減らし(ステップS929)、処理数が0でなければステップS924に戻る(ステップS930)。処理数が0であれば(ステップS930のY)、すなわち、クリアすべき出力ポートを全てクリアしたら、タイマ割込を停止し(ステップS931)、ループ処理に入る。
ループ処理では、電源断信号がオフ状態になったか否かを監視する(ステップS932)。電源断信号がオフ状態になった場合には、復帰アドレスとして、電源投入時実行アドレス(ステップS701のアドレス)を設定してリターン命令を実行する(ステップS933)。すなわち、メイン処理に戻る。具体的には、遊技機に設けられている遊技用の装置(球払出装置97など)を制御する状態に戻る。
以上の処理によって、電力供給が停止する場合には、ステップS911〜S931の電力供給停止時処理とが実行され、電力供給停止時処理が実行されたことを示すデータ(バックアップあり指定値およびチェックサム)がバックアップRAMへストアされ、RAMアクセスが禁止状態にされ、出力ポートがクリアされ、かつ、払出制御処理を実行するためのタイマ割込が禁止状態に設定される。なお、電源断信号が払出制御用マイクロコンピュータ370の入力ポートに入力される場合には、電力供給が停止するときに、電源断信号を主基板31に対して出力する処理も実行される。
なお、払出制御用マイクロコンピュータ370が、電力供給停止の直前に遊技制御用マイクロコンピュータ560が送信した払出数データを確実に受信できるようにするために、払出制御用マイクロコンピュータ370に電源断信号が入力されるタイミングを遅らせて、払出制御用マイクロコンピュータ370が電力供給停止時処理を開始するタイミングを遅らせるような構成にしてもよい。ハードウェアによる遅延回路等を設けない場合には、電力供給停止時処理において所定期間払出指令信号の受信処理を行うようにしてもよい。
また、この実施の形態では、払出制御基板37が備えるRAMの全領域がバックアップ電源によって電源バックアップ(遊技機への電力供給が停止しても所定期間はRAMの内容が保存されること)されている。従って、ステップS911〜S931の処理によって、バックアップ監視タイマの値とともに、電源断信号が出力されたときのRAMの内容にもとづくチェックサムもRAMに保存される。遊技機への電力供給が停止した後、所定期間内に電力供給が復旧したら、払出制御手段は、上述したステップS710の処理によって、RAMに保存されているデータ(電力供給が停止した直前の払出制御手段による制御状態である払出状態を示すデータ(例えば、賞球未払出個数カウンタの値等)を含む)に従って、払出状態を、電力供給が停止した直前の状態に戻すことができる。なお、電力供給停止の期間が所定期間を越えたらバックアップ監視タイマの値とチェックサムとが正規の値とは異なるはずであるから、その場合には、ステップS711〜S714の初期化処理が実行される。
以上のように、電力供給停止時処理(電力の供給停止のための準備処理)によって、払出制御状態を電力供給が停止した直前の状態に戻すためのデータが確実に変動データ記憶手段(この例では払出制御基板37が備えるRAMの全領域)に保存される。よって、停電等による電源断が生じても、所定期間内に電源が復旧すれば、払出制御状態を電力供給が停止した直前の状態に戻すことができる。なお、払出制御基板37が備えるRAMの全領域が電源バックアップされるのではなく、払出制御状態を電力供給が停止した直前の状態に戻すためのデータを記憶する領域のみが電源バックアップされるようにしてもよい。
また、電源断信号がオフ状態になった場合には、ステップS701に戻る。その場合、電力供給停止時処理が実行されたことを示すデータが設定されているので、ステップS710の払出制御状態復旧処理が実行される。よって、電力供給停止時処理を実行した後に電源監視手段からの検出信号がオフ状態になったときには、払出制御処理を実行する状態に戻る。従って、電源瞬断等が生じても、払出制御処理が停止してしまうようなことはなく、自動的に、払出制御処理が続行される。
さらに電源電圧が低下し、払出制御用マイクロコンピュータ370および遊技制御用マイクロコンピュータ560での電力供給停止時処理が完了したあと、電源監視回路920によって監視されているVCCが+4.5V以下になると、リセット信号がローレベルにされ、払出制御用マイクロコンピュータ370および遊技制御用マイクロコンピュータ560にローレベルのリセット信号が入力されて動作停止状態になる。
図48は、ステップS753の払出モータ制御処理を示すフローチャートである。払出モータ制御処理において、払出制御用マイクロコンピュータ370は、払出モータ制御コードの値に応じて、ステップS521〜S526のいずれかの処理を実行する。
払出モータ制御コードの値が0の場合に実行される払出モータ通常処理(ステップS521)では、払出制御用マイクロコンピュータ370は、ポインタを、ROMに格納されているテーブルの先頭アドレスにセットする。払出モータ通常処理設定テーブルには、球払出時の払出モータ289を回転させるための各ステップの励磁パターン(払出モータφ1〜φ4)のデータが順次設定されている払出モータ励磁パターンテーブルが格納されている。
払出モータ制御コードの値が1の場合に実行される払出モータ起動準備処理(ステップS522)では、払出制御用マイクロコンピュータ370は、出力ポート0の出力状態に対応した出力ポート0バッファのビット4〜7に励磁パターンの初期値を設定する等の処理を行う。
払出モータ制御コードの値が2の場合に実行される払出モータスローアップ処理(ステップS523)では、払出制御用マイクロコンピュータ370は、払出モータ289を滑らかに回転開始させるために、定速処理の場合よりも長い間隔で、かつ、徐々に定速処理の場合の時間間隔に近づくような時間間隔で、払出モータ励磁パターンテーブルの内容を読み出して出力ポート0の出力状態に対応した出力ポート0バッファのビット4〜7に設定する。読み出しに際して、ポインタが指すアドレスの払出モータ励磁パターンテーブルの内容を読み出すとともに、ポインタの値を+1する。
払出モータ制御コードの値が3の場合に実行される払出モータ定速処理(ステップS524)では、払出制御用マイクロコンピュータ370は、定期的に払出モータ励磁パターンテーブルの内容を読み出して出力ポート0の出力状態に対応した出力ポート0バッファのビット4〜7に設定する。
払出モータ制御コードの値が4の場合に実行される払出モータブレーキ処理(ステップS525)では、払出制御用マイクロコンピュータ370は、払出モータ289を滑らかに停止させるために、定速処理の場合よりも長い間隔で、かつ、徐々に定速処理の場合の時間間隔から遠ざかるような時間間隔で、払出モータ励磁パターンテーブルの内容を読み出して出力ポート0の出力状態に対応した出力ポート0バッファのビット4〜7に設定する。
払出モータ制御コードの値が5の場合に実行される球噛み時払出モータブレーキ処理(ステップS526)では、払出制御用マイクロコンピュータ370は、球噛みを解除するための回転の場合に、払出モータ289を滑らかに停止させるために、球噛みを解除するための払出モータ289の回転の場合よりも長い間隔で、かつ、徐々に定速処理の場合の時間間隔から遠ざかるような時間間隔で、払出モータ励磁パターンテーブルの内容を読み出して出力ポート0の出力状態に対応した出力ポート0バッファのビット4〜7に設定する。
図49は、ステップS755の主制御通信処理を示すフローチャートである。主制御通信処理では、払出制御用マイクロコンピュータ370は、主制御通信制御コードの値に応じて、ステップS531〜S533のいずれかの処理を実行する。
図50は、主制御通信制御コードの値が0の場合に実行される主制御通信通常処理(ステップS531)を示すフローチャートである。主制御通信通常処理において、払出制御用マイクロコンピュータ370は、エラービット(主制御未接続エラービットまたは賞球REQ信号エラービット)がオンしている場合には、以降の処理を実行せずに処理を終了する(ステップS541)。ステップS541では、エラーフラグ中の2つのビットのうち1つでもセットされていたら、エラービットがセットされていると判断する。
ステップS541の条件が成立せず、接続確認信号がオン状態である場合には、払出制御用マイクロコンピュータ370は、賞球REQ信号がオン状態になっているか否か確認する(ステップS543,S544)。なお、接続確認信号がオン状態であるということは、電力供給がなされ遊技制御手段において遊技の進行を制御可能な状態であることを意味し、接続確認信号がオフ状態であるということは、電力供給停止時処理が開始され遊技制御手段において遊技の進行が不能な状態であることを意味する(接続確認信号は、電力供給停止時処理における出力ポートクリア処理でオフ状態にされる。)。
賞球REQ信号がオン状態になっている場合には、賞球個数信号が示す賞球数を賞球受信バッファに格納し(ステップS545)、賞球ACK信号をオン状態にするための処理を行う。具体的には、出力ポート1の出力状態に対応した出力ポート1バッファにおける賞球ACK信号に対応したビット(賞球ACK出力ビット位置=ビット4)をオン状態にセットする(ステップS546)。また、主制御通信制御タイマに賞球ACK信号出力時間に相当する値をセットする(ステップS547)。そして、主制御通信制御コードの値を1にして(ステップS548)、処理を終了する。なお、賞球受信バッファは、RAMに形成されている。
図51は、主制御通信制御コードの値が1の場合に実行される主制御通信中処理(ステップS532)を示すフローチャートである。主制御通信中処理において、払出制御用マイクロコンピュータ370は、接続確認信号がオン状態であれば(ステップS551)、賞球REQ信号の状態を確認する(ステップS552)。賞球REQ信号がオフ状態になっていたら、エラーフラグのうち賞球REQ信号エラービットをセットする(ステップS553)。この段階で、直ちに賞球REQ信号がオフ状態になってしまうのはおかしいからである。
次いで、払出制御用CPU371は、主制御通信制御タイマの値を確認し(ステップS554)、0になっていなければ主制御通信制御タイマの値を1減算して(ステップS555)処理を終了する。主制御通信制御タイマの値が0になっていたら、賞球ACK信号をオフ状態にするための処理を行う。具体的には、出力ポート1の出力状態に対応した出力ポート1バッファにおける賞球ACK信号に対応したビットをオフ状態に設定する(ステップS556)。また、主制御通信制御タイマに賞球REQ信号オフ監視時間をセットする(ステップS557)。そして、主制御通信制御コードの値を2にして(ステップS558)、処理を終了する。
なお、接続確認信号がオフ状態になった場合には、ステップS554で主制御通信制御タイマがタイムアウトした後、ステップS533の主制御通信終了処理を経て、ステップS531の主制御通信通常処理を実行する状態に戻る。また、賞球REQ信号エラービットがセットされた場合も同様である。
図52は、主制御通信制御コードの値が2の場合に実行される主制御通信終了処理(ステップS533)を示すフローチャートである。主制御通信終了処理において、払出制御用マイクロコンピュータ370は、エラービット(主制御未接続エラービットまたは賞球REQ信号エラービット)がオンしている場合には、ステップS567に移行する(ステップS561)。また、接続確認信号がオフ状態である場合にもステップS567に移行する(ステップS562)。エラービットがともにオフ状態であって接続確認信号がオン状態である場合には、賞球REQ信号がオフ状態になったか否かを確認する(ステップS563)。
賞球REQ信号がオフ状態になったということは、通信が正常に完了したことを意味する。すなわち、遊技制御用マイクロコンピュータ560が、受信確認信号としての賞球ACK信号を受信したことを示す受信確認受付信号を送信したことを意味する。そこで、払出制御用マイクロコンピュータ370は、賞球受信バッファの内容を、賞球未払出個数カウンタの内容に加算する(ステップS568)。その後、ステップS567に移行する。このように、この実施の形態では、賞球個数信号に関わる通信が正常に完了したときに、賞球払出制御に用いられる賞球未払出個数カウンタの内容が更新される。
賞球REQ信号がオフ状態になっていない場合には、主制御通信制御タイマの値を確認する(ステップS564)。主制御通信制御タイマの値が0になっていなければ主制御通信制御タイマの値を−1する(ステップS565)。主制御通信制御タイマの値が0になっていたら、監視時間内に賞球REQ信号がオフしなかったとして、エラーフラグのうち賞球REQ信号エラービットをセットし(ステップS566)、ステップS567に移行する。
ステップS567では、主制御通信制御コードの値を0にして、処理を終了する。
以上のようにして、払出制御用マイクロコンピュータ370は、賞球個数信号を受信し、賞球個数信号に関わる通信が正常に完了したときに賞球未払出個数カウンタの設定を行ったが(ステップS568参照)、ステップS545の処理に代えて、賞球個数信号が示す個数を賞球未払出個数カウンタに設定するようにしてもよい。その場合には、賞球個数信号を受信したときに賞球未払出個数カウンタに0でない値が設定されるので、賞球個数信号を受信したときに、賞球球貸し制御処理において賞球払出が開始されることになる(後述するステップS631参照)。
そのように構成した場合には、ステップS568の処理は実行されないが、受信確認受付信号としてのオフ状態の賞球REQ信号が検出されずにタイムアウトしたときには、やはり、賞球REQエラービットがセットされる(ステップS566)。従って、それ以後、払出制御禁止状態として、賞球未払出個数カウンタが未払出の賞球があることを示していても払出制御を停止する状態(例えば、ステップS566で賞球REQエラービットがセットされたことに応じて、後述するステップS621で以降の処理を行わない状態)に制御される。また、払出制御禁止状態として、払出制御用記憶手段への未払出数データの記憶を禁止する状態(例えば、賞球REQエラービットがセットされたことに応じて、以後の賞球個数信号の受信が不能になり、その結果、以後の賞球未払出個数カウンタへの設定がなされない状態)に制御される。例えば、払出制御禁止状態に制御されると、ステップS568において賞球未払出カウンタへの加算処理がなされなくなる。また、例えば、ステップS545の処理に代えて賞球個数信号が示す個数を賞球未払出個数カウンタに設定するように構成する場合に、払出制御禁止状態に制御されると、ステップS541でエラービットがオンしていると判断され、主制御通信通常処理におけるステップS543〜S548の処理が実行されなくなる。従って、例えば、賞球ACK信号の通信線が断線したり、賞球ACK信号の通信線に対する不正行為がなされたりした場合に、上述した制御では遊技制御用マイクロコンピュータ560は賞球個数信号を再送することになるが、払出制御用マイクロコンピュータ370は再送にもとづく賞球個数信号を受信せず、賞球未払出個数カウンタへの加算処理はなされないので過剰に賞球を払い出してしまうことが防止される。
また、賞球REQ信号とは別に受信確認受付信号を用いてよいことを上述したが(その場合、賞球REQ信号は払出数データとしての賞球個数信号の取り込みを要求する信号のみの役割を果たす。)、その場合には、遊技制御用マイクロコンピュータ560は、例えば、図38に示すステップS262において賞球REQ信号をオフ状態にするための制御も行う。そして、図39に示すステップS275において、賞球REQ信号をオフ状態にするための制御に代えて、受信確認受付信号(例えば、所定時間幅の1パルス)を送信する制御を行う。また、払出制御用マイクロコンピュータ370は、図51に示すステップS552,S553の処理を実行せず、ステップS563では、賞球REQ信号がオフ状態になるのを監視する制御に代えて、遊技制御用マイクロコンピュータ560からの受信確認受付信号を受信したか否かを監視する制御を行う。
その場合にも、払出制御用マイクロコンピュータ370は、受信確認受付信号を受信したときに賞球個数信号が示す個数を賞球未払出個数カウンタに設定するのではなく、賞球REQ信号を受信したときに、図50に示すステップS545において賞球個数信号が示す個数を賞球未払出個数カウンタに設定する処理を行うようにしてもよい。そして、そのように構成した場合には、受信確認受付信号が受信されずにタイムアウトしたときには(ステップS564)、エラービット(この場合も、便宜上、賞球REQエラービットと呼ぶ)がセットされる。従って、それ以後、払出制御禁止状態として、賞球未払出個数カウンタが未払出の賞球があることを示していても払出制御を停止する状態(例えば、ステップS566で賞球REQエラービットがセットされたことに応じて、後述するステップS621で以降の処理を行わない状態)に制御される。また、払出制御禁止状態として、払出制御用記憶手段への未払出数データの記憶を禁止する状態(例えば、賞球REQエラービットがセットされたことに応じて、以後の賞球個数信号の受信が不能になり、その結果、以後の賞球未払出個数カウンタへの設定がなされない状態)に制御される。例えば、払出制御禁止状態に制御されると、ステップS568において賞球未払出カウンタへの加算処理がなされなくなる。また、例えば、ステップS545の処理に代えて賞球個数信号が示す個数を賞球未払出個数カウンタに設定するように構成する場合に、払出制御禁止状態に制御されると、ステップS541でエラービットがオンしていると判断され、主制御通信通常処理におけるステップS543〜S548の処理が実行されなくなる。従って、例えば、賞球ACK信号の通信線が断線したり、賞球ACK信号の通信線に対する不正行為がなされたりした場合に、上述した制御では遊技制御用マイクロコンピュータ560は賞球個数信号を再送することになるが、払出制御用マイクロコンピュータ370は再送にもとづく賞球個数信号を受信せず、賞球未払出個数カウンタへの加算処理はなされないので過剰に賞球を払い出してしまうことが防止される。
図53は、ステップS756の賞球球貸し制御処理を示すフローチャートである。賞球球貸し制御処理において、払出制御用マイクロコンピュータ370は、払出個数カウントスイッチ301の検出信号がオン状態になったことを確認したら(ステップS601)、球貸し中であれば球貸し未払出個数カウンタの値を1減らし(ステップS602,S604)、球貸し中でなければ賞球未払出個数カウンタの値を1減らす(ステップS602,S603)。次に、RAMに形成されている払出制御状態フラグの払出球検知ビットをセットする(ステップS605)。払出球検知ビットは、払出通過待ち処理において、1回の賞球払出処理(最大15個)または1回の球貸し処理において(25個の払出)、払出モータ289を駆動したにもかかわらず遊技球が1個も払出個数カウントスイッチ301を通過しなかったことを検知するために用いられる。その後、払出制御コードの値に応じてステップS610〜S612のいずれかの処理を実行する。
賞球球貸し制御処理において、払出個数カウントスイッチ301の検出信号の確認や未払出個数カウンタの減算処理を行うときには、エラービットのチェックは実行されない。従って、遊技球の払い出しに関わるエラー状態であっても、払出個数カウントスイッチ301によって遊技球の払い出しが検出される毎に、払い出された遊技球が貸し球であれば球貸し未払出個数カウンタの値を1減算し、賞球であれば賞球未払出個数カウンタの値を1減算する処理を実行する。よって、払い出しに関わるエラーが発生しても、未払出の遊技球数を正確に管理することができる。すなわち、払出制御用マイクロコンピュータ370がエラーの発生を検出する前に球払出装置97から払い出された遊技球は、払い出された時点からやや遅れて払出個数カウントスイッチ301によって検出されるのであるが、払出制御用マイクロコンピュータ370は、球払出装置97から遊技球が払い出された後、その遊技球が払出個数カウントスイッチ301によって検出される前にエラーの発生を検出したような場合に、エラーの発生を検出する前に球払出装置97から払い出された遊技球を、賞球未払出個数カウンタまたは球貸し未払出個数カウンタに反映できる。
図54は、払出制御コードが0の場合に実行される払出開始待ち処理(ステップS610)を示すフローチャートである。払出開始待ち処理において、払出制御用マイクロコンピュータ370は、エラービット(全てのエラービット(図59参照)のうちの1つ以上)がセットされていたら、以降の処理を実行しない(ステップS621)。エラーフラグにおけるエラービットには、主基板未接続エラーのビットが含まれている。また、主基板未接続エラーは主基板31からの接続確認信号がオフ状態であるときにセットされる。従って、払出制御用マイクロコンピュータ370は、遊技機に対して電力供給が開始された後、接続確認信号がオン状態になったことを条件に、実質的な制御を開始する。接続確認信号がオン状態であるということは、電力供給がなされ遊技制御手段において遊技の進行を制御可能な状態であるので、遊技の進行に応じた賞球の払出制御が実行可能であることを意味する。一方、接続確認信号がオフ状態であるということは、電力供給が停止され遊技制御手段において遊技の進行が不能な状態であるので、遊技の進行に応じた賞球の払出制御が実行不可能であることを意味する。よって、払出制御用マイクロコンピュータ370は、主基板未接続エラーのビットがセットされているときには、賞球の払出制御を停止する。このように、接続確認信号により接続状態の異常を検出したときには、払出制御の実行を停止するように構成されているので、遊技制御用マイクロコンピュータ560と払出制御用マイクロコンピュータ370との間の接続状態に異常が発生しているときの払出制御の実行を規制することができる。なお、遊技制御用マイクロコンピュータ560は、賞球ACK信号についての異常を検出した場合にも接続確認信号をオフ状態にする(例えば、ステップS241,S242)。
また、BRDY信号がオン状態でなければ、ステップS631以降の賞球払出のための処理を実行する。BRDY信号がオン状態であって、さらに、球貸し要求信号であるBRQ信号がオン状態になっていたら球貸し動作中フラグをセットする(ステップS623,S624)。そして、球貸し未払出個数カウンタに「25」をセットし(ステップS625)、払出モータ回転回数バッファに「25」をセットする(ステップS626)。
払出モータ回転回数バッファは、払出モータ制御処理(ステップS753)において参照される。すなわち、払出モータ制御処理では、払出モータ回転回数バッファにセットされた値に対応した回転数分だけ払出モータ289を回転させる制御が実行される。
その後、払出制御用マイクロコンピュータ370は、払出モータ制御処理で実行される処理を選択するための払出モータ制御コードに、払出モータ起動準備処理(ステップS522)に応じた値(具体的は「1」)をセットし(ステップS627)、払出制御コードの値を1にして(ステップS628)、処理を終了する。
ステップS631では、払出制御用マイクロコンピュータ370は、賞球未払出個数カウンタの値が0であるか否かを確認する(ステップS631)。0であれば処理を終了する。賞球未払出個数カウンタには、主制御通信終了処理におけるステップS568において、すなわち、主基板31の遊技制御用マイクロコンピュータ560との間で払出指令信号に関わる通信が正常に完了したときに、0でない値(賞球個数信号が示す数)が加算されている。賞球未払出個数カウンタの値が0でない場合には、15以上であるか否か確認する(ステップS632)。15未満であれば、払出モータ回転回数バッファに賞球未払出個数カウンタの値をセットし(ステップS633)、15以上であれば、払出モータ回転回数バッファに「15」をセットする。そして、賞球動作中フラグをセットし(ステップS635)、ステップS627に移行する。
図55は、払出制御コードが1の場合に実行される払出モータ停止待ち処理(ステップS611)を示すフローチャートである。払出モータ停止待ち処理において、払出制御用マイクロコンピュータ370は、払出動作が終了したか否か確認する(ステップS641)。払出制御用マイクロコンピュータ370は、例えば、払出モータ制御処理における払出モータブレーキ処理(ステップS525)が終了するときにその旨のフラグをセットし、ステップS641においてそのフラグを確認することによって払出動作が終了したか否かを確認することができる。
払出動作が終了した場合には、払出制御用マイクロコンピュータ370は、払出制御監視タイマに払出通過監視時間をセットする(ステップS642)。払出通過監視時間は、最後の払出球が払出モータ289によって払い出されてから払出個数カウントスイッチ301を通過するまでの時間に、余裕を持たせた時間である。そして、払出制御コードの値を2にして(ステップS643)、処理を終了する。
図56〜図58は、払出制御コードの値が2の場合に実行される払出通過待ち処理(ステップS612)を示すフローチャートである。払出通過待ち処理では、賞球払出が行われているときには、賞球未払出個数カウンタの値が0になっていれば正常に払出が完了したと判定される。賞球未払出個数カウンタの値が0になっていない場合には、エラー状態でなければ、1個の遊技球の再払出動作を、2回を上限として試みる。再払出動作において払出個数カウントスイッチ301によって遊技球が実際に払い出されたことが検出されたら正常に払出が完了したと判定される。なお、この実施の形態では、1回の賞球払出動作で払い出される遊技球数は最大15個であり、また、賞球払出中に賞球個数信号を受信したら賞球未払出個数カウンタの値が増加するので、正常に払出が完了した場合でも、賞球未払出個数カウンタの値が0になっていないことがある。
また、球貸し払出が行われているときには、球貸し未払出個数カウンタの値が0になっていれば正常に払出が完了したと判定される。球貸し未払出個数カウンタの値が0になっていない場合には、エラー状態でなければ、1個の遊技球または球貸し残数(球貸し未払出個数カウンタの値に相当)の再払出動作を試みる。なお、この実施の形態では、1回の球貸し払出動作で払い出される遊技球数は25個(固定値)であり、25個の遊技球が払い出されるように払出モータ289を回転させたのであるから、球貸し未払出個数カウンタの値が0になっていない場合には、正常に払出が完了していないことになる。
払出通過待ち処理において、払出制御用マイクロコンピュータ370は、まず、払出制御タイマの値を確認し、その値が0になっていればステップS653に移行する(ステップS650)。払出制御タイマの値が0でなければ、払出制御タイマの値を−1する(ステップS651)。そして、払出制御タイマの値が0になっていなければ(ステップS652)、すなわち払出制御タイマがタイムアウトしていなければ処理を終了する。なお、ステップS650の処理は、後述する遊技球払出のリトライ動作が開始されたときのことを考慮した処理である。後述するステップS807の処理が実行された場合には、再びステップS642で払出制御監視タイマに払出通過監視時間がセットされる。
払出制御タイマがタイムアウトしていれば(ステップS652)、球貸し払出処理(球貸し動作)を実行していたか否か確認する(ステップS653)。球貸し動作を実行していたか否かは、RAMに形成されている払出制御状態フラグにおける球貸し動作中ビットがセットされているか否か(ステップS623,S624参照)によって確認される。球貸し動作を実行していない場合、すなわち、賞球払出処理(賞球動作)を実行していた場合には、払出制御用マイクロコンピュータ370は、賞球未払出個数カウンタの値を確認する(ステップS654)。賞球未払出個数カウンタの値が0になっている場合には、正常に賞球払出処理が完了したとして、払出制御状態フラグにおける払出球検知ビット、再払出動作中1ビット、再払出動作中2ビット、賞球動作中フラグおよび球貸し動作中ビットをリセットし(ステップS655)、払出制御コードを0にして(ステップS656)、処理を終了する、なお、払出球検知ビットは、払出個数カウントスイッチ301がオンしたときにセットされるビットであり、払出動作中に払出個数カウントスイッチ301が少なくとも1個の遊技球を検出したことを示すビットである。また、再払出動作中1ビットおよび再払出動作中2ビットは、2回の再払出動作からなる再払出処理を実行する際に用いられる制御ビットである。
払出制御用マイクロコンピュータ370は、賞球未払出個数カウンタの値が0になっていない場合には、エラーフラグ(具体的には、払出スイッチ異常エラー1ビット、払出スイッチ異常エラー2ビットおよび払出ケースエラービットのうちのいずれか1ビットまたは複数ビット)がセットされていないことを条件として(ステップS659)、また、払出球検知ビットがセットされていないことを条件として(ステップS661)、再払出動作を実行する。なお、エラーフラグがセットされている場合には、再払出動作を実行しない。
上述したように、この実施の形態では、正常に払出が完了した場合でも、賞球未払出個数カウンタの値が0になっていないことがある。そこで、払出球検知ビットがセットされていれば、すなわち払出個数カウントスイッチ301が賞球払出処理中に少なくとも1個の遊技球の払出を検出していたら、正常に賞球払出処理が完了したとして、ステップS655に移行する。なお、例えば、1回の賞球払出処理で15個の遊技球を払い出すべきところ、実際には14個の遊技球しか払い出されなかった場合(払出個数カウントスイッチ301が14個の遊技球しか検出しなかった場合)にも、払出球検知ビットがセットされるので正常に賞球払出処理が完了したとみなされるが、その場合には、賞球未払出個数カウンタの値は14しか減算されていないはずであり、不足分は次回の賞球払出処理で払い出されるので、遊技者に不利益を与えることはない。
再払出処理を実行するために、払出制御用マイクロコンピュータ370は、まず、再払出動作中2ビットがセットされているか否か確認する(ステップS662)。セットされていなければ、再払出動作中1ビットがセットされているか否か確認する(ステップS663)。再払出動作中1ビットもセットされていなければ、初回の再払出動作を実行するために、再払出動作個数として1をセットし(ステップS664)、再払出動作中1ビットをセットし(ステップS665)、払出モータ回転回数バッファに再払出動作個数または球貸し未払出数個数カウンタの値をセットする(ステップS666)。払出モータ回転回数バッファは、払出モータ制御処理(ステップS753)において参照される。すなわち、払出モータ制御処理では、払出モータ回転回数バッファにセットされた値に対応した回転数分だけ払出モータ289を回転させる制御が実行される。なお、ステップS666において、球貸し未払出数個数カウンタの値も取り扱われるのは、球貸し払出処理における再払出処理でもステップS666が用いられるからである。すなわち、払出制御用マイクロコンピュータ370は、ステップS666において、賞球払出処理における再払出処理では再払出動作個数をセットし、球貸し払出処理における再払出処理では球貸し未払出数個数カウンタの値をセットする。その後、払出制御コードを1にして(ステップS667)、処理を終了する。
ステップS663において、再払出動作中1ビットがセットされていることを確認したら、払出制御用マイクロコンピュータ370は、2回目の再払出を実行するために、再払出動作個数として1をセットし(ステップS668)、再払出動作中1ビットをリセットし(ステップS669)、再払出動作中2ビットをセットする(ステップS670)。そして、ステップS666に移行する。
ステップS662において、再払出動作中2ビットがセットされていることを確認したら、払出制御用マイクロコンピュータ370は、2回の再払出処理を実行しても遊技球が払い出されなかった(払出個数カウントスイッチ301が遊技球を検出しなかった)として、エラーフラグにおける払出ケースエラービットをセットする(ステップS672)。その際に、再払出動作中2ビットをリセットしておく(ステップS671)。そして、処理を終了する。
以上のように、再払出処理(補正払出処理)において2回の再払出動作を行っても遊技球が1個も払い出されない場合には、遊技球の払出動作不良として、払出個数カウントスイッチ未通過エラービット(払出ケースエラービット)がセットされる。
従って、この実施の形態では、払出制御用マイクロコンピュータ370における景品遊技媒体払出制御手段は、払出検出手段としての払出個数カウントスイッチ301からの検出信号にもとづいて、景品遊技媒体の払い出しが行われなかったことを検出したときに、あらかじめ決められた所定回(この例では2回)を限度として、払出手段に1個の景品遊技媒体の払い出しを行わせるように制御を行う。なお、この実施の形態では、景品遊技媒体を払い出すためのリトライ動作を2回行っても景品遊技媒体の払い出しが行われなかった場合には、払出ケースエラービットをセットしてエラー発生中状態になるが(ステップS672)、景品遊技媒体の払い出しが行われなかったことを初めて検知したときに払出ケースエラービットをセットしてもよい。なお、「リトライ動作(あるいは「リトライ」、「リトライ動作処理」)」とは、所定数の遊技球の払い出しを行うための通常の払出処理を実行したのにもかかわらず、実際の払い出し数が少ない場合に実行させる動作であって、通常の払出処理とは別に、未払出の遊技球を払い出すために払出処理を再度実行させるための動作を意味する。
賞球球貸し制御処理において、払出動作(1回の賞球払出または1回の球貸し)を行うか否か判定するためにエラービットがチェックされるのは、図54に示された払出開始待ち処理においてのみである。図55に示された払出モータ停止待ち処理および図56等に示された払出通過待ち処理では、エラービットはチェックされない。なお、払出通過待ち処理におけるステップS659等でもエラービットがチェックされているが、そのチェックは再払出動作を行うか否かを判断するためであって、払出動作(1回の賞球払出または1回の球貸し)を開始するか否か判定するためではない。従って、ステップS626、S633またはステップS634の処理が行われて遊技球の払出処理が開始された後では、エラーが発生しても払出処理は中断されない。すなわち、エラーが発生すると、遊技球の払出処理は、切りのよい時点(1回の賞球払出または1回の球貸しが終了した時点)まで継続される。なお、ステップS621でチェックされるエラーフラグにおけるエラービットの中には、主基板31からの接続確認信号がオフ状態になったことを示すエラービットが含まれている。よって、接続確認信号がオフ状態になったときにも、遊技球の払出処理は、切りのよい時点で停止される。なお、エラーが発生すると(すなわち、エラービットがセットされていることを確認すると)、直ちに遊技球の払出処理を停止するように制御してもよい。
ステップS653で球貸し払出処理(球貸し動作)を実行していたことを確認すると、払出制御用マイクロコンピュータ370は、球貸し未払出個数カウンタの値が0になっているか否か確認する(ステップS657)。0になっていれば、正常に球貸し払出処理が完了したとしてステップS655に移行する。
ステップS657で、球貸し未払出個数カウンタの値が0になっていなければ、エラーフラグ(具体的には、払出スイッチ異常エラー1ビット、払出スイッチ異常エラー2ビットおよび払出ケースエラービットのうちのいずれか1ビットまたは複数ビット)がセットされていないことを条件として(ステップS675)、再払出処理を実行する。なお、エラーフラグがセットされている場合には、再払出処理を実行しない。
再払出処理を実行するために、払出制御用マイクロコンピュータ370は、まず、再払出動作中2ビットがセットされているか否か確認する(ステップS676)。セットされていなければ、再払出動作中1ビットがセットされているか否か確認する(ステップS677)。再払出動作中1ビットもセットされていなければ、初回の再払出動作を実行するために、再払出動作個数として1をセットし(ステップS678)、再払出動作中1ビットをセットし(ステップS679)、さらに払出球検知ビットをリセットした後(ステップS680)、ステップS666に移行する。
なお、ステップS675〜S680の処理が実行されるのは、ステップS653において球貸し払出処理を実行していたことを確認できた場合であるので、払出制御用マイクロコンピュータ370は、エラーフラグがセットされていないことを確認すると、払出球検知ビットを確認することなく、ステップS676の処理に移行する。なお、払出制御用マイクロコンピュータ370は、ステップS675でエラーフラグがセットされていないことを確認すると、払出球検知ビットがセットされているか否かを確認し、球貸し払出処理が実行されたか否かを再度確認してもよい。
ステップS677において、再払出動作中1ビットがセットされていることを確認したら、払出制御用マイクロコンピュータ370は、再払出動作を再度実行するための処理を行う。具体的には、再払出動作中1ビットをリセットする(ステップS681)。そして、払出球検知ビットがセットされていたら、すなわち、最初の再払出動作で遊技球が払い出されていたら、ステップS683に移行する。払出球検知ビットがセットされていなかったら、2回目の再払出動作を実行するためにステップS684に移行する。
ステップS683では払出球検知ビットをリセットし、その後、ステップS666に移行する。従って、この場合には、再払出動作中1ビットがセットされたままになっているので、再度、初回(最初)の再払出動作が行われる。ステップS684では、再払出動作個数として1をセットし(ステップS684)、再払出動作中2ビットをセットし(ステップS685)、ステップS666に移行する。
ステップS676において、再払出動作中2ビットがセットされていることを確認したら、払出制御用マイクロコンピュータ370は、再払出動作中2ビットをリセットし(ステップS686)、払出球検知ビットがセットされていたら、すなわち、再払出動作で遊技球が払い出されていたらステップS683に移行して残りの未払出を分を解消することを試みる。払出球検知ビットがセットされていなかったら、2回の再払出処理を実行しても遊技球が払い出されなかった(払出個数カウントスイッチ301が遊技球を検出しなかった)として、エラーフラグにおける払出ケースエラービットをセットする(ステップS688)。そして、処理を終了する。
以上のように、球貸し処理に係る再払出処理(補正払出処理)において連続して2回の再払出動作を行っても遊技球が1個も払い出されない場合には、遊技球の払出動作不良として、払出個数カウントスイッチ未通過エラービット(払出ケースエラービット)がセットされる。なお、この実施の形態では、球貸し制御処理が賞球制御処理(ステップS631以降の処理)よりも優先して実行されるが(ステップS622参照)、賞球制御処理を球貸し制御処理よりも優先して実行するようにしてもよい。
次に、エラー処理について説明する。図59は、エラーの種類とエラー表示用LED374の表示との関係等を示す説明図である。図59に示すように、主基板31からの接続確認信号がオフ状態になった場合には、払出制御用マイクロコンピュータ370は、主基板未接続エラーとして、エラー表示用LED374に「1」を表示する制御を行う。従って、遊技制御用マイクロコンピュータ560が賞球ACK信号の入力状態の確認中(ステップS261,S271)に賞球ACK信号がオフ状態になると、遊技制御用マイクロコンピュータ560が接続確認信号をオフ状態にすることによって、エラー表示用LED374に「1」が表示されることになる。なお、エラーフラグにおける各エラービットが、図59に示すエラーの種類に対応している。
払出個数カウントスイッチ301の断線または払出個数カウントスイッチ301の部分において球詰まりが発生した場合には、払出スイッチ異常検知エラー1として、エラー表示用LED374に「2」を表示する制御を行う。なお、払出個数カウントスイッチ301の断線または払出個数カウントスイッチ301の部分において球詰まりが発生したことは、払出個数カウントスイッチ301の検出信号がオフ状態にならなかったことによって判定される。
遊技球の払出動作中でないにも関わらず払出個数カウントスイッチ301の検出信号がオン状態になった場合には、払出スイッチ異常検知エラー2として、エラー表示用LED374に「3」を表示する制御を行う。払出モータ289の回転異常または遊技球が払い出されたにも関わらず払出個数カウントスイッチ301の検出信号がオン状態にならない場合には、払出ケースエラーとして、エラー表示用LED374に「4」を表示する制御を行う。払出個数カウントスイッチ301の検出信号がオン状態にならないことの具体的な検出方法は既に説明したとおりである。不正なタイミングで賞球REQ信号がオン状態になった場合、または不正なタイミングで賞球REQ信号がオフ状態になった場合には、賞球REQ信号エラーとして、エラー表示用LED374に「5」を表示する制御を行う。不正なタイミングで賞球REQ信号がオン状態またはオフ状態になったことの具体的な検出方法は既に説明したとおりである。
また、下皿満タン状態すなわち満タンスイッチ48がオン状態になった場合には、満タンエラーとして、エラー表示用LED374に「6」を表示する制御を行う。補給球の不足状態すなわち球切れスイッチ187がオン状態になった場合には、球切れエラーとして、エラー表示用LED374に「7」を表示する制御を行う。
さらに、カードユニット50からのVL信号がオフ状態になった場合には、プリペイドカードユニット未接続エラーとして、エラー表示用LED374に「8」を表示する制御を行う。不正なタイミングでカードユニット50と通信がなされた場合には、プリペイドカードユニット通信エラーとして、エラー表示用LED374に「9」を表示する制御を行う。なお、プリペイドカードユニット通信エラーは、プリペイドカードユニット制御処理(ステップS754)において検出される。
以上のエラーのうち、払出スイッチ異常検知エラー2、払出ケースエラーまたは賞球REQ信号エラーが発生した後、エラー解除スイッチ375が操作されエラー解除スイッチ375から操作信号が出力されたら(オン状態になったら)、払出制御手段は、エラーが発生する前の状態に復帰する。
図60および図61は、ステップS757のエラー処理を示すフローチャートである。エラー処理において、払出制御用マイクロコンピュータ370は、エラーフラグをチェックし、そのうちのセットされているビットが、払出スイッチ異常検知エラー2、払出ケースエラーおよび賞球REQ信号エラーのみ(3つのうちのいずれかのビットのみ、もしくは3つのうちの2ビットのみ、またはそれら3ビットのみ)であるか否か確認する(ステップS801)。セットされているビットがそれらのみである場合には、エラー解除スイッチ375から操作信号がオン状態になったか否か確認する(ステップS802)。操作信号がオン状態になったら、エラー復帰時間をエラー復帰前タイマにセットする(ステップS803)。エラー復帰時間は、エラー解除スイッチ375が操作されてから、実際にエラー状態から通常状態に復帰するまでの時間である。
エラー解除スイッチ375から操作信号がオン状態でない場合には、エラー復帰前タイマの値を確認する(ステップS804)。エラー復帰前タイマの値が0であれば、すなわち、エラー復帰前タイマがセットされていなければ、ステップS808に移行する。エラー復帰前タイマがセットされていれば、エラー復帰前タイマの値を−1し(ステップS805)、エラー復帰前タイマの値が0になったら(ステップS806)、エラーフラグのうちの、払出スイッチ異常検知エラー2、払出ケースエラーおよび賞球REQ信号エラーのビットをリセットし(ステップS807)、ステップS808に移行する。
なお、ステップS807の処理が実行されるときに、払出スイッチ異常検知エラー2、払出ケースエラーおよび賞球REQ信号エラーのビットのうちには、セット状態ではないエラービットがある場合もあるが、セット状態にないエラービットをリセットしても何ら問題はない。以上のように、この実施の形態では、払出スイッチ異常検知エラー2、払出ケースエラーまたは賞球REQ信号エラーのビットをセットする原因になったエラー(図59参照)が発生した場合には、エラー解除スイッチ375が押下されることによってエラー解除される。
ステップS807の処理が実行されて払出ケースエラービットがリセットされた場合には、払出制御コードが「2」(図56〜図58に示す払出通過待ち処理の実行に対応)であって、賞球未払出個数カウンタの値または球貸し未払出個数カウンタの値が0でないときには、遊技球払出のリトライ動作が開始される。つまり、次にステップS756の賞球球貸し制御処理が実行されるときにステップS612の払出通過待ち処理が実行されると、再び、再払出処理が行われる。例えば、賞球払出処理が行われていた場合には、賞球未払出個数カウンタの値が0でないときには、ステップS654からステップS659に移行し、ステップS659においてエラービットがリセット状態であることが確認されるので、ステップS662以降の再払出処理を開始するための処理が再度実行され、再払出処理が実行される。なお、エラー解除スイッチ375が押下されることによってリセットされた払出ケースエラービットに関して、そのビットがセットされたときには(ステップS672が実行されたとき)、払出制御タイマは既にタイムアップしている。従って、ステップS807の処理が実行されて払出ケースエラービットがリセットされた場合には、次に払出通過待ち処理が実行されるときには、ステップS650の判断において払出制御タイマ=0と判定される。また、払出ケースエラービットがセットされたときには払出球検知ビットは0である(ステップS661の判断で払出球検知ビットは0でないとステップS672が実行されないので)。従って、ステップS659においてエラービットがリセット状態であることが確認されると、必ずステップS662が実行される。つまり、必ず、再払出処理が実行される。
以上のように、払出制御手段は、球払出装置97が遊技球の払い出しを行ったにもかかわらず払出個数カウントスイッチ301が1個も遊技球を検出しなかったときには遊技球を払い出すためのリトライ動作をあらかじめ決められた所定回(例えば2回)を限度として球払出装置97に実行させる補正払出制御を行った後、払出個数カウントスイッチ301が1個も遊技球を検出しなかったことが検出されたときには(図57のステップS661以降を参照)、払い出しに関わる制御状態をエラー状態に移行させ、エラー状態においてエラー解除スイッチ375からエラー解除信号が出力されたことを条件に再度補正払出制御を行わせる補正払出制御再起動処理を実行する。
さらに、エラー状態における再払出処理の実行中(具体的には払出ケースエラーをセットする前の再払出処理中およびエラー解除スイッチ375押下後の再払出処理中)でも、図53に示すステップS601〜S604の処理は実行されている。すなわち、払い出しに関わるエラーが生じているときでも、遊技球が払出個数カウントスイッチ301を通過すれば、賞球未払出個数カウンタや球貸し未払出個数カウンタの値が減算される。従って、エラー状態から復帰したときの賞球未払出個数カウンタや球貸し未払出個数カウンタの値は、実際に払い出された遊技球数を反映した値になっている。すなわち、払い出しに関わるエラーが発生しても、実際に払い出した遊技球数を正確に管理することができる。
また、図56〜図58に示された払出通過待ち処理において、再払出処理が実行された結果、遊技球が払い出されたことが確認されたときでも、払出ケースエラーのビットはリセットされない。払出ケースエラーのビットがリセットされるのは、あくまでも、エラー解除スイッチ375が操作されたとき(具体的は、操作後エラー復帰時間が経過したとき)である(ステップS802,S803,S807)。すなわち、遊技球が払出個数カウントスイッチ301を通過したこと等にもとづいて自動的に払出ケースエラー(払出不足エラー)の状態が解除されるということはなく、人為的な操作を経ないと払出ケースエラーは解除されない。従って、遊技店員等は、確実に払出不足が発生したことを認識することができる。
エラー解除スイッチ375が操作されたことによってハードウェア的にリセット(払出制御用マイクロコンピュータ370に対するリセット)がかかるように構成されている場合には、エラー解除スイッチ375が操作されたことによって例えば賞球未払出個数カウンタの値もクリアされてしまう。しかし、この実施の形態では、払出制御手段が、エラー解除スイッチ375が操作されたことによって再払出動作を再び行うように構成されているので、確実に払出処理が実行され、遊技者に不利益を与えないようにすることができる。
ステップS808では、払出制御用マイクロコンピュータ370は、満タンスイッチ48の検出信号を確認する。満タンスイッチ48の検出信号が出力されていれば(オン状態であれば)、エラーフラグのうちの満タンエラービットをセットする(ステップS809)。満タンスイッチ48の検出信号がオフ状態であれば、満タンエラービットをリセットする(ステップS810)。
また、払出制御用マイクロコンピュータ370は、球切れスイッチ187の検出信号を確認する(ステップS811)。球切れスイッチ187の検出信号が出力されていれば(オン状態であれば)、エラーフラグのうちの球切れエラービットをセットする(ステップS812)。球切れスイッチ187の検出信号がオフ状態であれば、球切れエラービットをリセットする(ステップS813)。
さらに、払出制御用マイクロコンピュータ370は、主基板31からの接続確認信号の状態を確認し(ステップS815)、接続確認信号が出力されていなければ(オフ状態であれば)、主基板未接続エラービットをセットする(ステップS816)。また、接続確認信号が出力されていれば(オン状態であれば)、主基板未接続エラービットをリセットする(ステップS817)。
また、払出制御用マイクロコンピュータ370は、各スイッチの検出信号の状態が設定される各スイッチタイマのうち払出個数カウントスイッチ301に対応したスイッチタイマの値を確認し、その値がスイッチオン最大時間(例えば「240」)を越えていたら(ステップS818)、エラーフラグのうち払出スイッチ異常検知エラー1のビットをセットする(ステップS819)。また、払出個数カウントスイッチ301に対応したスイッチタイマの値がスイッチオン最大時間以下であれば、払出スイッチ異常検知エラー1のビットをリセットする(ステップS820)。なお、各スイッチタイマの値は、ステップS752の入力判定処理において、各スイッチの検出信号を入力する入力ポートの状態がスイッチオン状態であれば+1され、オフ状態であれば0クリアされる。従って、払出個数カウントスイッチ301に対応したスイッチタイマの値がスイッチオン最大時間を越えていたということは、スイッチオン最大時間を越えて払出個数カウントスイッチ301がオン状態になっていることを意味し、払出個数カウントスイッチ301の断線または払出個数カウントスイッチ301の部分で遊技球が詰まっていると判断される。
また、払出制御用マイクロコンピュータ370は、払出個数カウントスイッチ301に対応したスイッチタイマの値がスイッチオン判定値(例えば「2」)になった場合に(ステップS821)、球貸し動作中フラグおよび賞球動作中フラグがともにリセット状態であれば、払出動作中でないのに払出個数カウントスイッチ301を遊技球が通過したとして、エラーフラグのうち払出スイッチ異常検知エラー2のビットをセットする(ステップS822,S823)。また、球貸し動作中フラグまたは賞球動作中フラグがセットされていれば、払出スイッチ異常検知エラー2のビットをリセットする(ステップS824)。
さらに、払出制御用マイクロコンピュータ370は、カードユニット50からのVL信号の入力状態を確認し(ステップS825)、VL信号が入力されていなければ(オフ状態であれば)、エラーフラグのうちプリペイドカードユニット未接続エラービットをセットする(ステップS826)。また、VL信号が入力されていれば(オン状態であれば)、プリペイドカードユニット未接続エラービットをリセットする(ステップS827)。
なお、ステップS759の表示制御処理では、エラーフラグ中のエラービットに応じた表示(数値表示)による報知をエラー表示用LED374によって行う。従って、通信エラーをエラー表示用LED374によって報知することができる。また、通信エラーは、払出制御手段の側で検出されるので、遊技制御手段の負担を増すことなく通信エラーを検出できる。
また、この実施の形態では、主基板未接続エラーは接続確認信号がオン状態になると自動的に解消されるが(ステップS815,S817参照)、さらにエラー解除スイッチ375が操作されたという条件を加えて、エラー状態が解消されるようにしてもよい。
なお、この実施の形態では、払い出しに関わるエラーが発生したことを、遊技機裏面に設置されている払出制御基板37に搭載されているエラー表示LED374によって報知するようにしたが、遊技機裏面の他の箇所(例えば球払出装置97等が集中配置された払出ユニット)に報知手段を搭載してもよい。さらに、遊技機の表側に設置されている表示器によって報知するようにしてもよい。また、エラー表示LED374による報知と遊技機の表側に設置されている表示器による報知とを併用してもよい。
次に、主基板31から演出制御基板80に対する制御コマンドの送出方式について説明する。図62に示すように、この実施の形態では、演出制御コマンド(具体的には、演出制御コマンドを構成する演出制御信号)は2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」に設定され、EXTデータの先頭ビット(ビット7)は必ず「0」に設定される。なお、そのようなコマンド形態は一例であって他のコマンド形態を用いてもよい。例えば、1バイトや3バイト以上で構成される制御コマンドを用いてもよい。
図63に示すように、演出制御コマンドの8ビットの演出制御信号は、演出制御INT信号に同期して出力される。演出制御基板80に搭載されている演出制御用マイクロコンピュータ100は、演出制御INT信号が立ち上がったことを検知して、割込処理によって1バイトのデータの取り込み処理を開始する。従って、演出制御手段から見ると、演出制御INT信号は、演出制御信号の取り込みの契機となる取込信号に相当する。
演出制御コマンドは、演出制御用マイクロコンピュータ100が認識可能に1回だけ送出される。認識可能とは、この例では、演出制御INT信号のレベルが変化することであり、認識可能に1回だけ送出されるとは、例えば演出制御信号の1バイト目および2バイト目のそれぞれに応じて演出制御INT信号が1回だけパルス状(矩形波状)に出力されることである。なお、演出制御INT信号は図63に示された極性と逆極性であってもよい。
図64は、演出制御基板80に送出される演出制御コマンドの内容の一例を示す説明図である。図64に示す例において、コマンド80XX(H)(XXは変動パターンの種類に対応)は、特別図柄の変動に同期した飾り図柄の可変表示(変動)を行う可変表示装置9における変動パターンを指定する演出制御コマンドである。なお、変動パターンを指定するコマンド(変動パターンコマンド)は変動開始指示も兼ねている。また、演出制御コマンドは、表示制御を指示するための表示制御コマンドに相当するとともに、発光体制御および音制御を指示するための発光体制御コマンドおよび音制御コマンドの機能も兼ねている。
D001(H)およびD002(H)は、遊技機に対する電力供給が開始されたときに送信されるコマンドである(図14におけるステップS94,S14参照)。コマンドD000(H)は、可変表示装置9における客待ちデモンストレーションを指定する演出制御コマンドである。また、コマンドD001(H)は、初期化処理を実行したときに、初期化処理が行われた旨を報知させるための初期化コマンドである。また、コマンドD002(H)は、復旧処理を実行したときに、復旧処理が行われた旨を報知させるための復旧コマンドである。バックアップRAMの保存されていたデータにもとづいて復旧処理が実行されるときには、遊技制御用マイクロコンピュータ560は、D002(H)の演出制御コマンドを送信し(ステップS94)、復旧処理を実行しないときには、遊技制御用マイクロコンピュータ560は、D001(H)の初期化コマンドを送信する(ステップS14)。
演出制御用マイクロコンピュータ100は、コマンドD000にもとづいて、所定期間経過後に、可変表示装置9に、デモンストレーション画面を表示する。また、演出制御用マイクロコンピュータ100は、復旧コマンドを受信したことを条件に、コマンドD000にもとづいて、可変表示装置9に、まず初期出目を表示させ、所定期間が経過するとデモンストレーション画面を表示する。また、演出制御用マイクロコンピュータ100は、コマンドD001(H)を受信すると、可変表示装置9に、初期化処理が実行されたことを報知するための画面を表示する。また、演出制御用マイクロコンピュータ100は、コマンドD002(H)を受信すると、可変表示装置9に、復旧処理が実行されたことを報知するための画面を表示する。
コマンドD003(H)は、上述した払出異常報知開始コマンドであり、コマンドD004(H)は、払出異常報知終了コマンドである。すなわち、コマンドD003(H)は、払出制御用マイクロコンピュータ370が賞球ACK信号を送信しない状態になっていることを示すコマンドであり、D004(H)は、払出制御用マイクロコンピュータ370が賞球ACK信号を送信できる状態になったことを示すコマンドである。
コマンドD005(H)は、上述した賞球過多報知コマンドであり、コマンドD006(H)は、賞球不足報知コマンドである。
次に、演出制御用マイクロコンピュータ100の動作を説明する。図65は、演出制御用マイクロコンピュータ100が実行するメイン処理を示すフローチャートである。遊技機に対する電力供給が開始され、リセット信号がハイレベルのなると、演出制御用マイクロコンピュータ100は、メイン処理を開始する。メイン処理では、演出制御用マイクロコンピュータ100は、まず、RAM領域のクリアや各種初期値の設定、また演出制御の起動間隔を決めるためのタイマの初期設定等を行うための初期化処理を行う(ステップS771)。その後、演出制御用マイクロコンピュータ100は、タイマ割込フラグの監視(ステップS772)の確認を行うループ処理に移行する。タイマ割込が発生すると、演出制御用マイクロコンピュータ100は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、演出制御用マイクロコンピュータ100は、そのフラグをクリアし(ステップS773)、以下の演出制御処理を実行する。
タイマ割込は例えば2ms毎にかかる。すなわち、演出制御処理は、例えば2ms毎に起動される。また、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、具体的な演出制御処理はメイン処理において実行されるが、タイマ割込処理で演出制御処理を実行してもよい。
演出制御処理において、演出制御用マイクロコンピュータ100は、まず、受信した演出制御コマンドを解析する(コマンド解析実行処理:ステップS774)。次いで、演出制御用マイクロコンピュータ100は、演出制御プロセス処理を行う(ステップS775)。演出制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(演出制御プロセスフラグ)に対応したプロセスを選択して可変表示装置9の表示制御を実行する。また、演出制御用マイクロコンピュータ100は、モータ駆動信号出力処理を行う(ステップS776)。モータ駆動信号出力処理では、ハンマ151を動作させるために、モータ150に対して駆動信号を出力する処理を実行する。また、操作スイッチ81からの操作信号やセンサ154,155からの検出信号を入力ポート106を介して入力するデータ入力処理を実行する(ステップS777)。そして、乱数カウンタを更新する処理を実行する(ステップS778)。また、遊技制御用マイクロコンピュータ560からのエラー報知等に関わる演出制御コマンドにもとづく報知処理を行う(ステップS779)。その後、ステップS772のタイマ割込フラグの確認を行う処理に戻る。
主基板31からの演出制御用のINT信号は演出制御用マイクロコンピュータ100の割込端子に入力されている。例えば、主基板31からのINT信号がオン状態になると、演出制御用マイクロコンピュータ100において割込がかかる。そして、演出制御用マイクロコンピュータ100は、割込処理において演出制御コマンドの受信処理を実行する。演出制御コマンドの受信処理において、演出制御用マイクロコンピュータ100は、受信した演出制御コマンドデータをコマンド受信バッファに格納する。
図66,図67は、コマンド解析処理(ステップS774)の具体例を示すフローチャートである。主基板31から受信された演出制御コマンドは受信コマンドバッファに格納されるが、コマンド解析処理では、演出制御用マイクロコンピュータ100は、コマンド受信バッファに格納されているコマンドの内容を確認する。
コマンド解析処理において、演出制御用マイクロコンピュータ100は、まず、コマンド受信バッファに受信コマンドが格納されているか否か確認する(ステップS7611)。格納されているか否かは、コマンド受信個数カウンタの値と読出ポインタとを比較することによって判定される。両者が一致している場合が、受信コマンドが格納されていない場合である。コマンド受信バッファに受信コマンドが格納されている場合には、演出制御用マイクロコンピュータ100は、コマンド受信バッファから受信コマンドを読み出す(ステップS7612)。なお、読み出したら読出ポインタの値を+1しておく(ステップS7613)。
受信した演出制御コマンドが変動パターン指定の演出制御コマンドであれば(ステップS7614)、演出制御用マイクロコンピュータ100は、そのコマンドのEXTデータを変動パターンデータ格納領域に格納する(ステップS7615)。
ステップS7615を終えると、演出制御用マイクロコンピュータ100は、演出制御基板80が備えるRAMに格納されている演出用状態データと、受信した変動パターンコマンドとによって、遊技状態が変更したか否かを確認する(ステップS7618)。演出用状態データは、例えば主基板31で用いられている状態データと同一の構成とされ、現在の遊技状態(確変時短状態、確変状態、時短状態、通常状態のうちいずれかの状態)が設定されるデータである。ステップS7618では、受信した変動パターンコマンドにおけるMODEデータによって識別される現在の遊技状態と、演出用状態データが示す遊技状態とが一致するか否かが確認される。
遊技状態が変更していれば(受信した変動パターンコマンドにおけるMODEデータによって識別される現在の遊技状態と、演出用状態データが示す遊技状態とが一致していなければ)、演出制御用マイクロコンピュータ100は、演出用状態データを、受信した変動パターンコマンドにおけるMODEデータが示す現在の遊技状態となるように変更する(ステップS7619)。
ステップS7619にて演出用状態データが示す遊技状態を時短状態に変更した場合には(ステップS7620)、演出制御用マイクロコンピュータ100は、可変表示装置9における背景色を、時短状態を示す色(例えば赤色)に変更する(ステップS7621)。
また、ステップS7619にて演出用状態データが示す遊技状態を確変状態に変更した場合には(ステップS7622)、演出制御用マイクロコンピュータ100は、可変表示装置9における背景色を、確変状態を示す色(例えば緑色)に変更する(ステップS7623)。
そして、ステップS7619にて演出用状態データが示す遊技状態を通常状態に変更した場合には(ステップS7622のN)、演出制御用マイクロコンピュータ100は、本例では、背景色の変更を行うことなく、遅延カウンタに所定数(本例では「5」)を設定する(ステップS7624)。なお、遅延カウンタに設定するカウント数は、ランダムに定められるようにしてもよい。
遅延カウンタは、確変状態や時短状態から通常状態に遊技状態が変更したときに、通常状態を示す色に背景色を変更するタイミングを遅延させるためのカウンタである。
ステップS7618にて遊技状態が変更していないと判定した場合には、演出制御用マイクロコンピュータ100は、遅延カウンタが示す値が0でなければ(ステップS7625)、遅延カウンタが示す値を1減算する(ステップS7626)。そして、遅延カウンタが示す値が0になった場合には(ステップS7627)、可変表示装置9における背景色を、通常状態を示す色(例えば青色)に変更する(ステップS7628)。
上記の処理によって、本例では、遊技状態が確変状態や時短状態から通常状態に変更したときには、遅延カウンタに設定された回数の識別情報の可変表示が実行されたあと(より正確には、遅延カウンタに設定された数の変動パターンコマンドを受信したあと)に、背景色が通常状態を示す色に変更される。なお、ステップS7625〜S7628の処理を、飾り図柄通常処理にて実行するようにしてもよい。このように構成すれば、遅延カウンタに設定された回数の識別情報の可変表示が実行されたあとに、背景色を通常状態を示す色に変更させることを、確実に行うことができるようになる。
なお、同一または別個の遅延カウンタを用いて、確変状態(ここでは確変時短状態)から時短状態に遊技状態が変更したときに、時短状態を示す色に背景色を変更するタイミングを遅延させるようにしてもよい。この場合、演出用状態データが示す遊技状態を確変時短状態から時短状態に変更したときに、遅延カウンタに所定数を設定するようにすればよい。そして、遅延カウンタに設定された回数の識別情報の可変表示が実行されたあとに、背景色を確変時短状態を示す色から時短状態を示す色に変更するようにすればよい。上記のように構成すれば、遅延カウンタに設定された回数の識別情報の可変表示が実行されたあとに、背景色を確変時短状態を示す色から時短状態を示す色に変更させることを、確実に行うことができるようになる。
ステップS7611にて受信していることが確認された演出制御コマンドが表示結果指定の演出制御コマンドであれば(ステップS7629)、演出制御用マイクロコンピュータ100は、そのコマンドのEXTデータを表示結果(特別図柄の表示結果)として表示結果格納領域に格納する(ステップS7630)。
受信した演出制御コマンドが停電復旧指定の演出制御コマンドであれば(ステップS7633)、演出制御用マイクロコンピュータ100は、可変表示装置9に、停電復旧中であることを示す停電復旧中画面(例えば、「停電復旧中!!」なる表示)を表示するとともに、飾り図柄復旧フラグをセットする(ステップS7634)。飾り図柄復旧フラグは、可変表示装置9の表示に関する復旧のための処理の実行中であるか否かを判定するためのフラグであり、例えば演出制御基板80が備えるRAM領域に格納される。
なお、演出制御用マイクロコンピュータ100は、停電復旧中画面を、あらかじめ決められた所定時間継続して表示した後に消去するようにしてもよいし、初めて変動パターンコマンドを受信するまで停電復旧中画面を表示し続けるようにしてもよい。あらかじめ決められた所定時間継続して表示した後に消去する場合には、その後、デモンストレーション画面(遊技が行われていないときに表示される画面であって、遊技者を引きつけるようなキャラクタ等を運動表示するような画面)を可変表示装置9に表示する制御を行う。なお、あらかじめ決められた所定時間継続して表示した後に消去する場合に、所定時間が経過する前に変動パターンコマンドを受信したときには、変動パターンコマンドにもとづく飾り図柄の可変表示を開始する。
受信した演出制御コマンドがデモンストレーション表示指定の演出制御コマンド(デモ表示コマンド)であれば(ステップS7637)、演出制御用マイクロコンピュータ100は、経過時間計測タイマをスタートさせる(ステップS7638)また、演出制御用マイクロコンピュータ100は、飾り図柄復旧フラグがセットされているか否か確認する(ステップS7639)。すなわち、可変表示装置9の表示に関する復旧のための処理の実行中であるか否かを確認する。飾り図柄復旧フラグがセットされていれば、演出制御用マイクロコンピュータ100は、飾り図柄の表示結果がセーブされていないか、またはセーブされている飾り図柄の表示結果がはずれ図柄であった場合には(ステップS7640)、可変表示装置9に初期出目を表示する(ステップS7641)。
「初期出目」とは、遊技機への電源投入がなされたときに、初期表示として最初に可変表示装置9に表示される飾り図柄(いわゆる朝一出目)を意味する。また、「経過時間計測タイマ」は、デモ表示コマンドを受信してからの経過時間を計測するためのタイマである。この「経過時間計測タイマ」は、デモンストレーション画面の表示を開始する時期を特定するためのタイマでもある。「経過時間計測タイマ」は、ステップS7638にて計測がスタートしたあと、例えばコマンド解析処理が実行させる毎に定期的にタイマ値が減算され、タイマ値が0になるとタイムアウトとなる。そして、タイムアウトとなると、可変表示装置9にデモンストレーション画面が表示される。なお、演出制御用マイクロコンピュータ100は、ステップS7638にて計測をスタートしたあと、コマンド解析処理が実行させる毎に定期的にタイマ値を加算し、タイマ値が所定値になるとタイムアウトと判定してもよい。
ステップS7640にてセーブされている飾り図柄の表示結果が大当り図柄であった場合には、演出制御用マイクロコンピュータ100は、可変表示装置9にセーブされている大当り図柄を表示する(ステップS7642)。なお、この場合、演出制御用マイクロコンピュータ100は、遊技制御用マイクロコンピュータ560側で可変表示の変動時間の終了を確認したことを条件に、可変表示装置9に大当り図柄を表示するようにすることが好ましい。例えば、遊技制御用マイクロコンピュータ560は、可変表示の変動時間の終了を確認すると、可変表示の変動時間が終了した旨の通知信号を演出制御基板80に送信する。そして、演出制御用マイクロコンピュータ100は、可変表示の変動時間が終了した旨の通知信号を受信したことを条件に、可変表示装置9に大当り図柄を表示する。
また、ステップS7639にて飾り図柄復旧フラグがセットされていなければ、演出制御用マイクロコンピュータ100は、可変表示装置9にデモンストレーション画面を表示する(ステップS7643)。すなわち、復旧時でないときにデモンストレーション表示コマンドを受信したときには、演出制御用マイクロコンピュータ100は、初期出目を表示することなく、デモンストレーション表示コマンドを受信したあと所定期間が経過したときにデモンストレーション画面を表示する。この場合、例えば、演出制御用マイクロコンピュータ100は、ステップS7637でデモ表示コマンドを受信したと判断してからの経過時間を計測し、計測時間が所定時間を超えると、デモンストレーション画面を表示する。
演出制御用マイクロコンピュータ100は、ステップS7612で読み出した受信コマンドがその他の演出制御コマンドである場合には、受信コマンドに対応するコマンド受信フラグをセットし、必要であれば受信コマンドを保存する(ステップS7651)。
この実施の形態では、以上の処理が実行されることによって、演出制御用マイクロコンピュータ100は、デモンストレーション表示指定の演出制御コマンドを受信すると(具体的には、受信した演出制御コマンドがデモ表示コマンドであると判断すると)、経過時間計測タイマをスタートさせ、デモ表示コマンドを受信してからの経過時間の計測を開始する。
図68は、図65に示されたメイン処理における演出制御プロセス処理(ステップS775)を示すフローチャートである。演出制御プロセス処理では、演出制御用マイクロコンピュータ100は、演出制御プロセスフラグの値に応じてステップS1800〜S1806のうちのいずれかの処理を実行する。各処理において、以下のような処理が実行される。
飾り図柄通常処理(ステップS1800):変動パターンコマンドを受信しているか否かを確認する。変動パターンコマンドを受信していれば、演出制御用マイクロコンピュータ100は、演出制御プロセスフラグの値を飾り図柄変動開始処理に対応した値に変更する。また、デモ表示コマンドを受信してからの経過時間がタイムアウトになったか否かを確認する。デモ表示コマンドを受信してからの経過時間がタイムアウトになっていれば、演出制御用マイクロコンピュータ100は、可変表示装置9に、デモンストレーション画面を表示する。
飾り図柄変動開始処理(ステップS1802):変動パターンコマンドに応じて複数定められている飾り図柄の変動パターンから、実際に使用する変動パターンと飾り図柄の停止図柄の組み合わせを決定する。また。可変表示装置9における飾り図柄(左中右の図柄)の変動を開始させる。その後、演出制御プロセスフラグの値をステップS1803に応じた値に更新する。
図柄変動中処理(ステップS1803):変動パターンを構成する各変動状態(変動速度等)の切替タイミングを制御するとともに、変動時間の終了を監視する。その後、演出制御プロセスフラグの値をステップS1804に応じた値に更新する。
飾り図柄停止処理(ステップS1804):変動時間が経過したら、中図柄の変動を停止し停止図柄(確定図柄)を表示する制御を行う。その後、大当りとする場合には、演出制御プロセスフラグの値をステップS1805に応じた値に更新する。そうでない場合には、演出制御プロセスフラグの値をステップS1800に応じた値に更新する。
大当り表示処理(ステップS1805):変動時間の終了後、確変大当り表示または通常大当り表示の制御を行う。その後、演出制御プロセスフラグの値をステップS1806に応じた値に更新する。
大当たり遊技中処理(ステップS1806):大当たり遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の演出制御コマンドを受信したら、ラウンド数の表示制御等を行う。その後、演出制御プロセスフラグの値をステップS1800に応じた値に更新する。
図69は、図68に示された演出制御プロセス処理における飾り図柄通常処理(ステップS1800)を示すフローチャートである。飾り図柄通常処理において、演出制御用マイクロコンピュータ100は、変動パターンコマンド受信フラグがセットされているか否か確認する(ステップS1812)。変動パターンコマンド受信フラグは、ステップS7614にてYと判定されたとき、すなわち、変動パターンコマンドを受信したときにセットされる。
変動パターンコマンド受信フラグがセットされていれば、演出制御用マイクロコンピュータ100は、変動パターンコマンド受信フラグをリセットし、経過時間計測タイマをリセットする(ステップS1813)。すなわち、経過時間計測タイマにてデモ表示コマンドを受信してからの経過時間を計測中であれば、その計測を中途終了させる。また、飾り復旧フラグがセットされていれば、その飾り復旧フラグをリセットする(ステップS1814)。そして、演出制御用マイクロコンピュータ100は、演出制御プロセスフラグの値を飾り図柄変動パターン決定処理に対応した値に変更する(ステップS1815)。
変動パターンコマンド受信フラグがセットされていなければ、演出制御用マイクロコンピュータ100は、経過時間計測タイマがタイムアウトしたか否かを確認する(ステップS1816)。すなわち、経過時間計測タイマにてデモ表示コマンドを受信してから経過時間の計測中であれば、その計測時間が経過したか否かを確認する。経過時間計測タイマがタイムアウトしていれば、演出制御用マイクロコンピュータ100は、可変表示装置9にデモンストレーション画面を表示し(ステップS1817)、飾り復旧フラグをリセットする(ステップS1818)。
図70は、図68に示された演出制御プロセス処理における飾り図柄変動開始処理(ステップS1802)を示すフローチャートである。飾り図柄変動開始処理において、演出制御用マイクロコンピュータ100は、受信した変動パターンコマンドにもとづいて、飾り図柄の変動パターンを決定する(ステップS1861)。この実施の形態では、演出制御用マイクロコンピュータ100は、飾り図柄の変動パターンの少なくとも一部を独自に決定する。例えば、あらかじめ用意された複数種類の飾り図柄の変動パターンのうち、変動パターンコマンドのEXTデータによって特定される変動時間および遊技制御用マイクロコンピュータ560による事前判定結果(大当り、はずれ、リーチなど)に合致する複数種類の飾り図柄の変動パターンの中から、実行する変動パターンを選択する。
つまり、演出制御用マイクロコンピュータ100は、例えば、飾り図柄の演出内容(例えば、どのキャラクタを用いて演出するかなど)、予告演出の実行の有無や演出内容など、飾り図柄の変動態様の少なくとも一部を独自に決定する。なお、ステップS1861で、演出制御用マイクロコンピュータ100は、可動部材としてのハンマ151と飾り図柄とを共動させた演出の実行の有無や演出内容など、可動部材の動作態様や可動部材に連動した飾り図柄の変動態様の少なくとも一部を独自に決定する。また、飾り図柄の変動期間に応じた変動時間タイマをスタートさせる(ステップS1862)。このとき、可変表示装置9において左中右の飾り図柄の変動が開始されるようにGCL106に対して指示を与える。その後、演出制御プロセスフラグの値を図柄変動中処理に応じた値に更新する(ステップS1863)。
図71は、演出制御プロセス処理における飾り図柄変動中処理(ステップS1803)を示すフローチャートである。飾り図柄変動中処理において、演出制御用マイクロコンピュータ100は、プロセスタイマがタイムアウトしたか否か確認する(ステップS1841)。タイムアウトしたら、プロセスデータにおける演出制御実行データの切り替えを行う(ステップS1842)。すなわち、プロセスデータにおいて、次に設定されているプロセスタイマをスタートさせるとともに(ステップS1843)、次に設定されている表示制御実行データにもとづいてLCD制御を行う(ステップS1844)。また、プロセスデータ中の次に設定されているランプ制御実行データにもとづいてランプ・LED制御を行う(ステップS1845)。
そして、演出制御用マイクロコンピュータ100は、変動時間タイマがタイムアウトしていたら(ステップS1846)、演出制御プロセスフラグの値を飾り図柄停止待ち処理に対応した値にする(ステップS1847)。
次に、電源断状態となったあと遊技機への電力供給が再開されたときの可変表示装置9等の表示制御について詳しく説明する。図72は、電力供給が復旧したときの可変表示装置9等の表示状態の例を示すタイミング図である。図73は、電力供給が復旧したときの可変表示装置9等の表示状態の例を示す説明図である。
この例では、始動入賞にもとづく表示結果がはずれとなる特図変動および飾り変動の実行中であるときに電源断状態となり、その後に電力供給が復旧したときを例に説明する。なお、この例では、電源断が発生したときは保留記憶がないものとする。
図72に示すように、保留記憶がないときに、始動入賞口14への始動入賞(始動入賞)が発生すると、遊技制御用マイクロコンピュータ560は、始動入賞にもとづく変動表示を開始できる状態となったときに、ステップS3068にて始動入賞にもとづく表示結果がはずれであると判定したことにもとづいて、ステップS3091にて複数種類の変動パターンから実行する変動パターンを決定する。ここでは、表示結果がはずれとなる可変表示の変動パターンが選択される。
遊技制御用マイクロコンピュータ560は、事前判定(ステップS3067〜S3069参照)を実行したあと、始動入賞にもとづく変動パターンを示す変動パターンコマンドと、表示結果がはずれとなることを指定する表示結果指定コマンドとを送信する(ステップS3092a,S3092b,S3093a,S3093b参照)。また、遊技制御用マイクロコンピュータ560は、始動入賞に応じた特別図柄の変動表示(特図変動)を開始する。
演出制御用マイクロコンピュータ100は、始動入賞にもとづく変動パターンコマンドおよび表示結果指定コマンドを受信すると、受信した変動パターンコマンドにもとづいて、表示結果がはずれとなる飾り図柄の変動パターンを決定し(ステップS861参照)、決定した変動パターンに従って飾り図柄の変動表示(飾り変動)を実行する。
この例では、特別図柄表示器8にて特図変動の実行中であり、可変表示装置9にて飾り変動の実行中である(図73(A))ときに、電源断が発生して電源断処理(図17、図18参照)が実行され、その後に遊技機への電力供給が復旧して遊技状態復旧処理(図27参照)が実行されるものとする。
電力供給が復旧すると、遊技制御用マイクロコンピュータ560は、停電復旧コマンドを送信する(ステップS2002参照)。
演出制御用マイクロコンピュータ100は、停電復旧コマンドを受信すると、可変表示装置9に停電復旧していることを示す停電復旧中画面(復旧中画面)を表示するとともに(図73(C))、飾り復旧フラグをセットする(ステップS7633,S7634参照)。
次いで、遊技制御用マイクロコンピュータ560は、電源断時に特別図柄の変動中であったことを確認し(ステップS2003参照)、電源断時に実行されていた可変表示を開始する際に送信した表示結果指定コマンドを再度送信するとともに(ステップS2004参照)、変動中復旧フラグをセットする(ステップS2005参照)。演出制御用マイクロコンピュータ100は、表示結果指定コマンドを受信すると、表示結果指定コマンドが示す飾り図柄の表示結果(特別図柄の表示結果と同じ)をセーブする(ステップS7629,S7630参照)。
また、遊技制御用マイクロコンピュータ560は、遊技状態復旧処理を終えて遊技制御処理を開始したあと、復旧した特別図柄の変動時間が終了したときに、変動中復旧フラグがセットされているため(ステップS3136参照)、デモンストレーション表示コマンドを送信するとともに(ステップS3137参照)、特別図柄の停止図柄を表示する(ステップS3138参照)。
演出制御用マイクロコンピュータ100は、復旧コマンドを受信した後に、デモンストレーション表示コマンドを受信すると(ステップS7637参照)、経過時間計測タイマをスタートする(ステップS7638参照)。また、演出制御用マイクロコンピュータ100は、飾り復旧フラグがセットされているため、可変表示装置9に初期出目を表示する(ステップS7641参照)(図73(I))。ここでは、初期出目は、「3,4,9」であるものとする。そして、演出制御用マイクロコンピュータ100は、始動入賞が発生することなく所定期間(例えばt秒)が経過して経過時間計測タイマがタイムアウトすると(ステップS816参照)、デモンストレーション画面を可変表示装置9に表示する(図73(J))。すなわち、可変表示装置9に、初期出目が所定期間(例えばt秒)表示されたあと、デモンストレーション画面が表示される。
なお、図73には、停電復旧中画面や初期出目、デモンストレーション画面として、あらかじめ決められている初期図柄を表示する画面が例示されているが、そのような画面は単なる一例である。
次に、ハンマ151を用いた遊技演出の具体例について説明する。図74は、可変表示装置9の表示状態とハンマ151の動作状態との関係の一例を示す説明図である。変動パターンコマンドの受信に応じて飾り図柄の変動パターンを決定すると、演出制御用マイクロコンピュータ100は、可変表示装置9において飾り図柄の変動表示を開始する(図74(A)参照)。ここでは、ステップS861で、飾り図柄の変動パターンとして、可動部材としてのハンマ151を用いた演出パターンが決定されたとする。
飾り図柄の変動表示を開始したあと所定期間が経過すると、演出制御用マイクロコンピュータ100は、可変表示装置9の表示領域H1において左中右図柄を仮停止状態(最終停止ではないが停止表示されている状態)にさせるとともに、操作スイッチ81の押下を遊技者に促すためのボタン誘導表示を表示領域H2に表示する制御を行う(図74(B)参照)。例えば、ボタン誘導表示として、「ボタンを押せ!」という表示が行われる。
ボタン誘導表示が実行されている期間中に、遊技者によって操作スイッチ81が押下されると(図74(C))、演出制御用マイクロコンピュータ100は、ボタン誘導表示を終了するとともに、モータ150に対して正回転用の駆動信号を出力する。なお、演出制御用マイクロコンピュータ100は、ボタン誘導表示が実行されていない期間では、操作スイッチ81が押下されて操作信号が出力されてもそれを無視する。従って、遊技の進行中に遊技者が操作可能な操作手段としての操作スイッチ81は、実際には、遊技の進行中に演出制御用マイクロコンピュータ100が設定する操作可能期間において操作可能である。
モータ150に対して正回転用の駆動信号が出力されると、ハンマ151は、正回転(時計回り方向)に振り下ろされるような動作を行う(図74(D)参照)。また、演出制御用マイクロコンピュータ100は、操作スイッチ81からの信号の入力タイミングに応じてハンマ151が振り下ろされるタイミングを判定し、その判定タイミングに同期させて仮停止状態にしている飾り図柄のうちの飾り図柄の左図柄の変動表示を開始し、再変動表示を開始する。この実施の形態では、ハンマ151は、振り下ろされたときに左図柄の表示位置を通過するように設置されている。よって、可変表示装置9の表示とハンマ151の動作によって、仮停止状態にされている飾り図柄のうちの左図柄が、ハンマ151によって打撃されたことにより変動を再開したかのような演出が実行される。
左図柄の再変動表示を開始すると、演出制御用マイクロコンピュータ100は、モータ150に対して逆回転用の駆動信号を出力する。モータ150に対して逆回転用の駆動信号が出力されると、ハンマ151は、逆方向(反時計回り方向)に移動して元の位置に戻されるような動作を行う(図74(E)、図74(F)参照)。
そして、演出制御用マイクロコンピュータ100は、飾り図柄の変動時間が経過すると、決定されている停止図柄になるように左図柄を停止する。すなわち、大当り図柄にすることに決定されているときは、可変表示の表示結果として大当り図柄を停止表示し(図74(E)参照)、はずれ図柄にすることに決定されているときは、可変表示の表示結果としてはずれ図柄を停止表示する(図74(F)参照)。
図75は、可変表示装置9の表示状態とハンマ151の動作状態との関係の他の例を示す説明図である。図75に示すように、ボタン誘導表示が実行されている期間中に、遊技者によって操作スイッチ81が押下されなかった場合には、演出制御用マイクロコンピュータ100は、所定時間経過後に、再変動表示を開始する(図75(C)参照)。その他の表示制御は、図74に示された表示制御と同様である。すなわち、演出制御用マイクロコンピュータ100は、飾り図柄の変動時間が経過すると、決定されている停止図柄になるように左図柄を停止する。大当り図柄にすることに決定されているときは、可変表示の表示結果として大当り図柄を停止表示し(図75(D)参照)、はずれ図柄にすることに決定されているときは、可変表示の表示結果としてはずれ図柄を停止表示する(図75(E)参照)。
なお、演出制御用マイクロコンピュータ100は、ステップS776のモータ駆動信号出力処理において、ハンマ151が振り下ろされるときに、センサ155の検出信号がオン状態を示すと、モータ150の駆動を停止させる。また、ハンマ151を元の位置に戻すときに、センサ154の検出信号がオン状態を示すと、モータ150の駆動を停止させる。演出制御用マイクロコンピュータ100は、センサ154,155から検出信号が出力されているか否か、すなわち検出信号がオン状態を示しているか否かを、ステップS777のデータ入力処理において確認するのであるが、確認結果をRAMに形成されているフラグに記憶する。そして、演出制御用マイクロコンピュータ100は、モータ駆動信号出力処理において、そのフラグの状態を確認する。
図76は、ステップS779の報知処理を示すフローチャートである。報知処理において、演出制御用マイクロコンピュータ100は、復旧コマンドを受信したか否か確認する(ステップS871)。復旧コマンドを受信している場合には、図77(D)に例示するような復旧報知画面を可変表示装置9に表示する制御を行う(ステップS872)。また、演出制御用マイクロコンピュータ100は、初期化コマンドを受信したか否か確認する(ステップS873)。初期化コマンドを受信している場合には、図77(E)に例示するような初期化報知画面を可変表示装置9に表示する制御を行う(ステップS874)。また、演出制御用マイクロコンピュータ100は、遊技領域7の左右に設置された遊技状態報知ランプやスピーカを用いて、初期化処理が行われた旨を報知してもよい。なお、ステップS874において、初期化報知画面を可変表示装置9に表示する制御を行う場合、演出制御用マイクロコンピュータ100は、ステップS7641を実行したことにより初期出目を表示しているときも、可変表示装置9の表示画面の端部分に初期化報知画面を所定期間表示したり、遊技状態報知ランプやスピーカを用いて所定期間初期化を報知する。
演出制御用マイクロコンピュータ100は、復旧報知画面や初期化報知画面を、あらかじめ決められた所定時間継続して表示した後に消去するようにしてもよいし、初めて変動パターンコマンドを受信するまで復旧報知画面や初期化報知画面を表示し続けるようにしてもよい。あらかじめ決められた所定時間継続して表示した後に消去する場合には、その後、デモンストレーション画面(遊技が行われていないときに表示される画面であって、遊技者を引きつけるようなキャラクタ等を運動表示するような画面)を可変表示装置9に表示する制御を行う。この場合、例えば、遊技制御用マイクロコンピュータ100は、主基板31からデモ表示コマンドを受信し経過時間計測タイマをスタートさせた後に(ステップS7637参照)、タイマ値が0(タイムアウト)になると、復旧報知画面や初期化報知画面を消去してからデモンストレーション画面を表示してもよい。なお、あらかじめ決められた所定時間継続して表示した後に消去する場合に、所定時間が経過する前に変動パターンコマンドを受信したときには、変動パターンコマンドにもとづく飾り図柄の可変表示を開始する。
また、図77(E)には、初期化報知画面として、あらかじめ決められている初期図柄を表示する画面が例示されているが、そのような画面は単なる一例である。
また、演出制御用マイクロコンピュータ100は、賞球過多または賞球不足の報知を行っているか否か確認する(ステップS881)。そのような報知を行っていない場合には、賞球過多報知コマンドを受信したか否か確認する(ステップS882)。賞球過多報知コマンドを受信していた場合には、図77(B)に例示するような賞球過多報知画面を可変表示装置9に表示する制御を行う(ステップS883)。また、報知時間を決定するために報知タイマに報知時間に応じた値を設定する(ステップS884)。その後、ステップS891に移行する。
また、演出制御用マイクロコンピュータ100は、賞球不足報知コマンドを受信したか否か確認する(ステップS885)。賞球不足報知コマンドを受信していた場合には、図77(C)に例示するような賞球不足報知画面を可変表示装置9に表示する制御を行う(ステップS886)。また、報知時間を決定するために報知タイマに報知時間に応じた値を設定する(ステップS887)。その後、ステップS891に移行する。
賞球過多または賞球不足の報知を行っている場合には、報知タイマの値を1減算する(ステップS888)。報知タイマの値が0になっていなければ、すなわちタイムアウトしていなければステップS891に移行するが、タイムアウトしている場合には、報知を終了する。すなわち、可変表示装置9の表示画面を、図77(B),(C)に示す画面に代えて、図77(B),(C)に示す画面を表示する前に表示していた画面に戻す。その後、ステップS891に移行する。
なお、この実施の形態では、エラー報知処理は2ms毎に起動されるので、報知タイマに設定される報知時間に応じた値は、(報知時間[ms]/2)である。また、この実施の形態では、報知タイマによって報知時間に応じた値のカウント(減算方向のカウント)を行うと、演出制御用マイクロコンピュータ100は、独自に報知を終了するが、報知タイマの初期値を0にして、加算方向のカウントを行い、報知タイマの値が報知時間に応じた値になると報知を終了するようにしてもよい。
ステップS891では、演出制御用マイクロコンピュータ100は、払出異常報知開始コマンドを受信したか否か確認する。払出異常報知開始コマンドを受信していた場合には、図77(A)に例示するような払出異常報知画面を可変表示装置9に表示する制御を行う(ステップS892)。また、演出制御用マイクロコンピュータ100は、払出異常報知終了コマンドを受信したか否か確認する(ステップS893)。払出異常報知終了コマンドを受信していた場合には、報知を終了する。すなわち、可変表示装置9の表示画面を、図77(A)に示す画面に代えて、図77(A)に示す画面を表示する前に表示していた画面に戻す。
以上のように、払出制御用マイクロコンピュータ370側で通信に関わる異常が生じている場合には、図77(A)に例示するような払出異常報知画面が可変表示装置9に表示されるので、そのような異常を遊技店員等が直ちに把握できる。また、賞球過多または賞球不足のエラーが生じた場合には、図77(B),(C)に例示するようなエラー報知画面が可変表示装置9に表示されるので、そのようなエラーの発生を遊技店員等が直ちに把握できる。さらに、演出制御用マイクロコンピュータ100がエラー報知画面を独自に消去するので、遊技制御用マイクロコンピュータ560の負担が軽減される。
なお、図78に示すように、電源基板910および払出制御基板37は遊技枠に設置され、主基板31は遊技盤6に設置されていることが好ましい。そして、電源基板910から払出制御基板37に対して電源断信号が出力され、払出制御基板37から主基板31に電源断信号が出力されるように構成する。また、電源基板910から主基板31に対してクリア信号が出力され、主基板31から払出制御基板37に対してクリア信号が出力される。図78に示すように構成されているので、電源断信号およびクリア信号の配線構成を簡略化することができる。また、配線を短くすることができるので、ノイズの影響を受けにくくすることができる。さらに、電源監視回路920からの電源断信号を主基板31と払出制御基板37との双方に供給する場合に比べて、主基板31と払出制御基板37とが電力供給停止時処理を行うための遊技機内の配線が簡略化されコストを低減することができる。
また、上記の実施の形態では、電源基板910に電源監視回路920が搭載されていたが、図79に示すように、電源監視回路920を払出制御基板37に搭載してもよい。電源監視回路920を払出制御基板37に搭載した場合には、電源監視回路920からの電源断信号は、I/Oポート372gを介して払出制御用マイクロコンピュータ370に入力されるとともに、出力回路373Bを介して主基板31に出力される。図79に示す構成では、上記の実施の形態の場合とは異なり、電源基板910から払出制御基板37に対して、電源断信号を伝達するための信号線(ケーブル)を設ける必要はない。よって、電源基板910から電気部品制御基板への信号線数を減らすことができる。さらに、電源断信号を伝達する信号線の基板間での全体的な長さが短くなるので、電源断信号にノイズが乗る可能性を低減することができる。なお、入力ポートを介して電源断信号を入力した払出制御用マイクロコンピュータ370が、電源断信号を主基板31に出力するようにしてもよい。
また、上記の実施の形態では、電源基板910にクリアスイッチ921が搭載されていたが、図80に示すように、主基板31にクリアスイッチ921を搭載するようにしてもよい。主基板31にクリアスイッチ921を搭載した場合には、クリアスイッチ921からのクリア信号は、I/Oポート57を介して遊技制御用マイクロコンピュータ560に入力されるとともに、出力回路67を介して払出制御基板37に出力される。図80に示す構成では、上記の実施の形態の場合とは異なり、電源基板910から主基板31に対して、クリア信号を伝達するための信号線(ケーブル)を設ける必要はない。よって、電源基板910から電気部品制御基板への信号線数を減らすことができる。さらに、クリア信号を伝達する信号線の基板間での全体的な長さが短くなるので、クリア信号にノイズが乗る可能性を低減することができる。なお、遊技制御用マイクロコンピュータ560が、入力ポートを介して入力したクリア信号の状態を払出制御基板37に出力してもよい。
以上に説明したように、上記の各実施の形態では、電源監視回路920からの電源断信号が、払出制御基板37から主基板31に入力されるので、電力供給停止時処理の実行に関わる配線を簡略化して、遊技機のコストを低減させることができる。また、遊技制御用マイクロコンピュータ560が、状態復旧手段により復旧処理が行われたときに、その旨を報知させるための復旧コマンドを演出制御コマンドとして演出制御用マイクロコンピュータ100に送信するように構成されているので、復旧処理が行われたことを遊技者等に容易に認識させることができる。また、演出制御用マイクロコンピュータ100が、復旧コマンドを受信した後に、デモンストレーション表示指定コマンドを受信すると、可変表示装置9に初期出目を表示させるように構成されているので、1つのコマンドに初期出目の表示指示およびデモンストレーション画面の表示指示の両方の指示を含ませることができる。そのため、遊技制御用マイクロコンピュータ560から演出制御用マイクロコンピュータ100に送信されるコマンド数を低減することができ、遊技制御用マイクロコンピュータ560の制御負担を軽減することができる。
なお、上記の実施の形態では、払出制御用マイクロコンピュータ370は、払出モータ289が払出予定数分回転したことを検出したら(例えば、払出予定数分の駆動時間が経過したことを検出したら)、賞球払出の終了と決定したが、払出モータ位置センサによる検出回数が払出予定数に達したら賞球払出の終了と決定してもよい。すなわち、払出制御手段は、払出手段の動作量(この例では、払出モータ289の回転量または払出モータ位置センサによる検出回数)を検出することによって払い出しが完了したか否かを判定するように構成されていてもよい。
また、上記の実施の形態では、払出制御用マイクロコンピュータ370は、主基板31の遊技制御用マイクロコンピュータ560からの賞球個数信号をタイマ割込処理内の主制御通信処理(ステップS755)で受信していたが、賞球REQ信号を主基板31からのストローブ信号(払出制御INT信号)とし、外部割込にもとづく割込処理で賞球個数信号を受信するようにしてもよい。
上記の各実施の形態のパチンコ遊技機は、主として、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が大当り図柄であると所定の遊技価値が遊技者に付与可能になるパチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になるパチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄になると開放する所定の電動役物への入賞があると所定の権利が発生または継続するパチンコ遊技機であっても、本発明を適用できる。さらに、遊技媒体が遊技球であるパチンコ遊技機に限られず、遊技媒体がコイン(メダル)等のスロット機等においても、遊技媒体の払い出しを行う電気部品が備えられている場合には本発明を適用することができる。さらに、遊技球をコインに代わる遊技媒体とするようなスロット機等においても、遊技媒体の払い出しを行う電気部品が備えられている場合には本発明を適用することができる。
なお、遊技制御用マイクロコンピュータ560が含む入賞数計数手段、払出数データ送信手段、景品遊技媒体数データ減算手段、送信回数計数手段、遊技制御側電力供給停止時処理手段、初期化操作判定手段、遅延処理手段、遊技制御側復旧手段、払出エラー判定手段および払出エラー報知コマンド送信手段は、具体的には、ROM54に格納されているプログラムに従って処理を実行するCPU56(遊技制御用マイクロコンピュータ560に含まれる)によって実現されているが、入賞数計数手段は、遊技制御用マイクロコンピュータ560におけるステップS113,S114の処理を実行する部分に相当し、払出数データ送信手段は、遊技制御用マイクロコンピュータ560におけるステップS254,S255の処理を実行する部分に相当し、景品遊技媒体数データ減算手段は、遊技制御用マイクロコンピュータ560におけるステップS254,S255の処理の後にステップS256の処理を実行する部分に相当し、送信回数計数手段は、遊技制御用マイクロコンピュータ560におけるステップS257の処理を実行する部分に相当し、遊技制御側電力供給停止時処理手段は、遊技制御用マイクロコンピュータ560におけるステップS454〜S481の処理を実行する部分に相当し、初期化操作判定手段は、遊技制御用マイクロコンピュータ560におけるステップS81の処理を実行する部分に相当し、遅延処理手段は、遊技制御用マイクロコンピュータ560におけるステップS83〜S88の処理を実行する部分に相当し、遊技制御側復旧手段は、遊技制御用マイクロコンピュータ560におけるステップS8,S9,S91〜S93の処理を実行する部分に相当し、払出エラー判定手段は、遊技制御用マイクロコンピュータ560におけるステップS295の処理を実行する部分に相当し、払出エラー報知コマンド送信手段は、遊技制御用マイクロコンピュータ560におけるステップS296の処理を実行する部分に相当する。
また、払出制御用マイクロコンピュータ370が含む払出数データ受信手段、景品遊技媒体払出制御手段、払出制御側電力供給停止時処理手段および払出制御側復旧手段は、具体的には、ROMに格納されているプログラムに従って処理を実行する払出制御用マイクロコンピュータ370によって実現されているが、払出数データ受信手段は、払出制御用マイクロコンピュータ370におけるステップS545の処理を実行する部分に相当し、景品遊技媒体払出制御手段は、払出制御用マイクロコンピュータ370におけるステップS631〜S635,S627の処理を実行する部分に相当し、払出制御側電力供給停止時処理手段は、払出制御用マイクロコンピュータ370におけるステップS911〜S931の処理を実行する部分に相当し、払出制御側復旧手段は、払出制御用マイクロコンピュータ370におけるステップS710の処理を実行する部分に相当する。
なお、上述した実施の形態では、以下の(1)〜(5)に示すような遊技機の特徴的構成も示されている。
(1)遊技制御用マイクロコンピュータからの演出制御コマンドを中継して演出制御用マイクロコンピュータへ送信する中継基板(例えば、中継基板77)が設けられているように構成されていることが好ましい。そのような構成によれば、遊技制御用マイクロコンピュータからの演出制御コマンドを中継して演出制御用マイクロコンピュータへ送信する中継基板が設けられているので、演出制御基板および演出制御基板に接続される周辺基板から遊技制御基板に不正信号を伝達させるような不正行為の発見が容易になる。
(2)遊技の進行中に遊技者が操作可能な操作手段(例えば、操作スイッチ81)を備え、演出制御基板は、操作手段が操作されたことを示す操作信号が入力される操作信号入力手段(例えば入力ポート106)を備え、演出制御用マイクロコンピュータは、操作信号が入力されたことに応じて、演出用の電気部品を制御してあらかじめ決められている特定の演出(例えばハンマ151と飾り図柄とが共動して行われる演出)を開始させる制御を行う操作対応演出開始手段(例えば演出制御用マイクロコンピュータ100におけるステップS861,S862の処理を実行する部分、特にステップS861においてハンマ151と飾り図柄とが共動して行われる演出を選択する処理)を含むように構成されていてもよい。そのような構成によれば、中継基板が設けられている場合に、演出制御用マイクロコンピュータが、操作信号が入力されたことに応じて、演出用の電気部品を制御してあらかじめ決められている特定の演出を開始させる制御を行うように構成されているので、遊技演出の内容を豊富にするために操作信号を出力する操作手段を設けても、操作信号が遊技制御基板への不正信号に流用されてしまうことはない。
(3)遊技領域を形成する遊技盤と、該遊技盤が取り付けられる遊技枠と、遊技制御基板および払出制御基板に対して電力供給を行う電源基板とを備え、電源監視手段は電源基板に搭載され、電源基板および払出制御基板は遊技枠に付属し、遊技制御基板は遊技盤に付属するように構成されている(図77参照)ことが好ましい。そのような構成によれば、電源監視手段が電源基板に搭載され、電源基板および払出制御基板は遊技枠に付属し、遊技制御基板は遊技盤に付属しているので、電源基板からの電圧低下検出信号の配線構成を簡略化でき、配線長が短くなってノイズの影響を受けにくくすることができる。
(4)入賞数計数手段は、入賞数の計数として、所定のカウンタ(例えば、賞球カウンタ)のカウント値を歩進させ(例えば、ステップS114)、送信回数計数手段は、払出数データの送信回数の計数として、所定のカウンタのカウント値を、入賞数計数手段が歩進させた方向と逆方向に歩進させ(例えば、ステップS257)、払出エラー判定手段は、所定のカウンタのカウント値があらかじめ決められた過多検出用所定値(例えば、250)に達すると景品遊技媒体の払出過多が生じたと判定するように構成されていてもよい。そのような構成によれば、入賞数計数手段が、入賞数の計数として所定のカウンタのカウント値を歩進させ、送信回数計数手段が、払出数データの送信回数の計数として所定のカウンタのカウント値を入賞数計数手段が歩進させた方向と逆方向に歩進させ、所定のカウンタのカウント値があらかじめ決められた過多検出用所定値に達すると景品遊技媒体の払出過多が生じたと判定するように構成されているので、一つのカウンタを用いた制御によって景品遊技媒体の払出過多が生じたと判定することができ、払出過多に関する制御を簡略化できる。
(5)払出エラー判定手段は、所定のカウンタのカウント値があらかじめ決められた不足検出用所定値(例えば、0)に達すると景品遊技媒体の払出不足が生じたと判定するように構成されていてもよい。そのような構成によれば、所定のカウンタのカウント値があらかじめ決められた不足検出用所定値に達すると景品遊技媒体の払出不足が生じたと判定するように構成されているので、一つのカウンタを用いた制御によって景品遊技媒体の払出過多および払出不足が生じたと判定することができ、払出過多および払出不足に関する制御を簡略化できる。