JP6281011B2 - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP6281011B2
JP6281011B2 JP2017084356A JP2017084356A JP6281011B2 JP 6281011 B2 JP6281011 B2 JP 6281011B2 JP 2017084356 A JP2017084356 A JP 2017084356A JP 2017084356 A JP2017084356 A JP 2017084356A JP 6281011 B2 JP6281011 B2 JP 6281011B2
Authority
JP
Japan
Prior art keywords
data
command
error
symbol
main cpu
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.)
Expired - Fee Related
Application number
JP2017084356A
Other languages
English (en)
Other versions
JP2017124292A (ja
Inventor
一之 柳
一之 柳
芳典 斎藤
芳典 斎藤
昌臣 渡辺
昌臣 渡辺
篤 西田
篤 西田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universal Entertainment Corp
Original Assignee
Universal Entertainment 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 Universal Entertainment Corp filed Critical Universal Entertainment Corp
Priority to JP2017084356A priority Critical patent/JP6281011B2/ja
Publication of JP2017124292A publication Critical patent/JP2017124292A/ja
Application granted granted Critical
Publication of JP6281011B2 publication Critical patent/JP6281011B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、パチスロ等の遊技機に関する。
従来、複数の図柄がそれぞれの表面に配された複数のリールと、遊技メダルやコイン等が投入され、遊技者によりスタートレバーが操作されたことを検出し、複数のリールの回転の開始を要求するスタートスイッチと、複数のリールのそれぞれに対応して設けられたストップボタンが遊技者により押されたことを検出し、該当するリールの回転の停止を要求する信号を出力するストップスイッチと、複数のリールのそれぞれに対応して設けられ、それぞれの駆動力を各リールに伝達するステッピングモータと、スタートスイッチおよびストップスイッチにより出力された信号に基づいて、ステッピングモータの動作を制御し、各リールの回転およびその停止を行うリール制御部とを備え、スタートレバーが操作されたことを検出すると、乱数値に基づいて抽籤を行い、この抽籤の結果(以下、「内部当籤役」という)とストップボタンが操作されたことを検出したタイミングとに基づいてリールの回転の停止を行う、いわゆるパチスロと称される遊技機が知られている。
この種の遊技機は、内部当籤役の決定やリールの回転制御等一連の遊技の進行を制御する主制御回路と、この主制御回路から出力された各種コマンドに基づいて演出データの決定や実行等の各種の処理を行う副制御回路とを備えている。
近年、主制御回路から副制御回路に送信されるコマンドを解析し、遊技機を不正に操作する行為が発見されている。そこで、主制御回路から暗号化したコマンドを副制御回路に送り、副制御回路で復号化する技術が提案されている(例えば、特許文献1、2参照)。
特開2005−21660号公報 特開2006−204324号公報
しかしながら、特許文献1、2に記載の従来のものは、主制御回路で暗号化したコマンドを副制御回路で単に復号化するものであり、復号化したコマンドが正規のコマンドではないと判明した場合でも、その情報をエラー情報として登録するものではなかった。そのため、従来のものは、不正行為により発生したエラー情報を有効利用することができないという課題があった。その結果、従来のものは、遊技機が設置された店舗の係員にエラー情報を表示したり、エラー情報を解析することにより次機種の開発に反映したりすることができなかった。
本発明は、前述のような事情に鑑みてなされたもので、不正行為により発生したエラー情報の有効利用を図ることができる遊技機を提供することを目的とする。
本発明に係る遊技機は、遊技の進行に関する処理を実行する第1制御部と、前記第1制御部から送信されるコマンドに基づいて制御を行う第2制御部と、を備え、前記第1制御部は、前記第2制御部に送信するコマンドを暗号化する暗号化手段と、前記暗号化手段が暗号化したコマンドを前記第2制御部に送信する送信手段と、を備え、前記第2制御部は、暗号化された前記コマンドを受信する受信手段と、前記受信手段により受信した前記コマンドの物理層エラーの発生を判定する第1判定手段と、前記第1判定手段により前記コマンドに物理層エラーが発生していない場合に前記コマンドを復号化する復号化手段と、前記復号化されたコマンドに基づいて、該コマンドのデータが予め定められた値の範囲内にある場合に正常と判定しデータの値が範囲内ではない場合に異常と判定する第2判定手段と、前記第2判定手段において前記正常と判定された場合に、前記復号化されたコマンドに基づいて、該コマンドのデータの整合性がある場合に正常と判定し前記整合性がない場合に異常と判定する第3判定手段と、前記第1判定手段、前記第2判定手段及び前記第3判定手段のいずれか1つにおいて前記異常と判定された場合にエラーに基づいてエラー処理を行うエラー処理手段と、を備え、前記コマンドは、予め定められた順序で配列された、所定バイトのデータで構成され、前記受信手段は、前記送信手段から送信されたコマンドを1バイト単位で発生する受信割込みにより、前記1バイト単位の受信データと、該受信データの受信ステータスデータとを取得するとともに、所定の領域に登録し、前記暗号化手段は、前記コマンドを予め定められた演算パターンで暗号化し、前記復号化手段は、前記受信割込みが前記所定バイトの回数発生したことに基づいて前記所定の領域に登録した暗号化された前記コマンドを、予め定められた演算パターンで復号化することを特徴とする。
この遊技機によると、不正行為により発生したエラー情報の有効利用を図ることができる。
本発明に係る遊技機は、前記暗号化手段および前記復号化手段において、前記予め定められた演算として排他的論理和演算を用いることを特徴とする。
この遊技機によると、不正行為により発生したエラー情報の有効利用を図ることができる。
本発明に係る遊技機は、前記暗号化手段および前記復号化手段において、前記予め定められた演算として四則演算を用いることを特徴とする。
この遊技機によると、不正行為により発生したエラー情報の有効利用を図ることができる。
本発明は、不正行為により発生したエラー情報の有効利用を図ることができるという効果を有する遊技機を提供することができるものである。
本実施の形態における遊技機の外観図である。 本実施の形態における遊技機の図柄表示領域および入賞ラインを示す図であ る。 本実施の形態における遊技機の図柄配置テーブルを示す図である。 本実施の形態における遊技機の正面上部を示す図である。 (a)は本実施の形態における遊技機の左飾りパネルと左赤外線センサーを 示す図である。(b)は本実施の形態における遊技機の左赤外線センサーを示す図で ある。 本実施の形態における遊技機の主制御回路の構成を示す図である。 本実施の形態における遊技機の副制御回路の構成を示す図である。 本実施の形態における副制御回路のサブROMにおける領域イメージを示す 図である。 本実施の形態における副制御回路のサブRAMにおける領域イメージを示す 図である。 本実施の形態における副制御回路のバックアップRAMにおける領域イメ ージを示す図である。 本実施の形態における副制御回路のサブRAMにおけるエラー情報履歴格 納領域の構造の一例を示す図である。 本実施の形態における副制御回路のサブRAMにおけるエラー情報履歴格 納領域に格納されたデータの内容の一例を示す図である。 本実施の形態における副制御回路のサブRAMにおける通信ログ収集用リ ングバッファ領域を示す説明図である。 本実施の形態における副制御回路のサブRAMにおける通信エラー保存領 域を示す説明図である。 本実施の形態における遊技機においてデータ入替パターンAを用いた場合 の暗号化処理および復号化処理の説明図である。 本実施の形態における遊技機においてデータ入替パターンBを用いた場合 の暗号化処理および復号化処理の説明図である。 本実施の形態における遊技機において演算パターンAを用いた場合の暗号 化処理および復号化処理の説明図である。 本実施の形態における遊技機において演算パターンBを用いた場合の暗号 化処理および復号化処理の説明図である。 本実施の形態における遊技機の遊技状態の遷移例を示す図である。 本実施の形態における遊技機の内部抽籤テーブル決定テーブルの例を示す 図である。 本実施の形態における遊技機の内部抽籤テーブルの例を示す図である。 本実施の形態における遊技機のRB1遊技状態用内部抽籤テーブルの例を 示す図である。 本実施の形態における遊技機のRB2遊技状態用内部抽籤テーブルの例を 示す図である。 本実施の形態における遊技機のRT遷移テーブルの例を示す図である。 本実施の形態における遊技機のボーナス用内部当籤役決定テーブルの例を 示す図である。 本実施の形態における遊技機の小役・リプレイ用内部当籤役決定テーブル の例を示す図である。 本実施の形態における遊技機の図柄組合せテーブルの例を示す図である。 本実施の形態における遊技機のボーナス作動時テーブルの例を示す図であ る。 本実施の形態における遊技機の引込優先順位テーブルAの例を示す図であ る。 本実施の形態における遊技機の引込優先順位テーブルBの例を示す図であ る。 本実施の形態における遊技機の停止テーブルの例を示す図である。 本実施の形態における遊技機の内部当籤役格納領域の例を示す図である。 本実施の形態における遊技機の表示役格納領域の例を示す図である。 本実施の形態の遊技機の持越役格納領域の例を示す図である。 本実施の形態の遊技機の遊技状態フラグ格納領域の例を示す図である。 本実施の形態における遊技機の図柄格納領域Aの格納例を示す図である。 本実施の形態における遊技機の図柄格納領域Bの格納例を示す図である。 本実施の形態における主制御回路で行われるメインCPUによるリセット 割込処理のフローチャートを示す図である。 本実施の形態における主制御回路で行われるボーナス作動監視処理のフロ ーチャートを示す図である。 本実施の形態における主制御回路で行われる内部抽籤処理のフローチャー トを示す図である。 本実施の形態における主制御回路で行われる内部抽籤処理のフローチャー トを示す図である。 本実施の形態における主制御回路で行われるリール停止制御処理のフロー チャートを示す図である。 本実施の形態における主制御回路で行われる表示役検索処理のフローチャ ートを示す図である。 本実施の形態における主制御回路で行われるRT制御処理のフローチャー トを示す図である。 本実施の形態における主制御回路で行われるボーナス終了チェック処理の フローチャートを示す図である。 本実施の形態における主制御回路で行われるボーナス作動チェック処理の フローチャートを示す図である。 本発明の実施の形態における主制御回路のマインCPUにより行われる通 信データ格納処理のフローチャートを示す図である。 本実施の形態における主制御回路のメインCPUにより行われる暗号化デ ータ作成処理のフローチャートを示す図である。 本実施の形態における主制御回路で行われるメインCPUによる割込処理 (1.1173ms)のフローチャートを示す図である。 本発明の実施の形態における主制御回路のマインCPUにより行われる通 信データ送信処理のフローチャートを示す図である。 本実施の形態における遊技機の管理システムの全体を示す概略図である。 本実施の形態における遊技機のメニュー画面を示す概略図である。 本実施の形態における遊技機のエラー情報履歴画面を示す概略図である。 本実施の形態における遊技機の管理システムに用いる二次元コードの情報 の内容を示す説明図である。 本実施の形態における遊技機に用いる受信コマンドのコード番号と種別と パラメータとを示す説明図である。 本実施の形態における遊技機においてCOMエラーが発生した場合の二次 元コードの情報の記録イメージを示す説明図であり、(a)は通常の遊技中に偶発的 に発生した場合、(b)はゴト行為により発生して設定変更があった場合、(c)は レバー連続送信がなされた場合をそれぞれ示す。 本実施の形態における遊技機において、RAM破壊があった場合に、それ を液晶表示領域に報知する一例を示す図である。 本実施の形態における副制御回路のサブCPUの電源投入時の処理を説明 するためのフローチャートを示す図である。 本実施の形態における副制御回路のサブCPUにより行われる各種のタス ク起動要求を行うマザータスクのフローチャートを示す図である。 本実施の形態における副制御回路のサブCPUの電断割込処理のフローチ ャートを示す図である。 本実施の形態における副制御回路で行われるサブCPUによる主基板通信 受信割込処理のフローチャートを示す図である。 本実施の形態における副制御回路で行われる演出登録処理のフローチャー トを示す図である。 本実施の形態における副制御回路で行われる演出内容決定処理のフローチ ャートを示す図である。 本実施の形態における副制御回路で行われる主基板通信タスクの詳細なフ ローチャートを示す図である。 本実施の形態における副制御回路で行われる受信データ復号化処理のフロ ーチャートを示す図である。 本実施の形態の副制御回路で行われる主基板受信データBCCチェック処 理のフローチャートを示す図である。 本実施の形態における副制御回路で行われる主基板通信受信データログ保 存処理のフローチャートを示す図である。 本実施の形態における副制御回路で行われる主基板通信受信データログ一 時領域保存処理のフローチャートを示す図である。 本実施の形態における副制御回路で行われる主基板通信エラー履歴データ 保存処理のフローチャートを示す図である。 本発明の実施の形態における副制御回路で行われる主基板受信コマンドチ ェック処理のフローチャートを示す図である。 本実施の形態における副制御回路で行われるCOMエラーチェック処理の フローチャートを示す図である。 本実施の形態における副制御回路のサブCPUにより行われるRTC制御 タスクのフローチャートを示す図である。 本実施の形態における副制御回路のサブCPUにより行われるサブRAM 管理処理のフローチャートを示す図である。 図73に示すサブRAM管理処理におけるバックアップ作成処理のフロー チャートを示す図である。 本発明の他の実施の形態における遊技機の外観を示す斜視図である。 本発明の他の実施の形態における遊技機の遊技盤の概略の構成を示す正面 図である。 本発明の他の実施の形態における遊技機の主制御回路および副制御回路の 構成を示すブロック図である。
[パチスロ遊技機の構成]
以下に、本発明の遊技機について、図面を用いて具体的に説明する。なお、以下の実施の形態では、本発明の遊技機として、図柄を変動表示する3つの回転リールを備えた遊技機であって、コイン、メダルまたはトークン等の他に、遊技者に付与されたカード等の遊技価値を用いて遊技することが可能な遊技機、いわゆるパチスロ遊技機を用いて説明する。また、以下の実施の形態では、パチスロ遊技機を例に挙げて説明するが、本願発明の遊技機を限定するものではなく、パチンコ機やスロットマシンであってもよい。パチンコ遊技機の例は別途後述する。
まず、図1を参照して、本実施の形態に係るパチスロ遊技機の概観について説明する。なお、図1は、本実施の形態に係る遊技機1の斜視図である。
遊技機1は、図1に示すように、リール3L、3C、3Rや後述の主制御回路60(図6参照)等を収容する筐体1aを備えている。筐体1aは、開閉可能な前面扉1bを備えている。さらに、遊技機1は、前面扉1bを閉じた状態で前面扉1bをロック状態またはアンロック状態に切り替えるロック機構を備えている。このロック機構は、ドアキー穴1cにドアキー2を挿入して、ドアキー2を回転することにより操作されるようになっている。
ドアキー2がドアキー穴1cに挿入され、例えば、右回転されることにより前面扉1bが開閉可能になるとともに、左回転されることにより主制御回路60等が電気的にリセットされるようになっている。すなわち、ドアキー2は、ロック機構の操作の他に、遊技機1を電気的にリセットするリセット機能を有している。
前面扉1bの中央部正面には、略垂直面としての図柄表示領域4L、4C、4Rと、液晶表示領域23が形成されている。キャビネット1aの中央部正面の内部には、3個のリール3L、3C、3Rが回転自在に横一列に設けられている。3個のリール3L、3C、3Rには、各々の外周面に複数種類の図柄によって構成される図柄列が描かれている。
各リール3L、3C、3Rの図柄は、図柄表示領域4L、4C、4Rを透過して視認できるようになっている。また、各リール3L、3C、3Rは、定速で回転(例えば80回転/分)するように後述の主制御回路60(図6参照)により制御され、図柄表示領域4L、4C、4R内に表示されるリール3L、3C、3R上に描かれた図柄が、リールの回転に伴って変動する。
液晶表示領域23の下方には略水平面の台座部10が形成されている。台座部10の左側には、遊技者が遊技で獲得したメダルのクレジット(Credit)/払い出し(Pay)の切り替えを行うC/Pボタン14と、押しボタン操作により、クレジットされているメダルを賭けるための最大BETボタン13が設けられる。
C/Pボタン14に対する遊技者の操作によって払出モードまたはクレジットモードの切り替えが行われる。クレジットモードでは、入賞が成立すると、入賞に対応する払出枚数分のメダルがクレジットされる。
また、払出モードでは、入賞が成立すると、入賞に対応する払出枚数分のメダルが正面下部のメダル払出口15から払い出され、このメダル払出口15から払い出されたメダルはメダル受け部16に溜められる。
なお、入賞とは、小役に係る図柄の組合せを有効ライン上に停止することをいう。また、小役とは、成立することによりメダルの払い出しが行われる役のことである。
また、最大BETボタン13に対する遊技者の操作によって、クレジットされているメダルのうち、その時点で投入可能な最大枚数のメダルが投入される。最大BETボタン13を操作することにより、後述の入賞ラインが有効化される。
台座部10の右側には、メダル投入口22が設けられている。メダル投入口22に投入されたメダルに応じて、後述の入賞ラインが有効化される。
メダル投入口22の左には選択ボタン24と、決定ボタン25とが設けられている。遊技者は、液晶表示領域23に表示されたメニュー画面等に対して選択ボタン24および決定ボタン25により入力を行うことができる。
メダル受け部16の上方の左右には、スピーカ21L、21Rが設けられている。スピーカ21L、21Rは、遊技の状況に応じて演出音や報知音等の遊技音を出力する。
台座部10の前面部の左寄りには、スタートレバー6が設けられている。スタートレバー6は、遊技者の開始操作により、リール3L、3C、3Rを回転させ、図柄表示領域4L、4C、4Rに表示された図柄の変動を開始させる。
台座部10の前面部中央で、スタートレバー6の右側には、遊技者の押下操作(停止操作)により3個のリール3L、3C、3Rの回転をそれぞれ停止させるための3個のストップボタン7L、7C、7Rが設けられている。
ここで、3つのリール3L、3C、3Rの回転が行われているときに最初に行われるリールの回転の停止を第1停止といい、第1停止の次に行われ、2つのリールの回転が行われているときに2番目に行われるリールの回転の停止を第2停止といい、第2停止の次に行われ、残り1つのリールの回転が行われているときに最後に行われるリールの回転の停止を第3停止という。
また、遊技者が第1停止させるための停止操作を第1停止操作という。同様に、遊技者が第2停止させるための停止操作を第2停止操作、第3停止させるための停止操作を第3停止操作という。
前面扉1bの上部には、光透過性の上部パネル101が設けられており、その内側に図示しない上部パネル用LED(Light Emitting Diode)が設けられている。なお、LEDの代わりに他の発光体を用いることとしてもよい。上部パネル101は、後述する演出内容に応じて発光する。
液晶表示領域23は、正面側から見てリール3L、3C、3Rの手前側に配設され、画像を表示すると共に、図柄表示領域4L、4C、4R内に、リール3L、3C、3Rに描かれた図柄を透過表示するものである。なお、図柄表示領域4L、4C、4R内における透過率は変更可能である。
この液晶表示領域23は、貯留(クレジット)されているメダルの枚数を表示したり、入賞成立時にメダルの払出枚数を表示したりする。また、液晶表示領域23は、図柄表示領域4L、4C、4Rを囲むように所定の形状からなる枠画像と、後述する演出内容に応じた所定の画像を表示する。
液晶表示領域23の下方であって、台座部10の上方には、下部パネル102が設けられており、その内側に下部パネル102用のLED(LEDの代わりに他の発光体を用いることとしてもよい)が設けられている。下部パネル102は、後述する演出内容に応じて発光する。
台座部10の下方には、光透過性の腰部パネル103が設けられており、その内側に腰部パネル103用のLED(LEDの代わりに他の発光体を用いることとしてもよい)が設けられている。腰部パネル103は、後述する演出内容に応じて発光する。
縦長矩形の各図柄表示領域4L、4C、4R内における上段、中段および下段の各領域には一の図柄が表示され、各図柄表示領域4L、4C、4Rには、対応するリールの周面に配された図柄のうち3つの図柄が表示される。つまり、図柄表示領域4L、4C、4Rは、いわゆる表示窓としての機能を有する。
次に、図2を用いて入賞ラインについて説明する。図柄表示領域4L、4C、4Rには、前述の各図柄表示領域4L、4C、4R内における上段、中段および下段のうち何れかを結ぶ5本の入賞ライン(センターライン8c、ボトムライン8d、クロスアップライン8a、クロスダウンライン8eおよびRB中特殊ライン8f)が設けられている。
遊技機1は、リール3L、3C、3Rの回転が停止した際に、有効化された入賞ライン上に表示された図柄の組合せに基づいて、役の成立・不成立を判定する。なお、以下、有効化された入賞ラインを有効ラインといい、また、有効化されていない入賞ラインを非有効ラインという。
図2に示すように、センターライン8cは、左・中段領域D、中・中段領域E、右・中段領域Fを夫々結んでなるラインである。ボトムライン8dは、左・下段領域G、中・下段領域H、右・下段領域Iを夫々結んでなるラインである。
クロスアップライン8aは、左・下段領域G、中・中段領域E、右・上段領域Cを夫々結んでなるラインである。クロスダウンライン8eは、左・上段領域A、中・中段領域E、右・下段領域Iを夫々結んでなるラインである。RB中特殊ライン8fは、左・中段領域D、中・下段領域H、右・上段領域Cを夫々結んでなるラインである。
なお、本実施の形態においては、BB遊技状態(RB遊技状態)では、2枚のメダルの投入によりRB中特殊ライン8fのみが有効ラインとなる。一方、BB遊技状態(RB遊技状態)以外の遊技状態では、3枚のメダルの投入によりセンターライン8c、ボトムライン8d、クロスアップライン8a、クロスダウンライン8eの4本の入賞ラインが有効ラインとなる。
なお、BB1遊技状態〜BB4遊技状態を総称してBB遊技状態という場合がある。また、RB1遊技状態〜RB2遊技状態を総称してRB遊技状態という場合がある。
次に、図3に示す図柄配置テーブルを参照して、リール3L、3C、3R上に配列された図柄列について説明する。図3は、本実施の形態における遊技機1のリール3L、3C、3R上の外周面上に描かれた図柄の配列を示す図である。
リール3L、3C、3Rの外周面上には、複数種類の図柄が21個配列された図柄列が描かれている。具体的には、赤7図柄、ドン1図柄、ドン2図柄、BAR図柄、波図柄、ベル1図柄、ベル2図柄、チェリー1図柄、チェリー2図柄、リプレイ図柄で構成された図柄列が描かれている。
図柄配置テーブルは、後述する主制御回路60のメインROM32に記憶されている。図3に示すように、図柄配置テーブルには、リール3L、3C、3Rの回転位置とリール外周面上に描かれた図柄とを対応づけるために、リール3L、3C、3Rの1/21回転毎に順次付与される「0」から「20」までの図柄位置が規定されている。
次に、図4を参照して、遊技機の上部について説明する。なお、図4は遊技機1の正面上部を示す図である。
図4に示すように、液晶表示領域23の上部中央には、表示パネルユニット110が設けられており、表示パネルユニット110の左右には左選択パネル151Lおよび右選択パネル151Rが設けられている。
表示パネルユニット110の上部左右には、左飾りパネル121Lおよび右飾りパネル121Rが設けられている。
表示パネルユニット110は光透過性が高く導光性の優れた複数枚の表示パネルと、複数のLEDとを有している。
図5(a)に示すように、左飾りパネル121Lの奥には左赤外線センサー120Lが設けられている。なお、図示しないが、右飾りパネル121Rの奥にも右赤外線センサー120Rが設けられている。
赤外線センサー120L、120Rは、いわゆる反射型赤外線センサーであり、赤外線ビームを出力した方向に物体(例えば、遊技者の手)が存在するかまたは近付いてきたかを検知することができる。
図5(b)に示すように、左赤外線センサー120Lは、矢印AR方向に赤外線ビームを出力し、反射した赤外線ビームを受光することにより左選択パネル151L付近に遊技者の手等が近付いてきたことを検知する。右赤外線センサー120Rも同様に、右選択パネル151R付近に遊技者の手等が近付いてきたかを検知する。
なお、赤外線センサー120L、120Rは常に動作しているわけではなく、特定の演出が実行された場合に動作するようになっている。
また、本実施の形態では、反射型赤外線センサーを採用したが、左選択パネル151Lおよび右選択パネル151R付近に遊技者の手等が近付いたことを検知することができるその他のセンサーを採用することとしてもよい。また、左選択パネル151Lおよび右選択パネル151Rそのものをいわゆるタッチセンサとすることとしてもよい。
[遊技機の回路構成]
次に、図6を参照して、主制御回路60、副制御回路70、主制御回路60または副制御回路70に電気的に接続する周辺装置等を含む遊技機1の回路構成について説明する。なお、図6は、遊技機1の回路構成を示す図である。
主制御回路60は、内部当籤役の決定やリールの回転制御等一連の遊技の進行を制御する。主制御回路60は、回路基板上に配置されたマイクロコンピュータ30を主たる構成要素とし、これに乱数サンプリングのための回路を加えて構成されている。マイクロコンピュータ30は、メインCPU31、メインROM32およびメインRAM33により構成されている。この主制御回路60は、本発明に係る主制御部を構成する。
メインCPU31は、コマンド暗号化手段31a、コマンド送信手段31bを備えている。コマンド暗号化手段31aは、メインROM32に記憶された暗号化情報(後述)に基づいて、メインCPU31が生成したコマンドを暗号化するようになっている。コマンド送信手段31bは、暗号化されたコマンドを副制御回路70に送信するようになっている。
メインCPU31が生成するコマンドとしては、例えば、図55に示すように、受信コマンド欄に記載した「01H」〜「10H」の16種類の種別がある。このコマンドのデータは、各々が1バイトからなる8つのデータ、例えば、コマンド種別、5つのパラメータP1〜P5、遊技状態を示す遊技状態フラグ(遊技状態情報)、主制御回路60と副制御回路70との間における通信エラーの有無を確認するためのエラーチェック情報であるBCC(Block Check Character)のデータによって構成される。これらの各データは、コマンド種別に応じて、各々のビットパターンによってデータ内容を識別することができるようになっている。コマンドのデータは、これら8つのデータ(8バイトのデータ)によって1パケットを構成している。
なお、BCCデータは、本発明に係るエラーチェック情報に対応する。また、コマンドデータは、各々が複数バイトからなるデータであってもよい。また、コマンドデータは、8バイトのデータに限定されない。
メインCPU31には、クロックパルス発生回路34、分周器35、乱数発生器36およびサンプリング回路37が接続されている。
メインCPU31は、乱数値と内部抽籤テーブルとに基づいて内部当籤役を決定し、当該内部当籤役と停止操作が検出されたタイミングとに基づいて、リール3L、3C、3Rの回転を停止させる。
また、メインCPU31は、リール3L、3C、3Rの回転を停止させた際に、図柄表示領域4L、4C、4Rに表示された図柄の組合せに基づいて、役が成立したか否かを判別して成立している場合に、当該成立した役に応じてメダルを払い出す等の利益を遊技者に付与する。
クロックパルス発生回路34および分周器35は、基準クロックパルスを発生する。乱数発生器36は、「0」〜「65535」の範囲の乱数を発生する。サンプリング回路37は、乱数発生器36により発生された乱数から1つの乱数値を抽出(サンプリング)する。
また、遊技機1では、抽出した乱数値を後述のメインRAM33の乱数値記憶領域に記憶する。そして、遊技毎にメインRAM33の乱数値記憶領域に記憶された乱数値に基づいて、内部抽籤処理において内部当籤役の決定を行う。
なお、乱数サンプリングのための手段として、マイクロコンピュータ30内で、即ちメインCPU31の動作プログラム上で、乱数サンプリングを実行する構成にしてもよい。その場合、乱数発生器36およびサンプリング回路37は省略可能であり、或いは、乱数サンプリング動作のバックアップ用として残しておくことも可能である。
マイクロコンピュータ30のメインROM32には、メインCPU31の処理に係るプログラム、各種テーブル、暗号化情報等が記憶されている。ここで、暗号化情報は、機種ごと(タイトルごと)に予め定められた固有のデータ(以下、機種IDという)と、予め定められた暗号化方式を示す暗号化方式コードのデータを含む。なお、機種IDの代わりに、例えば、遊技機をハードウェア的に識別するための固有のデータを用いてもよい。
メインRAM33には、メインCPU31の処理により得られる種々の情報がセットされる。例えば、抽出した乱数値、遊技状態、内部当籤役、払出枚数、ボーナス持越状況、設定値等を特定する情報、各種カウンタおよびフラグがセットされている。これらの情報の一部は、前述のコマンドにより副制御回路70に送信される。
マイクロコンピュータ30からの制御信号により動作が制御される主要な周辺装置等としては、ホッパー40、ステッピングモータ49L、49C、49R等がある。これらのアクチュエータとメインCPU31との間の信号の授受は、I/Oポート38を介して行われる。
また、マイクロコンピュータ30の出力部には、メインCPU31から出力される制御信号を受けて、前述の各周辺装置等の動作を制御するための各回路が接続されている。各回路としては、モータ駆動回路39およびホッパー駆動回路41がある。
ホッパー駆動回路41は、ホッパー40を駆動制御する。これにより、ホッパー40に収容されたメダルの払い出しが行われる。
モータ駆動回路39は、ステッピングモータ49L、49C、49Rを駆動制御する。これにより、リール3L、3C、3Rの回転や停止が行われる。
また、マイクロコンピュータ30の入力部には、前述の各回路および各周辺装置等に制御信号を出力する契機となる入力信号を発生する各スイッチおよび各回路が接続されている。各スイッチおよび各回路としては、スタートスイッチ6S、ストップスイッチ7LS、7CS、7RS、最大BETスイッチ13S、C/Pスイッチ14S、設定キーSW20S、メダルセンサ22S、リール位置検出回路50、払出完了信号回路51がある。なお、ストップスイッチ7LS、7CS、7RSを総称してストップスイッチ7Sという。
スタートスイッチ6Sは、スタートレバー6に対する遊技者の開始操作を検出し、遊技の開始を指令する開始信号をマイクロコンピュータ30に出力する。
ストップスイッチ7LS、7CS、7RSは、それぞれストップボタン7L、7C、7Rに対する遊技者の停止操作を検出し、検出したストップボタン7L、7C、7Rに対応するリール3L、3C、3Rの回転の停止を指令する停止信号をマイクロコンピュータ30に出力する。
最大BETスイッチ13Sは、最大BETボタン13に対する遊技者の投入操作(押下操作)を検出し、クレジットされたメダルからのメダルの投入を指令する信号をマイクロコンピュータ30に出力する。
C/Pスイッチ14Sは、C/Pボタン14に対する遊技者の切り替え操作を検出し、クレジットモードまたは払出モードを切り替えるための信号をマイクロコンピュータ30に出力する。また、クレジットモードから払出モードに切り替えられた場合、遊技機1にクレジットされているメダルの払い出しを指令する信号をマイクロコンピュータ30に出力する。
設定キースイッチ20Sは、遊技機1の設定値を操作するための設定キーが操作されたことを検出して、その検出信号をマイクロコンピュータ30に出力する。
メダルセンサ22Sは、遊技者の投入操作によりメダル投入口22に投入されたメダルを検出し、メダルが投入されたことを示す信号をマイクロコンピュータ30に出力する。
リール位置検出回路50は、リール回転センサーからのパルス信号を検出し、各リール3L、3C、3R上の図柄の位置を検出するための信号を発生する。
払出完了信号回路51は、メダル検出部40Sにより検出されたメダルの枚数(即ちホッパー40から払い出されたメダルの枚数)が指定された枚数に達した際に、メダルの払い出しが完了したことを示すための信号を発生する。
副制御回路70は、後述するスタートコマンド等の主制御回路60から出力された各種コマンドに基づいて演出データの決定や実行等の各種の処理を行う。副制御回路70が主制御回路60へコマンド、情報等を入力することはなく、主制御回路60から副制御回路70への一方向で通信が行われる。この副制御回路70は、本発明に係る副制御部を構成する。
副制御回路70からの制御信号により動作が制御される主要な周辺装置等としては、液晶表示領域23に画像を表示させる表示部としての液晶表示装置5、スピーカ21L、21R、各種操作パネル101〜103、表示パネルユニット110、赤外線センサー120L、120Rがある。なお、液晶表示装置5は、本発明に係るエラー情報表示手段を構成する。
副制御回路70は、決定した演出データに基づいて、液晶表示装置5に表示される画像の決定とその表示、各種操作パネル101〜103や表示パネルユニット110の発光パターンの決定と出力、赤外線センサー120L、120Rの動作タイミングの決定等、スピーカ21L、21Rから出力する演出音や効果音の決定と出力等の制御を行う。
なお、本実施の形態における副制御回路70の構成の詳細については、後述する。
遊技機1では、メダルの投入を条件に、遊技者のスタートレバー6に対する操作によって、スタートスイッチ6Sから遊技を開始する信号が出力されると、モータ駆動回路39に制御信号が出力され、ステッピングモータ49L、49C、49Rの駆動制御(例えば、各相への励磁等)によりリール3L、3C、3Rの回転が開始される。
この際、ステッピングモータ49L、49C、49Rに出力されるパルスの数が計数され、その計数値はパルスカウンタとしてメインRAM33の所定の領域にセットされる。
遊技機1では、「16」のパルスが出力されると、リール3L、3C、3Rが図柄1つ分移動する。移動した図柄の数は計数され、その計数値は図柄カウンタとしてメインRAM33の所定の領域にセットされる。つまり、パルスカウンタにより「16」のパルスが計数される毎に、図柄カウンタが「1」ずつ更新される。
なお、図柄カウンタの値が示す図柄位置の図柄(図3参照)がセンターライン8c上に位置している図柄に対応する。例えば、左リール3Lの図柄カウンタが「0」である際には、図3に示す図柄配置テーブルの図柄位置「0」の赤7がセンターライン8c上に位置している。
また、リール3L、3C、3Rからは一回転毎にリールインデックスが得られ、リール位置検出回路50を介してメインCPU31に出力される。リールインデックスの出力により、メインRAM33にセットされているパルスカウンタや図柄カウンタが「0」にクリアされる。
このようにして、各リール3L、3C、3Rについて1回転の範囲内における図柄位置を特定することとしている。なお、リールの回転により各図柄が一図柄分移動する距離を1コマという。すなわち、図柄が1コマ移動することは、図柄カウンタが「1」更新されることに対応する。
リール3L、3C、3Rの回転位置とリール外周面上に描かれた図柄とを対応づけるために、図柄配置テーブルがメインROM32に記憶されている。この図柄配置テーブルは、前述のリールインデックスが出力される位置を基準として、各リール3L、3C、3Rの一定の回転ピッチ毎に順次付与される、「0」から「20」までのコードナンバーと、それぞれのコードナンバー毎に対応して設けられた図柄の種類を識別する図柄コードとを対応付けている。
また、スタートスイッチ6Sから開始信号が出力されると、乱数発生器36やサンプリング回路37により乱数値が抽出される。遊技機1では、乱数値が抽出されると、メインRAM33の乱数値記憶領域に記憶される。そして、乱数値記憶領域に記憶された乱数値に基づいて内部当籤役が決定される。
リール3L、3C、3Rが定速回転に達した後、停止操作によりストップスイッチ7LS、7CS、7RSから停止信号が出力されると、出力された停止信号および決定された内部当籤役に基づいて、リール3L、3C、3Rを停止制御する制御信号がモータ駆動回路39に出力される。モータ駆動回路39はステッピングモータ49L、49C、49Rを駆動制御し、リール3L、3C、3Rの回転を停止させる。
遊技機1は、停止操作が行われた時点から内部当籤役の成立に係る図柄を最大滑りコマ数分、すなわち、4コマ分引き込んでリール3の回転を停止させる。具体的には、遊技機1は、ストップスイッチ7LS、7CS、7RSにより停止操作の検出が行われた後、4コマ以内に内部当籤役の成立に係る図柄が存在するか否かを判別し、4コマ以内に内部当籤役の成立に係る図柄が存在する場合に、当該図柄を有効ライン上に停止表示されるように滑りコマ数を決定し、該当するリールを停止させる。
また、遊技機1は、内部当籤役として複数の役を決定した場合において、4コマ以内に内部当籤役の成立に係る図柄が複数存在する場合には、より優先順位の高い内部当籤役に係る図柄を有効ライン上に停止表示させるように滑りコマ数を決定する。
なお、基本的には、優先順位1位(優先度が最も高い)はリプレイに係る図柄の組合せであり、優先順位2位は小役に係る図柄の組合せである。次いで、優先順位3位はボーナスに係る図柄の組合せである。
また、ストップスイッチ7LS、7CS、7RSにより停止操作の検出された際、該当するリール3の図柄カウンタに対応する図柄位置、すなわち、リール3の回転の停止が開始される図柄位置を「停止開始位置」といい、当該停止開始位置に決定した滑りコマ数(数値範囲「0」〜「4」)を加算した図柄位置、すなわち、リール3の回転を停止させる図柄位置を「停止予定位置」という。滑りコマ数は、ストップスイッチ7LS、7CS、7RSにより停止操作が検出されてから対応するリール3の回転が停止するまでのリール3の回転量であり、遊技機1では、最大滑りコマ数を「4」と規定している。
全てのリール3L、3C、3Rの回転が停止すると、有効ライン上に表示された図柄の組合せに基づいて表示役の検索処理、すなわち役の成立・不成立の判定処理が行われる。表示役の検索は、メインROM32に記憶された後述の図柄組合せテーブルに基づいて行われる。この図柄組合せテーブルでは、表示役に係る図柄の組合せと、対応する配当とが設定されている。
表示役の検索により、入賞に係る図柄の組合せが表示されたと判別されると、ホッパー駆動回路41に制御信号が出力され、ホッパー40の駆動によりメダルの払い出しが行われる。
この際、メダル検出部40Sは、ホッパー40から払い出されるメダルの枚数を計数し、その計数値が指定された数に達すると、払出完了信号回路51によりメダル払い出しの完了を示す信号が出力される。これにより、ホッパー駆動回路41に制御信号が出力され、ホッパー40の駆動が停止される。
なお、C/Pスイッチ14Sにより、クレジットモードに切り替えられている場合には、入賞に係る図柄の組合せが表示されたと判別されると、入賞に係る図柄の組合せに応じた払出枚数をメインRAM33のクレジットカウンタに加算する。
また、払い出されたメダルの枚数は副制御回路70に送信され、これに基づいて液晶表示領域23にはメダルの払出枚数および更新されたクレジット枚数が表示される。ここで、入賞に係る図柄の組合せが表示された場合に行われる、メダルの払い出しまたはクレジットを総称して単に「払い出し」という場合がある。
次に、図7を参照して、副制御回路70の回路構成について説明する。なお、図7は、遊技機1の副制御回路70の回路構成を示す図である。
副制御回路70は、映像、音、光等を用いた遊技に関する演出を行うための制御を行う。副制御回路70は、主制御回路60から送信される各種コマンドや、選択スイッチ24S、決定スイッチ25Sからの入力情報に基づいて、演出データを決定して各種演出処理を行う。
副制御回路70は、処理手段としてのサブCPU71、処理情報記憶手段として機能するサブROM72、制御情報記憶手段として機能するDRAM73−1(「サブRAM73−1」ともいう)、SRAM73−2、GPU74、VRAM75、デジタルアンプ78を有している。
選択スイッチ24Sは、選択ボタン24に対する遊技者の操作を検出し、例えば、メニュー画面等に表示された選択すべき項目のうち何れが選択状態にあるかを示す表示(例えば、アイコン)を移動させるための信号をサブCPU71に出力する。
また、決定スイッチ25Sは、決定ボタン25に対する遊技者の操作を検出し、例えば、選択状態にある項目を遊技者が選択したことを示す信号をサブCPU71に出力する。すなわち、遊技者はメニュー画面等において、選択したい項目が選択状態になるまで選択ボタン24を押下した後、決定ボタンを押下することにより項目を選択することができる。
サブCPU71は、サブROM72に記憶されているプログラムに基づいて、液晶表示装置5の表示制御、スピーカ21L、21Rの出力制御、各種操作パネル101〜103、表示パネルユニット110の発光制御等を行う。具体的には、サブCPU71は、主制御回路60から各種コマンド等を受信し、コマンドに含まれる各種情報をサブRAM73−1に記憶させる。なお、サブCPU71は、本発明に係るコマンド受信手段、通信エラー確認手段を構成する。
また、サブCPU71には、後述するSRAM73−2(「バックアップRAM73−2」ともいう)が接続されている。バックアップRAM73−2には、電源投入時に、サブRAM73−1に複写されるデータがバックアップされている。
なお、主制御回路60におけるあらゆる情報が、コマンドにより送信され、副制御回路70では、主制御回路60の状態を逐一判断することができる。サブCPU71は、DRAM73−1に記憶させた遊技状態情報、内部当籤役情報等を参照しながら、プログラムを実行することにより、液晶表示装置5、スピーカ21L、21Rおよび各種操作パネル101〜103、表示パネルユニット110等の演出装置に行わせる演出の内容を決定する。
また、サブCPU71は、決定した演出データに基づいて、GPU74を介して液晶表示装置5を制御し、また、スピーカ21L、21Rから出力させる音と、各種操作パネル101〜103、表示パネルユニット110の発光を制御する。
なお、上部パネル101、腰部パネル102、下部パネル103は、実際にはそれぞれ複数のLEDを備えており、これらはそれぞれ個別に設けられたポート(図示しない)の入出力処理で制御される。したがって、各ポートによってそれぞれ個別に発光を制御することができる。
また、サブCPU71は、サブROM72に記憶されている乱数取得プログラムを実行することにより、演出データ等を決定する際に用いる乱数値を取得する。但し、主制御回路60と同様に乱数発生器およびサンプリング回路を副制御回路70内に設ける場合には、当該処理は不要である。
サブROM72は、図8に示すように、オペレーティングシステムを記憶するOS領域72aと、サブCPU71が実行するプログラムを記憶するサブ制御プログラム記憶領域72bと、ゲームデータ初期化設定データ領域72cと、係員操作初期設定データ領域72dと、各種テーブル等を記憶する各種プログラムテーブル領域72eと、プログラム管理データ領域72fと、画像データ(静止画/動画)領域72gと、サウンドデータ領域72hと、役物可動データ領域72iと、復号化情報領域72jとを有する。
サブ制御プログラム記憶領域72bは、デバイスドライバ、主制御回路60との通信を制御するための基板間通信処理、演出の内容を決定するための演出登録処理、登録されたLEDデータに基づいて各種操作パネル101〜103、表示パネルユニット110による光の出力を制御するためのLED制御タスク、登録されたサウンドデータに基づいてスピーカ21L、21Rによる音の出力を制御するための音声制御タスク、登録されたアニメーションデータに基づいて液晶表示装置5による映像の表示制御をするための描画制御タスク等を記憶する。
各種プログラムテーブル領域72eは、演出抽籤テーブル、図12に示す副制御回路のエラーコードテーブル等を記憶する。
プログラム管理データ領域72fは、マジックコード、プログラムバージョン等を記憶する。画像データ(静止画/動画)領域72gは、キャラクタオブジェクトデータといったアニメーションデータ等を記憶する。サウンドデータ領域72hは、BGMや効果音といった音データ等を記憶する。また、役物可動データ領域72iは、例えば、光の点灯パターン等を行うためのLED制御データを記憶する。復号化情報領域72jは、マイクロコンピュータ30のメインROM32に記憶された暗号化情報に対応する情報であり、機種IDと、予め定められた復号化方式を示す復号化方式コードのデータとを記憶する。
サブRAM73−1は、図9に示すように、ゲームデータ保存領域としてのゲームデータ領域73a−1と、ゲームデータサム値領域73b−1と、ワーク領域73c−1と、係員操作設定データ領域73g−1と、エラー情報履歴格納領域73d−1と、通信ログ収集用リングバッファ領域73e−1と、通信エラー保存バッファ領域73f−1とを備えている。係員操作設定データ領域73g−1に登録されている係員操作設定データは、メニュー画面での設定項目が保存されているデータである。
ゲームデータ領域73a−1は、遊技の進行に関するゲームデータを含む情報のうちでサブRAM73−1に記憶されるデータを記憶するようになっている。ゲームデータサム値領域73b−1は、ゲームデータ領域73a−1に記憶されたゲームデータのチェックサム用のサム値を記憶するようになっている。ワーク領域73c−1は、各種処理におけるデータを記憶するようになっている。
ゲームデータ領域73a−1およびワーク領域73c−1は、サブCPU71が各プログラムを実行する際に、作業用一時記憶手段として使用される。また、ゲームデータ領域73a−1は、例えば、主制御回路60から送信されたコマンド、演出データ情報、遊技状態情報、内部当籤役情報、表示役情報、各種カウンタ、4バイトから8バイトの任意のマジックコードおよび各種フラグ等の情報を記憶するようになっている。
エラー情報履歴格納領域73d−1は、後述する通信エラー検出手段71b、手順検出手段71c、データ破壊検出手段71d等により検出された全てのエラー情報を示すエラーコード(図12参照)を記憶するようになっている。エラー情報履歴格納領域73d−1では、エラーコードが逐次記憶されることにより、エラー情報履歴が作成されるようになっている。
エラー情報履歴格納領域73d−1では、通信エラー検出手段71bにより検出されたエラーはCOMエラーとして記憶され、手順検出手段71cにより検出されたエラーは手順異常エラーとして記憶される。また、データ破壊検出手段71dにより検出されたエラーはデータ破壊エラーとして記憶されるようになっている。
バックアップRAM73−2は、図10に示すように、バックアップデータ1領域73a−2と、バックアップデータ1サム値領域73b−2と、バックアップデータ1領域73a−2のミラーリングであるバックアップデータ2領域73c−2と、バックアップデータ2サム値領域73d−2と、係員バックアップデータ領域73e−2と、エラー情報履歴格納領域73f−2と、係員バックアップデータサム値領域73g−2とを備えている。
なお、本実施の形態では、バックアップデータ1領域73a−2とバックアップデータ2領域73c−2とは、単体のバックアップRAM73−2に構成されている。本明細書では、「ミラーリング」をデータを複製することの意味に用いており、データを別のストレージに複製するという意味に限定するものではない。
また、バックアップデータ1領域73a−2およびバックアップデータ2領域73c−2は、それぞれ、4バイトから8バイトの任意のマジックコードを備える。
図11に示すように、サブRAM73−1のエラー情報履歴格納領域73d−1は、エラーコード(図中、ERROR CODE)と、エラー発生時刻(図中、「発生」)と、エラー解除時刻(図中、「解除」)とを1組として、128組格納可能になっている。
エラーコードは、1バイトデータであり、副制御回路に関するエラーコードの内容は、図12に示すように、通信エラー(図中、「COMエラー」)や、手順異常エラー(図中、「手順異常」)や、データ破壊エラー(図中、「サム異常」)や、その他のエラーを含んでいる。
エラー情報履歴格納領域73d−1では、エラー発生時刻およびエラー解除時刻は、いずれも2バイトデータの年、1バイトデータの月、1バイトデータの日、1バイトデータの時、1バイトデータの分、1バイトデータの秒から構成されている。
図13に示すように、通信ログ収集用リングバッファ領域73e−1には、256のコマンドおよびパラメータのデータ組と、対応する1つのバッファインデックスとからなるデータ群が適宜数記憶され、それらがリングバッファとして機能するようになっている。
図14に示すように、通信エラー保存バッファ領域73f−1には、256のコマンドおよびパラメータのデータ組と、対応する1つのバッファインデックスとからなるデータ群が1024個記憶されている。また、通信エラー保存バッファ領域73f−1には、1024のバッファインデックスのうちのどのバッファインデックスが選択されているかを示すバッファ選択インデックスが1つ設けられている。
また、図13に示す通信ログ収集用リングバッファ領域73e−1および図14に示す通信エラー保存バッファ領域73f−1では、コマンドは1文字データからなるとともに、パラメータは2文字データからなるものとしている。
また、サブCPU71は、図7に示すように、コマンド復号化手段71aと、通信エラー検出手段71bと、手順検出手段71cと、データ破壊検出手段71dと、エラー情報登録手段71eと、受信データログ保存手段71fと、エラー情報履歴表示手段71gと、二次元コード変換手段71hとを備えている。
コマンド復号化手段71aは、サブROM72の復号化情報領域72jに記憶された機種IDおよび暗号化方式コードに基づいて、主制御回路60からの暗号化されたコマンドを復号化するようになっている。
通信エラー検出手段71bは、後述する図71に示すCOMエラーチェック処理を実行することにより、主制御回路60と副制御回路70との間に通信エラーが発生したことを検出するようになっている。
手順検出手段71cは、後述する図70に示す主基板受信コマンドチェック処理を実行することにより、通常の遊技の手順と異なる手順、すなわち、異常な手順で遊技が進行したことを検出するようになっている。
データ破壊検出手段71dは、後述する図64に示すサブ制御ゲームデータ保存領域のサムチェック処理を実行することにより、サブRAM73−1のゲームデータ領域73a−1(図9参照)のデータ破壊、特に、主制御回路60から受信したコマンド、演出データ情報、遊技状態情報、内部当籤役情報、表示役情報、各種カウンタおよび各種フラグ等の情報に関するデータ破壊を検出可能なようになっている。
エラー情報登録手段71eは、エラーの検出手段によりエラーの発生が検出された場合に、検出されたエラーのエラーコードをサブRAM73−1のエラー情報履歴格納領域73d−1に記憶するようになっている。このエラー情報登録手段71eは、本発明に係るエラー情報登録手段を構成する。
具体的には、エラー情報登録手段71eは、通信エラー検出手段71bにより通信エラーの発生が検出された場合は、エラー情報履歴格納領域73d−1にCOMエラーのエラーコード(COM ERR ALM)を記憶するようになっている。
エラー情報登録手段71eは、手順検出手段71cにより手順異常エラーの発生が検出された場合は、エラー情報履歴格納領域73d−1に手順異常のエラーコード(例えば、BLS123PE)を記憶するようになっている。
エラー情報登録手段71eは、データ破壊検出手段71dによりサム異常エラーの発生が検出された場合は、エラー情報履歴格納領域73d−1にサム異常のエラーコード(MEM ERR ALM)を記憶するようになっている。
また、エラー情報履歴格納領域73d−1では、エラーコードが逐次記憶されることにより、エラー情報履歴が作成されるようになっている。
受信データログ保存手段71fは、後述する図67に示す主基板通信受信データログ保存処理を実行することにより、受信ログ(以下、通信ログともいう)に関する情報を収集して、後述する図68に示す主基板通信受信データログ一時領域保存処理を実行することにより通信ログ収集用リングバッファ領域73e−1に通信ログを1つだけ一時的に保存する。
さらに、受信データログ保存手段71fは、後述する図69に示す主基板通信エラー履歴データ保存処理を実行することにより、通信エラー検出手段71bにより通信エラーの発生が検出された場合に、通信エラー保存バッファ領域73f−1に通信エラーに関する通信ログ(以下、通信エラーログという)を1024個まで保存するようになっている。
エラー情報履歴表示手段71gは、ドアキー2が所定の操作をされることにより、エラー情報履歴格納領域73d−1に記憶されたエラー情報履歴を液晶表示装置5に表示させるようになっている。このエラー情報履歴表示手段71gは、本発明に係るエラー情報表示手段を構成する。
二次元コード変換手段71hは、通信エラー検出手段71bにより通信エラーの発生が検出された場合に、通信エラー保存バッファ領域73f−1に記憶された通信エラーに関する通信エラーログおよび送信先であるデータ管理サーバ500のドメインを送信情報として二次元コード300に変換し、エラー情報履歴表示手段71gに送信するようになっている。
そして、エラー情報履歴表示手段71gは、図53に示すように、エラー情報履歴が表示された液晶表示領域23において「COMエラーアラーム」項目23bが選択された場合に、「COMエラーアラーム」項目23bの右側に、その通信エラーに対応する二次元コード300を表示させるようになっている。
ここで、図54に示すように、二次元コード変換手段71hにより作成される二次元コード300に含まれる送信情報は192バイトからなる。送信情報は、本実施の形態において説明した機種の遊技機1のみならず、他機種の遊技機で記録されたエラー情報も送信できるように汎用的な構成となっている。あるいは、送信情報に遊技者の遊技記録を含めてもよい。以下、送信情報に含まれる項目について説明する。
送信情報の0バイト目から28バイト目には、データ管理サーバ500のドメインと、データ管理サーバ500に対するリクエストを示すデータがセットされる。送信情報の29バイト目から39バイト目には、遊技機1を識別するための筐体固有コードがセットされる。
送信情報の40バイト目から61バイト目は、予備領域である。送信情報の62バイト目から67バイト目には、送信情報生成時の時刻がセットされる。送信情報の68バイト目から71バイト目には、遊技機1の種別を示す機種コードがセットされる。
送信情報の72バイト目から73バイト目には、種別番号がセットされる。ここでは、72バイト目および73バイト目の両方を3FHに設定する。
送信情報の74バイト目から75バイト目には、エラーの種類がセットされる。送信情報の76バイト目から188バイト目には、エラー情報がセットされる。送信情報の189バイト目から191バイト目には、チェックサムがセットされる。
送信情報の76バイト目から188バイト目に設定されるエラー情報は、1文字(6ビット)からなるコマンド種別を備えている。そして、コマンド種別がパラメータを付随するものである場合は、その1文字のコマンド種別の後に2文字(12ビット)からなるパラメータをも備えている。図55にコマンドの種別とパラメータとの例を示す。
本実施の形態では、サブCPU71には、ドアキースイッチ2Sが接続されている。ドアキースイッチ2Sは、ドアキー2が左方向に回転操作されたことを検出して、サブCPU71に出力する。
ここでは、ドアキー2が左方向に回転操作されることにより、遊技機1のエラーがリセットされるようになっている。
通信エラー検出手段71bにより通信エラーの発生が検出された場合は、エラー情報登録手段71eは、通信エラーのエラーコードをサブRAM73−1のエラー情報履歴格納領域73d−1に記憶する。そして、受信データログ保存手段71fは、通信ログ収集用リングバッファ領域73e−1に通信ログを保存するとともに、通信エラー保存バッファ領域73f−1に通信エラーログを保存する。
また、通信エラー検出手段71b以外の手順検出手段71cやデータ破壊検出手段71dやその他のエラー検出手段により通信エラー以外のエラーの発生が検出された場合は、エラー情報登録手段71eは、エラーのエラーコードをサブRAM73−1のエラー情報履歴格納領域73d−1に記憶する。そして、受信データログ保存手段71fは、通信ログ収集用リングバッファ領域73e−1に通信ログを保存するが、通信エラー保存バッファ領域73f−1に対しては保存を行わない。
そして、ドアキー2が所定の操作をされることにより、エラー情報履歴表示手段71gが、エラー情報履歴格納領域73d−1に記憶されたエラー情報履歴を液晶表示装置5に表示させる。この場合、エラー情報履歴表示手段71gは、図53に示すように、液晶表示領域23において「COMエラーアラーム」項目23bが選択された場合に、「COMエラーアラーム」項目23bの右側に、その通信エラーに対応する二次元コード300を表示させるようになっている。
本実施の形態では、図53に示すエラー情報履歴を液晶表示装置5に表示させるために、係員による通常操作と簡易操作との2種類の操作法を採用している。
通常操作では、係員がドアキー2を右回転させて前面扉1bのロック機構を解放し、設定キーをオン操作して設定キースイッチ20Sをオンにすることで、液晶表示領域23に図52に示すメニュー画面が表示される。そして、係員が操作キーを操作して、「エラー情報履歴」項目23aを選択することで、液晶表示領域23に図53に示すエラー情報履歴画面が表示されるようになっている。
一方、簡易操作では、係員がドアキー2を左回転させてエラーのリセットを行い、その状態を一定時間、例えば5秒間以上保持することで、液晶表示領域23に図53に示すエラー情報履歴画面が表示されるようになっている。
また、サブCPU71は、計時専用回路の内蔵RTC70aを内蔵する。サブCPU71には、その内蔵RTC70aのバックアップ用として外付けRTC70cが接続されている。外付けRTC70cおよびSRAM73−2にはバッテリー70bが接続されている。内蔵RTC70aおよび外付けRTC70cは後述する図72に示すRTC制御タスクにより処理される。
GPU74は、サブCPU71から受信する画像表示コマンド等に基づいて、液晶表示装置5に画像を表示させるための処理を行う。GPU74が行う処理に必要なデータは起動時にVRAM75に展開される。GPU74は、VRAM75に展開されている画像データを後方に位置する背景画像から前方に位置する画像まで順に重ね合わせて画像データを生成し、液晶表示装置5に供給する。
この結果、サブCPU71により決定された演出データに応じた画像が液晶表示装置5によって液晶表示領域23に表示される。
VRAM75は、書込画像データ領域と表示画像データ領域の2つのフレームバッファを有し、書込画像データ領域は、GPU74が表示画像を生成した画像データを格納し、また、表示画像データ領域は、液晶表示装置5に表示させる画像データを格納する。
GPU74は、これらのフレームバッファを交互に切り替える(すなわち、バンクを切り替える)ことにより、順次、画像データを液晶表示装置5に表示させる。
デジタルアンプ78は、サブCPU71が演出データに基づいて選択するデジタル形式の音データを、遊技機1に設けられた音量調整用ツマミ(図示しない)により調節された音量に基づいて増幅し、アナログ形式の音データに変換してスピーカ21L、21Rに送信する。この結果、サブCPU71により決定された演出データに応じた音が、スピーカ21L、21Rから出力される。
[暗号化処理、復号化処理]
次に、図15〜図18を参照して、主制御回路60のメインCPU31が行う暗号化処理と、副制御回路70のサブCPU71が行う復号化処理について説明する。本実施の形態では、データ入替パターンAおよびBと、演算パターンAおよびBの4つの暗号化処理、復号化処理について説明する。
(データ入替パターンA)
図15を参照して、データ入替パターンAについて説明する。図15(a)は、暗号化処理を行う前の、1パケットに含まれる8バイトのデータの構成を示している。図15(a)において、B0〜B7は8バイトの各データを2進数で表したときの0ビット〜7ビットのデータを示している。また、例えば、「1−B7」は、1バイト目のデータを2進数で表したときの7ビットのデータを表している。
メインCPU31は、図15(a)に示す構成において、1バイトずつ取り出して、ビット列の配列順序を維持した状態で、予め定められたデータ配列順序に基づいて、1バイト目のデータから8バイト目までのデータの配置を入れ替え、図15(b)に示すような8バイトのデータを生成することにより、暗号化処理を行うようになっている。
具体的には、メインCPU31は、1バイト目のデータを8バイト目に、2バイト目のデータを7バイト目に、・・・、8バイト目のデータを1バイト目にというように、各データのビット列の配列順序を維持したままデータを入れ替えて暗号化処理を行うようになっている。
サブCPU71は、図15(b)に示す構成において、1バイトずつ取り出して、ビット列の配列順序を維持した状態で、予め定められたデータ配列順序に基づいて、1バイト目のデータから8バイト目までのデータの配置を入れ替え、図15(a)に示すような8バイトのデータを生成することにより、復号化処理を行うようになっている。すなわち、復号化処理は、暗号化処理の逆の手順となる。
サブCPU71は、8バイト目のデータを1バイト目に、7バイト目のデータを2バイト目に、・・・、1バイト目のデータを8バイト目にというように、各データのビット列の配列順序を維持したままデータを入れ替えて復号化処理を行うようになっている。
さらに具体的には、図15(a)の右側に示すように、暗号化処理前のデータの1〜8バイトの構成が、01H、03H、05H、07H、09H、0BH、0DH、0FHである場合、メインCPU31が暗号化処理を行うと、図15(b)の右側に示すように、暗号化処理後のデータの1〜8バイトの構成が、0FH、0DH、0BH、09H、07H、05H、03H、01Hとなる。
なお、前述の説明では、1パケットに含まれるデータを8バイトとしたが、本発明はこれに限定されない。1パケットに含まれるデータをnバイトとすると、メインCPU31は、1バイト目のデータをnバイト目に、2バイト目のデータを(nー1)バイト目に、3バイト目のデータを(nー2)バイト目にというように、各データのビット位置は保持したままデータを入れ替えて暗号化処理を行う。この場合、サブCPU71は、nバイト目のデータを1バイト目に、(n−1)バイト目のデータを2バイト目に、(n−2)バイト目のデータを3バイト目にというように、各データのビット位置を保持したままデータを入れ替えて復号化処理を行う。
また、例えば、メインCPU31が、互いに隣接するデータを入れ替える構成であってもよい。具体的には、メインCPU31が、1バイト目と2バイト目とを入れ替え、・・・、(n−1)バイト目とnバイト目とを入れ替えて暗号化処理を行う構成であってもよい。
(データ入替パターンB)
図16を参照して、データ入替パターンBについて説明する。図16(a)は、前述の図15(a)と同様に、1パケットに含まれる8バイトのデータの構成を示している。
メインCPU31は、図16(a)に示す構成において、1バイトずつ取り出して、データ配列順序を維持した状態で、予め定められたビット列の配列順序に基づいて、0ビット目(B0)のデータから7ビット目(B7)までのビット列の配列順序を入れ替え、図16(b)に示すような8バイトのデータを生成することにより、暗号化処理を行うようになっている。
具体的には、メインCPU31は、0ビット目のデータを7ビット目のデータに、1ビット目のデータを6ビット目のデータに、・・・7ビット目のデータを0ビット目のデータにというように、データ配列順序を維持した状態で、ビット列の配列順序を入れ替えて暗号化処理を行うようになっている。
サブCPU71は、図16(b)に示す構成において、1バイトずつ取り出して、データ配列順序を維持した状態で、予め定められたビット列の配列順序に基づいて、0ビット目(B0)のデータから7ビット目(B7)までのビット列の配列順序を入れ替え、図16(a)に示すような8バイトのデータを生成することにより、復号化処理を行うようになっている。すなわち、復号化処理は、暗号化処理の逆の手順となる。
サブCPU71は、7ビット目のデータを0ビット目のデータに、6ビット目のデータを1ビット目のデータに、・・・0ビット目のデータを7ビット目のデータにというように、データ配列順序を維持したままビット列の配列順序を入れ替えて暗号化処理を行うようになっている。
さらに具体的には、図16(a)の右側に示すように、暗号化処理前のデータの1〜8バイトの構成が、01H、03H、05H、07H、09H、0BH、0DH、0FHである場合、メインCPU31が暗号化処理を行うと、図16(b)の右側に示すように、暗号化処理後のデータの1〜8バイトの構成が、80H、C0H、A0H、E0H、90H、50H、B0H、F0Hとなる。
なお、前述の説明では、1パケットに含まれるデータを8バイトとしたが、本発明はこれに限定されない。また、例えば、メインCPU31が、互いに隣接するビット位置のデータを入れ替える構成であってもよい。具体的には、メインCPU31が、0ビット目と1ビット目とを入れ替え、2ビット目と3ビット目とを入れ替え、というように暗号化処理を行う構成であってもよい。
また、前述のデータ入替パターンAと、データ入替パターンBとを組み合わせて、暗号化処理、復号化処理を行う構成としてもよい。
(演算パターンA)
図17を参照して、演算パターンAについて説明する。図17(a)は、暗号化処理を行う前の、1パケットに含まれる8バイトのデータの構成を示している。図17(a)に示すように、1バイト目のデータは01H、2バイト目のデータは03H、・・・、8バイト目のデータは0FHである。また、機種IDを示すデータは5AHとしている。
メインCPU31は、図17(a)に示す構成において、1バイト目から8バイト目までの各データに対して、機種IDを示すデータである5AHとの排他的論理和(以下、「XOR論理演算」という)を行って、図17(b)に示すような8バイトのデータを生成することにより、データ配列順序を維持した状態で、暗号化処理を行うようになっている。
具体的には、例えば、メインCPU31は、1バイト目の01Hと5AHとのXOR論理演算から5BHを得る。また、例えば、メインCPU31は、8バイト目の0FHと5AHとのXOR論理演算から55Hを得る。メインCPU31は、このXOR論理演算の結果、図17(b)に示すように、1バイト目のデータは5BH、2バイト目のデータは59H、・・・、8バイト目のデータは55Hという暗号化処理がなされたデータを生成する。
サブCPU71は、図17(b)に示す構成において、1バイト目から8バイト目までの各データに対して、機種IDを示すデータである5AHとのXOR論理演算を行って、図17(a)に示すような8バイトのデータを生成することにより、データ配列順序を維持した状態で、復号化処理を行うようになっている。
具体的には、例えば、サブCPU71は、1バイト目の5BHと5AHとのXOR論理演算から01Hを得る。また、例えば、サブCPU71は、8バイト目の55Hと5AHとのXOR論理演算から0FHを得る。サブCPU71は、このXOR論理演算の結果、図17(a)に示すように、1バイト目のデータは01H、2バイト目のデータは03H、・・・、8バイト目のデータは0FHという復号化処理がなされたデータを生成する。
なお、前述の説明では、1パケットに含まれるデータを8バイトとしたが、本発明はこれに限定されない。また、機種IDのデータとのXOR論理演算により暗号化処理、復号化処理を行う説明をしたが、本発明はこれに限定されず、機種ID以外の所定データとのXOR論理演算により暗号化処理、復号化処理を行うものでもよい。
(演算パターンB)
図18を参照して、演算パターンBについて説明する。図18(a)は、暗号化処理を行う前の、1パケットに含まれる8バイトのデータの構成を示しており、前述の図17(a)と同じである。
メインCPU31は、図18(a)に示す構成において、1バイト目から8バイト目までの各データに対して、機種IDを示すデータである5AHとの加算演算を行って、図18(b)に示すような8バイトのデータを生成することにより、データ配列順序を維持した状態で、暗号化処理を行うようになっている。
具体的には、例えば、メインCPU31は、1バイト目の01Hに5AHを加算して5BHを得る。また、例えば、メインCPU31は、8バイト目の0FHに5AHを加算して69Hを得る。メインCPU31は、この加算演算の結果、図18(b)に示すように、1バイト目のデータは5BH、2バイト目のデータは5DH、・・・、8バイト目のデータは69Hという暗号化処理がなされたデータを生成する。
サブCPU71は、図18(b)に示す構成において、1バイト目から8バイト目までの各データに対して、機種IDを示すデータである5AHとの減算演算を行って、図18(a)に示すような8バイトのデータを生成することにより、データ配列順序を維持した状態で、復号化処理を行うようになっている。
具体的には、例えば、サブCPU71は、1バイト目の5BHから5AHを減算して01Hを得る。また、例えば、サブCPU71は、8バイト目の69Hから5AHを減算して0FHを得る。サブCPU71は、この減算演算の結果、図18(a)に示すように、1バイト目のデータは01H、2バイト目のデータは03H、・・・、8バイト目のデータは0FHという復号化処理がなされたデータを生成する。
なお、前述の説明では、1パケットに含まれるデータを8バイトとしたが、本発明はこれに限定されない。また、機種IDのデータとの加算演算により暗号化処理を行い、機種IDのデータとの減算演算により復号化処理を行う説明をしたが、本発明はこれに限定されず、機種ID以外の所定データとの加算演算、減算演算により暗号化処理、復号化処理を行う構成としてもよい。
[遊技状態]
次に、図19を参照して、遊技状態の遷移について説明する。主制御回路60において管理する主な遊技状態には一般遊技状態、RT1遊技状態、RT2遊技状態、RT3遊技状態、RT4遊技状態、BB遊技状態(BB1遊技状態〜BB4遊技状態の総称)がある。また、図示しないが、1ゲームのみ他の遊技状態と併存するSB遊技状態や、BB1遊技状態〜BB3遊技状態において作動するRB1遊技状態、BB4遊技状態において作動するRB2遊技状態がある。
まず、一般遊技状態においてSBこぼし目(SBこぼし目1〜SBこぼし目12)が有効ライン上に表示されることにより、RT1遊技状態に遷移する。次いで、RT1遊技状態において上げ1段階リプ1が有効ライン上に表示されることにより、RT2遊技状態に遷移する。次いで、RT2遊技状態において上げ2段階リプ(上げ2段階リプ1、上げ2段階リプ2)、上げ2目(上げ2目1〜上げ2目3)が有効ライン上に表示されることにより、RT3遊技状態に遷移する。
また、RT2遊技状態またはRT3遊技状態において、SBこぼし目(SBこぼし目1〜SBこぼし目12)が有効ライン上に表示されることにより、RT1遊技状態に遷移する。RT1遊技状態〜RT3遊技状態において、押し順ベル失敗(押し順ベル失敗1〜押し順ベル失敗4)が有効ライン上に表示されることにより、一般遊技状態に遷移する。
一般遊技状態、RT1遊技状態〜RT3遊技状態において、BB(BB1〜BB4)が内部当籤役として決定されることにより、RT4遊技状態に遷移する。RT4遊技状態において、BB(BB1〜BB4)が表示されることにより、BB遊技状態に遷移する。BB遊技状態において所定枚数(270枚または60枚)のメダルが払い出されると、一般遊技状態に遷移する。
次に、図20を参照して、主制御回路60のメインROM32に記憶されている内部抽籤テーブル決定テーブルについて説明する。なお、図20は、本実施の形態における遊技機1の内部抽籤テーブル決定テーブルの例を示す図である。
内部抽籤テーブル決定テーブルには、遊技状態(後述する各遊技状態フラグのオン、オフ)に対応して、後述する内部抽籤処理において内部当籤役を決定するために使用する内部抽籤テーブルと、抽籤回数が規定されている。これにより、例えば、SB遊技状態フラグおよびRT1遊技状態フラグのみが「1(オン)」である場合には、内部抽籤テーブルとして「SB中RT1遊技状態用内部抽籤テーブル」が選択され、抽籤回数として「49」が選択される。
次に、図21〜図23を参照して、主制御回路60のメインROM32に記憶されている内部抽籤テーブルについて説明する。図21は、本実施の形態における遊技機1の一般遊技状態用内部抽籤テーブル、RT1遊技状態用内部抽籤テーブル〜RT4遊技状態用内部抽籤テーブルの例を1つに纏めた図である。
図22は、本実施の形態における遊技機1のRB1遊技状態用内部抽籤テーブルの例を示す図である。
図23は、本実施の形態における遊技機1のRB2遊技状態用内部抽籤テーブルの例を示す図である。なお、SB中一般遊技状態用内部抽籤テーブル、SB中RT1遊技状態用内部抽籤テーブル〜SB中RT4遊技状態用内部抽籤テーブルは、図21における当籤番号「1」に対応する抽籤値がそれぞれ「1000」ではなく「1001」であるという違いだけなので、図示を省略する。
内部抽籤テーブルは、後述する内部抽籤処理において、内部抽籤を行う際、すなわち内部当籤役を決定する際に使用するテーブルである。内部抽籤テーブルには当籤番号毎に抽籤値とデータポインタとが規定されている。抽籤値は、データポインタを決定するために用いられる数値である。データポインタには、小役・リプレイ用データポインタとボーナス用データポインタの2種類あり、1または複数の内部当籤役と対応している。
図21〜図23に示す内部抽籤テーブルにおける当籤番号の右欄には、データポインタに対応する内部当籤役の略称を示している。また、図22および図23に示すそれぞれの内部抽籤テーブルの右側には、データポインタに対応する、各リールの上段を結ぶライン、中段を結ぶライン、または下段を結ぶラインに停止表示されうる図柄の停止形を示している。
例えば、RB1遊技状態において、小役・リプレイ用データポインタとして「25」が決定されたときに、左リール3Lの下段、および中リール3Cの下段にドン図柄を停止表示可能なタイミングで停止操作が行われた場合には、左リール3Lの下段、および中リール3Cの下段にドン図柄が停止表示されるが、右リール3Rの下段にドン図柄が停止表示可能なタイミングで停止操作が行われた場合であっても、右リール3Rの下段にドン図柄は停止表示されない。
一方、小役・リプレイ用データポインタとして「28」が決定された場合には、左リール3Lの下段、中リール3Cの下段、右リール3Rの下段にドン図柄を停止表示可能なタイミングで停止操作が行われることで、各リールの下段を結ぶラインにドン図柄が停止表示される。
なお、図22中の入賞ライン上に揃う図柄の停止形において、「テンパイはずれ」とは、対応するライン上にドン図柄を停止表示可能なタイミングで停止操作が行われた場合であっても、「ドン図柄−ドン図柄−ドン図柄」が各リールの上段を結ぶライン、中段を結ぶライン、下段を結ぶラインに停止表示されることがない停止形を意味する。
一方、「テンパイあたり」とは、対応するライン上に、ドン図柄を停止表示可能なタイミングで停止操作が行われることで、「ドン図柄−ドン図柄−ドン図柄」が各リールの上段を結ぶライン、中段を結ぶライン、または下段を結ぶラインに停止表示される停止形を意味する。
次に、抽籤値を用いてデータポインタを決定する方法、すなわち内部抽籤の方法について説明する。内部抽籤は、まず、予め定められた数値の範囲「0〜65535」の中から乱数値を抽出し、抽出した乱数値から各当籤番号に対応する抽籤値を順次減算するとともに桁かりが行われたか否かを判定することにより行われる。桁かりは、減じられる対象の数値の方が小さい場合に行われ、換言すれば減算の結果が負となるときに行われる。
例えば、一般遊技状態用内部抽籤テーブルが内部抽籤テーブルに決定された場合において、抽出した乱数値が「1500」である場合、初めに、メインCPU31は、「1500」から当籤番号「1」に対応する抽籤値「1000」を減算する。減算結果は「1500−1000=500」であり、正である。
次いで、メインCPU31は、この減算後の値「500」から当籤番号「2」に対応する抽籤値「2100」を減算する。減算結果は「500−2100=−1600」であり、負である。したがって、メインCPU31は、内部当籤役として当籤番号「2」、すなわち、小役・リプレイ用データポインタとして「13」、ボーナス用データポインタとして「0」を決定する。
この内部抽籤の方法によると、抽籤値として規定されている数値が大きいほど、対応する当籤番号のデータポインタが決定される可能性が高くなる。なお、各当籤番号の当籤確率は、「各当籤番号に対応する抽籤値/抽出される可能性のある全ての乱数値の個数(「65536」)」となる。
なお、後述する抽籤値を用いて行う各種抽籤は、当該データポインタを決定する場合と同様である。すなわち、各種抽籤用のテーブルには、抽籤により選択する可能性のある項目(例えば、当籤番号)に対応させて抽籤値が規定されている。以下、抽籤値による各種抽籤の方法は、内部抽籤の方法と同様であるので説明を省略する。
次に、図24を参照して、RT遷移テーブルについて説明する。RT遷移テーブルは、後述するRT制御処理において、遊技状態フラグを更新する際に使用するテーブルである。図24に示すようにRT遷移テーブルには、表示役と、これに対応して遊技状態フラグに対する制御内容が規定されている。
具体的には、押し順ベル失敗1〜押し順ベル失敗4の何れかに係る図柄の組合せが有効ライン上に停止表示された場合に、全ての遊技状態フラグをオフにする。すなわち一般遊技状態を作動させる。また、SBこぼし目1〜SBこぼし目12の何れかに係る図柄の組合せが有効ライン上に停止表示された場合に、RT1遊技状態フラグをオンとする。また、上げ1段階リプ1に係る図柄の組合せが有効ライン上に停止表示された場合に、RT2遊技状態フラグをオンとする。また、上げ2段階リプ1、上げ2段階リプ2、上げ2目1〜上げ2目3の何れかに係る図柄の組合せが有効ライン上に停止表示された場合に、RT3遊技状態フラグをオンとする。
なお、押し順ベル失敗1〜押し順ベル失敗4、SBこぼし目1〜SBこぼし目12、上げ1段階リプ1、上げ2段階リプ1、上げ2段階リプ2、上げ2目1〜上げ2目3は、所定の役が内部当籤役として決定された場合であって、予め定められた停止操作順序に従って停止操作が行われた場合、予め定められた停止操作順序とは異なる停止操作順序で停止操作が行われた場合、または適切なタイミングで停止操作が行われなかった場合に、有効ライン上に停止表示される可能性がある表示役であり、詳細は後述する。
次に、図25、図26を参照して、主制御回路60のメインROM32に記憶されているボーナス用内部当籤役決定テーブルおよび小役・リプレイ用内部当籤役決定テーブルについて説明する。なお、図25は、本実施の形態における遊技機1のボーナス用内部当籤役決定テーブルの例を示す図である。また、図26は、本実施の形態における遊技機1の小役・リプレイ用内部当籤役決定テーブルの例を示す図である。以下、ボーナス用内部当籤役決定テーブルおよび小役・リプレイ用内部当籤役決定テーブルを総称して、内部当籤役決定テーブルという。
内部当籤役決定テーブルは、後述する内部抽籤処理において、データポインタに基づいて内部当籤役を決定する際に使用するテーブルである。内部当籤役決定テーブルには、データポインタに対応する内部当籤役として決定される各役が規定されている。各役は、後述する内部当籤役格納領域の格納される各ビットと対応している。したがって、何れの役が内部当籤役であるかは、内部当籤役格納領域における何れのビットが「1」であるか否かによって識別することができる。
図25に示すボーナス用内部当籤役決定テーブルには、ボーナス用データポインタ「1」〜「5」に対応する内部当籤役が規定されている。なお、ボーナス用データポインタとして「5」が決定された場合には、所定の停止順序で停止操作を行ったか否かにより、有効ライン上にSBに係る図柄の組合せが停止表示されるか、または、有効ライン上に、SBこぼし目1〜SBこぼし目12のいずれかに係る図柄の組合せが停止表示される。
図26に示す小役・リプレイ用内部当籤役決定テーブルには、小役・リプレイ用データポインタ「1」〜「31」に対応する内部当籤役が規定されている。例えば、小役・リプレイ用データポインタとして「1」が決定された場合には、通常リプ1と上げ1段階リプ1が内部当籤役となる。
なお、小役・リプレイ用データポインタとして「2」が決定された場合には、左リール3Lに対して第1停止操作、中リール3Cに対して第2停止操作、右リール3Rに対して第3停止操作を行った場合に限り、上げ1段階リプ1に係る図柄の組合せが有効ライン上に停止表示される。一方、これ以外の停止操作順序で停止操作を行った場合には、通常リプ1に係る図柄の組合せが有効ライン上に停止表示される。
小役・リプレイ用データポインタ「3」〜「6」についても、上げ1段階リプ1に係る図柄の組合せが有効ライン上に停止表示される停止操作順序が予め定められており、この停止操作順序以外の停止操作順序で停止操作が行われた場合には、通常リプ1に係る図柄の組合せが有効ライン上に停止表示される。
また、小役・リプレイ用データポインタとして「7」が決定された場合には、左リール3Lに対して第1停止操作を行った場合に限り、上げ2段階リプ1、上げ2段階リプ2、上げ2目1、上げ2目2、上げ2目3のいずれかに係る図柄の組合せが有効ライン上に停止表示される。
なお、上げ2目1、上げ2目2、上げ2目3が有効ライン上に停止表示された場合には、同時に通常リプ1または上げ1段階リプ1が有効ライン上に停止表示される。一方、これ以外の停止操作順序で停止操作を行った場合には、通常リプ1に係る図柄の組合せが有効ライン上に停止表示される。
小役・リプレイ用データポインタ「8」〜「11」についても、上げ2段階リプ1、上げ2段階リプ2、上げ2目1、上げ2目2、上げ2目3に係る図柄の組合せが有効ライン上に停止表示される停止操作順序が予め定められており、この停止操作順序以外の停止操作順序で停止操作が行われた場合には、通常リプ1に係る図柄の組合せが有効ライン上に停止表示される。
また、小役・リプレイ用データポインタとして「12」が決定された場合には、停止操作順序にかかわらず、中リール3Cの中段にベルに係る図柄が停止表示される。
小役・リプレイ用データポインタとして「13」が決定された場合には、左リール3Lに対して第1停止操作、中リール3Cに対して第2停止操作、右リール3Rに対して第3停止操作を行った場合に限り、中リール3Cの中段にベルに係る図柄が停止表示される。
一方、これ以外の停止操作順序で停止操作を行った場合には、押し順ベル失敗1〜押し順ベル失敗4のいずれかに係る図柄の組合せが有効ライン上に停止表示される。なお、中リール3Cの中段にベルに係る図柄が停止表示されるときには、センターライン8c、クロスアップライン8a、クロスダウンライン8eのいずれかに「ベル1図柄(ベル2図柄)−ベル1図柄−ベル1図柄」が停止表示される。
また、押し順ベル失敗1〜押し順ベル失敗4のいずれかに係る図柄の組合せが有効ライン上に停止表示されるときには、左リール3Lの下段、中リール3Cの下段、右リール3Rの下段に、「ベル1図柄(ベル2図柄)−ベル1図柄−ベル1図柄」が停止表示される。
小役・リプレイ用データポインタ「14」〜「17」についても、中リール3Cの中段にベルに係る図柄が停止表示される停止操作順序が予め定められており、この停止操作順序以外の停止操作順序で停止操作を行った場合には、押し順ベル失敗1〜押し順ベル失敗4のいずれかに係る図柄の組合せが有効ライン上に停止表示される。
なお、内部抽籤テーブルにおいて、略称がリールに対する停止操作順序(押し順)を示唆する小役・リプレイ用ポインタが決定された場合には、その示唆する押し順がいわゆる正解の押し順であり、当該押し順通りに停止操作が行うことにより、遊技者が有利となるように各リール3が停止することとなる。
例えば、小役・リプレイ用ポインタ「2」(略称「左中右ベル」)が決定された場合には、左リール3Lに対して第1停止操作、中リール3Cに対して第2停止操作、右リール3Rに対して第3停止操作を行った場合に限り、中リール3Cの中段にベルに係る図柄が停止表示され(払出枚数:4枚×3ライン=12枚)、それ以外の押し順であった場合には中リール3Cの下段にベルに係る図柄が停止表示される(払出枚数:4枚×1ライン=4枚)。なお、略称がリールに対する停止操作順序(押し順)を示唆する小役・リプレイ用ポインタは「2」〜「11」、「13」〜「17」である。
次に、図27を参照して、主制御回路60のメインROM32に記憶されている図柄組合せテーブルについて説明する。なお、図27は、本実施の形態における遊技機1の図柄組合せテーブルの例を示す図である。
図柄組合せテーブルには、有効ライン上に表示される特典付与に係る図柄の組合せ、または、遊技状態の移行に係る図柄の組合せと、当該図柄の組合せに対応する表示役を示すデータと格納領域種別、および払出枚数が規定されている。表示役を示すデータは、後述の夫々1バイトからなる表示役格納領域1〜表示役格納領域7(表示役格納領域1〜表示役格納領域7を総称して表示役格納領域という)の何れかに格納されるデータである。また、当該データが何れの表示役格納領域に格納されるかは、格納領域種別により規定される。
図柄組合せテーブルには、表示役として、BB1〜BB4、SB、通常リプ1、上げ1段階リプ1、上げ2段階リプ1、上げ2段階リプ2、制御リプ1〜制御リプ3、ベル、氷1、チェリー1〜チェリー12、制御役1〜制御役3、BB中用役1〜BB中用役5、上げ2目1〜上げ2目3、押し順ベル失敗1〜押し順ベル失敗4、SBこぼし目1〜SBこぼし目12が規定されている。
例えば、通常リプ1は、「リプレイ図柄−リプレイ図柄−リプレイ図柄」が有効ライン上に表示されることにより成立する。各種リプレイ(通常リプ1、上げ1段階リプ1、上げ2段階リプ1、上げ2段階リプ2、制御リプ1〜制御リプ3)の何れかが成立することで、次回の遊技において再遊技が行われる。即ち、各種リプレイの何れかが成立した遊技における投入枚数と同数のメダルが、次回の遊技において、遊技者による投入操作に基づかずに、自動的に投入される。
これにより、遊技者はメダルを消費することなく次回の遊技を行うことができる。ここで、前述のメダルの払い出しや再遊技は、遊技価値を付与することの一例である。ベルは、「ANY図柄−ベル1図柄−ANY図柄」が有効ライン上に表示されることにより成立する。なお、「ANY」は、如何なる図柄でも良いことを表す。
次に、図28を参照して、主制御回路60のメインROM32に記憶されているボーナス作動時テーブルについて説明する。なお、図28は、本実施の形態における遊技機1のボーナス作動時テーブルの例を示す図である。
ボーナス作動時テーブルは、BB遊技状態、およびRB遊技状態を終了させる条件を設定する際に使用するテーブルである。ボーナス作動時テーブルには、BB1遊技状態〜BB4遊技状態、RB1遊技状態、RB2遊技状態に係る終了条件が規定されている。具体的には、ボーナス作動時テーブルには、BB1遊技状態〜BB3遊技状態の終了条件として、ボーナス終了枚数カウンタの値について「270」が規定されている。
また、BB4遊技状態の終了条件として、ボーナス終了枚数カウンタの値について「60」が規定されている。なお、BB1遊技状態〜BB3遊技状態においてはRB1遊技状態が作動し、BB4遊技状態ではRB2遊技状態が作動する。また、ボーナス作動時テーブルには、RB1遊技状態、RB2遊技状態の終了条件として、遊技可能回数と入賞可能回数の値について夫々「12」と「8」が規定されている。
次に、図29、図30を参照して主制御回路60のメインROM32に記憶されている引込優先順位テーブルについて説明する。なお、図29は、本実施の形態における遊技機1の引込優先順位テーブルAの例を示す図であり、図30は、本実施の形態における遊技機1の引込優先順位テーブルBの例を示す図である。以下、引込優先順位テーブルA、引込優先順位テーブルBを総称して、引込優先順位テーブルという。
引込優先順位テーブルは、内部当籤役として複数の役が決定された場合において、その複数の役を有効ライン上に引き込むことができるときに、何れの役に係る図柄を優先して有効ライン上に停止させるかを規定している。上述したように、基本的には、優先順位は高い方からリプレイ、小役(払出枚数が多いほど優先順位は高い。JAC1(BB中7揃い)の場合にはこれを優先)、ボーナスの順となっている。
但し、本実施の形態においてはリプレイが複数種類あり、条件によって各リプレイの優先順位が異なるため、その条件毎に引込優先順位テーブルAと引込優先順位テーブルBが設けられている。
引込優先順位テーブルAは、通常時(BB中を含む)やいわゆる押し順正解時に用いられるテーブルであり、各リプレイの優先順位は上げ2段階リプ1、上げ2段階リプ2>上げ1段階リプ1>通常リプ1>制御リプ1−制御リプ3の順となっている。
一方、引込優先順位テーブルBは、いわゆる押し順不正解時に用いられるテーブルであり、各リプレイの優先順位は通常リプ1>上げ2段階リプ1、上げ2段階リプ2、上げ1段階リプ1>制御リプ1−制御リプ3の順となっている。
なお、図示しないが、RT遊技状態の遷移に係る2以上の役が同時に表示役となった場合には、何れを優先させるかが予め定められている。本実施の形態においては、より優先される役から順に、上げ2段階リプ1、上げ2段階リプ2、上げ2目1−上げ2目3>上げ1段階リプ1>SBこぼし目1−SBこぼし目12>押し順ベル失敗1−押し順ベル失敗4、となっている。
次に、図31を参照して、主制御回路60のメインROM32に記憶されている停止テーブルについて説明する。なお、図31は小役・リプレイ用データポインタ「15」当籤時、中リール第1停止時用の停止テーブルの例を示す図である。停止テーブルには、ラインデータおよび図柄位置「0」〜「20」に対応する停止データが規定されている。図柄位置とは、停止操作が検出された際に、図柄表示領域の中段に位置する図柄位置であって、リールの回転の停止が開始される図柄位置のことである。
また、図示しないが、主制御回路60のメインROM32には、小役・リプレイ用データポインタ、遊技者の停止操作順序に応じた複数の停止テーブルが記憶されている。例えば、ボーナス用データポインタとして「5」が決定された場合には、右リール3Rに対して第1停止操作、左リール3Lに対して第2停止操作、中リール3Cに対して第3停止操作を行った場合に限り、SBこぼし目1〜SBこぼし目12の何れもが有効ライン上に停止表示されることのない滑りコマ数が規定された停止テーブルが選択される。
一方、この停止操作順序以外の停止操作順序で停止操作が行われた場合には、SBに係る図柄の組合せが停止表示されないタイミングで各リールに対する停止操作が行われた場合に、SBこぼし目1〜SBこぼし目12の何れかに係る図柄の組合せが有効ライン上に停止表示されるように滑りコマ数が規定された停止テーブルが選択される。
次に、図32〜図34を参照して、主制御回路60のメインRAM33に割り当てられる内部当籤役格納領域、表示役格納領域および持越役格納領域について説明する。なお、図32は、本実施の形態における遊技機1の内部当籤役格納領域の例を示す図である。また、図33は、本実施の形態における遊技機1の表示役格納領域の例を示す図である。また、図34は、本実施の形態における遊技機1の持越役格納領域の例を示す図である。
図32に示すように、内部当籤役格納領域は、内部当籤役格納領域1〜内部当籤役格納領域5から構成されている。内部当籤役格納領域1〜内部当籤役格納領域5は、それぞれメインRAM33上に割り当てられる8ビットのデータ領域であり、内部当籤役情報を記憶する。各内部当籤役格納領域は、ビット「0」〜「7」の領域に「0」または「1」のデータを格納することにより、何れの役が内部当籤役であるかを示す。
図33に示すように、表示役格納領域は、表示役格納領域1〜表示役格納領域7から構成されている。表示役格納領域1〜表示役格納領域7は、それぞれメインRAM33上に割り当てられる8ビットのデータ領域であり、表示役情報を記憶する。各表示役格納領域は、ビット「0」〜「7」の領域に「0」または「1」のデータを格納することにより、何れの役が表示役であるかを示す。
図34に示すように、持越役格納領域は、メインRAM33上に割り当てられる8ビットのデータ領域であり、持越役情報を記憶する。持越役格納領域はビット「0」〜「3」の領域に「0」または「1」のデータを格納することにより、何れの役が持越役であるかを示す。
次に、図35を参照して、主制御回路60のメインRAM33に割り当てられる遊技状態フラグ格納領域について説明する。なお、図35は、本実施の形態における遊技機1の遊技状態フラグ格納領域の例を示す図である。
図35に示すように、遊技状態フラグ格納領域は、遊技状態フラグ格納領域1、遊技状態フラグ格納領域2とから構成されている。遊技状態フラグ格納領域は、それぞれメインRAM33上に割り当てられる8ビットのデータ領域であり、各遊技状態フラグがオンであるかまたはオフであるかを示す。また、遊技状態フラグ格納領域の各領域のデータが全て「0」である場合には一般遊技状態であることを示す。
次に、図36、図37を参照して、主制御回路60のメインRAM33における図柄格納領域について説明する。なお、図36は、本実施の形態における遊技機1の図柄格納領域A(非RB中)の格納例(各リールの図柄位置データが「0」であった場合)を示す図である。図37は、本実施の形態における遊技機1の図柄格納領域B(RB中)の格納例(各リールの図柄位置データが左リールから「9」、「8」、「9」であった場合)を示す図である。
図柄格納領域は、各有効ラインを構成する図柄表示領域4L、4C、4Rに、対応する図柄コードを格納する領域であり、有効ライン毎に設けられている。例えば、遊技状態がRB遊技状態以外の遊技状態である場合にセンターライン8cを構成する左図柄表示領域4Lの中段、中図柄表示領域4Cの中段、右図柄表示領域4Rの中段のそれぞれに対応する図柄コードを格納する。
こうした図柄格納領域が他の有効ライン(クロスダウンライン8e、ボトムライン8d、クロスアップライン8a)についても設けられている。なお、遊技状態がRB遊技状態である場合には有効ラインは1ライン(RB中特殊ライン8f)のみとなり、RB中特殊ライン8fに対応する図柄格納領域には、RB中特殊ライン8fを構成する左図柄表示領域4Lの中段、中図柄表示領域4Cの下段、右図柄表示領域4Rの上段のそれぞれに対応する図柄コードを格納する。
図36に示す図柄格納領域は、各リールの図柄位置データが「0」である時に図柄コードが格納された場合の図柄格納領域を示している。図柄位置データが「0」である場合とは、各リール3L、3C、3Rの図柄位置「0」の図柄(左リール3Lでは赤7図柄、中リール3Cでは赤7図柄、右リール3Rでは赤7図柄)がそれぞれ左図柄表示領域4Lの中段、中図柄表示領域4Cの中段、右図柄表示領域4Rの中段に表示される場合に対応する。
したがって、この場合、左図柄表示領域4Lの上段に対応する図柄格納領域には図柄位置「1」の図柄(波図柄)、左図柄表示領域4Lの下段に対応する図柄格納領域には図柄位置「20」の図柄(リプレイ図柄)を示す図柄コードが格納されることとなる。また、中図柄表示領域4Cの上段に対応する図柄格納領域には図柄位置「1」の図柄(リプレイ図柄)、中図柄表示領域4Cの下段に対応する図柄格納領域には図柄位置「20」の図柄(チェリー1図柄)を示す図柄コードが格納されることとなる。
さらに、右図柄表示領域4Rの上段に対応する図柄格納領域には図柄位置「1」の図柄(チェリー1図柄)、右図柄表示領域4Rの下段に対応する図柄格納領域には図柄位置「20」の図柄(ベル1図柄)を示す図柄コードが格納されることとなる。
[主制御回路の制御動作]
次に、図38〜図50に示すフローチャートを参照して、主制御回路60のメインCPU31の制御動作について説明する。
まず、図38を参照して、主制御回路60のメインCPU31によるリセット割込処理について説明する。なお、図38は、本実施の形態の主制御回路60で行われるメインCPU31によるリセット割込処理のフローチャートを示す図である。また、メインCPU31は、電源が投入され、リセット端子に電圧が印加されることにより、リセット割込を発生させ、その割込の発生に基づいて、メインROM32に記憶されたリセット割込処理を順次行うように構成されている。
初めに、メインCPU31は、指定格納領域のクリアを行う(ステップS1)。具体的には、メインCPU31は、前回ゲーム終了時におけるメインRAM33の指定格納領域をクリアする。より具体的には、メインCPU31は、前回のゲームに使用されたメインRAM33における書き込み可能領域のデータ消去、メインRAM33における書き込み可能領域への今回のゲームに必要なパラメータの書き込み、今回のゲームでのシーケンスプログラムへの開始アドレスの指定等を行う。
次に、メインCPU31は、ボーナス作動監視処理を行う(ステップS2)。
次に、メインCPU31は、メダル受付・スタートチェック処理を行う(ステップS3)。メダル受付・スタートチェック処理では、メダルセンサ22Sおよび最大BETスイッチ13S等のチェックによる投入枚数カウンタの更新や、スタートスイッチ6Sの入力チェック等が行われる。メインCPU31は、メダル受付・スタートチェック処理により入賞ラインを有効化する。
次に、メインCPU31は、乱数値を抽出し、乱数値格納領域に格納する処理を行う(ステップS4)。具体的には、メインCPU31は、乱数発生器36とサンプリング回路37によって「0」〜「65535」の範囲から乱数値を抽出し、抽出した乱数値をメインRAM33の乱数値記憶領域に記憶させる。
次に、メインCPU31は、内部抽籤処理を行う(ステップS5)。具体的には、メインCPU31は、前述の内部抽籤テーブル決定テーブル(図20参照)、内部抽籤テーブル(図21〜図23参照)および内部当籤役決定テーブル(図25、図26参照)を参照して内部当籤役を決定する。
次に、メインCPU31は、スタートコマンドデータを副制御回路70に送信する(ステップS6)。スタートコマンドには、遊技状態情報、内部当籤役情報(小役・リプレイ用データポインタ、ボーナス用データポインタおよび内部当籤役格納領域)、ボーナス持越状態であるか否かを示す持越状態情報等の情報が含まれている。
具体的な処理としては、メインCPU31は、例えば、フラグやカウンタ等のパラメータをセットし、スタートコマンドをセットして、後述する通信データ格納処理を行うことにより、送信する通信データをメインRAM33に割り当てられる通信データ格納領域に登録するようになっている。なお、以下のコマンドデータについても同様に副制御回路70に送信される。
次に、メインCPU31は、全リールの回転開始を要求する(ステップS7)。全リールの回転開始を要求すると、リール3L、3C、3Rの回転開始処理および加速制御処理が行われる。
次に、メインCPU31は、リール回転の定速待ちを行う(ステップS8)。
次に、メインCPU31は、リール停止制御処理を行う(ステップS9)。このリール停止制御処理では、メインCPU31は、遊技者の停止操作によりストップスイッチ7LS、7CS、7RSから送信された停止信号等に基づいて、各リール3L、3C、3Rの回転を停止させる。
次に、メインCPU31は、表示役検索処理を行う(ステップS10)。この表示役検索処理では、メインCPU31は、全リール3L、3C、3Rの回転を停止させた結果、有効ライン上に表示された図柄の組合せに基づいて、表示役および払出枚数を決定する。
次に、メインCPU31は、RT制御処理を行う(ステップS11)。
次に、メインCPU31は、表示コマンドデータを送信する(ステップS12)。表示コマンドには、表示役を示す表示役情報や払出枚数を示す払出枚数情報等の情報が含まれている。
具体的な処理としては、メインCPU31は、例えば、P1にRT作動組合せ表示フラグをセットし、P2に入賞枚数カウンタをセットする。そして、メインCPU31は、表示コマンドをセットし、後述する通信データ格納処理を行うことにより、送信する通信データを通信データ格納領域に登録するようになっている。
次に、メインCPU31は、メダル払出処理を行う(ステップS13)。具体的には、メインCPU31は、払出モードであれば、払出枚数に基づいてホッパー駆動回路41によりホッパー40を駆動制御してメダルの払い出しを行い、クレジットモードであれば、払出枚数に基づいてメインRAM33にセットされたクレジットカウンタを更新する。
次に、ボーナス作動中であるか否かを判別する(ステップS14)。具体的には、BB1遊技状態〜BB4遊技状態、またはSB遊技状態であるか否かを判別する。このとき、メインCPU31は、ボーナス作動中であると判別したときには、ボーナス終了チェック処理を行い(ステップS15)、ステップS16の処理に移行する。一方、メインCPU31は、ボーナス作動中ではないと判別したとき、またはステップS15の処理を終了した後には、次いで、ボーナス作動チェック処理を行う(ステップS16)この処理が終了すると、メインCPU31は、ステップS1の処理に移行する。
このように、メインCPU31は、ステップS1からステップS16までの処理を1ゲーム(1遊技)における処理として実行し、ステップS16の処理が終了すると次回のゲームにおける処理を実行すべく、ステップS1の処理に移行する。
次に、図39を参照してボーナス作動監視処理について説明する。なお、図39は、本実施の形態の主制御回路60で行われるボーナス作動監視処理のフローチャートを示す図である。
初めに、メインCPU31は、BB遊技状態か否かを判別する(ステップS31)。このとき、メインCPU31は、BB遊技状態であると判別したときにはステップS32の処理に移行する。一方、メインCPU31は、BB遊技状態ではないと判別したときには、ボーナス作動監視処理を終了させる。
メインCPU31は、ステップS31の処理において、BB遊技状態であると判別したときには、次いで、RB遊技状態であるか否かを判別する(ステップS32)。このとき、メインCPU31は、RB遊技状態であると判別したときには、ボーナス作動監視処理を終了させる。
一方、メインCPU31は、RB遊技状態ではないと判別したときには、ボーナス作動時テーブル(図28参照)に基づいてBBの種別に応じたRB作動時処理を行い(ステップS33)、ボーナス作動監視処理を終了させる。具体的には、BB1遊技状態〜BB3遊技状態である場合には、RB1遊技状態を作動させ、BB4遊技状態である場合には、RB2遊技状態を作動させる。
次に、図40および図41を参照して、内部抽籤処理について説明する。なお、図40および図41は、本実施の形態の主制御回路60で行われる内部抽籤処理のフローチャートを示す図である。
初めに、メインCPU31は内部抽籤テーブル決定テーブル(図20参照)を参照して、遊技状態フラグに基づいて内部抽籤テーブルの種別および抽籤回数を決定する(ステップS61)。次に、メインCPU31は、乱数値記憶領域から乱数値を取得し、判定用乱数値としてセットする(ステップS62)。次に、メインCPU31は、当籤番号の初期値として「1」をセットする(ステップS63)。
次に、メインCPU31は、内部抽籤テーブルを参照して、当籤番号に基づいて抽籤値を取得する(ステップS64)。次に、メインCPU31は、判定用乱数値から抽籤値を減算し、減算結果を判定用乱数値としてセットする(ステップS65)。具体的には、メインCPU31は、判定用乱数値記憶領域に記憶させた判定用乱数値からステップS64の処理において取得した抽籤値を減算し、当該減算結果によって判定用乱数値記憶領域を更新する。
次に、メインCPU31は、ステップS65の減算処理において桁かりが行われたか否か、すなわち、減算結果が負の値となったか否かを判別する(ステップS66)。このとき、メインCPU31は、桁かりが行われたと判別したときには、当籤番号に基づいて小役・リプレイ用データポインタおよびボーナス用データポインタを取得し(ステップS70)、ステップS71の処理に移行する。
一方、メインCPU31は、桁かりが行われなかったと判別したときには、次いで、抽籤回数から「1」を減算し、当籤番号に「1」を加算する(ステップS67)。次いで、メインCPU31は、抽籤回数は「0」であるか否かを判別する(ステップS68)。
メインCPU31は、ステップS68の処理において抽籤回数は「0」であると判別したときには、小役・リプレイ用データポインタおよびボーナス用データポインタをそれぞれ「0」に決定し(ステップS69)、ステップS71の処理に移行する。一方、メインCPU31は、抽籤回数は「0」ではないと判別したときには、ステップS64の処理に移行する。この後、メインCPU31は、ステップS64からステップS68の処理を、抽籤回数が「0」になるか、または桁かりが行われるまで繰り返す。
メインCPU31は、ステップS69またはステップS70の処理を終了した後には、次いで、小役・リプレイ用内部当籤役決定テーブル(図26参照)を参照し、小役・リプレイ用データポインタに基づいて内部当籤役を取得する(ステップS71)。次に、メインCPU31は、内部当籤役格納領域に応じて内部当籤役格納領域を更新する(ステップS72)。
次に、メインCPU31は、持越役格納領域は「00000000」であるか否かを判別する(ステップS73)。このとき、メインCPU31は、持越役格納領域は「00000000」ではないと判別したときには、ステップS80の処理に移行する。一方、メインCPU31は、持越役格納領域は「00000000」であると判別したときには、ボーナス用内部当籤役決定テーブル(図25)を参照し、ボーナス用データポインタに基づいて内部当籤役を取得する(ステップS74)。
次いで、メインCPU31は、SBが内部当籤役であるか否かを判別する(ステップS75)。このとき、メインCPU31は、SBが内部当籤役であると判別したときには、SBに応じて内部当籤役格納領域を更新し(ステップS76)、ステップS80の処理に移行する。一方、メインCPU31は、SBが内部当籤役ではないと判別したときには、BBが内部当籤役であるか否かを判別する(ステップS77)。
メインCPU31は、ステップS77の処理において、BBが内部当籤役ではないと判別したときには、ステップS80の処理に移行する。一方、メインCPU31は、BBが内部当籤役であると判別したときには、BBに応じて持越役格納領域を更新し(ステップS78)、RT4遊技状態フラグをオンにし(ステップS79)、ステップS80の処理に移行する。
メインCPU31は、ステップS73の処理において、持越役格納領域は「00000000」ではないと判別したとき、ステップS77の処理において、BBが内部当籤役ではないと判別したとき、ステップS76、ステップS79の処理を終了した後には、次いで、持越役格納領域と内部当籤役格納領域1の論理和をとり、その結果を内部当籤役格納領域1に格納する(ステップS80)。
なお、メインCPU31は、内部抽籤処理においてステップS64〜ステップS68の処理を繰り返し実行することにより、内部当籤役の抽籤を行っている。具体的には、メインCPU31は、抽出した乱数値から順次、抽籤値を減算することにより、桁かりが行われた際の当籤番号に対応する小役・リプレイ用データポインタおよびボーナス用データポインタを決定し、決定した当該各データポインタと内部当籤役決定テーブルとに基づいて内部当籤役を決定する。
次に、図42を参照して、リール停止制御処理について説明する。なお、図42は、本実施の形態の主制御回路60で行われるリール停止制御処理のフローチャートを示す図である。
初めに、メインCPU31は、ストップボタン未作動カウンタに「3」をセットし(ステップS101)、次いで、内部当籤役に応じた停止テーブルを取得する(ステップS102)。
次に、メインCPU31は、有効なストップボタンが押されたか否かを判別する(ステップS103)。有効なストップボタンとは停止操作が行われていないストップボタンである。このとき、メインCPU31は、有効なストップボタンが押されたと判別したときにはステップS104の処理に移行する。一方、メインCPU31は、有効なストップボタンが押されていないと判別したときには、再度ステップS103の処理を実行する。すなわち、メインCPU31は、有効なストップボタンに対応する停止操作が検出されるまでステップS103の処理を繰り返す。
メインCPU31は、ステップS103の処理において、有効なストップボタンが押されたと判別したときには、該当するストップボタンの操作を無効化する(ステップS104)。次いで、作動ストップボタン(停止順序)に応じて停止テーブルを再選択する(ステップS105)。
次に、メインCPU31は、チェック回数として「5」をセットする(ステップS106)。次いで、メインCPU31は、引込優先順位テーブル(図29、図30参照)を参照し、内部当籤役に基づいて、図柄カウンタに対応する図柄位置からチェック回数の範囲内において、最も優先順位の高い図柄位置を検索する(ステップS107)。
次に、メインCPU31は、停止テーブル、図柄カウンタに対応する図柄位置、および検索の結果に基づいて滑りコマ数を決定し、停止予定位置をセットする(ステップS108)。次いで、メインCPU31は、リール停止コマンドを送信する(ステップS109)。リール停止コマンドには、何れのリールが停止したかを示す停止リール種別情報、停止開始位置を示す停止開始位置情報、滑りコマ数を示す滑りコマ数情報等の情報が含まれる。
次に、メインCPU31は、図柄配置テーブル(図3参照)を参照し、停止リール、停止予定位置、遊技状態に基づいて図柄コードを取得し、図柄格納領域に格納する(ステップS110)。
最後にメインCPU31は、操作が有効なストップボタンはあるか否かを判別する(ステップS111)。このとき、メインCPU31は、操作が有効なストップボタンがないと判別したときには、リール停止制御処理を終了させる。一方、メインCPU31は、操作が有効なストップボタンがあると判別したときには、ステップS103の処理に移行する。この後、メインCPU31は、ステップS103からステップS111の処理を、操作が有効なストップボタンがないと判別するまで繰り返す。
次に、図43を参照して、表示役検索処理について説明する。なお、図43は、本実施の形態の主制御回路60で行われる表示役検索処理のフローチャートを示す図である。
初めに、メインCPU31は、表示役格納領域をクリアする(ステップS121)。
次に、メインCPU31は、図柄格納領域の先頭アドレスを指定する(ステップS122)。具体的には、メインCPU31は、遊技状態がRB遊技状態以外の遊技状態である場合にはセンターライン8cに対応するアドレスを先頭アドレスとして指定し、遊技状態がRB遊技状態である場合にはRB中特殊ライン8fに対応するアドレスを先頭アドレスとして指定する。
次に、メインCPU31は、図柄組合せテーブル(図27参照)の先頭アドレスを指定する(ステップS123)。具体的には、メインCPU31は、BB1に対応するアドレスを先頭アドレスとして指定する。
次に、メインCPU31は、図柄組合せテーブルに規定されている図柄の組合せと、図柄格納領域に格納されている図柄の組合せを比較する(ステップS124)。
次に、メインCPU31は、ステップS124の処理において比較した結果、図柄組合せテーブルに規定されている図柄の組合せと、図柄格納領域に格納されている図柄の組合せが一致したか否かを判別する(ステップS125)。このとき、メインCPU31は、図柄組合せテーブルに規定されている図柄の組合せと、図柄格納領域に格納されている図柄の組合せとが一致しないと判別したときには、ステップS129の処理に移行し、一方、一致すると判別したときには、図柄組合せテーブルから格納領域種別および表示役を示すデータを取得する(ステップS126)。
次に、メインCPU31は、取得した格納領域種別に対応する表示役格納領域と、取得した表示役を示すデータの論理和を表示役格納領域に格納する(ステップS127)。
次に、メインCPU31は、図柄組合せテーブルから払出枚数を取得し、払出枚数カウンタに加算する(ステップS128)。
メインCPU31は、ステップS125の処理において図柄組合せテーブルに規定されている図柄の組合せと、図柄格納領域に格納されている図柄の組合せとが一致しないと判別したとき、または、ステップS128の処理を終了したときには、次いで、図柄組合せテーブルの次の役に対応するアドレスを指定する(ステップS129)。
次に、メインCPU31は、ステップS129の処理において指定したアドレスには、エンドコードが格納されているか否かを判別する(ステップS130)。このとき、メインCPU31は、エンドコードが格納されていないと判別したときには、ステップS124の処理に移行する。一方、メインCPU31は、エンドコードが格納されていると判別したときには、次いで、全有効ラインについて検索したか、すなわち、全有効ラインに対して、ステップS124〜ステップS130の処理を行ったか否かを判別する(ステップS131)。
メインCPUは、ステップS131の処理において全有効ラインについて検索したと判別したときには、表示役検索処理を終了させる。一方、メインCPUは、全有効ラインについて検索していないと判別したときには、次いで、図柄格納領域の次の有効ラインに対応するアドレスを指定し(ステップS132)、ステップS123の処理に移行する。
次に、図44を参照して、RT制御処理について説明する。なお、図44は、本実施の形態の主制御回路60で行われるRT制御処理のフローチャートを示す図である。
初めに、メインCPU31は、BB持越中(RT4遊技状態)であるか否かを判別する(ステップS161)。このとき、メインCPU31は、BB持越中であると判別したときには、RT制御処理を終了させる。一方、メインCPU31は、BB持越中ではないと判別したときには、BB中であるか否かを判別する(ステップS162)。具体的には何れかのBB遊技状態フラグがオンであるか否かを判別する。
メインCPU31は、ステップS162の処理においてBB中であると判別したときには、RT制御処理を終了させる。一方、メインCPU31は、BB中ではないと判別したときには、RT遷移テーブル(図24参照)を参照し、表示役に基づいて、遊技状態フラグを更新する必要がある場合には更新し(ステップS163)、RT制御処理を終了させる。
次に、図45を参照して、ボーナス終了チェック処理について説明する。なお、図45は、本実施の形態の主制御回路60で行われるボーナス終了チェック処理のフローチャートを示す図である。
初めに、メインCPU31は、BB中であるか否かを判別する(ステップS141)。このとき、メインCPU31は、BB中ではないと判別したときには、SB遊技状態フラグをオフにし(ステップS142)、ボーナス終了チェック処理を終了させる。一方、メインCPU31は、BB中であると判別したときには、ボーナス終了枚数カウンタの値は「0」であるか否かを判別する(ステップS143)。
メインCPU31は、ボーナス終了枚数カウンタの値は「0」であると判別したときには、ボーナス終了時処理を行う(ステップS144)。具体的には、オンであるBB遊技状態フラグ、RB遊技状態フラグをオフにする。次いで、メインCPU31は、ボーナス終了コマンドを送信し(ステップS145)、ボーナス終了チェック処理を終了させる。
一方、メインCPU31は、ボーナス終了枚数カウンタの値は「0」ではないと判別したときには、遊技可能回数カウンタの値から「1」を減算し(ステップS146)、表示役は小役であるか否かを判別する(ステップS147)。このとき、メインCPU31は、表示役は小役ではないと判別したときには、ステップS149の処理に移行する。一方、メインCPU31は、表示役は小役であると判別したときには、入賞可能回数カウンタの値から「1」を減算し(ステップS148)、ステップS149の処理に移行する。
次に、メインCPU31は、入賞可能回数カウンタの値または遊技可能回数カウンタの値が「0」であるか否かを判別する(ステップS149)。このとき、メインCPU31は、入賞可能回数カウンタの値および遊技可能回数カウンタの値の何れも「0」ではないと判別したときには、ボーナス終了チェック処理を終了させる。一方、メインCPU31は、入賞可能回数カウンタの値または遊技可能回数カウンタの値が「0」であると判別したときには、次いで、RB終了時処理を行い(ステップS150)、ボーナス終了チェック処理を終了させる。RB終了時処理では、オンとなっているRB遊技状態フラグをオフにする等の処理を行う。
次に、図46を参照して、ボーナス作動チェック処理について説明する。なお、図46は、本実施の形態の主制御回路60で行われるボーナス作動チェック処理のフローチャートを示す図である。
初めに、メインCPU31は、表示役はBB(BB1〜BB4の何れか)であるか否かを判別する(ステップS171)。このとき、メインCPU31は、表示役はBBでないと判別したときには、ステップS174の処理に移行する。一方、メインCPU31は、表示役はBBであると判別したときには、ボーナス作動時処理を行う(ステップS172)。このボーナス作動時処理では、ボーナス作動時テーブル(図28)を参照し、作動させる遊技状態に応じて、遊技状態フラグをオンに、ボーナス終了枚数カウンタに値をセットする。次いで、メインCPU31は、RT4遊技状態フラグをオフにするとともに、持越役格納領域をクリアし(ステップS173)、ボーナス開始コマンドを送信して(ステップS176)、ボーナス作動チェック処理を終了させる。ボーナス開始コマンドには、開始するボーナスの種別等を示す情報が含まれている。
メインCPU31は、ステップS171の処理において、表示役がBBではないと判別したときには、次いで、表示役はSBであるか否かを判別する(ステップS174)。このとき、メインCPU31は、表示役はSBでないと判別したときにはステップS177の処理に移行する。一方、メインCPU31は、表示役はSBであると判別したときには、ボーナス作動時処理を行う(ステップS175)。このボーナス作動時処理では、ボーナス作動時テーブル(図28)を参照し、SB遊技状態フラグをオンにする。次いで、メインCPU31は、ボーナス開始コマンドを送信して(ステップS176)、ボーナス作動チェック処理を終了させる。
メインCPU31は、ステップS174の処理において、表示役はSBではないと判別したときには、次いで、表示役はリプレイであるか否かを判別する(ステップS177)。このとき、メインCPU31は、表示役はリプレイでないと判別したときには、ボーナス作動チェック処理を終了させる。一方、メインCPU31は、表示役はリプレイであると判別したときには、投入枚数カウンタの値を自動投入枚数カウンタに複写し(ステップS178)、ボーナス作動チェック処理を終了させる。自動投入枚数カウンタに値がセットされている場合には、次遊技におけるステップS3の処理において、その値に対応する枚数のメダルが自動投入される(遊技者のメダルは減らない)。
次に、図47を参照して、通信データ格納処理について説明する。なお、図47は、本実施の形態の主制御回路60で行われる通信データ格納処理のフローチャートを示す図である。また、図示のP1〜P5データは、各コマンドのパラメータを示す。
メインCPU31は、通信一時格納領域の第0バイトに送信コマンドを格納する(ステップS1291)。メインCPU31は、メインRAM33に割り当てられる通信一時格納領域の第1バイトにP1データを格納する(ステップS1292)。メインCPU31は、通信一時格納領域の第2バイトにP2データを格納する(ステップS1293)。メインCPU31は、通信一時格納領域の第3バイトにP3データを格納する(ステップS1294)。メインCPU31は、通信一時格納領域の第4バイトにP4データを格納する(ステップS1295)。メインCPU31は、通信一時格納領域の第5バイトにP5データを格納する(ステップS1296)。メインCPU31は、通信一時格納領域の第6バイトに遊技状態フラグを格納する(ステップS1297)。
そして、メインCPU31は、通信一時格納領域の第0バイト〜第6バイトのデータを排他的論理和により演算して、主サム値であるBCCデータを作成する(ステップS1298)。
メインCPU31は、BCCデータを通信一時格納領域の第7バイトに格納する(ステップS1299)。
続いて、メインCPU31は、後述する暗号化データ作成処理を行う(ステップS1300)。
次に、メインCPU31は、通信データ格納設定情報から、通信データ格納領域の格納先アドレスを求める(ステップS1301)。ここで、メインCPU31は、通信データ格納領域に空きがあるか否かを判断する(ステップS1302)。メインCPU31が通信データ格納領域に空きが無いと判断したときには、通信データ格納処理を終了させる。
メインCPU31が通信データ格納領域に空きがあると判断したときには、通信一時格納領域に格納されたデータを、通信データ格納領域に格納する(ステップS1303)。さらに、メインCPU31は、通信データ格納設定情報を更新し(ステップS1304)、通信データ格納処理を終了させる。
次に、図48を参照して、暗号化データ作成処理について説明する。なお、図48は、本実施の形態のメインCPU31が実行する暗号化データ作成処理のフローチャートを示す図である。
メインCPU31は、メインROM32に記憶された暗号化情報を参照し、暗号化処理を行うための暗号化シーケンスはデータ入れ替えか否かを判断する(ステップS1311)。メインCPU31がデータ入れ替えと判断しなかったときには、後述のステップS1325に進む。
メインCPU31がデータ入れ替えと判断したときには、データの入れ替えパターンはAか否かを判断する(ステップS1312)。メインCPU31は、データの入れ替えパターンはAと判断したときには、通信一時格納領域の送信データを図15に示したデータ入替パターンAで暗号化し(ステップS1313)、メインルーチン(図47参照)の処理に戻る。
メインCPU31は、データの入れ替えパターンはAと判断しなかったときには、通信一時格納領域の送信データをデータ入替パターンB(図16参照)で暗号化し(ステップS1314)、メインルーチンの処理に戻る。
ステップS1311において、メインCPU31は、データ入れ替えと判断しなかったときには、演算パターンはAか否かを判断する(ステップS1315)。メインCPU31は、演算パターンはAと判断したときには、通信一時格納領域の送信データを図17に示した演算パターンAで暗号化し(ステップS1316)、メインルーチンの処理に戻る。
メインCPU31は、演算パターンはAと判断しなかったときには、通信一時格納領域の送信データを図18に示した演算パターンBで暗号化し(ステップS1317)、メインルーチンの処理に戻る。
次に、図49を参照して、メインCPU31の制御による割込処理について説明する。なお、図49は、本実施の形態の主制御回路60で行われるメインCPU31の制御による割込処理のフローチャートを示す図である。また、このメインCPU31の制御による割込処理は、所定の周期(本実施の形態では、1.1173ミリ秒)毎に発生する割込処理である。
初めに、メインCPU31は、当該メインCPU31の制御による割込処理を呼び出す前に実行されているプログラムを中断し、その中断した位置を示すアドレス、各種レジスタの値をメインRAM33の所定の領域に退避させる(ステップS181)。これは、当該メインCPU31の制御による割込処理が終了した場合に、退避されたプログラムの中断した位置を示すアドレス、各種レジスタの値を復帰させ、中断した時点からプログラムを継続して実行するためである。
次に、メインCPU31は、入力ポートチェック処理を行う(ステップS182)。具体的には、メインCPU31は、最大BETスイッチ13S等の各スイッチからの信号をチェックする。
次に、メインCPU31は、リール制御処理を行う(ステップS183)。具体的には、メインCPU31は、リセット割込処理(図38参照)においてリールの回転開始要求があった場合には、リール3L、3C、3Rの回転を開始させ、一定速度で回転させるための制御を行う。また、メインCPU31は、リール停止制御処理(図42参照)において滑りコマ数が決定されたことにより停止予定位置が定まっている場合には、該当するリールの図柄カウンタの値が停止予定位置を示す値と同一の値となったときに当該リールを停止させるための制御を行う。例えば、メインCPU31は、停止予定位置を示す値が「4」である場合には、図柄カウンタの値が「4」になったときに、該当するリールを停止させるための制御を行う。
次に、メインCPU31は、後述する通信データ送信処理を行う(ステップS184)。さらに、メインCPU31は、ランプ駆動制御処理を行う(ステップS185)。次に、メインCPU31は、ステップS181の処理においてメインRAM33に退避した値を参照してレジスタの復帰を行う(ステップS186)。この処理が終了すると、当該メインCPUの制御による割込処理を終了させ、当該メインCPUの制御による割込処理の発生により中断したプログラムを継続して実行する。
次に、図50を参照して、通信データ送信処理について説明する。なお、図50は、本実施の形態の主制御回路60で行われる通信データ送信処理のフローチャートを示す図である。この通信データ送信処理は、主としてメインCPU31のコマンド送信手段31bが実行する。
初めに、メインCPU31は、通信データ格納設定情報に基づいて、今回の通信データ格納領域のアドレスをセットする(ステップS1341)。そして、メインCPU31は、通信データ格納領域のセットされたアドレスに、副制御回路70へ送信しようとする通信データ(送信データ)が格納されているか否かを判断する(ステップS1342)。
メインCPU31が、通信データ格納領域のセットされたアドレスに送信データが格納されていないと判断したときには、無操作コマンドをセットして(ステップS1343)、上述した通信データ格納処理を行う(ステップS1344)。
ここでの通信データ格納処理が終了した後、あるいは、メインCPU31が、通信データ格納領域のセットされたアドレスに送信データが格納されていると判断したときには、メインCPU31は、主制御回路60の送信ポートに空きがあるか否かを判断する(ステップS1345)。メインCPU31は、主制御回路60の送信ポートに空きがないと判断したときには、通信データ送信処理を終了する。
メインCPU31が、主制御回路60の送信ポートに空きがあると判断したときには、1パケット分のデータ数(本実施の形態では8)をセットする(ステップS1346)。そして、メインCPU31は、パケット送信データ設定用出力ポートの先頭番号をセットする(ステップS1347)。さらに、メインCPU31は、通信データ格納領域のデータを出力ポートにセットする(ステップS1348)。
メインCPU31は、通信データ格納領域のアドレスを1加算して更新する(ステップS1349)。次に、メインCPU31は、出力ポート番号を1加算して更新する(ステップS1350)。さらに、メインCPU31は、データ数カウンタを1減算する(ステップS1351)。
次に、メインCPU31は、データ数カウンタは0か否かを判断する(ステップS1352)。メインCPU31が、データ数カウンタは0ではないと判断した場合、通信データ格納領域には出力ポートにまだセットされていないデータが残っていると判断して、再度通信データ格納領域のデータを出力ポートにセットする(ステップ1348)。
メインCPU31が、データ数カウンタが0であると判断した場合、出力ポートには1パケット分のデータが格納されたと判断して、送信起動要求を通信レジスタポートにセットする(ステップS1353)。これにより、1パケット分のデータが送信されるようになる。
そして、メインCPU31は、通信データ格納領域に送信済みデータをセットする(ステップS1354)。さらに、メインCPU31は、通信データ格納設定情報を更新して、次回の通信データ格納領域のアドレスをセットし(ステップS1355)、通信データ送信処理を終了する。
[遊技機の管理システム]
次に、本実施の形態の遊技機1を利用したエラー情報履歴送信システムについて説明する。エラー情報履歴送信システムとは、遊技機1で発生した各種のエラーをエラー情報として記憶し、エラー情報の履歴を携帯端末の利用により遠隔のサーバに送信し、エラーの原因を解析するシステムである。
図51に示すように、エラー情報履歴送信システムは、遊技機1と、係員が所持する携帯端末としてのカメラ付き携帯通信端末(以下、「携帯端末」という)400と、サーバとしてのデータ管理サーバ500と、解析手段としての解析用PC600とを含んで構成される。なお、図51の例では、説明の便宜上、1つの携帯端末400を示しているが、実際には多数の携帯端末400からデータ管理サーバ500にアクセス可能となっている。
データ管理サーバ500は、例えば、エラー情報の管理のみならず遊技記録に関する情報も管理する。携帯端末400とデータ管理サーバ500とは、ネットワークNWを介して、例えば、通信プロトコルにTCP/IP等を用いて相互にデータの送受信が可能になっている。なお、ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、およびゲートウェイ等により構築されている。なお、遊技機1はネットワークNWに接続されていない。
なお、携帯端末400と、データ管理サーバ500と、解析用PC600とは、特に図示しないが、それぞれ、制御部、記憶部、表示部、通信部等を備えている。また、データ管理サーバ500および解析用PC600は、例えば、遊技機1のメーカやシステム管理会社等、遊技機1の設置場所とは離隔した区域700に設置されることが好ましい。
遊技機1のサブCPU71は、エラー情報履歴送信システムによりサービスを提供する際、係員(携帯端末400)がデータ管理サーバ500にアクセスするように二次元コード300を液晶表示領域23に表示させる。具体的には、図53に示すように、係員が液晶表示領域23にエラー情報履歴を表示させ、例えば、通信エラーアラームであるCOMエラーアラーム(COM ERR ALM)23b等の所定の項目を選択することにより、二次元コード300を表示させる。
携帯端末400の制御部は、表示された二次元コード300を携帯端末400のカメラ401で読み取り、例えば携帯端末400の専用ソフトにより二次元コード300を解析し、コード内のドメインおよび通信エラーログ等の情報を取得し、二次元コード300に含まれるドメイン等に従ってデータ管理サーバ500にアクセスし、二次元コード300に含まれる情報を出力時送信データとして送信する。
一方、データ管理サーバ500の制御部は、受信した送信データに含まれる通信エラー情報を記憶部に記憶する。
また、データ管理サーバ500の制御部は、出力時送信データに含まれる通信エラー情報を図示しないエラー情報データベースDB(database)に蓄積するとともに、当該通信エラー情報を解析用PC600に送信する。また、データ管理サーバ500の制御部は、受信した通信エラー情報等が示すエラー内容を携帯端末400が表示できるような表示データ(例えば、Webページ)を生成し、アクセスしてきた携帯端末400に対して返信する(図中、一点鎖線矢視)。そして、携帯端末400の制御部は受信した表示データに基づいて、エラー内容等を示す画面402を表示部に表示させる。係員は、その画面402からエラー内容等を確認することができる。
さらに、通信エラー情報を受信した解析用PC600は、その通信エラー情報や、エラー情報データベースDBに蓄積された各種の情報に基づいて通信エラーの原因を解析するようになっている。解析用PC600により解析された通信エラーの原因は、当該解析用PC600が設置される遊技機1のメーカやシステム管理会社等において、遊技機1のプログラムや構造等の改善、あるいは遊技機1の設置されたホールでの管理の改善等、適宜利用される。
次に、係員がエラー情報履歴送信サービスを利用する際における遊技機1について説明する。遊技機1のサブCPU71は、図53に示すエラー情報履歴を液晶表示装置5に表示させるために、係員による通常操作と簡易操作との2種類の操作法を採用している。通常操作を実行する場合は、係員がドアキー2を右回転させて前面扉1bのロック機構を解放し、設定キーをオン操作して設定キースイッチ20Sをオンにすることで、液晶表示領域23に図53に示すメニュー画面が表示される。
そして、係員が操作キーを操作して、「エラー情報履歴」項目23aを選択することで、液晶表示領域23に図53に示すエラー情報履歴画面が表示される。一方、簡易操作を実行する場合は、係員は、エラー発生時や非遊技時にドアキー2を左回転させてエラーのリセットを行い、その状態を一定時間、例えば5秒間以上保持する。これにより、液晶表示領域23に、図53に示すエラー情報履歴画面が表示される。
サブCPU71は、係員が選択ボタン24と決定ボタン25を用いて、「エラー情報履歴」項目23aを選択する操作を検出すると、図53に示すように、液晶表示領域23にエラー情報履歴を表示する。さらに、サブCPU71は、係員が選択ボタン24と決定ボタン25を用いて、「COMエラーアラーム」項目23bを選択する操作を検出すると、当該エラー情報履歴に基づいて送信情報を生成し、図53に示すように、「COMエラーアラーム」項目23bの右側に送信情報に基づく二次元コード300を表示させる。
また、サブCPU71は、通信エラーが1回発生した時点ではCOMエラーアラームを表示させず、1回目の通信エラーが発生してから30分以内に再度通信エラーが発生した場合に限り、COMエラーアラームを表示するようになっている。このため、サブCPU71は、通信エラーの発生した間隔を計測するためのCOMエラータイマを備えている。COMエラータイマは、内蔵RTC70aの計時またはOSが提供する機能による計時に基づいて計測を行う。
また、本実施の形態では、サブCPU71は、通信エラーが発生した場合に限って二次元コード300を作成するようにしている。このため、通信エラーが、例えば通常の遊技中に偶発的に発生した場合は、二次元コード300にエラー情報として載せられるデータは、図56(a)に示すように正常な処理の途中で通信エラーが発生し、その直後から再び正常な処理が実行されたものとなる。ここで、図56中の数値はデータの文字数であり、1文字のデータはコマンド種別、2文字のデータは直前のコマンドに対するパラメータをそれぞれ示す。
また、通信エラーがゴト行為により発生したもので、遊技機1に設定変更があった場合は、二次元コード300にエラー情報として載せられるデータは、図56(b)に示すように通信エラーの発生直後に設定変更がなされたものとなる。さらに、通信エラーが発生してレバー操作による連続送信がなされた場合は、二次元コード300にエラー情報として載せられるデータは、図56(c)に示すように通信エラーの発生直後からコマンド種別であるレバー操作とパラメータである成立役とが連続したものとなる。
図57は、副制御回路70のサブRAM73−1のデータが破壊された場合に、副制御回路70が、遊技機1の液晶表示領域23のほぼ全面に、RAMデータにサム異常が生じたため遊技を続行できない旨を報知した一例を示す。
例えば、主制御回路60から受信したコマンド、演出データ情報、遊技状態情報、内部当籤役情報、表示役情報、各種カウンタおよび各種フラグ等の情報に関するデータの一部や全部が消去された場合に、遊技機1の液晶表示領域23の図柄表示領域4L、4C、4Rを除いた部分に、「RAMデータ異常 遊技を続行できません。設定変更を行ってください。」との報知を行う。このような報知を行うことにより、ゴト行為の抑制を図ることが期待できる。
[サブCPU]
次に、図58を参照しながらサブCPU71の電源投入処理について説明する。図58はサブCPU71の電源投入処理のフローチャートである。
サブCPU71の電源投入処理は、OS内の初期化処理であり、サブCPU71の電源が投入されると、CPUおよび内部デバイスの初期化や周辺ICの初期化を行うためにサブCPU初期設定処理が実行される(ステップS910)。
次に、サブCPU71は、各種のタスク起動要求のために、図59に基づいて後述するマザータスクの起動要求処理を実行する(ステップS911)。そして、サブCPU71は、図73に基づいて後述するサブRAM管理処理を実行する。
また、副制御回路70内に電断検知回路が設けられている(図示しない)。その電断検知回路が、電圧低下、例えば、4.5Vまで電圧が低下したことを検知すると、電断検知信号を出力する。サブCPU71は、外部割込ポート(NMI)からの割込入力により、図60に示す電断割込処理を実行する。電断割込処理では、後述する図74に示すバックアップ作成処理(ステップS950)を実行する。
なお、主制御と異なり、電断割込処理では、サブCPU71はサム値の計算は行わない。サブCPU71によるサム値の計算は、有効コマンド受信時、演出モード変更時等ごとに行われている。
図59に示すマザータスクの要求処理は、OSに遊技機1の機能に必要なタスクの起動要求をする処理である。まずサブCPU71は演出登録処理の起動要求をする(ステップS1001)。次にサブタスクの起動要求として、役物制御タスク起動要求(ステップS1002)、ランプ制御タスク起動要求(ステップS1003)、サウンド制御タスク起動要求(ステップS1004)、主基板通信タスク起動要求(ステップS1005)、アニメタスク起動要求(ステップS1006)、次に、RTC制御タスク起動要求(ステップS1007)をする。
次に、上述したエラー情報履歴送信システムの動作を、図61〜図71に示すフローチャートに沿って説明する。まず、図61を参照して副制御回路70における主基板通信受信割込処理について説明する。なお、図61は、本実施の形態の副制御回路70における主基板通信受信割込処理のフローチャートを示す図である。この副制御回路70における主基板通信受信割込処理のプログラムは、主制御回路60から副制御回路70に送信データが送信された時に、サブCPU71が割込処理として実行する。
サブCPU71は、メインCPU31との間に介在するI/Oポートの受信データレジスタから受信データを取得する(ステップS800)。また、サブCPU71は、I/Oポートの受信ステータスレジスタから受信ステータスデータを取得する(ステップS801)。さらに、サブCPU71は、受信データと、その受信データに関する受信ステータスデータとを、各キューバッファに登録し(ステップS802)、主基板通信受信割込処理を終了する。
サブCPU71は、上述したステップS800〜ステップS802の主基板通信受信割込処理を1回実行することにより、1バイトの受信データを処理するようになっている。本実施の形態では、1コマンドは8バイトのデータから構成される。したがって、サブCPU71は、ステップS800〜S802を8回連続して処理することにより、シリアルデータ通信の実行により1コマンドの処理を完了するようになっている。
[演出登録処理]
次に、図62に示すフローチャートを参照して、副制御回路70の遊技に関する動作について説明する。
図62を参照して、演出登録処理について説明する。なお、図62は、本実施の形態の演出登録処理のフローチャートを示す図である。
初めに、サブCPU71は、演出登録処理に4msの周期を設定する(ステップS310)。次に、サブCPU71は、メッセージキューからメッセージを取り出す(ステップS311)。次いで、サブCPU71は、メッセージキューにメッセージはあったか否かを判別する(ステップS312)。このとき、サブCPU71は、メッセージキューにメッセージはなかったと判別したときには、ステップS316の処理に移行する。
一方、サブCPU71は、ステップS312において、メッセージキューにメッセージはあったと判別したときには、メッセージから遊技情報を複写し(ステップS313)、次に、演出内容決定処理を行う(ステップS314)。演出内容決定処理では、メインCPU31から送信された各種コマンドに応じた演出内容を決定し、受信したコマンドで特定される例えば遊技状態や動作状態に応じた演出データを登録する。続いて、サブCPU71は、サブRAM73−1からSRAM73−2にバックアップデータを作成するバックアップ作成処理を行う(ステップS315)。
次に、サブCPU71は、アニメーションデータの登録を行う(ステップS316)。具体的には、サブCPU71は、演出内容決定処理において登録された演出データに基づいて、アニメーションデータの登録を行う。これにより、液晶表示装置5に画像が表示される。すなわち、サブCPU71は、演出内容決定処理において決定された演出データに基づいて、画像表示コマンドをGPU74に送信する。
GPU74は、受信した画像表示コマンドに基づいて、VRAM75に展開されている画像データの中から適当な画像データを選択するとともに当該画像データの表示位置や大きさを決定し、画像データをVRAM75に備えられた一方のフレームバッファに格納する。
GPU74は、所定の周期(1/30秒)毎にフレームバッファ領域の表示画像データ領域と書込画像データ領域とを入れ換えるバンク切換処理を行う。バンク切換処理においてGPU74は、書込画像データ領域に書き込まれている画像データを液晶表示装置5に出力するとともに、表示画像データ領域を書込画像データ領域に入れ換え、次に表示すべき画像データの書き込みを行う。
次に、サブCPU71は、サウンドデータの登録を行う(ステップS317)。具体的には、サブCPU71は、演出内容決定処理において登録した演出データに基づいて、サウンドデータの登録を行う。これにより、スピーカ21L、21Rから音が出力される。次に、サブCPU71は、LEDデータの登録を行う(ステップS318)。
具体的には、サブCPU71は、演出内容決定処理において登録した演出データに基づいて、LEDデータの登録を行う。これにより、各種操作パネル101〜103、表示パネルユニット110が点灯したり消灯したりする。この処理が終了すると、サブCPU71は、4msの周期待ちをして(ステップS319)、ステップS311の処理に戻る。
次に、図63を参照して、図62に示すサブCPUにより行われる演出登録処理のフローチャートの中の演出内容決定処理について説明する。なお、図63は、演出内容決定処理のフローチャートを示す図である。また、下記の処理は、サブCPU71が有するコマンド復号化手段71aが、主制御回路60が暗号化して送信する各種のコマンドを復号化した後に行う処理である。
初めに、サブCPU71は、スタートコマンドを受信したか否かを判別する(ステップS351)。サブCPU71は、スタートコマンドを受信したと判別したときには、スタートコマンド受信時処理を行い(ステップS352)、スタート時の演出データを登録して(ステップS353)、演出内容決定処理を終了させる。
サブCPU71は、ステップS351の処理においてスタートコマンドを受信していないと判別したときには、次いで、リール停止コマンドを受信したか否かを判別する(ステップS354)。
ステップS354の処理において、サブCPU71は、リール停止コマンドを受信したと判別したときには、リール停止コマンド受信時処理を行い(ステップS355)、作動ストップボタンの種別等に応じて、停止時の演出データを登録して(ステップS356)、演出内容決定処理を終了させる。
サブCPU71は、ステップS354の処理においてリール停止コマンドを受信していないと判別したときには、次いで、表示コマンドを受信したか否かを判別する(ステップS357)。サブCPU71は、表示コマンドを受信したと判別したときには、表示コマンド受信時処理を行い(ステップS358)、演出内容決定処理を終了させる。
サブCPU71は、ステップS357の処理において表示コマンドを受信していないと判別したときには、次いで、BETコマンドを受信したか否かを判別する(ステップS359)。サブCPU71は、BETコマンドを受信したと判別したときには、投入枚数等に応じて、BET時の演出データを登録し(ステップS360)、演出内容決定処理を終了させる。
サブCPU71は、ステップS359の処理においてBETコマンドを受信していないと判別したときには、次いで、ボーナス開始コマンドを受信したか否かを判別する(ステップS361)。サブCPU71は、ボーナス開始コマンドを受信したと判別したときには、ボーナス開始時用演出データを登録し(ステップS362)、演出内容決定処理を終了させる。
サブCPU71は、ステップS361の処理においてボーナス開始コマンドを受信していないと判別したときには、次いで、ボーナス終了コマンドを受信したか否かを判別する(ステップS363)。このとき、サブCPU71は、ボーナス終了コマンドを受信していないと判別したときには、演出内容決定処理を終了させる。一方、サブCPU71は、ボーナス終了コマンドを受信したと判別したときには、ボーナス終了コマンド受信時処理を行い(ステップS364)、ボーナス終了時用演出データを登録し(ステップS365)、演出内容決定処理を終了させる。
[主基板通信処理]
次に、図64を参照してサブCPU71の主基板通信処理について説明する。なお、図64は、本実施の形態のサブCPU71の主基板通信処理のフローチャートを示す図である。
サブCPU71は、OSのスケジューリングの機能に応答して、サブCPU71の主基板通信処理のプログラムを2msの周期で実行するように周期を設定する(ステップS808)。これにより、本タスクは、処理時間を含めて2msの周期で繰り返される。このため、サブCPU71は、2msの周期待ちをして(ステップS809)、フローチャートが繰り返される場合に2msの残り時間を待機する。
なお、本タスク処理の周期は2msに限定されるものではなく、2ms〜4msの間で実行されてもよい。また、サブCPU71の主基板通信処理のプログラムは所定時間ごとに実行されるものに限られず、周期設定および周期待ちをすることなく、例えば、時間間隔に関係なく所定の条件が満たされた場合に実行されるようにしてもよい。
次に、サブCPU71は、ステップS802で受信データを登録したキューから受信データを取得する(ステップS810)。サブCPU71は、キューに受信データがあるか否かを判断する(ステップS811)。サブCPU71は、キューに受信データが無いと判断した場合は、再度キューから受信データを取得する(ステップS810)。
サブCPU71が、キューに受信データがあると判断した場合は、受信データに物理層エラーが発生していないか否かを判断する(ステップS812)。サブCPU71は、受信データに物理層エラーが発生していないと判断した場合は、後述する受信データの復号化処理を行って(ステップS813)、受信コマンドの数値範囲をチェックして取得する(ステップS814)。本実施の形態では、受信コマンドの数値範囲は、図55に示すように、01H〜10Hとなっている。そして、サブCPU71は、受信コマンドの数値が適正範囲内であるか否かを判断する(ステップS815)。
サブCPU71が、コマンドの数値は適正範囲内であると判断した場合は、受信データについてBCCチェック処理を行う(ステップS816)。
そして、サブCPU71は、BCCチェック処理の結果が正常であるか否かを判断する(ステップS817)。サブCPU71が、BCCチェック処理の結果が正常であると判断した場合は、コマンドの種別を抽出する(ステップS818)。
そして、サブCPU71は、抽出したコマンドが無操作コマンドか否かを判断する(ステップS819)。サブCPU71は、抽出したコマンドが無操作コマンドであると判断した場合は、再度キューから受信データを取得する(ステップS810)。
サブCPU71は、抽出したコマンドが無操作コマンドではないと判断した場合は、後述する受信データログ保存処理を実行する(ステップS820)。さらに、サブCPU71は、後述する主基板受信コマンドチェック処理を実行する(ステップS821)。
そして、サブCPU71は、今回受信したコマンドが前回(直前の回)に受信したコマンドと異なっているか否かを判断する(ステップS822)。サブCPU71は、今回受信したコマンドが直前に受信したコマンドと異なっていない、すなわち同一であると判断した場合は、2msの周期待ちをして(ステップS809)再度キューから受信データを取得する(ステップS810)。
サブCPU71は、今回受信したコマンドが直前に受信したコマンドと異なっていると判断した場合は、今回受信したコマンドをメッセージキューに登録する(ステップS823)。そして、サブCPU71は、ゲームデータサム値領域73b−1に対してサムチェックを行う(ステップS824)。
さらに、サブCPU71は、サムチェックした結果、ゲームデータは正常であるか否かを判断する(ステップS825)。サブCPU71は、ゲームデータが正常であると判断した場合は2msの周期待ちをして(ステップS809)、再度キューから受信データを取得する(ステップS810)。
サブCPU71は、ゲームデータが異常であると判断した場合は、エラー情報登録手段71eがデータ破壊エラーの発生をエラー情報履歴格納領域73d−1に登録する(ステップS826)。そして、サブCPU71は、2msの周期待ちをして(ステップS809)再度キューから受信データを取得する(ステップS810)。
また、サブCPU71は、ステップS812において受信データに物理層エラーが発生したと判断した場合、あるいはステップS815においてコマンドは適正範囲内ではないと判断した場合、あるいはステップS817においてBCCチェック処理の結果が正常ではないと判断した場合は、通信エラーが発生したと判断し、後述するCOMエラーチェック処理を実行する(ステップS827)。そして、サブCPU71は、2msの周期待ちをして(ステップS809)再度キューから受信データを取得する(ステップS810)。なお、サブCPU71が、ステップS815においてコマンドは適正範囲内ではないと判断した場合や、ステップS817においてBCCチェック処理の結果が正常ではないと判断した場合は、復号化したデータにエラー要因が含まれていたことになる。
次に、図65を参照してステップS813の受信データ復号化処理について説明する。なお、図65は、本実施の形態の副制御回路70で行われる受信データ復号化処理のフローチャートを示す図である。
サブCPU71は、サブROM72に記憶された復号化情報領域72j(図8参照)を参照し、復号化処理を行うための復号化シーケンスはデータ入れ替えか否かを判断する(ステップS1321)。サブCPU71がデータ入れ替えと判断しなかったときには、後述のステップS1325に進む。
サブCPU71がデータ入れ替えと判断したときには、データの入れ替えパターンはAか否かを判断する(ステップS1322)。サブCPU71は、データの入れ替えパターンはAと判断したときには、通信一時格納領域の送信データを図15に示したデータ入替パターンAで復号化し(ステップS1323)、受信データ復号化処理を終了する。
サブCPU71は、データの入れ替えパターンはAと判断しなかったときには、通信一時格納領域の送信データをデータ入替パターンB(図16参照)で復号化し(ステップS1324)、受信データ復号化処理を終了する。
ステップS1321において、サブCPU71は、データ入れ替えと判断しなかったときには、演算パターンはAか否かを判断する(ステップS1325)。サブCPU71は、演算パターンはAと判断したときには、通信一時格納領域の送信データを図17に示した演算パターンAで復号化し(ステップS1326)、受信データ復号化処理を終了する。
サブCPU71は、演算パターンはAと判断しなかったときには、通信一時格納領域の送信データを図18に示した演算パターンBで復号化し(ステップS1327)、受信データ復号化処理を終了する。
次に、図66を参照してステップS816の主基板受信データBCCチェック処理について説明する。なお、図65は、本実施の形態の副制御回路70で行われる主基板受信データBCCチェック処理のフローチャートを示す図である。
サブCPU71は、受信データからBCCデータを算出し(ステップS1331)、受信BCCデータを取得する(ステップS1332)。
サブCPU71は、取得したBCCデータが正常か否かを判断する(ステップS1333)。ここでは、1コマンドは8バイトのデータから構成されるので、サブCPU71は、各コマンドの第1バイト〜第7バイトのデータを順にXOR演算し、その結果を予め正しい結果を設定しておいた第8バイトのデータと比較することでチェック処理を行う。
サブCPU71は、取得したBCCデータが正常と判断しなかったときには、BCCが正常か否かを示すレジスタにBBCが異常であることを示す情報をセットする(ステップS1334)。一方、サブCPU71は、取得したBCCデータが正常と判断したときには、BCCが正常か否かを示すレジスタにBBCが正常であることを示す情報をセットし(ステップS1335)、主基板受信データBCCチェック処理を終了する。
次に、図67を参照してステップS820の受信データログ保存処理について説明する。なお、図67は、本実施の形態の副制御回路70で行われる主基板通信受信データログ保存処理のフローチャートを示す図である。この主基板通信受信データログ保存処理は、主としてサブCPU71の受信データログ保存手段71fにより実行される。
主基板通信受信データログ保存処理が実行されると、サブCPU71は、後述する主基板通信受信データログ一時領域保存処理を実行する(ステップS830)。主基板通信受信データログ一時領域保存処理は、図13に示す通信ログ収集用リングバッファ領域73e−1を用いるとともに、エラー発生の有無に関わらず、全ての通信ログを保存するための処理となっている。
続いて、サブCPU71は、後述する主基板通信エラー履歴データ保存処理を実行する(ステップS831)。主基板通信エラー履歴データ保存処理は、図14に示す通信エラー保存領域を用いるとともに、通信エラーが発生した場合に、関連する通信ログを保存するための処理となっている。その後、サブCPU71は、主基板通信受信データログ保存処理を終了する。
次に、図68を参照してステップS830の主基板通信受信データログ一時領域保存処理について説明する。なお、図68は、本実施の形態の副制御回路70で行われる主基板通信受信データログ一時領域保存処理のフローチャートを示す図である。
主基板通信受信データログ一時領域保存処理が実行されると、サブCPU71は、通信ログ収集用リングバッファ領域73e−1の通信ログデータバッファインデックスを取得する(ステップS840)。ここでのバッファ数は、適宜設定されている。
そして、サブCPU71は、通信ログ収集用リングバッファ領域73e−1の通信ログデータバッファ保存位置を算出する(ステップS841)。ここでは、サブCPU71は、バッファインデックスの値から、通信ログ収集用リングバッファ領域73e−1における保存位置を算出する。
さらに、サブCPU71は、通信ログ収集用リングバッファ領域73e−1に受信データを保存する(ステップS842)。本実施の形態では、図13に示すように、コマンドと各コマンドに対応するパラメータとを連続した数値のセットが、最大で256セット保存されるようになっている。そして、サブCPU71は、通信ログデータバッファインデックスを更新する(ステップS843)。ここでは、サブCPU71は、受信データを保存したバッファインデックスを1つ加算する。
そして、サブCPU71は、バッファインデックスの値が上限値であるか否かを判断する(ステップS844)。サブCPU71は、バッファインデックスの値が上限値であると判断した場合は、通信ログデータバッファインデックスを先頭の1に戻し(ステップS845)、本バッファをリングバッファとして機能させる。その後、サブCPU71は、主基板通信受信データログ一時領域保存処理を終了する。また、サブCPU71は、バッファインデックスの値が上限値でないと判断した場合は、そのまま主基板通信受信データログ一時領域保存処理を終了する。
次に、図69を参照してステップS831の主基板通信エラー履歴データ保存処理について説明する。なお、図69は、本実施の形態の副制御回路70で行われる主基板通信エラー履歴データ保存処理のフローチャートを示す図である。
主基板通信エラー履歴データ保存処理が実行されると、サブCPU71は、通信エラー保存バッファ領域73f−1の保存バッファ選択インデックスを取得する(ステップS850)。そして、サブCPU71は、保存バッファ選択インデックスに基づいて通信エラー保存バッファを選択する(ステップS851)。
ここで、サブCPU71は、通信エラー(COMエラー)が発生したか否かを判断する(ステップS852)。サブCPU71が、COMエラーが発生したと判断した場合は、受信データログ保存手段71fがステップS851において選択された通信エラー保存バッファ領域73f−1に、通信エラーに関連する通信ログを保存する(ステップS853)。そして、サブCPU71は、その選択されたバッファインデックスを更新する(ステップS854)。その後、サブCPU71は、主基板通信エラー履歴データ保存処理を終了する。
また、サブCPU71が、COMエラーが発生していないと判断した場合は、選択されたバッファインデックスを取得する(ステップS855)。そして、サブCPU71は、受信データを収集中であるか否かを判断する(ステップS856)。サブCPU71は、受信データを収集中でないと判断した場合は、主基板通信エラー履歴データ保存処理を終了する。
サブCPU71は、受信データを収集中であると判断した場合は、バッファインデックスの値が上限値であるか否かを判断する(ステップS857)。本実施の形態では、バッファインデックスの値は0〜255であり、上限値は255となっている。サブCPU71は、バッファインデックスの値が上限値でないと判断した場合は、ステップS851において選択された通信エラー保存バッファに受信データを保存する(ステップS858)。そして、サブCPU71は、その選択されたバッファインデックスを更新する(ステップS859)。その後、サブCPU71は、主基板通信エラー履歴データ保存処理を終了する。
サブCPU71は、バッファインデックスの値が上限値であると判断した場合は、保存バッファ選択インデックスを取得する(ステップS860)。そして、サブCPU71は、保存バッファ選択インデックスの値が上限値であるか否かを判断する(ステップS861)。本実施の形態では、保存バッファ選択インデックスの上限値は1024である。
サブCPU71は、保存バッファ選択インデックスの値が上限値でないと判断した場合(ステップS861)は、保存バッファ選択インデックスを更新する(ステップS862)。ここでは、サブCPU71は、保存バッファ選択インデックスを1つ加算する。その後、サブCPU71は、主基板通信エラー履歴データ保存処理を終了する。サブCPU71は、バッファ選択インデックスの値が上限値であると判断した場合(ステップS861)は、主基板通信エラー履歴データ保存処理を終了する。
次に、図70を参照してステップS820の主基板受信コマンドチェック処理について説明する。なお、図70は、本実施の形態の副制御回路70で行われる主基板受信コマンドチェック処理のフローチャートを示す図である。
主基板受信コマンドチェック処理が実行されると、サブCPU71は、受信データを取得する(ステップS870)。そして、サブCPU71は、受信コマンドチェックテーブルをセットする(ステップS871)。さらに、サブCPU71は、前回(直前の回)の受信データを取得する(ステップS872)。
そして、サブCPU71は、コマンドチェックカウンタをセットする(ステップS873)。さらに、サブCPU71は、受信プロトコル確認データテーブルから確認データを取得する(ステップS874)。つまり、ここでは、図55に示す受信コマンドおよび前回受信コマンドのテーブルを取得する。
次に、サブCPU71は、ステップS874で取得した受信コマンドおよび前回受信コマンドのテーブルをチェックして、受信コマンドは異常な順序か否かを判断する(ステップS875)。例えば、Dataの03Hに示した受信コマンドが「BET」の場合、前回の受信コマンドが、デモ表示、BET、払出終了、ボーナス開始またはエラーであれば、手順は正常な順序であると判断する。
サブCPU71は、ステップS875において、受信コマンドは異常な順序ではない、即ち正常な順序であると判断した場合は、受信コマンドチェック処理を終了する。
サブCPU71は、ステップS875において、受信コマンドは異常な順序であると判断した場合、例えば、図55に示すテーブルにおいて、Dataの07Hに示した受信コマンドが「表示」の場合、前回の受信コマンドが全回胴停止状態ではなく第2停止の場合には、通常の遊技で行われる手順ではないと判断し、受信コマンドチェックテーブルを更新する(ステップS876)。そして、サブCPU71は、コマンドチェックカウンタを減算する(ステップS877)。
ステップS877に続いて、サブCPU71は、コマンドチェックが終了したか否かを判断する(ステップS878)。ここでは、サブCPU71は、例えばコマンドチェックカウンタが0等の閾値以下になったことでコマンドチェックが終了したと判断するようになっている。
サブCPU71は、ステップS878において、コマンドチェックが終了していないと判断した場合は、再度、受信プロトコル確認データテーブルから確認データを取得する(ステップS874)。
サブCPU71は、ステップS878において、コマンドチェックが終了したと判断した場合は、エラー情報登録手段71eが異常手順エラー(シーケンスエラー)の発生をエラー情報履歴格納領域73dに登録する(ステップS879)。その後、サブCPU71は、受信コマンドチェック処理を終了する。
次に、図71を参照してステップS826のCOMエラーチェック処理について説明する。なお、図71は、本実施の形態の副制御回路70で行われるCOMエラーチェック処理のフローチャートを示す図である。
COMエラーチェック処理が実行されると、サブCPU71は、受信データログ保存処理を実行する(ステップS880)。この受信データログ保存処理の手順は、図67に示す主基板通信受信データログ保存処理のフローチャートの通りである。この場合、図69に示すステップS852において、COMエラーが発生したものと判断され、受信データログ保存手段71fは、通信エラー保存バッファ領域73f−1に通信エラーに関連する通信ログを保存する(ステップS853)。
そして、サブCPU71は、COMエラータイマがカウント中であるか否かを判断する(ステップS881)。サブCPU71は、COMエラータイマがカウント中であると判断した場合は、COMエラータイマが30分以内であるか否かを判断する(ステップS882)。
サブCPU71は、COMエラータイマが30分以内であると判断した場合は、エラー情報登録手段71eが通信エラー(COMエラー)の発生をエラー情報履歴格納領域73d−1に登録する(ステップS883)。そして、サブCPU71は、COMエラータイマのカウントストップをセットして(ステップS884)、COMエラーチェック処理を終了する。
また、サブCPU71は、COMエラータイマがカウント中でないと判断した場合、またはCOMエラータイマが30分以内でないと判断した場合は、COMエラータイマのカウントスタートをセットして(ステップS885)、COMエラーチェック処理を終了する。
以上説明したように、本実施の形態の遊技機の管理システムは、データ管理サーバ500により受信された二次元コード300からエラー情報を取得し、エラー情報に基づいてエラーの原因を解析する解析用PC600を備えている。
したがって、従来のように遊技機1において単に通信エラーの内容を特定するだけに止まらず、別個に設置された解析用PC600を用いてエラー情報からエラーの原因を解析して特定できるようになる。得られたエラーの原因は、遊技機1のその後の改良等に利用することができる。
また、本実施の形態の遊技機1では、サブCPU71により通信エラーの発生が検出された場合に限り、通信エラーに関する通信エラー情報を二次元コード300に変換するので、必要以上に二次元コードを作成する場合に比べて制御を簡素化することができる。
また、本実施の形態の遊技機1では、ドアキー2の操作によりエラー情報履歴を液晶表示装置5に表示させることができるので、係員は遊技機1の設定キーを操作することなくエラー情報履歴を確認できるようになる。このため、係員は営業時間中であっても遊技機1のエラー情報履歴を表示させることができるので、エラーの原因特定をより効果的に促進できるようになる。
しかも、本実施の形態の遊技機1では、係員はドアキー2を左回転方向へ回転させて、遊技機1のエラーをリセットさせた状態を一定時間保持することにより、エラー情報履歴を表示するようになっている。このため、ドアキー2を保有している係員であれば容易にエラー情報履歴を表示できるとともに、通常はドアキー2を保有する係員は設定キーを保有する係員よりも多いことから、利便性を向上することができる。
また、本実施の形態の遊技機1では、サブCPU71は、通信エラーの発生が検出された場合に、通信異常が発生したことと、その発生時刻と、その解除時刻とをエラー情報としてサブRAM73−1に逐次記憶させるようになっている。
さらに、サブCPU71は、記憶したエラー情報からエラー情報履歴を作成し、ドアキー2の操作により情報開示要求があった場合に、エラー情報履歴を液晶表示装置5に表示させる。
このため、遊技機1での通信エラー報知の不正な解除を確認できるとともに、通信エラー報知の発生時刻や解除時刻を後から確認できるようになる。
また、本実施の形態の遊技機1では、サブCPU71は、手順検出手段71cにより通常の遊技では起こりえない手順、すなわち、異常な手順で遊技が進行したことが検出された場合に、そのような異常な手順が発生したことと、正常な手順のうちで取りこぼした手順とをエラー情報としてサブRAM73−1に逐次記憶させるようになっている。
さらに、サブCPU71は、記憶したエラー情報からエラー情報履歴を作成し、ドアキー2の操作により情報開示要求があった場合に、エラー情報履歴を液晶表示装置5に表示させる。
例えば、図53に液晶表示領域23にエラー情報履歴の一例を示す。例えば、No.7に示すエラー内容の「BLS123PE」では、通常、メダル等の投入を表す「B」の手順の次に、レバーの操作によるリールの回転開始を表す「L」および「S」の手順、リール1の停止を表す「1」の手順、リール2の停止を表す「2」の手順、リール3の停止を表す「3」の手順、支払の「P」の手順が続いて遊技が終了する。
しかし、そこでは、数字の「1」を丸で囲み、リール1の停止の手順を取りこぼしたことを示している。このため、従来のように異常な手順が発生すると単にデモ画面に戻ってしまう場合に比べ、通常の遊技では起こりえない手順が発生したこと、取りこぼした手順、発生件数、連続発生の有無等を確認できるようになるので、ゴトの発生を判断材料の1つにすることができる。なお、取りこぼした手順は、丸で囲む以外に、文字自体の色で区別したり、書体を異なるものにしたり、文字の線を太くしたりすることによって明瞭に表すことができる。
また、本実施の形態の遊技機1では、サブCPU71は、データ破壊検出手段71dによりサブRAM73−1のデータ破壊が検出された場合に、データ破壊が発生したことをエラー情報としてサブRAM73−1に逐次記憶させるようになっている(ステップS825)。さらに、サブCPU71は、ドアキー2の操作により情報開示要求があった場合に、エラー情報履歴格納領域73d−1からエラー情報履歴を読み出して液晶表示装置5に表示させる。
このため、この遊技機1によれば遊技中のサブRAM73−1のデータ破壊を検出できるようになるので、データ破壊に対し直ちにエラー報知をすることでゴトの発生を抑制することができる。
エラー報知としては、例えば、図57に示すように、副制御回路70のサブRAM73−1のデータが破壊された場合に、致命的なエラーとして、遊技機1の液晶表示領域23のほぼ全面に、RAMデータに異常が生じたため遊技を続行できない旨を示す。これにより、ゴト行為によるRAM破壊行為を抑制することができる。このような報知の解除は、例えば電源切断等の設定変更によって行う。
また、上述した本実施の形態の遊技機においては、遊技機1をパチスロ機とした場合について説明した。しかしながら、本発明に係る遊技機においては、これに限られず、後述するように、例えば、図柄の変動表示装置を有するパチンコ機に対しても適用することができる。
また、上述した本実施の形態の遊技機においては、二次元コード300は通信エラー履歴データのみを含むものとして説明した。しかしながら、本発明に係る遊技機においては、これに限られず、例えば、エラー情報履歴あるいは遊技者の遊技記録を含むようにしてもよい。
以上のように、本実施の形態の遊技機は、副制御回路とスケーラ装置との間で通信エラーが生じた場合に、エラーの発生の日時および内容を確認することができ、パチスロ等の遊技機および遊技機の管理方法に有用である。
図59に示すマザータスクのフローチャートにおいて、主基板通信タスク起動要求に応答してOSから主基板通信タスク起動要求がでると(ステップS1005)、上記の通り、主基板通信タスクが、図64に示すフローチャートに沿って実行される。
また、RTC制御タスクは、図72に示すフローチャットに沿って実行される。まず、サブCPU71は、OSの時間管理として100msの周期設定を行う(ステップS1011)。次に、サブCPU71は、外付けRTC70cから日時を読み込み(ステップS1012)、その読み込んだ外付けRTC70cの日時を内蔵RTC70aの初期値として設定する(ステップS1013)。
次に、サブCPU71は、外付けRTC70cからステータス情報を読み込み(ステップS1014)、ステータス情報を正常に読み込むことができたか否かを判断し(ステップS1015)、正常に読み込めた場合には、電源に異常があるか否かを判断し(ステップS1016)、電源異常がない場合には、発振異常があるか否かを判断し(ステップS1017)、発振異常がない場合には、リセット信号を検出したか否かを判断し(ステップS1018)、リセット信号を検出しない場合には、外付けRTC70cから日時を読み込む(ステップS1019)。
この日時を読み込んだ時に、サブCPU71は、日時の範囲に異常があるか否かを判断する(ステップS1020)。例えば、年、月、日または時間の値が2桁を越えている場合には日時範囲に異常があると判断する。サブCPU71は、日時範囲に異常があると判断したときには、図12のテーブルに示すように、RTCの時刻異常として、エラーコード(RTC TIM)をサブRAM73−1のエラー情報履歴格納領域73d−1に登録する(ステップS1021)。
一方、サブCPU71は、ステップS1015において、外付けRTC70cからステータス情報を正常に読み込むことができないと判断した場合には、エラー情報履歴格納領域73d−1に、RTC通信回線異常として、エラーコード(RTC DSC)を登録する(ステップS1021)。
サブCPU71は、ステップS1016において、外付けRTC70cに関して電源に異常があると判断した場合には、エラー情報履歴格納領域73d−1に、RTC電圧低下として、エラーコード(RTC POWER)を登録する(ステップS1021)。
また、サブCPU71は、ステップS1017において、外付けRTC70cに関して発振異常があると判断した場合には、エラー情報履歴格納領域73d−1に、発振停止検出として、エラーコード(RTC CLK)を登録する(ステップS1021)。
サブCPU71は、上記のように、ステップS1021において、外付けRTC70cのエラー種別に対応したエラーコードをエラー情報として登録すると、外付けRTC70cを初期化し、外付けRTC70cに内蔵RTC70aの現在の日時を設定する(ステップS1022)。
このように、外付けRTC70cを初期化し、外付けRTC70cに内蔵RTC70aの現在の日時を設定した場合、またはステップS1019によって外付けRTC70cから読み込んだ日時の範囲に異常がないとステップS1020において判断した場合には、サブCPU71は、係員操作画面から外付けRTC70cの日時の設定に変更がされているか否かを判断し(ステップS1023)、変更されている場合には、内蔵RTC70aの日時データを外付けRTC70cに設定する(ステップS1024)。
ステップS1024において内蔵RTC70aの日時データを外付けRTC70cに設定した場合、または、ステップS1023において、外付けRTC70cの日時の設定に変更がないと判断した場合には、サブCPU71は、100msの周期待ちをして(ステップS1025)、再度外付けRTC70cからステータス情報を読み込む(ステップS1014)。
次に、図73を参照しながら、サブ制御バックアップメモリ(SRAM)73−2の管理処理について説明する。図73は、サブRAM管理処理のフローチャートを示す。
まず、サブCPU71は、SRAM73−2のバックアップデータ1領域73a−2のサム値を計算して、4バイトのバックアップデータ1サム値を得る(ステップS1031)。
次に、サブCPU71は、その取得したサム値が正常であるか、かつ、バックアップデータ1領域73a−2のマジックコードとサブROM72のプログラム管理データ領域72fのマジックコードとが同一か否かを判断し(ステップS1032)、YESの場合には、バックアップRAM73−2のバックアップデータ1領域73a−2をサブRAM73−1のゲームデータ領域73a−1に複写する(ステップS1033)。
ステップS1032において、サブCPU71は、NOと判断した場合には、バックアップデータ1領域73a−2のミラーリングであるバックアップデータ2領域73c−2のサム値を計算して、4バイトのバックアップデータ2サム値を得る(ステップS1034)。
ステップS1034に続いて、サブCPU71は、その取得したサム値が正常であるか、かつ、バックアップデータ2領域73c−2のマジックコードとサブROM72のプログラム管理データ領域72fのマジックコードとが同一かを判断する(ステップS1035)。
ステップS1035の判断がYESの場合には、サブCPU71は、バックアップRAM73−2のバックアップデータ2領域73c−2をサブRAM73−1のゲームデータ領域73a−1に複写する(ステップS1036)。
ステップS1035の判断がNOの場合には、サブCPU71は、サブROM72のゲームデータ初期化設定データ領域72cをサブRAM73−1のゲームデータ領域73a−1に複写する(ステップS1037)。
ステップS1036またはステップS1037が実行された場合、サブCPU71は、ゲームデータサム異常として、エラーコード(MEM ERR 1)をエラー情報履歴格納領域73d−1に登録する(ステップS1038)。ただし、このRAMデータ異常を報知する図57に示すような画面は表示されない。
ステップS1033の処理またはステップS1038の処理を実行した後、サブCPU71は、係員バックアップデータ領域73e−2から4バイトのサム値を計算して、それを係員バックアップデータサム値領域73g−2に保存する(ステップS1039)。
次に、サブCPU71は、その保存した係員バックアップデータ領域73e−2のサム値が正常であるかを判断し(ステップS1040)、正常と判断した場合には、係員バックアップデータ領域73e−2をサブRAM73−1の係員操作設定データ領域73g−1に複写する(ステップS1041)。
ステップS1040の判断がNOの場合には、サブCPU71は、サブROM72の係員操作初期設定データ領域72dのデータをサブRAM73−1の係員操作設定データ領域73g−1に複写する(ステップS1042)。
ステップS1042を実行した後、サブCPU71は、エラー情報履歴格納領域73d−1に、係員操作設定データサム異常として、エラーコード(MEM ERR 2)を登録する(ステップS1043)。このRAMデータ異常についても、図57に示すような異常を報知する画面は表示されない。
次に、ステップS1041またはステップS1043を実行した後、サブCPU71は、後述する図74に示すバックアップ作成処理を実行する(ステップS1044)。
上記のように、サブCPU71が、その取得したサム値が正常であるか、かつ、バックアップデータ2領域73c−2のマジックコードとサブROM72のプログラム管理データ領域72fのマジックコードとが同一かを判断し(ステップS1035)、少なくともサム値またはマジックコードが同一でない場合には、サブCPU71が、サブROM72のゲームデータ初期化設定データ領域72cをサブRAM73−1のゲームデータ領域73a−1に複写する(ステップS1037)。
また、サブCPU71は、係員バックアップデータ領域73e−2のサム値が正常であるかを判断し(ステップS1040)、異常な場合には、サブROM72の係員操作初期設定データ領域72dのデータをサブRAM73−1の係員操作設定データ領域73g−1に複写する(ステップS1042)。
これらにより、電源投入時に、サブRAM73−1のデータが破損しているか確認することができ、また、破損したSRAMデータを使用することなく、自動的に初期値を設定することができる。
図74は、図42に示すサブRAM管理処理のバックアップ作成処理のフローチャートである。この処理により、データが破壊されていたとしても正しい値をバックアップとして保存できるようになる。なお、上記の通り、このバックアップ作成処理は、図60に示す電断割込処理でも実行される。
最初に、サブCPU71は、ゲームデータ領域73a−1のサム値を作成し、その作成したサム値をゲームデータサム値領域73b−1に保存する(ステップS1051)。次に、サブCPU71は、ゲームデータ領域73a−1をバックアップデータ1領域73a−2に複写し、ステップS1051で保存したサム値をバックアップデータ1サム値領域73b−2に保存する(ステップS1052)。
次に、サブCPU71は、ゲームデータ領域73a−1をバックアップデータ1領域73a−2のミラーリングとしてのバックアップデータ2領域73c−2に複写し、ステップS1051で保存したサム値をバックアップデータ2サム値領域73d−2に保存する(ステップS1053)。
次に、サブCPU71は、係員操作設定データ領域73g−1のサム値を作成して、その作成したサム値を係員操作設定データサム値領域73h−1に保存する(ステップS1054)。
次に、サブCPU71は、係員操作設定データ領域73g−1を係員バックアップデータ領域73e−2に複写し、ステップS1054で保存したサム値を係員バックアップデータサム値領域73g−2に保存する(ステップS1055)。これにより、バックアップ作成処理は終了する。
以上のように、本実施の形態における遊技機1は、主制御回路60から副制御回路70に送信するコマンドを暗号化する構成としたので、第三者がコマンドを解析することが困難となる。また、本実施の形態における遊技機1は、主制御回路60で暗号化されたコマンドを副制御回路70で復号化し、復号化したコマンドが予め定められたコマンドと一致しなかった場合や、BCCのデータが一致しなかった場合に、エラー情報として登録し、液晶表示装置5にエラー履歴を表示する構成としたので、不正行為により発生したエラー情報の有効利用を図ることができる。その結果、本実施の形態における遊技機1は、それが設置された店舗の係員にエラー情報を表示したり、エラー情報を解析することにより次機種の開発に反映したりすることができる。
[パチンコ遊技機の構成]
本発明は、パチスロに限定されるものではなく、パチンコ遊技機にも適用することができる。以下、パチンコ遊技機について説明する。
図75、図76に示すように、パチンコ機1010は、ガラスドア1011、木枠1012、ベースドア1013、遊技盤1014、皿ユニット1020、画像を表示する液晶表示装置1032、遊技球を発射する発射装置1130、図示しない払出ユニット及び基板ユニット等から構成されている。
ガラスドア1011は、ベースドア1013に対して回転軸により開閉自在になるように取り付けられている。ガラスドア1011の中央には、開口1011aが形成されており、その開口1011aには、透過性を有する保護ガラス1019が配設されている。
皿ユニット1020は、上皿1021及び下皿1022を一体化したユニット体であり、ベースドア1013におけるガラスドア1011の下部に配設されている。上皿1021及び下皿1022には、遊技球の貸し出し、遊技球の払い出し(賞球)を行うための払出口1021a、1022aが形成されており、所定の払出条件が成立した場合には、遊技球が排出され、特に、上皿1021には、後述する遊技領域1015に発射させるための遊技球が貯留される。
発射装置1130は、ベースドア1013の右下部に配設され、遊技者によって操作可能な発射ハンドル1026と、皿ユニット1020の右下部に適合するパネル体1027とを備えている。発射ハンドル1026は、パネル体1027の表側に設けられている。パネル体1027の裏側には遊技球を発射するための駆動装置が設けられている。遊技者は、発射ハンドル1026を操作することで遊技球を発射して遊技を進めることができる。
遊技盤1014は、保護ガラス1019の後方に位置するように、ベースドア1013の前方に配設されている。遊技盤1014の後方には、液晶表示装置1032などが配設されている。ベースドア1013の後方には、払出ユニット及び基板ユニットが配設されている。下皿1022の下部には、図示しない演出用のスピーカが配設されている。
遊技盤1014は、その全部が透過性を有する板形状のアクリル樹脂、ポリカーボネート樹脂、メタクリル樹脂など各種樹脂(透過性を有する部材)によって形成されている。また、遊技盤1014は、その前面側に、発射された遊技球が転動流下可能な遊技領域1015を有している。遊技領域1015には、複数の遊技釘1017が打ちこまれている。また、遊技盤1014の左下部には、LEDユニット1053が設けられている。
液晶表示装置1032は、遊技盤1014の後方(背面側)に配設されている。液晶表示装置1032は、遊技に関する画像の表示を可能とする表示領域1032aを有している。表示領域1032aには、演出用の識別図柄、演出画像、装飾用の装飾画像など、各種の画像が表示される。
発射ハンドル1026は回転自在であり、その裏側には駆動装置である発射ソレノイド(図示せず)が設けられている。さらに、発射ハンドル1026の周縁部には、タッチセンサ(図示せず)が設けられている。発射ハンドル1026の内部には、発射ハンドル1026の回転量に応じて抵抗値を変化させ、発射ソレノイド(図示せず)に供給する電力を変化させる発射ボリュームが設けられている。
タッチセンサ(図示せず)に遊技者が接触したときには、遊技者により発射ハンドル1026が握持されたと検知される。発射ハンドル1026が遊技者によって握持され、かつ、時計回り方向へ回転操作されたときには、その回転角度に応じて発射ボリューム(図示せず)の抵抗値が変化し、この時の抵抗値に対応する電力が発射ソレノイド(図示せず)に供給される。その結果、上皿1021に貯留された遊技球が遊技領域1015に順次発射され、遊技が進められる。なお、発射停止ボタン(図示せず)が押下された場合には、発射ハンドル1026を握持しかつ回転させた状態であっても遊技球の発射が停止される。
遊技盤1014の左下方には、一般入賞口1056a、1056b、1056cを形成する部材が配置されており、この部材におけるLEDユニット1053との対向部位は透明になっている。このため、遊技盤1014の左下方からLEDユニット1053が視認可能となる。LEDユニット1053には、図77に図示した特別図柄表示装置、普通図柄表示装置1033、第1特別図柄保留表示LED1034a、1034b、第2特別図柄保留表示LED1034c、1034d、普通図柄保留表示LED1050a、1050b等が設けられている。
特別図柄表示装置は、16個のLEDによって構成されている。これら16個のLEDは、8個のLEDからなる2つのグループに分かれており、一方のグループは、第1始動口1023への始動入賞を契機として変動表示を行うものであり、他方のグループは、第2始動口1044への始動入賞を契機として変動表示を行うものである。なお、以下の説明の便宜上、一方のLEDのグループを第1特別図柄表示装置1035a(図77参照)、他方のLEDのグループを第2特別図柄表示装置1035b(図77参照)と称する。
第1、第2特別図柄表示装置1035a、1035bのLEDは、所定の特別図柄の変動表示開始条件の成立により、グループ単位で点灯・消灯を繰り返すことで特別図柄の変動表示を行う。そして、特別図柄が、特定の停止表示態様の場合には、通常遊技状態から遊技者に有利な状態である当り遊技状態(特別遊技状態)に遊技状態が移行する。この当り遊技状態となった場合には、後述するように、シャッタ1040が開放状態に制御され、大入賞口1039に遊技球が受け入れ可能な状態となる。
普通図柄表示装置1033は、2つの表示用ランプが交互に点灯・消灯を繰り返すことによって普通図柄として変動表示され、その停止態様により普通電動役物1048の開放が行わる。
普通図柄保留表示LED1050a、1050bは、点灯、消灯又は点滅によって保留されている普通図柄の変動表示の実行回数(いわゆる、「保留個数」、「普通図柄に関する保留個数」)を表示する。
第1特別図柄保留表示LED1034a、1034b及び第2特別図柄保留表示LED1034c、1034dは、点灯、消灯又は点滅によって保留されている特別図柄の変動表示の実行回数(いわゆる、「保留個数」、「特別図柄に関する保留個数」)を表示する。
また、液晶表示装置1032の表示領域では、第1特別図柄表示装置1035a及び第2特別図柄表示装置1035bにおいて表示される特別図柄と関連する演出画像が表示される。
図76に示すように、遊技盤1014上には、2つのガイドレール1030(1030a及び1030b)、ステージ1055、第1始動口1023、第2始動口1044、通過ゲート1054、シャッタ1040、大入賞口1039、一般入賞口1056a、1056b、1056c、1056d、普通電動役物1048等が設けられている。
ステージ1055は遊技盤1014の上部に設けられ、ガイドレール1030は遊技領域1015を囲むように設けられている。
ガイドレール1030は、外レール1030aと、内レール1030bとから構成される。発射された遊技球は、ガイドレール1030に案内されて、遊技盤1014の上部に移動し、前述した複数の遊技釘(図示せず)、ステージ1055などとの衝突により、その進行方向を変えながら遊技盤1014の下方に向かって流下する。具体的には、ステージ1055の左側を流下する系統(いわゆる、左打ち)と、発射ハンドル1026を右側に最大に回転させて、ステージ1055の右側に遊技球を打ち込み、ステージ1055の右側を流下する系統(いわゆる、右打ち)がある。
第1始動口1023は、遊技盤1014の中央の下方に設けられている。通過ゲート1054はステージ1055の右側上部に設けられ、この通過ゲート1054の下方に第2始動口1044が設けられている。普通電動役物1048は、第2始動口1044に設けられている。
また、普通電動役物1048は、遊技盤面に対して前後方向に、突出、引き込みを行う舌状部材1048aを備えている。普通電動役物1048は、舌状部材1048aの突出時に第2始動口1044への遊技球の入賞を可能とし、引き込み時に第2始動口1044への遊技球の入賞を不可能としている。なお、普通電動役物1048は、一対の羽根部材が開放、閉鎖するもの(いわゆる、電動チューリップ)であってもよい。
また、右打ち時は、遊技釘1017によって遊技球がステージ1055の右側から第1始動口1023に入賞不可能なように構成されている。
また、普通図柄の変動表示中において通過ゲート1054を遊技球が通過した場合には、普通図柄保留表示LED1050a、1050bによる表示態様を切り換えて、変動表示中の普通図柄が停止表示されるまで、当該通過ゲート1054への遊技球の通過に基づく普通図柄の変動表示の実行(開始)が保留される。その後、変動表示していた普通図柄が停止表示された場合には、保留されていた普通図柄の変動表示が開始される。
なお、普通図柄表示装置1033において普通図柄として特定の図柄が停止表示された場合には、普通図柄抽選が当選であることを遊技者に把握させる演出画像が液晶表示装置1032の表示領域において表示されるようにしてもよい。
また、シャッタ1040は、第1始動口1023の直下に配置され、大入賞口1039を開閉するようになっている。シャッタ1040の直下の遊技領域1015の最下部位には、アウト口1057が形成されている。一般入賞口1056a、1056b、1056cは、遊技領域1015の左側下部に設けられている。また、遊技領域1015の右側下部には、一般入賞口1056dが設けられている。
また、前述した第1始動口1023内には入賞領域が設けられ、この入賞領域には第1始動入賞口スイッチ1116(図77参照)が備えられている。第2始動口1044内には入賞領域が設けられ、この入賞領域には第2始動入賞口スイッチ1117(図77参照)が備えられている。遊技球が第1始動入賞口スイッチ1116によって検出されると、第1特別図柄表示装置1035aによる特別図柄の変動表示が開始される。
また、特別図柄の変動表示中に第1始動口1023へ遊技球が入球した場合には、変動表示中の特別図柄が停止表示されるまで、第1始動口1023への遊技球の入球に基づく特別図柄の変動表示の実行(開始)が保留される。その後、変動表示していた特別図柄が停止表示された場合には、保留されていた特別図柄の変動表示が開始される。なお、以降の説明において、第1始動口1023への遊技球の入球に基づいて第1特別図柄表示装置1035aに変動表示される特別図柄を第1特別図柄と称する。
また、遊技球が第2始動入賞口スイッチ1117によって検出された場合、第2特別図柄表示装置1035bによる特別図柄の変動表示が開始される。また、特別図柄の変動表示中に第2始動口1044へ遊技球が入球した場合には、変動表示中の特別図柄が停止表示されるまで、第2始動口1044への遊技球の入球に基づく特別図柄の変動表示の実行(開始)が保留される。その後、変動表示していた特別図柄が停止表示された場合には、保留されていた特別図柄の変動表示が開始される。なお、以降の説明において、第2始動口1044への遊技球の入球に基づいて第2特別図柄表示装置1035bに変動表示される特別図柄を第2特別図柄と称する。
ここで、第1特別図柄表示装置1035aと第2特別図柄表示装置1035bとは同時に特別図柄が変動することはない。また、第2始動口1044への始動入賞を優先に特別図柄の変動表示が行われる。
なお、第1始動口1023、第2始動口1044への入球による特別図柄の変動表示の保留数は、それぞれ4回を上限としている。したがって、最大8回の保留が可能になる。
また、その他の(所定の特別図柄の変動表示開始)条件としては、特別図柄が停止表示されていることである。つまり、所定の特別図柄の変動表示開始条件が成立する毎に特別図柄の変動表示が開始される。
第1特別図柄表示装置1035a及び第2特別図柄表示装置1035bにおいて特別図柄が特定の停止表示態様となって、遊技状態が大当り遊技状態に移行された場合は、シャッタ1040が開放状態となるように駆動される。その結果、大入賞口1039は、遊技球を受け入れやすい開放状態(第1の状態)となる。
一方、シャッタ1040の背面側(後方)に設けられた大入賞口1039には、カウントスイッチ1104(図77参照)を有する領域(図示せず)があり、その領域を遊技球が所定個数(例えば7個)通過するか、又は所定時間(例えば、約0.1秒あるいは約30秒)が経過するまでシャッタ1040が開放状態に駆動される。そして、開放状態において大入賞口1039への所定数の遊技球の入賞又は所定時間の経過のいずれかの条件が成立すると、シャッタ1040は、閉鎖状態になるように駆動される。その結果、大入賞口1039は、遊技球を受け入れ難い閉鎖状態となる(第2の状態)。
なお、一定時間において、大入賞口1039が遊技球を受け入れやすい状態となっている遊技をラウンドゲームという。したがって、シャッタ1040は、ラウンドゲーム時に開放し、各ラウンドゲーム間では閉鎖することになる。また、ラウンドゲームは、"1"ラウンド、"2"ラウンド等のラウンド数として計数される。例えば、ラウンドゲームの1回目を第1ラウンド、2回目を第2ラウンドと呼称する場合がある。なお、この例においては、1ラウンドにおいて、複数回シャッタ1040を開閉して、開放状態となる時間を一定時間とする場合がある。
続いて、開放状態から閉鎖状態(第2の状態)に駆動されたシャッタ1040は、再度開放状態に駆動される。つまり、ラウンドゲームが終了した場合には、次のラウンドゲームへ継続して進むことができる。なお、第1ラウンドのラウンドゲームから、次のラウンドゲームに継続して進むことができない(最終の)ラウンドゲームが終了するまでの遊技を特別遊技あるいは大当り遊技という。なお、この例においては、全ての大当りは15ラウンドである。
また、前述した第1始動口1023、第2始動口1044、一般入賞口1056a〜1056d、大入賞口1039に遊技球が入賞したときには、それぞれの入賞口の種類に応じて予め設定されている数の遊技球が上皿1021又は下皿1022に払い出される。
また、この例においては、大当り遊技終了後に、普通図柄抽選の当選確率が高確率状態となり、普通電動役物1048によるサポートによって特別図柄ゲームの保留球が貯まりやすくなる時短状態に移行する場合がある。ここで、時短状態においては、通過ゲート1054に遊技球を通過させることが、普通図柄抽選を実行させる条件となるため、右打ちをしながら遊技を進行することになる。
また、右打ち状態で大当りが発生した場合には、そのまま右打ちを継続することにより、大入賞口1039へ入賞させることが可能である。また、普通電動役物1048によるサポートが受けられない場合には、左打ちをしながら遊技を進行することになる。
また、図75に示すように、上皿1021の前面には、演出ボタン1080a,1080b,1080cが設けられており、目押しゲーム、カードめくり、すごろく等のようなミニゲーム中に、それらの演出ボタンを押下することにより、液晶表示装置1032における演出表示内容を変えることができる。
なお、パチンコ機1010においては、演出手段の一例として液晶表示装置を記載したが、これに限らず、プラズマディスプレイやリアプロジェクションディスプレイ、CRTディスプレイ、ランプ、スピーカや可動役物等を演出手段として用いてもよい。
次に、図77を参照して、パチンコ機1010の電気的構成について説明する。
図77に示すように、パチンコ機1010は、主に、遊技の制御を行う主制御回路1060と、遊技の進行に応じた演出の制御を行う副制御回路1200とから構成される。
主制御回路1060は、メインCPU1066、メインROM1068(読み出し専用メモリ)、メインRAM1070(読み書き可能メモリ)を備えている。この主制御回路1060は、本発明に係る主制御部を構成する。
メインCPU1066は、本実施の形態のパチスロ遊技機において説明したメインCPU31(図6参照)と同様に、コマンド暗号化手段1066a、コマンド送信手段1066bを備えている。コマンド暗号化手段1066aは、メインROM1068に記憶された暗号化情報に基づいて、メインCPU1066が生成したコマンドを暗号化するようになっている。コマンド送信手段1066bは、暗号化されたコマンドを副制御回路1200に送信するようになっている。
メインCPU1066には、メインROM1068、メインRAM1070等が接続されており、このメインROM1068に記憶されたプログラムに従って、各種の処理を実行する機能を有する。
メインROM1068には、メインCPU1066によりパチンコ機1010の動作を制御するためのプログラム、メイン処理等をメインCPU1066に実行させるためのプログラムや、各種のテーブル等が記憶されている。
メインRAM1070は、メインCPU1066の一時記憶領域として種々のフラグや変数の値を記憶する機能を有する。なお、メインCPU1066の一時記憶領域としては、メインRAM1070に限らず、その他の読み書き可能な記憶媒体を用いてもよい。
また、主制御回路1060は、電源投入時においてリセット信号を生成する初期リセット回路1064、I/Oポート1071、コマンド出力ポート1072を備えている。また、初期リセット回路1064は、メインCPU1066に接続されている。I/Oポート1071は、各種のデバイスからの入力信号をメインCPU1066に、メインCPU1066からの出力信号を各種のデバイスに送信するものである。
コマンド出力ポート1072は、メインCPU1066からのコマンドを副制御回路1200に送信するものである。また、主制御回路1060は、バックアップコンデンサ1074を備えている。バックアップコンデンサ1074は、電断時において、例えば、メインRAM1070に対して速やかに電源を供給することにより、メインRAM1070に記憶されている各種データを保持することに用いられる。
また、主制御回路1060には、各種の装置が接続されている。例えば、主制御回路1060には、第1特別図柄表示装置1035a及び第2特別図柄表示装置1035b、第1特別図柄保留表示LED1034a、1034b及び第2特別図柄保留表示LED1034c、1034d、普通図柄表示装置1033、普通図柄保留表示LED1050a、1050b、普通電動役物1048の舌状部材1048aを突出状態又は引込状態とする始動口ソレノイド1118、シャッタ1040を駆動させ、大入賞口1039を開放状態又は閉鎖状態とする大入賞口ソレノイド1120等が接続されている。
また、主制御回路1060には、ホール係員を呼び出す機能や当り回数を表示するといった機能を有する図示しない呼出装置や、ホール全体のパチンコ機を管理するホールコンピュータ1400にデータ送信するために用いる外部端子板1310が接続されている。
また、主制御回路1060には、例えば、大入賞口1039における領域を遊技球が通過した場合に、所定の検知信号を主制御回路1060に供給するカウントスイッチ1104、各一般入賞口1056を遊技球が通過した場合に、所定の検知信号を主制御回路60に供給する一般入賞口スイッチ1106、1108、1110、1112、通過ゲート1054を遊技球が通過した場合に、所定の検知信号を主制御回路1060に供給する通過ゲートスイッチ1114、第1始動口1023を遊技球が入賞した場合に、所定の検知信号を主制御回路1060に供給する第1始動入賞口スイッチ1116、第2始動口1044を遊技球が入賞した場合に、所定の検知信号を主制御回路1060に供給する第2始動入賞口スイッチ1117、電断時等におけるバックアップデータを遊技場の管理者の操作に応じてクリアするバックアップクリアスイッチ1124等が接続されている。
また、主制御回路1060には、払出・発射制御回路1126が接続されている。この払出・発射制御回路1126には、遊技球の払い出しを行う払出装置1128、遊技球の発射を行う発射装置1130、カードユニット1300が接続されている。カードユニット1300は、遊技者の操作によって、カードユニット1300に遊技球の貸し出しを要求する信号を出力する球貸し操作パネル1155との間で送受信可能である。
払出・発射制御回路1126は、主制御回路1060から供給される賞球制御コマンド、カードユニット1300から供給される貸し球制御信号を受け取り、払出装置1128に対して所定の信号を送信することにより、払出装置1128に遊技球を払い出させる。また、払出・発射制御回路1126は、発射ハンドル1026が遊技者によって握持され、かつ、時計回り方向へ回動操作されたときには、その回動角度に応じて発射ソレノイドに電力を供給し、遊技球を発射させる制御を行う。
コマンド出力ポート1072には、副制御回路1200が接続されている。副制御回路1200は、本実施の形態のパチスロ遊技機において説明した副制御回路70(図7参照)と同様の構成を有し、この副制御回路70と同様な各種処理を実行することができるようになっている。例えば、副制御回路1200は、主制御回路1060が暗号化して送信する各種のコマンドを復号化するコマンド復号化手段1201aを有するサブCPU1201を備え、復号化したコマンドに応じて、液晶表示装置1032(エラー情報表示手段)における表示制御、スピーカ1046から発生させる音声に関する制御、装飾ランプ等を含むランプの制御等を行うようになっている。なお、副制御回路1200は、本発明に係る副制御部を構成する。また、サブCPU1201は、本発明に係る通信エラー確認手段を構成する。
以上説明したように、本実施の形態によるパチンコ遊技機によると、上記の実施の形態に係るパチスロ遊技機と同様の効果を得ることができる。
5 液晶表示装置(エラー情報表示手段)
30 マイクロコンピュータ
31 メインCPU
31a コマンド暗号化手段
31b コマンド送信手段
32 メインROM
33 メインRAM
60 主制御回路(主制御部)
70 副制御回路(副制御部)
71 サブCPU(コマンド受信手段、通信エラー確認手段)
71a コマンド復号化手段
71g エラー情報履歴表示手段(エラー情報表示手段)
72 サブROM
72j 復号化情報領域
1010 パチンコ機
1032 液晶表示装置(エラー情報表示手段)
1060 主制御回路(主制御部)
1064 初期リセット回路
1066 メインCPU
1066a コマンド暗号化手段
1066b コマンド送信手段
1200 副制御回路(副制御部)
1201 サブCPU(通信エラー確認手段)
1201a コマンド復号化手段

Claims (1)

  1. 遊技の進行に関する処理を実行する第1制御部と、
    前記第1制御部から送信されるコマンドに基づいて制御を行う第2制御部と、を備え、
    前記第1制御部は、
    前記第2制御部に送信するコマンドを暗号化する暗号化手段と、
    前記暗号化手段が暗号化したコマンドを前記第2制御部に送信する送信手段と、を備え、
    前記第2制御部は、
    暗号化された前記コマンドを受信する受信手段と、
    前記受信手段により受信した前記コマンドの物理層エラーの発生を判定する第1判定手段と、
    前記第1判定手段により前記コマンドに物理層エラーが発生していない場合に前記コマンドを復号化する復号化手段と、
    前記復号化されたコマンドに基づいて、該コマンドのデータが予め定められた値の範囲内にある場合に正常と判定しデータの値が範囲内ではない場合に異常と判定する第2判定手段と、
    前記第2判定手段において前記正常と判定された場合に、前記復号化されたコマンドに基づいて、該コマンドのデータの整合性がある場合に正常と判定し前記整合性がない場合に異常と判定する第3判定手段と、
    前記第1判定手段、前記第2判定手段及び前記第3判定手段のいずれか1つにおいて前記異常と判定された場合にエラーに基づいてエラー処理を行うエラー処理手段と、を備え、
    前記コマンドは、予め定められた順序で配列された、所定バイトのデータで構成され、
    前記受信手段は、前記送信手段から送信されたコマンドを1バイト単位で発生する受信割込みにより、前記1バイト単位の受信データと、該受信データの受信ステータスデータとを取得するとともに、所定の領域に登録し、
    前記暗号化手段は、前記コマンドを予め定められた演算パターンで暗号化し、
    前記復号化手段は、前記受信割込みが前記所定バイトの回数発生したことに基づいて前記所定の領域に登録した暗号化された前記コマンドを、予め定められた演算パターンで復号化することを特徴とする遊技機。
JP2017084356A 2017-04-21 2017-04-21 遊技機 Expired - Fee Related JP6281011B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017084356A JP6281011B2 (ja) 2017-04-21 2017-04-21 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017084356A JP6281011B2 (ja) 2017-04-21 2017-04-21 遊技機

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016078685A Division JP6134417B2 (ja) 2016-04-11 2016-04-11 遊技機

Publications (2)

Publication Number Publication Date
JP2017124292A JP2017124292A (ja) 2017-07-20
JP6281011B2 true JP6281011B2 (ja) 2018-02-14

Family

ID=59364744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017084356A Expired - Fee Related JP6281011B2 (ja) 2017-04-21 2017-04-21 遊技機

Country Status (1)

Country Link
JP (1) JP6281011B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6281010B2 (ja) * 2017-04-21 2018-02-14 株式会社ユニバーサルエンターテインメント 遊技機

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3462229B2 (ja) * 1993-01-12 2003-11-05 株式会社リコス 無線通信における情報の無断利用防止装置
JP4658282B2 (ja) * 1999-12-22 2011-03-23 株式会社ユニバーサルエンターテインメント スロットマシン
JP2003312067A (ja) * 2002-04-26 2003-11-06 Hitachi Ltd 印刷装置
JP2004187230A (ja) * 2002-12-06 2004-07-02 Matsushita Electric Ind Co Ltd ストリーミング配信システム、およびストリーム配信サーバ装置
JP2005021660A (ja) * 2003-06-11 2005-01-27 Olympia:Kk 遊技機及び遊技機におけるコマンドの通信方法並びにコマンド通信プログラム
JP2006204324A (ja) * 2005-01-25 2006-08-10 Samii Kk 遊技機
JP4643420B2 (ja) * 2005-11-15 2011-03-02 株式会社オリンピア 遊技機
JP2008187608A (ja) * 2007-01-31 2008-08-14 Sains Ltd データ送信システム
JP2013046695A (ja) * 2011-08-29 2013-03-07 Sammy Corp スロットマシン
JP6281010B2 (ja) * 2017-04-21 2018-02-14 株式会社ユニバーサルエンターテインメント 遊技機

Also Published As

Publication number Publication date
JP2017124292A (ja) 2017-07-20

Similar Documents

Publication Publication Date Title
JP5852054B2 (ja) 遊技機およびその管理方法
JP6134415B2 (ja) 遊技機
JP6281011B2 (ja) 遊技機
JP6281008B2 (ja) 遊技機
JP6281010B2 (ja) 遊技機
JP6281007B2 (ja) 遊技機
JP6144377B2 (ja) 遊技機
JP6076447B2 (ja) 遊技機およびその管理方法
JP6076448B2 (ja) 遊技機およびその管理方法
JP6148908B2 (ja) 遊技機
JP5919224B2 (ja) 遊技機の管理方法
JP6281009B2 (ja) 遊技機
JP6353560B2 (ja) 遊技機
JP6134417B2 (ja) 遊技機
JP6134416B2 (ja) 遊技機
JP6134410B2 (ja) 遊技機
JP6134409B2 (ja) 遊技機
JP6144376B2 (ja) 遊技機
JP6152448B2 (ja) 遊技機
JP5905853B2 (ja) 遊技機
JP5905852B2 (ja) 遊技機
JP5919225B2 (ja) 遊技機の管理方法
JP5919223B2 (ja) 遊技機の管理方法
JP5852055B2 (ja) 遊技機およびその管理方法
JP5899163B2 (ja) 遊技機およびその管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20171121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171221

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180122

R150 Certificate of patent or registration of utility model

Ref document number: 6281011

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees