以下、本発明に係る遊技機の一実施形態を、パチンコ遊技機を例にして、図面を参照して具体的に説明する。なお、以下の説明において、上下左右の方向を示す場合は、図示正面から見た場合の上下左右をいうものとする。
<パチンコ遊技機外観構成の説明>
まず、図1~図3を参照して、本実施形態に係るパチンコ遊技機の外観構成を説明する。
<パチンコ遊技機前面の外観構成の説明>
図1に示すように、パチンコ遊技機1は、木製の外枠2の前面に矩形状の前面枠3を開閉可能に取り付け、その前面枠3の裏面に取り付けられている遊技盤収納フレーム(図示せず)内に遊技盤4が装着された構成からなる。遊技盤4は、図2に示す遊技領域40を前面に臨ませた状態で装着され、図1に示すようにこの遊技領域40の前側に透明ガラスを支持したガラス扉枠5が設けられている。なお、上記遊技領域40は、遊技盤4の面上に配設された球誘導レール6(図2参照)で囲まれた領域からなるものである。
一方、パチンコ遊技機1は、図1に示すように、ガラス扉枠5の下側に前面操作パネル7が配設され、その前面操作パネル7には上受け皿ユニット8が設けられ、この上受け皿ユニット8には、排出された遊技球を貯留する上受け皿9が一体形成されている。また、この前面操作パネル7には、球貸しボタン11及びプリペイドカード排出ボタン12(カード返却ボタン12)が設けられている。上受け皿9の上皿表面部分には、内蔵ランプ(図示せず)点灯時に遊技者が押下することにより演出効果を変化させることができる押しボタン式の演出ボタン装置13が設けられている。また、この上受け皿9には、当該上受け皿9に貯留された遊技球を下方に抜くための球抜きボタン14が設けられ、さらに、略十字キーからなる設定ボタン15が設けられている。この設定ボタン15は、遊技者による操作が可能なもので、中央部に設けられた円形の決定キー15aと、その決定キー15aの図示上側に設けられた三角形状の上キー15bと、その決定キー15aの図示左側に設けられた三角形状の左キー15cと、その決定キー15aの図示右側に設けられた三角形状の右キー15dと、その決定キー15aの図示下側に設けられた三角形状の下キー15eとで構成されている。
一方、図1に示すように、前面操作パネル7の右端部側には、発射ユニットを作動させるための発射ハンドル16が設けられ、前面枠3の上部両側面側及び発射ハンドル16の近傍には、BGM(Background music)や効果音等を発するスピーカ17が設けられている。なお、上記前面枠3の周枠には、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配設されている。
<遊技盤の外観構成の説明>
他方、上記遊技盤4の遊技領域40には、図2に示すように、略中央部にLCD(Liquid Crystal Display)等からなる液晶表示装置41が配置されている。この液晶表示装置41は、表示エリアを左、中、右の3つのエリアに分割し、独立して数字やキャラクタ、文字(キャラクタの会話や歌詞テロップ等)あるいは図柄(特別図柄や普通図柄)の変動表示が可能なものである。そしてこのような液晶表示装置41の周囲には、装飾用の上飾り42a、左飾り42b、右飾り42cが設けられており、この上飾り42a、左飾り42b、右飾り42cの背面側には可動役物装置43が配置されている。なお、上飾り42a、左飾り42b、右飾り42cには、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
この可動役物装置43は、図2に示すように、遊技の進行に伴い所定の演出動作を行う上可動役物43aと、左可動役物43bと、右可動役物43cと、左上可動役物43dと、さらに、上・左・右・左上可動役物43a~43dを、夫々、駆動する2相のステッピングモータ等のモータ(図示せず)とで構成されている。なお、これら上・左・右・左上可動役物43a~43dには、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
一方、液晶表示装置41の真下には、特別図柄1始動口44が配置され、その内部には入賞球を検出する特別図柄1始動口スイッチ44a(図4参照)が設けられている。そしてこの特別図柄1始動口スイッチ44a(図4参照)が検出した有効入賞球数、すなわち、第1始動保留球数が所定数(例えば、4個)液晶表示装置41に表示されることとなる。なお、この第1始動保留球数は、特別図柄1始動口44へ遊技球が入賞し、特別図柄1始動口スイッチ44a(図4参照)にて検出されると、1加算(+1)され、数字やキャラクタあるいは図柄(装飾図柄)等の特別図柄の変動表示が開始されると、1減算(-1)されるというものである。なお、特別図柄1始動口44及びその周囲には、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
他方、液晶表示装置41の右下部側には、図2に示すように、特別図柄2始動装置45が配置されている。この特別図柄2始動装置45は、図3に示すように、特別図柄2始動口45aと、この特別図柄2始動口45aを遊技球YKが入球可能な開状態とする「開放状態」と入球不可能な閉状態とする「閉鎖状態」とに変化可能な開閉部45bと、遊技球YKを特別図柄2始動口45aに向けて案内する「案内状態」と案内しない「非案内状態」とに変化可能な入球案内部45cと、特別図柄2始動口45aに入球した遊技球YKを検出する特別図柄2始動口スイッチ45a1(図4参照)と、で構成されている。
特別図柄2始動口45aは、図2の図示正面左右方向の右側に向けて略横向きに開口しており、その特別図柄2始動口45aの内部に入賞球を検出する特別図柄2始動口スイッチ45a1(図4参照)が設けられている。この特別図柄2始動口スイッチ45a1(図4参照)が検出した有効入賞球数、すなわち、第2始動保留球数が所定数(例えば、4個)液晶表示装置41に表示されることとなる。なお、この第2始動保留球数は、特別図柄2始動口45aへ遊技球が入賞し、特別図柄2始動口スイッチ45a1(図4参照)にて検出されると、1加算(+1)され、数字やキャラクタあるいは図柄(装飾図柄)等の特別図柄の変動表示が開始されると、1減算(-1)されるというものである。
開閉部45bは、特別図柄2始動口45aに対して左右方向に移動可能な開閉部材45b1と、開閉部材45b1を駆動制御する普通電動役物ソレノイド45b2(図4参照)とを備えている。この開閉部45bは、閉鎖状態のときには、図3(b)に示すように、開閉部材45b1が特別図柄2始動口45a内に突出して(図示左側に移動して)この特別図柄2始動口45aへの遊技球YKの入球を阻止し、開放状態のときには、図3(a)に示すように、図示右側に退避して特別図柄2始動口45aへの遊技球YKの入球を許容するようになっている。
入球案内部45cは、図2に示す右側から左側に向かって下り状に傾斜(特別図柄2始動口45a側に向かって下り状に傾斜)している案内部材45c1と、を備えている。そして、この案内部材45c1は、普通電動役物ソレノイド45b2(図4参照)にて駆動制御されることとなる。
この入球案内部45cは、図3(a)に示すように、案内状態のときには、案内部材45c1が遊技領域40の前側(図1に示すガラス扉枠5側)にスライドして突出し、その上側に乗った遊技球YKを特別図柄2始動口45aへ案内し、非案内状態のときには、図3(b)に示すように、案内部材45c1が後向き(遊技領域40の後側)にスライドして退避するようになっている。これにより、案内部材45c1が案内状態のときにその上に遊技球YKが乗ったとしても、その遊技球YKが特別図柄2始動口45aに入球する前に非案内状態に変化して案内部材45c1が後向きにスライドした場合、その遊技球YKは特別図柄2始動口45aに入球することなく下流側に流下することとなる。なお、案内部材45c1と開閉部材45b1とは連動して動作するようになっている。すなわち、案内部材45c1が案内状態のときには、開閉部材45b1は、図3(a)に示す右側に退避して特別図柄2始動口45aへの遊技球YKの入球を許容するようになっており、案内部材45c1が非案内状態のときには、開閉部材45b1は、図3(b)に示す左側に突出して特別図柄2始動口45aへの遊技球YKの入球を阻止するようになっている。
なお、以下では、上記のような特別図柄2始動装置45を普通電動役物と称することがある。また、特別図柄2始動装置45には、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
他方、特別図柄1始動口44の右側には、図2に示すように、入賞装置46が配置されている。この入賞装置46は、後述する特別図柄の抽選に当選したとき、すなわち当たり遊技状態の際、開閉扉46aにて閉止されている図示しない大入賞口が開放するように開閉扉46aが特別電動役物ソレノイド46b(図4参照)によって駆動制御され、遊技球が大入賞口(図示せず)に入球可能となる。なお、大入賞口(図示せず)に入球した遊技球は入賞球として大入賞口(図示せず)内部に設けられている大入賞口スイッチ46c(図4参照)によって検出される。
一方、特別図柄の抽選に当選していないとき、すなわち、当たり遊技状態でない場合は、特別電動役物ソレノイド46b(図4参照)によって開閉扉46aが駆動制御され、大入賞口(図示せず)が閉止される。これにより、大入賞口(図示せず)内に遊技球が入球することができなくなる。なお、以下では、このような開閉扉46a及び特別電動役物ソレノイド46bを合せた装置を特別電動役物と称することがある。また、入賞装置46には、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
ところで、入賞装置46内には、従来周知の構造である振分装置47が設けられている。この振分装置47は、図2に示すように、V領域47aと、アウト口47bとを備えており、遊技球が大入賞口(図示せず)に入球されると、その遊技球は、V領域47aか、アウト口47bかに振り分けられるようになっている。なお、振分装置47は、所定の遊技状態とならない限り、大入賞口(図示せず)に入球された遊技球を、V領域47aに振り分けず、アウト口47bに振り分けるようになっている。
他方、液晶表示装置41の右上部には、図2に示すように、ゲートからなる普通図柄始動口48が配置され、その内部には、遊技球の通過を検出する普通図柄始動口スイッチ48a(図4参照)が設けられている。また、上記入賞装置46の右側及び上記特別図柄1始動口44の左側には、一般入賞口49が夫々配置されている。この一般入賞口49は、上記入賞装置46の右側に配置されている右上一般入賞口49aと、上記特別図柄1始動口44の左側に配置されている左上一般入賞口49bと、左中一般入賞口49cと、左下一般入賞口49dとで構成されている。そして、右上一般入賞口49aの内部には遊技球の通過を検出する右上一般入賞口スイッチ49a1(図4参照)が設けられ、左上一般入賞口49bの内部には遊技球の通過を検出する左上一般入賞口スイッチ49b1(図4参照)が設けられ、左中一般入賞口49cの内部には遊技球の通過を検出する左中一般入賞口スイッチ49c1(図4参照)が設けられ、左下一般入賞口49dの内部には遊技球の通過を検出する左下一般入賞口スイッチ49d1(図4参照)が設けられている。なお、一般入賞口49には、光の装飾により演出効果を現出するフルカラーLEDランプ等の装飾ランプが配置されている。
一方、特別図柄1始動口44の真下には、入賞することなく遊技領域40最下流部まで流下してきた遊技球(アウト球)が入球されるアウト口50が配置されている。なお、このアウト口50に入球した遊技球は非入賞球として内部に設けられているアウト口スイッチ50a(図4参照)によって検出され、さらに、上述した入賞球も遊技盤4の背面側を通って最下流部まで流下することとなるため、アウト口スイッチ50a(図4参照)によって検出されることとなる。それゆえ、アウト口スイッチ50a(図4参照)は、排出されたアウト総数、すなわち、発射ハンドル16にて遊技領域40に発射された遊技球と同数の遊技球を検出することとなる。また、発射ハンドル16にて遊技領域40に発射された遊技球をカウントするにあたっては、球誘導レール6から遊技領域40へと進入する箇所にスイッチを設けて、カウントするようにしてもよい。
他方、上記遊技盤4の遊技領域40の右下周縁部には、7セグメントが3個並べて構成されており、そのうち2個の7セグメントが特別図柄表示装置51であり、その他の7セグメント表示装置53aは特別図柄1や特別図柄2、普通図柄の始動保留球数、遊技状態(例えば、有利遊技状態等)を表示するものである。この特別図柄表示装置51は、図2に示すように、特別図柄1表示装置51aと特別図柄2表示装置51bとで構成されており、その特別図柄1表示装置51aの左側には、1個のLEDからなる普通図柄表示装置52が設けられ、さらに、大当たり遊技のラウンド数を報知するラウンドランプ53b、右打ちを報知するための右打ち報知ランプ53cが設けられている。
また、特別図柄1,特別図柄2に対応する識別情報を示す識別ランプ装置51Aが左飾り43b上端部側に設けられている。
この識別ランプ装置51Aは、特別図柄1,特別図柄2が変動中、あるいは、当該特別図柄1,特別図柄2の当たりハズレの情報を遊技者に知らせるための第1,第2識別ランプ51Aa,51Abを有している。この第1識別ランプ51Aaは、特別図柄1に対応しており、第2識別ランプ51Abは、特別図柄2に対応している。そして、特別図柄1が変動中の場合、第1識別ランプ51Aaは点滅し、特別図柄1が当たりの場合、第1識別ランプ51Aaは点灯し、特別図柄1がハズレの場合、第1識別ランプ51Aaは消灯する。そしてさらに、特別図柄2が変動中の場合、第2識別ランプ51Abは点滅し、特別図柄2が当たりの場合、第2識別ランプ51Abは点灯し、特別図柄2がハズレの場合、第2識別ランプ51Abは消灯するというものである。
なお、上記遊技盤4の遊技領域40には、図示はしないが複数の遊技釘が配置され、遊技球の落下方向変換部材としての風車54が配置されている。
<制御装置の説明>
次に、上記のような外観構成からなるパチンコ遊技機1内に設けられる遊技の進行状況に応じて電子制御を行う制御装置を、図4を用いて説明する。この制御装置は、図4に示すように、遊技動作全般の制御を司る主制御基板60と、その主制御基板60からの制御コマンドに基づいて遊技球を払出す払出・発射制御基板70と、画像と光と音についての制御を行うサブ制御基板80とで主に構成されている。
<主制御基板に関する説明>
主制御基板60は、主制御CPU600aと、一連の遊技制御手順を記述した遊技プログラム等を格納した主制御ROM600bと、作業領域やバッファメモリ等として機能する主制御RAM600cとで構成されたワンチップマイクロコンピュータ600と、低確時(当たり抽選確率が通常の低確率状態)に幾らの賞球がされたかの比率等に関する内容の表示(性能表示)、及び、遊技者に有利な遊技状態を発生させる確率の設定内容の表示を兼用する7セグメントからなる計測・設定表示装置610と、RAMクリアスイッチ620と、設定キースイッチ630と、を主に搭載している。
そして、このように構成される主制御基板60には、払出モータMを制御して遊技球を払出す払出・発射制御基板70が接続されている。そしてさらには、特別図柄1始動口44への入賞を検出する特別図柄1始動口スイッチ44aと、特別図柄2始動口45aへの入賞を検出する特別図柄2始動口スイッチ45a1と、普通図柄始動口48の通過を検出する普通図柄始動口スイッチ48aと、一般入賞口49(右上一般入賞口49a,左上一般入賞口49b,左中一般入賞口49c,左下一般入賞口49d)への入賞を検出する右上一般入賞口スイッチ49a1,左上一般入賞口スイッチ49b1,左中一般入賞口スイッチ49c1,左下一般入賞口スイッチ49d1と、開閉扉46aによって開放又は閉止される大入賞口(図示せず)の入賞を検出する大入賞口スイッチ46cと、発射ハンドル16にて遊技領域40に発射された遊技球と同数の遊技球を検出可能なアウト口スイッチ50aとが接続されている。またさらには、開閉部材45b1及び案内部材45c1を駆動制御する普通電動役物ソレノイド45b2と、開閉扉46aの動作を制御する特別電動役物ソレノイド46bと、振分装置47と、特別図柄1表示装置51aと、特別図柄2表示装置51bと、普通図柄表示装置52と、7セグメント表示装置53aと、ラウンドランプ53bと、右打ち報知ランプ53cと、が接続されている。またさらには、遊技者の不正行為を検出する不正検出基板55が接続されている。
このように構成される主制御基板60は、特別図柄1始動口スイッチ44a又は特別図柄2始動口スイッチ45a1あるいは普通図柄始動口スイッチ47aからの信号を主制御CPU600aにて受信すると、抽選を行い、その抽選結果である当否情報に応じて特別図柄の変動パターンや停止図柄あるいは普通図柄の表示内容を決定し、その決定した情報を特別図柄1表示装置51a又は特別図柄2表示装置51bあるいは普通図柄表示装置52に送信する。これにより、特別図柄1表示装置51a又は特別図柄2表示装置51bあるいは普通図柄表示装置52に抽選結果が表示されることとなる。そしてさらに、主制御基板60、すなわち、主制御CPU600aは、その決定した情報を含む演出制御コマンドDI_CMDを生成し、サブ制御基板80に送信する。なお、主制御基板60、すなわち、主制御CPU600aが、特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1、大入賞口スイッチ46cからの信号を受信した場合は、遊技者に幾らの遊技球を払い出すかを決定し、その決定した情報を含む払出制御コマンドPAY_CMDを払出・発射制御基板70に送信することで、払出・発射制御基板70が遊技者に遊技球を払出すこととなる。
また、抽選を行った結果、普通図柄の抽選に当選した場合、所定時間、開閉部材45b1が開放状態、及び、案内部材45c1が案内状態となるように普通電動役物ソレノイド45b2が駆動制御され、特別図柄の抽選に当選した場合、特別電動役物ソレノイド46bが大入賞口(図示せず)を開放するように制御される。
そして、1種2種混合タイプの遊技機では、小当たり遊技状態となった際、開閉扉46aにて大入賞口(図示せず)の開放閉止を繰り返し行うように制御され、遊技球が大入賞口(図示せず)に入球されると、その遊技球がV領域47aに振り分けられるように、振分装置47が制御される。
他方、主制御基板60、すなわち、主制御CPU600aは、特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a1、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1、大入賞口スイッチ46cからの信号を受信する毎に、賞球数を計測し、アウト口スイッチ50aからの信号を受信する毎に、排出された遊技球の総数を計測する。そして、主制御基板60、すなわち、主制御CPU600aは、この計測した賞球数及び排出された遊技球の総数に基づき、低確時に幾らの賞球がされたかの比率等に関する内容(性能表示)を計測・設定表示装置610に出力する。これにより、計測・設定表示装置610に低確時に幾らの賞球がされたかの比率等に関する内容(性能表示)が表示されることとなる。
さらに、計測・設定表示装置610は、遊技者に有利な遊技状態を発生させる確率の設定内容を、例えば、「1」~「6」の6段階で表示することができるようになっている。しかして、このような設定内容を変更するにあたっては、設定キースイッチ630に専用キーを挿入し、ONされると、RAMクリアスイッチ620にて、遊技者に有利な遊技状態を発生させる確率の設定内容を例えば「1」~「6」の6段階で設定変更することができるようになっている(例えば、設定「6」が、遊技者に有利な遊技状態を発生させる確率が最も高く、設定「1」が、遊技者に有利な遊技状態を発生させる確率が最も低くなっている)。そして、その設定変更内容は、計測・設定表示装置610に表示され、設定変更内容が確定すると、7セグメントの右下側にあるドットが点灯し、設定内容が確定したことが表示されるようになっている。
他方、RAMクリアスイッチ620は、設定キースイッチ630に専用キーを挿入し、ONされた場合以外に、RAMクリアスイッチ620が押下されると、主制御RAM600cのメモリ領域は全てクリアされず、一部のメモリ領域のみクリアされるようになっている。
一方、主制御基板60、すなわち、主制御CPU600aは、不正検出基板55に搭載されている磁気センサ、又は、電波センサ、あるいは、振動センサにて遊技者の不正行為を検出した不正行為検知信号を受信すると、不正エラーコマンド(演出制御コマンドDI_CMD)を生成し、サブ制御基板80に送信する。
<払出・発射制御基板に関する説明>
払出・発射制御基板70は、上記主制御基板60(主制御CPU600a)からの払出制御コマンドPAY_CMDを受信し、その受信した払出制御コマンドPAY_CMDに基づいて払出モータ信号を生成する。そして、その生成した払出モータ信号にて、払出モータMを制御し、遊技者に遊技球を払出す。そしてさらに、払出・発射制御基板70は、遊技球の払出動作を示す賞球計数信号や払出動作の異常に係るステータス信号に基づいて、遊技者の操作に応答して遊技球を発射させる動作を開始又は停止させる処理を行う。
一方、図1に示す発射ハンドル16の周縁部には、タッチセンサが設けられており、遊技者の手が発射ハンドル16のタッチセンサに接触すると、タッチセンサは検出信号を、図4に示すように、払出・発射制御基板70に出力する。これを受けて、払出・発射制御基板70は、その検出信号を、主制御基板60(主制御CPU600a)に送信することとなる。そして、主制御基板60(主制御CPU600a)は、その検出信号を、演出制御コマンドDI_CMDとして、サブ制御基板80に送信することとなる。これにより、遊技者がハンドル16に触って遊技したか否かの情報を、サブ制御基板80に送信することが可能となる。
ところで、払出・発射制御基板70は、遊技者への球貸し処理も行っている。すなわち、図1及び図4に示す球貸しボタン11が押下されると、球貸し信号が、パチンコ遊技機1に隣接して配置されているCRユニット(図示省略)に送信される。これを受けて、CRユニットは、球貸し要求信号を払出・発射制御基板70に送信する。そして、払出・発射制御基板70は、この信号を受けて、遊技者に遊技球を払い出し、払い出しが完了すると、球貸し完了信号をCRユニットに送信することとなる。しかして、このようにして、払出・発射制御基板70は、遊技者への球貸し処理を行うこととなる。
<サブ制御基板に関する説明>
サブ制御基板80は、上記主制御基板60(主制御CPU600a)からの演出制御コマンドDI_CMDを受けて各種演出を実行制御すると共に、液晶表示装置41に表示される表示画像を制御するサブ制御CPU800aと、演出制御手順を記述した制御プログラム等が格納されているサブ制御ROM800bと、作業領域やバッファメモリ等として機能するサブ制御RAM800cとで構成されたサブワンチップマイコン800を搭載している。
またさらに、サブ制御基板80は、所望のBGMや効果音等を生成する音LSI801と、作業領域やバッファメモリ等として機能する音RAM802と、サブワンチップマイコン800の指示に基づき液晶表示装置41に表示される画像データを生成するVDP803と、動画圧縮データを伸張する作業領域と、液晶表示装置41に表示される画像データを一時的に保存するフレームバッファ領域とで構成されるDDR2SDRAM804と、静止画圧縮データと動画圧縮データのCGデータと、BGMや効果音等の音データと、が予め格納されている遊技ROM805と、が搭載されている。なお、静止画とは、いわゆるスプライト画像であって、文字等のテキストデータや背景画像、あるいは、特別図柄等、単一の画像を示すものである。また、動画とは、連続的に変化する複数枚(複数フレーム分)の静止画の集合を意味し、液晶表示装置41に複数枚の静止画が連続して描画されることで、円滑な動作が再現されるものである。
このように構成されるサブ制御基板80には、ランプ演出効果を現出するフルカラーLEDランプ等の装飾ランプが搭載されている装飾ランプ基板90が接続され、さらに、内蔵されているランプ(図示せず)点灯時に遊技者が押下することにより演出効果を変化させることができる押しボタン式の演出ボタン装置13が接続され、BGMや効果音等を発するスピーカ17が接続されている。そしてさらに、サブ制御基板80には、遊技の進行に伴い所定の演出動作を行う可動役物装置43が接続され、特別図柄1,特別図柄2が変動中、あるいは、当該特別図柄1,特別図柄2の当たりハズレの情報を遊技者に知らせるための識別ランプ装置51Aが接続され、各種設定が可能な設定ボタン15が接続され、液晶表示装置41が接続されている。
かくして、このように構成されるサブ制御基板80は、主制御基板60(主制御CPU600a)より送信される抽選結果に基づく特別図柄変動パターン、現在の遊技状態、始動保留球数、抽選結果に基づき停止させる装飾図柄等に必要となる基本情報を含んだ演出制御コマンドDI_CMDをサブ制御CPU800aにて受信する。そして、サブ制御CPU800aは、受信した演出制御コマンドDI_CMDに対応した演出パターンを、サブ制御ROM800b内に予め格納しておいた多数の演出パターンの中から抽選により決定し、その決定した演出パターンを実行指示する制御信号をサブ制御RAM800c内に一時的に格納する。
サブ制御CPU800aは、サブ制御RAM800cに格納しておいた演出パターンを実行指示する制御信号のうち、音に関する制御信号を音LSI801に送信する。これを受けて音LSI801は、当該制御信号に対応する音データを遊技ROM805又は音RAM802より読み出し、スピーカ17に出力する。これにより、スピーカ17より上記決定された演出パターンに対応したBGMや効果音が発せられることとなる。
またサブ制御CPU800aは、サブ制御RAM800cに格納しておいた演出パターンを実行指示する制御信号のうち、光に関する制御信号を装飾ランプ基板90に送信する。これにより、装飾ランプ基板90が、ランプ演出効果を現出するフルカラーLEDランプ等の装飾ランプを点灯又は消灯する制御を行うため、上記決定された演出パターンに対応したランプ演出が実行されることとなる。
そしてサブ制御CPU800aは、サブ制御RAM800cに格納しておいた演出パターンを実行指示する制御信号のうち、画像に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像データを生成し、その生成した画像データを液晶表示装置41に送信することにより、上記決定された演出パターンに対応した画像が液晶表示装置41に表示されることとなる。なお、液晶表示装置41に表示される画像データは1フレーム毎に更新されるが、この1フレームの表示動作が終わったことをサブワンチップマイコン800(サブ制御CPU800a)が把握できるように、図4に示すVSYNC(垂直同期信号)を割込み信号としてVDP803からサブ制御CPU800aに対して送信するようにしている。これにより、サブ制御CPU800aは、1フレーム分の画像データが液晶表示装置41に表示されたことを把握することができる。なお、このVSYNC割込み信号は、例えば、33ms毎に発生するようにしている。
さらにサブ制御CPU800aは、サブ制御RAM800cに格納しておいた演出パターンを実行指示する制御信号のうち、可動役物に関する制御信号を可動役物装置43に送信する。これにより、可動役物装置43は、上記決定された演出パターンに対応した可動をすることとなる。
<電源基板の説明>
ところで、上記説明した各基板への電源供給は、図4に示す電源基板130より供給されている。この電源基板130は、電圧生成部1300と、電圧監視部1310と、システムリセット生成部1320とを含んで構成されている。この電圧生成部1300は、遊技店に設置された図示しない変圧トランスから供給される外部電源である交流電圧AC24Vを受けて複数種類の直流電圧を生成するもので、その生成された直流電圧は、図示はしないが各基板に供給されている。
また、電圧監視部1310は、上記交流電圧AC24Vの電圧を監視するもので、この電圧が遮断されたり、停電が発生したりして電圧異常を検出した場合に電圧異常信号ALARMを主制御基板60に出力するものである。なお、電圧異常信号ALARMは、電圧異常時には「L」レベルの信号を出力し、正常時には「H」レベルの信号を出力する。
また、一方、システムリセット生成部1320は、電源投入時のシステムリセット信号RSTを生成するもので、その生成されたシステムリセット信号RSTは、各基板に出力されている。
<抑制装置(セービング機能)の説明>
ところで、上記のようなパチンコ遊技機1は、遊技者が一定量の賞球数を獲得すると、遊技を停止するという抑制装置(セービング機能)が搭載されている。以下、この抑制装置(セービング機能)について説明することとする。
<抑制装置(セービング機能)の概要説明>
抑制装置(セービング機能)は、差球が95000発を超えると遊技を停止させるものである。差球とは、「遊技者に払い出された遊技球数」-「遊技者が発射ハンドル16を用いて遊技領域40に発射した遊技球数」=「遊技者が実際に獲得した賞球数」である。この差球は、主制御CPU600aが差球カウンタを用いてカウントするようになっており、この差球カウンタは、電源投入時に10万発に設定(クリア)され、遊技者が発射ハンドル16を用いて遊技領域40に遊技球を発射させる毎に、1減算(-1)され、図2に示す特別図柄1始動口44、特別図柄2始動口45a、右上一般入賞口49a、左上一般入賞口49b、左中一般入賞口49c、左下一般入賞口49d、大入賞口(図示せず)に遊技球が入球する毎に、賞球数が加算(+)されるようになっている。それゆえ、遊技球を発射させる毎に、1減算(-1)されることから、差球カウンタは、10万発の状態から遊技が開始されることとなる。なお、抑制装置(セービング機能)が発動することなく、その日のホール(遊技場)の営業が終了した場合、翌日に、ホール(遊技場)の従業員等がパチンコ遊技機1の電源をON/OFFすることで、差球カウンタに、10万発が設定(クリア)されることとなる。
かくして、このような差球カウンタを用いてカウントした結果、差球が、95000発を超えた場合(差球カウンタ>195000となった場合)、遊技停止状態となる。この遊技停止状態は、RAMクリアスイッチ620(図4参照)を押下し、主制御RAM600cをクリアすることによって、解除されることとなる。なお、RAMクリアスイッチ620を押下せず、主制御RAM600cをクリアしないまま、パチンコ遊技機1を電断復帰させた場合、遊技停止状態のままとなる。
ところで、差球が、95000発を超えた時が、通常遊技状態の時と、大当たり遊技状態の時とで、遊技を停止させるまでの過程が異なっている。すなわち、通常遊技中(大当たりしてない図柄変動が可能な状態。確率変動状態や時短中の図柄変動中も含む)は、差球が95000発を超えた時点で、直ちに、遊技を停止させるようにする。
一方、大当たり遊技中であれば、その大当たり遊技が終了した時点で、遊技を停止させるようにする。
<抑制装置(セービング機能)の制御の説明>
次に、抑制装置(セービング機能)の制御について説明することとする。
この抑制装置(セービング機能)の制御は、抑制装置(セービング機能)が作動するまでの差球の状態に応じて段階を設けて、それぞれの状態に変化した時に、主制御基板60(主制御CPU600a)は、サブ制御基板80へ演出制御コマンドDI_CMDを送信し、サブ制御基板80に対して状態を報知することとなる。具体的には、以下、基本4つの状態を報知することとなる。
(1)抑制装置(セービング機能)未作動状態の場合
この状態は、遊技停止まで余裕がある状態を示し、遊技停止まで、あとどれくらいかは遊技者に把握不能となっている。
(2)抑制装置(セービング機能)作動予告状態の場合
この状態は、差球が90000発を超えて、遊技停止となるまで残り5000発を切った状態である。この際、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を送信することとなる。
ところで、上記(1)と(2)の状態は行ったり来たりする。そのため、上記(1)から(2)の状態へと移行する毎に、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を送信することとなる。
一方、上記(2)の状態から、差球が減って、上記(1)の状態に移行する際、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置未作動状態コマンド(演出制御コマンドDI_CMD)を送信することとなる。
ところで、主制御基板60(主制御CPU600a)は、差球が1個でも変化して上記(1)から(2)の状態を行ったり来たりした場合であっても、その状態に応じて、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)、又は、抑制装置未作動状態コマンド(演出制御コマンドDI_CMD)を送信することとなる。そのため、サブ制御基板80(サブ制御CPU800a)は、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を受信してから所定期間以内に、抑制装置未作動状態コマンド(演出制御コマンドDI_CMD)、又は、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を受信しても、コマンドに応じた報知(又は、報知の消去)を行わないようにする。
(3)抑制装置(セービング機能)作動警告状態の場合
この状態は、差球95000発を超えて、遊技停止状態前となる状態である。大当たり中などの遊技者が利益を得られる状態にいる場合、直ちに遊技停止とせずに、大当たり中などの遊技者が利益を得られる状態が終了してから、遊技停止とする。そのため、この状態に移行すると、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信することとなる。
なお、上記(2)から(3)への移行は一方通行で、(3)の状態から上記(2)又は(1)の状態に移行することはない。
(4)抑制装置(セービング機能)作動状態の場合
この状態は、差球95000発を超えて、遊技停止状態中である。大当たり中以外の変動中または変動停止中において発射された遊技球が入賞口(図2に示す特別図柄1始動口44、特別図柄2始動口45a、右上一般入賞口49a、左上一般入賞口49b、左中一般入賞口49c、左下一般入賞口49d、大入賞口(図示せず))に入賞した際に発生した賞球によって、差球95000発を超えたことで遊技が停止された状態、又は、大当たり中などの遊技者が利益を得られる状態が終了して、上記(3)の状態から移行して遊技が停止された状態を示している。そのため、この状態に移行すると、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。
なお、変動中に、差球95000発を超えた場合、上記(2)の状態から上記(3)の状態を経由することなく、(4)の状態へ移行することとなる。
<抑制装置(セービング機能)の作動までのイメージの説明>
次に、抑制装置(セービング機能)の作動までのイメージを説明することとする。図5は、変動中に、差球90000発を超えて、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)が送信された場合を示している。
まず、図5(a)に示すように、液晶表示装置41には、装飾図柄が停止し(画像P1参照、図示では「767」)、さらに、常駐図柄が停止し(画像P2参照、図示では「767」)たものが表示される。
次いで、図5(b)に示す液晶表示装置41には、装飾図柄が高速変動し(画像P1参照)、さらに、常駐図柄が高速変動(画像P2参照)したものが表示される。この際、遊技者が賞球を得て、差球90000発を超えた場合、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、抑制装置作動予告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図5(c)に示すように、セービング機能作動まで残り約5000発ですという表示(画像P3参照)がされることとなる。
次いで、装飾図柄の変動が停止し、さらに、常駐図柄の変動が停止すると、図5(d)に示すように、液晶表示装置41には、装飾図柄の停止図柄(画像P1参照、図示では「567」)が表示され、常駐図柄の停止図柄(画像P2参照、図示では「567」)が表示される。そしてこの際、液晶表示装置41には、装飾図柄の変動が停止し、さらに、常駐図柄の変動が停止したとしても、上記(2)抑制装置(セービング機能)作動予告状態の場合であれば、セービング機能作動まで残り約5000発ですという表示(画像P3参照)が継続されることとなる。なお、この際、セービング機能作動まで残り約5000発ですという表示(画像P3参照)は、装飾図柄の背面側に表示されるか、又は、装飾図柄と画像P3の文字が重ならないように表示される。なお、この際、音声による案内を並行して行ってもよく、変動演出や予告演出による音演出と同時に報知するようにしてもよい。
次いで、装飾図柄の変動が開始し、さらに、常駐図柄の変動が開始すると、図5(e)に示すように、液晶表示装置41には、装飾図柄が高速変動し(画像P1参照)、さらに、常駐図柄が高速変動(画像P2参照)したものが表示される。この際、液晶表示装置41には、上記(2)抑制装置(セービング機能)作動予告状態の場合であれば、セービング機能作動まで残り約5000発ですという表示(画像P3参照)が継続されることとなる。なお、上述した通り、上記(1)から(2)の状態を行ったり来たりした場合に対応できるように、サブ制御基板80(サブ制御CPU800a)は、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を受信してから所定期間以内に、抑制装置未作動状態コマンド(演出制御コマンドDI_CMD)、又は、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を受信しても、セービング機能作動まで残り約5000発ですという表示(画像P3参照)の消去、又は、表示を行わないようにする。なお、セービング機能作動まで残り約5000発ですという表示(画像P3参照)を消去、又は、表示を行わないようにするのではなく、セービング機能作動まで残り約5000発ですという表示の大きさを小さくしたり、表示位置を変えたりしてもよい。具体的には、遊技中の遊技者には所定期間通知すればセービング機能が作動する可能性があることは十分に伝わるため、所定期間経過後は遊技の妨げにならない程度に小さくする、または表示位置を液晶表示装置41の隅にするなどしてもよい。さらに、小さくする、又は表示位置を変えた後で、遊技者が遊技を終えて変動停止状態を経由して客待ち状態となった場合に、セービング機能作動まで残り約5000発ですという表示を元の大きさに戻す、又は客待ちデモ中用の表示にしてもよい。これは、次に遊技する遊技者が、セービング機能作動まで残り約5000発であることを見落とさないようにするためである。
図6は、変動中に、差球95000発を超えて、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)が送信された場合を示している。なお、図6では、差球が95000発に近づくにつれ、液晶表示装置41に表示される表示内容を変更する場合を想定している。すなわち、差球が、91000発、92000発、93000発、94000発と増えるごとに、それに応じて、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド2(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド3(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド4(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド5(演出制御コマンドDI_CMD)が送信されることを想定している。
図6(a)に示すように、液晶表示装置41には、装飾図柄が停止し(画像P1参照、図示では「567」)、さらに、常駐図柄が停止し(画像P2参照、図示では「567」)たものが表示されている。この際、差球94000発を超え、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド5(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、抑制装置作動予告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図6(a)に示すように、まもなくセービング機能が作動しますという表示(画像P4参照)がされることとなる。
次いで、装飾図柄の変動が開始し、さらに、常駐図柄の変動が開始すると、図6(b)に示すように、液晶表示装置41には、装飾図柄が高速変動し(画像P1参照)、さらに、常駐図柄が高速変動(画像P2参照)したものが表示される。そしてさらに、まもなくセービング機能が作動しますという表示(画像P4参照)も継続して表示されることとなる。この際、遊技者が賞球を得て、差球95000発を超えた場合、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図6(c)に示すように、[遊技停止中]セービング達成しました。打ち止めです[遊技停止中]という表示(画像P5参照)がされることとなる。
ところで、このように変動中に遊技が停止した場合、遊技者に抽選結果を報知することなく遊技を停止する。さらに言えば、装飾図柄の変動を停止させるような図柄変動演出も一切行わず、特別図柄表示装置51,普通図柄表示装置52,7セグメント表示装置53aへ信号を出力する主制御CPU600aの出力ポートもクリアされることから、特別図柄表示装置51,普通図柄表示装置52,7セグメント表示装置53aは消灯し、もって、始動保留球数の表示も非表示となる。これは、実行中の図柄変動が大当たりであった場合、そのことを報知してしまうと遊技者は不利益を感じ、さらには、ホール(遊技場)側とのトラブルの原因になる恐れがあるためである。
図7は、大当たり中に、差球95000発を超えて、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)が送信された場合を示している。
図7(a)に示すように、液晶表示装置41の画面中央には、大当たり遊技状態となることを示す「大当たり!」(画像P6参照)という文字が表示され、画面右下端に小さく、遊技者に右打ち(遊技者が発射ハンドル16を用いて遊技盤4の遊技領域40の右側に遊技球を打つこと)を促す「右打ち」(画像P7参照)という文字が表示される。そしてこの際、液晶表示装置41の画面上部に、まもなくセービング機能が作動しますという表示(画像P8参照)がされている。
次いで、大当たり遊技が開始されると、図7(b)に示すように、「大当たり!」(画像P6参照)という文字に代え、液晶表示装置41には、「やったね!」というセリフを言っているキャラクタが表示(画像P9参照)されると共に、液晶表示装置41の画面左上隅には、大当たり遊技のラウンドを示す「Round1」(画像P10参照)という表示がされる。この際、遊技者が賞球を得て、差球95000発を超えた場合、主制御基板60(主制御CPU600a)は、遊技状態が大当たり遊技中であることから、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、抑制装置作動の警告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図7(c)に示すように、当たり終了後にセービング機能が作動しますという表示(画像P11参照)がされることとなる。なお、この際、遊技者にセービング機能が作動することを認識させるため、ラウンド中の演出表示よりも表示の優先度が高くなるように、当たり終了後にセービング機能が作動しますという表示(画像P11参照)がなされている。
しかして、このような当たり終了後にセービング機能が作動しますという表示(画像P11参照)がされた状態のまま、大当たり遊技が進行する。そして、図7(d)に示すように、液晶表示装置41に、大当たり遊技が終了し、大当たり遊技後の特別遊技状態になることを示す「RUSH突入!」というセリフを言っているキャラクタが表示(画像P9参照)されると、大当たり遊技が終了したため、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図7(e)に示すように、[遊技停止中]セービング達成しました。打ち止めです[遊技停止中]という表示(画像P12参照)がされることとなる。
ところで、上記説明した抑制装置(セービング機能)を作動させるにあたって、図7(d)に示す「RUSH突入!」というセリフを言っているキャラクタが表示(画像P9参照)されているにも関わらず、遊技を停止してしまうと、遊技者は得られるはずの利益を得ることができないため、遊技の興趣を低下させるばかりか、トラブルの原因ともなる。そこで、本実施形態においては、以下のような処理を行っている。
<抑制装置(セービング機能)が作動して遊技を停止させる場合に合わせて、大当たり中の演出を変更する場合の説明>
まず、従来について説明する。
主制御基板60(主制御CPU600a)の先読み判定は、抑制装置(セービング機能)が作動する直前まで機械的に処理され、先読み判定結果に基づいた先読みコマンド(演出制御コマンドDI_CMD)がサブ制御基板80へ送信される。これを受けて、サブ制御CPU800aは、先読みコマンドに応じて、変動中又は大当たり中に先読み演出を実行することとなる。
しかしながら、実際に先読み演出を行う場合は、抑制装置(セービング機能)が作動して遊技を停止させる場合があることを想定して先読み演出を実行するか否かを判断しなければ、先読み演出を実行して遊技者に期待感を持たせたにも関わらず、その先読み演出によって導出される結果を見る前に、遊技を停止する可能性がある。また、確率変動やRUSH状態などの大当たり後の特別遊技状態への昇格演出を、サブ制御CPU800aが大当たり中に実行した場合も、大当たり遊技後に遊技を停止する可能性がある。この点、具体例を用いて説明する。
図8(a)に示すように、液晶表示装置41の画面中央には、大当たり遊技状態となることを示す「大当たり!」(画像P20参照)という文字が表示され、画面右下端に小さく、遊技者に右打ち(遊技者が発射ハンドル16を用いて遊技盤4の遊技領域40の右側に遊技球を打つこと)を促す「右打ち」(画像P21参照)という文字が表示される。そしてこの際、液晶表示装置41の画面上部に、まもなくセービング機能が作動しますという表示(画像P22参照)がされている。
次いで、ラウンド遊技中に昇格チャレンジ演出が実行されると、図8(b)に示すように、「大当たり!」(画像P20参照)という文字に代え、液晶表示装置41には、「RUSH昇格チャレンジ」というセリフを言っているキャラクタが表示(画像P23参照)されると共に、「?」と書いた四角のボックス画像が表示(画像P24参照)され、液晶表示装置41の画面左上隅には、大当たり遊技のラウンドを示す「Round1」(画像P10参照)という表示がされる。なお、大当たり遊技のラウンド中にこのような昇格演出を行うか否かは、サブ制御CPU800aが、主制御基板60(主制御CPU600a)から送信されてきた大当たりとなった変動開始時の変動パターンコマンド(演出制御コマンドDI_CMD)を受信した際、又は、主制御基板60(主制御CPU600a)から送信されてきた大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)を受信した際に、大当たり遊技のラウンド中にこのような昇格演出を行うか否かの抽選が行われ決定されることとなる。
次いで、図8(c)に示すように、RUSH昇格に当選し、液晶表示装置41に「RUSHゲット!」という表示(画像P26参照)がされたとしても、この際、遊技者が賞球を得て、差球95000発を超えた場合、主制御基板60(主制御CPU600a)は、遊技状態が大当たり遊技中であることから、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、抑制装置作動の警告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図8(c)に示すように、当たり終了後にセービング機能が作動しますという表示(画像P27参照)がされることとなる。なお、この際、遊技者にセービング機能が作動することを認識させるため、ラウンド中の演出表示よりも表示の優先度が高くなるように、当たり終了後にセービング機能が作動しますという表示(画像P27参照)がなされている。
しかして、このような当たり終了後にセービング機能が作動しますという表示(画像P27参照)がされた状態のまま、大当たり遊技が進行する。そして、図8(d)に示すように、液晶表示装置41に、大当たり遊技が終了し、RUSH昇格に当選したことにより、大当たり遊技後の特別遊技状態になることを示す「RUSH突入!」というセリフを言っているキャラクタが表示(画像P23参照)されたとしても、大当たり遊技が終了したため、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図8(e)に示すように、[遊技停止中]セービング達成しました。打ち止めです[遊技停止中]という表示(画像P28参照)がされることとなる。
しかしながら、これでは、遊技者は、得られるはずの利益を得ることができないため、遊技者の遊技の興趣を低下させるばかりか、トラブルの原因ともなる。これは、大当たり中の保留連演出(現在の始動保留球の中に大当たりが含まれていることを報知する演出)についても同様である。なお、この保留連演出を行うか否かは、昇格演出と同様、サブ制御CPU800aが、主制御基板60(主制御CPU600a)から送信されてきた大当たりとなった変動開始時の変動パターンコマンド(演出制御コマンドDI_CMD)を受信した際、又は、主制御基板60(主制御CPU600a)から送信されてきた大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)を受信した際に、抽選し決定することとなる。
そこで、本実施形態においては、サブ制御CPU800aが、先読みコマンド(演出制御コマンドDI_CMD)を受信した場合、その前後で、抑制装置作動コマンド、抑制装置作動警告コマンドなどの遊技停止が近づいている、又は、遊技停止コマンドを受信している場合などに、状態に応じて先読み演出や昇格演出を制限、又は、中止するようにする。これにより、従来のように、得られるはずの利益を遊技者に報知するにも関わらず、得られなかったことによる遊技者の遊技の興趣の低下や、トラブルの原因を無くすことができ、もって、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
この点、具体例を用いて説明すると、サブ制御CPU800aは、主制御基板60(主制御CPU600a)から送信されてきた大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)を受信した際、既に受信している抑制装置作動予告コマンドの内容を確認する。なお、本実施形態においては、差球が、91000発、92000発、93000発、94000発と増えるごとに、それに応じて、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、抑制装置作動予告コマンド2(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド3(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド4(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド5(演出制御コマンドDI_CMD)が送信されることを想定している。ここでは、残り1000発を示す抑制装置作動予告コマンド5を受信した状態を例にして説明することにする。
サブ制御CPU800aは、受信した大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)が、1000発以上の賞球を得られる大当たりか否かを確認する。ここでは、10R大当たり(1300発の差球が増加する可能性がある大当たり)、又は、4R大当たり(400発の差球が増加する可能性がある大当たり)の2種類の大当たりがあることとし、サブ制御CPU800aは、受信した大当たり開始ファンファーレコマンドが、10R大当たりなのか、4R大当たりなのかを確認することとなる。
ところで、この際、液晶表示装置41には、図9(a)に示すように、画面中央には、大当たり遊技状態となることを示す「大当たり!」(画像P30参照)という文字が表示され、画面右下端に小さく、遊技者に右打ち(遊技者が発射ハンドル16を用いて遊技盤4の遊技領域40の右側に遊技球を打つこと)を促す「右打ち」(画像P31参照)という文字が表示され、画面上部に、まもなくセービング機能が作動しますという表示(画像P32参照)がされている。
次いで、サブ制御CPU800aは、10R大当たりであることを確認すると、大当たり中に抑制装置(セービング機能)が作動するおそれがあることから、主制御基板60(主制御CPU600a)から送信されてきた、大当たりとなった変動開始時の変動パターンコマンド受信時、又は、大当たり開始ファンファーレコマンドを受信して、10R大当たりであることが確認された時に、大当たり中の昇格演出、又は、保留連演出を実行しない、又は、抽選を行わないようにする。これにより、サブ制御CPU800aは、大当たりラウンド中は、通常の演出を行うこととなる。具体的には、図9(b)に示すように、液晶表示装置41に、「大当たり!」(画像P30参照)という文字に代え、「やったね!」というセリフを言っているキャラクタが表示(画像P33参照)されると共に、液晶表示装置41の画面左上隅には、大当たり遊技のラウンドを示す「Round1」(画像P34参照)という表示がされる。すなわち、通常のラウンド演出を実行することで、いつ抑制装置(セービング機能)が作動しても良い状態にしておく。
次いで、遊技者が賞球を得て、差球95000発を超えた場合、主制御基板60(主制御CPU600a)は、遊技状態が大当たり遊技中であることから、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、抑制装置作動の警告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図9(c)に示すように、当たり終了後にセービング機能が作動しますという表示(画像P35参照)がされることとなる。なお、この際、遊技者にセービング機能が作動することを認識させるため、ラウンド中の演出表示よりも表示の優先度が高くなるように、当たり終了後にセービング機能が作動しますという表示(画像P35参照)がなされている。
ところで、このラウンド演出は、抑制装置(セービング機能)作動に対応したラウンド演出を行うこととなる。例えば、図9(c)に示すように、液晶表示装置41に「お見事!」というセリフを言っているキャラクタが表示(画像P33参照)されることとなる。
次いで、サブ制御CPU800aは、主制御基板60(主制御CPU600a)から送信されてきた大当たり終了エンディングコマンド(演出制御コマンドDI_CMD)を受信すると、大当たり後に遊技停止することに合わせた演出を行うこととなる。例えば、図9(d)に示すように、液晶表示装置41に「Congratulation」という文字が表示(画像P36参照)されることとなる。しかして、このようにすれば、遊技者は、全ての利益を獲得したという満足感が得られ、もって、遊技者の遊技の興趣を向上させることができる。
次いで、大当たり遊技が終了したため、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図9(e)に示すように、[遊技停止中]セービング達成しました。打ち止めです[遊技停止中]という表示(画像P37参照)がされることとなる。
しかして、このように、大当たり中の昇格演出、又は、保留連演出を実行しないようにすれば、得られるはずの利益を遊技者に報知していないため、得られなかったことによる遊技者の遊技の興趣の低下や、トラブルの原因を無くすことができる。それゆえ、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
一方、サブ制御CPU800aが、4R大当たりであることを確認した場合、従来同様、主制御基板60(主制御CPU600a)から送信されてきた大当たりとなった変動開始時の変動パターンコマンド(演出制御コマンドDI_CMD)を受信した際、又は、主制御基板60(主制御CPU600a)から送信されてきた大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)を受信した際に、大当たり遊技のラウンド中に昇格演出又は保留連演出を行うか否かの抽選を行うようにする。これは、400発の差球が増加しても、まだ抑制装置(セービング機能)は作動しないため、昇格演出又は保留連演出を実行しても問題ないためである。
しかしながら、サブ制御CPU800aが、抑制装置作動予告コマンド5を受信してから、差球が増加している可能性もある。そこで、このような場合を考慮して、主制御基板60(主制御CPU600a)からサブ制御CPU800aへ、アウト球数と賞球予定数コマンド(演出制御コマンドDI_CMD)を送信するようにしても良い。このようにすれば、サブ制御CPU800aは、詳細な差球数を管理することができるため、4R大当たりの場合であっても、抑制装置(セービング機能)が作動するか否かを判断することが可能となる。それゆえ、適切な演出を実行することができる。
<抑制装置(セービング機能)が作動して遊技停止した際の遊技球の払出処理の説明>
ところで、上記説明している差球は、主制御CPU600aにて、図2に示す特別図柄1始動口44、特別図柄2始動口45a、右上一般入賞口49a、左上一般入賞口49b、左中一般入賞口49c、左下一般入賞口49d、大入賞口(図示せず)への遊技球の入球でカウントしている賞球数を元にしている。そのため、実際に払い出された遊技球の数ではない。そのため、抑制装置(セービング機能)が作動して遊技停止した際、実際の遊技球の払出処理が追い付いていない可能性がある。
そこで、本実施形態においては、遊技停止状態となっても、主制御基板60(主制御CPU600a)と払出・発射制御基板70との遊技球の払出に関する払出制御コマンドPAY_CMDの通信は継続して行うようにする。すなわち、遊技停止するのは、主制御基板60(主制御CPU600a)のみで、払出・発射制御基板70は、主制御基板60(主制御CPU600a)からの払出制御コマンドPAY_CMDを受けて動作するのみなので、払出・発射制御基板70自体を遊技停止状態にする必要はない。そのため、遊技停止状態となっても、主制御基板60(主制御CPU600a)と払出・発射制御基板70との遊技球の払出に関する払出制御コマンドPAY_CMDの通信は継続して行うようにしておく。
この点、より詳しく説明すると、主制御基板60(主制御CPU600a)とサブ制御基板80(サブ制御CPU800a)とは、遊技停止時に、主制御基板60(主制御CPU600a)からサブ制御基板80(サブ制御CPU800a)へ遊技停止コマンド(演出制御コマンドDI_CMD)を送信すると、それ以降は、主制御基板60(主制御CPU600a)からサブ制御基板80(サブ制御CPU800a)へ演出制御コマンドDI_CMDを送信することはない。そして、遊技停止状態で、パチンコ遊技機1の電源を遮断し、RAMクリアスイッチ620を押下せず、主制御RAM600cをクリアしないまま、パチンコ遊技機1を電断復帰させた場合、遊技停止状態のままとなる。その場合でも、まだ払出しが完了していない賞球に関する払出処理が行われるように、主制御基板60(主制御CPU600a)から払出・発射制御基板70へ払出制御コマンドPAY_CMDを送信するようにする。これにより、払出・発射制御基板70は、まだ払出しが完了していない賞球に関する遊技球の払出しを実行することとなる。
しかして、このようにすれば、遊技停止によって、本来払い出されるはずの遊技球が払い出されないという事態を無くすることができるため、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
<抑制装置(セービング機能)が作動するまでの差球の状態に応じて段階を設けていることの説明>
ところで、上記説明したように、(1)抑制装置(セービング機能)未作動状態の場合、(2)抑制装置(セービング機能)作動予告状態の場合、(3)抑制装置(セービング機能)作動警告状態の場合、(4)抑制装置(セービング機能)作動状態の場合と、抑制装置(セービング機能)が作動するまでの差球の状態に応じて段階を分けている。これは、差球95000発を超えたからといって、大当たり遊技中に、いきなり遊技停止させてしまうと、遊技者は不利益を被った感じが強くなり、もって、遊技の興趣を低下させてしまう恐れがあるためである。そこで、本実施形態においては、差球95000発を超えた際の遊技状態が、図柄の変動中であるか、大当たり中であるかによって、遊技停止へと至る状態の変化を異ならしめている。これにより、遊技の興趣を低下させてしまう恐れを低減させることができ、もって、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
ところで、本実施形態においては、大当たり遊技中に、差球95000発を超えたとしても、直ちに遊技停止していないため、遊技停止前に、パチンコ遊技機1の電源が何らかの要因で遮断されてしまった際、パチンコ遊技機1を電断復帰させた場合、上記説明したように、差球カウンタが初期化(10万発が設定(クリア))されることとなるから、大当たり遊技が終了しても、遊技停止しないこととなる。そこで、本実施形態においては、このような事態を避けるべく、遊技停止前に、パチンコ遊技機1の電源が何らかの要因で遮断されてしまった際、パチンコ遊技機1を電断復帰させた場合においては、差球カウンタを初期化しないようにする。しかして、このようにすれば、本来遊技停止するものであるにも関わらず、遊技停止しないという事態が無いようにすることができる。
<不正エラーが発生した場合の抑制装置(セービング機能)との関連性についての説明>
ところで、不正検出基板55に搭載されている磁気センサ、又は、電波センサ、あるいは、振動センサにて遊技者の不正行為を検出した場合、遊技停止せずに優先度の高いエラー報知を行う場合と、遊技停止する場合がある。
まず、不正検出基板55に搭載されている磁気センサ、又は、電波センサ、あるいは、振動センサにて遊技者の不正行為を検出した場合、遊技停止せずに不正エラー報知を行う場合について説明する。
不正検出基板55にて遊技者の不正行為を検出した場合、主制御CPU600aは、不正エラーコマンド(演出制御コマンドDI_CMD)をサブ制御基板80(サブ制御CPU800a)に送信する。これを受けて、サブ制御CPU800aは、不正エラーを液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、不正エラーの内容が表示されることとなる。さらに、サブ制御CPU800aは、音声による不正エラーを行うべく、音LSI801に音声による不正エラーを報知するような信号を送信する。これを受けて音LSI801は、スピーカ17から、音声による不正エラーが発せられるように音声を再生することとなる。
一方、差球95000発を超えた場合、主制御基板60(主制御CPU600a)は、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信することとなる。これを受けて、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図6(c),図7(e),図8(e),図9(e)に示すような表示がされることとなる。さらに、サブ制御CPU800aは、音声による遊技停止報知を行うべく、音LSI801に音声による遊技停止報知するような信号を送信する。これを受けて音LSI801は、スピーカ17から、音声による遊技停止が発せられるように音声を再生することとなる。
ところで、不正検出基板55にて遊技者の不正行為を検出した場合と、差球95000発を超えたことによる遊技停止とが複合した場合、どちらも必要な情報のため、報知する必要がある。しかしながら、一方は不正によるエラー報知のため、抑制装置(セービング機能)が作動し遊技停止状態の報知をする一方で、ホール(遊技場)側が遊技停止前に、遊技者による不正行為が行われていた事に気づくように、不正によるエラー報知を行う必要がある。
そこで、本実施形態においては、抑制装置(セービング機能)が作動して、サブ制御CPU800aが遊技停止コマンド(演出制御コマンドDI_CMD)を受信したとしても、サブ制御CPU800aは、不正によるエラー報知が、液晶表示装置41に、図6(c),図7(e),図8(e),図9(e)に示すような表示と共に表示されるようにし、スピーカ17から発せられる音声は、不正によるエラー報知を優先して行うようにする。また、右打ち警告報知や左打ち警告報知などの発射位置警告報知などの不正エラーと比較して緊急度が低いエラーは、遊技停止時に、消去するようにする。この点、詳しく説明すると、これらエラーは、通常遊技状態では、主制御基板60(主制御CPU600a)における後述するタイマ割込み処理のエラー管理処理で、エラー発生/解除に応じた演出制御コマンドDI_CMDが、サブ制御基板80(サブ制御CPU800a)へ送信されることとなる。また、この際、遊技停止時には、緊急度が低いエラーは消去されることとなる。そこで、本実施形態においては、サブ制御基板80(サブ制御CPU800a)にて、遊技停止コマンドを受信したことを契機、又は、遊技停止コマンドと一緒に送信されるエラー消去コマンドを受信したことを契機として、緊急度が低いエラーを消去することとなる。
ところで、賞球に関する球詰まりエラーやパチンコ遊技機1内の遊技球が不足した補給切れエラーなどは、上記説明したように、遊技停止状態となったとしても、まだ払出しが完了していない賞球に関する払出処理が行なわれる場合があるため、遊技者が獲得した賞球に関するエラーについては、サブ制御CPU800aは、遊技停止報知よりも優先して行うようにする。ただし、この場合、遊技停止状態となったとしても、タイマ割込み処理のエラー管理処理は実行されるため、エラー発生に応じた演出制御コマンドDI_CMDが、サブ制御基板80(サブ制御CPU800a)へ送信されることとなる。しかしながら、この際、上記説明したように、緊急度が低いエラーについては、サブ制御基板80(サブ制御CPU800a)にて消去される(エラー報知が行われない)こととなる。なお、不正エラー報知は、サブ制御CPU800a側で行っているため、パチンコ遊技機1を電断復帰させた際、消去されることとなる。
しかして、このようにすれば、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
次に、不正検出基板55に搭載されている磁気センサ、又は、電波センサ、あるいは、振動センサにて遊技者の不正行為を検出した場合、遊技停止を行う場合について説明する。
不正エラーによって、遊技を停止する場合は、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグとは別の不正遊技停止フラグに基づいて遊技停止される。なお、この不正エラーは、パチンコ遊技機1を電断復帰させたことによって、主制御基板60(主制御CPU600a)の遊技停止状態が解消されることとなる。この場合、抑制装置(セービング機能)作動による電断復帰とは異なり、RAMクリアスイッチ620を押下せず、主制御RAM600cをクリアしないまま、パチンコ遊技機1を電断復帰させたとしても、遊技停止状態は解消されることとなる。
ところで、パチンコ遊技機1を電断復帰させた場合、上記説明したように、差球カウンタが初期化(10万発が設定(クリア))されることとなる。しかしながら、本実施形態においては、不正エラーによって、パチンコ遊技機1を電断復帰させた場合、差球カウンタを初期化しないようにする。これは、本来、1日のホール(遊技場)の営業が終了する毎に初期化されるべき差球が、不正エラーによって営業中に差球カウンタが初期化されることとなると、悪意のある遊技者がわざと磁気や振動で不正エラーを発生させ、ホール(遊技場)側がパチンコ遊技機1を電断復帰させるように仕向けるようにすれば、差球カウンタが初期化されてしまうこととなる。これでは、抑制装置(セービング機能)の作動を妨げるものとなってしまう。そこで、本実施形態においては、不正エラーによって、パチンコ遊技機1を電断復帰させた場合、差球カウンタを初期化しないようにしている。なお、遊技停止後は、不正検出基板55に搭載されている磁気センサ、又は、電波センサ、あるいは、振動センサにて遊技者の不正行為を検出したとしても、新たな賞球などの利益が発生しないことから、不正を行っても、ホール(遊技場)が不利益を被ることはない。
<抑制装置(セービング機能)作動による遊技停止状態になってから、イリーガルエラーでリセットがかかった場合についての説明>
抑制装置(セービング機能)作動による遊技停止状態になってから、イリーガルエラーによって、異常リセット信号が発生し、主制御CPU600aがリセットされる場合がある。イリーガルエラーとは、例えば、主制御ROM600bのプログラム領域の最終アドレス番地を超えてアドレス番地を指定し、その領域にアクセスした場合等、予期しないアクセスが発生した場合に発生するものである。このようなイリーガルエラーが発生した場合、異常リセット信号が生成され、主制御CPU600aだけがリセットされ、主制御ROM600bに記憶されているプログラムの開始アドレスから制御処理が再開されることとなる。しかしながら、主制御RAM600cはクリアされない。そのため、主制御RAM600cに記憶されている値は維持されるため、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグは、そのまま停止中を示す値(例えば、5AH)を保持している可能性が高い。しかしながら、この場合、電源遮断時のバックアップ処理は実行されないため、主制御RAM600cにバックアップフラグ等の正常時のバックアップ情報がセットされないこととなる。そのため、パチンコ遊技機1を電断復帰させたとしても、バックアップ復帰は行われないこととなる。
そこで、本実施形態においては、イリーガルエラーが発生するような状況では、イリーガルエラーによるリセット前が遊技停止状態であっても、バックアップ異常による主制御RAM600cをクリア、又は、主制御RAM600cの異常として、遊技者に有利な遊技状態を発生させる確率の設定内容の設定変更処理を経ることで、主制御RAM600cをクリアして、遊技プログラムを開始するようにする。これは、遊技停止状態のまま、遊技を復帰させた場合、イリーガルエラー発生の影響で、主制御RAM600cに記憶されている賞球に関する値が書き換わっている可能性がある。この際、上記説明したように、まだ払出しが完了していない賞球に関する払出処理は行なわれるため、書き換わってしまった主制御RAM600cに記憶されている値が遊技停止前に入賞したものとして扱われ、想定外の賞球が遊技者に払い出されてしまい、もって、ホール(遊技場)側が不利益を被る可能性がある。そのため、本実施形態においては、主制御RAM600cをクリアして、遊技プログラムを開始するようにしている。これにより、ホール(遊技場)側が不利益を被る事態を低減させることができ、もって、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
<抑制装置(セービング機能)作動による遊技停止状態になった場合の球貸しボタンについての説明>
貸出カードに少数の金額が残っている場合、遊技者が、全て遊技球にした上で清算したい場合を考慮して、本実施形態においては、球貸しボタン11による球貸し動作を有効にしておく。すなわち、図4に示すように、球貸しボタン11は、払出・発射制御基板70を介することなく、球貸し信号が、パチンコ遊技機1に隣接して配置されているCRユニット(図示省略)に送信されるようになっている。そして、CRユニットは、これを受けて、球貸し要求信号を払出・発射制御基板70に送信する。この信号を受けて、払出・発射制御基板70は、遊技者に遊技球を払い出し、払い出しが完了すると、球貸し完了信号をCRユニットに送信することとなる。それゆえ、主制御基板60(主制御CPU600a)が遊技停止しても、球貸し処理は行われることとなる。
しかして、このようにすれば、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
ところで、遊技停止状態となった場合、主制御基板60(主制御CPU600a)における後述するタイマ割込み処理のスイッチ管理処理が実行されないため、図4に示す特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a1、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1、大入賞口スイッチ46cがONとなったか否かの情報を得る事はできない。そのため、遊技停止状態となった場合に、遊技停止前に、発射ハンドル16を用いて遊技領域40に発射された遊技球が、まだ遊技領域40に存在している場合、その遊技球が、図4に示す特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a1、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1に入球したとしても、遊技球を検出することができないため、入賞は無効となり、もって、賞球も発生しないこととなる。これは、電波ゴトなどの不正により、スイッチのON/OFF状態に影響を与えて賞球が発生してしまうような場合、遊技停止後も、主制御基板60(主制御CPU600a)における後述するタイマ割込み処理のスイッチ管理処理を実行してしまうと、遊技停止中に不正に賞球を獲得されてしまう可能性がある。これにより、ホール(遊技場)側に被害を与える恐れがある。そのため、本実施形態においては、遊技停止状態となった場合に、まだ遊技領域40に存在している遊技球が、図4に示す特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a1、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1に入球したとしても、遊技球を検出しないようにしている。
<抑制装置(セービング機能)作動による遊技停止状態になった場合の装飾ランプについての説明>
ところで、遊技停止となった場合は、装飾ランプの輝度を下げるか、又は、装飾ランプを全消灯、或いは、一部を点灯させて残りを全消灯させるのが好ましい。遊技停止となったため、電力消費を抑えた方が良いためである。
<主制御:プログラムの説明>
ここで、上記種々説明した内容の処理方法を、以下、詳しく説明することとする。まず、主制御基板60にて処理される主制御ROM600b(図4参照)内に格納されているプログラムの概要を図10~図29を参照して説明することで、詳しく説明することとする。
まず、パチンコ遊技機1に電源が投入されると、電源基板130(図4参照)の電圧生成部1300にて生成された直流電圧が各制御基板に投入された旨の電源投入信号が送られ、その信号を受けて、主制御CPU600a(図4参照)は、主制御ROM600b内に格納されているプログラムを読み出し、図10に示す主制御メイン処理を行う。この際、主制御CPU600aは、まず、最初に自らを割込み禁止状態に設定する(ステップS1)。
次いで、主制御CPU600aは、主制御CPU600a内部のスタックポインタの値を、通常用スタック領域の最終アドレスに対応して設定するスタックポインタの設定処理を行う(ステップS2)。
次いで、主制御CPU600aは、主制御CPU600aに内蔵されている図示しないウォッチドックタイマ(WDT)をクリアし(ステップS3)、発射制御信号を出力する出力ポートをクリアする(ステップS4)。
続いて、主制御CPU600aは、サブ制御基板80の起動待ち時間をセットし(ステップS5)、セットした待ち時間をデクリメント(-1)し(ステップS6)、図示しないウォッチドックタイマ(WDT)をクリアする(ステップS7)。
次いで、主制御CPU600aは、セットした待ち時間が「0」になったか否かを確認し(ステップS8)、「0」になっていなければ(ステップS8:≠0)、ステップS7の処理に戻り、「0」になっていれば(ステップS8:=0)、ステップS9の処理に進む。
次いで、主制御CPU600aは、電源基板130(電圧監視部1310)(図4参照)より出力されている電圧異常信号ALARM(図4参照)を2回取得し、その2回取得した電圧異常信号ALARMのレベルが一致するか否かを確認した上で図示しない当該主制御CPU600aの内部レジスタ内に格納し、その電圧異常信号ALARMのレベルを確認する(ステップS9)。そして電圧異常信号ALARMのレベルが「L」レベルであれば(ステップS10:YES)、ステップS9の処理に戻り、電圧異常信号ALARMのレベルが「H」レベルであれば(ステップS10:NO)、ステップS11の処理に進む。すなわち、主制御CPU600aは、電圧異常信号ALARMが正常レベル(すなわち「H」レベル)に変化するまで同一の処理を繰り返す(ステップS9~S10)。このように、電圧異常信号ALARMを2回取得することで、正確な信号を読み込むことができる。
次いで、主制御CPU600aは、主制御RAM600cへのデータ書き込みを許可し(ステップS11)、主制御RAM600cの作業領域の初期設定を行う(ステップS12)。具体的には、電源異常確認カウンタに00Hをセットし、システム動作ステータスに01Hをセットする。
次いで、主制御CPU600aは、サブ制御基板80に液晶表示装置41に待機画面を表示させるような処理コマンド(演出制御コマンドDI_CMD)を送信する(ステップS13)。
次いで、主制御CPU600aは、図示しないウォッチドックタイマ(WDT)をクリアし(ステップS14)、払出制御基板70から電源が投入された旨の信号(電源投入信号)が来たか否かを確認する(ステップS15)。電源投入信号が来ていなければ(ステップS15:OFF)、ステップS14の処理に戻り、電源投入信号が来ていれば(ステップS15:ON)、ステップS16の処理に進む。
次いで、主制御CPU600aは、RAMクリアスイッチ620、設定キースイッチ630のレベルデータを取得し、主制御RAM600cの作業領域に退避させる(ステップS16)。
次いで、主制御CPU600aは、図1に示すガラス扉枠5が開放されているか否かの扉開放信号、及び、主制御RAM600cの作業領域に退避させたRAMクリアスイッチ620の信号、並びに、設定キースイッチ630の信号を取得し(ステップS17)、全てONになっているか否かを確認する(ステップS18)。全てONになっていれば(ステップS18:YES)、主制御CPU600aは、設定切替処理を行う(ステップS19)。
<主制御:メイン処理:設定切替処理に関する説明>
ここで、この設定切替処理について、図12を参照して具体的に説明する。
まず、主制御CPU600aは、サブ制御基板80に設定変更中であることを示す設定切替開始コマンド(演出制御コマンドDI_CMD)を送信する(ステップS50)。
次いで、主制御CPU600aは、バックアップフラグをクリアする(ステップS51)。なお、このバックアップフラグとは、図11に示す電源異常チェック処理にて、停電等による電圧低下を検出した場合に、バックアップの処理が実行されたか否かを示すデータである。また、このバックアップフラグをクリアするのは、設定切替処理中に、何らかの要因で電断し、主制御RAM600cが正常にバックアップされなかった場合を、後述する図11に示すステップS21にて検出するためである。
次いで、主制御CPU600aは、システム動作ステータスに02Hをセットし(ステップS52)、主制御RAM600c(図4参照)内に記憶されている遊技者に有利な特別遊技状態を発生させる確率の設定値を取得し、Wレジスタにセットする(ステップS53)。具体的に説明すると、設定値が、例えば「1」~「6」である場合、プログラム上では、設定値「1」~「6」を「00H」~「05H」の値に対応させて、Wレジスタにセットすることとなる。
次いで、主制御CPU600aは、Wレジスタにセットした値と、遊技者に有利な特別遊技状態を発生させる確率の設定最大値(例えば「6」に対応した「05H」)を比較する(ステップS54)。そして、主制御CPU600aは、Wレジスタにセットした値が遊技者に有利な特別遊技状態を発生させる確率の設定最大値(例えば「6」」に対応した「05H」)よりも大きければ(ステップS55:YES)、異常値であると判断し、Wレジスタに00Hをセットする(ステップS56)。
一方、Wレジスタにセットした値が遊技者に有利な特別遊技状態を発生させる確率の設定最大値(例えば「6」に対応した「05H」)よりも小さければ(ステップS55:NO)、正常値であると判断し、ステップS57の処理に進む。
次いで、主制御CPU600aは、図示しない外部端子を介して、ホール(遊技場)の遊技島管理に使用されるホールコンピュータ(図示せず)に出力されるセキュリティ信号をONに設定し、そのセキュリティ信号を、図示しない外部端子を介して、ホールコンピュータ(図示せず)に出力する(ステップS57)。
次いで、主制御CPU600aは、LEDコモンポートに00Hをセットする(ステップS58)。
次いで、主制御CPU600aは、Wレジスタにセットされている値をLEDデータポートに出力する(ステップS59)。
次いで、主制御CPU600aは、設定値を表示するLEDコモンポートをONにセットする(ステップS60)。
次いで、主制御CPU600aは、4msのウェイトがかかるように、主制御CPU600a内のレジスタに所定値をセットして、カウントダウンする処理を行う(ステップS61)。なお、この処理は、RAMクリアスイッチ620(図4参照)、設定キースイッチ630(図4参照)のレベルデータの変化を確認する際、前回のスイッチレベルの取得から少なくとも4msの時間をおくことで、ノイズ等のイレギュラーによるレベルデータの変化ではないことを確認するための処理である。またさらに、この後の電源異常チェック処理における電圧異常信号の変化を確認して、電源異常確認カウンタをカウントする際にも、4msの時間をおくことで、電圧異常信号の「L」レベルがノイズ等のイレギュラーによるレベルデータでないことを確認するための処理でもある。
次いで、主制御CPU600aは、電源異常チェック処理を行う(ステップS62)。この電源異常チェック処理について、図13を参照して具体的に説明する。
<主制御:メイン処理:電源異常チェック処理に関する説明>
図13に示すように、主制御CPU600aは、電源基板130(電圧監視部1310)(図4参照)より出力されている電圧異常信号ALARM(図4参照)を2回取得し(ステップS80)、その2回取得した電圧異常信号ALARMのレベルが一致するか否かを確認する(ステップS81)。一致していれば(ステップS81:YES)、主制御CPU600aは、電圧異常信号ALARMのレベルを確認し(ステップS82)、一致していなければ(ステップS81:NO)、ステップS80の処理に戻る。
次いで、主制御CPU600aは、電圧異常信号ALARMのレベルが「H」レベルであれば(ステップS82:OFF)、電源異常確認カウンタをクリアし(ステップS83)、電源異常チェック処理を終える。
一方、主制御CPU600aは、電圧異常信号ALARMのレベルが「L」レベルであれば(ステップS82:ON)、電源異常確認カウンタをインクリメント(+1)し(ステップS84)、電源異常確認カウンタの値を確認する(ステップS85)。電源異常確認カウンタの値が2以上でなければ(ステップS85:NO)、電源異常チェック処理を終える。
一方、主制御CPU600aは、電源異常確認カウンタの値が2以上であれば(ステップS85:YES)、サブ制御基板80に電源が遮断されたことを示す電断コマンド(演出制御コマンドDI_CMD)を送信する(ステップS86)。
次いで、主制御CPU600aは、システム動作ステータスの値を確認する(ステップS87)。システム動作ステータスの値が02Hであれば、設定変更処理中であると判断し(ステップS87:YES)、バックアップフラグをONにセットせず、ステップS89の処理に進む。このようにすれば、設定切替処理中に、何らかの要因で電断し、主制御RAM600cが正常にバックアップされなかった場合を、後述する図11に示すステップS21にて検出することができる。
一方、システム動作ステータスの値が02Hでなければ、設定変更処理中でないと判断し(ステップS87:NO)、バックアップフラグをONにセットする(ステップS88)。
次いで、主制御CPU600aは、主制御RAM600cへのデータ書込みを禁止状態に設定する(ステップS89)と共に、全ての出力ポートの出力データをクリアし(ステップS90)。そして、タイマ割込みを禁止し(ステップS91)、無限ループ処理を繰り返し電圧が降下するのを待つ処理を行う。
<主制御:メイン処理:設定切替処理に関する説明>
かくして、上記のような処理を経て、電源異常チェック処理(ステップS62)を終えると、主制御CPU600aは、前回と今回のRAMクリアスイッチ620のレベルデータ、並びに、設定キースイッチ630のレベルデータから、RAMクリアスイッチ620信号のスイッチエッジデータ、並びに、設定キースイッチ630信号のスイッチエッジデータを作成する(ステップS63)。なお、主制御CPU600aは、作成したエッジデータを主制御RAM600cに格納する。
次いで、主制御CPU600aは、主制御RAM600cに格納されているエッジデータを確認し、設定キースイッチ630がONであれば(ステップS64:NO)、ステップS65の処理に進み、設定キースイッチ630がOFFであれば(ステップS64:YES)、ステップS67の処理に進む。
次いで、主制御CPU600aは、RAMクリアスイッチ620がONであれば(ステップS65:NO)、Wレジスタの値をインクリメント(+1)し(ステップS66)、ステップS54の処理に戻る。
一方、RAMクリアスイッチ620がOFFであれば(ステップS65:NO)、ステップS57の処理に戻る。
かくして、設定キースイッチ630がOFFされるまで、上記処理を繰り返し行い、設定キースイッチ630がOFFされると、主制御CPU600aは、Wレジスタの値を、主制御RAM600c(図4参照)内に記憶されている遊技者に有利な特別遊技状態を発生させる確率の設定値(例えば「1」~「6」に対応した「00H」~「05H」)の設定値)に上書きして格納する(ステップS67)。
次いで、主制御CPU600aは、設定確定表示をLEDデータポートに出力する(ステップS68)。
次いで、主制御CPU600aは、サブ制御基板80に設定値を反映した設定切替終了コマンド(演出制御コマンドDI_CMD)を送信する(ステップS69)。
<主制御:メイン処理の説明>
かくして、上記のような処理を経て、図10に示す設定切替処理(ステップS19)を終えると、主制御CPU600aは、図11に示すステップS26の処理に進むこととなる。
他方、主制御CPU600aは、RAMクリアスイッチ620の信号、並びに、設定キースイッチ630の信号が、全てONになっているか否かを確認し(ステップS18)、全てONになっていなければ(ステップS18:NO)、主制御CPU600aは、図11に示すステップS20の処理を行う。
すなわち、主制御CPU600aは、主制御RAM600c(図4参照)内に記憶されている遊技者に有利な特別遊技状態を発生させる確率の設定値(例えば「1」~「6」に対応した「00H」~「05H」の設定値)を取得し、設定最大値(例えば「6」に対応した「05H」)以下か否かを確認する(ステップS20)。設定最大値以下であれば(ステップS20:YES)、バックアップフラグがONにセットされているか否かを確認する(ステップS21)。
<主制御:メイン処理:RAMエラー処理に関する説明>
設定最大値以下でないか(ステップS20:NO)、又は、バックアップフラグがONにセットされていなければ(ステップS21:NO)、主制御CPU600aは、サブ制御基板80にRAMエラーであることを示すRAMエラーコマンド(演出制御コマンドDI_CMD)を送信する(ステップS22)。
次いで、主制御CPU600aは、エラー表示をLEDデータポートに出力する(ステップS23)。
次いで、主制御CPU600aは、電源異常チェック処理を行い(ステップS24)、ステップS23の処理に戻り、処理を繰り返すこととなる。なお、この電源異常チェック処理は、図13に示す電源異常チェック処理と同一の処理である。
<主制御:メイン処理の説明>
一方、バックアップフラグがONにセットされていれば(ステップS21:YES)、RAMクリアスイッチ620の信号を確認する(ステップS25)。
<主制御:メイン処理:RAMクリア処理に関する説明>
RAMクリアスイッチ620の信号がON(ステップS25:YES)、又は、図10に示す設定切替処理(ステップS19)を行った場合、主制御CPU600aは、主制御RAM600cの計測用RAM領域、計測用スタック領域はクリアせず、主制御RAM600cの通常用RAM領域、通常用スタック領域をクリアする(ステップS26)。なお、主制御RAM600cの通常用RAM領域、通常用スタック領域がクリアされることとなるから、遊技状態は、通常遊技状態となる。そのため、この際、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグがクリアされることから、遊技停止状態が解除されることとなる。また、不正エラーによって、遊技を停止する場合は、不正遊技停止フラグもクリアされる。
次いで、主制御CPU600aは、RAMクリア報知タイマを30秒(30s)に設定し(ステップS27)、図示しない外部端子を介して、ホール(遊技場)の遊技島管理に使用されるホールコンピュータ(図示せず)に出力されるセキュリティ信号を出力するタイマを30秒(30s)に設定する(ステップS28)。
次いで、主制御CPU600aは、主制御RAM600cの一部に、初期値設定を行い(ステップS29)、ステップS41の処理に進む。
<主制御:メイン処理の説明>
一方、RAMクリアスイッチ620の信号がOFF(ステップS25:NO)であれば、主制御CPU600aは、図1に示すガラス扉枠5が開放されているか否かの扉開放信号、及び、設定キースイッチ630の信号を取得し(ステップS30)、全てONになっているか否かを確認する(ステップS31)。全てONになっていなければ(ステップS31:NO)、ステップS40の処理に進む。
<主制御:メイン処理:設定確認処理に関する説明>
一方、全てONになっていれば(ステップS31:YES)、主制御CPU600aは、サブ制御基板80に設定値を反映した設定値コマンド(演出制御コマンドDI_CMD)を送信する(ステップS32)。
次いで、主制御CPU600aは、図示しない外部端子を介して、ホール(遊技場)の遊技島管理に使用されるホールコンピュータ(図示せず)に出力されるセキュリティ信号を出力するタイマを30秒(30s)に設定する(ステップS33)。
次いで、主制御CPU600aは、図示しない外部端子を介して、ホール(遊技場)の遊技島管理に使用されるホールコンピュータ(図示せず)に出力されるセキュリティ信号をONに設定し、図示しない外部端子を介して、ホールコンピュータ(図示せず)に、上記タイマにて設定された30秒(30s)間、セキュリティ信号を出力する(ステップS34)。
次いで、主制御CPU600aは、設定値をLEDデータポートに出力する(ステップS35)。
次いで、主制御CPU600aは、4msのウェイトがかかるように、主制御CPU600a内のレジスタに所定値をセットして、カウントダウンする処理を行う(ステップS36)。
次いで、主制御CPU600aは、電源異常チェック処理を行う(ステップS37)。なお、この電源異常チェック処理は、図13に示す電源異常チェック処理と同一の処理である。
次いで、主制御CPU600aは、前回と今回の設定キースイッチ630のレベルデータから、設定キースイッチ630信号のスイッチエッジデータを作成する(ステップS38)。なお、主制御CPU600aは、作成したエッジデータを主制御RAM600c(図4参照)に格納する。
次いで、主制御CPU600aは、主制御RAM600c(図4参照)に格納されているエッジデータを確認し(ステップS39)、設定キースイッチ630がONであれば(ステップS39:NO)、ステップS34の処理に戻る。
<主制御:メイン処理の説明>
一方、設定キースイッチ630がOFFであれば(ステップS39:YES)、主制御RAM600cの一部に、バックアップフラグやエラー検出タイマ等の初期値設定を行う(ステップS40)。なお、この際、不正エラーによって、遊技を停止する場合は、不正遊技停止フラグに、初期値が設定(クリア)される。そのため、RAMクリアスイッチ620を押下せず、主制御RAM600cをクリアしないまま、パチンコ遊技機1を電断復帰させたとしても、不正エラーによる遊技停止状態は解消される。
かくして、このように、本実施形態においては、バックアップ異常による主制御RAM600cをクリア、又は、主制御RAM600cの異常として、遊技者に有利な遊技状態を発生させる確率の設定内容の設定変更処理を経ることで、主制御RAM600cをクリアして、遊技プログラムを開始するようにしている。これにより、イリーガルエラー発生の影響で、主制御RAM600cに記憶されている賞球に関する値が書き換わっていたとしても、ホール(遊技場)側が不利益を被る事態を低減させることができ、もって、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
次いで、主制御CPU600aは、サブ制御基板80に、RAMクリアによる電断復帰か、又は、バックアップによる電断復帰かを示すコマンド(演出制御コマンドDI_CMD)を送信する(ステップS41)。
次いで、主制御CPU600aは、遊技状態報知情報を更新する遊技状態報知情報更新処理を行う(ステップS42)。
次いで、主制御CPU600aは、領域外遊技開始設定を行う(ステップS43)。
<主制御:領域外遊技開始設定の説明>
ここで、図14~図15を参照して、領域外遊技開始設定について詳細に説明する。
図14に示すように、領域外遊技開始設定は、まず、使用領域(通常処理時)のスタックポインタを、主制御RAM600cの計測用スタック領域へ退避させる(ステップS100)。
次いで、主制御CPU600aは、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグを確認する(ステップS101)。遊技停止フラグに5AHがセットされていれば(ステップS101:=5AH)、主制御CPU600aは、遊技停止状態であると判断し、遊技停止処理(ステップS102)の処理に移行する。
<主制御:遊技停止処理の説明>
この遊技停止処理について、図15を参照して具体的に説明すると、主制御CPU600aは、まず、遊技停止フラグに5AHを設定する(ステップS110)。
次いで、主制御CPU600aは、図示しない外部端子を介して、ホール(遊技場)の遊技島管理に使用されるホールコンピュータ(図示せず)に出力されるセキュリティ信号をONに設定し、そのセキュリティ信号を、図示しない外部端子を介して、ホールコンピュータ(図示せず)に出力する(ステップS111)。
次いで、主制御CPU600aは、サブ制御基板80へ、遊技停止コマンド(演出制御コマンドDI_CMD)を送信する(ステップS112)。これにより、サブ制御CPU800aは、遊技停止を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これを受けて、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図6(c),図7(e),図8(e),図9(e)に示すような表示がされることとなる。
次いで、主制御CPU600aは、サブ制御基板80へ、エラー消去コマンド(演出制御コマンドDI_CMD)を送信する(ステップS113)。これにより、サブ制御CPU800aは、右打ち警告報知や左打ち警告報知などの発射位置警告報知などの不正エラーと比較して緊急度が低いエラーの報知を停止することとなる。なお、サブ制御CPU800aが、上記遊技停止コマンド(演出制御コマンドDI_CMD)を受信したことを契機として、緊急度が低いエラーの報知を停止するのであれば、このステップS113の処理は不要となる。
次いで、主制御CPU600aは、払出・発射制御基板70に、遊技球の発射を停止させるコマンドを送信し(ステップS114)、遊技停止処理を終える。なお、払出・発射制御基板70は、このコマンドを受信すると、発射ハンドル16からの信号を受信しても無効として処理することとなる。
<主制御:領域外遊技開始設定の説明>
かくして、このような遊技停止処理を終えた後、図14に示すように、主制御CPU600aは、主制御RAM600cの計測用スタック領域に退避させていた使用領域(通常処理時)のスタックポインタを復帰させ(ステップS108)、領域外遊技開始設定の処理を終える。
一方、遊技停止フラグに5AHがセットされていなければ(ステップS101:≠5AH)、主制御CPU600aは、遊技停止状態でないと判断し、作動状態フラグを確認する(ステップS103)。
この作動状態フラグは、遊技停止までの状態を値によって管理するもので、上記説明した(1)抑制装置(セービング機能)未作動状態の場合が「0」、(2)抑制装置(セービング機能)作動予告状態の場合が「1」、(3)抑制装置(セービング機能)作動警告状態の場合が「2」、(4)抑制装置(セービング機能)作動状態の場合が「3」とすることで管理している。
かくして、このような作動状態フラグに「2」がセットされいなければ(ステップS103:≠2)、主制御CPU600aは、差球カウンタに初期値を設定(10万発を設定(クリア))する(ステップS104)。すなわち、(1)抑制装置(セービング機能)未作動状態の場合、(2)抑制装置(セービング機能)作動予告状態の場合に限って((4)抑制装置(セービング機能)作動状態の場合は、遊技停止フラグに5AHがセットされているため、差球カウンタに初期値は設定されない)、差球カウンタに初期値を設定する。このようにすれば、(3)抑制装置(セービング機能)作動警告状態の場合に、パチンコ遊技機1を電断復帰させたとしても、差球カウンタに初期値を設定しないようにすることができる。しかして、このようにすれば、本来遊技停止するものであるにも関わらず、遊技停止しないという事態が無いようにすることができる。
なお、不正エラーによって、遊技を停止する場合は、パチンコ遊技機1を電断復帰させた差球カウンタに初期値を設定しないようにする。これにより、抑制装置(セービング機能)の作動を妨げる事態を無くすことができる。
ところで、この際、上記説明したように、パチンコ遊技機1を電断復帰させると、不正遊技停止フラグがクリアされてしまうが、その際、差球カウンタに初期値を設定しないフラグに値を設定し、差球カウンタに初期値を設定する際、その値を確認し初期値を設定するか否か判別するようにすれば良い。そして、判別後に、その差球カウンタに初期値を設定しないフラグをクリアするようにすれば良い。
次いで、主制御CPU600aは、上記ステップS104の処理を終えた後、作動状態フラグに初期値「0」をセットし、作動状態コマンドフラグに初期値「0」をセットし(ステップS106)、ステップS108の処理を行い、領域外遊技開始設定の処理を終える。
この作動状態コマンドフラグは、作動状態が切り替わった時に、サブ制御基板80(サブ制御CPU800a)へコマンドを送信したか否かを管理するものである。すなわち、コマンドが送信されていない状態が「0」、抑制装置作動予告コマンドが送信された状態が「1」、抑制装置作動警告コマンドが送信された状態が「2」とすることで管理している。
一方、作動状態フラグに「2」がセットされいれば(ステップS103:=2)、主制御CPU600aは、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信する(ステップS105)。これにより、サブ制御CPU800aは、抑制装置作動の警告を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これを受けて、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図7(c),(d)、図8(c),(d)、図9(c),(d)に示すような表示がされることとなる。
次いで、主制御CPU600aは、作動状態コマンドフラグに、作動状態フラグにセットされている値をセットし(ステップS107)、ステップS108の処理を行い、領域外遊技開始設定の処理を終える。
ところで、作動状態フラグ、作動状態コマンドフラグは、図11に示すステップS26に示す処理の際、遊技停止フラグがクリアされると共に、作動状態フラグ、作動状態コマンドフラグもクリアされることとなる。
<主制御:メイン処理の説明>
かくして、このように、図11に示す領域外遊技開始設定(ステップS43)の処理を終えた後、主制御CPU600aは、内部機能レジスタの設定を行う(ステップS44)。具体的には、発射制御信号をONに設定し、払出・発射制御基板70に送信する。これにより、払出・発射制御基板70は、遊技球の発射の動作を開始させるように制御する。また、主制御CPU600aの内部に設けられている一定周期のパルス出力を作成する機能や時間計測の機能等を有するCTC(Counter Timer Circuit)の設定を行う。すなわち、主制御CPU600aは、4ms毎に定期的にタイマ割込みがかかるように上記CTCの時間定数レジスタを設定する。
次いで、主制御CPU600aは、自身への割込みを禁止状態にセットした状態(ステップS45)で、賞球数,非入賞数を含む遊技領域40に発射された遊技球の総数等の性能を算出する賞球入賞数管理処理1の処理を行う(ステップS46)。そして、主制御CPU600aは、各種の乱数カウンタの更新処理を行った後(ステップS47)、割込み許可状態に戻して(ステップS48)、ステップS45に戻り、ステップS45~ステップS48の処理を繰り返し行うループ処理を行う。
<主制御:賞球入賞数管理処理1の説明>
ここで、図16~図20を参照して、上記賞球入賞数管理処理1について詳細に説明する。
図16に示すように、賞球入賞数管理処理1は、先ず、主制御CPU600a内のレジスタ群の内容を主制御RAM600cの計測用スタック領域に退避させる退避処理を実行する(ステップS120)。
次いで、主制御CPU600aは、主制御RAM600cの計測用RAM領域の初期設定を行う(ステップS121)。
<主制御:計測用RAM領域の初期設定の説明>
この点、図17を参照してより詳しく説明すると、この初期設定は、図17に示すように、まず、主制御CPU600a(図4参照)は、RAMエラーフラグを確認する(ステップS130)。RAMエラーフラグがONに設定されていれば、「1」~「6」の何れかの値を示していないと判断し(ステップS130:YES)、主制御RAM600cに異常が発生(RAMエラー)として、ステップS131、ステップS132の処理をせず、ステップS133の処理に移行する。
一方、主制御CPU600aは、RAMエラーフラグがOFFに設定されていれば、「1」~「6」の何れかの値を示していると判断し(ステップS130:NO)、初期化済みフラグの値を取得する(ステップS131)。次いで、主制御CPU600aは、その取得した初期化済みフラグの値が5AHか否かの確認を行う(ステップS132)。5AHでなければ(ステップS132:NO)、初期化済みフラグに5AHをセットし(ステップS133)、計測用RAM領域を初期化(クリア)し(ステップS134)、計測用RAM領域の初期設定処理を終える。一方、5AHであれば(ステップS132:YES)、既に計測用RAM領域が初期化されていると判断し、計測用RAM領域の初期設定処理を終える。
しかして、このように、取得した設定値の値が、「1」~「6」の何れかの値を示していない場合、現在の設定値に応じた計測(後述する)が正常に行われていない可能性があるため、初期化済みであったとしても、主制御RAM600cの計測用RAM領域をクリアするようにすれば良い。
<主制御:賞球入賞数管理処理1の説明>
かくして、主制御CPU600aは、図16に示すように、主制御RAM600cの計測用RAM領域の初期設定を行った(ステップS121)後、カウント処理を実行する(ステップS122)。
<主制御:カウント処理の説明>
この点、図18を参照してより詳しく説明すると、図18に示すように、主制御CPU600aは、主制御RAM600c(図4参照)内に記憶されている遊技者に有利な特別遊技状態を発生させる確率の設定値(例えば「1」~「6」の設定値)を取得し、現在の設定値をオフセットとして、設定値に応じた計数カウンタテーブルを選択する(ステップS140)。
ところで、この計数カウンタテーブルには、設定値1~6に応じた内容が格納されている。
すなわち、設定値1用計数カウンタテーブルには、
設定値1用総賞球カウンタ1、
設定値1用総賞球カウンタ2、
設定値1用第1役物累積賞球カウンタ1、
設定値1用第1役物累積賞球カウンタ2、
設定値1用第2役物累積賞球カウンタ1、
設定値1用第2役物累積賞球カウンタ2、
設定値1用累積アウトカウンタ1、
設定値1用累積アウトカウンタ2、
が格納されている。
設定値2用計数カウンタテーブルには、
設定値2用総賞球カウンタ1、
設定値2用総賞球カウンタ2、
設定値2用第1役物累積賞球カウンタ1、
設定値2用第1役物累積賞球カウンタ2、
設定値2用第2役物累積賞球カウンタ1、
設定値2用第2役物累積賞球カウンタ2、
設定値2用累積アウトカウンタ1、
設定値2用累積アウトカウンタ2、
が格納されている。
設定値3用計数カウンタテーブルには、
設定値3用総賞球カウンタ1、
設定値3用総賞球カウンタ2、
設定値3用第1役物累積賞球カウンタ1、
設定値3用第1役物累積賞球カウンタ2、
設定値3用第2役物累積賞球カウンタ1、
設定値3用第2役物累積賞球カウンタ2、
設定値3用累積アウトカウンタ1、
設定値3用累積アウトカウンタ2、
が格納されている。
設定値4用計数カウンタテーブルには、
設定値4用総賞球カウンタ1、
設定値4用総賞球カウンタ2、
設定値4用第1役物累積賞球カウンタ1、
設定値4用第1役物累積賞球カウンタ2、
設定値4用第2役物累積賞球カウンタ1、
設定値4用第2役物累積賞球カウンタ2、
設定値4用累積アウトカウンタ1、
設定値4用累積アウトカウンタ2、
が格納されている。
設定値5用計数カウンタテーブルには、
設定値5用総賞球カウンタ1、
設定値5用総賞球カウンタ2、
設定値5用第1役物累積賞球カウンタ1、
設定値5用第1役物累積賞球カウンタ2、
設定値5用第2役物累積賞球カウンタ1、
設定値5用第2役物累積賞球カウンタ2、
設定値5用累積アウトカウンタ1、
設定値5用累積アウトカウンタ2、
が格納されている。
設定値6用計数カウンタテーブルには、
設定値6用総賞球カウンタ1、
設定値6用総賞球カウンタ2、
設定値6用第1役物累積賞球カウンタ1、
設定値6用第1役物累積賞球カウンタ2、
設定値6用第2役物累積賞球カウンタ1、
設定値6用第2役物累積賞球カウンタ2、
設定値6用累積アウトカウンタ1、
設定値6用累積アウトカウンタ2、
が格納されている。
それゆえ、例えば、現在の設定値が「2」であれば、設定値2用計数カウンタテーブルが選択されることとなる。なお、上述した設定値に応じた計数カウンタテーブルは、主制御RAM600cの計測用RAM領域に格納されている。
次いで、主制御CPU600aは、後述する図29に示すステップS507にて、主制御RAM600cに格納しておいた右上一般入賞口スイッチ49a1の入力フラグ,左上一般入賞口スイッチ49b1の入力フラグ,左中一般入賞口スイッチ49c1の入力フラグ,左下一般入賞口スイッチ49d1の入力フラグ,特別図柄1始動口スイッチ44aの入力フラグを取得する(ステップS141)。そして、これら入力フラグを確認し(ステップS142)、入力フラグが何れもOFF状態であれば(ステップS142:NO)、ステップS146の処理に進み、何れか1つの入力フラグがON状態であれば(ステップS142:YES)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に加算する(ステップS143)。具体的には、右上一般入賞口スイッチ49a1の入力フラグがON状態であれば、5個賞球されるため、設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に+5加算する。そして、左上一般入賞口スイッチ49b1,左中一般入賞口スイッチ49c1,左下一般入賞口スイッチ49d1の入力フラグがON状態であれば、ON状態の入力フラグ一つに対して、10個賞球されるため、設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に+10(×ON状態の入力フラグ数分)加算する。そしてさらに、特別図柄1始動口スイッチ44aの入力フラグがON状態であれば、3個賞球されるため、設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に+3(×ON状態の入力フラグ数分)加算する。
次いで、主制御CPU600aは、低確(当たり抽選確率が通常の低確率状態)の遊技状態か否かを確認する(ステップS144)。遊技状態が低確状態でなければ(ステップS144:NO)、ステップS146の処理に進む。
一方、主制御CPU600aは、遊技状態が低確状態であれば(ステップS144:YES)、累積賞球カウンタの値に加算する(ステップS145)。具体的には、右上一般入賞口スイッチ49a1の入力フラグがON状態であれば、5個賞球されるため、累積賞球カウンタの値に+5加算する。そして、左上一般入賞口スイッチ49b1,左中一般入賞口スイッチ49c1,左下一般入賞口スイッチ49d1の入力フラグがON状態であれば、ON状態の入力フラグ一つに対して、10個賞球されるため、累積賞球カウンタの値に+10(×ON状態の入力フラグ数分)加算する。そしてさらに、特別図柄1始動口スイッチ44aの入力フラグがON状態であれば、3個賞球されるため、累積賞球カウンタの値に+3(×ON状態の入力フラグ数分)加算する。なお、この累積賞球カウンタは、主制御RAM600cの計測用RAM領域に格納されることとなる。
次いで、主制御CPU600aは、後述する図29に示すステップS507にて、主制御RAM600cに格納しておいた特別図柄2始動口スイッチ45a1の入力フラグを取得する(ステップS146)。この入力フラグがOFF状態であれば(ステップS147:NO)、ステップS152の処理に進み、この入力フラグがON状態であれば(ステップS147:YES)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ1)の値に加算し(ステップS148)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に加算する(ステップS149)。具体的には、特別図柄2始動口スイッチ45a1の入力フラグがON状態であれば、3個賞球されるため、設定値1~6用第1役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ1)の値に+3加算し、設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に+3加算する。
次いで、主制御CPU600aは、低確(当たり抽選確率が通常の低確率状態)の遊技状態か否かを確認する(ステップS150)。遊技状態が低確状態でなければ(ステップS150:NO)、ステップS152の処理に進む。
一方、主制御CPU600aは、遊技状態が低確状態であれば(ステップS150:YES)、第1役物累積賞球カウンタの値に加算する(ステップS151)。具体的には、特別図柄2始動口スイッチ45a1の入力フラグがON状態であれば、3個賞球されるため、第1役物累積賞球カウンタの値に+3加算する。なお、この第1役物累積賞球カウンタは、主制御RAM600cの計測用RAM領域に格納されることとなる。
次いで、主制御CPU600aは、後述する図29に示すステップS507にて、主制御RAM600cに格納しておいた大入賞口スイッチ46cの入力フラグを取得する(ステップS152)。この入力フラグがOFF状態であれば(ステップS153:NO)、ステップS158の処理に進み、この入力フラグがON状態であれば(ステップS153:YES)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)の値に加算し(ステップS154)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に加算する(ステップS155)。具体的には、大入賞口スイッチ46cの入力フラグがON状態であれば、15個賞球されるため、設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)の値に+15加算し、設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値に+15加算する。
次いで、主制御CPU600aは、低確(当たり抽選確率が通常の低確率状態)の遊技状態か否かを確認する(ステップS156)。遊技状態が低確状態でなければ(ステップS156:NO)、ステップS158の処理に進む。
一方、主制御CPU600aは、遊技状態が低確状態であれば(ステップS156:YES)、第2役物累積賞球カウンタの値に加算する(ステップS157)。具体的には、大入賞口スイッチ46cの入力フラグがON状態であれば、15個賞球されるため、第2役物累積賞球カウンタの値に+15加算する。なお、この第2役物累積賞球カウンタは、主制御RAM600cの計測用RAM領域に格納されることとなる。
次いで、主制御CPU600aは、後述する図29に示すステップS507にて、主制御RAM600cに格納しておいたアウト口スイッチ50aの入力フラグを取得する(ステップS158)。この入力フラグがOFF状態であれば(ステップS159:NO)、ステップS162の処理に進み、この入力フラグがON状態であれば(ステップS159:YES)、累積アウトカウンタの値をインクリメント(+1)し(ステップS160)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ1(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ1)の値をインクリメント(+1)する(ステップS141)。なお、累積アウトカウンタは、主制御RAM600cの計測用RAM領域に格納されることとなる。
次いで、主制御CPU600aは、累積アウトカウンタの値を確認し(ステップS162)、累積アウト総数が所定値(60000個)に達していなければ(ステップS162:NO)、ステップS168の処理に進み、累積アウト総数が所定値(60000個)に達していれば(ステップS162:YES)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値を、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ2)に記憶し(ステップS163)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ1)の値を、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ2)に記憶し(ステップS164)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)の値を、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ2)に記憶し(ステップS165)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ1(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ1)の値を、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ2(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ2)に記憶する(ステップS166)。
次いで、主制御CPU600aは、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ1)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)、ステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ1(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ1)の値をクリアする(ステップS167)。
次いで、主制御CPU600aは、低確(当たり抽選確率が通常の低確率状態)の遊技状態か否かを確認する(ステップS168)。遊技状態が低確状態でなければ(ステップS168:NO)、カウント処理を終え、遊技状態が低確状態であれば(ステップS168:YES)、低確累積アウトカウンタをインクリメント(+1)し(ステップS169)、カウント処理を終える。なお、低確累積アウトカウンタは、主制御RAM600cの計測用RAM領域に格納されることとなる。
<主制御:賞球入賞数管理処理1の説明>
かくして、主制御CPU600aは、図16に示すように、カウント処理を実行した後(ステップS122)、計数処理を実行する(ステップS123)。
<主制御:計数処理の説明>
この点、図19を参照してより詳しく説明すると、図19に示すように、主制御CPU600aは、低確累積アウトカウンタの値を確認する(ステップS170)。低確累積アウトカウンタの値が0であれば(ステップS170:YES)、計数処理を終える。
一方、低確累積アウトカウンタの値が0でなければ(ステップS170:NO)、主制御CPU600aは、累積賞球カウンタと第1役物累積賞球カウンタと第2役物累積賞球カウンタの値を加算し、その加算した値を低確累積アウトカウンタの値で除算することにより、低確時に幾らの賞球がされたかのベース値を算出し、主制御RAM600cの計測用RAM領域のbLベースモニタワーク領域に格納する(ステップS171)。
次いで、主制御CPU600aは、累積アウトカウンタの値を確認する(ステップS172)。累積アウトカウンタの値が0であれば(ステップS172:YES)、計数処理を終える。
一方、累積アウトカウンタが0でなければ(ステップS172:NO)、主制御CPU600aは、累積賞球カウンタと第1役物累積賞球カウンタと第2役物累積賞球カウンタの値を加算し、その加算した値を累積アウトカウンタの値で除算することにより、幾らの賞球がされたかのベース値を算出し、主制御RAM600cの計測用RAM領域のb6ベースモニタワーク領域に格納する(ステップS173)。
次いで、主制御CPU600aは、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ2(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ2)の値を確認する(ステップS174)。
図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ2(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ2)の値が60000に達していれば(ステップS174:YES)、主制御CPU600aは、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ2)と、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ2)の値を加算し、その加算した値を図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ2)の値で除算することにより、役物比率を算出し、主制御RAM600cの計測用RAM領域のy6役物比率ワーク領域に格納する(ステップS175)。
次いで、主制御CPU600aは、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ2)の値を図18に示すステップS120にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ2(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ2)の値で除算することにより、大入賞口に関する役物比率を算出し、主制御RAM600cの計測用RAM領域のyA役物比率ワーク領域に格納し(ステップS176)、計数処理を終える。
一方、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用累積アウトカウンタ2(例えば、現在の設定値が「2」であれば、設定値2用累積アウトカウンタ2)の値が60000に達していなければ(ステップS174:NO)、主制御CPU600aは、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第1役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第1役物累積賞球カウンタ1)と、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)の値を加算し、その加算した値を図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値で除算することにより、役物比率を算出し、主制御RAM600cの計測用RAM領域のy6役物比率ワーク領域に格納する(ステップS177)。
次いで、主制御CPU600aは、図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用第2役物累積賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用第2役物累積賞球カウンタ1)の値を図18に示すステップS140にて選択された設定値1~6用計数カウンタテーブルの設定値1~6用総賞球カウンタ1(例えば、現在の設定値が「2」であれば、設定値2用総賞球カウンタ1)の値で除算することにより、大入賞口に関する役物比率を算出し、主制御RAM600cの計測用RAM領域のyA役物比率ワーク領域に格納し(ステップS178)、計数処理を終える。
<主制御:賞球入賞数管理処理1の説明>
かくして、上記のような処理を終えた後、主制御CPU600aは、図16に示すように、計数処理を実行(ステップS123)した後、抑制装置計数処理を実行する(ステップS124)。
<主制御:抑制装置計数処理の説明>
この点、図20を参照してより詳しく説明すると、図20に示すように、主制御CPU600aは、遊技停止フラグの値を確認する(ステップS180)。遊技停止フラグに5AHがセットされていれば(ステップS180:=5AH)、主制御CPU600aは、抑制装置計数処理を終える。
一方、遊技停止フラグに5AHがセットされていなければ(ステップS180:≠5AH)、主制御CPU600aは、作動状態フラグの値を確認する(ステップS181)。作動状態フラグの値が2以上であれば(ステップS181:≧2)、主制御CPU600aは、大当たり遊技中か否かを確認する(ステップS182)。大当たり遊技中であれば(ステップS182:YES)、抑制装置計数処理を終える。
一方、大当たり遊技中でなければ(ステップS182:NO)、作動状態フラグに「3」をセットし(ステップS183)、抑制装置計数処理を終える。
他方、主制御CPU600aは、作動状態フラグの値が2未満であれば(ステップS181:<2)、差球カウンタからアウト数を減算する(ステップS184)。具体的には、主制御CPU600aは、後述する図21に示すステップS206の処理にて、主制御RAM600c内に記憶されているアウト口スイッチ50a(図4参照)のON信号を読み出し、差球カウンタから減算するようにする。なお、このような差球カウンタとは別に、アウト口スイッチ50a(図4参照)のON信号を読み出し、アウト数をカウントするカウンタを設けてもよい。その場合は、上記に記載した計測用の累積アウトカウンタ(例えば、2バイト)よりも、カウント値が大きくなるため、主制御RAM600cのサイズを大きくする(例えば、3バイト)方がよい。
次いで、主制御CPU600aは、差球カウンタに賞球数を加算する(ステップS185)。具体的には、主制御CPU600aは、後述する図21に示すステップS206の処理にて、主制御RAM600c内に記憶されている特別図柄1始動口スイッチ44a(図4参照)、特別図柄2始動口スイッチ45a1(図4参照)、右上一般入賞口スイッチ49a1(図4参照)、左上一般入賞口スイッチ49b1(図4参照)、左中一般入賞口スイッチ49c1(図4参照)、左下一般入賞口スイッチ49d1(図4参照)、大入賞口スイッチ46c(図4参照)のON信号を読み出し、これらスイッチに応じた賞球数を算出した上で、差球カウンタに賞球数を加算するようにする。なお、差球カウンタは、上記に記載した計測用の賞球カウンタ(例えば2バイト)よりもカウント値が大きくなるため、主制御RAM600cのサイズを大きくする(例えば3バイト)方がよい。
次いで、主制御CPU600aは、差球カウンタが第2基準値以上か否かを確認する。すなわち、差球カウンタが差球95000発を超えている数値(差球カウンタ>195000)か否かを確認する(ステップS186)。差球カウンタが第2基準値以上であれば(ステップS186:YES)、主制御CPU600aは、大当たり遊技中か否かを確認する(ステップS187)。大当たり遊技中であれば(ステップS187:YES)、作動状態フラグに「2」をセットし(ステップS188)、抑制装置計数処理を終える。
一方、大当たり遊技中でなければ(ステップS187:NO)、作動状態フラグに「3」をセットし(ステップS183)、抑制装置計数処理を終える。
他方、差球カウンタが第2基準値以上でなければ(ステップS186:NO)、主制御CPU600aは、差球カウンタが第1基準値以上か否かを確認する。すなわち、差球カウンタが差球90000発を超えている数値か否かを確認する(ステップS189)。差球カウンタが第1基準値以上であれば(ステップS189:YES)、主制御CPU600aは、作動状態フラグに「1」をセットし(ステップS190)、抑制装置計数処理を終える。
一方、差球カウンタが第1基準値以上でなければ(ステップS189:NO)、主制御CPU600aは、作動状態フラグに「0」をセットし(ステップS191)、抑制装置計数処理を終える。
<主制御:賞球入賞数管理処理1の説明>
かくして、上記のような処理を終えた後、主制御CPU600aは、図16に示すように、主制御RAM600cの計測用スタック領域に退避させておいたレジスタの内容を復帰させ(ステップS125)、賞球入賞数管理処理1を終える。
<主制御:タイマ割込み処理の説明>
次に、図21を参照して、上述したメイン処理を中断させて、4ms毎に開始されるタイマ割込みプログラムについて説明する。
このタイマ割込みが生じると、主制御CPU600a内のレジスタ群の内容を主制御RAM600cの通常用スタック領域に退避させる退避処理を実行し(ステップS200)、その後、電圧異常チェック処理を実行する(ステップS201)。この電圧異常チェック処理は、図13に示す電源異常チェック処理と同一の処理である。
次いで、主制御CPU600aは、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグを確認する(ステップS202)。遊技停止フラグに5AHがセットされていれば(ステップS202:=5AH)、主制御CPU600aは、ソレノイドポートをOFF(ステップS203)にし、LEDコモンポートをOFF(ステップS204)にし、ステップS216の処理に移行する。これにより、変動中に遊技が停止した場合、装飾図柄の変動を停止させるような図柄変動演出が一切行われないこととなり、さらに、特別図柄表示装置51,普通図柄表示装置52,7セグメント表示装置53aは消灯し、もって、始動保留球数の表示も非表示となる。なお、不正行為を検出した際、遊技停止する場合においても、主制御CPU600aに、不正行為を検出した際に使用する不正遊技停止フラグを確認させ、5AHがセットされていれば、主制御CPU600aに、同様の処理を行わせるようにすれば良い。
一方、遊技停止フラグに5AHがセットされていなければ(ステップS202:≠5AH)、主制御CPU600aは、抑制装置(セービング機能)の作動に関する抑制装置作動管理処理を行う(ステップS205)。なお、この処理の詳細は後述することとする。
次いで、主制御CPU600aは、特別図柄1始動口スイッチ44a(図4参照)と、特別図柄2始動口スイッチ45a1(図4参照)と、普通図柄始動口スイッチ48a(図4参照)と、右上一般入賞口スイッチ49a1(図4参照),左上一般入賞口スイッチ49b1(図4参照),左中一般入賞口スイッチ49c1(図4参照),左下一般入賞口スイッチ49d1(図4参照)と、アウト口スイッチ50a(図4参照)と、大入賞口スイッチ46c(図4参照)を含む各種スイッチ類のON/OFF信号が入力され、主制御RAM600c内にON/OFF信号レベルや、その立ち上がり状態が記憶される(ステップS206)。なお、この処理は、図21に示すように、遊技停止フラグに5AHがセットされて(ステップS202:=5AH)いた場合、処理されないこととなる。そのため、遊技停止前に、発射ハンドル16を用いて遊技領域40に発射された遊技球が、遊技停止後、まだ遊技領域40に存在している場合に、特別図柄1始動口スイッチ44a、特別図柄2始動口スイッチ45a1、右上一般入賞口スイッチ49a1、左上一般入賞口スイッチ49b1、左中一般入賞口スイッチ49c1、左下一般入賞口スイッチ49d1に入球したとしても、遊技球を検出することはない。これは、電波ゴトなどの不正により、スイッチのON/OFF状態に影響を与えて賞球が発生してしまうような場合、遊技停止後も、このスイッチ管理処理を実行してしまうと、遊技停止中に不正に賞球を獲得されてしまう可能性があるためである。それゆえ、このようにすれば、ホール(遊技場)側に被害を与える恐れを低減させることができる。
次いで、主制御CPU600aは、各遊技動作の時間を管理している各種タイマ(普通図柄変動タイマ、普通図柄役物タイマ等)のタイマ減算処理を行う(ステップS207)。
次いで、主制御CPU600aは、乱数管理処理を行う(ステップS208)。具体的には、当否抽選に使用する普通図柄、特別図柄等の乱数を更新する処理を行うものである。
次いで、主制御CPU600aは、普通図柄処理を実行する(ステップS209)。この普通図柄処理は、普通図柄の当否抽選を実行し、その抽選結果に基づいて普通図柄の変動パターンや普通図柄の停止表示状態を決定したりするものである。なお、この処理の詳細は後述することとする。
次いで、主制御CPU600aは、普通電動役物管理処理を実行する(ステップS210)。この普通電動役物管理処理は、普通図柄処理(ステップS209)の抽選結果に基づき、普通電動役物開放遊技発生に必要な普通電動役物ソレノイド45b2(図4参照)の制御に関する信号が生成されるものである。
次いで、主制御CPU600aは、特別図柄処理を実行する(ステップS211)。この特別図柄処理では、特別図柄の当否抽選を実行し、その抽選の結果に基づいて特別図柄の変動パターンや特別図柄の停止表示態様を決定するものである。なお、この処理の詳細は後述することとする。
次いで、主制御CPU600aは、特別電動役物管理処理を実行する(ステップS212)。この特別電動役物管理処理では、主に、大当たり抽選結果が「大当たり」、「小当たり」であった場合、その当りに対応した当り遊技を実行制御するために必要な設定処理を行うものである。この際、特別電動役物ソレノイド46b(図4参照)の制御に関する信号も生成される。なお、大当たり抽選結果が「大当たり」、「小当たり」であった場合、それに関するコマンド(演出制御コマンドDI_CMD)がサブ制御基板80に送信される。具体的には、大当たり開始ファンファーレコマンド(演出制御コマンドDI_CMD)や、大当たり終了エンディングコマンド(演出制御コマンドDI_CMD)がサブ制御基板80に送信される。これにより、サブ制御CPU800aは、図9を参照して説明した処理を実行することとなる。
次いで、主制御CPU600aは、右打ち報知情報管理処理を行う(ステップS213)。この右打ち報知情報管理処理では、電チュー(普通電動役物)の開閉部材45b1が開放状態、及び、案内部材45c1が案内状態となる時間が延長状態となる場合や、開閉扉46aが開放され大入賞口(図示せず)が開放される場合など、右打ちが有利な状況において右打ち指示報知を行う「発射位置誘導演出(右打ち報知演出)」を現出させるための処理を行う。なお、右打ち報知演出が行われる場合、この右打ち報知情報管理処理において、その右打ち報知演出に関するコマンド(演出制御コマンドDI_CMD)がサブ制御基板80(サブ制御CPU800a)に送信される。これを受けて、サブ制御CPU800aは、決定した停止図柄(普通図柄停止図柄)を液晶表示装置41に表示させるような画像(映像)に関するコマンドリストをVDP803に送信する。これにより、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信することにより、液晶表示装置41には、図7~図9に示すように、「右打ち」と表示されることとなる。
次いで、主制御CPU600aは、LED管理処理を実行する(ステップS214)。
次いで、主制御CPU600aは、ソレノイド管理処理を行う(ステップS215)。この際、主制御CPU600aは、普通電動役物管理処理(ステップS210)にて生成された普通電動役物ソレノイド45b2(図4参照)の制御に関する信号を確認すると共に、特別電動役物管理処理(ステップS212)にて生成された特別電動役物ソレノイド46b(図4参照)の制御に関する信号を確認する。そしてこの信号に基づき、普通電動役物ソレノイド45b2又は特別電動役物ソレノイド46bの作動/停止が制御され、電チュー(普通電動役物)の開閉部材45b1が開放状態、及び、案内部材45c1が案内状態となる時間が延長状態/非延長状態、あるいは、大入賞口(図示せず)が開放又は閉止するように開閉扉46a(図2参照)が動作することとなる。
次いで、主制御CPU600aは、エラー管理処理を行う(ステップS216)。エラー管理処理は、遊技球の補給が停止したり、あるいは、遊技球が詰まったり、特別図柄1始動口スイッチ44a(図4参照)、特別図柄2始動口スイッチ45a1(図4参照)、普通図柄始動口スイッチ48a(図4参照)、右上一般入賞口スイッチ49a1(図4参照)、左上一般入賞口スイッチ49b1(図4参照)、左中一般入賞口スイッチ49c1(図4参照)、左下一般入賞口スイッチ49d1(図4参照)、アウト口スイッチ50a(図4参照)、大入賞口スイッチ46c(図4参照)の断線など、機器内部に異常が生じていないかの判定を行うものである。なお、何らかのエラーが発生した際(このエラーには、不正検出基板55にて遊技者の不正行為を検出した場合も含まれる)、サブ制御基板80へ、そのエラーに応じたコマンド(演出制御コマンドDI_CMD)が送信されることとなる。なおまた、不正検出基板55にて遊技者の不正行為を検出した場合を除く他のエラーが解除された場合、主制御CPU600aは、サブ制御基板80へ、そのエラー解除に応じたコマンド(演出制御コマンドDI_CMD)を送信することとなる。
ところで、不正検出基板55にて遊技者の不正行為を検出した場合に、遊技停止せずに優先度の高いエラー報知を行う場合、サブ制御CPU800aは、抑制装置(セービング機能)が作動して、遊技停止コマンド(演出制御コマンドDI_CMD)を受信したとしても、不正によるエラー報知が、液晶表示装置41に、図6(c),図7(e),図8(e),図9(e)に示すような表示と共に表示されるようにし、スピーカ17から発せられる音声は、不正によるエラー報知を優先して行うようにする。
ところで、このエラー管理処理は、図21に示すように、遊技停止フラグに5AHがセットされて(ステップS202:=5AH)いたとしても、処理されることとなる。それゆえ、上記説明したように、遊技停止状態であったとしても、遊技者が獲得した賞球に関するエラーに応じた演出制御コマンドDI_CMDについても、サブ制御基板80へ、送信されることとなる。そのため、サブ制御CPU800aは、遊技者が獲得した賞球に関するエラーに応じた演出制御コマンドDI_CMDを受信すると、遊技停止報知よりも優先して行うようにする。
次いで、主制御CPU600aは、賞球管理処理を実行する(ステップS217)。この賞球管理処理は、払出制御基板70(図4参照)に払出し動作を行わせるための払出制御コマンドPAY_CMDを出力している。また、この賞球管理処理では、主制御CPU600aは、賞球予定数コマンド(演出制御コマンドDI_CMD)をサブ制御基板80に送信するようにする。
ところで、この賞球管理処理は、図21に示すように、遊技停止フラグに5AHがセットされて(ステップS202:=5AH)いたとしても、処理されることとなる。それゆえ、上記説明したように、遊技停止状態であったとしても、払出・発射制御基板70は、まだ払出しが完了していない賞球に関する遊技球の払出しを実行することとなる。しかして、このようにすれば、遊技停止によって、本来払い出されるはずの遊技球が払い出されないという事態を無くすることができるため、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
次いで、主制御CPU600aは、外部端子管理処理を実行する(ステップS218)。この外部端子管理処理では、遊技場の遊技島管理に使用されるホールコンピュータ(図示せず)に、当り遊技中、当りの発生回数、特別図柄の変動回数、入賞口への入賞球検出情報、時短遊技状態中情報、セキュリティ情報など、所定の遊技情報が外部端子(図示せず)から出力されるものである。
次いで、主制御CPU600aは、使用領域外処理を行う(ステップS219)。なお、この処理の詳細は後述することとする。
次いで、主制御CPU600aは、アウトコマンド送信処理を行う(ステップS220)。このアウトコマンド送信処理では、主制御CPU600aは、アウト口50(図2参照)のアウト口スイッチ50a(図4参照)において、遊技球の入球を検出した否かを確認し、検出する毎に、アウト球数コマンド(演出制御コマンドDI_CMD)をサブ制御基板80に送信するようにする。
かくして、サブ制御CPU800aは、アウト球数コマンド及び賞球予定数コマンドを受信することにより、詳細な差球数を管理することができるため、抑制装置(セービング機能)が作動するか否かを判断することが可能となり、もって、適切な演出を実行することができる。
次いで、主制御CPU600aは、図示しないウォッチドックタイマ(WDT)をクリアし(ステップS221)、割込み許可状態に戻し(ステップS222)、主制御RAM600cの通常用スタック領域に退避させておいたレジスタの内容を復帰させタイマ割込みを終える(ステップS223)。これにより、割込み処理ルーチンからメイン処理(図32参照)に戻ることとなる。
<主制御:抑制装置作動管理処理の説明>
次に、図22を参照して、上記抑制装置作動管理処理について詳細に説明する。
図22に示すように、主制御CPU600aは、まず、抑制装置(セービング機能)作動による遊技停止することを示す遊技停止フラグを確認する(ステップS230)。遊技停止フラグに5AHがセットされていれば(ステップS230:=5AH)、抑制装置作動管理処理を終える。なお、不正行為を検出した際、遊技停止する場合においても、主制御CPU600aは、不正行為を検出した際に使用する不正遊技停止フラグを確認し、5AHがセットされていれば、主制御CPU600aは、抑制装置作動管理処理を終えるようにすれば良い。
一方、遊技停止フラグに5AHがセットされていなければ(ステップS230:≠5AH)、主制御CPU600aは、作動状態フラグを確認する(ステップS231)。作動状態フラグに「3」がセットされていれば(ステップS231:YES)、主制御CPU600aは、遊技停止処理を行い(ステップS232)、抑制装置作動管理処理を終える。なお、この遊技停止処理は、図15に示す処理と同一である。
一方、作動状態フラグに「3」がセットされていなければ(ステップS231:NO)、主制御CPU600aは、再び、作動状態フラグを確認する(ステップS233)。作動状態フラグに「2」がセットされていれば(ステップS233:YES)、主制御CPU600aは、作動状態フラグにセットされている値と、作動状態コマンドフラグにセットされている値が一致しているか否かを確認する(ステップS234)。一致していれば(ステップS234:YES)、主制御CPU600aは、その作動状態に応じたコマンド(演出制御コマンドDI_CMD)をサブ制御CPU800aへ送信済みであると判断し、抑制装置作動管理処理を終える。
一方、一致していなければ(ステップS234:NO)、主制御CPU600aは、サブ制御基板80へ、抑制装置作動警告コマンド(演出制御コマンドDI_CMD)を送信する(ステップS235)。
次いで、主制御CPU600aは、作動状態コマンドフラグに、作動状態フラグの値をセットする(ステップS236)。すなわち、この場合、作動状態コマンドフラグに、「2」がセットされることとなる。
そして、その後、主制御CPU600aは、抑制装置作動管理処理を終えることとなる。
一方、作動状態フラグに「2」がセットされていなければ(ステップS233:NO)、主制御CPU600aは、再び、作動状態フラグを確認する(ステップS237)。作動状態フラグに「1」がセットされていれば(ステップS237:YES)、主制御CPU600aは、作動状態フラグにセットされている値と、作動状態コマンドフラグにセットされている値が一致しているか否かを確認する(ステップS238)。一致していれば(ステップS238:YES)、主制御CPU600aは、その作動状態に応じたコマンド(演出制御コマンドDI_CMD)をサブ制御CPU800aへ送信済みであると判断し、抑制装置作動管理処理を終える。
一方、一致していなければ(ステップS238:NO)、主制御CPU600aは、サブ制御基板80へ、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を送信する(ステップS239)。
次いで、主制御CPU600aは、作動状態コマンドフラグに、作動状態フラグの値をセットする(ステップS240)。すなわち、この場合、作動状態コマンドフラグに、「1」がセットされることとなる。
そして、その後、主制御CPU600aは、抑制装置作動管理処理を終えることとなる。
一方、作動状態フラグに「1」がセットされていなければ(ステップS237:NO)、主制御CPU600aは、作動状態フラグにセットされている値と、作動状態コマンドフラグにセットされている値が一致しているか否かを確認する(ステップS241)。一致していれば(ステップS241:YES)、主制御CPU600aは、その作動状態に応じたコマンド(演出制御コマンドDI_CMD)をサブ制御CPU800aへ送信済みであると判断し、抑制装置作動管理処理を終える。
一方、一致していなければ(ステップS241:NO)、主制御CPU600aは、サブ制御基板80へ、抑制装置未作動状態コマンド(演出制御コマンドDI_CMD)を送信する(ステップS242)。
次いで、主制御CPU600aは、作動状態コマンドフラグに、作動状態フラグの値をセットする(ステップS243)。すなわち、この場合、作動状態フラグは、「1」~「3」でないということは「0」であるため、作動状態コマンドフラグに、「0」がセットされることとなる。
そして、その後、主制御CPU600aは、抑制装置作動管理処理を終えることとなる。
ところで、本実施形態においては、作動状態フラグとして、上記説明した(1)抑制装置(セービング機能)未作動状態の場合が「0」、(2)抑制装置(セービング機能)作動予告状態の場合が「1」、(3)抑制装置(セービング機能)作動警告状態の場合が「2」、(4)抑制装置(セービング機能)作動状態の場合が「3」とすることで管理している例を示したが、上記説明したように、差球が、91000発、92000発、93000発、94000発と増えるごとに、それに応じて、主制御CPU600aが、サブ制御基板80へ、抑制装置作動予告コマンド2(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド3(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド4(演出制御コマンドDI_CMD)、抑制装置作動予告コマンド5(演出制御コマンドDI_CMD)を送信するような場合、(3)抑制装置(セービング機能)作動警告状態の場合である「2」の状態をより細かく分けるようにすれば良い。例えば、「2」の場合は、抑制装置作動予告コマンド(演出制御コマンドDI_CMD)を送信し、「2A」の場合は、抑制装置作動予告コマンド2(演出制御コマンドDI_CMD)を送信し、「2B」の場合は、抑制装置作動予告コマンド3(演出制御コマンドDI_CMD)を送信し、「2C」の場合は、抑制装置作動予告コマンド4(演出制御コマンドDI_CMD)を送信し、「2D」の場合は、抑制装置作動予告コマンド5(演出制御コマンドDI_CMD)を送信するというように、作動状態フラグにて管理する値を増やすようにすれば良い。また、この場合、それに応じて、作動状態コマンドフラグの状態も増やすようにすれば良い。これにより、図14,図20,図22に示すフローの分岐を増やすようにすれば良い。すなわち、作動状態フラグ「2」に関する箇所に、作動状態フラグ「2A」~「2D」の処理を追加するようにすれば良い。しかして、このようにすれば、サブ制御CPU800aは、図6及び図9を参照して説明した処理を実行できることとなる。
<主制御:普通図柄処理の説明>
次に、図23を参照して、上記普通図柄処理について詳細に説明する。
図23に示すように、普通図柄処理は、先ず、ゲートからなる普通図柄始動口48(図2参照)において、遊技球の通過を検出したか否かを確認、すなわち、普通図柄始動口48の普通図柄始動口スイッチ48a(図4参照)の信号レベルを確認する(ステップS250)。そして遊技球の通過を検出した場合(ステップS250:YES)、主制御CPU600aは、普通図柄の始動保留球数が例えば4以上か否かを判断するため、普通図柄の始動保留球数が格納されている主制御RAM600c(図4参照)を確認する(ステップS251)。その際、普通図柄の始動保留球数が4未満であれば(ステップS251:≠MAX)、普通図柄の始動保留球数を1加算する(ステップS252)。その後、主制御CPU600aは、普通図柄の当否抽選に用いられる普通図柄当り判定用乱数値を普通図柄の始動保留球数が格納されている主制御RAM600c(図4参照)に格納した上で(ステップS253)、ステップS254の処理に進む。
一方、ステップS250にて、遊技球の通過を検出しなかった場合(ステップS250:NO)、ステップS251にて、普通図柄の始動保留球数が4以上であると判断した場合(ステップS251:=MAX)には、ステップS252~S253の処理は行わず、ステップS254の処理に進む。
主制御CPU600aは、ステップS254の処理に進むと、普通図柄当たり作動フラグがONに設定されているか、すなわち、普通図柄当たり作動フラグに5AHが設定されているかを確認する(ステップS254)。普通図柄当たり作動フラグに5AHが設定されていれば(ステップS254:ON)、普通図柄が当たり中であると判断し、普通図柄の表示データの更新を行った後(ステップS263)、普通図柄処理を終える。
一方、普通図柄当たり作動フラグに5AHが設定されていなければ(ステップS254:OFF)、普通図柄の挙動を示す処理状態、すなわち、普通図柄動作ステータスフラグの値を確認する(ステップS255)。そして、普通図柄動作ステータスフラグが00Hであれば、主制御CPU600aは、普通図柄の変動開始前の状態であると判断し、ステップS256に進み、普通図柄の始動保留球数が0か否かを確認する(ステップS256)。
主制御CPU600aは、普通図柄の始動保留球数が格納されている主制御RAM600c(図4参照)を確認した上で、0であると判断した場合(ステップS256:=0)は、普通図柄の表示データの更新を行った後(ステップS263)、普通図柄処理を終える。一方、0でないと判断した場合(ステップS256:≠0)は、普通図柄の始動保留球数を1減算する(ステップS257)。
その後、主制御CPU600aは、図示しない普通図柄当たり判定テーブルを用いて主制御RAM600cに格納されている普通図柄の始動保留球数に対応した乱数値の当たり判定を行う。この際、当選していれば、普通図柄当たり判定フラグに5AHをセットし、ONにする。非当選の場合は、普通図柄当たり判定フラグをOFFにする。
次いで、主制御CPU600aは、上記乱数抽選処理にて決定した抽選結果に基づいて、停止図柄(普通図柄停止図柄)を決定する(ステップS259)。これにより、主制御CPU600aは、決定した停止図柄(普通図柄停止図柄)を演出制御コマンドDI_CMDとして、サブ制御CPU800aに送信する。
次いで、主制御CPU600aは、普通図柄の変動時間を短くする普通図柄時短フラグがONに設定されているかを確認し、ONに設定されていれば、普通図柄変動タイマにそれに応じた変動時間を設定し、OFFに設定されていれば、普通図柄変動タイマに通常の変動時間を設定する処理を行う(ステップS260)。
次いで、主制御CPU600aは、普通図柄の始動保留球数に対応した普通図柄の当否抽選に用いられる乱数値が格納されている主制御RAM600c(図4参照)の記憶領域をシフトする(ステップS261)。すなわち、普通図柄の始動保留球数を最大で4個保留できるとすると、普通図柄の始動保留球数4に対応した普通図柄の当否抽選に用いられる乱数値を普通図柄の始動保留球数3に対応した普通図柄の当否抽選に用いられる乱数値が格納されていた主制御RAM600c(図4参照)にシフトし、普通図柄の始動保留球数3に対応した普通図柄の当否抽選に用いられる乱数値を普通図柄の始動保留球数2に対応した普通図柄の当否抽選に用いられる乱数値が格納されていた主制御RAM600c(図4参照)にシフトし、普通図柄の始動保留球数2に対応した普通図柄の当否抽選に用いられる乱数値を普通図柄の始動保留球数1に対応した普通図柄の当否抽選に用いられる乱数値が格納されていた主制御RAM600c(図4参照)にシフトするという処理を行う。
この処理の後、主制御CPU600aは、上記ステップS255にて用いた普通図柄動作ステータスフラグに01Hを設定し、普通図柄の始動保留球数4に対応した普通図柄の当否抽選に用いられる乱数値が格納されていた主制御RAM600c(図4参照)に00Hを設定する処理を行う(ステップS262)。
そして、主制御CPU600aは、上記ステップS262の処理を終えた後、普通図柄の表示データの更新を行い(ステップS263)、普通図柄処理を終える。
他方、主制御CPU600aは、上記ステップS255にて、普通図柄の挙動を示す処理状態、すなわち、普通図柄動作ステータスフラグの値が01Hであれば、主制御CPU600aは、普通図柄が変動中であると判断し、ステップS264に進み、普通図柄変動タイマが0か否かを確認する(ステップS264)。普通図柄変動タイマが0でなければ(ステップS164:≠0)、普通図柄の表示データの更新を行い(ステップS263)、普通図柄処理を終える。そして、普通図柄変動タイマが0であれば(ステップS264:=0)、主制御CPU600aは、上記ステップS255にて用いた普通図柄動作ステータスフラグに02Hを設定し、普通図柄の当否抽選結果を一定時間維持させるために、普通図柄変動タイマに例えば約600msの時間が設定される(ステップS265)。
主制御CPU600aは、上記ステップS265の処理を終えた後、普通図柄の表示データの更新を行い(ステップS263)、普通図柄処理を終える。
一方、主制御CPU600aは、上記ステップS255にて、普通図柄の挙動を示す処理状態、すなわち、普通図柄動作ステータスフラグの値が02Hであれば、主制御CPU600aは、普通図柄が確認時間中(普通図柄の変動が終了して停止中)であると判断し、ステップS266に進み、普通図柄変動タイマが0か否かを確認する(ステップS266)。普通図柄変動タイマが0でなければ(ステップS266:≠0)、普通図柄の表示データの更新を行い(ステップS263)、普通図柄処理を終える。そして、普通図柄変動タイマが0であれば(ステップS266:=0)、主制御CPU600aは、上記ステップS255にて用いた普通図柄動作ステータスフラグに00Hを設定し(ステップS267)、普通図柄当たり判定フラグがONに設定(5AHが設定)されているかを確認する(ステップS268)。
これにより、普通図柄当たり判定フラグがOFFに設定(5AHが設定されていない)されていれば(ステップS268:OFF)、主制御CPU600aは、普通図柄の表示データの更新を行い(ステップS263)、普通図柄処理を終える。そして、普通図柄当たり判定フラグがONに設定(5AHが設定)されていれば(ステップS268:ON)、主制御CPU600aは、ステップS254にて用いられる普通図柄当たり作動フラグをON(5AHを設定)に設定した(ステップS269)後、普通図柄処理を終える。
<主制御:特別図柄処理の説明>
次に、図24~図28を参照して、上記特別図柄処理について詳細に説明する。
図24に示すように、特別図柄処理は、先ず、特別図柄1始動口44(図2参照)の特別図柄1始動口スイッチ44a(図4参照)において、遊技球の入球(入賞球)を検出した否かを確認し(ステップS300)、さらに、特別図柄2始動口45a(図2参照)の特別図柄2始動口スイッチ45a1(図4参照)において、遊技球の入球(入賞球)を検出したか否かを確認する(ステップS301)。
<主制御:特別図柄処理:始動口チェック処理の説明>
この処理について、図25を用いて詳しく説明すると、主制御CPU600aは、特別図柄1始動口44又は特別図柄2始動口45aに遊技球が入球(入賞)したか否かを確認、すなわち、特別図柄1始動口44の特別図柄1始動口スイッチ44a又は特別図柄2始動口45aの特別図柄2始動口スイッチ45a1のレベルを確認する(ステップS350)。これにより、遊技球の入球(入賞)を検出しなければ(ステップS350:NO)、特別図柄処理を終える。
一方、遊技球の入球(入賞)を検出すれば(ステップS350:YES)、主制御CPU600aは、特別図柄の変動契機となる始動保留球数が所定数、主制御RAM600c(図4参照)に格納されているか否かを確認する(ステップS351)。その始動保留球数が、4未満であれば(ステップS351:≠MAX)、当該始動保留球数を1加算(+1)する(ステップS352)。
次いで、主制御CPU600aは、特別図柄停止の際用いられる乱数値及び変動パターン用乱数値並びに大当たり判定用乱数値を特別図柄の変動契機となる始動保留球数が格納されている主制御RAM600c(図4参照)に格納する(ステップ353)。
次いで、主制御CPU600aは、現在の遊技状態(特別図柄大当たり判定フラグがONに設定されているか否か等)を確認し、先読み禁止状態か否かを判定する(ステップS354)。そして、先読み禁止状態でなければ(ステップS354:NO)、主制御CPU600aは、上記ステップS353にて主制御RAM600c(図4参照)に格納した特別図柄の当否抽選に用いられる大当たり判定用乱数値を取得し(ステップS355)、さらに、図示しない始動口入賞時乱数判定テーブルを取得する(ステップS356)。
次いで、主制御CPU600aは、上記ステップS355にて取得した大当たり判定用乱数値及びステップS356にて取得した始動口入賞時乱数判定テーブル(図示せず)を用いて、大当たり抽選を行い、さらに、上記ステップS353にて主制御RAM600c(図4参照)に格納した特別図柄用乱数値を用いて、大当たりの種類(ランクアップボーナス当り,通常の大当り等)を決定し、変動パターン用乱数値を用いて、変動パターンを決定し、それに応じた特別図柄始動口入賞コマンドを生成する(ステップS357)。なお、この際、大当たり抽選だけでなく、小当たり抽選や特殊時短図柄の抽選も行い、上記説明した特別図柄用乱数値を用いるか、又は、特別図柄用乱数値とは別の乱数値を用いて、小当たりの種類や特殊時短図柄の種類を決定し、変動パターン用乱数値を用いて、変動パターンを決定し、それに応じた特別図柄始動口入賞コマンドを生成してもよい。
次いで、主制御CPU600aは、上記生成された特別図柄始動口入賞コマンドに応じた下位バイトの始動保留加算コマンドを生成する(ステップS358)。
一方、主制御CPU600aは、上記ステップS358の処理を終えるか、又は、上記ステップS351にて特別図柄1又は2の始動保留球数が4以上であるか(ステップS351:=MAX)、あるいは、先読み禁止状態であれば(ステップS354:YES)、増加した始動保留球数に応じた上位バイトの始動保留加算コマンドを生成する(ステップS359)。
次いで、主制御CPU600aは、上記ステップS358にて生成した下位バイトの始動保留加算コマンドと、上記ステップS359にて生成した上位バイトの始動保留加算コマンドとを結合した上で、始動保留加算コマンド(演出制御コマンドDI_CMD)として、サブ制御基板80に送信する処理を行う(ステップS360)。
<主制御:特別図柄処理の説明>
かくして、図24に示すステップS300及びステップS301の処理を終えると、主制御CPU600aは、特別図柄小当たり作動フラグがONに設定されているか、すなわち、特別図柄小当たり作動フラグに5AHが設定されているかを確認する(ステップS302)。特別図柄小当たり作動フラグに5AHが設定されていれば(ステップS302:ON)、特別図柄が小当たり中であると判断し、特別図柄の表示データの更新を行った後(ステップS308)、特別図柄処理を終える。
一方、特別図柄小当たり作動フラグに5AHが設定されていなければ(ステップS302:OFF)、特別図柄大当たり作動フラグがONに設定されているか、すなわち、特別図柄大当たり作動フラグに5AHが設定されているかを確認する(ステップS303)。特別図柄大当たり作動フラグに5AHが設定されていれば(ステップS303:ON)、特別図柄が大当たり中であると判断し、特別図柄の表示データの更新を行った後(ステップS308)、特別図柄処理を終える。
一方、特別図柄大当たり作動フラグに5AHが設定されていなければ(ステップS303:OFF)、特別図柄の挙動を示す処理状態、すなわち、特別図柄動作ステータスフラグの値を確認する(ステップS304)。より詳しく説明すると、主制御CPU600aは、特別図柄動作ステータスフラグの値が00H又は01Hであれば、特別図柄変動待機中(特別図柄の変動が行われておらず次回の変動のための待機状態であることを示す)であると判定し、特別図柄変動開始処理を行う(ステップS305)。
<主制御:特別図柄処理:特別図柄変動開始処理の説明>
この処理について、図26を用いて詳しく説明すると、主制御CPU600aは、特別図柄の変動契機となる始動保留球数が0か否かを確認する(ステップS400)。すなわち、主制御CPU600aは、主制御RAM600c(図4参照)に格納されているか否かを確認し、始動保留球数が0であると判断した場合(ステップS400:=0)、特別図柄動作ステータスフラグの値が00Hか否かを確認する(ステップS401)。特別図柄動作ステータスフラグの値が00Hであれば(ステップS401:YES)、特別図柄変動開始処理を終了する。
一方、特別図柄動作ステータスフラグの値が00Hでなければ(ステップS401:NO)、主制御CPU600aは、客待ちデモコマンドを演出制御コマンドDI_CMDとしてサブ制御基板80(図4参照)に送信する(ステップS402)。
次いで、主制御CPU600aは、特別図柄動作ステータスフラグに00Hをセットし(ステップS403)、特別図柄変動開始処理を終了する。
他方、主制御CPU600aは、始動保留球数が0でないと判断した場合(ステップS400:≠0)、始動保留球数を1減算(-1)し(ステップS404)、始動保留減算コマンドを演出制御コマンドDI_CMDとして、サブ制御基板80(サブ制御CPU800a)に送信する(ステップS305)。
次いで、主制御CPU600aは、特別図柄停止の際用いられる乱数値及び変動パターン用乱数値並びに大当たり判定用乱数値(図25のステップS353参照)が格納されている主制御RAM600c(図4参照)内の記憶領域をシフトし(ステップS406)、始動保留4に対応した特別図柄の当否抽選に用いられる乱数値が格納されていた主制御RAM600c(図4参照)内の領域に0を設定する(ステップS407)。
次いで、主制御CPU600aは、当たり判定処理を行う(ステップS408)。具体的に説明すると、主制御CPU600aは、特別図柄1の当否抽選、特別図柄2の当否抽選を実行する。そして、大当たりに当選すれば、特別図柄大当たり判定フラグに5AHを設定し、ONとし、小当たりに当選すれば、特別図柄小当たり判定フラグに5AHを設定し、ONとする。
次いで、主制御CPU600aは、上記のような当たり判定処理(ステップS408)を終えた後、特殊時短図柄当たり判定処理を行う(ステップS409)。具体的に説明すると、主制御CPU600aは、特殊時短図柄の当否抽選を実行する。そして、当選すれば、特殊時短当たり判定フラグに5AHを設定し、ONにする。
次いで、主制御CPU600aは、上記のような特殊時短図柄当たり判定処理(ステップS409)を終えた後、図25のステップS353にて主制御RAM600c(図4参照)に格納した特別図柄停止の際用いられる乱数値を用いて、特別図柄の停止図柄を生成する(ステップS410)。
次いで、主制御CPU600aは、通常状態、時短状態、潜伏確変状態、確変状態、有利遊技等の遊技状態に移行する準備を行う(ステップS411)。
次いで、主制御CPU600aは、図23のステップS353にて主制御RAM600c(図4参照)に格納した変動パターン用乱数値を用いて特別図柄の変動パターンの生成を行い、その生成された特別図柄の変動パターンの変動パターンコマンドを演出制御コマンドDI_CMDとして、サブ制御基板80(サブ制御CPU800a)に送信する(ステップS412)。
次いで、主制御CPU600aは、特別図柄変動中フラグに5AHを設定し、ON状態にする(ステップS413)。
次いで、主制御CPU600aは、液晶表示装置41に表示される特別図柄の指定を行う図柄指定コマンドを生成し(ステップ414)、その生成した図柄指定コマンドを演出制御コマンドDI_CMDとしてサブ制御基板80(サブ制御CPU800a)に送信する処理を行う(ステップS415)。
次いで、主制御CPU600aは、特別図柄動作ステータスフラグに02Hを設定し(ステップS416)、特別図柄変動開始処理を終了する。
<主制御:特別図柄処理の説明>
他方、図24に示すように、特別図柄動作ステータスフラグの値が02Hの場合、主制御CPU600aは、特別図柄変動中(特別図柄が現在変動中であることを示す)であると判定し、特別図柄変動中処理を行う(ステップS306)。
<主制御:特別図柄処理:特別図柄変動中処理の説明>
この処理について、図27を用いて詳しく説明すると、主制御CPU600aは、まず、図26のステップS412にて特別図柄変動タイマに設定された変動時間が経過したか、すなわち、0になったか否かを確認する(ステップS420)。特別図柄変動タイマが0でなければ(ステップS420:NO)、主制御CPU600aは、特別図柄変動中処理を終了する。
一方、特別図柄変動タイマが0であれば(ステップS420:YES)、主制御CPU600aは、図柄確定コマンドを演出制御コマンドDI_CMDとしてサブ制御基板80(サブ制御CPU800a)に送信する(ステップS421)。これを受けて、サブ制御CPU800aは、図柄を確定させるコマンドリストをVDP803に送信する。これを受けて、VDP803が、当該コマンドリストに基づく画像を表示させるように画像(映像)データを生成し、その生成した画像(映像)データを液晶表示装置41に送信する。これにより、液晶表示装置41には、図5(a),(d)、図6(a)のような表示がされることとなる。
次いで、主制御CPU600aは、特別図柄動作ステータスフラグに03Hを設定し、特別図柄変動中フラグに00Hを設定する。そしてさらに、主制御CPU600aは、特別図柄の当否抽選結果を一定時間維持するために、特別図柄変動タイマに例えば約500msの時間を設定する(ステップS422)。その後、主制御CPU600aは、特別図柄変動中処理を終了する。
<主制御:特別図柄処理の説明>
一方、図24に示すように、特別図柄動作ステータスフラグの値が03Hの場合、主制御CPU600aは、特別図柄確認中(特別図柄の変動が終了して停止中であることを示す)であると判定し、特別図柄確認時間中処理を行う(ステップS307)。
<主制御:特別図柄処理:特別図柄確認中処理の説明>
この処理について、図28を用いて詳しく説明すると、主制御CPU600aは、まず、図26のステップS412にて特別図柄変動タイマに設定された変動時間が経過したか、すなわち、0になったか否かを確認する(ステップS450)。特別図柄変動タイマが0でなければ(ステップS450:≠0)、主制御CPU600aは、特別図柄確認時間中処理を終了する。
一方、特別図柄変動タイマが0であれば(ステップS450:=0)、主制御CPU600aは、特別図柄動作ステータスフラグに01Hを設定し(ステップS451)、特別図柄大当たり判定フラグがONに設定されているか(5AHが設定されているか)を確認する(ステップS452)。特別図柄大当たり判定フラグがONに設定されていれば(5AHが設定されていれば)(ステップS452:YES)、特別図柄大当たり判定フラグに00Hを設定し、特別図柄大当たり作動フラグに5AHを設定し、特別図柄時短フラグに00Hを設定し、特別図柄確変フラグに00Hを設定し、後述する特別図柄時短回数カウンタ及び特別図柄確変回数カウンタに00Hを設定する処理を行う(ステップS453)。その後、主制御CPU600aは、特別図柄確認時間中処理を終了する。
他方、特別図柄大当たり判定フラグがONに設定されていなければ(5AHが設定されていなければ)(ステップS452:NO)、主制御CPU600aは、特別図柄小当たり判定フラグがONに設定されているか(5AHが設定されているか)を確認する(ステップS454)。特別図柄小当たり判定フラグがONに設定されていれば(5AHが設定されていれば)(ステップS454:YES)、特別図柄小当たり判定フラグに00Hを設定し、特別図柄小当たり作動フラグに5AHを設定する(ステップS455)。
主制御CPU600aは、上記ステップS455の処理を終えた後、又は、特別図柄小当たり判定フラグがONに設定されていなければ(5AHが設定されていなければ)(ステップS454:NO)、特別図柄時短回数カウンタの値が0か否かを確認する(ステップS456)。
特別図柄時短回数カウンタの値が0でなければ(ステップS456:NO)、特別図柄時短回数カウンタの値を1減算(-1)し(ステップS457)、主制御CPU600aは、再度、特別図柄時短回数カウンタの値が0か否かを確認する(ステップS458)。そして、特別図柄時短回数カウンタの値が0であれば(ステップS458:YES)、特別図柄時短終了時の各種設定を行う(ステップS459)。
上記ステップS459の処理を終えた後、又は、特別図柄時短回数カウンタの値が0(ステップS456:YES)、あるいは、特別図柄時短回数カウンタの値が0でなければ(ステップS458:NO)、主制御CPU600aは、特別図柄確変回数カウンタの値が0か否かを確認する(ステップS460)。特別図柄確変回数カウンタの値が0であれば(ステップS460:YES)、主制御CPU600aは、特別図柄確認時間中処理を終了する。
一方、特別図柄確変回数カウンタの値が0でなければ(ステップS460:NO)、主制御CPU600aは、特別図柄確変回数カウンタの値を1減算(-1)し(ステップS461)、再度、特別図柄確変回数カウンタの値が0か否かを確認する(ステップS462)。特別図柄確変回数カウンタの値が0でなければ(ステップS462:NO)、主制御CPU600aは、特別図柄確認時間中処理を終了する。
一方、特別図柄確変回数カウンタの値が0であれば(ステップS462:YES)、主制御CPU600aは、特別図柄時短フラグに00Hを設定し、特別図柄確変フラグに00Hを設定する処理を行い(ステップS463)、特別図柄確認時間中処理を終了する。
<主制御:特別図柄処理の説明>
かくして、図24に示す上記ステップS305、ステップS306、ステップS307のいずれかの処理を終えると、主制御CPU600aは、特別図柄の表示データの更新を行った後(ステップS308)、特別図柄処理を終える。
<主制御:使用領域外処理の説明>
次に、図29を参照して、上記使用領域外処理について詳細に説明する。
主制御CPU600aは、全レジスタを、主制御RAM600cの計測用スタック領域へ退避させ(ステップS500)、通常処理時のスタックポインタを、主制御RAM600cの計測用スタック領域へ退避させる(ステップS501)。
次いで、主制御CPU600aは、主制御CPU600a内部のスタックポインタに使用領域外用のスタックポインタアドレスをセットする(ステップS502)。
次いで、主制御CPU600aは、作動による遊技停止することを示す遊技停止フラグを確認する(ステップS503)。遊技停止フラグに5AHがセットされていれば(ステップS503:=5AH)、主制御CPU600aは、計測・設定表示装置610(図4参照)にエラー状態を示す「E」を表示させる処理を行い(ステップS504)、ステップS508の処理に移行する。
一方、遊技停止フラグに5AHがセットされていなければ(ステップS503:≠5AH)、主制御CPU600aは、賞球入賞数管理処理2を行う(ステップS505)。この賞球入賞数管理処理2では、図11に示すステップS46の賞球入賞数管理処理1にて算出した性能表示の値を計測・設定表示装置610(図4参照)に表示させる処理を行う。
次いで、主制御CPU600aは、使用領域外LED更新処理を行う(ステップS506)。
次いで、主制御CPU600aは、特別図柄1始動口スイッチ44a(図4参照)、特別図柄2始動口スイッチ45a1(図4参照)、普通図柄始動口スイッチ48a(図4参照)、右上一般入賞口スイッチ49a1(図4参照),左上一般入賞口スイッチ49b1(図4参照),左中一般入賞口スイッチ49c1(図4参照),左下一般入賞口スイッチ49d1(図4参照)、アウト口スイッチ50a(図4参照)、大入賞口スイッチ46c(図4参照)等の使用領域外スイッチ検出情報である入力フラグを、主制御RAM600cの計測用RAM領域に格納する(ステップS507)。なお、上記記載した各スイッチは、図21に示すタイマ割込み処理のスイッチ入力管理処理(S206)にて検出する同一のスイッチであるが、この処理では、差球カウント等の使用領域内での主制御RAM600cとは異なる主制御RAM600cの計測用RAM領域に格納するようにしている。これは、使用領域外処理で用いられるデータは、使用領域内の主制御RAM600cとは別に用意した使用領域外の主制御RAM600cを使用しなくてはならないためである。
次いで、主制御CPU600aは、ステップS507の処理後、又は、ステップS50の処理後、遊技機の検定試験(試射試験)において、遊技に関する各種信号を試験機に出力する際に用いられる試射試験信号を更新する処理を行い(ステップS508)、主制御RAM600cの計測用スタック領域へ退避させた通常処理時のスタックポインタを復帰させ(ステップS509)、全レジスタを復帰させる(ステップS510)。そして、主制御CPU600aは、使用領域外処理を終える。
<サブ制御基板の処理内容>
次に、図30~図34に示すサブ制御基板80の処理内容(プログラムの概要)を参照して具体的に説明する。
まず、パチンコ遊技機1に電源が投入されると、電源基板130(図4参照)から各制御基板に電源が投入された旨の電源投入信号が送られる。そしてその信号を受けて、サブ制御CPU800aは、図30に示すメイン処理を行う。
<サブ制御:メイン処理>
図30に示すように、まず、サブ制御CPU800aが、内部に設けられているレジスタを初期化すると共に、入出力ポートの入出力方向を設定する。そしてさらに、出力方向に設定された出力ポートから送信されるデータがシリアル転送となるように設定する(ステップS1000)。
次いで、サブ制御CPU800aは、上記主制御基板60(図4参照)から受信する演出制御コマンドDI_CMDを格納するサブ制御RAM800c内のメモリ領域を初期化する(ステップS1001)。そして、サブ制御CPU800aは、上記主制御基板60からの割込み信号を受信する入力ポートの割込み許可設定処理を行う(ステップS1002)。
次いで、サブ制御CPU800aは、作業領域、スタック領域として使用するサブ制御RAM800c内のメモリ領域を初期化し(ステップS1003)、音LSI801(図4参照)に初期化指令を行う。これにより、音LSI801は、その内部に設けられているレジスタを初期化する(ステップS1004)。
次いで、サブ制御CPU800aは、上・左・右・左上可動役物43a~43d(図2参照)を動作させるモータ(図示せず)に異常が発生しているか否か、そのモータ(図示せず)を動作させるモータデータが格納されるサブ制御RAM800c内のメモリ領域を確認する。異常データが格納されている場合は、サブ制御CPU800aは、当該モータを原点位置に戻す指令を行う。これにより、上・左・右・左上可動役物43a~43dは初期位置に戻ることとなる(ステップS1005)。
次いで、サブ制御CPU800aは、その内部に設けられている一定周期のパルス出力を作成する機能や時間計測の機能等を有するCTC(Counter Timer Circuit)の設定を行う。すなわち、サブ制御CPU800aは、1ms毎に定期的にタイマ割込みがかかるように上記CTCの時間定数レジスタを設定する(ステップS1006)。
次いで、サブ制御CPU800aは、サブ制御RAM800cの作業領域を対象とする8ビット加算演算であるチェックサム演算を行い(ステップS1007)、そのチェックサム演算値と、後述するメモリバックアップ(ステップS1015参照)にて算出しサブ制御RAM800c内に格納されているチェックサム演算値とを比較し、一致しているか否かの確認を行う(ステップS1008)。一致していなければ(ステップS1008:NO)、サブ制御RAM800c内の全領域を全てクリアする処理を行う(ステップS1009)。
一方、一致(ステップS1008:YES)、あるいは、上記ステップS1009の処理を終えた後、サブ制御CPU800aは、図示しないウオッチドックタイマ機能を解除し(ステップS1010)、サブ制御CPU800aやVDP803等のハードウェアのリフレッシュを実行する(ステップS1011)。
次いで、サブ制御CPU800aは、上記サブ制御RAM800c内のメモリ領域に格納されている上記主制御基板60(図4参照)から受信する演出制御コマンドDI_CMDを読み出し、その内容に応じた演出パターンを、サブ制御ROM800b内に予め格納しておいた多数の演出パターンの中から抽選により決定する(ステップS1012)。この際、客待ちデモコマンドを備えておらず、図柄確定コマンドを契機として、遊技状態が客待ちデモ状態へ移行するような場合、図柄確定コマンドを受信すると、タイマが起動し、所定時間カウントすることとなる。
次いで、サブ制御CPU800aは、後述するタイマ割込み処理にて取得した設定ボタン15又は演出ボタン装置13の入力内容を解析する処理を行う(ステップS1013)。具体的には、設定ボタン15又は演出ボタン装置13が、遊技者によって、押圧された瞬間か、放された瞬間か、あるいは、押圧されたままの状態か等の解析を行う。
次いで、サブ制御CPU800aは、上記ステップS1012にて抽選により決定した演出パターンに基づいて、上・左・右・左上可動役物43a~43d(図2参照)の動作制御や、装飾ランプ基板90(図4参照)に搭載されているLEDランプ等の装飾ランプの点灯又は消灯の制御や、スピーカ17の制御や、液晶表示装置41に表示される画像の制御を実行する(ステップS1014)。
次いで、サブ制御CPU800aは、サブ制御RAM800cの作業領域を対象とする8ビット加算演算であるチェックサム演算を行い、そのチェックサム演算値を、サブ制御RAM800c内に格納するメモリバックアップ処理を行う(ステップS1015)。
次いで、サブ制御CPU800aは、VDP803からサブ制御CPU800aに対してVSYNC割込み信号が送信されてきたか否かの確認を行う(ステップS1016)。VSYNC割込み信号が送信されて来なければ(ステップS1016:NO)、サブ制御CPU800aは、VSYNC割込み信号が送信されてくるまで、ステップS1016の処理を繰り返し実行し、VSYNC割込み信号が送信されてくると(ステップS1016:YES)、再度ステップS1007の処理に戻り、ステップS1007~S1016の処理を繰り返すこととなる。
<サブ制御:データ解析処理>
続いて、図31を参照して、メイン処理のステップS1014のデータ解析処理にて詳述する。まず、サブ制御CPU800aは、ステップS1012にて抽選により決定した演出パターンに基づき、VDP803に液晶表示装置41に表示させる画像データを生成するためのコマンドリストを生成する(ステップS1050)。この際、サブ制御CPU800aは、抑制装置作動予告コマンドを受信した場合、液晶表示装置41に抑制装置作動予告を表示させる画像データを生成するためのコマンドリストを生成する。そして、サブ制御CPU800aは、抑制装置作動警告コマンドを受信した場合、液晶表示装置41に抑制装置作動警告を表示させる画像データを生成するためのコマンドリストを生成する。さらに、サブ制御CPU800aは、遊技停止コマンドを受信した場合、液晶表示装置41に遊技停止を表示させる画像データを生成するためのコマンドリストを生成する。そしてさらに、サブ制御CPU800aは、抑制装置未作動状態コマンドを受信した場合、液晶表示装置41に表示されている抑制装置作動に関する表示を消去させる画像データを生成するためのコマンドリストを生成する。なお、抑制装置作動予告コマンドを受信してから所定期間以内に、抑制装置未作動状態コマンド、又は、抑制装置作動予告コマンドを受信しても、コマンドに応じたコマンドリストは生成しないようにする。
一方、抑制装置作動予告コマンド2、抑制装置作動予告コマンド3、抑制装置作動予告コマンド4、抑制装置作動予告コマンド5を受信した場合は、それぞれに応じたコマンドリストが生成されることとなる。
他方、サブ制御CPU800aは、先読みコマンドを受信した場合、その前後で、抑制装置作動コマンド、抑制装置作動警告コマンドなどの遊技停止が近づいている、又は、遊技停止コマンドを受信している場合などに、状態に応じて先読み演出や昇格演出を制限するコマンドリストを生成するか、又は、生成を中止するようにする。具体例を用いて説明すると、サブ制御CPU800aは、大当たり開始ファンファーレコマンドを受信した際、既に受信している抑制装置作動予告コマンドの内容を確認する。
サブ制御CPU800aは、受信した大当たり開始ファンファーレコマンドが、1000発以上の賞球を得られる大当たりか否かを確認する。ここでは、10R大当たり(1300発の差球が増加する可能性がある大当たり)、又は、4R大当たり(400発の差球が増加する可能性がある大当たり)の2種類の大当たりがあることとし、サブ制御CPU800aは、受信した大当たり開始ファンファーレコマンドが、10R大当たりなのか、4R大当たりなのかを確認することとなる。
次いで、サブ制御CPU800aは、10R大当たりであることを確認すると、大当たり中に抑制装置(セービング機能)が作動するおそれがあることから、大当たりとなった変動開始時の変動パターンコマンド受信時、又は、大当たり開始ファンファーレコマンドを受信して、10R大当たりであることが確認された時に、大当たり中の昇格演出、又は、保留連演出を実行しない、又は、抽選を行わないようにする。これにより、サブ制御CPU800aは、大当たりラウンド中は、通常の演出を行うこととなる。具体的には、図9(b)に示すように、液晶表示装置41に、「大当たり!」(画像P30参照)という文字に代え、「やったね!」というセリフを言っているキャラクタが表示(画像P33参照)されると共に、液晶表示装置41の画面左上隅には、大当たり遊技のラウンドを示す「Round1」(画像P34参照)という表示がされる。すなわち、通常のラウンド演出を実行することで、いつ抑制装置(セービング機能)が作動しても良い状態にしておく。
次いで、サブ制御CPU800aは、大当たり終了エンディングコマンドを受信すると、大当たり後に遊技停止することに合わせた演出を行うこととなる。例えば、図9(d)に示すように、液晶表示装置41に「Congratulation」という文字が表示(画像P36参照)されることとなる。しかして、このようにすれば、遊技者は、全ての利益を獲得したという満足感が得られ、遊技の興趣を向上させることができる。
かくして、このように、大当たり中の昇格演出、又は、保留連演出を実行しないようにすれば、得られるはずの利益を遊技者に報知していないため、得られなかったことによる遊技者の遊技の興趣の低下や、トラブルの原因を無くすことができる。それゆえ、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
一方、サブ制御CPU800aは、不正検出基板55にて遊技者の不正行為を検出した場合と、抑制装置(セービング機能)による遊技停止とが複合した場合、液晶表示装置41に不正によるエラーと遊技停止を示す内容とを共に表示させる画像データを生成するためのコマンドリストを生成する。
次いで、サブ制御CPU800aは、上記決定した演出パターンに基づき、光に関する制御信号を生成し、サブ制御RAM800c内に格納する処理を行う。この際、遊技停止となった場合、装飾ランプの輝度を下げるか、又は、装飾ランプを全消灯、或いは、一部を点灯させて残りを全消灯させることができる。これにより、電力消費を抑えることができる。
また、サブ制御CPU800aは、上記決定した演出パターンに基づき、上・左・右・左上可動役物43a~43dの動作内容を決定し、その決定した動作内容に応じた可動役物装置43のモータ(図示せず)のモータデータを生成する。
さらに、サブ制御CPU800aは、上記決定した演出パターンに基づき、音に関する制御信号を生成する(ステップS1051)。この際、不正検出基板55にて遊技者の不正行為を検出した場合と、抑制装置(セービング機能)による遊技停止とが複合した場合、不正によるエラー報知を優先して行うような制御信号を生成する。そして、この生成された音に関する制御信号は、サブ制御CPU800aにて、音LSI801に送信される。これを受けて、音LSI801は、送信された制御信号に対応する音データを遊技ROM805又は音RAM802より読み出し、スピーカ17に出力する。これにより、スピーカ17から発せられる音声は、不正によるエラー報知を優先して行うこととなる。
かくして、サブ制御CPU800aは、図48に示すステップS1012にて抽選により決定した演出パターンに基づくデータを全て生成し終えるまで(ステップS1052:NO)、上記ステップS1050及びステップS1051の処理を繰り返し行い、上記データを全て生成し終えると(ステップS1052:YES)、ステップS1053の処理に進む。
次いで、サブ制御CPU800aは、上記ステップS1051にてサブ制御RAM800c内に格納した内容及び図30に示すステップS1013にて処理した設定ボタン15又は演出ボタン装置13の入力内容に基づき、ボタン有効時処理を行う(ステップS1053)。
<サブ制御:コマンド受信割込み処理>
続いて、図32を参照して、このようなメイン処理の実行中に、主制御基板60より演出制御コマンドDI_CMD及び割込み信号が送信されてきた際の処理について説明する。
図32に示すように、サブ制御CPU800aは、上記割込み信号を受信した際、各レジスタの内容をサブ制御RAM800c内のスタック領域に退避させる退避処理を実行する(ステップS1100)。その後、サブ制御CPU800aは、演出制御コマンドDI_CMDを受信した入力ポートのレジスタを読み出し(ステップS1101)、サブ制御RAM800c内のコマンド送受信用メモリ領域のアドレス番地を示すポインタを算出する(ステップS1102)。
そしてその後、サブ制御CPU800aは、再度、演出制御コマンドDI_CMDを受信した入力ポートのレジスタを読み出し(ステップS1103)、ステップS1101にて読み出した値とステップS1103にて読み出した値が一致しているか否かを確認する。一致していなければ(ステップS1104:NO)、ステップS1107に進み、一致していれば(ステップS1104:YES)、上記算出したポインタに対応するアドレス番地に、主制御基板60より受信した演出制御コマンドDI_CMDを格納する(ステップS1105)。なお、この格納された演出制御コマンドDI_CMDが、図30に示すステップS1012の処理の際、サブ制御CPU800aに読み出されることとなる。
次いで、サブ制御CPU800aは、サブ制御RAM800c内のコマンド送受信用メモリ領域のアドレス番地を示すポインタを更新し(ステップS1106)、ステップS1100の処理で退避しておいたレジスタを復帰させる(ステップS1107)。これにより、図30に示すメイン処理に戻ることとなる。
<サブ制御:タイマ割込み処理>
続いて、図33を参照して、メイン処理のステップS1006(図30参照)の処理にて設定した、1ms毎のタイマ割込みが発生した際の処理について説明する。
図33に示すように、サブ制御CPU800aは、1ms毎のタイマ割込みが発生した際、各レジスタの内容をサブ制御RAM800c内のスタック領域に退避させる退避処理を実行する(ステップS1150)。
次いで、サブ制御CPU800aは、設定ボタン15のデータや演出ボタン装置13のデータや可動役物装置43のモータデータ等を2度取得し(ステップS1151)、その2度取得したデータが一致しているか否かを確認する(ステップS1152)。データが一致していなければ(ステップS1152:NO)、サブ制御CPU800aは、データが一致するまでステップS1151の処理を繰り返し、一致していれば(ステップS1152:YES)、一致したデータをサブ制御RAM800c内に格納する(ステップS1153)。
次いで、サブ制御CPU800aは、設定ボタン15又は演出ボタン装置13からの信号を受信する(ステップS1154)。この受信した信号が、図30に示すステップS1013のボタン解析処理にて解析されることとなる。
次いで、サブ制御CPU800aは、図31に示すステップS1051にてサブ制御RAM800c内に記憶した光に関する制御信号を装飾ランプ基板90(図4参照)に送信すると共に、識別ランプ装置51A(図2参照)を点灯又は消灯させるのに必要な制御信号も送信されることとなる(ステップS1155)。これにより、装飾ランプが、点灯又は消灯しランプ演出が実行されることとなる。
次いで、サブ制御CPU800aは、ステップS1150の処理で退避しておいたレジスタを復帰させる(ステップS1156)。これにより、図30に示すメイン処理に戻ることとなる。
<サブ制御:コマンドリスト>
ここで、図31に示すステップS1050にて生成したコマンドリストについて、図34を参照して詳しく説明する。
このコマンドリストは、VDP803に対する指令を列記したコマンド列であるが、その記載内容や記載順序が、動画の描画を指示する場合と、静止画の描画を指示する場合とでやや相違する。
動画の描画をVDP803に指示する場合は、図34(a)の初期コマンドリストと、図34(b)の定常コマンドリストの構成となる。
図34(a)に示すように、サブ制御CPU800aは、先ず、フレームバッファ領域が設定されているDDR2SDRAM804のメモリ領域、並びに、DDR2SDRAM804の動画データを格納するメモリ領域の設定を行うコマンドを生成する(ステップS1200)。
次いで、動画のデコードを指示するコマンドを生成する(ステップS1201)。具体的には、どの動画圧縮データをデコードするかの指示であり、該当する動画が格納されている図4に示す遊技ROM805のCGデータ記憶領域のアドレス番地やその動画のフレーム数などと共に指示する。
次いで、終了処理用コマンドを記入して初期コマンドリストの生成を終える(ステップS1202)。
続いて、サブ制御CPU800aは、図34(b)に示す定常コマンドリストを生成する。
この定常コマンドリストは、図34(b)に示すように、動画の描画指示で構成されており、上記初期コマンドリストにおいて、デコードした動画データに関し、どのフレーム番号のデコードデータを、液晶表示装置41のどの座標位置に描画するかのコマンドを生成する(ステップS1203)。次いで、終了処理用コマンドを記入して定常コマンドリストの生成を終える(ステップS1204)。
一方、静止画の描画をVDP803に指示する場合、図34(c)に示すとおり、サブ制御CPU800aは、先ず、フレームバッファ領域が設定されているDDR2SDRAM804のメモリ領域、並びに、静止画データを格納する内蔵VRAM(図示せず)のメモリ領域の設定を行うコマンドを生成する(ステップS1210)。
次いで、静止画のデコードを指示するコマンドを生成する(ステップS1211)。具体的には、どの静止画圧縮データをデコードするかの指示であり、該当する静止画が格納されている図4に示す遊技ROM805のCGデータ記憶領域のアドレス番地やデータサイズなどと共に指示する。
次いで、デコードされた静止画データを、液晶表示装置41のどの座標位置に、どのような態様(回転角度や縮小拡大等)で描画するかのコマンドを生成する(ステップS1212)。次いで、終了処理用コマンドを記入して静止画に関するコマンドリストの生成を終える(ステップS1213)。
かくして、このような動画に関するコマンドリスト並びに静止画に関するコマンドリストは、VDP803(図4参照)に送信され、適宜処理された上で、液晶表示装置41に送信される。これにより、液晶表示装置41に所望の画像が表示されることとなる。具体例を示すと、図5~図9に示すような表示がされることとなる。
しかして、以上説明した本実施形態によれば、遊技者が獲得する遊技価値数が一定以上になって強制的に遊技を終了することになっても、強制終了までの制御及び強制終了後の制御について、他の遊技に関わる制御に影響を及ぼすことなく適切な処理を行うことができる。
なお、本実施形態においては、差球カウンタに初期値として、10万発を設定する例を示したが、それに限らず、差球カウンタに初期値として、0を設定するようにしても良い。このようにすれば、上記説明した差球とは、「遊技者に払い出された遊技球数」-「遊技者が発射ハンドル16を用いて遊技領域40に発射した遊技球数」=「遊技者が実際に獲得した賞球数(遊技者の手元に実際に存在する賞球数)」であることから、遊技者が実際に獲得した最大差球数となり、マイナス状態が続いても、極端に遊技者が獲得した賞球が増加した場合には遊技を停止させることが可能となる。
ところで、差球カウンタに初期値として、0を設定する場合には、差球カウンタが0の場合、遊技者が発射ハンドル16を用いて遊技領域40に発射した球があっても、差球カウンタを減算させないようにする。すなわち、図20に示すステップS184にて、差球カウンタが0の場合、アウト数を減算しないようにする。そして、図20に示すステップS185にて、差球カウンタに賞球数を加算し、もって、差球カウンタが、差球が95000発を超えたことを示す値(差球カウンタ>95000)となった際、遊技を停止させるようにすれば良い。
また、本実施形態においては、音LSI801と、VDP803と、を別々に構成する例を示したが、ワンチップとして一体化させても良い。
また、本実施形態においては、サブワンチップマイコン800内にサブ制御CPU800aを設ける例を示したが、それに限らず、VDP803内にサブ制御CPU800aを設けるようにしても良い。