以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例である第1種パチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機を正面からみた正面図、図2は遊技盤の前面を示す正面図である。
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板と、それらに取り付けられる種々の部品(後述する遊技盤を除く。)とを含む構造体である。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球を貯留する余剰球受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には遊技領域7が形成されている。
遊技領域7の中央付近には、それぞれが識別情報としての図柄を可変表示する複数の可変表示部を含む可変表示装置(特別可変表示部)9が設けられている。可変表示装置9には、例えば「左」、「中」、「右」の3つの可変表示部(図柄表示エリア)がある。また、可変表示装置9には、始動入賞口14に入った有効入賞球数すなわち始動入賞記憶数を表示する4つの特別図柄始動記憶表示エリア(始動記憶表示エリア)18が設けられている。有効始動入賞(始動入賞記憶数が4未満のときの始動入賞)がある毎に、表示色を変化させる(例えば青色表示から赤色表示に変化させる)始動記憶表示エリア18を1増やす。そして、可変表示装置9の可変表示が開始される毎に、表示色が変化している始動記憶表示エリア18を1減らす(すなわち表示色をもとに戻す)。この例では、図柄表示エリアと始動記憶表示エリア18とが区分けされて設けられているので、可変表示中も始動入賞記憶数が表示された状態とすることができる。なお、始動記憶表示エリア18を図柄表示エリアの一部に設けるようにしてもよく、この場合には、可変表示中は始動入賞記憶数の表示を中断するようにすればよい。また、この例では、始動記憶表示エリア18を可変表示装置9に設けるようにしているが、始動入賞記憶数を表示する表示器(特別図柄始動記憶表示器)を可変表示装置9とは別個に設けるようにしてもよい。
可変表示装置9の下方には、始動入賞口14としての可変入賞球装置15が設けられている。始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ14aによって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。開閉板20は大入賞口を開閉する手段である。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(V入賞領域)に入った入賞球はV入賞スイッチ22で検出され、開閉板20からの入賞球はカウントスイッチ23で検出される。遊技盤6の背面には、大入賞口内の経路を切り換えるためのソレノイド21Aも設けられている。
ゲート32に遊技球が入賞しゲートスイッチ32aで検出されると、普通図柄始動入賞記憶が上限に達していなければ、所定の乱数値が抽出される。そして、普通図柄表示器10において表示状態が変化する可変表示を開始できる状態であれば、普通図柄表示器10の表示の可変表示が開始される。普通図柄表示器10において表示状態が変化する可変表示を開始できる状態でなければ、普通図柄始動入賞記憶の値が1増やされる。普通図柄表示器10の近傍には、普通図柄始動入賞記憶数を表示する4つのLEDによる表示部を有する普通図柄始動記憶表示器41が設けられている。ゲート32への入賞がある毎に、普通図柄始動記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。なお、特別図柄と普通図柄とを一つの可変表示装置で可変表示するように構成することもできる。その場合には、特別可変表示部と普通可変表示部とは1つの可変表示装置で実現される。
この実施の形態では、左右のランプ(点灯時に図柄が視認可能になる)が交互に点灯することによって可変表示が行われ、可変表示は所定時間(例えば29.2秒)継続する。そして、可変表示の終了時に左側のランプが点灯すれば当りとなる。当りとするか否かは、ゲート32に遊技球が入賞したときに抽出された乱数の値が所定の当り判定値と一致したか否かによって決定される。普通図柄表示器10における可変表示の表示結果が当りである場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になって遊技球が入賞しやすい状態になる。すなわち、可変入賞球装置15の状態は、普通図柄の停止図柄が当り図柄である場合に、遊技者にとって不利な状態から有利な状態に変化する。
さらに、確変状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数とのうちの一方または双方が高められ、遊技者にとってさらに有利になる。また、確変状態等の所定の状態では、普通図柄表示器10における可変表示期間(変動時間)が短縮されることによって、遊技者にとってさらに有利になるようにしてもよい。
遊技盤6には、複数の入賞口29,30,33,39が設けられ、遊技球の入賞口29,30,33への入賞は、それぞれ入賞口スイッチ29a,30a,33a,39aによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cが設けられている。さらに、遊技領域7における各構造物(大入賞口等)の周囲には装飾LEDが設置されている。天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cおよび装飾用LEDは、遊技機に設けられている装飾発光体の一例である。
そして、この例では、左枠ランプ28bの近傍に、賞球残数があるときに点灯する賞球ランプ51が設けられ、天枠ランプ28aの近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
打球発射装置から発射された遊技球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が始動入賞口14に入り始動口スイッチ14aで検出されると、図柄の可変表示を開始できる状態であれば、可変表示装置9において特別図柄が可変表示(変動)を始める。図柄の可変表示を開始できる状態でなければ、始動入賞記憶数を1増やす。
可変表示装置9における特別図柄の可変表示は、一定時間が経過したときに停止する。停止時の特別図柄の組み合わせが大当り図柄(特定表示態様)であると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球がV入賞領域に入賞しV入賞スイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
停止時の可変表示装置9における特別図柄の組み合わせが確率変動を伴う大当り図柄(確変図柄)の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、確変状態という遊技者にとってさらに有利な状態となる。
次に、パチンコ遊技機1の裏面の構造について図3を参照して説明する。図3は、遊技機を裏面から見た背面図である。
図3に示すように、遊技機裏面側では、可変表示装置9を制御する図柄制御基板80を含む可変表示制御ユニット49、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37が設置されている。さらに、遊技盤6に設けられている各種装飾LEDおよび普通図柄始動記憶表示器41、装飾ランプ25、枠側に設けられている天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、賞球ランプ51および球切れランプ52を点灯制御するランプ制御手段が搭載されたランプ制御基板35、スピーカ27からの音発生を制御する音制御手段が搭載された音制御基板70も設けられている。また、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910や発射制御基板91が設けられている。
遊技機裏面において、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および球貸し個数信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤34が設置されている。
さらに、各基板(主基板31や払出制御基板37等)に含まれる記憶内容保持手段(例えば、電力供給停止時にもその内容を保持可能な変動データ記憶手段すなわちバックアップRAM)に記憶されたバックアップデータをクリアするための操作手段としてのクリアスイッチ921が搭載されたスイッチ基板190が設けられている。スイッチ基板190には、クリアスイッチ921と、主基板31等の他の基板と接続されるコネクタ922が設けられている。
貯留タンク38に貯留された遊技球は誘導レールを通り、賞球ケース40Aで覆われた球払出装置に至る。球払出装置の上部には、遊技媒体切れ検出手段としての球切れスイッチ187が設けられている。球切れスイッチ187が球切れを検出すると、球払出装置の払出動作が停止する。球切れスイッチ187は遊技球通路内の遊技球の有無を検出するスイッチであるが、貯留タンク38内の補給球の不足を検出する球切れ検出スイッチ167も誘導レールにおける上流部分(貯留タンク38に近接する部分)に設けられている。球切れ検出スイッチ167が遊技球の不足を検知すると、遊技機設置島に設けられている補給機構から遊技機に対して遊技球の補給が行われる。
入賞にもとづく景品としての遊技球や球貸し要求にもとづく遊技球が多数払い出されて打球供給皿3が満杯になり、さらに遊技球が払い出されると、遊技球は余剰球受皿4に導かれる。さらに遊技球が払い出されると、満タンスイッチ48(図3において図示せず)がオンする。その状態では、球払出装置内の払出モータの回転が停止して球払出装置の動作が停止するとともに発射装置の駆動も停止する。
図4は、主基板31における回路構成の一例を示すブロック図である。なお、図4には、払出制御基板37、ランプ制御基板35、音制御基板70、発射制御基板91および図柄制御基板80も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する基本回路53と、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、満タンスイッチ48、球切れスイッチ187、賞球カウントスイッチ301Aおよびクリアスイッチ921からの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16、開閉板20を開閉するソレノイド21および大入賞口内の経路を切り換えるためのソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
なお、図4には示されていないが、カウントスイッチ短絡信号もスイッチ回路58を介して基本回路53に伝達される。また、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、満タンスイッチ48、球切れスイッチ187、賞球カウントスイッチ301A等のスイッチは、センサと称されているものでもよい。すなわち、遊技球を検出できる遊技媒体検出手段(この例では遊技球検出手段)であれば、その名称を問わない。スイッチと称されているものがセンサと称されているもの等でもよいこと、すなわち、スイッチが遊技媒体検出手段の一例であることは、他の実施の形態でも同様である。
また、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示装置9における図柄の可変表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部装置に対して出力する情報出力回路64が搭載されている。
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段(変動データを記憶する手段)としてのRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。なお、CPU56はROM54に格納されているプログラムに従って制御を実行するので、以下、CPU56が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているCPUについても同様である。
また、RAM(CPU内蔵RAMであってもよい。)55の一部または全部が、電源基板910において作成されるバックアップ電源によってバックアップされているバックアップRAMである。すなわち、遊技機に対する電力供給が停止しても、所定期間は、RAM55の一部または全部の内容は保存される。
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている普通図柄始動記憶表示器41および装飾ランプ25の表示制御を行うとともに、枠側に設けられている天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、賞球ランプ51および球切れランプ52の表示制御を行う。なお、各ランプはLEDその他の種類の発光体でもよく、この実施の形態および他の実施の形態で用いられているLEDも他の種類の発光体でもよい。すなわち、ランプやLEDは発光体の一例である。また、特別図柄を可変表示する可変表示装置9および普通図柄を可変表示する普通図柄表示器10の表示制御は、図柄制御基板80に搭載されている表示制御手段によって行われる。
各制御手段は遊技機に設けられている電気部品の制御を行うので、以下、各制御手段を電気部品制御手段といい、電気部品制御手段が搭載された基板を電気部品制御基板ということがある。電気部品とは、遊技機に設けられている部品(機構部品や回路等)であって電気的に動作するものである。電気部品制御手段として、例えば、電気部品としての球払出装置を制御する払出制御手段、電気部品としての演出用の可変表示装置の制御を行う表示制御手段、電気部品としての演出制御用の発光体(ランプやLED)の制御を行うランプ制御手段、電気部品としての演出用のスピーカからの音発生の制御を行う音制御手段がある。また、演出用の電気部品を制御する表示制御手段、ランプ制御手段、音制御手段等を演出制御手段ということがある。
図5は、図柄制御基板80内の回路構成を、可変表示装置9の一実現例であるLCD(液晶表示装置)82、普通図柄表示器10、主基板31の出力ポート(ポート0,2)570,572および出力バッファ回路620,62Aとともに示すブロック図である。出力ポート(出力ポート2)572からは8ビットのデータが出力され、出力ポート570からは1ビットのストローブ信号(INT信号)が出力される。また、この実施の形態では、コマンドデータをパラレル通信(この例では8ビットパラレル)によって送信する構成としているが、シリアル通信によってやりとりされるようにしてもよい。
表示制御用CPU101は、制御データROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して表示制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、表示制御用CPU101がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと表示制御用CPU101との間に、I/Oポートが設けられる。
そして、表示制御用CPU101は、受信した表示制御コマンドに従って、LCD82に表示される画面の表示制御を行う。具体的には、表示制御コマンドに応じた指令をVDP(ビデオディスプレイプロセッサ)103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
なお、図5には、VDP103をリセットするためのリセット回路83、VDP103に動作クロックを与えるための発振回路85、および使用頻度の高い画像データを格納するキャラクタROM86も示されている。キャラクタROM86に格納される使用頻度の高い画像データとは、例えば、LCD82に表示される人物、動物、または、文字、図形もしくは記号等からなる画像などである。
入力バッファ回路105A,105Bは、主基板31から図柄制御基板80へ向かう方向にのみ信号を通過させることができる。従って、図柄制御基板80側から主基板31側に信号が伝わる余地はない。すなわち、入力バッファ回路105A,105Bは、入力ポートともに不可逆性情報入力手段を構成する。図柄制御基板80内の回路に不正改造が加えられても、不正改造によって出力される信号が主基板31側に伝わることはない。
高周波信号を遮断するノイズフィルタ107として、例えば3端子コンデンサやフェライトビーズが使用されるが、ノイズフィルタ107の存在によって、表示制御コマンドに基板間でノイズが乗ったとしても、その影響は除去される。また、主基板31のバッファ回路620,62Aの出力側にもノイズフィルタを設けてもよい。
なお、主基板31とランプ制御基板35との間のランプ制御コマンドの信号送受信部分の構成や、主基板31と音制御基板70との間の音制御コマンドの信号送信部分の構成は、上述した図5に示した主基板31と図柄制御基板80との間の表示制御コマンドの信号送受信部分と同様に構成される。
次に遊技機の動作について説明する。図6は、主基板31における遊技制御手段(CPU56およびROM,RAM等の周辺回路)が実行するメイン処理を示すフローチャートである。遊技機に対して電源が投入され、リセット端子の入力レベルがハイレベルになると、CPU56は、ステップS1以降のメイン処理を開始する。メイン処理において、CPU56は、まず、必要な初期設定を行う。
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。
この実施の形態で用いられるCPU56は、I/Oポート(PIO)およびタイマ/カウンタ回路(CTC)も内蔵している。また、CTCは、2本の外部クロック/タイマトリガ入力CLK/TRG2,3と2本のタイマ出力ZC/TO0,1を備えている。
この実施の形態で用いられているCPU56には、マスク可能な割込のモードとして以下の3種類のモードが用意されている。なお、マスク可能な割込が発生すると、CPU56は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
割込モード0:割込要求を行った内蔵デバイスがRST命令(1バイト)またはCALL命令(3バイト)をCPUの内部データバス上に送出する。よって、CPU56は、RST命令に対応したアドレスまたはCALL命令で指定されるアドレスの命令を実行する。リセット時に、CPU56は自動的に割込モード0になる。よって、割込モード1または割込モード2に設定したい場合には、初期設定処理において、割込モード1または割込モード2に設定するための処理を行う必要がある。
割込モード1:割込が受け付けられると、常に0038(h)番地に飛ぶモードである。
割込モード2:CPU56の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた2バイトで示されるアドレスである。従って、任意の(飛び飛びではあるが)偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
よって、割込モード2に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード1とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップS2において、CPU56は割込モード2に設定される。
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチ921の出力信号の状態を1回だけ確認する(ステップS7)。その確認においてオンを検出した場合には、CPU56は、通常の初期化処理を実行する(ステップS11〜ステップS15)。
クリアスイッチ921がオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS8)。そのような保護処理が行われていないことを確認したら、CPU56は初期化処理を実行する。バックアップRAM領域にバックアップデータがあるか否かは、例えば、電力供給停止時処理においてバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS9)。ステップS9では、算出したチェックサムと、電力供給停止時処理にて同一の処理によって算出され保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理を行う(ステップS10)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。
なお、この実施の形態では、バックアップフラグとチェックデータとの双方を用いてバックアップRAM領域のデータが保存されているか否かを確認しているが、いずれか一方のみを用いてもよい。すなわち、バックアップフラグとチェックデータとのいずれかを、状態復旧処理を実行するための契機としてもよい。
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS11)。また、所定の作業領域(例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、特別図柄プロセスフラグ、払出コマンド格納ポインタ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグ)に初期値を設定する作業領域設定処理を行う(ステップS12)。さらに、球払出装置97からの払出が可能であることを指示する払出許可状態指定コマンド(以下、払出可能状態指定コマンドという。)を払出制御基板37に対して送信する処理を行う(ステップS13)。また、他のサブ基板(ランプ制御基板35、音制御基板70、図柄制御基板80)を初期化するための初期化コマンドを各サブ基板に送信する処理を実行する(ステップS14)。初期化コマンドとして、可変表示装置9に表示される初期図柄を示すコマンド(図柄制御基板80に対して)や賞球ランプ51および球切れランプ52の消灯を指示するコマンド(ランプ制御基板35に対して)等がある。
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS15)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
初期化処理の実行(ステップS11〜S15)が完了すると、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)が繰り返し実行される。表示用乱数更新処理および初期値用乱数更新処理が実行されるときには割込禁止状態とされ(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態とされる(ステップS19)。表示用乱数とは、可変表示装置9に表示される図柄を決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。初期値用乱数とは、大当りとするか否かを決定するための乱数を発生するためのカウンタ(大当り決定用乱数発生カウンタ)等のカウント値の初期値を決定するための乱数である。後述する遊技制御処理において、大当り決定用乱数発生カウンタのカウント値が1周すると、そのカウンタに初期値が設定される。
なお、表示用乱数更新処理が実行されるときには割込禁止状態とされるのは、表示用乱数更新処理が後述するタイマ割込処理でも実行されることから、タイマ割込処理における処理と競合してしまうのを避けるためである。すなわち、ステップS17の処理中にタイマ割込が発生してタイマ割込処理中で表示用乱数を発生するためのカウンタのカウント値を更新してしまったのでは、カウント値の連続性が損なわれる場合がある。しかし、ステップS17の処理中では割込禁止状態にしておけば、そのような不都合が生ずることはない。
タイマ割込が発生すると、CPU56は、レジスタの退避処理(ステップS20)を行った後、図7に示すステップS21〜S31の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ24a等のスイッチの検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(ステップS23)。CPU56は、さらに、表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(ステップS24)。
図8は、各乱数を示す説明図である。各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:大当りを発生させるか否か決定する(大当り判定用)
(2)ランダム2−1〜2−3(ランダム2):特別図柄の左中右のはずれ図柄決定用(特別図柄左中右)
(3)ランダム3:大当りを発生させる特別図柄の組合せを決定する(大当り図柄決定用)
(4)ランダム4:特別図柄の変動パターンを決定する(変動パターン決定用)
(5)ランダム5:大当りを発生させない場合にリーチとするか否かを決定する(リーチ判定用)
(6)ランダム6:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(7)ランダム7:ランダム1の初期値を決定する(ランダム1初期値決定用)
(8)ランダム8:ランダム6の初期値を決定する(ランダム6初期値決定用)
図7に示された遊技制御処理におけるステップS23では、CPU56は、(1)の大当り判定用乱数、(3)の大当り図柄決定用乱数、および(6)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数または初期値用乱数である。なお、遊技効果を高めるために、上記(1)〜(8)の乱数以外の普通図柄に関する乱数等も用いられている。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
次いで、CPU56は、特別図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する表示制御コマンドをRAM55の所定の領域に設定して表示制御コマンドを送出する処理を行う(普通図柄コマンド制御処理:ステップS28)。
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動指令を行う(ステップS30)。可変入賞球装置15または開閉板20を開状態または閉状態としたり、大入賞口内の遊技球通路を切り替えたりするために、ソレノイド回路59は、駆動指令に応じてソレノイド16,21,21Aを駆動する。
そして、CPU56は、入賞口スイッチ29a,30a,33a,39aの検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS32)。具体的には、入賞口スイッチ29a,30a,33a,39aの何れかがオンしたことにもとづく入賞検出に応じて、払出制御基板37に賞球個数を示す払出制御コマンドを出力する。払出制御基板37に搭載されている払出制御用CPU371は、賞球個数を示す払出制御コマンドに応じて球払出装置97を駆動する。その後、レジスタの内容を復帰させ(ステップS32)、割込許可状態に設定する(ステップS33)。
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
図9は、この実施の形態で使用される左図柄、中図柄および右図柄を示す説明図である。この実施の形態では、「1」〜「12」の図柄が、可変表示装置9において可変表示(変動)される。「1」〜「12」の図柄には、図柄番号0〜11の図柄番号が付されている。また、可変表示装置9における最終停止図柄(確定図柄)が揃った場合に大当りが発生する。そして、奇数の図柄で揃った場合に、大当りが発生する確率が向上した状態である高確率状態(確変状態)に変化する。
図10は、CPU56が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。図10に示す特別図柄プロセス処理は、図7のフローチャートにおけるステップS25の具体的な処理である。CPU56は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)および入賞確認処理(ステップS311)を行った後に、内部状態に応じて、ステップS301〜S307のうちのいずれかの処理を行う。変動短縮タイマは、特別図柄の変動時間が短縮される場合に、変動時間を設定するためのタイマである。
入賞確認処理(ステップS311):始動入賞口14に打球入賞して始動口スイッチ14aがオンするのを待つ。始動口スイッチ14aがオンすると、始動入賞記憶数が満タンでなければ、始動入賞記憶数を+1するとともに、大当り決定用乱数等の各乱数を抽出し、大当りとするかはずれとするか等の判定を行う。
停止図柄設定処理(ステップS301):特別図柄の可変表示を開始できる状態になるのを待つ。特別図柄の可変表示が開始できる状態になると、始動入賞記憶数を確認する。始動入賞記憶数が0でなければ、図柄の変動パターンを決定するとともに、左中右図柄の停止図柄を決定する。停止図柄は、大当り、はずれ、リーチなどの特別図柄変動待ち処理(ステップS311)での判定結果や、可変表示開始時の制御状態にもとづいて決定される。処理を終えると、内部状態(特別図柄プロセスフラグ)をステップS302に移行するように更新する。
全図柄変動開始処理(ステップS302):可変表示装置9において全図柄が変動開始されるように制御する。このとき、図柄制御基板80に対して、左中右最終停止図柄と変動態様(変動パターン)を指令する情報とが送信される。処理を終えると、内部状態(特別図柄プロセスフラグ)をステップS303に移行するように更新する。
全図柄停止待ち処理(ステップS303):所定時間(ステップS310の変動短縮タイマで示された時間)が経過すると、可変表示装置9において表示される全図柄が停止される。そして、停止図柄が大当り図柄の組み合わせである場合には、内部状態(特別図柄プロセスフラグ)をステップS304に移行するように更新する。そうでない場合には、内部状態をステップS301に移行するように更新する。
大入賞口開放開始処理(ステップS304):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド21を駆動して大入賞口を開放する。また、プロセスタイマによって大入賞口開放中処理の実行時間を設定し、大当りフラグ(大当り中であることを示すフラグ)のセットを行う。処理を終えると、内部状態(特別図柄プロセスフラグ)をステップS305に移行するように更新する。
大入賞口開放中処理(ステップS305):大入賞口ラウンド表示の表示制御コマンドデータを図柄制御基板80に送出する制御や大入賞口の閉成条件の成立を確認する処理等を行う。最終的な大入賞口の閉成条件が成立したら、内部状態をステップS306に移行するように更新する。
特定領域有効時間処理(ステップS306):V入賞スイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態をステップS304に移行するように更新する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、内部状態をステップS307に移行するように更新する。
大当り終了処理(ステップS307):大当り遊技状態が終了したことを遊技者に報知するための表示を行う。その表示が終了したら、内部状態をステップS301に移行するように更新する。
図11は、この実施の形態で用いられる変動パターンの一例を示す説明図である。図11において、「EXT」とは、2バイト構成の表示制御コマンドにおける2バイト目のEXTデータを示す。また、「時間」は図柄の変動時間(識別情報の可変表示期間)を示す。
なお、「通常変動」とは、リーチ態様を伴わない変動パターンである。「ノーマルリーチ」とは、リーチ態様を伴うが変動結果(停止図柄)が大当りを生じさせるものとならない変動パターンである。「リーチA」は、「ノーマルリーチ」とは異なるリーチ態様を持つ変動パターンである。また、リーチ態様が異なるとは、リーチ変動時間において異なった態様の変動態様(速度や回転方向等)やキャラクタ等が現れることをいう。例えば、「ノーマル」では単に1種類の変動態様によってリーチ態様が実現されるのに対して、「リーチA」では、変動速度や変動方向が異なる複数の変動態様を含むリーチ態様が実現される。
また、「リーチB」は、「ノーマルリーチ」および「リーチA」とは異なるリーチ態様を持つ変動パターンである。そして、「リーチC」は、「ノーマルリーチ」、「リーチA」および「リーチB」とは異なるリーチ態様を持つ変動パターンである。なお、「リーチA」、「リーチB」および「リーチC」では、大当りとなる場合と大当りとならない場合とがある。
この実施の形態では、さらに、短縮表示パターンが用いられる。短縮表示パターンは、左中右の図柄の変動時間が例えば1.0秒という極めて短い変動パターンである。
図12は入賞確認処理(ステップS311)を示すフローチャートである。打球が遊技盤6に設けられている始動入賞口14に入賞すると、始動口スイッチ14aがオンする。入賞確認処理において、CPU56は、スイッチ回路58を介して始動口スイッチ14aがオンしたことを判定すると(ステップS111)、始動入賞記憶数が最大値である4に達しているかどうか確認する(ステップS112)。始動入賞記憶数が4に達していなければ、始動入賞記憶数を1増やし(ステップS113)、大当り判定用乱数等の各乱数の値を抽出し、それらを始動入賞記憶数の値に対応した保存領域(特別図柄判定用バッファ)に格納する(ステップS114)。なお、乱数を抽出するとは、乱数を生成させるためのカウンタからカウント値を読み出して、読み出したカウント値を乱数値とすることである。ステップS114では、図8に示された乱数のうち、ランダム1〜ランダム5が抽出される。
次いで、CPU56は、再度、ランダム1(大当り判定用乱数)を生成するためのカウンタからランダム1を抽出し(ステップS115)、大当り判定モジュールを実行する。すなわち、大当り判定サブルーチンをコールする(ステップS116)。大当り判定モジュールにおいてランダム1の値にもとづいて大当りではないと判定された場合には(ステップS117)、ランダム5(リーチ判定用乱数)を生成するためのカウンタからランダム5を抽出し(ステップS118)、リーチ判定モジュールを実行する。すなわち、リーチ判定サブルーチンをコールする(ステップS119)。
さらに、CPU56は、始動入賞記憶指定のコマンド送信テーブルをセットし(ステップS121)、サブルーチンであるコマンド作成処理を実行する(ステップS122)。なお、コマンド送信テーブルをセットするとは、コマンド送信テーブルのアドレスを指定する処理(アドレスを所定のレジスタ等に設定する処理)である。そして、コマンド作成処理を実行することによって表示制御コマンド等が図柄制御基板80等に送信される。この実施の形態では、表示制御手段に送信されうる各表示制御コマンドはROMのコマンド送信テーブルに格納されている。
大当り判定モジュールにおいて大当りであると判定されている場合には(ステップS123)、大当り入賞指定のコマンド送信テーブルをセットし(ステップS124)、コマンド作成処理を実行する(ステップS125)。また、リーチ判定モジュールにおいてリーチである(大当りとはしないがリーチとする、以下、はずれリーチともいう。)と判定されている場合には(ステップS131)、リーチ入賞指定のコマンド送信テーブルをセットし(ステップS132)、コマンド作成処理を実行する(ステップS133)。大当りでもなくはずれリーチでもない場合には、はずれ入賞指定のコマンド送信テーブルをセットし(ステップS134)、コマンド作成処理を実行する(ステップS135)。
以上の処理によって、始動入賞記憶数が増えるときには、図柄制御基板80に搭載されている表示制御手段に対して、始動入賞記憶数指定の表示制御コマンドが送信され、また、大当り入賞指定、リーチ入賞指定またははずれ入賞指定の表示制御コマンドが送信される。なお、この実施の形態では、大当りではない場合には、リーチ入賞指定またははずれ入賞指定の表示制御コマンドが送信されるが、大当りではない場合には常にはずれ入賞指定の表示制御コマンドが送信されるようにしてもよい。以下、大当り入賞指定、リーチ入賞指定およびはずれ入賞指定の表示制御コマンドを、入賞時判定結果コマンドまたは判定結果コマンドということがある。
また、この時点で決定される大当りおよびリーチは、可変表示装置9における可変表示開始を開始させるための条件(実行条件であって開始条件ではない)の成立にもとづいて決定されたものである。可変表示装置9において可変表示を開始できる条件(開始条件)の成立したときには、あらためて、大当りとするか否か、またはずれリーチとするか否かが決定される。そして、その決定結果にもとづいて実際の可変表示の表示結果が導出される。ただし、可変表示の開始条件が成立したときに用いられる乱数値は、可変表示の実行条件が成立したときに抽出され保存領域に保存された値である。従って、可変表示の開始条件が成立したときの大当りとするか否かと、はずれリーチとするか否かの決定結果は、可変表示の実行条件が成立したときの決定結果と同じになる。
そして、遊技状態決定手段による数値データの抽出に相当するステップS114の処理と、実行条件成立時判定手段による識別情報の表示結果に関わる判定に相当するステップS115〜S119の処理とは1回のタイマ割込処理内で完了する。従って、可変表示の開始条件が成立したときの大当りとするか否かと、はずれリーチとするか否かの決定結果は、可変表示の実行条件が成立したときの決定結果と同じになることが保証される。
図13(A)は、大当り判定モジュールで用いられる大当り判定テーブルの一例を示す説明図である。また、図13(B)は、リーチ判定モジュールで用いられるリーチ判定テーブルの一例を示す説明図である。図13(A)に示すように、この実施の形態では、低確率時(非確変時)では大当り判定値は「3」であり、高確率時(確変時)では大当り判定値は「3」、「7」、「79」、「103」、「107」である。また、図13(B)に示すように、リーチ判定値は、「0」、「1」、「11」である。
図14は、大当り判定モジュールを示すフローチャートである。大当り判定処理において、CPU56は、まず、そのときの状態が確変中であるか否か判定し(ステップS141)、確変中であれば、図13(A)に示された大当り判定テーブル中の高確率時のテーブルを使用することに決定する(ステップS142)。確変中でなければ、大当り判定テーブル中の低確率時のテーブルを使用することに決定する(ステップS143)。
そして、抽出されているランダム1の値に一致する値が大当り判定テーブル中にあるか否か判定し(ステップS144,S145)、一致する値があれば大当りとすることにし(ステップS146)、一致する値がなければ大当りとしないことに決定する(ステップS147)。
図15は、リーチ判定モジュールを示すフローチャートである。リーチ判定処理において、CPU56は、抽出されているランダム5の値に一致する値がリーチ判定テーブル中にあるか否か判定し(ステップS151,S152)、一致する値があればリーチすることにし(ステップS153)、一致する値がなければリーチしないことに決定する(ステップS154)。
図16は、停止図柄設定処理(ステップS301)を示すフローチャートである。停止図柄設定処理において、CPU56は、特別図柄の変動を開始することができる状態(特別図柄プロセスフラグの値がステップS301を示す値となっている場合)には(ステップS51)、始動入賞記憶数の値を確認する(ステップS52)。なお、特別図柄プロセスフラグの値がステップS301を示す値となっている場合とは、可変表示装置9において図柄の変動がなされていず、かつ、大当り遊技中でもない場合である。
始動入賞記憶数が0でなければ、始動入賞記憶数=1に対応する保存領域に格納されている各乱数値を読み出すとともに(ステップS53)、始動入賞記憶数の値を1減らし、かつ、各保存領域の内容をシフトする(ステップS54)。すなわち、始動入賞記憶数=n(n=2,3,4)に対応する保存領域に格納されている各乱数値を、始動入賞記憶数=n−1に対応する保存領域に格納する。
次いで、CPU56は、減算後の始動入賞記憶数指定のコマンド送信テーブルをセットし(ステップS55)、コマンド作成処理を実行する(ステップS56)。さらに、大当り判定モジュールを実行する(ステップS57)。ここでは、大当り判定モジュールにおいて、ステップS53で保存領域から読み出したランダム1の値にもとづいて大当りとするか否かの判定が行われる。
大当りとすることに決定した場合には(ステップS58)、CPU56は、大当り図柄用乱数(ランダム3)の値に従って大当り図柄を決定する(ステップS59)。この実施の形態では、ランダム3の値に応じた大当り図柄テーブルに設定されている図柄番号の各図柄が、大当り図柄として決定される。大当り図柄テーブルには、複数種類の大当り図柄の組み合わせのそれぞれに対応した左中右の図柄番号が設定されている。また、変動パターン決定用乱数(ランダム4)の値にもとづいて特別図柄の変動パターンを決定する(ステップS60)。ここでは、変動パターン11〜14のうちのいずれかの変動パターンが決定される(図11参照)。
大当りとしないことに決定した場合には(ステップS58)、CPU56は、リーチ判定モジュールを実行する(ステップS61)。ここでは、リーチ判定モジュールにおいて、ステップS53で保存領域から読み出したランダム3の値にもとづいて大当りとするか否かの判定が行われる。また、大当りとしない場合の停止図柄の決定を行う。この実施の形態では、ステップS52で読み出した値、すなわち抽出されているランダム2−1の値に従って左図柄を決定する(ステップS57)。リーチすることに決定した場合には、ランダム2−1の値に従って左右図柄を決定し、ランダム2−2の値に従って中図柄を決定する(ステップS63)。ここで、決定された中図柄が左右図柄と一致した場合には、中図柄に対応した乱数の値に1加算した値に対応する図柄を中図柄の停止図柄として、大当り図柄と一致しないようにする。そして、変動パターン決定用乱数(ランダム4)の値にもとづいて特別図柄の変動パターンを決定する(ステップS64)。ここでは、変動パターン2〜10のうちのいずれかの変動パターンが決定される(図11参照)。
大当りとせずリーチにもしないことに決定した場合には、CPU56は、大当りとせずリーチにもしない場合の停止図柄の決定を行う。すなわち、ランダム2−1の値に従って左図柄を決定し、ランダム2−2の値に従って中図柄を決定するとともに、ランダム2−3の値に従って右図柄を決定する(ステップS65)。なお、ここでは、左右図柄が一致した場合には右図柄を1図柄ずらし、リーチにもならないはずれとなるようにする。そして、確変中か否かを確認する(ステップS66)。確変中あれば変動パターンをはずれ時短縮変動パターンとすることに決定する(ステップS67)。確変状態でなければランダム4の値に応じて変動パターンをはずれ時の通常変動パターンとすることに決定する(ステップS68)。なお、はずれ時短縮変動パターンは、左右中の図柄の変動時間が例えば1.0秒という通常変動パターンよりも変動期間が短い変動パターンである。また、この実施の形態では、はずれ時短縮変動パターンではないはずれ時の変動パターンは変動パターン1のみであるから(図11参照)、ランダム4の値にもとづく抽選を行わなくてもよい。
以上のようにして、始動入賞があったときに図柄変動の表示態様が大当りとするか、リーチ態様とするか、はずれとするか判定されるとともに、その判定結果にもとづいて変動パターンが選択され、図柄の変動開始が可能となったときに演出に用いる変動パターンが決定されるとともにそれぞれの停止図柄の組合せが決定される。また、遊技制御手段は、決定結果にもとづく制御コマンド(変動パターンを特定可能な制御コマンド)を、表示制御手段、音制御手段およびランプ制御手段に送信する処理を行う。
次に、遊技制御手段から各電気部品制御手段に対する制御コマンドの送出方式について説明する。図17は、主基板31から図柄制御基板80に送信される表示制御コマンドの信号線を示す説明図である。図17に示すように、この実施の形態では、表示制御コマンドは、表示制御信号D0〜D7の8本の信号線で主基板31から図柄制御基板80に送信される。また、主基板31と図柄制御基板80との間には、ストローブ信号を送信するための表示制御INT信号の信号線も配線されている。図17には、表示制御コマンドの例が示されているが、他の電気部品制御基板への制御コマンドも、8本の信号線と1本のINT信号の信号線によって送信される。
遊技制御手段から他の電気部品制御基板(サブ基板)に制御コマンドを出力しようとするときに、コマンド送信テーブルの先頭アドレスの設定が行われる。図18(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であれば、EXTデータとして、送信バッファの内容を使用することを示す。なお、ワークエリア参照ビットが1であれば、他の7ビットが、EXTデータが格納されているテーブルのアドレスを指定するためのオフセットであることを示すように構成することもできる。
図18(B)INTデータの一構成例を示す説明図である。INTデータにおけるビット0は、払出制御基板37に払出制御コマンドを送出すべきか否かを示す。ビット0が「1」であるならば、払出制御コマンドを送出すべきことを示す。また、INTデータにおけるビット1は、図柄出制御基板80に表示制御コマンドを送出すべきか否かを示す。ビット1が「1」であるならば、表示制御コマンドを送出すべきことを示す。また、INTデータのビット2,3は、それぞれ、ランプ制御コマンド、音制御コマンドを送出すべきか否かを示すビットである。
図19は、主基板31から他の電気部品制御基板に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」とされ、EXTデータの先頭ビット(ビット7)は必ず「0」とされる。このように、電気部品制御基板へのコマンドとなる制御コマンドは、複数のデータで構成され、先頭ビットによってそれぞれを区別可能な態様になっている。なお、図19に示されたコマンド形態は一例であって他のコマンド形態を用いてもよい。例えば、1バイトや3バイト以上で構成される制御コマンドを用いてもよい。また、図19は図柄制御基板80に送出される表示制御コマンドが例示されているが、他の電気部品制御基板に送出される制御コマンドも同一構成である。
図20に示すように、制御コマンドは、8ビットの制御信号CD0〜CD7(コマンドデータ)とINT信号(取込信号)とで構成される。図柄制御基板80に搭載されている表示制御手段は、INT信号が立ち上がったことを検知して、割込処理によって1バイトのデータの取り込み処理を開始する。
なお、制御コマンドは、電気部品制御手段が認識可能に1回だけ送出される。認識可能とは、この例では、INT信号のレベルが変化することであり、認識可能に1回だけ送出されるとは、例えば表示制御信号の1バイト目および2バイト目のそれぞれに応じてINT信号が1回だけパルス状(矩形波状)に出力されることである。
図21は、図柄制御基板80に送出される表示制御コマンドの内容の一例を示す説明図である。図21に示す例において、コマンド8000(H)〜800E(H)は、特別図柄を可変表示する可変表示装置9における特別図柄の変動パターンを指定する表示制御コマンドである。なお、変動パターンを指定するコマンド(変動パターンコマンド)は変動開始指示も兼ねている。また、コマンド800E(H)は、短縮表示パターンを指定するコマンドである。
コマンド88XX(H)(X=4ビットの任意の値)は、普通図柄の変動パターンに関する表示制御コマンドである。コマンド89XX(H)は、普通図柄の停止図柄を指定する表示制御コマンドである。コマンド8A00(H)は、普通図柄の可変表示の停止を指示する表示制御コマンドである。
コマンド91XX(H)、92XX(H)および93XX(H)は、特別図柄の左中右の停止図柄を指定する表示制御コマンドである。「XX」には図柄番号が設定される。また、コマンドA000(H)は、特別図柄の可変表示の停止を指示する表示制御コマンドである。コマンドBXXX(H)は、大当り遊技開始から大当り遊技終了までの間に送出される表示制御コマンドである。そして、コマンドC000(H)〜EXXX(H)は、特別図柄の変動および大当り遊技に関わらない可変表示装置9の表示状態に関する表示制御コマンドである。
コマンドE0XX(H)は、可変表示装置9における始動入賞記憶数を表示する表示エリアにおいて、表示色を変化させる始動記憶表示エリア18の個数を示す表示制御コマンドである。例えば、表示制御手段は、各始動記憶表示エリア18のうち「XX(H)」で指定される個数の始動記憶表示エリア18の表示色を変化させる。すなわち、コマンドE0XX(H)は、保留個数という情報を報知するために設けられている表示エリアの制御を指示するコマンドである。なお、表示色を変化させる始動記憶表示エリア18の個数に関するコマンドが、表示色を変化させるエリアの個数の増減を示すように構成されていてもよい。
また、コマンドE400(H)は、高確率状態から低確率状態になったときに送信されるコマンドであり、コマンドE401(H)は、低確率状態から高確率状態になったときに送信されるコマンドである。
コマンドE5XX(H)は、始動入賞が生じたときに、コマンドE0XX(H)に続いて送信されるコマンドである。E500(H)ははずれ入賞指定の表示制御コマンドであり、E501(H)は大当り入賞指定の表示制御コマンドであり、E502(H)はリーチ入賞指定の表示制御コマンドである。
図柄制御基板80の表示制御手段は、主基板31の遊技制御手段から上述した表示制御コマンドを受信すると図21に示された内容に応じて可変表示装置9および普通図柄表示器10の表示状態を変更する。
図22は、遊技の制御を行う主基板31からランプ制御基板35に送出されるランプ制御コマンドの内容の一例を示す説明図である。ランプ制御コマンドもMODEとEXTの2バイト構成である。図22に示す例において、コマンド80XX(H)(X=4ビットの任意の値)は、可変表示装置9における特別図柄の変動パターンすなわち可変表示装置9における表示結果導出動作に関わる演出内容に対応したランプ・LED(遊技機に設けられている演出用のランプやLED等の発光手段)表示制御パターンを指定する変動中ランプ指定のランプ制御コマンドである。また、コマンドA000(H)は、特別図柄の可変表示の停止時のランプ・LED表示制御パターンを指示するランプ制御コマンドであり、コマンドBXXX(H)は、大当り遊技開始から大当り遊技終了までの間のランプ・LED表示制御パターンを指示するランプ制御コマンドである。そして、コマンドC000(H)は、客待ちデモンストレーション時のランプ・LED表示制御パターンを指示するランプ制御コマンドである。
なお、コマンド80XX(H)、9XXX(H),AXXX(H)、BXXX(H)およびCXXX(H)は、遊技進行状況に応じて遊技制御手段から送出されるランプ制御コマンドである。ランプ制御手段は、上述したランプ制御コマンドを受信すると図22に示された内容に応じてランプ・LEDの表示状態を変更する。なお、コマンド8XXX(H)、9XXX(H),AXXX(H)、BXXX(H)およびCXXX(H)は、表示制御コマンドや音制御コマンドと例えば共通の制御状態において共通に用いられる。
コマンドE1XX(H)は、普通図柄始動記憶表示器41の点灯個数を示すランプ制御コマンドである。例えば、ランプ制御手段は、普通図柄始動記憶表示器41における「XX(H)」で指定される個数の表示器を点灯状態とする。
コマンドE200(H)およびE201(H)は、賞球ランプ51の表示状態に関するランプ制御コマンドであり、コマンドE300(H)およびE301(H)は、球切れランプ52の表示状態に関するランプ制御コマンドである。ランプ制御手段は、遊技制御手段から「E201(H)」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がある場合としてあらかじめ定められた表示状態とし、「E200(H)」のランプ制御コマンドを受信すると賞球ランプ51の表示状態を賞球残がない場合としてあらかじめ定められた表示状態とする。また、「E300(H)」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球あり中の表示状態とし、「E301(H)」のランプ制御コマンドを受信すると球切れランプ52の表示状態を球切れ中の表示状態とする。
また、コマンドE400(H)は、低確率状態(通常状態)になったことを示すランプ制御コマンドであり、コマンドE401(H)は、高確率状態(確変状態)になったことを示すランプ制御コマンドである。
図23は、遊技を制御する主基板31から音声制御基板70に送出される音声制御コマンドの内容の一例を示す説明図である。音声制御コマンドもMODEとEXTの2バイト構成である。図23に示す例において、コマンド80XX(H)(X=4ビットの任意の値)は、特別図柄の変動期間における音発生パターンを指定する音声制御コマンドである。コマンドBXXX(H)は、大当り遊技開始から大当り遊技終了までの間における音発生パターンを指定する音声制御コマンドである。その他のコマンドは、特別図柄の変動および大当り遊技に関わらない音声制御コマンドである。例えば、コマンドC000(H)は、客待ちデモンストレーション時の音発生パターンを指定する音声制御コマンドである。音声制御基板70の音声制御手段は、主基板31の遊技制御手段から上述した音声制御コマンドを受信すると図19に示された内容に応じて音声出力状態を変更する。
なお、この実施の形態では、遊技制御手段が、E5XX(H)の表示制御コマンドを送信する際に、音制御基板70にも、同じデータである音制御コマンドを送信している。また、E0XX(H)の始動入賞記憶数指定の表示制御コマンドを送信する際に、音制御基板70にも、同じデータである音制御コマンドを送信している。ただし、音制御基板70に搭載されている音制御手段は、始動入賞記憶数指定の音制御コマンドを受信したことにもとづいて始動入賞記憶数を報知する訳ではなく、例えば、始動入賞記憶数指定の音制御コマンドを連続予告に関する制御に使用する。
図24は、コマンド作成処理の処理例を示すフローチャートである。コマンド作成処理は、コマンド出力処理とINT信号出力処理とを含む処理である。コマンド作成処理は、遊技制御処理では、ステップS25の特別図柄プロセス処理、ステップS27の特別図柄コマンド制御処理、ステップS28の普通図柄コマンド制御処理等において、制御コマンドを作成する際にコールされる。
コマンド作成処理において、CPU56は、まず、コマンド送信テーブルのアドレスをスタック等に退避する(ステップS331)。そして、ポインタが指していたコマンド送信テーブルのINTデータを引数1にロードする(ステップS332)。引数1は、後述するコマンド送信処理に対する入力情報になる。また、コマンド送信テーブルを指すアドレスを+1する(ステップS333)。従って、コマンド送信テーブルを指すアドレスは、コマンドデータ1のアドレスに一致する。
次いで、CPU56は、コマンドデータ1を読み出して引数2に設定する(ステップS334)。引数2も、後述するコマンド送信処理に対する入力情報になる。そして、コマンド送信処理ルーチンをコールする(ステップS335)。
図25は、コマンド送信処理ルーチンを示すフローチャートである。コマンド送信処理ルーチンにおいて、CPU56は、引数1に設定されているデータすなわちINTデータを、比較値として決められているワークエリアに設定する(ステップS351)。次いで、CPU56は、送信回数=4を、処理数として決められているワークエリアに設定する(ステップS352)。そして、払出制御信号を出力するためのポート1のアドレスをIOアドレスにセットする(ステップS353)。この実施の形態では、ポート1のアドレスは、払出制御信号を出力するための出力ポートのアドレスである。また、ポート2〜4のアドレスが、表示制御信号、ランプ制御信号、音声制御信号を出力するための出力ポートのアドレスである。
次に、CPU56は、比較値を1ビット右にシフトする(ステップS354)。シフト処理の結果、キャリービットが1になったか否か確認する(ステップS355)。キャリービットが1になったということは、INTデータにおける最も右側のビットが「1」であったことを意味する。この実施の形態では4回のシフト処理が行われるのであるが、例えば、払出制御コマンドを送出すべきことが指定されているときには、最初のシフト処理でキャリービットが1になる。
キャリービットが1になった場合には、引数2に設定されているデータ、この場合にはコマンドデータ1(すなわちMODEデータ)を、IOアドレスとして設定されているアドレスに出力する(ステップS356)。最初のシフト処理が行われたときにはIOアドレスにポート1のアドレスが設定されているので、そのときに、払出制御コマンドのMODEデータがポート1に出力される。
次いで、CPU56は、IOアドレスを1加算するとともに(ステップS357)、処理数を1減算する(ステップS358)。加算前にポート1を示していた場合には、IOアドレスに対する加算処理によって、IOアドレスにはポート2のアドレスが設定される。ポート2は、表示制御コマンドを出力するためのポートである。そして、CPU56は、処理数の値を確認し(ステップS359)、値が0になっていなければ、ステップS354に戻る。ステップS354で再度シフト処理が行われる。
2回目のシフト処理ではINTデータにおけるビット1の値が押し出され、ビット1の値に応じてキャリーフラグが「1」または「0」になる。従って、表示制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。同様に、3回目および4回目のシフト処理によって、ランプ制御コマンドおよび音制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。このように、それぞれのシフト処理が行われるときに、IOアドレスには、シフト処理によってチェックされる制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に対応したIOアドレスが設定されている。
よって、キャリーフラグが「1」になったときには、対応する出力ポート(ポート1〜ポート4)に制御コマンドが送出される。すなわち、1つの共通モジュールで、各電気部品制御手段に対する制御コマンドの送出処理を行うことができる。
また、このように、シフト処理のみによってどの電気部品制御手段に対して制御コマンドを出力すべきかが判定されるので、いずれの電気部品制御手段に対して制御コマンドを出力すべきか判定する処理が簡略化されている。
次に、CPU56は、シフト処理開始前のINTデータが格納されている引数1の内容を読み出し(ステップS360)、読み出したデータをポート0に出力する(ステップS361)。この実施の形態では、ポート0のアドレスは、各制御信号についてのINT信号を出力するためのポートであり、ポート0のビット0〜4が、それぞれ、払出制御INT信号、表示制御INT信号、ランプ制御INT信号、音制御INT信号を出力するためのポートである。INTデータでは、ステップS351〜S359の処理で出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に応じたINT信号の出力ビットに対応したビットが「1」になっている。従って、ポート1〜ポート4のいずれかに出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に対応したINT信号がハイレベルになる。
次いで、CPU56は、ウェイトカウンタに所定値を設定し(ステップS362)、その値が0になるまで1ずつ減算する(ステップS363,S364)。ウェイトカウンタの値が0になると、クリアデータ(00)を設定して(ステップS365)、そのデータをポート0に出力する(ステップS366)。よって、INT信号はローレベルになる。また、ウェイトカウンタに所定値を設定し(ステップS362)、その値が0になるまで1ずつ減算する(ステップS368,S369)。そして、ウェイトカウンタの値が0になると(ステップS369のY)、処理を終了する。
以上のようにして、制御コマンドの1バイト目のMODEデータ(コマンド送信テーブルにおける2バイト目のデータ)が送出される。そこで、CPU56は、図24に示すステップS336で、コマンド送信テーブルを指す値を1加算する。従って、コマンド送信テーブルにおける3バイト目のコマンドデータ2の領域が指定される。CPU56は、指し示されたコマンドデータ2の内容を引数2にロードする(ステップS337)。また、コマンドデータ2のビット7(ワークエリア参照ビット)の値が「0」であるか否か確認する(ステップS338)。0でなければ、コマンド拡張データアドレステーブルの先頭アドレスをポインタにセットし(ステップS339)、そのポインタにコマンドデータ2のビット6〜ビット0の値を加算してアドレスを算出する(ステップS340)。そして、そのアドレスが指すエリアのデータを引数2にロードする(ステップS341)。
コマンド拡張データアドレステーブルには、各サブ基板の制御手段に送出されうるEXTデータが順次設定されている。よって、以上の処理によって、ワークエリア参照ビットの値が「1」であれば、コマンドデータ2の内容に応じたコマンド拡張データアドレステーブル内のEXTデータが引数2にロードされ、ワークエリア参照ビットの値が「0」であれば、コマンドデータ2の内容がそのまま引数2にロードされる。なお、コマンド拡張データアドレステーブルからEXTデータが読み出される場合でも、そのデータのビット7は「0」である。
次に、CPU56は、コマンド送信処理ルーチンをコールする(ステップS342)。従って、MODEデータの送出の場合と同様のタイミングでEXTデータが送出される。その後、CPU56は、コマンド送信テーブルのアドレスを復旧し(ステップS343)、コマンド送信テーブルを指す読出ポインタの値を更新する(ステップS344)。そして、さらに送出すべきコマンドがあれば(ステップS345)、ステップS331に戻る。
以上のようにして、2バイト構成の制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)が、対応する電気部品制御手段に送信される。電気部品制御手段ではINT信号の立ち上がりを検出すると制御コマンドの取り込み処理を開始する。なお、各電気部品制御手段は、INT信号の立ち下がりで制御コマンドの取り込み処理を開始してもよい。また、INT信号の極性を図21に示された場合と逆にしてもよい。
図26は、可変表示装置9において実行される予告演出(大当りとなること、またはリーチとなる可能性があることを報知するための演出)の例を示す説明図である。図26(A)〜(C)に例示するように、この実施の形態では、可変表示装置9において、背景(図柄表示エリア以外の部分)に現れるキャラクタ等の表示による3種類の予告演出を行うことが可能である。図26(A)に示す予告Aおよび図26(B)に示す予告Bは、連続予告(保留予告:始動入賞発生時に実行される大当りとするか否かの抽選の結果にもとづいて、以後の複数回の特別図柄の可変表示において始動入賞記憶数を上限として連続して実行される予告演出)以外の予告演出であり、図26(C)に示す予告は、連続予告において用いられる予告演出である。
次に、表示制御手段の動作を説明する。図27は、表示制御用CPU101が実行するメイン処理を示すフローチャートである。メイン処理では、まず、RAM領域のクリアや各種初期値の設定、また表示制御の起動間隔を決めるための2msタイマの初期設定等を行うための初期化処理が行われる(ステップS701)。その後、表示制御用CPU101は、タイマ割込フラグの監視(ステップS702)の確認を行うループ処理に移行する。図28に示すように、タイマ割込が発生すると、表示制御用CPU101は、タイマ割込フラグをセットする(ステップS711)。メイン処理において、タイマ割込フラグがセットされていたら、表示制御用CPU101は、そのフラグをクリアし(ステップS703)、以下の表示制御処理を実行する。
この実施の形態では、タイマ割込は2ms毎にかかる。すなわち、表示制御処理は、2ms毎に起動される。また、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、具体的な表示制御処理はメイン処理において実行されるが、タイマ割込処理で表示制御処理を実行してもよい。
表示制御処理において、表示制御用CPU101は、まず、受信した表示制御コマンドを解析する(コマンド解析実行処理:ステップS704)。次いで表示制御用CPU101は、表示制御プロセス処理を行う(ステップS705)。表示制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態に対応したプロセスを選択して実行する。そして、予告乱数カウンタを更新する処理を実行する(ステップS706)。その後、ステップS702のタイマ割込フラグの確認を行う処理に戻る。
次に、主基板31からの表示制御コマンド受信処理について説明する。図29は、主基板31から受信した表示制御コマンドを格納するためのコマンド受信バッファの一構成例を示す説明図である。この例では、2バイト構成の表示制御コマンドを6個格納可能なリングバッファ形式のコマンド受信バッファが用いられる。従って、コマンド受信バッファは、受信コマンドバッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。なお、必ずしもリングバッファ形式でなくてもよく、例えば、図柄指定コマンド格納領域を3個(2×3=6バイトのコマンド受信バッファ)、それ以外の変動パターン指定などのコマンド格納領域を1個(2×1=2バイトのコマンド受信バッファ)のようなバッファ構成としてもよい。音声制御手段や、ランプ制御手段においても同様に、リングバッファ形式でないバッファ形式としてもよい。この場合、表示制御手段、音声制御手段、ランプ制御手段は、変動パターンなどの格納領域に格納される最新のコマンドにもとづき制御される。これにより、主基板31からの指示に迅速に対応することができる。
図30は、割込処理による表示制御コマンド受信処理を示すフローチャートである。主基板31からの表示制御用のINT信号は表示制御用CPU101の割込端子に入力されている。例えば、主基板31からのINT信号がオン状態になると、表示制御用CPU101において割込がかかる。そして、図30に示す表示制御コマンドの受信処理が開始される。
表示制御コマンドの受信処理において、表示制御用CPU101は、まず、各レジスタをスタックに退避する(ステップS670)。なお、割込が発生すると表示制御用CPU101は自動的に割込禁止状態に設定するが、自動的に割込禁止状態にならないCPUを用いている場合には、ステップS670の処理の実行前に割込禁止命令(DI命令)を発行することが好ましい。次いで、表示制御コマンドデータの入力に割り当てられている入力ポートからデータを読み込む(ステップS671)。そして、2バイト構成の表示制御コマンドのうちの1バイト目であるか否か確認する(ステップS672)。
1バイト目であるか否かは、受信したコマンドの先頭ビットが「1」であるか否かによって確認される。先頭ビットが「1」であるのは、2バイト構成である表示制御コマンドのうちのMODEデータ(1バイト目)のはずである(図19参照)。そこで、表示制御用CPU101は、先頭ビットが「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す受信コマンドバッファに格納する(ステップS673)。
表示制御コマンドのうちの1バイト目でなければ、1バイト目を既に受信したか否か確認する(ステップS674)。既に受信したか否かは、受信バッファ(受信コマンドバッファ)に有効なデータが設定されているか否かによって確認される。
1バイト目を既に受信している場合には、受信した1バイトのうちの先頭ビットが「0」であるか否か確認する。そして、先頭ビットが「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ+1が示す受信コマンドバッファに格納する(ステップS675)。先頭ビットが「0」であるのは、2バイト構成である表示制御コマンドのうちのEXTデータ(2バイト目)のはずである(図19参照)。なお、ステップS674における確認結果が1バイト目を既に受信したである場合には、2バイト目として受信したデータのうちの先頭ビットが「0」でなければ処理を終了する。
ステップS675において、2バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに2を加算する(ステップS676)。そして、コマンド受信カウンタが12以上であるか否か確認し(ステップS677)、12以上であればコマンド受信個数カウンタをクリアする(ステップS678)。その後、退避されていたレジスタを復帰し(ステップS679)、割込許可に設定する(ステップS680)。
表示制御コマンドは2バイト構成であって、1バイト目(MODE)と2バイト目(EXT)とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、MODEとしてのデータを受信したのかEXTとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。なお、このことは、払出制御コマンド、ランプ制御コマンドおよび音制御コマンドについても同様である。
図31および図32は、コマンド解析処理(ステップS704)の具体例を示すフローチャートである。主基板31から受信された表示制御コマンドは受信コマンドバッファに格納されるが、コマンド解析処理では、受信コマンドバッファに格納されているコマンドの内容が確認される。
コマンド解析処理において、表示制御用CPU101は、まず、コマンド受信バッファに受信コマンドが格納されているか否か確認する(ステップS611)。格納されているか否かは、コマンド受信カウンタの値と読出ポインタとを比較することによって判定される。両者が一致している場合が、受信コマンドが格納されていない場合である。コマンド受信バッファに受信コマンドが格納されている場合には、表示制御用CPU101は、コマンド受信バッファから受信コマンドを読み出す(ステップS612)。なお、読み出したら読出ポインタの値を+1しておく。
受信した表示制御コマンドが特別図柄左指定の表示制御コマンド(91XX(H))であれば(ステップS613)、表示制御用CPU101は、「XX」で示される左図柄を示すデータを、RAMにおける左図柄格納領域に格納する(ステップS614)。また、特別図柄中指定の表示制御コマンド(92XX(H))であれば(ステップS616)、表示制御用CPU101は、「XX」で示される中図柄を示すデータを、RAMにおける中図柄格納領域に格納する(ステップS617)。そして、特別図柄右指定の表示制御コマンド(93XX(H))であれば(ステップS618)、表示制御用CPU101は、「XX」で示される右図柄を示すデータを、RAMにおける右図柄格納領域に格納する(ステップS619)。
また、受信した表示制御コマンドが変動パターン指定の表示制御コマンドであれば(ステップS621)、表示制御用CPU101は、そのコマンドのEXTデータを変動パターンデータ格納領域に格納し(ステップS622)、変動パターン受信フラグをセットする(ステップS623)。
受信した表示制御コマンドが始動入賞記憶数指定の表示制御コマンドであれば(ステップS631)、表示制御用CPU101は、RAMにおける始動入賞数記憶領域の始動入賞記憶数を表示制御コマンドで指定された数に更新する(ステップS632)。また、可変表示装置9において表示色が変化する始動記憶表示エリア18の数を更新する(ステップS633)。さらに、同期乱数カウンタの値を+1する(ステップS634)。同期乱数カウンタとは、連続予告を実行するか否か決定するための同期乱数を生成するためのカウンタである。なお、この実施の形態では、同期乱数カウンタのカウント値は0〜126の範囲の値をとり、カウント値が127になったら、その値を0に戻す。
また、受信した表示制御コマンドがはずれ入賞指定の表示制御コマンドであれば(ステップS635)、表示制御用CPU101は、同期乱数カウンタの値を+1するとともに(ステップS636)、同期乱数カウンタのカウント値を読み出すことによって同期乱数を抽出し(ステップS637)、連続予告の判定を行う(ステップS638)。受信した表示制御コマンドが大当り入賞指定の表示制御コマンドである場合にも(ステップS639)、同期乱数カウンタの値を+1するとともに(ステップS640)、同期乱数を抽出し(ステップS641)、連続予告の判定を行う(ステップS642)。さらに、受信した表示制御コマンドがリーチ入賞指定の表示制御コマンドである場合にも(ステップS651)、同期乱数カウンタの値を+1するとともに(ステップS652)、同期乱数を抽出し(ステップS653)、連続予告の判定を行う(ステップS654)。
そして、ステップS612で読み出した受信コマンドがその他の表示制御コマンドである場合には、受信コマンドに対応するフラグをセットする(ステップS655)。
次に、連続予告の判定について説明する。図33は、始動入賞記憶数と連続予告の実行回数の関係の一例を示す説明図である。図33(A)は、はずれ入賞指定の表示制御コマンドを受信した場合の始動入賞記憶数と連続予告の実行回数の関係を示し、図33(B)は、リーチ入賞指定の表示制御コマンドを受信した場合の始動入賞記憶数と連続予告の実行回数の関係を示し、図33(C)は、大当り入賞指定の表示制御コマンドを受信した場合の始動入賞記憶数と連続予告の実行回数の関係を示す。
図33に示すように、この実施の形態では、はずれ入賞指定の表示制御コマンドを受信した場合には、同期乱数の値が29または124(連続予告判定値)に一致すれば連続予告を実行可能であり、リーチ入賞指定の表示制御コマンドを受信した場合には、同期乱数の値が7、29、79または124(連続予告判定値)に一致すれば連続予告を実行可能であり、大当り入賞指定の表示制御コマンドを受信した場合には、同期乱数の値が7〜27または105〜124(連続予告判定値)に一致すれば連続予告が実行可能である。
図34は、ステップS638,S642,S654で実行される連続予告の判定処理例を示すフローチャートである。連続予告の判定処理において、表示制御用CPU101は、まず、連続予告を実行中であるか否か判定する(ステップS661)。実行中であるか否かは、実行中にセットされている内部フラグである連続予告実行中フラグによって判定できる。連続予告の実行中でなければ、連続予告判定テーブルを選択する(ステップS662)。連続予告判定テーブルとは、図33に示された情報が設定されているテーブルであり、はずれ入賞指定の表示制御コマンドを受信した場合には図33(A)に示す情報に対応したテーブルが選択され、リーチ入賞指定の表示制御コマンドを受信した場合には図33(B)に示す情報に対応したテーブルが選択され、大当り入賞指定の表示制御コマンドを受信した場合には図33(C)に示す情報に対応したテーブルが選択される。
そして、表示制御用CPU101は、抽出されている同期乱数の値と同じ連続予告判定値が連続予告判定テーブルに設定されているか否か確認し(ステップS663)、一致しているものがあれば、連続予告判定テーブルから対応する実行回数を抽出する。実行回数が0でなければ(ステップS664)、実行回数をRAMにおける実行回数バッファに格納し(ステップS665)、連続予告抽選済フラグセットする(ステップS666)。
以上の処理によって、同期乱数カウンタは、始動入賞記憶数指定、はずれ入賞指定、リーチ入賞指定、大当り入賞指定の表示制御コマンドを受信する度に歩進し、はずれ入賞指定、リーチ入賞指定、大当り入賞指定の表示制御コマンドを受信すると連続予告を行うか否かの抽選が実行される。そして、連続予告を行うことに決定された場合には、そのときの始動入賞記憶数に応じてあらかじめ決められた実行回数が決定される。
後述するように、表示制御用CPU101は、0回でない実行回数が決定された後、可変表示装置9において特別図柄の可変表示を行う場合には、実行回数分の特別図柄の可変表示期間において予告演出(連続予告)を行う。
図35は、図27に示されたメイン処理における表示制御プロセス処理(ステップS705)を示すフローチャートである。表示制御プロセス処理では、表示制御プロセスフラグの値に応じてステップS800〜S806のうちのいずれかの処理が行われる。各処理において、以下のような処理が実行される。
変動パターンコマンド受信待ち処理(ステップS800):コマンド受信割込処理によって、変動時間を特定可能な表示制御コマンド(変動パターンコマンド)を受信したか否か確認する。具体的には、変動パターンコマンドが受信されたことを示すフラグ(変動パターン受信フラグ)がセットされたか否か確認する。変動パターン受信フラグは、コマンド解析処理によって、変動パターン指定の表示制御コマンドが受信されたことが確認された場合にセットされる(ステップS623)。
予告選択処理(ステップS801):予告演出を行うか否かと、行う場合の予告演出の種類を決定する。
全図柄変動開始処理(ステップS802):左中右図柄の変動が開始されるように制御する。
図柄変動中処理(ステップS803):変動パターンを構成する各変動状態(変動速度)の切替タイミングを制御するとともに、変動時間の終了を監視する。また、左右図柄の停止制御を行う。
全図柄停止待ち設定処理(ステップS804):変動時間の終了時に、全図柄停止を指示する表示制御コマンド(特別図柄停止の表示制御コマンド)を受信していたら、図柄の変動を停止し停止図柄(確定図柄)を表示する制御を行う。
大当り表示処理(ステップS805):変動時間の終了後、確変大当り表示または通常大当り表示の制御を行う。
大当たり遊技中処理(ステップS806):大当たり遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の表示制御コマンドを受信したら、ラウンド数の表示制御等を行う。
図36は、変動パターンテーブル毎に設定されているプロセスデータの一構成例を示す説明図である。プロセスデータは、プロセスタイマ設定値と表示制御実行テーブルの組み合わせが複数集まったデータで構成されている。各表示制御実行テーブルには、変動パターンを構成する各変動態様が記載されている。また、プロセスタイマ設定値には、その変動態様での変動時間が設定されている。表示制御用CPU101は、プロセスデータ参照し、プロセスタイマ設定値に設定されている時間だけ表示制御実行テーブルに設定されている変動態様で図柄を変動表示させる制御を行う。
図36に示すプロセスデータは、図柄制御基板80におけるROMに格納されている。また、プロセスデータは、各変動パターンのそれぞれに応じて用意されている。
図37は、図35に示された表示制御プロセス処理における変動パターンコマンド受信待ち処理(ステップS800)を示すフローチャートである。変動パターンコマンド受信待ち処理において、表示制御用CPU101は、変動パターン受信フラグがセットされたか否か確認する(ステップS871)。セットされていたら、そのフラグをリセットする(ステップS872)。そして、表示制御プロセスフラグの値を予告選択処理(ステップS801)に対応した値に変更する(ステップS873)。
図38は、図35に示された表示制御プロセス処理における予告選択処理(ステップS801)を示すフローチャートである。予告選択処理において、表示制御用CPU101は、連続予告を実行中であるか否か確認する(ステップS811)。実行中でなければ、連続予告抽選済フラグがセットされているか否か確認する(ステップS812)。連続予告抽選済フラグがセットされていれば、すなわち、連続予告を行うことに決定されていれば、連続予告抽選済フラグをリセットし(ステップS813)、実行回数バッファの内容を実行回数カウンタに設定する(ステップS814)。そして、連続予告実行中フラグをセットする(ステップS815)。
また、決定した予告演出に対応した予告開始時間決定タイマをスタートする(ステップS816)。そして、表示制御プロセスフラグを全図柄変動開始処理(ステップS802)に対応した値に更新する(ステップS817)。予告開始時間決定タイマは、可変表示装置9において図柄の変動が開始されてから、予告演出を開始するタイミングを決定するためのタイマである。
ステップS811において連続予告実行中であると確認したら、表示制御用CPU101は、実行回数カウンタを−1し(ステップS821)、実行回数カウンタが0でなければステップS816に移行する(ステップS822)。実行回数カウンタが0になった場合には、決定された実行回数分の連続予告が既に完了していることになる。その場合には、ステップS825に移行する。
ステップS812において、連続予告抽選済フラグがセットされていないことを確認した場合には、予告Aまたは予告Bによる予告演出を行う。あるいは、予告演出を行わないことにする。具体的には、予告乱数カウンタから乱数値を抽出し(ステップS825)、乱数値にもとづいて予告する/しないと、予告するならば予告Aと予告Bのうちのいずれの態様で予告演出を行うのかを決定する(ステップS826)。例えば、予告しない/予告A/予告Bのそれぞれに対応した判定値が設定されているテーブルをROMに用意しておき、乱数値と判定値とを比較することによって、予告する/しないと、予告するならば予告Aと予告Bのうちのいずれの態様で予告演出を行うのかを決定する。予告Aまたは予告Bの予告演出を行うことに決定した場合には(ステップS827)、ステップS816に移行する。
図39は、表示制御プロセス処理における全図柄変動開始処理(ステップS802)を示すフローチャートである。全図柄変動開始処理において、表示制御用CPU101は、まず、使用する変動パターンテーブルを選択する(ステップS881)。そして、変動時間タイマをスタートし(ステップS882)、表示制御プロセスフラグの値を図柄変動中処理に対応した値にする(ステップS883)。
図40は、表示制御プロセス処理における図柄変動中処理(ステップS803)を示すフローチャートである。図柄変動中処理において、表示制御用CPU101は、予告開始時間決定用タイマがタイムアウトしたか否か確認する(ステップS831)。タイムアウトしていたら、既に決定されている予告演出にもとづく表示が行われるようにVDP103を制御する(ステップS832)。ここで、予告演出を実行するためのパターンテーブル(タイマ設定値と制御実行テーブルの組み合わせが複数集まったデータ)を用いて予告演出を実行するようにしてもよいが、変動パターンテーブル毎に設定されているプロセスデータを、さらに、予告演出の種類に応じて細分化して設定しておき、実現される変動パターンおよび実行される予告演出に応じたプロセスデータを使用するようにしてもよい。変動パターンおよび予告演出に応じたプロセスデータを使用する場合には、予告演出の表示制御は、図柄の可変表示とともに、プロセスデータの内容に応じて実行される。
また、表示制御用CPU101は、プロセスタイマがタイムアウトしたら(ステップS833)、表示制御実行テーブルの切替を行う(ステップS834)。すなわち、プロセスデータにおいて、次に設定されているプロセスタイマをスタートさせるとともに、その次に設定されている表示制御実行テーブルの内容に従ってVDP103を制御する。従って、VDP103は、表示制御実行テーブルの内容に応じて可変表示装置9の表示状態を制御する。
そして、変動時間タイマがタイムアウトしていたら(ステップS835)、特別図柄停止の表示制御コマンドの受信を監視するための監視タイマをスタートさせ(ステップS836)、表示制御プロセスフラグの値を全図柄停止待ち処理に対応した値にする(ステップS837)。
図41は、表示制御プロセス処理における全図柄停止待ち処理(ステップS804)を示すフローチャートである。全図柄停止待ち処理において、表示制御用CPU101は、全図柄停止を指示する表示制御コマンド(特別図柄停止の表示制御コマンド)を受信しているか否か確認する(ステップS841)。全図柄停止を指示する表示制御コマンドを受信していれば、記憶されている停止図柄で図柄を停止させる制御を行う(ステップS842)。
そして、ステップS842で大当り図柄を表示した場合には、表示制御用CPU101は、表示制御プロセスフラグの値を大当り表示処理(ステップS805)に対応した値に設定する(ステップS844)。そして、連続予告の実行回数を示す実行回数カウンタの値をクリアしておくとともに(ステップS846)、連続予告実行中フラグをリセットする(ステップS847)。ステップS842で大当り図柄を表示しない場合(はずれ図柄を表示した場合)には、表示制御用CPU101は、表示制御プロセスフラグの値を変動パターンコマンド受信待ち処理(ステップS800)に対応した値に設定する(ステップS844)。
全図柄停止を指定する表示制御コマンドを受信していない場合には、監視タイマがタイムアウトしているかどうか確認する(ステップS848)。タイムアウトした場合には、何らかの異常が発生したと判断して、可変表示装置9にエラー画面を表示する制御を行う(ステップS849)。そして、ステップS843に移行する。
図42は、表示制御プロセス処理における大当り表示処理(ステップS805)を示すフローチャートである。大当り表示処理において、表示制御用CPU101は、確変大当りか否か判定する(ステップS851)。表示制御用CPU101は、例えば、確定図柄にもとづいて確変大当りか否かを判定することができる。確変大当りであれば、表示制御用CPU101は、例えば、「確変大当り」を可変表示装置9に表示させる表示制御を行う(ステップS852)。具体的には、「確変大当り」の表示指示をVDP103に通知する。すると、VDP103は、指示された表示の画像データを作成する。また、画像データを背景画像と合成する。確変大当りでなければ、表示制御用CPU101は、例えば、「大当り」を可変表示装置9に表示させる表示制御を行う(ステップS853)。そして、表示制御プロセスフラグの値を大当り遊技中処理(ステップS806)に対応した値に設定する(ステップS854)。
図43は、表示制御プロセス処理における大当り遊技中処理(ステップS806)を示すフローチャートである。大当り遊技中処理において、表示制御用CPU101は、主基板31から大当り終了表示の表示制御コマンドを受信したら(ステップS861)、可変表示装置9に大当りの終了を示す表示を行わせる制御を行った後(ステップS862)、表示制御プロセスフラグの値を変動パターンコマンド受信待ち処理(ステップS800)に対応した値に設定する。なお、大当り遊技中処理において、表示制御用CPU101は、大入賞口開放前表示や大入賞口開放時表示の表示制御コマンドを受信したら、ラウンド数の表示制御等を行う。
以上に説明したように、演出制御手段としての表示制御手段は、遊技制御手段が始動入賞時に判定した結果(始動入賞時に抽出した乱数の値にもとづいて大当りが発生するか否かとリーチするか否か)にもとづいて、連続予告(保留予告)を実行するか否かを決定し、実行する場合には実行回数を決定する。また、連続予告の実行中では、予告Aおよび予告Bの態様での予告演出は行われない(ステップS811からS821に移行するので)。また、大当りが発生した場合には、実行回数分の連続予告が完了していなくても連続予告は終了する(ステップS847参照)。
例えば、可変表示装置9において図柄の変動が行われている場合に、始動入賞記憶数が「4」であることを示す表示制御コマンドと、大当り入賞指定の表示制御コマンドとを受信した場合を想定する。そして、連続予告を行うか否かの判定において、連続予告することに決定され、実行回数が4であったとする。また、始動入賞記憶が1,2,3に対応する判定結果は大当りでなかったする。その場合、現在行われている図柄の変動が終了した後、第4回目の図柄の変動の結果大当りが発生する。また、現在行われている図柄の変動が終了した後、第1回目〜第4回目の図柄の変動が行われているときに連続予告演出が実行される。そして、第4回目の図柄の変動の結果大当りが発生する。すなわち、第4回目の図柄の変動の結果大当りが発生することを、それ以前の回の図柄の変動中において、遊技者に所定の報知(すなわち予告演出)することができる。
図33に例示されたように、始動入賞が発生したときに大当りとなると決定された場合には、大当りとならない場合に比べて、高い確率で連続予告が行われることが決定され、かつ、実行回数も多い。従って、連続予告の信頼度(連続予告が実行された場合に、実際に大当りが発生する割合)は高く、遊技者は、連続予告の発生によって大当りの発生を強く期待することができる。
そして、遊技制御手段において、始動入賞が発生したとき(可変表示の実行条件が成立したとき)と、新たな可変表示を開始できる状態になったとき(可変表示の開始条件が成立したとき)との双方のタイミングにおいて、大当りとするか否かの判定(識別情報の判定結果に関わる判定)とはずれリーチとするか否かの判定(識別情報の内容に関わる判定)とを判定するのであるが、いずれのタイミングでも、1つの大当り判定モジュールおよびリーチ判定モジュールが用いられる。また、1つの大当り判定テーブルおよびリーチ判定テーブルが用いられる。従って、連続予告を行うように構成した場合でも、連続予告を行わない場合に比べて、遊技制御手段におけるプログラム容量が増大することはない。すなわち、遊技制御手段におけるプログラム容量を増大させずに遊技演出の内容を豊富にすることができる。
なお、上記の実施の形態では、表示制御手段は始動入賞記憶数の表示制御も行い、遊技制御手段は、はずれ入賞指定の表示制御コマンド、リーチ入賞指定の表示制御コマンドおよび大当り入賞指定の表示制御コマンドとは別個に、それらの表示制御コマンドを送信する前に始動入賞記憶数指定の表示制御コマンドを送信するように構成されていた。しかし、始動入賞記憶数指定の表示制御コマンドと、はずれ入賞指定の表示制御コマンド、リーチ入賞指定の表示制御コマンドおよび大当り入賞指定の表示制御コマンドとを兼用するようにしてもよい。すなわち、保留記憶数コマンドが実行条件成立時判定手段による判定結果を特定可能な情報を含むように構成してもよい。例えば、E5XX(H)の表示制御コマンドにおける8ビットのEXTデータのうち4ビットをはずれ入賞指定、リーチ入賞指定および大当り入賞指定に割り当て、他の4ビットを始動入賞記憶数指定に割り当てる。
また、遊技制御手段は、表示制御手段以外の演出制御手段に対して、始動入賞記憶数指定の制御コマンド、はずれ入賞指定の制御コマンド、リーチ入賞指定の制御コマンドおよび大当り入賞指定の制御コマンドを送信するようにしてもよい。例えば、上記の実施の形態では、音制御手段にそれらの制御コマンドを送信している(図23参照)。従って、音制御手段が、表示制御手段と同様に、それらの制御コマンドにもとづいて、連続予告を行うか否かを決定するとともに、連続予告を行う場合には実行回数を決定するように構成されることによって、表示制御手段による可変表示装置9における連続予告の演出と同期させて、スピーカ27を用いた連続予告の演出を実行することができる。
なお、上記の実施の形態では、入賞確認処理(図12参照)において変動パターンを選択する処理を行っていなかったが、入賞確認処理において、変動パターンを選択する処理も行うようにしてもよい。
また、上記の実施の形態では、遊技制御手段は、可変表示の開始条件の成立時に識別情報の可変表示態様を特定の可変表示態様としてのリーチ態様(上記の実施の形態では左右図柄が揃った態様)とするか否かを決定し、可変表示の実行条件の成立時に識別情報の可変表示態様が特定の可変表示態様としてのリーチ態様となるか否かを判定したが、特定の可変表示態様はリーチ態様に限られない。出現しうる可変表示態様のうちのその他の態様と区別可能な可変表示態様であれば、他の可変表示態様であってもよい。例えば、左中右図柄がいわゆるチャンス目等の特定の図柄で一旦停止し、可変表示を再開した後に左中右図柄が確定(最終停止)するような可変表示態様であってもよい。
また、上記の実施の形態では、入賞時判定結果コマンドにもとづいて、演出制御手段が連続予告演出を実行したが、連続予告演出に限らず、他の演出を実行するようにしてもよい。例えば、可変表示装置9において可変表示の開始から表示結果を表示するまでの全体の演出、大当り遊技中の演出(例えば、大当り遊技中の演出がストーリー展開するもので、演出制御手段において抽選を行って、大当り遊技中にストーリーの内容を複数のストーリーの中から抽選して決定する)や、確変や時短を選択する演出などの各種の演出を実行するようにしてもよい。
また、上記の実施の形態では、連続予告および予告A,Bの演出をキャラクタによって行ったが、予告演出はどのような形態のものであってもよく、例えば、すべり演出(低速変動状態において数図柄分高速変動させる演出)や、もどり演出(図柄の停止位置を通り過ぎたあと逆向きに変動させる演出)などのような特別図柄の変動態様を変化させることで予告演出を行うようにしてもよい。また、背景を変化させることによって予告演出を行うようにしてもよい。
また、上記の実施の形態では、始動入賞記憶数を最大4個であるとしていたが、他の数であってもよい。
また、上述した実施の形態では、入賞確認処理(図12参照)における判定処理(ステップS115〜ステップS119)が、始動入賞口への入賞があった場合に開始されたが、遊技機が、例えば複数個の入賞がなければ可変表示が開始されない構成である場合には、複数個の入賞があったことを条件に判定処理を開始するようにしてもよい。また、所定の可変入賞装置(例えば第2種可変入賞球装置)が有利な状態となっている期間(例えば開放動作を実行したときから所定期間が経過するまでの期間)にのみ入賞が認められるような場合には、当該期間中に遊技球が入賞したことを条件に判定処理を開始するようにしてもよい。
また、上記の実施の形態では、遊技機は、主基板31から各演出制御基板(図柄制御基板80、ランプ制御基板35、音制御基板70)に制御コマンドを送信し、各演出制御基板が受信した制御コマンドにもとづいて演出手段(可変表示装置9、ランプ・LEDなどの発光体、スピーカ27)を制御する遊技機であったが、各演出制御基板の一部の機能(例えば図柄制御基板80の有する機能)を有する主演出制御基板を設け、主基板31からの制御コマンドにもとづいて、主演出制御基板が、各演出制御基板に制御コマンドを送信するように構成された遊技機であっても本発明を適用することができる。
なお、上述した実施の形態において、「特定遊技状態」とは、所定の遊技価値が付与された遊技者にとって有利な状態を意味する。具体的には、「特定遊技状態」は、例えば、例えば可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態(大当り遊技状態)、遊技者にとって有利な状態となるための権利が発生した状態、景品遊技媒体払出の条件が成立しやすくなる状態などの、所定の遊技価値が付与された状態である。
また、上述した実施の形態において、「特別遊技状態」とは、大当りとなりやすい遊技者にとって有利な状態を意味する。具体的には、「特別遊技状態」は、例えば、特別図柄が大当り図柄で揃う確率が高確率状態とされる確変状態、単位時間あたりの普通図柄の変動回数が高められる時短状態、可変入賞球装置15の開成期間や開成回数が高められる開放延長状態などの大当りとなる確率が高められている高確率状態である。なお、時短状態は、可変入賞球装置15の開放回数が高められていることから単位時間あたりの入賞回数が増加し、単位時間あたりの特別図柄の可変表示回数が高められるので、大当りとなる確率が高められている状態といえる。また、同様に、開放延長状態は、可変入賞球装置15の開成期間や開成回数が高められていることから単位時間あたりの入賞回数が増加し、単位時間あたりの特別図柄の可変表示回数が高められるので、大当りとなる確率が高められている状態といえる。
さらに、上記の各実施の形態のパチンコ遊技機1は、始動入賞にもとづいて可変表示装置9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第2種パチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。