以下、添付図面を参照し、本発明に係る実施形態を次の順序で説明する。
<1.遊技機の構造>
<2.遊技機の制御構成>
[2-1.主制御部]
(設定値の変更操作について)
(性能表示について)
(演出制御コマンド)
[2-2.演出制御部]
<3.動作の概要説明>
[3-1.図柄変動表示ゲーム]
(特別図柄変動表示ゲーム)
(装飾図柄変動表示ゲーム)
(普通図柄変動表示ゲーム)
(保留について)
[3-2.遊技状態]
[3-3.当りについて]
[3-4.演出について]
(演出モード)
(予告演出)
(演出手段)
<4.主制御部の処理>
[4-1.主制御側メイン処理]
(初期設定処理)
(初期設定後の処理)
(メインループ処理)
(設定変更処理)
(RAMクリア処理)
(設定確認処理)
(メインループ前処理)
(実施形態としての設定値表示用データテーブルと設定値変換テーブルの利点)
[4-2.主制御側タイマ割込み処理]
(電源チェック・バックアップ処理)
(エラー管理及び遊技進行のための処理等)
[4-3.特別図柄変動表示ゲームに係る処理]
(特別図柄管理処理)
(特図1始動口チェック処理)
(特別図柄変動開始処理)
(変動管理処理)
(大当り乱数判定処理)
(変動パターン抽選処理)
(実施形態としての設定値関連データテーブルの利点)
<5.演出制御部の処理>
[5-1.処理概要]
[5-2.設定履歴確認画面の表示]
[5-3.実施形態における設定値のデータ型について]
[5-4.設定示唆演出]
(左図柄による示唆演出)
(ミニキャラ予告による示唆演出)
(大当り終了演出による示唆演出)
(SU予告による示唆演出)
[5-5.主制御部と演出制御部が対応する設定値範囲の差違について]
<6.変形例>
<7.実施形態のまとめ>
<8.その他変形例
<1.遊技機の構造>
図1及び図2を参照して、本発明に係る実施形態としてのパチンコ遊技機1の構造について説明する。図1はパチンコ遊技機1の外観を示す正面側の斜視図を、図2はパチンコ遊技機1が有する遊技盤3の正面側を示した図である。
図1に示すパチンコ遊技機1(以下「遊技機1」と略称する場合がある)は、木製の外枠4の前面に額縁状の前枠2を開閉可能に取り付け、前枠2の裏面に取り付けた遊技盤収納フレーム(図示せず)内に遊技盤3(図2参照)を装着し、この遊技盤3の表面に形成した遊技領域3aを前枠2の開口部に臨ませた構成を有する。この遊技領域3aの前側には、透明ガラスを支持したガラス扉6が設けられている。また遊技盤3の背面側には、遊技動作を制御するための各種制御基板(図3参照)が配設されている。
ガラス扉6の前側には扉ロック解除用のキーシリンダ(図示せず)が設けられており、このキーシリンダにキーを差し込んで一方側に操作すれば前枠2に対するガラス扉6のロック状態を、他方側に操作すれば外枠4に対する前枠2のロック状態をそれぞれ解除して前側に開放できるようになっている。
ガラス扉6の下側には、ヒンジ(図示せず)により前枠2に開閉自在に枢支された前面操作パネル7が配置されている。前面操作パネル7には、上受け皿ユニット8が設けられ、この上受け皿ユニット8には、排出された遊技球を貯留する上受け皿9が形成されている。
また上受け皿ユニット8には、上受け皿9に貯留された遊技球を遊技機1の下方に抜くための球抜きボタン14と、遊技球貸出装置(図示せず)に対して遊技球の払い出しを要求するための球貸しボタン11と、遊技球貸出装置に挿入した有価価値媒体の返却を要求するためのカード返却ボタン12とが設けられている。また上受け皿ユニット8には、遊技者が操作可能に構成された演出ボタン13(操作手段)が設けられている。この演出ボタン13は、所定の入力受付期間中に内蔵ランプ(ボタンLED75)が点灯されて操作可能(入力受付可能)となり、その内蔵ランプ点灯中に所定の操作(押下、連打、長押し等)をすることにより演出に変化をもたらすことが可能となっている。
また、図1では図示を省略しているが、前面操作パネル7には、遊技者やホールスタッフ等の使用者が各種の項目の選択や方向指示等を行うための十字キー16が設けられている。
また前面操作パネル7の右端部側には、発射装置32(図3参照)を作動させるための発射操作ハンドル15が設けられている。
また前枠2の上部の両側と発射操作ハンドル15の上側とには、音響により音演出効果(効果音)を発揮するスピーカ46が設けられている。また、ガラス扉6の適所には、光の装飾により光演出効果を発揮する装飾ランプ45(例えばフルカラーLEDによる光演出用LED等)が複数設けられている。この装飾ランプ45としてのフルカラーLED(光演出用LED)は、パチンコ遊技機の周囲、つまりガラス扉6の前枠周縁に周方向に複数個設けられている。
図2を参照して、遊技盤3の構成について説明する。図示の遊技盤3には、発射された遊技球を案内する球誘導レール5が盤面区画部材として環状に装着されており、この球誘導レール5取り囲まれた略円形状の領域が遊技領域3a、四隅は非遊技領域となっている。
この遊技領域3aの略中央部には、たとえば3つ(左、中、右)の表示エリア(図柄変動表示領域)において、独立して数字やキャラクタや記号などによる複数種類の装飾図柄(たとえば、左図柄(左表示エリア対応)、中図柄(中表示エリア対応)、右図柄(右表示エリア対応))の変動表示動作(変動表示および停止表示)が可能である液晶表示装置(LCD)36が設けられている。この液晶表示装置36は、後述する演出制御部24の制御の下、装飾図柄の変動表示動作の他、種々の演出を画像により表示する。
また遊技領域3a内には、液晶表示装置36の表示面の周りを遠巻きに囲繞する形でセンター飾り48が設けられている。センター飾り48は、遊技盤3の前面側に沿って設けられ、周囲の遊技球から液晶表示装置36の表示面を保護すると共に、遊技球の打ち出しの強さ又はストローク長により、遊技球の流路を左右に振り分けることを可能とする流路振分手段として働く。本実施形態では、センター飾り48の存在によって遊技領域3a内の上部両側(左側と右側)に遊技球の流路が形成されるように、センター飾り48は遊技領域3aのほぼ中央部に配置されている。発射装置32により遊技領域3aの上部側に打ち込まれた遊技球は、鎧枠部48bの上部側で左右に振り分けられ、センター飾り48の左側の左流下経路3bと右側の右流下経路3cとの何れかを流下する。
また遊技盤3の右上縁付近(右上隅)の非遊技領域は各種機能表示部となっており、7セグメント表示器(ドット付)を上始動口34(第1の特別図柄用)と下始動口35(第2の特別図柄用)に対応させて横に並べて構成される特別図柄表示装置38a(第1の特別図柄表示手段)と特別図柄表示装置38b(第2の特別図柄表示手段)とが設けられている。特別図柄表示装置38a、38bでは、7セグメント表示器により表現される「特別図柄」の変動表示動作による特別図柄変動表示ゲームが実行されるようになっている。そして上記の液晶表示装置36では、特別図柄表示装置38a、38bによる特別図柄の変動表示と時間的に同調して、画像による装飾図柄を変動表示して、種々の予告演出(演出画像)と共に装飾図柄変動表示ゲームが実行されるようになっている(これらの図柄変動表示ゲームについての詳細は追って説明する)。
また各種機能表示部には、特別図柄表示装置38a、38bの隣に、7セグメント表示器(ドット付)からなる複合表示装置(保留複合表示用LED表示器)38cが配設されている。複合と称したのは、特別図柄1、2、普通図柄の作動保留球数の表示、変動時間短縮機能作動中(時短中)および高確率状態中(高確中)の状態報知という、5つの表示機能を有する保留・時短・高確複合表示装置(以下単に「複合表示装置」と称する)であるからである。
また各種機能表示部には、複合表示装置38cの隣りに、複数個(この実施形態では2個)のLEDを配置してなる普通図柄表示装置39a(普通図柄表示手段)が設けられている。この普通図柄表示装置39aでは、2個のLEDにより表現される普通図柄の変動表示動作により普通図柄変動表示ゲームが実行されるようになっている。例えば、変動表示動作として、LEDによる普通図柄がシーソー的に交互に点灯と消灯を繰り返し、何れかの側が点灯した状態で停止することで、普通図柄変動表示ゲームの当否が判明するようになっている。また、この普通図柄表示装置39aに隣接して3個のLED(第1〜第3ラウンド表示LED)を配置してなるラウンド数表示装置39bが設けられている。このラウンド数表示装置39bは、3つのLEDの点灯・消灯状態の組合せにより、大当りに係る規定ラウンド数(最大ラウンド数)を報知する。
センター飾り48の下方には、上始動口34(第1の特別図柄始動口:第1の始動手段)と、下始動口35(第2の特別図柄始動口:第2の始動手段)を備える普通変動入賞装置41とが上下に設けられ、それぞれの内部には、遊技球の通過を検出する検出センサ34a、35a(上始動口センサ34a、下始動口センサ35a:図3参照)が形成されている。
第1の特別図柄始動口である上始動口34は、特別図柄表示装置38aにおける第1の特別図柄(以下、第1の特別図柄を「特別図柄1」と称し、場合により「特図1」と略称する)の変動表示動作の始動条件に係る入賞口であり、始動口開閉手段(始動口を開放又は拡大可能にする手段)を有しない入賞率固定型の入賞装置として構成されている。本実施形態では、遊技領域3a内の遊技球落下方向変換部材(例えば、遊技くぎ(図示せず)、風車44、センター飾り48など)の作用により、上始動口34へは、左流下経路3bを流下してきた遊技球については入球(入賞)容易な構成であるのに対し、右流下経路3cを流下してきた遊技球については入球困難または入球不可能な構成となっている。
普通変動入賞装置41は、始動口開閉手段により始動口の遊技球の入賞率を変動可能な入賞率変動型の入賞装置として構成されている。本実施形態では、始動口開閉手段として、第2の特別図柄始動口である下始動口35を、開放または拡大可能にする左右一対の可動翼片(可動部材)47を備える、いわゆる「電動チューリップ型」入賞装置として構成されている。
普通変動入賞装置41の下始動口35は、特別図柄表示装置38bにおける第2の特別図柄(以下、第2の特別図柄を「特別図柄2」と称し、場合により「特図2」と略称する)の変動表示動作の始動条件に係る入賞口であり、この下始動口35の入賞領域は、可動翼片47の作動状態(作動または非作動)に応じて、入賞を容易とする開状態(入賞容易状態)と、その開状態よりも入賞を困難にし、又は入賞を不可能にする閉状態(入賞困難状態)とに変換される。本実施形態では、可動翼片47が非作動の場合、下始動口35への入賞が不可能とする閉状態(入賞不可能状態)を保持している。
また普通変動入賞装置41の両側には、一般入賞口43が左側に3つ、右側に1つ、計4つ配設されており、それぞれの内部には、遊技球の通過を検出する一般入賞口センサ43a(図3参照)が形成されている。また遊技盤の領域内には遊技球の流下を妨害しない位置に、視覚的演出効果を奏する可動体役物(図示せず)が配設されている。
また普通変動入賞装置41の右斜め上方、つまり右流下経路3cの中間部より上部側には、遊技球が通過可能な通過ゲート(特定通過領域)からなる普通図柄始動口37(第3の始動手段)が設けられている。この普通図柄始動口37は、普通図柄表示装置39aにおける普通図柄の変動表示動作に係る入賞口であり、その内部には、通過する遊技球を検出する普通図柄始動口センサ37a(図3参照)が形成されている。なお本実施形態では、普通図柄始動口37は右流下経路3c側にのみに形成され、左流下経路3b側には形成されていない。しかし本発明はこれに限らず、左流下経路3bのみに形成してもよいし、両流下経路にそれぞれ形成してもよい。
右流下経路3c内の普通図柄始動口37から普通変動入賞装置41へかけての経路途中には、突没式の開放扉52bにより大入賞口50を開放または拡大可能に構成された特別変動入賞装置52(特別電動役物)が設けられており、その内部には大入賞口50に入球した遊技球を検出する大入賞口センサ52a(図3参照)が形成されている。
大入賞口50の周囲は、遊技盤3の表面から膨出した膨出部(装飾部材)55となっており、この膨出部55の上辺55aが右流下経路3cの下流案内部を形作っている。そして開放扉52bにより大入賞口50が閉鎖状態(大入賞口閉状態)であれば、この膨出部55の上辺55aと連続する面を形成することによって、右流下経路3cの下流案内部(上辺55a)の一部を形作るようになっている。また右流下経路3cの下流域には、膨出部55の上辺55aの上方の領域、正確には大入賞口50の上方の遊技領域において、遊技球の流下方向にほぼ平行に流路修正板51dが突設されており、流下する遊技球を大入賞口50の方向に寄せる働きをするようになっている。
大入賞口50への遊技球の入球過程は次のようになる。
センター飾り48の上面と球誘導レール5との間の遊動領域を通過した遊技球は、遊技盤3より突出していて遊技球のガイドとして機能する膨出部55の頂面(上辺)55a上に沿って流下して来る。そして、その遊技球が遊技盤3面から突出している流路修正板51dの右端に接触し、これにより、当該遊技球の流下方向は大入賞口50の方向(下方向)に修正される。このとき、突没式の開放扉52bにより大入賞口50が蓋をされている状態(大入賞口閉状態)であれば、この上を遊技球が転動して、さらに図示しない所定配列の遊技くぎにより、チューリップ式の普通変動入賞装置41(下始動口35)の方向に導かれる。このとき、下始動口35が入賞可能状態(始動口開状態)であれば、下始動口35に遊技球が入賞し得る。他方、開放扉52bが遊技盤面内に後退していて大入賞口50が開いている状態(大入賞口開状態)であれば、遊技球が大入賞口50内に導かれる。
なお本実施形態の遊技機1では、遊技者が特別変動入賞装置52側に発射位置を狙い定めた場合(遊技球が右流下経路3cを通過するように狙いを定めた場合)、上始動口34側には遊技球が誘導され難い、又は誘導されない構成となっている。従って「大入賞口閉状態」であれば、普通変動入賞装置41の可動翼片47が作動しない限り、各始動口34、35への入賞が困難又は不可能とされるようになっている。可動翼片47は、後述の電サポ有り状態を伴う遊技状態になると、通常状態よりも有利な開閉パターンで動作するようになっている。
本実施形態の場合、遊技者がどのような打ち方をすれば有利な状況となるかについては、遊技状態に応じて変化する。具体的には、後述の「電サポ無し状態」を伴う遊技状態であれば、遊技球が左流下経路3bを通過するように狙いを定める「左打ち」が有利とされ、後述の「電サポ有り状態」を伴う遊技状態であれば、遊技球が右流下経路3cを通過するように狙いを定める「右打ち」が有利とされる。
本実施形態の遊技機1においては、遊技領域3aに設けられた各種入賞口のうち、普通図柄始動口37以外の入賞口への入賞があった場合には、各入賞口別に約束づけられた入賞球1個当りの賞球数(例えば、上始動口34または下始動口35は3個、大入賞口50は13個、一般入賞口43は10個)が遊技球払出装置19(図3参照)から払い出されるようになっている。上記の各入賞口に入賞しなかった遊技球は、アウト口49を介して遊技領域3aから排出される。
ここで「入賞」とは、入賞口がその内部に遊技球を取り込んだり、或いは入賞口が遊技球を内部に取り込む構造ではなく通過型のゲートからなる入賞口(例えば、普通図柄始動口37)である場合はそのゲートを遊技球が通過したりすることを言い、実際には入賞口ごとに形成された各入賞検出スイッチにより遊技球が検出された場合、その入賞口に「入賞」が発生したものとして扱われる。この入賞に係る遊技球を「入賞球」とも称する。なお、入賞口に遊技球が入口すれば、その遊技球は入賞検出スイッチにより検出されることとなるため、本明細書中では特に断りのない限り、入賞検出スイッチに遊技球が検出されたか否かによらず、入賞口に遊技球が入口した場合を含めて「入賞」と称する場合がある。
<2.遊技機の制御構成>
図3のブロック図を参照して、遊技機1の遊技動作制御を実現するための構成(制御構成)について説明する。
本実施形態の遊技機1は、遊技動作全般に係る制御(遊技動作制御)を統括的に司る主制御基板(主制御手段)20(以下「主制御部20」と称する)と、主制御部20から演出制御コマンドを受けて、演出手段による演出の実行制御(現出制御)を統括的に司る演出制御基板(演出制御手段)24(以下「演出制御部24」と称する)と、賞球の払い出し制御を行う払出制御基板(払出制御手段)29と、外部電源(図示せず)から遊技機1に必要な電源を生成し供給する電源基板(電源制御手段(図示せず))と、を有して構成される。
演出制御部24には、画像表示装置としての液晶表示装置36について表示駆動を行う液晶制御部40が接続されている。液晶制御部40は、例えば上記した主制御基板(主制御部)20や演出制御基板(演出制御部)24、払出制御基板29、電源基板等の各種基板とは別基板上に搭載されたマイクロコンピュータを有して構成されている。
なお、図3において、各部への電源供給ルートは省略している。
[2-1.主制御部]
主制御部20は、CPU(Central Processing Unit)201(主制御CPU)を内蔵したマイクロプロセッサを搭載すると共に、遊技動作制御手順を記述した制御プログラムの他、遊技動作制御に必要な種々のデータを格納するROM(Read Only Memory)202(主制御ROM)と、ワーク領域やバッファメモリとして機能するRAM(Random Access Memory)203(主制御RAM)とを搭載し、全体としてマイクロコンピュータを構成している。
また図示はしていないが、主制御部20は、周期的割込みや一定周期のパルス出力作成機能(ビットレートジェネレータ)や時間計測の機能を実現するためのCTC(Counter Timer Circuit)、及びCPU201に割込み信号を付与するタイマ割込み等の割込許可/割込禁止機能を発揮する割込みコントローラ回路、及び電源投入時や遮断時や電源異常などを検知してシステムリセット信号を出力してCPU201をリセット可能なリセット回路、及び制御プログラムの動作異常を監視するウォッチドッグタイマ(WDT)回路、及び予め設定したアドレス範囲内でプログラムが正しく実行されているか否かを監視する指定エリア外走行禁止(IAT)回路、及びハードウェア的に一定範囲の乱数を生成するためのカウンタ回路等も備えている。
上記カウンタ回路は、乱数を生成する乱数生成回路と、その乱数生成回路から所定のタイミングで乱数値をサンプリングするサンプリング回路とを含んで構成され、全体として16ビットカウンタとして働く。CPU201は、処理状態に応じて上記サンプリング回路に指示を送ることで、上記乱数生成回路が示している数値を内部抽選用乱数値(大当り判定用乱数(乱数の大きさ:65536))として取得し、その乱数値を大当り抽選に利用する。なお、内部抽選用乱数は、当り狙い打ち等のゴト行為を防ぐために、適宜なソフトウェア処理で生成しているソフト乱数値と、ハード乱数値とを加算したものを取得している。
主制御部20には、上始動口34への入賞(入球)を検出する上始動口センサ34aと、下始動口35への入賞を検出する下始動口センサ35aと、普通図柄始動口37の通過を検出する普通図柄始動口センサ37aと、大入賞口50への入賞を検出する大入賞口センサ52aと、一般入賞口43への入賞を検出する一般入賞口センサ43aと、アウト口49から排出される遊技球(アウト球)を検出するOUT監視スイッチ49aが接続され、主制御部20はこれらから出力される検出信号を受信可能とされている。主制御部20は、各センサからの検出信号に基づき、何れの入賞口に遊技球が入球したのかを把握可能とされる。
また主制御部20には、下始動口35の可動翼片47を開閉制御するための普通電動役物ソレノイド41cと、大入賞口50の開放扉52bを開閉制御するための大入賞口ソレノイド52cとが接続され、主制御部20はこれらを制御するための制御信号を送信可能となっている。
さらに主制御部20には、特別図柄表示装置38aと特別図柄表示装置38bとが接続され、主制御部20は、特別図柄1、2を表示制御するための制御信号を送信可能とされている。さらにまた、主制御部20には、普通図柄表示装置39aが接続され、普通図柄を表示制御するための制御信号を送信可能とされている。
また、主制御部20には、複合表示装置38c、ラウンド数表示装置39bが接続され、主制御部20は、複合表示装置38cに表示される各種情報を表示制御するための制御信号や、ラウンド数表示装置39bに表示される大当りによる規定ラウンド数を表示制御するための制御信号を送信可能とされている。
さらに、主制御部20には、枠用外部集中端子基板21が接続され、主制御部20は、枠用外部集中端子基板21を介し、遊技機外部に設けられたホールコンピュータHCに対し所定の遊技情報(例えば、大当り情報、賞球数情報、図柄変動実行情報等)を送信可能とされている。
なお、ホールコンピュータHCは、主制御部20からの遊技情報を監視して、パチンコホールの遊技機の稼働状況を統括的に管理するための情報処理装置(コンピュータ装置)である。
さらにまた、主制御部20には、払出制御基板(払出制御部)29が接続され、賞球の払い出しの必要がある場合には、払出制御基板29に対し、払い出しに関する制御コマンド(賞球数を指定する払出制御コマンド)を送信可能とされている。
払出制御基板29には、発射装置32を制御する発射制御基板(発射制御部)28と、遊技球の払い出しを行う遊技球払出装置(遊技球払出手段)19とが接続されている。この払出制御基板29の主な役割は、主制御部20からの払出制御コマンドの受信、払出制御コマンドに基づく遊技球払出装置19の賞球払い出し制御、主制御部20への状態信号の送信などである。
遊技球払出装置19には、遊技球の供給不足を検出する補給切れ検出センサ19aや払い出される遊技球(賞球)を検出する球計数センサ19bが設けられており、払出制御基板29は、これらの各検出信号を受信可能とされている。また遊技球払出装置19には、遊技球を払い出すための球払出機構部(図示せず)を駆動する払出モータ19cが設けられており、払出制御基板29は、払出モータ19cを制御するための制御信号を送信可能とされている。
さらに、払出制御基板29には、上受け皿9が遊技球で満杯状態を検出する満杯検出センサ60(本実施形態では、上受け皿9に貯留される遊技球の貯留状態を検出する検出センサ)と、前扉開放センサ61(本実施形態では、少なくとも前枠2の開放状態を検出する検出センサ)が接続されている。
払出制御基板29は、満杯検出センサ60、前扉開放センサ61、補給切れ検出センサ19a、球計数センサ19bからの検出信号に基づいて、主制御部20に対して、各種の状態信号を送信可能となっている。この状態信号には、満杯状態を示す球詰り信号、少なくとも前枠2が開放されていることを示す扉開放信号、遊技球払出装置19からの遊技球の供給不足を示す補給切れ信号、賞球の払出不足や球計数センサ19bに異常が発生したこと示す計数エラー信号、払い出し動作が完了したことを示す払出完了信号などが含まれ、様々な状態信号を送信可能な構成となっている。主制御部20は、これら状態信号に基づいて、前枠2の開放状態(扉開放エラー)や、遊技球払出装置19の払出動作が正常か否か(補給切れエラー)や、上受け皿9の満杯状態(球詰りエラー)等を監視する。
さらにまた、払出制御基板29には発射制御基板28が接続され、発射制御基板28に対し発射を許可する許可信号を送信可能とされている。発射制御基板28は、払出制御基板29からの許可信号が出力されていることに基づき、発射装置32に設けられた発射ソレノイド(図示せず)への通電を制御し、発射操作ハンドル15の操作による遊技球の発射動作を実現している。具体的には、払出制御基板29から発射許可信号が出力されていること(発射許可信号ON状態)、発射操作ハンドル15に設けられたタッチセンサ(図示せず)により遊技者がハンドルに触れていることを検出されていること、発射操作ハンドル15に設けられた発射停止スイッチ(図示せず)が操作されていないことを条件に、遊技球の発射動作が許容される。従って、発射許可信号が出力されていない場合には(発射許可信号OFF状態)、発射操作ハンドル15を操作しても発射動作は実行されず、遊技球が発射されることはない。また、遊技球の打ち出しの強さは、発射操作ハンドル15の操作量に応じて変化可能となっている。
なお、払出制御基板29が上記球詰りエラーを検出すると、主制御部20に球詰り信号を送信すると共に発射制御基板28に対する発射許可信号の出力を停止し(発射許可信号OFF)、上受け皿9の満杯状態が解消されるまで打ち出し動作を停止する制御を行うようになっている。
また、払出制御基板29は、発射制御基板28に対する発射の許可信号の出力を、主制御部20より発射許可が指示されたことを条件に行う。
ここで、主制御部20は、設定キースイッチ94、及びRAMクリアスイッチ98が接続されており、これらスイッチからの検出信号を受信可能とされている。
RAMクリアスイッチ98は、RAM203の所定領域を初期化することを指示入力するための例えば押しボタン式のスイッチとされる。
設定キースイッチ94は、電源投入時にホールスタッフが所持する設定鍵を挿入してON/OFF操作することにより設定変更モード(ON操作時)に切り替えるためのキースイッチとされる。
ここで、設定変更モードは、設定値Veを変更可能なモードである。設定値Veは、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す値である。
RAMクリアスイッチ98は、前枠2が開放された状態で操作可能に設けられたRAMクリアボタンの操作に応じてON/OFFされる。また、設定キースイッチ98は、上記した設定鍵を挿抜可能とされたキーシリンダが対応して設けられており、該キーシリンダに挿入された設定鍵が順方向に回動されることでON、該ONの状態から逆方向に回動されることでOFFとなる。キーシリンダは、前枠2が開放された状態で設定鍵の挿入による操作が可能となるように設けられている。なお、キーシリンダは、設定鍵が挿入されることで操作可能とされた操作子として機能する。
本例では、設定値Veの変更操作には、上記のRAMクリアボタンが兼用される。具体的に、RAMクリアボタンは、設定値Veを順送りするための操作子としても機能する。
RAMクリアスイッチ98、及び設定キースイッチ94は、遊技機1内部の適所に設けられている。例えば、主制御基板20上に配置される。
また主制御部20は、設定・性能表示器97が接続されている。
設定・性能表示器97は、例えば7セグメント表示器を有して構成され、設定値Veと性能情報(後述する)の表示が可能とされた表示手段として機能する。設定・性能表示器97は、例えば主制御部(主制御基板)20上の視認し易い位置に搭載されている。
主制御部20は、設定・性能表示器97に対して設定値Veや性能情報を表示させるための制御信号を送信可能とされている。
ここで、設定値Veは、主として、少なくとも大当り(後述の条件装置が作動することとなる当り種別)の抽選確率(当選確率)を段階別(例えば、設定1〜6の6段階)に規定するもので、設定値Veが高くなるほど、当選確率が高くなり(設定1が最低の当選確率、以降、設定の値の昇順に当選確率が高くなる)、遊技者に有利に作用するようになっている。換言すれば、設定値Veが高くなるほど、所謂「機械割(出玉率、PAYOUT率)」が高くなり、遊技者に有利に作用するようになっている。
このように、設定値Veとは、大当り当選確率や機械割などを規定する値であり、遊技者に作用する利益状態などの特定事象の発生し易さに関連する等級についての値を意味し、本実施形態では、各設定値Veに応じて遊技に係る有利度が規定されることになる。
本例では、規則上使用可能とされる設定値Veの段階(有利度の段階)が6段階であることを前提とする。具体的に、設定値Veの規則上使用可能な範囲(以下「使用可能範囲Re」と表記する)は、「1」〜「6」の範囲であることを前提としている。
この前提の下で、本例のパチンコ遊技機1は、規則上使用可能な設定値Veのうち、一部の設定値Veのみを使用する。具体的に、本例のパチンコ遊技機1は、使用可能範囲Re内の設定値Veである「1」〜「6」のうち、例えば「1」「2」「6」の3値のみを使用する。換言すれば、当選確率についての段階を規則上の最大段階である6段階とするのではなく、3段階に制限した仕様とされている。
以下、パチンコ遊技機1において実際に使用される設定値Veの範囲、具体的には使用可能範囲Re内の設定値Veのうちで実際に使用される設定値Veの範囲(上記例では「1」「2」「6」の範囲)のことを「使用範囲Ru」と表記する。
設定値Veは、専ら、ホール(遊技店)の営業戦略に基づき、ホール店員等のホールスタッフによって設定が行われる。なお、大当りが複数種類ある場合、何れの大当りの当選確率を設定値Veに応じて変化させるか、対象となる大当りの種類は、適宜定めることができる。例えば、大当り1〜3という3種類の大当りがあるとした場合、設定値Veが相対的に高い方が、大当り1〜3のすべての当選確率を高くしてもよいし、大当り1〜3の合算当選確率を高くしてもよい。また一部の大当りの当選確率を高くしてもよい。例えば、大当り1〜2の当選確率だけを高くし、大当り3については全設定値Veで一定の当選確率にしてもよい。
(設定値の変更操作について)
設定値Veを変更するためには、本例では、遊技機1の電源がオフとされ前枠2が解放された状態において、設定キースイッチ94をON操作(設定変更モード側に操作)し且つRAMクリアボタンを押圧した状態(RAMクリアスイッチ98がONの状態)で遊技機1への電源を投入する。すると、現在の設定値Veが設定・性能表示器97に表示され、設定値Ve(本例では1、2、6)の変更操作が可能な「設定変更モード」に移行される。
本例では、設定変更モードに移行するか否かの判定は、後述の主制御側メイン処理において行われる(図5のステップS104を参照)。設定変更モードに移行するための上記の操作条件が満足されているときは、これに応じて設定変更のための処理が実行される。
設定変更モードへの移行後において、設定値Veの変更操作子として機能するRAMクリアボタンがON操作されると、設定・性能表示器97の現在の表示値が「1→2→6→1→2→6→・・・」のように使用範囲Ru内で循環式に切り替えられる。そして希望する設定値Veとなったところで、設定キースイッチ94がOFFされると、設定値Veが確定され、確定した設定値Veの情報がRAM203の所定領域に格納(記憶)される。
また、設定キースイッチ94がOFFされると、設定変更モードが終了され、設定・性能表示器97の表示がクリアされる。
設定変更モードが終了すると、遊技進行を許容する状態に移行される。
(性能表示について)
主制御部20は、設定・性能表示器97に対し所定の性能情報を表示させるための制御信号を送信可能とされている。
性能情報とは、パチンコホールや関係各庁が確認したい情報であり、遊技機1に対する過剰賞球等の不正賞球ゴトの有無や遊技機1本来の出玉性能などに関する情報などがその代表例である。従って、性能情報自体は、予告演出等とは異なり、遊技者が遊技に興じる際に、その遊技進行自体には直接的に関係の無い情報となる。
このため設定・性能表示器97は、遊技機1内部、例えば、主制御部(主制御基板)20、払出制御基板29、発射制御基板28、上記中継基板、演出制御部(演出制御基板(液晶制御基板を含む))24上や、基板ケース(基板を保護する保護カバー)など、前枠2が開放状態とされたときに表示情報を視認可能となる位置に設けられている。
ここで、性能情報には、具体的に次のような情報を採用することができる。
(1)特定状態中において入賞により払い出された総払出個数(特定中総賞球数:α個)を、当該特定状態中おいてアウト口49から排出された総アウト球数(特定中アウト個数:β個)で除した値(α/β)に基づく情報(特定比率情報)を、性能情報として採用することができる。
上記「総払出個数」とは、入賞口(上始動口34、下始動口35、一般入賞口43、大入賞口50)に入賞した際に払い出された遊技球(賞球)の合計値である。本実施形態の場合、上始動口34または下始動口35は3個、大入賞口50は13個、一般入賞口43は10個である。
また、特定状態として、何れの状態を採用するかについては、如何なる状態下の性能情報を把握したいかに応じて適宜定めることができる。本実施形態の場合であれば、通常状態、潜確状態、時短状態、確変状態、大当り遊技中のうち、何れの状態も採用することができる。また、複数種類の状態を計測対象としてもよい。例えば、通常状態と確変状態や、当り遊技中を除く全ての遊技状態等であり、その計測対象とする種類は適宜定めることができる。
また、特定状態中の期間として、大当り抽選確率が低確率状態又は高確率状態の何れかの期間を採用してもよい。
また、1又は複数の特定の入賞口を計測対象から除外したものを総払出個数としてもよい(特定入賞口除外総払出個数)。例えば、各入賞口のうち、大入賞口50を計測対象から除外したものを、総払出個数としてもよい。
(2)その他、総払出個数、特定入賞口除外総払出個数、総アウト球数の何れかだけを計測し、その計測結果を性能情報としてもよい。
本実施形態では、通常状態中の総払出個数(通常時払出個数)と、通常状態中の総アウト球数(通常時アウト個数)とをリアルタイムで計測し、通常時払出個数を通常時アウト個数で除した値に百を乗じた値(通常時払出個数÷通常時アウト個数×100で算出される値)を性能情報(以下「通常時比率情報」と称する)として表示する。なお、この際の表示値は、小数点第1位を四捨五入した値とする。
従って、通常時払出個数、通常時アウト個数、通常時比率情報の各データが、RAM203の該当領域(特定中総賞球数格納領域、特定中アウト個数格納領域、特定比率情報格納領域)にそれぞれ格納(記憶)されるようになっている。但し、単に永続的に計測して性能情報を表示するのではなく、総アウト球数が所定の規定個数(例えば、60000個)に達した場合、一旦、計測を終了する。この規定個数とは、通常状態の総アウト球数ではなく、全遊技状態中(当り遊技中を含む)の総アウト球数(以下「全状態アウト個数」と称する)である。この全状態アウト個数もリアルタイムに計測され、RAM203の該当領域(全状態アウト個数格納領域)に格納される。以下、説明の便宜のために、特定中総賞球数格納領域、特定中アウト個数格納領域、特定比率情報格納領域、全状態アウト個数格納領域を「計測情報格納領域」と略称する。
そして、終了時点の通常時比率情報をRAM203の所定領域(性能表示格納領域)に格納し(今回の通常時比率情報を記憶)、その後、計測情報格納領域(通常時払出個数、通常時アウト個数および全状態アウト個数)をクリアしてから、再度、計測を開始する(通常時払出個数、通常時アウト個数、通常時比率情報および全状態アウト球数の計測を開始する)。そして、設定・性能表示器97には、前回の通常時比率情報(計測履歴情報)と、現在計測中の通常時比率情報とが表示されるようになっている。なお、前回の情報に限らず、前々回やその前(3回前)などの履歴を表示可能に構成してもよく、何回前までの情報を表示するかについては適宜定めることができる。
ここで、本例の場合、設定・性能表示器97には設定値Veと性能情報とが択一的に表示される。具体的に、本例では、設定変更や設定確認は電源投入に伴う起動時にのみ行われるため、電源投入に伴う起動後、設定変更モードや設定確認を行うモードに移行したことに応じて設定・性能表示器97に設定値Veが表示され、設定変更や設定確認が完了した後において、性能情報の表示が行われる。
なお、設定値Veと性能情報を共通の表示器により表示する構成に限定されず、別々の表示器により表示する構成を採ることもできる。その場合、設定値Veと性能情報の表示が並行して行われてもよい。
(演出制御コマンド)
主制御部20は、処理状態に応じて、特別図柄変動表示ゲームに関する情報やエラーに関する情報等を含む種々の演出制御コマンドを、演出制御部24に対して送信可能とされている。但し、ゴト行為等の不正を防止するために、主制御部20は演出制御部24に対して信号を送信するのみで、演出制御部24からの信号を受信不可能な片方向通信の構成となっている。
ここで、演出制御コマンドは、1バイト長のモード(MODE)と、同じく1バイト長のイベント(EVENT)からなる2バイト構成により機能を定義し、MODEとEVENTの区別を行うために、MODEのBit7はON、EVENTのBit7をOFFとしている。これらの情報を有効なものとして送信する場合、モード(MODE)及びイベント(EVENT)の各々に対応してストローブ信号が出力される。すなわち、CPU201(主制御CPU)は、送信すべきコマンドがある場合、演出制御部24にコマンドを送信するためのモード(MODE)情報の設定及び出力を行い、この設定から所定時間経過後に1回目のストローブ信号の送信を行う。さらに、このストローブ信号の送信から所定時間経過後にイベント(EVENT)情報の設定及び出力を行い、この設定から所定時間経過後に2回目のストローブ信号の送信を行う。ストローブ信号は、CPU241(演出制御CPU)が確実にコマンドを受信可能とする所定期間、CPU201によりアクティブ状態に制御される。
[2-2.演出制御部]
演出制御部24は、CPU241(演出制御CPU)を内蔵したマイクロプロセッサを搭載すると共に、演出制御処理に要する演出データを格納したROM242(演出制御ROM)と、ワーク領域やバッファメモリとして機能するRAM243(演出制御RAM)とを搭載したマイクロコンピュータを中心に構成され、その他、音響制御部(音源IC)、RTC(Real Time Clock)機能部、カウンタ回路、割込みコントローラ回路、リセット回路、WDT回路などが設けられ、演出動作全般を制御する。
本例の演出制御部24は、情報の読み出し及び書き込みが可能なメモリとして、上記のRAM243以外にメモリ244を有している。メモリ244は、例えばSRAMで構成され、CPU241による情報の読み出し速度がRAM243よりも遅いものとされている。RAM243はバックアップ電源が接続されておらず、パチンコ遊技機1が電源遮断されると記憶情報を保持不能とされているのに対し、メモリ244はバックアップ電源が接続されてパチンコ遊技機1が電源遮断されても記憶情報を保持可能とされている。
なお、メモリ244の用途については後述する。
演出制御部24の主な役割は、主制御部20からの演出制御コマンドの受信、演出制御コマンドに基づく演出の選択決定、液晶表示装置36に画像表示を実行させるための液晶制御部40の制御、スピーカ46の音制御、装飾ランプ45や各種LED(ボタンLED75、その他の演出用LED(図示せず))の発光制御、可動体(役物)の動作制御等である。
液晶制御部40は、CPUや各種のメモリ装置を備えたコンピュータ装置として構成され、液晶表示装置36の表示制御を司る。この液晶制御部40は、画像展開処理や画像の描画などの映像出力処理全般の制御を司るVDP(Video Display Processor)と、VDPが画像展開処理を行う画像データ(演出画像データ)を格納した画像ROMと、VDPが展開した画像データを一時的に記憶するVRAM(Video RAM)と、演出制御部24からの各種指示(後述する「液晶制御コマンド」等)に基づきVDPの動作を制御するCPU(液晶制御CPU)と、液晶制御CPUの表示制御動作手順を記述したプログラムやその表示制御に必要な種々のデータを格納するROM(液晶制御ROM)と、ワーク領域やバッファメモリとして機能するRAM(液晶制御RAM)と、を中心に構成されている。
上記の液晶制御CPUが演出制御部24からの指示に基づきVDPの動作(液晶表示装置36の表示駆動動作)を制御することで、液晶表示装置36に演出制御部24の指示に応じた画像表示が行われる。
なお、図3に示す本実施形態のパチンコ遊技機1は、演出制御部24のCPU241とは別基板上に、液晶表示用のCPU(液晶制御部40のCPU)を有している。このような構成は、一般的に「2CPU」の構成と称される。一方で、液晶制御部40のCPUと同様の機能を果たすCPUを演出制御部24に実装した構成、すなわち、演出制御部24が液晶制御部40としての機能も果たす構成については「1CPU」の構成と称される。
演出制御部24はまた、種々の演出(光演出や音演出や可動体役物による可動体演出)を現出させるために、装飾ランプ45や各種LEDを含む光表示装置45aに対する光表示制御部、スピーカ46を含む音響発生装置46aに対する音響制御部、可動体(図示せず)を動作させる可動体役物モータ80cに対する駆動制御部(モータ駆動回路:ドライバ)等を備えている。
演出制御部24には、可動体役物の動作を監視する位置検出センサ82aが接続され、演出制御部24は、位置検出センサ82aからの検出情報に基づき、可動体役物の現在の動作位置(例えば、原点位置からの移動量)を監視しながらその動作態様を制御する。また位置検出センサ82aからの検出情報に基づき、可動体役物の動作の不具合を監視し、不具合が生じれば、これをエラーとして検出する。
また演出制御部24には、演出ボタン13や十字キー16のスイッチ、つまり演出ボタン13、十字キー16の操作検出スイッチが接続され、演出制御部24は、演出ボタン13、十字キー16からの操作検出信号をそれぞれ受信可能とされている。
演出制御部24は、主制御部20から送られてくる演出制御コマンドに基づき、予め用意された複数種類の演出パターンの中から抽選により、又は一意に演出パターンを選択(決定)し、必要なタイミングで各種の演出手段を制御して、目的の演出を現出させる。これにより、演出パターンに対応する液晶表示装置36による演出画像の表示、スピーカ46からの音の再生、装飾ランプ45やLEDの点灯点滅駆動が実現され、種々の演出パターン(装飾図柄変動表示動作や予告演出など)が時系列的に展開されることにより、広義の意味での「演出シナリオ」が実現される。
ここで、演出制御コマンドについて、演出制御部24(CPU241)は、主制御部20(CPU201)が送信する上述したストローブ信号の入力に基づき割込み処理を発生させてその受信・解析を行う。具体的に、CPU241は、上述したストローブ信号の入力に基づいてコマンド受信割込処理用の制御プログラムを実行し、これにより実現される割込み処理において、演出制御コマンドを取得し、コマンド内容の解析を行う。
この際、CPU241は、ストローブ信号の入力に基づいて割込みが発生した場合には、他の割込みに基づく割込み処理(定期的に実行されるタイマ割込処理)の実行中であっても、当該処理に割り込んでコマンド受信割込処理を行い、他の割込みが同時に発生してもコマンド受信割込処理を優先的に行うようになっている。
<3.動作の概要説明>
[3-1.図柄変動表示ゲーム]
次に、上記のような制御構成(図3)により実現される遊技機1の遊技動作の概要について説明する。
先ずは、図柄変動表示ゲームについて説明する。
(特別図柄変動表示ゲーム)
本実施形態のパチンコ遊技機1では、所定の始動条件、具体的には、遊技球が上始動口34又は下始動口35に遊技球が入球(入賞)したことに基づき、主制御部20において乱数抽選による「大当り抽選」が行われる。主制御部20は、その抽選結果に基づき、特別図柄表示装置38a、38bに特別図柄1、特別図柄2を変動表示して特別図柄変動表示ゲームを開始させ、所定時間経過後に、その結果を特別図柄表示装置に導出表示して、これにより特別図柄変動表示ゲームを終了させる。
ここで本実施形態では、上始動口34への入賞に基づく大当り抽選と、下始動口35への入賞に基づく大当り抽選とは別個独立して行われる。このため、上始動口34に関する大当り抽選結果は特別図柄表示装置38a側で、下始動口35に関する大当り抽選結果は特別図柄表示装置38b側で導出されるようになっている。具体的には、特別図柄表示装置38a側においては、上始動口34に遊技球が入球したことを条件に、特別図柄1を変動表示して第1の特別図柄変動表示ゲームが開始され、他方、特別図柄表示装置38b側においては、下始動口35に遊技球が入球したことを条件に、特別図柄2を変動表示して第2の特別図柄変動表示ゲームが開始されるようになっている。そして、特別図柄表示装置38a、又は特別図柄表示装置38bにおける特別図柄変動表示ゲームが開始されると、所定の変動表示時間経過後に、大当り抽選結果が「大当り」の場合には所定の「大当り」態様で、それ以外の場合には所定の「はずれ」態様で、変動表示中の特別図柄が停止表示され、これによりゲーム結果(大当り抽選結果)が導出されるようになっている。
なお本明細書中では、説明の便宜上、特別図柄表示装置38a側の第1の特別図柄変動表示ゲームを「特別図柄変動表示ゲーム1」と称し、特別図柄表示装置38b側の第2の特別図柄変動表示ゲームを「特別図柄変動表示ゲーム2」と称する。また特に必要のない限り、「特別図柄1」と「特別図柄2」とを単に「特別図柄」と称し(場合により「特図」と略称する)、また「特別図柄変動表示ゲーム1」と「特別図柄変動表示ゲーム2」とを単に「特別図柄変動表示ゲーム」と称する。
(装飾図柄変動表示ゲーム)
また、上述の特別図柄変動表示ゲームが開始されると、これに伴って、液晶表示装置36に装飾図柄(演出的な遊技図柄)を変動表示して装飾図柄変動表示ゲームが開始され、これに付随して種々の演出が展開される。そして特別図柄変動表示ゲームが終了すると、装飾図柄変動表示ゲームも終了し、特別図柄表示装置には大当り抽選結果を示す所定の特別図柄が、そして液晶表示装置36には当該大当り抽選結果を反映した装飾図柄が導出表示されるようになっている。すなわち、装飾図柄の変動表示動作を含む演出的な装飾図柄変動表示ゲームにより、特別図柄変動表示ゲームの結果を反映表示するようになっている。
従って、例えば特別図柄変動表示ゲームの結果が「大当り」である場合(大当り抽選結果が「大当り」である場合)、装飾図柄変動表示ゲームではその結果を反映させた演出が展開される。そして特別図柄表示装置において、特別図柄が大当りを示す表示態様(例えば、7セグが「7」の表示状態)で停止表示されると、液晶表示装置36には、「左」「中」「右」の各表示エリアにおいて、装飾図柄が「大当り」を反映させた表示態様(例えば「左」「中」「右」の各表示エリアにおいて、3個の装飾図柄が「7」「7」「7」の表示状態)で停止表示される。
この「大当り」となった場合、具体的には、特別図柄変動表示ゲームが終了して、これに伴い装飾図柄変動表示ゲームが終了し、その結果として「大当り」の図柄態様が導出表示された後、特別変動入賞装置52の大入賞口ソレノイド52cが作動して開放扉52bが所定のパターンで開閉動作を行い、これにより大入賞口50が開閉され、通常遊技状態よりも遊技者に有利な特別遊技状態(大当り遊技)が発生する。この大当り遊技では、開放扉52bにより、大入賞口の開放時間が所定時間(最大開放時間:例えば、29.8秒)経過するまでか、又は大入賞口に入賞した遊技球数(大入賞口50への入賞球)が所定個数(最大入賞数:役物の1回の作動によりその入口が開き、または拡大した入賞口に対して許容される入賞球数の上限個数:例えば、9個)に達するまで、その入賞領域が開放または拡大され、これら何れかの条件を満した場合に大入賞口が閉鎖される、といった「ラウンド遊技」が、予め定められた規定ラウンド数(例えば、最大16ラウンド)繰り返される。
上記大当り遊技が開始すると、最初に大当りが開始された旨を報知するオープニング演出が行われ、オープニング演出が終了した後、ラウンド遊技が予め定められた規定ラウンド数を上限として複数回行われる。そして、規定ラウンド数終了後には、大当りが終了される旨を報知するエンディング演出が行われ、これにより大当り遊技が終了するようになっている。
上記の装飾図柄変動表示ゲームの実行に必要な情報に関しては、先ず主制御部20が、上始動口34又は下始動口35に遊技球が入球(入賞)したことに基づき、具体的には、上始動口センサ34a又は下始動口センサ35aにより遊技球が検出されて始動条件(特別図柄に関する始動条件)が成立したことを条件に、「大当り」又は「はずれ」の何れであるかを抽選する‘当落抽選(当否種別抽選)’と、「大当り」であったならばその大当り種別を、「はずれ」であったならばそのはずれ種別を抽選する‘図柄抽選(当選種別(当り種別)抽選)’とを含む大当り抽選を行い(はずれが1種類の場合は、はずれについて種別抽選を行う必要がないためその抽選を省略してもよい)、その抽選結果情報に基づき、特別図柄の変動パターンや、当選種別に応じて最終的に停止表示させる特別図柄(以下、「特別停止図柄」と称する)を決定する。
そして、主制御部20は、処理状態を特定する演出制御コマンドとして、少なくとも特別図柄の変動パターン情報(例えば、大当り抽選結果及び特別図柄の変動時間に関する情報等)を含む「変動パターン指定コマンド」を演出制御部24側に送信する。これにより、装飾図柄変動表示ゲームに必要とされる基本情報が演出制御部24に送られる。なお本実施形態では、演出のバリエーションを豊富なものとするべく、特別停止図柄の情報(図柄抽選結果情報(当り種別に関する情報))を含む「装飾図柄指定コマンド」も演出制御部24に送信するようになっている。
上記特別図柄の変動パターン情報には、特定の予告演出(例えば、後述の「リーチ演出」や「疑似連演出」など)の発生の有無を指定する情報を含むことができる。詳述するに、特別図柄の変動パターンは、大当り抽選結果に応じて、当りの場合の「当り変動パターン」と、はずれの場合の「はずれ変動パターン」に大別される。これら変動パターンには、例えば、後述のリーチ演出の発生を指定する‘リーチ変動パターン’、リーチ演出の発生を指定しない‘通常変動パターン’、疑似連演出とリーチ演出との発生(重複発生)を指定する‘疑似連有りリーチ変動パターン’、疑似連演出の発生を指定し、リーチ演出の発生は指定しない‘疑似連有り通常変動パターン’等、複数種類の変動パターンが含まれる。なお、リーチ演出や疑似連演出の演出時間を確保する関係上、通常、リーチ演出や疑似連演出を指定する変動パターンの方が、通常変動パターンよりも変動時間が長く定められている。
演出制御部24は、主制御部20から送られてくる演出制御コマンド(ここでは、変動パターン指定コマンドと装飾図柄指定コマンド)に含まれる情報に基づいて、装飾図柄変動表示ゲーム中に時系列的に展開させる演出内容(予告演出等の演出シナリオ)や、最終的に停止表示する装飾図柄(装飾停止図柄)を決定し、特別図柄の変動パターンに基づくタイムスケジュールに従い装飾図柄を変動表示して装飾図柄変動表示ゲームを実行させる。これにより、特別図柄表示装置38a、38bによる特別図柄の変動表示と時間的に同調して、液晶表示装置36による装飾図柄が変動表示され、特別図柄変動表示ゲームの期間と装飾図柄変動表示ゲーム中の期間とが、実質的に同じ時間幅となる。また演出制御部24は、演出シナリオに対応するように、液晶表示装置36又は光表示装置45a或いは音響発生装置46aをそれぞれ制御し、装飾図柄変動表示ゲームにおける各種演出を展開させる。これにより、液晶表示装置36での画像の再生(画像演出)と、効果音の再生(音演出)と、装飾ランプ45やLEDなどの点灯点滅駆動(光演出)とが実現される。
このように特別図柄変動表示ゲームと装飾図柄変動表示ゲームとは不可分的な関係を有し、特別図柄変動表示ゲームの表示結果を反映したものが装飾図柄変動表示ゲームにおいて表現されることとしているので、この二つの図柄変動表示ゲームを等価的な図柄遊技と捉えても良い。本明細書中では特に必要のない限り、上記二つの図柄変動表示ゲームを単に「図柄変動表示ゲーム」と称する場合がある。
(普通図柄変動表示ゲーム)
また遊技機1においては、普通図柄始動口37に遊技球が通過(入賞)したことに基づき、主制御部20において乱数抽選による「補助当り抽選」が行なわれる。この抽選結果に基づき、LEDにより表現される普通図柄を普通図柄表示装置39aに変動表示させて普通図柄変動表示ゲームを開始し、一定時間経過後に、その結果をLEDの点灯と非点灯の組合せにて停止表示するようになっている。例えば、普通図柄変動表示ゲームの結果が「補助当り」であった場合、普通図柄表示装置39aの表示部を特定の点灯状態(例えば、2個のLED39が全て点灯状態、又は「○」と「×」を表現するLEDのうち「○」側のLEDが点灯状態)にて停止表示させる。
この「補助当り」となった場合には、普通電動役物ソレノイド41c(図3参照)が作動し、これにより可動翼片47が逆「ハ」の字状に開いて下始動口35が開放または拡大されて遊技球が流入し易い状態(始動口開状態)となり、通常遊技状態よりも遊技者に有利な補助遊技状態(以下、「普電開放遊技」と称する)が発生する。この普電開放遊技では、普通変動入賞装置41の可動翼片47により、下始動口35の開放時間が所定時間(例えば0.2秒)経過するまでか、又は下始動口35に入賞した遊技球数が所定個数(例えば4個)に達するまで、その入賞領域が開放または拡大され、これら何れかの条件を満たした場合に下始動口35を閉鎖する、といった動作が所定回数(たとえば、最大2回)繰り返されるようになっている。
(保留について)
ここで本実施形態では、特別/装飾図柄変動表示ゲーム中、普通図柄変動表示ゲーム中、大当り遊技中、又は普電開放遊技中等に、上始動口34又は下始動口35若しくは普通図柄始動口37に入賞が発生した場合、すなわち上始動口センサ34a又は下始動口センサ35a若しくは普通図柄始動口センサ37aからの検出信号の入力があり、対応する始動条件(図柄遊技開始条件)が成立した場合、これを変動表示ゲームの始動権利に係るデータとして、変動表示中に関わるものを除き、所定の上限値である最大保留記憶数(例えば最大4個)まで保留記憶されるようになっている。この図柄変動表示動作に供されていない保留中の保留データ、又はその保留データに係る遊技球を、「作動保留球」とも称する。この作動保留球の数を遊技者に明らかにするため、遊技機1の適所に設けた専用の保留表示器(図示せず)、又は液晶表示装置36による画面中にアイコン画像として設けた保留表示器を点灯表示させる。
また本実施形態では、特別図柄1、特別図柄2、及び普通図柄に関する作動保留球をそれぞれ最大4個までRAM203の該当記憶領域に保留記憶し、特別図柄又は普通図柄の変動確定回数として保留する。なお、特別図柄1、特別図柄2、及び普通図柄に関する各作動保留球数の最大記憶数(最大保留記憶数)は特に制限されない。また、各図柄の最大保留記憶数の全部又は一部が異なっていてもよく、その数は遊技性に応じて適宜定めることができる。
[3-2.遊技状態]
本実施形態に係る遊技機1では、特別遊技状態である上記大当りの他、複数種類の遊技状態を発生可能に構成されている。本実施形態の理解を容易なものとするために、先ず、種々の遊技状態について説明する。
本実施形態の遊技機1は、通常状態、時短状態、潜確状態、確変状態の少なくとも4種類の遊技状態を実行制御可能に構成されている。これら遊技状態は、大当り抽選確率状態(低確率状態、高確率状態)や電チューサポート状態(特典遊技)の発生の有無(電サポ有り、電サポ無し)等で区別される。
「電チューサポート状態」とは、普電開放遊技における普通変動入賞装置41の可動翼片47の開動作期間(可動翼片47の開放時間およびその開放回数の少なくともいずれか一方)が、通常状態よりも延長された「開放延長状態」を指す。開放延長状態が発生すると、可動翼片47の開動作期間が、例えば、通常時(非開放延長状態下)の0.2秒から1.7秒に延長され、またその開閉回数が、例えば、通常時の1回から2〜3回に延長される。
本実施形態の場合、電チューサポート状態下では、補助当り抽選確率が所定確率(通常確率)の低確率(例えば256分の1)から高確率(例えば256分の255)に変動して(普図確率変動状態)が発生すると共に、1回の普通図柄変動表示ゲームに要する平均的な時間(普通図柄の変動表示動作時間)を短縮する‘普通図柄時短状態’が発生する(例えば10秒から1秒に短縮される)。従って、電チューサポート状態が発生すると、普電開放遊技が頻繁に発生し、通常状態よりも単位時間当りの可動翼片47の作動率が向上する作動率向上状態(高ベース状態)となる。以下、電チューサポート状態下を「電サポ有り」、そうでない場合を「電サポ無し」と略称する。
本実施形態において、「通常状態」とは、大当り抽選確率が所定確率(通常確率)の低確率(例えば399分の1)であり、電サポ無しの遊技状態(低確率+電サポ無し)を言う。
「時短状態」とは、大当り抽選確率が通常状態と同様の低確率であるが、1回の特別図柄変動表示ゲームに要する平均的な時間(特別図柄の変動表示動作時間))が通常状態よりも短縮される‘特別図柄時短状態’が発生すると共に、電チューサポート状態となる遊技状態を言う。つまり、時短状態中は「低確率+電サポ有り+特別図柄時短状態」となる。
「潜確状態」とは、大当り抽選確率が上記低確率よりも上昇した高確率(例えば39.9分の1)に変動した‘特別図柄確変状態’であり、電サポ無しの遊技状態(高確率+電サポ無し)を言う。
「確変状態」とは、大当り抽選確率が潜確状態と同様の高確率であるが、特別図柄時短状態及び電チューサポート状態が発生する遊技状態を言う。つまり、確変状態中は「高確率+電サポ有り+特別図柄時短状態」となる。
遊技状態に関し、大当り抽選確率に着目すれば、遊技状態が「通常状態」「時短状態」である場合は、少なくとも大当り抽選確率が‘低確率状態’となり、遊技状態が「潜確状態」「確変状態」である場合は、少なくとも大当り抽選確率が‘高確率状態’となる。なお、大当り中は大入賞口が開閉される大当り遊技が発生するが、大当り抽選確率及び電サポの有無については、上記通常状態と同じ、低確率・電サポ無しの遊技状態下に置かれる。
[3-3.当りについて]
続いて、遊技機1における「当り」について説明する。
本実施形態の遊技機1においては、複数種類の当りを対象に大当り抽選(当り抽選)を行うようになっている。本例の場合、当りの種別には、大当り種別に属する例えば「通常4R」「通常6R」「確変6R」「確変10R」の各大当りが含まれる。
なお、上記「R」の表記は、規定ラウンド数(最大ラウンド数)を意味する。
大当り種別は、条件装置の作動契機となる当りである。ここで「条件装置」とは、その作動がラウンド遊技を行うための役物連続作動装置の作動に必要な条件とされている装置で、特定の特別図柄の組合せが表示され、又は遊技球が大入賞口内の特定の領域を通過した場合に作動するものを言う。
上記確変状態は、大当り種別に当選することなく、特別図柄変動表示ゲームの実行回数が所定回数(例えば70回:規定ST回数)終了した場合に、高確率状態を終了させて低確率に移行させる、いわゆる「回数切り確変機(ST機)」となっており、規定ST回数が終了したときは、次ゲームから通常状態に移行される。但し、次回大当りが当選するまで継続させるタイプの「一般確変機」としてもよい。
なお、特別図柄変動表示ゲームの実行回数は、特別図柄変動表示ゲーム1、及び特別図柄変動表示ゲーム2の合計実行回数(特図1及び特図2の合計変動回数)であってもよいし、何れか一方の実行回数(例えば特別図柄変動表示ゲーム2の実行回数)であってもよい。また、時短状態の回数についても60回や100回に限らず、遊技性に応じて適宜定めることができる。また、どのような種類の当りを設けるかについても特に制限はなく、適宜定めることができる。
ここで、本例では、大当り種別と同様に「はずれ」についても複数の種別が設けられている。具体的には、「はずれ1」「はずれ2」「はずれ3」の三種のはずれ種別が設けられている。
前述のように、当落抽選の結果が「はずれ」であった場合には、図柄抽選においてはずれ種別の抽選が行われる。
[3-4.演出について]
(演出モード)
次に、演出モード(演出状態)について説明する。本実施形態の遊技機1には、遊技状態に関連する演出を現出させるための複数種類の演出モードが設けられており、その演出モード間を行き来可能に構成されている。具体的には、通常状態、時短状態、潜確状態、確変状態のそれぞれに対応した、通常演出モード、時短演出モード、潜確演出モード、確変演出モードが設けられている。各演出モードでは、装飾図柄の変動表示画面のバックグラウンドとしての背景表示が、それぞれ異なる背景演出により表示され、遊技者が現在、どのような遊技状態に滞在しているかを把握することができるようになっている。
演出制御部24(CPU241)は、複数種類の演出モード間を移行制御する機能部(演出状態移行制御手段)を有する。演出制御部24(CPU241)は、主制御部20(CPU201)から送られてくる特定の演出制御コマンド、具体的には、主制御部20側で管理される遊技状態情報を含む演出制御コマンドに基づいて、主制御部20側で管理される遊技状態と整合性を保つ形で、現在の遊技状態を把握し、複数種類の演出モード間を移行制御可能に構成されている。上記のような特定の演出制御コマンドとしては、例えば、変動パターン指定コマンド、装飾図柄指定コマンド、遊技状態に変化が生じる際に送られる遊技状態指定コマンド等がある。
(予告演出)
次に、予告演出について説明する。演出制御部24は、主制御部20からの演出制御コマンドの内容、具体的には、少なくとも変動パターン指定コマンドに含まれる変動パターン情報に基づき、現在の演出モードと大当り抽選結果とに関連した様々な「予告演出」を現出制御可能に構成されている。このような予告演出は、当り種別に当選したか否かの期待度(以下「当選期待度」と称する)を示唆(予告)し、遊技者の当選期待感を煽るための「煽り演出」として働く。予告演出として代表的なものには、「リーチ演出」や「疑似連演出」、さらには「先読み予告演出」等がある。演出制御部24は、これら演出を実行(現出)制御可能な予告演出制御手段として機能する。
「リーチ演出」とは、リーチ状態を伴う演出態様(リーチ状態を伴う変動表示態様:リーチ変動パターン)を言い、具体的には、リーチ状態を経由して最終的なゲーム結果を導出表示するような演出態様を言う。リーチ演出には当選期待度に関連付けられた複数種類のリーチ演出が含まれる。例えば、ノーマルリーチ演出が出現した場合に比べて、当選期待度が相対的に高まるものがある。このようなリーチ演出を‘スーパーリーチ演出’と言う。この「スーパーリーチ」の多くは、当選期待感を煽るべく、ノーマルリーチよりも相対的に長い演出時間(変動時間)を持つ。また、ノーマルリーチやスーパーリーチには複数種類のリーチ演出が含まれる。本例では、スーパーリーチには、スーパーリーチ1、2、3、4という複数種類のリーチ演出が含まれ、これらスーパーリーチ1〜4の当選期待度については「スーパーリーチ1<スーパーリーチ2<スーパーリーチ3<スーパーリーチ4」という関係性を持たせている。
「疑似連演出」とは、装飾図柄の疑似的な連続変動表示状態(疑似連変動)を伴う演出態様を言い、「疑似連変動」とは、装飾図柄変動表示ゲーム中において、装飾図柄の一部又は全部を一旦仮停止状態とし、その仮停止状態から装飾図柄の再変動表示動作を実行する、といった表示動作を1回または複数回繰り返す変動表示態様をいう。この点、複数回の図柄変動表示ゲームに跨って展開されるような後述の「先読み予告演出(連続予告演出)」とは異なる。このような「疑似連」は、基本的には、疑似変動回数が多くなるほど当選期待度が高まるようにその発生率(出現率)が定められており、例えば、疑似変動回数に応じて、スーパーリーチ等の期待感を煽るための演出が選択され易くされている。
「先読み予告演出」とは、未だ図柄変動表示ゲームの実行(特別図柄の変動表示動作)には供されていない作動保留球(未消化の作動保留球)について、主に、保留表示態様や先に実行される図柄変動表示ゲームの背景演出等を利用して、当該作動保留球が図柄変動表示ゲームに供される前に、当選期待度を事前に報知し得る演出態様である。なお、図柄変動表示ゲームにおいては、上記「リーチ演出」の他、いわゆる「SU(ステップアップ)予告演出」や「タイマー予告演出」、「復活演出」、「プレミア予告演出」などの種々の演出が発生し、ゲーム内容を盛り上げるようになっている。
ここで、図4を参照し、上記先読み予告演出の一例としての「保留変化予告演出」について説明する。
本実施形態の遊技機1の場合、液晶表示装置36の画面内の上側の表示エリアには、装飾図柄変動表示ゲームを現出する表示エリア(装飾図柄の変動表示演出や予告演出を現出するための表示領域)が設けられており、また画面内の下側の表示エリアには、特別図柄1側の作動保留球数を表示する保留表示領域76(保留表示部a1〜d1)と特別図柄2側の作動保留球数を表示する保留表示領域77(保留表示部a2〜d2)とが設けられている。作動保留球の有無に関しては、所定の保留表示態様により、その旨が報知される。図4では、作動保留球の有無を点灯状態(作動保留球あり:図示の「○(白丸印)」)、又は消灯状態(作動保留球なし:図示の破線の丸印)にて、現在の作動保留球数に関する情報が報知される例を示している。
作動保留球の有無に関する表示(保留表示)は、その発生順(入賞順)に順次表示され、各保留表示領域76、77において、一番左側の作動保留球が、当該保留表示内の全作動保留球のうち時間軸上で一番先に生じた(つまり最も古い)作動保留球として表示される。また、保留表示領域76、77の左側には、現に特別図柄変動表示ゲームに供されている作動保留球を示すための変動中表示領域78が設けられている。本実施形態の場合、変動中表示領域78は、受座Jのアイコン上に、現在ゲームに供されているゲーム実行中保留Kのアイコンが載る形の画像が現れるように構成されている。すなわち、特別図柄1又は特別図柄2の変動表示が開始される際に、保留表示領域76、77に表示されていた最も古い保留a1又はa2のアイコン(アイコン画像)が、ゲーム実行中保留Kのアイコンとして、変動中表示領域78おける受座Jのアイコン上に移動し、その状態が所定の表示時間にわたって維持される。
作動保留球が発生した場合、主制御部20から、大当り抽選結果に関連する先読み判定情報と、先読み判定時の作動保留球数(今回発生した作動保留球を含め、現存する作動保留球数)とを指定する「保留加算コマンド」が演出制御部24に送信される(図22のステップS1309〜S1312参照)。
本実施形態の場合、上記保留加算コマンドは2バイトで構成され、保留加算コマンドは、先読み判定時の作動保留球数を特定可能とする上位バイト側のデータと、先読み判定情報を特定可能とする下位バイト側データとから構成される。
ここで、上記説明から理解されるように、本実施形態では、上始動口34又は下始動口35に入賞が発生して新たに保留球が生じたことに基づいて、当該保留球についての先読み判定として、当該保留球に係る図柄変動表示ゲームについての大当り抽選が行われる。後述するように、主制御部20は、このような先読み判定として行った大当り抽選の結果を表す情報を、RAM203の該当記憶領域に保留記憶する。
先読み判定時に得られた大当り抽選結果の情報は、図柄変動表示ゲームにおける図柄変動パターンを選択(抽選)するために用いられるものであり、いわば「変動パターン選択用情報」と換言することができる。従って、主制御部20は、先読み判定を行って、その結果得られる「変動パターン選択用情報」をRAM203の所定領域に保留記憶していると言うことができる。
演出制御部24は、主制御部20が送信した上記の保留加算コマンドを受信すると、これに含まれる先読み判定情報に基づき、上記保留表示に関連する表示制御処理の一環として、「先読み予告演出」に関する演出制御処理を行う。具体的には、先読み予告演出の実行可否を抽選する「先読み予告抽選」を行い、これに当選した場合には、先読み予告演出を現出させる。
ここで、先読み判定情報とは、具体的には、主制御部20において、作動保留球が図柄変動表示ゲームに供される際に実行される大当り抽選結果(変動開始時の大当り抽選結果)や変動開始時の変動パターンを先読み判定して得られる遊技情報である。すなわち、この情報には、少なくとも変動開始時の当落抽選結果を先読み判定した情報(先読み当落情報)が含まれ、その他、図柄抽選結果を先読み判定した情報(先読み図柄情報)や変動開始時の変動パターンを先読み判定した情報(先読み変動パターン情報)を含ませることができる。如何なる情報を含む保留加算コマンドを演出制御部24に送るかについては、先読み予告にて報知する内容に応じて適宜定めることができる。
本例では、保留加算コマンドには先読み当落情報、先読み図柄情報、及び先読み変動パターン情報が含まれているものとする。
なお、作動保留球発生時の先読み判定により得られる「先読み変動パターン」は、必ずしも作動保留球が実際に変動表示動作に供されるときに得られる「変動開始時の変動パターン」そのものではある必要はない。例えば、上記変動開始時の変動パターンが「スーパーリーチ1」を指定する変動パターンであるケースを代表的に説明すれば、本ケースでは、先読み変動パターンにより指定される内容が「スーパーリーチ1」というリーチ演出の種類そのものではなく、その骨子である「スーパーリーチ種別」である旨を指定することができる。
本実施形態の場合、先読み予告抽選に当選した場合には、保留表示部a1〜d1、a2〜d2の保留アイコンのうちで、その先読み予告対象となった保留アイコンが、例えば、通常の保留表示(通常保留表示態様)の白色から、予告表示の青色、緑色、赤色、デンジャー柄(或いは虹色などの特殊な色彩や絵柄)による保留表示(特別保留表示態様)に変化し得る「保留表示変化系」の先読み予告演出(「保留変化予告」とも称する)が行われる。
図4では、ハッチングされた保留表示部b1の作動保留球が、特別保留表示に変化した例を示している。ここで、保留アイコンの青色、緑色、赤色、デンジャー柄の表示は、この順に、当選期待度が高いことを意味しており、特にデンジャー柄の保留アイコンの表示は、大当り当選期待度が極めて高い表示となるプレミアム的な保留アイコンとされている。
(演出手段)
遊技機1における各種の演出は、遊技機1に配設された演出手段により現出される。この演出手段は、視覚、聴覚、触覚など、人間の知覚に訴えることにより演出効果を発揮し得る刺激伝達手段であれば良く、装飾ランプ45やLED装置などの光発生手段(光表示装置45a:光演出手段)、スピーカ46などの音響発生装置(音響発生装置46a:音演出手段)、液晶表示装置36などの演出表示装置(表示手段)、操作者の体に接触圧を伝える加圧装置、遊技者の体に風圧を与える風圧装置、その動作により視覚的演出効果を発揮する可動体役物などは、その代表例である。ここで、演出表示装置は、画像表示装置と同じく視覚に訴える表示装置であるが、画像によらないもの(例えば7セグメント表示器)も含む点で画像表示装置と異なる。画像表示装置と称する場合は主として画像表示により演出を現出するタイプを指し、7セグメント表示器のように画像以外により演出を現出するものは、上記演出表示装置の概念の中に含まれる。
<4.主制御部の処理>
続いて、本実施形態の主制御部20が行う処理について説明する。主制御部20の処理は、主に、所定のメイン処理(主制御側メイン処理:図5)と、CTCからの定時割込みで起動されるタイマ割込み処理(主制御側タイマ割込み処理:図18)とを含んで構成される。
[4-1.主制御側メイン処理]
図5は、主制御側メイン処理を示したフローチャートである。
主制御側メイン処理が開始されるのは、停電状態や電源異常等からの復旧時に電源基板からのシステムリセット信号によるシステムリセットが生起した場合や、制御プログラムが暴走したことによりウォッチドッグタイマ機能(WDT)が発揮されてCPU201が強制的にリセット(WDTリセット)される場合等がある。何れの場合でも、当該メイン処理が開始されると、主制御部20(CPU201)は、先ず、CPU201を含む各部のレジスタの値を初期設定する等の遊技動作開始に必要な初期設定処理を実行する(ステップS101)。
(初期設定処理)
図6は、ステップS101の初期設定処理を示したフローチャートである。
図6において、上記のシステムリセットやWDTリセットが発生すると、CPU201はステップS201で、自らを割込み禁止状態に設定し、次いで、ステップS202のスタックポインタ設定処理として、RAM203のスタックポインタの値をスタック領域の最終アドレスに対応して設定する処理を実行する。そして、続くステップS203で、RAMプロテクトを無効とすると共に、RAM203の指定エリア外走行禁止機能における禁止領域を無効とする処理を行う。
次いで、CPU201はステップS204で、セキュリティ信号OFF、設定値表示OFF、発射許可信号OFFとするための処理を実行する。ここで、セキュリティ信号は、枠用外部集中端子基板21を通じてホールコンピュータHCに出力される信号であり、ホールコンピュータHCに設定変更中等の状態通知を行うための信号として機能する。設定値表示OFFとは、設定・性能表示器97における設定値Veの表示をOFFさせることを意味する。
発射許可信号は、前述のように払出制御基板29から発射制御基板28に出力される信号であり、CPU201は払出制御基板29に対する指示を行って発射許可信号をOFFさせる。
ここで、セキュリティ信号OFF、設定値表示OFFは、設定変更中の電源入切対策である。すなわち、設定変更処理において設定値Veを表示中に電源が切られた可能性もあるため、設定値表示とセキュリティ信号を一旦OFFとするものである。
ステップS204に続くステップS205でCPU201は、電源異常チェック処理を実行する。
図7に示すように、電源異常チェック処理では、WDTタイマをクリアし(ステップS11)、電源異常信号がONであるか否かを判定する(ステップS12)。電源異常信号は、電源基板から出力される信号であり、電源異常信号OFFが正常レベルであることを表し、電源異常信号ONが正常レベルでない(つまり異常である)ことを表す。電源異常信号がONであれば、CPU201は図5に示すステップS101に戻り、主制御側メイン処理を最初からやり直す。すなわち、電源に異常が認められた場合には主制御側メイン処理がリセットされるものである。
そして、電源異常信号がONでなければ、電源に異常は認められないため、CPU201は電源異常チェック処理を終える。
図6に戻り、CPU201はステップS205の電源異常チェック処理を終えたことに応じ、ステップS206で起動時の各種設定処理を行う。このステップS206の設定処理では、例えば、所定の割込みモードに設定する割込みモード設定処理や、内部ハード乱数回路を起動させる内部ハード乱数設定処理等を実行する。
ステップS206に続くステップS207でCPU201は、サブ制御基板(演出制御部24)の起動待ち時間をセットする。そして、ステップS208〜S210の処理により、セットした起動待ち時間が経過するのを待機する。具体的には、セットした起動待ち時間を1減算し(ステップS208)、電源異常チェック処理(ステップS209)を実行した上で、起動待ち時間がゼロでなければ(ステップS210:≠0)ステップS208の処理に戻る。このような起動待ち時間に基づく待機処理により、演出制御部24の起動が完了することになる。
ステップS210において、上記の起動待ち時間が経過した場合(待ち時間=0)、CPU201はステップS211に進み、待機画面表示コマンドを演出制御部24に送信する。
この待機画面表示コマンドを受け、演出制御部24は、例えば「Please Wait...」等の文字が配された画面等、起動時に対応して定められた所定の画面表示を液晶表示装置36に実行させるための制御を行う。
ステップS211の送信処理を実行したことに応じ、CPU201はステップS212に処理を進めて、該ステップS212とステップS213の処理により、電源異常チェック処理(S212:図7参照)を実行しながら、払出制御基板29からの電源投入時信号が送られてくるのを待機する。この電源投入時信号は、払出制御基板29が正常に立ち上がった場合に出力される信号であり、CPU201は、払出制御基板29が正常起動するまで待機するようになっている。これにより、何らかのトラブルによって払出制御基板29が正常に機能していない場合には、ステップS212とS213の処理が繰り返されるだけで遊技動作は開始されない。従って、例えば賞球が払い出されない等の払出異常が発生せず、遊技者に不信感を与えることの防止が図られる。
CPU201は、上記の電源投入時信号が送られてきた場合は(ステップS213:ON)、ステップS101の初期設定処理を終える。
(初期設定後の処理)
CPU201は、上記の初期設定処理を終えたことに応じ、図5に示すステップS102に進む。
ステップS102でCPU201は、入力ポートn(すなわち所定の入力ポート)の情報を取得し、Wレジスタにコピーする。
ここで、入力ポートnは1バイト(8ビット)のポートとされ、本例では、次の各信号が入力される。なお、以下に示す「b0」〜「b7」はビット位置を表す。
b0:設定キー(設定キースイッチ94からの入力信号)
b1:補給切れ検出信号
b2:計数エラー信号
b3:断線検出信号1
b4:断線検出信号2
b5:扉開放信号(前扉開放センサ61の検出信号)
b6:RAMクリアボタン(RAMクリアスイッチ98からの入力信号)
b7:電源投入時信号及び払出通信確認信号
ここで、b0の設定キーについては、「0」が設定キースイッチ94=OFF、「1」が設定キースイッチ94=ONを意味する。また、b5の扉開放信号については、「0」が扉閉鎖(前枠2が閉鎖)、「1」が扉開放を意味する。さらに、b6のRAMクリアボタンについては、「0」がRAMクリアスイッチ98=OFF(ボタン非操作状態)、「1」がRAMクリアスイッチ98=ON(ボタン操作状態)を意味する。
ステップS102に続くステップS103でCPU201は、Wレジスタの値をマスクする。具体的には、以下で説明する設定変更処理(S115)、RAMクリア処理(少なくともS117及びS118)、設定確認処理(S109)、バックアップ復帰処理(S111)の移行判定を行うにあたって必要とされる値である設定キー(b0)、RAMクリアボタン(b6)、扉開放信号(b5)以外の値をマスクする処理を行う。
先の説明から理解されるように、設定変更処理への移行条件としては、起動時において、前枠2が開放された状態で設定キーとRAMクリアボタンの双方が操作状態とされることとされている。
また、本例において、RAMクリア処理への移行条件は、操作の面では、起動時において設定キーが非操作状態、RAMクリアボタンが操作状態とされることとされている。
また、設定確認処理への移行条件は、操作の面では、前枠2が開放された状態において、設定キーが操作状態、RAMクリアボタンが非操作状態とされることとされている。
さらに、バックアップ復帰処理への移行条件は、操作の面では、起動時において設定キー、RAMクリアボタンの双方が非操作状態とされることとされている。
図8は、これら設定変更処理、RAMクリア処理、設定確認処理、バックアップ復帰処理への移行にあたっての操作面での各判定条件と、Wレジスタの値との対応関係を示している。
図8では、設定変更処理、RAMクリア処理、設定確認処理、バックアップ復帰処理への移行判定の順番を示している。
1番目の設定変更処理への移行判定は、図示のように判定条件が設定キー:ON(設定キースイッチ94:ON)、扉開放:ON(前扉開放センサ61:ON)、RAMクリアスイッチ98:ONとされ、従ってWレジスタの値としては0ビット目:1、5ビット目:1、6ビット目:1が条件とされる。
2番目のRAMクリア処理への移行判定は、判定条件がRAMクリアスイッチ98:ONであり、Wレジスタの値としては6ビット目:1か否かを判定することになる。ここで、本例では、RAMクリア処理への移行判定は、設定変更処理の移行条件が不成立の場合に実行される。また、設定確認処理、バックアップ復帰処理への移行にあたっては、RAMクリアスイッチ98がOFFであることが条件とされる。これらの点より、設定変更処理への移行条件が不成立であって、RAMクリアスイッチ98がONであれば、RAMクリア処理への移行操作が行われていると推定することができる。このため本例では、上記のようにRAMクリア処理への移行判定では、操作の面では、RAMクリアスイッチ98がONであるか否か(6ビット目:1か否か)のみを判定することとしている。
3番目の設定確認処理への移行判定は、判定条件が設定キー:ON、扉開放:ON、RAMクリアスイッチ98:OFFとされ、従ってWレジスタの値としては0ビット目:1、5ビット目:1、6ビット目:0が条件とされる。
さらに、4番目のバックアップ復帰処理への移行判定は、判定条件が設定キー:OFF、RAMクリアスイッチ98:OFFとされ、従ってWレジスタの値としては0ビット目:0、6ビット目:0が条件とされる。
ここで、バックアップ復帰処理について、設定確認処理を経ずにバックアップ復帰処理のみが行われるための移行条件としては、上記のように操作面では設定キー:OFF、RAMクリアスイッチ98:OFFと表記することができるが、設定確認処理の実行有無を問わず単にバックアップ復帰処理が行われる状態に移行するか否かの条件としては、後述するバックアップフラグがONであるということが条件となる(ステップS106の判定処理を参照)。
説明を図5に戻す。
CPU201は、ステップS103のマスク処理を行ったことに応じ、ステップS104で設定変更条件成立判定処理を実行する。具体的には、設定変更モードに移行すべきか否かを判定するべく、ステップS103のマスク後の値(3ビット)が「111」であるか否かを判定する。
マスク後の値が「111」であり、設定変更条件が成立しているとの肯定結果が得られた場合、CPU201はステップS115の設定変更処理を実行する。すなわち、RAMクリアボタンや設定キーの操作に応じて設定値Veを新たに設定するための処理を行う。
なお、ステップS115の設定変更処理の詳細については後に改めて説明する。
ここで、上記のように本実施形態では、設定キースイッチ94、前扉開放センサ61、及びRAMクリアスイッチ98による検出信号、換言すれば、設定変更モードへの移行判定を行うにあたり用いられる各検出信号を主制御部20の同一入力ポートに入力し、入力した各検出信号の値がそれぞれ所定条件を満たす値であるか否かを一括判定している。
これにより、設定変更モードへの移行判定について、各検出信号の値が所定条件を満たす値か否かを個別判定する場合よりも判定処理数の削減が図られる。
ステップS115の設定変更処理を実行したことに応じ、CPU201はステップS116でRAMクリア処理を実行する。このRAMクリア処理は、RAM203におけるワーク領域を含む所定領域(使用領域)内の値を初期化する処理や、ステップS115で実行した設定変更処理の終了を演出制御部24側に通知するための設定変更終了コマンドの送信処理を含むが、詳細は後述する。
続いて、先のステップS104において、ステップS103によるマスク後の値が「111」ではなく、設定変更条件が成立していないとの否定結果が得られた場合、CPU201はステップS105に進んでRAM異常か否かを判定する。具体的には、RAM203のワーク領域に格納されている「設定値」が使用範囲Ru外の値(本例では「1」「2」「6」の範囲外)であるか否かを少なくとも判定する。
ここで、CPU201が設定値Veに関して扱う値としては、設定値Vdがある。設定値Vdは、設定値Vdは、設定値Veに対応した値であり、本例では1バイトの値とされ、前述した使用範囲Ruに対応する少なくとも3段階を表現可能となるように、00H(0)〜02H(3)の値が定められている。なお、「H」は16進数を意味する(以下、同様)。本例では、設定値Vd=00Hが設定値Ve=「1」を、設定値Vd=01Hが設定値Ve=「2」を、設定値Vd=02Hが設定値Ve=「6」をそれぞれ表すものとされる。主制御部20において、「設定値」としては主に設定値Vdが扱われるもので、主制御部20のRAM203のワーク領域における「設定値」の格納領域にはこの設定値Vdが格納される。
ステップS105の判定処理では、ワーク領域に格納された設定値Vdが00H〜02Hの範囲の値であるか否かを判定する。
ステップS105において、設定値が上記の使用範囲Ru外(つまり正常な範囲外)の値であり、RAM異常であると判定した場合、CPU201はステップS112以降に続く電源再投入を待機するための処理に以降する。
具体的に、ステップS112でCPU201は、電源再投入時のコマンド送信処理として、パチンコ遊技機1の電源再投入且つ設定変更を促すための報知が行われるように指示するための演出制御コマンド(設定変更待ちコマンド)を演出制御部24に送信する処理を行う。起動時においてRAM異常が検知された場合には、強制的に設定変更モードに移行させて設定値Veの変更(設定)を受け付ける。このためCPU201は、先ずステップS112で、設定変更待ちコマンドにより設定変更モードに移行する旨を演出制御部24側に通知する。
該設定変更待ちコマンドを受け演出制御部24は、例えば「扉を開けて設定を変更して下さい」等の文字を含む画面等、設定変更操作を促すための画面表示を液晶表示装置36に実行させる。このとき、演出制御部24は、該画面表示と共に対応する光演出(例えば光表示装置45aにおける全LED点灯)や音演出を現出させる制御を行ってもよい。
ステップS112に続くステップS113でCPU201は、バックアップフラグを00H(つまりOFF)とした上で、ステップS114のエラー表示処理を繰り返す。このステップS114のエラー表示処理では、設定・性能表示器97にエラー表示を実行させるための処理が行われる。このエラー表示処理はパチンコ遊技機1の電源が遮断されるまで繰り返され、電源が再投入されると主制御側メイン処理としてステップS101以降の処理が再び実行される。このとき、上記の画面表示等に応じて設定変更モードへの移行操作が行われていれば、設定変更モードへの移行が行われ、RAM異常状態の解消が図られる。
上記したステップS105において、設定値が使用範囲Ru外の値ではなく、RAM異常ではないと判定した場合、CPU201はステップS106に進んでバックアップフラグがON状態か否か(本例ではバックアップフラグ=5AHがON状態)を判定する。
遊技機1において、電源遮断時には、主制御側タイマ割込み処理における後述する電源チェック・バックアップ処理(ステップS901、図19参照)により、RAM203の記憶情報についてバックアップのための処理が行われる。電源遮断時に適正にバックアップ処理が行われた場合には、バックアップフラグがON状態とされる(図19のステップS1010参照)。このため上記のステップS106ではバックアップフラグを確認して、バックアップ復帰可能であるか否かの判定を行う。具体的に、ステップS106では、RAM203の所定領域に格納されたバックアップフラグがON状態(5AH)である否かを判定する。
ステップS106でバックアップフラグがONでないと判定した場合、CPU201は上述したステップS112に処理を進める。これにより、バックアップ復帰条件を満たさない場合には、先に説明したRAM異常が認められた場合と同様、強制的に設定変更モードへの移行が行われる。
ここで、前述したように、ステップS106の判定処理は、設定確認処理の実行有無を問わず、バックアップ復帰処理が行われる状態への移行可否を判定する処理に相当するものである。
一方、ステップS106でバックアップフラグがONであると判定した場合、CPU201は、ステップS107でRAMクリア条件(RAMクリア処理への移行条件)が成立しているか否かを判定する。具体的には、Wレジスタの6ビット目の値が「1」か否かを判定する。
Wレジスタの6ビット目の値が「1」であり、RAMクリア条件が成立しているとの肯定結果が得られた場合、CPU201は上述したステップS116に処理を進める。これにより、上述したRAMクリア処理が実行される。
ここで、上記したステップS107→S116に至るルートを参照して分かるように、本実施形態の遊技機1では、設定変更をせずにRAMクリアを行うことが可能とされている。これにより、RAM203における払出関係のデータ等、設定値Veに係るデータ以外をクリアしたい場合に対応可能とされている。
また、ステップS107において、Wレジスタの6ビット目の値が「1」でなく、RAMクリア条件が成立していないとの否定結果が得られた場合、CPU201はステップS108に進んで設定確認条件(設定確認処理への移行条件)が成立しているか否かを判定する。すなわち、ステップS103によるマスク後のWレジスタの値が「110」か否かを判定する。
マスク後のWレジスタの値が「110」であり設定確認条件が成立しているとの肯定結果が得られた場合、CPU201はステップS109の設定確認処理を実行し、ステップS110に処理を進める。すなわち、バックアップ復帰のための処理に移行する。
なお、ステップS109の設定確認処理の詳細については改めて説明する。
一方、マスク後のWレジスタの値が「110」ではなく設定確認条件が成立していないとの否定結果が得られた場合、CPU201はステップS109の設定確認処理をパスして、ステップS110に進む。
ステップS110でCPU201は、バックアップ復帰時のコマンド送信処理として、バックアップ復帰時に対応した所定の演出制御コマンドを演出制御部24に送信する処理を行う。
ステップS110に続くステップS111でCPU201は、バックアップ復帰処理を行う。
バックアップ復帰処理は、電源遮断時にバックアップされたRAM203の記憶内容に基づいて、電源投入後に電源遮断前の動作に復帰させる処理となる。具体的に、CPU201は、電源遮断前におけるスタックポインタを復帰し、電源遮断時の処理状態から遊技動作を開始するための処理を行う。
また、バックアップ復帰処理では、バックアップ復帰した場合に対応した情報表示指示を行うための停電復帰表示コマンド(OB03H)が後述するステップS119のメインループ前処理において演出制御部24に送信されるようにするべく、停電復帰表示コマンドの下位バイトデータをレジスタに記憶する処理を実行する。
ステップS111のバックアップ復帰処理を実行した場合、又は前述したステップS116のRAMクリア処理を実行した場合(つまり設定変更処理とRAMクリア処理の双方を実行した場合、又はRAMクリア処理のみを実行した場合)、CPU201はステップS117処理を進める。
ステップS117でCPU201は、例えば4ms等の所定時間毎に定期的にタイマ割込みを発生させるためのCTCの設定を行う。
このステップS117の設定処理が行われることで、以降、割込みコントローラへの割込み要求信号が定期的に出力され、主制御側タイマ割込み処理が実行される。
続くステップS118でCPU201は、遊技開始を指示するための演出制御コマンドを演出制御部24に送信する処理を行い、次いで、ステップS119に処理を進めてメインループ前処理を実行した上で、ステップS120のメインループ処理を実行する。
なお、ステップS119のメインループ前処理については後に改めて説明する。
(メインループ処理)
図9は、ステップS120のメインループ処理を示したフローチャートである。
図9のメインループ処理において、CPU201はステップS601で、自身を割込み禁止状態に設定し、続くステップS602で乱数更新処理を実行する。この乱数更新処理では、特別図柄変動表示ゲームや普通図柄変動表示ゲームに使用される各種乱数(インクリメント処理によって所定数値範囲を循環している大当り抽選に係る乱数(図柄抽選に利用される特別図柄判定用乱数)や、補助当り抽選に係る乱数(補助当りの当落抽選に利用される補助当り判定用乱数))の初期値(スタート値)変更のために使用する乱数(特別図柄判定用初期値乱数、補助当り判定用初期値乱数)や、変動パターンの選択に利用される変動パターン用乱数を更新する。
本実施形態のRAM203には、大当り抽選に係る図柄抽選、補助当り抽選、又は変動パターン抽選などに利用される各種の乱数カウンタとして、特別図柄判定用乱数カウンタ初期値の生成用カウンタ、特別図柄判定用乱数カウンタ、補助当り判定用乱数カウンタ初期値の生成用カウンタ、補助当り判定用乱数カウンタ、変動パターン用乱数カウンタ等が設けられている。これらのカウンタは、ソフトウェア的に乱数を生成する乱数生成手段としての役割を果たす。ステップS602の乱数更新処理では、上述の特別図柄判定用乱数カウンタや補助当り判定用乱数カウンタの初期値を生成する2つの初期値生成用カウンタ、変動パターン用乱数カウンタ等を更新して、上記各種のソフト乱数を生成する。例えば、仮に、変動パターン用乱数カウンタとして取り得る数値範囲が「0〜238」とすると、RAM203の変動パターン用乱数の値を生成するためのカウント値記憶領域から値を取得し、取得した値に「1」を加算してから元のカウント値記憶領域に格納する。このとき、取得した値に「1」を加算した結果が「239」であれば「0」を元の乱数カウンタ記憶領域に格納する。他の初期値生成用乱数カウンタも同様に更新する。
ステップS602の乱数更新処理を終えると、CPU201はステップS603で全レジスタの値を退避する処理を行った上で、ステップS604で性能表示モニタ集計除算処理を行う。
この性能表示モニタ集計除算処理は、前述した性能情報としての値(ここでは、例えば前述した「通常時比率情報」としての値とする)を演算する処理である。前述のように、通常時比率情報の値は、総払出個数と総アウト球数とを用いて算出されるものであるが、CPU201は、総払出個数については、入賞口(上始動口34、下始動口35、一般入賞口43、大入賞口50)に入賞した遊技球の数をカウントした結果に基づき算出し、総アウト球数については、アウト口49から排出された遊技球の数をカウントすることで求める。
入賞球数のカウント、及びアウト球数のカウントは、主制御側タイマ割込み処理における後述する入力管理処理(図18ステップS904を参照)で行われる。CPU201は、このようにタイマ割込み処理側で行う入賞球数のカウント、及びアウト球数のカウントのそれぞれによるカウント値に基づき、ステップS604において通常時比率情報としての値を演算する。前述のように、演算した通常時比率情報としての値は、RAM203の所定領域(計測情報格納領域)に格納される。
なお、このように算出された通常時比率情報の値は、主制御側タイマ割込み処理における後述する性能表示モニタ表示処理(図18ステップS916を参照)によって設定・性能表示器97に表示される。
ステップS604に続くステップS605でCPU201は、全レジスタ復帰処理を行い、さらに続くステップS606で自身を割込み許可状態に設定した上で、ステップS601に戻る。
このようにステップS123のメインループ処理では、ステップS601〜S606の処理が無限ループ状に繰り返される。CPU201は、間欠的に実行されるタイマ割込み処理を行っている間を除いて、これらステップS601〜S606の処理を繰り返し実行することになる。
(設定変更処理)
図10は、ステップS115の設定変更処理を示したフローチャートである。
この設定変更処理では、操作に基づき設定値Veを設定するための処理や、設定変更中である旨や設定変更が終了(完了)した旨を通知するための演出制御コマンドを演出制御部24に送信するための処理等が行われる。
図10において、CPU201は、先ずステップS401で設定変更中コマンド(BA76H)を演出制御部24に送信する処理を実行する。
この設定変更中コマンドを受け、演出制御部24は、例えば「設定変更中です」等の文字が配された画面等、設定変更中である旨を報知するための画面表示を液晶表示装置36に実行させたり、スピーカ46から設定変更中に対応した音出力が行われるようにするための処理を行う。さらにこの際、演出制御部24は、前述した光発生手段(光表示装置45a)における所定のLED(例えば全LED)を所定の点灯パターンにより点灯させてもよい。
なお、設定変更中コマンドを始めとして、設定変更に係りCPU201が送信した各種演出制御コマンドに対応して演出制御部24が実行する処理については後述する(図52A等)。
続くステップS402でCPU201は、バックアップフラグを00H(つまりOFF状態)とした上で、ステップS403でシステム動作ステータス=2に設定する。このシステム動作ステータスは、起動時においてステップS115の設定変更処理を経由したか否かを少なくとも識別するための情報であり、「2」は設定変更処理を経由した旨を表し、「2」以外の値(例えば「0」)が設定変更処理を経由していない旨を表す。
図5を参照して分かるように、本例では、設定変更処理とRAMクリア処理(S116)の双方を実行する場合と、設定変更処理を実行せずRAMクリア処理のみを実行する場合とでRAMクリア処理(プログラム)を共用するものとしているが、上記のシステム動作ステータスを用いることで、RAMクリア処理のプログラムを共用しながら、前者の場合と後者の場合とで処理を実行し分けることができる。
ステップS403に続くステップS404でCPU201は、設定値を取得する処理を実行する。具体的には、RAM203のワーク領域に格納されている設定値Vd(本例では00H〜02Hの何れか)を取得する。
ステップS404に続くステップS405以降の処理は、設定値Veの順送り操作(RAMクリアボタンの操作)に応じて設定・性能表示器97における表示値を更新したり、設定変更の完了操作(設定キーの操作)に応じて設定値Veを設定したりするための処理となる。
先ず、CPU201はステップS405で、取得した設定値Vdを1デクリメントし(「設定値−1」)、続くステップS406で設定値Vdが1よりも大きいか否かを判定する(設定値>1」)。本例では、設定値Vdの最大値は02Hであるため、設定変更処理の開始後に初回に実行されるステップS406で設定値>1と判定されることはない。
ステップS406において、設定値Vdが1よりも大きくなければ、CPU201はステップS407でキャリーフラグをセットした上で(ONとした上で)、ステップS408で設定値Vdを1インクリメント(「設定値+1」)し、ステップS409でキャリーフラグがONであるか否か判定する。キャリーフラグがONであれば、CPU201はステップS411で設定変更時コマンドの取得処理を実行し、続くステップS412のコマンド処理によって設定変更時コマンドを演出制御部24に送信する。
なお、設定変更時コマンドについては後述する。
そして、ステップS412のコマンド送信処理を実行したことに応じ、CPU201はステップS413の出力管理処理を実行する。この出力管理処理により、設定・性能表示器97に現在の設定値Vdに対応する設定値Veが表示される。なお、ステップS413の出力管理処理の詳細は後述する。
ステップS413に続くステップS414でCPU201は、設定キーがOFFであるか否か、つまり設定キースイッチ94がOFFであるか否かを判定し、設定キーがOFFでなければステップS415で変更スイッチ、すなわちRAMクリアスイッチ98がONであるか否かを判定する。RAMクリアスイッチ98がONでなければ、CPU201はステップS413の出力管理処理を再度実行する。
ステップS413〜S415の処理により、CPU201は設定キー、変更スイッチの何れかがONとなるまで待機すると共に、待機中はステップS413の処理によって設定・性能表示器97に現在の設定値Veを表示させるための処理を繰り返す。
ステップS415において、変更スイッチがONであれば、CPU201はステップS406に戻る。
ここで、ステップS115の設定変更処理の開始時に取得された設定値Vd(それまで設定中であった設定値Vd)が02Hであった場合には、ステップS415で変更スイッチがONと判定されたことに応じて実行されるステップS406の処理において、「設定値>1」であるとの判定結果が得られる(ステップS405で−1されるがステップS408で+1されるため)。設定値Vdが02Hの状態で行われた変更操作(順送り操作)に応じては、設定値Vdを00Hに戻すべきである。このため、ステップS406で「設定値>1」と判定された場合は、ステップS407のキャリーフラグセット処理をパスして、ステップS408に処理を進める。これにより、ステップS409ではキャリーフラグがOFFと判定されるため、処理がステップS410に進められて設定値Vdが00Hに戻される(「設定値←0」)。
CPU201は、ステップS410で設定値Vdを00Hに戻したことに応じ、ステップS411、S412の処理を経由してステップS413に処理を進める。つまりこの場合は、設定・性能表示器97に設定値Vd=00Hに対応した設定値Ve(本例では「1」)が表示される。
上記の処理により、設定変更中においては、変更操作に応じて設定値Vdが00H〜02Hの範囲内(使用範囲Ru内)で循環式に変更されると共に、変更された設定値Vdに対応する設定値Veが設定・性能表示器97に表示される。
また、ステップS412で送信する設定変更時コマンドは、設定変更処理中において選択中の設定値Vdに応じた設定値Veを演出制御部24に通知するためのコマンドであり、該選択中の設定値Veを表す情報が格納されるコマンドとされる。
上記したステップS406〜S415の一連の処理により、設定値の順送り操作により選択中の設定値Veが切り替わるごとに、切り替え後の設定値Veを反映した設定変更時コマンドが演出制御部24に送信されることになる。
なお、図10では図示による説明を省略したが、設定値Vdに応じた設定値Veを取得するにあたっては、CPU201は後述する設定値オフセット変換テーブルを用いる(図16参照)。
ステップS415において、設定キーがOFFであると判定した場合、CPU201はステップS416に進んで設定値Vdを保存する処理を実行する。すなわち、設定値VdをRAM203のワーク領域における所定領域に格納する処理を実行する。
CPU201は、ステップS416の保存処理を実行したことに応じてステップS115の設定変更処理を終える。
図11は、ステップS413の出力管理処理のフローチャートである。
先ず、CPU201はステップS501で、セキュリティ信号出力処理を実行する。具体的には、枠用外部集中端子基板21を通じてホールコンピュータHCに対してセキュリティ信号が出力されるようにするための処理を行う。
続くステップS502でCPU201は、LEDコモンポート、すなわち設定・性能表示器97としてのLEDのコモンポートに0を出力する処理を実行した上で、ステップS503で7セグデコードテーブルから表示用データを取得する処理を実行する。すなわち、設定値Vdに基づき設定値Ve(「1」「2」「6」)の表示用データを取得する処理である。
なお、ステップS502でLEDコモンポートに0を出力した場合には設定・性能表示器97が表示OFF状態(無表示状態)となるが、その意義については後述する。
図12は、7セグデコードテーブルの例を示し、図13は設定・性能表示器97におけるセグメント構成とセグメントの表示パターンとの関係を例示した図である。
7セグデコードテーブルは、主制御部20のROM202に格納されている。
本例では、設定・性能表示器97における7つのセグメントが図13Aに示すように0〜6の数値によりナンバリングされている。設定・性能表示器97には、これら0〜6の7つのセグメントと共にDP(ドットポイント)の表示部(発光部)も設けられており、該DPの表示部には「7」のナンバリングがされている。
7セグメントの表示用データとしては、数値「0」を表す「SEG_0」の表示用データから、数値「9」を表す「SEG_9」の表示用データまでの計10個が用意されている。表示用データは、1バイト(8ビット)のデータとされ、最下位ビット位置を1番目のビット位置とすると、1番目のビット位置がセグメント「0」の表示/非表示(発光/非発光)を表す。以降、同様に2番目のビット位置がセグメント「1」、3番目のビット位置がセグメント「2」、4番目のビット位置がセグメント「3」、5番目のビット位置がセグメント「4」、6番目のビット位置がセグメント「5」、7番目のビット位置がセグメント「6」の表示/非表示をそれぞれ表す。
また、本例における表示用データは、8番目のビット位置がDP(「7」)の表示/非表示を表すものとされている。
図12に示す7セグデコードテーブルは、設定値Vd=00H、01H、02Hの各値から、それぞれ対応する表示用データ、具体的にはSEG_1、SEG_2、SEG_6の表示用データが取得されるように構成されている。
具体的に、本例の7セグデコードテーブルにおいては、図中「6203」〜「6208」のアドレス領域のように、少なくとも00H〜05Hの各設定値Vdごとの表示用データを格納する領域が確保されており、この領域における最上層部の領域(番号が最も若いアドレスの領域)に設定値Vd=00Hに対応した表示用データSEG_1(図中「06」)が、2番目の領域に設定値Vd=01Hに対応した表示用データSEG_2(図中「5B」)が、3番目の領域に設定値Vd=02Hに対応した表示用データSEG_6(図中「7D」)が格納されている。
なお、本例では、設定値Vd=03Hに対応する4番目の領域、設定値Vd=04Hに対応する5番目の領域、及び設定値Vd=05Hに対応する6番目の領域には、表示用データとして「00」が格納されているが、その意義については改めて説明する。
また、本例の7セグデコードテーブルには、7番目の領域に設定値エラーを表す「E」の表示を行うための表示用データSEG_E(「79」)が格納されているが、これにより、設定値Vdが使用範囲Ru外の値である等、設定値Vdが異常な値を示す場合に対応して設定・性能表示器97を通じた設定値エラーの報知を行うことが可能とされている。
説明を図11に戻す。
CPU201は、ステップS503の処理によって7セグデコードテーブルから取得した表示用データを、ステップS504で設定・性能表示器97に出力する処理を行う。
続くステップS505〜S508の処理は、設定・性能表示器97における設定値Veの表示用LEDをダイナミック点灯(間欠的な点灯)させるための処理となる。具体的に、ステップS505でCPU201は、LEDカウンタを1インクリメントし、続くステップS506でLEDカウンタの0,1ビット目(下位2ビット)が「11」であるか否かを判定する。ここで、LEDカウンタの下位2ビットが「11」となるのは、ステップS505のインクリメント処理が4の倍数回行われたときである。
ステップS506において、LEDカウンタの1,0ビット目が「11」であれば、CPU201はステップS507に進み、LEDコモンポートに設定値表示用のセグを指定するデータを出力し、ステップS508の表示用タイマカウント処理を実行する。ステップS507の出力処理が実行されることで、設定・性能表示器97においてはステップS504で出力した表示用データに基づく設定値Veの表示が行われる。そして、この表示状態は、ステップS508の表示用タイマの時間分(本例では4ms)、継続されることになる。
図11に示す出力管理処理は、ステップS508のタイマカウント処理に続くステップS509の処理の実行に応じて終了となり、処理は図10に示すステップS414に進むことになるが、この際、設定キーOFF且つ変更スイッチがONであれば、ステップS413の出力管理処理が繰り返される。上述のようにステップS502ではLEDコモンポートに0が出力されるので、先のステップS507の処理で開始された設定値表示用のLEDの点灯状態は該ステップS502の実行により解除される。そして、ステップS505ではLEDカウンタが1インクリメントされるため、ステップS506ではLEDカウンタの0,1ビット目が「11」でないと判定され、ステップS507の出力処理はパスされてステップS508のタイマカウント処理が実行される。つまり、ステップS507の処理が実行されて設定値表示用のLEDが少なくとも4msの期間点灯された後は、LEDカウンタの0,1ビット目が再度「11」となるまでの間、つまり本例では少なくとも4ms×3=12msの間、該LEDが消灯状態とされるものである。
このようにして、設定値表示用のLEDを所定の周期で間欠的に点灯させるダイナミック点灯が実現される。
図11において、CPU201はステップS508のタイマカウント処理を実行したことに応じ、ステップS509で入力データ作成処理を実行する。
この入力データ作成処理は、例えば主制御側タイマ割込み処理(図18)におけるステップS902の同処理を呼び出して実行する。後述するように、該入力データ作成処理で作成される入力データには、設定値Veの順送り操作の有無を表すRAMクリアスイッチ98の入力データや、設定変更の完了操作の有無を表す設定キースイッチ94の入力データが含まれている。
図10を参照して分かるように、設定変更の完了操作の有無の判定(S414)や設定値Veの順送り操作の有無の判定(S415)は、ステップS413の出力管理処理の後に実行されるものであり、このステップS509の入力データ作成処理を実行しておくことで、これら判定処理で必要とされるデータを予め得るようにしている。
(RAMクリア処理)
図14は、図5に示したRAMクリア処理のフローチャートである。
先ず、CPU201はステップS601で、領域内RAM初期化処理を実行する。このステップS601の初期化処理は、RAM203におけるワーク領域を含む所定領域(使用領域)内の値を初期化(クリア)する処理となる。但し、このステップS601の初期化処理では、ワーク領域における設定値Vdの格納領域については初期化の対象外とされている。
なお、上述した性能情報については、RAM203における使用領域外の領域に格納されており、従ってステップS601の初期化処理ではクリアされない。
RAMクリア処理でクリア対象となるのは、通常の遊技進行の際に必要な各種のフラグやタイマやカウンタ等のRAM領域(通常データ格納領域)のデータである。これらのデータには、例えば次のようなものがある。すなわち、遊技状態指定に係るデータ(通常状態、確変状態、時短状態、潜確状態など、現在の遊技状態を特定する遊技状態フラグ)、当り遊技中であるか否かを指定するフラグ(条件装置作動フラグ)、当り遊技の実行に係る各種データ(現在のラウンド数、最大ラウンド数等)、大当り抽選結果に係るデータ(大当り判定フラグ:当落抽選結果情報、特別図柄判定データ:図柄抽選結果情報)、作動保留球に関する保留データ(作動保留球数、大当り抽選に利用される各種乱数値、補助当り抽選に利用される各種乱数値、変動パターン用乱数)、特別図柄動作ステータス、遊技進行を管理するタイマ(特別図柄役物動作タイマ)、スイッチ・センサ類に係る入出力データ、入賞口の入賞球数をカウントする各種の入賞カウンタ、電サポ状態の有無を指定するフラグ(開放延長フラグ)、電サポの残余回数をカウントする電サポ回数カウンタ、高確率状態の残余回数をカウントするカウンタ(特図確変回数カウンタ、普図確変回数カウンタ)、各種エラーフラグ(RAMエラーフラグを除く)、及び払出関連のデータ等である。何れにしても、RAMクリア処理が実行されると、特定のデータ(設定値Vdや性能情報)以外のすべてのデータが初期状態に設定される。
ここで、先の図5の説明から理解されるように、設定変更処理(S115)が実行された場合には、ステップS116に処理が進められてRAMクリア処理が実行される。
設定変更処理では設定値Vdが変更され得る。設定値Vdが変更された場合、RAM203のワーク領域における設定値Vd以外の格納値が、変更後の設定値Vdに対して整合しない状態となる可能性がある。このため、設定変更処理を行った場合は、RAMクリア処理を実行することで、ワーク領域における設定値Vd以外の領域をクリア(初期化)するものとしている。
ステップS601の初期化処理を実行したことに応じ、CPU201はステップS602でRAMクリア報知タイマに30sをセットする共に本特図に外れ目をセットするための処理を実行する。RAMクリア報知タイマは、後述する図17のステップS803の処理で送信されるRAMクリアコマンドに応じて演出制御部24が実行するRAMクリア報知の時間を設定するためのタイマであり、本例では30sを設定する。また、ここで言う本特図とは、例えば上述した特図1及び特図2のことを意味する。
ステップS602に続くステップS603でCPU201は、前述したシステム動作ステータスが「2」であるか否かを判定する。すなわち、起動後にステップS115の設定変更処理を経由したか否かを判定する。
システム動作ステータスが「2」であれば、CPU201はステップS604〜S612により、設定変更処理を経由した場合に対応した処理を実行する。
システム動作ステータスが「2」でなければ、CPU201は、ステップS613に処理を進めてRAMクリアコマンドの下位バイトデータをレジスタに記憶し、ステップS116のRAMクリア処理を終える。
なお、上記のようにコマンドの下位バイトデータをレジスタに記憶する動作は、後述するメインループ前処理(図17)のステップS804で送信するコマンド種別を指定する動作として機能する。
設定変更処理を経由した場合、CPU201は、先ずステップS604でシステム動作ステータスを「0」にリセットした上で、ステップS605で設定変更終了コマンド(BA77H)の取得処理を実行し、続くステップS606のコマンド送信処理により設定変更終了コマンドを演出制御部24に送信する。
ステップS606に続くステップS607〜S612の処理は、設定・性能表示器97における設定値Veの表示に係る処理となる。
先ず、ステップS607でCPU201は、LEDコモンポートに設定値表示用のセグを指定するデータを出力し、続くステップS608で7セグデコードテーブル(図13参照)から設定値Vdに対応する表示用データを取得し、ステップS609で表示用データにDP付加する処理、すなわち表示用データの7番目のビット位置の値を「1」とする処理を実行した上で、ステップS610の出力処理により表示用データを設定・性能表示器97に出力する。
ステップS611に続くステップS612、S613の処理は、設定・性能表示器97における設定値Ve及びDPの表示状態を所定時間(本例では1s)継続させるための処理となる。具体的に、CPU201はステップS612の表示用タイマカウント処理(例えば先のステップS508(図11参照)と同様の4ms周期のタイマカウント処理)を、ステップS612で1sが経過したと判定するまで繰り返し実行する。
ステップS612で1sが経過したと判定した場合、CPU201はステップS613の記憶処理を実行し、ステップS116のRAMクリア処理を終える。
これまでの説明から理解されるように、ステップS115の設定変更処理が実行され、設定変更の完了操作が行われた場合(図10のステップS412:Y)には、ステップS116のRAMクリア処理において設定変更終了コマンドが演出制御部24に送信されて(S605、S606)、設定変更が終了した旨の通知が行われる。
本例の場合、設定変更終了コマンドは、設定変更が終了した旨を演出制御部24に通知するものであって、設定変更処理で設定された設定値Veを通知する機能までは与えられていない。
本例では、設定変更処理で設定された設定値Veは、後述する図17(メインループ前処理)のステップS808の処理で送信される設定値コマンドによって演出制御部24に通知される。
(設定確認処理)
図15は、ステップS109の設定確認処理を示したフローチャートである。
設定確認処理は、設定中の設定値Veを確認表示するための処理となる。
図15において、CPU201は先ずステップS701で、不正情報タイマに30sをセットする。不正情報タイマは、前述したセキュリティ信号のホールコンピュータHCに対する出力時間を管理するためのタイマである。
続くステップS702で現在の設定値情報を取得する処理を行う。すなわち、RAMのワーク領域に格納されている設定値Vdを取得する。
ステップS702に続くステップS703でCPU201は、設定値オフセット変換テーブルから設定値データを取得する処理を実行する。
図16は、主制御部20のROM202に格納された設定値オフセット変換テーブルの例を示している。
設定値オフセット変換テーブルは、設定値Vd(00H〜02H)を設定値Ve(「1
」「2」「6」)の識別データ(「SETNUM1」〜「SETNUM6」)に変換するためのテーブルとして機能する。
本例の場合、設定値オフセット変換テーブルは、図中「6215」〜「6220」のアドレス領域のように、少なくとも00H〜05Hの各設定値Vdごとに設定値Veの識別データを格納する領域が確保されており、この領域における最上部の領域に設定値Vd=00Hに対応した設定値Ve「1」の識別データ(図中「00」)が、2番目の領域に設定値Vd=01Hに対応した設定値Ve「2」の識別データ(図中「01」)が、3番目の領域に設定値Vd=02Hに対応した設定値Ve「6」の識別データ(図中「05」)が格納されている。
なお、本例では、設定値Vd=03Hに対応する4番目の領域、設定値Vd=04Hに対応する5番目の領域、及び設定値Vd=05Hに対応する6番目の領域には、設定値Veの識別データとして「00」が格納されているが、その意義については改めて説明する。
図15において、CPU201はステップS703の取得処理により、上記の識別データを「設定値データ」として取得する。
ステップS703の取得処理を実行したことに応じ、CPU201はステップS704で設定確認中コマンド(BA6xH)の取得処理を実行し、続くステップS705のコマンド送信処理により、設定確認中コマンドを演出制御部24に送信する。
CPU201はステップS704の取得処理において、設定確認中コマンドにステップS703で取得した設定値データ、すなわち現在設定値中の設定中の設定値Veを識別するための識別データを含ませる処理を行う。
これにより、ステップS705のコマンド送信処理が実行されることで、演出制御部24に設定確認中である旨と現在の設定値Veが通知されることになる。
ステップS705に続くステップS706、S707の処理は、現在の設定値Veを設定・性能表示器97に表示させるための処理となる。
具体的に、CPU201は先ずステップS706で、設定値とDPのデータを取得する処理を実行する。すなわち、RAM203のワーク領域に格納されている現在の設定値Vdと、設定・性能表示器97におけるDPのデータ(「1」)とを取得する処理を実行する。その上で、ステップS707の出力管理処理を実行する。このステップS707の出力管理処理は、図11に示したステップS413の出力管理処理と同じ処理である。これにより、この場合の設定・性能表示器97には、現在の設定値Veを表す値とDPの表示が行われる。
ステップS707に続くステップS708でCPU201は、設定キーOFF(設定キースイッチ94がOFF)であるか否か、つまり設定確認表示の終了指示操作が行われたか否かを判定し、設定キーOFFでなければステップS707の出力管理処理を再度実行する。これにより、ステップS705で設定確認中コマンドが送信された後は、ステップS708の処理により設定確認表示の終了指示操作が行われるまで待機するようにされ、待機中はステップS707の処理によって設定・性能表示器97に現在の設定値Ve及びDPを表示させる処理を継続して行うようにされる。
ステップS708で設定キーOFFであると判定した場合、CPU201はステップS709で設定確認終了コマンド(BA67H)の取得処理を実行し、続くステップS710のコマンド送信処理により設定確認終了コマンドを演出制御部24に送信し、ステップS109の設定確認処理を終える。
(メインループ前処理)
図17は、ステップS119のメインループ前処理のフローチャートである。
メインループ前処理において、CPU201は先ずステップS801で、イニシャライズコマンドの取得処理を実行し、続くステップS802のコマンド送信処理によりイニシャライズコマンドを演出制御部24に送信する。イニシャライズコマンドは、役物としての可動体を動作させる可動体役物モータ80cのイニシャライズ(原点復帰)指示を行うためのコマンドである。
ステップS802に続くステップS803でCPU201は、取得した下位バイトコマンドから送信コマンドデータを取得する処理を行い、取得したコマンドデータを、ステップS804のコマンド送信処理により演出制御部24に送信する。
ここで、ステップS803の取得処理では、起動後に経由してきた処理の過程で下位バイトデータがレジスタに格納されたコマンドのデータが取得される。具体的に、ステップS116のRAMクリア処理を経由した場合(設定変更処理とRAMクリア処理の双方が行われた場合、又は設定変更処理が行われずRAMクリア処理のみが行われた場合)には、RAMクリアコマンド(BA02H)のデータが取得される。一方、ステップS111のバックアップ復帰処理が行われた場合(設定確認処理とバックアップ復帰処理の双方が行われた場合、又は設定確認処理が行われずバックアップ復帰処理のみが行われた場合)には停電復帰表示コマンド(OB03H)のデータが取得される。
これにより演出制御部24は、RAMクリア処理が行われた場合、バックアップ復帰処理が行われた場合でそれぞれ異なる処理を実行するようにされている。
ステップS804に続くステップS805でCPU201は、特図1、特図2の保留個数を送信するための処理を実行する。ここで、このステップS805の処理では、ステップS111のバックアップ復帰処理が行われた場合に特図1、特図2の保留個数を演出制御部24に送信し、ステップS116のRAMクリア処理が行われた場合には該保留個数の送信は行わない(保留個数の情報がクリアされているため)。
ステップS805に続くステップS806〜S808の処理は、現在の設定値Veを設定値コマンドにより演出制御部24に通知するための処理となる。
先ず、ステップS806でCPU201は、現在の設定値情報を取得するための処理として、RAM203のワーク領域に格納されている設定値Vdを取得する処理を行い、続くステップS807で設定値オフセット変換テーブル(図16)から設定値データを取得する処理を実行する。具体的には、ステップS806で取得した設定値Vd(00H〜02H)に対応する設定値Ve(「1」「2」「5」)の識別データを取得する。
そして、CPU201は続くステップS808で設定値コマンド(F6xxH)の取得処理を行い、ステップS809のコマンド送信処理により設定値コマンドを演出制御部24に送信する。
ステップS808の取得処理では、ステップS807で取得した識別データを含む設定値コマンドを取得する。このような設定値コマンドにより、演出制御部24に現在の設定値Veを通知することができる。
ステップS809のコマンド送信処理を実行したことに応じ、CPU201はステップS810で内部機能レジスタの設定処理、すなわちハードウェア乱数のカウント機能等、各種機能の初期設定のためのレジスタ設定処理を実行し、ステップS811で性能表示モニタ点灯用タイマを5sにセットする処理を実行する。性能表示モニタ点灯用タイマは、設定・性能表示器97の起動時における動作確認点灯動作(本例では5秒間の点滅動作)について、その動作時間を管理するためのタイマである。
さらに、ステップS811に続くステップS812でCPU201は、システム動作ステータスを「0」にリセットし、ステップS813で払出制御基板29に対する発射許可信号をONとする。これに応じ払出制御基板29は、発射許可状態であると判断し、上記許可信号を発射制御基板28に対して出力し、発射装置32による遊技球の発射動作を許容する。これにより、発射操作ハンドル15による遊技球の発射が可能になる。
なお、ここでは、主制御部20からの発射許可信号を払出制御基板29が受けて発射動作を許容する構成、つまり、主制御部20からの発射許可の指示情報が、払出制御基板29を通じて間接的に発射制御基板28に送られる構成を例示したが、本発明はこれに限らず、例えば、主制御部20による発射許可信号を直接的に発射制御基板28に出力する構成とすることもできる。
CPU201は、ステップS813の処理を実行したことに応じ、ステップS119のメインループ前処理を終える。
(実施形態としての設定値表示用データテーブルと設定値変換テーブルの利点)
ここで、本実施形態では、図16に示した設定値オフセット変換テーブルのように、主制御部20のROM202には、設定値を参照して選択される複数の設定値関連情報を含むデータテーブルが格納されている。
そして、このデータテーブルには、主制御部20が設定変更処理(図10参照)により設定可能な設定値Vd(「00H」〜「02H」)を参照した場合に選択される設定値関連情報である第一設定値関連情報と、主制御部20が設定変更処理により設定不能な設定値を参照した場合に選択される設定値関連情報である第二設定値関連情報とが含まれている。具体的に、第一設定値関連情報としては、図16に示す設定値オフセット変換テーブルにおけるアドレス「6215」「6216」「6217」にそれぞれ格納された「00」「01」「05」が該当し、第二設定値関連情報としては、アドレス「6218」「6219」「6220」にそれぞれ格納された「00」「00」「00」が該当する。
さらに、データテーブルにおいては、第一設定値関連情報として、当選確率が最も低い段階を表す設定値Veに関する特定情報(つまりアドレス「6215」における「00」)が、少なくとも記憶され、また第二設定値関連情報として、特定情報と同じ情報が記憶されている。
設定値Vdが設定不能な値であったときは、RAM203に格納される設定値Vdを最低段階を表す値に書き替えることが考えられる。
しかし、書き替え後に改竄される等した場合、設定不能な設定値Vdに基づきデータテーブルから対応する情報が取得されて、設定不能な設定値に応じた動作が実現される虞がある。
上記構成によれば、データテーブルから設定不能な設定値Vdに応じた情報を取得することが不能とされるため、不正行為が成立してしまうことの防止を図ることができ、遊技の公平性を高めることができる。
また、本実施形態では、上記した特定情報として0が記憶されている。
これにより、設定値関連情報に特定情報=0を書き込むという簡易な手法により、設定値の改竄による不正行為の成立防止を図ることが可能とされる。すなわち、遊技の公平性を簡易な手法により高めることができる。
また、本実施形態では、図12に示した7セグデコードテーブルについても、主制御部20が設定変更処理により設定可能な設定値Vdを参照した場合に選択される設定値関連情報である第一設定値関連情報(アドレス「6203」〜「6205」)と、主制御部20が設定変更処理により設定不能な設定値を参照した場合に選択される設定値関連情報である第二設定値関連情報(アドレス「6206」〜「6208」)とが含まれるようにしている。そして、7セグデコードテーブルでは、第二設定値関連情報として0を記憶させている。
これにより、不正行為や何らかの誤動作等に伴い、設定変更処理で設定不能な設定値Vdによりデータテーブルが参照されたとしても、設定値の表示手段(本例では設定・性能表示器97)に設定値表示が行われないようにすることが可能とされる。具体的に本例では、表示用データとして「00」のデータ、すなわち「00000000」が取得されるので、設定値表示用の7セグにおける「0」〜「6」の全てのセグが非表示とされ、結果、数値表示が行われないことになる。
従って、設定値の誤表示防止を図ることができる。
[4-2.主制御側タイマ割込み処理]
図18のフローチャートを参照して、主制御側タイマ割込処理について説明する。
主制御側タイマ割込処理は、CTCからの一定時間(4ms程度)ごとの割込みで起動され、主制御側メイン処理実行中に割り込んで実行される。
図18において、CPU201は、タイマ割込みが生じると、先ずはステップS901の電源チェック・バックアップ処理を実行する。この電源チェック・バックアップ処理では、主に、電源基板から供給されている電源レベルを監視し、電断が生じる等の異常が発生した場合、電源復帰時に支障なく遊技を復帰できるように、電断時における所定の遊技情報をRAM203に格納するバックアップ処理等が行われる。
(電源チェック・バックアップ処理)
図19は、ステップS901の電源チェック・バックアップ処理を示したフローチャートである。
電源チェック・バックアップ処理において、CPU201はステップS1001で、電源基板から出力される電源異常信号を2回読み込み、続くステップS1002で双方の読み込み値が一致しているか否かを判定する。双方の値が一致していない場合は、ステップS1001に戻って再度、電源異常信号を2回読み込む。
ステップS1002において、双方の値が一致していれば、CPU201はステップS1003で、電源異常信号が正常レベルか否か(電源異常信号がOFF=正常レベル、ON=正常レベルでない)を判定する。
電源異常信号が正常レベルであれば(ステップS1003:OFF)、CPU201はステップS1004でバックアップフラグをOFF状態とし、続くステップS1005で電源異常確認カウンタをクリアし、ステップS901の電源異常チェック処理を終える。すなわち、電源異常信号が正常レベルであることが確認された場合は、以降で説明するバックアップ処理は行われずタイマ割込み処理が継続される。
一方、ステップS1003で電源異常信号が正常レベルでなかった場合(ステップS1003:ON)、CPU201はステップS1006で電源異常確認カウンタの値を1インクリメントした上で、ステップS1007で電源異常確認カウンタの値が所定の閾値(閾値=2以上の自然数:例えば「2」)以上であるか否かを判定する。
電源異常確認カウンタの値が閾値以上でなければ、CPU201はステップS901の電源異常チェック処理を終える。すなわち、電源異常信号が正常レベルでない状態が検知されたが連続的な検知でない場合には、バックアップ処理は行われずタイマ割込み処理が継続される。
一方、電源異常確認カウンタの値が閾値以上であれば、CPU201はステップS1008〜S1011として示すバックアップ処理を行う。
具体的に、CPU201は先ず、電源異常確認カウンタの値をクリアし(S1108)、発射許可信号をOFFとした上で(S1009)、バックアップフラグをONとする(S1010)。
さらに、CPU201は、電源断コマンドを演出制御部24に送信し(S1011)、ステップS1012に処理を進める。
ステップS1012でCPU201は、RAMプロテクトを有効とし、禁止領域を無効に設定する処理を行う。
RAMプロテクトとは、誤作動や誤操作などによるRAM203に対する書き換え防止機能である。RAMプロテクトを有効に設定することで、RAM203からのデータ読み出しのみが可能とされてデータの書き込みが不能な状態となる。
また、禁止領域は、IAT(指定エリア外走行禁止)機能における指定エリアに対応した領域であり、禁止領域を無効に設定することで、以降はIATリセットが発生しないようになる。
ステップS1012に続くステップS1013でCPU201は、出力ポートの値をクリアし、さらに続くステップS1014でタイマ割込み処理を停止すると共に、自身を割込み禁止状態に設定し、無限ループ処理に移行する。
この無限ループ中において、CPU201はWDTによりリセットされ、また動作電源の喪失により動作停止状態に移行する。
説明を図18に戻す。
図18において、ステップS901の電源チェック・バックアップ処理を終えると、CPU201はステップS902で入力データ作成処理を実行する。具体的には、各種センサやスイッチから入力情報(ON/OFF信号や、立ち上がり状態(ONエッジ、OFFエッジ))に基づき、入力データ作成する。
ここでの入力情報とは、例えば上始動口センサ34a、下始動口センサ35a、普通図柄始動口センサ37a、大入賞口センサ52a、一般入賞口センサ43a、OUT監視スイッチ49aなどの入賞検出スイッチから出力されるスイッチ信号のON/OFF情報(入賞検出情報)や、設定キースイッチ94、RAMクリアスイッチ98等の設定値Veの設定操作に係るスイッチから出力されるスイッチ信号のON/OFF情報(操作情報)や、払出制御基板29からの状態信号(前扉開放センサ61や満杯検出センサ60のON/OFF情報)等である。これにより、アウト口や各入賞口において遊技球が検出されたか否かが割込みごとに監視される。
ステップS902の入力データ作成処理を終えると、CPU201はステップS903で、遊技動作制御に用いられるタイマを管理するタイマ管理処理を実行する。ここでは、遊技機1の遊技動作制御に用いる各種タイマの値について更新(減算処理)が行われる。
次いで、CPU201はステップS904で、入力管理処理を行う。この入力管理処理では、入力データ作成処理(S902)で作成された入力データに基づき、入賞カウンタやOUT球監視カウンタの値などを更新する。「入賞カウンタ」とは、各入賞口ごとに対応して設けられ、入賞した遊技球数(入賞球数)を計数するカウンタである。またOUT球監視カウンタは、アウト口49から排出される遊技球(アウト球)を計数するカウンタである。
ステップS904の入力管理処理は、各種入賞口センサからの入力信号(検出信号)を管理する入力管理手段として機能する。
ステップS904に続くステップS905でCPU201は、設定異常チェック処理を実行する。
図20は、ステップS905の設定異常チェック処理を示したフローチャートである。
図20において、CPU201はステップS1101で、設定値エラーフラグを確認する。設定値エラーフラグは、設定値Vdの異常が認められた場合に以下で説明するステップS1103の処理によりセットされる(ONされる)フラグであり、本例では「5AH」がON状態を意味する。
ステップS1101において、設定値エラーフラグが「5AH」(ON状態)であれば、CPU201はステップS905の設定異常チェック処理を終える。すなわち、ステップS1101で設定値エラーフラグがONと判定されるということは、既に後述するステップS1104で設定値異常コマンド(演出制御部24に設定エラー報知の実行を指示するコマンド)の送信が実行されている状態であるため、設定値エラーフラグを再度送信することなく、設定異常チェック処理を終える。
一方、ステップS1101で設定値エラーフラグが「5AH」でない(OFFである)と確認された場合、CPU201はステップS1102で設定値Vdが正常範囲内の値(0〜2の範囲内)であるか否かを判定する。具体的には、RAM203のワーク領域に格納されている設定値Vdを取得し、値が「00H」〜「02H」の範囲にあるか否かを判定する。
設定値Vdが正常範囲内の値であれば、CPU201はステップS905の設定異常チェック処理を終える。
設定値Vdが正常範囲内の値でなければ、CPU201はステップS1103に進んで設定値エラーフラグをセット(ON状態)とし、続くステップS1104で設定値Vdに異常が生じた旨を表すための設定値異常コマンドを演出制御部24に送信し、設定異常チェック処理を終える。
ここで、設定値エラーフラグは、後述する図22のステップS1308(入賞時の設定エラー判定)をはじめとして、図24におけるステップS1501(変動開始時の大当り乱数判定を行う際の設定エラー判定や、図28におけるステップS1701(変動開始時の変動パターン抽選を行う際の設定エラー判定)において用いられる。
ここで、上記の設定値異常コマンドを受け演出制御部24は、設定値Veのデータ異常を報知するための処理を行う。例えば、液晶表示装置36に「RAM異常です。係員を呼んで下さい。」等の表示を含む画像を表示させる処理を行う。
遊技機1において、設定エラー(設定値エラー)は、設定変更操作を行うことで解除可能とされている。
説明を図18に戻す。
CPU201はステップS905の設定異常チェック処理を終えると、ステップS906でエラー管理処理を実行する。このエラー管理処理では、各種センサ類に係る入力データや払出制御基板29からの状態信号に基づき、エラー発生の有無の監視を行う。
エラーが発生した場合には、CPU201はエラー処理として、エラーコマンドの送信が必要なエラー種別である場合には当該するコマンドを演出制御部24に送信する。演出制御部24がこのエラーコマンドを受けると、エラー種別に応じたエラー報知を実行する。また、CPU201は発生中のエラーが解消された場合、エラー解除コマンドを演出制御部24に送信する。演出制御部24がこのエラー解除コマンドを受けると、実行中のエラー報知を終了させる。
次いで、CPU201はステップS907で、各変動表示ゲームに係る乱数を定期的に更新するタイマ割込み内乱数管理処理を実行する。ここでは、乱数カウンタのカウント値をランダムなものとするために、特別図柄判定用乱数や補助当り判定用乱数などに対し、乱数の更新(割込み毎に+1加算)と、乱数カウンタが一周するごとに、乱数カウンタのスタート値を変更する処理を行う。なお内部抽選用乱数(大当り判定用乱数)は、乱数生成回路で生成されるので、ここで更新されることはない。
ステップS907に続くステップS908でCPU201は、賞球管理処理を実行する。この賞球管理処理では、上記の入賞カウンタの確認を行い、入賞がある場合には、賞球数を指定する払出制御コマンドを払出制御基板29に送信する。払出制御基板29は、払出制御コマンドを受信した場合、これに含まれる賞球数情報に基づき遊技球払出装置19を制御し、指定された賞球数分の払い出し動作を実行させる。
次いで、CPU201はステップS909で、普通図柄管理処理を実行する。この普通図柄管理処理では、普通図柄変動表示ゲームを実行させるために必要な処理を行う。ここでは、普通図柄始動口センサ37aにより遊技球が検出されたか否かを監視し、遊技球が検出された場合には補助当り抽選に必要な所定の遊技情報(補助当り判定用乱数など)を取得し(乱数取得処理)、その遊技情報を保留データ(普通図柄に関する作動保留球)として、最大保留球数を上限まで保留記憶する(保留記憶処理)。そして、普図に関する所定の変動表示開始条件が成立した場合、作動保留球に基づく補助当り抽選を行い、その補助当り抽選結果に基づく普通図柄の変動パターンの選択および普通図柄の停止表示態様(普通停止図柄)を決定する。またここでは、普通図柄を変動表示動作させるために、変動中であれば変動表示用のLED表示用データを作成し、変動中でなければ、停止表示用のLED表示用データを作成する。
さらに、CPU201はステップS910で、普通電動役物管理処理を実行する。この普通電動役物管理処理では、普電開放遊技の実行に必要な処理を行う。具体的には、補助当り抽選の抽選結果が当りの場合に、普通電動役物ソレノイド41cに対するソレノイド制御用データの設定処理を行う。ここで設定されたソレノイド制御用データに基づき、普通電動役物ソレノイド41cに対して励磁信号が出力され、これにより、可動翼片47の開閉動作パターンが制御される。
次いで、CPU201はステップS911で、特別図柄管理処理を実行する。この特別図柄管理処理では、主に、特別図柄変動表示ゲームにおける大当り抽選を行い、その抽選結果に基づいて、特別図柄の変動パターン(先読み変動パターン、及び変動開始時の変動パターン)や特別停止図柄の決定等、特別図柄変動表示ゲームに必要な処理が実行される。
なお、ステップS911の特別図柄管理処理の詳細については改めて説明する。
次いで、CPU201はステップS912で特別電動役物管理処理を実行する。この特別電動役物管理処理では、当り遊技を実行制御するために必要な設定処理を行う。具体的には、大当り抽選結果が大当りであった場合、その当り種別に対応した当り遊技(大当り遊技)を実行制御する。
具体的には、大入賞口ソレノイド52cに対するソレノイド制御用データの設定、ラウンド数のカウント(大当りの場合)、大入賞口50への最大入賞数及び開放時間の監視などを行う。また当り遊技が終了した場合は、当選時の遊技状態と当り種別とに基づく遊技状態の移行設定を行う。
またここでは、当り遊技の進行状況に応じて、複数の演出制御コマンドを送信する。大当り開始時、ラウンド遊技開始時、ラウンド遊技終了時、最大ラウンド数消化時などにおいて、それぞれ、大当り開始コマンド、ラウンド開始コマンド、ラウンド終了コマンド、大入賞口入賞コマンド、大当り終了コマンドを送信時期の到来に応じて送信する。上記大当り開始コマンドには、今回の当り種別情報が含まれ、演出制御部24側において、当り遊技中に展開される一連の当り演出シナリオを決定する際に利用される。また、大当り終了コマンドには、今回の当り種別とその当り当選時の遊技状態とに関する情報、つまり、当り遊技終了後の遊技状態を特定可能な情報が含まれ、演出制御部24側において、当り遊技後の演出モードを決定する際に利用される。従って、この「大当り終了コマンド」は、当り遊技終了後の遊技状態を特定し得ることから、遊技状態を指定する遊技状態指定コマンドとしての役割を担う。
上記ステップS912までの遊技進行のための処理を終えると、CPU201はステップS913で、外部端子管理処理を行う。この外部端子管理処理では、枠用外部集中端子基板21を通して、遊技機1の動作状態情報をホールコンピュータHCや島ランプなどの外部装置に対して出力する。動作状態情報には、例えば、当り遊技発生情報、図柄変動表示ゲーム実行開始情報、入賞数・賞球数情報、エラー情報などの遊技情報がある。
次いで、CPU201はステップS914で、LED管理処理を実行する。このLED管理処理では、普通図柄表示装置39a、特別図柄表示装置38a、38b、設定・性能表示器97などのLED表示器に対する制御信号(ダイナミック点灯データ)の出力制御を行う。普通図柄管理処理(ステップS909)、特別図柄管理処理(ステップS911)などで作成された表示用データに基づく制御信号は、このLED管理処理で対応する表示装置又は表示器に出力され、表示制御が行われる。これにより、特別図柄表示装置38a、38bにおける特別図柄や普通図柄表示装置39aにおける普通図柄の一連の変動表示動作(変動表示および停止表示)等が実現される。
ステップS914に続くステップS915でCPU201は、全レジスタの値を退避させた上で、ステップS916の性能表示モニタ表示処理を行う。すなわち、設定・性能表示器97に前述した通常時比率情報としての値を表示させるための処理である。
先に触れたように本例の場合、通常時比率情報の値は全状態アウト球数が所定規定値に達するごとに演算し直されるものであり、設定・性能表示器97は、現在の通常時比率情報と前回の通常時比率情報(直近の演算し直しタイミングにおいて演算終了とされた通常時比率情報)とを表示可能とされている。このため、この場合のステップS916の表示処理では、設定・性能表示器97にこれら二種の通常時比率情報としての値を表示させる処理を行う。
なお、現在の通常時比率情報の値は、前述したメインループ処理(図11)におけるステップS604の処理で算出される値であり、前回の通常時比率情報の値は、RAM203の所定領域に保存され、CPU201は該保存値を読み出して設定・性能表示器97に表示させる。
次いで、CPU201はステップS917で全レジスタの値を復帰させ、ステップS918でWDTのカウント値をクリアし、主制御側タイマ割込み処理を終える。
以上のタイマ割込み処理が終了すると、CPU201は次のタイマ割込みが発生するまでの間、メインループ処理(S123)を実行する。
[4-3.特別図柄変動表示ゲームに係る処理]
(特別図柄管理処理)
次に、特別図柄変動表示ゲームに係る主制御部20の処理について説明する。
図21は、先に述べた特別図柄管理処理(ステップS911)を示したフローチャートである。前述のように、特別図柄管理処理は、図18に示した主制御側タイマ割込み処理の一部処理として実行されるものであり、主に、特別図柄変動表示ゲームにおける大当り抽選と、抽選結果に基づく特別図柄の変動パターン(先読み変動パターン、及び変動開始時の変動パターン)や特別停止図柄の決定等が行われる。
図21において、CPU201は、先ずステップS1201で特別図柄1側(上始動口34側)についての特図1始動口チェック処理を行い、続くステップS1202で特別図柄2側(下始動口35側)についての特図2始動口チェック処理を行う。
なお、これら始動口チェック処理の詳細については図22を参照して改めて説明する。
ステップS1201、S1202の始動口チェック処理を終えると、CPU201はステップS1203で条件装置作動フラグの状態を判定する。この「条件装置作動フラグ」とは、大当り遊技中であるか否かを指定するためのフラグであり、当該フラグがON状態(例えば5AH)である場合には大当り遊技中である旨を示し、当該フラグがOFF状態(例えば00H)である場合には大当り遊技中ではない旨を示す。
条件装置作動フラグがOFF状態(≠5AH)の場合、すなわち大当り遊技中でない場合、CPU201はステップS1204の特別図柄動作ステータス分岐処理に進み、特別図柄動作ステータス(00H〜03H)に応じて特別図柄の変動表示動作に関する処理を行う(ステップS1205、S1206、S1207)。
一方、ステップS1203で大当り遊技中と判定した場合(=5AH)、CPU201はステップS1205〜S1207の特別図柄の変動表示動作に関する処理を行わずに、そのままステップS1208の特別図柄表示データ更新処理に進む。すなわち、大当り遊技中である場合には、特別図柄の変動表示動作は行われない(特別図柄表示装置の特別図柄の表示状態は、大当り後に確定表示されたままの状態が保持される)。なお「特別図柄動作ステータス」とは、特別図柄の挙動を示すステータス値であり、該ステータス値は処理状態に応じて変更され、RAM203の特別図柄動作ステータス格納領域に格納される。
ステップS1204の特別図柄動作ステータス分岐処理では、特別図柄動作ステータスが「待機中(00H、01H)」「変動中(02H)」「確認中(03H)」の何れのステータス値であるかに応じて、それぞれ対応する処理を実行する。
具体的に、CPU201は、特別図柄動作ステータスが「待機中(00H、01H)」である場合には特別図柄変動開始処理(ステップS1205)を、「変動中(02H)」である場合には特別図柄変動中処理(ステップS1206)を、「確認中(03H)」である場合には特別図柄確認時間中処理(ステップS1207)をそれぞれ実行する。ここで、上記「待機中」とは、特別図柄の挙動が次回変動のための待機状態である旨を意味し、上記「変動中」とは特別図柄の挙動が変動(変動表示)中である旨を意味し、上記「確認中」とは特別図柄の変動が終了して停止(確定)表示中(特別図柄確認時間中)である旨を意味する。
なお、ステップS1206の特別図柄変動中処理では、特別図柄が変動中であるか否か、つまり特別図柄の変動時間が経過したか否かを監視し、変動時間が経過したならば、演出制御コマンドとして、「変動停止コマンド」を演出制御部24に送信する処理や、特別図柄役物動作タイマに確定表示時間(例えば500ms)を格納し、特別図柄動作ステータスを「確認中(03H)」に切り替える(特別図柄動作ステータスに03Hを格納する)処理などを行う。上記「変動停止コマンド」とは、特別図柄の変動が終了したことを示すコマンドであり、この変動停止コマンドにより演出制御部24は、特別図柄の変動時間経過して特別図柄変動表示ゲームが終了したこと(終端)を把握し、現在変動表示中の装飾図柄を停止表示させる。これにより、特別図柄変動表示ゲームの終了と共に、装飾図柄変動表示ゲームも終了することになる。また、上記「確定表示時間」とは、特別図柄の変動表示が終了して特別図柄の停止表示した際、その停止表示を保持する時間(停止表示時間)である。
また、ステップS1207の特別図柄確認時間中処理では、上述の確定表示時間が経過したか否かを監視し、確定表示時間が経過したならば、今回の特別図柄変動表示ゲームが終了したとして、特別図柄動作ステータスを「待機中(01H)」に切り替え(特別図柄動作ステータスに01Hを格納)、今回の特別図柄変動表示ゲームが大当りであれば、大当り遊技を開始するために要する処理(大当り図柄停止時の各種設定処理)を行う。大当り図柄停止時の各種設定処理では、大当り遊技移行前処理として、大当り判定フラグをクリアして条件装置作動フラグをON状態にし、遊技状態を通常状態と同様の遊技状態に設定する等の各種設定処理を行う。
また、ステップS1207の特別図柄確認時間中処理では、遊技状態が更新された場合に、遊技状態の移行情報を含む「遊技状態指定コマンド」を演出制御部24に送信する処理を行う。演出制御部24は、遊技状態指定コマンドにより遊技状態が移行した旨を把握することができる。
上記のステップS1205、S1206、S1207の処理により、特別図柄の変動開始及び変動停止を1セットする変動表示動作が実現されることになる。
なお、ステップS1205の特別図柄変動開始処理の詳細については図23を参照して改めて説明する。
ステップS1205〜S1207の何れかの処理を終えると、CPU201はステップS1208の特別図柄表示データ更新処理を実行する。この特別図柄表示データ更新処理では、特別図柄が変動中であるか否かを判定し、変動中であれば、特別図柄変動中の7セグ表示用データを作成し、特別図柄が変動中でなければ、特別図柄停止表示中の7セグ表示用データを作成する。ここで作成した特別図柄の表示データは、図18のLED管理処理(ステップS914)によって特別図柄表示装置38a、38bに出力される。
CPU201は、ステップS1208の更新処理を実行したことに応じてステップS911の特別図柄管理処理を終え、図18に示したステップS912の特別電動役物管理処理に進む。
(特図1始動口チェック処理)
図22のフローチャートを参照し、特図1始動口チェック処理(ステップS1201)について説明する。
この特図1始動口チェック処理は、所定の始動条件の成立に基づいて実行される入賞時処理としての役割を果たす。本例における特図1始動口チェック処理では、特図1側の特別図柄変動表示ゲーム1を実行させるための開始前処理(特図1側の入賞時処理)として、上始動口34の入賞発生に起因した特図1側の作動保留球数の加算処理、各種乱数の記憶処理(保留記憶処理)、保留加算コマンドの送信処理等が実行される。
なお、特図2始動口チェック処理(ステップS1202)も、特図1始動口チェック処理と同じく、所定の始動条件の成立に基づいて実行される入賞時処理としての役割を果たし、特図2側の特別図柄変動表示ゲーム2を実行させるための開始前処理(特図2側の入賞時処理)として、下始動口35の入賞発生に起因した特図2側の作動保留球数の加算処理、各種乱数の記憶処理、及び保留加算コマンドの送信処理等が実行される。従って、特図1始動口チェック処理と特図2始動口チェック処理とは実質的に同一の処理内容となっている。以下では、特図1始動口チェック処理を中心に説明し、特図2始動口チェック処理についての詳細は、重複記載を避けるために省略する。
図22において、CPU201は、先ずステップS1301で、上始動口34への入賞(入賞球)を検出したか否かを判定する。
上始動口34への入賞を検出した場合、CPU201はステップS1302に進んで特別図柄1の作動保留球(以下、「特図1作動保留球」と称する)の数が4以上であるか否か判定する。すなわち、特図1作動保留球の数が最大保留記憶数(ここでは、上限4個)以上であるか否かを判定する。ただし、上始動口34の入賞検出がなかった場合(ステップS1301:N)は、何もせずにステップS1201の特図1始動口チェック処理を終える。
ステップS1302で特図1作動保留球数が4以上であった場合、つまり上始動口34の入賞を検出したが特図1作動保留球数が4以上である場合、CPU201は後述のステップS1311に進み、一方、特図1作動保留球数が4以上でない場合(4未満の場合)は、特図1作動保留球数に1を加算して(ステップS1303)、ステップS1304の処理に進む。
ステップS1304でCPU201は、今回発生した特図1作動保留球に係る特別図柄変動表示ゲーム1に利用される各種乱数を取得する。具体的には、各種の乱数カウンタから、大当り判定用乱数、特別図柄判定用乱数、変動パターン用乱数の現在値を取得し、その取得した乱数値をRAM203の保留記憶エリアに格納する。この保留記憶エリアは、図柄変動表示ゲームに係る所定の遊技情報を作動保留球(保留データ)として記憶する領域であり、この保留記憶エリアには、保留データとしての上記の各種乱数値が、特別図柄1の変動表示動作に供されるまで(特別図柄変動表示ゲーム1実行時まで)、始動条件の成立順(入賞順)に保留記憶されていく。上記保留記憶エリアには、特別図柄1側と特別図柄2側とに対応した保留記憶エリア、すなわち、特図1保留記憶エリアと、特図2保留記憶エリアとが設けられている。これら保留記憶エリアには、保留1記憶エリア〜保留n記憶エリア(nは最大保留記憶数:本実施形態ではn=4)が設けられており、それぞれ最大保留記憶数分の保留データを格納可能となっている。
ステップS1304に続くステップS1305でCPU201は、保留加算コマンドを作成するための入賞コマンドデータ(保留加算コマンドの下位バイト側(EVENT)に相当するデータ)として、先読み判定を禁止する先読み禁止データ(EVENT:「01H」)を取得する。
次いで、CPU201はステップS1306で、「特図1先読み禁止条件」が成立しているか否かを判定する。特図1先読み禁止条件とは、特図1作動保留球を対象とした先読み判定を禁止する条件である。
特図1先読み禁止条件が成立している場合、CPU201は先読み判定に関する先読み判定処理(ステップS1309)を実行せずに、ステップS1311に進む。この場合、先読み禁止データ(EVENT:「01H」)を持つ保留加算コマンドが先読み禁止を指定するものとなり、今回の特図1作動保留球を対象とした先読み判定が禁止され、その結果、先読み予告演出も実行されないことになる。換言すれば、上記先読み禁止データは、先読み判定処理(ステップS1309)を実行していない旨を指定するものと言える。
本例では、遊技状態によらず特図1及び特図2の先読み判定を行うのではなく、現在の遊技状態に基づいて、先読み禁止か否かを判定するようになっている。その理由は次の通りである。
右打ち有利となる‘電サポ有り’を伴う遊技状態中である場合(時短状態、確変状態)である場合には、下始動口35への入賞が頻繁に発生するが、左打ち有利となる‘電サポ無し’を伴う遊技状態中である場合(通常状態、潜確状態)には、下始動口35への入賞がほぼ発生せずに上始動口34への入賞が頻繁に発生することを考慮し、遊技状態によらず特図1及び特図2の先読み判定を闇雲に行うのではなく、‘電サポ有り’の時短状態又は確変状態である場合には特図1側の先読み判定を禁止して特図2側の先読み判定を許容し、‘電サポ無し’の通常状態又は潜確状態である場合には特図2側の先読み判定を禁止して特図1側の先読み判定を許容するようになっている。
ステップS1306において、特図1先読み禁止条件が成立していない場合、CPU201はステップS1307で設定値エラーフラグ(ステップS905の設定異常チェック処理でセットされるフラグ)を参照し、続くステップS1308で設定エラーか否か(設定値エラーフラグがON状態:5AHであるか否か)を判定する。
設定エラーである場合、CPU201は異常(設定値データ異常)が発生したとして、先読み判定処理(ステップS1309)は実行せずに、ステップS1311に進む。詳細は後述するが、入賞時の処理において設定値Vdの異常が認められた場合、RAMエラーとせずに、先読み禁止データ(01H)を含む保留加算コマンドを送信して、ステップS1201の始動口チェック処理を抜けることになる。
一方、設定エラーでなかった場合、CPU201はステップS1309の先読み判定処理を実行する。この先読み判定処理では、変動開始時に実行される大当り抽選結果を先読み判定する。従って、当落抽選結果を先読み判定する‘先読み当落判定’と、図柄抽選結果を先読み判定する‘先読み図柄判定’と、変動開始時の変動パターンを先読み判定する‘先読み変動パターン判定’とに関する一連の処理が含まれる。
具体的に、ステップS1309においてCPU201は、先ずRAM203(判定用乱数記憶エリア)に格納された大当り判定用乱数値を取得し、該大当り判定用乱数値と後述する「大当り判定用乱数判定テーブル」とに基づいて、今回の作動保留球を対象とした当落抽選(少なくとも大当り、はずれの別を決定する先読み当落判定)を行い、その結果(「先読み当落結果」と称する)を取得する。
なお、本実施形態では、当落判定(当落抽選)には設定値Vdが用いられるが、このような設定値Vdに基づく本実施形態としての当落判定の具体的な手法については後に改めて説明する。当落判定は、特別図柄の変動開始時の処理(図23)においても同様に行われるため、当落判定の具体的な手法の説明は、該変動開始時の処理の説明時に改めて行う。
ここで、本実施形態では、先読み当落結果はCPU201内蔵の所定の汎用レジスタに取り込んだまま、RAM203に格納しない。これは、先読み当落判定結果が、この後の先読み図柄判定の処理で直ちに利用され、このデータが必要とされることがなく、RAM203に記憶する必要が無いためである。
また、ステップS1309でCPU201は、上記した先読み図柄判定の処理として、先読み当落結果(少なくとも当り、はずれの別)と特別図柄種別(特図1、2)とに応じた図柄テーブル(不図示)を用いた図柄抽選を行う。具体的にCPU201は、先のステップS1304で取得した特別図柄判定用乱数値と図柄テーブルとに基づき、今回の作動保留球を対象とした図柄抽選(当り種別の抽選)を行い、その結果(「先読み図柄結果」と称する)を取得する。本実施形態の「図柄テーブル」には、図柄種別を決定するための判定値(当選領域)が定めらており、特別図柄判定用乱数値が何れの判定値に属するかにより、停止図柄として表示すべき特別図柄の種類が決定される。
なお、本例のようにはずれ種別が複数種類ある場合には、はずれ種別決定用のはずれ図柄テーブルを設ける。はずれが1種類のみであれば、はずれ図柄テーブルは不要である。
ここで、本例では、はずれの種類が「はずれ1」「はずれ2」「はずれ3」の複数あることに対応して、図柄判定においてははずれ種別を抽選するためのはずれ図柄テーブルが用いられるとする。
また、本例において、当りの種別は、前述したように少なくとも「通常4R」「通常6R」「確変6R」「確変10R」の4種があり、上記のはずれ図柄テーブルとは別途に設けられた当り図柄テーブルに基づき、これら4種の当り種別のうち特別図柄判定用乱数値に応じた当り種別に対応する特別図柄の種類が決定される。
ここで、上記した図柄テーブルの一部又は全部について、設定値Veに応じて異なる図柄選択率を定めた図柄テーブルを設けてもよい。例えば、大当り図柄テーブルについて、設定1〜6ごとに、大当り種別の選択率が異なるテーブル(例えば、設定6段階に対応した6種類の大当り図柄テーブル)を設けることができる。例えば、高設定となるに従い出玉性能が遊技者にとって有利となるようにテーブル内容を定めることが考えられる。勿論、各設定で共通の大当り図柄テーブルであってもよい。また、ステップS1309で用いる図柄テーブルは、変動開始時の処理(図23)にも利用される。
CPU201は、先読み図柄結果を、上述した先読み当落判定のときと同様にCPU201内蔵の所定の汎用レジスタに取り込んだまま、RAM203に格納しない。これは、先読み図柄結果が、この後の先読み変動パターン判定で直ちに利用され、このデータが必要とされることがなく、RAM203に記憶する必要が無いためである。
上記の先読み図柄判定を終えると、CPU201は先読み変動パターン判定を実行する。この先読み変動パターン判定では、上記の先読み図柄結果(本例では「通常4R」「通常6R」「確変6R」「確変10R」「はずれ1」「はずれ2」「はずれ3」の何れかを表す)と、該先読み図柄結果に応じた変動パターンを選択するための変動パターンテーブルと、ステップS1304で取得した変動パターン用乱数とを利用した変動パターンの抽選を行い、先読み変動パターン決定する。すなわち、今回の作動保留球が変動表示動作に供されるときに実行される変動パターン(変動開始時の変動パターン)を先読み判定する。
本例では、上記の変動パターンテーブルは、変動開始時の処理(図23)で行われる変動パターンの抽選においても利用される。
上記の変動パターンテーブルの具体例、及び該テーブルを用いた変動パターンの抽選処理については、変動開始時の処理の説明時に改めて説明する。
なお、先読み変動パターン判定結果(入賞コマンドデータ(EVENT))は、以下で説明するステップS1310の保留加算コマンド作成処理で直ちに利用され、その後、このデータが必要とされることはない。従って、CPU201は、先読み変動パターン判定の結果をRAM203に格納することなくレジスタに取り込んだまま、ステップS1309の処理を終えるようになっている。
ステップS1309の先読み判定処理を実行したことに応じ、CPU201はステップS1310に進み、先読み判定結果に応じた保留加算コマンドの下位バイト側のデータを作成する。具体的には、先読み変動パターンの種類を表すデータを、保留加算コマンドの下位バイト側の入賞コマンドデータ(EVENT)として作成する。
なお、EVENTのデータについては、ステップS1305で設定された「01H」が、本処理にて先読み変動パターンに対応する値(先読み変動パターン判定処理で得られた値)に更新されることになる。
ステップS1310の作成処理を終えると、CPU201はステップS1311で、作動保留球数に応じた保留加算コマンドの上位バイト側のデータを作成する。すなわち、現在の作動保留球数と、上述した先読み図柄結果(特別図柄種別)とを表すデータを保留加算コマンドの上位バイト側の入賞コマンドデータ(MODE)として作成する。
該MODEのデータについては、特図1の保留1個〜特図1の保留4個、特図2の保留1個〜特図2の保留4個を識別可能に設定される。
ステップS1311の作成処理を実行したことに応じ、CPU201はステップS1312で、保留加算コマンドの送信処理を行う。すなわち、ステップS1310、S1311で作成した入賞コマンドデータをそれぞれEVENT、MODEとして含む保留加算コマンドを作成し、演出制御部24に送信する。
ここで、先読み禁止条件である場合(S1306でYの場合)や、先のステップS1308の判定処理で設定値Vdの異常が認められた場合、CPU201は上述した先読み禁止データ(下位バイト=01H)を更新せずにそのまま維持し、先読み禁止データを持つ保留加算コマンドを送信する。
また、オーバーフロー時(最大保留記憶数に達しているときに、新たな入賞が発生した場合)は、オーバーフロー指定の保留加算コマンドが送信されるようになっている(ステップS1302のYの処理ルート参照)。
なお、保留加算コマンドは、主制御部20から演出制御部24に送られた後は、演出制御部24側において今回の作動保留球に係る「先読み予告演出」を現出する際に利用されるだけであり、図23に示す特別図柄変動開始処理において特に利用されるものではない。従って、CPU201は保留加算コマンドもRAM203に格納することなく、ステップS1301の特図1始動口チェック処理を抜けて、続いてステップS1302の特図2始動口チェック処理を行うことになる。
ここで、上記のように本例では、入賞時(作動保留球発生時)において設定値Vdのデータに異常が生じた場合であっても、保留加算コマンドを送信するが、この保留加算コマンドは、先読み禁止データを持つコマンドであるので、設定値Veに基づく先読み予告演出、又は設定値Veに基づかない先読み予告演出を現出可能に構成している場合であっても、先読み予告に係る演出制御自体が禁止されるため、不具合に起因する先読み予告が現出されることがなく、遊技者に不利益になることもないので、特に問題は生じない。仮に、先読み予告演出を禁止しない場合、設定値Veが異常であるにもかかわらず、保留表示系の先読み予告演出にて、高期待度の保留表示が現出された場合、その後のRAMエラー処理(設定値異常に起因したエラー処理)により遊技進行が停止してしまうと、遊技者が抱いていた当選期待感が一気に消滅してしまい、遊技機に対する大きな不信感を招来してしまう。しかし本例の場合は、上述したように、先読み予告自体を禁止しているので、このような問題を生じさせず、遊技者に不信感を抱かせることの防止が図られる。
(特別図柄変動開始処理)
続いて、図23のフローチャートを参照して、変動開始時の処理である特別図柄変動開始処理(ステップS1205)について説明する。
図23において、CPU201は先ずステップS1401で、特図2作動保留球数がゼロか否かを判定し、特図2作動保留球数がゼロでない場合には、ステップS1403の処理に進み、今回の変動表示に供する特図2作動保留球を対象とした変動開始時の処理(ステップS1403〜S1412)を行う。
一方、特図2作動保留球数がゼロの場合、CPU201はステップS1402で、特図1作動保留球数がゼロか否かを判定し、特図1作動保留球数がゼロでない場合には、ステップS1403の処理に進み、今回の変動表示に供する特図1作動保留球を対象とした特別図柄の変動開始に係る処理(ステップS1403〜S1412)を行う。
上記のステップS1401とS1402の処理により、特図1作動保留球と特図2作動保留球のどちらを優先的に変動表示動作に供するか(どちらの作動保留球を優先的に消化していくか)の「優先変動順位」が定まる。本実施形態では、特図1作動保留球と特図2作動保留球の双方に作動保留球が存在する場合、特図2作動保留球が優先的に消化される。つまり、特別図柄変動表示ゲーム1よりも特別図柄変動表示ゲーム2の方が優先的に実行される。なお、上述の優先変動タイプに限らず、入賞した順番通りに作動保留球を消化していく構成としてもよい。
なお、特図2作動保留球数と特図1作動保留球数の双方の作動保留球数がゼロである場合、「作動保留球なし」の状態となる。この「作動保留球なし」の状態は、特別図柄が待機中であり、且つ保留記憶無しの状態となった場合であり、この状態に突入したことを演出制御部24側に知らせて、液晶表示装置36に対し、客待ち待機用のデモ画面表示(客待ちデモ画面)に切り替え制御させる。そこで、「作動保留球なし」になった場合は、ステップS1413に進み、特別図柄動作ステータスが上記「作動保留球なし」の状態を示す「待機中(00H)」であるか否かを判定する。
ステップS1413において、特別図柄動作ステータスが「待機中(01H)」であった場合には、特別図柄動作ステータスを「待機中(00H)」に切り替える(特別図柄動作ステータスに00Hを格納する)。そして、演出制御コマンドとして、客待ちデモ画面を表示させるための「デモ表示コマンド」を演出制御部24に送信し(ステップS1415)、ステップS1205の特別図柄変動開始処理を終える。
以後、ステップS1413の判定処理が実行されるときに「待機中(00H)」であれば、再度、デモ表示コマンドを送信することなく特別図柄変動開始処理を終える。このようにする理由は、作動保留球数がゼロの場合に条件なしにデモ表示コマンドを送信すると、特図作動保留球数がゼロである間は4msの周期でデモ表示コマンドの送信を繰り返すことになり、不必要な送信が発生し、無闇に制御負担が増してしまうことを考慮し、その防止を図るためである。
なお、演出制御部24は、上記デモ表示コマンドを受けてから所定時間経過しても、何ら図柄変動表示ゲームに係る演出制御コマンド(例えば、保留加算コマンド)を受けない場合には、変動表示動作が一定時間行われない状態(客待ち待機状態)が発生したとみなして、客待ちデモ画面表示を行う。
ステップS1401で特図2作動保留球数がゼロでない場合、及びステップS1402で特図1作動保留球数がゼロでない場合(特図2作動保留球数がゼロである一方、特図1作動保留球数がゼロでない場合)のそれぞれにおいて、CPU201は今回の変動表示に供する作動保留球を対象とした特別図柄の変動開始時に係る処理(ステップS1403〜S1412)を行っていく。
ここで、以下に説明するステップS1403〜S1412の処理については、上記のステップS1401の判定で‘NO’であった場合は特図2作動保留球を対象とした処理、上記のステップS1402の判定で‘NO’であった場合は特図1作動保留球を対象とした処理となるが、処理の仕方は同じであるため、重複記載を避けるために特に必要が無い限り、特別図柄1側の作動保留球を対象とした処理であるか、特別図柄2側の作動保留球を対象とする処理であるかの区別はせずに説明していく。
ステップS1403でCPU201は、作動保留球数を1減算し(今回の変動表示動作に供する特別図柄側に係る作動保留球数−1)、続くステップS1404で減算後の作動保留球数情報を含む「保留減算コマンド」を演出制御部24に送信する。この保留減算コマンドにより、演出制御部24側は、今回の作動保留球数消化後の残余作動保留球数を把握し、現在表示中の保留表示をシフト表示させる。
次いで、CPU201はステップS1405で、特別図柄作動確認データを設定する。この特別図柄作動確認データは、今回の変動開始側の特別図柄種別を指定する情報であり、例えば、特別図柄1が変動開始側であるならば「00H(特図1変動開始指定)」を、特別図柄2が変動開始側であるならば「01H(特図2変動開始指定)」を、RAM203の所定領域(特別図柄作動確認データ格納領域)に格納する。
次いで、CPU201はステップS1406で、RAM203の保留記憶エリアに格納されている保留データをシフトし、続くステップS1407で保留4記憶エリアをクリアする。このステップS1406〜S1407の処理では、保留記憶数n=1に対応する保留記憶エリア(保留1記憶エリア)に格納されている保留データ(大当り判定用乱数、特別図柄判定用乱数、及び変動パターン用乱数)を読み出し、RAM203の判定用乱数記憶エリアに格納すると共に、保留n記憶エリア(n=2、3、4)に対応する保留記憶エリア(保留2記憶エリア、保留3記憶エリア、保留4記憶エリア)に格納されている保留データを、それぞれ‘n−1’に対応する保留記憶エリアに格納し(ステップS1406)、保留4記憶エリアをクリアして空き領域を設ける(ステップS1407)。これにより、特別図柄変動表示ゲームの開始順番は、作動保留球数n(n=1、2、3、4)の順番と一致し、始動口入賞時に取得された作動保留球が何れの保留記憶エリアに対応するものであるかが特定されると共に、新たな作動保留球の保留記憶が可能になる。
次いで、CPU201はステップS1408で、変動回数残指定コマンド、遊技状態コマンドを送信する処理を行う。このステップS1408では、電サポ有り状態の残余回数をカウントする「電サポ回数カウンタ」がゼロであるか否かを判定し、残りの時短回数がある場合は、その残り時短回数情報を含む「変動回数残指定コマンド」を演出制御部24に送信する。この「変動回数残指定コマンド」により、演出制御部24側は、残りの時短回数を把握し残り時短回数情報を報知する処理を実行可能とされる。
またステップS1408では、現在の遊技状態を指定する遊技状態コマンドを演出制御部24に送信する処理も行う。
次いで、CPU201はステップS1409で変動管理処理を実行する。
この変動管理処理では、変動開始時に対応した大当り抽選、停止図柄についての図柄抽選、及び変動パターンの抽選が行われる。また、該変動管理処理では、設定値Vdの異常判定が行われ、設定値Vdのデータに異常が認められる場合には演出制御部24に設定エラーを通知するための演出制御コマンド(RAM異常コマンド)を送信する処理が行われる。
なお、ステップS1409の変動管理処理の詳細については図24〜図33を参照して改めて説明する。
ステップS1409の変動管理処理を終えると、CPU201はステップS1410で、変動表示中である旨を指定する特別図柄N変動中フラグ(N=1、2)に5AH(ON状態)を格納する。「特別図柄N変動中フラグ」とは、特別図柄1、2のうち対象とする何れかの特別図柄が変動中であるかを示すフラグで、当該フラグがON状態(=5AH)である場合には対象の特別図柄が変動中である旨を示し、当該フラグがOFF状態(=00H)である場合には対象の特別図柄が停止中である旨を示す。
なお、特別図柄1変動中フラグ(N=1)は特別図柄1側に対応し、特別図柄2変動中フラグ(N=2)は特別図柄2側に対応するものである。
次いで、CPU201はステップS1411で、変動開始時のコマンド送信処理を実行する。このコマンド送信処理では、ステップS1409の変動管理処理で選択された変動パターンの内容を演出制御部24側に知らせるべく、演出制御コマンドとして、その変動パターン内容を特定可能な変動パターン情報を含む「変動パターン指定コマンド」を作成し、演出制御部24に送信する。
また、該コマンド送信処理では、ステップS1409における図柄抽選結果に基づき、装飾図柄指定コマンドを作成し、演出制御部24に送信する。装飾図柄指定コマンドは、変動側の特別図柄種別を指定する上位バイト(MODE)と、当選種別を指定する下位バイト(EVENT)の2バイトで構成される。従って、この装飾図柄指定コマンドには、変動側の特別図柄種別と当選種別(図柄抽選結果)とに関する情報が含まれる。この装飾図柄指定コマンドは、当選種別に関する情報が含まれることから、演出制御部24側において、主として、リーチ状態を形成する際の装飾図柄の組合せ(リーチ図柄を構成要素とする図柄種)や、最終的に停止表示させる装飾図柄(装飾停止図柄)の組合せや、図柄変動表示ゲームにおいて当選種別に対応する予告演出などを決定する際に利用される。
さらに、該コマンド送信処理では、演出制御部24側に現在の設定値Veを通知するための設定値コマンドの送信も行われる。この設定値コマンドにより、演出制御部24側は現在の設定値Veに応じて異なる種別の演出を現出させたり、所定演出の出現率を変化させたりすることが可能とされている。
そして、続くステップS1412でCPU201は、変動開始時設定処理として、特別図柄動作ステータス「変動中(02H)」に切り替え(特別図柄動作ステータスに02Hを格納)、判定用乱数記憶エリアと変動パターン用乱数記憶エリアをクリアする処理を行う。
ステップS1412の変動開始時設定処理を実行したことに応じ、CPU201はステップS1205の特別図柄変動開始処理を終える。CPU201は、特別図柄変動開始処理を終えると、図21の特別図柄表示データ更新処理(ステップS1208)を行い、これにより特別図柄の変動表示が開始されることになる。
(変動管理処理)
図24は、ステップS1409の変動管理処理を示したフローチャートである。
図24において、CPU201は、先ずステップS1501で設定エラーか否かを判定する。すなわち、設定値エラーフラグがON状態(5AH)であるか否かを判定する。
ステップS1501において、設定エラーフラグがOFFであり設定エラーではないと判定した場合、CPU201はステップS1502の大当り乱数判定処理を実行した上で、ステップS1503の図柄抽選処理に進む。
ステップS1502の大当り乱数判定処理は、大当り判定用乱数(内部抽選用乱数)、大当り判定用乱数判定テーブル、及び設定値Vdに基づいて大当り/はずれの当落種別を抽選により選択(判定)するものである。
なお、実施形態としての大当り乱数判定処理の詳細については図25及び図26を参照して改めて説明する。
また、CPU201は、ステップS1501で設定エラーであると判定した場合は、ステップS1502の大当り乱数判定処理をパスして、ステップS1503の図柄抽選処理に進む。
ここで、本実施形態では、設定エラーとなった場合(ステップS1501でYの判定結果が得られた場合)、該設定エラーが解消されない限り、大当り乱数判定処理が行われない。
先に説明した通り、設定エラーは、設定変更操作を行うことで解除できるものである。すなわち、設定エラー状態に陥った場合、設定変更操作を行って設定エラー状態を解除することで、大当り乱数判定処理が行われる状態に復帰される。
なお、前述のように、設定変更操作が行われるようにするための設定値異常コマンドは設定異常チェック処理(図20)において送信される。
ステップS1503の図柄抽選処理において、CPU201は、少なくとも当落抽選結果(大当り判定フラグ)、特別図柄判定用乱数、及び図柄テーブルに基づいて、当り/はずれの種別(停止図柄の種類)を決定する処理を行う。そして、その結果(特別図柄判定データ)をRAM203の所定領域(特別図柄判定データ記憶領域)に格納する。これにより、今回の特別図柄変動表示ゲームに係る当選種別(当り/はずれの種類)が決定される。
なお、先読み判定時の図柄抽選処理と同様、図柄抽選については設定値Vdに応じた抽選を行うこともできる。
ステップS1503に続くステップS1504でCPU201は、変動パターン抽選処理として、少なくとも図柄抽選結果(上記の特別図柄判定データ)、変動パターン用乱数、及び変動パターンテーブルに基づき、今回の変動表示動作に供される作動保留球を対象とした変動開始時の変動パターンを抽選により決定する処理を行う。
具体的に、本実施形態における変動パターン抽選処理では、設定値Vd、及び作動保留球数(今回消化分を減算した作動保留球数)も利用した変動パターンの抽選を行う。
なお、本実施形態における変動パターン抽選処理の詳細については図28〜図33を参照して改めて説明する。
ステップS1504の変動パターン抽選処理を実行したことに応じ、CPU201はステップS1409の変動管理処理を終える。つまりこの後、処理は図23に示したステップS1410に進められる。
ここで、上記説明のように本例では、変動開始時における当落抽選や図柄抽選の抽選結果をRAM203に格納するものとしているが、その理由は、これらの抽選結果は、ステップS1409の変動管理処理が属する特別図柄管理処理(ステップS911:図18及び図21参照)のみで利用されるものではなく、後々の特別電動役物管理処理(ステップS912:図18参照)等においても利用されるデータだからである。
この点、抽選結果をRAM203に格納しない先読み判定時の処理とは異なる。
なお、図示による説明は省略するが、ステップS1409の変動管理処理では、当落抽選結果が当りである場合に、遊技状態を移行させるための設定処理として、当り遊技後の遊技状態を指定するための必要な設定処理を行う(遊技状態移行準備処理)。
(大当り乱数判定処理)
図25は、ステップS1502の大当り乱数判定処理を示したフローチャートであり、図26は、実施形態の大当り乱数判定手法の説明図である。
図25による大当り乱数判定処理の詳細説明に先立ち、図26を参照して実施形態で採用する大当り乱数判定手法について説明しておく。
先ず前提として、本実施形態では、大当り判定用乱数は0〜65535の65536通りの値をとり得る。本実施形態における大当り乱数判定では、このような大当り判定用乱数がとり得る値の範囲内において判定基準値THを定め、大当り判定用乱数と判定基準値THの大小関係を比較した結果に基づき、大当り/はずれの判定を行う。一例として、本例では、大当り判定用乱数の値が「0〜判定基準値TH」の範囲内である場合に大当りの判定結果を、それ以外の場合にはずれの判定結果を得る手法を採っている。
本実施形態では、大当り乱数判定として低確率時(通常状態時:以下「低確時」と略称する)に対応した判定と高確率時(確変状態時:以下「高確時」と略称する)に対応した判定の2種の判定を行う。このため、判定基準値THとしては、低確時の判定に用いる判定基準値TH1と、高確時の判定に用いる判定基準値TH2の2種が設定される。
図26に例示するように、高確時の判定基準値TH2は低確時の判定基準値TH1よりも値が大きくされ、これにより高確時の判定でより大当りの当選確率が高まるようにされている。
本例の場合、設定値Veに応じた大当り乱数判定とするため、判定基準値THとしては設定値Veごとに異なる値が用意されている。具体例に、低確時の判定基準値TH1については、設定値Ve「1」に対応した値(BIGLMAX1)、設定値Ve「2」に対応した値(BIGLMAX2)、及び設定値Ve「6」に対応した値(BIGLMAX6)が用意され、高確時の判定基準値TH2についても設定値Ve「1」に対応した値(BIGHMAX1)、設定値Ve「2」に対応した値(BIGHMAX2)、及び設定値Ve「6」に対応した値(BIGHMAX6)が用意されている。図26に示した低確時の判定基準値TH1(=842)、高確時の判定基準値TH2(=8429)は、それぞれ設定値Ve「1」に対応した値(BIGLMAX1、BIGHMAX1)を例示している。
本例では、低確時の判定基準値TH1はBIGLMAX1<BIGLMAX2<BIGLMAX6とし、高確時の判定基準値TH2はBIGHMAX1<BIGHMAX2<BIGHMAX6とすることで、設定値Veの値が大きくなるほど(つまり高設定であるほど)当選確率が高まるようにしている。
なお、本例では、実際の判定処理においては、乱数値に対する閾値として「判定下限値」(後述する「BIGMINI-1」に相当)も用いる。先ずは、乱数値が当該「判定下限値」よりも大きいか否かを判定し、乱数値が「判定下限値」よりも大きくなければはずれの判定結果を得る。乱数値が「判定下限値」よりも大きい場合に、上記した判定基準値TH1や判定基準値TH2を用いた大当り判定を行う。
なお、「判定下限値」を「0」とした場合には、乱数値が「0」〜「判定基準値TH」の範囲内であることが大当りの判定条件となる。一方で、「判定下限値」を「0」よりも大きな値(Xとする)とすれば、乱数値が「X」〜「判定基準値TH」の範囲内であることが大当りの判定条件となる。
上記の前提を踏まえ、図25に示す大当り乱数判定処理を説明する。
図25において、CPU201は、先ずステップS1601で、大当り判定用乱数判定テーブルから設定差情報を取得する。
図27は、大当り乱数判定処理に用いられる大当り判定用乱数判定テーブルを例示しており、図27Aは特図1用の大当り判定用乱数判定テーブルを、図27Bは特図1用の大当り判定用乱数判定テーブルを例示している。
大当り乱数判定処理としては、図27Aに示すテーブルを使用した特図1用の判定処理と、図27Bに示すテーブルを使用した特図2用の判定処理とが行われるが、これらの判定処理は図25に示す共通の処理により同様に行われるものであるため、以下では代表して図27Aに示すテーブルを使用した特図1用の判定処理のみを説明する。
ステップS1601において、設定差情報とは、図27Aに示すテーブルにおける現在の参照先アドレスに格納されている変数を意味するものであり、図25に示す大当り乱数判定処理の開始時において参照先アドレスはテーブルの先頭アドレスとされるため、CPU201は、該先頭アドレスに格納された「000H」で表される変数を設定差情報として取得する。
続くステップS1602でCPU201は、設定差情報が「000H」以外であるか否かを判定する。設定差情報が「000H」であり、ステップS1602で否定結果が得られた場合、CPU201はステップS1603に進んで判定基準値を取得する。すなわち、図27Aに示すテーブルにおける先頭アドレスの次アドレスに格納された変数(「BIGMIN-1」で表される変数)を判定基準値として取得する。この処理は、上述した「判定下限値」を取得する処理に相当する。
次いで、CPU201はステップS1604で、指定のアドレスまでずらす処理を行う。具体的には、上述した参照先アドレスを現状の参照先アドレス(図27A中の「4093」)から四つ先のアドレス(図27A中の「4097」)にずらす処理を行う。
そして、CPU201はステップS1610で、乱数値(大当り判定用乱数の値)が判定基準値よりも大きいか否かを判定する。
上記により説明したステップS1601→S1602→S1603→S1604→S1610の一連の処理は、乱数値が上述した判定下限値よりも大きいか否かを判定する処理に相当する。
ステップS1610において、乱数値が判定基準値よりも大きくなければ、CPU201はステップS1611に進んで小当り情報を取得する。
ここで、図27Aに示すテーブルでは、判定下限値(「BIGMIN-1」)に対応した当り情報を表す変数として、該判定下限値の次アドレスに「000H、000H、000H」で表される変数が格納されている。該変数は、左側から順に「低確中大当り情報」「高確中大当り情報」「小当り情報」に相当する。
ステップS1610で乱数値が判定下限値(「BIGMIN-1」)よりも大きくないと判定されたことに応じて実行されるステップS1611の処理では、CPU201は、判定下限値の次アドレスに格納された当り情報の変数「000H、000H、000H」のうち最も右側の「000H」を取得する。
なお、当り情報は、「05AH」が「当り」を表し、「000H」が「はずれ」を表す。
ステップS1611に続くステップS1612でCPU201は、確変中であるか否かを判定し、確変中でなければステップS1613で低確中大当り情報を取得してステップS1502の大当り乱数判定処理を終え、確変中であればステップS1614で高確中大当り情報を取得してステップS1502の大当り乱数判定処理を終える。
ここで、ステップS1613の低確中大当り情報取得処理が、ステップS1610で乱数値が判定下限値(「BIGMIN-1」)よりも大きくないと判定されたことに応じて実行される場合には、CPU201は該ステップS1613において、判定下限値(「BIGMIN-1」)の次アドレスに格納された当り情報の変数「000H、000H、000H」のうち最も左側の「000H」を取得する。
また、ステップS1614の高確中大当り情報取得処理について、該ステップS1614の処理がステップS1610で乱数値が判定下限値(「BIGMIN-1」)よりも大きくないと判定されたことに応じて実行される場合、CPU201は、判定下限値(「BIGMIN-1」)の次アドレスに格納された当り情報の変数「000H、000H、000H」のうち中央の「000H」を取得する。
上記した一連の処理により、乱数値が判定下限値以下である場合には、はずれの情報が取得される。
続いて、ステップS1610で乱数値が判定基準値よりも大きいと判定した場合、CPU201はステップS1601に戻り、大当り判定用乱数判定テーブルから設定差情報を取得する。
このステップS1601の処理が、ステップS1610で乱数値が判定下限値よりも大きいと判定されたことに応じて実行される場合、上述した参照先アドレスは図27Aに示す「4097」とされているため、設定差情報としては該参照先アドレスに格納されている「001H」が取得される。
そのためこの場合は、続くステップS1602において設定差情報が「000H」以外であるとの判定結果が得られ、CPU201はステップS1605に処理を進める。
ステップS1605〜S1609の処理は、設定値Veに応じた判定基準値THの取得に係る処理となる。先ずは、低確時の判定基準値TH1に係る処理が行われる。
具体的に、CPU201はステップS1605で、設定値情報の取得処理として、RAM203のワーク領域に格納された設定値Vdを取得し、続くステップS1606で取得した設定値情報を2バイト補正する。すなわち、本例では1バイトとされた設定値Vdを2バイトに補正する。
次いで、ステップS1607でCPU201は、補正情報、すなわち2バイト補正された設定値Vdに基づいて、設定値Veに応じた判定基準値を取得する。
ステップS1502の大当り乱数判定処理の開始後、初回にステップS1607が実行される時点では、参照先アドレスは図27Aに示す「4097」とされている。ステップS1607の処理では、参照先アドレスから上記の補正情報に応じた分ずれたアドレスに格納されている判定基準値(つまりこの場合はアドレス「4098」の「BIGLMAX1」、アドレス「4099」の「BIGLMAX2」アドレス「4100」の「BIGLMAX6」の何れか)を取得する。具体的にこの場合、上記の補正情報が設定値Ve「1」(設定値Vd=「00H」)に対応したものである場合には参照先アドレスの次のアドレスにおける「BIGLMAX1」を取得し、補正情報が設定値Ve「2」(設定値Vd=「01H」)に対応したものである場合には参照先アドレスの二つ先のアドレスにおける「BIGLMAX2」を取得し、補正情報が設定値Ve「3」(設定値Vd=「02H」)に対応したものである場合には参照先アドレスの三つ先のアドレスにおける「BIGLMAX6」を取得する。
ステップS1607で判定基準値を取得したことに応じ、CPU201はステップS1608→S1609の処理(こられの処理については後述する)を介し、ステップS1610で乱数値が判定基準値よりも大きいか否かを判定する。これにより、低確時の判定基準値TH1を用いた大当り判定が行われる。
ステップS1610で低確時の判定基準値TH1を用いた大当り判定が行われ、乱数値が判定基準値TH1よりも大きくない(つまり大当りである)と判定された場合は、上述したステップS1611以降の処理が実行されて、当り情報の取得処理が行われる。
図27Aに示すテーブルでは、低確時の判定基準値TH1を用いた場合に対応した当り情報を表す変数として、低確時の判定基準値TH1(「BIGLMAX1」「BIGLMAX2」「BIGLMAX6」)の格納領域(「4098」〜「4100」)の次アドレスに「05AH、05AH、000H」で表される変数が格納されている(該変数についても左側から順に「低確中大当り情報」「高確中大当り情報」「小当り情報」を表す)。
ステップS1610で乱数値が判定基準値TH1よりも大きくないと判定されたことに応じて実行されるステップS1611の処理では、CPU201は、上記のように判定基準値TH1の格納領域の次アドレスに格納された当り情報の変数「05AH、05AH、000H」のうち最も右側の「000H」を取得する。
また、この場合、確変中でなければ、CPU201はステップS1613の処理において、上記のように判定基準値TH1の格納領域の次アドレスに格納された当り情報の変数「05AH、05AH、000H」のうち最も左側の「05AH」を取得し、確変中であれば、ステップS1614の処理において、該当り情報の変数「05AH、05AH、000H」のうち中央の「05AH」を取得する。
ここで、ステップS1610で低確時の判定基準値TH1を用いた大当り判定が行われ、乱数値が判定基準値TH1よりも大きかった(つまり低確時の判定としては「はずれ」であった)場合は、高確時の判定基準値TH2(「BIGHMAX1」「BIGHMAX2」「BIGHMAX6」)を用いた大当り判定を行うことになる。この際、参照先アドレスは、図27Aに示すアドレス「4097」、すなわち、低確時の判定基準値TH1を用いた大当り判定のための情報格納領域(「4097」〜「4101」)の先頭アドレスから、アドレス「4103」、すなわち高確時の判定基準値TH2を用いた大当り判定のための情報格納領域(「4103」〜「4107」)の先頭アドレスにずらすべきとなる。
設定値Veが3段階であれば、アドレスのずらし量は「4097」→「4103」の6アドレス分となるが、仮に、設定値Veを6段階とする場合には、テーブルにおける低確時の判定基準値TH1を用いた大当り判定のための情報格納領域には、「BIGLMAX1」「BIGLMAX2」「BIGLMAX6」のみでなく、「BIGLMAX3」「BIGLMAX4」「BIGLMAX5」も格納されることになる。つまりこの場合、アドレスのずらし量は、判定基準値TH1が三つ増えた分に対応して9アドレス分とべきである。
このようにテーブルにおける低確時に対応した情報格納領域から高確時に対応した情報格納領域に参照先を遷移させる際、参照先アドレスのずらし量は、設定値Veの段数(使用する設定値Veの数)に応じて変化させるべきものとなる。このため本例では、ステップS1608で設定段階情報を取得し、続くステップS1609で設定段階情報に基づいて指定のアドレスまでずらす処理を行っている。具体的に、本例においては「3段階」を表す設定段階情報を取得し、該設定段階情報に基づき参照先アドレスを6アドレス分先のアドレスにずらす。
上記ステップS1608及びS1609の処理が実行されることにより、ステップS1610で低確時の判定基準値TH1を用いた大当り判定が行われ乱数値が判定基準値TH1よりも大きかったと判定された場合には、ステップS1601の処理において、図27Aに示すアドレス「4103」の設定差情報「001H」が取得される。
従ってこの場合は、ステップS1602の判定処理において設定差情報が「000H」以外であると判定され、再びステップS1605以降の処理が実行される。
そして、この場合におけるステップS1607の取得処理では、「BIGHMAX1」「BIGHMAX2」「BIGHMAX6」の判定基準値TH2のうちから設定値Veに応じた判定基準値TH2が取得され、ステップS1608及びS1609を介して行われるステップS1610の判定処理では、乱数値が取得した判定基準値TH2よりも大きいか否かが判定される。すなわち、高確時の判定基準値TH2を用いた大当り判定が行われる。
このようにステップS1610で高確時の判定基準値TH2を用いた大当り判定が行われ、乱数値が判定基準値TH2よりも大きくない(大当りである)と判定された場合は、ステップS1611以降の処理により、当り情報の取得処理が行われる。
図27Aに示すテーブルでは、高確時の判定基準値TH2を用いた場合に対応した当り情報を表す変数として、高確時の判定基準値TH2の格納領域(「4104」〜「4106」)の次アドレスに「000H、05AH、000H」で表される変数が格納されている(該変数についても左側から順に「低確中大当り情報」「高確中大当り情報」「小当り情報」を表す)。
ステップS1610で乱数値が判定基準値TH2よりも大きくないと判定されたことに応じて実行されるステップS1611の処理では、CPU201は、上記のように判定基準値TH2の格納領域の次アドレスに格納された当り情報の変数「000H、05AH、000H」のうち最も右側の「000H」を取得する。
また、この場合、確変中でなければ、CPU201はステップS1613の処理において、上記のように判定基準値TH2の格納領域の次アドレスに格納された当り情報の変数「000H、05AH、000H」のうち最も左側の「000H」を取得し、確変中であれば、ステップS1614の処理において、該当り情報の変数「000H、05AH、000H」のうち中央の「05AH」を取得する。つまり、確変中でなければ「はずれ」、確変中であれば「当り」の情報が取得されるものである。
ステップS1610で高確時の判定基準値TH2を用いた大当り判定が行われ、乱数値が判定基準値TH2よりも大きい(つまり判定基準値TH1、TH2の双方に対してはずれである)とされた場合、本例では、図27Aに示すテーブルにおけるアドレス「4109」〜「4111」の領域に格納された情報、すなわち、はずれ情報を取得するためのはずれ時対応情報に基づいた処理を行う。
ここで、ステップS1607で高確時の判定基準値TH2が取得された場合に実行されるステップS1608及びS1609の処理によっては、参照先アドレスが、それまでのアドレス「4103」から6アドレス分先の「4109」にずらされることになる。従って、ステップS1610で乱数値が判定基準値TH2よりも大きいと判定されたことに応じて実行されるステップS1601の処理では、設定差情報として該アドレス「4109」に格納された「000H」が取得される。つまりこの場合、処理はステップS1601→S1602→S1603と進められる。
ここで、図27Aに示すテーブルにおいて、はずれ時対応情報の格納領域(「4109」〜「4111」)には、設定差情報の次のアドレス(「4110」)に判定基準値として「65535」が格納されている。すなわち、0〜65535をとり得る乱数値に対し確実にはずれ判定を得るための「はずれ用判定基準値」が格納されている。さらに、はずれ用判定基準値の次のアドレス(「4111」)には、はずれ情報を表す変数「000H、000H、000H」が格納されている。該変数についても、左側から順に低確中、高確中、小当りに対応する情報とされている。
この場合、ステップS1603の取得処理では、判定基準値として、参照先アドレスの次のアドレスに格納された「はずれ用判定基準値」としての「65535」が取得される。そして、ステップS1604の処理を介して実行されるステップS1610の判定処理では、乱数値が「はずれ用判定基準値」=65535よりも大きいか否かが判定され、その判定結果としては、乱数値が「はずれ用判定基準値」よりも大きくないとの判定結果が得られる。
このようにステップS1610で「はずれ用判定基準値」を用いた判定が行われ、乱数値が「はずれ用判定基準値」よりも大きくないと判定された場合は、ステップS1611以降の処理によりはずれ情報の取得処理が行われる。
具体的に、ステップS1610で乱数値が「はずれ用判定基準値」よりも大きくないと判定されたことに応じて実行されるステップS1611の処理では、CPU201は、テーブルにおける「はずれ用判定基準値」の次アドレスに格納された変数「000H、000H、000H」のうち最も右側の「000H」を取得する。
また、この場合、確変中でなければ、CPU201はステップS1613の処理において、「はずれ用判定基準値」の次アドレスに格納された変数「000H、000H、000H」のうち最も左側の「000H」を取得し、確変中であれば、ステップS1614の処理において、該変数「000H、000H、000H」のうち中央の「000H」を取得する。
このように、判定基準値TH1、TH2の双方に対してはずれであると判定された場合には、当落を表す情報としての各「当り情報」(小当り情報、低確中大当り情報、高確中大当り情報)として、「はずれ」を表す情報が取得される。
(変動パターン抽選処理)
図28〜図33を参照して、変動パターン抽選処理について説明する。
図28は、ステップS1504の変動パターン抽選処理を示したフローチャートである。
先ず、CPU201はステップS1701で、設定エラーフラグに基づき設定エラーか否かを判定し、設定エラーでなければ、ステップS1702で当りか否かを判定する。すなわち、大当り判定フラグに基づき、大当り(=5AH)であるか否かを判定する。
ステップS1702において、当りでない(はずれである)と判定した場合、CPU201はステップS1703ではずれ変動パターンテーブルを選択した上で、ステップS1706の変動パターン選択処理に進む。すなわち、テーブルと変動パターン用乱数に基づいて変動パターンを選択する処理である。
一方、ステップS1702において当りと判定した場合、CPU201はステップS1704で当り変動パターンテーブルを選択した上で、ステップS1706の変動パターン選択処理に進む。
図29は、はずれ変動パターンテーブルの一例を、図30は当り変動パターンテーブルの一例をそれぞれ示している。
先ず前提として、はずれ変動パターンテーブル、当り変動パターンテーブルとしては、それぞれ特図1用の変動パターンテーブルと特図2用の変動パターンテーブルとが用意されている。
図29に示すはずれ変動パターンテーブルを用いて行われるはずれ時の変動パターン抽選においては、抽選候補の変動パターン(抽選により選択され得る変動パターン)が「通常変動4s」「通常変動6s」「通常変動8s」「通常変動12s」「ノーマルリーチ」「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の9種とされる。
また、図30に示す当り変動パターンテーブルを用いて行われる当り時の変動パターン抽選においては、抽選候補の変動パターンが「通常変動当り」「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の5種とされる。
なお、「通常変動」について、併記する数値は変動時間を表し、数値後の「s」は「秒」を意味する。
ここで、上記した変動パターンのうち、特に「通常変動4s」「通常変動6s」「通常変動8s」「通常変動12s」は、当り時に選択されないいわば「はずれ」に対応した変動パターンに属する(以下「はずれ変動パターン」と称することもある)。
本実施形態では、はずれ時の変動パターン抽選は、特図1、2の別に関わらず、はずれ種別(はずれ1、2、3)ごとに異なる変動パターンテーブルを用いて行われる(図29参照)。
ここで、本実施形態において、「はずれ1」「はずれ2」「はずれ3」の各はずれ種別については、図柄抽選による選択率(該当種別が選択される率)が異なるものとされ、「はずれ1」が最も選択率が高く、「はずれ2」「はずれ3」は「はずれ1」よりも選択率が低くされている。具体的に、本例では、「はずれ1」の選択率は「190/200」、「はずれ2」「はずれ3」の選択率はそれぞれ「5/200」等とされている。この場合、大当り判定結果が「はずれ」であれば、殆どの場合、はずれ種別として「はずれ1」が選択されることになる。
特図1についての変動パターン抽選として、はずれ種別が「はずれ1」の場合における変動パターン抽選については、設定値Veに応じた抽選とはせず、保留球数に応じた抽選を行う。このため、特図1用の変動パターンテーブルのうち、はずれ種別が「はずれ1」の場合に用いられる変動パターンテーブルとしては、設定値Ve間で共通とされるが、保留球数ごとに異なるテーブルが用意されている。
「はずれ1」の場合における特図1の変動パターン抽選では、抽選候補の変動パターンが「通常変動4s」「通常変動6s」「通常変動8s」「通常変動12s」「ノーマルリーチ」の5種とされており、本例では、保留球数に応じて抽選対象する変動パターンを異ならせるものとしている。
具体的に、保留球数=0の場合は「通常変動12s」「ノーマルリーチ」を、保留球数=1の場合は「通常変動8s」「ノーマルリーチ」を、保留球数=2の場合は「通常変動6s」「ノーマルリーチ」を、保留球数=3の場合は「通常変動4s」「ノーマルリーチ」をそれぞれ抽選対象の変動パターンとしている。
ここで、変動パターンテーブル内において、抽選対象の変動パターンごとに格納された数値は、変動パターン判定用乱数が0〜199の200通りの数値をとり得ることを前提とした場合における当選確率の振り分け値(振り分けを表す値)を表している。例えば、特図1用の変動パターンテーブルにおいて、「はずれ1」且つ「保留球数=0」のテーブルでは「通常変動12s」に対する格納値=「160」、「ノーマルリーチ」に対する格納値=「40」とされているが、これは、「通常変動12s」の当選確率が「160/200」、「ノーマルリーチ」の当選確率が「40/200」であることを意味している。
テーブルの格納値として上記の振り分け値を示したのはあくまで説明の便宜を図るためであり、実際における変動パターンテーブルには、前述の大当り乱数判定で用いたような判定基準値が格納されることになる。例えば、上記の「はずれ1」且つ「保留球数=0」のテーブルについて言えば、実際の格納値(判定基準値)として例えば「159」が格納され、その場合、変動パターン用乱数が159以下であれば「通常変動12s」が選択され、変動パターン用乱数が159よりも大きければ「ノーマルリーチ」が選択される。
図29に示した振り分け値を参照して分かるように、「はずれ1」の場合に対応した特図1の変動パターン抽選においては、「ノーマルリーチ」よりも「通常変動」の方が選ばれ易くなるようにしている(出現率が高くなるようにしている)。
また、「はずれ1」の場合に対応した特図1の変動パターン抽選においては、保留球数が多いほど、変動時間の短い通常変動パターンが選択されるようにしている。
続いて、特図1の変動パターン抽選として、はずれ種別が「はずれ2」「はずれ3」それぞれの場合における変動パターン抽選については、設定値Veに応じた抽選とする一方、保留球数に応じた抽選とはしない。このため、「はずれ2」「はずれ3」それぞれの場合に用いられる特図1用の変動パターンテーブルとしては、保留球数間で共通とされるが、設定値Veごとに異なるテーブルが用意されている。
「はずれ2」「はずれ3」の場合に対応した特図1の変動パターン抽選では、抽選候補の変動パターンが「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の4種とされている。
本例では、「はずれ3」の場合に対応した特図1の変動パターン抽選については、設定値Veによって抽選対象する変動パターンを異ならせるものとしている。
具体的に、特図1の変動パターン抽選において、「はずれ2」「はずれ3」と設定1、2,6の組合わせごとにそれぞれ抽選対象とされる変動パターンは下記の通りである。
設定1且つ「はずれ2」=スーパーリーチ1、2、3、4
設定1且つ「はずれ3」=スーパーリーチ1
設定2且つ「はずれ2」=スーパーリーチ1、2、3、4
設定2且つ「はずれ3」=スーパーリーチ2、3
設定6且つ「はずれ2」=スーパーリーチ1、2、3、4
設定6且つ「はずれ3」=スーパーリーチ4
図中に例示した振り分け値より、本例では、「はずれ2」の場合に対応した特図1の変動パターン抽選として、設定1の場合にはスーパーリーチ4、3、2、1の順で変動パターンが選択され易くしており、設定2の場合にはスーパーリーチ1、2、3、4の順、設定3の場合にはスーパーリーチ1、3、2、4の順で変動パターンが選択され易くしている。
また本例では、「はずれ3」の場合に対応した特図1の変動パターン抽選に関しては、高設定となるほど(設定値Veが大きくなるほど)当選期待感の高いスーパーリーチが選択される傾向となるようにしている。
なお、上記の「はずれ2」の場合に対応した変動パターン抽選のように、抽選候補の変動パターンが3種以上とされる抽選に用いられる変動パターンテーブルには、判定基準値として複数の値(「抽選候補の変動パターン数−1」で表される値)が格納される。例えば、図中の設定1且つ「はずれ2」の場合に対応したテーブルで言えば、例えば、判定基準値としてそれぞれ第一の値=9、第二の値=39、第三の値=99が設定され、その場合、変動パターン用乱数が第一の値以下であれば「スーパーリーチ1」が、第一の値より大きく第二の値以下であれば「スーパーリーチ2」が、第二の値より大きく第三の値以下であれば「スーパーリーチ3」が、第三の値より大きければ「スーパーリーチ4」がそれぞれ選択される。
続いて、特図2の変動パターン抽選として、はずれ種別が「はずれ1」の場合における変動パターン抽選については、特図1の場合とは異なり、抽選候補の変動パターンを「通常変動12s」のみとしている。このため、特図2用の変動パターンテーブルのうち、「はずれ1」且つ「保留球数=0」、「はずれ1」且つ「保留球数=1」、「はずれ1」且つ「保留球数=2」、「はずれ1」且つ「保留球数=3」の場合に用いられる各テーブルにおいては、「通常変動12s」に対応する振り分け値が全て「200」とされている。
なおこの場合、保留球数が異なっても抽選結果は同一となるため、変動パターンテーブルとしては保留球数間で共通のテーブルとすることもできる。
また、特図2の変動パターン抽選として、はずれ種別が「はずれ2」「はずれ3」の場合における変動パターン抽選については、特図1の場合と同様に設定値Veに応じた抽選とするが、保留球数に応じた抽選とはしない。このため、特図2用の変動パターンテーブルについて、「はずれ2」「はずれ3」それぞれの場合に用いられる変動パターンテーブルとしては、保留球数間で共通とされるが、設定値Veごとに異なるテーブルが用意されている。
「はずれ2」「はずれ3」の場合に対応した特図2の変動パターン抽選では、抽選候補の変動パターンが「通常変動12s」「スーパーリーチ4」の2種とされており、設定値Veによって、これら「通常変動12s」「スーパーリーチ4」の何れかの変動パターンが選択される。
具体的に、本例における「はずれ2」「はずれ3」の場合に対応した特図2の変動パターン抽選では、それぞれ、設定1、2の何れかである場合に「通常変動12s」が必ず選択され、設定6の場合に「スーパーリーチ4」が選択されるようにしている。
続いて、図25に示す当り変動パターンテーブルについて説明する。
本実施形態において、当り時の変動パターン抽選では、特図1、2共に、当り種別ごとに異なるテーブルを用いる。
本実施形態では、当り種別ごとに、抽選対象の変動パターンが次のように設定されている。すなわち、当り種別が「通常4R」の場合は、特図1、2共に、抽選対象の変動パターンは「通常変動当り」「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の5種とされている。
また、当り種別が「通常6R」の場合、特図1では、抽選対象の変動パターンは「通常変動当り」「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の5種とされ、特図2では、「通常変動当り」を除いた「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の4種とされている。
さらに、当り種別が「確変6R」「確変10R」の場合、特図1、2共に、抽選対象の変動パターンは「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」の4種とされている。
本実施形態における当り時の変動パターン抽選では、特定の当り種別についてのみ、設定値Veに応じた変動パターン抽選を行う。具体的に、特図1の変動パターン抽選については、「通常4R」「確変10R」の当り種別についてのみ設定値Veに応じた変動パターン抽選を行い、特図2の変動パターン抽選については「通常4R」「確変6R」「確変10R」の当り種別についてのみ設定値Veに応じた変動パターン抽選を行う。
「通常4R」の場合における変動パターン抽選については、特図1、2の双方において、設定値Veにより抽選対象の変動パターンを異ならせている。具体的に、本例における「通常4R」に対応した変動パターン抽選では、設定1であれば「通常変動当り」〜「スーパーリーチ4」の5種を、設定2又は設定6であれば「スーパーリーチ1」〜「スーパーリーチ4」の4種をそれぞれ抽選対象の変動パターンとしている。
「通常4R」以外の当り種別である「通常R6」「確変6R」「確変10R」の場合における変動パターン抽選については、特図1、2の双方において、抽選対象の変動パターンは設定値Veによらず不変とされている。
本実施形態において、特図1の当り時の変動パターン抽選では、「通常4R」「確変10R」の場合のみ、設定値Veに応じた変動パターン抽選を行うものとしている。このため、特図1の当り変動パターンテーブルにおいて、これら「通常4R」「確変10R」の場合に用いられる変動パターンテーブルとしては、設定値Veごとに異なるテーブルが用意されている。
図30を参照して分かるように、本例では、特図1の変動パターンテーブルにおいて、「通常4R」「確変10R」それぞれのテーブルでは「スーパーリーチ4」に対する振り分け値を設定値Veが大きくなるほど大きくしている。これにより、「通常4R」「確変10R」それぞれの当り時には、現在の設定が高設定であるほど、特図1の変動パターンとして最も当選期待値の高い変動パターンが選択され易くなる。
また、本例において、特図2の当り時の変動パターン抽選では、「通常4R」「確変10R」と共に「確変6R」についても設定値Veに応じた変動パターン抽選を行うものとしている。このため、特図2の当り変動パターンテーブルにおいて、「通常4R」「確変6R」「確変10R」の場合に用いられる変動パターンテーブルとしては設定値Veごとに異なるテーブルが用意されている。本例において、特図2の変動パターンテーブルでは、これら「通常4R」「確変6R」「確変10R」全てのテーブルにおいて、「スーパーリーチ4」に対する振り分け値を設定値Veが大きくなるほど大きくしている。
ここで、図中の振り分け値を参照して分かるように、本例では、当り種別や設定値Veの別に拘わらず、各テーブルにおいて「スーパーリーチ4」に対する振り分け値を最も大きくしている。つまり、本例では、大当りと判定された場合の変動パターン抽選において、最も当選期待度の高い変動パターンが最も選択され易くなっている。
説明を図28に戻す。
上述したステップS1706の選択処理では、上記のようなはずれ、又は当り変動パターンテーブルに基づいて変動パターンの選択を行う。
具体的に、ステップS1702ではずれであると判定した場合に対応してはずれ変動パターンテーブルを選択した場合、CPU201は該変動パターンテーブルよりはずれ種別、保留球数、設定値Veに応じたテーブルを選択し、該選択したテーブルと変動パターン用乱数とに基づいて変動パターンの選択を行う。また、ステップS1702で当りであると判定した場合に対応して当り変動パターンテーブルを選択した場合、CPU201は該当り変動パターンテーブルより当り種別、設定値Veに応じたテーブルを選択し、該選択したテーブルと変動パターン用乱数とに基づいて変動パターンの選択を行う。なおこの際、処理対象としている図柄が特図1、2の何れであるかに応じて特図1用、特図2用のテーブルを選択し分けることは言うまでもない。
先の説明から理解されるように、当り/はずれの各変動パターンテーブルにおいては、抽選対象の変動パターンに対応した判定基準値が1又は複数(抽選候補の変動パターン数−1)定められており、ステップS1706の選択処理では、上記のように選択したテーブルに格納された判定基準値と変動パターン用乱数の値との大小関係を比較した結果に基づき、変動パターンの選択を行うことになる。
なお、上記では、変動パターンを選択するための変動パターンテーブルについて、設定値Veごとにテーブルを分ける例を挙げたが、一部の設定値Ve間で共通のテーブルが用いられてもよい。
図31は、その一例を示すものである。
ここでは、設定値Veが設定1〜6に対応した6値をとり得ることを前提とした場合の当り変動パターンテーブルの変形例を示している。
この図31の例では、特図1用の「通常4R」「確変10R」に対応したテーブル、特図2用の「通常4R」「確変6R」「確変10R」に対応したテーブルとして、それぞれ設定1〜3の組、設定4〜6の組ごとにテーブルを分けた例を示している。
この図31の例のように、設定値Veに応じた変動パターン抽選を行う上では、個々の設定値Veごとに個別にテーブルを分けることに限定されず、一部の設定値Ve間で共通のテーブルが用いられてもよい。
続いて、変動パターン抽選時に設定エラーが検知された場合の処理について説明する。
図28のステップS1701において、設定エラーであると判定した場合、CPU201はステップS1705に進み、設定エラー時共通変動パターンテーブルを選択し、ステップS1706の選択処理を実行する。
図32は、設定エラー時共通変動パターンテーブルについての説明図である。
本実施形態において、設定エラー時共通変動パターンテーブルを用いて行われる設定エラー時の変動パターン抽選では、特図1、2双方とも、当り/はずれの別に拘わらず強制的にはずれ変動パターンが選択されるようにする。つまり本例では、「通常変動4s」「通常変動6s」「通常変動8s」「通常変動12s」の何れかのはずれ変動パターンが強制的に選択される。
本例における設定エラー時の変動パターン抽選では、特図1側については保留球数に応じて異なる変動パターンが選択されるようにし、特図2側については保留球数によらず特定の変動パターンのみ、具体的には「通常変動12s」のみが選択されるようにしている。
特図1側については、保留球数が多いほど変動時間の長い通常変動パターンが選択されるようにしている。
図32においても説明の便宜上、テーブル構造としては、変動パターン抽選用乱数が0〜199の値をとり得る場合に対応した振り分け値を格納した構造を示したが、実際のテーブル構造は、保留球数(0〜3)ごとのテーブルとして、少なくとも抽選候補の変動パターンに判定基準値を対応づけた構造が採られる。
なお、特図2側について、本例のように保留球数によらず特定変動パターンが選択されるようにするのであれば、保留球数(0〜3)ごとにテーブルを分ける必要性がないことは言うまでもない。
図28において、ステップS1706の選択処理では、ステップS1705で設定エラー時共通変動パターンテーブルが選択された場合には該テーブルと変動パターン用乱数とに基づいて変動パターンの選択を行う。具体的に、本例では、設定エラー時共通変動パターンテーブルにおける現在の保留球数に応じたテーブルを選択し、該選択したテーブルに格納される判定基準値と変動パターン用乱数との大小関係を比較した結果に基づいて変動パターンを選択する。
CPU201は、ステップS1706の選択処理を実行したことに応じてステップS1508の変動パターン抽選処理を終える。ステップS1504の抽選処理の終了により、図24に示したステップS1409の変動管理処理が終了となり、以降、処理は図23に示したステップS1410(変動中フラグON処理)に進められる。
前述のように、ステップS1410に続くステップS1411のコマンド送信処理では、変動パターンの抽選結果を表す「変動パターン指定コマンド」や図柄抽選結果を表す「装飾図柄指定コマンド」が演出制御部24に送信される。
演出制御部24側では、これらのコマンドに基づき、リーチ状態を形成する際の装飾図柄の組合せ(リーチ図柄を構成要素とする図柄種)や、最終的に停止表示させる装飾図柄(装飾停止図柄)の組合せが決定され、また図柄変動表示ゲームにおいて当選種別に対応する予告演出の抽選等が行われる。
ここで、上記のように本実施形態では、特図の変動開始時に設定エラーが認められた場合は強制的にはずれ変動パターン(通常変動)が選択されるようになるが、このとき、装飾図柄側の変動として激熱変動が選ばれてしまうと遊技者を困惑させるため、本例では、上記のように通常変動4s〜通常変動12s等、変動時間の短い変動パターンが選択されるようにしている。
そして、本実施形態では、演出制御部24側においても、設定エラー時には予告演出を行わない工夫をしている。具体的に、演出制御部24は、設定エラーを通知する設定値異常コマンド(図20のステップS1104を参照)を主制御部20側より受信した場合は、予告演出の抽選を行わないようにされる。
ここで、本実施形態において、演出制御部24は、上記の設定値異常コマンドに基づき設定エラーが認められた場合には、液晶表示装置36に「RAM異常です 係員を呼んで下さい」等のメッセージを含む画像を表示させる等、異常発生の報知を行う。該報知としては、液晶表示装置36を用いた画像表示による報知に限らず、例えば音やLEDの点灯(及び/又は点滅)による報知や、画像、音、LED等の複数種の演出手段の組合わせによる報知とすることもできる。
なお、上記では特図1側の設定エラー時共通変動パターンテーブルについて、保留球数が多いほど変動時間の長い通常変動パターンが選択されるようにしたが、これは一例であって、例えば保留球数が少なくなるほど変動時間の長い通常変動パターンが選択されるようにすることもできる。
或いは、図33に例示するように、特図2側と同様に各保留球数で同一の変動パターンが選択されるようにすることもできる。図33の例では、各保留球数において「通常変動12s」が共通に選択される場合を示している。
このように設定エラー時共通変動パターンテーブルにおいて、保留球数と選択される変動パターンとの関係については多様に考えられ、特定の関係に限定されるものではない。
なお、特図2側についても、特図1側のように保留球数によって選択される変動パターンが異なるようにすることもできる。
(実施形態としての設定値関連データテーブルの利点)
ここで、本例では、先の図27Aに示した大当り判定用乱数判定テーブルにおいて、はずれ時対応情報の格納領域(「4109」〜「4111」)よりも下層側の領域を空き領域としている。また、本例では、図27Bに示した大当り判定用乱数判定テーブルについても、はずれ時対応情報の格納領域(「4148」〜「4150」)よりも下層側の領域を空き領域としている。本例では、これら空き領域には「0」を記憶させている。
これら大当り判定用乱数判定テーブルにおいて、該空き領域以外の領域は、遊技動作の進行制御に用いる使用データが記憶された使用データ記憶領域と換言できる。また、空き領域は、遊技動作の進行制御に用いない不使用データが記憶された不使用データ記憶領域と換言できる。
そして、このような大当り判定用乱数判定テーブルを、設定値Vdを参照して選択される複数の設定値関連情報を含む第一データテーブルとしたときに、本実施形態では、主制御部20のROM202において、該第一データテーブルと、第一データテーブルよりも下層側の記憶領域に記憶され且つ設定値関連情報を含まない第二データテーブルとを格納するものとしている。
図34は、本実施形態のROM202における第一データテーブルと第二データテーブルの格納例を示した図である。
図示のように本実施形態のROM202においては、第一データテーブル(大当り判定用乱数判定テーブル)よりも下層側の記憶領域に、特別図柄作成アドレステーブル、すなわち設定値関連情報を含まない第二データテーブルが格納されている。
このように本実施形態では、主制御部20のROM202において、複数の設定値関連情報を含む第一データテーブルと、第一データテーブルよりも下層側の記憶領域に記憶され且つ設定値関連情報を含まない第二データテーブルとが格納されており、第一データテーブルは、遊技動作の進行制御に用いる使用データが記憶された使用データ記憶領域と、遊技動作の進行制御に用いない不使用データが記憶された不使用データ記憶領域とで構成されている。
設定値関連情報を含む第一データテーブルに使用データ記憶領域しか確保されてない場合には、使用する設定値Vdの数(段階の数)を増加させようとしたときに、増加分の設定値Vdに係る設定値関連情報を第一データテーブルに追記すると、その下層に格納すべき第二データテーブル以降のデータは下層側にシフトさせることを要する。すなわち、第二データテーブル以降のデータについては記憶領域をシフトさせるための書き替えを強いられるものである。
上記のように設定値関連情報を含む第一データテーブルに使用データのみでなく不使用データの記憶領域を確保しておくことで、使用する設定値Vdの数を増加させようとしたときは、増加分の設定値Vdに係る設定値関連情報を該不使用データの記憶領域に記憶させることが可能とされる。
従って、第二データテーブル以降のデータの書き直しを不要とすることが可能となり、使用する設定値Vdの数を変更することに伴うデータ書き替え作業の負担軽減を図ることができる。
また、本実施形態では、上記した使用データ記憶領域には、設定変更処理で設定可能な設定値Vdの数(本例では「3」)に応じた容量の使用データが記憶され、不使用データ記憶領域には、設定変更処理で設定不能な設定値Vdの数(本例では設定値Ve「3」「4」「5」に対応した「3」)に応じた容量の不使用データが記憶されている。具体的に本例では、規則上設定可能な設定値Veの数=6から実際に使用する設定値Veの数=3を減じた「3」個分の設定値Veに応じた容量の不使用データを記憶させるものとしている。
これにより、不使用データ記憶領域の記憶容量として、使用する設定値Veの数を増加させた際における増加分の設定値Veに係る設定値関連情報の記憶容量を確保することが可能とされる。
従って、第二データテーブル以降のデータの書き直しが生じてしまうことの防止を図ることができる。
さらに、本実施形態では、上記のように不使用データとして「0」が記憶されているが、これにより、仮に不使用の設定値Vdによって第一データテーブルが参照されても、不使用の設定値Vdに対応する設定値関連情報が取得されてしまうことの防止が図られる。すなわち、不正行為が成立してしまうことの防止を図ることができ、遊技の公平性を高めることができる。
また、本実施形態では、主制御部20のROM202においては、第二データテーブルよりも下層側の記憶領域に第一データテーブルを記憶し、第一データテーブルよりも下層側の記憶領域に第2データテーブルを記憶しないものとしている。
具体的に、本実施形態のROM202においては、図35に示すように、第一データテーブルとしての設定値オフセット変換テーブル(図16参照)は、通常用データ領域の最下層領域に記憶している。
ここで、主制御部20のROM202は、図36に示すように上層側から順に「通常用プログラム領域」「未使用領域」「通常用データ領域」「未使用領域」「計測用プログラム領域」「未使用領域」「計測用データ領域」「未使用領域」が定められている。「通常用プログラム領域」は遊技全般に関するプログラムが記憶された領域であり、「通常用データ領域」は「通常用プログラム領域」のプログラムに基づき参照される遊技全般に関するデータテーブルが記憶された領域である。例えば、図27に示した大当り判定用乱数判定テーブルは、この「通常用データ領域」に記憶される。
「計測用プログラム領域」は、前述した通常時比率情報等の性能情報の表示や計測に関するプログラムが記憶された領域であり、「計測用データ領域」は「計測用プログラム領域」のプログラムに基づき参照される性能情報の表示や計測に関するデータテーブルが記憶された領域である。
図35に示すように、第一データテーブルとしての設定値オフセット変換テーブルを通常用データ領域の最下層領域に記憶することで、第一データテーブルは、例えば前述した「特別図柄作成アドレステーブル」(図34参照)等としての第二データテーブルよりも下層側の記憶領域に記憶され、第2データテーブルは第一データテーブルよりも下層側の記憶領域には記憶されないものとなる。
ROM202に対し第一、第二データテーブルを上記態様により記憶させることで、使用する設定値Vdの数を増加させる場合には、ROM202におけるデータ領域の最下層に位置された第一データテーブルの内容を書き替えれば済み、第一データテーブルよりも下層側のデータ部分の書き替えを不要とすることが可能とされる。
従って、使用する設定値Vdの数を変更することに伴うデータ書き替え作業の負担軽減を図ることができる。
<5.演出制御部の処理>
[5-1.処理概要]
続いて演出制御部24の処理について説明するが、まず演出制御のためのシナリオデータの構造例について述べる。
シナリオ登録情報の構造を図37、図38で説明する。図37Aは、メインシナリオ及びサブシナリオとしてのシナリオ登録情報の構造を示している。このシナリオ登録情報は演出制御部24のRAM243(例えば内蔵CPU用ワークメモリ)に設けられたワークエリアを用いて設定される。
本実施形態ではシナリオ登録情報は、シナリオチャネルsCH0〜sCH63の64個のチャネルを有するものとされる。各シナリオチャネルsCHに登録されたシナリオについては同時に実行可能とされる。
図示のように各シナリオチャネルsCHに登録できる情報としては、サブシナリオ更新処理で用いるサブシナリオタイマ(scTm)、前回時間(scPrevTm)、音/モータのサブシナリオテーブルの実行ラインを示すサブシナリオ実行ライン(scIx)、ランプサブシナリオテーブルの実行ラインを示すサブシナリオ実行ラインlmp(lmpIx)、シナリオ更新処理に用いるメインシナリオタイマ(msTm)、メインシナリオテーブルの実行ラインを示すメインシナリオ実行ライン(mcIx)、メインシナリオ番号(mcNo)、メインシナリオに付加可能なオプションデータであるメインシナリオオプション(mcOpt)、ユーザオプション(userFn)、待機時間(delay)、チェックサム(checkSum)がある。
スピーカ46による音出力、光表示装置45aによる発光、及び可動体役物モータ80cによる可動体役物の駆動による演出を開始するときには、待機時間(delay)とメインシナリオ番号(mcNo)をシナリオチャネルsCH0〜sCH63のうちの空いているシナリオチャネルに登録する。
待機時間(delay)は、シナリオチャネルsCHに登録してからそのシナリオが開始されるまでの時間を示す。なおこの待機時間(delay)は所定の処理タイミング(例えば後述の図41のステップS2004)で1減算される。待機時間(delay)が0の場合に、登録されたデータに対応した処理が実行されることとなる。
図39には、メインシナリオテーブルの一部として、シナリオ番号1,2,3の例を示している。各シナリオ番号のシナリオとしては、シナリオの各ライン(行)に時間データとしてメインシナリオタイマ(msTm)の値が記述されると共に、サブシナリオ番号(scNo)、オプション(OPT)を記述することができる。即ちメインシナリオテーブルでは、メインシナリオタイマ(msTm)による時間として、実行されるべきサブシナリオ(及び場合によってはオプション)が指定される。またシナリオ最終行には、シナリオデータ終了コードD_SEEND、又はシナリオデータループコードD_SELOPが記述される。
なお、メインシナリオタイマ(msTm)の値はメインシナリオの開始時から、所定の処理タイミング(例えば後述の図41のステップS2004)で+1される。
各シナリオ番号のシナリオテーブルは、或る行におけるメインシナリオタイマ(msTm)の時間を経過すると、次の行へ進むことになる。各行の時間データは、その行が終わるタイミングを示している。
例えばシナリオ番号2の場合、タイマ値“1500”の時間としてサブシナリオ番号2の動作が指定され、次のタイマ値“500”の時間としてサブシナリオ番号20の動作が指定され、次のタイマ値“2000”の時間としてサブシナリオ番号21の動作が指定されている。その次の行はシナリオデータ終了コードD_SEENDである。シナリオデータ終了コードD_SEENDの場合、シナリオ登録情報(ワーク)から、このシナリオが削除される。
次に図37Bでランプデータ登録情報の構造を説明する。ランプデータ登録情報としては、ランプサブシナリオテーブルから選択されたシナリオ、即ち光表示装置45aによる演出動作(点灯パターン)を示す情報が登録される。このランプデータ登録情報もRAM243のワークエリア(ワーク領域)を用いて設定される。
本実施形態では、ランプデータ登録情報は、ランプチャネルdwCH0〜dwCH15の16個のチャネルを有するものとされる。各ランプチャネルdwCH0〜dwCH15には優先順位が設定されており、ランプチャネルdwCH0からdwCH15に向かって順にプライオリティが高くなる。従ってランプチャネルdwCH15に登録されたシナリオ(ランプサブシナリオ)が最も優先的に実行される。また例えばランプチャネルdwCH3、dwCH10にシナリオが登録されていれば、ランプチャネルdwCH10に登録されたシナリオが優先実行される。
なお、ランプチャネルdwCH0は主にBGM(Back Ground Music)に付随するランプ演出、ランプチャネルdwCH15はエラー関係のランプ演出に用いられ、ランプチャネルdwCH1〜dwCH14が通常演出に用いられる。
各ランプチャネルdwCHに登録できる情報としては、図示のように、登録した点灯パターンの番号を示す登録点灯ナンバ(lmpNew)、実行する点灯パターンの番号を示す実行点灯ナンバ(lmpNo)、ランプサブシナリオの実行ラインを示すオフセット(offset)、実行時間(time)、チェックサム(checkSum)がある。
図40Aにランプサブシナリオテーブルの一部として、ランプサブシナリオ番号1,2,3の例を示している。各番号のランプサブシナリオとしては、シナリオの各ライン(行)に時間データ(time)の値が記述されると共に、ランプチャネルと、各種の点灯パターンを示すランプナンバが記述される。また最終行には、ランプシナリオデータ終了コードD_LSENDが記述される。
このランプサブシナリオテーブルにおいて、各ラインの時間データ(time)は、そのサブシナリオが開始されてからの、当該ラインが開始される時間を示している。
上述のメインシナリオタイマ(msTm)と、テーブルの時間データを比較して、一致した場合に、そのラインのランプナンバが、図37Bのランプデータ登録情報に登録される。登録されるランプチャネルdwCHは、当該ラインに示されたチャネルとなる。
例えば、上述の或るシナリオチャネルsCHにおいて、図39に示したシナリオ番号2が登録され、サブシナリオ番号2が参照されるとする。図40Aに示したランプサブシナリオ番号2では、1ライン目に時間データ(time)=0としてランプチャネル5(dwCH5)及びランプナンバ5が記述されている。この場合、メインシナリオタイマ(msTm)=0の時点で、まず当該1ライン目の情報が図37Bのランプデータ登録情報のランプチャネルdwCH5に、登録点灯ナンバ(lmpNew)=5として登録される。シナリオ登録情報のサブシナリオ実行ラインlmp(lmpIx)の値は、次のラインの値(2ライン目)に更新される。これはランプチャネルdwCH5という比較的低い優先度で、点灯ナンバ5の点灯パターン動作の実行を行うための登録となる。
2ライン目については、メインシナリオタイマ(msTm)が“500”となった時点で同様の処理が行われる。即ちランプデータ登録情報のランプチャネルdwCH5に、登録点灯ナンバ(lmpNew)=6(つまり点灯ナンバ6の点灯パターンの指示)が登録される。
なお、時間データ(time)が連続する2ラインで同一の値であったら、その各ラインについての処理は同時に開始されることとなる。
後述するランプ駆動データ作成処理では、このように更新されるランプデータ登録情報に基づいて、ランプ駆動データが作成される。
次に図37Cでモータデータ登録情報の構造を説明する。モータデータ登録情報としては、モータサブシナリオテーブルから選択されたシナリオを示す情報が登録される。このモータデータ登録情報もRAM243のワークエリアを用いて設定される。
本実施形態では、モータデータ登録情報は、例えば8個のモータに対応してモータチャネルmCH0〜mCH7の8個のチャネルを有するものとされる。
各モータチャネルmCHに登録できる情報としては、図示のように、実行動作ナンバ(no)、登録動作ナンバ(noNew)、動作カウント(lcnt)、励磁カウンタ(tcnt)、実行ステップ(step)、動作ライン(offset)、親(移行元)/子(移行先)の属性(attribute)、親ナンバ(retNo)、戻りアドレス(retAddr)、ループ開始ポイント(roopAddr)、ループ回数(roopCnt)、エラーカウンタ(errCnt)、現在の入力情報(currentSw)、ソフト上のスイッチ情報(softSw)、ソフト上のカウント(softCnt)がある。
図40Cにモータサブシナリオテーブルの一部として、モータサブシナリオ番号1の例を示している。各番号のモータサブシナリオとしては、シナリオの各ライン(行)に時間データ(time)の値が記述されると共に、モータ、ソレノイド/ユーザオプションの情報が記述される。また最終行には、シナリオデータ終了コードD_MSENDが記述される。
このモータサブシナリオテーブルに関しては、サブシナリオタイマ(scTm)が0になったら(なお最初は0である)、このモータサブシナリオテーブルの時間データ(time)の値をサブシナリオタイマ(scTm)にセットする。なお、各ラインの時間データ(time)は、当該ラインが終了するタイミングを示している。サブシナリオタイマ(scTm)には、絶対時間を記述するが、従って、セットする時間データ値は、(当該ラインの時間データ)−(前回ラインの時間データ)の値である。
モータのデータ(モータ0〜3,4〜7)は、モータ1個につき1バイトでモータの動作パターンの番号(後述するモータ動作テーブルの番号)を示すように構成されている。モータ番号に対応するモータチャネルの登録動作ナンバ(noNew)及び実行動作ナンバ(no)に動作パターンの番号がセットされる。
後述する図44のステップS2202では、このモータデータ登録情報の更新が行われ、ステップS2203では、モータデータ登録情報の更新に基づいて、モータ駆動データが作成される。
図38は音データ登録情報を示している。音データ登録情報としては、音サブシナリオテーブルから選択されたシナリオを示す情報が登録される。この音データ登録情報もRAM243のワークエリアを用いて設定される。
本実施形態では、音データ登録情報は、音チャネルaCH0〜aCH15の16個のチャネルを有するものとされる。
各音チャネルaCHに登録できる情報としては、図示のように、ボリューム遷移量(frzVq)、ボリューム(frzVl)、遷移量変化(rsv2)、ボリューム変化(rsv1)、フレーズ変化(rsv0)、ステレオ(frzSt)、ループ(frzLp)、フレーズ番号hi(frzHi)、フレーズ番号low(frzLo)がある。
図40Bに音サブシナリオテーブルの一部として、音サブシナリオ番号1,2の例を示している。各番号の音/モータサブシナリオとしては、シナリオの各ライン(行)に時間データ(time)の値が記述されると共に、BGM、予告音、エラー音、音コントロールの情報が記述される。また最終行には、シナリオデータ終了コードD_SEENDが記述される。
この音サブシナリオテーブルに関しては、サブシナリオタイマ(scTm)が0になったら(なお最初は0である)、この音サブシナリオテーブルの時間データ(time)の値をサブシナリオタイマ(scTm)にセットする。なお、各ラインの時間データ(time)は、当該ラインが終了するタイミングを示している。サブシナリオタイマ(scTm)には、絶対時間を記述するが、従って、セットする時間データ値は、(当該ラインの時間データ)−(前回ラインの時間データ)の値である。
当該ラインのBGMのデータは、BGMのフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音データ登録情報における音チャネルaCH0(ステレオの場合は加えてaCH1)にセットされる。
当該ラインの予告音のデータは、予告音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルaCH2〜aCH14の空いているところにセットされる。
当該ラインのエラー音のデータは、エラー音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルaCH15にセットされる。
音コントロールのデータは、下位6バイトでチャネル情報、上位2バイトでコントロール情報とされている。
後述する図41のステップS2033では、シナリオ更新処理及び更新された音データ登録情報に基づいて、再生出力制御が行われる。
なお、音サブシナリオテーブルとモータサブシナリオテーブルは時間(time)の各ラインに対して一体化されたテーブル構造とされてもよい。
以上のようなシナリオデータ構造を用いた演出制御を行う演出制御部24の処理、特にはCPU241の処理の例を図41で説明する。
CPU241は、パチンコ遊技機1本体に対して電源が投入されると図41の処理を開始する。
CPU241は、まずステップS2000で、遊技動作開始前における必要な初期設定処理を行う。例えば初期設定処理として、インターフェース系の初期化、割込設定、外部メモリの初期化、WDT初期化、可動体役物の起点復帰処理及び制御の初期化、音源制御初期化、シリアル出力コントローラの初期化、スケジューラ(シナリオスケジューラ、デバイススケジューラ、ランプスケジューラ、サウンドスケジューラ)の初期化、システムタイマの初期化、液晶制御初期化等を行う。
なお各スケジューラは、上述のシナリオ登録情報、モータデータ登録情報、ランプデータ登録情報、音データ登録情報のこと、もしくはこれらに基づいたシナリオ制御の進行を指す。初期化処理としては、これらシナリオ登録情報等を記憶するワーク領域を初期化する。
ステップS2000の初期設定処理を終えると、CPU241はステップS2001で電源投入時履歴情報初期設定処理を実行する。該初期設定処理は、液晶表示装置36を用いて行われる後述する設定履歴確認画面Gsの表示に必要な情報をRAM243に保持するための処理である。詳細は後述するが、設定履歴確認画面Gsには、設定値Veの変更履歴情報等、所定の履歴情報が表示される(図46参照)。
なお、ステップS2001の電源投入時履歴情報初期設定処理を初めとして、設定履歴確認画面Gsの表示にあたりCPU241が実行する実施形態としての処理については改めて説明する。
CPU241は、ステップS2001の処理を実行したことに応じ、ステップS2002以降の処理を繰り返し行う。
特に本実施形態では、CPU241は、ステップS2002以降の処理を、液晶表示装置36のフレームタイミングを監視しながら実行する。本例では特に表示制御に用いる同期信号であるVブランク信号に基づく制御を行う。
なお、本実施形態では、液晶表示装置36における表示画像の1フレーム期間である1/30秒(33.3ms)の間においてVブランク信号が2回発生される。CPU241は、Vブランク信号に応じてVブランク割込カウンタをカウントアップするため、Vブランク割込カウンタは1/60秒(16.6ms)毎にカウントアップされることになる。
なお当然、CPU241の個々の処理はVブランク信号の周波数よりも極めて高い周波数の処理クロックに基づいて行われる。図41の各処理は、Vブランク信号に応じてフレーム開始から終了までの期間を把握しながら行われるもので、フレーム開始時点では、処理はステップS2004〜S2006が1回行われ、その後はVブランク割込カウンタの値によって1フレーム期間の終了が確認されるまでの期間、ステップS2021〜S2043がくり返し行われる。1フレーム期間の終了を検知した時点でステップS2050〜S2052の処理が行われる。
ステップS2002でCPU241は、演出制御部24が有するWDT回路に対するクリア制御を行う。
続くステップS2003でCPU241は、フレーム更新フラグを確認する。フレーム更新フラグは、スケジューラ更新等をフレーム期間で管理するためのフラグである。
表示データの或るフレームの開始時点ではフレーム更新フラグはオフとされている(フレーム終了時に後述するステップS2052でオフとするため)。
従ってフレーム開始タイミングでは、CPU241はステップS2003からS2004に進む。
ステップS2004でCPU241は、シナリオスケジューラのフレーム更新を行う。これは具体的には、図37Aのシナリオ登録情報の待機時間(delay)、メインシナリオタイマ(msTm)、サブシナリオタイマ(scTm)の更新を行う処理となる。つまりフレーム開始時点で演出シナリオのタイマを1タイミング進める処理ということができる。
そしてCPU241は続くステップS2005でフレーム更新フラグをONにする。これは、現在のフレームにおいてシナリオのタイマ進行を行ったことを示す情報となる。
またCPU241はステップS2006でスケジューラ更新フラグをオフとする。これは、スケジューラ更新、つまりタイマ進行に伴ったシナリオ内容(シナリオ登録情報、ランプデータ登録情報、音データ登録情報)の更新がまだ行われていないことを示す情報となる。
そしてステップS2002に戻る。CPU241はWDT回路のクリアを行った後、ステップS2003ではフレーム更新フラグはONになっているためステップS2020に進むことになる。ここでWDT回路は、CPU241が正常な処理状態であれば逐次リセットされる。
なお、以上のようにフレーム開始タイミング後の最初の1回だけ、ステップS2004〜S2006が行われ、ステップS2004ではシナリオ登録情報のタイマ更新が行われる。演出のためのシナリオは、1フレーム期間である33.3ms毎に進行することになる。例えばメインシナリオタイマ(msTm)は33.3ms毎に進行する。図39のメインシナリオテーブルにおける1行のメインシナリオタイマ(msTm)の時間は、表記する値×33.3msの時間に相当する。また図40のサブシナリオテーブルの時間(time)で示す1行の時間も、表記する値×33.3msの時間に相当する。
CPU241は、ステップS2020ではVブランク割込カウンタの値により処理を分岐する。Vブランク割込カウンタが“2”に達していなければ(つまり“0”又は“1”であれば)、ステップS2021に進む。
Vブランク割込カウンタはステップS2051でフレーム終了時にクリアされると共に、1フレームに2回インクリメントされる。従ってVブランク割込カウンタ=0はフレームの前半期間を、またVブランク割込カウンタ=1はフレームの後半期間を示すことになる。フレーム終了時のVブランク信号でVブランク割込カウンタ=2となる。
CPU241は、Vブランク割込カウンタが“0”又は“1”であるフレーム期間中は、ステップS2021〜S2043を可能な回数、繰り返すようにステップS2020からS2021に進む。
ステップS2021でCPU241は、Vブランク割込カウンタが“0”であるか“1”であるかで処理を分岐する。つまり現在が或るフレーム期間の前半であるか後半であるかである。
現在、Vブランク割込カウンタ=0、つまりフレーム前半であれば、ステップS2022に進んで、主制御部20からの受信コマンドを確認する。つまりコマンド受信バッファに1つ以上の受信コマンドが記憶されているか否かを確認する。受信コマンドがなければステップS2030に進む。
1又は複数の受信コマンドがあればCPU241はステップS2023でコマンド解析処理を行う。
そしてCPU241はステップS2024でスケジューラ更新フラグをオフにする。なお、このステップS2024でスケジューラ更新フラグのオフとすることは、現在のフレーム期間中において、以前に一旦ステップS2031でスケジューラ更新フラグをオンにした後であっても、コマンド受信があった場合は再びオフにするという意味を持つ。
ステップS2023のコマンド解析処理の例を図42、図43で説明する。
上記のようにCPU241は図41のステップS2022で、主制御部20から供給される演出制御コマンドがコマンド受信バッファに格納されているか否かを確認し、演出制御コマンドが格納されていればそのコマンドを図42の処理で読み出すことになる。
演出制御部24には、主制御部20から送信されてきた演出制御コマンドを取り込むコマンド受信バッファが、RAM243に用意される。
CPU241は、まず図42のステップS2101で、コマンド受信バッファの読み出しアドレスを示すリードポインタと、書き込みアドレスを示すライトポインタの確認を行う。
ライトポインタは、コマンド受信に応じて更新され、それに応じてライトポインタで示されるアドレスに、受信した演出制御コマンドが格納されていく。リードポインタは、コマンド受信バッファからの読み出しを行った際に更新(ステップS2102)される。従って、もしリードポインタ=ライトポインタでなければ、まだ読み出していない演出制御コマンドがコマンド受信バッファに格納されているということになる。そこでリードポインタ=ライトポインタでなければステップS2102に進み、CPU241はコマンド受信バッファにおいてリードポインタで示されるアドレスから1バイトのコマンドデータをロードする。この場合、次の読み出し(ロード)のためにリードポインタをインクリメントしておく。
なお、実際には図41のステップS2022の受信コマンドの有無の判断もリードポインタ=ライトポインタであるか否かで行うことができる。実際のプログラムとしては、コマンドチェックの処理に最初に進んだ時点でリードポインタ=ライトポインタであれば、図41のステップS2022で受信コマンド無しと判断されるものとすればよい。
上述したように一つの演出制御コマンドは、モードとしての1バイトとイベントとしての1バイトの2バイトで形成されている。CPU241は図42のステップS2103で、ロードした1バイトのコマンドデータが、モードであるかイベントであるかを確認する。この確認は、8ビット(Bit0〜Bit7)のうちのBit7の値により行われる。
そしてモードであれば、コマンドの上位データ受信の処理として、ステップS2104に進み、読み出したコマンドデータを、レジスタ「コマンドHIバイト」にセーブする。また「コマンドLOバイト」のレジスタをクリアする。そしてステップS2101に戻る。
続いても、リードポインタ=ライトポインタでなければ、まだ読み出していない演出制御コマンドがコマンド受信バッファに格納されていることになるため、ステップS2102に進み、CPU241はコマンド受信バッファにおいてリードポインタで示されるアドレスから1バイトのコマンドデータをロードする。またリードポインタをインクリメントする。
そして読み出したコマンドがイベントであれば、コマンドの下位データ受信の処理として、ステップS2103からS2105に進み、読み出したコマンドデータを、レジスタ「コマンドLOバイト」にセーブする。
モード及びイベントのコマンドデータが、レジスタ「コマンドHIバイト」「コマンドLOバイト」にセーブされることで、CPU241は一つのコマンドを取り込んだことになる。
そこでCPU241はステップS2106で、取り込んだコマンドに応じた処理を行う。具体例は図43で後述する。
リードポインタ=ライトポインタとなるのは、CPU241がまだ取り込んでいない演出制御コマンドがコマンド受信バッファには存在しない場合である。ステップS2101でリードポインタ=ライトポインタを確認したことで図41のステップS2023としてのコマンド解析処理を終了する。
上記のステップS2106におけるコマンド対応処理の例を図43で説明する。
図43Aは、コマンド対応処理としての基本処理を示している。2バイトの演出制御コマンドの受信に応じて、CPU241はまず図43AのステップS2121で、現在テストモード中であるか否かを確認する。テストモード中であれば、ステップS2122ですべての演出シナリオのクリア、音出力の停止、光表示装置45aにおけるLEDの消灯を行う。そしてステップS2123でテストモードを終了する。
テストモード中でなければ、これらの処理は行わない。
そしてCPU241は、ステップS2130において、取り込んだ演出制御コマンドについての処理を行うことになる。
演出制御コマンドとしては、例えば特別図柄の変動パターン指定コマンド、装飾図柄指定コマンド、保留加算コマンド、遊技状態指定コマンド、電源投入コマンド、RAMクリアコマンド、設定変更中コマンド、設定変更終了コマンド、設定確認中コマンド、設定確認終了コマンド、設定値コマンド(本例では少なくとも起動時(図17のS808)や図柄変動開始時(図23のS1411)に主制御部20が送信する)、エラーコマンド(各種エラーの通知コマンド)・・・など多様に設定されている。ステップS2130では、CPU241は、受信したコマンドに対応して、プログラムで規定された処理を行う。ここでは図43B〜図43Eに四つの演出制御コマンドを挙げて、具体的処理を例示する。
図43Bは、ステップS2130でのコマンド処理として、変動パターン指定コマンドを取り込んだ場合の処理S2130aを示している。
この場合、CPU241は、ステップS2131で、装飾図柄指定コマンド待ち状態をセットする処理を行う。これは変動パターン指定コマンドと、装飾図柄指定コマンドが順次受信されることで、CPU241が図柄の変動表示の制御を行うためである。
図43Cは、ステップS2130でのコマンド処理として、図柄指定コマンドを取り込んだ場合の処理S2130bを示している。
この場合、CPU241は、まずステップS2132で、変動パターン指定コマンドを受信済みであるか否かを確認する。受信していなければそのまま処理を終える。
装飾図柄指定コマンドを受信した際に、既に変動パターン指定コマンド受信済みであれば、ステップS2133に進み、まず役物原点補正の動作についてのシナリオ登録を行う。そしてステップS2134で、図柄変動フラグをセットする。図柄変動フラグは、第1特別図柄、第2特別図柄、普通図柄のそれぞれに対応してそれぞれ設けられ、それぞれのフラグで変動状態を表すものとされる。例えば各2ビットの第1特別図柄変動フラグFZ1、第2特別図柄変動フラグFZ2、普通図柄変動フラグFZ3が用意され、それぞれについて変動中、停止中(当り)、停止中(はずれ)が示される。ここでは変動開始に伴い、対応する図柄変動フラグ(FZ1,FZ2,FZ3のいずれか)を、「変動中」を示す値にセットする。
なお図柄変動フラグは、当りの場合は、図柄変動終了時に所定時間「停止中(当り)」を示す値にセットされ、その後、図柄変動が開始されるまで「停止中(はずれ)」を示す値にセットされる。
ステップS2135でCPU241は、変動開始処理を行う。その後、変動開始に応じてステップS2136で変動パターン指定コマンドの削除を行う。
図43Dは、ステップS2130でのコマンド処理として、電源投入コマンドを取り込んだ場合の処理S2130cを示している。
この場合、CPU241は、ステップS2137でRAM243のクリア処理を行う。例えばコマンド受信/送信バッファ、各種操作入力情報バッファの内容等の記憶領域のクリアを行う。
そしてステップS2138でエラー解除コマンドの送信、ステップS2139で役物エラー情報のクリア、ステップS2140で役物動作の停止、ステップS2141で電源投入のシナリオ登録、ステップ2142で液晶制御部40へ送信する電源投入コマンドのセットを順次行う。
図43Eは、ステップS2130でのコマンド処理として、RAMクリアコマンドを取り込んだ場合の処理S2130dを示している。
この場合、CPU241は、ステップS2143でRAM243のクリア処理を行う。例えばコマンド受信/送信バッファ、各種操作入力情報バッファの内容等の記憶領域のクリアを行う。
そしてステップS2144でエラー解除コマンドの送信、ステップS2145でRAMクリアエラーセットと、エラー報知タイマのセットを行う。さらにステップS2146でRAM243における抽選処理に関する情報のクリア、ステップS2147で、シナリオに関する情報のクリアを行う。そしてステップS2148で液晶制御部40へ送信する電源初期投入表示(RAMクリア)コマンドのセットを行う。
以上、コマンド受信に応じた処理の例を説明した。
以上のコマンド受信に応じた処理としての図41のステップ2022〜S2024の処理は、本例ではVブランク割込カウンタ=0の期間のみ実行開始される。
続いてCPU241は、図41のステップS2030でスケジューラ更新フラグを確認して処理を分岐する。ここではスケジューラ更新フラグがオフの場合のみ、ステップS2031〜S2034の処理を行うようにする。
そしてステップS2031でフレーム更新フラグをオンとする。
スケジューラ更新フラグはフレーム開始直後のステップS2006でオフとされるため、現在のフレーム期間で最初にステップS2030の処理に進んだときに、ステップS2031〜S2034の処理を行うことになる。またステップS2024でスケジューラ更新フラグがオフとされるため、コマンド受信があった場合もステップS2031〜S2034の処理を行う。
CPU241はステップS2032でシナリオスケジューラ実行としての処理を行う。これはシナリオ登録情報の更新処理である。例えばシナリオチャネルsCHに登録された情報のうち待機時間(delay)が0のものについて、登録されたデータに対応した処理を実行する。即ちメインシナリオテーブルのうちで指定されたシナリオ番号に応じた処理を行う。メインシナリオ実行ライン(mcIx)、サブシナリオ実行ライン(scIx)、サブシナリオ実行ラインlmp(lmpIx)等の更新も行われる。
ステップS2033でCPU241はサウンドスケジューラ実行及び出力の処理を行う。これは、シナリオテーブルで指定される音サブシナリオに応じた音データ登録情報の更新処理、及び音データ登録情報に基づいた音制御信号の出力処理である。CPU241は演出制御部24が有する音コントローラに対して、現在のシナリオ進行に応じた音出力を実行させる。
ステップS2034でCPU241はランプスケジューラ実行処理を行う。
これはシナリオテーブルで指定されるランプサブシナリオに応じたランプデータ登録情報の更新処理である。
例えばCPU241はランプチャネルdwCH0〜dwCH15のそれぞれについて次の処理を行う。まずメインシナリオタイマ(msTm)とランプサブシナリオテーブルの時間データ(time)を比較する。ランプサブシナリオテーブルの時間データ(time)は、当該ライン(サブシナリオ実行ラインlmp(lmpIx)で示されるライン)が開始される時間を示している。従って、メインシナリオタイマの時間が、時間データ(time)以上となっていたら、そのラインについての処理を行う。
例えばまず、現在のラインが、ランプシナリオデータ終了コードD_LSENDが記述されたラインであるか否かを判断する。ランプシナリオデータ終了コードD_LSENDが記述されたラインではなければ、CPU241は、当該ラインに記述されているランプチャネルdwCH及びランプナンバを取得し、取得したランプチャネルdwCHに点灯パターンナンバの登録を行う。
またそのランプチャネルdwCHに対応する領域に登録点灯ナンバ(lmpNew)と実行点灯ナンバ(lmpNo)をセットする。即ちランプサブシナリオテーブルの当該ラインから取得したランプナンバを、登録点灯ナンバ(lmpNew)にセットし、「0」を実行点灯ナンバ(lmpNo)にセットする。またサブシナリオ実行ラインlmp(lmpIx)の値を+1する。以上により、ランプデータ登録情報としては、実行すべきランプ演出動作が登録された状態に更新される。
なおステップS2034では、以上のようなランプデータ登録情報の更新を行うが、その更新したランプデータ登録情報に基づくランプ駆動データ作成及びランプ駆動データ出力は、後のステップS2041、S2042で行う。
CPU241はステップS2040では、Vブランク割込カウンタの値により処理を分岐する。Vブランク割込カウンタが“0”であればステップS2041〜S2043の処理を実行し、“1”であればこれらの処理を実行しない。
ステップS2041では、CPU241はランプ駆動データの作成を行う。即ちランプデータ登録情報の各ランプチャネルdwCHに登録されている情報に基づいて実際に各種LEDを駆動するドライバに対して出力するランプ駆動データを生成する。
そしてステップS2042で、生成したランプ駆動データが上記のドライバに対して出力されるように制御する。
ステップS2043ではCPU241はキーイベント処理を行う。そしてステップS2002に戻る。
ステップS2041,S2042のランプ駆動データの作成及び出力の処理は、Vブランク割込カウンタ=0のときのみに実行が開始される。即ちフレームの前半の期間のみこれらの処理が開始されることになる。
Vブランク割込カウンタ=2となった後、つまりフレーム期間の終了が検知された場合(S2020:=2)、CPU241はステップS2050以降のフレーム終了時に対応した処理を行う。
まずCPU241はステップS2050で、履歴表示処理を実行する。この履歴表示処理は、前述した設定履歴確認画面Gsを液晶表示装置36に表示させるための処理となる。なお、詳細については後述する説明する。
ステップS2050の表示処理を実行したことに応じ、CPU241はステップS2051でVブランク割込みカウンタをクリアし、次いでステップS2052でフレーム更新フラグをオフとし、ステップS2002に戻る。そして説明してきたように、新たなフレーム期間についての処理を行う。
以上の図41の処理と共にCPU241では、例えば1ms毎の割込処理として図44の処理が実行される。即ち図44の処理は、表示データのフレームタイミングに関わらず1ms毎に実行される処理である。
図44において、CPU241はステップS2200で、WDTパルス生成処理を行う。WDT回路はこのWDTパルスにより1ms毎のカウントを行う。
ステップS2201でCPU241は、モータのセンサ更新処理を行う。これは前述した位置検出センサ82aの情報を検知する処理である。
ステップS2202でCPU241はデバイススケジューラ実行処理を行う。具体的にはモータデータ登録情報の更新を行う。またステップS2203でデバイススケジューラ出力処理として、可動体役物モータ80cのドライバへのモータ駆動データの出力処理を行う。
即ちCPU241は、フレーム期間に比べて約1/30の時間間隔である1ms毎に、モータ動作制御を行っている。
続くステップS2204でCPU241は、キー入力処理を行う。即ち、演出ボタン13等の各種操作子の操作に応じた信号を確認する。
CPU241はステップS2204の処理を実行したことに応じ、図44に示す割込処理を終える。
ここまでCPU241の処理例を説明してきたが、以上の処理例では、CPU241は表示データのフレームに合わせて各種処理を行っている。
図45は表示データのフレーム期間毎の各種タイミングを示している。
表示データの各フレームをフレームFR0、FR1、FR2・・・とする。例えば時点T0〜T1にフレームFR0の表示、時点T1〜T2にフレームFR1の表示が行われる。
Vブランク割込カウンタの値は、図41のステップS2051でクリアされるため、図示のようにフレーム開始時点で“0”、フレーム中間の時点(時点T0m、T1m等)で“1”となり、“2”となった直後にクリアされる。
図中、「SL」はフレーム期間を表し、「SLs」はフレーム期間の開始タイミング(以下「フレーム開始タイミングSLs」と表記)を表す。「CA」は、フレーム前半期間を意味している。
先ず前提として、液晶表示装置36に表示すべき表示データ(フレーム画像データ)の描画処理は、液晶制御部40が演出制御部24(CPU241)からの液晶制御コマンドに基づいて行う。この描画処理は、フレーム期間SL内において、次のフレームの表示データについて実行される。例えばフレームFR1の表示データの描画は、フレームFR0の表示期間である時点T0〜T1内に実行される。
また、液晶制御部40では、描画に用いるデータのプリロードが行われる。このプリロードは、描画のための準備として、描画処理のさらに1フレーム前の期間に実行される。例えばフレームFR2の表示データの描画のためのプリロードは、フレームFR0の表示期間である時点T0〜T1内に実行される。
なお、これら描画処理やプリロードの開始タイミングは、図示のようにフレーム開始タイミングSLsと同期している。
演出制御部24(CPU241)側では、SLで示すフレーム期間中は、くり返しステップS2021〜S2043の処理が行われる。
但し、受信コマンド処理(S2022〜S2024)は、フレーム前半期間CAのみ実行される。これらはVブランク割込カウンタ=0のときのみ実行されるためである。
受信コマンドの解析処理は、図42、図43のような処理となるが、これは比較的処理負担の重い処理となると共に、受信コマンド数によって処理も多くなる。コマンド種類によっては演出のための抽選等も行う必要が生ずる。本実施形態では、このような処理をフレーム前半期間にのみ行うものとしている。
なお、このためコマンド信号に関しては、例えば時点T0m〜T1mとして破線で示す期間に受信されたコマンド信号については、時点T1〜T1mの期間にコマンド解析が行われることになる。
またランプデータ作成/出力処理(S2241〜S2243)もフレーム前半期間CAのみ実行される。これらもVブランク割込カウンタ=0のときのみ実行されるようにしているためである。
[5-2.設定履歴確認画面の表示]
本実施形態のパチンコ遊技機1は、設定値Ve(Vd)に関する操作に係る履歴を設定操作履歴として表示する機能を有する。具体的に、設定操作履歴としては、設定値Veの変更に係る履歴と、設定値Veの確認(設定確認処理)に係る履歴とを表示する。
図46は、設定操作履歴の一表示態様としての設定履歴確認画面Gsの例を示している。
設定履歴確認画面Gsは、演出制御部24の制御に基づき、液晶表示装置36の画面上に表示されるものであり、本例では、図のように設定変更、設定確認それぞれの対象事象について、その内容と発生時点(本例では日時:日付け及び時分による時刻)を表す情報が含まれる。
対象事象の「内容」は、設定変更については、対象事象の種類の名称情報(つまり「設定変更」)と、変更後の設定値Ve(設定変更処理により設定完了された設定値Vdに対応する設定値Ve)の数値情報とが含まれる。設定確認については、対象事象の種類の名称情報(つまり「設定確認」)と、設定確認時における設定値Ve(つまり使用者により確認された設定値Ve)の数値情報とが含まれる。
本例の設定履歴確認画面Gsは、複数のページから成り、具体的には5ページを表示可能とされている。1ページに表示可能な履歴情報は本例では10件とされ、従って最大で50件(10×5件)の履歴情報を表示可能とされている。
本例において、設定履歴確認画面Gsにおけるページの切り替え操作は、十字キー16(図3参照)の操作とされている。例えば、十字キー16うち何れかの方向指示キーを1回押圧操作するごとに、1ページ分のページ送りが行われる。
設定履歴確認画面Gsにおいては、各履歴情報に対して表示番号が付されている。本例の場合、この表示番号は、最新の履歴に対して「1」が割り振られ、最新から過去にかけて昇順に番号が割り振られる。
また、設定履歴確認画面Gsには、現在のページ番号も表示される(図中では「1/5」のように最大ページ数も併せて表記される)。
図46では図示されていないが、本例における履歴表示の対象事象としては、上記した設定変更及び設定確認以外にも、各種のエラーが含まれる。ここでのエラーとしては、例えば扉開放エラー、補給切れエラー、球詰りエラー等、設定値エラー以外の各種エラーがある。
設定履歴確認画面Gsは、所定の状態下において所定操作が行われたことに応じて表示が行われる。具体的に、本例における設定履歴確認画面Gsは、設定確認中(ステップS109の設定確認処理の実行中)において、演出ボタン13が操作されることに応じて表示される。ここで、先の説明から理解されるように、設定確認処理はパチンコ遊技機1の起動時に前枠2が開放され設定キーが操作されたことに応じて実行されるものであり、従って設定履歴確認画面Gsの表示は、このような起動時の前枠2開放状態で行われることが想定されるものである。
図47は、設定確認中において液晶表示装置36に表示される設定確認中画面の例を示している。この設定確認中画面は、演出制御部24(CPU241)が、主制御部20側からの設定確認中コマンド(S704参照)を受信したことに応じて表示を開始させる。
本例の設定確認中画面には、設定確認中である旨をホールスタッフ等の使用者に報知するための情報(図中では「設定確認中」の文字)と共に、設定履歴確認画面Gsの表示にあたり必要とされる操作の案内情報(図中では「設定履歴一覧」の文字、演出ボタン13のアイコンと「で決定」の文字が該当)が表示されている。
ここで、本例では、上記のように設定確認中画面、すなわち設定確認中の報知画面上に設定履歴確認画面Gsの表示のための操作案内を表示しており、該操作案内に従って使用者が所定操作(本例では演出ボタン13の操作)を行ったことに応じて、図46に示した設定履歴確認画面Gsに遷移する。
これは、演出制御部24(CPU241)は、設定確認中の報知画面上に操作案内を表示した状態で設定履歴確認画面Gsの表示指示を受け付けている、と換言することができる。
これにより、設定確認中画面を表示する処理のみで、設定履歴確認画面Gsを表示可能なタイミングと、設定履歴確認画面Gsの表示に必要な操作との二つの情報を使用者に把握させることができる。すなわち、設定履歴確認画面Gsの表示を行う上で使用者への通知が必要とされる情報を提示するにあたっての処理負担軽減が図られるものである。
また、本例の設定履歴確認画面Gsは、保存されている履歴情報の数に拘わらず、全ページに遷移可能とされている。例えば、図46のように保存されている履歴情報の数が「8」であったとしても、ページ切り替え操作に応じて、2ページ目〜5ページ目の全ページを表示可能とされている。換言すれば、履歴情報が存在しない、いわば空のページも含んだ全てのページを表示可能とされているものである。
これにより、パチンコ遊技機1が最大でどの程度の数の履歴を保持及び表示可能であるかを使用者に直感的に把握させることができる。
図48は、設定履歴確認画面Gsの表示にあたり必要とされる履歴表示用情報の例を示している。
この履歴表示用情報は、演出制御部24のCPU241が履歴表示の対象事象の発生ごとに対応する履歴情報をRAM243の所定領域に蓄積していくことで構築される情報である。
RAM243のワーク領域には、履歴表示用情報を格納するための領域(以下「履歴保存領域」と表記)が定められており、CPU241は後述の処理(図52及び図53参照)を実行することで、対象事象の発生ごとに、対応する履歴情報を履歴保存領域に追加していく。
以下、対象事象の発生ごとに一つずつ追加されていく履歴情報のことを「個別履歴情報」と表記する。本例では、最大で50個の履歴を表示可能とされていることから、RAM243における履歴保存領域としては、履歴0〜履歴49の50個の個別履歴情報を格納可能な領域として設定されている。
個別履歴情報としては、図示のように履歴の日時情報の表示に必要となる「年」「月」「時」「分」の情報と、履歴の種類(設定変更、設定確認、又はエラー)を表す「type」の情報と、「data」の情報とを含む。「data」の情報は、「type」が設定変更、設定確認の場合にはそれぞれ設定変更による変更後の設定値Ve、設定確認された設定値Veを表す情報が格納され、「type」の情報が「エラー」である場合にはエラー種別を表す情報が格納される。
履歴表示用情報としては、例えば先頭の領域にチェックサム領域及び最新履歴位置情報の格納領域がそれぞれ設けられ、これらの領域に続く領域が個別履歴情報の格納領域とされている。
チェックサム領域は、個別履歴情報の格納領域全体における記憶情報から計算されるサム値を格納する領域である。なお、このサム値の役割については後述する。
最新履歴位置情報は、RAM243上における最後に追加された個別履歴情報の記憶位置を表す情報である。
ここで、RAM243は情報読み出し速度が比較的速いことから、設定履歴確認画面Gsの迅速な表示にあったては、上記のようにワーク領域に保持された履歴表示用情報を用いることが望ましい。
しかしながら、RAM243は、バックアップ電源が接続されておらず、電源遮断された際に記憶情報を保持し続けることが不能とされている。設定履歴確認画面Gsで表示する設定操作履歴は、例えば数週間や1ヶ月程度等、比較的長い期間にわたっての履歴となることが想定されるものであり、従って、RAM243のみを履歴表示用情報の保存先メモリとしてしまうと、電源遮断が生じるごとに履歴情報が失われてしまい、履歴表示を適正に行うことができなくなってしまう。
そこで本実施形態では、CPU243がアクセス可能なメモリとして、図3に示したメモリ244(つまりパチンコ遊技機1が電源遮断されても記憶情報を保持可能なメモリ)を設け、該メモリ244に対してRAM243のワーク領域に記憶された履歴表示用情報をバックアップ記憶させる。
図49は、実施形態としての履歴表示用情報のバックアップ動作例を説明するための図である。
本例では、メモリ244には履歴表示用情報をバックアップ記憶するための領域として複数の領域が設けられている。具体的には、図中の第一履歴保存領域と第二履歴保存領域の二つの領域が設定されている。
CPU241は、メモリ244におけるこれら第一、第二履歴保存領域のそれぞれに、RAM243の履歴保存領域に記憶された履歴表示用情報をコピーする。
前述のように、設定履歴確認画面Gsが表示可能となるのは設定確認中(つまりパチンコ遊技機1の電源再投入直後の状態)であり、換言すれば、パチンコ遊技機1の電源遮断を介した後である。電源遮断によりRAM243における履歴表示用情報はクリアされる(保持不能となる)ので、CPU241は、自身の起動時において、メモリ244の第一履歴保存領域又は第二履歴保存領域にバックアップされた履歴表示用情報をRAM243の履歴保存領域に書き戻す。これにより、設定履歴確認画面Gsを表示すべき状態となる前に、RAM243に適正な履歴表示用情報が記憶された状態を得ることができる。
その上でCPU241は、設定履歴確認画面Gsの表示を、RAM243に記憶された履歴表示用情報に基づき液晶表示装置36に実行させる。
これにより、設定操作履歴の表示を適正且つ速やかに実行可能な遊技機を実現することができる。
本例では、このようにメモリ244にRAM243における履歴表示用情報のバックアップをとる前提において、上記した第一、第二履歴保存領域等の複数の履歴保存領域を設けて、複数のバックアップをとるものとしている。
このように履歴表示用情報について複数のバックアップをとることにより、メモリ244における記憶データ破損に対する設定履歴確認画面Gsの表示耐性の向上を図ることができる。すなわち、或る履歴保存領域にデータ破損が生じても他の履歴保存領域の履歴表示用情報を用いて設定履歴確認画面Gsを表示可能となるものであり、従って、メモリ244における記憶データ破損に起因して適正な履歴情報表示が不能となる事態の発生可能性を低減することができる。
ここで、本例では、履歴表示用情報のメモリ244へのコピー(バックアップ)は、RAM243における履歴表示用情報に新たな履歴情報(個別履歴情報)が追加されるごとに実行するものとしている。すなわち、対象事象の発生に応じてRAM243の履歴表示用情報に新たな個別履歴情報を追加したことに応じて、該追加後の履歴表示用情報をメモリ244における第一、第二履歴保存領域のそれぞれにコピーする。
例えば、履歴表示用情報のメモリ244へのコピーは一定時間ごとに行うことも考えられるが、その場合、最新の個別履歴情報の追加の直後に不慮の電源遮断(パチンコ遊技機1の電源遮断)が起きてしまうと、最新の履歴がメモリ244の履歴表示用情報に反映されないまま電断されてしまい、次回の起動時に設定履歴確認画面Gsを表示する際、最新の履歴が表示されない事態が起こり得る。
これに対し、上記のように履歴追加ごとにコピーを行うものとすれば、不慮の電断に起因してRAM243とメモリ244との間で履歴の記憶内容が不一致となる事態の発生防止を図ることができ、履歴情報の表示不具合発生を抑制することができる。
なお、個別履歴情報の追加ごとにメモリ244へのコピーを行うことはあくまで一例であり、例えば、パチンコ遊技機1の電源遮断ごとにコピーを行う等、他のタイミングでコピーを行うことも可能である。
図50は、履歴表示用情報における個別履歴情報の追加処理例を示している。
本例では、RAM243における個別履歴情報の格納領域は、個別履歴情報を50個保持可能なリングバッファ領域とされている。
具体的に、図50A中に例示されるように、個別履歴情報として履歴t0〜履歴t49の50個が格納されている状態において、新たに履歴t50としての個別履歴情報を追加すべき状態となったとする。
この状態において、前述した最新履歴位置情報が示す最新履歴位置は、図示のように履歴t49としての個別履歴情報の格納位置とされている。
履歴t50としての個別履歴情報を追加するにあたっては、先ず、図50Bに示すように、CPU241は最新履歴位置を次の位置、すなわち履歴t0の格納位置に更新する。その上で、図50Cに示すように、最新履歴位置が表す個別履歴情報の格納位置に、追加すべき履歴t50の個別履歴情報を記憶する(つまり履歴t0に上書きする)。
これにより、個別履歴情報が最大に保持されている状態で新たな個別履歴情報を追加する際には、最も過去における個別履歴情報が最新の個別履歴情報により上書きされ、結果、履歴表示用データにおける個別履歴情報の格納領域には、最新から過去50個分の個別履歴情報が保持されることになる。すなわち、個別履歴情報の保持数が上限である(表示に必要とされる)50個を超えないように図られている。
本例では、このようにリングバッファの態様により個別履歴情報の記憶が行われた履歴表示用情報に基づいて、設定履歴確認画面Gsの表示が行われることになる。
個別履歴情報がリングバッファの態様により記憶される場合には、最新履歴位置が管理される共に、最新履歴位置を基準した各履歴情報の記憶位置によって各履歴情報の新順又は古順が自ずと把握されることになる。そのため、設定履歴確認画面Gsとして、履歴一覧を新順又は古順に表示する際には、各履歴情報に含まれる時刻情報を参照して各履歴情報の新順、古順を特定する必要がなくなる。すなわち、履歴を新順又は古順に一覧表示する上での処理負担の軽減を図ることができるものである。
ここで、本例では、設定履歴確認画面Gsの表示は、設定確認中であることを条件としてのみ実行されるものであり、設定変更中(ステップS115の設定変更処理中)においては設定履歴確認画面Gsを表示しない。
設定変更中には設定値Veが変更され得るので、設定変更中に設定変更に係る履歴を表示すると使用者の混乱を招く虞があり望ましくない。
設定変更中に設定履歴確認画面Gsを表示しないものとすることで、設定値Veの履歴表示に係る使用者の混乱を招くことの防止を図ることができる。
続いて、上記により説明した実施形態としての設定履歴確認画面Gsの表示に係る動作を実現するための処理について、図51〜図55のフローチャートを参照して説明する。
図51は、電源投入時履歴情報初期設定処理(S2001)のフローチャートである。該処理は、図41で説明した演出制御メイン処理の一部としてCPU241が実行する処理であり、具体的にCPU241は、起動に伴いステップS2000の各種初期設定処理を終えたことに応じて該ステップS2001の処理を実行する。先に述べた通り、ステップS2001の処理は、設定履歴確認画面Gsの表示に必要な情報をRAM243に保持するための処理となる。
図51において、CPU241はステップS2301で、メモリ244における第一履歴保存領域の履歴表示用情報を内部ワーク(RAM243)に転送する処理を行う。ここで、今回の起動よりも以前の段階で履歴表示の対象事象が発生していれば、メモリ244に対しては、後述するステップS2160の履歴情報更新処理が行われることに伴い(図53:特にステップS2406)、第一、第二履歴保存領域のそれぞれに履歴表示用情報が記憶される。ステップS2301の処理では、このようにメモリ244に記憶された履歴表示用情報のうち第一履歴保存領域の履歴表示用情報をRAM243に転送し、履歴保存領域に記憶させる。
続くステップS2302でCPU241は、第一履歴保存領域についてのサム値の異常有無を判定する(チェックサム処理)。すなわち、上記のように第一履歴保存領域からRAM243の履歴保存領域に記憶された履歴表示用情報(以下「第一履歴表示用情報」と表記)について、個別履歴情報の格納領域全体の記憶値からサム値を計算し、該計算したサム値が、第一履歴表示用情報におけるチェックサム領域に記憶されているサム値と一致するか否かを判定する。
チェックサム領域におけるサム値は、履歴表示用情報のメモリ244へのバックアップに際して、ステップS2160の履歴情報更新処理(図53)におけるステップS2405の処理により個別履歴情報の格納領域における記憶値から計算されたものであり、従って、上記ステップS2302のチェックサム処理においてサム値の一致/不一致を判定することで、個別履歴情報の格納領域全体における記憶値がバックアップ時と一致/不一致であるかを判定できるものである。換言すれば、バックアップされた履歴情報の異常有無(例えば不正書き替え等の有無)を判定することができる。
ステップS2302において、サム値が一致する、すなわちサム値が正常であると判定した場合、CPU241はステップS2001の初期設定処理を終える。つまり、メモリ244の第一履歴保存領域にバックアップされた履歴情報が正常であれば、RAM243において第一履歴保存領域の履歴情報が保持された状態が継続される。すなわち、後述するステップ2050の履歴表示処理(図54)は、このようにRAM243に保持された第一履歴保存領域の履歴情報に基づき実行される。
一方、ステップ2302でサム値が一致しない、つまりサム値が異常であると判定した場合、CPU241はステップS2303でメモリ244における第二履歴保存領域の履歴表示用情報を内部ワークに転送する処理を行う。すなわち、第二履歴保存領域の履歴表示用情報をRAM243に転送して履歴保存領域に記憶させる(つまりステップS2301で記憶された第一履歴保存領域の履歴表示用情報に上書きさせる)。
次いで、ステップS2304でCPU241は、第二履歴保存領域についてのサム値の異常有無を判定する。つまり、上記のようにRAM243の履歴保存領域に記憶された第二履歴保存領域の履歴表示用情報(以下「第二履歴表示用情報」と表記)について、個別履歴情報の格納領域全体の記憶値からサム値を計算し、該計算したサム値が、第二履歴表示用情報におけるチェックサム領域に記憶されているサム値と一致するか否かを判定する。これにより、第二履歴保存領域にバックアップされた履歴情報の異常有無を判定することができる。
ステップS2304において、サム値が一致する、すなわちサム値が正常であると判定した場合、CPU241はステップS2001の初期設定処理を終える。つまり、RAM243に記憶された第二履歴保存領域の履歴情報が正常であれば、RAM243において該第二履歴保存領域の履歴情報が保持された状態が継続され、この場合は該第二履歴保存領域の履歴情報に基づいた履歴表示処理(図54)が実行される。
一方、ステップ2304でサム値が一致しない、つまりサム値が異常であると判定した場合、CPU241はステップS2305に進んで履歴表示用情報をクリアし、ステップS2001の初期設定処理を終える。ステップS2305のクリア処理では、RAM243の履歴保存領域に記憶された履歴表示用情報と共に、メモリ244の第一、第二履歴保存領域に記憶された履歴表示用情報もクリアする。
図52は、履歴表示の対象事象の発生に応じて履歴情報を更新するための処理を示したフローチャートである。
本例における対象事象は、設定変更、設定確認、及びエラーの発生であり、CPU241は、主制御部20側からの演出制御コマンドに基づき、これらの事象の発生に応じて履歴情報の更新処理を実行するようにされている。具体的に、設定変更、設定確認については、主制御部20側からの設定変更終了コマンドや設定値コマンド、設定確認中コマンドの受信に応じて履歴情報を更新する(図52A参照)。また、エラーについては、主制御部20側からの各種エラーコマンドの受信に応じて履歴情報を更新(図52B参照)する。
本例では、これら図52A、図52Bの各処理は、先に説明したステップS2130の各コマンド処理(図43参照)の一つとして実行される。
図52Aは、設定変更、設定確認に係るコマンドである設定関連コマンドに対応した設定関連コマンド処理S2130eを示している。
先ず、CPU241はステップS2150〜S2154の処理により、設定確認中コマンド、設定確認終了コマンド、設定変更時コマンド、設定変更中コマンド、設定変更終了コマンドの何れかが受信されているかを確認する。
具体的に、ステップS2150では設定確認中コマンドが受信されたか否かを判定し、設定確認中コマンドが受信されていなければステップS2151で設定確認終了コマンドが受信されたか否かを判定する。設定確認終了コマンドが受信されていなければ、ステップS2152で設定変更時コマンドが受信されたか否かを判定し、設定変更時コマンドが受信されていなければステップS2153で設定変更中コマンドが受信されたか否かを判定する。設定変更中コマンドが受信されていなければ、ステップS2154で設定変更終了コマンドが受信されたか否かを判定する。
ここで、ステップS2150について、設定確認中コマンドには、先の図15で説明したように設定値Veの通知情報が含まれており、本例におけるステップS2150では、設定確認中コマンドとして設定値「1」〜「6」の何れかの通知情報を含むコマンドが受信されたか否かを判定する。つまり、設定確認中コマンドとして、使用範囲Ru内ではなく使用可能範囲Re内の設定値Veを通知するコマンドが受信されたか否かを判定するものである。
また、本例では、ステップS2152の設定変更時コマンドについても、同様に使用範囲Ru内ではなく使用可能範囲Re内の設定値Ve(「1」〜「6」)の何れかを通知するコマンドが受信されたか否かを判定する。
なお、このように設定値Veを通知するコマンドについて、使用範囲Ru内ではなく使用可能範囲Re内の値を通知するコマンドを許容する意義については後述する。
ステップS2150において、設定確認終了コマンド(設定値「1」〜「6」)が受信されたと判定した場合、CPU241はステップS2155で設定確認中シナリオ登録処理を実行し、ステップS2159に進む。
また、ステップS2151で設定確認終了コマンドが受信されたと判定した場合、CPU241はステップS2156で設定確認終了シナリオ登録処理を実行してステップS2159に進み、ステップS2152で設定変更時コマンド(設定値「1」〜「6」)が受信されたと判定した場合はそのままステップS2159に進む。
さらに、ステップS2153で設定変更中コマンドが受信されたと判定した場合、CPU241はステップS2157で設定変更開始シナリオ登録処理を実行してステップS2159に進み、ステップS2154で設定変更終了コマンドが受信されたと判定した場合はステップS2158で設定変更終了シナリオ登録処理を実行してステップS2159に進む。
ステップS2155、S2156、S2157、S2158のシナリオ登録処理が実行されることで、それぞれ設定確認中、設定確認終了、設定変更開始、設定変更終了に応じた演出動作が実行される。
ステップS2159でCPU241は、スペック指定/設定情報コマンドが受信されたか否かを判定する。すなわち、スペック指定コマンド、設定値コマンドの何れかが受信されたか否かを判定する。図示による説明は省略したが、スペック指定コマンドは、主制御部20のCPU201が起動時において送信する遊技機1のスペックを表す情報(例えば、大当りの当選確率や使用する設定値Veの段階数を表す情報等)を通知するためのコマンドとされる。また、設定値コマンドは、CPU201がメインループ前処理におけるステップS808(図17)で送信するコマンドである。
スペック指定コマンドと設定値コマンドは共に上位バイトが遊技機1のスペック情報を表す特定の値とされ、ステップS2159では上位バイトが該特定の値とされたコマンドが受信されたか否かを判定することにより、スペック指定コマンド、設定値コマンドの何れかが受信されたか否かを判定する。
スペック指定コマンド、設定値コマンドの何れも受信されておらず、ステップS2159でスペック指定/設定情報コマンドが受信されていないと判定した場合、CPU241はステップS2130eの設定関連コマンド処理を終える。すなわち、この場合は以降で説明するステップS2163による設定値のRAM243に対する格納処理は実行されない。
一方、スペック指定/設定情報コマンドが受信されたと判定した場合、CPU241はスペック情報をRAM243に格納する。すなわち、受信されたスペック指定コマンド、又は設定値コマンドの上位バイトの値をRAM243のワーク領域における所定領域に格納する。
ステップS2160に続くステップS2161でCPU241は、設定不定であるか否かを判定する。すなわち、受信されたスペック指定/設定情報コマンドが設定値コマンドではなく、スペック指定コマンドであるか否かを判定する。ここで、本例では、スペック指定コマンドの下位バイトは「0FH」であり、設定値コマンドの下位バイトは設定値Veに応じた値とされる。このためステップS2161では、受信されたスペック指定/設定情報コマンドの下位バイトが「0FH」であるか否かにより、スペック指定/設定情報コマンドが設定値コマンドではなく、スペック指定コマンドであるか否か(設定不定であるか否か)を判定する。
下位バイトが「0FH」でなく、設定不定でない(つまり設定値コマンドである)と判定した場合、CPU241はステップS2162に進み、設定情報は使用可能範囲Reか否かを判定する。すなわち、受信された設定値コマンドに含まれる設定値Veの識別データ(図16参照)が示す値が、使用可能範囲Reに対応した「00」〜「05」の範囲内であるか否かを判定する。
上記識別データが示す値が使用可能範囲Re内の値であり、設定情報は使用可能範囲Reであると判定した場合、CPU241はステップS2163で設定値情報をRAM243に格納する。すなわち、上記識別データをRAM243のワーク領域における所定領域に格納する。
ステップS2163の格納処理を実行したことに応じ、CPU241はステップS2164に処理を進める。
一方、ステップS2162で設定情報は使用可能範囲Reでないと判定した場合、CPU241はステップS2163の格納処理をパスしてステップS2164に処理を進める。
また、ステップS2161で設定不定である(つまりスペック指定コマンドである)と判定した場合、CPU241はステップS2162の判定処理、及びS2163の格納処理をパスしてステップS2164に処理を進める。
なお、ステップS2162の判定処理は主制御部20側から受信した設定値Veの異常判定処理として機能し、異常であると判定された場合は設定値VeのRAM243への格納が行われないものとなるが、演出制御部24側において、設定値Veの異常判定として実際の使用範囲Ruではなく使用可能範囲Re内の値であるか否かを判定することの意義については後述する。
ステップS2164でCPU241は、設定変更又は設定確認時であるか否かを判定する。この判定は、例えば、今回の設定値関連コマンド処理(S2130e)で受信があったと判定したコマンドが「設定変更終了コマンド」受信後の初回の「設定値コマンド」か、又は「設定確認中コマンド」であったか否かの判定として行うことができる。
設定変更又は設定確認時であれば、CPU241はステップS2165に進んで履歴種別をセットする。すなわち、新たに追加すべき個別履歴情報について、前述した「type」の値と「data」の値をセットする。具体的に、設定変更時であれば、「type」の値として「設定変更」を表す値を、「data」の値として現在の設定値Ve(設定完了した設定値Ve)を表す値をそれぞれセットする。また、設定確認時であれれば、「type」の値として「設定確認」を表す値を、「data」の値として設定確認された設定値Ve(設定確認中コマンドで通知された設定値Ve)をそれぞれセットする。
ステップS2165のセット処理を実行したことに応じ、CPU241はステップS2166の履歴情報更新処理を実行する。
なお、ステップS2166の履歴情報更新処理については改めて説明する。
ステップS2166に続くステップS2167でCPU241は、設定値情報を液晶側へ送信する処理を実行する。すなわち、設定値コマンドで通知された設定値Veを表す情報を液晶制御部40に送信する処理を行う。これにより、設定変更処理で設定された設定値Ve等、設定値コマンドで通知された設定値Veを液晶表示装置36に表示させることが可能とされる。
ステップS2167の送信処理を実行したことに応じ、CPU241はステップS2130eの処理を終える。
図52Bは、エラーコマンドに対応した処理S2130fを示している。
先ずCPU241はステップS2170で、エラー報知を実行する。すなわち、受信したエラーコマンドから特定されるエラー種類に応じた報知処理(所定の演出手段を用いた報知処理)を実行する。
次いで、CPU241はステップS2171の履歴種別セット処理として、新たに追加すべき個別履歴情報について「type」の値を「エラー」を表す値に、「data」の値をエラー番号(エラー種別を表す値)にそれぞれセットし、ステップS2166の履歴情報更新処理を実行した上で、ステップS2130fの処理を終える。
図53は、ステップS2166の履歴情報更新処理のフローチャートである。該更新処理は、新たに発生した対象事象に応じた個別履歴情報の追加が行われるように、RAM243の履歴表示用情報を更新する処理となる。
先ず、CPU241はステップS2401で、最新履歴位置情報が規定範囲内の値であるか否か(つまり本例では0〜49の範囲内か否か)を判定する。最新履歴位置情報が規定範囲内の値でなければ(つまり50以上であれば)、CPU241はステップS2160の更新処理を終える。すなわち、この場合は最新履歴位置情報に異常が生じているため、履歴表示用情報の更新は行わない。
最新履歴位置情報が規定範囲内の値であれば、CPU241はステップS2402に進み、最新履歴位置情報を次の位置の値に更新する。ここでの最新履歴位置情報の値の更新は、0〜49の範囲内で行い、先の図42の説明から理解されるように、値が「49」であった場合には、次の位置の値として「0」をセットすることになる(つまり0〜49の範囲内で循環的に値をインクリメントする)。
次いでCPU241はステップS2403で、RTC機能部の時間情報(年月日時分)を取得し、ステップS2404で最新履歴位置情報が示す領域に履歴情報を保存する処理を行う。すなわち、取得した時間情報、及び先の図52で説明したステップS2165、S2171のうち該当する処理でセットした「type」「data」の情報とを含む個別履歴情報を最新履歴位置情報が示すRAM243上の記憶領域に記憶させる。
なお、個別履歴情報として、RTCによる時間情報に代えて、電源投入からの通電時間を保存(表示)することも可能である。これにより、RTC機能部を有さない遊技機において、対象事象の発生時間を特定可能な情報を履歴情報として表示することが可能となる。
ステップS2404に続くステップS2405でCPU241は、内部ワークの履歴情報のサム値を算出し、チェックサム領域に保存する処理を行う。すなわち、RAM243における履歴表示用情報について、ステップS2404で新たに追加された個別履歴情報を含んだ個別履歴情報の格納領域全体の記憶値からサム値を計算し、該サム値を該履歴表示用情報におけるチェックサム領域に記憶させる。
さらに、続くステップS2406でCPU241は、内部ワークの履歴表示用情報をメモリ244の第一、第二履歴保存領域に転送する処理を行い、ステップS2160の更新処理を終える。
これにより、新たな個別履歴情報が追加され且つ該個別履歴情報の追加を反映したサム値を含んだ履歴表示用情報がメモリ244の第一、第二履歴保存領域にそれぞれ記憶される。
ここで、上記説明から理解されるように本例では、RAM243に記憶された履歴情報をメモリ244にバックアップする際には、RAM243に記憶された履歴情報からサム値を計算し、該サム値とRAM243に記憶された履歴情報とをメモリ244に記憶させている。
バックアップ情報を異常判定するためのサム値を計算してメモリ244に保存する手法としては、先ずはRAM243に記憶されている履歴情報のみをメモリ244にコピーした後、該コピーによりメモリ244に記憶された履歴情報からサム値を計算し、該サム値をメモリ244に記憶するということも考えられる。しかしながらその場合、RAM243からメモリ244への履歴情報のコピーが一部失敗してしまうと、サム値自体は正しい値となる、すなわちチェックサム処理(S2302又はS2304)では異常無しと判定されるが、実際には不正確な履歴情報がバックアップされている状態となり、履歴情報の表示不具合を誘発する虞がある。
上記の履歴情報及びサム値のコピー手法であれば、メモリ244への履歴情報のコピーが一部失敗した場合には、チェックサム処理で履歴情報が異常有りと判定されることになるので、メモリ244に記憶された履歴情報が設定履歴確認画面Gsの表示に用いられなくすることが可能となるため、不正確な履歴情報が表示されることの防止を図ることができる。
続いて、図54及び図55のフローチャートにより、RAM243に保持された履歴表示用情報に基づく履歴情報の表示のための処理を説明する。
図54は、履歴表示処理(S2050)のフローチャートである。先の図41の説明から理解されるように、この履歴表示処理は、本例では1フレーム期間につき1回実行される。
図54において、CPU241はステップS2501で、設定確認中であるか否かを判定する。設定確認中であるか否かは、前述した設定確認中コマンドの受信有無により判定することができる。
設定確認中でなければ、CPU241はステップS2050の履歴表示処理を終える。前述のように、本例では設定履歴確認画面Gsの表示は設定確認中でのみ行われるべきものとされている。
一方、設定確認中であれば、CPU241はステップS2502で履歴表示中フラグを確認する。この履歴表示中フラグは、後述するステップS2504においてオンにセットされる識別子(初期値はOFFである)であり、オンは履歴表示中であることを、オフは履歴表示中でないことをそれぞれ表す。
設定履歴確認画面Gsの表示開始条件が成立していない段階では履歴表示中フラグはオフであり、従ってCPU241はステップS2502からステップS2503に処理を進める。
ステップS2503でCPU241は、表示指示操作が行われているか否かを判定する。前述のように本例では、設定履歴確認画面Gsの表示指示操作は演出ボタン13の操作とされており、CPU241はステップS2503で演出ボタン13の操作有無を判定する。
なお、これまでのステップS2501〜S2503の説明から理解されるように、CPU241は、設定確認中であることを条件として、設定履歴確認画面Gsの表示指示操作を受け付けるものである。
ステップS2503において、表示指示操作が無ければCPU241はステップS2050の履歴表示処理を終える。
一方、表示指示操作が有れば、CPU241はステップS2504で履歴表示中フラグをセットし(オンとし)、続くステップS2505で表示ページ識別子Pを「0」にセットする。表示ページ識別子Pは設定履歴確認画面Gsの表示ページを識別するための値である。
ステップS2505の処理を実行したことに応じ、CPU241はステップS2508で履歴情報画面作成処理を実行する。そして、ステップS2050の履歴表示処理を終える。
ステップS2508の履歴情報画面作成処理は、表示ページ識別子Pで示されるページについて、そのページの画面表示に必要な情報を液晶制御部40側に送信するための処理となる。すなわち、ステップS2505に続けてステップS2508が実行される場合には、1ページ目(P=0)についての画面表示に必要な情報の送信が行われる。
履歴情報画面作成処理の詳細については図55で後述する。
また、先のステップS2502において、履歴表示中フラグがオンであると判定された場合(つまり既に1ページ目の表示が行われた以降の状態)、CPU241はステップS2506に進み、ページ切替操作の有無を判定する。つまり、本例では十字キー16の何れかの方向指示キーに対する操作があったか否かを判定する。
ページ切替操作があれば、CPU241はステップS2508の履歴情報画面作成処理に進む。
ここで、図55のフローチャートによりステップS2508の履歴情報画面作成処理を説明する。
図55において、先ずステップS2601でCPU241は、履歴表示の先頭位置Idxを算出する。すなわち、これから表示すべきページの先頭位置に表示されるべき個別履歴情報の記憶領域の位置(RAM243上の位置)を先頭位置Idxとして算出する。具体的に、先頭位置Idxは「最新履歴位置−P×α」により計算する(ただしαは1ページあたりの個別履歴情報の表示数:本例では「10」)。例えば、1ページ目(P=0)を表示する際には、先頭位置Idxは「最新履歴位置−0×α」より「最新履歴位置」として求まる。或いは、3ページ目(P=2)を表示する際には、先頭位置Idxは「最新履歴位置−2α」として求まる。
ステップS2601に続くステップS2602でCPU241は、ページ番号をコマンド送信する。すなわち、ページ識別子Pから特定されるページ番号の情報(つまり表示対象ページのページ番号)を液晶制御コマンドにより液晶制御部40に対して送信する。
次いで、CPU241はステップS2603で表示番号を「1」にセットした上で、ステップS2604〜S2610の処理により、表示対象ページの画面表示に必要な情報(具体的には個別履歴情報とその表示番号)を液晶制御部40に送信する。
先ず、ステップS2603に続くステップS2604でCPU241は、先頭位置Idxが示す領域の履歴情報を参照する。すなわち、RAM243の履歴保存領域(履歴表示用情報)における先頭位置Idxが示す領域の記憶情報を参照する。
次いでCPU241はステップS2605で、履歴情報があるか否か、すなわち、先頭位置Idxが示す領域に個別履歴情報が記憶されているか否かを判定する。
個別履歴情報が記憶されており、履歴情報があると判定した場合、CPU241はステップS2606の表示番号のコマンド送信処理を実行し、次いでステップS2607で履歴情報のコマンド送信処理を実行する。すなわち、表示番号、先頭位置Idxが示す領域から取得した個別履歴情報をそれぞれ液晶制御コマンドにより液晶制御部40に送信する。
ステップS2607に続くステップS2608でCPU241は、先頭位置Idxを一つ過去の個別履歴情報の記憶領域に対応した値に更新する(Idx←Idx−1)。この更新処理は、先頭位置Idxの値が0〜49の範囲内で循環的に更新されるように実行する(つまり先頭位置Idxが「0」であったときは「49」に更新する)。
さらに、続くステップS2609でCPU241は、表示番号を1インクリメントし、ステップS2610で1ページ分の送信処理(個別履歴情報及び表示番号の送信)が終了したか否かを判定する。この判定は、例えば表示番号の値がα以上となったか否かの判定として実現することができる。
1ページ分の送信処理が終了していなければ、CPU241は、再びステップS2604〜S2610の処理を実行する。これにより、1ページ分の個別履歴情報が保存されている場合には、1ページ分の送信処理が終了するまで、個別履歴情報とその表示番号との送信処理が繰り返される。保存されている個別履歴情報が1ページ分未満である場合には、保存されている個別履歴情報についてのみ、個別履歴情報の送信とその表示番号の送信が行われる(S2605を参照)。
なお、先頭位置Idxが示す領域に個別履歴情報が保存されていなくても(つまり記憶値が「0」であっても)、そのまま「0」による個別履歴情報を液晶制御部40側に液晶制御コマンドにより送信することもできる。その場合、液晶制御部40側では、そのような「0」による液晶制御コマンドを受信した個別履歴情報については、設定履歴確認画面Gs上に履歴無しを表す表示(例えば図38で例示した「−−−−」の表示)が行われるように表示制御を行う。
この手法によると、ステップS2605の判定処理は不要とすることができる。
また、ステップS2607で液晶制御部40に個別履歴情報を送信する際には、送信対象の個別履歴情報が設定変更についての履歴情報(設定変更履歴情報)であるか否かを判定した上で、設定変更履歴情報である場合には、該履歴情報に含まれる設定値Veの異常確認を行うこともできる。具体的には、設定値Veが使用可能範囲Re外の値であるか否か(「0」〜「5」の範囲外であるか否か)を判定する。
そして、設定値Veが使用可能範囲Re外の値であり、送信対象の個別履歴情報における設定値Veに異常があると認められた場合は、液晶制御部40に対して異常表示の指示情報を送信する。これにより、設定履歴確認画面Gsにおいて、該当する個別履歴情報における設定値Veに異常が認められた旨を表す情報を表示させることができる(例えばエラーを意味する「E」マークの表示等)。すなわち、正常な設定変更履歴でない旨を報知可能となる。
或いは、送信対象の個別履歴情報における設定値Veに異常が認められた場合には、該個別履歴情報に含まれる設定値Veの情報を送信しないものとすることもできる。これにより設定履歴確認画面Gsにおいては、設定値Veに異常が認められた個別履歴情報の設定値Veが表示されないようにすることができ、正常な設定変更履歴でない旨を報知可能となる。
CPU241はステップS2610で1ページ分の送信処理が終了したと判定したことに応じ、ステップS2508の履歴情報画面作成処理を終える。
なお、1ページ分の送信処理が終了した場合は、その旨を表す液晶制御コマンドを液晶制御部40側に送信することもできる。
ここで、液晶制御部40は、上記の処理により送信された各種の液晶制御コマンドを受信したことに応じて、先の図46で例示したような態様による設定履歴確認画面Gsの1ページ分の画面表示が行われるように液晶表示装置36による画像表示動作を制御する。
説明を図54に戻す。
CPU241は、ステップS2506でページ切替操作が行われていないと判定した場合には、ステップS2509で終了指示操作の有無、すなわち設定履歴確認画面Gsの表示終了を指示する操作の有無を判定する。本例では、該終了指示操作は演出ボタン13の操作とされ、従ってCPU241はステップS2509で演出ボタン13の操作有無を判定する。
演出ボタン13が操作されておらず、終了指示操作が行われていないと判定した場合、CPU241はステップS2050の履歴表示処理を終える。前述のようにステップS2050の履歴表示処理は1フレーム期間につき1回行われるものであり、次のフレーム期間では再度ステップS2501以降の処理が実行される。
一方、ステップS2509で終了指示操作が行われたと判定した場合、CPU241はステップS2510で履歴表示中フラグをクリアし(オフとし)、ステップS2511でデモ画面表示コマンドをセットした上で、ステップS2050の履歴表示処理を終える。
なお、ステップS2511の処理は、前述した客待ち待機用のデモ画面表示の実行を液晶制御部40に対して指示するための液晶制御コマンドをコマンドバッファにセットする処理となる。
ここで、上記処理によると、或るページについて個別履歴情報が全く存在しない場合には、液晶制御部40側には、ページ番号が通知されるのみで(S2602)、個別履歴情報やその表示番号の送信は行われない。
液晶制御部40側では、このようにページ番号が送信されたが個別履歴情報や表示番号が送信されなかった場合には、該当するページの画面として、該ページのページ番号情報と、各表示番号ごとに個別履歴情報が存在しない旨の情報(例えば図38の「−−−−」の表記)とを表した画面を液晶表示装置36に表示させる。
これにより、履歴情報が存在しない、いわば空のページも含んだ全てのページを表示可能とされている。すなわち、保存されている履歴情報の数に拘わらず、全ページに遷移可能とされているものである。
なお、個別履歴情報が全く存在しないページについては表示しないこととすることもできる。その場合、CPU241は、表示番号=1の段階でステップS2605(図55)で履歴情報なしと判定したことに応じ、液晶制御部40に対し現在の表示ページPについての画面表示を実行させないように指示を行う等すればよい。
上記した図54、図55の処理から理解されるように、本例では、表示すべき個別履歴情報を液晶制御部40側に送信するとき、個別履歴情報を1つずつ個別に送信するものとしている。
これにより、個別履歴情報をコマンドにより送信することができる。
従って、液晶制御部40側のプログラム設計を容易化できる。
なお、上記では、ページ切替ごとに該当ページの履歴情報を送信する例を挙げたが、最初に全ページ分の履歴情報を液晶制御部40側に送信しておき、ページ切替時には液晶制御部40側にページ切替コマンドを送信して表示ページの切り替えを指示するようにしてもよい。
[5-3.実施形態における設定値のデータ型について]
ここで、演出制御部24のRAM243においては、主制御部20からの設定確認中コマンドや設定値コマンドにより通知された設定値Veを格納する領域(以下「通知設定値格納領域A1」と表記する)と、設定履歴確認画面Gsの表示に必要な個別履歴情報の一部を構成する設定値Veの格納領域(以下「履歴設定値格納領域A2」と表記する)とが個別に設けられている。
そして、本実施形態では、演出制御部24のCPU241の動作プログラムにおいて、通知設定値格納領域A1に格納する設定値Veのプログラム変数(以下「通知設定値Pv1」と表記する)と、履歴設定値格納領域A2に格納する設定値Veのプログラム変数(以下「履歴設定値Pv2」と表記する)の型(データ型)を同じとしている。具体的に本例では、これら通知設定値Pv1と履歴設定値Pv2の型を同じ「符号なし8bit」とすることで、履歴設定値格納領域A2に格納する設定値Veのビット数を、通知設定値格納領域A1に格納する設定値Veのビット数に一致させている。
これにより、通知設定値格納領域A1に格納した設定値Veを履歴設定値格納領域A2に格納する際(図52AのS2163〜S2166を参照)における情報落ちの防止を図ることができる。すなわち、通知設定値Pv1のビット数よりも履歴設定値Pv2のビット数が少ないことにより履歴設定値格納領域A2に通知設定値格納領域A1から取得した設定値Veを適正に格納できなくなる事態の発生防止を図ることができ、設定履歴情報として正確な情報が表示されるように図ることができる。
図56は、上記のような「符号なし8bit」で表現可能な設定値Veの数値を例示している。
8ビットとすることで、図示のように設定値Veとして「1」〜「6」の6値を表現できると共に、「6」よりも大きな値、換言すれば使用可能範囲Re外の異常値を表現することが可能とされる。
つまり、本実施形態では設定値Veとして使用可能範囲Reの値以外の異常値の記憶も可能としているものであり、これにより異常が生じた際に、その原因特定が容易となるように図られている。
[5-4.設定示唆演出]
演出制御部24は、現在の設定値Veを遊技者に示唆する設定示唆演出を現出させるための制御を実行可能に構成されている。
本例の演出制御部24は、このような設定示唆演出として以下で説明するような左図柄による示唆演出、ミニキャラ予告による示唆演出、大当り終了時の示唆演出、SU(ステップアップ)予告による示唆演出を現出させるための制御を行う。
(左図柄による示唆演出)
先ずは、左図柄による示唆演出について説明する。ここで言う左図柄は、液晶表示装置36に表示される「左」「中」「右」の装飾図柄のうち「左」の装飾図柄を意味するものである。
図57は、左図柄の内容を抽選するための左図柄抽選処理を示したフローチャートである。
先ず、演出制御部24のCPU241は、ステップS2701で特殊モード1であるか否かを判定する。すなわち、遊技のモードが「特殊モード1」としての所定のモードであるか否かを判定する。
特殊モード1でない場合、CPU241はステップS2702で特殊モード2であるか否かを判定し、特殊モード2でなければステップS2703で連続リーチ先読み(先読み後から当該変動に向けて装飾図柄の表示を所定態様に制御する先読み演出)に当選しているか否かを判定する。
ステップS2703において、連続リーチ先読みに当選していなければ、CPU241はステップS2705の設定値情報取得処理として、RAM243の所定領域(上述した通知設定値格納領域A1)に格納されている設定値Veを取得する処理を実行し、ステップS2706で設定値情報に基づいてオフセットテーブルからオフセット値を取得する処理を行い、続くステップS2707で抽選値に基づいて左図柄の内容を決定する。
ここで、図58は、ステップS2707で用いる左図柄抽選テーブルの例を示しており、図59は、ステップS2706で用いる左図柄抽選用オフセットテーブルの例を示している。なお、これらのテーブルはROM242の所定領域にそれぞれ格納されている。
図58に示すように、左図柄抽選テーブルにおいては、抽選対象とされる図柄内容(本例では図柄0〜図柄9の10種の図柄内容)ごとの当選確率が、「1」〜「6」の設定値Veごとに定められている。なお、図中では当選確率を表す値として抽選用の乱数が0〜9999の10000通りの値をとり得ることを前提とした場合における振り分け値により表しているが、先の図29や図30の場合と同様、実際には抽選用乱数に対する閾値が格納される。なお、この点については、後の図63、図65、図68、図72、図74に示す各テーブルにおいても同様である。
図59に示す左図柄抽選用オフセットテーブルにおいては、「1」〜「6」の設定値Veごとに、対応するオフセット値が格納されている。具体的に、設定値Ve「1」に対しては「0」、設定値Ve「2」に対しては「1」、設定値Ve「3」に対しては「2」、設定値Ve「4」に対しては「3」、設定値Ve「5」に対しては「4」、設定値Ve「6」に対しては「5」が格納されている。
図57のステップS2706では、図59に示す左図柄抽選用オフセットテーブルに従って、ステップS2705で取得した現在の設定値Veに対応するオフセット値を取得する。そして、ステップS2707では、図58に示す左図柄抽選テーブルにおける設定値Veごとの抽選テーブルのうち、ステップS2706で取得したオフセット値で特定される位置(アドレス)の抽選テーブルを選択する。具体的に、オフセット値が「0」であれば左図柄抽選テーブルにおける最上部に位置する(つまり番号の最も若いアドレスに格納された)設定値「1」の抽選テーブルを、オフセット値が「1」であれば左図柄抽選テーブルにおける上から2番目に位置する設定値「2」の抽選テーブルを、オフセット値が「2」であれば左図柄抽選テーブルにおける上から3番目に位置する設定値「3」の抽選テーブルを選択するといったように、オフセット値で特定される位置に格納されている抽選テーブルを選択する。
上記した一連の処理により、現在が第一特殊モード、第二特殊モードの何れにも該当せず、且つ連続リーチ先読みに非当選の状態であれば、設定値Veに基づく当選確率により左図柄の内容が抽選される。換言すれば、設定値Veによって左図柄の図柄0〜9の出現率が異なるものとされ、これにより左図柄の特定の図柄内容の出現率によって設定値Veの種別を遊技者に示唆する設定示唆演出が実現される。
図57に示すように、ステップS2701で第一特殊モードであると判定した場合、CPU241はステップS2702〜S2708の処理をパスし、一連の処理を終える。つまり、第一特殊モード下では左図柄の図柄内容の抽選は行われない。
また、ステップS2702で第二特殊モードであると判定した場合、ステップS2703で連続リーチ先読みに当選していると判定した場合のそれぞれにおいて、CPU241はステップS2704に進み、設定値Veを参照せずにオフセットテーブルからオフセット値を取得し、ステップS2707のテーブル選択処理に進む。つまりこの場合は、左図柄抽選用オフセットテーブルにおける「0」のオフセット値を取得し(S2704)、左図柄抽選テーブルから設定値Ve「1」に対応した抽選テーブルを選択する(S2707)ことになる。従って、第二特殊モード下、連続リーチ先読み当選状態下では、設定値Veに依らない固定の当選確率により左図柄の図柄内容の抽選が行われる。換言すれば、左図柄を用いた設定示唆演出は行われないものである。
なお、上記のように本例では連続リーチ先読み当選状態下で左図柄を用いた設定示唆演出を行わないが、これにより、左図柄抽選処理で当選した左図柄の図柄内容が、連続リーチ先読みで選択された左図柄の図柄内容と整合しなくなってしまうことの防止を図ることが可能とされている。
図60は、左図柄抽選処理の別例を示したフローチャートである。
先ず、この別例においては、ROM242に格納される左図柄抽選用オフセットテーブルとして、図61に示すテーブルが用意されている。すなわち、図59に示したものと同内容のテーブルが第一左図柄抽選用オフセットテーブルとして格納されると共に(図61A)、第一左図柄抽選用オフセットテーブルとは異なる第二左図柄抽選用オフセットテーブルが格納されている(図61B)。
第二左図柄抽選用オフセットテーブルにおいては、「1」〜「6」の設定値Veに対し同一のオフセット値(本例では「2」)が格納されている。
図60に示す左図柄抽選処理は、第二特殊モード時、連続リーチ先読み当選時のそれぞれで実行される処理として、図57に示したステップS2704の処理に代えてステップS2710及びS2711の処理を実行する点が異なる。
この場合のCPU241は、ステップS2710の設定値情報取得でRAM243の所定領域に格納されている設定値Veを取得し、続くステップS2711で設定値情報に基づいて第二オフセットテーブルからオフセット値を取得し、ステップS2707の抽選テーブル選択処理に進む。
ステップS2711で取得されるオフセット値は設定値Veに拘わらず同一値となるための、この場合のステップS2707の選択処理では、設定値Veに依らず同一の抽選テーブルが選択されることになる。
なお、この別例において、ステップS2706ではオフセットテーブルとして図61Aに示す第一左図柄抽選用オフセットテーブルを用いる。
このように、第二特殊モード時、連続リーチ先読み当選時に対応して設定値Veに依らない左図柄抽選を行うための手法としては、設定値Veを参照せずに固定のオフセット値を取得する手法に限定されず、図61Bのように各設定値Veに同一のオフセット値を格納したオフセットテーブルを参照し、設定値Veに依らず同一の抽選テーブルが選択されるようにする手法を採ることもできる。
(ミニキャラ予告による示唆演出)
図62は、CPU241が実行するミニキャラ予告抽選処理のフローチャートである。
先ず前提として、本例の遊技機1では、ミニキャラ予告演出として第一ミニキャラ予告演出と第二ミニキャラ予告演出の2種を現出可能とされている。なお、第一ミニキャラ予告演出と第二ミニキャラ予告演出について、予告演出を現出させるか否か自体の抽選処理は図62に示す処理とは別処理で既に実行されているとする。
本例では、第一ミニキャラ予告演出については設定値Veを示唆する演出とはせず、第二ミニキャラ予告演出として設定値Veを示唆する演出を現出可能としている。
図62において、CPU241はステップS2801で、ミニキャラ予告演出に当選しているか否かを判定する。ミニキャラ予告演出に当選していなければ、CPU241は以下で説明する一連の処理は実行せず、図62のミニキャラ予告抽選処理を終える。
ミニキャラ予告演出に当選していれば、CPU241はステップS2802で当選内容が第一ミニキャラ予告であるか否かを判定する。
第一ミニキャラ予告演出に当選しており、当選内容が第一ミニキャラ予告であると判定した場合、CPU241はステップS2803の変動パターン情報取得処理として、主制御部20より受信した変動パターン指定コマンドに含まれる変動パターン情報を取得する処理を行った上で、ステップS2804で当選した変動パターンに基づいてオフセットテーブルからオフセット値を取得し、続くステップS2805でオフセット値に基づいて抽選テーブルを選択する処理を行う。
図63は、ステップS2805で用いる第一ミニキャラ予告抽選テーブルの例を示しており、図64は、ステップS2804で用いる第一予告用オフセットテーブルの例を示している。なお、これらのテーブルはROM242の所定領域にそれぞれ格納されている。
図64に示す第一予告用オフセットテーブルにおいては、短変動パターン(図中「短変P」)、リーチ変動パターン(図中「リーチ変P」)、スーパーリーチ変動パターン(図中「SPリーチP」)ごとにオフセット値が定められている。本例では、短変動パターンは前述した「通常変動4s」「通常変動6s」「通常変動8s」「通常変動12s」が該当し、リーチ変動パターンは前述した「ノーマルリーチ」が該当し、スーパーリーチ変動パターンは前述した「スーパーリーチ1」「スーパーリーチ2」「スーパーリーチ3」「スーパーリーチ4」が該当し、図示のように短変動パターンには0、リーチ変動パターンには1、スーパーリーチ変動パターンには2のオフセット値がそれぞれ定められている。
図63の第一ミニキャラ予告抽選テーブルにおいては、第一ミニキャラ予告の内容ごとに当選確率の振り分けを定めた抽選テーブルが複数用意されている。本例では、第一ミニキャラ予告の内容としては「なし」「保留変化説明」「強予告説明」「確変モード説明」「キャラ紹介」の5種が用意されており、抽選テーブルとしては、これらの内容に対する当選確率の振り分けを定めたテーブル1〜テーブル3の3種のテーブルが用意されている。
図62において、ステップS2804の取得処理では、取得した変動パターン情報から特定される、当選した変動パターンの情報に基づいて図64に示す第一予告用オフセットテーブルからオフセット値が取得され、ステップS2805の選択処理では、該オフセット値に基づいて、図63に示す第一ミニキャラ予告抽選テーブルから抽選テーブルが選択される。具体的に本例では、当選した変動パターンが短変動パターンでオフセット値として0が取得された場合は、テーブル1が選択される。また、当選した変動パターンがリーチ変動パターンでオフセット値として1が取得された場合はテーブル2が選択され、当選した変動パターンがスーパーリーチ変動パターンでオフセット値として2が取得された場合はテーブル3が選択される。
ステップS2805に続くステップS2806でCPU241は、選択値に基づいて第一ミニキャラ予告の内容を決定し、図62に示すミニキャラ予告抽選処理を終える。すなわち、テーブル1〜3のうち選択したテーブルにおける振り分け値に従って第一ミニキャラ予告の内容を決定する。
このように、第一ミニキャラ予告演出については、設定値Veに応じた演出とはされず、変動パターンに応じた演出とされる。
また、CPU241は、先のステップS2802で当選内容が第一ミニキャラ予告でないと判定した場合には、ステップS2807で設定変更情報を取得し、続くステップS2808で設定変更されたか否かを判定する。すなわち、前述した設定履歴確認画面Gsの表示のために記憶された個別履歴情報のうち最新の個別履歴情報を取得し、該個別履歴情報における「type」の情報が「設定変更」であるか否かを判定する。
ステップS2808において、該「type」の情報が「設定変更」ではなく、設定変更がされていないとの否定結果を得た場合、CPU241はステップS2809に進んで設定値情報取得処理を実行した上で、ステップS2810で設定値情報に基づいてオフセットテーブルからオフセット値を取得し、続くステップS2811でオフセット値に基づいて抽選テーブルを選択する処理を行い、ステップS2820で抽選値に基づいて第二ミニキャラ予告の内容を決定する。
図65は、ステップS2811で用いる第二ミニキャラ予告抽選テーブルの例を示しており、図66は、ステップS2810で用いる第二予告用オフセットテーブルの例を示している(なお、これらのテーブルとしてもROM242の所定領域にそれぞれ格納されている)。
図66に示す第二予告用オフセットテーブルにおいては、設定値Veごとにオフセット値が定められている。本例の第二予告用オフセットテーブルでは、オフセット値は、設定値Ve「1」〜「6」に対してのみでなく、「上げ用」「下げ用」としての値に対しても設定されているが、これについては後述する。
図65の第二ミニキャラ予告抽選テーブルにおいては、第二ミニキャラ予告の内容ごとに当選確率の振り分けを定めた抽選テーブルが複数用意されている。本例では、第二ミニキャラ予告の内容としては「なし」「ゲーム性説明」「設定示唆説明1」「設定示唆説明2」「設定示唆説明3」「設定示唆説明4」「設定示唆説明5」の7種が用意されており、抽選テーブルとしては、これらの内容に対する当選確率の振り分けを定めたテーブルが、設定値Ve「1」〜「6」及び「上げ用」「下げ用」のそれぞれに対応して計8種用意されている。
図62において、ステップS2810の取得処理では、図66に示す第二予告用オフセットテーブルより、ステップS2809で取得した設定値Veに応じたオフセット値が取得され、ステップS2811の選択処理では、該オフセット値に基づいて、図65に示す第二ミニキャラ予告抽選テーブルから抽選テーブルが選択される。
そして、ステップS2811に続くステップS2820の決定処理では、選択した抽選テーブルに従って第二ミニキャラ予告の内容を決定する処理が行われる。
また、CPU241は先のステップS2808において、前述した「type」の情報が「設定変更」であり設定変更されたとの肯定結果を得た場合には、ステップS2812に進んで前回と今回の設定値情報を取得し、続くステップS2813で設定値は前回よりも上か否かを判定する。
すなわち、「type」の情報が「設定変更」である個別履歴情報のうち前回の設定変更時に記憶された個別履歴情報に含まれる設定値Veの情報と、RAM243の「通知設定値格納領域A1」に格納されている設定値Veの情報とを取得し、後者の設定値Veの方が前者の設定値Veよりも大きいか否かを判定する。
ステップS2813において、最新の設定値Veの方がその前の設定値Veよりも大きくなく、設定値は前回よりも上ではないとの否定結果を得た場合、CPU241はステップS2814に進んで第一選択値を取得し、続くステップS2815で第一選択値に基づいてオフセットテーブルからオフセット値を取得する。すなわち、図66の第二予告用オフセットテーブルからオフセット値を取得する。ここで、第一選択値は、図66に示す「下げ用」に対応したアドレスを選択するための値であり、従って上記のステップS2814及びS2815の処理が実行されることで、第二予告用オフセットテーブルから「下げ用」に対応したオフセット値が取得される。
そして、ステップS2815に続くステップS2816でCPU241は、オフセット値に基づいて抽選テーブルを選択する、すなわち、図65の第二ミニキャラ予告抽選テーブルから「下げ用」に対応したテーブルを選択する処理を実行し、ステップS2820の決定処理に進む。
これにより、設定値Veを下げる設定変更が行われた場合の第二ミニキャラ予告演出については、その内容が「下げ用」の抽選テーブルに基づき決定される。
一方、ステップS2813において、設定値が前回よりも上であるとの肯定結果を得た場合、CPU241はステップS2817に進んで第二選択値を取得し、続くステップS2818で第二選択値に基づいてオフセットテーブルからオフセット値を取得する。第二選択値は、図66に示す「上げ用」に対応したアドレスを選択するための値であり、従って上記ステップS2817及びS2818の処理が実行されることで、第二予告用オフセットテーブルから「上げ用」に対応したオフセット値が取得される。
そして、ステップS2818に続くステップS2819でCPU241は、オフセット値に基づいて抽選テーブルを選択する、すなわち、図65の第二ミニキャラ予告抽選テーブルから「上げ用」に対応したテーブルを選択する処理を実行し、ステップS2820の決定処理に進む。
これにより、設定値Veを上げる設定変更が行われた場合の第二ミニキャラ予告演出の内容は、「上げ用」の抽選テーブルに基づき決定される。
図65の抽選テーブルによると、本例では、予告内容「なし」「ゲーム性説明」「設定示唆説明1」「設定示唆説明2」「設定示唆説明3」の当選確率は「上げ用」と「下げ用」の間で同一されているが、「設定示唆説明4」「設定示唆説明5」については「上げ用」と「下げ用」の間で当選確率が異なるものとされている。「設定示唆説明4」については、設定値Ve「1」〜「6」及び「下げ用」の当選確率が全て「0」とされる一方、「上げ用」の当選確率が「0」以外、具体的に本例では「1000/10000」とされており、従って「設定示唆説明4」は「上げ用」の場合にのみ現出し得る予告内容とされている。また、「設定示唆説明5」については、設定値Ve「1」〜「6」及び「上げ用」の当選確率が全て「0」とされる一方、「下げ用」の当選確率が「0」以外(本例では「1000/10000」)とされており、従って「設定示唆説明5」は「下げ用」の場合にのみ現出し得る予告内容とされている。
図62において、CPU241は、ステップS2820の決定処理を実行したことに応じ、ミニキャラ予告抽選処理を終える。
ここで、上記したステップS2813で設定値が前回よりも上であるか否かを判定するにあたっては、RAM243における「履歴設定値格納領域A2」に格納された設定値Veと「通知設定値格納領域A1」に格納された設定値Veを比較するが、このとき、RAM243に対しては、「履歴設定値格納領域A2」とは別途に、前回の設定値Veを格納しておくための領域(「前回設定値格納領域A3」)を設けるようにしてもよい。
この場合、メモリ244には、設定履歴情報とは別途に前回の設定値Veを記憶させるようにし、例えば、遊技機1の電源遮断時に、「通知設定値格納領域A1」の値をメモリ244に書き込み、電源投入時に、メモリ244に書き込んだ該値を、「前回設定値格納領域A3」に読み出すように構成することもできる。
そして、演出の抽選に関しては、「前回設定値格納領域A3」と「通知設定値格納領域A1」の値を比較することで、上げ/下げを判断する。
なお、ステップS2813において、前回と今回の設定値Veが同値であった場合には、「通知設定値格納領域A1」に格納された今回の設定値Veをオフセットとして第二ミニキャラ予告抽選テーブルを参照することが考えられる。
(大当り終了演出による示唆演出)
図67は、CPU241が実行する大当り演出抽選処理のフローチャートである。
図67に示す抽選処理は、ラウンド遊技が規定ラウンド数実行されたことに応じて現出される大当り終了INT(インターバル)演出の内容を設定値Veに基づき抽選する処理とされる。具体的には、大当り終了INT演出における背景画像の抽選を行う。
なお、ここでは説明上、当りの種別が「3R確変」「9R確変」「3R時短」の三種とされた場合を前提とする。
先ず、CPU241はステップS2901で、当りの種別が「3R確変」であるか否か否かを判定する。当りの種別は、主制御部20より送信される例えば装飾図柄指定コマンドによって通知される。
当りの種別が「3R確変」でなければ、CPU241はステップS2902に進み当りの種別が「9R確変」であるか否かを判定し、当りの種別が「9R確変」でなければ図67に示す大当り演出抽選処理を終える。すなわち、当りの種別が「3R時短」の場合には大当り終了INT演出による設定示唆は行わない。
ステップS2901で当りの種別が「3R確変」であった場合と、ステップS2902で当りの種別が「9R確変」であった場合のそれぞれにおいて、CPU241はステップS2903に処理を進めて確変中であるか否かを判定する。これは、今回の当りが連荘としての当りであるか否か(初当りではないか否か)を判定していることに相当する。
確変中でない、すなわち初当りであると判定した場合、CPU241はステップS2904に進んで設定値情報取得処理を実行した上で、ステップS2905で設定値情報に基づいて第一オフセットテーブルからオフセット値を取得し、続くステップS2906でオフセット値に基づいて抽選テーブルを選択する処理を行う。さらに、CPU241はステップS2910に進み、抽選値に基づいて大当り終了INT中の示唆要素を決定する。
図68は、ステップS2906で用いる大当り終了INT示唆要素を抽選するための抽選テーブル(以下「大当り終了INT示唆要素テーブル」と表記)の例を示しており、図69は、ステップS2905で用いる第一オフセットテーブルの例を示している(なお、これらのテーブルとしてもROM242の所定領域にそれぞれ格納されている)。
図69に示す第一オフセットテーブルにおいては、設定値Veごとにオフセット値が定められている。具体的には、図示のように設定値Ve「1」〜「6」に対して「0」〜「5」のオフセット値が定められている。
図68の大当り終了INT示唆要素テーブルにおいては、大当り終了INT演出の内容ごとに当選確率の振り分けを定めた抽選テーブルが複数用意されている。本例では、設定示唆には大当り終了INT演出における背景画像が用いられ、図示のように「なし(所定の背景画像がなし)」及び「背景1」〜「背景12」の計13種の内容が用意されており、抽選テーブルとしては、これらの内容に対する当選確率の振り分けを定めたテーブルが複数用意されている。
本例の大当り終了INT示唆要素テーブルにおいては、これらの抽選テーブルとして、設定値Ve「1」〜「6」の各々に対する振り分けを定めた六つが上層側から順に格納され、その下層側に対し、さらに設定値Ve「1」〜「6」の各々に対する振り分けを定めた六つが格納されている。上層側の六つの抽選テーブルは、初当り時に対応した設定値Veごとの振り分けを定めたテーブルとされ、下層側の六つの抽選テーブルは連荘時に対応した設定値Veごとの振り分けを定めたテーブルとされる。
図67において、ステップS2905の取得処理では、図69に示す第一オフセットテーブルより、ステップS2904で取得した設定値Veに応じたオフセット値が取得され、ステップS2906の選択処理では、該オフセット値に基づいて、図68に示す大当り終了INT示唆要素テーブルから抽選テーブルが選択される。このとき、第一オフセットテーブルでは設定値Veに対するオフセット値が「0」〜「5」の範囲とされるため、ステップS2906の選択処理では、大当り終了INT示唆要素テーブルにおける上層側六つのうちから抽選テーブルが選択される。つまりこれにより、初当り時に対応した抽選テーブルのうちから、設定値Veに応じた抽選テーブルが選択される。
ステップS2906に続き実行されるステップS2910の決定処理では、選択した抽選テーブルに従って大当り終了INT中の示唆要素としての背景(なしの場合もある)を決定する処理が行われる。
また、先のステップS2903において、確変中である、すなわち連荘時であると判定した場合、CPU241はステップS2907に進んで設定値情報取得処理を実行した上で、ステップS2908で設定値情報に基づいて第二オフセットテーブルからオフセット値を取得し、続くステップS2909でオフセット値に基づいて抽選テーブルを選択する処理を行い、ステップS2910の決定処理を実行する。
図70は、ステップS2908で用いる第二オフセットテーブル(該第二オフセットテーブルとしてもROM242の所定領域に格納されている)の例を示している。
図示のように第二オフセットテーブルにおいては、設定値Ve「1」〜「6」に対して「6」〜「11」のオフセット値が定められている。
このため、ステップS2908の取得処理では、大当り終了INT示唆要素テーブルにおける下層側六つのうちから抽選テーブルが選択され、つまりは、連荘時に対応した抽選テーブルのうちから設定値Veに応じた抽選テーブルが選択される。
ステップS2909に続き実行されるステップS2910の決定処理では、ステップS2909で選択した抽選テーブルに従って大当り終了INT中の示唆要素としての背景(なしの場合もある)を決定する処理が行われる。
図68に示すように本例では、上層側に格納された初当り時に対応した抽選テーブルについては、背景7〜背景12に対する振り分け値を0としており、また下層側の連荘時に対応した抽選テーブルについては背景1〜背景6に対する振り分け値を0としている。これにより、連荘時には背景1〜6を現出させず(設定示唆要素としては現出させず)、初当り時には背景7〜12を現出させないものとしている。
CPU241は、ステップS2910の決定処理を実行したことに応じて図67に示す大当り演出抽選処理を終える。
ここで、上記のように共通の設定値Veに対しそれぞれ異なるオフセット値を定めたオフセットテーブル(図69、図70)を設け、条件に応じてそれらオフセットテーブルを使い分けて図68のような大当り終了INT示唆要素テーブルを用いた抽選を行うことで、設定示唆要素の抽選として、条件ごとに異なる抽選を行うにあたり、テーブルの参照処理を共通処理とすることができ、プログラム容量の削減を図ることができる。
(SU予告による示唆演出)
続いて、図71〜図77を参照してSU予告による示唆演出について説明する。
SU予告演出は、遊技者にとって有利な状態である有利状態に制御する可能性を報知する予告演出の一種であり、1段階から複数段階の予告ステップを有する演出とされる。換言すれば、段階を有する段階予告演出である。
本例では、SU予告演出の内容、具体的には背景画像を利用して設定値Veを示唆する演出を現出可能とする。
図71は、CPU241が実行するSU予告抽選処理のフローチャートである。
先ず、CPU241はステップS3001の変動パターン情報取得処理として、例えば前述した装飾図柄指定コマンドに基づき当選した変動パターンの情報を取得する処理を行う。次いで、CPU241はステップS3002で、当選した変動パターンに基づいてオフセットテーブルからオフセット値を取得した上で、ステップS3003でオフセット値に基づいて抽選テーブルを選択し、ステップS3004で抽選値に基づいてSU段階と内容を決定する処理を行う。
図72は、ステップS3003の選択処理で用いるSU演出テーブルの例を示し、図73はステップS3002の取得処理で用いるSU段階抽選用オフセットテーブルの例を示している(これらのテーブルとしてもROM242の所定領域にそれぞれ格納されている)。
図73に示すSU段階抽選用オフセットテーブルにおいては、先の図64に示した第一予告用オフセットテーブルと同様に、短変動パターン(「短変P」)、リーチ変動パターン(「リーチ変P」)、スーパーリーチ変動パターン(「SPリーチP」)ごとにオフセット値が定められており、本例では、短変動パターンには0、リーチ変動パターンには1、スーパーリーチ変動パターンには2のオフセット値がそれぞれ定められている。
図72のSU演出テーブルにおいては、SU予告演出に係る抽選対象ごとに当選確率の振り分けを定めた抽選テーブルが複数用意されている。本例では、SU予告演出「なし」としての抽選対象と、SU1(白枠)、SU2(白枠)、SU3(白枠)、SU4(キャラA)、及びSU5(キャラB)としての各抽選対象のそれぞれに対する振り分け値を定めた抽選テーブルが3種用意されている(図中「テーブル1」「テーブル2」「テーブル3」)。ここで、SU段階を表すSU1〜SU5の後に付した(白枠)等の括弧書きは、SU予告演出の内容、具体的には背景画像の種別を意味しており、例えば(白枠)は白枠を伴う背景画像を、また(キャラA)や(キャラB)はそれぞれ特定キャラの画像を含む背景画像を意味する。
SU演出テーブルにおいては、上層側から順に「テーブル1」「テーブル2」「テーブル3」が格納されている。
図71において、ステップS3002の取得処理では、当選した変動パターンの情報に基づいて図73に示すテーブルからオフセット値が取得され、ステップS3003の選択処理では、該オフセット値に基づいて図72に示すテーブルから抽選テーブルが選択される。具体的に本例では、当選した変動パターンが短変動パターンでオフセット値として0が取得された場合は、テーブル1が選択される。また、当選した変動パターンがリーチ変動パターンでオフセット値として1が取得された場合はテーブル2が選択され、当選した変動パターンがスーパーリーチ変動パターンでオフセット値として2が取得された場合はテーブル3が選択される。
そして、ステップS3003に続くステップS3004でCPU241は、このようにテーブル1〜テーブル3のうちから選択したテーブルの格納値(抽選値)と、抽選用の乱数値とに基づいてSU予告演出「なし」、SU1(白枠)、SU2(白枠)、SU3(白枠)、SU4(キャラA)、又はSU5(キャラB)の決定を行う。すなわち、SUの段階と内容を決定する。
なお、図72に示す振り分け値の例によると(この場合も抽選用乱数が1〜9999の10000通りをとり得る例としている)、短変動パターンに対応したテーブル1においては、SU予告演出「なし」の当選確率が最も高くされ、次いでSU1(白枠)の当選確率が高くされていると共に、残りのSU2(白枠)、SU3(白枠)、SU4(キャラA)、及びSU5(キャラB)については当選確率が0とされている。
リーチ変動パターンに対応したテーブル2においては、SU5(キャラB)、SU4(キャラA)、SU予告演出「なし」、SU1(白枠)、SU2(白枠)、SU3(白枠)の順で徐々に当選確率が高まるようにしている。
スーパーリーチ変動パターンに対応したテーブル3においては、SU5(キャラB)の当選確率が最も高くされ、以降はSU4(キャラA)、SU3(白枠)、SU予告演出「なし」の順で徐々に当選確率が下げられ、SU1(白枠)及びSU2(白枠)の当選確率が最も低くされている。
CPU241は、ステップS3004の処理を実行したことに応じ、ステップS3005でSU3以上に当選したか否かを判定する。すなわち、ステップS3004でSU3(白枠)、SU4(キャラA)、SU5(キャラB)の何れかが決定されたか否かを判定する。
SU3以上に当選していなければ、CPU241は図71に示すSU予告抽選処理を終える。すなわち、SU2以下に当選の場合、以下で説明するSU予告演出の内容差し換えのための処理は行われない。
一方、SU3以上に当選していれば、CPU241はステップS3006に進んで前回SU3デンジャーで外れたか否かを判定する。すなわち、前回現出したSU予告演出が、後述するSU3差替えテーブルを用いた内容差し替えにより背景がデンジャー柄枠の背景に差し替えられたSU3以上のSU予告演出であり、該SU予告演出が予告の対象とした図柄変動表示ゲームにおいてはずれの判定結果が得られたか否かを判定する。
ステップS3006において、前回SU3デンジャーで外れたと判定した場合、CPU241はステップS3007に進み、設定値を参照せずにオフセットテーブルからオフセット値を取得した上で、ステップS3008でオフセット値に基づいて抽選テーブルを選択し、ステップS3012で抽選値に基づいてSU3の差替え内容を決定する。
図74は、ステップS3008の選択処理で用いるSU3差替えテーブルの例を示し、図75はステップS3007の取得処理で用いるSU3差替え用オフセットテーブルの例を示している(これらのテーブルもROM242の所定領域にそれぞれ格納されている)。
図75に示すSU3差替え用オフセットテーブルにおいては、設定値Veごとにオフセット値が定められ、具体的には、図示のように設定値Ve「1」〜「6」に対しオフセット値「0」〜「5」が定められている。
図74に示すSU3差替えテーブルにおいては、「デフォルト」「赤」「デンジャー」の差替え内容ごとの振り分け値を定めた抽選テーブルが設定値Veごとに用意されている。ここで、「デフォルト」は、背景における枠を差し替えないことを意味し、「赤」「デンジャー」はそれぞれ該枠を赤色、デンジャー柄に差し替えることを意味する。
図示のように、SU3差替えテーブルにおいては、設定値Ve「1」の抽選テーブルが最も上層に格納され、以降、設定値Veの数値が大きい抽選テーブルほどより下層側に位置するように格納されている。
図71において、ステップS3007の取得処理では、図75に示すSU3差替え用オフセットテーブルから設定値Veを参照せずにオフセット値が取得される。すなわちCPU241は、該オフセットテーブルにおける設定値Ve「1」に対応するオフセット値「0」を取得する。そして、ステップS3008の選択処理では、このように取得したオフセット値「0」に基づいてSU3差替えテーブルから抽選テーブルが選択される。具体的には、SU3差替えテーブルにおける最も上層に格納された設定値Ve「1」に対応する抽選テーブルが選択される。
そして、ステップS3008に続き実行されるステップS3012の決定処理では、このように選択した抽選テーブルに基づいて「デフォルト」「赤」「デンジャー」のうちから差替え内容が決定される。
ここで、図74に示した振り分け値の例によると、上記したステップS3007→S3008→S3012の処理が行われることで、「デフォルト」の当選確率が最も高い抽選テーブルが選択されることになる。すなわち、最も差し替えの生じる可能性が低い抽選テーブルが選択される。この結果、前回SU3デンジャーで外れた場合には、再びSU3デンジャーによるSU予告演出が行われ難くなる。
一方、先のステップS3006において、前回SU3デンジャーで外れたと判定した場合、CPU241はステップS3009で設定値情報取得処理を実行した上で、ステップS3010で設定値情報に基づいてオフセットテーブルからオフセット値を取得し、続くステップS3011でオフセット値に基づいて抽選テーブルを選択し、ステップS3012で抽選値に基づいてSU3の差替え内容を決定する処理を行う。
具体的に、ステップS3010の取得処理では、図75に示したSU3差替え用オフセットテーブルから、ステップS3009で取得した設定値Veに対応するオフセット値を取得し、続くステップS3011では図74に示したSU3差替えテーブルより、取得したオフセット値に基づく抽選テーブルを選択する。具体的には、オフセット値「0」であれば最上層位置に格納された設定値Ve「1」の抽選テーブルを選択し、オフセット値「1」であれば最上層位置の次の位置に格納された設定値「2」の抽選テーブルを選択するといったように、オフセット値で特定される位置(アドレス)に格納された抽選テーブルを選択する。
そして、この場合のステップS3012の決定処理では、ステップS3011で選択した抽選テーブルに基づいて「デフォルト」「赤」「デンジャー」のうちから差替え内容を決定する。
図74に示す振り分け値の例によると、この場合のSU3差替えテーブルにおいては、高設定となるほど「デフォルト」の当選確率が低くされる一方、「赤」に関しては高設定となるほど当選確率が高まるようにされている。また、「デンジャー」に関しては、設定値Veの別に依らず「デンジャー」「赤」よりも当選確率が低くされると共に、最高設定である設定値Ve「6」の場合に最も当選確率が高くなるようにされている。本例では、「デンジャー」の当選確率は、設定値Ve「1」〜「5」までは同一とし、設定値Ve「6」についてのみ当選確率を高めるようにしている。
CPU241は、ステップS3012の決定処理を実行したことに応じて図71に示すSU予告抽選処理を終える。
上記した一連の処理から理解されるように、本実施形態では、SU予告演出(段階予告演出)の「段階」は変動情報に基づき決定可能とし、SU予告演出の「内容」は設定値Veに基づき決定可能としている。具体的に本例では、SU予告演出の「内容」は差し替えにより決定可能としている。
段階予告演出を利用した設定示唆について、仮に、設定値に基づき段階予告演出の段階を決定するとした場合には、段階予告演出が発展し難くなり、演出効果を高めることが困難となる。そのため、上記のように段階予告演出の段階は変動情報に応じて決定可能とし、段階予告演出の予告内容は設定値に基づき決定可能としている。
これにより、段階予告演出を利用した設定示唆演出の実現にあたり、段階予告演出が発展し難くなることの防止を図ることができ、演出効果を高めることができる。
通常、遊技機には複数種類の予告演出が実装されているが、そのうち予告演出の内容として段階を有する予告の全てを前述したような構成としてもよいし、一部の予告についてのみ、前述のような構成となるようにしてもよい。また、演出興趣を高めるために、一部の予告については、「段階」を設定値Veに基づき決定し、「内容」を変動情報に基づいて決定するように構成してもよい。こうすることで、予告間で異なった特徴を持たせることができ、演出興趣を向上させることが可能となる。
図76は、SU予告抽選処理の別例を示したフローチャートである。
先ず、この別例においては、ROM242に格納されるSU3差替え用オフセットテーブルとして、図77に示すテーブルが用意されている。すなわち、図75に示したものと同内容のテーブルがSU3差替え用第一オフセットテーブルとして格納されると共に(図77A)、SU3差替え用第一オフセットテーブルとは異なるSU3差替え用第二オフセットテーブルが格納されている(図77B)。
SU3差替え用第二オフセットテーブルにおいては、「1」〜「6」の設定値Veに対し同一のオフセット値(本例では「0」)が格納されている。
図76に示すSU予告抽選処理は、前回SU3デンジャーで外れた場合に実行される処理として、図71に示したステップS3007の処理に代えてステップS3020及びS3021の処理を実行する点が異なる。
この場合のCPU241は、ステップS3020の設定値情報取得でRAM243の所定領域に格納されている設定値Veを取得し、続くステップS3021で設定値情報に基づいてSU3差替え用第二オフセットテーブルからオフセット値を取得し、ステップS3008の抽選テーブル選択処理に進む。
ステップS3021で取得されるオフセット値は設定値Veに拘わらず同一の値であるため、この場合のステップS3008の選択処理では、設定値Veに依らず同一の抽選テーブルが選択されることになる。具体的に本例では、設定値Ve「1」に対応したオフセット値「0」が選択されるため、図71の処理例の場合と同様に内容差替えが最も生じ難い抽選テーブルが選択されることになる。
なお、この場合のステップS3010の取得処理では、オフセットテーブルとして図77Aに示したSU3差替え用第一オフセットテーブルを用いる。
上記のように、設定値Veに依らず同一の抽選テーブルを選択するための手法としては、設定値Veを参照せずに固定のオフセット値を取得する手法に限定されず、図77Bのように各設定値Veに同一のオフセット値を格納したオフセットテーブルから取得したオフセット値に基づいて抽選テーブルを選択する手法を採ることもできる。
ここで、SU予告演出の抽選については、次のような態様で行うことも考えられる。
図78は、実施形態におけるSU予告演出の抽選態様例についての説明図である。
先ず、図中、上段の表の左下部に示す展開M06J−1、展開M06J−2、展開M06J−3は、それぞれ以下のような展開を意味する。
M06J−1:特定の背景モードに滞在している状態、且つ先読み予告に非当選で対象SU予告(花火打ち上げSU予告)に当選している
M06J−2:特定の背景モードに滞在している状態、且つ先読み予告を実行中で対象SU予告に当選している
M06J−3:特定の背景モードに滞在している状態で、当該変動が先読み予告のターゲット変動且つ対象SU予告に当選している
展開M06J−1においては、対象SU予告の抽選をテーブルTBL1に基づき行う。また、展開M06J−2、展開M06J−3においては、対象SU予告の抽選をテーブルTBL2、テーブルTBL3に基づきそれぞれ行う。
展開M06J−1において、テーブルTBL1に基づく抽選の結果SU3、SU4に当選した場合、及びSU5に当選した場合を展開M06L−1とする。
また、展開M06J−2において、テーブルTBL2に基づく抽選の結果SU3、SU4に当選した場合、及びSU5に当選した場合を展開M06L−2とする。
さらに、展開M06J−3において、テーブルTBL3に基づく抽選の結果SU3、SU4に当選した場合、及びSU5に当選した場合を展開M06L−3とする。
なお、これら展開M06L−1〜M06L−3において、SU5に当選した場合には、SU5の内容についてそれぞれテーブルTBL4、TBL5、TBL6に基づく抽選を行う。
図78の下段の表は、M06L−1〜M06L−3の各展開に対するSU3の内容差替え(背景差替え)についての抽選手法を例示している。
図示のように展開M06L−1においては、前回デンジャーで外れたか否かを判定する(ステップS3006参照)。前回デンジャーで外れていれば、設定値Veごとの分岐はなく、テーブルTBL4に基づいて差替え内容を抽選する。
一方、前回デンジャーで外れていなければ、抽選手法は設定値Veごとに分岐する。具体的には、「1」〜「6」の設定値Veごとに異なるテーブル(図中、テーブルTBL5〜TBL10)を用いて差替え内容を抽選する。
また、展開M06L−2、展開M06L−3においては、前回デンジャーで外れたか否かによる分岐、及び設定値Veによる分岐はなく、図示のようにテーブルTBL11、TBL12に基づき差替え内容を抽選する。
上記の抽選手法においては、展開M06J−1としての、先読み予告に非当選の状態においては、SU予告による設定示唆を行うことが可能とされる。
これにより、先読みするほどでもない当り期待度の低い変動や、先読みのターゲット変動に向かって先読み予告を実行していない変動では、SU予告の役割を変動に対する信頼度を示唆する目的で使用するのではなく、設定を示唆する目的で使用することができる。
また、展開M06J−2としての、先読み予告を実行中である状態においては、SU予告による設定示唆を行わないものとしている。
複数変動を利用して先読み予告を実行している場合の、まさに先読み途中の変動においてSU予告に当選した場合は、先読みのターゲット変動に向かって、当選期待度を示唆する先読みを行っている最中なので、SU予告の役割として設定を示唆する目的では使用しないようにしている。つまり、先読み予告はターゲット変動に向けて当選期待度を示唆しており、遊技者の興味はそちらに注がれているので、このような状況では設定示唆要素を入れないようにし、遊技者が混乱してしまうことの防止を図っている。
さらに、展開M06J−3としての、当該変動が先読み予告のターゲット変動である状態においても、SU予告による設定示唆を行わないものとしている。
この場合、当該変動は、先読みのターゲット変動であり、当たり期待度の高い変動であるため、SU予告の役割を変動に対する信頼度を示唆する目的で使用し、設定を示唆する目的では使用しないようにすることで、遊技者が混乱してしまうことの防止を図っている。
上記、抽選手法として、展開M06L−1、展開M06L−2、展開M06L−3を採用したが、いずれか一つを採用するようにしてもよいし、いずれかの組み合わせを採用するようにしてもよい。
展開M06L−2に関して、先読み予告が複数種類ある場合には、特定の先読み予告(例:全画面系の先読み予告等)の実行中のみSU予告による設定示唆を行わないように構成し、その他の先読み予告(例:保留変化予告等)の実行中にはSU予告による設定示唆を行うように構成してもよい。
展開M06L−3に関して、先読み予告が複数種類ある場合には、当該変動が特定の先読み予告(例:全画面系の先読み予告等)のターゲット変動である状態では、SU予告による設定示唆を行わないように構成し、当該変動がその他の先読み予告(例:保留変化予告等)のターゲット変動である状態では、SU予告による設定示唆を行うように構成してもよい。
また、当該変動が当り変動の場合には、前述のSU予告のような設定示唆要素を含む設定示唆予告による、設定示唆を行わないようにし、当該変動がはずれ変動の場合には、設定示唆を行うように構成してもよい。
[5-5.主制御部と演出制御部が対応する設定値範囲の差違について]
ここで、上記により説明した演出制御部24の各種抽選処理から理解されるように、演出制御部24は、設定値Veが実際の使用範囲Ru(本例では「1」「2」「6」)でなくても、使用可能範囲Re(「1」〜「6」)内の値であれば、演出抽選がエラーとなることなく正常に行われるように構成されている。
一方で、主制御部20は、設定値Veが実際の使用範囲Ru内の値でなければ、遊技進行に関する少なくとも特定の処理を実行不能とされている。例えば、先の図25〜図27を参照して説明した大当り乱数判定処理(S1502)においては、設定値Ve(設定値Vd)が使用範囲Ru内の値でない場合には、図27に示した大当り判定用乱数判定テーブルから適正な判定基準値THや設定差情報を取得することが不能となり、大当り判定を適切に実行できないものとなる。
上記のような主制御部20と演出制御部24の設定値に対する対応の差は、以下のように表現することができる。
すなわち、主制御部20は、設定変更処理(ステップS115)によりN(Nは2以上の自然数)種の中からいずれか一つの設定値を設定可能であると共に、N種の設定値に基づいて、遊技動作の進行に関する第一処理を実行可能とされている。
一方で、演出制御部24は、主制御部20から受信した設定値に関する設定値情報について、N種よりも多いM種の設定値情報に基づいて、演出動作の進行に関する第二処理を実行可能とされている。
これにより、設定値の段階数を変更可能とするにあたり、演出制御部24は、M段階までであれば、演出動作の進行に関する第二処理を実行可能とされている。すなわち、M段階までは演出制御部24のプログラム書き替えを不要とすることが可能となる。
従って、設定値の段階数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
また、本実施形態において、演出制御部24は、先の図52Aで説明したように、主制御部20が送信する設定値を通知するためのコマンド(設定値情報)、具体的には設定確認中コマンド、及び設定変更時コマンドとしての設定値情報について、実際の使用範囲Ruに対応した3種の設定値情報ではなく、使用可能範囲Reに対応した6種の設定値情報を解析可能とされている。
具体的に、これら設定確認中コマンド、設定変更時コマンドについては、それぞれステップS2150、S2152で「1」〜「6」の何れかの識別データを含むコマンドの受信が可能とされており、従ってこれらのコマンドの解析が可能とされている。
すなわち、使用範囲Ruに対応した3種の設定値Veが、設定変更処理で設定可能なN種の設定値であるとすれば、演出制御部24は、N種よりも多いM種の設定値情報を解析可能に構成されている。
これにより、設定値Veの段階数を変更可能とするにあたり、演出制御部24は、M段階までであれば、設定値情報を解析可能とされている。すなわち、M段階までは演出制御部24のプログラム書き替えを不要とすることが可能となる。
従って、使用する設定値の数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
また、本実施形態では、演出制御部24は、主制御部20側において設定変更処理で設定された設定値Vdと、解析された設定値情報に基づく設定値解析情報とが、対応する場合(例えば、設定値Vdが示す設定値Veと設定値解析情報が示す設定値Veとが一致する場合)でも、対応しない場合でも所定処理(図57〜図77で説明した各種の演出抽選処理)を実行可能に構成されている。
これにより、設定値Veの段階数を変更可能とするにあたり、演出制御部24は、M段階までであれば処理を実行可能とされ、M段階までは演出制御部24のプログラム書き替えを不要とすることが可能となる。
従って、設定値Veの段階数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
ここで、図52Aの処理によると、本実施形態では、ステップS2154で設定変更終了コマンドを受信したと判定した場合には、主制御部20から受信される設定値Veが適正範囲内の値であるか否かを確認することなく(ステップS2162を参照)、ステップS2158で設定変更終了シナリオ登録処理を実行するものとしている。
これにより、主制御部20側が設定変更処理を正常に終了しようとしているときに、演出制御部24側が設定値の異常を報知してしまうことの防止を図ることができる。すなわち、演出制御部24側が異常報知を行っているのに主制御部20側が設定変更処理の正常終了に応じてその後の遊技動作を進行させてしまうという状況の発生防止を図ることができ、遊技者に不安感を抱かせることの防止が図られる。
また、図52Aの処理によると、演出制御部24はステップS2162で、主制御部20側から受信した設定値Veが使用可能範囲Re内か否かを判定し、使用可能範囲Re内であれば受信した設定値Ve(上述した識別データ)をRAM243(具体的には前述した「通知設定値格納領域A1」)に格納し、使用可能範囲Re外であれば受信した設定値VeをRAM243に格納しないものとしている。
設定値Veが使用可能範囲Re外であるときは、RAM243に設定値Veが格納されないが、本実施形態では、「設定値コマンド」が設定変更時以外の複数タイミングで送信される、具体的には、少なくとも電断復帰時(電断復帰した際のS808)、変動開始時(S1411)にも送信されるので、それらのタイミングで使用可能範囲Re内の設定値Veが受信されることで、RAM243に適切な設定値Veが格納されるようにすることができる。
なお、設定値コマンドは、上記で例示したタイミング以外にも、客待ちデモ中、大当りや小当りの開始や終了時、ラウンド遊技開始時、ラウンド間INT開始時等に送信することもできる。
なお、上記のように本実施形態では、設定値Veが使用可能範囲Re内の値であれば、使用範囲Ru内の値でなくてもそのままRAM243に格納するものとしているが、先に説明した各種演出に係る抽選処理(図57〜図77等)のように、本実施形態では抽選処理が使用可能範囲Reの設定値Veに対応しているため、設定値Veが使用範囲Ru内の値でなくても演出抽選処理にバグが発生することがない。
また、図52Aの処理によると、設定値Veが使用可能範囲Re外であるときは、ステップS2166の設定履歴情報更新処理において、使用可能範囲Re外の設定値VeがRAM243(具体的には、前述した「履歴設定値格納領域A2」)に格納される(図53のステップS2404を参照)。
しかしながら、このように履歴設定値格納領域A2に使用可能範囲Re外の設定値Veが格納されても、前述したステップS2607(図55)の送信処理時において、設定値Veの異常確認を行うことで、設定履歴確認画面Gsに使用可能範囲Re外の不適切な設定値Veが表示されてしまうことの防止が図られる。
前述のように、この際の異常確認の処理としては、送信対象の個別履歴情報が設定変更についての履歴情報(設定変更履歴情報)であるか否かを判定した上で、設定変更履歴情報である場合には、該履歴情報に含まれる設定値Veが使用可能範囲Re外の値であるか否かを判定し、設定値Veが使用可能範囲Re外の値である場合には、液晶制御部40に対して異常表示の指示情報を送信する。これにより、設定履歴確認画面Gsにおいて、該当する個別履歴情報における設定値Veに異常が認められた旨を表す情報を表示させることができる(例えばエラーを意味する「E」マークの表示等)。
<6.変形例>
ここで、上記では、図10に示した設定変更処理(S115)で設定された設定値Ve(ステップS416で保存した設定値Ve)を、図17に示したメインループ前処理(S119)で設定値コマンド(S808)により演出制御部24側に送信する例を挙げたが、設定変更処理により設定された設定値Veは、設定変更終了時のコマンドにより演出制御部24に送信することもできる。具体的に、実施形態では、設定変更終了時のコマンドとして、図14に示したRAMクリア処理(S116)で設定変更終了コマンドを送信(S605、S606)するものとしているが、この設定変更終了コマンドに代えて、設定変更処理で設定された設定値Veを含ませた「設定変更完了コマンド」を演出制御部24に送信する構成とすることもできる。
また、上記した図52Aの処理では、演出制御部24がRAM243に設定値Veを格納する処理(S2163)が、主制御部20からの設定値コマンドが受信されるごとに実行され得ることになるが、このRAM243に対する設定値Veの格納処理は、設定変更時にのみ行われるようにすることもできる。
そして、このようにRAM243に対する設定値Veの格納処理が設定変更時にのみ行われる場合には、図52Aに示す処理のように設定値Veが使用可能範囲Re外の値である場合に設定値Veを格納しないものとすると(S2162→S2164のルート)、RAM243に設定値Veがセットされないものとなってしまう。
そこでこの場合には、設定値Veが使用可能範囲Re外であればRAM243に設定値Ve「1」を表す値(換言すれば、設定値Veの最低段階を表す値)を格納するものとして、RAM243に異常な設定値Veがセットされないようにしつつ、設定値Veのセット自体が行われなくなってしまうことの防止を図ることもできる。
図79は、上記のような最低段階値の格納を含む、第一変形例としての設定関連コマンド処理S2130eのフローチャートを示している。
この第一変形例としての設定関連コマンド処理S2130eは、主制御部20が上述した「設定変更完了コマンド」により設定変更処理で設定された設定値Veを演出制御部24側に送信する場合に対応した処理とされる。
図52Aに示した処理との差異点は、ステップS2154の設定変更終了コマンドの受信判定処理が省略された点と、ステップS2159〜S2161の処理及びステップS2164の処理が省略された点と、ステップS2181の処理が追加された点である。
図79に示す処理において、CPU241は先ずステップS2180で、「設定変更完了コマンド」の受信判定処理を行う。具体的には、「設定変更完了コマンド」として設定値Ve「1」〜「6」の何れかの通知情報(識別データ)を含むコマンドが受信されたか否かを判定する。
ステップS2180において、「設定変更完了コマンド」(設定値「1」〜「6」)を受信していないと判定した場合、CPU241はステップS2150に処理を進める。なお、この場合、ステップS2151で否定結果が得られたことに応じ、CPU241はステップS2153に処理を進める。また、ステップS2153で否定結果が得られた場合、CPU241は図79に示す一連の処理を終える。
さらにこの場合、CPU241は、ステップS2155〜S2157の各シナリオ登録処理を実行したことに応じ、図79に示す一連の処理を終える。
一方、ステップS2180において「設定変更完了コマンド」(設定値「1」〜「6」)を受信したと判定した場合、CPU241はステップS2158の設定変更終了シナリオ登録処理を実行する。
上記したステップS2180の判定処理により、受信した「設定変更完了コマンド」に含まれる設定値Veが「1」〜「6」の使用可能範囲Re内であれば、このステップS2158で設定変更終了シナリオが登録される。すなわち、使用可能範囲Re内における不使用の設定値Veを受信した場合でも、設定変更終了を報知する演出が行われるようにされている。
ステップS2158のシナリオ登録処理を実行したことに応じ、CPU241はステップS2162で設定情報は使用可能範囲Reか否かを判定する。
そして、設定情報が使用可能範囲Reである場合には、CPU241はステップS2163で設定値情報をRAMに格納する処理を行ってステップS2166の履歴情報更新処理に進む。
一方、設定情報が使用可能範囲Reでない場合には、CPU241はステップS2181で設定値「1」をRAM243に格納し、ステップS2166の履歴情報更新処理に進む。
上記のような第一変形例としての処理により、設定変更時にのみRAM243に設定値Veを格納する場合に対応して、設定値Veが使用可能範囲Re外の値であればRAM243に特定値(本例では「1」)を格納することができる。
なお、上記した第一変形例のようにRAM243の設定値格納領域(前述した「通知設定値格納領域A1」)に特定値(「1」)を格納する場合には、設定履歴情報における設定値Ve(つまり前述した「履歴設定値格納領域A2」)についても特定値(「1」)を格納するようにしてもよい。
或いは、設定履歴情報には異常値を記憶させておくようにしてもよい。
設定履歴情報に異常値を記憶させることで、遊技の抽選は特定値に基づき行われるようにしつつ、設定値Veが異常であったことを履歴情報として保存しておくことが可能となる。
ここで、RAM243に設定値Veを格納する際における設定値Veの適否判定としては、使用可能範囲Re内であるか否かではなく使用範囲Ru内であるか否かを判定することもできる。
例えば、本例のように使用する設定値Veが「1」「2」「6」とされる場合においては、先ず、設定値Veが使用可能範囲Re内の値か否かを判定し、使用可能範囲Re内の値であれば、さらに、設定値Veが不使用の値(「3」「4」「5」の何れか)であるか否かを判定する。
このとき、設定値Veが不使用の値でなければ、設定値VeをそのままRAM243に格納する。一方、設定値Veが不使用の値である場合は、RAM243に特定値(「1」)を格納することが考えられる。或いは、設定値Veが不使用の値である場合は、設定値Veを使用範囲Ruの値に補正してRAM243に格納することもできる。例えば、設定値Veが「3」「4」のときは「2」に補正し、「5」のときは「6」に補正する等が考えられる。
図80は、上記のような設定値Veの補正を含む、第二変形例としての設定関連コマンド処理S2130eのフローチャートを示している。
図79に示した処理との差異点は、ステップS2182及びS2183の処理が追加された点である。
この場合、CPU241は、ステップS2162で設定情報が使用可能範囲Reであると判定したことに応じ、ステップS2182に処理を進めて設定情報は不使用の値か否かを判定する。具体的に本例では、設定値Veが「3」「4」「5」の何れか(「02H」「03H」「04H」の何れか)であるか否かを判定する。
設定情報は不使用の値でないと判定した場合、CPU241はステップS2163に進んで設定情報をRAM243に格納する。一方、設定情報は不使用の値であると判定した場合、CPU241はステップS2183に進み、設定値補正テーブルを参照して補正値をRAM243に格納する。具体的に本例では、設定値補正テーブル(ROM242の所定領域に格納しておく)を参照し、設定値Veが「3」「4」のときは「2」に補正し、「5」のときは「6」に補正し、補正した設定値VeをRAM243の「通知設定値格納領域A1」に格納する。
ここで、これまでの説明では、主制御部20が図16に示した設定値オフセット変換テーブルを用いて、主制御部20側で扱う設定値Vdを演出制御部24側のプログラムに合わせた設定値Veに変換する例を挙げたが、主制御部20は設定値オフセット変換テーブルを用いた変換を行わずに設定値Vdの情報を演出制御部24に送信し、演出制御部24側において設定値Vdを変換する構成を採ることもできる。
図81は、この場合に演出制御部24側で用いるべき設定値変換テーブルの例を示している。なお、ここでは、遊技機1のスペック情報によって設定値Veの段階や使用する値が一意に定められている前提とする。
図示のように設定値変換テーブルには、主制御部20側が送信する設定値Vdの情報、具体的には「0」〜「5」のそれぞれに対する変換値を格納した変換テーブルが、スペック(図中では「スペック1」〜「スペック4」の4種としている)ごとに用意されている。
この場合の演出制御部24(CPU241)は、例えば前述したスペック指定コマンドで指定されるスペックの情報に基づき、設定変換テーブルから対応する変換テーブルを選択し、主制御部20から受信した設定値Vdの情報を該選択した変換テーブルに基づき変換する。
ここで、「スペック1」は設定6段階であり、この場合の主制御部20は設定値Vdとして「0」〜「5」を使用する。「スペック2」「スペック3」はそれぞれ設定2段階、設定3段階であり、主制御部20は設定値Vdとしてそれぞれ「0」「1」、「0」〜「3」を使用する。「スペック4」は「設定なし」であり、この場合は図示のように設定値Vdごとの変換値として「0」を格納しておく。
上記のように演出制御部24側で設定値変換を行う構成とすることで、主制御部20側の処理負担軽減を図ることができる。
<7.実施形態のまとめ>
上記のように実施形態のパチンコ遊技機(1)は、遊技動作の進行制御を行う制御手段(主制御部20)と、所定の操作に基づき、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を設定可能な設定手段(設定変更処理:S115)と、制御手段が進行制御に用いるデータが記憶された記憶手段(ROM202)と、を備えている。
そして、記憶手段には、設定値を参照して選択される複数の設定値関連情報を含むデータテーブル(例えば、図16の設定値オフセット変換テーブル)が格納されており、データテーブルには、設定手段により設定可能な設定値を参照した場合に選択される設定値関連情報である第一設定値関連情報と、設定手段により設定不能な設定値を参照した場合に選択される設定値関連情報である第二設定値関連情報と、が含まれており、第一設定値関連情報として、当選確率が最も低い段階を表す設定値に関する特定情報が、少なくとも記憶されており、第二設定値関連情報として、特定情報と同じ情報が記憶されているものである。
設定値が設定不能な値であったときは、RAMに格納される設定値を最低段階を表す値に書き替えることが考えられる。
しかし、書き替え後に改竄される等した場合、設定不能な設定値に基づきデータテーブルから対応する情報が取得されて、設定不能な設定値に応じた動作が実現される虞がある。
上記構成によれば、データテーブルから設定不能な設定値に応じた情報を取得することが不能とされるため、不正行為が成立してしまうことの防止を図ることができ、遊技の公平性を高めることができる。
また、実施形態としての遊技機においては、特定情報として0が記憶されている。
これにより、設定値関連情報に特定情報=0を書き込むという簡易な手法により、設定値の改竄による不正行為の成立防止を図ることが可能とされる。すなわち、遊技の公平性を簡易な手法により高めることができる。
また、実施形態のパチンコ遊技機(1)は、遊技動作の進行制御を行う制御手段(主制御部20)と、所定の操作に基づき、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を設定可能な設定手段(設定変更処理:S115)と、制御手段が進行制御に用いるデータが記憶された記憶手段(ROM202)と、を備えている。
そして、記憶手段には、設定値を参照して選択される複数の設定値関連情報を含む第一データテーブル(例えば、図27の大当り判定用乱数判定テーブル)と、第一データテーブルよりも下層側の記憶領域に記憶され且つ設定値関連情報を含まない第二データテーブル(例えば、図34の特別図柄作成アドレステーブル)と、が格納されており、第一データテーブルは、進行制御に用いる使用データが記憶された使用データ記憶領域(例えば、アドレス「4093」〜「4111」)と、進行制御に用いない不使用データが記憶された不使用データ記憶領域(例えば、アドレス「4113」〜「4118」)と、で構成されているものである。
設定値関連情報を含む第一データテーブルに使用データ記憶領域しか確保されてない場合には、使用する設定値の数(段階の数)を増加させようとしたときに、増加分の設定値に係る設定値関連情報を第一データテーブルに追記すると、その下層に格納すべき第二データテーブル以降のデータは下層側にシフトさせることを要する。すなわち、第二データテーブル以降のデータについては記憶領域をシフトさせるための書き替えを強いられるものである。
上記のように設定値関連情報を含む第一データテーブルに使用データのみでなく不使用データの記憶領域を確保しておくことで、使用する設定値の数を増加させようとしたときは、増加分の設定値に係る設定値関連情報を該不使用データの記憶領域に記憶させることが可能とされる。
従って、第二データテーブル以降のデータの書き直しを不要とすることが可能となり、使用する設定値の数を変更することに伴うデータ書き替え作業の負担軽減を図ることができる。
さらに、実施形態のパチンコ遊技機においては、使用データ記憶領域には、設定手段が設定可能な設定値の数に応じた容量の使用データが記憶され、不使用データ記憶領域には、設定手段が設定不能な設定値の数に応じた容量の不使用データが記憶されている。
これにより、不使用データ記憶領域の記憶容量として、設定値の段階数を増加させた際における増加分の設定値に係る設定値関連情報を記憶するための容量が確保されるようにすることができる。
さらにまた、実施形態のパチンコ遊技機においては、不使用データとして0が記憶されている。
これにより、仮に不使用の設定値Vdによって第一データテーブルが参照されても、不使用の設定値Vdに対応する設定値関連情報が取得されてしまうことの防止が図られる。すなわち、不正行為が成立してしまうことの防止を図ることができ、遊技の公平性を高めることができる。
また、実施形態のパチンコ遊技機(1)は、遊技動作の進行制御を行う制御手段(主制御部20)と、所定の操作に基づき、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を設定可能な設定手段(設定変更処理:S115)と、制御手段が進行制御に用いるデータが記憶された記憶手段(ROM202)と、を備えている。
そして、記憶手段には、設定値を参照して選択される複数の設定値関連情報を含む第一データテーブル(例えば、図16の設定値オフセット変換テーブル)と、設定値関連情報を含まない第二データテーブル(例えば、図34の特別図柄作成アドレステーブル)と、が格納されており、記憶手段は、第二データテーブルよりも下層側の記憶領域に第一データテーブルを記憶し、第一データテーブルよりも下層側の記憶領域に第2データテーブルを記憶しない(図35参照)。
これにより、使用する設定値の数を増加させる場合には、記憶手段におけるデータ領域の最下層に位置された第一データテーブルの内容を書き替えれば済み、第一データテーブルよりも下層側のデータ部分の書き替えを不要とすることが可能とされる。
従って、使用する設定値の数を変更することに伴うデータ書き替え作業の負担軽減を図ることができる。
また、実施形態のパチンコ遊技機(1)は、遊技動作の進行制御を行う主制御手段(主制御部20)と、演出動作の進行制御を行う演出制御手段(演出制御部24)と、を備え、主制御手段は、所定の操作に基づき、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を設定可能な設定手段(設定変更処理:S115)と、演出制御手段に所定情報を送信可能な送信手段(例えば、S705やS809の送信処理)と、を有し、設定手段は、N種の中からいずれか一つの設定値を設定可能であり、送信手段は、設定手段により設定された設定値に関する設定値情報を、演出制御手段に送信可能であるものとされている。
そして、演出制御手段は、主制御手段から受信した設定値情報を解析可能な解析手段(設定関連コマンド処理:S2130e)を有し、解析手段は、N種よりも多いM種の設定値情報を解析可能に構成されている。
これにより、使用する設定値の数を変更可能とするにあたり、演出制御手段は、M段階までであれば、設定値情報を解析可能とされている。すなわち、M段階までは演出制御手段のプログラム書き替えを不要とすることが可能となる。
従って、使用する設定値の数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
さらに、実施形態のパチンコ遊技機においては、演出制御手段は、設定手段により設定された設定値と、解析手段により解析された設定値情報に基づく設定値解析情報とが、対応する場合でも、対応しない場合でも所定処理を実行可能に構成されている。
これにより、設定値の段階数を変更可能とするにあたり、演出制御手段は、M段階までであれば処理を実行可能とされ、M段階までは演出制御手段のプログラム書き替えを不要とすることが可能となる。
従って、設定値の段階数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
また、実施形態のパチンコ遊技機(1)は、遊技動作の進行制御を行う主制御手段(主制御部20)と、演出動作の進行制御を行う演出制御手段(演出制御部24)と、を備え、主制御手段は、所定の操作に基づき、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を設定可能な設定手段(設定変更処理:S115)と、演出制御手段に所定情報を送信可能な送信手段(例えば、S705やS809の送信処理)と、を有し、設定手段は、N種の中からいずれか一つの設定値を設定可能であり、送信手段は、設定手段により設定された設定値に関する設定値情報を、演出制御手段に送信可能に構成されている。
そして、演出制御手段は、主制御手段から受信した設定値情報を解析可能な解析手段(設定関連コマンド処理:S2130e)を有し、解析手段は、N種よりも多いM種の設定値情報を解析可能に構成されている。
その上で、主制御手段は、N種の設定値に基づいて、遊技動作の進行に関する第一処理を実行可能であり、演出制御手段は、M種の設定値情報に基づいて、演出動作の進行に関する第二処理を実行可能としたものである。
これにより、設定値の段階数を変更可能とするにあたり、演出制御手段は、M段階までであれば、演出動作の進行に関する第二処理を実行可能とされている。すなわち、M段階までは演出制御手段のプログラム書き替えを不要とすることが可能となる。
従って、設定値の段階数の変更をプログラム書き替え作業の負担軽減を図りつつ実現することができる。
また、実施形態のパチンコ遊技機(1)は、図柄の変動表示を行い、遊技者にとって有利な状態である有利状態に制御する遊技機であって、図柄の変動に関する変動パターンを決定する変動パターン決定手段(図28の変動パターン抽選処理)と、遊技動作の進行制御を行うと共に、遊技者に有利な遊技状態に当選させるか否かの当選確率についての段階を表す設定値を操作に基づき設定可能な設定手段(主制御部20)と、有利状態に制御される可能性を報知する予告演出を含む演出を実行する演出手段(演出制御部24及び光表示装置45a、音響発生装置46a、液晶表示装置36等)と、を備えている。
そして、予告演出には、段階を有する段階予告演出が含まれ、演出手段は、段階予告演出の段階については変動パターンに基づいて決定可能とし、段階予告演出の予告内容については設定値に基づいて決定可能としたものである。
段階予告演出を利用した設定示唆について、仮に、設定値に基づき段階予告演出の段階を決定するとした場合には、段階予告演出が発展し難くなり、演出効果を高めることが困難となる。そのため、上記のように段階予告演出の段階は変動情報に応じて決定可能とし、段階予告演出の予告内容は設定値に基づき決定可能としている。
これにより、段階予告演出を利用した設定示唆演出の実現にあたり、段階予告演出が発展し難くなることの防止を図ることができ、演出効果を高めることができる。
<8.その他変形例>
これまでの説明では、遊技媒体として遊技球を利用したパチンコ遊技機を例示したが、本発明の目的を達成できる遊技機であれば特に制限されない。例えば、遊技媒体として球状以外の形状による遊技媒体を利用する遊技機や、回胴式遊技機などであってもよい。
また、設定履歴画面Gsに表示する情報については図46等で例示した情報に限定されず多様に考えられる。例えば、或る設定値により遊技がどの程度の期間行われていたかを示すようにしてもよい。具体的には、或る設定値が設定されてから、次に変更されるまでの日時、時間を表示するようにしてもよい。また、電源投入時から或る設定値により遊技が行われ、次に電源断されるまでの日時、時間を表示するようにしてもよい。また、設定値が異常値と判定された場合は、異常と判定されてから、正常な設定値が設定されるまでの日時、時間を表示するようにしてもよい。また、本来は遊技中に設定値が変更されたり、設定値が正常値から異常値になることはないが、ノイズやゴト行為により、遊技中にもかかわらず設定値に変更があった場合には、その日時を記憶して、履歴表示として表示するようにしてもよい。また、RAMクリア処理やバックアップ復帰処理が行われた回数や日時情報についても同様に表示するように構成してもよい。また、履歴表示を表示するタイミングとしては、設定確認処理が行われている間以外にも、例えば設定変更処理が行われている間等とすることも可能である。さらには、遊技中であっても所定の操作入力があった場合には、履歴表示を行うように構成してもよい。
また、上記では、履歴表示の対象事象の発生に応じて履歴情報を内部ワーク(RAM243のワーク領域)に保存し、内部ワークに保存された履歴情報を即座にメモリ244に記憶させる例を挙げたが、内部ワークの履歴情報をメモリ244に記憶するタイミングとしては、内部ワークに記憶された経過時間を参照し、所定時間が経過したと判断された場合にメモリ244に記憶させる(コピーする)ことも可能である。
また、設定履歴確認画面Gsについては、終了指示操作に応じて表示を終了した後も、設定確認中(或いは設定変更中)等の所定の表示条件を満たす状況下であれば、再度の表示指示操作に応じ何度でも表示が可能である。或いは、所定の表示条件を満たす状況下で既に設定履歴確認画面Gsの表示を1回等の所定回数行っている場合には、再度の表示指示操作が行われても設定履歴確認画面Gsの表示を不可とすることもできる。
また、履歴情報の表示中においては、ベース値を表示する性能表示モニタを非表示としておくことが望ましい。また、履歴情報の表示中であっても、音量/光量調整が有効となるように構成してもよい。このとき、調整が有効ではあるが、調整内容については表示手段に表示しないようにすることが望ましい。
また、性能表示モニタの内容や状態を液晶上に表示するようにしてもよく、その場合には、履歴情報とは重ならない位置に表示することが望ましい。また音量/光量を調整不能に構成するようにしてもよく、この場合には履歴情報と表示が重なってしまう恐れがなく、画面構成の設計の自由度が高くなる。
また、履歴情報の表示中には少なくとも盤側の可動体のイニシャライズ動作を実行しないようにすることが望ましい。これにより盤側の可動体が表示手段の前側に移動して、表示画面の視認性を妨げてしまうことを防止することができる。また、枠側の可動体についても同様にイニシャライズ動作を実行しないようにしておくようにしてもよい。ただし、枠側の可動体については、表示画面を妨げる可能性がない場合には、イニシャライズを行うようにしてもよい。この場合、例えば操作手段に搭載された振動手段のイニシャライズ動作や、エアーが噴出されるエアー噴出手段などについてもイニシャライズ動作を行うようにしてもよい。これにより、枠側の可動体については、先にイニシャライズ動作を終了させておくことができるので、履歴情報の表示終了後、すなわち設定確認処理(或いは設定変更処理)の終了後に、盤側の可動体のイニシャライズを行うだけで済むので効率的である。また、これに限らず、履歴情報の表示終了後に、全ての可動体についてイニシャライズ動作を行うようにしてもよい。
また、主制御部20と演出制御部24とを接続するハーネスが切断された状態で、設定値の変更操作が行われた場合には、主制御部20は変更された設定値に基づいて処理を行う一方、演出制御部24はその情報を知ることができないので、履歴情報として記憶・表示することができない。そのため、ハーネスを切断した状態で設定値を変更し、一度電源を遮断した後に、再度ハーネスを接続し直した状態で電源ONすることで、設定値を変更した形跡を残すことなく、設定変更を行うことができてしまう。それを防止するために、電源投入時に、主制御部20から演出制御部24に設定値の情報を送信し、演出制御部24は、記憶した設定値の情報と、主制御部20から送信された設定値の情報とを比較して、矛盾が生じている場合には、ランプ・スピーカ・液晶等を利用してエラー報知を行うように構成してもよい。
また、この場合には、演出制御部24側は、遊技停止状態とするようにしてもよく、主制御部20から遊技に関するコマンドが送信されてきたとしても、それに基づく処理を行わないように構成してもよい。また、演出制御部24は、設定変更処理やRAMクリア処理を実行する際に送信される種々のコマンドを受信した場合には、主制御部20側で、再度正常に設定変更処理が為されたと判断して、新たに決定された設定値を記憶するとともに、エラー報知を中断/中止(矛盾発生⇒エラー報知⇒電源断⇒設定変更中(非エラー報知)⇒設定変更完了(非エラー報知))するようにしてもよい。また、初回の電源投入時においては、演出制御部24側には設定値に関する情報がない状態となるので、このような場合に主制御部20から設定値の情報が送信されてきた場合には、エラー報知を行わないように構成することが望ましい。