JP2020162826A - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP2020162826A
JP2020162826A JP2019065701A JP2019065701A JP2020162826A JP 2020162826 A JP2020162826 A JP 2020162826A JP 2019065701 A JP2019065701 A JP 2019065701A JP 2019065701 A JP2019065701 A JP 2019065701A JP 2020162826 A JP2020162826 A JP 2020162826A
Authority
JP
Japan
Prior art keywords
game
special
main cpu
random number
determined
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.)
Pending
Application number
JP2019065701A
Other languages
English (en)
Inventor
弘樹 松島
Hiroki Matsushima
弘樹 松島
智裕 久保田
Tomohiro Kubota
智裕 久保田
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 JP2019065701A priority Critical patent/JP2020162826A/ja
Publication of JP2020162826A publication Critical patent/JP2020162826A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Abstract

【課題】データ容量を低減することができる遊技機を提供することを目的とする。【解決手段】遊技機は、入力ポート3へアウト球検出スイッチ114sから10.9msに亘ってオン信号が入力されると、入力ポート3からアウト球検出スイッチ114sのオン信号を出力し、また、入力ポート4へゲート検出スイッチ124sから5.4msに亘ってオン信号が入力されると、入力ポート4からゲート検出スイッチ124sのオン信号を出力する。【選択図】図24

Description

本発明は、遊技機に関する。
特許文献1には、主制御基板と接続された各種センサを用いて遊技球を検出する遊技機が提案されている。
特開2018−130616号公報
各種センサからの入力信号にはノイズが含まれる場合があるため、各種センサの特性に応じたノイズの除去処理を行う場合、データ容量が増大するといった問題があった。
本発明は、データ容量を低減することができる遊技機を提供することを目的とする。
上記課題を解決するために、本発明の遊技機は、所定の事象の発生を検出するセンサから所定時間に亘って、前記所定の事象が発生したことを示す信号が送られてきた場合に、検出信号を出力する検出部と、前記検出部から検出信号が入力された場合に、所定の判定処理を実行し、前記判定処理の結果に応じて前記所定の事象が発生したと判定する判定部とを備える。
また、複数の前記センサのそれぞれに対応し、前記所定時間を決定するための設定値を記憶可能な複数の記憶部と、所定条件が成立した場合に、複数の前記記憶部のそれぞれに対応した前記設定値を設定する設定部とを備えるとよい。
本発明によれば、データ容量を削減することができる。
扉が開放された状態を示す遊技機の斜視図である。 遊技機の正面図である。 遊技機のブロック図である。 メインCPUが用いるメモリ領域のアドレスマップである。 低確時大当たり決定乱数判定テーブルを説明する図である。 高確時大当たり決定乱数判定テーブルを説明する図である。 当たり図柄乱数判定テーブルを説明する図である。 リーチグループ決定乱数判定テーブルを説明する図である。 リーチモード決定乱数判定テーブルを説明する図である。 変動パターン乱数判定テーブルを説明する図である。 変動時間決定テーブルを説明する図である。 特別電動役物作動ラムセットテーブルを説明する図である。 大役遊技の終了後の遊技状態を設定するための遊技状態設定テーブルを説明する図である。 当たり決定乱数判定テーブルを説明する図である。 (a)は普通図柄変動時間データテーブルを説明する図であり、(b)は開閉制御パターンテーブルを説明する図である。 遊技機状態フラグを説明する図である。 主制御基板におけるCPU初期化処理を説明する第1のフローチャートである。 主制御基板におけるCPU初期化処理を説明する第2のフローチャートである。 入力ポート動作条件設定テーブルを説明する図である。 主制御基板におけるサブコマンド群セット処理を説明するフローチャートである。 主制御基板における電源断時退避処理を説明するフローチャートである。 主制御基板におけるタイマ割込み処理を説明するフローチャートである。 主制御基板におけるポート入力処理を説明するフローチャートである。 入力ポートにおけるノイズフィルタを説明するための図である。 スイッチレベルデータおよびスイッチエッジデータを説明する図である。 主制御基板における設定関連処理を説明するフローチャートである。 主制御基板におけるスイッチ管理処理を説明するフローチャートである。 主制御基板におけるゲート通過処理を説明するフローチャートである。 主制御基板における第1始動口通過処理を説明するフローチャートである。 主制御基板における第2始動口通過処理を説明するフローチャートである。 主制御基板における特別図柄乱数取得処理を説明するフローチャートである。 特別遊技管理フェーズを説明する図である。 主制御基板における特別遊技管理処理を説明するフローチャートである。 主制御基板における特別図柄変動待ち処理を説明するフローチャートである。 主制御基板における特別図柄当たり判定処理を説明するフローチャートである。 主制御基板における特別図柄変動番号決定処理を説明するフローチャートである。 主制御基板における特別図柄変動中処理を説明するフローチャートである。 主制御基板における特別図柄停止図柄表示処理を説明するフローチャートである。 主制御基板における大入賞口開放前処理を説明するフローチャートである。 主制御基板における大入賞口開閉切替処理を説明するフローチャートである。 主制御基板における大入賞口開放制御処理を説明するフローチャートである。 主制御基板における大入賞口閉鎖有効処理を説明するフローチャートである。 主制御基板における大入賞口終了ウェイト処理を説明するフローチャートである。 普通遊技管理フェーズを説明する図である。 主制御基板における普通遊技管理処理を説明するフローチャートである。 主制御基板における普通図柄変動待ち処理を説明するフローチャートである。 主制御基板における普通図柄変動中処理を説明するフローチャートである。 主制御基板における普通図柄停止図柄表示処理を説明するフローチャートである。 主制御基板における普通電動役物入賞口開放前処理を説明するフローチャートである。 主制御基板における普通電動役物入賞口開閉切替処理を説明するフローチャートである。 主制御基板における普通電動役物入賞口開放制御処理を説明するフローチャートである。 主制御基板における普通電動役物入賞口閉鎖有効処理を説明するフローチャートである。 主制御基板における普通電動役物入賞口終了ウェイト処理を説明するフローチャートである。
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値等は、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
本発明の実施形態の理解を容易にするため、まず、遊技機の機械的構成および電気的構成を簡単に説明し、その後、各基板における具体的な処理を説明する。
図1は、本実施形態の遊技機100の斜視図であり、扉が開放された状態を示している。図示のように、遊技機100は、略矩形状に組まれた四辺によって囲繞空間が形成される外枠102と、この外枠102にヒンジ機構によって開閉自在に取り付けられた中枠104と、この中枠104に、ヒンジ機構によって開閉自在に取り付けられた前枠106と、を備えている。
中枠104は、外枠102と同様に、略矩形状に組まれた四辺によって囲繞空間が形成されており、この囲繞空間に遊技盤108が保持されている。また、前枠106には、ガラス製または樹脂製の透過板110が保持されている。そして、これら中枠104および前枠106を外枠102に対して閉じると、遊技盤108と透過板110とが所定の間隔を維持して略平行に対面するとともに、遊技機100の正面側から、透過板110を介して遊技盤108が視認可能となる。
図2は、遊技機100の正面図である。この図に示すように、前枠106の下部には、遊技機100の正面側に突出する操作ハンドル112が設けられている。この操作ハンドル112は、遊技者が回転操作可能に設けられており、遊技者が操作ハンドル112を回転させて発射操作を行うと、当該操作ハンドル112の回転角度に応じた強度で、不図示の発射機構によって遊技球が発射される。このようにして発射された遊技球は、遊技盤108に設けられたレール114a、114b間を上昇して遊技領域116に導かれることとなる。また、レール114aの先端部には、レール114a、114b間を上昇して遊技領域116に導かれた遊技球が再びレール114a、114b間へ逆戻りするのを防止する球戻り防止弁114cが設けられている。球戻り防止弁114cは、通常、レール114a、114b間を閉じるように付勢されている。そして、遊技領域116に向けて発射された遊技球がレール114a、114b間を上昇して、球戻り防止弁114cに衝突すると、当該遊技球の力によって、球戻り防止弁114cが付勢力に抗して開く構造となっている。
遊技領域116は、遊技盤108と透過板110との間隔に形成される空間であって、遊技球が流下または転動可能な領域である。遊技盤108には、多数の釘や風車が設けられており、遊技領域116に導かれた遊技球が釘や風車に衝突して、不規則な方向に流下、転動するようにしている。
遊技領域116は、発射機構の発射強度に応じて遊技球の進入度合いを互いに異にする第1遊技領域116aおよび第2遊技領域116bを備えている。第1遊技領域116aは、遊技機100に正対した遊技者から見て遊技領域116の左側に位置し、第2遊技領域116bは、遊技機100に正対した遊技者から見て遊技領域116の右側に位置している。レール114a、114bが遊技領域116の左側にあることから、発射機構によって所定の強度未満の発射強度で発射された遊技球は第1遊技領域116aに進入し、所定の強度以上の発射強度で発射された遊技球は第2遊技領域116bに進入することとなる。
また、遊技領域116には、遊技球が入球可能な一般入賞口118、第1始動口120、第2始動口122が設けられており、これら一般入賞口118、第1始動口120、第2始動口122に遊技球が入球すると、それぞれ所定の賞球が遊技者に払い出される。なお、賞球数は1個以上であれば何個でもよく、また、一般入賞口118、第1始動口120、第2始動口122のそれぞれで払い出す賞球数を異ならせてもよいし、同じ賞球数に設定してもよい。このとき、第1始動口120に遊技球が入球して払い出す賞球数を、第2始動口122に遊技球が入球して払い出す賞球数よりも少なく設定することも可能である。
なお、詳しくは後述するが、第1始動口120内には第1始動領域が設けられ、また、第2始動口122内には第2始動領域が設けられている。そして、第1始動口120または第2始動口122に遊技球が入球して第1始動領域または第2始動領域に遊技球が進入すると、予め設けられた複数の特別図柄の中からいずれか1の特別図柄を決定するための抽選が行われる。各特別図柄には、遊技者にとって有利な大役遊技または小当たり遊技の実行可否や、以後の遊技状態をどのような遊技状態にするかといった種々の遊技利益が対応付けられている。したがって、遊技者は、第1始動口120または第2始動口122に遊技球が入球すると、所定の賞球を獲得するのと同時に、種々の遊技利益を受ける権利獲得の機会を獲得することとなる。
第1始動口120は、遊技領域116の下部であって、第1遊技領域116aを流下する遊技球のみが入球可能であるか、もしくは、第1遊技領域116aに進入した遊技球の方が、第2遊技領域116bに進入した遊技球よりも進入しやすい位置に配置されている。
また、第2始動口122は、第2遊技領域116bに位置しており、第2遊技領域116bを流下する遊技球のみが入球可能であるか、もしくは、第2遊技領域116bに進入した遊技球の方が、第1遊技領域116aに進入した遊技球よりも進入しやすい位置に配置されている。この第2始動口122は、可動片122bを有する可変始動口(始動可変入賞装置)によって構成されており、第2始動口122への遊技球の進入容易性が可変するようになっている。具体的には、第2始動口122は、可動片122bが開閉可能に設けられており、この可動片122bが閉状態にあるときには、第2始動口122への遊技球の進入が不可能もしくは困難となっている。
これに対して、第2遊技領域116bに設けられたゲート124を遊技球が通過すると、第2始動口122が開放される補助遊技の実行有無が決定され、補助遊技の実行が決定された場合に、第2始動口122が開閉制御される補助遊技が実行される。より詳細には、ゲート124を遊技球が通過したことを条件として、後述する普通図柄の抽選が行われ、この抽選によって当たりに当選すると、可動片122bが所定時間、開状態に制御される。このように、可動片122bが開状態になると、当該可動片122bが遊技球を第2始動口122に導く受け皿として機能し、第2始動口122への遊技球の入球が容易となる。
さらに、遊技領域116の下部には、第1大入賞口126および第2大入賞口128が設けられている。第1大入賞口126および第2大入賞口128は、少なくとも第2遊技領域116bを流下する遊技球が入球可能な位置に配置されている。第1大入賞口126には、開閉扉126bが開閉可能に設けられており、通常、開閉扉126bが第1大入賞口126を閉鎖して、第1大入賞口126への遊技球の入球が不可能となっている。これに対して、前述の小当たり遊技が実行されると、開閉扉126bが開放されて、開閉扉126bが受け皿として機能し、第1大入賞口126への遊技球の入球が可能となる。そして、第1大入賞口126に遊技球が入球すると、所定の賞球が遊技者に払い出される。
また、第2大入賞口128には、開閉扉128bが開閉可能に設けられており、通常、開閉扉128bが第2大入賞口128を閉鎖して、第2大入賞口128への遊技球の入球を不可能となっている。これに対して、前述の大役遊技が実行されると、開閉扉128bが開放されて、開閉扉128bが受け皿として機能し、第2大入賞口128への遊技球の入球が可能となる。そして、第2大入賞口128に遊技球が入球すると、所定の賞球が遊技者に払い出される。なお、第1大入賞口126および第2大入賞口128をまとめて単に大入賞口とも呼ぶ。
なお、遊技領域116の最下部には、一般入賞口118、第1始動口120、第2始動口122、第1大入賞口126、第2大入賞口128のいずれにも入球しなかった遊技球を、遊技領域116から遊技盤108の背面側に排出する排出口130が設けられている。
そして、遊技機100には、遊技の進行中等に演出を行う演出装置として、液晶表示装置からなる演出表示装置200、可動装置からなる演出役物装置202、さまざまな点灯態様や発光色に制御されるランプからなる演出照明装置204、スピーカからなる音声出力装置206、遊技者の操作を受け付ける演出ボタン208が設けられている。
演出表示装置200は、画像を表示する画像表示部からなるメイン演出表示部200aおよびサブ演出表示部201aを備えている。メイン演出表示部200aは、遊技盤108の略中央部分において、遊技機100の正面側から視認可能に配置されている。このメイン演出表示部200aには、図示のように演出図柄210a、210b、210cが変動表示され、これら各演出図柄210a、210b、210cの停止表示態様によって大役抽選結果が遊技者に報知される変動演出が実行されることとなる。また、サブ演出表示部201aは、メイン演出表示部200aの上方に設けられており、変動演出中に補助的な演出画像が表示される。
演出役物装置202は、メイン演出表示部200aよりも前面に配置され、通常、遊技盤108の背面側に退避しているが、上記の演出図柄210a、210b、210cの変動表示中などに、メイン演出表示部200aの前面まで可動して、遊技者に大当たりの期待感を付与するものである。
演出照明装置204は、演出役物装置202や遊技盤108等に設けられており、メイン演出表示部200aに表示される画像等に合わせて、さまざまに点灯制御される。
音声出力装置206は、前枠106の上部位置や外枠102の最下部位置に設けられ、メイン演出表示部200aに表示される画像等に合わせて、遊技機100の正面側に向けてさまざまな音声を出力する。
演出ボタン208は、遊技者の押下操作を受け付けるボタンで構成され、遊技機100の幅方向略中央位置であって、かつ、透過板110よりも下方位置に設けられている。この演出ボタン208は、メイン演出表示部200aに表示される画像等に合わせて有効化されるものであり、操作有効時間内に遊技者の操作を受け付けると、当該操作に応じて、さまざまな演出が実行される。
なお、図中符号132は、遊技機100から払い出される賞球や、遊技球貸出装置から貸し出される遊技球が導かれる上皿であり、この上皿132が遊技球で一杯になると、遊技球は下皿134に導かれることとなる。また、この下皿134の底面には、当該下皿134から遊技球を排出するための球抜き孔(不図示)が形成されている。この球抜き孔は、通常、開閉板(不図示)によって閉じられているが、球抜きつまみ134aを押し込ませることにより、当該球抜きつまみ134aと一体となって開閉板がスライドし、球抜き孔から下皿134の下方に遊技球を排出することが可能となっている。
また、遊技盤108には、遊技領域116の外方であって、かつ、遊技者が視認可能な位置に、第1特別図柄表示器160、第2特別図柄表示器162、第1特別図柄保留表示器164、第2特別図柄保留表示器166、普通図柄表示器168、普通図柄保留表示器170、右打ち報知表示器172が設けられている。これら各表示器160〜172は、遊技に係る種々の状況を表示するための装置であるが、その詳細については後述する。
(制御手段の内部構成)
図3は、遊技の進行を制御する制御手段の内部構成を示すブロック図である。
主制御基板300は遊技の基本動作を制御する。この主制御基板300は、メインCPU300a、メインROM300b、メインRAM300cを備えている。メインCPU300aは、入力ポート制御レジスタ300dを含んで構成され、各検出スイッチやタイマからの入力信号に基づいて、メインROM300bに格納されたプログラムを読み出して演算処理を行うとともに、各装置や表示器を直接制御したり、あるいは演算処理の結果に応じて他の基板にコマンドを送信したりする。メインRAM300cは、メインCPU300aの演算処理時におけるデータのワークエリアとして機能する。また、入力ポート制御レジスタ300dは、各種の検出スイッチ(センサ)が接続される複数の入力ポートを備え、各入力ポートにおけるノイズフィルタを設定するためのレジスタとして機能する。
本実施形態の遊技機100は、主に第1始動口120または第2始動口122への遊技球の入球によって開始される特別遊技と、ゲート124を遊技球が通過することによって開始される普通遊技とに大別される。そして、主制御基板300のメインROM300bには、特別遊技および普通遊技を進行するための種々のプログラムや、各種の遊技に必要なデータ、テーブルが記憶されている。
上記主制御基板300には、一般入賞口118に遊技球が入球したことを検出する一般入賞口検出スイッチ118s、第1始動口120に遊技球が入球したことを検出する第1始動口検出スイッチ120s、第2始動口122に遊技球が入球したことを検出する第2始動口検出スイッチ122s、ゲート124を遊技球が通過したことを検出するゲート検出スイッチ124s、第1大入賞口126に遊技球が入球したことを検出する第1大入賞口検出スイッチ126s、第2大入賞口128に遊技球が入球したことを検出する第2大入賞口検出スイッチ128s、遊技領域116へ発射された遊技球を検出するアウト球検出スイッチ114sが接続されており、これら各検出スイッチから主制御基板300に検出信号が入力されるようになっている。
なお、アウト球検出スイッチ114sは、球戻り防止弁114cの近傍に設けられており、レール114a、114b間を上昇して遊技領域116へ発射された遊技球によって球戻り防止弁114cが開いたことを検出することで、遊技球の通過を検出している。アウト球検出スイッチ114sとしては、例えば、フォトセンサを用いることができる。
また、一般入賞口検出スイッチ118s、第1始動口検出スイッチ120s、第2始動口検出スイッチ122s、ゲート検出スイッチ124s、第1大入賞口検出スイッチ126s、第2大入賞口検出スイッチ128sとしては、例えば、近接センサを用いることができる。近接センサは、例えば、遊技球が通過可能な検出孔を有し、高周波発振回路を構成するリング状の検出コイルがその検出孔を取り囲むように内蔵されており、遊技球が検出孔を通過する際の検出コイルのインピーダンス変化によって遊技球の通過を検出可能となっている。
また、主制御基板300には、第2始動口122の可動片122bを作動する普通電動役物ソレノイド122cと、第1大入賞口126を開閉する開閉扉126bを作動する第1大入賞口ソレノイド126cと、第2大入賞口128を開閉する開閉扉128bを作動する第2大入賞口ソレノイド128cと、が接続されており、主制御基板300によって、第2始動口122、第1大入賞口126、第2大入賞口128の開閉制御がなされるようになっている。
さらに、主制御基板300には、第1特別図柄表示器160、第2特別図柄表示器162、第1特別図柄保留表示器164、第2特別図柄保留表示器166、普通図柄表示器168、普通図柄保留表示器170、右打ち報知表示器172が接続されており、主制御基板300によって、これら各表示器の表示制御がなされるようになっている。
また、遊技機100には、電波を検知する電波検知センサ、磁気を検知する磁気検知センサ、中枠104や前枠106の開放状態を検知する扉開放センサ等、異常または不正の可能性があることを検知する異常検知センサ174が複数設けられており、各異常検知センサ174から主制御基板300に異常検知信号が入力されるように構成されている。
さらに、遊技盤108の背面には、設定変更スイッチ180sが設けられている。設定変更スイッチ180sは、専用の鍵によってアクセス可能に構成されている。設定変更スイッチ180sがオンしていることを条件として、設定値を変更、確認する操作が可能となる。詳しくは後述するが、本実施形態の遊技機100は、有利度合いが異なる6段階の設定値のいずれかが設定値バッファに登録設定値として記憶され、記憶されている登録設定値に応じて遊技が進行する。
また、遊技盤108の背面には、RAMクリアボタンが押下操作可能に設けられており、このRAMクリアボタンの押下操作がRAMクリアスイッチ182sによって検出される。RAMクリアスイッチ182sは主制御基板300に接続されており、RAMクリアスイッチ182sから主制御基板300にRAMクリア操作信号が入力される。電源投入時にRAMクリアスイッチ182sからRAMクリア操作信号が入力されている場合、メインCPU300aは、メインRAM300cをクリアする。
また、遊技盤108の背面には、性能表示モニタ184が設けられている。主制御基板300により、性能表示モニタ184に登録設定値やベース比率が表示される。
また、主制御基板300には、払出制御基板310および副制御基板330が接続されている。
払出制御基板310は、遊技球を発射させるための制御、および、賞球を払い出すための制御を行う。この払出制御基板310も、CPU、ROM、RAMを備えており、主制御基板300に対して双方向に通信可能に接続されている。この払出制御基板310には遊技情報出力端子板312が接続されており、主制御基板300から出力される遊技進行上の種々の情報が、払出制御基板310および遊技情報出力端子板312を介して、遊技店のホールコンピュータ等に出力されることとなる。
また、払出制御基板310には、貯留部に貯留された遊技球を賞球として遊技者に払い出すための払出モータ314が接続されている。払出制御基板310は、主制御基板300から送信された払出個数指定コマンドに基づいて払出モータ314を制御して所定の賞球を遊技者に払い出すように制御する。このとき、払い出された遊技球数が払出球計数スイッチ316sによって検出され、払い出すべき賞球が遊技者に払い出されたかが把握されるようになっている。
また、払出制御基板310には、下皿134の満タン状態を検出する皿満タン検出スイッチ318sが接続されている。この皿満タン検出スイッチ318sは、賞球として払い出される遊技球を下皿134に導く通路に設けられており、当該通路を遊技球が通過するたびに、遊技球検出信号が払出制御基板310に入力されるようになっている。
そして、下皿134に所定量以上の遊技球が貯留されて満タン状態になると、下皿134に向かう通路内に遊技球が滞留し、皿満タン検出スイッチ318sから払出制御基板310に向けて、遊技球検出信号が連続的に入力される。払出制御基板310は、遊技球検出信号が所定時間連続して入力された場合に、下皿134が満タン状態であると判断し、皿満タンコマンドを主制御基板300に送信する。一方、皿満タンコマンドを送信した後、遊技球検出信号の連続入力が途絶えた場合には、満タン状態が解除されたと判断し、皿満タン解除コマンドを主制御基板300に送信する。
また、払出制御基板310には、発射制御回路320が双方向に通信可能に接続されている。この発射制御回路320は、払出制御基板310から発射制御データを受信すると発射の許可を行う。この発射制御回路320には、操作ハンドル112に設けられ、当該操作ハンドル112に遊技者が触れたことを検出するタッチセンサ112sと、操作ハンドル112の操作角度を検出する操作ボリューム112aと、が接続されている。そして、タッチセンサ112sおよび操作ボリューム112aから信号が入力されると、発射制御回路320において、遊技球発射装置に設けられた発射用ソレノイド112cを通電して遊技球を発射させる制御がなされる。
副制御基板330は、主に遊技中や待機中等の各演出を制御する。この副制御基板330は、サブCPU330a、サブROM330b、サブRAM330c、RTC330dを備えており、主制御基板300に対して、当該主制御基板300から副制御基板330への一方向に通信可能に接続されている。サブCPU330aは、主制御基板300から送信されたコマンドやタイマからの入力信号等に基づいて、サブROM330bに格納されたプログラムを読み出して演算処理を行うとともに、演出を実行制御する。このとき、サブRAM330cは、サブCPU330aの演算処理時におけるデータのワークエリアとして機能する。
具体的には、副制御基板330は、上記メイン演出表示部200aおよびサブ演出表示部201aに画像を表示させる画像表示制御を行う。サブROM330bには、メイン演出表示部200aおよびサブ演出表示部201aに表示される種々の画像データが多数格納されており、サブCPU330aが、画像データをサブROM330bから不図示のVRAMに読み出して、メイン演出表示部200aおよびサブ演出表示部201aの画像表示を制御する。
また、副制御基板330は、演出役物装置202を可動したり演出照明装置204を点灯制御したりするとともに、音声出力装置206から音声を出力させる音声出力制御を行う。さらには、演出ボタン208が押下操作されたことを検出する演出ボタン検出スイッチ208sから操作検出信号が入力された際に、所定の演出を実行する。
なお、各基板には、不図示の電源基板が接続されており、電源基板を介して商用電源から各基板に電力供給がなされている。また、電源基板にはコンデンサからなるバックアップ電源が設けられている。副制御基板330に設けられたRTC330dは、このバックアップ電源から電源供給を受けて現在時刻を計時する。
図4は、メインCPU300aが用いるメモリ領域のアドレスマップである。なお、図4において、アドレスは16進数で示しており、「H」は16進数であることを示している。図4に示すように、メインCPU300aが用いるメモリ領域は、メインROM300bに割り当てられたメモリ領域(0000H〜2FFFH)と、メインRAM300cに割り当てられたメモリ領域(F000H〜F3FFH)とを含んでいる。
メインROM300bのメモリ領域は、遊技の進行を制御するためのプログラムおよびデータを格納する使用領域(0000H〜1A7AH)と、使用領域以外の領域であって、遊技機規則で定める試験を行うための処理や、性能表示モニタ184を表示するための処理(性能表示モニタ184に表示するベース比率を算出するための処理を含む)を実行するためのプログラムおよびデータを格納する使用外領域(2000H〜2BFFH)とが設けられている。
メインROM300bの使用領域には、遊技の進行を制御するためのプログラムが格納されるプログラム領域(0000H〜0A89H)、未使用領域(0A8AH〜0FFFH)、プログラム以外のデータが格納されるデータ領域(1000H〜1A7AH)が設けられている。なお、使用領域は、未使用領域(0A8AH〜0FFFH)を含めないようにしてもよい。
メインROM300bの使用外領域には、遊技機規則で定める試験を行うための処理や、性能表示モニタ184を表示するための処理を実行するためのプログラムが格納されるプログラム領域(2000H〜27FFH)、これらのプログラム以外のデータが格納されるデータ領域(2800H〜2BFFH)が設けられている。
また、メインROM300bのメモリ領域には、使用領域および使用外領域以外にも、未使用領域(1A7BH〜1DFFH)、プログラムのタイトル、バージョン等の任意のデータが格納されるROMコメント領域(1E00H〜1EFFH)、未使用領域(1F00H〜1FFFH)、未使用領域(2C00H〜2FBFH)、メインCPU300aがプログラムを実行するために必要な情報が格納されるプログラム管理領域(2FC0H〜2FFFH)が設けられている。
メインRAM300cのメモリ領域は、遊技の進行を制御するためのプログラムが実行されている際に一時的に用いられる使用領域(F000H〜F1FFH)と、使用領域以外の領域であって、遊技機規則で定める試験を行うための処理や、性能表示モニタ184を表示するための処理のプログラムが実行されている際に一時的に用いられる使用外領域(F210H〜F228H)とが設けられている。
メインRAM300cの使用領域には、遊技の進行を制御するためのプログラムが実行されている際に一時的に用いられるワーク領域(F000H〜F12AH)、未使用領域(F12BH〜F1D7H)、遊技の進行を制御するためのプログラムの実行中にデータを一時的に退避させるスタック領域(F1D8H〜F1FFH)が設けられている。なお、使用領域は、未使用領域(F12BH〜F1D7H)を含めないようにしてもよい。
メインRAM300cの使用外領域には、遊技機規則で定める試験を行うための処理や、性能表示モニタ184を表示するための処理のプログラムが実行されている際に一時的に用いられるワーク領域(F210H〜F21FH)、これらのプログラムが実行されている際にデータを一時的に退避させるスタック領域(F220H〜F228H)が設けられている。
また、メインRAM300cのメモリ領域には、使用領域および使用外領域以外にも、未使用領域(F200H〜F20FH)、未使用領域(F229H〜F3FFH)が設けられている。
このように、メインROM300bおよびメインRAM300cでは、遊技の進行を制御するために用いられる使用領域と、遊技機規則で定める試験を行うための処理や、性能表示モニタ184の表示制御をするための処理を実行するために用いられる使用外領域とが分かれて設けられている。
そして、メインRAM300cでは、使用領域と使用外領域との間に、16バイトの未使用領域(F200H〜F20FH)が設けられている。この未使用領域(F200H〜F20FH)は、使用領域および使用外領域を分ける境界領域として設定されており、使用領域と使用外領域との境界が明確となり、遊技の進行を制御するためのプログラムが実行されている際に使用外領域が用いられること、および、遊技機規則で定める試験を行うための処理や、性能表示モニタ184の表示制御をするための処理のプログラムが実行されている際に使用領域が用いられることを防止している。
なお、使用領域と使用外領域との間に設けられる未使用領域は、少なくとも1バイト以上であればよく、不正防止の観点から、4バイト以上であることが望ましく、16バイト以上に設定されることがより望ましい。また、未使用領域は、データの書き込みおよび読み出しが禁止されているが、不正防止の観点から、所定のタイミングでクリアするようにしてもよい。
次に、本実施形態の遊技機100における遊技について、メインROM300bに記憶されている各種テーブルと併せて説明する。
前述したように、本実施形態の遊技機100は、特別遊技と普通遊技の2種類の遊技が並行して進行するものであり、これら両遊技を進行する際の遊技状態として、低確率遊技状態または高確率遊技状態のいずれかの遊技状態と、非時短遊技状態または時短遊技状態のいずれかの遊技状態と、が組み合わされたいずれかの遊技状態にて遊技が進行する。
各遊技状態の詳細については後述するが、低確率遊技状態というのは、第1大入賞口126および第2大入賞口128が開放される大役遊技を実行する権利獲得の確率が低く設定された遊技状態であり、高確率遊技状態というのは、大役遊技を実行する権利獲得の確率が高く設定された遊技状態である。
また、非時短遊技状態というのは、可動片122bが開状態になりにくく、第2始動口122に遊技球が入球しにくい遊技状態であり、時短遊技状態というのは、非時短遊技状態よりも可動片122bが開状態になりやすく、第2始動口122に遊技球が入球しやすい遊技状態である。なお、遊技機100の初期状態は、低確率遊技状態および非時短遊技状態に設定され、この遊技状態を本実施形態では通常遊技状態と称する。
遊技者が操作ハンドル112を操作して遊技領域116に遊技球を発射させるとともに、遊技領域116を流下する遊技球が第1始動口120または第2始動口122に入球すると、遊技者に遊技利益を付与するか否かの抽選(以下、「大役抽選」という)が行われる。この大役抽選において、大当たりまたは小当たりに当選すると、第1大入賞口126および第2大入賞口128が開放されるとともに当該第1大入賞口126および第2大入賞口128への遊技球の入球が可能となる大役遊技または小当たり遊技が実行される。また、大役遊技の終了後の遊技状態には、上記のいずれかの遊技状態に設定される。以下では、大役抽選方法について説明する。
なお、詳しくは後述するが、第1始動口120または第2始動口122に遊技球が入球すると、大役抽選に係る種々の乱数値(大当たり決定乱数、当たり図柄乱数、リーチグループ決定乱数、リーチモード決定乱数、変動パターン乱数)が取得されるとともに、これら各乱数値がメインRAM300cの特図保留記憶領域に記憶される。以下では、第1始動口120に遊技球が入球して特図保留記憶領域に記憶された種々の乱数を総称して特1保留とよび、第2始動口122に遊技球が入球して特図保留記憶領域に記憶された種々の乱数を総称して特2保留と呼ぶ。
メインRAM300cの特図保留記憶領域は、第1特図保留記憶領域と第2特図保留記憶領域とを備えている。第1特図保留記憶領域および第2特図保留記憶領域は、それぞれ4つの記憶部(第1〜第4記憶部)を有している。そして、第1始動口120に遊技球が入球すると、特1保留を第1特図保留記憶領域の第1記憶部から順に記憶し、第2始動口122に遊技球が入球すると、特2保留を第2特図保留記憶領域の第1記憶部から順に記憶する。
例えば、第1始動口120に遊技球が入球したとき、第1特図保留記憶領域の第1記憶部〜第4記憶部のいずれにも保留が記憶されていない場合には、第1記憶部に特1保留を記憶する。また、例えば、第1記憶部〜第3記憶部に特1保留が記憶されている状態で、第1始動口120に遊技球が入球した場合には、特1保留を第4記憶部に記憶する。また、第2始動口122に遊技球が入球した場合にも、上記と同様に、第2特図保留記憶領域の第1記憶部〜第4記憶部の中で、特2保留が記憶されていない、最も番号(序数)の小さい記憶部に特2保留が記憶される。
ただし、第1特図保留記憶領域および第2特図保留記憶領域に記憶可能な特1保留数(X1)および特2保留数(X2)は、それぞれ4つに設定されている。したがって、例えば、第1始動口120に遊技球が入球したときに、第1特図保留記憶領域に既に4つの特1保留が記憶されている場合には、当該第1始動口120への遊技球の入球によって新たに特1保留が記憶されることはない。同様に、第2始動口122に遊技球が入球したときに、第2特図保留記憶領域に既に4つの特2保留が記憶されている場合には、当該第2始動口122への遊技球の入球によって新たに特2保留が記憶されることはない。
図5は、低確時大当たり決定乱数判定テーブルを説明する図である。第1始動口120または第2始動口122に遊技球が入球すると、0〜65535の範囲内から1つの大当たり決定乱数が取得される。そして、大役抽選を開始するとき、すなわち、大当たりの判定を行うときの遊技状態に応じて大当たり決定乱数判定テーブルが選択され、当該選択された大当たり決定乱数判定テーブルと取得された大当たり決定乱数とによって大役抽選が行われる。
低確率遊技状態において、特1保留および特2保留について大役抽選を開始する場合には、低確時大当たり決定乱数判定テーブルが参照される。ここで、本実施形態では、有利度合いを異にする6段階の設定値が設けられており、低確時大当たり決定乱数判定テーブルは、設定値ごとに設けられている。遊技中は、設定値が6段階のうちのいずれかに設定されており、現在設定されている設定値(設定値バッファに記憶されている登録設定値)に対応する低確時大当たり決定乱数判定テーブルを参照して大役抽選が行われる。
低確率遊技状態であって、設定値=1に設定されている場合(登録設定値=1)には、図5(a)に示す低確時大当たり決定乱数判定テーブルaを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルaによれば、大当たり決定乱数が10001〜10218であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/300.6となり、小当たり確率は約1/50となる。
低確率遊技状態であって、設定値=2に設定されている場合(登録設定値=2)には、図5(b)に示す低確時大当たり決定乱数判定テーブルbを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルbによれば、大当たり決定乱数が10001〜10225であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/291.2となり、小当たり確率は約1/50となる。
低確率遊技状態であって、設定値=3に設定されている場合(登録設定値=3)には、図5(c)に示す低確時大当たり決定乱数判定テーブルcを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルcによれば、大当たり決定乱数が10001〜10232であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/282.4となり、小当たり確率は約1/50となる。
低確率遊技状態であって、設定値=4に設定されている場合(登録設定値=4)には、図5(d)に示す低確時大当たり決定乱数判定テーブルdを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルdによれば、大当たり決定乱数が10001〜10239であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/274.2となり、小当たり確率は約1/50となる。
低確率遊技状態であって、設定値=5に設定されている場合(登録設定値=5)には、図5(e)に示す低確時大当たり決定乱数判定テーブルeを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルeによれば、大当たり決定乱数が10001〜10246であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/266.4となり、小当たり確率は約1/50となる。
低確率遊技状態であって、設定値=6に設定されている場合(登録設定値=6)には、図5(f)に示す低確時大当たり決定乱数判定テーブルfを参照して大役抽選が行われる。この低確時大当たり決定乱数判定テーブルfによれば、大当たり決定乱数が10001〜10253であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/259.0となり、小当たり確率は約1/50となる。
図6は、高確時大当たり決定乱数判定テーブルを説明する図である。高確率遊技状態において、特1保留および特2保留について大役抽選を開始する場合には、高確時大当たり決定乱数判定テーブルが参照される。高確時大当たり決定乱数判定テーブルも、低確時大当たり決定乱数判定テーブルと同様に設定値ごとに設けられている。
高確率遊技状態であって、設定値=1に設定されている場合(登録設定値=1)には、図6(a)に示す高確時大当たり決定乱数判定テーブルaを参照して大役抽選が行われる。この高確時大当たり決定乱数判定テーブルaによれば、大当たり決定乱数が10001〜10620であった場合に大当たりと判定し、大当たり決定乱数が20001〜21310であった場合に小当たりと判定し、その他の大当たり決定乱数であった場合にはハズレと判定する。したがって、この場合の大当たり確率は約1/105.7となり、小当たり確率は約1/50となる。
同様に、高確率遊技状態であって、設定値=2〜6に設定されている場合(登録設定値=2〜6)には、図6(b)〜(f)に示す高確時大当たり決定乱数判定テーブルb〜fを参照して大役抽選が行われる。これら高確時大当たり決定乱数判定テーブルb〜fによれば、それぞれ大当たり決定乱数が図示の値であった場合に大当たりと判定する。したがって、設定値=2〜6の場合の大当たり確率は、それぞれ約1/102.4〜1/91.0となり、小当たり確率は約1/50となる。
以上のように、大役抽選は、登録設定値に応じて行われる。このとき、登録設定値に応じて大当たりの当選確率が異なっており、登録設定値が大きい場合の方が、小さい場合に比べて、大当たりに当選しやすくなっている。なお、ここでは、登録設定値が異なっても、小当たりの当選確率は変わらないこととしたが、登録設定値ごとに小当たりの当選確率を異ならせてもよい。また、小当たりは必須ではなく、大役抽選において、大当たりおよびハズレのいずれかのみが決定されてもよい。
また、ここでは、低確率遊技状態および高確率遊技状態の双方における大当たりの当選確率が、登録設定値に応じて異なることとしたが、低確率遊技状態および高確率遊技状態のいずれか一方における大当たりの当選確率のみが、登録設定値に応じて異なることとしてもよい。
図7は、当たり図柄乱数判定テーブルを説明する図である。第1始動口120または第2始動口122に遊技球が入球すると、0〜99の範囲内から1つの当たり図柄乱数が取得される。そして、上記の大役抽選により「大当たり」または「小当たり」の判定結果が導出された場合に、取得している当たり図柄乱数と当たり図柄乱数判定テーブルとによって、特別図柄の種別が決定される。このとき、特1保留によって「大当たり」に当選した場合には、図7(a)に示すように、特1用当たり図柄乱数判定テーブルaが選択され、特1保留によって「小当たり」に当選した場合には、図7(b)に示すように、特1用当たり図柄乱数判定テーブルbが選択される。また、特2保留によって「大当たり」に当選した場合には、図7(c)に示すように、特2用当たり図柄乱数判定テーブルaが選択され、特2保留によって「小当たり」に当選した場合には、図7(d)に示すように、特2用当たり図柄乱数判定テーブルbが選択される。以下では、当たり図柄乱数によって決定される特別図柄、すなわち、大当たりの判定結果が得られた場合に決定される特別図柄を大当たり図柄と呼び、小当たりの判定結果が得られた場合に決定される特別図柄を小当たり図柄と呼び、ハズレの判定結果が得られた場合に決定される特別図柄をハズレ図柄と呼ぶ。
図7(a)に示す特1用当たり図柄乱数判定テーブルa、および、図7(c)に示す特2用当たり図柄乱数判定テーブルaによれば、取得した当たり図柄乱数の値に応じて、図示のとおり、特別図柄の種別(大当たり図柄)が決定される。また、図7(b)に示す特1用当たり図柄乱数判定テーブルb、および、図7(d)に示す特2用当たり図柄乱数判定テーブルbによれば、取得した当たり図柄乱数の値に拘わらず、図示のとおり、特別図柄の種別(小当たり図柄)が特別図柄aに決定される。
一方、大役抽選結果が「ハズレ」であった場合に、当該抽選結果が特1保留によって導出されたときは、抽選を行うことなくハズレ図柄として特別図柄Xが決定される。また、大役抽選結果が「ハズレ」であった場合に、当該抽選結果が特2保留によって導出されたときは、抽選を行うことなくハズレ図柄として特別図柄Yが決定される。
つまり、当たり図柄乱数判定テーブルは、大役抽選結果が「大当たり」または「小当たり」であった場合にのみ参照され、大役抽選結果が「ハズレ」であった場合に参照されることはない。なお、ここでは、特1用当たり図柄乱数判定テーブル、および、特2用当たり図柄乱数判定テーブルにおいて、同一の大当たり図柄がそれぞれ決定されることとした。しかしながら、両テーブルにおいて異なる大当たり図柄が決定されるようにしてもよいし、保留種別を問わず、1の当たり図柄乱数判定テーブルを参照して特別図柄の種別(大当たり図柄)を決定してもよい。
なお、ここでは、大当たり図柄および小当たり図柄の選択比率が、全設定値で共通としたが、大当たり図柄および小当たり図柄のいずれか一方または双方を、設定値ごとに異ならせてもよい。
図8は、リーチグループ決定乱数判定テーブルを説明する図である。このリーチグループ決定乱数判定テーブルは複数設けられており、保留種別、保留数、遊技状態、遊技状態に対応付けられている変動状態等に応じて、予め設定されたテーブルが選択される。第1始動口120または第2始動口122に遊技球が入球すると、0〜10006の範囲内から1つのリーチグループ決定乱数が取得される。上記のように、大役抽選結果が導出されると、当該大役抽選結果を報知する変動演出パターンを決定する処理が行われる。本実施形態では、大役抽選結果が「ハズレ」であった場合に、変動演出パターンを決定するにあたって、まず、リーチグループ決定乱数とリーチグループ決定乱数判定テーブルとによってグループ種別が決定される。なお、変動状態とは、いずれのテーブルを参照して変動演出パターンを決定するかが規定されたものであり、遊技状態とは別に設定される概念である。
例えば、遊技状態が非時短遊技状態に設定されているときに、特1保留に基づいて「ハズレ」の大役抽選結果が導出された場合において、大役抽選を行うときの特1保留の保留数(以下、単に「保留数」という)が0個であれば、図8(a)に示すように、リーチグループ決定乱数判定テーブル1が選択される。同様に、通常遊技状態に設定されているときに、特1保留に基づいて「ハズレ」の大役抽選結果が導出された場合において、大役抽選を行うときの保留数が1〜2個であれば、図8(b)に示すように、リーチグループ決定乱数判定テーブル2が選択され、保留数が3個であれば、図8(c)に示すように、リーチグループ決定乱数判定テーブル3が選択される。なお、図8において、グループ種別の欄に記載しているグループxは、任意のグループ番号を示している。したがって、取得したリーチグループ決定乱数と、参照するリーチグループ決定乱数判定テーブルの種類とに応じて、グループ種別として種々のグループ番号が決定されることとなる。
なお、ここでは、非時短遊技状態において、特1保留に基づいて「ハズレ」の大役抽選結果が導出されたときに参照されるリーチグループ決定乱数判定テーブルについて説明したが、メインROM300bには、この他にも多数のリーチグループ決定乱数判定テーブルが記憶されている。
なお、大役抽選結果が「大当たり」または「小当たり」であった場合には、変動演出パターンを決定するにあたってグループ種別を決定することはない。つまり、リーチグループ決定乱数判定テーブルは、大役抽選結果が「ハズレ」であった場合にのみ参照され、大役抽選結果が「大当たり」または「小当たり」であった場合に参照されることはない。
図9は、リーチモード決定乱数判定テーブルを説明する図である。このリーチモード決定乱数判定テーブルは、大役抽選結果が「ハズレ」であった場合に選択されるハズレ時リーチモード決定乱数判定テーブルと、大役抽選結果が「大当たり」であった場合に選択される大当たり時リーチモード決定乱数判定テーブルと、大役抽選結果が「小当たり」であった場合に選択される小当たり時リーチモード決定乱数判定テーブルとに大別される。なお、ハズレ時リーチモード決定乱数判定テーブルは、上記のように決定されたグループ種別ごとに設けられており、大当たり時リーチモード決定乱数判定テーブルおよび小当たり時リーチモード決定乱数判定テーブルは、保留種別ごとに設けられている。
また、各リーチモード決定乱数判定テーブルは、遊技状態や図柄の種別ごとにも設けられている。ここでは、所定の遊技状態および図柄種別において参照されるグループx用ハズレ時リーチモード決定乱数判定テーブルの一例を図9(a)に示し、特1用大当たり時リーチモード決定乱数判定テーブルの一例を図9(b)に示し、特2用大当たり時リーチモード決定乱数判定テーブルの一例を図9(c)に示し、特1用小当たり時リーチモード決定乱数判定テーブルの一例を図9(d)に示し、特2用小当たり時リーチモード決定乱数判定テーブルの一例を図9(e)に示す。
第1始動口120または第2始動口122に遊技球が入球すると、0〜250の範囲内から1つのリーチモード決定乱数が取得される。そして、上記の大役抽選の結果が「ハズレ」であった場合には、図9(a)に示すように、上記のグループ種別の抽選により決定されたグループ種別に対応するハズレ時リーチモード決定乱数判定テーブルが選択され、選択されたハズレ時リーチモード決定乱数判定テーブルとリーチモード決定乱数とに基づいて、変動モード番号が決定される。また、上記の大役抽選の結果が「大当たり」であった場合には、図9(b)、(c)に示すように、読み出された保留種別に対応する大当たり時リーチモード決定乱数判定テーブルが選択され、選択された大当たり時リーチモード決定乱数判定テーブルとリーチモード決定乱数とに基づいて、変動モード番号が決定される。
さらに、上記の大役抽選の結果が「小当たり」であった場合には、図9(d)、(e)に示すように、読み出された保留種別に対応する小当たり時リーチモード決定乱数判定テーブルが選択され、選択された小当たり時リーチモード決定乱数判定テーブルとリーチモード決定乱数とに基づいて、変動モード番号が決定される。
また、各リーチモード決定乱数判定テーブルにおいては、リーチモード決定乱数に、変動モード番号とともに、後述する変動パターン乱数判定テーブルが対応付けられており、変動モード番号が決定されるのと同時に、変動パターン乱数判定テーブルが決定される。なお、図9において、変動パターン乱数判定テーブルの欄に記載しているテーブルxは、任意のテーブル番号を示している。したがって、取得したリーチグループ決定乱数と、参照するリーチモード決定乱数判定テーブルの種類とに応じて、変動モード番号と、変動パターン乱数判定テーブルのテーブル番号とが決定されることとなる。また、本実施形態において、変動モード番号および後述する変動パターン番号は、16進数で設定されている。以下において、16進数を示す場合には「H」を付するが、図9〜図11に○○Hと記載しているのは、16進数で示される任意の値を示すものである。
以上のように、大役抽選結果が「ハズレ」であった場合には、まず、図8に示すリーチグループ決定乱数判定テーブルとリーチグループ決定乱数とによってグループ種別が決定される。そして、決定されたグループ種別と遊技状態に応じ、図9(a)に示すハズレ時リーチモード決定乱数判定テーブルとリーチモード決定乱数とによって、変動モード番号および変動パターン乱数判定テーブルが決定される。
一方、大役抽選結果が「大当たり」または「小当たり」であった場合には、決定された大当たり図柄または小当たり図柄(特別図柄の種別)、大当たり、または、小当たり当選時の遊技状態等に対応する、図9に示す大当たり時リーチモード決定乱数判定テーブルを参照し、リーチモード決定乱数を用いて、変動モード番号、変動パターン乱数判定テーブルが決定されることとなる。
図10は、変動パターン乱数判定テーブルを説明する図である。ここでは、所定のテーブル番号xの変動パターン乱数判定テーブルxを示すが、変動パターン乱数判定テーブルは、この他にも、テーブル番号ごとに多数設けられている。
第1始動口120または第2始動口122に遊技球が入球すると、0〜238の範囲内から1つの変動パターン乱数が取得される。そして、上記の変動モード番号と同時に決定された変動パターン乱数判定テーブルと、取得した変動パターン乱数とに基づいて、図示のように変動パターン番号が決定される。
このように、大役抽選が行われると、大役抽選結果、決定された図柄種別、遊技状態、保留数、保留種別等に応じて、変動モード番号、変動パターン番号が決定される。これら変動モード番号、変動パターン番号は、変動演出パターンを特定するものであり、そのそれぞれに、変動演出の態様および時間が対応付けられている。
図11は、変動時間決定テーブルを説明する図である。上記のように、変動モード番号が決定されると、図11(a)に示す変動時間1決定テーブルにしたがって変動時間1が決定される。この変動時間1決定テーブルによれば、変動モード番号ごとに変動時間1が対応付けられており、決定された変動モード番号に応じて、対応する変動時間1が決定される。
また、上記のように、変動パターン番号が決定されると、図11(b)に示す変動時間2決定テーブルにしたがって変動時間2が決定される。この変動時間2決定テーブルによれば、変動パターン番号ごとに変動時間2が対応付けられており、決定された変動パターン番号に応じて、対応する変動時間2が決定される。このようにして決定された変動時間1、2の合計時間が、大役抽選結果を報知する変動演出の時間、すなわち、変動時間となる。
以上のようにして変動モード番号が決定されると、当該決定された変動モード番号に対応する変動モードコマンドが副制御基板330に送信され、変動パターン番号が決定されると、当該決定された変動パターン番号に対応する変動パターンコマンドが副制御基板330に送信される。副制御基板330においては、受信した変動モードコマンドに基づいて、主に変動演出の前半の態様が決定され、受信した変動パターンコマンドに基づいて、主に変動演出の後半の態様が決定されることとなるが、その詳細については後述する。なお、以下では、変動モード番号および変動パターン番号を総称して変動情報と呼び、変動モードコマンドおよび変動パターンコマンドを総称して変動コマンドと呼ぶ場合がある。
図12は、特別電動役物作動ラムセットテーブルを説明する図である。この特別電動役物作動ラムセットテーブルは、大役遊技または小当たり遊技を制御するための各種データが記憶されたものであり、大役遊技中および小当たり遊技中は、この特別電動役物作動ラムセットテーブルを参照して、第1大入賞口ソレノイド126c、第2大入賞口ソレノイド128cが通電制御される。なお、実際は、特別電動役物作動ラムセットテーブルは、特別図柄(大当たり図柄および小当たり図柄)の種別ごとに複数設けられており、決定された特別図柄の種別に応じて、対応するテーブルが大役遊技または小当たり遊技の開始時にセットされるが、ここでは、説明の都合上、1つのテーブルに全ての特別図柄の制御データを示す。
大当たり図柄である特別図柄A、B、C、または、小当たり図柄である特別図柄aが決定されると、図12に示すように、特別電動役物作動ラムセットテーブルを参照して、第1大入賞口126および第2大入賞口128を所定の開閉パターンで開閉制御する開閉処理が実行される。大役遊技は、第2大入賞口128が所定回数開閉される複数回のラウンド遊技で構成され、小当たり遊技は、第1大入賞口126が所定回数開閉されるラウンド遊技が1回のみ実行される。
この特別電動役物作動ラムセットテーブルによれば、オープニング時間(最初のラウンド遊技が開始されるまでの待機時間)、特別電動役物最大作動回数(1回の大役遊技中または小当たり遊技中に実行されるラウンド遊技の回数)、開放大入賞口(各ラウンド遊技において開放される第1大入賞口126および第2大入賞口128)、特別電動役物開閉切替回数(1ラウンド遊技中の第1大入賞口126および第2大入賞口128の開放回数)、ソレノイド通電時間(第1大入賞口126および第2大入賞口128の開放回数ごとの第1大入賞口ソレノイド126cおよび第2大入賞口ソレノイド128cの通電時間、すなわち、1回の第1大入賞口126および第2大入賞口128の開放時間)、規定数(1回のラウンド遊技における第1大入賞口126および第2大入賞口128への最大入賞可能数)、大入賞口閉鎖有効時間(ラウンド遊技間の第1大入賞口126および第2大入賞口128の閉鎖時間、すなわち、ラウンド間インターバル時間)、エンディング時間(最後のラウンド遊技が終了してから、通常の特別遊技が再開されるまでの待機時間)が、大役遊技の制御データとして、大当たり図柄および小当たり図柄の種別ごとに、図示のように予め記憶されている。
本実施形態では、大当たり図柄である特別図柄A、Bが決定された場合には、いずれも5回のラウンド遊技で構成される大役遊技が実行され、特別図柄Cが決定された場合には、15回のラウンド遊技で構成される大役遊技が実行される。各ラウンド遊技は、規定数(8個)の遊技球が第2大入賞口128に入球するか、もしくは、第2大入賞口128が開放されてから所定時間(ここでは29.0秒)が経過すると終了となる。
また、小当たり図柄である特別図柄aが決定された場合には、1回のラウンド遊技で構成される小当たり遊技が実行される。特別図柄aが決定されて実行される小当たり遊技では、1回目のラウンド遊技において、第1大入賞口126の0.9秒の開放が、所定の休止時間を挟んで2回行われる。
図13は、大役遊技の終了後の遊技状態を設定するための遊技状態設定テーブルを説明する図である。本実施形態においては、大役遊技が実行された場合、大当たり当選時に決定された特別図柄の種別に応じて、大役遊技の終了後の遊技状態が設定される。
この遊技状態設定テーブルによれば、大当たり図柄が特別図柄Aであった場合には、大役遊技の終了後に低確率遊技状態に設定される。一方、大当たり図柄が特別図柄B、Cであった場合には、大役遊技の終了後に高確率遊技状態に設定されるとともに、高確率遊技状態の継続回数(以下、「高確回数」という)は10000回に設定される。これは、大役抽選結果が10000回確定するまでの間、高確率遊技状態が継続することを意味している。ただし、上記した高確回数は1の高確率遊技状態における最大継続回数を示すものであり、上記の継続回数に到達するまでの間に大当たりに当選した場合には、再度、高確回数の設定が行われることとなる。したがって、大役遊技の終了後に高確率遊技状態に設定された場合に、当該高確率遊技状態において大当たりの抽選結果が導出されることなく、ハズレの抽選結果が10000回導出されると、低確率遊技状態に遊技状態が変更されることとなる。
また、大役遊技の終了後には、時短遊技状態に設定されるとともに、時短遊技状態の継続回数(以下、「時短回数」という)が設定される。このとき、大当たり図柄が特別図柄Aであれば、時短回数が100回に設定され、特別図柄B、Cであれば、時短回数が10000回に設定される。これは、大役抽選結果が100回または10000回確定するまでの間、時短遊技状態が継続することを意味している。ただし、上記した時短回数は1の時短遊技状態における最大継続回数を示すものであり、上記の継続回数に到達するまでの間に大当たりに当選した場合には、再度、時短回数の設定が行われることとなる。
図14は、当たり決定乱数判定テーブルを説明する図である。遊技領域116を流下する遊技球がゲート124を通過すると、第2始動口122の可動片122bを通電制御するか否かが対応付けられた普通図柄の判定処理(以下、「普図抽選」という)が行われる。
なお、詳しくは後述するが、遊技球がゲート124を通過すると、0〜99の範囲内から1つの当たり決定乱数が取得されるとともに、この乱数値がメインRAM300cの普図保留記憶領域に4つを上限として記憶される。つまり、普図保留記憶領域は、当たり決定乱数をセーブする4つの記憶部を備えている。したがって、普図保留記憶領域の4つの記憶部全てに当たり決定乱数が記憶された状態で、遊技球がゲート124を通過した場合には、当該遊技球の通過に基づいて当たり決定乱数が記憶されることはない。以下では、ゲート124を遊技球が通過して普図保留記憶領域に記憶された当たり決定乱数を普図保留と呼ぶ。
非時短遊技状態において普図抽選を開始する場合には、図14(a)に示すように、非時短遊技状態用当たり決定乱数判定テーブルが参照される。この非時短遊技状態用当たり決定乱数判定テーブルによれば、当たり決定乱数が0であった場合に、普通図柄の種別として当たり図柄が決定され、当たり決定乱数が1〜99であった場合に、普通図柄の種別としてハズレ図柄が決定される。したがって、非時短遊技状態において当たり図柄が決定される確率、すなわち、当選確率は1/100となる。詳しくは後述するが、この普図抽選において当たり図柄が決定されると、第2始動口122が開状態に制御され、ハズレ図柄が決定された場合には、第2始動口122が閉状態に維持される。
また、時短遊技状態において普図抽選を開始する場合には、図14(b)に示すように、時短遊技状態用当たり決定乱数判定テーブルが参照される。この時短遊技状態用当たり決定乱数判定テーブルによれば、当たり決定乱数が0〜98であった場合に、普通図柄の種別として当たり図柄が決定され、当たり決定乱数が99であった場合に、普通図柄の種別としてハズレ図柄が決定される。したがって、時短遊技状態において当たり図柄が決定される確率、すなわち、当選確率は99/100となる。
図15(a)は、普通図柄変動時間データテーブルを説明する図であり、図15(b)は、開閉制御パターンテーブルを説明する図である。上記のように、普図抽選が行われると、普通図柄の変動時間が決定される。普通図柄変動時間データテーブルは、普図抽選によって当たり図柄もしくはハズレ図柄が決定されたときに、当該普通図柄の変動時間を決定する際に参照されるものである。この普通図柄変動時間データテーブルによれば、遊技状態が非時短遊技状態に設定されている場合には変動時間が10秒に決定され、遊技状態が時短遊技状態に設定されている場合には変動時間が1秒に決定される。このようにして変動時間が決定されると、当該決定された時間にわたって普通図柄表示器168が変動表示(点滅表示)される。そして、当たり図柄が決定された場合には普通図柄表示器168が点灯し、ハズレ図柄が決定された場合には普通図柄表示器168が消灯する。
そして、普図抽選によって当たり図柄が決定されるとともに、普通図柄表示器168が点灯した場合には、第2始動口122の可動片122bが、図15(b)に示すように、開閉制御パターンテーブルを参照して通電制御される。なお、実際は、開閉制御パターンテーブルは、遊技状態ごとに設けられており、普通図柄が決定されたときの遊技状態に応じて、対応するテーブルが普通電動役物ソレノイド122cの通電開始時にセットされるが、ここでは、説明の都合上、1つのテーブルに各遊技状態に対応する制御データを示す。
当たり図柄が決定されると、図15(b)に示すように、開閉制御パターンテーブルを参照して第2始動口122が開閉制御される。この開閉制御パターンテーブルによれば、普電開放前時間(第2始動口122の開放が開始されるまでの待機時間)、普通電動役物最大開閉切替回数(第2始動口122の開放回数)、ソレノイド通電時間(第2始動口122の開放回数ごとの普通電動役物ソレノイド122cの通電時間、すなわち、1回の第2始動口122の開放時間)、規定数(第2始動口122の全開放中における第2始動口122への最大入賞可能数)、普電閉鎖有効時間(第2始動口122の各開放間の閉鎖時間、すなわち、休止時間)、普電有効状態時間(第2始動口122の最後の開放終了からの待機時間)、普電終了ウェイト時間(普電有効状態時間の経過後、後述する普通図柄の変動表示が再開されるまでの待機時間)が、第2始動口122の制御データとして、遊技状態ごとに、図示のように予め記憶されている。
このように、非時短遊技状態および時短遊技状態には、それぞれ、第2始動口122を開閉するための開閉制御条件が、遊技進行条件として対応付けられており、時短遊技状態においては、非時短遊技状態よりも第2始動口122に遊技球が入球しやすくなる。つまり、時短遊技状態においては、ゲート124を遊技球が通過する限りにおいて、次々と普図抽選がなされるとともに、第2始動口122が頻繁に開放状態となるため、遊技者は遊技球の費消を低減しながら、大役抽選を行うことが可能となる。
なお、第2始動口122の開閉条件は、普通図柄の当選確率、普通図柄の変動表示の時間、第2始動口122の開放時間の3つの要素を規定するものである。そして、本実施形態では、このうち2つの要素において、非時短遊技状態よりも時短遊技状態の方を有利に設定することで、時短遊技状態の方が、非時短遊技状態よりも、第2始動口122に遊技球が入球しやすくなるように設定した。しかしながら、上記3つの要素のうち、1つまたは3つの要素について、時短遊技状態の方が、非時短遊技状態よりも有利に設定してもよい。いずれにしても、時短遊技状態の方が非時短遊技状態に比べて、少なくとも1つの要素について有利となることで、総合的に時短遊技状態の方が、非時短遊技状態よりも第2始動口122に遊技球が容易に入球するようにすればよい。つまり、遊技状態が非時短遊技状態に設定されている場合に、第1の条件にしたがって可動片122bが開閉制御され、遊技状態が時短遊技状態に設定されている場合に、第1の条件よりも開状態になりやすい第2の条件にしたがって可動片122bが開閉制御されればよい。
次に、遊技機100における遊技の進行に伴う主制御基板300の主な処理について説明する。
図16は、遊技機状態フラグを説明する図である。主制御基板300においては、遊技を進行可能な状態であるか否かが遊技機状態フラグにより管理される。遊技機状態フラグには、00H〜05Hの6種類のフラグ値のいずれかがセットされる。遊技機状態フラグのフラグ値=00Hは遊技可能状態を示しており、遊技機状態フラグが00Hである場合に、遊技が進行制御され、遊技機状態フラグが00H以外である場合には、遊技が停止される。
遊技機状態フラグのフラグ値=01Hは設定変更状態を示しており、遊技機状態フラグが01Hである場合には、登録設定値の変更操作が可能となる。遊技機状態フラグのフラグ値=02Hは設定確認状態を示しており、遊技機状態フラグが02Hである場合には、登録設定値が性能表示モニタ184に表示される等して、登録設定値を確認することが可能となる。遊技機状態フラグのフラグ値=03Hは設定異常状態を示しており、遊技機状態フラグが03Hである場合には、登録設定値が異常であるとして遊技が停止される。遊技機状態フラグのフラグ値=04HはRAM異常状態を示しており、遊技機状態フラグが04Hである場合には、遊技が停止される。遊技機状態フラグのフラグ値=05Hはチェックサム異常状態を示しており、遊技機状態フラグが05Hである場合には、遊技が停止される。電源が投入されると、遊技機状態フラグがいずれかのフラグ値にセットされ、遊技機状態フラグに応じた処理が行われる。
(主制御基板300のCPU初期化処理)
図17は、主制御基板300におけるCPU初期化処理を説明する第1のフローチャートであり、図18は、主制御基板300におけるCPU初期化処理を説明する第2のフローチャートである。
電源基板より電源が供給されると、メインCPU300aにシステムリセットが発生し、メインCPU300aは、以下のCPU初期化処理(S100)を行う。
(ステップS100−1)
メインCPU300aは、電源投入に応じて、初期設定処理として、メインROM300bから起動プログラムを読み込むとともに、各種処理を実行するために必要な設定処理を行う。また、初期設定処理においては、入力ポート制御レジスタ300dの設定処理が行われる。入力ポート制御レジスタ300dの設定処理では、各種の検出スイッチ(センサ)が接続される複数の入力ポートのノイズフィルタに対して、入力された検出信号のノイズを除去するフィルタリング処理を実行する際に用いられる設定値が入力ポート動作条件設定テーブルに基づいて設定される。図19は、入力ポート動作条件設定テーブルを説明する図である。入力ポート動作条件設定テーブルでは、特定の入力ポート(本実施形態では、入力ポート3および入力ポート4)に対して、フィルタリング処理を実行する際に用いられる分周クロックおよびサンプリング幅が設定値として格納されている。初期設定処理において、具体的には、各入力ポートに対応するメインRAM300cの記憶領域(記憶部)へ、各入力ポート動作条件設定テーブルに格納されている設定値の書き込みを行う。なお、設定の書き込みを行う前の各入力ポートに対応するメインRAM300cの記憶領域(記憶部)には、デフォルト値が格納されている。したがって、入力ポート動作条件設定テーブルにデフォルト値に対応する設定条件が格納されている場合、あるいは、入力ポート動作条件設定テーブルに設定条件が格納されていない場合には、初期設定処理を行う入力ポートに対応するメインRAM300cの記憶領域(記憶部)に設定値の書き込みを行わずに、既に格納されているデフォルト値を維持することとなる。
例えば、アウト球検出スイッチ114sが接続された入力ポート3のノイズフィルタに対して、図19に示す入力ポート動作条件設定テーブルによれば、基準クロックの1024分周およびサンプリング幅が128に設定されている。したがって、入力ポート3に対して、アウト球検出スイッチ114sから、基準クロックの1024分周における128クロックに亘る連続したオン信号が入力されたときに、入力ポート3は、アウト球検出スイッチ114sのオン信号を出力する。この場合、下記(a)式によって、入力ポート3がアウト球検出スイッチ114sのオン信号を出力するために、アウト球検出スイッチ114sから入力ポート3へ連続してオン信号が入力される必要がある最低限の時間(以下、ノイズフィルタの時間とも言う)として、約10.9msが算出される。
1024(分周数)×128(サンプリング幅)/12MHz(内部システムクロックの周波数、すなわち、基準クロックの周波数)≒10.9226ms・・・(a)式
また、ゲート検出スイッチ124sが接続された入力ポート4のノイズフィルタに対して、図19に示す入力ポート動作条件設定テーブルによれば、基準クロックの1024分周およびサンプリング幅が64に設定されている。したがって、入力ポート4に対して、ゲート検出スイッチ124sから、基準クロックの1024分周における64クロックに亘る連続したオン信号が入力されたときに、入力ポート4は、ゲート検出スイッチ124sのオン信号を出力する。この場合、下記(b)式によって、入力ポート4がゲート検出スイッチ124sのオン信号を出力するためのノイズフィルタの時間として、約5.4msが算出される。
1024(分周数)×64(サンプリング幅)/12MHz(内部システムクロックの周波数、すなわち、基準クロックの周波数)≒5.4613ms・・・(b)式
(ステップS100−3)
メインCPU300aは、タイマカウンタにウェイト処理時間を設定する。
(ステップS100−5)
メインCPU300aは、電源断予告信号を検出しているかを判定する。なお、主制御基板300には、電源断検知回路が設けられており、電源電圧が所定値以下になると、電源断検知回路から電源断予告信号が出力される。電源断予告信号を検出している場合には、上記ステップS100−3に処理を移し、電源断予告信号を検出していない場合には、ステップS100−7に処理を移す。
(ステップS100−7)
メインCPU300aは、上記ステップS100−3で設定したウェイト時間が経過したか否かを判定する。その結果、ウェイト時間が経過したと判定した場合にはステップS100−9に処理を移し、ウェイト時間は経過していないと判定した場合には上記ステップS100−5に処理を移す。
(ステップS100−9)
メインCPU300aは、メインRAM300cへのアクセスを許可するために必要な処理を実行する。
(ステップS100−11)
メインCPU300aは、Dレジスタに電源断前の遊技機状態フラグのフラグ値をロードする。
(ステップS100−13)
メインCPU300aは、チェックサムを算出するとともに、算出したチェックサムが、電源断時に保存されたチェックサムと一致する(正常である)か、ならびに、バックアップフラグが正常であるかを判定する。その結果、バックアップフラグおよびチェックサムが正常であると判定した場合にはステップS100−15に処理を移し、いずれか一方または双方が正常ではないと判定した場合にはステップS100−25に処理を移す。
(ステップS100−15)
メインCPU300aは、メインRAM300cのクリア対象の先頭アドレスに、設定値および遊技機状態フラグを含まない番地をセットする。
(ステップS100−17)
メインCPU300aは、RAMクリアスイッチ182sからRAMクリア操作信号が入力されているか(RAMクリアボタンが押下操作されているか)を判定する。その結果、RAMクリア操作信号が入力されていると判定した場合にはステップS100−31に処理を移し、RAMクリア操作信号は入力されていないと判定した場合にはステップS100−19に処理を移す。
(ステップS100−19)
メインCPU300aは、上記ステップS100−11でロードした遊技機状態フラグのフラグ値が00H(遊技可能状態)であり、設定変更スイッチ180sがオンしており、かつ、中枠104が開放しているかを判定する。その結果、3つの条件をすべて満たすと判定した場合にはステップS100−21に処理を移し、3つの条件の1つでも満たされないと判定した場合にはステップS100−23に処理を移す。
(ステップS100−21)
メインCPU300aは、遊技機状態フラグに02H(設定確認状態)をセットする。すなわち、中枠104が開放されており、設定変更スイッチ180sがオンしており、RAMクリアボタンが押下されていない状態で正常に電源投入がなされると、設定確認状態となる。
(ステップS100−23)
メインCPU300aは、メインRAM300cのうち、上記ステップS100−15でセットされた先頭アドレス以降の領域である電源復帰時のクリア対象をクリアする初期化処理を実行し、ステップS100−49に処理を移す。
(ステップS100−25)
メインCPU300aは、Dレジスタに05H(チェックサム異常状態)をセットする。
(ステップS100−27)
メインCPU300aは、使用外領域のリードライトメモリのチェックおよびクリアを行う領域外リードライトチェック処理を行う。
(ステップS100−29)
メインCPU300aは、メインRAM300cのクリア対象の先頭アドレスに、設定値および遊技機状態フラグを含む番地をセットする。
(ステップS100−31)
メインCPU300aは、使用領域のリードライトメモリのチェックおよびクリアを行う。
(ステップS100−33)
メインCPU300aは、上記ステップS100−31におけるリードライトメモリのチェック結果が正常であるかを判定する。その結果、正常であると判定した場合にはステップS100−37に処理を移し、正常ではないと判定した場合にはステップS100−35に処理を移す。
(ステップS100−35)
メインCPU300aは、Dレジスタに04H(RAM異常状態)をセットし、ステップS100−45に処理を移す。
(ステップS100−37)
メインCPU300aは、Dレジスタに02H(設定確認状態)がセットされているかを判定する。その結果、02Hがセットされていると判定した場合にはステップS100−39に処理を移し、02Hはセットされていないと判定した場合にはステップS100−41に処理を移す。
(ステップS100−39)
メインCPU300aは、Dレジスタに00H(遊技可能状態)をセットする。
(ステップS100−41)
メインCPU300aは、設定変更条件を満たしているかを判定する。その結果、設定変更条件を満たしていると判定した場合にはステップS100−43に処理を移し、設定変更条件は満たしていないと判定した場合にはステップS100−45に処理を移す。なお、ここでは、設定変更条件に、設定変更スイッチ180sがオンしていること、中枠104が開放していること、および、RAMクリアスイッチ182sからRAMクリア操作信号が入力されていることが少なくとも含まれる。
(ステップS100−43)
メインCPU300aは、Dレジスタに01H(設定変更状態)をセットする。
(ステップS100−45)
メインCPU300aは、Dレジスタにセットされている値を遊技機状態フラグにセーブする。
(ステップS100−47)
メインCPU300aは、メインRAM300cのうち、RAMクリア時のクリア対象をクリアする初期化処理を実行し、ステップS100−49に処理を移す。
(ステップS100−49)
メインCPU300aは、メインRAM300cがクリアされたことを払出制御基板310に伝達するための払出コマンド(RAMクリア指定コマンド)の送信処理(RAMクリア指定コマンドを送信バッファに格納)を行う。
(ステップS100−51)
メインCPU300aは、遊技機状態フラグをロードする。
(ステップS100−53)
メインCPU300aは、上記ステップS100−51でロードした遊技機状態フラグが00H(遊技可能状態)であるかを判定する。その結果、00Hであると判定した場合にはステップS110に処理を移し、00Hではないと判定した場合にはステップS100−55に処理を移す。
(ステップS110)
メインCPU300aは、サブコマンド群セット処理を行う。なお、このサブコマンド群セット処理については後述する。
(ステップS100−55)
メインCPU300aは、所定のコマンドを副制御基板330に送信するためのサブコマンドセット処理を行う。
(ステップS100−57)
メインCPU300aは、タイマ割込みの周期を設定する。
(ステップS100−59)
メインCPU300aは、割込みを禁止するための処理を行う。
(ステップS100−61)
メインCPU300aは、当たり図柄乱数用初期値更新乱数を更新する。なお、当たり図柄乱数用初期値更新乱数は、当たり図柄乱数の初期値および終了値を決定するためのものである。つまり、後述する当たり図柄乱数の更新処理によって当たり図柄乱数が、当たり図柄乱数用初期値更新乱数から、当該当たり図柄乱数用初期値更新乱数−1まで1周すると、当たり図柄乱数は、そのときの当たり図柄乱数用初期値更新乱数に更新されることとなる。
(ステップS100−63)
メインCPU300aは、払出制御基板310から受信した受信データ(主コマンド)を解析し、受信データに応じた種々の処理を実行する。
(ステップS100−65)
メインCPU300aは、送信バッファに格納されているサブコマンドを副制御基板330に送信するための処理を行う。
(ステップS100−67)
メインCPU300aは、割込みを許可するための処理を行う。
(ステップS100−69)
メインCPU300aは、リーチグループ決定乱数、リーチモード決定乱数、変動パターン乱数を更新し、以後、上記ステップS100−59から処理を繰り返す。なお、以下では、変動演出パターンを決定するためのリーチグループ決定乱数、リーチモード決定乱数、変動パターン乱数を総称して変動演出用乱数と呼ぶ。
図20は、主制御基板300におけるサブコマンド群セット処理(S110)を説明するフローチャートである。
(ステップS110−1)
メインCPU300aは、遊技機状態フラグのフラグ値をロードする。
(ステップS110−3)
メインCPU300aは、所定のコマンドを副制御基板330に送信するためのサブコマンドセット処理を行う。
(ステップS110−5)
メインCPU300aは、遊技機100の機種情報を示す機種コマンドを送信バッファにセットする機種コマンド設定処理を行う。
(ステップS110−7)
メインCPU300aは、登録設定値を示す設定値指定コマンドを送信バッファにセットする設定値指定コマンド設定処理を行う。
(ステップS110−9)
メインCPU300aは、特1保留数を示す特図1保留指定コマンドを送信バッファにセットする特図1保留指定コマンド設定処理を行う。
(ステップS110−11)
メインCPU300aは、特2保留数を示す特図2保留指定コマンドを送信バッファにセットする特図2保留指定コマンド設定処理を行う。
(ステップS110−13)
メインCPU300aは、時短遊技状態の残り回数を示す回数コマンドを送信バッファにセットする回数コマンド設定処理を行う。
(ステップS110−15)
メインCPU300aは、変動パターン選択状態を示す変動パターン選択状態指定コマンドを送信バッファにセットする変動パターン選択状態指定コマンド設定処理を行う。
(ステップS110−17)
メインCPU300aは、特別遊技管理フェーズを示す特図フェーズ指定コマンドを送信バッファにセットする特図フェーズ指定コマンド設定処理を行う。なお、特別遊技管理フェーズについては後述する。
(ステップS110−19)
メインCPU300aは、特別遊技管理フェーズが特別図柄変動待ち状態であるかを判定する。その結果、特別図柄変動待ち状態であると判定した場合にはステップS110−21に処理を移し、特別図柄変動待ち状態ではないと判定した場合には当該サブコマンド群セット処理を終了する。
(ステップS110−21)
メインCPU300aは、客待ち指定コマンドを送信バッファにセットし、当該サブコマンド群セット処理を終了する。
次に、主制御基板300における割込み処理について説明する。ここでは、電源断時退避処理(XINT割込み処理)およびタイマ割込み処理について説明する。
(主制御基板300の電源断時退避処理(XINT割込み処理))
図21は、主制御基板300における電源断時退避処理(XINT割込み処理)を説明するフローチャートである。メインCPU300aは、電源断検知回路を監視しており、電源電圧が所定値以下になると、CPU初期化処理に割り込んで電源断時退避処理を実行する。
(ステップS300−1)
電源断予告信号が入力されると、メインCPU300aは、レジスタを退避する。
(ステップS300−3)
メインCPU300aは、電源断予告信号をチェックする。
(ステップS300−5)
メインCPU300aは、電源断予告信号を検出しているかを判定する。その結果、電源断予告信号を検出していると判定した場合にはステップS300−11に処理を移し、電源断予告信号を検出していないと判定した場合にはステップS300−7に処理を移す。
(ステップS300−7)
メインCPU300aは、レジスタを復帰させる。
(ステップS300−9)
メインCPU300aは、割込みを許可するための処理を行い、当該電源断時退避処理を終了する。
(ステップS300−11)
メインCPU300aは、出力ポートの出力を停止する出力ポートクリア処理を実行する。
(ステップS300−13)
メインCPU300aは、チェックサムを算出して保存するチェックサム設定処理を実行する。
(ステップS300−15)
メインCPU300aは、メインRAM300cへのアクセスを禁止するために必要なRAMプロテクト設定処理を実行する。
(ステップS300−17)
メインCPU300aは、電源断発生監視時間を設定すべく、ループカウンタのカウンタ値に所定の電源断検出信号検出回数をセットする。
(ステップS300−19)
メインCPU300aは、電源断予告信号をチェックする。
(ステップS300−21)
メインCPU300aは、電源断予告信号を検出しているかを判定する。その結果、電源断予告信号を検出していると判定した場合にはステップS300−17に処理を移し、電源断予告信号を検出していないと判定した場合にはステップS300−23に処理を移す。
(ステップS300−23)
メインCPU300aは、上記ステップS300−17でセットしたループカウンタの値を1減算する。
(ステップS300−25)
メインCPU300aは、ループカウンタのカウンタ値が0でないかを判定する。その結果、カウンタ値が0ではないと判定した場合にはステップS300−19に処理を移し、カウンタ値が0であると判定した場合には上記したCPU初期化処理(ステップS100)に移行する。
なお、実際に電源断が生じた場合には、ステップS300−17〜ステップS300−25をループしている間に遊技機100の稼働が停止する。
(主制御基板300のタイマ割込み処理)
図22は、主制御基板300におけるタイマ割込み処理を説明するフローチャートである。主制御基板300には、所定の周期(本実施形態では4ミリ秒、以下「4ms」という)毎にクロックパルスを発生させるリセット用クロックパルス発生回路が設けられている。そして、リセット用クロックパルス発生回路によって、クロックパルスが発生すると、CPU初期化処理(ステップS100)に割り込んで、以下のタイマ割込み処理が実行される。
(ステップS400−1)
メインCPU300aは、レジスタを退避する。
(ステップS400−3)
メインCPU300aは、割込みを許可するための処理を行う。
(ステップS400−5)
メインCPU300aは、コモン出力バッファにセットされたコモンデータを出力ポートに出力し、第1特別図柄表示器160、第2特別図柄表示器162、第1特別図柄保留表示器164、第2特別図柄保留表示器166、普通図柄表示器168、普通図柄保留表示器170、右打ち報知表示器172、性能表示モニタ184を点灯制御するダイナミックポート出力処理を実行する。
(ステップS440)
メインCPU300aは、各種の入力ポート情報を読み込み、最新のスイッチ状態を正確に取得するためのポート入力処理を実行する。なお、このポート入力処理について、詳しくは後述する。
(ステップS400−7)
メインCPU300aは、遊技機状態フラグのフラグ値をロードする。
(ステップS400−9)
メインCPU300aは、上記ステップS400−7でロードしたフラグ値が00H(遊技可能状態)であるかを判定する。その結果、00Hであると判定した場合にはステップS400−13に処理を移し、00Hではないと判定した場合にはステップS400−11に処理を移す。
(ステップS400−11)
メインCPU300aは、上記ステップS400−7でロードしたフラグ値が03H(設定異常状態)以上であるかを判定する。その結果、03H以上であると判定した場合にはステップS400−25に処理を移し、03H以上ではないと判定した場合にはステップS450に処理を移す。
(ステップS450)
メインCPU300aは、設定関連処理を実行し、ステップS400−25に処理を移す。なお、設定関連処理については後述する。
(ステップS400−13)
メインCPU300aは、各種タイマカウンタを更新するタイマ更新処理を行う。ここで、各種タイマカウンタは、特に断る場合を除き、当該主制御基板300のタイマ割込み処理の度に減算され、0になると減算を停止する。
(ステップS400−15)
メインCPU300aは、上記ステップS100−61と同様、当たり図柄乱数用初期値更新乱数の更新処理を実行する。
(ステップS400−17)
メインCPU300aは、当たり図柄乱数を更新する処理を行う。具体的には、乱数カウンタを1加算して更新し、加算した結果が乱数範囲の最大値を超えた場合には、乱数カウンタを0に戻し、乱数カウンタが1周した場合には、その時の当たり図柄乱数用初期値更新乱数の値から乱数を更新する。
なお、詳しい説明は省略するが、本実施形態では、大当たり決定乱数および当たり決定乱数は、主制御基板300に内蔵されたハードウェア乱数生成部によって更新されるハードウェア乱数を用いている。ハードウェア乱数生成部は、大当たり決定乱数および当たり決定乱数を、いずれも一定の規則にしたがって更新し、乱数列が一巡するごとに自動的に乱数列を変更するとともに、システムリセット毎にスタート値を変更している。
(ステップS500)
メインCPU300aは、第1始動口検出スイッチ120s、第2始動口検出スイッチ122s、ゲート検出スイッチ124s、第1大入賞口検出スイッチ126s、第2大入賞口検出スイッチ128sから信号の入力があったか否か判定するスイッチ管理処理を実行する。なお、このスイッチ管理処理の詳細については後述する。
(ステップS600)
メインCPU300aは、上記の特別遊技を進行制御するための特別遊技管理処理を実行する。なお、この特別遊技管理処理の詳細については後述する。
(ステップS700)
メインCPU300aは、上記の普通遊技を進行制御するための普通遊技管理処理を実行する。なお、この普通遊技管理処理の詳細については後述する。
(ステップS400−19)
メインCPU300aは、各種エラーの判定およびエラー判定結果に応じた設定を行うためのエラー管理処理を実行する。
(ステップS400−21)
メインCPU300aは、一般入賞口検出スイッチ118s、第1始動口検出スイッチ120s、第2始動口検出スイッチ122s、第1大入賞口検出スイッチ126s、第2大入賞口検出スイッチ128sのチェックを行い、該当する賞球制御用のカウンタ等を加算するための入賞口スイッチ処理を実行する。
(ステップS400−23)
メインCPU300aは、上記ステップS400−21でセットされた賞球制御用のカウンタのカウンタ値等に基づく払出コマンドの作成および送信を行うための払出制御管理処理を実行する。
(ステップS400−25)
メインCPU300aは、遊技情報出力端子板312から外部へ出力する外部情報用の出力データをセットするための外部情報管理処理を実行する。
(ステップS400−27)
メインCPU300aは、第1特別図柄表示器160、第2特別図柄表示器162、第1特別図柄保留表示器164、第2特別図柄保留表示器166、普通図柄表示器168、普通図柄保留表示器170、右打ち報知表示器172等の各種表示器(LED)を点灯制御するための表示データを、各コモンに対応した出力バッファにセットするLED表示設定処理を実行する。
(ステップS400−29)
メインCPU300aは、普通電動役物ソレノイド122c、第1大入賞口ソレノイド126c、第2大入賞口ソレノイド128cおよび可動部材駆動ソレノイド142cのソレノイド出力イメージを合成し、出力ポートバッファに格納するためのソレノイド出力イメージ合成処理を実行する。
(ステップS400−31)
メインCPU300aは、各出力ポートバッファに格納されたコモン出力バッファの値を出力ポートに出力するためのポート出力処理を実行する。
(ステップS400−33)
メインCPU300aは、割込みを禁止するための処理を行う。
(ステップS400−35)
メインCPU300aは、メインRAM300cの使用外領域を用いて、性能表示モニタ184に表示するベース比率を算出するための処理を行い、算出したベース比率を性能表示モニタ184に表示するためのコモンデータをコモン出力バッファにセットする性能表示モニタ制御処理を実行する。なお、性能表示モニタ制御処理においては、所定期間ごとにベース比率が算出される。ここで、性能表示モニタ184には、現在の期間のベース比率と、それ以前の期間のベース比率とが所定時間ごとに切り替え表示されてもよい。また、所定の操作に応じて、性能表示モニタ184に表示されるベース比率が切り替わってもよい。
(ステップS400−37)
メインCPU300aは、レジスタを復帰してタイマ割込み処理を終了する。
図23は、主制御基板300におけるポート入力処理(ステップS440)を説明するフローチャートである。
(ステップS440−1)
メインCPU300aは、ゲート検出スイッチ124sのオンエッジを検出する。以下、ゲート検出スイッチ124sのオンエッジの検出方法について詳述する。図24は、入力ポートにおけるノイズフィルタを説明するための図である。また、図25は、スイッチレベルデータおよびスイッチエッジデータを説明する図である。ゲート検出スイッチ124sに用いられる近接センサは、遊技球が通過した際に、遊技球の流下速度に応じて、通常、10ms〜12msに亘ってオン信号が出力される。本実施形態では、ゲート検出スイッチ124sが接続される入力ポート4へゲート検出スイッチ124sから5.4msに亘ってオン信号が入力されると、入力ポート4がゲート検出スイッチ124sのオン信号を出力するように、上記した図19に示す入力ポート動作条件設定テーブルに基づいて、分周クロックおよびサンプリング幅が設定されている。したがって、図24(a)に示すように、入力ポート4へゲート検出スイッチ124sから10msや12msに亘ってオン信号が入力される場合には、当該オン信号が入力されてから、5.4ms後に、入力ポート4は、ゲート検出スイッチ124sのオン信号を出力する。一方、入力ポート4へゲート検出スイッチ124sからオフ信号が入力されると、入力ポート4は、ゲート検出スイッチ124sのオフ信号を出力する。
そして、メインCPU300aは、ゲート検出スイッチ124sに接続された入力ポート4の出力する信号のオンオフの2度読みを行う。また、メインCPU300aは、2度読みした結果がともに同じ値(オンまたはオフ)の場合に正しい値としてセーブし、セーブした値に基づいて、図25に示すように、1割込み毎(4ms間隔)にスイッチレベルデータを作成しメインRAM300cのスイッチレベルデータ領域に格納する。また、メインCPU300aは、スイッチレベルデータに基づいて、スイッチエッジデータを作成しメインRAM300cのスイッチエッジデータ領域に格納する。ここでは、前回のポート入力処理において、スイッチレベルデータにオフがセーブされ、かつ、今回のポート入力処理においてスイッチレベルデータにオンがセーブされた場合に、オンエッジを検出する。
(ステップS440−3)
メインCPU300aは、第1始動口検出スイッチ120sのオンエッジを検出する。第1始動口検出スイッチ120sには近接センサが用いられているため、上記のステップS440−1と同様にして、第1始動口検出スイッチ120sのオンエッジの検出を行う。
(ステップS440−5)
メインCPU300aは、第2始動口検出スイッチ122sのオンエッジを検出する。第2始動口検出スイッチ122sには近接センサが用いられているため、上記のステップS440−1と同様にして、第2始動口検出スイッチ122sのオンエッジの検出を行う。
(ステップS440−7)
メインCPU300aは、第1大入賞口検出スイッチ126sのオンエッジを検出する。第1大入賞口検出スイッチ126sには近接センサが用いられているため、上記のステップS440−1と同様にして、第1大入賞口検出スイッチ126sのオンエッジの検出を行う。
(ステップS440−9)
メインCPU300aは、第2大入賞口検出スイッチ128sのオンエッジを検出する。第2大入賞口検出スイッチ128sには近接センサが用いられているため、上記のステップS440−1と同様にして、第2大入賞口検出スイッチ128sのオンエッジの検出を行う。
(ステップS440−11)
メインCPU300aは、一般入賞口検出スイッチ118sのオンエッジを検出する。一般入賞口検出スイッチ118sには近接センサが用いられているため、上記のステップS440−1と同様にして、一般入賞口検出スイッチ118sのオンエッジの検出を行う。
(ステップS440−13)
メインCPU300aは、アウト球検出スイッチ114sのオンエッジを検出する。アウト球検出スイッチ114sに用いられるフォトセンサは、上記したように、遊技領域116へ発射された遊技球によって球戻り防止弁114cが開いたことを検出することで、遊技球の通過を検出している。球戻り防止弁114cを遊技球が通過する場合、図24(b)に示すように、遊技球によって球戻り防止弁114cが開くと、アウト球検出スイッチ114sが接続される入力ポート3へアウト球検出スイッチ114sから25msに亘ってオン信号が入力される。その後、球戻り防止弁114cが閉じる際の振動によって、4ms〜8msのオン信号(ノイズ)が入力される。本実施形態では、アウト球検出スイッチ114sが接続される入力ポート3へアウト球検出スイッチ114sから10.9msに亘ってオン信号が入力されると、入力ポート3がアウト球検出スイッチ114sのオン信号を出力するように、上記した図19に示す入力ポート動作条件設定テーブルに基づいて、分周クロックおよびサンプリング幅が設定されている。したがって、図24(b)に示すように、入力ポート3へアウト球検出スイッチ114sから25msに亘ってオン信号が入力される場合には、当該オン信号が入力されてから、10.9ms後に、入力ポート3は、アウト球検出スイッチ114sのオン信号を出力する。一方、入力ポート3へアウト球検出スイッチ114sからオフ信号が入力されると、入力ポート3は、アウト球検出スイッチ114sのオフ信号を出力する。一方、図24(b)に示すように、入力ポート3へアウト球検出スイッチ114sから4ms〜8msのオン信号(ノイズ)が入力された場合には、入力ポート3は、アウト球検出スイッチ114sのオン信号を出力しない。
そして、メインCPU300aは、アウト球検出スイッチ114sに接続された入力ポート3の出力する信号のオンオフの2度読みを行い、上記ステップS440−1と同様にして、スイッチレベルデータおよびスイッチエッジデータを作成する。
なお、アウト球検出スイッチ114sのオンエッジが一端検出されてから特定時間が経過するまでの間は、次のオンエッジを検出しない。これにより、一旦、遊技領域116へ発射された遊技球が釘等によって跳ね返り、球戻り防止弁114cに衝突した場合等における誤検出を抑制することが可能となる。特定時間としては、例えば、遊技球の発射間隔よりも短い任意の時間を設定することができ、具体的には、例えば、520msとすることができる。
上記のように、本実施形態では、それぞれの入力ポートのノイズフィルタに対して、接続される検出スイッチ(センサ)の特性に基づいて、フィルタの条件を予め設定する。これにより、メインCPU300aは、各入力ポートから出力されるフィルタ処理後の信号に対して、共通の処理を実行することが可能となるため、データ容量を削減することが可能となる。
図26は、上記の設定関連処理(S450)を説明するフローチャートである。
(ステップS450−1)
メインCPU300aは、遊技機状態フラグのフラグ値が01H(設定変更状態)であるかを判定する。その結果、01Hであると判定した場合にはステップS450−3に処理を移し、01Hではないと判定した場合にはステップS450−15に処理を移す。
(ステップS450−3)
メインCPU300aは、設定値バッファに記憶されている登録設定値を所定の処理領域にロードする。
(ステップS450−5)
メインCPU300aは、RAMクリアスイッチ182sが押下されたか(RAMクリア操作信号が入力されているか)を判定する。その結果、RAMクリアスイッチ182sが押下されていると判定した場合にはステップS450−7に処理を移し、RAMクリアスイッチ182sが押下されていないと判定した場合にはステップS450−9に処理を移す。
(ステップS450−7)
メインCPU300aは、処理領域の設定値に1を加算する。
(ステップS450−9)
メインCPU300aは、処理領域の設定値が1〜6の範囲であるかを判定する。その結果、設定値が1〜6の範囲であると判定した場合にはステップS450−13に処理を移し、設定値が1〜6の範囲ではないと判定した場合にはステップS450−11に処理を移す。
(ステップS450−11)
メインCPU300aは、処理領域の設定値を1にセットする。
(ステップS450−13)
メインCPU300aは、処理領域の設定値を設定値バッファにセットする。
(ステップS450−15)
メインCPU300aは、設定変更スイッチ180sがオンしているかを判定する。その結果、設定変更スイッチ180sがオンしていると判定した場合には当該設定関連処理を終了し、設定変更スイッチ180sはオンしていないと判定した場合にはステップS450−17に処理を移す。
(ステップS450−17)
メインCPU300aは、設定関連処理の終了を示す設定関連終了指定コマンドを送信バッファにセットする。
(ステップS110)
メインCPU300aは、図20のサブコマンド群セット処理を実行する。すなわち、設定関連処理が実行された場合、その終了時に、機種コマンド、設定値指定コマンド、特図1保留指定コマンド、特図2保留指定コマンド、回数コマンド、変動パターン選択状態指定コマンド、特図フェーズ指定コマンド、客待ち指定コマンドが副制御基板330に送信されることとなる。
(ステップS450−19)
メインCPU300aは、遊技機状態フラグに00H(遊技可能状態)をセットし、当該設定関連処理を終了する。
以上のように、本実施形態によれば、中枠104が開放され、設定変更スイッチ180sがオンされ、RAMクリアボタンが押下操作された状態で、正常に電源投入がなされると、CPU初期化処理(図17)において、遊技機状態フラグに01H(設定変更状態)がセットされる。その後、タイマ割込み処理が実行されるが、遊技機状態フラグに01H(設定変更状態)がセットされているため、遊技の進行に係る全ての処理(図22のステップS400−13〜ステップS400−23)が停止され、設定関連処理が実行される。
設定関連処理は、設定変更スイッチ180sがオンしている間、繰り返し実行され、この設定関連処理中は、RAMクリアボタンの押下操作が、登録設定値の設定変更操作として受け付けられる。すなわち、設定変更操作を受け付ける設定変更処理(S450−1〜S450−13)中は、設定変更操作に応じて、設定値バッファに記憶する登録設定値が、複数段階設けられた設定値のいずれかに切り替えられる。
そして、遊技機状態フラグに01H(設定変更状態)がセットされている状態で、設定変更スイッチ180sがオフに切り替わると、設定変更処理が終了となり、遊技機状態フラグに00H(遊技可能状態)がセットされる。これにより、次のタイマ割込み処理から、遊技の進行に係る処理が実行可能となる。
ここで、本実施形態の設定関連処理では、RAMクリアボタンの押下操作、すなわち、登録設定値の設定変更操作の受け付け終了後に、サブコマンド群セット処理において、登録設定値に対応する設定値指定コマンドが副制御基板330に送信される。一方で、設定変更操作の受け付け中は、設定値指定コマンドが副制御基板330に送信されることはない。このように、設定変更操作の受け付け中は、設定値指定コマンドを送信せずに、設定変更操作の受け付けが終了し、遊技の進行が可能な状態に移行する場合に、設定値指定コマンドを送信することで、登録設定値が不正に取得されるリスクを低減することができる。
また、本実施形態では、01H(設定変更状態)を少なくとも含む複数のフラグ値が切り替えられる。そして、遊技機状態フラグに01H(設定変更状態)がセットされている場合に設定関連処理が実行可能となり、かつ、遊技の進行が停止される。このように、遊技の進行中に設定関連処理が実行されることがないため、遊技の進行中に設定値指定コマンドが送信されることもなく、登録設定値が不正に取得されるリスクが低減される。
次に、上記したタイマ割込み処理のうち、ステップS500のスイッチ管理処理、ステップS600の特別遊技管理処理、ステップS700の普通遊技管理処理について、詳細に説明する。
図27は、主制御基板300におけるスイッチ管理処理(ステップS500)を説明するフローチャートである。
(ステップS500−1)
メインCPU300aは、ゲート検出スイッチオン検出時であるか、すなわち、ゲート124を遊技球が通過して、上記ステップS440−1において、ゲート検出スイッチ124sに接続された入力ポート4でオンエッジが検出されたかを判定する。その結果、ゲート検出スイッチオン検出時であると判定した場合にはステップS510に処理を移し、ゲート検出スイッチオン検出時ではないと判定した場合にはステップS500−3に処理を移す。
(ステップS510)
メインCPU300aは、ゲート124への遊技球の通過に基づいてゲート通過処理を実行する。なお、このゲート通過処理の詳細については後述する。
(ステップS500−3)
メインCPU300aは、第1始動口検出スイッチオン検出時であるか、すなわち、第1始動口120に遊技球が入球して、上記ステップS440−3において、第1始動口検出スイッチ120sに接続された入力ポートでオンエッジが検出されたかを判定する。その結果、第1始動口検出スイッチオン検出時であると判定した場合にはステップS520に処理を移し、第1始動口検出スイッチオン検出時ではないと判定した場合にはステップS500−5に処理を移す。
(ステップS520)
メインCPU300aは、第1始動口120への遊技球の入球に基づいて第1始動口通過処理を実行する。なお、この第1始動口通過処理の詳細については後述する。
(ステップS500−5)
メインCPU300aは、第2始動口検出スイッチオン検出時であるか、すなわち、第2始動口122に遊技球が入球して、上記ステップS440−5において、第2始動口検出スイッチ122sに接続された入力ポートでオンエッジが検出されたかを判定する。その結果、第2始動口検出スイッチオン検出時であると判定した場合にはステップS530に処理を移し、第2始動口検出スイッチオン検出時ではないと判定した場合にはステップS500−7に処理を移す。
(ステップS530)
メインCPU300aは、第2始動口122への遊技球の入球に基づいて第2始動口通過処理を実行する。なお、この第2始動口通過処理の詳細については後述する。
(ステップS500−7)
メインCPU300aは、大入賞口検出スイッチオン検出時であるか、すなわち、第1大入賞口126または第2大入賞口128に遊技球が入球して、上記ステップS440−7またはステップS440−9において、第1大入賞口検出スイッチ126sまたは第2大入賞口検出スイッチ128sに接続された入力ポートでオンエッジが検出されたかを判定する。その結果、大入賞口検出スイッチオン検出時であると判定した場合にはステップS500−9に処理を移し、大入賞口検出スイッチオン検出時ではないと判定した場合には、ステップS500−11に処理を移す。
(ステップS500−9)
メインCPU300aは、現在、大役遊技中または小当たり遊技中であるか否かを判定し、第1大入賞口126および第2大入賞口128への遊技球の入球が適正になされたものであるかを判定する。ここでは、大役遊技中または小当たり遊技中ではないと判定した場合には、所定の不正検出処理を実行し、大役遊技中または小当たり遊技中であり、第1大入賞口126および第2大入賞口128への遊技球の入球が適正になされたと判定した場合には、大入賞口入賞球数カウンタを1加算するとともに、大入賞口入賞指定コマンドを送信バッファにセットする。
(ステップS500−11)
メインCPU300aは、一般入賞口検出スイッチオン検出時であるか、すなわち、一般入賞口118に遊技球が入球して、上記ステップS440−11において、一般入賞口検出スイッチ118sに接続された入力ポートでオンエッジが検出されたかを判定する。その結果、一般入賞口検出スイッチオン検出時であると判定した場合にはステップS500−13に処理を移し、一般入賞口検出スイッチオン検出時ではないと判定した場合にはステップS500−15に処理を移す。
(ステップS500−13)
メインCPU300aは、一般入賞口入賞指定コマンドを送信バッファにセットする。
(ステップS500−15)
メインCPU300aは、アウト球検出スイッチオン検出時であるか、すなわち、遊技領域116へ遊技球が発射され、上記ステップS440−13において、アウト球検出スイッチ114sに接続された入力ポートでオンエッジが検出されたかを判定する。その結果、アウト球検出スイッチオン検出時であると判定した場合にはステップS500−17に処理を移し、アウト球検出スイッチオン検出時ではないと判定した場合には、当該スイッチ管理処理を終了する。
(ステップS500−17)
メインCPU300aは、アウト球検出指定コマンドを送信バッファにセットし、当該スイッチ管理処理を終了する。
図28は、主制御基板300におけるゲート通過処理(ステップS510)を説明するフローチャートである。
(ステップS510−1)
メインCPU300aは、ハードウェア乱数生成部によって更新された当たり決定乱数をロードする。
(ステップS510−3)
メインCPU300aは、普通図柄保留球数カウンタのカウンタ値が最大値以上であるか、つまり、普通図柄保留球数カウンタのカウンタ値が4以上であるかを判定する。その結果、普通図柄保留球数カウンタのカウンタ値が最大値以上であると判定した場合には当該ゲート通過処理を終了し、普通図柄保留球数カウンタは最大値以上ではないと判定した場合にはステップS510−5に処理を移す。
(ステップS510−5)
メインCPU300aは、普通図柄保留球数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新する。
(ステップS510−7)
メインCPU300aは、普図保留記憶領域の4つの記憶部のうち、取得した当たり決定乱数をセーブする対象となる対象記憶部を算定する。
(ステップS510−9)
メインCPU300aは、上記ステップS510−1で取得した当たり決定乱数を、上記ステップS510−7で算定した対象記憶部にセーブする。
(ステップS510−11)
メインCPU300aは、普図保留記憶領域に記憶されている普図保留数を示す普図保留指定コマンドを送信バッファにセットし、当該ゲート通過処理を終了する。
図29は、主制御基板300における第1始動口通過処理(ステップS520)を説明するフローチャートである。
(ステップS520−1)
メインCPU300aは、特別図柄識別値として「00H」をセットする。なお、特別図柄識別値は、保留種別として特1保留および特2保留のいずれであるかを識別するためのもので、特別図柄識別値(00H)は特1保留を示し、特別図柄識別値(01H)は特2保留を示す。
(ステップS520−3)
メインCPU300aは、特別図柄1保留球数カウンタのアドレスをセットする。
(ステップS535)
メインCPU300aは、特別図柄乱数取得処理を実行して、当該第1始動口通過処理を終了する。なお、この特別図柄乱数取得処理は、第2始動口通過処理(ステップS530)と共通のモジュールを利用して実行される。したがって、特別図柄乱数取得処理の詳細は、第2始動口通過処理の説明後に説明する。
図30は、主制御基板300における第2始動口通過処理(ステップS530)を説明するフローチャートである。
(ステップS530−1)
メインCPU300aは、特別図柄識別値として「01H」をセットする。
(ステップS530−3)
メインCPU300aは、特別図柄2保留球数カウンタのアドレスをセットする。
(ステップS535)
メインCPU300aは、後述する特別図柄乱数取得処理を実行する。
(ステップS530−5)
メインCPU300aは、普通遊技管理フェーズをロードする。なお、詳しくは後述するが、普通遊技管理フェーズは、普通遊技の実行処理の段階、すなわち、普通遊技の進行状況を示すものであり、普通遊技の実行処理の段階に応じて更新される。
(ステップS530−7)
メインCPU300aは、上記ステップS530−5でロードした普通遊技管理フェーズが「04H」ではないかを判定する。なお、普通遊技管理フェーズの「04H」は、普通電動役物入賞口開放制御処理中であることを示すものである。この普通電動役物入賞口開放制御処理においては、普通電動役物ソレノイド122cが通電されて可動片122bが開状態に制御されることから、ここでは、第2始動口122が適正に開放され得る状態にあるかを判定することとなる。その結果、普通遊技管理フェーズが「04H」ではないと判定した場合には当該第2始動口通過処理を終了し、普通遊技管理フェーズが「04H」であると判定した場合にはステップS530−9に処理を移す。
(ステップS530−9)
メインCPU300aは、普通電動役物入賞球数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新し、当該第2始動口通過処理を終了する。
図31は、主制御基板300における特別図柄乱数取得処理(ステップS535)を説明するフローチャートである。この特別図柄乱数取得処理は、上記した第1始動口通過処理(ステップS520)および第2始動口通過処理(ステップS530)において、共通のモジュールを用いて実行される。
(ステップS535−1)
メインCPU300aは、上記ステップS520−1またはステップS530−1でセットした特別図柄識別値をロードする。
(ステップS535−3)
メインCPU300aは、対象特別図柄保留球数をロードする。ここでは、上記ステップS535−1でロードした特別図柄識別値が「00H」であれば、特別図柄1保留球数カウンタのカウンタ値、すなわち、特1保留数をロードする。また、上記ステップS535−1でロードした特別図柄識別値が「01H」であれば、特別図柄2保留球数カウンタのカウンタ値、すなわち、特2保留数をロードする。
(ステップS535−5)
メインCPU300aは、ハードウェア乱数生成部によって更新された大当たり決定乱数をロードする。
(ステップS535−7)
メインCPU300aは、上記ステップS535−3でロードした対象特別図柄保留球数が上限値以上であるかを判定する。その結果、上限値以上であると判定した場合には、ステップS535−23に処理を移し、上限値以上ではないと判定した場合には、ステップS535−9に処理を移す。
(ステップS535−9)
メインCPU300aは、対象特別図柄保留球数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新する。
(ステップS535−11)
メインCPU300aは、特図保留記憶領域の8つの記憶部のうち、取得した大当たり決定乱数をセーブする対象となる対象記憶部を算定する。
(ステップS535−13)
メインCPU300aは、上記ステップS535−5でロードした大当たり決定乱数、上記ステップS400−17で更新された当たり図柄乱数、上記ステップS100−69で更新されたリーチグループ決定乱数、リーチモード決定乱数、変動パターン乱数を取得し、上記ステップS535−11で算定した対象記憶部に格納する。
(ステップS535−15)
メインCPU300aは、特図保留記憶領域に記憶されている特1保留および特2保留の入賞順序を更新して記憶する特別図柄保留球入賞順序設定処理を行う。
(ステップS535−17)
メインCPU300aは、上記ステップS535−13で対象記憶部に格納した各種の乱数に基づいて、大役仮抽選、当たり図柄仮決定、変動情報仮決定をする取得時演出判定処理を実行する。この取得時演出判定処理では、新たに記憶された保留が読み出された際に決定される変動情報を示す先読み指定コマンドを副制御基板330に送信する。
(ステップS535−19)
メインCPU300aは、特別図柄1保留球数カウンタおよび特別図柄2保留球数カウンタのカウンタ値をロードする。
(ステップS535−21)
メインCPU300aは、上記ステップS535−17でロードしたカウンタ値に基づいて、特図保留指定コマンドを送信バッファにセットする。ここでは、特別図柄1保留球数カウンタのカウンタ値(特1保留数)に基づいて特図1保留指定コマンドをセットし、特別図柄2保留球数カウンタのカウンタ値(特2保留数)に基づいて特図2保留指定コマンドをセットする。これにより、特1保留または特2保留が記憶されるたびに、特1保留数および特2保留数が副制御基板330に伝達されることとなる。
(ステップS535−23)
メインCPU300aは、普通遊技管理フェーズをロードする。
(ステップS535−25)
メインCPU300aは、上記ステップS535−23でロードした普通遊技管理フェーズを確認し、後述する普通電動役物入賞口開放制御状態未満であるかを判定する。その結果、普通電動役物入賞口開放制御状態未満であると判定した場合にはステップS535−27に処理を移し、普通電動役物入賞口開放制御状態未満ではないと判定した場合には当該特別図柄乱数取得処理を終了する。
(ステップS535−27)
メインCPU300aは、異常入賞があったか否かを判定するとともに、異常入賞があったと判定した場合には、所定の処理を行う始動口異常入賞エラー処理を実行し、当該特別図柄乱数取得処理(ステップS535)を終了する。
図32は、特別遊技管理フェーズを説明する図である。既に説明したとおり、本実施形態では、第1始動口120または第2始動口122への遊技球の入球を契機とする特別遊技と、ゲート124への遊技球の通過を契機とする普通遊技とが、同時並行して進行する。特別遊技に係る処理は、段階的に、かつ、繰り返し実行されるが、主制御基板300では、こうした特別遊技に係る各処理を特別遊技管理フェーズによって管理している。
図32に示すように、メインROM300bには、特別遊技を実行制御するための複数の特別遊技制御モジュールが格納されており、これら特別遊技制御モジュールごとに、特別遊技管理フェーズが対応付けられている。具体的には、特別遊技管理フェーズが「00H」である場合には、「特別図柄変動待ち処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「01H」である場合には、「特別図柄変動中処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「02H」である場合には、「特別図柄停止図柄表示処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「03H」、「07H」である場合には、「大入賞口開放前処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「04H」、「08H」である場合には、「大入賞口開放制御処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「05H」、「09H」である場合には、「大入賞口閉鎖有効処理」を実行するためのモジュールがコールされ、特別遊技管理フェーズが「06H」、「0AH」である場合には、「大入賞口終了ウェイト処理」を実行するためのモジュールがコールされる。
図33は、主制御基板300における特別遊技管理処理(ステップS600)を説明するフローチャートである。
(ステップS600−1)
メインCPU300aは、特別遊技管理フェーズをロードする。
(ステップS600−3)
メインCPU300aは、上記ステップS600−1でロードした特別遊技管理フェーズに対応する特別遊技制御モジュールを選択する。
(ステップS600−5)
メインCPU300aは、上記ステップS600−3で選択した特別遊技制御モジュールをコールして処理を開始する。
(ステップS600−7)
メインCPU300aは、特別遊技の制御時間を管理する特別遊技タイマをロードし、当該特別遊技管理処理を終了する。
図34は、主制御基板300における特別図柄変動待ち処理を説明するフローチャートである。この特別図柄変動待ち処理は、特別遊技管理フェーズが「00H」であった場合に実行される。
(ステップS610−1)
メインCPU300aは、特別図柄2保留球数カウンタのカウンタ値、すなわち、特2保留数(X2)が「1」以上であるかを判定する。その結果、特2保留数(X2)が「1」以上であると判定した場合にはステップS610−7に処理を移し、特2保留数(X2)は「1」以上ではないと判定した場合にはステップS610−3に処理を移す。
(ステップS610−3)
メインCPU300aは、特別図柄1保留球数カウンタのカウンタ値、すなわち、特1保留数(X1)が「1」以上であるかを判定する。その結果、特1保留数(X1)が「1」以上であると判定した場合にはステップS610−7に処理を移し、特1保留数(X1)は「1」以上ではないと判定した場合にはステップS610−5に処理を移す。
(ステップS610−5)
メインCPU300aは、客待ちコマンドを送信バッファにセットするとともに、客待ち状態に設定するための客待ち設定処理を実行し、当該特別図柄変動待ち処理を終了する。
(ステップS610−7)
メインCPU300aは、第2特図保留記憶領域の第1記憶部〜第4記憶部に記憶されている特2保留、または、第1特図保留記憶領域の第1記憶部〜第4記憶部に記憶されている特1保留を、1つ序数の小さい記憶部にブロック転送する。具体的には、上記ステップS610−1において、特別図柄2保留球数が「1」以上であると判定した場合には、第2特図保留記憶領域の第2記憶部〜第4記憶部に記憶されている特2保留を、第1記憶部〜第3記憶部に転送する。また、メインRAM300cには、処理対象となる第0記憶部が設けられており、第1記憶部に記憶されている特2保留を、第0記憶部にブロック転送する。また、上記ステップS610−3において、特別図柄1保留球数が「1」以上であると判定した場合には、第1特図保留記憶領域の第2記憶部〜第4記憶部に記憶されている特1保留を、第1記憶部〜第3記憶部に転送するとともに、第1記憶部に記憶されている特1保留を、第0記憶部にブロック転送する。なお、この特別図柄記憶エリアシフト処理においては、第0記憶部に転送された保留種別に対応する対象特別図柄保留球数カウンタのカウンタ値を「1」減算するとともに、特1保留または特2保留が「1」減算したことを示す、保留減指定コマンドを送信バッファにセットする。
(ステップS611)
メインCPU300aは、大役抽選を行う特別図柄当たり判定処理を実行する。この特別図柄当たり判定処理については後述する。
(ステップS610−11)
メインCPU300aは、特別図柄を決定するための特別図柄図柄判定処理を実行する。ここでは、上記ステップS611で記憶された判定情報(大役抽選の抽選結果)が大当たりもしくは小当たりである場合、当選種別(大当たりであるか小当たりであるか)および保留種別をロードし、対応する当たり図柄乱数判定テーブルをセットする。そして、セットした当たり図柄乱数判定テーブルを参照し、第0記憶部に転送された当たり図柄乱数を用いて特別図柄判定データを抽出し、抽出した特別図柄判定データ(大当たり図柄または小当たり図柄の種別)をセーブする。一方、上記ステップS611で記憶された大役抽選の抽選結果がハズレである場合、保留種別が特1保留であれば、ハズレ図柄として特別図柄Xをセーブし、保留種別が特2保留であれば、ハズレ図柄として特別図柄Yをセーブする。なお、ここでは、セーブした特別図柄判定データに対応する図柄種別指定コマンドが送信バッファにセットされる。
(ステップS610−13)
メインCPU300aは、上記ステップS610−11で抽出した特別図柄判定データに対応する特別図柄停止図柄番号をセーブする。なお、第1特別図柄表示器160および第2特別図柄表示器162は、それぞれ7セグで構成されており、7セグを構成する各セグメントには番号(カウンタ値)が対応付けられている。ここで決定する特別図柄停止図柄番号は、最終的に点灯するセグメントの番号(カウンタ値)を示すものである。
(ステップS612)
メインCPU300aは、変動モード番号および変動パターン番号を決定する特別図柄変動番号決定処理を実行する。この特別図柄変動番号決定処理の詳細は後述する。
(ステップS610−15)
メインCPU300aは、上記ステップS612で決定された変動モード番号および変動パターン番号をロードするとともに、変動時間決定テーブルを参照して、変動時間1および変動時間2を決定する。そして、決定した変動時間1、2の合計時間を、特別図柄変動タイマにセットする。
(ステップS610−17)
メインCPU300aは、大役抽選が実行されたときの遊技状態を遊技状態バッファに記憶する等の処理を行う予備領域設定処理を行う。また、この予備領域設定処理では、大役抽選の結果が大当たりである場合に、メインRAM300cの予備領域に、大役遊技後に設定する遊技状態情報や大当たり図柄の種別(特別図柄判定データ)等を記憶する。
(ステップS610−19)
メインCPU300aは、第1特別図柄表示器160または第2特別図柄表示器162において、特別図柄の変動表示を開始するために、特別図柄表示図柄カウンタを設定する処理を実行する。第1特別図柄表示器160および第2特別図柄表示器162を構成する7セグの各セグメントにはカウンタ値が対応付けられており、特別図柄表示図柄カウンタに設定されたカウンタ値に対応するセグメントが点灯制御される。ここでは、特別図柄の変動表示の開始時に点灯させるセグメントに対応するカウンタ値が特別図柄表示図柄カウンタに設定されることとなる。なお、特別図柄表示図柄カウンタは、第1特別図柄表示器160に対応する特別図柄1表示図柄カウンタと、第2特別図柄表示器162に対応する特別図柄2表示図柄カウンタとが別個に設けられており、ここでは、保留種別に対応するカウンタにカウンタ値が設定される。
(ステップS610−21)
メインCPU300aは、特別図柄1保留球数カウンタおよび特別図柄2保留球数カウンタのカウンタ値をロードし、特図保留指定コマンドを送信バッファにセットする。ここでは、特別図柄1保留球数カウンタのカウンタ値(特1保留数)に基づいて特図1保留指定コマンドをセットし、特別図柄2保留球数カウンタのカウンタ値(特2保留数)に基づいて特図2保留指定コマンドをセットする。また、ここでは、上記ステップS610−7で記憶した特1保留および特2保留の入賞順序に対応する特別図柄入賞順序コマンドを送信バッファにセットする。これにより、特1保留または特2保留が消化されるたびに、特1保留数および特2保留数、ならびに、これら各保留の入賞順序が副制御基板330に伝達されることとなる。
(ステップS610−23)
メインCPU300aは、特別遊技管理フェーズを「01H」に更新し、当該特別図柄変動待ち処理を終了する。
図35は、上記の特別図柄当たり判定処理(S611)を説明するフローチャートである。
(ステップS611−1)
メインCPU300aは、特別図柄確率状態フラグをロードする。
(ステップS611−3)
メインCPU300aは、設定値バッファの登録設定値をロードする。
(ステップS611−5)
メインCPU300aは、上記ステップS611−3でロードした登録設定値が正常範囲内の値であるかを判定する。その結果、正常範囲内の値であると判定した場合にはステップS611−11に処理を移し、正常範囲内の値ではないと判定した場合にはステップS611−7に処理を移す。
(ステップS611−7)
メインCPU300aは、遊技機状態フラグに03H(設定異常状態)をセットする。
(ステップS611−9)
メインCPU300aは、設定異常状態コマンド(サブコマンド)を送信バッファにセットし、当該特別図柄当たり判定処理を終了する。この設定異常状態コマンドが副制御基板330に送信されると、設定異常である旨の報知がなされる。
(ステップS611−11)
メインCPU300aは、上記ステップS611−1およびステップS611−3でロードした情報に対応する大当たり決定乱数判定テーブルを参照し、大当たりまたは小当たりと判定する際の下限値および上限値をそれぞれセットする。
(ステップS611−13)
メインCPU300aは、第0記憶部に転送された大当たり決定乱数と、上記の下限値および上限値とを比較し、大当たりまたは小当たりの当選有無を判定する判定処理(大役抽選)を行う。
(ステップS611−15)
メインCPU300aは、上記ステップS611−13の判定処理の結果を判定情報としてセットし、当該特別図柄当たり判定処理を終了する。
図36は、主制御基板300における特別図柄変動番号決定処理を説明するフローチャートである。
(ステップS612−1)
メインCPU300aは、上記ステップS611における大役抽選の結果が大当たりまたは小当たりであるかを判定する。その結果、大当たりまたは小当たりであると判定した場合にはステップS612−3に処理を移し、大当たりおよび小当たりのいずれでもない(ハズレである)と判定した場合にはステップS612−5に処理を移す。
(ステップS612−3)
メインCPU300aは、現在の遊技状態、大当たり図柄の種別、保留種別、変動状態に対応するリーチモード決定乱数判定テーブルをセットする。
(ステップS612−5)
メインCPU300aは、読み出した保留の保留種別が特2保留である場合には、特別図柄2保留球数カウンタのカウンタ値を確認し、読み出した保留の保留種別が特1保留である場合には、特別図柄1保留球数カウンタのカウンタ値を確認する。
(ステップS612−7)
メインCPU300aは、現在の遊技状態、上記ステップS612−5で確認した保留数、保留種別に基づいて、対応するリーチグループ決定乱数判定テーブルをセットする。そして、セットしたリーチグループ決定乱数判定テーブルと、上記ステップS610−5で第0記憶部に転送したリーチグループ決定乱数とに基づいて、リーチグループ(グループ種別)を決定する。
(ステップS612−9)
メインCPU300aは、上記ステップS612−7で決定されたグループ種別に対応するハズレ時リーチモード決定乱数判定テーブルをセットする。
(ステップS612−11)
メインCPU300aは、上記ステップS612−3または上記ステップS612−9でセットしたリーチモード決定乱数判定テーブルと、上記ステップS610−7で第0記憶部に転送したリーチモード決定乱数とに基づいて、変動モード番号を決定する。また、ここでは、変動モード番号とともに、変動パターン乱数判定テーブルが決定される。
(ステップS612−13)
メインCPU300aは、上記ステップS612−11で決定した変動モード番号に対応する変動モードコマンドを送信バッファにセットする。
(ステップS612−15)
メインCPU300aは、上記ステップS612−11で決定した変動パターン乱数判定テーブルと、上記ステップS610−7で第0記憶部に転送した変動パターン乱数とに基づいて、変動パターン番号を決定する。
(ステップS612−17)
メインCPU300aは、上記ステップS612−15で決定した変動パターン番号に対応する変動パターンコマンドを送信バッファにセットして、当該特別図柄変動番号決定処理を終了する。
図37は、主制御基板300における特別図柄変動中処理を説明するフローチャートである。この特別図柄変動中処理は、特別遊技管理フェーズが「01H」であった場合に実行される。
(ステップS620−1)
メインCPU300aは、特別図柄変動ベースカウンタを更新する処理を実行する。なお、特別図柄変動ベースカウンタは、所定周期(例えば100ms)で1周するようにカウンタ値が設定される。具体的には、特別図柄変動ベースカウンタのカウンタ値が「0」であった場合には、所定のカウンタ値(例えば25)がセットされ、カウンタ値が「1」以上であった場合には、現在のカウンタ値から「1」減算した値にカウンタ値を更新する。
(ステップS620−3)
メインCPU300aは、上記ステップS620−1で更新した特別図柄変動ベースカウンタのカウンタ値が「0」であるかを判定する。その結果、カウンタ値が「0」であった場合にはステップS620−5に処理を移し、カウンタ値が「0」ではなかった場合にはステップS620−9に処理を移す。
(ステップS620−5)
メインCPU300aは、上記ステップS610−15で設定された特別図柄変動タイマのタイマ値を所定値減算する特別図柄変動タイマ更新処理を行う。
(ステップS620−7)
メインCPU300aは、上記ステップS620−5で更新した特別図柄変動タイマのタイマ値が「0」であるかを判定する。その結果、タイマ値が「0」であった場合にはステップS620−15に処理を移し、タイマ値が「0」ではなかった場合にはステップS620−9に処理を移す。
(ステップS620−9)
メインCPU300aは、第1特別図柄表示器160および第2特別図柄表示器162を構成する7セグの各セグメントの点灯時間を計時する特別図柄表示タイマを更新する。具体的には、特別図柄表示タイマのタイマ値が「0」であった場合には、所定のタイマ値がセットされ、タイマ値が「1」以上であった場合には、現在のタイマ値から「1」減算した値にタイマ値を更新する。
(ステップS620−11)
メインCPU300aは、特別図柄表示タイマのタイマ値が「0」であるかを判定する。その結果、特別図柄表示タイマのタイマ値が「0」であると判定した場合にはステップS620−13に処理を移し、特別図柄表示タイマのタイマ値が「0」でないと判定した場合には当該特別図柄変動中処理を終了する。
(ステップS620−13)
メインCPU300aは、更新対象の特別図柄表示図柄カウンタのカウンタ値を更新し、当該特別図柄変動中処理を終了する。これにより、7セグを構成する各セグメントが、所定時間おきに順次点灯することとなる。
(ステップS620−15)
メインCPU300aは、特別遊技管理フェーズを「02H」に更新する。
(ステップS620−17)
メインCPU300aは、対象の特別図柄表示図柄カウンタに、上記ステップS610−13で決定した特別図柄停止図柄番号(カウンタ値)をセーブする。これにより、第1特別図柄表示器160または第2特別図柄表示器162に、決定された特別図柄が停止表示されることとなる。
(ステップS620−19)
メインCPU300aは、第1特別図柄表示器160または第2特別図柄表示器162に特別図柄が停止表示されたことを示す特図停止指定コマンドを送信バッファにセットする。
(ステップS620−21)
メインCPU300aは、特別図柄を停止表示する時間である特別図柄変動停止時間を特別遊技タイマにセットし、当該特別図柄変動中処理を終了する。
図38は、主制御基板300における特別図柄停止図柄表示処理を説明するフローチャートである。この特別図柄停止図柄表示処理は、特別遊技管理フェーズが「02H」であった場合に実行される。
(ステップS630−1)
メインCPU300aは、上記ステップS620−21でセットした特別遊技タイマのタイマ値が「0」でないかを判定する。その結果、特別遊技タイマのタイマ値が「0」ではないと判定した場合には当該特別図柄停止図柄表示処理を終了し、特別遊技タイマのタイマ値が「0」であると判定した場合にはステップS630−3に処理を移す。
(ステップS630−3)
メインCPU300aは、大役抽選の結果を確認する。
(ステップS630−5)
メインCPU300aは、大役抽選の結果が大当たりであるかを判定する。その結果、大当たりであると判定した場合にはステップS630−19に処理を移し、大当たりではないと判定した場合にはステップS630−7に処理を移す。
(ステップS630−7)
メインCPU300aは、回数切り管理処理を実行する。ここでは、特別図柄確率状態フラグをロードして、現在の遊技状態が低確率遊技状態であるか高確率遊技状態であるかを確認する。そして、遊技状態が高確率遊技状態であった場合には、高確回数切りカウンタのカウンタ値を、現在のカウンタ値から「1」減算した値に更新する。なお、高確回数切りカウンタを更新した結果、カウンタ値が「0」になった場合には、低確率遊技状態に対応する特別図柄確率状態フラグをセットする。これにより、高確率遊技状態において、大当たりに当選することなく、特別図柄が所定回数確定したところで、遊技状態が低確率遊技状態に移行することとなる。
また、ここでは、遊技状態が非時短遊技状態であるか時短遊技状態であるかを識別するための時短状態フラグをロードして、現在の遊技状態が非時短遊技状態であるか時短遊技状態であるかを確認する。そして、遊技状態が時短遊技状態であった場合には、時短回数切りカウンタのカウンタ値を、現在のカウンタ値から「1」減算した値に更新する。なお、時短回数切りカウンタを更新した結果、カウンタ値が「0」になった場合には、非時短遊技状態に対応する時短状態フラグをセットする。これにより、時短遊技状態において、大当たりに当選することなく、特別図柄が所定回数確定したところで、遊技状態が非時短遊技状態に移行することとなる。
(ステップS630−9)
メインCPU300aは、変動状態を更新する。
(ステップS630−11)
メインCPU300aは、特別図柄が確定したときの遊技状態を示す特図確定時遊技状態確認指定コマンドを送信バッファにセットする。
(ステップS630−13)
メインCPU300aは、上記ステップS630−7で更新した高確回数および時短回数を副制御基板330に伝達するための回数コマンドを送信バッファにセットする。
(ステップS630−15)
メインCPU300aは、大役抽選の結果が小当たりであるかを判定する。その結果、小当たりであると判定した場合にはステップS630−21に処理を移し、小当たりではないと判定した場合にはステップS630−17に処理を移す。
(ステップS630−17)
メインCPU300aは、特別遊技管理フェーズを「00H」に更新し、当該特別図柄停止図柄表示処理を終了する。これにより、1の保留に基づく特別遊技管理処理が終了し、特1保留または特2保留が記憶されている場合には、次の保留に基づく特別図柄の変動表示を開始するための処理が行われることとなる。
(ステップS630−19)
メインCPU300aは、遊技状態を初期状態である低確率遊技状態および非時短遊技状態にリセット(設定)する。
(ステップS630−21)
メインCPU300aは、確定した特別図柄の種別に応じて、特別電動役物作動ラムセットテーブルのデータをセットする。
(ステップS630−23)
メインCPU300aは、特別電動役物最大作動回数設定処理を行う。具体的には、上記ステップS630−21でセットしたデータを参照し、特別電動役物最大作動回数カウンタに、カウンタ値として所定数(特別図柄の種別に対応するカウンタ値=ラウンド数)をセットする。なお、この特別電動役物最大作動回数カウンタは、これから開始する大役遊技において実行可能なラウンド数を示すものである。一方、メインRAM300cには、特別電動役物連続作動回数カウンタが設けられており、各ラウンド遊技の開始時に、特別電動役物連続作動回数カウンタのカウンタ値を「1」加算することで、現在のラウンド遊技数が管理される。ここでは、大役遊技の開始に伴って、この特別電動役物連続作動回数カウンタのカウンタ値をリセット(「0」に更新)する処理が併せて実行される。
(ステップS630−25)
メインCPU300aは、上記ステップS630−21でセットしたデータを参照し、特別遊技タイマに、タイマ値として所定のオープニング時間をセーブする。
(ステップS630−27)
メインCPU300aは、大役遊技または小当たり遊技の開始を副制御基板330に伝達するためのオープニング指定コマンドを送信バッファにセットする。なお、このオープニング指定コマンドは、オープニング時間ごとに設けられており、ここでは、上記ステップS630−25でセーブされたオープニング時間に対応するオープニング指定コマンドが送信バッファにセットされる。
(ステップS630−29)
メインCPU300aは、上記ステップS630−3で確認した大役抽選の結果が大当たりである場合には、特別遊技管理フェーズを「03H」に更新し、小当たりである場合には、特別遊技管理フェーズを「07H」に更新して、当該特別図柄停止図柄表示処理を終了する。これにより、大役遊技または小当たり遊技が開始されることとなる。
図39は、主制御基板300における大入賞口開放前処理を説明するフローチャートである。この大入賞口開放前処理は、特別遊技管理フェーズが「03H」、「07H」であった場合に実行される。
(ステップS640−1)
メインCPU300aは、特別遊技タイマのタイマ値が「0」でないかを判定する。その結果、特別遊技タイマのタイマ値が「0」ではないと判定した場合には当該大入賞口開放前処理を終了し、特別遊技タイマのタイマ値が「0」であると判定した場合にはステップS640−3に処理を移す。
(ステップS640−3)
メインCPU300aは、特別電動役物連続作動回数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新する。
(ステップS640−5)
メインCPU300aは、第1大入賞口126および第2大入賞口128の開放開始(ラウンド遊技の開始)を副制御基板330に伝達するための大入賞口開放指定コマンドを送信バッファにセットする。
(ステップS641)
メインCPU300aは、大入賞口開閉切替処理を実行する。この大入賞口開閉切替処理については後述する。
(ステップS640−7)
メインCPU300aは、特別遊技管理フェーズを、現在の値に01Hを加算した値(「04H」または「08H」)に更新し、当該大入賞口開放前処理を終了する。
図40は、主制御基板300における大入賞口開閉切替処理を説明するフローチャートである。
(ステップS641−1)
メインCPU300aは、特別電動役物開閉切替回数カウンタのカウンタ値が、特別電動役物開閉切替回数(1回のラウンド遊技中における第1大入賞口126および第2大入賞口128の開閉回数)の上限値であるかを判定する。その結果、カウンタ値が上限値であると判定した場合には当該大入賞口開閉切替処理を終了し、カウンタ値は上限値ではないと判定した場合にはステップS641−3に処理を移す。
(ステップS641−3)
メインCPU300aは、特別電動役物作動ラムセットテーブルのデータを参照し、特別電動役物開閉切替回数カウンタのカウンタ値に基づいて、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cを通電制御するためのソレノイド制御データ、ならびに、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電時間もしくは通電停止時間であるタイマデータを抽出する。
(ステップS641−5)
メインCPU300aは、上記ステップS641−3で抽出したソレノイド制御データに基づいて、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電を開始するか、もしくは、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電を停止するための大入賞口ソレノイド通電制御処理を実行する。この大入賞口ソレノイド通電制御処理の実行により、上記ステップS400−29およびステップS400−31において、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電開始もしくは通電停止の制御がなされることとなる。
(ステップS641−7)
メインCPU300aは、上記ステップS641−3で抽出したタイマデータに基づくタイマ値を、特別遊技タイマにセーブする。なお、ここで特別遊技タイマにセーブされるタイマ値は、第1大入賞口126および第2大入賞口128の1回の最大開放時間となる。
(ステップS641−9)
メインCPU300aは、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電開始状態か、すなわち、上記ステップS641−5において、第1大入賞口ソレノイド126cまたは第2大入賞口ソレノイド128cの通電を開始する制御処理がなされたかを判定する。その結果、通電開始状態であると判定した場合にはステップS641−11に処理を移し、通電開始状態ではないと判定した場合には当該大入賞口開閉切替処理を終了する。
(ステップS641−11)
メインCPU300aは、特別電動役物開閉切替回数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新し、当該大入賞口開閉切替処理を終了する。
図41は、主制御基板300における大入賞口開放制御処理を説明するフローチャートである。この大入賞口開放制御処理は、特別遊技管理フェーズが「04H」、「08H」であった場合に実行される。
(ステップS650−1)
メインCPU300aは、上記ステップS641−7でセーブした特別遊技タイマのタイマ値が「0」でないかを判定する。その結果、特別遊技タイマのタイマ値が「0」ではないと判定した場合にはステップS650−5に処理を移し、特別遊技タイマのタイマ値が「0」であると判定した場合にはステップS650−3に処理を移す。
(ステップS650−3)
メインCPU300aは、特別電動役物開閉切替回数カウンタのカウンタ値が、特別電動役物開閉切替回数の上限値であるかを判定する。その結果、カウンタ値が上限値であると判定した場合にはステップS650−7に処理を移し、カウンタ値は上限値ではないと判定した場合にはステップS641に処理を移す。
(ステップS641)
上記ステップS650−3において、特別電動役物開閉切替回数カウンタのカウンタ値が、特別電動役物開閉切替回数の上限値ではないと判定した場合には、メインCPU300aは、上記ステップS641の処理を実行する。
(ステップS650−5)
メインCPU300aは、上記ステップS500−9で更新された大入賞口入賞球数カウンタのカウンタ値が規定数に到達していないか、すなわち、第1大入賞口126または第2大入賞口128に、1ラウンド中の最大入賞可能数と同数の遊技球が入球していないかを判定する。その結果、規定数に到達していないと判定した場合には当該大入賞口開放制御処理を終了し、規定数に到達したと判定した場合にはステップS650−7に処理を移す。
(ステップS650−7)
メインCPU300aは、第1大入賞口ソレノイド126cおよび第2大入賞口ソレノイド128cの通電を停止して第1大入賞口126および第2大入賞口128を閉鎖するために必要な大入賞口閉鎖処理を実行する。これにより、第1大入賞口126および第2大入賞口128が閉鎖状態となる。
(ステップS650−9)
メインCPU300aは、大入賞口閉鎖有効時間(インターバル時間)を特別遊技タイマにセーブする。
(ステップS650−11)
メインCPU300aは、特別遊技管理フェーズを、現在の値に01Hを加算した値(「05H」または「09H」)に更新する。
(ステップS650−13)
メインCPU300aは、第1大入賞口126および第2大入賞口128が閉鎖されたことを示す大入賞口閉鎖指定コマンドを送信バッファにセットし、当該大入賞口開放制御処理を終了する。
図42は、主制御基板300における大入賞口閉鎖有効処理を説明するフローチャートである。この大入賞口閉鎖有効処理は、特別遊技管理フェーズが「05H」、「09H」であった場合に実行される。
(ステップS660−1)
メインCPU300aは、上記ステップS650−9でセーブした特別遊技タイマのタイマ値が「0」でないかを判定する。その結果、特別遊技タイマのタイマ値が「0」ではないと判定した場合には当該大入賞口閉鎖有効処理を終了し、特別遊技タイマのタイマ値が「0」であると判定した場合にはステップS660−3に処理を移す。
(ステップS660−3)
メインCPU300aは、特別電動役物連続作動回数カウンタのカウンタ値が、特別電動役物最大作動回数カウンタのカウンタ値と一致するか、すなわち、予め設定された回数のラウンド遊技が終了したかを判定する。その結果、特別電動役物連続作動回数カウンタのカウンタ値が、特別電動役物最大作動回数カウンタのカウンタ値と一致すると判定した場合にはステップS660−9に処理を移し、一致しないと判定した場合にはステップS660−5に処理を移す。
(ステップS660−5)
メインCPU300aは、特別遊技管理フェーズを「03H」に更新する。なお、特別遊技管理フェーズが「09H」である場合、すなわち、小当たり遊技の制御中は、小当たり遊技のラウンド遊技回数が「1」であることから、上記ステップS660−3で必ずYESと判定され、当該ステップに処理が移行することはない。
(ステップS660−7)
メインCPU300aは、所定の大入賞口閉鎖時間を特別遊技タイマにセーブし、当該大入賞口閉鎖有効処理を終了する。これにより、次のラウンド遊技が開始されることとなる。
(ステップS660−9)
メインCPU300aは、エンディング時間を特別遊技タイマにセーブするエンディング時間設定処理を実行する。
(ステップS660−11)
メインCPU300aは、特別遊技管理フェーズを、現在の値に01Hを加算した値(「06H」または「0AH」)に更新する。
(ステップS660−13)
メインCPU300aは、エンディングの開始を示すエンディング指定コマンドを送信バッファにセットし、当該大入賞口閉鎖有効処理を終了する。
図43は、主制御基板300における大入賞口終了ウェイト処理を説明するフローチャートである。この大入賞口終了ウェイト処理は、特別遊技管理フェーズが「06H」、「0AH」であった場合に実行される。
(ステップS670−1)
メインCPU300aは、上記ステップS660−9でセーブした特別遊技タイマのタイマ値が「0」でないかを判定する。その結果、特別遊技タイマのタイマ値が「0」でないと判定した場合には当該大入賞口終了ウェイト処理を終了し、特別遊技タイマのタイマ値が「0」であると判定した場合にはステップS670−3に処理を移す。
(ステップS670−3)
メインCPU300aは、大役遊技終了後の遊技状態を設定するための状態設定処理を実行する。ここでは、大役遊技の実行契機となった大当たり図柄に基づいて、大役遊技終了後の遊技状態が設定される。具体的には、大役遊技の実行契機となった大当たり図柄が特別図柄B、Cである場合には、高確率遊技状態および時短遊技状態に設定するとともに高確回数および時短回数を10000回に設定する。また、大役遊技の実行契機となった大当たり図柄が特別図柄Aである場合には、低確率遊技状態および時短遊技状態に設定するとともに時短回数を100回に設定する。
また、ここでは、大役遊技の実行契機となった大当たり図柄または小当たり遊技の実行契機となった小当たり図柄と、設定中の設定値とに基づいて、大役遊技または小当たり遊技の終了後の変動状態を設定すべく、変動状態識別フラグや変動回数をセットする処理も行われる。
(ステップS670−5)
メインCPU300aは、大役遊技の終了後に設定される遊技状態および変動状態を伝達するための遊技状態変化指定コマンドを送信バッファにセットする。
(ステップS670−7)
メインCPU300aは、上記ステップS670−3でセーブした高確回数および時短回数に対応する回数指定コマンドを送信バッファにセットする。
(ステップS670−9)
メインCPU300aは、特別遊技管理フェーズを「00H」に更新し、当該大入賞口終了ウェイト処理を終了する。これにより、特1保留または特2保留が記憶されている場合には、特別図柄の変動表示が再開されることとなる。
図44は、普通遊技管理フェーズを説明する図である。既に説明したとおり、本実施形態では、ゲート124への遊技球の通過を契機とする普通遊技に係る処理が、段階的に、かつ、繰り返し実行されるが、主制御基板300では、こうした普通遊技に係る各処理を普通遊技管理フェーズによって管理している。
図44に示すように、メインROM300bには、普通遊技を実行制御するための複数の普通遊技制御モジュールが格納されており、これら普通遊技制御モジュールごとに、普通遊技管理フェーズが対応付けられている。具体的には、普通遊技管理フェーズが「00H」である場合には、「普通図柄変動待ち処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「01H」である場合には、「普通図柄変動中処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「02H」である場合には、「普通図柄停止図柄表示処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「03H」である場合には、「普通電動役物入賞口開放前処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「04H」である場合には、「普通電動役物入賞口開放制御処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「05H」である場合には、「普通電動役物入賞口閉鎖有効処理」を実行するためのモジュールがコールされ、普通遊技管理フェーズが「06H」である場合には、「普通電動役物入賞口終了ウェイト処理」を実行するためのモジュールがコールされる。
図45は、主制御基板300における普通遊技管理処理(ステップS700)を説明するフローチャートである。
(ステップS700−1)
メインCPU300aは、普通遊技管理フェーズをロードする。
(ステップS700−3)
メインCPU300aは、上記ステップS700−1でロードした普通遊技管理フェーズに対応する普通遊技制御モジュールを選択する。
(ステップS700−5)
メインCPU300aは、上記ステップS700−3で選択した普通遊技制御モジュールをコールして処理を開始する。
(ステップS700−7)
メインCPU300aは、普通遊技の制御時間を管理する普通遊技タイマをロードする。
図46は、主制御基板300における普通図柄変動待ち処理を説明するフローチャートである。この普通図柄変動待ち処理は、普通遊技管理フェーズが「00H」であった場合に実行される。
(ステップS710−1)
メインCPU300aは、普通図柄保留球数カウンタのカウンタ値をロードし、カウンタ値が「0」であるか、すなわち、普図保留が「0」であるかを判定する。その結果、カウンタ値が「0」であると判定した場合には当該普通図柄変動待ち処理を終了し、カウンタ値は「0」ではないと判定した場合にはステップS710−3に処理を移す。
(ステップS710−3)
メインCPU300aは、普図保留記憶領域の第1記憶部〜第4記憶部に記憶されている普図保留(当たり決定乱数)を、1つ序数の小さい記憶部にブロック転送する。具体的には、第2記憶部〜第4記憶部に記憶されている普図保留を、第1記憶部〜第3記憶部に転送する。また、メインRAM300cには、処理対象となる第0記憶部が設けられており、第1記憶部に記憶されている普図保留を、第0記憶部に転送する。なお、この普通図柄記憶エリアシフト処理においては、普通図柄保留球数カウンタのカウンタ値を「1」減算するとともに、普図保留が「1」減算したことを示す、普図保留減指定コマンドを送信バッファにセットする。
(ステップS710−5)
メインCPU300aは、第0記憶部に転送された当たり決定乱数をロードし、現在の遊技状態に対応する当たり決定乱数判定テーブルを選択して普図抽選を行い、その抽選結果を記憶する普通図柄当たり判定処理を実行する。
(ステップS710−7)
メインCPU300aは、上記ステップS710−5の普図抽選の結果に対応する普通図柄停止図柄番号をセーブする。なお、本実施形態では、普通図柄表示器168は1つのLEDランプで構成されており、当たりの場合には普通図柄表示器168を点灯させ、ハズレの場合には普通図柄表示器168を消灯させる。ここで決定する普通図柄停止図柄番号は、最終的に普通図柄表示器168を点灯するか否かを示すものであり、例えば、当たりに当選した場合には、普通図柄停止図柄番号として「0」が決定され、ハズレの場合には、普通図柄停止図柄番号として「1」が決定される。
(ステップS710−9)
メインCPU300aは、現在の遊技状態を確認し、対応する普通図柄変動時間データテーブルを選択してセットする。
(ステップS710−11)
メインCPU300aは、上記ステップS710−3で第0記憶部に転送した当たり決定乱数と、上記ステップS710−9でセットした普通図柄変動時間データテーブルとに基づいて、普通図柄変動時間を決定する。
(ステップS710−13)
メインCPU300aは、上記ステップS710−11で決定した普通図柄変動時間を普通遊技タイマにセーブする。
(ステップS710−15)
メインCPU300aは、普通図柄表示器168において、普通図柄の変動表示を開始するために、普通図柄表示図柄カウンタを設定する処理を実行する。この普通図柄表示図柄カウンタに、カウンタ値として例えば「0」が設定されている場合には普通図柄表示器168が点灯制御され、カウンタ値として「1」が設定されている場合には普通図柄表示器168が消灯制御される。ここでは、普通図柄の変動表示の開始時に所定のカウンタ値が普通図柄表示図柄カウンタに設定されることとなる。
(ステップS710−17)
メインCPU300aは、普図保留記憶領域に記憶されている普図保留数を示す普図保留指定コマンドを送信バッファにセットする。
(ステップS710−19)
メインCPU300aは、上記ステップS710−7で決定された普通図柄停止図柄番号、すなわち、普通図柄当たり判定処理によって決定された図柄種別(当たり図柄またはハズレ図柄)に基づいて、普通図柄指定コマンドを送信バッファにセットする。
(ステップS710−21)
メインCPU300aは、普通遊技管理フェーズを「01H」に更新し、当該普通図柄変動待ち処理を終了する。
図47は、主制御基板300における普通図柄変動中処理を説明するフローチャートである。この普通図柄変動中処理は、普通遊技管理フェーズが「01H」であった場合に実行される。
(ステップS720−1)
メインCPU300aは、上記ステップS710−13でセーブした普通遊技タイマのタイマ値が「0」であるかを判定する。その結果、タイマ値が「0」であった場合にはステップS720−9に処理を移し、タイマ値が「0」でなかった場合にはステップS720−3に処理を移す。
(ステップS720−3)
メインCPU300aは、普通図柄表示器168の点灯時間および消灯時間を計時する普通図柄表示タイマを更新する。具体的には、普通図柄表示タイマのタイマ値が「0」であった場合には、所定のタイマ値がセットされ、タイマ値が「1」以上であった場合には、現在のタイマ値から「1」減算した値にタイマ値を更新する。
(ステップS720−5)
メインCPU300aは、普通図柄表示タイマのタイマ値が「0」であるかを判定する。その結果、普通図柄表示タイマのタイマ値が「0」であると判定した場合にはステップS720−7に処理を移し、普通図柄表示タイマのタイマ値が「0」でないと判定した場合には当該普通図柄変動中処理を終了する。
(ステップS720−7)
メインCPU300aは、普通図柄表示図柄カウンタのカウンタ値を更新する。ここでは、普通図柄表示図柄カウンタのカウンタ値が、普通図柄表示器168の消灯を示すカウンタ値であった場合には点灯を示すカウンタ値に更新し、普通図柄表示器168の点灯を示すカウンタ値であった場合には消灯を示すカウンタ値に更新し、当該普通図柄変動中処理を終了する。これにより、普通図柄表示器168は、普通図柄変動時間にわたって、所定時間おきに点灯、消灯を繰り返す(点滅する)こととなる。
(ステップS720−9)
メインCPU300aは、普通図柄表示図柄カウンタに、上記ステップS710−7で決定した普通図柄停止図柄番号(カウンタ値)をセーブする。これにより、普通図柄表示器168が最終的に点灯もしくは消灯制御され、普図抽選の結果が報知されることとなる。
(ステップS720−11)
メインCPU300aは、普通図柄を停止表示する時間である普通図柄変動停止時間を普通遊技タイマにセットする。
(ステップS720−13)
メインCPU300aは、普通図柄の停止表示が開始されたことを示す普図停止指定コマンドを送信バッファにセットする。
(ステップS720−15)
メインCPU300aは、普通遊技管理フェーズを「02H」に更新し、当該普通図柄変動中処理を終了する。
図48は、主制御基板300における普通図柄停止図柄表示処理を説明するフローチャートである。この普通図柄停止図柄表示処理は、普通遊技管理フェーズが「02H」であった場合に実行される。
(ステップS730−1)
メインCPU300aは、上記ステップS720−11でセットした普通遊技タイマのタイマ値が「0」でないかを判定する。その結果、普通遊技タイマのタイマ値が「0」ではないと判定した場合には当該普通図柄停止図柄表示処理を終了し、普通遊技タイマのタイマ値が「0」であると判定した場合にはステップS730−3に処理を移す。
(ステップS730−3)
メインCPU300aは、普図抽選の結果を確認する。
(ステップS730−5)
メインCPU300aは、普図抽選の結果が当たりであるかを判定する。その結果、当たりであると判定した場合にはステップS730−9に処理を移し、当たりではない(ハズレである)と判定した場合にはステップS730−7に処理を移す。
(ステップS730−7)
メインCPU300aは、普通遊技管理フェーズを「00H」に更新し、当該普通図柄停止図柄表示処理を終了する。これにより、1の普図保留に基づく普通遊技管理処理が終了し、普図保留が記憶されている場合には、次の保留に基づく普通図柄の変動表示を開始するための処理が行われることとなる。
(ステップS730−9)
メインCPU300aは、開閉制御パターンテーブルのデータを参照し、普通遊技タイマに、タイマ値として普電開放前時間をセーブする。
(ステップS730−11)
メインCPU300aは、普通遊技管理フェーズを「03H」に更新し、当該普通図柄停止図柄表示処理を終了する。これにより、第2始動口122の開閉制御が開始されることとなる。
図49は、主制御基板300における普通電動役物入賞口開放前処理を説明するフローチャートである。この普通電動役物入賞口開放前処理は、普通遊技管理フェーズが「03H」であった場合に実行される。
(ステップS740−1)
メインCPU300aは、普通遊技タイマのタイマ値が「0」でないかを判定する。その結果、普通遊技タイマのタイマ値が「0」でないと判定した場合には当該普通電動役物入賞口開放前処理を終了し、普通遊技タイマのタイマ値が「0」であると判定した場合にはステップS741に処理を移す。
(ステップS741)
メインCPU300aは、普通電動役物入賞口開閉切替処理を実行する。この普通電動役物入賞口開閉切替処理については後述する。
(ステップS740−3)
メインCPU300aは、普通遊技管理フェーズを「04H」に更新し、当該普通電動役物入賞口開放前処理を終了する。
図50は、主制御基板300における普通電動役物入賞口開閉切替処理を説明するフローチャートである。
(ステップS741−1)
メインCPU300aは、普通電動役物開閉切替回数カウンタのカウンタ値が、普通電動役物開閉切替回数(1回の開閉制御中における可動片122bの開閉回数)の上限値であるかを判定する。その結果、カウンタ値が上限値であると判定した場合には当該普通電動役物入賞口開閉切替処理を終了し、カウンタ値は上限値ではないと判定した場合にはステップS741−3に処理を移す。
(ステップS741−3)
メインCPU300aは、開閉制御パターンテーブルのデータを参照し、普通電動役物開閉切替回数カウンタのカウンタ値に基づいて、普通電動役物ソレノイド122cを通電制御するためのソレノイド制御データ(通電制御データまたは通電停止制御データ)、および、普通電動役物ソレノイド122cの通電時間(ソレノイド通電時間)もしくは通電停止時間(普電閉鎖有効時間=休止時間)であるタイマデータを抽出する。
(ステップS741−5)
メインCPU300aは、上記ステップS741−3で抽出したソレノイド制御データに基づいて、普通電動役物ソレノイド122cの通電を開始するか、もしくは、普通電動役物ソレノイド122cの通電を停止するための普通電動役物ソレノイド通電制御処理を実行する。この普通電動役物ソレノイド通電制御処理の実行により、上記ステップS400−29およびステップS400−31において、普通電動役物ソレノイド122cの通電開始もしくは通電停止の制御がなされることとなる。
(ステップS741−7)
メインCPU300aは、上記ステップS741−3で抽出したタイマデータに基づくタイマ値を、普通遊技タイマにセーブする。なお、ここで普通遊技タイマにセーブされるタイマ値は、第2始動口122の1回の最大開放時間となる。
(ステップS741−9)
メインCPU300aは、普通電動役物ソレノイド122cの通電開始状態か、すなわち、上記ステップS741−5において、普通電動役物ソレノイド122cの通電を開始する制御処理がなされたかを判定する。その結果、通電開始状態であると判定した場合にはステップS741−11に処理を移し、通電開始状態ではないと判定した場合には当該普通電動役物入賞口開閉切替処理を終了する。
(ステップS741−11)
メインCPU300aは、普通電動役物開閉切替回数カウンタのカウンタ値を、現在のカウンタ値に「1」加算した値に更新する。
図51は、主制御基板300における普通電動役物入賞口開放制御処理を説明するフローチャートである。この普通電動役物入賞口開放制御処理は、普通遊技管理フェーズが「04H」であった場合に実行される。
(ステップS750−1)
メインCPU300aは、上記ステップS741−7でセーブした普通遊技タイマのタイマ値が「0」でないかを判定する。その結果、普通遊技タイマのタイマ値が「0」ではないと判定した場合にはステップS750−5に処理を移し、普通遊技タイマのタイマ値が「0」であると判定した場合にはステップS750−3に処理を移す。
(ステップS750−3)
メインCPU300aは、普通電動役物開閉切替回数カウンタのカウンタ値が、普通電動役物開閉切替回数の上限値であるかを判定する。その結果、カウンタ値が上限値であると判定した場合にはステップS750−7に処理を移し、カウンタ値は上限値ではないと判定した場合にはステップS741に処理を移す。
(ステップS741)
上記ステップS750−3において、普通電動役物開閉切替回数カウンタのカウンタ値が、普通電動役物開閉切替回数の上限値ではないと判定した場合には、メインCPU300aは、上記ステップS741の処理を実行する。
(ステップS750−5)
メインCPU300aは、上記ステップS530−9で更新された普通電動役物入賞球数カウンタのカウンタ値が規定数に到達していないか、すなわち、第2始動口122に、1回の開閉制御中の最大入賞可能数と同数の遊技球が入球していないかを判定する。その結果、規定数に到達していないと判定した場合には当該普通電動役物入賞口開放制御処理を終了し、規定数に到達したと判定した場合にはステップS750−7に処理を移す。
(ステップS750−7)
メインCPU300aは、普通電動役物ソレノイド122cの通電を停止して第2始動口122を閉鎖するために必要な普通電動役物閉鎖処理を実行する。これにより、第2始動口122が閉鎖状態となる。
(ステップS750−9)
メインCPU300aは、普電有効状態時間を普通遊技タイマにセーブする。
(ステップS750−11)
メインCPU300aは、普通遊技管理フェーズを「05H」に更新し、当該普通電動役物入賞口開放制御処理を終了する。
図52は、主制御基板300における普通電動役物入賞口閉鎖有効処理を説明するフローチャートである。この普通電動役物入賞口閉鎖有効処理は、普通遊技管理フェーズが「05H」であった場合に実行される。
(ステップS760−1)
メインCPU300aは、上記ステップS750−9でセーブした普通遊技タイマのタイマ値が「0」でないかを判定する。その結果、普通遊技タイマのタイマ値が「0」ではないと判定した場合には当該普通電動役物入賞口閉鎖有効処理を終了し、普通遊技タイマのタイマ値が「0」であると判定した場合にはステップS760−3に処理を移す。
(ステップS760−3)
メインCPU300aは、普電終了ウェイト時間を普通遊技タイマにセーブする。
(ステップS760−5)
メインCPU300aは、普通遊技管理フェーズを「06H」に更新し、当該普通電動役物入賞口閉鎖有効処理を終了する。
図53は、主制御基板300における普通電動役物入賞口終了ウェイト処理を説明するフローチャートである。この普通電動役物入賞口終了ウェイト処理は、普通遊技管理フェーズが「06H」であった場合に実行される。
(ステップS770−1)
メインCPU300aは、上記ステップS760−3でセーブした普通遊技タイマのタイマ値が「0」でないかを判定する。その結果、普通遊技タイマのタイマ値が「0」ではないと判定した場合には当該普通電動役物入賞口終了ウェイト処理を終了し、普通遊技タイマのタイマ値が「0」であると判定した場合にはステップS770−3に処理を移す。
(ステップS770−3)
メインCPU300aは、普通遊技管理フェーズを「00H」に更新し、当該普通電動役物入賞口終了ウェイト処理を終了する。これにより、普図保留が記憶されている場合には、普通図柄の変動表示が再開されることとなる。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
なお、上記実施形態では、6段階の設定値が設けられる場合について説明したが、設定値は設けられていなくてもよく、また、設定値の数は特に限定されるものではない。
また、上記実施形態における入力ポートの出力する信号のオンオフの2度読みが、本発明の所定の判定処理に相当する。なお、上記実施形態では、ゲート検出スイッチ124sやアウト球検出スイッチ114sに接続された入力ポートの出力する信号のオンオフの2度読みを行い、2度読みした結果がともに同じ値(オンまたはオフ)の場合に正しい値としてセーブし、セーブした値に基づいて、スイッチレベルデータを作成することとしたが、本発明はこれに限定されるものではない。すなわち、スイッチレベルデータを作成する際の信号のオンオフの読み込み回数は、予め設定された所定回数行えばよく、1度読み、あるいは、3度読み以上であってもよい。
また、上記実施形態では、スイッチエッジデータの作成を行う際に、前回のポート入力処理において、スイッチレベルデータにオフがセーブされ、かつ、今回のポート入力処理においてスイッチレベルデータにオンがセーブされた場合に、オンエッジを検出することとしたが、本発明はこれに限定されるものではない。具体的には、例えば、前々回のポート入力処理において、スイッチレベルデータにオフがセーブされ、かつ、前回および今回のポート入力処理においてスイッチレベルデータにオンがセーブされた場合に、オンエッジを検出することとしてもよい。すなわち、スイッチレベルデータにオフがセーブされた後に、予め設定された所定回数に亘って、スイッチレベルデータにオンがセーブされた場合に、オンエッジを検出してもよい。
また、上記実施形態では、入力ポート動作条件設定テーブルに基づいて、フィルタリング処理を実行する際に用いられる分周クロックおよびサンプリング幅が設定値として、各入力ポートに対応するメインRAM300cの記憶領域に格納される場合を示したが、本発明はこれに限定されるものではない。例えば、各入力ポートに対応するメインRAM300cの記憶領域に、8ビットの設定値を書き込み可能として、0〜2ビットにサンプリング幅を示す設定値を格納し、3ビットに所謂ローアクティブまたはハイアクティブのいずれかを示す設定値を格納し、4〜6ビットに分周数を示す設定値を格納し、7ビットに内部システムクロックあるいは所定の外部クロックのいずれを用いるかを示す設定値を格納してもよい。この場合、各入力ポートに対応するメインRAM300cの記憶領域のデフォルト値は、例えば、00000001が格納されている。
また、上記実施形態における遊技球の通過が、本発明の所定の事象の発生に相当する。ただし、所定の事象は、遊技球の通過に限定されるものではない。すなわち、上記実施形態では、アウト球検出スイッチ114sが接続される入力ポート3およびゲート検出スイッチ124sが接続される入力ポート4のノイズフィルタの設定について説明したが、その他に第1始動口検出スイッチ120s、第2始動口検出スイッチ122s等の検出スイッチや、RAMクリアスイッチ182s、設定変更スイッチ180sなどの操作検出スイッチが接続される入力ポートについても同様に設定値を設定し、ノイズフィルタの時間設定をしてもよい。また、ゲート検出スイッチ124s、第1始動口検出スイッチ120sや第2始動口検出スイッチ122s等の遊技球の検出に係るスイッチについて設定する設定値と、RAMクリアスイッチ182sや設定変更スイッチ180s等の操作検出に係るスイッチについて設定する設定値を異なる値で設定してもよい。
また、上記実施形態において、アウト球検出スイッチ114sから10.9msに亘ってオン信号が入力されると、アウト球検出スイッチ114sのオン信号を出力する入力ポート3、および、ゲート検出スイッチ124sから5.4msに亘ってオン信号(検出信号)が入力されると、ゲート検出スイッチ124sのオン信号(検出信号)を出力する入力ポート4を備える入力ポート制御レジスタ300dが、本発明の検出部に相当する。なお、アウト球検出スイッチ114sが本発明の第1のセンサに相当し、10.9msが本発明の第1の所定時間に相当する。また、ゲート検出スイッチ124sが本発明の第2のセンサに相当し、5.4msが本発明の第2の所定時間に相当する。
また、上記実施形態において、図23の処理を実行するメインCPU300aが、本発明の検出部に相当する。
また、上記実施形態において、図23の処理を実行するメインCPU300aが、本発明の判定部に相当する。
また、上記実施形態において、図17のステップS100−1の処理を実行するメインCPU300aおよび入力ポート制御レジスタ300dが、本発明の設定部に相当する。また、上記実施形態における電源投入が、本発明の所定条件が成立した場合に相当する。
100 遊技機
114s アウト球検出スイッチ
124s ゲート検出スイッチ
300 主制御基板
300a メインCPU
300b メインROM
300c メインRAM
300d 入力ポート制御レジスタ

Claims (2)

  1. 所定の事象の発生を検出するセンサから所定時間に亘って、前記所定の事象が発生したことを示す信号が送られてきた場合に、検出信号を出力する検出部と、
    前記検出部から検出信号が入力された場合に、所定の判定処理を実行し、前記判定処理の結果に応じて前記所定の事象が発生したと判定する判定部とを備える遊技機。
  2. 複数の前記センサのそれぞれに対応し、前記所定時間を決定するための設定値を記憶可能な複数の記憶部と、
    所定条件が成立した場合に、複数の前記記憶部のそれぞれに対応した前記設定値を設定する設定部とを備える請求項1に記載の遊技機。
JP2019065701A 2019-03-29 2019-03-29 遊技機 Pending JP2020162826A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019065701A JP2020162826A (ja) 2019-03-29 2019-03-29 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019065701A JP2020162826A (ja) 2019-03-29 2019-03-29 遊技機

Publications (1)

Publication Number Publication Date
JP2020162826A true JP2020162826A (ja) 2020-10-08

Family

ID=72717043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019065701A Pending JP2020162826A (ja) 2019-03-29 2019-03-29 遊技機

Country Status (1)

Country Link
JP (1) JP2020162826A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021023484A (ja) * 2019-08-01 2021-02-22 株式会社大一商会 遊技機

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021023484A (ja) * 2019-08-01 2021-02-22 株式会社大一商会 遊技機
JP7188765B2 (ja) 2019-08-01 2022-12-13 株式会社大一商会 遊技機

Similar Documents

Publication Publication Date Title
JP6970512B2 (ja) 遊技機
JP2021171430A (ja) 遊技機
JP2021101856A (ja) 遊技機
JP2021097893A (ja) 遊技機
JP2022023433A (ja) 遊技機
JP2020151391A (ja) 遊技機
JP7324594B2 (ja) 遊技機
JP2020162826A (ja) 遊技機
JP7261023B2 (ja) 遊技機
JP6986410B2 (ja) 遊技機
JP2021003477A (ja) 遊技機
JP6986363B2 (ja) 遊技機
JP2020202894A (ja) 遊技機
JP2021013420A (ja) 遊技機
JP2020065660A (ja) 遊技機
JP7229021B2 (ja) 遊技機
JP7033569B2 (ja) 遊技機
JP6982534B2 (ja) 遊技機
JP2020151209A (ja) 遊技機
JP7002215B2 (ja) 遊技機
JP6785116B2 (ja) 遊技機
JP6857492B2 (ja) 遊技機
JP6982387B2 (ja) 遊技機
JP2020185057A (ja) 遊技機
JP2020185058A (ja) 遊技機