[パチスロの機能フロー]
本発明の遊技機に係る実施例1について、以下図面を参照しながら説明する。はじめに、図1を参照して、実施例1における遊技機(以下、適宜パチスロという)1の機能フローについて説明する。
遊技者によりメダルが投入され、スタートレバー6が操作されると、予め定められた数値の範囲(例えば、0〜65535)の乱数から1つの値(以下、乱数値)が抽出される。
内部抽籤手段(後述のメインCPU31)は、抽出された乱数値に基づいて抽籤を行い、内部当籤役を決定する。内部当籤役の決定により、後述の入賞判定ラインに沿って表示を行うことを許可する図柄の組み合わせが決定される。尚、図柄の組み合わせの種別としては、メダルの払い出し、再遊技の作動等といった特典が遊技者に与えられる「入賞」に係るものと、それ以外のいわゆる「ハズレ」に係るものとが設けられている。
続いて、複数のリール3L、3C、3Rの回転が行われた後で、遊技者によりストップボタン7L、7C、7Rが押されると、リール停止制御手段(例えば、後述の主制御回路71)は、内部当籤役とストップボタン7L、7C、7Rが押されたタイミングとに基づいて、該当するリールの回転を停止する制御を行う。
ここで、パチスロ1では、基本的に、ストップボタン7L、7C、7Rが押されたときから規定時間(190msec)内に、該当するリール3L、3C、3Rの回転を停止する制御が行われる。本実施の形態では、上記規定時間内でのリール3L、3C、3Rの回転に伴って移動する図柄の数を「滑り駒数」と呼び、その最大数を図柄4個分に定める。
リール停止制御手段は、入賞に係る図柄の組み合わせの表示を許可する内部当籤役が決定されているときでは、上記規定時間を利用して、その図柄の組み合わせが入賞判定ラインに沿って極力表示されるようにリール3L、3C、3Rの回転を停止する。その一方で、内部当籤役によってその表示が許可されていない図柄の組み合わせについては、上記規定時間を利用して、入賞判定ラインに沿って表示されることがないようにリール3L、3C、3Rの回転を停止する。
こうして、複数のリール3L、3C、3Rの回転がすべて停止されると、入賞判定手段(例えば、後述のメインCPU31)は、入賞判定ラインに沿って表示された図柄の組み合わせが、入賞に係るものであるか否かの判定を行う。入賞に係るものであるとの判定が行われると、メダルの払い出し等の特典が遊技者に与えられる。以上のような一連の流れがパチスロ1における1回の遊技として行われる。
また、パチスロ1では、前述した一連の流れの中で、液晶表示装置5により行う映像の表示、各種ランプにより行う光の出力、スピーカ9L、9Rにより行う音の出力、或いはこれらの組み合わせを利用して様々な演出が行われる。
遊技者によりスタートレバー6が操作されると、前述の内部当籤役の決定に用いられた乱数値とは別に、演出用の乱数値(以下、演出用乱数値)が抽出される。演出用乱数値が抽出されると、演出内容決定手段(後述の副制御回路72)は、内部当籤役に対応づけられた複数種類の演出内容の中から今回実行するものを抽籤により決定する。
演出内容が決定されると、演出実行手段であるスピーカ9L、9Rや液晶表示装置5は、リール3L、3C、3Rの回転が開始されるとき、各リール3L、3C、3Rの回転がそれぞれ停止されるとき、入賞の有無の判定が行われたとき等の各契機に連動させて演出の実行を進める。このように、パチスロ1では、内部当籤役に対応づけられた演出内容を実行することによって、決定された内部当籤役(言い換えると、狙うべき図柄の組み合わせ)を知る或いは予想する機会が遊技者に提供され、遊技者の興味の向上が図られる。
[パチスロの構造]
次に、図2を参照して、本実施の形態におけるパチスロ1の構造について説明する。図2は、本実施の形態におけるパチスロ1の外部構造を示す。
パチスロ1は、いわゆる「パチスロ機」である。このパチスロ1は、コイン、メダル、遊技球又はトークン等の他、遊技者に付与された、もしくは付与される遊技価値の情報を記憶したカード等の遊技媒体を用いて遊技する遊技機であるが、以下ではメダルを用いるものとして説明する。
パチスロ1は、リール3L、3C、3Rや回路基板等を収容する筐体となるキャビネット1aと、キャビネット1aの前面側に対して開閉可能に取り付けられるフロントドア2と、フロントドア2の前面側にパネル部となるフロントパネル4とを備える。キャビネット1aの内部には、3つのリール3L、3C、3Rが横並びに設けられる。各リール3L、3C、3Rは、円筒状のフレームの周面に、複数の図柄が回転方向に沿って連続的に配置された帯状のシートを貼り付けて構成される。また、フロントドア2の正面の略中央には、縦長矩形の図柄表示領域21L、21C、21Rが設けられる。
フロントドア2は、ドア本体の部分であり、フロントドア2の中央には、液晶表示装置5が設けられる。液晶表示装置5は、フロントドア2の前面側であって、フロントドア2とフロントパネル4との間に設けられる。液晶表示装置5は、取付枠により、フロントドア2の上側の部分に固定される。
また、液晶表示装置5は、図柄表示領域21L、21C、21Rを含む表示画面5aを備え、正面から見て3つのリール3L、3C、3Rに重畳する手前側に位置するように設けられる。図柄表示領域21L、21C、21Rは、3つのリール3L、3C、3Rのそれぞれに対応して設けられており、その背面側に設けられたリール3L、3C、3Rを透過することが可能な構成を備える。図柄表示領域21L、21C、21Rには、入賞判定ラインとして、有効ラインが設けられている。有効ラインは、水平方向中央に配されたセンターライン8aと、斜め右上がりに配されたクロスアップライン8bと、水平方向下部に配されたボトムライン8cと、斜め右下がりに配されたクロスダウンライン8dと、水平方向上部に配されたトップライン8eとから構成される。
つまり、図柄表示領域21L、21C、21Rは、表示窓としての機能を果たすものであり、その背後に設けられたリール3L、3C、3Rの回転及びその停止の動作が遊技者側から視認可能となる。また、本実施の形態では、図柄表示領域21L、21C、21Rを含めた表示画面の全体を使って、映像の表示が行われ、演出が実行される。
図柄表示領域21L、21C、21Rは、その背後に設けられたリール3L、3C、3Rの回転が停止されたとき、リール3L、3C、3Rの表面に配された複数種類の図柄のうち、その枠内における上段、中段及び下段の各領域にそれぞれ1個の図柄(合計で3個)を表示する。また、各図柄表示領域21L、21C、21Rが有する上段、中段及び下段からなる3つの領域のうち予め定められた何れかをそれぞれ組み合わせてなる擬似的なラインを、入賞か否かの判定を行う対象となるライン(入賞ライン)として定義する。なお、本実施例では、入賞ラインは、センターライン8a、クロスアップライン8b、ボトムライン8c、クロスダウンライン8dおよびトップライン8eの5ラインである。
フロントドア2には、遊技者による操作の対象となる各種装置が設けられる。メダル投入口10は、遊技者によって外部から投下されるメダルを受け入れるために設けられる。メダル投入口10に受け入れられたメダルは、所定枚数(例えば3枚)を上限として1回の遊技に投入され、所定枚数を超えた分はパチスロ1内部に預けることが可能となる(いわゆるクレジット機能)。
MAXベットボタン11は、パチスロ内部に預けられているメダルから最大掛け枚数のメダルの投入を決定するために設けられ、また、1ベットボタン12は、パチスロ内部に預けられているメダルから1枚のメダルの投入を決定するために設けられている。C/Pボタン13は、パチスロ内部に預けられているメダルを外部に引き出すために設けられる。
スタートレバー6は、全てのリール3L、3C、3Rの回転を開始するために設けられる。ストップボタン7L、7C、7Rは、3つのリール3L、3C、3Rのそれぞれに対応づけられ、対応するリール3L、3C、3Rの回転を停止するために設けられる。
7セグ表示器53は、7セグメントLEDからなり、今回の遊技に投入されたメダルの枚数(以下、投入枚数)、特典として遊技者に対して払い出すメダルの枚数(以下、払出枚数)、パチスロ内部に預けられているメダルの枚数(以下、クレジット枚数)等の情報を遊技者に対してデジタル表示する。
ランプ14およびLED類57は、演出内容に応じた点消灯のパターンにて光を出力する。スピーカ9L、9Rは、演出内容に応じた効果音や楽曲等の音を出力する。メダル払出口15は、排出されるメダルを外部に導く。メダル払出口15から排出されたメダルは、メダル受皿16に貯められる。
[パチスロが備える回路の構成]
パチスロ1の構造についての説明は以上である。次に、図3および図4を参照して、本実施の形態におけるパチスロ1が備える回路の構成について説明する。本実施の形態におけるパチスロ1は、主基板(主制御回路)71、サブ制御基板(副制御回路)72及びこれらと電気的に接続する周辺装置(アクチュエータ)を備える。
図3は、パチスロの主制御回路の構成を示す図である。主制御回路71は、回路基板上に配置されたマイクロコンピュータ30を主たる構成要素としている。マイクロコンピュータ30は、メインCPU31、メインROM32およびメインRAM33などを含む。
メインROM32には、メインCPU31により実行される制御プログラム、各種のデータテーブル、副制御回路72に対して送信される各種制御指令(コマンドなど)のデータ等が記憶される。メインRAM33には、制御プログラムの実行により決定された内部当籤役等の各種データを格納する格納領域が設けられる。
メインCPU31には、クロックパルス発生回路34、分周器35、乱数発生器36およびサンプリング回路37が接続される。クロックパルス発生回路34および分周器35は、クロックパルスを発生する。メインCPU31は、発生されたクロックパルスに基づいて、制御プログラムを実行する。乱数発生器36は、予め定められた範囲(例えば、0〜65535)から1つの乱数を発生させる。
マイクロコンピュータ30の入力ポートには、スイッチ等が接続されている。メインCPU31は、各種のスイッチなどからの入力を受けて、ステッピングモータ49L、49C、49Rなどの周辺装置の動作を制御する。
リール停止信号回路7Sは、3つのストップボタン7L、7C、7Rが遊技者により、リール3L、3C、3Rの回転を停止させるために押下されたことを検出する。また、スタートスイッチ14Sは、スタートレバー6が遊技者により、リール3L、3C、3Rの回転を開始させるために操作されたことを検出する。
メダルセンサ42Sは、メダル投入口10に受け入れられたメダルを検出する。1ベットスイッチ11Sは、1ベットボタン12が遊技者により押下されたことを検出する。最大ベットスイッチ12Sは、MAXベットボタン11が遊技者により押下されたことを検出する。C/Pスイッチ13Sは、C/Pボタン13が遊技者により押下されたことを検出する。
マイクロコンピュータ30により動作が制御される周辺装置としては、ステッピングモータ49L、49C、49R、7セグ表示器53およびホッパー40がある。また、マイクロコンピュータ30の出力ポートには、各周辺装置の動作を制御するための回路が接続されている。
モータ駆動回路39は、リール3L、3C、3Rに対応して設けられたステッピングモータ49L、49C、49Rの駆動を制御する。リール位置検出回路50は、発光部と受光部とを有する光センサにより、リール3L、3C、3Rが一回転したことを示すリールインデックスをリール3L、3C、3Rに応じて検出する。
ステッピングモータ49L、49C、49Rは、回転速度がパルスの出力数に比例し、指定された角度で回転軸を停止させることが可能な構成を含む。ステッピングモータ49L、49C、49Rの駆動力は、所定の減速比のギアを介してリール3L、3C、3Rに伝達される。ステッピングモータ49L、49C、49Rに対して1回のパルスが出力されるごとに、リール3L、3C、3Rは一定の角度で回転する。
メインCPU31は、リールインデックスを検出してからステッピングモータ49L、49C、49Rに対してパルスを出力した回数をカウントすることによって、リール3L、3C、3Rの回転角度を管理する。メインCPU31は、リール3L、3C、3Rの回転角度を管理することにより、リール3L、3C、3Rの表面に配置された複数の図柄の各位置を管理する。
また、ホッパー駆動回路41は、ホッパー40の動作を制御する。また、払出完了信号回路51は、ホッパー40に設けられたメダル検出部40Sが行うメダルの検出を管理し、ホッパー40から外部に排出されたメダルが払出枚数に達したか否かをチェックする。
副制御回路72は、主制御回路71と電気的に接続されており、主制御回路71から送信されるコマンドに基づいて演出内容の決定や実行等の処理を行う。副制御回路72には、液晶表示装置5、スピーカ9L、9R、ランプ14が接続されており、主制御回路71から送信されたコマンドに応じてこれらを制御する。また、副制御回路72は、主制御回路71から送信されたコマンドに応じて、サブROM(図示せず)に記憶されている制御プログラムに従い、映像、音、光の出力の制御を行うサブCPU(図示せず)を有する。
図4は、副制御回路72の構成を示すブロック図である。副制御回路72は、画像制御回路72aと、音・ランプ制御回路72bとから構成されている。この画像制御回路72a及び音・ランプ制御回路72bは、主制御回路71を構成する回路基板とは各々別の回路基板上に構成されているが、これらの機能を統合することにより、主制御回路71と一体に構成してもよい。
図4に示す実施例では、主制御回路71と画像制御回路72aとの間の通信は、主制御回路71から画像制御回路72aへの一方向で行われ、画像制御回路72aから主制御回路71に対して、コマンド、その他の情報が送信されることはない。また、画像制御回路72aと音・ランプ制御回路72bとの間の通信は、画像制御回路72aから音・ランプ制御回路72bへの一方向で行われ、音・ランプ制御回路72bから画像制御回路72aへコマンド、情報等が送信されることはない。
画像制御回路72aは、画像制御マイコン81、シリアルポート82、プログラムROM83、ワークRAM84、カレンダIC85、画像制御IC86、制御RAM87、画像ROM88(キャラクタROM)及びビデオRAM89で構成される。
画像制御マイコン81は、CPU、割込コントローラ、入出力ポート、シリアルポート82を備えている。画像制御マイコン81に備えられたCPUは、主制御回路71から送信されたコマンドに基づき、プログラムROM83内に格納されたプログラムに従って各種の処理を行う。なお、画像制御回路72aは、乱数発生器及びサンプリング回路を備えていないが、プログラムROM83に格納されたプログラムを画像制御マイコン81が実行することによって、乱数値を抽出して演出データの抽籤処理を行うように構成されている。
また、画像制御マイコン81は、受信した「スタートコマンド」に基づいた内部当籤役と、「リール停止コマンド」に基づいた各リール3L、3C、3Rの停止操作、及び「表示役コマンド」等に応じて、各種画像を液晶表示装置5に表示する処理を行う。
シリアルポート82は、主制御回路71から送信されるコマンド等を受信する。プログラムROM83は、画像制御マイコン81が実行するプログラムを格納する。
ワークRAM84は、画像制御マイコン81がプログラムを実行する場合に、一時的に情報を記憶するための手段として設けられる。ワークRAM84には、画像データや演出データなど、種々の情報が格納される。
カレンダIC85は、日付データやタイマ用の時間を計数する。画像制御マイコン81には、操作部60が接続されている。実施例では、この操作部60を遊技場の従業員等が操作することにより日付の設定等を行うことが可能となっている。画像制御マイコン81は、操作部60から送信される入力信号に基づいて設定された日付情報を、カレンダIC85に転送する。カレンダIC85に転送された日付情報は主電源遮断後もバックアップされている。
前述のワークRAM84とカレンダIC85は、電源遮断時のバックアップ対象となっている。つまり、画像制御マイコン81に供給される電源が遮断された場合であっても、電源が供給され続け、記憶された情報等の消失が防止される。
画像制御IC86は、画像制御マイコン81により決定された演出内容(例えば、後述の演出データ)に応じた画像を生成し、液晶表示装置5に出力する。
制御RAM87は、画像制御IC86内に形成されている。画像制御マイコン81は、この制御RAM87に対して情報等の書き込みや読み出しを行う。また、制御RAM87には、画像制御IC86のレジスタ等が展開されている。画像制御マイコン81は、画像制御IC86のレジスタ等を所定のタイミング毎に更新する。
画像制御IC86には、液晶表示装置5と、画像ROM88と、ビデオRAM89とが接続されている。なお、画像ROM88は、画像制御マイコン81に接続された構成であってもよい。この場合、3次元画像データなど大量の画像データを処理する場合に有効な構成となる場合がある。画像ROM88は、画像を生成するための画像データ等を格納する。ビデオRAM89は、画像制御IC86で画像を生成する場合に一時的に情報を記憶するための手段である。また、画像制御IC86は、ビデオRAM89のデータを液晶表示装置5へ転送終了する毎に画像制御マイコン81に信号を送信する。
また、画像制御回路72aでは、画像制御マイコン81が、音・ランプの演出の制御を行うことが可能となっている。画像制御マイコン81は、決定された演出内容(例えば、後述の演出データや、特殊演出を決定する特殊演出データ)に基づいて、音・ランプの種類に関する情報、及び出力タイミングを決定する。そして、画像制御マイコン81は、所定のタイミング毎に、音・ランプ制御回路72bにシリアルポート82を介してコマンドを送信する。音・ランプ制御回路72bでは、主に、画像制御回路72aから送信されたコマンドに応じて、音・ランプの出力制御を行うこととなる。
音・ランプ制御回路72bは、音・ランプ制御マイコン111、シリアルポート112、プログラムROM113、ワークRAM114、音源IC115、パワーアンプ116、音源ROM117で構成される。
音・ランプ制御マイコン111は、CPU、割込コントローラ、入出力ポートを備えている。音・ランプ制御マイコン111に備えられたCPUは、画像制御回路72aから送信されたコマンドに基づき、プログラムROM113内に格納されたプログラムに従って音・ランプの出力を制御するための処理を行う。
シリアルポート112は、画像制御回路72aから送信されるコマンド等を受信する。プログラムROM113は、音・ランプ制御マイコン111が実行するプログラム等を格納する。ワークRAM114は、音・ランプ制御マイコン111が前述したプログラムを実行する場合に一時的に情報を記憶するための手段である。
音源IC115は、画像制御回路72aから送信されたコマンドと音源ROM117とを参照して音源を生成し、パワーアンプ116に出力する。パワーアンプ116は増幅器であり、このパワーアンプ116にはスピーカ9L、9Rが接続されている。パワーアンプ116は、音源IC115から出力された音源を増幅し、増幅した音をスピーカ9L、9Rから出力させる。音源ROM117は、音源を生成するための音源データ等を格納する。
また、音・ランプ制御マイコン111には、音量調節部59が接続されている。音量調節部59は、遊技場の従業員等により操作可能となっており、スピーカ9L、9Rから出力される音量の調節を行うための手段である。音・ランプ制御マイコン111は、音量調節部59から得られる情報に基づいて、スピーカ9L、9Rから出力される音の音量を調節する制御を行う。
[図柄配置テーブル]
図5を参照して、図柄配置テーブルについて説明する。図柄配置テーブルは、各リール3L、3C、3Rの回転方向における各図柄の位置と、各位置に配された図柄の種類を特定するデータ(以下、図柄コード)とを規定している。
図柄配置テーブルは、リールインデックスが検出されるときに図柄表示領域21L、21C、21R内の中段に存在する図柄の位置を「0」として、リール3L、3C、3Rの回転方向に進む順に、各図柄の位置に対して「0」〜「20」をそれぞれ割り当てている。したがって、リールインデックスが検出されてから図柄何個分の回転が行われたかを管理しつつ、図柄配置テーブルを参照することによって、主として図柄表示領域21L、21C、21Rの中段に存在する図柄の位置及びその図柄の種類を常に管理することが可能となっている。
左リール3L、中リール3C、及び右リール3Rの外周面上には、"白7"、"青7"、"上チリ青"、"下チリ"、"ボウシ1"、"サボテン1"、"リプレイ"、"ボウシ2"、"サボテン2"及び"上チリ赤"の図柄を所定の順番で配列した図柄列が、それぞれ描かれている。左リール3L、中リール3C、及び右リール3Rは、各図柄表示領域21L、21C、21R内において、図柄列が同図の上方向に向かって順次移動する方向に回転駆動される。なお、本発明は、図5に示した図柄列に限定するものではない。
[図柄組合せテーブル]
図6−1、図6−2を参照して、図柄組合せテーブルについて説明する。本実施の形態では、入賞ラインに沿って各リール3L、3C、3Rにより表示される図柄の組合せが、図柄組合せテーブルにより規定されている図柄の組合せと一致する場合に、入賞と判定され、メダルの払い出し、再遊技の作動、ボーナスゲームの作動といった特典が遊技者に対して与えられる。図6−1、図6−2は、図柄組合せテーブルを示す図である。
図柄組合せテーブルは、後述する図柄コード格納領域に格納されるデータ(格納領域種別)と、特典の種類に応じて予め定められたコンビネーション(図柄の組合せ)と、コンビネーション名称と、払出し枚数を示すデータと、を規定している。表示役は、入賞ラインに沿って表示された図柄の組合せを識別するデータである。格納領域種別は、入賞作動フラグを格納する後述の表示役格納領域をメインCPU31が識別するために設けられたデータである。入賞作動フラグは、各ビットに対して固有の図柄の組合せが割り当てられた1バイトのデータとして表される。
また、払出枚数として1以上の数値が決定された場合、メダルの払い出しが行われる。また、払出枚数は、2枚掛け又は3枚掛けにそれぞれ対応付けて規定されており、予め定められた枚数だけ払い出される。 また、表示役としてリプレイ(RT0移行リプ_1〜4、RT3移行リプ、1、2枚用移行無しリプ_1〜15、RT移行なしリプ_1、2)が決定されたとき、再遊技の作動が行われる。
また、表示役としてBBに対応する白7、または、RBに対応するRB1_1〜4、RB2〜4のいずれかが決定されたとき、ボーナスゲームの作動が行われる。ここで、RBは、BB一般遊技中又はRB中のみ抽籤可能であるものとする。具体的には、RB1_1〜4は、BB一般遊技中のみ抽籤可能である。また、RB2は、RB1中及びRB4中のみ抽籤可能である。また、RB3は、RB2中及びRB3中のみ抽籤可能である。また、RB4は、RB3中のみ抽籤可能である。
また、例えば、入賞ラインに沿ってRT移行図柄であるRT0移行リプ_1〜4が表示されたとき、遊技状態がRT0に移行し、RT3移行リプが表示されたとき、遊技状態がRT3遊技状態に移行する。また、入賞ラインに沿って表示された図柄の組合せが、図柄組合せテーブルにより規定されている図柄の組合せの何れとも一致しない場合には、いわゆる「ハズレ」となる。
[内部抽籤テーブル]
図7−1〜図7−11を参照して、内部抽籤テーブルについて説明する。図7−1は、一般(RT0)遊技状態用内部抽籤テーブルを示す図である。図7−2は、一般(RT1)遊技状態用内部抽籤テーブルを示す図である。図7−3は、一般(RT2)遊技状態用内部抽籤テーブルを示す図である。図7−4は、一般(RT3)遊技状態用内部抽籤テーブルを示す図である。図7−5は、BBフラグ間(RT1)用内部抽籤テーブルを示す図である。図7−6は、BB一般遊技状態(RT1)用内部抽籤テーブルを示す図である。図7−7は、BB一般遊技状態(RT2)用内部抽籤テーブルを示す図である。図7−8は、RB1中用内部抽籤テーブルを示す図である。図7−9は、RB2中用内部抽籤テーブルを示す図である。図7−10は、RB3中用内部抽籤テーブルを示す図である。図7−11は、RB4中用内部抽籤テーブルを示す図である。
一般(RT0)遊技状態用内部抽籤テーブルは、遊技状態が一般遊技状態であって、且つ、RT0遊技状態である場合に参照されるテーブルであり、一般(RT1)遊技状態用内部抽籤テーブルは、遊技状態が一般遊技状態であって、且つ、RT1遊技状態である場合に参照されるテーブルであり、一般(RT2)遊技状態用内部抽籤テーブルは、遊技状態が一般遊技状態であって、且つ、RT2遊技状態である場合に参照されるテーブルであり、一般(RT3)遊技状態用内部抽籤テーブルは、遊技状態が一般遊技状態であって、且つ、RT3遊技状態である場合に参照されるテーブルである。
また、BBフラグ間(RT1)用内部抽籤テーブルは、遊技状態が一般遊技状態であって、BBに対応するデータが持越役格納領域に格納されている場合に参照されるテーブルであり、BB一般遊技状態(RT1)用内部抽籤テーブルは、遊技状態がBB一般遊技状態であって、且つ、RT1遊技状態である場合に参照されるテーブルであり、BB一般遊技状態(RT2)用内部抽籤テーブルは、遊技状態がBB一般遊技状態であって、且つ、RT2遊技状態である場合に参照されるテーブルである。
RB1中用内部抽籤テーブルは、BB一般遊技状態にRB1が入賞した際に参照されるテーブルであり、RB2中用内部抽籤テーブルは、BB一般遊技状態にRB2が入賞した際に参照されるテーブルであり、RB3中用内部抽籤テーブルは、BB一般遊技状態にRB3が入賞した際に参照されるテーブルであり、RB4中用内部抽籤テーブルは、BB一般遊技状態にRB4が入賞した際に参照されるテーブルである。
内部抽籤テーブルは、当籤番号に応じて、設定値(抽籤値)とデータポインタとを規定している。データポインタは、内部抽籤テーブルを参照して行う抽籤の結果として取得されるデータであり、後述の内部当籤役決定テーブルにより規定されている内部当籤役を指定するためのデータである。データポインタには、小役・リプレイ用データポインタとボーナス用ポインタが設けられている。
本実施例では、予め定められた数値の範囲「0〜65535」から抽出される抽籤用乱数値を、各当籤番号に応じた抽籤値で順次減算し、減算の結果が負となったか否か(いわゆる「桁かり」が生じたか否か)の判定を行うことによって内部的な抽籤が行われる。
したがって、抽籤値として規定されている数値が大きいほど、これが割り当てられたデータ(つまり、データポインタ)が決定される確率が高い。尚、各当籤番号の当籤確率は、「各当籤番号に対応する抽籤値/抽出される可能性のある全ての乱数値の個数(65536)」によって表すことができる。なお、図中特に表記しない場合は、抽籤範囲は「0〜65535」、すなわち、確率分母は「65536」である。
図7−1〜図7−11に示すように、各内部抽籤テーブルには、内部当籤役の略称として、F_BB、F_RB1〜4、F_RT移行無しリプ、F_RT0移行リプレイ、F_RT3移行リプレイ、F_チェリー、F_ベル、F_スイカ、F_RB中役1、F_RB中役1+RB2、F_RB中役1+RB3、F_RB中役1+RB4、F_RB中役2、F_RB中役2+RB2、F_RB中役2+RB3、及び、F_RB中役2+RB4が規定されている。このうち、F_BBに入賞した場合には、遊技状態がBB遊技状態に移行する。また、F_RT0移行リプレイ、F_RT3移行リプレイ、F_RB中役1+RB2、F_RB中役1+RB3、F_RB中役1+RB4、F_RB中役2、F_RB中役2+RB2、F_RB中役2+RB3、又は、F_RB中役2+RB4に入賞した場合には、遊技状態がRB遊技状態に移行する。
また、図7−6及び図7−7に示すように、BB一般遊技状態(RT1、2)用内部抽籤テーブルでは、F_RB1に「35000」の抽籤値が規定されており、BB一般遊技中にF_RB1が当籤可能になっている。つまり、BB一般遊技中において、F_RB1に入賞することで、RB1に移行することが可能である。
また、図7−8に示すように、RB1中用内部抽籤テーブルでは、F_RB中役1+RB2に「52436」の抽籤値が規定され、F_RB中役2+RB2に「1000」の抽籤値が規定されており、RB1中に、F_RB中役1+RB2、及び、F_RB中役2+RB2が当籤可能になっている。つまり、RB1中において、F_RB中役1+RB2、又は、F_RB中役2+RB2に当籤し、RB1終了後のBB一般終了後にF_RB中役1+RB2、又は、F_RB中役2+RB2に入賞することで、RB2へ移行することが可能である。
また、図7−9に示すように、RB2中用内部抽籤テーブルでは、F_RB中役1+RB3に「52436」の抽籤値が規定され、F_RB中役2+RB3に「1000」の抽籤値が規定されており、RB2中にF_RB中役1+RB3、及び、F_RB中役2+RB3が当籤可能になっている。つまり、RB2中において、RB2中にF_RB中役1+RB3、又は、F_RB中役2+RB3に当籤し、RB2終了後のBB一般終了後にF_RB中役1+RB3、又は、F_RB中役2+RB3に入賞することで、RB3へ移行することが可能である。
また、図7−10に示すように、RB3中用内部抽籤テーブルでは、F_RB中役1+RB3、F_RB中役1+RB4、F_RB中役2+RB3、及び、F_RB中役2+RB4に1以上の抽籤値が規定されており、RB3中にF_RB中役1+RB3、F_RB中役1+RB4、F_RB中役2+RB3、及び、F_RB中役2+RB4が当籤可能になっている。
また、図7−11に示すように、RB4中用内部抽籤テーブルでは、F_RB中役1+RB2、及び、F_RB中役2+RB2に1以上の抽籤値が規定されており、RB2中にF_RB中役1+RB2、及び、F_RB中役2+RB2が当籤可能になっている。つまり、RB4中においては、RB2へ移行する移行役に当籤し得る。
[内部当籤役決定テーブル]
次に、図8を参照して、データポインタに基づいて当たり要求フラグを決定するための内部当籤役決定テーブルについて説明する。図8は、小役・リプレイ用内部当籤役決定テーブルを示す図である。図8に示す小役・リプレイ用内部当籤役決定テーブルは、各データポインタに対応した当たり要求フラグのデータを備えている。
例えば、図8に示されるように、小役・リプレイ用データポインタが「0」の場合には、当たり要求フラグのデータとして、いずれの内部当籤役にも内部当籤していない"ハズレ"が決定される。小役・リプレイ用データポインタが「1」の場合には、内部当籤役データとして、"白7"が決定される。小役・リプレイ用データポインタが「2」の場合には、当たり要求フラグのデータとして、"RB1_1"、"RB1_2"、"RB1_3"、"RB1_4"が決定される。
[内部当籤役格納領域]
図9は、内部当籤役(表示役)を示すデータが格納される内部当籤役格納領域0〜2を示す。内部抽籤処理において決定された内部当籤役は対応する領域に格納される。なお、表示役のフラグをデータとして格納するための表示役格納領域も、図9に示す内部当籤役格納領域と同様の構造であるので、表示役格納領域については図9にて代用し、その説明は省略する。
例えば、1バイト(8ビット)からなる内部当籤役格納領域0において、ビット0を、「ハズレ」に対応する格納領域に設定してある。ビット1は、「F_BB」に対応する格納領域である。ビット2は、「F_RB1」に対応する格納領域である。ビット3は、「F_RB2」に対応する格納領域である。ビット4は、「F_RB3」に対応する格納領域である。また、ビット5は、「F_RB4」に対応する格納領域である。ビット6は、「F_RT移行無しリプ」に対応する格納領域である。また、ビット7は、「F_RT0移行リプレイ」に対応する格納領域である。
ここで、内部当籤役格納領域0においては、決定された内部当籤役データに対応するビットを「1」としている。例えば、内部当籤役格納領域に「00000010」が格納されているとき(即ち、ビット1のデータが「1」のとき)には、内部当籤役は"F_BB"である。
[図柄コード格納領域]
次に、図10を参照して、図柄コード格納領域の構成について説明する。図柄コード格納領域には、表示可能な役(図柄コード格納領域0〜14)が格納される。なお、全てのリールが停止後、図柄コード格納領域0〜14には、表示役に対応する図柄コードが格納される。このため、図柄コード格納領域は、リール3L、3C、3Rが停止するたびに更新される。図柄コード格納領域の値は、リール3L、3C、3Rの全てが停止した際に、メインCPU31が表示役を識別するために用いられる。
[遊技状態フラグ格納領域]
図11は、遊技状態フラグを示すデータが格納される遊技状態フラグ格納領域を示す図である。遊技状態フラグの値は、メインCPU31が現在の遊技状態を識別するために用いられる。例えば、BB遊技状態である場合には、ビット0に「1」が格納される。ここで、遊技状態フラグ格納領域に格納された遊技状態フラグを示すデータに応じて、前述した図7−1〜図7−11に示す内部抽籤テーブルがメインCPU31によりセットされる。例えば、ビット0に「1」が格納された場合であって、且つ、ビット3に「1」が格納されている場合には、BB一般遊技状態(RT1)用内部抽籤テーブルがメインCPU31によりセットされる。
[持越役格納領域]
図12は、持越役に係るデータが格納される持越役格納領域を示す。例えば、内部抽籤処理において内部当籤役としてF_BBが決定された場合には、持越役格納領域のビット0に「1」が格納される。また、例えば、内部抽籤処理において内部当籤役としてF_RB1が決定された場合には、持越役格納領域のビット1に「1」が格納される。ここで、持越役は、後述の内部抽籤処理において決定されたデータポインタに対応する図柄の組合せが入賞ラインに沿って表示されることが一又は複数のゲームにわたり許容される場合に、当該データポインタをメインCPU31が識別するために設けられた情報である。
[押下順序格納領域]
図13は、停止操作の順序を示すデータが格納される押下順序格納領域を示す。例えば、第1停止操作に左のストップボタン7Lが操作された場合には、ビット0及び1に「1」が格納される。その後、第2停止操作として中のストップボタン7Cが操作されると、「1」が格納されているビット0及び1のうち、ビット1を「0」に更新し、ビット0を「1」のまま維持する。
[作動ストップボタン格納領域]
図14は、今回押されたストップボタン7L、7C、7R、いわゆる作動ストップボタンを示すデータが格納される作動ストップボタン格納領域を示す。なお、作動ストップボタン格納領域には、押す操作が有効なストップボタン7L、7C、7R、いわゆる有効ストップボタンを示すデータも格納される。本実施例では、メインCPU31は、作動ストップボタン格納領域のビット0〜2に格納されているデータに基づいて、今回押されたストップボタン7L、7C、7Rを識別する。また、メインCPU31は、作動ストップボタン格納領域のビット4〜6に格納されているデータに基づいて、未だ押されていないストップボタン7L、7C、7Rを識別する。
[RB中のRB抽籤]
図15は、RB中のRB抽籤を説明する図である。本実施例では、F_BB(BB)に入賞すると、BB遊技状態フラグをオンにし、ボーナス終了枚数カウンタに359をセットするBB作動処理が行われ、BB一般遊技状態に移行する。
ここで、BBは、図16に示すように、有効ライン上に、白7・白7・白7が表示されることで入賞する第一種BB(役物連続作動装置)である。また、払い出し枚数が「359」枚と設定されており、BB一般遊技状態において、払い出し枚数が359枚を超えるとBBが終了となる。つまり、BBが終了する条件であるメダルの払い出し枚数の上限は、RBが3回繰り返された場合に払い出されるメダルの枚数よりも少なく、且つ、RBが2回繰り返された場合に払い出されるメダルの枚数よりも多く規定されている。そして、BB一般遊技中において、RB1へ移行する契機となる役である「F_RB1」に入賞すると(図7−6、図7−7参照)、1回目のRBとして、「RB1」へ移行する。
そして、図15に示すように、RB1中において、RB2の抽籤が行われる。具体的には、RB1中において、RB2への移行契機となる「F_RB中役1+RB2」および「F_RB中役2+RB2」が抽籤される可能性がある(図7−8参照)。そして、「F_RB中役1+RB2」および「F_RB中役2+RB2」に入賞すると、RB2が持越役として持越役格納領域に格納される。
その後、RB1中の遊技において、RBの終了条件である12回の遊技、または、8回の入賞を満たすと、RB1が終了する。なお、RB中は、主に、払い出しが15枚の役(F_RB中役1等)に入賞するので、1回のRBで小役に8回入賞して120枚の払い出しが行われる。
そして、RB2が持越役として持越役格納領域に格納され、RB1終了後の遊技において、「RB2」に入賞した場合には、2回目のRBとして、「RB2」へ移行することとなる。そして、RB2中において、RB3の抽籤が行われる。具体的には、RB2中において、RB3への移行契機となる「F_RB中役1+RB3」および「F_RB中役2+RB3」が抽籤される可能性がある(図7−9参照)。そして、「F_RB中役1+RB3」および「F_RB中役2+RB3」に入賞すると、RB3が持越役として持越役格納領域に格納される。その後、RB2中の遊技において、RBの終了条件である12回の遊技、または、8回の入賞を満たすと、RB2が終了する。
そして、RB3が持越役として持越役格納領域に格納され、RB2終了後の遊技において、「RB3」に入賞した場合には、3回目のRBとして、「RB3」へ移行することとなる。そして、RB3中において、RB3またはRB4の抽籤が行われる。具体的には、RB3中において、RB3への移行契機となる「F_RB中役1+RB3」、「F_RB中役2+RB3」、RB4への移行契機となる「F_RB中役1+RB4」、「F_RB中役2+RB4」が抽籤される可能性がある(図7−10参照)。
ここで、RB4への移行契機となる「F_RB中役1+RB4」、「F_RB中役2+RB4」に当籤すると、RT1よりも遊技者に有利な遊技状態であるRT2に移行する。具体的には、「F_RB中役1+RB4」、「F_RB中役2+RB4」に当籤すると、遊技状態フラグ格納領域のRT2遊技状態に対応するビット4の値が「1」に更新される。ここで、本実施例では、RB3中に払い出し枚数が359枚を超えてBBが終了し、一般遊技状態(RT2)へ移行するものとする。つまり、RBの終了条件である12回の遊技、または、8回の入賞を満たす前に、BBの終了条件である払い出し枚数が359枚を超えるので、RB4へ移行することなく、BBが終了する。そして、RT2に移行した場合には、BB終了後の一般遊技状態でも維持される。なお、RB1〜RB3が成立した場合であっても、RTに変更はない。
このように、BB中のRB3遊技中にRB4を抽籤することができ、RB4に当籤した場合には、RT2へ移行するが、RB3が終了するよりも前にBBが終了条件を満たしてBBが終了するので、RB4への移行契機となる「F_RB中役1+RB4」、「F_RB中役2+RB4」に対応する図柄が表示されることはない。このため、BB中のRB3中にRB4が当籤しているかを解らなくさせることができるので、BB遊技の終了後もRT2に制御されていることを期待させて遊技を行わせることが可能である。
つまり、本実施例では、BBの終了条件として、RB3の終了条件を満たす前にBBが終了するように、BBにおいて払い出されるメダルの上限枚数「359」枚が規定されている。そして、一般遊技状態中において、BBの移行契機となる図柄の組み合わせ「白7−白7−白7」が表示された場合には、BBに移行するように制御し、BB一般遊技中において、RB3の移行契機となる図柄の組み合わせが表示された場合には、RB3に移行するように制御する。そして、例えば、RB3中において、RB4に係る役(F_RB中役1+RB4、F_RB中役2+RB4)に内部当籤しなかった場合には、RB3が終了した後にRT1へ移行するように制御し、また、RB3中において、RB4に係る役に内部当籤した場合には、RB3が終了した後にRT2へ移行するように制御する。
また、図15に例示されているように、1回目のRBが「RB1」、2回目のRBが「RB2」、3回目のRBが「RB3」というように、RB1→RB2→RB3と段階的にRBを移行させている。つまり、RB1中は、RB2への移行契機となる「F_RB中役1+RB2」および「F_RB中役2+RB2」が抽籤可能であり、RB2中は、RB3への移行契機となる「F_RB中役1+RB3」および「F_RB中役2+RB3」が抽籤可能となっている。そして、RB3では、RB4への移行契機となる「F_RB中役1+RB4」および「F_RB中役2+RB4」が抽籤可能となっている。これにより、RB1→RB2→RB3と移行するRBを段階的に変化させ、RB3において、「F_RB中役1+RB4」または「F_RB中役2+RB4」に内部当籤した場合には、RB3が終了した後にRT2へ移行させる。
[RT状態遷移]
図17は、RTの状態遷移を示す図である。RT1は、RT0と比較して相対的に有利な遊技状態である。具体的には、図7−1に示す一般遊技状態(RT0)用内部抽籤テーブルよりも、図7−2に示す一般遊技状態(RT1)用内部抽籤テーブルの方が、若干リプレイに当籤する確率が高い。一般遊技状態(RT1)用内部抽籤テーブルでは、入賞することでRT3に移行するF_RT3移行リプが当籤可能に規定されている。
また、RT2は、RT1と比較して有利な遊技状態である。具体的には、図7−2に示す一般遊技状態(RT1)用内部抽籤テーブルよりも、図7−3に示す一般遊技状態(RT2)用内部抽籤テーブルの方が、リプレイに当籤する確率が高い。一般遊技状態(RT2)用内部抽籤テーブルでは、F_RT3移行リプが当籤する確率が高く規定されている。
また、RT3は、RT2と比較して有利な遊技状態である。具体的には、図7−3に示す一般遊技状態(RT2)用内部抽籤テーブルよりも、図7−4に示す一般遊技状態(RT3)用内部抽籤テーブルの方が、リプレイに当籤する確率が高い。なお、RT3中は、小役が内部当籤した場合に、小役を入賞させるための情報を報知してもよい。例えば、小役を入賞させるための情報として、ストップボタン7L、7C、7Rの押し順を報知してもよいし、ストップボタン7L、7C、7Rを押下するタイミングを報知してもよい。
RT0は、設定を変更した場合またはRT0移行リプレイが入賞した場合に、移行する遊技状態である。また、RT0において、BB(F_BB)が内部当籤した場合(図17では、「BB成立時」と記載)に、RT1へ移行する。
RT1は、RT0において、BB(F_BB)が内部当籤後であって、且つ、BBが入賞する前のBBフラグ間、または、BB中のRB3においてRB4が当籤することなく終了したBB終了後に、移行する遊技状態である。また、RT1において、RB4に内部当籤した場合に、RT2へ移行し、RT3移行リプレイに入賞した場合に、RT3へ移行する。
RT2は、BB中のRB3において、RB4が内部当籤した場合に、移行する遊技状態である。また、RT1において、RB4に内部当籤した場合に、RT2へ移行し、RT3移行リプレイ(F_RT3移行リプレイ)に入賞した場合に、RT3へ移行する。また、RT2において、BBが内部当籤すると、RT1へ移行し、RT3移行リプレイに入賞した場合に、RT3へ移行する。
RT3は、RT3移行リプレイに入賞した場合に、移行する遊技状態である。また、RT3において、BBが内部当籤すると、RT1へ移行する。また、RT3の状態で、規定回数である「200」回の遊技が行われると、RT0へ移行する。なお、RT3の継続期間を管理する方法は、遊技回数に限定されるものではなく、例えば、小役を入賞させるための情報を報知する回数であるナビ回数(例えば、100回)でRT3の継続期間を管理してもよいし、投入されたメダルの総数と払出されたメダルの総数との差である差枚数(例えば、200枚)でRT3の継続期間を管理してもよい。
このように、本実施例では、一般遊技状態として、再遊技役の当籤確率がRT2よりも高い遊技状態であって、且つ、所定の遊技回数「200」回が規定されたRT3をさらに有している。そして、RT2において、RT3の移行契機となる図柄の組み合わせが表示された場合には、RT3に移行するように制御し、また、RT3において、所定の遊技回数である「200」回の遊技が実行された場合には、RT1に移行するように制御する。
このように、BBを終了した後にRT2から遊技回数が有限の高RTであるRT3へ移行するので、規定された遊技回数を消化するまで高RTのゲーム数を全て実行し得るため、遊技者にとって有利な遊技を提供することが可能である。つまり、BBが終了するのを待たずに、BB中に高RTに移行した場合には、BB中に消化される高RTが無駄になる可能性があるため、BB終了後の通常遊技状態中に高RTへ移行するように制御することで、遊技者に有利な遊技を提供することができる。
[パチスロにおいて実行されるプログラムフロー]
次に、図18〜図32を参照して、主制御回路71のメインCPU31により実行されるプログラムの内容について説明する。
[主制御回路のメインCPUの制御によるメインフローチャート]
図18を参照して、メインCPU31が実行する主たる処理を示したメインフローチャートについて説明する。
初めに、メインCPU31は、電源が投入されると、後に図19を用いて詳述する電源投入時処理を行う(ステップS1)。なお、この処理では、メインCPU31は、バックアップが正常であるか否か、設定変更が適切に行われたか否かを判定し、判定結果に応じた初期化処理を行う。
続いて、メインCPU31は、一遊技終了時の初期化処理、すなわち、単位遊技終了時のメインRAM33の所定の記憶領域の情報を消去する(ステップS2)。例えば、メインCPU31は、内部当籤役格納領域や表示役格納領域等に格納されるデータをクリアする。
そして、メインCPU31は、後で図20を参照して説明するメダル受付・スタートチェック処理を行う(ステップS3)。
次に、メインCPU31は、抽籤用の乱数値1〜3を抽出し、乱数値格納領域に格納する(ステップS4)。このステップS4の処理で抽出された抽籤用乱数値は、内部抽籤処理(後述の図21)において使用される。なお、ここで乱数値1は、内部抽籤処理のために使用される0〜65535の値であり、乱数値2、3は、その他の抽籤処理のために使用される値である。乱数値2及び乱数値3については、抽籤に用いられるために必要となった場合にのみ、別途抽出するようにしてもよい。
続いて、メインCPU31は、後で図21を参照して説明する内部抽籤処理を行う(ステップS5)。なお、この処理では、メインCPU31は、内部当籤役を決定する。次に、メインCPU31は、内部抽籤処理の結果に基づいて、リールの停止制御に関する各情報を格納するリール停止初期設定処理(後に図23を用いて詳述)を行う(ステップS6)。この処理では、メインCPU31は、リール3L、3C、3Rの停止に用いる各種データを設定する。
次に、メインCPU31は、スタートコマンドデータを生成し、メインRAM33の通信データ格納領域に格納する(ステップS7)。スタートコマンドは、遊技状態、内部当籤役等の情報を含み、割込処理において副制御回路72に送信される。これにより、副制御回路72は、開始操作に応じて演出を行うことができる。
続いて、メインCPU31は、ウェイト処理を行う(ステップS8)。この処理では、メインCPU31は、前回の遊技開始から所定の時間(例えば、4.1秒)経過するまで待機する。続いて、メインCPU31は、全リールの回転開始を要求するリール回転開始処理を行う(ステップS9)。この処理では、メインCPU31は、リール3L、3C、3Rの回転の開始を要求するとともに、リール回転開始コマンドをメインRAM33の通信データ格納領域に格納する。
そして、メインCPU31は、リール回転開始コマンドデータを生成し、通信データ格納領域に格納する(ステップS10)。この処理では、回転中のリールの各図柄について、内部当籤役等に基づいて引込優先順位を格納する。
そして、メインCPU31は、後に図25を用いて詳述する引込優先順位格納処理を行う(ステップS11)。この処理では、内部抽籤処理の結果に基づいて、回転中の各リールの図柄位置毎に、停止許可の場合には、その引込優先順位データを格納し、また、停止不許可の場合(すなわち、当籤していない役が入賞してしまう場合等)には、停止禁止を格納する。
次に、メインCPU31は、後に図27を用いて詳述するリール停止制御処理を行う(ステップS12)。この処理では、左ストップボタン7L、中ストップボタン7C及び右ストップボタン7Rがそれぞれ押されたタイミングと内部当籤役とに基づいて該当するリールの回転が停止される。
続いて、メインCPU31は、入賞検索処理を行う(ステップS13)。この処理では、メインCPU31は、リール3L、3C、3Rの停止後に有効ラインに沿って表示された図柄組合せと図柄組合せテーブルとを照合し、有効ラインに表示された図柄組合せを判定し、表示役を決定して表示役格納領域に格納するとともに、メダルの払出枚数の決定を行う。また、メインCPU31は、リプレイ役が入賞したと判別した場合には、自動投入枚数カウンタに投入枚数カウンタの値を複写する自動投入要求を行う。また、メインCPU31は、例えば、RT3移行リプレイが入賞したと判別した場合には、自動投入要求を行うとともに、遊技状態フラグ格納領域におけるRT3遊技状態に対応するビット5の値を「1」に更新する。なお、自動投入枚数カウンタは、自動的に投入するメダルの枚数をメインCPU31が計数するために設けられたカウンタであり、投入枚数カウンタは、投入されたメダルの枚数をメインCPU31が計数するために設けられたカウンタである。自動投入枚数カウンタ及び投入枚数カウンタは、メインRAM33の所定の領域に格納される。
次に、メインCPU31は、ステップS13において決定されたメダルの払出枚数に基づいてメダルを払い出す(ステップS14)。その後、メインCPU31は、入賞作動コマンドデータを生成し、通信データ格納領域に格納する(ステップS15)。
続いて、メインCPU31は、後で図29を参照して説明するボーナス終了チェック処理を行う(ステップS16)。この処理では、メインCPU31は、ボーナスゲームを終了する条件を満たした場合にボーナスゲームの作動を終了する。続いて、メインCPU31は、後で図30を参照して説明するボーナス作動チェック処理を行い(ステップS17)、次にステップS2の処理を行う。なお、この処理では、メインCPU31は、ボーナスゲームを開始する条件を満たした場合にボーナスゲームの作動を開始し、再遊技の条件を満たした場合に再遊技の作動を行う。
[電源投入時処理]
図19を参照して、電源投入時におけるメインCPU31の処理手順を示した電源投入時処理について説明する。
初めに、メインCPU31は、バックアップが正常であるか否かを判別する(ステップS21)。この結果、メインCPU31は、バックアップが正常である場合には、バックアップされた設定値をセットし(ステップS22)、ステップS23に移行する。また、メインCPU31は、バックアップが正常でない場合には、そのままステップS23に移行する。
そして、メインCPU31は、設定変更スイッチがオンであるか否かを判別する(ステップS23)。この結果、メインCPU31は、設定変更スイッチがオンである場合には、設定変更時の初期化処理を行う(ステップS24)。そして、メインCPU31は、初期化コマンドを生成し、通信データ格納領域に格納する(ステップS25)。
そして、メインCPU31は、設定値変更処理を行う(ステップS26)。具体的には、メインCPU31は、リセットスイッチを操作することにより、設定値を1〜6のうちから選択し、スタートスイッチ14Sを操作することにより、設定値を確定させる。
続いて、メインCPU31は、設定変更スイッチがオンであるか否かを判別する(ステップS27)。この結果、メインCPU31は、設定変更スイッチがオフになると、乱数値3を抽出し、乱数値格納領域に格納する(ステップS28)。その後、メインCPU31は、初期化コマンドデータを生成し、通信データ格納領域に格納して(ステップS29)、電源投入時処理を終了する。
また、ステップS23の説明に戻って、設定変更スイッチがオンでない場合には、メインCPU31は、バックアップが正常であるか否かを判別する(ステップS30)。この結果、メインCPU31は、バックアップが正常である場合には、バックアップデータに基づいて、電断前の状態に復帰し(ステップS31)、電源投入時処理を終了する。また、メインCPU31は、バックアップが正常でない場合には、電源投入時エラー処理を行い(ステップS32)、電源投入時処理を終了する。なお、バックアップエラーの場合は、打止解除スイッチ又はリセットスイッチの操作により、エラーが解除されず、新たに設定変更が行われた場合にのみ、エラーが解除される。
[メダル受付・スタートチェック処理]
図20を参照して、投入枚数に基づいて開始操作が可能であるか否かをメインCPU31が判別する処理の手順を示したメダル受付・スタートチェック処理について説明する。
初めに、メインCPU31は、自動投入要求があるか否か、すなわち、前のゲームでリプレイに入賞しているか否かを判別する(ステップS41)。このとき、自動投入要求がある場合には、メインCPU31は、自動投入カウンタの値を投入枚数カウンタに複写して自動投入カウンタをクリアする自動投入処理を行う(ステップS42)。そして、メインCPU31は、メダル投入コマンド送信処理を行い(ステップS43)、ステップS45に移行する。
また、ステップS41において、自動投入要求がない場合には、メインCPU31は、メダルの受付を許可し(ステップS44)、続いて、ステップS45の処理を行う。ステップS45では、メインCPU31は、遊技状態に応じて投入枚数の最大値を設定する。本実施例では、メインCPU31は、投入枚数の最大値を「3」と設定する。
続いて、メインCPU31は、メダル受付が許可されているか否かを判別する(ステップS46)。この結果、メダル受付が許可されているときは、メインCPU31は、続いて、ステップS47の処理を行い、メダル受付が許可されていないときは、メインCPU31は、続いて、ステップS51の処理を行う。
ステップS47では、メインCPU31は、メダル投入チェック処理を行う。この処理では、メインCPU31は、メダルセンサ42Sからの入力をチェックする。続いて、メインCPU31は、メダル投入コマンド送信処理を行う(ステップS48)。この処理では、メインCPU31は、メダル投入コマンドをメインRAM33の通信データ格納領域に格納する。格納されたメダル投入コマンドは、後述する割込処理のコマンドデータ送信処理において副制御回路72に送信される。
続いて、メインCPU31は、メダル投入又はクレジット可能であるか否かを判別する(ステップS49)。この結果、メインCPU31は、メダル投入又はクレジット可能である場合には、ステップS51に移行する。また、メインCPU31は、メダル投入又はクレジット可能でない場合には、メダルの受付を禁止する(ステップS50)。
続いて、メインCPU31は、投入枚数が遊技開始可能枚数であるか否かを判別する(ステップS51)。例えば、メインCPU31は、投入枚数カウンタの値が投入枚数の最大値であるか否かを判別する。このとき、投入枚数カウンタの値が投入枚数の最大値である場合には、メインCPU31は、続いて、ステップS52の処理を行い、最大値でない場合には、メインCPU31は、続いて、ステップS46の処理を行う。
ステップS52では、メインCPU31は、スタートスイッチ14Sがオンであるか否かを判別する。具体的には、メインCPU31は、スタートレバー6の操作に基づくスタートスイッチ14Sからの入力があるか否かを判別する。このとき、スタートスイッチ14Sからの入力がある場合には、メインCPU31は、メダル受付を禁止し(ステップS53)、メダル受付・スタートチェック処理を終了する。他方、スタートスイッチ14Sからの入力がない場合には、メインCPU31は、続いて、ステップS46の処理を行う。
[内部抽籤処理]
図21を参照して、乱数値及び遊技状態等に基づいてメインCPU31が内部当籤役を決定する処理の手順を示した内部抽籤処理について説明する。
初めに、メインCPU31は、遊技状態に応じた内部抽籤テーブルをセットする(ステップS61)。続いて、メインCPU31は、乱数値格納領域に格納されている乱数値を取得する(ステップS62)。
次に、メインCPU31は、内部抽籤テーブルを参照して当籤番号に対応する抽籤値を取得し、乱数値から抽籤値を減算する(ステップS63)。続いて、メインCPU31は、減算結果が「0」未満(負)であるか否かを判別する(ステップS64)。このとき、減算結果が負である場合には、メインCPU31は、当籤番号に対応する小役・リプレイ用データポインタ及びボーナス用データポインタを取得し(ステップS68)、続いて、ステップ69の処理を行う。他方、減算結果が負でない場合には、メインCPU31は、続いて、ステップS65の処理を行う。
ステップS65では、メインCPU31は、乱数値を更新するとともに当籤番号を更新する。具体的には、メインCPU31は、乱数値をステップS63で減算した後の値に更新するとともに、未だチェックしていない当籤番号に更新する。続いて、メインCPU31は、全ての当籤番号をチェックしたか否かを判別する(ステップS66)。このとき、全ての当籤番号をチェックした場合には、メインCPU31は、データポインタに「0」をセットし(ステップS67)、ステップS69に移る。他方、全ての当籤番号をチェックしていない場合には、メインCPU31は、ステップS63に移る。
ステップS69では、メインCPU31は、小役・リプレイ用内部当籤役決定テーブルを参照し、小役・リプレイ用データポインタに基づいて内部当籤役を取得する。続いて、メインCPU31は、取得した内部当籤役に対応する内部当籤役格納領域に格納する(ステップS70)。
続いて、メインCPU31は、持越役格納領域が「0」であるか判別する(ステップS71)。この結果、持越役格納領域が「0」である場合には、ボーナス用内部当籤役決定テーブルを参照し、ボーナス用データポインタに基づいて内部当籤役を取得する(ステップS72)。
続いて、メインCPU31は、取得した内部当籤役に対応する持越役格納領域に格納し(ステップS73)、ステップS74に移る。他方、持越役格納領域が「0」でない場合には、メインCPU31は、ステップS74に移る。ステップS74では、持越役格納領域に格納されている内部当籤役に基づいて、内部当籤役格納領域を更新し(ステップS74)、図22を参照して後述する内部抽籤処理時RT移行処理を行って(ステップS75)、内部抽籤処理を終了する。
[内部抽籤処理時RT移行処理]
次に、図22を参照して、持越役がRB4またはBBである場合には、RT2またはRT1に移行する内部抽籤処理時RT移行処理について説明する。
まず、メインCPU31は、持越役がRB4であるか否かを判別する(ステップS81)。この結果、メインCPU31は、持越役がRB4である場合には、遊技状態をRT2に更新し(ステップS82)、内部抽籤処理時RT移行処理を終了する。
メインCPU31は、持越役がRB4でない場合には、持越役がBBであるか否かを判別する(ステップS83)。この結果、メインCPU31は、持越し役がBBである場合には、遊技状態をRT1に更新し(ステップS84)、内部抽籤処理時RT移行処理を終了する。なお、持越役がBBでない場合には、そのまま内部抽籤処理時RT移行処理を終了する。
[リール停止初期設定処理]
図23を参照して、メインCPU31が内部抽籤処理の結果に基づいて、リールの停止制御に関する各情報を格納する処理の手順を示したリール停止初期設定処理について説明する。
初めに、メインCPU31は、小役・リプレイ用データポインタと同一の値を回胴停止用番号としてセットする(ステップS91)。この処理では、回胴停止用番号選択テーブルを参照し、当籤番号(小役・リプレイの当籤役)や遊技状態に応じて回胴停止用番号を選択する。なお、回胴停止用番号選択テーブルとは、データポインタに対応する回胴停止用番号に対応付けて、停止制御に用いる各種情報が規定されているテーブルである。
続いて、メインCPU31は、リール停止初期設定テーブルを参照し、回胴停止用番号に基づいて各情報を取得する(ステップS92)。例えば、メインCPU31は、引込優先順位テーブル番号等を取得する。例えば、第1〜第3停止時に使用する停止テーブルの番号や制御変更処理において制御変更を行うために必要な情報(すなわち、リールが特定の順番で停止される際に、特定の位置で停止(あるいは押下)された場合に再度停止テーブルを選択しなおすために用いられる情報)等を取得する。
なお、停止テーブルには、押下位置に対する滑り駒数の情報が直接的又は間接的に格納されており、これらの情報を使用して、遊技者に不利益を与えず、また、誤入賞を発生させない限度において、開発者の意図する停止位置で停止させるように構成されている。
そして、メインCPU31は、図柄コード格納領域に回転中の識別子を格納する(ステップS93)。すなわち、メインCPU31は、全図柄コード格納領域(未使用領域を除く)のビットをオンにする。その後、メインCPU31は、ストップボタン未作動カウンタに3を格納し(ステップS94)、リール停止初期設定処理を終了する。なお、ストップボタン未作動カウンタは、遊技者により停止操作が行われていないストップボタン7L、7C、7Rの数を判別するためのものであり、メインRAM33の所定の領域に格納される。
[引込優先順位格納処理]
図24を参照して、内部抽籤処理の結果に基づいて、回転中の各リールの図柄位置毎に、停止許可の場合には、その引込優先順位データを格納し、また、停止不許可の場合(すなわち、当籤していない役が入賞してしまう場合等)には、停止禁止を格納する処理の手順を示した引込優先順位格納処理について説明する。
初めに、メインCPU31は、ストップボタン未作動カウンタの値を検索回数として格納する(ステップS101)。続いて、メインCPU31は、検索対象リール決定処理を行う(ステップS102)。この処理では、回転中のリール3L、3C、3Rのうちより左側のリールから順に検索対象リールと決定する。
次に、メインCPU31は、引込優先順位テーブル選択処理(図25参照)を行う(ステップS103)。続いて、メインCPU31は、図柄チェック回数に「21」、検索図柄位置に「0」をセットする(ステップS104)。次に、メインCPU31は、後で図26を参照して説明する図柄コード格納処理を行う(ステップS105)。
次に、メインCPU31は、ステップS105において取得された図柄コードと図柄コード格納領域とに基づいて、表示役格納領域を更新する(ステップS106)。続いて、メインCPU31は、引込優先順位データ取得処理を行う(ステップS107)。この処理では、メインCPU31は、表示役格納領域で「1」が格納されているビットに対応する役であって、内部当籤役格納領域で「1」が格納されているビットに対応する役について、ステップS113で選択された引込優先順位テーブルを参照して、引込優先順位データを取得する。
次に、メインCPU31は、取得した引込優先順位データを検索対象リールに応じた引込優先順位データ格納領域に格納する(ステップS108)。続いて、メインCPU31は、図柄チェック回数を「1」減算し、検索図柄位置を「1」加算する(ステップS109)。
次に、メインCPU31は、図柄チェック回数が「0」であるか否かを判別する(ステップS110)。この判別がYESのときは、メインCPU31は、ステップS111の処理を行い、NOのときは、ステップS105の処理を行う。この処理では、図柄位置「0」〜「20」の全ての検索が行われたかを判別している。ステップS111では、メインCPU31は、検索回数分検索したか否か判別する。この判別がYESのときは、メインCPU31は、引込優先順位格納処理を終了し、NOのときは、ステップ102の処理を行う。この処理では、全リールについて検索が行われたかを判別している。
[引込優先順位テーブル選択処理]
図25を参照して、引込優先順位を選択するための引込優先順位テーブルを選択する引込優先順位テーブル選択処理について説明する。
初めに、メインCPU31は、引込優先順位テーブル選択テーブル番号がセットされているか否か判別する(ステップS121)。この判別の結果、引込優先順位テーブル選択テーブル番号がセットされているときは、メインCPU31は、ステップ122の処理を行い、引込優先順位テーブル選択テーブル番号がセットされていないときは、メインCPU31は、ステップ123の処理を行う。
ステップS122では、メインCPU31は、押下順序格納領域、作動ストップボタン格納領域を参照し、引込優先順位テーブル選択テーブルから対応する引込優先順位テーブル番号をセットし、引込優先順位テーブル選択処理を終了する。
ステップS123では、メインCPU31は、引込優先順位テーブル番号に応じた引込優先順位テーブルをセットし、引込優先順位テーブル選択処理を終了する。
[図柄コード格納処理]
図26を参照して、セットした検索図柄位置に基づく図柄コードを取得する図柄コード格納処理について説明する。
初めに、メインCPU31は、有効ラインデータをセットする(ステップS131)。そして、メインCPU31は、検索図柄位置と有効ラインデータとに基づいて、検索対象リールのチェック用図柄位置データをセットする(ステップS132)。例えば、左リールであれば、上段と下段の図柄位置をチェック用図柄位置データとしてセットする。続いて、メインCPU31は、チェック用図柄位置データの図柄コードを取得し(ステップS133)、図柄コード格納処理を終了する。
[リール停止制御処理]
図27を参照して、メインCPU31が内部当籤役や遊技者による停止操作のタイミング等に基づいてリール3L、3C、3Rの回転を停止させる処理の手順を示したリール停止制御処理について説明する。
初めに、メインCPU31は、有効なストップボタン7L、7C、7Rが押されたか否かを判別する(ステップS141)。このとき、有効なストップボタン7L、7C、7Rが押された場合には、メインCPU31は、続いて、ステップS142の処理を行う。他方、有効なストップボタン7L、7C、7Rが押されていない場合には、メインCPU31は、再び、ステップS141の処理を行う。
ステップS142では、メインCPU31は、押下順序格納領域及び作動ストップボタン格納領域を更新する。続いて、メインCPU31は、ストップボタン未作動カウンタの値を「1」減算する(ステップS143)。続いて、メインCPU31は、作動ストップボタンから検索対象リールを決定する(ステップS144)。
続いて、メインCPU31は、図柄カウンタに基づいて停止開始位置を格納する(ステップS145)。そして、メインCPU31は、滑り駒数決定処理を行う(ステップS146)。この処理では、メインCPU31は、停止テーブルを参照し、停止開始位置に対して定められた滑り駒数決定データを決定する。続いて、メインCPU31は、後に図28を用いて詳述する優先引込制御処理を行う(ステップS147)。この処理では、メインCPU31は、リール押下位置等に応じた滑り駒数をセットする処理を行う。
次に、メインCPU31は、リール停止コマンドデータを生成し、通信データ格納領域に格納する(ステップS148)。リール停止コマンドデータは、作動ストップボタン等についての情報を含み、後述する割込処理のコマンドデータ送信処理において副制御回路72に送信される。これにより、副制御回路72は、停止操作に応じて演出を行うことができる。
続いて、メインCPU31は、停止開始位置と滑り駒数とに基づいて、検索対象リールの停止予定位置を決定し、格納する(ステップS149)。続いて、メインCPU31は、停止予定位置を検索図柄位置としてセットし(ステップS150)、図26で説明した図柄コード格納処理を行う(ステップS151)。そして、メインCPU31は、ステップS133において取得した図柄コードから図柄コード格納領域を更新する(ステップS152)。
続いて、メインCPU31は、特定の停止位置であった場合に、リール停止制御情報群を更新する制御変更処理を行う(ステップS153)。次に、メインCPU31は、ストップボタン未作動カウンタの値が「0」であるか否か判別する(ステップS154)。このとき、ストップボタン未作動カウンタの値が「0」でない場合(第3停止時でない場合)には、メインCPU31は、図24で説明した引込優先順位格納処理を行い(ステップS155)、次に、ステップS141の処理を行う。
すなわち、パチスロ1では、次のリール3L、3C、3Rの回転を停止する処理が行われる前に、未だに回転しているリール3L、3C、3Rの各図柄位置について引込優先順位データを格納する処理が行われる。他方、ストップボタン未作動カウンタの値が「0」である場合には、メインCPU31は、第3停止時の停止制御が終了したと判別し、リール停止制御処理を終了する。
[優先引込制御処理]
図28を参照して、メインCPU31が滑り駒数を決定する処理の手順を示した優先引込制御処理について説明する。
初めに、メインCPU31は、作動ストップボタンに応じた引込優先順位データ格納領域をセットする(ステップS161)。続いて、メインCPU31は、停止開始位置を取得する(ステップS162)。
そして、メインCPU31は、滑り駒数決定データに応じた優先順序テーブルをセットする(ステップS163)。例えば、停止テーブル(停止データテーブル)によって決定された滑り駒数が4なら、優先順序テーブルの滑り駒数決定データが4の行(アドレス)がセットされる。そして、メインCPU31は、優先順序の初期値及びチェック回数に5をセットする(ステップS164)、すなわち0〜4駒の5回分を検索するという情報をセットする処理を行う。
次に、メインCPU31は、滑り駒数決定データを、滑り駒数としてセットする(ステップS165)。続いて、メインCPU31は、停止開始位置及び優先順序に基づいて、停止検索位置を抽出する(ステップS166)。次に、メインCPU31は、停止検索位置の引込優先順位データを取得する(ステップS167)。
続いて、メインCPU31は、先に取得された引込優先順位データ以上であるか否かを判別する(ステップS168)。このとき、先に取得した優先引込順位データ以上である場合には、メインCPU31は、滑り駒数を更新し(ステップS169)、続いて、ステップS170の処理を行う。他方、先に取得した優先引込順位データ未満である場合には、メインCPU31は、続いて、ステップS170の処理を行う。
ステップS170では、メインCPU31は、優先順序及びチェック回数を「1」減算する。続いて、メインCPU31は、チェック回数が「0」であるか否かを判別する(ステップS171)。このとき、チェック回数が「0」である場合には、メインCPU31は、更新された滑り駒数をセットし(ステップS172)、優先引込制御処理を終了する。他方、チェック回数が「0」でない場合には、メインCPU31は、続いて、ステップS166の処理を行う。
[ボーナス終了チェック処理]
図29を参照して、メインCPU31がボーナスゲームを終了する条件を満たした場合にボーナスゲームの作動を終了する処理の手順を示したボーナス終了チェック処理について説明する。
初めに、メインCPU31は、BB一般遊技中であるか、または、BB中RB作動中であるか否かを判別、すなわち、BB遊技状態フラグまたはRB遊技状態フラグがオンであるか否か判別する(ステップS180)。この結果、BB作動中である場合には、メインCPU31は、ステップS181の処理を行い、また、BB作動中でない場合には、ボーナス終了チェック処理を終了する。
ステップS181では、メインCPU31は、ボーナス終了枚数カウンタの値が「0」より小さいか否かを判別する。この結果、メインCPU31は、ボーナス終了枚数カウンタの値が「0」より小さくない場合には、ステップS185に移行する。ここで、ボーナス終了枚数カウンタの値は、「359」である。
また、メインCPU31は、ボーナス終了枚数カウンタの値が「0」より小さい場合には、BB遊技状態フラグをオフにするBB終了処理を行う(ステップS182)。ここで、BB一般遊技中またはRB中であっても、ボーナス終了枚数カウンタの値が「0」より小さい場合には終了する。また、BB終了処理を行った場合であっても、RT状態は持ち越され、BB終了後の一般遊技状態では、持ち越されたRT状態で遊技が行われる。
そして、メインCPU31は、ボーナス終了時コマンドデータを副制御回路72に送信するボーナス終了時コマンド送信処理を行い(ステップS183)、ボーナス終了時の初期化処理を行って(ステップS184)、ボーナス終了チェック処理を終了する。
ステップS185では、メインCPU31は、BB中RB作動中であるか否かを判別する。この結果、BB中RB作動中でない場合には、ボーナス終了チェック処理を終了する。また、メインCPU31は、BB中RB作動中である場合には、RBの終了条件を満たしたか否かを判別する(ステップS186)。ここで、RBの終了条件とは、12回の遊技、または8回の入賞である。
この結果、メインCPU31は、RBの終了条件を満たしている場合には、RB遊技状態フラグをオフにするRB終了処理を行って(ステップS187)、ボーナス終了チェック処理を終了する。また、RBの終了条件を満たしていない場合には、そのままボーナス終了チェック処理を終了する。
[ボーナス作動チェック処理]
次に、図30に示すフローチャートを用いて、ボーナス作動チェック処理について説明する。まず、メインCPU31は、BBに入賞したか否かを判別する(ステップS191)。この結果、メインCPU31は、BBに入賞したと判定した場合には、BB遊技状態フラグをオンにし、ボーナス終了枚数カウンタに359をセットするBB作動処理を行う(ステップS192)。
続いて、メインCPU31は、持越役格納領域の値をクリアする(ステップS193)。そして、メインCPU31は、副制御回路72にボーナス開始コマンドを送信するボーナス開始コマンド送信処理を行って(ステップS194)、ボーナス作動チェック処理を終了する。
また、メインCPU31は、BBに入賞していないと判定した場合には、RB1〜4のいずれかに入賞したか否かを判定する(ステップS195)。この結果、RB1〜4のいずれかに入賞した場合には、メインCPU31は、RB遊技状態フラグをオンにするRB作動処理を行い(ステップS196)、持越役格納領域の値をクリアして(ステップS197)、ボーナス作動チェック処理を終了する。
また、RB1〜4のいずれかに入賞しなかった場合には、メインCPU31は、リプレイに入賞したか否かの判断を行う(ステップS198)。リプレイに入賞していない場合には、ボーナス作動チェック処理を終了する。他方、メインCPU31は、リプレイに入賞した場合には、自動投入枚数カウンタに投入枚数カウンタの値を複写する自動投入要求を行い(ステップS199)、ボーナス作動チェック処理を終了する。
[メインCPUの制御による割込処理(1.1172msec)]
図31を参照して、メインCPU31が所定の時間(例えば、1.1172ms)毎に実行する割込の処理の手順を示したメインCPU31の制御による割込処理について説明する。
初めに、メインCPU31は、レジスタの退避を行う(ステップS201)。続いて、メインCPU31は、入力ポートチェック処理を行う(ステップS202)。この処理では、メインCPU31は、マイクロコンピュータ30へ送信される信号の有無を確認する。例えば、メインCPU31は、スタートスイッチ14S、ストップスイッチ7S等のオンエッジ、オフエッジを割込処理毎に格納する。また、メインCPU31は、各種スイッチのオンエッジ、オフエッジの情報を含む入力状態コマンドをメインRAM33の通信データ格納領域に格納する。格納された入力状態コマンドは、後述する割込処理の通信データ送信処理において副制御回路72に送信される。これにより、スタートレバー6やストップボタン7L、7C、7Rといった操作手段を用いて各種演出を実行することができる。
続いて、メインCPU31は、タイマ更新処理を行う(ステップS203)。次に、メインCPU31は、演出用タイマ更新処理を行う(ステップS204)。続いて、メインCPU31は、リール制御処理を行う(ステップS205)。例えば、メインCPU31は、リール3L、3C、3Rの回転を制御する。より詳細には、メインCPU31は、リール3L、3C、3Rの回転を開始する旨の要求、すなわち、開始操作に応じて、リール3L、3C、3Rの回転を開始するとともに、一定の速度でリール3L、3C、3Rが回転するように制御を行う。また、停止操作に応じて、停止操作に対応するリール3L、3C、3Rの回転が停止するように制御を行う。
続いて、メインCPU31は、ランプ・7SEG駆動処理を行う(ステップS206)。例えば、メインCPU31は、クレジットされているメダルの数、払出枚数等を各種表示部に表示する。続いて、メインCPU31は、レジスタの復帰を行い(ステップS207)、定期的に発生する割込の処理を終了する。
[入力ポートチェック処理]
図32を参照して、入力ポートチェック処理について説明する。図32に示すように、メインCPU31は、各入力ポートの状態をチェックし(ステップS211)、1割込み前の入力ポートの状態を格納する(ステップS212)。そして、メインCPU31は、現在の入力ポートの状態を格納する(ステップS213)。このように、1割込み前の入力ポートの状態と現在の入力ポートの状態とを格納し、双方の入力ポートの状態を確認できるようにすることで、入力ポートの状態に変化があったか(例えば、ベットボタン11が押された等)をチェックすることができる。
続いて、メインCPU31は、オンエッジの状態を格納する(ステップS214)。ここで、オンエッジとは、ボタンが押されたままの状態のことをいい、オフエッジとは、ボタンがはなされた状態のことをいう。そして、メインCPU31は、入力状態コマンド送信処理を行って(ステップS215)、入力ポートチェック処理を終了する。この処理では、格納された入力ポートの状態等を副制御回路72に送信する。これにより、スタートレバー6やストップボタン7L、7C、7Rといった操作手段を用いて各種演出を実行することができる。
[サブ制御基板のサブCPUによって実行されるプログラムフロー]
次に、図33〜図39を参照して、副制御回路72のサブCPUにより実行されるプログラムの内容について説明する。なお、ここでは、図4に示す画像制御マイコン81のCPUと音・ランプ制御マイコン111のCPUとの総称としてサブCPUと記載する。
初めに、サブCPUは、初期化処理を行い(ステップS301)、ステップS302に移る。この処理では、サブCPUは、ワークRAM84等のエラーチェック、タスクシステムの初期化を行う。タスクシステムは、タイマ割込同期のタスクグループであるランプ制御タスク、サウンド制御タスク、及びVSYNC(Vertical Synchronization)割込同期のタスクグループであるマザータスクを含んで構成される。
ステップS302では、ランプ制御タスクを起動し、ステップS303に移る。ランプ制御タスクについては、後に図34を参照して説明するが、サブCPUに対して2ms毎に送信されるタイマ割込イベントメッセージをサブCPUが受け取るのを待ち、このタイマ割込イベントメッセージをサブCPUが受け取ったことに応じて、サブCPUは、各種ランプの点灯状態を制御する処理を行う。
ステップS303では、サウンド制御タスクを起動し、ステップS304に移る。サウンド制御タスクについては、後に図35を参照して説明するが、サブCPUは、スピーカ9L、9Rからの出音状態を制御する処理を行う。
ステップS304では、マザータスクを起動し、処理を打ち切る。マザータスクについては、後に図36を参照して説明するが、VSYNC(垂直同期信号)割込同期のタスクグループであり、液晶表示装置5で1フレームの映像が表示されたときに液晶表示装置5から送られる垂直同期信号(VSYNC割込信号)を用いる。
[ランプ制御タスク]
図34を参照して、ランプ制御タスクについて説明する。初めに、サブCPUは、タイマ割込初期化処理を行い(ステップS311)、ステップS312に移る。ステップS312では、サブCPUは、ランプ関連データの初期化処理を行い(ステップS312)、ステップS313に移る。ステップS313では、2msイベント待ちを行い、ステップS314に移る。この処理では、サブCPUが2ms毎にタイマ割込イベントメッセージを受け取るまでの間、サブCPUは、タイマ割込同期とは異なるタスクグループを実行する。タイマ割込同期とは異なるタスクグループとして、例えば、コマンド受信割込同期のタスクグループである主基板通信タスクが挙げられる。また、図示は省略するが、電源割込同期のタスクグループや、ドア監視ユニット通信同期のタスクグループが挙げられる。
ステップS314では、後で図35を参照して説明するサウンド制御タスクの実行処理を行い、ステップS315に移る。この処理では、ランプ制御タスクと同一グループであるタイマ割込同期のタスクグループの次の優先順位にあるタスクを実行する。ここでは、タイマ割込同期のタスクグループの優先順位は、基本的に、ランプ制御タスク、サウンド制御タスクの順としている。したがって、ステップS314では、ランプ制御タスクの次の優先順位にあるサウンド制御タスクを実行する。なお、ステップS314では、後述の図35を参照して説明するサウンド制御タスクのうち、ステップS323、ステップS324の処理が行われる。
ステップS315では、サブCPUは、ランプデータ解析処理を行い、ステップS316に移る。ステップS316では、ランプ演出実行処理を行い、ステップS313に移る。
[サウンド制御タスク]
図35を参照して、サウンド制御タスクについて説明する。初めにサブCPUは、スピーカ9L、9Rからの出音状態に関連するサウンド関連データの初期化処理を行い(ステップS321)、ステップS322に移る。ステップS322では、サウンド制御タスクと同一グループであるタイマ割込同期のタスクグループの次の優先順位にあるタスク、すなわちランプ制御タスクを実行し、ステップS323に移る。このステップS322では、サブリール制御タスクのうち、ステップS315、ステップS316の処理が行われる。
ステップS323では、サウンドデータ解析処理を行い、ステップS324に移る。ステップS324では、サウンド演出実行処理を行い、ステップS322へ移る。
[マザータスク]
図36を参照して、マザータスクについて説明する。初めに、サブCPUは、メインタスクの起動を行い(ステップS331)、ステップS332に移る。ステップS332では、主基板通信タスクの起動を行い、処理を打ち切る。
[主基板通信タスク]
図37を参照して、サブCPUにより行われる主基板通信タスクについて説明する。初めに、サブCPUは、通信メッセンジャーキューの初期化を行い(ステップS341)、ステップS342に移る。ステップS342では、受信コマンドのチェックを行い、ステップS343に移る。ステップS343では、前回とは異なるコマンドを受信したか否かを判別する。この判別がYESのときは、ステップS344に移り、NOのときは、ステップS342に移る。
ステップS344では、受信したコマンドのパラメータから内部当籤役、遊技状態、設定値、RTゲーム数カウンタの値等の遊技情報を作成、格納し、ステップS345に移る。ステップS345では、後に図38を参照して説明するコマンド解析処理を行い、ステップS342に移る。
[コマンド解析処理]
図38を参照して、サブCPUにより行われるコマンド解析処理について説明する。初めに、サブCPUは、後で図39を参照して説明する演出内容決定処理を行い(ステップS351)、ステップS352に移る。
ステップS352では、ランプデータ決定処理を行い、ステップS353に移る。ステップS353では、サウンドデータ決定処理を行い、ステップS354に移る。ステップS354では、決定された各データを登録し、コマンド解析処理を終了する。
[演出内容決定処理]
図39を参照して、サブCPUにより行われる演出内容決定処理について説明する。初めに、サブCPUは、初期化コマンド受信時であるか否かを判別する(ステップS361)。初期化コマンド受信時である場合には、サブCPUは、初期化コマンド受信時処理を行い(ステップS362)、演出内容決定処理を終了する。なお、この処理では、例えば、設定値の情報を取得する。また、初期状態で滞在する演出ステージの種別等を決定する。
他方、初期化コマンド受信時でない場合には、サブCPUは、続いて、メダル投入コマンド受信時であるか否かを判別する(ステップS363)。メダル投入コマンド受信時である場合には、サブCPUは、メダル投入コマンド受信時処理を行い(ステップS364)、演出内容決定処理を終了する。なお、この処理では、例えば、メダル投入の有無、投入枚数カウンタやクレジットカウンタの値の情報を取得する。
他方、メダル投入コマンド受信時でない場合には、サブCPUは、続いて、スタートコマンド受信時であるか否かを判別する(ステップS365)。スタートコマンド受信時である場合には、サブCPUは、スタートコマンド受信時処理を行い(ステップS366)、演出内容決定処理を終了する。なお、この処理では、例えば、遊技状態フラグの種別、ボーナス終了枚数カウンタの値、内部当籤役の種別、ロック等に係るフラグの種別、演出用タイマの値等の送信を行う。
他方、スタートコマンド受信時でない場合には、サブCPUは、続いて、リール回転開始コマンド受信時であるか否かを判別する(ステップS367)。リール回転開始コマンド受信時である場合には、サブCPUは、リール回転開始コマンド受信時処理を行い(ステップS368)、演出内容決定処理を終了する。なお、この処理では、例えば、リール3L、3C、3Rの回転に伴う演出を行う。
他方、リール回転開始コマンド受信時でない場合には、サブCPUは、続いて、リール停止コマンド受信時であるか否かを判別する(ステップS369)。リール停止コマンド受信時である場合には、サブCPUは、リール停止コマンド受信時処理を行い(ステップS370)、演出内容決定処理を終了する。なお、この処理では、例えば、停止操作に応じた演出を行う。
他方、リール停止コマンド受信時でない場合には、サブCPUは、続いて、入賞作動コマンド受信時であるか否かを判別する(ステップS371)。入賞作動コマンド受信時である場合には、サブCPUは、入賞作動コマンド受信時処理を行い(ステップS372)、演出内容決定処理を終了する。なお、この処理では、例えば、表示役の種別、ロック等に係るフラグ、メダルの払出枚数の送信を行う。
他方、表示コマンド受信時でない場合には、サブCPUは、続いて、ボーナス開始コマンド受信時であるか否かを判別する(ステップS373)。ボーナス開始コマンド受信時である場合には、サブCPUは、ボーナス開始コマンド受信時処理を行い(ステップS374)、演出内容決定処理を終了する。なお、この処理では、例えば、ボーナス開始時用の演出を行う。
他方、ボーナス開始コマンド受信時でない場合には、サブCPUは、続いて、ボーナス終了コマンド受信時であるか否かを判別する(ステップS375)。ボーナス終了コマンド受信時である場合には、サブCPUは、ボーナス終了コマンド受信時処理を行い(ステップS376)、演出内容決定処理を終了する。なお、この処理では、例えば、ボーナス終了時用の演出を行う。
他方、ボーナス終了コマンド受信時でない場合には、サブCPUは、続いて、入力状態コマンド受信時であるか否かを判別する(ステップS377)。入力状態コマンド受信時である場合には、サブCPUは、入力状態コマンド受信時処理を行い(ステップS378)、演出内容決定処理を終了する。なお、この処理では、例えば、遊技者に操作されたスタートレバー6やストップボタン7L,7C,7Rの種別を取得する。他方、入力状態コマンド受信時でない場合には、サブCPUは、演出内容決定処理を終了する。
以上、説明したように、実施例1の遊技機1では、BB中のRB3遊技中にRB4を抽籤することができ、RB4に当籤した場合には、RT2へ移行するが、RB3が終了するよりも前にBBが終了条件を満たしてBBが終了するので、RB4への移行契機となる「F_RB中役1+RB4」、「F_RB中役2+RB4」に対応する図柄が表示されることはない。このため、BB中のRB3中にRB4が当籤しているかを解らなくさせることができるので、BB遊技の終了後もRT2に制御されていることを期待させて遊技を行わせることが可能である。
また、実施例1の遊技機1では、BBを終了した後にRT2から遊技回数が有限の高RTであるRT3へ移行するので、規定された遊技回数を消化するまで高RTのゲーム数を全て実行し得るため、遊技者にとって有利な遊技を提供することが可能である。つまり、BBが終了するのを待たずに、BB中に高RTに移行した場合には、BB中の高RTが無駄になるため、BB終了後の通常遊技状態中に高RTへ移行するように制御することで、遊技者に有利な遊技を提供することができる。