JP7209661B2 - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP7209661B2
JP7209661B2 JP2020044788A JP2020044788A JP7209661B2 JP 7209661 B2 JP7209661 B2 JP 7209661B2 JP 2020044788 A JP2020044788 A JP 2020044788A JP 2020044788 A JP2020044788 A JP 2020044788A JP 7209661 B2 JP7209661 B2 JP 7209661B2
Authority
JP
Japan
Prior art keywords
frequency correction
correction parameter
area
state
game
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020044788A
Other languages
English (en)
Other versions
JP2021142293A (ja
Inventor
務 冨士代
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Heiwa Corp
Original Assignee
Heiwa Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Heiwa Corp filed Critical Heiwa Corp
Priority to JP2020044788A priority Critical patent/JP7209661B2/ja
Publication of JP2021142293A publication Critical patent/JP2021142293A/ja
Priority to JP2022183451A priority patent/JP7448615B2/ja
Application granted granted Critical
Publication of JP7209661B2 publication Critical patent/JP7209661B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/10Energy storage using batteries

Landscapes

  • Pinball Game Machines (AREA)

Description

本発明は、音出力手段により出力される音の周波数特性を補正することが可能な遊技機に関する。
従来、音出力手段により出力される音の周波数特性を補正することが可能な遊技機が知られている(特許文献1参照)。
この遊技機では、音声メモリの記憶データに基づいて音声信号を再生する音声合成回路と、音声合成回路から音声信号を受けてスピーカを駆動するデジタルアンプと、音声合成回路の音声制御レジスタに、必要な動作パラメータを設定することで音声演出を実現する演出制御部と、が設けられている。そして、演出制御部が、デジタルアンプの異常を把握した場合、音声制御レジスタに所定の動作パラメータを設定して、音声出力を無音化する構成となっている。
特開2016-209723号公報
しかしながら、従来の遊技機では、遊技者に違和感を与える恐れがある。
すなわち、従来の遊技機では、デジタルアンプの異常が把握された前後で、デジタルアンプに設定される動作パラメータが変化することにより、スピーカから出力される音の音質が変化し、遊技者に違和感を与える恐れがある。
本発明の課題は、遊技者に違和感を与える事態を防止することにある。
上記目的を達成するために、第一の発明に係る遊技機は、演出を制御する上位制御手段と、設定情報に応じて音出力手段により出力される音の周波数特性を補正する下位制御手段と、を備え、前記下位制御手段では、遊技の状態に応じて設定情報が変更され、設定情報として初期値とは異なる値が設定されているときに、前記下位制御手段に異常が発生した場合、前記上位制御手段について、初期化が実行されず、前記下位制御手段について、初期化が実行された後に、初期化されていない記憶に基づいて、設定情報が前記初期値とは異なる値に復帰されることを特徴とする。
第一の発明に係る遊技機では、設定情報として初期値とは異なる値が設定されているときに、下位制御手段に異常が発生した場合に、下位制御手段について、初期化が実行された後に、初期化されていない記憶に基づいて、設定情報が初期値とは異なる値に復帰される。
これによって、異常の発生の前後において、音出力手段から出力される音の周波数補正の内容が変化することが防止される。
したがって、異常の発生の前後において、音出力手段から出力される音の音質が変化する事態が防止され、遊技者に違和感を与える事態を防止することが可能となる。
ここで、上位制御手段としては、後述するCPU310が該当する。設定情報としては、後述する周波数補正パラメータが該当する。音出力手段としては、後述するスピーカ22が該当する。下位制御手段としては、後述するデジタルアンプ305が該当する。
本発明によれば、遊技者に違和感を与える事態を防止することが可能となる。
パチンコ機の全体構成を示す斜視図である。 遊技盤の正面を示し、特に説明に必要な部分を模式的に示した図である。 パチンコ機の制御系の構成を示すブロック図である。 発射条件検出回路及び発射制御回路の構成を示すブロック図である。 演出制御基板の構成を示すブロック図である。 CPU210が使用するメモリ領域のアドレスマップである。 CPU初期化処理を示すフローチャートである。 メインループ処理を示すフローチャートである。 電源遮断時退避処理を示すフローチャートである。 タイマ割込み処理を示すフローチャートである。 ダイナミックポート出力処理を示すフローチャートである。 性能表示装置出力処理を示すフローチャートである。 設定関連処理を示すフローチャートである。 スイッチ管理処理を示すフローチャートである。 普図始動球検出処理を示すフローチャートである。 特図1始動球検出処理を示すフローチャートである。 特図2始動球検出処理を示すフローチャートである。 特別図柄乱数取得処理を示すフローチャートである。 特別遊技管理処理を示すフローチャートである。 特図変動待ち処理を示すフローチャートである。 特図変動中処理を示すフローチャートである。 特図停止中処理を示すフローチャートである。 大入賞口開放前処理を示すフローチャートである。 特別電役開閉切替処理を示すフローチャートである。 大入賞口開放制御処理を示すフローチャートである。 大入賞口閉鎖有効処理を示すフローチャートである。 大入賞口開放終了ウェイト処理を示すフローチャートである。 普通遊技管理処理を示すフローチャートである。 普図変動待ち処理を示すフローチャートである。 普図変動中処理を示すフローチャートである。 普図停止中処理を示すフローチャートである。 普通電動役物開放前処理を示すフローチャートである。 普通電役開閉切替処理を示すフローチャートである。 普通電動役物開放制御処理を示すフローチャートである。 普通電動役物閉鎖有効処理を示すフローチャートである。 普通電動役物開放終了ウェイト処理を示すフローチャートである。 性能表示装置制御処理を示すフローチャートである。 サブCPU初期化処理を示すフローチャートである。 初期転送処理を示すフローチャートである。 サブタイマ割込み処理を示すフローチャートである。 コマンド解析処理を示すフローチャートである。 保留コマンド受信処理を示すフローチャートである。 先読みコマンド受信処理を示すフローチャートである。 変動コマンド受信処理を示すフローチャートである。 停止コマンド受信処理を示すフローチャートである。 オープニングコマンド受信処理を示すフローチャートである。 Vsync割込み処理を示すフローチャートである。 コマンド構築タスク処理を示すフローチャートである。 サウンド割込み処理を示すフローチャートである。 ランプ割込み処理を示すフローチャートである。 可動体割込み処理を示すフローチャートである。 サウンド回路の構成を示すブロック図である。 周波数補正パラメータの種別を示す図である。
以下、本発明の実施形態について図面を参照しながら説明する。
本実施形態では、本発明に係る遊技機を、パチンコ機1に適用している。
(パチンコ機1の全体構成)
まず、パチンコ機1の全体構成を説明する。
図1は、パチンコ機の全体構成を示す斜視図である。パチンコ機1は、外枠ユニット2と、内枠ユニット3と、一体扉ユニット4と、遊技盤ユニット10と、を含んで構成されている。
外枠ユニット2、内枠ユニット3及び一体扉ユニット4は、ヒンジ機構を介して、互いに固定されている。これによって、内枠ユニット3は、外枠ユニット2に対して開閉することが可能となっている。また、一体扉ユニット4は、内枠ユニット3及び外枠ユニット2のそれぞれに対して開閉することが可能となっている。
外枠ユニット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)を含んで構成されている。
受皿ユニット5は、遊技球(貸球及び賞球)を受ける受皿5aと、遊技者による操作が可能な各種の操作手段と、を含んで構成されている。
本実施形態では、各種の操作手段として、演出ボタン5b、回転型セレクター5c、光量調整ボタン(図示せず)、音量調整ボタン(図示せず)、十字キーボタン(図示せず)等を有している。
演出ボタン5bは、遊技者による押下操作が可能な操作部と、操作部の押下操作を検出するボタンスイッチ25(図3参照)と、を含んで構成されている。ボタンスイッチ25は、操作部が押下操作されるごとに、検出信号を演出制御基板300(図3参照)に対して出力する。
回転型セレクター5c(いわゆる「ジョグダイヤル」)は、遊技者による回転操作が可能な操作部と、操作部の回転操作を検出するダイヤルスイッチ26(図3参照)と、を含んで構成されている。ダイヤルスイッチ26は、操作部が所定角度(例えば、60[°])回転操作されるごとに、検出信号を演出制御基板300に対して出力する。
光量調整ボタンは、遊技者による押下操作が可能な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に対して出力する。
また、受皿ユニット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内蔵媒体等が該当する。
発射ハンドルユニット6は、ハンドルベース部(図示せず)と、ハンドル操作部(図示せず)と、発射停止ボタン(図示せず)と、を含んで構成されている。
ハンドルベース部は、一体扉ユニット4の正面側に取り付けられている。ハンドルベース部の正面側には、軸受部が設けられている。
ハンドル操作部は、遊技者による把持が可能となる形状に構成されている。ハンドル操作部の背面側には、回転軸部が設けられている。ハンドル操作部は、その回転軸部が、ハンドルベース部の軸受部により軸支されることにより、ハンドルベース部に対して回転可能に取り付けられている。
ハンドル操作部は、所定の初期位置から所定の限度位置までの間において、回転操作(変位)することが可能となっている。発射ハンドルユニット6の内部には、ハンドル操作部を初期位置側に向かって付勢する付勢手段(本実施形態では、バネ)が配置されている。これによって、ハンドル操作部は、遊技者による回転操作が行われていないときに、初期位置に配置(変位)される。
発射停止ボタンは、ハンドル操作部の側面側に設けられている。発射停止ボタンは、遊技者による押下操作が可能となっている。
また、発射ハンドルユニット6は、発射ボリューム411と、タッチセンサ412と、発射停止スイッチ413と、を含んで構成されている。
発射ボリューム411は、可変抵抗器により構成されている。発射ボリューム411は、ハンドル操作部の回転操作量(ハンドル操作部が回転操作された角度)を検出する。具体的に、発射ボリューム411は、回転軸と、回転軸の回転量(回転角度)に応じて抵抗値が変化する抵抗体と、を含んで構成されている。発射ボリューム411の回転軸は、ハンドル操作部の回転軸部に対して同軸状に固定されている。これによって、ハンドル操作部の回転操作に応じて、発射ボリューム411の回転軸が回転され、ハンドル操作部の回転操作量に応じて、発射ボリューム411の抵抗値が変化する。
発射ボリューム411は、操作検出部421(図4参照)と電気的に接続されている。操作検出部421は、発射ボリューム411の抵抗値(電圧値)の変化に基づいて、ハンドル操作部の回転操作(回転操作量)を検出する。
タッチセンサ412は、静電容量の変化に基づいて、遊技者によるハンドル操作部への接触(把持)を検出する。そして、タッチセンサ412は、遊技者によるハンドル操作部への接触が検出されているときに、タッチ信号を発射可能条件検出部422(図4参照)に対して出力する(タッチ信号をハイレベルとする)。一方、タッチセンサ412は、遊技者によるハンドル操作部への接触が検出されていないときに、発射可能条件検出部422に対するタッチ信号の出力を停止する(タッチ信号をローレベルとする)。
発射停止スイッチ413は、発射停止ボタンの押下操作を検出する。そして、発射停止スイッチ413は、発射停止ボタンの押下操作が検出されていないときに、発射停止信号を発射可能条件検出部422に対して出力する(発射停止信号をハイレベルとする)。一方、発射停止スイッチ413は、発射停止ボタンの押下操作が検出されているときに、発射可能条件検出部422に対する発射停止信号の出力を停止する(発射停止信号をローレベルとする)。
(遊技盤ユニット10の構成)
次に、遊技盤ユニット10の構成を説明する。
図2は、遊技盤の正面を示し、特に説明に必要な部分を模式的に示した図である。
遊技盤ユニット10は、内枠ユニット3により支持されている。具体的には、遊技盤ユニット10は、内枠ユニット3が備える内枠の内側に取り付けられている。これによって、遊技盤ユニット10は、一体扉ユニット4の背面側に配置される。そして、遊技者は、透明板4aを介して、後述する遊技盤11(遊技領域30)を視認することが可能となっている。本実施形態では、透明板4aの背面と遊技盤11の正面との間に、後述する遊技領域30が構成される。
図2に示すように、遊技盤ユニット10は、セット板(図示せず)と、セット板に取り付けられた遊技盤11と、セット板に取り付けられた各種演出装置(メイン画像表示装置31、サブ画像表示装置32、可動体ユニット等)と、を備えている。
セット板は、正面側が開放された箱状に形成されている。セット板の背面板における略中央部には、貫通孔からなる開口部が設けられている。
遊技盤11は、セット板の正面側に取り付けられている。遊技盤11は、樹脂により、平板状に形成されている。遊技盤11の略中央部には、貫通孔からなる開口部(図示せず)が設けられている。そして、遊技者は、遊技盤11に設けられた開口部及びセット板に設けられた開口部を介して、メイン画像表示装置31の表示画面31aを視認することが可能となっている。
遊技盤11の正面における開口部の周囲には、発射ハンドルユニット6の回転操作に応じて打ち出された遊技球が流下する遊技領域30が形成されている。そして、遊技領域30には、遊技球が流下する経路として、メイン画像表示装置31の左側に形成された左側経路と、メイン画像表示装置31の右側に形成された右側経路と、が構成されている。
また、遊技盤11の遊技領域30には、盤面ランプ21(図3参照)が配設されている。盤面ランプ21は、ダイナミック点灯制御により駆動される複数の発光素子(LED)を含んで構成されている。
メイン画像表示装置31は、セット板の背面側に取り付けられている。メイン画像表示装置31は、液晶ディスプレイ、CRT(Cathode Ray Tube)ディスプレイ等の可変表示装置によって構成される。
メイン画像表示装置31は、各種の演出画像(動画像・静止画像)を表示することが可能な表示画面31aを含んで構成されている。
表示画面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の変動表示及び停止表示を行うことが可能となっている。
演出図柄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が表示される。
サブ画像表示装置32は、メイン画像表示装置31の正面側の位置に配設されている。
サブ画像表示装置32は、液晶ディスプレイ、CRTディスプレイ等の可変表示装置によって構成される。サブ画像表示装置32は、演出画像を表示することが可能な表示画面32aを有している。
サブ画像表示装置32は、図示しない駆動機構により、上下方向に沿って変位(移動)させることが可能となっている。具体的に、サブ画像表示装置32は、原点位置(図2参照)と、原点位置より下方の演出位置(図示せず)と、を含む所定範囲内において、変位させることが可能となっている。
そして、原点位置に配置(変位)されているサブ画像表示装置32は、メイン画像表示装置31の表示画面31aの上方に配置され、表示画面31aを被覆しない。一方、演出位置に配置(変位)されているサブ画像表示装置32は、メイン画像表示装置31の表示画面31aの正面側に配置され、表示画面31aの一部を被覆する。
遊技領域30における表示画面31aの下方には、第1始動口51が設けられている。第1始動口51は、上向きに開口した入球口(いわゆる「ヘソ」)であり、常時、遊技球の入球が可能となっている。第1始動口51は、左側経路を流下する遊技球の入球が可能(右側経路を流下する遊技球の入球が不可能)となっている。
第1始動口51内には、特図1始動口スイッチ101(図3参照)が配設されている。特図1始動口スイッチ101は、第1始動口51に入球した遊技球(第1始動口51への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、特図1始動口スイッチ101からの検出信号の入力に応じて、第1特別図柄抽選を実行する。
遊技領域30における第1始動口51の左方には、左上他入賞口55と、左中他入賞口56と、左下他入賞口57と、が設けられている。各他入賞口55~57は、上向きに開口した入球口であり、常時、遊技球の入球が可能となっている。各他入賞口55~57は、左側経路を流下する遊技球の入球が可能(右側経路を流下する遊技球の入球が不可能)となっている。
遊技盤11には、左入賞口スイッチ106(図3参照)が配設されている。左入賞口スイッチ106は、左上他入賞口55に入球した遊技球(左上他入賞口55への遊技球の入球)、左中他入賞口56に入球した遊技球(左中他入賞口56への遊技球の入球)、及び、左下他入賞口57に入球した遊技球(左下他入賞口57への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、左入賞口スイッチ106からの検出信号の入力に応じて、遊技球払出装置440に賞球の払い出し動作を実行させる。
遊技領域30における表示画面31aの右方には、始動ゲート41が設けられている。始動ゲート41は、常時、遊技球による通過が可能となるように形成されている。始動ゲート41は、右側経路を流下する遊技球の通過が可能(左側経路を流下する遊技球の通過が不可能)となっている。
始動ゲート41には、ゲートスイッチ104(図3参照)が配設されている。ゲートスイッチ104は、始動ゲート41を通過する遊技球(遊技球による始動ゲート41の通過)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、ゲートスイッチ104からの検出信号の入力に応じて、普通図柄抽選を実行する。
遊技領域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に賞球の払い出し動作を実行させる。
遊技領域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特別図柄抽選を実行する。
遊技領域30における第2始動口52の下方には、右他入賞口54が設けられている。右他入賞口54は、上向きに開口した入球口であり、常時、遊技球の入球が可能となっている。右他入賞口54は、右側経路を流下する遊技球の入球が可能(左側経路を流下する遊技球の入球が不可能)となっている。
右他入賞口54内には、右入賞口スイッチ105(図3参照)が配設されている。右入賞口スイッチ105は、右他入賞口54に入球した遊技球(右他入賞口54への遊技球の入球)の検出に応じて、検出信号を主制御基板200に対して出力する。主制御基板200は、右入賞口スイッチ105からの検出信号の入力に応じて、遊技球払出装置440に賞球の払い出し動作を実行させる。
遊技領域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に遊技球を導くように複数の釘(図示せず)が配置されている。
遊技盤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が、時短表示装置を構成している。
特図1表示装置は、数字や図柄等からなる第1特別図柄の変動表示及び停止表示を行うことが可能となっている。そして、特図1表示装置では、停止表示された第1特別図柄によって、第1特別図柄抽選の結果が表示される。
特図2表示装置は、数字や図柄等からなる第2特別図柄の変動表示及び停止表示を行うことが可能となっている。そして、特図2表示装置では、停止表示された第2特別図柄によって、第2特別図柄抽選の結果が表示される。
ここで、特図表示装置における特別図柄(第1特別図柄又は第2特別図柄)の表示と、演出図柄表示領域a1~a4における演出図柄z1,z2の表示とは、変動表示が開始される時期、停止表示が開始される時期、及び、停止表示された図柄が示す抽選結果のそれぞれについて対応付けられている。
そして、特図1表示装置に停止表示された第1特別図柄(停止図柄)が特定の図柄(大当り図柄)となった場合、又は、特図2表示装置において停止表示された第2特別図柄(停止図柄)が特定の図柄(大当り図柄)となった場合には、遊技者に有利な遊技状態である大当り遊技状態が生起される。
普図表示装置は、数字や図柄等からなる普通図柄の変動表示及び停止表示を行うことが可能となっている。そして、普図表示装置では、停止表示された普通図柄によって、普通図柄抽選の結果が表示される。そして、普図表示装置に停止表示された普通図柄が特定の図柄(普図当り図柄)となった場合には、遊技者に有利な遊技状態である普図当り遊技状態が生起される。
特図1保留表示装置には、第1特別図柄抽選の抽選結果の表示が保留されている回数(特図1保留数)が表示される。
特図2保留表示装置には、第2特別図柄抽選の抽選結果の表示が保留されている回数(特図2保留数)が表示される。
普図保留表示装置には、普通図柄抽選の抽選結果の表示が保留されている回数(普図保留数)が表示される。
ラウンド表示装置には、大当り遊技状態中に実行されるラウンド遊技の回数(大当り遊技状態の種別)が表示される。
右打ち表示装置には、遊技球を打ち出すべき経路(左側経路又は右側経路)が表示される。
確変表示装置には、電源復帰時の遊技状態(特図高確率状態の生起中又は特図低確率状態の生起中)が表示される。
時短表示装置には、現在の遊技状態(時短制御の実行中又は停止中)が表示される。
また、パチンコ機1には、一又は複数の可動体ユニット(図示せず)が配設されている。本実施形態では、一体扉ユニット4において、一又は複数の可動体ユニットが配設され、また、遊技盤ユニット10において、一又は複数の可動体ユニットが配設されている。
一体扉ユニット4の各可動体ユニットは、装飾部4bの正面、受皿ユニット5の上面等に配設され、所定の演出動作を行うことが可能となっている。
遊技盤ユニット10の各可動体ユニットは、セット板の正面側に取り付けられている。具体的に、各可動体ユニットは、遊技盤11とメイン画像表示装置31(表示画面31a)との間の空間(以下、「演出空間」とする)に配設されている。そして、各可動体ユニットは、演出空間において、所定の演出動作を行うことが可能となっている。
各可動体ユニットは、演出部材と、駆動機構と、駆動源と、位置検出センサ24(図3参照)と、を含んで構成されている。本実施形態では、駆動源として、モータ23(図3参照)が用いられている。モータ23は、ステッピングモータとなっている。なお、駆動源として、ソレノイドが用いられる構成としても構わない。
演出部材は、駆動機構により、所定の方向に沿って変位させることが可能となっている。具体的には、演出部材は、初期位置と、演出位置と、を含む複数の位置に変位させることが可能となっている。演出部材は、モータ23によって駆動(変位)される。
位置検出センサ24は、フォトセンサ等によって構成されている。位置検出センサ24は、演出部材の位置を検出する。具体的に、位置検出センサ24は、投光部と、投光部から投光された光を受光する受光部と、を備えている。そして、位置検出センサ24は、受光部による投光部から投光された光の受光(検出)に応じて、検出信号を演出制御基板300に対して出力する。一方、位置検出センサ24は、受光部により投光部から投光された光を受光(検出)していないときには、演出制御基板300に対する検出信号の出力を停止する。
また、演出部材の所定位置には、遮蔽板が設けられている。そして、演出部材が初期位置に配置されているときには、遮蔽板が、位置検出センサ24の投光部と受光部との間に配置され、受光部への光の入光が遮断される。これによって、演出部材が初期位置に配置されているときには、位置検出センサ24から演出制御基板300に対する検出信号の出力が停止される。一方、演出部材が初期位置に配置されていないときには、位置検出センサ24から演出制御基板300に対して検出信号が出力される。
これによって、演出制御基板300では、位置検出センサ24からの検出信号の入力状況によって、演出部材が初期位置に配置されているか否かを検出することが可能となっている。
また、パチンコ機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に対して送信する。
(制御系の構成)
次に、パチンコ機1における制御系の構成を説明する。
図3は、パチンコ機の制御系の構成を示すブロック図である。図6は、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が備える内枠の背面側に取り付けられている。
(主制御基板200の構成)
まず、主制御基板200の構成を説明する。
主制御基板200は、遊技の進行を制御する。
主制御基板200は、ワンチップマイクロコンピュータ(ワンチップマイコン)、クロック発生回路202、乱数発生回路203、入力ポート204、出力ポート205、性能表示装置206、RAMクリアスイッチ207、設定キースイッチ208、シンクドライバ240、ソースドライバ250a,250b等を含んで構成されている。
ワンチップマイクロコンピュータは、CPUコア、レジスタ、半導体メモリ等を集積したLSIとなっている。具体的に、ワンチップマイクロコンピュータは、CPU210、ROM220、RAM230等を含んで構成されている。
主制御基板200は、CPU210が使用するメモリ領域を含んで構成されている。図6に示すように、CPU210が使用するメモリ領域は、ROM220に割り当てられたメモリ領域(0000H~2FFFH)と、RAM230に割り当てられたメモリ領域(F000H~F3FFH)と、を含んで構成されている。
ここで、図6では、メモリ領域を特定するためのアドレスを、16進数で示している(「H」は、16進数であることを示している)。
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との境界を明確化している。
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との境界を明確化している。
本実施形態では、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)に基づく処理において、使用外領域M2に記憶されているデータを参照することが許可されている。
一方、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)に基づく処理により、使用外領域M2に記憶されているデータが書き換えられる(変更される)ことが禁止されている。
また、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)に基づく処理において、使用領域M1に記憶されているデータを参照することが許可されている。
一方、使用外領域m2に記憶されているプログラム(遊技機規則で定める試験に関する処理を実行するためのプログラム、又は、性能表示装置206の表示を制御するためのプログラム)に基づく処理により、使用領域M1に記憶されているデータが書き換えられる(変更される)ことが禁止されている。
そして、パチンコ機1における遊技は、使用領域m1に記憶されているプログラム(遊技の進行を制御するためのプログラム)により、進行(完結)することが可能となっている。
クロック発生回路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])ごとに更新される。
第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])ごとに更新される。
入力ポート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」が設定される。
出力ポート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に入力される。
また、主制御基板200は、コマンド出力ポート1と、コマンド出力ポート2と、を含んで構成されている。そして、CPU210は、コマンド出力ポート1から、演出制御基板300に対して制御コマンド(サブコマンド)を送信するとともに、コマンド出力ポート2から、払出制御基板400に対して制御コマンド(払出コマンド)を送信する。
コマンド出力ポート1及びコマンド出力ポート2は、それぞれ、送信用データレジスタ(図示せず)と、FIFO(First In First Out)バッファ(図示せず)と、送信用シフトレジスタ(図示せず)と、を有している。
送信用データレジスタは、後述するサブコマンド送信処理(ステップS2-4)に基づいて入力された制御コマンドを、FIFOバッファに対して出力する。
FIFOバッファは、複数のレジスタから構成され、複数の制御コマンドを記憶することが可能となっている。そして、FIFOバッファは、送信用データレジスタから入力された制御コマンドを記憶するとともに、記憶している制御コマンドを入力された順番で送信用シフトレジスタに対して出力する。
送信用シフトレジスタは、FIFOバッファから入力された制御コマンドについて、パラレル-シリアル変換を行い、シリアルデータとして、演出制御基板300又は払出制御基板400に対して送信する。
性能表示装置206は、複数の点灯素子(セグメント)を含んで構成されている。各点灯素子は、発光素子(本実施形態では、LED)により構成されている。なお、性能表示装置206は、遊技盤11の背面側に配置されていることによって、遊技者による視認が不可能となっている。
後述するように、パチンコ機1では、遊技機の状態(以下、「遊技機状態」とする)として、遊技可能状態と、設定変更状態と、設定確認状態と、設定異常状態と、RAM異常状態と、バックアップ異常状態と、が規定されている。そして、生起されている遊技機状態に応じて、性能表示装置206に表示される情報が変化する。
性能表示装置206は、4つ(4桁)の表示部(図示せず)を含んで構成されている。各表示部は、8つの点灯素子から構成されている。すなわち、各表示部は、数字、記号等を表示することが可能な7セグメントLEDと、小数点等のドットを表示することが可能なドットセグメントLEDと、から構成されている。
具体的に、性能表示装置206は、32の点灯素子(LED33~LED64)を含んで構成されている。そして、性能表示装置206では、LED33~LED40が、1桁目の表示部となり、LED41~LED48が、2桁目の表示部となり、LED49~LED56が、3桁目の表示部となり、LED57~LED64が、4桁目の表示部となっている。
遊技可能状態の生起中には、遊技の進行が可能となる。そして、遊技可能状態の生起中には、性能表示装置206において、ベース比率が表示される。
本実施形態では、遊技可能状態の生起中、性能表示装置206において、第1のベース比率と、第2のベース比率とが、所定時間(本実施形態では、5.0[s])ごとに、交互に表示される。
「第1のベース比率」は、現在の区間のベース比率(現在の区間の開始から現時点までの期間について算出されたベース比率)となっている。
「第2のベース比率」は、前回の区間のベース比率(前回の区間について算出された最終的なベース比率)となっている。
具体的に、性能表示装置206では、4桁の表示部のうち、上位2桁の表示部により、ベース比率の種別(第1のベース比率又は第2のベース比率)を識別するための情報が表示され、下位2桁の表示部により、ベース比率(百分率)を示す数字が表示される。
設定変更状態の生起中には、設定値の変更が可能となる。そして、設定変更状態の生起中には、性能表示装置206において、RAM230の設定値領域に記憶(設定)されている設定値が表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、設定変更状態の生起中であることを示す情報(具体的には、上位1桁目に「r」、上位2桁目に「n.」、上位3桁目に「-」)が表示され、最下位1桁の表示部により、設定値領域に記憶されている設定値を示す数字が表示される。
設定確認状態の生起中には、設定値の確認が可能となる。そして、設定確認状態の生起中には、性能表示装置206において、RAM230の設定値領域に記憶(設定)されている設定値が表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、設定確認状態の生起中であることを示す情報(具体的には、上位1桁目に「r」、上位2桁目に「n.」、上位3桁目の表示なし)が表示され、最下位1桁の表示部により、設定値領域に記憶されている設定値を示す数字が表示される。
遊技停止状態(設定異常状態、RAM異常状態、及び、バックアップ異常状態)の生起中には、遊技の進行が不可能となる。そして、遊技停止状態の生起中には、性能表示装置206において、発生した異常に対応するエラーコードが表示される。
具体的に、性能表示装置206では、4桁の表示部のうち、上位3桁の表示部により、遊技停止状態の生起中であることを示す情報(具体的には、上位1桁目に「E」、上位2桁目に「r.」、上位3桁目の表示なし)が表示され、最下位1桁の表示部により、発生した異常(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応するエラーコードを示す数字が表示される。
RAMクリアスイッチ207は、タクタイルスイッチとなっている。すなわち、RAMクリアスイッチ207は、押下操作が可能な操作部を含んで構成されている。そして、RAMクリアスイッチ207は、操作部が押下操作されているときに、RAMクリア信号を、入力ポート1に対して出力する。
設定キースイッチ208は、キーロックスイッチとなっている。すなわち、設定キースイッチ208は、鍵穴が設けられた操作部を含んで構成されている。操作部は、鍵穴に専用の鍵が挿入されることにより、ロックが解除され、OFF状態からON状態に回転操作する(切り替える)ことが可能となる。そして、設定キースイッチ208は、操作部がON状態とされているときに、検出信号を、入力ポート1に対して出力する。
シンクドライバ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を点灯制御するための制御負荷を低減することが可能となる。
また、主制御基板200は、試験信号出力回路(図示せず)を含んで構成されている。
CPU210は、後述する試験信号出力処理(ステップS4-24)において、内部状態(大当り遊技状態、時短制御の実行状態、特別図柄抽選の確率状態等)を示す試験用の情報(試験信号)を生成し、生成した試験信号を、RAM230のポート出力要求バッファに格納する。これによって、ポート出力要求バッファに格納された試験信号が、所定の出力ポートから出力される。そして、所定の出力ポートから出力された試験信号は、試験信号出力回路を介して、試験用のコンピュータ(図示せず)のインターフェース基板に入力される。
また、主制御基板200では、特図1始動口スイッチ101からの検出信号、特図2始動口スイッチ102からの検出信号、ゲートスイッチ104からの検出信号、カウントスイッチ103からの検出信号、右入賞口スイッチ105からの検出信号、左入賞口スイッチ106からの検出信号、アウトスイッチ109からの検出信号等が、入力ポート204に入力されるとともに、試験信号出力回路を介して、試験用のコンピュータのインターフェース基板に入力される。
さらに、主制御基板200では、出力ポート3から出力された各ソレノイド(普通電動役物ソレノイド64、特別電動役物ソレノイド65等)の駆動を制御するための制御信号が、各ソレノイド64,65に入力されるとともに、試験信号出力回路を介して、試験用のコンピュータのインターフェース基板に入力される。
(払出制御基板400の構成)
次に、払出制御基板400の構成を説明する。
図4は、発射条件検出回路及び発射制御回路の構成を示すブロック図である。
払出制御基板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による遊技球発射動作の制御方法を詳細に説明する。
図4に示すように、払出制御基板400は、遊技球払出動作を制御するための回路として、発射条件検出回路420と、発射制御回路425と、を含んで構成されている。
発射条件検出回路420は、後述する発射条件の成立を検出する回路となっている。
発射条件検出回路420は、操作検出部421と、発射可能条件検出部422と、発射条件検出部423と、を含んで構成されている。
操作検出部421は、ハンドル操作部の回転操作(回転操作量)を検出する回路となっている。
操作検出部421は、発射ボリューム411の抵抗値(電圧値)に応じて操作検出信号の出力を制御する(操作検出信号をハイレベル又はローレベルとする)オペアンプを含んで構成される。
具体的に、発射ハンドルユニット6では、ハンドル操作部の回転操作量に応じて、発射ボリューム411の抵抗値が変化する。そして、操作検出部421は、発射ボリューム411の抵抗値(電圧値)を検出し、検出した抵抗値(電圧値)に基づいて、ハンドル操作部の回転操作の有無と、ハンドル操作部の回転操作量と、を検出する。
そして、操作検出部421は、ハンドル操作部の回転操作を検出しているときに、操作検出信号を生成し、生成した操作検出信号を、発射可能条件検出部422に対して出力する(操作検出信号をハイレベルとする)。一方、操作検出部421は、ハンドル操作部の回転操作を検出していないときに、発射可能条件検出部422に対する操作検出信号の出力を停止する(操作検出信号をローレベルとする)。
また、操作検出部421は、ハンドル操作部の回転操作を検出しているときに、ハンドル操作部の回転操作量(発射ボリューム411の抵抗値)に応じた発射強度信号を生成し、生成した発射強度信号を、発射制御回路425に対して出力する。
発射可能条件検出部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)の条件のうち、少なくとも一方の条件を満たしていないときに、発射可能条件が成立しない構成としても構わない。
具体的に、発射可能条件検出部422は、操作検出部421から入力される操作検出信号と、タッチセンサ412から入力されるタッチ信号と、発射停止スイッチ413から入力される発射停止信号と、に基づいて、発射可能条件の成立の有無を検出する。
この際、発射可能条件検出部422では、操作検出信号、タッチ信号、及び、発射停止信号の全てが入力されているときに、発射可能条件の成立が検出される。一方、操作検出信号、タッチ信号、及び、発射停止信号のうち、少なくとも一の信号が入力されていないときに、発射可能条件の成立が検出されない。
発射可能条件検出部422は、発射可能条件の成立を検出しているときに、ハンドル検出信号を生成し、生成したハンドル検出信号を、主制御基板200及び発射条件検出部423のそれぞれに対して出力する(ハンドル検出信号をハイレベルとする)。一方、発射可能条件検出部422は、発射可能条件の成立を検出していないときに、主制御基板200及び発射条件検出部423のそれぞれに対するハンドル検出信号の出力を停止する(ハンドル検出信号をローレベルとする)。
発射条件検出部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に対して出力される。
具体的に、発射条件検出部423は、発射可能条件検出部422から入力されるハンドル検出信号と、主制御基板200から入力される発射許可信号と、CRユニット700から入力されるCR接続信号と、に基づいて、発射条件の成立の有無を検出する。
この際、発射条件検出部423では、ハンドル検出信号、発射許可信号、及び、CR接続信号の全てが入力されているときに、発射条件の成立が検出される。一方、ハンドル検出信号、発射許可信号、及び、CR接続信号のうち、少なくとも一の信号が入力されていないときに、発射条件の成立が検出されない。
発射条件検出部423は、発射条件の成立を検出しているときに、発射信号を生成し、生成した発射信号を、発射制御回路425に対して出力する(発射信号をハイレベルとする)。一方、発射条件検出部423は、発射条件の成立を検出していないときに、発射制御回路425に対する発射信号の出力を停止する(発射信号をローレベルとする)。
発射制御回路425は、遊技球発射装置430による遊技球の発射強度と、遊技球発射装置430による遊技球の発射タイミングと、を制御する回路となっている。すなわち、発射制御回路425は、遊技球発射装置430(発射ソレノイド431)に対する駆動信号の出力を制御する。
具体的に、発射制御回路425は、クロック発生部(図示せず)と、発射タイミング制御部(図示せず)と、発射ソレノイド駆動部(図示せず)と、を含んで構成されている。
クロック発生部は、所定周波数のクロック信号を、発射タイミング制御部に対して出力する。
発射タイミング制御部は、クロック発生部から入力されるクロック信号に基づいて、発射タイミングを制御するためのパルス信号を生成し、生成したパルス信号を、発射ソレノイド駆動部に対して出力する。この際、発射タイミング制御部は、1分間当たりに発射される遊技球の数が所定数(例えば、100[球])となるように、パルス信号を生成する。
発射ソレノイド駆動部は、発射条件検出部423から入力される発射信号と、発射タイミング制御部から入力されるパルス信号と、操作検出部421から入力される発射強度信号と、に基づいて、発射ソレノイド431に対する駆動信号の出力を制御する。
具体的に、発射ソレノイド駆動部は、発射条件検出部423から発射信号が入力されているときに、発射タイミング制御部からパルス信号が入力されたことを契機として、操作検出部421から入力される発射強度信号に応じた駆動信号(駆動電流)を、発射ソレノイド431に対して出力する。これによって、操作検出部421から入力される発射強度信号に応じた強度で、遊技球が発射される。
一方、発射ソレノイド駆動部は、発射条件検出部423から発射信号が入力されていないときに、発射ソレノイド431に対する駆動信号の出力を停止する。これによって、遊技球の発射が停止される。
遊技球発射装置430は、打球槌(図示せず)と、打球槌を駆動する発射ソレノイド431と、を含んで構成されている。発射ソレノイド431は、ロータリーソレノイドにより構成されている。ここで、モータ等の他の駆動源により打球槌を駆動する構成としても構わない。
遊技球発射装置430には、球送りユニット(図示せず)から遊技球が供給される。そして、発射ソレノイド431に対して駆動信号が入力されると、入力された駆動信号に応じて発射ソレノイド431が駆動され、打球槌により遊技球が打ち出される。これによって、遊技領域30に対して遊技球が発射される。
以上により、パチンコ機1では、主制御基板200において遊技可能状態が設定されており、かつ、CRユニット700と払出制御基板400との間で通信が可能な状態であることを前提として、発射停止ボタンが押下操作されることなく、遊技者の接触によりハンドル操作部が回転操作(初期位置から限度位置側に向かって変位)されると、遊技球発射装置430による遊技球発射動作が開始される。そして、遊技球発射装置430による遊技球発射動作の実行中には、ハンドル操作部の回転操作量に応じた強さで、遊技領域30に対して遊技球が発射される。
また、発射停止ボタンが押下操作されると、遊技球発射装置430による遊技球発射動作が停止される。すなわち、遊技者の接触によりハンドル操作部が回転操作されている状態であっても、発射停止ボタンが押下操作されると、遊技球発射装置430による遊技球発射動作が停止される。
さらに、ハンドル操作部が初期位置に戻されると(ハンドル操作部が回転操作されていない状態とされると)、遊技球発射装置430による遊技球発射動作が停止される。すなわち、遊技者がハンドル操作部に接触している状態であっても、ハンドル操作部が初期位置に戻されると、遊技球発射装置430による遊技球の発射動作が停止される。
特に、パチンコ機1では、発射可能条件を満たしている状態(以下、「発射可能状態」とする)の発生中に、発射可能条件検出部422から主制御基板200に対するハンドル検出信号の出力が維持される。
すなわち、ハンドル操作部の回転操作が検出されており、かつ、ハンドル操作部への接触が検出されており、かつ、発射停止ボタンの押下操作が検出されていない状態(発射可能状態)の発生中に、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
この際、発射可能状態の発生中である限り、主制御基板200から発射条件検出回路420への発射許可信号の入力の有無に関わらず(主制御基板200において設定されている遊技機状態に関わらず)、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
また、発射可能状態の発生中である限り、CRユニット700から発射条件検出回路420へのCR接続信号の入力の有無に関わらず(CRユニット700と払出制御基板400との間で通信が可能な状態であるか否かに関わらず)、発射条件検出回路420から主制御基板200に対するハンドル検出信号の出力が維持される。
以上により、主制御基板200において、発射可能状態の発生中であるか否かを検出(把握)することが可能となり、発射可能状態の発生状況に応じて、遊技の進行、演出内容等を制御することが可能となる。
すなわち、主制御基板200は、ハンドル検出信号が入力されていない状態から入力されている状態に変化したこと(ハンドル検出信号がローレベルからハイレベルに変化したこと)を検出した場合に、発射可能状態の発生(開始)を指定する遊技状況指定コマンドを、演出制御基板300に対して送信する。
一方、主制御基板200は、ハンドル検出信号が入力されている状態から入力されていない状態に変化したこと(ハンドル検出信号がハイレベルからローレベルに変化したこと)を検出した場合に、発射可能状態の解除(終了)を指定する遊技状況指定コマンドを、演出制御基板300に対して送信する。
これによって、演出制御基板300は、発射可能状態の発生を指定する遊技状況指定コマンドの受信により、発射可能状態の発生を検出し、発射可能状態の解除を指定する遊技状況指定コマンドの受信により、発射可能状態の解除を検出することが可能となる。
そして、演出制御基板300は、発射可能状態の発生中であるか否かに応じて、演出内容を変化させることが可能となる。
(演出制御基板300の構成)
次に、演出制御基板300の構成を説明する。
図5は、演出制御基板の構成を示すブロック図である。図52は、サウンド回路の構成を示すブロック図である。
演出制御基板300は、主制御基板200から受信した制御コマンドに基づいて、演出(表示演出、音演出、ランプ演出、可動体演出等)を制御する。
図5に示すように、演出制御基板300は、マイクロコンピュータ(ワンチップマイクロコンピュータ)301と、マイクロコンピュータ301に対して外付け接続された各種の外部デバイスと、を含んで構成されている。
本実施形態では、各種の外部デバイスとして、制御ROM302、CGROM(Character Generator Read Only Memory)303、DRAM(Dynamic Random Access Memory)304、デジタルアンプ305等が含まれている。
制御ROM302には、マイクロコンピュータ301の動作を制御するための制御プログラム、制御プログラムの実行に必要となる各種のデータ、サウンド回路323のレジスタに設定される各種パラメータ、デジタルアンプ305に対して送信される各種パラメータ等が格納されている。特に、制御ROM302には、各演出番号に対応する演出シナリオデータ、各表示演出番号に対応するアニメーションテーブル、各種の圧縮ランプ駆動データ、各種の圧縮モータ駆動データが格納(記憶)されている。
「圧縮ランプ駆動データ」は、ランプ駆動データを所定形式で圧縮(符号化)したデータとなっている。「ランプ駆動データ」は、各種ランプ20,21を駆動するためのデータ(各系統に属するランプ20,21の輝度値を指定するデータ)となっている。
「圧縮モータ駆動データ」は、モータ駆動データを所定形式で圧縮(符号化)したデータとなっている。「モータ駆動データ」は、各種モータ23を駆動するためのデータ(各モータ23の出力値を規定するデータ)となっている。
本実施形態では、制御ROM302として、NOR型フラッシュメモリ(NOR型ROM)が用いられている。ここで、制御ROM302として、EEPROM(Electrically Erasable Programmable Read Only Memory)が用いられる構成としても構わない。
制御ROM302は、マイクロコンピュータ301のHOSTインターフェース313に接続されている。
CGROM303には、各種の圧縮画像データ、各種の圧縮音声データ等が格納(記憶)されている。
「圧縮画像データ」は、画像データ(素材データ)を所定形式で圧縮(符号化)したデータとなっている。「画像データ(素材データ)」は、描画処理の素材となる画像(動画像・静止画像)のデータとなっている。
「圧縮音声データ」は、音声データを所定形式で圧縮(符号化)したデータとなっている。「音声データ」は、各種スピーカ22から出力される音声のデータとなっている。
本実施形態では、CGROM303として、NAND型フラッシュメモリ(NAND型ROM)が用いられている。具体的に、CGROM303は、NAND型フラッシュメモリを記憶部として使用したSSD(Solid State Drive)により構成されている。
CGROM303は、マイクロコンピュータ301のCGバスインターフェース314に接続されている。CGバスインターフェース314は、SATA(Serial AT Attachment)規格の接続インターフェースとなっている。これによって、CGROM303に格納されている各種データの読み出しは、SATA転送される。
DRAM304には、プリロード領域が設けられている。プリロード領域には、CGROM303に格納されている各種のデータ(具体的には、圧縮画像データ、圧縮音声データ等)が転送(プリロード)される。
また、DRAM304には、描画コマンドバッファ領域が設けられている。本実施形態では、描画コマンドバッファ領域について、ダブルバッファリング方式が採用されており、DRAM304において、2つの描画コマンドバッファ領域が設けられている。
2つの描画コマンドバッファ領域は、同一のサイズで構成されている。2つの描画コマンドバッファ領域のうち、一方の描画コマンドバッファ領域が構築領域に指定されている期間中、他方の描画コマンドバッファ領域が転送領域に指定される。また、各描画コマンドバッファ領域について、1フレームごとに、構築領域の指定と、転送領域の指定と、が交互に切り替えられる。
そして、各描画コマンドバッファ領域について、構築領域に指定されている期間中に、当該描画コマンドバッファ領域において、後述するディスプレイリストが記憶(生成・構築)され、転送領域に指定されている期間中に、当該描画コマンドバッファ領域に記憶されているディスプレイリストが、VDP(具体的には、プリローダ回路319)に転送される。
DRAM304は、マイクロコンピュータ301のDRAMインターフェース315に接続されている。
マイクロコンピュータ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にバス接続されて構成されている。
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に対するデータの読み出し・書き込みを実行することが可能となっている。
CPU310は、各種の演出手段による演出動作を制御するために必要となる各種の演算処理、各種の演算処理に応じた内部デバイスの制御処理等を実行する。
この際、CPU310は、CPU用ワークメモリ(RAM)311、及び、DRAM304を、各種演算処理のワークエリア、各種演算処理データのバッファ領域、テーブルデータ領域、各種入力・出力データのバッファ領域等として使用する。
すなわち、CPU310は、主制御基板200から受信した制御コマンドに基づいて、実行する演出(演出番号)を選択し、選択した演出番号に対応する演出シナリオデータを選択・設定する。また、選択・設定した演出シナリオデータにしたがって、順次、各種の内部デバイス(VDP、サウンド回路323、ランプコントローラ317a、モータコントローラ317b等)を制御するための指令情報(内部コマンド)を生成する。
具体的に、CPU310は、指令情報にしたがって、アニメーションテーブル設定領域において、アニメーションテーブルを設定する。そして、設定されたアニメーションテーブルにしたがって、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを生成する。
「ディスプレイリスト」は、1フレーム分の描画コマンドの集まりとなっている。すなわち、ディスプレイリストには、1フレーム分の描画コマンド群が、所定の順番で記述されている。そして、VDPにおいて、ディスプレイリストで記述されている順番で、各描画コマンドに基づく処理が実行されることにより、1フレーム分の描画データが生成される。
「描画コマンド」は、VDPに実行させる描画処理(描画制御)の内容を指定する情報となっている。特に、描画コマンドには、描画に用いる圧縮画像データが記憶されている記憶領域のアドレス(以下、「画像アドレス」とする)、当該画像データの描画時の倍率(拡大率・縮小率)、当該画像データを描画する座標(フレームバッファ領域における座標)、当該画像データの描画時の透過率(透過度・透明度・透明率)等が指定されている。
また、CPU310は、電源投入時に、CGROM303に格納されている圧縮音声データを、DRAM304のプリロード領域に転送(プリロード)する。
すなわち、CGROM303等のNAND型フラッシュメモリは、制御ROM302等のNOR型フラッシュメモリと比較して、大容量化が容易である一方で、データの読み出し速度が遅い。このため、サウンド回路323による音声出力処理の実行時に、CGROM303(NAND型フラッシュメモリ)から、直接、圧縮音声データが読み出される構成とすると、処理性能が著しく低下する恐れがある。
そこで、パチンコ機1では、音声出力処理が実行される前に、予め、CGROM303に格納されている圧縮音声データが、CGROM303と比較してデータの読み出し速度が速い記憶手段であるDRAM304に転送される。そして、音声出力処理の実行時に、DRAM304から圧縮音声データが読み出される構成とすることで、処理性能の低下を防止している。
具体的に、CPU310は、電源投入時に、CGROM303に格納されている圧縮音声データのうち、所定の圧縮音声データを、DRAM304のプリロード領域に転送(プリロード)する。この際、本実施形態では、CGROM303に格納されている全ての圧縮音声データが、DRAM304のプリロード領域に転送される。ここで、CGROM303に格納されている圧縮音声データのうち、一部の圧縮音声データが、DRAM304のプリロード領域に転送される構成としても構わない。
そして、パチンコ機1では、上記の所定の圧縮音声データの転送が完了した後に、各種スピーカ22による音声の出力の制御(サウンド回路323による音声出力処理)を実行することが可能な状態となる。換言すると、上記の所定の圧縮音声データの転送が完了する前には、各種スピーカ22による音声の出力の制御(サウンド回路323による音声出力処理)を実行することが不可能な状態となる。
また、上記の所定の圧縮音声データの転送が完了した後に、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)を実行することが可能な状態となる。換言すると、上記の所定の圧縮音声データの転送が完了する前には、各種画像表示装置31,32による演出画像の表示の制御(VDPによる描画処理)を実行することが不可能な状態となる。
一方、上記の所定の圧縮音声データの転送が完了する前に、各種ランプ20,21の駆動(発光)の制御(ランプコントローラ317aによるランプ駆動処理)を実行することが可能な状態となる。
また、上記の所定の圧縮音声データの転送が完了する前に、各種モータ23(各種可動体)の駆動の制御(モータコントローラ317bによるモータ駆動処理)を実行することが可能な状態となる。
転送回路318は、内部デバイス間における各種データの転送を実行する。
具体的に、転送回路318は、転送領域に指定されている描画コマンドバッファ領域に記憶されているディスプレイリストを、プリローダ回路319に転送する。また、転送回路318は、プリローダ回路319により書き換えられたディスプレイリストを、描画回路322に転送する。
VRAM316には、画像展開領域が設けられている。そして、画像展開領域には、グラフィックスデコーダ回路321により展開(復元・復号)された画像データ(素材データ)が一時的に記憶される。
また、VRAM316には、フレームバッファ領域が設けられている。本実施形態では、フレームバッファ領域について、ダブルバッファリング方式が採用されており、VRAM316において、2つのフレームバッファ領域が設けられている。
2つのフレームバッファ領域は、同一のサイズで構成されている。2つのフレームバッファ領域のうち、一方のフレームバッファ領域が描画領域に指定されている期間中、他方のフレームバッファ領域が出力領域に指定される。また、各フレームバッファ領域について、1フレームごとに、描画領域の指定と、出力領域の指定と、が交互に切り替えられる。
そして、各フレームバッファ領域について、描画領域に指定されている期間中に、当該フレームバッファ領域において、1フレーム分の描画データが記憶(生成・描画)され、出力領域に指定されている期間中に、当該フレームバッファ領域に記憶されている1フレーム分の描画データに基づいて、映像信号の出力が実行される。
マイクロコンピュータ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から圧縮画像データが読み出される構成とすることで、処理性能の低下を防止している。
具体的に、プリローダ回路319は、ディスプレイリストを受信するごとに、CGROM303に格納されている圧縮画像データのうち、当該ディスプレイリストで指定されている1フレーム分の圧縮画像データを、DRAM304のプリロード領域に転送(プリロード)する。この際、プリローダ回路319は、ディスプレイリストの書き換えを実行する。
すなわち、CPU310により生成されたディスプレイリストでは、各描画コマンドに含まれる画像アドレスとして、CGROM303の記憶領域を指定するアドレスが記述されている。そこで、プリローダ回路319は、ディスプレイリストに含まれる各描画コマンドについて、当該描画コマンドに含まれる画像アドレスが指定する記憶領域(CGROM303の記憶領域)に記憶されている圧縮画像データを、DRAM304の所定領域に転送した後、当該描画コマンドに含まれる画像アドレスを、転送後の記憶領域(DRAM304の所定領域)を指定するアドレスに書き換える。これによって、画像アドレスが書き換えられた新たなディスプレイリストが生成される。
ここで、本実施形態では、プリローダ回路319が、CGROM303に格納されている圧縮画像データを、DRAM304のプリロード領域に転送(プリロード)する構成となっている。しかしながら、プリローダ回路319が、CGROM303に格納されている圧縮画像データを、VRAM316の所定領域(プリロード領域)に転送する構成としても構わない。
プリローダ回路319により書き換えられたディスプレイリストは、転送回路318により、描画回路320に転送される。
描画回路322は、プリローダ回路319から受信したディスプレイリストにしたがって、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データを記憶(生成・描画)する。
具体的に、描画回路320は、ディスプレイリストを受信するごとに、当該ディスプレイリストで指定されている1フレーム分の圧縮画像データを、DRAM304から読み出す。DRAM304から読み出された1フレーム分の圧縮画像データは、グラフィックデコーダ回路321により復元(デコード・復号)され、VRAM316の画像展開領域に記憶(展開)される。そして、描画回路320は、画像展開領域に記憶されている画像データを用いて、描画領域に指定されているフレームバッファ領域において、1フレーム分の描画データを生成する。
表示回路320は、出力領域に指定されているフレームバッファ領域に記憶(生成・描画)されている1フレーム分の描画データに基づいて、映像信号を生成し、生成した映像信号を、各種画像表示装置31,32に対して出力する。本実施形態では、映像信号として、デジタルRGB信号が出力される。ここで、映像信号として、LVDS(Low voltage differential signaling)信号が出力される構成としても構わない。
具体的に、表示回路320は、データ取得回路(図示せず)、スケーラ回路(図示せず)、カラー補正回路(図示せず)、ディザラー回路(図示せず)、同期信号生成回路(図示せず)等を含んで構成されている。
データ取得回路は、出力領域に指定されているフレームバッファ領域に記憶されている描画データを読み出す。
スケーラ回路は、データ取得回路により読み出された描画データについて、スケーリング処理(拡大処理・縮小処理)を施すことが可能となっている。
カラー補正回路は、スケーラ回路による処理後の描画データについて、カラー補正処理を施すことが可能となっている。
ディザラー回路は、カラー補正回路による処理後の描画データについて、ディザリング処理を施すことが可能となっている。
そして、ディザリング回路による処理後の描画データが、映像信号(デジタルRGB信号)として出力される。
同期信号生成回路は、水平同期信号と、垂直同期信号(Vsync)と、を生成する。そして、同期信号生成回路は、生成した水平同期信号及び垂直同期信号を、各種画像表示装置31,32に対して出力する。また、同期信号生成回路は、生成した垂直同期信号を、CPU310に対して出力する。
ここで、本実施形態では、16.66[ms]ごとに、各画像表示装置31,32における演出画像の表示(1フレーム分の描画データに基づく演出画像の表示)が更新される。したがって、同期信号生成回路は、16.66[ms]ごとに、垂直同期信号を、CPU310に対して出力する(ハイレベルとする)。
サウンド回路323(内蔵音源)は、各種スピーカ22による音声(演出音)の出力(再生)を制御する。
図52に示すように、サウンド回路323は、40系統のトラック(トラック1~トラック40)と、8系統のオーディオバス(オーディオバス1~オーディオバス8)と、8系統のチャンネル(チャンネル1~チャンネル8)と、を含んで構成されている。
そして、各チャンネルには、デジタルアンプ305を介して、一のスピーカが接続(電気的に接続)されている。本実施形態では、チャンネル1に左上スピーカが接続され、チャンネル2に右上スピーカが接続され、チャンネル3に左中スピーカが接続され、チャンネル4に右中スピーカが接続され、チャンネル5にウーファーが接続されている。なお、チャンネル6~8については、未使用となっている。
ここで、左上スピーカ、右上スピーカ、左中スピーカ及び右中スピーカは、高音域・中音域用スピーカ(フルレンジスピーカ)として構成されている。一方、ウーファーは、低音域用スピーカとして構成されている。
サウンド回路323は、トラックごとに、独立したシーケンサ(図示せず)を搭載している。シーケンサには、トラックごとに、再生するフレーズ情報(圧縮音声データを指定する情報)を登録することが可能となっている。そして、シーケンサは、トラックごとに、登録されているフレーズ情報に基づく音声データの再生、停止、音量等を制御することが可能となっている。
各トラックには、圧縮音声デコーダ351、トラックフェーダー352、プログラマブルパン353等が設けられている。
圧縮音声デコーダ351は、圧縮音データを復元(デコード・復号)する。トラックフェーダー352は、トラックの音量(ボリューム)を設定する。プログラマブルパン353は、トラックの音声データを任意のオーディオバスに出力することにより、音の定位を制御する。
8系統のオーディオバスには、スイッチャー354、ダッカー355、チャンネルルーター356等が設けられている。
スイッチャー354は、8系統のオーディオバスの音声データ、及び、8系統の外部シリアル入力(図示せず)の音声データを、8系統のオーディオバスに割り当てる。ダッカー355は、8系統のオーディオバスのうち、所定のオーディオバスから入力された音声データの音量に基づいて、他のオーディオバスの音量をダッキングする。チャンネルルーター356は、各オーディオバスを、どのチャンネルに結び付けるかを設定する。
8系統のチャンネルには、チャンネルボリューム357、イコライザ358、リミッタ359、ポストエフェクタ360、マスターボリューム361、オーディオシリアル出力362等を含んで構成されている。
チャンネルボリューム357は、各チャンネルの音量を設定する。イコライザ358は、各チャンネルについて、特定周波数帯域の強調・減少を設定する(周波数を補正する)。なお、本実施形態では、イコライザ358について、未使用となっている。リミッタ359は、各チャンネルについて、スレッショルドを超える音を圧縮することにより、クリッピングを防止する。ポストエフェクタ360は、各チャンネルについて、特定周波数帯域の強調・減少、音量、発音タイミングの遅延(ディレイ)等を設定する。マスターボリューム361は、全チャンネル一括で音量を設定する。オーディオシリアル出力362は、各チャンネルの音声データをデジタルアンプ305に対してシリアル伝送するための変換を行う。
CPU310は、指令情報にしたがって、再生するフレーズ情報をシーケンサに登録する。これによって、シーケンサに登録されたフレーズ情報にしたがって、音声データが生成され、生成された音声データが、デジタルアンプ305を介して、各種スピーカ22に対して出力される。
シリアル通信コントローラ317は、ランプコントローラ317aと、モータコントローラ317bと、を含んで構成されている。
ランプコントローラ317aは、各種ランプ20,21の駆動(発光)を制御する。
具体的に、CPU310は、後述するランプ指令バッファ領域に設定されている指令情報(メッセージ)にしたがって、LEDレジスタを設定する。そして、ランプコントローラ317aは、LEDレジスタの設定に応じて、ランプ駆動データを生成し、生成したランプ駆動データを、クロック信号と共に、ランプドライバ332,342に対して出力する。この際、ランプ駆動データは、シリアルデータとして出力される。
ランプコントローラ317aは、ランプデコーダ回路(図示せず)を含んで構成されている。ランプデコーダ回路は、指令情報で指定されている圧縮ランプ駆動データを、制御ROM302から読み出す。また、読み出した圧縮ランプ駆動データを復元(デコード・復号)する。そして、復元したランプ駆動データに基づいて、ランプ駆動データを生成し、生成したランプ駆動データを、ランプドライバ332,342に対して出力する。
モータコントローラ317bは、各種モータ23(各種可動体)の駆動を制御する。
具体的に、CPU310は、後述する可動体指令バッファ領域に設定されている指令情報(メッセージ)にしたがって、モータレジスタを設定する。そして、モータコントローラ317bは、モータレジスタの設定に応じて、モータ駆動データを生成し、生成したモータ駆動データを、クロック信号と共に、モータドライバ333,343に対して出力する。この際、モータ駆動データは、シリアルデータとして出力される。
モータコントローラ317bは、モータシーケンサ回路(図示せず)を含んで構成されている。モータシーケンサ回路は、指令情報で指定されている圧縮モータ駆動データを、制御ROM302から読み出す。また、読み出した圧縮モータ駆動データを復元(デコード・復号)する。そして、復元したモータ駆動データに基づいて、モータ駆動データを生成し、生成したモータ駆動データを、モータドライバ333,343に対して出力する。
また、モータコントローラ317bには、ドライバ基板330から、各種センサ24の検出状況を示す情報が入力されるとともに、サブ接続基板340から、各スイッチ25~29の検出状況を示す情報と、各種センサ24の検出状況を示す情報と、が入力される。
(演出制御基板300による演出の制御方法)
次に、演出制御基板300による演出の制御方法を説明する。
CPU310は、主制御基板200から受信した制御コマンドに応じて、実行する演出(演出番号)を選択する。そして、選択した演出番号に対応する演出シナリオデータと、当該演出シナリオデータに対応する演出シナリオタイマと、をDRAM304の演出シナリオ設定領域に設定する。
「演出シナリオデータ」は、演出の進行を規定する情報となっている。具体的に、演出シナリオデータには、複数のプロセスデータが、時系列に沿って登録されている。すなわち、演出シナリオデータには、複数のプロセスデータと、各プロセスデータに基づく処理の開始時期(開始タイミング)を指定する情報と、が登録されている。
各プロセスデータには、一又は複数の指令情報が含まれている。例えば、指令情報として、サブ演出(表示演出、音演出、ランプ演出、又は、可動体演出)の開始を指定する指令情報、サブ演出(表示演出、音演出、ランプ演出、又は、可動体演出)の終了を指定する指令情報(以下、「演出終了指令」とする)等が規定されている。
また、CPU310は、演出シナリオ設定領域に設定されている演出シナリオデータに基づいて、演出の進行を制御する。
具体的に、CPU310は、所定周期で、演出シナリオ設定領域に設定されている演出シナリオタイマを更新するとともに、更新後の演出シナリオタイマの値に基づいて、演出シナリオ設定領域に設定されている演出シナリオデータに登録されているプロセスデータにおいて、開始時期が到来したプロセスデータが存在するか否かを判定する。そして、開始時期が到来したプロセスデータが存在すると判定した場合、当該プロセスデータに含まれる各指令情報を、対応するバッファ領域に格納(記憶)する。
この際、表示演出に関する指令情報(表示演出の開始を指定する指令情報、表示演出の終了を指定する指令情報等)は、表示指令バッファ領域に格納される。一方、音演出に関する指令情報(音演出の開始を指定する指令情報、音演出の終了を指定する指令情報等)は、音指令バッファ領域に格納される。一方、ランプ演出に関する指令情報(ランプ演出の開始を指定する指令情報、ランプ演出の終了を指定する指令情報等)は、ランプ指令バッファ領域に格納される。一方、可動体演出に関する指令情報(可動体演出の開始を指定する指令情報、可動体演出の終了を指定する指令情報等)は、可動体指令バッファ領域に格納される。
(表示演出の制御方法)
次に、演出制御基板300による表示演出(表示)の制御方法を説明する。
制御ROM302には、各表示演出(各表示演出番号)に対応するアニメーションテーブルが格納されている。そして、各表示演出に対応するアニメーションテーブルには、当該表示演出(当該表示演出を構成する画像)に対応する表示プライオリティ情報が対応付けられている。
「表示プライオリティ情報」は、表示プライオリティを指定する情報となっている。
「表示プライオリティ」は、表示(描画)の優先順位を指定する情報となっている。
そして、複数の表示演出(表示)が時期的に重複して実行される場合、複数の表示演出(複数の表示演出に係る画像)に基づいて、表示画面31aの表示(表示画面31aに表示される演出画像)が構成される。この場合、当該表示(当該演出画像)を構成する複数の表示演出(複数の画像)のうち、表示プライオリティが上位の表示演出(画像)が、表示プライオリティが下位の表示演出(画像)に対して、優先して表示される。すなわち、当該演出画像を構成する複数の表示演出(当該複数の画像)について、表示プライオリティが上位の表示演出(画像)ほど、優先して表示される。
換言すると、当該演出画像を構成する複数の表示演出(複数の画像)のうち、表示プライオリティが上位の表示演出(画像)が、表示プライオリティが下位の表示演出(画像)よりも手前側(遊技者側)に表示される。すなわち、当該演出画像を構成する複数の表示演出(当該複数の画像)について、表示プライオリティが上位の表示演出(画像)ほど、手前側に表示される。
これによって、当該演出画像を構成する複数の表示演出(複数の画像)のうち、表示プライオリティが上位の表示演出(画像)と、表示プライオリティが下位の表示演出(画像)と、に重複する部分が存在する場合、当該重複する部分について、表示プライオリティが上位の表示演出(画像)が優先して表示される。
CPU310(表示制御部)は、所定周期で、表示指令バッファ領域に指令情報が格納されているか否かを判定する。そして、表示指令バッファ領域に指令情報が格納されていると判定した場合、表示指令バッファ領域に格納されている各指令情報を解析し、解析結果に応じた処理を実行する。
この際、表示指令バッファ領域に表示演出の開始を指定する指令情報が格納されている場合、制御ROM302に格納されているアニメーションテーブルのうち、当該指令情報が指定する表示演出番号に対応するアニメーションテーブルを読み出す。そして、DRAM304のアニメーションテーブル設定領域において、読み出したアニメーションテーブルを設定(記憶・登録)する。
これによって、制御ROM302に格納されているアニメーションテーブルが、アニメーションテーブル設定領域に複製される。なお、アニメーションテーブル設定領域には、複数のアニメーションテーブルを設定することが可能となっている。
「アニメーションテーブル」は、各種画像表示装置31,32による表示演出(演出画像の表示)の進行を規定する情報(画像の表示を制御するための各種のパラメータ)となっている。換言すると、アニメーションテーブルは、画像の動きを規定する情報となっている。
具体的に、アニメーションテーブルには、所定数のフレーム情報が、時系列に沿って登録されている。そして、アニメーションテーブルに登録されている所定数のフレーム情報について、登録されている順序にしたがって、各フレーム情報に基づく画像の表示を、順次、実行することによって、表示演出が進行する。
各フレーム情報は、1フレーム分の画像の表示を制御(実行・構成)するための各種のパラメータとなっている。すなわち、各フレーム情報は、描画に用いる画像データ(圧縮画像データ)を指定する情報(画像アドレス情報)、当該画像データ(当該表示演出)の表示プライオリティを指定する情報(表示プライオリティ情報)、当該画像データの描画時の倍率(拡大率・縮小率)を指定する情報(以下、「表示倍率情報」とする)、当該画像データを描画する座標(フレームバッファ領域における座標)を指定する情報(以下、「表示座標情報」とする)、当該画像データの描画時の透過率(透過度・透明度・透明率)を指定する情報(以下、「透過率情報」とする)等を含んで構成されている。
そして、CPU310は、アニメーションテーブル設定領域に設定されている一又は複数のアニメーションテーブルに基づいて、各フレームに対応する演出画像の表示を制御する。
具体的に、CPU310は、所定周期で、後述するコマンド構築処理を実行する。
コマンド構築処理では、まず、表示シナリオ設定領域に設定されている各アニメーションデータに対応するサブシナリオタイマを更新する。次に、アニメーションテーブル設定領域に設定されている全てのアニメーションテーブルに基づいて、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを構築する。
具体的に、アニメーションテーブル設定領域に設定されている全てのアニメーションテーブルについて、各アニメーションテーブルに登録されているフレーム情報のうち、ディスプレイリストを構築する対象として選択されているフレーム情報を取得する。そして、取得した全てのフレーム情報に基づいて、ディスプレイリストを構築する。
これによって、描画コマンドバッファ領域に生成されたディスプレイリストにしたがって、VDPが制御され、表示演出(メイン画像表示装置31による演出画像の表示)が制御される。
すなわち、表示シナリオ設定領域に、一のアニメーションデータが設定されている場合には、当該一のアニメーションデータにより指定されている画像データの描画を指定するディスプレイリストが構築される。
一方、表示シナリオ設定領域に、複数のアニメーションデータが設定されている場合には、当該複数のアニメーションデータにより指定されている画像データの描画を、所定の順番(順序)で実行することを指定するディスプレイリストが構築される。
この際、表示シナリオ設定領域に設定されている表示プライオリティ情報が指定する表示プライオリティに基づいて、当該表示プライオリティ情報に対応する画像データの描画を実行する順番が設定される。
(音演出の制御方法)
次に、演出制御基板300による音演出の制御方法を説明する。
CPU310(音制御部)は、所定周期で、音指令バッファ領域に指令情報が格納されているか否かを判定する。そして、音指令バッファ領域に指令情報が格納されていると判定した場合、音指令バッファ領域に格納されている各指令情報を解析し、解析結果に応じた処理を実行する。
ここで、音演出の開始を指定する指令情報には、再生を開始する圧縮音声データを指定する情報(音演出番号)、当該圧縮音声データを登録するトラックを指定する情報等が含まれている。そして、音指令バッファ領域に音演出の開始を指定する指令情報が格納されている場合には、当該指令情報が指定する圧縮音声データを指定する情報(音演出番号)を、当該指令情報が指定するトラックに登録する。これによって、各トラックに登録された情報にしたがって、音声データの生成・出力が制御される。
一方、音演出の停止を指定する指令情報には、再生を停止するトラックを指定する情報が含まれている。そして、音指令バッファ領域に音演出の終了を指定する指令情報が格納されている場合には、当該指令情報が指定するトラックについて、音声データの再生を停止する。
一方、音量の調整を指定する指令情報には、音量を調整するトラックを指定する情報、調整の内容を指定する情報等が含まれている。そして、音指令バッファ領域に音量の調整を指定する指令情報が格納されている場合には、当該指令情報が指定するトラックについて、当該指定情報が指定する調整内容にしたがって、音量を調整する。
(ランプ演出の制御方法)
次に、演出制御基板300によるランプ演出の制御方法を説明する。
CPU310は、所定周期で、ランプ指令バッファ領域に指令情報が格納されているか否かを判定する。そして、ランプ指令バッファ領域に指令情報が格納されていると判定した場合、ランプ指令バッファ領域に格納されている各指令情報を解析し、解析結果に応じた処理を実行する。
この際、ランプ指令バッファ領域にランプ演出の開始を指定する指令情報が格納されている場合、当該指令情報が指定するランプ演出番号に対応する圧縮ランプ駆動データを読み出して、読み出した圧縮ランプ駆動データを、ランプレジスタに設定する。これによって、ランプコントローラ317aにより、ランプレジスタに設定された圧縮ランプ駆動データにしたがって、ランプ演出(各種ランプ20,21の駆動(点灯))が制御される。
(可動体演出の制御方法)
次に、演出制御基板300による可動体演出の制御方法を説明する。
CPU310は、所定周期で、可動体指令バッファ領域に指令情報が格納されているか否かを判定する。そして、可動体指令バッファ領域に指令情報が格納されていると判定した場合、可動体指令バッファ領域に格納されている各指令情報を解析し、解析結果に応じた処理を実行する。
この際、可動体指令バッファ領域に可動体演出の開始を指定する指令情報が格納されている場合、当該指令情報が指定する圧縮モータ駆動データを読み出して、読み出した圧縮モータ駆動データを、モータレジスタに設定する。これによって、モータコントローラ317bにより、モータレジスタに設定された圧縮モータ駆動データにしたがって、可動体演出(各種モータ23(各種可動体)の駆動)が制御される。
(ドライバ基板330の構成)
ドライバ基板330は、パラレルシリアル変換回路331と、ランプドライバ332と、モータドライバ333と、を含んで構成されている。
ランプドライバ332は、ランプコントローラ317aから入力されたランプ駆動データに応じて、盤面ランプ21を構成する各系統の発光素子群の駆動(発光)を制御する。
この際、ランプ駆動データでは、盤面ランプ21を構成する各系統に対応する輝度値が指定されている。そして、盤面ランプ21を構成する各系統に対して、ランプ駆動データで指定されている輝度値に応じた励磁信号(駆動電流)が供給される。これによって、系統ごとに、当該系統を構成する発光素子群の駆動(発光)が制御される。
モータドライバ333は、モータコントローラ317bから入力されたモータ駆動データに応じて、遊技盤ユニット10に配設されている各種モータ23(各種可動体ユニットを構成するモータ23)に対する励磁信号(駆動電流)の出力を制御する。
この際、モータ駆動データでは、遊技盤ユニット10に配設されている各モータ23の出力値が指定されている。そして、各モータ23に対して、モータ駆動データで指定されている出力値に応じた励磁信号(駆動電流)が供給される。これによって、モータ23ごとに、駆動が制御される。
パラレルシリアル変換回路331には、各種センサ24からの検出信号が入力される。そして、パラレルシリアル変換回路331は、各種センサ24からの検出信号を、シリアルデータに変換して、シリアル通信コントローラ317に対して出力する。
(サブ接続基板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に対して出力する。
(デジタルアンプ305の構成)
次に、デジタルアンプ305の構成を説明する。
デジタルアンプ305は、サウンド回路323から入力された音声データ(デジタル信号)をアナログ信号に変換・増幅し、各種スピーカ22(左上スピーカ、右上スピーカ、左中スピーカ、右中スピーカ、及び、ウーファー)に対して出力する。この際、デジタルアンプ305は、各チャンネル(チャンネル1~チャンネル8)について、周波数補正、音量補正等を実行する。
特に、デジタルアンプ305は、DSP(Digital Signal Processor)を内蔵している。そして、デジタルアンプ305は、CPU310からデジタルアンプ305に対して周波数補正パラメータを送信することにより、各チャンネル(チャンネル1~チャンネル8)について、10バンド(周波数帯域)のPEQ(Parametric Equalizer)、3バンド(周波数帯域)のDRC(Dynamic Range Controller)、クロスオーバーフィルター、低音増強機能等の設定が可能となっている。
具体的に、デジタルアンプ305は、4つのCPUコア(コア1~コア4)を含んで構成されている。コア1は、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、周波数補正、音量補正等を実行する。コア2は、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、周波数補正、音量補正等を実行する。コア3は、チャンネル5(ウーファー)の音声データについて、周波数補正、音量補正等を実行する。コア4は、未使用となっている。
また、デジタルアンプ305には、周波数補正パラメータが設定(記憶)される周波数補正パラメータ設定レジスタが設けられている。そして、デジタルアンプ305は、周波数補正パラメータ設定レジスタに設定されている周波数補正パラメータにしたがって、各チャンネル(チャンネル1~チャンネル8)の音声データについて、周波数補正を実行する。
本実施形態では、周波数補正パラメータ設定レジスタが、コア1(チャンネル1,2)に対応する周波数補正パラメータ設定部1と、コア2(チャンネル3,4)に対応する周波数補正パラメータ設定部2と、コア3(チャンネル5,6)に対応する周波数補正パラメータ設定部3と、を含んで構成されている。
そして、コア1は、周波数補正パラメータ設定部1に設定されている周波数補正パラメータにしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、周波数補正を実行する。また、コア2は、周波数補正パラメータ設定部2に設定されている周波数補正パラメータにしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、周波数補正を実行する。さらに、コア3は、周波数補正パラメータ設定部3に設定されている周波数補正パラメータにしたがって、チャンネル5(ウーファー)の音声データについて、周波数補正を実行する。
(CPU310によるデジタルアンプ305の制御)
次に、CPU310によるデジタルアンプ305の制御について説明する。
図53は、周波数補正パラメータの種別を示す図である。
制御ROM302には、周波数補正パラメータが格納されている。
「周波数補正パラメータ」は、デジタルアンプ305が実行する周波数補正の内容を指定する情報となっている。
後述するように、CPU310は、シリアル通信コントローラ317を介して、周波数補正パラメータを、デジタルアンプ305に対して送信する。これによって、デジタルアンプ305において、CPU310から受信した周波数補正パラメータが、周波数補正パラメータ設定レジスタに設定され、周波数補正パラメータ設定レジスタに設定されている周波数補正パラメータにしたがって、各チャンネルの音声データについて、周波数補正が実行される。
図53に示すように、本実施形態では、周波数補正パラメータの種別として、周波数補正の内容が異なる4つの種別(具体的には、「通常時・周波数補正パラメータ」、「大当り時・周波数補正パラメータ」、「時短時・周波数補正パラメータ」及び「検査時・周波数補正パラメータ」)が規定されている。そして、制御ROM302において、「通常時・周波数補正パラメータ」、「大当り時・周波数補正パラメータ」、「時短時・周波数補正パラメータ」及び「検査時・周波数補正パラメータ」が格納されている。
「通常時・周波数補正パラメータ」は、通常遊技状態の生起中に対応する周波数補正パラメータとなっている。すなわち、「通常時・周波数補正パラメータ」は、通常遊技状態の生起中においてデジタルアンプ305が実行する周波数補正の内容を指定する情報となっている。
「通常遊技状態」は、大当り遊技状態が生起されておらず、かつ、時短制御が停止されている遊技状態となっている。
特に、「通常時・周波数補正パラメータ」では、各スピーカの周波数特性に応じて(各スピーカの周波数特性が活かされるように)、各チャンネル(各スピーカ)の周波数補正の内容が指定(規定)されている。
「通常時・周波数補正パラメータ」は、コア1に対応する「通常時・周波数補正パラメータ1」と、コア2に対応する「通常時・周波数補正パラメータ2」と、コア3に対応する「通常時・周波数補正パラメータ3」と、を含んで構成されている。
「通常時・周波数補正パラメータ1」は、コア1によるチャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「通常時・周波数補正パラメータ1」は、高音域及び中音域の強調、及び、低音域の除去(カット)を指定する。これによって、「通常時・周波数補正パラメータ1」が周波数補正パラメータ設定部1に設定されると、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「通常時・周波数補正パラメータ2」は、コア2によるチャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「通常時・周波数補正パラメータ2」は、高音域及び中音域の強調、及び、低音域の除去を指定する。これによって、「通常時・周波数補正パラメータ2」が周波数補正パラメータ設定部2に設定されると、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「通常時・周波数補正パラメータ3」は、コア3によるチャンネル5(ウーファー)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「通常時・周波数補正パラメータ3」は、低音域の強調、及び、高音域及び中音域の除去を指定する。これによって、「通常時・周波数補正パラメータ3」が周波数補正パラメータ設定部3に設定されると、チャンネル5(ウーファー)の音声データについて、低音域が強調されるとともに、高音域及び中音域が除去される。
「大当り時・周波数補正パラメータ」は、大当り遊技状態の生起中に対応する周波数補正パラメータとなっている。すなわち、「大当り時・周波数補正パラメータ」は、大当り遊技状態の生起中においてデジタルアンプ305が実行する周波数補正の内容を指定する情報となっている。
特に、「大当り時・周波数補正パラメータ」では、各スピーカの周波数特性に応じて(各スピーカの周波数特性が活かされるように)、各チャンネル(各スピーカ)の周波数補正の内容が指定(規定)されている。
「大当り時・周波数補正パラメータ」は、コア1に対応する「大当り時・周波数補正パラメータ1」と、コア2に対応する「大当り時・周波数補正パラメータ2」と、コア3に対応する「大当り時・周波数補正パラメータ3」と、を含んで構成されている。
「大当り時・周波数補正パラメータ1」は、コア1によるチャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「大当り時・周波数補正パラメータ1」は、高音域及び中音域の強調、及び、低音域の除去を指定する。これによって、「大当り時・周波数補正パラメータ1」が周波数補正パラメータ設定部1に設定されると、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「大当り時・周波数補正パラメータ2」は、コア2によるチャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「大当り時・周波数補正パラメータ2」は、高音域及び中音域の強調、及び、低音域の除去を指定する。これによって、「大当り時・周波数補正パラメータ2」が周波数補正パラメータ設定部2に設定されると、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「大当り時・周波数補正パラメータ3」は、コア3によるチャンネル5(ウーファー)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「大当り時・周波数補正パラメータ3」は、低音域の強調、及び、高音域及び中音域の除去を指定する。これによって、「大当り時・周波数補正パラメータ3」が周波数補正パラメータ設定部3に設定されると、チャンネル5(ウーファー)の音声データについて、低音域が強調されるとともに、高音域及び中音域が除去される。
「時短時・周波数補正パラメータ」は、時短制御の実行中に対応する周波数補正パラメータとなっている。すなわち、「時短時・周波数補正パラメータ」は、時短制御の実行中においてデジタルアンプ305が実行する周波数補正の内容を指定する情報となっている。
特に、「時短時・周波数補正パラメータ」では、各スピーカの周波数特性に応じて(各スピーカの周波数特性が活かされるように)、各チャンネル(各スピーカ)の周波数補正の内容が指定(規定)されている。
「時短時・周波数補正パラメータ」は、コア1に対応する「時短時・周波数補正パラメータ1」と、コア2に対応する「時短時・周波数補正パラメータ2」と、コア3に対応する「時短時・周波数補正パラメータ3」と、を含んで構成されている。
「時短時・周波数補正パラメータ1」は、コア1によるチャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「時短時・周波数補正パラメータ1」は、高音域及び中音域の強調、及び、低音域の除去を指定する。これによって、「時短時・周波数補正パラメータ1」が周波数補正パラメータ設定部1に設定されると、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「時短時・周波数補正パラメータ2」は、コア2によるチャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「時短時・周波数補正パラメータ2」は、高音域及び中音域の強調、及び、低音域の除去を指定する。これによって、「時短時・周波数補正パラメータ2」が周波数補正パラメータ設定部2に設定されると、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、高音域及び中音域が強調されるとともに、低音域が除去される。
「時短時・周波数補正パラメータ3」は、コア3によるチャンネル5(ウーファー)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「時短時・周波数補正パラメータ3」は、低音域の強調、及び、高音域及び中音域の除去を指定する。これによって、「時短時・周波数補正パラメータ3」が周波数補正パラメータ設定部3に設定されると、チャンネル5(ウーファー)の音声データについて、低音域が強調されるとともに、高音域及び中音域が除去される。
「検査時・周波数補正パラメータ」は、後述する動作確認処理の実行中に対応する周波数補正パラメータとなっている。すなわち、「検査時・周波数補正パラメータ」は、動作確認処理の実行中においてデジタルアンプ305が実行する周波数補正の内容を指定する情報となっている。
特に、「通常時・周波数補正パラメータ」では、各スピーカの周波数特性に関わらず、各チャンネル(各スピーカ)の周波数補正の内容が指定(規定)されている。本実施形態では、「検査時・周波数補正パラメータ」は、全てのチャンネル(全てのスピーカ)について、周波数補正を実行しないことを指定する情報となっている。
「検査時・周波数補正パラメータ」は、コア1に対応する「検査時・周波数補正パラメータ1」と、コア2に対応する「検査時・周波数補正パラメータ2」と、コア3に対応する「検査時・周波数補正パラメータ3」と、を含んで構成されている。
「検査時・周波数補正パラメータ1」は、コア1によるチャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「検査時・周波数補正パラメータ1」は、全ての周波数帯域について、補正を実行しないこと(補正なし)を指定する。これによって、「検査時・周波数補正パラメータ1」が周波数補正パラメータ設定部1に設定されると、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データについて、周波数補正が実行されない。
「検査時・周波数補正パラメータ2」は、コア2によるチャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「検査時・周波数補正パラメータ2」は、全ての周波数帯域について、補正を実行しないこと(補正なし)を指定する。これによって、「検査時・周波数補正パラメータ2」が周波数補正パラメータ設定部2に設定されると、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データについて、周波数補正が実行されない。
「検査時・周波数補正パラメータ3」は、コア3によるチャンネル5(ウーファー)の音声データに対する周波数補正の内容を指定する情報となっている。具体的に、「検査時・周波数補正パラメータ3」は、全ての周波数帯域について、補正を実行しないこと(補正なし)を指定する。これによって、「検査時・周波数補正パラメータ3」が周波数補正パラメータ設定部3に設定されると、チャンネル5(ウーファー)の音声データについて、周波数補正が実行されない。
DRAM304には、周波数補正パラメータ番号設定領域1と、周波数補正パラメータ番号設定領域2と、周波数補正パラメータ番号設定領域3と、が設けられている。
周波数補正パラメータ番号設定領域1には、周波数補正パラメータ設定部1に設定されている周波数補正パラメータの種別を指定する情報(以下、「周波数補正パラメータ番号」とする)が設定(記憶)される。
周波数補正パラメータ番号設定領域2には、周波数補正パラメータ設定部2に設定されている周波数補正パラメータの種別を指定する情報(周波数補正パラメータ番号)が設定(記憶)される。
周波数補正パラメータ番号設定領域3には、周波数補正パラメータ設定部3に設定されている周波数補正パラメータの種別を指定する情報(周波数補正パラメータ番号)が設定(記憶)される。
本実施形態では、周波数補正パラメータ番号として、「通常時・周波数補正パラメータ」を指定する値(具体的には、「0」)と、「大当り時・周波数補正パラメータ」を指定する値(具体的には、「1」)と、「時短時・周波数補正パラメータ」を指定する値(具体的には、「2」)と、「検査時・周波数補正パラメータ」を指定する値(具体的には、「3」)と、が規定されている。
そして、各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ番号設定領域3)には、「0」~「3」のうち何れかの値が設定される。
また、制御ROM302には、ポストエフェクタ周波数補正パラメータが格納されている。
「ポストエフェクタ周波数補正パラメータ」は、ポストエフェクタ360が実行する周波数補正の内容を指定する情報となっている。
本実施形態では、ポストエフェクタ周波数補正パラメータの種別として、周波数補正の内容が異なる2つの種別(具体的には、「通常時・ポストエフェクタ周波数補正パラメータ」,「検査時・ポストエフェクタ周波数補正パラメータ」)が規定されている。そして、制御ROM302において、「通常時・ポストエフェクタ周波数補正パラメータ」,「検査時・ポストエフェクタ周波数補正パラメータ」が格納されている。
「通常時・ポストエフェクタ周波数補正パラメータ」は、遊技中に対応するポストエフェクタ周波数補正パラメータとなっている。すなわち、「通常時・ポストエフェクタ周波数補正パラメータ」は、遊技中においてポストエフェクタ360が実行する周波数補正の内容を指定する情報となっている。特に、「通常時・ポストエフェクタ周波数補正パラメータ」は、各チャンネル(チャンネル1~チャンネル8)の音声データについて、所定の周波数補正を実行することを指定する。
「検査時・ポストエフェクタ周波数補正パラメータ」は、後述する動作確認処理の実行中に対応するポストエフェクタ周波数補正パラメータとなっている。すなわち、「検査時・ポストエフェクタ周波数補正パラメータ」は、動作確認処理の実行中においてポストエフェクタ360が実行する周波数補正の内容を指定する情報となっている。特に、「検査時・ポストエフェクタ周波数補正パラメータ」は、全てのチャンネル(チャンネル1~チャンネル8)の音声データについて、周波数補正を実行しないことを指定する。
サウンド回路323には、ポストエフェクタ周波数補正番号が設定されるポストエフェクタ周波数補正パラメータ番号レジスタが設けられている。ポストエフェクタ周波数補正パラメータ番号レジスタには、「通常時・ポストエフェクタ周波数補正パラメータ」を指定する値(具体的には、「0」)、及び、「検査時・ポストエフェクタ周波数補正パラメータ」を指定する値(具体的には、「1」)のうち、何れかの値が設定される。
そして、ポストエフェクタ360は、ポストエフェクタ周波数補正パラメータ番号レジスタに設定されている値に応じて、制御ROM302に格納されているポストエフェクタ周波数補正パラメータを参照して、周波数補正を実行する。
具体的に、ポストエフェクタ360は、ポストエフェクタ周波数補正パラメータ番号レジスタに「0」が設定されている場合、制御ROM302に格納されている「通常時・ポストエフェクタ周波数補正パラメータ」にしたがって、周波数補正を実行する。一方、ポストエフェクタ周波数補正パラメータ番号レジスタに「1」が設定されている場合、制御ROM302に格納されている「検査時・ポストエフェクタ周波数補正パラメータ」にしたがって、周波数補正を実行する。
(遊技中における周波数補正パラメータの設定)
CPU310は、パチンコ機1に電源が投入されると、後述するサブCPU初期化処理に含まれる初期設定処理(ステップS28-1)において、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ番号設定領域3)の値を初期化する。これによって、各周波数補正パラメータ番号設定領域において、「通常時・周波数補正パラメータ」を指定する値(具体的には、「0」)が設定される。
また、CPU310は、初期設定処理(ステップS28-1)において、サウンド回路323のポストエフェクタ周波数補正パラメータ番号レジスタの値を初期化する。これによって、ポストエフェクタ周波数補正パラメータ番号レジスタにおいて、「通常時・ポストエフェクタ周波数補正パラメータ」を指定する値(具体的には、「0」)が設定される。
これによって、その後、ポストエフェクタ360において、各チャンネルの音声データについて、「通常時・ポストエフェクタ周波数補正パラメータ」にしたがって、周波数補正が実行される。
また、CPU310は、デジタルアンプ設定処理(ステップS28-3)において、デジタルアンプ305に対してリセット信号を送信した後に、「通常時・周波数補正パラメータ」(「通常時・周波数補正パラメータ1」~「通常時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305において、各種レジスタ(周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)、音量の設定(補正)に関するレジスタ、端子の設定に関するレジスタ、ステータス情報設定レジスタ等)が初期化(クリア)された後に、周波数補正パラメータ設定レジスタにおいて「通常時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「通常時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「通常時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「通常時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「通常時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
また、CPU310は、大当り遊技状態の開始時に、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ設定領域3)において、「大当り時・周波数補正パラメータ」を指定する値(具体的には、「1」)を設定する。
また、CPU310は、「大当り時・周波数補正パラメータ」(「大当り時・周波数補正パラメータ1」~「大当り時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「大当り時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「大当り時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「大当り時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「大当り時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「大当り時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「大当り時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「大当り時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
また、CPU310は、大当り遊技状態の終了に応じて時短制御を開始しない場合、大当り遊技状態の終了時に、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ設定領域3)において、「通常時・周波数補正パラメータ」を指定する値(具体的には、「0」)を設定する。
また、CPU310は、「通常時・周波数補正パラメータ」(「通常時・周波数補正パラメータ1」~「通常時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「通常時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「通常時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「通常時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「通常時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「通常時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
一方、CPU310は、大当り遊技状態の終了に応じて時短制御を開始する場合、大当り遊技状態の終了時に、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ設定領域3)において、「時短時・周波数補正パラメータ」を指定する値(具体的には、「2」)を設定する。
また、CPU310は、「時短時・周波数補正パラメータ」(「時短時・周波数補正パラメータ1」~「時短時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「時短時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「時短時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「時短時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「時短時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「時短時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「時短時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「時短時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
また、CPU310は、時短制御の終了時(時短回数の消化時)に、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ設定領域3)において、「通常時・周波数補正パラメータ」を指定する値(具体的には、「0」)を設定する。
また、CPU310は、「通常時・周波数補正パラメータ」(「通常時・周波数補正パラメータ1」~「通常時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「通常時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「通常時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「通常時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「通常時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「通常時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
以上により、通常遊技状態の生起中には、ポストエフェクタ360により、「通常時・ポストエフェクタ周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行されるとともに、デジタルアンプ305により、「通常時・周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行される。
一方、大当り遊技状態の生起中には、ポストエフェクタ360により、「通常時・ポストエフェクタ周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行されるとともに、デジタルアンプ305により、「大当り時・周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行される。
一方、時短制御の実行中には、ポストエフェクタ360により、「通常時・ポストエフェクタ周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行されるとともに、デジタルアンプ305により、「時短時・周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が実行される。
特に、「通常時・周波数補正パラメータ」、「大当り時・周波数補正パラメータ」及び「時短時・周波数補正パラメータ」では、各チャンネルについて、当該チャンネルに接続されているスピーカの周波数特性に合う音声データが生成されるように、周波数補正の内容が規定されている。これによって、各スピーカの特性を引き出すことができ、音演出の演出効果を向上することが可能となる。
ここで、デジタルアンプ305では、周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1~周波数補正パラメータ設定部3)に設定されている周波数補正パラメータが変更される場合、対応するチャンネルについて、音量が「0」(ミュート・無音)に補正された上で、周波数補正パラメータが変更される。
具体的に、周波数補正パラメータ設定部1に設定されている周波数補正パラメータが変更される場合、チャンネル1,2について、音量が「0」とされた上で、周波数補正パラメータが変更される。そして、周波数補正パラメータの変更後に、チャンネル1,2について、元の音量に復帰される。
一方、周波数補正パラメータ設定部2に設定されている周波数補正パラメータが変更される場合、チャンネル3,4について、音量が「0」とされた上で、周波数補正パラメータが変更される。そして、周波数補正パラメータの変更後に、チャンネル3,4について、元の音量に復帰される。
一方、周波数補正パラメータ設定部3に設定されている周波数補正パラメータが変更される場合、チャンネル5,6について、音量が「0」とされた上で、周波数補正パラメータが変更される。そして、周波数補正パラメータの変更後に、チャンネル5,6について、元の音量に復帰される。
(動作確認処理の実行時における周波数補正パラメータの設定)
主制御基板200には、検査装置を接続することが可能な検査用端子(図示せず)が設けられている。そして、検査用端子に接続された検査装置の操作により、主制御基板200から演出制御基板300に対して所定の検査用コマンドを送信することが可能となっている。
CPU310は、所定の検査用コマンドを受信すると、スピーカ検査処理を実行する。
スピーカ検査処理では、まず、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ設定領域3)において、「検査時・周波数補正パラメータ」を指定する値(具体的には、「3」)を設定する。
また、サウンド回路323のポストエフェクタ周波数補正パラメータ番号レジスタにおいて、「検査時・ポストエフェクタ周波数補正パラメータ」を指定する値(具体的には、「1」)を設定する。
これによって、その後、ポストエフェクタ360において、各チャンネルの音声データについて、「検査時・ポストエフェクタ周波数補正パラメータ」にしたがって、周波数補正が実行される。
さらに、「検査時・周波数補正パラメータ」(「検査時・周波数補正パラメータ1」~「検査時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「検査時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「検査時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「検査時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「検査時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「検査時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「検査時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「検査時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
スピーカ検査処理では、次に、動作確認処理を実行する。
動作確認処理では、左上スピーカ、右上スピーカ、左中スピーカ、右中スピーカ、及び、ウーファーについて、所定の順序で、各スピーカから所定の検査音(効果音、音声等)が出力される。これによって、検査者は、各スピーカから出力される検査音に基づいて、当該スピーカが正常に作動しているか否かを検査(動作確認)する。
本実施形態では、パチンコ機1の電源の遮断により、スピーカ検査処理(動作確認処理)が終了する構成となっている。
ここで、各スピーカから出力される検査音について、遊技中と同様の周波数補正が実行されると、検査者が検査音を聴き取ることができなるなる恐れがある。例えば、各スピーカから高音域から中音域の周波数帯域の検査音が出力される場合、ウーファーから出力される検査音について、高音域及び中音域が除去される周波数補正が実行されると、検査者が、ウーファーから出力される検査音を聴き取ることができなくなる恐れがある。
そこで、パチンコ機1では、スピーカ22の動作確認処理の実行中において、ポストエフェクタ360により、「検査時・ポストエフェクタ周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が制御されるとともに、デジタルアンプ305により、「検査時・周波数補正パラメータ」に基づいて、各チャンネル(チャンネル1~チャンネル8)の音声データの周波数補正が制御される構成としている。
特に、「検査時・ポストエフェクタ周波数補正パラメータ」では、各チャンネルの音声データの周波数補正を実行しない(音声データをスルーさせる)ように規定されている。また、「検査時・周波数補正パラメータ」の内容は、各チャンネルの音声データの周波数補正を実行しない(音声データをスルーさせる)ように規定されている。
これによって、スピーカ22の動作確認処理の実行中には、サウンド回路323及びデジタルアンプ305において、全てのチャンネルの音声データについて、周波数補正が実行されない。
したがって、検査者が、各スピーカ22から出力される検査音を聴き取ることができない事態を防止することが可能となる。
ここで、各スピーカについては、当該スピーカの周波数特性に合わない周波数帯域の音が大音量で出力されると、破損する恐れがある。
そこで、デジタルアンプ305において、「検査時・周波数補正パラメータ」に基づいて各チャンネルの音声データの周波数補正が制御される期間中には、「通常時・周波数補正パラメータ」、「大当り時・周波数補正パラメータ」又は「時短時・周波数補正パラメータ」に基づいて各チャンネルの音声データの周波数補正が制御される期間中と比較して、各チャンネルの音量(ゲイン)が抑制(低減)される構成としても構わない。
例えば、スピーカ検査処理において、「検査時・周波数補正パラメータ」と共に、「検査時・音量補正パラメータ」が、デジタルアンプ305に対して送信され、動作確認処理の実行中において、デジタルアンプ305が、「検査時・音量補正パラメータ」にしたがって、各チャンネルの音量を制御する構成としても構わない。この際、「検査時・音量補正パラメータ」は、各チャンネルについて、遊技中(「通常時・周波数補正パラメータ」、「大当り時・周波数補正パラメータ」又は「時短時・周波数補正パラメータ」の設定中)と比較して、小さい音量を指定するものとする。
(デジタルアンプリセット処理)
次に、デジタルアンプリセット処理を説明する。
デジタルアンプ305には、ステータス情報が設定されるステータス情報設定レジスタが設けられている。ここで、「ステータス情報」は、デジタルアンプ305の状態を示す情報となっている。
また、デジタルアンプ305は、過電流の発生、高温状態の発生、デュティ比(τ)が異常レベルで維持されている状態の発生等、各種の異常状態の発生を検出することが可能となっている。そして、各種の異常状態が検出されていないときには、ステータス情報設定レジスタにおいて、正常状態に対応する値(具体的には、「0」)が設定され、各種の異常情報の検出に応じて、ステータス情報設定レジスタにおいて、異常状態に対応する値(具体的には、「1」)が設定される。
また、CPU310は、後述するステータス情報取得処理(ステップS28-7)において、デジタルアンプ305のステータス情報設定レジスタに設定されているステータス情報を取得する。そして、取得したステータス情報が異常状態に対応する値(具体的には、「1」)であると判定した場合に、後述するデジタルアンプリセット処理(ステップS28-9)を実行する。
デジタルアンプリセット処理では、デジタルアンプ305に対してリセット信号が送信される(リセット端子に入力される信号がオン状態とされる)。そして、デジタルアンプ305は、リセット信号を受信すると、各種レジスタを初期化する。具体的には、周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)、音量の設定(補正)に関するレジスタ、端子の設定に関するレジスタ、ステータス情報設定レジスタ等を初期化(クリア)する。これによって、ステータス情報設定レジスタにおいて、正常状態に対応する値(具体的には、「0」)が設定される。
ここで、パチンコ機1への電源の投入中に、デジタルアンプ305に対してリセット信号が送信されると、周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)が初期化されることにより、リセット信号が送信される前後で、スピーカ22から出力される音の音質が変化し、遊技者に違和感を与える恐れがある。
そこで、パチンコ機1では、デジタルアンプ305に対してリセット信号を送信した後に、周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)に設定される情報を、リセット信号が送信される前(デジタルアンプ305において異常状態の発生が検出される前)の情報に復帰させる構成としている。
すなわち、CPU310は、デジタルアンプリセット処理の実行後に、パラメータ復帰処理(ステップS28-10)を実行する。
パラメータ復帰処理では、まず、DRAM304の周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ番号設定領域3)の値を確認する。そして、各周波数補正パラメータ番号設定領域の値に対応する周波数補正パラメータを、制御ROM302から読み出して、読み出した周波数補正パラメータを、デジタルアンプ305に対して送信する。
具体的に、周波数補正パラメータ番号設定領域1の値が「0」であり、周波数補正パラメータ番号設定領域2の値が「0」であり、周波数補正パラメータ番号設定領域3の値が「0」である場合、「通常時・周波数補正パラメータ1」、「通常時・周波数補正パラメータ2」及び「通常時・周波数補正パラメータ3」を、デジタルアンプ305に対して送信する。これによって、デジタルアンプ305において、周波数補正パラメータ設定部1に「通常時・周波数補正パラメータ1」が復帰され、周波数補正パラメータ設定部2に「通常時・周波数補正パラメータ2」が復帰され、周波数補正パラメータ設定部3に「通常時・周波数補正パラメータ3」が復帰される。
一方、周波数補正パラメータ番号設定領域1の値が「1」であり、周波数補正パラメータ番号設定領域2の値が「1」であり、周波数補正パラメータ番号設定領域3の値が「1」である場合、「大当り時・周波数補正パラメータ1」、「大当り時・周波数補正パラメータ2」及び「大当り時・周波数補正パラメータ3」を、デジタルアンプ305に対して送信する。これによって、デジタルアンプ305において、周波数補正パラメータ設定部1に「大当り時・周波数補正パラメータ1」が復帰され、周波数補正パラメータ設定部2に「大当り時・周波数補正パラメータ2」が復帰され、周波数補正パラメータ設定部3に「大当り時・周波数補正パラメータ3」が復帰される。
一方、周波数補正パラメータ番号設定領域1の値が「2」であり、周波数補正パラメータ番号設定領域2の値が「2」であり、周波数補正パラメータ番号設定領域3の値が「2」である場合、「時短時・周波数補正パラメータ1」、「時短時・周波数補正パラメータ2」及び「時短時・周波数補正パラメータ3」を、デジタルアンプ305に対して送信する。これによって、デジタルアンプ305において、周波数補正パラメータ設定部1に「時短時・周波数補正パラメータ1」が復帰され、周波数補正パラメータ設定部2に「時短時・周波数補正パラメータ2」が復帰され、周波数補正パラメータ設定部3に「時短時・周波数補正パラメータ3」が復帰される。
以上により、パチンコ機1では、演出制御基板300への電源の投入中に、デジタルアンプ305が初期化(リセット)された場合であっても、デジタルアンプ305が初期化される前後で、スピーカ22から出力される音の音質が変化することがない。したがって、遊技者に違和感を与える事態を防止することが可能となる。
ここで、パチンコ機1への電源の投入中において、デジタルアンプ305に異常状態が発生した場合には、上記のように、演出制御基板300について、初期化・復帰処理が実行されることなく、デジタルアンプ305についてのみ、初期化・復帰処理(ステップS28-9,ステップS28-10)が実行される。
一方、パチンコ機1への電源の投入中において、演出制御基板300において異常状態が発生した場合には、パチンコ機1への電源を遮断後に、改めて電源を投入することにより、演出制御基板300について、初期化・復帰処理(ステップS28-1)が実行されるとともに、デジタルアンプ305について、初期化・復帰処理(ステップS28-3)が実行される。これによって、演出制御基板300における演出を制御するための各種記憶(周波数補正パラメータ番号設定領域の値、設定値記憶領域の値、時短制御の実行状況を示すフラグ領域の値、演出モードを示すフラグ領域の値等)が初期化(異常状態の発生前の値が削除されて改めて初期値が設定)されることになる。
(遊技機状態について)
パチンコ機1では、遊技機状態として、6つの状態(具体的には、遊技可能状態、設定変更状態、設定確認状態、設定異常状態、RAM異常状態、及び、バックアップ異常状態)が規定されている。
主制御基板200のRAM230には、遊技機状態フラグ領域が設けられている。遊技機状態フラグ領域には、遊技機状態フラグとして、6つの遊技機状態(具体的には、遊技可能状態、設定変更状態、設定確認状態、設定異常状態、RAM異常状態、及び、バックアップ異常状態)のうち、いずれか一の遊技機状態に対応する値が記憶(設定)される。そして、パチンコ機1では、遊技機状態フラグ領域に記憶されている値に対応する遊技機状態が生起される。
「遊技可能状態」は、遊技の進行が可能となる遊技機状態となっている。
遊技可能状態の生起中には、後述するステップS4-9~S4-18の処理の実行が許可される。これによって、遊技(普通遊技及び特別遊技)の進行が可能となる。
また、遊技可能状態の生起中には、性能表示装置206において、ベース比率が表示される。また、メイン表示装置60において、遊技に関する情報が表示される。
「設定変更状態」は、RAM230の設定値領域に記憶されている設定値を変更することが可能となる遊技機状態となっている。
設定変更状態は、設定変更条件が成立している場合に生起される。本実施形態では、電源投入時において、内枠開放センサ108からの検出信号が入力されており、かつ、設定キースイッチ208からの検出信号が入力されており、かつ、RAMクリアスイッチ207からの検出信号が入力されている場合に、設定変更条件が成立する。すなわち、電源投入時において、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されている場合、設定変更状態が生起される。
設定変更状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定変更状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
さらに、設定変更状態の生起中には、RAMクリアスイッチ207を押下操作することによって、設定値領域に記憶されている設定値を変更することが可能となる。そして、設定変更状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定変更状態に替えて、遊技可能状態が生起される。これによって、設定値領域に記憶されている設定値が確定される。
「設定確認状態」は、RAM230の設定値領域に記憶されている設定値を確認することが可能となる遊技機状態となっている。
設定確認状態は、設定確認条件が成立している場合に生起される。本実施形態では、電源投入時において、内枠開放センサ108からの検出信号が入力されており、かつ、設定キースイッチ208からの検出信号が入力されており、かつ、RAMクリアスイッチ207からの検出信号が入力されていない場合に、設定確認条件が成立する。すなわち、電源投入時において、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されていない場合、設定確認状態が生起される。
設定確認状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定確認状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。これによって、設定値領域に記憶されている設定値を確認することが可能となる。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
なお、設定確認状態の生起中には、設定値領域に記憶されている設定値を変更することができない。
そして、設定確認状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定確認状態に替えて、遊技可能状態が生起される。
「設定異常状態」は、設定異常が発生している遊技機状態となっている。
設定異常状態は、遊技可能状態の生起中において、設定値領域に設定されている設定値が規定範囲内にないと判定された場合に生起される。
設定異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、設定異常状態の生起中には、性能表示装置206において、設定異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
設定異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
「RAM異常状態」は、RAM異常が発生している遊技機状態となっている。
RAM異常状態は、電源投入時に、RAM230のリード/ライト異常の発生が判定された場合に生起される。
RAM異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、RAM異常状態の生起中には、性能表示装置206において、RAM異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
RAM異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
「バックアップ異常状態」は、バックアップ異常が発生している遊技機状態となっている。
バックアップ異常状態は、電源投入時に、RAM230のバックアップ異常(具体的には、バックアップフラグの異常、又は、チェックサムの異常)の発生が判定された場合に生起される。
バックアップ異常状態の生起中には、後述するステップS4-9~S4-18の処理の実行が禁止される。これによって、遊技(具体的には、普通遊技及び特別遊技)が停止される。
また、バックアップ異常状態の生起中には、性能表示装置206において、バックアップ異常の発生を指定するエラーコードが表示される。また、メイン表示装置60を構成する全ての点灯素子が消灯される。さらに、セキュリティ情報(外部情報)が、外部装置に対して出力される。
バックアップ異常状態から復帰するためには、電源遮断及び電源投入を実行し、設定変更状態を生起させることが必要となる。
(設定値について)
次に、パチンコ機1で設定される設定値(設定情報)を説明する。
「設定値」は、特別図柄抽選(第1特別図柄抽選及び第2特別図柄抽選)の当選確率(大当り遊技状態に当選する確率)を指定する情報となっている。本実施形態では、設定値として、「0」~「5」の値が規定されている。
主制御基板200のRAM230には、設定値領域が設けられている。設定値領域には、設定値として、「0」~「5」のうち、いずれか一の値が記憶(設定)される。そして、パチンコ機1では、特別図柄抽選の当選確率が、設定値領域に設定されている値に応じた確率とされる。
本実施形態では、各設定値に対応する特別図柄抽選の当選確率は、当選確率が高いものから順に、設定値=「5」に対応する当選確率、設定値=「4」に対応する当選確率、設定値=「3」に対応する当選確率、設定値=「2」に対応する当選確率、設定値=「1」に対応する当選確率、設定値=「0」に対応する当選確率(当選確率「高」→当選確率「低」)となる。
特に、パチンコ機1では、設定変更状態の生起中に、設定値領域に記憶されている設定値を変更(選択)することが可能となっている。ここで、設定値の変更は、パチンコ機1の管理者(パチンコ機1が設置されている遊技場の従業員等)により実行される。
すなわち、上記のように、電源投入時に、内枠ユニット3が開放されており、かつ、キースイッチ208がON状態に回転操作されており、かつ、RAMクリアスイッチ207が押下されている場合、設定変更状態が生起される。
設定変更状態の生起中には、性能表示装置206において、設定値領域に記憶されている設定値が表示される。また、RAMクリアスイッチ207が押下操作されるごとに、設定値領域に記憶されている設定値が変更される。この際、設定値領域に設定されている設定値が変更された場合、これに伴い、性能表示装置206に表示される設定値も変更される。
そして、設定変更状態の生起中に、キースイッチ208がOFF状態に回転操作されると、設定変更状態に替えて、遊技可能状態が生起される。これによって、設定値領域に記憶されている設定値が確定される。
(ベース比率について)
パチンコ機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への遊技球の入球に応じて払い出された賞球の合計をいう。
(各種抽選について)
次に、パチンコ機1で実行される各種抽選について説明する。
パチンコ機1では、遊技球による始動ゲート41の通過を契機として、普通図柄抽選が実行される。そして、普通図柄抽選に当選した場合に、普図当り遊技状態が生起される。普図当り遊技状態では、普通電動役物52aが閉鎖状態から開放状態に変位(開放)されて、第2始動口52への遊技球の入球が可能となる。
本実施形態では、普通図柄抽選に当選した場合に生起される普図当り遊技状態の種別として、「普図当り」の1種類が設定されている。
「普図当り」に当選(普通図柄抽選に当選)した場合には、普図表示装置において、普通図柄を「普図当り図柄」で停止表示させるように制御する。
一方、普通図柄抽選に落選した場合には、普図表示装置において、普通図柄を「はずれ図柄」で停止表示させるように制御する。
パチンコ機1では、遊技者に有利となる補助制御として、時短制御を実行することが可能となっている。
時短制御の実行中には、時短制御の停止中と比較して、特別図柄の変動表示を行う時間(以下、「変動時間」とする)が短縮される。本実施形態では、時短制御の実行中には、時短制御の停止中と比較して、普通図柄抽選の当選確率が向上されるとともに、普通図柄の変動表示を行う時間が短縮される。また、時短制御の実行中には、時短制御の停止中と比較して、普図当り遊技状態において、普通電動役物52aの開放回数が増加されるとともに、普通電動役物52aの開放時間が延長される。
「普図当り」に当選した場合には、普通電動役物52aの開放回数が、1[回]又は3[回]に設定され、各回における普通電動役物52aの開放時間が、0.5[s]又は2.0[s]に設定される。この際、時短制御の実行中には、普通電動役物52aの開放回数が、3[回]に設定されるとともに、各回における普通電動役物52aの開放時間が、2.0[s]に設定される。一方、時短制御の停止中には、普通電動役物52aの開放回数が、1[回]に設定されるとともに、各回における普通電動役物52aの開放時間が、0.5[s]に設定される。
また、パチンコ機1では、第1始動口51への遊技球の入球を契機として、第1特別図柄抽選が実行され、第2始動口52への遊技球の入球を契機として、第2特別図柄抽選が実行される。そして、第1特別図柄抽選又は第2特別図柄抽選に当選した場合に、大当り遊技状態が生起される。大当り遊技状態では、特別電動役物53aが閉鎖状態から開放状態に変位されるラウンド遊技が実行されて、大入賞口53への遊技球の入球が可能な状態となる。
本実施形態では、第1特別図柄抽選に当選した場合に生起される大当り遊技状態の種別として、「大当り1」及び「大当り2」が設定され、第2特別図柄抽選に当選した場合に生起される大当り遊技状態の種別として、「大当り3」~「大当り6」が設定されている。
「大当り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において、「確変図柄」に対応する停止図柄(表示態様)が停止表示される。
「大当り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において、「潜伏図柄」に対応する停止図柄(表示態様)が停止表示される。
一方、特別図柄抽選に落選した場合(「はずれ」の場合)には、特図1表示装置又は特図2表示装置において、「はずれ図柄」に対応する停止図柄(表示態様)が停止表示される。また、演出図柄表示領域a1~a4において、「はずれ図柄」に対応する停止図柄(表示態様)が停止表示される。
ここで、「はずれ図柄」は、例えば、3つの第1演出図柄表示領域a1~a3に停止表示された第1演出図柄z1が、「1,6,9」等、少なくとも一の領域に停止表示された「数字図柄」が示す数字が、他の領域に停止表示された「数字図柄」が示す数字と異なる組み合わせとなるとともに、第2演出図柄表示領域a4に停止表示された第2演出図柄z2が所定色を示す表示態様とする。
「大当り1」~「大当り6」に当選した場合には、大当り遊技状態において、所定回数のラウンド遊技が実行される。
本実施形態では、「大当り1」、「大当り2」、「大当り5」又は「大当り6」に当選した場合には、ラウンド遊技の回数が5[回]に設定される。一方、「大当り3」に当選した場合には、ラウンド遊技の回数が15[回]に設定される。一方、「大当り4」に当選した場合には、ラウンド遊技の回数が10[回]に設定される。
「大当り1」~「大当り6」に当選した場合には、各回のラウンド遊技における特別電動役物53aの最長開放時間が、所定時間(本実施形態では、29.0[s])に設定される。そして、各回のラウンド遊技は、特別電動役物53aが開放状態とされてから設定された最長開放時間が経過したこと、及び、当該ラウンド遊技における大入賞口53への遊技球の入球数が所定上限数(本実施形態では、10[球])に達したこと、のうち一方の条件の成立に応じて終了される。
また、パチンコ機1では、特別図柄抽選(第1特別図柄抽選及び第2特別図柄抽選)の当選確率に係る遊技状態として、「特図低確率状態」と、「特図高確率状態」と、が規定されている。
「特図低確率状態」の生起中には、特別図柄抽選の当選確率が、第1の確率(以下、「低確率」とする)とされる。
「特図高確率状態」の生起中には、特別図柄抽選の当選確率が、第1の確率より高い第2の確率(以下、「高確率」とする)とされる。
なお、主制御基板200は、第1特別図柄抽選の当選確率と第2特別図柄抽選の当選確率とが同期するように、各抽選の当選確率を設定する。ここで、特別図柄抽選の当選確率とは、大当り遊技状態が生起される「当り」(「大当り1」~「大当り6」)に当選する確率をいう。
特に、パチンコ機1では、特別図柄抽選の当選確率が、設定値領域に設定されている設定値と、遊技状態(特図低確率状態又は特図高確率状態)と、の組わせに応じた確率となる。
具体的に、設定値=「0」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/319.69となる。一方、設定値=「0」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/32.13となる。
一方、設定値=「1」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/312.08となる。一方、設定値=「1」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/31.36となる。
一方、設定値=「2」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/304.82となる。一方、設定値=「2」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/30.62となる。
一方、設定値=「3」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/297.89となる。一方、設定値=「3」、かつ、「特図高確率状態」の生起中にあ、特別図柄抽選の当選確率(大当り確率)が、1/29.93となる。
一方、設定値=「4」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/291.27となる。一方、設定値=「4」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/29.26となる。
一方、設定値=「5」、かつ、「特図低確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/284.94となる。一方、設定値=「5」、かつ、「特図高確率状態」の生起中には、特別図柄抽選の当選確率(大当り確率)が、1/28.62となる。
「大当り2」又は「大当り6」に当選した場合には、当該大当り遊技状態の終了後から次回の大当り遊技状態の生起前までの期間において、「特図低確率状態」が生起される。
一方、「大当り1」又は「大当り3」~「大当り5」に当選した場合には、当該大当り遊技状態の終了に応じて「特図高確率状態」が生起される。本実施形態では、「特図高確率状態」は、大当り遊技状態の終了に応じて開始され、次回の大当り遊技状態の開始(「大当り図柄」の停止表示の終了)に応じて終了される。
なお、「特図高確率状態」が、大当り遊技状態の終了に応じて開始され、当該「特図高確率状態」の生起中に実行された特別図柄抽選の回数が所定回数(例えば、10000[回])に達したことに応じて終了される(「特図低確率状態」が生起される)構成としても構わない。
また、「大当り1」~「大当り6」に当選した場合には、当該大当り遊技状態の終了後に、時短制御が実行される。
時短制御は、大当り遊技状態の終了に応じて開始され、特別図柄抽選に当選したこと(「大当り図柄」が停止表示されたこと)、及び、所定の時短回数の特別図柄の報知表示(変動表示及び停止表示)が実行されたこと、のうち一方の条件の成立に応じて終了される。
「大当り2」又は「大当り6」に当選した場合には、所定の時短回数として、100[回]が設定される。
一方。「大当り1」又は「大当り3」~「大当り5」に当選した場合には、所定の時短回数として、10000[回]が設定される。
(制御コマンドについて)
次に、主制御基板200から演出制御基板300に対して送信される制御コマンド、及び、主制御基板200と払出制御基板400との間で送受信される制御コマンドについて説明する。
主制御基板200と演出制御基板300とは、シリアル通信用のハーネスを介して互いに接続されている。ここで、主制御基板200と演出制御基板300との間における通信は、主制御基板200から演出制御基板300への一方向のみで行われ、演出制御基板300から主制御基板200への通信は行われない。
主制御基板200から演出制御基板300に対して送信される各制御コマンドは、制御コマンドの種類を示す1バイトの上位データと、制御コマンドの内容を示す1バイトの下位データと、から構成されている。
そして、主制御基板200は、シリアル通信によって、上位データ及び下位データから構成される制御コマンドを演出制御基板300に対して送信する。演出制御基板300では、主制御基板200から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAMの所定領域に記憶する。
パチンコ機1では、主制御基板200から演出制御基板300に対して送信される制御コマンドとして、図柄種別指定コマンド、変動モード指定コマンド、変動パターン指定コマンド、停止指定コマンド、遊技状態指定コマンド、保留数指定コマンド、オープニング指定コマンド、ラウンド開始指定コマンド、ラウンド終了指定コマンド、エンディング指定コマンド、第1先読み指定コマンド、第2先読み指定コマンド、第3先読み指定コマンド、エラー指定コマンド、デモ指定コマンド、設定値指定コマンド、遊技状況指定コマンド等が設定されている。
図柄種別指定コマンドは、停止図柄の種別(停止図柄番号)を指定するコマンドである。具体的に、図柄種別指定コマンドは、「はずれ図柄」及び「大当り1図柄」~「大当り6図柄」のうち、一の種別を指定する。図柄種別指定コマンドは、特別図柄の変動表示の開始時に送信される。本実施形態では、図柄種別指定コマンドは、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
変動モード指定コマンドは、変動モードの種別(変動モード番号)を指定するコマンドである。変動モード指定コマンドは、変動モード番号を指定することによって、当該変動モード番号に対応付けられている変動時間を指定する。変動モード指定コマンドは、特別図柄の変動表示(変動演出)のうち、前半期間の変動時間(変動演出の前半期間の態様)を指定する。
本実施形態では、変動モードの種別として、互いに異なる変動時間が対応付けられた、m(複数)種類のものが設定されている。そして、変動モード指定コマンドは、m種類の変動モードの種別(変動モード番号)のうち一のもの(「変動モードm」)を指定する。
変動パターン指定コマンドは、変動パターンの種別(変動パターン番号)を指定するコマンドである。変動パターン指定コマンドは、変動パターン番号を指定することによって、当該変動パターン番号に対応付けられている変動時間を指定する。変動パターン指定コマンドは、特別図柄の変動表示(変動演出)のうち、後半期間の変動時間(変動演出の後半期間の態様)を指定する。
本実施形態では、変動パターンの種別として、互いに異なる変動時間が対応付けられた、n(複数)種類のものが設定されている。そして、変動パターン指定コマンドは、n種類の変動パターンの種別(変動パターン番号)のうち一のもの(「変動パターンn」)を指定する。
変動モード指定コマンド及び変動パターン指定コマンドは、特別図柄の変動表示の開始時に送信される。
停止指定コマンドは、特別図柄(演出図柄z1,z2)の停止表示を指定するコマンドである。停止指定コマンドは、特別図柄の停止表示の開始時に送信される。
遊技状態指定コマンドは、遊技状態(遊技状態オフセット値)を指定するコマンドである。
ここで、「遊技状態オフセット値」とは、遊技状態を指定する情報となっている。本実施形態では、遊技状態オフセット値として、時短制御フラグの値と、特図高確率状態フラグの値と、前回大当り図柄フラグの値と、大当り後回転数カウンタの値と、の組み合わせのそれぞれに対応する数値が設定されている。
そして、遊技状態指定コマンドは、一の遊技状態オフセット値を指定する。遊技状態指定コマンドは、電源投入時、後述する特別遊技フェーズの変更時等に送信される。
保留数指定コマンドは、保留数を指定するコマンドである。本実施形態では、保留数指定コマンドは、保留数(特図1保留数又は特図2保留数)が「1」増加したこと、保留数が「1」減少したこと、保留数等を指定する。
ここで、「特図1保留数」とは、特図1表示装置における第1特別図柄の報知表示(変動表示及び停止表示)が保留されている数をいう。また、「特図2保留数」とは、特図2表示装置における第2特別図柄の報知表示(変動表示及び停止表示)が保留されている数をいう。
保留数指定コマンドは、電源投入時、遊技情報の記憶時、特別図柄の変動表示の開始時等に送信される。本実施形態では、保留数指定コマンドとして、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
オープニング指定コマンドは、オープニング期間の開始(大当り遊技状態の開始)を指定するコマンドである。オープニング指定コマンドは、大当り遊技状態の種別(「大当り図柄」の種別)を指定する。具体的に、オープニング指定コマンドは、「大当り1図柄」~「大当り6図柄」のうち、一の種別を指定する。オープニング指定コマンドは、オープニング期間の開始時(大当り遊技状態の開始時)に送信される。
ラウンド開始指定コマンドは、ラウンド遊技の開始を指定するコマンドである。ラウンド開始指定コマンドは、ラウンド遊技の開始時に送信される。
ラウンド終了指定コマンドは、ラウンド遊技の終了を指定するコマンドである。ラウンド終了指定コマンドは、ラウンド遊技の終了時に送信される。
エンディング指定コマンドは、エンディング期間の開始を指定するコマンドである。エンディング指定コマンドは、エンディング期間の開始時に送信される。
第1先読み指定コマンドは、停止図柄の種別(「はずれ図柄」及び「大当り1図柄」~「大当り6図柄」のうち、一の種別)を指定するコマンドである。本実施形態では、第1先読み指定コマンドは、第1特別図柄抽選及び第2特別図柄抽選のそれぞれに対応するものが設定されている。
第2先読み指定コマンドは、変動モードの内容を指定するコマンドである。具体的には、第2先読み指定コマンドは、変動モードの種別が不定であること(「不定値」)、又は、m種類の変動モード(変動モード番号)うち一のもの(「変動モードm」)を指定する。第2先読み指定コマンドは、遊技情報記憶時に送信される。
第3先読み指定コマンドは、変動パターンの内容を指定するコマンドである。具体的には、第3先読み指定コマンドは、変動パターンの種別が不定であること(「不定値」)、又は、n種類の変動パターン(変動パターン番号)うち一のもの(「変動パターンn」)を指定する。第3先読み指定コマンドは、遊技情報記憶時に送信される。
エラー指定コマンドは、各種エラーの発生を指定するコマンドである。本実施形態では、エラー指定コマンドは、振動エラーの発生、磁気エラーの発生、電波エラーの発生、又は、右打ちエラーの発生を指定する。エラー指定コマンドは、各種エラーの発生の検出時に送信される。
デモ指定コマンドは、客待ち状態の開始を指定するコマンドである。デモ指定コマンドは、客待ち状態の開始時に送信される。
設定値指定コマンドは、RAM230の設定値領域に記憶されている設定値を指定するコマンドである。設定値指定コマンドは、RAMクリア時、電源投入後の電源復帰時、設定変更状態の終了時、設定確認状態の終了時等に送信される。
遊技状況指定コマンドは、発射可能状態の発生(開始)又は解除(終了)を指定するコマンドである。遊技状況指定コマンドは、遊技可能状態の発生時(開始時)と、遊技可能状態の解除時(終了時)と、に送信される。
主制御基板200と払出制御基板400とは、シリアル通信用のハーネスを介して互いに接続されている。ここで、主制御基板200と払出制御基板400との間における通信は、双方向に行われる。主制御基板200と払出制御基板400との間において送受信される各制御コマンドは、1バイトのデータから構成されている。
そして、主制御基板200は、シリアル通信によって、制御コマンドを払出制御基板400に対して送信する。払出制御基板400では、主制御基板200から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAMの所定領域に記憶する。また、払出制御基板400は、シリアル通信によって、制御コマンドを主制御基板200に対して送信する。主制御基板200では、払出制御基板400から制御コマンドを受信すると、シリアル通信受信割込みが発生し、この割込み処理によって、制御コマンドのデータをRAM230の所定領域に記憶する。
パチンコ機1では、主制御基板200から払出制御基板400に対して送信される制御コマンドとして、賞球数指定コマンド等が設定されている。
賞球数指定コマンドは、払い出しを行う賞球数を指定するコマンドである。本実施形態では、賞球数指定コマンドは、n個(n=1~15)の賞球の払い出しを指定する。賞球数指定コマンドは、払出制御基板400による賞球の払い出し動作の実行時に送信される。
また、パチンコ機1では、払出制御基板400から主制御基板200に対して送信される制御コマンドとして、払出中エラーの発生・解除、満タンエラーの発生・解除、球詰まりエラーの発生・解除等のそれぞれを指定する制御コマンドが設定されている。各制御コマンドは、各種エラーの発生・解除の検出時に送信される。
(主制御基板200で実行される処理)
次に、主制御基板200で実行される処理を説明する。
まず、主制御基板200に構成されているハードウェアの機能について説明する。
パチンコ機1に電源が投入されると、乱数発生回路203は、ハード乱数更新処理を開始する。
ハード乱数更新処理では、クロック発生回路202から1クロックが入力されるごと(本実施形態では、0.083[μs]ごと)に、第1ループカウンタ~第3ループカウンタの値が、所定の範囲内(本実施形態では、0~65535の範囲内)において「1」ずつ更新される。
また、ハード乱数更新処理では、クロック発生回路202から32クロックが入力されるごと(本実施形態では、2.666[μs]ごと)に、第4ループカウンタの値が、所定の範囲内(本実施形態では、0~10006の範囲内)において「1」ずつ更新される。
そして、ハード乱数更新処理によって、普通図柄抽選の当り乱数、第1特別図柄抽選の大当り乱数、第2特別図柄抽選の大当り乱数、及び、リーチグループ乱数が、それぞれ、更新される。なお、ハード乱数更新処理は、乱数発生回路203(ハードウェア)の機能として実行され、後述するCPU210がソフトウェアに基づいて実行する処理とは独立して実行される。
また、パチンコ機1に電源が投入されると、コマンド出力ポート1,2の送信用シフトレジスタは、FIFOバッファに記憶されている制御コマンドを演出制御基板300又は払出制御基板400に対して送信する制御コマンド送信処理を開始する。なお、制御コマンド送信処理は、コマンド出力ポート1,2(ハードウェア)の機能として実行され、後述するCPU210がソフトウェアに基づいて実行する処理とは独立して実行される。
次に、主制御基板200のCPU210がROM220に記憶されているプログラム(ソフトウェア)に基づいて実行する遊技制御処理について説明する。
(CPU初期化処理)
まず、CPU210が実行するCPU初期化処理を説明する。
図7は、CPU初期化処理を示すフローチャートである。
パチンコ機1に電源が投入されると、CPU210は、図7に示すCPU初期化処理を開始する。CPU初期化処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、CPU初期化処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
CPU初期化処理が開始されると、まず、ステップS1-1に移行する。
ステップS1-1では、初期設定処理を実行し、ステップS1-2に移行する。初期設定処理では、ROM220から起動プログラムを読み込むとともに、レジスタの設定等、各種処理を実行するために必要な設定を行う。
また、初期設定処理では、RAMクリアスイッチ207からのRAMクリア信号と、設定キースイッチ208からの検出信号と、内枠開放センサ108からの検出信号と、の読み込みを行う。
具体的に、RAMクリアスイッチ207に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定する。そして、判定結果を、RAMクリアスイッチ207のスイッチ情報として保存する。この際、オン状態が発生していると判定された場合、スイッチ情報として、オン状態が発生していることを示す値(本実施形態では、「1」)が保存され、オン状態が発生していないと判定された場合、スイッチ情報として、オン状態が発生していないことを示す値(本実施形態では、「0」)が保存される。
また、設定キースイッチ208に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、設定キースイッチ208について、オン状態が発生しているか否かを判定する。そして、判定結果を、設定キースイッチ208のスイッチ情報として保存する。この際、オン状態が発生していると判定された場合、スイッチ情報として、オン状態が発生していることを示す値(本実施形態では、「1」)が保存され、オン状態が発生していないと判定された場合、スイッチ情報として、オン状態が発生していないことを示す値(本実施形態では、「0」)が保存される。
さらに、内枠開放センサ108に対応する受信記憶領域に設定されている値の読み込みを、2[回]実行し、2[回]の読み込み結果に基づいて、内枠開放センサ108について、オン状態が発生しているか否かを判定する。そして、オン状態が発生していないと判定された場合、設定キースイッチ208のスイッチ情報を、オン状態が発生していないことを示す値(本実施形態では、「0」)に書き換える。一方、オン状態が発生していると判定された場合、設定キースイッチ208のスイッチ情報の書き換えを行わない。
ステップ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へのアクセスが許可された状態となる。
ステップS1-5では、遊技機状態フラグ取得処理を実行し、ステップS1-6に移行する。遊技機状態フラグ取得処理では、遊技機状態フラグを取得する。
具体的に、遊技機状態フラグ取得処理では、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)を、Dレジスタに保存(ロード)する。
ステップS1-6では、バックアップ有効フラグが正常であるか否かを判定し、バックアップ有効フラグが正常であると判定した場合(Yes)には、ステップS1-7に移行し、バックアップ有効フラグが正常でないと判定した場合(No)には、ステップS1-18に移行する。
ここで、RAM230のバックアップ有効フラグ領域に記憶されている値(バックアップ有効フラグ)が所定の有効値である場合、バックアップ有効フラグが正常であると判定し、バックアップ有効フラグ領域に記憶されている値が所定の有効値でない場合、バックアップ有効フラグが正常でないと判定する。
ステップ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のチェックサムの値と一致していること」のうち、少なくとも一方の条件を満していない場合には、チェックサムが正常でないと判定する。
ステップS1-9では、電源投入時クリア対象領域設定処理を実行し、ステップS1-10に移行する。電源投入時クリア対象領域設定処理では、RAM230の使用領域M1をクリア(初期化)する範囲として、設定値領域及び遊技機状態フラグ領域を除いた他の領域(具体的には、チェックサム領域、バックアップ有効フラグ領域、エラー関連領域、通常遊技関連領域1、通常遊技関連領域2、及び、スタック領域)を設定する。
ステップS1-10では、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定し、オン状態が発生していないと判定した場合(No)には、ステップS1-11に移行し、オン状態が発生していると判定した場合(Yes)には、ステップS1-21に移行する。
ここで、ステップS1-1で保存したRAMクリアスイッチ207のスイッチ情報に基づいて、RAMクリアスイッチ207について、オン状態が発生しているか否かを判定する。この際、スイッチ情報として、オン状態が発生していることを示す値が保存されている場合、オン状態が発生していると判定し、オン状態が発生していないことを示す値が保存されている場合、オン状態が発生していないと判定する。
ステップS1-11では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS1-12に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS1-14に移行する。
ここで、Dレジスタに保存されている遊技機状態フラグに基づいて、遊技可能状態が生起されているか否かを判定する。この際、Dレジスタに保存されている遊技機状態フラグが、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
ステップ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のスイッチ情報に基づいて、設定確認条件が成立しているか否かを判定する。この際、スイッチ情報として、オン状態が発生していることを示す値が保存されている場合、設定確認条件が成立していると判定し、オン状態が発生していないことを示す値が保存されている場合、設定確認条件が成立していないと判定する。
ステップ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の払出コマンド出力要求バッファに記憶する。
ステップ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で設定した範囲について、クリア(初期化)するとともに、リードライトチェックを行う。
ステップ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レジスタにおいて、遊技機状態フラグとして、遊技可能状態に対応する値を設定する。
ステップ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のスイッチ情報のうち、少なくとも一方について、オン状態が発生していないことを示す値が保存されている場合、設定変更条件が成立していないと判定する。
ステップ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の払出コマンド出力要求バッファに記憶する。
ステップS1-32では、サブコマンド設定処理を実行し、ステップS1-33に移行する。サブコマンド設定処理では、現在の遊技機状態を指定する電源投入時遊技機状態指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
具体的に、サブコマンド設定処理では、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグ(遊技機状態)を指定する電源投入時遊技機状態指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS1-33では、サブコマンド群設定処理を実行し、ステップS1-34に移行する。サブコマンド群設定処理では、サブコマンド群を、RAM230のサブコマンド出力要求バッファに記憶する。
ここで、サブコマンド群には、電源復帰時フェーズを指定するサブコマンド、遊技状態(遊技状態オフセット値)を指定するサブコマンド、発射位置を指定するサブコマンド、第1特別図柄の停止図柄を指定するサブコマンド、第2特別図柄の停止図柄を指定するサブコマンド、特図1保留数を指定するサブコマンド、特図2保留数を指定するサブコマンド、時短カウンタの値を指定するサブコマンド、RAM230の設定値領域に記憶されている設定値を指定する設定値指定コマンド等が含まれる。
ステップS1-34では、初期表示時間設定処理を実行し、ステップS1-35に移行する。初期表示時間設定処理では、初期表示用タイマに、性能表示装置206の初期表示時間を設定する。
ステップS1-35では、割込み設定処理を実行し、メインループ処理(ステップS2-1)に移行する。割込み設定処理では、周辺デバイスであるCTC(カウンタ/タイマ回路)の初期設定を行う。
具体的に、割込み設定処理では、割込みベクタレジスタを設定し、また、CTCに割込みカウント値(本実施形態では、4.0[ms])を設定する。
(メインループ処理)
次に、CPU210が実行するメインループ処理を説明する。
図8は、メインループ処理を示すフローチャートである。
CPU210は、図7に示すCPU初期化処理(ステップS1-35)が終了すると、図8に示すメインループ処理を開始する。メインループ処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、メインループ処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
メインループ処理が開始されると、まず、ステップS2-1に移行する。
ステップS2-1では、割込み禁止処理を実行して、ステップS2-2に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
ステップS2-2では、初期値乱数更新処理を実行し、ステップS2-3に移行する。初期値乱数更新処理では、初期値乱数を発生させるためのループカウンタの値を更新する。
ここで、「初期値乱数」とは、プログラム上で発生する乱数であるソフト乱数(当り図柄乱数、リーチモード乱数、変動パターン乱数等)の初期値及び終了値を決定するための乱数である。
すなわち、ソフト乱数を発生させるループカウンタの値は、予め設定された初期値から終了値までの範囲内において更新される。そして、ソフト乱数を発生させるループカウンタの初期値及び終了値は、ループカウンタの値が終了値に達するごとに変更される。この際、ループカウンタの初期値及び終了値は、初期値乱数に基づいて決定される。
ステップ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に移行する。その他乱数更新処理では、ソフト乱数のうち当り図柄乱数を除いたもの(具体的には、リーチモード乱数、変動パターン乱数等)の更新を行う。
(電源遮断時退避処理)
次に、CPU210が実行する電源遮断時退避処理を説明する。
図9は、電源遮断時退避処理を示すフローチャートである。
主制御基板200は、電源遮断検出回路(図示せず)を含んで構成されている。電源遮断検出回路は、電源基板600から供給される電源電圧を監視して、電源電圧の値が所定の基準値を下回った場合に、電源遮断予告信号を入力ポート204に対して出力する。
CPU210は、電源遮断予告信号を受信すると、メインループ処理の割込み許可期間中において、図9に示す電源遮断時退避処理を開始する。電源遮断時退避処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、電源遮断時退避処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
電源遮断時退避処理が開始されると、まず、ステップS3-1に移行する。
ステップS3-1では、レジスタ退避処理を実行し、ステップS3-2に移行する。レジスタ退避処理では、メインループ処理の実行中に使用していたレジスタの値をRAM230の退避領域に退避させる。
ステップS3-2では、電源遮断予告信号読込処理を実行し、ステップS3-3に移行する。電源遮断予告信号読込処理では、電源遮断検出回路からの電源遮断予告信号の読み込みを行う。
具体的には、電源遮断予告信号読込処理では、入力ポート204の電源遮断予告信号に対応する受信記憶領域に設定されている値(「1」又は「0」)を読み込む。
ステップS3-3では、ステップS3-2で読み込んだ値(電源遮断予告信号に対応する受信記憶領域に設定されている値)に基づいて、電源遮断検出回路から電源遮断予告信号が入力されているか否かを判定し、電源遮断予告信号が入力されていると判定した場合(Yes)には、ステップS3-4に移行し、電源遮断予告信号が入力されていないと判定した場合(No)には、ステップS3-13に移行する。
ステップS3-4では、出力ポート停止処理を実行し、ステップS3-5に移行する。出力ポート停止処理では、出力ポート205(出力ポート0~出力ポート4)による制御信号及び制御コマンドの出力を停止する。
具体的に、出力ポート停止処理では、出力ポート205(出力ポート0~出力ポート4)のポートレジスタに含まれる全てのビットの値を初期化する。これによって、出力ポート205(出力ポート0~出力ポート4)による制御信号及び制御コマンドの出力が停止される。
ステップS3-5では、バックアップ有効フラグ設定処理を実行し、ステップS3-6に移行する。バックアップ有効フラグ設定処理では、RAM230のバックアップ有効フラグ領域に、所定の有効値を保存(セーブ)する。
ステップ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に対するアクセスが禁止された状態となる。
ステップS3-8では、ループカウンタ設定処理を実行し、ステップS3-9に移行する。ループカウンタ設定処理では、復帰判定用ループカウンタの値として、所定の電源遮断予告信号読込回数を設定する。
ステップS3-9では、電源遮断予告信号読込処理を実行し、ステップS3-10に移行する。電源遮断予告信号読込処理では、電源遮断検出回路からの電源遮断予告信号の読み込みを行う。
具体的に、電源遮断予告信号読込処理では、入力ポート204の電源遮断予告信号に対応する受信記憶領域に設定されている値(「1」又は「0」)を読み込む。
ステップS3-10では、ステップS3-9で読み込んだ値(電源遮断予告信号に対応する受信記憶領域に設定されている値)に基づいて、電源遮断検出回路から電源遮断予告信号が入力されているか否かを判定し、電源遮断予告信号が入力されていないと判定した場合(No)には、ステップS3-11に移行し、電源遮断予告信号が入力されていると判定した場合(Yes)には、ステップS3-8に移行する。
ステップS3-11では、ループカウンタ更新処理を実行し、ステップS3-12に移行する。ループカウンタ更新処理では、復帰判定用ループカウンタに設定されている値から、「1」を減算する。
ステップS3-12では、復帰判定用ループカウンタの値が「0」であるか否かを判定し、復帰判定用ループカウンタの値が「0」であると判定した場合(Yes)には、CPU初期化処理(ステップS1-1)に移行し、復帰判定用ループカウンタの値が「0」でないと判定した場合(No)には、ステップS3-9に移行する。
ステップS3-13では、レジスタ復帰処理を実行し、一連の処理を終了して元の処理に復帰する。レジスタ復帰処理では、ステップS3-1で退避しておいたレジスタの値を復帰させる。そして、レジスタ復帰処理の終了後、メインループ処理(スタックポインタで指示されるプログラムアドレス)に復帰する。
(タイマ割込み処理)
次に、CPU210が実行するタイマ割込み処理を説明する。
図10は、タイマ割込み処理を示すフローチャートである。
クロック発生回路202は、所定割込み周期(本実施形態では、4.0[ms])ごとに、割込み要求信号を発生させる。
CPU210は、割込み要求信号の発生に応じて、メインループ処理の割込み許可期間中において、図10に示すタイマ割込み処理を開始する。メインループ処理は、遊技の進行を制御するためのプログラムに基づく処理となっている。すなわち、メインループ処理は、ROM220の使用領域m1(プログラム領域)に記憶されているプログラムに基づく処理となっている。
タイマ割込み処理が開始されると、まず、ステップS4-1に移行する。
ステップS4-1では、レジスタ退避処理を実行し、ステップS4-2に移行する。レジスタ退避処理では、メインループ処理の実行中に使用していた全てのレジスタの値をRAM230の退避領域に退避させる。
ステップS4-2では、割込み許可処理を実行し、ステップS4-3に移行する。割込み許可処理では、割込みを許可する。
ステップS4-3では、ダイナミックポート出力処理を実行し、ステップS4-4に移行する。ダイナミックポート出力処理については、後述する。
ステップS4-4では、ポート入力処理を実行し、ステップS4-5に移行する。ポート入力処理では、各スイッチ・センサ(各信号)の状態を取得する。
RAM230には、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサ(入力ポート204に入力される各信号)に対応する入力情報記憶領域と、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサ(入力ポート204に入力される各信号)に対応するオン状態記憶領域と、が設けられている。
ポート入力処理では、まず、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサについて、当該スイッチ・センサに対応する受信記憶領域に設定されている情報を取得し、取得した情報を、当該スイッチ・センサに対応する入力情報記憶領域に保存(記憶)する。
これによって、各スイッチ・センサについて、当該スイッチ・センサからの検出信号が入力されている(ハイレベルである)場合、当該スイッチ・センサに対応する入力情報記憶領域に「1」が保存され、当該スイッチ・センサからの検出信号が入力されていない(ローレベルである)場合、当該スイッチ・センサに対応する入力記憶領域に「0」が保存される。
次に、入力ポート204(入力ポート0~入力ポート3)に接続されている各スイッチ・センサについて、オン状態が発生しているか否かを判定する。この際、各スイッチ・センサについて、前回のポート入力処理で入力情報記憶領域に保存された値と、今回のポート入力処理で入力情報記憶領域に保存された値と、に基づいて、オン状態が発生しているか否かを判定する。
「オン状態」とは、検出信号が入力されていない状態(ローレベル)から、検出信号が入力されている状態(ハイレベル)に変化した状態をいう。
そして、各スイッチ・センサについて、オン状態が発生していると判定した場合には、当該スイッチ・センサに対応するオン状態記憶領域に「1」が設定される。一方、各スイッチ・センサについて、オン状態が発生していないと判定した場合には、当該スイッチ・センサに対応するオン状態記憶領域に「0」が設定される。
以下の説明では、各スイッチ・センサに対応するオン状態記憶領域に記憶されている値を、当該スイッチ・センサの「スイッチビットデータ」とする。
特に、入力ポート1には、発射可能条件検出部422から入力されるハンドル検出信号に対応する受信記憶領域が設けられている。そして、ポート入力処理では、入力ポート1のハンドル検出信号に対応する受信記憶領域に設定されている情報が取得され、取得された情報が、ハンドル検出信号に対応する入力情報記憶領域に保存(記憶)される。
ステップS4-5では、遊技機状態フラグ取得処理を実行し、ステップS4-6に移行する。遊技機状態フラグ取得処理では、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグを取得する。
ステップS4-6では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS4-7に移行し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS4-9に移行する。
ここで、ステップS4-5で取得した遊技機状態フラグに基づいて、遊技可能状態が生起されているか否かを判定する。この際、取得した遊技機状態フラグが、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
ステップS4-7では、異常状態が生起(設定)されているか否かを判定し、異常状態が生起されていないと判定した場合(No)には、ステップS4-8に移行し、異常状態が生起されていると判定した場合(Yes)には、ステップS4-19に移行する。
ここで、ステップS4-5で取得した遊技機状態フラグに基づいて、異常状態が生起されているか否かを判定する。この際、取得した遊技機状態フラグが、設定異常状態、RAM異常状態、及び、バックアップ異常状態のうち、いずれかに対応する値である場合、異常状態が生起されていると判定する。取得した遊技機状態フラグが、設定異常状態、RAM異常状態、及び、バックアップ異常状態のうち、いずれかに対応する値でない場合、異常状態が生起されていないと判定する。
ステップ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の状態(オン状態の検出の有無)に応じた処理(各種乱数の取得等)を実行する。スイッチ管理処理については、後述する。
ステップS4-13では、特別遊技管理処理を実行し、ステップS4-14に移行する。特別遊技管理処理では、特図表示装置の動作及び特別電動役物53aの動作を管理する。特別遊技管理処理については、後述する。
ステップS4-14では、普通遊技管理処理を実行し、ステップS4-15に移行する。普通遊技管理処理では、普図表示装置の動作及び普通電動役物52aの動作を管理する。普通遊技管理処理については、後述する。
ステップS4-15では、状態管理処理を実行し、ステップS4-16に移行する。状態管理処理では、各種エラー(異常状態)の発生・解除を監視する。そして、各種エラーの発生・解除の検出時に、各種の設定(サブコマンドの設定等)を実行する。
また、状態管理処理では、ハンドル検出信号に対応する入力情報記憶領域に保存されている値(前回のタイマ割込み処理で保存された値、及び、今回のタイマ割込み処理で保存された値)に基づいて、ハンドル検出信号が入力されていない状態から入力されている状態に変化したか否かを判定する。そして、ハンドル検出信号が入力されていない状態から入力されている状態に変化したと判定した場合、発射可能状態の発生を指定する遊技状況指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
さらに、状態管理処理では、ハンドル検出信号に対応する入力情報記憶領域に保存されている値(前回のタイマ割込み処理で保存された値、及び、今回のタイマ割込み処理で保存された値)に基づいて、ハンドル検出信号が入力されている状態から入力されていない状態に変化したか否かを判定する。そして、ハンドル検出信号が入力されている状態から入力されていない状態に変化したと判定した場合、発射可能状態の解除を指定する遊技状況指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS4-16では、入賞口スイッチ処理を実行し、ステップS4-17に移行する。入賞口スイッチ処理では、各スイッチ101~103,105,106の状態(オン状態の検出の有無)に応じた処理(各種カウンタの更新等)を実行する。
ステップ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」が減算される。
次に、賞球制御カウンタ2の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ2の値が「1」以上であると判定した場合には、所定数(本実施形態では、10[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ2の値から「1」が減算される。
次に、賞球制御カウンタ3の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ3の値が「1」以上であると判定した場合には、所定数(本実施形態では、10[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ3の値から「1」が減算される。
次に、賞球制御カウンタ4の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ4の値が「1」以上であると判定した場合には、所定数(本実施形態では、3[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ4の値から「1」が減算される。
次に、賞球制御カウンタ5の値が「1」以上であるか否かを判定する。そして、賞球制御カウンタ5の値が「1」以上であると判定した場合には、所定数(本実施形態では、1[球])の賞球の払い出しを指定する払出コマンドを生成し、生成した払出コマンドを、RAM230の払出コマンド出力要求バッファに記憶する。これによって、所定数の賞球の払い出しを指定する払出コマンドが、払出制御基板400に対して送信される。その後、当該払い出しの完了を指定する主コマンドの受信に応じて、賞球制御カウンタ5の値から「1」が減算される。
ステップS4-18では、発射位置指定管理処理を実行し、ステップS4-19に移行する。発射位置指定管理処理では、発射位置の指定に関する処理を実行する。
具体的に、発射位置指定管理処理では、左側経路への遊技球の打ち出しを指定する状態から右側経路への遊技球の打ち出しを指定する状態への変更時(大当り遊技状態の開始時等)に、RAM230の発射位置指定フラグ領域に「1」を設定するとともに、右側経路への遊技球の打ち出しを指定するサブコマンドを、RAM230のサブコマンド出力要求バッファに記憶する。これによって、右側経路への遊技球の打ち出しを指定するサブコマンドが、演出制御基板300に対して送信される。
一方、右側経路への遊技球の打ち出しを指定する状態から左側経路への遊技球の打ち出しを指定する状態への変更時(時短制御の終了時等)に、RAM230の発射位置指定フラグ領域に「0」を設定する。
ステップS4-19では、外部情報管理処理を実行し、ステップS4-20に移行する。外部情報管理処理では、ホールコンピュータ(または、データ表示装置)に対して出力する外部情報(外部信号)を設定する。
本実施形態では、パチンコ機1から外部装置(ホールコンピュータ、データ表示装置等の電子機器)に対して出力される外部情報として、図柄確定回数情報、始動口情報、大当り情報、セキュリティ情報、アウト口払出数情報、エラー発生情報等が規定されている。
「図柄確定回数情報」は、特別図柄抽選(特別図柄の変動表示及び停止表示)の実行回数に関する外部情報となっている。CPU210は、特別図柄の停止表示の実行回数が所定回数に達するごとに、図柄確定回数情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「始動口情報」は、始動口51,52への遊技球の入球に関する外部情報となっている。CPU210は、始動口スイッチ101,102から入力される検出信号のオン状態が検出されるごとに、始動口情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「大当り情報」は、大当り遊技状態の生起に関する外部情報となっている。主制御基板200は、大当り遊技状態が生起されるごとに、大当り情報に対応する外部信号を、ホールコンピュータ(または、データ表示装置)に対して出力する。
「アウト口払出情報」は、排出路から排出された遊技球数(または、アウト口58から排出された遊技球数)に関する外部情報となっている。CPU210は、外部情報用アウト球数カウンタの値が所定値に達するごとに、アウト口払出数情報に対応する外部信号を、ホールコンピュータに対して出力する。
「セキュリティ情報」は、設定変更状態の生起中、設定確認状態の生起中、又は、各種のエラー(異常)の発生中であることを示す外部情報となっている。CPU210は、セキュリティタイマの値が「1」以上である場合に、セキュリティ情報に対応する外部信号を、ホールコンピュータに対して出力する。
外部情報管理処理では、外部情報用確定回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用確定回数カウンタの値が所定値に達していると判定した場合には、図柄確定回数情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用確定回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、図柄確定回数情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、外部情報用始動口入球回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用始動口入球回数カウンタの値が所定値に達していると判定した場合には、始動口情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用始動口入球回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、始動口情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、外部情報用大当り回数カウンタの値が所定値(本実施形態では、1[回])に達しているか否かを判定する。そして、外部情報用大当り回数カウンタの値が所定値に達していると判定した場合には、大当り情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用大当り回数カウンタの値から所定値(本実施形態では、1[回])を減算する。これによって、大当り情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、外部情報用アウト球数カウンタの値が所定値(本実施形態では、10[球])に達しているか否かを判定する。そして、外部情報用アウト球数カウンタの値が所定値に達していると判定した場合には、アウト口払出情報(外部信号)を、RAM230のポート出力要求バッファに記憶する。その後、外部情報用アウト球数カウンタの値から所定値(本実施形態では、10[球])を減算する。これによって、アウト口払出情報(外部信号)が、ホールコンピュータに対して出力される。
また、外部情報管理処理では、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)が、遊技可能状態に対応する値であるか否かを判定する。
そして、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値でないと判定(設定変更状態、設定確認状態、設定異常状態、RAM異常状態、又は、バックアップ異常状態に対応する値であると判定)した場合、セキュリティ情報を、RAM230のポート出力要求バッファに記憶する。これによって、セキュリティ情報(外部信号)が、ホールコンピュータに対して出力される。
さらに、外部情報管理処理では、セキュリティタイマの値が「1」以上であるか否かを判定する。そして、セキュリティタイマの値が「1」以上であると判定した場合には、セキュリティ情報を、RAM230のポート出力要求バッファに記憶する。これによって、セキュリティ情報(外部信号)が、ホールコンピュータに対して出力される。
ステップS4-20では、LED表示設定処理を実行し、ステップS4-21に移行する。LED表示設定処理では、メイン表示装置60又は性能表示装置206に対して出力する表示データを設定する。
RAM230には、コモン0出力要求バッファ(8ビット)と、コモン1出力要求バッファ(8ビット)と、コモン2出力要求バッファ(8ビット)と、コモン3出力要求バッファ(8ビット)と、が設けられている。
LED表示設定処理では、まず、コモン2出力要求バッファをクリア(初期化)するとともに、コモン3出力要求バッファをクリア(初期化)する。具体的に、コモン2出力要求バッファの各ビット値に「0」を設定するとともに、コモン3出力要求バッファの各ビット値に「0」を設定する。
次に、RAM230の遊技機状態フラグ領域に記憶されている遊技機状態フラグを取得する。
そして、取得した遊技機状態フラグが遊技可能状態に対応する値である場合、後述する通常時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが設定変更状態に対応する値である場合、後述する設定変更時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが設定確認状態に対応する値である場合、後述する設定確認時表示データ設定処理を実行する。一方、取得した遊技機状態フラグが異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応する値である場合、後述する異常時表示データ設定処理を実行する。
通常時表示データ設定処理では、まず、特図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により、現在の遊技状態(時短制御の実行中又は停止中)が表示される。
設定変更時表示データ設定処理では、設定変更状態の生起中であることを示す情報を、コモン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により、設定値を示す数字が表示される。
設定確認時表示データ設定処理では、設定確認状態の生起中であることを示す情報を、コモン0出力要求バッファ~コモン2出力要求バッファに設定するとともに、RAM230の設定値領域に記憶されている設定値を示す情報を、コモン3出力要求バッファに設定する。
具体的に、「r」の表示データ(8ビット)を、コモン0出力要求バッファに設定し、「n.」の表示データ(8ビット)を、コモン1出力要求バッファに設定し、RAM230の設定値領域に記憶されている設定値に対応する表示データを、コモン3出力要求バッファに設定する。なお、コモン2出力要求バッファについては、表示データが設定されない(クリア値のままとなる)。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「r」の文字が表示され、LED41~LED48により、「n.」の文字が表示され、LED57~LED64により、設定値を示す数字が表示される。なお、LED49~LED56については、消灯される。
異常時表示データ設定処理では、異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)の生起中であることを示す情報を、コモン0出力要求バッファ~コモン2出力要求バッファに設定するとともに、発生した異常に対応するエラーコードを、コモン3出力要求バッファに設定する。
具体的に、「E」の表示データ(8ビット)を、コモン0出力要求バッファに設定し、「r.」の表示データ(8ビット)を、コモン1出力要求バッファに設定し、発生した異常状態(設定異常状態、RAM異常状態、又は、バックアップ異常状態)に対応する表示データ(エラーコード)を、コモン3出力要求バッファに設定する。なお、コモン2出力要求バッファについては、表示データが設定されない(クリア値のままとなる)。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「E」の文字が表示され、LED41~LED48により、「r.」の文字が表示され、LED57~LED64により、エラーコードを示す数字が表示される。なお、LED49~LED56については、消灯される。
ステップS4-21では、ソレノイドデータ設定処理を実行し、ステップS4-22に移行する。ソレノイドデータ設定処理では、各ソレノイド64,65に対して出力する制御データ(駆動データ)を、RAM230のポート出力要求バッファに記憶(設定)する。
ステップS4-22では、ポート出力処理を実行し、ステップS4-23に移行する。ポート出力処理では、ホールコンピュータ、各ソレノイド64,65等に対して、各種信号を出力する。
具体的には、ポート出力処理では、ポート出力要求バッファに設定されている各種情報(外部信号、制御信号等)を、出力ポート205(出力ポート2,出力ポート3)に対して出力する。これによって、ポート出力要求バッファに設定されている外部信号が、ホールコンピュータに対して出力される。また、ポート出力要求バッファに設定されている駆動信号に基づいて、各ソレノイド64,65が駆動制御される。
ステップS4-23では、割込み禁止処理を実行して、ステップS4-24に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
ステップS4-24では、試験信号出力処理を実行し、ステップS4-25に移行する。試験信号出力処理では、試験用の情報(試験信号)を設定する。
試験信号出力処理は、遊技機規則で定める試験に関する処理を実行するためのプログラムに基づく処理となっている。すなわち、試験信号出力処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。試験信号管は、タイマ割込み処理の実行中に呼び出される。
具体的に、試験信号出力処理では、内部状態(大当り遊技状態、時短制御の実行状態、特別図柄抽選の確率状態等)を示す試験用の情報(試験信号)を、RAM230のポート出力要求バッファに記憶する。
ステップS4-25では、性能表示装置制御処理を実行し、ステップS4-26に移行する。性能表示装置制御処理については、後述する。
ステップS4-26では、レジスタ復帰処理を実行し、一連の処理を終了して元の処理に復帰する。レジスタ復帰処理では、ステップS4-1で退避しておいたレジスタの値を復帰させる。そして、レジスタ復帰処理の終了後、メインループ処理(スタックポインタで指示されるプログラムアドレス)に復帰する。
(ダイナミックポート出力処理)
次に、ステップS4-3のダイナミックポート出力処理を説明する。
図11は、ダイナミックポート出力処理を示すフローチャートである。
ダイナミックポート出力処理は、ステップS4-3において実行されると、図11に示すように、まず、ステップS29-1に移行する。
ステップS29-1では、出力データクリア処理を実行し、ステップS29-2に移行する。出力データクリア処理では、Aレジスタをクリア(初期化)する。具体的に、Aレジスタの各ビット値として、「0」を設定する。
ステップS29-2では、メイン表示装置データ出力処理を実行し、ステップS29-3に移行する。メイン表示装置データ出力処理では、Aレジスタの値(ステップS29-1でクリアされた値)を、出力ポート0に出力する。これによって、出力ポート0がクリア(初期化)され、メイン表示装置60の点灯を制御するための各データ信号(「SEGDATA0」~「SEGDATA7」)がローレベルとなる。
ステップS29-3では、性能表示装置データ出力処理を実行し、ステップS29-4に移行する。性能表示装置データ出力処理では、Aレジスタの値(ステップS29-1でクリアされた値)を、出力ポート4に出力する。これによって、出力ポート4がクリア(初期化)され、性能表示装置206の点灯を制御するための各データ信号(「7SEGDATA0」~「7SEGDATA7」)がローレベルとなる。
ステップS29-4では、コモン選択処理を実行し、ステップS29-5に移行する。コモン選択処理では、コモンカウンタの値を更新する。
具体的に、コモン選択処理では、コモンカウンタの値が上限値(本実施形態では、「3」)に達しているか否かを判定する。そして、コモンカウンタの値が上限値に達していないと判定した場合、コモンカウンタの値に、「1」を加算する。一方、コモンカウンタの値が上限値に達していると判定した場合、コモンカウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。
ステップ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」が選択(出力)される。
また、コモン出力処理では、発射許可信号の出力データを、出力ポート1に出力する。
すなわち、まず、遊技可能状態が生起(設定)されているか否かを判定する。
そして、遊技可能状態が生起されていると判定した場合、発射許可信号をハイレベルとする出力データを、出力ポート1に出力する。これによって、発射許可信号が出力される。
一方、遊技可能状態が生起されていないと判定した場合、発射許可信号をローレベルとする出力データを、出力ポート1に出力する。これによって、発射許可信号の出力が停止される。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
なお、本実施形態では、コモン出力処理において、遊技可能状態が生起されていると判定された場合にのみ、発射許可信号の出力が設定される構成となっている。これによって、遊技可能状態の生起中(設定中)にのみ、発射許可信号が出力される。しかしながら、コモン出力処理において、遊技機状態に関わらず、発射許可信号の出力が設定される構成としても構わない。かかる構成によって、主制御基板200に電源が投入されている期間中、常時、発射許可信号が出力される構成とすることができる。
ステップS29-6では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS29-7に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS29-11に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
ステップ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出力要求バッファに設定された表示データとなる。
ステップS29-8では、メイン表示装置データ出力処理を実行し、ステップS29-9に移行する。メイン表示装置データ出力処理では、ステップS29-7でAレジスタに設定した表示データを、出力ポート0に出力する。
これによって、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づくデータ信号(「SEGDATA0」~「SEGDATA7」)が、ソースドライバ250aに対して出力される。
すなわち、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づいて、メイン表示装置60の表示が制御される。
ステップS29-9では、割込み禁止処理を実行して、ステップS29-10に移行する。割込み禁止処理では、他の処理の割込みを禁止する割込み禁止状態を設定する。これにより、割込み禁止状態が設定されている期間中には、後述する電源遮断時退避処理、タイマ割込み処理等の実行が禁止される。
ステップS29-10では、性能表示装置出力処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。性能表示装置出力処理については、後述する。
ステップ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出力要求バッファに設定された表示データとなる。
ステップS29-12では、性能表示装置データ出力処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。性能表示装置データ出力処理では、ステップS29-11でAレジスタに設定した表示データを、出力ポート4に出力する。
これによって、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づくデータ信号(「7SEGDATA0」~「7SEGDATA7」)が、ソースドライバ250bに対して出力される。
すなわち、出力要求バッファ(コモン0出力要求バッファ~コモン3出力要求バッファのうち、一の出力要求バッファ)に設定された表示データに基づいて、性能表示装置206の表示が制御される。
(性能表示装置出力処理)
次に、ステップS29-10の性能表示装置出力処理を説明する。
図12は、性能表示装置出力処理を示すフローチャートである。
性能表示装置出力処理は、性能表示装置206の表示を制御するためのプログラムに基づく処理となっている。すなわち、性能表示装置出力処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。性能表示装置出力処理は、ダイナミックポート出力処理の実行中に呼び出される。
性能表示装置出力処理は、ステップS29-10において呼び出されると、図12に示すように、まず、ステップS30-1に移行する。
ステップS30-1では、レジスタ退避処理を実行し、ステップS30-2に移行する。レジスタ退避処理では、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのレジスタの値を、RAMの退避領域に退避させる。また、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのスタックポインタの値を、RAMの退避領域に退避させる。
ステップS30-2では、性能表示装置データ取得処理を実行し、ステップS30-3に移行する。性能表示装置データ取得処理では、性能表示装置206用の表示データを取得し、取得した表示データを、Aレジスタに設定する。
具体的に、性能表示装置データ取得処理では、まず、コモンカウンタの値を確認する。そして、RAM230の識別セグ出力要求バッファ及び比率セグ出力要求バッファのうち、確認したコモンカウンタの値に対応する領域に設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
この際、コモンカウンタの値=「0」である場合、識別セグ出力要求バッファの上位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「1」である場合、識別セグ出力要求バッファの下位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「2」である場合、比率セグ出力要求バッファの上位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
一方、コモンカウンタの値=「3」である場合、比率セグ出力要求バッファの下位8ビットに設定されている表示データを取得し、取得した表示データを、Aレジスタに設定する。
ここで、性能表示装置データ取得処理で取得される表示データは、前回のタイマ割込み処理に含まれるステップS4-25の性能表示装置制御処理において、識別セグ出力要求バッファ又は比率セグ出力要求バッファに設定された表示データとなる。
ステップS30-3では、性能表示装置データ出力処理を実行し、ステップS30-4に移行する。性能表示装置データ出力処理では、ステップS30-2でAレジスタに設定した表示データを、出力ポート4に出力する。
これによって、出力要求バッファ(識別セグ出力要求バッファ又は比率セグ出力要求バッファ)に設定された表示データに基づくデータ信号(「7SEGDATA0」~「7SEGDATA7」)が、ソースドライバ250bに対して出力される。
すなわち、出力要求バッファ(識別セグ出力要求バッファ又は比率セグ出力要求バッファ)に設定された表示データに基づいて、性能表示装置206の表示が制御される。
ステップS30-4では、レジスタ復帰処理を実行し、ステップS30-5に移行する。レジスタ復帰処理では、ステップS30-1で退避しておいたレジスタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたレジスタの値)と、ステップS30-1で退避しておいたスタックポインタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたスタックポインタの値)と、を復帰させる。
ステップS30-5では、割込み許可処理を実行し、一連の処理を終了して次の処理(ステップS4-4)に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、電源遮断時退避処理、タイマ割込み処理等の実行が許可される。
(設定関連処理)
次に、ステップS4-8の設定関連処理を説明する。
図13は、設定関連処理を示すフローチャートである。
設定関連処理は、ステップS4-8において実行されると、図13に示すように、まず、ステップS37-1に移行する。
ステップS37-1では、設定変更状態が生起(設定)されているか否かを判定し、設定変更状態が生起されていると判定した場合(Yes)には、ステップS37-2に移行し、設定変更状態が生起されていないと判定した場合(No)には、ステップS37-8に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、設定変更状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、設定変更状態に対応する値である場合、設定変更状態が生起されていると判定し、設定変更状態に対応する値でない場合、設定変更状態が生起されていないと判定する。
ステップ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」を加算する。
ステップS37-5では、レジスタに記憶されている設定値が所定の設定比較値(本実施形態では、「6」)未満であるか否かを判定し、レジスタに記憶されている設定値が所定の設定比較値未満でない(設定値が所定の設定比較値以上である)と判定した場合(No)には、ステップS37-6に移行し、レジスタに記憶されている設定値が所定の設定比較値未満であると判定した場合(Yes)には、ステップS37-7に移行する。
ステップS37-6では、設定値初期化処理を実行し、ステップS37-7に移行する。設定値初期化処理では、レジスタに記憶されている設定値として、所定の初期値(本実施形態では、「0」)を上書きする。
ステップS37-7では、設定値保存処理を実行し、ステップS37-8に移行する。設定値保存処理では、レジスタに記憶されている設定値を、RAM230の設定値領域に保存(セーブ)する。
ステップ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のサブコマンド出力要求バッファに記憶する。
ステップS37-10では、サブコマンド群設定処理を実行し、ステップS37-11に移行する。サブコマンド群設定処理では、サブコマンド群を、RAM230のサブコマンド出力要求バッファに記憶する。
ここで、サブコマンド群には、遊技状態(遊技状態オフセット値)を指定するサブコマンド、発射位置を指定するサブコマンド、第1特別図柄の停止図柄を指定するサブコマンド、第2特別図柄の停止図柄を指定するサブコマンド、特図1保留数を指定するサブコマンド、特図2保留数を指定するサブコマンド、時短カウンタの値を指定するサブコマンド、RAM230の設定値領域に記憶されている設定値を指定する設定値指定コマンド等が含まれる。
ステップS37-11では、ラムセット処理を実行し、一連の処理を終了して次の処理(ステップS4-19)に移行する。ラムセット処理では、遊技機状態として、遊技可能状態を設定する。
具体的には、RAM230の遊技機状態フラグ領域の値(遊技機状態フラグ)として、遊技可能状態に対応する値を保存(セーブ)する。
(スイッチ管理処理)
次に、ステップS4-12のスイッチ管理処理を説明する。
図14は、スイッチ管理処理を示すフローチャートである。
スイッチ管理処理は、ステップS4-12において実行されると、図14に示すように、まず、ステップS5-1に移行する。
ステップS5-1では、ゲートスイッチ104のオン状態を検出したか否かを判定し、ゲートスイッチ104のオン状態を検出したと判定した場合(Yes)には、ステップS5-2に移行し、ゲートスイッチ104のオン状態を検出していないと判定した場合(No)には、ステップS5-3に移行する。
ステップS5-2では、普図始動球検出処理を実行し、ステップS5-3に移行する。普図始動球検出処理については、後述する。
また、普図始動球検出処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値に、「1」を加算する。
本実施形態では、大当り遊技状態及び時短制御の実行中のうち、一方の遊技状態が生起されている期間が、右打ち期間となる。一方、通常遊技状態(大当り遊技状態の生起中でなく、かつ、時短制御の停止中である遊技状態)が生起されている期間が、左打ち期間となる。
ステップ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始動球検出処理については、後述する。
(普図始動球検出処理)
次に、ステップS5-2の普図始動球検出処理を説明する。
図15は、普図始動球検出処理を示すフローチャートである。
普図始動球検出処理は、ステップS5-2において実行されると、図15に示すように、まず、ステップS6-1に移行する。
ステップS6-1では、普図乱数取得処理を実行し、ステップS6-2に移行する。普図乱数取得処理では、当り乱数(乱数値)を、普通図柄抽選に対応するループカウンタから取得(ロード)する。
ステップS6-2では、普図保留数カウンタの値が上限値(本実施形態では、「4」)であるか否かを判定し、普図保留数カウンタの値が上限値でないと判定した場合(No)には、ステップS6-3に移行し、普図保留数カウンタの値が上限値であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS5-3)に移行する。
ステップS6-3では、普図保留数カウンタ更新処理を実行し、ステップS6-4に移行する。普図保留数カウンタ更新処理では、普図保留数カウンタに設定されている値に「1」を加算した値を、新たに普図保留数カウンタに設定する。
ステップ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に記憶する。
(特図1始動球検出処理)
次に、ステップS5-4の特図1始動球検出処理を説明する。
図16は、特図1始動球検出処理を示すフローチャートである。
特図1始動球検出処理は、ステップS5-4において実行されると、図16に示すように、まず、ステップS7-1に移行する。
ステップS7-1では、特別図柄識別値設定処理を実行し、ステップS7-2に移行する。特別図柄識別値設定処理では、RAM230の特別図柄識別値設定領域において、第1特別図柄抽選に対応する特別図柄識別値を設定する。また、外部情報用始動口入球回数カウンタの値に「1」を加算する。
また、特別図柄識別値設定処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値をリセットする(右打ちエラーカウンタの値として「0」を設定する)。
ステップS7-2では、保留数カウンタアドレス設定処理を実行し、ステップS7-3に移行する。保留数カウンタアドレス設定処理では、RAM230の保留数カウンタアドレス設定領域において、特図1保留数カウンタのアドレスを設定する。
ステップS7-3では、特別図柄乱数取得処理を実行し、一連の処理を終了して次の処理(ステップS5-5)に移行する。特別図柄乱数取得処理については、後述する。
(特図2始動球検出処理)
次に、ステップS5-6の特図2始動球検出処理を説明する。
図17は、特図2始動球検出処理を示すフローチャートである。
特図2始動球検出処理は、ステップS5-6において実行されると、図17に示すように、まず、ステップS8-1に移行する。
ステップS8-1では、特別図柄識別値設定処理を実行し、ステップS8-2に移行する。特別図柄識別値設定処理では、RAM230の特別図柄識別値設定領域において、第2特別図柄抽選に対応する特別図柄識別値を設定する。また、外部情報用始動口入球回数カウンタの値に「1」を加算する。
また、特別図柄識別値設定処理では、右打ち期間中であるか否かを判定する。そして、右打ち期間中でない(左打ち期間中である)と判定した場合には、右打ちエラーカウンタの値に、「1」を加算する。
ステップS8-2では、保留数カウンタアドレス設定処理を実行し、ステップS8-3に移行する。保留数カウンタアドレス設定処理では、RAM230の保留数カウンタアドレス領域において、特図2保留数カウンタのアドレスを設定する。
ステップS8-3では、特別図柄乱数取得処理を実行し、一連の処理を終了して次の処理(ステップS4-13)に移行する。特別図柄乱数取得処理については、後述する。
(特別図柄乱数取得処理)
次に、ステップS7-3,S8-3の特別図柄乱数取得処理を説明する。
図18は、特別図柄乱数取得処理を示すフローチャートである。
特別図柄乱数取得処理は、ステップS7-3,S8-3において実行されると、図18に示すように、まず、ステップS9-1に移行する。
ステップS9-1では、特別図柄識別値取得処理を実行し、ステップS9-2に移行する。特別図柄識別値取得処理では、RAM230の特別図柄識別値設定領域に設定されている特別図柄識別値を取得(ロード)する。
ステップS9-2では、特図保留数取得処理を実行し、ステップS9-3に移行する。特図保留数取得処理では、保留数カウンタアドレス領域に設定されているアドレスにより特定される特図保留数カウンタ(特図1保留数カウンタ又は特図2保留数カウンタ)の値(特図1保留数又は特図2保留数)を取得(ロード)する。
ステップ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」を加算した値を、新たに当該特図保留数カウンタに設定する。
ステップS9-6では、特図乱数保存処理を実行し、ステップS9-7に移行する。特図乱数保存処理では、ステップS9-3で取得した各種乱数を、特図遊技情報(特図1遊技情報又は特図2遊技情報)として、RAM230の特図遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に記憶する。
RAM230は、遊技の実行中の特図遊技情報が記憶される記憶エリア0と、始動判定が保留されている特図1遊技情報が記憶される特図1遊技情報記憶領域と、始動判定が保留されている特図2遊技情報記憶領域と、を含んで構成されている。
特図1遊技情報記憶領域は、特図1遊技情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。
各記憶エリアの優先順位は、優先順位が高いものから順に、記憶エリア1、記憶エリア2、記憶エリア3、記憶エリア4(上位→下位)となるように規定されている。そして、特図1遊技情報記憶領域に記憶されている特図1遊技情報は、優先順位が上位の記憶エリアに記憶されているものから順に、始動判定が実行される。
特図2遊技情報記憶領域は、特図2遊技情報を記憶することが可能な記憶エリアとして、記憶エリア1~記憶エリア4を含んで構成されている。
各記憶エリアの優先順位は、優先順位が高いものから順に、記憶エリア1、記憶エリア2、記憶エリア3、記憶エリア4(上位→下位)となるように規定されている。そして、特図2遊技情報記憶領域に記憶されている特図2遊技情報は、優先順位が上位の記憶エリアに記憶されているものから順に、始動判定が実行される。
特図乱数保存処理では、ステップ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に記憶する。
ステップS9-7では、保留数指定コマンド設定処理を実行し、ステップS9-8に移行する。保留数指定コマンド設定処理では、特図保留数(特図1保留数又は特図2保留数)が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。この際、ステップS9-1で取得した特別図柄識別値が、第1特別図柄抽選に対応する値である場合には、特図1保留数が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶し、第2特別図柄抽選に対応する値である場合には、特図2保留数が「1」増加したことを指定する保留数指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
ステップS9-8では、事前判定処理を実行し、一連の処理を終了して次の処理(ステップS4-13又はS5-5)に移行する。事前判定処理では、ステップS9-6で特図遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に保存(記憶)した遊技情報(特図1遊技情報又は特図2遊技情報)(以下、「事前判定対象遊技情報」とする)に基づいて、各種抽選結果を事前判定する。
本実施形態では、全ての遊技情報(特図1遊技情報及び特図2遊技情報)について、各種抽選結果の事前判定が実行される。
なお、大当り遊技状態の生起中に取得(記憶)された遊技情報については、各種抽選結果の事前判定が実行されない構成としても構わない。また、時短制御の停止中に取得(記憶)された特図2遊技情報については、各種抽選結果の事前判定が実行されず、時短制御の実行中に取得(記憶)された特図1遊技情報については、各種抽選結果の事前判定が実行されない構成としても構わない。
事前判定処理では、まず、事前特図当り判定処理を実行する。
事前特図当り判定処理では、特別図柄抽選の結果(「大当り」又は「はずれ」)を判定(事前特図当り判定)する。
ROM220には、特別図柄抽選の大当り値が登録された特図当落抽選テーブルが格納されている。また、特図当落抽選テーブルとして、設定値(「1」~「6」)と、遊技状態(「特図低確率状態」又は「特図高確率状態」)と、の組み合わせのそれぞれに対応する特図当落抽選テーブルと、が格納されている。
具体的には、特図当落抽選テーブルとして、「設定値1低確時特図当落抽選テーブル」と、「設定値1高確時特図当落抽選テーブル」と、「設定値2低確時特図当落抽選テーブル」と、「設定値2高確時特図当落抽選テーブル」と、「設定値3低確時特図当落抽選テーブル」と、「設定値3高確時特図当落抽選テーブル」と、「設定値4低確時特図当落抽選テーブル」と、「設定値4高確時特図当落抽選テーブル」と、「設定値5低確時特図当落抽選テーブル」と、「設定値5高確時特図当落抽選テーブル」と、「設定値6低確時特図当落抽選テーブル」と、「設定値6高確時特図当落抽選テーブル」と、が格納されている。
「設定値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」が、大当り値として登録されている。
「設定値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」が、大当り値として登録されている。
事前特図当り判定処理では、設定値領域に設定されている値(設定値)と、現在の遊技状態(「特図高確率状態」又は「特図低確率状態」)と、を確認して、この確認結果に対応する特図当落抽選テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる大当り乱数と、読み出した特図当落抽選テーブルと、に基づいて、特別図柄抽選の結果(「大当り」又は「はずれ」)を判定(事前特図当り判定)する。
具体的には、事前判定対象遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致している場合には、特別図柄抽選の結果を「大当り」(当選)と判定する。
一方、事前判定対象遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致していない場合(はずれ値と一致している場合)には、特別図柄抽選の結果を「はずれ」(落選)と判定する。
事前判定処理では、次に、事前特図図柄判定処理を実行する。事前特図図柄判定処理では、特別図柄の停止図柄の種別を判定(事前特図図柄判定)する。
事前特図図柄判定処理では、事前特図当り判定により「大当り」(当選)と判定された場合には、「大当り図柄」の種別を判定(事前特図図柄判定)する。
ROM220には、当り図柄乱数と、「大当り図柄」の種別と、の対応が登録された大当り図柄抽選テーブルが格納されている。また、大当り図柄抽選テーブルとして、第1特別図柄抽選に対応する第1大当り図柄抽選テーブルと、第2特別図柄抽選に対応する第2大当り図柄抽選テーブルと、が格納されている。
そして、第1大当り図柄抽選テーブルには、「大当り図柄」の種別として、「大当り1図柄」及び「大当り2図柄」が登録されている。一方、第2大当り図柄抽選テーブルには、「大当り図柄」の種別として、「大当り3図柄」~「大当り6図柄」が登録されている。
そして、事前判定対象遊技情報が特図1遊技情報である場合には、第1大当り図柄抽選テーブルを読み出す。そして、事前判定対象遊技情報に含まれる当り図柄乱数と、読み出した第1大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、事前判定対象遊技情報が特図2遊技情報である場合には、第2大当り図柄抽選テーブルを読み出す。そして、事前判定対象遊技情報に含まれる当り図柄乱数と、読み出した第2大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、事前特図図柄判定処理では、事前特図当り判定により「はずれ」(落選)と判定された場合には、停止図柄の種別として、「はずれ図柄」を判定(事前特図図柄判定)する。
事前判定処理では、次に、第1先読み指定コマンド設定処理を実行する。
第1先読み指定コマンド設定処理では、事前特図図柄判定により判定された停止図柄の種別を指定する第1先読み指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
事前判定処理では、次に、事前特図変動態様判定処理を実行する。
この際、事前特図当り判定により「はずれ」(落選)と判定された場合には、後述する落選時事前特図変動態判定処理を実行する。一方、事前特図当り判定により「大当り」(当選)と判定された場合には、後述する当選時事前特図変動態様判定処理を実行する。
落選時事前特図変動態様判定処理では、まず、事前乱数種別判定を実行する。
事前乱数種別判定では、事前判定対象遊技情報に含まれるリーチグループ乱数が、「不定値」及び「固定値」のうち、いずれの値であるかを判定する。
ここで、事前判定対象遊技情報に含まれるリーチグループ乱数が「不定値」である場合には、遊技情報(特図1遊技情報又は特図2遊技情報)の取得(記憶)時に、変動モード番号(一次変動モード番号)及び変動パターン番号が判定されない。
一方、事前判定対象遊技情報に含まれるリーチグループ乱数が「固定値」である場合には、遊技情報(特図1遊技情報又は特図2遊技情報)の取得(記憶)時(ステップS9-8の実行時)に、変動モード番号(一次変動モード番号)及び変動パターン番号が判定される。
本実施形態では、リーチグループ乱数の値は、「0」~「10006」の範囲内で更新される。そして、「0」~「10006」のうち、「0」~「8499」が「不定値」とされ、「8500」~「10006」が「固定値」とされている。
したがって、事前乱数種別判定では、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「8500」未満である場合には、「不定値」と判定し、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「8500」以上である場合には、「固定値」と判定する。
落選時事前特図変動態様判定処理では、事前乱数種別判定により「固定値」と判定された場合、さらに、事前リーチグループ判定と、落選時事前変動モード判定と、落選時事前変動パターン判定と、を実行する。
なお、落選時事前特図変動態様判定処理では、事前乱数種別判定により「不定値」と判定された場合、事前リーチグループ判定と、落選時事前変動モード判定と、落選時変動パターン判定と、が実行されない。
事前リーチグループ判定では、リーチグループ番号(リーチグループの種別)を判定する。
ROM220には、リーチグループ乱数と、リーチグループ番号(リーチグループの種別)と、の対応が登録されたリーチグループ判定テーブルが格納されている。
また、リーチグループ判定テーブルとして、保留種別(特図1遊技情報又は特図2遊技情報)と、保留数(「0」~「3」)と、遊技状態(低確状態中、時短状態中、確変状態中、又は、潜確状態中)と、の組み合わせのそれぞれに対応するリーチグループ判定テーブルが格納されている。
ここで、本実施形態では、遊技状態として、低確状態と、時短状態と、確変状態と、潜確状態と、が規定されている。
「低確状態」は、特図低確率状態の生起中、かつ、時短制御の停止中の遊技状態となっている。「時短状態」は、特図低確率状態の生起中、かつ、時短制御の実行中の遊技状態となっている。「確変状態」は、特図高確率状態の生起中、かつ、時短制御の実行中の遊技状態となっている。「潜確状態」は、特図高確率状態の生起中、かつ、時短制御の停止中の遊技状態となっている。
事前リーチグループ判定では、まず、保留種別(事前判定対象遊技情報の種別(特図1遊技情報又は特図2遊技情報)と、保留数と、遊技状態と、を確認して、この確認結果に対応するリーチグループ判定テーブルを読み出す。この際、保留数については、「0」と仮定される。
そして、事前判定対象遊技情報に含まれるリーチグループ乱数と、読み出したリーチグループ判定テーブルと、に基づいて、リーチグループ番号を判定する。
落選時事前変動モード判定では、変動モード番号(変動モードの種別)を判定する。
ROM220には、リーチモード乱数と、変動モード番号(変動モードの種別)と、の対応が登録された変動モード判定テーブルが格納されている。
また、変動モード判定テーブルとして、落選時変動モード判定テーブルと、当選時変動モード判定テーブルと、が格納されている。
さらに、落選時変動モード判定テーブルとして、各リーチグループ番号(リーチグループの各種別)に対応する落選時変動モード判定テーブルが格納されている。
特に、各変動モード判定テーブルでは、各リーチモード乱数に対して、変動モード番号(変動モードの種別)と、変動パターン判定テーブル(変動パターン判定テーブルを指定する情報)と、が対応付けられている。これによって、各変動モード判定テーブルに基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、が同時に選択される。
落選時事前変動モード判定では、まず、事前リーチグループ判定により判定されたリーチグループ番号を確認して、この確認結果に対応する落選時変動モード判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれるリーチモード乱数と、読み出した落選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
落選時事前変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
ROM220には、変動パターン乱数と、変動パターン番号(変動パターンの種別)と、の対応が登録された変動パターン判定テーブルが格納されている。
また、変動パターン判定テーブルとして、内容が互いに異なる複数の変動パターン判定テーブルが格納されている。
落選時事前変動パターン判定では、まず、落選時事前変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
一方、当選時事前特図変動態様判定処理では、まず、当選時事前変動モード判定を実行する。
当選時事前変動モード判定では、変動モード番号(変動モードの種別)を判定する。
当選時事前変動モード判定では、まず、当選時変動モード判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれるリーチモード乱数と、読み出した当選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
当選時事前特図変動態様判定処理では、次に、当選時事前変動パターン判定を実行する。
当選時事前変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
当選時事前変動パターン判定では、まず、当選時事前変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、事前判定対象遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
事前判定処理では、次に、第2,第3先読み指定コマンド設定処理を実行する。
第2,第3先読み指定コマンド設定処理では、事前特図当り判定により「はずれ」(落選)と判定され、かつ、事前乱数種別判定により「固定値」と判定された場合には、落選時事前変動モード判定により判定された変動モード番号を指定する第2先読み指定コマンドと、落選時事前変動パターン判定により判定された変動パターン番号を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
一方、事前特図当り判定により「はずれ」(落選)と判定され、かつ、事前乱数種別判定により「不定値」と判定された場合には、「不定値」を指定する第2先読み指定コマンドと、「不定値」を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
一方、事前特図当り判定により「大当り」(当選)と判定された場合には、当選時事前変動モード判定により判定された変動モード番号を指定する第2先読み指定コマンドと、当選時事前変動パターン判定により判定された変動パターン番号を指定する第3先読み指定コマンドと、をRAM230のサブコマンド出力要求バッファに記憶する。
以上により、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「固定値」である場合には、変動モード番号及び変動パターン番号が判定され、判定された変動モード番号及び変動パターン番号を指定する第2,第3先読み指定コマンドが、演出制御基板300に対して送信される。
一方、事前判定対象遊技情報に含まれるリーチグループ乱数の値が「不定値」である場合には、変動モード番号及び変動パターン番号が判定されず、「不定値」を指定する第2,第3先読み指定コマンドが、演出制御基板300に対して送信される。
(特別遊技管理処理)
次に、ステップS4-13の特別遊技管理処理を説明する。
図19は、特別遊技管理処理を示すフローチャートである。
本実施形態では、特別図柄抽選に基づいて実行される遊技(以下、「特別遊技」とする)の局面・段階(以下、「特別遊技フェーズ」とする)として、「特図変動待ち状態」、「特図変動中状態」、「特図停止図柄表示状態」、「大入賞口開放前状態」、「大入賞口開放制御状態」、「大入賞口閉鎖有効状態」及び「大入賞口開放終了ウェイト状態」の7つが規定されている。
そして、RAM230の特別遊技フェーズフラグ領域において、7つの特別遊技フェーズのうち一のものに対応する値(特別遊技フェーズフラグ)が設定される。
また、ROM220には、特別遊技を制御(実行)するための特別遊技制御モジュール(プログラム)として、各特別遊技フェーズに対応する特別遊技制御モジュールが格納されている。
そして、特別遊技管理処理では、RAM230の特別遊技フェーズフラグ領域に設定されている値に対応する特別遊技制御モジュールが選択され、選択された特別遊技制御モジュールに基づく処理が実行される。
具体的には、特別遊技管理処理は、ステップS4-13において実行されると、図19に示すように、まず、ステップS10-1に移行する。
ステップS10-1では、特別遊技フェーズ取得処理を実行し、ステップS10-2に移行する。特別遊技フェーズ取得処理では、RAM230の特別遊技フェーズフラグ領域に設定されている値(特別遊技フェーズ)を取得(ロード)する。
ステップS10-2では、特別遊技制御モジュール取得処理を実行し、ステップS10-3に移行する。特別遊技制御モジュール取得処理では、ステップS10-1で取得した値(特別遊技フェーズ)に対応する特別遊技制御モジュールを読み出す。
ステップS10-3では、特別遊技制御モジュール実行処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技制御モジュール実行処理では、ステップS10-2で読み出した特別遊技制御モジュールに基づく処理を開始する。
具体的には、ステップS10-1で取得した値が、「特図変動待ち状態」に対応する値である場合には、後述する特図変動待ち処理が開始され、「特図変動中状態」に対応する値である場合には、後述する特図変動中処理が開始され、「特図停止図柄表示状態」に対応する値である場合には、後述する特図停止中処理が開始され、「大入賞口開放前状態」に対応する値である場合には、後述する大入賞口開放前処理が開始され、「大入賞口開放制御状態」に対応する値である場合には、後述する大入賞口開放制御処理が開始され、「大入賞口閉鎖有効状態」に対応する値である場合には、後述する大入賞口閉鎖有効処理が開始され、「大入賞口開放終了ウェイト状態」に対応する値である場合には、後述する大入賞口開放終了ウェイト処理が開始される。
(特図変動待ち処理)
次に、ステップS10-3で実行される特図変動待ち処理を説明する。
図20は、特図変動待ち処理を示すフローチャートである。
特図変動待ち処理は、ステップS10-3において実行されると、図20に示すように、まず、ステップ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に移行する。
ステップ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のサブコマンド出力要求バッファに記憶する。
ステップ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の記憶内容をクリア(初期化)する。
ステップS11-6では、設定異常判定処理を実行し、ステップS11-7に移行する。設定異常判定処理では、設定異常の発生を監視する。
具体的に、設定異常判定処理では、まず、RAM230の設定値領域に記憶されている設定値を取得する。次に、取得した設定値が所定の設定比較値(本実施形態では、「6」)未満であるか否かを判定する。
そして、取得した設定値が所定の設定比較値未満でない(所定の設定比較値以上である)と判定した場合、RAM230の遊技機状態フラグ領域の値(遊技機状態フラグ)として、設定異常状態に対応する値を保存(セーブ)する。また、設定異常の発生を指定するサブコマンドを、サブコマンド出力要求バッファに格納する。そして、次の処理(ステップS11-7)に移行する。
一方、取得した設定値が所定の設定比較値未満であると判定した場合、次の処理(ステップS11-7)に移行する。
ステップS11-7では、特図当り判定処理を実行し、ステップS11-8に移行する。特図当り判定処理では、特別図柄抽選の結果を判定(特図当り判定)する。
特図当り判定処理では、まず、RAM230の設定値領域に記憶されている設定値と、現在の遊技状態(「特図高確率状態」又は「特図低確率状態」)と、を確認して、この確認結果に対応する特図当落抽選テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数と、読み出した特図当落抽選テーブルと、に基づいて、特別図柄抽選の結果が「大当り」であるか否かを判定(特図当り判定)する。
具体的には、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致している場合には、特別図柄抽選の結果を「大当り」(当選)と判定する。
一方、記憶エリア0に記憶されている遊技情報に含まれる大当り乱数の値が、読み出した特図当落抽選テーブルに登録されている大当り値と一致していない場合(はずれ値と一致している場合)には、特別図柄抽選の結果を「はずれ」(落選)と判定する。
ステップS11-8では、特図図柄判定処理を実行し、ステップS11-9に移行する。特図図柄判定処理では、特別図柄の停止図柄の種別を判定(特図図柄判定)する。
具体的に、特図図柄判定処理では、まず、特図当り判定により「大当り」(当選)と判定されたか否かを判定する。
そして、特図当り判定により「大当り」(当選)と判定された場合、「大当り図柄」の種別を判定する。
これには、特別図柄判別フラグ設定値=「0」である場合、第1大当り図柄抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出した第1大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、特別図柄判別フラグ設定値=「1」である場合、第2大当り図柄抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出した第2大当り図柄抽選テーブルと、に基づいて、大当り図柄の種別を判定する。
一方、特図当り判定により「はずれ」(落選)と判定された場合、停止図柄の種別として、「はずれ図柄」を判定する。
次に、判定した停止図柄の種別に対応する値を、RAM230の特別図柄判定フラグ領域に設定する。
ステップS11-9では、図柄種別指定コマンド設定処理を実行し、ステップS11-10に移行する。図柄種別指定コマンド設定処理では、ステップS11-8で判定した停止図柄の種別を指定する図柄種別指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS11-10では、特図停止図柄番号判定処理を実行し、ステップS11-11に移行する。特図停止図柄番号判定処理では、特別図柄の停止図柄番号を判定する。
ROM220には、当り図柄乱数の値と、停止図柄番号(セグデータ)と、の対応が登録された停止図柄番号抽選テーブルが格納されている。
また、停止図柄番号抽選テーブルとして、特別図柄抽選(第1特別図柄抽選又は第2特別図柄抽選)に当選した場合に対応する当選時停止図柄番号抽選テーブルと、特別図柄抽選(第1特別図柄抽選又は第2特別図柄抽選)に落選した場合に対応する落選時停止図柄番号抽選テーブルと、が格納されている。
さらに、当選時停止図柄番号抽選テーブルとして、第1特別図柄抽選に対応する当選時停止図柄番号抽選テーブルと、第2特別図柄抽選に対応する当選時停止図柄番号抽選テーブルと、が格納されている。
特図停止図柄番号判定処理では、まず、特図当り判定の結果を確認する。
そして、特図当り判定により「大当り」(当選)と判定された場合、特別図柄判別フラグ設定値を確認して、この確認結果に対応する当選時停止図柄番号抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出された当選時停止図柄番号抽選テーブルと、に基づいて、停止図柄番号を判定する。
一方、特図当り判定により「はずれ」(落選)と判定された場合、落選時停止図柄番号抽選テーブルを読み出す。そして、記憶エリア0に記憶されている遊技情報に含まれる当り図柄乱数と、読み出された落選時停止図柄番号抽選テーブルと、に基づいて、停止図柄番号を判定する。
次に、判定した停止図柄番号を、RAM230の停止図柄番号記憶領域に記憶する。
ステップS11-11では、特図変動パターン判定処理を実行し、ステップS11-12に移行する。特図変動パターン判定処理では、特別図柄の変動態様(変動モードの種別及び変動パターンの種別)を判定する。
具体的に、特図変動パターン判定処理では、まず、特図当り判定の結果を確認する。そして、特図当り判定の結果が「はずれ」(落選)である場合には、後述する落選時特図変動態判定処理を実行する。一方、特図当り判定の結果が「大当り」(当選)である場合には、後述する当選時特図変動態様判定処理を実行する。
落選時特図変動態様判定処理では、まず、リーチグループ判定を実行する。
リーチグループ判定では、リーチグループ番号(リーチグループの種別)を判定する。
リーチグループ判定では、まず、保留種別(記憶エリア0に記憶されている遊技情報の種別(特図1遊技情報又は特図2遊技情報)と、保留数と、遊技状態と、を確認して、この確認結果に対応するリーチグループ判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチグループ乱数と、読み出したリーチグループ判定テーブルと、に基づいて、リーチグループの種別を判定する。
落選時特図変動態様判定処理では、次に、落選時変動モード判定を実行する。
落選時変動モード判定では、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
落選時変動モード判定では、まず、リーチグループ判定により判定されたリーチグループ番号を確認して、この確認結果に対応する落選時変動モード判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチモード乱数と、読み出した落選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
落選時特図変動態様判定処理では、次に、落選時変動パターン判定を実行する。
落選時変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
落選時変動パターン判定では、まず、落選時変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
一方、当選時特図変動態様判定処理では、まず、当選時変動モード判定を実行する。
当選時変動モード判定では、変動モード番号(変動モードの種別)と、変動パターンテーブルと、を判定する。
当選時変動モード判定では、まず、当選時変動モード判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれるリーチモード乱数と、読み出した当選時変動モード判定テーブルと、に基づいて、変動モード番号(変動モードの種別)と、変動パターン判定テーブルと、を判定する。
当選時特図変動態様判定処理では、次に、当選時変動パターン判定を実行する。
当選時変動パターン判定では、変動パターン番号(変動パターンの種別)を判定する。
当選時変動パターン判定では、まず、当選時変動モード判定により判定された変動パターン判定テーブルを読み出す。
そして、記憶エリア0に記憶されている遊技情報に含まれる変動パターン乱数と、読み出した変動パターン判定テーブルと、に基づいて、変動パターン番号(変動パターンの種別)を判定する。
ステップS11-12では、変動パターンコマンド設定処理を実行し、ステップS11-13に移行する。変動パターンコマンド設定処理では、ステップS11-11で判定した変動モード番号(変動モードの種別)を指定する変動モード指定コマンドを、サブコマンド出力要求バッファに格納する。
また、ステップS11-11で判定した変動パターン番号(変動パターンの種別)を指定する変動パターン指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS11-13では、特図変動時間設定処理を実行し、ステップS11-14に移行する。特図変動時間設定処理では、特別図柄の変動表示の時間を設定する。
具体的に、特図変動時間設定処理では、まず、ステップS11-11で判定した変動モード番号に対応する変動時間(以下、「変動時間1」とする)を取得する。
また、ステップS11-11で判定した変動パターン番号に対応する変動時間(以下、「変動時間2」とする)を取得する。
そして、取得した変動時間1と変動時間2との合計時間を算出し、算出した合計時間を、特別遊技タイマに設定する。
ステップS11-14では、特図変動表示データ設定処理を実行し、ステップS11-15に移行する。特図変動表示データ設定処理では、特図表示装置の変動表示を制御するためのデータを設定する。
具体的に、特図変動表示データ設定処理では、まず、特図表示タイマに、所定表示時間を設定する。
次に、特別図柄判別フラグ設定値=「0」である場合、特図1表示図柄カウンタに、所定の初期値を設定する。これによって、特図1表示装置を構成する所定数のセグメントのうち、特図1表示図柄カウンタの値に対応するセグメントが点灯制御される。
一方、特別図柄判別フラグ設定値=「1」である場合には、特図2表示図柄カウンタに、所定の初期値を設定する。これによって、特図2表示装置を構成する所定数のセグメントのうち、特図2表示図柄カウンタの値に対応するセグメントが点灯制御される。
ステップS11-15では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図変動中状態」に対応する値を設定する。
ステップS11-16では、客待ち設定処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。客待ち設定処理では、デモ指定コマンドを、RAM230のサブコマンド出力要求バッファに記憶する。
(特図変動中処理)
次に、ステップS10-3で実行される特図変動中処理を説明する。
図21は、特図変動中処理を示すフローチャートである。
特図変動中処理は、ステップS10-3において実行されると、図21に示すように、まず、ステップ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」を加算する。
ステップS12-4では、特図停止表示データ設定処理を実行し、ステップS12-5に移行する。特図停止表示データ設定処理では、特図表示装置の停止表示を制御するためのデータを設定する。
具体的に、特図停止表示データ設定処理では、RAM230の停止図柄番号記憶領域に記憶されている停止図柄番号を取得する。
次に、特別図柄判別フラグ設定値=「0」である場合、特図1表示図柄カウンタの値として、取得した停止図柄番号(停止図柄番号に対応するデータ)を設定する。これによって、特図1表示装置を構成する所定数のセグメントのうち、設定された停止図柄番号に対応するセグメントが点灯制御(停止表示)される。
一方、特別図柄判別フラグ設定値=「1」である場合、特図2表示図柄カウンタの値として、取得した停止図柄番号(停止図柄番号に対応するデータ)を設定する。これによって、特図2表示装置を構成する所定数のセグメントのうち、設定された停止図柄番号に対応するセグメントが点灯制御(停止表示)される。
ステップS12-5では、特図停止時間設定処理を実行し、ステップS12-6に移行する。特図停止時間設定処理では、所定の停止時間を、特別遊技タイマに設定する。
ステップS12-6では、停止指定コマンド設定処理を実行し、ステップS12-7に移行する。停止指定コマンド設定処理では、停止指定コマンドを、サブコマンド出力要求バッファに格納する。また、外部情報用確定回数カウンタの値に、所定数(本実施形態では、1[回])を加算する。
ステップS12-7では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「特図停止図柄表示状態」に対応する値を設定する。
(特図停止中処理)
次に、ステップS10-3で実行される特図停止中処理を説明する。
図22は、特図停止中処理を示すフローチャートである。
特図停止中処理は、ステップS10-3において実行されると、図22に示すように、まず、ステップ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」が設定されている場合には、時短制御の実行中でないと判定する。
ステップ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」を設定する。
ステップS13-7では、特別電役制御データ設定処理を実行し、ステップS13-8に移行する。特別電役制御データ設定処理では、特別電動役物53aを開閉制御するための制御データを設定する。
ROM220には、各種類の「大当り図柄」に対応する特別電役制御テーブルが格納されている。そして、各特別電役制御テーブルには、大入賞口閉鎖有効時間、大入賞口閉鎖時間、ラウンド遊技回数、各回のラウンド遊技に対応する開閉切替回数、各回の開閉切替に対応する制御データ(ソレノイド制御データ、制御時間データ)等が規定されている。
特別電役制御データ設定処理では、ステップS11-8で判定された「大当り図柄」の種別に対応する特別電役制御テーブルを読出し、読み出した特別電役制御テーブルを、RAM230の特別電役制御テーブル領域に設定する。
次に、特別電役連続作動回数カウンタに「0」を設定する。
ステップS13-8では、オープニング時間設定処理を実行し、ステップS13-9に移行する。オープニング時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定のオープニング時間を、特別遊技タイマに設定する。
ステップS13-9では、オープニング指定コマンド設定処理を実行し、ステップS13-10に移行する。オープニング指定コマンド設定処理では、ステップS11-8で判定された「大当り図柄」の種別を指定するオープニング指定コマンドを、サブコマンド出力要求バッファに格納する。また、外部情報用大当り回数カウンタの値に、所定数(本実施形態では、1[回])を加算する。
ステップS13-10では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放前状態」に対応する値を設定する。
(大入賞口開放前処理)
次に、ステップS10-3で実行される大入賞口開放前処理を説明する。
図23は、大入賞口開放前処理を示すフローチャートである。
大入賞口開放前処理は、ステップS10-3において実行されると、図23に示すように、まず、ステップS14-1に移行する。
ステップS14-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS14-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS14-2では、特別電役連続作動回数カウンタ更新処理を実行し、ステップS14-3に移行する。特別電役連続作動回数カウンタ更新処理では、特別電役連続作動回数カウンタに設定されている値に「1」を加算した値を、新たに特別電役連続作動回数カウンタに設定する。
ステップS14-3では、ラウンド開始指定コマンド設定処理を実行し、ステップS14-4に移行する。ラウンド開始指定コマンド設定処理では、ラウンド開始指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS14-4では、特別電役開閉切替回数設定処理を実行し、ステップS14-5に移行する。特別電役開閉切替回数設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役連続作動回数カウンタの値に対応する開閉切替回数を読み出す。そして、読み出した開閉切替回数を、特別電役開閉切替回数カウンタに設定する。
次に、特別電役入賞数カウンタの値として「0」を設定する。
ステップS14-5では、特別電役開閉切替処理を実行し、ステップS14-6に移行する。特別電役開閉切替処理については、後述する。
ステップS14-6では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放制御状態」に対応する値を設定する。
(特別電役開閉切替処理)
次に、ステップS14-5,S16-3の特別電役開閉切替処理を説明する。
図24は、特別電役開閉切替処理を示すフローチャートである。
特別電役開閉切替処理は、ステップS14-5,S16-3において実行されると、図24に示すように、まず、ステップS15-1に移行する。
ステップS15-1では、特別電役開閉切替回数カウンタの値が「0」であるか否かを判定し、特別電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS15-2に移行し、特別電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS14-6又はS16-4)に移行する。
ステップS15-2では、特別電役制御データ設定処理を実行し、ステップS15-3に移行する。特別電役制御データ設定処理では、特別電動役物53aを開放状態又は閉鎖状態に制御するための制御データを設定する。
具体的には、特別電役制御データ設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役開閉切替回数カウンタの値に対応するソレノイド制御データを読み出す。そして、読み出したソレノイド制御データ(通電又は通電停止を指定する制御データ)を、RAM230の所定領域に設定する。これによって、設定されたソレノイドデータに基づく特別電動役物ソレノイド65の制御が開始され、特別電動役物53aが開放状態又は閉鎖状態に制御される。
ステップS15-3では、特別電役制御時間設定処理を実行し、ステップS15-4に移行する。特別電役制御時間設定処理では、ステップS15-2で設定したソレノイド制御データに基づく制御を継続する制御時間を設定する。
具体的には、特別電役制御時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、特別電役開閉切替回数カウンタの値に対応する制御時間を読み出す。そして、読み出した制御時間を、特別遊技タイマに設定する。
ステップS15-4では、特別電役開閉切替回数カウンタ更新処理を実行し、一連の処理を終了して次の処理(ステップS14-6又はS16-4)に移行する。特別電役開閉切替回数カウンタ更新処理では、特別電役開閉切替回数カウンタに設定されている値から「1」を減算した値を、新たに特別電役開閉切替回数カウンタに設定する。
(大入賞口開放制御処理)
次に、ステップS10-3で実行される大入賞口開放制御処理を説明する。
図25は、大入賞口開放制御処理を示すフローチャートである。
大入賞口開放制御処理は、ステップS10-3において実行されると、図25に示すように、まず、ステップ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では、特別電役開閉切替処理(図24参照)を実行し、ステップS16-4に移行する。
ステップS16-4では、特別電役入賞数カウンタの値が所定の上限値(本実施形態では、10[球])に達しているか否かを判定し、特別電役入賞数カウンタの値が所定の上限値に達していると判定した場合(Yes)には、ステップS16-5に移行し、特別電役入賞数カウンタの値が所定の上限値に達していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS16-5では、大入賞口開放制御終了処理を実行し、ステップS16-6に移行する。大入賞口開放制御終了処理では、通電停止を指定するソレノイド制御データを、RAM230の所定領域に設定する。これによって、特別電動役物53aが閉鎖状態に制御される。
ステップS16-6では、大入賞口閉鎖有効時間設定処理を実行し、ステップS16-7に移行する。大入賞口閉鎖有効時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定の大入賞口閉鎖有効時間(インターバル時間)を、特別遊技タイマに設定する。
ステップS16-7では、ラウンド終了指定コマンド設定処理を実行し、ステップS16-8に移行する。ラウンド終了指定コマンド設定処理では、ラウンド終了指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS16-8では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口閉鎖有効状態」に対応する値を設定する。
(大入賞口閉鎖有効処理)
次に、ステップS10-3で実行される大入賞口閉鎖有効処理を説明する。
図26は、大入賞口閉鎖有効処理を示すフローチャートである。
大入賞口閉鎖有効処理は、ステップS10-3において実行されると、図26に示すように、まず、ステップS17-1に移行する。
ステップS17-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS17-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップS17-2では、特別電役連続作動回数カウンタの値が規定値に達しているか否かを判定し、特別電役連続作動回数カウンタの値が規定値に達していないと判定した場合(No)には、ステップS17-3に移行し、特別電役連続作動回数カウンタの値が規定値に達していると判定した場合(Yes)には、ステップS17-5に移行する。
ここで、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、当該特別電役制御テーブルに規定されているラウンド遊技回数を規定値として取得して判定を行う。
ステップS17-3では、大入賞口閉鎖時間設定処理を実行し、ステップS17-4に移行する。大入賞口閉鎖時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定の大入賞口閉鎖時間を、特別遊技タイマに設定する。
ステップS17-4では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放前状態」に対応する値を設定する。
ステップS17-5では、エンディング時間設定処理を実行し、ステップS17-6に移行する。エンディング時間設定処理では、RAM230の特別電役制御テーブル領域に設定されている特別電役制御テーブルを参照して、所定のエンディング時間を、特別遊技タイマに設定する。
ステップS17-6では、エンディング指定コマンド設定処理を実行し、ステップS17-7に移行する。エンディング指定コマンド設定処理では、エンディング指定コマンドを、サブコマンド出力要求バッファに格納する。
ステップS17-7では、特別遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-14)に移行する。特別遊技フェーズ更新処理では、RAM230の特別遊技フェーズフラグ領域において、「大入賞口開放終了ウェイト状態」に対応する値を設定する。
(大入賞口開放終了ウェイト処理)
次に、ステップS10-3で実行される大入賞口開放終了ウェイト処理を説明する。
図27は、大入賞口開放終了ウェイト処理を示すフローチャートである。
大入賞口開放終了ウェイト処理は、ステップS10-3において実行されると、図27に示すように、まず、ステップS18-1に移行する。
ステップS18-1では、特別遊技タイマの値が「0」であるか否かを判定し、特別遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS18-2に移行し、特別遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-14)に移行する。
ステップ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の特別遊技フェーズフラグ領域において、「特図変動待ち状態」に対応する値を設定する。
(普通遊技管理処理)
次に、ステップS4-14の普通遊技管理処理を説明する。
図28は、普通遊技管理処理を示すフローチャートである。
ここで、本実施形態では、普通図柄抽選に基づいて実行される遊技(以下、「普通遊技」とする)の局面・段階(以下、「普通遊技フェーズ」とする)として、「普図変動待ち状態」、「普図変動中状態」、「普図停止図柄表示状態」、「普図電動役物開放前状態」、「普図電動役物開放制御状態」、「普図電動役物閉鎖有効状態」及び「普図電動役物開放終了ウェイト状態」の7つが規定されている。
そして、RAM230の普通遊技フェーズフラグ領域において、7つの普通遊技フェーズのうち一のものに対応する値(普通遊技フェーズフラグ)が設定される。
また、ROM220には、普通遊技を制御(実行)するための普通遊技制御モジュール(プログラム)として、各普通遊技フェーズに対応する普通遊技制御モジュールが格納されている。
そして、普通遊技管理処理では、RAM230の普通遊技フェーズフラグ領域に設定されている値に対応する普通遊技制御モジュールが選択され、選択された普通遊技制御モジュールに基づく処理が実行される。
具体的には、普通遊技管理処理は、ステップS4-14において実行されると、図28に示すように、まず、ステップS19-1に移行する。
ステップS19-1では、普通遊技フェーズ取得処理を実行し、ステップS19-2に移行する。普通遊技フェーズ取得処理では、RAM230の普通遊技フェーズフラグ領域に設定されている値(普通遊技フェーズ)を取得(ロード)する。
ステップS19-2では、普通遊技制御モジュール取得処理を実行し、ステップS19-3に移行する。普通遊技制御モジュール取得処理では、ステップS19-1で取得した値(普通遊技フェーズ)に対応する普通遊技制御モジュールを読み出す。
ステップS19-3では、普通遊技制御モジュール実行処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技制御モジュール実行処理では、ステップS19-2で読み出した普通遊技制御モジュールに基づく処理を開始する。
具体的に、ステップS19-1で取得した値が、「普図変動待ち状態」に対応する値である場合、後述する普図変動待ち処理が開始され、「普図変動中状態」に対応する値である場合、後述する普図変動中処理が開始され、「普図停止図柄表示状態」に対応する値である場合、後述する普図停止中処理が開始され、「普通電動役物開放前状態」に対応する値である場合、後述する普通電動役物開放前処理が開始され、「普通電動役物開放制御状態」に対応する値である場合、後述する普通電動役物開放制御処理が開始され、「普通電動役物閉鎖有効状態」に対応する値である場合、後述する普通電動役物閉鎖有効処理が開始され、「普通電動役物開放終了ウェイト状態」に対応する値である場合、後述する普通電動役物開放終了ウェイト処理が開始される。
(普図変動待ち処理)
次に、ステップS19-3で実行される普図変動待ち処理を説明する。
図29は、普図変動待ち処理を示すフローチャートである。
普図変動待ち処理は、ステップS19-3において実行されると、図29に示すように、まず、ステップS20-1に移行する。
ステップS20-1では、普図保留数カウンタの値が「1」以上であるか否かを判定し、普図保留数カウンタの値が「1」以上であると判定した場合(Yes)には、ステップS20-2に移行し、普図保留数カウンタの値が「1」以上でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS20-2では、普図保留数更新処理を実行し、ステップS20-3に移行する。普図保留数更新処理では、普図保留数を更新する。
具体的に、普図保留数更新処理では、まず、普図保留数カウンタの値から、「1」を減算する。
次に、普図遊技情報が記憶される記憶エリアをシフトする。具体的に、普図遊技情報記憶領域の記憶エリア1の記憶内容を、記憶エリア0にシフト(移動)する。次に、普図遊技情報記憶領域の記憶エリア2の記憶内容を、普図遊技情報記憶領域の記憶エリア1にシフトする。次に、普図遊技情報記憶領域の記憶エリア3の記憶内容を、普図遊技情報記憶領域の記憶エリア2にシフトする。次に、普図遊技情報記憶領域の記憶エリア4の記憶内容を、普図遊技情報記憶領域の記憶エリア3にシフトする。次に、普図遊技情報記憶領域の記憶エリア4の記憶内容をクリア(初期化)する。
ステップS20-3では、普図当落判定処理を実行し、ステップS20-4に移行する。普図当落判定処理では、普通図柄抽選の結果を判定(普図当落判定)する。
ROM220には、普通図柄抽選の当り値が登録された普図当落抽選テーブルが格納されている。また、普図当落抽選テーブルとして、時短制御の実行中に対応する普図当落抽選テーブルと、時短制御の停止中に対応する普図当落抽選テーブルと、が格納されている。
時短制御の停止中に対応する普図当落抽選テーブルでは、当選確率が第1の確率(本実施形態では、1/99)となるように、当り値が登録されている。一方、時短制御の実行中に対応する普図当落抽選テーブルでは、当選確率が第1の確率より高い第2の確率(本実施形態では、1/1)となるように、当り値が登録されている。
そして、普図当落判定処理では、記憶エリア0に記憶されている遊技情報に含まれる当り乱数と、現在の時短制御の実行状況(実行中又は停止中)に対応する普図当落抽選テーブルと、に基づいて、普図当落判定を実行する。
具体的には、記憶エリア0に記憶されている遊技情報に含まれる当り乱数の値が当り値と一致している場合には、普通図柄抽選の結果を「当り」(当選)と判定する。
一方、記憶エリア0に記憶されている遊技情報に含まれる当り乱数の値が当り値と一致していない場合には、普通図柄抽選の結果を「はずれ」(落選)と判定する。
ステップS20-4では、普図停止図柄判定処理を実行し、ステップS20-5に移行する。普図停止図柄判定処理では、普通図柄の停止図柄の種別(停止図柄番号)を判定(普図停止図柄判定)する。
具体的には、普図停止図柄判定処理では、普図当落判定により「当り」(当選)と判定された場合には、停止図柄の種別(停止図柄番号)として、「普図当り図柄」を判定する。
一方、普図当落判定により「はずれ」(落選)と判定された場合には、停止図柄の種別(停止図柄番号)として、「はずれ図柄」を判定する。
次に、決定した停止図柄の種別(停止図柄番号)を、RAM230の停止図柄記憶領域に記憶する。
ステップS20-5では、普図変動パターン判定処理を実行し、ステップS20-6に移行する。普図変動パターン判定処理では、普通図柄の変動パターンの種別(変動パターン番号)を判定(普図変動パターン判定)する。
具体的には、普図変動パターン判定処理では、時短制御を停止中である場合には、普図変動パターンの種別(変動パターン番号)として、第1の種別(本実施形態では、2.0[s]の変動時間に対応する種別)を判定する。
一方、時短制御を実行中である場合には、普図変動パターンの種別(変動パターン番号)として、第2の種別(本実施形態では、0.5[s]の変動時間に対応する種別)を判定する。
ステップS20-6では、普図変動時間設定処理を実行し、ステップS20-7に移行する。普図変動時間設定処理では、ステップS20-6で判定した普図変動パターンの種別(変動パターン番号)に対応する変動時間を取得する。そして、取得した変動時間を、普通遊技タイマに設定する。
ステップS20-7では、普図変動表示データ設定処理を実行し、ステップS20-8に移行する。普図変動表示データ設定処理では、普図表示装置の変動表示を制御するためのデータを設定する。
具体的には、普図変動表示データ設定処理では、まず、普図表示タイマに、所定表示時間を設定する。
次に、普図表示図柄カウンタに、所定の初期値を設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、普図表示図柄カウンタの値に対応するセグメントが点灯制御される。
次に、普図表示装置に対応するセグデータとして、所定のセグデータを設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、設定されたセグデータに対応するセグメントが点灯制御される。
ステップS20-8では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図変動中状態」に対応する値を設定する。
(普図変動中処理)
次に、ステップS19-3で実行される普図変動中処理を説明する。
図30は、普図変動中処理を示すフローチャートである。
普図変動中処理は、ステップS19-3において実行されると、図30に示すように、まず、ステップ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」を加算する。
ステップS21-4では、普図停止表示データ設定処理を実行し、ステップS21-5に移行する。普図停止表示データ設定処理では、普図表示装置の停止表示を制御するためのデータを設定する。
具体的には、普図停止表示データ設定処理では、RAM230の停止図柄記憶領域に記憶されている停止図柄番号を取得する。
次に、普図表示図柄カウンタの値として、取得した停止図柄番号を設定する。これによって、普図表示装置を構成する所定数のセグメントのうち、普図表示図柄カウンタの値に対応するセグメントが点灯制御(停止表示)される。
ステップS21-5では、普図停止時間設定処理を実行し、ステップS21-6に移行する。普図停止時間設定処理では、所定の停止時間を、普通遊技タイマに設定する。
ステップS21-6では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図停止図柄表示状態」に対応する値を設定する。
(普図停止中処理)
次に、ステップS19-3で実行される普図停止中処理を説明する。
図31は、普図停止中処理を示すフローチャートである。
普図停止中処理は、ステップS19-3において実行されると、図31に示すように、まず、ステップ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」を設定する。
ステップS22-5では、普通電役開放前時間設定処理を実行し、ステップS22-6に移行する。普通電役開放前時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の普通電役開放前時間を、普通遊技タイマに設定する。
ステップS22-6では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放前状態」に対応する値を設定する。
(普通電動役物開放前処理)
次に、ステップS19-3で実行される普通電動役物開放前処理を説明する。
図32は、普通電動役物開放前処理を示すフローチャートである。
普通電動役物開放前処理は、ステップS19-3において実行されると、図32に示すように、まず、ステップS23-1に移行する。
ステップS23-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS23-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS23-2では、普通電役開閉切替処理を実行し、ステップS23-3に移行する。普通電役開閉切替処理については、後述する。
ステップS23-3では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放制御状態」に対応する値を設定する。
(普通電役開閉切替処理)
次に、ステップS23-2,S25-3の普通電役開閉切替処理を説明する。
図33は、普通電役開閉切替処理を示すフローチャートである。
普通電役開閉切替処理は、ステップS23-2,S25-3において実行されると、図33に示すように、まず、ステップS24-1に移行する。
ステップS24-1では、普通電役開閉切替回数カウンタの値が「0」であるか否かを判定し、普通電役開閉切替回数カウンタの値が「0」でないと判定した場合(No)には、ステップS24-2に移行し、普通電役開閉切替回数カウンタの値が「0」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS23-3又はS25-4)に移行する。
ステップS24-2では、普通電役制御データ設定処理を実行し、ステップS24-3に移行する。普通電役制御データ設定処理では、普通電動役物52aを開放状態又は閉鎖状態に制御するための制御データを設定する。
具体的には、普通電役制御データ設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、普通電役開閉切替回数カウンタの値に対応するソレノイド制御データを読み出す。そして、読み出したソレノイド制御データ(通電又は通電停止を指定する制御データ)を、RAM230の所定領域に設定する。これによって、設定されたソレノイドデータに基づく普通電動役物ソレノイド64の制御が開始され、普通電動役物52aが開放状態又は閉鎖状態に制御される。
ステップS24-3では、普通電役制御時間設定処理を実行し、ステップS24-4に移行する。普通電役制御時間設定処理では、ステップS24-2で設定したソレノイド制御データに基づく制御を継続する制御時間を設定する。
具体的には、普通電役制御時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、普通電役開閉切替回数カウンタの値に対応する制御時間を読み出す。そして、読み出した制御時間を、普通遊技タイマに設定する。
ステップS24-4では、普通電役開閉切替回数カウンタ更新処理を実行し、一連の処理を終了して次の処理(ステップS23-3又はS25-4)に移行する。普通電役開閉切替回数カウンタ更新処理では、普通電役開閉切替回数カウンタに設定されている値から「1」を減算した値を、新たに普通電役開閉切替回数カウンタに設定する。
(普通電動役物開放制御処理)
次に、ステップS19-3で実行される普通電動役物開放制御処理を説明する。
図34は、普通電動役物開放制御処理を示すフローチャートである。
普通電動役物開放制御処理は、ステップS19-3において実行されると、図34に示すように、まず、ステップ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では、普通電役開閉切替処理(図33参照)を実行し、ステップS25-4に移行する。
ステップS25-4では、普通電役入賞数カウンタの値が所定の上限値(本実施形態では、3[球])に達しているか否かを判定し、普通電役入賞数カウンタの値が所定の上限値に達していると判定した場合(Yes)には、ステップS25-5に移行し、普通電役入賞数カウンタの値が所定の上限値に達していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS25-5では、普通電役開放制御終了処理を実行し、ステップS25-6に移行する。普通電役開放制御終了処理では、通電停止を指定するソレノイド制御データを、RAM230の所定領域に設定する。これによって、普通電動役物52aが閉鎖状態に制御される。
ステップS25-6では、普通電役閉鎖有効時間設定処理を実行し、ステップS25-7に移行する。普通電役閉鎖有効時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の普通電役閉鎖有効時間を、普通遊技タイマに設定する。
ステップS25-7では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物閉鎖有効状態」に対応する値を設定する。
(普通電動役物閉鎖有効処理)
次に、ステップS19-3で実行される普通電動役物閉鎖有効処理を説明する。
図35は、普通電動役物閉鎖有効処理を示すフローチャートである。
普通電動役物閉鎖有効処理は、ステップS19-3において実行されると、図35に示すように、まず、ステップS26-1に移行する。
ステップS26-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS26-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS26-2では、開放終了ウェイト時間設定処理を実行し、ステップS26-3に移行する。開放終了ウェイト時間設定処理では、RAM230の普通電役制御テーブル領域に設定されている普通電役制御テーブルを参照して、所定の開放終了ウェイト時間を、普通遊技タイマに設定する。
ステップS26-3では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普通電動役物開放終了ウェイト状態」に対応する値を設定する。
(普通電動役物開放終了ウェイト処理)
次に、ステップS19-3で実行される普通電動役物開放終了ウェイト処理を説明する。
図36は、普通電動役物開放終了ウェイト処理を示すフローチャートである。
普通電動役物開放終了ウェイト処理は、ステップS19-3において実行されると、図36に示すように、まず、ステップS27-1に移行する。
ステップS27-1では、普通遊技タイマの値が「0」であるか否かを判定し、普通遊技タイマの値が「0」であると判定した場合(Yes)には、ステップS27-2に移行し、普通遊技タイマの値が「0」でないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS4-15)に移行する。
ステップS27-2では、普通遊技フェーズ更新処理を実行し、一連の処理を終了して次の処理(ステップS4-15)に移行する。普通遊技フェーズ更新処理では、RAM230の普通遊技フェーズフラグ領域において、「普図変動待ち状態」に対応する値を設定する。
(性能表示装置制御処理)
次に、ステップS4-25の性能表示装置制御処理を説明する。
図37は、性能表示装置制御処理を示すフローチャートである。
性能表示装置制御処理は、性能表示装置206の表示を制御するためのプログラムに基づく処理となっている。すなわち、性能表示装置制御処理は、ROM220の使用外領域m2(プログラム領域)に記憶されているプログラムに基づく処理となっている。性能表示装置制御処理は、タイマ割込み処理の実行中に呼び出される。
性能表示装置制御処理は、ステップS4-25で呼び出されると、図37に示すように、ステップS38-1に移行する。
ステップS38-1では、レジスタ退避処理を実行し、ステップS38-2に移行する。レジスタ退避処理では、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのレジスタの値を、RAMの退避領域に退避させる。また、使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していた全てのスタックポインタの値を、RAMの退避領域に退避させる。
ステップS38-2では、遊技可能状態が生起(設定)されているか否かを判定し、遊技可能状態が生起されていると判定した場合(Yes)には、ステップS38-3に移行し、遊技可能状態が生起されていないと判定した場合(No)には、ステップS38-11に移行する。
ここで、RAM230の遊技機状態フラグ領域に記憶されている値(遊技機状態フラグ)に基づいて、遊技可能状態が生起されているか否かを判定する。この際、遊技機状態フラグ領域に記憶されている値が、遊技可能状態に対応する値である場合、遊技可能状態が生起されていると判定し、遊技可能状態に対応する値でない場合、遊技可能状態が生起されていないと判定する。
ステップS38-3では、総アウトカウンタ加算処理を実行し、ステップS38-4に移行する。
総カウントカウンタ加算処理では、アウトスイッチ109のオン状態を検出したか否かを判定する。そして、アウトスイッチ109のオン状態を検出したと判定した場合、総アウトカウンタの値に、「1」を加算する。一方、アウトスイッチ109のオン状態を検出していないと判定した場合、総アウトカウンタの値を加算しない。
ステップS38-4では、所定の遊技状態であるか否かを判定し、所定の遊技状態であると判定した場合(Yes)には、ステップS38-5に移行し、所定の遊技状態でないと判定した場合(No)には、ステップS38-7に移行する。
ここで、「所定の遊技状態」は、「特図低確率状態」が生起されており、かつ、時短制御の停止中であり、かつ、大当り遊技状態が生起されていない遊技状態となっている。
ステップS38-5では、通常アウトカウンタ加算処理を実行し、ステップS38-6に移行する。
通常アウトカウンタ加算処理では、アウトスイッチ109のオン状態を検出したか否かを判定する。そして、アウトスイッチ109のオン状態を検出したと判定した場合、通常アウトカウンタの値に、「1」を加算する。一方、アウトスイッチ109のオン状態を検出していないと判定した場合、通常アウトカウンタの値を加算しない。
ステップ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のオン状態を検出していないと判定した場合、通常賞球カウンタの値を加算しない。
ステップ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に記憶する。
ここで、ベース比率は、通常アウトカウンタの値に対する通常賞球カウンタの値の比となっている。
ステップ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により、現在のベース比率の一の位を示す数字が表示される。
一方、前回の区間のベース比率の表示を選択した場合、前回の区間のベース比率であることを示す情報を、識別セグ出力要求バッファに設定するとともに、前回の区間のベース比率を示す情報を、比率セグ出力要求バッファに設定する。
具体的に、「b」の表示データ(8ビット)を、識別セグ出力要求バッファの上位8ビットに設定し、「c」の表示データ(8ビット)を、識別セグ出力要求バッファの下位8ビットに設定し、ベース値バッファ2に記憶されているベース比率の十の位に対応する表示データを、比率セグ出力要求バッファの上位8ビットに設定し、ベース値バッファ2に記憶されているベース比率の一の位に対応する表示データを、比率セグ出力要求バッファの下位8ビットに設定する。
これによって、性能表示装置206を構成する発光素子のうち、LED33~LED40により、「b」の文字が表示され、LED41~LED48により、「c」の文字が表示され、LED49~LED56により、現在のベース比率の十の位を示す数字が表示され、LED57~LED64により、現在のベース比率の一の位を示す数字が表示される。
ステップS38-11では、レジスタ復帰処理を実行し、ステップS38-12に移行する。レジスタ復帰処理では、ステップS38-1で退避しておいたレジスタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたレジスタの値)と、ステップS38-1で退避しておいたスタックポインタの値(使用領域m1に記憶されているプログラムに基づく処理の実行中に使用していたスタックポインタの値)と、を復帰させる。
ステップS38-12では、割込み許可処理を実行し、一連の処理を終了して次の処理(ステップS4-26)に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、電源遮断時退避処理、タイマ割込み処理等の実行が許可される。
(パチンコ機1において実行される各種演出)
次に、パチンコ機1において実行される各種演出を説明する。
(保留演出)
まず、パチンコ機1において実行される保留演出(保留表示)を説明する。
パチンコ機1では、遊技情報記憶領域(特図1遊技情報記憶領域及び特図2遊技情報記憶領域)に記憶されている各遊技情報(特図1遊技情報又は特図2遊技情報)を対象として保留演出が実行される。
保留演出は、当該保留演出の対象とされている遊技情報(以下、「保留演出対象遊技情報」とする)に基づく特別図柄の報知表示(始動判定)が保留されていること、又は、保留演出対象遊技情報に基づく特別図柄の報知表示の実行中であること、を示唆(報知)する演出となっている。
保留演出では、保留図柄表示領域b1~b3において、保留演出対象遊技情報に対応する保留図柄hが表示される。
具体的には、保留図柄表示領域b2には、保留図柄hが表示される表示位置(表示部)として、特図1遊技情報記憶領域の4つの記憶エリア(記憶エリア1~記憶エリア4)のそれぞれに対応する表示位置が規定されている。
また、保留図柄表示領域b3には、保留図柄hが表示される表示位置(表示部)として、特図2遊技情報記憶領域の4つの記憶エリア(記憶エリア1~記憶エリア4)のそれぞれに対応する表示位置が規定されている。
そして、特図1遊技情報を対象保留演出対象遊技情報とする保留演出では、保留図柄表示領域b1,b2において、保留演出対象遊技情報に対応する保留図柄hが表示される。
すなわち、保留演出対象遊技情報が特図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が表示される。
例えば、ステップ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の表示が終了され、これによって、保留演出が終了する。
本実施形態では、保留演出の種別として、通常保留演出と、保留予告演出と、が規定されている。
「通常保留演出」は、保留演出対象遊技情報に基づく事前判定(ステップS9-8)の結果を示唆しない保留演出の種別となっている。
本実施形態では、保留図柄hの種別(態様)として、通常保留と、特殊保留と、が規定されている。
通常保留演出では、保留演出対象遊技情報に対応する保留図柄hとして、通常保留が表示される。
通常保留演出は、保留演出対象遊技情報(特図1遊技情報又は特図2遊技情報)が遊技情報記憶領域(特図1遊技情報記憶領域又は特図2遊技情報記憶領域)に記憶されたことに応じて開始され、保留演出対象遊技情報に基づく特別図柄の報知表示の終了に応じて終了される。
(保留予告演出)
「保留予告演出」は、先読み予告演出の一種となっている。すなわち、保留予告演出は、所定の遊技情報に基づく事前判定(ステップS9-8)の結果を、当該遊技情報に対応する保留図柄hの態様により示唆する保留演出の種別となっている。
以下の説明では、保留予告演出の対象とされている遊技情報を、「保留予告対象遊技情報」とする。また、保留予告対象遊技情報に対応する保留図柄hを、「予告対象保留図柄hy」とする。
本実施形態では、保留予告演出は、保留予告対象遊技情報に基づく事前特図図柄判定の結果(具体的には、「大当り図柄」である可能性)を示唆する演出となっている。
なお、保留予告演出が、保留予告対象遊技情報に基づく事前特図変動パターン判定の結果(具体的には、「スーパーリーチ変動」である可能性)を示唆する構成としても構わない。
保留予告演出では、予告対象保留図柄hyとして、特殊保留が表示される。
本実施形態では、特殊保留の態様(種別)として、「青色保留」と、「緑色保留」と、「紫色保留」と、「赤色保留」と、が規定されている。
そして、保留予告演出では、予告対象保留図柄hyの態様が変化し、最終的に表示される予告対象保留図柄hyの態様によって、保留予告対象遊技情報に基づく事前判定の結果(具体的には、大当り遊技状態が生起される可能性)が示唆される。
ここで、特殊保留の各態様の大当り期待度は、大当り期待度が高いものから順に、「赤色保留」、「紫色保留」、「緑色保留」、「青色保留」(大当り期待度高→大当り期待度低)となるように規定されている。
「大当り期待度」とは、当該態様が選択された場合に、大当り遊技状態が生起される可能性(度合い)をいう。
保留予告演出が実行される場合には、一回又は複数回の保留変化契機と、各回の保留変化契機に対応する保留変化内容と、が設定される。そして、保留予告演出では、各回の保留変化契機の到来に応じて、当該保留変化契機に対応する保留変化内容にしたがって、予告対象保留図柄hyの態様が変化する。
「保留変化契機」は、予告対象保留図柄hyの態様が変化する契機となっている。また、「保留変化内容」は、予告対象保留図柄hyの態様が変化する内容となっている。
本実施形態では、保留変化契機として、各先行保留情報に対応する変動演出の開始時、保留予告対象遊技情報に対応する変動演出の開始時等が規定されている。そして、保留予告演出が実行されるときには、これらの保留変化契機のうちから、一回又は複数回の保留変化契機が設定される。
本実施形態では、保留予告演出は、特図1遊技情報及び特図2遊技情報のうち、特図1遊技情報のみを対象として実行される。
(変動演出)
次に、パチンコ機1において実行される変動演出を説明する。
以下の説明では、第1演出図柄表示領域a1において表示される第1演出図柄z1を「左図柄」とし、第1演出図柄表示領域a2において表示される第1演出図柄z1を「中図柄」とし、第1演出図柄表示領域a3において表示される第1演出図柄z1を「右図柄」とする。
なお、本実施形態では、変動演出(前半変動演出及び後半変動演出)の実行中、常時、第2演出図柄表示領域a4において、第2演出図柄z2が変動表示される。
まず、前半変動演出の各態様を説明する。
パチンコ機1では、変動モード番号として、「擬似連なし変動」に対応する変動モード番号と、「擬似連2変動」に対応する変動モード番号と、「擬似連3変動」に対応する変動モード番号と、が規定されている。
また、前半変動演出のカテゴリー(種別)として、「擬似連なし変動演出」と、「擬似連2変動演出」と、「擬似連3変動演出」と、が規定されている。
さらに、前半変動演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、変動モード指定コマンドにより「擬似連なし変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連なし変動演出」が選択される。一方、変動モード指定コマンドにより「擬似連2変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連2変動演出」が選択される。一方、変動モード指定コマンドにより「擬似連3変動」に対応する変動モード番号が指定されている場合、前半変動演出のカテゴリーとして、「擬似連3変動演出」が選択される。
「擬似連なし変動演出」は、3つの第1演出図柄表示領域a1~a3のそれぞれにおいて、第1特別図柄z1の通常変動表示が実行される内容の表示演出を含んで構成される。
「通常変動表示」は、第1演出図柄表示領域a1~a3の抽選結果表示位置に表示される第1演出図柄z1の種類が、一定のテンポで、順次、入れ替わる内容の表示となっている。
「抽選結果表示位置」とは、停止演出において、第1演出図柄z1が停止表示される位置となっている。
具体的に、「擬似連なし変動演出」では、左図柄、中図柄、右図柄の順に、各図柄の通常変動表示が、順次、開始される。
「擬似連続変動演出」(「擬似連2変動演出」・「擬似連3変動演出」)は、1回の特別図柄の変動表示の実行中において、第1演出図柄z1の変動表示が、擬似的に、複数回実行される内容の演出となっている。具体的に、擬似連続変動演出は、複数回の擬似変動演出を含んで構成されている。
ここで、「擬似連2変動演出」は、2回の擬似変動演出を含んで構成されている。一方、「擬似連3変動演出」は、3回の擬似変動演出を含んで構成されている。
各回の擬似変動演出は、3つの第1演出図柄表示領域a1~a3のそれぞれにおいて、第1特別図柄z1の通常変動表示が実行された後に、第1演出図柄z1の仮停止表示が実行される内容の表示演出を含んで構成される。
「仮停止表示」は、擬似的な停止表示となっている。具体的に、仮停止表示は、抽選結果表示位置において、一の種類の第1演出図柄z1が、所定態様(揺動、回転等)で動いている状態で留まる内容の表示となっている。
「停止表示」は、抽選結果表示位置において、一の種類の第1演出図柄z1が、停止している状態で留まる内容の表示となっている。
具体的に、各回の擬似変動演出では、左図柄、中図柄、右図柄の順に、各図柄の通常変動表示が開始された後に、左図柄、右図柄、中図柄の順に、各図柄の仮停止表示が実行される。
特に、各回の擬似変動演出では、3つの第1演出図柄表示領域a1~a3において仮停止表示される第1演出図柄z1の組み合わせが、「はずれ目」、「リーチ目」及び「チャンス目」のうち、何れかの組み合わせとなる。ここで、最終回の擬似変動演出では、3つの第1演出図柄表示領域a1~a3において仮停止表示される第1演出図柄z1の組み合わせが、「リーチ目」となり、リーチ状態が成立する。
「はずれ目」は、「大当り図柄」に含まれない組み合わせ(具体的には、左図柄、中図柄及び右図柄の種類が揃わない組み合わせ)となっている(後述する特定の組み合わせを除く)。
「リーチ目」は、「大当り図柄」に含まれる組み合わせ(具体的には、左図柄及び右図柄の種類が揃う組み合わせ)となっている。
「チャンス目」は、「大当り図柄」に含まれない組み合わせ(具体的には、左図柄、中図柄及び右図柄の種類が揃わない組み合わせ)のうち、特定の組み合わせ(例えば、「1,2,3」等の規則性を有する組み合わせ)となっている。
「リーチ状態」は、3つの第1演出図柄表示領域a1~a3のうち、2つの第1演出図柄表示領域において、第1演出図柄z1が仮停止表示され、かつ、仮停止表示された第1演出図柄z1の組み合わせが、「大当り図柄」に含まれる組み合わせとなる状態となっている。
次に、後半変動演出の各態様を説明する。
パチンコ機1では、変動パターン番号として、「リーチなし変動」に対応する変動パターン番号と、「ノーマルリーチ変動」に対応する変動パターン番号と、「スーパーリーチ変動」に対応する変動パターン番号と、が規定されている。
また、後半変動演出のカテゴリー(種別)として、「リーチなし変動演出」と、「ノーマルリーチ変動演出」と、「スーパーリーチ変動演出」と、が規定されている。
さらに、後半変動演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、変動パターン指定コマンドにより「リーチなし変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「リーチなし変動演出」が選択される。一方、変動パターン指定コマンドにより「ノーマルリーチ変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「ノーマルリーチ変動演出」が選択される。一方、変動パターン指定コマンドにより「スーパーリーチ変動」に対応する変動パターン番号が指定されている場合、後半変動演出のカテゴリーとして、「スーパーリーチ変動演出」が選択される。
「リーチなし変動演出」は、「擬似連なし変動演出」に続いて実行される演出となっている。
本実施形態では、「リーチなし変動演出」として、特図当り判定の結果が「はずれ」である場合に実行される「リーチなし変動演出(はずれ)」と、特図当り判定の結果が「大当り」である場合に実行される「リーチなし変動演出(大当り)」と、が規定されている。
「リーチなし変動演出」(「リーチなし変動演出(はずれ)」・「リーチなし変動演出(大当り)」)は、3つの第1演出図柄表示領域a1~a3のそれぞれにおいて、第1特別図柄z1の通常変動表示が実行される内容の表示演出を含んで構成される。
具体的に、「リーチなし変動演出」では、左図柄、中図柄及び右図柄の通常変動表示が実行された後に、左図柄、中図柄、右図柄の順に、各図柄が仮停止表示される。
この際、「リーチなし変動演出(はずれ)」では、3つの第1演出図柄表示領域a1~a3において仮停止表示される第1演出図柄z1の組み合わせが、「はずれ図柄」となる。
一方、「リーチなし変動演出(大当り)」では、3つの第1演出図柄表示領域a1~a3において仮停止表示される第1演出図柄z1の組み合わせが、「大当り図柄」となる。
「ノーマルリーチ変動演出」は、「擬似連続変動演出」(「擬似連2変動演出」・「擬似連3変動演出」)に続いて実行される演出となっている。
本実施形態では、「ノーマルリーチ変動演出」として、特図当り判定の結果が「はずれ」である場合に実行される「ノーマルリーチ変動演出(はずれ)」と、特図当り判定の結果が「大当り」である場合に実行される「ノーマルリーチ変動演出(大当り)」と、が規定されている。
「ノーマルリーチ変動演出」(「ノーマルリーチ変動演出(はずれ)」・「ノーマルリーチ変動演出(大当り)」)は、リーチ状態の形成中に実行される演出であって、「大当り図柄」が成立するか否かを煽った後に、「大当り図柄」が成立せず、または、「大当り図柄」が成立する内容の表示演出を含んで構成される。
具体的に、「ノーマルリーチ変動演出」では、左図柄及び右図柄がリーチ状態を形成している期間中に、リーチ演出画像が表示された後に、中図柄が仮停止表示される。
この際、「ノーマルリーチ変動演出(はずれ)」では、左図柄及び右図柄と異なる種類の中図柄が仮停止表示される(「大当り図柄」が成立しない)。
一方、「ノーマルリーチ変動演出(大当り)」では、左図柄及び右図柄と同一の種類の中図柄が仮停止表示される(「大当り図柄」が成立する)。
「リーチ演出画像」は、左図柄及び右図柄と同一の種類の中図柄が仮停止表示されること(「大当り図柄」が成立すること)を煽る内容の演出画像となっている。本実施形態では、リーチ演出画像として、中図柄に含まれるキャラクターが所定のアクションを行う画像と、中図柄に所定のエフェクトが付与される画像と、が表示される。
「スーパーリーチ変動演出」は、「擬似連続変動演出」(「擬似連2変動演出」・「擬似連3変動演出」)に続いて実行される演出となっている。
本実施形態では、「スーパーリーチ変動演出」として、特図当り判定の結果が「はずれ」である場合に実行される「スーパーリーチ変動演出(はずれ)」と、特図当り判定の結果が「大当り」である場合に実行される「スーパーリーチ変動演出(大当り)」と、が規定されている。
「スーパーリーチ変動演出」(「スーパーリーチ変動演出(はずれ)」・「スーパーリーチ変動演出(大当り)」)は、リーチ状態の形成中に実行される演出であって、「大当り図柄」が成立するか否かを煽った後に、「大当り図柄」の成立が回避される内容の表示が実行され、その後、中図柄の変動表示が再開され、その後、リーチ状態から発展リーチ状態に発展する内容の表示が実行され、再度、「大当り図柄」が成立するか否かを煽った後に、「大当り図柄」が成立せず、または、「大当り図柄」が成立する内容の表示演出を含んで構成される。
「発展リーチ状態」は、リーチ状態を形成している2つの第1特別図柄z1が、縮小表示される状態となっている。本実施形態では、リーチ状態を形成さしている左図柄及び右図柄が、縮小された上で、表示画面31aの上端部に表示されることによって、発展リーチ状態が形成される。なお、発展リーチ状態が形成されている期間中、中図柄については、非表示となる。
具体的に、「スーパーリーチ変動演出」では、左図柄及び右図柄がリーチ状態を形成している期間中に、上記のリーチ演出画像が表示された後に、左図柄及び右図柄と異なる種類の中図柄が仮停止表示され、その後、中図柄の変動表示が再開され、その後、発展リーチ状態が形成され、発展リーチ状態を形成している期間中に、発展リーチ演出画像が表示された後に、中図柄が仮停止表示される。
この際、「スーパーリーチ変動演出(はずれ)」では、左図柄及び右図柄と異なる種類の中図柄が仮停止表示される(「大当り図柄」が成立しない)。
一方、「スーパーリーチ変動演出(大当り)」では、左図柄及び右図柄と同一の種類の中図柄が仮停止表示される(「大当り図柄」が成立する)。
「発展リーチ演出画像」は、左図柄及び右図柄と同一の種類の中図柄が仮停止表示されること(「大当り図柄」が成立すること)を煽る内容の演出画像となっている。本実施形態では、発展リーチ演出画像として、所定の背景画像が表示される。
(メイン予告演出)
次に、パチンコ機1において実行されるメイン予告演出を説明する。
「メイン予告演出」は、変動演出中に実行される演出であって、当該変動演出に係る始動判定(特図当り判定、特図図柄判定、特図変動パターン判定等)の結果を示唆する演出となっている。
本実施形態では、メイン予告演出は、特図図柄判定の結果(具体的には、「大当り図柄」である可能性)を示唆する。
本実施形態では、メイン予告演出の種別として、演出内容が異なる複数の種別が規定されている。
(停止演出)
次に、パチンコ機1において実行される停止演出を説明する。
「停止演出」は、特別図柄の停止表示中に実行される演出となっている。
停止演出では、3つの第1演出図柄表示領域a1~a3のそれぞれにおいて、第1演出図柄z1が停止表示されるとともに、第2演出図柄表示領域a4において、第2演出図柄z2が停止表示される。
(大当り演出)
次に、パチンコ機1において実行される大当り演出を説明する。
大当り演出は、大当り遊技状態の生起中に実行される演出となっている。
パチンコ機1では、大当り演出のカテゴリー(種別)として、「大当り演出1」~「大当り演出6」が規定されている。
また、大当り演出の各カテゴリーに属するパターン(態様)として、一のパターン、又は、演出内容が異なる複数のパターンが規定されている。
そして、オープニング指定コマンドにより「大当り1図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出1」が選択される。一方、オープニング指定コマンドにより「大当り2図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出2」が選択される。オープニング指定コマンドにより「大当り3図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出3」が選択される。オープニング指定コマンドにより「大当り4図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出4」が選択される。オープニング指定コマンドにより「大当り5図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出5」が選択される。オープニング指定コマンドにより「大当り6図柄」に対応する停止図柄番号が指定されている場合、大当り演出のカテゴリーとして、「大当り演出6」が選択される。
大当り演出は、オープニング期間中に実行されるオープニング演出、インターバル期間中に実行されるインターバル演出、ラウンド遊技中に実行されるラウンド演出、エンディング期間中に実行されるエンディング演出等を含んで構成されている。
「オープニング期間」は、大当り遊技状態の開始からオープニング時間が経過するまでの期間となっている。
「インターバル期間」は、オープニング期間の終了から1回目のラウンド遊技の開始までの期間、または、各回のラウンド遊技の終了から次回のラウンド遊技の開始までの期間となっている。
エンディング期間は、最終回のラウンド遊技の終了後のインターバル期間の終了からエンディング時間が経過するまでの期間となっている。
(演出制御基板300で実行される処理)
次に、演出制御基板300のCPU310が実行する処理について説明する。
本実施形態では、後述するコマンド受信割込み処理、サブタイマ割込み処理、及び、可動体割込み処理については、割込みハンドラにより実行される割込み処理となっている。一方、後述するVsync割込み処理、サウンド割込み処理、及び、ランプ割込み処理については、マルチタスクにより、同時期に並行して実行することが可能な割込み処理(タスク)となっている。
ここで、Vsync割込み処理、サウンド割込み処理、及び、ランプ割込み処理についても、割込みハンドラにより実行される割込み処理として構成しても構わない。
(サブCPU初期化処理)
まず、演出制御基板300のCPU310が実行するサブCPU初期化処理を説明する。
図38は、サブCPU初期化処理を示すフローチャートである。
演出制御基板300には、リセット回路(図示せず)が配設されている。リセット回路は、パチンコ機1に電源が投入されると、リセット信号を発生する。
演出制御基板300のCPU310は、リセット回路によるリセット信号の発生に応じて、図38に示すサブ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等)を初期化する。
特に、この際、ポストエフェクタ周波数補正パラメータ番号レジスタの値が初期化される。これによって、ポストエフェクタ周波数補正パラメータ番号レジスタにおいて、「通常時・ポストエフェクタ周波数補正パラメータ」を指定する値(具体的には、「0」)が設定される。これによって、その後、ポストエフェクタ360において、各チャンネルの音声データについて、「通常時・ポストエフェクタ周波数補正パラメータ」にしたがって、周波数補正が実行される。
また、初期化処理では、各種の外部デバイス(制御ROM302、CGROM303、DRAM304等)を初期化する。この際、DRAM304の初期転送完了フラグ領域に、後述する初期転送が完了していない状態を指定する値(本実施形態では、「0」)が設定される。また、DRAM304の各周波数補正パラメータ番号設定領域(周波数補正パラメータ番号設定領域1~周波数補正パラメータ番号設定領域3)に、「通常時・周波数補正パラメータ」を指定する値(具体的には、「0」)が設定される。
ステップS28-2では、初期転送データ設定処理を実行し、ステップS28-3に移行する。初期転送データ設定処理では、初期転送の対象となるデータを指定する情報を設定する。
具体的に、初期転送データ設定処理では、初期転送データリストを、DRAM304の所定領域に設定するとともに、データ転送カウンタの値として、所定の初期値(本実施形態では、「0」)を設定する。
「初期転送データリスト」は、電源投入時に、CGROM303からDRAM304のプリロード領域へ転送(プリロード)するデータのリストとなっている。本実施形態では、初期転送データリストでは、CGROM303に格納されているデータのうち、全ての圧縮音声データが、転送するデータとして規定されている。
具体的に、初期転送データリストでは、CGROM303に格納されている全ての圧縮音声データについて、各圧縮音声データを読み出す記憶領域(CGROM303の記憶領域)のアドレスを指定する情報(以下、「読出アドレス」とする)と、当該圧縮音声データを書き込む記憶領域(DRAM304の記憶領域)のアドレスを指定する情報(以下、「書込アドレス」とする)と、当該圧縮音声データを転送する順番を指定する情報(具体的には、データ転送カウンタの値)と、の対応が登録されている。
ステップS28-3では、デジタルアンプ設定処理を実行し、ステップS28-4に移行する。デジタルアンプ設定処理では、デジタルアンプ305の初期設定を行う。
具体的に、デジタルアンプ設定処理では、まず、デジタルアンプ305に対してリセット信号が送信される(リセット端子に入力される信号がオン状態とされる)。これによって、デジタルアンプ305において、各種レジスタ(周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)、音量の設定(補正)に関するレジスタ、端子の設定に関するレジスタ、ステータス情報設定レジスタ等)が初期化(クリア)される。この際、ステータス情報設定レジスタにおいて、正常状態に対応する値(具体的には、「0」)が設定される。
デジタルアンプ設定処理では、次に、「通常時・周波数補正パラメータ」(「通常時・周波数補正パラメータ1」~「通常時・周波数補正パラメータ3」)を、デジタルアンプ305に対して送信する。
これによって、デジタルアンプ305の周波数補正パラメータ設定レジスタにおいて「通常時・周波数補正パラメータ」が設定される。すなわち、周波数補正パラメータ設定部1において「通常時・周波数補正パラメータ1」が設定され、周波数補正パラメータ設定部2において「通常時・周波数補正パラメータ2」が設定され、周波数補正パラメータ設定部3において「通常時・周波数補正パラメータ3」が設定される。
これによって、その後、デジタルアンプ305において、「通常時・周波数補正パラメータ1」にしたがって、チャンネル1,2(左上スピーカ・右上スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ2」にしたがって、チャンネル3,4(左中スピーカ・右中スピーカ)の音声データに対する周波数補正が実行され、「通常時・周波数補正パラメータ3」にしたがって、チャンネル5(ウーファー)の音声データに対する周波数補正が実行される。
ステップS28-4では、割込み許可処理を実行し、ステップS28-5に移行する。割込み許可処理では、割込み禁止状態を解除する。これにより、各種の割込み処理の実行が可能となる(許可される)。
ステップS28-5では、乱数更新処理を実行し、ステップS28-6に移行する。乱数更新処理では、各種演出用乱数が更新される。
ステップS28-6では、初期転送処理を実行し、ステップS28-7に移行する。初期転送処理については、後述する。
ステップS28-7では、ステータス取得処理を実行し、ステップS28-8に移行する。ステータス情報取得処理では、デジタルアンプ305のステータス情報設定レジスタに設定されているステータス情報を取得する。
ステップS28-8では、ステップS28-7で取得したステータス情報が異常状態に対応する値(具体的には、「1」)であるか否かを判定し、取得したステータス情報が異常状態に対応する値であると判定した場合(Yes)には、ステップS28-9に移行し、取得したステータス情報が異常状態に対応する値でない(正常状態に対応する値である)と判定した場合(No)には、ステップS28-5に移行する。
ステップS28-9では、デジタルアンプリセット処理を実行し、ステップS28-10に移行する。デジタルアンプリセット処理では、デジタルアンプ305に対してリセット信号を送信する(デジタルアンプ305のリセット端子に入力される信号をオン状態とする)。
これによって、デジタルアンプ305において、各種レジスタ(周波数補正パラメータ設定レジスタ(周波数補正パラメータ設定部1、周波数補正パラメータ設定部2、及び、周波数補正パラメータ設定部3)、音量の設定(補正)に関するレジスタ、端子の設定に関するレジスタ、ステータス情報設定レジスタ等)が初期化(クリア)される。この際、ステータス情報設定レジスタにおいて、正常状態に対応する値(具体的には、「0」)が設定される。
ステップS28-10では、パラメータ復帰処理を実行し、ステップS28-5に移行する。パラメータ復帰処理では、DRAM304の周波数補正パラメータ番号設定領域に設定されている値に基づいて、デジタルアンプ305の周波数補正パラメータ設定レジスタの値を復帰させる。
具体的に、パラメータ復帰処理では、まず、DRAM304の周波数補正パラメータ番号設定領域1の値を確認する。そして、周波数補正パラメータ番号設定領域1の値に対応する周波数補正パラメータを、制御ROM302から読み出して、読み出した周波数補正パラメータを、デジタルアンプ305に対して送信する。
次に、DRAM304の周波数補正パラメータ番号設定領域2の値を確認する。そして、周波数補正パラメータ番号設定領域2の値に対応する周波数補正パラメータを、制御ROM302から読み出して、読み出した周波数補正パラメータを、デジタルアンプ305に対して送信する。
次に、DRAM304の周波数補正パラメータ番号設定領域3の値を確認する。そして、周波数補正パラメータ番号設定領域3の値に対応する周波数補正パラメータを、制御ROM302から読み出して、読み出した周波数補正パラメータを、デジタルアンプ305に対して送信する。
これによって、周波数補正パラメータ番号設定領域1の値が「0」である場合、「通常時・周波数補正パラメータ1」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部1において、「通常時・周波数補正パラメータ1」が復帰される。一方、周波数補正パラメータ番号設定領域1の値が「1」である場合、「大当り時・周波数補正パラメータ1」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部1において、「大当り時・周波数補正パラメータ1」が復帰される。一方、周波数補正パラメータ番号設定領域1の値が「2」である場合、「時短時・周波数補正パラメータ1」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部1において、「時短時・周波数補正パラメータ1」が復帰される。
また、周波数補正パラメータ番号設定領域2の値が「0」である場合、「通常時・周波数補正パラメータ2」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部2において、「通常時・周波数補正パラメータ2」が復帰される。一方、周波数補正パラメータ番号設定領域2の値が「1」である場合、「大当り時・周波数補正パラメータ2」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部2において、「大当り時・周波数補正パラメータ2」が復帰される。一方、周波数補正パラメータ番号設定領域2の値が「2」である場合、「時短時・周波数補正パラメータ2」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部2において、「時短時・周波数補正パラメータ2」が復帰される。
また、周波数補正パラメータ番号設定領域3の値が「0」である場合、「通常時・周波数補正パラメータ3」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部3において、「通常時・周波数補正パラメータ3」が復帰される。一方、周波数補正パラメータ番号設定領域3の値が「1」である場合、「大当り時・周波数補正パラメータ3」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部3において、「大当り時・周波数補正パラメータ3」が復帰される。一方、周波数補正パラメータ番号設定領域3の値が「2」である場合、「時短時・周波数補正パラメータ3」が、デジタルアンプ305に対して送信され、周波数補正パラメータ設定部3において、「時短時・周波数補正パラメータ3」が復帰される。
(初期転送処理)
次に、ステップS28-5の初期転送処理を説明する。
図39は、初期転送処理を示すフローチャートである。
初期転送処理は、ステップS28-5で実行されると、図39に示すように、ステップS44-1に移行する。
ステップS44-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、ステップS44-2に移行し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、一連の処理を終了して次の処理(ステップS28-4)に移行する。
ステップS44-2では、SATA転送処理を実行し、ステップS44-3に移行する。SATA転送処理では、ステップS28-1で設定された初期転送データリストにしたがって、CGROM303に格納されているデータを、DRAM304のプリロード領域へ転送(プリロード)する。
具体的に、SATA転送処理では、まず、データ転送カウンタの値を確認する。次に、初期転送データリストを参照して、確認したデータ転送カウンタの値に対応する読出アドレス及び書込アドレスを取得する。そして、そして、取得した読出データアドレスが指定する記憶領域に記憶されているデータ(圧縮音声データ)を読み出して、読み出したデータ(圧縮画像データ)を、取得した書込アドレスが指定する記憶領域に記憶する。
SATA転送処理では、次に、データ転送カウンタの値に「1」を加算する。
ステップS44-3では、初期転送が完了したか否かを判定し、初期転送が完了したと判定した場合(Yes)には、ステップS44-4に移行し、初期転送が完了していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS28-4)に移行する。
ここで、ステップS44-3では、データ転送カウンタの値に基づいて、初期転送データリストに登録されている全てのデータの転送が完了したか否かを判定する。そして、初期転送データリストに登録されている全てのデータの転送が完了したと判定した場合、初期転送が完了したと判定し、初期転送データリストに登録されている全てのデータの転送が完了していないと判定した場合、初期転送が完了していないと判定する。
ステップS44-4では、初期転送完了フラグ設定処理を実行し、一連の処理を終了して次の処理(ステップS28-3)に移行する。初期転送完了フラグ設定処理では、初期転送完了フラグ領域に、初期転送が完了している状態を指定する値(本実施形態では、「1」)を設定する。
以上により、初期設定処理の実行から、初期転送データリストに登録されている全てのデータ(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によるモータ駆動処理)と、を実行することが可能な状態が発生する。
(コマンド受信割込み処理)
次に、演出制御基板300のCPU310が実行するコマンド受信割込み処理を説明する。
演出制御基板300のCPU310は、主制御基板200からの制御コマンドの受信に応じて、コマンド受信割込み処理(図示せず)を実行する。
コマンド受信割込み処理では、主制御基板200から受信した制御コマンドが、演出制御基板300のDRAM304の受信バッファ領域に記憶(格納)される。
(サブタイマ割込み処理)
次に、演出制御基板300のCPU310が実行するサブタイマ割込み処理を説明する。
図40は、サブタイマ割込み処理を示すフローチャートである。
演出制御基板300は、クロック発生回路を含んで構成されている。クロック発生回路は、所定周期ごとに、クロックパルス信号を発生させる。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図40に示すサブタイマ割込み処理を開始する。サブタイマ割込み処理が開始されると、まず、ステップS31-1に移行する。
ステップS31-1では、レジスタ退避処理を実行し、ステップS31-2に移行する。レジスタ退避処理では、レジスタの値をDRAM304の退避領域に退避させる。
ステップS31-2では、タイマ更新処理を実行し、ステップS31-3に移行する。タイマ更新処理では、演出制御基板300が備える各種タイマ(演出シナリオタイマ等)の値を更新する。具体的に、各種タイマの値について、所定値(所定周期に対応する値)を加算又は減算する。
ステップS31-3では、コマンド解析処理を実行し、ステップS31-4に移行する。コマンド解析処理では、演出制御基板300のDRAM304の受信バッファに格納されている制御コマンドを解析し、受信した制御コマンドに応じた処理を実行する。コマンド解析処理については、後述する。
ステップS31-4では、タイムスケジュール管理処理を実行し、ステップS31-5に移行する。タイムスケジュール管理処理では、演出シナリオ設定領域に設定されている演出シナリオデータと、当該演出シナリオデータに対応する演出シナリオタイマの値と、に基づいて、演出の進行を管理する。
具体的に、タイムスケジュール管理処理では、演出シナリオ設定領域に設定されている各演出シナリオデータについて、開始時期が到来したプロセスデータが存在するか否かを判定する。そして、開始時期が到来したプロセスデータが存在すると判定した場合、当該プロセスデータに含まれる各指令情報(メッセージ)を、対応するバッファ領域に格納(記憶)する。
この際、表示演出に関する指令情報(表示演出の開始を指定する指令情報、表示演出の終了を指定する指令情報等)を、表示指令バッファ領域に格納する。
一方、音演出に関する指令情報(音演出の開始を指定する指令情報等)を、音指令バッファ領域に格納する。
一方、ランプ演出に関する指令情報(ランプ演出の開始を指定する指令情報等)を、ランプ指令バッファ領域に格納する。
一方、可動体演出に関する指令情報(可動体演出の開始を指定する指令情報等)を、可動体指令バッファ領域に格納する。
ステップS31-5では、レジスタ復帰処理を実行し、サブタイマ割込み処理を終了する。レジスタ復帰処理では、ステップS31-1で退避しておいたレジスタの値を復帰させる。
(コマンド解析処理)
次に、ステップS31-3のコマンド解析処理を説明する。
図41は、コマンド解析処理を示すフローチャートである。
コマンド解析処理は、ステップS31-3で実行されると、図41に示すように、ステップS32-1に移行する。
ステップS32-1では、設定値コマンド受信処理を実行し、ステップS32-2に移行する。
設定値コマンド受信処理では、設定値指定コマンドを受信したか否かを判定する。そして、設定値指定コマンドを受信したと判定した場合には、当該設定値指定コマンドが指定する設定値に対応する値を、演出制御基板300のDRAM304の設定値記憶領域に記憶(設定)する。
ステップS32-2では、遊技状態コマンド受信処理を実行し、ステップS32-3に移行する。
遊技状態コマンド受信処理では、遊技状態指定コマンドを受信したか否かを判定する。そして、遊技状態指定コマンドを受信したと判定した場合には、各種演出フラグの設定を行う。
ステップS32-3では、保留コマンド受信処理を実行し、ステップS32-4に移行する。保留コマンド受信処理については、後述する。
ステップS32-4では、先読みコマンド受信処理を実行し、ステップS32-5に移行する。先読みコマンド受信処理については、後述する。
ステップS32-5では、変動コマンド受信処理を実行し、ステップS32-6に移行する。変動コマンド受信処理については、後述する。
ステップS32-6では、停止コマンド受信処理を実行し、ステップS32-7に移行する。停止コマンド受信処理については、後述する。
ステップS32-7では、オープニングコマンド受信処理を実行し、ステップS32-8に移行する。オープニングコマンド受信処理については、後述する。
ステップS32-8では、遊技状況コマンド受信処理を実行し、一連の処理を終了して次の処理(ステップS31-4)に移行する。
遊技状況コマンド受信処理では、まず、遊技状況指定コマンドを受信したか否かを判定する。そして、遊技状況指定コマンドを受信したと判定した場合、後述する遊技状況設定処理を実行する。一方、遊技状況指定コマンドを受信していないと判定した場合、遊技状況設定処理を実行することなく、次の処理(ステップS31-4)に移行する。
遊技状況設定処理では、遊技状況指定コマンドを解析する。
そして、遊技状況指定コマンドにより発射可能状態の発生が指定されている場合、演出制御基板300のDRAM304の遊技状況フラグ領域において、発射可能状態の発生中であることを指定する値(例えば、「1」)を設定する。また、発射可能状態の発生中であることを示唆(報知)する演出を開始する。
一方、遊技状況指定コマンドにより発射可能状態の解除が指定されている場合、演出制御基板300のDRAM304の遊技状況フラグ領域において、発射可能状態の解除中であることを指定する値(例えば、「0」)を設定する。また、発射可能状態の発生中であることを示唆(報知)する演出を終了する。
(保留コマンド受信処理)
次に、ステップS32-3の保留コマンド受信処理を説明する。
図42は、保留コマンド受信処理を示すフローチャートである。
保留コマンド受信処理は、ステップS32-3で実行されると、図42に示すように、ステップS36-1に移行する。
ステップS36-1では、保留数指定コマンドを受信したか否かを判定し、保留数指定コマンドを受信したと判定した場合(Yes)には、ステップS36-2に移行し、保留数指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-4)に移行する。
ステップS36-2では、保留数指定コマンドが保留数の増加(保留数が「1」増加したこと)を指定しているか否かを判定し、保留数指定コマンドが保留数の増加を指定していると判定した場合(Yes)には、ステップS36-3に移行し、保留数指定コマンドが保留数の増加を指定していない(保留数が「1」減少したことを指定している)と判定した場合(No)には、ステップS36-4に移行する。
ステップS36-3では、保留数加算処理を実行し、一連の処理を終了して次の処理(ステップS32-4)に移行する。
保留数加算処理では、まず、保留数指定コマンドが特図1保留数の増加を指定しているか否かを判定する。
そして、保留数指定コマンドが特図1保留数の増加を指定していると判定した場合には、特図1保留数カウンタに設定されている値に「1」を加算した値を、新たに特図1保留数カウンタに設定する。また、新たに取得(記憶)された特図1遊技情報に対応する通常保留演出を開始する。
この際、保留図柄hを表示する表示領域として、保留図柄表示領域b2に含まれる4つの表示位置のうち、新たに取得された特図1遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置が設定される。ここで、新たに取得された特図1遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)は、特図1保留数カウンタの値に基づいて判定する。
一方、保留数指定コマンドが特図2保留数の増加を指定していると判定した場合には、特図2保留数カウンタに設定されている値に「1」を加算した値を、新たに特図2保留数カウンタに設定する。また、新たに取得(記憶)された特図2遊技情報に対応する通常保留演出を開始する。
この際、保留図柄hを表示する表示領域として、保留図柄表示領域b3に含まれる4つの表示位置のうち、新たに取得された特図2遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)に対応する表示位置が設定される。ここで、新たに取得された特図2遊技情報が記憶されている記憶エリア(記憶エリア1~記憶エリア4)は、特図2保留数カウンタの値に基づいて判定する。
ステップ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に対応する表示位置にシフトする。
一方、保留数指定コマンドが特図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に対応する表示位置にシフトする。
(先読みコマンド受信処理)
次に、ステップS32-4の先読みコマンド受信処理を説明する。
図43は、先読みコマンド受信処理を示すフローチャートである。
先読みコマンド受信処理は、ステップS32-4で実行されると、図43に示すように、ステップS33-1に移行する。
ステップS33-1では、先読み指定コマンド(第1先読み指定コマンド、第2先読み指定コマンド及び第3先読み指定コマンド)を受信したか否かを判定し、先読み指定コマンドを受信したと判定した場合(Yes)には、ステップS33-2に移行し、先読み指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
ステップ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変動情報と、を含んでなる。
先読み情報解析処理では、まず、受信した第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保留情報記憶領域に記憶されている保留情報のうち、先読み対象保留情報より先に報知表示(変動表示及び停止表示)が実行される保留情報を、「先行保留情報」とする。
ステップ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)の条件とは異なる他の条件が含まれていても構わない。
ステップS33-5では、先読み予告演出抽選処理を実行し、ステップS33-6に移行する。先読み予告演出抽選処理では、先読み予告演出を実行するか否かを決定するための先読み予告演出抽選を実行する。
演出制御基板300の制御ROM302には、先読み予告演出抽選の当り値が登録された先読み予告演出抽選テーブルが格納されている。
先読み予告演出抽選処理では、まず、保留予告出現指定情報設定領域に記憶されている保留予告出現指定情報を確認する。そして、保留予告出現指定情報設定領域において、非出現指定情報が設定されている場合には、先読み予告演出抽選を実行しない(先読み予告演出を実行しないことを決定する)。一方、保留予告出現指定情報設定領域において、出現指定情報が設定されている場合には、先読み予告演出抽選を実行する。
先読み予告演出抽選では、まず、所定の乱数カウンタから先読み予告演出抽選乱数を取得する。そして、取得した先読み予告演出抽選乱数と、先読み予告演出抽選テーブルと、に基づいて、先読み予告演出を実行するか否かを判定する。
ステップS33-6では、ステップS33-5で実行された先読み予告演出抽選に当選したか否かを判定し、先読み予告演出抽選に当選したと判定した場合(Yes)には、ステップS33-7に移行し、先読み予告演出抽選に落選したと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-5)に移行する。
ステップ33-7では、先読み予告演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-5)に移行する。先読み予告演出設定処理では、先読み予告演出(保留予告演出)の内容を設定する。
具体的に、先読み予告演出設定処理では、まず、保留最終態様選択処理を実行する。保留最終態様選択処理では、保留最終態様を選択・設定する。
「保留最終態様」とは、保留予告演出において最終的に変化する予告対象保留図柄hyの態様をいう。
演出制御基板300の制御ROM302には、保留最終態様抽選乱数と、保留最終態様と、の対応が登録された保留最終色抽選テーブルが格納されている。
また、保留最終態様抽選テーブルとして、変動パターンの各種別に対応する保留最終態様抽選テーブルが格納されている。
保留最終態様選択処理では、まず、所定の乱数カウンタから保留最終態様抽選乱数を取得する。また、先読み対象保留情報が示す変動パターンの種別を確認して、この確認結果に対応する保留最終態様抽選テーブルを読み出す。そして、取得した保留最終態様抽選乱数と、読み出した保留最終態様抽選テーブと、に基づいて、保留最終態様を選択(判定)する。
先読み予告演出設定処理では、次に、保留変化契機選択処理を実行する。保留変化契機選択処理では、保留変化契機を選択・設定する。
演出制御基板300の制御ROM302には、保留変化契機抽選乱数と、保留変化パターンと、の対応が登録された保留変化契機抽選テーブルが格納されている。
「保留変化パターン」は、保留変化契機の組み合わせを指定する情報(シナリオデータ)となっている。
また、保留変化契機抽選テーブルとして、特図1保留数(「2」~「4」)と、保留最終態様と、の組み合わせのそれぞれに対応する保留変化契機抽選テーブルが格納されている。
保留変化契機選択処理では、まず、所定の乱数カウンタから保留変化契機抽選乱数を取得する。また、特図1保留数と、保留最終態様選択処理で選択された保留最終態様と、を確認して、この確認結果に対応する保留変化契機抽選テーブルを読み出す。そして、取得した保留変化契機抽選乱数と、読み出した保留変化契機抽選テーブルと、に基づいて、保留予告演出番号を決定(判定)する。そして、決定した保留予告演出番号に対応する演出シナリオデータを読み出して、読み出した演出シナリオデータ、及び、当該演出シナリオデータに対応する演出シナリオタイマを、演出シナリオ領域に設定する。
先読み予告演出設定処理では、次に、保留変化内容選択処理を実行する。保留変化内容選択処理では、各回の保留変化契機に対応する保留変化内容を選択・設定する。
具体的には、保留変化内容選択処理では、各回の保留変化契機に対応する保留変化内容として、変化前の予告対象保留図柄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の態様が変化(昇格)する。
先読み予告演出設定処理では、次に、演出制御基板300のDRAM304の先読み予告演出中フラグ領域に「1」を設定する。
以上によって、保留予告演出が開始される。
なお、図示しない処理によって、保留予告演出の終了に応じて、先読み予告演出中フラグ領域に「0」が設定される。
(変動コマンド受信処理)
次に、ステップS32-5の変動コマンド受信処理を説明する。
図44は、変動コマンド受信処理を示すフローチャートである。
変動コマンド受信処理は、ステップS32-5で実行されると、図44に示すように、ステップS34-1に移行する。
ステップS34-1では、所定の制御コマンドを受信したか否かを判定し、所定の制御コマンドを受信したと判定した場合(Yes)には、ステップS34-2に移行し、所定の制御コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-6)に移行する。
ここで、所定の制御コマンドは、図柄種別指定コマンド、変動モード指定コマンド及び変動パターン指定コマンドをいう。
ステップS34-2では、停止演出決定処理を実行し、ステップS34-3に移行する。停止演出決定処理では、停止演出番号(停止演出の態様)を決定する。
具体的に、停止演出決定処理では、図柄種別指定コマンドが指定する停止図柄の種別に基づいて、停止演出番号(停止演出の態様)を決定する。そして、決定した停止演出番号を、演出制御基板300のDRAM304の停止演出番号記憶領域に保存する。
ステップS34-3では、変動演出決定処理を実行し、ステップS34-4に移行する。変動演出決定処理では、変動演出番号(変動演出の態様)を決定する。
具体的に、変動演出決定処理では、まず、前半変動演出番号(前半変動演出の態様)を決定する前半変動演出決定処理を実行する。
演出制御基板300の制御ROM302には、変動モード番号(変動モードの種別)と、前半変動演出番号(前半変動演出の態様)と、の対応が登録された前半変動演出抽選テーブルが格納されている。
前半変動演出決定処理では、まず、前半変動演出抽選テーブルを読み出す。そして、前半変動演出抽選テーブルに登録されている前半変動演出番号のうち、変動モード指定コマンドが指定する変動モード番号に対応する前半変動演出番号を決定(選択)する。
変動演出決定処理では、次に、後半変動演出番号(後半変動演出の態様)を決定する後半変動演出決定処理を実行する。
演出制御基板300の制御ROM302には、変動パターン番号(変動パターンの種別)と、後半変動演出番号(後半変動演出の態様)と、の対応が登録された後半変動演出抽選テーブルが格納されている。
後半変動演出決定処理では、まず、後半変動演出抽選テーブルを読み出す。そして、後半変動演出抽選テーブルに登録されている後半変動演出番号のうち、変動パターン指定コマンドが指定する変動パターン番号に対応する後半変動演出番号を決定(選択)する。
ステップS34-4では、予告演出決定処理を実行し、ステップS34-5に移行する。予告演出決定処理では、メイン予告演出番号(メイン予告演出の態様)を選択する。
演出制御基板300の制御ROM302には、予告演出抽選乱数と、メイン予告演出番号(メイン予告演出の態様)と、の対応が登録された予告演出抽選テーブルが格納されている。
また、予告演出抽選テーブルとして、各停止図柄番号(停止図柄の各種別)に対応する予告演出抽選テーブルが格納されている。
メイン予告演出の態様を決定するには、まず、所定の乱数カウンタから予告演出抽選乱数を取得する。また、停止図柄指定コマンドが指定する停止図柄番号を確認して、この確認結果に対応する予告演出抽選テーブルを読み出す。そして、取得した予告演出抽選乱数と、読み出した予告演出抽選テーブルと、に基づいて、メイン予告演出番号を決定(判定)する。
ステップS34-5では、変動演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-6)に移行する。変動演出設定処理では、変動演出の演出シナリオデータを設定する。
具体的には、変動演出設定処理では、ステップS34-3で決定した前半変動演出番号に対応する演出シナリオデータと、ステップS34-3で決定した後半変動演出番号に対応する演出シナリオデータと、を読み出す。
次に、読み出した演出シナリオデータを合成して、変動演出に係る演出シナリオデータを生成する。そして、生成した演出シナリオデータ、及び、当該演出シナリオデータに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。
また、ステップS34-4で決定したメイン予告演出番号に対応する演出シナリオデータを読み出す。そして、読み出した演出シナリオデータ、及び、当該演出シナリオデータに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、変動演出の実行中における所定のタイミングで、メイン予告演出が開始される。
(停止コマンド受信処理)
次に、ステップS32-6の停止コマンド受信処理を説明する。
図45は、停止コマンド受信処理を示すフローチャートである。
停止コマンド受信処理は、ステップS32-6で実行されると、図45に示すように、ステップS35-1に移行する。
ステップS35-1では、停止指定コマンドを受信したか否かを判定し、停止指定コマンドを受信したと判定した場合(Yes)には、ステップS35-2に移行し、停止指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-7)に移行する。
ステップS35-2では、停止演出開始処理を実行し、一連の処理を終了して次の処理(ステップS32-7)に移行する。停止演出開始処理では、停止演出の演出シナリオデータを設定する。
具体的に、停止演出設定処理では、停止演出番号記憶領域に保存されている停止演出番号を取得し、取得した停止演出番号に対応する演出シナリオデータを読み出す。そして、読み出した演出シナリオデータ、及び、当該演出シナリオデータに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、停止演出(演出図柄z1,z2の停止表示)が開始される。
(オープニングコマンド受信処理)
次に、ステップS32-7のオープニングコマンド受信処理を説明する。
図46は、オープニングコマンド受信処理を示すフローチャートである。
オープニングコマンド受信処理は、ステップS32-7で実行されると、図46に示すように、ステップS39-1に移行する。
ステップS39-1では、オープニング指定コマンドを受信したか否かを判定し、オープニング指定コマンドを受信したと判定した場合(Yes)には、ステップS39-2に移行し、オープニング指定コマンドを受信していないと判定した場合(No)には、一連の処理を終了して次の処理(ステップS32-8)に移行する。
ステップS39-2では、当選演出設定処理を実行し、一連の処理を終了して次の処理(ステップS32-8)に移行する。当選演出設定処理では、当選演出の演出シナリオデータを設定する。
具体的に、当選演出設定処理では、オープニング指定コマンドが指定する停止図柄の種別に応じて、当選演出番号を選択する。また、選択した当選演出番号に対応する演出シナリオデータを読み出す。そして、読み出した演出シナリオデータ、及び、当該演出シナリオデータに対応する演出シナリオタイマを、演出シナリオ設定領域に設定する。これによって、当選演出が開始される。
(Vsync割込み処理)
次に、演出制御基板300のCPU310が実行するVsync割込み処理を説明する。
図47は、Vsync割込み処理を示すフローチャートである。
表示回路320の同期信号生成回路は、所定周期ごとに、垂直同期信号(Vsync)を発生させる(垂直同期信号をハイレベルとする)。
演出制御基板300のCPU310は、同期信号生成回路による垂直同期信号の発生に基づいて、第2の所定周期ごとに、図47に示すVsync割込み処理を開始する。Vsync割込み処理が開始されると、まず、ステップS40-1に移行する。
ステップS40-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、ステップS40-2に移行し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、当該Vsync割込み処理を終了する。
ステップS40-2では、フレームバッファ切替処理を実行し、ステップS40-3に移行する。フレームバッファ切替処理では、フレームバッファ領域の指定(描画領域の指定・出力領域の指定)を切り替える。
具体的に、フレームバッファ切替処理では、2つのフレームバッファ領域のうち、描画領域に指定されているフレームバッファ領域の指定を、描画領域から出力領域に切り替えるとともに、出力領域に指定されているフレームバッファ領域の指定を、出力領域から描画領域に切り替える。
ステップS40-3では、描画コマンドバッファ切替処理を実行し、ステップS40-4に移行する。描画コマンドバッファ切替処理では、描画コマンドバッファ領域の指定(構築領域の指定・転送領域の指定)を切り替える。
具体的に、描画コマンドバッファ切替処理では、2つの描画コマンドバッファ領域のうち、構築領域に指定されている描画コマンドバッファ領域の指定を、構築領域から転送領域に切り替えるとともに、転送領域に指定されている描画コマンドバッファ領域の指定を、転送領域から構築領域に切り替える。
ステップS40-4では、描画・出力開始処理を実行し、ステップS40-5に移行する。描画・出力開始処理では、描画回路322による描画処理の開始が指定されるとともに、表示回路320による出力処理の開始が指定される。
具体的に、描画・出力開始処理では、マイクロコンピュータ301の描画レジスタに、描画処理の開始を指定する値を設定する。これによって、描画回路322による描画処理が開始される。すなわち、描画回路322により、DRAM304のプリロード領域に記憶(プリロード)されている1フレーム分の圧縮画像データを用いて、描画領域に指定されているフレームバッファ領域における1フレーム分の描画データの生成が開始される。
また、描画・出力開始処理では、マイクロコンピュータ301の表示レジスタに、出力処理の開始を指定する値を設定する。これによって、表示回路320による出力処理が開始される。すなわち、表示回路320により、出力領域に指定されているフレームバッファ領域に生成されている1フレーム分の描画データに基づく映像信号の生成・出力が開始される。
ステップS40-5では、描画コマンド転送開始処理を実行し、ステップS40-6に移行する。描画コマンド転送開始処理では、転送回路318による転送処理の開始が指定されるとともに、プリローダ回路319によるプリロード処理の開始が指定される。
具体的に、描画コマンド転送開始処理では、マイクロコンピュータ301のデータ転送レジスタに、プリローダ回路319に対してディスプレイリストを転送する転送処理の開始を指定する値を設定する。これによって、転送回路318による転送処理が開始される。すなわち、転送回路318により、プリローダ回路319に対する転送領域に指定されている描画コマンドバッファ領域に生成されているディスプレイリストの転送が開始される。
また、描画コマンド転送開始処理では、マイクロコンピュータ301のディスプレイプリローダレジスタに、プリロード処理の開始を指定する値を設定する。これによって、プリローダ回路319によるプリロード処理が開始される。すなわち、プリローダ回路319により、転送回路318により転送されるディスプレイリスト(描画コマンド)で指定されている1フレーム分の圧縮画像データの転送(CGROM303からDRAM304のプリロード領域への転送)と、ディスプレイリスト(描画コマンド)の書き換えと、が開始される。
ステップS40-6では、コマンド構築タスク起床処理を実行し、当該Vsync割込み処理を終了する。コマンド構築タスク起床処理では、コマンド構築タスク処理の起床を設定する。これによって、後述するコマンド構築タスク処理が開始される。
(コマンド構築タスク処理)
次に、ステップS40-6で起床されるコマンド構築タスク処理を説明する。
図48は、コマンド構築タスク処理を示すフローチャートである。
コマンド構築タスク処理は、ステップS40-6で起床されると、図48に示すように、ステップS46-1に移行する。
ステップS46-1では、表示指令バッファ領域に未解析の指令情報が格納されているか否かを判定し、未解析の指令情報が格納されていると判定した場合(Yes)には、ステップS46-2に移行し、未解析の指令情報が格納されていないと判定した場合(No)には、ステップS46-3に移行する。
ステップS46-2では、指令情報解析処理を実行し、ステップS46-1に移行する。指令情報解析処理では、未解析の指令情報を解析し、当該解析の結果に応じた処理を実行する。
具体的に、指令情報解析処理では、未解析の指令情報が表示演出の開始を指定する指令情報である場合、まず、制御ROM302に格納されているアニメーションテーブルのうち、当該指令情報が指定する表示演出番号に対応するアニメーションテーブルを読み出す。そして、DRAM304のアニメーションテーブル設定領域において、読み出したアニメーションテーブルと、当該アニメーションテーブルに対応するフレームレートと、当該アニメーションテーブルに対応する表示プライオリティ情報と、を設定(記憶・登録)する。この際、フレームレート設定テーブルを参照して、当該アニメーションテーブルについて付与されているインデックス番号に対応するフレームレートを取得し、取得したフレームレートを設定する。
一方、未解析の指令情報が表示演出の終了を指定する指令情報である場合、アニメーションテーブル設定領域に設定されているアニメーションテーブルのうち、当該指令情報が指定する表示演出番号に対応するアニメーションテーブルをクリア(消去)する。
ステップS46-3では、コマンド構築処理を実行し、当該コマンド構築タスク処理を終了する。コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを構築する。
具体的に、コマンド構築処理では、まず、フレーム情報更新処理を実行する。
フレーム情報更新処理では、アニメーションテーブル設定領域に設定されている全てのアニメーションテーブルについて、フレーム情報の更新を実行する。
具体的に、フレーム情報更新処理では、アニメーションテーブル設定領域に設定されている各アニメーションテーブルについて、ディスプレイリストを構築する対象とするフレーム情報として、現在、選択されているフレーム情報に替えて、次の順位のフレーム情報を選択する。
コマンド構築処理では、次に、コマンド構築処理を実行する。
コマンド構築処理では、構築領域に指定されている描画コマンドバッファ領域において、ディスプレイリストを構築する。
具体的に、コマンド構築処理では、まず、アニメーションテーブル設定領域に設定されている各アニメーションテーブルについて、描画コマンドを生成する。これには、各アニメーションテーブルに規定されているフレーム情報のうち、ディスプレイリストを構築する対象として選択されているフレーム情報を取得する。そして、取得したフレーム情報に基づいて、描画コマンドを生成する。
ここで、描画コマンドでは、描画に用いる画像データの画像アドレス、当該画像データの描画時の倍率(拡大率・縮小率)、当該画像データを描画する座標(フレームバッファ領域における座標)、当該画像データの描画時の透過率(透過度・透明度・透明率)等が指定されている。
コマンド構築処理では、次に、アニメーションテーブル設定領域に設定されている全てのアニメーションテーブルについて生成した描画コマンドを、所定の順番で整列して、ディスプレイリストを構築する。
この際、アニメーションテーブル設定領域に設定されている各アニメーションテーブルの表示プライオリティ情報に基づいて、当該アニメーションテーブルに対応する描画コマンドの順番が設定される。
すなわち、複数の描画コマンドのうち、表示プライオリティが下位の描画コマンドが、表示プライオリティが上位の描画コマンドに対して、当該描画コマンドに基づく描画処理が先に実行されるように、複数の描画コマンドが整列されて、ディスプレイリストが構築される。換言すると、複数の描画コマンドのうち、表示プライオリティが下位の描画コマンドほど、当該描画コマンドに基づく描画処理が先に実行されるように、複数の描画コマンドが整列されて、ディスプレイリストが構築される。
(サウンド割込み処理)
次に、演出制御基板300のCPU310が実行するサウンド割込み処理を説明する。
図49は、サウンド割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図49に示すサウンド割込み処理を開始する。サウンド割込み処理が開始されると、まず、ステップS41-1に移行する。
ステップS41-1では、初期転送完了フラグ領域に設定されている値が「1」であるか否かを判定し、初期転送完了フラグ領域に設定されている値が「1」であると判定した場合(Yes)には、ステップS41-2に移行し、初期転送完了フラグ領域に設定されている値が「1」でない(「0」である)と判定した場合(No)には、当該サウンド割込み処理を終了する。
ステップS41-2では、指令情報解析処理を実行し、当該サウンド割込み処理を終了する。指令情報解析処理では、音指令バッファ領域に未解析の指令情報が格納されているか否かを判定し、未解析の指令情報が格納されていると判定した場合に、未解析の指令情報に応じた処理を実行する。
具体的に、指令情報解析処理では、未解析の指令情報が音演出の開始を指定する指令情報である場合、当該指令情報が指定する圧縮音声データを指定する情報(音演出番号)を、当該指令情報が指定するトラックに登録する。これによって、各トラックに登録された情報にしたがって、音声データの生成・出力が制御される。
一方、未解析の指令情報が音演出の停止を指定する指令情報である場合、当該指令情報が指定するトラックについて、音声データの再生を停止する。
一方、未解析の指令情報が音量の調整を指定する指令情報、当該指令情報が指定するトラックについて、当該指定情報が指定する調整内容にしたがって、音量を調整する。
(ランプ割込み処理)
次に、演出制御基板300のCPU310が実行するランプ割込み処理を説明する。
図50は、ランプ割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図50に示すランプ割込み処理を開始する。ランプ割込み処理が開始されると、まず、ステップS42-1に移行する。
ステップS42-1では、指令情報解析処理を実行し、当該ランプ割込み処理を終了する。指令情報解析処理では、ランプ指令バッファ領域に未解析の指令情報が格納されているか否かを判定し、未解析の指令情報が格納されていると判定した場合に、未解析の指令情報に応じた処理を実行する。
具体的に、指令情報解析処理では、未解析の指令情報がランプ演出の開始を指定する指令情報である場合、当該指令情報が指定するランプ演出番号に対応する圧縮ランプ駆動データを読み出して、読み出した圧縮ランプ駆動データを、ランプレジスタに設定する。これによって、ランプコントローラ317aにより、ランプレジスタに設定された圧縮ランプ駆動データにしたがって、ランプ演出(各種ランプ20,21の駆動(点灯))が制御される。
(可動体割込み処理)
次に、演出制御基板300のCPU310が実行する可動体割込み処理を説明する。
図51は、可動体割込み処理を示すフローチャートである。
演出制御基板300のCPU310は、クロック発生回路によるクロックパルスの発生に基づいて、所定周期ごとに、図51に示す可動体割込み処理を開始する。可動体割込み処理が開始されると、まず、ステップS43-1に移行する。
ステップS43-1では、レジスタ退避処理を実行し、ステップS43-2に移行する。レジスタ退避処理では、レジスタの値をDRAM304の退避領域に退避させる。
ステップS43-2では、指令情報解析処理を実行し、ステップS43-3に移行する。指令情報解析処理では、可動体指令バッファ領域に未解析の指令情報が格納されているか否かを判定し、未解析の指令情報が格納されていると判定した場合に、未解析の指令情報に応じた処理を実行する。
具体的に、指令情報解析処理では、未解析の指令情報が可動体演出の開始を指定する指令情報である場合、当該指令情報が指定する圧縮モータ駆動データを読み出して、読み出した圧縮モータ駆動データを、モータレジスタに設定する。これによって、モータコントローラ317bにより、モータレジスタに設定された圧縮モータ駆動データにしたがって、可動体演出(各種モータ23(各種可動体)の駆動)が制御される。
ステップS43-3では、レジスタ復帰処理を実行し、当該可動体割込み処理を終了する。レジスタ復帰処理では、ステップS43-1で退避しておいたレジスタの値を復帰させる。
(パチンコ機1の作用)
パチンコ機1では、上位制御手段(CPU310)から受信した周波数補正パラメータに応じてスピーカ22により出力される音の周波数特性を補正する下位制御手段(デジタルアンプ305)を備えている。そして、下位制御手段に異常が発生した場合、上位制御手段について、初期化が実行されず、下位制御手段について、初期化が実行された後に、周波数補正パラメータが異常の発生前の状態に復帰される。
これによって、下位制御手段に異常が発生した場合に、下位制御手段について、初期化が実行された後に、周波数補正パラメータが異常の発生前の状態に復帰される。したがって、異常の発生の前後において、スピーカ22から出力される音の周波数補正の内容が変化することが防止される。よって、異常の発生の前後において、スピーカ22から出力される音の音質が変化する事態が防止され、遊技者に違和感を与える事態を防止することが可能となる。
特に、パチンコ機1では、下位制御手段に異常が発生した場合、下位制御手段について初期化が実行された後に、上位制御手段から下位制御手段に対して周波数補正パラメータが送信される。
これによって、下位制御手段に異常が発生した場合、下位制御手段について初期化が実行された後に、上位制御手段から下位制御手段に対して周波数補正パラメータが送信されることにより、下位制御手段において、周波数補正パラメータが復帰される。したがって、下位制御手段における周波数補正パラメータの復帰を確実に行うことが可能となる。
(変形例1)
以上、本発明の実施形態について説明したが、上記実施形態では、種々の変更を行うことが可能である。
例えば、上記実施形態では、検査用端子に接続された検査装置の操作により、主制御基板200から演出制御基板300に対して所定の検査用コマンドを送信することが可能となっている。そして、CPU310が、所定の検査用コマンドを受信すると、スピーカ検査処理を実行する構成となっている。
しかしながら、パチンコ機1(演出制御基板300)への電源の投入時に、CPU310が、スピーカ検査処理を実行する構成としても構わない。かかる構成により、パチンコ機1へ電源が投入されるごとに、スピーカ検査処理を実行することが可能となる。
または、パチンコ機1への電源の投入時に、RAMクリアスイッチ207についてオン状態が検出されている場合(主制御基板200からRAMクリア指定コマンドを受信した場合)に、CPU310が、スピーカ検査処理を実行する構成としても構わない。かかる構成により、RAMクリアが実行されるごとに、スピーカ検査処理を実行することが可能となる。
または、パチンコ機1(演出制御基板300)への電源投入時に、主制御基板200から所定のサブコマンド(電源復帰指定コマンド、RAMクリア指定コマンド、電源投入時遊技機状態指定コマンド等)を受信しない場合に、CPU310が、スピーカ検査処理を実行する構成としても構わない。かかる構成によって、主制御基板200から演出制御基板300への通信が不可能な状態(断線・非接続)が発生した場合に、スピーカ検査処理を実行することが可能となる。
または、パチンコ機1において、遊技場のスタッフが選択することが可能なスタッフメニューを設け、スタッフメニューに含まれるスピーカ検査が選択された場合に、CPU310が、スピーカ検査処理を実行する構成としても構わない。
(変形例2)
また、上記実施形態では、大当り遊技状態の開始時、大当り遊技状態の終了時、時短制御の終了時等に、デジタルアンプ305の周波数補正パラメータ設定レジスタに設定されている周波数補正パラメータが変更される構成となっている。
しかしながら、デジタルアンプ305の周波数補正パラメータ設定レジスタに設定されている周波数補正パラメータは、遊技中における任意のタイミングで変更することが可能となっている。
例えば、特別図柄の変動表示中において、リーチ状態(または、発展リーチ状態)の開始を契機として、周波数補正パラメータ設定レジスタに設定されている周波数補正パラメータが、一の周波数補正パラメータから、当該一の周波数補正パラメータと比較してウーファーの低音域が強調される他の周波数補正パラメータに変更される構成としても構わない。
(変形例3)
また、上記実施形態では、デジタルアンプ305において異常状態の発生が検出された場合、デジタルアンプ305の各種レジスタが初期化された後に、CPU310からデジタルアンプ305に対して周波数補正パラメータが送信されることにより、周波数補正パラメータ設定レジスタの値が、異常状態の発生の検出前の値に復帰される構成となっている。
しかしながら、デジタルアンプ305において、周波数補正パラメータ設定レジスタの値が記憶手段に保存され、異常状態の発生が検出された場合、デジタルアンプ305の各種レジスタが初期化された後に、記憶手段に保存されている値に基づいて、周波数補正パラメータ設定レジスタの値が、異常状態の発生の検出前の値に復帰される構成としても構わない。
1 パチンコ機
22 スピーカ
200 主制御基板
300 演出制御基板
301 マイクロコンピュータ
302 制御ROM
303 CGROM
304 DRAM
305 デジタルアンプ
310 CPU
323 サウンド回路

Claims (1)

  1. 演出を制御する上位制御手段と、
    設定情報に応じて音出力手段により出力される音の周波数特性を補正する下位制御手段と、を備え、
    前記下位制御手段では、遊技の状態に応じて設定情報が変更され、
    設定情報として初期値とは異なる値が設定されているときに、前記下位制御手段に異常が発生した場合、前記上位制御手段について、初期化が実行されず、前記下位制御手段について、初期化が実行された後に、初期化されていない記憶に基づいて、設定情報が前記初期値とは異なる値に復帰されることを特徴とする遊技機。
JP2020044788A 2020-03-13 2020-03-13 遊技機 Active JP7209661B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020044788A JP7209661B2 (ja) 2020-03-13 2020-03-13 遊技機
JP2022183451A JP7448615B2 (ja) 2020-03-13 2022-11-16 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020044788A JP7209661B2 (ja) 2020-03-13 2020-03-13 遊技機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022183451A Division JP7448615B2 (ja) 2020-03-13 2022-11-16 遊技機

Publications (2)

Publication Number Publication Date
JP2021142293A JP2021142293A (ja) 2021-09-24
JP7209661B2 true JP7209661B2 (ja) 2023-01-20

Family

ID=77765504

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020044788A Active JP7209661B2 (ja) 2020-03-13 2020-03-13 遊技機
JP2022183451A Active JP7448615B2 (ja) 2020-03-13 2022-11-16 遊技機

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022183451A Active JP7448615B2 (ja) 2020-03-13 2022-11-16 遊技機

Country Status (1)

Country Link
JP (2) JP7209661B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003225372A (ja) 2002-02-05 2003-08-12 Daiman:Kk 遊技機
JP2015024092A (ja) 2013-07-29 2015-02-05 株式会社大都技研 遊技台

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535609Y2 (ja) * 1986-07-09 1993-09-09
JPH0968988A (ja) * 1995-08-31 1997-03-11 Matsushita Electric Ind Co Ltd 音響装置
JP3538035B2 (ja) * 1997-09-12 2004-06-14 パイオニア株式会社 イコライザ
JP2004073541A (ja) * 2002-08-20 2004-03-11 Maruhon Ind Co Ltd 遊技機
JP4432029B2 (ja) * 2003-10-24 2010-03-17 株式会社大一商会 遊技機
JP2007050048A (ja) * 2005-08-16 2007-03-01 Heiwa Corp 遊技機
JP5386791B2 (ja) * 2007-04-23 2014-01-15 株式会社竹屋 遊技機
JP2013132320A (ja) * 2011-12-26 2013-07-08 Maruhon Industry Co Ltd パチンコ機
JP5986262B1 (ja) * 2015-05-14 2016-09-06 京楽産業.株式会社 遊技機
JP7134821B2 (ja) * 2018-10-04 2022-09-12 株式会社三共 遊技機
JP7382862B2 (ja) * 2020-03-13 2023-11-17 株式会社平和 遊技機

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003225372A (ja) 2002-02-05 2003-08-12 Daiman:Kk 遊技機
JP2015024092A (ja) 2013-07-29 2015-02-05 株式会社大都技研 遊技台

Also Published As

Publication number Publication date
JP7448615B2 (ja) 2024-03-12
JP2023009239A (ja) 2023-01-19
JP2021142293A (ja) 2021-09-24

Similar Documents

Publication Publication Date Title
JP7534885B2 (ja) 遊技機
JP7313324B2 (ja) 遊技機
JP7465068B2 (ja) 遊技機
JP7299200B2 (ja) 遊技機
JP7382862B2 (ja) 遊技機
JP2020162930A (ja) 遊技機
JP7430556B2 (ja) 遊技機
JP7102451B2 (ja) 遊技機
JP7374820B2 (ja) 遊技機
JP7209661B2 (ja) 遊技機
JP7174740B2 (ja) 遊技機
JP7390927B2 (ja) 遊技機
JP7412403B2 (ja) 遊技機
JP7267033B2 (ja) 遊技機
JP7424903B2 (ja) 遊技機
JP7473517B2 (ja) 遊技機
JP7220179B2 (ja) 遊技機
JP2022149953A (ja) 遊技機
JP7426328B2 (ja) 遊技機
JP7525410B2 (ja) 遊技機
JP7382984B2 (ja) 遊技機
JP7303165B2 (ja) 遊技機
JP7232044B2 (ja) 遊技機
JP7228547B2 (ja) 遊技機
JP7169225B2 (ja) 遊技機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220614

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220713

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221116

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221116

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221125

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221206

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230110

R150 Certificate of patent or registration of utility model

Ref document number: 7209661

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150