以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機1を正面からみた正面図である。なお、ここでは、遊技機の一例としてパチンコ遊技機を示すが、本発明はパチンコ遊技機に限られず、例えばコイン遊技機やスロット機等であってもよい。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿3がある。打球供給皿3の下部には、打球供給皿3からあふれた遊技球を貯留する余剰玉受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の後方には、遊技盤6が着脱可能に取り付けられている。また、遊技盤6の前面には遊技領域7が設けられている。
遊技領域7の中央付近には、複数種類の図柄を可変表示するための可変表示部(特別図柄表示装置)9と7セグメントLEDによる普通図柄表示器(普通図柄表示装置)10とを含む可変表示装置8が設けられている。可変表示部9には、例えば「左」、「中」、「右」の3つの図柄表示エリアがある。可変表示装置8の側部には、打球を導く通過ゲート11が設けられている。通過ゲート11を通過した打球は、玉出口13を経て始動入賞口14の方に導かれる。通過ゲート11と玉出口13との間の通路には、通過ゲート11を通過した打球を検出するゲートスイッチ12がある。また、始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ17によって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。この実施の形態では、開閉板20が大入賞口を開閉する手段となる。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(Vゾーン)に入った入賞球はVカウントスイッチ22で検出される。また、開閉板20からの入賞球はカウントスイッチ23で検出される。可変表示装置8の下部には、始動入賞口14に入った入賞球数を表示する4個の表示部を有する始動入賞記憶表示器18が設けられている。この例では、4個を上限として、始動入賞がある毎に、始動入賞記憶表示器18は点灯している表示部を1つずつ増やす。そして、可変表示部9の可変表示が開始される毎に、点灯している表示部を1つ減らす。
遊技盤6には、複数の入賞口19,24が設けられ、遊技球のそれぞれの入賞口19,24への入賞は、対応して設けられている入賞口スイッチ19a,19b,24a,24bによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、遊技効果LED28aおよび遊技効果ランプ28b,28cが設けられている。
そして、この例では、一方のスピーカ27の近傍に、景品球払出時に点灯する賞球ランプ51が設けられ、他方のスピーカ27の近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カード内に記録された残額情報に端数(100円未満の数)が存在する場合にその端数を打球供給皿3の近傍に設けられる度数表示LEDに表示させるための端数表示スイッチ152、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
打球発射装置から発射された打球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が通過ゲート11を通ってゲートスイッチ12で検出されると、普通図柄表示器10の表示数字が連続的に変化する状態になる。また、打球が始動入賞口14に入り始動口スイッチ17で検出されると、図柄の変動を開始できる状態であれば、可変表示部9内の図柄が回転を始める。図柄の変動を開始できる状態でなければ、始動入賞記憶を1増やす。
可変表示部9内の画像の回転は、一定時間が経過したときに停止する。停止時の画像の組み合わせが大当り図柄の組み合わせであると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球が特定入賞領域に入賞しVカウントスイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
停止時の可変表示部9内の画像の組み合わせが確率変動を伴う大当り図柄の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、高確率状態という遊技者にとってさらに有利な状態となる。また、普通図柄表示器10における停止図柄が所定の図柄(当り図柄=小当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、高確率状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。
次に、パチンコ遊技機1の裏面に配置されている各基板について説明する。
図2に示すように、パチンコ遊技機1の裏面では、枠体2A内の機構板の上部に玉貯留タンク38が設けられ、パチンコ遊技機1が遊技機設置島に設置された状態でその上方から遊技球が球貯留タンク38に供給される。球貯留タンク38内の遊技球は、誘導樋39を通って賞球ケース40Aで覆われる球払出装置に至る。
遊技機裏面側では、可変表示部9を制御する図柄制御基板を含む可変表示制御ユニット29、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37、およびモータの回転力を利用して打球を遊技領域7に発射する打球発射装置が設置されている。さらに、装飾ランプ25、遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に信号を送るためのランプ制御基板35、スピーカ27からの音声発生を制御するための音声制御基板70および打球発射装置を制御するための発射制御基板91も設けられている。
さらに、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910が設けられ、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および球貸し個数信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤34が設置されている。
なお、図2には、ランプ制御基板35および音声制御基板70からの信号を、枠側に設けられている遊技効果LED28a、遊技効果ランプ28b,28c、賞球ランプ51および球切れランプ52に供給するための電飾中継基板A77が示されているが、信号中継の必要に応じて他の中継基板も設けられる。
図3はパチンコ遊技機1の機構板を背面からみた背面図である。球貯留タンク38に貯留された玉は誘導樋39を通り、図3に示されるように、球切れ検出器(球切れスイッチ)187a,187bを通過して球供給樋186a,186bを経て球払出装置97に至る。球切れスイッチ187a,187bは遊技球通路内の遊技球の有無を検出するスイッチであるが、球タンク38内の補給球の不足を検出する球切れ検出スイッチ167も設けられている。以下、球切れスイッチ187a,187bを、球切れスイッチ187と表現することがある。
球払出装置97から払い出された遊技球は、連絡口45を通ってパチンコ遊技機1の前面に設けられている打球供給皿3に供給される。連絡口45の側方には、パチンコ遊技機1の前面に設けられている余剰玉受皿4に連通する余剰玉通路46が形成されている。
入賞にもとづく景品球が多数払い出されて打球供給皿3が満杯になり、ついには遊技球が連絡口45に到達した後さらに遊技球が払い出されると遊技球は、余剰玉通路46を経て余剰玉受皿4に導かれる。さらに遊技球が払い出されると、感知レバー47が満タンスイッチ48を押圧して満タンスイッチ48がオンする。その状態では、球払出装置97内のステッピングモータの回転が停止して球払出装置97の動作が停止するとともに打球発射装置34の駆動も停止する。
次に、機構板36に設置されている中間ベースユニットの構成について説明する。中間ベースユニットには、球供給樋186a,186bや球払出装置97が設置される。図4に示すように、中間ベースユニットの上下には連結凹突部182が形成されている。連結凹突部182は、中間ベースユニットと機構板36の上部ベースユニットおよび下部ベースユニットを連結固定するものである。
中間ベースユニットの上部には通路体184が固定されている。そして、通路体184の下部に球払出装置97が固定されている。通路体184は、カーブ樋174(図3参照)によって流下方向を左右方向に変換された2列の遊技球を流下させる払出球通路186a,186bを有する。払出球通路186a,186bの上流側には、球切れスイッチ187a,187bが設置されている。球切れスイッチ187a,187bは、払出球通路186a,186b内の遊技球の有無を検出するものであって、球切れスイッチ187a,187bが遊技球を検出しなくなると球払出装置97における払出モータ(図4において図示せず)の回転を停止して球払出が不動化される。
なお、球切れスイッチ187a,187bは、払出球通路186a,186bに27〜28個程度の遊技球が存在することを検出できるような位置に係止片188によって係止されている。すなわち、球切れスイッチ187a,187bは、賞球の一単位の最大払出量(この実施の形態では15個)および球貸しの一単位の最大払出量(この実施の形態では100円:25個)以上が確保されていることが確認できるような位置に設置されている。
通路体184の中央部は、内部を流下する遊技球の球圧を弱めるように、左右に湾曲する形状に形成されている。そして、払出球通路186a,186bの間に止め穴189が形成されている。止め穴189の裏面は中間ベースユニットに設けられている取付ボスがはめ込まれる。その状態で止めねじがねじ止めされて、通路体184は中間ベースユニットに固定される。なお、ねじ止めされる前に、中間ベースユニットに設けられている係止突片185によって通路体184の位置合わせを行えるようになっている。
通路体184の下方には、球払出装置97に遊技球を供給するとともに故障時等には球払出装置97への遊技球の供給を停止する球止め装置190が設けられている。球止め装置190の下方に設置される球払出装置97は、直方体状のケース198の内部に収納されている。ケース198の左右4箇所には突部が設けられている。各突部が中間ベースユニットに設けられている位置決め突片に係った状態で、中間ベースユニットの下部に設けられている弾性係合片にケース198の下端がはめ込まれる。
図5は球払出装置97の分解斜視図である。球払出装置97の構成および作用について図5を参照して説明する。この実施形態における球払出装置97は、ステッピングモータ(払出モータ)289がスクリュー288を回転させることによりパチンコ玉を1個ずつ払い出す。なお、球払出装置97は、入賞にもとづく景品球だけでなく、貸し出すべき遊技球も払い出す。
図5に示すように、球払出装置97は、2つのケース198a,198bを有する。それぞれのケース198a,198bの左右2箇所に、球払出装置97の設置位置上部に設けられた位置決め突片に当接される係合突部280が設けられている。また、それぞれのケース198a,198bには、球供給路281a,281bが形成されている。球供給路281a,281bは湾曲面282a,282bを有し、湾曲面282a,282bの終端の下方には、球送り水平路284a,284bが形成されている。さらに、球送り水平路284a,284bの終端に球排出路283a,283bが形成されている。
球供給路281a,281b、球送り水平路284a,284b、球排出路283a,283bは、ケース198a,198bをそれぞれ前後に区画する区画壁295a,295bの前方に形成されている。また、区画壁295a,295bの前方において、玉圧緩衝部材285がケース198a,198b間に挟み込まれる。玉圧緩衝部材285は、球払出装置97に供給される玉を左右側方に振り分けて球供給路281a,281bに誘導する。
また、玉圧緩衝部材285の下部には、発光素子(LED)286と受光素子(図示せず)とによる払出モータ位置センサが設けられている。発光素子286と受光素子とは、所定の間隔をあけて設けられている。そして、この間隔内に、スクリュー288の先端が挿入されるようになっている。なお、玉圧緩衝部材285は、ケース198a,198bが張り合わされたときに、完全にその内部に収納固定される。
球送り水平路284a,284bには、払出モータ289によって回転させられるスクリュー288が配置されている。払出モータ289はモータ固定板290に固定され、モータ固定板290は、区画壁295a,295bの後方に形成される固定溝291a,291bにはめ込まれる。その状態で払出モータ289のモータ軸が区画壁295a,295bの前方に突出するので、その突出の前方にスクリュー288が固定される。スクリュー288の外周には、払出モータ289の回転によって球送り水平路284a,284bに載置された遊技球を前方に移動させるための螺旋突起288aが設けられている。
そして、スクリュー288の先端には、発光素子286を収納するように凹部が形成され、その凹部の外周には、2つの切欠部292が互いに180度離れて形成されている。従って、スクリュー288が1回転する間に、発光素子286からの光は、切欠部292を介して受光素子で2回検出される。
つまり、発光素子286と受光素子とによる払出モータ位置センサは、スクリュー288を定位置で停止するためのものであり、かつ、払出動作が行われた旨を検出するものである。なお、発光素子286、受光素子および払出モータ289からの配線は、まとめられてケース198a,198bの後部下方に形成された引出穴から外部に引き出されコネクタに結線される。
遊技球が球送り水平路284a,284bに載置された状態において、払出モータ289が回転すると、スクリュー288の螺旋突起288aによって、遊技球は、球送り水平路284a,284b上を前方に向かって移動する。そして、遂には、球送り水平路284a,284bの終端から球排出路283a,283bに落下する。このとき、左右の球送り水平路284a,284bからの落下は交互に行われる。すなわち、スクリュー288が半回転する毎に一方から1個の遊技球が落下する。従って、1個の遊技球が落下する毎に、発光素子286からの光が受光素子によって検出される。
図4に示すように、球払出装置97の下方には、球振分部材311が設けられている。球振分部材311は、振分用ソレノイド310によって駆動される。例えば、ソレノイド310のオン時には、球振分部材311は右側に倒れ、オフ時には左側に倒れる。振分用ソレノイド310の下方には、近接スイッチによる賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bが設けられている。入賞にもとづく賞球時には、球振分部材311は右側に倒れ、球排出路283a,283bからの玉はともに賞球カウントスイッチ301Aを通過する。また、球貸し時には、球振分部材311は左側に倒れ、球排出路283a,283bからの玉はともに球貸しカウントスイッチ301Bを通過する。従って、球払出装置97は、賞球時と球貸し時とで払出流下路を切り替えて、所定数の遊技媒体の払出を行うことができる。
このように、球振分部材311を設けることによって、2条の玉流路を落下してきた玉は、賞球カウントスイッチ301Aと球貸しカウントスイッチ301Bとのうちのいずれか一方しか通過しない。従って、賞球であるのか球貸しであるのかの判断をすることなく、賞球カウントスイッチ301Aと球貸しカウントスイッチ301Bの検出出力から、直ちに賞球数または球貸し数を把握することができる。
なお、この実施の形態では、電気的駆動源の駆動によって遊技球を払い出す球払出装置として、ステッピングモータの回転によって遊技球が払い出される球払出装置97を用いることにするが、その他の駆動源によって遊技球を送り出す構造の球払出装置を用いてもよいし、電気的駆動源の駆動によってストッパを外し遊技球の自重によって払い出しがなされる構造の球払出装置を用いてもよい。
図6は、主基板31における回路構成の一例を示すブロック図である。なお、図6には、払出制御基板37、ランプ制御基板35、音制御基板70、発射制御基板91および図柄制御基板80も示されている。なお、以下、払出制御基板37、ランプ制御基板35、音制御基板70および図柄制御基板80を電気部品制御基板ということがある。また、電気部品制御基板に搭載されているマイクロコンピュータを含む制御手段を電気部品制御手段ということがある。電気部品制御手段によって制御される電気部品のうち、遊技演出に関わるものが演出部品である。そして、ランプ制御基板35、音制御基板70および図柄制御基板80は演出部品制御基板の例でもある。
主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路53と、ゲートスイッチ12、始動口スイッチ17、Vカウントスイッチ22、カウントスイッチ23、入賞口スイッチ19a,19b,24a,24b、満タンスイッチ48、球切れスイッチ187および賞球カウントスイッチ301Aからの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16、開閉板20を開閉するソレノイド21および大入賞口内の経路を切り換えるための切換ソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
なお、図6には示されていないが、カウントスイッチ短絡信号もスイッチ回路58を介して基本回路53に伝達される。
また、基本回路53から与えられるアドレス信号をデコードしてI/Oポート部57のうちのいずれかのI/Oポートを選択するための信号を出力するアドレスデコード回路67と、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示部9の画像表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部機器に対して出力する情報出力回路64が搭載されている。
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段の一例であるRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。
さらに、主基板31には、電源投入時に基本回路53をリセットするためのシステムリセット回路65が設けられている。なお、球払出装置97から主基板31に入力されるスイッチ情報もあるが、図6ではそれらは省略されている。
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
なお、この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている始動記憶表示器18、ゲート通過記憶表示器41および装飾ランプ25の表示制御を行うとともに、枠側に設けられている遊技効果ランプ・LED28a,28b,28c、賞球ランプ51および球切れランプ52の表示制御を行う。また、特別図柄を可変表示する可変表示部9および普通図柄を可変表示する普通図柄表示器10の表示制御は、図柄制御基板80に搭載されている表示制御手段によって行われる。
図7は、図柄制御基板80内の回路構成を、可変表示部9の一実現例であるLCD(液晶表示装置)82、普通図柄表示器10、主基板31の出力ポート(ポート0,2)570,572および出力バッファ回路620,62Aとともに示すブロック図である。出力ポート(出力ポート2)572からは8ビットのデータが出力され、出力ポート570からは1ビットのストローブ信号(INT信号)が出力される。
表示制御用CPU101は、制御データROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して表示制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、表示制御用CPU101がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと表示制御用CPU101との間に、I/Oポートが設けられる。
そして、表示制御用CPU101は、受信した表示制御コマンドに従って、LCD82に表示される画面の表示制御を行う。具体的には、表示制御コマンドに応じた指令をVDP103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
なお、図7には、VDP103をリセットするためのリセット回路83、VDP103に動作クロックを与えるための発振回路85、および使用頻度の高い画像データを格納するキャラクタROM86も示されている。キャラクタROM86に格納される使用頻度の高い画像データとは、例えば、LCD82に表示される人物、動物、または、文字、図形もしくは記号等からなる画像などである。
入力バッファ回路105A,105Bは、主基板31から図柄制御基板80へ向かう方向にのみ信号を通過させることができる。従って、図柄制御基板80側から主基板31側に信号が伝わる余地はない。すなわち、入力バッファ回路105A,105Bは、入力ポートともに不可逆性情報入力手段を構成する。図柄制御基板80内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。
なお、出力ポート570,572の出力をそのまま図柄制御基板80に出力してもよいが、単方向にのみ信号伝達可能な出力バッファ回路620,62Aを設けることによって、主基板31から図柄制御基板80への一方向性の信号伝達をより確実にすることができる。すなわち、出力バッファ回路620,62Aは、出力ポートともに不可逆性情報出力手段を構成する。不可逆性情報出力手段によって、図柄制御基板80への信号伝達線を介する不正信号の入力が確実に防止される。
また、高周波信号を遮断するノイズフィルタ107として、例えば3端子コンデンサやフェライトビーズが使用されるが、ノイズフィルタ107の存在によって、表示制御コマンドに基板間でノイズが乗ったとしても、その影響は除去される。なお、主基板31のバッファ回路620,62Aの出力側にもノイズフィルタを設けてもよい。
図8は、主基板31およびランプ制御基板35における信号送受信部分を示すブロック図である。この実施の形態では、遊技領域7の外側に設けられている遊技効果LED28a、遊技効果ランプ28b,28cと遊技盤に設けられている装飾ランプ25の点灯/消灯と、賞球ランプ51および球切れランプ52の点灯/消灯とを示すランプ制御コマンドが主基板31からランプ制御基板35に出力される。また、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドも主基板31からランプ制御基板35に出力される。
図8に示すように、ランプ制御に関するランプ制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,3)570,573から出力される。出力ポート(出力ポート3)573は8ビットのデータを出力し、出力ポート570は1ビットのINT信号を出力する。ランプ制御基板35において、主基板31からの制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。なお、ランプ制御用CPU351がI/Oポートを内蔵していない場合には、入力バッファ回路355A,355Bとランプ制御用CPU351との間に、I/Oポートが設けられる。
ランプ制御基板35において、ランプ制御用CPU351は、各制御コマンドに応じて定義されている遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25の点灯/消灯パターンに従って、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に対して点灯/消灯信号を出力する。点灯/消灯信号は、遊技効果LED28a、遊技効果ランプ28b,28c、装飾ランプ25に出力される。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
主基板31において、CPU56は、RAM55の記憶内容に未払出の賞球残数があるときに賞球ランプ51の点灯を指示する制御コマンドを出力し、前述した遊技盤裏面の払出球通路186a,186bの上流に設置されている球切れスイッチ187a,187b(図3参照)が遊技球を検出しなくなると球切れランプ52の点灯を指示する制御コマンドを出力する。ランプ制御基板35において、各制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。ランプ制御用CPU351は、それらの制御コマンドに応じて、賞球ランプ51および球切れランプ52を点灯/消灯する。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
さらに、ランプ制御用CPU351は、制御コマンドに応じて始動記憶表示器18およびゲート通過記憶表示器41に対して点灯/消灯信号を出力する。
入力バッファ回路355A,355Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路355A,355Bは、主基板31からランプ制御基板35へ向かう方向にのみ信号を通過させることができる。従って、ランプ制御基板35側から主基板31側に信号が伝わる余地はない。たとえ、ランプ制御基板35内の回路に不正改造が加えられても、不正改造によって出力される信号がメイン基板31側に伝わることはない。なお、入力バッファ回路355A,355Bの入力側にノイズフィルタを設けてもよい。
また、主基板31において、出力ポート570,573の外側にバッファ回路620,63Aが設けられている。バッファ回路620,63Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、ランプ制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,63Aの出力側にノイズフィルタを設けてもよい。
図9は、主基板31における音声制御コマンドの信号送信部分および音声制御基板70の構成例を示すブロック図である。この実施の形態では、遊技進行に応じて、遊技領域7の外側に設けられているスピーカ27の音声出力を指示するための音声制御コマンドが、主基板31から音声制御基板70に出力される。
図9に示すように、音声制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,4)570,574から出力される。出力ポート(出力ポート4)574からは8ビットのデータが出力され、出力ポート570からは1ビットのINT信号が出力される。音声制御基板70において、主基板31からの各信号は、入力バッファ回路705A,705Bを介して音声制御用CPU701に入力する。なお、音声制御用CPU701がI/Oポートを内蔵していない場合には、入力バッファ回路705A,705Bと音声制御用CPU701との間に、I/Oポートが設けられる。
そして、例えばディジタルシグナルプロセッサによる音声合成回路702は、音声制御用CPU701の指示に応じた音声や効果音を発生し音量切替回路703に出力する。音量切替回路703は、音声制御用CPU701の出力レベルを、設定されている音量に応じたレベルにして音量増幅回路704に出力する。音量増幅回路704は、増幅した音声信号をスピーカ27に出力する。
入力バッファ回路705A,705Bとして、例えば、汎用のCMOS−ICである74HC540,74HC14が用いられる。入力バッファ回路705A,705Bは、主基板31から音声制御基板70へ向かう方向にのみ信号を通過させることができる。よって、音声制御基板70側から主基板31側に信号が伝わる余地はない。従って、音声制御基板70内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。なお、入力バッファ回路705A,705Bの入力側にノイズフィルタを設けてもよい。
また、主基板31において、出力ポート570,574の外側にバッファ回路620,67Aが設けられている。バッファ回路620,67Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、音声制御基板70から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,67Aの出力側にノイズフィルタを設けてもよい。
図10は、払出制御基板37および球払出装置97の構成要素などの払出に関連する構成要素を示すブロック図である。図10に示すように、満タンスイッチ48からの検出信号は、中継基板71を介して主基板31のI/Oポート57に入力される。満タンスイッチ48は、余剰球受皿4の満タンを検出するスイッチである。また、球切れスイッチ187(187a,187b)からの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力される。
主基板31のCPU56は、球切れスイッチ187からの検出信号が球切れ状態を示しているか、または、満タンスイッチ48からの検出信号が満タン状態を示していると、払出禁止を指示する払出制御コマンドを送出する。払出禁止を指示する払出制御コマンドを受信すると、払出制御基板37の払出制御用CPU371は球払出処理を停止する。
さらに、賞球カウントスイッチ301Aからの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート57に入力される。賞球カウントスイッチ301Aは、球払出装置97の払出機構部分に設けられ、実際に払い出された賞球払出球を検出する。
入賞があると、払出制御基板37には、主基板31の出力ポート(ポート0,1)570,571から賞球個数を示す払出制御コマンドが入力される。出力ポート(出力ポート1)571は8ビットのデータを出力し、出力ポート570は1ビットのストローブ信号(INT信号)を出力する。賞球個数を示す払出制御コマンドは、入力バッファ回路373Aを介してI/Oポート372aに入力される。INT信号は、入力バッファ回路373Bを介して払出制御用CPU371の割込端子に入力されている。払出制御用CPU371は、I/Oポート372aを介して払出制御コマンドを入力し、払出制御コマンドに応じて球払出装置97を駆動して賞球払出を行う。
なお、この実施の形態では、払出制御用CPU371は、1チップマイクロコンピュータであり、少なくともRAMが内蔵されている。
また、主基板31において、出力ポート570,571の外側にバッファ回路620,68Aが設けられている。バッファ回路620,68Aとして、例えば、汎用のCMOS−ICである74HC250,74HC14が用いられる。このような構成によれば、外部から主基板31の内部に入力される信号が阻止されるので、払出制御基板37から主基板31に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路620,68Aの出力側にノイズフィルタを設けてもよい。
払出制御用CPU371は、出力ポート372gを介して、貸し球数を示す球貸し個数信号をターミナル基板160に出力し、ブザー駆動信号をブザー基板75に出力する。ブザー基板75にはブザーが搭載されている。さらに、出力ポート372eを介して、エラー表示用LED374にエラー信号を出力する。
さらに、払出制御基板37の入力ポート372bには、中継基板72を介して、賞球カウントスイッチ301Aおよび球貸しカウントスイッチ301Bからの検出信号が入力される。球貸しカウントスイッチ301Bは、球払出装置97の払出機構部分に設けられ、実際に払い出された貸し球を検出する。払出制御基板37からの払出モータ289への駆動信号は、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に伝えられる。
カードユニット50には、カードユニット制御用マイクロコンピュータが搭載されている。また、カードユニット50には、端数表示スイッチ152、連結台方向表示器153、カード投入表示ランプ154およびカード挿入口155が設けられている(図1参照)。残高表示基板74には、打球供給皿3の近傍に設けられている度数表示LED、球貸しスイッチおよび返却スイッチが接続される。
残高表示基板74からカードユニット50には、遊技者の操作に応じて、球貸しスイッチ信号および返却スイッチ信号が払出制御基板37を介して与えられる。また、カードユニット50から残高表示基板74には、プリペイドカードの残高を示すカード残高表示信号および球貸し可表示信号が払出制御基板37を介して与えられる。カードユニット50と払出制御基板37の間では、接続信号(VL信号)、ユニット操作信号(BRDY信号)、球貸し要求信号(BRQ信号)、球貸し完了信号(EXS信号)およびパチンコ機動作信号(PRDY信号)がI/Oポート372fを介してやりとりされる。
パチンコ遊技機1の電源が投入されると、払出制御基板37の払出制御用CPU371は、カードユニット50にPRDY信号を出力する。また、カードユニット制御用マイクロコンピュータは、VL信号を出力する。払出制御用CPU371は、VL信号の入力状態により接続状態/未接続状態を判定する。カードユニット50においてカードが受け付けられ、球貸しスイッチが操作され球貸しスイッチ信号が入力されると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRDY信号を出力する。この時点から所定の遅延時間が経過すると、カードユニット制御用マイクロコンピュータは、払出制御基板37にBRQ信号を出力する。
そして、払出制御基板37の払出制御用CPU371は、カードユニット50に対するEXS信号を立ち上げ、カードユニット50からのBRQ信号の立ち下がりを検出すると、払出モータ289を駆動し、所定個の貸し球を遊技者に払い出す。このとき、振分用ソレノイド310は駆動状態とされている。すなわち、球振分部材311を球貸し側に向ける。そして、払出が完了したら、払出制御用CPU371は、カードユニット50に対するEXS信号を立ち下げる。その後、カードユニット50からのBRDY信号がオン状態でなければ、賞球払出制御を実行する。
以上のように、カードユニット50からの信号は全て払出制御基板37に入力される構成になっている。従って、球貸し制御に関して、カードユニット50から主基板31に信号が入力されることはなく、主基板31の基本回路53にカードユニット50の側から不正に信号が入力される余地はない。
なお、この実施の形態では、カードユニット50が遊技機とは別体として遊技機に隣接して設置されている場合を例にするが、カードユニット50は遊技機と一体化されていてもよい。また、コイン投入に応じてその金額に応じた遊技球を遊技機が貸し出すように構成した場合でも本発明を適用できる。
図11は、遊技機の電源基板910の一構成例を示すブロック図である。電源基板910は、主基板31、図柄制御基板80、音声制御基板70、ランプ制御基板35および払出制御基板37等の電気部品制御基板と独立して設置され、遊技機内の各電気部品制御基板および機構部品が使用する電圧を生成する。この例では、AC24V、VSL(DC+30V)、DC+21V、DC+12VおよびDC+5Vを生成する。また、バックアップ電源となるコンデンサ916は、DC+5Vすなわち各基板上のIC等を駆動する電源のラインから充電される。
トランス911は、交流電源からの交流電圧を24Vに変換する。AC24V電圧は、コネクタ915に出力される。また、整流回路912は、AC24Vから+30Vの直流電圧を生成し、DC−DCコンバータ913およびコネクタ915に出力する。DC−DCコンバータ913は、+21V、+12Vおよび+5Vを生成してコネクタ915に出力する。コネクタ915は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。
ただし、電源基板910に各電気部品制御基板に至る各コネクタを設け、電源基板910から、中継基板を介さずにそれぞれの基板に至る各電圧を供給するようにしてもよい。
DC−DCコンバータ913からの+5Vラインは分岐してバックアップ+5Vラインを形成する。バックアップ+5Vラインとグラウンドレベルとの間には大容量のコンデンサ916が接続されている。コンデンサ916は、遊技機に対する電力供給が遮断されたときの電気部品制御基板のバックアップRAM(電源バックアップされているRAMすなわち記憶内容保持状態となりうる記憶手段)に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、+5Vラインとバックアップ+5Vラインとの間に、逆流防止用のダイオード917が挿入される。
なお、バックアップ電源として、+5V電源から充電可能な電池を用いてもよい。電池を用いる場合には、+5V電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。
また、電源基板910には、電源監視用IC902が搭載されている。電源監視用IC902は、VSL電源電圧を導入し、VSL電源電圧を監視することによって電源断の発生を検出する。具体的には、VSL電源電圧が所定値(この例では+22V)以下になったら、電源断が生ずるとして電圧低下信号を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧(この例では+5V)よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるVSLが用いられている。電源監視用IC902からの電圧低下信号は、主基板31や払出制御基板37等に供給される。
電源監視用IC902が電源断を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のCPUが暫くの間動作しうる程度の電圧である。また、電源監視用IC902が、CPU等の回路素子を駆動するための電圧(この例では+5V)よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、CPUが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。
さらに、監視電圧としてVSL(+30V)を用いる場合には、遊技機の各種スイッチに供給される電圧が+12Vであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、+30V電源の電圧を監視すると、+30V作成の以降に作られる+12Vが落ち始める以前の段階でそれの低下を検出できる。よって、+12V電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、+12Vより早く低下する+30V電源電圧を監視して電源断を認識すれば、スイッチ出力がオン状態を呈する前に電源復旧待ちの状態に入ってスイッチ出力を検出しない状態となることができる。
また、電源監視用IC902は、電気部品制御基板とは別個の電源基板910に搭載されているので、電源監視回路から複数の電気部品制御基板に電圧低下信号を供給することができる。電圧低下信号を必要とする電気部品制御基板が幾つあっても第1の電源監視手段は1つ設けられていればよいので、各電気部品制御基板における各電気部品制御手段が後述する復帰制御を行っても、遊技機のコストはさほど上昇しない。
なお、図11に示された構成では、電源監視用IC902の検出出力(電圧低下信号)は、バッファ回路918,919を介してそれぞれの電気部品制御基板(例えば主基板31と払出制御基板37)に伝達されるが、例えば、1つの検出出力を中継基板に伝達し、中継基板から各電気部品制御基板に同じ信号を分配する構成でもよい。また、電圧低下信号を必要とする基板数に応じたバッファ回路を設けてもよい。
さらに、電源基板910には、各基板にリセット信号を供給するリセット管理回路940が搭載されている。
図12は、リセット管理回路940の構成例を示すブロック図である。リセット管理回路940において、リセットIC651は、電源投入時に、外付けのコンデンサの容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。リセットIC651の出力は、各回路941〜949を介して、バッファ回路961〜964および遅延回路960に供給される。遅延回路960の出力はバッファ回路965に入力する。そして、バッファ回路961〜965が各電気部品制御基板にリセット信号として供給される。従って、リセットIC651の出力がハイレベルになると、各電気部品制御基板におけるCPUが動作可能状態になる。
また、リセットIC651は、電源監視用IC902が監視する電源電圧と等しい電源電圧であるVSLの電源電圧を監視して電圧値が所定値(電源監視用IC902が電圧低下信号を出力する電源電圧値よりも低い値)以下になるとローレベルになる。従って、CPU56および払出制御用CPU371は、電源監視用IC902からの電圧低下信号(電源断信号)に応じて所定の電力供給停止準備処理を行った後、システムリセットされることになる。
図12に示すように、リセットIC651からのリセット信号は、NAND回路947に入力されるとともに、反転回路(NOT回路)944を介してカウンタIC941のクリア端子に入力される。カウンタIC941は、クリア端子への入力がローレベルになると、発振器943からのクロック信号をカウントする。そして、カウンタIC941のQ5出力がNOT回路945,946を介してNAND回路947に入力される。
また、カウンタIC941のQ6出力は、フリップフロップ(FF)942のクロック端子に入力される。フリップフロップ942のD入力はハイレベルに固定され、Q出力は論理和回路(OR回路)949に入力される。OR回路949の他方の入力には、NAND回路947の出力がNOT回路948を介して導入される。そして、OR回路949の出力が、バッファ回路961〜965を介して各CPUに供給されている。このような構成によれば、電源投入時に、各CPUのリセット端子に2回のリセット信号(ローレベル信号)が与えられるので、各CPUは、確実に動作を開始する。
そして、例えば、第1の電源監視回路である電源監視用IC902の検出電圧(電圧低下信号を出力することになる電圧)を+22Vとし、第2の電源監視回路に相当するリセットICの検出電圧を+9Vとする。そのように構成した場合には、第1の電源監視回路と第2の電源監視回路とは、同一の電源VSLの電圧を監視するので、第1の電圧監視回路が電圧低下信号を出力するタイミングと第2の電圧監視回路が電圧低下信号を出力するタイミングの差を所望の所定期間に確実に設定することができる。所望の所定期間とは、第1の電源監視回路からの電圧低下信号に応じて電力供給停止準備処理を開始してから電力供給停止準備処理が確実に完了するまでの期間である。
この例では、第1の電源監視手段が検出信号を出力することになる第1検出条件は+30V電源電圧が+22Vにまで低下したことであり、第2の電源監視手段が検出信号を出力することになる第2検出条件は+30V電源電圧が+9Vにまで低下したことになる。ただし、ここで用いられている電圧値は一例であって、他の値を用いてもよい。
ただし、監視範囲が狭まるが、第1の電圧監視回路および第2の電圧監視回路の監視電圧として+5V電源電圧を用いることも可能である。その場合にも、第1の電圧監視回路の検出電圧は、第2の電圧監視回路の検出電圧よりも高く設定される。
主基板31および払出制御基板37のCPU56および払出制御用CPU371の駆動電源である+5V電源から電力が供給されていない間、RAMの少なくとも一部は、電源基板910から供給されるバックアップ電源によってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、+5V電源が復旧すると、リセット管理回路940からのリセット信号がハイレベルになるので、CPU56および払出制御用CPU371は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップRAMに保存されているので、停電等からの復旧時に停電発生時の遊技状態に復帰することができる。
なお、図12では、電源投入時に各電気部品制御基板のCPUのリセット端子に2回のリセット信号(ローレベル信号)が与えられる構成が示されたが、リセット信号の立ち上がりタイミングが1回しかなくても確実にリセット解除されるCPUを使用する場合には、符号941〜949で示された回路素子は不要である。その場合、リセットIC651の出力がそのままバッファ回路961〜964および遅延回路960に接続される。
この実施の形態では、電源基板910から各電気部品制御基板のCPUにリセット信号が供給される。また、遅延回路960は、主基板31のCPU56に対するリセット信号を遅延させる。従って、電源投入時に、主基板31のCPU56に対するリセット信号は、他の電気部品制御基板のCPUに対するリセット信号よりも遅く立ち上がる。すなわち、電源投入時に、各電気部品制御手段が立ち上がった後に、遊技制御手段が立ち上がる。
例えば、主基板31のCPU56が他の電気部品制御基板に対して制御コマンドを出力する際に、他の電気部品制御基板におけるCPUは既に立ち上がっているので、制御コマンドは確実に受信側の電気部品制御基板のCPUで受信される。
図13は、リセット管理回路940のリセットIC651とその周辺のICの出力信号の様子を示すタイミング図である。図13に示すように、リセットIC651の出力は、電源電圧のレベルが所定値(各CPUの正常な動作を担保することが可能なレベル、この例では各CPUは+5Vで動作可能なので例えば+9V)を越えるとハイレベルになる。リセットIC651の出力がハイレベルになると、カウンタIC941のクリア状態が解除されるので、カウンタIC941は発振器943の出力クロック信号のカウントを開始する。発振器943の発振周波数は例えば11.776MHzである。
カウンタIC941が16クロックをカウントするとQ5出力が立ち上がる。また、32クロックをカウントするとQ6出力がハイレベルに立ち上がる。カウンタIC941のQ6出力が立ち上がると、FF942の出力がハイレベルになる。IC947は、カウンタIC941のQ6出力とリセットIC651の出力との論理積を反転する。OR回路949は、IC947の出力を反転するIC948の出力とFF942の出力との論理和をとって、図13に示すような信号を出力する。
バッファ回路961〜964はIC949の出力をそのまま通過させて主基板31のCPU56以外のCPUの対してリセット信号として出力する。また、バッファ回路965は、IC949の出力が遅延された信号を主基板31のCPU56に対してリセット信号として出力する。
従って、遊技機の電源オン時には、図13にIC961〜964出力およびIC965出力として示すように、各CPUのリセット端子に対して一旦リセット解除状態(ハイレベル)になってから再度リセット状態(ローレベル)になるような信号が供給される。すなわち、電源オン時には、各CPUをリセット状態とするようなローレベル信号が2回発生することになる。また、リセット解除を示すハイレベルが2回発生しているということもできる。その結果、各CPUは、最初のリセット解除を示すローレベルからハイレベルへの変化によって起動しなかったとしても、2回目のローレベルからハイレベルへの変化によって確実に起動することができる。よって、遊技機の電源投入時に、確実に遊技制御が開始される。
図13に示すように、主基板31へのリセット信号がリセット解除状態となるタイミングは、他の基板へのリセット信号がリセット解除状態となるタイミングよりも遅い。従って、主基板31のCPU56が他の電気部品制御基板に対して制御コマンドを出力する際に、他の電気部品制御基板におけるCPUは既に立ち上がっているので、制御コマンドは確実に受信側の電気部品制御基板のCPUで受信される。
なお、ここでは、リセット管理回路940が、主基板31に与えられるリセット解除タイミングと他の複数の電気部品制御基板に送られるリセット解除タイミングとをずらせるように制御したが、他の複数の電気部品制御基板に与えられるリセット解除タイミングをそれぞれずらすことも容易である。例えば、図12に示した回路構成において、バッファ回路961〜964の前に遅延回路を置き、各遅延回路の遅延量に差を設ければ、主基板31および他の電気部品制御基板に与えられるリセット解除タイミングのそれぞれの間で差を付けることができる。すなわち、各電気部品制御手段を、あらかじめ定められた順序で立ち上げることができる。
各電気部品制御基板のそれぞれにおいて自身が使用するリセット信号を作成するように構成した場合には、それぞれのリセット信号のリセット解除タイミングを調整することが難しいが、この実施の形態では、電源基板910におけるリセット管理回路940が一括して各基板に対するリセット信号を作成するので、立ち上げの順序制御を容易に調整することができる。
ただし、各電気部品制御基板のそれぞれにおいて自身が使用するリセット信号を作成するように構成することも可能である。そして、各電気部品制御基板のそれぞれにおいて、リセット解除のタイミングがあらかじめ決められたタイミングになるように各リセット信号作成手段が構成される。例えば、主基板31のリセット信号作成手段が最も遅くリセット解除を行うように、それぞれのタイミング設定がなされる。その場合には、リセット信号の一括管理を行うということはできないが、各電気部品制御基板を、あらかじめ定められた順序で立ち上げることができるという効果は発揮される。
なお、この実施の形態では、図12に例示したような立上管理手段が電源基板910に搭載されたが、立上管理手段を搭載した立上管理基板を別個に設けてもよい。ただし、一般にリセット信号は電源電圧の立ち上がりを利用して作成されるので、電源基板910を立上管理基板とした場合には、各リセット信号をより容易に作成できるメリットがある。
次に遊技制御動作について説明する。
図14は、主基板31におけるCPU56が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されCPU56のリセットが解除されると、メイン処理において、CPU56は、まず、必要な初期設定を行う(ステップS1)。
そして、電源断時にバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止準備処理)が行われたか否か確認する(ステップS2)。この実施の形態では、不測の電源断が生じた場合には、バックアップRAM領域のデータを保護するための電力供給停止準備処理が行われている。そのような処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、CPU56は初期化処理を実行する(ステップS2,S3)。
この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電源断時にバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。例えば、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。バックアップフラグ領域に設定されている「55H」は、電力供給停止準備処理においてバックアップRAM領域のデータ保護処理が完了したときに設定されたデータであり、バックアップRAM領域のデータにもとづくパリティコードである。
バックアップRAM領域にバックアップデータがある場合には、CPU56は、バックアップRAM領域のデータチェック(例えばパリティチェック)を行う(ステップS4)。不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する(ステップS5,S3)。
チェック結果が正常であれば、CPU56は、内部状態を電源断時の状態に戻すための遊技状態復旧処理を行う(ステップS6)。例えば、バックアップフラグの値が「55H」に設定され、かつ、チェック結果が正常である場合に、ステップS6の遊技状態復旧処理が実行される。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する(ステップS7)。
通常の初期化処理の実行(ステップS3)が完了すると、メイン処理で、タイマ割込フラグの監視(ステップS9)の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理(ステップS8)も実行される。
なお、この実施の形態では、ステップS2でバックアップデータの有無が確認された後、バックアップデータが存在する場合にステップS4でバックアップ領域のチェックが行われたが、逆に、バックアップ領域のチェック結果が正常であったことが確認された後、バックアップデータの有無の確認を行うようにしてもよい。また、バックアップデータの有無の確認、またはバックアップ領域のチェックの何れか一方の確認を行うことによって、停電復旧処理を実行するか否かを判定してもよい。
また、例えば停電復旧処理を実行するか否か判断する場合のパリティチェック(ステップS4)の際に、すなわち、遊技状態を復旧するか否か判断する際に、保存されていたRAMデータにおける特別プロセスフラグ等や始動入賞記憶数データによって、遊技機が遊技待機状態(図柄変動中でなく、大当り遊技中でなく、確変中でなく、また、始動入賞記憶がない状態)であることが確認されたら、遊技状態復旧処理を行わずに初期化処理を実行するようにしてもよい。
図15は、ステップS11の遊技制御処理を示すフローチャートである。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートセンサ12、始動口センサ17、カウントセンサ23および入賞口スイッチ19a,24aの状態を入力し、各入賞口や入賞装置に対する入賞があったか否か判定する(スイッチ処理:ステップS21)。
次いで、パチンコ遊技機1の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる(エラー処理:ステップS22)。
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う(ステップS23)。CPU56は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う(ステップS24)。
図16は、各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:大当りを発生させるか否か決定する(大当り判定用=特別図柄決定用)
(2)ランダム2−1〜2−3:左右中のはずれ図柄決定用
(3)ランダム3:大当り時の図柄の組合せを決定する(大当り図柄決定用=特別図柄判定用)
(4)ランダム4:はずれ時にリーチするか否か決定する(リーチ判定用)
(5)ランダム5:リーチ時の変動時間を決定する(リーチ種類決定用)
なお、遊技効果を高めるために、上記(1)〜(5)の乱数以外の乱数も用いられている。
ステップS23では、CPU56は、(1)の大当たり判定用乱数および(3)の大当り図柄判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数である。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、7セグメントLEDによる普通図柄表示器10を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
さらに、CPU56は、払出制御基板37等に送出される制御コマンドをRAM55の所定の領域に設定して各電気部品制御基板に対して制御コマンドを送出する処理を行う(コマンド制御処理:ステップS27)。
次いで、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などの情報出力信号を出力するデータ出力処理を行う(ステップS29)。
また、CPU56は、所定の条件が成立したときにソレノイド回路59を介して駆動指令を行う(ステップS30)。ソレノイド回路59は、駆動指令に応じてソレノイド16,21,21Aを駆動し、可変入賞球装置15または開閉板20を開状態または閉状態とする。あるいは、大入賞口内の経路を切り換える。
また、CPU56は、各入賞口への入賞を検出するためのスイッチ17,23,19a,19b,24a,24bの検出出力にもとづく賞球数の設定などを行う(ステップS31)。
次に、始動入賞口14への入賞にもとづいて可変表示部9に可変表示される図柄の決定方法について図17〜図19のフローチャートを参照して説明する。図17は打球が始動入賞口14に入賞したことを判定する処理を示し、図18は可変表示部9の可変表示の停止図柄を決定する処理を示す。図19は、大当りとするか否か決定する処理を示すフローチャートである。
打球が遊技盤6に設けられている始動入賞口14に入賞すると、始動口センサ17がオンする。遊技制御処理のステップS25の特別図柄プロセス処理において、図17に示すように、CPU56は、スイッチ回路58を介して始動口センサ17がオンしたことを判定すると(ステップS41)、始動入賞記憶数が最大値である4に達しているかどうか確認する(ステップS42)。始動入賞記憶数が4に達していなければ、始動入賞記憶数を1増やし(ステップS43)、大当り判定用乱数の値を抽出する。そして、それを始動入賞記憶数の値に対応した乱数値格納エリアに格納する(ステップS44)。なお、始動入賞記憶数が4に達している場合には、始動入賞記憶数を増やす処理を行わない。すなわち、この実施の形態では、最大4個の始動入賞口17に入賞した打球数が記憶可能である。
CPU56は、ステップS25の特別図柄プロセス処理において、図18に示すように始動入賞記憶数の値を確認する(ステップS50)。始動入賞記憶数が0でなければ、始動入賞記憶数=1に対応する乱数値格納エリアに格納されている値を読み出すとともに(ステップS51)、始動入賞記憶数の値を1減らし、かつ、各乱数値格納エリアの値をシフトする(ステップS52)。すなわち、始動入賞記憶数=n(n=2,3,4)に対応する乱数値格納エリアに格納されている値を、始動入賞記憶数=n−1に対応する乱数値格納エリアに格納する。
そして、CPU56は、ステップS51で読み出した値、すなわち抽出されている大当り判定用乱数の値にもとづいて当たり/はずれを決定する(ステップS53)。ここでは、大当り判定用乱数は0〜299の範囲の値をとることにする。図19に示すように、低確率時には例えばその値が「3」である場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。高確率時には例えばその値が「3」,「7」,「79」,「103」,「107」のいずれかである場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。
大当たりと判定されたときには、大当り図柄決定用乱数(ランダム3)を抽出しその値に従って大当り図柄を決定する(ステップS54)。また、リーチ種類決定用乱数(ランダム5)を抽出しその値にもとづいてリーチ種類を決定する(ステップS57)。
はずれと判定された場合には、CPU56は、リーチとするか否か判定する(ステップS58)。例えば、リーチ判定用の乱数であるランダム4の値が「105」〜「1530」のいずれかである場合には、リーチとしないと決定する。そして、リーチ判定用乱数の値が「0」〜「104」のいずれかである場合にはリーチとすることを決定する。リーチとすることを決定したときには、CPU56は、リーチ図柄の決定を行う。
この実施の形態では、ランダム2−1の値に従って左右図柄を決定する(ステップS59)。また、ランダム2−2の値に従って中図柄を決定する(ステップS60)。すなわち、ランダム2−1およびランダム2−2の値の0〜15の値に対応したいずれかの図柄が停止図柄として決定される。ここで、決定された中図柄が左右図柄と一致した場合には、中図柄に対応した乱数の値に1加算した値に対応する図柄を中図柄の確定図柄として、大当たり図柄と一致しないようにする。
さらに、CPU56は、リーチ種類決定用乱数(ランダム5)を抽出しその値にもとづいてリーチ種類を決定する(ステップS57)。
ステップS58において、リーチしないことに決定された場合には、ランダム2−1〜2−3の値に応じて左右中図柄を決定する(ステップS61)。なお、後述するように、この実施の形態では、高確率状態では、はずれ時の変動パターンとして変動時間が短縮されたものも使用される。そこで、高確率状態では、CPU56は、通常のはずれ時の変動パターンを用いるか短縮された変動パターンを用いるのかを、例えば所定の乱数等を用いて決定する。
以上のようにして、始動入賞にもとづく図柄変動の表示態様が大当たりとするか、リーチ態様とするか、はずれとするか決定され、それぞれの停止図柄の組合せが決定される。
なお、ステップS57において決定されるリーチ種類は、リーチ時の図柄の可変表示期間を示すものである。後で詳しく説明するが、この実施の形態では、リーチ時には、19.5秒、24.5秒および29.5秒のうちのいずれかの可変表示期間が用いられる。従って、ステップS57では、抽出されたランダム5の値に応じて、3種類の期間のうちのいずれかが決定される。そして、表示制御手段が、各可変表示時間のそれぞれについて複数用意されているリーチ種類の中から使用するものを決定する。すなわち、遊技制御手段では、大まかなリーチ種類が決定される。
また、高確率状態において、次に大当たりとなる確率が上昇するとともに、7セグメントLEDによる普通図柄表示器10の可変表示の確定までの時間が短縮され、かつ、普通図柄表示器10の可変表示結果にもとづく当たり時の可変入賞球装置15の開放回数および開放時間が高められるようにパチンコ遊技機1が構成されていてもよいし、普通図柄表示器10の可変表示結果にもとづく当たりの確率が高くなるように構成されていてもよい。また、それらのうちのいずれか一つまたは複数の状態のみが生ずるパチンコ遊技機1においても本発明は適用可能である。
例えば、可変表示部9の停止図柄の組合せが特定図柄となった場合に、大当たりとなる確率は上昇しないが普通図柄表示器10の可変表示結果にもとづく当たり時の可変入賞球装置15の開放回数および開放時間が高められる遊技機においても、リーチとすることが決定されたら、左右の停止図柄を特定図柄の表示態様と一致させるか否か、すなわちどの図柄でリーチ状態を発生させるかが所定の乱数等の手段によって決定される遊技機においても本発明を適用可能である。
また、この実施の形態で用いられた乱数および乱数値の範囲は一例であって、どのような乱数を用いてもよいし、範囲設定も任意である。
図20は、CPU56が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。図20に示す特別図柄プロセス処理は、図15のフローチャートにおけるステップS25の具体的な処理である。CPU56は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)を行った後に、内部状態に応じて、ステップS300〜S309のうちのいずれかの処理を行う。変動短縮タイマは、特別図柄の変動時間が短縮される場合に、変動時間を設定するためのタイマである。
特別図柄変動待ち処理(ステップS300):始動入賞口14(この実施の形態では可変入賞球装置15の入賞口)に打球入賞して始動口センサ17がオンするのを待つ。始動口センサ17がオンすると、始動入賞記憶数が満タンでなければ、始動入賞記憶数を+1するとともに大当り決定用乱数を抽出する。すなわち、図17に示された処理が実行される。
特別図柄判定処理(ステップS301):特別図柄の可変表示が開始できる状態になると、始動入賞記憶数を確認する。始動入賞記憶数が0でなければ、抽出されている大当り決定用乱数の値に応じて大当りとするかはずれとするか決定する。すなわち、図18に示された処理の前半が実行される。
停止図柄設定処理(ステップS302):左右中図柄の停止図柄を決定する。すなわち、図18に示された処理の中半が実行される。
リーチ動作設定処理(ステップS303):リーチ判定用乱数の値に応じてリーチ動作するか否か決定するとともに、リーチ種類決定用乱数の値に応じてリーチ時の変動期間を決定する。すなわち、図18に示された処理の後半が実行される。
全図柄変動開始処理(ステップS304):可変表示部9において全図柄が変動開始されるように制御する。このとき、図柄制御基板80に対して、左右中最終停止図柄と変動態様を指令する情報とが送信される。処理を終えると、内部状態(プロセスフラグ)をステップS305に移行するように更新する。
全図柄停止待ち処理(ステップS305):所定時間(ステップS310の変動短縮タイマで示された時間)が経過すると、可変表示部9において表示される全図柄が停止されるように制御する。そして、停止図柄が大当り図柄の組み合わせである場合には、内部状態(プロセスフラグ)をステップS306に移行するように更新する。そうでない場合には、内部状態をステップS300に移行するように更新する。
大入賞口開放開始処理(ステップS306):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド21を駆動して大入賞口を開放する。また、大当りフラグ(大当り中であることを示すフラグ)のセットを行う。処理を終えると、内部状態(プロセスフラグ)をステップS307に移行するように更新する。
大入賞口開放中処理(ステップS307):大入賞口ラウンド表示の表示制御コマンドデータを図柄制御基板80に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。最終的な大入賞口の閉成条件が成立したら、内部状態をステップS308に移行するように更新する。
特定領域有効時間処理(ステップS308):Vカウントスイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態をステップS306に移行するように更新する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、内部状態をステップS309に移行するように更新する。
大当り終了処理(ステップS309):大当り遊技状態が終了したことを遊技者に報知するための表示を行う。その表示が終了したら、内部状態をステップS300に移行するように更新する。
次に、主基板31から他の電気部品制御基板に対する制御コマンドの送出について説明する。図21は、主基板31から各電気部品制御基板に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」とされ、EXTデータの先頭ビット(ビット7)は必ず「0」とされる。なお、図21に示されたコマンド形態は一例であって他のコマンド形態を用いてもよい。また、この例では、制御コマンドが2つの制御信号で構成されていることになるが、制御コマンドを構成する制御信号数は、1であってもよいし、3以上の複数であってもよい。
図22は、各電気部品制御基板に対する制御コマンドを構成する8ビットの制御信号とINT信号(ストローブ信号)との関係を示すタイミング図である。図21に示すように、MODEまたはEXTのデータが出力ポートに出力されてから、所定期間が経過すると、CPU56は、データ出力を示す信号であるINT信号をオン状態にする。また、そこから所定期間が経過するとINT信号をオフ状態にする。
図23は、電気部品制御基板のうちの払出制御基板37に送出される払出制御コマンドの内容の一例を示す説明図である。図23に示す例において、MODE=FF(H),EXT=00(H)のコマンドFF00(H)は、払出可能状態を指定する払出制御コマンドである。MODE=FF(H),EXT=01(H)のコマンドFF01(H)は、払出停止状態を指定する払出制御コマンドである。また、MODE=F0(H)のコマンドF0XX(H)は、賞球個数を指定する払出制御コマンドである。EXTである「XX」が払出個数を示す。
払出制御手段は、主基板31の遊技制御手段からFF01(H)の払出制御コマンドを受信すると賞球払出および球貸しを停止する状態となり、FF00(H)の払出制御コマンドを受信すると賞球払出および球貸しができる状態になる。また、賞球個数を指定する払出制御コマンドを受信すると、受信したコマンドで指定された個数に応じた賞球払出制御を行う。
図24は、電気部品制御基板のうちの図柄制御基板80に送出される表示制御コマンドの内容の一例を示す説明図である。図24に示す例において、コマンド8000(H)〜8022(H)、8100(H)〜8122(H)は、特別図柄を可変表示する可変表示部9における特別図柄の変動パターンを指定する表示制御コマンドである。なお、変動パターンを指定するコマンドは変動開始指示も兼ねている。また、図24に示す例では70種類の変動パターン指定が可能であるが、それらの変動パターン指定のうちの一部のみを使用するようにしてもよい。
コマンド88XX(X=4ビットの任意の値)は、普通図柄表示器10で可変表示される普通図柄の変動パターンに関する表示制御コマンドである。コマンド89XXは、普通図柄の停止図柄を指定する表示制御コマンドである。コマンド8AXX(X=4ビットの任意の値)は、普通図柄の可変表示の停止を指示する表示制御コマンドである。
コマンド91XX、92XXおよび93XXは、特別図柄の左中右の停止図柄を指定する表示制御コマンドである。また、コマンドA0XXは、特別図柄の可変表示の停止を指示する表示制御コマンドである。コマンドBXXXは、大当り遊技開始から大当り遊技終了までの間に送出される表示制御コマンドである。そして、コマンドC000〜EXXXは、特別図柄の変動および大当り遊技に関わらない可変表示部9の表示状態に関する表示制御コマンドである。図柄制御基板80の表示制御手段は、主基板31の遊技制御手段から上述した表示制御コマンドを受信すると図24に示された内容に応じて可変表示部9および普通図柄表示器10の表示状態を変更する。
図25は、電気部品制御基板のうちのランプ制御基板35に送出されるランプ制御コマンドの内容の一例を示す説明図である。ランプ制御コマンドもMODEとEXTの2バイト構成である。図25に示す例において、コマンド8000(H)〜8022(H)、8100(H)〜8122(H)は、可変表示部9における特別図柄の変動パターンに対応したランプ・LED表示制御パターンを指定するランプ制御コマンドである。また、コマンドA0XX(X=4ビットの任意の値)は、特別図柄の可変表示の停止時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドBXXXは、大当り遊技開始から大当り遊技終了までの間のランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドC000は、客待ちデモンストレーション時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。
なお、コマンド8XXX、AXXX、BXXXおよびCXXXは、遊技進行状況に応じて遊技制御手段から送出されるランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から上述したランプ制御コマンドを受信すると図25に示された内容に応じてランプ・LEDの表示状態を変更する。
コマンドE0XXは、始動記憶表示器18の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、始動記憶表示器18における「XX」で指定される個数の表示器を点灯状態とする。また、コマンドE1XXは、ゲート通過記憶表示器41の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、ゲート通過記憶表示器41における「XX」で指定される個数の表示器を点灯状態とする。すなわち、それらのコマンドは、保留個数という情報を報知するために設けられている発光体の制御を指示するコマンドである。なお、始動記憶表示器18およびゲート通過記憶表示器41の点灯個数に関するコマンドが点灯個数の増減を示すように構成されていてもよい。
コマンドE200およびE201は、賞球ランプ51の表示状態に関するランプ制御コマンドであり、コマンドE300およびE301は、球切れランプ52の表示状態に関するランプ制御コマンドである。ランプ制御手段は、主基板31の遊技制御手段から「E201」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がある場合としてあらかじめ定められた表示状態とし、「E200」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がない場合としてあらかじめ定められた表示状態とする。
また、主基板31の遊技制御手段から「E300」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球あり中の表示状態とし、「E301」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球切れ中の表示状態とする。すなわち、コマンドE200およびE201は、未賞球の遊技球があることを遊技者等に報知するために設けられている発光体を制御することを示すコマンドであり、コマンドE300およびE301は、補給球が切れていることを遊技者や遊技店員に報知するために設けられている発光体を制御することを示すコマンドである。
コマンドE400は、遊技機の電源投入時、または特定遊技状態(高確率状態や時短状態、この例では高確率状態)から通常状態(低確率状態や非時短状態、この例では低確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。コマンドE401は、通常状態(低確率状態や非時短状態、この例では低確率状態)から特定遊技状態(高確率状態や時短状態、この例では高確率状態)に移行したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。
コマンドE402は、大当り遊技中に発生したエラーが解除されたときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドE403は、カウントスイッチ23のエラーが発生したときのランプ・LED表示制御パターンを指示するランプ制御コマンドである。すなわち、それらのコマンドは、発光体によって遊技状態を報知することを指示するコマンドである。
この実施の形態では、ランプ制御手段は、遊技状態を報知することを指示するコマンドを受信すると、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部または全部を用いて、遊技状態を報知するための点灯/消灯制御を行う。なお、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cは、それぞれ、複数の発光体の集まりで構成されていてもよく、その場合、装飾ランプ25、遊技効果LED28aおよび遊技効果ランプ28b,28cのうちの一部を用いて遊技状態を報知するということは、例えば、装飾ランプ25を構成する複数の発光体のうちの一部を用いてもよいということも意味する。
図26は、電気部品制御基板のうちの音声制御基板70に送出される音声制御コマンドの内容の一例を示す説明図である。音声制御コマンドもMODEとEXTの2バイト構成である。図26に示す例において、コマンド8XXX(X=4ビットの任意の値)は、特別図柄の変動期間における音発生パターンを指定する音声制御コマンドである。コマンドBXXX(X=4ビットの任意の値)は、大当り遊技開始から大当り遊技終了までの間における音発生パターンを指定する音声制御コマンドである。その他のコマンドは、特別図柄の変動および大当り遊技に関わらない音声制御コマンドである。音声制御基板70の音声制御手段は、主基板31の遊技制御手段から上述した音声制御コマンドを受信すると図25に示された内容に応じて音声出力状態を変更する。
図23〜図26に示されたように、図柄制御コマンド、音声制御コマンド、ランプ制御コマンドおよび払出制御コマンドは、全てMODE部分とEXT部分とからなっている。すなわち、音声制御コマンドとランプ制御コマンドの形態は共通している。また、音声制御コマンドと払出制御コマンドの形態は共通している。ランプ制御コマンドと払出制御コマンドの形態も共通している。そして、図柄制御コマンドと音声制御コマンドの形態は共通している。また、図柄制御コマンドとランプ制御コマンドの形態は共通している。図柄制御コマンドと払出制御コマンドの形態も共通している。
遊技制御手段から送出される各コマンドの形態が共通しているので、遊技制御手段のCPU56が実行するプログラムにおいて、各コマンドの作成部分と出力部分を容易に共通化することができる。その結果、遊技制御プログラムのコマンドの送出に関するモジュールが簡略化され、プログラム保守が容易になるとともに、他機種へのプログラム流用も容易になる。
また、図24〜図26に表れているように、遊技演出に関わる電気部品制御手段(この例では、表示制御手段、ランプ制御手段および音声制御手段)に伝えられる一つの演出制御内容は2つの制御信号で構成されているのであるが、それらの電気部品制御手段は、そのうちの一の制御信号(MODEバイト)で制御内容の種類を特定することができ、他の制御信号(EXTバイト)で詳細な制御内容を特定することができる。
遊技制御手段から各電気部品制御基板に制御コマンドを出力しようとするときに、コマンド送信テーブルの設定が行われる。図27(A)は、コマンド送信テーブルの一構成例を示す説明図である。1つのコマンド送信テーブルは3バイトで構成され、1バイト目にはINTデータが設定される。また、2バイト目のコマンドデータ1には、制御コマンドの1バイト目のMODEデータが設定される。そして、3バイト目のコマンドデータ2には、制御コマンドの2バイト目のEXTデータが設定される。
なお、EXTデータそのものがコマンドデータ2の領域に設定されてもよいが、コマンドデータ2には、EXTデータが格納されているテーブルのアドレスを指定するためのデータが設定されるようにしてもよい。この実施の形態では、コマンドデータ2のビット7(ワークエリア参照ビット)が0あれば、コマンドデータ2にEXTデータそのものが設定されていることを示す。なお、そのようなEXTデータはビット7が0であるデータである。また、ワークエリア参照ビットが1あれば、他の7ビットが、EXTデータが格納されているテーブルのアドレスを指定するためのオフセットであることを示す。
この実施の形態では複数のコマンド送信テーブルが用意され、使用すべきコマンド送信テーブルはポインタで指定される。また、複数のコマンド送信テーブルはリングバッファとして使用される。従って、CPU56は、例えば、入賞球信号処理において、書込ポインタが指しているコマンド送信テーブルに、INTデータ、コマンドデータ1およびコマンドデータ2を設定する。そして、書込ポインタの値を更新する。1つのコマンド送信テーブルは3バイト構成であるから、具体的には、書込ポインタ値は+3される。
図27(B)INTデータの一構成例を示す説明図である。INTデータにおけるビット0は、払出制御基板37に払出制御コマンドを送出すべきか否かを示す。ビット0が「1」であるならば、払出制御コマンドを送出すべきことを示す。従って、CPU56は、例えば入賞球信号処理において、INTデータに「01(H)」を設定する。
INTデータのビット1,2,3は、それぞれ、表示制御コマンド、ランプ制御コマンド、音声制御コマンドを送出すべきか否かを示すビットであり、CPU56は、それらのコマンドを送出すべきタイミングになったら、特別図柄プロセス処理等で、ポインタが指しているコマンド送信テーブルに、INTデータ、コマンドデータ1およびコマンドデータ2を設定する。それらのコマンドを送出するときには、INTデータの該当ビットが「1」に設定され、コマンドデータ1およびコマンドデータ2にMODEデータおよびEXTデータが設定される。
図28は、図15に示された遊技制御処理におけるコマンド制御処理(ステップS27)の処理例を示すフローチャートである。コマンド制御処理は、コマンド出力処理とINT信号出力処理とを含む処理である。コマンド制御処理において、CPU56は、まず、コマンド送信テーブルのアドレス(読出ポインタの内容)をスタック等に退避する(ステップS231)。そして、読出ポインタが指していたコマンド送信テーブルのINTデータを引数1にロードする(ステップS232)。引数1は、後述するコマンド送信処理に対する入力情報になる。また、コマンド送信テーブルを指すアドレスを+1する(ステップS233)。従って、コマンド送信テーブルを指すアドレスは、コマンドデータ1のアドレスに一致する。
そこで、CPU56は、コマンドデータ1を読み出して引数2に設定する(ステップS234)。引数2も、後述するコマンド送信処理に対する入力情報になる。そして、コマンド送信処理ルーチンをコールする(ステップS235)。
図29は、コマンド送信ルーチンを示すフローチャートである。コマンド送信ルーチンにおいて、CPU56は、まず、引数1に設定されているデータすなわちINTデータを、比較値として決められているワークエリアに設定する(ステップS251)。次いで、送信回数=4を、処理数として決められているワークエリアに設定する(ステップS252)。そして、払出制御信号を出力するためのポート1のアドレスをIOアドレスにセットする(ステップS253)。この実施の形態では、ポート1のアドレスは、出力ポート571のアドレスである(図10参照)。
次に、CPU56は、比較値を1ビット右にシフトする(ステップS254)。シフト処理の結果、キャリービットが1になったか否か確認する(ステップS255)。キャリービットが1になったということは、INTデータにおける最も右側のビットが「1」であったことを意味する。この実施の形態では4回のシフト処理が行われるのであるが、例えば、払出制御コマンドを送出すべきことが指定されているときには、最初のシフト処理でキャリービットが1になる。
キャリービットが1になった場合には、引数2に設定されているデータ、この場合にはコマンドデータ1(すなわちMODEデータ)を、IOアドレスとして設定されているアドレスに出力する(ステップS256)。最初のシフト処理が行われたときにはIOアドレスにポート1のアドレスが設定されているので、結局、払出制御コマンドのMODEデータがポート1(出力ポート571)に出力される。
次いで、CPU56は、IOアドレスを1加算するとともに(ステップS257)、処理数を1減算する(ステップS258)。加算前にポート1を示していた場合には、IOアドレスに対する加算処理によって、IOアドレスにはポート2のアドレスが設定される。ポート2は、この実施の形態では出力ポート572であり(図7参照)、表示制御コマンドを出力するためのポートである。そして、CPU56は、処理数の値を確認し(ステップS259)、値が0になっていなければ、ステップS254に戻る。ステップS254で再度シフト処理が行われる。
2回目のシフト処理ではINTデータにおけるビット1の値が押し出され、ビット1の値に応じてキャリーフラグが「1」または「0」になる。従って、表示制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。同様に、3回目および4回目のシフト処理によって、ランプ制御コマンドおよび音声制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。このように、それぞれのシフト処理が行われるときに、IOアドレスには、シフト処理によってチェックされるコマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド)に対応したIOアドレスが設定されている。
よって、キャリーフラグが「1」になったときには、対応する出力ポート(ポート1〜ポート4)に制御コマンドが送出される。すなわち、1つの共通モジュールで、各電気部品制御手段に対する制御コマンドの送出処理を行うことができる。なお、この実施の形態では、ポート3,4のアドレスは、出力ポート573,574のアドレスである(図8,図9参照)。
また、このように、シフト処理のみによってどの電気部品制御手段に対して制御コマンドを出力すべきかが判定されるので、いずれの電気部品制御手段に対して制御コマンドを出力すべきか判定する処理が簡略化されている。
次に、CPU56は、シフト処理開始前のINTデータが格納されている引数1の内容を読み出し(ステップS260)、読み出したデータをポート0に出力する(ステップS261)。この実施の形態では、ポート0のアドレスは、出力ポート570のアドレスである(図7〜図10参照)。INTデータでは、ステップS251〜S259の処理で出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド)に応じたINT信号の出力ビットに対応したビットが「1」になっている。従って、ポート1〜ポート4のいずれかに出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド)に対応したINT信号がオン状態になる。
次いで、CPU56は、ウェイトカウンタに所定値を設定し(ステップS262)、その値が0になるまで1ずつ減算する(ステップS263,S264)。この処理は、図22のタイミング図に示されたINT信号(制御信号INT)のオン期間を設定するための処理である。ウェイトカウンタの値が0になると、クリアデータ(00)を設定して(ステップS265)、そのデータをポート0に出力する(ステップS266)。よって、INT信号はオフ状態になる。そして、ウェイトカウンタに所定値を設定し(ステップS262)、その値が0になるまで1ずつ減算する(ステップS268,S269)。この処理は、1つ目のINT信号の立ち下がりからEXTデータ出力開始までの期間を設定するための処理である。
従って、ステップS267でウェイトカウンタに設定される値は、1つ目のINT信号の立ち下がりからEXTデータ出力開始までの期間が、制御コマンド受信対象となる全ての電気部品制御手段が確実にコマンド受信処理を行うのに十分な期間になるような値である。また、ウェイトカウンタに設定される値は、その期間が、ステップS251〜S259の処理に要する時間よりも長くなるような値である。
以上のようにして、制御コマンドの1バイト目のMODEデータが送出される。そこで、CPU56は、図28に示すステップS236で、コマンド送信テーブルを指す値を1加算する。従って、3バイト目のコマンドデータ2の領域が指定される。CPU56は、指し示されたコマンドデータ2の内容を引数2にロードする(ステップS237)。また、コマンドデータ2のビット7(ワークエリア参照ビット)の値が「0」であるか否か確認する(ステップS239)。0でなければ、コマンド拡張データアドレステーブルの先頭アドレスをポインタにセットし(ステップS239)、そのポインタにコマンドデータ2のビット6〜ビット0の値を加算してアドレスを算出する(ステップS240)。そして、そのアドレスが指すエリアのデータを引数2にロードする(ステップS241)。
コマンド拡張データアドレステーブルには、電気部品制御手段に送出されうるEXTデータが順次設定されている。よって、以上の処理によって、ワークエリア参照ビットの値が「1」であれば、コマンドデータ2の内容に応じたコマンド拡張データアドレステーブル内のEXTデータが引数2にロードされ、ワークエリア参照ビットの値が「0」であれば、コマンドデータ2の内容がそのまま引数2にロードされる。なお、コマンド拡張データアドレステーブルからEXTデータが読み出される場合でも、そのデータのビット7は「0」である。
次に、CPU56は、コマンド送信ルーチンをコールする(ステップS242)。従って、MODEデータの送出の場合と同様のタイミングでEXTデータが送出される。その後、CPU56は、コマンド送信テーブルのアドレスを復帰し(ステップS243)、コマンド送信テーブルを指す読出ポインタの値を更新する(ステップS244)。1つのコマンド送信テーブルは3バイト構成であるから、具体的には、読出ポインタの値は+3される。
以上のようにして、1つの制御信号出力モジュールであるコマンド制御処理モジュールによって、2バイト構成の各制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド)が、対応する電気部品制御手段に送信される。電気部品制御手段では、取込信号としてのINT信号の立ち下がりを検出すると制御コマンドの取り込み処理を開始するのであるが、いずれの電気部品制御手段についても、取り込み処理が完了する前に遊技制御手段からの新たな信号が信号線に出力されることはない。すなわち、各電気部品制御手段において、確実なコマンド受信処理が行われる。なお、各電気部品制御手段は、INT信号の立ち上がりで制御コマンドの取り込み処理を開始してもよい。また、INT信号の極性を図22に示された場合と逆にしてもよい。
また、この実施の形態では、複数のコマンド送信テーブルがリングバッファとして用いられ、図28に示すコマンド制御処理では、読出ポインタが指しているコマンド送信テーブルを対象としてコマンド出力制御が行われ、コマンド送信テーブルにデータを設定する処理、例えば、遊技制御処理における入賞球信号処理では、書込ポインタが指すコマンド送信テーブルを対象としてコマンド設定処理が行われる。従って、同時に複数のコマンド送出要求が発生しても、それらの要求にもとづくコマンド出力処理は問題なく実行される。
次に、図柄の変動を具体例を用いて説明する。
図30は、左右中図柄の一例を示す説明図である。図30に示すように、この実施の形態では、左右中図柄として表示される各図柄は、左右中で同一の12図柄である。図柄番号12の図柄が表示されると、次に、図柄番号1の図柄が表示される。そして、左右中図柄が、例えば、「一」、「三」、「五」、「七」、「九」または「下駄」で揃って停止すると高確率状態となる。すなわち、それらが確変図柄となる。
図31は、この実施の形態で用いられる可変表示部9に表示される背景図柄の例を示す説明図である。この例では、(A)道場、(B)閃光、(C)オーラ、および(D)煙の背景が用いられる。また、図31(E)に示された表示は、遊技機の非遊技中等に表示されるデモンストレーション画面の例を示す。
図32および図33は、この実施の形態で用いられる可変表示部9に表示されるキャラクタの例を示す説明図である。この例では、(A)キャラクタA、(B)キャラクタBおよび(C)キャラクタCが用いられる。なお、キャラクタAは、リーチ予告用のキャラクタとしても用いられる。この実施の形態では、複数のリーチ予告態様があり、例えば、キャラクタAの目が光るように表示されると(リーチ予告1)、またはキャラクタAが吹き出しで予告すると(リーチ予告2)、リーチ予告が行われたことになる。また、キャラクタAは、リーチを成立させるためのキャラクタとしても用いられ、所定の条件が成立すると、キャラクタAの足が右図柄を蹴るように表示されて左右図柄が同一図柄で停止する表示制御が行われる。
さらに、リーチ動作中に、キャラクタA,B,Cは、吹き出しによって大当り予告を行うように表示される。この実施の形態では、複数の大当り予告態様(大当り予告1および2)があり、大当り予告1の態様は単独で用いられるが、大当り予告2の態様は大当り予告1の表示がなされてから所定時間が経過すると表示される。
なお、この実施の形態では、リーチ予告および大当り予告として、それぞれ2つずつの態様が使用されるが、さらに多くの種類を用いてもよい。また、この実施の形態では、キャラクタの吹き出しによって予告がなされるが、予告の態様は、遊技者が予告されていることが認識可能であれば、どのような態様によってもよい。例えば、通常とは異なるキャラクタの動作や通常とは異なる図柄の変動態様によってもよい。さらに、確変図柄で大当りが生ずる可能性が高い場合に用いられる予告を、確変大当り予告としてもよい。また、大当りが発生する確率の高い予告と、大当りが発生する確率が低い予告とに分け、確率が低い方の予告をリーチ予告と定義づけてもよい。
図柄制御基板80における表示制御用CPU101は、主基板31から表示制御コマンドを受信すると、各変動パターンにおいてあらかじめ決められている背景やキャラクタを画面上で移動表示する制御を行う。なお、あらかじめ決められているタイミングで背景やキャラクタの切替も行われるが、それらも表示制御用CPU101が独自に制御する。
図34〜図37は、この実施の形態で用いられる主基板31から図柄制御基板80に送信される表示制御コマンド例を示す説明図である。上述したように、1つの表示制御コマンドは2バイト(MODE,EXT)で構成される。
図34は、図柄の可変表示期間を特定可能な表示制御コマンドおよび全図柄の停止を指示する表示制御コマンドを示す説明図である。図34に示すように、この例では、可変表示期間を特定可能な表示制御コマンドとして、「はずれ」、「確変時全図柄変動」、「リーチ短期間」、「リーチ中期間」および「リーチ長期間」がある。なお、この実施の形態では、図24に示された多数の変動パターン指定のうちの一部のみが使用されている。
図35には、左図柄の停止図柄を示す表示制御コマンドが示されている。図35に示すように、2バイトの制御データMODE,EXTで構成される表示制御コマンドによって停止図柄が指定される。なお、それらの指定において、1バイト目の制御データCMD1の値は、「91(H)」である。
図36には、中図柄の停止図柄を示す表示制御コマンドが示されている。図36に示すように、2バイトの制御データMODE,EXTで構成される表示制御コマンドによって停止図柄が指定される。なお、それらの指定において、1バイト目の制御データCMD1の値は、「92(H)」である。
図37には、右図柄の停止図柄を示す表示制御コマンドが示されている。図37に示すように、2バイトの制御データMODE,EXTで構成される表示制御コマンドによって停止図柄が指定される。なお、それらの指定において、1バイト目の制御データCMD1の値は、「93(H)」である。
以下、図38〜図43を参照して図柄の変動パターンの例について説明する。図38は、各変動パターンを構成するパターン(変動状態)の一例を示す説明図である。図39は、リーチとしないはずれ時の図柄の変動の一例を示すタイミング図である。また、図40〜図43は、リーチ時(大当りの場合および大当りとしない場合)の図柄の変動の一例を示すタイミング図である。
この実施の形態では、はずれ時には、図39(A)に示すように、可変表示部9における「左」の図柄表示エリアにおいて、まず、パターンaに従って図柄の変動が行われる。パターンaは、図38に示すように、少しずつ変動速度が上がるパターンである。その後、パターンbの一定速の変動が行われ、停止図柄の3図柄前の図柄が表示されるように制御された後、パターンc従って3図柄の変動が行われる。パターンcは、図38に示すように、徐々に遅くなって停止するパターンである。
また、可変表示部9における「右」の図柄表示エリアにおいて、パターンaに従って図柄の変動が行われる。その後、一定速変動の後、停止図柄の3図柄前の図柄が表示されるように制御された後、パターンcに従って図柄の変動が行われる。「中」の図柄表示エリアにおいても、まず、パターンaに従って図柄の変動が行われる。その後、一定速変動の後、停止図柄の3図柄前の図柄が表示されるように制御された後、パターンcに従って図柄の変動が行われる。
なお、図柄制御基板80の表示制御用CPU101は、中図柄が確定するまで、左右図柄を変動方向の正方向と逆方向に繰り返し変動させる。すなわち、左右図柄を、いわゆる揺れ変動状態に表示制御する。揺れ変動とは、図柄が上下に揺れる表示されることをいう。また、揺れ変動は、最終停止図柄(確定図柄)が表示されるまで行われる。そして、主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。なお、中図柄も、パターンcによる変動の後に揺れ動作を行い、その後確定状態になるようにしてもよい。また、揺れ変動を、図柄を上下に揺らす態様ではなく、左右に揺らしたりする態様としてもよい。
図柄が変動している間、表示制御用CPU101は、背景として「道場」(図31参照)が表示されるように表示制御を行うとともに、画面中にキャラクタA(図32参照)を表示して適宜キャラクタAを運動させるように表示制御を行う。具体的には、背景およびキャラクタをVDP103に通知する。すると、VDP103は、指示された背景の画像データを作成する。また、指示されたキャラクタの画像データを作成し背景画像と合成する。さらに、VDP103は、合成画像に、左右中図柄の画像データを合成する。VDP103は、キャラクタが運動するような表示制御および図柄が変動するような表示制御も行う。すなわち、あらかじめ決められている運動パターンに従ってキャラクタの形状および表示位置を変える。また、表示制御用CPU101から通知される変動速度に応じて図柄表示位置を変えていく。
なお、表示制御用CPU101は、左右中の図柄表示エリアにおいて、指定された停止図柄で図柄変動が停止するように、所定のタイミングで停止図柄の3図柄前の図柄を表示制御する。変動開始時に左右中の停止図柄が通知され、かつ、はずれ時の変動パターンはあらかじめ決められているので、表示制御用CPU101は、パターンaからパターンbへの切替タイミングおよびパターンbからパターンcへの切替タイミングを認識することができるとともに、差し替えるべき3図柄前の図柄も決定できる。決定された差し替え図柄はVDP103に通知され、VDP103は、そのときに表示している図柄に関係なく、通知された図柄を表示する。
図39(B)は、確率変動状態におけるはずれ時の変動パターンの一例を示す。この変動パターンでは、図に示されるように、パターンa、パターンbおよびパターンcに従って左右中図柄の変動が行われた後に、左右中図柄が同時に停止する。この変動パターンを用いるときも、表示制御用CPU101は、背景として「道場」(図31参照)が表示されるように表示制御を行うとともに、画面中にキャラクタA(図32参照)を表示して適宜キャラクタAを運動させるように表示制御を行うことにする。
つまり、この実施の形態では、表示制御用CPU101は、遊技制御手段すなわち主基板31のCPU56から「はずれ」であることを指定する表示制御コマンドを受信すると、図39(A)または(B)に示された変動パターンを用いて左右中図柄を可変表示することに決定するとともに、キャラクタAを出現させること、および「道場」の背景画面を使用することを決定する。
図40は、主基板31から変動時間として19.5秒(リーチ短期間)が通知されたときに表示される変動パターンの例を示す。表示制御用CPU101は、リーチ短期間が通知されると、19.5秒の複数の変動パターンのうちの何れの変動パターンを用いるのかを独自に決定する。図40には、複数の変動パターンとして(A)〜(C)の3パターンが例示されている。
なお、主基板31のCPU56がリーチ種類を決定し、決定したリーチ種類に応じた変動パターンを示すコマンドを送るようにしてもよい。
図40(A)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。なお、表示制御用CPU101は、中図柄変動中の左右図柄の停止状態では左右図柄を揺れ動作させている。パターンdは、変動速度が徐々に低下し、その後一定速度で変動が行われるパターンである。そして、リーチ動作に入り、パターンbおよびパターンcに従って中図柄の変動が行われる。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。
また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替え(図柄の飛ばし制御)を行う。変動パターンはあらかじめ決められているので、表示制御用CPU101は、パターンdからパターンbへの切替タイミングおよびパターンbからパターンcへの切替タイミングを認識することができるとともに、差し替えるべき3図柄前の図柄も決定できる。なお、中図柄の変動中に、背景およびキャラクタの種類は変化しない。
図40(B)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンaおよびパターンcに従って中図柄の変動が行われる。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図40(B)に示された変動パターンでは右図柄停止時に、表示制御用CPU101は、キャラクタAが右図柄を蹴るように表示制御を行う(図32参照)。従って、遊技者は、あたかも、キャラクタAが右図柄を蹴ることによってリーチが成立したように感ずる。
図40(C)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンb、パターンcおよびパターンhに従って中図柄の変動が行われる。パターンhは、一時停止の後に、0.9図柄逆変動して0.9図柄順変動するパターンである。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。
また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図40(C)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「オーラ」(図31参照)に切り替えるとともに、画面に現れるキャラクタをキャラクタB(図33参照)に切り替える。
以上のように、この実施の形態では、表示制御用CPU101は、主基板31のCPU56から「リーチ短期間」であることを指定する表示制御コマンドを受信すると、図40(A)〜(C)に示された変動パターンのうちのいずれを用いて左右中図柄を可変表示するかを決定する。
そして、(A)または(B)の変動パターンを用いることに決定した場合には、左右図柄が停止してリーチ状態になるとキャラクタAおよび「道場」の背景画面を継続して使用することに決定する。(C)の変動パターンを用いることに決定した場合には、リーチ状態になるとキャラクタBおよび「オーラ」の背景画面に切り替えることに決定する。
なお、図40(A)〜(C)に示された変動時間19.5秒の変動パターンでも、表示制御用CPU101は、中図柄が確定するまで、左右図柄を上下に揺れ動作させる。また、中図柄の図柄差し替え制御は、右図柄が停止するタイミングで実行される。表示制御用CPU101は、変動開始時に主基板31から通知されている中停止図柄と、リーチ変動期間(例えば図40(A)におけるパターンd、パターンbおよびパターンcの変動期間)における図柄の変動数とに応じて、差し替え図柄を決定する。
さらに、表示制御用CPU101は、リーチ予告を行うことに決定している場合には、キャラクタAがリーチ予告1またはリーチ予告2の態様で可変表示部9に表示されるようにVDP103を制御し、大当り予告を行うことに決定している場合には、リーチ動作中に、そのときに表示されているキャラクタが大当り予告1または大当り予告2の態様で可変表示部9に表示されるようにVDP103を制御する。なお、大当り予告2の態様は、大当り予告1の発展形である。また、表示制御用CPU101は、リーチとすることを示す表示制御コマンドを受信すると、リーチ予告および大当り予告を行うか否かと予告の態様とを独自に決定するが、具体的な決め方は後述する。
図41は、主基板31から変動時間として24.5秒(リーチ中期間)が通知されたときに表示される変動パターンの例を示す。表示制御用CPU101は、変動時間として24.5秒が通知されると、複数の変動パターンのうちの何れの変動パターンを用いるのかを独自に決定する。なお、図41には、複数の変動パターンとして(A)〜(C)の3パターンが例示されている。
図41(A)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンbおよびパターンfに従って中図柄の変動が行われる。パターンfは高速変動であり、パターンfによる変動開始前に一時停止期間がおかれる。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。
また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図41(A)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「閃光」(図31参照)に切り替える。また、右図柄停止時に、表示制御用CPU101は、キャラクタAが右図柄を蹴るように表示制御を行う(図32参照)。
図41(B)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンb、パターンcおよびパターンhに従って中図柄の変動が行われる。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。図41(B)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「閃光」(図31参照)に切り替える。
図41(C)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンbおよびパターンcに従って中図柄の変動が行われる。主基板31から全図柄停止を指示する表示制御コマンドを受信すると、左右図柄の揺れ変動状態を終了させて左右中図柄が動かない確定状態になる。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替え(図柄の飛ばし制御)を行う。図41(C)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「オーラ」(図31参照)に切り替えるとともに、画面に現れるキャラクタをキャラクタB(図33参照)に切り替える。
以上のように、この実施の形態では、表示制御用CPU101は、主基板31のCPU56から「リーチ中期間」であることを指定する表示制御コマンドを受信すると、図41(A)〜(C)に示された変動パターンのうちのいずれを用いて左右中図柄を可変表示するかを決定する。
そして、(A)または(B)の変動パターンを用いることに決定した場合には、左右図柄が停止してリーチ状態になると背景画面を「閃光」に切り替えることに決定する。また、(C)の変動パターンを用いることに決定した場合には、リーチ状態になると背景画面を「オーラ」に切り替えることに決定する。
図41(A)〜(C)に示された変動時間24.5秒の変動パターンでも、表示制御用CPU101は、中図柄が確定するまで、左右図柄を上下に揺れ動作させる。また、中図柄の図柄飛ばし制御は、右図柄が停止するタイミングで実行される。
さらに、表示制御用CPU101は、リーチ予告を行うことに決定している場合には、キャラクタAがリーチ予告1またはリーチ予告2の態様で可変表示部9に表示されるようにVDP103を制御し、大当り予告を行うことに決定している場合には、リーチ動作中に、そのときに表示されているキャラクタが大当り予告1または大当り予告2の態様で可変表示部9に表示されるようにVDP103を制御する。
図42および図43は、主基板31から変動時間として29.5秒(リーチ長期間)が通知されたときに表示される変動パターンの例を示す。表示制御用CPU101は、変動時間として29.5秒が通知されると、複数の変動パターンのうちの何れの変動パターンを用いるのかを独自に決定する。図42および図43には、複数の変動パターンとして3パターンが例示されている。なお、(C1)および(C2)の変動パターンは1つの変動パターンの異なる局面を示す例である。よって、以下、図27(C1)および(C2)に例示された変動パターンを図43(C)に示された変動パターンと呼ぶことがある。
図42(A)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンbおよびパターンcによる変動後、一時停止期間をおいてパターンfに従って中図柄の変動が行われる。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図42(A)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「閃光」(図31参照)に切り替える。
さらに、図42(A)に示された変動パターンでは、中図柄がパターンfで高速変動する際に、左右図柄も同様に高速変動する。従って、最終停止図柄が大当り図柄の組み合わせである場合には、一時停止時の一時停止図柄も、図柄の種類は異なるが、やはり大当り図柄の組み合わせである。例えば、一時停止図柄が非確変図柄で最終停止図柄が確変図柄になったりする。
よって、遊技者は、一時停止時に大当りが発生したと感ずるとともに、再変動後に再度大当り図柄が提供されて再度興趣がかき立てられる。なお、一時停止図柄は、表示制御用CPU101が、停止図柄から逆算して独自に決定した図柄である。パターンfの変動速度と変動期間とはあらかじめ決められているので、表示制御用CPU101は、最終停止図柄から一時停止図柄を容易に逆算することができる。
図42(B)に示された変動パターンでは、左右図柄が停止した後パターンdの中図柄の変動が行われる。そして、リーチ動作に入り、パターンbおよびパターンhによる変動後、一時停止期間をおいてパターンfに従って中図柄の変動が行われる。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図42(B)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「オーラ」(図31参照)に切り替えるとともに、画面に現れるキャラクタをキャラクタB(図33参照)に切り替える。
図43(C)に示された変動パターンでは、左右図柄が停止した後、パターンcに従って中図柄の変動が行われる。その後、パターンgに従って中図柄の変動が行われる。パターンgはコマ送りのパターンである。また、表示制御用CPU101は、主基板31から通知されている停止図柄で図柄が確定するように、リーチ動作開始前に図柄の差し替えを行う。なお、図43(C)に示された変動パターンでは、右図柄が停止すると、表示制御用CPU101は、背景画像を「煙」(図31参照)に切り替えるとともに、画面に現れるキャラクタをキャラクタC(図33参照)に切り替える。
図42および図43に示された変動時間29.5秒の変動パターンでも、表示制御用CPU101は、中図柄が確定するまで、左右図柄を上下に揺れ動作させる。また、中図柄の図柄飛ばし制御は、右図柄が停止するタイミングで実行される。
図43(C)に示されたコマ送りを含む変動パターンでは、リーチ動作開始時に、大当りとするか否かに関わらず、左右中の表示図柄を揃ったものとする。すると、左右中図柄の停止図柄は変動開始時に主基板31から図柄制御基板80に送信されているので、停止図柄とリーチ動作開始時の図柄(左右中が揃ったもの)とから、コマ送り時のコマ数は決まる。
例えば、図43(C1)に示された例では、確定図柄が「七」(左図柄)、「五」(中図柄)、「七」(右図柄)であった場合の例である。リーチ動作開始時の図柄は「七」、「七」、「七」であるから、コマ送り時には10図柄の変動がなされる必要がある。また、図43(C2)に示された例では、確定図柄が「七」(左図柄)、「二」(中図柄)、「七」(右図柄)であった場合の例である。リーチ動作開始時の図柄は「七」、「七」、「七」であるから、コマ送り時には7図柄の変動がなされる必要がある。
すると、コマ送りの期間を常に一定としておくと、変動時間が29.5秒からずれてしまう。ずらさないようにするには、送りコマ数に応じてコマ送りの変動速度を変えなければならない。そのような表示制御を行のは不自然である。つまり、遊技者に不信感を与える。そこで、この実施の形態では、表示制御用CPU101は、図43(C)に示された変動パターンを用いることに決定した場合には、コマ送り変動時の変動速度が常に一定になるようにリーチ動作開始時のタイミングを調整する。
つまり、送りコマ数が少ないときにはリーチ動作開始のタイミングを遅らせ、送りコマ数が多いときにはリーチ動作開始のタイミングを相対的に早める。そのような表示制御を行えば、全体の変動時間が29.5秒に保たれた上で、コマ送り変動時の変動速度を常に一定にすることができる。
以上のように、この実施の形態では、表示制御用CPU101は、主基板31のCPU56から「リーチ長期間」であることを指定する表示制御コマンドを受信すると、図42(A),(B)および図43(C)に示された変動パターンのうちのいずれを用いて左右中図柄を可変表示するかを決定する。
そして、(A)の変動パターンを用いることに決定した場合には、左右図柄が停止してリーチ状態になると背景画面を「閃光」に切り替えることに決定する。また、(B)の変動パターンを用いることに決定した場合には、左右図柄が停止してリーチ状態になると背景画面を「オーラ」に切り替えることに決定する。(C)の変動パターンを用いることに決定した場合には、リーチ状態になると背景画面を「煙」に切り替えることに決定する。
以下、上述した表示例を実現するための遊技制御手段および表示制御手段の制御について説明する。
図44は、図20に示された特別図柄プロセス処理における全図柄変動開始待ち(ステップS304)の処理を示すフローチャートである。ステップS302,S303の停止図柄設定処理およびリーチ動作設定処理において変動時間と停止図柄が決定されると、それらを指示するための表示制御コマンドの送出制御が行われるのであるが、ステップS304では、CPU56は、まず、コマンドの送出完了を待つ(ステップS304a)。なお、コマンド送出完了は、遊技制御処理(図15参照)中のコマンド制御処理(ステップS27)から通知されるようにプログラム構成することができる。あるいは、コマンド送信テーブルに送出コマンドを設定した時点で、コマンド送信完了と判断してもよい。
この実施の形態では、主基板31のCPU56は、図柄の変動を開始させるときに、図34に示された変動時間を特定可能なコマンドA0,A2,B1,B2,B3のいずれかを図柄制御基板80に送出する。また、続けて、既に決定されている左右中の停止図柄を示す表示制御コマンドを図柄制御基板80に送出する。よって、ステップS304aのコマンド送信完了処理では、それら全てのコマンドの送出が完了したか否か確認される。なお、CPU56は、左右中の停止図柄を示す表示制御コマンドを送出してからコマンドA0,A2,B1,B2,B3のいずれかを送出してもよい。
表示制御コマンドの送出が完了すると、CPU56は、図柄制御基板80に通知した変動時間を測定するための変動時間タイマをスタートする(ステップS304b)。そして、ステップS305に移行するように、特別図柄プロセスフラグを更新する(ステップS304c)。
図45は、図20に示された特別図柄プロセス処理における全図柄停止待ち処理(ステップS305)を示すフローチャートである。ステップS305では、CPU56は、変動時間タイマがタイムアップしたか否か確認する(ステップS305a)。タイムアップしたら、全図柄停止を指示する表示制御コマンドを設定する(ステップS305b)。そして、表示制御コマンドデータ送出要求をセットし(ステップS305c)、ステップS306に移行するように、特別図柄プロセスフラグを更新する(ステップS305d)。
以上のように、特別図柄プロセス処理において、CPU56は、変動の開始時に変動時間を特定可能な情報と停止図柄を指示する情報とを図柄制御基板80に送出し、変動時間タイマがタイムアップしたら、すなわち指示した変動時間が終了したら、全図柄停止を指示する情報を図柄制御基板80に送出する。その間、CPU56は、図柄制御基板80に表示制御コマンドを送出しない。従って、主基板31のCPU56の表示制御に要する負荷は大きく低減されている。
図46は、表示制御用CPU101が実行するメイン処理を示すフローチャートである。なお、表示制御用CPU101による表示制御手段は、識別情報の制御を行う識別情報制御手段でもある。
メイン処理では、まず、RAM領域をクリアする等の初期値設定処理が行われる(ステップS281)。その後、この実施の形態では、表示制御用CPU101は、タイマ割込フラグの監視(ステップS282)の確認を行うループ処理に移行する。そして、図47に示すように、タイマ割込が発生すると、表示制御用CPU101は、タイマ割込フラグをセットする(ステップS287)。メイン処理において、タイマ割込フラグがセットされていたら、表示制御用CPU101は、そのフラグをクリアするとともに(ステップS283)、表示制御プロセス処理を行う(ステップS285)。表示制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態に対応したプロセスを選択して実行する。
この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、表示制御処理は、2ms毎に起動される。
図48は、割込処理による表示制御コマンド受信処理を示すフローチャートである。主基板31からの表示制御INT信号は表示制御用CPU101の割込端子に入力されている。よって、主基板31からのINT信号がオン状態になると、表示制御用CPU101において割込がかかる。そして、図48に示す表示制御コマンドの受信処理が開始される。
表示制御コマンドの受信処理において、表示御用CPU101は、まず、各レジスタをスタックに退避する(ステップS850)。次いで、表示制御コマンドデータの入力に割り当てられている入力ポートからデータを読み込む(ステップS851)。そして、2バイト構成の表示制御コマンドのうちの1バイト目であるか否か確認する(ステップS852)。1バイト目であるか否かは、受信したコマンドの先頭ビットが「1」であるか否かによって確認される。先頭ビットが「1」であるのは、2バイト構成である表示制御コマンドのうちのMODEバイト(1バイト目)のはずである(図21参照)。そこで、表示制御用CPU101は、先頭ビットが「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す確定コマンドバッファに格納する(ステップS853)。
表示制御コマンドのうちの1バイト目でなければ、1バイト目を既に受信したか否か確認する(ステップS854)。既に受信したか否かは、受信バッファに有効なデータが設定されているか否かによって確認される。
1バイト目を既に受信している場合には、受信した1バイトのうちの先頭ビットが「0」であるか否か確認する。そして、先頭ビットが「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ+1が示す確定コマンドバッファに格納する(ステップS855)。先頭ビットが「0」であるのは、2バイト構成である表示制御コマンドのうちのEXTバイト(2バイト目)のはずである(図21参照)。なお、ステップS854における確認結果が1バイト目を既に受信したである場合には、2バイト目として受信したデータのうちの先頭ビットが「0」でなければ処理を終了する。
ステップS855において、2バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに2を加算する(ステップS856)。そして、コマンド受信カウンタが12以上であるか否か確認し(ステップS857)、12以上であればコマンド受信個数カウンタをクリアする(ステップS858)。その後、退避されていたレジスタを復帰し(ステップS859)、割込許可に設定する(ステップS859)。
この例では、2バイト構成の表示制御コマンドを6個格納可能なリングバッファ形式の受信バッファが用いられる。従って、受信バッファは、バッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。
表示制御コマンドは2バイト構成であって、1バイト目(MODE)と2バイト目(EXT)とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、MODEとしてのデータを受信したのかEXTとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。そして、適正でないデータは、受信バッファにおいて次の受信データで上書きされることによって消去される。
図49は、表示制御用CPU101が扱う表示用乱数を示す説明図である。図49に示すように、この実施の形態では、表示用乱数として、リーチ種類決定用乱数、リーチ予告用乱数および大当り予告用乱数がある。リーチ種類決定用乱数は変動パターン(リーチ種類)を決定するためのものである。リーチ予告用乱数はリーチ予告を行うか否か決定するためのものであり、大当り予告用乱数は大当り予告を行うか否か決定するためのものである。
図50は、抽出されたリーチ種類決定用乱数値とリーチ種類との関係(図50(A))、抽出されたリーチ予告用乱数とリーチ予告との関係(図50(B))、抽出された大当り予告用乱数と大当り予告との関係(図50(C))を示す説明図である。
図50(A)において、A,B,Cは、図40〜図43における(A),(B),(C)に対応している。すなわち、抽出されたリーチ種類決定用乱数の値が上段に示される値であれば、表示用CPU101は、下段に示された変動パターンで図柄の変動を行うことに決定する。例えば、主基板31から変動時間として29.5秒(リーチ長期間)が通知され、抽出したリーチ種類決定用乱数の値が21であり、大当りとする場合には、図43(C)に示された変動パターンで変動を行うことに決定する。なお、大当りとするか否かは、変動時間を指定する表示制御コマンドともに送出された左右中図柄の停止図柄を示す表示制御コマンドにもとづいて判定される。
また、リーチとすることを示す表示制御コマンドを受信した場合には、表示制御用CPU101は、リーチ予告用乱数を抽出し、その値が0〜3のいずれかであればリーチ予告を行わないことに決定し、抽出値が4または5であればリーチ予告1の態様でリーチ予告を行うことに決定し、抽出値が6または7であればリーチ予告2の態様でリーチ予告を行うことに決定する。はずれとすることを示す表示制御コマンドを受信した場合には、表示制御用CPU101は、リーチ予告用乱数の抽出値が7であったときにリーチ予告1の態様でリーチ予告を行うことに決定する。
さらに、リーチとすることを示す表示制御コマンドを受信した場合には、表示制御用CPU101は、大当り予告用乱数を抽出し、大当りとする場合には、その値が0であれば大当り予告を行わないことに決定し、抽出値が1であれば大当り予告1の態様で大当り予告を行うことに決定し、抽出値が2であれば大当り予告2の態様で大当り予告を行うことに決定する。また、大当りとしない場合には、大当り予告用乱数の抽出値が0または1であれば大当り予告を行わないことに決定し、抽出値が2であれば大当り予告1の態様で大当り予告を行うことに決定する。
図51は、図46に示されたメイン処理における表示制御プロセス処理(ステップS285)を示すフローチャートである。表示制御プロセス処理では、表示制御プロセスフラグの値に応じてステップS720〜S870のうちのいずれかの処理が行われる。各処理において、以下のような処理が実行される。
表示制御コマンド受信待ち処理(ステップS720):コマンド受信割込処理によって、変動時間を特定可能な表示制御コマンドを受信したか否か確認する。具体的には、確定コマンドバッファに格納された受信コマンドが、変動時間を特定可能な表示制御コマンドであるか否か確認する。
リーチ動作設定処理(ステップS750):リーチ時には、図40〜図43に示された変動パターンのうちのいずれのパターンを使用するのかを決定する。また、リーチ予告および大当り予告を行うか否か決定するとともに、予告を行うことに決定した場合には予告の種類を決定する。
全図柄変動開始処理(ステップS780):左右中図柄の変動が開始されるように制御する。
図柄変動中処理(ステップS810):変動パターンを構成する各変動状態(変動速度や背景、キャラクタ)の切替タイミングを制御するとともに、変動時間の終了を監視する。また、左右図柄の停止制御を行う。
全図柄停止待ち設定処理(ステップS840):変動時間の終了時に、全図柄停止を指示する表示制御コマンドを受信していたら、図柄の変動を停止し最終停止図柄(確定図柄)を表示する制御を行う。
大当り表示処理(ステップS870):変動時間の終了後、確変大当り表示または通常大当り表示の制御を行う。
図52は、表示制御コマンド受信待ち処理(ステップS720)を示すフローチャートである。表示制御コマンド受信待ち処理において、表示制御用CPU101は、まず、コマンド無受信タイマがタイムアウトしたか否か確認する(ステップS721)。コマンド無受信タイマは、所定期間以上主基板31から図柄の変動を示す表示制御コマンドを受信しなかったときにタイムアウトとする。タイムアウトした場合には、表示制御用CPU101は、可変表示部9にデモンストレーション画面を表示する制御を行う(ステップS722)。
コマンド無受信タイマがタイムアウトしていなければ、表示制御用CPU101は、変動時間を特定可能な表示制御コマンドを受信したか否か確認する(ステップS723)。この実施の形態では、変動時間を特定可能な表示制御コマンドは、図34に示されたコマンドA0,A2,B1,B2,B3のいずれかである。変動時間を特定可能な表示制御コマンドを受信した場合には、表示制御プロセスフラグの値をリーチ動作設定処理(ステップS750)に対応した値に変更する(ステップS724)。
特別図柄を変動させるときに、主基板31から図柄制御基板80に最初に送信される表示制御コマンドは、変動時間を示すコマンドと左右中図柄の停止図柄を指定するコマンドである。それらは、確定コマンドバッファに格納されている。なお、以下、変動時間を示すコマンドとともに送られてきた停止図柄を、仮停止図柄と呼ぶ。
図53は、リーチ動作設定処理(ステップS750)を示すフローチャートである。リーチ動作設定処理において、表示制御用CPU101は、まず、リーチ予告を行うか否か決定する(ステップS751)。次いで、変動時間を特定可能な表示制御コマンドから、リーチにもならないはずれか否か判断する(ステップS752)。具体的には、コマンドA0またはA2を受信していたらはずれである。
はずれであるならば、左右の仮停止図柄が異なっているものであるか否か確認する(ステップS753)。一致していた場合には、右仮停止図柄を1図柄ずらしたものとする(ステップS754)。そして、左右中の仮停止図柄を所定の記憶エリアに格納する(ステップS755)。また、監視タイマに7.9秒を設定する(ステップS756)。7.9秒は、はずれ時の変動時間7.8秒に対して余裕を持たせた値であり、監視タイマがタイムアウトする前に全図柄停止を指定するコマンドを受信できなかったときには所定の処理が行われる。
ステップS752において、はずれでなかったら、すなわち、コマンドB1,B2,B3のいずれかを受信していたら、左右の仮停止図柄が同一か否か確認する(ステップS757)。異なっていた場合には、右仮停止図柄を左仮停止図柄と同じものにする(ステップS758)。そして、左右中の仮停止図柄を所定の記憶エリアに格納する(ステップS759)。また、表示制御用CPU101は、コマンドB1,B2またはB3に応じた変動時間に0.1秒を加算した値を監視タイマに設定する(ステップS760)。そして、リーチ種類すなわち変動パターンを決定する(ステップS761)。また、大当り予告を行うか否か決定する(ステップS762)。
以上のように、この実施の形態では、表示制御用CPU101は、可変表示を開始させる際に主基板31から送出されたコマンドA0,A2,B1,B2またはB3と受信した左右中仮停止図柄とが矛盾しているときには仮停止図柄を補正する。従って、何らかの原因で左右中仮停止図柄に誤りが生じたととしてもその誤りは是正される。誤りとは、例えば、主基板31から図柄制御基板80に至るケーブルにノイズが乗ってコマンドにビット誤りが生じたような場合である。この結果、遊技制御手段が決定したはずれ/リーチと矛盾するような確定図柄の表示がなされることが防止される。
さらに、再変動ありの場合となしの場合とで変動時間を異ならせ、再変動を行う変動パターンでは確変図柄で確定するように構成した場合に、主基板31から受信したコマンドが再変動ありを指示し、主基板31から受信した停止図柄が確変図柄でなかったときには、表示制御用CPU101が確変図柄に補正するようにしてもよい。例えば、主基板31から停止図柄として「七」、「六」、「七」を示すコマンドを受信した場合に、「七」、「七」、「七」に補正する。
また、表示制御手段は、受信した表示制御コマンドにもとづいて、大当りとするかはずれとするかを判断し、停止図柄に応じた遊技演出を行ってもよい。例えば、図柄停止前に、成功(大当り時には成功につながる)・失敗(はずれ時には失敗につながる)、勝ち負け(大当り時には勝ち,はずれ時には負け)等を遊技者に想起させるような演出を独自に行ってもよい。さらに、図柄として人の顔等のキャラクタ図柄を用意し、大当り時にはそれを想起させるようなキャラクタ図柄(例えば喜ぶ顔)を表示し、はずれ時にはそれを想起させるようなキャラクタ図柄(例えば残念顔)を表示するような演出を独自に行ってもよい。
そして、表示制御用CPU101は、選択された変動パターンに応じたプロセステーブルを使用することを決定する(ステップS763)。各プロセステーブルには、その変動パターン中の各変動状態(変動速度やその速度での変動期間等)が設定されている。また、各プロセステーブルはROMに設定されている。そして、表示制御用CPU101は、表示制御プロセスフラグの値を全図柄変動開始処理(ステップS780)に対応した値に変更する(ステップS764)。
図54は、ステップS751のリーチ予告決定処理を示すフローチャートである。リーチ予告決定処理において、表示制御用CPU101は、まず、リーチ予告用乱数を抽出する(ステップS751a)。そして、リーチとするのかはずれとするのかを確認する(ステップS751b)。確認は、主基板31から受信した停止図柄を示す表示制御コマンドを用いて行われる。はずれとする場合には、図50(B)の右側に示されたテーブルを用いて、リーチ予告を行うか否か決定し、予告を行う場合には予告の態様を決定する(ステップS751c)。また、リーチとする場合には、図50(B)の左側に示されたテーブルを用いて、リーチ予告を行うか否か決定し、予告を行う場合には予告の態様を決定する(ステップS751d)。
そして、リーチ予告を行うことに決定した場合には、リーチ予告開始時間決定用タイマをスタートする(ステップS751e)。なお、リーチ予告開始時間決定用タイマは、図柄の変動開始からリーチ予告発生までの時間を決定するタイマである。
図55は、ステップS761のリーチ態様決定処理を示すフローチャートである。リーチ態様決定処理において、表示制御用CPU101は、まず、リーチ種類決定用乱数を抽出する(ステップS761a)。そして、図50(A)に示されたテーブルを用いてリーチ種類を決定する(ステップS761b)。
図56は、ステップS762の大当り予告決定処理を示すフローチャートである。大当り予告決定処理において、表示制御用CPU101は、まず、大当り予告用乱数を抽出する(ステップS762a)。そして、大当りとするか否かを確認する(ステップS762b)。確認は、主基板31から受信した左右中停止図柄を示す表示制御コマンドを用いて行われる。大当りとしない場合には、図50(C)の右側に示されたテーブルを用いて、大当り予告を行うか否か決定し、予告を行う場合には予告の態様を決定する(ステップS762c)。また、大当りとする場合には、図50(C)の左側に示されたテーブルを用いて、大当り予告を行うか否か決定し、予告を行う場合には予告の態様を決定する(ステップS762d)。
そして、大当り予告を行うことに決定した場合には、大当り予告開始時間決定用タイマをスタートする(ステップS762e)。大当り予告開始時間決定用タイマは、図柄の変動開始から大当り予告1の態様を表示開始するまでの時間を決定するタイマである。
図57は、プロセステーブルの構成例を示す説明図である。それぞれの変動パターンに対応した各プロセステーブルには、時系列的に、変動速度やその速度での変動期間、背景やキャラクタの切替タイミング等が設定されている。また、ある速度での変動期間を決めるためのプロセスタイマ値も設定されている。また、各プロセステーブルは、複数の3バイト単位のプロセスデータで構成されている。
例えば、図41(A)に示された変動パターンに対応したプロセステーブルにおいて、最初のプロセスデータ(3バイト)には、左右中図柄を低速で変動させることと、次の表示状態切り替えタイミングまでの時間を示すプロセスタイマ値が設定されている。最初の変動はパターンaによる変動(加速)であって、まず、低速変動を開始すべきだからである。
次に、左図柄を中速で変動させることと、次の表示状態切り替えタイミングまでの時間を示すプロセスタイマ値が設定されている。その次には、右図柄を中速で変動させることと、次の表示状態切り替えタイミングまでの時間を示すプロセスタイマ値が設定されている。さらに、中図柄を中速で変動させることと、次の表示状態切り替えタイミングまでの時間を示すプロセスタイマ値が設定されている。以降、表示状態をどのように切り替えるのかと、次の表示状態切り替えタイミングまでの時間を示すプロセスタイマ値とが順次設定されている。
なお、表示状態切り替えタイミングとは、左右中図柄のいずれかの変動速度を切り替えるタイミングであるが、さらに、背景およびキャラクタの切り替えタイミングや図柄の差し替えをすべきタイミングも含まれる。
よって、表示制御用CPU101は、プロセスタイマのタイムアップによって何らかの表示状態を変更しなければならないことを知ることができる。そして、変更すべき表示状態は、プロセステーブルにおける次のプロセスデータの3バイト目の設定値から知ることができる。
図43(C)に示されたようなコマ送りを含む変動パターンでは、変動パターンを構成する各期間は、送りコマ数に応じて可変となる。そこで、送りコマ数に応じた各プロセステーブルを用意しておく。表示制御用CPU101は、変動開始時に、図43(C)に示されたようなコマ送りを含む変動パターンを使用することに決定した場合には、仮停止図柄から送りコマ数を算出する。そして、ステップS765において、送りコマ数に応じたプロセステーブルを用いることに決定する。送りコマ数に応じた各プロセステーブルを用意しておけば、変動パターンを構成する各期間が可変となる場合であっても、プロセステーブルに設定されているプロセスタイマ値と3バイト目の設定値とから容易に可変表示制御を遂行することができる。
図58は、全図柄変動開始処理(ステップS780)を示すフローチャートである。全図柄変動開始処理において、表示制御用CPU101は、使用することが決定されたプロセステーブルの最初に設定されているプロセスタイマ値でタイマをスタートさせる(ステップS781)。また、3バイト目に設定されている変動状態を示すデータにもとづいて図柄変動制御、背景およびキャラクタの表示制御を開始する(ステップS782)。そして、表示制御プロセスフラグの値を図柄変動中処理(ステップS810)に対応した値に変更する(ステップS783)。
図59は、図柄変動中処理(ステップS810)を示すフローチャートである。図柄変動中処理において、表示制御用CPU101は、リーチ予告開始時間決定用タイマがタイムアウトしたか否か確認する(ステップS811)。タイムアウトしていたら、既に決定されているリーチ予告態様による表示が行われるようにVDP103を制御する(ステップS812)。また、大当り予告開始時間決定用タイマがタイムアウトしたか否か確認する(ステップS813)。タイムアウトしていたら、大当り予告1の態様による表示が行われるようにVDP103を制御する(ステップS814)。
そして、大当り予告2による予告が行われることに決定していた場合には(ステップS815)、大当り予告2開始時間決定用タイマをスタートする(ステップS816)。この実施の形態では、大当り予告2は大当り予告1の発展形であるとしているので、大当り予告2による予告は、大当り予告1による予告がなされてから所定時間後(大当り予告2開始時間決定用タイマのタイムアウトまで)に行われる。
また、表示制御用CPU101は、大当り予告2開始時間決定用タイマがタイムアウトしたか否か確認する(ステップS817)。タイムアウトしていたら、大当り予告2の態様による表示が行われるようにVDP103を制御する(ステップS818)。
次いで、表示制御用CPU101は、プロセスタイマがタイムアウトしたか否か確認する(ステップS819)。プロセスタイマがタイムアウトした場合には、プロセステーブル中のデータを示すポインタを+3する(ステップS820)。そして、ポインタが指す領域のデータが終了コードであるか否か確認する(ステップS821)。終了コードでなければ、ポインタが指すプロセスデータの3バイト目に設定されている変動状態を示すデータにもとづいて図柄変動制御、背景およびキャラクタの表示制御を変更するとともに(ステップS822)、1,2バイト目に設定されているプロセスタイマ値でタイマをスタートさせる(ステップS823)。
ステップS821で、終了コードであれば、表示制御プロセスフラグの値を全図柄停止待ち処理(ステップS840)に対応した値に変更する(ステップS824)。
図60は、全図柄停止待ち処理(ステップS840)を示すフローチャートである。全図柄停止待ち処理において、表示制御用CPU101は、全図柄停止を指示する表示制御コマンドを受信しているか否か確認する(ステップS841)。全図柄停止を指示する表示制御コマンドを受信していれば、記憶されている仮停止図柄で図柄を停止させる制御を行う(ステップS842)。そして、次の表示制御コマンドの受信までの時間を監視するために、コマンド無受信タイマをスタートさせる(ステップS843)。
全図柄停止を指定する表示制御コマンドを受信していない場合には、監視タイマがタイムアウトしているかどうか確認する(ステップS845)。タイムアウトした場合には、何らかの異常が発生したと判断して、可変表示部9にエラー画面を表示する制御を行う(ステップS846)。
ステップS843の処理を行ったら、表示制御用CPU101は、表示制御プロセスフラグの値を大当り表示処理(ステップS870)に対応した値に設定する(ステップS844)。
図61は、大当り表示処理(ステップS870)を示すフローチャートである。大当り表示処理において、表示制御用CPU101は、確変大当りか否か判定する(ステップS871)。表示制御用CPU101は、例えば、確定図柄にもとづいて確変大当りか否かを判定することができる。確変大当りであれば、表示制御用CPU101は、例えば、「確変大当り」を可変表示部9に表示させる表示制御を行う(ステップS872)。具体的には、「確変大当り」の表示指示をVDP103に通知する。すると、VDP103は、指示された表示の画像データを作成する。また、画像データを背景画像と合成する。確変大当りでなければ、表示制御用CPU101は、例えば、「大当り」を可変表示部9に表示させる表示制御を行う(ステップS873)。
その後、大当り表示処理では、主基板31から送信される大当り遊技状態における表示制御コマンドにもとづいて可変表示部9の表示制御を行う。例えば、ラウンド数の表示等が行われる。そして、主基板31から大当り遊技の終了を示す表示制御コマンドを受信すると(ステップS874)、表示制御プロセスフラグの値を表示制御コマンド受信待ち(ステップS720)に対応した値に設定する(ステップS844)
以上に説明したように、表示制御手段は、遊技制御手段から受信した表示制御コマンドにもとづいて、リーチ種類すなわち識別情報の可変表示パターン(低速変動、中速変動、高速変動、コマ送り、およびそれらの切替時期)を決定するので、遊技制御手段は、具体的なリーチ種類を決定する処理を行わなくてよい。従って、遊技制御手段の図柄の可変表示制御に関する負荷が軽減される。
また、表示制御手段は、遊技制御手段から受信した表示制御コマンドにもとづいて、図柄の可変表示中に可変表示部9にキャラクタを表示させるか否かと、表示させる場合にはキャラクタの種類も決定する。従って、遊技制御手段は、表示キャラクタに関して何らの制御も行わなくてよいので、遊技制御手段の表示制御に要する負荷が軽減されている。
また、表示制御手段は、遊技制御手段から受信した表示制御コマンドにもとづいて、リーチ予告を行うか否かと、リーチ予告を行う場合にはいずれのリーチ予告態様を用いるのかとを決定する。従って、遊技制御手段は、リーチ予告に関して何らの制御も行わなくてよいので、遊技制御手段の表示制御に要する負荷が軽減されている。
さらに、表示制御手段は、遊技制御手段から受信した表示制御コマンドにもとづいて、大当り予告を行うか否かと、大当り予告を行う場合にはいずれの大当り予告態様を用いるのかとを決定する。従って、遊技制御手段は、大当り予告に関して何らの制御も行わなくてよいので、遊技制御手段の表示制御に要する負荷が軽減されている。
また、可変表示の終了時に、遊技制御手段から指示された停止図柄で停止するように、所定のタイミングで図柄の差し替え制御を行う。よって、遊技制御手段は、図柄の変動に関わる制御負荷をさらに軽減することができる。また、図柄の再変動を行う可変表示パターンでは、再変動前に導出する図柄の種類を決定する。例えば、遊技制御手段から大当りとなる停止図柄として確変図柄が指定されている場合には、再変動前に導出する図柄として確変とならない図柄を決定し、これを導出した後に再変動を実行し、その後、停止図柄として指定された停止図柄を導出する。また、例えば、図42に示された可変表示パターンでは、変動パターンdの開始時に図柄の差し替えを行うことによって、変動パターンfの開始前に表示される図柄の種類を決定することができる。従って、遊技制御手段は、図柄の変動に関わる制御負荷をさらに軽減することができる。
上記の実施の形態では、各変動パターンに応じて、用いられる背景およびキャラクタがあらかじめ決まっていた(図40〜図43参照)。従って、表示制御用CPU101が、受信した表示制御コマンドに応じて変動パターン(リーチ種類)を決定するということは、表示される背景およびキャラクタを、それぞれ複数種類のうちから選択する処理も行われたことになる。しかし、背景およびキャラクタを変動パターンとは独立に決定するようにしてもよい。また、上記の実施の形態では、どの変動パターンにおいてもキャラクタが表示されたが、ある変動パターンではキャラクタを登場させなかったり、途中から登場させるようにしてもよい。
なお、上記の実施の形態では、前述した揺れ動作状態と確定状態とを含めて停止状態と定義している。すなわち、その状態において表示されている図柄が次の図柄に変更されることのない場合には、それを停止状態と定義している。
次に、ランプ制御手段の動作について説明する。図62は、ランプ制御用CPU351が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域をクリアする等の初期値設定処理が行われる(ステップS441)。その後、この実施の形態では、ランプ制御用CPU351は、タイマ割込フラグの監視(ステップS442)の確認を行うループ処理に移行する。そして、図63に示すように、タイマ割込が発生すると、ランプ制御用CPU351は、タイマ割込フラグをセットする(ステップS447)。メイン処理において、タイマ割込フラグがセットされていたら、ランプ制御用CPU351は、そのフラグをクリアするとともに(ステップS443)、ランプ制御処理を行う(ステップS445)。
この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、ランプ制御処理は、2ms毎に起動される。
ランプ制御用CPU351の割込端子には、主基板31からの取込信号としてのランプ制御INT信号が接続されている。ランプ制御用CPU351がランプ制御メイン処理を行っている間に、主基板31からランプ制御コマンドが送出されると、取込信号にもとづく割込が発生し、割込処理によってランプ制御コマンド受信処理が実行される。ランプ制御コマンド受信処理は、図48に示された表示制御コマンド受信割込処理と同様に構成可能である。
図64は、ランプ制御処理(ステップS445)を示すフローチャートである。ランプ制御処理において、ランプ制御用CPU351は、コマンド受信個数カウンタの値が2以上になっているか否か確認する(ステップS461)。コマンド受信個数カウンタは、主基板31からの受信コマンドを格納する確定コマンドバッファの格納コマンドデータ数を示すカウンタである。コマンド受信個数カウンタの値が2以上になっているということは、1つ以上のランプ制御コマンドが受信されていることを意味する。
そこで、コマンド受信個数カウンタの値が2以上になっていれば、確定コマンドバッファから受信コマンドを読み出した後(ステップS462)、ランプパターンテーブルにおける受信コマンドに対応したパターンデータを読み込む(ステップS463)。なお、受信コマンドを読み出されると、コマンド受信個数カウンタの値は−2される。ランプパターンテーブルは、例えば、図25に示された各ランプ制御コマンドと、各コマンドに対応した制御パターンを示すパターンデータとで構成される。
ランプパターンテーブルにパターンデータが存在する場合、すなわち、パターンデータが記載されていた場合には(ステップS464)、該当する制御パターンを変更する(ステップS465)。例えば、「A000」のランプ制御コマンドを受信した場合には、装飾ランプおよび遊技効果ランプ・LEDの制御パターンを特別図柄の変動停止時の表示パターンに変更する。そして、ランプ・LED制御処理(ステップS466)を実行する。
図65は、パターンデータに対応したランプ・LED制御パターンの一例を示す説明図である。ランプ・LED制御パターンも、やはりROMに設定されている。図65に示された例は、点灯と消灯とを繰り返すように制御する場合のランプ・LED制御パターンであり、点灯時間と消灯時間とが設定されている。
ランプ・LED制御処理において、ランプ制御用CPU351は、ランプ・LED制御パターンに設定されていた点灯時間および消灯時間に従ってランプ・LED点灯/消灯制御を行う。図65に示された例は、点灯と消灯とを繰り返す簡単な例であるが、より複雑な点灯/消灯パターンを実現する場合であっても、ランプパターンテーブルにランプ制御コマンドに対応したパターンデータを設定するとともに、各パターンデータに対応したランプ・LED制御パターン(具体的な点灯時間等が設定されているテーブル)を用意しておけば、任意の点灯/消灯パターンを実現することができる。
以上のように、この実施の形態では、ランプ制御手段が、枠側に設けられているランプやLED等の発光体を制御するとともに、遊技盤に設けられているランプやLED等の発光体を制御する。従って、主基板31とは別にランプ制御基板35が設けられた構成において、発光体制御が簡潔に実現できる。また、遊技制御手段は遊技盤のランプやLED等の発光体を制御する必要がなくなるので、遊技制御手段の発光体制御に要する負荷が軽減され、遊技進行制御にかけられる時間が増大したり、遊技進行制御に割り当てることができるプログラム容量が増大する。
また、ランプ制御手段は、枠側に設けられている発光体も遊技盤に設けられている発光体もパターンデータにもとづいて制御する。よって、遊技制御手段からのコマンドに応じて発光体表示制御を行うように構成されていても、ランプ制御手段の構成を簡潔に実現できる。
次に、音声制御手段の動作について説明する。図66は、音声制御用CPU701が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域をクリアする等の初期値設定処理が行われる(ステップS401)。その後、この実施の形態では、音声制御用CPU701は、タイマ割込フラグの監視(ステップS402)の確認を行うループ処理に移行する。そして、図67に示すように、タイマ割込が発生すると、音声制御用CPU701は、タイマ割込フラグをセットする(ステップS407)。メイン処理において、タイマ割込フラグがセットされていたら、音声制御用CPU701は、そのフラグをクリアするとともに(ステップS403)、音声制御処理を行う(ステップS405)。
この実施の形態では、タイマ割込は2ms毎にかかるとする。すなわち、音声制御処理は、2ms毎に起動される。
音声制御用CPU701の割込端子には、主基板31からの取込信号としての音声制御INT信号が接続されている。音声制御用CPU701が音声制御メイン処理を行っている間に、主基板31から音声制御コマンドが送出されると、取込信号にもとづく割込が発生し、割込処理によって音声制御コマンド受信処理が実行される。音声制御コマンド受信処理は、図48に示された表示制御コマンド受信割込処理と同様に構成可能である。
図68は、音声制御処理(ステップS405)を示すフローチャートである。音声制御処理において、音声制御用CPU701は、コマンド受信個数カウンタの値が2以上になっているか否か確認する(ステップS431)。コマンド受信個数カウンタは、主基板31からの受信コマンドを格納する確定コマンドバッファの格納コマンドデータ数を示すカウンタである。コマンド受信個数カウンタの値が2以上になっているということは、1つ以上の音声制御コマンドが受信されていることを意味する。
そこで、コマンド受信個数カウンタの値が2以上になっていれば、受信コマンドを確定コマンドバッファから読み出した後(ステップS432)、音声パターンテーブルにおける受信コマンドに対応したパターンデータを読み込む(ステップS433)。なお、受信コマンドを読み出されると、コマンド受信個数カウンタの値は−2される。また、音声パターンテーブルは、例えば、図26に示された各音声制御コマンドと、各コマンドに対応した制御パターンを示すパターンデータとで構成される。
そして、読み込んだパターンデータに対応した制御データをROMから読み出し(ステップS434)、読み出した制御データにもとづいて以下の音声制御を行う。制御データとは、音の種類や音継続時間等のデータであり、各パターンデータに対応してROMに設定されている。
この実施の形態では、音声合成回路702は、転送リクエスト信号(SIRQ)、シリアルクロック信号(SICK)、シリアルデータ信号(SI)および転送終了信号(SRDY)によって制御される。音声合成回路702は、SIRQがローレベルになると、SICKに同期してSIを1ビットずつ取り込み、SRDYがローレベルになるとそれまでに受信した各SIからなるデータを1つの音声再生用データと解釈する。従って、音声制御用CPU701は、SIRQをオン(ローレベル)にして(ステップS435)、ROMから読み出した制御データをSICKに同期してSIとして出力し(ステップS436)、出力が完了したらSRDYをローレベルにする(ステップS437)。音声合成回路702は、SIによって制御データを受信すると、受信した制御データに応じた音声を発生する。
以上のように、各演出制御手段は、遊技制御手段から受信した制御コマンドに応じて演出部品の制御を行う。そして、表示制御手段は、受信した制御コマンドにもとづいて、大当り予告等の予告演出を行うか否かを決定したが、ランプ制御手段および音声制御手段も、受信した制御コマンドにもとづいて、大当り予告、リーチ予告、確変予告等の予告演出を行うか否かを決定し、ランプ点灯パターンや音発生パターンによって予告演出を行ってもよい。
また、この実施の形態では、ランプ制御基板35、音声制御基板70および図柄制御基板80が設けられているが、1つの演出制御基板を設け、演出制御基板上に各演出制御手段を搭載し、演出制御基板に対して遊技制御手段から制御コマンドを送出する構成にしてもよい。すなわち、遊技制御手段は、演出制御基板に対して、ランプ制御コマンド、音声制御コマンドおよび表示制御コマンドを送出する。
ただし、演出制御基板に搭載されているランプ制御手段、音声制御手段および表示制御手段は、遊技制御手段から受信した制御コマンドのうちに必要なもののみに従って演出制御を行ってもよい。その場合には、複数の演出制御手段が演出制御基板に搭載されていても、遊技制御手段から、制御コマンドを複数の演出制御手段毎に分けて送出する必要はない。すなわち、演出内容に応じた一の演出制御コマンドを演出制御基板に対して送出する。そして、賞球ランプ51や球切れランプ52等の遊技演出に直接関わらない電気部品を制御するための演出制御コマンドを、遊技演出に関連した演出制御コマンドと別に定義しておく。
図69は、払出制御用CPU371のメイン処理を示すフローチャートである。メイン処理では、払出制御用CPU371は、まず、必要な初期設定を行う(ステップS601)。
そして、払出制御用CPU371は、払出制御用のバックアップRAM領域にバックアップデータが存在しているか否かの確認を行う(ステップS602)。すなわち、例えば、主基板31のCPU56の処理と同様に、電源断時にセットされるバックアップフラグがセット状態になっているか否かによって、バックアップデータが存在しているか否か確認する。バックアップフラグがセット状態になっている場合には、バックアップデータありと判断する。バックアップデータなしと判断された場合には、前回の電源オフ時に未払出の遊技球がなかったことになり、内部状態を電源断時の状態に戻す必要がない。従って、払出制御用CPU371は、停電復旧時でない電源投入時に実行される初期化処理を実行する(ステップS602,S603)。
バックアップRAM領域にバックアップデータが存在している場合には、払出制御用CPU371は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS604)。不測の電源断が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する(ステップS605,S603)。
チェック結果が正常であれば、払出制御用CPU371は、内部状態を電源断時の状態に戻すための払出状態復旧処理を行う(ステップS606)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の指すアドレスに復帰する(ステップS607)。
通常の初期化処理の実行(ステップS603)を終えると、払出制御用CPU371により実行されるメイン処理は、タイマ割込フラグの監視(ステップS608)の確認が行われるループ処理に移行する。
通常の初期化処理では、図70に示すように、レジスタおよびRAMのクリア処理(ステップS621)が行われ、所定の初期値の設定が行われる(ステップS622)。そして、初期化処理を終える前に割込が許可される(ステップS623)。
この実施の形態では、払出制御用CPU371の内蔵タイマ/カウンタが繰り返しタイマ割込を発生するように設定される。また、繰り返し周期は2msに設定される。そして、図71に示すように、タイマ割込が発生すると、払出制御用CPU371は、タイマ割込フラグをセットする(ステップS631)。なお、図71には割込を許可することも明示されているが(ステップS630)、2msタイマ割込処理では、最初に割込許可状態に設定される。すなわち、2msタイマ割込処理中には割込許可状態になっている。
払出制御用CPU371は、ステップS608において、タイマ割込フラグがセットされたことを検出すると、タイマ割込フラグをリセットするとともに(ステップS609)、払出制御処理を実行する(ステップS610)。以上の制御によって、この実施の形態では、払出制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、払出制御処理はメイン処理において実行されるが、タイマ割込処理で払出制御処理を実行してもよい。
図72は、ステップS610の払出制御処理を示すフローチャートである。払出制御処理において、払出制御用CPU371は、まず、中継基板72を介して入力ポート372bに入力される賞球カウントスイッチ301A、球貸しカウントスイッチ301Bがオンしたか否かを判定する(スイッチ処理:ステップS651)。
次に、払出制御用CPU371は、センサ(例えば、払出モータ289の回転数を検出するモータ位置センサ)からの信号入力状態を確認してセンサの状態を判定する等の処理を行う(入力判定処理:ステップS652)。払出制御用CPU371は、さらに、受信した払出制御コマンドを解析し、解析結果に応じた処理を実行する(コマンド解析実行処理:ステップS653)。
次いで、払出制御用CPU371は、主基板31から払出停止指示コマンドを受信していたら払出停止状態に設定し、払出開始指示コマンドを受信していたら払出停止状態の解除を行う(ステップS654)。また、プリペイドカードユニット制御処理を行う(ステップS655)。
また、払出制御用CPU371は、球貸し要求に応じて貸し球を払い出す制御を行う(ステップS656)。さらに、払出制御用CPU371は、所定の賞球を払い出す賞球制御処理を行う(ステップS657)。そして、払出制御用CPU371は、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に向けて駆動信号を出力し、ステップS656の球貸し制御処理またはステップS657の賞球制御処理で設定された回転数分払出モータ289を回転させる払出モータ制御処理を行う(ステップS658)。
なお、この実施の形態では、払出モータ289としてステッピングモータが用いられ、払出モータ289を制御するために1−2相励磁方式が用いられる。従って、具体的には、払出モータ制御処理において、8種類の励磁パターンデータが繰り返し払出モータ289に出力される。また、この実施の形態では、各励磁パターンデータが4msずつ出力される。
次いで、エラー検出処理が行われ、その結果に応じてエラー表示LED374に所定の表示を行う(エラー処理:ステップS659)。
さらに、ターミナル基板160に情報信号を出力する処理を行う(出力処理:ステップS660)。なお、情報信号は、貸し球の払出一単位(例えば25個)ごとに所定時間オンとなり、続いて所定時間オフを出力する信号である。
図73は、払出制御用CPU371が内蔵するRAMの使用例を示す説明図である。この例では、バックアップRAM領域に、総合個数記憶(例えば2バイト)と貸し球個数記憶とがそれぞれ形成されている。総合個数記憶は、主基板31の側から指示された賞球払出個数の総数を記憶するものである。貸し球個数記憶は、未払出の球貸し個数を記憶するものである。
図74は、主基板31から受信した払出制御コマンドを格納するための受信バッファの一構成例を示す説明図である。この例では、2バイト構成の払出制御コマンドを6個格納可能なリングバッファ形式の受信バッファが用いられる。従って、受信バッファは、確定コマンドバッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。
図75は、割込処理による払出制御コマンド受信処理を示すフローチャートである。主基板31からの払出制御用のINT信号は払出制御用CPU371のCLK/TRG2端子に入力されている。例えば、主基板31からのINT信号がオン状態になると、初期値として「1」が設定されていたタイマカウンタレジスタCLK/TRG2の値が0になって払出制御用CPU371において割込がかかる。そして、図75に示す払出制御コマンドの受信処理が開始される。なお、払出制御コマンド受信処理の開始番地は、内蔵CTCから出力される割込ベクタとIレジスタに設定された値とで決定される番地である。また、タイマカウンタレジスタCLK/TRG2の値が0になると、その値は自動的に初期値(この例では「1」)に戻される。
払出制御コマンドの受信処理において、払出制御用CPU371は、まず、各レジスタをスタックに退避する(ステップS670)。なお、割込が発生するとCPU371は自動的に割込禁止状態に設定するが、自動的に割込禁止状態にならないCPUを用いている場合には、ステップS670の処理の実行前に割込禁止命令(DI命令)を発行することが好ましい。次いで、払出制御コマンドデータの入力に割り当てられている入力ポート372aからデータを読み込む(ステップS671)。そして、2バイト構成の払出制御コマンドのうちの1バイト目であるか否か確認する(ステップS672)。1バイト目であるか否かは、受信したコマンドの先頭ビットが「1」であるか否かによって確認される。先頭ビットが「1」であるのは、2バイト構成である払出制御コマンドのうちのMODEバイト(1バイト目)のはずである(図21参照)。そこで、払出制御用CPU371は、先頭ビットが「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す確定コマンドバッファに格納する(ステップS673)。
払出制御コマンドのうちの1バイト目でなければ、1バイト目を既に受信したか否か確認する(ステップS674)。既に受信したか否かは、受信バッファ(確定コマンドバッファ)に有効なデータが設定されているか否かによって確認される。
1バイト目を既に受信している場合には、受信した1バイトのうちの先頭ビットが「0」であるか否か確認する。そして、先頭ビットが「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ+1が示す確定コマンドバッファに格納する(ステップS675)。先頭ビットが「0」であるのは、2バイト構成である払出制御コマンドのうちのEXTバイト(2バイト目)のはずである(図21参照)。なお、ステップS674における確認結果が1バイト目を既に受信したである場合には、2バイト目として受信したデータのうちの先頭ビットが「0」でなければ処理を終了する。
ステップS675において、2バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに2を加算する(ステップS676)。そして、コマンド受信カウンタが12以上であるか否か確認し(ステップS677)、12以上であればコマンド受信個数カウンタをクリアする(ステップS678)。その後、退避されていたレジスタを復帰し(ステップS679)、割込許可に設定する(ステップS680)。
払出制御コマンドは2バイト構成であって、1バイト目(MODE)と2バイト目(EXT)とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、MODEとしてのデータを受信したのかEXTとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。なお、このことは、表示制御コマンド、ランプ制御コマンドおよび音声制御コマンドについても同様である。
図76は、払出制御処理におけるステップS653のコマンド解析実行処理の一例を示すフローチャートである。コマンド解析実行処理において、払出制御用CPU371は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う(ステップS653a)。受信コマンドがあれば、受信した払出制御コマンドが払出個数指示コマンドであるか否かの確認を行う(ステップS653b)。なお、確定コマンドバッファ領域中に複数の受信コマンドがある場合には、受信した払出制御コマンドが払出個数指示コマンドであるか否かの確認は、最も前に受信された受信コマンドについて行われる。
受信した払出制御コマンドが払出個数指示コマンドであれば、払出個数指示コマンドで指示された個数を総合個数記憶に加算する(ステップS653c)。すなわち、払出制御用CPU371は、主基板31のCPU56から送られた払出個数指示コマンドに含まれる賞球数をバックアップRAM領域(総合個数記憶)に記憶する。
なお、払出制御用CPU371は、必要ならば、コマンド受信個数カウンタの減算や確定コマンドバッファ領域における受信コマンドシフト処理を行う。また、図23に示されたように、払出制御コマンドは2バイト構成であって、1バイト目が「F0(H)」であれば直ちに払出個数指示コマンドであることを確認できる。そして、2バイト目のデータによって、指示された払出個数を直ちに認識できる。すなわち、払出個数を指示するコマンドであるのか否かを一の制御信号(MODEバイト)で認識し、実際の払出数を他の制御信号(EXTバイト)で特定する。
図77は、払出制御処理におけるステップS654の払出停止状態設定処理の一例を示すフローチャートである。払出停止状態設定処理において、払出制御用CPU371は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う(ステップS654a)。確定コマンドバッファ領域中に受信コマンドがあれば、受信した払出制御コマンドが払出停止指示コマンドであるか否かの確認を行う(ステップS654b)。払出停止指示コマンドであれば、払出制御用CPU371は、賞球払出停止状態に設定する(ステップS654c)。
ステップS654bで受信コマンドが払出停止指示コマンドでないことを確認すると、受信した払出制御コマンドが払出開始指示コマンドであるか否かの確認を行う(ステップS654d)。払出開始指示コマンドであれば、賞球払出停止状態を解除する(ステップS654e)。
なお、払出制御手段は、払出が可能な状態であるのか否かを示す情報を一の制御信号(MODEバイト)で認識し、実際に可能か否かを他の制御信号(EXTバイト)で特定する。
図78および図79は、払出制御処理におけるステップS656の球貸し制御処理の一例を示すフローチャートである。なお、この実施の形態では、連続的な払出数の最大値を貸し球の一単位(例えば25個)とするが、連続的な払出数の最大値は他の数であってもよい。
球貸し制御処理において、払出制御用CPU371は、貸し球払出中であるか否かの確認を行い(ステップS511)、貸し球払出中であれば図79に示す球貸し中の処理に移行する。なお、貸し球払出中であるか否かは、後述する球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ、賞球の払出中であるか否か確認する(ステップS512)。賞球の払出中であるか否は、後述する賞球処理中フラグの状態によって判断される。
貸し球払出中でも賞球払出中でもなければ、払出制御用CPU371は、カードユニット50から球貸し要求があったか否かを確認する(ステップS513)。要求があれば、球貸し処理中フラグをオンするとともに(ステップS514)、25(球貸し一単位数:ここでは100円分)をバックアップRAM領域の貸し球個数記憶に設定する(ステップS515)。そして、払出制御用CPU371は、EXS信号をオンする(ステップS516)。また、球払出装置97の下方の球振分部材311を球貸し側に設定するために振分用ソレノイド310を駆動する(ステップS517)。さらに、払出モータ289をオンして(ステップS518)、図79に示す球貸し中の処理に移行する。
なお、払出モータ289をオンするのは、厳密には、カードユニット50が受付を認識したことを示すためにBRQ信号をOFFとしてからである。また、球貸し処理中フラグはバックアップRAM領域に設定される。
図79は、払出制御用CPU371による払出制御処理における球貸し中の処理を示すフローチャートである。なお、球貸し処理では、払出モータ289がオンしていなければオンする。また、この実施の形態では、ステップS751のスイッチ処理で、球貸しカウントスイッチ301Bの検出出力による遊技球の払出がなされたか否かの確認を行うので、球貸し制御処理では貸し球個数記憶の減算などは行われない。
球貸し中の処理において、払出制御用CPU371は、貸し球通過待ち時間中であるか否かの確認を行う(ステップS519)。貸し球通過待ち時間中でなければ、貸し球の払出を行い(ステップS520)、払出モータ289の駆動を終了すべきか(一単位の払出動作が終了したか)否かの確認を行う(ステップS521)。具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用CPU371は、払出モータ289の駆動を停止し(ステップS522)、貸し球通過待ち時間の設定を行う(ステップS523)。
なお、ステップS520の球貸し処理では、払出モータ位置センサのオンとオフとがタイマ監視されるが、所定時間以上のオン状態またはオフ状態が継続したら、払出制御用CPU371は、払出モータ球噛みエラーが生じたと判断する。
ステップS519で貸し球通過待ち時間中であれば、払出制御用CPU371は、貸し球通過待ち時間が終了したか否かの確認を行う(ステップS524)。貸し球通過待ち時間は、最後の払出球が払出モータ289によって払い出されてから球貸しカウントスイッチ301Bを通過するまでの時間である。貸し球通過待ち時間の終了を確認すると、一単位の貸し球は全て払い出された状態であるので、カードユニット50に対して次の球貸し要求の受付が可能になったことを示すためにEXS信号をオフにする(ステップS524)。また、振分ソレノイドをオフするとともに(ステップS525)、球貸し処理中フラグをオフする(ステップS527)。
なお、貸し玉通過待ち時間が経過するまでに最後の払出球が球貸しカウントスイッチ301Bを通過しなかった場合には、球貸し経路エラーとされる。また、この実施の形態では、賞球も球貸しも同じ払出装置で行われている。
球貸し要求の受付を示すEXS信号をオフにした後、所定期間内に再び球貸し要求信号であるBRQ信号がオンしたら、振分ソレノイドおよび払出モータをオフせずに球貸し処理を続行するようにしてもよい。すなわち、所定単位(この例では100円単位)毎に球貸し処理を行うのではなく、球貸し処理を連続して実行するように構成することもできる。
貸し球個数記憶の内容は、遊技機の電源が断しても、所定期間電源基板910のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用CPU371は、貸し球個数記憶の内容にもとづいて球貸し処理を継続することができる。
図80および図81は、ステップS757の賞球制御処理の一例を示すフローチャートである。なお、この例では、連続的な払出数の最大値を貸し球の一単位と同数(例えば25個)とするが、連続的な払出数の最大値は他の数であってもよい。
賞球制御処理において、払出制御用CPU371は、貸し球払出中であるか否か確認する(ステップS531)。貸し球払出中であるか否かは、球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ賞球の払出中であるか否か確認し(ステップS532)、賞球の払出中であれば図81に示す賞球中の処理に移行する。賞球の払出中であるか否かは、後述する賞球処理中フラグの状態によって判断される。
貸し球払出中でも賞球払出中でもなければ、払出制御用CPU371は、カードユニット50からの球貸し準備要求があるか否か確認する(ステップS533)。球貸し準備要求があるか否かは、カードユニット50から入力されるBRDY信号のオン(要求あり)またはオフ(要求なし)を確認することによって行われる。
カードユニット50からの球貸し準備要求がなければ、払出制御用CPU371は、総合個数記憶に格納されている賞球数(未払出の賞球数)が0でないか否か確認する(ステップS534)。総合個数記憶に格納されている賞球数が0でなければ、賞球制御用CPU371は、賞球処理中フラグをオンし(ステップS535)、総合個数記憶の値が25以上であるか否か確認する(ステップS536)。なお、賞球処理中フラグは、バックアップRAM領域に設定される。
総合個数記憶に格納されている賞球数が25以上であると、払出制御用CPU371は、25個分の遊技球を払い出すまで払出モータ289を回転させるように払出モータ289に対して駆動信号を出力するために、25個払出動作の設定を行う(ステップS537)。総合個数記憶に格納されている賞球数が25以上でなければ、払出制御用CPU371は、総合個数記憶に格納されている全ての遊技球を払い出すまで払出モータ289を回転させるように駆動信号を出力するために、全個数払出動作の設定を行う(ステップS538)。次いで、払出モータ289をオンする(ステップS538)。なお、振分ソレノイドはオフ状態であるから、球払出装置97の下方の球振分部材は賞球側に設定されている。そして、図81に示す賞球制御処理における賞球払出中の処理に移行する。
図81は、払出制御用CPU371による払出制御処理における賞球中の処理の一例を示すフローチャートである。なお、賞球中の処理では、払出モータ289がオンしていなければオンする。また、この実施の形態では、ステップS751のスイッチ処理で、賞球カウントスイッチ301Aの検出出力による遊技球の払出がなされたか否かの確認を行うので、賞球制御処理では総合個数記憶の減算などは行われない。
賞球中の処理において、払出制御用CPU371は、賞球通過待ち時間中であるか否かの確認を行う(ステップS540)。賞球通過待ち時間中でなければ、賞球払出を行い(ステップS541)、払出モータ289の駆動を終了すべきか(25個または25個未満の所定の個数の払出動作が終了したか)否かの確認を行う(ステップS542)。
具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用CPU371は、払出モータ289の駆動を停止し(ステップS543)、賞球通過待ち時間の設定を行う(ステップS544)。賞球通過待ち時間は、最後の払出球が払出モータ289によって払い出されてから賞球カウントスイッチ301Aを通過するまでの時間である。
総合個数記憶および貸し球個数記憶の内容は、遊技機の電源が断しても、所定期間電源基板910のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用CPU371は、総合個数記憶の内容にもとづいて払出処理を継続することができる。
なお、払出制御用CPU371は、主基板31から指示された賞球個数を賞球個数記憶で総数として管理したが、賞球数毎(例えば15個、10個、6個)に管理してもよい。例えば、賞球数毎に対応した個数カウンタを設け、払出個数指定コマンドを受信すると、そのコマンドで指定された個数に対応する個数カウンタを+1する。そして、個数カウンタに対応した賞球払出が行われると、その個数カウンタを−1する(この場合、払出制御処理にて減算処理を行うようにする)。その場合にも、各個数カウンタはバックアップRAM領域に形成される。よって、遊技機の電源が断しても、所定期間中に電源が回復すれば、払出制御用CPU371は、各個数カウンタの内容にもとづいて賞球払出処理を継続することができる。
ステップS540で賞球通過待ち時間中であれば、払出制御用CPU371は、賞球通過待ち時間が終了したか否かの確認を行う(ステップS545)。賞球通過待ち時間が終了した時点は、ステップS537またはステップS538で設定された賞球が全て払い出された状態である。そこで、払出制御用CPU371は、賞球通過待ち時間が終了していれば、賞球処理中フラグをオフする(ステップS546)。賞球通過待ち時間が経過するまでに最後の払出球が賞球カウントスイッチ301Aを通過しなかった場合には、賞球経路エラーとされる。
なお、この実施の形態では、ステップS511、ステップS531の判断によって球貸しが賞球処理よりも優先されることになるが、賞球処理が球貸しに優先するようにしてもよい。
以上のように、この実施の形態では、主基板31の他に、図柄制御基板80、ランプ制御基板35、音声制御基板70および払出制御基板37を設け、それらの電気部品制御基板上の各制御手段が具体的な遊技演出制御または価値付与制御を行うように構成したので、遊技制御手段の制御負荷が大きく軽減される。また、電源基板910が各基板に使用電圧を供給するので、電源供給に関するコストが低減する
また、主基板31から各電気部品制御基板への制御コマンドが2つの制御信号で構成され、それらが正しく受信された場合に制御コマンドにもとづく制御が開始されるので、誤った制御が行われてしまう可能性が大きく低減する。そして、各制御手段は、2つの制御信号のうちの一方によって制御内容の種類を認識し、他方の制御信号によって詳細な制御内容を特定する構成になっているので、コマンド体系の変更等に柔軟に対応することもできる。
特に、電気部品制御手段のうち、遊技演出に用いられる電気部品である演出部品を制御する演出部品制御手段(この例では、表示制御手段、ランプ制御手段および音声制御手段)は、2つの制御信号のうちの一方によって演出内容の種類を認識し、他方の制御信号によって詳細な演出内容を特定する構成になっているので、遊技演出の変更などに応じたコマンド体系の変更等に柔軟に対応することができる。
また、各電気部品制御基板とは別個の電源基板910が設置されているので、複数の電気部品制御基板に集中的に電源供給を行うことができる。従って、遊技機の電源供給に関するコストはさほど上昇しない。さらに、遊技機において電源作成手段が1つであることから、各電気部品制御基板に対する電源供給の順序付けも容易である。例えば、主基板31に対して電源供給開始される前に他の電気部品制御基板に対する電源供給が開始されれば、遊技機への電源供給開始後直ちに制御信号が遊技制御手段から送出されるように構成されていても、各電気部品制御手段は、遊技制御手段からの取込信号および制御信号を確実に検知することができる。特に、電気部品制御手段におけるCPUの割込を生じさせる部分も確実に動作開始しているので、取込信号にもとづく割込も確実に発生する。
また、遊技制御手段は、電気部品を制御する各電気部品制御手段に対して共通形態の制御信号を送出することができるので、遊技制御手段における制御信号出力部分の構成が簡略化される。例えば、各電気部品制御手段に対する制御信号出力処理を1つのモジュールで実現することができる。さらに、上記の実施の形態のように、各電気部品制御手段に対する取込信号(INT信号)を1つの出力ポートから出力するようにすれば(図27等参照)、制御信号が共通化されるとともに取込信号の出力の容易化が図れるので、制御信号出力部分の構成をさらに簡略化することができる。
また、1つの指令について、共通化されている2つの制御信号が送出されているので、基板間で一方のデータにエラーが生じても、電気部品制御手段において、容易にそのことを検出でき、誤った制御信号にもとづいて電気部品制御がなされてしまうことがより確実に防止される。例えば、上述した実施の形態のように、2つの制御信号のそれぞれの特定ビットに異なる値を設定しておけば、電気部品制御手段は、容易にいずれのデータを受信したのかを判断することができ、エラー(すなわち1バイト抜け)の発生を容易に検知することができる。さらに、取込信号にもとづく割込処理で制御信号を取り込むように構成されている場合には、割込処理において容易にデータエラーを検知することができるので、割込処理の実行時間を短くすることができる。
そして、演出部品制御手段が、制御信号に対応して行われる演出制御(例えばリーチ演出)について、制御信号を受信したら複数種類の演出内容から選択して演出を行うように構成されている場合には、遊技制御手段の遊技演出選択に関する負担が軽減される。また、制御信号の種類も低減する。遊技制御手段の遊技演出選択に関する負担が軽減するので、遊技制御手段は、他の制御にかけることができるより多くの時間を確保でき、全体として、遊技演出の内容を豊富にすることができる。
なお、上記の各実施の形態のパチンコ遊技機1は、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第2種パチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
また、パチンコ遊技機に限られず、スロット機等においても、何らかの動作をする電気部品を制御するための電気部品制御基板が備えられている場合などには本発明を適用することができる。