以下、本発明の実施形態について、図1〜図20を参照して説明する。
なお、以下の実施の形態の説明において記す前後左右とは、遊技者から見た、つまり遊技盤(遊技機)に向かって見た方向を指すものとする。
(第1実施形態)
以下、本発明の第1実施形態について、図1〜図15を参照して説明する。
図1は、本発明の第1実施形態の遊技機1の説明図である。
遊技機1の前面枠(遊技枠)3は本体枠(外枠)2にヒンジ4を介して、遊技機1の前面に開閉回動可能に組み付けられる。前面枠3の表側には、遊技盤10(図2参照)が収装される。また、前面枠3には、遊技盤10の前面を覆うカバーガラス(透明部材)を備えたガラス枠18が取り付けられている。
ガラス枠18のカバーガラスの周囲には、装飾光が発光される装飾部材9が備えられている。この装飾部材9の内部にはランプやLED等からなる装飾装置が備えられている。この装飾装置を所定の発光態様によって発光することによって、装飾部材9が所定の発光態様によって発光する。
ガラス枠18の左右には、音響(例えば、効果音)を発するスピーカ30が備えられている。また、ガラス枠18の上方には照明ユニット11が備えられている。照明ユニット11の内部には、装飾装置が備えられている。
照明ユニット11の右側には、遊技機1において異常が発生したことを報知するための異常報知LED29が備えられている。
前面枠3の下部の開閉パネル20には図示しない打球発射装置に遊技球を供給する上皿21が、固定パネル22には灰皿15、下皿23及び打球発射装置の操作部24等が備えられている。下皿23には、下皿23に貯まった遊技球を排出するための下皿球抜き機構16が備えられる。前面枠3下部右側には、ガラス枠18を施錠するための鍵25が備えられている。
また、遊技者が操作部24を回動操作することによって、打球発射装置は、上皿21から供給される遊技球を発射する。
また、上皿21の上縁部には、遊技者からの操作入力を受け付けるための演出ボタン17が備えられている。
遊技者が演出ボタン17を操作することによって、遊技盤10に設けられた表示装置53(図2参照)における特図変動表示ゲームの演出内容を選択すること、及び表示装置53における特図変動表示ゲームに、遊技者の操作を介入させた演出を行うことができる。
なお、特図変動表示ゲームは、発射された遊技球が遊技盤10に備わる第1始動入賞口45(図2参照)又は普通変動入賞装置36(図2参照)の第2始動入賞口に入賞した場合に開始される。特図変動表示ゲームでは、表示装置53において複数の識別情報が変動表示する。そして、変動表示していた識別情報が停止し、停止した識別情報の結果態様が特定の結果態様である場合に、遊技機1の状態が遊技者に有利な状態である特別遊技状態に遷移する。
上皿21の右上部には、遊技者が遊技球を借りる場合に操作する球貸ボタン26、及び、図示しないカードユニットからプリペイドカードを排出させるために操作される排出ボタン27が設けられている。これらのボタン26、27の間には、プリペイドカードの残高を表示する残高表示部28が設けられる。
図2は、本発明の第1実施形態の遊技盤10の正面図である。
図1に示す遊技機1は、内部の遊技領域10a内に遊技球を発射して(弾球して)遊技を行うもので、ガラス枠18のカバーガラスの前側上半部の奥側には、遊技領域10aを構成する遊技盤10が設置されている。
遊技盤10は、各種部材の取付ベースとなる平板状の遊技盤本体10b(木製もしくは合成樹脂製)を備え、該遊技盤本体10bの前面にガイドレール32で囲まれた遊技領域10aを有している。また、遊技盤本体10bの前面であってガイドレール32の外側には、前面構成部材33、33、…が取り付けられている。そして、このガイドレール32で囲まれた遊技領域10a内に発射装置から遊技球(打球;遊技媒体)を発射して遊技を行うようになっている。
遊技領域10aの略中央には、特図変動表示ゲームの表示領域となる窓部52を形成するセンターケース51が取り付けられている。このセンターケース51に形成された窓部52の後方には、複数の識別情報を変動表示する特図変動表示ゲームを実行可能な演出表示装置としての表示装置53が配されるようになっている。この表示装置53は、例えば、液晶ディスプレイを備え、表示内容が変化可能な表示部53aがセンターケース51の窓部52を介して遊技盤10の前面側から視認可能となるように配されている。なお、表示装置53は、液晶ディスプレイを備えるものに限らず、EL、CRT等のディスプレイを備えるものであっても良い。
また、遊技領域10a内には、普図始動ゲート34が設けられている。また、遊技領域10a内には、第1の始動入賞領域をなす第1始動入賞口45と、第2の始動入賞領域をなす第2始動入賞口を有する普通変動入賞装置36と、が設けられている。そして、遊技球が第1始動入賞口45に入賞した場合は、補助遊技として第1特図変動表示ゲームが実行され、遊技球が普通変動入賞装置36に入賞した場合は、補助遊技として第2特図変動表示ゲームが実行されるようになっている。
また、遊技盤10には、普図変動表示ゲーム、第1特図変動表示ゲーム、及び、第2特図変動表示ゲームの遊技状態を報知する状態表示器40が配設されている。なお、状態表示器40については、図3で詳細を説明する。
さらに遊技領域10aには、上端側が手前側に倒れる方向に回動して開放可能になっているアタッカ形式の開閉扉42aを有し、第1特図変動表示ゲーム、第2特図変動表示ゲームの結果如何によって大入賞口を閉じた状態(遊技者にとって不利な状態)から開放状態(遊技者にとって有利な状態)に変換する特別変動入賞装置42、入賞口などに入賞しなかった遊技球を回収するアウト穴43が設けられている。この他、遊技領域10aには、一般入賞口44、44、…、打球方向変換部材としての風車46、多数の障害釘(図示略)などが配設されている。
普図始動ゲート34内には、該普図始動ゲート34を通過した遊技球を検出するためのゲートSW34a(図4参照)が設けられている。そして、遊技領域10a内に打ち込まれた遊技球が普図始動ゲート34内を通過すると、普図変動表示ゲームが行われる。また、普図変動表示ゲームを開始できない状態、例えば、既に普図変動表示ゲームが行われ、その普図変動表示ゲームが終了していない状態や、普図変動表示ゲームが当って普通変動入賞装置36が開状態に変換されている場合に、普図始動ゲート34を遊技球が通過すると、普図始動記憶数の上限数未満でならば、普図始動記憶数が1加算されて普図始動記憶が1つ記憶されることとなる。
普図変動表示ゲームは、普図表示器301で実行されるようになっている。なお、表示装置53の表示領域の一部で普図変動表示ゲームを表示するようにしても良く、この場合は識別図柄として、例えば、数字、記号、キャラクタ図柄などを用い、これを所定時間変動表示させた後、停止表示させることにより行うようにする。この普図変動表示ゲームの停止表示が特別の結果態様となれば、普図の当りとなって、普通変動入賞装置36の開閉部材36aが所定時間(例えば、0.5秒間)開放される。これにより、普通変動入賞装置36に遊技球が入賞しやすくなり、第2特図変動表示ゲームの始動が容易となる。
普通変動入賞装置36は左右一対の開閉部材36a、36aを具備し、第1始動入賞口45の下部に配設され、この開閉部材36a、36aは、常時は遊技球の直径程度の間隔をおいて閉じた状態(遊技者にとって不利な状態)を保持しているが、普図変動表示ゲームの結果が所定の停止表示態様となった場合には、駆動装置としてのソレノイド(普電SOL36b、図4参照)によって、逆「ハ」の字状に開いて普通変動入賞装置36に遊技球が流入し易い状態(遊技者にとって有利な状態)に変化させられるようになっている。
また、本実施形態の遊技機1は、特図変動表示ゲームの結果態様に基づき、遊技状態として時短状態(第2動作状態)を発生可能となっている。この時短動作状態(第2動作状態)は、普通変動入賞装置36の動作状態が、通常動作状態(第1動作状態)に比べて開放状態となりやすい状態である。この時短動作状態においては、上述の普図変動表示ゲームの実行時間が通常動作状態における長い実行時間よりも短くなるように制御され(例えば、10秒が1秒)、これにより、単位時間当りの普通変動入賞装置36の開放回数が実質的に多くなるように制御される。また、時短動作状態においては、普図変動表示ゲームが当り結果となって普通変動入賞装置36が開放される場合に、開放時間が通常動作状態の短い開放時間より長くされるように制御される(例えば、0.3秒が1.8秒)。また、時短動作状態においては、普図変動表示ゲームの1回の当り結果に対して、普通変動入賞装置36が1回ではなく、複数回(例えば、2回)開放される。さらに、時短動作状態においては普図変動表示ゲームの当り結果となる確率が通常動作状態より高くなるように制御される。すなわち、通常動作状態よりも普通変動入賞装置36の開放回数が増加され、普通変動入賞装置36に遊技球が入賞しやすくなり、第2特図変動表示ゲームの始動が容易となる。
なお、時短状態中における特図変動表示ゲームの実行時間は、通常状態における特図変動表示ゲームの実行時間よりも短縮される。
第1始動入賞口45の内部には第1始動口SW45a(図4参照)が備えられ、この第1始動口SW45aによって遊技球を検出することに基づき、補助遊技としての第1特図変動表示ゲームを開始する始動権利が発生するようになっている。また、普通変動入賞装置36の内部には第2始動口SW36d(図4参照)が備えられ、この第2始動口SW36dによって遊技球を検出することに基づき、補助遊技としての第2特図変動表示ゲームを開始する始動権利が発生するようになっている。この第1特図変動表示ゲームを開始する始動権利は、所定の上限数(例えば4)の範囲内で第1始動記憶(特図1始動記憶)として記憶される。そして、この第1始動記憶は、第1特図記憶表示器305に表示される。また、第2特図変動表示ゲームを開始する始動権利は、所定の上限数(例えば4)の範囲内で第2始動記憶(特図2始動記憶)として記憶される。
そして、第1特図変動表示ゲーム又は第2特図変動表示ゲームが開始可能な状態で、且つ、第1始動記憶数及び第2始動記憶数が0の状態で、例えば、第1始動入賞口45に遊技球が入賞すると、始動権利の発生に伴って第1始動記憶が記憶されて、第1始動記憶数が1加算されるととともに、直ちに第1始動記憶に基づいて、第1特図変動表示ゲームが開始され、この際に第1始動記憶数が1減算される。また、第1特図変動表示ゲーム又は第2特図変動表示ゲームが開始可能な状態で、且つ、第1始動記憶数及び第2始動記憶数が0の状態で、例えば、第2始動入賞口をなす普通変動入賞装置36に遊技球が入賞すると、始動権利の発生に伴って第2始動記憶が記憶されて、第2始動記憶数が1加算されるととともに、直ちに第2始動記憶に基づいて、第2特図変動表示ゲームが開始され、この際に第2始動記憶数が1減算される。
一方、第1特図変動表示ゲーム又は第2特図変動表示ゲームが直ちに開始できない状態、例えば、既に第1特図変動表示ゲーム又は第2特図変動表示ゲームが行われ、その特図変動表示ゲームが終了していない状態や、特別遊技状態となっている場合に、第1始動入賞口45に遊技球が入賞すると、第1始動記憶数が上限数未満(例えば、4個未満)ならば、第1始動記憶数が1加算されて第1始動記憶が1つ記憶されることになる。同様に、この場合に第2始動入賞口をなす普通変動入賞装置36に遊技球が入賞すると、第2始動記憶数が上限数未満(例えば、4個未満)ならば、第2始動記憶数が1加算されて第2始動記憶が1つ記憶されることになる。
そして、第1特図変動表示ゲーム又は第2特図変動表示ゲームが開始可能な状態となると、第1始動記憶又は第2始動記憶に基づき第1特図変動表示ゲーム又は第2特図変動表示ゲームが開始される。このとき、第1特図変動表示ゲームと第2特図変動表示ゲームは同時に実行されることはなく、第2特図変動表示ゲームが第1特図変動表示ゲームよりも優先して実行されるようになっている。すなわち、第1始動記憶と第2始動記憶がある場合であって、特図変動表示ゲームの実行が可能となった場合は、第2特図変動表示ゲームが実行されるようになっている。
第1特図変動表示ゲーム、第2特図変動表示ゲームは、遊技領域10a内に設けられた表示装置53で実行されるようになっており、複数の識別情報(例えば、数字、記号、キャラクタ図柄など)を変動表示したのち、所定の結果態様を停止表示することで行われる。また、表示装置53にて各特図変動表示ゲームに対応して複数種類の識別情報を変動表示させる特図変動表示ゲームが実行されるようになっている。そして、この特図変動表示ゲームの結果として、表示装置53で停止した識別情報の結果態様が特別結果態様(たとえば「7,7,7」等のゾロ目数字の何れか)となった場合には、大当りとなって特別遊技状態(いわゆる、大当り状態)となる。
また、本実施形態の遊技機1は、特図変動表示ゲームの結果態様に基づき、遊技状態として確変状態(第2確率状態)を発生可能となっている。この確変状態(第2確率状態)は、特図変動表示ゲームでの当り結果となる確率が、通常確率状態(第1確率状態)に比べて高い状態である。なお、第1特図変動表示ゲームと第2特図変動表示ゲームのどちらの特図変動表示ゲームの結果態様に基づき確変状態となっても、第1特図変動表示ゲーム及び第2特図変動表示ゲームの両方が確変状態となる。また、確変状態と時短動作状態はそれぞれ独立して発生可能であり、両方を同時に発生することも可能であるし、一方のみを発生させることも可能である。
また、表示装置53の上方には、リーチ時、及び特別遊技状態時等に演出のための動作をする可動演出役物62が配置されている。
図3は、本発明の第1実施形態の状態表示器40の説明図である。
状態表示器40は、普図変動表示ゲーム、第1特図変動表示ゲーム、及び第2特図変動表示ゲームの遊技状態を報知するものである。具体的には、状態表示器40は、普図変動表示ゲームを表示する普図表示器301と、第1特図変動表示ゲームを表示する第1特図表示器302と、第2特図変動表示ゲームを表示する第2特図表示器303と、普図変動表示ゲームの未処理回数を表示する普図記憶表示器304と、第1特図変動表示ゲームの未処理回数(第1始動記憶)を表示する第1特図記憶表示器305と、第2特図変動表示ゲームの未処理回数(第2始動記憶)を表示する第2特図記憶表示器306と、第1特図変動表示ゲーム及び第2特図変動表示ゲームにおける結果が2R大当りか15R大当りかを決定するラウンド数表示器307と、第1特図変動表示ゲーム及び第2特図変動表示ゲームの遊技状態を報知する遊技状態表示器308とを備える。なお、普図表示器301、第1特図表示器302、第2特図表示器303、普図記憶表示器304、第1特図記憶表示器305、第2特図記憶表示器306、ラウンド数表示器307、及び遊技状態表示器308は、セグメントLEDとして一体に設けられている。
普図表示器301は、普図始動ゲート34を遊技球が通過した場合に点灯又は点滅し、普図変動表示ゲームを表示するLEDである。普図表示器301が点滅している場合は普図変動表示ゲームが変動表示中であることを示し、普図表示器301が点灯している場合は普図変動表示ゲームの結果が当りであることを示し、普図表示器301が消灯している場合は普図変動表示ゲームの結果がはずれであることを示している。
普図記憶表示器304は、第1普図記憶表示器304aと第2普図記憶表示器304bの2つのLEDからなり、第1普図記憶表示器304a及び第2普図記憶表示器304bが共に消灯している場合は普図変動表示ゲームの普図始動記憶が「0」であることを示し、第1普図記憶表示器304aが点灯し第2普図記憶表示器304bが消灯している場合は普図変動表示ゲームの普図始動記憶が「1」であることを示し、第1普図記憶表示器304a及び第2普図記憶表示器304bが共に点灯している場合は普図変動表示ゲームの普図始動記憶が「2」であることを示し、第1普図記憶表示器304aが点滅し第2普図記憶表示器304bが点灯している場合は普図変動表示ゲームの普図始動記憶が「3」であることを示し、第1普図記憶表示器304a及び第2普図記憶表示器304bが共に点滅している場合は普図変動表示ゲームの普図始動記憶が「4」であることを示している。
第1特図表示器302は、第1始動入賞口45に遊技球が入賞すると第1特図変動表示ゲームを表示するものである。
第2特図表示器303は、第2始動入賞口に遊技球が入賞すると第2特図変動表示ゲームを表示するものである。
第1特図記憶表示器305は、4つのLEDからなり、点灯しているLEDの個数で第1特図変動表示ゲームの未処理回数を表示するものである。
第2特図記憶表示器306は、4つのLEDからなり、点灯しているLEDの個数で第2特図変動表示ゲームの未処理回数を表示するものである。
ラウンド数表示器307は、第1ラウンド数表示器307aと第2ラウンド数表示器307bの2つのLEDからなり、第1ラウンド数表示器307aが点灯し第2ラウンド数表示器307bが消灯している場合は第1特図変動表示ゲーム又は第2特図変動表示ゲームの遊技結果が2R大当たりであることを示し、第1ラウンド数表示器307aが消灯し第2ラウンド数表示器307bが点灯している場合は第1特図変動表示ゲーム又は第2特図変動表示ゲームの遊技結果が15R大当たりであることを示している。
遊技状態表示器308は、第1遊技状態表示器308aと第2遊技状態表示器308bと第3遊技状態表示器308cの3つのLEDからなり、第1遊技状態表示器308a及び第2遊技状態表示器308bが共に消灯し第3遊技状態表示器308cが点灯している場合は第1特図変動表示ゲーム又は第2特図変動表示ゲームにおいて大当たり中(条件装置作動中)であることを示し、第1遊技状態表示器308a、第2遊技状態表示器308b及び第3遊技状態表示器308cの全てが消灯している場合は第1特図変動表示ゲーム及び第2特図変動表示ゲームにおいて大当たりでない状態(条件装置未作動)であることを示している。
また、第1遊技状態表示器308a、第2遊技状態表示器308b及び第3遊技状態表示器308cの全てが消灯している場合は第1特図変動表示ゲーム又は第2特図変動表示ゲームの変動制御(変動時間)が予め設定された通常動作状態(通常制御状態)であることを示し、第2遊技状態表示器308bが点灯し第1遊技状態表示器308a及び第3遊技状態表示器308cが共に消灯している場合は時短動作状態(短縮制御状態)であることを示している。
ここで、第1遊技状態表示器308a及び第2遊技状態表示器308bが共に点灯し第3遊技状態表示器308cが消灯している場合は第1特図変動表示ゲーム又は第2特図変動表示ゲームにおいて大当たりとなる確率が所定の確率である通常確率状態よりも高く設定された高確率状態(確率変動状態)であることを示すようにしても良い。
さらに、第1遊技状態表示器308a、第2遊技状態表示器308b及び第3遊技状態表示器308cの全てが消灯している場合はエラー未報知状態を示し、第1遊技状態表示器308aが点灯し第2遊技状態表示器308b及び第3遊技状態表示器308cが消灯している場合は電源投入時の遊技状態がエラー状態であることを示している。具体的には、遊技機の電源投入時に第1特図変動表示ゲーム又は第2特図変動表示ゲームにおいて大当たりとなる確率が高確率状態となっている場合にエラー状態であると判定して、第1遊技状態表示器308aが点灯する。この第1遊技状態表示器308aが点灯した状態は、高確率状態が停止するまで継続することとなる。
図4は、本発明の第1実施形態の遊技機1の構成を示すブロック図である。
遊技機1は、遊技機1で行われる遊技を統括的に制御する遊技制御装置500、各種演出を行うために表示装置53及びスピーカ30等を制御する演出制御装置550、遊技球を払い出すために図示しない払出モータを制御する払出制御装置580を備える。
図4では、遊技制御装置500及び演出制御装置550について説明する。
まず、遊技制御装置500について説明する。
遊技制御装置500は、遊技用マイコン501、入力I/F(Interface)505、出力I/F(Interface)506及び外部通信端子507を備える。
遊技用マイコン501は、CPU(演算処理装置)502、ROM(Read Only Memory)503及びRAM(Random Access Memory)504を備える。
CPU502は、遊技を統括的に制御する主制御装置であって、遊技制御を司る。ROM503は、遊技制御のための不変の情報(プログラム、データ等)を記憶している。RAM504は、遊技制御時にワークエリアとして利用される。
外部通信端子507は、遊技制御装置500の設定情報等を検査する検査装置等の外部機器に遊技制御装置500を接続する。
CPU502は、入力I/F505を介して各種入力装置(第1始動口SW45a、第2始動口SW36d、一般入賞口SW44a、ゲートSW34a、カウントSW42d、ガラス枠開放SW18a、前面枠開放SW3a、及び球切れSW54)からの検出信号を受けて、大当り抽選等、種々の処理を行う。
第1始動口SW45aは、第1始動入賞口45に遊技球が入賞したことを検出するスイッチである。第2始動口SW36dは、普通変動入賞装置36の第2始動入賞口に遊技球が入賞したことを検出するスイッチである。
一般入賞口SWa44a〜44nは、一般入賞口44に遊技球が入賞したことを検出するスイッチである。ゲートSW34aは、普図始動ゲート34を遊技球が通過したことを検出するスイッチである。
カウントSW42dは、特別変動入賞装置42の大入賞口に遊技球が入賞したことを検出するスイッチである。
ガラス枠開放SW18aは、ガラス枠18が開放されたことを検出するスイッチである。前面枠開放SW3aは、前面枠3が開放されたことを検出するスイッチである。
球切れSW54は、遊技機1の内部に貯留され、払い出しに用いられる遊技球の数が所定数以下になったことを検出するスイッチである。
また、CPU502は、出力I/F506を介して、普図表示器301、第1特図表示器302、第2特図表示器303、普図記憶表示器304、第1特図記憶表示器305、第2特図記憶表示器306、ラウンド数表示器307、遊技状態表示器308、普電SOL36b、及び大入賞口SOL42bが接続される。
普電SOL36bは、普図表示器301(図3参照)で実行される普図変動表示ゲームが当りで停止した場合に、開閉部材36a、36aを開放し、普通変動入賞装置36の第2始動入賞口を遊技球が入賞しやすい状態にする。
大入賞口SOL42bは、第1特図変動表示ゲーム又は第2特図変動表示ゲームの結果が、特別の結果態様となり、特別遊技状態となった場合に、特別変動入賞装置42の開閉扉42aを開放して、大入賞口を遊技球が入賞しやすい状態とする。
また、遊技制御装置500は、遊技機データを、外部情報端子508を介して、図示しない情報収集端末装置を介して、図示しない遊技場管理装置に出力する。遊技場管理装置は、遊技場に設置された遊技機1の遊技データを収集管理する計算機である。
また、払出制御装置580は、遊技球が一般入賞口44又は大入賞口に入賞した場合に、入賞した入賞口に対応する数の遊技球の払い出し、又は球貸ボタン26が操作された場合に、所定数の遊技球の払い出しを行う払出指令を遊技制御装置500から受信した場合に、受信した払出指令に基づいて、図示しない払出モータを制御する。なお、払出指令には、払い出す遊技球の数が含まれる。
遊技制御装置500は、変動開始コマンド、客待ちデモコマンド、ファンファーレコマンド、確率情報コマンド、及びエラー指定コマンド等を、演出制御指令信号として、出力I/F506を介して、演出制御装置550へ送信する。
次に、演出制御装置550について説明する。
演出制御装置550は、遊技制御装置500から入力される各種コマンドに基づいて、役物駆動モータ560、表示装置53、各種LED基板561、及びスピーカを制御する。また、演出制御装置550は、演出ボタン17から当該演出ボタン17が操作されたことを示す信号が入力される。
演出制御装置550は、CPU551、ROM552、RAM553、画像ROM554、音ROM555、VDP556、音LSI557、通信I/F558、及び入出力I/F559を備える。
CPU551は、遊技制御装置500からの指令に基づいて、各種演出を制御する主制御装置である。ROM552は、演出制御のための不変の情報(プログラム、データ等)を記憶している。RAM553は、演出制御時にワークエリアとして利用される。
画像ROM554には、表示装置53に表示される画像データが格納されている。音ROM555には、スピーカ30から出力される音データが格納されている。
VDP556は、表示装置53への画像出力を制御するプロセッサである。音LSI557は、スピーカ30からの音声出力を制御する回路である。
通信I/F558は、遊技制御装置500に接続されるインタフェースである。入出力I/F559は、演出ボタン17、役物駆動モータ560、表示装置53、各種LED基板561、及びスピーカ30に接続されるインタフェースである。
演出ボタン17は、上皿21の上縁部に設けられ、表示装置53で実行される第1特図変動表示ゲーム又は第2特図変動表示ゲームにおける演出で、遊技者によって操作される。
役物駆動モータ560は、遊技盤10に配置される図示しない装飾のための役物を可動させるために動作する。各種LED基板561は、照明ユニット11を点灯させるためのLEDを制御する。
図5は、本発明の第1実施形態の遊技用マイコン501のブロック図である。
遊技用マイコン501はいわゆるアミューズチップ用のICとして製造され、遊技制御を行う遊技制御ブロック5010と情報管理を行う管理ブロック5040に区分される。
まず、遊技制御ブロック5010は、CPUコア5011、クロック回路5012、割込コントローラ5013、CTC(カウンタ タイマ サーキット)5014、遊技用ROM5015、遊技用RAM5016、リセット回路5017、チェックデータ演算回路5018、アドレスデコード回路5019、入出力制御回路5020、外部バスI/F5021、及び乱数生成回路5022を備える。
CPUコア5011は、遊技制御のための演算処理を行う。クロック回路5012は、CPUコア5011が動作するためのクロック信号を生成する。
割込コントローラ5013は、NMI割込信号及びリセット割込信号等の割込信号を生成する。
CTC5014は、周期的割り込みや一定周期のパルス出力作成機能(ビットレートジェネレータ)や時間計測の機能を付与する回路である。なお、CTC5014による割り込みのタイミングで、図8に示すタイマ割込処理が実行される。
遊技用ROM5015は、遊技制御に必要なプログラムなどを格納する。遊技用RAM5016は、各プログラムに基づく処理を実行する際にワークエリア(作業領域)として用いられる。
リセット回路5017は、割込コントローラ5013からのリセット割込信号を検出してCPUコア5011に知らせる。
チェックデータ演算回路5018は、CRC演算、チェックサム演算、パリティ演算を実行するための回路である。なお、チェックデータ演算回路5018は、図11で詳細を説明する。
アドレスデコード回路5019は、内蔵デバイス及び内蔵コントロール/ステータスレジスタ群のロケーションをメモリマップドI/O方式及びI/OマップドI/O方式によりデコードする。
入出力制御回路5020は、アドレスデコード回路5019からの入力された信号制御を行って、遊技機1の内部であって、遊技用マイコン501の外部の機器に出力するとともに、外部から入力された信号をアドレスデコード回路5019に転送する。
外部バスI/F5021は、遊技機1の外部に信号を出力するとともに、遊技機1の外部からの信号を入力するインタフェースである。
乱数生成回路5022は、乱数を生成するための回路であり、クロック回路5012によるクロック信号の生成周期と異なる周期で乱数を更新する。
なお、CPUコア5011、割込コントローラ5013、CTC5014、遊技用ROM5015、遊技用RAM5016、チェックデータ演算回路5018、アドレスデコード回路5019、外部バスI/F5021、及び乱数生成回路5022は、バス5030を介して接続される。
次に、管理ブロック5040は、管理用ワークRAM5041、セキュリティメモリ5042、管理用ブートROM5043、及び通信ポート5044を備える。
管理用ワークRAM5041は、管理ブロック5040におけるプログラムに基づく処理を実行する際にワークエリア(作業領域)として用いられるものである。
セキュリティメモリ5042は、遊技機1の固有のID(チップID)を格納するメモリである。チップIDは、16ビット(2バイト)のデータ列であり、上位1バイトのデータ列をチップIDの上位バイトといい、下位1バイトのデータ列をチップIDの下位バイトという。
管理用ブートROM5043は、ブートプログラムを記憶し、電源投入時に遊技用RAM5016及び管理用ワークRAM5041に記憶された情報を初期化する。通信ポート5044は、遊技用マイコンの外部と通信するためのポートである。
図6は、本発明の第1実施形態のメイン処理の前半部のフローチャートである。図7は、本発明の第1実施形態のメイン処理の後半部のフローチャートである。
メイン処理は、遊技機1に電源が投入されたこと又は停電が復旧した場合に遊技制御装置500の遊技用マイコン501によって実行される。
まず、遊技制御装置500は、所定時間周期(例えば、2ミリ秒周期)で行われる割り込みを禁止する(601)。
遊技制御装置500は、割り込みがあった場合に実行される割り込み処理を実行するためにアクセスするRAM504上のアドレスを示す割り込みベクタを設定し(602)、スタックポインタを設定する(603)。そして、遊技制御装置500は、各割り込みモードを設定し(604)、RAM504へのアクセスを許可する(605)。次に、遊技制御装置500は、すべての出力ポートをOFFに設定する(606)。
次に、遊技制御装置500は、遊技機1に備わり、遊技制御装置500のRAM504に記憶された情報を初期化する図示しないバックアップクリアスイッチ(初期化スイッチ)がONであるか否かを判定する(607)。バックアップクリアスイッチがONに操作されると、RAM504に記憶されたデータが初期化される。
なお、バックアップクリアスイッチは、遊技盤10の裏面側に取り付けられるので、前面枠3を開状態にしなければ、操作することができない。このため、遊技場に遊技機1が設置された状態では、バックアップアップクリアスイッチは、遊技場の従業員のみ操作可能であり、一般の遊技者は操作できない。
ステップ607の処理で、バックアップクリアスイッチがONであると判定された場合、遊技制御装置500は、使用するRAM504に記憶されたデータをクリアする(608)。
そして、遊技制御装置500は、RAM504に電源投入時の初期値を設定する(609)。なお、電源投入時の初期値は、予め定められた値である。
次に、遊技制御装置500は、乱数初期値設定処理を実行する(610)。なお、乱数初期値設定処理は、特別遊技状態を発生させるか否かを決定するための大当り乱数の初期値、特別遊技状態が終了した後に確変状態にするか否か、及び時短状態にするか否かを決定するための乱数の初期値等を設定する処理である。
次に、遊技制御装置500は、演出制御装置550に遊技機1の機種を特定させるための機種指令コマンドを送信する(611)。
次に遊技制御装置500は、電源投入時に表示装置53に表示される図柄を演出制御装置550に設定させる電源投入コマンドを編集し、電源投入コマンドを演出制御装置550に送信し(612)、図7に示すステップ619の処理に進む。
一方、ステップ607の処理で、バックアップクリアスイッチがONでないと判定された場合、遊技制御装置500は、停電検査領域をチェックする(613)。
具体的には、停電検査領域は、RAM504の特定の領域であって、停電があったことを示す停電フラグが格納される領域である。
そして、遊技制御装置500は、ステップ613の処理で参照した停電検査領域に停電フラグが格納されているか否かを判定することによって、停電復旧時の電源投入であるか否かを判定する(614)。
ステップ614の処理で、停電復旧時の電源投入でないと判定された場合、遊技機1を初期化するためにステップ608の処理に進む。
一方、ステップ614の処理で、停電復旧であると判定された場合、遊技制御装置500は、RAM504に記憶されているデータが壊れている否かを判定するために、チェックサムが正常であるか否かを判定する(615)。
具体的には、遊技制御装置500は、停電があった場合にRAM504に記憶されているデータのチェックサムと現在RAM504に記憶されているデータのチェックサムとが一致するか否かを判定する。
ステップ615の処理で、チェックサムが異常であると判定された場合、RAM504に記憶されているデータが壊れていて、停電が発生した際のRAM504に記憶されたデータを引き継ぐことができないので、遊技機1を初期化するためにステップ608の処理に進み、電源投入処理を実行する。
ステップ615の処理で、チェックサムが正常であると判定された場合、RAM504に記憶されているデータは正常であり、停電復旧処理を実行できるので、RAM504に停電復旧時の初期値を設定する(616)。
次に、遊技制御装置500は、RAM504のエラー状態に係る領域をクリアする(617)。エラー状態に係る領域には、遊技制御装置500が検出した遊技機1における各種異常を記憶する領域である。遊技機1における各種異常には、ガラス枠開放エラー、前面枠開放エラー、大入賞口不正入賞エラー、及び普電不正入賞エラー等がある。
そして、遊技制御装置500は、停電復旧コマンドを演出制御装置550に送信する(618)。
次に、遊技制御装置500は、所定時間周期(例えば、2ミリ秒周期)でタイマ割り込みを行う割り込みタイマを起動する(619)。遊技制御装置500は、割り込み禁止を設定する(620)。これによって、割り込み禁止が設定されている場合、遊技制御装置500は、割り込みがあってもタイマ割り込み処理を実行しない。
そして、初期値乱数更新処理を実行する(621)。ステップ621の初期値乱数更新処理は、後述する図8のステップ805の処理における乱数更新処理の初期値を更新する処理である。具体的には、遊技制御装置500は、乱数の初期値カウンタを初期値乱数更新処理が実行されるごとに、インクリメントする。
具体的には、初期値乱数更新処理は、第1特図変動表示ゲーム又は第2特図変動表示ゲームが大当りか否かを判定するための大当り乱数の初期値、第1特図変動表示ゲーム又は第2特図変動表示ゲームで発生した特別遊技状態が終了した場合に、確変状態にするか時短状態にするか決定するか、及び特別遊技状態のラウンド数を2ラウンドにするか15ラウンドにするかを決定する乱数である大当り図柄乱数初期値を更新する処理である。
なお、第1特図変動表示ゲーム又は第2特図変動表示ゲームの変動パターンを決定するための変動パターン乱数の初期値を更新するようにしてもよい。
すなわち、遊技制御装置500で実行される処理の中には、普図始動ゲート34、第1始動入賞口45、普通変動入賞装置36の第2始動入賞口に遊技球が入賞したときに、対応する遊技の結果態様を導き出すための抽選を行ったり、この抽選結果に基づいて、各種変動表示ゲームを進行させる際の演出又は装飾にランダム性を付与したりするために行われる、いくつかの乱数処理が含まれる。これらの乱数処理の一例としては、0から316の間で乱数カウンタの値を所定の時間周期(例えば、2ミリ秒周期)で1ずつ増加させ、値が316を越したときに再び0に戻す。この乱数値の更新処理は、ステップ605の処理の乱数更新処理に相当する。
この乱数カウンタ値は、前述した遊技球の入賞等を遊技制御装置500が検出した時点で、そのときの乱数値が抽出される。しかし、乱数値として抽出されるタイミングの無作為性を利用した乱数に過ぎない。よって、初期値乱数更新処理で乱数カウンタ値の初期値を更新することによって乱数カウンタとしての規則性を排除している。
具体的には、乱数カウンタ値が上限値まで更新されるごとに、初期値乱数更新処理により得られた新たな値を次のカウンタの初期値として設定する。
初期値乱数更新処理における乱数更新の周期は、ステップ805の処理の乱数更新処理における乱数更新の周期と比較して短いため、前述したカウンタ値の外部からの推定を困難にすることができる。
次に、遊技制御装置500は、ステップ620の処理で禁止設定されていた割り込みを許可する(622)。
そして、遊技制御装置500は、停電検査領域をチェックし(623)、停電が発生しているか否かを判定する(624)。具体的には、遊技機1に供給される電圧が所定値以下か否かを判定し、所定値以下である場合に停電が発生していると判定する。
ステップ624の処理で、停電が発生していると判定された場合、ステップ625〜ステップ630の処理の停電時処理を実行する。
まず、遊技制御装置500は、割り込み禁止を設定し(625)、すべての出力ポートをOFFに設定する(626)。
遊技制御装置500は、停電検査領域に記憶されているデータを消去し(627)、停電が発生したことを示す停電フラグを停電検査領域に格納する(628)。
遊技制御装置500は。RAM504の電源が切れる前に、RAM504に記憶されているデータのチェックサムを算出し、算出したチェックサムの値を記憶する(629)。
そして、遊技制御装置500は、RAM504へのアクセスを禁止し(630)、遊技機1の電源が切れるまで待機する。なお、遊技制御装置500には、バックアップ電源が接続されているので、停電が発生しても、RAM504に記憶されている内容を保持することができる。
一方、ステップ624の処理で停電が発生していないと判定された場合、停電時処理を実行しないので、ステップ620の処理に戻る。
図6及び図7に示すメイン処理にて、割り込みタイマを起動させる前に、乱数初期値設定処理を実行して、大当り乱数等の初期値をランダムに設定するので、割り込みタイマが起動する前に、大当り乱数等の初期値がランダムに設定できる。
このため、始動入賞口への遊技球の入賞を検出した場合に、大当り乱数を取得し、特別遊技状態を発生させる所定値か否かを判定する処理、及び乱数更新処理の前に、大当り乱数の初期値がランダムな値となるので、特別遊技状態となる乱数を補足することが困難となり、不正に遊技機を初期化し、乱数が特別遊技状態となる乱数となるタイミングで乱数を取得させる不正行為を防止できる。
次に、遊技制御装置500が、タイマ割り込みを受けた場合に実行されるタイマ割り込み処理について説明する。
図8は、本発明の第1実施形態のタイマ割り込み処理のフローチャートである。
遊技機1の電源が投入されると、遊技制御メイン処理が実行される。そして、ステップ619の処理で起動させた割り込みタイマによって、所定時間周期(例えば、2ミリ秒周期)でタイマ割り込みが発生すると、タイマ割り込み処理が繰り返し実行される。ただし、これらの処理(801〜813の処理)は、割り込み発生毎に必ずしもすべて行なわれない。例えば、出力処理(802)及び入力処理(803)においては、毎回入力信号を監視するが、出力処理は割り込みの発生の1回おきに実行されてもよい。つまり、1回の割り込み処理で一通りの処理をすべて完了するのではなく、この割り込み処理が複数回繰り返し実行されて一連の遊技制御処理が完了してもよい。
まず、遊技制御装置500は、レジスタ退避の処理を実行する(801)。
そして、遊技制御装置500は、入力処理を実行する(802)。入力処理は、入力I/F505を介して入力される各種センサやスイッチ等からの信号にチャタリング除去等の処理をし、入力情報を確定する処理である。
その後、遊技制御装置500は、出力処理を実行する(803)。出力処理は、出力I/F506を介して、演出制御装置550及び払出制御装置580等に遊技制御に関する情報を出力する処理である。
次に、コマンドを演出制御装置550及び払出制御装置580に送信するコマンド送信処理を行う(804)。
次に、遊技制御装置500は、大当り乱数等にランダム性を付与するために大当り乱数等のカウンタの値(乱数カウンタ)を1ずつ加算する乱数更新処理を実行する(805)。なお、加算する値は、1としたが、所定の値であればいくつであってもよい。したがって、乱数更新処理は、所定周期で実行されるタイマ割り込み処理で実行される。
次に、遊技制御装置500は、大入賞口への不正入賞及び普通変動入賞装置の第2始動入賞口への不正入賞を検出する入賞口スイッチ/エラー監視処理を実行する(806)。
そして、遊技制御装置500は、普図変動表示ゲームの進行を制御する普図ゲーム処理を実行する(807)。
普図ゲーム処理では、ゲートSW34aによって検出された普図始動ゲート34への遊技球の通過に基づいて普図乱数が抽出され、抽出された普図乱数が当たりか否かを判定し、普図表示器301(図3参照)で普図変動表示ゲームを実行する。普図乱数が所定の値であれば、普図に関する当り状態となる。
次に、遊技制御装置500は、第1特図変動表示ゲーム及び第2特図変動表示ゲームの進行を制御する特図ゲーム処理を実行する(808)。
特図ゲーム処理では、第1始動入賞口45又は普通変動入賞装置36の第2始動入賞口への遊技球の入賞に基づいて、大当り乱数が抽出され、抽出された大当り乱数が当たりか否かを判定し、第1特図表示器38又は第2特図表示器39で第1特図変動表示ゲーム又は第2特図変動表示ゲームを実行する。大当り乱数が所定の値であれば、特別図柄に関する当たり状態となり、識別情報の変動表示が当たり図柄で停止する。また、当たり状態になると、特別変動入賞装置42の開閉扉42aを開放し、遊技球を受け入れやすい開状態になる。
次に、遊技制御装置500は、状態表示器40のLEDに出力するためのパラメータを編集する処理を実行する(809)。
その後、遊技機1に接続される遊技場管理装置に遊技機1の状態を出力するための外部情報を編集する外部情報編集処理を行う(810)。外部情報には、図柄が確定したか、大当りであるか、確率変動中であるか、変動時間短縮中であるか等、第1特図変動表示ゲーム又は第2特図変動表示ゲームの進行状態に関連する情報が含まれる。
次に、遊技制御装置500は、タイマ割り込み処理の終了を宣言する(811)。
その後、一時退避していたレジスタの復帰処理(812)及び禁止設定されていた外部機器の割り込み及びタイマ割り込みの許可設定をする処理を行う(813)。そして、タイマ割り込み処理を終了し、メイン処理(図6)に戻る。
図9は、本発明の第1実施形態の乱数初期値設定処理のフローチャートである。
まず、遊技制御装置500は、遊技用マイコン501のセキュリティメモリ5042からチップIDを取得する(901)。
次に、遊技制御装置500は、1回目のCyclic Redundancy Check(CRC)演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102(図11参照)に、チップIDの上位バイト(1バイト)のデータ列をセットする(902)。
次に、遊技制御装置500は、2回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの下位バイト(1バイト)のデータ列をセットする(903)。
次に、遊技制御装置500は、3回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの上位バイト(1バイト)のデータ列をセットする(904)。
次に、遊技制御装置500は、4回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの下位バイト(1バイト)のデータ列をセットする(905)。
ステップ902〜ステップ905の処理で、チップIDを構成するデータ列を用いて、CRC演算を4回繰り返し実行することによって、チェックデータ演算回路5018が有するCRCチェックレジスタ1103(図11参照)に乱数が生成される。
そして、遊技制御装置500は、生成された乱数に対して、丸め込み処理を実行する(906)。なお、丸め込み処理は、図10で詳細を説明する。
次に、遊技制御装置500は、CRCチェックレジスタ1103に生成された乱数をRAM504の大当り乱数領域に大当り乱数の初期値として格納し(907)、メイン処理に戻る。
図10は、本発明の第1実施形態の丸め込み処理のフローチャートである。
遊技制御装置500は、ステップ905の処理の実行後にCRCチェックレジスタ1103にセットされた乱数から、大当り乱数のカウンタ値の上限値を減算する(1001)。
次に、遊技制御装置500は、ステップ905の処理の実行後にCRCチェックレジスタ1103にセットされた乱数が、大当り乱数のカウンタ値の上限値よりも大きいか否かを判定するために、ステップ1001の処理の演算結果がマイナスであるか否かを判定する(1002)。
ステップ1002の処理で、ステップ1001の処理の演算結果がゼロ以上であると判定された場合、ステップ905の処理の実行後にCRCチェックレジスタ1103にセットされた乱数が大当り乱数のカウンタ値の上限値以上であるので、ステップ1001の処理に戻り、前回のステップ1001の処理の演算結果から乱数の上限値を減算する。
一方、ステップ1002の処理で、ステップ1001の処理の演算結果がマイナスであると判定された場合、ステップ904の処理の実行後にCRCチェックレジスタ1103にセットされた乱数が大当り乱数のカウンタ値の上限値以下であるので、減算前の値を、大当り乱数の初期値として、記憶し(1003)、乱数初期値設定処理に戻る。
図11は、本発明の第1実施形態のチェックデータ演算回路5018のブロック図である。
チェックデータ演算回路5018は、演算回路1101、チェックデータレジスタ1102、CRCチェックレジスタ1103、サムチェックレジスタ1104、及びパリティチェックレジスタ1105を備える。
なお、チェックデータレジスタ1102、CRCチェックレジスタ1103、サムチェックレジスタ1104、及びパリティチェックレジスタ1105は、内部バス1106によって、演算回路1101に接続されている。
演算回路1101は、CRC演算、サムチェック、及びパリティチェックを実行する回路である。チェックデータレジスタ1102には、CRC演算を実行する値、サムチェックを実行する値、パリティチェックを実行する値が記憶される。CRCチェックレジスタ1103には、CRC演算の結果が記憶される。
サムチェックレジスタ1104には、サムチェックの結果が記憶される。パリティチェックレジスタ1105には、パリティチェックの結果が記憶される。
図12は、本発明の第1実施形態の各レジスタ1102〜1105の説明図である。
CRCチェックレジスタ1103は、16ビットのデータ列が格納される。また、この16ビットのデータ列は、4桁の16進数(0000〜FFFF)で表現される。なお、初期状態では、CRCチェックレジスタ1103にはFFFF(つまり、すべてのビットが「1」)が登録されている。つまり、CRCチェックレジスタ1103にFFFFが書き込まれると、初期状態となる。また、CRCチェックレジスタ1103は読み書き可能なレジスタである。
チェックデータレジスタ1102は、8ビットのデータ列が格納される。また、この8ビットのデータ列は、2桁の16進数(00〜FF)で表現される。また、CRCチェックレジスタ1103は読み書き可能なレジスタである。
サムチェックレジスタ1104は、16ビットのデータ列が格納される。また、この16ビットのデータ列は、4桁の16進数(0000〜FFFF)で表現される。また、サムチェックレジスタ1104は読み書き可能なレジスタである。
パリティチェックレジスタ1105は、8ビットのデータ列が格納される。また、この8ビットのデータ列は、2桁の16進数(00〜FF)で表現される。また、パリティチェックレジスタ1105は読み書き可能なレジスタである。
図13は、本発明の第1実施形態のCRC演算の説明図である。
チェックデータレジスタ1102のビット列はD0〜D7まであり、CRCチェックレジスタ1103のビット列はR0〜R15まである。なお、チェックデータレジスタ1102では、DOが最下位ビット(LSB)であり、D7が最上位ビット(MSB)である。また、CRCチェックレジスタ1103では、R0が最下位ビットであり、R15が最上位ビットである。
演算回路1101は、第1EXOR(排他的論理和)演算部1101A〜第3EXOR演算部1101Cを有する。
第1EXOR演算部1101Aでは、D7及びR15を入力として、演算結果がR0に出力される。第2EXOR演算部1101Bでは、R4及びR15を入力として、演算結果がR5に出力される。第3EXOR演算部1101Cでは、R11及びR15を入力として、演算結果がR12に出力される。
これによって、生成多項式(X16+X12+X5+1)の演算がなされて、乱数が生成される。
具体的に、固有IDが「0001」である場合のCRC演算について説明する。
CRCチェックレジスタ1103には「FFFF」が格納されている。R0〜R15の値は、すべて「1」である。なお、CRCチェックレジスタ1103では、R0が最下位ビット(LSB)であり、R15が最上位ビット(MSB)である。
また、固有IDの上位1バイト「00」が、チェックデータレジスタ1102に格納されている。D0〜D7の値は、すべて「0」である。チェックデータレジスタ1102では、D0が最下位ビットであり、D7が最上位ビットである。
1ビット目の演算、D7の値が第1EXOR演算部1101Aに入力される場合について説明する。
まず、CRCチェックレジスタ1103のビット列は図13のR15側に1ビットシフトし、チェックデータレジスタ1102のビット列は図13のD7側に1ビットシフトする。
この場合、R0には、D7「0」とシフト前のR15「1」とが第1EXOR演算部1101Aに入力された演算結果「1」が格納され、R5には、シフト前のR4「1」とシフト前のR15「1」とが第2EXOR演算部1101Bに入力された演算結果「0」が格納され、R12には、シフト前のR11「1」とシフト前のR15「1」とが第3EXOR演算部1101Cに入力された演算結果「0」が格納される。
このため、R0〜R15には、「1111101111110111」というビット列が格納される。
この処理を、チェックデータレジスタ1102に格納された固有IDの上位1バイト分繰り返すと、CRCチェックレジスタ1103には第1演算結果が格納されている。なお、第1演算結果では、R0〜R15には、R15が最上位ビットであるので、「0000111110000111」が格納される。R15側から16進数に変換すると、第1演算結果は「E1F0」となる。
次に、CRCチェックレジスタ1103はこのままの状態で、チェックデータレジスタ1102には固有IDの下位1バイト「01」が格納される。チェックデータレジスタ1102では、D0が最下位ビットであるので、D0〜D7のビット列は「00000001」となる。
これを上述のように、D7〜D0まで第1EXOR演算部1101Aに入力していくと、「1D0E」が第2演算結果として取得される。CRCチェックレジスタ1103では、R15が最上位ビットであるので、第2演算結果は、R0〜R15には、「0111000010111000」が格納されている。
次に、CRCチェックレジスタ1103はこのままの状態で、チェックデータレジスタ1102には固有IDの上位バイト「00」が格納される。上述したCRC演算が実行されて、第3演算結果「CD9C」が取得される。
そして、CRCチェックレジスタ1103に第3演算結果が格納されたまま、チェックデータレジスタ1102には固有IDの下位バイト「01」が格納されると、上述したCRC演算が実行されて、第4演算結果「9E41」が取得される。
図14は、本発明の第1実施形態の各チップIDにCRC演算を4回実行した場合の各演算結果の説明図である。
図14では、連続する複数のチップIDの第1演算結果(CRC値1)は同じ値となっている。また、第2演算結果(CRC値2)では、いくつかの連続するチップID間では最後の桁が1ずつ相違する値になっており、他の桁に関しては、同じ値となっている。第3演算結果(CRC値3)では、いくつかの連続するチップID間では2桁目が1ずつ相違する値になっており、他の桁に関しては、同じ値となっている。
このように、第1演算結果〜第3演算結果はランダムにはならない。図14を参照すると、第4演算結果は、ランダムとなっている。
本発明の第1実施形態の変形例を図15を用いて説明する。
第1実施形態では、チップIDの上位1バイトを用いてCRC演算を実行し第1演算結果を取得し、チップIDの下位1バイトを用いてCRC演算を実行し第2演算結果を取得し、チップIDの上位1バイトを用いてCRC演算を実行し第3演算結果を取得し、チップIDの下位1バイトを用いてCRC演算を実行し第4演算結果を取得したが、第1実施形態の変形例では、チップIDの下位1バイトを用いてCRC演算を実行し第1演算結果を取得し、チップIDの上位1バイトを用いてCRC演算を実行し第2演算結果を取得し、チップIDの下位1バイトを用いてCRC演算を実行し第3演算結果を取得し、チップIDの上位1バイトを用いてCRC演算を実行し第4演算結果を取得する。
なお、第1実施形態の変形例の各チップIDにCRC演算を4回実行した場合の演算結果を図15に示す。
図15は、本発明の第1実施形態の変形例の各チップIDにCRC演算を4回実行した場合の各演算結果の説明図である。
第1実施形態の変形例においても、第1実施形態と同じく、第1演算結果〜第3演算結果はランダムにはならず、第4演算結果からランダムとなる。
このように、第1実施形態では、大当り乱数を抽出し、大当り乱数更新処理を実行するタイマ割込処理を実行する前に、大当り乱数の初期値をCRC演算を用いて生成するので、特別遊技状態となる乱数を補足することが困難となり、不正に遊技機を初期化し、乱数が特別遊技状態となる乱数となるタイミングで乱数を取得させる不正行為を防止できる。
(第2実施形態)
本発明の第2実施形態を図16を用いて説明する。
第2実施形態では、乱数初期値設定処理で、確変状態を発生させるか否かを決定するための乱数である大当り図柄乱数(第1大当り図柄乱数及び第2大当り図柄乱数)の初期値も設定する。
図16は、本発明の第2実施形態の乱数初期値設定処理のフローチャートである。なお、図16に示す乱数初期値設定処理のうち、第1実施形態の図9に示す乱数初期値設定処理と同じ処理は、同じ番号を付与し、説明を省略する。
第2実施形態では、ステップ907の処理で、CRCチェックレジスタ1103に生成された乱数をRAM504の大当り乱数領域に大当り乱数の初期値として格納した後に、チップIDを取得し(901)、ステップ1601〜1605の処理、及びステップ906の処理を実行する。
まず、遊技制御装置500は、1回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの下位バイト(1バイト)のデータ列をセットする(1601)。
次に、遊技制御装置500は、2回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの上位バイト(1バイト)のデータ列をセットする(1602)。
次に、遊技制御装置500は、3回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの下位バイト(1バイト)のデータ列をセットする(1603)。
次に、遊技制御装置500は、4回目のCRC演算を実行するために、チェックデータ演算回路5018が有するチェックデータレジスタ1102に、チップIDの上位バイト(1バイト)のデータ列をセットする(1604)。
そして、遊技制御装置500は、生成された乱数に対して、丸め込み処理を実行し(906)、CRCチェックレジスタ1103に生成された乱数をRAM504の大当り図柄乱数領域に大当り図柄乱数の初期値として格納し(1605)、メイン処理に戻る。
これによって、確変状態にするか否かを決定する大当り図柄乱数の初期値をCRC演算を用いて生成するので、確変状態となる乱数を補足することが困難となり、不正に遊技機を初期化し、乱数が確変状態となる乱数となるタイミングで乱数を取得させる不正行為を防止できる。
(第3実施形態)
本発明の第3実施形態を図17を用いて説明する。
第1実施形態では、チップIDの連続した1バイトのデータをCRC演算に用いたが、第3実施形態では、チップIDの不連続な1バイト分のデータをCRC演算に用いる。
図17は、本発明の第3実施形態の乱数初期値設定処理のフローチャートである。なお、図17に示す乱数初期値設定処理のうち、第1実施形態の図9に示す乱数初期値設定処理と同じ処理は、同じ番号を付与し、説明を省略する。
遊技機1のチップIDを「1234」として説明する。
まず、遊技制御装置500は、ステップ901の処理で取得されたチップIDの上位1バイト「12」の下位4ビット「2」をマスクする(1701)。
具体的には、遊技制御装置500は、上位1バイト「12」と「0F」との論理積を演算する。これによって。「02」が取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの下位1バイト「34」の上位4ビット「3」をマスクする(1702)。
具体的には、遊技制御装置500は、下位1バイト「34」と「F0」との論理積を演算する。これによって、「30」が取得できる。
そして、ステップ1701の処理でマスクされた上位1バイトの下位4ビットのデータ列とステップ1702の処理でマスクされた下位1バイトの上位4ビットのデータ列との論理和を算出する(1703)。
具体的には、ステップ1701の処理で取得された「02」とステップ1702の処理で取得された「30」との論理和を演算する。これによって、「32」が取得される。
そして、遊技制御装置500は、1回目のCRC演算を実行するために、ステップ1703の処理で算出された論理和を、チェックデータレジスタ1102にセットする(1704)。これによって、ステップ1703の処理で算出された論理和「32」及びCRCチェックレジスタ1103の初期値を入力とするCRC演算を実行し、第1演算結果を取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの下位1バイト「34」の下位4ビット「4」をマスクする(1705)。
具体的には、遊技制御装置500は、下位1バイト「34」と「0F」との論理積を演算する。これによって。「04」が取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの上位1バイト「12」の上位4ビット「1」をマスクする(1706)。
具体的には、遊技制御装置500は、上位1バイト「12」と「F0」との論理積を演算する。これによって、「10」が取得できる。
そして、ステップ1705の処理でマスクされた下位1バイトの下位4ビットのデータ列とステップ1706の処理でマスクされた上位1バイトの上位4ビットのデータ列との論理和を算出する(1707)。
具体的には、ステップ1705の処理で取得された「04」とステップ1706の処理で取得された「10」との論理和を演算する。これによって、「14」が取得される。
そして、遊技制御装置500は、2回目のCRC演算を実行するために、ステップ1707の処理で算出された論理和を、チェックデータレジスタ1102にセットする(1708)。これによって、ステップ1707の処理で算出された論理和「14」及び第1演算結果を入力とするCRC演算を実行し、第2演算結果を取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの上位1バイト「12」の上位4ビット「1」をマスクする(1709)。
具体的には、遊技制御装置500は、上位1バイト「12」と「F0」との論理積を演算する。これによって、「10」が取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの下位1バイト「34」の下位4ビット「4」をマスクする(1710)。
具体的には、遊技制御装置500は、上位1バイト「34」と「F0」との論理積を演算する。これによって、「04」が取得できる。
そして、ステップ1709の処理でマスクされた上位1バイトの上位4ビットのデータ列とステップ1710の処理でマスクされた下位1バイトの下位4ビットのデータ列との論理和を算出する(1711)。
具体的には、ステップ1709の処理で取得された「10」とステップ1710の処理で取得された「04」との論理和を演算する。これによって、「14」が取得される。
そして、遊技制御装置500は、3回目のCRC演算を実行するために、ステップ1711の処理で算出された論理和を、チェックデータレジスタ1102にセットする(1712)。これによって、ステップ1711の処理で算出された論理和「14」及び第2演算結果を入力とするCRC演算を実行し、第3演算結果を取得できる。
次に、遊技制御装置500は、遊技制御装置500は、ステップ901の処理で取得されたチップIDの下位1バイト「34」の上位4ビット「3」をマスクする(1713)
具体的には、遊技制御装置500は、下位1バイト「34」と「F0」との論理積を演算する。これによって、「30」が取得できる。
次に、遊技制御装置500は、ステップ901の処理で取得されたチップIDの上位1バイト「12」の下位4ビット「2」をマスクする(1714)。
具体的には、遊技制御装置500は、上位1バイト「12」と「0F」との論理積を演算する。これによって。「02」が取得できる。
そして、ステップ1713の処理でマスクされた下位1バイトの上位4ビットのデータ列とステップ1714の処理でマスクされた上位1バイトの下位4ビットのデータ列との論理和を算出する(1715)。
具体的には、ステップ1713の処理で取得された「30」とステップ1714の処理で取得された「02」との論理和を演算する。これによって、「32」が取得される。
そして、遊技制御装置500は、4回目のCRC演算を実行するために、ステップ1715の処理で算出された論理和を、チェックデータレジスタ1102にセットする(1716)。これによって、ステップ1715の処理で算出された論理和「32」及び第3演算結果を入力とするCRC演算を実行し、第4演算結果を取得できる。
そして、遊技制御装置500は、第4演算結果に対して丸め込み処理を実行し(906)、CRCチェックレジスタ1103のデータ列をRAM504の大当り乱数領域に格納する(907)。
これによって、チップIDの不連続なデータ列を入力してCRC演算を実行するので、特別遊技状態となる乱数を補足することがより困難となる。
(第4実施形態)
本発明の第4実施形態を図18を用いて説明する。
第4実施形態では、乱数初期値設定処理の実行回数をランダムにする。
図18は、本発明の第4実施形態のメイン処理のフローチャートである。なお、図18のメイン処理のうち、図6のメイン処理の処理と同じ処理は、同じ番号を付与し、説明を省略する。
第4実施形態では、乱数生成回路5022には、乱数生成回路5022のクロック周期でカウンタを更新して、乱数を生成する機能を備える。
ステップ606の処理の実行後、電圧が所定値になると、遊技制御装置500は、乱数生成回路5022を起動し、カウンタの更新を開始する(1801)。なお、電圧が所定値になるタイミングは、室温等に依存し、遊技機1の起動ごとに異なる。
ステップ609の処理の実行後に、乱数生成回路5022のカウンタの値を取得し、更新カウンタに設定する(1802)。
そして、遊技制御装置500は、乱数初期値設定処理を実行し(610)、更新カウンタをデクリメントする(1803)。
そして、遊技制御装置500は、更新カウンタの値がゼロであるか否かを判定する(1804)。
ステップ1804の処理で、更新カウンタの値がゼロでないと判定された場合、ステップ610の処理に戻り、乱数初期値設定処理を再度実行する。
この場合の乱数初期値設定処理における1回目のCRC演算は、チェックデータレジスタ1102に格納されている値と、前回の乱数初期値設定処理の第4演算結果と、が入力される、
一方、ステップ1804の処理で、更新カウンタの値がゼロであると判定された場合、ステップ611の処理に進む。
第4実施形態では、乱数初期値設定処理の実行回数がランダムになるので、特別遊技状態となる乱数を補足することがより困難となる。
(第5実施形態)
本発明の第5実施形態を、図19及び図20を用いて説明する。
本発明の第5実施形態では、電源投入時に、電源断時のチェックサムと電源投入時のチェックサムとが一致しない場合に、RAM504を初期化せずに、電源断まで待機する。つまり、電源投入時に、電源断時のチェックサムと電源投入時のチェックサムとが一致しないと、バックアップクリアスイッチが操作されることによって、RAM504が初期化されるまで、遊技制御を開始しない。
具体的に説明すると、不正にリセット信号が入力された場合、チェックサムを算出しないで、電源断になるので、電源投入された場合に、電源投入時のチェックサムと電源断時のチェックサムとは一致しない。
第1実施形態では、電源投入時のチェックサムと電源断時のチェックサムとが一致しない場合、ステップ608〜ステップ612の処理を実行して、RAM504を初期化する。
第5実施形態では、電源投入時のチェックサムと電源断時のチェックサムとが一致しない場合、RAM504を初期化しないので、バックアップクリアスイッチを押下されるまで、電源投入時のチェックサムと電源断時のチェックサムとが一致しないと判定され続ける。
図19は、本発明の第5実施形態のメイン処理の前半部のフローチャートである。図20は、本発明の第5実施形態のメイン処理の後半部のフローチャートである。
ステップ614の処理で停電復旧でないと判定された場合、ステップ615の処理でチェックサムが異常であると判定された場合、バックアップクリアスイッチを押下の指示を報知するバックアップクリア指示コマンドを演出制御装置550に送信して(1901)、ステップ630の処理に進む。
演出制御装置550は、バックアップクリア指示コマンドを受信すると、表示装置53にバックアップクリアスイッチを押下することを表示してもよいし、スピーカ30から、バックアップクリアスイッチを押下する旨を示す音を出力してもよい。
これによって、不正にリセット信号が入力された場合には、遊技店の従業員しか操作できないバックアップクリアスイッチが操作されるまで、遊技機1が遊技制御を実行しないので、リセット信号を不正に入力する不正行為を防止できる。
今回開示した実施の形態は、全ての点で例示であって制限的なものではない。本発明の範囲は前述した発明の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び内容の範囲での全ての変更が含まれることが意図される。