IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社平和の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-01
(45)【発行日】2022-11-10
(54)【発明の名称】遊技機
(51)【国際特許分類】
   A63F 7/02 20060101AFI20221102BHJP
【FI】
A63F7/02 326Z
A63F7/02 320
【請求項の数】 1
(21)【出願番号】P 2019033402
(22)【出願日】2019-02-26
(65)【公開番号】P2020137572
(43)【公開日】2020-09-03
【審査請求日】2021-11-19
(73)【特許権者】
【識別番号】000154679
【氏名又は名称】株式会社平和
(74)【代理人】
【識別番号】100131303
【弁理士】
【氏名又は名称】吉村 徳人
(74)【代理人】
【識別番号】100070183
【弁理士】
【氏名又は名称】吉村 公一
(72)【発明者】
【氏名】古賀 健太
【審査官】上田 正樹
(56)【参考文献】
【文献】特開2018-191660(JP,A)
【文献】特開2014-147521(JP,A)
【文献】特開2009-239665(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 7/02
(57)【特許請求の範囲】
【請求項1】
視差障壁を利用して遊技者に立体視させることが可能な三次元画像と、二次元画像と、を同時に表示することが可能な表示手段と、
前記三次元画像の表示に用いる三次元画像データと、前記二次元画像の表示に用いる二次元画像データと、を記憶する記憶手段と、を備え、
圧縮前の画像データのデータ量と圧縮後の画像データのデータ量との比率を圧縮率とした場合に、前記三次元画像データの圧縮率は、前記二次元画像データの圧縮率と比較して低く、
前記三次元画像データ及び前記二次元画像データを含む描画データについて、水平方向の倍率が等倍とされていることを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、視差障壁を利用して表示手段に表示された三次元画像を遊技者に立体視させる遊技機に関する。
【背景技術】
【0002】
従来、視差障壁を利用して表示手段に表示された三次元画像を遊技者に立体視させる遊技機が知られている(特許文献1参照)。
この遊技機では、3D演出の実行時に、左眼用画像及び右眼用画像に基づいて合成画像が生成され、生成された合成画像が表示装置に表示される。そして、フレネルレンズによって、表示装置に表示された合成画像のうち、右眼用画像が右目のみに到達し、左眼用画像が左目のみに到達することで、遊技者において、三次元画像が認識される。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2008-29888号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の遊技機では、記憶手段の容量を圧迫する恐れがある。
すなわち、従来の遊技機では、記憶手段に記憶されている全ての画像データについて、同一の圧縮率で圧縮されている場合、記憶手段の容量を圧迫する恐れがある。
本発明の課題は、記憶手段の容量の圧迫を抑制することにある。
【課題を解決するための手段】
【0005】
上記目的を達成するために、第一の発明に係る遊技機は、視差障壁を利用して遊技者に立体視させることが可能な三次元画像と、二次元画像と、を同時に表示することが可能な表示手段と、前記三次元画像の表示に用いる三次元画像データと、前記二次元画像の表示に用いる二次元画像データと、を記憶する記憶手段と、を備え、圧縮前の画像データのデータ量と圧縮後の画像データのデータ量との比率を圧縮率とした場合に、前記三次元画像データの圧縮率は、前記二次元画像データの圧縮率と比較して低く、前記三次元画像データ及び前記二次元画像データを含む描画データについて、水平方向の倍率が等倍とされていることを特徴とする。
第一の発明に係る遊技機では、三次元画像データの圧縮率が、二次元画像データの圧縮率と比較して低くなっている。換言すると、二次元画像データの圧縮率が、三次元画像データの圧縮率と比較して高くなっている。
これによって、三次元画像データに基づいて鮮明な立体視を得ることを可能としつつ、記憶手段の容量の圧迫を抑制することが可能となる。
ここで、視差障壁としては、後述するレンチキュラーレンズ31bが該当する。表示手段としては、後述するメイン画像表示装置31が該当する。三次元画像データとしては、後述する圧縮三次元素材画像データ(圧縮右眼用画像データ及び圧縮左目用画像データ)が該当する。二次元画像データとしては、後述する圧縮二次元画像データが該当する。記憶手段としては、後述するCGROM303が該当する。
【発明の効果】
【0007】
本発明によれば、制御負担の増大を抑制することが可能となる。
【図面の簡単な説明】
【0008】
図1】パチンコ機の全体構成を示す斜視図である。
図2】遊技盤の正面を示し、特に説明に必要な部分を模式的に示した図である。
図3】パチンコ機の制御系の構成を示すブロック図である。
図4】CPU210が使用するメモリ領域のアドレスマップである。
図5】CPU初期化処理を示すフローチャートである。
図6】メインループ処理を示すフローチャートである。
図7】電源遮断時退避処理を示すフローチャートである。
図8】タイマ割込み処理を示すフローチャートである。
図9】ダイナミックポート出力処理を示すフローチャートである。
図10】性能表示装置出力処理を示すフローチャートである。
図11】設定関連処理を示すフローチャートである。
図12】スイッチ管理処理を示すフローチャートである。
図13】普図始動球検出処理を示すフローチャートである。
図14】特図1始動球検出処理を示すフローチャートである。
図15】特図2始動球検出処理を示すフローチャートである。
図16】特別図柄乱数取得処理を示すフローチャートである。
図17】特別遊技管理処理を示すフローチャートである。
図18】特図変動待ち処理を示すフローチャートである。
図19】特図変動中処理を示すフローチャートである。
図20】特図停止中処理を示すフローチャートである。
図21】大入賞口開放前処理を示すフローチャートである。
図22】特別電役開閉切替処理を示すフローチャートである。
図23】大入賞口開放制御処理を示すフローチャートである。
図24】大入賞口閉鎖有効処理を示すフローチャートである。
図25】大入賞口開放終了ウェイト処理を示すフローチャートである。
図26】普通遊技管理処理を示すフローチャートである。
図27】普図変動待ち処理を示すフローチャートである。
図28】普図変動中処理を示すフローチャートである。
図29】普図停止中処理を示すフローチャートである。
図30】普通電動役物開放前処理を示すフローチャートである。
図31】普通電役開閉切替処理を示すフローチャートである。
図32】普通電動役物開放制御処理を示すフローチャートである。
図33】普通電動役物閉鎖有効処理を示すフローチャートである。
図34】普通電動役物開放終了ウェイト処理を示すフローチャートである。
図35】性能表示装置制御処理を示すフローチャートである。
図36】サブCPU初期化処理を示すフローチャートである。
図37】サブタイマ割込み処理を示すフローチャートである。
図38】コマンド解析処理を示すフローチャートである。
図39】保留コマンド受信処理を示すフローチャートである。
図40】先読みコマンド受信処理を示すフローチャートである。
図41】変動コマンド受信処理を示すフローチャートである。
図42】停止コマンド受信処理を示すフローチャートである。
図43】オープニングコマンド受信処理を示すフローチャートである。
図44】初期転送処理を示すフローチャートである。
図45】Vsync割込み処理を示すフローチャートである。
図46】スケーラ倍率変更処理を示すフローチャートである。
図47】コマンド構築タスク処理を示すフローチャートである。
図48】サウンド割込み処理を示すフローチャートである。
図49】ランプ割込み処理を示すフローチャートである。
図50】可動体割込み処理を示すフローチャートである。
図51】発射条件検出回路及び発射制御回路の構成を示すブロック図である。
図52】演出制御基板の構成を示すブロック図である。
図53】各種サブ演出の制御が可能となるタイミングを示す図である。
図54】レンチキュラーレンズの構成を示す図である。
図55】2D表示演出時描画処理の内容を示す図である。
図56】3D表示演出時描画処理の内容を示す図である。
図57】描画コマンドの構築から映像信号の生成・出力までの処理の流れを示す図である。
図58】スケーラ倍率の変更要求の発生タイミングと変更後のスケーラ倍率の設定の有効化のタイミングとの関係を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図面を参照しながら説明する。
本実施形態では、本発明に係る遊技機を、パチンコ機1に適用している。
【0010】
(パチンコ機1の全体構成)
まず、パチンコ機1の全体構成を説明する。
図1は、パチンコ機の全体構成を示す斜視図である。パチンコ機1は、外枠ユニット2と、内枠ユニット3と、一体扉ユニット4と、遊技盤ユニット10と、を含んで構成されている。
外枠ユニット2、内枠ユニット3及び一体扉ユニット4は、ヒンジ機構を介して、互いに固定されている。これによって、内枠ユニット3は、外枠ユニット2に対して開閉することが可能となっている。また、一体扉ユニット4は、内枠ユニット3及び外枠ユニット2のそれぞれに対して開閉することが可能となっている。
【0011】
外枠ユニット2は、矩形の枠体(外枠)を含んで構成されている。そして、外枠ユニット2が備える外枠は、遊技場の島設備に対して固定される。
内枠ユニット3は、矩形の枠体(内枠)を含んで構成されている。内枠ユニット3は、外枠ユニット2の内側に配置される。
一体扉ユニット4は、矩形の扉状に形成されている。一体扉ユニット4は、略中央部に配設された透明板4aと、透明板4aの周囲に配設された装飾部4bと、透明板4aの下側に配設された受皿ユニット5と、受皿ユニット5の側方に配設された発射ハンドルユニット6と、を有している。
透明板4aは、樹脂、ガラス等の透明な材料により平板状に形成されている。装飾部4bは、透明又は半透明の樹脂材料により形成され、前方に向かって膨出する形状を有している。装飾部4bの上側の各角部には、その内部にスピーカ22(図3参照)が配設された音抜部4cが設けられている。各音抜部4cには、スピーカ22が出力する音声を通過させる複数の音抜孔が設けられている。また、装飾部4bには、枠ランプ20(図3参照)が配設されている。枠ランプ20は、ダイナミック点灯制御により駆動される複数の発光素子(LED)を含んで構成されている。
【0012】
受皿ユニット5は、遊技球(貸球及び賞球)を受ける受皿5aと、遊技者による操作が可能な各種の操作手段と、を含んで構成されている。
本実施形態では、各種の操作手段として、演出ボタン5b、回転型セレクター5c、光量調整ボタン(図示せず)、音量調整ボタン(図示せず)、十字キーボタン(図示せず)等を有している。
演出ボタン5bは、遊技者による押下操作が可能な操作部と、操作部の押下操作を検出するボタンスイッチ25(図3参照)と、を含んで構成されている。ボタンスイッチ25は、操作部が押下操作されるごとに、検出信号を演出制御基板300(図3参照)に対して出力する。
回転型セレクター5c(いわゆる「ジョグダイヤル」)は、遊技者による回転操作が可能な操作部と、操作部の回転操作を検出するダイヤルスイッチ26(図3参照)と、を含んで構成されている。ダイヤルスイッチ26は、操作部が所定角度(例えば、60[°])回転操作されるごとに、検出信号を演出制御基板300に対して出力する。
【0013】
光量調整ボタンは、遊技者による押下操作が可能な2つの操作部(第1の操作部及び第2の操作部)と、各操作部の押下操作を検出する光量調整スイッチ27(図3参照)と、を含んで構成されている。光量調整スイッチ27は、第1の操作部が押下操作されるごとに、第1の検出信号を演出制御基板300に対して出力し、第2の操作部が押下操作されるごとに、第2の検出信号を演出制御基板300に対して出力する。
音量調整ボタンは、遊技者による押下操作が可能な2つの操作部(第1の操作部及び第2の操作部)と、各操作部の押下操作を検出する音量調整スイッチ28(図3参照)と、を含んで構成されている。音量調整スイッチ28は、第1の操作部が押下操作されるごとに、第1の検出信号を演出制御基板300に対して出力し、第2の操作部が押下操作されるごとに、第2の検出信号を演出制御基板300に対して出力する。
十字キーボタンは、遊技者による押下操作が可能な4つの操作部(上キーボタン、下キーボタン、左キーボタン、及び、右キーボタン)と、各操作部の押下操作を検出する十字キースイッチ29(図3参照)と、を含んで構成されている。十字キースイッチ29は、上キーボタンが押下操作されるごとに、第1の検出信号を演出制御基板300に対して出力し、下キーボタンが押下操作されるごとに、第2の検出信号を演出制御基板300に対して出力し、左キーボタンが押下操作されるごとに、第3の検出信号を演出制御基板300に対して出力し、右キーボタンが押下操作されるごとに、第4の検出信号を演出制御基板300に対して出力する。
【0014】
また、受皿ユニット5の上面には、貸出操作部7が配設されている。貸出操作部7は、球貸ボタン7aと、返却ボタン7bと、度数表示装置7cと、を有している。
ここで、パチンコ機1は、プリペイドカードに記録されている情報の読出し及び更新を行うことが可能なCRユニット700と通信可能に接続されている。そして、プリペイドカード(図示せず)がCRユニット700に挿入されると、CRユニット700に挿入されたプリペイドカードに記録されている有価媒体の残存度数が度数表示装置7cに表示される。
また、プリペイドカードがCRユニット700に挿入されている状態で球貸ボタン7aが操作されると、所定数の遊技球が受皿5aに払い出される。この際、払い出された遊技球の数に応じてプリペイドカードに記録されている有価媒体の残存度数が更新されて、更新された有価媒体の残存度数が度数表示装置7cに表示される。
さらに、有価媒体の残存度数が残っているプリペイドカードがCRユニット700に挿入されている状態で返却ボタン7bが操作されると、CRユニット700からプリペイドカードが返却される。
ここで、プリペイドカートとしては、例えば、磁気記憶媒体、記憶IC内蔵媒体等が該当する。
【0015】
発射ハンドルユニット6は、ハンドルベース部(図示せず)と、ハンドル操作部(図示せず)と、発射停止ボタン(図示せず)と、を含んで構成されている。
ハンドルベース部は、一体扉ユニット4の正面側に取り付けられている。ハンドルベース部の正面側には、軸受部が設けられている。
ハンドル操作部は、遊技者による把持が可能となる形状に構成されている。ハンドル操作部の背面側には、回転軸部が設けられている。ハンドル操作部は、その回転軸部が、ハンドルベース部の軸受部により軸支されることにより、ハンドルベース部に対して回転可能に取り付けられている。
ハンドル操作部は、所定の初期位置から所定の限度位置までの間において、回転操作(変位)することが可能となっている。発射ハンドルユニット6の内部には、ハンドル操作部を初期位置側に向かって不勢する不勢手段(本実施形態では、バネ)が配置されている。これによって、ハンドル操作部は、遊技者による回転操作が行われていないときに、初期位置に配置(変位)される。
発射停止ボタンは、ハンドル操作部の側面側に設けられている。発射停止ボタンは、遊技者による押下操作が可能となっている。
【0016】
また、発射ハンドルユニット6は、発射ボリューム411と、タッチセンサ412と、発射停止スイッチ413と、を含んで構成されている。
発射ボリューム411は、可変抵抗器により構成されている。発射ボリューム411は、ハンドル操作部の回転操作量(ハンドル操作部が回転操作された角度)を検出する。具体的に、発射ボリューム411は、回転軸と、回転軸の回転量(回転角度)に応じて抵抗値が変化する抵抗体と、を含んで構成されている。発射ボリューム411の回転軸は、ハンドル操作部の回転軸部に対して同軸状に固定されている。これによって、ハンドル操作部の回転操作に応じて、発射ボリューム411の回転軸が回転され、ハンドル操作部の回転操作量に応じて、発射ボリューム411の抵抗値が変化する。
発射ボリューム411は、操作検出部421(図51参照)と電気的に接続されている。操作検出部421は、発射ボリューム411の抵抗値(電圧値)の変化に基づいて、ハンドル操作部の回転操作(回転操作量)を検出する。
タッチセンサ412は、静電容量の変化に基づいて、遊技者によるハンドル操作部への接触(把持)を検出する。そして、タッチセンサ412は、遊技者によるハンドル操作部への接触が検出されているときに、タッチ信号を発射可能条件検出部422(図51参照)に対して出力する(タッチ信号をハイレベルとする)。一方、タッチセンサ412は、遊技者によるハンドル操作部への接触が検出されていないときに、発射可能条件検出部422に対するタッチ信号の出力を停止する(タッチ信号をローレベルとする)。
発射停止スイッチ413は、発射停止ボタンの押下操作を検出する。そして、発射停止スイッチ413は、発射停止ボタンの押下操作が検出されていないときに、発射停止信号を発射可能条件検出部422に対して出力する(発射停止信号をハイレベルとする)。一方、発射停止スイッチ413は、発射停止ボタンの押下操作が検出されているときに、発射可能条件検出部422に対する発射停止信号の出力を停止する(発射停止信号をローレベルとする)。
【0017】
(遊技盤ユニット10の構成)
次に、遊技盤ユニット10の構成を説明する。
図2は、遊技盤の正面を示し、特に説明に必要な部分を模式的に示した図である。図54は、レンチキュラーレンズの構成を示す図である。なお、図54では、メイン画像表示装置31を上側から見た状態を示している。
遊技盤ユニット10は、内枠ユニット3により支持されている。具体的には、遊技盤ユニット10は、内枠ユニット3が備える内枠の内側に取り付けられている。これによって、遊技盤ユニット10は、一体扉ユニット4の背面側に配置される。そして、遊技者は、透明板4aを介して、後述する遊技盤11(遊技領域30)を視認することが可能となっている。本実施形態では、透明板4aの背面と遊技盤11の正面との間に、後述する遊技領域30が構成される。
図2に示すように、遊技盤ユニット10は、セット板(図示せず)と、セット板に取り付けられた遊技盤11と、セット板に取り付けられた各種演出装置(メイン画像表示装置31、サブ画像表示装置32、可動体ユニット等)と、を備えている。
【0018】
セット板は、正面側が開放された箱状に形成されている。セット板の背面板における略中央部には、貫通孔からなる開口部が設けられている。
遊技盤11は、セット板の正面側に取り付けられている。遊技盤11は、樹脂により、平板状に形成されている。遊技盤11の略中央部には、貫通孔からなる開口部(図示せず)が設けられている。そして、遊技者は、遊技盤11に設けられた開口部及びセット板に設けられた開口部を介して、メイン画像表示装置31の表示画面31aを視認することが可能となっている。
遊技盤11の正面における開口部の周囲には、発射ハンドルユニット6の回転操作に応じて打ち出された遊技球が流下する遊技領域30が形成されている。そして、遊技領域30には、遊技球が流下する経路として、メイン画像表示装置31の左側に形成された左側経路と、メイン画像表示装置31の右側に形成された右側経路と、が構成されている。
また、遊技盤11の遊技領域30には、盤面ランプ21(図3参照)が配設されている。盤面ランプ21は、ダイナミック点灯制御により駆動される複数の発光素子(LED)を含んで構成されている。
【0019】
メイン画像表示装置31は、セット板の背面側に取り付けられている。メイン画像表示装置31は、液晶ディスプレイ、CRT(Cathode Ray Tube)ディスプレイ等の可変表示装置によって構成される。
メイン画像表示装置31は、液晶パネル(図示せず)と、液晶パネルの背面側に配置されたバックライト(図示せず)と、液晶パネルの正面側に配置されたレンチキュラーレンズ31bと、を含んで構成されている。
液晶パネルには、複数の画素(ピクセル)Pが表示画に沿ってマトリクス状(本実施形態では、垂直方向1024×水平方向1280)に配置されている。そして、液晶パネルの表示面に配置された複数の画素によって、演出画像を表示することが可能な表示画面31aが構成されている。
具体的に、液晶パネルでは、垂直方向に沿って配置された所定数(本実施形態では、1024[個])の画素Pからなる画素列が、水平方向に沿って所定列(本実施形態では、1280[列])配置されている。
各画素Pは、R(赤)、G(緑)及びB(青)の3つの副画素(サブピクセル)SPを含んで構成されている。各画素Pは、3つの副画素SPが水平方向に沿って配置されて構成されている。各副画素は、8[bit]で輝度制御され、256諧調の表現が可能となっている。
以上により、液晶パネル(表示画面31a)は、垂直方向に沿って配置された所定数(本実施形態では、1024[個])の副画素SPからなる副画素列が、水平方向に沿って所定列(本実施形態では、3840[列])配置されて構成されている。各副画素列は、R(赤)、G(緑)及びB(青)のうち、いずれかの副画素SPが、垂直方向に沿って所定数(本実施形態では、1024[個])配置されて構成されている。すなわち、液晶パネルでは、水平方向に沿って、R(赤)の副画素列、G(緑)の副画素列、B(青)の副画素列、R(赤)の副画素列、G(緑)の副画素列、B(青)の副画素列・・・の順に、所定数(本実施形態では、3840[列])の副画素列が配置されている。
【0020】
バックライトは、発光ダイオード(LED)等により構成され、液晶パネルに対して光を照射する。
図54に示すように、レンチキュラーレンズ31bは、透明なシートの表面において、所定数(本実施形態では、1920[本])のシリンドリカルレンズ(円筒面レンズ)CLが並行に配置されることにより構成されている。各シリンドリカルレンズCLは、蒲鉾型のレンズとなっている。
レンチキュラーレンズ31bでは、各シリンドリカルレンズCLが、正面側(図54における下側)に向かって凸となるように配置されている。また、レンチキュラーレンズ31bでは、各シリンドリカルレンズCLが、上下方向(図54における奥行方向)に沿って延びるように配置されている。さらに、レンチキュラーレンズ31bでは、所定数(本実施形態では、1920[本])のシリンドリカルレンズCLが、左右方向(図54における左右方向)に沿って並行に配置されている。
【0021】
図54に示すように、メイン画像表示装置31では、1[本]のシリンドリカルレンズCLに、2[列]の副画素列(サブピクセル列)が対応している。すなわち、各シリンドリカルレンズCLの背面側に、2[列]の副画素列が配置されている。そして、各シリンドリカルレンズCLに対応する2[列]の副画素列のうち、一方の副画素列に、後述する右眼用画像が表示され、他方の副画素列に、後述する左眼用画像が表示される。
これによって、1[本]のシリンドリカルレンズCLに、2[列]の画素列(ピクセル列)が対応している構成(各シリンドリカルレンズCLに対応する2[列]の画素列のうち、一方の画素列に、右眼用画像が表示され、他方の画素列に、左眼用画像が表示される構成)と比較して、鮮明な立体視を得ることが可能となる。
【0022】
パチンコ機1では、メイン画像表示装置31により、2D表示演出と、3D表示演出と、を実行することが可能となっている。
「2D表示演出」では、表示画面31aにおいて、二次元画像のみを含んでなる演出画像が表示される。
「二次元画像(2D画像・平面画像)」は、遊技者に平面視(平面的な像・表示を認識・知覚)させる画像となっている。なお、二次元画像については、レンチキュラーレンズ31bを通して視認しても、遊技者において、立体視が得られることがなく、平面視が得られる(平面的な像・表示が認識・知覚される)。
これによって、2D表示演出は、遊技者において、表示画面31aに表示された演出画像に基づく立体視を得ることができない表示演出となっている。
「3D表示演出」では、表示画面31aにおいて、三次元画像を含んでなる演出画像が表示される。本実施形態に係る3D表示演出では、、表示画面31aにおいて、三次元画像と、二次元画像と、を含んでなる演出画像が表示される。
「三次元画像(3D画像・立体画像)」は、視差障壁(具体的には、レンチキュラーレンズ31b)を利用することにより、遊技者に立体視(立体的な像・表示を認識・知覚)させることが可能となる画像となっている。すなわち、三次元画像は、レンチキュラーレンズ31bを通して視認することにより、遊技者において、立体視を得ることが可能(立体的な像・表示を認識・知覚させることが可能)な画像となっている。
すなわち、表示画面31aに表示された演出画像に、三次元画像と、二次元画像と、が含まれる場合、遊技者が、レンチキュラーレンズ31bを通して、当該演出画像を視認することで、三次元画像については、立体視され、二次元画像については、平面視されることになる。
これによって、3D表示演出は、遊技者において、表示画面31aに表示された演出画像に基づく立体視を得ることができる表示演出となっている。
【0023】
三次元画像は、互いに視差を有する一対の三次元素材画像(具体的には、右眼用画像及び左眼用画像)から生成(構成)される。そして、3D表示演出では、表示画面31aに表示された三次元画像に含まれる右眼用画像が、遊技者の右眼のみに視認され、表示画面31aに表示された三次元画像に含まれる左眼用画像が、遊技者の左眼のみに視認されることにより、遊技者において、立体視を得ることが可能となる。
本実施形態では、右眼用画像(右眼用画像データ)を構成する副画素列のうち、奇数列(1列、3列、5列・・・)の副画素列と、左眼用画像(左眼用画像データ)を構成する副画素列のうち、偶数列(2列、4列、6列・・・)の副画素列と、を合成することにより、三次元画像が生成される。
すなわち、三次元画像は、右眼用画像を構成する副画素列と、左眼用画像を構成する副画素列と、が交互に配置されることにより構成されている。
なお、右眼用画像(右眼用画像データ)を構成する副画素列のうち、偶数列(2列、4列、6列・・・)の副画素列、及び、左眼用画像(左眼用画像データ)を構成する副画素列のうち、奇数列(1列、3列、5列・・・)の副画素列は、三次元画像に含まれない。
また、本実施形態では、表示画面31aを構成する所定数(本実施形態では、3840[列])の副画素列のうち、奇数列(1列、3列、5列・・・)の副画素列が、右眼用画像表示領域とされ、偶数列(2列、4列、6列・・・)の副画素列が、左眼用画像表示領域とされている。
そして、3D表示演出では、表示画面31aにおいて、三次元画像に含まれる右眼用画像が、右眼用画像表示領域に表示され、三次元画像に含まれる左眼用画像が、左眼用表示領域に表示される。
すなわち、表示画面31aを構成する所定数(本実施形態では、3840[列])の副画素列のうち、奇数列(1列、3列、5列・・・)の副画素列において、三次元画像に含まれる右眼用画像が表示され、偶数列(2列、4列、6列・・・)の副画素列において、三次元画像に含まれる左眼用画像が表示される。
【0024】
そして、メイン画像表示装置31では、レンチキュラーレンズ31bにより、表示画面31aから出射した光線(バックライトから照射され、表示画面31aを透過した光線)の方向が制御される。
すなわち、遊技者の両目(視点)が所定領域内に配置されていることを前提として、レンチキュラーレンズ31bにより、表示画面31aから出射した光線が、右眼用画像表示領域(右眼用画像を表示している副画素列)からの光線と、左眼用画像表示領域(左眼用画像を表示している副画素列)からの光線と、に分離され、右眼用画像表示領域からの光線が、遊技者の右眼に到達し、左眼用画像表示領域からの光線が、遊技者の左眼に到達する。
これによって、遊技者の右眼により、右眼用画像表示領域に表示されている右眼用画像が視認され、遊技者の左眼により、左眼用画像表示領域に表示されている左眼用画像が視認される。この際、右眼用画像表示領域に表示されている右眼用画像は、遊技者の右眼のみにより視認され、遊技者の左眼により視認されることがない。また、左眼用画像表示領域に表示されている左眼用画像は、遊技者の左眼のみにより視認され、遊技者の右眼により視認されることがない。
その結果、遊技者の両目に視差が発生し、表示画面31aに表示された三次元画像に基づく立体視が得られる。すなわち、三次元画像により表示されるオブジェクトについて、立体的(三次元的)な表示(表示画面31aの正面側に向かって飛び出しているような表示、表示画面31aの背面側に引っ込んでいるような表示等)を、遊技者に認識・知覚させることが可能となる。
【0025】
表示画面31aには、第1演出図柄z1(図示せず)が表示される3つの第1演出図柄表示領域a1~a3(図示せず)と、第2演出図柄z2(図示せず)が表示される1つの第2演出図柄表示領域a4(図示せず)と、を構成することが可能となっている。
第1演出図柄z1は、数字、文字、記号、キャラクター等の識別情報(図柄)を含んで構成されている。各第1演出図柄表示領域a1~a3では、第1演出図柄z1の変動表示及び停止表示を行うことが可能となっている。第2演出図柄z2は、カラーバーから構成されている。第2演出図柄表示領域a4では、第2演出図柄z2の変動表示及び停止表示を行うことが可能となっている。
【0026】
演出図柄z1,z2の変動表示とは、各第1演出図柄表示領域a1~a3において、第1演出図柄z1が移動(スクロール)され、かつ、第2演出図柄表示領域a4に表示されている第2演出図柄z2の種類が変更される(カラーバーが表す色が、順次、変更される)表示をいう。
演出図柄z1,z2の停止表示とは、各第1演出図柄表示領域a1~a3の抽選結果表示位置において、一の種類の第1演出図柄z1が停止され、かつ、第2演出図柄表示領域a4において、一の種類の第2演出図柄z2が表示される(カラーバーが所定の色を表す)表示をいう。
そして、3つの第1演出図柄表示領域a1~a3において停止表示された第1演出図柄z1と、第2演出図柄表示領域a4において停止表示された第2演出図柄z2と、の組み合わせによって、特別図柄抽選(第1特別図柄抽選又は第2特別図柄抽選)の結果が表示される。
また、表示画面31aには、保留図柄h(図示せず)が表示される保留図柄表示領域b1,b2(図示せず)を構成することが可能となっている。
保留図柄表示領域b1には、報知表示(特別図柄の変動表示及び停止表示)中の遊技情報に対応する保留図柄hが表示される。保留図柄表示領域b2には、報知表示が保留されている遊技情報に対応する保留図柄hが表示される。
【0027】
サブ画像表示装置32は、メイン画像表示装置31の正面側の位置に配設されている。
サブ画像表示装置32は、液晶ディスプレイ、CRTディスプレイ等の可変表示装置によって構成される。サブ画像表示装置32は、演出画像を表示することが可能な表示画面32aを有している。
サブ画像表示装置32は、図示しない駆動機構により、上下方向に沿って変位(移動)させることが可能となっている。具体的に、サブ画像表示装置32は、原点位置(図2参照)と、原点位置より下方の演出位置(図示せず)と、を含む所定範囲内において、変位させることが可能となっている。
そして、原点位置に配置(変位)されているサブ画像表示装置32は、メイン画像表示装置31の表示画面31aの上方に配置され、表示画面31aを被覆しない。一方、演出位置に配置(変位)されているサブ画像表示装置32は、メイン画像表示装置31の表示画面31aの正面側に配置され、表示画面31aの一部を被覆する。
【0028】
遊技領域30における表示画面31aの下方には、第1始動口51が設けられている。第1始動口51は、上向きに開口した入球口(いわゆる「ヘソ」)であり、常時、遊技球の入球が可能となっている。第1始動口51は、左側経路を流下する遊技球の入球が可能(右側経路を流下する遊技球の入球が不可能)となっている。
第1始動口51内には、特図1始動口スイッチ101(図3参照)が配設されている。特図1始動口スイッチ101は、第1始動口51に入球した遊技球(第1始動口51への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、特図1始動口スイッチ101からの検出信号の入力に応じて、第1特別図柄抽選を実行する。
【0029】
遊技領域30における第1始動口51の左方には、左上他入賞口55と、左中他入賞口56と、左下他入賞口57と、が設けられている。各他入賞口55~57は、上向きに開口した入球口であり、常時、遊技球の入球が可能となっている。各他入賞口55~57は、左側経路を流下する遊技球の入球が可能(右側経路を流下する遊技球の入球が不可能)となっている。
遊技盤11には、左入賞口スイッチ106(図3参照)が配設されている。左入賞口スイッチ106は、左上他入賞口55に入球した遊技球(左上他入賞口55への遊技球の入球)、左中他入賞口56に入球した遊技球(左中他入賞口56への遊技球の入球)、及び、左下他入賞口57に入球した遊技球(左下他入賞口57への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、左入賞口スイッチ106からの検出信号の入力に応じて、遊技球払出装置440に賞球の払い出し動作を実行させる。
【0030】
遊技領域30における表示画面31aの右方には、始動ゲート41が設けられている。始動ゲート41は、常時、遊技球による通過が可能となるように形成されている。始動ゲート41は、右側経路を流下する遊技球の通過が可能(左側経路を流下する遊技球の通過が不可能)となっている。
始動ゲート41には、ゲートスイッチ104(図3参照)が配設されている。ゲートスイッチ104は、始動ゲート41を通過する遊技球(遊技球による始動ゲート41の通過)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、ゲートスイッチ104からの検出信号の入力に応じて、普通図柄抽選を実行する。
【0031】
遊技領域30における始動ゲート41の下方には、大入賞口53が設けられている。大入賞口53には、大入賞口53への遊技球の入球を不可能にする閉鎖状態と、大入賞口53への遊技球の入球を可能にする開放状態と、に変位することが可能な特別電動役物(特別電役)53a(いわゆる「アタッカー」)が設けられている。
特別電動役物53aは、大入賞口ソレノイド65(図3参照)によって開閉される。大入賞口53は、通常時は、特別電動役物53aが閉鎖状態とされて、遊技球の入球が不可能となっているが、第1特別図柄抽選又は第2特別図柄抽選に当選して、大当り遊技状態が生起された場合に、特別電動役物53aが開放状態とされて、遊技球の入球が可能となる。大入賞口53は、右側経路を流下する遊技球の入球が可能(左側経路を流下する遊技球の入球が不可能)となっている。
大入賞口53内には、カウントスイッチ103(図3参照)が配設されている。カウントスイッチ103は、大入賞口53に入球した遊技球(大入賞口53への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、カウントスイッチ103からの検出信号の入力に応じて、遊技球払出装置440に賞球の払い出し動作を実行させる。
【0032】
遊技領域30における大入賞口53の下方には、第2始動口52が設けられている。第2始動口52には、第2始動口52への遊技球の入球を不可能にする閉鎖状態と、第2始動口52への遊技球の入球を可能にする開放状態と、に変位することが可能な普通電動役物(普通電役)52a(いわゆる「電動チューリップ」)が設けられている。
普通電動役物52aは、普通電動役物ソレノイド64(図3参照)によって開閉される。第2始動口52は、通常時は、普通電動役物52aが閉鎖状態とされて、遊技球の入球が不可能となっているが、普通図柄抽選に当選した場合に、普通電動役物52aが開放状態とされて、遊技球の入球が可能となる。第2始動口52は、右側経路を流下する遊技球の入球が可能(左側経路を流下する遊技球の入球が不可能)となっている。
第2始動口52内には、特図2始動口スイッチ102(図3参照)が配設されている。特図2始動口スイッチ102は、第2始動口52に入球した遊技球(第2始動口52への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、特図2始動口スイッチ102からの検出信号の入力に応じて、第2特別図柄抽選を実行する。
【0033】
遊技領域30における第2始動口52の下方には、右他入賞口54が設けられている。右他入賞口54は、上向きに開口した入球口であり、常時、遊技球の入球が可能となっている。右他入賞口54は、右側経路を流下する遊技球の入球が可能(左側経路を流下する遊技球の入球が不可能)となっている。
右他入賞口54内には、右入賞口スイッチ105(図3参照)が配設されている。右入賞口スイッチ105は、右他入賞口54に入球した遊技球(右他入賞口54への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、右入賞口スイッチ105からの検出信号の入力に応じて、遊技球払出装置440に賞球の払い出し動作を実行させる。
【0034】
遊技領域30における最下方の位置には、いずれの入賞口51~57にも入球(入賞)しなかった遊技球を排出するためのアウト口58が設けられている。
ここで、内枠ユニット3には、遊技領域30から排出された遊技球が通過する排出路(図示せず)が含まれている。具体的には、排出路は、内枠ユニット3が備える内枠の背面側に取り付けられている。そして、パチンコ機1では、遊技領域30に打ち出された全ての遊技球(遊技領域30から排出された全ての遊技球)が、排出路を通過するように構成されている。すなわち、遊技領域30に打ち出された遊技球は、いずれかの入賞口51~57に入球することによって、又は、アウト口58を通過することによって、遊技領域30から排出され、排出路へ流入する。
具体的には、各入賞口51~57に入球した遊技球は、当該入賞口内に配設されたスイッチ101~103,105,106により検出された後に、排出路に誘導される。また、アウト口58から排出された遊技球は、排出路に誘導される。
内枠ユニット3には、アウトスイッチ109(図3参照)が配設されている。そして、アウトスイッチ109は、排出路を通過する遊技球(遊技領域30から排出された遊技球)の検出に応じて、検出信号を主制御基板200に対して出力する。これによって、遊技領域30から排出された全ての遊技球は、アウトスイッチ109によって検出される。
さらに、遊技領域30には、各入賞口51~57や始動ゲート41に遊技球を導くように複数の釘(図示せず)が配置されている。
【0035】
遊技盤11には、メイン表示装置60が配設されている。メイン表示装置60は、複数の点灯素子(セグメント)を含んで構成されている。各点灯素子は、発光素子(本実施形態では、LED)により構成されている。
メイン表示装置60には、遊技に関する情報が表示される。
メイン表示装置60は、特図1表示装置と、特図2表示装置と、普図表示装置と、特図1保留表示装置と、特図2保留表示装置と、普図保留表示装置と、ラウンド表示装置と、右打ち表示装置と、確変表示装置と、時短表示装置と、を含んで構成されている。
具体的には、メイン表示装置60は、32の点灯素子(LED1~LED32)を含んで構成されている。
そして、メイン表示装置60では、LED1~LED8が、特図1表示装置を構成し、LED7~LED16が、特図2表示装置を構成し、LED17,18が、普図表示装置を構成し、LED19~LED23が、ラウンド表示装置を構成し、LED24が,右打ち表示装置を構成し、LED25,26が、特図1保留表示装置を構成し、LED27,28が、特図2保留表示装置を構成し、LED29,30が、普図保留表示装置を構成し、LED31が、確変表示装置を構成し、LED32が、時短表示装置を構成している。
【0036】
図1表示装置は、数字や図柄等からなる第1特別図柄の変動表示及び停止表示を行うことが可能となっている。そして、特図1表示装置では、停止表示された第1特別図柄によって、第1特別図柄抽選の結果が表示される。
図2表示装置は、数字や図柄等からなる第2特別図柄の変動表示及び停止表示を行うことが可能となっている。そして、特図2表示装置では、停止表示された第2特別図柄によって、第2特別図柄抽選の結果が表示される。
ここで、特図表示装置における特別図柄(第1特別図柄又は第2特別図柄)の表示と、演出図柄表示領域a1~a4における演出図柄z1,z2の表示とは、変動表示が開始される時期、停止表示が開始される時期、及び、停止表示された図柄が示す抽選結果のそれぞれについて対応付けられている。
そして、特図1表示装置に停止表示された第1特別図柄(停止図柄)が特定の図柄(大当り図柄)となった場合、又は、特図2表示装置において停止表示された第2特別図柄(停止図柄)が特定の図柄(大当り図柄)となった場合には、遊技者に有利な遊技状態である大当り遊技状態が生起される。
【0037】
普図表示装置は、数字や図柄等からなる普通図柄の変動表示及び停止表示を行うことが可能となっている。そして、普図表示装置では、停止表示された普通図柄によって、普通図柄抽選の結果が表示される。そして、普図表示装置に停止表示された普通図柄が特定の図柄(普図当り図柄)となった場合には、遊技者に有利な遊技状態である普図当り遊技状態が生起される。
【0038】
図1保留表示装置には、第1特別図柄抽選の抽選結果の表示が保留されている回数(特図1保留数)が表示される。
図2保留表示装置には、第2特別図柄抽選の抽選結果の表示が保留されている回数(特図2保留数)が表示される。
普図保留表示装置には、普通図柄抽選の抽選結果の表示が保留されている回数(普図保留数)が表示される。
ラウンド表示装置には、大当り遊技状態中に実行されるラウンド遊技の回数(大当り遊技状態の種別)が表示される。
右打ち表示装置には、遊技球を打ち出すべき経路(左側経路又は右側経路)が表示される。
確変表示装置には、電源復帰時の遊技状態(特図高確率状態の生起中又は特図低確率状態の生起中)が表示される。
時短表示装置には、現在の遊技状態(時短制御の実行中又は停止中)が表示される。
【0039】
また、パチンコ機1には、一又は複数の可動体ユニット(図示せず)が配設されている。本実施形態では、一体扉ユニット4において、一又は複数の可動体ユニットが配設され、また、遊技盤ユニット10において、一又は複数の可動体ユニットが配設されている。
一体扉ユニット4の各可動体ユニットは、装飾部4bの正面、受皿ユニット5の上面等に配設され、所定の演出動作を行うことが可能となっている。
遊技盤ユニット10の各可動体ユニットは、セット板の正面側に取り付けられている。具体的に、各可動体ユニットは、遊技盤11とメイン画像表示装置31(表示画面31a)との間の空間(以下、「演出空間」とする)に配設されている。そして、各可動体ユニットは、演出空間において、所定の演出動作を行うことが可能となっている。
各可動体ユニットは、演出部材と、駆動機構と、駆動源と、位置検出センサ24(図3参照)と、を含んで構成されている。本実施形態では、駆動源として、モータ23(図3参照)が用いられている。モータ23は、ステッピングモータとなっている。なお、駆動源として、ソレノイドが用いられる構成としても構わない。
演出部材は、駆動機構により、所定の方向に沿って変位させることが可能となっている。具体的には、演出部材は、初期位置と、演出位置と、を含む複数の位置に変位させることが可能となっている。演出部材は、モータ23によって駆動(変位)される。
【0040】
位置検出センサ24は、フォトセンサ等によって構成されている。位置検出センサ24は、演出部材の位置を検出する。具体的に、位置検出センサ24は、投光部と、投光部から投光された光を受光する受光部と、を備えている。そして、位置検出センサ24は、受光部による投光部から投光された光の受光(検出)に応じて、検出信号を演出制御基板300に対して出力する。一方、位置検出センサ24は、受光部により投光部から投光された光を受光(検出)していないときには、演出制御基板300に対する検出信号の出力を停止する。
また、演出部材の所定位置には、遮蔽板が設けられている。そして、演出部材が初期位置に配置されているときには、遮蔽板が、位置検出センサ24の投光部と受光部との間に配置され、受光部への光の入光が遮断される。これによって、演出部材が初期位置に配置されているときには、位置検出センサ24から演出制御基板300に対する検出信号の出力が停止される。一方、演出部材が初期位置に配置されていないときには、位置検出センサ24から演出制御基板300に対して検出信号が出力される。
これによって、演出制御基板300では、位置検出センサ24からの検出信号の入力状況によって、演出部材が初期位置に配置されているか否かを検出することが可能となっている。
【0041】
また、パチンコ機1には、各種の異常状態を検出する検出センサが配設されている。
本実施形態では、検出センサとして、ガラス枠開放センサ107、内枠開放センサ108、振動検出センサ113、電波検出センサ114、磁気検出センサ115等が配設されている。
ガラス枠開放センサ107は、内枠ユニット3に対する一体扉ユニット4の開放を検出する。そして、ガラス枠開放センサ107は、内枠ユニット3に対する一体扉ユニット4の開放に応じて、検出信号を、払出制御基板400を介して、主制御基板200に対して送信する。
内枠開放センサ108は、外枠ユニット2に対する内枠ユニット3の開放を検出する。そして、内枠開放センサ108は、外枠ユニット2に対する内枠ユニット3の開放に応じて、検出信号を、払出制御基板400を介して、主制御基板200に対して送信する。
振動検出センサ113は、遊技盤11の振動を検出する。本実施形態では、振動検出センサ113は、遊技盤11に配設されている。そして、振動検出センサ113は、遊技盤11の振動の検出に応じて、検出信号を、主制御基板200に対して送信する。
電波検出センサ114は、遊技盤11の周辺に発生する電波を検出する。本実施形態では、遊技盤11において、2つの電波検出センサ114が配設されている。そして、各電波検出センサ114は、電波の検出に応じて、検出信号を、主制御基板200に対して送信する。
磁気検出センサ115は、遊技盤11の周辺に発生する磁気を検出する。本実施形態では、3つの磁気検出センサ115が配設されている。具体的には、内枠ユニット3(排出路)において、1つの磁気検出センサ115が配設されている。また、遊技盤11において、2つの磁気検出センサ115が配設されている。そして、内枠ユニット3に配設されている磁気検出センサ115は、磁気の検出に応じて、検出信号を、払出制御基板400を介して、主制御基板200に対して送信する。また、遊技盤11に配設されている各磁気検出センサ115は、磁気の検出に応じて、検出信号を、主制御基板200に対して送信する。
【0042】
(制御系の構成)
次に、パチンコ機1における制御系の構成を説明する。
図3は、パチンコ機の制御系の構成を示すブロック図である。図4は、CPU210が使用するメモリ領域のアドレスマップである。
パチンコ機1は、各種の制御基板を備えている。
具体的には、図3に示すように、パチンコ機1は、主制御基板200、演出制御基板300、払出制御基板400各制御基板200,300,400等に対して電源(電力)を供給する電源基板600、ドライバ基板330、サブ接続基板340等、複数の制御基板を備えている。
複数の制御基板200,300,400,600は、互いに独立した(別個の)回路基板となっている。また、各制御基板200,300,400,600は、個別の基板ケースに収容されている。
主制御基板200及び演出制御基板300は、遊技盤ユニット10に含まれている。具体的には、主制御基板200及び演出制御基板300は、遊技盤11の背面側に取り付けられている。
払出制御基板400は、内枠ユニット3に含まれている。具体的には、払出制御基板400は、内枠ユニット3が備える内枠の背面側に取り付けられている。
【0043】
(主制御基板200の構成)
まず、主制御基板200の構成を説明する。
主制御基板200は、遊技の進行を制御する。
主制御基板200は、ワンチップマイクロコンピュータ(ワンチップマイコン)、クロック発生回路202、乱数発生回路203、入力ポート204、出力ポート205、性能表示装置206、RAMクリアスイッチ207、設定キースイッチ208、シンクドライバ240、ソースドライバ250a,250b等を含んで構成されている。
ワンチップマイクロコンピュータは、CPUコア、レジスタ、半導体メモリ等を集積したLSIとなっている。具体的に、ワンチップマイクロコンピュータは、CPU210、ROM220、RAM230等を含んで構成されている。
【0044】
主制御基板200は、CPU210が使用するメモリ領域を含んで構成されている。図4に示すように、CPU210が使用するメモリ領域は、ROM220に割り当てられたメモリ領域(0000H~2FFFH)と、RAM230に割り当てられたメモリ領域(F000H~F3FFH)と、を含んで構成されている。
ここで、図4では、メモリ領域を特定するためのアドレスを、16進数で示している(「H」は、16進数であることを示している)。
【0045】
ROM220(ROM220のメモリ領域)は、使用領域m1(0000H~1A7AH)と、使用外領域m2(2000H~2BFFH)と、を含んで構成されている。
使用領域m1は、プログラム領域と、未使用領域と、データ領域と、を含んで構成されている。プログラム領域には、遊技の進行を制御するためのプログラム(プログラムコード)が格納されている。データ領域には、遊技の進行を制御するためのデータ(プログラムデータ)が格納されている。なお、使用領域m1は、未使用領域を含まずに構成されていても構わない。
使用外領域m2は、プログラム領域と、データ領域と、を含んで構成されている。
プログラム領域には、遊技機規則で定める試験に関する処理を実行するためのプログラム(プログラムコード)と、性能表示装置206の表示を制御(具体的には、ベース比率を算出)するためのプログラム(プログラムコード)と、が格納されている。データ領域には、遊技機規則で定める試験に関する処理を実行するためのデータ(プログラムデータ)と、性能表示装置206の表示を制御するためのデータ(プログラムデータ)と、が格納されている。
また、ROM220には、使用領域m1及び使用外領域m2の他にも、未使用領域、ROMコメント領域、プログラム管理領域等が設けられている。
ROMコメント領域には、プログラムのタイトル、バージョン等の任意のデータが格納されている。一方、プログラム管理領域には、CPU210が各種プログラムを実行するために必要な情報が格納されている。
また、ROM220には、使用領域m1と使用外領域m2との間に、所定バイト(例えば、16バイト以上)の未使用領域m3が設けられている。これによって、使用領域m1と使用外領域m2との境界を明確化している。
【0046】
RAM230(RAM230のメモリ領域)は、使用領域M1(F000H~F1FFH)と、使用外領域M2(F300H~F3FFH)と、を含んで構成されている。
使用領域M1は、ワーク領域と、スタック領域と、を含んで構成されている。
ワーク領域は、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)の実行中に、各種データを一時的に記憶する領域として使用される。一方、スタック領域は、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)の実行中に、各種データを一時的に退避させる領域として使用される。なお、使用領域M1は、未使用領域を含まずに構成されていても構わない。
具体的に、ワーク領域は、設定値領域と、遊技機状態フラグ領域と、チェックサム領域と、バックアップフラグ領域と、エラー関連領域と、通常遊技関連領域1と、通常遊技関連領域2と、を含んで構成されている。
設定値領域には、設定値が記憶される。遊技機状態フラグ領域には、遊技機状態フラグが記憶される。チェックサム領域には、チェックサムが記憶される。バックアップフラグ領域には、バックアップフラグが記憶される。エラー関連領域には、エラーに関する情報が記憶される。通常遊技関連領域1には、サブコマンドポインタ等が記憶される。通常遊技関連領域2には、主制御基板200における入出力データ、演算処理のためのデータ、各種カウンタ(乱数カウンタ、タイマカウンタ等)、抽選結果や遊技状態を管理するフラグ等が記憶される。特に、通常遊技関連領域2は、特図1始動口スイッチ101、特図2始動口スイッチ102、及び、ゲートスイッチ104のそれぞれからの検出信号の入力を契機として取得される遊技情報を記憶する領域(後述する遊技情報記憶領域)を含んで構成されている。
使用外領域M2は、ワーク領域と、スタック領域と、を含んで構成されている。
ワーク領域は、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)の実行中に、各種データを一時的に記憶する領域として使用される。一方、スタック領域は、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)の実行中に、各種データを一時的に退避させる領域として使用される。
具体的に、ワーク領域は、性能表示関連領域を含んで構成されている。性能表示関連領域は、性能表示装置206の表示を制御するためのプログラムの実行中に、各種データを一時的に記憶する領域として使用される。
また、RAM230には、使用領域M1と使用外領域M2との間に、所定バイト(16バイト以上)の未使用領域M3が設けられている。これによって、使用領域M1と使用外領域M2との境界を明確化している。
【0047】
本実施形態では、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)に基づく処理において、使用外領域M2に記憶されているデータを参照することが許可されている。
一方、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)に基づく処理により、使用外領域M2に記憶されているデータが書き換えられる(変更される)ことが禁止されている。
また、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)に基づく処理において、使用領域M1に記憶されているデータを参照することが許可されている。
一方、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)に基づく処理により、使用領域M1に記憶されているデータが書き換えられる(変更される)ことが禁止されている。
そして、パチンコ機1における遊技は、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)により、進行(完結)することが可能となっている。
【0048】
クロック発生回路202は、所定のクロック周波数(本実施形態では、12[MHz])でクロック(同期信号)を発生させて、このクロックをCPU210及び乱数発生回路203のそれぞれに対して出力する。
乱数発生回路203は、普通図柄抽選の当り乱数を発生させる第1ループカウンタと、第1特別図柄抽選の大当り乱数を発生させる第2ループカウンタと、第2特別図柄抽選の大当り乱数を発生させる第3ループカウンタと、リーチグループ乱数を発生させる第4ループカウンタと、を含んで構成されている。
第1ループカウンタは、クロック発生回路202から1クロックが入力されるごとに、ループカウンタの値を所定の範囲内(本実施形態では、0~65535の範囲内)において1ずつ更新することによって、普通図柄抽選の当り乱数を発生させる。本実施形態では、第1ループカウンタの値は、0.083[μs](1[s]/12[MHz]=0.083[μs])ごとに更新される。
第2ループカウンタは、クロック発生回路202から1クロックが入力されるごとに、ループカウンタの値を所定の範囲内(本実施形態では、0~65535の範囲内)において1ずつ更新することによって、第1特別図柄抽選の大当り乱数を発生させる。本実施形態では、第2ループカウンタの値は、0.083[μs](1[s]/12[MHz]=0.083[μs])ごとに更新される。
【0049】
第3ループカウンタは、クロック発生回路202から1クロックが入力されるごとに、ループカウンタの値を所定の範囲内(本実施形態では、0~65535の範囲内)において1ずつ更新することによって、第2特別図柄抽選の大当り乱数を発生させる。本実施形態では、第3ループカウンタの値は、0.083[μs](1[s]/12[MHz]=0.083[μs])ごとに更新される。
第4ループカウンタは、クロック発生回路202から32クロックが入力されるごとに(クロック周波数の32分周で1回)、ループカウンタの値を所定の範囲内(本実施形態では、0~10006の範囲内)において1ずつ更新することによって、リーチグループ乱数を発生させる。本実施形態では、第4ループカウンタの値は、2.666[μs](32[s]/12[MHz]=2.666[μs])ごとに更新される。
【0050】
入力ポート204は、複数の入力ポート(本実施形態では、入力ポート0~入力ポート3)を含んで構成されている。
入力ポート0には、ガラス枠開放センサ107からの検出信号、内枠開放センサ108からの検出信号、振動検出センサ113からの検出信号、一方の電波検出センサ114からの検出信号、磁気検出センサ115からの検出信号等が入力される。
入力ポート1には、RAMクリアスイッチ207からのRAMクリア信号、設定キースイッチ208からの検出信号、発射可能条件検出部422からのハンドル検出信号等が入力される。
入力ポート2には、カウントスイッチ103からの検出信号、右入賞口スイッチ105からの検出信号、左入賞口スイッチ106からの検出信号、アウトスイッチ109からの検出信号、他方の電波検出センサ114からの検出信号等が入力される。
入力ポート3には、特図1始動口スイッチ101からの検出信号、特図2始動口スイッチ102からの検出信号、ゲートスイッチ104からの検出信号等がが入力される。
各入力ポート(入力ポート0~入力ポート3)には、各スイッチ・センサ(検出信号)に対応する受信記憶領域が設けられている。各スイッチ・センサに対応する受信記憶領域には、当該スイッチ・センサからの検出信号の受信状態を示す1ビットのデータが設定される。
具体的に、各スイッチ・センサに対応する受信記憶領域には、当該スイッチ・センサからの検出信号が入力されている(ハイレベルである)ときに、「1」が設定され、当該スイッチ・センサからの検出信号が入力されていない(ローレベルである)ときに、「0」が設定される。
【0051】
出力ポート205は、複数の出力ポート(本実施形態では、出力ポート0~出力ポート4)を含んで構成されている。
出力ポート0は、メイン表示装置60の点灯を制御するためのデータ信号(「SEGDATA0」~「SEGDATA7」)を出力する。そして、出力ポート0から出力されたデータ信号は、ソースドライバ250aに入力される。
出力ポート1は、メイン表示装置60及び性能表示装置206の点灯を制御するためのコモン信号(「COM0」~「COM3」)、後述する発射条件を検出するための発射許可信号等を出力する。出力ポート1から出力されたコモン信号は、シンクドライバ240に入力される。
出力ポート2は、外部信号を出力する。この際、出力ポート2から出力された外部信号は、払出制御基板400及び外部端子基板450を介して、ホールコンピュータに入力される。
出力ポート3は、普通電動役物ソレノイド64の駆動を制御するための制御信号、大入賞口ソレノイド65の駆動を制御するための制御信号等を出力する。
出力ポート4は、性能表示装置206の点灯を制御するためのデータ信号(「7SEGDATA0」~「7SEGDATA7」)を出力する。そして、出力ポート4から出力されたデータ信号は、ソースドライバ250bに入力される。
【0052】
また、主制御基板200は、コマンド出力ポート1と、コマンド出力ポート2と、を含んで構成されている。そして、CPU210は、コマンド出力ポート1から、演出制御基板300に対して制御コマンド(サブコマンド)を送信するとともに、コマンド出力ポート2から、払出制御基板400に対して制御コマンド(払出コマンド)を送信する。
コマンド出力ポート1及びコマンド出力ポート2は、それぞれ、送信用データレジスタ(図示せず)と、FIFO(First In First Out)バッファ(図示せず)と、送信用シフトレジスタ(図示せず)と、を有している。
送信用データレジスタは、後述するサブコマンド送信処理(ステップS2-4)に基づいて入力された制御コマンドを、FIFOバッファに対して出力する。
FIFOバッファは、複数のレジスタから構成され、複数の制御コマンドを記憶することが可能となっている。そして、FIFOバッファは、送信用データレジスタから入力された制御コマンドを記憶するとともに、記憶している制御コマンドを入力された順番で送信用シフトレジスタに対して出力する。
送信用シフトレジスタは、FIFOバッファから入力された制御コマンドについて、パラレル-シリアル変換を行い、シリアルデータとして、演出制御基板300又は払出制御基板400に対して送信する。
【0053】
性能表示装置206は、複数の点灯素子(セグメント)を含んで構成されている。各点灯素子は、発光素子(本実施形態では、LED)により構成されている。なお、性能表示装置206は、遊技盤11の背面側に配置されていることによって、遊技者による視認が不可能となっている。
後述するように、パチンコ機1では、遊技機の状態(以下、「遊技機状態」とする)として、遊技可能状態と、設定変更状態と、設定確認状態と、設定異常状態と、RAM異常状態と、バックアップ異常状態と、が規定されている。そして、生起されている遊技機状態に応じて、性能表示装置206に表示される情報が変化する。
【0054】
性能表示装置206は、4つ(4桁)の表示部(図示せず)を含んで構成されている。各表示部は、8つの点灯素子から構成されている。すなわち、各表示部は、数字、記号等を表示することが可能な7セグメントLEDと、小数点等のドットを表示することが可能なドットセグメントLEDと、から構成されている。
具体的に、性能表示装置206は、32の点灯素子(LED33~LED64)を含んで構成されている。そして、性能表示装置206では、LED33~LED40が、1桁目の表示部となり、LED41~LED48が、2桁目の表示部となり、LED49~LED56が、3桁目の表示部となり、LED57~LED64が、4桁目の表示部となっている。
【0055】
遊技可能状態の生起中には、遊技の進行が可能となる。そして、遊技可能状態の生起中には、性能表示装置206において、ベース比率が表示される。
本実施形態では、遊技可能状態の生起中、性能表示装置206において、第1のベース比率と、第2のベース比率とが、所定時間(本実施形態では、5.0[s])ごとに、交互に表示される。
「第1のベース比率」は、現在の区間のベース比率(現在の区間の開始から現時点までの期間について算出されたベース比率)となっている。
「第2のベース比率」は、前回の区間のベース比率(前回の区間について算出された最終的なベース比率)となっている。
具体的に、性能表示装置206では、4桁の表示部のうち、上位2桁の表示部により、ベース比率の種別(第1のベース比率又は第2のベース比率)を識別するための情報が表示され、下位2桁の表示部により、ベース比率(百分率)を示す数字が表示される。
【0056】
設定変更状態の生起中には、設定値の変更が可能となる。そして、設定変更状態の生起中には、性能表示装置206において、RAM230の設定値領域に記憶(設定)されている設定値が表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、設定変更状態の生起中であることを示す情報(具体的には、上位1桁目に「r」、上位2桁目に「n.」、上位3桁目に「-」)が表示され、最下位1桁の表示部により、設定値領域に記憶されている設定値を示す数字が表示される。
設定確認状態の生起中には、設定値の確認が可能となる。そして、設定確認状態の生起中には、性能表示装置206において、RAM230の設定値領域に記憶(設定)されている設定値が表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、設定確認状態の生起中であることを示す情報(具体的には、上位1桁目に「r」、上位2桁目に「n.」、上位3桁目の表示なし)が表示され、最下位1桁の表示部により、設定値領域に記憶されている設定値を示す数字が表示される。
【0057】
遊技停止状態(設定異常状態、RAM異常状態、及び、バックアップ異常状態)の生起中には、遊技の進行が不可能となる。そして、遊技停止状態の生起中には、性能表示装置206において、発生した異常に対応するエラーコードが表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、遊技停止状態の生起中であることを示す情報(具体的には、上位1桁目に「E」、上位2桁目に「r.」、上位3桁目の表示なし)が表示され、最下位1桁の表示部により、発生した異常(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応するエラーコードを示す数字が表示される。
【0058】
RAMクリアスイッチ207は、タクタイルスイッチとなっている。すなわち、RAMクリアスイッチ207は、押下操作が可能な操作部を含んで構成されている。そして、RAMクリアスイッチ207は、操作部が押下操作されているときに、RAMクリア信号を、入力ポート1に対して出力する。
設定キースイッチ208は、キーロックスイッチとなっている。すなわち、設定キースイッチ208は、鍵穴が設けられた操作部を含んで構成されている。操作部は、鍵穴に専用の鍵が挿入されることにより、ロックが解除され、OFF状態からON状態に回転操作する(切り替える)ことが可能となる。そして、設定キースイッチ208は、操作部がON状態とされているときに、検出信号を、入力ポート1に対して出力する。
【0059】
シンクドライバ240は、出力ポート1から出力されたコモン信号(「COM0」~「COM3」)に応じて、各表示装置60,206に対するコモン信号の出力を制御する。
ソースドライバ250aは、出力ポート0から出力されたデータ信号(「SEGDATA0」~「SEGDATA7」)に応じて、メイン表示装置60に対するデータ信号の出力を制御する。
ソースドライバ250bは、出力ポート4から出力されたデータ信号(「7SEGDATA0」~「7SEGDATA7」)に応じて、性能表示装置206に対するデータ信号の出力を制御する。
パチンコ機1では、メイン表示装置60に対応するソースドライバ250aと、性能表示装置206に対応するソースドライバ250bと、が設けられている。そして、データ信号線に対する電源電案Vccの印加については、メイン表示装置60と性能表示装置206とで、個別に制御される。
一方、パチンコ機1では、メイン表示装置60及び性能表示装置206について、共通のシンクドライバ240が設けられている。そして、コモン信号線の接地については、メイン表示装置60と性能表示装置206とで、一括で制御される。
これによって、メイン表示装置60及び性能表示装置206のそれぞれに対応するシンクドライバ240を設ける必要がなくなり、その結果、メイン表示装置60及び性能表示装置206のそれぞれに対応する出力ポート(コモン信号を出力するための出力ポート)を設ける必要がなくなる。
したがって、メイン表示装置60及び性能表示装置206を点灯制御するために必要となる部品数を減少させることが可能となり、また、主制御基板200(CPU210)において、メイン表示装置60及び性能表示装置206のそれぞれに対応するコモン信号を生成する必要がなくなり、メイン表示装置60及び性能表示装置206を点灯制御するための制御負荷を低減することが可能となる。
【0060】
また、主制御基板200は、試験信号出力回路(図示せず)を含んで構成されている。
CPU210は、後述する試験信号出力処理(ステップS4-24)において、内部状態(大当り遊技状態、時短制御の実行状態、特別図柄抽選の確率状態等)を示す試験用の情報(試験信号)を生成し、生成した試験信号を、RAM230のポート出力要求バッファに格納する。これによって、ポート出力要求バッファに格納された試験信号が、所定の出力ポートから出力される。そして、所定の出力ポートから出力された試験信号は、試験信号出力回路を介して、試験用のコンピュータ(図示せず)のインターフェース基板に入力される。
また、主制御基板200では、特図1始動口スイッチ101からの検出信号、特図2始動口スイッチ102からの検出信号、ゲートスイッチ104からの検出信号、カウントスイッチ103からの検出信号、右入賞口スイッチ105からの検出信号、左入賞口スイッチ106からの検出信号、アウトスイッチ109からの検出信号等が、入力ポート204に入力されるとともに、試験信号出力回路を介して、試験用のコンピュータのインターフェース基板に入力される。
さらに、主制御基板200では、出力ポート3から出力された各ソレノイド(普通電動役物ソレノイド64、大入賞口ソレノイド65等)の駆動を制御するための制御信号が、各ソレノイド64,65に入力されるとともに、試験信号出力回路を介して、試験用のコンピュータのインターフェース基板に入力される。
【0061】
(払出制御基板400の構成)
次に、払出制御基板400の構成を説明する。
図51は、発射条件検出回路及び発射制御回路の構成を示すブロック図である。
払出制御基板400は、遊技領域30に対する遊技球の発射と、遊技球の払い出しと、を制御する。
払出制御基板400は、ワンチップマイクロコンピュータを含んで構成されている。
ワンチップマイクロコンピュータは、CPUコア、レジスタ、半導体メモリ等を集積したLSIとなっている。具体的に、ワンチップマイクロコンピュータは、CPU、ROM、RAM等を含んで構成されている。
払出制御基板400は、主制御基板200から受信した制御コマンドに基づいて、遊技球払出装置440による遊技球払出動作(賞球払出動作)を制御する。また、払出制御基板400は、CRユニット700から受信した球貸指示信号に基づいて、遊技球払出装置440による遊技球払出動作(貸球払出動作)を制御する。
また、払出制御基板400は、発射ボリューム411から入力される抵抗値(電圧値)と、タッチセンサ412から入力されるタッチ信号と、発射停止スイッチ413から入力される発射停止信号と、主制御基板200から入力される発射許可信号と、CRユニット700から入力されるCR接続信号と、に基づいて、遊技球発射装置430(発射ソレノイド431)による遊技球発射動作を制御する。
以下、払出制御基板400による遊技球発射動作の制御方法を詳細に説明する。
【0062】
図51に示すように、払出制御基板400は、遊技球払出動作を制御するための回路として、発射条件検出回路420と、発射制御回路425と、を含んで構成されている。
発射条件検出回路420は、後述する発射条件の成立を検出する回路となっている。
発射条件検出回路420は、操作検出部421と、発射可能条件検出部422と、発射条件検出部423と、を含んで構成されている。
操作検出部421は、ハンドル操作部の回転操作(回転操作量)を検出する回路となっている。
操作検出部421は、発射ボリューム411の抵抗値(電圧値)に応じて操作検出信号の出力を制御する(操作検出信号をハイレベル又はローレベルとする)オペアンプを含んで構成される。
具体的に、発射ハンドルユニット6では、ハンドル操作部の回転操作量に応じて、発射ボリューム411の抵抗値が変化する。そして、操作検出部421は、発射ボリューム411の抵抗値(電圧値)を検出し、検出した抵抗値(電圧値)に基づいて、ハンドル操作部の回転操作の有無と、ハンドル操作部の回転操作量と、を検出する。
そして、操作検出部421は、ハンドル操作部の回転操作を検出しているときに、操作検出信号を生成し、生成した操作検出信号を、発射可能条件検出部422に対して出力する(操作検出信号をハイレベルとする)。一方、操作検出部421は、ハンドル操作部の回転操作を検出していないときに、発射可能条件検出部422に対する操作検出信号の出力を停止する(操作検出信号をローレベルとする)。
また、操作検出部421は、ハンドル操作部の回転操作を検出しているときに、ハンドル操作部の回転操作量(発射ボリューム411の抵抗値)に応じた発射強度信号を生成し、生成した発射強度信号を、発射制御回路425に対して出力する。
【0063】
発射可能条件検出部422は、発射可能条件の成立を検出する回路となっている。
発射可能条件検出部422は、操作検出信号、タッチ信号、及び、発射停止信号の論理積の演算結果に応じて所定の信号の出力・停止を制御するANDゲートIC(ロジックIC)と、ANDゲートICから出力される所定の信号に応じてハンドル検出信号の出力・停止をスイッチングするトランジスタと、を含んで構成される。
「発射可能条件」は、後述する発射条件を構成する複数の条件のうち、遊技者の操作(遊技者の意思)に関わる条件となっている。
発射可能条件には、(1)発射ボリューム441及び操作検出部421の検出状況(ハンドル操作部の回転操作の検出状況)に基づく条件と、(2)タッチセンサ412の検出状況(遊技者によるハンドル操作部への接触の検出状況)に基づく条件と、(3)発射停止スイッチ413の検出状況(発射停止ボタンの押下操作の検出状況)に基づく条件と、が含まれている。
本実施形態では、(1)発射ボリューム441及び操作検出部421によりハンドル操作部の回転操作が検出されていること、(2)タッチセンサ412により遊技者によるハンドル操作部への接触が検出されていること、及び、(3)発射停止スイッチ413により発射停止ボタンの押下操作が検出されていないこと、の全ての条件を満たすときに、発射可能条件が成立する。一方、当該(1)~(3)の条件のうち、少なくとも一の条件を満たしていないときに、発射可能条件が成立しない。
ここで、発射可能条件に、(1)発射ボリューム441及び操作検出部421の検出状況(ハンドル操作部の回転操作の検出状況)に基づく条件と、(2)タッチセンサ412の検出状況(遊技者によるハンドル操作部への接触の検出状況)に基づく条件と、が含まれ、(3)発射停止スイッチ413の検出状況(発射停止ボタンの押下操作の検出状況)に基づく条件が含まれない構成としても構わない。
すなわち、(1)発射ボリューム441及び操作検出部421によりハンドル操作部の回転操作が検出されていつこと、及び、(2)タッチセンサ412により遊技者によるハンドル操作部への接触が検出されていること、の両方の条件を満たすときに、発射可能条件が成立し、当該(1)及び(2)の条件のうち、少なくとも一方の条件を満たしていないときに、発射可能条件が成立しない構成としても構わない。
【0064】
具体的に、発射可能条件検出部422は、操作検出部421から入力される操作検出信号と、タッチセンサ412から入力されるタッチ信号と、発射停止スイッチ413から入力される発射停止信号と、に基づいて、発射可能条件の成立の有無を検出する。
この際、発射可能条件検出部422では、操作検出信号、タッチ信号、及び、発射停止信号の全てが入力されているときに、発射可能条件の成立が検出される。一方、操作検出信号、タッチ信号、及び、発射停止信号のうち、少なくとも一の信号が入力されていないときに、発射可能条件の成立が検出されない。
発射可能条件検出部422は、発射可能条件の成立を検出しているときに、ハンドル検出信号を生成し、生成したハンドル検出信号を、主制御基板200及び発射条件検出部423のそれぞれに対して出力する(ハンドル検出信号をハイレベルとする)。一方、発射可能条件検出部422は、発射可能条件の成立を検出していないときに、主制御基板200及び発射条件検出部423のそれぞれに対するハンドル検出信号の出力を停止する(ハンドル検出信号をローレベルとする)。
【0065】
発射条件検出部423は、発射条件の成立を検出する回路となっている。
発射条件検出部423は、ハンドル検出信号、発射許可信号、及び、CR接続信号の論理積の演算結果に応じて発射信号の出力・停止を制御するANDゲートIC(ロジックIC)を含んで構成される。
「発射条件」は、遊技球発射装置430(発射ソレノイド431)による遊技領域30に対する遊技球の発射(遊技球発射動作)を実行する条件となっている。
本実施形態では、(1)発射可能条件が成立していること、(2)主制御基板200から発射許可信号が入力されていること、及び、(3)CRユニット700からCR接続信号が入力されていること、の全ての条件を満たすときに、発射条件が成立する。一方、当該(1)~(3)の条件のうち、少なくとも一の条件を満たしていないときに、発射条件が成立しない。
「発射許可信号」は、主制御基板200と払出制御基板400との間で通信が可能な状態であること(主制御基板200と払出制御基板400とが電気的に接続されていること)を前提として、遊技可能状態が設定されているときに、主制御基板200から発射条件検出部423に対して出力される。
ここで、主制御基板200に電源が投入されている期間中に、遊技機状態に関わらず、発射許可信号が、主制御基板200から発射条件検出部423に対して出力される構成としても構わない。すなわち、主制御基板200と払出制御基板400との間で通信が可能な状態であるときに(主制御基板200と払出制御基板400とが電気的に接続されているときに)、発射許可信号が、主制御基板200から発射条件検出部423に対して出力される構成としても構わない。
「CR接続信号」は、CRユニット700と払出制御基板400との間で通信が可能な状態であるときに(CRユニット700と払出制御基板400とが電気的に接続されているときに)、CRユニット700から発射条件検出部423に対して出力される。
【0066】
具体的に、発射条件検出部423は、発射可能条件検出部422から入力されるハンドル検出信号と、主制御基板200から入力される発射許可信号と、CRユニット700から入力されるCR接続信号と、に基づいて、発射条件の成立の有無を検出する。
この際、発射条件検出部423では、ハンドル検出信号、発射許可信号、及び、CR接続信号の全てが入力されているときに、発射条件の成立が検出される。一方、ハンドル検出信号、発射許可信号、及び、CR接続信号のうち、少なくとも一の信号が入力されていないときに、発射条件の成立が検出されない。
発射条件検出部423は、発射条件の成立を検出しているときに、発射信号を生成し、生成した発射信号を、発射制御回路425に対して出力する(発射信号をハイレベルとする)。一方、発射条件検出部423は、発射条件の成立を検出していないときに、発射制御回路425に対する発射信号の出力を停止する(発射信号をローレベルとする)。
【0067】
発射制御回路425は、遊技球発射装置430による遊技球の発射強度と、遊技球発射装置430による遊技球の発射タイミングと、を制御する回路となっている。すなわち、発射制御回路425は、遊技球発射装置430(発射ソレノイド431)に対する駆動信号の出力を制御する。
具体的に、発射制御回路425は、クロック発生部(図示せず)と、発射タイミング制御部(図示せず)と、発射ソレノイド駆動部(図示せず)と、を含んで構成されている。
クロック発生部は、所定周波数のクロック信号を、発射タイミング制御部に対して出力する。
発射タイミング制御部は、クロック発生部から入力されるクロック信号に基づいて、発射タイミングを制御するためのパルス信号を生成し、生成したパルス信号を、発射ソレノイド駆動部に対して出力する。この際、発射タイミング制御部は、1分間当たりに発射される遊技球の数が所定数(例えば、100[球])となるように、パルス信号を生成する。
発射ソレノイド駆動部は、発射条件検出部423から入力される発射信号と、発射タイミング制御部から入力されるパルス信号と、操作検出部421から入力される発射強度信号と、に基づいて、発射ソレノイド431に対する駆動信号の出力を制御する。
具体的に、発射ソレノイド駆動部は、発射条件検出部423から発射信号が入力されているときに、発射タイミング制御部からパルス信号が入力されたことを契機として、操作検出部421から入力される発射強度信号に応じた駆動信号(駆動電流)を、発射ソレノイド431に対して出力する。これによって、操作検出部421から入力される発射強度信号に応じた強度で、遊技球が発射される。
一方、発射ソレノイド駆動部は、発射条件検出部423から発射信号が入力されていないときに、発射ソレノイド431に対する駆動信号の出力を停止する。これによって、遊技球の発射が停止される。
【0068】
遊技球発射装置430は、打球槌(図示せず)と、打球槌を駆動する発射ソレノイド431と、を含んで構成されている。発射ソレノイド431は、ロータリーソレノイドにより構成されている。ここで、モータ等の他の駆動源により打球槌を駆動する構成としても構わない。
遊技球発射装置430には、球送りユニット(図示せず)から遊技球が供給される。そして、発射ソレノイド431に対して駆動信号が入力されると、入力された駆動信号に応じて発射ソレノイド431が駆動され、打球槌により遊技球が打ち出される。これによって、遊技領域30に対して遊技球が発射される。
【0069】
以上により、パチンコ機1では、主制御基板200において遊技可能状態が設定されており、かつ、CRユニット700と払出制御基板400との間で通信が可能な状態であることを前提として、発射停止ボタンが押下操作されることなく、遊技者の接触によりハンドル操作部が回転操作(初期位置から限度位置側に向かって変位)されると、遊技球発射装置430による遊技球発射動作が開始される。そして、遊技球発射装置430による遊技球発射動作の実行中には、ハンドル操作部の回転操作量に応じた強さで、遊技領域30に対して遊技球が発射される。
また、発射停止ボタンが押下操作されると、遊技球発射装置430による遊技球発射動作が停止される。すなわち、遊技者の接触によりハンドル操作部が回転操作されている状態であっても、発射停止ボタンが押下操作されると、遊技球発射装置430による遊技球発射動作が停止される。
さらに、ハンドル操作部が初期位置に戻されると(ハンドル操作部が回転操作されていない状態とされると)、遊技球発射装置430による遊技球発射動作が停止される。すなわち、遊技者がハンドル操作部に接触している状態であっても、ハンドル操作部が初期位置に戻されると、遊技球発射装置430による遊技球の発射動作が停止される。
【0070】
特に、パチンコ機1では、発射可能条件を満たしている状態(以下、「発射可能状態」とする)の発生中に、発射可能条件検出部422から主制御基板200に対するハンドル検出信号の出力が維持される。
すなわち、ハンドル操作部の回転操作が検出されており、かつ、ハンドル操作部への接触が検出されており、かつ、発射停止ボタンの押下操作が検出されていない状態(発射可能状態)の発生中に、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
この際、発射可能状態の発生中である限り、主制御基板200から発射条件検出回路420への発射許可信号の入力の有無に関わらず(主制御基板200において設定されている遊技機状態に関わらず)、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
また、発射可能状態の発生中である限り、CRユニット700から発射条件検出回路420へのCR接続信号の入力の有無に関わらず(CRユニット700と払出制御基板400との間で通信が可能な状態であるか否かに関わらず)、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
以上により、主制御基板200において、発射可能状態の発生中であるか否かを検出(把握)することが可能となり、発射可能状態の発生状況に応じて、遊技の進行、演出内容等を制御することが可能となる。
【0071】
すなわち、主制御基板200は、ハンドル検出信号が入力されていない状態から入力されている状態に変化したこと(ハンドル検出信号がローレベルからハイレベルに変化したこと)を検出した場合に、発射可能状態の発生(開始)を指定する遊技状況指定コマンドを、演出制御基板300に対して送信する。
一方、主制御基板200は、ハンドル検出信号が入力されている状態から入力されていない状態に変化したこと(ハンドル検出信号がハイレベルからローレベルに変化したこと)を検出した場合に、発射可能状態の解除(終了)を指定する遊技状況指定コマンドを、演出制御基板300に対して送信する。
これによって、演出制御基板300は、発射可能状態の発生を指定する遊技状況指定コマンドの受信により、発射可能状態の発生を検出し、発射可能状態の解除を指定する遊技状況指定コマンドの受信により、発射可能状態の解除を検出することが可能となる。
そして、演出制御基板300は、発射可能状態の発生中であるか否かに応じて、演出内容を変化させることが可能となる。
【0072】
(演出制御基板300の構成)
次に、演出制御基板300の構成を説明する。
図52は、演出制御基板の構成を示すブロック図である。
演出制御基板300は、主制御基板200から受信した制御コマンドに基づいて、演出(表示演出、音演出、ランプ演出、可動体演出等)を制御する。
図52に示すように、演出制御基板300は、マイクロコンピュータ(ワンチップマイクロコンピュータ)301と、マイクロコンピュータ301に対して外付け接続された各種の外部デバイスと、を含んで構成されている。
本実施形態では、各種の外部デバイスとして、制御ROM302、CGROM(Character Generator Read Only Memory)303、DRAM(Dynamic Random Access Memory)304等が含まれている。
【0073】
制御ROM302には、マイクロコンピュータ301の動作を制御するための制御プログラム、制御プログラムの実行に必要となる各種のデータ等が格納されている。特に、制御ROM302には、各演出番号に対応する演出シナリオテーブル、各表示演出番号に対応する表示シナリオテーブル、各音演出番号に対応する音シナリオテーブル、各ランプ演出番号に対応するランプシナリオテーブル、各可動体演出番号に対応する可動体シナリオテーブル、各種の圧縮ランプ駆動データ、各種の圧縮モータ駆動データが格納(記憶)されている。
「圧縮ランプ駆動データ」は、ランプ駆動データを所定形式で圧縮(符号化)したデータとなっている。「ランプ駆動データ」は、各種ランプ20,21を駆動するためのデータ(各系統に属するランプ20,21の輝度値を指定するデータ)となっている。
「圧縮モータ駆動データ」は、モータ駆動データを所定形式で圧縮(符号化)したデータとなっている。「モータ駆動データ」は、各種モータ23を駆動するためのデータ(各モータ23の出力値を規定するデータ)となっている。
本実施形態では、制御ROM302として、NOR型フラッシュメモリ(NOR型ROM)が用いられている。ここで、制御ROM302として、EEPROM(Electrically Erasable Programmable Read Only Memory)が用いられる構成としても構わない。
制御ROM302は、マイクロコンピュータ301のHOSTインターフェース313に接続されている。
【0074】
CGROM303には、各種の圧縮画像データ、各種の圧縮音声データ等が格納(記憶)されている。
「圧縮画像データ」は、画像データ(素材データ)を所定形式で圧縮(符号化)したデータとなっている。「画像データ(素材データ)」は、描画処理の素材となる画像(動画像・静止画像)のデータとなっている。
「圧縮音声データ」は、音声データを所定形式で圧縮(符号化)したデータとなっている。「音声データ」は、各種スピーカ22から出力される音声のデータとなっている。
特に、CGROM303には、圧縮画像データとして、圧縮二次元画像データと、圧縮三次元素材画像データと、が格納されている。
「圧縮二次元画像データ」は、二次元画像データを所定形式で圧縮(符号化)したデータとなっている。「二次元画像データ」は、二次元画像を表示するための画像データとなっている。本実施形態では、各種の二次元画像を生成するための(各種の二次元画像の素材となる)圧縮二次元画像データが格納されている。
「圧縮三次元素材画像データ」は、三次元素材画像データを所定形式で圧縮(符号化)したデータとなっている。「三次元素材画像データ」は、三次元画像データを生成(構成)するための画像データ(三次元画像データの素材となる画像データ)となっている。「三次元画像データ」は、三次元画像を表示するための画像データとなっている。
本実施形態では、各種の三次元画像データの生成に用いる圧縮三次元素材画像データが格納されている。ここで、各三次元画像データは、互いに視差を有する一対の三次元素材画像データ(具体的には、右眼用画像データ、及び、左眼用画像データ)から生成される。したがって、本実施形態では、圧縮三次元素材画像データとして、各種の右眼用画像データを所定形式で圧縮(符号化)した圧縮右眼用画像データと、各種の左眼用画像データを所定形式で圧縮(符号化)した圧縮左眼用画像データと、が格納されている。
本実施形態では、圧縮三次元素材画像データの圧縮率は、圧縮二次元画像データの圧縮率と比較して低くなっている。換言すると、圧縮二次元画像データの圧縮率は、圧縮三次元素材画像データの圧縮率と比較して高くなっている。
「圧縮率」とは、圧縮前の画像データのデータ量と、圧縮(削減)されたデータ量と、の比率をいう。したがって、圧縮率が高いほど、圧縮により削減されたデータ量が多いことを意味し、圧縮率が低いほど、圧縮により削減されたデータ量が少ないことを意味する。
本実施形態では、CGROM303として、NAND型フラッシュメモリ(NAND型ROM)が用いられている。具体的に、CGROM303は、NAND型フラッシュメモリを記憶部として使用したSSD(Solid State Drive)により構成されている。
CGROM303は、マイクロコンピュータ301のCGバスインターフェース314に接続されている。CGバスインターフェース314は、SATA(Serial AT Attachment)規格の接続インターフェースとなっている。これによって、CGROM303に格納されている各種データの読み出しは、SATA転送される。
【0075】
DRAM304には、プリロード領域が設けられている。プリロード領域には、CGROM303に格納されている各種のデータ(具体的には、圧縮画像データ、圧縮音声データ等)が転送(プリロード)される。
また、DRAM304には、描画コマンドバッファ領域と、音コマンドバッファ領域と、ランプコマンドバッファ領域と、モータコマンドバッファ領域と、が設けられている。本実施形態では、描画コマンドバッファ領域について、ダブルバッファリング方式が採用されており、DRAM304において、2つの描画コマンドバッファ領域が設けられている。
2つの描画コマンドバッファ領域は、同一のサイズで構成されている。2つの描画コマンドバッファ領域のうち、一方の描画コマンドバッファ領域が構築領域に指定されている期間中、他方の描画コマンドバッファ領域が転送領域に指定される。また、各描画コマンドバッファ領域について、1フレームごとに、構築領域の指定と、転送領域の指定と、が交互に切り替えられる。
そして、各描画コマンドバッファ領域について、構築領域に指定されている期間中に、当該描画コマンドバッファ領域において、後述するディスプレイリストが記憶(生成・構築)され、転送領域に指定されている期間中に、当該描画コマンドバッファ領域に記憶されているディスプレイリストが、VDP(具体的には、プリローダ回路319)に転送される。
DRAM304は、マイクロコンピュータ301のDRAMインターフェース315に接続されている。
【0076】
マイクロコンピュータ301は、CPUコア、レジスタ、半導体メモリ等が集積されたLSIとなっている。
マイクロコンピュータ301は、主制御基板200から受信した制御コマンドに基づいて、各種の演出手段による演出動作を制御する。
「各種の演出手段」には、各種画像表示装置31,32、各種スピーカ22、各種ランプ20,21、各種モータ23(各種可動体)が含まれる。したがって、「各種の演出手段による演出動作」には、各種画像表示装置31,32による演出画像の表示、各種スピーカ22による音声の出力、各種ランプ20,21の駆動(点灯)、各種モータ23(各種可動体)の駆動等が含まれる。
マイクロコンピュータ301は、CPU310、CPU用ワークメモリ311、CPUインターフェース312、ホストインターフェース313、CGバスインターフェース314、DRAMインターフェース315、VRAM316、シリアル通信コントローラ317、転送回路318、プリローダ回路319、表示回路320、グラフィックスデコーダ回路321、描画回路322、サウンドコントローラ323等の内部デバイスを含み、これらの内部デバイスがデータバス324にバス接続されて構成されている。
【0077】
CPU310は、CPUインターフェース312を介して、HOSTインターフェース313に接続されている。また、HOSTインターフェース313には、主制御基板200が接続されており、主制御基板200からの制御コマンドが入力される。さらに、HOSTインターフェース313には、データバス324が接続されている。
これによって、CPU310は、HOSTインターフェース313を介して、主制御基板200からの制御コマンド(サブコマンド)を受信することが可能となっている。
また、CPU310は、HOSTインターフェース313、及び、データバス324を介して、シリアル通信コントローラ317、プリローダ回路319、表示回路320、サウンドコントローラ323等の内部デバイスとの間で、通信が可能となっている。
また、CPU310は、HOSTインターフェース313を介して、制御ROM302に格納されている各種データ(制御プログラム、制御データ等)の読み出しを実行することが可能となっている。
また、CPU310は、HOSTインターフェース313、データバス324、及び、CGバスインターフェース314を介して、CGROM303に格納されている各種データ(圧縮音声データ)の読み出しを実行することが可能となっている。
さらに、CPU310は、HOSTインターフェース313、データバス324、及び、DRAMインターフェース315を介して、DRAM304に対するデータの読み出し・書き込みを実行することが可能となっている。
【0078】
CPU310は、各種の演出手段による演出動作を制御するために必要となる各種の演算処理、各種の演算処理に応じた内部デバイスの制御処理等を実行する。
この際、CPU310は、CPU用ワークメモリ(RAM)311、及び、DRAM304を、各種演算処理のワークエリア、各種演算処理データのバッファ領域、テーブルデータ領域、各種入力・出力データのバッファ領域等として使用する。
すなわち、CPU310は、主制御基板200から受信した制御コマンドに基づいて、実行する演出(演出番号)を選択し、選択した演出番号に対応する各種のシナリオデータ(演出シナリオテーブル、表示シナリオテーブル、音シナリオテーブル、ランプシナリオテーブル、可動体シナリオテーブル等)を選択・設定する。そして、選択・設定した各種のシナリオデータにしたがって、各種の内部デバイス(VDP、サウンドコントローラ323、ランプコントローラ317a、モータコントローラ317b等)を制御するための内部コマンド(描画コマンド、音コマンド、ランプコマンド、モータコマンド等)を生成する。
【0079】
具体的に、CPU310は、表示シナリオテーブルにしたがって、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを生成する。
「ディスプレイリスト」は、1フレーム分の描画コマンドの集まりとなっている。すなわち、ディスプレイリストには、1フレーム分の描画コマンド群が、所定の順番で記述されている。そして、VDPにおいて、ディスプレイリストで記述されている順番で、各描画コマンドに基づく処理が実行されることにより、1フレーム分の描画データが生成される。
「描画コマンド」は、VDPに実行させる描画処理(描画制御)の内容を指定する情報となっている。特に、描画コマンドには、描画に用いる圧縮画像データが記憶されている記憶領域のアドレス(以下、「画像アドレス」とする)、当該画像データの描画時の倍率(拡大率・縮小率)、当該画像データを描画する座標(フレームバッファ領域又は合成用バッファ領域における座標)等が指定されている。
また、CPU310は、音シナリオテーブルにしたがって、音コマンドバッファ領域において、音コマンドを生成する。
「音コマンド」は、サウンドコントローラ323に実行させる音声出力処理(音声出力制御)の内容を指定する情報となっている。
また、CPU310は、ランプシナリオテーブルにしたがって、ランプコマンドバッファ領域において、ランプコマンドを生成する。
「ランプコマンド」は、ランプコントローラ317aに実行させるランプ駆動処理(ランプ駆動制御)の内容を指定する情報となっている。
また、CPU310は、可動体シナリオテーブルにしたがって、モータコマンドバッファ領域において、モータコマンドを生成する。
「モータコマンド」は、モータコントローラ317bに実行させるモータ駆動処理(モータ駆動制御)の内容を指定する情報となっている。
【0080】
また、CPU310は、電源投入時に、CGROM303に格納されている圧縮音声データを、DRAM304のプリロード領域に転送(プリロード)する。
すなわち、CGROM303等のNAND型フラッシュメモリは、制御ROM302等のNOR型フラッシュメモリと比較して、大容量化が容易である一方で、データの読み出し速度が遅い。このため、サウンドコントローラ323による音声出力処理の実行時に、CGROM303(NAND型フラッシュメモリ)から、直接、圧縮音声データが読み出される構成とすると、処理性能が著しく低下する恐れがある。
そこで、パチンコ機1では、音声出力処理が実行される前に、予め、CGROM303に格納されている圧縮音声データが、CGROM303と比較してデータの読み出し速度が速い記憶手段であるDRAM304に転送される。そして、音声出力処理の実行時に、DRAM304から圧縮音声データが読み出される構成とすることで、処理性能の低下を防止している。
【0081】
具体的に、CPU310は、電源投入時に、CGROM303に格納されている圧縮音声データのうち、所定の圧縮音声データを、DRAM304のプリロード領域に転送(プリロード)する。この際、本実施形態では、CGROM303に格納されている全ての圧縮音声データが、DRAM304のプリロード領域に転送される。ここで、CGROM303に格納されている圧縮音声データのうち、一部の圧縮音声データが、DRAM304のプリロード領域に転送される構成としても構わない。
そして、パチンコ機1では、上記の所定の圧縮音声データの転送が完了した後に、各種スピーカ22による音声の出力の制御(サウンドコントローラ323による音声出力処理)を実行することが可能な状態となる。換言すると、上記の所定の圧縮音声データの転送が完了する前には、各種スピーカ22による音声の出力の制御(サウンドコントローラ323による音声出力処理)を実行することが不可能な状態となる。
また、上記の所定の圧縮音声データの転送が完了した後に、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)を実行することが可能な状態となる。換言すると、上記の所定の圧縮音声データの転送が完了する前には、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)を実行することが不可能な状態となる。
一方、上記の所定の圧縮音声データの転送が完了する前に、各種ランプ20,21の駆動(発光)の制御(ランプコントローラ317aによるランプ駆動処理)を実行することが可能な状態となる。
また、上記の所定の圧縮音声データの転送が完了する前に、各種モータ23(各種可動体)の駆動の制御(モータコントローラ317bによるモータ駆動処理)を実行することが可能な状態となる。
【0082】
転送回路318は、内部デバイス間における各種データの転送を実行する。
具体的に、転送回路318は、転送領域に指定されている描画コマンドバッファ領域に記憶されているディスプレイリストを、プリローダ回路319に転送する。また、転送回路318は、プリローダ回路319により書き換えられたディスプレイリストを、描画回路322に転送する。
また、転送回路318は、音コマンドバッファ領域に記憶されている音コマンドを、サウンドコントローラ323に転送する。また、転送回路318は、ランプコマンドバッファ領域に記憶されているランプコマンドを、ランプコントローラ317aに転送する。また、転送回路318は、モータコマンドバッファ領域に記憶されているモータコマンドを、モータコントローラ317bに転送する。
【0083】
VRAM316には、画像展開領域が設けられている。そして、画像展開領域には、グラフィックスデコーダ回路321により展開(復元・復号)された画像データ(素材データ)が一時的に記憶される。
また、VRAM316には、フレームバッファ領域と、合成用バッファ領域と、バスク用バッファ領域と、が設けられている。本実施形態では、フレームバッファ領域について、ダブルバッファリング方式が採用されており、VRAM316において、2つのフレームバッファ領域が設けられている。合成用バッファ領域については、1つの領域のみが設けられている。また、マスク用バッファ領域については、1つの領域のみが設けられている。
2つのフレームバッファ領域は、同一のサイズで構成されている。2つのフレームバッファ領域のうち、一方のフレームバッファ領域が描画領域に指定されている期間中、他方のフレームバッファ領域が出力領域に指定される。また、各フレームバッファ領域について、1フレームごとに、描画領域の指定と、出力領域の指定と、が交互に切り替えられる。
そして、各フレームバッファ領域について、描画領域に指定されている期間中に、当該フレームバッファ領域において、1フレーム分の描画データが記憶(生成・描画)され、出力領域に指定されている期間中に、当該フレームバッファ領域に記憶されている1フレーム分の描画データに基づいて、映像信号の出力が実行される。
【0084】
マイクロコンピュータ301では、プリローダ回路319、表示回路320、グラフィックスデコーダ回路321、描画回路322等が、VDP(Video Display Processor)として機能する。
VDPは、各種画像表示装置31,32による演出画像の表示を制御する。具体的に、VDPは、CPU310からのディスプレイリスト(描画コマンド)の受信に応じて、描画データを生成するとともに、生成した描画データに基づいて映像信号を生成し、生成した映像信号を、各種画像表示装置31,32に対して出力する。
プリローダ回路319は、CGバスインターフェース314を介して、CGROM303に格納されている各種データ(圧縮画像データ)の読み出しを実行することが可能となっている。
特に、プリローダ回路319は、描画回路322による描画処理が実行される前に、CGROM303に格納されている圧縮画像データを、DRAM304のプリロード領域に転送(プリロード)する。
すなわち、上記のように、CGROM303等のNAND型フラッシュメモリは、制御ROM302等のNOR型フラッシュメモリと比較して、大容量化が容易である一方で、データの読み出し速度が遅い。このため、描画回路322による描画処理の実行時に、CGROM303(NAND型フラッシュメモリ)から、直接、圧縮画像データが読み出される構成とすると、処理性能が著しく低下する恐れがある。
そこで、パチンコ機1では、描画処理が実行される前に、予め、CGROM303に格納されている圧縮画像データが、CGROM303と比較してデータの読み出し速度が速い記憶手段であるDRAM304に転送される。そして、描画処理の実行時に、DRAM304から圧縮画像データが読み出される構成とすることで、処理性能の低下を防止している。
【0085】
具体的に、プリローダ回路319は、ディスプレイリストを受信するごとに、CGROM303に格納されている圧縮画像データのうち、当該ディスプレイリストで指定されている1フレーム分の圧縮画像データを、DRAM304のプリロード領域に転送(プリロード)する。この際、プリローダ回路319は、ディスプレイリストの書き換えを実行する。
すなわち、CPU310により生成されたディスプレイリストでは、各描画コマンドに含まれる画像アドレスとして、CGROM303の記憶領域を指定するアドレスが記述されている。そこで、プリローダ回路319は、ディスプレイリストに含まれる各描画コマンドについて、当該描画コマンドに含まれる画像アドレスが指定する記憶領域(CGROM303の記憶領域)に記憶されている圧縮画像データを、DRAM304の所定領域に転送した後、当該描画コマンドに含まれる画像アドレスを、転送後の記憶領域(DRAM304の所定領域)を指定するアドレスに書き換える。これによって、画像アドレスが書き換えられた新たなディスプレイリストが生成される。
ここで、本実施形態では、プリローダ回路319が、CGROM303に格納されている圧縮画像データを、DRAM304のプリロード領域に転送(プリロード)する構成となっている。しかしながら、プリローダ回路319が、CGROM303に格納されている圧縮画像データを、VRAM316の所定領域(プリロード領域)に転送する構成としても構わない。
プリローダ回路319により書き換えられたディスプレイリストは、転送回路318により、描画回路320に転送される。
【0086】
描画回路322は、プリローダ回路319から受信したディスプレイリストにしたがって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データを記憶(生成・描画)する。
具体的に、描画回路320は、ディスプレイリストを受信するごとに、当該ディスプレイリストで指定されている1フレーム分の圧縮画像データを、DRAM304から読み出す。DRAM304から読み出された1フレーム分の圧縮画像データは、グラフィックデコーダ回路321により復元(デコード・復号)され、VRAM316の画像展開領域に記憶(展開)される。そして、描画回路320は、画像展開領域に記憶されている画像データを用いて、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データを生成する。
【0087】
表示回路320は、出力領域に指定されているフレームバッファ領域に記憶(生成・描画)されている1フレーム分の描画データに基づいて、映像信号を生成し、生成した映像信号を、各種画像表示装置31,32に対して出力する。本実施形態では、映像信号として、デジタルRGB信号が出力される。ここで、映像信号として、LVDS(Low voltage differential signaling)信号が出力される構成としても構わない。
具体的に、表示回路320は、データ取得回路(図示せず)、スケーラ回路(図示せず)、カラー補正回路(図示せず)、ディザラー回路(図示せず)、同期信号生成回路(図示せず)等を含んで構成されている。
データ取得回路は、出力領域に指定されているフレームバッファ領域に記憶されている描画データを読み出す。
スケーラ回路は、データ取得回路により読み出された描画データについて、スケーリング処理(拡大処理・縮小処理)を施すことが可能となっている。具体的に、スケーラ回路は、スケーラ倍率レジスタに設定・有効化されているスケーラ倍率(表示倍率)に応じて、データ取得回路により読み出された描画データに対して、スケーリング処理(拡大処理・縮小処理)を施す。
本実施形態では、3D表示演出の描画データ(三次元画像データ及び二次元画像データからなる演出画像)に対するスケーリング処理の実行時には、スケーラ倍率として、100[%](等倍)が設定・有効化される。これによって、3D表示演出の描画データについては、拡大処理・縮小処理が施されることがない。
一方、2D表示演出の描画データ(二次元画像データのみからなる演出画像)に対するスケーリング処理の実行時には、スケーラ倍率として、130[%](拡大)が設定・有効化される。これによって、2D表示演出の描画データについては、拡大処理が施される。
カラー補正回路は、スケーラ回路による処理後の描画データについて、カラー補正処理を施すことが可能となっている。
ディザラー回路は、カラー補正回路による処理後の描画データについて、ディザリング処理を施すことが可能となっている。
そして、ディザリング回路による処理後の描画データが、映像信号(デジタルRGB信号)として出力される。
同期信号生成回路は、水平同期信号と、垂直同期信号(Vsync)と、を生成する。そして、同期信号生成回路は、生成した水平同期信号及び垂直同期信号を、各種画像表示装置31,32に対して出力する。また、同期信号生成回路は、生成した垂直同期信号を、CPU310に対して出力する。
ここで、本実施形態では、16.66[ms]ごとに、各画像表示装置31,32における演出画像の表示(1フレーム分の描画データに基づく演出画像の表示)が更新される。したがって、同期信号生成回路は、16.66[ms]ごとに、垂直同期信号を、CPU310に対して出力する(ハイレベルとする)。
【0088】
サウンドコントローラ323は、各種スピーカ22による音声の出力を制御する。
具体的に、サウンドコントローラ323は、CPU310からの音コマンドの受信に応じて、音声信号を生成し、生成した音声信号を、各種スピーカ22に対して出力する。
サウンドコントローラ323は、音声デコーダ回路(図示せず)を含んで構成されている。音声デコーダ回路は、CPU310からの音コマンドの受信に応じて、当該音コマンドで指定されている圧縮音声データを、DRAM304から読み出す。また、読み出した圧縮音声データを復元(デコード・復号)する。そして、復元した音声データに基づいて、音声信号を生成し、生成した音声信号を、各種スピーカ22に対して出力する。
【0089】
シリアル通信コントローラ317は、ランプコントローラ317aと、モータコントローラ317bと、を含んで構成されている。
ランプコントローラ317aは、各種ランプ20,21の駆動(発光)を制御する。
具体的に、ランプコントローラ317aは、CPU310からのランプコマンドの受信に応じて、ランプ駆動データを生成し、生成したランプ駆動データを、クロック信号と共に、ランプドライバ332,342に対して出力する。この際、ランプ駆動データは、シリアルデータとして出力される。
ランプコントローラ317aは、ランプデコーダ回路(図示せず)を含んで構成されている。ランプデコーダ回路は、CPU310からのランプコマンドの受信に応じて、当該ランプコマンドで指定されている圧縮ランプ駆動データを、制御ROM302から読み出す。また、読み出した圧縮ランプ駆動データを復元(デコード・復号)する。そして、復元したランプ駆動データに基づいて、ランプ駆動データを生成し、生成したランプ駆動データを、ランプドライバ332,342に対して出力する。
【0090】
モータコントローラ317bは、各種モータ23(各種可動体)の駆動を制御する。
具体的に、モータコントローラ317bは、CPU310からのモータコマンドの受信に応じて、モータ駆動データを生成し、生成したモータ駆動データを、クロック信号と共に、モータドライバ333,343に対して出力する。この際、モータ駆動データは、シリアルデータとして出力される。
モータコントローラ317bは、モータシーケンサ回路(図示せず)を含んで構成されている。モータシーケンサ回路は、CPU310からのモータコマンドの受信に応じて、当該モータコマンドで指定されている圧縮モータ駆動データを、制御ROM302から読み出す。また、読み出した圧縮モータ駆動データを復元(デコード・復号)する。そして、復元したモータ駆動データに基づいて、モータ駆動データを生成し、生成したモータ駆動データを、モータドライバ333,343に対して出力する。
また、モータコントローラ317bには、ドライバ基板330から、各種センサ24の検出状況を示す情報が入力されるとともに、サブ接続基板340から、各スイッチ25~29の検出状況を示す情報と、各種センサ24の検出状況を示す情報と、が入力される。
【0091】
(演出制御基板300による演出の制御方法)
次に、演出制御基板300による演出の制御方法を説明する。
CPU310は、主制御基板200から受信した制御コマンドに応じて、実行する演出(演出番号)を選択する。そして、選択した演出番号に対応する演出シナリオテーブルと、当該演出シナリオテーブルに対応する演出シナリオタイマと、をDRAM304の演出シナリオ設定領域に設定する。
「演出シナリオテーブル」は、演出の進行を規定する情報となっている。具体的に、演出シナリオテーブルには、複数のプロセスデータが、時系列に沿って登録されている。すなわち、演出シナリオテーブルには、複数のプロセスデータと、各プロセスデータに基づく処理の開始時期(開始タイミング)を指定する情報と、が登録されている。
各プロセスデータには、一又は複数の指令情報が含まれている。各指令情報は、個別の演出(表示演出、音演出、ランプ演出、又は、可動体演出)の開始を指定する情報となっている。各指令情報には、開始する演出のサブ演出番号(表示演出番号、音演出番号、ランプ演出番号、又は、可動体演出番号)を指定する情報が含まれている。
【0092】
また、CPU310は、演出シナリオ設定領域に設定されている情報(具体的には、演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマ)に基づいて、演出の進行を制御する。
具体的に、CPU310は、所定周期で、演出シナリオ設定領域に設定されている演出シナリオタイマを更新するとともに、更新後の演出シナリオタイマの値に基づいて、開始時期が到来したプロセスデータが存在するか否かを判定する。そして、開始時期が到来したプロセスデータが存在すると判定した場合、当該プロセスデータに基づく処理を実行する。
各プロセスデータに基づく処理では、当該プロセスデータに含まれる各指令情報について、当該指令情報が指定する個別の演出の演出番号(表示演出番号、音演出番号、ランプ演出番号、又は、可動体演出番号)に対応するサブシナリオテーブル(表示シナリオテーブル、音シナリオテーブル、ランプシナリオテーブル、可動体シナリオテーブル)と、当該サブシナリオテーブルに対応するサブシナリオタイマと、がDRAM304のテーブル領域に設定される。
【0093】
この際、指令情報が表示演出番号を指定する場合、当該表示演出番号に対応する表示シナリオテーブルと、当該表示シナリオテーブルに対応するサブシナリオタイマと、がDRAM304の表示シナリオ設定領域に設定される。
一方、指令情報が音演出番号を指定する場合、当該音演出番号に対応する音シナリオテーブルと、当該音シナリオテーブルに対応するサブシナリオタイマと、がDRAM304の音シナリオ設定領域に設定される。
一方、指令情報がランプ演出番号を指定する場合、当該ランプ演出番号に対応するランプシナリオテーブルと、当該ランプシナリオテーブルに対応するサブシナリオタイマと、がDRAM304のランプシナリオ設定領域に設定される。
一方、指令情報が可動体演出番号を指定する場合、当該可動体演出番号に対応する可動体シナリオテーブルと、当該可動体シナリオテーブルに対応するサブシナリオタイマと、がDRAM304の可動体シナリオ設定領域に設定される。
【0094】
「表示シナリオテーブル」は、各種画像表示装置31,32による表示演出(演出画像の表示)の進行を規定する情報となっている。
「音シナリオテーブル」は、各種スピーカ22による音演出(音声の出力)の進行を規定する情報となっている。
「ランプシナリオテーブル」は、各種ランプ20,21によるランプ演出の進行(各種ランプ20,21の駆動(発光)パターン)を規定する情報となっている。
「可動体シナリオテーブル」は、各種モータ23(各種可動体)による可動体演出の進行(各種モータ23(各種可動体)の駆動パターン)を規定する情報となっている。
【0095】
さらに、CPU310は、表示シナリオ設定領域に設定されている情報(具体的には、表示シナリオテーブル、及び、当該表示シナリオテーブルに対応するサブシナリオタイマ)に基づいて、表示演出の進行を制御する。
具体的に、CPU310は、所定周期で、表示シナリオ設定領域に設定されているサブシナリオタイマを更新するとともに、表示シナリオテーブルに規定されている情報のうち、更新後のサブシナリオタイマの値に対応する情報に基づいて、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを生成する。
これによって、描画コマンドバッファ領域に生成されたディスプレイリストにしたがって、VDPが制御され、表示演出(各種画像表示装置31,32による演出画像の表示)が制御される。
【0096】
また、CPU310は、音シナリオ設定領域に設定されている情報(具体的には、音シナリオテーブル、及び、当該音シナリオテーブルに対応するサブシナリオタイマ)に基づいて、音演出の進行を制御する。
具体的に、CPU310は、所定周期で、音シナリオ設定領域に設定されているサブシナリオタイマを更新するとともに、音シナリオテーブルに規定されている情報のうち、更新後のサブシナリオタイマの値に対応する情報に基づいて、音コマンドバッファ領域において、音コマンドを生成する。
これによって、音コマンドバッファ領域に生成された音コマンドにしたがって、サウンドコントローラ323が制御され、音演出(各種スピーカ22による音声の出力)が制御される。
【0097】
また、CPU310は、ランプシナリオ設定領域に設定されている情報(具体的には、ランプシナリオテーブル、及び、当該ランプシナリオテーブルに対応するサブシナリオタイマ)に基づいて、ランプ演出の進行を制御する。
具体的に、CPU310は、所定周期で、ランプシナリオ設定領域に設定されているサブシナリオタイマを更新するとともに、ランプシナリオテーブルに規定されている情報のうち、更新後のサブシナリオタイマの値に対応する情報に基づいて、ランプコマンドバッファ領域において、ランプコマンドを生成する。
これによって、ランプコマンドバッファ領域に生成されたランプコマンドにしたがって、ランプコントローラ317aが制御され、ランプ演出(各種ランプ20,21の駆動(点灯))が制御される。
【0098】
また、CPU310は、可動体シナリオ設定領域に設定されている情報(具体的には、可動体シナリオテーブル、及び、当該可動体シナリオテーブルに対応するサブシナリオタイマ)に基づいて、可動体演出の進行を制御する。
具体的に、CPU310は、所定周期で、可動体シナリオ設定領域に設定されているサブシナリオタイマを更新するとともに、可動体シナリオテーブルに規定されている情報のうち、更新後のサブシナリオタイマの値に対応する情報に基づいて、モータコマンドバッファ領域において、モータコマンドを生成する。
これによって、モータコマンドバッファ領域に生成されたモータコマンドにしたがって、モータコントローラ317bが制御され、可動体演出(各種モータ23(各種可動体)の駆動)が制御される。
【0099】
(ドライバ基板330の構成)
ドライバ基板330は、パラレスシリアル変換回路331と、ランプドライバ332と、モータドライバ333と、を含んで構成されている。
ランプドライバ332は、ランプコントローラ317aから入力されたランプ駆動データに応じて、盤面ランプ21を構成する各系統の発光素子群の駆動(発光)を制御する。
この際、ランプ駆動データでは、盤面ランプ21を構成する各系統に対応する輝度値が指定されている。そして、盤面ランプ21を構成する各系統に対して、ランプ駆動データで指定されている輝度値に応じた励磁信号(駆動電流)が供給される。これによって、系統ごとに、当該系統を構成する発光素子群の駆動(発光)が制御される。
モータドライバ333は、モータコントローラ317bから入力されたモータ駆動データに応じて、遊技盤ユニット10に配設されている各種モータ23(各種可動体ユニットを構成するモータ23)に対する励磁信号(駆動電流)の出力を制御する。
この際、モータ駆動データでは、遊技盤ユニット10に配設されている各モータ23の出力値が指定されている。そして、各モータ23に対して、モータ駆動データで指定されている出力値に応じた励磁信号(駆動電流)が供給される。これによって、モータ23ごとに、駆動が制御される。
パラレルシリアル変換回路331には、各種センサ24からの検出信号が入力される。そして、パラレルシリアル変換回路331は、各種センサ24からの検出信号を、シリアルデータに変換して、シリアル通信コントローラ317に対して出力する。
【0100】
(サブ接続基板340の構成)
サブ接続基板340は、パラレスシリアル変換回路341と、ランプドライバ342と、モータドライバ343と、を含んで構成されている。
ランプドライバ342は、ランプコントローラ317aから入力されたランプ駆動データに応じて、枠ランプ20を構成する各系統の発光素子群の駆動(発光)を制御する。
この際、ランプ駆動データでは、枠ランプ20を構成する各系統に対応する輝度値が指定されている。そして、枠ランプ20を構成する各系統に対して、ランプ駆動データで指定されている輝度値に応じた励磁信号(駆動電流)が供給される。これによって、系統ごとに、当該系統を構成する発光素子群の駆動(発光)が制御される。
モータドライバ343は、モータコントローラ317bから入力されたモータ駆動データに応じて、一体扉ユニット4に配設されている各種モータ23(各種可動体ユニットを構成するモータ23)に対する励磁信号(駆動電流)の出力を制御する。
この際、モータ駆動データでは、一体扉ユニット4に配設されている各モータ23の出力値が指定されている。そして、各モータ23に対して、モータ駆動データで指定されている出力値に応じた励磁信号(駆動電流)が供給される。これによって、モータ23ごとに、駆動が制御される。
パラレルシリアル変換回路341には、各種センサ24からの検出信号と、各種スイッチ25~29からの検出信号と、が入力される。そして、パラレルシリアル変換回路341は、各種センサ24からの検出信号、及び、各種スイッチ25~29からの検出信号を、シリアルデータに変換して、シリアル通信コントローラ317に対して出力する。
【0101】
(遊技機状態について)
パチンコ機1では、遊技機状態として、6つの状態(具体的には、遊技可能状態、設定変更状態、設定確認状態、設定異常状態、RAM異常状態、及び、バックアップ異常状態)が規定されている。
主制御基板200のRAM230には、遊技機状態フラグ領域が設けられている。遊技機状態フラグ領域には、遊技機状態フラグとして、6つの遊技機状態(具体的には、遊技可能状態、設定変更状態、設定確認状態、設定異常状態、RAM異常状態、及び、バックアップ異常状態)のうち、いずれか一の遊技機状態に対応する値が記憶(設定)される。そして、パチンコ機1では、遊技機状態フラグ領域に記憶されている値に対応する遊技機状態が生起される。
「遊技可能状態」は、遊技の進行が可能となる遊技機状態となっている。
遊技可能状態の生起中には、後述するステップS4-9~S4-18の処理の実行が許可される。これによって、遊技(普通遊技及び特別遊技)の進行が可能となる。
また、遊技可能状態の生起中には、性能表示装置206において、ベース比率が表示される。また、メイン表示装置60において、遊技に関する情報が表示される。
【0102】
「設定変更状態」は、RAM230の設定値領域に記憶されている設定値を変更することが可能となる遊技機状態となっている。
設定変更状態は、設定変更条件が成立している場合に生起される。本実施形態では、電源投入時において、内枠開放センサ108からの検出信号が入力されており、かつ、設定キースイッチ208からの検出信号が入力されており、かつ、RAMクリアスイッチ207からの検出信号が入力されている場合に、設定変更条件が成立する。すなわち、電源投入時において、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されている場合、設定変更状態が生起される。
設定変更状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定変更状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
さらに、設定変更状態の生起中には、RAMクリアスイッチ207を押下操作することによって、設定値領域に記憶されている設定値を変更することが可能となる。そして、設定変更状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定変更状態に替えて、遊技可能状態が生起される。これによって、設定値領域に記憶されている設定値が確定される。
【0103】
「設定確認状態」は、RAM230の設定値領域に記憶されている設定値を確認することが可能となる遊技機状態となっている。
設定確認状態は、設定確認条件が成立している場合に生起される。本実施形態では、電源投入時において、内枠開放センサ108からの検出信号が入力されており、かつ、設定キースイッチ208からの検出信号が入力されており、かつ、RAMクリアスイッチ207からの検出信号が入力されていない場合に、設定確認条件が成立する。すなわち、電源投入時において、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されていない場合、設定確認状態が生起される。
設定確認状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定確認状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。これによって、設定値領域に記憶されている設定値を確認することが可能となる。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
なお、設定確認状態の生起中には、設定値領域に記憶されている設定値を変更することができない。
そして、設定確認状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定確認状態に替えて、遊技可能状態が生起される。
【0104】
「設定異常状態」は、設定異常が発生している遊技機状態となっている。
設定異常状態は、遊技可能状態の生起中において、設定値領域に設定されている設定値が規定範囲内にないと判定された場合に生起される。
設定異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定異常状態の生起中には、性能表示装置206において、設定異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
設定異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
【0105】
「RAM異常状態」は、RAM異常が発生している遊技機状態となっている。
RAM異常状態は、電源投入時に、RAM230のリード/ライト異常の発生が判定された場合に生起される。
RAM異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、RAM異常状態の生起中には、性能表示装置206において、RAM異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
RAM異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
【0106】
「バックアップ異常状態」は、バックアップ異常が発生している遊技機状態となっている。
バックアップ異常状態は、電源投入時に、RAM230のバックアップ異常(具体的には、バックアップフラグの異常、又は、チェックサムの異常)の発生が判定された場合に生起される。
バックアップ異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、バックアップ異常状態の生起中には、性能表示装置206において、バックアップ異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
バックアップ異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
【0107】
(設定値について)
次に、パチンコ機1で設定される設定値(設定情報)を説明する。
「設定値」は、特別図柄抽選(第1特別図柄抽選及び第2特別図柄抽選)の当選確率(大当り遊技状態に当選する確率)を指定する情報となっている。本実施形態では、設定値として、「0」~「5」の値が規定されている。
主制御基板200のRAM230には、設定値領域が設けられている。設定値領域には、設定値として、「0」~「5」のうち、いずれか一の値が記憶(設定)される。そして、パチンコ機1では、特別図柄抽選の当選確率が、設定値領域に設定されている値に応じた確率とされる。
本実施形態では、各設定値に対応する特別図柄抽選の当選確率は、当選確率が高いものから順に、設定値=「5」に対応する当選確率、設定値=「4」に対応する当選確率、設定値=「3」に対応する当選確率、設定値=「2」に対応する当選確率、設定値=「1」に対応する当選確率、設定値=「0」に対応する当選確率(当選確率「高」→当選確率「低」)となる。
【0108】
特に、パチンコ機1では、設定変更状態の生起中に、設定値領域に記憶されている設定値を変更(選択)することが可能となっている。ここで、設定値の変更は、パチンコ機1の管理者(パチンコ機1が設置されている遊技場の従業員等)により実行される。
すなわち、上記のように、電源投入時に、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されている場合、設定変更状態が生起される。
設定変更状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。また、RAMクリアスイッチ207が押下操作されるごとに、設定値領域に記憶されている設定値が変更される。この際、設定値領域に設定されている設定値が変更された場合、これに伴い、性能表示装置206に表示される設定値も変更される。
そして、設定変更状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定変更状態に替えて、遊技可能状態が生起される。これによって、設定値領域に記憶されている設定値が確定される。
【0109】
(ベース比率について)
パチンコ機1では、遊技可能状態の生起中、CPU210により、ベース比率(ベース値)が算出される。本実施形態では、所定の遊技状態の生起中(具体的には、特図低確率状態の生起中、かつ、時短制御の停止中)に限り、ベース比率が算出される。
そして、遊技可能状態の生起中には、性能表示装置206において、算出されたベース比率が表示される。
「ベース比率」は、遊技領域30に発射された遊技球の数と、所定の入球口(本実施形態では、第1始動口51、第2始動口52及び他入賞口54~57)への遊技球の入球に応じて払い出された賞球数と、に基づいて算出される情報となっている。具体的に、ベース比率は、アウト球数に対する払出数の比率(百分率)となっている。
本実施形態では、所定区間(期間)ごとに、当該区間におけるベース比率が算出される。そして、所定区間として、所定数(本実施形態では、60000[球])のアウト球数が検出(排出)される区間が規定されている。すなわち、各区間は、前回の区間の終了に応じて開始され、今回の区間中に検出されたアウト球数が所定数(60000[球])に達したことに応じて終了される。そして、CPU210は、各区間中に、ベース比率を、随時(リアルタイムで)算出する。
なお、所定区間として、所定時間が規定されていても構わない。すなわち、CPU210が、所定時間ごとのベース比率を算出する構成としても構わない。
「アウト球数」は、アウト球の数をいう。「アウト球」は、遊技領域30から排出された遊技球をいう。具体的に、アウト球は、排出路を通過した遊技球(アウトスイッチ109により検出された遊技球)となっている。
なお、アウト口58から排出された遊技球を、アウト球としても構わない。具体的に、アウトスイッチ109が、アウト口58から排出された遊技球のみを検出する構成とし、アウトスイッチ109により検出された遊技球を、アウト球としても構わない。
「払出数」は、第1始動口51、第2始動口52及び他入賞口54~57への遊技球の入球に応じて払い出された賞球の合計をいう。
【0110】
(各種抽選について)
次に、パチンコ機1で実行される各種抽選について説明する。
パチンコ機1では、遊技球による始動ゲート41の通過を契機として、普通図柄抽選が実行される。そして、普通図柄抽選に当選した場合に、普図当り遊技状態が生起される。普図当り遊技状態では、普通電動役物52aが閉鎖状態から開放状態に変位(開放)されて、第2始動口52への遊技球の入球が可能となる。
本実施形態では、普通図柄抽選に当選した場合に生起される普図当り遊技状態の種別として、「普図当り」の1種類が設定されている。
【0111】
「普図当り」に当選(普通図柄抽選に当選)した場合には、普図表示装置において、普通図柄を「普図当り図柄」で停止表示させるように制御する。
一方、普通図柄抽選に落選した場合には、普図表示装置において、普通図柄を「はずれ図柄」で停止表示させるように制御する。
パチンコ機1では、遊技者に有利となる補助制御として、時短制御を実行することが可能となっている。
時短制御の実行中には、時短制御の停止中と比較して、特別図柄の変動表示を行う時間(以下、「変動時間」とする)が短縮される。本実施形態では、時短制御の実行中には、時短制御の停止中と比較して、普通図柄抽選の当選確率が向上されるとともに、普通図柄の変動表示を行う時間が短縮される。また、時短制御の実行中には、時短制御の停止中と比較して、普図当り遊技状態において、普通電動役物52aの開放回数が増加されるとともに、普通電動役物52aの開放時間が延長される。
【0112】
「普図当り」に当選した場合には、普通電動役物52aの開放回数が、1[回]又は3[回]に設定され、各回における普通電動役物52aの開放時間が、0.5[s]又は2.0[s]に設定される。この際、時短制御の実行中には、普通電動役物52aの開放回数が、3[回]に設定されるとともに、各回における普通電動役物52aの開放時間が、2.0[s]に設定される。一方、時短制御の停止中には、普通電動役物52aの開放回数が、1[回]に設定されるとともに、各回における普通電動役物52aの開放時間が、0.5[s]に設定される。
【0113】
また、パチンコ機1では、第1始動口51への遊技球の入球を契機として、第1特別図柄抽選が実行され、第2始動口52への遊技球の入球を契機として、第2特別図柄抽選が実行される。そして、第1特別図柄抽選又は第2特別図柄抽選に当選した場合に、大当り遊技状態が生起される。大当り遊技状態では、特別電動役物53aが閉鎖状態から開放状態に変位されるラウンド遊技が実行されて、大入賞口53への遊技球の入球が可能な状態となる。
本実施形態では、第1特別図柄抽選に当選した場合に生起される大当り遊技状態の種別として、「大当り1」及び「大当り2」が設定され、第2特別図柄抽選に当選した場合に生起される大当り遊技状態の種別として、「大当り3」~「大当り6」が設定されている。
【0114】
「大当り1」に当選した場合には、特図1表示装置において、「大当り1図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「確変図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「確変図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「7,7,7」等、同一の奇数の数字を示す「数字図柄」で揃うとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「大当り2」に当選した場合には、特図1表示装置において、「大当り2図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「通常図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「通常図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「2,2,2」等、同一の偶数の数字を示す「数字図柄」で揃うとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「大当り3」に当選した場合には、特図2表示装置において、「大当り3図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「確変図柄」に対応する停止図柄(表示態様)が停止表示される。
【0115】
「大当り4」に当選した場合には、特図2表示装置において、「大当り4図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「確変図柄」に対応する停止図柄(表示態様)が停止表示される。
「大当り5」に当選した場合には、特図2表示装置において、「大当り5図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「潜伏図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「潜伏図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「1,2,3」等、所定の規則性を有する組み合わせとなるとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「大当り6」に当選した場合には、特図2表示装置において、「大当り6図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「潜伏図柄」に対応する停止図柄(表示態様)が停止表示される。
【0116】
一方、特別図柄抽選に落選した場合(「はずれ」の場合)には、特図1表示装置又は特図2表示装置において、「はずれ図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「はずれ図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「はずれ図柄」は、例えば、3つの第1演出図柄表示領域a1~a3に停止表示された第1演出図柄z1が、「1,6,9」等、少なくとも一の領域に停止表示された「数字図柄」が示す数字が、他の領域に停止表示された「数字図柄」が示す数字と異なる組み合わせとなるとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
【0117】
「大当り1」~「大当り6」に当選した場合には、大当り遊技状態において、所定回数のラウンド遊技が実行される。
本実施形態では、「大当り1」、「大当り2」、「大当り5」又は「大当り6」に当選した場合には、ラウンド遊技の回数が5[回]に設定される。一方、「大当り3」に当選した場合には、ラウンド遊技の回数が15[回]に設定される。一方、「大当り4」に当選した場合には、ラウンド遊技の回数が10[回]に設定される。
「大当り1」~「大当り6」に当選した場合には、各回のラウンド遊技における特別電動役物53aの最長開放時間が、所定時間(本実施形態では、29.0[s])に設定される。そして、各回のラウンド遊技は、特別電動役物53aが開放状態とされてから設定された最長開放時間が経過したこと、及び、当該ラウンド遊技における大入賞口53への遊技球の入球数が所定上限数(本実施形態では、10[球])に達したこと、のうち一方の条件の成立に応じて終了される。
【0118】
また、パチンコ機1では、特別図柄抽選(第1特別図柄抽選及び第2特別図柄抽選)の当選確率に係る遊技状態として、「特図低確率状態」と、「特図高確率状態」と、が規定されている。
「特図低確率状態」の生起中には、特別図柄抽選の当選確率が、第1の確率(以下、「低確率」とする)とされる。
「特図高確率状態」の生起中には、特別図柄抽選の当選確率が、第1の確率より高い第2の確率(以下、「高確率」とする)とされる。
なお、主制御基板200は、第1特別図柄抽選の当選確率と第2特別図柄抽選の当選確率とが同期するように、各抽選の当選確率を設定する。ここで、特別図柄抽選の当選確率とは、大当り遊技状態が生起される「当り」(「大当り1」~「大当り6」)に当選する確率をいう。
特に、パチンコ機1では、特別図柄抽選の当選確率が、設定値領域に設定されている設定値と、遊技状態(特図低確率状態又は特図高確率状態)と、の組わせに応じた確率となる。
【0119】
具体的に、設定値=「0」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/319.69となる。一方、設定値=「0」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/32.13となる。
一方、設定値=「1」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/312.08となる。一方、設定値=「1」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/31.36となる。
一方、設定値=「2」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/304.82となる。一方、設定値=「2」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/30.62となる。
【0120】
一方、設定値=「3」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/297.89となる。一方、設定値=「3」、かつ、「特図高確率状態」の生起中にあ、特別図柄抽選の当選確率(大当り確率)が、1/29.93となる。
一方、設定値=「4」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/291.27となる。一方、設定値=「4」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/29.26となる。
一方、設定値=「5」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/284.94となる。一方、設定値=「5」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/28.62となる。
【0121】
「大当り2」又は「大当り6」に当選した場合には、当該大当り遊技状態の終了後から次回の大当り遊技状態の生起前までの期間において、「特図低確率状態」が生起される。
一方、「大当り1」又は「大当り3」~「大当り5」に当選した場合には、当該大当り遊技状態の終了に応じて「特図高確率状態」が生起される。本実施形態では、「特図高確率状態」は、大当り遊技状態の終了に応じて開始され、次回の大当り遊技状態の開始(「大当り図柄」の停止表示の終了)に応じて終了される。
なお、「特図高確率状態」が、大当り遊技状態の終了に応じて開始され、当該「特図高確率状態」の生起中に実行された特別図柄抽選の回数が所定回数(例えば、10000[回])に達したことに応じて終了される(「特図低確率状態」が生起される)構成としても構わない。
【0122】
また、「大当り1」~「大当り6」に当選した場合には、当該大当り遊技状態の終了後に、時短制御が実行される。
時短制御は、大当り遊技状態の終了に応じて開始され、特別図柄抽選に当選したこと(「大当り図柄」が停止表示されたこと)、及び、所定の時短回数の特別図柄の報知表示(変動表示及び停止表示)が実行されたこと、のうち一方の条件の成立に応じて終了される。
「大当り2」又は「大当り6」に当選した場合には、所定の時短回数として、100[回]が設定される。
一方。「大当り1」又は「大当り3」~「大当り5」に当選した場合には、所定の時短回数として、10000[回]が設定される。
【0123】
(制御コマンドについて)
次に、主制御基板200から演出制御基板300に対して送信される制御コマンド、及び、主制御基板200と払出制御基板400との間で送受信される制御コマンドについて説明する。
主制御基板200と演出制御基板300とは、シリアル通信用のハーネスを介して互いに接続されている。ここで、主制御基板200と演出制御基板300との間における通信は、主制御基板200から演出制御基板300への一方向のみで行われ、演出制御基板300から主制御基板200への通信は行われない。
主制御基板200から演出制御基板300に対して送信される各制御コマンドは、制御コマンドの種類を示す1バイトの上位データと、制御コマンドの内容を示す1バイトの下位データと、から構成されている。
そして、主制御基板200は、シリアル通信によって、上位データ及び下位データから構成される制御コマンドを演出制御基板300に対して送信する。演出制御基板300では、主制御基板200から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAMの所定領域に記憶する。
【0124】
パチンコ機1では、主制御基板200から演出制御基板300に対して送信される制御コマンドとして、図柄種別指定コマンド、変動モード指定コマンド、変動パターン指定コマンド、停止指定コマンド、遊技状態指定コマンド、保留数指定コマンド、オープニング指定コマンド、ラウンド開始指定コマンド、ラウンド終了指定コマンド、エンディング指定コマンド、第1先読み指定コマンド、第2先読み指定コマンド、第3先読み指定コマンド、エラー指定コマンド、デモ指定コマンド、設定値指定コマンド、遊技状況指定コマンド等が設定されている。
図柄種別指定コマンドは、停止図柄の種別(停止図柄番号)を指定するコマンドである。具体的に、図柄種別指定コマンドは、「はずれ図柄」及び「大当り1図柄」~「大当り6図柄」のうち、一の種別を指定する。図柄種別指定コマンドは、特別図柄の変動表示の開始時に送信される。本実施形態では、図柄種別指定コマンドは、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
【0125】
変動モード指定コマンドは、変動モードの種別(変動モード番号)を指定するコマンドである。変動モード指定コマンドは、変動モード番号を指定することによって、当該変動モード番号に対応付けられている変動時間を指定する。変動モード指定コマンドは、特別図柄の変動表示(変動演出)のうち、前半期間の変動時間(変動演出の前半期間の態様)を指定する。
本実施形態では、変動モードの種別として、互いに異なる変動時間が対応付けられた、m(複数)種類のものが設定されている。そして、変動モード指定コマンドは、m種類の変動モードの種別(変動モード番号)のうち一のもの(「変動モードm」)を指定する。
【0126】
変動パターン指定コマンドは、変動パターンの種別(変動パターン番号)を指定するコマンドである。変動パターン指定コマンドは、変動パターン番号を指定することによって、当該変動パターン番号に対応付けられている変動時間を指定する。変動パターン指定コマンドは、特別図柄の変動表示(変動演出)のうち、後半期間の変動時間(変動演出の後半期間の態様)を指定する。
本実施形態では、変動パターンの種別として、互いに異なる変動時間が対応付けられた、n(複数)種類のものが設定されている。そして、変動パターン指定コマンドは、n種類の変動パターンの種別(変動パターン番号)のうち一のもの(「変動パターンn」)を指定する。
変動モード指定コマンド及び変動パターン指定コマンドは、特別図柄の変動表示の開始時に送信される。
【0127】
停止指定コマンドは、特別図柄(演出図柄z1,z2)の停止表示を指定するコマンドである。停止指定コマンドは、特別図柄の停止表示の開始時に送信される。
遊技状態指定コマンドは、遊技状態(遊技状態オフセット値)を指定するコマンドである。
ここで、「遊技状態オフセット値」とは、遊技状態を指定する情報となっている。本実施形態では、遊技状態オフセット値として、時短制御フラグの値と、特図高確率状態フラグの値と、前回大当り図柄フラグの値と、大当り後回転数カウンタの値と、の組み合わせのそれぞれに対応する数値が設定されている。
そして、遊技状態指定コマンドは、一の遊技状態オフセット値を指定する。遊技状態指定コマンドは、電源投入時、後述する特別遊技フェーズの変更時等に送信される。
【0128】
保留数指定コマンドは、保留数を指定するコマンドである。本実施形態では、保留数指定コマンドは、保留数(特図1保留数又は特図2保留数)が「1」増加したこと、保留数が「1」減少したこと、保留数等を指定する。
ここで、「特図1保留数」とは、特図1表示装置における第1特別図柄の報知表示(変動表示及び停止表示)が保留されている数をいう。また、「特図2保留数」とは、特図2表示装置における第2特別図柄の報知表示(変動表示及び停止表示)が保留されている数をいう。
保留数指定コマンドは、電源投入時、遊技情報の記憶時、特別図柄の変動表示の開始時等に送信される。本実施形態では、保留数指定コマンドとして、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
【0129】
オープニング指定コマンドは、オープニング期間の開始(大当り遊技状態の開始)を指定するコマンドである。オープニング指定コマンドは、大当り遊技状態の種別(「大当り図柄」の種別)を指定する。具体的に、オープニング指定コマンドは、「大当り1図柄」~「大当り6図柄」のうち、一の種別を指定する。オープニング指定コマンドは、オープニング期間の開始時(大当り遊技状態の開始時)に送信される。
ラウンド開始指定コマンドは、ラウンド遊技の開始を指定するコマンドである。ラウンド開始指定コマンドは、ラウンド遊技の開始時に送信される。
ラウンド終了指定コマンドは、ラウンド遊技の終了を指定するコマンドである。ラウンド終了指定コマンドは、ラウンド遊技の終了時に送信される。
エンディング指定コマンドは、エンディング期間の開始を指定するコマンドである。エンディング指定コマンドは、エンディング期間の開始時に送信される。
【0130】
第1先読み指定コマンドは、停止図柄の種別(「はずれ図柄」及び「大当り1図柄」~「大当り6図柄」のうち、一の種別)を指定するコマンドである。本実施形態では、第1先読み指定コマンドは、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
第2先読み指定コマンドは、変動モードの内容を指定するコマンドである。具体的には、第2先読み指定コマンドは、変動モードの種別が不定であること(「不定値」)、又は、m種類の変動モード(変動モード番号)うち一のもの(「変動モードm」)を指定する。第2先読み指定コマンドは、遊技情報記憶時に送信される。
第3先読み指定コマンドは、変動パターンの内容を指定するコマンドである。具体的には、第3先読み指定コマンドは、変動パターンの種別が不定であること(「不定値」)、又は、n種類の変動パターン(変動パターン番号)うち一のもの(「変動パターンn」)を指定する。第3先読み指定コマンドは、遊技情報記憶時に送信される。
【0131】
エラー指定コマンドは、各種エラーの発生を指定するコマンドである。本実施形態では、エラー指定コマンドは、振動エラーの発生、磁気エラーの発生、電波エラーの発生、又は、右打ちエラーの発生を指定する。エラー指定コマンドは、各種エラーの発生の検出時に送信される。
デモ指定コマンドは、客待ち状態の開始を指定するコマンドである。デモ指定コマンドは、客待ち状態の開始時に送信される。
設定値指定コマンドは、RAM230の設定値領域に記憶されている設定値を指定するコマンドである。設定値指定コマンドは、RAMクリア時、電源投入後の電源復帰時、設定変更状態の終了時、設定確認状態の終了時等に送信される。
遊技状況指定コマンドは、発射可能状態の発生(開始)又は解除(終了)を指定するコマンドである。遊技状況指定コマンドは、遊技可能状態の発生時(開始時)と、遊技可能状態の解除時(終了時)と、に送信される。
【0132】
主制御基板200と払出制御基板400とは、シリアル通信用のハーネスを介して互いに接続されている。ここで、主制御基板200と払出制御基板400との間における通信は、双方向に行われる。主制御基板200と払出制御基板400との間において送受信される各制御コマンドは、1バイトのデータから構成されている。
そして、主制御基板200は、シリアル通信によって、制御コマンドを払出制御基板400に対して送信する。払出制御基板400では、主制御基板200から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAMの所定領域に記憶する。また、払出制御基板400は、シリアル通信によって、制御コマンドを主制御基板200に対して送信する。主制御基板200では、払出制御基板400から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAM230の所定領域に記憶する。
【0133】
パチンコ機1では、主制御基板200から払出制御基板400に対して送信される制御コマンドとして、賞球数指定コマンド等が設定されている。
賞球数指定コマンドは、払い出しを行う賞球数を指定するコマンドである。本実施形態では、賞球数指定コマンドは、n個(n=1~15)の賞球の払い出しを指定する。賞球数指定コマンドは、払出制御基板400による賞球の払い出し動作の実行時に送信される。
また、パチンコ機1では、払出制御基板400から主制御基板200に対して送信される制御コマンドとして、払出中エラーの発生・解除、満タンエラーの発生・解除、球詰まりエラーの発生・解除等のそれぞれを指定する制御コマンドが設定されている。各制御コマンドは、各種エラーの発生・解除の検出時に送信される。
【0134】
(主制御基板200で実行される処理)
次に、主制御基板200で実行される処理を説明する。
まず、主制御基板200に構成されているハードウェアの機能について説明する。
パチンコ機1に電源が投入されると、乱数発生回路203は、ハード乱数更新処理を開始する。
ハード乱数更新処理では、クロック発生回路202から1クロックが入力されるごと(本実施形態では、0.083[μs]ごと)に、第1ループカウンタ~第3ループカウンタの値が、所定の範囲内(本実施形態では、0~65535の範囲内)において「1」ずつ更新される。
【0135】
また、ハード乱数更新処理では、クロック発生回路202から32クロックが入力されるごと(本実施形態では、2.666[μs]ごと)に、第4ループカウンタの値が、所定の範囲内(本実施形態では、0~10006の範囲内)において「1」ずつ更新される。
そして、ハード乱数更新処理によって、普通図柄抽選の当り乱数、第1特別図柄抽選の大当り乱数、第2特別図柄抽選の大当り乱数、及び、リーチグループ乱数が、それぞれ、更新される。なお、ハード乱数更新処理は、乱数発生回路203(ハードウェア)の機能として実行され、後述するCPU210がソフトウェアに基づいて実行する処理とは独立して実行される。
【0136】
また、パチンコ機1に電源が投入されると、コマンド出力ポート1,2の送信用シフトレジスタは、FIFOバッファに記憶されている制御コマンドを演出制御基板300又は払出制御基板400に対して送信する制御コマンド送信処理を開始する。なお、制御コマンド送信処理は、コマンド出力ポート1,2(ハードウェア)の機能として実行され、後述するCPU210がソフトウェアに基づいて実行する処理とは独立して実行される。
【0137】
次に、主制御基板200のCPU210がROM220に記憶されているプログラム(ソフトウェア)に基づいて実行する遊技制御処理について説明する。
(CPU初期化処理)
まず、CPU210が実行するCPU初期化処理を説明する。
図5は、CPU初期化処理を示すフローチャートである。
パチンコ機1に電源が投入されると、CPU210は、図5に示すCPU初期化処理を開始する。CPU初期化処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、CPU初期化処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
CPU初期化処理が開始されると、まず、ステップS1-1に移行する。
ステップS1-1では、初期設定処理を実行し、ステップS1-2に移行する。初期設定処理では、ROM220から起動プログラムを読み込むとともに、レジスタの設定等、各種処理を実行するために必要な設定を行う。
【0138】
また、初期設定処理では、RAMクリアスイッチ207からのRAMクリア信号と、設定キースイッチ208からの検出信号と、内枠開放センサ108からの検出信号と、の読み込みを行う。
具体的に、RAMクリアスイッチ207に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定する。そして、判定結果を、RAMクリアスイッチ207のスイッチ情報として保存する。この際、オン状態が発生していると判定された場合、スイッチ情報として、オン状態が発生していることを示す値(本実施形態では、「1」)が保存され、オン状態が発生していないと判定された場合、スイッチ情報として、オン状態が発生していないことを示す値(本実施形態では、「0」)が保存される。
【0139】
また、設定キースイッチ208に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、設定キースイッチ208について、オン状態が発生しているか否かを判定する。そして、判定結果を、設定キースイッチ208のスイッチ情報として保存する。この際、オン状態が発生していると判定された場合、スイッチ情報として、オン状態が発生していることを示す値(本実施形態では、「1」)が保存され、オン状態が発生していないと判定された場合、スイッチ情報として、オン状態が発生していないことを示す値(本実施形態では、「0」)が保存される。
【0140】
さらに、内枠開放センサ108に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、内枠開放センサ108について、オン状態が発生しているか否かを判定する。そして、オン状態が発生していないと判定された場合、設定キースイッチ208のスイッチ情報を、オン状態が発生していないことを示す値(本実施形態では、「0」)に書き換える。一方、オン状態が発生していると判定された場合、設定キースイッチ208のスイッチ情報の書き換えを行わない。
【0141】
ステップS1-2では、ウェイト処理時間設定処理を実行し、ステップS1-3に移行する。ウェイト処理時間設定処理では、所定のウェイト処理時間(本実施形態では、3.1[s])を、タイマカウンタに設定する。これによって、タイマカウンタによる設定したウェイト処理時間の計測が開始される。
ステップS1-3では、ステップS1-2で設定したウェイト処理時間が経過したか否かを判定し、ウェイト処理時間が経過したと判定した場合(Yes)には、ステップS1-4に移行し、ウェイト処理時間が経過していないと判定した場合(No)には、ステップS1-3の処理を繰り返す。
ステップS1-4では、RAMアクセス許可処理を実行して、ステップS1-5に移行する。RAMアクセス許可処理では、RAM230のワーク領域へのアクセスを許可するために必要な処理を実行する。
具体的に、RAMアクセス許可処理では、RAM230のRAMアクセスプロテクト領域において、RAMプロテクト値として、アクセス許可に対応する値を記憶する。これにより、CPU210によるRAM230へのアクセスが許可された状態となる。
【0142】
ステップS1-5では、遊技機状態フラグ取得処理を実行し、ステップS1-6に移行する。遊技機状態フラグ取得処理では、遊技機状態フラグを取得する。
具体的に、遊技機状態フラグ取得処理では、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)を、Dレジスタに保存(ロード)する。
ステップS1-6では、バックアップ有効フラグが正常であるか否かを判定し、バックアップ有効フラグが正常であると判定した場合(Yes)には、ステップS1-7に移行し、バックアップ有効フラグが正常でないと判定した場合(No)には、ステップS1-18に移行する。
ここで、RAM230のバックアップ有効フラグ領域に記憶されている値(バックアップ有効フラグ)が所定の有効値である場合、バックアップ有効フラグが正常であると判定し、バックアップ有効フラグ領域に記憶されている値が所定の有効値でない場合、バックアップ有効フラグが正常でないと判定する。
【0143】
ステップS1-7では、チェックサム算出処理を実行し、ステップS1-8に移行する。チェックサム算出処理では、バックアップ情報に基づいて、チェックサムを算出する。
具体的に、チェックサム算出処理では、まず、バックアップ情報のうち、RAM230の使用領域M1(F000H~F1FFH)に記憶されている情報に基づいて、チェックサムを算出する。
次に、バックアップ情報のうち、RAM230の使用外領域M2(F300H~F3FFH)に記憶されている情報に基づいて、チェックサムを算出する。
ステップS1-8では、ステップS1-7で算出したチェックサムが正常であるか否かを判定し、チェックサムが正常であると判定した場合(Yes)には、ステップS1-9に移行し、チェックサムが正常でないと判定した場合(No)には、ステップS1-18に移行する。
ここで、「ステップS1-7で算出した使用領域M1のチェックサムの値が、RAM230のチェックサム領域に保存されている使用領域M1のチェックサムの値と一致していること」及び「ステップS1-7で算出した使用外領域M2のチェックサムの値が、チェックサム領域に保存されている使用外領域M2のチェックサムの値と一致していること」の両方の条件を満たす場合には、チェックサムが正常であると判定する。
一方、「ステップS1-7で算出した使用領域M1のチェックサムの値が、RAM230のチェックサム領域に保存されている使用領域M1のチェックサムの値と一致していること」及び「ステップS1-7で算出した使用外領域M2のチェックサムの値が、チェックサム領域に保存されている使用外領域M2のチェックサムの値と一致していること」のうち、少なくとも一方の条件を満していない場合には、チェックサムが正常でないと判定する。
【0144】
ステップS1-9では、電源投入時クリア対象領域設定処理を実行し、ステップS1-10に移行する。電源投入時クリア対象領域設定処理では、RAM230の使用領域M1をクリア(初期化)する範囲として、設定値領域及び遊技機状態フラグ領域を除いた他の領域(具体的には、チェックサム領域、バックアップ有効フラグ領域、エラー関連領域、通常遊技関連領域1、通常遊技関連領域2、及び、スタック領域)を設定する。
ステップS1-10では、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定し、オン状態が発生していないと判定した場合(No)には、ステップS1-11に移行し、オン状態が発生していると判定した場合(Yes)には、ステップS1-21に移行する。
ここで、ステップS1-1で保存したRAMクリアスイッチ207のスイッチ情報に基づいて、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定する。この際、スイッチ情報として、オン状態が発生していることを示す値が保存されている場合、オン状態が発生していると判定し、オン状態が発生していないことを示す値が保存されている場合、オン状態が発生していないと判定する。
【0145】
ステップS1-11では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS1-12に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS1-14に移行する。
ここで、Dレジスタに保存されている遊技機状態フラグに基づいて、遊技可能状態が生起されているか否かを判定する。この際、Dレジスタに保存されている遊技機状態フラグが、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
【0146】
ステップS1-12では、設定確認条件が成立しているか否かを判定し、設定確認条件が成立していると判定した場合(Yes)には、ステップS1-13に移行し、設定確認条件が成立していないと判定した場合(No)には、ステップS1-14に移行する。
「設定確認条件」は、遊技可能状態が生起されており、かつ、RAMクリアスイッチ207についてオン状態が発生しておらず、かつ、設定キースイッチ208についてオン状態が発生しており、かつ、内枠開放センサ108についてオン状態が発生している場合に成立する。
ここで、ステップS1-1では、内枠開放センサ108について、オン状態が発生していない場合、設定キースイッチ208のスイッチ情報が、オン状態が発生していないことを示す値に書き換えられる。これによって、設定キースイッチ208及び内枠開放センサ108の両方について、オン状態が発生している場合、設定キースイッチ208のスイッチ情報として、オン状態が発生していることを示す値が保存される。一方、設定キースイッチ208及び内枠開放センサ108のうち、少なくとも一方について、オン状態が発生していない場合、設定キースイッチ208のスイッチ情報として、オン状態が発生していないことを示す値が保存される。
したがって、ステップ1-12では、ステップS1-1で保存した設定キースイッチ208のスイッチ情報に基づいて、設定確認条件が成立しているか否かを判定する。この際、スイッチ情報として、オン状態が発生していることを示す値が保存されている場合、設定確認条件が成立していると判定し、オン状態が発生していないことを示す値が保存されている場合、設定確認条件が成立していないと判定する。
【0147】
ステップS1-13では、設定確認状態設定処理を実行し、ステップS1-14に移行する。設定確認状態設定処理では、Dレジスタにおいて、遊技機状態フラグとして、設定値確認状態に対応する値を設定する。
ステップS1-14では、電源復帰時クリア対象領域設定処理を実行し、ステップS1-15に移行する。電源復帰時クリア対象領域設定処理では、RAM230の使用領域M1をクリア(初期化)する範囲として、設定値領域、遊技機状態フラグ領域、通常遊技関連領域2、及び、スタック領域を除いた他の領域(具体的には、チェックサム領域、バックアップ有効フラグ領域、エラー関連領域、及び、通常遊技関連領域1)を設定する。
ステップS1-15では、電源復帰時初期化処理を実行し、ステップS1-16に移行する。電源復帰時初期化処理では、RAM230の使用領域M1のうち、ステップS1-14で設定した範囲をクリア(初期化)する。
ステップS1-16では、電源復帰時サブコマンド送信処理を実行し、ステップS1-17に移行する。電源復帰時サブコマンド送信処理では、電源遮断から復帰したことを指定するサブコマンド(電源復帰指定コマンド)を、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS1-17では、電源復帰時払出コマンド送信処理を実行し、ステップS1-32に移行する。電源復帰時払出コマンド送信処理では、電源遮断から復帰したことを指定する払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。
【0148】
ステップS1-18では、バックアップ異常状態設定処理を実行し、ステップS1-19に移行する。バックアップ異常状態設定処理では、Dレジスタにおいて、遊技機状態フラグとして、バックアップ異常状態に対応する値を設定する。
ステップS1-19では、使用外領域リードライトチェック処理を実行し、ステップS1-20に移行する。使用外領域リードライトチェック処理では、RAM230の使用外領域M2について、クリア(初期化)するとともに、リードライトチェックを行う。
ステップS1-20では、異常時クリア対象領域設定処理を実行し、ステップS1-21に移行する。異常時クリア対象領域設定処理では、RAM230の使用領域M1をクリア(初期化)する範囲として、全ての領域(具体的には、設定値領域、遊技機状態フラグ領域、チェックサム領域、バックアップ有効フラグ領域、エラー関連領域、通常遊技関連領域1、通常遊技関連領域2、及び、スタック領域)を設定する。
ステップS1-21では、使用領域リードライトチェック処理を実行し、ステップS1-22に移行する。使用領域リードライトチェック処理では、RAM230の使用領域M1のうち、ステップS1-20で設定した範囲について、クリア(初期化)するとともに、リードライトチェックを行う。
【0149】
ステップS1-22では、ステップS1-19,S1-21で行ったリードライトチェックの結果が正常であるか否かを判定し、リードライトチェックの結果が正常でないと判定した場合(No)には、ステップS1-23に移行し、リードライトチェックの結果が正常であると判定した場合(Yes)には、ステップS1-24に移行する。
ステップS1-23では、RAM異常状態設定処理を実行し、ステップS1-28に移行する。RAM異常状態設定処理では、Dレジスタにおいて、遊技機状態フラグとして、RAM異常状態に対応する値を設定する。
ステップS1-24では、設定確認状態が生起(設定)されているか否かを判定し、設定確認状態が生起されていると判定した場合(Yes)には、ステップS1-25に移行し、設定確認状態が生起されていないと判定した場合(No)には、ステップS1-26に移行する。
ここで、Dレジスタに保存されている遊技機状態フラグに基づいて、設定確認状態が生起されているか否かを判定する。この際、Dレジスタに保存されている遊技機状態フラグが、設定確認状態に対応する値である場合、設定確認状態が生起されていると判定し、設定確認状態に対応する値でない場合、設定確認状態が生起されていないと判定する。
ステップS1-25では、遊技可能状態設定処理を実行し、ステップS1-26に移行する。遊技可能状態設定処理では、Dレジスタにおいて、遊技機状態フラグとして、遊技可能状態に対応する値を設定する。
【0150】
ステップS1-26では、設定変更条件が成立しているか否かを判定し、設定変更条件が成立していると判定した場合(Yes)には、ステップS1-27に移行し、設定変更条件が成立していないと判定した場合(No)には、ステップS1-28に移行する。
「設定変更条件」は、RAMクリアスイッチ207についてオン状態が発生しており、かつ、設定キースイッチ208についてオン状態が発生しており、かつ、内枠開放センサ108についてオン状態が発生している場合に成立する。
ここで、上記のように、設定キースイッチ208及び内枠開放センサ108の両方について、オン状態が発生している場合、設定キースイッチ208のスイッチ情報として、オン状態が発生していることを示す値が保存される。一方、設定キースイッチ208及び内枠開放センサ108のうち、少なくとも一方について、オン状態が発生していない場合、設定キースイッチ208のスイッチ情報として、オン状態が発生していないことを示す値が保存される。
したがって、ステップ1-26では、ステップS1-1で保存した、RAMクリアスイッチ207のスイッチ情報、及び、設定キースイッチ208のスイッチ情報に基づいて、設定変更条件が成立しているか否かを判定する。
この際、RAMクリアスイッチ207のスイッチ情報、及び、設定キースイッチ208のスイッチ情報の両方について、オン状態が発生していることを示す値が保存されている場合、設定変更条件が成立していると判定する。一方、RAMクリアスイッチ207のスイッチ情報、及び、設定キースイッチ208のスイッチ情報のうち、少なくとも一方について、オン状態が発生していないことを示す値が保存されている場合、設定変更条件が成立していないと判定する。
【0151】
ステップS1-27では、設定変更状態設定処理を実行し、ステップS1-28に移行する。設定変更状態設定処理では、Dレジスタにおいて、遊技機状態フラグとして、設定変更状態に対応する値を設定する。
ステップS1-28では、遊技機状態フラグ保存処理を実行し、ステップS1-29に移行する。遊技機状態フラグ保存処理では、Dレジスタに設定されている遊技機状態フラグを、RAM230の遊技機状態フラグ領域に保存(セーブ)する。
ステップS1-29では、RAMクリア時サブコマンド送信処理を実行し、ステップS1-30に移行する。RAMクリア時サブコマンド送信処理では、RAMクリアを実行されたことを指定するサブコマンド(RAMクリア指定コマンド)を、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS1-30では、RAMクリア時初期化処理を実行し、ステップS1-31に移行する。RAMクリア時初期化処理では、RAM230の使用領域M1のうち、ステップS1-9又はステップS1-20で設定した範囲をクリア(初期化)する。
ステップS1-31では、RAMクリア時払出コマンド送信処理を実行し、ステップS1-32に移行する。RAMクリア時払出コマンド送信処理では、RAMクリアを実行されたことを指定する払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。
【0152】
ステップS1-32では、サブコマンド設定処理を実行し、ステップS1-33に移行する。サブコマンド設定処理では、現在の遊技機状態を指定する電源投入時遊技機状態指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
具体的に、サブコマンド設定処理では、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグ(遊技機状態)を指定する電源投入時遊技機状態指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS1-33では、サブコマンド群設定処理を実行し、ステップS1-34に移行する。サブコマンド群設定処理では、サブコマンド群を、RAM230のサブコマンド出力要求バッファに記憶する。
ここで、サブコマンド群には、電源復帰時フェーズを指定するサブコマンド、遊技状態(遊技状態オフセット値)を指定するサブコマンド、発射位置を指定するサブコマンド、第1特別図柄の停止図柄を指定するサブコマンド、第2特別図柄の停止図柄を指定するサブコマンド、特図1保留数を指定するサブコマンド、特図2保留数を指定するサブコマンド、時短カウンタの値を指定するサブコマンド、RAM230の設定値領域に記憶されている設定値を指定する設定値指定コマンド等が含まれる。
【0153】
ステップS1-34では、初期表示時間設定処理を実行し、ステップS1-35に移行する。初期表示時間設定処理では、初期表示用タイマに、性能表示装置206の初期表示時間を設定する。
ステップS1-35では、割込み設定処理を実行し、メインループ処理(ステップS2-1)に移行する。割込み設定処理では、周辺デバイスであるCTC(カウンタ/タイマ回路)の初期設定を行う。
具体的に、割込み設定処理では、割込みベクタレジスタを設定し、また、CTCに割込みカウント値(本実施形態では、4.0[ms])を設定する。
【0154】
(メインループ処理)
次に、CPU210が実行するメインループ処理を説明する。
図6は、メインループ処理を示すフローチャートである。
CPU210は、図5に示すCPU初期化処理(ステップS1-35)が終了すると、図6に示すメインループ処理を開始する。メインループ処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、メインループ処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
メインループ処理が開始されると、まず、ステップS2-1に移行する。
ステップS2-1では、割込み禁止処理を実行して、ステップS2-2に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
ステップS2-2では、初期値乱数更新処理を実行し、ステップS2-3に移行する。初期値乱数更新処理では、初期値乱数を発生させるためのループカウンタの値を更新する。
ここで、「初期値乱数」とは、プログラム上で発生する乱数であるソフト乱数(当り図柄乱数、リーチモード乱数、変動パターン乱数等)の初期値及び終了値を決定するための乱数である。
すなわち、ソフト乱数を発生させるループカウンタの値は、予め設定された初期値から終了値までの範囲内において更新される。そして、ソフト乱数を発生させるループカウンタの初期値及び終了値は、ループカウンタの値が終了値に達するごとに変更される。この際、ループカウンタの初期値及び終了値は、初期値乱数に基づいて決定される。
【0155】
ステップS2-3では、主コマンド解析処理を実行し、ステップS2-4に移行する。主コマンド解析処理では、払出制御基板400から受信した主コマンド(払出制御基板400から主制御基板200に対して送信される制御コマンド)を解析し、解析結果に応じた処理を実行する。
ステップS2-4では、サブコマンド送信処理を実行し、ステップS2-5に移行する。サブコマンド送信処理では、RAM230のサブコマンド出力要求バッファに記憶されているサブコマンドを、出力ポート205(コマンド出力ポート1)の送信用データレジスタに対して出力する。
これによって、送信用データレジスタに入力されたサブコマンドは、FIFOバッファに記憶(格納)される。そして、FIFOバッファに記憶されたサブコマンドは、送信用シフトレジスタによって、所定の順番で、演出制御基板300に対して送信される。
ステップS2-5では、割込み許可処理を実行し、ステップS2-6に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、ステップS2-5の割込み許可処理が実行されてからステップS2-1の割込み禁止処理が実行されるまでの期間中が、電源遮断時退避処理、タイマ割込み処理等の実行が許可された割込み許可期間となる。
ステップS2-6では、その他乱数更新処理を実行し、ステップS2-1に移行する。その他乱数更新処理では、ソフト乱数のうち当り図柄乱数を除いたもの(具体的には、リーチモード乱数、変動パターン乱数等)の更新を行う。
【0156】
(電源遮断時退避処理)
次に、CPU210が実行する電源遮断時退避処理を説明する。
図7は、電源遮断時退避処理を示すフローチャートである。
主制御基板200は、電源遮断検出回路(図示せず)を含んで構成されている。電源遮断検出回路は、電源基板600から供給される電源電圧を監視して、電源電圧の値が所定の基準値を下回った場合に、電源遮断予告信号を入力ポート204に対して出力する。
CPU210は、電源遮断予告信号を受信すると、メインループ処理の割込み許可期間中において、図7に示す電源遮断時退避処理を開始する。電源遮断時退避処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、電源遮断時退避処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
【0157】
電源遮断時退避処理が開始されると、まず、ステップS3-1に移行する。
ステップS3-1では、レジスタ退避処理を実行し、ステップS3-2に移行する。レジスタ退避処理では、メインループ処理の実行中に使用していたレジスタの値をRAM230の退避領域に退避させる。
ステップS3-2では、電源遮断予告信号読込処理を実行し、ステップS3-3に移行する。電源遮断予告信号読込処理では、電源遮断検出回路からの電源遮断予告信号の読み込みを行う。
具体的には、電源遮断予告信号読込処理では、入力ポート204の電源遮断予告信号に対応する受信記憶領域に設定されている値(「1」又は「0」)を読み込む。
ステップS3-3では、ステップS3-2で読み込んだ値(電源遮断予告信号に対応する受信記憶領域に設定されている値)に基づいて、電源遮断検出回路から電源遮断予告信号が入力されているか否かを判定し、電源遮断予告信号が入力されていると判定した場合(Yes)には、ステップS3-4に移行し、電源遮断予告信号が入力されていないと判定した場合(No)には、ステップS3-13に移行する。
【0158】
ステップS3-4では、出力ポート停止処理を実行し、ステップS3-5に移行する。出力ポート停止処理では、出力ポート205(出力ポート0~出力ポート4)による制御信号及び制御コマンドの出力を停止する。
具体的に、出力ポート停止処理では、出力ポート205(出力ポート0~出力ポート4)のポートレジスタに含まれる全てのビットの値を初期化する。これによって、出力ポート205(出力ポート0~出力ポート4)による制御信号及び制御コマンドの出力が停止される。
ステップS3-5では、バックアップ有効フラグ設定処理を実行し、ステップS3-6に移行する。バックアップ有効フラグ設定処理では、RAM230のバックアップ有効フラグ領域に、所定の有効値を保存(セーブ)する。
【0159】
ステップS3-6では、チェックサム保存処理を実行し、ステップS3-7に移行する。チェックサム保存処理では、チェックサムを算出・保存する。
具体的に、チェックサム保存処理では、まず、RAM230の使用領域M1(F000H~F1FFH)に記憶されている情報に基づいて、チェックサムを算出する。そして、算出したチェックサムの値を、RAM230のチェックサム領域に保存する。
次に、RAM230の使用外領域M2(F300H~F3FFH)に記憶されている情報に基づいて、チェックサムを算出する。そして、算出したチェックサムの値を、チェックサム領域に保存する。
ステップS3-7では、RAMアクセス禁止処理を実行し、ステップS3-8に移行する。RAMアクセス禁止処理では、RAM230へのアクセスを禁止するための処理を実行する。
具体的に、RAMアクセス禁止処理では、RAM230のRAMアクセスプロテクト領域において、RAMプロテクト値として、アクセス禁止に対応する値を記憶する。これにより、CPU210によるRAM230に対するアクセスが禁止された状態となる。
【0160】
ステップS3-8では、ループカウンタ設定処理を実行し、ステップS3-9に移行する。ループカウンタ設定処理では、復帰判定用ループカウンタの値として、所定の電源遮断予告信号読込回数を設定する。
ステップS3-9では、電源遮断予告信号読込処理を実行し、ステップS3-10に移行する。電源遮断予告信号読込処理では、電源遮断検出回路からの電源遮断予告信号の読み込みを行う。
具体的に、電源遮断予告信号読込処理では、入力ポート204の電源遮断予告信号に対応する受信記憶領域に設定されている値(「1」又は「0」)を読み込む。
ステップS3-10では、ステップS3-9で読み込んだ値(電源遮断予告信号に対応する受信記憶領域に設定されている値)に基づいて、電源遮断検出回路から電源遮断予告信号が入力されているか否かを判定し、電源遮断予告信号が入力されていないと判定した場合(No)には、ステップS3-11に移行し、電源遮断予告信号が入力されていると判定した場合(Yes)には、ステップS3-8に移行する。
【0161】
ステップS3-11では、ループカウンタ更新処理を実行し、ステップS3-12に移行する。ループカウンタ更新処理では、復帰判定用ループカウンタに設定されている値から、「1」を減算する。
ステップS3-12では、復帰判定用ループカウンタの値が「0」であるか否かを判定し、復帰判定用ループカウンタの値が「0」であると判定した場合(Yes)には、CPU初期化処理(ステップS1-1)に移行し、復帰判定用ループカウンタの値が「0」でないと判定した場合(No)には、ステップS3-9に移行する。
ステップS3-13では、レジスタ復帰処理を実行し、一連の処理を終了して元の処理に復帰する。レジスタ復帰処理では、ステップS3-1で退避しておいたレジスタの値を復帰させる。そして、レジスタ復帰処理の終了後、メインループ処理(スタックポインタで指示されるプログラムアドレス)に復帰する。
【0162】
(タイマ割込み処理)
次に、CPU210が実行するタイマ割込み処理を説明する。
図8は、タイマ割込み処理を示すフローチャートである。
クロック発生回路202は、所定割込み周期(本実施形態では、4.0[ms])ごとに、割込み要求信号を発生させる。
CPU210は、割込み要求信号の発生に応じて、メインループ処理の割込み許可期間中において、図8に示すタイマ割込み処理を開始する。メインループ処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、メインループ処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
【0163】
タイマ割込み処理が開始されると、まず、ステップS4-1に移行する。
ステップS4-1では、レジスタ退避処理を実行し、ステップS4-2に移行する。レジスタ退避処理では、メインループ処理の実行中に使用していた全てのレジスタの値をRAM230の退避領域に退避させる。
ステップS4-2では、割込み許可処理を実行し、ステップS4-3に移行する。割込み許可処理では、割込みを許可する。
ステップS4-3では、ダイナミックポート出力処理を実行し、ステップS4-4に移行する。ダイナミックポート出力処理については、後述する。
【0164】
ステップS4-4では、ポート入力処理を実行し、ステップS4-5に移行する。ポート入力処理では、各スイッチ・センサ(各信号)の状態を取得する。
RAM230には、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサ(入力ポート204に入力される各信号)に対応する入力情報記憶領域と、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサ(入力ポート204に入力される各信号)に対応するオン状態記憶領域と、が設けられている。
ポート入力処理では、まず、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサについて、当該スイッチ・センサに対応する受信記憶領域に設定されている情報を取得し、取得した情報を、当該スイッチ・センサに対応する入力情報記憶領域に保存(記憶)する。
これによって、各スイッチ・センサについて、当該スイッチ・センサからの検出信号が入力されている(ハイレベルである)場合、当該スイッチ・センサに対応する入力情報記憶領域に「1」が保存され、当該スイッチ・センサからの検出信号が入力されていない(ローレベルである)場合、当該スイッチ・センサに対応する入力記憶領域に「0」が保存される。
【0165】
次に、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサについて、オン状態が発生しているか否かを判定する。この際、各スイッチ・センサについて、前回のポート入力処理で入力情報記憶領域に保存された値と、今回のポート入力処理で入力情報記憶領域に保存された値と、に基づいて、オン状態が発生しているか否かを判定する。
「オン状態」とは、検出信号が入力されていない状態(ローレベル)から、検出信号が入力されている状態(ハイレベル)に変化した状態をいう。
そして、各スイッチ・センサについて、オン状態が発生していると判定した場合には、当該スイッチ・センサに対応するオン状態記憶領域に「1」が設定される。一方、各スイッチ・センサについて、オン状態が発生していないと判定した場合には、当該スイッチ・センサに対応するオン状態記憶領域に「0」が設定される。
以下の説明では、各スイッチ・センサに対応するオン状態記憶領域に記憶されている値を、当該スイッチ・センサの「スイッチビットデータ」とする。
特に、入力ポート1には、発射可能条件検出部422から入力されるハンドル検出信号に対応する受信記憶領域が設けられている。そして、ポート入力処理では、入力ポート1のハンドル検出信号に対応する受信記憶領域に設定されている情報が取得され、取得された情報が、ハンドル検出信号に対応する入力情報記憶領域に保存(記憶)される。
【0166】
ステップS4-5では、遊技機状態フラグ取得処理を実行し、ステップS4-6に移行する。遊技機状態フラグ取得処理では、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグを取得する。
ステップS4-6では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS4-7に移行し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS4-9に移行する。
ここで、ステップS4-5で取得した遊技機状態フラグに基づいて、遊技可能状態が生起されているか否かを判定する。この際、取得した遊技機状態フラグが、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
【0167】
ステップS4-7では、異常状態が生起(設定)されているか否かを判定し、異常状態が生起されていないと判定した場合(No)には、ステップS4-8に移行し、異常状態が生起されていると判定した場合(Yes)には、ステップS4-19に移行する。
ここで、ステップS4-5で取得した遊技機状態フラグに基づいて、異常状態が生起されているか否かを判定する。この際、取得した遊技機状態フラグが、設定異常状態、RAM異常状態、及び、バックアップ異常状態のうち、いずれかに対応する値である場合、異常状態が生起されていると判定する。取得した遊技機状態フラグが、設定異常状態、RAM異常状態、及び、バックアップ異常状態のうち、いずれかに対応する値でない場合、異常状態が生起されていないと判定する。
【0168】
ステップS4-8では、設定関連処理を実行し、ステップS4-19に移行する。設定関連処理については、後述する。
ステップS4-9では、タイマ更新処理を実行し、ステップS4-10に移行する。タイマ更新処理では、各種タイマを更新する。
具体的に、タイマ更新処理では、各種タイマカウンタ(特別遊技タイマ、普通遊技タイマ、セキュリティタイマ等)の値を更新する。
ステップS4-10では、初期値乱数更新処理を実行し、ステップS4-11に移行する。ステップS4-10の初期値乱数更新処理は、ステップS2-2の初期値乱数更新処理と同一の処理となっている。
具体的に、初期値乱数更新処理では、初期値乱数を発生させるためのループカウンタの値を更新する。
ステップS4-11では、当り図柄乱数更新処理を実行し、ステップS4-12に移行する。当り図柄乱数更新処理では、ソフト乱数のうち、当り図柄乱数を発生させるためのループカウンタの値を更新する。
ステップS4-12では、スイッチ管理処理を実行し、ステップS4-13に移行する。スイッチ管理処理では、各スイッチ101,102,104の状態(オン状態の検出の有無)に応じた処理(各種乱数の取得等)を実行する。スイッチ管理処理については、後述する。
【0169】
ステップS4-13では、特別遊技管理処理を実行し、ステップS4-14に移行する。特別遊技管理処理では、特図表示装置の動作及び特別電動役物53aの動作を管理する。特別遊技管理処理については、後述する。
ステップS4-14では、普通遊技管理処理を実行し、ステップS4-15に移行する。普通遊技管理処理では、普図表示装置の動作及び普通電動役物52aの動作を管理する。普通遊技管理処理については、後述する。
【0170】
ステップS4-15では、状態管理処理を実行し、ステップS4-16に移行する。状態管理処理では、各種エラー(異常状態)の発生・解除を監視する。そして、各種エラーの発生・解除の検出時に、各種の設定(サブコマンドの設定等)を実行する。
また、状態管理処理では、ハンドル検出信号に対応する入力情報記憶領域に保存されている値(前回のタイマ割込み処理で保存された値、及び、今回のタイマ割込み処理で保存された値)に基づいて、ハンドル検出信号が入力されていない状態から入力されている状態に変化したか否かを判定する。そして、ハンドル検出信号が入力されていない状態から入力されている状態に変化したと判定した場合、発射可能状態の発生を指定する遊技状況指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
さらに、状態管理処理では、ハンドル検出信号に対応する入力情報記憶領域に保存されている値(前回のタイマ割込み処理で保存された値、及び、今回のタイマ割込み処理で保存された値)に基づいて、ハンドル検出信号が入力されている状態から入力されていない状態に変化したか否かを判定する。そして、ハンドル検出信号が入力されている状態から入力されていない状態に変化したと判定した場合、発射可能状態の解除を指定する遊技状況指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS4-16では、入賞口スイッチ処理を実行し、ステップS4-17に移行する。入賞口スイッチ処理では、各スイッチ101~103,105,106の状態(オン状態の検出の有無)に応じた処理(各種カウンタの更新等)を実行する。
【0171】
ステップS4-17では、払出制御管理処理を実行し、ステップS4-18に移行する。払出制御管理処理では、ステップS4-16で設定された賞球制御カウンタの値に基づいて、払出コマンドを生成し、生成した払出コマンドを送信する。
本実施形態では、賞球制御カウンタとして、大入賞口53に入球した球技球の数が格納される賞球制御カウンタ1と、右他入賞口54に入球した球技球の数が格納される賞球制御カウンタ2と、左上・左中・左下他入賞口55~57に入球した球技球の数が格納される賞球制御カウンタ3と、第1始動口51に入球した球技球の数が格納される賞球制御カウンタ4と、第2始動口52に入球した球技球の数が格納される賞球制御カウンタ5と、が設定されている。
そして、払出制御管理処理では、まず、賞球制御カウンタ1の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ1の値が「1」以上であると判定した場合には、所定数(本実施形態では、15[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、払出制御基板400は、遊技球払出装置440による当該賞球の払い出しが完了すると、当該払い出しの完了を指定する主コマンドを、主制御基板200に対して送信する。そして、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ1の値から「1」が減算される。
【0172】
次に、賞球制御カウンタ2の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ2の値が「1」以上であると判定した場合には、所定数(本実施形態では、10[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ2の値から「1」が減算される。
次に、賞球制御カウンタ3の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ3の値が「1」以上であると判定した場合には、所定数(本実施形態では、10[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ3の値から「1」が減算される。
【0173】
次に、賞球制御カウンタ4の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ4の値が「1」以上であると判定した場合には、所定数(本実施形態では、3[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ4の値から「1」が減算される。
次に、賞球制御カウンタ5の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ5の値が「1」以上であると判定した場合には、所定数(本実施形態では、1[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ5の値から「1」が減算される。
【0174】
ステップS4-18では、発射位置指定管理処理を実行し、ステップS4-19に移行する。発射位置指定管理処理では、発射位置の指定に関する処理を実行する。
具体的に、発射位置指定管理処理では、左側経路への遊技球の打ち出しを指定する状態から右側経路への遊技球の打ち出しを指定する状態への変更時(大当り遊技状態の開始時等)に、RAM230の発射位置指定フラグ領域に「1」を設定するとともに、右側経路への遊技球の打ち出しを指定するサブコマンドを、RAM230のサブコマンド出力要求バッファに記憶する。これによって、右側経路への遊技球の打ち出しを指定するサブコマンドが、演出制御基板300に対して送信される。
一方、右側経路への遊技球の打ち出しを指定する状態から左側経路への遊技球の打ち出しを指定する状態への変更時(時短制御の終了時等)に、RAM230の発射位置指定フラグ領域に「0」を設定する。
【0175】
ステップS4-19では、外部情報管理処理を実行し、ステップS4-20に移行する。外部情報管理処理では、ホールコンピュータ(または、データ表示装置)に対して出力する外部情報(外部信号)を設定する。
本実施形態では、パチンコ機1から外部装置(ホールコンピュータ、データ表示装置等の電子機器)に対して出力される外部情報として、図柄確定回数情報、始動口情報、大当り情報、セキュリティ情報、アウト口払出数情報、エラー発生情報等が規定されている。
「図柄確定回数情報」は、特別図柄抽選(特別図柄の変動表示及び停止表示)の実行回数に関する外部情報となっている。CPU210は、特別図柄の停止表示の実行回数が所定回数に達するごとに、図柄確定回数情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「始動口情報」は、始動口51,52への遊技球の入球に関する外部情報となっている。CPU210は、始動口スイッチ101,102から入力される検出信号のオン状態が検出されるごとに、始動口情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「大当り情報」は、大当り遊技状態の生起に関する外部情報となっている。主制御基板200は、大当り遊技状態が生起されるごとに、大当り情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「アウト口払出情報」は、排出路から排出された遊技球数(または、アウト口58から排出された遊技球数)に関する外部情報となっている。CPU210は、外部情報用アウト球数カウンタの値が所定値に達するごとに、アウト口払出数情報に対応する外部信号を、ホールコンピュータに対して出力する。
「セキュリティ情報」は、設定変更状態の生起中、設定確認状態の生起中、又は、各種のエラー(異常)の発生中であることを示す外部情報となっている。CPU210は、セキュリティタイマの値が「1」以上である場合に、セキュリティ情報に対応する外部信号を、ホールコンピュータに対して出力する。
【0176】
外部情報管理処理では、外部情報用確定回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用確定回数カウンタの値が所定値に達していると判定した場合には、図柄確定回数情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用確定回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、図柄確定回数情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、外部情報用始動口入球回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用始動口入球回数カウンタの値が所定値に達していると判定した場合には、始動口情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用始動口入球回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、始動口情報(外部信号)が、ホールコンピュータに対して出力される。
【0177】
また、外部情報管理処理では、外部情報用大当り回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用大当り回数カウンタの値が所定値に達していると判定した場合には、大当り情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用大当り回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、大当り情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、外部情報用アウト球数カウンタの値が所定値(本実施形態では、10[球])に達しているか否かを判定する。そして、外部情報用アウト球数カウンタの値が所定値に達していると判定した場合には、アウト口払出情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用アウト球数カウンタの値から所定値(本実施形態では、10[球])を減算する。これによって、アウト口払出情報(外部信号)が、ホールコンピュータに対して出力される。
【0178】
また、外部情報管理処理では、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)が、遊技可能状態に対応する値であるか否かを判定する。
そして、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値でないと判定(設定変更状態、設定確認状態、設定異常状態、RAM異常状態、又は、バックアップ異常状態に対応する値であると判定)した場合、セキュリティ情報を、RAM230のポート出力要求バッファに記憶する。これによって、セキュリティ情報(外部信号)が、ホールコンピュータに対して出力される。
さらに、外部情報管理処理では、セキュリティタイマの値が「1」以上であるか否かを判定する。そして、セキュリティタイマの値が「1」以上であると判定した場合には、セキュリティ情報を、RAM230のポート出力要求バッファに記憶する。これによって、セキュリティ情報(外部信号)が、ホールコンピュータに対して出力される。
【0179】
ステップS4-20では、LED表示設定処理を実行し、ステップS4-21に移行する。LED表示設定処理では、メイン表示装置60又は性能表示装置206に対して出力する表示データを設定する。
RAM230には、コモン0出力要求バッファ(8ビット)と、コモン1出力要求バッファ(8ビット)と、コモン2出力要求バッファ(8ビット)と、コモン3出力要求バッファ(8ビット)と、が設けられている。
LED表示設定処理では、まず、コモン2出力要求バッファをクリア(初期化)するとともに、コモン3出力要求バッファをクリア(初期化)する。具体的に、コモン2出力要求バッファの各ビット値に「0」を設定するとともに、コモン3出力要求バッファの各ビット値に「0」を設定する。
【0180】
次に、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグを取得する。
そして、取得した遊技機状態フラグが遊技可能状態に対応する値である場合、後述する通常時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが設定変更状態に対応する値である場合、後述する設定変更時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが設定確認状態に対応する値である場合、後述する設定確認時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応する値である場合、後述する異常時表示データ設定処理を実行する。
【0181】
通常時表示データ設定処理では、まず、特図1表示図柄カウンタの値を取得して、取得した特図1表示図柄カウンタの値に対応する表示データ(8ビット)を、コモン0出力要求バッファに設定する。
これによって、メイン表示装置60を構成する発光素子のうち、LED1~LED8により、第1特別図柄が表示される。
次に、特図2表示図柄カウンタの値を取得して、取得した特図2表示図柄カウンタの値に対応する表示データ(8ビット)を、コモン1出力要求バッファに設定する。
これによって、メイン表示装置60を構成する発光素子のうち、LED9~LED16により、第2特別図柄が表示される。
次に、普図表示図柄カウンタの値を取得して、取得した普図表示図柄カウンタの値に対応する表示データを、出力データaとして設定する。
次に、RAM230の特別遊技フェーズフラグ領域に設定されている値が、「大入賞口開放前状態」、「大入賞口開放制御状態」、「大入賞口閉鎖有効状態」及び「大入賞口開放終了ウェイト状態」のうち、いずれかの特別遊技フェーズを指定する値であるか否かを判定する。
そして、特別遊技フェーズフラグ領域に設定されている値が、「大入賞口開放前状態」、「大入賞口開放制御状態」、「大入賞口閉鎖有効状態」及び「大入賞口開放終了ウェイト状態」のうち、いずれかの特別遊技フェーズを指定する値であると判定した場合、RAM230の特別図柄判定フラグ領域に設定されている値(大当り図柄の種別に対応する値)を取得して、取得した値に対応する表示データを、出力データbとして設定する。
一方、特別遊技フェーズフラグ領域に設定されている値が、「大入賞口開放前状態」、「大入賞口開放制御状態」、「大入賞口閉鎖有効状態」及び「大入賞口開放終了ウェイト状態」のうち、いずれかの特別遊技フェーズを指定する値でないと判定した場合、出力データbについては、設定されない。
次に、RAM230の発射位置指定フラグ領域に設定されている値を取得して、取得した値に対応する表示データを、出力データcとして設定する。
次に、出力データa~出力データcを論理和した表示データ(8ビット)を、コモン2出力要求バッファに設定する。
これによって、メイン表示装置60を構成する発光素子のうち、LED17,18により、普通図柄が表示され、LED19~LED23により、大当り遊技状態中に実行されるラウンド遊技の回数(大当り遊技状態の種別)が表示され、LED24により、遊技球を打ち出すべき経路(左側経路又は右側経路)が表示される。
次に、特図1保留数カウンタの値を取得して、取得した値に対応する表示データを、出力データdとして設定する。
次に、特図2保留数カウンタの値を取得して、取得した値に対応する表示データを、出力データeとして設定する。
次に、普図保留数カウンタの値を取得して、取得した値に対応する表示データを、出力データfとして設定する。
次に、電源復帰時であるか否かを判定する。
そして、電源復帰時であると判定した場合、特図高確率状態フラグ領域に設定されている値を取得して、取得した値に対応する表示データを、出力データgとして設定する。
一方、電源復帰時でないと判定した場合、出力データgについては、設定されない。
次に、RAM230の時短制御フラグ領域に設定されている値を取得して、取得した値に対応する表示データを、出力データhとして設定する。
次に、出力データd~出力データhを論理和した表示データ(8ビット)を、コモン3出力要求バッファに設定する。
これによって、メイン表示装置60を構成する発光素子のうち、LED25,26により、特図1保留数が表示され、LED27,28により、特図2保留数が表示され、LED29,30により、普図保留数が表示され、LED31により、電源復帰時の遊技状態(特図高確率状態の生起中又は特図低確率状態の生起中)が表示され、LED32により、現在の遊技状態(時短制御の実行中又は停止中)が表示される。
【0182】
設定変更時表示データ設定処理では、設定変更状態の生起中であることを示す情報を、コモン0出力要求バッファ~コモン2出力要求バッファに設定するとともに、RAM230の設定値領域に記憶されている設定値を示す情報を、コモン3出力要求バッファに設定する。
具体的に、「r」の表示データ(8ビット)を、コモン0出力要求バッファに設定し、「n.」の表示データ(8ビット)を、コモン1出力要求バッファに設定し、「-」の表示データ(8ビット)を、コモン2出力要求バッファに設定し、RAM230の設定値領域に記憶されている設定値に対応する表示データを、コモン3出力要求バッファに設定する。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「r」の文字が表示され、LED41~LED48により、「n.」の文字が表示され、LED49~LED56により、「-」の文字が表示され、LED57~LED64により、設定値を示す数字が表示される。
【0183】
設定確認時表示データ設定処理では、設定確認状態の生起中であることを示す情報を、コモン0出力要求バッファ~コモン2出力要求バッファに設定するとともに、RAM230の設定値領域に記憶されている設定値を示す情報を、コモン3出力要求バッファに設定する。
具体的に、「r」の表示データ(8ビット)を、コモン0出力要求バッファに設定し、「n.」の表示データ(8ビット)を、コモン1出力要求バッファに設定し、RAM230の設定値領域に記憶されている設定値に対応する表示データを、コモン3出力要求バッファに設定する。なお、コモン2出力要求バッファについては、表示データが設定されない(クリア値のままとなる)。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「r」の文字が表示され、LED41~LED48により、「n.」の文字が表示され、LED57~LED64により、設定値を示す数字が表示される。なお、LED49~LED56については、消灯される。
【0184】
異常時表示データ設定処理では、異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)の生起中であることを示す情報を、コモン0出力要求バッファ~コモン2出力要求バッファに設定するとともに、発生した異常に対応するエラーコードを、コモン3出力要求バッファに設定する。
具体的に、「E」の表示データ(8ビット)を、コモン0出力要求バッファに設定し、「r.」の表示データ(8ビット)を、コモン1出力要求バッファに設定し、発生した異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応する表示データ(エラーコード)を、コモン3出力要求バッファに設定する。なお、コモン2出力要求バッファについては、表示データが設定されない(クリア値のままとなる)。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「E」の文字が表示され、LED41~LED48により、「r.」の文字が表示され、LED57~LED64により、エラーコードを示す数字が表示される。なお、LED49~LED56については、消灯される。
【0185】
ステップS4-21では、ソレノイドデータ設定処理を実行し、ステップS4-22に移行する。ソレノイドデータ設定処理では、各ソレノイド64,65に対して出力する制御データ(駆動データ)を、RAM230のポート出力要求バッファに記憶(設定)する。
ステップS4-22では、ポート出力処理を実行し、ステップS4-23に移行する。ポート出力処理では、ホールコンピュータ、各ソレノイド64,65等に対して、各種信号を出力する。
具体的には、ポート出力処理では、ポート出力要求バッファに設定されている各種情報(外部信号、制御信号等)を、出力ポート205(出力ポート2,出力ポート3)に対して出力する。これによって、ポート出力要求バッファに設定されている外部信号が、ホールコンピュータに対して出力される。また、ポート出力要求バッファに設定されている駆動信号に基づいて、各ソレノイド64,65が駆動制御される。
ステップS4-23では、割込み禁止処理を実行して、ステップS4-24に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
【0186】
ステップS4-24では、試験信号出力処理を実行し、ステップS4-25に移行する。試験信号出力処理では、試験用の情報(試験信号)を設定する。
試験信号出力処理は、遊技機規則で定める試験に関する処理を実行するためのプログラムに基づく処理となっている。すなわち、試験信号出力処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。試験信号管は、タイマ割込み処理の実行中に呼び出される。
具体的に、試験信号出力処理では、内部状態(大当り遊技状態、時短制御の実行状態、特別図柄抽選の確率状態等)を示す試験用の情報(試験信号)を、RAM230のポート出力要求バッファに記憶する。
ステップS4-25では、性能表示装置制御処理を実行し、ステップS4-26に移行する。性能表示装置制御処理については、後述する。
ステップS4-26では、レジスタ復帰処理を実行し、一連の処理を終了して元の処理に復帰する。レジスタ復帰処理では、ステップS4-1で退避しておいたレジスタの値を復帰させる。そして、レジスタ復帰処理の終了後、メインループ処理(スタックポインタで指示されるプログラムアドレス)に復帰する。
【0187】
(ダイナミックポート出力処理)
次に、ステップS4-3のダイナミックポート出力処理を説明する。
図9は、ダイナミックポート出力処理を示すフローチャートである。
ダイナミックポート出力処理は、ステップS4-3において実行されると、図9に示すように、まず、ステップS29-1に移行する。
ステップS29-1では、出力データクリア処理を実行し、ステップS29-2に移行する。出力データクリア処理では、Aレジスタをクリア(初期化)する。具体的に、Aレジスタの各ビット値として、「0」を設定する。
ステップS29-2では、メイン表示装置データ出力処理を実行し、ステップS29-3に移行する。メイン表示装置データ出力処理では、Aレジスタの値(ステップS29-1でクリアされた値)を、出力ポート0に出力する。これによって、出力ポート0がクリア(初期化)され、メイン表示装置60の点灯を制御するための各データ信号(「SEGDATA0」~「SEGDATA7」)がローレベルとなる。
【0188】
ステップS29-3では、性能表示装置データ出力処理を実行し、ステップS29-4に移行する。性能表示装置データ出力処理では、Aレジスタの値(ステップS29-1でクリアされた値)を、出力ポート4に出力する。これによって、出力ポート4がクリア(初期化)され、性能表示装置206の点灯を制御するための各データ信号(「7SEGDATA0」~「7SEGDATA7」)がローレベルとなる。
ステップS29-4では、コモン選択処理を実行し、ステップS29-5に移行する。コモン選択処理では、コモンカウンタの値を更新する。
具体的に、コモン選択処理では、コモンカウンタの値が上限値(本実施形態では、「3」)に達しているか否かを判定する。そして、コモンカウンタの値が上限値に達していないと判定した場合、コモンカウンタの値に、「1」を加算する。一方、コモンカウンタの値が上限値に達していると判定した場合、コモンカウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。
【0189】
ステップS29-5では、コモン出力処理を実行し、ステップS29-6に移行する。
コモン出力処理では、コモンカウンタの値に対応する出力データを、出力ポート1に出力する。
すなわち、コモンカウンタの値=「0」である場合、「COM0」をハイレベルとし、「COM1」,「COM2」,「COM3」をローレベルとする出力データを、出力ポート1に出力する。これによって、「COM0」~「COM3」のうち、「COM0」が選択(出力)される。
一方、コモンカウンタの値=「1」である場合、「COM1」をハイレベルとし、「COM0」,「COM2」,「COM3」をローレベルとする出力データを、出力ポート1に出力する。これによって、「COM0」~「COM3」のうち、「COM1」が選択(出力)される。
一方、コモンカウンタの値=「2」である場合、「COM2」をハイレベルとし、「COM0」,「COM1」,「COM3」をローレベルとする出力データを、出力ポート1に出力する。これによって、「COM0」~「COM3」のうち、「COM2」が選択(出力)される。
一方、コモンカウンタの値=「3」である場合、「COM3」をハイレベルとし、「COM0」,「COM1」,「COM2」をローレベルとする出力データを、出力ポート1に出力する。これによって、「COM0」~「COM3」のうち、「COM3」が選択(出力)される。
【0190】
また、コモン出力処理では、発射許可信号の出力データを、出力ポート1に出力する。
すなわち、まず、遊技可能状態が生起(設定)されているか否かを判定する。
そして、遊技可能状態が生起されていると判定した場合、発射許可信号をハイレベルとする出力データを、出力ポート1に出力する。これによって、発射許可信号が出力される。
一方、遊技可能状態が生起されていないと判定した場合、発射許可信号をローレベルとする出力データを、出力ポート1に出力する。これによって、発射許可信号の出力が停止される。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
なお、本実施形態では、コモン出力処理において、遊技可能状態が生起されていると判定された場合にのみ、発射許可信号の出力が設定される構成となっている。これによって、遊技可能状態の生起中(設定中)にのみ、発射許可信号が出力される。しかしながら、コモン出力処理において、遊技機状態に関わらず、発射許可信号の出力が設定される構成としても構わない。かかる構成によって、主制御基板200に電源が投入されている期間中、常時、発射許可信号が出力される構成とすることができる。
【0191】
ステップS29-6では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS29-7に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS29-11に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
【0192】
ステップS29-7では、メイン表示装置データ取得処理を実行し、ステップS29-8に移行する。メイン表示装置データ取得処理では、メイン表示装置60用の表示データを取得し、取得した表示データを、Aレジスタに設定する。
具体的に、メイン表示装置データ取得処理では、まず、コモンカウンタの値を確認する。そして、RAM230のコモン0出力要求バッファ~コモン3出力要求バッファのうち、確認したコモンカウンタの値に対応する出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
この際、コモンカウンタの値=「0」である場合、コモン0出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「1」である場合、コモン1出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「2」である場合、コモン2出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「3」である場合、コモン3出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
ここで、メイン表示装置データ取得処理で取得される表示データは、前回のタイマ割込み処理に含まれるステップS4-20のLED表示設定処理(具体的には、通常時表示データ設定処理)において、コモン0出力要求バッファ~コモン3出力要求バッファに設定された表示データとなる。
【0193】
ステップS29-8では、メイン表示装置データ出力処理を実行し、ステップS29-9に移行する。メイン表示装置データ出力処理では、ステップS29-7でAレジスタに設定した表示データを、出力ポート0に出力する。
これによって、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づくデータ信号(「SEGDATA0」~「SEGDATA7」)が、ソースドライバ250aに対して出力される。
すなわち、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づいて、メイン表示装置60の表示が制御される。
【0194】
ステップS29-9では、割込み禁止処理を実行して、ステップS29-10に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
ステップS29-10では、性能表示装置出力処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。性能表示装置出力処理については、後述する。
【0195】
ステップS29-11では、性能表示装置データ取得処理を実行し、ステップS29-12に移行する。性能表示装置データ取得処理では、性能表示装置206用の表示データを取得し、取得した表示データを、Aレジスタに設定する。
具体的に、性能表示装置データ取得処理では、まず、コモンカウンタの値を確認する。そして、RAM230のコモン0出力要求バッファ~コモン3出力要求バッファのうち、確認したコモンカウンタの値に対応する出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
この際、コモンカウンタの値=「0」である場合、コモン0出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「1」である場合、コモン1出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「2」である場合、コモン2出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「3」である場合、コモン3出力要求バッファに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
ここで、性能表示装置データ取得処理で取得される表示データは、前回のタイマ割込み処理に含まれるステップS4-20のLED表示設定処理(具体的には、設定変更時表示データ設定処理、設定確認時表示データ設定処理、又は、異常時表示データ設定処理)において、コモン0出力要求バッファ~コモン3出力要求バッファに設定された表示データとなる。
【0196】
ステップS29-12では、性能表示装置データ出力処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。性能表示装置データ出力処理では、ステップS29-11でAレジスタに設定した表示データを、出力ポート4に出力する。
これによって、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づくデータ信号(「7SEGDATA0」~「7SEGDATA7」)が、ソースドライバ250bに対して出力される。
すなわち、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づいて、性能表示装置206の表示が制御される。
【0197】
(性能表示装置出力処理)
次に、ステップS29-10の性能表示装置出力処理を説明する。
図10は、性能表示装置出力処理を示すフローチャートである。
性能表示装置出力処理は、性能表示装置206の表示を制御するためのプログラムに基づく処理となっている。すなわち、性能表示装置出力処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。性能表示装置出力処理は、ダイナミックポート出力処理の実行中に呼び出される。
性能表示装置出力処理は、ステップS29-10において呼び出されると、図10に示すように、まず、ステップS30-1に移行する。
ステップS30-1では、レジスタ退避処理を実行し、ステップS30-2に移行する。レジスタ退避処理では、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのレジスタの値を、RAMの退避領域に退避させる。また、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのスタックポインタの値を、RAMの退避領域に退避させる。
【0198】
ステップS30-2では、性能表示装置データ取得処理を実行し、ステップS30-3に移行する。性能表示装置データ取得処理では、性能表示装置206用の表示データを取得し、取得した表示データを、Aレジスタに設定する。
具体的に、性能表示装置データ取得処理では、まず、コモンカウンタの値を確認する。そして、RAM230の識別セグ出力要求バッファ及び比率セグ出力要求バッファのうち、確認したコモンカウンタの値に対応する領域に設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
この際、コモンカウンタの値=「0」である場合、識別セグ出力要求バッファの上位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「1」である場合、識別セグ出力要求バッファの下位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「2」である場合、比率セグ出力要求バッファの上位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「3」である場合、比率セグ出力要求バッファの下位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
ここで、性能表示装置データ取得処理で取得される表示データは、前回のタイマ割込み処理に含まれるステップS4-25の性能表示装置制御処理において、識別セグ出力要求バッファ又は比率セグ出力要求バッファに設定された表示データとなる。
【0199】
ステップS30-3では、性能表示装置データ出力処理を実行し、ステップS30-4に移行する。性能表示装置データ出力処理では、ステップS30-2でAレジスタに設定した表示データを、出力ポート4に出力する。
これによって、出力要求バッファ(識別セグ出力要求バッファ又は比率セグ出力要求バッファ)に設定された表示データに基づくデータ信号(「7SEGDATA0」~「7SEGDATA7」)が、ソースドライバ250bに対して出力される。
すなわち、出力要求バッファ(識別セグ出力要求バッファ又は比率セグ出力要求バッファ)に設定された表示データに基づいて、性能表示装置206の表示が制御される。
【0200】
ステップS30-4では、レジスタ復帰処理を実行し、ステップS30-5に移行する。レジスタ復帰処理では、ステップS30-1で退避しておいたレジスタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたレジスタの値)と、ステップS30-1で退避しておいたスタックポインタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたスタックポインタの値)と、を復帰させる。
ステップS30-5では、割込み許可処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、電源遮断時退避処理、タイマ割込み処理等の実行が許可される。
【0201】
(設定関連処理)
次に、ステップS4-8の設定関連処理を説明する。
図11は、設定関連処理を示すフローチャートである。
設定関連処理は、ステップS4-8において実行されると、図11に示すように、まず、ステップS37-1に移行する。
ステップS37-1では、設定変更状態が生起(設定)されているか否かを判定し、設定変更状態が生起されていると判定した場合(Yes)には、ステップS37-2に移行し、設定変更状態が生起されていないと判定した場合(No)には、ステップS37-8に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、設定変更状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、設定変更状態に対応する値である場合、設定変更状態が生起されていると判定し、設定変更状態に対応する値でない場合、設定変更状態が生起されていないと判定する。
【0202】
ステップS37-2では、設定値取得処理を実行し、ステップS30-3に移行する。設定値取得処理では、RAM230の設定値領域に記憶されている設定値を取得(ロード)して、取得した設定値をレジスタに記憶する。
ステップS37-3では、RAMクリアスイッチ207が押下操作されたか否かを判定し、RAMクリアスイッチ207が押下操作されたと判定した場合(Yes)には、ステップS37-4に移行し、RAMクリアスイッチ207が押下操作されていないと判定した場合(No)には、ステップS37-5に移行する。
ここで、RAMクリアスイッチ207について、オン状態が発生している場合、RAMクリアスイッチ207が押下操作されたと判定し、オン状態が発生していない場合、RAMクリアスイッチ207が押下操作されていないと判定する。
ステップS37-4では、設定値更新処理を実行し、ステップS37-5に移行する。設定値更新処理では、レジスタに記憶されている設定値に、「1」を加算する。
【0203】
ステップS37-5では、レジスタに記憶されている設定値が所定の設定比較値(本実施形態では、「6」)未満であるか否かを判定し、レジスタに記憶されている設定値が所定の設定比較値未満でない(設定値が所定の設定比較値以上である)と判定した場合(No)には、ステップS37-6に移行し、レジスタに記憶されている設定値が所定の設定比較値未満であると判定した場合(Yes)には、ステップS37-7に移行する。
ステップS37-6では、設定値初期化処理を実行し、ステップS37-7に移行する。設定値初期化処理では、レジスタに記憶されている設定値として、所定の初期値(本実施形態では、「0」)を上書きする。
ステップS37-7では、設定値保存処理を実行し、ステップS37-8に移行する。設定値保存処理では、レジスタに記憶されている設定値を、RAM230の設定値領域に保存(セーブ)する。
【0204】
ステップS37-8では、設定キースイッチ208がON状態とされているか否かを判定し、設定キースイッチ208がON状態とされていない(OFF状態とされている)と判定した場合(No)には、ステップS37-9に移行し、設定キースイッチ208がON状態とされていると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS4-19)に移行する。
ここで、設定キースイッチ208について、オン状態が発生している場合、設定キースイッチ208がON状態とされていると判定し、オン状態が発生していない場合、設定キースイッチ208がON状態とされてないと判定する。
ステップS37-9では、サブコマンド設定処理を実行し、ステップS37-10に移行する。サブコマンド設定処理では、設定関連終了指定コマンド(サブコマンド)を、RAM230のサブコマンド出力要求バッファに記憶する。
【0205】
ステップS37-10では、サブコマンド群設定処理を実行し、ステップS37-11に移行する。サブコマンド群設定処理では、サブコマンド群を、RAM230のサブコマンド出力要求バッファに記憶する。
ここで、サブコマンド群には、遊技状態(遊技状態オフセット値)を指定するサブコマンド、発射位置を指定するサブコマンド、第1特別図柄の停止図柄を指定するサブコマンド、第2特別図柄の停止図柄を指定するサブコマンド、特図1保留数を指定するサブコマンド、特図2保留数を指定するサブコマンド、時短カウンタの値を指定するサブコマンド、RAM230の設定値領域に記憶されている設定値を指定する設定値指定コマンド等が含まれる。
ステップS37-11では、ラムセット処理を実行し、一連の処理を終了して次の処理(ステップS4-19)に移行する。ラムセット処理では、遊技機状態として、遊技可能状態を設定する。
具体的には、RAM230の遊技機状態フラグ領域の値(遊技機状態フラグ)として、遊技可能状態に対応する値を保存(セーブ)する。
【0206】
(スイッチ管理処理)
次に、ステップS4-12のスイッチ管理処理を説明する。
図12は、スイッチ管理処理を示すフローチャートである。
スイッチ管理処理は、ステップS4-12において実行されると、図12に示すように、まず、ステップS5-1に移行する。
ステップS5-1では、ゲートスイッチ104のオン状態を検出したか否かを判定し、ゲートスイッチ104のオン状態を検出したと判定した場合(Yes)には、ステップS5-2に移行し、ゲートスイッチ104のオン状態を検出していないと判定した場合(No)には、ステップS5-3に移行する。
ステップS5-2では、普図始動球検出処理を実行し、ステップS5-3に移行する。普図始動球検出処理については、後述する。
また、普図始動球検出処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値に、「1」を加算する。
本実施形態では、大当り遊技状態及び時短制御の実行中のうち、一方の遊技状態が生起されている期間が、右打ち期間となる。一方、通常遊技状態(大当り遊技状態の生起中でなく、かつ、時短制御の停止中である遊技状態)が生起されている期間が、左打ち期間となる。
【0207】
ステップS5-3では、特図1始動口スイッチ101のオン状態を検出したか否かを判定し、特図1始動口スイッチ101のオン状態を検出したと判定した場合(Yes)には、ステップS5-4に移行し、特図1始動口スイッチ101のオン状態を検出していないと判定した場合(No)には、ステップS5-5に移行する。
ステップS5-4では、特図1始動球検出処理を実行し、ステップS5-5に移行する。特図1始動球検出処理については、後述する。
ステップS5-5では、特図2始動口スイッチ102のオン状態を検出したか否かを判定し、特図2始動口スイッチ102のオン状態を検出したと判定した場合(Yes)には、ステップS5-6に移行し、特図2始動口スイッチ102のオン状態を検出していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-13)に移行する。
ステップS5-6では、特図2始動球検出処理を実行し、一連の処理を終了して次の処理(ステップS4-13)に移行する。特図2始動球検出処理については、後述する。
【0208】
(普図始動球検出処理)
次に、ステップS5-2の普図始動球検出処理を説明する。
図13は、普図始動球検出処理を示すフローチャートである。
普図始動球検出処理は、ステップS5-2において実行されると、図13に示すように、まず、ステップS6-1に移行する。
ステップS6-1では、普図乱数取得処理を実行し、ステップS6-2に移行する。普図乱数取得処理では、当り乱数(乱数値)を、普通図柄抽選に対応するループカウンタから取得(ロード)する。
ステップS6-2では、普図保留数カウンタの値が上限値(本実施形態では、「1」)であるか否かを判定し、普図保留数カウンタの値が上限値でないと判定した場合(No)には、ステップS6-3に移行し、普図保留数カウンタの値が上限値であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS5-3)に移行する。
ステップS6-3では、普図保留数カウンタ更新処理を実行し、ステップS6-4に移行する。普図保留数カウンタ更新処理では、普図保留数カウンタに設定されている値に「1」を加算した値を、新たに普図保留数カウンタに設定する。
【0209】
ステップS6-4では、普図乱数保存処理を実行し、一連の処理を終了して次の処理(ステップS5-3)に移行する。普図乱数保存処理では、ステップS6-1で取得した当り乱数を、普図遊技情報として、RAM230の普図遊技情報記憶領域に記憶する。
RAM230は、遊技の実行中の普図遊技情報が記憶される記憶エリア0と、普図当落判定が保留されている普図遊技情報が記憶される普図遊技情報記憶領域と、を含んで構成されている。
普図遊技情報記憶領域は、普図遊技情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。
各記憶エリアの優先順位は、優先順位が高いものから順に、記憶エリア1、記憶エリア2、記憶エリア3、記憶エリア4(上位→下位)となるように規定されている。そして、普図遊技情報記憶領域に記憶されている普図遊技情報は、優先順位が上位の記憶エリアに記憶されているものから順に、普図当落判定が実行される。
普図乱数保存処理では、ステップS6-1で取得した当り乱数を、普図遊技情報として、普図遊技情報記憶領域に記憶する。この際、普図遊技情報を、空いている記憶エリアのうち、優先順位が最も上位の記憶エリアに記憶する。
すなわち、現在の普図保留数カウンタの値=「1」である場合、ステップS6-1で取得した当り乱数を、記憶エリア1に記憶する。現在の普図保留数カウンタの値=「2」である場合、ステップS6-1で取得した当り乱数を、記憶エリア2に記憶する。現在の普図保留数カウンタの値=「3」である場合、ステップS6-1で取得した当り乱数を、記憶エリア3に記憶する。現在の普図保留数カウンタの値=「4」である場合、ステップS6-1で取得した当り乱数を、記憶エリア4に記憶する。
【0210】
(特図1始動球検出処理)
次に、ステップS5-4の特図1始動球検出処理を説明する。
図14は、特図1始動球検出処理を示すフローチャートである。
図1始動球検出処理は、ステップS5-4において実行されると、図14に示すように、まず、ステップS7-1に移行する。
ステップS7-1では、特別図柄識別値設定処理を実行し、ステップS7-2に移行する。特別図柄識別値設定処理では、RAM230の特別図柄識別値設定領域において、第1特別図柄抽選に対応する特別図柄識別値を設定する。また、外部情報用始動口入球回数カウンタの値に「1」を加算する。
また、特別図柄識別値設定処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値をリセットする(右打ちエラーカウンタの値として「0」を設定する)。
ステップS7-2では、保留数カウンタアドレス設定処理を実行し、ステップS7-3に移行する。保留数カウンタアドレス設定処理では、RAM230の保留数カウンタアドレス設定領域において、特図1保留数カウンタのアドレスを設定する。
ステップS7-3では、特別図柄乱数取得処理を実行し、一連の処理を終了して次の処理(ステップS5-5)に移行する。特別図柄乱数取得処理については、後述する。
【0211】
(特図2始動球検出処理)
次に、ステップS5-6の特図2始動球検出処理を説明する。
図15は、特図2始動球検出処理を示すフローチャートである。
図2始動球検出処理は、ステップS5-6において実行されると、図15に示すように、まず、ステップS8-1に移行する。
ステップS8-1では、特別図柄識別値設定処理を実行し、ステップS8-2に移行する。特別図柄識別値設定処理では、RAM230の特別図柄識別値設定領域において、第2特別図柄抽選に対応する特別図柄識別値を設定する。また、外部情報用始動口入球回数カウンタの値に「1」を加算する。
また、特別図柄識別値設定処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値に、「1」を加算する。
ステップS8-2では、保留数カウンタアドレス設定処理を実行し、ステップS8-3に移行する。保留数カウンタアドレス設定処理では、RAM230の保留数カウンタアドレス領域において、特図2保留数カウンタのアドレスを設定する。
ステップS8-3では、特別図柄乱数取得処理を実行し、一連の処理を終了して次の処理(ステップS4-13)に移行する。特別図柄乱数取得処理については、後述する。
【0212】
(特別図柄乱数取得処理)
次に、ステップS7-3,S8-3の特別図柄乱数取得処理を説明する。
図16は、特別図柄乱数取得処理を示すフローチャートである。
特別図柄乱数取得処理は、ステップS7-3,S8-3において実行されると、図16に示すように、まず、ステップS9-1に移行する。
ステップS9-1では、特別図柄識別値取得処理を実行し、ステップS9-2に移行する。特別図柄識別値取得処理では、RAM230の特別図柄識別値設定領域に設定されている特別図柄識別値を取得(ロード)する。
ステップS9-2では、特図保留数取得処理を実行し、ステップS9-3に移行する。特図保留数取得処理では、保留数カウンタアドレス領域に設定されているアドレスにより特定される特図保留数カウンタ(特図1保留数カウンタ又は特図2保留数カウンタ)の値(特図1保留数又は特図2保留数)を取得(ロード)する。
【0213】
ステップS9-3では、特図乱数取得処理を実行し、ステップS9-4に移行する。特図乱数取得処理では、大当り乱数、当り図柄乱数、リーチグループ乱数、リーチモード乱数、変動パターン乱数等の各種乱数(乱数値)を、各抽選に対応するループカウンタから取得(ロード)する。この際、ステップS9-1で取得した特別図柄識別値に基づいて、対応するループカウンタを選択する。
ステップS9-4では、ステップS9-2で取得した特図保留数(特図1保留数又は特図2保留数)が上限値(本実施形態では、「4」)であるか否かを判定し、特図保留数が上限値でないと判定した場合(No)には、ステップS9-5に移行し、特図保留数が上限値であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS4-13又はS5-5)に移行する。
ステップS9-5では、特図保留数カウンタ更新処理を実行し、ステップS9-6に移行する。特図保留数カウンタ更新処理では、保留数カウンタアドレス領域に設定されているアドレスにより特定される特図保留数カウンタ(特図1保留数カウンタ又は特図2保留数カウンタ)に設定されている値に「1」を加算した値を、新たに当該特図保留数カウンタに設定する。
【0214】
ステップS9-6では、特図乱数保存処理を実行し、ステップS9-7に移行する。特図乱数保存処理では、ステップS9-3で取得した各種乱数を、特図遊技情報(特図1遊技情報又は特図2遊技情報)として、RAM230の特図遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に記憶する。
RAM230は、遊技の実行中の特図遊技情報が記憶される記憶エリア0と、始動判定が保留されている特図1遊技情報が記憶される特図1遊技情報記憶領域と、始動判定が保留されている特図2遊技情報記憶領域と、を含んで構成されている。
図1遊技情報記憶領域は、特図1遊技情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。
各記憶エリアの優先順位は、優先順位が高いものから順に、記憶エリア1、記憶エリア2、記憶エリア3、記憶エリア4(上位→下位)となるように規定されている。そして、特図2遊技情報記憶領域に記憶されている特図2遊技情報は、優先順位が上位の記憶エリアに記憶されているものから順に、始動判定が実行される。
図2遊技情報記憶領域は、特図2遊技情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。
各記憶エリアの優先順位は、優先順位が高いものから順に、記憶エリア1、記憶エリア2、記憶エリア3、記憶エリア4(上位→下位)となるように規定されている。そして、特図2遊技情報記憶領域に記憶されている特図2遊技情報は、優先順位が上位の記憶エリアに記憶されているものから順に、始動判定が実行される。
【0215】
特図乱数保存処理では、ステップS9-1で取得した特別図柄識別値が、第1特別図柄抽選に対応する値である場合、ステップS9-3で取得した各種乱数を、特図1遊技情報として、特図1遊技情報記憶領域に記憶する。この際、ステップS9-3で取得した各種乱数を、空いている記憶エリアのうち、優先順位が最も上位の記憶エリアに記憶する。
すなわち、現在の特図1保留数カウンタの値=「1」である場合、ステップS9-3で取得した各種乱数を、記憶エリア1に記憶する。現在の特図1保留数カウンタの値=「2」である場合、ステップS9-3で取得した各種乱数を、記憶エリア2に記憶する。現在の特図1保留数カウンタの値=「3」である場合、ステップS9-3で取得した各種乱数を、記憶エリア3に記憶する。現在の特図1保留数カウンタの値=「4」である場合、ステップS9-3で取得した各種乱数を、記憶エリア4に記憶する。
一方、ステップS9-1で取得した特別図柄識別値が、第2特別図柄抽選に対応する値である場合、ステップS9-3で取得した各種乱数を、特図2遊技情報として、特図2遊技情報記憶領域に記憶する。この際、ステップS9-3で取得した各種乱数を、空いている記憶エリアのうち、優先順位が最も上位の記憶エリアに記憶する。
すなわち、現在の特図2保留数カウンタの値=「1」である場合、ステップS9-3で取得した各種乱数を、記憶エリア1に記憶する。現在の特図2保留数カウンタの値=「2」である場合、ステップS9-3で取得した各種乱数を、記憶エリア2に記憶する。現在の特図2保留数カウンタの値=「3」である場合、ステップS9-3で取得した各種乱数を、記憶エリア3に記憶する。現在の特図2保留数カウンタの値=「4」である場合、ステップS9-3で取得した各種乱数を、記憶エリア4に記憶する。
【0216】
ステップS9-7では、保留数指定コマンド設定処理を実行し、ステップS9-8に移行する。保留数指定コマンド設定処理では、特図保留数(特図1保留数又は特図2保留数)が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。この際、ステップS9-1で取得した特別図柄識別値が、第1特別図柄抽選に対応する値である場合には、特図1保留数が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶し、第2特別図柄抽選に対応する値である場合には、特図2保留数が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
【0217】
ステップS9-8では、事前判定処理を実行し、一連の処理を終了して次の処理(ステップS4-13又はS5-5)に移行する。事前判定処理では、ステップS9-6で特図遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に保存(記憶)した遊技情報(特図1遊技情報又は特図2遊技情報)(以下、「事前判定対象遊技情報」とする)に基づいて、各種抽選結果を事前判定する。
本実施形態では、全ての遊技情報(特図1遊技情報及び特図2遊技情報)について、各種抽選結果の事前判定が実行される。
なお、大当り遊技状態の生起中に取得(記憶)された遊技情報については、各種抽選結果の事前判定が実行されない構成としても構わない。また、時短制御の停止中に取得(記憶)された特図2遊技情報については、各種抽選結果の事前判定が実行されず、時短制御の実行中に取得(記憶)された特図1遊技情報については、各種抽選結果の事前判定が実行されない構成としても構わない。
【0218】
事前判定処理では、まず、事前特図当り判定処理を実行する。
事前特図当り判定処理では、特別図柄抽選の結果(「大当り」又は「はずれ」)を判定(事前特図当り判定)する。
ROM220には、特別図柄抽選の大当り値が登録された特図当落抽選テーブルが格納されている。また、特図当落抽選テーブルとして、設定値(「1」~「6」)と、遊技状態(「特図低確率状態」又は「特図高確率状態」)と、の組み合わせのそれぞれに対応する特図当落抽選テーブルと、が格納されている。
具体的には、特図当落抽選テーブルとして、「設定値1低確時特図当落抽選テーブル」と、「設定値1高確時特図当落抽選テーブル」と、「設定値2低確時特図当落抽選テーブル」と、「設定値2高確時特図当落抽選テーブル」と、「設定値3低確時特図当落抽選テーブル」と、「設定値3高確時特図当落抽選テーブル」と、「設定値4低確時特図当落抽選テーブル」と、「設定値4高確時特図当落抽選テーブル」と、「設定値5低確時特図当落抽選テーブル」と、「設定値5高確時特図当落抽選テーブル」と、「設定値6低確時特図当落抽選テーブル」と、「設定値6高確時特図当落抽選テーブル」と、が格納されている。
【0219】
「設定値0低確時特図当落抽選テーブル」は、設定値=「0」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値0低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「204」が、大当り値として登録されている。
「設定値0高確時特図当落抽選テーブル」は、設定値=「0」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値0高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2039」が、大当り値として登録されている。
「設定値1低確時特図当落抽選テーブル」は、設定値=「1」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値1低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「209」が、大当り値として登録されている。
「設定値1高確時特図当落抽選テーブル」は、設定値=「1」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値1高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2089」が、大当り値として登録されている。
「設定値2低確時特図当落抽選テーブル」は、設定値=「2」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値2低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「214」が、大当り値として登録されている。
「設定値2高確時特図当落抽選テーブル」は、設定値=「2」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値2高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2139」が、大当り値として登録されている。
【0220】
「設定値3低確時特図当落抽選テーブル」は、設定値=「3」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値3低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「219」が、大当り値として登録されている。
「設定値3高確時特図当落抽選テーブル」は、設定値=「3」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値3高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2189」が、大当り値として登録されている。
「設定値4低確時特図当落抽選テーブル」は、設定値=「4」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値4低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「224」が、大当り値として登録されている。
「設定値4高確時特図当落抽選テーブル」は、設定値=「4」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値4高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2239」が、大当り値として登録されている。
「設定値5低確時特図当落抽選テーブル」は、設定値=「5」、かつ、特図高確率状態フラグ領域に「0」が設定されている(「特図低確率状態」の生起中である)場合に、選択される。そして、「設定値5低確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「229」が、大当り値として登録されている。
「設定値5高確時特図当落抽選テーブル」は、設定値=「5」、かつ、特図高確率状態フラグ領域に「1」が設定されている(「特図高確率状態」の生起中である)場合に、選択される。そして、「設定値5高確時特図当落抽選テーブル」では、大当り乱数「0」~「65535」のうち、「0」~「2289」が、大当り値として登録されている。
【0221】
事前特図当り判定処理では、設定値領域に設定されている値(設定値)と、現在の遊技状態(「特図高確率状態」又は「特図低確率状態」)と、を確認して、この確認結果に対応する特図当落抽選テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる大当り乱数と、読み出した特図当落抽選テーブルと、に基づいて、特別図柄抽選の結果(「大当り」又は「はずれ」)を判定(事前特図当り判定)する。
具体的には、事前判定対象遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致している場合には、特別図柄抽選の結果を「大当り」(当選)と判定する。
一方、事前判定対象遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致していない場合(はずれ値と一致している場合)には、特別図柄抽選の結果を「はずれ」(落選)と判定する。
【0222】
事前判定処理では、次に、事前特図図柄判定処理を実行する。事前特図図柄判定処理では、特別図柄の停止図柄の種別を判定(事前特図図柄判定)する。
事前特図図柄判定処理では、事前特図当り判定により「大当り」(当選)と判定された場合には、「大当り図柄」の種別を判定(事前特図図柄判定)する。
ROM220には、当り図柄乱数と、「大当り図柄」の種別と、の対応が登録された大当り図柄抽選テーブルが格納されている。また、大当り図柄抽選テーブルとして、第1特別図柄抽選に対応する第1大当り図柄抽選テーブルと、第2特別図柄抽選に対応する第2大当り図柄抽選テーブルと、が格納されている。
そして、第1大当り図柄抽選テーブルには、「大当り図柄」の種別として、「大当り1図柄」及び「大当り2図柄」が登録されている。一方、第2大当り図柄抽選テーブルには、「大当り図柄」の種別として、「大当り3図柄」~「大当り6図柄」が登録されている。
そして、事前判定対象遊技情報が特図1遊技情報である場合には、第1大当り図柄抽選テーブルを読み出す。そして、事前判定対象遊技情報に含まれる当り図柄乱数と、読み出した第1大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、事前判定対象遊技情報が特図2遊技情報である場合には、第2大当り図柄抽選テーブルを読み出す。そして、事前判定対象遊技情報に含まれる当り図柄乱数と、読み出した第2大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、事前特図図柄判定処理では、事前特図当り判定により「はずれ」(落選)と判定された場合には、停止図柄の種別として、「はずれ図柄」を判定(事前特図図柄判定)する。
【0223】
事前判定処理では、次に、第1先読み指定コマンド設定処理を実行する。
第1先読み指定コマンド設定処理では、事前特図図柄判定により判定された停止図柄の種別を指定する第1先読み指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
【0224】
事前判定処理では、次に、事前特図変動態様判定処理を実行する。
この際、事前特図当り判定により「はずれ」(落選)と判定された場合には、後述する落選時事前特図変動態判定処理を実行する。一方、事前特図当り判定により「大当り」(当選)と判定された場合には、後述する当選時事前特図変動態様判定処理を実行する。
【0225】
落選時事前特図変動態様判定処理では、まず、事前乱数種別判定を実行する。
事前乱数種別判定では、事前判定対象遊技情報に含まれるリーチグループ乱数が、「不定値」及び「固定値」のうち、いずれの値であるかを判定する。
ここで、事前判定対象遊技情報に含まれるリーチグループ乱数が「不定値」である場合には、遊技情報(特図1遊技情報又は特図2遊技情報)の取得(記憶)時に、変動モード番号(一次変動モード番号)及び変動パターン番号が判定されない。
一方、事前判定対象遊技情報に含まれるリーチグループ乱数が「固定値」である場合には、遊技情報(特図1遊技情報又は特図2遊技情報)の取得(記憶)時(ステップS9-8の実行時)に、変動モード番号(一次変動モード番号)及び変動パターン番号が判定される。
本実施形態では、リーチグループ乱数の値は、「0」~「10006」の範囲内で更新される。そして、「0」~「10006」のうち、「0」~「8499」が「不定値」とされ、「8500」~「10006」が「固定値」とされている。
したがって、事前乱数種別判定では、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「8500」未満である場合には、「不定値」と判定し、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「8500」以上である場合には、「固定値」と判定する。
【0226】
落選時事前特図変動態様判定処理では、事前乱数種別判定により「固定値」と判定された場合、さらに、事前リーチグループ判定と、落選時事前変動モード判定と、落選時事前変動パターン判定と、を実行する。
なお、落選時事前特図変動態様判定処理では、事前乱数種別判定により「不定値」と判定された場合、事前リーチグループ判定と、落選時事前変動モード判定と、落選時変動パターン判定と、が実行されない。
【0227】
事前リーチグループ判定では、リーチグループ番号(リーチグループの種別)を判定する。
ROM220には、リーチグループ乱数と、リーチグループ番号(リーチグループの種別)と、の対応が登録されたリーチグループ判定テーブルが格納されている。
また、リーチグループ判定テーブルとして、保留種別(特図1遊技情報又は特図2遊技情報)と、保留数(「0」~「3」)と、遊技状態(低確状態中、時短状態中、確変状態中、又は、潜確状態中)と、の組み合わせのそれぞれに対応するリーチグループ判定テーブルが格納されている。
ここで、本実施形態では、遊技状態として、低確状態と、時短状態と、確変状態と、潜確状態と、が規定されている。
「低確状態」は、特図低確率状態の生起中、かつ、時短制御の停止中の遊技状態となっている。「時短状態」は、特図低確率状態の生起中、かつ、時短制御の実行中の遊技状態となっている。「確変状態」は、特図高確率状態の生起中、かつ、時短制御の実行中の遊技状態となっている。「潜確状態」は、特図高確率状態の生起中、かつ、時短制御の停止中の遊技状態となっている。
事前リーチグループ判定では、まず、保留種別(事前判定対象遊技情報の種別(特図1遊技情報又は特図2遊技情報)と、保留数と、遊技状態と、を確認して、この確認結果に対応するリーチグループ判定テーブルを読み出す。この際、保留数については、「0」と仮定される。
そして、事前判定対象遊技情報に含まれるリーチグループ乱数と、読み出したリーチグループ判定テーブルと、に基づいて、リーチグループ番号を判定する。
【0228】
落選時事前変動モード判定では、変動モード番号(変動モードの種別)を判定する。
ROM220には、リーチモード乱数と、変動モード番号(変動モードの種別)と、の対応が登録された変動モード判定テーブルが格納されている。
また、変動モード判定テーブルとして、落選時変動モード判定テーブルと、当選時変動モード判定テーブルと、が格納されている。
さらに、落選時変動モード判定テーブルとして、各リーチグループ番号(リーチグループの各種別)に対応する落選時変動モード判定テーブルが格納されている。
特に、各変動モード判定テーブルでは、各リーチモード乱数に対して、変動モード番号(変動モードの種別)と、変動パターン判定テーブル(変動パターン判定テーブルを指定する情報)と、が対応付けられている。これによって、各変動モード判定テーブルに基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、が同時に選択される。
落選時事前変動モード判定では、まず、事前リーチグループ判定により判定されたリーチグループ番号を確認して、この確認結果に対応する落選時変動モード判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれるリーチモード乱数と、読み出した落選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
【0229】
落選時事前変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
ROM220には、変動パターン乱数と、変動パターン番号(変動パターンの種別)と、の対応が登録された変動パターン判定テーブルが格納されている。
また、変動パターン判定テーブルとして、内容が互いに異なる複数の変動パターン判定テーブルが格納されている。
落選時事前変動パターン判定では、まず、落選時事前変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
【0230】
一方、当選時事前特図変動態様判定処理では、まず、当選時事前変動モード判定を実行する。
当選時事前変動モード判定では、変動モード番号(変動モードの種別)を判定する。
当選時事前変動モード判定では、まず、当選時変動モード判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれるリーチモード乱数と、読み出した当選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
【0231】
当選時事前特図変動態様判定処理では、次に、当選時事前変動パターン判定を実行する。
当選時事前変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
当選時事前変動パターン判定では、まず、当選時事前変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
【0232】
事前判定処理では、次に、第2,第3先読み指定コマンド設定処理を実行する。
第2,第3先読み指定コマンド設定処理では、事前特図当り判定により「はずれ」(落選)と判定され、かつ、事前乱数種別判定により「固定値」と判定された場合には、落選時事前変動モード判定により判定された変動モード番号を指定する第2先読み指定コマンドと、落選時事前変動パターン判定により判定された変動パターン番号を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
一方、事前特図当り判定により「はずれ」(落選)と判定され、かつ、事前乱数種別判定により「不定値」と判定された場合には、「不定値」を指定する第2先読み指定コマンドと、「不定値」を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
一方、事前特図当り判定により「大当り」(当選)と判定された場合には、当選時事前変動モード判定により判定された変動モード番号を指定する第2先読み指定コマンドと、当選時事前変動パターン判定により判定された変動パターン番号を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
【0233】
以上により、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「固定値」である場合には、変動モード番号及び変動パターン番号が判定され、判定された変動モード番号及び変動パターン番号を指定する第2,第3先読み指定コマンドが、演出制御基板300に対して送信される。
一方、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「不定値」である場合には、変動モード番号及び変動パターン番号が判定されず、「不定値」を指定する第2,第3先読み指定コマンドが、演出制御基板300に対して送信される。
【0234】
(特別遊技管理処理)
次に、ステップS4-13の特別遊技管理処理を説明する。
図17は、特別遊技管理処理を示すフローチャートである。
本実施形態では、特別図柄抽選に基づいて実行される遊技(以下、「特別遊技」とする)の局面・段階(以下、「特別遊技フェーズ」とする)として、「特図変動待ち状態」、「特図変動中状態」、「特図停止図柄表示状態」、「大入賞口開放前状態」、「大入賞口開放制御状態」、「大入賞口閉鎖有効状態」及び「大入賞口開放終了ウェイト状態」の7つが規定されている。
そして、RAM230の特別遊技フェーズフラグ領域において、7つの特別遊技フェーズのうち一のものに対応する値(特別遊技フェーズフラグ)が設定される。
また、ROM220には、特別遊技を制御(実行)するための特別遊技制御モジュール(プログラム)として、各特別遊技フェーズに対応する特別遊技制御モジュールが格納されている。
そして、特別遊技管理処理では、RAM230の特別遊技フェーズフラグ領域に設定されている値に対応する特別遊技制御モジュールが選択され、選択された特別遊技制御モジュールに基づく処理が実行される。
【0235】
具体的には、特別遊技管理処理は、ステップS4-13において実行されると、図17に示すように、まず、ステップS10-1に移行する。
ステップS10-1では、特別遊技フェーズ取得処理を実行し、ステップS10-2に移行する。特別遊技フェーズ取得処理では、RAM230の特別遊技フェーズフラグ領域に設定されている値(特別遊技フェーズ)を取得(ロード)する。
ステップS10-2では、特別遊技制御モジュール取得処理を実行し、ステップS10-3に移行する。特別遊技制御モジュール取得処理では、ステップS10-1で取得した値(特別遊技フェーズ)に対応する特別遊技制御モジュールを読み出す。
ステップS10-3では、特別遊技制御モジュール実行処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技制御モジュール実行処理では、ステップS10-2で読み出した特別遊技制御モジュールに基づく処理を開始する。
具体的には、ステップS10-1で取得した値が、「特図変動待ち状態」に対応する値である場合には、後述する特図変動待ち処理が開始され、「特図変動中状態」に対応する値である場合には、後述する特図変動中処理が開始され、「特図停止図柄表示状態」に対応する値である場合には、後述する特図停止中処理が開始され、「大入賞口開放前状態」に対応する値である場合には、後述する大入賞口開放前処理が開始され、「大入賞口開放制御状態」に対応する値である場合には、後述する大入賞口開放制御処理が開始され、「大入賞口閉鎖有効状態」に対応する値である場合には、後述する大入賞口閉鎖有効処理が開始され、「大入賞口開放終了ウェイト状態」に対応する値である場合には、後述する大入賞口開放終了ウェイト処理が開始される。
【0236】
(特図変動待ち処理)
次に、ステップS10-3で実行される特図変動待ち処理を説明する。
図18は、特図変動待ち処理を示すフローチャートである。
特図変動待ち処理は、ステップS10-3において実行されると、図18に示すように、まず、ステップS11-1に移行する。
ステップS11-1では、特図2保留数カウンタの値が「1」以上であるか否かを判定し、特図2保留数カウンタの値が「1」以上でないと判定した場合(No)には、ステップS11-2に移行し、特図2保留数カウンタの値が「1」以上であると判定した場合(Yes)には、ステップS11-3に移行する。
ステップS11-2では、特図1保留数カウンタの値が「1」以上であるか否かを判定し、特図1保留数カウンタの値が「1」以上であると判定した場合(Yes)には、ステップS11-3に移行し、特図1保留数カウンタの値が「1」以上でないと判定した場合(No)には、ステップS11-16に移行する。
【0237】
ステップS11-3では、特図保留数更新処理を実行し、ステップS11-4に移行する。特図保留数更新処理では、特図保留数(特図1保留数又は特図2保留数)を更新する。
具体的に、特図保留数更新処理では、まず、特図2保留数カウンタの値が「1」以上であるか否かを判定する。
そして、特図2保留数カウンタの値が「1」以上である場合、特別図柄判別フラグ設定値として、特図2遊技情報に基づく遊技を指定する値(本実施形態では、「1」)を設定するとともに、特図2保留数カウンタの値から、「1」を減算する。
一方、特図2保留数カウンタの値が「1」以上でない(特図2保留数カウンタの値が「0」である)と判定した場合、特別図柄判別フラグ設定値として、特図1遊技情報に基づく遊技を指定する値(本実施形態では、「0」)を設定するとともに、特図1保留数カウンタの値から、「1」を減算する。
ステップS11-4では、保留数指定コマンド設定処理を実行し、ステップS11-5に移行する。保留数指定コマンド設定処理では、特図保留数が「1」減少したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
具体的に、特別図柄判別フラグ設定値=「1」である場合、特図2保留数が「1」減少したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
一方、特別図柄判別フラグ設定値=「0」である場合、特図1保留数が「1」減少したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
【0238】
ステップS11-5では、特別図柄記憶エリアシフト処理を実行し、ステップS11-6に移行する。特別図柄記憶エリアシフト処理では、遊技情報が記憶される記憶エリアをシフトする。
具体的に、特別図柄判別フラグ設定値=「1」である場合、特図2遊技情報記憶領域の記憶エリア1の記憶内容を、記憶エリア0にシフト(移動)する。次に、特図2遊技情報記憶領域の記憶エリア2の記憶内容を、特図2遊技情報記憶領域の記憶エリア1にシフトする。次に、特図2遊技情報記憶領域の記憶エリア3の記憶内容を、特図2遊技情報記憶領域の記憶エリア2にシフトする。次に、特図2遊技情報記憶領域の記憶エリア4の記憶内容を、特図2遊技情報記憶領域の記憶エリア3にシフトする。次に、特図2遊技情報記憶領域の記憶エリア4の記憶内容をクリア(初期化)する。
一方、特別図柄判別フラグ設定値=「0」である場合、特図1遊技情報記憶領域の記憶エリア1の記憶内容を、記憶エリア0にシフト(移動)する。次に、特図1遊技情報記憶領域の記憶エリア2の記憶内容を、特図1遊技情報記憶領域の記憶エリア1にシフトする。次に、特図1遊技情報記憶領域の記憶エリア3の記憶内容を、特図1遊技情報記憶領域の記憶エリア2にシフトする。次に、特図1遊技情報記憶領域の記憶エリア4の記憶内容を、特図1遊技情報記憶領域の記憶エリア3にシフトする。次に、特図1遊技情報記憶領域の記憶エリア4の記憶内容をクリア(初期化)する。
【0239】
ステップS11-6では、設定異常判定処理を実行し、ステップS11-7に移行する。設定異常判定処理では、設定異常の発生を監視する。
具体的に、設定異常判定処理では、まず、RAM230の設定値領域に記憶されている設定値を取得する。次に、取得した設定値が所定の設定比較値(本実施形態では、「6」)未満であるか否かを判定する。
そして、取得した設定値が所定の設定比較値未満でない(所定の設定比較値以上である)と判定した場合、RAM230の遊技機状態フラグ領域の値(遊技機状態フラグ)として、設定異常状態に対応する値を保存(セーブ)する。また、設定異常の発生を指定するサブコマンドを、サブコマンド出力要求バッファに格納する。そして、次の処理(ステップS11-7)に移行する。
一方、取得した設定値が所定の設定比較値未満であると判定した場合、次の処理(ステップS11-7)に移行する。
【0240】
ステップS11-7では、特図当り判定処理を実行し、ステップS11-8に移行する。特図当り判定処理では、特別図柄抽選の結果を判定(特図当り判定)する。
特図当り判定処理では、まず、RAM230の設定値領域に記憶されている設定値と、現在の遊技状態(「特図高確率状態」又は「特図低確率状態」)と、を確認して、この確認結果に対応する特図当落抽選テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数と、読み出した特図当落抽選テーブルと、に基づいて、特別図柄抽選の結果が「大当り」であるか否かを判定(特図当り判定)する。
具体的には、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致している場合には、特別図柄抽選の結果を「大当り」(当選)と判定する。
一方、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致していない場合(はずれ値と一致している場合)には、特別図柄抽選の結果を「はずれ」(落選)と判定する。
【0241】
ステップS11-8では、特図図柄判定処理を実行し、ステップS11-9に移行する。特図図柄判定処理では、特別図柄の停止図柄の種別を判定(特図図柄判定)する。
具体的に、特図図柄判定処理では、まず、特図当り判定により「大当り」(当選)と判定されたか否かを判定する。
そして、特図当り判定により「大当り」(当選)と判定された場合、「大当り図柄」の種別を判定する。
これには、特別図柄判別フラグ設定値=「0」である場合、第1大当り図柄抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出した第1大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、特別図柄判別フラグ設定値=「1」である場合、第2大当り図柄抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出した第2大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、特図当り判定により「はずれ」(落選)と判定された場合、停止図柄の種別として、「はずれ図柄」を判定する。
次に、判定した停止図柄の種別に対応する値を、RAM230の特別図柄判定フラグ領域に設定する。
ステップS11-9では、図柄種別指定コマンド設定処理を実行し、ステップS11-10に移行する。図柄種別指定コマンド設定処理では、ステップS11-8で判定した停止図柄の種別を指定する図柄種別指定コマンドを、サブコマンド出力要求バッファに格納する。
【0242】
ステップS11-10では、特図停止図柄番号判定処理を実行し、ステップS11-11に移行する。特図停止図柄番号判定処理では、特別図柄の停止図柄番号を判定する。
ROM220には、当り図柄乱数の値と、停止図柄番号(セグデータ)と、の対応が登録された停止図柄番号抽選テーブルが格納されている。
また、停止図柄番号抽選テーブルとして、特別図柄抽選(第1特別図柄抽選又は第2特別図柄抽選)に当選した場合に対応する当選時停止図柄番号抽選テーブルと、特別図柄抽選(第1特別図柄抽選又は第2特別図柄抽選)に落選した場合に対応する落選時停止図柄番号抽選テーブルと、が格納されている。
さらに、当選時停止図柄番号抽選テーブルとして、第1特別図柄抽選に対応する当選時停止図柄番号抽選テーブルと、第2特別図柄抽選に対応する当選時停止図柄番号抽選テーブルと、が格納されている。
特図停止図柄番号判定処理では、まず、特図当り判定の結果を確認する。
そして、特図当り判定により「大当り」(当選)と判定された場合、特別図柄判別フラグ設定値を確認して、この確認結果に対応する当選時停止図柄番号抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出された当選時停止図柄番号抽選テーブルと、に基づいて、停止図柄番号を判定する。
一方、特図当り判定により「はずれ」(落選)と判定された場合、落選時停止図柄番号抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出された落選時停止図柄番号抽選テーブルと、に基づいて、停止図柄番号を判定する。
次に、判定した停止図柄番号を、RAM230の停止図柄番号記憶領域に記憶する。
【0243】
ステップS11-11では、特図変動パターン判定処理を実行し、ステップS11-12に移行する。特図変動パターン判定処理では、特別図柄の変動態様(変動モードの種別及び変動パターンの種別)を判定する。
具体的に、特図変動パターン判定処理では、まず、特図当り判定の結果を確認する。そして、特図当り判定の結果が「はずれ」(落選)である場合には、後述する落選時特図変動態判定処理を実行する。一方、特図当り判定の結果が「大当り」(当選)である場合には、後述する当選時特図変動態様判定処理を実行する。
【0244】
落選時特図変動態様判定処理では、まず、リーチグループ判定を実行する。
リーチグループ判定では、リーチグループ番号(リーチグループの種別)を判定する。
リーチグループ判定では、まず、保留種別(記憶エリア0に記憶されている遊技情報の種別(特図1遊技情報又は特図2遊技情報)と、保留数と、遊技状態と、を確認して、この確認結果に対応するリーチグループ判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチグループ乱数と、読み出したリーチグループ判定テーブルと、に基づいて、リーチグループの種別を判定する。
落選時特図変動態様判定処理では、次に、落選時変動モード判定を実行する。
落選時変動モード判定では、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
落選時変動モード判定では、まず、リーチグループ判定により判定されたリーチグループ番号を確認して、この確認結果に対応する落選時変動モード判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチモード乱数と、読み出した落選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
落選時特図変動態様判定処理では、次に、落選時変動パターン判定を実行する。
落選時変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
落選時変動パターン判定では、まず、落選時変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
【0245】
一方、当選時特図変動態様判定処理では、まず、当選時変動モード判定を実行する。
当選時変動モード判定では、変動モード番号(変動モードの種別)と、変動パターンテーブルと、を判定する。
当選時変動モード判定では、まず、当選時変動モード判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチモード乱数と、読み出した当選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
当選時特図変動態様判定処理では、次に、当選時変動パターン判定を実行する。
当選時変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
当選時変動パターン判定では、まず、当選時変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
【0246】
ステップS11-12では、変動パターンコマンド設定処理を実行し、ステップS11-13に移行する。変動パターンコマンド設定処理では、ステップS11-11で判定した変動モード番号(変動モードの種別)を指定する変動モード指定コマンドを、サブコマンド出力要求バッファに格納する。
また、ステップS11-11で判定した変動パターン番号(変動パターンの種別)を指定する変動パターン指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS11-13では、特図変動時間設定処理を実行し、ステップS11-14に移行する。特図変動時間設定処理では、特別図柄の変動表示の時間を設定する。
具体的に、特図変動時間設定処理では、まず、ステップS11-11で判定した変動モード番号に対応する変動時間(以下、「変動時間1」とする)を取得する。
また、ステップS11-11で判定した変動パターン番号に対応する変動時間(以下、「変動時間2」とする)を取得する。
そして、取得した変動時間1と変動時間2との合計時間を算出し、算出した合計時間を、特別遊技タイマに設定する。
【0247】
ステップS11-14では、特図変動表示データ設定処理を実行し、ステップS11-15に移行する。特図変動表示データ設定処理では、特図表示装置の変動表示を制御するためのデータを設定する。
具体的に、特図変動表示データ設定処理では、まず、特図表示タイマに、所定表示時間を設定する。
次に、特別図柄判別フラグ設定値=「0」である場合、特図1表示図柄カウンタに、所定の初期値を設定する。これによって、特図1表示装置を構成する所定数のセグメントのうち、特図1表示図柄カウンタの値に対応するセグメントが点灯制御される。
一方、特別図柄判別フラグ設定値=「1」である場合には、特図2表示図柄カウンタに、所定の初期値を設定する。これによって、特図2表示装置を構成する所定数のセグメントのうち、特図2表示図柄カウンタの値に対応するセグメントが点灯制御される。
【0248】
ステップS11-15では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図変動中状態」に対応する値を設定する。
ステップS11-16では、客待ち設定処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。客待ち設定処理では、デモ指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
【0249】
(特図変動中処理)
次に、ステップS10-3で実行される特図変動中処理を説明する。
図19は、特図変動中処理を示すフローチャートである。
特図変動中処理は、ステップS10-3において実行されると、図19に示すように、まず、ステップS12-1に移行する。
ステップS12-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」でないと判定した場合(No)には、ステップS12-2に移行し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS12-4に移行する。
ステップS12-2では、特図表示タイマの値が「0」であるか否かを判定し、特図表示タイマの値が「0」であると判定した場合(Yes)には、ステップS12-3に移行し、特図表示タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS12-3では、特図変動表示データ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特図変動表示データ更新処理では、特図表示装置の変動表示を制御するためのデータを更新する。
具体的に、特図変動表示データ更新処理では、第1特別図柄の変動表示の実行中である場合、特図1表示図柄カウンタの値に「1」を加算する。一方、第2特別図柄の変動表示の実行中である場合、特図2表示図柄カウンタの値に「1」を加算する。
【0250】
ステップS12-4では、特図停止表示データ設定処理を実行し、ステップS12-5に移行する。特図停止表示データ設定処理では、特図表示装置の停止表示を制御するためのデータを設定する。
具体的に、特図停止表示データ設定処理では、RAM230の停止図柄番号記憶領域に記憶されている停止図柄番号を取得する。
次に、特別図柄判別フラグ設定値=「0」である場合、特図1表示図柄カウンタの値として、取得した停止図柄番号(停止図柄番号に対応するデータ)を設定する。これによって、特図1表示装置を構成する所定数のセグメントのうち、設定された停止図柄番号に対応するセグメントが点灯制御(停止表示)される。
一方、特別図柄判別フラグ設定値=「1」である場合、特図2表示図柄カウンタの値として、取得した停止図柄番号(停止図柄番号に対応するデータ)を設定する。これによって、特図2表示装置を構成する所定数のセグメントのうち、設定された停止図柄番号に対応するセグメントが点灯制御(停止表示)される。
【0251】
ステップS12-5では、特図停止時間設定処理を実行し、ステップS12-6に移行する。特図停止時間設定処理では、所定の停止時間を、特別遊技タイマに設定する。
ステップS12-6では、停止指定コマンド設定処理を実行し、ステップS12-7に移行する。停止指定コマンド設定処理では、停止指定コマンドを、サブコマンド出力要求バッファに格納する。また、外部情報用確定回数カウンタの値に、所定数(本実施形態では、1[回])を加算する。
ステップS12-7では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図停止図柄表示状態」に対応する値を設定する。
【0252】
(特図停止中処理)
次に、ステップS10-3で実行される特図停止中処理を説明する。
図20は、特図停止中処理を示すフローチャートである。
特図停止中処理は、ステップS10-3において実行されると、図20に示すように、まず、ステップS13-1に移行する。
ステップS13-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS13-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS13-2では、停止図柄の種別が「大当り図柄」であるか否かを判定し、停止図柄の種別が「大当り図柄」でないと判定した場合(No)には、ステップS13-3に移行し、停止図柄の種別が「大当り図柄」であると判定した場合(Yes)には、ステップS13-6に移行する。
ステップS13-3では、時短制御の実行中であるか否かを判定し、時短制御の実行中であると判定した場合(Yes)には、ステップS13-4に移行し、時短制御の実行中でないと判定した場合(No)には、ステップS13-5に移行する。
ここで、RAM230の時短制御フラグ領域において、「1」が設定されている場合には、時短制御の実行中であると判定し、「0」が設定されている場合には、時短制御の実行中でないと判定する。
【0253】
ステップS13-4では、時短制御管理処理を実行し、ステップS13-5に移行する。時短制御管理処理では、時短制御を終了するか否かを判定する。
具体的には、時短制御管理処理では、まず、時短カウンタの値から「1」を減算した値を、新たに時短カウンタの値として設定する。
次に、時短カウンタの値が「0」であるか否かを判定する。
そして、時短カウンタの値が「0」であると判定した場合、RAM230の時短制御フラグ領域に「0」を設定する(時短制御を停止する)。
一方、時短カウンタの値が「0」でないと判定した場合、RAM230の時短制御フラグ領域に「1」が設定されている状態を維持する(時短制御が実行されている状態を維持する)。
ステップS13-5では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図変動待ち状態」に対応する値を設定する。
ステップS13-6では、遊技状態更新処理を実行し、ステップS13-7に移行する。遊技状態更新処理では、遊技状態を更新する。
具体的に、遊技状態更新処理では、RAM230の特図高確率状態フラグ領域に「0」を設定する。また、RAM230の時短制御フラグ領域に「0」を設定する。
【0254】
ステップS13-7では、特別電役制御データ設定処理を実行し、ステップS13-8に移行する。特別電役制御データ設定処理では、特別電動役物53aを開閉制御するための制御データを設定する。
ROM220には、各種類の「大当り図柄」に対応する特別電役制御テーブルが格納されている。そして、各特別電役制御テーブルには、大入賞口閉鎖有効時間、大入賞口閉鎖時間、ラウンド遊技回数、各回のラウンド遊技に対応する開閉切替回数、各回の開閉切替に対応する制御データ(ソレノイド制御データ、制御時間データ)等が規定されている。
特別電役制御データ設定処理では、ステップS11-8で判定された「大当り図柄」の種別に対応する特別電役制御テーブルを読出し、読み出した特別電役制御テーブルを、RAM230の特別電役制御テーブル領域に設定する。
次に、特別電役連続作動回数カウンタに「0」を設定する。
【0255】
ステップS13-8では、オープニング時間設定処理を実行し、ステップS13-9に移行する。オープニング時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定のオープニング時間を、特別遊技タイマに設定する。
ステップS13-9では、オープニング指定コマンド設定処理を実行し、ステップS13-10に移行する。オープニング指定コマンド設定処理では、ステップS11-8で判定された「大当り図柄」の種別を指定するオープニング指定コマンドを、サブコマンド出力要求バッファに格納する。また、外部情報用大当り回数カウンタの値に、所定数(本実施形態では、1[回])を加算する。
ステップS13-10では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放前状態」に対応する値を設定する。
【0256】
(大入賞口開放前処理)
次に、ステップS10-3で実行される大入賞口開放前処理を説明する。
図21は、大入賞口開放前処理を示すフローチャートである。
大入賞口開放前処理は、ステップS10-3において実行されると、図21に示すように、まず、ステップS14-1に移行する。
ステップS14-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS14-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS14-2では、特別電役連続作動回数カウンタ更新処理を実行し、ステップS14-3に移行する。特別電役連続作動回数カウンタ更新処理では、特別電役連続作動回数カウンタに設定されている値に「1」を加算した値を、新たに特別電役連続作動回数カウンタに設定する。
ステップS14-3では、ラウンド開始指定コマンド設定処理を実行し、ステップS14-4に移行する。ラウンド開始指定コマンド設定処理では、ラウンド開始指定コマンドを、サブコマンド出力要求バッファに格納する。
【0257】
ステップS14-4では、特別電役開閉切替回数設定処理を実行し、ステップS14-5に移行する。特別電役開閉切替回数設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役連続作動回数カウンタの値に対応する開閉切替回数を読み出す。そして、読み出した開閉切替回数を、特別電役開閉切替回数カウンタに設定する。
次に、特別電役入賞数カウンタの値として「0」を設定する。
ステップS14-5では、特別電役開閉切替処理を実行し、ステップS14-6に移行する。特別電役開閉切替処理については、後述する。
ステップS14-6では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放制御状態」に対応する値を設定する。
【0258】
(特別電役開閉切替処理)
次に、ステップS14-5,S16-3の特別電役開閉切替処理を説明する。
図22は、特別電役開閉切替処理を示すフローチャートである。
特別電役開閉切替処理は、ステップS14-5,S16-3において実行されると、図22に示すように、まず、ステップS15-1に移行する。
ステップS15-1では、特別電役開閉切替回数カウンタの値が「0」であるか否かを判定し、特別電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS15-2に移行し、特別電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS14-6又はS16-4)に移行する。
【0259】
ステップS15-2では、特別電役制御データ設定処理を実行し、ステップS15-3に移行する。特別電役制御データ設定処理では、特別電動役物53aを開放状態又は閉鎖状態に制御するための制御データを設定する。
具体的には、特別電役制御データ設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役開閉切替回数カウンタの値に対応するソレノイド制御データを読み出す。そして、読み出したソレノイド制御データ(通電又は通電停止を指定する制御データ)を、RAM230の所定領域に設定する。これによって、設定されたソレノイドデータに基づく大入賞口ソレノイド65の制御が開始され、特別電動役物53aが開放状態又は閉鎖状態に制御される。
【0260】
ステップS15-3では、特別電役制御時間設定処理を実行し、ステップS15-4に移行する。特別電役制御時間設定処理では、ステップS15-2で設定したソレノイド制御データに基づく制御を継続する制御時間を設定する。
具体的には、特別電役制御時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役開閉切替回数カウンタの値に対応する制御時間を読み出す。そして、読み出した制御時間を、特別遊技タイマに設定する。
ステップS15-4では、特別電役開閉切替回数カウンタ更新処理を実行し、一連の処理を終了して次の処理(ステップS14-6又はS16-4)に移行する。特別電役開閉切替回数カウンタ更新処理では、特別電役開閉切替回数カウンタに設定されている値から「1」を減算した値を、新たに特別電役開閉切替回数カウンタに設定する。
【0261】
(大入賞口開放制御処理)
次に、ステップS10-3で実行される大入賞口開放制御処理を説明する。
図23は、大入賞口開放制御処理を示すフローチャートである。
大入賞口開放制御処理は、ステップS10-3において実行されると、図23に示すように、まず、ステップS16-1に移行する。
ステップS16-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS16-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、ステップS16-4に移行する。
ステップS16-2では、特別電役開閉切替回数カウンタの値が「0」であるか否かを判定し、特別電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS16-3に移行し、特別電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、ステップS16-5に移行する。
ステップS16-3では、特別電役開閉切替処理(図22参照)を実行し、ステップS16-4に移行する。
ステップS16-4では、特別電役入賞数カウンタの値が所定の上限値(本実施形態では、10[球])に達しているか否かを判定し、特別電役入賞数カウンタの値が所定の上限値に達していると判定した場合(Yes)には、ステップS16-5に移行し、特別電役入賞数カウンタの値が所定の上限値に達していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
【0262】
ステップS16-5では、大入賞口開放制御終了処理を実行し、ステップS16-6に移行する。大入賞口開放制御終了処理では、通電停止を指定するソレノイド制御データを、RAM230の所定領域に設定する。これによって、特別電動役物53aが閉鎖状態に制御される。
ステップS16-6では、大入賞口閉鎖有効時間設定処理を実行し、ステップS16-7に移行する。大入賞口閉鎖有効時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定の大入賞口閉鎖有効時間(インターバル時間)を、特別遊技タイマに設定する。
ステップS16-7では、ラウンド終了指定コマンド設定処理を実行し、ステップS16-8に移行する。ラウンド終了指定コマンド設定処理では、ラウンド終了指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS16-8では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口閉鎖有効状態」に対応する値を設定する。
【0263】
(大入賞口閉鎖有効処理)
次に、ステップS10-3で実行される大入賞口閉鎖有効処理を説明する。
図24は、大入賞口閉鎖有効処理を示すフローチャートである。
大入賞口閉鎖有効処理は、ステップS10-3において実行されると、図24に示すように、まず、ステップS17-1に移行する。
ステップS17-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS17-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
【0264】
ステップS17-2では、特別電役連続作動回数カウンタの値が規定値に達しているか否かを判定し、特別電役連続作動回数カウンタの値が規定値に達していないと判定した場合(No)には、ステップS17-3に移行し、特別電役連続作動回数カウンタの値が規定値に達していると判定した場合(Yes)には、ステップS17-5に移行する。
ここで、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、当該特別電役制御テーブルに規定されているラウンド遊技回数を規定値として取得して判定を行う。
ステップS17-3では、大入賞口閉鎖時間設定処理を実行し、ステップS17-4に移行する。大入賞口閉鎖時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定の大入賞口閉鎖時間を、特別遊技タイマに設定する。
ステップS17-4では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放前状態」に対応する値を設定する。
【0265】
ステップS17-5では、エンディング時間設定処理を実行し、ステップS17-6に移行する。エンディング時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定のエンディング時間を、特別遊技タイマに設定する。
ステップS17-6では、エンディング指定コマンド設定処理を実行し、ステップS17-7に移行する。エンディング指定コマンド設定処理では、エンディング指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS17-7では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放終了ウェイト状態」に対応する値を設定する。
【0266】
(大入賞口開放終了ウェイト処理)
次に、ステップS10-3で実行される大入賞口開放終了ウェイト処理を説明する。
図25は、大入賞口開放終了ウェイト処理を示すフローチャートである。
大入賞口開放終了ウェイト処理は、ステップS10-3において実行されると、図25に示すように、まず、ステップS18-1に移行する。
ステップS18-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS18-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
【0267】
ステップS18-2では、遊技状態設定処理を実行し、ステップS18-3に移行する。遊技状態設定処理では、遊技状態を設定する。
具体的に、遊技状態設定処理では、停止図柄(大当り図柄)の種別に応じて、RAM230の特図高確率状態フラグの値を設定する。
この際、停止図柄の種別が「大当り1図柄」又は「大当り3図柄」~「大当り5図柄」である場合には、RAM230の特図高確率状態フラグ領域に「1」を設定する。一方、停止図柄の種別が「大当り2図柄」又は「大当り6図柄」である場合には、RAM230の特図高確率状態フラグ領域に「0」を設定する。
次に、所定の時短回数を、時短カウンタに設定する。この際、停止図柄の種別が「大当り2図柄」又は「大当り6図柄」である場合には、所定の時短回数として、100[回]を設定する。一方、停止図柄の種別が「大当り1図柄」又は「大当り3図柄」~「大当り5図柄」である場合には、所定の時短回数として、10000[回]を設定する。また、RAM230の時短制御フラグ領域に「1」を設定する。
次に、RAM230の前回大当り図柄フラグ領域に、大当り図柄の種別に対応する値を設定する。
ステップS18-3では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図変動待ち状態」に対応する値を設定する。
【0268】
(普通遊技管理処理)
次に、ステップS4-14の普通遊技管理処理を説明する。
図26は、普通遊技管理処理を示すフローチャートである。
ここで、本実施形態では、普通図柄抽選に基づいて実行される遊技(以下、「普通遊技」とする)の局面・段階(以下、「普通遊技フェーズ」とする)として、「普図変動待ち状態」、「普図変動中状態」、「普図停止図柄表示状態」、「普図電動役物開放前状態」、「普図電動役物開放制御状態」、「普図電動役物閉鎖有効状態」及び「普図電動役物開放終了ウェイト状態」の7つが規定されている。
そして、RAM230の普通遊技フェーズフラグ領域において、7つの普通遊技フェーズのうち一のものに対応する値(普通遊技フェーズフラグ)が設定される。
また、ROM220には、普通遊技を制御(実行)するための普通遊技制御モジュール(プログラム)として、各普通遊技フェーズに対応する普通遊技制御モジュールが格納されている。
そして、普通遊技管理処理では、RAM230の普通遊技フェーズフラグ領域に設定されている値に対応する普通遊技制御モジュールが選択され、選択された普通遊技制御モジュールに基づく処理が実行される。
【0269】
具体的には、普通遊技管理処理は、ステップS4-14において実行されると、図26に示すように、まず、ステップS19-1に移行する。
ステップS19-1では、普通遊技フェーズ取得処理を実行し、ステップS19-2に移行する。普通遊技フェーズ取得処理では、RAM230の普通遊技フェーズフラグ領域に設定されている値(普通遊技フェーズ)を取得(ロード)する。
ステップS19-2では、普通遊技制御モジュール取得処理を実行し、ステップS19-3に移行する。普通遊技制御モジュール取得処理では、ステップS19-1で取得した値(普通遊技フェーズ)に対応する普通遊技制御モジュールを読み出す。
【0270】
ステップS19-3では、普通遊技制御モジュール実行処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技制御モジュール実行処理では、ステップS19-2で読み出した普通遊技制御モジュールに基づく処理を開始する。
具体的に、ステップS19-1で取得した値が、「普図変動待ち状態」に対応する値である場合、後述する普図変動待ち処理が開始され、「普図変動中状態」に対応する値である場合、後述する普図変動中処理が開始され、「普図停止図柄表示状態」に対応する値である場合、後述する普図停止中処理が開始され、「普通電動役物開放前状態」に対応する値である場合、後述する普通電動役物開放前処理が開始され、「普通電動役物開放制御状態」に対応する値である場合、後述する普通電動役物開放制御処理が開始され、「普通電動役物閉鎖有効状態」に対応する値である場合、後述する普通電動役物閉鎖有効処理が開始され、「普通電動役物開放終了ウェイト状態」に対応する値である場合、後述する普通電動役物開放終了ウェイト処理が開始される。
【0271】
(普図変動待ち処理)
次に、ステップS19-3で実行される普図変動待ち処理を説明する。
図27は、普図変動待ち処理を示すフローチャートである。
普図変動待ち処理は、ステップS19-3において実行されると、図27に示すように、まず、ステップS20-1に移行する。
ステップS20-1では、普図保留数カウンタの値が「1」以上であるか否かを判定し、普図保留数カウンタの値が「1」以上であると判定した場合(Yes)には、ステップS20-2に移行し、普図保留数カウンタの値が「1」以上でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
【0272】
ステップS20-2では、普図保留数更新処理を実行し、ステップS20-3に移行する。普図保留数更新処理では、普図保留数を更新する。
具体的に、普図保留数更新処理では、まず、普図保留数カウンタの値から、「1」を減算する。
次に、普図遊技情報が記憶される記憶エリアをシフトする。具体的に、普図遊技情報記憶領域の記憶エリア1の記憶内容を、記憶エリア0にシフト(移動)する。次に、普図遊技情報記憶領域の記憶エリア2の記憶内容を、普図遊技情報記憶領域の記憶エリア1にシフトする。次に、普図遊技情報記憶領域の記憶エリア3の記憶内容を、普図遊技情報記憶領域の記憶エリア2にシフトする。次に、普図遊技情報記憶領域の記憶エリア4の記憶内容を、普図遊技情報記憶領域の記憶エリア3にシフトする。次に、普図遊技情報記憶領域の記憶エリア4の記憶内容をクリア(初期化)する。
【0273】
ステップS20-3では、普図当落判定処理を実行し、ステップS20-4に移行する。普図当落判定処理では、普通図柄抽選の結果を判定(普図当落判定)する。
ROM220には、普通図柄抽選の当り値が登録された普図当落抽選テーブルが格納されている。また、普図当落抽選テーブルとして、時短制御の実行中に対応する普図当落抽選テーブルと、時短制御の停止中に対応する普図当落抽選テーブルと、が格納されている。
時短制御の停止中に対応する普図当落抽選テーブルでは、当選確率が第1の確率(本実施形態では、1/99)となるように、当り値が登録されている。一方、時短制御の実行中に対応する普図当落抽選テーブルでは、当選確率が第1の確率より高い第2の確率(本実施形態では、1/1)となるように、当り値が登録されている。
そして、普図当落判定処理では、記憶エリア0に記憶されている遊技情報に含まれる当り乱数と、現在の時短制御の実行状況(実行中又は停止中)に対応する普図当落抽選テーブルと、に基づいて、普図当落判定を実行する。
具体的には、記憶エリア0に記憶されている遊技情報に含まれる当り乱数の値が当り値と一致している場合には、普通図柄抽選の結果を「当り」(当選)と判定する。
一方、記憶エリア0に記憶されている遊技情報に含まれる当り乱数の値が当り値と一致していない場合には、普通図柄抽選の結果を「はずれ」(落選)と判定する。
【0274】
ステップS20-4では、普図停止図柄判定処理を実行し、ステップS20-5に移行する。普図停止図柄判定処理では、普通図柄の停止図柄の種別(停止図柄番号)を判定(普図停止図柄判定)する。
具体的には、普図停止図柄判定処理では、普図当落判定により「当り」(当選)と判定された場合には、停止図柄の種別(停止図柄番号)として、「普図当り図柄」を判定する。
一方、普図当落判定により「はずれ」(落選)と判定された場合には、停止図柄の種別(停止図柄番号)として、「はずれ図柄」を判定する。
次に、決定した停止図柄の種別(停止図柄番号)を、RAM230の停止図柄記憶領域に記憶する。
ステップS20-5では、普図変動パターン判定処理を実行し、ステップS20-6に移行する。普図変動パターン判定処理では、普通図柄の変動パターンの種別(変動パターン番号)を判定(普図変動パターン判定)する。
具体的には、普図変動パターン判定処理では、時短制御を停止中である場合には、普図変動パターンの種別(変動パターン番号)として、第1の種別(本実施形態では、2.0[s]の変動時間に対応する種別)を判定する。
一方、時短制御を実行中である場合には、普図変動パターンの種別(変動パターン番号)として、第2の種別(本実施形態では、0.5[s]の変動時間に対応する種別)を判定する。
【0275】
ステップS20-6では、普図変動時間設定処理を実行し、ステップS20-7に移行する。普図変動時間設定処理では、ステップS20-6で判定した普図変動パターンの種別(変動パターン番号)に対応する変動時間を取得する。そして、取得した変動時間を、普通遊技タイマに設定する。
ステップS20-7では、普図変動表示データ設定処理を実行し、ステップS20-8に移行する。普図変動表示データ設定処理では、普図表示装置の変動表示を制御するためのデータを設定する。
具体的には、普図変動表示データ設定処理では、まず、普図表示タイマに、所定表示時間を設定する。
次に、普図表示図柄カウンタに、所定の初期値を設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、普図表示図柄カウンタの値に対応するセグメントが点灯制御される。
次に、普図表示装置に対応するセグデータとして、所定のセグデータを設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、設定されたセグデータに対応するセグメントが点灯制御される。
ステップS20-8では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図変動中状態」に対応する値を設定する。
【0276】
(普図変動中処理)
次に、ステップS19-3で実行される普図変動中処理を説明する。
図28は、普図変動中処理を示すフローチャートである。
普図変動中処理は、ステップS19-3において実行されると、図28に示すように、まず、ステップS21-1に移行する。
ステップS21-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」でないと判定した場合(No)には、ステップS21-2に移行し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS21-4に移行する。
ステップS21-2では、普図表示タイマの値が「0」であるか否かを判定し、普図表示タイマの値が「0」であると判定した場合(Yes)には、ステップS21-3に移行し、普図表示タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS21-3では、普図変動表示データ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普図変動表示データ更新処理では、普図表示装置の変動表示を制御するためのデータを更新する。
具体的には、普図変動表示データ更新処理では、普図表示図柄カウンタの値に、「1」を加算する。
【0277】
ステップS21-4では、普図停止表示データ設定処理を実行し、ステップS21-5に移行する。普図停止表示データ設定処理では、普図表示装置の停止表示を制御するためのデータを設定する。
具体的には、普図停止表示データ設定処理では、RAM230の停止図柄記憶領域に記憶されている停止図柄番号を取得する。
次に、普図表示図柄カウンタの値として、取得した停止図柄番号を設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、普図表示図柄カウンタの値に対応するセグメントが点灯制御(停止表示)される。
ステップS21-5では、普図停止時間設定処理を実行し、ステップS21-6に移行する。普図停止時間設定処理では、所定の停止時間を、普通遊技タイマに設定する。
ステップS21-6では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図停止図柄表示状態」に対応する値を設定する。
【0278】
(普図停止中処理)
次に、ステップS19-3で実行される普図停止中処理を説明する。
図29は、普図停止中処理を示すフローチャートである。
普図停止中処理は、ステップS19-3において実行されると、図29に示すように、まず、ステップS22-1に移行する。
ステップS22-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS22-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS22-2では、停止図柄が「普図当り図柄」であるか否かを判定し、停止図柄が「普図当り図柄」でないと判定した場合(No)には、ステップS22-3に移行し、停止図柄が「普図当り図柄」であると判定した場合(Yes)には、ステップS22-4に移行する。
ステップS22-3では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図変動待ち状態」に対応する値を設定する。
ステップS22-4では、普通電役制御データ設定処理を実行し、ステップS22-5に移行する。普通電役制御データ設定処理では、普通電動役物52aを開閉制御するための制御データを設定する。
ROM220には、時短制御の実行状況(実行中又は停止中)に対応する普通電役制御テーブルが格納されている。そして、各普通電役制御テーブルには、普通電役開放前時間、普通電役閉鎖有効時間、開放終了ウェイト時間、開閉切替回数、各回の開閉切替に対応する制御データ(ソレノイド制御データ、制御時間データ)等が規定されている。
普通電役制御データ設定処理では、時短制御の実行状況(実行中又は停止中)に対応する普通電役制御テーブルを読出し、読み出した普通電役制御テーブルを、RAM230の普通電役制御テーブル領域に設定する。
次に、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、開閉切替回数を読み出す。そして、読み出した開閉切替回数を、普通電役開閉切替回数カウンタに設定する。また、普通電役入賞数カウンタの値として「0」を設定する。
【0279】
ステップS22-5では、普通電役開放前時間設定処理を実行し、ステップS22-6に移行する。普通電役開放前時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の普通電役開放前時間を、普通遊技タイマに設定する。
ステップS22-6では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放前状態」に対応する値を設定する。
【0280】
(普通電動役物開放前処理)
次に、ステップS19-3で実行される普通電動役物開放前処理を説明する。
図30は、普通電動役物開放前処理を示すフローチャートである。
普通電動役物開放前処理は、ステップS19-3において実行されると、図30に示すように、まず、ステップS23-1に移行する。
ステップS23-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS23-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS23-2では、普通電役開閉切替処理を実行し、ステップS23-3に移行する。普通電役開閉切替処理については、後述する。
ステップS23-3では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放制御状態」に対応する値を設定する。
【0281】
(普通電役開閉切替処理)
次に、ステップS23-2,S25-3の普通電役開閉切替処理を説明する。
図31は、普通電役開閉切替処理を示すフローチャートである。
普通電役開閉切替処理は、ステップS23-2,S25-3において実行されると、図31に示すように、まず、ステップS24-1に移行する。
ステップS24-1では、普通電役開閉切替回数カウンタの値が「0」であるか否かを判定し、普通電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS24-2に移行し、普通電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS23-3又はS25-4)に移行する。
ステップS24-2では、普通電役制御データ設定処理を実行し、ステップS24-3に移行する。普通電役制御データ設定処理では、普通電動役物52aを開放状態又は閉鎖状態に制御するための制御データを設定する。
具体的には、普通電役制御データ設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、普通電役開閉切替回数カウンタの値に対応するソレノイド制御データを読み出す。そして、読み出したソレノイド制御データ(通電又は通電停止を指定する制御データ)を、RAM230の所定領域に設定する。これによって、設定されたソレノイドデータに基づく普通電動役物ソレノイド64の制御が開始され、普通電動役物52aが開放状態又は閉鎖状態に制御される。
【0282】
ステップS24-3では、普通電役制御時間設定処理を実行し、ステップS24-4に移行する。普通電役制御時間設定処理では、ステップS24-2で設定したソレノイド制御データに基づく制御を継続する制御時間を設定する。
具体的には、普通電役制御時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、普通電役開閉切替回数カウンタの値に対応する制御時間を読み出す。そして、読み出した制御時間を、普通遊技タイマに設定する。
ステップS24-4では、普通電役開閉切替回数カウンタ更新処理を実行し、一連の処理を終了して次の処理(ステップS23-3又はS25-4)に移行する。普通電役開閉切替回数カウンタ更新処理では、普通電役開閉切替回数カウンタに設定されている値から「1」を減算した値を、新たに普通電役開閉切替回数カウンタに設定する。
【0283】
(普通電動役物開放制御処理)
次に、ステップS19-3で実行される普通電動役物開放制御処理を説明する。
図32は、普通電動役物開放制御処理を示すフローチャートである。
普通電動役物開放制御処理は、ステップS19-3において実行されると、図32に示すように、まず、ステップS25-1に移行する。
ステップS25-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS25-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、ステップS25-4に移行する。
ステップS25-2では、普通電役開閉切替回数カウンタの値が「0」であるか否かを判定し、普通電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS25-3に移行し、普通電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、ステップS25-5に移行する。
ステップS25-3では、普通電役開閉切替処理(図31参照)を実行し、ステップS25-4に移行する。
ステップS25-4では、普通電役入賞数カウンタの値が所定の上限値(本実施形態では、3[球])に達しているか否かを判定し、普通電役入賞数カウンタの値が所定の上限値に達していると判定した場合(Yes)には、ステップS25-5に移行し、普通電役入賞数カウンタの値が所定の上限値に達していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
【0284】
ステップS25-5では、普通電役開放制御終了処理を実行し、ステップS25-6に移行する。普通電役開放制御終了処理では、通電停止を指定するソレノイド制御データを、RAM230の所定領域に設定する。これによって、普通電動役物52aが閉鎖状態に制御される。
ステップS25-6では、普通電役閉鎖有効時間設定処理を実行し、ステップS25-7に移行する。普通電役閉鎖有効時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の普通電役閉鎖有効時間を、普通遊技タイマに設定する。
ステップS25-7では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物閉鎖有効状態」に対応する値を設定する。
【0285】
(普通電動役物閉鎖有効処理)
次に、ステップS19-3で実行される普通電動役物閉鎖有効処理を説明する。
図33は、普通電動役物閉鎖有効処理を示すフローチャートである。
普通電動役物閉鎖有効処理は、ステップS19-3において実行されると、図33に示すように、まず、ステップS26-1に移行する。
ステップS26-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS26-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS26-2では、開放終了ウェイト時間設定処理を実行し、ステップS26-3に移行する。開放終了ウェイト時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の開放終了ウェイト時間を、普通遊技タイマに設定する。
ステップS26-3では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放終了ウェイト状態」に対応する値を設定する。
【0286】
(普通電動役物開放終了ウェイト処理)
次に、ステップS19-3で実行される普通電動役物開放終了ウェイト処理を説明する。
図34は、普通電動役物開放終了ウェイト処理を示すフローチャートである。
普通電動役物開放終了ウェイト処理は、ステップS19-3において実行されると、図34に示すように、まず、ステップS27-1に移行する。
ステップS27-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS27-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS27-2では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図変動待ち状態」に対応する値を設定する。
【0287】
(性能表示装置制御処理)
次に、ステップS4-25の性能表示装置制御処理を説明する。
図35は、性能表示装置制御処理を示すフローチャートである。
性能表示装置制御処理は、性能表示装置206の表示を制御するためのプログラムに基づく処理となっている。すなわち、性能表示装置制御処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。性能表示装置制御処理は、タイマ割込み処理の実行中に呼び出される。
性能表示装置制御処理は、ステップS4-25で呼び出されると、図35に示すように、ステップS38-1に移行する。
ステップS38-1では、レジスタ退避処理を実行し、ステップS38-2に移行する。レジスタ退避処理では、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのレジスタの値を、RAMの退避領域に退避させる。また、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのスタックポインタの値を、RAMの退避領域に退避させる。
【0288】
ステップS38-2では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS38-3に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS38-11に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
ステップS38-3では、総アウトカウンタ加算処理を実行し、ステップS38-4に移行する。
総カウントカウンタ加算処理では、アウトスイッチ109のオン状態を検出したか否かを判定する。そして、アウトスイッチ109のオン状態を検出したと判定した場合、総アウトカウンタの値に、「1」を加算する。一方、アウトスイッチ109のオン状態を検出していないと判定した場合、総アウトカウンタの値を加算しない。
【0289】
ステップS38-4では、所定の遊技状態であるか否かを判定し、所定の遊技状態であると判定した場合(Yes)には、ステップS38-5に移行し、所定の遊技状態でないと判定した場合(No)には、ステップS38-7に移行する。
ここで、「所定の遊技状態」は、「特図低確率状態」が生起されており、かつ、時短制御の停止中であり、かつ、大当り遊技状態が生起されていない遊技状態となっている。
ステップS38-5では、通常アウトカウンタ加算処理を実行し、ステップS38-6に移行する。
通常アウトカウンタ加算処理では、アウトスイッチ109のオン状態を検出したか否かを判定する。そして、アウトスイッチ109のオン状態を検出したと判定した場合、通常アウトカウンタの値に、「1」を加算する。一方、アウトスイッチ109のオン状態を検出していないと判定した場合、通常アウトカウンタの値を加算しない。
【0290】
ステップS38-6では、通常賞球カウンタ加算処理を実行し、ステップS38-7に移行する。
通常賞球カウンタ加算処理では、まず、特図1始動口スイッチ101のオン状態を検出したか否かを判定する。そして、特図1始動口スイッチ101のオン状態を検出したと判定した場合、通常賞球カウンタの値に、第1始動口51への遊技球の入球に応じて払い出される賞球数である「3」を加算する。一方、特図1始動口スイッチ101のオン状態を検出していないと判定した場合、通常賞球カウンタの値を加算しない。
次に、特図2始動口スイッチ102のオン状態を検出したか否かを判定する。そして、特図2始動口スイッチ102のオン状態を検出したと判定した場合、通常賞球カウンタの値に、第2始動口52への遊技球の入球に応じて払い出される賞球数である「1」を加算する。一方、特図2始動口スイッチ102のオン状態を検出していないと判定した場合、通常賞球カウンタの値を加算しない。
次に、右入賞口スイッチ入賞球105のオン状態を検出したか否かを判定する。そして、右入賞口スイッチ入賞球105のオン状態を検出したと判定した場合、通常賞球カウンタの値に、右他入賞口54への遊技球の入球に応じて払い出される賞球数である「10」を加算する。一方、右入賞口スイッチ入賞球105のオン状態を検出していないと判定した場合、通常賞球カウンタの値を加算しない。
次に、左入賞口スイッチ入賞球106のオン状態を検出したか否かを判定する。そして、左入賞口スイッチ入賞球106のオン状態を検出したと判定した場合、通常賞球カウンタの値に、左他入賞口55~57への遊技球の入球に応じて払い出される賞球数である「10」を加算する。一方、左入賞口スイッチ入賞球106のオン状態を検出していないと判定した場合、通常賞球カウンタの値を加算しない。
【0291】
ステップS38-7では、総アウトカウンタの値が基準値に達しているか否かを判定し、総アウトカウンタの値が基準値に達していると判定した場合(Yes)には、ステップS38-8に移行し、総アウトカウンタの値が基準値に達していないと判定した場合(No)には、ステップS38-9に移行する。
本実施形態では、基準値=60000×n(n=整数)となっている。なお、「n」は、現在の区間を示す値であり、初期値として「1」が設定される。
ステップS38-8では、区間更新処理を実行し、ステップS38-9に移行する。区間更新処理では、区間を更新する。
区間更新処理では、まず、RAM230のベース値バッファ1に記憶されているベース比率を、RAM230のベース値バッファ2にシフト(移動)する。
次に、通常アウトカウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。また、通常賞球カウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。
次に、現在の区間を示す値(n)に、「1」を加算する。これによって、基準値が更新される。
ステップS38-9では、ベース比率演算処理を実行し、ステップS38-10に移行する。ベース比率演算処理では、ベース比率を演算する。
具体的に、ベース比率演算処理では、通常アウトカウンタの値と、通常賞球カウンタの値と、に基づいて、ベース比率を算出する。そして、算出したベース比率を、RAM230のベース値バッファ1に記憶する。
ここで、ベース比率は、通常アウトカウンタの値に対する通常賞球カウンタの値の比となっている。
【0292】
ステップS38-10では、ベース比率表示データ設定処理を実行し、ステップS38-11に移行する。ベース比率表示データ設定処理では、性能表示装置206に対して出力する表示データを設定する。
RAM230には、識別セグ出力要求バッファ(16ビット)と、比率セグ出力要求バッファ(16ビット)と、が設けられている。
ベース比率表示データ設定処理では、まず、現在の区間のベース比率、及び、前回の区間のベース比率のうち、いずれのベース比率を表示するかを選択する。
そして、現在の区間のベース比率の表示を選択した場合、現在の区間のベース比率であることを示す情報を、識別セグ出力要求バッファに設定するとともに、現在の区間のベース比率を示す情報を、比率セグ出力要求バッファに設定する。
具体的に、「b」の表示データ(8ビット)を、識別セグ出力要求バッファの上位8ビットに設定し、「b」の表示データ(8ビット)を、識別セグ出力要求バッファの下位8ビットに設定し、ベース値バッファ1に記憶されているベース比率の十の位に対応する表示データを、比率セグ出力要求バッファの上位8ビットに設定し、ベース値バッファ1に記憶されているベース比率の一の位に対応する表示データを、比率セグ出力要求バッファの下位8ビットに設定する。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「b」の文字が表示され、LED41~LED48により、「b」の文字が表示され、LED49~LED56により、現在のベース比率の十の位を示す数字が表示され、LED57~LED64により、現在のベース比率の一の位を示す数字が表示される。
【0293】
一方、前回の区間のベース比率の表示を選択した場合、前回の区間のベース比率であることを示す情報を、識別セグ出力要求バッファに設定するとともに、前回の区間のベース比率を示す情報を、比率セグ出力要求バッファに設定する。
具体的に、「b」の表示データ(8ビット)を、識別セグ出力要求バッファの上位8ビットに設定し、「c」の表示データ(8ビット)を、識別セグ出力要求バッファの下位8ビットに設定し、ベース値バッファ2に記憶されているベース比率の十の位に対応する表示データを、比率セグ出力要求バッファの上位8ビットに設定し、ベース値バッファ2に記憶されているベース比率の一の位に対応する表示データを、比率セグ出力要求バッファの下位8ビットに設定する。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「b」の文字が表示され、LED41~LED48により、「c」の文字が表示され、LED49~LED56により、現在のベース比率の十の位を示す数字が表示され、LED57~LED64により、現在のベース比率の一の位を示す数字が表示される。
【0294】
ステップS38-11では、レジスタ復帰処理を実行し、ステップS38-12に移行する。レジスタ復帰処理では、ステップS38-1で退避しておいたレジスタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたレジスタの値)と、ステップS38-1で退避しておいたスタックポインタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたスタックポインタの値)と、を復帰させる。
ステップS38-12では、割込み許可処理を実行し、一連の処理を終了して次の処理(ステップS4-26)に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、電源遮断時退避処理、タイマ割込み処理等の実行が許可される。
【0295】
(パチンコ機1において実行される各種演出)
次に、パチンコ機1において実行される各種演出を説明する。
【0296】
(保留演出)
まず、パチンコ機1において実行される保留演出(保留表示)を説明する。
パチンコ機1では、遊技情報記憶領域(特図1遊技情報記憶領域及び特図2遊技情報記憶領域)に記憶されている各遊技情報(特図1遊技情報又は特図2遊技情報)を対象として保留演出が実行される。
保留演出は、当該保留演出の対象とされている遊技情報(以下、「保留演出対象遊技情報」とする)に基づく特別図柄の報知表示(始動判定)が保留されていること、又は、保留演出対象遊技情報に基づく特別図柄の報知表示の実行中であること、を示唆(報知)する演出となっている。
保留演出では、保留図柄表示領域b1~b3において、保留演出対象遊技情報に対応する保留図柄hが表示される。
【0297】
具体的には、保留図柄表示領域b2には、保留図柄hが表示される表示位置(表示部)として、特図1遊技情報記憶領域の4つの記憶エリア(記憶エリア1~記憶エリア4)のそれぞれに対応する表示位置が規定されている。
また、保留図柄表示領域b3には、保留図柄hが表示される表示位置(表示部)として、特図2遊技情報記憶領域の4つの記憶エリア(記憶エリア1~記憶エリア4)のそれぞれに対応する表示位置が規定されている。
そして、特図1遊技情報を対象保留演出対象遊技情報とする保留演出では、保留図柄表示領域b1,b2において、保留演出対象遊技情報に対応する保留図柄hが表示される。
【0298】
すなわち、保留演出対象遊技情報が特図1遊技情報記憶領域(記憶エリア1~記憶エリア4)に記憶されている期間中(保留演出対象遊技情報の取得後から、保留演出対象遊技情報に基づく始動判定の実行前までの期間中)には、保留図柄表示領域b2において、保留演出対象遊技情報に対応する保留図柄hが表示される。
この際、保留演出対象遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置において、保留演出対象遊技情報に対応する保留図柄hが表示される。
一方、保留演出対象遊技情報が記憶エリア0に記憶されている期間中(保留演出対象遊技情報に基づく始動判定の実行後から、保留演出対象遊技情報に基づく特別図柄の報知表示の終了までの期間中)には、保留図柄表示領域b1において、保留演出対象遊技情報に対応する保留図柄hが表示される。
一方、特図2遊技情報を保留演出対象遊技情報とする保留演出では、保留図柄表示領域b1,b3において、保留演出対象遊技情報に対応する保留図柄hが表示される。
すなわち、保留演出対象遊技情報が特図2遊技情報記憶領域(記憶エリア1~記憶エリア4)に記憶されている期間中(保留演出対象遊技情報の取得後から、保留演出対象遊技情報に基づく始動判定の実行前までの期間中)には、保留図柄表示領域b3において、保留演出対象遊技情報に対応する保留図柄hが表示される。
この際、保留演出対象遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置において、保留演出対象遊技情報に対応する保留図柄hが表示される。
一方、保留演出対象遊技情報が記憶エリア0に記憶されている期間中(保留演出対象遊技情報に基づく始動判定の実行後から、保留演出対象遊技情報に基づく特別図柄の報知表示の終了までの期間中)には、保留図柄表示領域b1において、保留演出対象遊技情報に対応する保留図柄hが表示される。
【0299】
例えば、ステップS9-3で取得された各種乱数が、特図1遊技情報として、特図1遊技情報記憶領域の記憶エリア3に記憶され、当該特図1遊技情報を対象とする保留演出が実行される場合には、保留演出の開始に応じて、保留演出対象遊技情報に対応する保留図柄hが、保留図柄表示領域b2の記憶エリア3に対応する表示位置に表示される。
その後、保留演出対象遊技情報を記憶する記憶領域が、記憶エリア3から、記憶エリア2にシフトされたことに応じて、保留演出対象遊技情報に対応する保留図柄hの表示領域が、記憶エリア3に対応する表示位置から、記憶エリア2に対応する表示位置にシフトされる。
また、保留演出対象遊技情報を記憶する記憶領域が、記憶エリア2から、記憶エリア1にシフトされたことに応じて、保留演出対象遊技情報に対応する保留図柄hの表示領域が、記憶エリア2に対応する表示位置から、記憶エリア1に対応する表示位置にシフトされる。
さらに、保留演出対象遊技情報を記憶する記憶領域が、特図1遊技情報記憶領域(記憶エリア1)から、記憶エリア0にシフトされたことに応じて、保留演出対象遊技情報に対応する保留図柄hの表示領域が、保留図柄表示領域b2(記憶エリア1に対応する表示位置)から、保留図柄表示領域b1にシフトされる。
そして、保留演出対象遊技情報に基づく特別図柄の報知表示の終了に応じて、保留図柄表示領域b1における保留演出対象遊技情報に対応する保留図柄hの表示が終了され、これによって、保留演出が終了する。
【0300】
本実施形態では、保留演出の種別として、通常保留演出と、保留予告演出と、が規定されている。
「通常保留演出」は、保留演出対象遊技情報に基づく事前判定(ステップS9-8)の結果を示唆しない保留演出の種別となっている。
本実施形態では、保留図柄hの種別(態様)として、通常保留と、特殊保留と、が規定されている。
通常保留演出では、保留演出対象遊技情報に対応する保留図柄hとして、通常保留が表示される。
通常保留演出は、保留演出対象遊技情報(特図1遊技情報又は特図2遊技情報)が遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に記憶されたことに応じて開始され、保留演出対象遊技情報に基づく特別図柄の報知表示の終了に応じて終了される。
【0301】
(保留予告演出)
「保留予告演出」は、先読み予告演出の一種となっている。すなわち、保留予告演出は、所定の遊技情報に基づく事前判定(ステップS9-8)の結果を、当該遊技情報に対応する保留図柄hの態様により示唆する保留演出の種別となっている。
以下の説明では、保留予告演出の対象とされている遊技情報を、「保留予告対象遊技情報」とする。また、保留予告対象遊技情報に対応する保留図柄hを、「予告対象保留図柄hy」とする。
本実施形態では、保留予告演出は、保留予告対象遊技情報に基づく事前特図図柄判定の結果(具体的には、「大当り図柄」である可能性)を示唆する演出となっている。
なお、保留予告演出が、保留予告対象遊技情報に基づく事前特図変動パターン判定の結果(具体的には、「スーパーリーチ変動」である可能性)を示唆する構成としても構わない。
保留予告演出では、予告対象保留図柄hyとして、特殊保留が表示される。
本実施形態では、特殊保留の態様(種別)として、「青色保留」と、「緑色保留」と、「紫色保留」と、「赤色保留」と、が規定されている。
そして、保留予告演出では、予告対象保留図柄hyの態様が変化し、最終的に表示される予告対象保留図柄hyの態様によって、保留予告対象遊技情報に基づく事前判定の結果(具体的には、大当り遊技状態が生起される可能性)が示唆される。
ここで、特殊保留の各態様の大当り期待度は、大当り期待度が高いものから順に、「赤色保留」、「紫色保留」、「緑色保留」、「青色保留」(大当り期待度高→大当り期待度低)となるように規定されている。
「大当り期待度」とは、当該態様が選択された場合に、大当り遊技状態が生起される可能性(度合い)をいう。
【0302】
保留予告演出が実行される場合には、一回又は複数回の保留変化契機と、各回の保留変化契機に対応する保留変化内容と、が設定される。そして、保留予告演出では、各回の保留変化契機の到来に応じて、当該保留変化契機に対応する保留変化内容にしたがって、予告対象保留図柄hyの態様が変化する。
「保留変化契機」は、予告対象保留図柄hyの態様が変化する契機となっている。また、「保留変化内容」は、予告対象保留図柄hyの態様が変化する内容となっている。
本実施形態では、保留変化契機として、各先行保留情報に対応する変動演出の開始時、保留予告対象遊技情報に対応する変動演出の開始時等が規定されている。そして、保留予告演出が実行されるときには、これらの保留変化契機のうちから、一回又は複数回の保留変化契機が設定される。
本実施形態では、保留予告演出は、特図1遊技情報及び特図2遊技情報のうち、特図1遊技情報のみを対象として実行される。
【0303】
(変動演出)
次に、パチンコ機1において実行される変動演出を説明する。
以下の説明では、第1演出図柄表示領域a1において表示される第1演出図柄z1を「左図柄」とし、第1演出図柄表示領域a2において表示される第1演出図柄z1を「中図柄」とし、第1演出図柄表示領域a3において表示される第1演出図柄z1を「右図柄」とする。
なお、本実施形態では、変動演出(前半変動演出及び後半変動演出)の実行中、常時、第2演出図柄表示領域a4において、第2演出図柄z2が変動表示される。
【0304】
まず、前半変動演出の各態様を説明する。
パチンコ機1では、変動モード番号として、「擬似連なし変動」に対応する変動モード番号と、「擬似連2変動」に対応する変動モード番号と、「擬似連3変動」に対応する変動モード番号と、が規定されている。
また、前半変動演出のカテゴリー(種別)として、「擬似連なし変動演出」と、「擬似連2変動演出」と、「擬似連3変動演出」と、が規定されている。
さらに、前半変動演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、変動モード指定コマンドにより「擬似連なし変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連なし変動演出」が選択される。一方、変動モード指定コマンドにより「擬似連2変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連2変動演出」が選択される。一方、変動モード指定コマンドにより「擬似連3変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連3変動演出」が選択される。
【0305】
「擬似連なし変動演出」は、通常変動演出を含んで構成されている。
「通常変動演出」は、3つの第1演出図柄表示領域a1~a3において、第1演出図柄z1が通常変動表示される表示演出をいう。具体的に、通常変動演出では、左図柄、中図柄及び右図柄が通常変動表示される。
「通常変動表示」は、第1演出図柄表示領域a1~a3の抽選結果表示位置に表示される第1演出図柄z1の種類が、順次、入れ替わる表示をいう。
「抽選結果表示位置」とは、後述する停止演出において、第1演出図柄z1が停止表示される位置をいう。
「擬似連なし変動演出」では、その開始に応じて、「通常変動演出」が開始される。そして、「擬似連なし変動演出」では、左図柄、中図柄及び右図柄の通常変動表示(「通常変動演出」)が、当該「擬似連なし変動演出」の終了まで継続される。
なお、「擬似連なし変動演出」では、後述する擬似変動演出が実行されない。
「擬似連続変動演出」(「擬似連2変動演出」及び「擬似連3変動演出」)は、1回の特別図柄の変動表示の実行中において、第1演出図柄z1の変動表示が、擬似的に、複数回実行される演出となっている。具体的に、擬似連続変動演出は、複数回の擬似変動演出を含んで構成されている。
「擬似連2変動演出」は、2回の擬似変動演出を含んで構成されている。「擬似連3変動演出」は、3回の擬似変動演出を含んで構成されている。
以下の説明では、擬似連続変動演出に含まれる擬似変動演出のうち、最終回の擬似変動演出を、「最終回擬似変動演出」とする。また、擬似連続変動演出に含まれる擬似変動演出のうち、最終回擬似変動演出を除く、各回の擬似変動演出を、「途中回擬似変動演出」とする。
【0306】
各回の擬似変動演出(途中回擬似変動演出及び最終回擬似変動演出)は、通常変動演出と、通常リーチ変動演出と、擬似連演出と、を含んで構成されている。
「通常リーチ変動演出」は、3つの第1演出図柄表示領域a1~a3のうち、2以上の領域において、第1演出図柄z1が仮停止表示され、かつ、2以上の領域において仮停止表示されている第1演出図柄z1の組み合わせが、「大当り図柄」に含まれる組み合わせとなる表示演出をいう。
以下の説明では、通常リーチ変動演出(または、後述する縮小リーチ変動演出)において、「大当り図柄」に含まれる組み合わせで仮停止表示される第1演出図柄z1を、「リーチ状態を形成する第1演出図柄z1」という。
具体的に、通常リーチ変動演出では、左図柄及び右図柄により、リーチ状態が形成される。すなわち、通常リーチ変動演出では、左図柄及び右図柄が仮停止表示され、仮停止表示された左図柄及び右図柄が、互いに同一の種別となる。なお、通常リーチ変動演出では、中図柄については、通常変動表示が継続される。
「仮停止表示」は、第1演出図柄表示領域a1~a3の抽選結果表示位置において、一の種類の第1演出図柄z1が、所定態様で移動(揺動、回転等)されている状態で、所定時間継続して留まる表示をいう。
【0307】
「擬似連演出」は、次回の擬似変動演出が実行されるか否かを煽る演出となっている。
「擬似連演出」は、擬似連継続図柄が仮停止表示されるか否かにより、次回の擬似変動演出が実行されるか否かを煽る(示唆する)擬似連演出の種別となっている。
「擬似連継続図柄」は、次回の擬似変動演出の実行を煽る情報(本実施形態では、「NEXT」の文字)を含んで構成されている。
本実施形態では、「擬似連演出」として、「擬似連継続演出」と、「擬似連終了演出」と、が規定されている。
「擬似連継続演出」は、次回の擬似変動演出が実行されるか否かを煽った後に、次回の擬似変動演出が実行されることを示唆する演出となっている。
具体的に、「擬似連継続演出」では、中図柄として、擬似連継続図柄(中図柄)が出現し、当該擬似連継続図柄が、抽選結果表示位置に向かって移動する。この際、擬似連継続図柄の移動速度(変動速度)は、通常変動表示における第1演出図柄z1の移動速度と比較して、遅くなっている。そして、「擬似連継続演出」では、擬似連継続図柄が仮停止表示される。これによって、次回の擬似変動演出が実行されることが示唆される。
「擬似連終了演出」は、次回の擬似変動演出が実行されるか否かを煽った後に、次回の擬似変動演出が実行されないことを示唆する演出となっている。
具体的に、「擬似連終了演出」では、擬似連継続演出と同様に、中図柄として、擬似連継続図柄(中図柄)が出現し、当該擬似連継続図柄が、抽選結果表示位置に向かって移動する。この際、擬似連継続図柄の移動速度は、通常変動表示における第1演出図柄z1の移動速度と比較して、遅くなっている。そして、「擬似連終了演出」では、擬似連継続図柄が、仮停止表示されずに、抽選結果表示位置を通過する。これによって、次回の擬似変動演出が実行されないことが示唆される。
【0308】
各回の途中回擬似変動演出では、その開始に応じて、通常変動演出が実行された後に、リーチ変動演出が実行される。すなわち、左図柄、中図柄及び右図柄が通常変動表示された後に、左図柄及び右図柄が仮停止表示され、右図柄及び左図柄によりリーチ状態が形成される。そして、リーチ変動演出の実行中(リーチ状態の形成中)に、擬似連継続演出が実行される。
各回の途中回擬似変動演出は、擬似連継続演出の終了に応じて終了される。そして、途中回擬似変動演出の終了に応じて、次回の擬似変動演出が開始される。
各回の最終回擬似変動演出では、その開始に応じて、通常変動演出が実行された後に、リーチ変動演出が実行される。すなわち、左図柄、中図柄及び右図柄が通常変動表示された後に、左図柄及び右図柄が仮停止表示され、右図柄及び左図柄によりリーチ状態が形成される。そして、リーチ変動演出の実行中(リーチ状態の形成中)に、擬似連終了演出が実行される。
各回の最終回擬似変動演出は、擬似連終了演出の終了に応じて終了される。そして、最終回擬似変動演出の終了に応じて、後半変動演出(ノーマルリーチ変動演出又はスーパーリーチ変動演出)が開始される。
【0309】
次に、後半変動演出の各態様を説明する。
パチンコ機1では、変動パターン番号として、「リーチなし変動」に対応する変動パターン番号と、「ノーマルリーチ変動」に対応する変動パターン番号と、「スーパーリーチ変動」に対応する変動パターン番号と、が規定されている。
また、後半変動演出のカテゴリー(種別)として、「リーチなし変動演出」と、「ノーマルリーチ変動演出」と、「スーパーリーチ変動演出」と、が規定されている。
さらに、後半変動演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、変動パターン指定コマンドにより「リーチなし変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「リーチなし変動演出」が選択される。一方、変動パターン指定コマンドにより「ノーマルリーチ変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「ノーマルリーチ変動演出」が選択される。一方、変動パターン指定コマンドにより「スーパーリーチ変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「スーパーリーチ変動演出」が選択される。
【0310】
「リーチなし変動演出」は、表示演出として、通常変動演出を含んで構成されている。
具体的に、「リーチなし変動演出」では、その開始に応じて、「通常変動演出」が実行される。すなわち、左図柄、中図柄及び右図柄の通常変動表示が開始される。
「リーチなし変動演出」では、左図柄、中図柄及び右図柄の通常変動表示(「通常変動演出」)が、当該「リーチなし変動演出」の終了まで継続される。そして、「リーチなし変動演出」の終了に応じて、停止演出が開始される。
なお、リーチなし変動演出では、後述するリーチ変動演出及び発展リーチ演出が実行されない。
「ノーマルリーチ変動演出」は、通常リーチ変動演出を含んで構成されている。
具体的に、「ノーマルリーチ変動演出」では、その開始に応じて、通常リーチ変動演出が実行される。すなわち、左図柄及び右図柄がリーチ状態を形成する。通常リーチ変動演出は、その開始から所定時間が経過したことに応じて終了される。
「ノーマルリーチ変動演出」は、通常リーチ変動演出の終了に応じて終了される。そして、「ノーマルリーチ変動演出」の終了に応じて、停止演出が開始される。
なお、ノーマルリーチ変動演出では、後述する発展リーチ演出が実行されない。
【0311】
「スーパーリーチ変動演出」は、表示演出として、通常リーチ変動演出と、縮小リーチ変動演出と、発展リーチ演出と、を含んで構成されている。
「縮小リーチ変動演出」は、リーチ状態を形成する第1演出図柄z1が、縮小表示(仮停止表示)される表示演出をいう。特に、縮小リーチ変動演出では、リーチ状態を形成する第1演出図柄z1のみが表示され、リーチ状態を形成していない第1演出図柄z1の表示が省略される。具体的に、縮小リーチ変動表示では、リーチ状態を形成する右図柄及び左図柄が、縮小された状態で、仮停止表示され、中図柄については表示されない。
「発展リーチ演出」は、演出図柄表示領域a1~a4において「大当り図柄」が停止表示されることを煽る演出となっている。発展リーチ演出は、リーチ変動演出中に実行される。
【0312】
「スーパーリーチ変動演出」では、その開始に応じて、通常リーチ変動演出が実行された後に、縮小リーチ変動演出が実行される。
すなわち、左図柄及び右図柄がリーチ状態を形成している状態から、リーチ状態を形成する左図柄及び右図柄が縮小され、縮小された左図柄が表示画面31aの左上端部に移動され、縮小された右図柄が表示画面31aの右上端部に移動され、また、中図柄の表示が消滅する。この際、予め決定された停止演出番号に係る停止演出において停止表示される左図柄及び右図柄によりリーチ状態が形成される。
そして、「スーパーリーチ変動演出」では、縮小リーチ変動演出が実行されている期間中に、「発展リーチ演出」が実行される。
すなわち、縮小リーチ変動演出の開始から所定時間が経過したことに応じて、「発展リーチ演出」が開始される。「発展リーチ演出」は、その開始から所定時間が経過したことに応じて終了される。
「スーパーリーチ変動演出」は、「発展リーチ演出」の終了に応じて終了される。そして、「スーパーリーチ変動演出」の終了に応じて、停止演出が開始される。
【0313】
本実施形態では、「スーパーリーチ変動演出」のパターン(態様)として、「スーパーリーチA」~「スーパーリーチD」が規定されている。
そして、変動パターン指定コマンドにより「スーパーリーチ変動」に対応する変動パターン番号が指定されている場合、後半変動演出の態様として、「スーパーリーチA」~「スーパーリーチD」のうち、いずれかが選択される。
「スーパーリーチA」では、「発展リーチ演出」として、「発展リーチ演出A」が実行される。一方、「スーパーリーチB」では、「発展リーチ演出」として、「発展リーチ演出B」が実行される。一方、「スーパーリーチC」では、「発展リーチ演出」として、「発展リーチ演出C」が実行される。一方、「スーパーリーチD」では、「発展リーチ演出」として、「発展リーチ演出D」が実行される。
特に、「スーパーリーチA」~「スーパーリーチC」は、大当り期待度を示唆する演出となっている。具体的に、「スーパーリーチ変動演出」の各種別の大当り期待度は、大当り期待度が高いものから順に、「スーパーリーチC」、「スーパーリーチB」、「スーパーリーチA」(大当り期待度高→大当り期待度低)となるように規定されている。
一方、「スーパーリーチD」は、出現率(出現頻度)によって、設定値を示唆する演出となっている。「スーパーリーチD」の出現率は、設定値が大きい値であるほど、高くなっている。具体的に、各設定値に対応する「スーパーリーチD」の出現率は、出現率が高いものから順に、設定値=「5」、設定値=「4」、設定値=「3」、設定値=「2」、設定値=「1」、設定値=「0」(出現確率高→出現確率低)となるように規定されている。
【0314】
(メイン予告演出)
次に、パチンコ機1において実行されるメイン予告演出を説明する。
「メイン予告演出」は、変動演出中に実行される演出であって、当該変動演出に係る始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果を示唆する演出となっている。
本実施形態では、メイン予告演出は、特図図柄判定の結果(具体的には、「大当り図柄」である可能性)を示唆する。
本実施形態では、メイン予告演出の種別として、演出内容が異なる複数の種別が規定されている。
【0315】
(停止演出)
次に、パチンコ機1において実行される停止演出を説明する。
停止演出は、特別図柄の停止表示中に実行される演出となっている。
パチンコ機1では、停止演出のカテゴリー(種別)として、「はずれ図柄演出」と、「通常図柄演出」と、「確変図柄演出」と、「潜伏図柄演出」と、が規定されている。
また、停止演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、図柄種別指定コマンドにより「はずれ図柄」に対応する停止図柄番号が指定されている場合、停止演出のカテゴリーとして、「はずれ図柄演出」が選択される。一方、図柄種別指定コマンドにより「大当り2図柄」に対応する停止図柄番号が指定されている場合、停止演出のカテゴリーとして、「通常図柄演出」が選択される。一方、図柄種別指定コマンドにより「大当り1図柄」、「大当り3図柄」又は「大当り4図柄」に対応する停止図柄番号が指定されている場合、停止演出のカテゴリーとして、「確変図柄演出」が選択される。一方、図柄種別指定コマンドにより「大当り5図柄」又は「大当り6図柄」に対応する停止図柄番号が指定されている場合、停止演出のカテゴリーとして、「潜伏図柄演出」が選択される。
【0316】
「はずれ図柄演出」では、演出図柄表示領域a1~a4において、「はずれ図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「はずれ図柄」は、例えば、3つの第1演出図柄表示領域a1~a3に停止表示された第1演出図柄z1が、「1,6,9」等、少なくとも一の領域に停止表示された「数字図柄」が示す数字が、他の領域に停止表示された「数字図柄」が示す数字と異なる組み合わせとなるとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「通常図柄演出」では、演出図柄表示領域a1~a4において、「通常図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「通常図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「2,2,2」等、同一の偶数の数字を示す「数字図柄」で揃うとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「確変図柄演出」では、演出図柄表示領域a1~a4において、「確変図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「確変図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「7,7,7」等、同一の奇数の数字を示す「数字図柄」で揃うとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「潜伏図柄演出」では、演出図柄表示領域a1~a4において、「潜伏図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「潜伏図柄」は、例えば、3つの第1演出図柄表示領域a1~a3の抽選結果表示位置に停止表示された第1演出図柄z1が、「1,2,3」等、所定の規則性を有する組み合わせとなるとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
【0317】
(大当り演出)
次に、パチンコ機1において実行される大当り演出を説明する。
大当り演出は、大当り遊技状態の生起中に実行される演出となっている。
パチンコ機1では、大当り演出のカテゴリー(種別)として、「大当り演出1」~「大当り演出6」が規定されている。
また、大当り演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、オープニング指定コマンドにより「大当り1図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出1」が選択される。一方、オープニング指定コマンドにより「大当り2図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出2」が選択される。オープニング指定コマンドにより「大当り3図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出3」が選択される。オープニング指定コマンドにより「大当り4図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出4」が選択される。オープニング指定コマンドにより「大当り5図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出5」が選択される。オープニング指定コマンドにより「大当り6図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出6」が選択される。
【0318】
大当り演出は、オープニング期間中に実行されるオープニング演出、インターバル期間中に実行されるインターバル演出、ラウンド遊技中に実行されるラウンド演出、エンディング期間中に実行されるエンディング演出等を含んで構成されている。
「オープニング期間」は、大当り遊技状態の開始からオープニング時間が経過するまでの期間となっている。
「インターバル期間」は、オープニング期間の終了から1回目のラウンド遊技の開始までの期間、または、各回のラウンド遊技の終了から次回のラウンド遊技の開始までの期間となっている。
エンディング期間は、最終回のラウンド遊技の終了後のインターバル期間の終了からエンディング時間が経過するまでの期間となっている。
【0319】
(2D表示演出・3D表示演出)
パチンコ機1では、メイン画像表示装置31により各種の表示演出を実行することが可能となっている。特に、メイン画像表示装置31により、表示演出として、2D表示演出と、3D表示演出と、を実行することが可能となっている。
「2D表示演出」は、表示画面31aにおいて、二次元画像のみを含んでなる演出画像が表示される表示演出となっている。すなわち、2D表示演出において表示される演出画像には、三次元画像が含まれない。
「3D表示演出」は、表示画面31aにおいて、三次元画像を含んでなる演出画像が表示される表示演出となっている。ここで、3D表示演出において表示される演出画像には、二次元画像と、三次元画像と、が含まれる。なお、3D表示演出において表示される演出画像に、三次元画像のみが含まれる構成としても構わない。
本実施形態では、発展リーチ演出中、各種予告演出中、大当り演出中等に、3D表示演出が実行される。
例えば、本実施形態では、発展リーチ演出中、大当り演出中等に、ボタン予告演出が実行される。
「ボタン予告演出」は、始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果を示唆する演出となっている。
ボタン予告演出の実行中には、操作有効状態が設定される。そして、操作有効状態が設定されている期間中には、演出ボタン5bの押下操作が有効とされる。一方、操作有効状態が解除されている期間中には、演出ボタン5bの押下操作が無効とされる。
ボタン予告演出では、その開始に応じて、操作有効状態が設定される。また、操作有効状態の設定から所定の操作有効時間が経過したこと、及び、演出ボタン5bの押下操作が検出された回数が所定回数に達したこと、のうち一方の条件の成立に応じて、操作有効状態が解除される。さらに、操作有効状態の解除から所定の報知時間が経過したことに応じて、当該ボタン予告演出が終了される。
以下の説明では、操作有効状態の設定(ボタン予告演出の開始)から、当該操作有効状態が解除されるまでの期間を、「操作有効期間」とする。また、操作有効状態の解除から、所定の報知時間の経過(ボタン予告演出の終了)までの期間を、「結果報知期間」とする。
ボタン予告演出は、操作有効期間中に実行されるボタン押下演出と、結果報知期間中に実行される結果報知演出と、を含んで構成されている。
「ボタン押下演出」は、演出ボタン5bの押下操作を促す演出となっている。すなわち、ボタン押下演出は、表示画面31aにおけるボタン押下演出画像の表示を含んで構成されている。そして、ボタン押下演出画像では、演出ボタン5bを押下操作(1[回]押下操作、又は、連続で押下操作)を促す情報(例えば、「PUSH!」、「連打!」等の文字)の表示と、操作有効期間が終了するまでの残り時間を示す情報(例えば、残り時間を示すタイムバー)の表示と、を含んで構成されている。
「結果報知演出」は、始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果を示唆する演出となっている。すなわち、結果報知演出は、表示画面31aにおける結果報知演出画像の表示を含んで構成されている。結果報知演出画像では、始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果を示唆する情報が表示される。
例えば、発展リーチ演出中に実行されるボタン予告演出では、結果報知画像において、特図当り判定の結果を示唆する情報(具体的には、大当り図柄の停止表示を示唆する情報、及び、はずれ図柄の停止表示を示唆する情報のうち、一方の情報)が表示される。
一方、大当り演出中に実行されるボタン予告演出では、結果報知画像において、特図図柄判定の結果を示唆する情報(具体的には、大当り遊技状態の生起中に実行されるラウンド回数を示唆する情報、大当り遊技状態の終了後の遊技状態を示唆する情報等)が表示される。
特に、ボタン予告演出では、ボタン押下演出が、2D表示演出及び3D表示演出のうち、いずれの表示演出であるかによって、結果報知演出の内容が示唆される。換言すると、ボタン予告演出では、ボタン押下演出が、2D表示演出及び3D表示演出のうち、いずれの表示演出であるかによって、始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果が、間接的に示唆される。
具体的に、ボタン予告演出では、表示画面31aにおいて表示されるボタン押下演出画像が、二次元画像及び三次元画像のうち、いずれの画像であるかによって、結果報知演出の内容が示唆(始動判定の結果が間接的に示唆)される。
例えば、発展リーチ演出中に実行されるボタン予告演出では、ボタン押下演出画像が三次元画像である場合、ボタン押下画像が二次元画像である場合と比較して、結果報知演出により大当り図柄の停止表示が示唆される可能性が高いことが示唆される。
一方、大当り演出中に実行されるボタン予告演出では、ボタン押下演出画像が三次元画像である場合、ボタン押下画像が二次元画像である場合と比較して、結果報知演出により、実際に当選した大当り図柄の種別が従前に示唆された大当り図柄の種別と比較して遊技者に有利な種別(具体的には、大当り遊技状態の生起中に実行されるラウンド遊技の回数の追加、大当り遊技状態の終了後の生起される遊技状態が特図高確率状態であること等)が示唆される可能性が高いことが示唆される。
【0320】
(演出制御基板300で実行される処理)
次に、演出制御基板300のCPU310が実行する処理について説明する。
本実施形態では、後述するコマンド受信割込み処理、サブタイマ割込み処理、及び、可動体割込み処理については、割込みハンドラにより実行される割込み処理となっている。一方、後述するVsync割込み処理、サウンド割込み処理、及び、ランプ割込み処理については、マルチタスクにより、同時期に並行して実行することが可能な割込み処理(タスク)となっている。
ここで、Vsync割込み処理、サウンド割込み処理、及び、ランプ割込み処理についても、割込みハンドラにより実行される割込み処理として構成しても構わない。
【0321】
(サブCPU初期化処理)
まず、演出制御基板300のCPU310が実行するサブCPU初期化処理を説明する。
図36は、サブCPU初期化処理を示すフローチャートである。
演出制御基板300には、リセット回路(図示せず)が配設されている。リセット回路は、パチンコ機1に電源が投入されると、リセット信号を発生する。
演出制御基板300のCPU310は、リセット回路によるリセット信号の発生に応じて、図36に示すサブCPU初期化処理を開始する。
サブCPU初期化処理が開始されると、まず、ステップS28-1に移行する。
ステップS28-1では、初期設定処理を実行し、ステップS28-2に移行する。初期設定処理では、演出制御を開始するために必要となる各種の初期設定が実行される。
具体的に、初期化処理では、CPU310が使用する各種レジスタ、各種タイマ等を初期化して、CPU310を初期化する。
また、初期化処理では、各種の内部デバイス(CPU用ワークメモリ311、CPUインターフェース312、ホストインターフェース313、CGバスインターフェース314、DRAMインターフェース315、VRAM316、シリアル通信コントローラ317、転送回路318、プリローダ回路319、表示回路320、グラフィックスデコーダ回路321、描画回路322、サウンドコントローラ323等)を初期化する。
また、初期化処理では、各種の外部デバイス(制御ROM302、CGROM303、DRAM304等)を初期化する。この際、DRAM304の初期転送完了フラグ領域に、後述する初期転送が完了していない状態を指定する値(本実施形態では、「0」)が設定される。
【0322】
ステップS28-2では、マスクデータ設定処理を実行し、ステップS28-3に移行する。マスクデータ設定処理では、VRAM316のマスク用バッファ領域において、所定のマスクデータを生成(記憶・設定)する。
制御ROM302には、マスクデータ設定用の制御データ(制御プログラム)が格納されている。
マスクデータ設定処理では、制御ROM302に格納されているマスクデータ設定用の制御データを読み出して、当該制御データにしたがった処理を実行する。これによって、VRAM316のマスク用バッファ領域において、所定のマスクデータが生成(記憶・設定)される。
【0323】
ステップS28-3では、初期転送データ設定処理を実行し、ステップS28-4に移行する。初期転送データ設定処理では、初期転送の対象となるデータを指定する情報を設定する。
具体的に、初期転送データ設定処理では、初期転送データリストを、DRAM304の所定領域に設定するとともに、データ転送カウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。
「初期転送データリスト」は、電源投入時に、CGROM303からDRAM304のプリロード領域へ転送(プリロード)するデータのリストとなっている。本実施形態では、初期転送データリストでは、CGROM303に格納されているデータのうち、全ての圧縮音声データが、転送するデータとして規定されている。
具体的に、初期転送データリストでは、CGROM303に格納されている全ての圧縮音声データについて、各圧縮音声データを読み出す記憶領域(CGROM303の記憶領域)のアドレスを指定する情報(以下、「読出アドレス」とする)と、当該圧縮音声データを書き込む記憶領域(DRAM304の記憶領域)のアドレスを指定する情報(以下、「書込アドレス」とする)と、当該圧縮音声データを転送する順番を指定する情報(具体的には、データ転送カウンタの値)と、の対応が登録されている。
【0324】
ステップS28-4では、転送中演出設定処理を実行し、ステップS28-5に移行する。転送中演出設定処理では、転送中演出の演出シナリオテーブルを設定する。
「転送中演出」は、初期転送の継続中(後述するSATA転送処理の継続中)であることを報知する演出となっている。転送中演出は、ランプ演出のみを含んで構成されている。転送中演出では、枠ランプ20が所定パターンで点灯(点滅)される。
転送中演出設定処理では、転送中演出に対応する演出シナリオテーブルを読み出す。そして、読み出した演出シナリオテーブルと、当該演出シナリオテーブルに対応する演出シナリオタイマと、を演出シナリオ設定領域に設定する。これによって、次回のタイムスケジュール管理処理(ステップS31-4)において、転送中演出に対応するランプシナリオテーブルと、当該ランプシナリオテーブルに対応するサブシナリオタイマと、がランプシナリオ設定領域に設定されて、転送中演出が開始される。
ステップS28-5では、割込み許可処理を実行し、ステップS28-6に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、各種の割込み処理の実行が可能となる(許可される)。
ステップS28-6では、乱数更新処理を実行し、ステップS28-7に移行する。乱数更新処理では、各種演出用乱数が更新される。
ステップS28-7では、初期転送処理を実行し、ステップS28-6に移行する。初期転送処理については、後述する。
【0325】
(初期転送処理)
次に、ステップS28-7の初期転送処理を説明する。
図44は、初期転送処理を示すフローチャートである。
初期転送処理は、ステップS28-7で実行されると、図44に示すように、ステップS44-1に移行する。
ステップS44-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、ステップS44-2に移行し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS28-3)に移行する。
【0326】
ステップS44-2では、SATA転送処理を実行し、ステップS44-3に移行する。SATA転送処理では、ステップS28-1で設定された初期転送データリストにしたがって、CGROM303に格納されているデータを、DRAM304のプリロード領域へ転送(プリロード)する。
具体的に、SATA転送処理では、まず、データ転送カウンタの値を確認する。次に、初期転送データリストを参照して、確認したデータ転送カウンタの値に対応する読出アドレス及び書込アドレスを取得する。そして、そして、取得した読出データアドレスが指定する記憶領域に記憶されているデータ(圧縮音声データ)を読み出して、読み出したデータ(圧縮画像データ)を、取得した書込アドレスが指定する記憶領域に記憶する。
SATA転送処理では、次に、データ転送カウンタの値に「1」を加算する。
【0327】
ステップS44-3では、初期転送が完了したか否かを判定し、初期転送が完了したと判定した場合(Yes)には、ステップS44-4に移行し、初期転送が完了していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS28-3)に移行する。
ここで、ステップS44-3では、データ転送カウンタの値に基づいて、初期転送データリストに登録されている全てのデータの転送が完了したか否かを判定する。そして、初期転送データリストに登録されている全てのデータの転送が完了したと判定した場合、初期転送が完了したと判定し、初期転送データリストに登録されている全てのデータの転送が完了していないと判定した場合、初期転送が完了していないと判定する。
【0328】
ステップS44-4では、初期転送完了フラグ設定処理を実行し、ステップS44-5に移行する。初期転送完了フラグ設定処理では、初期転送完了フラグ領域に、初期転送が完了している状態を指定する値(本実施形態では、「1」)を設定する。
ステップS44-5では、転送中演出終了処理を実行し、一連の処理を終了して次の処理(ステップS28-3)に移行する。転送中演出終了処理では、演出シナリオ設定領域に設定されている転送中演出に対応する演出シナリオテーブルをクリアし、転送中ランプ演出を終了する。
【0329】
以上により、初期設定処理の実行から、初期転送データリストに登録されている全てのデータ(CGROM303に格納されている全ての圧縮音声データ)の転送(初期転送)が完了するまでの期間中、初期転送完了フラグ領域に「0」が設定される。そして、初期転送完了フラグ領域に「0」が設定されされている期間中、ステップS44-2のSATA転送処理が、繰り返し実行される。
その後、初期転送データリストに登録されている全てのデータ(CGROM303に格納されている全ての圧縮音声データ)の転送(初期転送)が完了したことに応じて、初期転送完了フラグ領域に「1」が設定される。
特に、本実施形態では、初期転送完了フラグ領域に「1」が設定されたことに応じて、各種スピーカ22による音声の出力の制御(サウンドコントローラ323による音声出力処理)と、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)と、を実行することが可能な状態が発生する。
すなわち、初期転送完了フラグ領域に「0」が設定されているときには、各種スピーカ22による音声の出力の制御(サウンドコントローラ323による音声出力処理)と、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)と、を実行することが不可能な状態となる。
一方、初期転送完了フラグ領域に「1」が設定されているときには、各種スピーカ22による音声の出力の制御(サウンドコントローラ323による音声出力処理)と、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)と、を実行することが可能な状態となる。
一方、本実施形態では、初期転送データリストに登録されている全てのデータ(CGROM303に格納されている全ての圧縮音声データ)の転送が完了する前に(初期転送完了フラグ領域に「1」が設定される前に)、各種ランプ20,21の駆動(発光)の制御(ランプコントローラ317aによるランプ駆動処理)と、各種モータ23(各種可動体)の駆動の制御(モータコントローラ317bによるモータ駆動処理)と、を実行することが可能な状態が発生する。
すなわち、初期設定処理が実行された後、各種の割込み処理の実行が許可されたことに応じて、各種ランプ20,21の駆動(発光)の制御(ランプコントローラ317aによるランプ駆動処理)と、各種モータ23(各種可動体)の駆動の制御(モータコントローラ317bによるモータ駆動処理)と、を実行することが可能な状態が発生する。
【0330】
(コマンド受信割込み処理)
次に、演出制御基板300のCPU310が実行するコマンド受信割込み処理を説明する。
演出制御基板300のCPU310は、主制御基板200からの制御コマンドの受信に応じて、コマンド受信割込み処理(図示せず)を実行する。
コマンド受信割込み処理では、主制御基板200から受信した制御コマンドが、演出制御基板300のDRAM304の受信バッファ領域に記憶(格納)される。
【0331】
(サブタイマ割込み処理)
次に、演出制御基板300のCPU310が実行するサブタイマ割込み処理を説明する。
図37は、サブタイマ割込み処理を示すフローチャートである。
演出制御基板300は、クロック発生回路を含んで構成されている。クロック発生回路は、所定周期ごとに、クロックパルス信号を発生させる。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図37に示すサブタイマ割込み処理を開始する。サブタイマ割込み処理が開始されると、まず、ステップS31-1に移行する。
ステップS31-1では、レジスタ退避処理を実行し、ステップS31-2に移行する。レジスタ退避処理では、レジスタの値をDRAM304の退避領域に退避させる。
【0332】
ステップS31-2では、タイマ更新処理を実行し、ステップS31-3に移行する。タイマ更新処理では、演出制御基板300が備える各種タイマ(演出シナリオタイマ等)の値を更新する。具体的に、各種タイマの値について、所定値(所定周期に対応する値)を加算又は減算する。
ステップS31-3では、コマンド解析処理を実行し、ステップS31-4に移行する。コマンド解析処理では、演出制御基板300のDRAM304の受信バッファに格納されている制御コマンドを解析し、受信した制御コマンドに応じた処理を実行する。コマンド解析処理については、後述する。
【0333】
ステップS31-4では、タイムスケジュール管理処理を実行し、ステップS31-5に移行する。タイムスケジュール管理処理では、演出シナリオ設定領域に設定されている演出シナリオテーブルと、当該演出シナリオテーブルに対応する演出シナリオタイマの値と、に基づいて、演出の進行を管理する。
具体的に、演出シナリオ設定領域に設定されている各演出シナリオテーブルについて、当該演出シナリオテーブルに登録されているプロセスデータのうち、現在の演出シナリオタイマの値に対応するプロセスデータを選択し、選択したプロセスデータに基づく処理を実行する。
すなわち、選択したプロセスデータに含まれる各指令情報について、当該指令情報が指定するサブ演出番号に対応するサブシナリオテーブル、及び、当該サブシナリオテーブルに対応するサブシナリオタイマを、DRAM304の所定領域に設定する。
この際、指令情報が表示演出番号を指定する場合、当該表示演出番号に対応する表示シナリオテーブル、及び、当該表示シナリオテーブルに対応するサブシナリオタイマを、表示シナリオ設定領域に設定する。
一方、指令情報が音演出番号を指定する場合、当該音演出番号に対応する音シナリオテーブル、及び、当該音シナリオテーブルに対応するサブシナリオタイマを、音シナリオ設定領域に設定する。
一方、指令情報がランプ演出番号を指定する場合、当該ランプ演出番号に対応するランプシナリオテーブル、及び、当該ランプシナリオテーブルに対応するサブシナリオタイマを、ランプシナリオ設定領域に設定する。
一方、指令情報が可動体演出番号を指定する場合、当該可動体演出番号に対応する可動体シナリオテーブル、及び、当該可動体シナリオテーブルに対応するサブシナリオタイマを、可動体シナリオ設定領域に設定する。
以上により、演出シナリオ設定領域に設定されている各演出シナリオテーブルに登録されている全てのプロセスデータについて、各プロセスデータに基づく処理が、順次、実行される。
【0334】
ステップS31-5では、レジスタ復帰処理を実行し、サブタイマ割込み処理を終了する。レジスタ復帰処理では、ステップS31-1で退避しておいたレジスタの値を復帰させる。
【0335】
(コマンド解析処理)
次に、ステップS31-3のコマンド解析処理を説明する。
図38は、コマンド解析処理を示すフローチャートである。
コマンド解析処理は、ステップS31-3で実行されると、図38に示すように、ステップS32-1に移行する。
ステップS32-1では、設定値コマンド受信処理を実行し、ステップS32-2に移行する。
設定値コマンド受信処理では、設定値指定コマンドを受信したか否かを判定する。そして、設定値指定コマンドを受信したと判定した場合には、当該設定値指定コマンドが指定する設定値に対応する値を、演出制御基板300のDRAM304の設定値記憶領域に記憶(設定)する。
【0336】
ステップS32-2では、遊技状態コマンド受信処理を実行し、ステップS32-3に移行する。
遊技状態コマンド受信処理では、遊技状態指定コマンドを受信したか否かを判定する。そして、遊技状態指定コマンドを受信したと判定した場合には、各種演出フラグの設定を行う。
ステップS32-3では、保留コマンド受信処理を実行し、ステップS32-4に移行する。保留コマンド受信処理については、後述する。
ステップS32-4では、先読みコマンド受信処理を実行し、ステップS32-5に移行する。先読みコマンド受信処理については、後述する。
ステップS32-5では、変動コマンド受信処理を実行し、ステップS32-6に移行する。変動コマンド受信処理については、後述する。
ステップS32-6では、停止コマンド受信処理を実行し、ステップS32-7に移行する。停止コマンド受信処理については、後述する。
ステップS32-7では、オープニングコマンド受信処理を実行し、ステップS32-8に移行する。オープニングコマンド受信処理については、後述する。
【0337】
ステップS32-8では、遊技状況コマンド受信処理を実行し、一連の処理を終了して次の処理(ステップS31-4)に移行する。
遊技状況コマンド受信処理では、まず、遊技状況指定コマンドを受信したか否かを判定する。そして、遊技状況指定コマンドを受信したと判定した場合、後述する遊技状況設定処理を実行する。一方、遊技状況指定コマンドを受信していないと判定した場合、遊技状況設定処理を実行することなく、次の処理(ステップS31-4)に移行する。
遊技状況設定処理では、遊技状況指定コマンドを解析する。
そして、遊技状況指定コマンドにより発射可能状態の発生が指定されている場合、演出制御基板300のDRAM304の遊技状況フラグ領域において、発射可能状態の発生中であることを指定する値(例えば、「1」)を設定する。また、発射可能状態の発生中であることを示唆(報知)する演出を開始する。
一方、遊技状況指定コマンドにより発射可能状態の解除が指定されている場合、演出制御基板300のDRAM304の遊技状況フラグ領域において、発射可能状態の解除中であることを指定する値(例えば、「0」)を設定する。また、発射可能状態の発生中であることを示唆(報知)する演出を終了する。
【0338】
(保留コマンド受信処理)
次に、ステップS32-3の保留コマンド受信処理を説明する。
図39は、保留コマンド受信処理を示すフローチャートである。
保留コマンド受信処理は、ステップS32-3で実行されると、図39に示すように、ステップS36-1に移行する。
ステップS36-1では、保留数指定コマンドを受信したか否かを判定し、保留数指定コマンドを受信したと判定した場合(Yes)には、ステップS36-2に移行し、保留数指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-4)に移行する。
ステップS36-2では、保留数指定コマンドが保留数の増加(保留数が「1」増加したこと)を指定しているか否かを判定し、保留数指定コマンドが保留数の増加を指定していると判定した場合(Yes)には、ステップS36-3に移行し、保留数指定コマンドが保留数の増加を指定していない(保留数が「1」減少したことを指定している)と判定した場合(No)には、ステップS36-4に移行する。
【0339】
ステップS36-3では、保留数加算処理を実行し、一連の処理を終了して次の処理(ステップS32-4)に移行する。
保留数加算処理では、まず、保留数指定コマンドが特図1保留数の増加を指定しているか否かを判定する。
そして、保留数指定コマンドが特図1保留数の増加を指定していると判定した場合には、特図1保留数カウンタに設定されている値に「1」を加算した値を、新たに特図1保留数カウンタに設定する。また、新たに取得(記憶)された特図1遊技情報に対応する通常保留演出を開始する。
この際、保留図柄hを表示する表示領域として、保留図柄表示領域b2に含まれる4つの表示位置のうち、新たに取得された特図1遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置が設定される。ここで、新たに取得された特図1遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)は、特図1保留数カウンタの値に基づいて判定する。
【0340】
一方、保留数指定コマンドが特図2保留数の増加を指定していると判定した場合には、特図2保留数カウンタに設定されている値に「1」を加算した値を、新たに特図2保留数カウンタに設定する。また、新たに取得(記憶)された特図2遊技情報に対応する通常保留演出を開始する。
この際、保留図柄hを表示する表示領域として、保留図柄表示領域b3に含まれる4つの表示位置のうち、新たに取得された特図2遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置が設定される。ここで、新たに取得された特図2遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)は、特図2保留数カウンタの値に基づいて判定する。
【0341】
ステップS36-4では、保留数減算処理を実行し、一連の処理を終了して次の処理(ステップS32-4)に移行する。
保留数減算処理では、まず、保留数指定コマンドが特図1保留数の減算を指定しているか否かを判定する。
そして、保留数指定コマンドが特図1保留数の減算を指定していると判定した場合には、特図1保留数カウンタに設定されている値から「1」を減算した値を、新たに特図1保留数カウンタに設定する。また、保留図柄表示領域b2に表示されている各保留図柄hの表示位置をシフト(移動)する。
具体的には、保留図柄表示領域b1に表示されている保留図柄hに対応する保留演出を終了する。これによって、終了された保留演出に対応する保留図柄hの表示が終了される。
また、保留図柄表示領域b2における記憶エリア1に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、保留図柄表示領域b2(記憶エリア1に対応する表示位置)から保留図柄表示領域b1にシフトする。
また、保留図柄表示領域b2における記憶エリア2に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア2に対応する表示位置から記憶エリア1に対応する表示位置にシフトする。
また、保留図柄表示領域b2における記憶エリア3に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア3に対応する表示位置から記憶エリア2に対応する表示位置にシフトする。
また、保留図柄表示領域b2における記憶エリア4に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア4に対応する表示位置から記憶エリア3に対応する表示位置にシフトする。
【0342】
一方、保留数指定コマンドが特図2保留数の減算を指定していると判定した場合には、特図2保留数カウンタに設定されている値から「1」を減算した値を、新たに特図2保留数カウンタに設定する。また、保留図柄表示領域b3に表示されている各保留図柄hの表示位置を変更(シフト)する。
具体的には、保留図柄表示領域b1に表示されている保留図柄hに対応する保留演出を終了する。これによって、終了された保留演出に対応する保留図柄hの表示が終了される。
また、保留図柄表示領域b3における記憶エリア1に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、保留図柄表示領域b3(記憶エリア1に対応する表示位置)から保留図柄表示領域b1にシフトする。
また、保留図柄表示領域b3における記憶エリア2に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア2に対応する表示位置から記憶エリア1に対応する表示位置にシフトする。
また、保留図柄表示領域b3における記憶エリア3に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア3に対応する表示位置から記憶エリア2に対応する表示位置にシフトする。
また、保留図柄表示領域b3における記憶エリア4に対応する表示位置に保留図柄hが表示されている場合には、当該保留図柄hの表示位置を、記憶エリア4に対応する表示位置から記憶エリア3に対応する表示位置にシフトする。
【0343】
(先読みコマンド受信処理)
次に、ステップS32-4の先読みコマンド受信処理を説明する。
図40は、先読みコマンド受信処理を示すフローチャートである。
先読みコマンド受信処理は、ステップS32-4で実行されると、図40に示すように、ステップS33-1に移行する。
ステップS33-1では、先読み指定コマンド(第1先読み指定コマンド、第2先読み指定コマンド及び第3先読み指定コマンド)を受信したか否かを判定し、先読み指定コマンドを受信したと判定した場合(Yes)には、ステップS33-2に移行し、先読み指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
【0344】
ステップS33-2では、先読み情報解析処理を実行し、ステップS33-3に移行する。先読み情報解析処理では、先読み指定コマンドが指定する情報を、保留情報として、演出制御基板300のDRAM304の所定領域に記憶する。
演出制御基板300のDRAM304には、保留情報を記憶することが可能な保留情報記憶領域が設定されている。また、保留情報記憶領域として、第1特別図柄抽選(RAM230の特図1遊技情報記憶領域)に対応する第1保留情報記憶領域と、第2特別図柄抽選(RAM230の特図2遊技情報記憶領域)に対応する第2保留情報記憶領域と、が設定されている。
第1保留情報記憶領域は、保留情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。そして、第1保留情報記憶領域には、特図1遊技情報記憶領域に記憶されている特図1遊技情報に対応する保留情報が記憶される。すなわち、第1保留情報記憶領域の記憶エリア1に記憶されている保留情報は、特図1遊技情報記憶領域の記憶エリア1に記憶されている特図1遊技情報に対応している。また、第1保留情報記憶領域の記憶エリア2に記憶されている保留情報は、特図1遊技情報記憶領域の記憶エリア2に記憶されている特図1遊技情報に対応している。また、第1保留情報記憶領域の記憶エリア3に記憶されている保留情報は、特図1遊技情報記憶領域の記憶エリア3に記憶されている特図1遊技情報に対応している。また、第1保留情報記憶領域の記憶エリア4に記憶されている保留情報は、特図1遊技情報記憶領域の記憶エリア4に記憶されている特図1遊技情報に対応している。
第2保留情報記憶領域は、保留情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。そして、第2保留情報記憶領域には、特図2遊技情報記憶領域に記憶されている特図2遊技情報に対応する保留情報が記憶される。すなわち、第2保留情報記憶領域の記憶エリア1に記憶されている保留情報は、特図2遊技情報記憶領域の記憶エリア1に記憶されている特図2遊技情報に対応している。また、第2保留情報記憶領域の記憶エリア2に記憶されている保留情報は、特図2遊技情報記憶領域の記憶エリア2に記憶されている特図2遊技情報に対応している。また、第2保留情報記憶領域の記憶エリア3に記憶されている保留情報は、特図2遊技情報記憶領域の記憶エリア3に記憶されている特図2遊技情報に対応している。また、第2保留情報記憶領域の記憶エリア4に記憶されている保留情報は、特図2遊技情報記憶領域の記憶エリア4に記憶されている特図2遊技情報に対応している。
各保留情報は、停止図柄の種別を示す図柄情報と、変動モードの内容(「変動モード番号」又は「不定値」)を示す第1変動情報と、変動パターンの内容(「変動パターン番号」又は「不定値」)を示す第2変動情報と、を含んでなる。
【0345】
先読み情報解析処理では、まず、受信した第1先読み指定コマンドが第1特別図柄抽選に対応するものであるか否かを判定する。
そして、受信した第1先読み指定コマンドが第1特別図柄抽選に対応するものであると判定した場合には、第1先読み指定コマンドが指定する停止図柄の種別(「はずれ図柄」又は「大当りp図柄」)と、第2先読み指定コマンドが指定する変動モードの内容(「変動モードm」又は「不定値」)と、第3先読み指定コマンドが指定する変動パターンの内容(「変動パターンn」又は「不定値」)と、を解析して、解析した停止図柄の種別に対応する図柄情報と、解析した変動モードの内容に対応する第1変動情報と、解析した変動パターンの内容に対応する第2変動情報と、を含む保留情報を生成する。そして、生成した保留情報を、第1保留情報記憶領域に記憶(保存)する。
一方、受信した第1先読み指定コマンドが第2特別図柄抽選に対応するものであると判定した場合には、第1先読み指定コマンドが指定する停止図柄の種別(「はずれ図柄」又は「大当りp図柄」)と、第2先読み指定コマンドが指定する変動モードの内容(「変動モードm」又は「不定値」)と、第3先読み指定コマンドが指定する変動パターンの内容(「変動パターンn」又は「不定値」)と、を解析して、解析した停止図柄の種別に対応する図柄情報と、解析した変動モードの内容に対応する第1変動情報と、解析した変動パターンの内容に対応する第2変動情報と、を含む保留情報を生成する。そして、生成した保留情報を、第2保留情報記憶領域に記憶(保存)する。
以下の説明では、ステップS33-2で保留情報記憶領域に記憶された保留情報を、「先読み対象保留情報」とする。また、第1保留情報記憶領域に記憶されている保留情報のうち、先読み対象保留情報より先に報知表示(変動表示及び停止表示)が実行される保留情報を、「先行保留情報」とする。
【0346】
ステップS33-3では、先読み予告演出を実行中であるか否かを判定し、先読み予告演出を実行中でないと判定した場合(No)には、ステップS33-4に移行し、先読み予告演出を実行中であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
本実施形態では、先読み予告演出の実行中には、演出制御基板300のDRAM304の先読み予告演出中フラグ領域に「1」が設定される。したがって、ステップS33-3では、先読み予告演出中フラグ領域に「1」が設定されているか否かに基づいて、先読み予告演出を実行中であるか否かを判定する。
ステップS33-4では、先読み予告演出実行条件を満たすか否かを判定し、先読み予告演出実行条件を満たすと判定した場合(Yes)には、ステップS33-5に移行し、先読み予告演出実行条件を満たさないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
本実施形態では、(1)先読み対象保留情報が、特図1遊技情報に対応する保留情報であること、(2)所定数(本実施形態では、「2」)以上の先行保留情報が記憶されていること、(3)変動パターンの種別として「ノーマルリーチ変動」又は「スーパーリーチ変動」に属する種別(変動パターン番号)を示す先行保留情報が存在しないこと、(4)時短制御の停止中であること、(5)大当り遊技状態の生起中でないこと、の全ての条件を満たす場合に、先読み予告演出実行条件を満たすと判定される。
なお、先読み予告演出実行条件の内容は、適宜、変更することが可能である。すなわち、上記(1)~(5)の全ての条件ではなく、上記(1)~(5)のうち一又は複数の条件を満たす場合に、先読み予告演出実行条件を満たすと判定される構成としても構わない。また、先読み予告演出実行条件として、上記(1)~(5)の条件とは異なる他の条件が含まれていても構わない。
【0347】
ステップS33-5では、先読み予告演出抽選処理を実行し、ステップS33-6に移行する。先読み予告演出抽選処理では、先読み予告演出を実行するか否かを決定するための先読み予告演出抽選を実行する。
演出制御基板300の制御ROM302には、先読み予告演出抽選の当り値が登録された先読み予告演出抽選テーブルが格納されている。
先読み予告演出抽選処理では、まず、保留予告出現指定情報設定領域に記憶されている保留予告出現指定情報を確認する。そして、保留予告出現指定情報設定領域において、非出現指定情報が設定されている場合には、先読み予告演出抽選を実行しない(先読み予告演出を実行しないことを決定する)。一方、保留予告出現指定情報設定領域において、出現指定情報が設定されている場合には、先読み予告演出抽選を実行する。
先読み予告演出抽選では、まず、所定の乱数カウンタから先読み予告演出抽選乱数を取得する。そして、取得した先読み予告演出抽選乱数と、先読み予告演出抽選テーブルと、に基づいて、先読み予告演出を実行するか否かを判定する。
ステップS33-6では、ステップS33-5で実行された先読み予告演出抽選に当選したか否かを判定し、先読み予告演出抽選に当選したと判定した場合(Yes)には、ステップS33-7に移行し、先読み予告演出抽選に落選したと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
【0348】
ステップ33-7では、先読み予告演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-5)に移行する。先読み予告演出設定処理では、先読み予告演出(保留予告演出)の内容を設定する。
具体的に、先読み予告演出設定処理では、まず、保留最終態様選択処理を実行する。保留最終態様選択処理では、保留最終態様を選択・設定する。
「保留最終態様」とは、保留予告演出において最終的に変化する予告対象保留図柄hyの態様をいう。
演出制御基板300の制御ROM302には、保留最終態様抽選乱数と、保留最終態様と、の対応が登録された保留最終色抽選テーブルが格納されている。
また、保留最終態様抽選テーブルとして、変動パターンの各種別に対応する保留最終態様抽選テーブルが格納されている。
保留最終態様選択処理では、まず、所定の乱数カウンタから保留最終態様抽選乱数を取得する。また、先読み対象保留情報が示す変動パターンの種別を確認して、この確認結果に対応する保留最終態様抽選テーブルを読み出す。そして、取得した保留最終態様抽選乱数と、読み出した保留最終態様抽選テーブと、に基づいて、保留最終態様を選択(判定)する。
【0349】
先読み予告演出設定処理では、次に、保留変化契機選択処理を実行する。保留変化契機選択処理では、保留変化契機を選択・設定する。
演出制御基板300の制御ROM302には、保留変化契機抽選乱数と、保留変化パターンと、の対応が登録された保留変化契機抽選テーブルが格納されている。
「保留変化パターン」は、保留変化契機の組み合わせを指定する情報(シナリオデータ)となっている。
また、保留変化契機抽選テーブルとして、特図1保留数(「2」~「4」)と、保留最終態様と、の組み合わせのそれぞれに対応する保留変化契機抽選テーブルが格納されている。
保留変化契機選択処理では、まず、所定の乱数カウンタから保留変化契機抽選乱数を取得する。また、特図1保留数と、保留最終態様選択処理で選択された保留最終態様と、を確認して、この確認結果に対応する保留変化契機抽選テーブルを読み出す。そして、取得した保留変化契機抽選乱数と、読み出した保留変化契機抽選テーブルと、に基づいて、保留予告演出番号を決定(判定)する。そして、決定した保留予告演出番号に対応する演出シナリオテーブルを読み出して、読み出した演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマを、演出シナリオ領域に設定する。
【0350】
先読み予告演出設定処理では、次に、保留変化内容選択処理を実行する。保留変化内容選択処理では、各回の保留変化契機に対応する保留変化内容を選択・設定する。
具体的には、保留変化内容選択処理では、各回の保留変化契機に対応する保留変化内容として、変化前の予告対象保留図柄hyの態様と、変化後の予告対象保留図柄hyの態様と、が設定される。
本実施形態では、保留変化契機選択処理で設定された1回又は複数回の保留変化契機のうち、後に到来(発生)する保留変化契機(後の回の保留変化契機)から順に、各回の保留変化契機に対応する保留変化内容が選択される。
例えば、保留変化契機選択処理で3[回]の保留変化契機が設定された場合には、3回目(最終回)の保留変化契機、2回目の保留変化契機、1回目の保留変化契機の順に、各回の保留変化契機に対応する保留変化内容が選択される。
また、各回の保留変化契機に対応する保留変化内容を選択する際には、まず、変化後の予告対象保留図柄hyの態様が選択され、次に、変化前の予告対象保留図柄hyの態様が選択される。この際、変化前の予告対象保留図柄hyの態様として、変化後の予告対象保留図柄hyの態様と比較して、期待度が低い態様が決定される。これによって、各回の保留変化契機の到来に応じて、予告対象保留図柄hyの態様が、期待度が高い態様に変化(昇格)する。
演出制御基板300の制御ROM302には、保留変化内容抽選乱数と、変化前の予告対象保留図柄hyの態様と、の対応が登録された保留変化内容抽選テーブルが格納されている。
また、保留変化内容抽選テーブルとして、保留図柄hの各態様(変化後の予告対象保留図柄hyの態様)に対応する保留変化内容抽選テーブルが格納されている。
そして、保留図柄hの各態様(変化後の予告対象保留図柄hyの態様)に対応する保留変化内容抽選テーブルでは、変化前の予告対象保留図柄hyの態様として、変化後の予告対象保留図柄hyの態様と比較して、期待度が低い態様のみが登録されている。
保留変化内容選択処理では、まず、保留変化契機選択処理で設定された保留変化契機のうち、最終回の保留変化契機について、保留変化内容を選択する。これには、まず、最終回の保留変化契機に係る変化後の予告対象保留図柄hyの態様を選択する。この際、最終回の保留変化契機に係る変化後の予告対象保留図柄hyの態様として、保留最終態様選択処理で選択された保留最終態様を選択する。次に、最終回の保留変化契機に係る変化前の予告対象保留図柄hyの態様を選択する。これには、まず、所定の乱数カウンタから保留変化内容抽選乱数を取得する。また、最終回の保留変化契機について選択された変化後の予告対象保留図柄hyの態様に対応する保留変化内容抽選テーブルを読み出す。そして、取得した保留変化内容抽選乱数と、読み出した保留変化内容抽選テーブルと、に基づいて、最終回の保留変化契機に係る変化前の予告対象保留図柄hyの態様を選択する。
保留変化内容選択処理では、次に、保留変化契機選択処理で設定された保留変化契機のうち、最終回の保留変化契機を除いた、各回の保留変化契機について、保留変化内容を選択する。この際、後に到来する保留変化契機から順に、各回の保留変化契機に対応する保留変化内容を決定する。
各回の保留変化契機に対応する保留変化内容を決定するには、まず、当該保留変化契機に係る変化後の予告対象保留図柄hyの態様を決定する。この際、今回の保留変化契機に係る変化後の予告対象保留図柄hyの態様として、次回の保留変化契機について既に選択されている変化前の予告対象保留図柄hyの態様を選択する。次に、今回の保留変化契機に係る変化前の予告対象保留図柄hyの態様を決定する。これには、まず、所定の乱数カウンタから保留変化内容抽選乱数を取得する。また、今回の保留変化契機について選択された変化後の予告対象保留図柄hyの態様に対応する保留変化内容抽選テーブルを読み出す。そして、取得した保留変化内容抽選乱数と、読み出した保留変化内容抽選テーブルと、に基づいて、今回の保留変化契機に係る変化前の予告対象保留図柄hyの態様を選択する。
保留変化内容選択処理では、次に、各回の保留変化契機について選択された保留変化内容を、演出シナリオ設定領域における当該保留変化契機に対応する領域に設定する。これによって、各回の保留変化契機の到来に応じて、当該保留変化契機について設定されている保留変化内容にしたがって、予告対象保留図柄hyの態様が変化(昇格)する。
【0351】
先読み予告演出設定処理では、次に、演出制御基板300のDRAM304の先読み予告演出中フラグ領域に「1」を設定する。
以上によって、保留予告演出が開始される。
なお、図示しない処理によって、保留予告演出の終了に応じて、先読み予告演出中フラグ領域に「0」が設定される。
【0352】
(変動コマンド受信処理)
次に、ステップS32-5の変動コマンド受信処理を説明する。
図41は、変動コマンド受信処理を示すフローチャートである。
変動コマンド受信処理は、ステップS32-5で実行されると、図41に示すように、ステップS34-1に移行する。
ステップS34-1では、所定の制御コマンドを受信したか否かを判定し、所定の制御コマンドを受信したと判定した場合(Yes)には、ステップS34-2に移行し、所定の制御コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-6)に移行する。
ここで、所定の制御コマンドは、図柄種別指定コマンド、変動モード指定コマンド及び変動パターン指定コマンドをいう。
ステップS34-2では、停止演出決定処理を実行し、ステップS34-3に移行する。停止演出決定処理では、停止演出番号(停止演出の態様)を決定する。
具体的に、停止演出決定処理では、図柄種別指定コマンドが指定する停止図柄の種別に基づいて、停止演出番号(停止演出の態様)を決定する。そして、決定した停止演出番号を、演出制御基板300のDRAM304の停止演出番号記憶領域に保存する。
【0353】
ステップS34-3では、変動演出決定処理を実行し、ステップS34-4に移行する。変動演出決定処理では、変動演出番号(変動演出の態様)を決定する。
具体的に、変動演出決定処理では、まず、前半変動演出番号(前半変動演出の態様)を決定する前半変動演出決定処理を実行する。
演出制御基板300の制御ROM302には、変動モード番号(変動モードの種別)と、前半変動演出番号(前半変動演出の態様)と、の対応が登録された前半変動演出抽選テーブルが格納されている。
前半変動演出決定処理では、まず、前半変動演出抽選テーブルを読み出す。そして、前半変動演出抽選テーブルに登録されている前半変動演出番号のうち、変動モード指定コマンドが指定する変動モード番号に対応する前半変動演出番号を決定(選択)する。
【0354】
変動演出決定処理では、次に、後半変動演出番号(後半変動演出の態様)を決定する後半変動演出決定処理を実行する。
演出制御基板300の制御ROM302には、変動パターン番号(変動パターンの種別)と、後半変動演出番号(後半変動演出の態様)と、の対応が登録された後半変動演出抽選テーブルが格納されている。
後半変動演出決定処理では、まず、後半変動演出抽選テーブルを読み出す。そして、後半変動演出抽選テーブルに登録されている後半変動演出番号のうち、変動パターン指定コマンドが指定する変動パターン番号に対応する後半変動演出番号を決定(選択)する。
【0355】
ステップS34-4では、予告演出決定処理を実行し、ステップS34-5に移行する。予告演出決定処理では、メイン予告演出番号(メイン予告演出の態様)を選択する。
演出制御基板300の制御ROM302には、予告演出抽選乱数と、メイン予告演出番号(メイン予告演出の態様)と、の対応が登録された予告演出抽選テーブルが格納されている。
また、予告演出抽選テーブルとして、各停止図柄番号(停止図柄の各種別)に対応する予告演出抽選テーブルが格納されている。
メイン予告演出の態様を決定するには、まず、所定の乱数カウンタから予告演出抽選乱数を取得する。また、停止図柄指定コマンドが指定する停止図柄番号を確認して、この確認結果に対応する予告演出抽選テーブルを読み出す。そして、取得した予告演出抽選乱数と、読み出した予告演出抽選テーブルと、に基づいて、メイン予告演出番号を決定(判定)する。
【0356】
ステップS34-5では、変動演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-6)に移行する。変動演出設定処理では、変動演出の演出シナリオテーブルを設定する。
具体的には、変動演出設定処理では、ステップS34-3で決定した前半変動演出番号に対応する演出シナリオテーブルと、ステップS34-3で決定した後半変動演出番号に対応する演出シナリオテーブルと、を読み出す。
次に、読み出した演出シナリオテーブルを合成して、変動演出に係る演出シナリオテーブルを生成する。そして、生成した演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。
また、ステップS34-4で決定したメイン予告演出番号に対応する演出シナリオテーブルを読み出す。そして、読み出した演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、変動演出の実行中における所定のタイミングで、メイン予告演出が開始される。
【0357】
(停止コマンド受信処理)
次に、ステップS32-6の停止コマンド受信処理を説明する。
図42は、停止コマンド受信処理を示すフローチャートである。
停止コマンド受信処理は、ステップS32-6で実行されると、図42に示すように、ステップS35-1に移行する。
ステップS35-1では、停止指定コマンドを受信したか否かを判定し、停止指定コマンドを受信したと判定した場合(Yes)には、ステップS35-2に移行し、停止指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-7)に移行する。
ステップS35-2では、停止演出開始処理を実行し、一連の処理を終了して次の処理(ステップS32-7)に移行する。停止演出開始処理では、停止演出の演出シナリオテーブルを設定する。
具体的に、停止演出設定処理では、停止演出番号記憶領域に保存されている停止演出番号を取得し、取得した停止演出番号に対応する演出シナリオテーブルを読み出す。そして、読み出した演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、停止演出(演出図柄z1,z2の停止表示)が開始される。
【0358】
(オープニングコマンド受信処理)
次に、ステップS32-7のオープニングコマンド受信処理を説明する。
図43は、オープニングコマンド受信処理を示すフローチャートである。
オープニングコマンド受信処理は、ステップS32-7で実行されると、図43に示すように、ステップS39-1に移行する。
ステップS39-1では、オープニング指定コマンドを受信したか否かを判定し、オープニング指定コマンドを受信したと判定した場合(Yes)には、ステップS39-2に移行し、オープニング指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-8)に移行する。
ステップS39-2では、当選演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-8)に移行する。当選演出設定処理では、当選演出の演出シナリオテーブルを設定する。
具体的に、当選演出設定処理では、オープニング指定コマンドが指定する停止図柄の種別に応じて、当選演出番号を選択する。また、選択した当選演出番号に対応する演出シナリオテーブルを読み出す。そして、読み出した演出シナリオテーブル、及び、当該演出シナリオテーブルに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、当選演出が開始される。
【0359】
(Vsync割込み処理)
次に、演出制御基板300のCPU310が実行するVsync割込み処理を説明する。
図45は、Vsync割込み処理を示すフローチャートである。
表示回路320の同期信号生成回路は、16.66[ms]ごとに、垂直同期信号(Vsync)を発生させる(垂直同期信号をハイレベルとする)。
演出制御基板300のCPU310は、同期信号生成回路による垂直同期信号の発生に基づいて、所定周期ごとに、図45に示すVsync割込み処理を開始する。本実施形態では、同期信号生成回路による垂直同期信号が発生するごとに、Vsync割込み処理が実行される。ここで、同期信号生成回路による垂直同期信号が所定回数(例えば、2[回])発生するごとに、Vsync割込み処理が実行される構成としても構わない。Vsync割込み処理が開始されると、まず、ステップS40-1に移行する。
ステップS40-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、ステップS40-2に移行し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、当該Vsync割込み処理を終了する。
【0360】
ステップS40-2では、表示シナリオ更新処理を実行し、ステップS40-3に移行する。表示シナリオ更新処理では、表示シナリオ設定領域に設定されている各表示シナリオテーブルについて、当該表示シナリオテーブルに対応するサブシナリオタイマの値を更新する。
ステップS40-3では、フレームバッファ切替処理を実行し、ステップS40-4に移行する。フレームバッファ切替処理では、フレームバッファ領域の指定(描画領域の指定・出力領域の指定)を切り替える。
具体的に、フレームバッファ切替処理では、2つのフレームバッファ領域のうち、描画領域に指定されているフレームバッファ領域の指定を、描画領域から出力領域に切り替えるとともに、出力領域に指定されているフレームバッファ領域の指定を、出力領域から描画領域に切り替える。
【0361】
ステップS40-4では、描画コマンドバッファ切替処理を実行し、ステップS40-5に移行する。描画コマンドバッファ切替処理では、描画コマンドバッファ領域の指定(構築領域の指定・転送領域の指定)を切り替える。
具体的に、描画コマンドバッファ切替処理では、2つの描画コマンドバッファ領域のうち、構築領域に指定されている描画コマンドバッファ領域の指定を、構築領域から転送領域に切り替えるとともに、転送領域に指定されている描画コマンドバッファ領域の指定を、転送領域から構築領域に切り替える。
ステップS40-5では、スケーラ倍率変更処理を実行し、ステップS40-6に移行する。スケーラ倍率変更処理については、後述する。
【0362】
ステップS40-6では、描画・出力開始処理を実行し、ステップS40-7に移行する。描画・出力開始処理では、描画回路322による描画処理の開始が指定されるとともに、表示回路320による出力処理の開始が指定される。
具体的に、描画・出力開始処理では、マイクロコンピュータ301の描画レジスタに、描画処理の開始を指定する値を設定する。これによって、描画回路322による描画処理が開始される。すなわち、描画回路322により、DRAM304のプリロード領域に記憶(プリロード)されている1フレーム分の圧縮画像データを用いて、描画領域に指定されているフレームバッファ領域における1フレーム分の描画データの生成が開始される。
また、描画・出力開始処理では、マイクロコンピュータ301の表示レジスタに、出力処理の開始を指定する値を設定する。これによって、表示回路320による出力処理が開始される。すなわち、表示回路320により、出力領域に指定されているフレームバッファ領域に生成されている1フレーム分の描画データに基づく映像信号の生成・出力が開始される。
【0363】
ステップS40-7では、描画コマンド転送開始処理を実行し、ステップS40-8に移行する。描画コマンド転送開始処理では、転送回路318による転送処理の開始が指定されるとともに、プリローダ回路319によるプリロード処理の開始が指定される。
具体的に、描画コマンド転送開始処理では、マイクロコンピュータ301のデータ転送レジスタに、プリローダ回路319に対してディスプレイリストを転送する転送処理の開始を指定する値を設定する。これによって、転送回路318による転送処理が開始される。すなわち、転送回路318により、プリローダ回路319に対する転送領域に指定されている描画コマンドバッファ領域に生成されているディスプレイリストの転送が開始される。
また、描画コマンド転送開始処理では、マイクロコンピュータ301のディスプレイプリローダレジスタに、プリロード処理の開始を指定する値を設定する。これによって、プリローダ回路319によるプリロード処理が開始される。すなわち、プリローダ回路319により、転送回路318により転送されるディスプレイリスト(描画コマンド)で指定されている1フレーム分の圧縮画像データの転送(CGROM303からDRAM304のプリロード領域への転送)と、ディスプレイリスト(描画コマンド)の書き換えと、が開始される。
【0364】
ステップS40-8では、コマンド構築タスク起床処理を実行し、当該Vsync割込み処理を終了する。コマンド構築タスク起床処理では、コマンド構築タスク処理の起床を設定する。これによって、後述するコマンド構築タスク処理が開始される。
【0365】
(スケーラ倍率変更処理)
次に、ステップS40-5で実行されるスケーラ倍率変更処理を説明する。
図46は、スケーラ倍率変更処理を示すフローチャートである。
スケーラ倍率変更処理は、ステップS40-5で実行されると、図46に示すように、ステップS45-1に移行する。
ステップS45-1では、CPU用ワークメモリ311のスケーラ倍率変更要求フラグ領域に設定されている値が「1」であるか否かを判定し、スケーラ倍率変更要求フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、ステップS45-2に移行し、スケーラ倍率変更要求フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、一連の処理を終了して次の処理(ステップS40-6)に移行する。
ステップS45-2では、倍率変更タイミングカウンタ更新処理を実行し、ステップS45-3に移行する。倍率変更タイミングカウンタ更新処理では、倍率変更タイミングカウンタの値から「1」を減算する。これによって、倍率変更タイミングカウンタの値は、Vsync(垂直同期信号)が発生するごとに、「1」減算される。
【0366】
ステップS45-3では、倍率変更タイミングが到来したか否かを判定し、倍率変更タイミングが到来したと判定した場合(Yes)には、ステップS45-4に移行し、倍率変更タイミングが到来していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS40-6)に移行する。
ここで、倍率変更タイミングカウンタの値≦「0」である場合、倍率変更タイミングが到来したと判定し、倍率変更タイミングカウンタの値≧「1」である場合、倍率変更タイミングが到来していないと判定する。
ステップS45-4では、スケーラ倍率変更要求フラグ解除処理を実行し、ステップS45-5に移行する。スケーラ倍率変更要求フラグ解除処理では、CPU用ワークメモリ311のスケーラ倍率変更要求フラグ領域において、スケーラ倍率の変更要求の非発生を指定する値(本実施形態では、「0」)を設定する。
ステップS45-5では、倍率設定処理を実行し、一連の処理を終了して次の処理(ステップS40-6)に移行する。倍率設定処理では、CPU用ワークメモリ311のスケーラ倍率設定領域に設定されているスケーラ倍率(パラメータ)を、マイクロコンピュータ301のスケーラ倍率レジスタに設定する。
ここで、ステップS45-5でスケーラ倍率レジスタに設定された変更後のスケーラ倍率は、即座に有効とされず、次回のVsyncの発生を契機として有効とされる。これによって、次回のVsyncの発生を契機として、スケーラ倍率レジスタに設定された変更後のスケーラ倍率が有効となり、その後、表示回路320のスケーラ回路により、変更後のスケーラ倍率に応じたスケーリング処理が実行される。
【0367】
(コマンド構築タスク処理)
次に、ステップS40-8で起床されるコマンド構築タスク処理を説明する。
図47は、コマンド構築タスク処理を示すフローチャートである。
コマンド構築タスク処理は、ステップS40-8で起床されると、図47に示すように、ステップS46-1に移行する。
ステップS46-1では、当該フレーム(今回のフレーム)の表示演出の内容が3D表示演出であるか否かを判定し、当該フレームの表示演出の内容が3D表示演出でない(2D表示演出である)と判定した場合(No)には、ステップS46-2に移行し、当該フレームの表示演出の内容が3D表示演出であると判定した場合(Yes)には、ステップS46-7に移行する。
ここで、表示シナリオ設定領域に設定されている表示シナリオテーブルに登録されている情報のうち、現在のサブシナリオタイマの値に対応する情報(以下、「当該フレーム情報」とする)に基づいて、当該フレームの表示演出の内容が3D表示演出であるか否かを判定する。
すなわち、当該フレーム情報は、当該フレームの表示演出の内容を指定する情報となっている。
そして、当該フレーム情報に三次元素材画像データの描画を指定する情報が含まれていない場合(当該フレーム情報が2D表示演出を指定する場合)、当該フレームの表示演出の内容が3D表示演出でない(2D表示演出である)と判定する。
一方、当該フレーム情報に三次元素材画像データの描画を指定する情報が含まれている場合(当該フレーム情報が3D表示演出を指定する場合)、当該フレームの表示演出の内容が3D表示演出であると判定する。
【0368】
ステップS46-2では、前フレームの表示演出の内容が3D表示演出であるか否かを判定し、前フレームの表示演出の内容が3D表示演出であると判定した場合(Yes)には、ステップS46-3に移行し、前フレームの表示演出の内容が3D表示演出でない(2D表示演出である)と判定した場合(No)には、ステップS46-6に移行する。
ここで、図示しない処理により、各フレームの表示演出の内容(2D表示演出又は3D表示演出)を示す情報が、CPU用ワークメモリ311の所定領域に記憶(保存)される。そして、当該所定領域に記憶されている情報に基づいて、前フレームの表示演出の内容が3D表示演出であるか否かを判定する。
ステップS46-3では、スケーラ倍率変更要求フラグ設定処理を実行し、ステップS46-4に移行する。スケーラ倍率変更要求フラグ設定処理では、CPU用ワークメモリ311のスケーラ倍率変更要求フラグ領域において、スケーラ倍率の変更要求の発生を指定する値(本実施形態では、「1」)を設定する。
ステップS46-4では、変更倍率設定処理を実行し、ステップS46-5に移行する。変更倍率設定処理では、変更後のスケーラ倍率を設定する。
具体的に、変更倍率設定処理では、CPU用ワークメモリ311のスケーラ倍率設定領域において、2D表示演出に対応するスケーラ倍率(パラメータ)を設定する。
本実施形態では、2D表示演出に対応するスケーラ倍率として、垂直方向の倍率=130[%]、水平方向の倍率=130[%]が設定される。
【0369】
「スケーラ倍率」は、「スケーリング処理前の描画データのサイズ」に対する「スケーリング処理後の描画データのサイズ」の割合(比率)となっている。具体的に、スケーラ倍率=(「スケーリング処理後の描画データのサイズ」/「スケーリング処理前の描画データのサイズ」)×100[%]となっている。
これによって、垂直方向の倍率=100[%]である場合、「スケーリング処理前の描画データの垂直方向のサイズ」と、「スケーリング処理後の描画データの垂直方向のサイズ」と、が同一(等倍)となる(垂直方向について、拡大処理・縮小処理が施されない)。
一方、垂直方向の倍率>100[%]である場合、「スケーリング処理後の描画データの垂直方向のサイズ」が、「スケーリング前の描画データの垂直方向のサイズ」と比較して大きくなる(垂直方向について、拡大処理が施される)。
一方、垂直方向の倍率<100[%]である場合、「スケーリング処理後の描画データの垂直方向のサイズ」が、「スケーリング処理前の描画データの垂直方向のサイズ」と比較して小さくなる(垂直方向について、縮小処理が施される)。
また、水平方向の倍率=100[%]である場合、「スケーリング処理前の描画データの水平方向のサイズ」と、「スケーリング処理後の描画データの水平方向のサイズ」と、が同一(等倍)となる(水平方向について、拡大処理・縮小処理が施されない)。
一方、水平方向の倍率>100[%]である場合、「スケーリング処理後の描画データの水平方向のサイズ」が、「スケーリング処理前の描画データの水平方向のサイズ」と比較して大きくなる(水平方向について、拡大処理が施される)。
一方、水平方向の倍率<100[%]である場合、「スケーリング処理後の描画データの水平方向のサイズ」が、「スケーリング処理前の描画データの水平方向のサイズ」と比較して小さくなる(水平方向について、縮小処理が施される)。
【0370】
ステップS46-5では、倍率変更タイミング設定処理を実行し、ステップS46-6に移行する。倍率変更タイミング設定処理では、変更後のスケーラ倍率をスケーラ倍率レジスタに設定するタイミングを設定する。
ここで、後述するように、本実施形態では、所定のフレームに対応するディスプレイリストの構築から3フレーム後に、当該所定のフレームに対応する映像信号の生成・出力(スケーラ回路によるスケーリング処理)が実行される。
したがって、所定のフレームにおいて演出内容が変更(2D表示演出から3D表示演出に変更、又は、3D表示演出から2D表示演出に変更)される場合、当該所定のフレームに対応するディスプレイリストの構築から3フレーム後に、当該所定のフレームに対応する映像信号の生成・出力(スケーラ回路によるスケーリング処理)が実行される。
また、上記のように、マイクロコンピュータ301のスケーラ倍率レジスタに設定されているスケーラ倍率が変更されると、変更後のスケーラ倍率は、即座に有効とされず、次回のVsyncの発生を契機として有効とされる。
してみると、所定のフレームにおいて表示演出の内容が変更される場合、当該所定のフレームに対応するディスプレイリストの構築から2フレーム後に、変更後の表示演出の内容に対応するスケーラ倍率がスケーラ倍率レジスタに設定されると、当該所定のフレームに対応する映像信号が生成(スケーラ回路によるスケーリング処理が実行)されるときに、変更後の表示演出の内容に対応するスケーラ倍率が有効となり、変更後の表示演出の内容に対応するスケーラ倍率によるスケーラ処理を実行することが可能となる。
そこで、倍率変更タイミング設定処理では、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のフレームの2フレーム後が設定される。すなわち、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のコマンド構築タスク処理の終了後における2回目のVsyncの発生時が設定される。換言すると、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のコマンド構築タスク処理の終了後に実行される2回目のVsync割込み処理が設定される。
具体的に、倍率変更タイミング設定処理では、倍率変更タイミングカウンタの値として、「2」を設定する。
【0371】
ステップS46-6では、2D表示演出用コマンド構築処理を実行し、当該コマンド構築タスク処理を終了する。2D表示演出用コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、2D表示演出用のディスプレイリストを構築する。
具体的に、2D表示演出用コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、当該フレーム情報に基づいて、ディスプレイリストを構築する。
特に、2D表示演出用コマンド構築処理で構築されるディスプレイリスト(描画コマンド)には、当該フレームの表示演出の内容が2D表示演出であることを指定する情報(以下、「2D表示演出指定情報」とする)が含まれる。
【0372】
ステップS46-7では、前フレームの表示演出の内容が2D表示演出であるか否かを判定し、前フレームの表示演出の内容が2D表示演出であると判定した場合(Yes)には、ステップS46-8に移行し、前フレームの表示演出の内容が2D表示演出でない(3D表示演出である)と判定した場合(No)には、ステップS46-11に移行する。
ここで、上記のように、図示しない処理により、各フレームの表示演出の内容(2D表示演出又は3D表示演出)を示す情報が、CPU用ワークメモリ311の所定領域に記憶(保存)される。そして、当該所定領域に記憶されている情報に基づいて、前フレームの表示演出が2D表示演出であるか否かを判定する。
ステップS46-8では、スケーラ倍率変更要求フラグ設定処理を実行し、ステップS46-9に移行する。スケーラ倍率変更要求フラグ設定処理では、CPU用ワークメモリ311のスケーラ倍率変更要求フラグ領域において、スケーラ倍率の変更要求の発生を指定する値(本実施形態では、「1」)を設定する。
ステップS46-9では、変更倍率設定処理を実行し、ステップS46-10に移行する。変更倍率設定処理では、変更後のスケーラ倍率を設定する。
具体的に、変更倍率設定処理では、CPU用ワークメモリ311のスケーラ倍率設定領域において、3D表示演出に対応するスケーラ倍率(パラメータ)を設定する。
本実施形態では、3D表示演出に対応するスケーラ倍率として、垂直方向の倍率=100[%]、水平方向の倍率=100[%]が設定される。これによって、3D表示演出の描画データについては、拡大処理・縮小処理が施されない。
【0373】
ステップS46-10では、倍率変更タイミング設定処理を実行し、ステップS46-11に移行する。倍率変更タイミング設定処理では、変更後のスケーラ倍率をスケーラ倍率レジスタに設定するタイミングを設定する。
上記のように、所定のフレームにおいて表示演出の内容が変更される場合、当該所定のフレームに対応するディスプレイリストの構築から2フレーム後に、変更後の表示演出の内容に対応するスケーラ倍率がスケーラ倍率レジスタに設定されると、当該所定のフレームに対応する映像信号が生成(スケーラ回路によるスケーリング処理が実行)されるときに、変更後の表示演出の内容に対応するスケーラ倍率が有効となり、変更後の表示演出の内容に対応するスケーラ倍率によるスケーラ処理を実行することが可能となる。
そこで、倍率変更タイミング設定処理では、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のフレームの2フレーム後が設定される。すなわち、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のコマンド構築タスク処理の終了後における2回目のVsyncの発生時が設定される。換言すると、変更後のスケーラ倍率がスケーラ倍率レジスタに設定されるタイミングとして、現在のコマンド構築タスク処理の終了後に実行される2回目のVsync割込み処理が設定される。
具体的に、倍率変更タイミング設定処理では、倍率変更タイミングカウンタの値として、「2」を設定する。
【0374】
ステップS46-11では、3D表示演出用コマンド構築処理を実行し、当該コマンド構築タスク処理を終了する。3D表示演出用コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、3D表示演出用のディスプレイリストを構築する。
具体的に、3D表示演出用コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、当該フレーム情報に基づいて、ディスプレイリストを構築する。
特に、3D表示演出用コマンド構築処理で構築されるディスプレイリスト(描画コマンド)には、当該フレームの表示演出の内容が3D表示演出であることを指定する情報(以下、「3D表示演出指定情報」とする)が含まれる。
【0375】
(サウンド割込み処理)
次に、演出制御基板300のCPU310が実行するサウンド割込み処理を説明する。
図48は、サウンド割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、所定周期ごとに、図48に示すサウンド割込み処理を開始する。サウンド割込み処理が開始されると、まず、ステップS41-1に移行する。
ステップS41-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、ステップS41-2に移行し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、当該サウンド割込み処理を終了する。
【0376】
ステップS41-2では、音シナリオ更新処理を実行し、ステップS41-3に移行する。音シナリオ更新処理では、音シナリオ設定領域に設定されている各音シナリオテーブルについて、当該音シナリオテーブルに対応するサブシナリオタイマの値を更新する。

ステップS41-3では、音コマンド構築処理を実行し、当該サウンド割込み処理を終了する。音コマンド構築処理では、音コマンドバッファ領域において、音コマンドを生成する。
具体的に、音コマンド構築処理では、音コマンドバッファ領域において、音シナリオ設定領域に設定されている音シナリオテーブルに登録されている情報のうち、当該音シナリオテーブルに対応するサブシナリオタイマの値に対応する情報に基づいて、音コマンドを生成する。
【0377】
(ランプ割込み処理)
次に、演出制御基板300のCPU310が実行するランプ割込み処理を説明する。
図49は、ランプ割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、所定周期ごとに、図49に示すランプ割込み処理を開始する。ランプ割込み処理が開始されると、まず、ステップS42-1に移行する。
ステップS42-1では、ランプシナリオ更新処理を実行し、ステップS42-2に移行する。ランプシナリオ更新処理では、ランプシナリオ設定領域に設定されている各ランプシナリオテーブルについて、当該ランプシナリオテーブルに対応するサブシナリオタイマの値を更新する。
ステップS42-2では、ランプコマンド構築処理を実行し、当該ランプ割込み処理を終了する。ランプコマンド構築処理では、ランプコマンドバッファ領域において、ランプコマンドを生成する。
具体的に、ランプコマンド構築処理では、ランプコマンドバッファ領域において、ランプシナリオ設定領域に設定されているランプシナリオテーブルに登録されている情報のうち、当該ランプシナリオテーブルに対応するサブシナリオタイマの値に対応する情報に基づいて、ランプコマンドを生成する。
【0378】
(可動体割込み処理)
次に、演出制御基板300のCPU310が実行する可動体割込み処理を説明する。
図50は、可動体割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図50に示す可動体割込み処理を開始する。可動体割込み処理が開始されると、まず、ステップS43-1に移行する。
ステップS43-1では、レジスタ退避処理を実行し、ステップS43-2に移行する。レジスタ退避処理では、レジスタの値をDRAM304の退避領域に退避させる。
ステップS43-2では、可動体シナリオ更新処理を実行し、ステップS43-3に移行する。可動体シナリオ更新処理では、可動体シナリオ設定領域に設定されている各可動体シナリオテーブルについて、当該可動体シナリオテーブルに対応するサブシナリオタイマの値を更新する。
ステップS43-3では、モータコマンド構築処理を実行し、ステップS43-4に移行する。モータコマンド構築処理では、モータコマンドバッファ領域において、モータコマンドを生成する。
具体的に、モータコマンド構築処理では、モータコマンドバッファ領域において、可動体シナリオ設定領域に設定されている可動体シナリオテーブルに登録されている情報のうち、当該可動体シナリオテーブルに対応するサブシナリオタイマの値に対応する情報に基づいて、モータコマンドを生成する。
ステップS43-4では、レジスタ復帰処理を実行し、当該可動体割込み処理を終了する。レジスタ復帰処理では、ステップS43-1で退避しておいたレジスタの値を復帰させる。
【0379】
(描画処理)
次に、描画回路322が実行する描画処理を説明する。
図55は、2D表示演出時描画処理の内容を示す図である。図56は、3D表示演出時描画処理の内容を示す図である。
描画回路322は、Vsyncの発生(具体的には、描画レジスタに描画処理の開始を指定する値が設定されたこと)を契機として、描画処理を開始する。
各回の描画処理では、プリローダ回路319から転送されるディスプレイリストが解析され、この解析結果にしたがって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データが生成される。
この際、各回の描画処理では、DRAM304のプリロード領域に記憶(プリロード)されている1フレーム分の圧縮画像データを用いて、描画データが生成される。
【0380】
プリローダ回路319から転送されるディスプレイリストには、一又は複数の描画コマンドが、所定の順番で、登録されている。
各描画コマンドでは、描画に用いる画像データ(圧縮画像データ)の画像アドレス、当該画像データの描画時の倍率(拡大率・縮小率)、当該画像データを描画する座標(フレームバッファ領域又は合成用バッファ領域における座標)等が指定されている。
そして、描画処理では、ディスプレイリストに登録されている全ての描画コマンドについて、登録されている順番にしたがって、各描画コマンドに基づく描画が、順次、実行されることによって、1フレーム分の描画データが生成される。
特に、本実施形態では、プリローダ回路319から転送されるディスプレイリストに2D表示演出指定情報が含まれている場合、2D表示演出時描画処理により1フレーム分の描画データが生成される。
一方、プリローダ回路319から転送されるディスプレイリストに3D表示演出指定情報が含まれている場合、3D表示演出時描画処理により1フレーム分の描画データが生成される。
【0381】
2D表示演出時描画処理は、ディスプレイリストにおいて、二次元画像データの描画を指定する描画コマンド(以下、「二次元画像描画コマンド」とする)のみが含まれている場合(後述する三次元画像描画コマンドが含まれていない場合)に実行される。
2D表示演出時描画処理では、描画領域に指定されているフレームバッファ領域のみを用いて、1フレーム分の描画データが生成される。
すなわち、2D表示演出時描画処理では、ディスプレイリストに登録されている各二次元画像描画コマンドが指定する二次元画像データが、描画領域に指定されているフレームバッファ領域において描画される。この際、各二次元画像描画コマンドが指定する二次元画像データは、当該描画コマンドが指定する座標にしたがって、描画される。
これによって、図55に示すように、2D表示演出時描画処理では、ディスプレイリストに登録されている各二次元画像描画コマンドが、順次、実行されると、描画領域に指定されているフレームバッファ領域において、二次元画像データが、順次、描画(合成)される。
そして、ディスプレイリストに登録されている全ての二次元画像描画コマンドに基づく描画が実行されると、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データ(二次元画像データのみからなる描画データ)が生成される。
【0382】
一方、3D表示演出時描画処理は、ディスプレイリストにおいて、三次元素材画像データの描画を指定する描画コマンド(以下、「三次元画像描画コマンド」とする)が含まれている場合に実行される。
本実施形態では、3D表示演出時描画処理が実行される場合、ディスプレイリストにおいて、1つ以上の三次元画像描画コマンドと、1つ以上の二次元画像描画コマンドと、が含まれている。
3D表示演出時描画処理では、描画領域に指定されているフレームバッファ領域と、合成用バッファ領域と、を用いて、1フレーム分の描画データが生成される。
すなわち、3D表示演出時描画処理では、ディスプレイリストに登録されている各二次元画像描画コマンドが指定する二次元画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のそれぞれの領域において描画される。この際、各二次元画像描画コマンドが指定する二次元画像データは、当該描画コマンドが指定する座標にしたがって、各領域において描画される。
また、3D表示演出時描画処理では、ディスプレイリストに登録されている各三次元画像描画コマンドが指定する三次元素材画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のうち、一方の領域において描画される。この際、本実施形態では、右眼用画像データが、描画領域に指定されているフレームバッファ領域に描画され、左眼用画像データが、合成用バッファ領域に描画される。また、各三次元画像描画コマンドが指定する三次元素材画像データは、当該描画コマンドが指定する座標にしたがって、各領域において描画される。
【0383】
これによって、3D表示演出時描画処理では、ディスプレイリストに登録されている各描画コマンドが、順次、実行されると、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のそれぞれの領域において、二次元画像データ及び三次元素材画像データが、順次、描画(合成)される。
この際、3D表示演出時描画処理では、各二次元画像データについて、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域の両方の領域に描画される。この際、各二次元画像データは、フレームバッファ領域、及び、合成用バッファ領域の両方の領域において、同じ座標(位置)に描画される。
また、3D表示演出時描画処理では、各三次元画像データを生成するための一対の三次元素材画像データ(右眼用画像データ及び左目用画像データ)のうち、右眼用画像データについて、描画領域に指定されているフレームバッファ領域のみに描画され、左眼用画像データについて、合成用バッファ領域のみに描画される。
3D表示演出時描画処理では、次に、合成用バッファ領域に生成された描画データのうち、液晶パネルの右眼用画像表示領域に対応する描画データが、マスクされる。
この際、マスク用バッファ領域に記憶(設定)されているマスクデータを、合成用バッファ領域に複写することによって、右眼用画像表示領域に対応する描画データがマスクされる。
これによって、合成用バッファ領域に生成された描画データのうち、液晶パネルの左眼用画像表示領域に対応する描画データが、マスクされずに、維持される。
そして、描画領域に指定されているフレームバッファ領域に生成されている描画データに対して、合成用バッファ領域に生成されている描画データのうち、マスクされていない描画データ(液晶パネルの左眼用画像表示領域に対応する描画データ)が合成される。
これによって、描画領域に指定されているフレームバッファ領域に生成された描画データのうち、液晶パネルの右眼用画像表示領域に対応する描画データが、上書きされずに維持され、液晶パネルの左眼用画像表示領域に対応する描画データが、合成用バッファ領域に生成されている描画データに置き換えられる(上書きされる)。
すなわち、描画領域に指定されているフレームバッファ領域に生成された描画データのうち、液晶パネルの左眼用画像表示領域に対応する描画データが、合成用バッファ領域に生成されている描画データのうち、マスクされていない描画データ(液晶パネルの左眼用画像表示領域に対応する描画データ)に置き換えられる(上書きされる)。
以上によって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データ(三次元画像データと、二次元画像データと、を含んでなる描画データ)が生成される。
以下、3D表示演出時描画処理の内容を詳細に説明する。
【0384】
まず、VRAM316に設定される各バッファ領域の構成を説明する。
各フレームバッファ領域、及び、合成用バッファ領域は、同一のサイズで構成されている。一方、マスク用バッファ領域は、各フレームバッファ領域(合成用バッファ領域)と比較して、小さいサイズで構成されている。これによって、VRAM316の容量の圧迫を抑制している。
各フレームバッファ領域(合成用バッファ領域)は、液晶パネル(表示画面31a)と同一のサイズで構成されている。
すなわち、各フレームバッファ領域(合成用バッファ領域)は、液晶パネルを構成する各副画素SPに対応する副画素値記憶部を含んで構成されている。
具体的に、各フレームバッファ領域(合成用バッファ領域)は、液晶パネルを構成する各画素Pに対応する画素値記憶部を含んで構成されている。また、各画素Pに対応する画素値記憶部は、当該画素Pを構成するR(赤)の副画素SPに対応する副画素値記憶部と、当該画素Pを構成するG(緑)の副画素SPに対応する副画素値記憶部と、当該画素Pを構成するB(青)の副画素SPに対応する副画素値記憶部と、を含んで構成されている。そして、各副画素SPに対応する副画素値記憶部には、当該副画素SPの輝度値(8[bit]・256諧調)が記憶される。
これによって、各フレームバッファ領域(合成用バッファ領域)は、垂直方向1024×水平方向1280の画素値記憶部を含んで構成されている。また、各画素値記憶部は、水平方向に並ぶ3つの副画素値記憶部を含んで構成されている。したがって、各フレームバッファ領域(合成用バッファ領域)は、垂直方向1024×水平方向3840の副画素値記憶部を含んで構成されている。
すなわち、各フレームバッファ領域(合成用バッファ領域)は、垂直方向に並ぶ所定数(本実施形態では、1024[個])の副画素値記憶部からなる副画素値記憶部列が、水平方向に所定数(本実施形態では、3840[列])並ぶ構成となっている。
そして、上記のように、表示画面31aを構成する所定数(本実施形態では、3840[列])の副画素列のうち、奇数列(1列、3列、5列・・・)の副画素列が、右眼用画像表示領域とされ、偶数列(2列、4列、6列・・・)の副画素列が、左眼用画像表示領域とされている。
これに伴い、各フレームバッファ領域(合成用バッファ領域)を構成する所定数(本実施形態では、3840[列])の副画素値記憶部列のうち、奇数列(1列、3列、5列・・・)の副画素値記憶部列が、右眼用画像描画領域とされ、偶数列(2列、4列、6列・・・)の副画素値記憶部列が、左眼用画像描画領域とされている。
【0385】
マスク用バッファ領域は、垂直方向256×水平方向256の画素値記憶部を含んで構成されている。また、各画素値記憶部は、水平方向に並ぶ3つの副画素値記憶部を含んで構成されている。これによって、マスク用バッファ領域は、垂直方向256×水平方向768の副画素値記憶部を含んで構成されている。
本実施形態では、電源投入時に、マスク用バッファ領域において、所定のマスクデータが記憶(設定)される。
「マスクデータ」は、合成用バッファ領域を構成する副画素値記憶部のうち、右眼用画像描画領域(液晶パネルの右眼用画像表示領域に対応する副画素値記憶部)に生成(描画・記憶)されているデータ(輝度値)をマスクするためのデータとなっている。
上記のように、マスク用バッファ領域は、垂直方向に並ぶ所定数(本実施形態では、256[個])の副画素値記憶部からなる副画素値記憶部列が、水平方向に所定数(本実施形態では、768[列])並ぶ構成となっている。
そして、マスクデータが記憶(設定)されたマスク用バッファ領域では、水平方向に並ぶ所定数(本実施形態では、768[列])の副画素値記憶部列のうち、奇数列(1列、2列、5列・・・)の副画素値記憶部列に含まれる全ての副画素値記憶部(各副画素値記憶部)に、マスク値が記憶され、偶数列(2列、4列、6列・・・)の副画素値記憶部列に含まれる全ての副画素値記憶部(各副画素値記憶部)に、非マスク値が記憶される。
【0386】
図56に示すように、3D表示演出時描画処理は、一次描画処理と、マスク処理と、二次描画処理と、を含んで構成されている。
3D表示演出時描画処理では、まず、一次描画処理が実行される。
一次描画処理では、ディスプレイリストに登録されている全ての描画コマンドについて、登録されている順番にしたがって、各描画コマンドに基づく描画が、順次、実行される。
この際、各二次元画像描画コマンドに基づく描画では、当該二次元画像描画コマンドが指定する二次元画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のそれぞれの領域に描画される。
一方、各三次元描画コマンドに基づく描画では、当該三次元画像描画コマンドが指定する三次元素材画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のうち、一方の領域に描画される。この際、当該三次元描画コマンドが右目用画像データの描画を指定する場合、当該右目用描画データが、描画領域に指定されているフレームバッファ領域に描画される。一方、当該三次元描画コマンドが左目用画像データの描画を指定する場合、当該左目用描画データが、合成用バッファ領域に描画される。
これによって、描画領域に指定されているフレームバッファ領域において、ディスプレイリストにより描画が指定されている全ての二次元画像データと、ディスプレイリストにより描画が指定されている全ての右眼用画像データと、を合成した描画データが生成される。
また、合成用バッファ領域において、ディスプレイリストにより描画が指定されている全ての二次元画像データと、ディスプレイリストにより描画が指定されている全ての左眼用画像データと、を合成した描画データが生成される。
【0387】
3D表示演出時描画処理では、次に、マスク処理が実行される。
マスク処理では、合成用バッファ領域を構成する副画素値記憶部のうち、右眼用画像描画領域(液晶パネル(表示画面31a)の右眼用画像表示領域に対応する副画素値記憶部)に生成(記憶)されている画像データが、マスクされる。
この際、マスク用バッファ領域に記憶(設定)されているマスクデータを、合成用バッファ領域に複写することによって、右眼用画像描画領域に記憶されている画像データがマスクされる。
上記のように、合成用バッファ領域は、垂直方向1024×水平方向3840の副画素値記憶部を含んで構成されている。また、マスク用バッファ領域は、垂直方向256×水平方向768の副画素値記憶部を含んで構成されている。
してみると、合成用バッファ領域の垂直方向のサイズは、マスク用バッファ領域の垂直方向のサイズの4倍となっている。また、合成用バッファ領域の水平方向のサイズは、マスク用バッファ領域の水平方向のサイズの5倍となっている。
したがって、合成用バッファ領域において、マスク用バッファ領域に記憶されているマスクデータを、20[回](垂直方向に4[回]×水平方向に5[回]=20[回])複写することによって、合成用バッファ領域の全体に、マスクデータを複写することができる。
この際、合成用バッファ領域を構成する副画素値記憶部のうち、マスク値が複写される副画素値記憶部では、当該副画素値記憶部に生成されている描画データが、マスク値に置き換えられる。これによって、当該副画素値記憶部に生成されている描画データが、マスクされる。
一方、合成用バッファ領域を構成する副画素値記憶部のうち、非マスク値が複写される副画素値記憶部では、当該副画素値記憶部に生成されている描画データが、マスクされずに、そのまま維持される。これによって、当該副画素値記憶部に生成されている描画データについては、マスクされない。
ここで、上記のように、マスク用バッファ領域には、水平方向の768[列]の副画素値記憶部列のうち、奇数列(1列、2列、5列・・・)の副画素値記憶部列に含まれる各副画素値記憶部に、マスク値が記憶され、偶数列(2列、4列、6列・・・)の副画素値記憶部列に含まれる各副画素値記憶部に、非マスク値が記憶されている。
これによって、マスク用バッファ領域に記憶されているマスクデータの複写が完了した後の合成用バッファ領域では、右眼用画像描画領域を構成する全ての副画素値記憶(各副画素値記憶部)に生成されている描画データが、マスクされ、左眼用画像描画領域を構成する全ての副画素値記憶(各副画素値記憶部)に生成されている描画データが、マスクされずに、維持される。
すなわち、合成用バッファ領域を構成する水平方向3840[列]の副画素値記憶部列のうち、奇数列(1列、2列、5列・・・)の副画素値記憶部列に含まれる各副画素値記憶部に生成されているデータが、マスクされ、偶数列(2列、4列、6列・・・)の副画素値記憶部列に含まれる各副画素値記憶部に生成されているデータ、マスクされずに、維持される。
【0388】
3D表示演出時描画処理では、次に、二次描画処理が実行される。
二次描画処理では、合成用バッファ領域に生成された描画データが、描画領域に指定されているフレームバッファ領域に描画される。
すなわち、描画領域に指定されているフレームバッファ領域に生成された描画データに対して、合成用バッファ領域に生成された描画データが合成される。
この際、合成用バッファ領域に生成されている描画データのうち、マスクされている描画データについては、描画領域に指定されているフレームバッファ領域に描画されている描画データに合成されない。換言すると、合成用バッファ領域の右眼用画像描画領域に生成されている描画データについては、描画領域に指定されているフレームバッファ領域の右眼用画像描画領域に合成されない。
一方、合成用バッファ領域に生成されている描画データのうち、マスクされていない描画データについては、描画領域に指定されているフレームバッファ領域に描画されている描画データに合成される。換言すると、合成用バッファ領域を構成する左眼用画像描画領域に生成されている描画データについては、描画領域に指定されているフレームバッファ領域の左眼用画像描画領域に合成される。
これによって、描画領域に指定されているフレームバッファ領域を構成する副画素値記憶部のうち、左眼用画像描画領域を構成する副画素値記憶部(液晶パネルの左眼用画像表示領域に対応する副画素値記憶部)に生成されている描画データが、合成用バッファ領域を構成する副画素値記憶部のうち、左眼用画像描画領域を構成する副画素値記憶部(液晶パネルの左眼用画像表示領域に対応する副画素値記憶部)に生成されているデータに置き換えられる(上書きされる)。
一方、描画領域に指定されているフレームバッファ領域を構成する副画素値記憶部のうち、右眼用画像描画領域を構成する副画素値記憶部(液晶パネルの右眼用画像表示領域に対応する副画素値記憶部)に生成されている描画データについては、上書きされずに、そのまま維持される。
具体的に、描画領域に指定されているフレームバッファ領域を構成する水平方向3840[列]の副画素値記憶部列のうち、奇数列(1列、2列、5列・・・)の副画素値記憶部列に含まれる各副画素値記憶部について、一次描画処理で描画された描画データが維持され、偶数列(2列、4列、6列・・・)の副画素値記憶部列に含まれる各副画素値記憶部について、一次描画処理で描画された描画データに替えて、合成用フレームバッファ領域を構成する水平方向3840[列]の副画素値記憶部列のうち、偶数列(2列、4列、6列・・・)の副画素値記憶部列に含まれる各副画素値記憶部に生成された描画データに置き換えられる。
これによって、二次描画処理において、一次描画処理で描画領域に指定されているフレームバッファ領域に生成された右眼用画像データと、一次描画処理で合成用バッファ領域に生成された左眼用バッファ領域と、に基づいて、三次元画像が生成される。
すなわち、二次描画処理において、一次描画処理で描画領域に指定されているフレームバッファ領域に生成された右眼用画像データのうち、フレームバッファ領域の右眼用画像描画領域に生成された描画データと、一次描画処理で合成用バッファ領域に生成された左眼用バッファ領域のうち、合成用バッファの左眼用画像描画領域に生成された描画データと、が合成され、三次元画像が生成される。
以上によって、描画領域に指定されているフレームバッファ領域において、右眼用画像データ及び左目用画像データに基づいて生成された三次元画像データと、二次元画像データと、が合成された、1フレーム分の描画データが生成される。
【0389】
(パチンコ機1の動作)
次に、パチンコ機1の動作を説明する。
図57は、描画コマンドの構築から映像信号の生成・出力までの処理の流れを示す図である。図58は、スケーラ倍率の変更要求の発生タイミングと変更後のスケーラ倍率の設定の有効化のタイミングとの関係を示す図である。
ここで、以下の説明では、各回のVsyncの発生(Vsync割込み処理の開始)から、次回のVsyncの発生(次回のVsync割込み処理の開始)までの時間(期間)を、「1フレーム(期間)」とする。
演出制御基板300のCPU310は、主制御基板200から受信した制御コマンドに応じて、実行する演出(演出番号)を選択し、選択した演出番号に対応する演出シナリオテーブルと、当該演出シナリオテーブルに対応する演出シナリオタイマと、をDRAM304の演出シナリオ設定領域に設定する。
そして、CPU310は、演出シナリオ設定領域に設定されている演出シナリオテーブルと、当該演出シナリオテーブルに対応する演出シナリオタイマと、に基づいて、演出の進行を制御する。
すなわち、CPU310は、所定周期、演出シナリオタイマを更新するとともに、更新後の演出シナリオタイマの値に基づいて、演出シナリオテーブルに登録されているプロセスデータ中に、開始時期が到来したプロセスデータが存在するか否かを判定する。そして、開始時期が到来したプロセスデータが存在すると判定した場合、当該プロセスデータに基づく処理を実行する。
この際、CPU310は、開始時期が到来したプロセスデータが表示演出の開始(表示演出番号)を指定する場合、当該表示演出番号に対応する表示シナリオテーブルと、当該表示シナリオテーブルに対応するサブシナリオタイマと、をDRAM304の表示シナリオ設定領域に設定する。
そして、CPU310は、表示シナリオ設定領域に設定されている表示シナリオテーブルと、当該表示シナリオテーブルに対応するサブシナリオタイマと、に基づいて、表示演出の進行を制御する。
すなわち、CPU310は、Vsync(垂直同期信号)が発生するごとに、表示シナリオ設定領域に設定されているサブシナリオタイマを更新するとともに、表示シナリオテーブルに規定されている情報のうち、更新後のサブシナリオタイマの値に対応する情報に基づいて、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを生成する。
これによって、描画コマンドバッファ領域に生成されたディスプレイリストにしたがって、VDPが制御され、表示演出(各種画像表示装置31,32による演出画像の表示)が制御される。
【0390】
具体的に、図57に示すように、CPU310は、Vsyncが発生するごと(1フレームごと)に、フレームバッファ領域の切り替え(描画領域・出力領域の指定の切り替え)と、描画コマンドバッファ領域の切り替え(構築領域・転送領域の指定の切り替え)と、を実行した後に、構築領域に指定されている描画コマンドバッファ領域において、1フレーム分のディスプレイリストの構築を開始する。CPU310によるディスプレイリストの構築は、1フレーム中に実行される。
描画コマンドバッファ領域に構築されたディスプレイリストは、次回のVsyncの発生(当該描画コマンドバッファ領域の指定が転送領域に切り替えられたこと)を契機として(次回の1フレーム中に)、プリローダ回路319に対して転送される。そして、プリローダ回路319は、受信したディスプレイリストで指定されている1フレーム分の圧縮画像データのプリロードと、当該プリロードに応じたディスプレイリストの書き換えと、を開始する。プリローダ回路319による1フレーム分の圧縮画像データのプリロード、及び、当該プリロードに応じたディスプレイリストの書き換えは、1フレーム中に実行される。
プリローダ回路319により書き換えられたディスプレイリストは、次回のVsyncの発生を契機として(次回の1フレーム中に)、描画回路322に対して転送される。そして、描画回路322は、受信したディスプレイリストにしたがって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データの生成を開始する。描画回路322による1フレーム分の描画データの生成は、1フレーム中に実行される。この際、描画回路322は、前回の1フレーム中にプリロードされた1フレーム分の圧縮画像データを用いて、1フレーム分の描画データを生成する。
フレームバッファ領域に生成された1フレーム分の描画データについては、次回のVsyncの発生(当該フレームバッファ領域の指定が出力領域に切り替えられたこと)を契機として(次回の1フレーム中に)、表示回路320により、当該描画データに基づく映像信号の生成・出力が開始される。表示回路320による1フレーム分の描画データに基づく映像信号の生成・出力は、1フレーム中に実行される。
【0391】
以上により、所定の1フレーム中において、nフレーム目のディスプレイリストが構築されると、当該所定の1フレームの1つ後の1フレーム中において、nフレーム目の圧縮画像データのプリロードが実行され、当該所定の1フレームの2つ後の1フレーム中において、nフレーム目の描画データの生成が実行され、当該所定の1フレームの3つ後の1フレーム中において、nフレーム目の映像データの生成・出力が実行される。
これによって、nフレーム目のディスプレイリストの構築から3フレーム後に、メイン画像表示装置31の表示画面31aにおいて、nフレーム目の画像が表示される。
【0392】
また、パチンコ機1では、各フレームのディスプレイリストが構築されるときに、前フレームと当該フレームとの間で表示演出の内容の変更(2D表示演出から3D表示演出への変更、又は、3D表示演出から2D表示演出への変更)の有無が判定される。そして、前フレームと当該フレームとの間で表示演出の内容の変更があると判定された場合、当該フレーム中において、スケーラ倍率の変更要求と、変更後のスケーラ倍率と、変更後のスケーラ倍率を設定するタイミングと、が設定される。
この際、本実施形態では、変更後のスケーラ倍率を設定するタイミングとして、2フレーム後が設定される。
これによって、図56に示すように、スケーラ倍率の変更要求が設定されてから2フレーム後に、マイクロコンピュータ301のスケーラ倍率レジスタに、変更後のスケーラ倍率が設定される。そして、スケーラ倍率レジスタに変更後のスケーラ倍率が設定されると、1フレーム後に、変更後のスケーラ倍率の設定が有効となり、変更後のスケーラ倍率にしたがって、出力領域に指定されているフレームバッファ領域に記憶されている描画データに対するスケーリング処理が実行される。したがって、スケーラ倍率の変更要求の設定から3フレーム後に、変更後のスケーラ倍率の設定が有効となり、変更後のスケーラ倍率に応じたスケーリング処理が実行される。
すなわち、上記のように、本実施形態では、nフレーム目のディスプレイリストの構築から3フレーム後に、当該nフレーム目の映像信号の生成が実行される。また、スケーラ倍率レジスタに変更後のスケーラ倍率が設定されると、1フレーム後に、変更後のスケーラ倍率の設定が有効となる。
したがって、n-1フレーム目とnフレーム目との間で表示演出の内容に変更がある場合、nフレーム目のディスプレイリストが構築される1フレーム中において、スケーラ倍率の変更を設定するとともに、変更後のスケーラ倍率が設定されるタイミングとして、2フレーム後を設定することにより、nフレーム目の映像信号の生成時に、変更後のスケーラ倍率に応じたスケーリング処理を実行することが可能となる。
【0393】
また、前フレームの表示演出の内容=2D表示演出から、当該フレームの表示演出の内容=3D表示演出への変更がある場合、変更後のスケーラ倍率として、3D表示演出に対応するスケーラ倍率が設定される。一方、前フレームの表示演出の内容=3D表示演出から、当該フレームの表示演出の内容=2D表示演出への変更がある場合、変更後のスケーラ倍率として、2D表示演出に対応するスケーラ倍率が設定される。
特に、2D表示演出に対応するスケーラ倍率として、垂直方向の倍率=130[%](拡大)、水平方向の倍率=130[%](拡大)が設定される。これによって、2D表示演出の描画データ(二次元画像データのみを含んでなる描画データ)については、描画データが生成された後(映像信号の生成時)に、拡大処理が施される。
一方、3D表示演出に対応するスケーラ倍率として、垂直方向の倍率=100[%](等倍)、水平方向の倍率=100[%](等倍)が設定される。これによって、3D表示演出の描画データ(三次元画像データと、二次元画像データと、を含んでなる描画データ)については、描画データが生成された後(映像信号の生成時)に、拡大処理・縮小処理が施されることがない。
すなわち、遊技者において、三次元画像に基づく立体視を得るためには、液晶パネルにおいて、当該三次元画像を構成する右眼用画像が、右眼用画像表示領域に表示され、左眼用画像が、左眼用画像表示領域に表示されることが必要となる。
このためには、フレームバッファ領域において、三次元画像データを、立体視を得るために適切な位置に配置する必要がある。すなわち、フレームバッファ領域において、三次元画像データを構成する画像データのうち、右眼用画像データが、右眼用画像描画領域(液晶パネルの右眼用画像表示領域に対応する領域)に配置され、左眼用画像データが、左眼用画像描画領域(液晶パネルの左眼用画像表示領域に対応する領域)に配置されることが必要となる。
してみると、フレームバッファ領域において、三次元画像データを含む描画データが生成された後に(三次元画像データが上記の立体視を得るために適切な位置に配置された後に)、当該描画データが拡大・縮小されると、三次元画像データ(三次元画像データを構成する右眼用画像データ及び左目用画像データ)の配置が、上記の立体視を得るために適切な位置からずれてしまい、その結果、当該三次元画像データに基づいて、立体視を得ることができなくなる。
そこで、3D表示演出の描画データについては、描画データが生成された後(映像信号の生成時)に、拡大処理・縮小処理が施されることがない構成とすることで、立体視を得ることができなくなる事態の発生を防止している。
なお、2D表示演出の実行時、3D表示演出の実行時に関わらず、描画データの生成時(描画データが完成する前)には、プリロードされた各画像データ(二次元画像データ、又は、三次元素材画像データ)に拡大処理・縮小処理を施して、描画データを生成することができる。
【0394】
特に、パチンコ機1では、表示演出として、2D表示演出と、3D表示演出と、を実行することが可能となっている。
そして、2D表示演出が実行される場合と、3D表示演出が実行される場合と、で描画回路322が実行する描画処理の内容が異なっている。
2D表示演出時描画処理は、ディスプレイリストにおいて、二次元画像描画コマンドのみが含まれている場合に実行される。
2D表示演出時描画処理では、ディスプレイリストに登録されている各二次元画像描画コマンドが指定する二次元画像データが、描画領域に指定されているフレームバッファ領域において描画される。
これによって、2D表示演出時描画処理では、描画領域に指定されているフレームバッファ領域において、ディスプレイリストに登録されている全ての二次元画像描画コマンドについて、各二次元画像描画コマンド基づく描画が、順次、実行され、1フレーム分の描画データ(二次元画像データのみからなる描画データ)が生成される。
【0395】
一方、3D表示演出時描画処理は、ディスプレイリストにおいて、三次元画像描画コマンドが含まれている場合に実行される。
3D表示演出時描画処理では、まず、ディスプレイリストに登録されている各描画コマンドが指定する画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のうち、少なくとも一方の領域において描画される。
この際、ディスプレイリストに登録されている各二次元画像描画コマンドが指定する二次元画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のそれぞれの領域において描画される。
一方、ディスプレイリストに登録されている各三次元画像描画コマンドが指定する三次元素材画像データが、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のうち、一方の領域において描画される。この際、右眼用画像データが、描画領域に指定されているフレームバッファ領域に描画され、左眼用画像データが、合成用バッファ領域に描画される。
例えば、二次元画像描画コマンドが指定する背景画像データ(二次元画像データ)が、描画領域に指定されているフレームバッファ領域、及び、合成用バッファ領域のそれぞれの領域において描画され、その後、三次元画像描画コマンドが指定するキャラクター画像データA(右眼用画像データ)が、描画領域に指定されているフレームバッファ領域に描画されている背景画像に合成され、三次元画像描画コマンドが指定するキャラクター画像データB(左眼用画像データ)が、合成用バッファ領域に描画されている背景画像に合成される。ここで、「キャラクター画像データA」及び「キャラクター画像データB」は、一のキャラクター画像(三次元画像データ)を生成するための一対の三次元素材画像データとなっている。
次に、合成用バッファ領域に生成された描画データのうち、液晶パネル(表示画面31a)の右眼用画像表示領域に対応するデータが、マスクされる。
この際、マスク用バッファ領域に記憶されているマスクデータを、合成用バッファ領域に複写することによって、右眼用画像表示領域に対応するデータがマスクされる。これによって、合成用バッファ領域を構成する複数の副画素値記憶部に対して、1副画素値記憶部ずつマスク値を設定していく構成と比較して、マスク処理の速度を向上することが可能となる。
その後、描画領域に指定されているフレームバッファ領域に生成されている描画データに対して、合成用バッファ領域に生成されている描画データのうち、マスクされていないデータ(液晶パネルの左眼用画像表示領域に対応するデータ)が合成される。
以上によって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データ(三次元画像データと、二次元画像データと、を含んでなる描画データ)が生成される。
そして、遊技者は、3D表示演出の実行中、レンチキュラーレンズ31bを通して、表示画面31aに表示された演出画像に含まれる三次元画像を視認することにより、当該三次元画像に基づく立体視(立体的な像・表示を認識・知覚)を得ることが可能となる。
【0396】
(パチンコ機1の作用)
パチンコ機1では、圧縮三次元素材画像データ(圧縮右眼用画像データ及び圧縮左眼用画像データ)の圧縮率が、圧縮二次元画像データの圧縮率と比較して低くなっている。換言すると、圧縮二次元画像データの圧縮率が、圧縮三次元素材画像データの圧縮率と比較して高くなっている。
これによって、圧縮三次元素材画像データ(三次元素材画像データ)に基づいて鮮明な立体視を得ることを可能としつつ、CGROM303の容量の圧迫を抑制することが可能となる。
また、パチンコ機1では、三次元画像データを含んでなる描画データのスケーリング倍率(表示倍率)として、二次元画像データのみを含んでなる描画データのスケーリング倍率と比較して、等倍に近いスケーリング倍率が設定される。
すなわち、視差障壁を利用して立体視を得るためには、表示画面31aにおいて、三次元画像が、適切な位置に配置される必要がある。このため、三次元画像データを含んでなる描画データの倍率が変更されると、当該描画データに含まれる三次元画像データの配置が、上記適切な位置からずれてしまい、その結果、当該画像データに含まれる三次元画像データに基づいて、立体視を得ることができなくなる恐れがある。
そこで、三次元画像データを含んでなる描画データのスケーラ倍率として、二次元画像データのみを含んでなる描画データのスケーラ倍率と比較して等倍に近いスケーラ倍率を設定することで、立体視を得ることができなくなる事態の発生を防止することが可能となる。
【0397】
(変形例)
以上、本発明の実施形態について説明したが、上記実施形態では、種々の変更を行うことが可能である。
例えば、上記実施形態では、視差障壁として、レンチキュラーレンズ31bが用いられている。しかしながら、視差障壁として、パララックスバリア等の他の手段が用いられる構成としても構わない。
また、上記実施形態では、3D表示演出時描画処理において、右眼用画像データが、描画領域に指定されているフレームバッファ領域に描画され、左眼用画像データが、合成用バッファ領域に描画される構成となっている。しかしながら、3D表示演出時描画処理において、左眼用画像データが、描画領域に指定されているフレームバッファ領域に描画され、右眼用画像データが、合成用バッファ領域に描画される構成としても構わない。
また、上記実施形態では、3D表示演出を構成する演出画像(描画データ)が、三次元画像(三次元画像データ)と、二次元画像(二次元画像データ)と、を含んで構成されている。しかしながら、3D表示演出を構成する演出画像(描画データ)が、三次元画像(三次元画像データ)のみから構成されていても構わない。
また、上記実施形態では、3D表示演出に対応するスケーラ倍率として、等倍(垂直方向の倍率=100[%]、水平方向の倍率=100[%])が設定される。しかしながら、2D表示演出に対応するスケーラ倍率と比較して等倍に近い倍率であれば、3D表示演出に対応するスケーラ倍率として、等倍ではない比率が設定されていても構わない。
【符号の説明】
【0398】
1 パチンコ機
31 メイン画像表示装置
31a 表示画面
31b レンチキュラーレンズ
200 主制御基板
300 演出制御基板
301 マイクロコンピュータ
302 制御ROM
303 CGROM
304 DRAM
310 CPU
316 VRAM
319 プリローダ回路
320 表示回路
322 描画回路
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36
図37
図38
図39
図40
図41
図42
図43
図44
図45
図46
図47
図48
図49
図50
図51
図52
図53
図54
図55
図56
図57
図58