[第1の実施の形態]
以下、本発明の第1の実施の形態を、図面を参照して説明する。まず、遊技機の一例であるパチンコ遊技機1の全体の構成について説明する。図1はパチンコ遊技機1を正面からみた正面図である。
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板(図示せず)と、それらに取り付けられる種々の部品(後述する遊技盤6を除く)とを含む構造体である。
ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球(遊技玉ともいう)を貯留する余剰球受皿4や、打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。また、ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には、打ち込まれた遊技球が流下可能な遊技領域7が形成されている。
余剰球受皿(下皿)4を形成する部材には、例えば下皿本体の上面における手前側の所定位置(例えば下皿の中央部分)などに、スティック形状(棒形状)に構成され、遊技者が把持して複数方向(前後左右)に傾倒操作が可能なスティックコントローラ122が取り付けられている。なお、スティックコントローラ122には、遊技者がスティックコントローラ122の操作桿を操作手(例えば左手など)で把持した状態において、所定の操作指(例えば人差し指など)で押引操作することなどにより所定の指示操作が可能なトリガボタン121(図5を参照)が設けられ、スティックコントローラ122の操作桿の内部には、トリガボタン121に対する押引操作などによる所定の指示操作を検知するトリガセンサ125(図5を参照)が内蔵されている。また、スティックコントローラ122の下部における下皿の本体内部などには、操作桿に対する傾倒操作を検知する傾倒方向センサユニット123(図5を参照)が設けられている。また、スティックコントローラ122には、スティックコントローラ122を振動動作させるためのバイブレータ用モータ126(図5を参照)が内蔵されている。
打球供給皿(上皿)3を形成する部材には、例えば上皿本体の上面における手前側の所定位置(例えばスティックコントローラ122の上方)などに、遊技者が押下操作などにより所定の指示操作を可能なプッシュボタン120が設けられている。プッシュボタン120は、遊技者からの押下操作などによる所定の指示操作を、機械的、電気的、あるいは、電磁的に、検出できるように構成されていればよい。プッシュボタン120の設置位置における上皿の本体内部などには、プッシュボタン120に対してなされた遊技者の操作行為を検知するプッシュセンサ124(図5を参照)が設けられていればよい。図1に示す構成例では、プッシュボタン120とスティックコントローラ122の取付位置が、上皿及び下皿の中央部分において上下の位置関係にある。これに対して、上下の位置関係を保ったまま、プッシュボタン120及びスティックコントローラ122の取付位置を、上皿及び下皿において左右のいずれかに寄せた位置としてもよい。あるいは、プッシュボタン120とスティックコントローラ122の取付位置が上下の位置関係にはなく、例えば左右の位置関係にあるものとしてもよい。
遊技領域7の中央付近には、液晶表示装置(LCD)で構成された演出表示装置9が設けられている。演出表示装置9の表示画面には、第1特別図柄または第2特別図柄の可変表示に同期した演出図柄の可変表示を行う演出図柄表示領域がある。よって、演出表示装置9は、演出図柄の可変表示を行う可変表示装置に相当する。演出図柄表示領域には、例えば「左」、「中」、「右」の3つの装飾用(演出用)の演出図柄を可変表示する図柄表示エリアがある。図柄表示エリアには「左」、「中」、「右」の各図柄表示エリアがあるが、図柄表示エリアの位置は、演出表示装置9の表示画面において固定的でなくてもよいし、図柄表示エリアの3つ領域が離れてもよい。演出表示装置9は、演出制御基板に搭載されている演出制御用マイクロコンピュータによって制御される。演出制御用マイクロコンピュータが、第1特別図柄表示器8aで第1特別図柄の可変表示が実行されているときに、その可変表示に伴って演出表示装置9で演出表示を実行させ、第2特別図柄表示器8bで第2特別図柄の可変表示が実行されているときに、その可変表示に伴って演出表示装置9で演出表示を実行させるので、遊技の進行状況を把握しやすくすることができる。
また、演出表示装置9において、最終停止図柄(例えば左右中図柄のうち中図柄)となる図柄以外の図柄が、所定時間継続して、大当り図柄(例えば左中右の図柄が同じ図柄で揃った図柄の組み合わせ)と一致している状態で停止、揺動、拡大縮小もしくは変形している状態、または、複数の図柄が同一図柄で同期して変動したり、表示図柄の位置が入れ替わっていたりして、最終結果が表示される前で大当り発生の可能性が継続している状態(以下、これらの状態をリーチ状態という。)において行われる演出をリーチ演出という。また、リーチ状態やその様子をリーチ態様という。さらに、リーチ演出を含む可変表示をリーチ可変表示という。そして、演出表示装置9に変動表示される図柄の表示結果が大当り図柄でない場合には「はずれ」となり、変動表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
演出表示装置9の表示画面の右上方部には、演出図柄と後述する特別図柄および普通図柄とに次ぐ第4図柄を表示する第4図柄表示領域9c,9dが設けられている。この実施の形態では、後述する第1特別図柄の変動表示に同期して第1特別図柄用の第4図柄の変動表示が行われる第1特別図柄用の第4図柄表示領域9cと、第2特別図柄の変動表示に同期して第2特別図柄用の第4図柄の変動表示が行われる第2特別図柄用の第4図柄表示領域9dとが設けられている。
この実施の形態では、特別図柄の変動表示に同期して演出図柄の変動表示が実行されるのであるが(ただし、正確には、演出図柄の変動表示は、演出制御用マイクロコンピュータ100側で変動パターンコマンドにもとづいて認識した変動時間を計測することによって行われる。)、演出表示装置9を用いた演出を行う場合、例えば、演出図柄の変動表示を含む演出内容が画面上から一瞬消えるような演出が行われたり、可動物が画面上の全部または一部を遮蔽するような演出が行われたりするなど、演出態様が多様化してきている。そのため、演出表示装置9上の表示画面を見ていても、現在変動表示中の状態であるのか否か認識しにくい場合も生じている。そこで、この実施の形態では、演出表示装置9の表示画面の一部でさらに第4図柄の変動表示を行うことによって、第4図柄の状態を確認することにより現在変動表示中の状態であるのか否かを確実に認識可能としている。なお、第4図柄は、常に一定の動作で変動表示され、画面上から消えたり遮蔽物で遮蔽されたりすることはないため、常に視認することができる。
なお、第1特別図柄用の第4図柄と第2特別図柄用の第4図柄とを、第4図柄と総称することがあり、第1特別図柄用の第4図柄表示領域9cと第2特別図柄用の第4図柄表示領域9dを、第4図柄表示領域と総称することがある。
第4図柄の変動(可変表示)は、第4図柄表示領域9c,9dを所定の表示色(例えば、青色)で一定の時間間隔で点灯と消灯とを繰り返す状態を継続することによって実現される。第1特別図柄表示器8aにおける第1特別図柄の可変表示と、第1特別図柄用の第4図柄表示領域9cにおける第1特別図柄用の第4図柄の可変表示とは同期している。第2特別図柄表示器8bにおける第2特別図柄の可変表示と、第2特別図柄用の第4図柄表示領域9dにおける第2特別図柄用の第4図柄の可変表示とは同期している。同期とは、可変表示の開始時点および終了時点が同じであって、可変表示の期間が同じであることをいう。
また、第1特別図柄表示器8aにおいて大当り図柄が停止表示されるときには、第1特別図柄用の第4図柄表示領域9cにおいて大当りを想起させる表示色(はずれとは異なる表示色。例えば、はずれのときには青色で表示されるのに対して、大当りのときには赤色で表示される。また、第2特別図柄表示器8bにおいて大当り図柄が停止表示されるときには、第2特別図柄用の第4図柄表示領域9dにおいて大当りを想起させる表示色(はずれとは異なる表示色。例えば、はずれのときには青色で表示されるのに対して、大当りのときには赤色で表示される。
なお、この実施の形態では、第4図柄表示領域を演出表示装置9の表示画面の一部に設ける場合を示しているが、演出表示装置9とは別に、ランプやLEDなどの発光体を用いて第4図柄表示領域を実現するようにしてもよい。この場合、例えば、第4図柄の変動(可変表示)を、2つのLEDが交互に点灯する状態を継続することによって実現されるようにしてもよく、2つのLEDのうちのいずれのLEDが停止表示されたかによって大当り図柄が停止表示されたか否かを表すようにしてもよい。
演出表示装置9の右方には、識別情報としての第1特別図柄を可変表示する第1特別図柄表示器(第1可変表示部)8aが設けられている。この実施の形態では、第1特別図柄表示器8aは、0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。すなわち、第1特別図柄表示器8aは、0〜9の数字(または、記号)を可変表示するように構成されている。また、演出表示装置9の右方(第1特別図柄表示器8aの右隣)には、識別情報としての第2特別図柄を可変表示する第2特別図柄表示器(第2可変表示部)8bも設けられている。第2特別図柄表示器8bは、0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。すなわち、第2特別図柄表示器8bは、0〜9の数字(または、記号)を可変表示するように構成されている。
小型の表示器は、例えば方形状に形成されている。また、この実施の形態では、第1特別図柄の種類と第2特別図柄の種類とは同じ(例えば、ともに0〜9の数字)であるが、種類が異なっていてもよい。また、第1特別図柄表示器8aおよび第2特別図柄表示器8bは、それぞれ、例えば、00〜99の数字(または、2桁の記号)を可変表示するように構成されていてもよい。
以下、第1特別図柄と第2特別図柄とを特別図柄と総称することがあり、第1特別図柄表示器8aと第2特別図柄表示器8bとを特別図柄表示器(可変表示部)と総称することがある。
なお、この実施の形態では、2つの特別図柄表示器8a,8bを備える場合を示しているが、遊技機は、特別図柄表示器を1つのみ備えるものであってもよい。
第1特別図柄の可変表示は、可変表示の実行条件である第1始動条件が成立(この実施の形態では、技球が第1始動入賞口13を通過(入賞を含む)したこと)した後、可変表示の開始条件(例えば、第1保留記憶数が0でない場合であって、第1特別図柄および第2特別図柄の可変表示が実行されていない状態であり、かつ、大当り遊技が実行されていない状態)が成立したことにもとづいて開始され、可変表示時間(変動時間)が経過すると表示結果(停止図柄)を導出表示する。また、第2特別図柄の可変表示は、可変表示の実行条件である第2始動条件が成立(この実施の形態では、遊技球が第2始動入賞口14を通過(入賞を含む)したこと)した後、可変表示の開始条件(例えば、第2保留記憶数が0でない場合であって、第1特別図柄および第2特別図柄の可変表示が実行されていない状態であり、かつ、大当り遊技が実行されていない状態)が成立したことにもとづいて開始され、可変表示時間(変動時間)が経過すると表示結果(停止図柄)を導出表示する。なお、遊技球が通過するとは、入賞口やゲートなどのあらかじめ入賞領域として定められている領域を遊技球が通過したことであり、入賞口に遊技球が入った(入賞した)ことを含む概念である。また、表示結果を導出表示するとは、図柄(識別情報の例)を最終的に停止表示させることである。
演出表示装置9の下方には、流入した遊技球を振り分けるための振分装置200が設けられている。また、演出表示装置9の下方には、左右に並ぶように第1始動入賞口13および第2始動入賞口14が設けられている。第1始動入賞口13に入賞した遊技球は、遊技盤6の背面に導かれ、第1始動口スイッチ13aによって検出される。また、第2始動入賞口(第2始動口)14に入賞した遊技球は、遊技盤6の背面に導かれ、第2始動口スイッチ14aによって検出される。
また、第2始動入賞口14には、開放状態と閉鎖放状態とに変化可能な可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開放状態とされる。可変入賞球装置15が開放状態になることによって、遊技球が第2始動入賞口14に始動入賞し易くなり、遊技者にとって有利な状態になる。なお、この実施の形態では、可変入賞球装置15が閉鎖放状態の場合であっても、開放状態と比較すると入賞しにくいももの振分装置200を経由して第2始動入賞口14に入賞可能であるように構成する場合を示しているが、可変入賞球装置15が開放状態である場合にのみ第2始動入賞口14に始動入賞可能に構成してもよい。
また、この実施の形態では、後述するように、遊技状態が確変状態(この実施の形態では、高確率状態に制御されるとともに時短状態(高ベース状態)にも制御される)である場合に、可変入賞球装置15が開放状態となる頻度が高められ第2始動入賞口14に始動入賞しやすくなる。そのため、この実施の形態では、遊技状態が確変状態に制御されている場合には、遊技者は遊技領域7の右方を狙って遊技球を発射するように発射操作を行う(いわゆる右打ち)方が有利になる。なお、遊技状態が確変状態に制御された場合には、例えば、演出表示装置9に「右を狙え!」などと表示して右打ちを示唆する表示を行うようにすることが望ましい。
以下、第1始動入賞口13および第2始動入賞口14を総称して始動入賞口または始動口ということがある。
なお、この実施の形態では、図1に示すように、第2始動入賞口14に対してのみ開閉動作を行う可変入賞球装置15が設けられているが、第1始動入賞口13および第2始動入賞口14のいずれについても開閉動作を行う可変入賞球装置が設けられている構成であってもよい。
また、遊技状態が確変状態や時短状態(高ベース状態)であっても一貫して遊技領域7の左方を狙って遊技球を発射させる仕様の遊技機である場合には、逆に左側の第1始動入賞口13にのみ可変入賞球装置15を設けるようにしてもよい。
第2特別図柄表示器8bの上方には、第2始動入賞口14に入った有効入賞球数すなわち第2保留記憶数を表示する4つの表示器からなる第2特別図柄保留記憶表示器18bが設けられている。第2特別図柄保留記憶表示器18bは、有効始動入賞がある毎に、点灯する表示器の数を1増やす。そして、第2特別図柄表示器8bでの可変表示が開始される毎に、点灯する表示器の数を1減らす。
また、第2特別図柄保留記憶表示器18bのさらに上方には、第1始動入賞口13に入った有効入賞球数すなわち第1保留記憶数(保留記憶を、始動記憶または始動入賞記憶ともいう。)を表示する4つの表示器からなる第1特別図柄保留記憶表示器18aが設けられている。第1特別図柄保留記憶表示器18aは、有効始動入賞がある毎に、点灯する表示器の数を1増やす。そして、第1特別図柄表示器8aでの可変表示が開始される毎に、点灯する表示器の数を1減らす。
また、演出表示装置9の表示画面の下部には、第1保留記憶数と第2保留記憶数との合計である合計数(合算保留記憶数)を表示する合算保留記憶表示部18cが設けられている。そのように、この実施の形態では、合計数を表示する合算保留記憶表示部18cが設けられていることによって、可変表示の開始条件が成立していない実行条件の成立数の合計を把握しやすくすることができる。なお、この実施の形態では、合算保留記憶表示部18cにおいて、第1保留記憶と第2保留記憶とが第1始動入賞口13および第2始動入賞口14への入賞順に並べて表示されるとともに、第1保留記憶であるか第2保留記憶であるかを認識可能な態様で表示される(例えば、第1保留記憶は赤色で表示され、第2保留記憶は青色で表示される)。なお、合算保留記憶表示部18cに代えて、第1保留記憶数を表示する第1保留記憶表示部と第2保留記憶数を表示する第2保留記憶表示部とを設けるように構成してもよい。
演出表示装置9は、第1特別図柄表示器8aによる第1特別図柄の可変表示時間中、および第2特別図柄表示器8bによる第2特別図柄の可変表示時間中に、装飾用(演出用)の図柄としての演出図柄の可変表示を行う。第1特別図柄表示器8aにおける第1特別図柄の可変表示と、演出表示装置9における演出図柄の可変表示とは同期している。また、第2特別図柄表示器8bにおける第2特別図柄の可変表示と、演出表示装置9における演出図柄の可変表示とは同期している。また、第1特別図柄表示器8aにおいて大当り図柄が停止表示されるときと、第2特別図柄表示器8bにおいて大当り図柄が停止表示されるときには、演出表示装置9において大当りを想起させるような演出図柄の組み合わせが停止表示される。
また、図1に示すように、第1始動入賞口13および第2始動入賞口14の下方には、大入賞口を形成する特別可変入賞球装置20が設けられている。特別可変入賞球装置20は開閉板を備え、第1特別図柄表示器8aに特定表示結果(大当り図柄)が導出表示されたときと、第2特別図柄表示器8bに特定表示結果(大当り図柄)が導出表示されたときに生起する特定遊技状態(大当り遊技状態)においてソレノイド21によって開閉板が開放状態に制御されることによって、入賞領域となる大入賞口が開放状態になる。大入賞口に入賞した遊技球はカウントスイッチ23で検出される。
演出表示装置9の左方には、普通図柄を可変表示する普通図柄表示器10が設けられている。この実施の形態では、普通図柄表示器10は、0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。すなわち、普通図柄表示器10は、0〜9の数字(または、記号)を可変表示するように構成されている。また、小型の表示器は、例えば方形状に形成されている。なお、普通図柄表示器10は、例えば、00〜99の数字(または、2桁の記号)を可変表示するように構成されていてもよい。また、普通図柄表示器10は、7セグメントLEDなどにかぎらず、例えば、所定の記号表示を点灯表示可能な表示器(例えば、「○」や「×」を交互に点灯表示可能な装飾ランプ)で構成されていてもよい。
遊技領域7の左右にそれぞれ設けられたゲート32を遊技球が通過しゲートスイッチ32aで検出されると、普通図柄表示器10の表示の可変表示が開始される。そして、普通図柄表示器10における停止図柄が所定の図柄(当り図柄。例えば、図柄「7」。)である場合に、可変入賞球装置15が所定回数、所定時間だけ開放状態になる。すなわち、可変入賞球装置15の状態は、普通図柄の停止図柄が当り図柄である場合に、遊技者にとって不利な状態から有利な状態(第2始動入賞口14に遊技球が入賞しやすい状態)に変化する。普通図柄表示器10の近傍には、ゲート32を通過した入賞球数を表示する4つのLEDによる表示部を有する普通図柄保留記憶表示器41が設けられている。ゲート32への遊技球の通過がある毎に、すなわちゲートスイッチ32aによって遊技球が検出される毎に、普通図柄保留記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。さらに、通常状態に比べて大当りとすることに決定される確率が高い状態である確変状態(通常状態と比較して、特別図柄の変動表示結果として大当りと判定される確率が高められた状態)では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。なお、この実施の形態では、確変状態に制御されるときには、図柄の変動時間が短縮されている時短状態(特別図柄の可変表示時間が短縮される遊技状態)にも制御される。
遊技盤6の下部には、入賞しなかった打球(アウト球)が取り込まれるアウト口26がある。また、遊技領域7の外側の左右上部および左右下部には、所定の音声出力として効果音や音声を発声する4つのスピーカ27が設けられている。遊技領域7の外周には、前面枠に設けられた枠LED28が設けられている。
遊技機には、遊技者が打球操作ハンドル5を操作することに応じて駆動モータを駆動し、駆動モータの回転力を利用して遊技球を遊技領域7に発射する打球発射装置(図示せず)が設けられている。打球発射装置から発射された遊技球は、遊技領域7を囲むように円形状に形成された打球レール(図示せず)を通って遊技領域7に入り、その後、遊技領域7を下りてくる。遊技球が第1始動入賞口13に入り第1始動口スイッチ13aで検出されると、第1特別図柄の可変表示を開始できる状態であれば(例えば、特別図柄の可変表示が終了し、第1の開始条件が成立したこと)、第1特別図柄表示器8aにおいて第1特別図柄の可変表示(変動)が開始されるとともに、演出表示装置9において演出図柄の可変表示が開始される。すなわち、第1特別図柄および演出図柄の可変表示は、第1始動入賞口13への入賞に対応する。第1特別図柄の可変表示を開始できる状態でなければ、第1保留記憶数が上限値に達していないことを条件として、第1保留記憶数を1増やす。
遊技球が第2始動入賞口14に入り第2始動口スイッチ14aで検出されると、第2特別図柄の可変表示を開始できる状態であれば(例えば、特別図柄の可変表示が終了し、第2の開始条件が成立したこと)、第2特別図柄表示器8bにおいて第2特別図柄の可変表示(変動)が開始されるとともに、演出表示装置9において演出図柄の可変表示が開始される。すなわち、第2特別図柄および演出図柄の可変表示は、第2始動入賞口14への入賞に対応する。第2特別図柄の可変表示を開始できる状態でなければ、第2保留記憶数が上限値に達していないことを条件として、第2保留記憶数を1増やす。
この実施の形態では、大当り(15R確変大当り、7R確変大当り、突然確変大当り)となった場合には、遊技状態を高確率状態(確変状態)に移行するとともに、遊技球が始動入賞しやすくなる(すなわち、特別図柄表示器8a,8bや演出表示装置9における可変表示の実行条件が成立しやすくなる)ように制御された遊技状態である高ベース状態に移行(この実施の形態では、時短状態に移行)する。高ベース状態である場合には、例えば、高ベース状態でない場合と比較して、可変入賞球装置15が開放状態となる頻度が高められたり、可変入賞球装置15が開放状態となる時間が延長されたりして、始動入賞しやすくなる。
なお、可変入賞球装置15が開放状態となる時間を延長する(開放延長状態ともいう)のでなく、普通図柄表示器10における停止図柄が当り図柄になる確率が高められる普通図柄確変状態に移行することによって、高ベース状態に移行してもよい。普通図柄表示器10における停止図柄が所定の図柄(当り図柄)となると、可変入賞球装置15が所定回数、所定時間だけ開放状態になる。この場合、普通図柄確変状態に移行制御することによって、普通図柄表示器10における停止図柄が当り図柄になる確率が高められ、可変入賞球装置15が開放状態となる頻度が高まる。従って、普通図柄確変状態に移行すれば、可変入賞球装置15の開放時間と開放回数が高められ、始動入賞しやすい状態(高ベース状態)となる。すなわち、可変入賞球装置15の開放時間と開放回数は、普通図柄の停止図柄が当り図柄であったり、特別図柄の停止図柄が確変図柄である場合等に高められ、遊技者にとって不利な状態から有利な状態(始動入賞しやすい状態)に変化する。なお、開放回数が高められることは、閉鎖放状態から開放状態になることも含む概念である。
また、普通図柄表示器10における普通図柄の変動時間(可変表示期間)が短縮される普通図柄時短状態に移行することによって、高ベース状態に移行してもよい。普通図柄時短状態では、普通図柄の変動時間が短縮されるので、普通図柄の変動が開始される頻度が高くなり、結果として普通図柄が当りとなる頻度が高くなる。従って、普通図柄が当たりとなる頻度が高くなることによって、可変入賞球装置15が開放状態となる頻度が高くなり、始動入賞しやすい状態(高ベース状態)となる。
また、特別図柄や演出図柄の変動時間(可変表示期間)が短縮される時短状態に移行することによって、特別図柄や演出図柄の変動時間が短縮されるので、特別図柄や演出図柄の変動が開始される頻度が高くなり(換言すれば、保留記憶の消化が速くなる。)、無効な始動入賞が生じてしまう事態を低減することができる。従って、有効な始動入賞が発生しやすくなり、結果として、大当り遊技が行われる可能性が高まる。
さらに、上記に示した全ての状態(開放延長状態、普通図柄確変状態、普通図柄時短状態および特別図柄時短状態)に移行させることによって、始動入賞しやすくなる(高ベース状態に移行する)ようにしてもよい。また、上記に示した各状態(開放延長状態、普通図柄確変状態、普通図柄時短状態および特別図柄時短状態)のうちのいずれか複数の状態に移行させることによって、始動入賞しやすくなる(高ベース状態に移行する)ようにしてもよい。また、上記に示した各状態(開放延長状態、普通図柄確変状態、普通図柄時短状態および特別図柄時短状態)のうちのいずれか1つの状態にのみ移行させることによって、始動入賞しやすくなる(高ベース状態に移行する)ようにしてもよい。
次に、振分装置200について説明する。図2は、振分装置200を説明するための説明図である。図2に示すように、振分装置200上部には、遊技球が流入可能な流入口201が設けられている。また、振分装置200内部には、流入口201から振分装置200内に流入した遊技球を左側通路203と右側通路204とのいずれかに振り分けるための振分部材202が設けられている。また、振分装置200の下部には、左側通路203を通過した遊技球が振分装置200から流出可能な左側流出口205と、右側通路204を通過した遊技球が振分装置200から流出可能な右側流出口206とが設けられている。
図2(a)に示す例では、振分部材202によって振分装置200内の右側通路204が遮蔽され、遊技球が左側通路203を通過可能な状態が示されている。図2(a)に示す状態において遊技球が流入口201から振分装置200内に流入すると、図2(b)に示すように、流入口201から流入した遊技球は振分部材200によって左側通路203に振り分けられ、左側通路203を通過して左側流出口205から流出する。そして、左側流出口205の下方には第1始動入賞口13が位置しているので、左側流出口205から流出した遊技球は、第1始動入賞口13に入賞する。
また、遊技球が左側通路203を通過するときに、振分部材202の回転軸部分に設けられている羽根部202aに遊技球があたり、遊技球の自重によって羽根部202aが押されることによって、図2(a)および図2(b)に示すように、振分部材202が右側に倒れている状態から左側に倒れている状態に変化する。そのように変化することにより、図2(b)に示すように、振分部材202によって振分装置200内の左側通路203が遮蔽され、遊技球が右側通路204を通過可能な状態となる。
次いで、そのような状態において、図2(c)に示すように、遊技球が流入口201から振分装置200内に流入すると、図2(d)に示すように、流入口201から流入した遊技球は振分部材200によって右側通路204に振り分けられ、右側通路204を通過して右側流出口206から流出する。そして、右側流出口206の下方には第2始動入賞口14が位置しているので、右側流出口206から流出した遊技球は、第2始動入賞口14に入賞する。
また、遊技球が右側通路204を通過するときに、振分部材204の回転軸部分に設けられている羽根部202aに遊技球があたり、遊技球の自重によって羽根部202aが押されることによって、図2(c)および図2(d)に示すように、振分部材202が左側に倒れている状態から右側に倒れている状態に変化する。そのように変化することにより、図2(d)に示すように、振分部材202によって振分装置200内の右側通路204が遮蔽され、遊技球が左側通路203を通過可能な状態となる。
図2に示すような動作をすることにより、この実施の形態では、振分部材202によって振分装置200に流入した遊技球が左側通路203と右側通路204とに交互に振り分けられ、第1始動入賞口13と第2始動入賞口14とに交互に入賞可能となる。
一方、この実施の形態では、振分装置200の振分部材202の状態にかかわらず、可変入賞球装置15が開放状態に制御されているときにも第2始動入賞口14に遊技球が入賞可能である。図3は、可変入賞球装置15が開放状態に制御されているときに第2始動入賞口14に遊技球が入賞する形態を説明するための説明図である。図3に示すように、振分部材202によって振分装置200内の右側通路204が遮蔽され、遊技球が左側通路203を通過可能な状態(右側通路204は通過不能または通過困難な状態)であっても、可変入賞球装置15が開放状態に制御されていれば、振分装置200の右方から遊技球が進入し第2始動入賞口14に入賞することが可能である。
なお、この実施の形態では、図3に示すように、第2始動入賞口14の左右両側に可変入賞球装置15の羽根部品が設けられている場合を示しているが、可変入賞球装置15が開放状態の場合に振分装置200を経由せずに第2始動入賞口14に入賞する場合には、図3に示すように振分装置200の右方から遊技球が進入して入賞する場合が殆どであることから、可変入賞球装置15の左側の羽根部品はなくてもよい。ただし、そのようにしてしまうと、振分装置200の右方から進入した遊技球が第2始動入賞口14の上を素通りして入賞できない場合も考えられるので、振分装置200の右方から進入した遊技球の勢いを止めるための遮蔽部(例えば、合成樹脂製の突起状部品や釘)を第2始動入賞口の開口部の左側に設けるようにして、可変入賞球装置15が開放中の第2始動入賞口14に遊技球が入賞するように構成してもよい。
また、この実施の形態では、図2および図3に示したように、振分装置200の下方に第1始動入賞口13および第2始動入賞口14を設けるように構成することによって、左側通路203に振り分けられた遊技球は略100%で第1始動入賞口13に入賞し、右側通路204に振り分けられた遊技球は略100%で第2始動入賞口14に入賞する場合を示したが、左側通路203や右側通路204に振り分けられた遊技球が振分装置200の外にこぼれる場合があるように構成し、左側通路203や右側通路204に振り分けられても必ずしも第1始動入賞口13や第2始動入賞口14に入賞しない場合があるようにしてもよい。例えば、図2および図3では左側流出口205および右側流出口206からダイレクトに真下に遊技球が落下するように構成したが、左側流出口205および右側流出口206に底面部材を設けて遊技者から見て奥側に一旦誘導されてから第1始動入賞口13や第2始動入賞口14に遊技球が流れるように構成するとともに、左側通路203や右側通路204の外側側面に開口部を設けて、左側通路203や右側通路204に振り分けられた遊技球の一部がその開口部から振分装置200の外にこぼれて第1始動入賞口13や第2始動入賞口14に入賞しない場合があるように構成してもよい。
また、この実施の形態では、第1始動入賞口13および第2始動入賞口14が振分装置200の外部に設けられている(具体的には、図2および図3に示すように、振分装置200の下方に設けられている)場合を示したが、第1始動入賞口13および第2始動入賞口14が振分装置200の内部に含まれているように構成してもよい。
また、この実施の形態では、振分装置200に2つの通路203,204が設けられている場合を示したが、2つである場合にかぎらず、3以上の通路が設けられていてもよい。この場合、例えば、第1始動入賞口13または第2始動入賞口14のいずれか一方または両方に入賞可能な通路が複数存在するように構成してもよい。
また、この実施の形態では、振分装置200の振分部材202が遊技球の自重によって物理的に左右に切り替わる場合を示したが、例えば、振分部材202を駆動するためのソレノイドやモータを設け、遊技制御用マイクロコンピュータ560からの制御によって振分部材202を交互に切り替えるように構成してもよい。
また、逆に、この実施の形態では、第2始動入賞口14に設けられた可変入賞球装置15についてはソレノイド16を駆動制御することにより開閉動作を行う場合を示しているが、可変入賞球装置15に振分部材202と類似の機構を適用して遊技球の自重により開閉動作を行うように構成するなど、可変入賞球装置15を遊技制御用マイクロコンピュータ560による制御によらずに物理的に開閉動作するように構成してもよい。この場合、例えば、可変入賞球装置15の開放状態を検出するためのセンサ(例えば、光センサ)を設けるようにし、そのセンサからの入力にもとづいて可変入賞球装置15が開放状態であるか否かを判定するようにすればよい。
また、プリペイド機能を備えるプリペイドカード等の遊技用記録媒体としての遊技用カードが挿入されることによって玉貸しを可能にするカードユニットが、パチンコ遊技機1に隣接して設置される(図示省略)。
図4は、主基板(遊技制御基板)31における回路構成の一例を示すブロック図である。なお、図4は、払出制御基板37および演出制御基板80等も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する遊技制御用マイクロコンピュータ(遊技制御手段に相当)560、制御用クロック生成回路111、および乱数用クロック生成回路112が搭載されている。遊技制御用マイクロコンピュータ560は、ゲーム制御(遊技進行制御)用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段としてのRAM55、プログラムに従って制御動作を行うCPU56を含む。また、この実施の形態では、ROM54およびRAM55は遊技制御用マイクロコンピュータ560に内蔵されている。すなわち、遊技制御用マイクロコンピュータ560は、1チップマイクロコンピュータである。1チップマイクロコンピュータには、少なくともCPU56のほかRAM55が内蔵されていればよく、ROM54は外付けであっても内蔵されていてもよい。遊技制御用マイクロコンピュータ560には、さらに、ハードウェア乱数(ハードウェア回路が発生する乱数)を発生する乱数回路508a,508bが内蔵されている。
ここで、制御用クロック生成回路111は、遊技制御用マイクロコンピュータ560の外部にて、所定周波数の発振信号となる制御用クロックCCLKを生成する。制御用クロック生成回路111により生成された制御用クロックCCLKは、例えば、後述する図6に示すような遊技制御用マイクロコンピュータ560の制御用外部クロック端子を介してクロック回路502に供給される。乱数用クロック生成回路112は、遊技制御用マイクロコンピュータ560の外部にて、制御用クロックCCLKの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックRCLKを生成する。乱数用クロック生成回路112により生成された乱数用クロックRCLKは、例えば、後述する図6に示すような遊技制御用マイクロコンピュータ560の乱数用外部クロック端子(RCK端子)を介して乱数回路508a,508bに供給される。一例として、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数以下となるようにすればよい。あるいは、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数よりも高周波となるようにしてもよい。
なお、この実施の形態では、乱数用クロック生成回路112から専用の乱数用クロックRCLKを乱数回路508a,508bに入力する場合を示しているが、そのような態様にかぎられない。例えば、専用のクロックを用いるのではなく、制御用クロック生成回路111からの制御用クロックCCLKを遊技制御用マイクロコンピュータ560内部で乱数回路508a,508bに入力させるように構成してもよい。この場合、例えば、制御用クロックCCLKを分周した信号を用いて乱数回路508a,508b内蔵の乱数カウンタ(後述する乱数生成回路525a,525b)を更新させるようにしてもよい。また、この場合、乱数用クロック生成回路112は主基板31上に設けなくてもよい。
また、RAM55は、その一部または全部が電源基板910において作成されるバックアップ電源によってバックアップされている不揮発性記憶手段としてのバックアップRAMである。すなわち、遊技機に対する電力供給が停止しても、所定期間(バックアップ電源としてのコンデンサが放電してバックアップ電源が電力供給不能になるまで)は、RAM55の一部または全部の内容は保存される。特に、少なくとも、遊技状態すなわち遊技制御手段の制御状態に応じたデータ(特別図柄プロセスフラグなど)と未払出賞球数を示すデータは、バックアップRAMに保存される。遊技制御手段の制御状態に応じたデータとは、停電等が生じた後に復旧した場合に、そのデータにもとづいて、制御状態を停電等の発生前に復旧させるために必要なデータである。また、制御状態に応じたデータと未払出賞球数を示すデータとを遊技の進行状態を示すデータと定義する。なお、この実施の形態では、RAM55の全部が、電源バックアップされているとする。
なお、遊技制御用マイクロコンピュータ560においてCPU56がROM54に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ560(またはCPU56)が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているマイクロコンピュータについても同様である。ただし、後述するように、遊技機への電源投入時やシステムリセット発生時には、遊技制御用マイクロコンピュータ560は、プログラム管理エリアの設定内容に従って、内部リセット動作の設定や乱数回路508a,508bの設定、レジスタの設定などを行うのであるが、この設定動作については、遊技制御用マイクロコンピュータ560は、プログラムによらず、ハードウェア的に実行する。
また、ゲートスイッチ32a、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23からの検出信号を遊技制御用マイクロコンピュータ560に与える入力ドライバ回路58も主基板31に搭載されている。また、可変入賞球装置15を開閉するソレノイド16、および大入賞口を形成する特別可変入賞球装置20を開閉するソレノイド21を遊技制御用マイクロコンピュータ560からの指令に従って駆動する出力回路59も主基板31に搭載されている。
また、遊技制御用マイクロコンピュータ560は、特別図柄を可変表示する第1特別図柄表示器8a、第2特別図柄表示器8b、普通図柄を可変表示する普通図柄表示器10、第1特別図柄保留記憶表示器18a、第2特別図柄保留記憶表示器18bおよび普通図柄保留記憶表示器41の表示制御を行う。
なお、大当り遊技状態の発生を示す大当り情報等の情報出力信号を、ターミナル基板160を介して、ホールコンピュータ等の外部装置に対して出力する情報出力回路64も主基板31に搭載されている。
主基板31と演出制御基板80との間では、例えば主基板31から中継基板77を介して演出制御基板80へと向かう単一方向のみでシリアル通信などを行うことにより、各種の演出制御コマンドが伝送される。この実施の形態では、演出制御基板80に搭載されている演出制御手段(演出制御用マイクロコンピュータで構成される。)が、中継基板77を介して遊技制御用マイクロコンピュータ560から演出内容を指示する演出制御コマンドを受信し、演出図柄を可変表示する演出表示装置9の表示制御を行う。
また、演出制御基板80に搭載されている演出制御手段が、ランプドライバ基板35を介して、遊技盤に設けられている装飾LED25、および枠側に設けられている枠LED28の表示制御を行うとともに、音声出力基板70を介してスピーカ27からの音出力の制御を行う。
図5は、中継基板77、演出制御基板80、ランプドライバ基板35および音声出力基板70の回路構成例を示すブロック図である。なお、図5に示す例では、ランプドライバ基板35および音声出力基板70には、マイクロコンピュータは搭載されていないが、マイクロコンピュータを搭載してもよい。また、ランプドライバ基板35および音声出力基板70を設けずに、演出制御に関して演出制御基板80のみを設けてもよい。
演出制御基板80は、演出制御用CPU101、および演出図柄プロセスフラグ等の演出に関する情報を記憶するRAMを含む演出制御用マイクロコンピュータ100を搭載している。なお、RAMは外付けであってもよい。この実施の形態では、演出制御用マイクロコンピュータ100におけるRAMは電源バックアップされていない。演出制御基板80において、演出制御用CPU101は、内蔵または外付けのROM(図示せず)に格納されたプログラムに従って動作し、中継基板77を介して演出制御コマンドを受信する。また、演出制御用CPU101は、演出制御コマンドにもとづいて、VDP(ビデオディスプレイプロセッサ)109に演出表示装置9の表示制御を行わせる。
この実施の形態では、演出制御用マイクロコンピュータ100と共動して演出表示装置9の表示制御を行うVDP109が演出制御基板80に搭載されている。VDP109は、演出制御用マイクロコンピュータ100とは独立したアドレス空間を有し、そこにVRAMをマッピングする。VRAMは、画像データを展開するためのバッファメモリである。そして、VDP109は、VRAM内の画像データをフレームメモリを介して演出表示装置9に出力する。
演出制御用CPU101は、受信した演出制御コマンドに従ってCGROM(図示せず)から必要なデータを読み出すための指令をVDP109に出力する。CGROMは、演出表示装置9に表示されるキャラクタ画像データや動画像データ、具体的には、人物、文字、図形や記号等(演出図柄を含む)、および背景画像のデータをあらかじめ格納しておくためのROMである。VDP109は、演出制御用CPU101の指令に応じて、CGROMから画像データを読み出す。そして、VDP109は、読み出した画像データにもとづいて表示制御を実行する。
また、演出制御用CPU101は、スティックコントローラ122のトリガボタン121に対する遊技者の操作行為を検出したことを示す情報信号としての操作検出信号を、トリガセンサ125から、入力ポート106を介して入力する。また、演出制御用CPU101は、プッシュボタン120に対する遊技者の操作行為を検出したことを示す情報信号としての操作検出信号を、プッシュセンサ124から、入力ポート106を介して入力する。また、演出制御用CPU101は、スティックコントローラ122の操作桿に対する遊技者の操作行為を検出したことを示す情報信号としての操作検出信号を、傾倒方向センサユニット123から、入力ポート106を介して入力する。また、演出制御用CPU101は、出力ポート105を介してバイブレータ用モータ126に駆動信号を出力することにより、スティックコントローラ122を振動動作させる。
さらに、演出制御用CPU101は、出力ポート105を介してランプドライバ基板35に対してLEDを駆動する信号を出力する。また、演出制御用CPU101は、出力ポート104を介して音声出力基板70に対して音番号データを出力する。
ランプドライバ基板35において、LEDを駆動する信号は、入力ドライバ351を介してLEDドライバ352に入力される。LEDドライバ352は、LEDを駆動する信号にもとづいて枠LED28などの枠側に設けられている発光体に電流を供給する。また、遊技盤側に設けられている装飾LED25に電流を供給する。
音声出力基板70において、音番号データは、入力ドライバ702を介して音声合成用IC703に入力される。音声合成用IC703は、音番号データに応じた音声や効果音を発生し増幅回路705に出力する。増幅回路705は、音声合成用IC703の出力レベルを、ボリューム706で設定されている音量に応じたレベルに増幅した音声信号をスピーカ27に出力する。音声データROM704には、音番号データに応じた制御データが格納されている。音番号データに応じた制御データは、所定期間(例えば演出図柄の変動期間)における効果音または音声の出力態様を時系列的に示すデータの集まりである。
図6は、主基板31に搭載された遊技制御用マイクロコンピュータ560の構成例を示している。図6に示す遊技制御用マイクロコンピュータ560は、例えば1チップマイクロコンピュータであり、外部バスインタフェース501と、クロック回路502と、照合用ブロック503と、固有情報記憶回路504と、演算回路505と、リセット/割り込みコントローラ506と、CPU(Central Processing Unit)56と、ROM(Read Only Memory)54と、RAM(Random Access Memory)55と、フリーランカウンタ回路507と、乱数回路508a,508bと、タイマ回路509と、割り込みコントローラ510と、パラレル入力ポート511と、シリアル通信回路512と、パラレル出力ポート513と、アドレスデコード回路514とを備えて構成される。
また、遊技制御用マイクロコンピュータ560が搭載する乱数回路には、8ビット乱数を発生させる8ビット乱数回路508aと、16ビット乱数を発生させる16ビット乱数回路508bとがある。なお、図6に示す例では、8ビット乱数回路508aと、16ビット乱数を発生させる16ビット乱数回路508bとが1つずつ図示されているが、遊技制御用マイクロコンピュータ560は、8ビット乱数回路508aと、16ビット乱数を発生させる16ビット乱数回路508bとを、それぞれ4回路(4チャネル)ずつ搭載している。なお、この実施の形態では、8ビット乱数回路508aの4つのチャネルをそれぞれRS0〜RS3と表現する場合があり、16ビット乱数回路508bの4つのチャネルをそれぞれRL0〜RL3と表現する場合がある。
また、リセット/割り込みコントローラ506は、指定エリア外走行禁止(IAT)回路506aとウオッチドッグタイマ(WDT)506bとを備える。IAT回路506aは、ユーザプログラムが指定エリア内で正しく実行されているか否かを監視する回路であり、指定エリア外でユーザプログラムが実行されたことを検出するとIAT発生信号を出力する機能を備える。また、ウオッチドッグタイマ506bは、設定期間ごとにタイムアウト信号を発生させる機能を備える。
図7は、遊技制御用マイクロコンピュータ560におけるアドレスマップの一例を示している。図7に示すように、アドレス0000H〜アドレス2FFFHの領域は、遊技制御用マイクロコンピュータ560のROM54に割り当てられ、プログラムコード/データエリア(ユーザプログラムやデータを格納するエリア)とプログラム管理エリアとを含んでいる。図8は、ROM54におけるプログラム管理エリアの主要部分について、用途や内容の一例を示している。アドレスF000H〜アドレスF3FFHの領域は、遊技制御用マイクロコンピュータ560のRAM55に割り当てられている。アドレスFE00H〜アドレスFEBFHの領域は、遊技制御用マイクロコンピュータ560の内蔵レジスタに割り当てられる内蔵レジスタエリアである。図9〜図11は、内蔵レジスタエリアの主要部分について、用途や内容の一例を示している。アドレスFED0H〜アドレスFEFDHの領域は、アドレスデコード回路514に割り当てられるXCS,XCSEデコードエリアである。
プログラム管理エリアは、遊技制御用マイクロコンピュータ560がシステムリセット時に内部リセット動作の設定や乱数回路508a,508bの設定など各種設定を行うために必要な情報を格納する記憶領域である。図8に示すように、プログラム管理エリアには、ヘッダ(KHDR)、プログラムコードエンドアドレス(KPCE)、プログラムコードスタートアドレス2(KPCS2)、プログラムコードエンドアドレス2(KPCE2)、リセット設定(KRES)、16ビット乱数初期設定1(KRL1)、16ビット乱数初期設定2(KRL2)、16ビット乱数初期設定3(KRL3)、8ビット乱数初期設定1(KRS1)、8ビット乱数初期設定2(KRS2)、セキュリティ時間設定(KSES)、乱数クロック監視設定(KRCS)などが、含まれている。また、図9〜図11に示すように、内蔵レジスタエリアには、内部情報レジスタ(CIF)や、乱数回路508a,508bで用いる各種レジスタなどが、含まれている。
プログラム管理エリアに記憶されるヘッダ(KHDR)は、プログラム管理エリアのスタートを示す8バイトのコード列の設定、および遊技制御用マイクロコンピュータ560における内部データの読出設定を示す。図12は、ヘッダ(KHDR)における設定データと動作との対応関係を例示している。ここで、遊技制御用マイクロコンピュータ560では、ROM読出防止機能と、バス出力マスク機能とを設定可能である。ROM読出防止機能は、遊技制御用マイクロコンピュータ560が備えるROM54の記憶データについて、読出動作を許可または禁止する機能であり、読出禁止に設定された状態では、ROM54の記憶データを読み出すことができない。バス出力マスク機能は、外部バスインタフェース501に接続された外部装置から遊技制御用マイクロコンピュータ560の内部データに対する読出要求があった場合に、外部バスインタフェース501におけるアドレスバス出力、データバス出力および制御信号出力にマスクをかけることにより、外部装置から内部データの読み出しを不能にする機能である。図12に示すように、プログラム管理エリアのスタートを示す8バイトのコード列として設定する設定データに対応して、ROM読出防止機能やバス出力マスク機能の動作組合せが異なるように設定される。図12に示す設定データのうち、ROM読出が許可されるとともに、バス出力マスクが有効となる設定データは、バス出力マスク有効データともいう。また、ROM読出が禁止されるとともに、バス出力マスクが有効となる設定データ(全て「00H」)は、ROM読出禁止データともいう。ROM読出が許可されるとともに、バス出力マスクが無効となる設定データは、バス出力マスク無効データともいう。
プログラム管理エリアに記憶されるプログラムコードエンドアドレス(KPCE)は、ユーザプログラムの0000Hから続くプログラムコードエリアの最終アドレスの設定を示す。図13(A)は、プログラムコードエンドアドレス(KPCE)における設定内容の一例を示している。
なお、この実施の形態では、アドレス0000H〜アドレス2FBFHまでのプログラムコード/データエリア内に2つのプログラムコードエリアを設定可能である。具体的には、1つ目のプログラムコードエリアは、アドレス0000Hからプログラムコードエンドアドレス(KPCE)で設定されるアドレスまでのエリアとして設定可能であり、2つ目のプログラムコードエリアは、プログラムコードスタートアドレス2(KPCS2)で設定されるアドレスからプログラムコードエンドアドレス2(KPCE2)で設定されるアドレスまでのエリアとして設定可能である。以下、1つ目のプログラムコードエリアに格納されるプログラムコードをプログラムコード1ともいい、2つ目のプログラムコードエリアに格納されるプログラムコードをプログラムコード2ともいう。
図13(A)に示すように、プログラムコードエンドアドレス(KPCE)のアドレス2FD3Hには、プログラムコード1の最終アドレスの下位アドレスが設定される。また、アドレス2FD4Hには、プログラムコード1の最終アドレスの上位アドレスが設定される。
プログラム管理エリアに記憶されるプログラムコードスタートアドレス2(KPCS2)は、ユーザプログラムが2つのブロックに分かれた場合の2つ目のプログラムコードエリアの先頭アドレスの設定を示す。図13(B)は、プログラムコードスタートアドレス2(KPCS2)における設定内容の一例を示している。
図13(B)に示すように、プログラムコードスタートアドレス2(KPCS2)のアドレス2FD5Hには、プログラムコード2の先頭アドレスの下位アドレスが設定される。また、アドレス2FD6Hには、プログラムコード2の先頭アドレスの上位アドレスが設定される。なお、プログラムコードエリアを2つに分けない場合には、プログラムコードスタートアドレス2(KPCS2)のアドレス2FD5Hおよびアドレス2FD6Hにそれぞれ0000Hを設定するようにすればよい。
プログラム管理エリアに記憶されるプログラムコードエンドアドレス2(KPCE2)は、ユーザプログラムが2つのブロックに分かれた場合の2つ目のプログラムコードエリアの最終アドレスの設定を示す。図13(C)は、プログラムコードエンドアドレス2(KPCE2)における設定内容の一例を示している。
図13(C)に示すように、プログラムコードエンドアドレス2(KPCE2)のアドレス2FD7Hには、プログラムコード2の最終アドレスの下位アドレスが設定される。また、アドレス2FD8Hには、プログラムコード2の最終アドレスの上位アドレスが設定される。なお、プログラムコードエリアを2つに分けない場合には、プログラムコードエンドアドレス2(KPCE2)のアドレス2FD7Hおよびアドレス2FD8Hにそれぞれ0000Hを設定するようにすればよい。
なお、図13に示すプログラムコードエンドアドレス(KPCE)、プログラムコードスタートアドレス2(KPCS2)およびプログラムコードエンドアドレス2(KPCE2)の設定内容は、IAT回路506aによってユーザプログラムが指定エリア内で正しく実行されているか否かを監視する際に参照される。すなわち、IAT回路506aは、0000Hからプログラムコードエンドアドレス(KPCE)で示されるアドレス、またはプログラムコードスタートアドレス2(KPCS2)で示されるアドレスからプログラムコードエンドアドレス2(KPCE2)で示されるアドレスまでの指定範囲でユーザプログラムが実行されているか否かを判定し、その指定範囲外でユーザプログラムが実行されていることを検出したことにもとづいてIAT信号を出力する。
プログラム管理エリアに記憶されるリセット設定(KRES)は、内部リセット動作やウオッチドッグタイマ(WDT)506bの動作許可/禁止の設定を示す。図14は、リセット設定(KRES)における設定内容の一例を示している。
リセット設定(KRES)のビット[7]は、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号を入力したことや、IATが発生したこと(IAT回路506aからのIAT信号を入力したとき)により内部リセットが発生したときの動作の設定を示している。図14に示す例において、リセット設定(KRES)のビット[7]におけるビット値が”0”であれば、タイムアウト信号やIAT信号を入力したときにユーザリセットが発生する。これに対して、リセット設定(KRES)のビット[7]におけるビット値が”1”であれば、タイムアウト信号やIAT信号を入力したときにシステムリセットが発生する。
リセット設定(KRES)のビット[6]は、ウオッチドッグタイマ(WDT)506bの起動方法の設定を示している。図14に示す例において、リセット設定(KRES)のビット[6]におけるビット値が”0”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にウオッチドッグタイマ(WDT)506bが起動され時間計測が開始される。これに対して、リセット設定(KRES)のビット[6]におけるビット値が”1”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)によりウオッチドッグタイマ(WDT)506bが起動され時間計測が開始される。
リセット設定(KRES)のビット[5−4]は、ウオッチドッグタイマ(WDT)506bの基準クロック信号の設定を示している。図14に示す例では、リセット設定(KRES)のビット[5−4]に”00”が設定された場合には、基準クロック信号として215×TSCLKが選択される。また、リセット設定(KRES)のビット[5−4]に”01”が設定された場合には、基準クロック信号として219×TSCLKが選択される。また、リセット設定(KRES)のビット[5−4]に”10”が設定された場合には、基準クロック信号として222×TSCLKが選択される。また、リセット設定(KRES)のビット[5−4]に”11”が設定された場合には、基準クロック信号として225×TSCLKが選択される。なお、SCLKとは、遊技制御用マイクロコンピュータ560の内部システムクロックを示しており、TSCLKは、1/SCLKを示している。
リセット設定(KRES)のビット[3−0]は、ウオッチドッグタイマ(WDT)506bのタイムアウト時間の設定を示している。具体的には、ウオッチドッグタイマ(WDT)506bのタイムアウト時間は、リセット設定(KRES)のビット[5−4]で選択した基準クロックに、リセット設定(KRES)のビット[3−0]で設定した設定値を乗算した値となる。例えば、リセット設定(KRES)のビット[3−0]に”1000”を設定(すなわち、値「8」を設定)した場合、リセット設定(KRES)のビット[5−4]に”00”を設定した場合には、タイムアウト時間は215×TSCLK×8となり、リセット設定(KRES)のビット[5−4]に”01”を設定した場合には、タイムアウト時間は219×TSCLK×8となり、リセット設定(KRES)のビット[5−4]に”10”を設定した場合には、タイムアウト時間は222×TSCLK×8となり、リセット設定(KRES)のビット[5−4]に”11”を設定した場合には、タイムアウト時間は225×TSCLK×8となる。また、リセット設定(KRES)のビット[3−0]に”1111”を設定(すなわち、値「15」を設定)した場合、リセット設定(KRES)のビット[5−4]に”00”を設定した場合には、タイムアウト時間は215×TSCLK×15となり、リセット設定(KRES)のビット[5−4]に”01”を設定した場合には、タイムアウト時間は219×TSCLK×15となり、リセット設定(KRES)のビット[5−4]に”10”を設定した場合には、タイムアウト時間は222×TSCLK×15となり、リセット設定(KRES)のビット[5−4]に”11”を設定した場合には、タイムアウト時間は225×TSCLK×15となる。なお、図14には、内部システムクロックが10.0MHzと12.0MHzである場合のタイムアウト時間の値の具体例もそれぞれ示されている。
なお、ウオッチドッグタイマ(WDT)506bを使用しないように設定する場合、図14に示すように、リセット設定(KRES)のビット[3−0]に”0000”を設定するようにすればよい。ただし、リセット設定(KRES)のビット[3−0]に”0000”がセットされてウオッチドッグタイマ(WDT)506bが使用禁止状態に設定された場合であっても、リセット設定(KRES)のビット[7]の値を設定することにより、システムリセットするかユーザリセットとするかの設定を行うことは可能である。
プログラム管理エリアに記憶される16ビット乱数初期設定1(KRL1)、16ビット乱数初期設定2(KRL2)および16ビット乱数初期設定3(KRL3)は、16ビット乱数回路508bの設定を示す。図15は、16ビット乱数初期設定1(KRL1)のにおける設定内容の一例を示している。また、図16は、16ビット乱数初期設定2(KRL2)のにおける設定内容の一例を示している。さらに、図17は、16ビット乱数初期設定3(KRL3)のにおける設定内容の一例を示している。
まず、図15を用いて、16ビット乱数初期設定1(KRL1)における設定内容を説明する。16ビット乱数初期設定1(KRL1)のビット「7」は、4チャネルの16ビット乱数回路508bのうち、チャネル1の16ビット乱数回路508bの起動方法の設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「7」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル1の16ビット乱数回路508bが起動される。これに対して、16ビット乱数初期設定1(KRL1)のビット「7」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル1の16ビット乱数回路508bが起動される。
16ビット乱数初期設定1(KRL1)のビット「6」は、チャネル1の16ビット乱数回路508bの更新クロックの設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「6」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、16ビット乱数初期設定1(KRL1)のビット「6」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
なお、この実施の形態では、既に説明した乱数用クロック生成回路112により生成された乱数用クロックRCLKを乱数用外部クロック端子(RCK端子)を介して入力し、その乱数用クロックRCLKを2分周した信号を更新クロックとして用いるものとする。なお、このことは、他のチャネルの16ビット乱数回路508bや8ビット乱数回路508aについても同様である。
16ビット乱数初期設定1(KRL1)のビット「5−4」は、チャネル1の16ビット乱数回路508bが更新する乱数列を変更するか否かの設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「5−4」におけるビット値が”00”であれば、チャネル1の16ビット乱数回路508bが更新する乱数列は変更されない。また、16ビット乱数初期設定1(KRL1)のビット「5−4」におけるビット値が”01”であれば、チャネル1の16ビット乱数回路508bが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、16ビット乱数初期設定1(KRL1)のビット「5−4」におけるビット値が”10”であれば、チャネル1の16ビット乱数回路508bが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、16ビット乱数初期設定1(KRL1)のビット「5−4」におけるビット値が”11”であれば、チャネル1の16ビット乱数回路508bが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
16ビット乱数初期設定1(KRL1)のビット「3」は、4チャネルの16ビット乱数回路508bのうち、チャネル0の16ビット乱数回路508bの起動方法の設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「3」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル0の16ビット乱数回路508bが起動される。これに対して、16ビット乱数初期設定1(KRL1)のビット「3」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル0の16ビット乱数回路508bが起動される。
16ビット乱数初期設定1(KRL1)のビット「2」は、チャネル0の16ビット乱数回路508bの更新クロックの設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「2」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、16ビット乱数初期設定1(KRL1)のビット「2」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
16ビット乱数初期設定1(KRL1)のビット「1−0」は、チャネル0の16ビット乱数回路508bが更新する乱数列を変更するか否かの設定を示している。図15に示す例において、16ビット乱数初期設定1(KRL1)のビット「1−0」におけるビット値が”00”であれば、チャネル0の16ビット乱数回路508bが更新する乱数列は変更されない。また、16ビット乱数初期設定1(KRL1)のビット「1−0」におけるビット値が”01”であれば、チャネル0の16ビット乱数回路508bが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、16ビット乱数初期設定1(KRL1)のビット「1−0」におけるビット値が”10”であれば、チャネル0の16ビット乱数回路508bが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、16ビット乱数初期設定1(KRL1)のビット「1−0」におけるビット値が”11”であれば、チャネル0の16ビット乱数回路508bが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
次に、図16を用いて、16ビット乱数初期設定2(KRL2)における設定内容を説明する。16ビット乱数初期設定2(KRL2)のビット「7」は、4チャネルの16ビット乱数回路508bのうち、チャネル3の16ビット乱数回路508bの起動方法の設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「7」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル3の16ビット乱数回路508bが起動される。これに対して、16ビット乱数初期設定2(KRL2)のビット「7」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル3の16ビット乱数回路508bが起動される。
16ビット乱数初期設定2(KRL2)のビット「6」は、チャネル3の16ビット乱数回路508bの更新クロックの設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「6」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、16ビット乱数初期設定2(KRL2)のビット「6」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
16ビット乱数初期設定2(KRL2)のビット「5−4」は、チャネル3の16ビット乱数回路508bが更新する乱数列を変更するか否かの設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「5−4」におけるビット値が”00”であれば、チャネル3の16ビット乱数回路508bが更新する乱数列は変更されない。また、16ビット乱数初期設定2(KRL2)のビット「5−4」におけるビット値が”01”であれば、チャネル3の16ビット乱数回路508bが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、16ビット乱数初期設定2(KRL2)のビット「5−4」におけるビット値が”10”であれば、チャネル3の16ビット乱数回路508bが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、16ビット乱数初期設定2(KRL2)のビット「5−4」におけるビット値が”11”であれば、チャネル3の16ビット乱数回路508bが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
16ビット乱数初期設定2(KRL2)のビット「3」は、4チャネルの16ビット乱数回路508bのうち、チャネル2の16ビット乱数回路508bの起動方法の設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「3」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル2の16ビット乱数回路508bが起動される。これに対して、16ビット乱数初期設定2(KRL2)のビット「3」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル2の16ビット乱数回路508bが起動される。
16ビット乱数初期設定2(KRL2)のビット「2」は、チャネル2の16ビット乱数回路508bの更新クロックの設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「2」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、16ビット乱数初期設定2(KRL2)のビット「2」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
16ビット乱数初期設定2(KRL2)のビット「1−0」は、チャネル2の16ビット乱数回路508bが更新する乱数列を変更するか否かの設定を示している。図16に示す例において、16ビット乱数初期設定2(KRL2)のビット「1−0」におけるビット値が”00”であれば、チャネル2の16ビット乱数回路508bが更新する乱数列は変更されない。また、16ビット乱数初期設定2(KRL2)のビット「1−0」におけるビット値が”01”であれば、チャネル2の16ビット乱数回路508bが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、16ビット乱数初期設定2(KRL2)のビット「1−0」におけるビット値が”10”であれば、チャネル2の16ビット乱数回路508bが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、16ビット乱数初期設定2(KRL2)のビット「1−0」におけるビット値が”11”であれば、チャネル2の16ビット乱数回路508bが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
次に、図17を用いて、16ビット乱数初期設定3(KRL3)のにおける設定内容を説明する。16ビット乱数初期設定3(KRL3)のビット「7」は、4チャネルの16ビット乱数回路508bのうち、チャネル3の16ビット乱数回路508bの1周目からのスタート値の設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「7」におけるビット値が”0”であれば、乱数更新の1周目のスタート値として0001Hが用いられる。これに対して、16ビット乱数初期設定3(KRL3)のビット「7」におけるビット値が”1”であれば、乱数更新の1周目のスタート値として遊技制御用マイクロコンピュータ560のIDナンバをもとにした値が用いられる。遊技制御用マイクロコンピュータ560のIDナンバはチップごとに異なることから、スタート値としてIDナンバをもとにした値を用いることにより、乱数の更新タイミングを予測しにくくすることができ、乱数の更新タイミングを狙って不正に大当りを発生させるような行為を防止することができる。なお、IDナンバをもとにした値として、IDナンバそのものを用いてもよいし、IDナンバに所定の演算(例えば、所定値を加算したり減算したりした値)を用いてもよい。
16ビット乱数初期設定3(KRL3)のビット「6」は、チャネル3の16ビット乱数回路508bのスタート値をシステムリセットごとに変更するか否かの設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「6」におけるビット値が”0”であれば、システムリセット時にスタート値の変更は行わない。これに対して、16ビット乱数初期設定3(KRL3)のビット「6」におけるビット値が”1”であれば、システムリセットごとにスタート値を変更する。
16ビット乱数初期設定3(KRL3)のビット「5」は、4チャネルの16ビット乱数回路508bのうち、チャネル2の16ビット乱数回路508bの1周目からのスタート値の設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「5」におけるビット値が”0”であれば、乱数更新の1周目のスタート値として0001Hが用いられる。これに対して、16ビット乱数初期設定3(KRL3)のビット「5」におけるビット値が”1”であれば、乱数更新の1周目のスタート値として遊技制御用マイクロコンピュータ560のIDナンバをもとにした値が用いられる。
16ビット乱数初期設定3(KRL3)のビット「4」は、チャネル2の16ビット乱数回路508bのスタート値をシステムリセットごとに変更するか否かの設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「4」におけるビット値が”0”であれば、システムリセット時にスタート値の変更は行わない。これに対して、16ビット乱数初期設定3(KRL3)のビット「6」におけるビット値が”1”であれば、システムリセットごとにスタート値を変更する。
16ビット乱数初期設定3(KRL3)のビット「3」は、4チャネルの16ビット乱数回路508bのうち、チャネル1の16ビット乱数回路508bの1周目からのスタート値の設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「3」におけるビット値が”0”であれば、乱数更新の1周目のスタート値として0001Hが用いられる。これに対して、16ビット乱数初期設定3(KRL3)のビット「3」におけるビット値が”1”であれば、乱数更新の1周目のスタート値として遊技制御用マイクロコンピュータ560のIDナンバをもとにした値が用いられる。
16ビット乱数初期設定3(KRL3)のビット「2」は、チャネル1の16ビット乱数回路508bのスタート値をシステムリセットごとに変更するか否かの設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「2」におけるビット値が”0”であれば、システムリセット時にスタート値の変更は行わない。これに対して、16ビット乱数初期設定3(KRL3)のビット「2」におけるビット値が”1”であれば、システムリセットごとにスタート値を変更する。
16ビット乱数初期設定3(KRL3)のビット「1」は、4チャネルの16ビット乱数回路508bのうち、チャネル0の16ビット乱数回路508bの1周目からのスタート値の設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「1」におけるビット値が”0”であれば、乱数更新の1周目のスタート値として0001Hが用いられる。これに対して、16ビット乱数初期設定3(KRL3)のビット「1」におけるビット値が”1”であれば、乱数更新の1周目のスタート値として遊技制御用マイクロコンピュータ560のIDナンバをもとにした値が用いられる。
16ビット乱数初期設定3(KRL3)のビット「0」は、チャネル0の16ビット乱数回路508bのスタート値をシステムリセットごとに変更するか否かの設定を示している。図17に示す例において、16ビット乱数初期設定3(KRL3)のビット「0」におけるビット値が”0”であれば、システムリセット時にスタート値の変更は行わない。これに対して、16ビット乱数初期設定3(KRL3)のビット「0」におけるビット値が”1”であれば、システムリセットごとにスタート値を変更する。
プログラム管理エリアに記憶される8ビット乱数初期設定1(KRS1)および8ビット乱数初期設定2(KRS2)は、8ビット乱数回路508aの設定を示す。図18は、8ビット乱数初期設定1(KRS1)のにおける設定内容の一例を示している。また、図19は、8ビット乱数初期設定2(KRS2)のにおける設定内容の一例を示している。
まず、図18を用いて、8ビット乱数初期設定1(KRS1)における設定内容を説明する。8ビット乱数初期設定1(KRS1)のビット「7」は、4チャネルの8ビット乱数回路508aのうち、チャネル1の8ビット乱数回路508aの起動方法の設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「7」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル1の8ビット乱数回路508aが起動される。これに対して、8ビット乱数初期設定1(KRS1)のビット「7」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル1の8ビット乱数回路508aが起動される。
8ビット乱数初期設定1(KRS1)のビット「6」は、チャネル1の8ビット乱数回路508aの更新クロックの設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「6」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、8ビット乱数初期設定1(KRS1)のビット「6」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
8ビット乱数初期設定1(KRS1)のビット「5−4」は、チャネル1の8ビット乱数回路508aが更新する乱数列を変更するか否かの設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「5−4」におけるビット値が”00”であれば、チャネル1の8ビット乱数回路508aが更新する乱数列は変更されない。また、8ビット乱数初期設定1(KRS1)のビット「5−4」におけるビット値が”01”であれば、チャネル1の8ビット乱数回路508aが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、8ビット乱数初期設定1(KRS1)のビット「5−4」におけるビット値が”10”であれば、チャネル1の8ビット乱数回路508aが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、8ビット乱数初期設定1(KRS1)のビット「5−4」におけるビット値が”11”であれば、チャネル1の8ビット乱数回路508aが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
8ビット乱数初期設定1(KRS1)のビット「3」は、4チャネルの8ビット乱数回路508aのうち、チャネル0の8ビット乱数回路508aの起動方法の設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「3」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル0の8ビット乱数回路508aが起動される。これに対して、8ビット乱数初期設定1(KRS1)のビット「3」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル0の8ビット乱数回路508aが起動される。
8ビット乱数初期設定1(KRS1)のビット「2」は、チャネル0の8ビット乱数回路508aの更新クロックの設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「2」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、8ビット乱数初期設定1(KRS1)のビット「2」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
8ビット乱数初期設定1(KRS1)のビット「1−0」は、チャネル0の8ビット乱数回路508aが更新する乱数列を変更するか否かの設定を示している。図18に示す例において、8ビット乱数初期設定1(KRS1)のビット「1−0」におけるビット値が”00”であれば、チャネル0の8ビット乱数回路508aが更新する乱数列は変更されない。また、8ビット乱数初期設定1(KRS1)のビット「1−0」におけるビット値が”01”であれば、チャネル0の8ビット乱数回路508aが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、8ビット乱数初期設定1(KRS1)のビット「1−0」におけるビット値が”10”であれば、チャネル0の8ビット乱数回路508aが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、8ビット乱数初期設定1(KRS1)のビット「1−0」におけるビット値が”11”であれば、チャネル0の8ビット乱数回路508aが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
次に、図19を用いて、8ビット乱数初期設定2(KRS2)における設定内容を説明する。8ビット乱数初期設定2(KRS2)のビット「7」は、4チャネルの8ビット乱数回路508aのうち、チャネル3の8ビット乱数回路508aの起動方法の設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「7」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル3の8ビット乱数回路508aが起動される。これに対して、8ビット乱数初期設定2(KRS2)のビット「7」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル3の8ビット乱数回路508aが起動される。
8ビット乱数初期設定2(KRS2)のビット「6」は、チャネル3の8ビット乱数回路508aの更新クロックの設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「6」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、8ビット乱数初期設定2(KRS2)のビット「6」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
8ビット乱数初期設定2(KRS2)のビット「5−4」は、チャネル3の8ビット乱数回路508aが更新する乱数列を変更するか否かの設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「5−4」におけるビット値が”00”であれば、チャネル3の8ビット乱数回路508aが更新する乱数列は変更されない。また、8ビット乱数初期設定2(KRS2)のビット「5−4」におけるビット値が”01”であれば、チャネル3の8ビット乱数回路508aが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、8ビット乱数初期設定2(KRS2)のビット「5−4」におけるビット値が”10”であれば、チャネル3の8ビット乱数回路508aが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、8ビット乱数初期設定2(KRS2)のビット「5−4」におけるビット値が”11”であれば、チャネル3の8ビット乱数回路508aが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
8ビット乱数初期設定2(KRS2)のビット「3」は、4チャネルの8ビット乱数回路508aのうち、チャネル2の8ビット乱数回路508aの起動方法の設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「3」におけるビット値が”0”であれば、ユーザモードに移行した後、ソフトウェア(ユーザプログラム)により乱数の最大値設定が行われたことにより、チャネル2の8ビット乱数回路508aが起動される。これに対して、8ビット乱数初期設定2(KRS2)のビット「3」におけるビット値が”1”であれば、ユーザプログラムによらず、リセット発生時にユーザモードに移行したことにもとづいて自動的にチャネル2の8ビット乱数回路508aが起動される。
8ビット乱数初期設定2(KRS2)のビット「2」は、チャネル2の8ビット乱数回路508aの更新クロックの設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「2」におけるビット値が”0”であれば、遊技制御用マイクロコンピュータ560の内部システムクロックを更新クロックとして用いる。これに対して、8ビット乱数初期設定2(KRS2)のビット「2」におけるビット値が”1”であれば、遊技制御用マイクロコンピュータ560の外部から入力された外部クロック信号を2分周した信号を更新クロックとして用いる。
8ビット乱数初期設定2(KRS2)のビット「1−0」は、チャネル2の8ビット乱数回路508aが更新する乱数列を変更するか否かの設定を示している。図19に示す例において、8ビット乱数初期設定2(KRS2)のビット「1−0」におけるビット値が”00”であれば、チャネル2の8ビット乱数回路508aが更新する乱数列は変更されない。また、8ビット乱数初期設定2(KRS2)のビット「1−0」におけるビット値が”01”であれば、チャネル2の8ビット乱数回路508aが更新する乱数列をソフトウェア(ユーザプログラム)により変更できる。また、8ビット乱数初期設定2(KRS2)のビット「1−0」におけるビット値が”10”であれば、チャネル2の8ビット乱数回路508aが更新する乱数列が2周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。また、8ビット乱数初期設定2(KRS2)のビット「1−0」におけるビット値が”11”であれば、チャネル2の8ビット乱数回路508aが更新する乱数列が1周目から自動的に変更され、以降、乱数列が一巡するごとに自動的に乱数列が変更される。
なお、8ビット乱数回路508aに関しては、16ビット乱数回路508bとは異なり、図17に示したようなスタート値の設定を行う機能はない。
プログラム管理エリアに記憶されるセキュリティ時間設定(KSES)は、セキュリティモードを延長する時間の設定を示す。図20は、セキュリティ時間設定(KSES)における設定内容の一例を示している。
セキュリティ時間設定(KSES)のビット[7−6]は、セキュリティモード時間をランダムに延長する時間の設定を示している。図20に示す例では、セキュリティ時間設定(KSES)のビット[7−6]に”01”が設定された場合には、セキュリティモード時間をランダムに延長するモードとして、ショートモードが設定され、具体的には、内部システムクロックが10.0MHzである場合には0〜0.816msの範囲の時間がランダムに延長され、内部システムクロックが12.0MHzである場合には0〜0.51msの範囲の時間がランダムに延長される。また、セキュリティ時間設定(KSES)のビット[7−6]に”10”が設定された場合には、セキュリティモード時間をランダムに延長するモードとして、ミドルモードが設定され、具体的には、内部システムクロックが10.0MHzである場合には0〜26.112msの範囲の時間がランダムに延長され、内部システムクロックが12.0MHzである場合には0〜16.32msの範囲の時間がランダムに延長される。また、セキュリティ時間設定(KSES)のビット[7−6]に”11”が設定された場合には、セキュリティモード時間をランダムに延長するモードとして、ロングモードが設定され、具体的には、内部システムクロックが10.0MHzである場合には0〜835.584msの範囲の時間がランダムに延長され、内部システムクロックが12.0MHzである場合には0〜522.24msの範囲の時間がランダムに延長される。
なお、セキュリティモード時間のランダム延長を行わないように設定する場合、図20に示すように、セキュリティ時間設定(KSES)のビット[7−6]に”00”を設定するようにすればよい。
セキュリティ時間設定(KSES)のビット[5]は、セキュリティモード時間を固定延長する時間の基準クロック信号の設定を示している。図20に示す例では、セキュリティ時間設定(KSES)のビット[5]に”0”が設定された場合には、基準クロック信号として222×TSCLKが選択される。また、セキュリティ時間設定(KSES)のビット[5]に”1”が設定された場合には、基準クロック信号として224×TSCLKが選択される。
セキュリティ時間設定(KSES)のビット[4−0]は、セキュリティモード時間を固定で延長する時間の設定を示している。具体的には、セキュリティモード時間の固定延長時間は、セキュリティ時間設定(KSES)のビット[5]で選択した基準クロックに、セキュリティ時間設定(KSES)のビット[4−0]で設定した設定値を乗算した値となる。例えば、セキュリティ時間設定(KSES)のビット[4−0]に”00001”を設定(すなわち、値「1」を設定)した場合、セキュリティ時間設定(KSES)のビット[5]に”0”を設定した場合には、固定延長時間は222×TSCLK×1となり、セキュリティ時間設定(KSES)のビット[5]に”1”を設定した場合には、固定延長時間は224×TSCLK×1となる。また、セキュリティ時間設定(KSES)のビット[4−0]に”01000”を設定(すなわち、値「8」を設定)した場合、セキュリティ時間設定(KSES)のビット[5]に”0”を設定した場合には、固定延長時間は222×TSCLK×8となり、セキュリティ時間設定(KSES)のビット[5]に”1”を設定した場合には、固定延長時間は224×TSCLK×8となる。また、セキュリティ時間設定(KSES)のビット[4−0]に”10000”を設定(すなわち、値「16」を設定)した場合、セキュリティ時間設定(KSES)のビット[5]に”0”を設定した場合には、固定延長時間は222×TSCLK×16となり、セキュリティ時間設定(KSES)のビット[5]に”1”を設定した場合には、固定延長時間は224×TSCLK×16となる。また、セキュリティ時間設定(KSES)のビット[4−0]に”11111”を設定(すなわち、値「31」を設定)した場合、セキュリティ時間設定(KSES)のビット[5]に”0”を設定した場合には、固定延長時間は222×TSCLK×31となり、セキュリティ時間設定(KSES)のビット[5]に”1”を設定した場合には、固定延長時間は224×TSCLK×31となる。なお、図20には、内部システムクロックが10.0MHzと12.0MHzである場合の固定延長時間の値の具体例もそれぞれ示されている。
なお、セキュリティモード時間の固定延長を行わないように設定する場合、図20に示すように、セキュリティ時間設定(KSES)のビット[4−0]に”00000”を設定するようにすればよい。
図20に示すように、セキュリティモード時間は、セキュリティ時間設定(KSES)のビット[7−6]の設定によるランダム延長と、セキュリティ時間設定(KSES)のビット[5−0]の設定による固定延長との2種類の方法で延長設定が可能である。そして、これら2種類の方法で設定された時間の加算時間が最終的なセキュリティモード時間の延長時間となる。
プログラム管理エリアに記憶される乱数クロック監視設定(KRCS)は、乱数用外部クロック端子(RCK端子)から入力された外部クロック信号の監視周波数の設定を示す。図21は、乱数クロック監視設定(KRCS)における設定内容の一例を示している。
乱数クロック監視設定(KRCS)のビット[7−2]は、固定ビット(すなわち、特に設定に使用しないビット)であり、全ビット必ず”0”を設定するものとする。
乱数クロック監視設定(KRCS)のビット[1−0]は、乱数を更新するためのクロックとして、乱数用外部クロック端子(RCK端子)から入力された外部クロック信号を選択した場合に、その入力クロックの周波数異常の検出対象とする周波数の設定を示している。図21に示す例では、乱数クロック監視設定(KRCS)のビット[1−0]に”00”が設定された場合には、監視周波数としてSCLK(内部システムクロック)の周波数未満を設定する。また、乱数クロック監視設定(KRCS)のビット[1−0]に”01”が設定された場合には、監視周波数としてSCLK(内部システムクロック)/2の周波数未満を設定する。また、乱数クロック監視設定(KRCS)のビット[1−0]に”10”が設定された場合には、監視周波数としてSCLK(内部システムクロック)/22の周波数未満を設定する。また、乱数クロック監視設定(KRCS)のビット[1−0]に”11”が設定された場合には、監視周波数としてSCLK(内部システムクロック)/23の周波数未満を設定する。
なお、乱数用外部クロック端子(RCK端子)から入力された外部クロック信号の監視周波数の異常を検出した場合には、後述する内部情報レジスタ(CIF)のビット3に”1”がセットされる。
なお、この実施の形態では、遊技制御用マイクロコンピュータ560は、8ビット乱数回路508aと16ビット乱数回路508bとのうち、16ビット乱数回路508bの動作異常(外部クロック周波数異常および更新異常)を検出する機能を備えている。具体的には、遊技制御用マイクロコンピュータ560は、乱数更新用クロックとして乱数用外部クロック端子(RCK端子)から入力された外部クロック信号が選択されている場合に、乱数クロック監視設定(KRCS)で設定されている監視周波数にもとづいて、外部クロック信号の周波数が低下したか否かを検出し、外部クロック信号の周波数が低下(外部クロック周波数異常)を検出した場合には、後述する内部情報レジスタ(CIF)のビット3に”1”をセットする。
また、遊技制御用マイクロコンピュータ560は、16ビット乱数回路508bの乱数の更新状態を監視する機能を備え、更新状態に異常を検出すると(例えば、乱数値が同じ値のまま更新されなくなったり、通常は乱数値が1つずつカウントアップされていくのに乱数値のカウント値がいきなり2以上の値増加した状態を検出したりすると)、内部情報レジスタ(CIF)のビット7〜4のうちの対応するビットに”1”をセットする。
なお、この実施の形態では、乱数クロック監視設定(KRCS)を用いて設定を行うことによって、16ビット乱数回路508bの動作異常の検出に関して、監視対象の外部クロック信号の監視周波数を設定する場合を示しているが、外部クロック周波数異常の検出自体を行うか否かを設定可能に構成したり、更新異常の検出自体を行うか否かを設定可能に構成したりしてもよい。この場合、外部クロック周波数異常の検出自体を行うか否かの設定と、更新異常の検出自体を行うか否かの設定とをそれぞれ独立して行えるように構成してもよいし、両方の設定を一括して有効とするか無効とするかのみ行えるように構成してもよい。
なお、外部クロック周波数異常の検出自体を行うか否かや更新異常の検出自体を行うか否かを設定可能とするためには、例えば、乱数回路自体を起動するか否かを設定するようにし、乱数回路を起動しないように設定した場合には、事実上、外部クロック周波数異常の検出や更新異常の検出を行えないので、外部クロック周波数異常の検出や更新異常の検出を行わないように設定したといえる。このように、外部クロック周波数異常の検出自体を行うか否かや更新異常の検出自体を行うか否かの設定は、乱数回路自体を起動するか否かを設定することによって実現することも含む概念である。
また、この実施の形態では、乱数用クロック生成回路112から専用の乱数用クロックRCLKを乱数回路508a,508bに外部入力する場合を示しているが、例えば、制御用クロック生成回路111からの制御用クロックCCLKを外部入力する場合など専用の乱数用クロックRCLK以外のクロックを外部入力する場合であっても、外部クロック周波数異常の検出や更新異常の検出を行うことが可能である。なお、乱数回路の更新異常の検出に関しては、乱数用クロック生成回路112から専用の乱数用クロックRCLK用いて乱数更新する場合と、制御用クロック生成回路111からの制御用クロックCCLKなど他のクロックを用いて乱数更新する場合とのいずれか一方の場合のみ設定可能に構成してもよい。
また、この実施の形態では、外部クロック周波数の異常の検出を行い、遊技制御用マイクロコンピュータ560の内部システムクロックSCLKの周波数については特に異常の検出を行っていないが、それは次のような理由による。すなわち、乱数更新に内部システムクロックSCLKを用いる場合には、内部システムクロックSCLKに異常が発生しているような状況では、CPU56自体の動作が停止している筈であるので、CPU56が動作しているのに乱数の更新だけが停止しているような事態が生じる場合がなく、何らかの問題が生じるおそれがない。これに対して、乱数更新に外部クロック信号を用いる場合には、CPU56が動作しているのに乱数の更新だけが停止しているような事態が生じる可能性があり弊害が生じるおそれがあるためである。
図6に示す遊技制御用マイクロコンピュータ560が備える外部バスインタフェース501は、遊技制御用マイクロコンピュータ560を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバスおよび各制御信号の方向制御機能などを有するバスインタフェースである。例えば、外部バスインタフェース501は、遊技制御用マイクロコンピュータ560に外付けされた外部メモリや外部入出力装置などに接続され、これらの外部装置との間でアドレス信号やデータ信号、各種の制御信号などを送受信するものであればよい。
遊技制御用マイクロコンピュータ560が備えるクロック回路502は、例えば制御用外部クロック端子EXに入力される発振信号を2分周することなどにより、内部システムクロックSCLKを生成する回路である。なお、生成された内部システムクロックは、外部出力端子(CLKO端子)から外部に出力される。
遊技制御用マイクロコンピュータ560が備える照合用ブロック503は、外部の照合機と接続し、チップの照合を行う機能を備える。
遊技制御用マイクロコンピュータ560が備える固有情報記憶回路504は、例えば遊技制御用マイクロコンピュータ560の内部情報となる複数種類の固有情報を記憶する回路である。一例として、固有情報記憶回路504は、ROMコード、チップ個別ナンバー、IDナンバーといった3種類の固有情報を記憶する。ROM54コードは、ROM54の所定領域における記憶データから生成される4バイトの数値であり、生成方法の異なる4つの数値が準備されればよい。チップ個別ナンバーは、遊技制御用マイクロコンピュータ560の製造時に付与される4バイトの番号であり、遊技制御用マイクロコンピュータ560を構成するチップ毎に異なる数値を示している。IDナンバーは、遊技制御用マイクロコンピュータ560の製造時に付与される8バイトの番号であり、遊技制御用マイクロコンピュータ560を構成するチップ毎に異なる数値を示している。ここで、チップ個別ナンバーはユーザプログラムから読み取ることができる一方、IDナンバーはユーザプログラムから読み取ることができないように設定されていればよい。なお、固有情報記憶回路504は、例えばROM54の所定領域を用いることなどにより、ROM54に含まれるようにしてもよい。あるいは、固有情報記憶回路504は、例えばCPU56の内蔵レジスタを用いることなどにより、CPU56に含まれるようにしてもよい。
遊技制御用マイクロコンピュータ560が備える演算回路505は、乗算および除算を行う回路である。
遊技制御用マイクロコンピュータ560が備えるリセット/割り込みコントローラ506は、遊技制御用マイクロコンピュータ560の内部や外部にて発生する各種リセット、割込み要求を制御するためのものである。リセット/割り込みコントローラ506が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子XSRSTに一定の期間にわたりローレベル信号が入力されたときに発生するリセットである。なお、この実施の形態では、リセット設定(KRES)の設定により、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したときや、指定エリア外走行禁止(IAT)が発生したときにも、システムリセットが発生することがある。ユーザリセットは、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことや、指定エリア外走行禁止(IAT)が発生したことなど、所定の要因により発生するリセットである。
リセット/割り込みコントローラ506が制御する割込みには、ノンマスカブル割込みNMIとマスカブル割込みINTが含まれている。ノンマスカブル割込みNMIは、CPU56の割込み禁止状態でも無条件に受け付けられる割込みであり、外部ノンマスカブル割込み端子XNMI(入力ポートPI6と兼用)に一定の期間にわたりローレベル信号が入力されたときに発生する割込みである。マスカブル割込みINTは、CPU56の設定命令により、割込み要求の受け付けを許可/禁止できる割込みであり、優先順位設定による多重割込みの実行が可能である。マスカブル割込みINTの要因としては、外部マスカブル割込み端子XINT(入力ポートPI5と兼用)に一定の期間にわたりローレベル信号が入力されたこと、タイマ回路509にてタイムアウトが発生したこと、シリアル通信回路512にてデータ受信またはデータ送信による割込み要因が発生したこと、乱数回路508a,508bにて乱数値となる数値データの取込による割込み要因が発生したことなど、複数種類の割込み要因があらかじめ定められていればよい。
リセット/割り込みコントローラ506は、図9〜図11に示すような遊技制御用マイクロコンピュータ560が備える内蔵レジスタのうち、内部情報レジスタCIF(アドレスFE25H)などを用いて、割込みの制御やリセットの管理を行う。内部情報レジスタCIFは、直前に発生したリセット要因を管理したり、乱数更新状態、乱数更新クロックを外部クロックとした場合の入力周波数の状態を読み取るためのレジスタである。
図22(A)は、内部情報レジスタCIFの構成例を示している。図22(B)は、内部情報レジスタCIFに格納される内部情報データの各ビットにおける設定内容の一例を示している。内部情報レジスタCIFのビット番号[7]に格納される内部情報データRL3ERは、チャネル3の16ビット乱数回路508bが更新する16ビット乱数RL3の更新状態の異常を示す。図22(B)に示す例では、16ビット乱数RL3の更新異常が検知されないときに、内部情報データRL3ERのビット値が“0”となる一方、16ビット乱数RL3の更新異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[6]に格納される内部情報データRL2ERは、チャネル2の16ビット乱数回路508bが更新する16ビット乱数RL2の更新状態の異常を示す。図22(B)に示す例では、16ビット乱数RL2の更新異常が検知されないときに、内部情報データRL2ERのビット値が“0”となる一方、16ビット乱数RL2の更新異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[5]に格納される内部情報データRL1ERは、チャネル1の16ビット乱数回路508bが更新する16ビット乱数RL1の更新状態の異常を示す。図22(B)に示す例では、16ビット乱数RL1の更新異常が検知されないときに、内部情報データRL1ERのビット値が“0”となる一方、16ビット乱数RL1の更新異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[4]に格納される内部情報データRL0ERは、チャネル0の16ビット乱数回路508bが更新する16ビット乱数RL0の更新状態の異常を示す。図22(B)に示す例では、16ビット乱数RL0の更新異常が検知されないときに、内部情報データRL0ERのビット値が“0”となる一方、16ビット乱数RL0の更新異常が検知されたときには、そのビット値が“1”となる。なお、内部情報レジスタCIFのビット番号[7−4」は、初期値として”0”が設定されている。
内部情報レジスタCIFのビット番号[3]に格納される内部情報データRCERは、乱数更新用クロックとして乱数用外部クロック端子(RCK端子)から入力された外部クロック信号が選択されている場合に、その外部クロック信号の周波数異常を示す。図22(B)に示す例では、外部クロック信号の周波数異常が検知されないときに、内部情報データRCERのビット値が“0”となる一方、外部クロック信号の周波数異常が検知されたときには、そのビット値が“1”となる。なお、内部情報レジスタCIFのビット番号[3」は、初期値として”0”が設定されている。
内部情報レジスタCIFのビット番号[2]に格納される内部情報データSRSFは、直前に発生したリセット要因がシステムリセットであることを示す。図22(B)に示す例では、直前のリセット要因がシステムリセットではないときに(システムリセット未発生)、内部情報データSRSFのビット値が“0”となる一方、システムリセットであるときには(システムリセット発生)、そのビット値が“1”となる。なお、内部情報レジスタCIFのビット番号[2」は、初期値として”1”が設定されている。
内部情報レジスタCIFのビット番号[1]に格納される内部情報データWDTFは、直前に発生したリセット要因がウオッチドッグタイマ(WDT)506bからタイムアウト信号を入力したことによるユーザリセットであることを示す。図22(B)に示す例では、直前のリセット要因がタイムアウト信号によるユーザリセットではないときに(タイムアウト信号によるユーザリセット未発生)、内部情報データWDTFのビット値が“0”となる一方、タイムアウト信号によるユーザリセットであるときには(タイムアウト信号によるユーザリセット発生)、そのビット値が“1”となる。なお、内部情報レジスタCIFのビット番号[1」は、初期値として”0”が設定されている。
内部情報レジスタCIFのビット番号[0]に格納される内部情報データIATFは、直前に発生したリセット要因がIAT回路506aからのIAT発生信号を入力したことによるユーザリセットであることを示す。図22(B)に示す例では、直前のリセット要因がIAT発生信号によるユーザリセットではないときに(IAT発生信号によるユーザリセット未発生)、内部情報データIATFのビット値が“0”となる一方、IAT発生信号によるユーザリセットであるときには(IAT発生信号によるユーザリセット発生)、そのビット値が“1”となる。なお、内部情報レジスタCIFのビット番号[0」は、初期値として”0”が設定されている。
遊技制御用マイクロコンピュータ560が備えるCPU56は、ROM54から読み出した制御コードにもとづいてユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を実行することにより、パチンコ遊技機1における遊技制御を実行する制御用CPUである。こうした遊技制御が実行されるときには、CPU56がROM54から固定データを読み出す固定データ読出動作や、CPU56がRAM55に各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPU56がRAM55に一時記憶されている各種の変動データを読み出す変動データ読出動作、CPU56が外部バスインタフェース501やパラレル入力ポート511、シリアル通信回路512などを介して遊技制御用マイクロコンピュータ560の外部から各種信号の入力を受け付ける受信動作、CPU56が外部バスインタフェース501やシリアル通信回路512、パラレル出力ポート513などを介して遊技制御用マイクロコンピュータ560の外部へと各種信号を出力する送信動作等も行われる。
遊技制御用マイクロコンピュータ560が備えるROM54には、ユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードや固定データ等が記憶されている。
遊技制御用マイクロコンピュータ560が備えるRAM55は、ゲーム制御用のワークエリアを提供する。ここで、RAM55の少なくとも一部は、電源基板910において作成されるバックアップ電源によってバックアップされているバックアップRAMであればよい。すなわち、パチンコ遊技機1への電力供給が停止しても、所定期間はRAM55の少なくとも一部の内容が保存される。
また、遊技制御用マイクロコンピュータ560は、フリーランカウンタ回路507として、8ビットのフリーランカウンタを4チャネル搭載している。
遊技制御用マイクロコンピュータ560が備える乱数回路508a,508bは、8ビット乱数や16ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。この実施の形態では、乱数回路508a,508bのうち16ビット乱数回路508bが生成するハードウェア乱数は、大当りとするか否かを判定するための大当り判定用乱数(ランダムR)として用いられる。なお、CPU56は、乱数回路508a,508bから抽出した数値データにもとづき、乱数回路508a,508bとは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工あるいは更新することで、遊技に用いられる乱数値の全部または一部を示す数値データをカウントするようにしてもよい。あるいは、CPU56は、乱数回路508a,508bを用いることなく、ソフトウェアによって大当り判定用乱数などの乱数値を示す数値データの一部をカウント(更新)するようにしてもよい。一例として、ハードウェアとなる乱数回路508a,508bからCPU56により抽出された数値データを、ソフトウェアにより加工することで、大当り判定用乱数(ランダムR)を示す数値データが更新され、それ以外の乱数値(例えば、大当り種別判定用乱数や、変動パターン種別決定用乱数、変動パターン決定用乱数)を示す数値データは、CPU56がランダムカウンタなどを用いてソフトウェアにより更新すればよい。
図23は、8ビット乱数回路508aの一構成例を示すブロック図である。また、図24は、16ビット乱数回路508bの一構成例を示すブロック図である。8ビット乱数回路508aおよび16ビット乱数回路508bは、図23および図24に示すように、乱数列変更選択回路523a,523b、乱数生成回路525a,525b、乱数列変更回路526a,526b、および最大値比較回路527a,527bを備えて構成される。また、16ビット乱数回路508bは、図24に示すように、8ビット乱数回路508aが備える構成要素に加えて、乱数スタート値選択回路535を備える。さらに、16ビット乱数回路508bは、図24に示すように、8ビット乱数回路508aが備える構成要素に加えて、乱数生成回路525bが更新監視回路537を含む。
また、図24に示す例では、16ビット乱数回路508bの回路部分の構成のみを示し、乱数列変更レジスタ522および最大値設定レジスタ524b以外の16ビット乱数回路508bが用いる各レジスタについては記載を省略している。なお、具体的には、16ビット乱数回路508bは、図23に示すRSハードラッチ選択レジスタ528a,528bに代えて図9に示すRL0ハードラッチ選択レジスタ0(RL0LS0)〜RL3ハードラッチ選択レジスタ(RL3LS)を用い、図23に示すRS0ハードラッチ乱数値レジスタ529a〜RS3ハードラッチ乱数値レジスタ529dに代えて図10および図11に示すRL0ハードラッチ乱数値レジスタ0(RL0HV0)〜RL3ハードラッチ乱数値レジスタ1(RL3HV1)を用い、図23に示すRSハードラッチフラグレジスタ530に代えて図10に示すRLハードラッチフラグレジスタ0(RLHF0)〜RLハードラッチフラグレジスタ1(RLHF1)を用い、図23に示すRS割り込み制御レジスタ531に代えて図9に示すRL割り込み制御レジスタ0(RLIC0)〜RL割り込み制御レジスタ1(RLIC1)を用い、図23に示すRS0ソフトラッチ乱数値レジスタ533a〜RS3ソフトラッチ乱数値レジスタ533dに代えて図10に示すRL0ソフトラッチ乱数値レジスタ(RL0SV)〜RL3ソフトラッチ乱数値レジスタ(RL3SV)を用いる。また、16ビット乱数回路508bは、乱数ソフトラッチレジスタ532および乱数ソフトラッチフラグレジスタ534については、8ビット乱数回路508aと兼用で同じレジスタを用いる。
また、8ビット乱数回路508aは、既に説明したプログラム管理エリアに設けられた8ビット乱数初期設定521a(図8に示す8ビット乱数初期設定1(KRS1)および8ビット乱数初期設定2(KRS2))の設定内容に従って動作する。
また、16ビット乱数回路508bは、既に説明したプログラム管理エリアに設けられた16ビット乱数初期設定521b(図8に示す16ビット乱数初期設定1(KRL1)〜16ビット乱数初期設定2(KRL2))の設定内容に従って動作する。また、16ビット乱数回路508bは、8ビット乱数回路508aの機能に加えて、乱数スタート値選択回路535が16ビット乱数初期設定536(図8に示す16ビット乱数初期設定3(KRL3))の設定内容に従って動作することにより、1周目の乱数値のスタート値を変更する機能を備えている(図17参照)。
また、16ビット乱数回路508bは、乱数生成回路525bが更新監視回路537を含んでおり、8ビット乱数回路508aの機能に加えて、更新監視回路537が動作することにより外部クロック周波数異常および更新異常を検出する機能を備えている(図21参照)。なお、この実施の形態では、1つの更新監視回路537により外部クロック周波数異常および更新異常の両方を検出する場合を示しているが、外部クロック周波数異常を検出する監視回路と更新異常を検出する監視回路とを別々に備えてもよい。
なお、8ビット乱数回路508aも更新監視回路を備えるように構成し、8ビット乱数回路508aの外部クロック周波数異常および更新異常を検出可能に構成するようにしてもよい。
また、乱数列変更レジスタ522は、図9に示すような遊技制御用マイクロコンピュータ560の内蔵レジスタに含まれる乱数列変更レジスタRDSCに対応している。なお、乱数列変更レジスタRDSCとして、8ビット乱数回路508aおよび16ビット乱数回路508bの各チャネルで共通のレジスタが用いられる。
また、最大値設定レジスタ524a,524bは、図9に示すような遊技制御用マイクロコンピュータ560の内蔵レジスタに含まれるRS0最大値設定レジスタ(RS0MX)〜RS3最大値設定レジスタ(RS3MX)に対応している(16ビット乱数回路508bの場合は、RL0最大値設定レジスタ(RL0MX)〜RL3最大値設定レジスタ(RL3MX)に対応している)。
また、ハードラッチ選択レジスタ528aは、図9に示すような遊技制御用マイクロコンピュータ560の内蔵レジスタに含まれるRSハードラッチ選択レジスタ0(RSLS0)に対応している。また、ハードラッチ選択レジスタ528bは、図9に示すような遊技制御用マイクロコンピュータ560の内蔵レジスタに含まれるRSハードラッチ選択レジスタ1(RSLS1)に対応している。なお、16ビット乱数回路508bの場合は、図9に示すRL0ハードラッチ選択レジスタ0(RL0LS0)〜RL3ハードラッチ選択レジスタ3(RL3LS)に対応している。
また、RS0ハードラッチ乱数値レジスタ529a〜RS3ハードラッチ乱数値レジスタ529dは、図11に示すような遊技制御用マイクロコンピュータ560の内蔵レジスタに含まれるRS0ハードラッチ乱数値レジスタ(RS0HV)〜RS3ハードラッチ乱数値レジスタ(RS3HV)に対応している。なお、16ビット乱数回路508bの場合は、図10に示すRL0ハードラッチ乱数値レジスタ0(RL0HV0)〜RL1ハードラッチ乱数値レジスタ1(RL1HV1)および図11に示すRL2ハードラッチ乱数値レジスタ0(RL2HV0)〜RL3ハードラッチ乱数値レジスタ1(RL3HV1)に対応している。
また、RSハードラッチフラグレジスタ530は、図10に示すRSハードラッチフラグレジスタ(RSHF)に対応している。なお、16ビット乱数回路508bの場合は、図10に示すRLハードラッチフラグレジスタ0(RLHF0)〜RLハードラッチフラグレジスタ1(RLHF1)に対応している。
また、RS割り込み制御レジスタ531は、図9に示すRS割り込み制御レジスタ(RSIC)に対応している。なお、16ビット乱数回路508bの場合は、図9に示すRL割り込み制御レジスタ0(RLIC0)〜RL割り込み制御レジスタ1(RLIC1)に対応している。
また、乱数ソフトラッチレジスタ532は、図9に示す乱数ソフトラッチレジスタ(RDSL)に対応している。なお、ソフトラッチレジスタRDSLとして、8ビット乱数回路508aおよび16ビット乱数回路508bの各チャネルで共通のレジスタが用いられる。
また、RS0ソフトラッチ乱数値レジスタ533a〜RS3ソフトラッチ乱数値レジスタ533dは、は、図10に示すRS0ソフトラッチ乱数値レジスタ(RS0SV)〜RS3ソフトラッチ乱数値レジスタ(RS3SV)に対応している。なお、16ビット乱数回路508bの場合は、図10に示すRL0ソフトラッチ乱数値(RL0SV)〜RL3ソフトラッチ乱数値(RL3SV)に対応している。
また、乱数ソフトラッチフラグレジスタ534は、図9に示す乱数ソフトラッチフラグレジスタ(RDSF)に対応している。なお、乱数ソフトラッチフラグレジスタRDSFとして、8ビット乱数回路508aおよび16ビット乱数回路508bの各チャネルで共通のレジスタが用いられる。
乱数列変更選択回路523a,523bは、図18や図19に示す8ビット乱数初期設定1(KRS1)や8ビット乱数初期設定2(KRS2)の設定内容に従って(16ビット乱数回路508bの場合には、図15や図16に示す16ビット乱数初期設定1(KRL1)や16ビット乱数初期設定2(KRL2)の設定内容に従って)、乱数列の変更方法として、「変更しない」、「ソフトウェアで変更」、「2周目から自動で変更」または「1周目から自動で変更」のうちのいずれかを選択する。そして、「ソフトウェアで変更」、「2周目から自動で変更」または「1周目から自動で変更」のいずれかに選択した場合には、その選択方法に従って乱数列変更回路526a,526bに乱数列を変更させる。また、「変更しない」を選択した場合には乱数列を変更させる制御を行わない。
乱数列変更回路526a,526bは、乱数生成回路525a,525bにより生成された数値データの順列を、乱数列変更選択回路523a,523bの指示に従って変更可能とする回路である。例えば、乱数列変更回路526a,526bは、「ソフトウェアで変更」が指示された場合には、乱数生成回路525a,525bが更新する乱数列をソフトウェア(ユーザプログラム)により変更する。また、例えば、乱数列変更回路526a,526bは、「2周目から自動で変更」が指示された場合には、乱数生成回路525a,525bが更新する乱数列を2周目から自動的に変更し、以降、乱数列が一巡するごとに自動的に乱数列を変更する。また、例えば、乱数列変更回路526a,526bは、「1周目から自動で変更」が指示された場合には、乱数生成回路525a,525bが更新する乱数列を1周目から自動的に変更し、以降、乱数列が一巡するごとに自動的に乱数列を変更する。
乱数生成回路525a,525bは、例えば8ビットのカウンタ(16ビット乱数回路508bの場合は16ビットのカウンタ)などから構成され、乱数更新クロック信号などの入力にもとづき、数値データを更新可能な所定の範囲において所定の初期値から所定の最終値まで循環的に更新する回路である。例えば乱数生成回路525a,525bは、乱数更新クロック信号における立ち下がりエッジに応答して、「0」から「255」までの範囲内で設定された初期値から「255」まで1ずつ加算するように数値データをカウントアップして行く(16ビット乱数回路508bの場合には、「0」から「65535」までの範囲内で設定された初期値から「65535」まで1ずつ加算するように数値データをカウントアップして行く)。そして、「255」までカウントアップした後には、「0」から初期値よりも1小さい最終値となる数値まで1ずつ加算するようにカウントアップすることで、数値データを循環的に更新する。
最大値比較回路527a,527bは、図18や図19に示す8ビット乱数初期設定1(KRS1)や8ビット乱数初期設定2(KRS2)の設定内容に従って(16ビット乱数回路508bの場合には、図15や図16に示す16ビット乱数初期設定1(KRL1)や16ビット乱数初期設定2(KRL2)の設定内容に従って)、乱数生成回路525a,525bが生成する乱数値の最大値を設定する。
図25(A)は、RL0ハードラッチ選択レジスタ0(RL0LS0)の構成例を示している。図25(B)は、RL0ハードラッチ選択レジスタ0(RL0LS0)に格納されるデータの各ビットにおける設定内容の一例を示している。RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[7]に格納されるデータRL01RFは、RL0ハードラッチ乱数値レジスタ1(RL0HV1)に、外部端子入力により、16ビット乱数RL0の値を取り込む際の条件の設定を示している。図25(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRL01RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRL01RFは、初期値として”0”が設定されている。
なお、この実施の形態では、プログラム管理エリアや内蔵レジスタのレジスタに関して、具体的には、プログラム管理エリアなどの対応するビットを”0”または”1”のいずれかの値としておくことにより、その対応するビットの値が読み込まれて、読み込まれた”0”または”1”の値が遊技制御用マイクロコンピュータ560の制御レジスタにハードウェア的に書き込まれることにより各種の設定が行われる。例えば、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット7については、そのビット7から読み込まれた値が”0”であれば、遊技制御用マイクロコンピュータ560の制御レジスタにハードウェア的に”0”が書き込まれることによりRL0ハードラッチ乱数値レジスタ1(RL0HV1)から値を読み込まないと次の値をラッチしないように設定され、そのビット7から読み込まれた値が”1”であれば、遊技制御用マイクロコンピュータ560の制御レジスタにハードウェア的に”1”が書き込まれることによりRL0ハードラッチ乱数値レジスタ1(RL0HV1)から値を読み込まなくても次の値をラッチするように設定される。このことは、他のプログラム管理エリアの各設定項目や内蔵レジスタの各レジスタの各ビットに関しても同様である。
RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[6−4]に格納されるデータRL01LS0〜RL01LS2は、RL0ハードラッチ乱数値レジスタ1(RL0HV1)に、どの外部端子入力により、16ビット乱数RL0の値を取り込むかの設定を示している。図25(B)に示す例では、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[6−4]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[6−4]に”110”や”111”が設定された場合には、その設定は無効である。また、データRL01LS0〜RL01LS2は、初期値として”000”が設定されている。
RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[3]に格納されるデータRL00RFは、RL0ハードラッチ乱数値レジスタ0(RL0HV0)に、外部端子入力により、16ビット乱数RL0の値を取り込む際の条件の設定を示している。図25(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRL00RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRL00RFは、初期値として”0”が設定されている。
RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[2−0]に格納されるデータRL00LS0〜RL00LS2は、RL0ハードラッチ乱数値レジスタ0(RL0HV0)に、どの外部端子入力により、16ビット乱数RL0の値を取り込むかの設定を示している。図25(B)に示す例では、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[2−0]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット番号[2−0]に”110”や”111”が設定された場合には、その設定は無効である。また、データRL00LS0〜RL00LS2は、初期値として”000”が設定されている。
図26(A)は、RL0ハードラッチ選択レジスタ1(RL0LS1)の構成例を示している。図26(B)は、RL0ハードラッチ選択レジスタ1(RL0LS1)に格納されるデータの各ビットにおける設定内容の一例を示している。RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[7]に格納されるデータRL03RFは、RL0ハードラッチ乱数値レジスタ3(RL0HV3)に、外部端子入力により、16ビット乱数RL0の値を取り込む際の条件の設定を示している。図26(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRL03RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRL03RFは、初期値として”0”が設定されている。
RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[6−4]に格納されるデータRL03LS0〜RL03LS2は、RL0ハードラッチ乱数値レジスタ3(RL0HV3)に、どの外部端子入力により、16ビット乱数RL0の値を取り込むかの設定を示している。図26(B)に示す例では、RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[6−4]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[6−4]に”110”や”111”が設定された場合には、その設定は無効である。また、データRL03LS0〜RL03LS2は、初期値として”000”が設定されている。
RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[3]に格納されるデータRL02RFは、RL0ハードラッチ乱数値レジスタ2(RL0HV2)に、外部端子入力により、16ビット乱数RL0の値を取り込む際の条件の設定を示している。図26(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRL02RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRL02RFは、初期値として”0”が設定されている。
RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[2−0]に格納されるデータRL02LS0〜RL02LS2は、RL0ハードラッチ乱数値レジスタ2(RL0HV2)に、どの外部端子入力により、16ビット乱数RL0の値を取り込むかの設定を示している。図26(B)に示す例では、RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[2−0]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RL0ハードラッチ選択レジスタ1(RL0LS1)のビット番号[2−0]に”110”や”111”が設定された場合には、その設定は無効である。また、データRL02LS0〜RL02LS2は、初期値として”000”が設定されている。
図27(A)は、RLnハードラッチ選択レジスタ(RLnLS)の構成例を示している。図27(B)は、RLnハードラッチ選択レジスタ(RLnLS)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、図27において、nは0〜3の値をとる。RLnハードラッチ選択レジスタ(RLnLS)のビット番号[7]に格納されるデータRLn1RFは、RLnハードラッチ乱数値レジスタ1(RLnHV1)に、外部端子入力により、16ビット乱数RLnの値を取り込む際の条件の設定を示している。図27(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRLn1RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRLn1RFは、初期値として”0”が設定されている。
RLnハードラッチ選択レジスタ(RLnLS)のビット番号[6−4]に格納されるデータRLn1LS0〜RLn1LS2は、RLnハードラッチ乱数値レジスタ1(RLnHV1)に、どの外部端子入力により、16ビット乱数RLnの値を取り込むかの設定を示している。図27(B)に示す例では、RLnハードラッチ選択レジスタ(RLnLS)のビット番号[6−4]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RLnハードラッチ選択レジスタ(RLnLS)のビット番号[6−4]に”110”や”111”が設定された場合には、その設定は無効である。また、データRLn1LS0〜RLn1LS2は、初期値として”000”が設定されている。
RLnハードラッチ選択レジスタ(RLnLS)のビット番号[3]に格納されるデータRLn0RFは、RLnハードラッチ乱数値レジスタ0(RLnHV0)に、外部端子入力により、16ビット乱数RLnの値を取り込む際の条件の設定を示している。図27(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRLn0RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRLn0RFは、初期値として”0”が設定されている。
RLnハードラッチ選択レジスタ(RLnLS)のビット番号[2−0]に格納されるデータRLn0LS0〜RLn0LS2は、RLnハードラッチ乱数値レジスタ0(RLnHV0)に、どの外部端子入力により、16ビット乱数RLnの値を取り込むかの設定を示している。図27(B)に示す例では、RLnハードラッチ選択レジスタ(RLnLS)のビット番号[2−0]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RLnハードラッチ選択レジスタ(RLnLS)のビット番号[2−0]に”110”や”111”が設定された場合には、その設定は無効である。また、データRLn0LS0〜RLn0LS2は、初期値として”000”が設定されている。
図28(A)は、RSハードラッチ選択レジスタ0(RSLS0)の構成例を示している。図28(B)は、RSハードラッチ選択レジスタ0(RSLS0)に格納されるデータの各ビットにおける設定内容の一例を示している。RSハードラッチ選択レジスタ0(RSLS0)のビット番号[7]に格納されるデータRS1RFは、RS1ハードラッチ乱数値レジスタ(RS1HV)に、外部端子入力により、8ビット乱数RS1の値を取り込む際の条件の設定を示している。図28(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRS1RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRS1RFは、初期値として”0”が設定されている。
RSハードラッチ選択レジスタ0(RSLS0)のビット番号[6−4]に格納されるデータRS1LS0〜RS1LS2は、RS1ハードラッチ乱数値レジスタ(RS1HV)に、どの外部端子入力により、8ビット乱数RS1の値を取り込むかの設定を示している。図28(B)に示す例では、RSハードラッチ選択レジスタ0(RSLS0)のビット番号[6−4]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RSハードラッチ選択レジスタ0(RSLS0)のビット番号[6−4]に”110”や”111”が設定された場合には、その設定は無効である。また、データRS1LS0〜RS1LS2は、初期値として”000”が設定されている。
RSハードラッチ選択レジスタ0(RSLS0)のビット番号[3]に格納されるデータRS0RFは、RS0ハードラッチ乱数値レジスタ(RS0HV)に、外部端子入力により、8ビット乱数RS0の値を取り込む際の条件の設定を示している。図28(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRS0RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRS0RFは、初期値として”0”が設定されている。
RSハードラッチ選択レジスタ0(RSLS0)のビット番号[2−0]に格納されるデータRS0LS0〜RS0LS2は、RS0ハードラッチ乱数値レジスタ(RS0HV)に、どの外部端子入力により、8ビット乱数RS0の値を取り込むかの設定を示している。図28(B)に示す例では、RSハードラッチ選択レジスタ0(RSLS0)のビット番号[2−0]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RSハードラッチ選択レジスタ0(RSLS0)のビット番号[2−0]に”110”や”111”が設定された場合には、その設定は無効である。また、データRS0LS0〜RS0LS2は、初期値として”000”が設定されている。
図29(A)は、RSハードラッチ選択レジスタ1(RSLS1)の構成例を示している。図29(B)は、RSハードラッチ選択レジスタ1(RSLS1)に格納されるデータの各ビットにおける設定内容の一例を示している。RSハードラッチ選択レジスタ1(RSLS1)のビット番号[7]に格納されるデータRS3RFは、RS3ハードラッチ乱数値レジスタ(RS3HV)に、外部端子入力により、8ビット乱数RS3の値を取り込む際の条件の設定を示している。図29(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRS3RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRS3RFは、初期値として”0”が設定されている。
RSハードラッチ選択レジスタ1(RSLS1)のビット番号[6−4]に格納されるデータRS3LS0〜RS3LS2は、RS3ハードラッチ乱数値レジスタ(RS3HV)に、どの外部端子入力により、8ビット乱数RS3の値を取り込むかの設定を示している。図29(B)に示す例では、RSハードラッチ選択レジスタ1(RSLS1)のビット番号[6−4]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RSハードラッチ選択レジスタ0(RSLS1)のビット番号[6−4]に”110”や”111”が設定された場合には、その設定は無効である。また、データRS3LS0〜RS3LS2は、初期値として”000”が設定されている。
RSハードラッチ選択レジスタ1(RSLS1)のビット番号[3]に格納されるデータRS2RFは、RS2ハードラッチ乱数値レジスタ(RS2HV)に、外部端子入力により、8ビット乱数RS2の値を取り込む際の条件の設定を示している。図29(B)に示す例では、値を読み込まないと次の値をラッチしないように設定した場合には、データRS2RFのビット値が“0”となる一方、値を読み込まなくても次の値をラッチするように設定した場合には、そのビット値が“1”となる。なお、データRS2RFは、初期値として”0”が設定されている。
RSハードラッチ選択レジスタ1(RSLS1)のビット番号[2−0]に格納されるデータRS2LS0〜RS2LS2は、RS2ハードラッチ乱数値レジスタ(RS2HV)に、どの外部端子入力により、8ビット乱数RS2の値を取り込むかの設定を示している。図29(B)に示す例では、RSハードラッチ選択レジスタ1(RSLS1)のビット番号[2−0]に”000”が設定された場合にはPI0端子が選択され、”001”が設定された場合にはPI1端子が選択され、”010”が設定された場合にはPI2端子が選択され、”011”が設定された場合にはPI3端子が選択され、”100”が設定された場合にはPI4端子が選択され、”101”が設定された場合にはPI5/XINT端子が選択される。なお、RSハードラッチ選択レジスタ1(RSLS1)のビット番号[2−0]に”110”や”111”が設定された場合には、その設定は無効である。また、データRS2LS0〜RS2LS2は、初期値として”000”が設定されている。
図30(A)は、RL割り込み制御レジスタ0(RLIC0)の構成例を示している。図30(B)は、RL割り込み制御レジスタ0(RLIC0)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RL割り込み制御レジスタ0(RLIC0)のビット[7−6]のビット値は必ず”0”とされる。
RL割り込み制御レジスタ0(RLIC0)のビット番号[5]に格納されるデータRL11IEは、RL1ハードラッチ乱数値レジスタ1(RL1HV1)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL11IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL11IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ0(RLIC0)のビット番号[4]に格納されるデータRL10IEは、RL1ハードラッチ乱数値レジスタ0(RL1HV0)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL10IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL10IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ0(RLIC0)のビット番号[3]に格納されるデータRL03IEは、RL0ハードラッチ乱数値レジスタ3(RL0HV3)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL03IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL03IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ0(RLIC0)のビット番号[2]に格納されるデータRL02IEは、RL0ハードラッチ乱数値レジスタ2(RL0HV2)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL02IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL02IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ0(RLIC0)のビット番号[1]に格納されるデータRL01IEは、RL0ハードラッチ乱数値レジスタ1(RL0HV1)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL01IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL01IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ0(RLIC0)のビット番号[1]に格納されるデータRL00IEは、RL0ハードラッチ乱数値レジスタ0(RL0HV0)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図30(B)に示す例では、割り込み禁止に設定した場合には、データRL00IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL00IEは、初期値として”0”が設定されている。
図31(A)は、RL割り込み制御レジスタ1(RLIC1)の構成例を示している。図31(B)は、RL割り込み制御レジスタ1(RLIC1)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RL割り込み制御レジスタ1(RLIC1)のビット[7−6]およびビット[3−2]のビット値は必ず”0”とされる。
RL割り込み制御レジスタ1(RLIC1)のビット番号[5]に格納されるデータRL31IEは、RL3ハードラッチ乱数値レジスタ1(RL3HV1)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図31(B)に示す例では、割り込み禁止に設定した場合には、データRL31IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL31IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ1(RLIC1)のビット番号[4]に格納されるデータRL30IEは、RL3ハードラッチ乱数値レジスタ0(RL3HV0)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図31(B)に示す例では、割り込み禁止に設定した場合には、データRL30IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL30IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ1(RLIC1)のビット番号[1]に格納されるデータRL21IEは、RL2ハードラッチ乱数値レジスタ1(RL2HV1)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図31(B)に示す例では、割り込み禁止に設定した場合には、データRL21IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL21IEは、初期値として”0”が設定されている。
RL割り込み制御レジスタ1(RLIC1)のビット番号[0]に格納されるデータRL20IEは、RL2ハードラッチ乱数値レジスタ0(RL2HV0)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図31(B)に示す例では、割り込み禁止に設定した場合には、データRL20IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRL20IEは、初期値として”0”が設定されている。
図32(A)は、RS割り込み制御レジスタ(RSIC)の構成例を示している。図32(B)は、RS割り込み制御レジスタ(RSIC)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RS割り込み制御レジスタ(RSIC)は、8ビット乱数回路508aとフリーランカウンタ回路507とで兼用で用いられるレジスタであり、RS割り込み制御レジスタ(RSIC)のビット[7−4]は、フリーランカウンタ回路507が用いるハードラッチレジスタ(FRC0ハードラッチレジスタ(FR0HV)〜FRC3ハードラッチレジスタ(FR3HV))に関する設定を示している。
RS割り込み制御レジスタ(RSIC)のビット番号[3]に格納されるデータRS3IEは、RS3ハードラッチ乱数値レジスタ(RS3HV)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図32(B)に示す例では、割り込み禁止に設定した場合には、データRS3IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRS3IEは、初期値として”0”が設定されている。
RS割り込み制御レジスタ(RSIC)のビット番号[2]に格納されるデータRS2IEは、RS2ハードラッチ乱数値レジスタ(RS2HV)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図32(B)に示す例では、割り込み禁止に設定した場合には、データRS2IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRS2IEは、初期値として”0”が設定されている。
RS割り込み制御レジスタ(RSIC)のビット番号[1]に格納されるデータRS1IEは、RS1ハードラッチ乱数値レジスタ(RS1HV)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図32(B)に示す例では、割り込み禁止に設定した場合には、データRS1IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRS1IEは、初期値として”0”が設定されている。
RS割り込み制御レジスタ(RSIC)のビット番号[0]に格納されるデータRS0IEは、RS0ハードラッチ乱数値レジスタ(RS0HV)に、乱数値が取り込まれたことを要因とする割り込みの禁止/許可の設定を示している。図32(B)に示す例では、割り込み禁止に設定した場合には、データRS0IEのビット値が“0”となる一方、割り込み許可に設定した場合には、そのビット値が“1”となる。なお、データRS0IEは、初期値として”0”が設定されている。
図33(A)は、RLn最大値設定レジスタ(RLnMX)の構成例を示している。図33(B)は、RLn最大値設定レジスタ(RLnMX)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、図33において、nは0〜3の値をとる。図33(B)に示すように、RLn最大値設定レジスタ(RLnMX)のビット番号[15−0]に格納されるデータRLnMX15〜RLnMX0は、16ビット乱数RLnの最大値が設定される。
図34(A)は、RSn最大値設定レジスタ(RSnMX)の構成例を示している。図34(B)は、RSn最大値設定レジスタ(RSnMX)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、図34において、nは0〜3の値をとる。図34(B)に示すように、RSn最大値設定レジスタ(RSnMX)のビット番号[7−0]に格納されるデータRSnMX7〜RSnMX0は、8ビット乱数RSnの最大値が設定される。
図35(A)は、乱数列変更レジスタ(RDSC)の構成例を示している。図35(B)は、乱数列変更レジスタ(RDSC)に格納されるデータの各ビットにおける設定内容の一例を示している。乱数列変更レジスタ(RDSC)のビット番号[7]に格納されるデータRS3SCは、8ビット乱数RS3の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRS3SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS3SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[6]に格納されるデータRS2SCは、8ビット乱数RS2の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRS2SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS2SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[5]に格納されるデータRS1SCは、8ビット乱数RS1の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRS1SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS1SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[4]に格納されるデータRS0SCは、8ビット乱数RS0の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRS0SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS0SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[3]に格納されるデータRL3SCは、16ビット乱数RL3の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRL3SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL3SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[2]に格納されるデータRL2SCは、16ビット乱数RL2の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRL2SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL2SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[1]に格納されるデータRL1SCは、16ビット乱数RL1の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRL1SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL1SCは、初期値として”0”が設定されている。
乱数列変更レジスタ(RDSC)のビット番号[0]に格納されるデータRL0SCは、16ビット乱数RL0の乱数列変更要求ビットを示している。図35(B)に示す例では、乱数列を変更しないに設定した場合には、データRL0SCのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL0SCは、初期値として”0”が設定されている。
図36(A)は、乱数ソフトラッチレジスタ(RDSL)の構成例を示している。図36(B)は、乱数ソフトラッチレジスタ(RDSL)に格納されるデータの各ビットにおける設定内容の一例を示している。乱数ソフトラッチレジスタ(RDSL)のビット番号[7]に格納されるデータRS3SLは、8ビット乱数RS3の乱数値を、RS3ソフトラッチ乱数値レジスタ(RS3SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRS3SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS3SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[6]に格納されるデータRS2SLは、8ビット乱数RS2の乱数値を、RS2ソフトラッチ乱数値レジスタ(RS2SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRS2SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS2SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[5]に格納されるデータRS1SLは、8ビット乱数RS1の乱数値を、RS1ソフトラッチ乱数値レジスタ(RS1SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRS1SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS1SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[4]に格納されるデータRS0SLは、8ビット乱数RS0の乱数値を、RS0ソフトラッチ乱数値レジスタ(RS0SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRS0SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRS0SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[3]に格納されるデータRL3SLは、16ビット乱数RL3の乱数値を、RL3ソフトラッチ乱数値レジスタ(RL3SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRL3SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL3SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[2]に格納されるデータRL2SLは、16ビット乱数RL2の乱数値を、RL2ソフトラッチ乱数値レジスタ(RL2SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRL2SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL2SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[1]に格納されるデータRL1SLは、16ビット乱数RL1の乱数値を、RL1ソフトラッチ乱数値レジスタ(RL1SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRL1SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL1SLは、初期値として”0”が設定されている。
乱数ソフトラッチレジスタ(RDSL)のビット番号[0]に格納されるデータRL0SLは、16ビット乱数RL0の乱数値を、RL0ソフトラッチ乱数値レジスタ(RL0SV)に取り込むためのビットを示している。図36(B)に示す例では、乱数値を取り込まないに設定した場合には、データRL0SLのビット値が“0”となる一方、乱数列を変更するに設定した場合には、そのビット値が“1”となる。なお、データRL0SLは、初期値として”0”が設定されている。
図37(A)は、乱数ソフトラッチフラグレジスタ(RDSF)の構成例を示している。図37(B)は、乱数ソフトラッチフラグレジスタ(RDSF)に格納されるデータの各ビットにおける設定内容の一例を示している。乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[7]に格納されるデータRS3SFは、RS3ソフトラッチ乱数値レジスタ(RS3SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRS3SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS3SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[6]に格納されるデータRS2SFは、RS2ソフトラッチ乱数値レジスタ(RS2SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRS2SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS2SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[5]に格納されるデータRS1SFは、RS1ソフトラッチ乱数値レジスタ(RS1SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRS1SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS1SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[4]に格納されるデータRS0SFは、RS0ソフトラッチ乱数値レジスタ(RS0SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRS0SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS0SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[3]に格納されるデータRL3SFは、RL3ソフトラッチ乱数値レジスタ(RL3SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRL3SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL3SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[2]に格納されるデータRL2SFは、RL2ソフトラッチ乱数値レジスタ(RL2SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRL2SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL2SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[1]に格納されるデータRL1SFは、RL1ソフトラッチ乱数値レジスタ(RL1SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRL1SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL1SFは、初期値として”0”が設定されている。
乱数ソフトラッチフラグレジスタ(RDSF)のビット番号[0]に格納されるデータRL0SFは、RL0ソフトラッチ乱数値レジスタ(RL0SV)に、乱数値が取り込まれたことを示している。図37(B)に示す例では、乱数値が取り込まれていない場合には、データRL0SFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL0SFは、初期値として”0”が設定されている。
図38(A)は、RLnソフトラッチ乱数値レジスタ(RLnSV)の構成例を示している。図38(B)は、RLnソフトラッチ乱数値レジスタ(RLnSV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図38において、nは0〜3の値をとる。図38(B)に示すように、RLnソフトラッチ乱数値レジスタ(RLnSV)のビット番号[15−0]に格納されるデータRLnSV15〜RLnSV0は、乱数ソフトラッチレジスタ(RDSL)により取り込まれた16ビット乱数RLnの値が格納される。なお、乱数値が取り込まれると、乱数ソフトラッチフラグレジスタ(RDSF)の該当するビットに”1”がセットされる。
図39(A)は、RSnソフトラッチ乱数値レジスタ(RSnSV)の構成例を示している。図39(B)は、RSnソフトラッチ乱数値レジスタ(RSnSV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図39において、nは0〜3の値をとる。図39(B)に示すように、RSnソフトラッチ乱数値レジスタ(RSnSV)のビット番号[7−0]に格納されるデータRSnSV7〜RSnSV0は、乱数ソフトラッチレジスタ(RDSL)により取り込まれた8ビット乱数RSnの値が格納される。なお、乱数値が取り込まれると、乱数ソフトラッチフラグレジスタ(RDSF)の該当するビットに”1”がセットされる。
図40(A)は、RLハードラッチフラグレジスタ0(RLHF0)の構成例を示している。図40(B)は、RLハードラッチフラグレジスタ0(RLHF0)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RLハードラッチフラグレジスタ0(RLHF0)のビット[7−6]のビット値は必ず”0”とされる。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[5]に格納されるデータRL11HFは、RL1ハードラッチ乱数値レジスタ1に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL11HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL11HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[4]に格納されるデータRL10HFは、RL1ハードラッチ乱数値レジスタ0に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL10HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL10HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[3]に格納されるデータRL03HFは、RL0ハードラッチ乱数値レジスタ3に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL03HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL03HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[2]に格納されるデータRL02HFは、RL0ハードラッチ乱数値レジスタ2に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL02HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL02HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[1]に格納されるデータRL01HFは、RL0ハードラッチ乱数値レジスタ1に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL01HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL01HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ0(RLHF0)のビット番号[0]に格納されるデータRL00HFは、RL0ハードラッチ乱数値レジスタ0に、乱数値が取り込まれたことを示している。図40(B)に示す例では、乱数値が取り込まれていない場合には、データRL00HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL00HFは、初期値として”0”が設定されている。
図41(A)は、RLハードラッチフラグレジスタ1(RLHF1)の構成例を示している。図41(B)は、RLハードラッチフラグレジスタ1(RLHF1)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RLハードラッチフラグレジスタ1(RLHF1)のビット[7−6]およびビット[3−2]のビット値は必ず”0”とされる。
RLハードラッチフラグレジスタ1(RLHF1)のビット番号[5]に格納されるデータRL31HFは、RL3ハードラッチ乱数値レジスタ1に、乱数値が取り込まれたことを示している。図41(B)に示す例では、乱数値が取り込まれていない場合には、データRL31HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL31HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ1(RLHF1)のビット番号[4]に格納されるデータRL30HFは、RL3ハードラッチ乱数値レジスタ0に、乱数値が取り込まれたことを示している。図41(B)に示す例では、乱数値が取り込まれていない場合には、データRL30HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL30HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ1(RLHF1)のビット番号[1]に格納されるデータRL21HFは、RL2ハードラッチ乱数値レジスタ1に、乱数値が取り込まれたことを示している。図41(B)に示す例では、乱数値が取り込まれていない場合には、データRL21HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL21HFは、初期値として”0”が設定されている。
RLハードラッチフラグレジスタ1(RLHF1)のビット番号[1]に格納されるデータRL20HFは、RL2ハードラッチ乱数値レジスタ0に、乱数値が取り込まれたことを示している。図41(B)に示す例では、乱数値が取り込まれていない場合には、データRL20HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRL20HFは、初期値として”0”が設定されている。
図42(A)は、RSハードラッチフラグレジスタ(RSHF)の構成例を示している。図42(B)は、RSハードラッチフラグレジスタ(RSHF)に格納されるデータの各ビットにおける設定内容の一例を示している。なお、RSハードラッチフラグレジスタ(RSHF)は、8ビット乱数回路508aとフリーランカウンタ回路507とで兼用で用いられるレジスタであり、RSハードラッチフラグレジスタ(RSHF)のビット[7−4]は、フリーランカウンタ回路507が用いるハードラッチレジスタ(FRC0ハードラッチレジスタ(FR0HV)〜FRC3ハードラッチレジスタ(FR3HV))に関する設定を示している。
RSハードラッチフラグレジスタ(RSHF)のビット番号[3]に格納されるデータRS3HFは、RS3ハードラッチ乱数値レジスタ(RS3HV)に、乱数値が取り込まれたことを示している。図42(B)に示す例では、乱数値が取り込まれていない場合には、データRS3HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS3HFは、初期値として”0”が設定されている。
RSハードラッチフラグレジスタ(RSHF)のビット番号[2]に格納されるデータRS2HFは、RS2ハードラッチ乱数値レジスタ(RS2HV)に、乱数値が取り込まれたことを示している。図42(B)に示す例では、乱数値が取り込まれていない場合には、データRS2HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS2HFは、初期値として”0”が設定されている。
RSハードラッチフラグレジスタ(RSHF)のビット番号[1]に格納されるデータRS1HFは、RS1ハードラッチ乱数値レジスタ(RS1HV)に、乱数値が取り込まれたことを示している。図42(B)に示す例では、乱数値が取り込まれていない場合には、データRS1HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS1HFは、初期値として”0”が設定されている。
RSハードラッチフラグレジスタ(RSHF)のビット番号[0]に格納されるデータRS0HFは、RS0ハードラッチ乱数値レジスタ(RS0HV)に、乱数値が取り込まれたことを示している。図42(B)に示す例では、乱数値が取り込まれていない場合には、データRS0HFのビット値が“0”となる一方、乱数値を取り込み済みである場合には、そのビット値が“1”となる。なお、データRS0HFは、初期値として”0”が設定されている。
図43(A)は、RL0ハードラッチ乱数値レジスタm(RL0mHV)の構成例を示している。図43(B)は、RL0ハードラッチ乱数値レジスタm(RL0mHV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図43において、mは0〜3の値をとる。図43(B)に示すように、RL0ハードラッチ乱数値レジスタm(RL0mHV)のビット番号[15−0]に格納されるデータRL0mHV15〜RL0mHV0は、外部端子入力により取り込まれた16ビット乱数RL0の値が格納される。なお、乱数値が取り込まれると、RLハードラッチフラグレジスタ0(RLHF0)の該当するビットに”1”がセットされる。
図44(A)は、RL1ハードラッチ乱数値レジスタm(RL1mHV)の構成例を示している。図44(B)は、RL1ハードラッチ乱数値レジスタm(RL1mHV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図44において、mは0〜3の値をとる。図44(B)に示すように、RL1ハードラッチ乱数値レジスタm(RL1mHV)のビット番号[15−0]に格納されるデータRL1mHV15〜RL1mHV0は、外部端子入力により取り込まれた16ビット乱数RL1の値が格納される。なお、乱数値が取り込まれると、RLハードラッチフラグレジスタ0(RLHF0)の該当するビットに”1”がセットされる。
図45(A)は、RL2ハードラッチ乱数値レジスタm(RL2mHV)の構成例を示している。図45(B)は、RL2ハードラッチ乱数値レジスタm(RL2mHV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図45において、mは0〜3の値をとる。図45(B)に示すように、RL2ハードラッチ乱数値レジスタm(RL2mHV)のビット番号[15−0]に格納されるデータRL2mHV15〜RL2mHV0は、外部端子入力により取り込まれた16ビット乱数RL2の値が格納される。なお、乱数値が取り込まれると、RLハードラッチフラグレジスタ1(RLHF1)の該当するビットに”1”がセットされる。
図46(A)は、RL3ハードラッチ乱数値レジスタm(RL3mHV)の構成例を示している。図46(B)は、RL3ハードラッチ乱数値レジスタm(RL3mHV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図46において、mは0〜3の値をとる。図46(B)に示すように、RL3ハードラッチ乱数値レジスタm(RL3mHV)のビット番号[15−0]に格納されるデータRL3mHV15〜RL3mHV0は、外部端子入力により取り込まれた16ビット乱数RL3の値が格納される。なお、乱数値が取り込まれると、RLハードラッチフラグレジスタ1(RLHF1)の該当するビットに”1”がセットされる。
図47(A)は、RSnハードラッチ乱数値レジスタ(RSnHV)の構成例を示している。図47(B)は、RSnハードラッチ乱数値レジスタ(RSnHV)に格納されるデータの各ビットにおける格納内容の一例を示している。なお、図47において、nは0〜3の値をとる。図47(B)に示すように、RSnハードラッチ乱数値レジスタ(RLnHV)のビット番号[70]に格納されるデータRSnHV7〜RSnHV0は、外部端子入力により取り込まれた8ビット乱数RSnの値が格納される。なお、乱数値が取り込まれると、RSハードラッチフラグレジスタ(RSHF)の該当するビットに”1”がセットされる。
図6に示す遊技制御用マイクロコンピュータ560が備えるタイマ回路509は、8ビットプログラマブルタイマであり、遊技制御用マイクロコンピュータ560は、タイマ回路509として、8ビットのカウンタを3チャネル備える。この実施の形態では、タイマ回路509を用いてユーザプログラムによる設定により、リアルタイム割り込み要求や時間計測を行うことが可能である。
図6に示す遊技制御用マイクロコンピュータ560が備える割り込みコントローラ510は、PI5/XINT端子からの外部割り込み要求や、内蔵の周辺回路(例えば、シリアル通信回路512、乱数回路508a,508b、タイマ回路509)からの割り込み要求を制御する回路である。
図6に示す遊技制御用マイクロコンピュータ560が備えるパラレル入力ポート511は、8ビット幅の入力専用ポート(PIP)を内蔵する。また、図6に示す遊技制御用マイクロコンピュータ560が備えるパラレル出力ポート513は、11ビット幅の出力専用ポート(POP)を内蔵する。
図6に示す遊技制御用マイクロコンピュータ560が備えるシリアル通信回路512は、外部に対する入出力において非同期シリアル通信を行う回路である。なお、遊技制御用マイクロコンピュータ560は、シリアル通信回路512として、送受信両用の1チャネルの回路と、送信用のみの3チャネルの回路とを備える。なお、例えば、送受信両用の回路については、例えば、双方向の通信が必要となる遊技制御用マイクロコンピュータ560と払出制御基板37が搭載する払出制御用マイクロコンピュータとの間の通信に用いるようにし、送信用のみの回路については、例えば、一方向の通信でよい遊技制御用マイクロコンピュータ560から演出制御用マイクロコンピュータ100に対する通信に用いるようにする。
図6に示す遊技制御用マイクロコンピュータ560が備えるアドレスデコード回路514は、遊技制御用マイクロコンピュータ560の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、遊技制御用マイクロコンピュータ560の内部回路、あるいは、周辺デバイスとなる外部装置を、選択的に有効動作させて、CPU56からのアクセスが可能となる。
次に、遊技機の動作について説明する。まず、この実施の形態では、既に説明したように、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生したときに、ユーザリセットを発生させるかシステムリセットを発生させるかを可能である(図14参照)。図48は、リセット設定(KRES)での設定内容によるリセット動作の違いを説明するための説明図である。
まず、図48(A)を用いてウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生したときにシステムリセットを発生させるように設定した場合について説明する。この場合、図48(A)に示すように、遊技機に対して電源が投入され電力供給が開始されると、遊技制御用マイクロコンピュータ56は、CPUコアを含む全ての内部回路を初期化するとともに、プログラム管理エリアの設定内容に従って、内部リセット動作の設定や乱数回路508a,508bの設定など遊技制御用マイクロコンピュータ560の各種設定をハードウェア的に行う(ステップS1001)。具体的には、プログラム管理エリアの図14に示すリセット設定(KRES)の設定内容に従って内部リセットの動作の設定を行ったり、プログラム管理エリアの図15〜図19に示す16ビット乱数初期設定1(KRL1)〜8ビット乱数初期設定2(KRS2)の設定内容に従って乱数回路508a,508bの設定を行ったりする。なお、図48(A)に示す例では、遊技制御用マイクロコンピュータ56は、プログラム管理エリアの設定内容に従って、内部リセット動作の設定としてシステムリセットを設定する。また、プログラム管理エリアの設定内容は予め遊技機の製作時に遊技機製造メーカ(ユーザ)によって設定されているものとする。
遊技制御用マイクロコンピュータ560の各種設定を完了すると、遊技制御用マイクロコンピュータ56は、セキュリティモードに移行し、セキュリティチェックを実行する(ステップS1002)。ステップS1002で実行するセキュリティチェックでは、ユーザプログラムの認証を行う。具体的には、ユーザプログラムをもとに計算された認証コードが正しいか否か再計算を行う。そして、認証コードが正しければ、ステップS1003に移行し、認証コードが正しくなければ、CPU56を停止する。なお、セキュリティモードに移行されるセキュリティモード時間は、既に説明したように、プログラム管理エリアの図20に示すセキュリティ時間設定(KSES)の設定内容に従って可変とされている。具体的には、プログラム管理エリアの図20に示すセキュリティ時間設定(KSES)の設定内容に従ってステップS1001の設定が行われることによりセキュリティモード時間が設定される。なお、認証コードは、予め遊技機の製作時の内蔵ROM54への書き込み時に遊技機製造メーカ(ユーザ)によってユーザプログラムとともに書き込まれているものとする。
そして、セキュリティチェックを終了すると、遊技制御用マイクロコンピュータ560は、ユーザモードに移行し、ユーザプログラムの実行を開始する。具体的には、後述する図50のメイン処理の実行を開始する。
次いで、ユーザプログラムが実行されているときに(具体的には、後述する図50のメイン処理内のループ処理や図51のタイマ割込処理の実行中に)、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生したものとする。図48(A)に示す例では、ステップS1001で内部リセット動作の設定としてシステムリセットが設定されていることから、タイムアウト信号やIAT信号の発生にもとづいてシステムリセットが発生する。
そして、ステップS1001と同様に、遊技制御用マイクロコンピュータ56は、CPUコアを含む全ての内部回路を初期化するとともに、プログラム管理エリアの設定内容に従って、内部リセット動作の設定や乱数回路508a,508bの設定など遊技制御用マイクロコンピュータ560の各種設定をハードウェア的に行う(ステップS1005)。また、遊技制御用マイクロコンピュータ560の各種設定を完了すると、ステップS1002と同様に、遊技制御用マイクロコンピュータ56は、セキュリティモードに移行し、セキュリティチェックを実行する(ステップS1006)。
そして、セキュリティチェックを終了すると、ステップS1003と同様に、遊技制御用マイクロコンピュータ560は、ユーザモードに移行し、ユーザプログラムの実行を開始する。具体的には、後述する図50のメイン処理の実行を再び開始する。
以降、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生するごとに、ステップS1004〜S1007の動作が実行される。なお、図48(A)において、ステップS1001,S1002の具体的な処理内容とステップS1005,S1006の具体的な処理内容とは同じである。
次に、図48(B)を用いてウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生したときにユーザリセットを発生させるように設定した場合について説明する。この場合、図48(B)に示すように、遊技機に対して電源が投入され電力供給が開始されると、遊技制御用マイクロコンピュータ56は、CPUコアを含む全ての内部回路を初期化するとともに、プログラム管理エリアの設定内容に従って、内部リセット動作の設定や乱数回路508a,508bの設定など遊技制御用マイクロコンピュータ560の各種設定をハードウェア的に行う(ステップS1011)。具体的には、プログラム管理エリアの図14に示すリセット設定(KRES)の設定内容に従って内部リセットの動作の設定を行ったり、プログラム管理エリアの図15〜図19に示す16ビット乱数初期設定1(KRL1)〜8ビット乱数初期設定2(KRS2)の設定内容に従って乱数回路508a,508bの設定を行ったりする。なお、図48(B)に示す例では、遊技制御用マイクロコンピュータ56は、プログラム管理エリアの設定内容に従って、内部リセット動作の設定としてユーザリセットを設定する。また、プログラム管理エリアの設定内容は予め遊技機の製作時に遊技機製造メーカ(ユーザ)によって設定されているものとする。
遊技制御用マイクロコンピュータ560の各種設定を完了すると、遊技制御用マイクロコンピュータ56は、セキュリティモードに移行し、セキュリティチェックを実行する(ステップS1012)。ステップS1012で実行するセキュリティチェックでは、ユーザプログラムの認証を行う。具体的には、ユーザプログラムをもとに計算された認証コードが正しいか否か再計算を行う。そして、認証コードが正しければ、ステップS1013に移行し、認証コードが正しくなければ、CPU56を停止する。なお、セキュリティモードに移行されるセキュリティモード時間は、既に説明したように、プログラム管理エリアの図20に示すセキュリティ時間設定(KSES)の設定内容に従って可変とされている。具体的には、プログラム管理エリアの図20に示すセキュリティ時間設定(KSES)の設定内容に従ってステップS1011の設定が行われることによりセキュリティモード時間が設定される。なお、認証コードは、予め遊技機の製作時の内蔵ROM54への書き込み時に遊技機製造メーカ(ユーザ)によってユーザプログラムとともに書き込まれているものとする。
そして、セキュリティチェックを終了すると、遊技制御用マイクロコンピュータ560は、ユーザモードに移行し、ユーザプログラムの実行を開始する。具体的には、後述する図50のメイン処理の実行を開始する。
次いで、ユーザプログラムが実行されているときに(具体的には、後述する図50のメイン処理内のループ処理や図51のタイマ割込処理の実行中に)、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生したものとする。図48(B)に示す例では、ステップS1011で内部リセット動作の設定としてユーザリセットが設定されていることから、タイムアウト信号やIAT信号の発生にもとづいてユーザリセットが発生する。
ユーザリセットが発生した場合には、ステップS1011の遊技制御用マイクロコンピュータ560の各種設定やステップS1012のセキュリティチェックは実行されず、遊技制御用マイクロコンピュータ560の内部回路のうち、CPUコア、タイマ回路509、フリーランカウンタ回路507、演算回路505、パラレル入力ポート511、パラレル出力ポート513、シリアル通信回路512、および割り込みコントローラ510などを初期化する。そして、そのままユーザプログラムの先頭のアドレスに戻り、ユーザプログラムの実行が先頭のアドレスから再び開始される(ステップS1015)。具体的には、後述する図50のメイン処理の実行を再び開始する。
以降、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号やIAT回路506aからのIAT信号が発生するごとに、ステップS1014〜S1015の動作が実行される。
また、この実施の形態では、遊技制御用マイクロコンピュータ560は、ユーザプログラムの実行中に内蔵RAM領域に格納されているデータを読み出す場合、そのデータが格納されている内蔵RAM領域の上位および下位全てのアドレスを指定するのではなく、アドレスの下位のみを指定してデータを読み出すことが可能である。図49は、内蔵RAM領域に格納されているデータの読み出し方の例を示す説明図である。この実施の形態では、ユーザプログラムで参照されるデータは、内蔵RAM領域のうちのF000H〜F0FFH領域に格納されるものとし、データ格納領域のアドレスの上位が必ずF0Hとなるものとする。また、遊技制御用マイクロコンピュータ560は、データ格納領域の上位アドレスを固定値として格納しておくための専用のレジスタ(Qレジスタ)を備え、Qレジスタには固定値F0Hが設定されるものとする。
図49に示す例では、内蔵RAM領域のアドレスF020Hに格納されているデータを読み出す場合が示されている。この場合、Qレジスタを用いてデータを読み出すためのコマンドLDQを用いて、下位アドレス20Hのみを指定して、データの読み出し動作を行う(具体的には、LDQ A,(20H)を実行する)。すると、CPU56は、データ格納領域の上位アドレスをQレジスタに設定されている固定値からF0Hと特定するとともに、LDQ命令で指定された下位アドレス20Hを特定し、上位および下位を合わせたデータ格納領域のアドレスがF020Hであると特定する。そして、CPU56は、特定したF020Hに対応するデータ格納領域に格納されているデータaを読み出し、レジスタAに格納する。
なお、Qレジスタの値は、システムリセット時にハードウェア的に初期化されて初期値F0Hに自動設定されるものとする。例えば、遊技機に対して電源が投入され電力供給が開始されたときに、Qレジスタの下位4ビットは0に初期化されるとともに、上位4ビットは反転回路で反転されて全て値1となることによって、Qレジスタの初期値としてF0Hが自動設定される。なお、後述するように、この実施の形態では、ユーザプログラムの実行が開始されたときにも、ユーザプログラムによりQレジスタに初期値F0Hを設定する処理が実行される(後述するステップS5A参照)。
なお、Qレジスタの初期値設定は、遊技機に対して電源が投入され電力供給が開始されたときに行うハードウェア的な自動設定のみでもよいし、ユーザプログラムの開始時に実行されるユーザプログラムによる設定のみでもよい。
次に、システムチェックを実行した後、ユーザモードに移行した後にユーザプログラムに従って実行される処理を説明する。ユーザモードに移行すると、遊技制御用マイクロコンピュータ560は、メイン処理の実行を開始する。
図50は、主基板31における遊技制御用マイクロコンピュータ560が実行するメイン処理を示すフローチャートである。メイン処理において、CPU56は、まず、必要な初期設定を行う。初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードの設定を行い(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスの初期化(内蔵デバイス(内蔵周辺回路)であるタイマ回路509、パラレル入力ポート511およびパラレル出力ポート513の初期化など)を行った後(ステップS4)、RAMをアクセス可能状態に設定する(ステップS5)。
次いで、CPU56は、Qレジスタに初期値F0Hをセットする(ステップS5A)。すなわち、ステップS5が実行されてRAM55をアクセス可能状態に設定したタイミングで、Qレジスタに初期値F0Hがセットされる。
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチ(例えば、電源基板に搭載されている。)の出力信号(クリア信号)の状態を確認する(ステップS6)。その確認においてオンを検出した場合には、CPU56は、通常の初期化処理(ステップS10〜S15)を実行する。
クリアスイッチがオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理(電源断処理))が行われたか否か確認する(ステップS7)。そのような保護処理が行われていないことを確認したら、CPU56は初期化処理を実行する。バックアップRAM領域にバックアップデータがあるか否かは、例えば、電源断処理においてバックアップRAM領域に設定されるバックアップ監視タイマの値が判定値(例えば2)と同じ値になっていることによって、電力供給停止時処理の処理結果が保存されていることを確認できる。なお、バックアップ監視タイマに代えて、例えば、電源断処理においてバックアップフラグをセットするようにし、ステップS7では、バックアップフラグがセットされているか否かを確認するようにしてもよい。
電力供給停止時処理が行われたことを確認したら、CPU56は、バックアップRAM領域のデータチェックを行う(ステップS8)。この実施の形態では、データチェックとしてパリティチェックを行う。よって、ステップS8では、算出したチェックサムと、電力供給停止時処理で同一の処理によって算出され保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理(ステップS41〜S43の処理)を行う。具体的には、ROM54に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し(ステップS41)、バックアップ時設定テーブルの内容を順次作業領域(RAM55内の領域)に設定する(ステップS42)。作業領域はバックアップ電源によって電源バックアップされている。バックアップ時設定テーブルには、作業領域のうち初期化してもよい領域についての初期化データが設定されている。ステップS41およびS42の処理によって、作業領域のうち初期化してはならない部分については、保存されていた内容がそのまま残る。初期化してはならない部分とは、例えば、電力供給停止前の遊技状態を示すデータ(特別図柄プロセスフラグ、確変フラグ、時短フラグなど)、出力ポートの出力状態が保存されている領域(出力ポートバッファ)、未払出賞球数を示すデータが設定されている部分などである。
また、CPU56は、電力供給復旧時の初期化コマンドとしての停電復旧指定コマンドを送信する(ステップS43)。また、CPU56は、バックアップRAMに保存されている表示結果(確変大当り、通常大当り、突然確変大当り、小当り、またははずれ)を指定した表示結果指定コマンドを演出制御基板80に対して送信する(ステップS44)。そして、ステップS15に移行する。
なお、この実施の形態では、バックアップRAM領域には、後述する変動時間タイマの値も保存される。従って、停電復旧した場合には、ステップS44で表示結果指定コマンドが送信された後、保存していた変動時間タイマの値の計測を再開して特別図柄の変動表示が再開されるとともに、保存していた変動時間タイマの値がタイムアウトしたときに、さらに後述する図柄確定指定コマンドが送信される。また、この実施の形態では、バックアップRAM領域には、後述する特別図柄プロセスフラグの値も保存される。従って、停電復旧した場合には、保存されている特別図柄プロセスフラグの値に応じたプロセスから特別図柄プロセス処理が再開される。
なお、停電復旧時に必ず表示結果指定コマンドを送信するのではなく、CPU56は、まず、バックアップRAM領域に保存している変動時間タイマの値が0であるか否かを確認するようにしてもよい。そして、変動時間タイマの値が0でなければ、変動中に停電した場合であると判断して、表示結果指定コマンドを送信するようにし、変動時間タイマが0であれば、停電時に変動中の状態ではなかったと判断して、表示結果指定コマンドを送信しないようにしてもよい。
また、CPU56は、まず、バックアップRAM領域に保存している特別図柄プロセスフラグの値が3であるか否かを確認するようにしてもよい。そして、特別図柄プロセスフラグの値が3であれば、変動中に停電した場合であると判断して、表示結果指定コマンドを送信するようにし、特別図柄プロセスフラグが3でなければ、停電時に変動中ではなかったと判断して、表示結果指定コマンドを送信しないようにしてもよい。
なお、この実施の形態では、バックアップ監視タイマ(または、バックアップフラグ)とチェックデータとの双方を用いてバックアップRAM領域のデータが保存されているか否か確認しているが、いずれか一方のみを用いてもよい。すなわち、バックアップ監視タイマ(または、バックアップフラグ)とチェックデータとのいずれかを、遊技状態復旧処理を実行するための契機としてもよい。
初期化処理では、CPU56は、まず、RAMクリア処理を行い(ステップS10)、加算バッファおよびクリアバッファをクリアする(ステップS10a)。加算バッファおよびクリアバッファは、RAM55形成され(すなわちRAM内の領域であって)、後述する入賞順異常報知処理において始動口への入賞順異常が発生したことを検出するために用いられる。なお、RAMクリア処理によって、所定のデータ(例えば、普通図柄当り判定用乱数を生成するためのカウンタのカウント値のデータ)は0に初期化されるが、任意の値またはあらかじめ決められている値に初期化するようにしてもよい。また、RAM55の全領域を初期化せず、所定のデータ(例えば、普通図柄当り判定用乱数を生成するためのカウンタのカウント値のデータ)をそのままにしてもよい。また、この実施の形態では、遊技状態復旧処理(ステップS41〜S43の処理)が実行される場合には、通常の初期化処理(ステップS10〜S13)が実行されないが、遊技状態復旧処理(ステップS41〜S43の処理)が実行される場合にも、加算バッファおよびクリアバッファのクリア(ステップS10a)が実行されるようにしてもよい。このようにすることで、電力供給停止前の状態に復旧させて入賞順異常報知処理を行うのではなく、新たな状態で入賞順異常報知処理を行うことができる。
次いで、CPU56は、ROM54に格納されている初期化時設定テーブルの先頭アドレスをポインタに設定し(ステップS11)、初期化時設定テーブルの内容を順次作業領域に設定する(ステップS12)。
ステップS11およびS12の処理によって、例えば、普通図柄当り判定用乱数カウンタ、特別図柄バッファ、総賞球数格納バッファ、特別図柄プロセスフラグなど制御状態に応じて選択的に処理を行うためのフラグに初期値が設定される。
また、CPU56は、サブ基板(主基板31以外のマイクロコンピュータが搭載された基板。)を初期化するための初期化指定コマンド(遊技制御用マイクロコンピュータ560が初期化処理を実行したことを示すコマンドでもある。)をサブ基板に送信する(ステップS13)。例えば、演出制御用マイクロコンピュータ100は、初期化指定コマンドを受信すると、演出表示装置9において、遊技機の制御の初期化がなされたことを報知するための画面表示、すなわち初期化報知を行う。
そして、ステップS15において、CPU56は、所定時間(例えば4ms)毎に定期的にタイマ割込がかかるように遊技制御用マイクロコンピュータ560に内蔵されているタイマ回路509のレジスタの設定を行なう。すなわち、初期値として例えば4msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。この実施の形態では、4ms毎に定期的にタイマ割込がかかるとする。
初期化処理の実行(ステップS10〜S15)が完了すると、CPU56は、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)を繰り返し実行する。表示用乱数更新処理および初期値用乱数更新処理を実行するときには割込禁止状態に設定し(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態に設定する(ステップS19)。この実施の形態では、表示用乱数とは、大当りとしない場合の特別図柄の停止図柄を決定するための乱数や大当りとしない場合にリーチとするか否かを決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。この実施の形態では、初期値用乱数とは、普通図柄に関して当りとするか否か決定するための乱数を発生するためのカウンタ(普通図柄当り判定用乱数発生カウンタ)のカウント値の初期値を決定するための乱数である。後述する遊技の進行を制御する遊技制御処理(遊技制御用マイクロコンピュータ560が、遊技機に設けられている演出表示装置、可変入賞球装置、球払出装置等の遊技用の装置を、自身で制御する処理、または他のマイクロコンピュータに制御させるために指令信号を送信する処理、遊技装置制御処理ともいう)において、普通図柄当り判定用乱数のカウント値が1周(普通図柄当り判定用乱数の取りうる値の最小値から最大値までの間の数値の個数分歩進したこと)すると、そのカウンタに初期値が設定される。
なお、この実施の形態では、リーチ演出は、演出表示装置9において可変表示される演出図柄を用いて実行される。また、特別図柄の表示結果を大当り図柄にする場合には、リーチ演出は常に実行される。特別図柄の表示結果を大当り図柄にしない場合には、遊技制御用マイクロコンピュータ560は、乱数を用いた抽選によって、リーチ演出を実行するか否か決定する。ただし、実際にリーチ演出の制御を実行するのは、演出制御用マイクロコンピュータ100である。
タイマ割込が発生すると、CPU56は、図51に示すステップS20〜S34のタイマ割込処理を実行する。タイマ割込処理において、まず、電源断信号が出力されたか否か(オン状態になったか否か)を検出する電源断検出処理を実行する(ステップS20)。電源断信号は、例えば電源基板に搭載されている電源監視回路が、遊技機に供給される電源の電圧の低下を検出した場合に出力する。そして、電源断検出処理において、CPU56は、電源断信号が出力されたことを検出したら、必要なデータをバックアップRAM領域に保存するための電力供給停止時処理を実行する。次いで、入力ドライバ回路58を介して、ゲートスイッチ32a、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23の検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
次に、CPU56は、第1始動入賞口13と第2始動入賞口14との入賞順異常を検出し入賞順異常を報知するための入賞順異常報知処理を実行する(ステップS21a)。
なお、「入賞順異常」とは、第1始動入賞口13および第2始動入賞口14に遊技球が入賞した順序(具体的には、第1始動口スイッチ13aおよび第2始動口スイッチ14aによって遊技球が検出された順序)が所定の順序と異なることである。この実施の形態では、既に説明したように、振分装置200に流入した遊技球は振分部材202によって第1始動入賞口13と第2始動入賞口14とに交互に入賞するように構成されている(ただし、確変状態(高ベース状態)には、振分装置200の状態にかかわらず第2始動入賞口14に入賞可能な場合もある)ので、第1始動入賞口13または第2始動入賞口14に遊技球が連続して入賞することはない(ただし、確変状態(高ベース状態)では第2始動入賞口14に連続して入賞する場合がある)。そのため、この実施の形態では、第1始動入賞口13または第2始動入賞口14のいずれかに所定数以上(本例では4以上)連続して入賞した場合に入賞順異常が検出され、後述するような入賞順異常を報知する制御が行われる。
次に、CPU56は、第1特別図柄表示器8a、第2特別図柄表示器8b、普通図柄表示器10、第1特別図柄保留記憶表示器18a、第2特別図柄保留記憶表示器18b、普通図柄保留記憶表示器41の表示制御を行う表示制御処理を実行する(ステップS22)。第1特別図柄表示器8a、第2特別図柄表示器8bおよび普通図柄表示器10については、ステップS32,S33で設定される出力バッファの内容に応じて各表示器に対して駆動信号を出力する制御を実行する。
また、遊技制御に用いられる普通図柄当り判定用乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(判定用乱数更新処理:ステップS23)。CPU56は、さらに、初期値用乱数および表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(初期値用乱数更新処理,表示用乱数更新処理:ステップS24,S25)。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS26)。特別図柄プロセス処理では、第1特別図柄表示器8a、第2特別図柄表示器8bおよび大入賞口を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理を実行する。CPU56は、特別図柄プロセスフラグの値を、遊技状態に応じて更新する。
次いで、普通図柄プロセス処理を行う(ステップS27)。普通図柄プロセス処理では、CPU56は、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理を実行する。CPU56は、普通図柄プロセスフラグの値を、遊技状態に応じて更新する。
また、CPU56は、演出制御用マイクロコンピュータ100に演出制御コマンドを送出する処理を行う(演出制御コマンド制御処理:ステップS28)。
さらに、CPU56は、パチンコ遊技機1の外部に出力する情報として、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのパチンコ遊技機1に関する情報(データ)を情報出力回路64から出力する情報出力処理を行う(ステップS29)。
また、CPU56は、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23の検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS30)。具体的には、第1始動口スイッチ13a、第2始動口スイッチ14aおよびカウントスイッチ23のいずれかがオンしたことにもとづく入賞検出に応じて、払出制御基板37に搭載されている払出制御用マイクロコンピュータに賞球個数を示す払出制御コマンド(賞球個数信号)を出力する。払出制御用マイクロコンピュータは、賞球個数を示す払出制御コマンドに応じて球払出装置97を駆動する。
この実施の形態では、出力ポートの出力状態に対応したRAM領域(出力ポートバッファ)が設けられているのであるが、CPU56は、出力ポートの出力状態に対応したRAM領域におけるソレノイドのオン/オフに関する内容を出力ポートに出力する(ステップS31:出力処理)。
また、CPU56は、特別図柄プロセスフラグの値に応じて特別図柄の演出表示を行うための特別図柄表示制御データを特別図柄表示制御データ設定用の出力バッファに設定する特別図柄表示制御処理を行う(ステップS32)。
さらに、CPU56は、普通図柄プロセスフラグの値に応じて普通図柄の演出表示を行うための普通図柄表示制御データを普通図柄表示制御データ設定用の出力バッファに設定する普通図柄表示制御処理を行う(ステップS33)。CPU56は、例えば、普通図柄の変動に関する開始フラグがセットされると終了フラグがセットされるまで、普通図柄の変動速度が0.2秒ごとに表示状態(「○」および「×」)を切り替えるような速度であれば、0.2秒が経過する毎に、出力バッファに設定される表示制御データの値(例えば、「○」を示す1と「×」を示す0)を切り替える。また、CPU56は、出力バッファに設定された表示制御データに応じて、ステップS22において駆動信号を出力することによって、普通図柄表示器10における普通図柄の演出表示を実行する。
その後、割込許可状態に設定し(ステップS34)、処理を終了する。
以上の制御によって、この実施の形態では、遊技制御処理は4ms毎に起動されることになる。なお、遊技制御処理は、タイマ割込処理におけるステップS21〜S33(ステップS29を除く。)の処理に相当する。また、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
第1特別図柄表示器8aまたは第2特別図柄表示器8bおよび演出表示装置9にはずれ図柄が停止表示される場合には、演出図柄の可変表示が開始されてから、演出図柄の可変表示状態がリーチ状態にならずに、リーチにならない所定の演出図柄の組み合わせが停止表示されることがある。このような演出図柄の可変表示態様を、可変表示結果がはずれ図柄になる場合における「非リーチ」(「通常はずれ」ともいう)の可変表示態様という。
第1特別図柄表示器8aまたは第2特別図柄表示器8bおよび演出表示装置9にはずれ図柄が停止表示される場合には、演出図柄の可変表示が開始されてから、演出図柄の可変表示状態がリーチ状態となった後にリーチ演出が実行され、最終的に大当り図柄とはならない所定の演出図柄の組み合わせが停止表示されることがある。このような演出図柄の可変表示結果を、可変表示結果が「はずれ」となる場合における「リーチ」(「リーチはずれ」ともいう)の可変表示態様という。
この実施の形態では、第1特別図柄表示器8aまたは第2特別図柄表示器8bに大当り図柄が停止表示される場合には、演出図柄の可変表示状態がリーチ状態になった後にリーチ演出が実行され、最終的に演出表示装置9における「左」、「中」、「右」の各図柄表示エリア9L、9C、9Rに、演出図柄が揃って停止表示される。
第1特別図柄表示器8aまたは第2特別図柄表示器8bに小当りである「5」が停止表示される場合には、演出表示装置9において、演出図柄の可変表示態様が「突然確変大当り」である場合と同様に演出図柄の可変表示が行われた後、所定の小当り図柄(突然確変大当り図柄と同じ図柄。例えば「135」)が停止表示されることがある。第1特別図柄表示器8aまたは第2特別図柄表示器8bに小当り図柄である「5」が停止表示されることに対応する演出表示装置9における表示演出を「小当り」の可変表示態様という。
ここで、小当りとは、大当りと比較して大入賞口の開放回数が少ない回数(この実施の形態では0.1秒間の開放を2回)まで許容される当りである。なお、小当り遊技が終了した場合、遊技状態は変化しない。すなわち、確変状態から通常状態に移行したり通常状態から確変状態に移行したりすることはない。また、突然確変大当りとは、大当り遊技状態において大入賞口の開放回数が少ない回数(この実施の形態では0.1秒間の開放を2回)まで許容されるが大入賞口の開放時間が極めて短い大当りであり、かつ、大当り遊技後の遊技状態を確変状態に移行させるような大当りである(すなわち、そのようにすることにより、遊技者に対して突然に確変状態となったかのように見せるものである)。つまり、この実施の形態では、突然確変大当りと小当りとは、大入賞口の開放パターンが同じである。そのように制御することによって、大入賞口の0.1秒間の開放が2回行われると、突然確変大当りであるか小当りであるかまでは認識できないので、遊技者に対して高確率状態(確変状態)を期待させることができ、遊技の興趣を向上させることができる。
図52および図53は、ステップS20の電源断処理の一例を示すフローチャートである。電源断処理において、遊技制御用マイクロコンピュータ560は、まず、電源断信号が出力されているか否か(オン状態になっているか否か)確認する(ステップS450)。オン状態でなければ、RAM55に形成されているバックアップ監視タイマの値を0クリアする(ステップS451)。オン状態であれば、バックアップ監視タイマの値を1増やす(ステップS452)。そして、バックアップ監視タイマの値が判定値(例えば2)と一致すれば(ステップS453)、ステップS454以降の電力供給停止時処理すなわち電力の供給停止のための準備処理を実行する。つまり、遊技の進行を制御する状態から遊技状態を保存させるための電力供給停止時処理(電源断時制御処理)を実行する状態に移行する。なお、「RAMに形成されている」とは、RAM内の領域であることを意味する。
バックアップ監視タイマと判定値とを用いることによって、判定値に相当する時間だけ電源断信号のオン状態が継続したら、電力供給停止時処理が開始される。すなわち、ノイズ等で一瞬電源断信号のオン状態が発生しても、誤って電力供給停止時処理が開始されるようなことはない。なお、バックアップ監視タイマの値は、遊技機への電力供給が停止しても、所定期間はバックアップ電源によって保存される。従って、メイン処理におけるステップS8では、バックアップ監視タイマの値が判定値と同じ値になっていることによって、電力供給停止時処理の処理結果が保存されていることを確認できる。
電力供給停止時処理において、遊技制御用マイクロコンピュータ560は、パリティデータを作成する(ステップS454〜S463)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS454)、電力供給停止時でも内容が保存されるべきRAM領域の先頭アドレスに相当するチェックサム算出開始アドレスをポインタにセットする(ステップS455)。また、電力供給停止時でも内容が保存されるべきRAM領域の最終アドレスに相当するチェックサム算出回数をセットする(ステップS456)。
次いで、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS457)。演算結果をチェックサムデータエリアにストアするとともに(ステップS458)、ポインタの値を1増やし(ステップS459)、チェックサム算出回数の値を1減算する(ステップS460)。そして、ステップS457〜S460の処理を、チェックサム算出回数の値が0になるまで繰り返す(ステップS461)。
チェックサム算出回数の値が0になったら、遊技制御用マイクロコンピュータ560は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS462)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS463)。このデータが、電源投入時にチェックされるパリティデータになる。次いで、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS471)。以後、内蔵RAM55のアクセスができなくなる。
さらに、遊技制御用マイクロコンピュータ560は、ROM54に格納されているポートクリア設定テーブルの先頭アドレスをポインタにセットする(ステップS472)。ポートクリア設定テーブルにおいて、先頭アドレスには処理数(クリアすべき出力ポートの数)が設定され、次いで、出力ポートのアドレスおよび出力値データ(クリアデータ:出力ポートの各ビットのオフ状態の値)が、処理数分の出力ポートについて順次設定されている。
遊技制御用マイクロコンピュータ560は、ポインタが指すアドレスのデータ(すなわち処理数)をロードする(ステップS473)。また、ポインタの値を1増やし(ステップS474)、ポインタが指すアドレスのデータ(すなわち出力ポートのアドレス)をロードする(ステップS475)。さらに、ポインタの値を1増やし(ステップS476)、ポインタが指すアドレスのデータ(すなわち出力値データ)をロードする(ステップS477)。そして、出力値データを出力ポートに出力する(ステップS478)。その後、処理数を1減らし(ステップS479)、処理数が0でなければステップS474に戻る。処理数が0であれば、すなわち、クリアすべき出力ポートを全てクリアしたら、タイマ割込を停止し(ステップS481)、ループ処理に入る。なお、出力ポートをクリアする処理をチェックサムデータを作成する処理の前に実行してもよい。例えば、CPU56は、ステップS453でYと判定した後、直ちにステップS472〜S480の出力ポートクリアの処理を実行するようにしてもよい。
ループ処理では、電源断信号がオフ状態になったか否かを監視する(ステップS482)。そして、電源断信号がオン状態の間は(ステップS482のY)、ステップS482の処理を繰り返し実行して待機する。
これに対して、ステップS482にて電源断信号がオフ状態となったときには(ステップS482のN)、所定の電断復旧時における設定を行った後(ステップS487)、図50に示すメイン処理の先頭にリターンする。一例として、ステップS487の処理では、CPU56に内蔵されたスタックポインタに電源断復旧時ベクタテーブルの記憶アドレスを格納し、遊技制御用タイマ割込み処理から復帰(リターン)させる。ここで、電源断復旧時ベクタテーブルは、ROM54に記憶された制御コード(遊技制御プログラム)の先頭アドレスを指定するものであればよい。図51に示すタイマ割込処理のような割込処理から復帰(リターン)するときには、スタックポインタで指定されるアドレスの記憶データが復帰アドレスとして読み出される。こうして、ステップS487の処理を実行した後には、CPU56により、ROM54に記憶されている制御コードの先頭から、遊技制御の実行を開始(再開)させることができる。
以上の処理によって、電力供給が停止する場合には、ステップS454〜S481の電力供給停止時処理が実行され、電力供給停止時処理が実行されたことを示すデータ(判定値になっているバックアップ監視タイマのおよびチェックサム)がバックアップRAMへストアされ、RAMアクセスが禁止状態にされ、出力ポートがクリアされ、かつ、遊技制御処理を実行するためのタイマ割込が禁止状態に設定される。
なお、この実施の形態では、電源断処理においてチェックデータの生成や出力ポートクリアなどの処理を終了した後、ステップS482で繰り返し電源断信号の入力を確認する電源断待ちループに移行するが、このような電源断信号の入力を確認する構成とはしないようにしてもよい。この場合、例えば、ウオッチドッグタイマ(WTD)506bをユーザプログラムによって起動できるように設定した上で、電源断待ちループに入るときにウオッチドッグタイマ(WTD)506bを起動させるようにし、遊技機が完全に電源断状態とならず電源の電圧値が完全に落ちきらないときにはウオッチドッグタイマ(WTD)506bからのタイムアウト信号によるリセットが発生するようにしてもよい。
また、例えば、遊技機への電源投入時に電源断信号が入力されているか否かを確認し、入力されていれば無限ループに移行したり、その無限ループにおいて電源断信号の入力を確認し、その入力がなくなるまで無限ループを継続したりするように構成されている場合、上記と同様の態様で無限ループに入るときにウオッチドッグタイマ(WTD)506bを起動させ、同様の処理を行うように構成してもよい。
なお、ウオッチドッグタイマ(WTD)506bを起動させるように設定している場合には(ただし、上記のように電源断待ちループでのみウオッチドッグタイマ(WTD)506bを起動させるものを除く)、正常にCPU56が動作しているときにはタイムアウトしないように、ウオッチドッグタイマ(WTD)506bをクリアする信号を出力するようにプログラムされる。具体的には、内蔵レジスタエリアに設けられているWDTクリアレジスタ(図示せず)にクリアするための値を書き込むようにプログラムされる。
この実施の形態では、RAM55がバックアップ電源によって電源バックアップ(遊技機への電力供給が停止しても所定期間はRAM55の内容が保存されこと)されている。この例では、ステップS452〜S479の処理によって、バックアップ監視タイマの値とともに、電源断信号が出力されたときのRAM55の内容にもとづくチェックサムもRAM55のバックアップ領域に保存される。遊技機への電力供給が停止した後、所定期間内に電力供給が復旧したら、遊技制御手段は、上述したステップS41〜S44の処理によって、RAM55に保存されているデータ(電力供給が停止した直前の遊技制御手段による制御状態である遊技状態を示すデータ(例えば、プロセスフラグの状態、大当り中フラグの状態、確変フラグの状態、出力ポートの出力状態等)を含む)に従って、遊技状態を、電力供給が停止した直前の状態に戻すことができる。なお、電力供給停止の期間が所定期間を越えたらバックアップ監視タイマの値とチェックサムとが正規の値とは異なるはずであるから、その場合には、ステップS10〜S13の初期化処理が実行される。
以上のように、電力供給停止時処理(電力の供給停止のための準備処理)によって、遊技状態を電力供給が停止した直前の状態に戻すためのデータが確実に変動データ記憶手段(この例ではRAM55の一部の領域)に保存される。よって、停電等による電源断が生じても、所定期間内に電源が復旧すれば、遊技状態を電力供給が停止した直前の状態に戻すことができる。
また、電源断信号がオフ状態になった場合には、ステップS1に戻る。その場合、電力供給停止時処理が実行されたことを示すデータが設定されているので、ステップS41〜S44の復旧処理が実行される。よって、電力供給停止時処理を実行した後に払出制御基板37からの電源断信号がオフ状態になったときには、遊技の進行を制御する状態に戻る。従って、電源瞬断等が生じても、遊技制御処理が停止してしまうようなことはなく、自動的に、遊技制御処理が続行される。
なお、図48、図50〜図53に示すような態様で遊技機が動作することによって、この実施の形態では、所定の処理(本例では、図50に示すメイン処理のステップS16〜S19のループ処理と、図51のタイマ割込処理)の実行中に所定事象が発生(IAT回路506aからIAT信号を入力、ウオッチドッグタイマ(WDT)506bからタイムアウト信号を入力)したときにRAM55(バックアップRAM)の記憶内容を初期化する初期化処理を実行する。具体的には、図50に示すメイン処理のステップS16〜S19のループ処理や、図51のタイマ割込処理の実行中に、IAT回路506aからIAT信号や、ウオッチドッグタイマ(WDT)506bからタイムアウト信号を入力したときには、図52および図53に示す電源断処理が実行されることなく、システムリセットまたはユーザリセット(図48のステップS1004,S1014参照)が発生することになる。そして、システムリセットが発生した後にはセキュリティチェックを実行した後にステップS1007でユーザモードに移行されて図50に示すメイン処理の実行が再び開始され、ユーザリセットが発生した後にはステップS1015でユーザプログラムの先頭に戻り図50に示すメイン処理の実行が再び開始されるのであるが、バックアップ監視タイマ(または、バックアップフラグ)およびチェックデータのいずれもセットされていないことから、図50に示すメイン処理でステップS10に移行して初期化処理が実行されることになる。
なお、「所定の処理」とは、遊技機への電源投入時の初期化処理や復旧処理が実行された後、遊技可能となった状態で実行されている処理であり、上記に説明したように、具体的には、図50に示すメイン処理のステップS16〜S19のループ処理と、図51のタイマ割込処理とが該当する。ただし、電源電圧低下により電源断処理が実行されているときは所定の処理からは除かれる。
なお、図48、図50〜図53に示すような態様で遊技機が動作することによって、電力供給停止時処理(本例では、図52および図53に示す電源断処理)を実行した後に所定事象が発生(IAT回路506aからIAT信号を入力、ウオッチドッグタイマ(WDT)506bからタイムアウト信号を入力)したときに、RAM55(バックアップRAM)の記憶内容にもとづいて制御状態を電力供給停止時処理を開始したときの状態に復旧させる復旧処理を実行する。具体的には、電源断信号を入力したことにもとづいて図52および図53に示す電源断処理を実行して図53のループ処理を実行しているときに、ちょうどIAT回路506aからIAT信号や、ウオッチドッグタイマ(WDT)506bからタイムアウト信号を入力したときには(ただし、IAT回路506aからIAT信号した場合には、何らかの原因で指定エリア外のプログラムを実行している状態となってしまった場合であるので、より正確には、電源断処理のループ処理に一度移行した後にIAT回路506aからIAT信号した場合に相当する)、IAT信号やタイムアウト信号を入力したことにもとづいてシステムリセットまたはユーザリセット(図48のステップS1004,S1014参照)が発生することになる。そして、システムリセットが発生した後にはセキュリティチェックを実行した後にステップS1007でユーザモードに移行されて図50に示すメイン処理の実行が再び開始され、ユーザリセットが発生した後にはステップS1015でユーザプログラムの先頭に戻り図50に示すメイン処理の実行が再び開始されるのであるが、バックアップ監視タイマ(または、バックアップフラグ)およびチェックデータの両方がセットされていることから、図50に示すメイン処理でステップS7およびステップS8でいずれもYと判定されてステップS41〜S44の復旧処理が実行されることになる。
図54は、この実施の形態で用いられる各ソフトウェア乱数を示す説明図である。各ソフトウェア乱数は、以下のように使用される。なお、前述したように、この実施の形態では、大当りとするか否かを判定するための大当り判定用乱数(ランダムR)については、16ビット乱数回路508bが出力するハードウェア乱数が用いられる。(1)ランダム1(MR1):大当りの種類(後述する通常大当り、確変大当り、突然確変大当り)を決定する(大当り種別判定用)(2)ランダム2(MR2):変動パターンの種類(種別)を決定する(変動パターン種別判定用)(3)ランダム3(MR3):変動パターン(変動時間)を決定する(変動パターン判定用)(4)ランダム4(MR4):普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)(5)ランダム5(MR5):ランダム4の初期値を決定する(ランダム4初期値決定用)。
なお、この実施の形態では、大当り判定用乱数(ランダムR)についてのみ乱数回路から抽出したハードウェア乱数を用い、それ以外の乱数についてはソフトウェア乱数を用いる場合を示しているが、この実施の形態で示したものにかぎられない。例えば、大当り判定用乱数(ランダムR)に加えて図54に示すランダム1〜5の全てについて乱数回路から抽出したハードウェア乱数を用いるようにしてもよい。また、図54に示すランダム1〜5のうちの一部の乱数についてのみ乱数回路から抽出したハードウェア乱数を用い、それ以外についてはソフトウェア乱数を用いるように構成しても構わない。
なお、この実施の形態では、変動パターンは、まず、変動パターン種別判定用乱数(ランダム2)を用いて変動パターン種別を決定し、変動パターン判定用乱数(ランダム3)を用いて、決定した変動パターン種別に含まれるいずれかの変動パターンに決定する。そのように、この実施の形態では、2段階の抽選処理によって変動パターンが決定される。
なお、変動パターン種別とは、複数の変動パターンをその変動態様の特徴に従ってグループ化したものである。例えば、複数の変動パターンをリーチの種類でグループ化して、ノーマルリーチを伴う変動パターンを含む変動パターン種別と、スーパーリーチAを伴う変動パターンを含む変動パターン種別と、スーパーリーチBを伴う変動パターンを含む変動パターン種別とに分けてもよい。また、例えば、複数の変動パターンを擬似連の再変動の回数でグループ化して、擬似連を伴わない変動パターンを含む変動パターン種別と、再変動1回の変動パターンを含む変動パターン種別と、再変動2回の変動パターンを含む変動パターン種別と、再変動3回の変動パターンを含む変動パターン種別とに分けてもよい。また、例えば、複数の変動パターンを擬似連や滑り演出などの特定演出の有無でグループ化してもよい。
図51に示された遊技制御処理におけるステップS23では、遊技制御用マイクロコンピュータ560は、(1)の大当り種別判定用乱数、および(4)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数(ランダム2、ランダム3)または初期値用乱数(ランダム5)である。なお、遊技効果を高めるために、上記の乱数以外の乱数も用いてもよい。例えば、大当り種別判定用乱数(ランダム1)の初期値を決定するための初期値決定用乱数を設けるようにしてもよい。また、この実施の形態では、大当り判定用乱数として、遊技制御用マイクロコンピュータ560に内蔵されたハードウェア(遊技制御用マイクロコンピュータ560の外部のハードウェアでもよい。)が生成する乱数を用いる。
図55(A)は、大当り判定テーブルを示す説明図である。大当り判定テーブルとは、ROM54に記憶されているデータの集まりであって、ランダムRと比較される大当り判定値が設定されているテーブルである。大当り判定テーブルには、通常状態(確変状態でない遊技状態)において用いられる通常時大当り判定テーブルと、確変状態において用いられる確変時大当り判定テーブルとがある。通常時大当り判定テーブルには、図55(A)の左欄に記載されている各数値が設定され、確変時大当り判定テーブルには、図55(A)の右欄に記載されている各数値が設定されている。図55(A)に記載されている数値が大当り判定値である。
図55(B),(C)は、小当り判定テーブルを示す説明図である。小当り判定テーブルとは、ROM54に記憶されているデータの集まりであって、ランダムRと比較される小当り判定値が設定されているテーブルである。小当り判定テーブルには、第1特別図柄の変動表示を行うときに用いられる小当り判定テーブル(第1特別図柄用)と、第2特別図柄の変動表示を行うときに用いられる小当り判定テーブル(第2特別図柄用)とがある。小当り判定テーブル(第1特別図柄用)には、図55(B)に記載されている各数値が設定され、小当り判定テーブル(第2特別図柄用)には、図55(C)に記載されている各数値が設定されている。また、図55(B),(C)に記載されている数値が小当り判定値である。
なお、第1特別図柄の変動表示を行う場合にのみ小当りと決定するようにし、第2特別図柄の変動表示を行う場合には小当りを設けないようにしてもよい。この場合、図55(C)に示す第2特別図柄用の小当り判定テーブルは設けなくてもよい。この実施の形態では、遊技状態が確変状態に移行されているときには主として第2特別図柄の変動表示が実行される。遊技状態が確変状態に移行されているときにも小当りが発生するようにし、確変となるか否かを煽る演出を行うように構成すると、現在の遊技状態が確変状態であるにもかかわらず却って遊技者に煩わしさを感じさせてしまう。そこで、第2特別図柄の変動表示中は小当りが発生しないように構成すれば、遊技状態が確変状態である場合には小当りが発生しにくくし必要以上に確変に対する煽り演出を行わないようにすることができ、遊技者に煩わしさを感じさせる事態を防止することができる。
CPU56は、所定の時期に、16ビット乱数回路508bのカウント値を抽出して抽出値を大当り判定用乱数(ランダムR)の値とするのであるが、大当り判定用乱数値が図55(A)に示すいずれかの大当り判定値に一致すると、特別図柄に関して大当り(後述する15R確変大当り、7R確変大当り、突然確変大当り)にすることに決定する。また、大当り判定用乱数値が図55(B),(C)に示すいずれかの小当り判定値に一致すると、特別図柄に関して小当りにすることに決定する。なお、図55(A)に示す「確率」は、大当りになる確率(割合)を示す。また、図55(B),(C)に示す「確率」は、小当りになる確率(割合)を示す。また、大当りにするか否か決定するということは、大当り遊技状態に移行させるか否か決定するということであるが、第1特別図柄表示器8aまたは第2特別図柄表示器8bにおける停止図柄を大当り図柄にするか否か決定するということでもある。また、小当りにするか否か決定するということは、小当り遊技状態に移行させるか否か決定するということであるが、第1特別図柄表示器8aまたは第2特別図柄表示器8bにおける停止図柄を小当り図柄にするか否か決定するということでもある。
なお、この実施の形態では、図55(B),(C)に示すように、小当り判定テーブル(第1特別図柄用)を用いる場合には300分の1の割合で小当りと決定されるのに対して、小当り判定テーブル(第2特別図柄)を用いる場合には3000分の1の割合で小当りと決定される場合を説明する。従って、この実施の形態では、第1始動入賞口13に始動入賞して第1特別図柄の変動表示が実行される場合には、第2始動入賞口14に始動入賞して第2特別図柄の変動表示が実行される場合と比較して、「小当り」と決定される割合が高い。
図55(D),(E)は、ROM54に記憶されている大当り種別判定テーブル131a,131bを示す説明図である。このうち、図55(D)は、遊技球が第1始動入賞口13に入賞したことにもとづく保留記憶を用いて(すなわち、第1特別図柄の変動表示が行われるとき)大当り種別を決定する場合の大当り種別判定テーブル(第1特別図柄用)131aである。また、図55(E)は、遊技球が第2始動入賞口14に入賞したことにもとづく保留記憶を用いて(すなわち、第2特別図柄の変動表示が行われるとき)大当り種別を決定する場合の大当り種別判定テーブル(第2特別図柄用)131bである。
大当り種別判定テーブル131a,131bは、可変表示結果を大当り図柄にする旨の判定がなされたときに、大当り種別判定用の乱数(ランダム1)にもとづいて、大当りの種別を「15R確変大当り」、「7R確変大当り」、「突然確変大当り」のうちのいずれかに決定するために参照されるテーブルである。なお、この実施の形態では、図55(D),(E)に示すように、大当り種別判定テーブル131aには「突然確変大当り」に対して5個の判定値が割り当てられている(40分の5の割合で突然確変大当りと決定される)のに対して、大当り種別判定テーブル131bには「突然確変大当り」に対して1個の判定値が割り当てられている(40分の1の割合で突然確変大当りと決定される)場合を説明する。従って、この実施の形態では、第1始動入賞口13に始動入賞して第1特別図柄の変動表示が実行される場合には、第2始動入賞口14に始動入賞して第2特別図柄の変動表示が実行される場合と比較して、「突然確変大当り」と決定される割合が高い。なお、第1特別図柄用の大当り種別判定テーブル131aにのみ「突然確変大当り」を振り分けるようにし、第2特別図柄用の大当り種別判定テーブル131bには「突然確変大当り」の振り分けを行わない(すなわち、第1特別図柄の変動表示を行う場合にのみ、「突然確変大当り」と決定される場合がある)ようにしてもよい。
また、図55(D),(E)に示すように、この実施の形態では、大当り種別判定テーブル131bの方が、大当り種別判定テーブル131aと比較して、「15R確変大当り」に対して多くの判定値が割り振られている。従って、この実施の形態では、第2始動入賞口14や第3始動入賞口に始動入賞して第2特別図柄の変動表示が実行される場合には、第1始動入賞口13に始動入賞して第1特別図柄の変動表示が実行される場合と比較して、有利な「15R確変大当り」となる割合が高い。
なお、この実施の形態では、第2特別図柄の変動表示が実行される場合の方が第1特別図柄の変動表示が実行される場合と比較し有利となる場合を示したが、例えば、大当り種別判定テーブル131aと大当り種別判定テーブル131bとの割り振りを同じにして、第1特別図柄の変動表示を行う場合と第2特別図柄の変動表示を行う場合とで有利度が同じになるように構成してもよい。
この実施の形態では、図55(D),(E)に示すように、大当り種別として、「15R確変大当り」、「7R確変大当り」および「突然確変大当り」がある。なお、この実施の形態では、大当り遊技において実行されるラウンド数が15ラウンド、7ラウンドおよび2ラウンドの3種類である場合を示しているが、大当り遊技において実行されるラウンド数は、この実施の形態で示したものに限られない。例えば、10ラウンドの大当り遊技に制御する10R確変大当りや、5ラウンドの大当り遊技に制御する5R確変大当りが設けられていてもよい。また、この実施の形態では、大当り種別が「15R確変大当り」、「7R確変大当り」および「突然確変大当り」の3種類である場合を示しているが、3種類にかぎらず、例えば、4種類以上の大当り種別を設けるようにしてもよい。また、逆に、大当り種別が3種類よりも少なくてもよく、例えば、大当り種別として2種類のみ設けられていてもよい。また、この実施の形態では、大当り種別として、大当り遊技後に確変状態に移行される確変大当りのみが設けられているが、大当り遊技後に確変状態に移行されずに通常状態に移行される通常大当りを設けるようにしてもよい。
「15R確変大当り」とは、15ラウンドの大当り遊技状態に制御し、その大当り遊技状態の終了後に確変状態に移行させる大当りである(この実施の形態では、確変状態に移行されるとともに時短状態にも移行される。後述するステップS166参照)。そして、確変状態に移行した後、変動表示を所定回数(この実施の形態では70回)終了すると確変状態(および時短状態)が終了する(ステップS167,S141〜S144参照)。なお、変動表示を所定回数終了する前であっても、次の大当りが発生した場合にも、確変状態(および時短状態)を終了する(ステップS132参照)。
また、「7R確変大当り」とは、7ラウンドの大当り遊技状態に制御し、その大当り遊技状態の終了後に確変状態に移行させる大当りである(この実施の形態では、確変状態に移行されるとともに時短状態にも移行される。後述するステップS166参照)。そして、確変状態に移行した後、変動表示を所定回数(この実施の形態では70回)終了すると確変状態(および時短状態)が終了する(ステップS167,S141〜S144参照)。なお、変動表示を所定回数終了する前であっても、次の大当りが発生した場合にも、確変状態(および時短状態)を終了する(ステップS132参照)。
また、「突然確変大当り」とは、「15R確変大当り」や「7R確変大当り」と比較して大入賞口の開放回数が少ない回数(この実施の形態では0.1秒間の開放を2回)まで許容される大当りである。すなわち、「突然確変大当り」となった場合には、2ラウンドの大当り遊技状態に制御される。また、「15R確変大当り」や「7R確変大当り」では、1ラウンドあたりの大入賞口の開放時間が29秒と長いのに対して、「突然確変大当り」では1ラウンドあたりの大入賞口の開放時間が0.1秒と極めて短く、大当り遊技中に大入賞口に遊技球が入賞することは殆ど期待できない。そして、この実施の形態では、その突然確変大当り遊技状態の終了後に確変状態に移行される(この実施の形態では、確変状態に移行されるとともに時短状態にも移行される。後述するステップS166参照)。そして、確変状態に移行した後、変動表示を所定回数(この実施の形態では70回)終了すると確変状態(および時短状態)が終了する(ステップS167,S141〜S144参照)。なお、変動表示を所定回数終了する前であっても、次の大当りが発生した場合にも、確変状態(および時短状態)を終了する(ステップS132参照)。
なお、前述したように、この実施の形態では、「小当り」となった場合にも、大入賞口の開放が0.1秒間ずつ2回行われ、「突然確変大当り」による大当り遊技状態と同様の制御が行われる。そして、「小当り」となった場合には、大入賞口の2回の開放が終了した後、遊技状態は変化せず、「小当り」となる前の遊技状態が維持される。そのようにすることによって、「突然確変大当り」であるか「小当り」であるかを認識できないようにし、遊技の興趣を向上させている。なお、この実施の形態のように大当り種別が全て確変大当りであるように構成する場合、小当りを設けなくてもよい。また、この実施の形態のように大当り種別が全て確変大当りである場合に小当りを設けるように構成する場合には、確変状態(高確率状態)に移行されるのみで時短状態(高ベース状態)を伴わない突然確変大当りを設けるようにすること(大入賞口の開放パターンも突然確変大当りと小当りの場合とで同じにすること)が好ましい。
大当り種別判定テーブル131a,131bには、ランダム1の値と比較される数値であって、「15R確変大当り」、「7R確変大当り」、「突然確変大当り」のそれぞれに対応した判定値(大当り種別判定値)が設定されている。CPU56は、ランダム1の値が大当り種別判定値のいずれかに一致した場合に、大当りの種別を、一致した大当り種別判定値に対応する種別に決定する。
図56および図57は、主基板31に搭載される遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する特別図柄プロセス処理(ステップS26)のプログラムの一例を示すフローチャートである。上述したように、特別図柄プロセス処理では第1特別図柄表示器8aまたは第2特別図柄表示器8bおよび大入賞口を制御するための処理が実行される。特別図柄プロセス処理において、CPU56は、第1始動入賞口13に遊技球が入賞したことを検出するための第1始動口スイッチ13aがオンしていたら、すなわち、第1始動入賞口13への始動入賞が発生していたら、第1始動口スイッチ通過処理を実行する(ステップS311,S312)。また、CPU56は、第2始動入賞口14に遊技球が入賞したことを検出するための第2始動口スイッチ14aがオンしていたら、すなわち第2始動入賞口14への始動入賞が発生していたら、第2始動口スイッチ通過処理を実行する(ステップS313,S314)。そして、ステップS300〜S310のうちのいずれかの処理を行う。第1始動口スイッチ13aまたは第2始動口スイッチ14aがオンしていなければ、内部状態に応じて、ステップS300〜S310のうちのいずれかの処理を行う。
ステップS300〜S310の処理は、以下のような処理である。
特別図柄通常処理(ステップS300):特別図柄プロセスフラグの値が0であるときに実行される。遊技制御用マイクロコンピュータ560は、特別図柄の可変表示が開始できる状態になると、保留記憶数バッファに記憶される数値データの記憶数(合算保留記憶数)を確認する。保留記憶数バッファに記憶される数値データの記憶数は合算保留記憶数カウンタのカウント値により確認できる。また、合算保留記憶数カウンタのカウント値が0でなければ、大当り判定用乱数(ランダムR)を用いた抽選処理を実行することにより、第1特別図柄または第2特別図柄の可変表示の表示結果を大当り(または小当り)とするか否かを決定する。大当りとする場合には大当りフラグをセットする。また小当りとする場合には小当りフラグをセットする。そして、内部状態(特別図柄プロセスフラグ)をステップS301に応じた値(この例では1)に更新する。なお、大当りフラグは、大当り遊技が終了するときにリセットされる。また、小当りフラグは、小当り遊技が終了するときにリセットされる。
変動パターン設定処理(ステップS301):特別図柄プロセスフラグの値が1であるときに実行される。また、変動パターンを決定し、その変動パターンにおける変動時間(可変表示時間:可変表示を開始してから表示結果を導出表示(停止表示)するまでの時間)を特別図柄の可変表示の変動時間とすることに決定する。また、特別図柄の変動時間を計測する変動時間タイマをスタートさせる。そして、内部状態(特別図柄プロセスフラグ)をステップS302に対応した値(この例では2)に更新する。
表示結果指定コマンド送信処理(ステップS302):特別図柄プロセスフラグの値が2であるときに実行される。演出制御用マイクロコンピュータ100に、表示結果指定コマンドを送信する制御を行う。そして、内部状態(特別図柄プロセスフラグ)をステップS303に対応した値(この例では3)に更新する。
特別図柄変動中処理(ステップS303):特別図柄プロセスフラグの値が3であるときに実行される。変動パターン設定処理で選択された変動パターンの変動時間が経過(ステップS301でセットされる変動時間タイマがタイムアウトすなわち変動時間タイマの値が0になる)すると、演出制御用マイクロコンピュータ100に、図柄確定指定コマンドを送信する制御を行い、内部状態(特別図柄プロセスフラグ)をステップS304に対応した値(この例では4)に更新する。なお、演出制御用マイクロコンピュータ100は、遊技制御用マイクロコンピュータ560が送信する図柄確定指定コマンドを受信すると演出表示装置9において第4図柄が停止されるように制御する。
特別図柄停止処理(ステップS304):特別図柄プロセスフラグの値が4であるときに実行される。大当りフラグがセットされている場合に、内部状態(特別図柄プロセスフラグ)をステップS305に対応した値(この例では5)に更新する。また、小当りフラグがセットされている場合には、内部状態(特別図柄プロセスフラグ)をステップS308に対応した値(この例では8)に更新する。大当りフラグおよび小当りフラグのいずれもセットされていない場合には、内部状態(特別図柄プロセスフラグ)をステップS300に対応した値(この例では0)に更新する。なお、この実施の形態では、特別図柄プロセスフラグの値が4となったことにもとづいて、後述するように、特別図柄表示制御処理において特別図柄の停止図柄を停止表示するための特別図柄表示制御データが特別図柄表示制御データ設定用の出力バッファに設定され、ステップS22の表示制御処理において出力バッファの設定内容に応じて実際に特別図柄の停止図柄が停止表示される。
大入賞口開放前処理(ステップS305):特別図柄プロセスフラグの値が5であるときに実行される。大入賞口開放前処理では、大入賞口を開放する制御を行う。具体的には、カウンタ(例えば、大入賞口に入った遊技球数をカウントするカウンタ)などを初期化するとともに、ソレノイド21を駆動して大入賞口を開放状態にする。また、タイマによって大入賞口開放中処理の実行時間を設定し、内部状態(特別図柄プロセスフラグ)をステップS306に対応した値(この例では6)に更新する。なお、大入賞口開放前処理は各ラウンド毎に実行されるが、第1ラウンドを開始する場合には、大入賞口開放前処理は大当り遊技を開始する処理でもある。
大入賞口開放中処理(ステップS306):特別図柄プロセスフラグの値が6であるときに実行される。大当り遊技状態中のラウンド表示の演出制御コマンドを演出制御用マイクロコンピュータ100に送信する制御や大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態(特別図柄プロセスフラグ)をステップS305に対応した値(この例では5)に更新する。また、全てのラウンドを終えた場合には、内部状態(特別図柄プロセスフラグ)をステップS307に対応した値(この例では7)に更新する。
大当り終了処理(ステップS307):特別図柄プロセスフラグの値が7であるときに実行される。大当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御用マイクロコンピュータ100に行わせるための制御を行う。また、遊技状態を示すフラグ(例えば、確変フラグや時短フラグ)をセットする処理を行う。そして、内部状態(特別図柄プロセスフラグ)をステップS300に対応した値(この例では0)に更新する。
小当り開放前処理(ステップS308):特別図柄プロセスフラグの値が8であるときに実行される。小当り開放前処理では、大入賞口を開放する制御を行う。具体的には、カウンタ(例えば、大入賞口に入った遊技球数をカウントするカウンタ)などを初期化するとともに、ソレノイド21を駆動して大入賞口を開放状態にする。また、タイマによって大入賞口開放中処理の実行時間を設定し、内部状態(特別図柄プロセスフラグ)をステップS309に対応した値(この例では9)に更新する。なお、小当り開放前処理は各ラウンド毎に実行されるが、第1ラウンドを開始する場合には、小当り開放前処理は小当り遊技を開始する処理でもある。
小当り開放中処理(ステップS309):特別図柄プロセスフラグの値が9であるときに実行される。大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態(特別図柄プロセスフラグ)をステップS308に対応した値(この例では8)に更新する。また、全てのラウンドを終えた場合には、内部状態(特別図柄プロセスフラグ)をステップS310に対応した値(この例では10(10進数))に更新する。
小当り終了処理(ステップS310):特別図柄プロセスフラグの値が10であるときに実行される。小当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御用マイクロコンピュータ100に行わせるための制御を行う。そして、内部状態(特別図柄プロセスフラグ)をステップS300に対応した値(この例では0)に更新する。
図58は、ステップS312,S314の始動口スイッチ通過処理を示すフローチャートである。このうち、図58(A)は、ステップS312の第1始動口スイッチ通過処理を示すフローチャートである。また、図58(B)は、ステップS314の第2始動口スイッチ通過処理を示すフローチャートである。
まず、図58(A)を参照して第1始動口スイッチ通過処理について説明する。第1始動口スイッチ13aがオン状態の場合に実行される第1始動口スイッチ通過処理において、CPU56は、第1保留記憶数が上限値に達しているか否か(具体的には、第1保留記憶数をカウントするための第1保留記憶数カウンタの値が4でるか否か)を確認する(ステップS201A)。
第1保留記憶数が上限値に達していなければ、CPU56は、第1保留記憶数カウンタの値を1増やす(ステップS202A)とともに、合算保留記憶数をカウントするための合算保留記憶数カウンタの値を1増やす(ステップS203A)。
次いで、CPU56は、ソフトウェア乱数(大当り種別判定用乱数(ランダム1)、変動パターン種別判定用乱数(ランダム2)および変動パターン判定用乱数(ランダム3))を生成するための各カウンタから値を抽出する(ステップS204A)。また、CPU56は、チャネル0の16ビット乱数回路508bが用いるRL0ハードラッチ乱数値レジスタ0(RL0HV0)から、大当り判定用乱数(ランダムR)としての数値データを抽出する(ステップS205A)。
なお、既に、図25で説明したように、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット2−0の設定内容によりいずれの端子からの信号(ラッチ信号)にもとづいて、RL0ハードラッチ乱数値レジスタ0(RL0HV0)に乱数値をラッチさせるかが設定されている。また、この実施の形態では、その設定された端子には、第1始動口スイッチ13aからの検出信号がラッチ信号として入力されているものとし、第1始動入賞口13への始動入賞が発生したタイミングでRL0ハードラッチ乱数値レジスタ0(RL0HV0)に乱数値をラッチできるように構成されている。
そして、CPU56は、抽出したそれらのソフトウェア乱数および大当り判定用乱数(ランダムR)を、第1保留記憶バッファ(図59参照)における保存領域に格納する処理を実行する(ステップS206A)。なお、変動パターン判定用乱数(ランダム3)を第1始動口スイッチ通過処理(始動入賞時)において抽出して保存領域にあらかじめ格納しておくのではなく、第1特別図柄の変動開始時に抽出するようにしてもよい。例えば、遊技制御用マイクロコンピュータ560は、後述する変動パターン設定処理において、変動パターン判定用乱数(ランダム3)を生成するための変動パターン判定用乱数カウンタから値を直接抽出するようにしてもよい。
図59は、保留記憶に対応する乱数等を保存する領域(保留記憶バッファ)の構成例を示す説明図である。図59に示すように、第1保留記憶バッファには、第1保留記憶数の上限値(この例では4)に対応した保存領域が確保されている。また、第2保留記憶バッファには、第2保留記憶数の上限値(この例では4)に対応した保存領域が確保されている。この実施の形態では、第1保留記憶バッファおよび第2保留記憶バッファには、ハードウェア乱数であるランダムR(大当り判定用乱数)や、ソフトウェア乱数である大当り種別判定用乱数(ランダム1)、変動パターン種別判定用乱数(ランダム2)および変動パターン判定用乱数(ランダム3)が記憶される。なお、第1保留記憶バッファおよび第2保留記憶バッファは、RAM55に形成されている。
そして、CPU56は、第1保留記憶数が1増加したことを指定する第1保留記憶数加算指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS207A)。
第1保留記憶数が上限値に達していれば(ステップS201AのY)、CPU56は、RL0ハードラッチ乱数値レジスタ0(RL0HV0)から数値データを抽出し(ステップS208A)、抽出した数値データ(乱数)を格納することなく、第1始動口スイッチ通過処理を終了する。すなわち、この実施の形態では、図25に示すプログラム管理エリアにおけるRL0ハードラッチ選択レジスタ0(RL0LS0)のビット3が”0”に設定され、RL0ハードラッチ乱数値レジスタ0(RL0HV0)から値を読み込まないと次の値をラッチできないように設定されているものとする。そのため、第1保留記憶数が上限値に達している場合であっても、CPU56は、RL0ハードラッチ乱数値レジスタ0(RL0HV0)から数値データを抽出する処理のみを行い(値の格納までは行わない)、RL0ハードラッチ乱数値レジスタ0(RL0HV0)が次の値をラッチできるようにしている。
なお、RL0ハードラッチ選択レジスタ0(RL0LS0)のビット3を”1”に設定し、RL0ハードラッチ乱数値レジスタ0(RL0HV0)から値を読み込まなくても次の値をラッチできるように設定してもよい。そのようにすれば、ステップS208Aの処理は不要となる。
次に、図58(B)を参照して第2始動口スイッチ通過処理について説明する。第2始動口スイッチ14aがオン状態の場合に実行される第2始動口スイッチ通過処理において、CPU56は、第2保留記憶数が上限値に達しているか否か(具体的には、第2保留記憶数をカウントするための第2保留記憶数カウンタの値が4でるか否か)を確認する(ステップS201B)。
第2保留記憶数が上限値に達していなければ、CPU56は、第2保留記憶数カウンタの値を1増やす(ステップS202B)とともに、合算保留記憶数をカウントするための合算保留記憶数カウンタの値を1増やす(ステップS203B)。
次いで、CPU56は、ソフトウェア乱数(大当り種別判定用乱数(ランダム1)、変動パターン種別判定用乱数(ランダム2)および変動パターン判定用乱数(ランダム3))を生成するための各カウンタから値を抽出する(ステップS204B)。また、CPU56は、チャネル1の16ビット乱数回路508bが用いるRL1ハードラッチ乱数値レジスタ0(RL1HV0)から、大当り判定用乱数(ランダムR)としての数値データを抽出する(ステップS205B)。
なお、既に、図27で説明したように、RL1ハードラッチ選択レジスタ(RL1LS)のビット2−0の設定内容によりいずれの端子からの信号(ラッチ信号)にもとづいて、RL1ハードラッチ乱数値レジスタ0(RL1HV0)に乱数値をラッチさせるかが設定されている。また、この実施の形態では、その設定された端子には、第2始動口スイッチ14aからの検出信号がラッチ信号として入力されているものとし、第2始動入賞口14への始動入賞が発生したタイミングでRL1ハードラッチ乱数値レジスタ0(RL1HV0)に乱数値をラッチできるように構成されている。
そして、CPU56は、抽出したそれらのソフトウェア乱数および大当り判定用乱数(ランダムR)を、第2保留記憶バッファ(図59参照)における保存領域に格納する処理を実行する(ステップS206B)。なお、変動パターン判定用乱数(ランダム3)を第2始動口スイッチ通過処理(始動入賞時)において抽出して保存領域にあらかじめ格納しておくのではなく、第2特別図柄の変動開始時に抽出するようにしてもよい。例えば、遊技制御用マイクロコンピュータ560は、後述する変動パターン設定処理において、変動パターン判定用乱数(ランダム3)を生成するための変動パターン判定用乱数カウンタから値を直接抽出するようにしてもよい。
そして、CPU56は、第2保留記憶数が1増加したことを指定する第2保留記憶数加算指定コマンドを演出制御用マイクロコンピュータ100に送信する制御を行う(ステップS207B)。
第2保留記憶数が上限値に達していれば(ステップS201BのY)、CPU56は、RL1ハードラッチ乱数値レジスタ0(RL1HV0)から数値データを抽出し(ステップS208B)、抽出した数値データ(乱数)を格納することなく、第2始動口スイッチ通過処理を終了する。すなわち、この実施の形態では、プログラム管理エリアにおけるRL1ハードラッチ選択レジスタ(RL1LS)のビット3が”0”に設定され(図27でn=1とした場合に相当する)、RL1ハードラッチ乱数値レジスタ0(RL1HV0)から値を読み込まないと次の値をラッチできないように設定されているものとする。そのため、第2保留記憶数が上限値に達している場合であっても、CPU56は、RL1ハードラッチ乱数値レジスタ0(RL1HV0)から数値データを抽出する処理のみを行い(値の格納までは行わない)、RL1ハードラッチ乱数値レジスタ0(RL1HV0)が次の値をラッチできるようにしている。
なお、RL1ハードラッチ選択レジスタ0(RL1LS)のビット3を”1”に設定し、RL1ハードラッチ乱数値レジスタ0(RL1HV0)から値を読み込まなくても次の値をラッチできるように設定してもよい。そのようにすれば、ステップS208Bの処理は不要となる。
また、この実施の形態では、ステップS205A,S205Bの処理が実行されることによって、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで異なる乱数値レジスタから乱数値を抽出して格納するようにしている。そのようにすることにより、例えば、乱数更新のスタート値を異ならせたり、乱数列の変更の設定を異ならせたり、乱数最大値の設定を異ならせることによって、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで乱数値が同期しにくくすることができ、所定の乱数更新タイミングを狙って不正に大当りを発生させるなどの行為をしにくくしている。
なお、この実施の形態では、16ビット乱数回路508bの異なるチャネル(本例では、チャネル0とチャネル1)から乱数値を抽出することにより、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで乱数を抽出する乱数値レジスタを異ならせる場合を示したが、この実施の形態で示した態様にかぎられない。例えば、16ビット乱数回路508bの同じチャネルであっても、その同じチャネルで用いる異なるハードラッチ乱数値レジスタから(例えば、同じチャネル0のRL0ハードラッチ乱数値レジスタ0(RL0HV0)とRL0ハードラッチ乱数値レジスタ1(RL0HV1)とから)乱数値を抽出することにより、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで乱数を抽出する乱数値レジスタを異ならせてもよい。
また、この実施の形態では、ハードラッチ乱数値レジスタから乱数値を抽出する場合を示したが、例えば、ソフトラッチ乱数値レジスタから乱数値を抽出するようにしてもよい。この場合であっても、16ビット乱数回路508bの異なるチャネルから乱数値を抽出することにより、または同じチャネルであっても異なるソフトラッチ乱数値レジスタから乱数値を抽出することにより、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで乱数を抽出する乱数値レジスタを異ならせるようにすればよい。
また、この実施の形態では、16ビット乱数回路508bから乱数値を抽出する場合を示したが、例えば、8ビット乱数回路508aから乱数値を抽出するようにしてもよい。この場合であっても、8ビット乱数回路508aの異なるチャネルから乱数値を抽出することにより、または同じチャネルであっても異なるハードラッチ乱数値レジスタやソフトラッチ乱数値レジスタから乱数値を抽出することにより、第1特別図柄の変動表示を実行する場合と第2特別図柄の変動表示を実行する場合とで乱数を抽出する乱数値レジスタを異ならせるようにすればよい。
なお、この実施の形態では、既に説明したように、遊技制御用マイクロコンピュータ560は、遊技機への電源投入時にステップS1001,S1011を実行して乱数回路508a,508bに関する設定をハードウェア的に行い、その後に、ユーザプログラムの実行中に第1始動口スイッチ通過処理(ステップS312参照)や第2始動口スイッチ通過処理(ステップS314参照)においてステップS205A,S205Bの乱数抽出の処理を実行する。従って、この実施の形態では、乱数回路から数値データ(乱数値)を抽出するタイミングよりも前に、乱数回路の監視に関する設定が行われるように構成されている。
次に、特別図柄プロセス処理における特別図柄停止処理について説明する。図60は、特別図柄プロセス処理における特別図柄停止処理(ステップS304)を示すフローチャートである。特別図柄停止処理において、CPU56は、大当りフラグがセットされているか否かを確認する(ステップS131)。なお、大当りフラグは、特別図柄通常処理において大当りと判定されるとセットされる。大当りフラグがセットされている場合には、CPU56は、セットされていれば、確変状態であることを示す確変フラグ、および確変状態における特別図柄の変動可能回数を示す確変回数カウンタをリセットする(ステップS132)。また、CPU56は、演出制御用マイクロコンピュータ100に大当り開始指定コマンドを送信する制御を行う(ステップS134)。具体的には、大当りの種別が「15R確変大当り」または「7R確変大当り」である場合には、大当り開始指定コマンドを送信する。また、大当りの種別が突然確変大当りである場合には、小当り/突然確変大当り開始指定コマンドを送信する。なお、大当りの種別が「15R確変大当り」、「7R確変大当り」または「突然確変大当り」のいずれであるかは、RAM55に記憶されている大当り種別を示すデータ(大当り種別バッファに記憶されているデータ)にもとづいて判定される。
また、大当り表示時間タイマに大当り表示時間(大当りが発生したことを、例えば、演出表示装置9において報知する時間)に相当する値を設定する(ステップS135)。また、大入賞口開放回数カウンタに開放回数(例えば、「15R確変大当り」の場合には15回。「7R確変大当り」の場合には7回。「突然確変大当り」の場合には2回。)をセットする(ステップS136)。また、大当り遊技における1ラウンドあたりのラウンド時間もセットされる。具体的には、突然確変大当りの場合には、ラウンド時間として0.1秒がセットされ、15R確変大当りや7R確変大当りの場合には、ラウンド時間として29秒がセットされる。そして、特別図柄プロセスフラグの値を大入賞口開放前処理(ステップS305)に対応した値に更新する(ステップS137)。
また、ステップS131で大当りフラグがセットされていなければ、CPU56は、確変状態における特別図柄の変動可能回数を示す確変回数カウンタの値が0となっているか否かを確認する(ステップS141)。確変回数カウンタの値が0でなければ、CPU56は、確変回数カウンタの値を−1する(ステップS142)。そして、CPU56は、減算後の確変回数カウンタの値が0になった場合には(ステップS143)、確変フラグをリセットする(ステップS144)。
次いで、CPU56は、小当りフラグがセットされているか否かを確認する(ステップS145)。なお、小当りフラグは、特別図柄通常処理において小当りと判定されるとセットされる。小当りフラグがセットされていれば、CPU56は、演出制御用マイクロコンピュータ100に小当り/突然確変大当り開始指定コマンドを送信する(ステップS146)。また、小当り表示時間タイマに小当り表示時間(小当りが発生したことを、例えば、演出表示装置9において報知する時間)に相当する値を設定する(ステップS147)。また、大入賞口開放回数カウンタに開放回数(例えば2回)をセットする(ステップS148)。また、小当り遊技における大入賞口の1回あたりの開放時間もセットされる。具体的には、突然確変大当りのラウンド時間と同じ0.1秒が、小当り遊技における大入賞口の1回あたりの開放時間としてセットされる。そして、特別図柄プロセスフラグの値を小当り開始前処理(ステップS308)に対応した値に更新する(ステップS149)。
小当りフラグもセットされていなければ(ステップS145のN)、CPU56は、特別図柄プロセスフラグの値を特別図柄通常処理(ステップS300)に対応した値に更新する(ステップS150)。
次に、特別図柄プロセス処理における大当り終了処理について説明する。図61は、特別図柄プロセス処理における大当り終了処理(ステップS307)を示すフローチャートである。大当り終了処理において、CPU56は、大当り終了表示タイマが設定されているか否か確認し(ステップS160)、大当り終了表示タイマが設定されている場合には、ステップS164に移行する。大当り終了表示タイマが設定されていない場合には、大当りフラグをリセットし(ステップS161)、大当り終了指定コマンドを送信する制御を行う(ステップS162)。ここで、「15R確変大当り」または「7R確変大当り」であった場合には大当り終了指定コマンドを送信し、「突然確変大当り」であった場合には小当り/突然確変大当り終了指定コマンドを送信する。そして、大当り終了表示タイマに、演出表示装置9において大当り終了表示が行われている時間(大当り終了表示時間)に対応する表示時間に相当する値を設定し(ステップS163)、処理を終了する。
ステップS164では、大当り終了表示タイマの値を1減算する(ステップS164)。そして、CPU56は、大当り終了表示タイマの値が0になっているか否か、すなわち大当り終了表示時間が経過したか否か確認する(ステップS165)。経過していなければ処理を終了する。
大当り終了表示時間を経過していれば(ステップS165のY)、CPU56は、確変フラグをセットして確変状態に移行させる(ステップS166)。なお、この実施の形態では、確変フラグがセットされることによって、確変状態に制御されるとともに時短状態(高ベース状態)にも制御される。また、CPU56は、確変回数カウンタに所定回数(本例では、70回)をセットする(ステップS167)。
なお、時短状態であることを示す時短フラグもセットするようにし、確変状態の管理と時短状態の管理とを別々に行うように構成してもよい。また、この実施の形態では、大当り遊技を終了して確変状態および時短状態に移行した後、同じ回数(本例では、70回)の変動表示を終了すると確変状態および時短状態の両方を終了する場合を示したが、確変状態の終了回数と時短状態の終了回数とを異ならせてもよい。
そして、CPU56は、特別図柄プロセスフラグの値を特別図柄通常処理(ステップS300)に対応した値に更新する(ステップS170)。
次に、遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する普通図柄プロセス処理(ステップS28)について説明する。図62は、普通図柄プロセス処理の一例を示すフローチャートである。普通図柄プロセス処理では、CPU56は、ゲート32を遊技球が通過してゲートスイッチ32aがオン状態となったことを検出すると(ステップS511)、ゲートスイッチ通過処理(ステップS512)を実行する。そして、CPU56は、普通図柄プロセスフラグの値に応じてステップS500〜S503に示された処理のうちのいずれかの処理を実行する。
ゲートスイッチ通過処理(ステップS512):CPU56は、ゲート通過記憶カウンタのカウント値(ゲート通過記憶数)が最大値(この例では「4」)に達しているか否か確認する。最大値に達していなければ、ゲート通過記憶カウンタのカウント値を+1する。なお、ゲート通過記憶カウンタの値に応じて普通図柄保留記憶表示器41のLEDが点灯される。そして、CPU56は、普通図柄当り判定用乱数(ランダム4)の値を抽出し、ゲート通過記憶数の値に対応した保存領域(普通図柄判定用バッファ)に格納する処理を行う。
普通図柄通常処理(ステップS500):CPU56は、普通図柄の変動を開始することができる状態(例えば普通図柄プロセスフラグの値がステップS500を示す値となっている場合、具体的には、普通図柄表示器10において普通図柄の変動表示がなされておらず、かつ、普通図柄表示器10に当り図柄が導出表示されたことにもとづく可変入賞球装置15の開閉動作中でもない場合)には、ゲート通過記憶数の値を確認する。具体的には、ゲート通過記憶数カウンタのカウント値を確認する。ゲート通過記憶数が0でなければ、当りとするか否か(普通図柄の停止図柄を当り図柄とするか否か)を決定する。そして、普通図柄プロセスタイマに普通図柄の変動時間をセットし、タイマをスタートさせる。そして、普通図柄プロセスフラグの値を普通図柄変動処理(ステップS501)を示す値(具体的には「1」)に更新する。
普通図柄変動処理(ステップS501):CPU56は、普通図柄プロセスタイマがタイムアウトしたか否か確認し、タイムアウトしていたら、普通図柄表示器10における普通図柄の変動を停止し、普通図柄プロセスタイマに普通図柄停止図柄表示時間をセットし、タイマをスタートさせる。そして、普通図柄プロセスフラグの値を普通図柄停止処理(ステップS502)を示す値(具体的には「2」)に更新する。
普通図柄停止処理(ステップS502):CPU56は、普通図柄プロセスタイマがタイムアウトしたか否かを確認し、タイムアウトしていたら、普通図柄の停止図柄が当り図柄であるかどうかを確認する。当り図柄でなければ(はずれ図柄であれば)、普通図柄プロセスフラグの値を普通図柄通常処理(ステップS500)を示す値(具体的には「0」)に更新する。一方、普通図柄の停止図柄が当り図柄であれば、普通図柄プロセスタイマに普通電動役物作動時間をセットし、タイマをスタートさせる。また、現在の遊技状態が確変状態であるか否かを確認し、確変状態(すなわち、高ベース状態)であれば、確変状態(高ベース状態)のときの普通電動役物(可変入賞球装置15)の開放パターンを選択し、確変状態でなければ(すなわち、低ベース状態であれば)、低ベース状態のときの普通電動役物(可変入賞球装置15)の開放パターンを選択し、選択した開放パターンを設定する。そして、普通図柄プロセスフラグの値を普通電動役物作動処理(ステップS503)を示す値(具体的には「3」)に更新する。
普通電動役物作動処理(ステップS503):CPU56は、普通図柄プロセスタイマがタイムアウトしていないことを条件に、設定された開放パターンで普通電動役物の開放を行う(可変入賞球装置15の開閉動作を実行する)普通電動役物開放パターン処理を実行する。なお、この実施の形態では、確変状態(すなわち、高ベース状態)では、低ベース状態である場合と比較して可変入賞球装置15の開放期間が長いものとする。そして、普通図柄プロセスタイマがタイムアウトすると、普通図柄プロセスフラグの値を普通図柄通常処理(ステップS500)を示す値(具体的には「0」)に更新する。
次に、主基板31に搭載される遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する特別図柄表示制御処理(ステップS33)について説明する(フローチャート等は図示せず)。特別図柄表示制御処理では、CPU56は、特別図柄プロセスフラグの値が3であるか否かを確認する(ステップS3201)。特別図柄プロセスフラグの値が3であれば(すなわち、特別図柄変動中処理の実行中であれば)、CPU56は、特別図柄変動表示用の特別図柄表示制御データを特別図柄表示制御データ設定用の出力バッファに設定または更新する処理を行う(ステップS3202)。この場合、CPU56は、特別図柄ポインタが示す方の特別図柄(第1特別図柄または第2特別図柄)の変動表示を行うための特別図柄表示制御データを設定または更新する。例えば、変動速度が1コマ/0.2秒であれば、0.2秒が経過する毎に、出力バッファに設定される特別図柄表示制御データの値を+1する。そして、その後、表示制御処理(ステップS23参照)が実行され、特別図柄表示制御データ設定用の出力バッファの内容に応じて特別図柄表示器8a,8bに対して駆動信号が出力されることによって、特別図柄表示器8a,8bにおける特別図柄の変動表示が実行される。
特別図柄プロセスフラグの値が3でなければ、CPU56は、特別図柄プロセスフラグの値が4であるか否かを確認する(ステップS3203)。特別図柄プロセスフラグの値が4であれば(すなわち、特別図柄停止処理に移行した場合には)、CPU56は、特別図柄通常処理で設定された特別図柄の停止図柄を停止表示するための特別図柄表示制御データを特別図柄表示制御データ設定用の出力バッファに設定する処理を行う(ステップS3204)。この場合、CPU56は、特別図柄ポインタが示す方の特別図柄(第1特別図柄または第2特別図柄)の停止図柄を停止表示するための特別図柄表示制御データを設定する。そして、その後、表示制御処理(ステップS23参照)が実行され、特別図柄表示制御データ設定用の出力バッファの内容に応じて特別図柄表示器8a,8bに対して駆動信号が出力されることによって、特別図柄表示器8a,8bにおいて特別図柄の停止図柄が停止表示される。なお、ステップS3204の処理が実行され停止図柄表示用の特別図柄表示制御データが設定された後には、設定データの変更が行われないので、ステップS23の表示制御処理では最新の特別図柄表示制御データにもとづいて最新の停止図柄を次の変動表示が開始されるまで停止表示し続けることになる。また、ステップS3201において特別図柄プロセスフラグの値が2または3のいずれかであれば(すなわち、表示結果指定コマンド送信処理または特別図柄変動中処理のいずれかであれば)、特別図柄変動表示用の特別図柄表示制御データを更新するようにしてもよい。この場合、遊技制御用マイクロコンピュータ560側で認識する変動時間と演出制御用マイクロコンピュータ100側で認識する変動時間との間にズレが生じないようにするため、表示結果指定コマンド送信処理においても変動時間タイマを1減算するように構成すればよい。
なお、この実施の形態では、特別図柄プロセスフラグの値に応じて特別図柄表示制御データを出力バッファに設定する場合を示したが、特別図柄プロセス処理において、特別図柄の変動開始時に開始フラグをセットするとともに、特別図柄の変動終了時に終了フラグをセットするようにしてもよい。そして、特別図柄表示制御処理(ステップS33)において、CPU56は、開始フラグがセットされたことにもとづいて特別図柄表示制御データの値の更新を開始するようにし、終了フラグがセットされたことにもとづいて停止図柄を停止表示させるための特別図柄表示制御データをセットするようにしてもよい。
次に、遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する入賞順異常報知処理(ステップS21a)について説明する。図63は、ステップS21aの入賞順異常報知処理を示すフローチャートである。入賞順異常報知処理において、遊技制御用マイクロコンピュータ560(具体的には、CPU56)は、第2始動入賞口14に対応する第2始動口監視用バッファを加算バッファにセットし(ステップS250)、第1始動入賞口13に対応する第1始動口監視用バッファをクリアバッファにセットする(ステップS251)。
第1始動口監視用バッファおよび第2始動口監視用バッファは、加算バッファおよびクリアバッファと同様に、RAM55に形成され、対応する始動口に入賞があると、原則的に(例外については後述する)格納している値に所定値(本例では1)が加算される。加算バッファは、セットされた始動口監視用バッファを所定値(本例では1)の加算対象とするために用いられる。また、クリアバッファは、セットされた始動口監視用バッファをクリア(本例では格納している値を0にする)対象とするために用いられる。なお、この実施の形態では、始動口監視用バッファを加算バッファやクリアバッファにセットするとの表現を用いるが、例えば、加算バッファまたはクリアバッファに、第1始動口監視用バッファまたは第2始動口監視用バッファを特定するためのポインタがセットされることによって実現される。
次いで、CPU56は、第1始動口スイッチがオン状態であるか否かを確認し(ステップS252)、第1始動口スイッチがオン状態である場合には、加算バッファとクリアバッファのセット内容を入れ替える(ステップS253)。すなわち、ステップS253では、CPU56は、第1始動口監視用バッファを加算バッファにセットし、第2始動口監視用バッファをクリアバッファにセットする。ステップS253では、例えば、値を交換する命令(例えば、EX命令)1つを実行させることで入れ替えを行うことが可能である。
この実施の形態では、CPU56は、ステップS250,S251で第2始動口監視用バッファを加算バッファに、第1始動口監視用バッファをクリアバッファにセットし(以下、仮セットともいう)、第1始動口スイッチがオン状態であれば(すなわち遊技球が入賞した始動口に対応した始動口監視用バッファが加算バッファにセットされていなければ(ステップS252のY))、ステップS253で加算バッファとクリアバッファのセット内容を入れ替える(遊技球が入賞した始動口に対応した始動口監視用バッファが加算バッファにセットされていれば、セット内容を入れ替えない)。このように、第1始動口監視用バッファおよび第2始動口監視用バッファを加算バッファとクリアバッファとに仮セットし、遊技球が入賞した始動口に対応した始動口監視用バッファが加算バッファにセットされていなければ、加算バッファとクリアバッファのセット内容を入れ替えることによって、遊技球が入賞した始動口(例えば、第1始動入賞口13)に対応した始動口監視用バッファを加算対象とし、他方の始動口(例えば、第2始動入賞口14)に対応した始動口監視用バッファをクリア対象としてセットすることができる。したがって、例えば、同じ始動口に連続して入賞が発生した場合には、対応する始動口監視用バッファが連続して加算対象としてセットされ、他方の始動口に対応する始動口監視用バッファが連続してクリア対象としてセットされる。また、前回入賞した始動口とは異なる始動口に入賞した場合には、前回加算対象としてセットされた始動口監視用バッファがクリア対象としてセットされ、前回クリア対象としてセットされた始動口監視用バッファが加算対象としてセットされる。なお、加算バッファとクリアバッファのセット内容を入れ替えるとは、最終的に(ステップS254を実行する前に)セット内容(例えば、ポインタ)が入れ替わっていればよく、処理の途中で一旦ポインタを示すデータを他の領域に保存してもよい。つまり、加算バッファのセット内容とクリアバッファのセット内容とを直接入れ替えるものに限らず、加算バッファのセット内容とクリアバッフのセット内容と(またはいずれか一方のみ)を他の領域に一旦格納した後に、入れ替えるものであってもよい。
なお、この実施の形態では、ステップS250,S251で第2始動口監視用バッファを加算バッファに、第1始動口監視用バッファをクリアバッファに仮セットしているが、これに限らず、逆に仮セットするようにしてもよい。この場合には、ステップS252において、第2始動口スイッチがオン状態であるか否かを確認し、オン状態であればステップS253に移行するようにすればよい。
ステップS253で加算バッファとクリアバッファのセット内容を入れ替えると、CPU56は、加算バッファを1加算し、加算バッファをロードする(ステップS254)。また、CPU56は、クリアデータ(本例では0)をセットし、クリアバッファにストアする(ステップS255)。すなわち、ステップS254において、加算バッファにセットされた始動口監視用バッファに格納された値に所定値(本例では1)を加算し、ステップS255において、クリアバッファにセットされた始動口監視用バッファに格納された値をクリア(本例では0に)する。このようにすることによって、同じ始動口に連続して入賞が発生した場合には、対応する始動口監視用バッファに格納された値が連続して1加算され、他方の始動口に対応する始動口監視用バッファに格納された値がクリアされる。また、前回入賞した始動口とは異なる始動口に入賞した場合には、前回加算対象として所定値(本例では1)が加算された始動口監視用バッファに格納された値がクリア(本例では0に)され、前回クリア対象としてクリアされた始動口監視用バッファに格納された値に所定値(本例では1)が加算される。以下、「加算バッファの値」という表現を用いることがあるが、具体的には、加算バッファにセットされた始動口監視用バッファに格納された値のことを示す。また、「加算バッファを1加算する」という表現を用いることがあるが、具体的には、加算バッファにセットされた始動口監視用バッファに格納された値に所定値(本例では1)加算することである。また、「加算バッファをクリアする」という表現を用いることがあるが、具体的には、加算バッファにセットされた始動口監視用バッファに格納された値をクリア(本例では0に)することである。
次いで、CPU56は、加算バッファの値が5以上であるか否かを判定する(ステップS259)。加算バッファの値が5以上となっていれば、CPU56は、加算バッファをクリアし(ステップS260)、ステップS261に移行する。加算バッファの値が5以上でなければ、そのまま処理を終了する。
ステップS261では、CPU56は、入賞順異常報知指定コマンドを演出制御用マイクロコンピュータ100に対して送信する制御を行う(ステップS261)。また、CPU56は、セキュリティ信号情報タイマに所定時間(本例では、30秒)をセットする(ステップS262)。この実施の形態では、ステップS262でセキュリティ信号情報タイマに所定時間がセットされたことにもとづいて、情報出力処理(S30参照)が実行されることによって、セキュリティ信号が所定時間(本例では、30秒)外部出力される。すなわち、加算バッファの値が5以上である場合には(ステップS259のY)、第1始動入賞口13または第2始動入賞口14に連続して5以上の入賞が発生したことにより入賞順異常が発生したと判定して、入賞順異常報知を行うために入賞順異常報知指定コマンドを送信する制御を行うとともに、セキュリティ信号を所定期間(本例では、30秒)外部出力するための処理を行う。
また、ステップS252で第1始動口スイッチがオン状態ではない場合には、CPU56は、第2始動口スイッチがオン状態であるか否かを確認する(ステップS256)。第2始動口スイッチがオン状態でなければ(すなわち、いずれの始動口にも入賞していなければ)、そのまま処理を終了する。
一方、第2始動口スイッチ14aがオン状態であれば、CPU56は、確変フラグがセットされているか否かを確認する(ステップS257)。確変フラグがセットされていれば(すなわち、確変状態であるとともに時短状態(高ベース状態)であれば)、ステップS255に移行する。確変フラグがセットされていなければ、CPU56は、普通図柄プロセスフラグの値が3であるか否かを確認する(ステップS258)。この実施の形態では、普通図柄プロセスフラグの値が3であれば(すなわち普通図柄プロセス処理の普通電動役物作動処理が実行されている場合には)、ステップS255に移行する。
ステップS257で確変フラグがセットされていた場合、またはステップS258で普通図柄プロセスフラグの値が3である場合には、ステップS255で、CPU56は、クリアデータ(本例では0)をセットし、クリアバッファにセットする(ステップS255)。すなわち、確変フラグがセットされているということは、時短状態(高ベース状態)に制御され、可変入賞球装置15が開放状態となる頻度が高められているのであるから、振分装置200の状態にかかわらず第2始動入賞口14に連続して入賞しやすい。そのため、この場合には、ステップS254を実行して加算バッファを1加算することなく、ステップS255のみを実行することでクリアバッファをクリアして、入賞順異常と判定しないように制御している。また、普通図柄プロセスフラグの値が3であり、普通図柄プロセス処理の普通電動役物作動処理が実行されているということは、可変入賞球装置15が開放状態に制御されるのであるから第2始動入賞口14に連続して入賞しやすい。そのため、この場合にも、ステップS254を実行して加算バッファを1加算することなく、ステップS255のみを実行することでクリアバッファをクリアして、入賞順異常と判定しないように制御している。そして、ステップS259に移行する。
なお、図63に示す例に限らず、例えば、ステップS257,S258に相当する処理を入賞順異常報知処理の開始時に実行し、確変フラグがセットされていた場合または普通図柄プロセスフラグの値が3である場合には、そのまま処理を終了し、以降の処理を実行しないように構成してもよい。また、例えば、確変フラグがセットされていた場合または普通図柄プロセスフラグの値が3である場合(すなわちステップS257でY、またはステップS258でYとなった場合)、ステップS255(クリアバッファをクリアする処理)を実行しないようにしてもよい。つまり、確変フラグがセットされていた場合または普通図柄プロセスフラグの値が3である場合には、加算バッファを1加算する処理とクリアバッファをクリアする処理とのいずれも実行しないようにしてもよい。
また、この実施の形態では、確変状態(すなわち、高ベース状態)であるか否かの判定と可変入賞球装置15が開放中であるか否かの判定との両方を実行する場合を示しているが、いずれか一方のみを実行するようにしてもよい。具体的には、ステップS257の判定処理とステップS258の判定処理とのいずれか一方のみを実行するようにしてもよい。
また、第2始動口スイッチ14aがオン状態であることにもとづいて直ちにステップS257以降の処理を実行して第2始動口監視用バッファに格納された値に所定値(本例では1)を加算するのではなく、さらに第2保留記憶数が上限値(本例では4)に達していないことを条件に第2始動口監視用バッファに格納された値に所定値(本例では1)を加算するようにしてもよい(すなわち、有効始動入賞のみをカウントするようにしてもよい)。また、逆に、第2保留記憶数が上限値(本例では4)に達している場合のみ第2始動口監視用バッファに格納された値に所定値(本例では1)を加算するようにしてもよい(すなわち、無効始動入賞のみをカウントするようにしてもよい)。
また、この実施の形態では、第1始動入賞口13への入賞については確変状態(すなわち、高ベース状態)中であるかいなかや可変入賞球装置15が開放中であるか否かにかかわらずカウント(すなわち加算バッファに1加算すること)を継続し、確変状態(すなわち、高ベース状態)中や可変入賞球装置15の開放中の期間も通して第1始動入賞口13への遊技球の連続入賞を検出したことにもとづいて入賞順異常と判定する場合を示したが、確変状態(すなわち、高ベース状態)中や可変入賞球装置15の開放中の期間はカウントを中断するようにしてもよい。そして、確変状態(すなわち、高ベース状態)中や可変入賞球装置15の開放中の期間をまたがって第1始動入賞口13への遊技球の連続入賞を検出したときに入賞順異常と判定するようにしてもよい。具体的には、例えば、第1始動入賞口13に連続して2球入賞した後に確変状態(すなわち、高ベース状態)や可変入賞球装置15が開放状態となった場合に一旦カウントを中断し、その確変状態(すなわち、高ベース状態)や可変入賞球装置15の開放状態を終了した後にさらに第1始動入賞口13に連続して2球入賞した場合に(その確変状態(すなわち、高ベース状態)中や可変入賞球装置15の開放中に第2始動入賞口14への入賞もなく)、合計で5球連続して第1始動入賞口13に入賞したと判定して入賞順異常と判定するようにしてもよい。
また、この実施の形態では、第1始動入賞口13に連続して入賞した場合と第2始動入賞口14に連続して入賞した場合との両方について入賞順異常と判定する場合を示したが、第1始動入賞口13に連続して入賞した場合と第2始動入賞口14に連続して入賞した場合とのいずれか一方の場合についてのみ入賞順異常と判定するように構成してもよい。
また、この実施の形態では、第1始動入賞口13に連続して入賞して入賞順異常となった場合と第2始動入賞口14に連続して入賞して入賞順異常となった場合とで、入賞順異常報知指定コマンドとして共通のコマンドを送信する場合を示したが、第1始動入賞口13に連続して入賞して入賞順異常となった場合と第2始動入賞口14に連続して入賞して入賞順異常となった場合とを区別可能に入賞順異常報知指定コマンドを送信するようにしてもよい。具体的には、第1始動入賞口13に連続して入賞して入賞順異常となった場合には第1入賞順異常報知指定コマンドを送信するようにし、第2始動入賞口14に連続して入賞して入賞順異常となった場合には第2入賞順異常報知指定コマンドを送信するようにしてもよい。
また、この実施の形態では、加算バッファの値と比較する判定値が5である場合を示したが、この実施の形態で示した値にかぎらず、例えば、ステップS259において加算バッファの値が4以上であるかを判定するなど、判定値として他の値を用いてもよい。また、例えば、ステップS259において加算バッファの値が2以上であるか否かを判定するようにして、第1始動入賞口13または第2始動入賞口14に1球でも連続して入賞したら直ちに入賞順異常と判定するようにしてもよい。ただし、この実施の形態では、第1始動入賞口13または第2始動入賞口14に4球連続して入賞したことを条件に入賞順異常と判定することによって、判定基準に多少のマージンをもたせることにより誤判定を防止するようにしている。
また、この実施の形態では、加算バッファの値と判定値(本例では5)とを比較して入賞順異常が発生したか否かを判定しているが、これに限らず、例えば、加算バッファの値とクリアバッファの値とを比較し、その差が所定値(例えば、5)以上であれば入賞順異常と判定するようにしてもよい。
また、この実施の形態では、入賞順異常の判定を遊技制御用マイクロコンピュータ560側で実行する場合を示しているが、演出制御用マイクロコンピュータ100側で実行するようにしてもよい。この場合、例えば、遊技制御用マイクロコンピュータ560は、第1始動入賞口13に新たな始動入賞があったことを示すコマンドや第2始動入賞口14に新たな始動入賞があったことを示すコマンドを送信するようにし、演出制御用マイクロコンピュータ100は、それらのコマンドを受信したことにもとづいて、図63に示す入賞順異常報知処理と同様の処理を行って入賞順異常を判定するようにすればよい。
なお、入賞順異常報知処理は、始動口への入賞時の処理(具体的には特別図柄プロセス処理の第1始動口スイッチ通過処理および第2始動口スイッチ通過処理)において実行される(具体的には図63の入賞順異常報知処理に相当する処理が実行される)ようにしてもよい。
次に、演出制御手段の動作を説明する。図64は、演出制御基板80に搭載されている演出制御手段としての演出制御用マイクロコンピュータ100(具体的には、演出制御用CPU101)が実行するメイン処理を示すフローチャートである。演出制御用CPU101は、電源が投入されると、メイン処理の実行を開始する。メイン処理では、まず、RAM領域のクリアや各種初期値の設定、また演出制御の起動間隔(例えば、4ms)を決めるためのタイマの初期設定等を行うための初期化処理を行う(ステップS701)。その後、演出制御用CPU101は、タイマ割込フラグの監視(ステップS702)を行うループ処理に移行する。タイマ割込が発生すると、演出制御用CPU101は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、演出制御用CPU101は、そのフラグをクリアし(ステップS703)、以下の演出制御処理を実行する。
演出制御処理において、演出制御用CPU101は、まず、受信した演出制御コマンドを解析し、受信した演出制御コマンドに応じたフラグをセットする処理等を行う(コマンド解析処理:ステップS704)。
次いで、演出制御用CPU101は、演出制御プロセス処理を行う(ステップS705)。演出制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(演出制御プロセスフラグ)に対応した処理を選択して演出表示装置9の表示制御を実行する。
次いで、演出制御用CPU101は、第4図柄プロセス処理を行う(ステップS706)。第4図柄プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(第4図柄プロセスフラグ)に対応した処理を選択して演出表示装置9の第4図柄表示領域9c,9dにおいて第4図柄の表示制御を実行する。
次いで、大当り図柄決定用乱数などの乱数を生成するためのカウンタのカウント値を更新する乱数更新処理を実行する(ステップS707)。その後、ステップS702に移行する。
図65は、主基板31の遊技制御用マイクロコンピュータ560から受信した演出制御コマンドを格納するためのコマンド受信バッファの一構成例を示す説明図である。この例では、2バイト構成の演出制御コマンドを6個格納可能なリングバッファ形式のコマンド受信バッファが用いられる。従って、コマンド受信バッファは、受信コマンドバッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。なお、必ずしもリングバッファ形式でなくてもよい。
なお、遊技制御用マイクロコンピュータ560から送信された演出制御コマンドは、演出制御INT信号にもとづく割込処理で受信され、RAMに形成されているバッファ領域に保存されている。コマンド解析処理では、バッファ領域に保存されている演出制御コマンドがどのコマンドであるのか解析する。なお、演出制御INT信号にもとづく割込処理は、4msごとに実行されるタイマ割込処理に優先して実行される。
図66は、コマンド解析処理(ステップS704)の具体例を示すフローチャートである。主基板31から受信された演出制御コマンドは受信コマンドバッファに格納されるが、コマンド解析処理では、演出制御用CPU101は、コマンド受信バッファに格納されているコマンドの内容を確認する。
コマンド解析処理において、演出制御用CPU101は、まず、コマンド受信バッファに受信コマンドが格納されているか否か確認する(ステップS611)。格納されているか否かは、コマンド受信個数カウンタの値と読出ポインタとを比較することによって判定される。両者が一致している場合が、受信コマンドが格納されていない場合である。コマンド受信バッファに受信コマンドが格納されている場合には、演出制御用CPU101は、コマンド受信バッファから受信コマンドを読み出す(ステップS612)。なお、読み出したら読出ポインタの値を+2しておく(ステップS613)。+2するのは2バイト(1コマンド)ずつ読み出すからである。
受信した演出制御コマンドが変動パターンコマンドであれば(ステップS614)、演出制御用CPU101は、受信した変動パターンコマンドを、RAMに形成されている変動パターンコマンド格納領域に格納する(ステップS615)。そして、変動パターンコマンド受信フラグをセットする(ステップS616)。
受信した演出制御コマンドが表示結果指定コマンドであれば(ステップS617)、演出制御用CPU101は、受信した表示結果指定コマンド(表示結果1指定コマンド〜表示結果5指定コマンド)を、RAMに形成されている表示結果指定コマンド格納領域に格納する(ステップS618)。
受信した演出制御コマンドが図柄確定指定コマンドであれば(ステップS619)、演出制御用CPU101は、確定コマンド受信フラグをセットする(ステップS620)。
受信した演出制御コマンドが大当り開始指定コマンドであれば(ステップS621)、演出制御用CPU101は、大当り開始指定コマンド受信フラグをセットする(ステップS622)。
受信した演出制御コマンドが小当り/突然確変大当り開始指定コマンドであれば(ステップS623)、演出制御用CPU101は、小当り/突然確変大当り開始指定コマンド受信フラグをセットする(ステップS624)。
受信した演出制御コマンドが入賞順異常報知指定コマンドであれば(ステップS625)、演出制御用CPU101は、ランプドライバ基板35に対して制御信号(ランプ制御実行データ)を出力することによって、所定の異常報知パターンで枠LED28の点灯制御を行う(ステップS626)。また、演出制御用CPU101は、音声出力基板70に対して制御信号(音番号データ)を出力することによって、所定の異常報知音をスピーカ27から出力させる(ステップS627)。
なお、この実施の形態では、枠LED28を所定の異常報知パターンで点灯させるとともに所定の異常報知音をスピーカ27から出力させることによって入賞順異常報知を行う場合を示しているが、入賞順異常報知の態様は、この実施の形態で示したものにかぎられない。例えば、枠LED28の所定の異常報知パターンでの点灯と所定の異常報知音のスピーカ27からの出力とのいずれか一方のみを行うことにより入賞順異常報知を行ってもよい。また、例えば、演出表示装置9において「入賞順異常です」などの文字列を含む入賞順異常報知画面を表示することにより入賞順異常報知を行ってもよい。
受信した演出制御コマンドがその他のコマンドであれば、演出制御用CPU101は、受信した演出制御コマンドに応じたフラグをセットする(ステップS628)。そして、ステップS611に移行する。
図67は、図64に示されたメイン処理における演出制御プロセス処理(ステップS705)を示すフローチャートである。演出制御プロセス処理では、演出制御用CPU101は、演出制御プロセスフラグの値に応じてステップS800〜S807のうちのいずれかの処理を行う。各処理において、以下のような処理を実行する。なお、演出制御プロセス処理では、演出表示装置9の表示状態が制御され、演出図柄の可変表示が実現されるが、第1特別図柄の変動に同期した演出図柄の可変表示に関する制御も、第2特別図柄の変動に同期した演出図柄の可変表示に関する制御も、一つの演出制御プロセス処理において実行される。なお、第1特別図柄の変動に同期した演出図柄の可変表示と、第2特別図柄の変動に同期した演出図柄の可変表示とを、別の演出制御プロセス処理により実行するように構成してもよい。また、この場合、いずれの演出制御プロセス処理により演出図柄の変動表示が実行されているかによって、いずれの特別図柄の変動表示が実行されているかを判断するようにしてもよい。
変動パターンコマンド受信待ち処理(ステップS800):遊技制御用マイクロコンピュータ560から変動パターンコマンドを受信しているか否か確認する。具体的には、コマンド解析処理でセットされる変動パターンコマンド受信フラグがセットされているか否か確認する。変動パターンコマンドを受信していれば、演出制御プロセスフラグの値を演出図柄変動開始処理(ステップS801)に対応した値に変更する。
演出図柄変動開始処理(ステップS801):演出図柄の変動が開始されるように制御する。そして、演出制御プロセスフラグの値を演出図柄変動中処理(ステップS802)に対応した値に更新する。
演出図柄変動中処理(ステップS802):変動パターンを構成する各変動状態(変動速度)の切替タイミング等を制御するとともに、変動時間の終了を監視する。そして、変動時間が終了したら、演出制御プロセスフラグの値を演出図柄変動停止処理(ステップS803)に対応した値に更新する。
演出図柄変動停止処理(ステップS803):演出図柄の変動を停止し表示結果(停止図柄)を導出表示する制御を行う。そして、演出制御プロセスフラグの値を大当り表示処理(ステップS804)または変動パターンコマンド受信待ち処理(ステップS800)に対応した値に更新する。
大当り表示処理(ステップS804):変動時間の終了後、演出表示装置9に大当りの発生を報知するための画面を表示する制御を行う。そして、演出制御プロセスフラグの値をラウンド中処理(ステップS805)に対応した値に更新する。
ラウンド中処理(ステップS805):ラウンド中の表示制御を行う。そして、ラウンド終了条件が成立したら、最終ラウンドが終了していなければ、演出制御プロセスフラグの値をラウンド後処理(ステップS806)に対応した値に更新する。最終ラウンドが終了していれば、演出制御プロセスフラグの値を大当り終了処理(ステップS807)に対応した値に更新する。
ラウンド後処理(ステップS806):ラウンド間の表示制御を行う。そして、ラウンド開始条件が成立したら、演出制御プロセスフラグの値をラウンド中処理(ステップS805)に対応した値に更新する。
大当り終了演出処理(ステップS807):演出表示装置9において、大当り遊技状態が終了したことを遊技者に報知する表示制御を行う。そして、演出制御プロセスフラグの値を変動パターンコマンド受信待ち処理(ステップS800)に対応した値に更新する。
なお、この実施の形態では、始動入賞口への入賞が発生すると、対応する始動口監視バッファに格納された値に所定値が加算され、加算結果にもとづいて入賞順異常が発生したことを検出するように構成されているが、これに限らず、例えば、始動入賞口への入賞が発生すると、対応する始動口監視バッファに格納された値から所定値が減算され、減算結果にもとづいて入賞順異常が発生したことを検出するように構成してもよい。
図68は、入賞順異常報知処理の変形例を示すフローチャートである。図68に示す入賞順異常報知処理の変形例では、ステップS250,251に代えて、第2始動口監視バッファを減算バッファにセットし(ステップS250b)、第1始動口監視バッファを初期値設置バッファにセットする(ステップS251b)処理が実行される。減算バッファは、セットされた始動口監視用バッファを所定値(本例では1)の減算対象とするために用いられる。また、初期値設定バッファは、セットされた始動口監視用バッファを初期値設定(本例では初期値(5)をセットする)対象とするために用いられる。
また、図68に示す入賞順異常報知処理の変形例では、ステップS254,S255に代えて、減算バッファを1減算し、減算バッファをロードし(ステップS254b)、初期値データ(本例では5)をセットし、初期値設定バッファにストアする(ステップS255b)処理が実行される。すなわち、ステップS254bにおいて、減算バッファにセットされた始動口監視用バッファに格納された値から所定値(本例では1)を減算し、ステップS255bにおいて、初期値設定バッファにセットされた始動口監視用バッファに格納された値を初期値(本例では5)に設定する。このようにすることによって、同じ始動口に連続して入賞が発生した場合には、対応する始動口監視用バッファに格納された値が連続して1減算され、他方の始動口に対応する始動口監視用バッファに格納された値が初期値(本例では5)に設定される。また、前回入賞した始動口とは異なる始動口に入賞した場合には、前回減算対象として所定値(本例では1)が減算された始動口監視用バッファに格納された値が初期値(本例では5)に設定され、前回初期値設定対象として初期値(本例では5)が設置された始動口監視用バッファに格納された値から所定値(本例では1)が減算される。以下、「減算バッファの値」という表現を用いることがあるが、具体的には、減算バッファにセットされた始動口監視用バッファに格納された値のことを示す。また、「減算バッファを1減算する」という表現を用いることがあるが、具体的には、減算バッファにセットされた始動口監視用バッファに格納された値から所定値(本例では1)を減算することである。また、「減算バッファに初期値をセットする」という表現を用いることがあるが、具体的には、減算バッファにセットされた始動口監視用バッファに格納された値を初期値(本例では5)に設定することである。
また、図68に示す入賞順異常報知処理の変形例では、ステップS259,S260に代えて、減算バッファの値が0であるか否かを判定し(ステップS259b)、減算バッファの値が0となっていれば、減算バッファに初期値をセットする(ステップS260b)処理が実行される。なお、減算バッファの値と判定値(本例では0)とを比較して入賞順異常が発生したか否かを判定しているが、これに限らず、例えば、減算バッファの値と初期値設定バッファの値とを比較し、その差が所定値(例えば、5)以上であれば入賞順異常と判定するようにしてもよい。
以上のように処理を実行することによって、始動入賞口への入賞が発生すると、対応する始動口監視バッファに格納された値から所定値が減算され、減算結果にもとづいて入賞順異常が発生したことを検出するように構成することができる。また、図68に示すように構成する場合には、図69に示すメイン処理の変形例のように、S10aに代えて、減算バッファに初期値を設定する処理(ステップS10b)を実行する。このようにすることで、電源投入後に減算バッファの値が初期化されることで、誤って入賞順異常を検出してしまうことを防止することができる。
また、この実施の形態において、予告演出の対象となる変動表示が開始されるよりも前に実行される先読み予告演出を実行するように構成してもよい。先読み予告演出を実行するように構成する場合、例えば、図70に示すように、遊技制御用マイクロコンピュータ560は、第1始動入賞口13や第2始動入賞口14への始動入賞が発生したタイミングで第1始動口スイッチ通過処理(ステップS312参照)や第2始動口スイッチ通過処理(ステップS314参照)にて始動入賞時の判定を行い、その判定結果を示す入賞時判定結果コマンドを送信する制御を行う(図70のステップS2061A,S2061B)。この場合、例えば、入賞時判定結果指定コマンドとして、大当りとなるか否かや、小当りとなるか否か、大当りの種別の判定結果を示す図柄指定コマンド、および変動パターン種別判定用乱数の値がいずれの判定値の範囲となるかの判定結果(変動パターン種別の判定結果)を示す変動カテゴリコマンドを送信する。従って、この場合、新たな始動入賞が発生したタイミングで1タイマ割り込み内で始動入賞時コマンドとして図柄指定コマンド、変動カテゴリコマンド、および保留記憶数加算指定コマンド(第1保留記憶数加算指定コマンド、第2保留記憶数加算指定コマンド)が送信されることになる。
また、図71に示すように、コマンド解析処理において、入賞時判定結果指定コマンドを受信すると(ステップS629)、演出制御用マイクロコンピュータ100は、入賞時判定結果指定コマンドに応じた入賞時判定結果を入賞時判定結果記憶バッファに保存し(ステップS630)、入賞時判定結果記憶バッファに保存された入賞時判定結果にもとづいて先読み演出決定処理を行う(ステップS631)。その後、演出制御用マイクロコンピュータ100は、先読み演出決定処理の決定結果にしたがって、先読み演出を実行する(例えば、演出図柄変動中処理(ステップS802)において実行される)。先読み演出は、例えば、予告対象となる当該変動表示よりも前に開始される変動表示中に、演出表示装置9の背景表示を特殊背景に切り替えてを表示することや、カウントダウン表示、当該変動表示に対応する保留表示の表示態様を変化させることによって実現される。また、ステップS631では、演出制御用マイクロコンピュータ100は、例えば、図72に示すように、高ベース状態であるか否かと、合算保留記憶数とに応じて、先読み演出の演出態様を決定する。具体的には、図72に示すように、高ベース状態であるときには、当該変動表示よりも前に開始される1回から最高4回の変動表示に亘る先読み演出が実行され、高ベース状態でないときには、当該変動表示よりも前に開始される1回から最高8回の変動表示に亘る先読み演出が実行される。このようにすることで、高ベース状態ではないとき(すなわち通常状態であるとき)には、振分装置によって第1始動入賞口13と第2始動入賞口14とに交互に入賞するため、最大8回(第1保留記憶数と第2保留記憶数とを足した上限)で完結する連続演出(例えば、特殊背景に切り替える)を実行可能とし、高ベース状態であるときには、振分装置を介さずに可変入賞球装置15によって第2始動入賞口14のみに入賞しやすいため、最大4回(第2保留記憶数の上限)で完結する連続演出(例えば、カウントダウン表示)を実行可能とすることができる。したがって、遊技状態に応じた先読み演出を実行することができる。
また、先読み演出の演出態様は、当該変動表示の表示結果が大当りか否かに応じて、決定されるようにしてもよい。例えば、当該変動表示に対応する保留表示が8個目の保留表示である場合(すなわち、先に実行される変動表示が8回ある場合)、当該変動表示の表示結果が大当りであるか否かに応じて、始動入賞後に直ちに先読み演出を開始する(つまり、8回の変動表示に亘って実行される)か、始動入賞後に数回の変動表示が行われた後に先読み演出を開始する(例えば、4回の変動表示に亘って実行される)かを決定するようにしてもよい。このように、当該変動表示の表示結果が大当りであるか否かに応じて、先読み演出の演出態様(何回の変動表示に亘って実行されるか)を決定することによって、例えば、多くの変動表示に亘って先読み演出が実行されるほど大当りの期待度が高くなるようにすることができ、遊技興趣を高めることができる。
以上に説明したように、この実施の形態によれば、遊技球を振り分けるための振分装置200が遊技領域7に設けられている。振分装置200は、遊技領域7に進入した遊技球が当該振分装置200に流入可能な流入口201と、流入口から流入した遊技球が通過可能な複数の通路(本例では、左側通路203、右側通路204)と、流入口から流入した遊技球を複数の通路のうちのいずれかに振り分ける振分手段(本例では、振分部材202)とを含む。また、振分手段は、流入口201から遊技球が流入したことにもとづいて、複数の通路のうちの第1通路(本例では、左側通路203)に遊技球を振り分けやすい第1状態(本例では、図2(a),(d)に示すように振分部材202が右側に倒れた状態)と第2通路(本例では、右側通路204)に遊技球を振り分けやすい第2状態(本例では、図2(b),(c)に示すように振分部材202が左側に倒れた状態)とに所定の順序に従って切り替わる(本例では、遊技球の自重によって交互に切り替わる)。また、第1始動領域(本例では、第1始動入賞口13)は、第1通路に振り分けられた遊技球が通過しやすい態様で設けられている(本例では、図2に示すように、左側流出口205の下方に第1始動入賞口13が設けられている)とともに、第2始動領域(本例では、第2始動入賞口14)は、第2通路に振り分けられた遊技球が通過しやすい態様で設けられている(本例では、図2に示すように、右側流出口206の下方に第2始動入賞口14が設けられている)。また、遊技制御用マイクロコンピュータ560は、遊技媒体が第1始動領域または第2始動領域を通過したことにもとづいて遊技媒体が通過した始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ)を加算対象として当該記憶領域に格納された値に所定値(本例では1)を加算し、加算結果が所定条件(例えば、加算対象とされた記憶領域に格納された値が5以上である、または第1始動口監視用バッファに格納された値と第2始動口監視用バッファに格納された値との差(加算バッファの値とクリアバッファの値との差)が所定値(例えば5)以上である)を満たしたことにもとづいて異常と判定する。そのため、振分装置200の異常判定を行うことができるので、振分装置200の異常により遊技を正常に行えなくなることを防止することができる。
また、この実施の形態によれば、所定事象が発生(本例では、IAT506aからのIAT信号の入力、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号の入力)したことにもとづいて第1リセット(本例では、システムリセット)を発生させるか第2リセット(本例では、ユーザリセット)を発生させるかを設定可能である(図16に示すリセット設定(KRES)のビット7参照)。そして、第1リセットの発生後にはセキュリティチェックを実行する一方、第2リセットの発生後にはセキュリティチェックを実行しない。そのため、遊技機や遊技店の状況などに応じて所定事象が発生したときに行うリセットの種類を最適なものに設定できるので、遊技制御用マイクロコンピュータ560に関するセキュリティ性を向上させることができる。
なお、この実施の形態では、所定事象の発生として、IAT506aからのIAT信号を入力した場合と、ウオッチドッグタイマ(WDT)506bからのタイムアウト信号を入力した場合とを示しているが、この実施の形態で示したものにかぎらず、遊技制御用マイクロコンピュータ560をリセットすべき何らかのエラーなどの状況が発生したことにもとづいて、所定事象が発生したとしてリセットするものであってもよい。
また、この実施の形態によれば、所定事象の発生には、ウオッチドッグタイマ(WDT)506bのタイムアウトが含まれ、ウオッチドッグタイマ(WDT)506bを起動させるか否かを設定可能である(本例では、図14に示すリセット設定(KRES)のビット3−0に”0000”を設定する)。そして、ウオッチドッグタイマ(WDT)506bを起動させないと設定した場合であっても、所定事象が発生したことにもとづいて第1リセットを発生させるか第2リセットを発生させるかを設定可能である。具体的には、図14に示すリセット設定(KRES)において、ビット3−0に”0000”を設定していても、ビット7の設定を行うことによってリセットの種類を設定可能である。そのため、ウオッチドッグタイマ(WDT)506bの設定にかかわらず、所定事象が発生したことにもとづいて発生させるリセットの種類の設定を共通化することができる。
また、この実施の形態によれば、所定事象の発生には、指定された領域以外の領域に格納されたプログラムを実行する指定領域外実行(本例では、指定エリア外走行禁止(IAT)が含まれる。そして、遊技制御用マイクロコンピュータ560は、所定の処理として所定時間(本例では4ms)毎に発生するタイマ割込に応じて実行されるタイマ割込処理(図51に示すタイマ割込処理)の実行中に指定領域外実行が発生(本例では、IAT回路506aからIAT信号を入力)した場合に、RAM55(バックアップRAM)の記憶内容を初期化する(本例では、リセットの後、図50に示すステップS10が実行される)。そのため、意図しないプログラムが実行された場合のセキュリティ性を向上させることができる。
また、この実施の形態の変形例によれば、遊技制御用マイクロコンピュータ560は、遊技媒体が第1始動領域または第2始動領域を通過したことにもとづいて遊技媒体が通過した始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ)を減算対象として当該記憶領域に格納された値から所定値(本例では1)を減算し、減算結果が所定条件(例えば、減算対象とされた記憶領域に格納された値が0である、または第1始動口監視用バッファに格納された値と第2始動口監視用バッファに格納された値との差(減算バッファの値と初期値設定バッファの値との差)が所定値(例えば5)以上である)を満たしたことにもとづいて異常と判定する。そのため、振分装置200の異常判定を行うことができるので、振分装置200の異常により遊技を正常に行えなくなることを防止することができる。
また、この実施の形態によれば、RAM55(バックアップRAM)の記憶内容を初期化する(本例では、リセットの後、図50に示すステップS10が実行される)とともに、ステップS10aにおいて加算バッファおよびクリアバッファがクリアされる(またはステップS10bにおいて減算バッファに初期値(本例では5)が設定される)。そのため、停電復旧時にも、振分装置200の異常判定を正しく行うことができるので、振分装置200の異常により遊技を正常に行えなくなることを防止することができる。
また、この実施の形態によれば、遊技制御用マイクロコンピュータ560は、第1始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ)を加算対象とし、第2始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ(第1始動領域に対応する記憶領域とは異なる))をクリア対象として仮設定し、遊技媒体が第2始動領域を通過したことにもとづいて、仮設定された加算対象とクリア対象とを入れ替え、加算対象とされた記憶領域に格納された値に所定値(本例では1)を加算し、クリア対象とされた記憶領域に格納された値をクリアする。そして、記憶領域に格納された値にもとづいて(例えば、加算対象とされた記憶領域に格納された値が5以上であるとき、または第1始動口監視用バッファに格納された値と第2始動口監視用バッファに格納された値との差(加算バッファの値とクリアバッファの値との差)が所定値(例えば5)以上であるとき)異常と判定する。そのため、振分装置200の異常判定を行うことができるので、振分装置200の異常により遊技を正常に行えなくなることを防止することができる。
また、この実施の形態の変形例によれば、また、遊技制御用マイクロコンピュータ560は、第1始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ)を減算対象とし、第2始動領域に対応する記憶領域(本例では、第1始動口監視用バッファまたは第2始動口監視用バッファ(第1始動領域に対応する記憶領域とは異なる))を初期値設定対象として仮設定し、遊技媒体が第2始動領域を通過したことにもとづいて、仮設定された減算対象と初期値設定対象とを入れ替え、減算対象とされた記憶領域に格納された値から所定値(本例では1)を減算し、初期値設定対象とされた記憶領域に格納された値を初期値(本例では5)に設定する。そして、記憶領域に格納された値にもとづいて(例えば、減算対象とされた記憶領域に格納された値が0であるとき、または第1始動口監視用バッファに格納された値と第2始動口監視用バッファに格納された値との差(減算バッファの値と初期値設定バッファの値との差)が所定値(例えば5)以上であるとき)異常と判定する。そのため、振分装置200の異常判定を行うことができるので、振分装置200の異常により遊技を正常に行えなくなることを防止することができる。
なお、上記の実施の形態においては、変動時間およびリーチ演出の種類や擬似連の有無等の変動態様を示す変動パターンを演出制御用マイクロコンピュータ100に通知するために、変動を開始するときに1つの変動パターンコマンドを送信する例を示したが、2つ乃至それ以上のコマンドにより変動パターンを演出制御用マイクロコンピュータ100に通知するようにしてもよい。具体的には、2つのコマンドにより通知する場合、遊技制御用マイクロコンピュータ560は、1つ目のコマンドでは擬似連の有無、滑り演出の有無など、リーチとなる以前(リーチとならない場合には所謂第2停止の前)の変動時間や変動態様を示すコマンドを送信し、2つ目のコマンドではリーチの種類や再抽選演出の有無など、リーチとなった以降(リーチとならない場合には所謂第2停止の後)の変動時間や変動態様を示すコマンドを送信するようにしてもよい。この場合、演出制御用マイクロコンピュータ100は2つのコマンドの組合せから導かれる変動時間にもとづいて変動表示における演出制御を行うようにすればよい。なお、遊技制御用マイクロコンピュータ560の方では2つのコマンドのそれぞれにより変動時間を通知し、それぞれのタイミングで実行される具体的な変動態様については演出制御用マイクロコンピュータ100の方で選択を行うようにしてもよい。2つのコマンドを送る場合、同一のタイマ割込内で2つのコマンドを送信する様にしてもよく、1つ目のコマンドを送信した後、所定期間が経過してから(例えば次のタイマ割込において)2つ目のコマンドを送信するようにしてもよい。なお、それぞれのコマンドで示される変動態様はこの例に限定されるわけではなく、送信する順序についても適宜変更可能である。このように2つ乃至それ以上のコマンドにより変動パターンを通知するようにすることで、変動パターンコマンドとして記憶しておかなければならないデータ量を削減することができる。
また、上記の実施の形態では、演出装置を制御する回路が搭載された基板として、演出制御基板80、音声出力基板70およびランプドライバ基板35が設けられているが、演出装置を制御する回路を1つの基板に搭載してもよい。さらに、演出表示装置9等を制御する回路が搭載された第1の演出制御基板(表示制御基板)と、その他の演出装置(ランプ、LED、スピーカ27など)を制御する回路が搭載された第2の演出制御基板との2つの基板を設けるようにしてもよい。
また、上記の実施の形態では、遊技制御用マイクロコンピュータ560は、演出制御用マイクロコンピュータ100に対して直接コマンドを送信していたが、遊技制御用マイクロコンピュータ560が他の基板(例えば、図5に示す音声出力基板70やランプドライバ基板35など、または音声出力基板70に搭載されている回路による機能とランプドライバ基板35に搭載されている回路による機能とを備えた音/ランプ基板)に演出制御コマンドを送信し、他の基板を経由して演出制御基板80における演出制御用マイクロコンピュータ100に送信されるようにしてもよい。その場合、他の基板においてコマンドが単に通過するようにしてもよいし、音声出力基板70、ランプドライバ基板35、音/ランプ基板にマイクロコンピュータ等の制御手段を搭載し、制御手段がコマンドを受信したことに応じて音声制御やランプ制御に関わる制御を実行し、さらに、受信したコマンドを、そのまま、または例えば簡略化したコマンドに変更して、演出表示装置9を制御する演出制御用マイクロコンピュータ100に送信するようにしてもよい。その場合でも、演出制御用マイクロコンピュータ100は、上記の実施の形態における遊技制御用マイクロコンピュータ560から直接受信した演出制御コマンドに応じて表示制御を行うのと同様に、音声出力基板70、ランプドライバ基板35または音/ランプ基板から受信したコマンドに応じて表示制御を行うことができる。
また、上記の実施の形態では、遊技機としてパチンコ機を例にしたが、本発明を、メダルが投入されて所定の賭け数が設定され、遊技者による操作レバーの操作に応じて複数種類の図柄を回転させ、遊技者によるストップボタンの操作に応じて図柄を停止させたときに停止図柄の組合せが特定の図柄の組み合わせになると、所定数のメダルが遊技者に払い出されるスロット機に適用することも可能である。
また、上記の実施の形態では、遊技機として遊技媒体を使用するものを例にしたが本発明による遊技機は、所定数の景品としての遊技媒体を払い出す遊技機に限定されず、遊技球等の遊技媒体を封入し景品の付与条件が成立した場合に得点を付与する封入式の遊技機に適用することもできる。
なお、上記の実施の形態において、「割合が異なる」とは、A:B=70%:30%やA:B=40%:60%のような関係で割合が異なるものだけにかぎらず、A:B=100%:0%のような関係で割合が異なるもの(すなわち、一方が100%の割り振りで他方が0%の割り振りとなるようなもの)も含む概念である。
前述したパチンコ遊技機1については、パチンコ遊技機1に関する情報(データ)を情報出力回路64からパチンコ遊技機1の外部に出力する処理(図51のS29)を行なうことを説明した。このようなS29によりパチンコ遊技機1の外部に出力する情報としては、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号が含まれてもよい。
パチンコ遊技機1においては、たとえば、第1始動入賞口13、第2始動入賞口14、第3始動入賞口、および大入賞口(特別可変入賞球装置20)のような複数種類の入賞口が設けられている。そして、これら入賞口への遊技玉の入賞が、第1始動口スイッチ13a、第2始動口スイッチ14a、カウントスイッチ23、および、入賞口スイッチのような入賞検出スイッチにより検出され、検出信号が遊技制御用マイクロコンピュータ560に入力される。
遊技制御用マイクロコンピュータ560では、入賞検出スイッチから入力される検出信号に基づいて、所定期間中における各入賞口に入賞した遊技玉の個数(入賞個数)を計数して記憶する処理を行なうことが可能であり、このような処理をすることにより、所定期間中における遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報を記憶する。そして、遊技制御用マイクロコンピュータ560では、このような入賞情報に基づいて、所定期間が経過するごとに、各所定期間中における遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号を情報出力回路64からパチンコ遊技機1の外部に出力する処理を行なう。
遊技制御用マイクロコンピュータ560において計数記憶し、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号により特定する入賞個数としては、たとえば、10分ごと等の所定の経過時間ごとの入賞個数に関する情報(所定の経過時間ごとに出力する)、各1回の大当り遊技状態が発生するまでに要する期間ごとの入賞個数に関する情報(大当り遊技状態が発生するごとに出力する)、各日の電源投入時からの入賞個数に関する情報(所定の経過時間ごとに出力する)、および、遊技者ごとの入賞個数に関する情報(遊技用カード情報等の遊技者特定情報により遊技者が特定可能な場合に、各遊技者により遊技終了が選択されたときに出力する)のいずれの情報であってもよい。
なお、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号としては、遊技玉がいずれかの入賞口に入賞するごとに出力される、入賞口と入賞個数(1個)とを特定可能な入賞情報信号であってもよい。
また、入賞情報信号をパチンコ遊技機1の外部に出力するその他の例としては、主基板31の一部の出力端子に、パチンコ遊技機1の外部に設けられた試験装置で動作試験をするための接続部品を接続し、現在の遊技状態での最新の入賞情報を示す入賞情報信号が、遊技制御用マイクロコンピュータ560から当該接続部を介して外部に出力されるようにしてもよい。
このように、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号がパチンコ遊技機1の外部に出力されるので、パチンコ遊技機1の外部において、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報を認識することができるようになる。
[第2の実施の形態]
第2の実施の形態として、第1の実施の形態で説明したパチンコ遊技機1のような遊技制御を遊技制御の一例とするパチンコ遊技機を封入循環式のパチンコ機(パチンコ遊技機)として構成し、当該パチンコ機とカードユニットとを管理するシステムの例を説明する。なお、以下の第2の実施の形態として説明する遊技機、カードユニット、およびそれらを管理するシステムは、第1の実施の形態として説明した遊技機およびカードユニットのいずれに適用してもよい。
以下で説明する実施の形態により示される本発明は、遊技者により遊技が行なわれる遊技機と、遊技機に接続され受付けた記録媒体により特定される遊技者所有の遊技価値を用いて遊技機での遊技を可能にする遊技用装置とを備える遊技用システム、遊技者により遊技が行なわれる遊技機に接続され受付けた記録媒体により特定される遊技者所有の遊技価値を用いて遊技機での遊技を可能にする遊技用装置、および、遊技者により遊技が行なわれる遊技機に接続され受付けた記録媒体により特定される遊技者所有の遊技価値を用いて遊技機での遊技を可能にする遊技用装置を制御する遊技制御装置に関する。
従来、相互認証用の認証用情報として、CU通信制御部のSIDをCU通信制御部のROMにチップ製造段階で記憶させ、メイン制御部のSIDをCU製造時にCU通信制御部に記憶させ、メイン制御部には、認証用情報としてCU通信制御部のSIDを鍵管理サーバからダウンロードして記憶させることが知られている(特開2012−100763号公報)。
また、一つの遊技機に搭載された制御用チップに対する不正行為を他の制御用チップを介して監視するように構成された遊技機制御用基板が知られている(特開2004−89701号公報)。
しかしながら、相互認証する際に送受信される情報のうち、セキュリティ関係上、特に重要な情報の記憶方式については記載されておらず、セキュリティ性が十分考慮されているとはいえない。
本発明は、係る実情に鑑み考え出されたものであり、その目的は、セキュリティ関係上特に重要な情報を適切に記憶することで、セキュリティ性をより向上させることが可能な遊技用システム、遊技用装置および遊技制御装置を提供することである。
(1) 本発明は、遊技者により遊技が行なわれる遊技機(封入循環式パチンコ機(P台2F)、メダル不要のスロットマシン(S台2SF))と、前記遊技機に接続され受付けた記録媒体により特定される遊技者所有の遊技価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F、呼出しランプ装置など)とを備える遊技用システムであって、
前記遊技用装置は、
所定情報を送信する情報送信手段(図124:通信制御IC325aF)を含み、
前記遊技機は、
ユーザプログラムを記憶可能な記憶手段(図124:払出制御記憶部171cF)と、
前記記憶手段から前記ユーザプログラムを読み出し、読み出した前記ユーザプログラムを実行可能な演算処理手段(図124:払出制御回路171aFは、払出制御記憶部171cFに記憶されたユーザプログラムを読み出して実行する)と、
前記所定情報を受信する通信手段(図124:通信制御回路171bF)とを含み、
前記演算処理手段は、前記通信手段で受信した前記所定情報を前記ユーザプログラムに通知せずに、該演算処理手段が有する格納領域に格納する(払出制御回路171aFは、所定情報をユーザプログラムに通知せずに払出制御回路171aF内のレジスタに格納する)、遊技用システム。
上記の構成によれば、所定情報が演算処理手段の格納領域にのみ記憶され、ユーザプログラムに通知されず記憶手段に記憶されることがない。そのため、記憶手段にアクセスされることによる所定情報の流出を防ぐことができることからセキュリティを向上させることができる。
(2) 上記(1)において、
前記演算処理手段は、前記格納領域に格納されている所定情報を用いて、通信不能な状態から復帰可能か否かを判定する(払出制御回路171aFは、「店舗コード」を用いて、通信不能な状態から復帰できるか否かを判定する)。
上記の構成によれば、流出を防ぐことが可能な所定情報を用いて通信不能な状態から復帰可能か否かを判定することができるためセキュリティを向上させることができる。
(3) 上記(2)において、
前記演算処理手段は、前記格納領域に格納されている所定情報を予め定められた条件が成立したときに更新または消去する(たとえば、払出制御回路171aFは、P台2Fがカード挿入応答のレスポンスをCU3Fに送信する時に更新する。払出制御回路171aFは、P台2Fに設けたRAMをクリアする指示がなされた時に消去する。)。
上記の構成によれば、格納領域に格納されている所定情報は、予め定められた条件が成立したときのみ更新または消去される。そのため、所定情報が無断で更新されたり消去されたりすることがない。また、所定情報の記憶から消去までの処理を演算処理手段内のみで行われるため、外部への流出も防ぐことができる。
(4) 上記(1)〜(3)のいずれかにおいて、
前記遊技用装置は、
入賞の発生により所定の遊技点を付与する前記遊技機からの計数要求に基づき、前記遊技点を持点として計数する計数処理手段(図87:CU3Fは、計数要求=ONの情報を含む状態情報応答を受信すると、要求されている計数玉数を持玉数に加算する。)をさらに含み、
前記遊技機は、
前記計数処理手段が実行した計数処理の計数履歴情報を記憶するための履歴情報記憶手段(図88:P台2Fは、計数要求ON状態から計数要求OFF状態までの間にP台2F側から計数要求玉数としてCU3F側に払出した遊技玉数の履歴を計数履歴として記憶する。)をさらに含む。
上記の構成によれば、遊技機側に計数履歴情報が記憶されるため、リカバリ時に遊技用装置側でその計数履歴情報を参照することで、過去の計数履歴を遊技用装置に反映させることができる。また、遊技機から遊技用装置に計数玉を戻すときに遊技用装置が故障している場合には計数玉が損失してしまうことから、遊技機側に計数履歴を記憶しておくことで保全対策にもなる。
(5) 上記(4)において、
前記通信手段は、通信不能な状態から復帰するときに、前記遊技用装置からの計数履歴要求に基づいて、前記履歴情報記憶手段に記憶する過去所定回数分の計数処理の前記計数履歴情報を送信し(通信制御回路171bFは、過去2回分の計数履歴(計数履歴1および計数履歴2)をCU3Fに送信)、
前記遊技用装置は、
前記過去所定回数分の計数処理の計数履歴情報を受信する履歴情報受信手段(CU3Fの通信制御IC325aF)をさらに含む。
上記の構成によれば、過去所定回数分まで遡って計数履歴を参照することができる。これにより、リカバリ処理の精度を向上させることができる。
(6) 上記(4)または(5)において、
前記情報送信手段が送信する所定情報は、店舗情報(店舗コード)と、前記遊技用装置に含まれる遊技制御装置を特定可能な装置特定情報(SC基板ID)とを含む。
上記の構成によれば、遊技用装置の別の店舗への移動や、店舗内で遊技用装置と遊技機との組合せの変更を考慮することができる。これにより、異なる店舗間で計数履歴データを引き継ぐなどの不具合を防止することができる。
(7) 上記(4)〜(6)のいずれかにおいて、
前記情報送信手段は、前記計数要求の受信を示す計数要求受信情報(計数応答ON状態の状態情報応答)と、前記計数要求を受信した時刻情報(計数受領時刻)とを前記遊技機に送信し、
前記履歴情報記憶手段は、前記時刻情報を前記計数要求に対応する前記計数履歴情報と関連付けて記憶する(計数受領時刻を計数履歴1に記憶する)。
上記の構成によれば、計数受領時刻を計数履歴に関連付けて記憶するため、どの計数履歴がどの計数要求に対応しているのかを把握することができる。
(8) 本発明は、遊技者により遊技が行なわれる遊技機(封入循環式パチンコ機(P台2F)、メダル不要のスロットマシン(S台2SF))に接続され、受付けた記録媒体により特定される遊技者所有の遊技価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F、呼出しランプ装置など)であって、
所定情報を送信する情報送信手段(図124:通信制御IC325aF)を備え、
前記情報送信手段は、前記遊技機の演算処理手段(図124:払出制御回路171aF)が実行するユーザプログラムには通知されず該演算処理手段が有する格納領域(払出制御回路171aF内のレジスタ)に格納される前記所定情報を、前記遊技機に対して送信する、遊技用装置。
上記の構成によれば、所定情報が演算処理手段の格納領域にのみ記憶され、ユーザプログラムに通知されず記憶手段に記憶されることがない。そのため、記憶手段にアクセスされることによる所定情報の流出を防ぐことができることからセキュリティを向上させることができる。
(9) 本発明は、遊技者により遊技が行なわれる遊技機(封入循環式パチンコ機(P台2F)、メダル不要のスロットマシン(S台2SF))に接続され、受付けた記録媒体により特定される遊技者所有の遊技価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F、呼出しランプ装置など)を制御する遊技制御装置(図77:CU制御部323F)であって、
所定情報を送信する情報送信手段(図124:通信制御IC325aF)を備え、
前記情報送信手段は、前記遊技機の演算処理手段(図124:払出制御回路171aF)が実行するユーザプログラムには通知されず該演算処理手段が有する格納領域(払出制御回路171aF内のレジスタ)に格納される前記所定情報を、前記遊技機に対して送信する、遊技制御装置。
上記の構成によれば、所定情報が演算処理手段の格納領域にのみ記憶され、ユーザプログラムに通知されず記憶手段に記憶されることがない。そのため、記憶手段にアクセスされることによる所定情報の流出を防ぐことができることからセキュリティを向上させることができる。
(10−1) 互いに通信する第1制御手段(主制御部161F)および第2制御手段(払出制御部171F)を備えた遊技機(P台2F)であって、
前記第1制御手段および前記第2制御手段の少なくとも一方は、
ユーザプログラムを記憶可能なユーザプログラム領域(主制御記憶部161cF、払出制御記憶部171cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路161bF,171bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図125に示す送信データバッファ613F、図126に示すデータ受信レジスタ713Fなど)と、
前記情報記憶部に記憶された前記所定情報を所定の態様(たとえば、暗号化するなどの態様)で送信する情報送信手段(暗号通信制御部600F,700F)とを有し、
前記通信制御回路は、通信不能な状態から復帰するとき(通信制御回路161bF,171bFのリカバリ機能)に、前記情報記憶部に記憶された前記所定情報を送信する復帰処理を実行し、前記復帰処理の終了を条件(図128のSF292:リカバリ通信完了レジスタ618Fおよびリカバリ要求/完了レジスタ718Fにリカバリ完了を示すフラグが書込まれていること)に、前記ユーザプログラムの実行による前記所定情報の生成を再開(図128のSF293:ユーザプログラムの処理を開始させる信号を送信、または停止手段により停止していたユーザプログラムの処理を解除してユーザプログラムの処理を再開)する。
上記の構成によれば、通信不能な状態から復帰するときに、通信不能によって未送信となった所定情報をユーザプログラムの実行により生成し直して送信するのではなく、通信制御回路がその回路内の情報記憶部に記憶されている所定情報を送信するため、通信不能な状態から復帰するためにユーザプログラムを実行する必要がなく、その分の制御負担を軽減できる。
(10−2) 上記(10−1)において、
前記第1制御手段(主制御部161F)および前記第2制御手段(払出制御部171F)の双方は、前記ユーザプログラム領域と前記通信制御回路(通信制御回路161bF,171bF)とを含む。
上記構成によれば、第1制御手段および第2制御手段の双方は、ユーザプログラム領域と通信制御回路とを含むので、第1制御手段および前記第2制御手段の双方において処理を適切に再開することができる。
(10−3) 上記(10−1)または(10−2)において、
前記第1制御手段(主制御部161F)および前記第2制御手段(払出制御部171F)の双方は、前記ユーザプログラム領域と前記通信制御回路(通信制御回路161bF,171bF)とを含み、
前記通信制御回路は、前記所定情報を送信する際に、当該所定情報の到達確認をするために所定の更新パターンに従って更新される到達確認情報を併せて送信(図131:払出制御部171Fに対して前回送信した通番(主制御通番=n+1)を含む電源投入通知のコマンドを送信)し、
前記第1制御手段および前記第2制御手段の一方の前記通信制御回路は、通信不能な状態から復帰するときに、前回送信した前記到達確認情報を再送(図131:電源投入通知のコマンドに対する電源投入受信のレスポンスを送信)し、
他方の前記通信制御回路を含む前記第1制御手段または前記第2制御手段は、通信不能な状態から復帰するときに受信した前記到達確認情報と、通信不能となる前に受信した前記到達確認情報とが所定の関係にない場合(図131:主制御通番=n+1と払出制御通番=nとが一致しない場合)に、前記復帰処理によって前記一方の通信制御回路が送信した前記所定情報に基づいた情報の更新処理(図131:リカバリ処理を実行する)を実行する。
上記構成によれば、通信不能な状態から復帰するときに受信した到達確認情報と、通信不能となる前に受信した到達確認情報とが所定の関係にない場合に、復帰処理によって一方の通信制御回路が送信した所定情報に基づいた情報の更新処理を実行するので、第1制御手段と第2制御手段との通信の負担を軽減することができる。
(10−4) 上記(10−1)〜(10−3)において、
前記情報記憶部は、不揮発性記憶領域(たとえば、図125に示す送信データバッファ613F、図126に示すデータ受信レジスタ713F)と揮発性記憶領域(たとえば、図125に示す送信データバッファ613F以外のレジスタ、図126に示すデータ受信レジスタ713F以外のレジスタ)とを有する。
上記構成によれば、情報記憶部は、不揮発性記憶領域と揮発性記憶領域とを有するので、通信を再開する際のリカバリ処理において必要となるデータ量を抑えることができる。
(10−5) 上記(10−1)〜(10−4)において、
前記通信制御回路には、通信相手との認証が切れてから継続して前記所定情報を前記情報記憶部に書き込み可能な有効期間を設定可能(図126:主制御部送信バッファ書込有効時間設定レジスタ719cFにより、主制御部161Fと払出制御部171Fとの間の認証が切れた後に、主制御部161Fの送信データバッファ613Fのデータをデータ受信レジスタ713Fに書込むことができる有効時間を設定する)である。
上記構成によれば、通信制御回路には、通信相手との認証が切れてから継続して所定情報を情報記憶部に書き込み可能な有効期間を設定可能であるので、通信相手との認証が切れてからも必要となる情報を確実に記憶することができる。たとえば、電源断や断線などにより通信相手との認証が切れた場合において浮遊玉(遊技領域27Fの釘等の間に引っ掛かって落下していない玉)が存在しても、継続して所定情報を情報記憶部に書き込み可能な有効期間を設定することで、当該浮遊玉が入賞したことの情報を確実に記憶して保護することができる。
(10−6) 第1制御手段(主制御部161F)を備えた遊技盤(遊技盤26F)であって、
前記第1制御手段は、
遊技枠(前枠5F)に含まれる第2制御手段(払出制御部171F)と互いに通信することが可能で、
ユーザプログラムを記憶可能なユーザプログラム領域(主制御記憶部161cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路161bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図125に示す送信データバッファ613Fなど)と、
前記情報記憶部に記憶された前記所定情報を所定の態様(たとえば、暗号化するなどの態様)で送信する情報送信手段(暗号通信制御部600F)とを有し、
前記通信制御回路は、通信不能な状態から復帰するとき(通信制御回路161bFのリカバリ機能)に、前記情報記憶部に記憶された前記所定情報を送信する復帰処理を実行し、前記復帰処理の終了を条件(図128のSF292:リカバリ通信完了レジスタ618Fにリカバリ完了を示すフラグが書込まれていること)に、前記ユーザプログラムの実行による前記所定情報の生成を再開(図128のSF293:ユーザプログラムの処理を開始させる信号を送信、または停止手段により停止していたユーザプログラムの処理を解除してユーザプログラムの処理を再開)する。
上記の構成によれば、通信不能な状態から復帰するときに、通信不能によって未送信となった所定情報をユーザプログラムの実行により生成し直して送信するのではなく、通信制御回路がその回路内の情報記憶部に記憶されている所定情報を送信するため、通信不能な状態から復帰するためにユーザプログラムを実行する必要がなく、その分の制御負担を軽減できる。
(10−7) 遊技盤(遊技盤26F)に含まれる第1制御手段(主制御部161F)と互いに通信する第2制御手段(払出制御部171F)を備えた遊技枠(前枠5F)であって、
前記第2制御手段は、
ユーザプログラムを記憶可能なユーザプログラム領域(払出制御記憶部171cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路171bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図126に示すデータ受信レジスタ713Fなど)と、
前記情報記憶部に記憶された前記所定情報を所定の態様(たとえば、暗号化するなどの態様)で送信する情報送信手段(暗号通信制御部700F)とを有し、
前記通信制御回路は、通信不能な状態から復帰するとき(通信制御回路171bFのリカバリ機能)に、前記情報記憶部に記憶された前記所定情報を送信する復帰処理を実行し、前記復帰処理の終了を条件(図128のSF292:リカバリ要求/完了レジスタ718Fにリカバリ完了を示すフラグが書込まれていること)に、前記ユーザプログラムの実行による前記所定情報の生成を再開(図128のSF293:ユーザプログラムの処理を開始させる信号を送信、または停止手段により停止していたユーザプログラムの処理を解除してユーザプログラムの処理を再開)する。
上記の構成によれば、通信不能な状態から復帰するときに、通信不能によって未送信となった所定情報をユーザプログラムの実行により生成し直して送信するのではなく、通信制御回路がその回路内の情報記憶部に記憶されている所定情報を送信するため、通信不能な状態から復帰するためにユーザプログラムを実行する必要がなく、その分の制御負担を軽減できる。
(11−1) 互いに通信する第1制御手段(主制御部161F)および第2制御手段(払出制御部171F)を備えた遊技機(P台2F)であって、
前記第1制御手段および前記第2制御手段の少なくとも一方は、
ユーザプログラムを記憶可能なユーザプログラム領域(主制御記憶部161cF、払出制御記憶部171cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路161bF,171bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図125に示す送信データバッファ613F、図126に示すデータ受信レジスタ713Fなど)と、
前記情報記憶部に記憶された情報を暗号化する暗号化手段(通信制御回路161bF,171bFの暗号通信機能)と、
前記暗号化手段により暗号化された暗号化情報を送信する暗号化情報送信手段(通信制御回路161bF,171bFの暗号通信機能)とを有し、
前記第1制御手段および前記第2制御手段の少なくとも一方は、他方が送信した前記暗号化情報を復号する復号手段(たとえば、通信制御回路161bFで暗号化した情報を通信制御回路171bFで復号する)を含む。
上記構成によれば、第1制御手段および前記第2制御手段の少なくとも一方は、通信制御回路の暗号化手段で情報記憶部に記憶された情報を暗号化し、他方の復号手段で送信した暗号化情報を復号するので、第1制御手段と第2制御手段との間で行なう暗号化通信の処理を軽減するとともに、暗号化した情報の内容が漏えいしてセキュリティが低下するのを防止することができる。
(11−2) 上記(11−1)において、
前記第1制御手段(主制御部161F)および前記第2制御手段(払出制御部171F)の双方は、前記ユーザプログラム領域と前記通信制御回路(通信制御回路161bF,171bF)とを含む。
上記構成によれば、第1制御手段および第2制御手段の双方は、ユーザプログラム領域と通信制御回路とを含むので、第1制御手段および前記第2制御手段の双方において暗号化通信の処理を軽減するとともに、暗号化した情報の内容が漏えいしてセキュリティが低下するのを防止することができる。
(11−3) 上記(11−1)または(11−2)において、
前記通信制御回路は、電源投入時に暗号通信に用いる暗号鍵および復号鍵を生成する処理(たとえば、図128に示す電源投入時に行なわれる認証シーケンスよって暗号鍵および復号鍵が生成される)と、当該処理によって生成された暗号鍵および復号鍵を用いて暗号通信する処理とを実行する(図128に示す認証シーケンス後、生成された暗号鍵および復号鍵を用いて暗号通信が可能)。
上記構成によれば、通信制御回路が、電源投入時に暗号通信に用いる暗号鍵および復号鍵を生成する処理と、当該処理によって生成された暗号鍵および復号鍵を用いて暗号通信する処理とを実行するので、第1制御手段と第2制御手段との間で行なう暗号化通信の処理を軽減するとともに、第1制御手段および前記第2制御手段の少なくとも一方において処理を適切に再開することができる。
(11−4) 上記(11−1)〜(11−3)において、
前記通信制御回路には、通信相手との認証が切れてから継続して前記所定情報を前記情報記憶部に書き込み可能な有効期間を設定可能(図126:主制御部送信バッファ書込有効時間設定レジスタ719cFにより、主制御部161Fと払出制御部171Fとの間の認証が切れた後に、主制御部161Fの送信データバッファ613Fのデータをデータ受信レジスタ713Fに書込むことができる有効時間を設定する)である。
上記構成によれば、通信制御回路には、通信相手との認証が切れてから継続して所定情報を情報記憶部に書き込み可能な有効期間を設定可能であるので、通信相手との認証が切れてからも必要となる情報を確実に記憶することができる。たとえば、電源断や断線などにより通信相手との認証が切れた場合において浮遊玉(遊技領域27Fの釘等の間に引っ掛かって落下していない玉)が存在しても、継続して所定情報を情報記憶部に書き込み可能な有効期間を設定することで、当該浮遊玉が入賞したことの情報を確実に記憶して保護することができる。
(11−5) 第1制御手段(主制御部161F)を備えた遊技盤(遊技盤26F)であって、
前記第1制御手段は、
遊技枠(前枠5F)に含まれる第2制御手段(払出制御部171F)と互いに通信することが可能で、
ユーザプログラムを記憶可能なユーザプログラム領域(主制御記憶部161cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路161bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図125に示す送信データバッファ613Fなど)と、
前記情報記憶部に記憶された情報を暗号化する暗号化手段(通信制御回路161bFの暗号通信機能)と、
前記暗号化手段により暗号化された暗号化情報を、前記暗号化情報を復号する復号手段(たとえば、通信制御回路161bFで暗号化した情報を通信制御回路171bFで復号する)を含む前記第2制御手段に送信する暗号化情報送信手段(通信制御回路161bFの暗号通信機能)とを有する。
上記の構成によれば、通信不能な状態から復帰するときに、通信不能によって未送信となった所定情報をユーザプログラムの実行により生成し直して送信するのではなく、通信制御回路がその回路内の情報記憶部に記憶されている所定情報を送信するため、通信不能な状態から復帰するためにユーザプログラムを実行する必要がなく、その分の制御負担を軽減できる。
(11−6) 遊技盤(遊技盤26F)に含まれる第1制御手段(主制御部161F)と互いに通信する第2制御手段(払出制御部171F)を備えた遊技枠(前枠5F)であって、
前記第2制御手段は、
ユーザプログラムを記憶可能なユーザプログラム領域(払出制御記憶部171cF)と、
前記ユーザプログラムの実行により生成された所定情報を送信するための通信制御回路(通信制御回路171bF)とを含み、
前記通信制御回路は、
前記所定情報を記憶する情報記憶部(たとえば、図126に示すデータ受信レジスタ713Fなど)と、
前記情報記憶部に記憶された情報を暗号化する暗号化手段(通信制御回路171bFの暗号通信機能)と、
前記暗号化手段により暗号化された暗号化情報を、前記暗号化情報を復号する復号手段(たとえば、通信制御回路171bFで暗号化した情報を通信制御回路161bFで復号する)を含む前記第1制御手段に送信する暗号化情報送信手段(通信制御回路171bFの暗号通信機能)とを有する。
上記の構成によれば、通信不能な状態から復帰するときに、通信不能によって未送信となった所定情報をユーザプログラムの実行により生成し直して送信するのではなく、通信制御回路がその回路内の情報記憶部に記憶されている所定情報を送信するため、通信不能な状態から復帰するためにユーザプログラムを実行する必要がなく、その分の制御負担を軽減できる。
(12−1) 本発明は、入賞の発生により所定の遊技点を付与する遊技機(P台2F)と、前記遊技機と通信可能に接続され、遊技者所有の有価価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F)とを備える遊技用システムであって、
前記遊技機は、
前記遊技点を記憶する遊技点記憶手段(図78:遊技玉数カウンタ)と、
前記遊技点を所定の持点に計数するための操作(たとえば、図86に示す「計数」ボタン押下)に基づいて、前記遊技点記憶手段に記憶する前記遊技点を前記持点に計数する計数要求を前記遊技用装置へ送信する計数要求送信手段(図89:P台2Fは、計数開始時の計数玉の払出要求がある場合、計数要求=ONの情報を含む状態情報応答のコマンドをCU3Fに送信する。)とを含み、
前記遊技用装置は、
前記計数要求送信手段からの前記計数要求に基づき、前記遊技点を前記持点に計数する計数処理手段(図89:CU3Fは、計数要求=ONの情報を含む状態情報応答を受信すると、要求されている計数玉数を持玉数に加算する。)と、
遊技者所有の有価価値を特定可能な記録媒体を受付ける記録媒体受付手段(図73:カードを受け付けるカード挿入/排出口309F)と、
前記計数処理手段で計数した前記持点を前記記録媒体受付手段で受付けた前記記録媒体で特定可能に処理する記録媒体処理手段(図89:CU3Fは、カード挿入/排出口309Fに挿入してあったカードに持玉数を記憶させる。)と、
前記記録媒体処理手段で処理された記録媒体を返却する記録媒体返却手段(図89:CU3Fは、持玉数を記憶させたカードを返却する。)と、
前記記録媒体返却手段により返却された前記記録媒体の取り外し待ち状態であることを前記遊技機に通知する取り外し待ち状態通知手段(図89:CU3Fは、カード抜き取り可能状態となった場合、カード返却準備状態OFFおよびカード抜き取り待ち中ONの情報をP台2Fに通知する。)とを含む。
上記構成によれば、記録媒体返却手段により返却された記録媒体が取り外し待ち状態であることを、取り外し待ち状態通知手段が遊技機に通知するので、遊技機が遊技者に対して記録媒体の取り外しを促す報知を行なうことが可能となり、記録媒体の取り外し忘れを防止することができる。また、記録媒体の取り外し忘れによる盗難防止のための注意喚起を行なうことができる。
(12−2) 本発明は、入賞の発生により所定の遊技点を付与する遊技機(P台2F)と通信可能に接続され、遊技者所有の有価価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F)であって、
前記遊技機からの計数要求に基づき、前記遊技点を持点に計数する計数処理手段(図89:CU3Fは、計数要求=ONの情報を含む状態情報応答を受信すると、要求されている計数玉数を持玉数に加算する。)と、
遊技者所有の有価価値を特定可能な記録媒体を受付ける記録媒体受付手段(図73:カードを受け付けるカード挿入/排出口309F)と、
前記計数処理手段で計数した前記持点を前記記録媒体受付手段で受付けた前記記録媒体で特定可能に処理する記録媒体処理手段(図89:CU3Fは、カード挿入/排出口309Fに挿入してあったカードに持玉数を記憶させる。)と、
前記記録媒体処理手段で処理された記録媒体を返却する記録媒体返却手段(図89:CU3Fは、持玉数を記憶させたカードを返却する。)と、
前記記録媒体返却手段により返却された前記記録媒体の取り外し待ち状態であることを前記遊技機に通知する取り外し待ち状態通知手段(図89:CU3Fは、カード抜き取り可能状態となった場合、カード返却準備状態OFFおよびカード抜き取り待ち中ONの情報をP台2Fに通知する。)とを備える。
上記構成によれば、記録媒体返却手段により返却された記録媒体が取り外し待ち状態であることを、取り外し待ち状態通知手段が遊技機に通知するので、遊技機が遊技者に対して記録媒体の取り外しを促す報知を行なうことが可能となり、記録媒体の取り外し忘れを防止することができる。また、記録媒体の取り外し忘れによる盗難防止のための注意喚起を行なうことができる。
(12−3) 本発明は、遊技者所有の有価価値を用いて遊技を可能にする遊技用装置(CU3F)と通信可能に接続され、入賞の発生により所定の遊技点を付与する遊技機(P台2F)であって、
前記遊技点を記憶する遊技点記憶手段(図78:遊技玉数カウンタ)と、
前記遊技点を所定の持点に計数するための操作(たとえば、図86に示す「計数」ボタン押下)に基づいて、前記遊技点記憶手段に記憶する前記遊技点を前記持点に計数する計数要求を前記遊技用装置へ送信する計数要求送信手段(図89:P台2Fは、計数開始時の計数玉の払出要求がある場合、計数要求=ONの情報を含む状態情報応答のコマンドをCU3Fに送信する。)とを備え、
前記計数要求送信手段からの前記計数要求に基づき計数した前記持点を、前記遊技用装置で受付けた記録媒体で特定可能に処理し、前記記録媒体を返却する場合に、前記記録媒体の取り外し待ち状態であることの通知を前記遊技用装置から受付可能(図89:P台2Fは、カード抜き取り可能状態となった場合、カード返却準備状態OFFおよびカード抜き取り待ち中ONの情報の通知をCU3Fから受ける。)である。
上記構成によれば、記録媒体返却手段により返却された記録媒体が取り外し待ち状態であることの通知を、前記遊技用装置から受けるので、遊技機が遊技者に対して記録媒体の取り外しを促す報知を行なうことが可能となり、記録媒体の取り外し忘れを防止することができる。また、記録媒体の取り外し忘れによる盗難防止のための注意喚起を行なうことができる。
(12−4) 上記(12−1)〜(12−3)において、
前記遊技用装置は、前記記録媒体の取り外し待ち状態であることを報知する報知手段(たとえば、図73に示す表示器312F)を含む。
上記構成によれば、遊技用装置でも記録媒体の取り外し待ち状態であることを報知することが可能となるので、記録媒体の取り外し忘れを防止することができる。
(12−5) 上記(12−1)〜(12−3)において、
前記遊技機は、前記遊技用装置からの通知に基づき、前記記録媒体の取り外し待ち状態であることを報知する表示手段(たとえば、図73に示す可変表示装置278F)を含む。
上記構成によれば、遊技機で記録媒体の取り外し待ち状態であることを視覚的に報知することが可能となるので、記録媒体の取り外し忘れを防止することができる。
(12−6) 上記(12−1)または(12−2)において、
前記取り外し待ち状態通知手段は、前記遊技用装置または前記遊技機に接続する装置(たとえば、ホールコンピュータ、P台上の呼び出しランプ)に対して、前記記録媒体の取り外し待ち状態であることを通知する。
上記構成によれば、遊技機や遊技用装置以外に対して記録媒体の取り外し待ち状態であることを通知することで、記録媒体の取り外し忘れを防止することができる。
(12−7) 本発明は、入賞の発生により所定の遊技点を付与する遊技機(P台2F)と、前記遊技機と通信可能に接続され、遊技者所有の有価価値を用いて前記遊技機での遊技を可能にする遊技用装置(CU3F)とを備える遊技用システムであって、
前記遊技用装置は、
遊技者所有の有価価値を特定可能な記録媒体を受付ける記録媒体受付手段(図73:カードを受け付けるカード挿入/排出口309F)と、
前記記録媒体受付手段で前記記録媒体を受付けた場合に、前記遊技用装置が設置されている遊技場を特定可能な遊技場特定情報を前記遊技機に通知する遊技場特定情報通知手段(図81:カード挿入/排出口309Fでカードを受付けると、CU3Fは、セキュリティ基板325Fで付加された「店舗コード」を含むカード挿入通知コマンドを、P台2Fに対して送信する。)とを含み、
前記遊技機は、
前記遊技場特定情報通知手段により通知された前記遊技場特定情報を記憶する遊技場特定情報記憶手段(図81:P台2Fは、挿入通知コマンドに含まれる「店舗コード」を記憶する。)と、
前記遊技機と前記遊技用装置とが通信できない通信不能状態から回復した後、通信復旧した場合に、前記遊技場特定情報通知手段により新たに通知された前記遊技場特定情報と、前記遊技場特定情報記憶手段に記憶した前記遊技場特定情報と比較する遊技場特定情報比較手段(図90:P台2Fは、CU3Fから「店舗コード」を含むリカバリ要求が送信されてくると、当該「店舗コード」と記憶してある「店舗コード」とが一致するか否かを判定する。)と、
前記遊技場特定情報比較手段により、前記遊技場特定情報が不一致と判定された場合に遊技の継続を禁止する遊技禁止手段(P台2Fは、CU3Fからの「店舗コード」と、記憶してある「店舗コード」とが不一致の場合、遊技の継続を禁止する。)とを含む。
上記構成によれば、新たに通知された遊技場特定情報と、遊技場特定情報記憶手段に記憶した遊技場特定情報とが不一致の場合、遊技の継続を禁止するので、遊技媒体に計数玉を記憶させた状態で店舗を移動させる不正を防止することができる。
(12−8) 上記(12−7)において、
前記遊技用装置は、
前記記録媒体受付手段で前記記録媒体を受付けたとき、および前記通信復旧したときに、前記遊技用装置に含まれている遊技制御装置(たとえば、図76に示すセキュリティ基板325F)を特定可能な装置特定情報(SC基板ID)を前記遊技機に通知する装置特定情報通知手段(図81:カード挿入/排出口309Fでカードを受付けると、CU3Fは、セキュリティ基板325Fで付加された「SC基板ID」を含むカード挿入通知コマンドを、P台2Fに対して送信する。)をさらに含み、
前記遊技機は、
前記装置特定情報通知手段により通知された前記装置特定情報を記憶する装置特定情報記憶手段(図81:P台2Fは、挿入通知コマンドに含まれる「SC基板ID」を記憶する。)と、
前記通信復旧した場合に、前記装置特定情報通知手段により新たに通知された前記装置特定情報と、前記装置特定情報記憶手段に記憶した前記装置特定情報と比較する装置特定情報比較手段(P台2Fは、CU3Fからの「SC基板ID」と、記憶してある「SC基板ID」とを比較する。)とをさらに含み、
前記遊技禁止手段は、前記装置特定情報比較手段により、前記装置特定情報が不一致と判定された場合に遊技の継続を禁止する(不一致の場合、遊技の継続を禁止する。)。
上記構成によれば、新たに通知された装置特定情報と、装置特定情報記憶手段に記憶した装置特定情報とが不一致の場合、遊技の継続を禁止するので、遊技媒体に計数玉を記憶させた状態で遊技機を移動させる不正を防止することができる。
(12−9) 上記(12−7)または上記(12−8)において、
前記遊技機は、
遊技に使用する遊技媒体に付加されている前記遊技場特定情報を読取る遊技場特定情報読取手段(たとえば、P台2Fの回収玉通過経路にセンサが設けてあり、当該センサが遊技玉に設けてある識別情報(表面の刻印など)を読取る。)をさらに含み、
前記遊技場特定情報比較手段は、前記遊技場特定情報読取手段で読取った前記遊技媒体に付加されている前記遊技場特定情報と、前記遊技場特定情報記憶手段に記憶した前記遊技場特定情報と比較する(読取った識別情報により、自店舗の遊技玉の識別情報と一致するか否かを判定して、不一致の場合、状態情報応答の「不正検知状態3」のBit0を、“1”にする。)。
上記構成によれば、遊技場特定情報読取手段で読取った遊技媒体に付加されている遊技場特定情報と、遊技場特定情報記憶手段に記憶した遊技場特定情報とが不一致であれば、遊技媒体に他店舗の遊技玉が混入していることを報知することが可能となる。
以下、図面を参照して第2の実施の形態(以下、単に“実施の形態”という)を説明する。
<パチンコ遊技機の構成>
まず、図73を参照して、本実施の形態に係るパチンコ遊技機の構成を説明する。遊技場(ホール)内に複数配置されている各遊技島(図示略)には、遊技機の一例の封入循環式パチンコ遊技機(以下、遊技機、パチンコ機またはP台と略称することもある)2Fが併設されている。なお、P台2Fの所定側の側方位置には、該P台2Fに対して遊技用装置の一例のカードユニット(以下CUと略称することもある)3Fが1対1に対応設置されている。なお、本実施の形態に係る遊技用装置としてカードユニットを例に以下説明するが、これに限られず、P台2Fと接続して大当りや異常の報知、入賞回数などの遊技情報の収集などを行なう呼出しランプ装置などであってもよい。
P台2Fは、内部に遊技媒体の一例のパチンコ玉を封入しており、遊技者が打球操作ハンドル25Fを操作することにより、発射モータ18F(図76参照)を駆動させて封入玉を1発ずつ遊技盤26F前面の遊技領域27Fに打込んで遊技ができるように構成されている。具体的には、打球操作ハンドル25Fの周囲にタッチセンサが設けられており、遊技者が打球操作ハンドル25Fを操作している状態でその遊技者の手がタッチセンサに触れ、その遊技者の手の接触をタッチセンサで検知して発射モータ18Fが駆動される。この状態で、遊技者による打球操作ハンドル25Fの回動操作量に応じて打球発射勢いが調整されて玉が遊技領域27F内に発射される。
パチンコ玉の発射強度(以下、単に発射強度Tともいう)は、打球操作ハンドル25Fの回動操作量(以下、単にハンドル操作量ともいう)に応じて調整可能であり、ハンドル操作量を大きくするにしたがって発射強度Tが大きくなる。したがって、遊技者は、ハンドル操作量を調節することによって、自らが狙う領域をパチンコ玉が通過するように発射強度Tを調整することができる。
図73に示すP台2Fは、いわゆる第1種のパチンコ遊技機であって、遊技領域27Fの中央に可変表示装置(特別図柄とも言う)278Fが設けられている。また、遊技領域27Fには、打込まれたパチンコ玉が入賞可能な複数種類の入賞口が設けられている。図73に示す遊技領域27Fには、1つの大入賞口(可変入賞球装置)271Fと、3つの普通入賞口272F,273F,274Fと、3つの始動入賞口275F,276F,277Fとが示されている。特に、始動入賞口276Fは、遊技者にとって有利な第1の状態(たとえば開成状態)と遊技者にとって不利な第2の状態(たとえば閉成状態)とに変化可能な電動チューリップで構成されている。
可変表示装置278Fは、複数種類の識別情報(図柄)を可変表示可能な可変表示部を備えており、各始動入賞口275F,276F,277Fに入賞した始動入賞玉の検出信号に基づいてそれらの複数種類の識別情報の可変表示を開始させる。可変表示装置の表示結果が特定の識別情報の組合せ(たとえばぞろ目)になると、大当り状態となり、大入賞口271Fが開放する。
また、可変表示装置278Fの表示結果が大当り図柄の組合せ(ぞろ目)のうちの予め定められた特別の識別情報の組合せ(たとえば777等の確変図柄の組合せ)となることにより、確変大当り状態が発生し、それに伴う大当り状態の終了後大当りの発生確率が向上した確率変動状態(確変状態)が発生する。
遊技領域27F内に打込まれたパチンコ玉はいずれかの入賞口に入賞するかあるいは入賞することなくアウト口154Fに回収される。いずれかの入賞口に入賞したパチンコ玉およびアウト口154Fに回収されたパチンコ玉は再度P台2F内の回収経路を通って打球発射位置にまで還元される。そして、遊技者が打球操作ハンドル25Fを操作することにより再びその打球発射位置のパチンコ玉が遊技領域27F内に打込まれる。
P台2Fは、CU3Fを側方位置に設置することでCU3Fから伸びる表示器54FをP台2Fの前面に設けた接続面54aFに嵌合させる。そのため、P台2Fにおける遊技領域27Fの下方位置には、表示器54Fが設けられている。表示器54Fは、液晶表示装置で構成されており、持点やカード残額、あるいは可変表示装置278Fの表示と連動した様々な演出画像を遊技者に表示する。また、表示器54Fは、裏面に設けた接続端子(図示せず)をP台2Fの接続面54aFに設けた接続端子54bFに接続することでP台2Fに嵌合させている。このように、CU3Fの表示器54FをP台2Fの接続面54aFに嵌合させる構成であれば、CU3FとP台2Fとをより強く連結することができ、不正を防止することができる。さらに、表示器54Fとの連結係止を、ガラス扉6Fまたは打球操作ハンドル25Fが設けられた下扉を開かないと解除することができないようにすることで、不正をさらに防止することができる。なお、表示器54Fは、図73に示すようにCU3Fと一体に形成されP台2Fの接続面54aFに嵌合させる構成だけに限定されず、CU3Fから独立して形成されP台2Fの前面に取付けられる構成でもよい。
また、P台2Fの接続面54aFの上方位置に遊技玉数を表示するための遊技玉数表示器が設けられている。遊技玉数表示器29Fは、7セグメント式のLEDディスプレイで構成されており、後述の払出制御部171Fによって制御される。この遊技玉数表示器29Fにより、後述する遊技玉数や発生したエラーのエラー番号等が表示される。なお、遊技玉数表示器29Fは、7セグメント式のLEDディスプレイに限定されず、液晶表示器や有機EL表示器、その他の表示器で構成してもよい。
さらに、P台2Fにおける遊技玉数表示器29Fの左方位置には、遊技玉から持玉への計数処理をするための計数ボタン28Fが設けられている。本実施の形態では、計数ボタン28Fを押下し続けた時間に応じて計数動作が繰返し実行される。なお、押下継続時間に関わらず、1度押下すると、所定数(たとえば100玉)だけ遊技玉から持玉への計数が行なわれるようにしてもよく、あるいは、計数ボタン28Fを1度押下した場合には、その押下時間にかかわらず(長押しか否かにかかわらず)、現在遊技者が所有している遊技玉のすべてが計数されるようにしてもよい。また、計数速度は、カード返却操作を行なう場合にさらに向上し、スムーズなカード返却処理を実現している。
このように、計数ボタン28FをP台2F側に設けているため、計数ボタン28FをCU3F側に設ける場合に比較して、P台2Fに正対して座っている遊技者の操作性を向上できる。また、P台2Fは、遊技領域27Fの右上位置および左上位置に、可変表示装置278Fで表示される演出にあわせて再生する音楽データを出力するためのスピーカ270Fが設けてある。なお、スピーカの位置および個数は、図73に示す構成に限定されず、必要に応じて位置および個数を変更してもよい。
本実施の形態に係るP台2Fは、遊技盤26Fとそれ以外の前枠(遊技枠)5Fとに分けることができる。特に、遊技盤26Fは、各社が開発するパチンコ遊技機の機種毎に異なるものである一方、前枠5Fは、機種に関わらず共通の共通枠とされている。このため、遊技店は新台入れ替えの際には遊技盤26Fのみの交換で事足りる。
このように、P台2Fは、前述のパチンコ遊技機1のような遊技制御を行なう遊技機を封入循環式パチンコ機として構成したものであり、基本的な遊技制御および演出制御は、前述のパチンコ遊技機1と同様の制御(たとえば、保留記憶情報に基づく可変表示制御、保留記憶情報に基づく大当り遊技制御、および、保留記憶情報に基づく確変制御等の制御)が行なわれる。
<カードユニットの構成>
次に、引続き図73を参照して、本実施の形態に係るCU3Fの構成を説明する。このCU3Fは、会員登録をしていない一般の遊技者に対して発行される遊技用記録媒体であるプリペイド機能を備えるビジターカード(一般カードとも言う)や、該遊技場に会員登録した会員遊技者に対して発行される遊技用記録媒体である会員カードを受付ける。ビジターカードや会員カードはICカードで構成されている。
それらのカードを受付けたCU3Fは、カードの記録情報により特定される遊技者所有の遊技価値(たとえばカード残額、持玉数、あるいは貯玉数等)を“遊技玉のデータ”に変換する機能を有する。P台2Fでは、遊技玉のデータによって特定される玉数相当の弾球遊技が可能とされる。つまり、“遊技玉のデータ”とは、発射可能な玉の発射残数を示すデータである。以下の説明では、“遊技玉のデータ”を貯玉や持玉と同様に、単に“遊技玉”と称する。
CU3Fの前面側には、紙幣を挿入するための紙幣挿入口302F、会員カードやビジターカードを挿入するためのカード挿入/排出口309Fなどが設けられている。このカード挿入/排出口309Fに挿入された会員カードやビジターカードがカードリーダライタ(図示省略)に受付けられ、そのカードに記録されている情報が読取られる。
CU3Fの前面側には、表示器312Fと、会員カードを受付けた場合において、該会員カードに記録された会員カードID(単に、カードID、C-IDとも言う)ならびに会員カードIDにより特定される貯玉数を用いた再プレイ遊技を実施するための再プレイボタン319Fとが設けられている。
表示器312Fは、挿入された遊技用記録媒体(カード)に記録されているプリペイド残額(カード残額または単に残額とも言う)を表示するものであるが、遊技玉数やその他の各種情報を表示可能であるとともに、表面が透明タッチパネルで構成されており、表示器312Fの表示部に表示された各種表示項目を指でタッチすることにより各種操作が入力可能となるように構成されている。
再プレイボタン319Fを操作した場合に、挿入されたカードに遊技者が獲得した持玉数が記録されているときにはその持玉数の一部を引落として遊技玉に変換し、変換した遊技玉に基づいてP台2Fによる遊技を行なうことが可能となる。一方、挿入されたカードが会員カードであり持玉数が記録されておらずかつ貯玉がホール用管理コンピュータ等に記録されている場合には、その貯玉の一部が引落とされて遊技玉に変換され、P台2Fによる遊技が可能となる。つまり、挿入されたカードに対応付けて貯玉と持玉との双方が記憶されている場合には、持玉が優先的に引落とされる。なお、再プレイボタン319Fとは別に、持玉を引落とすための専用の持玉払出ボタンを設け、再プレイボタン319Fは貯玉引落とし専用のボタンとしてもよい。
ここで、「貯玉」とは、前日以前に獲得した玉でホールに預けている玉であり、貯玉払出により遊技玉となる。また、貯玉は、遊技場に預入れられた遊技媒体であり、一般的に当該遊技場に設置されたホール用管理コンピュータやその他の管理コンピュータにより管理される。
「持玉」とは、当日獲得した玉であり、持玉払出により遊技玉となる。また、持玉数は、遊技者が遊技機により遊技を行なった結果遊技者の所有となった遊技玉数をカードに記録したものであって、未だに遊技場に預入れられていない玉数のことである。一般的には、遊技場において当日遊技者が獲得した玉数を「持玉」と言い、前日以前に遊技者が獲得した玉数であって遊技場に預入れられた玉数を「貯玉」と言う。
「遊技玉」とは、遊技機で発射可能な玉である。遊技玉数のデータは、既に説明したとおり、プリペイドカードの残額、持玉、あるいは貯玉を引落とすことと引き換えにして生成される。
なお、持玉数を遊技場に設定された持玉数管理用の管理装置で管理してもよい。要するに、「貯玉」と「持玉」との違いは、遊技場に預入れるための貯玉操作が行なわれて遊技場に預入れられた玉数であるか、あるいは、未だに遊技場に預入れられていない段階の玉数であるかの点である。
本実施形態では、貯玉データは会員カードに直接記録させずホール用管理コンピュータ等の遊技場に設置されたサーバに会員カード番号と対応付けて記憶させ、会員カード番号に基づいて対応する貯玉を検索できるように構成されている。一方、持玉は、カードに直接記録している。しかし、それに限定されるものではなく、両者ともにホールサーバ801Fにカード番号と対応付けて記憶させてもよい。ビジターカードの場合も、持玉は、ビジターカードに直接記録している。しかし、それに限定されるものではなく、持玉をホールサーバ801Fにカード番号と対応させて記憶させてもよい。このホールサーバ801Fにカード番号と対応させて記憶させる際に、ホールサーバ801Fに記憶させた時刻を特定できるデータをカード(会員カード、ビジターカード)に書込んで排出してもよい。また、プリペイド残額についてはカード(会員カード、ビジターカード)に直接書込んで排出する。
なお、持玉を、カード(会員カード、ビジターカード)、またはホールサーバに記憶させるタイミングは、たとえば、計数ボタン28Fが操作されて計数処理が行なわれる度にリアルタイムに記憶させる、一定周期ごとに記憶させる、またはカードを返却するときに一括して記憶させるなどのタイミングとすることが考えられる。
また、遊技者が遊技を終えてCU3Fからカードを返却したときには、CU3Fに記憶していた持玉が一旦貯玉としてホールサーバ801Fに記憶されるようにし、その遊技者がカードの返却を受けた日と同じ日に再び同じまたは別のCU3Fにカードを挿入したときには、一旦貯玉として記憶された当日分の持玉のみが再びそのCU3Fに記憶され、その持玉の範囲で遊技玉を加算し、遊技できるようにしてもよい。
紙幣挿入口302Fに挿入された紙幣は、貨幣識別器(図示省略)により取込まれてその真贋や紙幣種別の識別がなされる。
CU3Fの前面側には、さらに、IR(Infrared)感光ユニット(IR受光ユニットとも言う)320Fと、玉貸ボタン(貸出ボタンとも言う)321Fと、カード返却ボタン322Fとが設けられている。IR感光ユニット320Fは、遊技場の係員が所持するリモコン(図示略)から赤外線信号を受信して電子信号に変換して出力するIR感光ユニット320Fである。玉貸ボタン321Fは、挿入されたカードに記録されている残額を引落としてP台2Fによる遊技に用いるための操作(遊技玉への変換操作)を行なうボタンである。カード返却ボタン322Fは、遊技者が遊技を終了するときに操作され、挿入されているカードに遊技終了時の確定した遊技玉数(カード挿入時の持玉数−遊技玉への変換数+計数操作によって計数された持玉数)を記憶させて排出するための操作ボタンである。
次に、図74を参照して、P台2Fは、額縁状の外枠4Fに対して、前枠(以下、セルとも言う)5Fとガラス扉6Fとがその左側縁を揺動中心として開閉可能に設けられている。
前枠5Fにおける揺動中心とは反対側の端縁付近(遊端側)には、上下1対の係合突起6aF、6bFが設けられている。この係合突起6aF、6bFは、図示しないバネによって下方向に押圧されている。一方、外枠4Fの係合突起6aF、6bFに対向する位置に、係合受け片7aF、7bFが設けられている。開放状態の前枠5Fを外枠4Fに押付けることにより係合突起6aF、6bFが係合受け片7aF、7bFを乗越え、乗越えた状態でバネの付勢力により係合突起6aF、6bFが下方に移動し、ロック状態となる。
そして、遊技場の係員が図73に示した鍵穴10Fに鍵を挿入して解錠操作(たとえば時計回り回転)することにより、バネの付勢力に抗して上下1対の係合突起6aF、6bFが上方に押上げられ、その結果係合受け片7aF、7bFに対する係合突起6aF、6bFの係合が解除されてロック解除状態となり、前枠5Fが開放される。
さらに、前枠5Fにはガラス扉6F用の係合突起8Fも設けられており、その係合突起8Fに対向するガラス扉6F部分には、係合穴9Fが設けられている。係合突起8Fは、図示しないバネによって下方に押圧されており、開放状態のガラス扉6Fを前枠5Fに押付けることにより係合穴9Fの下縁部分によって係合突起8Fが押上げられて乗越えることにより、バネの付勢力により係合突起8Fが押下げられ、係合突起8Fと係合穴9Fとが係合されてロック状態となる。この状態で、遊技場の係員が図73に示した鍵穴10Fに鍵を挿入して解錠操作(たとえば反時計回り回転)することにより、バネの付勢力に抗して係合突起8Fが引上げられ、係合突起8Fと係合穴9Fとの係合が解除されてロック解除状態となり、ガラス扉6Fが開放される。
前枠5Fの下方部分における外枠4Fと接触する箇所に前枠開放検出スイッチ13Fが設けられており、前枠5Fが開放されたことが検出される。また、前枠5Fの上方部分におけるガラス扉6Fとの接触部分にガラス扉開放検出スイッチ12Fが設けられており、ガラス扉6Fが開放されたことがこのガラス扉開放検出スイッチ12Fにより検出される。
ガラス扉開放検出スイッチ12Fおよび前枠開放検出スイッチ13Fの開放回数は、図示しない計数カウンタにより計数される。計数カウンタは、CPU,ROM,RAM等が搭載され、P台2Fの電源供給が途切れたときでもバックアップ電源により動作可能で、夜間等の電源OFF時でもガラス扉6Fや前枠5Fの開放検出回数を計数してその計数値を払出制御部171Fへ送信することができる。ここで、バックアップ電源は、たとえば、P台2F内に設けられたキャパシタや蓄電池である。
遊技盤26Fの裏面(ガラス扉6Fと対向する面とは反対側の面)に、主制御基板16Fが設けられている。外枠4Fの裏面は閉じられているため、まず前枠5Fを開放して前枠5Fから遊技盤26Fを取外すことで、主制御基板16Fが遊技盤26Fから着脱可能な状態になる。つまり、遊技盤26Fより主制御基板16Fを取外す、または主制御基板16Fに設けた半導体チップを交換する作業を行なうためには、前枠5Fを開放する必要があるため前枠開放検出スイッチ13Fで当該作業を必ず検出することができる。よって、遊技盤26Fより主制御基板16Fを不正に取外す、または主制御基板16Fに設けた半導体チップを不正に交換すれば、必ず前枠開放検出スイッチ13Fで検出することができる。
さらに、前枠5Fの裏面に、払出制御基板17Fが設けられている。払出制御基板17Fも、まず前枠5Fを開放してから、前枠5Fの裏面より取外す必要がある。よって、前枠5Fの裏面より払出制御基板17Fを不正に取外す、または払出制御基板17Fに設けた半導体チップを不正に交換すれば、必ず前枠開放検出スイッチ13Fで検出することができる。
次に、遊技盤26Fを前枠5Fに設置する構成について説明する。図75は、遊技盤26Fが前枠5Fに取付けられる前と取付けられた後の様子を示す図である。図75に示すように前枠5Fの裏面には、取付機構34aF、34bFがそれぞれヒンジ35aF、35bFを中心に開閉自在に設けられている。取付機構34aF、34bFは、コの時型をしており、遊技盤26Fに対応した幅の底を持つ。遊技盤26Fを前枠5Fに対して図75(b)の矢印方向に押し込むことで、図75(a)に示すように遊技盤26Fが取付機構34aF、34bFにより固定される。遊技盤26Fが取付機構34aF、34bFにより固定されるときに、遊技盤26F側に設けた凸型ドロアコネクタ32Fが前枠5F側に設けた凹型ドロアコネクタ33Fと結合する。ここで、凸型ドロアコネクタ32Fおよび凹型ドロアコネクタ33Fは、位置ずれに対してフレキシブル性を有するフローティングコネクタである。
また、遊技盤26Fを前枠5Fに設置する際に、凸型ドロアコネクタ32Fが凹型ドロアコネクタ33Fと結合することで、遊技盤26F側の主制御基板16Fと、前枠5F側の払出制御基板17Fとが接続されることになる。さらに、遊技盤26Fは決まった位置に固定されるとともに、凸型ドロアコネクタ32Fおよび凹型ドロアコネクタ33Fはある程度の位置ずれに対してフレキシブル性を有しているので、凸型ドロアコネクタ32Fと凹型ドロアコネクタ33Fとの位置関係を意識することなくこれらが結合することができる。なお、取付機構34aF、34bFを設けず、凸型ドロアコネクタ32Fおよび凹型ドロアコネクタ33Fのみで、遊技盤26Fを前枠5Fに設置する構成であっても、凸型ドロアコネクタ32Fおよび凹型ドロアコネクタ33F自体がフレキシブル性を有するフローティングコネクタであるため、遊技盤26Fと前枠5Fとの位置関係を意識することなくこれらが結合することができる。ここで、凸型ドロアコネクタ32Fは、遊技盤26Fの内部配線(図示せず)を介して主制御基板16Fに接続され、凹型ドロアコネクタ33Fは、信号ケーブル36Fを介して、図74に示す払出制御基板17Fに接続されている。
<カードユニットとパチンコ遊技機との構成>
図76は、CU3FとP台2Fとの構成を示すブロック図である。図76を参照して、CU3FとP台2Fとの制御回路の概略を説明する。
CU3Fには、マイクロコンピュータ等から構成されたCU制御部323Fが設けられている。このCU制御部323Fは、CU3Fの主制御機能部であり、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Memory)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。
CU制御部323Fには、ホール用管理コンピュータやセキュリティ上の管理を行なうホールサーバ801F(図77参照)と通信を行なうための外部通信部(図示省略)が設けられている。CU制御部323Fには、P台2Fの払出制御基板17Fとセキュリティを確保しながら通信を行なうためのセキュリティ基板(SC基板)325Fが接続される。セキュリティ基板325Fは、CU3Fのセキュリティ監視機能部である。なお、セキュリティ基板325F上にCU制御部323Fを設けてもよく、あるいは、セキュリティ基板325Fとは別の基板にCU制御部323Fを設けてもよい。CU3FにはP台2F側への接続部(図示省略)が設けられており、P台2FにはCU3F側への接続部(図示省略)が設けられている。これら接続部は、たとえばコネクタ等で構成されている。
CU3F側のセキュリティ基板325FとP台2F側の払出制御基板17Fとは、このコネクタと接続配線とを介して通信可能に接続される。セキュリティ基板325Fには、セキュリティ基板325Fと払出制御基板17Fとの通信を制御するための通信制御IC325aFと、P台2Fのセキュリティを監視するためのセキュリティチップ(SC)325bFが設けられている。さらに、SC325bFは、不正検知部1325Fを備え、不正検知部1325FがCU制御部323FからP台2Fに通知される遊技玉の加算要求情報を監視することにより不正検知を行ない、不正検知時に鍵管理サーバ800F(図77参照)に通知する。また、不正検知用の設定値(定数)は鍵管理サーバ800Fから基板制御情報として通知される。
CU制御部323Fには、前述した貨幣識別器により紙幣の真贋および種類が識別されて、その識別結果信号が入力される。また、CU制御部323Fには、遊技場の係員が所持しているリモコンから発せられた赤外線をIR感光ユニット320Fが受光すれば、その受光信号が入力される。CU制御部323Fには、挿入されたカードの記録情報をカードリーダライタが読取って、その読取り情報が入力されるとともに、CU制御部323Fからカードリーダライタに対し、挿入されているカードに書込むデータが伝送されたときに、カードリーダライタはそのデータを挿入されているカードに書込む。カードの記録情報には、カードIDが含まれる。CU制御部323Fは、カードリーダライタが読み取ったカードIDを遊技終了まで記憶する。
CU制御部323Fは、遊技者が遊技している際、遊技者の持玉を管理・記憶する。CU制御部323Fから残額あるいは遊技玉数等のデータが表示制御部350Fに出力され、表示制御部350Fで表示用データに変換される。CU3Fの前面に設けられる表示器312Fおよび図73に示すようにP台2Fの前面に配置されている表示器54Fに対し、表示制御部350Fで変換した表示用データが送信される。なお、表示器54Fに送信される表示用データは、まず中継基板14Fに入力される。表示器312Fおよび表示器54Fには、その表示用データに応じた画像が表示される。また、表示器312Fの表面に設けられているタッチパネルを遊技者が操作すれば、その操作信号が表示制御部350Fを介してCU制御部323Fに入力される。遊技者が玉貸ボタン321Fを操作することにより、その操作信号がCU制御部323Fに入力される。なお、玉貸ボタン321Fは、CU3Fに設ける構成に限定されるものではなく、P台2Fに設けて操作信号をCU制御部323Fに入力する構成であっても良い。遊技者が再プレイボタン319Fを操作することによりその操作信号がCU制御部323Fに入力される。遊技者がカード返却ボタン322Fを操作することによりその操作信号がCU制御部323Fに入力される。
P台2Fには、P台2Fの遊技の進行制御を行なう主制御基板16Fと、遊技玉を管理・記憶する払出制御基板17Fと、払出制御基板17Fの指令に基づいて発射モータ18Fを駆動制御する発射制御基板31Fと、可変表示装置278Fと、主制御基板16Fから送信されてくるコマンドに基づいて可変表示装置278Fを表示制御する演出制御基板15Fとが備えられている。
主制御基板16Fおよび演出制御基板15Fは、遊技盤26Fに設けてある。主制御基板16Fには主制御部161Fである遊技制御用マイクロコンピュータが搭載されている。主制御部161Fは、遊技機の主制御機能部である。遊技機制御用マイクロコンピュータは、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Memory)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。主制御部161Fは、遊技盤26Fに設けられている入賞センサ162F、および電波センサ163Fと接続してある。
主制御部161Fは、各始動入賞口275F,276F,277Fに玉が入賞すると、大当り(あるいはさらに小当りを含む)/外れを決定するための乱数を抽選し、その乱数を記憶する。これを保留記憶という。保留記憶数の最大値は、たとえば、「4」である。主制御部161Fは、可変表示装置278Fで新たな可変表示を開始できる状態になれば、保留記憶を1つ消化してその保留記憶に基づいた大当り判定を行なうとともに可変開始から表示結果の導出に至るまでの可変表示時間を複数種類の中から決定する。また、大当りを決定したときには、確率変動を生じさせるか否かも併せて決定する。主制御部161Fは、その大当り判定の結果(確変にするか否かを含む)、および可変表示時間に関する情報をコマンドとして演出制御基板15Fに搭載された演出制御部151Fへ送信する。
主制御部161Fから演出制御部151Fへ送信される可変表示に関するコマンドには、可変表示の開始を示す可変開始コマンド、可変表示の結果を示す表示結果コマンド(大当り/外れ)、可変表示パターンを特定可能な可変表示時間コマンド、可変表示結果を導出表示させるタイミングを示す可変停止コマンドなどが含まれる。さらに、主制御部161Fから演出制御部151Fへ送信されるコマンドには、大当り中に大当りの進行状況を特定可能なコマンドや、新たな保留記憶の発生を示すコマンド、遊技状態のエラーの発生を示すコマンドなどがある。
演出制御部151Fは、主制御部161Fから送信されてくるこれらのコマンドに基づいて可変表示装置278Fの可変表示内容を決定する。たとえば、演出制御部151Fは、主制御部161Fから送信されてくるコマンドに基づいて可変表示結果および可変表示時間を特定し、停止図柄を決定するとともに可変表示パターン(リーチの有無、リーチの種類)を決定し、さらには大当りやリーチに関する予告演出の演出パターンを決定する。演出制御部151Fは、決定した可変表示内容に従って可変表示装置278Fを表示制御する。
演出制御基板15Fは、CU3Fの中継基板14Fを介して、表示器54Fとも接続されている。演出制御部151Fは、可変表示装置278Fに対して可変表示等のための表示制御信号を送信するとともに、可変表示装置278Fの表示と連動する表示を行なうための表示制御信号を表示器54Fへ送信可能である。なお、中継基板14Fおよび表示器54Fは、P台2F側に設けるようにしてもよい。この場合、P台2F側の演出制御基板15Fは、CU3Fを介さずに直接P台2F側の中継基板14Fと接続される。
払出制御基板17Fは、前枠5Fに設けてある。払出制御基板17Fには、払出制御部171Fである払出制御用マイクロコンピュータが搭載されている。払出制御部171Fは、遊技機の払出制御機能部である。払出制御用マイクロコンピュータは、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Memory)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。
また、払出制御基板17Fに対し、発射玉検出スイッチ903F、アウト玉検出スイッチ701F、ファール玉検出スイッチ33AF、計数ボタン28F、電波センサ173Fが電気的に接続された状態で設けられている。この電波センサ173Fは、電波を不正に発信して主に玉上げスイッチ(上)41aFを常時オン状態にする不正行為を検知するためのものである。この電波センサ173Fの検出信号が払出制御基板17Fの入力ポート(図示省略)を介して払出制御部171Fへ入力される。玉上げスイッチ(上)41aFは、オンからオフに変化したことにより遊技玉の発射を検出し、その検知に基づいて、払出制御部171Fが、遊技玉数を「1」減算する。
したがって、不正電波によりこの玉上げスイッチ(上)41aFが常時オン状態になると、いくら玉を発射しても遊技玉数が減算されない状態となる。このような電波による不正を電波センサ173Fにより検知する。
主制御基板16Fから払出制御基板17Fに対し、主制御チップID、入賞口情報、ラウンド情報、接続確認信号、入賞検出信号、始動入賞口入賞情報、エラー情報、図柄確定回数、大当り情報、メーカ固有大当りの情報が送信される。
主制御チップID(メインチップIDとも言う)は、P台2Fの主制御基板16Fに記録されているチップIDのことであり、P台2Fの電源投入時に払出制御基板17Fに対して送信される情報である。入賞口情報は、入賞口の種類(始動入賞口、普通入賞口、大入賞口)と、賞球数(入賞口に遊技玉が入ったときの払出玉数)とを含む情報であり、P台2Fの電源投入時に払出制御基板17Fに対して送信される。ラウンド情報は、大当りしたときのラウンド数の情報であり、P台2Fの電源投入時に払出制御基板17Fに対して送信される。
接続確認信号は、主制御基板16Fと払出制御基板17Fとが接続されていることを確認するための信号であり、主制御基板16Fから払出制御基板17Fへ所定の電圧の信号が常時供給されており、払出制御基板17Fがその所定電圧信号を受信していることを条件として払出制御基板17Fが動作制御するように構成されている。入賞検出信号は、始動入賞口以外の入賞口に入賞したパチンコ玉の検出信号である。この検出信号を受けた払出制御基板17Fは、その入賞玉1個に対して付与すべき玉数を、遊技玉数と加算玉数とに加算する制御を行なう。
始動入賞口入賞情報とは、始動入賞口のいずれかにパチンコ玉が入賞したことを示す情報である。エラー情報とは、主制御基板16Fが遊技制御を行なっている最中にエラーが発生した場合にその旨を払出制御基板17Fへ通知するための情報である。
図柄確定回数とは、各始動入賞口への入賞に対する可変表示装置の表示結果として確定した図柄の情報である。
大当り情報とは、大当りが発生したことを示す情報であり、その内訳は、各メーカ共通の大当りを示す共通大当り情報とメーカ固有の大当りを示すメーカ固有大当り情報とがある。共通大当り情報は、たとえば15ラウンド大当り等のように、各遊技機メーカが共通に採用している大当りであり、その大当りに伴って確変が発生する場合には確変情報を含み、その大当りに伴って時短状態(可変表示装置の可変表示時間を短縮する制御状態)が発生する場合にはその時短情報を含んでいる。メーカ固有大当りとは、たとえば突然確変(突確)のような、或る遊技機メーカのみが採用している大当り状態のことである。
払出制御基板17Fから主制御基板16Fへ、ヘルスチェックコマンドと賞球個数受付コマンドとが送信される。ヘルスチェックコマンドとは、主制御基板16Fが正常に動作しているか否かをチェックするためのコマンドである。賞球個数受付コマンドとは、加算玉数を受付けた旨を示すコマンドである。
アウト玉検出スイッチ701Fから払出制御基板17Fへアウト玉検出信号が入力される。このアウト玉検出信号が入力された払出制御基板17Fは、後述するように遊技中玉数(遊技領域27Fに浮遊している浮遊玉の玉数)を減算更新する。ファール玉検出スイッチ33AFからファール玉検出信号が入力された払出制御基板17Fでは、後述するように、加算玉数と遊技玉数とを加算更新するとともに、遊技中玉数を減算更新する。発射玉検出スイッチ903Fから払出制御基板17Fへ発射玉検出信号が入力される。この発射玉検出信号が入力された払出制御基板17Fは、遊技中玉数を減算更新する。
CU3Fのセキュリティ基板325FとP台2Fの払出制御基板17Fとが電気的に接続されており、セキュリティ基板325Fから払出制御基板17Fへ、後述するように各種コマンドが送信される。逆に、払出制御基板17Fからセキュリティ基板325Fへ、後述するように各種レスポンスが送信される。
前枠5Fには、払出制御基板17Fの他、発射制御基板31F、発射モータ18F、遊技玉数表示器29Fが設けられている。なお、遊技玉数表示器29Fは前枠5Fに直接取り付けてもよいが、玉が払い出される通常のパチンコ遊技機の前面側に設けられた上皿や下皿のように、前枠5Fに対して回動可能な態様で設けるようにしてもよい。この点は、表示器54Fについても同様である。払出制御基板17Fの払出制御部171Fは遊技玉数表示器29Fに遊技者が現在所有している遊技玉数を表示する。
払出制御基板17Fから発射制御基板31Fへ、発射制御信号と発射許可信号とが出力される。それを受けた発射制御基板31Fは、発射装置の発射モータ18Fを励磁するための信号を出力する。これにより、パチンコ玉が遊技領域27Fへ弾発発射される状態となる。発射制御基板31Fは、遊技者が打球操作ハンドル25Fに触れていることを検出するタッチリングの入力信号が入力されているときに発射モータ励磁出力を発し、発射モータ18Fを駆動させる。
発射強度センサ19Fは、発射モータ18Fによるパチンコ玉の発射強度Tを検出する。たとえば、発射強度センサ19Fは、ハンドル操作量に応じて電気抵抗値が変化するように構成された可変抵抗から出力されるアナログ値をデジタル値に変換した値を発射強度Tとして検出する。以下では、例示的に、ハンドル操作量に応じて発射強度Tが0(最小値)から99(最大値)まで変化するものとして説明する。発射強度センサ19Fの検出結果は、発射制御基板31F経由で払出制御基板17FおよびCU3Fに出力される。
P台2Fの前面には、CU3Fから伸びた表示器54Fおよび中継基板14Fが設けられている。表示器54Fは、中継基板14Fを介してCU3Fの表示制御部350Fからの表示データ(表示制御信号)を受信する。さらに、表示器54Fは、中継基板14Fを介して演出制御基板15Fからの表示データ(表示制御信号)を受信する。
中継基板14Fには演出制御基板15Fおよび表示制御部350Fのうち一方からの表示制御信号を表示器54Fへ出力して表示器54Fに演出制御基板15Fまたは表示制御部350Fからの表示制御信号に基づく画像を表示するための切換回路141Fが搭載されている。
なお、本実施の形態では、P台2Fの前面に設けられるCU3Fから伸びた表示器54FをCU3F側で制御できるように構成されているが、これに代えて、P台2F側に表示器54Fを設けCU3F側から表示制御できるように構成しても、P台2F側に表示器54Fを設けP台2F側で表示制御できるようにP台2F側に表示制御用基板を設ける構成でもよい。この場合、表示制御用基板は、払出制御部171Fの指令に基づいて表示器54Fを表示制御する。
RAMクリアスイッチ293Fは、P台2FのRAMに記憶している遊技台情報や遊技情報を消去するためのスイッチであり、P台がエラー状態となった後当該スイッチを店員が操作することで初期状態に戻すことが可能となる。このRAMクリアスイッチ293Fは、たとえばカードが排出された後に店員により操作される。
<パチンコ玉の循環経路>
ここでは、図73および図76を参照して、P台2Fにおけるパチンコ玉の循環経路を概説する。
遊技者が打球操作ハンドル25Fを操作すると、発射モータ18Fが駆動する。これにより、発射位置にまで供給されてきた1個のパチンコ玉が打球ハンマーにより弾発されてそのパチンコ玉が遊技領域27Fに打込まれる。
遊技玉の発射検出は、玉上げスイッチ(上)41aFがオンからオフに変化したことにより検出される。この検出は、払出制御部171Fが設けられている払出制御基板17F(図76参照)でのポート入力により検知され、その検知に基づいて、払出制御部171Fが、遊技玉数を「1」減算する。
遊技領域27Fに打込まれた玉のうち、アウト口154F(図73参照)に進入したアウト玉は、アウト玉流下経路を流下し、その途中に設けられたアウト玉検出スイッチ701Fによって検出される。ファール玉は、ファール玉戻り経路を通って流下し、その途中に設けられたファール玉検出スイッチ33AFによって検出される。
入賞口や可変入賞球装置に入賞したすべての入賞玉は、遊技機背面で集められて回収玉通過経路に誘導される。同様に、アウト玉およびファール玉も回収玉通過経路に誘導される。回収玉通過経路には発射玉検出スイッチ903Fが設けられている。このため、入賞玉、アウト玉、およびファール玉のすべてが発射玉検出スイッチ903Fによって検出される。つまり、発射玉検出スイッチ903Fは、弾発されたパチンコ玉のすべてを検出するスイッチである。このスイッチの検出数と、発射モータ18Fにより弾発されたパチンコ玉の弾発数とが等しくなったときに、打込まれたパチンコ玉がすべて回収されたと判定できる。
そこで、本実施の形態では、発射玉検出スイッチ903Fの検出数と弾発数との差を演算しており、この差数が0でないときには、遊技領域27Fに打込まれた玉の回収が済んでいないと判定している。この判定をすることによって、遊技領域27Fを転動中であるか、遊技領域の釘等の間に引っ掛かって落下していないような浮遊玉が存在していないかどうかを判断できる。
<カードユニットおよびパチンコ遊技機に発生した異常の通知処理>
図77は、相互認証の結果、異常を検知した場合の通知処理を説明するための説明図である。
図77を参照して、CU制御部323F、セキュリティ基板325F、払出制御部171F、あるいは主制御基板16Fにおいて異常が発生した場合には、図77の矢印で示す方向に対して通知が行なわれる。ここで言う異常には、CU制御部323F、セキュリティ基板325F、払出制御部171F、あるいは主制御基板16Fを、不正に製造された他のものに差し替えるとか、あるいはノイズ等により誤作動したり故障したりした場合や、断線等によるオフライン状態などが含まれる。図77に示される鍵管理サーバ800Fは、CU3F内部の電子部品のシリアルID(SIDとも言う)毎に対応付けて、CU通信制御部のSIDと認証鍵とを記憶している鍵の管理サーバである。また、鍵管理サーバ800Fは、主制御基板16Fと互いに通信可能なサーバである。
まず、CU3Fのセキュリティ基板325Fにより異常が発生した場合には、前述したCU制御部323Fとセキュリティ基板325Fとの間で行なわれる相互認証の結果、CU制御部323Fが異常を検知する。この相互認証では、後述するシリアルID認証と機器認証の他に、セッション鍵による機器認証も含まれている。
シリアルIDは、セキュリティ基板325FのシリアルID(基板シリアルID)であり、セキュリティ基板325Fのセキュリティチップ325bを製造する段階において、該セキュリティチップ325bのROMに記憶されている。また、CU3Fが遊技場に搬入された後、ホールサーバ801Fに接続されたときに、鍵管理センタの鍵管理サーバ800Fからホールサーバ801F経由で基板シリアルIDがダウンロードされてCU制御部323Fに記憶される。
CU制御部323Fがセキュリティ基板325Fの異常を検知した場合、CU制御部323Fはホールサーバ801Fにその旨を通知するとともに、CU3Fの表示制御部350Fに異常報知コマンドを送信する。CU制御部323Fは、表示器312Fに異常発生した旨の表示を行なう制御を表示制御部350Fに行なわせるとともに、異常報知ランプ(図示せず)を点灯または点滅させて異常報知を行なう。さらに、CU制御部323Fは、外部通信部からホール用管理コンピュータへ異常が発生した旨の信号を送信する。
CU3FのCU制御部323Fにより異常が発生した場合には、前述した相互認証によりセキュリティ基板325Fが異常発生を検知し、その旨を示す信号(異常通知信号)を払出制御部171Fに通知する。なお、セキュリティ基板325Fは、パラレルインタフェイス回路であるPIF回路326Fを介してパラレル信号で払出制御部171Fに通知する。払出制御部171Fはそれを受けて異常発生した旨を主制御基板16Fへ通知する。主制御基板16Fは、前述と同様に、異常報知ランプを作動させる制御を行なうとともにホール用管理コンピュータへ異常が発生した旨の信号を送信する。
セキュリティ基板325Fが払出制御部171Fの異常を検知した場合には、その旨をCU制御部323Fへ通知し、CU制御部323Fがその旨をホールサーバ801Fへ通知する。
このように、セキュリティ基板325Fは、CU制御部323Fの異常を検知したときにはその旨をPIF回路326Fを介して払出制御部171Fへ通知する一方、払出制御部171Fの異常を検知したときには、その旨をCU制御部323Fへ通知するものであり、セキュリティ基板325Fによる異常発生の通知先がそれぞれ異なる。その理由は、異常が発生した制御部に対して異常が発生した旨を通知しても、何ら異常報知のための制御が行なわれず、異常防止対策にはならないためである。しかも、セキュリティ基板325Fは、通信制御の機能は有しているものの異常報知制御の機能は有していない。よって、自ら異常報知の制御が行なえず、そのために必ず異常が発生した制御部とは反対側の制御部の方向に異常発生した旨の通知を行なうのである。なお、PIF回路326Fを介してセキュリティ基板325Fからの異常発生の通知を受けた払出制御部171Fは、その旨を主制御基板16Fへ通知する。主制御基板16Fはその通知を受けて、前述と同様の異常報知のための制御を行なう。
払出制御部171Fに異常が発生した場合には、その旨がセキュリティ基板325Fにより検知され、異常が発生した旨がCU制御部323Fへ通知され、CU制御部323Fは前述した異常報知制御を行なうとともにホールサーバ801Fへ異常が発生した旨を通知する。また、払出制御部171Fに異常が発生した場合には、主制御基板16Fが異常発生した旨を検知し、その通知を受けて前述した異常発生報知用の制御を行なう。
払出制御基板17Fは、前述したように、セキュリティ基板325Fに異常が発生した場合にはそれを検知して主制御基板16Fへ通知する一方、主制御基板16Fに異常が発生した場合にはそれを検知してセキュリティ基板325Fへ異常が発生した旨を通知する。この払出制御基板17Fも、前述したセキュリティ基板325Fと同様に、異常が発生した旨を検知した場合にはその異常が発生した制御部に対して通知を行なっても異常報知用の制御が行なわれないために、異常が発生した制御部とは反対側の制御部あるいは制御基板に通知を行なう。なお、セキュリティ基板325Fと払出制御基板17Fとは、異常報知ランプや異常報知用表示器等の異常報知手段が接続されておらず、異常を検知しても自ら異常報知制御する機能を有していない。なお、上記の説明では、セキュリティ基板325Fと払出制御基板17Fとは、異常報知ランプや異常報知用表示器等の異常報知手段が接続されておらず、異常を検知しても自ら異常報知制御する機能を有していないこととして説明したが、セキュリティ基板325Fと払出制御基板17Fとに異常報知の機能を設け、直接異常を発生した旨を通知させてもよい。
<カードユニット側とパチンコ遊技機側との送受信態様>
次に、図78は、CU3F側とP台2F側とのそれぞれで記憶している各種データの内の主なものおよびその送受信態様を示す模式図である。図78を参照して、CU(カードユニット)3F側とP台(パチンコ遊技機)2F側とのそれぞれで記憶している各種データの内の主なものおよびその送受信態様を説明する。
本実施の形態においては、P台2F側において遊技玉数の変動を算出して現在の最新の遊技玉数を記憶・管理している。CU3F側においても現在の遊技玉数の算出・記憶を行なっているが、その遊技玉数はP台2F側から送信されてきた情報に基づいたものである。一方、持玉(カード持玉数)や貯玉数、カード残額(残額)は、CU3F側において管理・記憶している。
図78では、CU3F側のCU制御部323Fに設けられているRAMの記憶データと、P台2F側の払出制御基板17Fに搭載されているRAMの記憶データとを示している。まず、P台(パチンコ遊技機)2FとCU(カードユニット)3Fとが遊技場に設置されて初めて電気的に接続された状態で電源を立上げたときに、P台2F側の払出制御基板17Fは、主制御基板16FからメインチップID(主制御チップID)を送信してもらい、そのメインチップIDをCU3F側に送信するとともに、払出制御基板17F自体が記憶している払出チップID(払出制御チップID)をCU3F側へ送信する。
CU3F側では、それら送信されてきたメインチップIDと払出チップIDとを記憶する。次に、接続時刻すなわちCU3F側とP台2F側とが接続されて通信が開始された時刻のデータがCU3F側からP台2F側へ送信され、P台2F側ではその送信されてきた接続時刻を記憶する。
この状態で、メインチップID、払出チップIDおよびCU3F側で識別された接続時刻の3つの情報がCU3F側とP台2F側とに記憶されることとなる。それ以降の電源投入時においては、P台2F側からCU3F側へそれら3つの情報、すなわち、メインチップIDと払出チップIDと前回の接続時刻データとが送信される。
CU3F側では、それら送信されてきたデータと既に記憶しているデータとを照合し、前回と同じP台2Fが接続されているか否かを判別する。なお、接続時刻のデータは、電源が立上げられる度にCU3F側とP台2F側との通信が開始された新たな接続時刻データがCU3F側からP台2F側へ送信されてその新たな接続時刻データをP台2F側において記憶することとなる。
CUおよびP台の双方は、電文に「通番」を付加して送信する。また、CUおよびP台の双方は、相手から受信した「通番」を記憶する。「通番」には、「通常通番」、「加算通番」および「計数通番」の3種類がある。「通常通番」は、電文のシーケンス番号を示す。「通常通番」は、CU3F側(一次局側)が初期値を「1」として送信時に受信した通番をカウントアップ(+1)して送信する。ただし、再送時は、「通常通番」をカウントアップしない。P台2F側(二次局側)は受信した通番をそのまま送信する。なお、通番の連続性が成立しない場合は無応答となる。「加算通番」はCU3FがP台2Fに対して遊技玉の加算を要求する際に用いられる通番である。「計数通番」は、P台2FがCU3Fに対して遊技玉の計数を要求する際に用いられる通番である。
通常通番の更新権はCU3Fのみが有する。CU3Fは、送信した通常通番と同じ通常通番が返信されてきたときに、通常通番をバックアップ記憶した上で、更新した通常通番を送信する。加算通番の加算更新権はCU3Fのみが有する。CU3Fは、加算要求をする場合には、それまで通信に用いていた加算通番に+1した加算通番をP台2Fへ送信する。P台2Fは、要求を承諾するときには、同じ加算通番を返信する。要求を拒否するときには、前回、受信した加算通番(今回受信した加算通番−1)を返信する。計数通番の加算更新権はP台2Fのみが有する。P台2Fは、計数要求をする場合には、それまで通信に用いていた計数通番に+1した計数通番をCU3Fへ送信する。CU3Fは、要求を承諾するときには、同じ計数通番を返信する。要求を拒否するときには、受信した計数通番(今回受信した計数通番−1)を返信する。
以下では、「通常通番」について、CU3Fが送信時に受信した通番をカウントアップ(+1)して送信する構成について説明する。しかし、本発明は当該構成に限定されるものではなく、P台2FおよびCU3Fのそれぞれが、またはP台2Fが送信時に受信した通番をカウントアップ(+1)して送信し、他方は受信した通番をそのまま送信する構成であってもよい。
また、「加算通番」および「計数通番」は、それぞれ、加算要求の処理および計数要求の処理においてカウントアップされる特別な通番である。以下では、この「加算通番」および「計数通番」がカウントアップされる際、「通常通番」もカウントアップする構成について説明する。しかし、本発明は当該構成に限定されるものではなく、「加算通番」および「計数通番」がカウントアップされる際に「通常通番」のカウントアップを停止する構成であってもよい。なお、以下では、「通常通番」を単に「通番」と称する。また、「加算通番」および「計数通番」を併せて「要求通番」とも称する。
P台2F側からCU3F側へは、最新遊技台情報(カウント中の遊技台情報)が送信される。この最新遊技台情報は、P台2F側の払出制御部171F(図76参照)のRAMの最新遊技台情報記憶領域に記憶されている。具体的には、加算玉数カウンタの情報と、減算玉数カウンタの情報と、計数玉数カウンタの情報とが含まれる。なお、遊技玉数は、最新遊技台情報に含まれず、後述するように遊技玉数カウンタのカウント値としてP台2F側からCU3F側へ送信している。しかし、これに代えて、あるいは遊技玉数カウンタに加えて、遊技玉数も最新遊技台情報に含めてもよい。
これらのカウンタの情報が、まとめてレスポンスとしてCU側へ送信される。加算玉数カウンタは、加算玉数をカウントするカウンタである。加算玉は、「賞球玉数×入賞個数」と「バック玉数」との和である。なお、バック玉とはファール玉のことである。つまり、加算玉とは、加算玉カウンタが遊技玉に加算すべき数を示す。減算玉数カウンタは、減算玉数をカウントするカウンタである。減算玉は、「発射玉数」である。つまり、玉上げスイッチ(上)41aFのオンからオフへの出力変化により検出された玉数である。なお、「減算玉数」には、「計数玉数」は含まれない。計数玉数カウンタは、計数玉数をカウントするカウンタである。計数玉は、「計数操作によって遊技玉から持玉に変換された玉数」である。ここで、「賞球玉」は、入賞口へ玉が入賞することにより払出される玉であり、セーフ玉である。「発射玉」は、遊技機が発射した玉であり、バック玉がある場合はバック玉を減算した玉数が発射玉数となる。「バック玉」は、発射玉が盤面上に跳出せずに戻ってきた玉である。「アウト口通過玉」は、アウト口154Fを通過した玉であり、アウト玉とセーフ玉の合計玉数がアウト口通過玉数を意味する。
たとえば、遊技領域27Fに打込まれたパチンコ玉が入賞して主制御基板16Fから入賞情報が払出制御基板17Fへ送信されてきたときに、その入賞情報に基づいて遊技玉を加算すべき加算玉数を加算玉数カウンタがカウントし、その加算玉数カウンタの値(加算玉数)をP台2F側からCU3F側へ送信する。また、パチンコ玉が遊技領域27F内に発射されていることによる玉上げスイッチ(上)41aFのオンからオフへの出力変化に基づいて減算玉数カウンタが発射玉数を減算玉数としてカウントし、その減算玉数カウンタの値(減算玉数)をP台2F側からCU3F側へ送信する。
あるいは、払出制御部171Fは、計数ボタン28Fの押下により、遊技玉数を計数玉数としてカウントし、その計数玉数カウンタの値(計数玉数)をP台2F側からCU3F側へ送信する。
P台2F側においては、加算玉数カウンタ、減算玉数カウンタ、および計数玉数カウンタの値をCU3F側へ送信する毎に、それらカウント値を前回遊技台情報記憶領域(払出制御部171FのRAM等)にバックアップデータとして記憶(書換え)した後、最新遊技台情報としての加算玉数カウンタ、減算玉数カウンタ、および計数玉数カウンタの値を0クリアする(遊技玉数カウンタを除く)。なお、本実施の形態において「クリア」とは「初期化」と同じ意味である。
その結果、前回遊技台情報(直前に送信した遊技台情報)の記憶エリアに、直前にCU3F側に送信した遊技台情報である、加算玉数、減算玉数、および計数玉数のデータがバックアップデータとして記憶される。このバックアップデータは、P台2F側からCU3F側へ最新遊技台情報が送信されなかった場合に、次の送信に際して今回の各カウンタの値ばかりでなくその送信されなかった前回の各カウンタの値をも送信できるようにするためのものである。この前回遊技台情報に、直前に送信した遊技玉数をさらに加えて記憶するようにしてもよい。
また、払出制御基板17Fは、入賞の発生、玉の発射、バック玉の発生、および計数玉の発生(遊技玉から持玉への変換)に応じて、遊技玉数カウンタの値を更新し、その更新後の遊技玉数カウンタの値を遊技玉数としてCU3F側に送信する。
CU3F側においては、RAM内の累計データ記憶領域に、遊技玉数、カード持玉数(単に、持玉数とも言う)、貯玉数、残額、総加算玉数(加算玉数累計)、総減算玉数(減算玉数累計)、およびカード挿入時持玉数を記憶している。なお、カード持玉数は、カード挿入時持玉数から持玉払出数(カード持玉数から遊技玉数に変換した玉数)を減算し、計数玉数を加算した玉数である。つまり、カード持玉数は、現時点で遊技者が所有している持玉数である。
P台2F側から送信されてきた加算玉数カウンタの値(加算玉数)に基づいて総加算玉数を加算して玉数を更新する。また、P台2F側から送信されてきた減算玉数カウンタの値(減算玉数)に基づいて総減算玉数を減算して玉数を更新する。さらに、P台2Fから送信されてきた計数玉数カウンタの値に基づいてカード持玉数を加算して更新する。このように、CU3Fは、P台2Fより逐一送信されてくる最新遊技台情報によって総加算玉数、総減算玉数、カード持玉数を更新することで最新のそれらの情報を管理することが可能となる。
CU3Fは、図示のとおり、遊技玉を記憶する領域を備えているとともに、P台2F側から遊技玉数カウンタのカウント値(遊技玉数または遊技玉トータル個数情報とも言う)も受信している。CU3Fは、遊技玉を記憶する領域を以下の手順で更新する。すなわち、CU3Fは、P台側から送信されてきた加算玉数カウンタの値(加算玉数)、減算玉数カウンタの値(減算玉数)、および計数玉数カウンタの値に基づいて、記憶している遊技玉数を更新するとともに、同じタイミングでP台側から送信されてきた遊技玉数カウンタのカウント値と、更新後の遊技玉数とが一致しているか否かを判定する。一致していれば、遊技の続行を許容するが、一致していなければ、エラー状態に移行する制御を行なう。
その結果、たとえば、異常報知ランプや表示器312Fによりエラー報知が行なわれ、あるいは、ホール用管理コンピュータやホールサーバ801Fにエラーが発生した旨のエラー通知信号が送信される(この場合、ホール用管理コンピュータやホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。その結果、係員による人為的な対応を促す所定の報知が行なわれる。
なお、エラー状態に移行して遊技を停止させることに代えて、CU3F側で記憶している遊技玉数をP台2F側から送信されてきた遊技玉数カウンタのカウント値に置き換えるようにしてもよい。または、それに代えて、CU3F側で管理している遊技玉数と、P台2F側で記憶している遊技玉数との平均値に補正してもよい。
このように、本実施の形態では、CU3F側にも遊技玉数を記憶させているが、その遊技玉数がP台2F側で管理記憶している遊技玉数と整合するか否かの判定を行なえるようにしている(CU3F側機能)。そのため、仮に不正行為その他の事情で、P台2F側で記憶している遊技玉数がCU3F側で記憶している遊技玉数と一致しない状況が発生しても、その旨をチェックできる。なお、ここでは、CU3F側にその判定機能を設けたが、たとえば、CU3Fと接続されるホールサーバ801Fまたはホール用管理コンピュータによって、CU3F側で記憶している遊技玉数とP台2F側で記憶している遊技玉数とを受信し、両者が整合しているか否かの判定を行なうものとしてもよい。
図78に示すように、CU3Fは、カード持玉数、貯玉数を記憶する記憶領域と、受付けた(挿入された)カードのカード残額を記憶する記憶領域と、総加算玉数(加算玉数累計)、総減算玉数(減算玉数累計)およびカード挿入時持玉を記憶する記憶領域をさらに有する。CU制御部323F(図76参照)は、貯玉の使用を要求する入力(たとえば、CU3Fに設けられた再プレイボタン319Fの押圧入力(ただし、持玉無しのとき))に応じて貯玉を記憶する記憶領域から所定数の貯玉を減算する。
CU制御部323F(図76参照)は、持玉の使用を要求する入力(たとえば、持玉有のときのCU3Fに設けられた再プレイボタン319Fの押圧入力(ただし、持玉有のとき))に応じて持玉を記憶する記憶領域から所定数の持玉を減算する。さらに、CU制御部323F(図76参照)は、カード残額の使用を要求する入力(たとえば、玉貸ボタン321Fの押圧入力)に応じてカード残額を記憶する記憶領域から所定値を減算する。
遊技者所有の遊技用価値(たとえばプリペイド残額、持玉数、あるいは貯玉数)から価値を引落として遊技に使用する操作を遊技者が行なった場合に、その引落とし分の玉数を遊技玉数カウンタに加算するための加算玉数がCU3F側からP台2F側へ送信される。P台2F側では、それを受けて、遊技玉数カウンタを加算更新する。
本実施の形態に係る遊技システムでは、一方、遊技者所有の遊技用価値を引落としてドリンク等に交換するといういわゆるワゴンサービスのオーダ等を受付けることが可能である。ただし、遊技玉でワゴンサービスを受けることが制限されており、持玉でしかワゴンサービスを受けることができない。これは、各台計数機が配備された従来の封入循環式パチンコ遊技機において、皿に残っている計数前の玉を手で掴み出してワゴンサービスに用いることを禁止するようなイメージである。
このため、本実施の形態では、ワゴンサービスを行なう操作が実行されたときに、持玉数がワゴンサービスの希望メニューに対応する玉数に満たない場合、遊技者に計数操作を促すように構成されている。その際に遊技者が計数操作を実行すると、その操作に基づく計数玉数がP台2F側からCU3F側へ送信される。CU3F側では、それを受けて、遊技玉数を減算し、カード持玉数を加算して更新する。
<通信で用いられるフレーム構成>
次に、本実施の形態に係るCU3FとP台2Fとの間での通信について、さらに詳しく説明する。当該通信で用いられる電文は、所定のフォーマットからなるフレームで構成されている。送信データ(電文)は、必ず1フレーム単位で送信される。つまり、電文の分割送信は行なわない。また、連続で電文を送信する場合は、1ミリ秒以上の間隔をあける。
1フレームの送信データは、データ長、通常通番、加算通番、計数通番、コマンド、データ部を含む。「データ長」は、送信データのデータ長(通番〜データ部(業務電文範囲))を示す。「コマンド」は、電文のコマンドコードである。「データ部」は、電文のデータである。
<CUとP台との間で送受信するコマンドおよびレスポンス>
次に図79を参照して、CU(カードユニット)3FとP台(パチンコ遊技機)2Fとの間で送受信されるコマンドおよびレスポンスの概略を説明する。
図79には、送信方向および送信されるデータがコマンドかレスポンスかの別と送信情報の名称とその概略が示されている。
<<1.リカバリ要求、2.リカバリ応答>>
まず、CU3FからP台2Fに対してリカバリ要求という名称のコマンドが送信される。このリカバリ要求のコマンドは、P台2Fに対してリカバリ情報を要求するものである。このリカバリ要求に対応して、P台2FからCU3Fに対してリカバリ応答という名称のレスポンスが送信される。このリカバリ応答のレスポンスは、CU3Fに対してリカバリ情報を通知するものである。
リカバリ要求のコマンドは、CU3Fが認証を完了した後にCU3FからP台2Fに対して送信される。リカバリ要求のコマンドは、CU3FからP台2Fに対してリカバリ情報を要求し、CU3Fが認証完了後、最初に同コマンドを送信する。リカバリ要求は、「通番」、「コマンド」、「前回最終送信通番」および「前回最終送信計数通番」が含まれている。「通番」は、シーケンス番号(1〜255)である。「コマンド」は、リカバリ要求のコマンドコードであり、16進表現のバイナリデータで示してある。
「前回最終送信通番」は、前回接続時にP台2Fに対して最後に送信した状態情報要求のコマンドの通番である。「前回最終送信通番」が“0”の場合、記憶している通番が無い状態を示している。なお、「前回最終送信通番」は、P台2Fにおいて状態情報応答を送信時に、CU3Fにおいて状態情報応答受信時に「通番」をP台2F、CU3F側ともに前回最終送信通番(通番)として記憶する通番である。
「前回最終送信計数通番」は、前回接続時にP台2Fに対して最後に送信した状態情報要求のレスポンスの計数通番である。「前回最終送信計数通番」は、“0”の場合、記憶している通番が無い状態を示している。なお、「前回最終送信計数通番」は、P台2Fにおいて状態情報応答を送信時に、CU3Fに状態情報応答受信時に計数通番をP台2F、CU3F側ともに前回最終送信計数通番として記憶する通番である。
P台2Fのリカバリ処理(計数玉数)において、後述する計数履歴シーケンスでセキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」と、P台2Fで保持している「店舗コード」および「SC基板ID」との一致判定を行ない、一致している場合には以下の処理を行なう。不一致の場合には、計数要求玉数=0を、減算レジスタにセットしてユーザプログラムに通知する。
P台2FはCU3Fより通知された「前回最終送信計数通番」を参照して、CU3Fが計数要求に対する計数処理を実施していなかった場合は計数要求玉数=0を、減算レジスタにセットしてP台2Fで実行されるユーザプログラムに通知する。CU3Fが計数処理を実施済の場合はCU3Fに通知した計数要求玉数を、減算レジスタにセットしてユーザプログラムに通知する。なお、P台2Fが保持している店舗コードが全て“F”(16進数)の場合は、店舗コードが一致していると判定する。また、セキュリティ基板325Fから通知された「店舗コード」とP台2Fで保持している「店舗コード」とが不一致の場合、レジスタを介して店舗コード不一致をユーザプログラム側に通知する。なお、P台2Fは、CU3Fよりリカバリ要求のコマンドを受信した場合、レジスタを介してユーザプログラム側に通知する。
リカバリ応答のレスポンスは、CU3Fに対してP台2Fで保持しているリカバリ情報を応答するものである。リカバリ情報は、「通番」、「コマンド」、「前回最終送信通番」、「前回挿入中カードID」、「前回カード挿入時刻」、「前回最終送信加算通番」、「玉単価」、「遊技情報格納有無」、「前回遊技台情報」および「前回遊技情報」を含んでいる。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「前回最終送信通番」は、前回接続時にCU3Fに対して最後に送信した状態情報応答のレスポンスに含まれる通番のデータであり、“0”のときは保持している通番がない場合である。「前回挿入中カードID」は、前回接続時に挿入中だったカードのカードIDのデータであり、“0”のときは挿入中のカードがない場合である。P台2Fの払出制御部171Fは、CU3Fから送信される情報に基づいて挿入中であったカードIDを記憶保持している。
「前回カード挿入時刻」は、前回接続時に挿入中だったカードの挿入時刻のデータであり、“0”のときは挿入中のカードがない場合である。このデータも、年情報を2桁YY、月情報を2桁MM、日情報を2桁DD、時間情報を2桁hh、分情報を2桁mm、秒情報を2桁ssで表されるデータである。「前回最終送信加算通番」は、前回接続時にCU3Fに対して最後に送信した状態情報応答のレスポンスに含まれる加算通番であり、“0”のときは当該加算通番がない場合である。「玉単価」は、P台2Fで遊技している1玉あたりの玉単価(0.01円〜99.99円)である。「遊技情報格納有無」は、遊技情報を格納していない場合“0x00”、遊技情報を格納している場合“0x01”である。
「前回遊技台情報」は、CU3Fに前回通知した遊技台情報であり、「遊技玉数」、「遊技玉情報」、「計数要求玉数」および「計数通番」の情報を含んでいる。「遊技玉数」は、CU3Fに前回通知した遊技玉数である。「遊技玉情報」は、前回通知した遊技玉情報である。遊技玉情報には、たとえばCU3Fに前回通知した発射玉数、アウト口通過玉数や総賞球玉数などの情報である。「計数要求玉数」は、計数要求する遊技玉数である。「計数通番」は、CU3Fに前回通知した計数通番である。
「前回遊技情報」は、CU3Fに前回通知した遊技情報であり、「遊技情報数」、「遊技情報1」〜「遊技情報n」の情報を含んでいる。「遊技情報数」は、CU3Fに前回通知した遊技情報の個数(0〜n)である。なお、n=0〜22で可変長である。「遊技情報1」は、CU3Fに前回通知した遊技情報1である。「遊技情報n」は、CU3Fに前回通知した遊技情報nである。遊技情報nには、たとえば、CU3Fに前回通知した種別情報や遊技賞球情報などが含まれる。
なお、「前回最終送信加算通番」は、CU3Fにおいて状態情報要求を送信時、P台2Fにおいて状態情報要求受信時に、CU3F側、P台2Fともに前回最終送信加算通番として記憶する通番である。
P台2Fのリカバリ処理(遊技情報)において、後述する計数履歴シーケンスでセキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」と、P台2Fで保持している「店舗コード」および「SC基板ID」との一致判定を行ない、「店舗コード」が不一致の場合には、リカバリデータを無しとして処理する。一致している場合には以下の処理を行なう。
遊技情報のリカバリデータがある時は「遊技情報格納有無」を格納有:0x01にし、前回の「遊技玉数」、前回の「遊技玉情報」、前回の「計数要求玉数」、前回の「計数通番」、前回の「遊技情報数」および前回の「遊技情報1〜n」にP台2Fが保持しているリカバリデータをセットする。遊技情報のリカバリデータがない時または前回最終送信通番が0の時は「遊技情報格納有無」を格納無“0x00”にし、前回の「遊技玉情報」、前回の「計数要求玉数」、前回の「計数通番」および前回の「遊技情報数」をALL“0”をセットする。ただし、遊技玉数は前回通知した遊技玉数をセットする。なお、P台2Fが保持している店舗コードが全て“F”(16進数)の場合は、店舗コードが一致していると判定する。
セキュリティ基板325Fから通知された「店舗コード」と、P台2Fで保持している店舗コードと不一致と判定した場合、カード無しとして処理する。つまり、「前回挿入中カードID」、「前回カード挿入時刻」をALL“0”をセットする。
P台2Fは、状態情報要求応答時の通番を前回最終送信通番として記憶する。セキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」とP台で保持している情報と比較して不一致の場合は前回最終送信通番=0として通知する。セキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」とP台で保持している情報と比較して一致の場合は記憶している前回最終送信通番を通知する。
P台2Fは、状態情報応答の送信時に計数通番を前回最終送信計数通番として記憶する。SC325bFから通知された「店舗コード」および「SC基板ID」とP台で保持している情報と比較して不一致の場合は前回最終送信計数通番=0として通知する。セキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」とP台で保持している情報と比較して一致の場合は記憶している前回最終送信計数通番を通知する。
なお、また、CU3Fは、P台2Fより通知された「前回最終送信通番」の処理を実施していなかった場合、前回遊技台情報を使用してリカバリ処理を行なう。なお、「前回最終送信通番」の処理を実施している場合は、CU3Fは、前回遊技台情報のみ使用してリカバリ処理を行なう。ただし、計数玉数のリカバリは実施しない。
また、通信相手の不一致等(たとえばCU3FまたはP台2Fの交換等)でリカバリ処理が実施できない場合、P台2Fの表示情報を元にPOSで手補正することが考えられる。たとえば、P台2Fの表示情報は、可変表示装置278Fの液晶表示画面を利用して表示することが考えられる。あるいは、P台2Fに対して、払出制御部171Fが制御する表示器をさらに設けておき、その表示器に対して手補正のための情報を表示することも考えられる。なお、POSとは、景品管理システムのことであり、景品交換や景品の管理を行なうものである。また、POSは、景品交換や景品の管理を行なうものに限定されず、店舗で商品を販売するごとに商品の販売情報を記録し、集計結果を在庫管理やマーケティング材料として用いる一般的な販売時点管理(Point Of Sales system)であってもよい。
<<3.リカバリ要求2、4.リカバリ応答2>>
CU3FからP台2Fに対してリカバリ要求2という名称のコマンドが送信される。このリカバリ要求2のコマンドは、P台2Fに対して加算リカバリ情報を通知するものである。このリカバリ要求2に対応して、P台2FからCU3Fに対してリカバリ応答2という名称のレスポンスが送信される。このリカバリ応答2のレスポンスは、CU3Fに対して加算リカバリ情報の処理結果を通知するものである。
リカバリ要求2のコマンドは、P台2Fに対して加算リカバリ情報を通知するものであり、「通番」、「コマンド」、「前回最終送信加算通番」および「加算玉数」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。リカバリ要求2は、P台2Fにおいて加算玉リカバリ処理を実施する必要有とCU3Fが判定したときに送信される。CU3Fは、P台2Fより受信したリカバリ応答に含まれる「前回最終送信加算通番」と自身で記憶している「前回最終送信加算通番」とを比較して一致している場合には加算玉リカバリ処理の必要無と判定し、不一致の場合には加算玉リカバリ処理の必要有と判定する。加算玉リカバリ処理の必要有と判定したときにはリカバリ要求2を送信する。
リカバリ要求2に含まれる「前回最終送信加算通番」は、前回接続時にP台2Fに対して最後に送信した状態情報要求のコマンドの加算通番のデータであり、「加算玉数」は、遊技玉の加算玉数のデータである。
次に、P台2Fのリカバリ処理について詳しく説明する。P台2Fのリカバリ処理は、P台2Fがリカバリ要求2に基づいて、CU3Fより通知された「前回最終送信通番」の処理を実施していなかった場合、加算玉数を参照して遊技玉に対して加算を行なう処理である。
リカバリ応答2のレスポンスは、CU3Fに対してP台2Fで加算リカバリ情報の処理結果を通知するもので、「通番」、「コマンド」および「リカバリ結果」を含んでいる。「リカバリ結果」は、“0x00”の場合リカバリ結果の処理OK、“0x01”の場合リカバリ結果の処理NGである。なお、P台2Fが加算玉数を受けられない状態の場合はリカバリ結果として処理NGを応答する。
P台2Fのリカバリ処理(加算玉数)を行なう場合、P台2FはCU3Fより通知された「前回最終送信加算通番」の処理を実施していなかった場合、CU3Fに「リカバリ結果」として処理OKを応答し、CU3Fより通知された加算玉数を、加算レジスタにセットして、ユーザプログラムに通知する。CU3Fから通知された加算玉数=0の場合、加算玉数=0を加算レジスタにセットして、ユーザプログラムに通知してCU3Fに処理OKを応答する。ただし、後述する状態情報要求のCU状態が遊技玉加算要求中(Bit=1)の時に状態情報応答で遊技台状態1が遊技玉加算結果(Bit5=1)と応答した場合,CU3Fに「リカバリ結果」として処理NGを応答し、加算玉数=0を、加算レジスタにセットして、ユーザプログラムに通知する。
CU3Fより通知された「前回最終送信加算通番」が、P台2Fのチップが保持している「前回最終送信加算通番」と同一の場合、加算玉数=0を、加算レジスタにセットして、ユーザプログラムに通知し、CU3Fに「リカバリ結果」として処理NGを応答する。CU3Fより通知された「前回最終送信加算通番」=0の場合は、CU3Fから通知された加算玉数に関わらず加算玉数=0を加算レジスタにセットして、ユーザプログラムに通知してCU3Fに処理OKを応答する。
また、リカバリ処理が完了するタイミング(たとえば、リカバリ完了フラグをセットするタイミング)で、リカバリ結果に係らず、CU3Fより通知された「前回最終送信加算通番」を、レジスタを介してユーザプログラムに通知する。なお、リカバリ要求2の受信がない場合は、P台2Fのチップが保持している「前回最終送信加算通番」を、リカバリ処理が完了するタイミングでユーザプログラムに通知する。
<<5.通信開始要求、6.通信開始応答>>
CU3FからP台2Fに対して通信開始要求のコマンドが送信される。この通信開始要求のコマンドは、P台2Fに対して通信開始を要求するものである。この通信開始要求に対応して、P台2FからCU3Fに対して通信開始応答のレスポンスが送信される。この通信開始応答のレスポンスは、CU3Fに対して通信開始を応答するものである。
通信開始要求のコマンドは、P台2Fに対して正常に通信開始したことを通知するものである。通信開始要求を受信したP台2Fは、それまで記憶していたリカバリ情報をクリアする。通信開始要求のコマンドは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。なお、CU3Fは、通信開始要求後、計数通番を“0”(初期値)に、P台2Fも通信開始要求受信後、計数通番を“0”(初期値)にする。
通信開始応答のレスポンスは、CU3Fに対して、正常に通信開始したことを通知するものであり、CU3Fが、リカバリ情報をクリアする。通信開始応答のレスポンスは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
<<7.通信終了要求、8.通信終了応答>>
CU3FからP台2Fに対して通信終了要求のコマンドが送信される。この通信終了要求のコマンドは、P台2Fに対して通信終了を要求するものである。この通信終了要求に対応して、P台2FからCU3Fに対して通信終了応答のレスポンスが送信される。この通信終了応答のレスポンスは、CU3Fに対して通信終了を応答するものである。
通信終了要求のコマンドは、P台2Fに対して正常に通信終了したことを通知するものであり、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
通信終了応答のレスポンスは、CU3Fに対して、正常に通信終了したことを通知するものであり、CU3FおよびP台2Fが、該通知以降、通信を停止し再起動待ちとする。通信終了応答のレスポンスは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
<<9.状態情報要求>>
CU3FからP台2Fに対して状態情報要求のコマンドが送信される。この状態情報要求のコマンドは、P台2Fに対してCU3Fの状態を要求するものである。CU3Fはこのコマンドを使用して、P台2Fの状態を定期的に確認する。また、状態情報要求のコマンドには、図78に示したCU3F側からP台2F側へ向かう加算玉数が含まれている。
この状態情報要求の具体的データには、「通番」、「コマンド」、「CU状態」、「加算玉数」、「加算通番」、「計数通番」、「玉単価」および「計数受領時刻」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「CU状態」は、P台2Fに対して通知するCU3Fの状態を表わし、Bit0が“1”のときにカード挿入中を、“0”のときカード未挿入をそれぞれ示している。つまり、Bit0は、CU3Fにカード(一般カード/会員カード)が挿入されている状態を表わしている。また、CU3Fのカードストック部に予めストックされているストックカード(一般0円0玉カード)への入金により一般カード挿入中となる。
Bit1が“1”のときカードユニット開店中を、“0”のときカードユニット閉店中をそれぞれ示している。つまり、Bit1は、CU3Fの状態により、P台2Fに対してカードユニット開店状態を通知する。カードユニット開店中を通知するタイミングは、たとえば、開店完了時である。カードユニット閉店中を通知するタイミングは、たとえば、閉店時である。なお、P台2Fは同状態が開店中から閉店中に変化時、保持している遊技玉を全て計数玉数として状態情報応答にてCU3Fに通知する。
Bit2が“1”のときカード返却準備中を、“0”のときカード返却準備中以外をそれぞれ示している。CU3Fは、カード返却、簡易離席、および食事休憩のそれぞれの操作時に、このビットを立てることによって、P台2Fに対して「カード返却準備中」を一定時間(10秒)通知する。P台2Fは、計数ボタン28Fの操作が検出されたときに、このカード返却準備中のビットがオンの状態情報要求を受信していれば、計数ボタンを1回操作したか複数回操作したかに関わらず、あるいは操作継続時間に関わらず、記憶している遊技玉を全て計数玉数として状態情報応答にてCU3Fに通知する。
Bit3が“1”のとき遊技玉加算要求を、“0”のとき遊技玉加算要求無をそれぞれ示している。つまり、Bit3は、玉貸、持玉払出、および貯玉払出の操作時に遊技玉の加算(加算玉数)を要求する。
Bit4が“1”のとき計数玉受領完了を、“0”は計数玉未受領をそれぞれ示している。Bit4は、計数玉受領時に受領完了したことをP台2Fに通知する。つまり、状態情報応答のレスポンス「計数玉数」の送達を確認するために用いている。P台2Fは、計数玉受領完了を受信したときに計数通番もP台2Fと同じ通番かをチェックし、通番が不一致の場合は遊技玉数を減算しないでCU3Fに通知する。
Bit5が“1”のときカード抜き取り待ち中を、“0”はカード抜き取り完了をそれぞれ示している。Bit5は、CU3Fからカード抜き取り待ちとなっている状態をP台2Fに通知する。なお、Bit6〜Bit7は未使用である。
「加算玉数」は、遊技玉の加算玉数であり、CU状態のBit3が“1”のときにのみ加算玉数のデータが有効となる。「加算通番」は、加算用シーケンス番号(0〜255)であり、遊技玉加算要求時にシーケンス番号を更新(+1)して通知する。「計数通番」は、計数用シーケンス番号(0〜255)であり、計数要求時に受信した計数通番をそのまま通知する。ただし、計数通番の連続性が成立しない場合は計数受領を出さない。
「玉単価」は、P台2Fで遊技する遊技玉の1玉当りの玉単価(0.01円〜99.99円)である。CU3FからP台2Fへ通知する玉単価は、たとえばP台2Fの払出制御基板17FのRAMに記憶される。そして、P台2Fは、所定の条件が成立したときにRAMに記憶された玉単価を状態情報応答にてCU3Fに通知する。具体的には、通信不能な状態から復帰するためのリカバリ情報がCU3FからP台2F対して要求(リカバリ要求コマンドがCU3Fから送信)されたときに、P台2Fは、リカバリ応答のレスポンスに玉単価をセットしてCU3Fに送信する。すなわち、玉単価は、リカバリ応答時にCU3Fに通知する以外は外部に出力されない。P台2Fに記憶された玉単価は、リカバリ要求コマンドがCU3Fから送信された場合のリカバリ応答のレスポンスにセットされ、CU3Fに送信される。これにより、リカバリ前にP台2Fで遊技していた遊技玉の玉単価を正確に把握することができ、リカバリ後に遊技者に対して適正な遊技価値で遊技を再開して貰うことができる。また、P台2Fに記憶された玉単価をリカバリ応答時にCU3Fに通知する以外は外部に出力しないことで、不正に玉単価が変更されないようにセキュリティを確保している。さらに、P台2Fに記憶された玉単価は、P台2Fが遊技玉数を保持している場合、新たな玉単価に上書きすることを禁止している。なお、P台2Fが遊技玉数を保持している場合でも、P台2Fに記憶された玉単価の上書きを許可して、保持している遊技玉数を上書きした玉単価に換算して表示を更新する構成でもよい。
「計数受領時刻」は、CU3FがP台2Fからの計数要求を受領した時刻をP台2Fに通知するための情報であり、CU状態のBit4(遊技玉数計数受領応答)が“1”(完了)である場合にのみ有効である。なお、「計数受領時刻」の情報は、P台2Fに通知されるが払出制御部171FのCPU内のみで処理され、ユーザプログラムへ通知されず外部からアクセス可能なRAM等に記憶されることがない。そのため、「計数受領時刻」の情報は、払出制御部171FのCPU内で削除されるため、セキュリティを確保することができる。
<<10.状態情報応答>>
状態情報要求に対応して、P台2FからCU3Fに対して状態情報応答のレスポンスが送信される。この状態情報応答のレスポンスは、CU3Fに対してP台2Fの情報・状態を通知するものである。状態情報応答のレスポンスには、図78に示した最新遊技台情報や遊技玉数が含まれている。
この状態情報応答の具体的データには、「通番」、「コマンド」、「遊技玉数」、「発射玉数」、「アウトロ通過玉数」、「総賞球玉数」、「計数要求玉数」、「計数通番」、「発射強度」、「遊技台状態」、「不正検知情報」および「遊技情報」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「遊技玉数」は、現在の遊技玉数(加算・減算を演算した結果の遊技玉数)である。「遊技玉数」は、CU3Fが後述する「総賞球玉数」「発射玉数」および「計数玉数」を使用してCU3Fの保持している遊技玉数を計算する。その後、CU3Fは、計算したCU3Fの遊技玉数と、P台2Fの遊技玉数とが一致するかをチェックする。
「発射玉数」は、発射個数(送信時に複数発射された玉がある場合は合算する)である。ただし、バック玉数がある場合はバック玉数分を減算する。つまり、「発射玉数」(減算)は、CU3Fが保持している遊技玉数から減算するデータである。カードを保持してない状態で該データを受信した場合、CU3Fは遊技玉数の減算を行なわない。また、CU3Fは、CU3F自体の保持している遊技玉数が0玉の場合、減算を行なわない。
「アウト口通過玉数」は、アウト口154Fを通過した玉の個数(送信時に複数の通過玉がある場合は合算する)である。
「総賞球玉数」は、賞球情報1−nの賞球玉数の合計である。この賞球情報1−nとは、たとえば始動口、大入賞口、入賞口(普通入賞口)等の入賞口種別毎の賞球玉数のことである。なお、「総賞球玉数」(加算)は、CU3Fより送信する「加算要求玉数」は含まない。また、CU3Fは保持している遊技玉数に総賞球玉数のデータを加算する。カードを保持していない状態で総賞球玉数のデータを受信した場合、CU3Fは遊技玉数の加算は行なわない。
「計数要求玉数」は、計数要求した遊技玉の個数である。つまり「計数玉数」(減算)は、CU3Fが保持している遊技玉数から減算し、カード持玉数に加算するデータである。なお、P台2FからCU3Fに送信する減算玉数のデータに計数玉数は利用しない。また、カードを保持してない状態で該データを受信した場合、CU3Fは遊技玉数の減算を行なわない。また、CU3Fは、CU3F自体の保持している遊技玉数が0玉の場合、減算を行なわない。
ただし、カードユニット開店状態が開店中から閉店中に変化した場合は、遊技機が保持している遊技玉を計数して計数玉数として設定する。カードユニット開店状態が開店中のときには計数ボタン28Fの操作が行なわれたことにより遊技玉を計数して計数玉数として設定する。しかし、カードユニット開店状態が開店中から閉店中に変化した場合は、計数ボタン28Fの操作を待つことなく自動的に遊技玉を計数して計数玉数として設定する。
「計数通番」は、計数用シーケンス番号(0〜255)であり、計数要求時にシーケンス番号を更新(+1)して通知する。
「発射強度」は、遊技玉の発射強度の情報である。
「遊技台状態」は、CU3FからP台2Fに対して状態情報要求のコマンドが送信された時点の、P台2Fの状態を示し、「遊技台状態1」、「遊技台状態2」、「遊技台状態3」、および「遊技台エラー状態」の情報を含んでいる。
「遊技台状態1」のBit0は、遊技を許可しているか、禁止しているかを示しており、“0”のときに遊技許可中であり、“1”のとき遊技禁止中である。Bit1は、ファン(遊技者)がプレイ中(玉を発射している)か否かを示しており、0”のとき待機中(ファンが球を発射してない状態)、“1”のとき遊技中(ファンが球を発射している状態)である。ただし、遊技玉が有り、発射ハンドル(打球操作ハンドル25F)をタッチした状態(タッチセンサに触れた状態)で遊技中となる。
Bit2は、遊技玉の有無(遊技玉無の検知)を示している。“0”のとき遊技玉数有、“1”のとき遊技玉数無である。Bit3は、玉の発射が停止している状態で、全ての発射した玉の行方が確定しているか否かを示している。つまり、遊技領域27F内の浮遊玉が全て回収されたか否か示している。ただし、発射停止スイッチ(単発打ちスイッチとも言う)による玉の発射停止は除く。“0”のとき遊技未完了(全ての玉の行方が未確定の状態)、“1”のとき遊技完了(全ての玉の行方が確定している状態)である。なお、P台2Fは、玉の発射を停止してから15秒以上遊技の完了を確認できなかった場合、タイムアウトし、遊技完了とする。
Bit3は、玉の発射が停止している状態で、全ての発射した玉の行方が確定しているか否かを示している。“0”のとき遊技玉未確定(全ての玉の行方が未確定の状態)、“1”のとき遊技玉確定(全ての玉の行方が確定している状態)を示している。ここで、P台2Fは玉の発射を停止してから、たとえば15秒以上遊技玉の行方が確認出来なかった場合、タイムアウトし、遊技玉確定とする。また、P台2Fは電源オン時またはRAMクリア時は遊技玉の行方が確定している状態(遊技玉確定)にセットする。
Bit4は、遊技玉の計数要求の有無(計数ボタン押下の有無)を示しており、“0”のとき要求無、“1”のとき計数開始時の計数玉の払出要求がある場合である。P台は、計数操作が検出されたときに、この計数要求ONの状態情報応答をCU3Fへ送信し、計数要求が受領されたか否かを確認する。“1”のとき計数要求である。Bit5は、遊技玉加算の処理結果を示しており、“0”のとき加算OK、“1”のとき加算NGである。なお、P台2Fは加算NG応答する場合は加算通番を更新しないで通知する。Bit6は、発射停止スイッチの押下状態を示しており、“0”のときイッチ解除状態、“1”のときスイッチ押下状態である。Bit7は予備である。
「遊技台状態2」のBit0は、大当り情報の大当り1(全ての大当り)を表わし、全ての大当り中“1”をセットする。Bit1は、大当り情報の大当り2(大当り+小当り)を表わし、全ての大当り中および小当り中“1”をセットする。Bit2は、大当り情報の大当り3(出玉大の大当り)を表わし、出玉が大きい大当り中“1”をセットする。Bit3は、大当り情報の大当り4(出玉小の大当り)を表わし、出玉が小さい大当り中“1”をセットする。Bit4は、大当り情報の大当り5(出玉中の大当り)を表わし、出玉が中間の大当り中“1”をセットする。Bit5〜Bit7は予備である。
「遊技台状態3」のBit0は、遊技状態情報の大当り中+時短中を表わし、大当り中および時短中“1”をセットする。Bit1は、遊技状態情報の確変中を表わし、確変中“1”をセットする。Bit2は、遊技状態情報の時短中を表わし、時短中“1”をセットする。Bit3は、遊技状態情報の変動中を表わし、変動中“1”をセットする。Bit4〜Bit7は予備である。
「遊技台エラー状態」は、P台2Fで発生中のエラーコードを示し、Bit0〜Bit5を用いて各エラーコードを表現している。なお、Bit0〜Bit5が全て“0”のときにはエラー無である。Bit6は、エラーが発生している場所を特定する情報であり、“0”のとき払出制御、“1”のとき主制御をそれぞれ表わしている。Bit7は、エラーの出力方法を示し、“0”のとき発報のみ、“1”のとき発報+ホールサーバ801Fへの出力を表わしている。
「不正検知情報」は、CU3FからP台2Fに対して状態情報要求のコマンドが送信された時点の、P台2Fで検知した情報であり、「不正検知状態1」、「不正検知状態2」、「不正検知情報1」〜「不正検知情報4」および「加算通番」の情報を含んでいる。
「不正検知状態1」は、主制御基板16Fの不正検知情報である。「不正検知状態1」のBit0は、“1”のとき電波センサ検知の不正検知情報であることを表わしている。Bit1は、“1”のとき磁気センサ検知不の正検知情報であることを表わしている。Bit2は、“1”のとき不正入賞検知の不正検知情報であることを表わしている。Bit3〜Bit7は予備である。
「不正検知状態2」は、払出制御基板17Fの不正検知情報である。「不正検知状態2」のBit0は、“1”のときガラス板開放の不正検知情報であることを表わしている。Bit1は、“1”のとき枠本体開放の不正検知情報であることを表わしている。Bit2は、“1”のとき電波センサ検知の不正検知情報であることを表わしている。Bit3は、“1”のとき近接センサ異常の不正検知情報であることを表わしている。Bit4は、“1”のとき賞球ゴト検知の不正検知情報であることを表わしている。ここで、「ゴト」とは、パチンコ遊技機やスロットマシンにおいて不正な方法で出玉を獲得する不正行為のことである。Bit5は、“1”のとき複合ゴト検知の不正検知情報であることを表わしている。Bit6は、“1”のとき不正加算検知の不正検知情報であることを表わしている。Bit7は、“1”のとき夜間枠開放・監視SW異常検知の不正検知情報であることを表わしている。
「不正検知情報1」は、賞球センサゴト検知(入賞不整合玉数)の情報を示すデータである。「不正検知情報1」は、「不正検知状態2」のBit4が“1”のとき有効となる。「不正検知情報2」は、複合センサゴト検知(発射/OUT不整合玉数)の情報を示すデータである。つまり、発射玉数とアウト玉数(アウト口通過玉数)との不整合を検知したときの情報を示すデータである。「不正検知情報2」は、「不正検知状態2」のBit5が“1”のとき有効となる。「不正検知情報3」は、不正加算検知(不正加算玉数)の情報を示すデータである。「不正検知情報3」は、「不正検知状態2」のBit6が“1”のとき有効となる。「不正検知情報4」は、夜間枠開放情報を示すデータである。「不正検知情報4」は、「不正検知状態2」のBit7が“1”のとき有効となる。
「不正検知情報4」のBit7は、夜間監視スイッチ異常4が発生しているかを示す情報で、“0”のとき正常、“1”のとき異常4発生を表わしている。Bit6は、夜間監視スイッチ異常3が発生しているかを示す情報で、“0”のとき正常、“1”のとき異常3発生を表わしている。Bit5は、夜間監視スイッチ異常2が発生しているかを示す情報で、“0”のとき正常、“1”のとき異常2発生を表わしている。Bit4は、夜間監視スイッチ異常1が発生しているかを示す情報で、“0”のとき正常、“1”のとき異常1発生を表わしている。Bit0〜3は、本体枠開放回数を示す情報で、“0”のとき開放なし、“1”〜“15”は開放回数を表わしている。なお、開放回数は、15回までカウントし、16回以降のカウントは15回でホールドされる。
「加算通番」は、加算用シーケンス番号であり、加算要求時に受信した加算通番をそのまま通知する。ただし、加算通番の連続性が成立しない場合は加算NGを通知する。
「不正検知状態3」は、払出制御基板17Fの不正検知情報である。「不正検知状態3」のBit0は、“1”のとき他店舗遊技玉検知の不正検知情報であることを表わしている。「不正検知状態3」のBit5は、“1”のときP台2Fが過去に接続していたカードユニットが開発用CU3DFであったことを表している(開発用CU接続)。「不正検知状態3」のBit6は、“1”のときP台2Fが過去に接続していたカードユニットが遊技盤開発治具3EFであったことを表している(遊技盤開発治具接続)。「不正検知状態3」のBit7は、“1”のとき接続している遊技機が遊技機シミュレータ2AFであることを表している(遊技機シミュレータ接続)。Bit1〜Bit4は予備である。なお、他店舗遊技玉検知は、たとえばP台の回収玉通過経路にセンサが設けてあり、当該センサが遊技玉に設けてある識別情報(表面の刻印など)を読取り、自店舗の遊技玉の識別情報と一致するか否かを判定する。不一致の場合、遊技玉に他店舗の遊技玉が混入しているとして「不正検知状態3」のBit0を“1”にして、CU3Fに通知する。
「遊技情報」は、CU3FからP台2Fに対して状態情報要求のコマンドが送信された時点の、P台2Fの情報であり、「遊技情報数」、「種別情報1」〜「種別情報n」、「カウント情報1」〜「カウント報n」を含んでいる。
「遊技情報数」は、種別情報・カウント情報の個数(n)であり、n=0〜22(可変長)である。「種別情報1」〜「種別情報n」は、遊技種別情報1〜遊技種別情報nをそれぞれ示している。種別情報は、Bit4からBit7までがデータ種別の情報で、遊技情報のデータ種別を示しており、“0”のとき情報無、“1”のとき始動口、“2”のとき大入賞口、“3”のとき入賞口、“4”のとき図柄停止回数、“5”のとき大当り、“6”のとき小当りである。Bit0からBit3までがデータ番号の情報で、遊技情報のデータ種別毎のデータ番号を示しており、“0”のとき情報無、“1”〜“15”のときそれぞれのデータ番号を表わしている。たとえば、データ種別が“5”の大当りのとき、データ番号は“1”のとき出玉大、“2”のとき出玉小、“3”のとき出玉中、“4”〜“6”のとき予備である。また、データ種別が“6”の小当りのとき、データ番号は“1”のとき小当り、“2”〜“15”のとき予備である。
「カウント情報1」〜「カウント情報n」は、遊技カウント情報1〜遊技カウント情報nをそれぞれ示している。
ここで、カウント情報は、データ種別が始動口、大入賞口、および小入賞口の場合、Bit4からBit7までが賞球玉数の情報で、遊技情報の種別情報毎に入賞時の賞球玉数を示しており、“1”〜“15”のとき賞球玉数のデータをそれぞれ表わしている。また、Bit0からBit3までが入賞個数の情報で、遊技台情報の種別情報毎に入賞個数(累計)を示しており、“1”〜“15”のとき入賞個数のデータをそれぞれ表わしている。カウント情報は、データ種別が図柄停止回数の場合、Bit4からBit7までが“0”に固定され、Bit0からBit3までが図柄停止回数を示しており、“1”〜“15”のとき図柄停止回数を表わしている。カウント情報は、データ種別が大当り、小当りの場合、Bit4からBit7までが“0”に固定され、Bit0からBit3までが当り回数を示しており、“1”〜“15”のとき当り回数を表わしている。
さらに、状態情報応答のレスポンスには、「発射強度信号」、「通過領域信号」、「変動中信号」、「ハンドルタッチ信号」が含まれている。
「発射強度信号」は、上述の発射強度センサ19Fの検出結果である発射強度Tを示している。上述したように、本実施の形態においては、発射強度Tは、ハンドル操作量に応じて0(最小値)から99(最大値)まで変化する可変値である。なお、パチンコ玉の発射間隔(はたとえば0.6sec)よりもP台2FとCU3Fとの通信間隔(たとえば200msec)が短い場合には、基本的に1玉ごとに発射強度信号が出力されることになる。また、実際に発射されたか否かを示すデータとセットで発射強度信号が出力されるようにしてもよい。
「通過領域信号」は、上述した通過領域信号を示している。なお、上述したように、本実施の形態においては、通過領域信号は通過領域信号A1〜A8のいずれかである。なお、各通過領域信号には、各通過領域信号が検出された時点の発射強度Tが紐付けされている。
「変動中信号」は、パチンコ玉が始動入賞口275F,276F、277Fのいずれかを通過したことに伴って可変表示装置278Fに表示される図柄が変動していることを示している。
「ハンドルタッチ信号」は、遊技者が打球操作ハンドル25Fに触れていることがタッチセンサによって検出されていることを示している。
<<11.カード挿入通知、12.カード挿入応答>>
CU3FからP台2Fに対してカード挿入通知のコマンドが送信される。このカード挿入通知のコマンドは、P台2Fに対してカード挿入を通知するものである。このカード挿入通知に対応して、P台2FからCU3Fに対してカード挿入応答のレスポンスが送信される。このカード挿入応答のレスポンスは、CU3Fに対してカード挿入通知を受信した旨の応答である。
カード挿入通知のコマンドは、カード挿入時に、P台2Fに対して挿入されたカードのカードIDと挿入時刻を通知し、「通番」、「コマンド」、「カードID」、「カード挿入時刻」、「店舗コード」および「SC基板ID」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「カードID」は、CU3Fに挿入されたICカードの識別ID情報であり、P台2Fが保持している遊技玉との紐付に使用する。「カード挿入時刻」は、CU3Fのカード挿入/排出口309F(図73参照)にICカードが挿入された時刻であり、年情報を2桁YY、月情報を2桁MM、日情報を2桁DD、時間情報を2桁hh、分情報を2桁mm、秒情報を2桁ssで表されるデータである。カード挿入時刻は、P台2F保持の遊技玉が当日玉か過去玉かの判断に使用する。
「店舗コード」は、CU3Fが設置されている店舗識別コードであり、P台2Fが保持している遊技玉との紐付に使用する。また、CU3Fが店舗移動されたか否かを判定するためにも使用する。CU3Fは、自らが設置されている店舗コードを記憶している。なお、店舗コードは、セキュリティ基板325Fより情報付加してP台に通知する。「SC基板ID」は、CU3Fを識別するためのSC基板IDであり、CU3Fが交換されたか否かを判定するために使用する。SC基板IDは、セキュリティ基板325Fより情報付加してP台2Fに通知する。P台2Fの払出制御部171Fは、これらのカードID(C-ID)やカード挿入時刻等のカード挿入通知コマンドで通知される情報を記憶する。なお、「店舗コード」および「SC基板ID」はユーザプログラム側に通知せず、払出制御回路内で削除される。
カード挿入応答のレスポンスは、CU3Fに対して正常にカード挿入通知を受信したことを通知するもので、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
カード挿入/返却通知時のP台2Fの動作について説明する。まず、CU3Fのカード挿入/排出口309Fに会員カードまたは一般カードが挿入されるか、一般0円0玉カードへの入金が行なわれるかすることで、カード挿入通知としてP台2Fに対してカードIDやカード挿入時刻などの情報が通知される。P台2Fは、カード挿入通知があると当該カードIDやカード挿入時刻などの情報をバックアップする。ただし、カード挿入通知コマンドを受信し、且つCU3Fの状態がカード挿入中状態(CU状態のBit0=1)の情報を含む状態情報要求を受信した場合(P台2Fでカード挿入中状態と判断する場合)、P台2FはカードIDやカード挿入時刻などの情報をバックアップしないで応答のみ送信する。また、CU3Fのカード返却ボタン322Fが押下されると、P台2Fに対してカード返却通知が行なわれ、P台2FはバックアップしてあるカードIDやカード挿入時刻などの情報をクリアする。なお、カード挿入中状態が解除される条件は、P台2Fがカード返却通知コマンドを受信した時である。
<<13.カード返却通知、14.カード返却応答>>
CU3FからP台2Fに対してカード返却通知のコマンドが送信される。このカード返却通知のコマンドは、P台2Fに対してカード返却を通知するものである。このカード返却通知に対応して、P台2FからCU3Fに対してカード返却応答のレスポンスが送信される。このカード返却応答のレスポンスは、CU3Fに対してカード返却を応答するものである。
カード返却通知のコマンドは、P台2Fに対してカード返却を通知するもので、CU3Fが、「カード返却」ボタン押下時に同通知を送信する。カード返却通知には、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
カード返却応答のレスポンスは、CU3Fに対してカード返却通知の応答を送信するもので、「通番」、「コマンド」、「カードID」、「カード挿入時刻」のデータが含まれている。「通番」、「コマンド」、「カードID」および「カード挿入時刻」は、前述と同じであるので説明を繰返さない。なお、CU3Fは、カード返却応答の際、コマンドに含まれるカードIDと現在挿入中のカードのIDとが一致しない場合や、コマンドに含まれるカード挿入時刻に問題がある場合、カード返却を行なわない、持玉のカードへの書込みを禁止するなどの処理を行なう。
ここで、カード挿入通知時またはカード返却通知時のP台2Fの動作について説明する。カード挿入通知時に、CU3Fで会員カード挿入、一般カード挿入、または一般0円0玉カードへの入金の操作を行なうと、P台2FはカードIDおよびカード挿入時刻のバックアップを行なう。カード返却通知時に、CU3Fで「カード返却」ボタンの押下の操作を行なうと、P台2FはカードIDおよびカード挿入時刻のクリアを行なう。
<<15.通信テスト要求、16.通信テスト応答>>
CU3FからP台2Fに対して、通信テスト要求のコマンドが送信される。この通信テスト要求のコマンドは、P台2Fに対してテストデータを通知するものである。この通信テスト要求に対応して、P台2FからCU3Fに対して、通信テスト応答のレスポンスが送信される。このカード返却応答のレスポンスは、CU3Fに対してテストデータを応答するものである。
通信テスト要求のコマンドは、P台2Fに対してテストデータを通知するものである。なお、P台2Fに対して通知するテストデータは暗号化していない。通信テスト要求のコマンドは、「通番」、「コマンド」、および「テストデータ」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。「テストデータ」は、P台2Fに対して通知するテスト用のデータで任意のデータである。
通信テスト応答のレスポンスは、CU3Fに対してテストデータを通知するものである。なお、CU3Fに対して通知するテストデータも暗号化していない。通信テスト応答のレスポンスは、「通番」、「コマンド」、および「テストデータ」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。「テストデータ」は、CU3Fに対して通知するテスト用のデータで任意のデータである。
<<17.計数履歴要求、18.計数履歴応答>>
CU3FからP台2Fに対して計数履歴要求のコマンドが送信される。この計数履歴要求のコマンドは、P台2Fに対して計数履歴を要求するものである。この計数履歴要求に対応して、P台2FからCU3Fに対して計数履歴応答のレスポンスが送信される。この計数履歴応答のレスポンスは、CU3Fに対して計数履歴を通知するものである。
計数履歴要求のコマンドは、P台2Fに対して計数履歴を要求するもので、CU3Fが、認証シーケンス後の計数履歴シーケンスでP台2Fに対して送信する。計数履歴要求には、「通番」、「コマンド」、「店舗コード」および「SC基板ID」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「店舗コード」は、CU3Fが設置されている店舗識別コードであり、P台2Fが保持している遊技玉との紐付に使用する。なお、店舗コードは、セキュリティ基板325Fより情報付加してP台に通知する。「SC基板ID」は、CU3Fを識別するためのSC基板IDであり、CU3Fが交換されたか否かを判定するために使用する。SC基板IDは、セキュリティ基板325Fより情報付加してP台2Fに通知する。
SC基板IDの出荷メーカコードの検知処理について説明する。SC基板IDには、識別コードと出荷メーカコードとが含まれている。P台は、SC基板IDに含まれている出荷メーカコードを検知することで接続しているユニット(商用のCU3Fや開発用ユニットなど)を認識している。
具体的に、P台は、接続するユニットが商用のCU3F以外の接続装置(具体的には、開発用ユニットや、遊技盤開発治具)であるか否かを検知する場合について説明する。これら商用に使用しない開発用ユニットや遊技盤開発治具が接続されていたときの遊技履歴が、その後に接続された商用に使用されるユニット(CU3F)に引き継がれると、開発時に付与した遊技玉で商用時に遊技が可能となる不具合が生じてしまう。そこで、当該不具合を回避するために、P台2Fは、ユニットと接続した際に開発用ユニットや遊技盤開発治具が接続されているか否かを検知し、その結果をリカバリレジスタに記憶する。
P台2Fは、ユニットと接続した際に開発用ユニットや遊技盤開発治具が接続されているか否かを検知するために、計数履歴要求前のSC基板IDの出荷メーカコードと、計数履歴要求後のSC基板IDの出荷メーカコードとを比較する。まず、計数履歴要求前のSC基板IDの出荷メーカコードが“なし”の場合、計数履歴要求後のSC基板IDの出荷メーカコードがいずれであっても開発用ユニットや遊技盤開発治具と検知しない。計数履歴要求前のSC基板IDの出荷メーカコードと計数履歴要求後のSC基板IDの出荷メーカコードとが一致する場合も、開発用ユニットや遊技盤開発治具と検知しない。
しかし、計数履歴要求前のSC基板IDの出荷メーカコードと計数履歴要求後のSC基板IDの出荷メーカコードとで、上位バイトは一致するが下位バイトは異なる場合、開発用ユニットと検知する。また、計数履歴要求前のSC基板IDの出荷メーカコードの上位バイトが商用ユニットのコードで、計数履歴要求後のSC基板IDの出荷メーカコードの上位バイトが遊技盤開発治具以外のコードの場合も、開発用ユニットと検知する。計数履歴要求前のSC基板IDの出荷メーカコードの上位バイトが商用ユニットのコードで、計数履歴要求後のSC基板IDの出荷メーカコードの上位バイトが遊技盤開発治具のコードの場合、遊技盤開発治具と検知する。
なお、P台2Fは、開発用ユニットが接続されていたことの検知をリカバリレジスタのBit4を“1”にすることで記憶し、遊技盤開発治具が接続されていたことの検知をリカバリレジスタのBit5を“1”にすることで記憶する。
また、計数履歴要求前のSC基板IDの出荷メーカコードが“なし”の場合、P台2Fに記憶しているSC基板IDの出荷メーカコードは、リカバリ処理が行なわれた後に新たに接続したユニットのSC基板IDの出荷メーカコードを上書きする。計数履歴要求前のSC基板IDの出荷メーカコードが“ある”の場合、P台2Fに記憶しているSC基板IDの出荷メーカコードは、リカバリ処理する遊技玉がなければ、リカバリ処理が行なわれた後に新たに接続したユニットのSC基板IDの出荷メーカコードを上書きする。しかし、P台2Fに記憶しているSC基板IDの出荷メーカコードは、リカバリ処理する遊技玉があれば、リカバリ処理が行なわれた後に新たに接続したユニットのSC基板IDの出荷メーカコードへの上書きを禁止する。なお、SC基板IDの出荷メーカコードの上書きの禁止状態は、P台2FのRAMをクリア(特に遊技玉数のクリア)することで解除される。遊技玉数がある場合にSC基板IDの出荷メーカコードの上書きを禁止することで、開発用ユニットで付与した遊技玉数が、その後接続した商用ユニットで遊技可能な遊技玉数としてリカバリ処理されることを防止することができる。
計数履歴応答のレスポンスは、CU3Fに対して計数履歴を通知するもので、P台2Fが、計数履歴要求コマンドを受けてP台2Fで記憶している計数履歴の情報をCU3Fに対して送信する。計数履歴応答には、「通番」、「コマンド」、「計数履歴結果」、「計数履歴1」および「計数履歴2」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「計数履歴結果」は、P台2Fでの計数履歴処理により計数履歴がP台2Fに記憶されているか否かを示す情報である。ここで、計数履歴は、P台2Fが計数要求ON状態から計数要求OFF状態までの間にP台2F側から計数要求玉数としてCU3F側に払出した遊技玉数の履歴であり、計数要求時の「カードID」、CU3Fからの計数受領応答(計数応答ON)を受けたときに含まれている「計数受領時刻」および計数要求OFF状態までに払出した計数玉数の累積数「累積計数玉数」の情報も含んでいる。なお、P台2Fでは、過去2回分の履歴(計数要求ON状態から計数要求OFF状態までの期間の遊技玉数の履歴を1回分とする)を保持している。
計数履歴結果では、“0x00”の場合履歴なし、“0x01”の場合履歴あり(計数履歴1の情報あり)、“0x02”の場合履歴あり(計数履歴2の情報あり)をそれぞれ表している。
「計数履歴1」は、過去2回分の履歴のうち直近の履歴(最終の計数)であり、「カードID」、「計数受領時刻」、「累積計数玉数」および「遊技玉数」の情報を含んでいる。「カードID」は計数要求時にCU3Fに挿入されていたカードの識別情報である。「計数受領時刻」は、P台2Fから計数要求のあった遊技玉数をCU3Fが受領した時刻である。「累積計数玉数」は、計数要求ON状態から計数要求OFF状態までの期間に計数された計数玉数の累計数である。「遊技玉数」は、計数終了時にP台2Fに保持されていた遊技玉数である。
「計数履歴2」は、過去2回分の履歴のうち古い履歴(最終の計数のひとつ前の計数)であり、「カードID」、「計数受領時刻」、「累積計数玉数」および「遊技玉数」の情報を含んでいる。「カードID」、「計数受領時刻」、「累積計数玉数」および「遊技玉数」の情報は、「計数履歴1」に含まれる情報と同じ種類の情報であり、詳細な説明を繰返さない。
次に、P台2Fで保持している計数履歴データをCU3Fに出力する条件について説明する。P台2Fは、計数履歴シーケンスにおいてCU3Fから受信した計数履歴要求コマンドに含まれる「店舗コード」および「SC基板ID」が保持している「店舗コード」および「SC基板ID」と一致する場合、計数履歴応答のレスポンスに「計数履歴結果」、「計数履歴1」および「計数履歴2」を含めてCU3Fに出力する。また、P台2Fは、CU3Fから受信した計数履歴要求コマンドに含まれる「店舗コード」が保持している「店舗コード」と一致していれば「SC基板ID」が異なっても、計数履歴応答のレスポンスに「計数履歴結果」、「計数履歴1」および「計数履歴2」を含めてCU3Fに出力する。これは、店舗内でP台2FとCU3Fとの組合せを変更することを考慮しており、同じ店舗内であればP台2Fに記憶した計数履歴データを別のCU3Fに引継いだとしても不利益を与えないためである。
しかし、P台2Fは、CU3Fから受信した計数履歴要求コマンドに含まれる「店舗コード」が保持している「店舗コード」と異なっていれば「SC基板ID」が一致していても、計数履歴応答のレスポンスに「計数履歴結果」、「計数履歴1」および「計数履歴2」を含んでCU3Fに出力することを禁止する。これは、同じCU3Fであっても別の店舗に移された場合、同じ「SC基板ID」を保持したP台2Fと接続しても計数履歴データを引継いでしまうと当該別の店舗に不利益を与えてしまう可能性があるためである。
もちろん、P台2Fは、CU3Fではなく、遊技盤開発治具や開発用ユニットに接続された場合や、何らユニットと接続されていない場合にはP台2Fに記憶した計数履歴データを出力することはない。計数履歴データの出力を制限することで、P台2Fおよび当該P台2Fを含む遊技用システムのセキュリティを強化している。
<CUとP台との通信における主なシーケンス>
<<コマンド、レスポンスの送信>>
まず、CU3FとP台2Fとの間でのコマンドおよびレスポンスの送信について説明する。CU3F(1次局)からP台2F(2次局)に対してコマンドが送信され、P台2Fはそのコマンドに応答してレスポンスをCU3Fに返信する。つまり、業務電文の送信は、CU3Fを1次局、P台2Fを2次局としたコマンド/レスポンス方式である。
CU3FからP台2Fへの最初のコマンドの送信から次のコマンドの送信までの期間が、200msすなわち0.2秒に制御される。またP台2FからCU3Fへのレスポンスの送信を行なった後次のレスポンスの送信までの期間が200msすなわち0.2秒に制御される。
このように、CU3FとP台2Fとの間で200msの間隔でコマンドおよびレスポンスの双方が送信される。一方、P台2Fは、打球操作ハンドル25Fを操作することによって、1分間に100発のパチンコ玉が遊技領域27F内に打込まれるから、打球発射時間間隔は、0.6秒である。その結果、玉を1発発射する間に複数のコマンドおよびレスポンスが送受信されることになる。
それゆえ、P台2FからCU3Fへは、遊技玉数の変化量を通知するためのレスポンスが玉の発射時間間隔よりも短い間隔で次々と送信されることになる。その結果、P台2Fは、遊技玉数の変化量を細やかにCU3Fに対して通知可能となる。
なお、ここでは、コマンドおよびレスポンスの送信間隔を200msにしたが、送信間隔をこれよりも長い間隔としても、また、より短い間隔としてもよく、たとえば、その送信間隔をP台2Fの発射時間間隔と一致させることも考えられる。
<<CU側の通信回線断検知>>
次に、CU3F側で通信断が検知された場合の処理について説明する。CU3FがP台2Fに対してコマンドを送信してから200ms間にレスポンスを受信できなかった場合、再度同じコマンドをP台2Fに送信する。さらにその200ms後までの間にレスポンスを受信できなかった場合には、同じコマンドをP台2Fに送信するという2回目の再送を行なう。同じコマンドを最大14回までP台2Fに再送する。14回目の再送を行なってもP台2Fからレスポンスを受信できなかった場合、CU3Fは3秒後に通信異常と判断して「通信断」とする。この通信異常は、CU3FのコネクタとP台2Fのコネクタとが離脱している場合あるいは接続配線の断線さらにはP台2Fの電源断などの原因が考えられる。CU3Fは、コマンドの再送時に通番のカウントアップを行なわない。
<<P台側の通信回線断検知>>
P台2F側で通信断を検知した場合の処理について説明する。CU3FからP台2Fへコマンドが送信され、P台2Fではそのコマンドに応答してレスポンスをCU3Fに返信する。その後CU3FからのコマンドがP台2Fに送信されてこない状態が3秒間継続した場合、P台2Fは通信断と判断し、発射モータ18Fの駆動を停止させて遊技を停止する。この通信断の発生原因も、CU3FのコネクタとP台2Fのコネクタとの離脱、接続配線の断線、あるいはCU3Fの電源断などが考えられる。
なお、P台2F側で通信断を検知するコマンド、レスポンスには、リカバリ要求/リカバリ応答、リカバリ要求2/リカバリ応答2、通信開始要求/通信開始応答、通知終了要求/通信終了応答、および通信テスト要求/通信テスト応答のコマンド、レスポンスを含まない。
<<電源投入>>
次に、電源投入時の接続シーケンスの処理について説明する。図80に示すシーケンス処理は、CU3FとP台2Fとの通信が正常に終了した後の通信再開時に実行される処理である。具体的には、カードが挿入されていない待機中において、CU3Fの電源をOFFにした後の通信再開時に実行される。典型例は、遊技場において1日の営業が終了して電源を立下げ、翌日営業開始時に電源を立上げる場合である。
まず、電源を投入する。電源投入時においては、P台2Fでは発射モータ18Fを停止させて遊技を停止させてから通信を開始する。その後、認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、前回最終送信通番および前回最終送信計数通番を含むリカバリ要求をP台2Fへ送信し、P台2Fに対してリカバリ情報を要求する。P台2Fは、CU3Fより通知された前回最終送信計数通番を参照して、計数リカバリ処理を実行する。具体的に、P台2Fは、前回最終送信計数通番を参照して、CU3Fが計数処理を実施していなかった場合、計数要求をなかったものとし、CU3Fが計数処理を実施済の場合、計数前の遊技玉数から計数玉数を減算して遊技玉を確定する。
計数リカバリ処理の実行後、P台2Fは、P台2F内部(具体的には払出制御基板17F)でバックアップしている遊技情報リカバリデータをレスポンスとしてCU3Fへ返信する(リカバリ応答)。リカバリ情報としては、前回最終送信通番、前回挿入中カードID、前回カード挿入時刻、前回最終送信加算通番および前回遊技台情報などが含まれている。
リカバリ応答を受けたCU3Fでは、リカバリ情報に含まれる前回最終送信加算通番の処理を実行していなかった場合、リカバリ情報に含まれる前回遊技台情報を使用してCU3Fの加算リカバリ処理を実施する。CU3Fは、加算玉リカバリ処理を実施する場合、P台2Fに対して、リカバリ要求2をP台2Fへ送信し、P台2Fに対してリカバリデータを送信する。このリカバリデータには、前回最終送信通番、および加算玉数が含まれている。
それを受けたP台2Fでは、受信したリカバリデータに基づいて加算リカバリ処理を実行し、その結果をレスポンスとしてCU3Fへ返信する(リカバリ応答2)。なお、P台2Fが加算玉数を受けられない状態の場合はリカバリ結果としてリカバリ処理NGを応答する。
このリカバリ処理は、CU3FとP台2Fとの間での互いのデータの整合性を回復するための処理であり、電源起動時に実行されるばかりでなく、トラブルが発生し復旧したときにも、実行される。
CU3Fは、リカバリ要求などのコマンドを送信する度に通番をカウントアップする。ただし、コマンドの再送時の際にはカウントアップしない。P台2Fは、前回受信した通番と同じ通番のコマンドを受信した場合には、通信不良が発生してCU3Fがコマンドを再送したと判断する。CU3Fはコマンドの送信し、同じ通番のレスポンスがP台2Fから通知された時に通番をバックアップする。P台2Fは、受信したコマンドに対応するレスポンスを送信する際に、受信した通番をそのままCU3Fに通知する。P台2Fはレスポンスの送信時に通番をバックアップする。
CU3Fは、認証シーケンスが終了した後、通番を“1”としてリカバリ要求のコマンドをP台2Fに送信する。P台2Fは、受信した通番“1”をそのままリカバリ応答のレスポンスとしてCU3Fに返信する。さらに、CU3Fは、通番を“2”としてリカバリ要求2のコマンドをP台2Fに送信する。P台2Fは、受信した通番“2”をそのままリカバリ応答2のレスポンスをCU3Fに返信する。
その後、CU3Fは、通番をカウントアップして“3”として、通信開始要求のコマンドをP台2Fへ送信する。なお、CU3Fは、リカバリ要求2を送信しなかった場合、通番は1カウントダウン(−1)した“2”となる。P台2Fでは、それを受けて、リカバリデータをクリアする。そして、P台2Fは、受信した通番“3”のまま、通信開始応答のレスポンスをCU3Fへ返信する。これ以降、CU3FとP台2Fとの間で、状態情報要求のコマンドと状態情報応答のレスポンスとの送受信が行なわれる。
CU3Fは、通番をカウントアップして“4”として、状態情報要求のコマンドをP台2Fへ送信する。なお、状態情報要求のコマンドには、玉単価の情報が含まれる。当該玉単価がP台2Fに送信されることで、P台2Fは遊技玉が1玉4円で遊技を行なっているのか、1玉1円で遊技を行なっているのかを認識することができる。また、状態情報要求のコマンドは、前述したように200ms周期で送信されるため、遊技玉が発射させる600msの周期の間に最大3回玉単価の情報をP台2Fに送信することが可能である。そのため、P台2Fで遊技する遊技玉の1玉ごとに玉単価を変更することが可能となる。玉単価を少数単位(たとえば1玉単位)の遊技玉ごとに管理することが可能となれば、遊技者の要望(たとえば、小額でゆっくり遊技を行ないたい要望や、短時間に残りの遊技玉数を消費したい要望など)にあわせた多彩な遊技を提供することが可能となる。以降に説明するCU3FからP台2Fに送信される状態情報要求のコマンドにも玉単価の情報が含まれるが、説明するシーケンスの内容に当該玉単価の情報が直接関係ない場合は特に明記しない。
P台2Fは、それを受けて、遊技台情報、遊技情報および前回最終送信通番を更新し、更新したデータを状態情報応答のレスポンスの送信毎にバックアップする。そして、P台2Fは、受信した通番“4”のまま、状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスには、玉単価の情報が含まれない。これは、現在P台2Fで遊技している玉単価の情報を不正に変更してCU3Fに送信し、CU3Fで管理している遊技玉の玉単価に対して不正を行なうことを防止している。これにより、遊技用システムのセキュリティを向上させることができる。
CU3Fは、それを受けて、前回最終送信通番を更新し、更新したデータを状態情報応答のレスポンスの受信毎にバックアップする。
その後、CU3Fは、通番をカウントアップして“5”として、状態情報要求のコマンドをP台2Fへ送信し、P台2Fは、受信した通番“5”のまま、状態情報応答のレスポンスをCU3Fに返信する。
<<カード挿入>>
カードが挿入されたときのCU3FおよびP台2Fの処理について説明する。図81に示すCU3Fは、カード挿入前、通番=n、カード返却準備状態=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。P台2Fでは、それを受けて、通番=n、遊技禁止を含む状態情報応答のレスポンスをCU3Fに返信する。
その後、CU3Fでは、カードが挿入されると、カードリーダライタにカードを取込む指令信号を出力するとともに、取込んだカードに記録されている情報(カードID等)をカードリーダライタが読取って、その読取り情報を受信する等の、カード挿入時処理が実行される。なお、カードリーダライタが読取ったカードに記録されている情報(カードID等)をCU3Fで記憶してもよい。
CU3Fは、カードの挿入が行なわれた後の所定期間、カード情報問合せ中の状態になる。これは、挿入されたカードの適否や当該遊技場で登録されている会員カードであるか否か、あるいは持玉、貯玉やカード残額等をたとえばホールサーバ801Fに問合せて認証している最中であることを表示器312Fに表示するとともにP台2F側の表示器54Fに表示させる処理を実行している最中であることを意味している。
CU3Fは、表示器312Fに挿入されたカードの問合せ中であることを表示している間、挿入されたカードを認証していないので、通番=n+1、カード返却準備状態=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。P台2Fでは、それを受けて、通番=n+1、遊技禁止を含む状態情報応答のレスポンスをCU3Fに返信する。なお、P台2F側の表示器54Fは、CU3Fの表示制御部350Fにより表示制御が行なわれ、カードの問合せ中である旨の表示がなされる。
その後、CU3Fは、挿入されたカードが認証されると、そのカードのカードIDとカード挿入時刻とをCU制御部323FのRAMに記憶させるとともに、通番=n+2、カードID、カード挿入時刻、店舗コードおよびSC基板IDを含むカード挿入通知のコマンドをP台2Fへ送信する。なお、店舗コードおよびSC基板IDは、カード挿入通知のコマンドがセキュリティ基板325Fを通過するときに当該コマンドに付加される情報である。P台2Fでは、それを受けて、受信したカードID、カード挿入時刻、店舗コードおよびSC基板IDのデータを払出制御部171FのRAM等にバックアップするとともに、通番=n+2を含むカード挿入応答のレスポンスをCU3Fに返信する。なお、CU3Fにおいても、挿入されたカードのカードIDをCU制御部323FのRAM等に記憶する。
CU3Fは、それを受けて、通番=n+3、カード返却準備状態=ONを含む状態情報要求のコマンドをP台2Fへ送信することで、カード挿入中である状態をP台2Fに対して通知する。P台2Fは、カード挿入中である状態の通知を受けて遊技を許可し、通番=n+3、遊技許可を含む状態情報応答のレスポンスをCU3Fに返信することで、遊技許可中である状態をCU3Fに対して通知する。
カード挿入中、CU3Fは、通番=n+4、カード返却準備状態=ONを含む状態情報要求のコマンドをP台2Fへ送信し、P台2Fは、通番=n+4、遊技許可を含む状態情報応答のレスポンスをCU3Fに返信する。
さらに、カード挿入中に、CU3FからP台2Fに対してカード挿入通知のコマンドが送信される場合について説明する。まず、CU3Fは、通番=n+x、カードID、カード挿入時刻、店舗コードおよびSC基板IDを含むカード挿入通知のコマンドをP台2Fへ送信する。なお、カード挿入中にカード挿入通知のコマンドが送信される場合、送信されるカードIDやカード挿入時刻は、挿入中のカードのカードIDやカード挿入時刻と異なることが多く、P台2Fに記憶しているカードIDやカード挿入時刻を意図的に変更しようとする不正が行なわれている可能性が高い。
そこで、P台2Fでは、それを受けて受信したカードID、カード挿入時刻、店舗コードおよびSC基板IDのデータを払出制御部171FのRAM等にバックアップを行なわない。なお、P台2Fでのカード挿入中か否かの判断は、状態情報要求のコマンドに含まれるカード返却準備状態=ONの情報に基づき容易に判断することができる。
次に、P台2Fは、受信したカードID、カード挿入時刻などのバックアップを行なわずに、通番=n+xを含むカード挿入応答のレスポンスをCU3Fに返信する。なお、CU3Fにおいても、カード挿入通知のコマンドで送信したカードID、カード挿入時刻などをCU制御部323FのRAM等に記憶しない。これにより、カード挿入中にカードIDを意図的にP台2Fへ送信されて、P台2Fで記憶しているカードIDを改ざんするなどの不正行為を防止することができ、セキュリティを向上させることができる。
図82は、CU3Fにカードが挿入されたときにCU3Fが実行する挿入時処理を示すフローチャート図である。本実施の形態において破線で示すステップは変形例の制御内容を示している。また、実線の矢印は制御の流れを示し、二点差線の矢印は送信される情報の流れを示している。図82において、SF1〜SF7の各ステップはCU3Fが実行する。またSF8〜SF10、SF12〜SF15はP台2Fが実行する。より具体的には、SF8〜SF10、SF12、SF13、SF15の削除処理は、P台2Fに設けられている演出制御基板15Fが実行し、SF14とSF15の送信処理は、演出制御部151Fが設けられた演出制御基板15Fが払出制御部171Fへ送信して払出制御部171FがCU3Fへ送信する。
まずCUは、ステップ(以下単にSFという)1により、中断中であるか否かの判定を行なう。この中断中であるか否かは、中断操作が行なわれて遊技中断のシーケンスが実行されたか否かにより判断する。中断中である場合には、SF2により、挿入されたカードのC−IDおよび種別と中断操作されたカードのC−IDおよび種別とが一致するか否か判定し、一致しない場合にはSF5によりその挿入されたカードを排出して待機中へ移行する。なお、図82では上記「種別」の図示を省略している。
一方、挿入されたカードのC−IDおよび種別と中断操作されたカードのC−IDおよび種別とが一致する場合には、中断操作した遊技者が再びその遊技機に戻ってきて遊技を開始したと判断されるために、制御がSF4へ進み、中断状態を解除し、SF6により遊技を再開する処理が実行される。
一方、SF1により中断中でないと判断された場合には、SF3aで既にカードが挿入中であるか否かの判定を行なう。この挿入中であるか否かは、カード挿入/排出口309Fに設けてあるカードリーダがカードを受け付けているか否かにより判断する。SF3aにより挿入中でないと判断された場合には、挿入されたカードのC−IDと種別を記憶するとともにP台2Fへ送信する処理がSF3により行なわれる。P台2Fでは、そのC−ID,種別を受信し、その受信したC−IDおよび種別とバックアップエリア(たとえば、図76に示す演出制御基板15Fに設けたバックアップデータ記憶部)に記憶されているC−IDおよび種別とを比較する(SF8)。そしてSF9によりその比較結果が一致するか否か判定し、一致しない場合には、離席した遊技者とは異なる遊技者が遊技を開始したと判断し、この挿入時処理のサブルーチンプログラムが終了する。
SF3aにより挿入中であると判断された場合には、挿入中のカードのC−IDおよび種別と異なるC−IDおよび種別がCU3FやP台2Fに上書き記憶されるのを防止するために、SF3での処理をスキップする。
このように、遊技者特定情報(C−ID)を記憶する遊技者特定情報記憶手段(現遊技者遊技履歴データ記憶部)と同一判定処理を行なう同一判定手段(SF8、SF9)とが遊技機の表示制御手段(演出制御部151Fが設けられた演出制御基板15F)に設けられているために、通信手段側(払出制御部171F側)には同一判定処理機能を設けなくて事足り、表示制御手段を有する遊技機と表示制御手段を有しない遊技機との間で共通の通信手段を使用でき、通信手段の少品種大量生産か可能になる。
なお、変形例の制御内容として、SF15とSF7との処理を行なってもよい。SF15により、バックアップエリア(バックアップデータ記憶部)に記憶されている遊技履歴データとC−IDおよび種別とをCU3Fへ送信した後削除する。CU3Fでは、それを受信して、受信したデータをホールサーバ(上位サーバ)801へ送信する。ホールサーバ801Fでは、その受信した遊技履歴データとC−IDおよび種別とをバックアップ記憶する。
一方、SF9により一致すると判定された場合にはSF12へ進み、バックアップエリア(バックアップデータ記憶)の遊技履歴データを現エリア(たとえば、図76に示す演出制御基板15Fに設けたバックアップデータ記憶部)に戻し、その遊技履歴データから新たに遊技履歴データの加算更新を開始する。
なお、変形例の制御内容として、SF10、SF13、SF14の処理を行なってもよい。SF9でYESFの場合には、制御はSF10へ進み、前回のカードが排出されてから所定時間(たとえば20分間)経過したか否かの判断がなされ、経過していないSF10により所定時間が経過していると判断された場合には、SF13により、バックアップエリア(バックアップデータ記憶部)の遊技履歴データとC−IDおよび種別とを削除する処理がなされる。また、SF12の後、SF14により、遊技者が同一である旨の通知をCUへ送信する。なお、変形例の制御内容として、SF10、SF13、SF14の処理およびSF15、SF7の処理を全て行なうように制御してもよい。
カードIDおよび挿入時刻の上書き(更新)する条件についてさらに詳しく説明する。前述したようにカードIDおよび挿入時刻は、カード挿入中には更新することを禁止されている。この禁止する条件として、カード挿入通知のコマンドと状態情報要求のコマンドに含まれるCU状態との関係について図を用いて説明する。図83は、カード挿入通知のコマンド、状態情報要求のコマンドに含まれるCU状態、およびカードの挿入状態の関係を説明するための概念図である。
まず、図83(a)では、カード挿入通知のコマンドをP台2Fが受信する前に状態情報要求のコマンドに含まれるCU状態がカード挿入中状態(Bit0=“1”)となる例を示している。図83(a)に示す状態(1)はカード挿入待ち状態であり、カード挿入通知のコマンドをP台2Fが受信しておらず、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。
次に、図83(a)に示す状態(2)はカード挿入準備状態であり、カード挿入通知のコマンドをP台2Fが受信していないが、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中である場合(Bit0=“1”)である。この場合も、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。図83(a)に示す状態(3)はカード挿入中状態であり、カード挿入通知のコマンドをP台2Fが受信して、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中である場合(Bit0=“1”)である。この場合、P台2Fは、CU3Fがカード挿入中であるとしてカードIDおよび挿入時刻の上書きが禁止される。
次に、図83(a)に示す状態(4)はカード返却準備状態であり、カード返却通知のコマンドをP台2Fが受信していないが、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがまだカードを返却しておらずカード挿入中であるとしてカードIDおよび挿入時刻の上書きが禁止される。図83(a)に示す状態(5)はカード返却状態であり、カード返却通知のコマンドをP台2Fが受信して、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。
図83(b)では、カード挿入通知のコマンドをP台2Fが受信した後に状態情報要求のコマンドに含まれるCU状態がカード挿入中状態(Bit0=“1”)となる例を示している。図83(b)に示す状態(1)’はカード挿入待ち状態であり、カード挿入通知のコマンドをP台2Fが受信しておらず、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。
次に、図83(b)に示す状態(2)’はカード挿入準備状態であり、カード挿入通知のコマンドをP台2Fが受信したが、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合も、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。図83(b)に示す状態(3)’はカード挿入中状態であり、カード挿入通知のコマンドをP台2Fが受信して、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中である場合(Bit0=“1”)である。この場合、P台2Fは、CU3Fがカード挿入中であるとしてカードIDおよび挿入時刻の上書きが禁止される。
次に、図83(b)に示す状態(4)’はカード返却準備状態であり、カード返却通知のコマンドをP台2Fが受信していないが、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがまだカードを返却していないとしてカード挿入中であるとしてカードIDおよび挿入時刻の上書きが禁止される。図83(b)に示す状態(5)’はカード返却状態であり、カード返却通知のコマンドをP台2Fが受信して、CU3Fから送信される状態情報要求のコマンドに含まれるCU状態がカード挿入中でない場合(Bit0=“0”)である。この場合、P台2Fは、CU3Fがカード挿入中でないのでカードIDおよび挿入時刻の上書きが可能である。
このように、カードIDおよび挿入時刻の上書き(更新)する条件を限定することで、カードIDなどを意図的にP台2Fへ送信して、P台2Fで記憶しているカードIDなどを改ざんするなどの不正行為を防止することができ、セキュリティを向上させることができる。
<<プリペイド貸出>>
次に、挿入されたカードのプリペイド残額から遊技玉を貸出すときの処理について説明する。図84に示すシーケンス処理では、挿入されたカードに記録されているプリペイド残額が500円で、遊技玉数が50玉である。まず、CU3Fは、通番=n、遊技玉加算要求=OFF、加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50、加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。このように、加算要求が発生していない間は、加算通番が更新されることはない。
その後、遊技者が1回「貸出」ボタンを押下する貸出操作(玉貸操作)を行なうことにより、CU3Fは、残額の500円分すなわち125玉の貸出を行なう。CU3Fは、玉貸ボタン(貸出ボタン)321Fが押下操作された場合、500円分のプリペイド消費を確定させるとともに、加算玉数=125のデータをバックアップする。このように、残額消費は、貸出操作が行なわれた段階でCU3F側単独で確定する。その後、CU3Fは加算表示中となる。この加算表示中では、残額から125玉分引落して遊技玉に加算している最中であることを表示器54Fに表示させる。
次に、CU3Fは、P台2Fに対して遊技玉の加算要求を行なう。そのため、CU3Fは、通番=n+1、遊技玉加算要求=ON、加算玉数=125および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信する。通番をカウントアップして“n+1”とするとともに、遊技玉の加算要求を行なうため、加算通番もカウントアップして“m+1”とする。CU3Fは、加算通番を“m+1”にカウントアップするとともに、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。それを受けて、P台2Fは、遊技玉数=50(現在の遊技玉数)+125(加算玉数)=175に遊技玉数を更新し、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。そして、P台2Fは、CU3Fに対して遊技玉数=175および遊技玉加算結果=OKを通知するため、通番=n+1、加算玉数=175、遊技玉加算結果=OKおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3Fに返信する。遊技玉の加算要求に対する応答であるため、加算通番をカウントアップせずに、そのまま“m+1”とする。
その後、CU3Fは、通番=n+2、遊技玉加算要求=OFFおよび加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信し、P台2Fは、通番=n+5、加算玉数=175および加算通番=m+1を含む状態情報応答のレスポンスをCU3Fに返信する。遊技玉の加算要求がOFFの場合、状態情報要求および状態情報応答は、通番をカウントアップするが、加算通番はカウントアップしない。
<<持玉払出・貯玉払出(再プレイ)>>
次に、持玉払出、貯玉払出をして再プレイする処理について説明する。この図85では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=n、遊技玉加算要求=OFFおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。このように、加算要求が発生していない間は、加算通番が更新されることはない。
その後、持玉または貯玉が存在する状態で、遊技者が持玉払出ボタンまたは再プレイボタン319Fを押下すると、CU3Fは、持玉または貯玉からの125玉分の消費を確定させる。このように、持玉または貯玉の消費は、持玉払出ボタンまたは再プレイボタン319Fを押下する操作がなされた段階でCU3F側単独で確定する。なお、持玉と貯玉との双方が存在する場合には、持玉消費が優先される。
この持玉を優先して消費する制御に代えて、貯玉再プレイボタンと持玉再プレイボタンとを設け、遊技者が選択して操作することにより、貯玉消費または持玉消費のいずれかを選べるようにしてもよい。すなわち、再プレイボタンは、貯玉(貯メダル)から遊技玉(遊技点)を得るための貯玉(貯メダル)再プレイボタンと、持玉(持点)から遊技玉(遊技点)を得るための持玉(持点)再プレイボタンとの2つで構成してもよい。
CU3Fは、持玉または貯玉からの消費を確定させた後、加算玉数=125の加算要求をP台2Fに通知する。具体的に、CU3Fは、遊技玉の加算処理中であることを表示するとともに、通番=n+1、遊技玉加算要求=ON、加算玉数=125および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信する。遊技玉の加算要求を行なうため、通番をカウントアップして“n+1”とするとともに、加算通番もカウントアップして“m+1”とする。さらに、CU3Fは、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。それを受けて、P台2Fは、遊技玉数=50(現在の遊技玉数)+125(加算玉数)=175に遊技玉数を更新し、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。そして、P台2Fは、通番=n+1、加算玉数=175、遊技玉加算結果=OKおよび加算通番=m+1含む状態情報応答のレスポンスをCU3Fに返信する。遊技玉の加算要求に対する応答であるため、加算通番をカウントアップせずに“m+1”のままとする。
その後、CU3Fは、通番=n+2、遊技玉加算要求=OFFおよび加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信し、P台2Fは、通番=n+2、加算玉数=175および加算通番=m+1を含む状態情報応答のレスポンスをCU3Fに返信する。
<<遊技玉計数(通常)>>
次に、遊技玉の一部を計数して減算する通常時の計数処理について説明する。この図86では、カード返却の操作が検出されることなく計数ボタンが押下された場合を示している。それゆえ、CU3FからP台2Fへ送信されるカード返却準備状態のビットは、いずれもOFF(=0)となっている。このため、以下ではカード返却準備状態のビットの説明を省略する。
また、この図86では、挿入された記録媒体(会員用カードまたはビジターカード)により特定される持玉数が「0」玉であり、当初の遊技玉数が「800」玉の状態となっている。
なお、ここでは、計数ボタンの操作が検出されている間、100点単位での計数が継続し、計数ボタンの操作が検出されなくなった段階で計数動作が終了する例を説明する。
まず、CU3Fは、通番=n、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=800、計数通番=m、計数玉数=0、計数要求=OFFを含む状態情報応答のレスポンスをCU3Fに返信する。
CU3Fから送信された通番nに対して、P台2Fから通番n+1が返信されている。CU3Fから送信された計数通番mに対して、P台2Fからは同じ計数通番mが返信されている。これは、計数通番が、計数要求の発生を契機として更新され、計数の完了をもって更新が終了される特別な通番だからである。
その後、遊技者が、計数ボタン28Fを押下する。この図86では、計数ボタン28Fを1回押下する操作がなされた直後に、通番=n+1、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドがCU3FからP台2Fへ送信されている。
P台2Fは、計数ボタン28Fの操作を検出した場合、状態情報要求のコマンドに対する応答として、計数要求値を具体的に100に設定した通番n+1の状態情報応答をCU3Fへ送信する。ただし、この段階でP台2Fは計数要求分の計数を実行しない。このため、通番n+1の状態情報応答では、依然として遊技玉数=800とされている。また、この状態情報応答は、計数要求を示す電文であるため、計数通番が“m+1”にカウントアップされている。P台2Fは、このとき、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
通番n+1の状態情報応答を受信したCU3Fは、要求されている計数玉数相当の持玉を加算するとともに、持玉の表示を100に更新する。すなわち、CU制御部323Fは、表示制御部350Fに対して計数表示の指令を送信する。表示制御部350Fは、その指令を受けてP台2F側の表示器54Fを表示制御する。その結果、表示器54Fには、遊技玉が計数されてその数が減少する一方で、持玉が増加する画像表示が行なわれる。
この場合、遊技玉が一発ずつ、各台計数器に案内されて計数されていくような演出表示を行なうことが考えられる。この演出表示の他の例としては、遊技玉数のデータが持玉数のデータに経時的に変換されていく表示であってもよい。たとえば、遊技玉数のデータと持玉数のデータとを棒グラフで示し、遊技玉数の棒グラフを減少させつつ持玉数の棒グラフを増加させたり、遊技玉数の棒グラフの一部を持玉数の棒グラフに移動させる表示を繰返したりしてもよい。さらに演出表示の他の例としては、現在の遊技玉数のデータと持玉数のデータをそのままデジタル表示し、遊技玉数を減少させつつ持玉数を増加させたり、遊技玉数の一部を持玉数に移動させる表示を繰返したり、種々の演出表示が考えられる。
さらに、CU3Fは、前回最終送信計数通番を“m+1”に更新して、そのデータをバックアップする。続いて、CU3Fは、P台2Fに対して、通番n+2、計数通番m+1、計数応答=ONの状態情報要求を送信し、要求された計数を終えたことを通知する。
この状態情報要求を受信したP台2Fは、ようやく、計数玉数=100に対応する数だけ遊技玉数を減算し、遊技玉数表示器29Fの表示を800から700に更新する。この段階で、P台2Fは計数要求状態がOFFとなるが、計数ボタンの押下が継続しているため、P台2Fは2度目の計数要求をCU3Fへ送信する。すなわち、計数要求値を具体的に100に設定した通番n+2の状態情報応答をCU3Fへ送信する。ただし、この段階でもP台2Fは計数要求分の計数を実行しない。このため、通番n+2の状態情報応答では、遊技玉数=700とされている。また、この状態情報応答は、新たな計数要求として送信される電文であるため、計数通番を“m+2”にカウントアップして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
通番n+2の状態情報応答を受信したCU3Fは、要求されている計数玉数相当の持玉を加算するとともに、持玉の表示を200に更新する。さらに、CU3Fは、前回最終送信計数通番を“m+2”に更新して、そのデータをバックアップする。続いて、CU3Fは、P台2Fに対して、通番n+3、計数通番m+2、計数応答=ONの状態情報要求を送信し、要求された計数を終えたことを通知する。
この状態情報要求を受信したP台2Fは、計数玉数=100に対応する数だけ遊技玉数を減算し、遊技玉数表示器29Fの表示を700から600に更新する。ところが、この段階で、計数ボタンから遊技者の手が離れており、計数操作が終了している。このため、P台2Fは計数完了を通番n+3の状態情報応答でCU3Fへ通知する。すなわち、現在の遊技玉数=600とともに、計数要求=OFF、計数玉数=0の状態情報応答をCU3Fへ送信する。また、計数要求に対応するすべての計数動作が済んでいるため、この状態情報応答に含まれる計数通番もm+2のままで更新されていない。
この状態情報応答を受信したCU3Fは、計数完了と判定する。図示を省略しているが、CU3Fは、通番n+4、計数通番m+2、カード返却準備状態=OFF、計数応答=OFFの状態情報応答をP台2Fへ送信する。
このように、本実施の形態では、計数玉数を通知する情報状態応答をP台からCUへ送信する際に、P台側で早々と計数玉分の遊技玉の減算を行なっているのではなく、計数玉数を通知する情報状態応答を送信してからこれに対する受領確認をCUから受けた段階で、P台は遊技玉の減算を行なっている。
<<遊技玉計数(自動計数)>>
閉店時、カードが挿入されておらずP台2Fに遊技玉が残っている場合、店員が遊技玉の残っているP台2Fを回り1台1台に店舗カードを挿入して計数操作を行なって残った遊技玉を回収する必要があり、閉店時の作業が煩雑であった。また、従来のように物理的な遊技玉が払出される遊技機とカードユニットとの構成であれば、残った遊技玉を回収してカードユニットをリセットする作業を行なうだけで閉店時の作業を行なうことができる。しかし、本実施の形態のようにP台2FとCU3Fとが相互認証して通信を行ない遊技玉(遊技点)を管理する構成では、カードユニットを単にリセットする作業だけでは残った遊技玉を回収することができず閉店時の作業を行なうことができない。そこで、図87を参照して、閉店時の遊技玉の自動計数処理について説明する。
図87は、遊技場が閉店した時に自動的に行なう計数処理を説明するためのシーケンス図である。まず、CU3Fは、カード持玉=0玉でストックカードが無い状態である。一方、P台2Fは、遊技玉=50玉でCU3Fにカードが挿入されていないことを認識している。そして、CU3Fは、通番=n、CU開店状態=ON、カード挿入状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50、計数通番=m、計数玉数=0、計数要求=OFFを含む状態情報応答のレスポンスをCU3Fに返信する。
CU3FおよびP台2Fが設置されている遊技場において閉店が設定されたときに、カードが挿入されておらずP台2Fに遊技玉が残っていると判断すると、以下に説明する処理を行なう。なお、カードが挿入されていないことは、状態情報要求のコマンドに含まれるカード挿入状態=OFFの情報から判断することができ、P台2Fに遊技玉が残っていることは、状態情報応答のレスポンスに含まれる遊技玉数=50の情報から判断することができる。
CU3Fは、通番=n+1、カードID=0、カード挿入時刻=0を含むカード挿入通知のコマンドをP台2Fへ送信する。つまり、仮想カードであるカードID=0のカードが、CU3Fのカードリーダにカード挿入時刻=0に挿入されたことをP台2Fに対して通知する。このように仮想カードがCU3Fに挿入されるので、店員が遊技玉の残っているP台2Fを回り1台1台に店舗カードを挿入する作業が不要になる。これを受けてP台2Fは、CU3Fにカードが挿入されたと認識して以下の処理が実行される。それを受けて、P台2Fは、通番=n+1を含むカード挿入応答のレスポンスをCU3Fに返信する。
次に、CU3FはP台2Fに対して、CU開店状態OFFを通知する。具体的には、通番=n+2、CU開店状態=OFF、カード返却準備状態=ON、計数通番=mおよび計数応答=OFFを含む状態情報要求をP台2Fへ送信する。
なお、遊技場における閉店設定は、たとえば、当該遊技場に設置されているホール用管理コンピュータまたはホールサーバ801Fから各CU3Fへ閉店する旨の閉店コマンドを一斉配信することによりCU制御部323Fが遊技場での営業の終了を判定して行なわれる。具体的には、ホール用管理コンピュータまたはホールサーバ801Fを係員が閉店操作することにより、各CU3Fへ閉店する旨の閉店コマンドが一斉配信される。また、ホール用管理コンピュータまたはホールサーバ801Fに閉店時間を設定記憶させておき、その閉店時刻になれば自動的に各CU3Fへ閉店コマンドが一斉配信されるように制御してもよい。他の方法としては、店員による営業終了のリモコン操作によって営業終了信号をIR感光ユニット320Fに送信し、CU制御部323Fが遊技場での営業の終了を判定するようにしてもよい。さらなる他の方法としては、各CU3Fに時計機能を設け、閉店時間(たとえば10時)である場合にその閉店時間の所定時間(たとえば20分)経過後の時間(たとえば10時20分)が時計機能により計時されたときに、各CU3FからCU開店状態=OFFを含む状態情報要求をP台2Fへ送信するように制御してもよい。
それを受けたP台2Fでは、通番=n+2、現時点における遊技玉数=50、受信した計数通番mに対して「1」加算更新したm+1の計数通番、計数玉数=50および計数要求=ONを含む状態情報応答をCU3Fへ送信する。つまり、P台2Fは、CU3Fに対して残っている遊技玉の計数を要求するため、遊技玉数=50、計数受付要求、および計数通番カウントアップの情報をCU3Fに通知し、前回最終送信計数通番更新、および計数玉要求状態ONの情報をバックアップする。
それを受けたCU3Fは、P台2Fから送られてきた計数玉数=50を持玉数に加算する。なお、持玉数に加算した計数玉数=50は確定しておらず、CU3Fは、現時点の持玉数=0としたまま、前回最終送信計数通番更新の情報をバックアップする。そして、CU3Fは、計数玉受け取りを通知するため、P台2Fへ返信する。具体的には、通番=n+3、CU開店状態=OFF、カード返却準備状態=ON、計数通番=m+1、および計数応答=ONを含む状態情報要求をP台2Fへ送信する。P台2Fから受け取った計数玉は、仮想カードであるカードID=0、カード挿入時刻=0のカードの持玉数としてCU3Fの記憶手段(たとえばRAMなど)に記憶させる。
それを受信したP台2Fでは、計数玉数を遊技玉数から減算して(遊技玉数=50−計数玉数=50)、遊技玉数=0の表示を行なう。そして、P台2Fは、計数玉数を遊技玉数から減算し、残った遊技玉が無く(遊技玉数=0)計数要求が不要である状態(計数要求状態OFF)を通知するため、通番=n+3、遊技玉数=0、計数通番=m+1、計数玉数=0および計数要求=OFFを含む状態情報応答をCU3Fへ送信する。
残った遊技玉をすべて計数した場合、CU3Fに挿入されている仮想カード(カードID=0、カード挿入時刻=0)を返却する処理が行なわれる。具体的に、CU3Fは、仮想カード(カードID=0、カード挿入時刻=0)を返却したことをP台2Fに通知するため、通番=n+4を含むカード返却通知をP台2Fへ送信する。これを受信したP台は、CU3Fに挿入された仮想カードが返却されたと認識し、通番=n+4、カードID=0、およびカード挿入時刻=0を含むカード返却応答のレスポンスをCU3Fに送信する。
次に、CU3Fは、CU状態がカード挿入状態=OFFになったことをP台2Fに通知する。具体的にCU3Fは、通番=n+5、およびカード挿入状態=OFFを含む状態情報要求をP台2Fへ送信する。これを受けて、P台2Fは、通番=n+5、遊技玉数=0、計数通番=m+1、および計数玉数=0を含む状態情報応答をCU3Fに送信する。
このように、遊技場における閉店時の計数処理の場合には、店員がカードを挿入して計数ボタン28Fの押下操作を行なうことなく、自動的に計数処理が実行されるとともに、残った遊技玉数のすべてが一括して仮想カード(カードID=0、カード挿入時刻=0)の持玉数に計数されCU3Fの記憶手段に保管することができる。なお、CU3Fは、残った遊技玉数を計数した持玉数を、P台2FまたはCU3Fの識別情報とともにホールサーバ801Fに送信してもよい。ホールサーバ801Fでは、CU3Fから送られてきた持玉数を日付、P台2FまたはCU3F別に記憶しておくことで、後日、当該持玉を遊技者に返却することが可能になる。また、CU3Fは、閉店直前に挿入されていたカードIDを、計数した持玉数(残った遊技玉)と関連付けてホールサーバ801Fに送信してもよい。残った遊技玉は、閉店直前に挿入されていたカードIDの遊技者の遊技玉である可能性が高いため、計数した持玉数の持ち主を特定する作業を軽減することができ、後日、計数した持玉数を遊技者に返却することがさらに容易に行なうことができる。
前述の実施例では、カードが挿入されておらずP台2Fに遊技玉が残っている場合の閉店処理を説明したが、カードが挿入されている場合の閉店処理は後述する「遊技玉計数(カード返却)」(図89参照)の処理と同じ処理が実行される。ただし、残った遊技玉の計数処理について、店員が計数ボタン28Fの押下操作を行なって計数処理しても、閉店設定により自動的に計数処理してもよい。いずれにしても、カードが挿入されている場合、閉店処理によりカードが返却され抜き取り待ち状態となるので、当該カードを店員が回収する必要がある。
<<計数履歴処理>>
次に、P台2Fで記憶する計数履歴データの処理について説明する。図88は、P台2Fで記憶する計数履歴データの処理を説明するためのシーケンス図である。図88では、当初の遊技玉数が600玉の状態となっている。まず、CU3Fは、通番=n(図示せず)、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。P台2Fでは、当該状態情報要求のコマンドを受信する前に送信した状態情報応答のレスポンスから、当該状態情報要求のコマンドに対するレスポンスを送信するまでの間に、遊技者が計数ボタン28Fを操作して計数処理が開始される。
すると、P台2Fでは、通番=n(図示せず)、遊技玉数=600、計数通番=m+1、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。ここで、P台2Fでは、計数要求がOFF状態からON状態へ変化するので計数履歴の処理が開始される。具体的には、P台2Fは、計数要求ON状態から計数要求OFF状態までの間にP台2F側から計数要求玉数としてCU3F側に払出した遊技玉数の履歴を1回分の計数履歴として記憶する。すなわち、複数回の計数要求がある場合には、1回目の計数要求として計数要求ON状態になってから計数要求OFF状態になるまでの履歴を1回目の計数履歴として記憶する。その後、2回目の計数要求として次に計数要求ON状態になってから計数要求OFF状態になるまでの履歴は、2回目の計数履歴として記憶される。なお、計数ボタン28Fを押下している期間にもよるが、計数要求ON状態になってから計数要求OFF状態になるまでの間には、複数の計数要求ON状態を含む状態情報応答のレスポンスがCU3Fに返信されている。記憶する計数履歴の中には、計数要求時の「カードID」、CU3Fからの計数応答ON状態の状態情報応答に含まれる「計数受領時刻」、計数要求OFF状態までに払出した計数玉数の累積数「累積計数玉数」および計数終了時の「遊技玉数」の情報を含んでいる。
次に、CU3Fは、通番=n+1(図示せず)、計数通番=m+1および計数応答=ONを含む状態情報要求のコマンドをP台2Fへ送信し、要求された計数を終えたことを通知する。なお、この段階で計数玉数=100は、仮確定である。
この状態情報要求を受信したP台2Fは、計数玉数=100に対応する数だけ遊技玉数を減算して、遊技玉数を照合し500玉なら、仮確定していた100玉を確定する。そして、遊技玉数表示器29Fの表示を600から500に更新する。さらに、遊技者による計数ボタン28Fの操作が継続している場合、P台2Fは、通番=n+1(図示せず)、遊技玉数=500、計数通番=m+2、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。次に、CU3Fは、通番=n+2(図示せず)、計数通番=m+2および計数応答=ONを含む状態情報要求のコマンドをP台2Fへ送信し、要求された計数を終えたことを通知する。なお、この段階で計数玉数=100は、仮確定である。
この状態情報要求を受信したP台2Fは、計数玉数=100に対応する数だけ遊技玉数を減算して、遊技玉数を照合し400玉なら、仮確定していた100玉を確定する。そして、遊技玉数表示器29Fの表示を600から500に更新する。その後、遊技者による計数ボタン28Fの操作が終了している場合、P台2Fは、通番=n+2(図示せず)、遊技玉数=400、計数通番=m+3、計数玉数=100および計数要求=OFFを含む状態情報応答のレスポンスをCU3Fに返信する。P台2Fは、計数要求OFF状態に変更した時、計数履歴に「累積計数玉数」として100玉+100玉=200玉を計数履歴1として記憶する。また、P台2Fは、計数終了時の「遊技玉数」として、計数要求OFF状態に変更した時の遊技玉数を計数履歴1に記憶する。また、P台2Fは、CU3Fから計数応答ON状態の状態情報応答に含まれる「計数受領時刻」を計数履歴1に記憶する。なお、計数履歴1に新たな履歴を記憶させる場合に、既に計数履歴1が存在しているときは当該計数履歴1を計数履歴2として記憶したうえで、新たな履歴を計数履歴1に記憶させる。なお、P台2Fでは、過去2回分の履歴を保持しているため、計数履歴1および計数履歴2として記憶しているが、過去1回分の履歴または過去3回分以上の履歴を記憶してもよい。
このように、計数履歴を記憶することで計数した遊技玉数をリカバリ処理することが可能となり、さらに過去分を複数記憶することで、リカバリ処理の精度を向上させることができる。
<<遊技玉計数(カード返却)>>
次に、カードを返却する際の遊技玉の計数処理について説明する。図89は、遊技者がカード返却操作を行なった場合の計数処理を説明するためのシーケンス図である。図89では、挿入された記録媒体(会員用カード等)により特定されるカード持玉数が0玉であり、当初の遊技玉数が800玉の状態となっている。まず、CU3Fは、通番=n、CU開店状態=ON、カード返却準備状態=OFF、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=800、計数通番=m、計数玉数=0および計数要求=OFFを含む状態情報応答のレスポンスをCU3Fに返信する。
その後、遊技者が、遊技を止める場合や別の遊技台に移動する場合に「カード返却」ボタンを押下する。しかし、遊技者が「カード返却」ボタンを押下した時点では、P台2Fの遊技玉数が800玉で、CU3FはP台2Fの遊技玉数が0玉でないと判定する。また、CU3Fは、遊技者が「カード返却」ボタンを押下したのでカード返却準備状態=ONとして、通番=n+1、CU開店状態=ON、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。なお、CU3Fは、カード返却準備状態=ONの通知を10秒間、P台2Fに通知する。さらに、CU3Fは、P台2Fの遊技玉数が800玉で、0玉でないため、カード返却待機として、表示器54F等に計数操作を促す表示を行なう。
計数操作を促す表示を受けて、遊技者が計数ボタン28Fを押下して、遊技玉を持玉に変換する操作を行なう。P台2Fは、計数ボタン28Fを押下する計数操作が、カード返却準備状態=ONでの計数操作であると判定し、たとえば100玉単位での計数ではなく、一括して計数を処理する。
P台2Fは、遊技玉数800玉の計数受付要求および遊技玉数800玉を一括計数した計数玉数800玉をCU3Fに通知するために、通番=n+1、遊技玉数=800、計数通番=m+1、計数玉数=800および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。ただし、この段階でP台2Fは計数要求分の計数を実行しない。このため、通番n+1の状態情報応答では、依然として遊技玉数=800とされている。また、この状態情報応答は、計数要求の電文であるため、P台2Fは、計数通番を“m+1”にカウントアップして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
これを受けて、CU3Fは、計数玉数800玉を持玉数に加算して、計数玉数800玉を遊技玉数800玉から0玉に減算する。また、CU3Fは、更新した前回最終送信計数通番のデータをバックアップする。そして、CU3Fは、計数玉受取りを通知するため、通番=n+2、CU開店状態=ON、カード返却準備状態=ON、計数通番=m+1および計数応答=ONを含む状態情報要求のコマンドをP台2Fへ送信する。
P台2Fは、CU3Fからの応答を受けて、計数玉数800玉を遊技玉数800玉から減算して遊技玉数0玉を表示器54F等に表示する。さらに、P台2Fは、遊技玉数0玉、計数完了した旨をCU3Fに通知するために、通番=n+2、遊技玉数=0、計数通番=m+1、計数玉数=0および計数要求=OFFを含む状態情報応答のレスポンスをCU3Fに返信する。なお、計数要求がOFFとなるので、計数通番はm+1のままカウントアップせずにCU3Fに送信される。
CU3Fは、遊技者がカード返却ボタン322Fを押下してから10秒経過する前、つまり、カード返却準備状態中に、計数ボタン28Fを押下して遊技玉を持玉に一括計数して遊技玉数を0玉にしているので、カード返却処理を実行する。つまり、CU3Fは、通番=n+3を含むカード返却通知のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n+3、払出制御基板17Fに保持してあるカードIDおよびカード挿入時刻を含むカード返却応答のレスポンスをCU3Fに返信する。カードIDおよびカード挿入時刻をCU3Fに返信後、払出制御基板17Fに保持してあるカードIDおよびカード挿入時刻のデータをクリアする。
それを受けて、CU3Fは、挿入しているカードに記憶しているカードIDと、P台2Fから受信したカードIDとの一致判別を行ない、一致した場合は挿入しているカードを返却し、不一致の場合エラー処理を行ないホールサーバ801Fなどに報告する。CU3Fは、カードIDが一致した場合、カード挿入/排出口309Fに挿入してあったカード(挿入カード)に持玉数800を記憶させてそのカードを遊技者に返却する。また、遊技者がカード挿入/排出口309Fにカードを挿入することなく入金操作により遊技を開始している場合には、CU3Fに設けられているカードストック部にストックされているカード(ストックカード)に持玉数800を記憶させてそのカードを遊技者に返却する。挿入カードまたはストックカードの返却の際、CU3Fは当該カードのカードIDと持玉数のデータとをホールサーバ801Fへ送信し、ホールサーバ801Fが当該カードのカードIDに対応付けて持玉数のデータを記憶してもよい。
その後、CU3Fから返却されたカードは、カード挿入/排出口309Fから抜き取り可能となるため、カードの一部がカード挿入/排出口309Fから突き出た状態(カード抜き取り可能状態)で保持される。CU3Fは、カード抜き取り可能状態であるか否かを判定することが可能なセンサをカード挿入/排出口309Fの近傍に取り付けてあり、当該センサの信号がON状態の場合、カード抜き取り可能状態と判定し、OFF状態の場合、カード抜き取り完了状態と判定する。
そして、CU3Fは、カード返却処理が実行され、カード抜き取り可能状態となった場合、カード返却準備状態OFFおよびカード抜き取り待ち中ONの情報をP台2Fに通知する。そのため、CU3Fは、通番=n+4、CU開店状態=ON、カード返却準備状態=OFF、カード抜き取り待ち中=ON、計数通番=m+1および計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。これを受けて、P台2Fは、カード抜き取り忘れを防止するため、遊技者に対して「カード抜き取って下さい」と可変表示装置278Fに表示する。また、P台2Fは、カードの抜き取りを報知するため、LEDを点灯させたり、スピーカ270Fで「カード抜き取って下さい」と音声出力させたりしてもよい。さらに、P台2Fは、通番=n+4、遊技玉数=0、計数通番=m+1、計数玉数=0および計数応答=OFFを含む状態情報応答のコマンドをCU3Fへ送信する。
カード挿入/排出口309Fの近傍に取り付けたセンサがON状態であれば、CU3Fは、カード抜き取り待ち中=ONを含む状態情報要求のコマンドをP台2Fへ送信する。しかし、遊技者がカード挿入/排出口309Fからカードを抜き取った場合、カード挿入/排出口309Fの近傍に取り付けたセンサがOFF状態となるので、CU3Fは、通番=n+5およびカード抜き取り待ち中=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。
これを受けて、P台2Fは、可変表示装置278Fに表示していた「カード抜き取って下さい」の表示を止め、カードの抜き取りの報知を終了する。なお、カードの抜き取りの報知は、カード抜き取り待ち中=ONを含む状態情報要求のコマンドを受取ってから、カード抜き取り待ち中=OFFを含む状態情報要求のコマンドを受取るまで報知を継続する。さらに、P台2Fは、通番=n+5を含む状態情報応答のコマンドをCU3Fへ送信する。
なお、図89で説明したカードを返却する際の遊技玉の計数処理のシーケンスは、カード返却時に限定されるものではなく、簡易離席・食事休憩時にも同様の処理を適用することができる。ここで、簡易離席とは、遊技者が小用を済ませるために5〜10分程度の短い時間遊技を中断するものである。食事休憩とは、簡易離席よりも長いたとえば30分間等遊技を中断して食事や休憩を行なうものである。
<<異常系シーケンス1>>
次に、図90を参照して、電源断/通信回線断により状態情報要求が未到達となったときの遊技玉数のリカバリ処理について説明する。図90は、電源断、通信回線断線があって、カードユニットからパチンコ遊技機への状態情報要求のコマンドが未到達のときの処理の一例を示す図である。特に、電源断/通信回線断線(たとえば、P台2Fの電源が一旦OFFにした後再度ONになった場合)があって、状態情報要求が未到達(CU3FからP台2Fへコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
図90を参照して、遊技中において電源断が発生する前に、CU3Fは、通番=nを含む状態情報要求をP台2Fに送信している。それを受けて、P台2Fは、遊技台情報CU3Fに通知するため、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答をCU3Fに送信する。P台2Fは、前回遊技台情報となる前回最終送信通番を“n”に更新する。
CU3Fは、通番=nの状態情報応答を受け、前回最終送信通番を“n”に更新してバックアアップする。また、遊技玉数=480、加算玉数=3および減算玉数=23の情報に基づいて、自ら記憶している遊技玉数や加算玉数、減算玉数を更新する。
そして、遊技中においてP台2Fに電源断が発生した後に、通番=n+1を含む状態情報要求がCU3FからP台2Fへ送信された場合に、P台2Fが電源断の状態であるためにその状態情報要求を受信できない。それ以降P台2Fからの状態情報応答が送信されてこないためにCU3Fは、3秒後に通信回線断を検知して停止する制御を行なう。P台2Fが状態情報応答のレスポンスをCU3Fに送信してから、電源断発生までの間、P台2Fにおいて遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
その後、P台2Fの電源断が復旧してONの状態になってP台2Fが動作を開始する。P台2Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801Fを経由して鍵管理サーバ800F)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1および前回最終送信通番=nを含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、まず、P台2Fは、受信したリカバリ要求の前回最終送信通番=nと、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信通番=nとが一致しているか否かを判定する。一致している場合には、通信断の前にP台2FからCU3Fに対して最後に送信した状態情報応答はCU3Fに到達していると判断でき、この場合には、その状態情報応答に含まれる遊技情報に基づいてCU3F側でも遊技情報が更新されていることになる。このため、この場合には、P台2Fは、遊技情報格納無(具体的には前回遊技台情報無)としてリカバリ応答(通番=1、玉単価)をCU3Fへ返信する。仮に、受信したリカバリ要求の前回最終送信通番=nと、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信通番=nとが不一致の場合には、通信断の前にP台2FからCU3Fに対して最後に送信した状態情報応答はCU3Fに到達していないと判断できるため、このような場合には、遊技情報格納有(具体的には前回遊技台情報有)として遊技情報を含むリカバリ応答(通番=1、玉単価)をCU3Fへ返信する。なお、P台2Fは、リカバリ応答のレスポンスをCU3Fに送信する際に玉単価を含めて送信し、リカバリ処理を行なう前に遊技していた遊技玉の玉単価をCU3Fに送信する。これにより、リカバリ処理を行なう前に遊技していた遊技玉の玉単価でリカバリ処理後も遊技が可能となる。以降に説明するP台2FからCU3Fに送信されるリカバリ応答のレスポンスにも玉単価の情報が含まれるが、説明するシーケンスの内容に当該玉単価の情報が直接関係ない場合は特に明記しない。
図90において、CU3Fは、リカバリ応答に含まれる遊技情報格納がないため、加算リカバリ処理は行なわない。なお、リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。遊技情報格納がないため、CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、未通知の遊技台情報(最新遊技台情報である遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3Fに通知するとともに、前回最終送信通番を更新して、当該データをバックアップする。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3Fは、未通知の遊技台情報を含む状態情報応答を受けて、前回最終送信通番を更新して、当該データをバックアップする。なお、状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
<<計数履歴シーケンス>>
次に、図91を参照して、P台2Fで記憶している計数履歴をCU3Fに読出す処理について説明する。図91は、P台2Fで記憶している計数履歴をCU3Fに読出す処理の一例を示す図である。まず、CU3Fは、通番=n、店舗コードおよびSC基板IDを含む計数履歴要求のコマンドをP台2Fへ送信する。P台2Fでは、カード挿入通知のコマンドでCU3Fから送信されて記憶している店舗コードと、計数履歴要求のコマンドでCU3Fから送信された店舗コードとを比較する。P台2Fは、比較した結果で店舗コードが一致する場合、記憶している計数履歴1および計数履歴2のデータをCU3Fに送信できるように計数履歴応答のレスポンスにセットする。すると、P台2Fでは、通番=n、計数履歴1および計数履歴2を含む計数履歴応答のレスポンスをCU3Fに返信する。
一方、P台2Fは、比較した結果で店舗コードが不一致の場合、CU3Fに送信する計数履歴応答のレスポンスに計数履歴なしとしてデータをセットする。図示していないが、P台2Fでは、通番=n、計数履歴なしを含む計数履歴応答のレスポンスをCU3Fに返信する。
このように、計数履歴シーケンスは、P台2Fで記憶した計数履歴をCU3Fに送信することで計数した遊技玉数をリカバリ処理することが可能となり、さらに複数の過去分(計数履歴1および計数履歴2)をCU3Fに送信することで、リカバリ処理の精度を向上させることができる。なお、CU3Fに送信する複数の計数履歴は、2回分に限定されず3回以上の計数履歴でもよい。
<<異常系シーケンス2>>
次に、図92を参照して、電源断/通信回線断により状態情報応答が未到達となったときの遊技玉数のリカバリ処理について説明する。図92は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへ状態情報応答のレスポンスが未到達のときの処理の一例を示す図である。特に、電源断/通信回線断線(たとえば、P台2Fの電源が一旦OFFにした後再度ONになった場合)があって、状態情報応答が未到達(P台2FからCU3Fへコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
図92を参照して、遊技中において電源断が発生した後に、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答がP台2FからCUへ送信された場合に、CUが電源断の状態であるためにその状態情報応答をCUが受信できない。それ以降CU3Fからの状態情報要求が送信されてこないためにP台2Fは、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171Fが発射制御基板31Fへ停止コマンドを送信し、発射制御基板31Fが発射モータ18Fの回転駆動を停止する。この3秒間の間、P台2Fにおいて遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
一方、CU3Fでは、電源断が発生したために、挿入されているカードを強制的に排出して遊技者に返却する制御を行なう。その際、現時点における持玉数をカードに記憶させて排出する。なお、CUの故障等が原因で持玉数をカードに記憶させることができない場合は、定期的に(たとえば5秒毎に)CU3Fから持玉数を受信してバックアップ記憶しているホールサーバ801Fの記憶データ(持玉数)を基に遊技者に損失補填するようにしてもよい。その後、CU3Fの電源断が復旧してONの状態になってCU3Fが動作を開始する。CU3Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801Fを経由して鍵管理サーバ800F)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1および前回最終送信通番=n−1を含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求の前回最終送信通番=n−1と、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信通番=nとを比較判定する。その結果、両者が不一致であるので、電源断の発生前に最後に送信した状態情報応答がCU3Fへ到達していないものと判断する。そこで、P台2Fは、CU3Fに対して未通知の遊技情報を有しているとして遊技情報格納有(具体的には前回遊技台情報有)を含むリカバリ応答(通番=1)をCU3Fへ返信する。つまり、前回遊技台情報である遊技玉数=480、加算玉数=3、減算玉数=23をリカバリ応答に含めてCU3Fへ送信する。
CU3Fは、リカバリ応答に含まれる遊技情報に基づいてリカバリ処理を実行する。ただし、通信回線断を検知する直前に遊技玉の加算要求を送信していないため、加算リカバリ処理は不要である。このため、リカバリ応答を受信した後、リカバリ要求2を送信することなく、通信開始要求を送信する。CU3Fは、この通信開始要求の送信前に、第1チェック処理を実行する。第1チェック処理では、リカバリ応答を受信したCU3FのCU制御部323Fによって、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かがチェックされる。この第1チェック処理は、図104(a)に基づいて後述する。CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fは、P台2Fから受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、電源断の発生前にCU3Fにまで到達しなかった状態情報応答に含まれる未通知の遊技台情報(遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3Fに通知するとともに、前回最終送信通番を更新して、当該データをバックアップする。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3Fは、未通知の遊技台情報を含む状態情報応答を受けて、前回最終送信通番を更新して、当該データをバックアップする。なお、状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
なお、再挿入されたカードのカードIDがカード情報読取処理により適正に読取られた場合に、その読取ったカードIDとリカバリ応答に含まれているカードIDとを照合して一致しているか否かをCU3FのCU制御部323Fが判定するとともに、電源断発生前の遊技開始時に挿入されたカードの挿入時刻をCU制御部323FのRAMが記憶しておりその記憶しているカードの挿入時刻とリカバリ応答に含まれているカード挿入時刻とを比較して一致するか否かをCU3FのCU制御部323Fが判定してもよい。その場合、両者一致すると判定し、加算リカバリが無い場合には、CU3Fは、通信開始要求をP台2Fへ送信する。それを受けたP台2Fでは、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3Fへ返信する。
本実施例では、この遊技者の同一性を判断するときの遊技者を特定可能な遊技者特定情報として、カードIDとカード挿入時刻とを用いている。このカードIDは、会員の遊技者個人を特定する会員用カードのカードIDばかりでなく、ビジターとして来店した遊技者が用いるビジターカードのカードIDも含む。このビジターカードの場合には、不特定の遊技者に使用されるものであり、特定の遊技者個人を特定するものではない。つまり、このカードIDの場合には、電源断/通信回線断の発生前に遊技を行なっていた遊技者と電源断復旧後に遊技を行なおうとしている遊技者とが同一の遊技者であるか否かは特定できるが、その遊技者がどの特定の個人であるかまでは特定できない。よって、上記「遊技者特定情報」とは、特定の遊技者個人を特定するものに限らず、電源断/通信回線断の発生前に遊技を行なっていた遊技者と電源断復旧後に遊技を行なおうとしている遊技者との同一性が判別できる情報をも含む広い概念である。
<<異常系シーケンス3>>
次に、図93を参照して、電源断/通信回線断により状態情報応答が未到達となったときの遊技玉数の別のリカバリ処理について説明する。図93は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへ状態情報応答のレスポンスが未到達のときの処理の別の一例を示す図である。特に、電源断/通信回線断線(たとえば、CU3Fの電源が一旦OFFにした後再度ONになった場合)があって、状態情報応答が未到達(P台2FからCU3Fへコマンドが未到達)で、復旧後通信相手が不一致の場合の計数処理を説明するためのシーケンス図が示してある。この電源のOFF,ONは、たとえばCU3Fの故障、または電源を手動でOFF,ONする、あるいはCU3Fをカードユニットホルダから抜き差しすることによっても、電源がOFF,ONとなる。
図93を参照して、遊技中において電源断が発生した後に、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答がP台2FからCUへ送信された場合に、CUが電源断の状態であるためにその状態情報応答をCUが受信できない。それ以降CU3Fからの状態情報要求が送信されてこないためにP台2Fは、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171Fが発射制御基板31Fへ停止コマンドを送信し、発射制御基板31Fが発射モータ18Fの回転駆動を停止する。この3秒間の間、P台2Fにおいて遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
一方、CU3Fでは、電源断が発生したために、挿入されているカードを強制的に排出して遊技者に返却する制御を行なう。その後、CU3Fの電源断が復旧してONの状態になり、さらにCU3Fを交換して新たなCU3Fが動作を開始する。
なお、CU交換前に稼働していたCU3Fが持玉数を記憶していたときには、その持玉数を別のカード(たとえば、CU内部のカード)に記憶させて排出するようにしてもよい。その際に、CUの故障等が原因で持玉数をカードに記憶させることができない場合は、定期的に(たとえば5秒毎に)CU3Fから持玉数を受信してバックアップ記憶しているホールサーバ801Fの記憶データ(持玉数)を基に遊技者に損失補填するようにしてもよい。
交換後のCU3Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801Fを経由して鍵管理サーバ800F)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1を含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。しかし、CU3Fは、交換したため前回最終送信通番を有していない。それを受けたP台2Fでは、交換後のCU3Fから送信される前回最終送信通番=0と、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信通番=nとを比較判定する。その結果、両者が不一致であるので、リカバリ処理を行なうためP台2Fに格納してある遊技情報をCU3Fへ送信する。具体的に、P台2Fは、交換後のCU3Fに対してリカバリ処理を行なうため遊技情報を有しているとして遊技情報格納有を含むリカバリ応答(通番=1)をCU3Fへ返信する。このリカバリ応答でCU3Fに通知するリカバリ情報には、前回最終送信通番=n、挿入されていたカードのカードID、カード挿入時間、前回遊技台情報として前回最終送信加算通番=mおよび前回遊技台情報が含まれている。前回遊技台情報には、遊技玉数=480、加算玉数=3、減算玉数=23を含んでいる。
リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fは、P台2Fから受信した前回遊技台情報を使用してリカバリ処理(遊技玉数=480、加算玉数累計=+3、減算玉数累計=+23)を行ない、前回最終送信通番を更新して、当該データおよびカードID、カード挿入時刻をバックアップする。CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3Fに通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3Fは、未通知の遊技台情報を含む状態情報応答を受けて、前回挿入中だったカードの挿入待ち、または店員リモコン操作(遊技玉計数)待ちの状態となる。この状態でカードが挿入されると、CU3Fは、その挿入されたカードのIDをカードリーダライタにより読み取る。そして、読み取ったカードIDと、リカバリ応答に基づいて記憶しているリカバリカードID(前回挿入されていたカードのカードID)とが一致しているか否かを判定する。一致していると判定した場合には、遊技を再開させるための店員のリモコン操作待ちとなる。リモコン操作があれば、店舗コードおよびSC基板ID等を含むカード挿入通知のコマンドがCU3FからP台2Fへ送信される。P台2Fでは、通信断以前の前回のカード挿入時に受信した店舗コードおよびSC基板IDのデータを払出制御部171FのRAM等にバックアップしており、そのバックアップしているデータとCU3Fから送信されてきた店舗コードおよびSC基板IDとを比較して一致するか否か判別する。一致していれば、遊技が再開可能となる。なお、リモコン操作を待つことなく、店舗コードおよびSC基板ID等を含むカード挿入通知のコマンドがCU3FからP台2Fへ送信されるようにしてもよい。不一致の場合には、たとえばP台2Fの遊技玉数データを無効にする等のエラー処理が行なわれる。あるいは、これに代えて、またはこれに加えてエラー報知がなされるようにしてもよい。さらには、挿入されているカードを強制的に排出して遊技者に返却する制御を行なうようにしてもよい。前回挿入中だったカードの挿入が行なわれない場合、店員リモコン操作(遊技玉計数)待ちの状態が継続されることになる。
なお、状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
<<異常系シーケンス4>>
次に、電源断/通信回線断により加算要求が未到達となったときの加算玉数のリカバリ処理について説明する。図94は、電源断、通信回線断線があって、カードユニットからパチンコ遊技機への加算要求のコマンドが未到達のときの処理の一例を示す図である。特に、電源断、通信回線断線により、加算要求が未到達(CU3FからP台2Fへの加算要求のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図94では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3Fに送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3Fは、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3Fは、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
しかし、P台2Fは、遊技者が再プレイボタンを押下した後、状態情報要求のコマンドを受信する前に、電源断が発生し、動作が停止する。そのため、P台2Fは、CU3Fからの状態情報要求のコマンドを受信することができない。
CU3Fは、P台2Fが停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3Fは、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2Fで電源断が復旧し、P台2Fが動作を開始する。P台2Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、リカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求のコマンドに基づいて、P台2F内部(具体的には払出制御基板17F)でバックアップしているリカバリ情報をレスポンスとしてCU3Fへ返信する。ここでは、前回最終送信加算通番=mが送信される。
リカバリ応答を受けたCU3Fでは、リカバリ情報の前回最終送信加算通番と、記憶している前回最終送信加算通番と一致しているか否かを判断する。CU3Fは、P台2Fのリカバリデータの最終送信加算通番=mに比べて、バックアップしているCU3Fで記憶している前回最終送信加算通番=m+1の方が大きい値(新しい)の場合(不一致)、前回の状態情報要求のコマンドが未到達であったと判断して加算リカバリ処理を行なう。
具体的な加算リカバリ処理としては、P台2Fに対して加算玉数=125玉のリカバリを要求する。そのため、CU3Fは、リカバリ要求2(加算玉数=125、前回最終送信加算通番=m+1)をP台2Fへ送信する。
P台2Fは、リカバリ要求2に含まれる加算玉数への加算処理を実施し、前回最終送信加算通番を更新して、当該テータをバックアップする。このタイミングで、電源断によって実現されなかった加算処理が実現され、CU3F側とP台2F側とで遊技玉数が整合する。さらに、P台2Fでは、加算処理がOKであった旨をリカバリ応答2としてCU3Fへ返信する(リカバリ応答2(処理結果=処理OK))。それを受けたCU3Fは、加算要求状態をクリアする。なお、リカバリ応答2を受信したCU3FのCU制御部323Fは、前述のリカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第3チェック処理を実行する。この第3チェック処理は、図105に基づいて後述する。
さらに、CU3Fは、通信開始要求をP台2Fへ送信する。それを受けたP台2Fでは、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3Fへ返信する。また、CU3Fは、状態情報要求をP台2Fへ送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=175)を状態情報応答でCU3Fに通知する。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス5>>
次に、電源断/通信回線断により加算応答が未到達となったときの加算玉数のリカバリ処理について説明する。図95は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへの加算応答のレスポンスが未到達のときの処理の一例を示す図である。特に、電源断、通信回線断線により、加算応答が未到達(P台2FからCU3Fへの加算応答のレスポンスが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図95では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3Fに送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3Fは、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3Fは、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
その後、CU3Fで電源断が発生し、CU3Fの動作が停止する。しかし、P台2Fは、CU3Fで電源断が発生した直後、CU3Fの動作が停止していることを検知することができない。P台2Fが通信回線断を検知するには、1秒以上CU3Fから次のコマンドを受信できない期間が必要である。
そのため、P台2Fでは、CU3Fの動作が停止していることを知らずに、CU3Fの状態情報要求のコマンドを受けて、通番=n+1、遊技玉数=175、遊技玉加算結果=OKおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3Fに返信する。ただし、CU3Fに返信した状態情報応答のレスポンスは、CU3Fの動作が停止しているため、CU3Fへ未到達となる。なお、P台2Fでは、CU3Fへ状態情報応答のレスポンスを返信するとともに、前回最終送信加算通番を更新し、更新したデータおよび遊技玉数=175のデータをバックアップする。
その後、CU3Fで電源断が復旧し、CU3Fが動作を開始する。CU3Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、前回最終送信通番=n+1を含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求のコマンドに基づいて、P台2F内部(具体的には払出制御基板17F)でバックアップしているリカバリ情報をレスポンスとしてCU3Fへ返信する(リカバリ応答(前回最終送信通番=n+1、前回最終送信加算通番=m+1))。このリカバリ情報としては、前回最終送信通番=n+1、カードID、カード挿入時刻および前回最終送信加算通番=m+1が含まれている。
リカバリ応答を受けたCU3Fでは、リカバリ情報のカードID、およびカード挿入時刻と、記憶しているカードIDおよびカード挿入時刻と一致しているか否かを判断する。CU3Fは、カードIDおよびカード挿入時刻が一致し、P台2Fのリカバリデータの前回最終送信加算通番=m+1と、CU3Fで記憶している前回最終送信加算通番=m+1とが一致した場合、加算リカバリ処理を要求せず、加算要求状態をクリアする。また、リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。
CU3Fは、カードIDおよびカード挿入時刻が一致し、P台2Fのリカバリデータの前回最終送信加算通番=m+1と、CU3Fで記憶している前回最終送信加算通番=m+1とが一致するか否かにより、加算リカバリ処理を行なうか否かの加算リカバリ処理判定を行なっている。加算リカバリ処理判定では、カードIDおよびカード挿入時刻が一致し、P台2Fのリカバリデータの前回最終送信加算通番=m+1と、CU3Fで記憶している前回最終送信加算通番=m+1とが一致する場合、加算リカバリ処理を行なわないと判定し、それ以外の場合加算リカバリ処理を行なうと判定する。
CU3Fは、基本的に加算リカバリ処理判定で加算リカバリ処理を行なわないと判定した場合、リカバリ要求2のコマンドをP台2Fに送信することはない。しかし、CU3Fは、加算リカバリ処理判定で加算リカバリ処理を行なわないと判定した場合にも関わらず、誤ってリカバリ要求2のコマンドがP台2Fに送信されてしまうとリカバリ処理が行なわれ、本来と異なる遊技玉数に変更されてしまう不都合が生じる。
そこで、本実施の形態では、CU3Fが加算リカバリ処理判定の判定後にリカバリ要求2のコマンドをP台2Fに送信した場合、P台2Fは、リカバリ要求2のコマンドに含まれる前回最終送信加算通番と、P台2Fで記憶している前回最終送信加算通番とが一致するか否かを判定して加算リカバリ処理を行なうか否かの再判定を行なう。
具体的に、CU3Fは、通番=2、前回最終送信加算通番=m+1、および加算玉数=125を含むリカバリ要求2のコマンドをP台2Fへ送信する。それを受けたP台2Fは、CU3Fのリカバリ要求2のコマンドに含まれる前回最終送信加算通番=m+1と、P台2Fで記憶している前回最終送信加算通番=m+1とが一致するので、加算リカバリ処理を行なわないと判定して処理NGの情報をCU3Fに通知する。そのため、P台2Fは、通番=2、処理結果=処理NGを含むリカバリ応答2をCU3Fに送信する。
さらに、CU3Fは、通信開始要求をP台2Fへ送信する。それを受けたP台2Fでは、通信開始応答をCU3Fへ返信する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス6>>
次に、電源断/通信回線断により加算応答が未到達となったときの加算玉数の別のリカバリ処理について説明する。図96は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへの加算応答のレスポンスが未到達のときの処理の別の一例を示す図である。特に、電源断、通信回線断線により、加算応答が未到達(P台2FからCU3Fへの加算応答のレスポンスが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図96では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3Fに送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3Fは、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3Fは、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
その後、CU3Fで電源断が発生し、CU3Fの動作が停止する。しかし、P台2Fは、CU3Fで電源断が発生した直後、CU3Fの動作が停止していることを検知することができない。P台2Fが通信回線断を検知するには、1秒以上CU3Fから次のコマンドを受信できない期間が必要である。
そのため、P台2Fでは、CU3Fの動作が停止していることを知らずに、CU3Fの状態情報要求のコマンドを受けて、加算要求を処理する。ところが、何らかの原因(たとえば、遊技玉数が上限値に達しているなど)によって、遊技玉を加算できない状況が発生する。この場合、P台2Fは、通番=n+1、遊技玉数=50、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。ただし、CU3Fに返信した状態情報応答のレスポンスは、CU3Fの動作が停止しているため、CU3Fへ未到達となる。なお、P台2Fでは、遊技玉加算異常が発生しているので、CU3Fからの加算玉を処理することができず、前回最終送信加算通番=mのままで更新していない。
その後、CU3Fで電源断が復旧し、CU3Fが動作を開始する。なお、P台2Fでは、遊技玉加算異常の状態である。CU3Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、前回最終送信通番=n+1を含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求のコマンドに基づいて、P台2F内部(具体的には払出制御基板17F)でバックアップしているリカバリ情報をレスポンスとしてCU3Fへ返信する(リカバリ応答(前回最終送信通番=n+1、前回最終送信加算通番=m))。このリカバリ情報としては、前回最終送信通番=n+1、カードID、カード挿入時刻および前回最終送信加算通番=mが含まれている。
リカバリ応答を受けたCU3Fでは、リカバリ情報のカードID、およびカード挿入時刻と、記憶しているカードIDおよびカード挿入時刻と一致しているか否かを判断する。CU3Fは、カードIDおよびカード挿入時刻が一致し、P台2Fのリカバリデータの前回最終送信加算通番=mと、CU3Fで記憶している前回最終送信加算通番=m+1とが不一致の場合、加算リカバリ処理を要求する。そのため、CU3Fは、前回最終送信加算通番=m+1、加算玉数=125を含むリカバリ要求2をP台2Fに送信する。
それを受けてP台2Fは、遊技玉加算異常により、遊技玉加算が処理されていないこと(遊技玉加算NG)をリカバリ応答2で通知する。リカバリ応答2には、リカバリ結果=処理NGが含まれている。
それを受けたCU3Fは、リカバリ結果=処理NGを含むリカバリ応答2を受信した場合、遊技玉加算要求状態をクリアしてOFF状態にして、後述する第3チェックを行なう。さらに、CU3Fは、通信開始要求をP台2Fへ送信する。それを受けたP台2Fでは、通信開始応答をCU3Fへ返信する。
さらに、CU3Fは、遊技玉加算要求状態がクリアされてOFF状態になっているため、P台2Fに再度加算要求を通知せずに、遊技玉加算要求=OFF、加算通番=m+1を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fは、加算異常状態のため、リカバリ要求2の加算玉数=125を遊技玉数=50に加算できない場合、加算せずに現時点の遊技玉数=50をCU3Fに通知する。具体的に、P台2Fは、遊技玉数=50、加算通番=mを含む状態情報応答をCU3Fに送信する。なお、加算通番は、遊技玉加算結果がNGであるため、状態情報要求で送信されてきた「m+1」に更新せずに「m」のままである。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。CU3Fは、P台2Fから送信される状態情報応答に含まれる現時点の遊技玉数=50の情報に基づき、確定させた貯玉の消費を取消す処理を行なう。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス7>>
次に、電源断/通信回線断により加算要求が未到達となったときの加算玉数の別のリカバリ処理について説明する。図97は、電源断、通信回線断線があって、カードユニットからパチンコ遊技機への加算要求のコマンドが未到達のときの処理の別の一例を示す図である。特に、電源断、通信回線断線により、加算要求が未到達(CU3FからP台2Fへの加算要求のコマンドが未到達)で、復旧後通信相手が不一致の場合の計数処理を説明するためのシーケンス図が示してある。
この図97では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3Fに送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3Fは、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3Fは、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
しかし、P台2Fは、遊技者が再プレイボタンを押下した後、状態情報要求のコマンドを受信する前に、電源断が発生し、動作が停止する。そのため、P台2Fは、CU3Fからの状態情報要求のコマンドを受信することができない。
CU3Fは、P台2Fが停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3Fは、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2Fで電源断が復旧し、さらにP台2Fを交換して新たなP台2Fが動作を開始する。P台2Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、リカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。なお、CU3Fは、P台2Fが交換されても加算リカバリは実施する。それを受けたP台2Fでは、受信したリカバリ要求のコマンドに基づいて、P台2F内部(具体的には払出制御基板17F)でバックアップしているリカバリ情報をレスポンスとしてCU3Fへ返信する。しかし、P台2Fは、新たに交換したため前回最終送信加算通番はバックアップしておらず、初期値“0”をCU3Fに送信することになる。
リカバリ応答を受けたCU3Fでは、リカバリ情報の前回最終送信加算通番と、記憶している前回最終送信加算通番と一致しているか否かを判断する。CU3Fは、P台2Fのリカバリデータの最終送信加算通番=0と、バックアップしているCU3Fで記憶している前回最終送信加算通番=m+1とが不一致の場合、前回の状態情報要求のコマンドが未到達であったと判断して加算リカバリ処理を行なう。具体的な加算リカバリ処理としては、P台2Fに対して加算玉数=125玉のリカバリを要求する。そのため、CU3Fは、リカバリ要求2(加算玉数=125、前回最終送信加算通番=m+1)をP台2Fへ送信する。
P台2Fは、リカバリ要求2に含まれる加算玉数への加算処理を実施し、前回最終送信加算通番を更新して、当該テータをバックアップする。さらに、P台2Fでは、加算処理がOKであった旨をリカバリ応答2としてCU3Fへ返信する(リカバリ応答2(処理結果=処理OK))。それを受けたCU3Fは、加算要求状態をクリアする。なお、リカバリ応答2を受信したCU3FのCU制御部323Fは、前述のリカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第3チェック処理を実行する。この第3チェック処理は、図105に基づいて後述する。
さらに、CU3Fは、通信開始要求をP台2Fへ送信する。それを受けたP台2Fでは、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3Fへ返信する。また、CU3Fは、状態情報要求をP台2Fへ送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=175)を状態情報応答でCU3Fに通知する。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス8>>
次に、電源断/通信回線断により計数応答が未到達となったときの計数玉数のリカバリ処理について説明する。図98は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへの計数応答のレスポンスが未到達のときの処理の一例を示す図である。特に、電源断、通信回線断線により、計数応答が未到達(CU3FからP台2Fへの計数応答のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図98では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3Fは、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。その後、P台2Fでは、計数ボタン28Fが押下され、CU3Fに対して計数要求を送信する。具体的には、P台2Fは、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。なお、P台2Fでは、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3Fに通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
それを受けてCU3Fは、計数玉数を持玉数に加算して持玉数=100にし、前回最終送信計数通番を更新し、更新したデータをバックアップする。しかし、P台2Fは、状態情報要求のコマンドを受信した後に、電源断が発生し、動作が停止する。そのため、P台2Fは、CU3Fからの通番=n+1、計数通番=m+1および計数応答=ONを含む状態情報要求のコマンドを受信することができない。つまり、P台2Fは、CU3Fからの計数応答が未到達となる。
CU3Fは、P台2Fが停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3Fは、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2Fで電源断が復旧し、P台2Fが動作を開始する。P台2Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1および前回最終送信計数通番=m+1を含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求の前回最終送信計数通番=m+1と、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信計数通番=m+1とが一致しているので、通信断の前にP台2FからCU3Fに対して最後に送信した状態情報応答はCU3Fに到達していると判断できる。この場合には、P台2Fは、計数した玉数を遊技玉数から減算する処理を実行し、計数要求状態をOFFにする。つまり、P台2Fは、この時点で遊技玉数=500から遊技玉数=400に更新される。また、P台2Fは、受信したリカバリ要求のコマンドに基づいて、レスポンスであるリカバリ応答をCU3Fへ返信する。
リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。なお、CU3Fは、加算リカバリ処理は行なわないため、CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fは、P台2Fから受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=400)を状態情報応答でCU3Fに通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=400を含む。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
<<異常系シーケンス9>>
次に、電源断/通信回線断により計数要求が未到達となったときの計数玉数のリカバリ処理について説明する。図99は、電源断、通信回線断線があって、パチンコ遊技機からカードユニットへの計数要求のコマンドが未到達のときの処理の一例を示す図である。特に、電源断、通信回線断線により、計数要求が未到達(P台2FからCU3Fへの計数要求のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図99では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3Fは、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。その後、P台2Fでは、計数ボタン28Fが押下され、CU3Fに対して計数要求を送信する。具体的には、P台2Fは、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。なお、P台2Fでは、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3Fに通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
しかし、CU3Fは、状態情報応答のコマンドを受信する前に、電源断が発生し、動作が停止する。つまり、CU3Fは、P台2Fからの計数要求が未到達となる。それ以降、CU3Fからの状態情報要求が送信されてこないために、P台2Fは、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171Fが発射制御基板31Fへ停止コマンドを送信し、発射制御基板31Fが発射モータ18Fの回転駆動を停止する。
その後、CU3Fで電源断が復旧し、CU3Fが動作を開始する。CU3Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1および前回最終送信計数通番=mを含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求の前回最終送信計数通番=mと、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信計数通番=m+1とが一致していないので(不一致)、通信断の前にP台2FからCU3Fに対して最後に送信した状態情報応答はCU3Fに到達していないと判断できる。この場合には、P台2Fは、計数した玉数を遊技玉数から減算する処理を実行せず、計数要求状態をOFFにする。つまり、P台2Fは、電断発生直前に送信した計数要求を取り消し、この時点で遊技玉数=500のまま維持する。また、P台2Fは、受信したリカバリ要求のコマンドに基づいて、レスポンスであるリカバリ応答をCU3Fへ返信する。
リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。CU3Fは、加算リカバリ処理は行なわないため、CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fは、P台2Fから受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=500)を状態情報応答でCU3Fに通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=500を含む。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
<<異常系シーケンス10>>
次に、電源断/通信回線断により計数応答が未到達となったときの計数玉数の別のリカバリ処理について説明する。図100は、電源断、通信回線断線があって、カードユニットからパチンコ遊技機への計数応答のレスポンスが未到達のときの処理の別の一例を示す図である。特に、電源断、通信回線断線により、計数応答が未到達(CU3FからP台2Fへの計数応答のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図が示してある。
この図100では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3Fは、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2Fへ送信する。その後、P台2Fでは、計数ボタン28Fが押下され、CU3Fに対して計数要求を送信する。具体的には、P台2Fは、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100、計数通番m+1および計数要求=ONを含む状態情報応答のレスポンスをCU3Fに返信する。なお、P台2Fでは、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3Fに通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
それを受けてCU3Fは、計数玉数を持玉数に加算する処理を実行するが、何らかの異常が発生して加算処理ができない。このため、CU3Fからは計数通番=mおよび計数応答=OFF(計数異常状態のため)を含む状態情報要求のコマンドが送信される。ところが、P台2Fは、状態情報要求のコマンドを受信した後に、電源断が発生し、動作が停止している。そのため、P台2Fは、CU3Fからの状態情報要求のコマンドを受信することができない。つまり、P台2Fは、CU3Fからの計数応答が未到達となる。
CU3Fは、P台2Fが停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3Fは、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2Fで電源断が復旧し、P台2Fが動作を開始する。P台2Fが動作を開始すると、まず、CU3FとP台2Fとの間で認証シーケンスが開始され、P台2FからCU3Fに対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3Fは、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、図91に示す計数履歴シーケンスが開始され、CU3FからP台2Fに対して計数履歴要求コマンドが送信されると、P台2Fで記憶している計数履歴データがCU3Fに送信される。計数履歴シーケンス後、CU3Fは、通番=1および前回最終送信計数通番=mを含むリカバリ要求をP台2Fへ送信する。つまり、CU3Fは、P台2Fに対してリカバリ情報の通知を要求する。それを受けたP台2Fでは、受信したリカバリ要求の前回最終送信計数通番=m(計数異常のため“m”のままの更新されていない)と、P台2F内部(具体的には払出制御基板17F)でバックアップしている前回最終送信計数通番=m+1とが一致していないので(不一致)、通信断の前にP台2FからCU3Fに対して最後に送信した状態情報応答はCU3Fに到達していないと判断できる。この場合には、P台2Fは、計数した玉数を遊技玉数から減算する処理を実行せず、計数要求状態をOFFにして、前回最終送信計数通番を1つ減らす(−1)。P台2Fは、この時点で電断発生前の計数要求を取り消して遊技玉数=500のまま維持する。また、P台2Fは、受信したリカバリ要求のコマンドに基づいて、レスポンスであるリカバリ応答をCU3Fへ返信する。
リカバリ応答を受信したCU3FのCU制御部323Fは、リカバリ応答としてP台2Fから送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図104(a)に基づいて後述する。CU3Fは、加算リカバリ処理は行なわないため、CU3Fは、リカバリ要求2をP台2Fに送信することなく、通番=2を含む通信開始要求をP台2Fに送信する。なお、CU3Fは、P台2Fから受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3Fが通信開始要求のコマンドをP台2Fに送信する際、計数通番は“0”(初期値)にクリアされる。P台2Fは、通信開始要求を受け、通番=2を含む通信開始応答をCU3Fへ送信する。また、P台2Fは、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3Fは、P台2Fとの通信が開始されると、通番=3を含む状態情報要求をP台2Fに送信する。それを受けたP台2Fでは、未通知の遊技台情報(遊技玉数=500)を状態情報応答でCU3Fに通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=500を含む。状態情報応答を受信したCU3FのCU制御部323Fは、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図104(b)に基づいて後述する。
<<加算要求異常>>
次に、加算要求異常の処理について説明する。図101は、玉貸・持玉払出・貯玉払出時の遊技玉加算結果異常のときの処理の一例を示す図である。特に、玉貸・持玉払出・貯玉払出時の遊技玉の加算結果が異常である場合の処理を説明するためのシーケンス図が示してある。
この図101では、当初の遊技玉数が50玉の状態となっている。まず、CU3Fは、通番=n、遊技玉加算要求=OFFおよび加算通番=mを含む状態情報要求のコマンドをP台2Fへ送信する。それを受けて、P台2Fは、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3Fに送信される。
その後、遊技者が持玉払出ボタンを押下する。そのため、CU3Fは、持玉・貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ送信して、持玉・貯玉を遊技玉に変換した情報(加算玉数=125玉)を通知する。その際、CU3Fは、遊技玉数=50(更新前遊技玉数)+125(加算玉数)=175、更新した前回最終送信加算通番および加算要求状態ONのデータをバックアップする。
その後、P台2Fで遊技玉を加算する処理に異常が発生する。そのため、P台2Fは、CU3Fの状態情報要求のコマンドを受けて、通番=n+1、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3Fに返信する。P台2Fは、CU3Fに対して遊技玉加算結果=NG、前回最終送信加算通番の情報を通知する。
遊技玉加算結果=NGを含む状態情報応答のレスポンスを受信したCU3Fは、通番=n+2、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ再送する。なお、CU3Fは、状態情報要求のコマンドの再送であるが、通番は更新されn+1からn+2へカウントアップし、加算通番はm+1のままで状態情報要求のコマンドを再送する。
しかし、P台2Fは、遊技玉を加算する処理に異常が発生している状態のままである。そのため、P台2Fは、CU3Fの再送した状態情報要求のコマンドを受けて、通番=n+2、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。
さらに、遊技玉加算結果=NGを含む状態情報応答のレスポンスを再度受信したCU3Fは、通番=n+3、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ2回目の再送を行なう。なお、CU3Fは、状態情報要求のコマンドの再送であるが、通番は更新されn+2からn+3へカウントアップし、加算通番はm+1のままで状態情報要求のコマンドを再送する。
P台2Fは、まだ遊技玉を加算する処理に異常が発生している状態のままである。そのため、P台2Fは、CU3Fの再送した状態情報要求のコマンドを受けて、通番=n+3、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3Fに返信する。
CU3Fは、状態情報要求のコマンドを2回再送しても、P台2Fから遊技玉加算結果=NGを含む状態情報応答のレスポンスの応答を受信する場合、P台2Fで遊技玉を加算する処理に異常が発生しているとして、加算異常復旧待ちの状態となる。
P台2Fにおいて加算異常が復旧後、CU3Fは、通番=n+X、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2Fへ再送を行なう。P台2Fでは、加算異常が復旧しているので、遊技玉への加算処理を実施して遊技玉数=50(遊技玉加算前の遊技玉数)+125(加算玉数)=175とし、前回最終送信加算通番を更新して、当該データをバックアップする。
遊技玉への加算処理を実施後、P台2Fは、通番=n+X、遊技玉数=175、加算通番=m+1および遊技玉加算結果=OKを含む状態情報応答をCU3Fに送信する。これを受けて、CU3Fは、加算要求状態をOFFにする。
<加算通番に関する動作>
図102は、加算通番に関するP台2FおよびCU3Fの動作を説明するための概念図である。遊技玉の加算要求が発生していないときには、CU3FとP台2Fとの間で、図102の(1)〜(4)に示すような通常通番および加算通番を含む電文が送受信される。
(1)では、CU3FからP台2Fに対して、通常通番n、加算通番mを含む電文が送信される。(1)の電文を受信したP台2Fは、(2)のように、受信した電文と同じ通常通番nおよび加算通番mを含む(2)の電文を返信する。
(2)の電文を受信したCU3Fは、通常通番が1つ更新された(3)の電文(通常通番n+1、加算通番m)を送信する。(3)の電文を受信したP台2Fは、受信した電文と同じ通常通番nおよび加算通番mを含む(4)の電文を返信する。
このようにCU3Fは、P台2Fから電文を受信するごとに、通常通番を1つ更新して次の電文を送信する。一方、P台2Fは通常通番を更新しない。また、加算要求が発生しない限り、加算通番は更新されない。
次に、加算要求(玉貸し操作や貯玉引き落とし操作による)が発生したときには、CU3FからP台2Fに対して加算通番が1つ更新された(5)の要求電文が送信される(通常通番n+2、加算通番m+1)。この要求電文には加算要求ビットをONにしたデータも含まれている。なお、CU3Fは、この段階で既に加算要求に対する処理(カード残高の引き落としや貯玉の引き落とし)を確定させている。
P台2Fは、(5)の要求電文を受信し、加算通番が前回から1つ更新されていることに基づいて加算要求を認識する。その上で、今回の加算要求を承諾するか否かを判定する。この判定は、たとえば、P台2Fの払出制御部171Fが行なう。払出制御部171Fは、P台2F側で遊技玉を加算する処理が可能であるか否かを判定する。遊技玉の加算処理が可能でない場合とは、たとえば、遊技玉が既に予め定めた上限値に達している場合である。
要求を承諾する場合には、(6)の2つの電文のうちの承諾電文を送信し、要求を拒否する場合には、(6)の2つの電文のうちの拒否電文を送信する。承諾電文では、加算通番が(5)の要求電文に含まれていた加算通番m+1とされている。一方、拒否電文では、加算通番が(6)よりも1つ前に送受信した電文に含まれる加算通番mとされている。なお、通常通番は、承諾電文および拒否電文のいずれも(5)の要求電文に含まれていたn+2である。
CU3Fは、直前の送信電文に含めた加算通番をバックアップ記憶するエリアと、受信電文に含まれる通常通番をバックアップ記憶するエリアとを備えている。これらのエリアは、たとえば、CU3FのCU制御部323Fのマイクロコンピュータ内に設けられている。(6)の電文を受信したCU3FのCU制御部323Fは、バックアップ記憶している加算通番と、(6)の電文に含まれる加算通番とを比較判定する。その結果、記憶している加算通番と送信されてきた電文に含まれる加算通番とが同じ(この例ではm+1)であれば、要求が承諾されたと判定する。これに対して、送信されてきた加算通番の方が1つ遅れている場合(この例ではm)には、要求が拒否されたと判定する。
図102の(5)’は、要求電文がノイズその他の要因によりP台2Fに到達しなかった場合について示している。この場合、P台2FはCU3Fからの電文到達を待つため、P台2FからCU3Fに対して電文が送信されることはない。CU3Fは、(5)’の要求電文を送信してから所定期間(200ms)だけ待機し、P台2Fからの応答がないので、同じ要求電文(5)’’を再送する。
<計数通番に関する動作>
図103は、計数通番に関するP台2FおよびCU3Fの動作を説明するための概念図である。計数要求が発生していないときには、CU3FとP台2Fとの間で、図103の(1)〜(3)に示すような通常通番および計数通番を含む電文が送受信される。
(1)では、CU3FからP台2Fに対して、通常通番n、計数通番mを含む電文が送信される。(1)の電文を受信したP台2Fは、(2)のように、受信した電文と同じ通常通番nおよび計数通番mを含む(2)の電文を返信する。
(2)の電文を受信したCU3Fは、通常通番が1つ更新された(3)の電文(通常通番n+1、計数通番m)を送信する。このようにCU3Fは、P台2Fから電文を受信するごとに、通常通番を1つ更新して次の電文を送信する。一方、P台2Fは通常通番を更新しない。また、計数要求が発生しない限り、計数通番は更新されない。
次に、計数要求(計数操作の検出)が発生したときには、P台2FからCU3Fに対して計数通番が1つ更新された(4)の要求電文が送信される(通常通番n+1、計数通番m+1)。この要求電文には計数要求ビットをONにしたデータも含まれている。なお、P台2Fは、この段階では計数処理を実行していない。
P台2Fは、(4)の要求電文を受信し、計数通番が前回から1つ更新されていることに基づいて計数要求を認識する。その上で、今回の計数要求を承諾するか否かを判定する。この判定は、たとえば、CU3FのCU制御部323Fが行なう。CU制御部323Fは、計数処理(持玉の加算処理)が可能であるか否かを判定する。計数処理が可能でない場合とは、たとえば、持玉を用いた処理(ワゴンサービスなど)の途中である場合である。
要求を承諾する場合には、(5)の2つの電文のうちの承諾電文を送信し、要求を拒否する場合には、(5)の2つの電文のうちの拒否電文を送信する。承諾電文では、計数通番が(4)の要求電文に含まれていた計数通番m+1とされている。一方、拒否電文では、計数通番が(4)よりも1つ前に送受信した電文に含まれる計数通番mとされている。なお、通常通番は、承諾電文および拒否電文のいずれも(5)の要求電文から更新されており、n+2である。
P台2Fは、直前の送信電文に含めた計数通番と通常通番とをバックアップ記憶するエリアを備えている。このようなエリアは、たとえば、P台2Fの払出制御部171Fのマイクロコンピュータ内に設けられている。(5)の電文を受信したP台2Fの払出制御部171Fは、バックアップ記憶している計数通番と、(5)の電文に含まれる計数通番とを比較判定する。その結果、記憶している計数通番と送信されてきた電文に含まれる計数通番とが同じ(この例ではm+1)であれば、要求が承諾されたと判定する。これに対して、送信されてきた計数通番の方が1つ遅れている場合(この例ではm)には、要求が拒否されたと判定する。
図103の(4)’は、要求電文がノイズその他の要因によりP台2Fに到達しなかった場合について示している。この場合、CU3Fは、(3)の電文を送信してから所定期間(200ms)だけ待機し、P台2Fからの応答がないので、同じ電文(3)を再送する。再送されてきた(3)の電文を受けたP台2Fは、その電文に含まれる通常通番がn+1であり、先に(4)’の要求電文を送信しているにも関わらず、通常通番が変化していないことから、(4)’の要求電文が到達しなかったと判定する。そして、P台2Fは、(4)’と同じ要求電文(4)’’を再送する。
以上、説明したように、本実施の形態では、通常通番とは別の要求通番(加算通番、計数通番)が電文に含められて送信される。これらの要求通番は、通信相手に対して加算要求や計数要求等の動作を要求するときに加算更新され、それ以外では、電文の送受信が行なわれても加算更新されない。
これに対して、通常通番は、通信相手に対する要求の有無に関わらず、CU3Fから電文が送信されるごとに更新される(なお、通常の通番は、CU3FおよびP台2Fの双方で互いに更新する動作をしてもよい。)。
このため、通常通番の場合、送信した要求電文が相手に届いたか否かを相手先からの受信電文に含まれる通番を用いて判定できるものの、その受信電文が要求承諾を示す承諾電文であるのか、要求拒絶を示す拒否電文であるのかまでは特定できない。
ところが、上記のとおり、本実施の形態のように加算通番や計数通番といった要求通番を利用して、要求通番を更新した要求電文を送信し、これに対する応答として要求電文に含まれていた要求通番と同じ要求通番を含む電文を受信した場合には、その通番の値によって、送信した要求電文が相手に届いたか否かのみならず、相手から返信されてきた電文が承諾電文であるのか否かまでを特定できる。もちろん、本実施の形態のように、要求電文には要求ビット(加算要求ビットあるいは計数要求ビット)をONにしたデータが含まれるため、このデータを判定することでも、受信電文が承諾電文であるのか拒否電文であるのかを特定できる。しかしながら、要求通番を利用すれば、このような要求ビットを電文から削除することも可能である。これによって電文データ量を削減でき、また、電文データの要求ビットを判定する処理も不要とすることができる。
なお、本実施の形態では、要求が発生したときの要求通番に対する更新値を+1としているが、これは一例であって、+2や+3、−1や−2などの他の更新値を採用してもよい。
<第1〜第3チェック処理>
次に、図104(a)、(b)、図105に基づいて、CU制御部323Fにより実行される第1チェック処理、第2チェック処理および第3チェック処理について説明する。
まず図104(a)を参照して、第1チェック処理を説明する。ステップSF(以下単にSFという)300により、遊技台情報の格納があるか否かの判断がなされる。これは、P台2Fから送信されてきたリカバリ応答の中に遊技台情報が含まれているか否かを判断するものであり、前述した図92、図93の場合に遊技台情報(具体的には前回遊技台情報)が含まれているために、SF300によりYESの判断がなされる。遊技台情報が含まれていないと判断された場合にはこの第1チェック処理が終了する。
遊技台情報の格納があると判断された場合には制御がSF301へ進み、その受信した遊技台情報(具体的には前回遊技台情報)に含まれている加算玉数が予め定められた閾値N1以上であるか否かの判断がなされる。この閾値N1は、CU3FとP台2Fとの間での状態情報要求と状態情報応答との1周期(200ms)の間に入賞に伴う遊技玉の加算数の最大(たとえば大当り時の最大加算玉数=120)よりも少し大きい値(たとえば125)に設定されている。したがって、正常な場合には、受信した加算玉数がこの閾値N1よりも小さな値になっている筈である。ところが、閾値N1よりも大きな加算玉数となっているということは、オフライン中にP台2Fに不正等が行なわれて不正に増加した加算玉数および遊技玉数を含む遊技台情報がリカバリ応答としてCU3Fへ送信されてきた虞がある。その場合には、制御がSF304へ進み、エラーの発生を異常報知ランプや表示器312Fにより報知する制御が行なわれるとともに、ホールサーバ801Fにエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801Fの代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がSF305へ進み、CU制御部323Fがリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320Fに入力されるまでCU制御部323Fが制御を停止し、リセット信号が入力されたときにCU制御部323Fがリセット状態となって電源投入(図80参照)と同じ状態に復帰する。
SF301、SF303のチェック処理の結果異常判定されたとしても、その原因が通信断後にCU3FまたはP台2Fを新たなものに交換し、その後通信を復旧させたことにより、CU3F側が記憶している情報とリカバリ処理時にP台2Fから送信されてくる情報とが全く食い違っていることに起因する場合がある。このような不正行為ではないにも拘らず異常判定する場合があり、そのために、遊技場の係員によるリモコン操作によってリセット待ち状態を解除できるようにし、遊技場の係員による人為的な判断を介在させて正常な対応ができるようにしている。
一方、SF301によりNOの判断がなされた場合には制御がSF302へ進み、CU制御部323Fが記憶している遊技玉数に対してP台から受信した加算玉数を加算するとともに減算玉数を減算してその算出結果であるR1を算出する演算が行なわれる。すなわち、P台2Fから受信した遊技台情報に含まれている加算玉数が適正であると判断された場合には、その加算玉数と減算玉数とを用いて最新の遊技玉数R1を算出するのである。次にSF303により、その算出されたR1−受信した遊技玉数の絶対値すなわちR1と受信した遊技玉数との差を演算し、その差が予め定められた閾値N2以上であるか否かの判断がなされる。本来、R1と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N2と定めている。よって、R1と受信した遊技玉数との差がこの閾値N2以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がSF304以降に進む。
一方、R1と受信した遊技玉数との差が閾値N2未満であった場合には、受信した遊技玉数が適正な値であると判断され、その受信した遊技玉数を新たな遊技玉数としてCU制御部323FのRAMが記憶する。
次に図104(b)に基づいて第2チェック処理を説明する。通信開始応答直後の状態情報要求に対して返信されてくるP台2Fからの状態情報応答に含まれている遊技台情報(具体的には今回遊技台情報)の中の加算玉数が予め定められた閾値N3以上であるか否かの判断がSF310により行なわれる。この受信した加算玉数は、P台がCU3Fへ最後に状態情報応答を送信してからP台に電源断が発生するまであるいはP台が通信回線断を検知して遊技が停止するまでの間において変動した加算玉数であり、このような比較的短い限られた期間内の加算玉数の変動量はそれほど大きな値にはならず、ある決まった上限の範囲内となる。故に、その上限(たとえば120)よりも少し大きな値(たとえば125)を閾値N3と定めている。そして、受信した加算玉数がその閾値N3以上の場合には、制御がSF314へ進み、エラーの発生を異常報知ランプや表示器312Fにより報知する制御が行なわれるとともに、ホールサーバ801Fにエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801Fの代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がSF315へ進み、CU制御部323Fがリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320Fに入力されるまでCU制御部323Fが制御を停止し、リセット信号が入力されたときにCU制御部323Fがリセット状態となって電源投入(図80参照)と同じ状態に復帰する。
一方、SF310によりNOの判断がなされた場合には制御がSF311へ進み、CU制御部323Fが記憶している遊技玉数に対して受信した加算玉数を加算するとともに受信した減算玉数を減算してR2を算出する演算が行なわれる。なお、ここでいう「記憶している遊技玉数」とは、前述したように、SF303によりNOの判断がなされたときのP台2Fから受信した遊技玉数のことである。そして、SF312により、そのR2とP台2Fから受信した遊技玉数との差が予め定められた閾値N4以上であるか否かの判断がなされる。本来、R2と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N4と定めている。よって、R1と受信した遊技玉数との差がこの閾値N4以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がSF314以降に進む。
SF312によりNOの判断がなされた場合には制御がSF313へ進み、CU制御部323Fは、P台2Fから受信した遊技玉数を初期値の遊技玉数として記憶した後、この第2チェック処理の制御が終了する。
このSF313の処理がなされた後には、CU3FとP台2Fとの間で通常の状態情報要求および状態情報応答の送受信が行なわれるのであり、その際、CU制御部323Fは、SF313により初期値の遊技玉数として記憶された遊技玉数を初期値として、加算玉数と減算玉数とに基づいて現在の遊技玉数を算出し、その現在の遊技玉数に基づいてP台2Fから送信されてくる遊技玉数との差が予め定められた誤差玉数(たとえば5)を超えているか否か判定し、超えている場合には異常判定して、前述のSF304、SF305、SF314、SF315と同様の制御を行なう。
次に、図105に基づいて第3チェック処理の制御を説明する。CU制御部323Fは、P台2Fからリカバリ応答2を受信した直後にこの第3チェック処理を実行する(図94、図96、図97参照)。
このリカバリ要求2およびリカバリ応答2は、前述したように、CU3FがP台2Fに対して遊技玉数の加算要求を出力したにも拘らずP台2Fがその遊技玉加算要求に従った遊技玉の加算処理を行なっていない場合にその遊技玉数の加算リカバリを行なうためのものである。そして、P台2FからCU3Fへ送られてくるリカバリ応答2によりその加算リカバリの処理が正常に行なわれたか否かの処理結果が通知される。CU制御部323Fは、SF320により、そのリカバリ結果が処理NGであるか否かの判断を行なう。処理NGすなわち加算リカバリが正常に行なわれなかった場合には、制御がSF324へ進み、エラーの発生を異常報知ランプや表示器312Fにより報知する制御が行なわれるとともに、ホールサーバ801Fにエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801Fの代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がSF325へ進み、CU制御部323Fがリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320Fに入力されるまでCU制御部323Fが制御を停止し、リセット信号が入力されたときにCU制御部323Fがリセット状態となって電源投入(図80参照)と同じ状態に復帰する。
一方、リカバリ結果が処理OKであった場合には制御がSF321へ進み、CU制御部323Fが現在記憶している遊技玉数に対してP台2Fへ送信した加算玉数を加算する処理を行なう。これは、CU3Fが出力した遊技玉加算要求での加算玉数分の加算リカバリがP台2Fにおいて正常に行なわれたために、その加算玉数を遊技玉数に加算して現時点における正常な遊技玉数を算出するための処理である。
次に制御がSF322へ進み、その加算後の遊技玉数に対してP台2Fから送信されてきた加算玉数を加算するとともに減算玉数を減算してR3を算出する演算が行なわれる。この加算玉数と減算玉数とは、リカバリ応答としてP台2Fから送信されてくる遊技台情報(具体的には前回遊技台情報)であり、リカバリ応答にその前回遊技台情報が含まれていない場合には、加算玉数と減算玉数とは共にゼロであり、その結果、加算後の遊技玉数=R3を算出することとなる。
次にSF323により、その算出されたR3とCU3Fが受信した遊技玉数との差が予め定められた閾値N2以上であるか否かの判断がなされる。本来、R1と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N2と定めている。よって、R1と受信した遊技玉数との差がこの閾値N2以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がSF324以降に進む。
一方、R1と受信した遊技玉数との差が閾値N2未満であった場合には、受信した遊技玉数が適正な値であると判断され、その受信した遊技玉数を新たな遊技玉数としてCU制御部323Fが記憶する。
以上説明したように、P台2FからCU3Fへ、遊技台情報として前回遊技台情報が先に送信され、その後今回遊技台情報が送信され、CU3F側において両遊技台情報を区別可能となるように送信されるために、CU制御部323Fにおいては、その両遊技台情報のそれぞれの適性を判別することが可能となる。その結果、P台2Fから送られてくる前回遊技台情報中のたとえば遊技玉数データは、CU制御部323Fが現時点で記憶している遊技玉数データと大きな差はない筈であり、また、その後に送られてくる今回遊技台データ中のたとえば遊技玉数データも、CU3Fが受信した前回遊技台情報中の遊技玉数データとそれほど大きな差はない筈である。もし、これらのデータの差に大きな開きがある場合には、不正に遊技玉数データが水増しされていると異常判別することができる。
仮に、前回遊技台データと今回遊技データとを合算した合算データがP台2FからCU3Fへ一括送信される場合には、前回遊技台データと今回遊技台データとをそれぞれ個別に判別する場合に比べて大まかな判別しかできず、その分不正を判別しにくくなる。このような不都合を防止するべく、遊技台データを2段階で送信してCU制御部323Fにおいてそれら両データを区別できるようにし、それぞれの遊技台データについての木目細かな異常判別を可能とし、異常判別しやすくしている。
なお、前述した第1チェック処理〜第3チェック処理においては、先に加算玉数の適否を判定した後、適正である場合にその加算玉数に基づいて現在の遊技玉数を算出してその遊技玉数とP台2Fから送信されてきた遊技玉数を比較して送信されてきた遊技玉数が適正であるか否かの判定を行なっているが、単に、P台2Fから送信されてきた遊技玉数をCU3Fが記憶している遊技玉数と比較してその適否判定を行なうようにしてもよい。
さらに、CU3Fは、リカバリ処理以前に記憶している最終の遊技玉数(以下「CU遊技玉数」と言う)と、P台2Fから受信した前回遊技台情報中の遊技玉数(以下「P台前回遊技玉数」と言う)と、P台2Fから受信した最新遊技台情報中の遊技玉数(以下「P台最新遊技玉数」と言う)との3者間で比較判定して適否判定を行なうようにしてもよい。3者間での比較判定の具体例としては、CU遊技玉数とP台前回遊技玉数とを比較判定して正しければそのP台前回遊技玉数とP台最新遊技玉数とを比較判定する。あるいは、CU遊技玉数とP台前回遊技玉数とを比較判定して正しければCU遊技玉数とP台最新遊技玉数とを比較判定する。さらには、先にP台前回遊技玉数とP台最新遊技玉数とを比較判定して正しければCU遊技玉数とP台前回遊技玉数とを比較判定し、さらにCU遊技玉数とP台最新遊技玉数とを比較判定する。
なお、上記の第1チェック処理〜第3チェック処理は、CU3FやP台2Fの交換(入替え)が行なわれていないときに実行するのが望ましい。通信断時に交換(入替え)が行なわれているときには、リカバリ処理でCU側とP台側との遊技玉数が大幅に相違するのが一般的であるために、それが原因で上記の第1チェック処理〜第3チェック処理の結果エラー判定されるためである。ゆえに、通信断後にCU3FまたはP台2Fを交換した場合に、通信復旧時におけるリカバリ処理において第1チェック処理〜第3チェック処理を行なわないように制御してもよい。具体的には、リカバリ応答としてP台2Fから送信されてくる前回最終送信通番とCU制御部323Fが記憶している前回最新送信通番との差が2以上の場合に、CU3FまたはP台2Fが交換されたとCU制御部323Fが判断し、CU制御部323Fが第1チェック処理〜第3チェック処理を行なわないように制御する。
さらに、CU3FまたはP台2Fの交換であるか否かに拘らず、リカバリ時にはCU3F側で前回遊技台データおよび今回遊技台データのチェックを一切行なわないように制御してもよい。このようにすれば、CU3FまたはP台2Fの交換に起因したチェック異常判定が生ずる煩わしさを防止することができる。
<要求通番に関する動作>
次に、図78〜図103で示した通信シーケンスで説明した通番の更新方法は一例であり、当該方法に限定されるものではない。たとえば、以下に説明するような通番の更新方法を図78〜図103で示した通信シーケンスに適用してもよい。
<<通番および要求通番をともに更新>>
図106は、要求通番に関するP台2FおよびCU3Fの動作を説明するための概念図である。図106に示すA装置およびB装置の一方はP台2Fであり他方はCU3Fである。相手方に対しての要求が発生する装置をA装置とし、A装置からの要求を受信する装置をB装置としている。
A装置がCU3FでB装置がP台2Fの場合には、要求通番は加算通番であり、要求は遊技玉の加算要求である。この場合の具体的な通信シーケンスは図84に示したとおりである。
A装置がP台2FでB装置がCU3Fの場合には、要求通番は計数通番であり、要求は遊技玉の計数要求である。この場合の具体的な通信シーケンスは図86に示したとおりである。
ここでは、これらの双方の場合を概念化して説明する。A装置は、B装置に対する要求がない間は、(1)のとおり、要求通番mが更新されていない電文を送信する。ただし、通常の通番nは電文の送信ごとに更新する。B装置は、これを受信して、(2)のとおり電文を返信する。この電文では、通常の通番がn+1に更新されている。しかし、要求通番はmのまま更新されていない。
A装置で要求が発生しない間は、(1)(2)のように、通常の通番を更新しつつ、双方で電文を送信し合う。この間は、相手から受けた電文に含まれる通常の通番を見て、直前に送信した電文が相手にまで到達したか否かを判定する。
A装置で要求が発生すると、A装置は要求通番をm+1に更新し、(3)に示すように更新後の要求通番m+1を含む要求電文をB装置へ送信する。このとき、通常の通番もn+2に更新されている。なお、この要求電文には要求ビット(加算要求ビットあるいは計数要求ビット)をONにしたデータも含まれている。
要求通番m+1を含む要求電文を受信したB装置は、要求を承諾するか否かを判定する。たとえば、計数要求であれば、CU3F側で持玉を加算する処理が可能であるか否かを判定する。あるいは、加算要求であれば、P台2F側で遊技玉を加算する処理が可能であるか否かを判定する。持玉の加算処理が可能でない場合とは、たとえば、持玉を用いた処理(ワゴンサービスなど)の途中である場合である。また、遊技玉の加算処理が可能でない場合とは、たとえば、遊技玉が既に予め定めた上限値に達している場合である。
要求を承諾する場合には、(4)の上に記載のとおり、要求通番をm+2に更新した承諾電文をA装置へ送信する。これに対して、要求を拒絶する場合には、(4)の下に記載のとおり、要求通番がm+1のまま更新されていない拒絶電文(拒否電文ともいう。以下、同じ。)をA装置へ送信する。通常の通番は、いずれの場合にもn+3に更新される。
A装置は、直前の送信電文に含めた要求通番を記憶する記憶手段を備えている。(4)の電文を受信したA装置は、記憶手段に記憶している要求通番と、(4)の電文に含まれる要求通番とを比較判定する。その結果、記憶している要求通番と送信されてきた電文に含まれる要求通番とが同じ(この例ではm+1)であれば、要求が拒否されたと判定する。これに対して、記憶している要求通番に所定数(この例では1)を加えた値と送信されてきた電文に含まれる要求通番とが同じ(この例ではm+2)であれば(換言すると、送信されてきた要求通番が1つ進んでいれば)、要求が承諾されたと判定する。なお、要求が承諾されたと判定した場合には、さらに要求通番を1つ更新し、具体的な要求値(計数玉数や加算玉数)を含む電文をB装置へ送信する。一方、要求が拒否されたと判定した場合には、受信した要求通番を含む電文をB装置へ送信する。
仮に、(3)の要求電文がノイズその他の要因によりB装置に到達しなかった場合について、図106の(3)’に示している。この場合、B装置は(2)の電文を送信してから所定の待機時間(たとえば、200ms)が経過したときに無応答と判定して、(2)の電文を再送する。その結果、(3)’を送信したA装置には(2)の電文が届く。すると、A装置は、要求通番m+1の要求電文を送信したにも関わらず、これに対する返信電文の要求通番が要求承諾および要求拒否のいずれにも該当しないため(要求電文に含めた要求通番より1遅れた要求通番であるため)、要求電文が到達していないと判定する。なお、このような判定は、通常の通番の方を利用してすることも可能である。すなわち、要求通番に含めた通常の通番はn+3であるのに対して、返信電文に含まれる通常の通番はn+2であるため、このような状況に基づいて要求電文の未到達と判定できる。
A装置は、要求電文が到達していないと判定したときには、(3)の要求電文を再送する。
以上、説明したように、本実施の形態では、通常の通番とは別に要求通番が電文に含められて送信される。この要求通番は、通信相手に対して加算要求や計数要求等の動作を要求するときを契機として更新が開始され、要求動作の終了時あるいは要求に対する拒絶の際に更新が停止する。それ以外の間では、電文の送受信が行なわれても更新されない。
これに対して、通常の通番は、通信相手に対する要求の有無に関わらず、電文がやりとりされるごとに更新される(なお、通常の通番は、A装置およびB装置の一方でのみ更新され、他方は相手から受けた通番をそのまま返信する動作をしてもよい。)。
このため、通常の通番の場合、送信した要求電文が相手に届いたか否かを相手先からの受信電文に含まれる通番を用いて判定できるものの、その受信電文が要求承諾を示す承諾電文であるのか、要求拒絶を示す拒絶電文であるのかまでは特定できない。
ところが、上記のとおり、本実施の形態のように要求通番を利用した場合には、要求通番によって、送信した要求電文が相手に届いたか否かのみならず、相手から返信されてきた電文が承諾電文であるのか拒絶電文であるのかまでを特定できる。もちろん、本実施の形態のように、要求電文には要求ビット(加算要求ビットあるいは計数要求ビット)をONにしたデータが含まれるため、このデータを判定することでも、受信電文が承諾電文であるのか拒絶電文であるのかを特定できる。しかしながら、要求通番を利用すれば、このような要求ビットを電文から削除することも可能である。これによって電文データ量を削減でき、また、電文データの要求ビットを判定する処理も不要とすることができる。
<<通番と要求通番とのうち、一方のみ更新>>
図107は、通常の通番および要求通番に関するP台2FおよびCU3Fの動作の変形例を説明するための図である。この変形例は、要求通番が更新されるときには通常の通番は更新されていない点で、図106に示した例と相違する。
つまり、この変形例は、通常の通番と要求通番とのうち、要求が発生していないときには通常の通番のみが更新されて電文がやりとりされる。ところが、要求が発生すると、通常の通番の更新が停止して要求通番のみが更新される。その後、要求に対する一連の処理が終了するか、若しくは要求に対する拒絶電文が送信されるときに要求通番の更新が停止して、代わりに通常の通番の更新が開始される。
このため、図107の(1)(2)に示される、要求発生前の電文のやりとりでは、通常の通番がn、n+1に更新されている一方で要求通番mは更新されていない。ところが、要求の発生によって送信される(3)の要求電文では、通常の通番がn+1のままで更新されていない一方、要求通番がm+1に更新されている。同様に、要求電文に対する(4)の承諾電文および拒絶電文のいずれも、通常の通番はn+1のままで更新されていない。
この場合でも、(4)の電文を受信したA装置は、その電文に含まれる要求通番を判定することによって、その電文が承諾電文であるか拒絶電文であるかを判断できる。
また、(3)’に示すように、要求電文がB装置に届かずにB装置から(2)の電文が再送されてきた場合にも、A装置は、要求通番に基づいて要求電文が到達しなかったことを判定できる。
この変形例のように、要求発生時から要求に対する処理が終了するまで、通常の通番の更新を停止しても、その間は、要求通番が通常の通番の機能を肩代わりするために、何ら問題が生じない。また、その間は、通常の通番を更新したり、通常の通番を照合したりする処理が不要になるという効果も奏される。
<リカバリ情報の登録(更新)および消去(クリア)の契機>
図90〜図100に示した異常系シーケンスでは、P台2FやCU3Fで記憶しているリカバリ情報を用いてリカバリ処理を実行しシステムを復旧するシーケンスについて説明した。このリカバリ処理に用いられるリカバリ情報には、たとえば「前回最終送信通番」、「前回最終送信加算通番」、「前回最終送信計数通番」、「計数要求玉数」、「カードID」、「カード挿入時刻」、「店舗コード」、「SC基板ID」、「遊技玉情報」、「遊技情報」、「遊技玉数」および「玉単価」などがある。
これらリカバリ情報は、新たに登録または更新してP台2FやCU3Fに記憶させるタイミング(契機)がそれぞれの情報で異なる。図108は、リカバリ情報の登録(更新)および消去(クリア)の契機を説明するための図である。図108を参照してそれぞれのリカバリ情報の登録または更新のタイミング(契機)について説明する。「前回最終送信通番」は、P台2Fが状態情報応答のレスポンスをCU3Fに送信する時(状態情報応答送信時)に新たに登録または更新される。「前回最終送信加算通番」は、CU3Fから送信された状態情報要求のコマンドに含まれるCU状態のBit3=“1”(遊技玉加算要求時)で、P台2Fが状態情報応答のレスポンスをCU3Fに送信する時(状態情報応答送信時)に新たに登録または更新される。
「前回最終送信計数通番」および「計数要求玉数」は、P台2FがCU3Fに送信する状態情報応答のレスポンスに含まれる遊技台状態1のBit4=“1”(計数要求時)で、当該状態情報応答のレスポンスをCU3Fに送信する時(状態情報応答送信時)に新たに登録または更新される。「カードID」および「カード挿入時刻」は、P台2Fがカード挿入応答のレスポンスをCU3Fに送信する時(カード挿入応答送信時)に新たに登録または更新される。
「店舗コード」および「SC基板ID」は、P台2Fがカード挿入応答のレスポンスをCU3Fに送信する時(カード挿入応答送信時)またはP台2Fが計数履歴要求のコマンドをCU3Fから受信した時(計数履歴要求時)に新たに登録または更新される。「遊技玉情報」、「遊技情報」、「遊技玉数」および「玉単価」は、P台2Fが状態情報応答のレスポンスをCU3Fに送信する時(状態情報応答送信時)に新たに登録または更新される。
次に、図108を参照してそれぞれのリカバリ情報の消去(クリア)のタイミング(契機)について説明する。「前回最終送信通番」、「前回最終送信計数通番」および「計数要求玉数」は、P台2Fが通信開始応答のレスポンスをCU3Fに送信する時(通信開始応答送信時)またはP台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。「前回最終送信加算通番」は、P台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。
「カードID」および「カード挿入時刻」は、P台2Fがカード返却応答のレスポンスをCU3Fに送信する時(カード返却応答送信時)またはP台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。また、「カードID」および「カード挿入時刻」は、P台2Fが店舗コードの不一致を検知して通信開始応答のレスポンスをCU3Fに送信する時(店舗不一致検知した時の通信開始応答送信時)に情報が消去される。
「店舗コード」および「SC基板ID」は、P台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。「遊技玉情報」および「遊技情報」は、P台2Fが通信開始応答のレスポンスをCU3Fに送信する時(通信開始応答送信時)またはP台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。「遊技玉数」および「玉単価」は、P台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に情報が消去される。
<鍵管理サーバから通信制御ICまでの間の通信に使用される暗号鍵>
次に、鍵管理サーバから通信制御ICまでの間の通信に使用される暗号鍵について説明する。図109は、鍵管理サーバから通信制御IC325aFまでの間の通信に使用される暗号鍵を説明するための図である。まず、鍵管理サーバから通信制御IC325aFまでの間の通信に使用される暗号鍵には、主に基板出荷鍵、基板初期鍵、基板認証鍵、本認証鍵、仮認証鍵、有効鍵(商用)、通信鍵1(セッション鍵)および通信鍵2(セッション鍵)がある。基板出荷鍵は、CU制御部−SCの間の通信に利用され、出荷以前での通信テスト電文の暗号にのみ使用される。基板初期鍵は、CU制御部−SCの通信に利用され、ホールサーバとの最初の通信時にCU制御部323Fが受信し、CU制御部323FのRAMに記憶される。SC325bFは、製造時の埋め込み情報から基板初期鍵を生成してRAMに記憶する。基板初期鍵を用いた認証用通信(基板初期鍵モード)は限られた期間のみ許容(時限的運用)される。ここで、基板初期鍵モードは、前述したように、ホールサーバと少なくとも1回は正常に通信して、基板初期鍵を取得する必要があるため、セキュリティ性は担保されている。
ここで、「限られた期間」とは、たとえば、2日間という限定的期間である。このように、時限的運用を可能にすることによって、ホールにシステムを導入した段階ですぐに鍵管理サーバとの鍵交換ができない場合であっても、システムの導入直後からホールは営業を開始することが可能となる。なお、限定的期間としては、たとえば、毎朝9時〜17時までの間という具合に、1日の中での定めた期間を設定してもよい。
なお、前述の基板初期鍵モードは、基板初期鍵を用いた認証用通信を限られた期間可能にする制限を設けているが、本発明はこれに限定されるものではなく、使用できる金額(カード残額、あるいは現金)を制限してもよい。あるいは、可変表示装置における図柄の変動回数が一定回数に達した場合にゲームを強制終了させて遊技機を不能動化状態に制御してもよい。または、大当たりの累積回数が一定回数に達した場合にゲームを強制終了させて遊技機を不能動化状態に制御してもよい。その他、現金を投入することによる遊技のみを許容してカード残額を使用した遊技ができないようにしてもよく、持玉を使用した遊技のみに制限するようにしてもよい。
基板認証鍵は、CU制御部−SCの間の通信に利用され、鍵管理サーバより基板セキュリティ情報の一部として受信する暗号鍵である。基板認証鍵を用いた認証用通信を行なうことで、基板初期鍵を用いた時限的運用から恒久的運用(通常運用)に通信モード(基板認証鍵モード)が切換わる。この基板認証鍵は、CU制御部のRAMとSCのRAMとに記憶される。
基板初期鍵を用いた時限的運用および基板認証鍵を用いた恒久的運用のいずれについても、ホールサーバに記憶された有効鍵をCU制御部323Fが受信し、SC325bFがその有効鍵を通信制御IC325aFに対して設定することによりP台とCUとの間の通信が可能となることで実現される。
本認証鍵は、SC−通信制御ICの間の通信に利用され、鍵管理サーバから受信した更新情報から、SC325bFにより生成されてSC325bFのRAMに記憶されるとともに、通信制御IC325aFにおいてもSC325bFと同様に更新情報から生成されて通信制御IC325aFのRAMに記憶される。なお、この本認証鍵は、鍵管理サーバなどから本認証鍵そのものを取得するようにしてもよい。また、鍵管理サーバなどから更新情報を受信することなくCU制御部323Fと通信制御IC325aFとが自ら生成してもよい。さらに、鍵管理サーバなどから所定の第1データを取得するとともにCU制御部323Fと通信制御IC325aFとが自ら所定の第2データを生成し、それら第1データと第2データとから本認証鍵を生成するようにしてもよい。
仮認証鍵は、SC−通信制御ICの間の通信に利用され、本認証鍵が生成されるまでの間(又は設定された許容時間(たとえば2日)が経過するまでの間)、SC325bFと通信制御IC325aFとの間での暗号通信に使用される。この仮認証鍵による暗号通信(仮認証鍵モード)は限られた期間(たとえば2日)のみ許容(時限的運用)される。SC325bFおよび通信制御IC325aFは、製造段階から仮認証鍵をそれぞれのROMに記憶している。有効鍵(商用)は、ホールサーバとの最初の通信時にCU制御部323F経由でSC325bFが受信し、通信制御IC325aFに対して送信(設定)する鍵である。有効鍵が設定されることによってP台との通信が可能になる。なお、有効鍵は、通信制御IC325aF活性化用のデータである。換言すると、有効鍵は、CUとP台との間の通信を許可するための許可情報である。
通信鍵1(セッション鍵)は、CU制御部−SCの間の通信に利用され、対遊技機用の業務電文通信に用いられ、SC325bFが何らかの変数を用いて、毎営業日作成している。該変数として、たとえば、カウンタ値(乱数)や日時情報などを用いてもよい。通信鍵2(セッション鍵)は、SC−通信制御ICの間の通信に利用され、対遊技機用の業務電文通信に用いられる。
なお、前述に説明した鍵は、鍵のデータがそれぞれの部分にそのまま埋込まれている構成であっても、鍵のデータを生成するための情報がそれぞれの部分に記憶されていて、該情報を利用いて鍵のデータを生成する構成であってもよい。
次に、暗号鍵の取得方法と、取得した暗号鍵を用いて暗号通信を行なう方法について説明する。まず、SC325bFは、ホールサーバとの最初の通信時にCU制御部323F経由で有効鍵を取得する。SC325bFは、取得した有効鍵を通信制御IC325aFに対して送信(設定)することで、P台との通信が可能になる。CU制御部323Fはホールサーバとの最初の通信時に基板初期鍵を受信し、CU制御部323FのRAMに記憶される。SC325bFは、製造時の埋め込み情報から基板初期鍵を生成してRAMに記憶する。SC325bFは、取得した基板初期鍵を用いてCU制御部323Fと暗号認証を行ない、該基板初期鍵を用いて時限的にCU制御部323Fと暗号通信を行なう。また、電源投入時にCU制御部323Fから送られてきた接続要求を受信したホールサーバは、当該ホールサーバが設置されている遊技場を識別するための統一店舗コードをCU制御部323Fへ返信する。具体的には、ホールサーバのCPUの制御にしたがってホールサーバの入出力インターフェイスからCU制御部323Fへ統一店舗コードが送信される。
一方、CU制御部323FとSC325bFとの間では、両者に初期情報として記憶されている基板メーカコードを用いた認証が行なわれる。基板メーカコードとは、セキュリティ基板325Fを製造したメーカを特定するコードのことである。基板メーカコードを用いた認証に成功したことを条件として、基板接続要求と基板接続応答とのやり取りが行なわれる(図115参照)。CU制御部323FからSC325bFへ送信される基板接続要求の中に上記統一店舗コードが含まれており、基板接続要求を受信することによりSC325bFが統一店舗コードを取得する。
次に、CU制御部323Fは、鍵管理サーバに対して基板セキュリティ情報を要求し、鍵管理サーバがホールサーバを介して送信してきた基板セキュリティ情報を受信することで、該基板セキュリティ情報に含まれる基板認証鍵を取得する。CU制御部は、取得した基板認証鍵を用いてSCと暗号認証を行ない、該基板認証鍵を用いてSCと暗号通信を行なう。なお、CU制御部323Fは、基板認証鍵を取得後すぐに基板初期鍵から基板認証鍵に鍵を変更するのではなく、後述するように遊技機が非稼動状態になっていることを条件にして鍵を変更する。
この基板認証鍵は、鍵管理サーバなどから取得する代わりに、CU制御部323Fが自ら生成してもよく、また、鍵管理サーバなどから所定の第1データを取得するとともにCU制御部323Fが自ら所定の第2データを生成し、それら第1データと第2データとから基板認証鍵を生成するようにしてもよい。
次に、SC325bFは、記憶してある仮認証鍵を用いて通信制御IC325aFと暗号通信を行なう。そして、SCは、基板認証鍵を用いてCU制御部と暗号通信を行なうことで鍵管理サーバから取得した更新情報を仮認証鍵で復号し、基板問合せ番号を照会する。SCは、照会した基板問合せ番号が一致した場合、更新情報から本認証鍵を生成し、生成した本認証鍵を用いて通信制御IC325aFと暗号通信を行なう。なお、本認証鍵は、通信制御IC325aFにおいても出荷時から記憶されているものではなく、SC325bFと同様に更新情報から生成される。
次に、SCは、CU制御部に対して通信鍵1を通知し、以降のCU制御部との間の通信を、通信鍵1を用いて行なうことで、遊技機との業務電文通信が可能となる。また、SCは、通信制御ICに対して有効鍵を設定することで、通信制御ICから通信鍵2の通知を受け、以降の通信制御ICとの間の通信を、通信鍵2を用いて行なうことで、遊技機との業務電文通信が可能となる。
<CU制御部とSCとの間で送受信するコマンドおよびレスポンス>
次に、図76に示したCU3F内での通信について説明する。特に、CU制御部323Fと、セキュリティ基板325Fのセキュリティチップ(SC)325bとの間の通信について説明する。まず、図110、図111を参照して、CU制御部323Fとセキュリティチップ(SC)325bとの間で送受信されるコマンドおよびレスポンスの概略を説明する。
図110、図111には、送信方向および送信されるデータがコマンドかレスポンスかの別と送信情報の名称とその概略が示されている。
まず、CU制御部323FからSC325bFに対して基板接続要求という名称のコマンドが送信される。この基板接続要求のコマンドは、SC325bFに対して遊技機(P台2F)との接続を要求するものである。SC325bFからCU制御部323Fに対して基板接続応答という名称のレスポンスが送信される。この基板接続応答のレスポンスは、CU制御部323Fに対して基板接続要求の応答を通知するものである。
CU制御部323FからSC325bFに対して基板出荷鍵要求のコマンドが送信される。この基板出荷鍵要求のコマンドは、SC325bFに対して基板出荷鍵を要求するものである。SC325bFからCU制御部323Fに対して基板出荷鍵応答のレスポンスが送信される。この基板出荷鍵応答のレスポンスは、CU制御部323Fに対して基板出荷鍵を通知するものである。
CU制御部323FからSC325bFに対して基板メーカコード認証要求1のコマンドが送信される。基板メーカコードとは、セキュリティ基板325Fを製造したメーカを特定するコードであり、CU制御部323FとSC325bFとに記憶されている。この基板メーカコード認証要求1のコマンドは、SC325bFに対して基板メーカコードの認証を要求するものである。SC325bFからCU制御部323Fに対して基板メーカコード認証応答1のレスポンスが送信される。この基板メーカコード認証応答1のレスポンスは、CU制御部323Fに対して基板シリアルIDの認証情報を通知するものである。
CU制御部323FからSC325bFに対して基板メーカコード認証要求2のコマンドが送信される。この基板メーカコード認証要求2のコマンドは、SC325bFに対して基板シリアルIDの認証を要求するものである。SC325bFからCU制御部323Fに対して基板メーカコード認証応答2のレスポンスが送信される。この基板メーカコード認証応答2のレスポンスは、CU制御部323Fに対して基板メーカコードの認証情報を通知するものである。
CU制御部323FからSC325bFに対して基板シリアルID認証要求1のコマンドが送信される。この基板シリアルID認証要求1のコマンドは、SC325bFに対して基板シリアルIDの認証を要求するものである。SC325bFからCU制御部323Fに対して基板シリアルID認証応答1のレスポンスが送信される。この基板シリアルID認証応答1のレスポンスは、CU制御部323Fに対して基板シリアルIDの認証情報を通知するものである。
CU制御部323FからSC325bFに対して基板シリアルID認証要求2のコマンドが送信される。この基板シリアルID認証要求2のコマンドは、SC325bFに対して基板シリアルIDの認証を要求するものである。SC325bFからCU制御部323Fに対して基板シリアルID認証応答2のレスポンスが送信される。この基板シリアルID認証応答2のレスポンスは、CU制御部323Fに対して基板シリアルIDの認証情報を通知するものである。
CU制御部323FからSC325bFに対して基板初期鍵認証要求1のコマンドが送信される。この基板初期鍵認証要求1のコマンドは、SC325bFに対して基板初期鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板初期鍵認証応答1のレスポンスが送信される。この基板初期鍵認証応答1のレスポンスは、CU制御部323Fに対して基板初期鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対して基板初期鍵認証要求2のコマンドが送信される。この基板初期鍵認証要求2のコマンドは、SC325bFに対して基板初期鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板初期鍵認証応答2のレスポンスが送信される。この基板初期鍵認証応答2のレスポンスは、CU制御部323Fに対して基板初期鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対して基板認証鍵認証要求1のコマンドが送信される。この基板認証鍵認証要求1のコマンドは、SC325bFに対して基板認証鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板認証鍵認証応答1のレスポンスが送信される。この基板認証鍵認証応答1のレスポンスは、CU制御部323Fに対して基板認証鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対して基板認証鍵認証要求2のコマンドが送信される。この基板認証鍵認証要求2のコマンドは、SC325bFに対して基板認証鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板認証鍵認証応答2のレスポンスが送信される。この基板認証鍵認証応答2のレスポンスは、CU制御部323Fに対して基板認証鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対して基板出荷鍵認証要求1のコマンドが送信される。この基板出荷鍵認証要求1のコマンドは、SC325bFに対して基板出荷鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板認証鍵認証応答1のレスポンスが送信される。この基板出荷鍵認証応答1のレスポンスは、CU制御部323Fに対して基板出荷鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対して基板出荷鍵認証要求2のコマンドが送信される。この基板出荷鍵認証要求2のコマンドは、SC325bFに対して基板出荷鍵の認証を要求するものである。SC325bFからCU制御部323Fに対して基板出荷鍵認証応答2のレスポンスが送信される。この基板出荷鍵認証応答2のレスポンスは、CU制御部323Fに対して基板出荷鍵の認証結果を通知するものである。
CU制御部323FからSC325bFに対してバージョン情報通知のコマンドが送信される。このバージョン情報通知のコマンドは、SC325bFに対して基板認証鍵のバージョンを通知するものである。SC325bFからCU制御部323Fに対してバージョン情報応答のレスポンスが送信される。このバージョン情報応答のレスポンスは、CU制御部323Fに対してバージョン情報を受信したことを通知するものである。
CU制御部323FからSC325bFに対して基板認証結果通知のコマンドが送信される。この基板認証結果通知のコマンドは、SC325bFに対してCU制御部323FとSC325bFとの間の認証結果を通知するものである。SC325bFからCU制御部323Fに対して基板認証結果応答のレスポンスが送信される。この基板認証結果応答のレスポンスは、CU制御部323Fに対してCU制御部323FとSC325bFとの間の認証結果を通知するものである。
CU制御部323FからSC325bFに対してセキュリティ基板問合せ指示通知のコマンドが送信される。このセキュリティ基板問合せ指示通知のコマンドは、SC325bFに対してセキュリティ基板問合せ情報を要求するものである。SC325bFからCU制御部323Fに対してセキュリティ基板問合せ結果のレスポンスが送信される。このセキュリティ基板問合せ結果のレスポンスは、CU制御部323Fに対してセキュリティ基板問合せ情報を通知するものである。
CU制御部323FからSC325bFに対してセキュリティ基板情報通知のコマンドが送信される。このセキュリティ基板情報通知のコマンドは、SC325bFに対してセキュリティ基板情報を通知するものである。SC325bFからCU制御部323Fに対してセキュリティ基板情報結果のレスポンスが送信される。このセキュリティ基板情報結果のレスポンスは、CU制御部323Fに対してセキュリティ基板情報を受信したことを通知するものである。
CU制御部323FからSC325bFに対してカウンタ情報要求のコマンドが送信される。このカウンタ情報要求のコマンドは、SC325bFに対してカウンタ情報を要求するものである。SC325bFからCU制御部323Fに対してカウンタ情報応答のレスポンスが送信される。このカウンタ情報応答のレスポンスは、CU制御部323Fに対してカウンタ情報を通知するものである。
CU制御部323FからSC325bFに対して通信鍵要求のコマンドが送信される。この通信鍵要求のコマンドは、SC325bFに対して通信鍵を要求するものである。SC325bFからCU制御部323Fに対して通信鍵応答のレスポンスが送信される。この通信鍵応答のレスポンスは、CU制御部323Fに対して通信鍵を通知するものである。
CU制御部323FからSC325bFに対して遊技機チップ問合せ指示通知のコマンドが送信される。この遊技機チップ問合せ指示通知のコマンドは、SC325bFに対して遊技機チップの問合せ情報を要求するものである。SC325bFからCU制御部323Fに対して遊技機チップ問合せ結果のレスポンスが送信される。この遊技機チップ問合せ結果のレスポンスは、CU制御部323Fに対して遊技機チップの問合せ情報を通知するものである。
CU制御部323FからSC325bFに対して遊技機チップ情報通知のコマンドが送信される。この遊技機チップ情報通知のコマンドは、SC325bFに対して遊技機チップ情報の照合結果を通知するものである。SC325bFからCU制御部323Fに対して遊技機チップ情報結果のレスポンスが送信される。この遊技機チップ情報結果のレスポンスは、CU制御部323Fに対して遊技機チップ照合結果を受信したことを通知するものである。遊技機チップ情報結果のレスポンスに含まれる通知結果は、主制御チップの照合結果および払出制御チップを照合結果を併せて遊技機チップ情報通知結果である。そのため、遊技機チップ情報通知結果は、“0x00”の場合主制御チップの照合結果がOKで払出制御チップを照合結果もOKであることを表し、“0x01”の場合主制御チップの照合結果がOKで払出制御チップを照合結果は未取得であることを表し、“0x02”の場合主制御チップの照合結果が未取得で払出制御チップを照合結果はOKであることを表し、“0x03”の場合主制御チップの照合結果が未取得で払出制御チップを照合結果も未取得であることを表している。また、遊技機チップ情報通知結果は、“0x04”の場合主制御チップの照合結果がOKで払出制御チップを照合結果はNGであることを表し、“0x05”の場合主制御チップの照合結果がNGで払出制御チップを照合結果はOKであることを表し、“0x07”の場合主制御チップの照合結果がNGで払出制御チップを照合結果は未取得であることを表し、“0x08”の場合主制御チップの照合結果が未取得で払出制御チップを照合結果はNGであることを表している。このように、遊技機チップ情報通知結果は、主制御チップおよび払出制御チップの照合結果を個別に表した情報としてCU制御部323Fに対して通知される。このように、鍵管理サーバ800Fから取得した主制御チップおよび払出制御チップのそれぞれの照合結果を個別に表した情報として出力するので、いずれの制御手段が照合されなかったのかを容易に判断することができる。
CU制御部323FからSC325bFに対して基板状態要求のコマンドが送信される。この基板状態要求のコマンドは、SC325bFに対して基板状態を要求するものである。SC325bFからCU制御部323Fに対して基板状態応答のレスポンスが送信される。この基板状態応答のレスポンスは、CU制御部323Fに対して基板状態を通知するものである。
<CU制御部とSCとの通信における主なシーケンス>
次に、図112〜図123に基づいて、CU制御部323FにおけるCPUで実行される処理と、セキュリティチップ(SC)325bで実行される処理とを説明する。
まず、図112を参照して、CU制御部323Fの電源投入・ホール設置時の立上の処理を説明する。この図112は、CU3Fが遊技場に設置されて最初に電源を立上げたときのシーケンスであり、特に、基板初期鍵を用いたホール設置時の立上シーケンスについて説明する。
まず、CU3Fの電源を投入すると、CU制御部323FおよびSC325bFが起動される。CU3Fが遊技場に設置されて最初に電源を立上げたときに、CU制御部323Fは、上位装置より(具体的にはホールサーバより)基板初期鍵A、基板初期鍵Aのメッセージ認証コード(たとえば、MAC鍵など、以下単にMAC鍵ともいう)、有効鍵(商用/P台出荷用)を取得する。ここで、基板初期鍵Aは、遊技場に納入されてから最初に上位装置へ通信する時、ホールサーバからダウンロードしてCU制御部323Fに記憶する暗号鍵であり、鍵管理センタに設置された鍵管理サーバに記憶されている基板情報(基板シリアルIDと基板認証鍵)が取得されるまで、CU制御部323FとSC325bFとの通信に利用する暗号鍵である。なお、基板初期鍵Aは、基板メーカコードを用いて復号され、一方、基板初期鍵AのMAC鍵も同様に、基板メーカコードを用いて復号される。これらの復号は、DES(Data Encryption Standard)、AES(Advanced Encryption Standard)やIDEA(International Data Encryption Algorithm)などの暗号方式に則った復号方式で行なわれる。
その後、CU制御部323FおよびSC325bFは、基板メーカコード認証シーケンス、基板初期鍵認証シーケンス、セキュリティ基板情報問合せシーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323FとSC325bFとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323FおよびSC325bFは、暗号鍵にホールサーバより取得した基板初期鍵を用い、基板初期鍵認証シーケンスを行ない、基板初期鍵認証が完了した場合に認証OKとなる。なお、基板初期鍵認証シーケンスの詳細な処理については、後述する。
その後、CU制御部323FおよびSC325bFは、暗号鍵にホールサーバより取得した基板初期鍵を用い、セキュリティ基板情報問合せシーケンスを行ない、セキュリティ基板情報を取得することができた場合に取得OKとなる。セキュリティ基板情報は、鍵管理センタの鍵管理サーバから取得し、基板シリアルIDや基板認証鍵などを含んでいる。なお、セキュリティ基板情報問合せシーケンスの詳細な処理については、後述する。基板認証鍵は、鍵管理センタに設置された鍵管理サーバからダウンロードしてCU制御部323FとSC325bFとの通信に利用する暗号鍵である。鍵管理サーバは、基板シリアル番号等に対応付けて基板認証鍵を記憶している。
セキュリティ基板情報問合せシーケンスでセキュリティ基板情報を取得することができた場合、SC325bFは、通信制御IC325aFとの間で認証を実行する。
その後、CU制御部323FおよびSC325bFは、暗号鍵にホールサーバより取得した基板初期鍵を用い、通信鍵交換シーケンスを行ない、業務電文通信用の通信鍵を交換する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に基板初期鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵交換シーケンスでは、基板情報取得シーケンスで基板情報を取得できた場合、基板認証鍵を暗号鍵に用いるが、基板情報を取得できなかった場合、基板初期鍵を時限的に暗号鍵に用いる。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成できた場合、SC325bFは、通信制御IC325aFから遊技機チップ情報を取得する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報には、主制御チップ番号や払出制御チップ番号などが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
次に、CU制御部323Fは、SC325bFに対してセキュリティ基板および遊技機の状態を要求するため基板情報要求のコマンドをSC325bFへ送信する。SC325bFは、基板状態=運用可を含む基板状態応答のレスポンスをCU制御部323Fに返信する。なお、CU制御部323Fは、セキュリティ基板の運用が不可の場合、それぞれの基板状態にあった処理が行なわれる。具体的に、CU制御部323Fは、基板状態=通信鍵要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、通信鍵交換シーケンスへ処理を戻す。つまり、SC325bFは、通信鍵交換シーケンスにおいて正常に通信鍵を生成できていないと判断した場合、基板状態=通信鍵要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=P台チップ問合せ要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、遊技機チップ情報問合せシーケンスへ処理を戻す。つまり、SC325bFは、遊技機チップ情報問合せシーケンスにおいて正常に主制御チップ番号や払出制御チップ番号を取得することができていないと判断した場合、基板状態=P台チップ問合せ要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=運用不可を含む基板状態応答のレスポンスを受信した場合、基板状態要求をSC325bFに対して繰返し送信する。つまり、SC325bFは、通信鍵交換シーケンスや遊技機チップ情報問合せシーケンス以外で正常でないと判断した場合、基板状態=運用不可を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
以上の処理を行なうことで、CU制御部323FおよびSC325bFは、遊技機と業務電文通信が可能となる。この遊技機と業務電文通信を行なうことにより遊技機において遊技が可能となる。この遊技機との業務電文通信には、通信鍵(セッション鍵)を利用して運用される。このときの通信は、前述したように、時限的な通信であり、一定期間(たとえば、2日)のみ許容される。以上の処理を経て行なわれる通信モードが制限通信モード(基板初期鍵モード(基板初期鍵運用))である。この時限運用のまま一定期間(たとえば、2日)がオーバーした場合には仮運用が停止されるとともに、オーバーしたことがSC325bFからCU制御部323F、ホールサーバを経由して鍵管理サーバへ通知される。
その後、CU3Fは、P台2Fに対して、リカバリ要求を行ない、P台2Fは、前回最終送信通番、前回挿入中カードID、前回カード挿入時刻を含むリカバリ応答のレスポンス(リカバリ応答)をCU3Fに返信する。
次に、図113を参照して、CU制御部323Fの電源投入・通常立上の処理を説明する。この図113は、CU3Fが遊技場に設置された後、通常に電源を立上げたときのシーケンスであり、特に、基板認証鍵を用いた立上シーケンスについて説明する。
まず、CU3Fの電源を投入すると、CU制御部323FおよびSC325bFが起動される。CU3Fが遊技場に設置されて最初に電源を立上げたときに、CU制御部323Fは、上位装置より(具体的には鍵管理サーバより、ホールサーバを経由して)基板シリアルID鍵、基板認証鍵バージョン、基板認証鍵A、基板認証鍵AのMAC鍵を取得する。なお、基板シリアルID鍵は、基板初期鍵で復号され、基板初期鍵Aは、基板シリアルIDを用いて復号され、さらに、基板初期鍵AのMAC鍵も同様に、基板シリアルIDを用いて復号される。これらの復号は、DES、AESやIDEAなどの暗号方式に則った復号方式で行なわれる。
その後、CU制御部323FおよびSC325bFは、基板メーカコード認証シーケンス、基板認証鍵認証シーケンス、セキュリティ基板情報問合せシーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323FとSC325bFとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323FおよびSC325bFは、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、基板認証鍵認証シーケンスを行なう。なお、基板認証鍵認証シーケンスの詳細な処理については、後述する。
その後、CU制御部323FおよびSC325bFは、鍵の更新が有る場合にのみ、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、セキュリティ基板情報問合せシーケンスを行なう。
基板認証鍵認証シーケンスで基板認証鍵を認証でき鍵更新が無かった場合や、鍵更新が有り、セキュリティ基板情報問合せシーケンスで認証ができると、SC325bFは、通信制御IC325aFとの間で認証を実行する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に基板認証鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成することができた場合、SC325bFは、通信制御IC325aFから遊技機チップ情報をさらに取得する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報には、主制御チップ番号や払出制御チップ番号などが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
次に、CU制御部323Fは、SC325bFに対してセキュリティ基板および遊技機の状態を要求するため基板情報要求のコマンドをSC325bFへ送信する。SC325bFは、基板状態=運用可を含む基板状態応答のレスポンスをCU制御部323Fに返信する。なお、CU制御部323Fは、セキュリティ基板の運用が不可の場合、それぞれの基板状態にあった処理が行なわれる。具体的に、CU制御部323Fは、基板状態=通信鍵要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、通信鍵交換シーケンスへ処理を戻す。つまり、SC325bFは、通信鍵交換シーケンスにおいて正常に通信鍵を生成できていないと判断した場合、基板状態=通信鍵要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=P台チップ問合せ要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、遊技機チップ情報問合せシーケンスへ処理を戻す。つまり、SC325bFは、遊技機チップ情報問合せシーケンスにおいて正常に主制御チップ番号や払出制御チップ番号を取得することができていないと判断した場合、基板状態=P台チップ問合せ要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=運用不可を含む基板状態応答のレスポンスを受信した場合、基板状態要求をSC325bFに対して繰返し送信する。つまり、SC325bFは、通信鍵交換シーケンスや遊技機チップ情報問合せシーケンス以外で正常でないと判断した場合、基板状態=運用不可を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
以上の処理を行なうことで、CU制御部323FおよびSC325bFは、遊技機と業務電文通信が可能となる。この遊技機と業務電文通信を行なうことにより遊技機において遊技が可能となる。この遊技機との業務電文通信には、通信鍵(セッション鍵)が利用される。このときの通信は、制限通信モードのような制限のない通常通信モード(基板認証鍵モード(基板認証鍵運用))である。
次に、図114を参照して、CU制御部323Fの電源投入・工場出荷時立上の処理を説明する。この図114は、CU3Fが遊技場に出荷される前の工場出荷時のシーケンスを示し、特に、基板出荷鍵を用いた工場出荷立上シーケンスについて説明する。当該シーケンスは、工場出荷時、上位装置に接続していない状態のCU制御部323FおよびSC325bFにおける処理である。
まず、CU3Fの電源を投入すると、CU制御部323FおよびSC325bFが起動される。CU制御部323FおよびSC325bFは、基板メーカコード認証シーケンス、基板初期鍵認証シーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323FとSC325bFとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323FおよびSC325bFは、暗号鍵に基板初期鍵を用い、基板初期鍵認証シーケンスを行なう。しかし、工場出荷時の段階のため未だ遊技場にCU3Fが設置されていないため、遊技場のホールサーバより基板初期鍵をCU制御部323Fが取得できておらず、その結果、基板初期鍵認証の結果がNGとなる。
その後、CU制御部323Fは、基板初期鍵認証シーケンスが認証NGとなったため、CU制御部323Fは、SC325bFにセキュリティ基板325Fのテストに用いる基板出荷鍵を要求する、基板出荷鍵要求のコマンドをSC325bFに送信する。SC325bFは、CU制御部323Fから基板出荷鍵要求のコマンドを受信後、基板出荷鍵を含む基板出荷鍵応答のレスポンスをCU制御部323Fに送信する。
その後、CU制御部323FおよびSC325bFは、暗号鍵にSC325bFより取得した基板出荷鍵を用い、基板出荷鍵認証シーケンスを行なう。なお、基板出荷鍵認証シーケンスの詳細な処理については、後述する。
基板出荷鍵認証シーケンスで基板出荷鍵を認証できた場合、SC325bFは、通信制御IC325aFとの間で認証を実行する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に基板出荷鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成できた場合、SC325bFは、通信制御IC325aFから遊技機チップ情報を取得する。
その後、CU制御部323FおよびSC325bFは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報には、主制御チップ番号や払出制御チップ番号などが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
その後、CU3Fは、P台2Fに対して、通信テスト要求を行ない、P台2Fは通信テスト応答をCU3Fに送信する。
次に、CU制御部323Fは、SC325bFに対してセキュリティ基板および遊技機の状態を要求するため基板情報要求のコマンドをSC325bFへ送信する。SC325bFは、基板状態=運用可を含む基板状態応答のレスポンスをCU制御部323Fに返信する。なお、CU制御部323Fは、セキュリティ基板の運用が不可の場合、それぞれの基板状態にあった処理が行なわれる。具体的に、CU制御部323Fは、基板状態=通信鍵要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、通信鍵交換シーケンスへ処理を戻す。つまり、SC325bFは、通信鍵交換シーケンスにおいて正常に通信鍵を生成できていないと判断した場合、基板状態=通信鍵要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=P台チップ問合せ要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、遊技機チップ情報問合せシーケンスへ処理を戻す。つまり、SC325bFは、遊技機チップ情報問合せシーケンスにおいて正常に主制御チップ番号や払出制御チップ番号を取得することができていないと判断した場合、基板状態=P台チップ問合せ要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=運用不可を含む基板状態応答のレスポンスを受信した場合、基板状態要求をSC325bFに対して繰返し送信する。つまり、SC325bFは、通信鍵交換シーケンスや遊技機チップ情報問合せシーケンス以外で正常でないと判断した場合、基板状態=運用不可を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
以上の処理を行なうことで、CU制御部323FおよびSC325bFは、遊技機と通信テスト電文のみの通信が可能となる。この通信テスト電文の通信を行なうことにより工場出荷時の通信テストが行われる。この工場出荷時の通信テストに合格したCU3Fが遊技場に納入されて最初の電源立上時のシーケンスが図112で説明したホール設置立上シーケンスであり、その後基板認証鍵の取得後に実行されるシーケンスが図113で説明した通常立上シーケンスである。
次に、図115を参照して、基板メーカコードの認証シーケンスの処理を説明する。
まず、CU制御部323Fは、SC325bFに対して、基板メーカコードの認証を要求する基板メーカコード認証要求1のコマンドを送信する。なお、基板メーカコード認証は、チャレンジ/レスポンス方式を用いて行なうため、CU制御部323Fは、SC325bFに対して、チャレンジコードを要求する。
基板メーカコード認証要求1のコマンドを受信したSC325bFは、基板メーカコードに基づくチャレンジコードを生成し、生成したチャレンジコードを基板メーカコード認証応答1のレスポンスでCU制御部323Fに通知する。
基板メーカコード認証応答1のコマンドを受信したCU制御部323Fは、チャレンジコードに基づくレスポンスコードを生成し、生成したレスポンスコードを基板メーカコード認証要求2のコマンドでSC325bFに通知する。具体的には、基板メーカコードを鍵として受信したチャレンジコードを暗号化してレスポンスコードを生成する。
基板メーカコード認証要求2のコマンドを受信したSC325bFは、レスポンスコードをチェックして(具体的には基板メーカコードを鍵としてレスポンスコードを復号してチャレンジコードを抽出して)チャレンジコードが一致すればチェック結果がOKであるとする。そして、当該チェック結果を基板メーカコード認証応答2のレスポンスでCU制御部323Fに通知する。このとき、CU制御部323Fは、基板メーカコード認証結果などの認証ログ情報をSC325bFから取得する。
一方、チャレンジコードが一致しなければチェック結果がNG(不適正)であるとする。その場合に、n回際認証を繰り返し、n回連続でNGの場合にSC325bFが無応答状態(HALT)となり、基板認証鍵と本認証鍵とがクリアされる。この無応答状態(HALT)となった後には、SC325bFが通信制御IC325aFと認証を行なうことはなく、工場で修理を行なうこととなる。
CU制御部323Fは、SC325bFにCU制御部固有情報(統一店舗コード、台番、現在時刻)を通知して、遊技機との接続を要求する基板接続要求のコマンドを送信する。
SC325bFは、CU制御部323Fからの基板接続要求のコマンドを受信後、統一店舗コード、台晩、現在時刻の情報を保持し、前回の統一店舗コードが一致しているときは、CU制御部323Fに対して接続要求を受付けた(OK)ことを通知する基板接続応答のレスポンスを返信する。
一方、前回の統一店舗コードと不一致であるときは、CU制御部323Fに対して接続要求を受付けていない(NG)ことを通知する基板接続応答のレスポンスを返信し、RAMに記憶されている基板認証鍵をクリアするとともに、基板初期鍵を暗号鍵として処理を進めるモードである基板初期鍵モード(図112参照)に遷移する。このとき、CU制御部323Fは、基板接続要求結果などの認証ログ情報をSC325bFから取得する。
次に、図116を参照して、基板初期鍵または基板出荷鍵の認証シーケンスの処理を説明する。
まず、図116に示すように、基板初期鍵を暗号鍵として処理を進めるモードである基板初期鍵モードの状態の場合には、図116において基板初期鍵を用いた認証が行われるが、基板出荷鍵を暗号鍵として処理を進めるモードである基板出荷鍵モードの状態の場合には、図116において基板出荷鍵を用いた認証が行われることになる。よって、図116の「/」はいずれか一方を表す記号である。CU制御部323Fは、SC325bFに対して、基板初期鍵または基板出荷鍵で認証情報の乱数を暗号化し、MAC鍵でアルゴリズム(たとえば、ハッシュ関数を用いてH−MACアルゴリズムなど)を算出して、認証情報を要求する基板初期鍵/基板出荷鍵認証要求1のコマンドを送信する。なお、基板初期鍵/基板出荷鍵認証要求1のコマンドは暗号化していないが、暗号鍵に基板初期鍵/基板出荷鍵を用いて、暗号化してもよい。基板初期鍵/基板出荷鍵認証要求1のコマンドを受信したSC325bFは、基板初期鍵または基板出荷鍵を検証するため、認証情報の乱数を復号化し、MACをチェックする。
基板初期鍵/基板出荷鍵認証要求1のコマンドを受信したSC325bFは、CU制御部323Fに対して、基板初期鍵または基板出荷鍵で認証情報の乱数Aを暗号化し、MAC鍵でH−MACを算出して、基板初期鍵/基板出荷鍵認証応答1のレスポンスで返信する。
基板初期鍵/基板出荷鍵認証応答1のコマンドを受信したCU制御部323Fは、基板初期鍵または基板出荷鍵を検証するため、認証情報の乱数Aを復号化し、MACをチェックする。
その後、CU制御部323Fは、SC325bFに対して、基板初期鍵または基板出荷鍵で認証情報の乱数Bを暗号化し、MAC鍵でH−MACを算出して、基板初期鍵/基板出荷鍵認証要求2のコマンドで送信する。なお、基板初期鍵/基板出荷鍵認証要求2のコマンドは、暗号鍵に基板初期鍵または基板出荷鍵を用いて、暗号化してある。
基板初期鍵/基板出荷鍵認証要求2のコマンドを受信したSC325bFは、CU制御部323Fに対して、基板初期鍵または基板出荷鍵を検証するため、認証情報の乱数Bを復号化し、MACをチェックする。そして、SC325bFは、CU制御部323Fに対して、認証結果を基板初期鍵/基板出荷鍵認証応答2のレスポンスで返信する。このとき、CU制御部323Fは、基板初期鍵認証結果、基板出荷鍵認証結果などの認証ログ情報をSC325bFから取得する。
次に、図117を参照して、基板シリアルIDおよび基板認証鍵の認証シーケンスの処理を説明する。
まず、CU制御部323FとSC325bFとの通信は、基板認証鍵を暗号鍵として処理を進めるモードである基板認証鍵モードの状態において、CU制御部323Fは、SC325bFに対して、基板シリアルIDの認証を要求する基板シリアルID認証要求1のコマンドを送信する。なお、基板シリアルID認証は、チャレンジ/レスポンス方式を用いて行なうため、CU制御部323Fは、SC325bFに対して、チャレンジコードを要求する。
基板シリアルID認証要求1のコマンドを受信したSC325bFは、基板シリアルIDに基づくチャレンジコードを生成し、生成したチャレンジコードを基板シリアルID認証応答1のレスポンスでCU制御部323Fに通知する。
基板シリアルID認証応答1のコマンドを受信したCU制御部323Fは、チャレンジコードに基づくレスポンスコードを生成し(具体的には基板メシリアルIDを鍵としてチャレンジコードを暗号化してレスポンスコードを生成し)、生成したレスポンスコードを基板シリアルID認証要求2のコマンドでSC325bFに通知する。
基板シリアルID認証要求2のコマンドを受信したSC325bFは、レスポンスコードをチェックして(具体的には基板メシリアルIDを鍵としてレスポンスコードを復号してチャレンジコードを抽出して)、チャレンジコードが一致すればチェック結果がOKであるとする。そして、当該チェック結果を基板シリアルID認証応答2のレスポンスでCU制御部323Fに通知する。なお、チェック結果がNGの場合、SC325bFは、CU制御部323Fに対してチェック結果を、基板認証結果通知および基板認証結果応答での認証結果に含め、NGを通知する。このとき、CU制御部323Fは、基板シリアルID認証結果などの認証ログ情報をSC325bFから取得する。
その後、CU制御部323Fは、SC325bFに対して、基板認証鍵のバージョン情報を通知するためにバージョン情報通知のコマンドを送信する。なお、バージョン情報通知のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。
バージョン情報通知のコマンドを受信したSC325bFは、CU制御部323Fに対して基板認証鍵のバージョン情報を受信したことを通知するために、バージョン情報応答のレスポンスを返信する。なお、バージョン情報応答のレスポンスは暗号化していないが、暗号鍵に基板認証鍵を用いて暗号化してもよい。
その後、CU制御部323Fは、SC325bFに対して、基板認証鍵で認証情報の乱数を暗号化し、MAC鍵でH−MACを算出して、認証情報を要求する基板認証鍵認証要求1のコマンドを送信する。なお、基板認証鍵認証要求1のコマンドは基板認証鍵で暗号化したが、暗号鍵に基板初期鍵または基板出荷鍵を用いて暗号化してもよい。基板認証鍵認証要求1のコマンドを受信したSC325bFは、基板認証鍵を検証するため、認証情報の乱数を復号化し、MACをチェックする。
基板認証鍵認証要求1のコマンドを受信したSC325bFは、CU制御部323Fに対して、基板認証鍵で認証情報の乱数Aを暗号化し、MAC鍵でH−MACを算出して、基板認証鍵認証応答1のレスポンスで返信する。
基板認証鍵認証応答1のコマンドを受信したCU制御部323Fは、基板認証鍵を検証するため、認証情報の乱数Aを復号化し、MACをチェックする。
その後、CU制御部323Fは、SC325bFに対して、基板認証鍵で認証情報の乱数Bを暗号化し、MAC鍵でH−MACを算出して、基板認証鍵認証要求2のコマンドで送信する。なお、基板認証鍵認証要求2のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。
基板認証鍵認証要求2のコマンドを受信したSC325bFは、CU制御部323Fに対して、基板認証鍵を検証するため、認証情報の乱数Bを復号化し、MACをチェックする。そして、SC325bFは、CU制御部323Fに対して、認証結果を基板認証鍵認証応答2のレスポンスで返信する。
その後、CU制御部323Fは、SC325bFに対して、基板認証結果を通知するために、基板認証結果通知のコマンドを送信する。なお、基板認証結果通知のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。基板認証結果通知のコマンドは、基板シリアルID認証と基板認証鍵の認証結果をSC325bFに対して通知する。
基板認証結果通知のコマンドを受信したSC325bFは、CU制御部323Fに対して、基板シリアルID認証と基板認証鍵の認証結果を通知するために、基板認証結果応答のコマンドを送信する。なお、基板認証結果応答のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。このとき、CU制御部323Fは、基板認証結果などの認証ログ情報をSC325bFから取得する。
次に、図118は、セキュリティ基板情報の問合せを行なう場合の処理を説明するための図である。図118を参照して、まず、CU制御部323Fは、SC325bFに対して上位装置に問合せる情報を要求するために、セキュリティ基板問合せ指示通知のコマンドを送信する。なお、送信するセキュリティ基板問合せ指示通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
セキュリティ基板問合せ指示通知のコマンドを受信したSC325bFは、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323Fに通知するために、セキュリティ基板問合せ結果のレスポンスをCU制御部323Fに返信する。なお、返信するセキュリティ基板問合せ指示通知のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、CU制御部323Fとホールサーバとが復号できない鍵(以下「秘匿用鍵」と言う)で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
セキュリティ基板問合せ結果のレスポンスを受信したCU制御部323Fは、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)にセキュリティ基板325Fの情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待つ。セキュリティ基板情報を問合せ中、CU制御部323FおよびSC325bFは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、遊技機チップ情報の認証処理、遊技機との業務電文処理等)を実行し、セキュリティ基板情報を受信したときに必要な処理を実施する。
その後、CU制御部323Fは、上位装置からセキュリティ基板情報の問合せ結果(基板シリアルIDおよび基板認証鍵)を受信すると、セキュリティ基板情報をSC325bFに通知する。具体的に、CU制御部323Fは、問合せ結果である基板シリアルIDおよび基板認証鍵を含むセキュリティ基板情報通知のコマンドをSC325bFに送信する。なお、送信するセキュリティ基板情報通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
SC325bFは、セキュリティ基板情報通知のコマンドを受信後、問合せ番号を確認して、セキュリティ基板情報通知のコマンドを正常に受信したことをCU制御部323Fに通知するために、セキュリティ基板情報結果のレスポンスを返信する。なお、鍵更新情報は、次回リセット時に使用される。返信するセキュリティ基板情報結果のレスポンスは、暗号化しなくてもよいが、暗号化する場合、暗号鍵に基板初期鍵または基板認証鍵を用いる。
その後、CU制御部323Fは、受信結果がOKの場合には、基板シリアルID鍵および基板認証鍵Aを保存して、次回リセット時に認証鍵情報として使用する。また、CU制御部323Fは、基板情報問合せおよび基板情報通知の認証ログ情報を取得する。
次に、図119を参照して、遊技機チップ情報問合せシーケンスの処理を説明する。
まず、CU制御部323Fは、SC325bFに対して遊技機チップ情報を問合せる遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号化しなくてもよいが、暗号化する場合、暗号鍵に通信鍵を用いる。
一方、SC325bFは、通信制御ICから遊技機チップ情報を取得する。その後、遊技機チップ問合せ指示通知のコマンドを受信したSC325bFは、遊技機チップ情報の取得を完了しているので、遊技機チップ問合せ結果=OKの情報を含む遊技機チップ問合せ結果のレスポンスをCU制御部323Fに返信する。遊技機チップ情報には、主制御チップID、払出制御チップIDなどが含まれている。なお、返信する遊技機チップ問合せ結果のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用いて、暗号化してある。
その後、CU制御部323Fは、返信された遊技機チップ問合せ結果のレスポンスを受信した場合、上位装置(鍵管理サーバまたはホールサーバ:図109参照)に、主制御チップ番号および払出制御チップ番号を含む遊技機チップ情報を問合せ、上位装置からの応答を待つ。遊技機チップ情報問合せ中、CU制御部323FおよびSC325bFは、上位装置からの応答を持たずに、次のステップの処理(遊技機との業務電文処理)を実行する。遊技機チップ情報の問合せには時間(たとえば2時間程度)がかかるため、その間遊技機の稼働を停止しておくわけにはいかないために、上位装置からの応答を持たずに次のステップの処理(遊技機との業務電文処理)を実行する。なお、遊技機チップ情報問合せ中は、リセット動作(たとえば、リセットボタン(図示省略)の操作や電源再投入など)が行なわれても、再度遊技機チップ問合せ指示通知の要求は出されない。
その後、CU制御部323Fは、上位装置から遊技機チップ情報の照合結果を受信すると、当該照合結果をSC325bFに通知する。具体的に、CU制御部323Fは、照合結果を含む遊技機チップ情報通知のコマンドをSC325bFに送信する。なお、送信する遊技機チップ照合結果通知のコマンドは、暗号鍵に通信鍵を用いて、暗号化してある。
SC325bFは、遊技機チップ情報通知のコマンドを受信後、照合結果がOKのとき、遊技機メーカコードおよび型式コードをCU制御部323Fに通知するため、遊技機チップ情報結果のレスポンスを返信する。なお、返信する遊技機チップ情報結果のレスポンスは、暗号鍵に通信鍵を用いて、暗号化してある。
同時に、CU制御部323Fは、SC325bFからの遊技機チップ情報結果に含まれる遊技機チップ情報問合せ、遊技機チップ情報照合結果などの認証ログを取得する。
次に、図120を参照して、基板認証鍵認証異常のシーケンスの処理を説明する。
まず、CU3Fの電源を投入すると、CU制御部323FおよびSC325bFが起動される。
その後、CU制御部323FおよびSC325bFは、基板メーカコード認証シーケンス、基板認証鍵認証シーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323FとSC325bFとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323FおよびSC325bFは、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、基板認証鍵認証シーケンスを行なう。ここで、基板認証鍵認証が認証NGとなった場合には、SC325bFは、認証異常として、基板認証鍵情報をクリアする。
その後、CU制御部323FおよびSC325bFは、基板初期鍵認証シーケンスを実行する。このとき、基板初期鍵認証シーケンスの通信は、暗号鍵として基板初期鍵を用いて、暗号化してある。
この基板初期鍵認証シーケンスの認証が認証OKのときは、その後は図112に示したホール設置時立上シーケンスの処理と同様に、セキュリティ基板情報問合せシーケンス、通信鍵交換シーケンス、遊技機チップ情報問合せシーケンスなどの処理が行われ、遊技機と業務電文通信が可能となる。以後の通信は、暗号鍵として、通信鍵を用いて、暗号化してある。
なお、SC325bFは、基板認証鍵シーケンスの認証が認証NGになったことを示す「基板認証鍵更新異常」のアラームを鍵管理サーバ800Fに通知する。
次に、図121は、通信回線断(PIF)シーケンスの処理を説明する図である。図121で説明する通信回線断は、PIF回路326F(図77参照)を介するP台2FとCU3Fとの通信回線が切断された場合である。
まず、P台2FとCU3Fは、PIF回路326Fを介して通信中である。このとき、P台2FとCU3Fとは、通信鍵を用いて通信する情報を暗号化している。その後、P台2FとCU3Fとの通信回線断が発生する。CU制御部323Fは、状態情報要求のコマンドをSC325bFに対して送信するが、P台2FとCU3Fとの通信回線断が発生しているのでSC325bFから状態情報要求に対する状態情報応答のレスポンスが返信されることはない。この状態情報要求に対する状態情報応答のレスポンスが返信されない通信がn回継続されると、CU制御部323Fは、セキュリティ基板325FおよびP台2Fの状態を要求する基板状態要求のコマンドをSC325bFに対して送信する。なお、送信する基板状態要求のコマンドは、暗号鍵に通信鍵を用いて暗号化してある。
基板状態要求のコマンドを受信したSC325bFは、セキュリティ基板325FおよびP台2Fの状態の情報を含む基板状態応答のレスポンスをCU制御部323Fに対して送信する。なお、送信する基板状態応答のレスポンスは、暗号鍵に通信鍵を用いて暗号化してある。基板状態応答のレスポンスに含まれる情報には、基板状態、エラー状態、不正検知状態、設置変更情報、不正検知情報などが含まれる。たとえば、PIF回路326Fを介しての通信において通信回線断が生じた場合には、基板状態応答のレスポンスに含まれるエラー状態のBit0=“1”(PIF回線断)となる。CU3Fが設置されている店舗などが異なった場合には、基板状態応答のレスポンスに含まれる不正検知状態のBit2=“1”(設置組合せ変更検知)となる。また、接続前に遊技盤開発治具や開発用ユニットに接続されていたP台2Fと接続した場合には、基板状態応答のレスポンスに含まれる不正検知状態のBit3=“1”(不正遊技機接続検知)となる。
PIF回路326Fを介しての通信において通信回線断の発生が継続している限り、基板状態要求のコマンド送信と、当該基板状態要求のコマンドに対してエラー状態のBit0=“1”(PIF回線断)の情報を含む基板状態応答のレスポンスがCU制御部323FとSC325bFとの間で繰返される。
PIF回路326Fを介するP台2FとCU3Fとの通信回線が復旧した場合、SC325bFは、当該通信回線の復旧を検知して、送信されてきた基板状態要求のコマンドに対してエラー状態のBit0=“0”(PIF回線断なし)の情報を含む基板状態応答のレスポンスをCU制御部323Fに送信する。
次に、CU制御部323Fは、通信制御IC325aFから接続しているP台2Fの遊技機チップ情報を取得する。その後、CU制御部323FおよびSC325bFは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報には、主制御チップ番号や払出制御チップ番号などが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、前述の通りである。
次に、CU制御部323Fは、SC325bFに対してセキュリティ基板および遊技機の状態を要求するため基板情報要求のコマンドをSC325bFへ送信する。SC325bFは、基板状態=運用可を含む基板状態応答のレスポンスをCU制御部323Fに返信する。なお、CU制御部323Fは、セキュリティ基板の運用が不可の場合、それぞれの基板状態にあった処理が行なわれる。具体的に、CU制御部323Fは、基板状態=通信鍵要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、通信鍵交換シーケンスへ処理を戻す。つまり、SC325bFは、通信鍵交換シーケンスにおいて正常に通信鍵を生成できていないと判断した場合、基板状態=通信鍵要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=P台チップ問合せ要求(運用不可)を含む基板状態応答のレスポンスを受信した場合、遊技機チップ情報問合せシーケンスへ処理を戻す。つまり、SC325bFは、遊技機チップ情報問合せシーケンスにおいて正常に主制御チップ番号や払出制御チップ番号を取得することができていないと判断した場合、基板状態=P台チップ問合せ要求(運用不可)を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
CU制御部323Fは、基板状態=運用不可を含む基板状態応答のレスポンスを受信した場合、基板状態要求をSC325bFに対して繰返し送信する。つまり、SC325bFは、通信鍵交換シーケンスや遊技機チップ情報問合せシーケンス以外で正常でないと判断した場合、基板状態=運用不可を含めた基板状態応答のレスポンスをCU制御部323Fに送信する。
以上の処理を行なうことで、CU制御部323FおよびSC325bFは、遊技機と業務電文通信が可能となる。この遊技機と業務電文通信を行なうことにより遊技機において遊技が可能となる。この遊技機との業務電文通信には、通信鍵(セッション鍵)が利用される。このときの通信は、制限通信モードのような制限のない通常通信モード(基板認証鍵モード(基板認証鍵運用))である。
次に、図122は、セキュリティ基板情報の問合せタイムアウトシーケンスの処理を説明する図である。
まず、CU制御部323Fは、SC325bFに対して上位装置に問合せる情報を要求するために、セキュリティ基板問合せ指示通知のコマンドを送信する。なお、送信するセキュリティ基板問合せ指示通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
セキュリティ基板問合せ指示通知のコマンドを受信したSC325bFは、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323Fに通知するために、セキュリティ基板問合せ結果のレスポンスをCU制御部323Fに返信する。なお、返信するセキュリティ基板問合せ指示通知のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、秘匿用鍵で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
セキュリティ基板問合せ結果のレスポンスを受信したCU制御部323Fは、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)にセキュリティ基板325Fの情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待つ。セキュリティ基板情報を問合せ中、CU制御部323FおよびSC325bFは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、遊技機チップ情報の認証処理、遊技機との業務電文処理等)を実行する。
その後、CU制御部323Fは、上位装置からセキュリティ基板情報の問合せ結果(基板シリアルIDおよび基板認証鍵)を受信する前に、セキュリティ基板情報問合せの待ち時間がタイムアウトした場合には、CU3FはP台2Fの状態に関する情報を要求する状態情報要求のコマンドを送信する。なお、この状態情報要求のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。態情報要求のコマンドを受信したSC325bFは通信制御IC325aF経由でP台2Fの遊技機チップ情報を取得する。
そしてSC325bFは、CU3Fに対して、状態情報応答のレスポンスを返信する。このとき、SC325bFは、セキュリティ基板情報を鍵管理センタに問合せを要求する旨の「基板問合せ有」を含む状態情報応答を返信する。
上記のセキュリティ基板問合せに対して、CU制御部323Fは、SC325bFに対して上位装置に問合せる情報を要求するために、基板状態要求のコマンドを送信する。なお、送信する基板状態要求のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
基板状態要求のコマンドを受信したSC325bFは、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323Fに通知するために、基板状態応答のレスポンスをCU制御部323Fに再度返信する。なお、返信する基板状態応答のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、秘匿用鍵で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
基板状態応答のレスポンスを受信したCU制御部323Fは、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)にセキュリティ基板325Fの情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待ち続ける。
次に、図123は、遊技機チップ情報の問合せ(照合)タイムアウトシーケンスの処理を説明する図である。
まず、CU制御部323Fは、SC325bFに対して上位装置に問合せる情報(具体的には遊技機チップ情報)を要求するために、遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。
一方、SC325bFは、通信制御ICから遊技機チップ情報を取得し、その後、遊技機チップ問合せ指示通知のコマンドを受信したSC325bFは、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に問合せる情報(主制御チップ情報および払出制御チップ情報)をCU制御部323Fに通知するために、遊技機チップ問合せ結果(認証OK)のレスポンスをCU制御部323Fに返信する。なお、返信する遊技機チップ問合せ指示通知のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ結果のレスポンスを受信したCU制御部323Fは、主制御チップ情報および払出制御チップ情報に基づき、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に遊技機チップ情報(主制御チップ情報および払出制御チップ情報)を問合せ、上位装置からの応答を待つ。遊技機チップ情報を問合せ中、CU制御部323FおよびSC325bFは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、セキュリティ基板情報の認証処理、遊技機との業務電文処理等)を実行し、遊技機チップ情報を受信したときに必要な処理を実施する。
しかしながら、その後、CU制御部323Fは、上位装置から遊技機チップ情報の問合せ結果(主制御チップ情報および払出制御チップ情報)を受信する前に、遊技機チップ情報問合せの待ち時間がタイムアウトした場合には、CU3FはP台2Fの状態に関する情報を要求する状態情報要求のコマンドを送信する。なお、この状態情報要求のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。状態情報要求のコマンドを受信したSC325bFは通信制御IC325aF経由でP台2Fの遊技機チップ情報を取得する。
そしてSC325bFは、CU3Fに対して、状態情報応答のレスポンスを返信する。このとき、SC325bFは、遊技機チップ情報の鍵管理センタへの問合せを要求する旨の「チップ情報問合せ有」を含む状態情報応答を返信する。
上記の遊技機チップ情報問合せに対して、CU制御部323Fは、SC325bFに対して上位装置に問合せる情報を要求するために、遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ指示通知のコマンドを受信したSC325bFは、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に問合せる情報(主制御チップ情報および払出制御チップ情報)をCU制御部323Fに通知するために、遊技機チップ問合せ結果のレスポンスをCU制御部323Fに再度返信する。なお、返信する遊技機チップ問合せ指示通知のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ結果のレスポンスを受信したCU制御部323Fは、主制御チップ情報および払出制御チップ情報に基づき、上位装置(具体的にはホールサーバ経由で鍵管理サーバ)に遊技機チップ情報(主制御チップ情報および払出制御チップ情報)を問合せ、上位装置からの応答を待ち続ける。
以上の図112〜図123に基づいて説明したCU制御部323FとSC325bFとの間でのシーケンスにおいて、特徴的な部分を以下にまとめて説明する。
CU3Fが遊技場に入荷されて設置された後に実行されるシーケンスとして、「基板初期鍵認証シーケンス」がある(図112参照)。この「基板初期鍵認証シーケンス」は、遊技場に搬入されて設置された最初の電源投入時においては、上位装置(ホールサーバ)から基板初期鍵をダウンロード取得し、その基板初期鍵を用いて認証されるシーケンスである。この基板初期鍵認証シーケンスの認証結果がOKであることを条件として、この基板初期鍵を用いて「セキュリティ基板情報問合せシーケンス」が実行される(図112参照)。このセキュリティ基板情報問合せシーケンスにより基板認証鍵が上位装置(鍵管理サーバ)からダウンロード記憶され、以降、この基板認証鍵を利用して各種認証シーケンスや通信鍵交換シーケンス等が実行されてその通信鍵を用いて遊技機と業務電文通信が実行される(図113参照)。
一方、基板初期鍵を用いてのセキュリティ基板情報問合せシーケンス(図112参照)を実行した結果、基板認証鍵を取得できない場合がある。この基板認証鍵は、CUメーカがCU3Fを遊技場に出荷するときにそのCU3Fの基板認証鍵を鍵管理サーバへ送信して鍵管理サーバに記憶してもらい、遊技場に搬入されたCUがその事前に鍵管理サーバに記憶されている基板認証鍵をダウンロード記憶するのであるが、CUメーカから鍵管理サーバへの基板認証鍵の送信が何らかの理由により遅れている場合がある。また、遊技場に搬入されて設置されたCU3Fがセキュリティ基板情報問合せシーケンスを実行して基板認証鍵をダウンロードしようとしたときに鍵管理サーバとCU3Fとの間で不測の事態が発生して通信不能のオフライン状態となっている場合もある。このような場合には、基板認証鍵をダウンロードすることができない。
基板認証鍵をダウンロードできない場合に、それ以降の遊技機との業務電文通信等の実稼動の運用が一切できないとなれば、遊技場における稼動率の低下等の運用上の問題が生じる。そこで、このような不測の事態が発生した場合には、仮の認証鍵である基板初期鍵を利用して実稼動の仮運用ができるように制御される。具体的には、上位装置(具体的にはホールサーバ)より取得済の基板初期鍵を用いて、通信鍵交換シーケンスを実行し、乱数と時刻データとを用いて通信鍵(セッション鍵)を生成し、CU制御部323FとSC325bFとの間でその通信鍵(セッション鍵)を共有し、その通信鍵(セッション鍵)を使用して業務電文通信を行なって実稼動制御が行なわれる。この基板初期鍵を利用して交換した通信鍵による実稼動制御は、あくまで基板初期鍵が仮の鍵であり基板認証鍵が取得できない不安定な状態であるために、一定の期間だけ許容される仮運用の制御がなされる。具体的には、2日間のみこの基板初期鍵を用いた実稼動制御を許容し、3日目の電源立上げ時においても基板認証鍵を取得できなかったときには、それ以降の制御を停止させ、異常が発生した旨を報知するとともにホールサーバやホール用管理コンピュータへ異常発生した旨の通知を行なうように制御する。なお、基板初期鍵での一定の期間(たとえば2日)だけ許容される仮運用の時限制御は、基板初期鍵がホールサーバに記憶されているものであるため、少なくともCU制御部323Fがホールサーバに接続されていることが担保されている状態で許容される。
また、前述の「基板初期鍵/出荷鍵認証シーケンス」は、図116に示した工場出荷時すなわち未だ遊技場に搬入されていない段階でも実行される。この段階で基板初期鍵認証シーケンスを実行した場合には、未だ基板初期鍵が取得されていないために、基板初期鍵を用いたこの基板初期鍵認証シーケンスの実行の結果NGの認証結果が導出される。すると、図116に示した基板出荷鍵要求、基板出荷鍵応答以降の各シーケンスが実行され、遊技機と通信テスト電文の通信が実行される状態となる。すなわち、「基板初期鍵/出荷鍵認証シーケンス」により、基板初期鍵が取得されている段階かあるいは取得されていない工場出荷時の段階かを判断しているのであり、本来相互認証を行なう機器認証シーケンスを、基板初期鍵が取得された段階かあるいは取得されていない工場出荷時の段階かの判別にも有効利用している。
<主制御部−払出制御部間の通信>
次に、P台2Fにおける主制御部161Fと払出制御部171Fとの間の通信についてさらに詳しく説明する。まず、図76に示すP台2Fにおいて、遊技盤26Fに設けられた主制御基板16Fと、前枠5Fに設けられた払出制御基板17Fとの通信は、主制御基板16Fに設けられた主制御部161Fと前枠5Fに設けられた払出制御部171Fとの間で行なわれる。図124は、主制御部161F、払出制御部171F、および通信制御ICとの間で行なわれる通信について説明するための概略図である。
図124に示す主制御部161Fおよび払出制御部171Fは、ワンチップで構成されているものとして以下説明するが、複数のチップで同様の機能を構成してもよい。主制御部161Fは、主制御回路161aF、通信制御回路161bF、主制御記憶部161cFを備えている。主制御回路161aFは、主制御部161Fで様々な処理(たとえば、入賞センサ162Fからの信号に基づいて入賞球をカウントしたり、電波センサ163Fからの信号に基づいて不正を検出したりする処理など)を行なうための制御プログラムを実行する回路である。通信制御回路161bFは、主制御部161Fと払出制御部171Fとの間で暗号通信を行なうための回路である。主制御記憶部161cFは、主制御部161Fで実行するためのユーザプログラム、制御プログラムやデータを記憶するための記憶装置であり、たとえば不揮発メモリのFeRAM(Ferroelectric Random Access Memory)などで構成されている。なお、主制御記憶部161cFはFeRAMを含む構成であるので、FeRAMに記憶した情報は外部電源によるバックアップが不要となる。
一方、払出制御部171Fは、払出制御回路171aF、通信制御回路171bF、払出制御記憶部171cFを備えている。払出制御回路171aFは、演算処理機能であるCPUを含み、払出制御部171Fで様々な処理(発射制御基板31Fを介して発射モータ18Fを制御したり、計数ボタン28Fからの信号に基づいてCU3Fに対して遊技玉から持玉への変換を要求したりする処理など)を行なうための制御プログラムや払出制御記憶部171cFに記憶されたユーザプログラムを実行する回路である。通信制御回路171bFは、主制御部161Fと払出制御部171Fとの間で暗号通信、および払出制御部171Fと通信制御IC325aFとの間の暗号通信を行なうための回路である。払出制御記憶部171cFは、払出制御部171Fで実行するためのユーザプログラム、制御プログラムやデータなどを記憶するための記憶装置であり、たとえば不揮発メモリのFeRAMなどで構成されている。なお、払出制御記憶部171cFはFeRAMを含む構成であるので、FeRAMに記憶した情報は外部電源によるバックアップが不要となる。
払出制御部171Fは、通信制御回路171bFを介して、CU3Fの通信制御IC325aFとの間でデータを送受信する。具体的には、払出制御部171Fは、上述の図79で示したような各種コマンドをCU3Fの通信制御IC325aFから受信する。そして、払出制御部171Fは、各種コマンドに含まれるデータを記憶する。これらのデータは、基本的には、RAM等で構成される払出制御記憶部171cFに記憶される。しかしながら、これらのデータの中には、セキュリティの観点から、ユーザプログラム等が記憶された払出制御記憶部171cFに記憶しない方が好ましいデータも存在する。
そこで、払出制御部171F(払出制御回路171aF)は、通信制御回路171bFで受信したデータのうち、セキュリティに関連する所定データ(セキュリティ関連情報)を払出制御記憶部171cFには記憶せずに、払出制御回路171aF内の所定の格納領域に格納する。すなわち、払出制御回路171aFは、通信制御回路171bFで受信したセキュリティ関連情報をユーザプログラムに通知せずに払出制御回路171aF内のレジスタに格納する。このユーザプログラムは、CU3Fの基本動作を制御するための制御プログラムなどの仕様により予め定められたプログラムではなく、遊技機の開発段階で追加可能なプログラムである。そのため、外部から比較的アクセスが容易なユーザプログラムに所定データを通知しないことでセキュリティ性を向上させることができる。また、外部からアクセス可能な払出制御記憶部171cFに所定データを記憶しないことで、所定データへのアクセスを禁止してセキュリティ性を向上させている。
たとえば、セキュリティ関連情報とは、状態情報要求のコマンドに含まれる「計数受領時刻」、カード挿入通知コマンドに含まれる「店舗コード」および「SC基板ID」などである。なお、セキュリティ関連情報は、これに限られず、セキュリティの観点から払出制御記憶部171cFに記憶しない方が好ましいと考えられる予め定められた任意のデータを含む。
そして、払出制御回路171aFは、自身のレジスタに格納されたセキュリティ関連情報を予め定められた条件が成立したときに更新または消去する。具体的には、払出制御回路171aFは、レジスタに格納された「計数受領時刻」を、P台2FがCU3Fに送信する状態情報応答のレスポンスに含まれる遊技台状態1のBit4=“1”(計数要求時)で、当該状態情報応答のレスポンスをCU3Fに送信する時(状態情報応答送信時)に更新する。払出制御回路171aFは、「計数受領時刻」を、P台2Fが通信開始応答のレスポンスをCU3Fに送信する時(通信開始応答送信時)またはP台2Fに設けたRAM(たとえば、主制御記憶部161cF、払出制御記憶部171cFなど)をクリアする指示がなされた時(RAMクリア指示時)に消去する。
また、払出制御回路171aFは、レジスタに格納された「店舗コード」および「SC基板ID」を、P台2Fがカード挿入応答のレスポンスをCU3Fに送信する時(カード挿入応答送信時)またはP台2Fが計数履歴要求のコマンドをCU3Fから受信した時(計数履歴要求時)に新たに登録または更新する。払出制御回路171aFは、「店舗コード」および「SC基板ID」を、P台2Fに設けたRAMをクリアする指示がなされた時(RAMクリア指示時)に消去する。
このように「計数受領時刻」、「店舗コード」および「SC基板ID」の情報は、上記の条件を満たした時に払出制御回路171aF内で削除または更新されることから、セキュリティを確保することができる。
なお、上述したように、図91に示したように、「店舗コード」は、通信不能な状態から復帰する際の計数履歴シーケンスにおいて用いられる。具体的には、図91を参照して、払出制御回路171aFは、通信制御回路171bFを介して、通番=n、店舗コードおよびSC基板IDを含む計数履歴要求のコマンドを、CU3Fの通信制御IC325aFから受信する。払出制御回路171aFでは、カード挿入通知のコマンドでCU3Fから送信されて、払出制御回路171aF内のレジスタに記憶されている「店舗コード」と、計数履歴要求のコマンドでCU3Fから送信された「店舗コード」とを比較する。払出制御回路171aFは、これらを比較した結果、「店舗コード」が一致する場合、記憶している計数履歴1および計数履歴2のデータをCU3Fに送信できるように計数履歴応答のレスポンスにセットする。そして、通信制御回路171bFは、通番=n、計数履歴1および計数履歴2を含む計数履歴応答のレスポンスをCU3F(通信制御IC325aF)に返信する。このように、通信制御回路171bFは、過去2回分の計数履歴(計数履歴1および計数履歴2)をCU3F(通信制御IC325aF)に送信することで、リカバリ処理の精度を向上させることができる。なお、通信制御回路171bFからCU3Fに送信する複数の計数履歴は、過去2回分に限定されず過去3回分以上の計数履歴でもよい。
一方、払出制御回路171aFは、これらを比較した結果、「店舗コード」が不一致の場合、CU3Fに送信する計数履歴応答のレスポンスに計数履歴なしとしてデータをセットする。そして、通信制御回路171bFは、通番=n、計数履歴なしを含む計数履歴応答のレスポンスをCU3Fに返信する。ここで、P台2Fから通番=n、計数履歴なしを含む計数履歴応答のレスポンスをCU3Fに返信された場合には(上述の「店舗コード」が不一致の場合)、払出制御回路171aFは、遊技の継続を禁止する。
すなわち、払出制御回路171aF内のレジスタに記憶されている「店舗コード」と、計数履歴要求のコマンドでCU3Fから送信された「店舗コード」とが一致している場合には、通信不能な状態から計数履歴を用いて前回の遊技状態に復帰させることができるが、一致しない場合には通信不能な状態から前回の遊技状態に復帰させない。
なお、上記では、払出制御回路171aFが、「店舗コード」の比較を行なう場合について説明したが、これに限られず、通信制御回路171bFが、払出制御回路171aFのレジスタを参照して、払出制御回路171aF内のレジスタに記憶されている「店舗コード」と、計数履歴要求のコマンドでCU3Fから送信された「店舗コード」とを比較してもよい。この場合、通信制御回路171bFは、判定結果を払出制御回路171aFに通知する。払出制御回路171aFは、「店舗コード」が一致するとの判定結果の場合には、記憶している計数履歴1および計数履歴2のデータを計数履歴応答のレスポンスにセットし、「店舗コード」が一致しないとの判定結果の場合には、計数履歴応答のレスポンスに計数履歴なしとしてデータをセットする。そして、通信制御回路171bFは、セットされたデータを含む計数履歴応答のレスポンスをCU3Fに返信する。
さらに、通信制御回路161bF,171bFについて詳しく説明する。図125は、払出制御部171Fと暗号通信するための通信制御回路161bFの構成を説明するためのブロック図である。まず、通信制御回路161bFは、複数の機能を有しており、たとえば認証通信機能、暗号通信機能、割込み機能やリカバリ機能などを有している。
認証通信機能は、前枠5Fの払出制御部171Fとの相互認証する機能である。暗号通信機能は、主制御部161Fと払出制御部171Fとの間の電文を暗号化したり復号化したりする機能である。暗号通信機能は、改ざん防止コードの電文に自動的に挿入したり、通信エラーを検出するためのコードを自動的に挿入したりすることが可能である。また、暗号通信機能は、通信インターバル設定により定期にて主制御部161Fの情報を、払出制御部171Fに渡し、払出制御部171Fの情報を受取ることも可能である。
割込み機能は、たとえば電文の復号が完了した後に割込みを通知したり、認証状態が変化した場合に割込みを通知したりする。リカバリ機能は、ユーザからの要求により暗号通信制御部600Fにて払出制御部171Fとのリカバリ通信を行なう機能である。また、通信制御回路161bFは、通信応答のタイムアウト時間を設定したり、主制御部161Fと払出制御部171Fとの間の通信間隔を設定したりすることができる。
次に、通信制御回路161bFは、図125に示すように主制御回路161aFで実行した制御プログラムとの間で入出力を行なう複数のレジスタ、払出制御部171Fとの暗号通信を行なうための暗号通信制御部600Fを有している。
通信制御回路161bFに含まれるレジスタには、たとえば認証ステータスレジスタ611F、認証割込み設定レジスタ612F、送信データバッファ613F、送信データ数レジスタ614F、情報送信クリアレジスタ615F、主制御遊技情報レジスタ616F、払出制御遊技情報レジスタ617F、リカバリ通信完了レジスタ618Fおよび暗号通信データクリア要求/完了レジスタ619Fなどを有している。
認証ステータスレジスタ611Fは、主制御部161FのチップIDが認証されているか否かの状態、カードユニット−払出制御部間の通信および認証の状態、主制御部−払出制御部間の通信および認証の状態が書込まれている。認証割込み設定レジスタ612Fは、チップID認証、カードユニット−払出制御部間の認証、および主制御部−払出制御部間の認証の状態を変化させる割込みを許可するか否かが設定されている。
送信データバッファ613Fは、主制御部161Fから払出制御部171Fに送信する遊技情報を書込むバッファ(たとえば、記憶容量が128byte)であり、当該バッファにFIFO(First In, First Out)で遊技情報が書込まれる。また、送信データバッファ613Fを不揮発メモリで構成することで、主制御部161Fと払出制御部171Fとの間で通信断が生じ、通信不能によって未送信となった当該バッファに書込まれた遊技情報は、復帰後も保持される。そのため、リカバリ通信を行なう場合であっても、送信データバッファ613Fに書込まれた遊技情報を生成するためにユーザプログラムを再度実行するなどのリカバリ処理が不要となり、主制御部161Fの処理の負担を軽減することができる。また、リカバリ処理において必要となるデータ量を抑えることができる。なお、送信データバッファ613Fは不揮発メモリで構成しているので、外部電源によるバックアップが不要である。送信データバッファ613F以外のレジスタは揮発メモリで構成している。
送信データ数レジスタ614Fは、主制御部161F払出制御部171Fへ送信したデータ数を書込むレジスタであり、送信データバッファ613F内のデータ数をモニタしている。情報送信クリアレジスタ615Fは、送信データバッファ613Fのデータをクリアする要求を書込むレジスタである。
主制御遊技情報レジスタ616Fは、主制御部161Fから払出制御部171Fへ送信されるデータが書込まれるレジスタである。なお、主制御遊技情報レジスタ616Fに書込まれたデータは、暗号通信制御部600Fで暗号化されて払出制御部171Fへ送信される。払出制御遊技情報レジスタ617Fは、払出制御部171Fから主制御部161Fへ送信されてきたデータが書込まれるレジスタである。なお、払出制御遊技情報レジスタ617Fに書込まれたデータは、暗号通信制御部600Fで復号化されたデータである。
リカバリ通信完了レジスタ618Fは、主制御部−払出制御部間でリカバリ通信が完了したか否かを示す情報が書込まれるレジスタである。暗号通信データクリア要求/完了レジスタ619Fは、払出制御部171Fと通信を行なっている暗号通信制御部600Fで保持している通番等のデータのクリアを要求する情報、および当該データが消去されたこと(クリア完了)を示す情報が書込まれるレジスタである。
通信制御回路171bFは、主制御部161Fと暗号通信するための構成と、通信制御IC325aFと暗号通信するための構成とに分けられ、主制御部161Fと暗号通信するための構成の部分を通信制御回路171b1F、通信制御IC325aFと暗号通信するための構成の部分を通信制御回路171b2Fとして以下説明する。
まず、図126は、主制御部161Fと暗号通信するための通信制御回路171b1Fの構成を説明するためのブロック図である。まず、通信制御回路171b1Fは、複数の機能を有しており、たとえば認証通信機能、暗号通信機能、割込み機能やリカバリ機能などを有している。
認証通信機能は、遊技盤26Fの主制御部161Fとの相互認証、およびCU3Fの通信制御IC325aFとの相互認証する機能である。暗号通信機能は、主制御部161Fと払出制御部171Fとの間の電文を暗号化したり復号化したりする機能である。暗号通信機能は、改ざん防止コードの電文に自動的に挿入したり、通信エラーを検出するためのコードを自動的に挿入したりすることが可能である。また、暗号通信機能は、通信インターバル設定により定期にて払出制御部171Fの情報を、主制御部161Fに渡し、主制御部161Fの情報を受取ることも可能である。
割込み機能は、たとえば電文の復号が完了した後に割込みを通知したり、認証状態が変化した場合に割込みを通知したりする。リカバリ機能は、ユーザからの要求により暗号通信制御部700Fにて主制御部161Fおよび通信制御IC325aFとのリカバリ通信を行なう機能である。また、通信制御回路171b1Fは、通信応答のタイムアウト時間を設定したり、主制御部161Fと払出制御部171Fとの間の通信間隔を設定したりすることができる。
次に、通信制御回路171b1Fは、図126に示すように払出制御回路171aFで実行した制御プログラムとの間で入出力を行なう複数のレジスタ、払出制御部171Fとの暗号通信を行なうための暗号通信制御部700Fを有している。
通信制御回路171b1Fに含まれるレジスタには、たとえば認証ステータスレジスタ711F、認証割込み設定レジスタ712F、データ受信レジスタ713F、受信データ数レジスタ714F、情報受信クリアレジスタ715F、払出制御遊技情報レジスタ716F、主制御遊技情報レジスタ717F、リカバリ要求/完了レジスタ718Fおよび暗号通信データクリア要求/完了レジスタ719Fなどを有している。
認証ステータスレジスタ711Fは、払出制御部171FのチップIDが認証されているか否かの状態、カードユニット−払出制御部間の通信および認証の状態、主制御部−払出制御部間の通信および認証の状態が書込まれている。認証割込み設定レジスタ712Fは、チップID認証、カードユニット−払出制御部間の認証、および主制御部−払出制御部間の認証の状態を変化させる割込みを許可するか否かが設定されている。
データ受信レジスタ713Fは、主制御部161Fから送信され払出制御部171Fで受信した遊技情報を書込むバッファ(たとえば、記憶容量が128byte)であり、当該バッファにFIFO(First In, First Out)で遊技情報が書込まれる。また、データ受信レジスタ713Fを不揮発メモリで構成することで、主制御部161Fと払出制御部171Fとの間で通信断が生じ、通信不能によって未送信となった当該レジスタに書込まれた遊技情報は、復帰後も保持される。そのため、リカバリ通信を行なう場合であっても、データ受信レジスタ713Fに書込まれた遊技情報を生成するためにユーザプログラムを再度実行するなどのリカバリ処理が不要となり、主制御部161Fの処理の負担を軽減することができる。また、リカバリ処理において必要となるデータ量を抑えることができる。なお、データ受信レジスタ713Fは不揮発メモリで構成しているので、外部電源によるバックアップが不要となる。データ受信レジスタ713F以外のレジスタは揮発メモリで構成している。
受信データ数レジスタ714Fは、主制御部161Fから送信され払出制御部171Fで受信したデータ数を書込むレジスタであり、データ受信レジスタ713F内のデータ数をモニタしている。情報受信クリアレジスタ715Fは、データ受信レジスタ713Fのデータをクリアする要求を書込むレジスタである。
払出制御遊技情報レジスタ716Fは、払出制御部171Fから主制御部161Fへ送信されるデータが書込まれるレジスタである。なお、払出制御遊技情報レジスタ716Fに書込まれたデータは、暗号通信制御部700Fで暗号化されて主制御部161Fへ送信される。主制御遊技情報レジスタ717Fは、主制御部161Fから払出制御部171Fへ送信されてきたデータが書込まれるレジスタである。なお、主制御遊技情報レジスタ717Fに書込まれたデータは、暗号通信制御部700Fで復号化されたデータである。
リカバリ要求/完了レジスタ718Fは、主制御部−払出制御部間でリカバリ通信を要求するか否か、および完了したか否かを示す情報が書込まれるレジスタである。暗号通信データクリア要求/完了レジスタ719Fは、主制御部161Fと通信を行なっている暗号通信制御部700Fで保持している通番等のデータのクリアを要求する情報、および当該データが消去されたこと(クリア完了)を示す情報が書込まれるレジスタである。
通信制御回路171b1Fには、その他、通信タイムアウト時間設定レジスタ719aF、通信インターバル時間設定レジスタ719bF、および主制御部送信バッファ書込有効時間設定レジスタ719cFが含まれている。
主制御部送信バッファ書込有効時間設定レジスタ719cFは、主制御部161Fと払出制御部171Fとの間の認証が切れた後に、主制御部161Fの送信データバッファ613Fのデータをデータ受信レジスタ713Fに書込むことができる有効時間を設定するレジスタである。当該レジスタを設定することで、データ受信レジスタ713Fへの書込みは、主制御部161Fと払出制御部171Fとの間の認証が切れた後であっても設定した有効時間(たとえば、5秒から15秒程度)行なうことができる。これにより、たとえば、電源断や断線などにより認証が切れた場合において浮遊玉(遊技領域27Fの釘等の間に引っ掛かって落下していない玉)が存在しても、当該浮遊玉が入賞したことの情報を確実に記憶して保護することができる。なお、玉の滞留時間が長いステージを有する遊技機の場合でも、浮遊玉が入賞したことの情報を確実に記憶することができるように有効期間を長めに設定することができるものとする。
本来、データ受信レジスタ713Fには、主制御部161Fと払出制御部171Fとの間の認証が切れた後、セキュリティの観点から暗号通信制御部700F介して情報を書き込むことができない。しかし、データ受信レジスタ713Fでは、たとえば、主制御部161Fと払出制御部171Fとの間の認証が切れた後に浮遊玉が入賞したことの情報を書き込む必要があった。そこで、通信制御回路171b1Fは、主制御部送信バッファ書込有効時間設定レジスタ719cFに対して有効時間を設定し、暗号通信制御部700Fで本設定することで、主制御部161Fと払出制御部171Fとの間の認証が切れた後であっても有効期間内であれば暗号通信制御部700Fを介して情報をデータ受信レジスタ713Fに書き込むことができる。なお、主制御部送信バッファ書込有効時間設定レジスタ719cFの設定値は、暗号通信制御部700Fで本設定された後であれば読み出すことができる。
図127は、通信制御IC325aFと暗号通信するための通信制御回路171b2Fの構成を説明するためのブロック図である。通信制御回路171b2Fは、図127に示すように、通信制御IC325aFと暗号通信するために、たとえば認証ステータスレジスタ721F、認証割込み設定レジスタ722F、送信データバッファ723aF、データ受信レジスタ723bF、送信データ数レジスタ724F、受信データ数レジスタ725F、リカバリ通信加算球要求レジスタ726F、リカバリ通信減算球要求レジスタ727F、リカバリ要求/完了レジスタ728F、暗号通信データクリア要求/完了レジスタ729F、通信タイムアウトタイマ−プリスケーラ設定レジスタ729aFおよび通信タイムアウト時間設定レジスタ729bFなどを有している。
認証ステータスレジスタ721Fは、払出制御部171FのチップIDが認証されているか否かの状態、カードユニット−払出制御部間の通信および認証の状態、主制御部−払出制御部間の通信および認証の状態が書込まれている。認証割込み設定レジスタ722Fは、チップID認証、カードユニット−払出制御部間の認証、および主制御部−払出制御部間の認証の状態を変化させる割込みを許可するか否かが設定されている。
送信データバッファ723aFは、払出制御部171Fから通信制御IC325aFに送信する業務電文を書込むバッファ(たとえば、記憶容量が128byte)であり、当該バッファにFIFO(First In, First Out)で業務電文が書込まれる。データ受信レジスタ723bFは、通信制御IC325aFから送信され払出制御部171Fで受信した業務電文を書込むバッファ(たとえば、記憶容量が128byte)であり、当該バッファにFIFO(First In, First Out)で業務電文が書込まれる。
なお、送信データバッファ723aFおよびデータ受信レジスタ723bFを不揮発メモリで構成することで、払出制御部171Fと通信制御IC325aFとの間で通信断が生じ、通信不能によって未送信となった当該バッファおよびレジスタに書込まれた業務電文は、復帰後も保持される。そのため、リカバリ通信を行なう場合であっても、送信データバッファ723aFおよびデータ受信レジスタ723bFに書込まれた業務電文を生成するためにユーザプログラムを再度実行するなどのリカバリ処理が不要となり、払出制御部171Fや通信制御IC325aFの処理の負担を軽減することができる。また、リカバリ処理において必要となるデータ量を抑えることができる。なお、送信データバッファ723aFおよびデータ受信レジスタ723bFは不揮発メモリで構成しているので、外部電源によるバックアップが不要となる。送信データバッファ723aFおよびデータ受信レジスタ723bF以外のレジスタは揮発メモリで構成している。
送信データ数レジスタ724Fは、払出制御部171Fから通信制御IC325aFに送信したデータ数を書込むレジスタであり、送信データバッファ723aF内のデータ数をモニタしている。受信データ数レジスタ725Fは、通信制御IC325aFから送信され払出制御部171Fで受信したデータ数を書込むレジスタであり、データ受信レジスタ723bF内のデータ数をモニタしている。
リカバリ通信加算球要求レジスタ726Fは、電源断復帰後の通信制御IC−払出制御部間のリカバ通信結果にて加算球が発生した場合に加算球数が書込まれるレジスタである。なお、リカバリ通信加算球要求レジスタ726Fは、リカバリ通信完了時のみ更新される。リカバリ通信減算球要求レジスタ727Fは、電源断復帰後の通信制御IC−払出制御部間のリカバ通信結果にて減算球が発生した場合に減算球数が書込まれるレジスタである。なお、リカバリ通信減算球要求レジスタ727Fも、リカバリ通信完了時のみ更新される。
リカバリ要求/完了レジスタ728Fは、通信制御IC−払出制御部間でリカバリ通信を要求するか否か、および完了したか否かを示す情報が書込まれるレジスタである。暗号通信データクリア要求/完了レジスタ729Fは、通信制御IC325aFと通信を行なっている暗号通信制御部700Fで保持している通番等のデータのクリアを要求する情報、および当該データが消去されたこと(クリア完了)を示す情報が書込まれるレジスタである。
払出制御部171Fは、通信制御IC325aFとの暗号通信において通信制御回路171b2Fのデータ受信レジスタ723bFで受信したデータのうち、セキュリティ関連情報を払出制御回路171aFで実行されているユーザプログラムに通知することなく、払出制御回路171aF内のレジスタに格納する。つまり、払出制御回路171aFで実行されているユーザプログラムは、データ受信レジスタ723bFに受信したセキュリティ関連情報に直接アクセスすることができないように制限されているので、当該セキュリティ関連情報を払出制御記憶部171cFに書き出すことができない。なお、通信制御回路171b2Fは、セキュリティ関連情報をデータ受信レジスタ723bFで受信する場合について説明したが、払出制御回路171aFで実行されているユーザプログラムが直接アクセスすることができないセキュリティ関連情報受信レジスタを別途設けてもよい。
また、データ受信レジスタ723bFで受信したセキュリティ関連情報を、払出制御回路171aF内のレジスタに格納するが、払出制御回路171aFで実行されているユーザプログラムが直接アクセスすることができない払出制御部171Fの構成について説明した。しかし、払出制御部171Fは、これに限定されず、データ受信レジスタ723bFで受信したセキュリティ関連情報を払出制御回路171aF内のレジスタに格納せず、データ受信レジスタ723bF内で保持するだけに留めて、払出制御回路171aFで実行されているユーザプログラムが直接アクセスすることができない構成としてもよい。
<リカバリ完了確認処理>
次に、主制御部161Fと払出制御部171Fとの通信において、電源断などの通信不能な状態から復帰するとき、主制御部161Fおよび払出制御部171Fは、主制御記憶部161cFおよび払出制御記憶部171cFに記憶された所定情報を送信するリカバリ処理を実行する。そして、主制御部161Fおよび払出制御部171Fは、リカバリ処理の終了を条件に、ユーザプログラムの実行による所定情報の生成を再開するリカバリ完了確認処理を行なう。具体的に、リカバリ完了確認処理についてフローチャートを用いて説明する。図128は、リカバリ完了確認処理を説明するためのフローチャートである。
まず、主制御部161Fおよび払出制御部171Fは、電源断などの通信不能な状態から復帰させるために電源が投入されると、主制御回路161aFおよび払出制御回路171aFが認証シーケンスの処理を開始し、認証が完了すると主制御部161Fおよび払出制御部171Fのそれぞれの認証ステータスレジスタ611F,711Fに認証結果が書込まれる。そして、主制御部161Fおよび払出制御部171Fは、それぞれの認証ステータスレジスタ611F,711Fに認証完了が書込まれているか否かを確認する(ステップSF291)。主制御部161Fおよび払出制御部171Fは、それぞれの認証ステータスレジスタ611F,711Fに認証完了が書込まれていない場合(ステップSF291:NO)、ステップSF291の処理に戻る。
主制御部161Fおよび払出制御部171Fは、それぞれの認証ステータスレジスタ611F,711Fに認証完了が書込まれている場合(ステップSF291:YES)、リカバリ通信完了レジスタ618Fおよびリカバリ要求/完了レジスタ718Fにリカバリ完了を示すフラグが書込まれているか否かを確認する(ステップSF292)。主制御部161Fおよび払出制御部171Fは、リカバリ通信完了レジスタ618Fおよびリカバリ要求/完了レジスタ718Fにリカバリ完了を示すフラグが書込まれていない場合(ステップSF292:NO)、ステップSF292の処理に戻る。
主制御部161Fおよび払出制御部171Fは、リカバリ通信完了レジスタ618Fおよびリカバリ要求/完了レジスタ718Fにリカバリ完了を示すフラグが書込まれている場合(ステップSF292:YES)、ユーザプログラムの処理を開始する(ステップSF293)。なお、ユーザプログラムの処理を開始させる手段として、たとえばユーザプログラムの処理を開始させる信号を送信して当該ユーザプログラムの処理を開始させる手段や、ユーザプログラムの処理を停止する停止手段を設け、当該停止手段を解除することで当該ユーザプログラムの処理を開始させる手段などがある。
前述のように、主制御部161Fおよび払出制御部171Fは、リカバリ処理が完了するまでユーザプログラムの処理を開始しないため、リカバリ処理によって復帰させる情報が確定する前にユーザプログラムの処理による新たな情報が書込まれないようにすることでユーザプログラムの処理を適切に再開することができる。
<主制御部と払出制御部との間で送受信するコマンドおよびレスポンス>
次に図129を参照して、主制御部161Fと払出制御部171Fとの間で送受信されるコマンドおよびレスポンスの概略を説明する。
図129には、送信方向および送信されるデータがコマンドかレスポンスかの別と送信情報の名称とその概略が示されている。
まず、主制御部161Fから払出制御部171Fに対して電源投入通知という名称のコマンドが送信される。この電源投入通知のコマンドは、払出制御部171Fに対して電源が投入され通信が開始されることを通知するものである。払出制御部171Fから主制御部161Fに対して電源投入受信という名称のレスポンスが送信される。この電源投入受信のレスポンスは、主制御部161Fに対して電源投入通知を受信し、通信が開始されることの応答である。
次に、主制御部161Fから払出制御部171Fに対して遊技状態通知という名称のコマンドが送信される。この遊技状態通知のコマンドは、払出制御部171Fに対して遊技状態を通知するものである。払出制御部171Fから主制御部161Fに対して遊技状態応答という名称のレスポンスが送信される。この遊技状態応答のレスポンスは、主制御部161Fに対して遊技状態通知を受信したことの応答である。
<主制御部と払出制御部との間で処理される主なシーケンス>
次に、図130および図131に基づいて、主制御部161Fおよび払出制御部171Fで実行される処理による主制御部161Fと払出制御部171Fとの間で処理される主なシーケンスについて説明する。
<<通信シーケンス>>
まず、図130を参照して、電源投入時、主制御部161Fと払出制御部171Fとの間で処理されるシーケンスを説明する。図130に示すシーケンスは、主制御部161Fと払出制御部171Fとの通信が正常に終了した後の通信再開時に実行される処理である。
また、主制御部161Fと払出制御部171Fとの通信は、主制御部161Fを一次局としたポーリング方式による通信を行ない、ポーリング間隔は200msである。なお、電源投入通知および電源投入受信の通信については除く。払出制御部171Fは、応答を送信してから1秒経過しても主制御部161Fからの要求コマンドが受信できなかった場合に「通信回線断」とし、遊技を停止させる。
さらに、払出制御部171Fは正常なデータを受信した場合のみ、主制御部161Fへ応答コマンドを送信する。主制御部161Fはポーリング間隔時間内に応答コマンドを受信しなかった場合、初回を含めて最大3回までコマンドを再送する。送受信に用いる通番は、主制御部161F、払出制御部171Fともに記憶部に保存しておき、コマンドの正常性確認、電源断復旧時および通信回線断復旧に用いる。
具体的に、通信シーケンスを説明すると、まず、電源を投入すると主制御部161Fと払出制御部171Fとの間で電源投入通知および電源投入受信の通信が行なわれ、さらに認証新シーケンスが開始される。認証シーケンスは、前述したように主制御部161Fおよび払出制御部171FのチップIDが認証され、主制御部−払出制御部間の通信が認証されたことが認証ステータスレジスタ611F,711Fに書込まれる。さらに、当該認証シーケンスにより、主制御部161Fと払出制御部171Fとの暗号通信に用いる暗号鍵および復号鍵を生成する処理を行なう。当該処理を行なった以降の主制御部161Fと払出制御部171Fとの通信には、生成された暗号鍵および復号鍵を用いて暗号通信が行なわれる。
次に、主制御部161Fは、認証シーケンスが終了した後、通番を「n」として遊技状態通知のコマンドを払出制御部171Fに送信する。払出制御部171Fは、通番をカウントアップせずに「n」として遊技状態受信のレスポンスを主制御部161Fに返信する。さらに、主制御部161Fは、通番を「n+1」として遊技状態通知のコマンドを払出制御部171Fに送信する。払出制御部171Fは、通番をカウントアップせずに「n+1」として遊技状態受信のレスポンスを主制御部161Fに返信する。
その後、主制御部161Fは、通番をカウントアップして「n+2」として、遊技状態通知のコマンドを払出制御部171Fへ送信する。そして、払出制御部171Fは、通番をカウントアップせずに「n+2」として、遊技状態受信のレスポンスを主制御部161Fへ返信する。
主制御部161Fと払出制御部171Fとの通信において、通番「n」の遊技状態通知のコマンド送信から通番「n+1」の遊技状態通知のコマンド送信までの間隔、通番「n+1」の遊技状態通知のコマンド送信から通番「n+2」の遊技状態通知のコマンド送信までの間隔は、それぞれ200ms間隔である。
<<電源断後のシーケンス>>
次に、図131を参照して、電源断/通信回線断により状態情報要求が未到達となったときの処理について説明する。図131は、特に、電源断/通信回線断線(たとえば、払出制御部171Fの電源が一旦OFFにした後再度ONになった場合)があって、遊技状態通知が未到達(主制御部161Fから払出制御部171Fへコマンドが未到達)で、復旧後通信相手が一致する場合の処理を説明するためのシーケンス図である。
図131を参照して、遊技中において電源断が発生する前に、主制御部161Fは、通番=nを含む遊技状態通知を払出制御部171Fに送信している。それを受けて、払出制御部171Fは、通番=nを含む遊技状態受信を主制御部161Fに送信する。
そして、遊技中において払出制御部171Fに電源断が発生した後に、通番=n+1を含む遊技状態通知が主制御部161Fから払出制御部171Fへ送信された場合に、払出制御部171Fが電源断の状態であるためにその遊技状態通知を受信できない。それ以降、払出制御部171Fからの遊技状態受信が送信されてこないために主制御部161Fは、1秒後に電源断が発生したとして通信を停止する制御を行なう。
その後、電源投入および主制御部161Fと払出制御部171Fとの間で認証シーケンスが開始されると、主制御部161Fは、通番=1および主制御通番(前回最終送信通番)=n+1を含む電源投入通知を払出制御部171Fに送信する。払出制御部171Fは、電源断が発生する前に主制御部161Fに送信した遊技状態受信の通番が「n」であったため、払出制御部171Fでバックアップしている払出制御通番=nとなる。そのため、払出制御部171Fでバックアップしている払出制御通番=nと、主制御部161Fでバックアップしている主制御通番=n+1とが不一致である。払出制御部171Fは、通番が不一致であるとき、主制御部161Fから送信された電源投入通知に含まれるリカバリ遊技情報に基づき払出制御部171Fの情報をリカバリ処理する。その後、払出制御部171Fは、通番=1を含む電源投入受信を主制御部161Fに送信する。
主制御部161Fは、通番=2を含む遊技状態通知を払出制御部171Fに送信する。払出制御部171Fは、リカバリ処理後の内容で処理を行なうとともに、通番=2を含む遊技状態受信を払出制御部171Fに送信する。以降同様に、主制御部161Fは、通番=3を含む遊技状態通知を払出制御部171Fに送信する。払出制御部171Fは、通番=3を含む遊技状態受信を払出制御部171Fに送信する。
なお、前述のリカバリ処理は、通番が不一致であったので実施する構成であったが、リカバリ遊技情報に含まれる情報(たとえば、遊技情報数や賞球情報など)が主制御部161Fと払出制御部171Fとで不一致であってもリカバリ処理を行なってもよい。
<不正遊技機接続検知>
次に、CU3Fで検知される不正遊技機検知の仕組みについて説明する。P台2Fに接続可能なカードユニットは、商用で使用されるカードユニット(前述しているCU3Fに相当、以下単にCU3F、商用CUともいう。)に限定されるものではなく、P台2Fの遊技盤を開発するための遊技盤開発治具や、P台2Fの開発に用いる開発用カードユニット(開発用CU)などであってもよい。
しかし、商用CU以外のP台2Fに接続可能なカードユニットを利用して、不正にP台2Fで遊技を行なうことが考えられる。たとえば、商用CU以外の遊技盤開発治具や開発用CUに接続したP台2Fに対して多数の遊技玉を貸出して遊技盤開発治具や開発用CUから切離した状態にし、その後P台2Fに商用CUを接続して不正に遊技を行なうことが考えられる。
そこで、本実施の形態では、商用CUに接続したP台2Fが、過去に商用CU以外の遊技盤開発治具や開発用CUに接続されていたのか否かを検知して商用CUの動作を停止する。具体的に、図を用いて過去に商用CU以外の遊技盤開発治具や開発用CUに接続されていたのか否かを検知する仕組みを説明する。
図132は、遊技盤開発治具に接続していたP台2Fが、ユニット交換により商用CUに接続された場合の検知の仕組みを説明するための図である。まず、図132に示す遊技盤開発治具3EFは、P台開発用のSC325EbFを有している以外、商用CUと同じCU制御部323Fおよび通信制御IC325aFで構成されている。また、P台開発用のSC325EbFには、遊技盤開発治具であることの示す識別IDが埋め込まれている。具体的に、識別IDは、SC基板IDに含まれる識別コードであり、SC基板IDの一部としてSC325EbFに記憶されている。
図132に示すように遊技盤開発治具3EFにP台2Fを接続すると、カード挿入通知のコマンドが遊技機電文通知として遊技盤開発治具3EFからP台2Fに送信される際に、P台開発用のSC325EbFから識別IDがP台2Fに送信される。P台2Fに送信された識別IDは、払出制御回路171aF内のレジスタに格納される。識別IDとともにSC325EbFのSC基板IDも払出制御回路171aF内のレジスタに格納される。なお、識別IDのみ払出制御回路171aFの別の記憶装置にバックアップする構成でもよい。
SC基板IDは、前述したとおり払出制御回路171aF内のレジスタに格納されるが、払出制御回路171aFで実行されるユーザプログラム171pFには通知されない。そのため、P台2Fは、SC基板IDを払出制御回路171aFから読出すことができず、SC基板IDを不正に複製されることできないためセキュリティ性が高くなっている。払出制御回路171aFのレジスタに記憶されたSC基板ID(識別IDを含む)は、払出制御回路171aFのRAMをクリアすることで消去することができる。
次に、遊技盤開発治具3EFからCU3Fにユニット交換する場合の処理について説明する。遊技盤開発治具3EFに接続されていたP台2Fは、ユニット交換によりCU3Fに接続されると電源投入後の認証シーケンスの処理において遊技機電文通知がCU3Fから送信される。この遊技機電文通知により、SC325bFから識別ID(商用CUであることを表す識別情報)を含むSC基板IDがP台2Fに送信される。なお、SC基板IDをP台2Fに送信するタイミングは、認証シーケンスの処理中に限定されるものではなく、たとえばCU3Fにユニット交換してP台2Fの電源を投入後、遊技者がカードを挿入してカード挿入通知のコマンドが遊技機電文通知としてCU3Fから送信されるタイミングであってもよい。つまり、遊技盤開発治具3EFで付与された遊技玉数を、遊技者が不正に使用して遊技することを防止することができるタイミングであれば何れのタイミングであってもよい。なお、図132では、P台開発用のSC325EbFからの識別IDと、商用のSC325bFからの識別IDとを区別するため、P台開発用のSC325EbFからの識別IDを図示し、商用のSC325bFからの識別IDを図示していない。
商用のSC325bFからの識別IDを受信したP台2Fは、払出制御回路171aFで格納(記憶)している識別ID(過去に接続したカードユニットの識別ID)が遊技盤開発治具3EFの識別IDか否かを判定する。なお、P台2Fは、払出制御回路171aFで格納している識別IDが遊技盤開発治具3EFの識別IDか否かの種別まで判定せずに商用のCU3F以外の接続装置であるか否かを判定するだけでもよい。払出制御回路171aFは、格納している識別IDが遊技盤開発治具3EFの識別IDであると判定した場合、ユーザプログラム171pFに格納している識別IDを通知せずに過去に接続したカードユニットが遊技盤開発治具3EFであったことのみを通知し、状態情報応答のレスポンスに含まれる不正検知状態3のBit6(遊技盤開発治具接続)=“1”とする。
CU3Fは、接続したP台2Fから遊技機電文応答として送信されてくる状態情報応答のレスポンスに含まれる不正検知状態3のBit6の情報に基づき、過去に接続したカードユニットが遊技盤開発治具3EFであったことを検知する。具体的に、SC325bFが、不正検知状態3のBit6の情報を読出し、当該情報が“1”であれば過去に接続したカードユニットが遊技盤開発治具3EFであったことを検知する。SC325bFは、過去に接続したカードユニットが遊技盤開発治具3EFであったことを検知すると、CU制御部323Fとの通信を停止する。これにより、CU3Fは、過去に接続した遊技盤開発治具3EFでの情報をCU制御部323Fに取込むことなく不正な遊技を行なうことを防止することができる。また、CU3Fは、過去に接続したカードユニットが遊技盤開発治具3EFであったことを検知すると、音や光により報知したり、上位サーバに検知結果を報知したりしてもよい。
なお、図132では、ユーザプログラム171pFに不正検知状態3のBit6=“1”の情報が書込まれたことを分かりやすく表現するために識別IDがユーザプログラム171pFに書込まれたように図示されているが、前述したように格納している識別ID自体は通知されない。また、P台2FからCU3Fに対して不正検知状態3のBit6=“1”の情報を含む状態情報応答のレスポンスが送信される様子も分かりやすく表現するために識別IDがP台2FからCU3Fに対して送信されたように図示されているが、格納している識別ID自体が通知されるものではない。
もちろん、前述したように払出制御回路171aFは、格納している識別IDが遊技盤開発治具3EFの識別IDであると判定した場合、状態情報応答のレスポンスに含まれるフラグ(不正検知状態3のBit6(遊技盤開発治具接続)=“1”)としてユーザプログラム171pFに書込むのではなく、図132で示したように遊技盤開発治具3EFの識別ID自体の情報をユーザプログラム171pFに書込んでもよい。さらに、ユーザプログラム171pFが格納している識別IDに基づいて遊技盤開発治具3EFの識別IDか否かを判定してもよい。また、P台2FからCU3Fに対して送信する情報もフラグ(不正検知状態3のBit6(遊技盤開発治具接続)=“1”)ではなく、図132で示したように遊技盤開発治具3EFの識別ID自体の情報を送信してもよい。
さらに、P台2Fは、払出制御回路171aFで格納している識別ID(過去に接続したカードユニットの識別ID)が遊技盤開発治具3EFの識別IDか否かを判定せずに、格納している識別IDをユーザプログラム171pFを介してSC325bFに送信するだけの構成でもよい。つまり、過去に接続したカードユニットが遊技盤開発治具3EFか否かの判定は、P台2FではなくSC325bFで行ない、遊技盤開発治具接続を検知する構成であってもよい。
また、遊技盤開発治具3EFから別の遊技盤開発治具3EFにユニット交換する場合も、図132で説明したように接続したP台2Fから不正検知状態3のBit6=“1”の情報を含む状態情報応答のレスポンスが送信されてくる。しかし、ユニット交換した別の遊技盤開発治具3EFは、P台開発用のSC325EbFに遊技機開発メーカコードの出荷メーカコードが設定してあるため、送信されてきた不正検知状態3のBit6=“1”の情報を無視して、過去に接続したカードユニットが遊技盤開発治具3EFであったことを検知しないように構成してもよい。つまり、カードユニットは、SCに設定されている出荷メーカコードにより遊技盤開発治具3EFから別の遊技盤開発治具3EFにユニット交換したと判定した場合、遊技盤開発治具接続のエラーを検知しない。これにより、遊技盤開発治具3EFとP台2Fとの接続を繰返す開発の工程において、遊技盤開発治具接続のエラーを検知する処理が行なわれないので開発やメンテナンスの作業が容易になる。
図133は、開発用CUに接続していたP台2Fが、ユニット交換により商用CUに接続された場合の検知の仕組みを説明するための図である。まず、図133に示す開発用CU3DFは、開発用のSC325DbFを有している以外、商用CUと同じCU制御部323Fおよび通信制御IC325aFで構成されている。また、開発用のSC325DbFには、開発用CUであることの示す識別IDが埋め込まれている。具体的に、識別IDは、SC基板IDに含まれる識別コードであり、SC基板IDの一部としてSC325DbFに記憶されている。
図133に示すように開発用CU3DFにP台2Fを接続すると、カード挿入通知のコマンドが遊技機電文通知として開発用CU3DFからP台2Fに送信される際に、開発用のSC325DbFから識別IDがP台2Fに送信される。P台2Fに送信された識別IDは、払出制御回路171aF内のレジスタに格納される。識別IDとともにSC325DbFのSC基板IDも払出制御回路171aF内のレジスタに格納される。なお、識別IDのみ払出制御回路171aFの別の記憶装置にバックアップする構成でもよい。
次に、開発用CU3DFからCU3Fにユニット交換する場合の処理について説明する。開発用CU3DFに接続されていたP台2Fは、ユニット交換によりCU3Fに接続されると電源投入後の認証シーケンスの処理において遊技機電文通知がCU3Fから送信される。この遊技機電文通知により、SC325bFから識別ID(商用CUであることを表す識別情報)を含むSC基板IDがP台2Fに送信される。なお、SC基板IDをP台2Fに送信するタイミングは、認証シーケンスの処理中に限定されるものではなく、たとえばCU3Fにユニット交換してP台2Fの電源を投入後、遊技者がカードを挿入してカード挿入通知のコマンドが遊技機電文通知としてCU3Fから送信されるタイミングであってもよい。つまり、開発用CU3DFで付与された遊技玉数を、遊技者が不正に使用して遊技することを防止することができるタイミングであれば何れのタイミングであってもよい。なお、図133では、開発用のSC325DbFからの識別IDと、商用のSC325bFからの識別IDとを区別するため、開発用のSC325DbFからの識別IDを図示し、商用のSC325bFからの識別IDを図示していない。
商用のSC325bFからの識別IDを受信したP台2Fは、払出制御回路171aFで格納している識別ID(過去に接続したカードユニットの識別ID)が開発用CU3DFの識別IDか否かを判定する。なお、P台2Fは、払出制御回路171aFで格納している識別IDが開発用CU3DFの識別IDか否かの種別まで判定せずに商用のCU3F以外の接続装置であるか否かを判定するだけでもよい。払出制御回路171aFは、格納している識別IDが開発用CU3DFの識別IDであると判定した場合、ユーザプログラム171pFに格納している識別IDを通知せずに過去に接続したカードユニットが開発用CU3DFであったことのみを通知し、状態情報応答のレスポンスに含まれる不正検知状態3のBit5(開発用CU接続)=“1”とする。
CU3Fは、接続したP台2Fから遊技機電文応答として送信されてくる状態情報応答のレスポンスに含まれる不正検知状態3のBit5の情報に基づき、過去に接続したカードユニットが開発用CU3DFであったことを検知する。具体的に、SC325bFが、不正検知状態3のBit5の情報を読出し、当該情報が“1”であれば過去に接続したカードユニットが開発用CU3DFであったことを検知する。SC325bFは、過去に接続したカードユニットが開発用CU3DFであったことを検知すると、CU制御部323Fとの通信を停止する。これにより、CU3Fは、過去に接続した開発用CU3DFでの情報をCU制御部323Fに取込むことなく不正な遊技を行なうことを防止することができる。また、CU3Fは、過去に接続したカードユニットが開発用CU3DFであったことを検知すると、音や光により報知したり、上位サーバに検知結果を報知したりしてもよい。
なお、図133では、ユーザプログラム171pFに不正検知状態3のBit5=“1”の情報が書込まれたことを分かりやすく表現するために識別IDがユーザプログラム171pFに書込まれたように図示されているが、前述したように格納している識別ID自体は通知されない。また、P台2FからCU3Fに対して不正検知状態3のBit5=“1”の情報を含む状態情報応答のレスポンスが送信される様子も分かりやすく表現するために識別IDがP台2FからCU3Fに対して送信されたように図示されているが、格納している識別ID自体が通知されるものではない。
もちろん、前述したように払出制御回路171aFは、格納している識別IDが開発用CU3DFの識別IDであると判定した場合、状態情報応答のレスポンスに含まれるフラグ(不正検知状態3のBit5(開発用CU接続)=“1”)としてユーザプログラム171pFに書込むのではなく、図133で示したように開発用CU3DFの識別ID自体の情報をユーザプログラム171pFに書込んでもよい。さらに、ユーザプログラム171pFが格納している識別IDに基づいて開発用CU3DFの識別IDか否かを判定してもよい。また、P台2FからCU3Fに対して送信する情報もフラグ(不正検知状態3のBit5(開発用CU接続)=“1”)ではなく、図133で示したように開発用CU3DFの識別ID自体の情報を送信してもよい。
さらに、P台2Fは、払出制御回路171aFで格納している識別ID(過去に接続したカードユニットの識別ID)が開発用CU3DFの識別IDか否かを判定せずに、格納している識別IDをユーザプログラム171pFを介してSC325bFに送信するだけの構成でもよい。つまり、過去に接続したカードユニットが開発用CU3DFか否かの判定は、P台2FではなくSC325bFで行ない、開発用CU接続を検知する構成であってもよい。
また、開発用CU3DFから別の開発用CU3DFにユニット交換する場合も、図133で説明したように接続したP台2Fから不正検知状態3のBit5=“1”の情報を含む状態情報応答のレスポンスが送信されてくる。しかし、ユニット交換した別の開発用CU3DFは、開発用のSC325DbFに遊技用装置開発メーカコードの出荷メーカコードが設定してあるため、送信されてきた不正検知状態3のBit5=“1”の情報を無視して、過去に接続したカードユニットが開発用CU3DFであったことを検知しないように構成してもよい。つまり、カードユニットは、SCに設定されている出荷メーカコードにより開発用CU3DFから別の開発用CU3DFにユニット交換したと判定した場合、開発用CU接続のエラーを検知しない。これにより、開発用CU3DFとP台2Fとの接続を繰返す開発の工程において、開発用CU接続のエラーを検知する処理が行なわれないので開発やメンテナンスの作業が容易になる。
このように、本実施の形態では、CU3Fに接続したP台2Fが、過去にCU3F以外の遊技盤開発治具3EFや開発用CU3DFに接続されていたのか否かを検知して、CU制御部323Fとの通信を停止してCU3Fの動作を停止させるので、過去にCU3F以外の遊技盤開発治具3EFや開発用CU3DFに接続させることで不正に遊技を行なうこと防止することができる。たとえば、P台2Fを商用のCU3Fに接続する前に遊技盤開発治具3EFや開発用CU3DFに接続して多数の遊技玉を貸出しておき、商用のCU3Fに接続後に貸出された遊技玉を用いて遊技を行なう不正を防止することができる。
次に、商用のCU3FにP台2F以外の遊技機シミュレータを接続した場合について説明する。図134は、商用のCU3Fに遊技機シミュレータを接続した場合の検知の仕組みを説明するための図である。ここで、遊技機シミュレータは、たとえば商用のCU3Fが正常に稼働するかを検査するために接続するための装置であり、検査に必要な信号や情報を仮想的に商用のCU3Fに出力することができる。そのため、商用のCU3Fは、意図的に遊技機シミュレータを接続して不正な遊技情報を送信されることを防止するため、遊技機シミュレータに接続しているのかP台2Fに接続しているのかを検知すること必要となる。
まず、図134に示す遊技機シミュレータ2AFは、P台2Fと同様に払出制御部171AFを有している。払出制御部171AFは、払出制御回路171AaFおよび払出制御回路171AaFで実行されるユーザプログラム171ApFを含んでいる。ユーザプログラム171ApFには、遊技機シミュレータ2AFであることを示す識別IDが埋め込まれている。
図134に示すように商用のCU3Fに遊技機シミュレータ2AFを接続すると、CU3Fと遊技機シミュレータ2AFとの間で遊技機電文通知のコマンドと遊技機電文応答のレスポンスとの通信が行なわれる。たとえば、CU3Fは、遊技機シミュレータ2AFに対してCU3Fの状態を通知する状態情報要求のコマンドを送信する。遊技機シミュレータ2AFは、CU3Fから状態情報要求のコマンドを受信すると、CU3Fに対して遊技情報や遊技台状態などを通知する状態情報応答のレスポンスを送信する。
CU3Fに送信する状態情報応答のレスポンスに遊技機シミュレータ2AFと接続していることをCU3Fに通知するための情報を含めている。具体的に、遊技機シミュレータ2AFは、ユーザプログラム171ApFに埋め込まれている識別IDに基づき、状態情報応答のレスポンスに含まれる不正検知状態3のBit7(遊技機シミュレータ接続)=“1”とする。
CU3Fは、接続した遊技機シミュレータ2AFから遊技機電文応答として送信されてくる状態情報応答のレスポンスに含まれる不正検知状態3のBit7の情報に基づき、接続している遊技機が遊技機シミュレータであることを検知する。具体的に、SC325bFが、不正検知状態3のBit7の情報を読出し、当該情報が“1”であれば接続している遊技機が遊技機シミュレータであることを検知する。SC325bFは、接続している遊技機が遊技機シミュレータであることを検知すると、CU制御部323Fとの通信を停止する。これにより、CU3Fは、接続している遊技機シミュレータ2AFの情報をCU制御部323Fに取込むことなく不正な遊技を行なうことを防止することができる。また、CU3Fは、接続している遊技機が遊技機シミュレータであることを検知すると、音や光により報知したり、上位サーバに検知結果を報知したりしてもよい。
なお、遊技機シミュレータ2AFからCU3Fに対して不正検知状態3のBit7=“1”の情報を含む状態情報応答のレスポンスが送信される様子も分かりやすく表現するために識別IDが遊技機シミュレータ2AFからCU3Fに対して送信されたように図示されている。
もちろん、遊技機シミュレータ2AFからCU3Fに対して送信する情報もフラグ(不正検知状態3のBit7(遊技機シミュレータ接続)=“1”)ではなく、図134で示したように遊技機シミュレータ2AFの識別ID自体の情報を送信してもよい。
このように、本実施の形態では、CU3Fに接続する遊技機が、商用のP台2Fなのか、遊技機シミュレータ2AFなのかを検知して、CU制御部323Fとの通信を停止してCU3Fの動作を停止させるので、意図的に遊技機シミュレータ2AFをCU3Fに接続させることで不正に遊技を行なうこと防止することができる。たとえば、遊技機シミュレータ2AFでCU3Fに対して多数の遊技玉を持玉に計数しておき、P台2Fに接続後に計数した待玉を遊技玉として貸出して遊技を行なう不正を防止することができる。
<パチンコ機からの稼働・未稼働情報の通知処理>
図135は、パチンコ機からの稼働・未稼働情報の通知処理を説明するための説明図である。図135に示すP台2Fは、CU3F、ホールサーバ801F、鍵管理サーバ800F、および機歴管理センタ800AFと接続されている。ここで、鍵管理サーバ800Fは、CU3F内部の電子部品のシリアルID(以下、SIDとも言う)毎に対応付けて、CU通信制御部のSIDと認証鍵とを記憶している鍵の管理サーバである。また、鍵管理サーバ800Fは、主制御基板16Fと互いに通信可能なサーバである。機歴管理センタ800AFは、前枠5Fに接続した払出制御基板17Fに設けた半導体チップのセキュリティチップIDに関連付けて前枠5Fの情報、および遊技盤26Fに接続した主制御基板16Fに設けた半導体チップのセキュリティチップIDに関連付けて遊技盤26Fの情報を記憶して、前枠5Fおよび遊技盤26Fの履歴を管理する履歴管理システムを含んでいる。なお、セキュリティ基板325Fは、パラレルインタフェイス回路であるPIF回路326Fを介して払出制御部171Fとパラレル接続している。
製造メーカ(遊技機メーカ)が前枠5Fおよび遊技盤26Fを出荷して、ホールに設置した場合、P台2Fを稼働すると、図135に示すようにP台2Fから遊技機設置情報(稼働情報)が機歴管理センタ800AFに通知される。具体的に、機歴管理センタ800AFに通知される遊技機設置情報(稼働情報)には、たとえば払出制御基板17Fに設けた半導体チップのセキュリティチップID、主制御基板16Fに設けた半導体チップのセキュリティチップIDや、前枠5Fと遊技盤26Fとを組合せた場合の相手のセキュリティチップIDなどが含まれている。なお、セキュリティチップIDは、機歴管理センタ800AFに登録後、変更、削除することができない。
一方、機歴管理センタ800AFには、製造メーカにより出荷した前枠5Fおよび遊技盤26Fの出荷情報が入力される。具体的に、機歴管理センタ800AFへの出荷情報の入力は、機歴管理センタ800AFに通信回線などを介して接続された端末から入力する。そして、機歴管理センタ800AFは、入力された前枠5Fおよび遊技盤26Fの出荷情報を、それぞれに設けた半導体チップのセキュリティチップIDに関連付けて記憶するとともに、記憶した情報とP台2Fから通知された遊技機設置情報とを照合する。機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。異常の報知として、たとえば異常報知ランプや表示器312Fによりエラー報知が行なわれたり、あるいは、ホール用管理コンピュータやホールサーバ801Fにエラーが発生した旨のエラー通知信号が送信されたりする(この場合、ホール用管理コンピュータやホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。その結果、係員による人為的な対応を促す所定の報知が行なわれる。なお、前枠5Fおよび遊技盤26FをセキュリティチップIDに関連付けて記憶した情報は、機歴管理センタ800AFへの出荷情報登録後、変更することができない。また、前枠5Fおよび遊技盤26Fの出荷情報は、ホールに設置する1日前に、機歴管理センタ800AFに登録されていることが望ましい。
同様に、ホールに設置してある前枠5Fおよび遊技盤26F(前枠5Fまたは遊技盤26Fの一方のみでもよい)を撤去して倉庫に保管した場合、P台2Fが未稼働状態となるので、図135に示すようにP台2Fから未稼働情報が機歴管理センタ800AFに通知される。具体的に、機歴管理センタ800AFに通知される未稼働情報は、設置していたP台2Fの前枠5Fおよび遊技盤26FのセキュリティチップIDが送信されないことによる情報である。
一方、機歴管理センタ800AFには、ホールまたは倉庫業者により撤去した前枠5Fおよび遊技盤26Fの撤去情報が入力される。そして、機歴管理センタ800AFは、入力された前枠5Fおよび遊技盤26Fの撤去情報を、それぞれに設けた半導体チップのセキュリティチップIDに関連付けて記憶するとともに、記憶した情報とP台2Fから通知された未稼働情報とを照合する。機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。
また、中古業者が遊技盤26Fを別のホールに再販して、ホールに設置した場合、P台2Fを稼働すると、図135に示すようにP台2Fから遊技機設置情報(稼働情報)が機歴管理センタ800AFに通知される。具体的に、機歴管理センタ800AFに通知される遊技機設置情報(稼働情報)には、たとえば主制御基板16Fに設けた半導体チップのセキュリティチップIDや、組合せた前枠5FのセキュリティチップIDなどが含まれている。
一方、機歴管理センタ800AFには、中古業者により再販した遊技盤26Fの移動情報(再販情報)が入力される。そして、機歴管理センタ800AFは、入力された遊技盤26Fの移動情報を、遊技盤26Fに設けた半導体チップのセキュリティチップIDに関連付けて記憶するとともに、記憶した情報とP台2Fから通知された遊技機設置情報とを照合する。機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。
さらに、廃棄業者が設置してある前枠5Fおよび遊技盤26F(前枠5Fまたは遊技盤26Fの一方のみでもよい)を廃棄した場合、P台2Fが未稼働状態となるので、図135に示すようにP台2Fから未稼働情報が機歴管理センタ800AFに通知される。具体的に、機歴管理センタ800AFに通知される未稼働情報は、設置していたP台2Fの前枠5Fおよび遊技盤26F(前枠5Fまたは遊技盤26Fの一方のみでもよい)のセキュリティチップIDが送信されないことによる情報である。
一方、機歴管理センタ800AFには、廃棄業者により廃棄した前枠5Fおよび遊技盤26F(前枠5Fまたは遊技盤26Fの一方のみでもよい)の撤去情報が入力される。そして、機歴管理センタ800AFは、入力された前枠5Fおよび遊技盤26Fの撤去情報を、それぞれに設けた半導体チップのセキュリティチップIDに関連付けて記憶するとともに、記憶した情報とP台2Fから通知された未稼働情報とを照合する。機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。
<遊技機の管理>
次に、出荷から廃棄までの遊技機の履歴を管理するシステムについて説明する。図136は、本実施形態に係る遊技機の出荷から廃棄までの履歴情報(機歴情報)の流れを説明するための図である。ここで、履歴を管理する遊技機の対象は、前述の封入循環式遊技機(P台2F)に限定されるものではなく、従来のCR遊技機も含まれる。もちろん、当該対象の遊技機には、パチンコ遊技機だけでなく、後述するP台2Fに対応するS台(スロットマシン)2SFや、従来のパチスロなども含まれることは言うまでもない。
図136を参照して、遊技機メーカからホールAに対して遊技機が出荷された場合、遊技機メーカのサーバ(図示せず)は、その出荷された遊技機に関する出荷情報を、通信回線を利用して機歴管理センタ800AFに入力する。機歴管理センタ800AFは、入力された当該出荷情報をサーバの記憶領域に登録する。
図137は、本実施形態に係る機歴管理センタ800AFに出荷情報が登録されるまでの流れの詳細を示す図である。
図137を参照して、ホールAは、遊技機メーカに遊技機を発注する際には、売買契約書を遊技機メーカに送付する。遊技機メーカは、ホールAから送付された売買契約書を受取ると、当該売買契約書に従う遊技機の受注を確認する。遊技機メーカは、当該受注を確認すると、保証書と検定通知書の写しをホールAに送付するとともに、遊技機の生産を開始する。遊技機メーカは、生産した遊技機は、遊技機メーカからホールAに出荷される(ホールAに納品される)。また、ホールAに出荷するための遊技機が運送業者に引き渡された後、遊技機メーカのサーバは、当該遊技機に関する出荷情報を、通信回線を介して機歴管理センタ800AFに入力する。機歴管理センタ800AFは、当該出荷情報の入力を受付けるとサーバの記憶領域に登録する。
図138は、出荷情報の具体的な内容の一例を示す図である。具体的には、図138(a)は、出荷情報として登録される項目を示す図である。図138(b)は、登録種別に含まれる登録分類を示す図である。
図138(a)を参照して、出荷情報は、登録種別と、遊技盤製造番号と、主基板管理番号と、主制御チップID番号(メインチップID)と、主制御製品コードと、遊技機枠製造番号と、払出基板管理番号と、払出制御チップID番号(払出チップID)と、払出制御製品コードと、出荷日と、事業者コードと、ホールコードと、取消フラグとを含む。
登録種別は、出荷する遊技機が従来のCR遊技機であるか、封入循環式遊技機(P台2F)であるか、および、部品交換した遊技盤であるか、遊技機枠であるかを指定するための情報である。具体的には、図138(b)では、登録種別の番号が「11」〜「14」の場合には、出荷される遊技機はCR遊技機であり、「21」〜「25」の場合には、出荷される遊技機はP台2Fであることを示している。さらに、登録種別番号「11」〜「14」は、それぞれ部品交換した遊技盤、遊技機枠、遊技盤+遊技機枠、遊技盤(部品交換)であることを示している。また、登録種別番号「21」〜「25」は、それぞれ交換した遊技盤、遊技機枠、遊技盤+遊技機枠、遊技盤の部品、遊技機枠の部品であることを示している。遊技盤の基板または遊技機枠の基板を交換する場合には、基盤を交換した場合に交換後の基板管理番号を設定して登録される。なお、遊技盤、および遊技機枠の製造番号が変更されるような部品交換は、新規の出荷として登録される。なお、登録種別によって、遊技機メーカ名および遊技機の型式名が特定される。
遊技盤製造番号および主基板管理番号は、二次元コードに従う情報である。
主制御チップID番号は、IDリーダで読取られた情報であり、P台2Fの場合のみ設定される(従来のCR遊技機では設定不要)。主制御製品コードは、主制御チップの製品コードである(従来のCR遊技機では設定不要)。
遊技機枠製造番号および払出基板管理番号は、二次元コードに従う情報である。なお、払出基板管理番号は、従来のCR遊技機では設定不要である。
払出制御チップID番号は、IDリーダで読取られた情報であり、P台2Fの場合のみ設定される(CR遊技機では設定不要)。払出制御製品コードは、払出制御チップに書込んだ製品コードである(CR遊技機では設定不要)。
出荷日は、遊技機が出荷された日であり、出荷が確定した日付である。事業者コードは、運送業者名を特定するための情報である。ホールコードは、納品先のホール名を特定するための情報である。取消フラグは、出荷情報を登録する場合には「0」が、登録した出荷情報を取消す場合には「1」が設定される。遊技機メーカは、誤った出荷情報を機歴管理センタ800AFに登録してしまった場合、誤った出荷情報の取消フラグを「1」に設定して、機歴管理センタ800AFに再度登録する。
機歴管理センタ800AFは、取消フラグが「1」に設定された出荷情報を受付けた場合、受付けた出荷情報と同じ内容で、取消フラグが「0」に設定された出荷情報の登録を取消す。つまり、「1」が設定された取消フラグを含む出荷情報と同じ内容の出荷情報が機歴管理センタ800AFの記憶領域から削除される。そのため、機歴管理センタ800AFは、取消フラグを「1」(オン状態)にすることで容易に出荷情報を取消すことができる。
さらに、機歴管理センタ800AFは、「1」が設定された取消フラグを含む出荷情報の受付を所定条件が成立するまで可能とすることができる。つまり、所定条件が成立した以降、「1」が設定された取消フラグを含む出荷情報と同じ内容の出荷情報を機歴管理センタ800AFに登録することができない。
ここで、所定条件としては、たとえば、時刻や期間などがある。そのため、機歴管理センタ800AFは、取消したい出荷情報を登録した日の午後8時まで、「1」が設定された取消フラグを含む当該出荷情報を受付けるように設定することができる。そのため、機歴管理センタ800AFは、取消フラグを「1」(オン状態)にすることで容易に出荷情報を取消すことができるとともに、所定条件が成立した以降(たとえば、登録日の午後8時以降)に出荷情報を不正に改ざんされることを防止することができる。
なお、遊技機が封入循環式遊技機(P台2F)の場合、主制御チップID番号または払出制御チップID番号が、遊技機の個体を特定するための特定情報となり、遊技機が従来のCR遊技機の場合、遊技盤製造番号、主基板管理番号、遊技機枠製造番号、払出基板管理番号の少なくとも1つの番号が遊技機の個体を特定するための特定情報となる。
また、出荷情報を図138(a)のように、遊技機が封入循環式遊技機(P台2F)であっても、従来のCR遊技機であっても同じ形式にすることで、機歴管理センタ800AFにおいて、封入循環式遊技機(P台2F)および従来のCR遊技機の履歴を統一的に管理することができる。
再び、図136を参照して、遊技機メーカから遊技機がホールAに納品され、当該遊技機がホールAに設置された場合、ホールAのサーバ(図示せず)は、通信回線を介してその設置された遊技機に関する設置情報を機歴管理センタ800AFに入力する。機歴管理センタ800AFは、入力された当該設置情報と、出荷時に登録された出荷情報とを関連付けてサーバの記憶領域に登録する。
図139は、本実施形態に係る機歴管理センタ800AFに設置情報が登録されるまでの流れの詳細を示す図である。具体的には、図139(a)は、ホールAに設置されたホール用コンピュータ(図示せず)と機歴管理センタ800AFとが通信可能に構成されていない場合の当該流れを示す図である。なお、図139(a)では、主に従来のCR遊技機の場合であり、ホール用コンピュータと機歴管理センタ800AFとが通信回線で接続されていないホールAに従来のCR遊技機が設置された場合が想定される。
図139(b)は、ホール用コンピュータと機歴管理センタ800AFとが通信可能に構成されている場合の当該流れを示す図である。図139(b)では、主に封入循環式遊技機(P台2F)の場合であり、ホール用コンピュータと機歴管理センタ800AFとが通信回線で接続されているホールAにP台2Fが設置された場合が想定される。
図139(a)を参照して、遊技機メーカから遊技機がホールAに納品されると、ホールAから遊技機メーカに遊技機受渡書の控えが送付される。遊技機メーカが遊技機受渡書の控えを受領すると、遊技機メーカから通信回線を介して遊技機の設置情報が機歴管理センタ800AFに入力され、当該入力された設置情報がサーバの記憶領域に登録される。なお、機歴管理センタ800AFに設置情報が登録されると、登録した結果が通信回線を介して、または書類として出力される。また、ホールAにおいては、所轄実施検査が実施され、変更承認通知がなされると、納品された遊技機がホールA内の所定の場所に設置される。
図139(b)を参照して、遊技機メーカから遊技機がホールAに納品されると、ホールAから遊技機メーカに遊技機受渡書の控えが送付される。その後、ホールAにおいて、所轄実施検査が実施され、変更承認通知がなされると、納品された遊技機がホールA内の所定の場所に設置される。ホール用コンピュータと機歴管理センタ800AFとが通信回線を介して接続可能に構成されていることから、ホールAに設置された遊技機の電源が投入されると自動的にホール用コンピュータから機歴管理センタ800AFに設置情報が送信される。機歴管理センタ800AFは、受信した設置情報と出荷時に登録した出荷情報とを関連付けて記憶領域に登録する。
図140は、図139(a)において機歴管理センタ800AFに入力される設置情報の内容の一例を示す図である。図140を参照して、設置情報は、登録種別と、遊技盤製造番号と、主基板管理番号と、遊技機枠製造番号と、設置日と、ホールコードと、取消フラグとを含む。登録種別と、遊技盤製造番号と、主基板管理番号と、遊技機枠製造番号と、ホールコードと、取消フラグとは、図138で説明した内容と同様であるためその詳細な説明は繰返さない。
上述したように、図139(a)の場合には、主に、ホールAに従来のCR遊技機が設置された場合が想定されるため、登録種別の番号は「11」〜「14」となる。設置日は、たとえば、保証書の開店予定日である。
以上から、図139(a)の場合には、機歴管理センタ800AFには、遊技機メーカから入力される設置情報として、遊技機メーカ名、型式名、遊技盤製造番号、主基板管理番号、遊技枠製造番号、設置日、および設置先ホール名が登録される。
また、図139(b)の場合には、機歴管理センタ800AFには、ホール用コンピュータから自動的に送信される設置情報として、遊技機メーカ名、型式名、設置日、設置先ホール名、主制御チップID、および払出制御用IDが登録される。なお、機歴管理センタ800AFは、設置情報として上記の一部の情報を受信し、出荷情報と共通する情報については、出荷情報を参照して登録する場合であってもよい。
再び、図136を参照して、ホールAに設置された遊技機が撤去された場合には、ホールAから撤去情報を書類などに記載して、当該書類を機歴管理センタ800AFに送付する。機歴管理センタ800AFに送付された撤去情報に基づき、機歴管理センタ800AFの入力手段(図示していない端末など)から必要な情報を入力することで撤去情報をサーバの記憶領域に登録する。なお、当該書類が機歴管理センタ800AFに送付されない場合には、後述する中古移動情報または廃棄情報が機歴管理センタ800AFに登録されたときに、ホールAから遊技機が撤去されたと判断して、撤去情報を登録してもよい。
図141は、本実施形態に係る機歴管理センタ800AFに撤去情報が登録されるまでの流れを示す図である。具体的には、図141(a)は、ホールAに設置されたホール用コンピュータと機歴管理センタ800AFとが通信可能に構成されていない場合の当該流れを示す図である。なお、図141(a)では、主に、ホール用コンピュータと機歴管理センタ800AFとが通信回線で接続されていないホールAに従来のCR遊技機が設置された場合が想定される。
図141(b)は、ホール用コンピュータと機歴管理センタ800AFとが通信可能に構成されている場合の当該流れを示す図である。図141(b)では、主に、ホール用コンピュータと機歴管理センタ800AFとが通信回線で接続されているホールAにP台2Fが設置された場合が想定される。
図141(a)を参照して、ホールAに設置された遊技機を撤去する場合には、発行された変更承認申請書に基づいて遊技機が撤去される。遊技機が撤去されると、ホールAから撤去情報を含む書類が機歴管理センタ800AFに送付される。機歴管理センタ800AFは、送付された当該書類に基づいて撤去情報を記憶領域に登録する。
図141(b)を参照して、ホール用コンピュータと機歴管理センタ800AFとが通信可能に構成されていることから、機歴管理センタ800AFは、記憶領域に登録されている設置情報に基づいて、ホールAに設置されているはずの遊技機と通信不能な状態が一定期間(例えば、1カ月間)経過した場合には、当該遊技機が稼働しておらず撤去された状態であると判断して、記憶領域に撤去情報を登録する。なお、図141(a)と同様に、機歴管理センタ800AFは、ホールAから送付された当該書類に基づいて撤去情報を記憶領域に登録してもよい。
従来のCR遊技機が撤去される場合には、機歴管理センタ800AFには、撤去情報として、遊技機メーカ名、遊技盤製造番号、主基板管理番号、遊技枠製造番号、撤去日、および撤去ホール名が登録される。また、P台2Fが撤去される場合には、機歴管理センタ800AFには、撤去情報として、従来のCR遊技機の場合に登録される各情報に加えて、払出制御基板管理番号がさらに登録される。
再び、図136を参照して、ホールAから撤去された遊技機が販売業者の倉庫に入庫され、当該入庫された遊技機を別のホールBに出庫する場合には、販売業者が申請書類に中古移動情報を記入して機歴管理センタ800AFに送付する。機歴管理センタ800AFは、送付された申請書類に基づいて、機歴管理センタ800AFの入力手段から中古移動情報をサーバに登録する。なお、機歴管理センタ800AFと販売業者が有する管理コンピュータとが通信可能に構成されている場合には、当該管理コンピュータは、通信回線を介して機歴管理センタ800AFに中古移動情報を入力してもよい。
販売業者から出庫された遊技機が別のホールBに納品され、当該遊技機が別のホールBに設置された場合には、別のホールBにおいても、図139で説明したような流れで設置情報が機歴管理センタ800AFのサーバに登録される。また、ホールBに設置された遊技機が撤去された場合にも、図141で説明したような流れで撤去情報が機歴管理センタ800AFに登録される。
次に、ホールAから撤去された遊技機が処理会社によって回収され、その回収された遊技機が廃棄される場合には、処理会社から廃棄情報を申請書類に記載して、当該書類を機歴管理センタ800AFに送付する。機歴管理センタ800AFは、自装置内の入力手段から必要な情報を入力することで廃棄情報を記憶領域に登録する。なお、機歴管理センタ800AFと処理会社が有する管理コンピュータとが通信可能に構成されている場合には、当該管理コンピュータは、通信回線を介して機歴管理センタ800AFに廃棄情報を入力してもよい。
また、遊技機メーカによってホールAから下取りした遊技機が廃棄される場合には、ホール用コンピュータは、通信回線を介して廃棄される遊技機に関する廃棄情報を機歴管理センタ800AFに入力する。機歴管理センタ800AFは、入力された当該廃棄情報をサーバの記憶領域に登録する。
図142は、本実施形態に係る機歴管理センタ800AFに廃棄情報が登録されるまでの流れを示す図である。
図142を参照して、遊技機メーカからホールAに遊技機の下取りの受け入れ了承通知がなされると、当該遊技機がホールAから遊技機メーカに引き渡される。遊技機メーカでは、当該遊技機を回収し保管した後、廃棄する場合には処理会社(廃棄業者)に廃棄処理を依頼する。遊技機メーカは、処理会社から遊技機の廃棄処理が完了した旨の連絡(処理明細等)を受けると、遊技機メーカのサーバは、当該遊技機に関する廃棄情報を、通信回線を介して機歴管理センタ800AFに入力する。機歴管理センタ800AFは、当該廃棄情報の入力を受付けるとサーバの記憶領域に登録する。
図143は、機歴管理センタ800AFに入力される廃棄情報の内容の一例を示す図である。
図143を参照して、廃棄情報は、登録種別と、廃棄日と、遊技盤製造事業者コードと、遊技盤製造番号と、主基板管理番号と、遊技機枠製造事業者コードと、遊技機枠製造番号と、払出基板管理番号と、事業者コードと、取消フラグとを含む。登録種別と、遊技盤製造番号と、主基板管理番号と、遊技機枠製造番号と、取消フラグとは、図138で説明した内容と同様であるためその詳細な説明は繰返さない。
廃棄日は、遊技機が廃棄された日である。遊技盤製造事業者コードは、遊技盤を製造した遊技機メーカを特定するための情報である。遊技機枠製造事業者コードは、遊技機枠を製造した遊技機メーカを特定するための情報である。事業者コードは、廃棄処理を実施した事業者を特定するための情報である。典型的には、処理会社(廃棄業者)の事業者コードであるが、遊技機メーカで廃棄処理した場合には、遊技機メーカの事業者コードとなる。
従来のCR遊技機が廃棄される場合には、機歴管理センタ800AFには、廃棄情報として、遊技機メーカ名、遊技盤製造番号、主基板管理番号、遊技枠製造番号、廃棄日、および処理業者名が登録される。また、P台2Fが廃棄される場合には、機歴管理センタ800AFには、廃棄情報として、従来のCR遊技機の場合に登録される各情報に加えて、払出制御基板管理番号がさらに登録される。
<前枠および遊技盤の管理>
前述の機歴管理センタでは、遊技機(P台2F)の履歴を管理する構成について説明したが、P台2Fは、前枠5Fと遊技盤26Fとを組合せて成るため、前枠5Fと遊技盤26Fとに分けて履歴を管理することも可能である。そこで、以下に前枠5Fおよび遊技盤26Fの機歴管理について説明する。
図144は、本実施形態に係る前枠5Fおよび遊技盤26Fの機歴管理を説明するための概略図である。図144に示す機歴管理センタ800AFは、前枠5Fに接続した払出制御基板17Fに設けた半導体チップのセキュリティチップIDに関連付けて前枠5Fの情報、および遊技盤26Fに接続した主制御基板16Fに設けた半導体チップのセキュリティチップIDに関連付けて遊技盤26Fの情報を図145に示すテーブルに記憶して、前枠5Fおよび遊技盤26Fの履歴を管理している。機歴管理センタ800AFは、制御中枢としてのCPU(Central Processing Unit)8001Fと、そのCPU8001Fの動作プログラムや制御データを記憶しているROM(Read Only Memory)8002Fと、CPU8001Fのワークエリアとして機能するRAM(Random Access Memory)8003Fと、I/Oポート(Input /Output Port)8004Fと、HDD(Hard Disk Drive)などの大容量記憶装置8005Fとが設けられている。
図145は、前枠5Fおよび遊技盤26Fの機歴管理を行なうため、前枠5Fの情報および遊技盤26Fの情報を記憶するテーブルの概略図である。図145に示すテーブルには、払出制御基板17FのセキュリティチップIDに関連付けて遊技盤26Fの情報を記憶する払出側テーブル(図145(a))と、主制御基板16FのセキュリティチップIDに関連付けて遊技盤26Fの情報を記憶する主制御側テーブル(図145(b))とが含まれている。
以下、図144および図145を用いて、前枠5Fおよび遊技盤26Fの機歴管理を具体的に説明する。まず、出荷・設置時について、(1)半導体チップメーカ190Fは、払出制御用半導体チップ17aFを製造して、前枠5Fの製造メーカである枠メーカ191Fに出荷する。また、(2)半導体チップメーカ190Fは、主制御用半導体チップ16aFを製造して、遊技盤26Fの製造メーカである遊技盤メーカ192Fに出荷する。なお、払出制御用半導体チップ17aFおよび主制御用半導体チップ16aFは同じ半導体チップメーカ190Fが製造する場合に限定されず、別々の半導体チップメーカ190Fが製造してもよい。
(3−1)半導体チップメーカ190Fは、製造した払出制御用半導体チップ17aFの払出制御用セキュリティチップIDを機歴管理センタ800AFに通知し、払出側テーブルに払出制御用セキュリティチップIDを入力して、払出側テーブルを更新する。同様に、(3−2)半導体チップメーカ190Fは、製造した主制御用半導体チップ16aFの主制御用セキュリティチップIDを機歴管理センタ800AFに通知し、主制御側テーブルに主制御用セキュリティチップIDを入力して、主制御側テーブルを更新する。
(4)枠メーカ191Fは、払出制御用半導体チップ17aFを前枠5Fに組込み、前枠5Fを製造する。さらに、枠メーカ191Fは、製造した前枠5Fをホール193Fに出荷して、設置する。(5)枠メーカ191Fは、ホール193Fに設置した前枠5Fを特定する情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けて記憶するように払出側テーブルを更新する。なお、前枠5Fを特定する情報として、図145(a)に示すように、前枠製造番号、払出基板管理番号、払出制御用の製品コード、輸送業者コード、ホールコード、出荷日、および設置日時が含まれる。さらに、前枠5Fを特定する情報に、枠の形式名、製品コード、およびメーカーコードを含んでもよい。
(6)遊技盤メーカ192Fは、主制御用半導体チップ16aFを遊技盤26Fに組込み、遊技盤26Fを製造する。さらに、遊技盤メーカ192Fは、製造した遊技盤26Fをホール193Fに出荷して、前枠5Fと遊技盤26Fとを組合せて設置する。(7)遊技盤メーカ192Fは、ホール193Fに設置した遊技盤26Fを特定する情報を機歴管理センタ800AFに通知し、主制御用セキュリティチップIDに関連付けて記憶するように主制御側テーブルを更新する。なお、遊技盤26Fを特定する情報として、図145(b)に示すように、遊技機の形式名、製品コード、メーカーコード、遊技盤製造番号、主制御基板管理番号、主制御用の製品コード、輸送業者コード、ホールコード、出荷日、および設置日時が含まれる。
(8)ホール193Fは、前枠5Fと遊技盤26Fとを組合せて成るP台2Fを稼働させる。P台2Fは、駆動すると、組込まれた払出制御用セキュリティチップIDや主制御用セキュリティチップIDを含む遊技機設置情報(稼働情報)を鍵管理サーバ800Fに送信する。鍵管理サーバ800Fは、P台2Fから送信されてきた遊技機設置情報に基づいて、P台2Fの認証を行ない、必要な暗証鍵をP台2Fに送信する。(9)鍵管理サーバ800Fは、遊技機設置情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けてペア(組合せた)の主制御用セキュリティチップIDを記憶するように払出側テーブルを更新し、主制御用セキュリティチップIDに関連付けてペア(組合せた)の払出制御用セキュリティチップIDを記憶するように主制御側テーブルを更新する。機歴管理センタ800AFは、鍵管理サーバ800Fから送信されてきた遊技機設置情報と、半導体チップメーカ190F、枠メーカ191Fおよび遊技盤メーカ192Fにより更新された払出側テーブルおよび主制御側テーブルの内容とを照合する。
機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。また、機歴管理センタ800AFは、払出側テーブルに含まれる出荷日などの情報(図145(a)に示す(3−1),(5)の情報)が更新された前枠5Fの管理状態(ステータス)を「出荷」、さらに払出側テーブルに含まれるペアの主制御用セキュリティチップIDの情報(図145(a)に示す(9)の情報)が更新された前枠5Fの管理状態(ステータス)を「設置」と判断する。なお、前枠5Fの管理状態(ステータス)は、払出側テーブル内に記憶しても、別の記憶領域に記憶してもよい。なお、出荷登録後の初期不良時、再出荷は行なわない。
同様に、機歴管理センタ800AFは、主制御側テーブルに含まれる出荷日などの情報(図145(b)に示す(3−2),(7)の情報)が更新された遊技盤26Fの管理状態(ステータス)を「出荷」、さらに主制御側テーブルに含まれるペアの払出制御用セキュリティチップIDの情報(図145(b)に示す(9)の情報)が更新された遊技盤26Fの管理状態(ステータス)を「設置」と判断する。なお、遊技盤26Fの管理状態(ステータス)は、主制御側テーブル内に記憶しても、別の記憶領域に記憶してもよい。なお、出荷登録後の初期不良時、再出荷は行なわない。
次に、保管時について、(10)ホール193Fは、新しい前枠5Fおよび遊技盤26Fに入替える場合、設置してある前枠5Fおよび遊技盤26Fを撤去して倉庫に保管する。(11)倉庫業者194Fは、ホール193Fから撤去した前枠5Fの保管情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けて記憶するように払出側テーブルを更新する。また、倉庫業者194Fは、ホール193Fから撤去した遊技盤26Fの保管情報を機歴管理センタ800AFに通知し、主制御用セキュリティチップIDに関連付けて記憶するように主制御側テーブルを更新する。なお、前枠5Fおよび遊技盤26Fの保管情報として、図145に示すように、遊技機の製造業者、設置元ホール、撤去日、保管日、および保管場所が含まれる。
前枠5Fおよび遊技盤26Fがホール193Fから撤去されると、稼働情報が鍵管理サーバ800Fに送信されなくなる。つまり、撤去された前枠5Fおよび遊技盤26Fから、鍵管理サーバ800Fに未稼働情報が送信されたこととみなすことができる。鍵管理サーバ800Fに送信された未稼働情報は、さらに機歴管理センタ800AFに送信される。機歴管理センタ800AFは、鍵管理サーバ800Fから送信されてきた未稼働情報と、倉庫業者194Fにより更新された払出側テーブルおよび主制御側テーブルの内容とを照合する。
機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。また、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルに含まれる保管日などの情報(図145に示す(11)の情報)が更新された前枠5Fおよび遊技盤26Fの管理状態(ステータス)を「保管」と判断する。なお、前枠5Fおよび遊技盤26Fを撤去する場合、必ずしも前枠5Fと遊技盤26Fとをセットとして撤去する必要はなく、いずれか一方を取外して撤去してもよい。その場合、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルのいずれか一方の(11)(図145参照)の情報のみが更新される。
次に、再販時について、(12)ホール193Fは、倉庫業者194Fが保管している前枠5Fおよび遊技盤26Fを、中古業者195Fに再販を依頼する。中古業者195Fは、保管してある前枠5Fおよび遊技盤26Fを別のホールに再販して、当該ホールに設置する。(13)中古業者195Fは、再販した前枠5Fの再販情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けて記憶するように払出側テーブルを更新する。また、中古業者195Fは、再販した遊技盤26Fの再販情報を機歴管理センタ800AFに通知し、主制御用セキュリティチップIDに関連付けて記憶するように主制御側テーブルを更新する。なお、前枠5Fおよび遊技盤26Fの再販情報として、図145に示すように、設置元ホール、撤去日、設置日、および販社名が含まれる。
前枠5Fおよび遊技盤26Fが再販されると、別のホールに設置され、前枠5Fと遊技盤26Fとを組合せてP台2Fを稼働させる。P台2Fは、駆動すると、組込まれた払出制御用セキュリティチップIDや主制御用セキュリティチップIDを含む遊技機設置情報(稼働情報)を鍵管理サーバ800Fに送信する。鍵管理サーバ800Fは、P台2Fから送信されてきた遊技機設置情報に基づいて、P台2Fの認証を行ない、必要な暗証鍵をP台2Fに送信する。また、鍵管理サーバ800Fは、遊技機設置情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けてペア(組合せた)の主制御用セキュリティチップIDを記憶するように払出側テーブルを更新し、主制御用セキュリティチップIDに関連付けてペア(組合せた)の払出制御用セキュリティチップIDを記憶するように主制御側テーブルを更新する。機歴管理センタ800AFは、鍵管理サーバ800Fから送信されてきた遊技機設置情報と、中古業者195Fにより更新された払出側テーブルおよび主制御側テーブルの内容とを照合する。
機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。また、機歴管理センタ800AFは、払出側テーブルおよび主制御販テーブルに含まれる販社名などの情報(図145に示す(13)の情報)が更新された前枠5Fおよび遊技盤26Fの管理状態(ステータス)を「再販」と判断し、さらに払出側テーブルおよび主制御側テーブルに含まれるペアのセキュリティチップIDの情報(図145に示す(9)の情報)が更新された前枠5Fおよび遊技盤26Fの管理状態(ステータス)を「設置」と判断する。なお、前枠5Fおよび遊技盤26Fを再販する場合、必ずしも前枠5Fと遊技盤26Fとをセットとして再販する必要はなく、いずれか一方を再販してもよい。その場合、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルのいずれか一方の(13)(図145参照)の情報のみが更新される。さらに、前枠5Fおよび遊技盤26Fを再販する場合、必ずしも倉庫に保管されている前枠5Fおよび遊技盤26Fを再販する場合に限定されず、ホールに設置してある前枠5Fおよび遊技盤26Fを再販してもよい。また、再販時の再出荷は行なわない。
次に、廃棄時について、(14)ホール193Fは、保管してある前枠5Fおよび遊技盤26Fを、廃棄業者196Fに廃棄を依頼する。廃棄業者196Fは、保管してある前枠5Fおよび遊技盤26Fを適切な方法で廃棄する。(15)廃棄業者196Fは、廃棄した前枠5Fの廃棄情報を機歴管理センタ800AFに通知し、払出制御用セキュリティチップIDに関連付けて記憶するように払出側テーブルを更新する。また、廃棄業者196Fは、廃棄した遊技盤26Fの廃棄情報を機歴管理センタ800AFに通知し、主制御用セキュリティチップIDに関連付けて記憶するように主制御側テーブルを更新する。なお、前枠5Fおよび遊技盤26Fの廃棄情報として、図145に示すように、設置元ホール、引き取り日、および廃棄日が含まれる。
前枠5Fおよび遊技盤26Fが廃棄されると、稼働情報は鍵管理サーバ800Fに送信されない。つまり、廃棄された前枠5Fおよび遊技盤26Fから、鍵管理サーバ800Fに未稼働情報が送信されたこととみなすことができる。鍵管理サーバ800Fに送信された未稼働情報は、さらに機歴管理センタ800AFに送信される。機歴管理センタ800AFは、鍵管理サーバ800Fから送信されてきた未稼働情報と、廃棄業者196Fにより更新された払出側テーブルおよび主制御側テーブルの内容とを照合する。
機歴管理センタ800AFは、照合した結果、異常であれば、当該異常を報知する。また、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルに含まれる廃棄日などの情報(図145に示す(15)の情報)が更新された前枠5Fおよび遊技盤26Fの管理状態(ステータス)を「廃棄」と判断する。なお、前枠5Fおよび遊技盤26Fを廃棄する場合、必ずしも前枠5Fと遊技盤26Fとをセットとして廃棄する必要はなく、いずれか一方を取外して廃棄してもよい。その場合、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルのいずれか一方の(15)(図145参照)の情報のみが更新される。さらに、前枠5Fおよび遊技盤26Fを廃棄する場合、必ずしも倉庫に保管されている前枠5Fおよび遊技盤26Fを廃棄する場合に限定されず、ホール193Fに設置してある前枠5Fおよび遊技盤26Fを廃棄してもよい。
<機歴管理センタの異常判定>
機歴管理センタ800AFは、前述したように遊技機設置情報および未稼働情報と更新した情報とを照合した結果、異常であれば、当該異常を報知する。具体的に、機歴管理センタ800AFが異常であるか否かを判定する処理について、フローチャートを用いて説明する。図146は、機歴管理センタ800AFが前枠5Fおよび遊技盤26Fの管理の異常判定処理を説明するためのフローチャートである。図147は、図146に示すフローチャートで参照するテーブルを説明する図である。
まず、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルに含まれる情報に基づき、前枠5Fおよび遊技盤26Fの管理状態(ステータス)を判断する(SF211)。具体的に、機歴管理センタ800AFは、払出側テーブルおよび主制御側テーブルに含まれる廃棄日などの情報(図145に示す(15)の情報)が更新された前枠5Fおよび遊技盤26Fの管理状態(ステータス)を「廃棄」と判断する。
次に、機歴管理センタ800AFは、前回判断した管理状態から今回判断した管理状態への変化が遷移禁止テーブルに含まれるか否かを確認する(SF212)。遷移禁止テーブルは、図147(a)に示すように、前回判断した管理状態から遷移が禁止されている管理状態を示している。具体的に、枠メーカ191Fが前枠5Fを製造して出荷した場合、当該前枠5Fが廃棄や再販されることはないので、遷移禁止テーブルでは、管理状態が「出荷」から「廃棄」や「再販」へ遷移することを禁止している。また、一度、設置、保管および再販された前枠5Fが、枠メーカ191Fから出荷されることはないので、遷移禁止テーブルでは、管理状態が「設置」、「保管」および「再販」から「出荷」へ遷移することを禁止している。さらに、廃棄された前枠5Fが、出荷、設置、保管および再販されることはないので、遷移禁止テーブルでは、管理状態が「廃棄」から「出荷」、「設置」、「保管」および「再販」へ遷移することを禁止している。なお、前述の遷移禁止テーブルのでは、前枠5Fを例に説明したが、遊技盤26Fについても同様である。
次に、機歴管理センタ800AFは、今回判断した管理状態への変化が遷移禁止テーブルに含まれないとき(SF212:N)、鍵管理サーバ800Fからの情報に基づいて、前枠5Fおよび遊技盤26Fの稼働状態を判断する(SF213)。具体的に、機歴管理センタ800AFは、鍵管理サーバ800Fから遊技機設置情報が送信されたときは稼働状態と判断し、鍵管理サーバ800Fから未稼働情報が送信されたとき(遊技機設置情報が送信されないとき)、非稼働状態と判断する。
次に、機歴管理センタ800AFは、SF211で今回判断した管理状態、およびSF213で判断した稼働状態が更新異常テーブルに含まれているか否かを確認する(SF214)。更新異常テーブル、図147(b)に示すように、SF211で今回判断した管理状態において禁止されている稼働状態を示している。具体的に、前枠5Fおよび遊技盤26Fが設置されている場合、営業時間内であれば稼働状態となるが、営業時間外であれば通常未稼働状態であるので、更新異常テーブルでは、管理状態が「設置」のとき、「営業時間外で稼働」となると異常と判定する。また、前枠5Fおよび遊技盤26Fが設置されていない場合、常に未稼働状態となるので、更新異常テーブルでは、管理状態が「出荷」,「保管」,「再販」,および「廃棄」のとき、「稼働」となると異常と判定する。
次に、機歴管理センタ800AFは、判断した稼働状態が更新異常テーブルに含まれているとき(SF214:Y)、異常を報知する(SF215)。SF215で、異常を報知する手段は、機歴管理センタ800AFの表示装置に異常を表示する、音声出力装置から警報音を出力するなど、いずれの手段であってもよい。また、機歴管理センタ800AFは、今回判断した管理状態への変化が遷移禁止テーブルに含まれるとき(SF212:Y)も、異常を報知する(SF215)。
機歴管理センタ800AFは、判断した稼働状態が更新異常テーブルに含まれていないとき(SF214:N)、処理を終了する。
以上のように、本実施形態に係る機歴管理センタ800AFは、前枠5Fの履歴情報を払出制御用セキュリティチップIDに関連付けて記憶する払出側テーブルと、遊技盤26Fの履歴情報を主制御用セキュリティチップIDに関連付けて記憶する主制御側テーブルとを大容量記憶装置8005Fに含み、CPU8001Fが払出側テーブルおよび主制御側テーブルに記憶した情報に基づいて、前枠5Fおよび遊技盤26Fの管理状態の異常を判定する。そのため、本実施形態に係る機歴管理センタ800AFは、別々に流通する可能性がある前枠5Fおよび遊技盤26FをそれぞれのセキュリティチップIDに関連付けて履歴を管理することができる。
<スロットマシン>
次に、遊技機の他の例としてスロットマシンを説明する。図148は、スロットマシンの前面扉を開放した状態を示す斜視図である。これまでの説明において、パチンコ遊技機を“P台”と略称したこととの関係上、スロットマシンを以下では、“S台”とも略称する。
遊技玉および持玉を用いた上記の遊技用システムは、S台にも同様に適用される。ただし、S台では、玉を使わずにゲームが行なわれる関係上、以下では、遊技玉を遊技点、持玉を持点と称する。
図148を参照して、スロットマシン(以下、遊技機、またはS台と略称することもある)2SFは、本体枠2aSFに対して前面扉2bSFがその左側縁を揺動中心として開閉可能に設けられている。図148では図示を省略しているが、S台2SFの図面左隣には、P台と同様にCUが接続される。
S台2SFでは、遊技点を用いることによって賭数が設定され、入賞に応じてその遊技点が加算更新される。このため、S台2SFにおいて遊技をする際には、メダルの投入操作は不要である。ゆえに、S台2SFには、メダル投入口およびメダル払出口が設けられていない。
S台2SFの筐体内部には、外周に複数種の図柄が配列されたリール2LF、2CF、2RF(以下、左リール、中リール、右リールともいう)が水平方向に並設されており、これらリール2LF、2CF、2RFに配列された図柄のうち連続する3つの図柄が前面扉2bSFに設けられた透視窓から見えるように配置されている。リール2LF、2CF、2RFの外周部には、複数種類の図柄が所定の順序で描かれている。
前面扉2bSFの各リール2LF、2CF、2RFを取り囲む部分には、タッチパネル式の表示器510Fが設けられている。この表示器510Fは、P台の表示器54Fに相当する表示器であり、表示器54Fと同種の各種情報(遊技点や持点など)が表示される他、ゲームにおいて設定された賭数などが表示される。表示器510Fは、図76の表示器54Fと同様にCUの表示制御部350Fに接続されており、CU側で表示制御される。なお、この表示器510Fは、各リール2LF、2CF、2RFを取り囲む部分に設けるのではなく、P台と同様にさらに下方のパネル部分(図148に示されるスタートスイッチ7SFよりも下方の位置の、従来のS台のメダル払出口が設けられたパネル部分)に設けてもよい。
また、前面扉2bSFには、メダル1枚分に相当する「遊技点=1」を用いて賭数を設定する際に操作される1枚BETスイッチ5SF、遊技状態に応じて定められた最大の賭数(たとえば、BB発生前の通常遊技状態およびリプレイの当選確率が高確率となるRT(Replay Time)においては「遊技点=3」、ボーナスにおいては「遊技点=2」)を設定する際に操作されるMAXBETスイッチ6SF、ゲームを開始する際に操作されるスタートスイッチ7SF、リール2LF、2CF、2RFの回転を各々停止する際に操作されるストップスイッチ8LF、8CF、8RFがそれぞれ設けられている。
S台2SFにおいてゲームを行なう場合には、まず、P台と同様に、隣接されたCUを利用して遊技点を確保の上で、その遊技点を使用して賭数を設定する。遊技点は、CUに挿入されたプリペイドカードの残額、持点、あるいは遊技場に預け入れている貯メダル(P台の貯玉に相当)を引落とすことによって得られる。遊技点を使用するには1枚BETスイッチ5SF、またはMAXBETスイッチ6SFを操作すればよい。本実施の形態では、たとえば、賭数を1設定することによって遊技点が1減点され、表示器510Fの遊技点の表示も減算更新される。賭数が設定されると、賭数および遊技状態に応じて定められた入賞ラインが有効となり、スタートスイッチ7SFの操作が有効な状態、すなわち、ゲームが開始可能な状態となる。
ゲームが開始可能な状態でスタートスイッチ7SFを操作すると、各リール2LF、2CF、2RFが回転し、各リール2LF、2CF、2RFの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8LF、8CF、8RFを操作すると、対応するリール2LF、2CF、2RFの回転が停止し、透視窓に表示結果が導出表示される。
そして全てのリール2LF、2CF、2RFが停止されることで1ゲームが終了し、有効化された入賞ライン上に予め定められた図柄の組合せ(以下、役とも呼ぶ)が各リール2LF、2CF、2RFの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた遊技点が遊技者に対して付与され、表示器510Fの遊技点の表示も加算更新される。
S台の場合にも、P台と同様に遊技点を計数することが可能である。図73に示すとおり、S台2SFには、遊技点を計数して持点に変換するための計数ボタン28SFが設けられている。なお、玉貸ボタン、カード返却ボタン、および再プレイボタンは、CU側に設けられている(図76参照)。遊技者は任意のタイミング、あるいは、P台と同様に計数操作を促す表示が表示器510Fに行なわれたことに基づいて、計数操作を実行する。すると、遊技点が計数されて遊技点が減少する一方で持点が増加する様子が表示器510Fに表示される。なお、玉貸ボタンは、CU側ではなくP台側およびS台側に設けてもよい。その場合に、玉貸ボタンの操作信号がCU3Fへ直接入力されるようにしてもよく、あるいは、P台2FやS台(スロットマシン)2SFを経由して状態情報応答としてCU3Fへ送信されるようにしてもよい。
入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、ビッグボーナス(BB)、レギュラーボーナス(RB)への移行を伴う特別役と、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役(リプレイ)とがある。
複数種類の入賞役のうちのいずれを当選させるか、あるいはいずれの入賞役も当選しない外れとするかは、たとえば、スタート操作が検出されたときに、S台2SFを制御する主制御部(S台の主制御部161Fに相当)によって決定される。この決定は、たとえば、所定の乱数発生器から発生され、あるいはソフトウエア上で生成される乱数を抽選することによって決定される。
その後、主制御部は、遊技者によるリールの停止操作を待ち、停止操作時を基準にして、所定のコマ数範囲に当選役に対応する図柄があればそれを引き込み、なければ、他の図柄を引込む制御を行ない、3つの図柄を停止させ、入賞の有無を判定する。主制御基部は、入賞と判定した場合には、入賞の種類に応じた遊技点を遊技者に付与する(遊技点を加算する)。
S台2SFの払出制御部は払出制御基板(図示省略)に搭載されている。この払出制御基板は、枠メーカによって本体枠2aSFに取り付けられた状態で枠メーカからホールに納品される。
一方、S台2SFのメイン制御基板(図示省略)は、配線を接続するための基板取付盤に取り付けられた状態で、本体枠2aSFとは別にスロットマシンメーカからホールに納品される。基板取付盤は、図75に示した遊技盤26Fに対応する盤であり、遊技盤26Fに設けられた凸型ドロアコネクタ32Fと同様のコネクタを備えている。
S台2SFの本体枠2aSF内の所定位置(たとえば、リール2LF、2CF、2RFの下方)には、基板取付盤を取り付けるための取付機構と、基板取付盤側の凸型ドロアコネクタを接続するためのコネクタが設けられている。この取付機構およびコネクタは図75に示した取付機構34aF、34bFおよび凹型ドロアコネクタ33Fと同様の構造であって、基板取付盤を容易に取付機構に固定できるように工夫されている。凹型ドロアコネクタから延びる配線は、リール2LF、2CF、2RFや各種操作スイッチ(ボタン)などに接続されている。
また、S台2SFは、P台2Fの前枠5Fに相当する前面扉2bSFの開放検出、および本体枠2aSFと基板取付盤との接続検出を行なう構成を有しており、ループ状の電力線500Fにメイン制御基板も直列に接続されている。
S台により、遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の識別情報を変動表示可能な可変表示装置に表示結果が導出されることにより1ゲームが終了し、該可変表示装置に導出された表示結果に応じて入賞が発生可能とされたスロットマシンであって、前記可変表示装置に表示結果が導出される前に、複数種類の入賞について発生を許容するか否かを決定する事前決定手段と、前記事前決定手段の決定結果に応じて、前記可変表示装置に表示結果を導出させる制御を行なう導出制御手段と、前記入賞が発生した場合に遊技価値を付与する付与手段とを含むスロットマシンが構成されている。
図149は、カードユニットおよびスロットマシンのそれぞれにおいて記憶している各種データおよびその送受信態様を説明するための説明図である。この図149に示した送受信態様は、P台の構成として説明した図78の用語をS台用に置き換えたものであり、その態様は、図78を用いて説明したものと同様であるので、ここでは、これ以上の説明を省略する。
また、P台2Fの外部に出力する情報としては、パチンコ遊技機1について前述したような、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号と、現在の遊技状態での最新の保留記憶数を特定可能な保留記憶個数信号とが含まれてもよい。なお、P台2Fの外部に出力する情報としては、前述したパチンコ遊技機1のように情報出力回路から外部に出力する構成ではなく、主制御部161Fから払出制御部171Fを介して情報を出力するようにしてもよい。
保留記憶数の情報は、前述したように、主制御基板16Fに設けられた遊技制御用マイクロコンピュータが、加減算処理等のデータ処理をしているため、最新情報を認識している。したがって、現在の遊技状態での最新の保留記憶数を特定可能な保留記憶個数信号が、遊技制御用マイクロコンピュータから情報出力回路または払出制御用マイクロコンピュータを介して外部に出力可能である。
また、主制御基板16Fの遊技制御用マイクロコンピュータから払出制御基板17Fの払出制御用マイクロコンピュータには、前述したような情報に加えて、次のような、発射停止信号、電波センサ検出信号、磁石センサ検出信号、不正入賞検出信号、および、遊技状態情報設定完了信号等の各種信号により、各種情報を送信し、払出制御用マイクロコンピュータ側でも、これら各種情報を管理するようにしてもよい。
ここで、発射停止信号は、打球操作ハンドル25Fにおいて、タッチセンサが遊技者の手の接触を検出していないとき、発射停止スイッチ(操作されると強制的に発射停止制御が実行されるスイッチ)が操作されているとき、打球操作ハンドル25Fが一定回転角度以上回転操作されていないとき、または、CU3FとP台2Fとが電気的に未接続のとき等の所定の発射停止条件が成立したと遊技制御用マイクロコンピュータで判断したときに出力される。
電波センサ検出信号は、異常な電波(不正電波)を検出する前述の電波センサ(電波スイッチ)163Fからの電波検出信号が主制御基板16Fに入力されたことにより、遊技制御用マイクロコンピュータにおいて、電波センサエラーが判定され、当該判定に基づいて出力される。
磁石センサ検出信号は、異常な磁気(不正磁気)を検出する磁石センサ(磁石スイッチ)が、主制御基板16F(遊技制御用マイクロコンピュータ)に接続されている構成において、磁石を用いて遊技玉の軌道を変える等の磁石を用いた不正遊技に基づいて、磁石センサからの磁気検出信号が主制御基板16Fに入力されたことにより、遊技制御用マイクロコンピュータにおいて、磁石センサエラーが判定され、当該判定に基づいて出力される。
不正入賞検出信号は、大入賞口への入賞玉を検出するカウントスイッチが主制御基板16Fに接続されている構成において、大入賞口が閉じている状態で、入賞センサ162Fのうち大入賞口への入賞玉を検出する入賞センサの検出信号により、遊技制御用マイクロコンピュータにおいて、大入賞口内への入賞玉が検出されたことで不正入賞エラーが判定されたとき、当該判定に基づいて出力される。
遊技状態情報設定完了信号は、P台2Fの電源投入時において、主制御部161Fから払出制御部171Fへ送信する各種遊技情報(遊技状態情報)の設定が完了したときに出力される。このような遊技状態情報設定完了信号は、たとえば、CU3F側(カードユニット側)とP台2F側(パチンコ遊技機側)との通信開始のトリガ信号として使用される。
また、払出制御基板17Fの払出制御用マイクロコンピュータから主制御基板16Fの遊技制御用マイクロコンピュータには、前述したような情報に加えて、次のような、ガラス枠・本体枠開放信号、入賞数異常信号、不正加算検出信号、電波センサ検出信号、近接センサ異常信号、夜間開放検出信号、計数報知要求信号、カード抜き取り待ち中信号、および、省電力移行要求信号等の各種信号により、各種情報を送信し、遊技制御用マイクロコンピュータ側でも、これら各種情報を管理するようにしてもよい。
ガラス枠・本体枠開放信号は、前述のガラス扉開放検出スイッチ12Fまたは前枠開放検出スイッチ13Fからの検出信号が払出制御基板17Fに入力されたことにより、払出制御用マイクロコンピュータにおいてガラス扉6Fまたは前枠5Fの開放が判定されたとき、当該判定に基づいて出力される。
入賞数異常信号は、主制御基板16Fから払出制御基板17Fに入力される入賞検出信号による入賞個数について、払出制御用マイクロコンピュータにおいて単位時間当りの入賞個数が所定数以上であるか否かを確認することに基づいて、入賞数異常であるか否かを判定し、入賞数異常が判定されたとき、当該判定に基づいて出力される。
不正加算検出信号は、CU3Fへのカード挿入中以外の状態において、払出制御基板17FがCU3Fから持玉の加算要求を受信したときに払出制御用マイクロコンピュータにおいて不正加算エラーが判定され、当該判定に基づいて出力される。
電波センサ検出信号は、異常な電波(不正電波)を検出する前述の電波センサ(電波スイッチ)173Fからの電波検出信号が払出制御基板17Fに入力されたことにより払出制御用マイクロコンピュータにおいて電波センサエラーが判定され、当該判定に基づいて出力される。
近接センサ異常信号は、入賞センサ162F、玉上げスイッチ(上)41aF、ファール玉検出スイッチ33AF、アウト玉検出スイッチ701F、および、発射玉検出スイッチが玉の通過による静電容量の変化により遊技玉を検出する近接スイッチで構成されており、このような近接スイッチについて、玉検出個数の齟齬に基づいて異常であるか否かを払出制御用マイクロコンピュータにおいて判定し、異常が判定されたとき、当該判定に基づいて出力される。たとえば、玉上げスイッチ(上)41aFだけ不正電波により常時オン状態にしたときに、玉の発射が検出されなくなる一方、実際に発射された玉が回収されて発射玉検出スイッチで検出されたときには、発射玉と回収玉(アウト玉)との個数に齟齬が生じ、近接センサが異常であると判定される。
夜間開放検出信号は、次のように払出制御用マイクロコンピュータにおいて、ガラス扉6F、前枠5Fのいずれかが開放されたと判定されたときに出力される。P台2Fが電源OFFとされる夜間には、バックアップ電源により動作する前述の計数カウンタにより、ガラス扉開放検出スイッチ12F、前枠開放検出スイッチ13Fから出力される検出信号に基づいて、ガラス扉6F、前枠5Fが開放された回数がそれぞれ計数される。そして、P台2Fの電源投入時において計数カウンタから払出制御基板17Fへ出力されるそれぞれの開放回数の計数値により、払出制御用マイクロコンピュータにおいて、ガラス扉6F、前枠5Fのうちいずれが開放されたかが判定される。なお、ガラス扉6Fと前枠5Fとのうち一方のみの夜間開放を検出して、夜間開放検出信号を出力するようにしてもよい。
計数報知要求信号は、払出制御用マイクロコンピュータにおいて、計数ボタンの操作に応じて計数要求があったと判断したときに、計数値を報知する要求をするために出力される。このような計数報知要求信号は、たとえば、主基板による計数に関する音声出力および数値表示を実行するために使用される。
カード抜き取り待ち中信号は、払出制御用マイクロコンピュータにおいて、CU3Fでカード抜き取り可能状態となったと判断したときに、カード返却準備状態OFFおよびカード抜き取り待ち中ONの情報を通知するために出力される。
省電力移行要求信号は、払出制御用マイクロコンピュータにおいて、タッチセンサが遊技者の手の接触を検出していないとき(たとえば所定期間検出していないとき)、遊技玉数が「0」であるとき、CU3Fにカードが未挿入であるとき、または、変動表示が停止中であるとき等の予め定められた省電力制御移行条件が成立したと判断したときに、たとえば、液晶のバックライトの明るさの減少、および、各種ランプの発光停止等の所定の省電力制御をする省電力状態へ移行する作動要求信号として出力される。
なお、前述したパチンコ遊技機1においては、パチンコ遊技機1の外部に出力する情報として、遊技玉が入賞した入賞口と入賞個数とを特定可能な入賞情報信号が含まれる例を示したが、このような入賞情報信号の外部出力は、P台2Fにおいて適用してもよい。
また、前述したP台2Fの遊技制御用マイクロコンピュータから払出制御用マイクロコンピュータに送信する信号として説明した保留記憶個数信号、発射停止信号、および、電波センサ検出信号等の各種信号を送信することは、前述したパチンコ遊技機1において適用してもよい。また、P台2Fの払出制御用マイクロコンピュータから遊技制御用マイクロコンピュータに送信する信号として説明したガラス枠・本体枠開放信号、および、入賞数異常信号等の各種信号を送信することは、前述したパチンコ遊技機1において適用してもよい。
<変形例や特徴点など>
次に、以上、説明した本実施の形態の変形例や特徴点などを列挙する。
(1) 本実施の形態では、加算通番と計数通番とはそれぞれ別のデータとして電文フォーマットに規定されているが、これらを要求通番として共通化してもよい。特に、遊技玉の加算と遊技玉の計数とは逆の処理であるため、両処理が同時に発生することは考えにくく、その観点からも両通番を共通化して電文データ量を削減することは可能である。
また、本実施の形態では、要求通番は、予め定めた上限値に達するまで、新たな要求が発生した場合には、先に更新済みの値を元にして通番更新が行なわれる。しかながら、このような制御に代えて、1つの要求に対応する処理がすべて終了した場合には、要求通番を予め定めた初期値に初期化するようにしてもよい。たとえば、図86の例の場合には、計数完了を示す最後の状態情報応答に含める計数通番をm+6ではなく、予め定めた初期値にすることが考えられる。
また、加算通番や計数通番といった要求通番、さらには通常の通番は、1ずつカウントアップされるのではなく、P台2FおよびCU3Fの双方が記憶している所定の規則に従って更新(加算更新、減算更新、その他の演算式による更新)するものであってもよい。この場合、通番は、1,2,3といった“連続する番号”ではなく、A、B、Cなどといった概念で更新されるデータとなる。
(2) 上記遊技用システムに遊技機の一例となるスロットマシン(S台)を適用した場合、たとえば、リールおよびリールに付属する各種センサ部分とリールを制御する主制御基板とがP台の遊技盤に対応し、それ以外の構成がP台の前枠に対応する。ただし、S台には、図76に示した前枠の各種検出スイッチ41aF、701F、33AF、発射制御基板31F、および発射モータ18Fは、不要である。
従来のS台にはクレジット機能が設けられており、これが有効になっているときには、賭数を設定するとクレジットが減算され、入賞が発生するとクレジットが加算される。ただし、クレジットには上限が定められており、クレジット数が上限値に達している状態で入賞が発生すると、ホッパーからメダルが払い出される。
一方、本実施の形態に係るS台では、賭数を設定すると遊技点が減算され、入賞が発生すると遊技点が加算される。また、遊技点が所定数に達すると、計数操作を促す表示がなされ、計数操作をすることによって、遊技点が持点に変換される。このため、従来のS台のようにクレジットが上限に達してメダルを払い出す必要がない。その結果、本実施の形態に係るS台にはホッパーを設ける必要がない。
その結果、遊技場は、大量のメダルを確保する必要がなく、経済的負担が軽減される。また、遊技場は、メダルの補充・回収といった業務やメダル詰まりなどに対応するためのメンテナンス業務からも解放される。遊技客は、クレジットが満タンになった後で賭け操作毎にメダルを投入する煩わしさから解放され、遊技に集中しやすくなる。
他方、S台がメダルレスになった場合には、大量のメダルを獲得した遊技者が席の脇にメダルが入った箱を積み上げて自身の腕を誇示するような行為をすることができなくなるという不都合が生じる。しかしながら、本実施の形態では、上記のとおりドル箱表示する機能が設けられているため、このような不都合が生じることも防止できる。なお、S台の場合のドル箱表示は、多数の玉に代えて多数のメダルが積載されているようにするのが望ましい。
遊技機としてS台を適用した場合、「持点」および「遊技点」の2種類と、「クレジット」および「クレジット超過点」の2種類のデータとを用いて、以下のように各データが変換されるような遊技用システムを構成することも可能である。なお、S台の表示器510Fあるいは表示器29SFには、これら4種類のデータを表示する。
まず、プリペイドカードの残額、貯メダル、または持点からの変換操作(貸出操作、貯メダル払出し操作、持点払出し操作)が検出された場合には、夫々が引き落とされて、遊技点に変換される。
遊技点は、従来のスロットマシンにおけるメダルに対応するデータである。このため、たとえば、表示器510Fあるいは表示器29SFには遊技点の点数を表示するとともに、遊技点相当の数のメダル画像を表示することが望ましい。たとえば、このメダル画像に遊技者が触れてスロットマシンに投入するような擬似投入メダル操作(たとえば、メダルを押し込むような操作)が検出されると、メダル画像が消え、遊技点が減算されて、代わりに賭数が1つ設定される。このような擬似メダル投入操作が3度行なわれることによって、賭数が最大値の3に設定される。
その後、さらに擬似メダル投入操作が検出されると、その検出に応じて、クレジットが加算される。クレジットには上限値(たとえば、50)が設定されており、クレジットが上限値を超えたときには、クレジット超過点が加算される。
賭数設定は、遊技点を用いて上記のように行なうことが可能である他、クレジットを用いて行なうことも可能である。すなわち、1枚BETスイッチ5SFの操作があれば、賭数設定値が1加算され、クレジットが1減算される。また、MAXBETスイッチ6SFの操作があれば、賭数が3に設定され、クレジットが賭数設定に応じて減算される。
ゲームの結果、入賞が発生すると、入賞に応じた数の得点がクレジットに加算される。なお、クレジットの上限値をオーバーする入賞が発生したときには、そのオーバー分の点数がクレジット超過点として記憶される。このクレジット超過点は、従来のスロットマシンにおける、クレジットの上限を超えて入賞が発生したときに払い出されるメダルに相当する。このため、たとえば、表示器510Fあるいは表示器29SFにはクレジット超過点を表示するとともに、クレジット超過点相当の数のメダル画像を表示することが望ましい。また、このメダル画像は、遊技点に対応するメダル画像と区別できるように色を変えるなどすることが望ましい。
また、クレジット超過点は、遊技者の操作によって遊技点に変換されるようにすることが望ましい。たとえば、クレジット超過点に対応するメダル画像に遊技者が触れて遊技点に変換するような擬似メダル変換操作(たとえば、メダルを押し込むような操作)が検出されると、メダル画像が消え、クレジット超過点が減算されて遊技点が加算されるものとする。
あるいは、クレジットが上限値未満になれば、自動的にクレジット超過点がクレジットに変換されるようにしてもよい。
遊技者が計数操作を実行すると、遊技点、クレジット、およびクレジット超過点の各々が計数されて持点に変換される。その結果、遊技者の持点は、「カード持玉数+遊技点+クレジット+クレジット超過点」と掲載される。なお、“カード持玉数”とは、遊技点に変換していない変換前の持点(現時点で遊技者が所有している持玉数)である。
以上の説明において、持点、遊技点、クレジット、およびクレジット超過点の4種類のデータは、CUとS台とでデータのやりとりをすることによって双方で記憶してもよく、あるいは、持点はCU側のみで、それ以外はS台側のみで記憶してもよい。また、クレジット超過点をドル箱表示の対象としてもよい。
また、以上の説明では、クレジット超過点を用いる例を説明したが、クレジット超過点を用いなくてもよい。この場合、クレジットの上限を超えるような場合には、遊技点に加算するようにしてもよい。
(3) 本実施の形態では、カード度数を消費することによって、遊技点が加算される。あるいは、貯玉(貯メダル)を消費することによって、遊技点が加算される。つまり、カード度数あるいは貯玉から遊技点に変換される。一方、カード度数および貯玉から持点(計数玉、計数メダル)には変換されない。しかしながら、カード度数および貯玉から一旦、持点に変換されるようにしてもよい。
(4) 本実施の形態では、計数操作によって、遊技点が持点に変換される。この場合の変換率は1:1である。しかしながら、変換される場合の変換率を1:1以外としてもよい。たとえば、遊技点100点を変換した場合、そのうちの3点を差し引いた97点が持点に変換されるようにしてもよい。または、持点に対して10割未満の所定割合を乗じて得られた数の遊技玉に変換されるようにしてもよい。
(5) 持点を特定可能に記録するための記録媒体は、スマートフォンなどの携帯端末を利用したものとしてもよい。この場合、CUに携帯端末と通信するための通信部を設けて、携帯端末を通信部にかざすことによって、携帯端末内に記憶されているIDをCUが認識し、後は本実施の形態に記載したような手順で遊技を可能とする。一方、遊技終了時には、再度、携帯端末を通信部にかざすことによって、遊技終了時の持点がIDを通じて遊技者の持点に加算されるようにする。
(6) 遊技点を計数するための操作手段は、CU側に設けてもよい。その場合の操作手段は、タッチパネルに表示されるものとしてもよく、物理的なスイッチで構成してもよい。
(7) 本実施の形態では、カード返却操作をしたときに、未計数の遊技点が残っているときには、P台あるいはCU側の表示器にて計数を促すメッセージを表示する。しかし、このような構成に代えて、カード返却操作をしたときに、未計数の遊技点が残っているときには、自動的に計数表示を開始するとともに、P台あるいはCU側の表示器にて、未計数の遊技点が残っているために自動計数を開始したこと、あるいは、さらにそれに加えて、自動計数が完了した後にカードが返却されることを報知してもよい。
あるいは、カード返却操作をしたときに、未計数の遊技点が残っているときには、遊技者が一時的に離席する可能性があると判断し、表示器(CU側あるいはP台側)に、一時的な離席であるか否かを確認するメッセージを表示してもよい。さらに、表示器をタッチパネルで構成し、そのメッセージに対して遊技者が応答入力できるようにしてもよい。さらに、その応答入力が遊技終了であれば、計数操作を促すメッセージを表示する。一方、応答入力が一時離席であれば、CU側あるいはP台側または双方でカードのIDを記憶した状態のままで一旦、カードを排出するようにしてもよい。その後、同じIDのカードが挿入されたときには、元の状態から遊技を再開させる。
(8) 大当り中は、遊技玉数が満タンと判断するための判断基準値を上げてもよい。つまり、大当り中とそうでないときとで、満タン判断の判断基準値を異ならせてもよい。これによって、大当り中に遊技玉数が急激に多くなり、すぐに満タン判断がなされて発射停止してしまうことを防止できる。
(9) 大当りが発生したときの遊技玉数を記憶しておき、大当り中は、満タンの判断基準値を超えた場合であっても、大当りが発生してから増加した遊技玉数が許容値(たとえば、1000玉)以内であれば、満タン判定しないものとしてもよい。
(10) 遊技玉を計数するための計数操作手段としては、2回以上の所定回数操作したときに、計数機能を発揮するようなものを採用してもよい。これによって、誤操作を防止できる。また、この場合、1回操作では、計数機能とは異なる他の機能を発揮させるようにしてもよい。たとえば、1回操作をしてから所定時間(たとえば、1秒以内)、操作が無い場合には、店員を呼び出すためのランプを点灯させるような機能を発揮させ、1操作から1秒以内に2回目の操作が検出されたときには、計数機能を発揮させることも考えられる。
(11) 「所定の記録媒体処理操作を検出したときに、前記遊技点を前記持点として、所定の処理が可能となるように処理する記録媒体処理手段」の「所定の処理」は、たとえば、CUから排出されたカードを他の遊技機に接続された別のCUに挿入して使用する場合のCUの処理(カードで特定可能に記録された持玉を引き落として遊技玉に変換する処理や持玉共有処理、あるいはワゴンサービス処理等)を意味する。あるいはまた、「所定の処理」とは、景品交換用の景品交換機でカードを受付けて当該カードで特定される持点を消費して景品交換を可能とする処理であってもよい。
また、上述した「持点として所定の処理が可能となるように処理するための記録媒体処理操作」とは、たとえば、カードの返却操作である。また、「所定の処理」とは、カードの返却操作を検出したときに、CUに挿入されているカードに持点を特定可能に記録し、当該カードを返却する処理である。ここで、「特定可能に記録」とは、カードに直接、持点を記録することの他、カードには持点を記録せずにカードのIDと持点とをCUに接続されたサーバに送信し、サーバ内でIDと持点とを対応付けて記憶するような方式を含む。
(12) 玉の発射中に計数操作をすると、そのときの遊技玉数が基準値以下の場合には、計数操作が無効とされるようにしてもよい。また、玉の発射中に計数操作が検出されたときの遊技玉数が基準値を超える場合であっても、1回の計数操作で計数される玉数が所定数に定められている場合において、計数操作が検出されたときの遊技玉数からその所定数を差し引いた値が前記基準値に満たない場合には、計数操作を無効とするようにしてもよい。
また、遊技中であるか否かを玉の発射動作が検出されているか否かで判断してもよく、遊技中球数(遊技領域27F内で浮遊している浮遊玉)が0になっているか(遊技中でない)否か(遊技中)で、判断してもよい。さらに、可変表示装置が変動中であるか否か、大当り中であるか否か、アタッカーが開いているか否か、などで遊技中であるか否かを判定することも考えられる。
さらに、遊技機としてS台を適用して遊技中の計数操作を無効とする場合の「遊技中」とは、たとえば、リール2LF、2CF、2RFが回転開始してから停止するまでの期間である。あるいは、スタート操作が検出されてからリール2LF、2CF、2RFが停止するまでの期間である。
(13) 図86を参照して、P台は、計数された計数玉(持玉)を一時記憶する計数玉数カウンタを備えているものの、計数玉の累積値を記憶するカウンタを備えていない。しかしながら、P台側に、計数玉の累積値を記憶する計数玉累積記憶カウンタを備えてもよい。また、CU側には、カード持玉(計数玉)を記憶する領域が備えられているが、この領域には、挿入されたカード自体に持玉が記録されていた場合には、そのカード持玉も含めて現在の遊技者の持玉数が記憶される。このため、この領域のみでは、今回の遊技で遊技者が計数した計数玉の数を特定できない。そこで、今回の遊技で遊技者が計数した計数玉の数を記憶する領域をCU側にさらに設けてもよい。CUは、この場合、遊技が開始してからP台から送られてくる計数玉数の情報に基づいて当該領域に持玉を加算し、持玉が遊技玉に変換されると、当該領域から持玉を減算する。
(14) 図89の計数操作を促す表示としては、文章にて「遊技玉が残っているので計数して下さい」という表示であってもよく、あるいは画面上に計数ボタン28Fを表示させて点滅するような表示であってもよい。また、カード返却準備状態ONを受けたP台2Fは、遊技玉数表示器29Fの遊技玉を点滅表示させるなどしてもよく、あるいは、遊技玉数表示器29Fを画像表示装置で構成した場合には、上記実施の形態として説明したメッセージを遊技玉数表示器29Fに表示して計数操作を促すようにしてもよい。
(15) 計数ボタンを押し続ける時間に応じて、1回の操作で持点変換する遊技点数が異なるようにするために、たとえば、長押し(たとえば、1秒以上連続操作)のときには遊技点のすべてが計数される一方、短押し(たとえば、1秒未満の連続操作)のときには、200玉だけが計数されるようにしてもよい。ただし、この場合には、遊技玉の残数が少ない場合、たとえば、200玉未満の場合には、計数ボタンの操作ですべての遊技玉が計数されるようにするのが望ましい。
(16) 遊技点の残数に応じて、計数ボタンの1回の短押下操作で計数される点数が異なるようにする場合、たとえば、次のようにすることが考えられる。たとえば、遊技点が200点未満のときには、計数ボタンの1回の短押下操作ですべての遊技点が計数されるようにする。遊技点が200以上1000未満のときには、1回の短押下操作で200点が計数されるようにする。遊技点が1000以上5000未満のときには、1回の短押下操作で1000点が計数されるようにする。遊技点が5000以上10000未満のときには、1回の短押下操作で2000点が計数されるようにする。遊技点が10000以上のときには、1回の短押下操作で2500点が計数されるようにする。なお、以上の数値は具体例であって、適宜、設定できる。
(17) 遊技玉(遊技点)を計数して持点変換する際には、計数表示のみならず、計数音をスピーカ270Fから出力する制御をしてもよい。また、遊技点の計数の際には、玉が1つずつ、玉貯留皿から計数器へと落下していくような画像表示を行なうことが考えられる。
(18) 計数操作に基づいて遊技点を持点に変換する変換表示(遊技玉を計数していき、持玉が増えていく様を示す表示)を行なうタイミングと、データ上で遊技点を減算し、持点を加算する演算を行なうタイミングとは様々なものとすることができる。変換表示が終わってから、前記演算を実行してもよい。また、そのために、変換表示が終わった後に遊技機からCUに対して計数データが送信されるようにしてもよい。なお、このような変形例は、持点を遊技点に変換する場合についても同様に適用可能である。
(19) 本実施の形態では、CUと遊技機との間の通信において、CUを一次局、遊技機を二次局とするコマンド−レスポンス方式が採用されているが、一次局と二次局との関係を逆にしてもよい。あるいは、このような主従の関係がある通信方式を採用するのではなく、通信すべき要求が生じたときに双方が相手にデータを送信するような方式を採用してもよい。
(20) 本実施の形態では、遊技機側およびCU側の双方で遊技玉(遊技点)を記憶するようにしているが、遊技玉(遊技点)は遊技機側のみで記憶し、CU側では記憶しないようにしてもよい。一方、カード持玉(持点)は、CU側でのみ記憶しているが、遊技機側でも記憶するようにしてもよい。特に、遊技玉(遊技点)は遊技機側のみで記憶し、一方、カード持玉(持点)は、CU側でのみ記憶するようにして、データの記憶管理の役割分担を明確にしてもよい。
(21) 表示器54Fで行なう計数表示や各種の報知は、同様に表示器312Fで行なうようにしてもよい。
(22) CU3Fにおいて、P台側から送信されてきた加算玉数カウンタの値(加算玉数)および減算玉数カウンタの値(減算玉数)に基づいて、記憶している遊技玉数を更新し、P台側から送信されてきた計数玉数カウンタの値に基づいて記憶している遊技玉数を減算したときに、遊技玉数の値がマイナスになる場合には、エラー(異常)判定し、エラー処理を行なうようにしてもよい。エラー処理の具体例として、異常報知ランプ等によりエラー報知が行なわれたり、あるいは、ホール用管理コンピュータやホールサーバ801Fにエラーが発生した旨のエラー通知信号が送信されたりする(この場合、ホール用管理コンピュータやホールサーバ801Fによるエラー報知が行なわれるようにしてもよい)。
(23) 貸出操作あるいは持点(持玉)から遊技点(遊技玉)への変換操作(貸出操作)が検出された場合、遊技点は、1点ずつカウントアップするようにしてもよいが、遊技者の待ち時間を短くするために、複数点(たとえば、100円相当の25点)ずつカウントアップするように表示してもよい。また、逆に、遊技点の計数操作が実行されたときにも、複数点ずつ持点がカウントアップするように表示してもよい。さらに、遊技点あるいは持点をカウントアップ表示するときの単位数を複数種類の中から設定できるようにしてもよい。その設定の際には、P台あるいはS台の表示器のタッチパネルを利用することが考えられる。
(24) 打球操作ハンドルにタッチセンサを設けて、遊技者が打球操作ハンドルを握っていることがタッチセンサによって検出されている間は、計数操作を無効にしてもよい。計数操作を無効とは、計数操作を検出するが、その検出出力に基づいた計数動作を実行しないこと、あるいは、計数操作の検出自体をしないことの双方を意味する。または、遊技者が打球操作ハンドルに触れているだけでは計数操作を無効にせず、打球操作ハンドルを玉発射の駆動パルスが出力される程度にまで回している場合に、計数操作を無効にしてもよい。
これらの場合には、計数操作が検出されると、「ハンドルを放してください」というメッセージを遊技機あるいはCUの表示器に表示するようにしてもよい。あるいは、計数操作ボタンをタッチパネルの画面上のアイコンで表示するようにしたときには、計数操作ボタンをグレーアウトして、操作不能であることを遊技者に通知するようにしてもよい。
(25) 玉貸ボタン、カード返却ボタン、再プレイボタン、および計数ボタンのうちの少なくとも1つ、あるいはすべては、遊技機側に設けてもよく、あるいはCU側に設けてもよい。また、そのボタンは、タッチパネル式の表示器として説明した遊技機側あるいはCU側の表示器に表示することが考えられる。
(26) 本実施の形態に係る遊技用システムは、持点を使用した所定の持点使用処理を実行するための持点使用操作手段を含む。ここで、所定の持点使用処理とは、ワゴンサービスを実行するための処理や、あるいは、持点(持玉)を分割して共有する処理(持点を他人に分割譲渡する処理)を含む概念である。また、持点使用操作手段は、たとえば、タッチパネルである。あるいは、持点使用操作手段は、CU又は遊技機に対して持点使用処理の実行を指令するために遊技店の係員に与えられるリモコンであってもよい。
(27) 図80〜図103で示したシーケンス制御は、CU3F、P台2F、S台2SF等の遊技機器単体内の制御装置間の送受信シーケンスに限定されるものではなく、たとえば、CU3F、P台2F、ジェットカウンタ、POS端末等の複数の遊技機器間の送受信シーケンスに適用してもよい。また、図106、図107に示した要求通番の制御は、CU3Fの内部のCU制御部323Fとセキュリティチップ(SC)325bとの間、セキュリティチップ(SC)325bと通信制御IC325aFとの間に適用してもよい。
たとえば、遊技玉の加算要求に関する処理を、CU制御部323Fとセキュリティチップ(SC)325bとの間に適用した場合には、遊技玉の加算要求電文をCU制御部323Fが送信し、これに対する承諾または拒否電文をSC325bFがP台2F側の応答に基づいて通信制御IC325aF経由で返信する。
遊技玉の加算要求に関する処理を、セキュリティチップ(SC)325bと通信制御IC325aFとの間に適用した場合には、遊技玉の加算要求電文をCU制御部323F経由でセキュリティチップ(SC)325bが送信し、これに対する承諾または拒否電文を通信制御IC325aFがP台2F側の応答に基づいて返信する。
計数要求に関する処理を、CU制御部323Fとセキュリティチップ(SC)325bとの間に適用した場合には、計数要求電文をSC325bFがP台2F側の要求に基づいて通信制御IC325aF経由でCU制御部323Fに送信し、これに対する承諾または拒否電文をCU制御部323Fが返信する。
計数要求に関する処理を、セキュリティチップ(SC)325bと通信制御IC325aFとの間に適用した場合には、計数要求電文を通信制御IC325aFがP台2F側の要求に基づいて送信し、これに対する承諾または拒否電文をセキュリティチップ(SC)325bがCU制御部323Fの指示に基づいて返信する。
(28) 前述の実施の形態では、カードIDにより遊技者の同一性の判別を行なっているが、それに代えてまたはそれに加えて、遊技者の指紋や網膜等のバイオマスにより遊技者の同一性の判別を行なってもよい。
(29) 前述の実施の形態では、カードIDと挿入時刻とが一致することを条件に遊技機から送信された得点をCUが現時点での得点として記憶しているが、遊技機とCU3Fとの通信が途絶えてから所定時間(たとえば20分)が経過するまでに通信が開始されたことを更なる条件として、遊技機から送信された得点をCUが現時点での得点として記憶するように制御してもよい。具体的には、遊技機とCU3Fとの通信が途絶えてから所定時間(たとえば20分)を計時するタイマをCU制御部323Fに設け、遊技機とCU3Fとの通信の開始時(復旧時)に該タイマが未だ計時中(タイムアップしていない状態)であるか否か判定し、計時中との判定結果であることを更なる条件として、遊技機から送信された得点をCUが現時点での得点として記憶するように制御する。
また、挿入時刻の代わりに、CU3FとP台2Fとの間で用いられた最終通番等の一致を条件に遊技機から送信された得点をCUが現時点での得点として記憶するようにしてもよい。
(30) 前述の実施の形態では、入賞の発生により直接遊技玉数や遊技点を加算するものを示したが、その代わりに、入賞の発生により持点を加算し、その加算された持点を引落して遊技玉数や遊技点を加算するように制御してもよい。
(31) 前述の実施の形態では、遊技者所有の有価価値(プリペイド残額、持玉、貯玉)の範囲内で価値を引落して該引落し相当分の遊技点を加算するにおいて、引落した価値と同じ価値の遊技点を加算するものを示したが、その代わりに、たとえば、実際に引落した価値に対し消費税相当額分少ない遊技点を加算するように制御してもよい。
(32) 本実施の形態では、遊技場から離れた鍵管理センタに鍵管理サーバを設置した。しかしながら、鍵管理サーバは遊技場内に設置してもよい。これにより、遊技場外に鍵管理サーバを設置する場合と比較すると、CUと鍵管理サーバとの通信を高速化し易く、また、通信障害の発生率を低減できる。
(33) CU制御部323Fは、ホールサーバ801Fを介して鍵管理サーバ800Fから基板セキュリティ情報(基板認証鍵や更新情報を含む)を受信する。しかしながら、これに代えて、鍵管理サーバ800FとCU制御部323Fとの間にホールサーバ801Fを介することなく、鍵管理サーバ800FからCU制御部323Fへ基板セキュリティ情報が送信される構成とてもよい。たとえば、鍵管理サーバ800FとCUとを直接、回線接続することや、鍵管理サーバ800Fと各CUとの間にホールサーバ801Fと異なる中継用の通信装置を設けることが考えられる。
(34) 前述の実施の形態では、遊技の中断操作(簡易離席操作または食事休憩操作)に基づいて自動的に計数処理された計数玉数を一旦、持玉に加算してカードに書込み排出することで、中断処理を行ない、その後、遊技を中断した遊技者が戻ってきて、そのカードを再度元のCU3Fに挿入し、持玉を遊技玉に変換する操作により、125玉ずつ遊技玉に変換されて遊技が可能になるものを示した。しかし、それに代えて、中断操作時に自動計数された計数玉を遊技玉や持玉とは別の預かり玉(C−IDと挿入時刻も記憶)としてCU3Fが記憶し、持玉加算せず、持玉を記録させることなくカードを排出することで中断処理を行ない。その排出カードが再挿入されると、預かり玉がすべて一括で自動的にP台の遊技玉に変換されて遊技可能となるように制御してもよい。あるいは、この場合の預かり玉は、中断操作に基づいてP台からCUへと送信され、CU側またはホールサーバ側で記憶しておき、カードが再度挿入されたときにCUまたはホールサーバから自動的にP台側へ預かり玉の情報が送信されて遊技玉としてP台側に記憶されるものとしてもよい。また、この場合に預かり玉の情報を送信する際には、遊技玉の加算指令としてCUからP台に送信してやればよい。
さらに、上記実施の形態では、中断操作に基づいて自動的に計数処理された計数玉数を一旦、持玉に加算してカードに書込んで排出したとき、そのカードに中断中フラグを記録しておくことによって、そのカードでは景品交換できないようにした。このように景品交換を禁止する手法としては、カードの中断中フラグを利用する以外の次のような手法を採用することも考えられる。
まず、中断操作が行なわれたときに、CUからホールサーバにその情報(カードIDを含む)を送信し、ホールサーバ側で中断中の遊技者のカードを中断カードとして記憶する。景品交換時にはPOSなどからホールサーバに問合せをし、景品交換に用いられているカードが中断カードであるか否かをホールサーバが判定する。あるいは、全中断カード情報を予めホールサーバからPOS側に送信しておいてもよい。その上で、景品交換に用いられているカードが中断カードであれば、当該カードを用いた景品交換を禁止する。
(35) 上記実施の形態において、遊技機は、「全遊技点に対する変換処理が終了したことを条件に(遊技点=0)、前記遊技点を前記持点として遊技用装置(CU)が所定の処理(景品交換機でカードを受付けて当該カードで特定される持点を消費して景品交換を可能とする処理、CUから排出されたカードを他の遊技機に接続された別のCUに挿入して使用する場合のCUの処理)をするための記録媒体処理操作(カード返却操作(カード返却ボタン322Fの操作))を有効化する有効化手段」を含む。
(36) 本実施の形態では、遊技情報の一例として、持玉、遊技玉、カードの残額、貯玉、その他、玉数情報や遊技台情報を挙げて説明した。しかしながら、遊技情報は、遊技機での遊技に関連したその他の情報をも含む。たとえば、遊技者が選択あるいはカスタマイズした遊技者の好みのキャラクタを可変表示装置278Fや表示器54Fなどの可変表示手段(可変表示装置)に表示可能にした場合には、そのキャラクタを特定可能な情報も遊技情報に含まれる。このような遊技者の嗜好に合うキャラクタを含む画面デザインの情報は、たとえば、遊技者のカードIDと対応付けて遊技の終了時にサーバに送信して記憶させ、新たに遊技を開始する際にはサーバからCUあるいはP台へダウンロードするようにしてもよい。
(37) 遊技玉数表示器29Fでは、玉の発射または計数動作に連動して玉数が1つずつ減っていく表示がなされる。また、遊技玉数表示器29Fでは、玉貸操作等に応じて玉数が1つずつあるいは所定単位数ずつ増加する表示がなされる。遊技玉数表示器29Fを液晶表示装置などの画像表示器で構成した場合には、単に遊技玉数をデジタル表示するのではなく、遊技玉数の変化が弾球によるものであるのか、計数によるものであるのか、入賞の発生によるものであるのか、貯玉の引き落としによるものであるのか、貸出操作によるものであるか、など、その種類に応じた画像を遊技玉数の表示更新と併せて表示するようにしてもよい。
また、計数操作が行われた場合、遊技玉数表示器29Fでは、計数動作に連動した計数表示が行われるが、遊技玉数表示器29Fを液晶表示装置などの画像表示器で構成した場合には、表示器54Fと同様に、遊技玉が計数されてその数が減少する一方で、持玉が増加する画像表示を行なうようにしてもよい。この場合、先の表示器54Fの表示の変形例として説明したように、遊技玉数のデータが持玉数のデータに経時的に変換されていく表示(たとえば、棒グラフの表示)や、現在の遊技玉数のデータと持玉数のデータをそのままデジタル表示し、遊技玉数を減少させつつ持玉数を増加させたり、遊技玉数の一部を持玉数に移動させる表示を繰り返したりすることが考えられる。
(38) 図89に示したように、上記の実施の形態では、遊技玉が残っている状態で検出されたカード返却操作は、所定の待機期間で計数操作が検出されることによって、計数処理完了後に有効化されてカード返却処理に移行する。
一方、待機期間が経過しても計数操作が検出されない場合の処理としては、たとえば、先のカード返却操作を無効とすることが考えられる。この場合、CU3FあるいはP台2F側の表示器には待機期間が経過しても計数操作が検出されないため、カード返却操作が無効化された旨を表示してもよい。
あるいは、遊技玉が残っている状態で検出されたカード返却操作は、所定の待機期間で計数操作が検出されるか否かに関わらず、無効化してもよい。この場合には、カード返却操作が検出された後の計数操作に応じて全遊技玉を計数し終えた後、再度、カード返却操作を実行することによってカード返却処理を実行するものとしてもよい。あるいは、全遊技玉の計数を終えたとき、または、その前後で、カード返却操作を促す表示をCU3FあるいはP台2F側の表示器で行なうようにしてもよい。
また、本実施の形態では、カード返却操作が検出されたときに遊技玉が1点でも残っていると、図89に示した処理が実行される。しかしながら、カード返却操作が検出されたときに残っている遊技玉の数が2以上の予め定めた数であるときに、図89に示した処理が実行されるようにしてもよい。
また、カード返却操作が検出された後の計数操作では遊技玉の計数表示速度を通常時よりも早くしてもよい。たとえば、通常の計数操作では遊技玉が1つずつ計数される表示をする一方、カード返却操作が検出された後の計数操作では、遊技玉が複数ずつまとめて計数される表示、あるいは、全遊技玉が一括して計数される表示をするようにすることが考えられる。
さらに、カード返却操作が検出された後の計数操作では全遊技玉が計数対象とされるのではなく、通常の計数操作のときよりも多い数の所定数の遊技玉が計数対象とされるものとしてもよい。たとえば、通常時には1回の計数操作で最大100点の遊技玉が計数対象とされるが、カード返却操作が検出された後の計数操作では、それよりも多い200点の遊技玉が計数対象とされるようにしてもよい。この場合でも、事前にカード返却操作があった場合にはカード返却操作がなかった場合に比べると、全遊技玉を計数するための計数操作回数が減り、早期に全遊技玉を計数完了させることができる。
また、遊技玉が残っている状態でカード返却操作が検出された場合には、計数操作の検出がなくても、全遊技玉の計数を開始させ、その後にカード返却処理に移行するようにしてもよい。この場合、全遊技玉の計数を開始させるときに、全遊技玉の計数を開始させる旨をP台2FあるいはCU3Fで表示してもよい。あるいは、全遊技玉の計数を開始させてもよいか否かを確認するメッセージを表示し、所定操作(たとえば、P台2FあるいはCU3Fのタッチパネルでの操作、再度のカード返却操作など)が検出されたことを条件として、全遊技玉の計数を開始させるようにしてもよい。
また、遊技中(玉の発射中)の場合に検出されたカード返却操作を無効にしてもよいが、カード返却操作を無効にするのではなく、P台側の方で遊技中の計数操作に基づいた計数の処理を無効にしてもよい。
さらに、上記実施の形態では、カード返却操作が検出されたときに遊技玉数が0であるか否かをCU3Fが判定している。しかしながら、このような判定をP台2Fが行なうようにしてもよい。この場合、たとえば、カード返却操作が検出されたときに、カード返却操作有を示すデータをCU3FからP台2Fへ送信し、それを受けたP台2Fが自ら記憶している遊技玉数が0であるか否かを判定する。0であれば、遊技玉数が0であることまたはカード返却を許可するデータをCU3Fへ送信する一方、0でなければ、遊技玉数が0でないことまたはカード返却の待機あるいはカード返却の禁止を示すデータをCU3Fへ送信する。
また、上記実施の形態では、計数ボタンの操作が検出されたときに、その操作の検出前にカード返却操作が検出されているか否かをP台2Fが判定する。しかしながら、このような判定手段をCU3Fが備えるようにしてもよい。この場合、たとえば、P台2Fは、計数ボタンの操作が検出されたときに、その旨を示すデータをCU3Fへ送信する。それを受けたCU3Fは、そのデータを受信する前の所定期間内にカード返却操作があったか否かを判定するようにすることが考えられる。
また、上記の実施の形態では、計数操作をP台2Fが検出する一方、カード返却操作をCU3Fが検出するが、計数操作をCU3Fが検出する一方、カード返却操作をP台2Fが検出する構成としてもよく、両操作共にP台2FあるいはCU3Fが検出する構成としてもよい。また、計数ボタンおよびカードカード返却ボタンの取り付け位置は、双方共にCU3FとしてもP台2Fとしてもよく、一方がCU3FまたはP台2Fとしてもよい。
(39) 持玉または遊技玉の数の変化の有無をCUまたはP台でチェックし、所定期間、持玉または遊技玉の数が変化しない場合には、CUまたはP台でその旨を報知するようにしてもよい。あるいは、報知のための信号を外部装置(ホールコンピュータ、P台上の呼び出しランプ)に出力してもよい。これにより、たとえば、残り僅かな玉が放置されたままで遊技放棄された台を店員が把握しやすくする。
(40) あるいは、カードがCUに挿入されていないにも関わらず、遊技者の遊技玉が変化した場合には、CUまたはP台でその旨を報知するようにしてもよい。あるいは、報知のための信号を外部装置(ホールコンピュータ、P台上の呼び出しランプ)に出力してもよい。これにより、たとえば、遊技を終えてカードを排出した後に、遊技盤に引っ掛かっていた玉が入賞して遊技玉が払い出されたまま放置されているような台を店員が把握しやすくする。
(41) 本実施の形態において、CU3FはP台2Fからの前回遊技台情報と最新遊技台情報とを自ら記憶しているデータと比較判定して、P台2F側のデータに不正水増しのないことを確認してデータを補正する。仮に、CU3F側でエラー判定されると、このような状況は、単にCU3Fの交換が要因(交換後のCU3Fには比較対象の正規のデータが記憶されていない)であって、不正行為に基づくものではない可能性もあるため、ホールの店員が確認の上で、リモコン等の携帯型端末装置でエラーを解除する。ただし、このように、CU3Fが新たなものに交換されていたときには、当該CU3Fは上記のエラー判定を一切しないようにしてもよい。また、あるいは、CU3Fには、交換されたものであるか否かに関わらず、上記のエラー判定機能を設けないようにしてもよい。
(42) 本実施の形態において、遊技者所有の有価価値を特定可能な記録媒体であるカードを、遊技開始時にカード挿入/排出口309Fに挿入し、遊技終了後にカード挿入/排出口309Fから抜き取る構成について説明した。しかし、本発明はこれに限られず、カードを、遊技開始時にカード読み取り部に載置し、遊技終了後にカード読み取り部から外す構成であってもよい。つまり、遊技者所有の有価価値を特定可能な記録媒体を受付ける記録媒体受付手段に対して、遊技開始時に記録媒体受付手段に取り付け、遊技終了後に記録媒体受付手段から取り外す構成であればよい。
(43) 本実施の形態において、CU3Fは、P台2Fに対してカード抜き取り待ち中の情報を通知し、当該情報の通知を受けたP台2Fが「カード抜き取って下さい」と可変表示装置278Fに表示するなど、カードの抜き取りの報知を行なう構成について説明した。しかし、本発明はこれに限られず、CU3Fは、P台2Fに対してカード抜き取り待ち中の情報を通知しつつ、表示器54Fおよび/または表示器312Fに「カード抜き取って下さい」と表示するように制御してCU側でカードの抜き取りの報知を行なう構成であってもよい。
(44) 本実施の形態において、P台2Fは、カード抜き取り待ち中=ONを含む状態情報要求のコマンドを受取ってから、カード抜き取り待ち中=OFFを含む状態情報要求のコマンドを受取るまでカードの抜き取りの報知を継続する構成について説明した。しかし、本発明はこれに限られず、P台2Fは、カード抜き取り待ち中=ONを含む状態情報要求のコマンドを受取ってから、一定期間カードの抜き取りの報知を行なっても、カード抜き取り待ち中=ONを含む状態情報要求のコマンドを受取ってから、カード抜き取り待ち中=OFFを含む状態情報要求のコマンドを受取るまでの間、カードの抜き取りの報知を間欠的に行なってもよい。
(45) 本実施の形態では、計数履歴シーケンスにおいてP台2Fは、カードを受付けたときにCU3Fのセキュリティ基板325Fから通知された「店舗コード」と、P台2Fで保持している「店舗コード」との一致判定を行ない、一致している場合には計数履歴のリカバリ処理を行ない、不一致の場合には計数履歴のリカバリ処理を行なわない構成について説明した。しかし、本発明はこれに限られず、計数履歴シーケンスにおいてP台2Fは、カードを受付けたときにCU3Fのセキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」と、P台2Fで保持している「店舗コード」および「SC基板ID」との一致判定を行なうように構成してもよい。さらに、計数履歴シーケンスで「店舗コード」の一致判定を行なわずに、P台2Fは、リカバリ要求を受信した時にカードを受付けたときにCU3Fのセキュリティ基板325Fから通知された「店舗コード」および「SC基板ID」のうち少なくとも一方と、P台2Fで保持している「店舗コード」および「SC基板ID」のうち少なくとも一方との一致判定を行ない、一致している場合にはリカバリ処理を行ない、不一致の場合、遊技の継続を禁止する構成としてもよい。
(46) また、パチンコ玉にICタグを付けるようにしてもよい。これにより、発射時、および、いずれかの入賞領域(入賞口またはゲート)の通過時に、いずれのパチンコ玉であるかを特定することが可能となる。このため、集計処理において、ICタグによって特定された同じパチンコ玉の発射強度Tと通過領域との対応関係を特定することができる。その結果、より正確に、発射強度に応じてパチンコ玉がどの領域を通過する傾向にあるのかを把握することができる。さらに、CU3Fから送信される玉単価(図80参照)とICタグを付けたパチンコ玉とを関連付けすることで、1玉毎に玉単価を変更することが可能となり、残り玉数や予定時間に応じて臨機応変に玉単価を変更することができ遊技者による遊技の自由度を広げることができる。
(47) 遊技者によって打球操作ハンドル25Fが固定されていると、上述の発射強度の補正処理を行なうことができない。そこで、打球操作ハンドル25Fが固定されていることを検出して報知するようにしてもよい。また、発射強度が一定値に安定している場合は、打球操作ハンドル25Fが固定されていると判定するようにしてもよい。
(48) たとえば、遊技者が打球操作ハンドル25Fに触れているか否かは、タッチセンサで検知可能である。
そのため、たとえば、遊技者が打球操作ハンドル25Fに触れていないことが検知された時に、上述の発射強度の補正処理を行なうようにしてもよい。
また、発射異常判定処理において、遊技者が打球操作ハンドル25Fに触れていないことが検知され、かつ打球操作ハンドル25Fが固定されていることが検出された場合に、発射異常であると判定するようにしてもよい。
(49) 本実施の形態ではホールコン900がCU3F経由でP台2Fの情報を取得する構成であったが、ホールコン900がCU3Fを経由せずにP台2Fの情報をP台2Fから直接取得する構成であってもよい。
(50) 本実施の形態では、CU3Fの状態がカード挿入中状態中にカード挿入通知コマンドを受信した場合、P台2FはカードIDやカード挿入時刻などの情報をバックアップしないで応答のみ送信する構成について説明した。しかし、本発明はこれに限定されず、CU3Fの状態がカード挿入中状態中にカード挿入通知コマンドを受信した場合、警告を表示器54F等に表示して報知を行なったり、上位サーバに当該旨の報知を行なったりしてもよい。
(51) 本実施の形態では、「閉店」設定されるとカードが挿入されておらずP台2Fに遊技玉が残っている遊技機に対して、カードID=0、カード挿入時刻=0の仮想カードが挿入されたとみなして、残った遊技玉を計数し当該カードに記憶して返却する計数処理が行なわれる構成を説明した。しかし、本発明はこれに限定されず、挿入されたとみなされる仮想カードのカードIDを、閉店直前に挿入されていたカードのカードIDとして計数処理を行ない、残った遊技玉を閉店直前に挿入されていたカードと自動的に関連付ける構成であってもよい。
(52) 本実施の形態では、CU3Fでリカバリ要求が不要であると判断されたにも拘らずリカバリ要求2のコマンドがP台2Fに送信された場合、P台2Fで再度リカバリ処理の判定を行ない不要の場合に処理NGをCU3Fに通知する構成を説明した。しかし、本発明はこれに限定されず、P台2Fで再度リカバリ処理の判定を行ない不要の場合に、警告を表示器54F等に表示して報知を行なったり、上位サーバに当該旨の報知を行なったりしてもよい。
(53) 本実施の形態では、鍵管理サーバ800Fがヘルスチェック要求のコマンドを送信してもCU制御部323Fに到達しない状態が、たとえば10日間継続した場合、ヘルスチェック要求時限オーバーと判断され、CU3FまたはP台2Fの時限運用機能が無効にされる構成を説明した。しかし、本発明はこれに限定されず、CU3FまたはP台2Fの時限運用機能が無効にされるまでの日数を表示器54Fに表示させたり、複数の制限レベルを有する時限運用機能を段階的に無効するようにしたりしてもよい。
(54) 本実施の形態では、P台2Fに対する不正に基づくアラーム設定とP台回線断に基づくアラーム設定との関係において、アラーム設定の設定および解除の制御について説明した。しかし、本発明はこれに限定されず、P台2Fに対する不正に基づくアラーム設定とP台2Fに対する別の不正に基づくアラーム設定との関係において、アラーム設定の設定および解除の制御に適用しても、P台2Fに対する複数の不正に基づくアラーム設定とP台回線断に基づくアラーム設定との三つ以上の関係において、アラーム設定の設定および解除の制御に適用してもよい。
(55) 本実施の形態では、セキュリティ関連情報を払出制御回路171aF内のレジスタに格納する構成について説明した。しかし、本発明はこれに限定されず、通信制御回路171bF内のレジスタ(たとえば、データ受信レジスタ723bF)に格納する構成でもよい。これにより、セキュリティ関連情報は、通信制御回路171bF内で暗号化されたまま格納されることになり、よりセキュリティ性が向上する。
(56) 本実施の形態では、図132および図133で示したように、遊技盤開発治具3EFや開発用CU3DFに過去接続していたP台2FであることをP台自体で判断し、判断結果を示すフラグを商用のCU3Fに送信してSC325bFで検知する構成について説明した。しかし、本発明はこれに限定されず、遊技盤開発治具3EFや開発用CU3DFに過去接続していたP台2FであることをP台自体で判断し、P台自体で検知して報知する構成でも、遊技盤開発治具3EFや開発用CU3DFに過去接続していたP台2Fであることを識別IDに基づいてCU3FのSC325bFで判断して検知する構成でもよい。
(57) 前述の実施形態では、各種認証鍵を用いて認証を行なっていたが、この各種認証鍵の代わりに、たとえば認証用のID等を用いて認証を行なうようにしてもよい。
(58) 前述の表示器54F、510Fをタッチパネル付きの表示器で構成してもよい。また、P台とCUとの間で送受信される情報は、前述の実施形態で説明されたものに限定されるのではなく、また、どのような情報をP台からCUへ出力するかを遊技機の表示器54F、510Fのタッチパネルでタッチ操作して入力設定できるようにしてもよい。
また、S台2SFにおいても前述のP台2Fと同様にS台2SFから出力された情報を変換してホールコンへ送信するが、変換対象の情報としては、たとえば、ビッグボーナス入賞やレギュラーボーナス入賞や各種小役入賞等の入賞情報、リプレイタイム中を示す情報、図149の加算数や減算数、ゲームスタート回数等である。また、変換対象の情報としては、入賞に伴ってコインを払出すようにした場合のその払出枚数でもよい。
(59) 払出制御部171Fが、一周フラグが立つ値(=63)を受信したとき異常制御処理として、以下のa〜cに列挙するもののうちから1つまたは2つ以上を採用して実行するように制御してもよい。
a 払出制御部171Fまたはその払出制御部171Fから異常情報を受けた主制御部161Fにより、P台2Fの表示器(たとえば7セグ表示器50Fや識別情報(図柄)を可変表示する可変表示装置)により表示する。
b 払出制御部171Fから異常情報を受信したCU3Fにおいてエラー番号等の異常報知を行なう。
c CU3Fから異常情報を受信したホール用管理コンピュータ等の上位装置においてエラー番号等の異常報知を行なう。
(60) 本実施形態では、払出側テーブルに払出制御用セキュリティチップIDに関連付けて記憶する前枠5Fの履歴情報として、前枠5Fを特定する情報、保管情報、再販情報および廃棄情報などが含まれる例を示した。しかし、これに限らず、たとえば、前枠5Fの履歴情報として、メンテナンス情報や修理情報などを含めてもよい。同様に、本実施形態では、主制御側テーブルに主制御用セキュリティチップIDに関連付けて記憶する遊技盤26Fの履歴情報として、遊技盤26Fを特定する情報、保管情報、再販情報および廃棄情報などが含まれる例を示した。しかし、これに限らず、たとえば、遊技盤26Fの履歴情報として、メンテナンス情報や修理情報などを含めてもよい。
(61) 本実施形態では、製造メーカや倉庫業者などが出荷・設置や保管などの作業が完了した後に、機歴管理センタ800AFに接続された端末から必要な情報(図145に示す、たとえば、出荷日、設置日時、撤去日、販社名、や廃棄日などの情報)を入力することで払出側テーブルおよび主制御側テーブルを更新する例を示した。しかし、これに限らず、たとえば、製造メーカや倉庫業者などが申請書類に必要な情報を記入して機歴管理センタ800AFに送付することで、機歴管理センタ800AF内の入力手段(たとえば、内部端末など)から必要な情報を入力することで払出側テーブルおよび主制御側テーブルを更新してもよい。なお、機歴管理センタ800AFに接続された端末とは、機歴管理センタ800AFに対して直接接続されている端末(たとえば、機歴管理センタ800AFにある内部端末)でも、通信回線を介して接続されている端末(たとえば、インターネットを介して接続された倉庫業者や中古業者などの端末)でもよい。
(62) 本実施形態では、1つの大容量記憶装置8005Fに払出側テーブルおよび主制御側テーブルを記憶する例を示した。しかし、これに限らず、たとえば、複数の大容量記憶装置に分けて払出側テーブルおよび主制御側テーブルを記憶しても、払出側テーブルを記憶する大容量記憶装置と、主制御側テーブルを記憶する大容量記憶装置とに分けてもよい。また、大容量記憶装置に記憶した払出側テーブルおよび主制御側テーブルは、それぞれセキュリティチップID単位で前枠5Fおよび遊技盤26Fの履歴情報を消去することができる。たとえ、ペアのセキュリティチップIDに関連付けられていても、セキュリティチップID単位で前枠5Fおよび遊技盤26Fの履歴情報を別々に消去することができる。これにより、使用される期間が異なる前枠5Fおよび遊技盤26F(前枠5Fに比べて使用される期間が長い)であっても個別に削除することができるので、それぞれ適切に管理することができる。
(63) 本実施形態では、ホール以外の製造メーカや倉庫業者などが機歴管理センタ800AFに必要な情報を入力することで払出側テーブルおよび主制御側テーブルを更新する例を示した。しかし、これに限らず、たとえば、ホール自体が機歴管理センタ800AFに必要な情報を入力することで払出側テーブルおよび主制御側テーブルを更新してもよい。
(64) 本実施形態では、中古業者が前枠5Fおよび遊技盤26Fを別のホールに再販して、設置する場合に、前枠5Fおよび遊技盤26Fの履歴情報として再販情報を記憶する例を示した。しかし、これに限られず、たとえば、前枠5Fおよび遊技盤26Fを設置しているホールと同じグループの別のホール(たとえば、同じ法人コードのホール)に移動する場合に、前枠5Fおよび遊技盤26Fの単なる移動として移動情報を履歴情報に記憶する(管理状態(ステータス)を「設置」から「設置」)だけでもよい。つまり、同じ法人コードのホール間で、前枠5Fおよび遊技盤26Fの設置が移動しても異常と判定されない。さらに、同じ法人コードのホール間で、かつ同一県内に限り前枠5Fおよび遊技盤26Fの移動を認め、同じ法人コードのホール間でも他県に移動する場合は、再販と同じ処理を行なうようにしてもよい。
(65) 本実施形態では、機歴管理センタ800AFをたとえば以下のように設定する。機歴管理センタ800AFには、システムに登録されているユーザで、クリア認証で認証されたものをシステムにログインさせる。ログイン時における認証は、(a)指定されたユーザIDがシステムに存在すること。(b)指定されたユーザがアカウント有効期限内であること。(c)指定されたユーザがアカウントロックされていないこと。(d)入力されたパスワードが指定されたユーザIDのパスワードと合致すること。(e)現在がパスワードの有効期間内にない場合は、ログインさせるがユーザ自身のパスワード変更とログアウトのみ利用可能とし、パスワード変更が必要である旨をメッセージ表示する。なお、パスワードが変更された場合は、新パスワードを利用確認してもらうため、ログアウトする。
機歴管理センタ800AFは、認証に成功した場合、そのユーザのログイン失敗回数・連続ログインエラー日時をクリアする。一方、機歴管理センタ800AFは、認証に失敗した場合、そのユーザが実在する場合、ログイン失敗回数を記録する。なお、ログイン失敗回数が[ログイン試行上限回数]に達する都度(整数倍となる場合)アカウントをロックした日時を設定する。
機歴管理センタ800AFは、(a)ユーザを新規に登録した場合、(b)パスワードをクリアした場合、および(c)パスワードをユーザ自身が変更した場合、パスワードの有効期限を更新・設定する。更新・設定したパスワードは、その時点から[パスワード有効期間]経過までを有効とする。
機歴管理センタ800AFは、同一のセッションにおいて、認証を[ログイン試行上限回数]失敗した場合、ログイン画面ではなく、ログインNG画面に遷移し、ログインを試行させない。
機歴管理センタ800AFは、ログイン時に、当該ユーザのパスワードが[パスワード期限切れ警告期間]以内に期限切れになる場合、パスワード有効期限が切れる可能性があることを警告する。なお、当該警告は、たとえばログイン完了画面に表示するが、ログイン完了画面に表示すべきメッセージが無い場合は、ログイン完了画面を表示せず、HOMEメニューに遷移する。
機歴管理センタ800AFは、(ア)ユーザのログイン失敗回数が[ユーザ無効化ログイン失敗回数]を超えている場合(恒久的アカウントロック状態)、または(イ)アカウントロック日時から[ログイン試行拒否時間]が経過していない場合(一時アカウントロック状態)、アカウントロックする。
機歴管理センタ800AFは、(ア)ユーザを新規に登録した場合、または(イ)ユーザ情報画面から有効期間の更新を行った場合、アカウントの有効期限を更新・設定する。なお、アカウント有効開始日からアカウント有効終了日までの期間、アカウントを利用することが可能となる。
機歴管理センタ800AFは、一度に生成可能なアカウント生成最大数を初期導入時にたとえば20に設定してある。ここで、[ログイン試行上限回数]は、連続したログイン試行失敗で一定期間アカウントロックする回数で、初期導入時は、たとえば5回に設定してある。[ユーザ無効化ログイン失敗回数]は、連続したログイン試行失敗で恒久的にアカウントロックする回数で、初期導入時は、たとえば100回である。[ログイン試行拒否時間]は、連続したログイン試行失敗で一定期間アカウントロックする期間で、初期導入時は、たとえば30分である。[パスワード有効期間]は、パスワード変更した時に設定されるパスワードの有効期間で、初期導入時は、たとえば90日である。[パスワード期限切れ警告期間]は、アカウントのパスワード切れ間近をメッセージ通知する期間で、初期導入時は、たとえば14日である。
なお、機歴管理センタ800AFは、パスワードの最小文字数を初期導入時、たとえば8文字とし、パスワードの使いまわしを防ぐ世代数(現在を含む)を初期導入時、たとえば3世代とする。また、機歴管理センタ800AFは、ユーザ情報を登録するには、該当ユーザの事業者情報が登録されていることを条件とする。事業者情報には、機歴管理センタ800AFの業務に関わる各事業者の業種および住所等の属性情報が含まれる。
機歴管理センタ800AFは、遊技機の管理状態(ステータス)を、入力後、基本的に取消しすることができず、誤操作等により誤りが生じた場合は、「機歴全体備考欄」にコメントを記載することで他の人がわかるようにする。ただし、誤投入の可能性があるため、遊技機ステータス更新画面より投入するステータスに限り、取消を可能とする。取消を可能とする場合、限られた人のみ取消しの実行を可能とするよう、権限により制御する。また、機歴管理センタ800AFは、遊技機の管理状態(ステータス)を変更するために機歴を検索する場合、検索対象を最新の遊技機の管理状態(ステータス)のみを対象に検索を行なう。
機歴管理センタ800AFでは、データの種類と種類毎の保持期間をたとえば以下のように管理している。
(1)アカウント関連のデータ(たとえば、事業者情報、アカウント情報など):基本的に論理削除のみで制御し、物理削除しない。
(2)遊技機機種等のマスタ情報(たとえば、遊技機機種マスタなど):基本的に論理削除のみで制御し、物理削除しない。
(3)機歴管理の根拠となる情報(たとえば、遊技機チップ出荷情報、遊技機出荷情報など):基本的に管理が開始されるまでは変更を可能とするが、以後は編集を不能とし、永続的に管理する。
(4)機歴情報(たとえば、前枠5Fおよび遊技盤26Fの履歴情報):基本的にファクト情報の入力であるので、入力後の変更は認めず、永続的に管理する。
(5)カードユニット鍵管理センタから通知された情報(たとえば、不正検知など):システムで検知した情報であるので、変更は認めず、永続的に管理する。
(6)システムへの入力ジャーナル(たとえば、Web入力ログ、オンライン入力ログ、システム連携入力ファイルなど):入力の種類別・ノード別に14日間を保持する。
(7)システムからの出力ジャーナル(たとえば、Web出力ログ、オンライン出力ログ、システム送信ファイルなど):出力の種類別・ノード別に7日間を保持する。
(8)集信・配信の業務的通信の記録(たとえば、配布スケジュールなど):7日間を目途に情報を保持する。
(9)システムテンポラリファイル(たとえば、CSVアップロードファイルなど):アプリケーションの挙動後に削除する。ただし、異常終了時等を考慮してクリーニングバッチで不要と確認されたら削除する。
(10)長期間ステータス更新を行なっていない機種情報(たとえば、長期間ステータス更新を行っていない機種情報など):2世代保持する。
機歴管理センタ800AFでは、管理状態(ステータス)の異常について、更新前の管理状態(ステータス)と更新後の管理状態(ステータス)との関係が異常となった前枠5Fおよび遊技盤26Fの情報のみ抽出したり、当該情報のみファイル出力したりすることが可能である。そのため、ファイル出力した情報に基づいて、管理状態(ステータス)の更新漏れのユーザに対して連絡するなどの報知を行ない、正しい管理状態(ステータス)に更新されるように対応することができる。なお、管理状態(ステータス)の更新漏れのユーザに対しては、連絡を行なうのみでなく、ヒアリングして、正しい管理状態(ステータス)を確認した上で対応を行なってもよい。また、機歴管理センタ800AFは、現在、管理状態(ステータス)の異常が発生している前枠5Fおよび遊技盤26Fのすべてを対象に、連絡するなどの報知を行なう。また、異常となった前枠5Fおよび遊技盤26Fの最新情報(ファイル出力時点)は、機歴管理センタ800AFに接続した端末からダウンロードすることができる。
機歴管理センタ800AFでは、長期間管理状態(ステータス)の更新を行っていない前枠5Fおよび遊技盤26Fの履歴情報に対して、「廃棄」や「その他」以外の管理状態(ステータス)となっている前枠5Fおよび遊技盤26Fの情報のみ抽出したり、当該情報のみファイル出力したりすることが可能である。なお、長期間管理状態(ステータス)の更新が行なわれていない異常については、バッチ処理によりその処理時点の情報を抽出し、機歴管理センタ800AFに接続した端末からダウンロードする。また、ダウンロードする1つのファイルは、最大件数の閾値(初期構築時:10万レコード)が設定してあり、当該閾値を超えた場合は別ファイルに出力を行なう。さらに、ファイルをダウンロードする際、同日に処理を行なった結果をまとめて圧縮ファイルとして出力を行なう。
(66) 本実施形態では、機歴管理センタ800AFに撤去情報を入力する構成を説明したが、本発明はこれに限られず、中古移動情報、廃棄情報や下取り情報などが機歴管理センタ800AFに入力されると、機歴管理センタ800AF内で自動的に撤去情報が登録される構成でもよい。当該構成とすることで、ホールから撤去されていると推定して遊技機の履歴を管理することができ、ホールから履歴管理システムに撤去情報を入力する負担を軽減することができる。
(67) 本実施形態では、遊技機メーカが遊技機をホールに出荷した後に、通信回線を介して機歴管理センタ800AFに出荷情報を登録する構成を示したが、本発明はこれに限られず、遊技機メーカが遊技機をホールに出荷する情報が入力された時点で、自動的に機歴管理センタ800AFに出荷情報を登録する構成でもよい。当該構成とすることで、出荷状態の履歴が登録されずに忘れられてしまうのを防止することができる。
(68) 本実施形態では、遊技機メーカが出荷した封入循環式パチンコ機(P台2F)またはP台2Fを構成する前枠5Fおよび遊技盤26Fを含む遊技機をホールに設置した場合、機歴管理センタ800AFが、P台2Fから通知された遊技機設置情報(稼働情報)を、それぞれに設けた半導体チップのセキュリティチップIDに関連付けて記憶するとともに、記憶した情報とP台2Fから通知された遊技機設置情報とを照合している。そして、機歴管理センタ800AFは、照合した結果、異常であれば、たとえば異常報知ランプや表示器312Fによりエラー報知が行なわれたり、あるいは、ホール用管理コンピュータやホールサーバ801Fにエラーが発生した旨のエラー通知信号が送信されたりなど、当該異常を報知する。しかし、機歴管理センタ800AFは、照合した結果、異常を報知する構成だけに限定されるものではなく、異常と判断したP台2FまたはP台2Fを構成する前枠5Fおよび遊技盤26Fでの遊技を禁止する構成でもよい。なお、機歴管理センタ800AFは、異常と判断した場合でも、一定期間、当該P台2Fでの遊技を暫定的に許可して、ホールの営業行為を妨げないように構成してもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。