JP6303601B2 - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP6303601B2
JP6303601B2 JP2014039400A JP2014039400A JP6303601B2 JP 6303601 B2 JP6303601 B2 JP 6303601B2 JP 2014039400 A JP2014039400 A JP 2014039400A JP 2014039400 A JP2014039400 A JP 2014039400A JP 6303601 B2 JP6303601 B2 JP 6303601B2
Authority
JP
Japan
Prior art keywords
special symbol
effect
symbol
interrupt
command
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
JP2014039400A
Other languages
English (en)
Other versions
JP2015163111A (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.)
Sammy Corp
Original Assignee
Sammy 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 Sammy Corp filed Critical Sammy Corp
Priority to JP2014039400A priority Critical patent/JP6303601B2/ja
Publication of JP2015163111A publication Critical patent/JP2015163111A/ja
Application granted granted Critical
Publication of JP6303601B2 publication Critical patent/JP6303601B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Description

本発明は、例えば、ぱちんこ遊技機等の遊技機に関する。
上記のぱちんこ遊技機は、複数台の遊技機が遊技店内においていわゆる遊技島と称される島設備に横一列に設置されて遊技に供されている。このような遊技機は、遊技進行の制御を司る主制御基板と、主制御基板からの指令に基づき遊技演出の制御を司る演出制御基板とを有して構成されている。演出制御基板は、連続的に繰り返されるループ処理を含むメイン処理と、所定の条件が成立したときにメイン処理を中断させて開始される割込み処理とを実行し、遊技の展開状況に応じて、液晶ディスプレイ等の画像表示、LEDランプの点灯、スピーカによる音響、可動役物(モータ、ソレノイド)の動作等の演出制御をおこなっている(例えば、特許文献1を参照)。
特開2010−131244号公報
ところで、近年では、遊技者の興趣を高めるための演出が多彩化し、それに伴い、LEDランプやモータ、ソレノイド等の各種デバイスの動作要求が増大している。そのため、演出制御基板側では、各種デバイスの制御に要する処理負担が増大して、遊技演出を円滑に処理することが困難になるおそれがあるという課題があった。
本発明は、このような課題に鑑みてなされたものであり、遊技演出を円滑に処理することができる遊技機を提供することを目的とする。
このような目的達成のために、本発明に係る遊技機は、遊技進行の制御を司る主制御手段と、前記主制御手段からの指令に基づき遊技に関連する演出の制御を司る演出制御手段とを有し、前記演出制御手段における前記演出の制御として、連続的に繰り返されるループ処理を含むメイン処理と、所定の条件が成立したときに前記メイン処理を中断させて開始される複数の割込み処理とが実行される構成の遊技機であって、前記複数の割込み処理には、少なくとも二以上の割込み処理が開始される場合の割込みの優先順位が定められ、優先順位の高い割込み処理は優先順位の低い割込み処理よりも優先的に実行されるようになっており、前記複数の割込み処理として、前記主制御手段の指令を受け取るための演出制御指令受信割込み処理と、前記演出制御指令受信割込み処理よりも優先順位が低く設定された所定の割込み処理とを有し、前記メイン処理と前記所定の割込み処理とは、一部において共通の処理を含む制御処理をそれぞれ含み、前記メイン処理の前記制御処理は、割込みを許可する割込み許可処理と、前記演出制御指令受信割込み処理以外の割込みを禁止する割込み禁止処理と、前記割込み許可処理と前記割込み禁止処理との間で実行される前記共通の処理とを含み、前記所定の割込み処理は、前記メイン処理を中断して行う処理であり、前記所定の割込み処理の前記制御処理は、前記割込み許可処理と前記割込み禁止処理とを含まず、前記共通の処理のみを含む処理で構成され、前記演出制御指令受信割込み処理を開始させるための前記所定の条件が成立した場合は、前記演出制御指令受信割込み処理が終了するまで中断されることを特徴とする
本発明に係る遊技機によれば、遊技演出を円滑に処理することが可能である。
本実施形態に係る、ぱちんこ遊技機の正面図である。 本実施形態に係る、ぱちんこ遊技機の背面図である。 本実施形態に係る、ぱちんこ遊技機の制御ブロック図である。 本実施形態に係る、ぱちんこ遊技機の主制御基板および演出制御基板の機能ブロック図である。 特別図柄当否抽選テーブルの一例を示す模式図である。 特別図柄当り図柄テーブルの一例を示す模式図である。 特別図柄変動パターンテーブルの一例を示す模式図である。 ぱちんこ遊技機の主制御側メイン処理を示すフローチャートである。 主制御側メイン処理の図8に続く制御処理を示すフローチャートである。 主制御側タイマ割込み処理を示すフローチャートである。 始動口監視制御処理を示すフローチャートである。 特別図柄変動開始監視制御処理を示すフローチャートである。 図12中の特別図柄変動開始監視処理を示すフローチャートである。 特別図柄制御処理を示すフローチャートである。 図14中の特別図柄制御汎用処理を示すフローチャートである。 図15中の特別図柄変動開始処理を示すフローチャートである。 図15中の特別図柄変動中処理を示すフローチャートである。 図15中の特別図柄停止図柄表示中処理を示すフローチャートである。 特別図柄停止図柄表示中処理の図18に続く制御処理を示すフローチャートである。 特別電動役物制御処理を示すフローチャートである。 特別電動役物制御処理の図20に続く制御処理を示すフローチャートである。 特別電動役物制御処理の図20に続く制御処理を示すフローチャートである。 リセット開始処理を示すフローチャートである。 演出制御側メイン処理を示すフローチャートである。 図24中のコマンド解析処理を示すフローチャートである。 図24中の演出内容決定処理を示すフローチャートである。 図24中のエラー演出内容決定処理を示すフローチャートである。 ランプ演出割込み処理を示すフローチャートである。 ランプリクエスト処理を示すフローチャートである。 演出制御コマンドの受信割込み処理を示すフローチャートである。 演出制御側タイマ割込み処理を示すフローチャートである。 コマンドセット処理を示すフローチャートである。 画像制御コマンドの送信割込み処理を示すフローチャートである。 ACKコマンドの受信割込み処理を示すフローチャートである。 各割込み処理の優先レベルの説明に供する模式図である。 変形例に係るランプ演出割込み処理を示すフローチャートである。
以下、本発明の好ましい実施形態について図面を参照しながら説明する。本実施形態に係る、ぱちんこ遊技機PMの正面図及び背面図を図1及び図2に示しており、まず、この図を参照して、ぱちんこ遊技機PMの全体構成について概要説明する。なお、本実施形態に係る、ぱちんこ遊技機PMは、従来の第1種ぱちんこ遊技機に相当する機能を二つ混在した機種であり、第1の遊技(第1特別図柄遊技)と第2の遊技(第2特別図柄遊技)との両立を実現している。
[ぱちんこ遊技機の基本構成]
始めに、図1を参照しながら、ぱちんこ遊技機PMの正面側の基本構造を説明する。ぱちんこ遊技機PMは、図1に示すように、外郭方形枠サイズに構成された縦向きの固定保持枠をなす外枠1の開口前面に、これに合わせた方形枠サイズに構成されて開閉搭載枠をなす前枠2が互いの正面左側縁部に配設された上下のヒンジ機構3により横開き開閉および着脱が可能に取り付けられ、正面右側縁部に設けられたダブル錠と称される施錠装置4を利用して常には外枠1と係合連結された閉鎖状態に保持される。
前枠2には、この前枠2の上部前面域に合わせた方形状のガラス枠5が上下のヒンジ機構3を利用して横開き開閉および着脱可能に組み付けられ、施錠装置4を利用して常には前枠2の前面を覆う閉鎖状態に保持される。前枠2には、遊技盤20が着脱可能にセット保持され、常には閉鎖保持されるガラス枠5の複層ガラスを通して遊技盤20の正面の遊技領域PAを視認可能に臨ませるようになっている。
ガラス枠5の前面側には、遊技の展開状況に応じて発光する枠ランプ(LEDランプ)10や、遊技の展開状況に応じて効果音を発生するスピーカ11が設けられている。ガラス枠5の下部には遊技球を貯留する上下の球皿(上球皿8及び下球皿9)が設けられており、上球皿8の正面中央には遊技者によって押圧操作される演出ボタン15が設けられ、下球皿9の正面右側には遊技球の発射操作を行う発射ハンドル12が設けられている。
遊技盤20は、ルータ加工等を施した矩形状の積層合板に、所定の図柄が印刷されたセルを貼り付けて成型される化粧板を基板として構成される。遊技盤20の前面には、外レール及び内レールが円弧状に固設されて遊技球が転動可能な略円形の遊技領域PAが区画形成され、この遊技領域PAに風車や多数本の遊技釘とともに、第1始動口61、第2始動口62、作動ゲート63、大入賞口64、などの各種入賞口の他、第1特別図柄表示装置71、第2特別図柄表示装置72、第1特図保留ランプ73、第2特図保留ランプ74、普通図柄表示装置75、普図保留ランプ76などの各種表示装置が設けられている。遊技領域PAの略中央にはセンター飾り22が配設されており、このセンター飾り22の中央開口を通して演出表示装置70の画面が視認可能に設けられている。遊技領域PAの下端には各入賞口に入球せずに転動流下した遊技球を遊技盤20の裏側へ排出するアウト口29が設けられている。以下、遊技盤20に設けられた各構成要素を順番に説明する。
第1始動口61は、第1特別図柄遊技に対応する始動入賞口として設けられており、遊技球の入球を検出するための第1始動口スイッチ611を備えている。第1始動口61への遊技球の入球は、第1特別図柄抽選の契機となる。
第2始動口62は、第2特別図柄遊技に対応する始動入賞口として設けられており、遊技球の入球を検出するための第2始動口スイッチ621を備えている。第2始動口62への遊技球の入球は、第2特別図柄抽選の契機となる。また、第2始動口62は、普通電動役物622と、この普通電動役物622を開閉駆動させるための普通電動役物ソレノイド623とを備える。普通電動役物622は、第2始動口62へ遊技球が入球し難い閉鎖状態と該状態よりも遊技球が入球し易い開放状態とに可変する。ここで、第2始動口62は第1始動口61のほぼ真下に配置されており、第2始動口62の普通電動役物622が開放されなければ第1始動口61の存在により遊技球が入球し難い構造となっている。一方、普通電動役物622が開放されると、第2始動口62への入球容易性が高まり、第2始動口に遊技球を入球させることができるようになる。
作動ゲート63は、普通図柄遊技に対応する始動入賞口として設けられており、遊技球の通過を検出するための作動ゲートスイッチ631を備えている。なお、作動ゲート63への遊技球の通過は、第2始動口62の普通電動役物622を拡開させるか否かを決定するための普通図柄抽選の契機となる。
大入賞口64は、第1特別図柄又は第2特別図柄の当否抽選で大当り又は小当りとなった場合に開放状態となる、横長方形状をなし遊技領域PAの下方に位置した入賞口である。大入賞口64は、遊技球の入球を検出するための大入賞口スイッチ641を備えるとともに、いわゆるアタッカー装置と称される特別電動役物642と、この特別電動役物642を開閉駆動させるための大入賞口ソレノイド643をとを備えている。特別電動役物642は、大入賞口64に遊技球が入球不能又は入球困難な通常状態と遊技球が入球可能又は入球容易な開放状態とに可変する。
第1特別図柄表示装置71は、遊技球が第1始動口に入球したことを契機として、第1特別図柄の変動表示および確定表示を行う。この第1特別図柄表示装置71は、例えば8個のLEDランプから構成され、第1特別図柄の変動表示は当該ランプの点滅パターンに従って表現され、当該ランプの点滅が停止して点灯表示に切り替わることで第1特別図柄が確定表示される。
第2特別図柄表示装置72は、遊技球が第2始動口に入球したことを契機として、第2特別図柄の変動表示および確定表示を行う。この第2特別図柄表示装置72は、例えば8個のLEDランプから構成され、第2特別図柄の変動表示は当該ランプの点滅パターンに従って表現され、当該ランプの点滅が停止して点灯表示に切り替わることで第2特別図柄が確定表示される。
第1特図保留ランプ73および第2特図保留ランプ74は、例えば2個のLEDランプからそれぞれ構成され、当該ランプの点灯・点滅表示によって第1特別図柄および第2特別図柄の作動保留球数(最大4個)を表現する。第1特別図柄の作動保留球数は、第1特別図柄又は第2特別図柄の変動中あるいは特別遊技の実行中に、第1始動口へ入球した遊技球の個数であり、図柄変動の実行許可が一旦保留された数を示している。第2特別図柄の作動保留球数は、第1特別図柄又は第2特別図柄の変動中あるいは特別遊技の実行中に、第2始動口へ入球した遊技球の個数であり、図柄変動の実行許可が一旦保留された数を示している。
普通図柄表示装置75は、例えば2個のLEDランプから構成され、普通図柄の変動表示及び確定表示を行う。普図保留ランプ76は、例えば4個のランプから構成され、当該ランプの点灯個数が普通図柄変動の保留数(まだ実行されていない普通図柄変動の数)に相当する。なお、普通図柄表示装置75の左側には、特別遊技におけるラウンド遊技の回数(ラウンド数:特別電動役物642が連続して作動する回数)を表示するラウンド表示器77が設けられている。
演出表示装置70は、主として、第1特別図柄又は第2特別図柄と連動して変動表示・停止する装飾図柄や予告演出を含む演出画像を表示するとともに、第1特別図柄および第2特別図柄の保留表示を行う。具体的には、演出表示装置70の画面上に、装飾図柄の変動表示や予告演出表示などが実行される装飾図柄表示部700と、第1特図保留ランプ73と同期して第1特別図柄の保留表示が実行される第1特図保留表示部701と、第2特図保留ランプ74と同期して第2特別図柄の保留表示が実行される第2特図保留表示部702と、が設けられている。本実施形態では、演出表示装置70として、液晶表示装置を採用している。装飾図柄表示部700には、所定の有効ライン(不図示)上に、装飾図柄の変動表示領域となる三列の表示領域(左表示領域Z1、中表示領域Z2、右表示領域Z3)が設けられており、左表示領域Z1に対応して装飾図柄の右図柄、中表示領域Z2に対応して装飾図柄の中図柄、右表示領域Z3に対応して装飾図柄の右図柄がそれぞれ停止表示されるようになっている。特図保留表示部701,702には、通常の表示態様では、特別図柄の作動保留球が生起されると白丸印の保留画像が表示される一方、当該作動保留球が消化されると対応する保留画像が消失される。この保留画像は、特別図柄の作動保留球の発生順(入球順)に従って順番に表示され、各保留表示部701,702に最大で4個ずつ表示が可能である。
センター飾り22は、演出表示装置70の周囲に設置され、遊技球の流路、演出表示装置70の画面の保護、装飾等の機能を有する。センター飾り22には、遊技の展開状況に応じた演出動作を実行する複数の可動役物24(24A,24B,24C)が設けられている。各可動役物24は、駆動源としてモータM(例えば、ステッピングモータ)を備えて構成されている。なお、可動役物24の駆動源として、例えばソレノイド等の他の駆動源を用いてもよい。また、センター飾り22には、遊技の展開状況に応じて発光する盤ランプ(LEDランプ)25が設けられている。以下の説明では、便宜上、枠ランプ10および盤ランプ25を総称して「演出ランプLP」とも称する。なお、本実施形態では、演出ランプLPとして、LEDランプを用いているが、ランプ演出効果を発揮できるものであれば、LEDランプ以外の他の発光手段であってもよい。
続いて、図2を参照しながら、ぱちんこ遊技機PMの背面側の基本構造を説明する。前枠2の背面側には、中央に前後連通する窓口を有して前枠2よりも幾分小型の矩形枠状に形成された基枠体をベースとしてなる裏セット盤30が、上下のヒンジ機構3を介して前枠2後方に横開き開閉及び着脱が可能に連結されている。この裏セット盤30には、前面開放の矩形箱状をなす裏セットカバー30Cが着脱自在に装着されており、常には前枠2に取り付けられた遊技盤20の裏面側を覆って配設されている(これにより後述する主制御基板100、演出制御基板200、画像制御基板300が裏セットカバー30Cにより覆われる)。
裏セット盤30の各部には、多数個の遊技球を貯留する貯留タンク31、貯留タンク31から右方に緩やかな下り傾斜を有して延びるタンクレール32、タンクレール32の右端部に繋がり下方に延びる球供給通路部33、球供給通路部33により導かれた遊技球を払い出す賞球払出ユニット34、賞球払出ユニット34から払い出された遊技球を上球皿6に導くための賞球通路部35などが設けられている。
遊技盤10の背面側には、ぱちんこ遊技機PMの作動を統括的に制御する主制御基板(主制御基板ユニット)100や、演出全般の制御を行う演出制御基板(演出制御基板ユニット)200、遊技展開に応じた画像表示、効果音の制御を行う画像制御基板(画像制御基板ユニット)300、などが取り付けられている。これに対して、裏セット盤30の背面側には、遊技球の発射及び払い出しに関する制御を行う払出制御基板(払出制御基板ユニット)400や、遊技施設側から受電して各種制御基板や電気・電子部品に電力を供給する電源基板(電源基板ユニット)500などが取り付けられている。なお、これらの制御基板は、不正改造防止のため、カシメ構造及び封印シール構造を有する透明樹脂製の基板ケースに収容されたアッセンブリ状態で遊技盤20背面又は裏セット盤30背面の所定位置にそれぞれ配設される。これらの制御基板とぱちんこ遊技機PM各部の電気・電子部品とがハーネス(コネクタケーブル)を介して相互に接続されて、ぱちんこ遊技機PMが作動可能に構成されている。
[ぱちんこ遊技機の基本動作]
以上のように構成される、ぱちんこ遊技機PMは、外枠1が遊技施設の遊技島に固定設置され、前枠2、ガラス枠5、球皿ユニット6等が閉鎖施錠された状態で遊技に供され、上球皿8に遊技球を貯留させて発射ハンドル12を回動操作することにより遊技が開始される。発射ハンドル12が回動操作されると、上球皿8に貯留された遊技球が、ガラス枠5の背面側に配設される球送り機構13(図3を参照)によって1球ずつ発射機構14(図3を参照)に送り出され、該発射機構14により遊技領域PAに打ち出される。
遊技領域PAを転動流下する遊技球が、第1始動口61、第2始動口62、作動ゲート63、大入賞口64のいずれかに入球すると、その入賞口の種別に応じた賞球が賞球払出ユニット33により上球皿8又は下球皿9に払い出される。遊技球が第1始動口61(第2始動口62)に入球すると、第1特別図柄表示装置71(第2特別図柄表示装置72)において第1特別図柄(第2特別図柄)が変動表示されるとともに、これと同期して演出表示装置70の装飾図柄表示部700において装飾図柄が変動表示される。第1特別図柄、第2特別図柄、装飾図柄の変動表示は、先だって抽選によって決定された変動時間の経過後に停止(確定表示)される。
第1特別図柄又は第2特別図柄が大当りを示す停止態様で確定表示された場合、通常遊技よりも遊技者に有利な遊技状態である特別遊技に移行し、大入賞口64の開閉動作が開始される。大当りを示す装飾図柄の停止態様は、例えば3つの図柄の種類が一致する態様である。本実施形態では、特別遊技として、ラウンド遊技が2回(2ラウンド)に設定された2R特別遊技と、ラウンド遊技が12回(12ラウンド)に設定された12R特別遊技と、ラウンド遊技が16回(16ラウンド)に設定された16R特別遊技と、が設けられている。
本実施形態では、2R特別遊技、12R特別遊技および16R特別遊技のいずれに移行されたとしても、特別遊技の終了後に特別図柄の確率変動機能(以下「確変」ともいう)が作動する場合がある。特別図柄の確率変動機能が作動した場合には、通常の確率状態よりも特別図柄の大当り確率が高い抽選が行われるため、比較的早期に新たな特別遊技が発生するようになる。
一方、特別遊技が終了した後は、確率変動機能に付随して、一律に特別図柄の変動時間短縮機能(以下「時短」ともいう)が作動する。特別図柄の変動時間短縮機能が作動すると、特別図柄及び装飾図柄の平均的な変動時間が通常状態よりも短縮される傾向となり、通常状態よりも単位時間当たりの当否抽選回数が向上する(単位時間当たりの大当りの獲得容易性を高めることができる)。なお、本例における、時短状態の継続期間は、その特別遊技の終了から特別図柄の所定変動回数(例えば50回)の期間に設定される。一方、特別図柄の確率変動機能に付随した変動時間短縮機能であれば、その特別遊技の終了後から次の大当りが発生するまでの期間に設定される。
特別図柄の変動時間短縮機能が作動すると、いわゆる電チューサポート機能が作動し、電チューサポート状態(入球容易状態)に移行する。入球容易状態は、普通図柄の変動時間短縮機能、普通図柄の確率変動機能、普通電動役物の開放時間延長機能、が作動することにより、第2始動口62への入球容易性が高められる状態である。この入球容易状態においては、一定時間あたりの普通図柄の変動回数が通常よりも増加する可能性が高まる上、第2始動口62への入球容易性も高まるため、第2始動口62への入球数が増加する可能性も向上する。したがって、特別図柄の変動時間短縮機能及び電チューサポート機能の作動により、その期間中は第2始動口62への入球による賞球を得られる機会が増加する結果、持ち球をほとんど減らさずに遊技を継続することが可能となる。
[ぱちんこ遊技機の制御構成]
次に、図3を追加参照して、本実施形態に係るぱちんこ遊技機PMに搭載された各制御基板について説明する。図3は、ぱちんこ遊技機PMの制御構成を示す制御ブロック図である。
主制御基板100は、遊技に関する各種の演算処理を行うメインCPU101と、制御プログラムや各種データ等を記憶したROM102と、一時記憶領域となるワークエリアやバッファメモリとして機能するRAM103と、周辺基板や各デバイスとの間の信号を入出力するI/Oポート回路104と、メインCPU101によるプログラム処理(ソフトウェア乱数)とは別系統として動作して所定の乱数(内蔵乱数)を生成する乱数生成回路105とを備えて構成された主制御マイコン(ワンチップマイコン)110を搭載しており、メインCPU101がROM102に記憶された制御プログラムに従って遊技進行に係る主要な制御を実行するように構成されている。その他、主制御基板100には、図示省略するが、水晶発振器からのクロック信号を分周して内部システムクロックを生成するクロック回路、メインCPU101が誤動作や暴走状態となったときにリセットをかけて正常な状態に復帰させるWDT回路、リアルタイム割込みの発生や時間計測を可能とするCTC回路などが搭載されており、これらが内部バスを介して相互に接続されている。
メインCPU101は、各スイッチからの検出情報などに基づき、ROM102に格納された各種の制御プログラムを読み出して演算処理を行うことで、遊技の主制御に係る各種処理を実行する。RAM103は、電源基板500において生成されるバックアップ電源(VBB)によってバックアップされる不揮発性記憶手段としてのバックアップRAMである。RAM103のバックアップ領域は、電源断が生じた場合、当該電源断時に保持していたスタックポインタや各レジスタ等のデータを記憶しておくためのエリアとなっており、電源投入時(電源断復帰時)には当該バックアップ領域の情報に基づいて遊技機の状態が電源断前の状態に復帰されるようになっている。
乱数生成回路105は、クロック回路からのクロック信号(1クロック)に基づき1回更新することで(1クロック1乱数発生方式)、所定範囲の乱数(内蔵乱数)を一定の規則に従って生成する。内蔵乱数の初期値は、主制御マイコン110のID番号(マイクロコンピュータごとに付与された固有の識別情報)を基にして所定の演算によって算出された数値であり、システムリセットごとに変更される。この内蔵乱数は、後述する特別図柄の当否抽選に用いられる特別図柄当り乱数の一部をなす。
また、主制御基板100は、第1始動口スイッチ611、第2始動口スイッチ621、作動ゲートスイッチ631および大入賞口スイッチ641などと電気的に接続されており、I/Oポート回路104を介して、各種スイッチからの検出信号をメインCPU101に入力する。また、主制御基板100は、第1特別図柄表示装置71、第2特別図柄表示装置72、第1特図保留ランプ73、第2特図保留ランプ74、普通図柄表示装置75および普図保留ランプ76に電気的に接続され、さらに、普通電動役物ソレノイド623および特別電動役物ソレノイド643、に電気的に接続されており、I/Oポート回路104を介して、メインCPU101からの制御信号を各種表示手段および各種ソレノイドに送信する。
主制御基板100と演出制御基板200との間では、主制御基板100から演出制御基板200へと向かう単一方向のみで通信可能に接続されており、主制御基板100から演出制御基板200へ各種の演出制御コマンドが送信される。演出制御基板200から主制御基板100へデータを送信することはできず、また、主制御基板100に対してデータの送信を要求することはできない。
演出制御基板200は、主制御基板100からの演出制御コマンドに基づき遊技演出に関する各種の演算処理を行うサブメインCPU201、演出制御プログラムや各種データ等を記憶したROM202、一時記憶領域となるワークエリアやバッファメモリとして機能するRAM203と、周辺基板や各デバイスとの間の信号を入出力するI/Oポート回路204と、シリアルデータを入出力するためのシリアル通信回路205とを備えて構成された演出制御マイコン(ワンチップマイコン)210を搭載しており、サブメインCPU201がROM202に記憶された制御プログラムに従って遊技演出に係る主要な制御を実行するように構成されている。その他、演出制御基板200には、図示省略するが、水晶発振器からのクロック信号を分周して内部システムクロックを生成するクロック回路、サブメインCPU201が誤動作や暴走状態となったときにリセットをかけて正常な状態に復帰させるWDT回路、システムクロックに基づき各種信号を出力するTPU回路、TPU回路からの信号などに基づきタイマ割込み等の各種割込みを起動させる割込みコントローラ、などが搭載されており、これらが内部バスを介して相互に接続されている。
演出制御基板200は、主制御基板100からの演出制御コマンドに基づく演出制御処理にて、画像制御基板300へ画像および音響を指示する画像制御コマンド、ランプ接続基板91を制御するためのランプ制御信号(ランプデータ)、モータドライバ92を制御するための駆動制御信号(駆動データ)などを生成する。演出制御基板200は、画像制御基板300と双方向通信が可能に接続されており、画像および音響に関する画像制御コマンドが演出制御基板200から画像制御基板300へ送信する一方、その応答として、この画像制御コマンドを正常に受信できた旨を示す応答コマンド(ACKコマンド)が画像制御基板300から演出制御基板200へ送信される。
また、演出制御基板200は、ランプ接続基板91と電気接続されており、シリアル通信回路を介して、ランプ制御信号(ランプデータ)を送信する。なお、本例では、演出制御基板200とランプ接続基板91とは、クロック同期式のシリアル伝送が採用されており、ランプデータ伝送用のデータ線とは別の信号線(クロック線)で送信されるクロック信号に同期して、ランプ制御信号が当該データ線を介して1ビットずつ送信される。ランプ接続基板91は、演出制御基板200から送信されるLED駆動用のランプ制御信号を受けて機能するLEDドライバ(図示せず)を内蔵しており、このランプ制御信号に基づき回路内のスイッチをオン/オフ切り替えることにより、演出ランプLPに対して駆動電流を供給又は遮断して、演出ランプLPを点灯又は消灯させる制御を行う。
さらに、演出制御基板200は、モータドライバ92と電気接続されており、I/Oポート回路204を介して、駆動制御信号(駆動データ)をモータドライバ92へ送信する。モータドライバ92は、演出制御基板200から送信される役物駆動用の駆動制御信号に基づき回路内のスイッチをオン/オフ切り替えることにより、各可動役物24のモータMに対して駆動電流を供給又は遮断して、各可動役物24を動作させる制御を行う。
画像制御基板300は、演出制御基板200からの画像制御コマンドに基づき画像演出に関する各種の演算処理を行うサブサブCPU301と、画像制御プログラムや各種データ等を記憶したプログラムROM302と、一時記憶領域となるワークエリアやバッファメモリとして機能するRAM303と、サブサブCPU301から取得した制御信号に基づき演出内容に沿った画像データを生成するVDP304と、サブサブCPU301から取得した制御信号に基づき演出内容に沿った音響データを生成する音源IC305とを搭載している。VDP304は、いわゆる画像プロセッサであり、サブサブCPUからの指示に応じて画像ROM306に記憶された画像データを読み込み、これを画像処理して生成した映像信号(画像データ)を演出表示装置に送信する。このVPD304には、画像ROM306から読み出された画像データの展開・加工に使用される高速のVRAM307が接続されている。音源IC305は、サブサブCPU301からの指示に応じて音声ROM308に記憶された音響データを読み込み、これを合成処理して生成した音響データを不図示の増幅器(デジタルアンプ)を介してスピーカ11に出力する。
払出制御基板400は、払出CPU401、ROM402およびRAM403を主体として構成されている。払出制御基板400は、主制御基板100と双方向通信可能に接続されており、主制御基板100からの払出制御コマンドに基づいて賞球払出ユニット34を駆動させて賞球を払い出すための制御を実行するとともに、発射ハンドル12の操作量に基づき球送り機構13と発射機構14とを同期的に駆動させて遊技球の発射の制御を実行する。
電源基板500は、詳細図示を省略するが、遊技島の電源設備から供給される一次電源を基に、各制御基板で使用される通常時の電源を生成するための通常電源回路と、バックアップ電源(VBB)を生成するためのバックアップ電源回路と、電圧低下による電源断を監視するための電源断監視回路と、を具備して構成され、各制御基板や遊技用機器等の電子・電気部品に必要な電源を供給する。電源基板500には、電源回路を起動させるための電源スイッチが接続されており、遊技島の電源装置から1次電源が供給されていることを前提として、該電源スイッチがオンになると、電源基板500の通常電源回路から各制御基板などに所定の電源が供給される。電源基板500は、遊技島の電源装置からの電源供給が遮断されたことを検出可能に構成されており、電源断の検出時にはその旨を報知する電源断信号(NMI信号)を主制御基板100、演出制御基板200、払出制御基板400に送信する。なお、バックアップ電源回路は、遊技島の電源装置からぱちんこ遊技機PMに電源が供給されているときに充電される仕組みとなっている。また、電源基板500には、ぱちんこ遊技機PMの電源投入時に、主制御基板100のRAM103の一時記憶内容を一旦消去して初期値を設定するためのRAMクリアスイッチ(図示せず)が接続されている。なお、RAMクリアスイッチは、電源基板500ではなく、例えば主制御基板100に接続される構成であってもよい。
[ぱちんこ遊技機の主要な機能構成]
次に、図4の機能ブロック図を追加参照しながら、本実施形態に係る、ぱちんこ遊技機PM(主として、主制御基板100/演出制御基板200)の各種機能について説明する。
《主制御基板》
主制御基板100は、図4に示すように、入球判定手段110、遊技抽選乱数発生手段120、保留制御手段130、事前判定手段135、特別図柄抽選処理手段140、普通図柄抽選処理手段145、デモ演出設定手段150、図柄表示制御手段155、電動役物制御手段160、遊技状態制御手段165、エラー監視制御手段170、メイン情報記憶手段180、コマンド送受信手段190、を含む。なお、主制御基板100における上述の各手段は、主制御基板100上に設けられたメインCPU101、ROM102、RAM103、電子回路等のハードウェア及びROM102等に格納された制御プログラム等のソフトウェアにより構成されるものを機能的に表現したものである。
入球判定手段110は、第1始動口スイッチ611、第2始動口スイッチ621、作動ゲートスイッチ631、大入賞口スイッチ641、からの検出信号に基づき、各入賞口への遊技球の入球を判定する。
遊技抽選乱数発生手段120は、乱数生成回路105で生成した内蔵乱数をソフトウェアで取り込み、これに後述の特別図柄当りソフト乱数を加算することで、特別図柄の当否抽選に使用される特別図柄当り乱数を生成する。また、遊技抽選乱数発生手段120は、メインCPU101のプログラム処理によって各種のソフトウェア乱数を生成するための乱数カウンタを備えている。これらの乱数カウンタは、ソフトウェア的に乱数を生成する乱数生成手段としての役割を担っている。このソフトウェア乱数としては、前述の内蔵乱数に加算されて特別図柄当り乱数をなす特別図柄当りソフト乱数、特別図柄当りソフト乱数の初期値および終了値を決定するための特別図柄当りソフト初期値乱数、特別図柄の停止図柄として当り図柄(条件装置を作動させることとなる図柄の組合せ)の決定に使用する特別図柄当り図柄乱数、特別図柄当り図柄乱数の初期値および終了値を決定するための特別図柄当り図柄初期値乱数、特別図柄の変動パターンの選択に使用するための特別図柄変動パターン乱数、普通図柄の当否抽選に使用するための普通図柄当り乱数、普通図柄当り乱数の初期値および終了値を決定するための普通図柄当り初期値乱数、普通図柄の変動パターンの選択に使用するための普通図柄変動パターン乱数などが含まれる。これらのソフトウェア乱数の更新時期としては、タイマ割込み処理が発生する毎に1回更新し、また、初期値乱数についてはタイマ割込み処理を実行していない間(ループ処理中)も割込み周期の残余時間を利用して更新する。
保留制御手段130は、特別図柄保留制御手段131、普通図柄保留制御手段132、を含む。
特別図柄保留制御手段131は、第1始動口61又は第2始動口62への遊技球の入球を契機として、特別図柄遊技に係る抽選乱数値である、特別図柄当り乱数値、特別図柄当り図柄乱数値、特別図柄変動パターン乱数値を取得して、当該乱数値を第1特別図柄又は第2特別図柄の作動保留球情報として管理する。特別図柄保留制御手段131は、第1特別図柄又は第2特別図柄の作動保留球情報をそれぞれ所定の上限個数(4個)まで、当該保留球の入球順序と結合したかたちでメイン情報記憶手段180の第1特別図柄保留格納領域又は第2特別図柄保留格納領域に一時記憶する。
第1特別図柄保留格納領域および第2特別図柄保留格納領域には、各始動口61,62への入球順に、保留1記憶領域(1個目の保留記憶領域)、保留2記憶領域(2個目の保留記憶領域)、保留3記憶領域(3個目の保留記憶領域)、保留4記憶領域(4個目の保留記憶領域)、がそれぞれ設けられている。各保留記憶領域は、作動保留球情報として、特別図柄当り乱数、特別図柄当り図柄乱数、特別図柄変動パターン乱数を1組セットとしてそれぞれ記憶可能である。作動保留球情報は、保留1記憶領域、保留2記憶領域、保留3記憶領域、保留4記憶領域の順に格納される一方、保留1記憶領域、保留2記憶領域、保留3記憶領域、保留4記憶領域の順に消化される(先入れ先出しの原則)。また、保留1記憶領域の保留球情報が消化されると、保留2記憶領域、保留3記憶領域、保留4記憶領域に格納された保留球情報を下位の番号の記憶領域にそれぞれシフトするとともに、保留4記憶領域の内容をゼロクリアする。
また、特別図柄保留制御手段131は、第1特別図柄の作動保留球数をカウントするための第1特別図柄保留球数カウンタ、第2特別図柄の作動保留球数をカウントするための第2特別図柄保留球数カウンタ、を有している。特別図柄保留制御手段131は、特別図柄の作動保留球数の更新処理として、特別図柄の作動保留球を1個取得するごとに対応するカウンタを1加算し、作動保留球が1個消化されるごとに対応するカウンタを1減算する。
また、特別図柄保留制御手段131は、第1特別図柄又は第2特別図柄の作動保留球数を更新したとき、当該保留球数の更新情報を含む演出制御コマンド(「図柄記憶数コマンド」と称する)を生成して、これをメイン情報記憶手段180のコマンド格納領域に一時記憶する。この1コマンドには、第1特別図柄の作動保留球数と第2特別図柄の作動保留球数との両方の情報が含まれている。なお、原則として、各特別図柄の作動保留球は入球した順番に消化されることになるが、本実施形態では、第1特別図柄よりも第2特別図柄の変動表示を優先的に実行する、いわゆる優先消化を採用するため、第2特別図柄遊技に係る作動保留球が存在する間は、第1特別図柄遊技に係る作動保留球の存在に関係なく、第2特別図柄遊技に係る作動保留球を優先的に消化するように構成されている。
普通図柄保留制御手段132は、作動ゲート63への遊技球の入球を契機として、普通図柄遊技に係る抽選乱数値である、普通図柄当り乱数値、普通図柄当り図柄乱数値、普通図柄変動パターン乱数値、を取得して、当該乱数値を普通図柄の作動保留球情報として管理する。普通図柄保留制御手段132は、普通図柄の作動保留球情報を所定の上限個数(4個)まで、当該保留球の入球順序と結合したかたちでメイン情報記憶手段180の普通図柄保留格納領域に一時記憶する。また、普通図柄保留制御手段132は、普通図柄の作動保留球数をカウントするための普通図柄保留球数カウンタを有している。普通図柄保留制御手段132は、作動普通図柄の保留球数の更新処理として、普通図柄の作動保留球を1個取得するごとに対応するカウンタを1加算し、作動保留球が1個消化されるごとに対応するカウンタを1減算する。
事前判定手段135は、所定の事前判定タイミングで特別図柄の作動保留球を取得した場合、当該作動保留球を対象として先読み予告演出の事前判定を実行する。ここで、先読み予告演出とは、特別図柄の変動表示が保留中となっている未消化の作動保留球に対して当否抽選等の事前判定を行い、その判定結果を遊技者に対して予告的に報知する演出である。事前判定タイミングの一例としては、(1)当り待ち中、且つ、電チューサポート機能が未作動中に第1特別図柄の作動保留球を取得した場合、(2)当り待ち中、かつ、電チューサポート機能が作動中に第2特別図柄の作動保留球を取得した場合、(3)大当り中又は小当り中に第2特別図柄の作動保留球を取得した場合、のうちのいずれかの条件を満足するときである。具体的には、事前判定手段135は、今回取得した作動保留球に対応する乱数値をメイン情報記憶手段180の特別図柄保留格納領域から読み出して、先読み的な当否抽選の事前判定(当否事前判定)、先読み的な図柄抽選の事前判定(図柄事前判定)、先読み的な変動パターン抽選の事前判定(変動パターン事前判定)、を順次実行する。事前判定手段135は、当否事前判定の結果の情報を含む演出制御コマンドを順に生成して、これをメイン情報記憶手段180のコマンド格納領域に格納する。
特別図柄抽選処理手段140は、特別図柄当否判定手段141、特別図柄停止図柄判定手段412、特別図柄変動パターン判定手段143、を含む。特別図柄抽選処理手段140は、特別図柄の変動開始条件が成立したとき、特別図柄保留格納領域における最先の記憶領域(保留1記憶領域)に格納された特別図柄当り乱数値、特別図柄当り図柄乱数値、特別図柄変動パターン乱数値を読み出して、メイン情報記憶手段180の特別図柄当否判定領域、特別図柄図柄判定領域、特別図柄変動パターン判定領域にそれぞれ格納する。ここで、特別図柄の変動開始条件が成立するとは、その一例として、(1)大当り又は小当り中ではないこと、(2)第1特別図柄および第2特別図柄のいずれも変動待機中であること、(3)第1特別図柄および第2特別図柄の少なくとも一方に作動保留球が存在すること、の全ての条件を満足したときであり、その結果として、特別図柄が変動開始可能な状態であると判断される。
特別図柄当否判定手段141は、メイン情報記憶手段180の特別図柄当否判定領域から特別図柄当り乱数値を読み出して当否判定を実行し、当該判定結果が、大当り、小当り、はずれ、のいずれに該当するかを決定する。この当否抽選の結果は、メイン情報記憶手段180の特別図柄判定フラグに一時記憶され(例えば、大当りデータ「55H」、小当りデータ「33H」、はずれデータ「00H」)、以降の処理で使用された後、特別図柄の変動停止時にクリアされる。特別図柄当否判定手段141は、この当否判定の際に参照される特別図柄当否抽選テーブルを保持する。
ここで、図5は、特別図柄当否抽選テーブルを模式的に示す図であり、(A)は通常状態(低確率状態)で参照されるテーブル、(B)は確変状態(高確率状態)で参照されるテーブルである。この特別図柄当否抽選テーブルには、特別図柄当り乱数値と、大当り、小当り、はずれの判定結果と、が対応付けられており、対応付けられた範囲設定に応じて大当りおよび小当りの当否確率が定まる。図5からも分かるように、特別図柄遊技の当否抽選において、通常状態(低確率状態)では乱数値が0〜163の範囲に該当したときのみ大当りとなる。一方、確変状態(高確率状態)では大当りの範囲が拡大され、乱数値が前記0〜163の範囲に該当する場合だけでなく、164〜1639の範囲に該当する場合にも大当りとなる。つまり、特別図柄の確率変動機能が作動すると、大当りの抽選確率が低確率状態(164/65536)から高確率状態(1640/65536)に変動する。このように大当りに該当する範囲は遊技状態に応じて変化するが、第1特別図柄の当否抽選と第2特別図柄の当否抽選とで大当りに当選する確率は等しい。ここで、特別図柄当り乱数値が大当りの範囲に該当しない場合であっても、所定の範囲に該当した場合には小当りとなる。本例では、第2特別図柄の当否抽選よりも第1特別図柄の当否抽選のほうが高い確率で小当りとなる。なお、例えば、第2特別図柄の当否抽選においては、小当りが存在しないように構成してもよい。
特別図柄停止図柄判定手段142は、第1特別図柄又は第2特別図柄の当否抽選の結果に基づいて、第1特別図柄又は第2特別図柄の停止図柄、および当該停止図柄の属する図柄群を決定する。特別図柄停止図柄判定手段142は、当否抽選の結果が大当りの場合に、第1特別図柄および第2特別図柄の停止図柄および図柄群を決定する際に参照される第1特別図柄当り図柄テーブルおよび第2特別図柄当り図柄テーブルを有している。
図6(A)は第1特別図柄当り図柄テーブルの一例を模式的に示す図である。この第1特別図柄当り図柄テーブルには、特別図柄当り図柄乱数値に対して、停止図柄、図柄群、大当りの内容(特別図柄の確率変動機能および変動時間短縮機能の作動回数、大入賞口64の作動パターン)がそれぞれ対応付けられている。このテーブルでは、第1特別図柄の停止図柄「2」〜「11」が、大当りの種別に応じて、3種類の図柄群A〜Cに分類されている。
具体的には、図柄「2」,「3」,「4」,「5」には、図柄群A(12R特定時短有図柄1)が、図柄「6」,「7」,「8」,「9」には、図柄群B(2R特定時短有図柄)が、図柄「10」,「11」には、図柄群C(12R通常時短有図柄)が、それぞれ対応付けられている。「特定図柄」とは特別遊技の終了後に確率変動機能を作動させることとなる図柄であり、「通常図柄」とは特別遊技の終了後に確率変動機能を作動させることのない図柄である(後述する第2特別図柄の図柄群についても同様である)。
図柄群Aは、特別遊技終了後の遊技状態を特別図柄の確変状態(高確率状態)に移行させる、いわゆる「確変当り」を示す特定図柄であり、次回の大当り発生まで特別図柄の確率変動機能および変動時間短縮機能、並びに電チューサポート機能が付与される。特別遊技の規定ラウンド数は12ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約30秒である。
図柄群Bは、上記の「確変当り」と比較して大入賞口64の開放回数および開放時間が異なるものの、特別遊技終了後の遊技状態を特別図柄の確変状態(高確率状態)に移行させる、いわゆる「突然確変当り」を示す特定図柄であり、次回の大当り発生まで特別図柄の確率変動機能および変動時間短縮機能、並びに電チューサポート機能が付与される。特別遊技の規定ラウンド数は2ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約0.05秒である。
図柄群Cは、特別遊技終了後の遊技状態を通常状態(低確率状態)に移行させる、いわゆる「通常当り」を示す通常図柄であり、特別遊技終了後の所定回数(本例では50回)のみに限定して、特別図柄の変動時間短縮機能および電チューサポート機能が付与される。特別遊技の規定ラウンド数は12ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約30秒である。
一方、当否抽選の結果が小当りである場合には、上記特別図柄当り乱数による図柄判定を省略して、停止図柄として図柄「12」が一義的に割り当てられる。この図柄「12」には、図柄群G(特電作動図柄)が対応付けられている。なお、小当りの場合には、遊技状態(確率変動機能、変動時間短縮機能、電チューサポート機能)の変更の契機とはならず、当否抽選の前後で当該遊技状態が維持される。また、当否抽選の結果がはずれの場合には、停止図柄として図柄「1」が一義的に割り当てられる。
続いて、図6(B)は第2特別図柄当り図柄テーブルの一例を模式的に示す図である。この第2特別図柄当り図柄テーブルには、特別図柄当り図柄乱数値に対して、停止図柄、図柄群、大当りの内容(特別図柄の確率変動機能および変動時間短縮機能の作動回数、大入賞口64の作動パターン)がそれぞれ対応付けられている。このテーブルでは、第2特別図柄の停止図柄「13」〜「22」が、大当りの種別に応じて、3種類の図柄群D〜Fに分類されている。具体的には、図柄「13」,「14」,「15」,「16」には、図柄群D(16R特定時短有図柄)が、図柄「17」,「18」には、図柄群E(2R特定時短有図柄)が、図柄「19」,「20」,「21」,「22」には、図柄群F(2R通常時短有図柄)が、それぞれ対応付けられている。
図柄群Dは、特別遊技終了後の遊技状態を特別図柄の確変状態(高確率状態)に移行させる、いわゆる「確変当り」を示す特定図柄であり、次回の大当り発生まで特別図柄の確率変動機能および変動時間短縮機能、並びに電チューサポート機能が付与される。特別遊技の規定ラウンド数は16ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約30秒である。
図柄群Eは、上記の「確変当り」と比較して大入賞口64の開放回数および開放時間が異なるものの、特別遊技終了後の遊技状態を特別図柄の確変状態(高確率状態)に移行させる、いわゆる「突然確変当り」を示す特定図柄であり、次回の大当り発生まで特別図柄の確率変動機能および変動時間短縮機能、並びに電チューサポート機能が付与される。特別遊技の規定ラウンド数は2ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約0.05秒である。
図柄群Fは、特別遊技終了後の遊技状態を通常状態(低確率状態)に移行させる、いわゆる「通常当り」を示す通常図柄であり、特別遊技終了後の所定回数(本例では50回)のみに限定して、特別図柄の変動時間短縮機能および電チューサポート機能が付与される。特別遊技の規定ラウンド数は2ラウンドで、1回のラウンド遊技における大入賞口64の最大開放時間は約0.05秒である。
一方、当否抽選の結果が小当りである場合には、上記特別図柄当り乱数による図柄判定を省略して、停止図柄として図柄「23」が一義的に割り当てられる。この図柄「23」には、図柄群H(特電作動図柄)が対応付けられている。なお、小当りの場合には、遊技状態(確率変動機能、変動時間短縮機能、電チューサポート機能)の変更の契機とはならず、当否抽選の前後で当該遊技状態が維持される。また、当否抽選の結果がはずれの場合には、停止図柄として図柄「1」が一義的に割り当てられる。
ここで、遊技状態制御手段165は、当否抽選の結果が大当りである場合に、当該大当りに係る図柄群の種類に基づき、特別遊技後の遊技状態を決定するとともに、特別遊技後の遊技状態を切り替える。この遊技状態として、特別図柄の時短状態及び電チューサポート状態は、特別図柄の変動回数が特別遊技の終了時点から数えて所定の終了条件回数、例えば50回に達するまで継続される。ただし、同時に特別図柄の確変状態へ移行した場合は当該確変状態が継続する限り特別図柄の時短状態及び電チューサポート状態も継続される。すなわち、次の大当りまで特別図柄の確変状態が継続される。このとき、特別図柄の確変状態では、大当りの抽選確率を通常の低確率から高確率に変動させて、通常の遊技状態よりも有利な高確率状態となる。特別図柄の時短状態では、特別図柄の平均的な変動時間が短縮される状態となる。電チューサポート状態(入球容易状態)は、普通図柄の確率変動機能、普通図柄の変動時間短縮機能、普通電動役物の開放時間延長機能、が作動することにより、第2始動口62への入球容易性が高められる状態である。普通図柄の確率変動機能が作動すると、普通図柄の当選確率を通常状態よりも高まる状態となる。普通図柄の変動時間短縮機能が作動すると、普通図柄の変動時間が短縮される状態となる。普通電動役物622の開放時間延長機能が作動すると、普通電動役物622の開放時間が通常状態よりも延長された状態となる。
また、遊技状態制御手段165は、当否抽選の結果が大当り又は小当りである場合に、図柄群A〜Hの種類に基づき、特別遊技後の変動パターン選択状態を決定するとともに、特別遊技後の変動パターン選択状態を切り替える。変動パターン選択状態は、後述する変動パターンテーブルを選択する際に参照される条件の一つである。変動パターン選択状態の切り替え時期は、特別遊技の終了時又は変動パターン選択状態の終期回数を満了したときである。本実施形態では、変動パターン選択状態として、通常変動パターン選択状態、確変変動パターン選択状態態、時短変動パターン選択状態などが存在する。ここで、通常変動パターン選択状態とは、遊技状態が通常状態のときに選択される通常変動パターンテーブルを参照して特別図柄の変動パターンを決定する状態である。確変変動パターン選択状態とは、遊技状態が特別図柄の確変状態のときに選択される確変変動パターンテーブルを参照して特別図柄の変動パターンを決定する状態である。時短変動パターン選択状態とは、遊技状態が特別図柄の時短状態のときに選択される時短変動パターンテーブルを参照して特別図柄の変動パターンを決定する状態である。なお、遊技状態制御手段165は、現在の遊技状態情報および変動パターン選択状態情報を含む演出制御コマンド(「遊技状態指定コマンド」と称する)を生成して、これをメイン情報記憶手段180のコマンド格納領域に格納する。
特別図柄変動パターン判定手段143は、特別図柄変動パターン乱数値に基づき、特別図柄の変動パターンを決定する。ここで、特別図柄変動パターン判定手段143は、特別図柄の変動パターンを選択する際に参照される複数種の変動パターンテーブルを保持している。特別図柄変動パターン判定手段143は、現在の変動パターン選択状態と当否抽選の結果とに基づき、複数種の変動パターンテーブルの中からいずれかの変動パターンテーブルを選択する。
図7は、特別図柄の変動パターンテーブルの一例を模式的に示す図である。ここで、図中の(A1),(A2)は通常変動パターンテーブル、図中の(B1),(B2)は確変変動パターンテーブル、図中の(C1),(C2)は時短変動パターンテーブルである。各変動パターンテーブルには、複数種の変動パターンが規定されている。各図中では、説明の便宜上、「選択率」を表記しているが、実際には特別図柄変動パターン乱数値に応じて、変動パターンを決定するための判定値(乱数値の範囲)が設定されており、変動パターン乱数値がいずれの判定値に属するかに基づき、変動パターンが決定されるようになっている。各種の変動パターンは、その図柄変動の終了条件として当該変動パターンごとに変動時間が定められており、その変動時間にて複数の図柄で構成される装飾図柄による図柄変動も実行されることを前提として規定される。具体的には、変動パターンP1,P2は、それぞれ5秒、10秒の変動時間を有しており、図柄の変動過程として非リーチの変動態様を取り得る。変動パターンP3,P4は、それぞれ20秒、40秒の変動時間を有しており、図柄の変動過程としてノーマルリーチ(Nリーチ)の変動態様を取り得る。変動パターンP5,P6は、それぞれ60秒、90秒の変動時間を有しており、図柄の変動過程としてリーチ付きの変動態様を取り得り、最終的にはスーパーリーチ(SPリーチ)に発展する。ここで、いずれの変動パターンテーブルにおいても、当否抽選の結果が大当りの場合には、非リーチの変動パターンP1,P2が選択されることはなく、リーチ付きの変動パターンP3〜P6のみが選択される。他方、当否抽選の結果がはずれである場合には、非リーチの変動パターンP1,P2の選択率が相対的に高くなっている。ここで、はずれ用の通常変動パターンテーブルと比較して、はずれ用の確変変動パターンテーブルおよびはずれ用の時短変動パターンテーブルでは、非リーチの変動パターンP1(変動時間:5秒)の選択率が相対的に高くなっている点で、平均的な変動時間が短縮化される傾向である。なお、本例では、説明の便宜上、複数種の変動パターンのみを例に挙げて説明するが、実際には100種類以上の変動パターンが存在する。
また、前述の説明では、いずれの場合にもはずれ用の変動パターンテーブルを単一のテーブルで表現しているが、当否抽選の結果がはずれとなったときは、特別図柄の作動保留球数(0〜4)に応じて異なる変動パターンテーブルか選択される場合もある。つまり、特別図柄の作動保留球数に応じた変動パターンテーブルを用いることで、作動保留球数が多いほど相対的に短い変動時間が選択される割合を高くして、逆に作動保留数が少ないほど相対的に長い変動時間が選択される割合を高くすることができる。
また、特別図柄変動パターン判定手段143は、特別図柄の変動パターンを選択した後、演出制御基板200に対して装飾図柄の変動開始を指示するため、演出制御基板200との通信が正常に行われているか否かを確認するための演出制御コマンド(「通信検査コマンド」と称する)、変動付加図柄情報(変動時間を加減算するための情報)を含む演出制御コマンド(「変動付加図柄情報指定コマンド」と称する)、変動パターン情報を含む演出制御コマンド(「変動パターン指定コマンド」と称する)、キャラクタ演出番号の情報(図柄群および遊技状態の情報)を含む「キャラクタ演出番号指定コマンド」等を生成して(以降、これらのコマンドを纏めて「変動開始コマンド」と称する)、これをメイン情報記憶手段180のコマンド格納領域に格納する。
普通図柄抽選処理手段145は、普通図柄当否判定手段146と、普通図柄停止図柄判定手段147と、普通図柄変動パターン判定手段148と、を有する。普通図柄抽選処理手段145は、普通図柄の変動開始条件が充足したとき、普通図柄保留格納領域における最先の記憶領域に格納された普通図柄当り乱数値、普通図柄変動パターン乱数値を読み出して、メイン情報記憶手段180の普通図柄当否判定領域、普通図柄変動パターン判定領域にそれぞれ格納する。
普通図柄当否判定手段146は、メイン情報記憶手段180の普通図柄当否判定領域から普通図柄当り乱数値を読み出して当否判定を実行し、当該判定結果が、当り、はずれ、のいずれに該当するかを決定する。この当否抽選の結果は、メイン情報記憶手段180の普通図柄判定フラグに一時記憶され、以降の処理で使用された後、普通図柄の変動停止時にクリアされる。普通図柄当否判定手段146は、この当否抽選の際に参照される普通図柄当否抽選テーブルを保持しており、通常状態(低確率状態)においては例えば「160/283」の確率で当りとなる普通図柄当否抽選テーブルを参照し、普通図柄の確変状態(高確率状態)においては、例えば「282/283」の確率で当りとなる普通図柄当否抽選テーブルを参照して、普通図柄の当否抽選を実行する。
普通図柄停止図柄判定手段147は、図柄抽選テーブルを参照して、当否抽選の結果が当りである場合には所定の当り図柄を割り当てる一方、はずれである場合には所定のはずれ図柄を割り当てるようになっている。
普通図柄変動パターン判定手段148は、メイン情報記憶手段180の普通図柄変動パターン判定領域から普通図柄変動パターン乱数値を読み出すとともに、普通図柄変動パターンテーブルを参照して、通常状態における普通図柄の変動表示においては、相対的に長い変動時間を選択する(例えば「4秒・5秒・6秒・7秒・8秒・9秒・10秒」の7種類をそれぞれ均一的に選択する)。一方、普通図柄の時短状態(入球容易状態)では相対的に短い変動時間(例えば「0.5秒」)を選択する。
デモ演出設定手段150は、当否抽選の結果が大当りである場合、前記決定された図柄群の種類に応じて、特別遊技中に演出表示装置70等に表示される大当り開始デモ演出および大当り終了デモ演出に係るデモ演出時間を決定する。また、デモ演出設定手段150は、特別遊技のデモ設定処理として、大当り開始デモ演出の実行を指示する演出制御コマンド(「大当り開始デモコマンド」)と、大当り終了デモ演出の実行を指示する演出制御コマンド(「大当り終了デモコマンド」)を生成する。
また、デモ演出時間設定手段150は、当否抽選の結果が小当りの場合、小当り遊技中に演出表示装置70等に表示される小当り開始デモ演出および小当り終了デモ演出に係るデモ演出時間を決定する。また、デモ演出設定手段150は、小当り遊技のデモ設定処理として、小当り開始デモ演出の実行を指示する演出制御コマンド(「小当り開始デモコマンド」)と、小当り終了デモ演出の実行を指示する演出制御コマンド(「小当り終了デモコマンド」)を生成する。
図柄表示制御手段155は、特別図柄表示制御手段156、普通図柄表示制御手段157、を含む。特別図柄表示制御手段156は、第1特別図柄の変動パターン(変動時間)に従って、第1特別図柄を第1特別図柄表示装置71に変動表示させるとともに、該変動表示後に第1特別図柄を確定表示させる。また、特別図柄表示制御手段156は、第2特別図柄の変動パターン(変動時間)に従って、第2特別図柄を第2特別図柄表示装置72に変動表示させるとともに、該変動表示後に第2特別図柄を確定表示させる。特別図柄表示制御手段156は、第1特別図柄および第2特別図柄の表示に係る時間(変動時間、確定表示時間)を管理するための特別図柄遊技タイマを有している。第1特別図柄表示装置71および第2特別図柄表示装置72の動作状態は、メイン情報記憶手段180の特別図柄遊技ステイタスに基づき監視される。特別図柄表示制御手段156は、特別図柄の変動停止の際に(すなわち、特別図柄遊技タイマの値が「0」となるタイミングで)、演出制御基板200に対して装飾図柄の確定表示を要求するための演出制御コマンド(「変動停止コマンド」と称する)を生成する。普通図柄表示制御手段157は、普通図柄の変動パターン(変動時間)に従って、普通図柄を普通図柄表示装置75に変動表示させるとともに、該変動表示後に普通図柄を確定表示させる。普通図柄表示制御手段157は、普通図柄の表示に係る時間(変動時間、確定表示時間)を管理するための普通図柄遊技タイマを有している。普通図柄表示装置75の動作状態は、メイン情報記憶手段180の普通図柄遊技ステイタスに基づき監視される。
電動役物制御手段160は、特別図柄の当否抽選の結果が大当りとなった場合、特別図柄の確定表示後に、特別遊技処理として、特別電動役物ソレノイド643に制御信号を出力し、特別電動役物642を所定の作動パターンに従って開放させる。特別遊技は、特別電動役物642の1回の開閉動作を1回のラウンド遊技とし、当該ラウンド遊技を規定ラウンド数(本例では、2R,12R,16R)だけ連続して実行するものである。ここで、大当り種別がいわゆる12R大当り(図柄群A,C)又は16R大当り(図柄群D)である場合には、1回のラウンド遊技において大入賞口を最大で約30秒間開放させる。他方、大当り種別がいわゆる2R大当り(図柄群B,E,F)である場合には、1回のラウンド遊技において大入賞口を最大で約0.05秒間開放させる。
また、電動役物制御手段160は、特別図柄の当否抽選の結果が小当りとなった場合、特別図柄の確定表示後に、小当り遊技処理として、特別電動役物ソレノイド643に制御信号を出力し、特別電動役物642を短期間だけ開放させる。小当り遊技は1回のラウンド遊技で構成される点で、複数回のラウンド遊技で構成される特別遊技とは区別される。ここで、前述した2R特別遊技と小当り遊技とを比較すると、内部的には相違するものの、1回の開閉時間(0.05秒)が同じ点及び開閉回数が同一である点(前者が1ラウンド当たり1開閉を2ラウンドの2回、後者が1ラウンド当たり2開閉を1ラウンドの2回)で共通するので、見た目上は近似した開放時間・開放パターンの遊技が繰り広げられる。
また、電動役物制御手段160は、普通図柄の当否抽選に当選した場合、普通電動役物ソレノイド643に制御信号を出力して、所定の開放時間だけ普通電動役物642を開放させる。ここで、電動役物制御手段160は、通常状態では普通電動役物623を極短時間(例えば0.2秒間)だけ開放させるのに対し、入球容易状態(電チューサポート状態)では普通電動役物623を通常状態と比較して相対的に長い時間(例えば4秒間)に亘り開放させる。
エラー監視制御手段170は、I/Oポート回路104の入力情報を監視し、磁気センサによる磁気検知信号、断線短絡電源異常信号、電波センサによる電波検知信号、扉・枠開放信号などを検査して、遊技機がエラー状態であるか否かを判定する。エラー状態である場合には、演出制御基板200にエラー状態演出を指示すべく、当該エラー情報を含む演出制御コマンド(「エラー演出指定コマンド」)を要求する。なお、図3では記載を省略しているが、扉開放スイッチはガラス枠5が開放されているか否かの検出手段であり、枠開放スイッチは前枠2が開放されているか否かの検出手段であり、裏セット開放スイッチは裏セット盤30が開放されているか否かの検出手段である。また、磁気センサおよび電波センサはいわゆるゴト行為を発見するための検出手段である。
メイン情報記憶手段180は、取得した乱数値情報、特別図柄遊技および普通図柄遊技に関する遊技状態(確変状態、時短状態、入球容易状態)の情報、変動パターン選択状態に関する情報、当否抽選の結果情報(当り、小当り、はずれ)、特別図柄や普通図柄に係る停止図柄および変動パターンの情報、特別遊技に関する情報(ラウンド数、開放時間、開放態様(1ラウンド遊技あたりの開放回数)など)、特別図柄表示装置71,72の動作状態を示すステイタス情報、特別電動役物642の動作状態を示すステイタス情報、演出制御コマンドデータの情報等を一時記憶するように構成されており、各情報を記憶するための所定の記憶領域を備えている。
コマンド送受信手段190は、コマンド送信要求があった場合に、メイン情報記憶手段180のコマンド格納領域に格納された各種の演出制御コマンドデータをパラレル伝送方式にて演出制御基板200に送信するように構成されている。なお、各演出制御コマンドは、1バイトのMODEデータと、1バイトのEVENTデータとを含んだ2バイト構成となっており、MODEとEVENTを区別するために、MODデータのBit7は「1」、EVENTデータのBit7は「0」としている。これらの情報を有効なものとして送信する場合、MODEおよびEVENTの各々に対してストローブ信号が出力される。各処理で発生した演出制御コマンドは、原則として、メイン情報記憶手段180のコマンド格納領域にセットされた順番に従って割込み周期毎に1コマンド送信される。
《演出制御基板》
演出制御基板200は、図4に示すように、演出抽選乱数発生手段210、演出統括手段220、ランプ制御手段230、役物制御手段240、エラー演出制御手段250、サブメイン情報記憶手段260、コマンド送受信手段270、を含む。なお、演出制御基板200における上述の各手段は、演出制御基板200上に配されたサブメインCPU201、ROM202、RAM203、電子回路等のハードウェア及びROM202に格納された制御プログラム等のソフトウェアにより構成されるものを機能的に表現したものである。
演出抽選乱数発生手段210は、サブメインCPU201のプログラム処理によって各種のソフトウェア乱数(演出抽選乱数)を生成するための乱数カウンタを備えている。これらの乱数カウンタは、ソフトウェア的に乱数を生成する乱数生成手段としての役割を担っている。このソフトウェア乱数としては、先読み予告演出の抽選に使用するための先読み予告抽選乱数、先読み予告パターンの選択に使用する先読み予告パターン乱数、装飾図柄の停止図柄の選択に使用する装飾図柄乱数、装飾図柄の変動演出パターンの選択に使用する変動演出パターン乱数、予告演出パターンの選択に使用する予告演出パターン乱数、などが含まれる。これらの乱数の更新時期としては、後述の演出制御側メイン処理内でコマンド解析が行われなかった場合の残余時間を利用して更新する。
演出統括手段220は、演出モード制御手段221、保留情報表示制御手段222、先読み予告制御手段223、装飾図柄決定手段224、変動演出決定手段225、予告演出決定手段226、大当り演出決定手段227、を含む。
演出モード制御手段221は、主制御基板100からの遊技状態指定コマンドに基づき、主制御基板100側で管理された遊技状態および変動パターン選択状態との整合性をとるかたちで、演出モードの移行制御を実行する。本実施形態では、3種類の演出モードとして、通常演出モード、確変演出モード、時短演出モード、が含まれる。演出表示装置70には、現在滞在中の演出モードに対応した演出モード報知画像(本例では、装飾図柄の背面表示となる背景画像)が表示され、この背景画像は演出モード毎に互いに異なるよう設定されているため、背景画像の種類から、現在滞在中の演出モードがいずれであるかを遊技者が認識し得るようになっている。
保留情報表示制御手段222は、第1特別図柄の作動保留球数をカウントするための第1保留球数カウンタ、第2特別図柄の作動保留球数をカウントするための第2保留球数カウンタ、を有している。保留情報表示制御手段222は、主制御基板100からの図柄記憶数コマンドを受信すると、この図柄記憶数コマンドに含まれる作動保留球数の情報に基づき、第1保留球数カウンタおよび第2保留球数カウンタの値を更新する。また、保留情報表示制御手段222は、第1保留球数カウンタおよび第2保留球数カウンタの値に基づいて、演出表示装置70の保留表示部701,702に、第1特別図柄の作動保留球数に対応する数の保留画像と、第2特別図柄の作動保留球数に対応する数の保留画像とを表示する制御を行う。通常の表示態様では、特別図柄の作動保留球が生起されると白色表示の保留画像が表示される一方、次述する保留変化先読み予告演出が実行された場合には、先読み予告の対象となった保留画像が通常の表示態様(白色)から特殊な表示態様(大当り期待度に応じて青色→緑色→紫色→赤色など)に変化される。
先読み予告制御手段223は、主制御基板100から事前判定コマンドを受信したことを契機として、先読み予告演出の実行可否を抽選にて決定する。先読み予告制御手段223は、事前判定コマンドに含まれる事前判定結果の情報(先読み情報)を作動保留球の入球順序と結合したかたちでサブメイン情報記憶手段260の先読み情報格納領域に一時記憶する。先読み予告演出は、装飾図柄の連続的な複数回の変動表示に亘って大当り当選又はリーチ演出発生の可能性を予告するいわゆる連続予告演出の一態様として発生される。先読み予告演出(連続予告演出)を実行可と判定した場合は、主制御基板100からの事前判定コマンドの情報(事前判定の結果)および図柄記憶数コマンドの情報(現存する作動保留球数)を解析して、今回の先読み予告演出の発生契機となる作動保留球(「トリガ保留」と称する)を対象として連続的な複数回の変動表示に亘る先読み予告演出パターンが抽選で決定される。なお、先読み予告演出には、保留変化先読み予告演出、チャンス目先読み予告演出、背景変化先読み予告演出などの各種のバリエーションが存在する。
装飾図柄決定手段224は、主制御基板100からの変動開始コマンドに含まれる情報(変動パターン情報、キャラクタ演出番号情報)に基づき、装飾図柄の最終的な停止図柄の組み合わせ(左図柄・中図柄・左図柄)を抽選により決定する。本例では、複数種類の装飾図柄を含む3つの図柄列が構成される。この装飾図柄は、例えば、数字又は文字からなる識別要素により形成されている。本例では、識別要素として、「1」〜「9」の数字、「A」、「B」、「C」の文字などの全12種類が設定されている。各装飾図柄は図柄列の配列に従って「1」→「2」→「3」→・・・→「9」→「A」→「B」→「C」の順序で各表示領域Z1,Z2,Z3にて巡回表示させる。本例では、装飾図柄の停止図柄の組合せ(左図柄・中図柄・右図柄)として、偶数の装飾図柄を通常大当り発生となる非確変図柄として取り扱う一方、奇数および文字の装飾図柄を確変大当り発生となる確変図柄として取り扱う。
また、装飾図柄決定手段224は、装飾図柄の停止図柄の組合せ(「停止図柄パターン」ともいう)を抽選で決定する際に参照される複数種の停止図柄パターンテーブルを保持している。この複数種のテーブルとしては、大当り用の停止図柄パターンテーブル、小当り用の停止図柄パターンテーブル、リーチはずれ用の停止図柄パターンテーブル、非リーチはずれ用の停止図柄パターンテーブルなどがある。装飾図柄の停止図柄は、3つの図柄の組み合わせとして形成され、例えば当否抽選の結果が大当りに該当する場合には特定の組み合わせ、例えば「7・7・7」や「1・1・1」のように3つの図柄が揃った組み合わせが選択される。抽選結果が2R大当りの場合や小当りの場合もまた特定の組み合わせ、例えば「3・5・7」のような所定の組み合わせが選択される。すなわち、2R大当りや小当りの特定の組み合わせは必ずしも3つの図柄が揃った組み合わせでなくてもよい。抽選結果がリーチはずれである場合は、例えば「3・4・3」や「7・5・7」のように、左図柄と右図柄とが一致している状態で中図柄のみが前後に数コマずれた組合せが選択される。なお、小当りや2R大当りである場合に、上記のリーチはずれの態様としてもよい。他方、抽選結果が非リーチはずれである場合は、「3・1・2」や「9・4・6」のように3つの図柄が揃っていない組み合わせ(いわゆるバラケ目)が選択される。また、抽選結果が非リーチはずれである場合には、いわゆる「チャンス目」と称される特定の出目が選択されることがある。更には、上記のような最終的な停止図柄を確定表示する前に仮停止させる演出を行う場合には、その仮停止図柄が選択される。
変動演出決定手段225は、主制御基板100からの変動開始コマンドに含まれる情報(変動パターン情報)に基づき、装飾図柄の変動表示における変動開始から停止までの変動過程(演出過程)を規定した変動演出パターンを決定する。変動演出決定手段225は、変動演出パターンを選択する際に参照される複数種の変動演出パターンテーブルを保持しており、これら複数種の変動演出パターンテーブルの中から特別図柄の変動パターン(変動時間)に対応した変動演出パターンテーブルを選択するようになっている。変動演出パターンテーブルでは、特別図柄の変動パターン抽選の結果(すなわち、リーチ種別)に応じて、変動演出パターン乱数値と変動演出パターンとが対応付けられている。ここで、主制御基板100側では変動パターンとして図柄変動の基本パターン(例えば、「NリーチA」、「SPリーチA」など)が定まるのに対して、演出制御基板200側では変動演出パターンとして当該基本パターンを基に演出表示過程のシナリオを詳細に規定した図柄変動の詳細パターン(例えば、「NリーチA1,A2,A3」、「SPリーチA1,A2,A3,A4」など)が定まる。このように装飾図柄の変動演出パターンには、装飾図柄の変動表示態様、すなわち、装飾図柄の変動開始から変動終了までの一連の演出表示過程のシナリオが定義されており、当該表示過程中の各段階において予告演出を発生させるタイミングなどもタイムスケジュールとして規定されている。なお、装飾図柄を停止させるための停止順序は、変動演出パターン毎に予め定められており、本実施形態では原則として、左図柄→右図柄→中図柄の順に停止させる。但し、変動時間の短い変動演出パターンである場合には、左図柄・中図柄・右図柄をほぼ同時に停止させ、特定の変動演出パターンである場合には、左図柄→中図柄→右図柄の順に停止させることもできる。このとき、上記原則の停止順序(左図柄→右図柄→中図柄)でない場合は、大当り期待度が相対的に高くなる傾向となる。
予告演出決定手段226は、上述した変動演出パターンのシナリオに沿って装飾図柄の変動過程の各段階で実行される予告演出の内容を規定した予告演出パターンを決定する。予告演出パターンには、特定のキャラクタやモチーフの画像、アニメーションなどを一時的又は段階的に画像表示させる演出パターンや、特定の音声を出力する演出パターン、可動役物を動作させる演出パターン等が含まれる。予告演出は、装飾図柄の変動表示と並行して実行され、その図柄変動が大当り態様にて停止する大当り信頼度が高いことを予告的に示唆するものである。予告演出には、装飾図柄の変動過程においてリーチ状態が発生する前(リーチ発生時を含む)に実行される予告演出と、リーチ状態が発生した後に実行される予告演出とがある。予告演出はそれぞれ大当り信頼度が異なるものとなっており、基本的には、リーチ発生前に表示される予告演出よりもリーチ発生後に表示される予告演出の方が相対的に大当り信頼度は高くなっている。予告演出決定手段226は、予告演出パターンを選択する際に参照される予告演出パターンテーブルを予告演出の種類別に保持しており、変動演出パターンのシナリオに沿って発生する予告演出の種類に応じた予告演出パターンテーブルを選択するようになっている。予告演出決定手段226は、上記で選択された予告演出パターンテーブルを参照して、演出抽選乱数発生手段210から取得した予告演出パターン乱数値に基づき、抽選によって、複数種の予告演出パターンの中からいずれかを選択する。なお、具体的な予告演出パターンの種類としては、コメント予告演出パターン、背景予告演出パターン、SU(ステップアップ)予告演出パターン、群予告演出パターン、カットイン予告演出パターン、役物可動予告演出パターン、などが用意されている。この予告演出は、基本的には、演出表示装置70での装飾図柄の変動表示に、1又は複数の予告演出の表示を合成することによって行われる。そのため、同一の変動演出パターンによる装飾図柄の変動表示であっても、1又は複数の予告演出との組み合わせによって多彩な演出態様を発生させることが可能となる。
大当り演出決定手段227は、主制御基板100からの大当り演出のデモ時間情報に基づき、特別遊技の実行に先立って、その特別遊技中に表示させる大当り開始デモ及び大当り終了デモを含む特別遊技演出(大当り遊技演出)の内容を決定する。また、大当り演出決定手段227は、主制御基板100から当り開始デモ演出コマンド又は当り終了デモ演出コマンドを受信した場合、決定された特別遊技演出の内容に従って、演出表示装置70における当り開始デモ演出および当り終了デモ演出の演出処理を制御する。
以上、演出統括手段220は、前記決定された演出内容(変動演出パターン、予告演出パターン、停止図柄パターンなど)に基づき画像および音響に関する画像制御コマンドを生成して、これをサブメイン情報記憶手段260のコマンド格納領域に格納する。
ランプ演出制御手段230は、演出統括手段220にて設定された演出内容に従って演出ランプの点灯や発光色等を制御する。ランプ演出制御手段230は、演出ランプLP(枠ランプ10、盤ランプ25)を点灯制御するための複数種のランプデータ(ランプパターンデータ)を保持しており、前記決定した演出パターンに応じたランプデータを読み出して、このランプ制御信号(ランプデータ)をランプ接続基板91へ送信する。
役物演出制御手段240は、演出統括手段220にて設定された演出内容に従って各可動役物24の駆動を制御する。役物演出制御手段240は、可動役物24を駆動制御するための複数種の駆動データを保持しており、前記決定した演出パターンに応じた駆動制御信号(駆動データ)をモータドライバ92へ送信する。
エラー演出制御手段250は、主制御基板100からエラー演出指定コマンドを受信した場合にエラー演出パターンを決定し、遊技機にエラー状態が発生したことを当該エラー演出パターンに従って報知するように構成されている。
サブメイン情報記憶手段260は、装飾図柄の情報、変動演出パターンの情報、予告演出パターンの情報、制御コマンドの情報等を一時記憶するように構成されており、各情報を記憶するための所定の記憶領域を備えている。例えば、コマンド格納領域には、主制御基板100からの演出制御コマンドを格納するための演出制御コマンドバッファ、画像制御基板300への画像制御コマンドを格納するための画像制御コマンドバッファ、画像制御基板300からのACKコマンドを格納するためのACKコマンドバッファを含む。各コマンドバッファはそれぞれリングバッファから構成されており、所定数の演出制御コマンド、画像制御コマンド、ACKコマンドをそれぞれ格納可能である。
コマンド送受信手段270は、主制御基板100から送信された演出制御コマンドを受信し、この演出制御コマンドを演出制御コマンドバッファに格納するように構成されている。コマンド送受信手段270は、主制御基板100からの前述のストローブ信号の入力に基づき割込みを発生させて演出制御コマンドの受信割込み処理(詳細後述)を実行し、この割込み処理において各種の演出制御コマンドを取得するようになっている。なお、コマンド送受信手段270は、ストローブ信号を受信した場合には、この演出制御コマンドの受信割込み処理を他の割込み処理(後述する優先レベル7未満の割込み処理)よりも優先的に行うようになっている。
また、コマンド送受信手段270は、演出統括手段220にて設定された演出内容(変動演出パターン情報、予告演出パターン情報、装飾図柄情報など)の実行を指示すべく、サブメイン情報記憶手段260に格納された画像制御コマンドをシリアル通信方式にて画像制御基板300へ送信する。画像制御コマンドは、原則として、サブメイン情報記憶手段260のコマンド格納領域にセットされた順番に従って所定の周期(本例では500μs)毎に送信される。これにより、画像制御基板300は、演出制御基板200から送信された各種の画像制御コマンドを解析し、変動演出パターンのシナリオに沿って演出表示装置70に装飾図柄を含む演出画像を変動表示させるとともに、変動表示過程の各段階で図柄変動の演出に重畳させたかたちで予告演出を表示させる。さらに、コマンド送受信手段270は、画像制御基板300から送信されたACKコマンドを受信し、このACKコマンドをACKコマンドバッファに格納するようになっている。
[主制御基板側の処理]
次に、図8〜図22のフローチャートを参照しながら、主制御基板100における動作処理の手順について説明する。主制御基板100側の処理は、主制御側メイン処理と、主制御側タイマ割込み処理と、を含んで構成される。
《主制御側メイン処理》
図8〜図9は主制御基板100の主制御側メイン処理を示すフローチャートである。この主制御側メイン処理では、電源投入時のリセットによりメインCPU101のセキュリティチェックが行われた後、プログラムがスタートして、S1以降の処理が開始される。
まず、電源投入時に必要な初期設定として、スタックポインタにスタック領域の初期値として先頭アドレスを設定するとともに(S1)、RAM103のアクセス許可を行う(S2)。続いて、タイマ割込みが発生した場合に処理するプログラムの先頭アドレスが格納されたベクタテーブルを設定し(S3)、メインCPU101の内蔵レジスタに初期値を設定する(S4)。
続いて、RAMクリアスイッチがオンされているか否かを判定する(S5)。RAMクリアスイッチがオンされている場合(S5:YES)には、後述するS9でRAM103の全領域がゼロクリアされる。他方、RAMクリアスイッチがオンされていない場合(S5:NO)には、電源断情報フラグの値を読み込んで、電源断正常の情報が保存されているか否かを判定する(S6)。
ここで、電源断正常の情報が保存されている場合(S6:YES)には、RAM103の所定領域を対象としてチェックサムを算出する(S7)。そして、このチェックサムが0であるか否か、すなわち、チェックサムが正常であるか否かを判定する(S8)。なお、ここで算出される電源投入時のチェックサムには、後述の電源断時処理で算出されるチェックサムの補数が含まれているため、正常にバックアップされていれば、電源投入時のチェックサムは「0」となる。このように、電源断前にRAM103に記憶されていた情報が正しくバックアップされているか否かを電源投入時に判断する。このとき、チェックサムが正常である場合(S8:YES)には、電源断前の状態に復帰すべく、後述するS12に移行する。他方、チェックサムが異常である場合に(S8:NO)には、RAM103の全領域をゼロクリアする(S9)。次に、RAM103に電源投入時の初期化データを設定する(S10)。続いて、演出表示装置70の初期化、演出ランプLPの初期化などを行うため、演出制御基板200への演出制御コマンド(「演出初期コマンド」)を要求する(S11)。
次に、電源断復帰設定処理において、RAM103における、電源投入正常情報の設定、各種エラーの初期設定、払出制御基板400との通信初期設定を順に行う(S12)。ここで、電源投入正常情報の設定としては、電源投入が正しく行われたことを保存するため、電源断情報フラグに電源投入正常データを格納するとともに、電源断発生の情報を初期化するため、電源断確認フラグをオフにする。次に、データ転送元アドレス、データ転送先アドレス、転送バイト数、をセットして、転送バイト数分のデータを転送する(S13)。そして、電源断時における特別図柄遊技ステイタスの値を読み込んで、特別図柄遊技に係る電源断復帰処理を行う(S14)。
続いて、主制御基板100と演出制御基板200との電源断復帰時の演出制御コマンド(「電源断復帰コマンド」)の送信要求を行う(S15)。この電源断復帰コマンドには、通信線の検査、特別図柄の作動状態、確率変動回数、時短回数、入球容易状態回数、変動パターン選択状態、エラー状態に関する情報が含まれている。なお、電源断前の未送信分のコマンド要求はクリアされる。。次に、図柄記憶数コマンド要求処理において、電源断時の第1特別図柄および第2特別図柄の作動保留球数の情報を読み込み、この作動保留球数の情報を含む演出制御コマンドを要求する(S16)。
続いて、普通電動役物622を電源断前の状態(例えば、第2始動口62を開放状態)に戻すための復帰設定を行う(S17)。さらに、特別電動役物642を電源断前の状態(例えば、大入賞口64を開放状態)に戻すための復帰設定を行う(S18)。続いて、特別図柄モードフラグの値を読み込み、電源断時における特別図柄の確率変動機能の作動状態を設定する(S19)。なお、特別図柄モードフラグとは、特別図柄遊技の作動確率(高確率又は低確率)を設定するためのフラグである。次いで、タイマ割込みを起動させるため、主制御マイコン110のCTC回路の初期設定として、所定のカウント値を設定して、タイマ割込みを4ms毎に発生させる(S20)。続いて、タイマ割込み処理の発生を禁止すべく割込み禁止を設定する(S21)。そして、ウォッチドッグタイマのリスタート準備として、クリアワード1(「55H」)を設定する(S22)。
次に、電源断の発生を判定するため、電源断確認フラグの値を読み込み、電源断が発生しているか否かを判定する(S23)。電源断が発生していない場合には、初期値乱数更新処理を実行する(S24)。この初期値乱数更新処理では、この初期値乱数更新処理では、普通図柄当り初期値乱数、特別図柄当りソフト初期値乱数および特別図柄当り図柄初期値乱数を更新する。具体的には、各カウンタの数値を1加算して、数値が最大値を超えた場合には最小値である「0」に戻す。
次に、タイマ割込み処理の発生を許可すべく割込み許可を設定して(S25)、上述の割込みを禁止する処理(S21)に戻り、S21〜S25のループ処理を繰り返し実行する。ここで、タイマ割込み処理は所定の周期ごとに定期的に実行されるが、前回の割込み処理が完了してから次回の割込み処理が発生するまでの間の残余時間を利用して、S21〜S25までの処理を繰り返す。そして、割込み禁止状態において割込み要求があった場合には、S25で割込み許可となったときにタイマ割込み処理が起動することとなる。他方、S23で電源断確認フラグがオンとなっている場合、すなわち、電源断が発生している場合には、S26に移行して、次述する電源断時処理を実行する。
次に、電源断時処理(S26〜S32)として、まず、ウォッチドッグタイマをリスタートさせるべく、クリアワード2(「AAH」)を設定する(S26)。次に、電源断情報フラグの内容が電源投入正常データであるか否かを判定する(S27)。電源投入正常情報である場合(S27:Yes)には、電源断情報フラグに電源断正常データを設定する(S28)。他方、電源投入正常情報でない場合(S27:No)には、電源断情報フラグに電源断異常データを設定して(S29)、S32に移行する。
次に、RAM103の所定領域(チェックサム領域を除く)に対してチェックサムを算出する(S30)。そして、チェックサムデータに対する補数を算出し、この補数の結果値をRAM103のチェックサム領域に設定する(S31)。続いて、RAM103のアクセス禁止設定をして(S32)、電源が落ちるまで処理をループする。
《主制御側タイマ割込み処理》
次に、主制御基板100の主制御側タイマ割込み処理を説明する。図10は、主制御基板100のタイマ割込み処理を示すフローチャートである。このタイマ割込み処理は、遊技制御マイコン110のCTC回路からの一定時間(例えば4ms)毎のクロックパルスにより起動され、上述の主制御側メイン処理に割り込むかたちで実行される。なお、以下で使用する用語として、「条件装置」および「役物連続作動装置」という用語は概念上の制御機器を意味しており、「条件装置」とは、特別図柄遊技で大当りが発生した場合に作動するものであり、「役物連続作動装置」とは、特別電動役物642を連続して複数回作動させることができるものである。
まず、このタイマ割込みが発生すると、メインCPU101内のレジスタの内容をRAM103のスタック領域に退避させた後、割込み動作条件を設定する(S51)。
次に、ウォッチドッグタイマをリスタートさせるべく、クリアワード2(「AAH」)を設定する(S52)。このとき、予め設定されたタイムアウト時間内に、CPU101のWDTクリアレジスタに、クリアワード1、クリアワード2が順に書き込まれることで、ウォッチドッグタイマがクリアされてリスタートされる。すなわち、メインCPU101がプログラムを正常に実行しているときは、定期的にクリアワード1,2が設定されることにより、ウォッチドッグタイマがタイムアウトする前にクリアおよびリスタートされることとなる。他方、ウォッチドッグタイマがタイムアウトすると、ユーザリセットが発生する。
次に、入力処理を実行する(S53)。この入力処理では、主制御基板100に接続されている各種スイッチとして、RAMクリアスイッチ以外のスイッチの情報が読み込まれる。すなわち、第1始動口スイッチ611、第2始動口スイッチ621、作動ゲートスイッチ631、大入賞口スイッチ641、扉開放スイッチ、枠開放スイッチ、裏セット開放スイッチ、磁気センサ、電波センサ、などの入力情報を読み込み、それらの状態判定を行ったうえで、これらの検出情報を格納する。
次に、各種乱数更新処理を実行する(S54)。この各種乱数更新処理では、普通図柄変動パターン乱数および特別図柄変動パターン乱数を更新する。普通図柄変動パターン乱数については、乱数カウンタの数値を1加算して、数値が最大値を超えた場合には最小値である「0」に戻す。他方、特別図柄変動パターン乱数については、前回の乱数から所定値(例えば3511)を減算する。なお、減算した結果が0未満の場合には、減算した結果に所定値(例えば50000)を加算する。
次に、初期値更新型乱数更新処理を実行する(S55)。この初期値更新型乱数更新処理では、普通図柄当り乱数、特別図柄当りソフト乱数および特別図柄当り図柄乱数を更新する。具体的には、各乱数カウンタの数値を1加算して、数値が最大値を超えた場合には最小値である「0」に戻す。また、カウンタの数値が1周した場合には、対応する初期値乱数の値を初期値として設定する。
次に、初期値乱数更新処理を実行する(S56)。この初期値乱数更新処理では、普通図柄当り初期値乱数、特別図柄当りソフト初期値乱数および特別図柄当り図柄初期値乱数を更新する。具体的には、各乱数カウンタの数値を1加算して、数値が最大値を超えた場合には最小値である「0」に戻す。
次に、タイマ減算処理を実行する(S57)。このタイマ減算処理では、ぱちんこ遊技機PMの遊技動作制御に用いる各種タイマの値を減算更新する。例えば、各種タイマの値を割込み周期(本例では4ms)ずつ減算する。なお、各種タイマには、特別図柄表示装置71,72に係る時間(変動時間、確定表示時間)を管理するための特別図柄遊技タイマ、などが含まれる。
次に、第2始動口有効期間設定処理を実行する(S58)。この第2始動口有効期間設定処理では、第2始動口62の入賞有効期間および入賞無効期間を判定し、この判定結果として、第2始動口62の有効期間データ又は無効期間データを設定する。
次に、入賞監視処理を実行する(S59)。この入賞監視処理では、前記入力処理(S53)での第1始動口スイッチ611、第2始動口スイッチ621、作動ゲートスイッチ631、大入賞口スイッチ641の検出情報に基づき、遊技球のスイッチ通過検査を行い、その結果、遊技球が各スイッチを通過したと判断した場合、賞球回数を記憶するとともに、払出制御コマンドの送信要求、などを行う。
次に、賞球制御処理を実行する(S60)。この賞球制御処理では、入賞の種別に対応する賞球個数の指示をすべく払出制御コマンドを払出制御基板400へ送信するとともに、払出制御基板400からの受信データを監視して払出制御基板400との通信検査を行う。
次に、普通図柄作動ゲート監視処理を実行する(S61)。この普通図柄作動ゲート監視処理では、遊技球の作動ゲート63への通過を監視し、作動ゲート63を通過していると判断した場合、普通図柄抽選に係る乱数を作動保留球情報として取得して、最大4個を限度として作動保留球数の更新を行うとともに、普通図柄抽選に係る乱数の記憶を行う。
次に、普通図柄制御処理を実行する(S62)。この普通図柄制御処理では、普通図柄表示装置75又は普通電動役物622に係る一連の処理を行うため、普通図柄遊技ステイタスの値に応じて、普通図柄変動中処理、普通図柄停止図柄表示中処理、普通電動役物作動中処理、普通電動役物作動終了デモ中処理、などを実行する。なお、普通図柄変動中処理では、普通図柄を変動表示又は確定表示させるべく、普通図柄の表示パターン番号データを作成(更新)する。
次に、普通図柄変動開始監視処理を実行する(S63)。この普通図柄変動開始監視処理では、普通図柄の作動状態を監視して、普通図柄の変動開始条件を充足していると判断したとき、普通図柄作動保留球数を1個消化して、普通図柄の当否判定、図柄の判定、変動パターンの判定、変動時間の設定、などを順に行う。
次に、始動口監視制御処理を実行する(S64)。この始動口監視制御処理では、遊技球の第1始動口61および第2始動口62への入賞を監視して、遊技球の入賞があった場合、保留球数の更新、特別図柄抽選に係る乱数記憶、先読み予告演出判定、図柄記憶数のコマンド要求、などを順に行う。
次に、特別図柄制御処理を実行する(S65)。この特別図柄制御処理では、特別図柄表示装置71,72に係る一連の処理として、特別図柄遊技ステイタスの値に応じて、詳細後述する特別図柄変動開始処理(S420)、特別図柄変動中処理(S430)、特別図柄停止図柄表示中処理(S440)、などを実行する。
次に、特別電動役物制御処理を実行する(S66)。この処理では、特別図柄の抽選結果が「大当り」又は「小当り」となった場合に、特別電動役物642に係る動作処理として、特別電動役物642の作動開始および作動終了の設定、大入賞口64の開放時間および開放回数の更新、確率変動機能の作動開始設定、変動時間短縮機能の作動開始設定、変動パターン選択状態の設定、デモ演出のコマンド要求、などを順に実行する。
次に、大入賞口有効期間設定処理を実行する(S67)。この大入賞口有効期間設定処理では、大入賞口64の入賞有効期間および入賞無効期間を判定し、この判定結果として大入賞口64の有効期間データ又は無効期間データを設定する。
次に、特別図柄変動開始監視制御処理を実行する(S68)。この特別図柄変動開始監視制御処理では、第1特別図柄又は第2特別図柄の作動保留球が存在する場合、保留球数を1個消化して、図柄記憶数のコマンド要求、特別図柄の当否判定、特別図柄の図柄判定、確率変動機能の判定、時間短縮機能の判定、特別電動役物の作動パターンの設定、デモ演出時間の設定、などを順に行う。
次に、異常検知処理を実行する(S69)。この異常検知処理では、前記入力処理(S53)での入力情報に基づき、磁気センサによる磁気検知信号、断線短絡電源異常信号、電波センサによる電波検知信号、扉・枠開放信号などを順に検査して、遊技機がエラー状態であるか否かを判定する。エラー状態である場合には、演出制御基板200にエラー表示を要求すべく、当該エラー情報を含む演出制御コマンド(「エラー演出指定コマンド」)を生成する。
次に、入球通過時間異常検出処理を実行する(S70)。この入球通過時間異常検出処理では、入賞検出スイッチのオン信号が連続して所定時間以上検出された場合に、入球通過時間異常を設定して、当該エラー情報を含む演出制御コマンド(「エラー演出指定コマンド」)の要求を行うとともに、外部端子へ出力するためのセキュリティ信号の出力要求を行う。
次に、遊技状態表示処理を実行する(S71)。この遊技状態表示処理では、特別電動役物642が連続して作動する回数(規定ラウンド数)、普通図柄および特別図柄の作動保留球数、などの表示データを作成する。また、前記の異常検知処理で検出したエラー状態の情報を主制御基板100の状態表示灯に表示させるための表示データを作成する。
次に、ハンドル状態信号検査処理を実行する(S72)。このハンドル状態信号検査処理では、発射ハンドル12のタッチセンサからの検出情報に基づき、発射ハンドル12のタッチ状態を監視して、この監視の結果に基づき、演出制御コマンド(ハンドル状態演出のコマンド)を生成する。
次に、LED出力処理を実行する(S73)。このLED出力処理では、特別図柄および普通図柄の表示、保留球数の表示、特別電動役物が連続して作動する回数、エラーの表示などを行うべく、前記の特別図柄制御処理(S65)、異常検知処理(S69)、遊技状態表示処理(S71)等で作成された表示データを、各特別図柄表示装置71,72、普通図柄表示装置75、各特図保留ランプ73,74、普図保留ランプ76、主制御基板100の状態表示灯などに出力するとともに、これら各種表示装置における表示の初期化を行う。
次に、発射制御信号出力処理を実行する(S74)。この発射制御信号出力処理では、払出制御基板400との通信異常又は断線短絡電源異常が検出されていない場合に、払出制御基板400に対して発射許可の信号を出力し、遊技球の発射を許可する。他方、払出制御基板400との通信異常又は断線短絡電源異常が検出されたいる場合には、払出制御基板400に対して発射禁止の信号を出力し、遊技球の発射を禁止する。
次に、試験信号出力処理を実行する(S75)。この試験信号出力処理では、適正な遊技機であるか否かを判定する性能確認試験において、遊技機の動作状態を示す各種の試験信号を作成して、外部の試験装置に出力する。
次に、ソレノイド出力処理を実行する(S76)このソレノイド出力処理では、各電動役物622,642を作動させるべく、前記の普通図柄制御処理(S62)および特別電動役物制御処理(S66)において取得した制御データに基づき、各電動役物ソレノイド623,643に対して励磁信号を出力する。
次に、演出制御コマンド送信処理を実行する(S77)。この演出制御コマンド送信処理では、前記の処理でメイン情報記憶手段180のコマンド格納領域(リングバッファ)に格納された演出制御コマンドの中から、ポインタで指定された演出制御コマンドを読み出して、この演出制御コマンドを演出制御基板200に対して送信する。
次に、外部情報出力処理を実行する(S78)。この外部情報出力処理では、外部端子板を介して、遊技機の動作状態情報を外部情報としてホールコンピュータ等の外部装置に出力する。
次に、退避していたレジスタの内容を復帰させて、メインCPU101を割込み許可状態に設定する(S79)。これにより、主制御側タイマ割込み処理を終了して上記主制御側メイン処理に戻り、次のタイマ割込みが発生するまで主制御側メイン処理を実行する。
なお、主制御側メイン処理中又は割込み処理中に、主制御基板100が電源断(所定の閾値に基づき供給電圧の低下)を検出すると、ノンマスカブル割込みを発生させて、電源断確認フラグをオンにする。そして、元の処理に戻ったうえで、前述の電源断時処理(S26〜S32)を実行することとなる。
≪特別図柄遊技処理≫
次に、主制御側タイマ割込み処理内の特別図柄遊技に係る一連の処理について説明する。特別図柄遊技に係る処理には、前述の始動口監視制御処理(S64)、特別図柄制御処理(S65)、特別電動役物制御処理(S66)、特別図柄変動開始監視制御処理(S68)、などが該当する。
(始動口監視制御処理)
始めに、始動口監視制御処理(S64)について説明する。図11は、始動口監視制御処理(S64)の詳細を示すフローチャートである。
まず、第1始動口61への遊技の入賞を検出したか否かを判定する(S201)。第1始動口61への入賞を検出した場合(S201:YES)には、第1特別図柄の作動保留球数が上限数の4未満であるか否かを判定する(S202)。
第1特別図柄の作動保留球数が4未満である場合(S202:YES)には、第1特別図柄遊技に係る抽選乱数値として、特別図柄当り乱数値、特別図柄当り図柄乱数値、特別図柄変動パターン乱数値、を取得して、各乱数値を入球順に応じて、メイン情報記憶手段180の第1特別図柄保留格納領域(保留n記憶領域)に格納する(S203)。そして、第1特別図柄の作動保留球数の更新として、第1特別図柄保留球数カウンタの値を1加算して(S204)、第1始動口61の入賞チェックを終了する。
続いて、第2始動口62への遊技の入賞を検出したか否かを判定する(S205)。第2始動口62への入賞を検出した場合(S205:YES)には、第2特別図柄の作動保留球数が上限数の4未満であるか否かを判定する(S206)。第2特別図柄の作動保留球数が4未満である場合(S206:YES)には、第2特別図柄遊技に係る抽選乱数値として、特別図柄当り乱数値、特別図柄当り図柄乱数値、特別図柄変動パターン乱数値、を取得して、各乱数値を入球順に応じて、メイン情報記憶手段180の第2特別図柄保留格納領域(保留n記憶領域)に格納する(S207)。そして、第2特別図柄の作動保留球数の更新として、第2特別図柄保留球数カウンタの値を1加算して(S208)、第2始動口62の入賞チェックを終了する。
続いて、第1特別図柄又は第2特別図柄の作動保留球数の更新があったか否か、すなわち、S204又はS208にて第1特別図柄又は第2特別図柄の作動保留球数が加算されたか否かを判定する(S209)。作動保留球数の更新があった場合(S209:YES)には、第1特別図柄および第2特別図柄の作動保留球数の情報を含む図柄記憶数コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S210)。
次いで、遊技機の状態を確認し、先読み予告演出の事前判定タイミングであるか否かを判定する(S211)。前述したように、事前判定タイミングとは、(1)当り待ち中、且つ、電チューサポート機能が未作動中に第1特別図柄の作動保留球を取得した場合、(2)当り待ち中、かつ、電チューサポート機能が作動中に第2特別図柄の作動保留球を取得した場合、(3)大当り中又は小当り中に第2特別図柄の作動保留球を取得した場合、のうちのいずれかを満足するときである。事前判定タイミングである場合(S211:YES)には、保留n記憶領域の当り乱数バッファから特別図柄当り乱数値を読み出して、当否事前判定を行う(S212)。そして、この判定結果の情報(予告番号)を含む当否事前判定コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S213)。
また、保留n記憶領域の当り図柄乱数バッファから特別図柄当り図柄乱数値を読み出して、図柄事前判定を行う(S214)。そして、この判定結果の情報(予告番号)を含む図柄事前判定コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S215)。さらに、保留n記憶領域の変動パターン乱数バッファから特別図柄変動パターン乱数値を読み出して、変動パターン事前判定を行う(S216)。そして、この判定結果の情報(予告番号)を含む変動パターン事前判定コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S217)。
(特別図柄変動開始監視制御処理)
次に、特別図柄変動開始監視制御処理(S68)について説明する。図12は特別図柄変動開始監視制御処理(S68)の詳細を示すフローチャートである。
この特別図柄変動監視監視制御処理(S68)では、第1特別図柄および第2特別図柄のうち、変動開始条件を充足している方の特別図柄側に対して、後述の特別図柄変動開始監視処理(S310)を実行する。なお、第1特別図柄および第2特別図柄の双方が変動開始条件を充足している場合には、前述したように、第2特別図柄側の処理が優先的に実行される。
まず、大当り中又は小当り中であるか否かを判定する(S301)。続いて、第1特別図柄および第2特別図柄の双方が変動待機中であるか、すなわち、第1特別図柄遊技ステイタスおよび第2特別図柄遊技ステイタスが共に「00H(変動待機中)」であるか否かを判定する(S302)。
続いて、第2特別図柄の作動保留球数が「0」であるか否かを判定して(S303)、当該保留球数が「0」でない場合(S303:NO)には、第2特別図柄の変動開始条件が成立しているとみなし、第2特別図柄変動開始監視テーブルのアドレス(以降の処理で使用される各種テーブルのアドレスおよびRAM記憶領域のアドレス)を設定したうえで(S304)、第2特別図柄側の特別図柄変動開始監視処理(S310)に移行する。すなわち、本実施形態では、第2特別図柄の作動保留球が存在する場合には、第1特別図柄の作動保留球の存在の有無に拘わらず、第2特別図柄の作動保留球が優先的に消化されるようになっている。
他方、第2特別図柄の作動保留球数が「0」である場合(S303:YES)には、第1特別図柄の作動保留球数が「0」であるか否かを判定する(S305)。ここで、当該保留球数が「0」でない場合(S305:NO)には、第1特別図柄の変動開始条件が成立しているとみなし、第1特別図柄変動開始監視テーブルのアドレス(以降の処理で使用される各種テーブルのアドレスおよびRAM記憶領域のアドレス)を設定したうえで(S306)、第1特別図柄側の特別図柄変動開始監視処理(S310)に移行する。
なお、第1特別図柄および第2特別図柄の変動開始条件が共に成立していない場合(S301:YES,S302:NO,S305:YES)には、特別図柄変動開始監視処理(S310)をスキップする。
(特別図柄変動開始監視処理)
次に、特別図柄変動開始監視処理(S310)について説明する。図13は、特別図柄変動開始監視処理(S310)の詳細を示すフローチャートである。
この特別図柄変動開始監視処理(S310)では、上述のS304又はS306で設定された第1特別図柄変動開始監視テーブル又は第2特別図柄変動開始監視テーブルを参照して、今回の変動開始の対象となる特別図柄側の処理が実行されることとなるが、第1特別図柄側と第2特別図柄側とで処理の仕方は共通するので、特段の場合を除き、第1特別図柄側の処理であるのか、第2特別図柄側の処理であるのかを区別せずに一纏めにして説明する。
まず、今回の変動開始の対象となる特別図柄側の作動保留球数を1減算する(S311)。そして、減算後の第1特別図柄および第2特別図柄の作動保留球数の情報を含む図柄記憶数コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S312)。続いて、今回の変動開始の対象となる特別図柄側の特別図柄保留格納領域にアクセスして、最先の保留記憶領域(保留1記憶領域)に格納された特別図柄当り乱数値、特別図柄当り図柄乱数値、特別図柄変動パターン乱数値を順に読み出し、これらの乱数値を、後述の特別図柄当否判定処理(S320)、図柄判定処理(S330)、変動パターン選択処理(S423)に使用するため、メイン情報記憶手段180の特別図柄当否判定領域、特別図柄図柄判定領域、特別図柄変動パターン判定領域に転送する(S313)。また、保留記憶領域の更新として、保留2記憶領域〜保留4記憶領域に格納された保留球情報を下位の保留記憶領域にシフトするとともに、保留4記憶領域をゼロクリアする(S314)。
続いて、特別図柄当否判定処理を実行する(S320)。特別図柄当否判定処理(S320)では、まず、特別図柄当否抽選テーブルを取得する。このとき、遊技状態が特別図柄確変状態である場合は高確率の当否抽選テーブルを取得し、遊技状態が通常状態である場合は低確率の当否抽選テーブルを取得する。次いで、メイン情報記憶手段180の特別図柄当否判定領域から特別図柄当り乱数値を読み出す。そして、特別図柄当否抽選テーブルを参照して、特別図柄当り乱数値に基づき、特別図柄の当否判定を実行する。また、この当否判定結果に対応した値(大当りデータ「55H」、小当りデータ「33H」、はずれデータ「00H」)をメイン情報記憶手段180の特別図柄判定フラグに格納する。
続いて、図柄判定処理を実行する(S330)。図柄判定処理(S330)では、当否判定の結果に応じて、特別図柄の停止図柄、図柄群の種類、キャラクタ演出番号(変動付加図柄情報)を決定する。そして、今回決定した特別図柄の停止図柄、図柄群の種類、キャラクタ演出番号をメイン情報記憶手段180の図柄格納領域に格納する。なお、キャラクタ演出番号は、決定された図柄群の種類(図柄群A〜Lの8パターン)と、特別図柄および普通図柄の確率変動機能の作動状態(特別図柄の確変オン/特別図柄の確変オフ/普通図柄の確変オン/普通図柄の確変オフの4パターン)との組み合わせに基づき、計32パターンなかのいずれかが決定される。なお、当否判定の結果がはずれの場合には、キャラクタ演出番号「0」が決定される。
続いて、当否判定の結果が小当りに該当するか否かを判定するとともに(S341)、当否判定の結果が大当りに該当するか否かを判定する(S342)。当否判定の結果が小当りである場合(S341:YES)は、S347に移行し、当否判定の結果がはずれである場合(S341:NO,S342:NO)は、S349に移行する。
他方、当否判定の結果が大当りである場合(S341:NO,S342:YES)には、S333で決定された図柄群の種類(大当り種別)に基づき、特別遊技後の遊技状態として、特別図柄の確率変動機能を作動させるか否かを判定する(S343)。すなわち、図柄群の種類(大当り種別)が、特定図柄を示すものである場合には確率変動機能を付与することを決定し、図柄群の種類が通常図柄を示すものである場合には確率変動機能を付与しないことを決定する。この判定結果は、メイン情報記憶手段180の確率変動判定フラグに記憶される。
また、S333で決定された図柄群の種類(大当り種別)に基づき、特別遊技後の遊技状態として、変動時間短縮機能の作動回数を決定するとともに(S344)、電チューサポート機能の作動回数を決定する(S345)。この判定結果(変動時間短縮機能の作動回数情報、電チューサポート機能の作動回数情報)は、メイン情報記憶手段180の時短回数格納領域および入球容易状態回数格納領域に記憶される。
続いて、S333で決定された図柄群の種類(大当り種別)に基づき、特別電動役物642の作動パターンを設定する(S346)。具体的には、特別電動役物642の作動パターンとして、ラウンド遊技の規定ラウンド数(本例では、16ラウンド、12ラウンド、2ラウンド)、大入賞口64の最大開放時間(本例では、30秒、0.05秒)などを設定する。
次いで、S333で決定された図柄群の種類と現在の遊技状態とに基づき、特別遊技終了後又は小当り遊技後の変動パターン選択状態を設定する(S347)。続いて、S333で決定された図柄群の種類に基づき、特別遊技又は小当り遊技のデモ演出時間(当り開始デモ時間および当り終了デモ時間)を設定する(S348)。次いで、前述の特別図柄当否判定処理(S320)および図柄判定処理(S330)で使用したメイン情報記憶手段180の特別図柄当否判定領域および特別図柄図柄判定領域をクリアする(S349)。そして、今回の変動対象となる特別図柄側の特別図柄遊技ステイタスを「00H(待機中)」から「01H(変動開始)」に遷移する(S350)。
(特別図柄制御処理)
次に、特別図柄制御処理(S65)について説明する。図14は、特別図柄制御処理(S65)の詳細を示すフローチャートである。
まず、特別電動役物642が未作動中であるか否か、すなわち、特別電動役物遊技ステイタスが「00H(当り待ち状態)」であるか否かを判定する(S401)。続いて、特別電動役物642が未作動中である場合(S401:YES)には、第2特別図柄遊技ステイタスが「00H(待機中)」でないか否かを判定する(S402)。
第2特別図柄遊技ステイタスが「00H(待機中)」でない場合(S402:YES)には、第2特別図柄に係る処理を実行するため、第2特別図柄制御テーブル(以降の処理で使用される各種テーブルのアドレスおよびRAM記憶領域のアドレス)を設定して(S403)、特別図柄制御汎用処理(S410)に移行する。他方、第2特別図柄遊技ステイタスが「00H(待機中)」である場合(S402:NO)には、第1特別図柄に係る処理を実行するため、第1特別図柄制御テーブル(以降の処理で使用される各種テーブルのアドレスおよびRAM記憶領域のアドレス)を設定して(S404)、特別図柄制御汎用処理(S410)に移行する。
なお、次述する特別図柄制御汎用処理(S410)では、上述のS403又はS404で設定された第1特別図柄制御テーブル又は第2特別図柄制御テーブルを使用して、今回の変動の対象となる特別図柄側の処理が実行されることとなるが、第1特別図柄側と第2特別図柄側とで処理の仕方は共通するので、特段の場合を除き、第1特別図柄側の処理であるのか、第2特別図柄側の処理であるのかを区別せずに一纏めにして説明する。
(特別図柄制御汎用処理)
続いて、特別図柄制御汎用処理を実行する(S410)。ここで、図15は、特別図柄制御汎用処理(S410)の詳細を示すフローチャートである。
この特別図柄制御汎用処理(S410)では、特別図柄遊技ステイタスの値(「01H」,「02H」,「03H」)に応じた処理に移行するための分岐処理(S411〜S414)を実行する。まず、今回の変動の対象となる特別図柄側の特別図柄遊技ステイタスが0でないか否かを判定する(S411)。特別図柄遊技ステイタスが「00H」でない場合(S411:YES)には、特別図柄遊技ステイタスが「01H(変動開始)」であるか否かを判定する(S412)。特別図柄遊技ステイタスが「01H」である場合(S412:YES)には、特別図柄変動開始処理(S420)に移行する。S412でNOの場合には、特別図柄遊技ステイタスが「02H(変動中)」であるか否かを判定する(S413)。特別図柄遊技ステイタスが「02H」である場合(S413:YES)には、特別図柄変動中処理(S430)に移行する。S413でNOの場合には、特別図柄遊技ステイタスが「03H(停止図柄表示中)」であるか否かを判定する(S414)。特別図柄遊技ステイタスが「03H」である場合(S414:YES)には、特別図柄停止図柄表示中処理(S440)に移行する。
(特別図柄変動開始処理)
次に、特別図柄変動開始処理(S420)について説明する。図16は、特別図柄変動開始処理(S420)の詳細を示すフローチャートである。
まず、当否抽選の結果および変動パターン選択状態等に基づき、特別図柄変動パターンテーブルを取得する(S421)。続いて、メイン情報記憶手段180の特別図柄変動パターン判定領域から特別図柄変動パターン乱数値を読み出す(S422)。そして、特別図柄変動パターンテーブルを参照して、特別図柄変動パターン乱数値に基づき、複数種の変動パターンの中からいずれかを選択する(S423)。
次いで、今回選択された変動パターンに対応する変動時間を設定する(S424)。そして、特別図柄の変動開始の設定として、図柄表示制御手段165の特別図柄遊技タイマに変動時間を格納するとともに(S425)、演出制御基板200への変動開始コマンドを生成する(S426)。変動開始コマンドとしては、主制御基板100と演出制御基板200との通信線の検査および演出表示を開始させるため、通信検査コマンド、変動付加図柄情報指定コマンド、変動パターン指定コマンド、キャラクタ演出番号指定コマンドを順に作成して、これをメイン情報記憶手段180のコマンド格納領域に記憶する。
続いて、変動パターンの決定に使用したメイン情報記憶手段180の特別図柄変動パターン判定領域の内容をクリアする(S427)。そして、特別図柄遊技ステイタスを「01H(変動開始)」から「02H(変動中)」に遷移する(S428)。
(特別図柄変動中処理)
次に、特別図柄変動中処理(S430)について説明する。図17は、特別図柄変動中処理(S430)の詳細を示すフローチャートである。
まず、特別図柄の変動表示を行うため、特別図柄の表示パターン番号切替処理を実行する(S431)。この表示パターン番号切替処理(S431)では、所定の切替時間毎に、特別図柄の表示パターン番号データを生成する。この表示パターン番号データは、特別図柄を変動表示又は確定表示させるべく、LED出力処理(S73)において、第1特別図柄表示装置71又は第2特別図柄表示装置72に出力される。
次いで、特別図柄遊技タイマが「0(タイムアウト)」となったか否か、すなわち、特別図柄の変動時間が終了したか否かを判定する(S432)。特別図柄の変動時間が終了した場合(S432:YES)には、第1特別図柄表示装置71又は第2特別図柄表示装置72に確定表示すべき特別図柄の停止図柄を設定する(S433)。続いて、演出制御基板200に対して装飾図柄の確定表示を指示するための変動停止コマンドを生成し、これをメイン情報記憶手段180のコマンド格納領域に格納する(S434)。
次いで、特別図柄遊技タイマに確定表示時間として「500(ms)」を格納する(S435)。なお、「確定表示時間」とは、特別図柄の変動停止の際に、停止図柄を確定的に停止表示させる時間である。そして、特別図柄遊技ステイタスを「02H(変動中)」から「03H(停止図柄表示中)」に遷移する(S436)。
(特別図柄停止図柄表示中処理)
次に、特別図柄停止図柄表示中処理(S440)について説明する。図18〜図19は、特別図柄停止図柄表示中処理(S440)の詳細を示すフローチャートである。
まず、特別図柄遊技タイマが「0(タイムアウト)」となったか否か、すなわち、特別図柄(停止図柄)の確定表示時間が終了したか否かを判定する(S441)。ここで、特別図柄の確定表示時間が終了した場合(S441:YES)には、特別図柄遊技ステイタスを「03H(停止図柄表示中)」から「00H(待機中)」に遷移する(S442)。
続いて、メイン情報記憶手段180の特別図柄判定フラグに格納された当否判定データが大当りデータ「55H」であるか否かを判定する(S443)。当否判定データが大当りデータである場合(S443:YES)には、特別図柄の確率変動機能の作動停止(S444)、特別図柄の変動時間短縮機能の作動停止(S445)、電チューサポート機能の作動停止(S446)、を順に行う。具体的には、特別図柄モードフラグに「00H(未作動)」を設定するとともに、時短回数カウンタおよび入球容易状態回数カウンタに「00H」を設定してゼロクリアする。
次いで、特別遊技の当り開始デモ設定処理として、当り開始デモ表示時間を設定するとともに、当り開始デモ演出の開始を指示する演出制御コマンド(当り開始デモコマンド)を生成する(S447)。続いて、変動パターン選択状態の実行回数(変動パターン選択状態回数カウンタ)をゼロクリアする(S448)。また、特別電動役物遊技ステイタスを「00H(当り待ち状態)」から「01H(特別遊技)」に遷移する(S449)。そして、当否判定フラグの内容をクリアするため、「00H」を設定する(S450)。
他方、当否判定データが大当りデータでない場合(S443:NO)には、特別図柄の確率変動機能が作動中であるか否かを判定する(S451)。特別図柄の確率変動機能が作動中である場合(S451:YES)には、今回の特別図柄の変動回数の消化分として、メイン情報記憶手段180の確率変動回数カウンタを1減算する(ステップS452)。続いて、確率変動回数カウンタがゼロであるか否かを判定する(ステップS453)。確率変動回数カウンタがゼロである場合(S453:YES)には、特別図柄の確率変動機能の作動を停止する(S454)。減算後の確率変動回数カウンタがゼロでない場合(S453:NO)には、S454をスキップして、S455に移行する。
次いで、特別図柄の変動時間短縮機能が作動中であるか否かを判定する(S455)。特別図柄の変動時間短縮機能が作動中である場合(S455:YES)には、今回の特別図柄の変動回数の消化分として、メイン情報記憶手段180の時短回数カウンタを1減算する(ステップS456)。続いて、時短回数カウンタがゼロであるか否かを判定する(ステップS457)。時短回数カウンタがゼロである場合(S457:YES)には、特別図柄時短状態の終了回数に到達したとして、特別図柄の変動時間短縮機能の作動を停止する(S458)。減算後の時短回数カウンタがゼロでない場合(S457:NO)には、S458をスキップして、S459に移行する。
次いで、電チューサポート機能が作動中であるか否かを判定する(S459)。電チューサポート機能が作動中である場合(S459:YES)には、今回の特別図柄の変動回数の消化分として、メイン情報記憶手段180の入球容易状態回数カウンタを1減算する(ステップS460)。続いて、入球容易状態回数カウンタがゼロであるか否かを判定する(ステップS461)。入球容易状態回数カウンタがゼロである場合(S461:YES)には、入球容易状態の終了回数に到達したとして、電チューサポート機能の作動を停止する(S462)。減算後の入球容易状態回数カウンタがゼロでない場合(S461:NO)には、S462をスキップして、S463に移行する。
次いで、メイン情報記憶手段180の変動パターン選択状態回数カウンタを1減算する(S463)。そして、変動パターン選択状態を更新する(S464)。具体的には、メイン情報記憶手段180の変動パターン選択状態回数カウンタを参照し、現在の変動パターン選択状態の実行回数が予め設定された終了回数に達したか否かを判定し、終了回数に達している場合には、次に規定された変動パターン選択状態に切り替える。他方、終了回数に達していない場合には、現在の変動パターン選択状態を維持する。
次いで、前述のS451〜S464にて更新された現在の遊技状態情報および変動パターン選択状態情報を含む演出制御コマンド(遊技状態指定コマンド)を生成して、これをメイン情報記憶手段180のコマンド格納領域に格納する(S465)。なお、演出制御基板200側では、この遊技状態指定コマンドの情報に基づき、演出モードの設定および更新を実行する。
続いて、特別図柄判定フラグに小当りデータ「33H」が格納されているか否かを判定する(S466)。小当りデータが格納されている場合(S466:YES)には、小当り遊技の当り開始デモ設定処理として、当り開始デモ表示時間を設定するとともに、当り開始デモ演出の開始を指示する演出制御コマンドを生成する(S467)。続いて、特別電動役物遊技ステイタスを「00H(当り待ち状態)」から「02H(小当り遊技)」に遷移する(S468)。そして、当否判定フラグの内容をクリアするため「00H」を設定する(S469)。
他方、特別図柄判定フラグに小当りデータ「33H」が格納されていない場合(S466:NO)、すなわち、、特別図柄判定フラグにはずれデータ「00H」が格納されている場合には、S467〜S469をスキップする。なお、特別図柄判定フラグがはずれデータである場合に、当該フラグの内容をクリアする処理をしなかったのは、もともとはずれデータとして「00H」が格納されているからである。
(特別電動役物制御処理)
次に、特別電動役物制御処理(S66)について説明する。図20〜図22は、電動役物制御処理(S66)の詳細を示すフローチャートである。
まず、特別電動役物遊技ステイタスが「01H(特別遊技)」であるか否かを判定する(S501)。特別電動役物遊技ステイタスが「01H」である場合(S501:YES)には、以降の処理において特別遊技処理を実行する。この特別遊技処理において、まず、特別電動役物642が作動中であるか否かを判定する(S502)。特別電動役物642が作動していない場合(S502:NO)には、特別電動役物642の作動開始時間であるか否かを判定する(S503)。特別電動役物642の作動開始時間とは、各ラウンド遊技おいて特別電動役物642の作動を開始するタイミングである。
特別電動役物642の作動開始時間である場合(S503:YES)には、特別電動役物642の作動を開始して(S504)、特別電動役物642の作動中の処理として、S505〜S509の処理を実行する。
特別電動役物642の作動中の処理として、大入賞口64に遊技球が最大入賞数だけ入賞したか否かを判定するとともに(S505)、特別電動役物642の作動時間(開放時間)が経過したか否かを判定する(S506)。このとき、大入賞口64に遊技球が最大入賞数だけ入賞した場合(S505:YES)又は特別電動役物642の作動時間が経過した場合(S506:YES)には、特別電動役物642の作動を停止させる(S507)。そして、特別電動役物642の連続作動回数が予め定められた規定ラウンド数に達したか否かを判定する(S508)。連続作動回数が規定ラウンド数に達していない場合(S508:NO)には、特別電動役物642の連続作動回数を1インクリメントする(S509)。
他方、特別電動役物642の連続作動回数が規定ラウンド数に達している場合(S508:YES)には、S510に移行して、特別遊技の当り終了デモ設定処理として、当り終了デモ表示時間を設定するとともに、当り終了デモ演出の開始を指示する演出制御コマンド(当り終了デモコマンド)を生成する(S510)。
続いて、時短回数カウンタに、上記S344で設定した変動時間短縮回数情報を格納する(S511)。また、入球容易状態回数カウンタに、上記S345で設定した入球容易状態回数情報を格納する(S512)。
続いて、上記S343で設定された確率変動判定フラグの内容を参照して、条件装置の作動が特定図柄(いわゆる確変図柄)による作動であるか否かを判定する(S513)。特定図柄による条件装置の作動である場合(S513:YES)には、メイン情報記憶手段180の確率変動回数カウンタに作動時データ「7FH」を格納して、特別図柄の確率変動機能の作動を開始する(S514)。他方、特定図柄による条件装置の作動でない場合(S513:NO)には、確率変動回数カウンタに未作動時データ「00H」を格納して、S514をスキップする。
続いて、時短回数カウンタに記憶された変動時間短縮回数情報が変動時間短縮機能作動データ(「00H」以外のデータ)であるか否かを判定する(S515)。変動時間短縮機能作動データである場合(S515:YES)には、特別図柄の変動時間短縮機能の作動を開始する(S516)。他方、変動時間短縮機能作動データでない場合(S515:NO)には、S516をスキップする。
続いて、入球容易状態回数カウンタに記憶された入球容易状態回数情報が電チューサポート機能作動データ(「00H」以外のデータ)であるか否かを判定する(S517)。電チューサポート機能作動データである場合(S517:YES)には、電チューサポート機能の作動を開始させる(S518〜S520)。すなわち、普通図柄の確率変動機能の作動開始(S518)、普通図柄の変動時間短縮機能の作動開始(S519)、普通電動役物622の開放延長機能の作動開始(S520)、を順に実行する。他方、電チューサポート機能作動データでない場合には、S518〜S520をスキップする。
次いで、上記S347で決定した変動パターン選択状態に切り替える(S521)。続いて、前述のS511〜S521にて設定された特別遊技後の遊技状態情報および変動パターン選択状態情報を含む演出制御コマンド(遊技状態指定コマンド)を生成して、これをメイン情報記憶手段180のコマンド格納領域に格納する(S522)。なお、演出制御基板200側では、この遊技状態指定コマンドの情報に基づき、特別遊技後の演出モードを設定する。そして、特別電動役物遊技ステイタスを「01H(特別遊技)」から「00H(当り待ち状態)」に遷移する(S523)。
他方、特別電動役物遊技ステイタスが「01H(特別遊技)」でない場合(S501:NO)には、S530に移行して、特別電動役物遊技ステイタスが「02H(小当り遊技)」であるか否かを判定する(S530)。特別電動役物遊技ステイタスが「02H」である場合(S530:YES)には、以降の処理で小当り遊技処理を実行する。
小当り遊技処理において、まず、特別電動役物642が作動中であるか否かを判定する(S531)。特別電動役物642が作動していない場合(S531:NO)には、特別電動役物642の作動を開始する(S532)。他方、特別電動役物642が作動中である場合(S531:YES)には、S532をスキップする。
続いて、特別電動役物642の作動中の処理として、大入賞口64に遊技球が最大入賞数だけ入賞したか否かを判定するとともに(S533)、特別電動役物642の作動時間(開放時間)が経過したか否かを判定する(S534)。このとき、大入賞口64に遊技球が最大入賞数だけ入賞した場合(S533:YES)又は特別電動役物642の作動時間が経過した場合(S534:YES)には、特別電動役物642の作動を停止する(S535)。
続いて、小当り遊技の当り終了デモ設定処理として、当り終了デモ表示時間を設定するとともに、当り終了デモ演出の開始を指示する演出制御コマンド(当り終了デモコマンド)を生成する(S536)。次いで、上記S347で決定した変動パターン選択状態に切り替える(S537)。続いて、上記S537にて設定された特別遊技後の変動パターン選択状態情報を含む演出制御コマンド(遊技状態指定コマンド)を生成して、これをメイン情報記憶手段180のコマンド格納領域に格納する(S538)。この遊技状態指定コマンドは、演出制御基板200側で、演出モードの移行契機の判定、移行先の演出モードの特定などに用いられる。そして、特別電動役物遊技ステイタスを「01H(特別遊技)」から「00H(当り待ち状態)」に遷移する(S538)。
[演出制御基板側の処理]
次に、図23〜図34のフローチャートを参照しながら、演出制御基板200における動作処理の手順について説明する。演出制御基板200側の処理は、電源投入後などサブメインCPU201がリセットされると実行されるリセット開始処理(演出制御側メイン処理を含む)と、一定周期毎に起動される演出制御側タイマ割込み処理と、主制御基板100からのストローブ信号に起因して起動される演出制御コマンドの受信割込み処理と、変動演出パターンのタイムスケジュールに規定された所定の発生時期の到来を契機として起動されるランプ演出割込み処理と、一定周期毎に起動される画像制御コマンドの送信割込み処理と、ACKコマンドの受信を契機として起動されるACKコマンドの受信割込み処理と、を含んで構成される。
各割込み処理(例外処理)には、複数の割込み処理が発生したときの優先度を示す優先レベルが設定されている。図35は、割込み処理の優先レベルを説明するための模式図である。本例では、「電源リセットによるリセット開始処理(図23):最優先」、「各種異常時によるリセット開始処理(図23):最優先」→「演出制御コマンドの受信割込み処理(図30):レベル7」→「WDT(暴走検知時)によるリセット開始処理(図23):レベル3」→「画像制御コマンドの送信割込み処理(図33):レベル2」、「ACKコマンドの受信割込み処理(図34):レベル2」→「演出制御側タイマ割込み処理(図31):レベル1」、「ランプ演出割込み処理(図28):レベル1」などの順に、優先レベルの順位付けがされている。なお、「各種異常時によるリセット開始処理」は、例えば、CPU201が不正な命令を実行したとき、CPU201が不正な領域又は不正な方法にてアクセスしようとしたとき、DMA(Direct Memory Access)転送中のエラーが発生したときなどに起動する。本実施形態では、上記の複数種の割込み処理を例示しているが、実際にはその他の割込み処理も存在する。
演出制御側メイン処理内では、基本的には、全割込み禁止又は演出制御コマンド受信割込み以外の割込み禁止のいずれかの状態に設定したうえで処理が進められる。その上で、演出制御側メイン処理が割込み許可状態となった場合に、当該メイン処理を中断させるかたちで各割込み処理が起動される。各割込み処理では、当該割込み処理の実行中に他の割込み処理の要求があった(多重割込みが発生した)ときは、実行中の割込み処理よりも優先レベルの高い割込み処理であれば、原則的には当該割込み要求が許可される一方、実行中の割込み処理よりも優先レベルの低い又は優先レベルの同じ割込み処理である場合には当該割込み要求が禁止される。すなわち、各割込み処理は、優先レベルの同じ又は優先レベルの低い他の割込みを禁止した状態で処理が進められる。そして、各割込み処理から演出制御側メイン処理へは、全割込み許可の状態で戻ってくる。なお、このような割込み要因の優先順位(優先レベル)は、演出制御マイコン210(割込みコントローラ)のレジスタ設定によって規定される。
《リセット開始処理》
まず、演出制御基板200のリセット開始処理について説明する。図23は演出制御基板200のリセット開始処理を示すフローチャートである。このリセット開始処理では、電源投入時のリセット、各種異常時を起因としたリセット、WDT(暴走検知時)を起因としたリセットのいずれかにより起動し、サブメインCPU201のセキュリティチェックが行われた後、プログラムがスタートして、S601以降の処理が開始される。
まず、電源投入時に必要な初期設定として、スタックポインタにスタック領域の初期値として先頭アドレスを設定する(S601)。そして、各種初期設定が完了するまで全ての割込み処理を禁止する(S602)。
続いて、ハードウェアに関する基本的な設定として、サブメインCPU201内に設けられている内蔵レジスタに初期値を設定するとともに、I/Oポート回路204を初期化する(S603)。さらに、演出制御マイコン210のRAM203内のメモリ領域を初期化する(S604)。ここでは、初期値付きの変数には初期値を設定し、初期値なしの変数には0クリアによる初期化を行う。また、サブメインCPU201がROM202に記憶された制御プログラムをRAM203に適宜展開する。
続いて、演出制御コマンドの受信割込み処理以外の割込みを禁止する(S605)。次いで、予め各機種共通で設定された各種のエラーのうち、当該機種で有効とすべきエラーの種別を設定する処理を行う(S606)。さらに、演出ランプLP(枠ランプ10、盤ランプ25)を全消灯状態とするため消灯リクエストを行う(S607)。そして、サブメインCPU201の暴走を監視するためウォッチドッグタイマを起動する(S608)。
続いて、遊技演出の主たる処理として演出制御側メイン処理を実行する(S609)。この演出制御側メイン処理(S609)の詳細は図24を用いて後述する。なお、前記S609で演出制御側メイン処理へ移行すると、メイン処理から当該リセット開始処理へ復帰することは通常はあり得ないが、プログラムのバグ等の発生によって、万が一この処理へ復帰してきた場合には、消費電力が通常作動時よりも低減された小消費電力モード(スリープモード)へ遷移する(S610)。
《演出制御側メイン処理》
次に、演出制御基板200の演出制御側メイン処理(S609)について説明する。図24は演出制御側メイン処理(S609)を示すフローチャートである。
まず、演出制御側メイン処理内で制御プログラムがRAM203で正確に展開されているか否かのチェックを開始するためのアドレス(プログラムが展開された先頭アドレス)を取得する(S611)。続いて、全ての割込みを許可(各種の割込み処理の起動を許可)する(S612)。
次いで、デバイスの初期化動作を実行する(S613)。この初期化動作は、ぱちんこ遊技機PMの電源投入時(リセット開始時)に1度だけ実行される動作態様のことであり、モータ、ソレノイド等のデバイスによって可動役物25A,25B,25Cの動作を制御するために必要となる位置情報を確認することを目的として実行される。なお、初期化動作の終了時には、可動役物25A,25B,25Cは予め設定された初期位置(基準位置)に復帰する。
続いて、ウォッチドッグタイマをリスタートさせるべく、ウォッチドッグタイマをクリアする(S614)。このとき、サブメインCPU201がプログラムを正常に実行しているときは、予め設定されたタイムアウト時間内に、サブメインCPU201のWDTクリアレジスタに、所定のクリアワードが書き込まれることで、ウォッチドッグタイマがクリアされてリスタートされる。他方、ウォッチドッグタイマがタイムアウトすると、ユーザリセットが発生する。
続いて、はずれ図柄更新処理を実行する(S615)。このはずれ図柄更新処理では、RAM203に設定されたはずれ図柄カウンタを更新する。はずれ図柄カウンタは、装飾図柄のはずれ図柄組合せを決定するためのループカウンタであり、例えば「111」〜「999」までの間を1ずつインクリメントして循環動作する。なお、本例では、全ての装飾図柄の組合せ(大当り図柄、小当り図柄、リーチはずれ図柄、非リーチはずれ図柄など)を乱数抽選によって決定するため、この処理は実際には行われない。
続いて、入力ポートチェック処理を実行する(S616)。この入力ポートチェック処理では、後述のタイマ割込み処理におけるポート入出力処理S712でのI/Oポート回路204(入力ポート)の読み込みを割込み発生毎に監視して、複数回(例えば4回)の監視において入力ポートの状態が全て「1」の場合は信号レベルを「1(Hレベル)」、全て「0」の場合は信号レベルを「0(Lレベル)」、それ以外の場合は信号レベルを変化させない(これにより入力信号が確定される)。
続いて、エラー演出管理処理を実行する(S617)。このエラー演出管理処理では、後続のコマンド解析処理(S621)で設定されるエラー演出パターンに基づき、各種デバイスによるエラー演出を開始させる。ここで、エラー演出の一態様であるエラー報知ランプ演出を行うべく、コマンド解析処理(S621)でランプ演出番号が設定された場合(ランプリクエストがある場合)は、このランプ演出番号に対応したランプパターンデータを特定して、エラー報知ランプ演出を開始させる。ランプパターンデータには、1フレーム時間(画像フレームを1回更新するのに要する時間:16ms)毎に対応付けられたランプデータがスケジュールデータとして格納されている。また、このランプパターンデータには、ランプ演出の種別に応じてレイヤ(詳細後述)が設定されている。さらに、エラー演出管理処理では、エラー管理タイマに初期値(エラー演出時間)を設定して、エラー演出の進行を管理する。このエラー管理タイマは、演出制御側タイマ割込み処理のエラー管理タイマ更新処理(S720)にて16ms周期で減算更新される。そして、エラー管理タイマがタイムアウトした場合は、演出ランプLPを消灯させて、エラー演出を終了させる。
続いて、演出ボタン監視制御処理を実行する(S618)。この演出ボタン監視制御処理では、図柄変動中にボタン予告演出を組み込んでいる場合に、操作有効時間内における演出ボタン15の入力状態を監視して、当該ボタン予告演出に応じて予め設定された複数種の演出内容の中から、演出ボタン15の入力状態に応じた演出の内容を決定する。
続いて、予告抽選管理処理を実行する(S619)。この予告抽選管理処理では、後続のコマンド解析処理(S621)で選択される変動演出パターンのシナリオに沿って、装飾図柄の変動過程の各段階で発生する予告演出の内容を定めた予告演出パターン(予告演出番号)を抽選で決定する。ここで決定された予告演出番号は、サブメイン情報記憶手段260の予告演出番号格納領域に一時記憶される。また、この予告演出番号を画像制御基板300側へ指定するための画像制御コマンドを生成する。このとき、予告演出パターンとして、役物予告演出パターン(役物予告演出番号)が選択された場合には、役物リクエストが発生し、後続のデバイス管理処理(S620)にて、可動役物24の駆動パターンが特定される。なお、本例では、装飾図柄の一変動内で発生する複数種の予告演出(予告演出パターン)の全てを、1回のメインループ処理内で抽選するのではなく、当該メインループ処理効率を向上させるため、予告演出の発生時期(例えば、変動開始段階、リーチ発生段階、変動停止段階)毎に分けて、複数回のメインループ処理に跨って抽選する構成となっている。その際、装飾図柄の変動開始段階で発生する予告演出については、装飾図柄の変動開始と同期をとる(画像制御コマンドを早急に送信する)必要があるので、先発のメインループ処理内で抽選を行うようになっている。また、この予告抽選管理処理で予告演出パターンが選択されると、当該予告演出番号を指示するための画像制御コマンドを生成して、これをサブメイン情報記憶手段260の画像制御コマンドバッファに設定する。具体的には、割込み外用のコマンドセット関数「関数名:CmdSet」を呼び出して、画像制御コマンドを画像制御コマンドバッファに設定する処理(コマンドセット処理)を行う。なお、このコマンドセット処理の詳細は図32(A)を用いて後述する。
次に、デバイス管理処理を実行する(S620)。このデバイス管理処理では、各種デバイスの動作要求(ランプリクエスト、役物リクエスト)があった場合、ROM203に記憶された複数種のパターンデータ(ランプパターン、駆動パターン)の中から、演出番号(ランプ演出番号、役物予告演出番号)に対応したパターンデータを特定して、対象デバイスの制御を開始する。演出ランプLPのランプパターンデータには、1フレーム時間(画像フレームを1回更新するのに要する時間:16ms)毎に対応付けられたランプデータがスケジュールデータとして格納されている。このランプパターンデータには、ランプ演出の種別に応じてレイヤ(詳細後述)が設定されている。なお、本例において、1フレーム時間は、演出表示装置70において毎秒約60フレーム(=約60fps)で描画等する場合の1フレームの描画処理に要する時間と対応するものになっている。同様に、可動役物24の駆動パターンデータには、割込み周期(1ms)毎に対応付けられた駆動データがスケジュールデータとして格納されている。これにより、後述する演出制御側タイマ割込み処理にて、各制御データ(ランプデータ、駆動データ等)が対象デバイスに対して一定周期毎に出力され、対象デバイスの動作が開始されることになる。一方、後述の演出制御側タイマ割込み処理において、一連の制御データ(ランプデータ、駆動データ)の出力が全て完了した場合は、演出ランプLPを消灯させ、又は、可動役物24の動作を停止させ、対象デバイスの制御を終了する。
なお、本例では、ランプ演出の種別として、通常ランプ演出(本処理で管理)、プレミアランプ演出(本処理で管理)、エラー報知ランプ演出(上記エラー演出管理処理で管理)が用意されており、各ランプ演出の種別に応じてレイヤ(レイヤ番号)が設定されている。レイヤ番号は、ランプ演出の種別に応じた優先順位を示しており、優先順位の高い順に、エラー報知ランプ演出(レイヤ番号3)>プレミアランプ演出(レイヤ番号2)>通常ランプ演出(レイヤ番号1)となっている。なお、このデバイス管理処理では、二以上のランプリクエストが同時又は異なるタイミングであった場合、そのレイヤ番号に関わらず、対応するランプパターンをそれぞれ特定して、内部的には全てのランプパターンに基づく制御を実行するようになっている。なお、通常ランプ演出、プレミアランプ演出、エラー報知ランプ演出は、互いに演出ランプLPの点灯態様が異なる。
続いて、コマンド解析処理(S621)を実行する。このコマンド解析処理では、サブメイン情報記憶手段260のコマンド格納領域に演出制御コマンドが格納されているか否かを監視し、演出制御コマンドが格納されていればこのコマンドを読み出し、読み出した演出制御コマンドの種別に対応した演出制御処理を実行する。このコマンド解析処理(S621)の詳細は図25を用いて後述する。
そして、今回のループ処理中で、コマンド解析(演出制御コマンドの解析)を実行したか否かを判定する(S622)。コマンド解析直後の場合(S622:YES)は、S614に戻り、次のループ処理へ移行する。一方、コマンド解析を実行しなかった場合(S622:NO)には、演出抽選乱数更新処理を実行する(S623)。この演出抽選乱数更新処理では、先読み予告抽選乱数、装飾図柄乱数、変動演出パターン乱数、予告演出パターン乱数などの演出抽選乱数を更新する。具体的には、各乱数カウンタの数値を1加算して、数値が最大値を超えた場合には最小値に戻す。
(コマンド解析処理)
次に、コマンド解析処理(S621)について説明する。図25は、コマンド解析処理(S621)の詳細を示すフローチャートである。このコマンド解析処理では、主制御基板100からの演出制御コマンドがサブメイン情報記憶手段260のコマンド格納領域に格納されているか否かを監視して、格納された演出制御コマンドの種別に対応した演出制御処理を実行する。
まず、サブメイン情報記憶手段260のコマンド格納領域に遊技状態指定コマンドが格納されているか否かを判定する(S631)。遊技状態指定コマンドが格納されている場合(ステップS631:YES)には、演出状態移行処理(S632)へ移行する。この演出状態移行処理(S632)では、遊技状態指定コマンドに含まれる遊技状態情報および変動パターン選択状態情報に基づき、演出モードを遷移する処理を実行する。
続いて、サブメイン情報記憶手段260のコマンド格納領域にに保留関連コマンドが格納されているか否かを判定する(S633)。ここで、保留関連コマンドには、図柄記憶数コマンド、事前判定コマンドが含まれる。この図柄記憶数コマンドが格納されている場合(S633:YES)には、保留情報管理処理(S634)へ移行する。この保留情報管理処理(S634)では、サブメイン情報記憶手段260から図柄記憶数コマンド又は事前判定コマンドを読み出して、演出表示装置70の保留表示部701,702に表示される保留画像の表示態様(表示個数)を更新するための処理を行う。
次いで、サブメイン情報記憶手段260のコマンド格納領域に図柄変動関連コマンドが格納されているか否かを判定する(S635)。ここで、図柄変動関連コマンドには、変動開始コマンド、変動停止コマンドが含まれる。図柄変動関連コマンドが格納されている場合(ステップS635:YES)には、演出内容決定処理(S636)へ移行する。この演出内容決定処理(S636)では、受信した図柄変動関連コマンドが変動開始コマンドである場合には図柄変動演出を開始させるための処理を実行し、受信した図柄変動関連コマンドが変動停止コマンドである場合には実行中の図柄変動演出を終了させるための処理を実行する。この演出内容決定処理(S636)の詳細は図26を用いて後述する。
続いて、サブメイン情報記憶手段260のコマンド格納領域にに当り演出関連コマンドが格納されているか否かを判定する(S637)。ここで、当り演出関連コマンドには、当り開始デモ演出コマンド、当り終了デモ演出コマンドを含む。当り演出関連コマンドが格納されている場合(ステップS637:YES)には、大当り演出および小当り演出の当り演出表示設定処理(S638)へ移行する。この当り演出表示設定処理(S638)では、大当り開始デモ演出(小当り開始デモ演出)又は大当り終了デモ演出(小当り終了デモ演出)を実行するための処理を行う。
続いて、サブメイン情報記憶手段260のコマンド格納領域ににエラー演出指定コマンドが格納されているか否かを判定する(S639)。このエラー演出指定コマンドが格納されている場合(S639:YES)には、エラー演出内容決定処理(S640)へ移行する。このエラー演出内容決定処理(S640)では、サブメイン情報記憶手段260からエラー演出指定コマンドを読み出して、演出表示装置70の画像表示によってエラー状態を報知するためのエラー演出パターンを決定する。このエラー演出内容決定処理(S640)の詳細は図27を用いて後述する。
なお、サブメイン情報記憶手段260のコマンド格納領域に演出制御コマンドが格納されていない場合(S631:NO、S633:NO、S635:NO、S637:NO、S639:NO)は、何もせずコマンド解析処理を終了する。
(演出内容決定処理)
次に、演出内容決定処理(S636)について説明する。図26は、演出内容決定処理(S636)の詳細を示すフローチャートである。
まず、サブメイン情報記憶手段260に変動開始コマンドが格納されているか否かを判定する(S641)。変動開始コマンドが格納されている場合(S641:YES)には、この変動開始コマンド(変動パターン指定コマンド、変動付加図柄情報指定コマンド、キャラクタ演出番号指定コマンド)の内容を解析し、このコマンドの内容に含まれる当否抽選の結果、図柄群、変動パターン(変動時間)、遊技状態などを示す情報を取得する(S642)。なお、この取得情報は、サブメイン情報記憶手段260の変動演出内容判定領域に格納される。
続いて、変動演出パターン選択処理を実行する(S643)。この変動演出パターン選択処理では、上記S642で取得した変動パターン情報に基づき、変動演出パターンテーブルを取得するとともに、演出抽選乱数発生手段210から変動演出パターン乱数値を取得して、複数種の変動演出パターンの中から、いずれかの変動演出パターンを抽選で決定する。変動演出パターンは、装飾図柄の変動態様、リーチ演出の種類・発生時期、予告演出の種類・発生時期、ランプ演出の割込みタイミング(ランプ演出割込み処理の起動タイミング)などが規定された演出表示過程のシナリオを構成している。ここで決定された変動演出パターン番号は、サブメイン情報記憶手段260の変動演出パターン格納領域に一時記憶される。
次いで、割込み外用のランプリクエスト関数「関数名:RampReq」を呼び出して、ランプリクエスト処理を実行する(S644)。ここで、図29(A)は割込み外用のランプリクエスト処理(S644)の詳細を示すフローチャートである。なお、本実施形態において、「関数」とは、1又は複数の処理をモジュール化したもので、呼び出し命令等によって実行されるサブルーチンをいう。
このランプリクエスト処理では、まず、主制御基板100からの演出制御コマンド受信以外の割込み処理を禁止する(S661)。続いて、変動演出パターン記憶領域から変動演出パターン番号を読み出す(S662)。そして、変動演出パターン番号に対応したランプ演出番号をリクエストする(S663)。この処理で選択されるランプ演出には、通常の頻度で選択される通常ランプ演出と、通常ランプ演出と比較して相対的に低い頻度で選択されるプレミアランプ演出とが含まれる。このプレミアランプ演出は、例えば大当り当選確定などを示唆する特別演出である。次いで、前記S663でリクエストされたランプ演出番号をサブメイン情報記憶手段260のランプリクエスト記憶領域に設定する(S664)。そのため、以降の処理では、ランプリクエスト記憶領域に0以外の数値が設定されている場合、演出ランプLPの動作要求(ランプリクエスト)があると判断されたうえで処理が進められる。なお、本例では、複数のランプリクエスト記憶領域が用意されており、複数のランプ演出番号を設定することができるようになっている。複数のランプ演出番号が設定された場合(複数のランプリクエストがあった場合)は、レイヤ処理にて、優先順位の高いランプ演出のみが遊技者に視認できる態様で実行され、優先順位の低いランプ演出については内部的に処理が進められるだけに留まる(詳細後述)。そして、全ての割込みを許可して(S665)、当該ランプリクエスト処理を終了し、メイン処理内の元の処理へ戻る。
次いで、図26に戻って、装飾図柄停止図柄選択処理を実行する(S645)。この装飾図柄停止図柄選択処理では、上記S642で取得した図柄群情報と変動パターン情報に基づき、最終的に停止させる装飾図柄の停止図柄の組合せ(左図柄、中図柄、右図柄)をそれぞれ抽選で決定する。ここで決定された装飾図柄組合せ番号は、サブメイン情報記憶手段260の装飾図柄格納領域に一時記憶される。
そして、装飾図柄の変動開始に要する画像制御コマンド(変動演出開始コマンド)を生成し、この画像制御コマンドをサブメイン情報記憶手段260のコマンド格納領域に設定する(S646)。具体的には、割込み外用のコマンドセット関数「関数名:CmdSet」を呼び出して、画像制御コマンドをサブメイン情報記憶手段260の画像制御コマンドバッファに設定する処理(コマンドセット処理)を行う。なお、このコマンドセット処理の詳細は図32(A)を用いて後述する。
一方、変動開始コマンドが格納されていない場合(S641:NO)には、サブメイン情報記憶手段260に変動停止コマンドが格納されているか否かを判定する(S647)。変動停止コマンドが格納されている場合(S647:YES)には、変動停止コマンドの内容を解析し、このコマンドの内容に含まれる図柄停止情報を取得する(S648)。そして、装飾図柄の変動停止に要する画像制御コマンド(変動演出停止コマンド)を生成し、この画像制御コマンドをサブメイン情報記憶手段260のコマンド格納領域に設定する(S649)。具体的には、割込み外用のコマンドセット関数「関数名:CmdSet」を呼び出して、画像制御コマンドを画像制御コマンドバッファに設定する処理(コマンドセット処理)を行う。なお、このコマンドセット処理の詳細は図32(A)を用いて後述する。
(エラー演出内容決定処理)
次に、エラー演出内容決定処理(S640)について説明する。図27は、エラー演出内容決定処理(S640)の詳細を示すフローチャートである。
まず、サブメイン情報記憶手段260にエラー演出指定コマンドが格納されているか否かを判定する(S651)。エラー演出指定コマンドが格納されている場合(S651:YES)には、このエラー演出指定コマンドの内容を解析し、このコマンドの内容に含まれるエラー状態を示す情報を取得する(S652)。なお、この取得情報は、サブメイン情報記憶手段260のエラー状態判定領域に格納される。
続いて、エラー演出パターン選択処理を実行する(S653)。このエラー演出パターン選択処理では、上記S652で取得したエラー状態情報に基づき、エラー演出パターンを決定する。エラー演出パターンには、エラー報知画像(例えばエラーが発生した旨のメッセージ)やスピーカによる警告音などの情報が規定されている。ここで決定されたエラー演出パターンデータは、サブメイン情報記憶手段260のエラー演出パターン格納領域に一時記憶される。なお、エラー演出パターンが設定されると、前記のエラー演出管理処理(S617)にてエラー管理タイマに初期値(エラー演出時間)がセットされ、エラー演出の管理が開始される。なお、エラー管理タイマの更新は、後述のエラー管理タイマ処理(S720)にて更新される。
次いで、割込み外用のランプリクエスト関数「関数名:RampReq」を呼び出して、ランプリクエスト処理を実行する(S654)。図29(A)は割込み外用のランプリクエスト処理(S654)の詳細を示すフローチャートである。この処理で呼び出されるランプリクエスト関数「RampReq」は、前述の演出内容決定処理(S636)でのランプリクエスト処理(S644)で呼び出されるランプリクエスト関数「RampReq」と共通のものである。すなわち、図29(A)に示すランプリクエスト処理は、演出内容決定処理(S636)とエラー演出内容決定処理(S640)との共通のサブルーチンとなっている。従って、メイン処理内では、一つの共通モジュールでランプリクエスト処理(S644,S654)が行われることになる。なお、このランプリクエスト関数「RampReq」において、処理の開始時に全割込み(演出制御コマンド受信割込み処理以外)を禁止、処理の終了時に全割込みを許可、とするのは、ランプリクエスト処理中に他の割込み処理(後述のランプ演出割込み処理)が起動して、同時に複数のランプリクエストが発生することによる障害(例えば、ステイタスの管理が煩雑となる障害など)を防止するためである。
このランプリクエスト処理では、まず、主制御基板100からの演出制御コマンド受信以外の割込み処理を禁止する(S661)。続いて、エラー演出パターン記憶領域からエラー演出パターン番号を読み出す(S662)。そして、エラー演出パターン番号に対応したランプ演出番号をリクエストする(S663)。この処理では、遊技機のエラー状態を報知するためのエラー報知ランプ演出のみがリクエストされる。次いで、前記S663で選択されたランプ演出番号をサブメイン情報記憶手段260のランプリクエスト記憶領域に設定する(S664)。そして、全ての割込みを許可して(S665)、当該ランプリクエスト処理を終了し、メイン処理内の元の処理へ戻る。
続いて、図27に戻って、エラー演出に要する画像制御コマンド(エラー演出開始コマンド)を生成し、この画像制御コマンドをサブメイン情報記憶手段260のコマンド格納領域に設定する(S655)。具体的には、割込み外用のコマンドセット関数「関数名:CmdSet」を呼び出して、画像制御コマンドを画像制御コマンドバッファに設定する処理(コマンドセット処理)を行う。なお、このコマンドセット処理の詳細は図32(A)を用いて後述する。
なお、本実施形態では、前述したメイン処理内(コマンド解析処理内)で全てのランプリクエストを行うのではなく、所定の契機でランプ演出割込み処理を起動させてランプリクエストを行う場合がある。すなわち、前記S643で選択される変動演出パターンのタイムスケジュールには、装飾図柄の変動演出過程の各段階で発生する予告演出との関係で、ランプ演出割込み処理の発生契機(割込みタイミング)が規定されている。この割込みタイミングが到来すると、ランプ演出割込み処理を起動させて、ランプ演出番号をリクエストする処理が実行される。なお、ランプ演出割込み処理の発生時期は、特定の予告演出(例えば、予告演出内容と関連した色のランプ点灯を行う場合など)の発生時期と同期している。
《ランプ演出割込み処理》
次に、ランプ演出割込み処理を説明する。図28は、ランプ演出割込み処理を示すフローチャートである。このランプ演出割込み処理は、変動演出パターンに規定された割込みタイミングが到来した場合に、ソフトウェア割込みにより発生する。
まず、このランプ演出割込み処理内では、主制御基板100からの演出制御コマンド受信割込み、ウォッチドッグタイマ割込み等、優先レベル2以上の割込みを許可する(S671)。続いて、割込み内用のランプリクエスト関数「関数名:RampReq_InINT」を呼び出して、ランプリクエスト処理を実行する(S672)。図29(B)は、割込み内用のランプリクエスト処理(S672)を示すフローチャートである。なお、このランプリクエスト関数(RampReq_InINT)では、処理の最初と最後に割込み禁止/許可命令を設定していない点で、前述のメイン処理内で呼び出されるランプリクエスト関数「RampReq」とは異なる。これは、前述したように、各割込み処理内では、優先レベルの同一又は優先レベルの低い他の割込みの発生を禁止しているため、このランプリクエスト処理中に他のランプリクエストが重複発生することはないからである。
このランプリクエスト処理では、サブメイン情報記憶手段260の予告演出パターン記憶領域を参照して、予告演出パターンを読み出す(S681)。そして、この予告演出パターンに対応したランプ演出番号をリクエストする(S682)。例えば、予告演出が背景予告である場合に、予告抽選管理処理にて青色の背景を表示する予告演出パターンが選択されていれば、演出ランプLPを青色に点灯するためのランプ演出(ランプ演出番号)がリクエストされる。続いて、ランプ演出番号をサブメイン情報記憶手段260のランプリクエスト記憶領域に設定する(S683)。そのため、以降の処理では、ランプリクエスト記憶領域に0以外の数値が設定されている場合、演出ランプLPの動作要求(ランプリクエスト)があると判断されたうえで処理が進められる。そして、ランプ演出割込み処理を終了して、割込み発生前の元の処理へ戻る。
《演出制御コマンドの受信割込み処理》
次に、演出制御コマンドの受信割込み処理を説明する。図30は、演出制御コマンドの受信割込み処理を示すフローチャートである。この演出制御コマンドの受信割込み処理では、前述したように、主制御基板100からのストローブ信号の入力に基づいて割込みが発生することで開始され、この割込み処理において各種の演出制御コマンドが取得されるようになっている。なお、演出制御コマンドは、1バイトのMODEデータと、1バイトのEVENTデータとを含む構成となっており、主制御基板100から演出制御基板200へ、MODEデータ、EVENTデータの順に送信される。以下では、説明の便宜上、MODEデータを「第1コマンド」、EVENTデータを「第2コマンド」とも称する。
まず、主制御基板100からのストローブ信号に基づく割込みが発生すると、演出制御コマンドの入力値が確定したか否かを判定する(S701)。具体的には、コマンドデータを最高5回まで読み込み、2回連続で同じ値が読み込まれた時点で入力値が確定となる。これはノイズ等により演出制御コマンドの読み取りが失敗するおそれがあるためであり、2回連続で同じ値が読み込まれるまでは入力値を確定とはしない。
続いて、今回受信したコマンドが第1コマンド(MODE)であるか否か、換言すれば、第1コマンド(MODE)であるか第2コマンド(EVENT)であるかを判定する(S702)。今回受信したコマンドが第1コマンドである場合(S702:YES)は、当該第1コマンドをテンポラリ領域に一時的に記憶する(S703)。そして、演出抽選乱数発生手段210から演出抽選乱数を取得して、この乱数情報をサブメイン情報記憶手段260の演出抽選乱数格納領域に一時記憶する(S704)。なお、演出抽選乱数の取得時期を、演出制御コマンドの受信時としているのは、演出制御コマンドは遊技球の始動入賞時や特別図柄の変動開始時など物理的に不規則なタイミングで送信されるため、それを契機とすることで取得時期に周期性を出さないようにするためである。このように演出抽選乱数の取得時期を不規則とすることで、各種の演出抽選においても、同一の演出が不自然に繰り返し選択されてしまう等の不都合が発生し難くなる。
一方、今回受信したコマンドが第2コマンドである場合(S702:NO)には、すでに第1コマンドを受信済であるか否かを判定する(S705)。すなわち、演出制御コマンドを第1コマンド(MODE)→第2コマンド(EVENT)の順に受信したか否か判定して、演出制御コマンドの組合せに矛盾がないかを確認する。演出制御コマンドの組合せに矛盾がない場合(S705:YES)は、ライトポインタ(書き込み用のポインタ)の示すアドレスを取得する(S706)。続いて、第1コマンドと第2コマンドとを、ライトポインタの指示するアドレスに従って、サブメイン情報記憶手段260の演出制御コマンドバッファ(リングバッファ)に保存する(S707)。保存されたコマンドデータは、メイン処理における前記のコマンド解析処理(S621)で読み出され、演出制御コマンドの種別に対応した演出制御処理が実行される。次いで、ライトポインタの示すアドレスを更新する(S708)。さらに、前記S708で一時記憶したコマンドデータ(第1コマンド)をクリアする(S709)。
《演出制御側タイマ割込み処理》
次に、演出制御側タイマ割込み処理を説明する。図31は、演出制御側タイマ割込み処理を示すフローチャートである。このタイマ割込み処理は、一定時間毎のクロックパルスにより起動され、上述の演出制御側メイン処理に割り込むかたちで実行される。
タイマ割込みが発生すると、サブメインCPU201内のレジスタの内容をRAM203のスタック領域に退避させた後、S711以降の処理を順次実行する。このタイマ割込み処理内では、主制御基板100からの演出制御コマンド受信割込み、ウォッチドッグタイマ割込み等、優先レベル2以上の割込みを許可する(S711)。
続いて、ポート入出力処理を実行する(S712)。このポート入出力処理では、I/Oポート回路204におけるポートデータの入力処理、出力処理を行う。入力処理では、I/Oポート回路204(入力ポート)に入力されている各種信号を読み取り、これを入力情報として記憶する。出力処理では、サブメイン情報記憶手段260に一時記憶されている各種制御信号(モータ制御信号)を読み出して、I/Oポート回路204(出力ポート)から出力する。なお、I/Oポート回路204内には、電源基板500からの電源電圧が所定値以下に低下したことを示す電源断信号が入力される入力ポートが用意されている。電源断信号が入力された場合は、電源断時処理として、電源断発生時における各種データをRAM203のバックアップ領域に保存するための処理が行われる。それ以降は、電源基板500のバックアップ電源回路からバックアップ電源が供給されるため、RAM203の記憶内容は電源断後も消失することなく保持される。また、その他の電源断時処理として、可動役物24の駆動源であるモータMの励磁をオフ(非通電状態)にして、電源断発生という不安定な状態での可動役物24の動作を早期に中断させ、電源断復帰後に何ら異常なく初期動作を行えるようにする。なお、可動役物24の停止位置は非通電時のディテントトルクで保持される。
続いて、デバイス制御データ出力処理を実行する(S713)。このデバイス制御データ出力処理では、前記のデバイス管理処理(S620)で特定した駆動パターンデータから所定時間分の駆動データを読み出してサブメイン情報記憶手段260の駆動データ記憶領域に設定する。この処理で設定される駆動データは、割込み周期に対応した1ms間の制御を示すデータである。この処理で駆動データが設定されると、次回のタイマ割込み処理にて、当該駆動データがI/Oポート回路204(出力ポート)からモータドライバ92へ出力される。従って、このデバイス制御データ出力処理では、駆動パターンデータに従って駆動データが割込み周期(1ms)毎に切り替えられることとなる。
次いで、演出用タイマ更新処理を実行する(S714)。この演出タイマ更新処理では、演出動作制御に用いる各種の演出用タイマの値を割込み周期(本実施形態では1ms)ずつ減算更新する。演出用タイマには、装飾図柄の変動時間を管理するためのタイマ、予告演出の発生タイミングを管理するためのタイマなどが含まれる。この演出用タイマによって、変動演出パターンにおけるタイムスケジュールが管理され、その時間軸上で可動役物24の駆動タイミングや演出ランプLPの点灯タイミング等の時間管理がされている。なお、演出用タイマは、この演出制御用タイマ割込み処理内のデバイス制御データ出力処理(S713)やランプデータ更新処理(S718)などにおいても利用される。
続いて、ボタン制御タイマ更新処理を実行する(S715)。演出ボタン15の操作有効時間を管理するための有効時間管理タイマの値を割込み周期(本実施形態では1ms)減算更新する。なお、操作有効時間とは、演出ボタン15の操作入力が有効となる時間である。
次いで、画像制御コマンド設定処理を実行する(S716)。この画像制御コマンド設定処理では、前記の演出用タイマ更新処理(S714)の演出用タイマにおいて予告演出の発生タイミングが到来したときに、前記の予告抽選管理処理(S619)で選択された1又は複数の予告演出パターンのうちに特定の予告演出パターンが含まれる場合に、当該特定の予告演出番号を指示するための画像制御コマンドを生成して、これをサブメイン情報記憶手段260の画像制御コマンドバッファに設定する。具体的には、割込み内用のコマンドセット関数「関数名:CmdSet_InINT」を呼び出して、画像制御コマンドを画像制御コマンドバッファに設定する処理(コマンドセット処理)を行う。なお、このコマンドセット処理の詳細は図32(B)を用いて後述する。ここで、特定の予告演出パターンには、例えば、演出ボタン15を押下操作したタイミングで演出表示装置70にエフェクト画像を表示する演出パターンや、可動役物24の動作に合わせてエフェクト画像を表示する演出パターンなどが含まれる。
続いて、タスク制御カウンタ更新処理を実行する(S717)。このタスク制御カウンタ更新処理では、タイマ割込み毎にタスクカウンタの値(「0」〜「15」)を更新する。具体的には、タスクカウンタの値が「0」〜「14」であれば1インクリメントし、タスクカウンタの値が「15」となった場合には「0」に戻す。すなわち、このタスクカウンタは16msの循環周期を取り得る。そして、今回更新されたタスクカウンタの値に対応して各種のタスク(タスク処理)が割り当てられており、当該タスクカウンタの値に応じて、ランプ制御タスク(S718のランプデータ更新処理)、暴走監視タスク(S719の画像CPU暴走監視処理)、エラー管理タスク(S720のエラー管理タイマ更新処理)などの各処理を実行する。本例では、タスクカウンタの値(「0」〜「15」)のうち、或る1つの値がランプ制御タスクに割り当てられ、他の2つの値(互いに8ms間隔となる値)が暴走監視用タスクに割り当てられ、他の1つの値がエラー管理タスクに割り当てられている(その他のタスクの説明は省略する)。なお、前述のように、タスクカウンタの循環周期を16msに設定しているのは、演出ランプLPの切り換え制御の最小単位(16ms)と一致させるためである。そして、この演出ランプLPの切り換え制御の最小単位(16ms)は画像フレームの1フレーム時間と対応し、画像演出とランプ演出との同期を実現している。
続いて、ランプデータ更新処理を実行する(S718)。このランプデータ更新処理では、前記のデバイス管理処理(S620)又はエラー演出管理処理(S617)で特定したランプパターンデータから所定時間分のランプデータを読み出して設定する。この処理で設定されるランプデータは、演出ランプLPの切り換え制御の最小単位となる16ms間の点灯制御を示すデータである。ランプデータが設定されると、当該ランプデータが出力ポート(シリアルポート)からシリアル転送にてランプ接続基板91へ自動的に出力される。このランプデータの出力処理は、シリアル通信割込み処理として構成されており、シリアル通信回路205の送信バッファにランプデータを順次書き込むことで実現される。シリアル通信回路205は、送信バッファのランプデータを1バイト単位でシリアル変換して、シリアルクロックと同期したかたちで、1ビット毎にランプ接続基板91に対して出力する。この処理では、送信バッファが空になるまで繰り返され、これにより送信バッファに格納された全てのランプデータ(全バイト)が出力されるようになっている。従って、このランプデータ更新処理では、ランプパターンに従ってランプデータが1フレーム時間(16ms)毎に切り替えられるとともに、このランプデータがランプ接続基板91に対してシリアル転送にて出力される。なお、このランプデータ更新処理は、前記のタスク制御カウンタ更新処理(S717)でタスクカウンタの値が所定値(ランプ制御タスクを示す値)となった場合に実行される処理(つまり16ms周期で実行される処理)となっている。
ここで、前述のとおり、本実施形態では、各ランプ演出の種別(通常ランプ演出、プレミアランプ演出、エラー報知ランプ演出)に応じたレイヤが設定されており、互いに種別の異なる複数のランプリクエストがあった場合は、上位のレイヤ(優先順位の高いレイヤ)に設定されたランプデータのみを出力する一方、下位のレイヤ(優先順位の低いレイヤ)に設定されたランプデータは出力が禁止される。但し、ランプデータの切り替え処理(16ms毎の切り換え処理)自体は停止しているわけではないので、上位のレイヤの処理が終了すれば、当該レイヤでの処理と連続性を維持するかたちで、下位のレイヤに設定されたランプデータが出力される(下位のレイヤに係るランプ演出が発生される)。なお、ランプデータ更新処理(S718)で、上位(最優先)のレイヤに係るランプデータのみを出力するには、複数のレイヤに係るランプデータを重畳させると、概して規則性のない違和感のある点灯パターンとなるおそれがあるからである。また、プレミアランプ演出を通常ランプ演出とレイヤ構造にて区別して優先順位を異ならしめているのは、概してプレミアランプ演出は通常ランプ演出と比べて出現率が低いのであるが、その出現タイミングは規則性がなくランダムなタイミングで発生するため、先発的に選択された通常ランプ演出の存在によって後発的に選択されたプレミアランプ演出の出現が留保されてしまうのでは、プレミアランプ演出発生に対する遊技者の期待感が減退されるからである。
続いて、画像CPU暴走監視処理を実行する(S719)。この画像CPU暴走監視処理では、画像制御基板300から入力されるトグル信号を監視して、当該トグル信号が1600ms(50〜100フレーム程度)の間、連続して変化しない場合に、画像制御基板300のサブサブCPU301が暴走していると判定し、演出制御基板200から画像制御基板300に対してリセット信号を送信する。これにより、画像制御基板300側はサブサブCPU301のリセット状態の発生によって、所定のリセット処理を実行する。なお、トグル信号とは、1フレーム時間毎にHレベル/Lレベルが交互に繰り返される波形の信号のことである。
次いで、エラー管理タイマ処理を実行する(S720)。このエラー管理タイマ処理では、前記のエラー演出管理処理(S617)でセットされたエラー演出時間を管理するためのエラー演出タイマの値を減算更新する。なお、このエラー管理タイマ処理は、前記Sタスク制御カウンタ更新処理(S717)でタスクカウンタの値が所定値(エラー管理タスクを示す値)となった場合に実行される処理となっている。そのため、エラー演出時間が長時間となった場合でも、16ms周期のタイマにて時間を計数することになるため、タイマ割込み周期(1ms)毎に時間を計数する場合と比較して、データ量を軽減することができる。そして、全ての割込みを許可した状態にするとともに、退避していたレジスタの内容を復帰させた後、演出制御側タイマ割込み処理を終了して、割込み発生前の元の処理に戻る。
(コマンドセット処理)
次に、コマンドセット処理を説明する。図32(A)はメイン処理内(割込み外用)のコマンドセット処理を示すフローチャート、図32(B)は演出制御側タイマ割込み処理内(割込み内用)のコマンドセット処理を示すフローチャートである。このコマンドセット処理は、前述した各種の演出制御処理で生成した画像制御コマンドをサブメイン情報記憶手段260の画像制御コマンドバッファに設定するための処理である。割込み外用のコマンドセット処理は、演出制御側メイン処理内の画像制御コマンド設定処理(S646,S649,S655等)においてコマンドセット関数「CmdSet」が呼び出されることで実行される一方、割込み内用のコマンドセット処理は、演出制御側タイマ割込み処理内の画像制御コマンド設定処理(S716)においてコマンドセット関数「CmdSet_InINT」が呼び出されることで実行される。
まず、図32(A)を参照して、メイン処理から呼び出されるコマンドセット処理について説明する。このコマンドセット処理では、始めに、演出制御コマンド受信以外の割り込みを禁止する(S691)。続いて、画像制御コマンドバッファにおいてライトポインタを取得する(S692)。次いで、ライトポインタが指す領域に画像制御コマンドを保存する(S693)。そして、ライトポインタを1インクリメントして更新する(S694)。最後に、全ての割込みを許可して(S695)、当該コマンドセット処理を終了する。
このように、図32(A)に示すコマンドセット処理は、複数の画像制御コマンド設定処理(S646,S649,S655等)において共通のサブルーチンとなっている。従って、メイン処理内では、一つの共通モジュールでコマンドセット処理が行われることになる。なお、このコマンドセット関数「CmdSet」において、処理の開始時に全割込み(演出制御コマンドの受信割込み処理以外)を禁止、処理の終了時に全割込みを許可、とするのは、コマンドセット処理中に他の割込み処理(タイマ割込み処理(画像制御コマンド設定処理))が起動して、同時に複数のコマンドセット処理が発生することによる障害(例えば、ライトポインタとセットコマンドの不整合による障害など)を防止するためである。
次に、図32(B)を参照して、演出制御側タイマ割込み処理から呼び出されるコマンドセット処理について説明する。このコマンドセット処理では、始めに、画像制御コマンドバッファにおいてライトポインタを取得する(S721)。次いで、ライトポインタが指す領域に画像制御コマンドを保存する(S722)。そして、ライトポインタを1インクリメントして更新し(S723)、当該コマンドセット処理を終了する。
なお、このコマンドセット関数「CmdSet_InINT」では、処理の最初と最後に割込み禁止/許可命令を設定していない点で、前述のメイン処理内で呼び出されるランプリクエスト関数「CmdSet」とは異なる。これは、前述したように、当該割込み処理中では優先レベルが同一又は優先レベルの低い他の割込みの発生を禁止しているため、他のコマンドセット処理が重複発生することはないからである。
《画像制御コマンドの送信割込み処理》
次に、画像制御コマンドの送信割込み処理を説明する。図33は、画像制御コマンドの送信割込み処理を示すフローチャートである。この画像制御コマンドの送信割込み処理は、予め設定された一定間隔(500μs)毎に発生する。
この画像制御コマンドの送信割込み処理では、まず、サブメイン情報記憶手段260の画像制御コマンドバッファをチェックする(S731)。続いて、画像制御コマンドバッファにおいてリードポインタを取得する(S732)。次いで、画像制御コマンドバッファに画像制御コマンドが格納されているか否かを判定する(S733)。画像制御コマンドが格納されているか否かは、例えば、リードポインタとライトポインタによって確認でき、リードポインタとライトポインタとが一致している場合には、画像制御コマンドが格納されていないことになる。画像制御コマンドが格納されている場合(S733:YES)には、リードポインタが指す領域から画像制御コマンドを読み出す(S734)。この読み出した画像制御コマンドを、出力先として指定されたシリアル通信回路205の出力バッファにセットする(S735)。これによりシリアルポートから画像制御コマンドが画像制御基板300に対してシリアル送信される。次いで、コマンドデータ(前記S735で送信したコマンドデータ)をクリアする(S736)。続いて、リードポインタを1インクリメントして更新する(S737)。そして、当該画像コマンドの送信割込み処理を終了して、割込み前の元の処理へ復帰する。
《ACKコマンド受信割込み処理》
次に、演出制御基板200のACKコマンドの受信割込み処理を説明する。図34は、ACKコマンドの受信割込み処理を示すフローチャートである。このACKコマンドの受信割込み処理は、シリアル通信機能による画像制御基板300からのACKコマンドの受信時に発生する。なお、ACKコマンドは、演出制御基板200から画像制御基板300へ画像制御コマンドを送信した際に、この画像制御コマンドを正常に受信した旨を示すレスポンス信号として、画像制御基板300から演出制御基板200へ送信されるものである。
このACKコマンドの受信割込み処理では、まず、シリアル通信回路205の入力バッファからACKコマンドを読み込む(S741)。続いて、ACKコマンドのコマンドデータを解析する(S742)。次いで、サブメイン情報記憶手段260のACKコマンドバッファにおいてライトポインタを取得する(S743)。続いて、今回取得したACKコマンドをライトポインタが指す領域に保存する(S744)。次いで、ACKコマンドバッファにおいてライトポインタを1インクリメントして更新する(S745)。そして、当該ACKコマンドの受信割込み処理を終了して、割込み前の元の処理へ復帰する。なお、画像制御基板300からACKコマンドを受信できなかった場合は、最大で3回までリトライ処理(ACKコマンドの再送)が行われ、それでも演出制御基板200側でACKコマンドを受信できなかった場合には演出制御基板200と画像制御基板300との間ので通信エラーが発生したと判定される。
[作用]
次に、本実施形態の理解を容易なものとするために、ぱちんこ遊技機PMの特徴的作用について説明する。一般的に、各プログラム中のファイル構成・記述、関数名、変数名などに関しては、遊技機メーカ毎に、コーディング規約によって命令規則が定められている。本実施形態で定めたコーディングルールとしては、メイン処理(割込み外)と割込み処理(割込み内)との両方から呼び出される共通の関数(モジュール)をつくらないこと、という規則が挙げられる。ここで、メイン処理内の各処理では、基本的には、各処理で呼び出されるモジュール(関数)内に適宜、割込み禁止命令/許可命令(各処理の始めで割込み禁止命令、各処理の終わりで割込み許可命令)といった割込み操作をすることで、各処理内の途中で割込み禁止区間を適宜設けて割込みの発生によって処理が中断されるのを防止する一方、当該処理が完結して割込み許可となった時点で割込みが起動するようになっている。すなわち、メイン処理内では、全割込み禁止又は演出制御コマンド受信以外の割込み禁止となる割込み禁止区間が適宜設定されている。これに対して、割込み処理内の各処理では、基本的には、割込み処理毎に設定された優先レベル(割込みの優先順位)に基づき、当該割込み処理よりも優先レベルの低い又は優先レベルの同じ割込みの発生を禁止した状態で処理が進められる。そのため、割込み処理内で呼び出すモジュール(関数)内では、呼び出し元の割込み処理の優先レベルが維持されることになるので、割込み操作を挿入する必要性が原則的にない。
従って、メイン処理で呼び出す関数と割込み処理で呼び出す関数とを一つの共通モジュールで併用すると、意図しない他の割込みの発生によって、その後の処理でステイタス管理上の不整合などが生じてプログラムのバグ等が発生するおそれがある。例えば、メイン処理で呼び出される関数を割込み処理で呼び出すと、全ての割込みを許可した状態で割込み処理に戻ることになるため、復帰後の割込み処理中で、自身よりも優先レベルの低い割込みが発生するおそれがある(本来、割込みプログラムは、優先順位の低い割込みの発生を想定して作成されていない)。一方、割込み処理で呼び出されるモジュール(関数)をメイン処理で呼び出すと、当該モジュールには割込み操作が挿入されていないため、全ての割込みが許可された状態で、当該モジュール内の処理が実行されてしまう。そのため、この場合においても、当該モジュール内で意図しない割込みが発生するおそれがある。よって、このような想定外の事象が発生すると、演出制御処理の不具合を招来するおそれがあるという問題が生じる。
そこで、本実施形態では、メイン処理と割込み処理とで各モジュール(関数)を呼び出して一部において共通の処理を行うことがある場合でも、前記コーディングルールに則して、メイン処理で呼び出されるモジュールには、割込みレベルを操作する処理(割込み禁止命令、割込み許可命令)を含み、割込み処理で呼び出されるモジュールには、割込みレベルを操作する処理を含めないこととすることで、意図しない割込みの発生を未然に防止している。
本実施形態では、第1の適用例として、ランプリクエスト関数を対象に前記コーディングルールを採用している。すなわち、図29の(A)と(B)とを比較しても分かるように、メイン処理で呼び出されるランプリクエスト関数「RampReq」では割込み操作あり、割込み処理で呼び出されるランプリクエスト関数「RampReq_InINT」では割込み操作なし、とすることで、前記コーディングルールに則した構成を実現している。
さらに、第2の適用例として、コマンドセット関数を対象に前記コーディングルールを採用している。すなわち、図32の(A)と(B)とを比較しても分かるように、メイン処理で呼び出されるコマンドセット関数「CmdSetT」では割込み操作あり、割込み処理で呼び出されるコマンドセット関数「CmdSet_InINT」では割込み操作なし、とすることで、前記コーディングルールに則した構成を実現している。
以上、本実施形態によれば、メイン処理と割込み処理とで互いにサブルーチンを呼び出して共通の処理を独立して行うことがある場合に、メイン処理側のサブルーチンでは割込み許可・禁止命令を含める一方、割込み処理側のサブルーチンでは割込み許可・禁止命令を含めずに当該割り込み処理に付与される優先レベルを維持することにより、当該割込み処理の実行途中で意図しない他の割込みの発生を規制し得るため、想定外の事象の発生によってプログラムにバグが生じるのを防止することが可能となる。さらに、タイマ割込み処理内で意図しない割込み(優先レベルの低い割込み)の発生によって、各種デバイスに対するデータ更新周期が遅延することがない。従って、本実施形態では、遊技演出を円滑に処理することが可能になるという効果を奏する。
[変形例]
次に、本実施形態の変形例について説明する。かかる変形例では、演出ランプLPの動作要求をするためのランプリクエスト処理をメイン処理内でのみ行う構成である。すなわち、上述の実施形態では、メイン処理と割り込み処理の両方でランプリクエスト関数をそれぞれ呼び出してランプリクエスト処理を行う構成であるのに対し、この変形例では、メイン処理内でのみランプリクエスト関数を呼び出してランプリクエスト処理を行う点で特徴的である。
まず、メイン処理内のコマンド解析処理(演出内容決定処理、エラー演出内容決定処理など)で、ランプリクエスト関数「RampReq」を呼び出してランプリクエスト処理を行うことについては上述の実施形態と同様である。一方、この変形例では、ランプ演出割込み処理において、ランプリクエスト処理は実行しない。なお、このランプ演出割込み処理の発生契機は前述の実施形態と同様である。
ここで、図36は、変形例に係るランプ演出割込み処理を示すフローチャートである。このランプ演出割込み処理では、まず、主制御基板100からの演出制御コマンド受信割込み、ウォッチドッグタイマ割込み等、優先レベル2以上の割込みを許可する(S801)。続いて、ランプリクエストの予約を行う(S802)。本例において、ランプリクエストの予約とは、サブメイン情報記憶手段260に設定されたリクエストフラグをオンすることをいう。そのため、ランプ演出割込み処理では、ランプリクエスト処理を実行せず(ランプ演出番号をリクエストせず)、ランプリクエストの予約だけを行う。
一方、この変形例では、ランプ演出割込み処理においてランプリクエストの予約を行った場合には、演出制御側メイン処理のデバイス管理処理(S620)内でランプリクエスト処理が実行される。具体的には、このデバイス管理処理(S620)で、リクエストフラグがオンとなっているが判定された場合、割込み外用のランプリクエスト関数「関数名:RampReq」を呼び出して、ランプリクエスト処理を実行する。この処理で呼び出されるランプリクエスト関数「RampReq」は、前述の実施形態におけるメイン処理内で呼び出されるランプリクエスト関数「RampReq」と同一のものである(そのため説明は省略する)。
さらに、デバイス管理処理(S620)では、コマンド解析処理(S621)又は本デバイス管理処理内でランプリクエストがあった場合は、前述の実施形態と同様に、演出制御マイコン210のROM203に記憶された複数種のランプパターンデータの中から、ランプ演出番号に対応したランプパターンデータを特定して、演出ランプLPの制御を開始する。一方、演出制御側タイマ割込み処理において、ランプパターンデータに含まれる一連のランプデータの出力が全て完了した場合は、演出ランプLPの制御を終了する。
以上、かかる変形例によれば、メイン処理内で全てのランプリクエストを行う構成とすることで、メイン処理と割り込み処理との両方からランプリクエストが重複して発生することによる処理負担が軽減され、遊技演出を円滑に処理することが可能となる。また、上述の実施形態と同様に、ステイタス管理の不整合によるプログラムのバグの発生や、タイマ割込み処理内での各種デバイスに対するデータ更新周期の遅延等が防止される。
なお、本発明は、上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲であれば適宜改良可能である。
上述の実施形態では、コーディング規則をランプリクエスト関数、コマンドセット関数に適用した場合を例示して説明したが、この構成に限定されるものではなく、メイン処理と割込み処理とで一部において共通の処理として呼び出される関数であれば、他の関数に適用しても同様の効果を奏することができる。
なお、上述の実施形態においては、ぱちんこ遊技機に適用した場合を例示して説明したが、これに限定されるものではなく、ぱちんこ遊技機以外の遊技機、例えば、スロットマシン、アレンジボール機、雀球遊技機、封入式遊技機(所定個数の遊技球を機内に封入して循環使用する遊技機)等の他の遊技機にも適用することができ、同様の効果を得ることができる。
PM ぱちんこ遊技機(遊技機)
PA 遊技領域
1 外枠
2 前枠
5 ガラス枠
10 枠ランプ
20 遊技盤
24 可動役物
25 盤ランプ
70 演出表示装置
91 ランプ接続基板
92 モータドライバ
100 主制御基板(主制御手段)
200 演出制御基板(演出制御手段)
300 画像制御基板
400 払出制御基板
500 電源基板

Claims (1)

  1. 遊技進行の制御を司る主制御手段と、
    前記主制御手段からの指令に基づき遊技に関連する演出の制御を司る演出制御手段とを有し、
    前記演出制御手段における前記演出の制御として、連続的に繰り返されるループ処理を含むメイン処理と、所定の条件が成立したときに前記メイン処理を中断させて開始される複数の割込み処理とが実行される構成の遊技機であって、
    前記複数の割込み処理には、少なくとも二以上の割込み処理が開始される場合の割込みの優先順位が定められ、優先順位の高い割込み処理は優先順位の低い割込み処理よりも優先的に実行されるようになっており、
    前記複数の割込み処理として、前記主制御手段の指令を受け取るための演出制御指令受信割込み処理と、前記演出制御指令受信割込み処理よりも優先順位が低く設定された所定の割込み処理とを有し、
    前記メイン処理と前記所定の割込み処理とは、一部において共通の処理を含む制御処理をそれぞれ含み、
    前記メイン処理の前記制御処理は、割込みを許可する割込み許可処理と、前記演出制御指令受信割込み処理以外の割込みを禁止する割込み禁止処理と、前記割込み許可処理と前記割込み禁止処理との間で実行される前記共通の処理とを含み、
    前記所定の割込み処理は、前記メイン処理を中断して行う処理であり、
    前記所定の割込み処理の前記制御処理は、前記割込み許可処理と前記割込み禁止処理とを含まず、前記共通の処理のみを含む処理で構成され、前記演出制御指令受信割込み処理を開始させるための前記所定の条件が成立した場合は、前記演出制御指令受信割込み処理が終了するまで中断されることを特徴とする遊技機。
JP2014039400A 2014-02-28 2014-02-28 遊技機 Active JP6303601B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014039400A JP6303601B2 (ja) 2014-02-28 2014-02-28 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014039400A JP6303601B2 (ja) 2014-02-28 2014-02-28 遊技機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018038148A Division JP6519680B2 (ja) 2018-03-05 2018-03-05 遊技機

Publications (2)

Publication Number Publication Date
JP2015163111A JP2015163111A (ja) 2015-09-10
JP6303601B2 true JP6303601B2 (ja) 2018-04-04

Family

ID=54186376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014039400A Active JP6303601B2 (ja) 2014-02-28 2014-02-28 遊技機

Country Status (1)

Country Link
JP (1) JP6303601B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6135555B2 (ja) * 2014-02-28 2017-05-31 サミー株式会社 遊技機

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4115639B2 (ja) * 1999-12-24 2008-07-09 株式会社三共 遊技機
JP2003250995A (ja) * 2002-02-28 2003-09-09 Sansei R & D:Kk 遊技機
JP2004229938A (ja) * 2003-01-30 2004-08-19 Sankyo Kk 遊技機
JP2010022597A (ja) * 2008-07-18 2010-02-04 Daito Giken:Kk 遊技台
JP5241934B2 (ja) * 2012-02-17 2013-07-17 株式会社藤商事 遊技機
JP5975786B2 (ja) * 2012-08-16 2016-08-23 株式会社ミツバ マグネット補助型リラクタンスモータ用ロータ及びブラシレスモータ

Also Published As

Publication number Publication date
JP2015163111A (ja) 2015-09-10

Similar Documents

Publication Publication Date Title
JP6135555B2 (ja) 遊技機
JP6303600B2 (ja) 遊技機
JP5630888B1 (ja) ぱちんこ遊技機
JP6194088B2 (ja) ぱちんこ遊技機
JP6025226B2 (ja) ぱちんこ遊技機
JP6418018B2 (ja) 遊技機
JP5958942B2 (ja) 遊技機
JP5697286B1 (ja) ぱちんこ遊技機
JP6303601B2 (ja) 遊技機
JP6255817B2 (ja) 遊技機
JP6519679B2 (ja) 遊技機
JP6519680B2 (ja) 遊技機
JP6260289B2 (ja) ぱちんこ遊技機
JP2016171852A (ja) 遊技機
JP5854446B2 (ja) ぱちんこ遊技機
JP6273727B2 (ja) 遊技機
JP7406083B2 (ja) 弾球遊技機の遊技盤
JP7332892B2 (ja) 遊技機の演出装置
JP2021108947A (ja) 遊技機の演出装置
JP2021108951A (ja) 遊技機
JP2021108948A (ja) 遊技機の演出装置
JP2021108950A (ja) 弾球遊技機
JP2021108949A (ja) 弾球遊技機の遊技盤
JP2016163784A (ja) 遊技機
JP6255818B2 (ja) 遊技機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171012

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: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180219

R150 Certificate of patent or registration of utility model

Ref document number: 6303601

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250