以下、実施例に基づいて本発明を更に詳細に説明する。図1〜図4は、実施例に係るスロットマシンSLを図示したものである。本スロットマシンSLは、矩形箱状の本体ケース1と、各種の遊技部材を装着した前面パネル2とが、ヒンジ3を介して連結され、前面パネル2が本体ケース1に対して開閉可能に構成されている(図2)。そして、図1は前面パネル2の正面図、図2はスロットマシンSLの右側面図(a)と平面図(b)、図3は前面パネル2の背面図、図4は本体ケース1の内部正面図を示している。
図4に示す通り、本体ケース1の略中央には、3つの回転リール4a〜4cを備える図柄回転ユニット4が配置され、その下側に、メダル払出装置5が配置されている。各回転リール4a〜4cには、BB図柄、RB図柄、各種のフルーツ図柄、及びリプレイ図柄などが描かれている。メダル払出装置5には、メダルを貯留するメダルホッパー5aと、払出モータMと、メダル払出制御基板55と、払出中継基板63と、払出センサ(不図示)などが設けられている。ここで、メダルは、払出モータMの回転に基づいて、払出口5bから図面手前に向けて導出される。なお、限界量を越えて貯留されたメダルは、オーバーフロー部5cを通して、補助タンク6に落下するよう構成されている。
上記のメダル払出装置5に隣接して電源基板62が配置され、また、図柄回転ユニット4の上部に主制御基板50が配置され、主制御基板50に隣接して回胴設定基板54が配置されている。なお、図柄回転ユニット4の内部には、回胴LED中継基板58と回胴中継基板57とが設けられ、図柄回転ユニット4に隣接して外部集中端子板56が配置されている。
図1に示すように、前面パネル2の上部には液晶表示部7が配置され、その下部には、各回転リール4a〜4cに対応する表示窓8a〜8cが配置されている。表示窓8a〜8cを通して、各回転リール4a〜4cの回転方向に、各々3個程度の図柄が見えるようになっており、合計9個の図柄の水平方向の三本と、対角線方向の二本が仮想的な停止ラインとなる。このような表示窓8aの左側には、遊技状態を示すLED群9が設けられ、その下方には、遊技成果として払出されるメダル数を表示する払出表示部10や、クレジット状態のメダル数を表示する貯留数表示部11が設けられている。
前面パネル2の垂直方向中央には、メダルを投入するメダル投入口12が設けられ、これに隣接して、メダル投入口12に詰まったメダルを返却させるための返却ボタン13が設けられている。また、クレジット状態のメダルを払出すクレジット精算ボタン14と、メダル投入口12へのメダル投入に代えてクレジット状態のメダルを擬似的に一枚投入する投入ボタン15と、クレジット状態のメダルを擬似的に三枚投入するマックス投入ボタン16とが設けられている。
これらの遊技部材の下方には、回転リール4a〜4cの回転を開始させるスタートレバー17と、回転中の回転リール4a〜4cを停止させるためのストップボタン18a〜18cと、表示部7(実施例では液晶表示部)に遊技者への支援情報を表示するためのメニュースイッチ19とが設けられている。メニュースイッチ19は、上向き矢印のアップスイッチUP(UP接点)と、下向き矢印のダウンスイッチDW(DW接点)と、その間に設けられた決定スイッチDE(DE接点)とを有して構成されている。これらのメニュースイッチ19は、各回のゲーム終了後、メダル投入口12にメダルが投入されるか、或いは、投入ボタン15,16がON操作されて次回のゲームが開始されるまでに限り操作可能になっている。
その他、前面パネル2の下方には、メダルを蓄える横長の受け皿20と、払出装置5の払出口5bに連通するメダル導出口21とが設けられている。なお、メダル導出口21の左右にはスピーカSPが配置されている。なお、スピーカSPは遊技機の上部にも配置されるが、図1には現れていない。
図3に示すように、前面パネル2の裏側には、メダル投入口12に投入されたメダルの選別を行うメダル選別装置22と、メダル選別装置22により不適正と判別されたメダルをメダル導出口21に案内する返却通路23とが設けられている。また、前面パネル2の裏側上部には、演出制御基板51、演出インタフェイス基板52、及び液晶制御基板61などを収容する基板ケース24が配置されている。そして、メダル選別装置22の上部には、図1に示す各種の遊技部材と主制御基板50との間の信号を中継する遊技中継基板53が設けられている。
図5は、実施例に係るスロットマシンSLの回路構成を示すブロック図である。図示の通り、このスロットマシンSLは、回転リール4a〜4cを含む各種の遊技部材の動作を統括的に制御する主制御基板50と、主制御基板50から受けた制御コマンドCMDに基づいて統一的な演出動作を実現する演出制御基板51と、主制御基板50と演出制御基板51との間に位置する演出インタフェイス基板52と、演出インタフェイス基板52を経由して演出制御部51から制御コマンドCMD’を受けて液晶表示部7を駆動する液晶制御基板61と、交流電圧(24V)を直流電圧(5V,12V,24V)に変換して装置各部に供給する電源基板62とを中心に構成されている。
主制御基板50、演出制御基板51、及び液晶制御基板61には、ワンチップマイコンを有するコンピュータ回路が搭載されている。そこで、コンピュータ回路のハードウェア構成及びソフトウェア機能を総合して、以下の説明では、主制御部50、演出制御部51、及び液晶制御部61と言うことがある。
主制御部50は、演出制御部51に対して、スピーカSPによる音声演出、LEDランプや冷陰極線管放電管によるランプ演出、及び、液晶表示部7による図柄演出やエラー報知などを実現するための制御コマンドCMDを出力している。
演出制御基板51は、演出インタフェイス基板52を通して、液晶制御部61に接続されており、液晶制御部61は、演出制御部51から受けた制御コマンドCMD’に基づいて、液晶表示部7における、ゲーム状態などの報知処理や、図柄演出処理や、エラー報知処理などを実現している。また、演出制御部51は、メニュースイッチ19に接続されており、メニュースイッチ19の操作位置(UP,DE,DW)に応じた制御コマンドCMD’を液晶制御部61に出力している。そして、液晶制御部61は、受けた制御コマンドCMD’に基づいて、液晶表示部7に遊技支援情報(メニュー画面)を表示している。
また、演出制御部51は、演出インタフェイス基板52と共に、LED基板59やインバータ基板60や回胴LEDドライブ基板58を経由して、各種のLEDや冷陰極線管放電管におけるランプ演出を実現している。更にまた、演出制御部51は、演出インタフェイス基板52を通してスピーカSPを駆動して音声演出を実現している。
ところで、この実施例では、演出制御部51から液晶制御部61に伝送される制御コマンドCMD’は、(a)ゲーム状態の報知や図柄演出の内容を規定するA群の制御コマンドと、(b)エラーの内容を規定するB群の制御コマンドと、(c)メニュー画面の内容を規定するC群の制御コマンドとに大別される。ここで、エラー報知用のB群の制御コマンドは、主制御部50で生成されて伝送されたものを、そのまま液晶制御部61に転送するだけである。同様に、ゲーム状態を報知するためのA群の制御コマンドも、主制御部50から受けた制御コマンドCMDをそのまま液晶制御部61に転送する。一方、図柄演出の内容を規定するA群の制御コマンドについては、更なる演出抽選を経て、新たに生成した制御コマンドCMD’を液晶制御部61に送信している。但し、新たに生成した制御コマンドCMD’は、主制御部50から受けた制御コマンドCMDと同種の同一範疇の制御コマンドであり、スピーカSPによる音声演出や、LEDランプや冷陰極線管放電管によるランプ演出と同期した図柄演出が液晶表示部7で実現される。
一方、遊技支援情報を表示するメニュー画面用のC群の制御コマンドは、メニュースイッチ19のON操作に基づいて、演出制御部51において生成され、これが制御コマンドCMD’として、液晶制御部61に出力される。このC群の制御コマンドとA群の制御コマンドとは、原則として、排他的に演出制御部51から出力される。したがって、演出制御部51は、C群の制御コマンドの出力時に、主制御部50からA群の制御コマンドを受けた場合には、原則として、C群の制御コマンドを出力することなく、A群の制御コマンドのみを液晶制御部61に転送する。
但し、B群の制御コマンドと、A群の制御コマンドの一部については、演出制御部51から液晶制御部61に、同時期に合せて出力される。この例外的な制御コマンドとしては、例えば、ゲーム開始前に実行される予告演出用の予告コマンドが例示される。この予告演出は、例えば、内部抽選ではBB図柄やRB図柄に当選していることを、次回のゲーム開始前に非断定的に報知する演出である。非断定的な報知であるため虚偽も含まれるが、メニュー画面(遊技支援画面)の表示中であっても、遊技者にヒントを与えることで、折角の内部当選状態を遊技者が無駄することが未然に防止される。
主制御部50は、遊技中継基板53を通して、スロットマシンの各種遊技部材に接続されている。具体的には、スタートレバー17の始動スイッチ、ストップボタン18a〜18cの停止スイッチ、投入ボタン15,16の投入スイッチ、清算ボタン14の清算スイッチ、投入枚数判定部21dを構成するフォトインタラプタPH1,PH2、投入メダル返却部21cを構成するブロッカーソレノイド31、及び、各種LED素子9〜11などに接続されている。
また、主制御部50は、回胴中継基板57を経由して、回転リール4a〜4cを回転させる3つのステッピングモータ、及び、回転リール4a〜4cの基準位置を検出するためのインデックスセンサに接続されている。そして、ステッピングモータを駆動又は停止させることによって、回転リール4a〜4cの回転動作と、目的位置での停止動作を実現している。
主制御部50は、払出中継基板63を通してメダル払出装置5にも接続されている。メダル払出装置5には、メダル払出制御基板55と、メダル払出センサと、払出モータMとが設けられており、メダル払出制御基板55は、主制御部50からの制御コマンドに基づいて払出モータMを回転させて、所定量のメダルを払出している。
その他、主制御部50は、外部集中端子板56と、回胴設定基板54にも接続されている。外部集中端子板56は、例えばホールコンピュータHCに接続されており、主制御部50は、外部集中端子板56を通して、メダルの投入枚数やメダルの払出枚数などを出力している。また、回胴設定基板54は、係員が設定した確率的なメダル払出枚数のランク設定値を示す設定キー信号などを出力している。
図6は、演出制御基板51と演出インタフェイス基板52と液晶制御基板61の内部回路をやや詳細に図示したものである。演出制御基板51は、ワンチップマイコン65と、演出制御部51の制御プログラムを記憶するROM66と、主制御部50から受けた制御コマンドCMDに基づく一連の音声信号を、ワンチップマイコン65の制御にしたがって出力する音声再生用IC67と、音声再生用ICが出力するべき音声情報を圧縮状態で記憶する音声用ROM68とを備えて構成されている。
図示の通り、ワンチップマイコン65は、主制御部50が出力する制御コマンドCMDを、演出インタフェイス基板52を経由して入力ポートIN1に受けている。ワンチップマイコン65は、制御コマンドCMDに同期したストローブ信号STBを割込み端子に受けることで、割込み処理プログラムを起動させ、起動された受信プログラム(割込み処理プログラム)に基づいて制御コマンドCMDを取得している。先に説明した通り、取得する制御コマンドは、ゲーム状態の報知や図柄演出の内容を規定するA群の演出用コマンドや、エラー報知の内容を規定するB群のエラー報知コマンドである。
また、ワンチップマイコン65は、メニュースイッチ19を別の入力ポートIN2に受けている。そして、スイッチ操作位置に対応するC群の制御コマンド(遊技支援画面の内容を規定するメニュー画面コマンド)を生成して、出力が許可される動作状態であれば、これをストローブ信号STB’と共に、出力ポートOUTから演出インタフェイス基板52に向けて出力している。なお、出力ポートOUTからは、A群の演出用コマンドやB群のエラー報知コマンドも、ストローブ信号STB’と共に出力される。
演出インタフェイス基板52は、バスバッファ69,70と、D級アンプ71,72とを搭載して構成されている。バスバッファ70は、主制御部50からの制御コマンドCMDとストローブ信号STBを演出制御基板51に転送し、バスバッファ69は、演出制御部51からの制御コマンドCMD’とストローブ信号STB’を液晶制御基板61に転送している。なお、D級アンプ71,72は、音声再生用IC67が出力する2チャンネルのステレオ音声信号AOL,AORをD級増幅して、4つのスピーカに供給している。D級アンプを備えるので、低消費電力でありながら、迫力ある音量の音声演出が可能となる。
液晶制御基板61は、ワンチップマイコン73と、液晶表示部7の駆動用IC74と、ROM75とを搭載して構成されている。演出制御部51から送信される制御コマンドCMD’は、ストローブ信号STB’と共に、ワンチップマイコン73の入力ポートIN3に供給されている。そして、ワンチップマイコン73は、制御コマンドCMD’に同期したストローブ信号STB’を割込み端子に受けることで、割込み処理プログラムを起動させ、起動された受信プログラム(割込み処理プログラム)に基づいて制御コマンドCMD’を取得する。そして、ワンチップマイコン73は、LCD駆動用IC74を制御することで、取得した制御コマンドCMD’に対応する画面を液晶表示部7に表示する。
以上、図1のスロットマシンについて回路構成を中心に説明したので、次に主制御部50が実現する制御動作を簡単に説明する。主制御部50の制御プログラムは、電源投入時に開始される無限ループ状のメイン処理(図7)と、カウンタ回路からの定時割込みで起動されるタイマ割込み処理(不図示)と、電源遮断時に電源基板62からの検出信号RESで起動される電圧降下割込み処理(不図示)と、を有して構成されている。
図7に示す通り、電源が投入されると初期処理(ST1)の後、RWMのワークエリアをクリアする(ST2)。また、初期処理(ST1)において割込み禁止状態に設定されているCPUを、割込み許可状態に設定する(ST2)。
ステップST2の処理が終われば、次に、メダル投入口12から実際に投入されたメダル、及び、投入ボタン15、16の押下によって擬似的に投入されたメダルについてのメダル投入処理を行う(ST3)。次に乱数抽出処理(ST4)が実行される。乱数抽出処理では、ソフトウェアカウンタである乱数カウンタCTの値を変数RNDに取得する。なお、乱数カウンタCTの値は、不図示のタイマ割込み処理において定期的に更新されている。
その後、乱数抽出処理(ST4)で抽出された乱数値RNDに基づいて図柄抽選処理が実行される(ST5)。この図柄抽選処理で決定される当選役には、BB(ビッグボーナス)当り、RB(レギュラーボーナス)当り、その他の小役当りが設けられている。小役当りには、2〜15枚程度の配当メダルが払出されるフルーツ図柄当り(小役1〜小役3)と、再ゲームが可能なリプレイゲーム当り(小役4)とが含まれる。
本実施例では、RB(レギュラーボーナス)当りは、最高133枚の払出枚数の範囲内で、ジャックゲームなどと称される高価値のゲームが所定回数内で実行可能な当選役を意味する。ジャックゲームとは、例えば、メダル1枚の投入で15枚程度のメダルが払い出されるゲームである。一方、BB(ビッグボーナス)当りは、RB当り状態が繰り返し実現される当選役であり、例えば、346枚のメダルが払出されるまで、このビッグボーナスゲームが継続される。
但し、このような高価値のボーナスゲーム(RB/BB)は、仮に、機器内部の抽選処理で当選状態となっても(ボーナス内部当選状態という)、回転リール4a〜4cの該当図柄を所定の停止ラインに揃えない限り実行が開始されない。しかも、ボーナス内部当選状態となったゲームで直ちに該当図柄を所定の停止ラインに揃えることは容易でないことから、ボーナス内部当選状態は、それが実効化されるまで、継続して保持されるようになっている。
以上のような図柄抽選処理(ST5)が終われば、その当否状態に対応した演出抽選を実行した後、回転リール4a〜4cを回転させるための準備作業を行い、タイマ割込みによる回転リール4a〜4cの回転を可能にし(ST6)、その後、ストップボタン18a〜18cが押されたら、対応する回転リール4a〜4cを停止させる回胴停止処理を行う(ST7)。
ここでは、図柄抽選処理(ST5)の当否結果に沿うように、停止制御が実行される。すなわち、図柄抽選処理(ST5)の結果、何らかの内部当選状態であれば、遊技者の適切な停止操作を条件として、当選結果に合うよう回転リール4a〜4cの図柄を整列させる。但し、遊技者がストップボタンを押すタイミングが不適切である場合には、外れ状態の図柄で停止される。この結果、折角の小役当選も無駄になるが、ボーナス当選については、次回のゲーム以降も持ち越される。
このようにして、全ての回転リール4a〜4cが停止したら、有効な停止ライン上に、当選図柄が揃ったか否かが判定され(ST8)、必要数のメダルが払出される(ST9)。
そして、リプレイ図柄が揃っているか否か判定され(ST10)、リプレイ図柄が揃っている場合には、再遊技動作の開始処理(ST11)を実行した後、ステップST2に移行する。リプレイ図柄が揃っていない場合には、RB図柄が揃っているか否か判定され、RB図柄が揃っている場合には、レギュラーボーナスの開始処理(ST13)を実行した後、ステップST2に移行する。また、現在がレギュラーボーナスゲーム中であるか否か判定され(ST14)、レギュラーボーナスゲーム中であれば必要な処理(ST15)を実行した後、ステップST2に移行する。
一方、ステップST14の判定がNOの場合には、BB図柄が揃っているか否か判定され(ST16)、BB図柄が揃っている場合には、ビッグボーナスの開始処理(ST17)を実行した後、ステップST2に移行する。また、現在がビッグボーナスゲーム中であるか否か判定され(ST18)、NOであれば何もしないでステップST2に移行する。一方、ビッグボーナスゲーム中であれば、ビッグボーナスゲームに必要な処理(ST19)を実行した後、ビッグボーナスゲームの終了条件を満たすか否か判定される(ST20)。そして、判定結果がNOの場合には、何もしないでステップST2に移行するが、判定結果がYESの場合には、BBゲーム中に使用したRWMエリアも含めワークエリアをクリアしてステップST3に移行する。
ところで、上記した一連の遊技制御動作の適宜なタイミングでは、主制御部50は、演出制御部51に対して、演出用のA群の演出用コマンドを出力する。A群の演出用コマンドを例示すると、例えば、ステップST3でメダル投入を確認すれば、「メダル投入コマンド」を送信するが、所定時間(例えば5分)以上メダルの投入が認められない場合には「デモ画面表示コマンド」を送信する。なお、スタートレバー17の操作を確認すれば「スタートレバー受付コマンド」を送信する。また、図柄抽選処理(ST5)の抽選結果に対応した演出動作が実行させるべく、ステップST5のタイミングで「演出コマンド」を送信する。また、適宜なタイミングで予告動作を実行するべく「予告コマンド」が送信される場合もある。
なお、これらのコマンド送信処理は、一定時間毎にメイン処理を中断させて起動されるタイマ割込み処理(不図示)において実行される。
続いて、図8〜図11のフローチャートに基づいて演出制御部51の動作内容を説明する。演出制御部51の動作は、電源投入後に実行されるメイン処理(不図示)と、所定時間毎にメイン処理を中断させて起動されるタイマ割込み処理(図8(a))と、ストローブ信号STBに起因して起動される受信割込み処理(図8(b))とを有して実現されている。
演出制御部51のワンチップマイコン65が、演出インタフェイス基板52を経由して、主制御部50が出力するストローブ信号STBを受けると、受信割込み処理(図8(b))が起動される。そして、同一データが複数回入力されることを条件に、入力ポートIN1から制御コマンドCMDが取得され、コマンドバッファに格納される(ST34)。
一方、タイマ割込み処理(図8(a))では、先ず、メニュースイッチ19の入力処理が実行される(ST30)。図8(c)に示す通り、メニュースイッチの入力処理では、最初に、その時が、メニュースイッチ19の操作が許可されている許可タイミングか否かが判定される(ST40)。メニュースイッチ19は、前回のゲーム終了後であって、且つ、次回のゲームの開始前である許可タイミングの場合だけ、その操作が許可される。したがって、この許可タイミングでなければ、何もしないで処理を終える。なお、毎回のゲーム終了は、専用の制御コマンドによって演出制御部51に通知されており、また、次回ゲームの開始は、「メダル投入コマンド」や「スタートレバー受付コマンド」の送信によって通知される。
そして、ステップST40の判定時が、メニュースイッチの許可タイミングであれば、入力ポートIN2のデータに基づいて、ボタン操作の有無が判定される。先に説明した通り、メニュースイッチ19には3つの接点(UP,DE,DW)が設けられているので、ボタン操作が認められる場合には、ON操作された接点に応じたメニューコマンドが生成され(ST42)、メニューコマンドバッファMBに格納される(ST43)。図8(e)(f)に示す通り、この実施例では、メニューコマンドバッファMBは、読出ポインタRD1と書込みポインタWR1とで管理されるリングバッファであり、同様のリングバッファ構造の遊技コマンドバッファYBとは別個に設けられている。
図12は、メニュースイッチ19のON操作によって表示される遊技支援情報(メニュー画面)を例示したものである。この実施例ではメニュー画面は三階層になっており、最初に図12(a)の初期画面が表示される。この初期画面には、「入賞履歴」「遊技情報」「リール配列」「リーチ目」「キャラクタ選択」「戻る」の選択欄が表示されており、メニュースイッチ19のUP接点(↑)又はDW接点(↓)がON操作されるに応じて、ハイライトされる選択欄が上下に移動するようになっている。
図12(a)の初期画面において、「戻る」以外の選択欄をハイライトさせた状態で、メニュースイッチ19のDE接点(決定接点)がON操作されると、メニュー画面は第ゼロ階層から第一階層に深化され、ハイライト位置に応じた情報が表示される(図12(b)〜(f)参照)。
図12(b)〜(f)に図示の通り、第一階層のメニュー画面でも、「戻る」を含んだ選択欄が表示されている。この第一階層においても、「戻る」以外の選択欄をハイライトさせた状態で、メニュースイッチ19のDE接点がON操作されると、メニュー画面は第一階層から第二階層に更に深化され、ハイライト位置に応じた情報が表示される。一方、「戻る」欄がハイライトされた状態でメニュースイッチ19のDE接点をON操作すると、元の画面に戻る。この点は第一階層の場合でも同じであり、第二階層の状態から「戻る」欄を二度操作すると図12(a)の初期画面に戻ることになる。
図10〜図11は、以上の動作を実現する、図8(c)のメニューコマンド生成処理(ST42)を具体的に説明するフローチャートである。メニューコマンド生成処理では、最初に、階層の深さを示す階層変数NESTがゼロか否かが判定される(ST60)。ゲーム終了後、初めてメニュースイッチ19がON操作された初期状態では、NEST=0であるので、このような場合には、続いて初期画面(図12(a)参照)に対応する制御コマンド(メニュー画面コマンド)が生成される(ST61)。次に、階層変数NESTを+1すると共に、選択欄を特定するライン変数LN1をゼロに初期設定して処理を終える(ST62)。なお、ステップST61の処理で生成された制御コマンドは、その後のステップST43(図8(c))の処理において、メニューコマンドバッファMBに格納される。格納位置は、書込みポインタWR1が示す位置であり、格納処理の後には、書込みポインタWR1が順方向に循環的に更新される。
このようなコマンド生成処理を経た後に、再度、メニュースイッチ19がON操作されると、今度は、階層変数NESTがNEST≠0(NEST=1)であることから、ステップST60からステップST63以降の処理に移行し、UP接点、DW接点、DE接点の何れかがON操作されたかが判定される。ここで、UP接点がON操作された場合には、ライン変数LN1を正方向に循環的に更新(通常は+1)するが(ST65)、DW接点がON操作された場合には、ライン変数LN1を負方向に循環的に更新(通常は−1)する(ST68)。
その後、更新されたライン変数LN1に対応した制御コマンドを生成して処理を終える(T66)。なお、この時に生成される制御コマンドは、第ゼロ階層の初期画面(図12(a))における選択欄の何れの欄をハイライトさせるかを特定するものであり、例えば、ライン変数LN1=2であれば、このような制御コマンドCMD’を受けた液晶制御部61の制御によって、「リール配列」の文字がハイライトされた初期画面が表示される。
一方、第ゼロ階層の初期画面(図12(a))の表示状態において、ライン変数LN1=5であり「戻る」がハイライトされた状態で、メニュースイッチ19のDE接点がON操作された場合には、ステップST69の判定の後、画面消去用の制御コマンドが生成され(ST70)、階層変数NESTが−1されて処理を終える(ST71)。その結果、画面消去用の制御コマンドCMD’を受けた液晶制御部61では、液晶表示部7から図12(a)の初期画面を消去することになる。
第ゼロ階層の初期画面(図12(a))の表示状態において、ライン変数LN1がLN1=1〜4の状態でメニュースイッチ19のDE接点がON操作された場合には、ステップST72の処理が実行される。ステップST72では、ライン変数LN1の値と階層変数NESTの値(=1)に応じた制御コマンドが生成される。そして、階層変数NESTが+1されると共に、ライン変数LN2がゼロに初期設定されて処理を終える(ST73)。
生成された制御コマンドCMD’は、メニューコマンドバッファMBに格納された後(図8(c)のST43)、液晶制御部61に送信される(図8(a)のST33)。その結果、制御コマンドCMD’を受けた液晶制御部61では、液晶表示部7に、図12(b)〜図12(f)のような第一階層のメニュー画面を表示することになる。なお、図12(b)〜図12(f)は、NEST=1であって、それぞれライン変数LN1=0〜4に対応する制御コマンドCMD’に基づいて描画されたメニュー画面である。
ライン変数LN1=0〜4は、それぞれ「入賞履歴」「遊技情報」「リール配列」「リーチ目」「キャラクタ選択」に対応している。例えば、入賞履歴画面では、過去、その遊技機でボーナスゲームが開始されるまでに、どれだけのゲーム数が消費されたかが表示される。したがって、ライン変数LN1=0に対応する制御コマンドCMD’は単一個では足りず、相当に多い個数となる。例えば、図12(b)の入賞履歴画面は、過去12回のボーナスゲームについて、これが開始されるまでの消費ゲーム数(実績データ)を表示するために、合計で10個(10×16ビット)以上の一連の制御コマンドCMD’が使用されている。
以上、第一階層画面に関する説明をしたので、次に、ステップST73の処理で階層変数NESTが2に更新された後の動作を図11に基づいて説明する。階層変数NESTが2となるのは、例えば、入賞履歴画面(図12(b))の表示中に「1/4」「2/4」「3/4」「4/4」の何れかを強調(ハイライト)させた状態で、メニュースイッチのDE接点をON操作した時である。この場合には、「1/4」→「2/4」→「3/4」→「4/4」の順番に、表示される実績データが過去に遡る。
また、リーチ目の画面(図12(e))や、キャラクタ選択の画面(図12(f))の表示中に、「1/2」「2/2」や、「ジェシカ」「エイミー」の何れかをハイライトさせた状態でメニュースイッチのDE接点をON操作した時にも、階層変数NESTが2となる。
このような階層変数NESTがNEST=2の状態では、ステップST63の次にステップST74(図11)の判定がされ、ステップST60からステップST63以降の処理に移行し、UP接点、DW接点、DE接点の何れかがON操作されたかが判定される(ST75、ST78,ST80)。ここで、UP接点がON操作された場合には、ライン変数LN2を正方向に循環的に更新するが(ST76)、DW接点がON操作された場合には、ライン変数LN2を負方向に循環的に更新する(ST79)。
その後、更新されたライン変数LN2に対応した制御コマンドを生成して処理を終える(ST77)。なお、この時に生成される制御コマンドは、第一階層のメニュー画面(図12(b)(e)(f))における選択欄の何れの欄を強調(ハイライト)するかを特定するものである。
一方、第一階層のメニュー画面(図12(b)(e)(f))の表示状態において、「戻る」が強調された状態で、メニュースイッチ19のDE接点がON操作された場合には、ステップST80の判定の後、ライン変数LN1に対応する第一階層画面用の制御コマンドが生成され(ST81)、階層変数NESTが−1されて処理を終える(ST82)。その結果、制御コマンドCMD’を受けた液晶制御部61では、第一階層の画面を液晶表示部7に表示することになる。
第一階層の初期画面(図12(b)(e)(f))の表示状態において、メニュースイッチ19のDE接点がON操作された場合には、ステップST83の処理が実行される。ステップST83では、ライン変数LN2の値と階層変数NESTの値(=2)に応じた制御コマンドが生成される。そして、第三階層が存在する場合には、階層変数NESTが+1されると共に、ライン変数LN3がゼロに初期設定されて処理を終える(ST84)。なお、第三階層が存在する場合には、その後の処理は、図11の場合と同様に実行される。但し、本実施例では第二階層のメニュー画面で終了するので、ステップST74の判定で、NEST≠2であればエラーとして何もしないで処理を終える。
何れにしても、上記のようにして生成されたメニューコマンドCMD’は、図8(e)に例示するリングバッファ構造のメニューコマンドバッファMBに格納されて、メニュースイッチ処理を終える(ST43)。
以上、図8(a)のタイマ割込み処理におけるメニュースイッチ処理(ST30)について、特に、メニューコマンド生成処理(ST42)を詳細に説明した。この処理内容から明らかな通り、本実施例では、遊技者はメニュースイッチ19のUP接点、DW接点、DE接点の何れかをON操作するだけで、所望の支援情報が液晶表示部7に表示される。そして、プログラム構成がシンプルであるため、階層を適宜に深くすることで、遊技者の要望の応える詳細な情報を提供することができる。
図8(a)に戻って説明を続けると、演出制御部51のタイマ割込み処理(図8(a))において、上記したメニュースイッチ処理(ST30)が終われば、次に、受信コマンドが解析される(ST31)。具体的な処理内容は、図8(d)に示す通りであり、受信割込み処理(図8(b))において新たに取得した制御コマンドCMDが判定される(ST44)。先に説明した通り、主制御部が出力する制御コマンドには、ゲーム状態の報知や図柄演出の内容を規定するA群の制御コマンドと、エラー報知の内容を規定するB群の制御コマンドに大別されている。
そして、今回取得した制御コマンドが、図柄演出に関する演出コマンドCMDであった場合には、この演出コマンドCMDを解析して(ST45)、一連の演出動作のシナリオを決定する(ST46)。なお、一連の演出シナリオは、主制御部50から受けた演出コマンドCMDに基づいて、演出制御部51における再度の演出抽選によって、演出内容の細部が決定されたものである。決定内容は、通常は、音声演出とランプ演出と図柄演出とが同期して実行される演出であり、このような一連の演出シナリオを特定する新たな制御コマンド(演出コマンド)CMD’が生成される(ST47)。
そして、生成された制御コマンドCMD’は、遊技コマンドバッファYBに格納される。遊技コマンドバッファYBは、書込みポインタWR2と読出しポインタRD2で管理されるリングバッファであり、制御コマンドCMD’が格納された後は、書込みポインタWR2が、正方向に循環的に更新される(ST48)。
以上、A群の制御コマンドのうち、演出コマンドを受信した場合について説明したが、A群の他の制御コマンドや、B群の制御コマンドを受信した場合には、ステップST44の判定の後、ステップST48に移行して、その制御コマンドが遊技コマンドバッファYBに格納される。
図8のタイマ割込み処理において、上記のようにして受信コマンド解析処理(ST31)が終われば、演出開始時からの経過時間に対応して、ステップST46で決定された演出シナリオの通りに、ランプ演出と音声演出を実行する(ST32)。なお、図柄演出については、制御コマンドCMD’を受けた液晶制御部において、ランプ演出や音声演出と同期して実行される。
演出シナリオの更新処理(進行処理)が終われば、コマンドバッファMB,YBに格納されている制御コマンドCMD’を液晶制御部61に送信してタイマ割込み処理を終える(ST33)。
図9は、コマンド送信処理(ST33)の具体的な処理内容を示すフローチャートである。コマンド送信処理では、遊技コマンドバッファYBに格納されている制御コマンドが優先して送信される。
コマンド送信処理(ST33)では、先ず、遊技コマンドバッファYBに格納された制御コマンド(A群又はB群の制御コマンド)について、読出しポインタRD2が指す制御コマンドが、ゲーム開始を示す制御コマンドであるか否かが判定される(ST50)。例えば、遊技コマンドバッファYBの読出し位置に、「メダル投入コマンド」や「スタートレバー受付コマンド」が格納されている場合には、ゲーム開始状態であると判定される。
これは、遊技者が次回のゲームを開始させたことを意味するので、最早、メニュー画面を表示し続ける必要はない。この点は、メニュースイッチ19のON操作に対応するメニュー画面が、表示に必要な制御コマンドCMD’の多さによる送信遅れによって、未だ表示されていない状態でも同様であると考えられる。
そこで、遊技コマンドバッファYBの読出し位置に、ゲーム開始を示す制御コマンドを検出した場合には、メニューコマンドバッファMBの二つのポインタWR1とRD1の値を一致させる(ST51)。この処理の結果、読出しポインタRD1の値は、書込みポインタWR1の値に一致するので、それまでに格納されたメニューコマンドが廃棄させる(消去する)ことを意味する。例えば、図9(b)では、メニューコマンド1〜メニューコマンドNが全て廃棄させることになり、言い換えると、メニューコマンドバッファMBの内容がクリアされる。
したがって、メニュー画面に表示する遊技支援情報を如何に増加させても、その結果、制御コマンドCMD’の送信に手間取るようなことがあっても、ゲーム開始時には、液晶表示部7で、ゲーム開始に対応する遊技演出を遅滞なく開始させることができる。
ステップST51の処理が終われば、階層変数NESTの値をゼロに戻す(ST52)。これは、演出制御部51が、主制御部50からゲーム開始の制御コマンドを受けたタイミングでは、演出制御部51ではメニュー画面の表示動作(ST63〜ST84)を実行している可能性があり、階層変数NESTが1又は2に設定されている可能性があるからである。本実施例では、ゲーム開始時には、必ず、階層変数NESTがゼロに戻されるので(ST52)、その回のゲームを終えた後に、メニュースイッチ19をON操作した場合に、ステップST61の処理が実行されて、正しく初期画面(図12(a))が表示される。
ステップST52の処理が終われば、遊技コマンドバッファYBの書込みポインタWR2の値と、読出しポインタRD2の値とを比較する(ST53)。二つのポインタの値が一致する場合(WR2=RD2)には、送信すべき制御コマンドが存在しないことを意味する。一方、図9(c)に例示するように、WR2≠RD2の場合には、液晶制御部61に送信すべき制御コマンドCMD’が存在することを意味する。
そこで、書込みポインタWR2と読出しポインタRD2の値が一致しない場合には、上限値Mを超えない個数の制御コマンドを、液晶制御部61に向けて送信する(ST54)。また、読出しポインタRD2の値を、コマンド送信個数の分だけ、遊技コマンドバッファYBの正方向に循環的に更新する(ST54)。
なお、ステップST54の処理で送信個数を、上限値Mを超えないよう制限するのは、一度に多くの制御コマンドを送信したのでは、(a)コマンド送信処理(ST33)で多大な時間を消費して、その他の演出制御部51の処理に悪影響を与えるため、及び、(b)液晶制御部61でも、コマンド受信処理などの処理負担が過大になるためである。本実施例では、一度に送信する制御コマンドの個数を制限するので、例えば、メニュー画面に表示する遊技支援情報を如何に増加させても、演出制御部51や液晶制御部61に特段の制御負担を与えない。
このようにして制限された個数の制御コマンドを送信した後、未だ送信可能個数に余裕がある場合には、ステップST55からステップST56に移行する。なお、ステップST56の処理が実行されるのは、遊技コマンドバッファYBの制御コマンドを送信し終わって更に余裕がある場合の他、遊技コマンドバッファYBが空の場合(RD2=WR2)も含まれる。
上記何の場合にも、先ず、メニューコマンドバッファMBに関する書込みポインタWR1と読出しポインタRD1の値が一致するか否かが判定される(ST56)。両者が一致する場合(WR1=RD1)は、送信すべき制御コマンド(メニューコマンド)が存在しないことになるが、不一致の場合(WR1≠RD1)には、液晶制御部61に送信すべき制御コマンドCMD’が存在することを意味する。
そこで、書込みポインタWR1と読出しポインタRD1の値が一致しない場合には、上限値を超えない個数の制御コマンドを液晶制御部61に向けて送信する(ST57)。また、読出しポインタRD1の値を、コマンド送信個数の分だけ、メニューコマンドバッファMBの正方向に循環的に更新して処理を終える(ST57)。
このように本実施例では、制御コマンドの種別に応じて、別々のコマンドバッファMB,YBを使用するので、A群〜C群の制御コマンドが錯綜して存在する場合でも、演出制御部51や液晶制御部61に制御負担を与えることがない。A群〜C群の制御コマンドが錯綜して存在する場合としては、例えば、各回のゲーム開始前に、遊技者がメニュースイッチ19をON操作した場合であって、たまたまこのタイミングで、主制御部50からエラー報知コマンドや予告動作用の演出コマンドを受信したような場合である。
このような場合には、メニューコマンドバッファMBに、多数のメニューコマンドが格納されている状態で、更に、遊技コマンドバッファYBには、エラー報知コマンドや、予告動作用の演出コマンド(予告コマンド)が格納され制御が混乱しがちである。しかし、このような錯綜状態であっても、本実施例では、遊技コマンドバッファYBの制御コマンドが先に送信されるので(ST53〜ST55参照)、大切なエラー報知や予告演出が、メニュー表示動作のために遅れるおそれはない。なお、メニュー画面の表示中に受けたエラー報知コマンドや予告コマンドは、液晶制御部61において実効化される段階で、液晶表示部7のメニュー画面に重ねて表示されるので、遊技者は、支障なく遊技支援情報を把握することができる。
なお、エラー報知コマンドや予告コマンドの送信の後に、最初のメニューコマンドが送信される場合も同様であり、エラー報知中や予告演出動作中の液晶表示部7に、必要な遊技支援情報が重ねて表示される。一方、デモ画面表示コマンドを送信した後に、メニューコマンドを送信した場合には、これを受けた液晶制御部61では、デモ画面を消去してメニュー画面を描画する。
ところで、本発明では、メニューコマンドバッファMBと、遊技コマンドバッファYBとを統一させることは特に禁止されない。しかし、単一のコマンドバッファを設ける場合には、優先して送信すべき制御コマンドの選別処理が必要となり、演出制御部51の制御負担が増加する。また、演出制御部51が、ゲーム開始の制御コマンドを受けた場合にも、単一のコマンドバッファに格納されている未送信の制御コマンドのうち、廃棄すべき制御コマンドと、残留させるべき制御コマンドの選別作業が必要となり、この意味でも、演出制御部51の制御負担が増加する。
以上、本発明の実施例について詳細に説明したが、具体的な記載内容は特に本発明を限定するものではなく、本発明の趣旨を逸脱することなく各種の改変が可能である。例えば、実施例では、第一指令CMDと第二指令CMD’のうち、第一指令CMDを優先的に取り扱ったが、その逆に、第二指令CMD’を優先的に取り扱うこともできる。例えば、緊急性を要しないエラー報知コマンドCMDなどについては、第二指令CMD’の後に下流側に送信すれば良い。