以下、図面を用いて、本発明に係る遊技台(例えば、パチンコ機100等の弾球遊技機やスロット機等の回胴遊技機)について詳細に説明する。
[実施形態1]
<全体構成>
まず、図1を用いて、本発明の第1実施形態に係るパチンコ機100の全体構成について説明する。なお、同図はパチンコ機100を正面側(遊技者側)から見た外観斜視図である。
パチンコ機100は、外枠102と、本体104と、前面枠扉106と、球貯留皿付扉108と、発射装置110と、遊技盤200と、をその前面(遊技者側)に備える。
外枠102は、遊技機設置営業店に設けられた設置場所(島設備等)へと固定させるための縦長方形状から成る木製の枠部材である。
本体104は、外枠102の内部に備えられ、施錠機能付きで且つ、ヒンジ部112を介して外枠102に回動自在に装着された縦長方形状の遊技機基軸体となる扉部材である。また、本体104は、枠状に形成され、内側に空間部114を有している。このパチンコ機100を設置した店舗(遊技店)の店員は、この本体104を開閉操作することが可能であり、本体104が開いたことを検出する本体開放センサ1041が設けられている。
前面枠扉106は、施錠機能付きで且つ開閉自在となるようにパチンコ機100の前面側となる本体104の前面に対しヒンジ部112を介して装着され、枠状に構成されることでその内側を開口部116とした扉部材である。遊技店の店員は、この前面枠扉106も開閉操作することが可能であり、前面枠扉106が開いたことを検出する前面枠扉センサ1061も設けられている。なお、この前面枠扉106には、開口部116にガラス製又は樹脂製の透明板部材118が設けられ、前面側には、スピーカ120や枠ランプ122が取り付けられている。前面枠扉106の後面と遊技盤200の前面とで遊技領域124が設けられる空間を区画形成する。なお、本実施形態では、光源をLEDとするものもランプと称する。
球貯留皿付扉108は、パチンコ機100の前面において本体104の下側に対して、施錠機能付きで且つ開閉自在となるように装着された扉部材である。この球貯留皿付扉108は、前面枠扉106を開放した状態で操作可能となる開放レバー1081を押すことによって開く。また、球貯留皿付扉108が開いたことを検出する球貯留皿付扉センサ1082も設けられている。球貯留皿付扉108は、複数の遊技球(以下、単に「球」と称する場合がある)が貯留可能で且つ発射装置110へと遊技球を案内させる通路が設けられている上皿126と、上皿126に貯留しきれない遊技球を貯留する下皿128と、遊技者の操作によって上皿126に貯留された遊技球を下皿128へと排出させる球抜ボタン130と、遊技者の操作によって下皿128に貯留された遊技球を遊技球収集容器(俗称、ドル箱)へと排出させる球排出レバー132と、遊技者の操作によって発射装置110へと案内された遊技球を遊技盤の遊技領域124へと打ち出す球発射ハンドル134と、遊技者の操作によって各種演出装置206(図2参照)の演出態様に変化を与えるチャンスボタン136と、チャンスボタン136に内蔵され、そのチャンスボタン136を発光させるチャンスボタンランプ138と、遊技店に設置されたカードユニット(CRユニット)に対して球貸し指示を行う球貸操作ボタン140と、カードユニットに対して遊技者の残高の返却指示を行う返却操作ボタン142と、遊技者の残高やカードユニットの状態を表示する球貸表示部144と、を備える。また、図1に示すパチンコ機100には、下皿128が遊技球によって満タンになったことを検知する下皿満タン検知センサ(不図示)が設けられている。
発射装置110は、本体104の下方に取り付けられ、球発射ハンドル134が遊技者に操作されることによって回動する発射杆146と、遊技球を発射杆146の先端で打突する発射槌148と、を備える。この発射装置110は、遊技者に球発射ハンドル134が継続的に発射操作されている間は、所定の発射期間(例えば0.6秒)の経過ごとに遊技球を遊技盤の遊技領域124へ向けて発射する。
遊技盤200は、前面に遊技領域124を有し、本体104の空間部114に臨むように、所定の固定部材を用いて本体104に着脱自在に装着されている。遊技領域124は、遊技盤200を本体104に装着した後、開口部116から観察することができる。なお、図1では遊技領域124の具体的構成は図示省略してあり、その具体的構成は図3に示す。
図2は、図1のパチンコ機100を背面側から見た外観図である。
パチンコ機100の背面上部には、上方に開口した開口部を有し、遊技球を一時的に貯留するための球タンク150と、この球タンク150の下方に位置し、球タンク150の底部に形成した連通孔を通過して落下する球を背面右側に位置する払出装置152に導くためのタンクレール154とを配設している。
払出装置152は、筒状の部材からなり、その内部には、不図示の払出モータとスプロケットと払出センサとを備えている。この払出装置152は、着脱自在なものであり、所定位置に装着されると、タンクレール154の下流端に接続する。
スプロケットは、払出モータによって回転可能に構成されており、タンクレール154を通過して払出装置152内に流下した遊技球を一時的に滞留させると共に、払出モータを駆動して所定角度だけ回転することにより、一時的に滞留した遊技球を払出装置152の下方へ1個ずつ送り出すように構成している。すなわち、払出装置152は、遊技球に駆動力を与えてその遊技球を搬送する球送り装置の一種である。
払出センサは、スプロケットが送り出した遊技球の通過を検知するためのセンサであり、遊技球が通過しているときにハイまたはローの何れか一方の信号を、遊技球が通過していないときはハイまたはローの何れか他方の信号を払出制御部600へ出力する。この払出センサを通過した遊技球は、不図示の球レールを通過してパチンコ機100の前面側に配設した上皿126に到達するように構成しており、パチンコ機100は、所定の付与条件が成立したことに基づいて遊技者にその付与条件に応じた量の遊技価値(遊技球)をこの構成により付与する(払い出す)。
払出装置152の図中左側には、遊技全般の制御処理を行う主制御部300(図4参照)を構成する主基板156を収納する主基板ケース158、主制御部300が生成した処理情報に基づいて演出に関する制御処理を行う第1副制御部400(図4参照)を構成する第1副基板160を収納する第1副基板ケース162、第1副制御部400が生成した処理情報に基づいて演出に関する制御処理を行う第2副制御部500(図4参照)を構成する第2副基板164を収納する第2副基板ケース166、遊技球の払出に関する制御処理を行う払出制御部600(図4参照)を構成するとともに遊技店員の操作によってエラーを解除するエラー解除スイッチ168を備える払出基板170を収納する払出基板ケース172、遊技球の発射に関する制御処理を行う発射制御部630(図4参照)を構成する発射基板174を収納する発射基板ケース176、各種電気的遊技機器に電源を供給する電源管理部660(図4参照)を構成するとともに遊技店員の操作によって電源をオンオフする電源スイッチ178と電源投入時に操作されることによってRAMクリア信号を主制御部300に出力するRAMクリアスイッチ180とを備える電源基板182を収納する電源基板ケース184、および払出制御部600とカードユニットとの信号の送受信を行うCRインターフェース部186を配設している。
図3は、遊技盤200を正面から見た略示正面図である。
遊技盤200には、外レール202と内レール204とを配設し、遊技球が転動可能な遊技領域124を区画形成している。
遊技領域124の略中央には、演出装置206を配設している。この演出装置206には、略中央に装飾図柄表示装置208を配設し、その周囲に、普通図柄表示装置210と、第1特別図柄表示装置212と、第2特別図柄表示装置214と、普通図柄保留ランプ216と、第1特別図柄保留ランプ218と、第2特別図柄保留ランプ220と、高確中ランプ222を配設している。なお、以下、普通図柄を「普図」と称する場合があり、特別図柄、第1特別図柄、第2特別図柄のうちの一つまたは複数を「特図」と称する場合がある。
演出装置206は、演出可動体224を動作して演出を行うものであり、詳細については後述する。
装飾図柄表示装置208は、装飾図柄ならびに演出に用いる様々な表示を行うための表示装置であり、本実施形態では液晶表示装置(Liquid Crystal Display)によって構成する。この装飾図柄表示装置208は、左図柄表示領域208a、中図柄表示領域208b、右図柄表示領域208cおよび演出表示領域208dの4つの表示領域に分割し、左図柄表示領域208a、中図柄表示領域208bおよび右図柄表示領域208cはそれぞれ異なった装飾図柄を表示し、演出表示領域208dは演出に用いる画像を表示する。さらに、各表示領域208a、208b、208c、208dの位置や大きさは、装飾図柄表示装置208の表示画面内で自由に変更することを可能としている。なお、装飾図柄表示装置208として液晶表示装置を採用しているが、液晶表示装置でなくとも、種々の演出や種々の遊技情報を表示可能に構成されていればよく、例えば、ドットマトリクス表示装置、7セグメント表示装置、有機EL(ElectroLumineS3ence)表示装置、リール(ドラム)式表示装置、リーフ式表示装置、プラズマディスプレイ、プロジェクタを含む他の表示デバイスを採用してもよい。
普図表示装置210は、普図の表示を行うための表示装置であり、本実施形態では7セグメントLEDによって構成する。第1特図表示装置212および第2特図表示装置214は、特図の表示を行うための表示装置であり、本実施形態では7セグメントLEDによって構成する。これらの第1特図表示装置212および第2特図表示装置214は、所定の図柄表示手段である。なお、装飾図柄表示装置208に表示される装飾図柄は、第1特図表示装置212や第2特図表示装置214に表示される図柄を、演出を高めた形で表す図柄であり、装飾図柄表示装置208も、所定の図柄表示手段としてもよい。
普図保留ランプ216は、保留している所定の第1の変動遊技(詳細は後述する普図変動遊技)の数を示すためのランプであり、本実施形態では、普図変動遊技を所定数(例えば、4つ)まで保留することを可能としている。
第1特図保留ランプ218および第2特図保留ランプ220は、保留している所定の第2の変動遊技(詳細は後述する特図変動遊技)の数を示すためのランプであり、本実施形態では、特図変動遊技を所定数(例えば、4つ、第1特図用と第2特図用を合わせると8つ)まで保留することを可能としている。ここにいう保留とは、後述する始動情報に基づく各種判定処理(抽選処理等)の開始を保留することを意味する。
高確中ランプ222は、現在の図柄制御状態を示す報知を行なうためのランプ(報知手段)である。この高確中ランプ222は、電源が投入されてから大当り遊技の開始まで、現在の図柄制御状態を示す報知を行ない、それ以降は、現在の図柄制御状態を示す報知をしないように構成している。また図柄制御状態では、電源が再投入された場合には、電源が遮断される直前の図柄制御状態に復帰する。この図柄制御状態については後述するが、ここでの図柄制御状態として、通常状態、時短状態(電サポ状態)、および確変状態のうちのいずれの状態としてもよいし、特図確変ありの状態および特図確変なしの状態のうちの一方の状態としてもよい。
なお、本明細書では制御状態という遊技台(パチンコ機100)の内部における状態をさす文言を用いて説明するが、この制御状態という文言にはいわゆる遊技状態の概念が含まれる。
また、この演出装置206の周囲には、一般入賞口226と、普図始動口228と、第1特図始動口230と、第2特図始動口232と、可変入賞口234を配設している。
一般入賞口226は、本実施形態では遊技盤200に複数配設しており、この一般入賞口226への入球を所定の球検出センサ(図示省略)が検出した場合(一般入賞口226に入賞した場合)、図2に示す払出装置152を駆動し、所定の個数(例えば、10個)の球を賞球として図1に示す上皿126に排出する。上皿126に排出した球は遊技者が自由に取り出すことが可能であり、これらの構成により、入賞に基づいて賞球を遊技者に払い出すようにしている。なお、一般入賞口226に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。本実施形態では、入賞の対価として遊技者に払い出す球を「賞球」、遊技者に貸し出す球を「貸球」と区別して呼ぶ場合があり、「賞球」と「貸球」を総称して「球(遊技球)」と呼ぶ。
普図始動口228は、ゲートやスルーチャッカーと呼ばれる、遊技領域124の所定の領域を球が通過したか否かを判定するための装置で構成しており、本実施形態では遊技盤200の左側に1つ配設している。普図始動口228を通過した球は一般入賞口226に入球した球と違って、遊技島側に排出することはない。球が普図始動口228を通過したことを所定の球検出センサが検出した場合、パチンコ機100は、普図表示装置210による普図変動遊技を開始する。
第1特図始動口230は、本実施形態では遊技盤200の中央に1つだけ配設している。この第1特図始動口230は、遊技球が進入する入り口の大きさが変化しない第一の始動領域である。第1特図始動口230への入球を所定の球検出センサが検出した場合、図2に示す払出装置152を駆動し、所定の個数(例えば、3個)の球を賞球として上皿126に排出するとともに、第1特図表示装置212による特図変動遊技を開始する。なお、第1特図始動口230に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。この第1特図始動口230は、始動領域の一つであり、自身の大きさが変化しない固定始動領域の一例に相当する。
第2特図始動口232は、本実施形態では普図始動口228の下側に1つだけ配設している。すなわち、第2特図始動口232は、遊技盤200の右側に設けられている。この第2特図始動口232の近傍には、ソレノイドによって左右に開閉自在な一対の羽根部材2321が設けられており、一対の羽根部材2321と第2特図始動口232を併せたものが、可変始動手段に相当し、一般には、電動チューリップ(電チュー)と呼ばれる。一対の羽根部材2321は、第2特図始動口232への入賞の難易度を変更する部材である。すなわち、一対の羽根部材2321が閉じたままでは第2特図始動口232への入球は不可能であり、一対の羽根部材2321が閉じた態様は入賞困難な開閉態様である。一方、普図変動遊技に当選し、普図表示装置210が当り図柄を停止表示した場合に一対の羽根部材2321が所定の時間間隔、所定の回数で開閉し、第2特図始動口232への球の入球が可能(入賞容易状態)になり、一対の羽根部材2321が開いた開状態は入賞容易な状態である。すなわち、第2特図始動口232は、入り口(遊技球の進入口)の大きさが小サイズ(第1の大きさに相当)と大サイズ(第2の大きさに相当)のうちのいずれか一方のサイズからいずれか他方のサイズに変化する、遊技球の進入のしやすさが可変の可変始動領域であって、第二の始動領域の一例に相当する。この大サイズの大きさは、第1特図始動口230の入り口の大きさよりも大きい。一対の羽根部材2321が開いた状態では、遊技領域124に進入した遊技球のうち、固定始動領域である第1特図始動口230に進入する遊技球よりも、可変始動領域である第2特図始動口232に進入する遊技球の方が多い。一方、小サイズの大きさは、第1特図始動口230の入り口の大きさよりも小さいか、あるいは第1特図始動口230の入り口の大きさ以下である。第2特図始動口232への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、4個)の球を賞球として上皿126に排出するとともに、第2特図表示装置214による特図変動遊技を開始する。なお、第2特図始動口232に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
可変入賞口234は、本実施形態では遊技盤200の中央部下方に1つだけ配設している。この可変入賞口234は、可変入賞開口と、ソレノイドによってその可変入賞開口を開閉自在な扉部材2341とを備えている。可変入賞開口は大入賞口と呼ばれることがあり、可変入賞口234はアタッカと呼ばれることがある。扉部材2341は、所定の閉状態およびその閉状態よりも遊技球の、可変入賞開口への進入が容易な開状態のうちのいずれか一方の状態からいずれか他方の状態に状態変更する。閉状態および開状態はともに静止状態であり、閉状態は所定の第1の静止状態であり、本実施形態の可変入賞口234における閉状態は、扉部材2341が遊技盤200の遊技者側の面と一致した静止状態である。一方、開状態は所定の第2の静止状態であり、本実施形態の可変入賞口234における開状態は、扉部材2341が遊技盤200に対して略垂直になるまで遊技者側に回動した静止状態である。可変入賞口234は、後述する大当り遊技が開始されるまでは閉状態を維持し、大当り遊技が開始されると、開状態と閉状態との間で状態変更を繰り返す。なお、閉状態には、完全に閉塞してしる状態の他、遊技球の進入が実質的に不可能な程度に少し開いている状態であってもよい。また、可変入賞口は、遊技球が通過したり入り込んだりすること等によって遊技球の入賞となるものであればよく、図3に示すものに限定されない。特図変動遊技に当選して第1特図表示装置212あるいは第2特図表示装置214が大当り図柄を停止表示した場合に扉部材2341が所定の時間間隔、所定の回数で開閉する。可変入賞口234への入球を所定の球検出センサが検出した場合、払出装置152を駆動し、所定の個数(例えば、15個)の球を賞球として上皿126に排出する。なお、可変入賞口234に入球した球は、パチンコ機100の裏側に誘導した後、遊技島側に排出する。
さらに、これらの入賞口や始動口の近傍には、風車と呼ばれる円盤状の打球方向変換部材236や、遊技釘238を複数個、配設していると共に、内レール204の最下部には、いずれの入賞口や始動口にも入賞しなかった球をパチンコ機100の裏側に誘導した後、遊技島側に排出するためのアウト口240を設けている。
上皿126に収容されている球は発射レールの発射位置に供給される。このパチンコ機100では、遊技者の球発射ハンドル134の操作量に応じた強度で発射モータを駆動し、発射杆146および発射槌148によって外レール202、内レール204を通過させて遊技領域124に打ち出す。そして、遊技領域124の上部に到達した球は、打球方向変換部材236や遊技釘238等によって進行方向を変えながら下方に落下し、入賞口(一般入賞口226、可変入賞口234)や始動口(第1特図始動口230、第2特図始動口232)に入賞するか、いずれの入賞口や始動口にも入賞することなく、または普図始動口228を通過するのみでアウト口240に到達する。
<演出装置206>
次に、パチンコ機100の演出装置206について説明する。
この演出装置206の前面側には、遊技球の転動可能な領域にワープ装置242およびステージ244を配設し、遊技球の転動不可能な領域に演出可動体224を配設している。また、演出装置206の背面側には、装飾図柄表示装置208および遮蔽装置246(以下、扉と称する場合がある)を配設している。すなわち、演出装置206において、装飾図柄表示装置208および遮蔽装置246は、ワープ装置242、ステージ244、および演出可動体224の後方に位置することとなる。
ワープ装置242は、演出装置206の左上方に設けたワープ入口242aに入った遊技球を演出装置206の前面下方のステージ244にワープ出口242bから排出する。
ステージ244は、ワープ出口242bから排出された球や遊技釘238などによって乗り上げた球などが転動可能であり、ステージ244の中央部には、通過した球が第1特図始動口230へ入球し易くなるスペシャルルート244aを設けている。
演出可動体224は、本実施形態では人間の右腕の上腕と前腕を模した上腕部224aと前腕部224bとからなり、肩の位置に上腕部224aを回動させる不図示の上腕モータと肘の位置に前腕部224bを回動させる不図示の前腕モータを備える。演出可動体224は、上腕モータと前腕モータによって装飾図柄表示装置208の前方を移動する。
遮蔽装置246は、格子状の左扉246aおよび右扉246bからなり、装飾図柄表示装置208および前面ステージ244の間に配設する。左扉246aおよび右扉246bの上部には、不図示の2つのプーリに巻き回したベルトをそれぞれ固定している。すなわち、左扉246aおよび右扉246bは、モータによりプーリを介して駆動するベルトの動作に伴って左右にそれぞれ移動する。遮蔽装置246は、左扉246aおよび右扉246bを閉じた状態ではそれぞれの内側端部が重なり、遊技者が装飾図柄表示装置208を視認し難いように遮蔽する。左扉246aおよび右扉246bを開いた状態ではそれぞれの内側端部が装飾図柄表示装置208の表示画面の外側端部と若干重なるが、遊技者は装飾図柄表示装置208の表示の全てを視認可能である。また、左扉246aおよび右扉246bは、それぞれ任意の位置で停止可能であり、例えば、表示した装飾図柄がどの装飾図柄であるかを遊技者が識別可能な程度に、装飾図柄の一部だけを遮蔽するようなことができる。なお、左扉246aおよび右扉246bは、格子の孔から後方の装飾図柄表示装置208の一部を視認可能にしてもよいし、格子の孔の障子部分を半透明のレンズ体で塞ぎ、後方の装飾図柄表示装置208による表示を漠然と遊技者に視認させるようにしてもよいし、格子の孔の障子部分を完全に塞ぎ(遮蔽し)、後方の装飾図柄表示装置208を全く視認不可にしてもよい。
図1に示すスピーカ120や枠ランプ122等の装飾ランプ、図3に示す装飾図柄表示装置208、演出可動体224、および遮蔽装置246は、演出手段に相当し、これらの中でも装飾図柄表示装置208は演出表示手段の一例に相当する。
<制御部>
次に、図4を用いて、このパチンコ機100の制御部の回路構成について詳細に説明する。なお、同図は制御部の回路ブロック図を示したものである。
パチンコ機100の制御部は、大別すると、遊技の中枢部分を制御する主制御部300と、主制御部300が送信するコマンド信号(以下、単に「コマンド」と呼ぶ)に応じて主に演出の制御を行う第1副制御部400と、第1副制御部400より送信されたコマンドに基づいて各種機器を制御する第2副制御部500と、主制御部300が送信するコマンドに応じて主に遊技球の払い出しに関する制御を行う払出制御部600と、遊技球の発射制御を行う発射制御部630と、パチンコ機100に供給される電源を制御する電源管理部660と、によって構成している。本実施形態では、主制御部300、第1副制御部400および第2副制御部500はそれぞれ別の回路基板からなるものであるが、これら3つの制御部(300,400,500)は、共通の一つの回路基板からなるものであってもよいし、第1副制御部400と第2副制御部500が、主制御部300の回路基板とは別の共通の一つの回路基板からなるものであってもよい。したがって、主制御部300、第1副制御部400および第2副制御部500それぞれを所定の制御手段ととらえることもできるし、これら3つの制御部(300,400,500)を併せた一つのものを所定の制御手段ととらえることもできるし、第1副制御部400および第2副制御部500を併せた一つのものを所定の制御手段ととらえることもできる。
<主制御部>
まず、パチンコ機100の主制御部300について説明する。
主制御部300は、主制御部300の全体を制御する基本回路302を備えており、この基本回路302には、CPU304(本発明の遊技制御手段、異常対応処理手段の一例に相当)と、制御プログラムや各種データを記憶するためのROM306と、一時的にデータを記憶するためのRAM308(本発明の記憶手段の一例に相当)と、各種デバイスの入出力を制御するためのI/O310と、リアルタイム割り込みや時間計測等を行うためのタイマ回路311と、時間や回数等を計測するためのカウンタ回路312と、後述するシステムリセットとユーザリセットを制御するリセット制御回路314(本発明の異常検出手段の一例に相当)と、水晶発振器316aを搭載している。なお、ROM306やRAM308については他の記憶装置を用いてもよい。また、ROM306には所定情報等を表す各種のデータがアドレスごとに格納されており、以降の説明でテーブルというときには、ROM306内のいずれのアドレスを指定するかを決定するための条件を表形式にまとめたものをさす場合がある。これらの点は後述する第1副制御部400や第2副制御部500についても同様である。この基本回路302のCPU304は、水晶発振器316bが出力する所定周期のクロック信号をシステムクロックとして入力して動作する。
また、基本回路302には、本体開放センサ1041、前面枠扉センサ1061、球貯留皿付扉センサ1082、および図1に示す下皿128が遊技球によって満タンになったことを検知する下皿満タン検知センサや、各始動口、入賞口の入り口および可変入賞口の内部に設けた球検出センサを含む各種センサ320が出力する信号を受信し、増幅結果や基準電圧との比較結果を乱数生成回路318および基本回路302に出力するためのセンサ回路322と、第1特図表示装置212や第2特図表示装置214の表示制御を行うための駆動回路324と、普図表示装置210の表示制御を行うための駆動回路326と、各種状態表示部328(例えば、普図保留ランプ216、第1特図保留ランプ218、第2特図保留ランプ220、高確中ランプ222等)の表示制御を行うための駆動回路330と、第2特図始動口232や可変入賞口234等を開閉駆動する各種ソレノイド332を制御するための駆動回路334を接続している。
乱数生成回路318は、基本回路302で使用する乱数を生成する。この乱数生成回路318における乱数の生成には、大別するとカウンタモードと乱数モードとの2種類の方法がある。カウンタモードでは、所定の時間間隔でカウントアップ(ダウン)する数値を取得して、その数値を乱数として導出する。乱数モードには、さらに2つの方法がある。乱数モードにおける一つ目の方法は、乱数の種を用いて所定関数(例えばモジュラス関数)による演算を行い、この演算結果を乱数として導出する。二つ目の方法は、0〜65535の範囲の数値がランダムに配列された乱数テーブルから数値を読み出し、その読み出した数値を乱数として導出する。乱数生成回路318では、各種センサ320からセンサ回路322に入力される信号に重畳しているホワイトノイズを利用して不規則な値を取得する。乱数生成回路318は、こうして取得した値を、カウンタモードでカウントアップ(ダウン)させるカウンタの初期値として用いたり、乱数の種として用いたり、あるいは乱数テーブルの読み出し開始位置を決定する際に用いる。さらに、本実施形態では、生成する乱数の最大値を変更することにより、生成する乱数の範囲を変更できるように構成されている。この内容については後述する。
なお、第1特図始動口230に球が入賞したことを、各種センサ320のうちの球検出センサが検出した場合には、センサ回路322は球を検出したことを示す信号を乱数生成回路318に出力する。この信号を受信した乱数生成回路318は、第1特図始動口230に対応する乱数生成回路のそのタイミングにおける値をラッチし、ラッチした値を、乱数生成回路318に内蔵された、第1特図始動口230に対応する乱数記憶用レジスタに記憶する。また、乱数生成回路318は、第2特図始動口232に球が入賞したことを示す信号を受信した場合も同様に、第2特図始動口232に対応する乱数生成回路のそのタイミングにおける値をラッチし、ラッチした値を、乱数生成回路318に内蔵された、第2特図始動口232に対応する乱数記憶用レジスタに記憶する。さらに、乱数生成回路318は、普図始動口228に球が入賞したことを示す信号を受信した場合も同様に、普図始動口228に対応する乱数生成回路のそのタイミングにおける値をラッチし、ラッチした値を、乱数生成回路318に内蔵された、普図始動口228に対応する乱数記憶用レジスタに記憶する。
また、この明細書にいう球検出センサとしては、具体的には、一般入賞口226、第1特図始動口230、第2特図始動口232、可変入賞口234など所定の入賞口に入賞した球を検出するセンサや、普図始動口228を通過する球を検出するセンサがあげられる。
さらに、基本回路302には、情報出力回路336を接続しており、主制御部300は、この情報出力回路336を介して、外部のホールコンピュータ(図示省略)等が備える情報入力回路350にパチンコ機100の遊技情報(例えば、制御状態を表す情報等)を出力する。
また、主制御部300には、電源管理部660から主制御部300に供給している電源の電圧値を監視する電圧監視回路338を設けており、この電圧監視回路338は、電源の電圧値が所定の値(本実施形態では9v)未満である場合に電圧が低下したことを示す低電圧信号を基本回路302に出力する。低電圧信号は、主制御部300のCPU304を動作させるための電気系統に異常があることを表す電気系統異常信号であり、電圧監視回路338は電気系統異常信号出力手段の一例に相当する。
また、主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けており、CPU304は、この起動信号出力回路340から起動信号を入力した場合に、遊技制御を開始する(後述する主制御部メイン処理を開始する)。主制御部300のCPU304は、遊技制御手段の一例に相当する。
また、主制御部300は、第1副制御部400にコマンドを送信するための出力インタフェースと、払出制御部600にコマンドを送信するための出力インタフェースをそれぞれ備えており、この構成により、第1副制御部400および払出制御部600との通信を可能としている。なお、主制御部300と第1副制御部400および払出制御部600との情報通信は一方向の通信であり、主制御部300は第1副制御部400および払出制御部600にコマンド等の信号を送信できるように構成しているが、第1副制御部400および払出制御部600からは主制御部300にコマンド等の信号を送信できないように構成している。
<副制御部>
次に、パチンコ機100の第1副制御部400について説明する。第1副制御部400は、主に主制御部300が送信したコマンド等に基づいて第1副制御部400の全体を制御する基本回路402を備えており、この基本回路402には、CPU404と、一時的にデータを記憶するためのRAM408と、各種デバイスの入出力を制御するためのI/O410と、時間や回数等を計測するためのカウンタタイマ412を搭載している。この基本回路402のCPU404は、水晶発振器414が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。また、基本回路402には、制御プログラムや各種演出データを記憶するためのROM406が接続されている。なお、ROM406は、制御プログラムと各種演出データとを別々のROMに記憶させてもよい。
また、基本回路402には、スピーカ120(およびアンプ)の制御を行うための音源IC416と、各種ランプ418の制御を行うための駆動回路420と、演出可動体224の駆動制御を行うための駆動回路422と、演出可動体224の現在位置を検出する演出可動体センサ424と、図1に示すチャンスボタン136の押下を検出するチャンスボタン検出センサ426と、演出可動体センサ424やチャンスボタン検出センサ426からの検出信号を基本回路402に出力するセンサ回路428と、を接続している。
さらに、第1副制御部400には、装飾図柄表示装置(液晶表示装置)208および遮蔽装置246の制御を行うための第2副制御部500が接続されている。
第1副制御部400と第2副制御部500を併せた副制御手段は、遊技制御手段である主制御部300からの指令信号を受信し、受信した指令信号に基づいて、装飾図柄表示装置208等の演出手段を制御する。
<払出制御部、発射制御部、電源管理部>
次に、パチンコ機100の払出制御部600、発射制御部630、電源管理部660について説明する。
払出制御部600は、主に主制御部300が送信したコマンド等の信号に基づいて図2に示す払出装置152の払出モータ602を制御すると共に、払出センサ604が出力する制御信号に基づいて賞球または貸球の払い出しが完了したか否かを検出すると共に、インタフェース部606を介して、パチンコ機100とは別体で設けられたカードユニット608との通信を行う。
発射制御部630は、払出制御部600が出力する、発射許可または停止を指示する制御信号や、球発射ハンドル134内に設けた発射強度出力回路が出力する、遊技者による球発射ハンドル134の操作量に応じた発射強度を指示する制御信号に基づいて、図1に示す発射杆146および発射槌148を駆動する発射モータ632の制御や、上皿126から発射装置110に球を供給する球送り装置634の制御を行う。
電源管理部660は、パチンコ機100に外部から供給される交流電源を直流化し、所定の電圧に変換して払出制御部600と第2副制御部500に所定電圧を供給する。主制御部300、第1副制御部400、および発射制御部630は、払出制御部600から所定電圧の供給を受ける。また、電源管理部660は、外部からの電源が断たれた後も所定の部品(例えば主制御部300のRAM308等)に所定の期間(例えば10日間)電源を供給するための蓄電回路(例えば、コンデンサ)を備えている。なお、本実施形態では、電源管理部660から払出制御部600と第2副制御部500に所定電圧を供給し、払出制御部600から主制御部300と第1副制御部400と発射制御部630に所定電圧を供給しているが、各制御部や各装置に他の電源経路で所定電圧を供給してもよい。
<図柄の種類>
次に、図5(a)〜(c)を用いて、パチンコ機100の第1特図表示装置212、第2特図表示装置214、装飾図柄表示装置208、普通図柄表示装置210が停止表示する特図および普図の種類について説明する。
図5(a)は特図の停止図柄態様(第1の図柄態様)の一例を示したものである。第1特図始動口230に球が入球したことを球検出センサである第1始動口センサが検出したことを条件として特図1変動遊技が開始され、第2特図始動口232に球が入球したことを球検出センサである第2始動口センサが検出したことを条件として特図2変動遊技が開始される。特図1変動遊技が開始されると、第1特別図柄表示装置212は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「特図1の変動表示」(特図変動遊技)を行う。また、特図2変動遊技が開始されると、第2特別図柄表示装置214は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「特図2の変動表示」(特図変動遊技)を行う。そして、特図1の変動開始前に決定した変動時間が経過すると、第1特別図柄表示装置212は特図1の停止図柄態様を停止表示し、特図2の変動開始前に決定した変動時間が経過すると、第2特別図柄表示装置214は特図2の停止図柄態様を停止表示する。以下、この「特図1又は2の変動表示」を開始してから特図1又は2の停止図柄態様を停止表示するまでの一連の表示を特図の変動表示と称することがある。この特図の変動表示は複数回、連続して行われることがある。
図5(a)には、図柄変動表示における停止図柄態様として「特図A」から「特図J」の10種類の特図が示されている。図5(a)においては、図中の白抜きの部分が消灯するセグメントの場所を示し、黒塗りの部分が点灯するセグメントの場所を示している。
本実施形態では、特図の停止図柄態様として、6種類の大当り図柄(「特図A」から「特図F」)が用意されている。「特図A」は15ラウンド(R)特別大当り図柄であり、「特図C」は2R特別大当り図柄であって、突然確変と称される。これらの図柄(特図A,C)が停止表示されるとその後、制御状態は特図高確率普図高確率状態になる。「特図B」は15R大当り図柄であり、「特図D」は2R大当り図柄であって、突然時短と称される。特図Bまたは特図Dが停止表示されるとその後、制御状態は特図低確率普図高確率状態になる。「特図E」は、隠れ確変と称される2R大当り図柄であり、「特図F」は突然通常と称される2R大当り図柄である。特図Eが停止表示されるとその後、制御状態は特図高確率普図低確率状態になる。特図Fが停止表示されるとその後、制御状態は特図低確率普図低確率状態になる。
ここにいうラウンドとは、所定量の遊技価値(所定球数)を獲得することができるチャンスの回数をいう。本実施形態では、図3に示す可変入賞口234の作動回数を表すものであり、15ラウンドとは、可変入賞口234の1または複数回の開閉動作を1回(1回の作動)として、この作動が15回続くことを意味する。すなわち、1回の作動が、開閉状態が第1の開閉状態(ここでは閉状態)から第2の開閉状態(ここでは開状態)に変化する特定変化の一例に相当し、可変入賞口234は、大当り遊技中に、この特定変化を複数の定数回(15ラウンドの場合であれば15回)行うものである。各ラウンドは所定のラウンド終了条件(例えば所定球数(一例として10球)の遊技球の進入、所定量の遊技価値(所定球数)の獲得、ラウンド開始から所定時間の経過などのうちのうちの1または複数)が成立することにより終了する。本実施形態のパチンコ機100では、後述するように、特図変動遊技における大当りか否かの決定はハードウェア乱数の抽選によって行い、特別大当りか否かの決定はソフトウェア乱数の抽選によって行う。大当りと、特別大当りあるいは時短大当りとの違いは、次回の特図変動遊技で、大当りに当選する確率が高い(特別大当りあるいは時短大当り)か低い(大当り)かの違いである。以下、この大当りに当選する確率が高い状態のことを特図高確率状態と称し、その確率が低い状態のことを特図低確率状態と称する。本実施形態では、大当り遊技中には特図低確率状態へ移行し、特図A、特図C、および特図Eに当選した場合には、大当り遊技終了後、次に大当りするまで特図高確率状態が維持される。一方、特図B、特図D、および特図Fに当選した場合には、大当り遊技終了後も特図低確率状態のままである。特図低確率状態は第1の確率制御状態の一例に相当する。また、大当り遊技終了後に特図高確率状態になることを特図確変と称することもあり、大当り遊技終了後に大当りに当選する確率が高くなっている状態(特図高確率状態)は、遊技者の有利度が高くなる制御状態であって第2の確率制御状態の一例に相当する。この特図高確率状態を確変状態と称することがある。なお、本明細書では制御状態という遊技台(パチンコ機100)の内部における状態をさす文言を用いて説明するが、この制御状態という文言にはいわゆる遊技状態の概念が含まれる。この確率制御状態の移行は主制御部300が行い、主制御部300は、確率制御状態移行手段の一例に相当する。
また、特図A〜Dに当選すると、いずれも大当り遊技終了後、電チューサポート(電サポ)有りの状態(以下、電サポ状態と称する)に移行する。電サポ状態とは、特図変動遊技における大当りを終了してから、次の大当りを開始するまでの時間を短くする等して、遊技者の有利度が非電サポ状態より高い所定状態のことをいう。この電サポ状態は、このパチンコ機100に用意された制御状態の一つであり、時短状態と称されることもある。すなわち、電サポ状態(時短状態)は、大当り遊技の終了を条件に開始される。なお、厳密にいえば、「電サポ状態」はあくまでも普図がらみの状態であり、「時短状態」は特図がらみの状態または普図および特図がらみの状態である。主制御部300のRAM308には時短フラグも用意されており、時短フラグがオンに設定されていると、電サポ状態であり、普図高確率状態である。普図高確率状態では普図低確率状態に比べて、普図変動遊技に当選しやすくなる(普図確変)。例えば、普図変動遊技の当選確率が、普図低確率状態(非電サポ状態)では1/101であるのに対し、普図高確率状態(電サポ状態)では99/101に上昇する。また、電サポ状態の方が、非電サポ状態に比べて普図変動遊技の変動時間は短くなる(普図変短)。例えば、非電サポ状態では10秒の普図変動遊技の変動時間が電サポ状態では1.2秒に短縮される。また、電サポ状態では、非電サポ状態に比べて、第2特図始動口232の一対の羽根部材2321の1回の開放における開放時間が長くなりやすい(電チュー開放期間延長)。例えば、非電サポ状態では0.3秒の電チュー開放期間が電サポ状態では1.7秒に延長される。さらに、電サポ状態では非電サポ状態に比べて、一対の羽根部材2321は多く開きやすい(電チュー開放回数増加)。例えば、普図始動口228への1回の入賞につき非電サポ状態では1回しか開かない一対の羽根部材2321が、電サポ状態では3回開く(例えば、1.7秒開放することを3回繰り返し、開放と開放の間の閉鎖時間は1.6秒)。電チュー開放期間延長や電チュー開放回数増加により、第2特図始動口232に入球する確率が高まる。なお、時短フラグは、大当り遊技中にはオフに設定される。したがって、大当り遊技中には、非電サポ状態が維持される。これは、大当り遊技中に電サポ状態であると、大当り遊技中に可変入賞口234に所定の個数、遊技球が入球するまでの間に第2特図始動口232に多くの遊技球が入球し、大当り中に獲得することができる遊技球の数が多くなってしまい射幸性が高まってしまうという問題があり、これを解決するためのものである。なお、本実施形態では、電サポ状態(時短状態)では、普図確変、普図変短、電チュー開放期間延長、および電チュー開放回数増加の総てが行われるが、これらのうちの少なくともいずれか一つが行われれば、遊技者の有利度が高い状態になり、電サポ状態(時短状態)としてもよい。あるいは、第2特図始動口232に入球する確率が高まる、電チュー開放期間延長または電チュー開放回数増加のうちのいずか一方が行われれば、電サポ状態(時短状態)としてもよい。非電サポ状態では、電サポ状態よりも遊技球が第2特図始動口232に進入し難い。上述のごとく、第2特図始動口232は、遊技球が進入する入り口の大きさが小サイズと大サイズのうちのいずれか一方のサイズからいずれか他方のサイズに変化するものである。この第2特図始動口232は、入り口が、電サポ状態では非電サポ状態よりも長期間にわたって大サイズである。本実施形態では、特図Aおよび特図Cが停止表示されると、その後に行われる大当り遊技終了後、次に大当り遊技が開始されるまで電サポ状態(普図高確率状態)が維持され、特図Bおよび特図Dが停止表示されると、その後に行われる大当り遊技終了後、特図変動遊技が100回行われる間、電サポ状態が維持され、101回目には非電サポ状態(普図低確率状態)に移行する。一方、電サポ無しの大当り(特図E,特図F)に当選した場合には、大当たり遊技終了後に電サポ状態に移行しない。非電サポ状態では、第2特図始動口232は、入り口が小サイズに維持される。一方、上述のごとく、電サポ状態では、第2特図始動口232は、入り口が大サイズになり、遊技球の進入率が高められる。すなわち、非電サポ状態では、遊技球が可変始動領域である第2特図始動口232に第1の進入率で進入するのに対して、電サポ状態では、遊技球が第2特図始動口232に上記第1の進入率よりも進入率が高い第2の進入率で進入する。したがって、非電サポ状態が第一の進入率制御状態の一例に相当し、電サポ状態が第二の進入率制御状態の一例に相当する。
さらに、本実施形態では、大当り図柄の他に小当り図柄として2種類の停止図柄が用意されている。図5(a)に示す、特図Gは第1小当り図柄であり、特図Hは第2小当り図柄である。小当り遊技では、可変入賞口234の扉部材2341が所定回(例えば15回)作動し、その扉部材2341は、1回の作動につき開状態を最大で1.5秒間しか維持しない。小当りにおける扉部材2341の開放では、例えば、1回目の開放で、遊技球が所定球数(例えば10球)進入してしまうと、あるいは所定量の遊技価値(所定球数)を獲得してしまうと、2回目以降の開放は行われない。小当り遊技中には、特図低確率普図低確率状態へ移行する。小当りは、小当り遊技前後で制御状態が変化しない役であり、小当り遊技終了後には小当り遊技開始前の制御状態に復帰する。
大当り遊技および小当り遊技では、可変入賞口234の扉部材2341が1または複数回の開閉動作を行い、遊技者の有利度が相対的に高い状態になる。
また、本実施形態では、ハズレ図柄も2種類用意されている。図5(a)に示す、特図Iは第1ハズレ図柄であり、特図Jは第2ハズレ図柄である。ハズレ図柄が停止表示されると、可変入賞口234の扉部材2341は開閉動作を行わず、遊技者の有利度が相対的に低い状態になる。なお、「特図I」と「特図J」以外のハズレ図柄(例えば、第3のハズレ図柄等)をさらに用意しておいてもよく、本実施形態ではハズレ図柄は複数種類の図柄を含むものである。
以上説明したように、本実施形態のパチンコ機100では、遊技者の有利度が高い第2の有利度の当り制御状態(大当り制御状態および小当り制御状態)と、第2の有利度よりは有利度が低い第1の有利度のハズレ制御状態とが用意され、パチンコ機100は当り制御状態(第二の制御状態)とハズレ制御状態(第一の制御状態)のうちのいずれか一方の制御状態をとる。これらの制御状態の移行も主制御部300のCPU304が行い、主制御部300のCPU304は、制御状態移行手段の一例にも相当する。なお、小当り制御状態は、可変入賞口234の扉部材2341が開閉動作を行うものの、可変入賞口234への入球はほとんど期待することができないため、小当り制御状態を上記第1の有利度の制御状態(第一の制御状態)ととらえることもできる。
なお、本実施形態のパチンコ機100には、大当り図柄1として「特図A」以外の図柄も用意されており、大当り図柄2等の他の図柄についても同様である。
第1特図表示装置212および第2特図表示装置214は、当否判定結果(抽選結果)を報知する報知手段であって、図柄変動を開始してから当否判定の結果に対応した図柄態様(特図A〜と特図J)を停止表示するまでの図柄変動表示を行う図柄表示手段の一例に相当する。
図5(b)は装飾図柄の一例を示したものである。本実施形態の装飾図柄には、「装飾1」〜「装飾10」の10種類がある。第1特図始動口230または第2特図始動口232に球が入賞したこと、すなわち、第1特図始動口230に球が入球したことを第1始動口センサが検出したこと、あるいは第2特図始動口232に球が入球したことを第2始動口センサが検出したことを条件にして、装飾図柄表示装置208の左図柄表示領域208a、中図柄表示領域208b、右図柄表示領域208cの各図柄表示領域に、「装飾1」→「装飾2」→「装飾3」→・・・・「装飾9」→「装飾10」→「装飾1」→・・・の順番で表示を切り替える「装飾図柄の変動表示」を行う。すなわち、装飾図柄表示装置208は、第1特別図柄表示装置212および第2特別図柄表示装置214とは別に、装飾図柄を変動表示するものである。そして、装飾図柄の組合せである停止図柄態様(第2の図柄態様)を停止表示する。15R特別大当りである「特図A」や2R特別大当りである「特図C」を報知する場合には、図柄表示領域208a〜208cに、同じ奇数の装飾図柄が3つ並んだ“装飾図柄の組合せ2”(例えば「装飾3−装飾3−装飾3」や「装飾5−装飾5−装飾5」等)を停止表示する。15R大当りである「特図B」を報知する場合には、図柄表示領域208a〜208cに、同じ偶数の装飾図柄が3つ並んだ“装飾図柄の組合せ1”(例えば「装飾2−装飾2−装飾2」や「装飾4−装飾4−装飾4」等)を停止表示する。また、隠れ確変である「特図E」や、突然通常である「特図F」や、小当りである「特図G」,「特図H」を報知する場合には、図柄表示領域208a〜208cに、「装飾1−装飾2−装飾3」といった“装飾図柄の組合せ3”を停止表示し、突然確変である「特図C」や、突然時短である「特図D」を報知する場合には、図柄表示領域208a〜208cに、「装飾1−装飾3−装飾5」といった“装飾図柄の組合せ4”を停止表示する。また、ハズレである「特図I」,「特図J」を報知する場合には、図柄表示領域208a〜208cに、“装飾図柄の組合せ1”〜“装飾図柄の組合せ4”以外の装飾図柄の組合せ(例えば、ばらけ目)を停止表示する。以下、装飾図柄表示装置208において、この「装飾図柄の変動表示」を開始してから装飾図柄の停止図柄態様(例えば、“装飾図柄の組合せ2”)を停止表示するまでの一連の表示を装飾図柄の変動表示と称することがある。
なお、特図1や特図2の停止図柄態様(図5(a)参照)と、装飾図柄表示装置208の左中右の各図柄表示領域208a〜cに表示される一つの装飾図柄の停止図柄態様(同図(b)参照)は、装飾図柄(同図(b)参照)の方が大きい。
図5(c)は普図の停止図柄態様(第2の図柄態様)の一例を示したものである。本実施形態の普図の停止表示態様には、当り図柄である「普図A」と、ハズレ図柄である「普図B」の2種類がある。普図始動口228を球が通過したことを球検出センサであるゲートセンサが検出したことに基づいて、普図表示装置210は、7個のセグメントの全点灯と、中央の1個のセグメントの点灯を繰り返す「普図の変動表示」(普図変動遊技)を行う。そして、変動時間が経過した後に、当り図柄である「普図A」とハズレ図柄である「普図B」の内のいずれか一方の図柄を停止表示する。この図5(c)においても、図中の白抜きの部分が消灯するセグメントの場所を示し、黒塗りの部分が点灯するセグメントの場所を示している。
以下、この「普図の変動表示」を開始してから普図の停止図柄態様を停止表示するまでの一連の表示を普図の変動表示と称することがある。普図表示装置210は補助図柄報知手段の一例に相当する。
<主制御部の基本回路の構成例>
次に、図6を用いて、主制御部300の基本回路302の構成例について説明する。同図は、図4に示す基本回路302の構成例を示す図である。
図6に示す基本回路302には、CPU304、ROM(内蔵ROM)306、RAM(内蔵RAM)308、外部バス制御回路3101、パラレル入力ポート3102、アドレスデコード回路3103、タイマ回路311、カウンタ回路312、リセット制御回路314に加え、割込み制御回路3100、クロック回路3200、乱数生成回路318が備えられており、これら全てが内部バス3300を介して互いに接続されている。
なお、外部バス制御回路3101、パラレル入力ポート3102、アドレスデコード回路3103の3つが、図4のI/O310に相当するものである。
以下、上記説明した各部の詳細について説明する。
まず、CPU304、ROM306、RAM308については、図4にて説明した通りである。
外部バス制御回路3101は、IOリクエスト端子(XIORQ端子)、メモリリクエスト端子(XMREQ端子)、リード信号端子(XRD端子)、ライト信号端子(XWR端子)、16ビット幅のアドレス出力端子(A0端子〜A15端子)、および8ビット幅の入出力端子であるデータ入出力端子(D0端子〜D7端子)を有する。本実施形態では、このうちデータ入出力端子(D0端子〜D7端子)は、図4に示す各駆動回路324,326,330,334へのデータ出力と、各周辺制御回路からのデータ入力に用いられている。このデータ入出力端子(D0端子〜D7端子)によるデータの入出力先は、アドレス出力端子(A0端子〜A15端子)から出力されるアドレス信号、およびアドレスデコード回路3103から出力されるチップセレクト信号を用いて切り替えられる。
パラレル入力ポート3102は、4つの入力端子(P0端子〜P3端子)を有する。これらの入力端子(P0端子〜P3端子)は、図4に示すセンサ回路322に接続されており、センサ回路322からの信号の入力に用いられている。本実施形態では、第1特図始動口230への入球を検出する球検出センサからの信号がP0端子に入力され、第2特図始動口232への入球を検出する球検出センサからの信号がP1端子に入力され、普図始動口228への入球を検出する球検出センサからの信号がP2端子に入力される。また、センサ回路322からの信号は、乱数生成回路318が生成する乱数をCPU304に取得させるためのラッチ信号として、乱数生成回路318に出力する。この動作については後述する。
アドレスデコード回路3103は、14の出力端子(XCS0端子〜XCS13端子)を有する。この出力端子(XCS0端子〜XCS13端子)は、基本回路302の外部にある周辺制御回路に接続されており、外部バス制御回路3101のデータ入出力端子(D0端子〜D7端子)から出力されるデータの送信先を切り替えるためのチップセレクト信号等の出力に用いられている。
タイマ回路311は、時間の計測に用いられる。なお、タイマ回路311は設定された計測時間を過ぎると、タイムアウト信号をカウンタ回路312に出力する。一方、カウンタ回路312は、各種信号の立ち上がり(あるいは立ち下がり)の回数の計測に用いられる。このカウンタ回路で計測される信号には、基本回路302のシステムクロックの他、上記タイマ回路からのタイムアウト信号、メモリの読み書き信号、メモリリクエスト信号、外部入出力の信号、割込みに対する応答信号等も計測することができる。
リセット制御回路314は、システムリセット入力端子(XSRST端子)と、リセット出力端子(XRSTO端子)の2つの端子を有する。このシステムリセット入力端子(XSRST端子)は電圧監視回路338に接続されている。このシステムリセット入力端子(XSRST端子)からシステムリセット信号(例えば一定時間Lレベルの信号)が入力されると、リセット制御回路314は、基本回路302の内部の回路に対してこのシステムリセット信号を出力するとともに、基本回路302の外部にある周辺制御回路に対してリセット出力端子(XRSTO端子)からリセット信号(例えば、LレベルからHレベルへの立ち上がり信号)が出力される。この場合、基本回路302では、システムリセットと称する処理が実行され、各回路が初期化される。このシステムリセットが実行される一例として、電源投入時が挙げられる。なお、このシステムリセットについては後述する。
また、リセット制御回路314は、ウォッチドッグタイマ(WDT)3141(本発明の復帰指示手段の一例に相当)、および指定エリア外走行禁止回路3142を備えている。WDT3141がタイムアウトになった場合や、CPU304が所定の範囲以外のアドレスを参照(指定エリア外走行)した場合には、リセット制御回路314は、基本回路302の内部の回路に対してシステムリセット信号およびユーザリセット信号のいずれかを出力する。なお、システムリセット信号およびユーザリセット信号のどちらを出力するかは、ROM306内のプログラム管理エリア(詳細は後述)の設定に従う。また、基本回路302の外部にある周辺制御回路に対しては、リセット出力端子(XRSTO端子)からリセット信号が出力される。
基本回路302では、設定によって上記のシステムリセットか、あるいはユーザリセットと称する処理のいずれかを実行させることができる。なお、ユーザリセットでは、各回路が必要に応じて初期化される。このユーザリセットについては後述する。
上記指定エリア外走行は、プログラムが想定外の動作をしていることを意味する。この場合、CPU304が本来プログラムとして扱われるはずのないコードにより動作することになる。このような状況は、プログラムミスによる所謂暴走した状態の他に、何らかの不正によって生じている可能性がある。この場合、上記のシステムリセットおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるようになっている。また、WDT3141がタイムアウトになった場合としては、プログラムミスによる暴走した状態や、電圧降下によりCPU304が本来設計した動作を行うことができなくなった場合等がある。この場合にも、上記のシステムおよびユーザリセットのいずれかの処理により、正常な動作に復帰させることができるようになっている。
割込み制御回路3100は、外部入力や内部状態の変化に応じて適宜処理を実行させるために割込みを発生させる。この割込み処理には、例えば外部からの入力(センサによる信号)を受け付けた場合に実行する処理がある。本実施形態では、乱数生成回路318が、乱数を取得するためのラッチ信号を受信した際にも、割込み処理を実行(割込みを発生)させることができるようになっている。なお、割込み制御回路3100は、内部情報レジスタ3101を備えており、この内部情報レジスタ3101には、乱数生成回路318で乱数更新周期を決める外部クロック(カウントクロック)の周期の異常、および乱数の更新に関するの異常、さらに、直前に発生したユーザリセットのリセット要因の情報等が格納される。なお、この内部情報レジスタ3101は、異常検出情報保持手段の一例に相当する。
クロック回路3200は、図4に示すの水晶発振器316b(以下、システム用水晶発振器316bと称する場合がある)から外部クロック入力端子(EX端子)を介して入力される外部クロック(この例では、24MHzのクロック)を所定の分周比(この例では、1/2)で分周し、分周後のシステムクロック(この例では、12MHzのクロック)をこの基本回路302内部の各回路に供給する。また、このシステムクロックをシステムクロック出力端子(CLKO端子)を介して基本回路302外部の周辺制御回路に出力する。
乱数生成回路318は、乱数を更新するためのクロック信号(カウントクロック)を用いて、乱数のラッチ信号を受信したときにこの更新された乱数を乱数レジスタ内に保持するものである。本実施形態では、水晶発振器316aから外部クロック入力端子(RCK端子)を介して入力される外部クロック信号を所定の分周比(この例では、1/2)で分周してこのカウントクロックに用いているが、基本回路302内部のクロック信号を用いることもでき、この場合は水晶発振器316aは不要となる。乱数レジスタに保持された値は、乱数として読み出して使用することができる。なお、乱数レジスタから乱数を読み出すと、乱数レジスタが次の乱数をラッチすることを許容する許容状態とすることができる。この乱数生成回路318の詳細は後述する。
<メモリマップおよびI/Oマップ>
次に、図7を用いて、図6に示す基本回路302のメモリマップおよびI/Oマップの一例について説明する。同図は、基本回路302のメモリマップおよびI/Oマップの一例を示す図である。
図7(a)には、図6に示す基本回路302におけるメモリマップの一例が示されている。このメモリマップには、0000HからFFFFHまでのアドレス空間が示されている。このうち、0000Hから2FFFHまでの空間にはROM306が割り当てられ、F000HからF3FFHまでの空間にはRAM308が割り当てられ、FE00HからFEBFHまでの空間には基本回路302内の各回路に内蔵されている内蔵レジスタが割り当てられている。CPU304に、これらの番地に対してアクセスする命令を実行させることにより、対応するハードウェアに対するアクセスを実行させることができる。なお、0000Hから2FBFHまでの空間(12224バイト)は、プログラムコードとこのプログラムが使用するプログラムデータの格納に使用される空間であり、2FC0Hから2FFFHまでの空間(64バイト)は、プログラム管理エリアとして使用される空間である。プログラム管理エリアには、この基本回路302を動作させる際に用いられる各種設定(乱数生成回路の動作設定、WDT3141の動作設定等)や、各種識別情報(製品コード、メーカーコード、IDナンバー等)が格納される。
図7(b)には、図6に示す基本回路302におけるI/Oマップの一例が示されている。このI/Oマップには、00HからFFHまでの入出力空間が示されている。この図7(b)には、00HからBFHまでの空間に内蔵レジスタが割り当てられている例が示されている。この場合、CPU304に、これらの番地に対する入出力命令を実行させることにより、内蔵レジスタに対して入出力を行う事が出来る。図6に示す基本回路302では、内蔵レジスタを、図7(a)に示すようにメモリマップ上に割り当てるか、図7(b)に示すようにI/Oマップ上に割り当てるかを選択することができるようになっている。すなわち設計方針によって、何れかの方式を選択することができる。なお、本実施形態では、図7(a)の方式を採用している。
<リセット処理>
次に、図8を用いて、システムリセットの流れについて説明する。同図は、システムリセットの流れを示す図である。
上述したように、システムリセット信号がリセット制御回路314のXSRST端子から入力されると、システムリセットと称する処理が実行される。
まず、システムリセット信号は、所定時間(例えば、システムクロック4周期分)のLレベル信号である。この信号がXSRST端子に入力されると、システムリセットが開始される。図8には、XSRST端子の入力信号が所定時間のLレベルを経た直後にHレベルに立ち上がっていることが示されている。ここでは、このHレベルになる直前までがシステムリセット信号であるものとして説明を続ける。
システムリセット信号がリセット制御回路314に入力されると、リセット制御回路314からシステムリセット信号が基本回路302内の回路に送信される。このことにより、CPU304を含む全ての内部回路が初期化され、セキュリティモードに移行し、その後ユーザモードに移行する。図8に示す動作モードには、システムリセット信号の後にセキュリティモードに移行し、その後ユーザモードに移行することが示されている。なお、この際、リセット制御回路314のXRSTO端子からはLレベルの信号が出力される。
ここで、ユーザモードとは、ROM306に記憶されたプログラムに従ってCPU304が処理を実行するモードである。より具体的には、メモリマップの0000H番地から命令が読み出され処理が開始される。一方、セキュリティモードとは、ユーザモードに移行する前のモードであり、ユーザモードにおいてROM306に記憶されたプログラムに従ってCPU304を正常に動作させるためのセキュリティチェック処理が行われるモードである。
セキュリティチェック処理では、ROM306のチェックや、内蔵レジスタのチェック等が実行される。なお、ここで異常がある場合、CPU304の動作は停止される。
このセキュリティチェック処理に続いて、固定延長処理とランダム延長処理が実行される。固定延長処理とは、セキュリティモードを、設定した固定時間分延長する処理である。また、ランダム延長処理とは、セキュリティモードを、設定した時間範囲内でランダムな時間分延長する処理である。これらの固定時間、およびランダム時間は、上述したプログラム管理エリアにおいて設定することができる。
上記固定延長処理が終了すると、XRTSO端子からHレベルの信号が出力される。図8には、XRSTO端子の信号が、固定延長処理の終了時のタイミングでLレベルからHレベルへの立ち上がっていることが示されている。この信号により、マイクロプロセッサ3000の周辺回路の状態は初期化される。
固定延長処理に続き、ランダム延長処理が終了すると、セキュリティモードからユーザモードに移行し、遊技制御用のプログラム(具体的には、後述する主制御部メイン処理)が実行される。
ここで、上記構成の効果について説明する。
遊技台の制御は乱数生成回路318において生成される乱数を用いて行われる。しかし、この乱数は、乱数テーブルや所定の演算によって生成されるものであるため、一見ランダムであっても規則性を有するものである。こうした規則性を排除するために例えば入賞回数のような規則性のない要素を利用することが考えられるが、電源投入直後のような遊技が進行していない場合こうした要素は利用できない。また、ノイズのような規則性のない要素を利用する場合、このノイズが検知できないレベルであると利用することができない。このような理由から、電源投入後や、システムリセット直後の状態は規則性がより顕著になる期間であり、不正のターゲットになりやすい。
基本回路302でシステムリセットが実行される場合、内部の回路でどのような信号の送受信が行われているかは不明である。しかし、基本回路302の外部に接続された回路に対する信号の送受信は測定することが可能である。さらに、システムリセット時には基本回路302の外部の回路にリセット信号を送信する。仮に、外部の回路に対するリセット信号の出力と同時に、遊技制御用プログラムを開始させた場合、システムリセット直後にどのような信号のやり取りがされているかが分析され、その規則性に基づいて不正が行われる虞がある。また、リセット信号の出力と同時でなくとも、遊技制御用プログラムが開始されるまでの間が一定期間であれば、同様の不正が行われる虞がある。
上記のシステムリセットでは、XRSTO端子から外部の回路にリセット信号が出力されるが、その後ランダム延長処理により、ユーザモードの開始までの期間をランダムに変化させている。この構成により、上記のような不正を防止することができる。
なお、設定によりWDT3141がタイムアウトになった場合や、指定エリア外走行した場合にも、上記システムリセットを実行させることができる。本実施形態では、システムリセットではなくユーザリセットを実行させるように設定している。
続いて、図9を用いて、リセットが実行された場合の処理の流れについて説明する。同図は、リセットの流れを示すフローチャートである。このフローチャートは、リセット制御回路314にシステムリセット信号が入力された場合、WDT3141がタイムアウトになった場合、あるいは指定エリア外走行を検知した場合に、基本回路302の各回路で実行される処理である。
最初のステップSH01では、実行されるリセット動作が、システムリセット動作か否か判定される。基本回路302で実行されるリセット動作には、システムリセット動作(図8参照)とユーザリセット動作の2つがある。ここで、システムリセット動作を実行する場合には、ステップSH03に進む。また、システムリセット動作でないリセット動作、すなわちユーザリセット動作を実行する場合には、ステップSH11に進む。
ステップSH03では、第1内部回路初期化処理が実行される。この第1内部回路初期化処理は、CPU304のコアや内蔵レジスタ(タイマ回路311、カウンタ回路312、パラレル入力ポート3102、RAM308アクセスプロテクトレジスタ、割込み制御回路3100、乱数生成回路318を制御するレジスタ)の値を初期化する。この第1内部回路初期化処理が終了すると、ステップSH05に進む。
ステップSH05では、セキュリティチェック処理が実行される。このセキュリティチェック処理では、ユーザプログラムを基に計算された認証コード(ROM306のプログラム管理エリアに記憶)が正しいか否か再計算を行う。認証コードが正しい場合にはステップSH07に進み、そうでない場合にはCPU304の動作を停止させる。
ステップSH07では、固定延長処理が実行される。この固定延長処理では、予め設定した固定時間(例えば、ROM306のプログラム管理エリア内のセキュリティ時間設定の0〜2ビットを用いて設定)だけセキュリティモードを延長する。例えば、nをプログラム管理エリアに設定された時間とし、システムクロックをSCLKとした場合に、3n×2^24/SCLK秒だけ延長する。なお、この延長時間の経過時にXRSTO端子からリセット信号を出力させる。その後ステップSH09に進む。
ステップSH09では、ランダム延長処理が実行される。このランダム延長処理では、予めランダムに選択されたランダム時間(例えば、管理エリア内のセキュリティ時間設定の3〜4ビットを用いて設定)だけセキュリティモードを延長する。例えばショートモードが設定されている場合には0〜Sμ秒、ミドルモードが設定されている場合には0〜Mμ秒、ロングモードが設定されている場合には、0〜Lμ秒それぞれ延長する(S<M<L)。この処理が終了するとユーザモードに移行し、CPU304は、メモリマップの0000H番地から処理を開始する。本実施形態では、主制御部300のメイン処理が開始されることになる。
一方、ステップSH01で、ユーザリセット動作を実行する場合に進むステップSH11では、第2内部回路初期化処理が実行される。この第2内部回路初期化処理は、CPU304のコアや内蔵レジスタ(タイマ回路311、カウンタ回路312、パラレル入力ポート3102、RAM308アクセスプロテクトレジスタ、割込み制御回路3100)の値を初期化する。ただし、乱数生成回路318を制御するレジスタの値はリセット前の状態が維持される。この第2内部回路初期化処理が終了すると、ユーザモードに移行し、CPU304は、メモリマップの0000H番地から処理を開始する。本実施形態では、主制御部300のメイン処理が開始されることになる。
<乱数生成回路>
次に、図10を用いて、図6に示す基本回路302の乱数生成回路318の詳細について説明する。同図は、図6に示す乱数生成回路318の内部構成図である。
乱数生成回路318は、それぞれ異なる乱数を生成する4つの乱数生成チャンネルCH1〜CH4を備えている。なお、各チャンネル回路の内部構成は同一であるため、図10では、1つの乱数生成チャンネルCH1を示し、残りの乱数生成チャンネルCH2〜CH4については、図示を簡略化している。以下の説明では、この乱数生成チャンネルCH1を中心に乱数生成回路318について説明する。
乱数生成回路318は、初期設定レジスタ3181と、周波数監視回路3182と、乱数更新回路3183と、乱数監視回路3184と、ノイズフィルタ3185と、ソフトラッチレジスタ3186と、ラッチ選択レジスタ3187と、乱数レジスタ3188と、乱数ラッチフラグレジスタ3189と、乱数割込み制御レジスタ3180を備えている。なお、周波数監視回路3182および乱数監視回路3184は、本発明の更新異常検出手段の一例に相当する。
初期設定レジスタ3181には、RCK端子からの外部クロック信号とシステムクロック(内部クロック信号)のうち、いずれのクロック信号を乱数更新回路3183で使用するかを決めるクロック選択情報が、プログラム管理エリア内の情報に基づいて設定される。RCK端子からの外部クロック信号とシステムクロック(内部クロック信号)は乱数更新回路3183の手前に設けられたマルチプレクサに入力される。初期設定レジスタ3181が上記クロック選択情報に従って更新クロック選択信号をこのマルチプレクサに入力することにより、この更新クロック選択信号によって選択されたクロック信号が乱数更新回路3183に入力されるようになっている。なお、外部クロック信号が選択されている場合、所定の分周比(この例では、1/2)で分周されたクロック信号が乱数更新回路3183に入力される。なお、分周されたクロック信号が、内部クロックよりも低い周波数でない場合には使用することができない。なお、本実施形態では、外部クロック信号が選択されているものとして説明を続ける。
周波数監視回路3182は、内部クロック信号および外部クロック信号の周期を監視し、この周期が一定でなくなった場合に、クロック信号に異常があることを示す情報を、内部情報レジスタ3101に出力する。
乱数更新回路3183は、初期設定レジスタ3181によって選択されたクロック信号が入力され、このクロック信号の周期に従って乱数を更新する。更新した乱数の値は、乱数監視回路3184および乱数レジスタ3188にそれぞれ出力される。この乱数更新回路3183の詳細については、図12〜図15を用いて後述する。
乱数監視回路3184は、乱数更新回路3183からの入力に基づいて、乱数が正常に更新されているか否かを監視する。乱数の更新に異常がある場合、この乱数の更新に異常があることを示す情報を、内部情報レジスタ3101に出力する。
なお、上記の説明では、乱数生成回路318の内部に周波数監視回路3182および乱数監視回路3184が設けられている構成であったが、乱数生成回路318の外部に設けてもよい。また、上記の説明では、乱数更新回路3183とは別に周波数監視回路3182および乱数監視回路3184が設けられている構成であったが、乱数更新回路3183の内部にこれらの回路を設けてもよい。
ノイズフィルタ3185には、P0端子〜P3端子からの入力が、パラレル入力ポート3102を介してラッチ信号として入力される。なお、図10では、P3端子、およびそのP3端子に接続された回路等は図示省略している。上述のごとく、P0端子には、第1特図始動口230への入球を検出する球検出センサからの信号が入力され、P1端子には、第2特図始動口232への入球を検出する球検出センサからの信号が入力され、P2端子には、普図始動口228への入球を検出する球検出センサからの信号が入力される。さらに、ノイズフィルタ3185には、初期設定レジスタ3181によって選択されたクロック信号が入力される。このクロック信号を利用して、P0端子〜P3端子からの入力に生じるノイズを除去した上で、ラッチ信号を検出する。このラッチ信号が検出されると、ハードラッチ信号が乱数レジスタ3188の手前に設けられたマルチプレクサに出力される。なお、このノイズ除去の詳細については、図11を用いて後述する。
ソフトラッチレジスタ3186には、乱数レジスタ3188から乱数をラッチすることを示す情報がCPU304からの指示によって適宜設定される。この情報が、ソフトラッチ信号として乱数レジスタ3188の手前に設けられたマルチプレクサに出力される。
ラッチ選択レジスタ3187には、乱数レジスタ3188の手前に設けられたマルチプレクサからハードラッチ信号とソフトラッチ信号の何れを出力させるか、すなわち、乱数レジスタ3188にどちらのラッチ信号を入力するのかを示す情報が、CPU304からの指示によって適宜設定される。この情報を設定することにより、ハードラッチ信号とソフトラッチ信号を適宜使用して、乱数を取得することができる。
乱数レジスタ3188には、3つの信号が入力される。1つ目の信号は、乱数更新回路3183から出力された乱数を表す信号である。2つ目の信号は、手前に設けられたマルチプレクサから出力された乱数ラッチ信号(ハードラッチ信号とソフトラッチ信号のうち、ラッチ選択レジスタ3187で設定された信号)である。3つ目の信号は、乱数の読み取りを示すリード信号である。
乱数レジスタ3188には、乱数更新回路3183によって更新された乱数を示す信号が常に入力されている。ここで、乱数ラッチ信号が入力されると、この入力タイミングにおける乱数が乱数レジスタ3188内にラッチ(保持)される。このとき、乱数レジスタ3188からは、乱数がラッチされていることを示すセット信号が、乱数ラッチフラグレジスタ3189に出力される。このときCPU304は、ラッチされている乱数を取得することができる。なお、CPU304により乱数が取得されると、乱数レジスタ3188にリード信号が入力される。この信号により新たな乱数ラッチ信号が入力された場合に乱数をラッチすることを許容する許容状態となる。換言すれば、一度乱数をラッチすると、リード信号が入力されるまで新たに乱数をラッチすることができない非許容状態となる。なお、リード信号が入力されてもラッチされている乱数は保持し続けるため、CPU304はラッチされている同一のタイミングでラッチされた乱数を何度でも取得することができる。このように構成することで乱数ラッチ信号を出力するセンサ回路におけるチャタリングの影響を押さえることができる。なお、リード信号が入力されたことを示すクリア信号が乱数ラッチフラグレジスタ3189に出力される。また、図10に示すように、乱数レジスタ3188が複数あることにより、同じ乱数更新回路から生成された乱数を様々なタイミングで取得することができる。
乱数ラッチフラグレジスタ3189には、乱数レジスタ3188に乱数がラッチされているか否かを示す情報が記憶される。
乱数割込み制御レジスタ3180には、乱数レジスタ3188に乱数が保持された際に割込み制御回路に割込みを発生させるか否かを示す情報が設定される。この情報は乱数レジスタ3188毎に設定することができる。例えば、第1特図始動口230への入球により乱数発生チャンネルCH1の乱数がラッチされた場合には、割込みを発生させ、第2特図始動口232への入球により乱数発生チャンネルCH2の乱数がラッチされた場合には、割込みを発生させない、というような設定をすることができる。
上記説明した乱数生成回路318を用いて、本実施形態では、普図始動口282、第1特図始動口230、第2特図始動口232のそれぞれに入球したタイミングで乱数を取得する。なお、任意のタイミングでCPU304に乱数を取得させるように、プログラムを実行させることもできる。さらに異なる乱数生成チャンネルを使用してそれぞれ独立の乱数を取得し、それぞれのチャンネル毎に乱数生成範囲の最大値を設定することができる。
なお、本実施形態では、個別のチャンネルに対して乱数生成範囲を変更することができ、設定されていない場合には所定の最大値(例えば65535)が適用される例について説明したが、これ以外に例えば、乱数生成範囲を変更する場合に全てのチャンネルに対して乱数生成範囲を設定することを必要とする構成であってもよい。
なお、普図始動口282に入球したタイミングで取得された乱数は、後述する普図当選乱数として用いられる。また、第1特図始動口230に入球したタイミングで取得された乱数は、加工(例えば、乱数生成回路とは異なる回路(例えば、基本回路302やカウンタ回路312)でカウントアップ(ダウン)される値を乱数に加算(減算)する処理など)されて、後述する特図1当選乱数として用いられる。さらに、第2特図始動口232に入球したタイミングで取得された乱数は、加工されて、後述する特図2当選乱数として用いられる。
なお、乱数の加工は、第1特図始動口230および第2特図始動口232に入球したタイミングで取得される乱数に限らず、他の契機(例えば、普図始動口282へに入球したタイミングなど)によって取得される乱数に対して行ってもよい。さらに、上述した乱数生成範囲の最大値を設定する場合においては、設定した最大値に応じた加工(例えば、この最大値を超えない値を乱数に加算する処理など)すれば良い。
また、乱数の加工は必ずしも行う必要はないが、乱数の加工を行うことは乱数の狙いうちの防止に有効に働く。例えば加工した後の乱数が更新されたか否かをCPU304によって監視した場合、乱数生成回路318内での乱数の更新が正常に行われているか否かを正確に判断することができない。このように、乱数を加工する場合には、上述の乱数監視回路3184による乱数の更新の監視がより有効に働くこととなる。
続いて、図11を用いてノイズフィルタ3185の動作について説明する。同図は、図10に示すノイズフィルタ3185による処理の一例を示す図である。
上述したように、ノイズフィルタ3185には、P0端子〜P3端子からの入力が、パラレル入力ポート3102を介してラッチ信号として入力され、初期設定レジスタ3181によって選択されたクロック信号が入力される。このノイズフィルタ3185は、例えば図11に示すように、クロック信号のダウンエッジ(HレベルからLレベルへの立ち下り信号)が4回連続で入力されるまで、P0端子〜P3端子からの入力信号がHレベルであれば、ハードウェアラッチ信号を出力するように構成されている。単純に信号の立ち上がりおよび立ち下がりだけを基にハードウェアラッチ信号を出力すると、ノイズが入った場合にもハードウェアラッチ信号が出力されてしまう。このため、上記のようにクロック信号を用いて、一定期間のセンサ信号を検出させることで、ノイズによりハードウェアラッチ信号が出力されてしまわないように構成されている。
上記説明では、P0端子〜P3端子からの入力によりハードラッチ信号を出力させる例について説明したが、例えば、P0端子〜P3端子からの入力を一度CPU304で受け付けた上で乱数を取得する方法もある。この場合には、ハードラッチ信号ではなく、ソフトラッチレジスタ3186から出力されたソフトラッチ信号により、乱数をラッチさせることになる。この場合、上記ノイズフィルタによる処理と同様の処理がCPU304により実行される。すなわち、P0端子〜P3端子からの入力が所定期間継続したか否かを判定し、これを満たす場合にP0端子〜P3端子からの入力が正しく行われたと判定する。その後、ソフトラッチ信号を出力するようにソフトラッチレジスタ3186を設定する。
次に、図12を用いて、図10に示す乱数更新回路3183の詳細について説明する。同図は、図10に示す乱数更新回路3183の詳細を示す図である。
図12(a)に示す乱数更新回路3183は、カウンタ回路3183aと、スタート値選択回路3183bと、最大値設定レジスタ3183cを備えている。なお、図10では、乱数更新回路3183に対して外部クロック信号および内部クロック信号のいずれかが乱数更新のための更新クロック信号として入力されることが示されているが、この図12に示す乱数更新回路3183には、さらにCPU304から最大値データが入力される。
カウンタ回路3183aからは、乱数(乱数データ)が出力される。この乱数の初期値は、スタート値選択回路3183bに設定されている。この初期値には、固定値(例えば0)、プログラム管理エリア内に記憶されている基本回路302のIDナンバーを基にした値、および、乱数生成範囲内で抽選された値のいずれかが設定される。
カウンタ回路3183aには、更新クロック信号の1クロック毎に1が加算されるカウンタが設けられており、このカウンタの値に、スタート値選択回路3183bから入力された乱数の初期値を加えた値を乱数として出力する。
カウンタ回路3183aから出力される乱数の最大値は、最大値設定レジスタ3183cに設定されている。なお、乱数の最大値は、CPU304からの命令に従って最大値設定レジスタ3183cに設定される。図12(b)には、この最大値が設定されている16ビットのレジスタが示されている。CPU304から最大値を設定する命令がない場合の初期値は、FFFFH(65535)である。なお、この最大値設定レジスタ3183cの変わりに、例えば、ROM306のプログラム管理エリア内に最大値を設定する領域を設け、設定された最大値を参照する構成であってもよい。
カウンタ回路3183aは、出力する乱数が最大値を超えた場合、この最大値に1を加えた値を減算した上で、この値を乱数として出力する。例えば最大値が65535の場合において、初期値とカウンタの値を足した値が、65534、65535、65536、65537の順に更新されるとすると、出力される乱数は、65534、65535、0(65536−(65535+1))、1(65537−(65535+1))のようになる。すなわち、最大値を超えると出力される乱数が0に戻ることになる。
また、カウンタ回路3183aの内部に設けられたカウンタの値が、最大値レジスタ3183cに設定された最大値になると、このカウンタの値が0にクリアされるとともに、カウンタ回路3183aからスタート値選択回路3183bに乱数の出力が一巡したことを示す信号(一巡信号)が出力される。この一巡信号を受けたスタート値選択回路3183bでは、乱数の初期値が更新される。この際更新される初期値が、最大値設定レジスタ3183cに設定されている乱数の最大値を超えている場合、例えば、固定値を用いたり、一度現在の乱数の最大値を乗じてから設定可能な乱数生成範囲の最大値(65535)で除算した値を用いることにより、乱数の最大値を超えない値(乱数生成範囲内の値)が初期値として再設定される。無論、最初からこの再設定方法などを用いて、乱数生成範囲内の値が初期値として設定されるようにしてもよい。
なお、本実施形態では、最大値設定レジスタ3183cに設定された最大値は、カウンタ回路3183aからの出力が一巡した時点で自動的に更新されるが、例えばCPU304からの更新命令が来た時点で更新されるようにしてもよい。
ここで、上記の乱数生成の範囲を図13および図14を用いて説明する。図13は、乱数生成範囲の最大値が設定されていない場合(デフォルトの状態)において出力される乱数の範囲を示す図である。また、図14は、図13とは異なる最大値が設定された場合に出力される乱数の範囲を示す図である。
まず、図13(a)ではn周期目(n−1回目の一巡信号が出力された直後)の状況について説明する。図13(a)には、0〜65535の乱数生成範囲が示されている。また、出力される乱数の初期値がスタート値(X)として示されている。
乱数更新回路3183からは、更新クロックの1クロック毎に乱数が更新されて出力される。より具体的には、最初にスタート値(X)が出力され、その後1クロック毎に、X+1、X+2の順で更新された乱数が出力される。この乱数の値が乱数生成範囲の最大値である65535になると、上記説明した処理によって、次に出力される乱数は0に戻る。その後、1、2、の順で更新された乱数が出力され、X−1が出力された時点でこの乱数生成範囲を一巡したことになる。なお、このとき、乱数更新回路3183内のカウンタ回路3183aのカウンタの値は最大値と同じ値になっている。スタート値選択回路3183bに乱数の出力が一巡したことを示す信号(一巡信号)が出力される。
続いて1クロックが入力されると、乱数更新回路3183の出力はn+1周期目(n回目の一巡信号が出力された直後)に入る。このn+1周期目の状況について、図13(b)を用いて説明する。まず、乱数更新回路3183内のカウンタ回路3183aのカウンタの値は0にクリアされる。また、スタート値選択回路3183bでは、新たな初期値が設定される。図13(b)には、この新たな初期値がスタート値(X’)として示されている。この新たな初期値と、カウンタ回路3183aのカウンタの値により、上記説明した流れと同様の流れで乱数が出力される。
次に、図14(a)では、図13に示す乱数生成範囲の最大値よりも小さい最大値が設定された場合のn周期目(n−1回目の一巡信号が出力された直後)の状況について説明する。図14(a)には、0〜65535のうち、設定された最大値によって図13(a)に示す乱数生成範囲よりも狭くなった乱数生成範囲が示されている。なお、出力されない乱数の範囲が左下がりのハッチングで示されている。また、出力される乱数の初期値がスタート値(Y)として示されている。
図13を用いて説明した状況と同様に、乱数更新回路3183からは、最初にスタート値(Y)が出力され、その後1クロック毎に、Y+1、Y+2の順で更新された乱数が出力される。この乱数の値が設定された最大値になると、上記説明した処理によって、次に出力される乱数は0に戻る。すなわち、左下がりのハッチングで示された範囲の乱数は出力されない。その後、1、2、の順で更新された乱数が出力され、Y−1が出力された時点でこの乱数生成範囲を一巡したことになる。なお、このとき、乱数更新回路3183内のカウンタ回路3183aのカウンタの値は設定された最大値と同じ値になっている。スタート値選択回路3183bに乱数の出力が一巡したことを示す信号(一巡信号)が出力される。
続いて1クロックが入力されると、乱数更新回路3183の出力はn+1周期目(n回目の一巡信号が出力された直後)に入る。このn+1周期目の状況について、図14(b)を用いて説明する。図13(b)を用いて説明した場合と同様、乱数更新回路3183内のカウンタ回路3183aのカウンタの値は0にクリアされる。また、スタート値選択回路3183bでは、新たな初期値が設定される。図14(b)には、この新たな初期値がスタート値(Y’)として示されている。この新たな初期値と、カウンタ回路3183aのカウンタの値により、上記説明した流れと同様の流れで乱数が出力される。
なお、上記のように乱数生成チャンネルの最大値を適切に設定する以外に、例えば、ある乱数生成チャンネルでは乱数の最大値が65535であるが、別の乱数生成チャンネルでは乱数の最大値が255である、というように、チャンネル毎に乱数生成範囲を予め異ならせておいてもよい。この場合には、必要とされる乱数生成範囲に応じてチャンネルを選択すればよい。この場合には、最大値設定レジスタの容量削減や、最大値設定の処理負担を軽減することができる。さらに、予め設定可能な最大値を複数設定した上で、これらの中から適切な最大値を選択して設定するようにしても、最大値設定レジスタの容量削減や、最大値設定の処理負担を軽減することができる。
以上、乱数更新回路3183の乱数の出力について説明した。以下この乱数更新回路3183の変形例について図15を用いて説明する。同図は、最大値と最小値を設定した乱数生成範囲において、乱数を取得することができる範囲を示す図である。
図12から図14の例では、乱数生成範囲の最大値を変更する例について説明したが、例えば、最小値を設定できるものであってもよい。さらに、最大値だけでなく最小値を設定するレジスタを用意し、図15(a)に示すように、最小値、最大値を設定し、乱数生成範囲を設定できるものであってもよい。加えて、図15(b)に示すように、複数の乱数生成範囲を設定できるものであってもよい。すなわち、出力される乱数の範囲を設定出来る構成であればよい。また、上記説明では、説明を分かり易くするため出力される乱数が1ずつ増加する例について説明したが、これ以外の乱数の更新方法であってもよい。
以下、図16を用いて本実施形態の遊技台で使用される乱数と、その主な導出源について説明する。同図は、本実施形態の遊技台で使用される乱数の導出源を表で示す図である。なお、この図で示される各乱数は、後述のフローチャートで用いられる。
まず、特図1当選乱数、特図2当選乱数、および普図当選乱数は、上記乱数生成回路318の乱数生成チャンネルCH1〜CH4によって生成される乱数が基になる。この値を必要に応じて適宜加工してこれらの乱数として使用する。
大当り用特図乱数、小当り用特図乱数、およびハズレ用特図乱数は、後述する主制御部タイマ割込み処理において生成される。すなわちこれらの乱数は、所謂ソフトウェア乱数である。なお、これらの乱数を生成する際に用いられる初期値生成用乱数は、主制御部メイン処理および主制御部タイマ割込み処理で生成される。
特図変動時間決定用乱数、および普図変動時間決定用乱数は、カウンタ回路312の値を乱数として用いる。本実施形態のカウント回路312は、基本回路302のシステムクロックの他、上記タイマ回路からのタイムアウト信号、メモリの読み書き信号、メモリリクエスト信号、外部入出力の信号等もカウンタの対象として用いることができる。このため、これらを組み合わせることで規則性のない値を導出させ、上記の乱数に使用している。
演出用乱数は、主制御部メイン処理および主制御部タイマ割込み処理で生成される。
次に、図17を用いて、図6に示す割込み制御回路3100に設けられた内部情報レジスタ3101の詳細について説明する。同図は、図6に示す割込み制御回路3100に設けられた内部情報レジスタ3101の一部を示す図である。
上述したように、内部情報レジスタ3101には、乱数生成回路318で乱数更新周期を決める外部クロック(カウントクロック)の周期の異常、および生成された乱数の異常、さらに、直前に発生したユーザリセットのリセット要因の情報が格納される。図17(a)には、内部情報レジスタ3101のうち、乱数生成回路318の異常を示す情報が記憶される範囲が示されている。この範囲は8ビットで構成されており、図17(b)には、これらの各ビットがどのような情報を示すものかが表で示されている。CPU304は、後述するタイマ割込みが実行される度にこの内部情報レジスタ3101の内容を確認する(図28のステップS235a)。この内容は、異常が発生した場合に遊技の進行を止める等の処理を行うか否かの判定に用いられる。例えば、本実施形態では、乱数生成回路318で異常が検出されると、入賞受付処理が実行されないように構成されている(図28のステップS235cおよび図30参照)。この他、球の打ち出しを行わないようにしたり、払出しを行わないようにしたり、あるいは、変動タイマの減算を行わないようにしてもよい。特に、乱数更新に異常があった場合、乱数更新回路3183に大電流が流れている状態(ラッチアップ状態)である可能性があるため、一度電源をオフにすることを報知するようにしてもよい。
ビット番号0は、乱数生成回路318の外部クロック(更新クロック)の異常を示すビットであり、0は異常なし、1は異常ありを示す。
ビット番号1〜4は、乱数生成回路318で生成された乱数の異常を、各チャンネル毎に示すビットであり、0は異常なし、1は異常ありを示す。
ビット番号5〜7は、不使用(0に固定)である。
内部情報レジスタ3101の値が1である場合、CPU304から読み出されると0に設定(クリア)される。なお、内部情報レジスタはCPU304に一度に読み出されるため、内部情報レジスタ3101が保持している値を0に設定(クリア)したい場合は、CPU304に内部情報レジスタ3101の値を読み出した後に読み出した値を破棄すれば良い。
また、上述の通り、システムリセットおよびユーザリセットのいずれかの処理が実行された場合に、この内部情報レジスタは、CPU304から読み出された場合と同様に各ビットは0に設定(クリア)されることとなる。
以上、乱数生成回路318の異常がどのように記憶されているかについて説明したが、この例と同様に上記リセット要因を示す情報についても、内部情報レジスタ3101に記憶されている。なお、上記説明では、乱数生成チャンネルの異常をビット番号1〜4によってそれぞれのチャンネル毎に表していたが、1つのビットによっていずれかのチャンネルで異常が起きたか否かを表すようにしてもよい(全てのチャンネルで共通にしてもよい)。なお、本実施形態では、内部情報レジスタ3101が割込み制御回路3100内に設けられているが、他の回路に設けられているものであってもよい。
次に、図10に示す周波数監視回路3182における異常の検出例について、図18を用いて説明する。同図は、周波数監視回路3182における異常の検出例を示す図である。図18には、一番上からそれぞれ、正常時の動作、異常時の動作例1(異常時1)、異常時の動作例2(異常時2)が示されている。これらの例では、基本回路302の内部クロックと、乱数生成回路318に入力される外部クロック(RCK)に加え、外部クロックの1周期に対する内部クロックの周期の比率が示されている。
この検出動作では、外部クロックと内部クロックの周期の比率を監視し、この比率が変化した場合を異常として検出する。
図18(a)に示す正常時の例では、外部クロックの1周期の間に内部クロックが2.5周期ある状態が継続している。すなわち、外部クロックと内部クロックの周期の比率が変化しないため、異常を示す情報は出力されない。
次に、図18(b)に示す異常時の動作例1(異常時1)では、外部クロックの1周期の間に内部クロックが4.5周期ある状態が示されている。図18(a)に示す状態からこの図18(b)に示す状態になった場合には、この時点で異常を示す情報が出力される。
次に、図18(c)に示す異常時の動作例2(異常時2)の最初には、外部クロックの1周期の間に内部クロックが0.5周期ある状態が示されている。仮に、図18(a)に示す状態からこの図18(c)の最初の状態になった場合には、この時点で異常を示す情報が出力される。さらに、図18(c)には、外部クロックの1周期の間に内部クロックが0.5周期ある状態に続き、外部クロックの1周期の間に内部クロックが2.5周期ある状態が継続している。この周期の比率が変化した時点でも異常を示す情報が出力される。
上記の例では、外部クロックと内部クロックのいずれか一方の周期が異常になると、異常を示す情報が出力されることになる。すなわち、内部クロックを乱数の更新クロックとして使用した場合でも、異常を検出することができる。なお、外部クロックと内部クロックの比率が同じであれば、双方の周波数が変更されても異常を示す情報が出力されない。この場合、例えばプログラム管理エリア内に外部クロック又は内部クロックの周波数を示す情報を記憶させておき、この情報を用いて外部クロック又は内部クロックの異常を検出させることも可能である。なお、更新クロックの異常を検出する方法は上述した方法に限らず、更新クロックの周期の異常を検出可能な方法であれば他の方法を採用しても良い。
続いて、図10に示す乱数監視回路3184における異常の検出例について、図19を用いて説明する。同図は、乱数監視回路3184における異常の検出例を示す図である。この検出例では、1回の乱数の更新毎に更新前後の乱数を比較し、同じ乱数が生成されていないか否かをチェックする。仮に同じ乱数が生成されている場合には、異常を示す情報が出力される。図19(a)の例では、更新前後で同じ乱数が生成されていないため、異常を示す情報は出力されない。これに対して、図19(b)の例では、更新の途中で同じ乱数が生成されており(乱数4が2回生成されている)、この時点(2回目の4が出力された時点)で異常を示す情報が出力される。なお、上記の例では、乱数が更新される度にチェックを行っているが、この乱数更新周期よりも長い所定の周期毎でチェックさせてもよい。
上記説明したように乱数生成回路318では、周波数監視回路3182と乱数監視回路3184から異常を示す情報が内部情報レジスタ3101に対して出力される。また、内部情報レジスタ3101の値は、タイマ割込み毎にCPU304によって読み出される。
このように周波数監視回路3182および乱数監視回路3184の双方を用いて乱数生成回路318の異常を監視することで、更新クロックの周波数に異常があるが、乱数の更新には異常がない異常状態(乱数監視回路3184のみでは検出できない異常状態)と、更新クロックの周波数に異常がないが、乱数の更新には異常がある異常状態の双方の異常状態を的確に把握することが可能になり、遊技制御の安定化を図ることができる。
従来の遊技台では、遊技者に有利な抽選結果が導出されやすくなるように抽選に用いられる乱数に狙いを定めて不正が行われることがあり、遊技の公平性を担保することが困難になっている。しかし、本実施形態の遊技台によれば、上記の乱数生成318によって抽選に用いられる乱数の異常を把握したうえで対処することができるため、乱数の狙いうちを抑止して遊技の公平性を担保することができる。
なお、周波数監視回路3182および乱数監視回路3184は内部情報レジスタ3101に記憶されている情報に関わらず継続してそれぞれ監視を行っている。
ここで、内部情報レジスタ3101の値が、乱数生成回路318により生成される乱数が一巡する周期(乱数生成範囲内の全ての値を各1回出力するのに必要な期間、以下、乱数一巡周期と称する)だけ保持され、その後クリアされる構成であった場合の問題点について図20を用いて説明する。同図は、乱数が一巡する周期とタイマ割込みの周期を比較した図である。図20の一番上には、一番下に示すタイマ割込み周期t4よりも長い乱数一巡周期t1が示されている。また、図20の上から二番目および三番目には、タイマ割込み周期t4よりも短い乱数一巡周期t2およびt3がそれぞれ示されている。
上述したように内部情報レジスタ3101の内容はタイマ割込み毎に確認される。例えば乱数一巡周期が、図20に示す乱数一巡周期t1のようにタイマ割込み周期t4よりも長い場合、内部レジスタ3101に保持された値がクリアされる前にこの値を読み取ることができる。しかし、本実施形態では、乱数生成範囲の最大値を設定することができるため、これに従って乱数一巡周期が短くなってしまう事態が生じ得る。例えば乱数一巡周期が、図20に示す乱数一巡周期t2およびt3のようにタイマ割込み周期t4よりも短い場合、内部レジスタ3101に保持された値を読み取る前にこの値がクリアされる場合がある。すなわち、CPU304が異常を示す情報を取得することが出来なくなる場合がある。
本実施形態では、内部情報レジスタ3101の値が一旦セットされると、この値が読みとられるまでその値が保持される。すなわち、正常に戻ったか否かにかかわらずこの値が維持される。さらに、CPU304がこの値を読み取ると、読み取られた部分の値がクリアされるようになっている。このため、上記のように乱数一巡周期が変わってしまったとしても、内部情報レジスタ3101から異常を示す情報を取得することができる。なお、異常を示す値が読み取られた後に、異常が継続していれば再度異常を示す値がセットされる。
<主制御部メイン処理>
次に、図21を用いて、図4に示す主制御部300のCPU304が実行する主制御部メイン処理について説明する。なお、同図は主制御部メイン処理の流れを示すフローチャートである。
この主制御部メイン処理は上述のユーザモードにおける処理に相当し、システムリセットがかかった場合でも、ユーザーリセットがかかった場合でも実行される処理である。図4に示す主制御部300のRAM308には、大当り用特図1乱数カウンタ、小当り用特図1乱数カウンタ、ハズレ用特図1乱数カウンタ、およびこれらのカウンタの特図2用のカウンタが設けられている。また、そのRAM308には、特図1の保留数、特図1当選乱数、大当り用特図1乱数、小当り用特図1乱数、ハズレ用特図1乱数、特図1当否判定結果、特図1決定結果、特図1変動時間、およびこれらの、保留数や乱数や結果の特図2用のものがそれぞれが記憶される。またRAM308には、当否判定(抽選)の開始を保留することができる最大数(この例では4つ)の領域に区分けされた保留記憶部が特図1と特図2で別々に用意されている。特図1の保留記憶部には、後述するように、特図1当選乱数、大当り用特図1乱数、小当り用特図1乱数、ハズレ用特図1乱数、および特図1変動時間決定用乱数の5つの乱数を1セットにしてこれら5つの乱数が入賞順(保留順)に1セットずつ1領域ごとに格納される。
上述したように、図4に示す主制御部300には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)340を設けている。この起動信号を入力した基本回路302のCPU304は、リセット割込によりリセットスタートしてROM306に予め記憶している制御プログラムに従って図6に示す主制御部メイン処理を実行する。
ステップS101では、初期設定1を行う。この初期設定1では、CPU304のスタックポインタ(SP)へのスタック初期値の設定(仮設定)、割込マスクの設定、I/O310の初期設定、RAM308に記憶する各種変数の初期設定等を行う。
ステップS103では、低電圧信号がオンであるか否か、すなわち、電圧監視回路338が、電源制御部660が第2副制御部500を介して主制御部300に供給している電源の電圧値が所定の値(本実施形態では9v)未満である場合に電圧が低下したことを示す低電圧信号を出力しているか否かを監視する。そして、低電圧信号がオンの場合(CPU304が電源の遮断を検知した場合)には繰り返しこのステップS103を実行し、低電圧信号がオフの場合(CPU304が電源の遮断を検知していない場合)にはステップS105に進む。なお、電源が投入された直後で未だ上記所定の値(9V)に達しない場合にも、供給電圧がその所定の値以上になるまでステップS103は繰り返し実行される。
ステップS105では、初期設定2を行う。
図22は、主制御部メイン処理における初期設定2の流れを示すフローチャートである。
まず、ステップS1051では、カウンタ回路312に最大値や更新ソースを決める数値を設定する処理等、カウンタ回路312に関する設定処理を行う。なお、後述する主制御部タイマ割込処理を定期毎に実行するための周期を決める数値をタイマ回路311に設定する処理等、タイマ回路311に関する設定処理も併せて行う。ステップS1052では、第1副制御部400への出力ポートからクリア信号を出力する処理を行い、ステップS1053に進む。ステップS1053では乱数生成回路初期設定処理を行い、次いで、ステップS1054でRAM308への書き込みを許可する設定を行って、この初期設定2は終了になる。
図23は、ステップS1053における乱数生成回路初期設定処理の流れを示すフローチャートである。
この乱数生成回路初期設定処理は、上述のユーザモードにおいて行われる、図10に示す乱数生成回路318の初期設定処理である。まず、乱数の取り得る範囲(乱数生成範囲)範囲の設定を行い(ステップS1053a)、ステップS1053bに進む。上述のごとく、図10に示す乱数生成回路318では、生成する乱数の最大幅は0〜65535であり、この最大幅が乱数生成範囲のデフォルトになり、ここでは、図12〜図15を用いて詳細に説明したように、その乱数生成範囲をデフォルトとは異なる範囲に設定することができる。図21に示す主制御部メイン処理は、リセット(システムリセットまたはユーザーリセット)がかかる度に実行される処理であるため、乱数生成範囲の設定もリセットがかかる度に実行される。このようにすることで、図32、図33を用いて後述する乱数更新範囲の異常による問題を防止することができる。
ステップS1053bでは、図10に示す乱数レジスタ3188の読み出しを行うとともに、読み出した乱数を破棄する処理を行い、ステップS1053cに進む。この処理によって、乱数生成範囲のリセットがかかるごとに乱数レジスタ3188が乱数をラッチすることを許容する許容状態になる。この許容状態においては、仮に異常の可能性がある乱数が乱数レジスタに残っている場合でもすぐに乱数を更新させることができるため、異常の可能性がある乱数の使用を防止することができる。
本実施形態では、乱数生成回路318では、特図当選乱数の元になる乱数と普図当選乱数とを生成するが、制御状態に応じて出力チャンネルが異なる。すなわち、特図当選乱数の元になる乱数は、非確率変動中(特図低確率状態)にはチャンネルCH1から出力され、確率変動中(特図高確率状態)にはチャンネルCH2から出力される。また、普図当選乱数は、普図低確率状態(非電サポ中)にはチャンネルCH3から出力され、普図高確率状態(電サポ中)にはチャンネルCH4から出力される。なお、乱数生成回路318は、特図当選乱数そのものを生成するものであってもよいし、特図当選乱数の元になる乱数を生成するものであってもよい。また、普図当選乱数そのものを生成するものであってもよいし、普図当選乱数の元になる乱数を生成するものであってもよい。ステップS1053cでは、これら4チャンネル総てのチャンネルについてステップS1053aとステップS1053bが実行されたか否かを判定し、全チャンネルについて終了していなければ、ステップS1053aに戻り、1チャンネルごとに未了のチャンネルについて処理を行う。なお、乱数生成範囲の設定は、状態に応じて使用されているチャンネルのみを実行してもよいし、乱数生成範囲を設定されるチャンネルのみ実行するようにしてもよい。一方、全チャンネルについて終了していれば、この乱数生成回路初期設定処理は終了になる。
本実施形態では、以上説明した乱数生成回路初期設定処理が行われると、乱数生成回路318は乱数の更新を開始する。ユーザリセットがかかった場合、乱数は更新されており、その状態で乱数生成範囲が更新されることに基づいて遅滞なく新しい乱数生成範囲で乱数が生成されるようになっている。なお、ユーザリセットがかかった場合には、一度乱数の更新を止める処理を行い、乱数生成範囲の設定を行った後に乱数の更新を再開させる処理を行うようにしてもよい。また、主制御部のタイマ割込みはこの時点では禁止されており、乱数生成回路初期設定処理はタイマ割込み許可前に行っていることになるため、新たに乱数がラッチされたとしても各種抽選に使用されることはなく、抽選処理の安定化を図ることができる。
また、乱数生成回路318が、上記乱数生成回路初期設定処理を実行する指示をCPU304から受けた場合に、乱数生成回路初期設定処理を行わないものであってもよい。すなわち、乱数生成回路318が乱数更新を行うか否かに関わらず、CPU304に乱数生成回路初期設定処理を実行する指示を行わせてもよい。この構成であれば、ユーザプログラムの解析結果と乱数生成回路318の動作が合わなくなるため、基本回路302の動作の解析が困難になり、不正を防止することができる。従って、不正により基本回路302の動作が不安定にされることがなく、遊技制御の安定化を図ることができる。仮に、不正により基本回路302の動作が解析された場合、遊技者に有利な操作が行われてしまう虞があるが、上記の構成であればこのような不正が防止できるため、遊技制御の安定化を図ることができる。
さらに、乱数生成回路318が乱数更新を行うか否かに関わらず、CPU304に乱数生成回路初期設定処理を実行する指示を行わせた場合、ユーザリセットが実行された場合の処理を統一することができる。すなわち、ユーザリセット後に不安定な状態となった場合にも分岐処理を行わずにすむため、遊技制御の安定化を図ることができる。
なお、上述した内容はユーザリセットがかかった場合について述べたが、システムリセットがかかった場合についても同様の効果を得ることができる。
図21に示す主制御部メイン処理におけるステップS107では、電源の遮断前(電断前)の状態に復帰するか否かの判定を行い、電断前の状態に復帰しない場合(主制御部300の基本回路302を初期状態にする場合)にはRWMクリア処理(ステップS115)に進む。
具体的には、最初に、図2に示す電源基板182に設けたRAMクリアスイッチ180を遊技店の店員などが操作した場合に送信されるRAMクリア信号がオン(操作があったことを示す)であるか否か、すなわちRAMクリアが必要であるか否かを判定し、RAMクリア信号がオンの場合(RAMクリアが必要な場合)には、基本回路302を初期状態にすべくステップS113に進む。一方、RAMクリア信号がオフの場合(RAMクリアが必要でない場合)には、RAM308に設けた電源ステータス記憶領域に記憶した電源ステータスの情報を読み出し、この電源ステータスの情報がサスペンドを示す情報であるか否かを判定する。そして、電源ステータスの情報がサスペンドを示す情報でない場合には、基本回路302を初期状態にすべくステップS113に進み、電源ステータスの情報がサスペンドを示す情報である場合には、RAM308の所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算することによりチェックサムを算出し、算出したチェックサムの結果が、電断前にRAM308に設定した値と一致するか否か(チェックサムの結果が正常であるか否か)を判定する。そして、チェックサムの結果が特定の値の場合(チェックサムの結果が正常である場合)には電断前の状態に復帰すべくステップS109に進み、チェックサムの結果が特定の値以外である場合(チェックサムの結果が異常である場合)には、パチンコ機100を初期状態にすべくステップS113に進む。同様に電源ステータスの情報が「サスペンド」以外の情報を示している場合にもステップS113に進む。
ステップS109では、データ書き戻し処理を行う。このデータ書き戻し処理では、電断時にRAM308に設けられたスタックポインタ退避領域に記憶しておいたスタックポインタの値を読み出し、スタックポインタに再設定(本設定)する。また、電断時にRAM308に設けられたレジスタ退避領域に記憶しておいた各レジスタの値を読み出し、各レジスタに再設定した後、割込許可の設定を行う。以降、CPU304が、再設定後のスタックポインタやレジスタに基づいて制御プログラムを実行する結果、パチンコ機100は電源断時の状態に復帰する。すなわち、電断直前にタイマ割込処理(後述)に分岐する直前に行った命令の次の命令から処理を再開する。また、図4に示す主制御部300における基本回路302に搭載されているRAM308には、送信情報記憶領域が設けられている。このステップS109では、その送信情報記憶領域に、復電コマンドをセットする。この復電コマンドは、電源断時の状態に復帰したことを表すコマンドであり、後述する、主制御部300のタイマ割込処理におけるステップS231において、第1副制御部400へ送信される。
ステップS111では、WDT3141を起動させる処理を行う。ここでは、WDT3141の起動許可及び初期値の設定等を行う。なお、本実施形態では、WDT3141に、初期値として32.8msに相当する数値を設定する。
ステップS113では、RWMクリア処理を行う。このRWMクリア処理では、RAM308の全ての記憶領域の初期化を行う。また、主制御部のタイマ割込み許可の設定、スタックポインタへのスタック初期値の設定(本設定)なども併せて行う。さらにここで、主制御部300のRAM308に設けられた送信情報記憶領域に正常復帰コマンドをセットする。この正常復帰コマンドは、主制御部300のRWMクリア処理(ステップS113)が行われたことを表すコマンドであり、復電コマンドと同じく、主制御部300のタイマ割込処理におけるステップS231において、第1副制御部400へ送信される。
ステップS115では、ステップS111と同様、WDT3141を起動させる処理を行う。
ステップS117では、基本乱数初期値更新処理を行う。ここにいう基本乱数とは、ソフトウェア乱数である、大当り用特図乱数、小当り用特図乱数、およびハズレ用特図乱数が相当する。なお、各乱数には特図1用の乱数と特図2用の乱数が存在するが、以降の説明では、特に断りを入れない限り両者を区別することなく単に特図として説明する。この基本乱数初期値更新処理では、大当り用特図乱数カウンタ、小当り用特図乱数カウンタ、およびハズレ用特図乱数カウンタそれぞれの初期値を生成するための初期値生成用乱数カウンタを更新する。各カウンタがRAM308に設けられている。なお、初期値生成用乱数カウンタは、後述するステップS204でも更新する。
ステップS119では演出乱数更新処理を行う。ここにいう演出乱数もソフトウェア乱数であって、この演出乱数は、演出を決定する元になる乱数のことであり、本実施形態では、後述する先読み予告を実行するか否かを抽選する際に用いられる乱数等が相当する。この演出乱数更新処理では、RAM308に設けられた演出乱数カウンタを更新する。なお、演出乱数カウンタは、後述するステップS211でも更新する。
主制御部300は、所定の周期ごとに開始するタイマ割込処理を行っている間を除いて、ステップS117およびステップS119の処理を繰り返し実行する。
<主制御部タイマ割込処理>
次に、図24を用いて、主制御部300のCPU304が実行する主制御部タイマ割込処理について説明する。なお、同図は主制御部タイマ割込処理の流れを示すフローチャートである。
図4に示す主制御部300は、所定の周期(本実施形態では約4msに1回)でタイマ割込信号を発生するタイマ回路311を備えており、このタイマ割込信号を契機として主制御部タイマ割込処理を所定の周期で開始する。
ステップS201では、タイマ割込スタート処理を行う。このタイマ割込スタート処理では、CPU304の各レジスタの値をスタック領域に一時的に退避する処理などを行う。
ステップS203では、WDT3141のカウント値が初期設定値(本実施形態では32.8ms)を超えてWDT3141割込が発生しないように(処理の異常を検出しないように)、WDT3141を定期的に(本実施形態では、主制御部タイマ割込の周期である約4msに1回)リスタートを行う。
ステップS205では、入力ポート状態更新処理を行う。この入力ポート状態更新処理では、I/O310の入力ポートを介して、各種の球検出センサを含む図4に示す各種センサ320の検出信号を入力して検出信号の有無を監視し、RAM308に各種センサ320ごとに区画して設けた信号状態記憶領域に記憶する。球検出センサの検出信号を例にして説明すれば、前々回のタイマ割込処理(約4ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた前回検出信号記憶領域から読み出し、この情報をRAM308に各々の球検出センサごとに区画して設けた前々回検出信号記憶領域に記憶し、前回のタイマ割込処理(約2ms前)で検出した各々の球検出センサの検出信号の有無の情報を、RAM308に各々の球検出センサごとに区画して設けた今回検出信号記憶領域から読み出し、この情報を上述の前回検出信号記憶領域に記憶する。また、今回検出した各々の球検出センサの検出信号を、上述の今回検出信号記憶領域に記憶する。
また、ステップS205では、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域の各記憶領域に記憶した各々の球検出センサの検出信号の有無の情報を比較し、各々の球検出センサにおける過去3回分の検出信号の有無の情報が入賞判定パターン情報と一致するか否かを判定する。一個の遊技球が一つの球検出センサを通過する間に、約2msという非常に短い間隔で起動を繰り返すこの主制御部タイマ割込処理は何回か起動する。このため、主制御部タイマ割込処理が起動する度に、上述のステップS205では、同じ遊技球が同じ球検出センサを通過したことを表す検出信号を確認することになる。この結果、上述の前々回検出信号記憶領域、前回検出信号記憶領域、および今回検出信号記領域それぞれに、同じ遊技球が同じ球検出センサを通過したことを表す検出信号が記憶される。すなわち、遊技球が球検出センサを通過し始めたときには、前々回検出信号無し、前回検出信号有り、今回検出信号有りになる。本実施形態では、球検出センサの誤検出やノイズを考慮して、検出信号無しの後に検出信号が連続して2回記憶されている場合には、入賞があったと判定する。図4に示す主制御部300のROM306には、入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)が記憶されている。このステップS205では、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、予め定めた入賞判定パターン情報(本実施形態では、前々回検出信号無し、前回検出信号有り、今回検出信号有りであることを示す情報)と一致した場合に、一般入賞口226、可変入賞口234、第1特図始動口230、および第2特図始動口232への入球、または普図始動口228の通過があったと判定する。すなわち、これらの入賞口234、230やこれらの始動口230、232、228への入賞があったと判定する。例えば、一般入賞口226への入球を検出する一般入賞口センサにおいて過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致した場合には、一般入賞口226へ入賞があったと判定し、以降の一般入賞口226への入賞に伴う処理を行うが、過去3回分の検出信号の有無の情報が上述の入賞判定パターン情報と一致しなかった場合には、以降の一般入賞口226への入賞に伴う処理を行わずに後続の処理に分岐する。なお、主制御部300のROM306には、入賞判定クリアパターン情報(本実施形態では、前々回検出信号有り、前回検出信号無し、今回検出信号無しであることを示す情報)が記憶されている。入賞が一度あったと判定した後は、各々の球検出センサにおいて過去3回分の検出信号の有無の情報が、その入賞判定クリアパターン情報に一致するまで入賞があったとは判定せず、入賞判定クリアパターン情報に一致すれば、次からは上記入賞判定パターン情報に一致するか否かの判定を行う。
ステップS207およびステップS209では、基本乱数初期値更新処理および基本乱数更新処理を行う。これらの基本乱数初期値更新処理および基本乱数更新処理では、上記ステップS117で行った初期値生成用乱数カウンタの値の更新を行い、次に主制御部300で使用する、大当り用特図乱数、小当り用特図乱数、およびハズレ用特図乱数それぞれを生成するための乱数カウンタを更新する。例えば、大当り用特図乱数として取り得る数値範囲が0〜100とすると、RAM308に設けた大当り用特図乱数を生成するための乱数カウンタ記憶領域から値を取得し、取得した値に1を加算してから元の乱数カウンタ記憶領域に記憶する。このとき、取得した値に1を加算した結果が101であれば0を元の乱数カウンタ記憶領域に記憶する。また、取得した値に1を加算した結果、乱数カウンタが一周していると判定した場合にはそれぞれの乱数カウンタに対応する初期値生成用乱数カウンタの値を取得し、乱数カウンタの記憶領域にセットする。例えば、0〜100の数値範囲で変動する大当り用特図乱数生成用の乱数カウンタから値を取得し、取得した値に1を加算した結果が、RAM308に設けた所定の初期値記憶領域に記憶している前回設定した初期値と等しい値(例えば7)である場合に、大当り用特図乱数生成用の乱数カウンタに対応する初期値生成用乱数カウンタから値を初期値として取得し、大当り用特図乱数生成用の乱数カウンタにセットすると共に、大当り用特図乱数生成用の乱数カウンタが次に1周したことを判定するために、今回設定した初期値を上述の初期値記憶領域に記憶しておく。なお、本実施形態では特図1に関する乱数を取得するためのカウンタと特図2に関する乱数を取得するためのカウンタとを別々に設けているが、同一のカウンタを用いてもよい。
ステップS211では、演出乱数更新処理を行う。この演出乱数更新処理では、上記ステップS119と同様に、主制御部300で使用する演出用乱数を生成するための乱数カウンタを更新する。
ステップS213では、タイマ更新処理を行う。このタイマ更新処理では、普通図柄表示装置210に図柄を変動・停止表示する時間を計時するための普図表示図柄更新タイマ、第1特図表示装置212に図柄を変動・停止表示する時間を計時するための特図1表示図柄更新タイマ、第2特図表示装置214に図柄を変動・停止表示する時間を計時するための特図2表示図柄更新タイマ、所定の入賞演出時間、所定の開放時間、所定の閉鎖時間、所定の終了演出期間などを計時するためのタイマなどを含む各種タイマを更新する。
ステップS215では、入賞口カウンタ更新処理を行う。この入賞口カウンタ更新処理では、入賞口234、230や始動口230、232、228に入賞があった場合に、RAM308に各入賞口ごと、あるいは各始動口ごとに設けた賞球数記憶領域の値を読み出し、1を加算して、元の賞球数記憶領域に設定する。
また、ステップS217では、入賞受付処理を行う。この入賞受付処理では、第1特図始動口230に入賞があり、且つ、保留している特図1変動遊技の数が所定数(本実施形態では4)未満である場合には、所定の始動情報を取得する。すなわち、保留数が所定数未満であれば、図4に示す乱数生成回路318から、特図1当選乱数の元になるハードウェア乱数を得、加工を施すことによって特図1当選乱数を取得する。この点についてはさらに詳しく後述する。また、RAM308に設けた乱数カウンタ記憶領域から、大当り用特図1乱数、小当り用特図1乱数、およびハズレ用特図1乱数を取得する。大当り用特図1乱数、小当り用特図1乱数、およびハズレ用特図1乱数は、RAM308に設けられたソフトウェア乱数カウンタから導出されたソフトウェア乱数を加工した値(ソフトウェア乱数の値+Rレジスタの値+1)である。さらに、図4に示すカウンタ回路312から特図1変動時間決定用乱数を取得する。図4に示す乱数生成回路318、カウンタ回路312、RAM308に設けられたソフトウェア乱数カウンタ、および乱数加工を施す主制御部300を併せたものが、始動情報を生成して導出するものであり、始動情報導出手段(第1の始動情報導出手段,第2の始動情報導出手段)の一例に相当する。なお、ハードウェア乱数の生成に着目すれば、図4に示す乱数生成回路318あるいはカウンタ回路312が、始動情報を生成するものであり、始動情報生成手段(第1の始動情報生成手段,第2の始動情報生成手段)の一例に相当する。ここで取得された各種乱数(始動情報)は、RAM308に設けた特図1の保留記憶部の、入賞順(保留順)に応じた空いている領域に、1セットの始動情報として記憶される。この特図1の保留記憶部は、第1特図始動口230(第1の始動領域)に遊技球が進入した場合に取得した始動情報を所定の第1上限個数(ここでは4個)まで記憶可能な第1の始動情報記憶手段に相当する。このとき各種乱数(始動情報)をRAM308に設けた一時領域に一旦記憶し、その一時領域に記憶された値を特図1の保留記憶部に記憶してもよく、この場合、一時領域を第1の始動情報記憶手段としてもよいし、特図1の保留記憶部および一時領域を第1の始動情報記憶手段としてもよい。また、主制御部300のCPU304は、RAM308に記憶されている特図1の保留数の値に1を加算し、特図1の保留数が1増加する。したがって、主制御部300のCPU304が保留手段の一例に相当する。また、特図2についても、特図1と同様に始動情報である各乱数を取得し、取得した乱数をRAM308に設けた特図2の保留記憶部に、1セットの始動情報として同様に記憶され、さらに、RAM308に記憶されている特図2の保留数の値に1を加算する。特図2の保留記憶部は、第2特図始動口232(第2の始動領域)に遊技球が進入した場合に取得した始動情報を所定の第2上限個数(ここでは4個)まで記憶可能な第2の始動情報記憶手段に相当する。このとき各種乱数(始動情報)をRAM308に設けた一時領域に一旦記憶し、その一時領域に記憶された値を特図2の保留記憶部に記憶してもよく、この場合一時領域を第2の始動情報記憶手段としてもよいし、特図2の保留記憶部および一時領域を第2の始動情報記憶手段としてもよい。
また、普図始動口228を球が通過したことを検出し、且つ、保留している普図変動遊技の数が所定数(本実施形態では4)未満の場合には、そのタイミングで、図4に示す乱数生成回路318から普図当選乱数を所得し、RAM308に設けた特図用とは別の乱数記憶領域に記憶する。この乱数生成回路318から普図当選乱数を取得する点についても、さらに後述する。
また、この入賞受付処理では、所定の球検出センサにより、第1特図始動口230、第2特図始動口232、普図始動口228、または可変入賞口234の入賞(入球)を検出した場合に、第1副制御部400に送信すべき送信情報に、第1特図始動口230、第2特図始動口232、普図始動口228、および可変入賞口234の入賞(入球)の有無を示す入賞受付情報を設定する。
なお、特図の始動情報にしても普図の始動情報にしても、保留数がそれぞれの所定数以上であれば始動情報を取得せずに、ステップS219に進む。
ステップS219では、払出要求数送信処理を行う。図4に示す払出制御部600に出力する出力予定情報および払出要求情報は1バイトで構成しており、ビット7にストローブ情報(オンの場合、データをセットしていることを示す)、ビット6に電源投入情報(オンの場合、電源投入後一回目のコマンド送信であることを示す)、ビット4〜5に暗号化のための今回加工種別(0〜3)、およびビット0〜3に暗号化加工後の払出要求数を示すようにしている。
ステップS221では、普図状態更新処理を行う。この普図状態更新処理は、普図の状態に対応する複数の処理のうちの1つの処理を行う。例えば、普図変動表示の途中(上述する普図表示図柄更新タイマの値が1以上)における普図状態更新処理では、普通図柄表示装置210を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、普通図柄表示装置210は普図の変動表示(普図変動遊技)を行う。
また、普図変動表示時間が経過したタイミング(普図表示図柄更新タイマの値が1から0になったタイミング)における普図状態更新処理では、当りフラグがオンの場合には、当り図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行い、当りフラグがオフの場合には、ハズレ図柄の表示態様となるように普通図柄表示装置210を構成する7セグメントLEDの点灯・消灯駆動制御を行う。また、主制御部300のRAM308には、普図状態更新処理に限らず各種の処理において各種の設定を行う設定領域が用意されている。ここでは、上記点灯・消灯駆動制御を行うとともに、その設定領域に普図停止表示中であることを示す設定を行う。この制御を行うことで、普通図柄表示装置210は、当り図柄(図5(c)に示す普図A)およびハズレ図柄(図5(c)に示す普図B)いずれか一方の図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)、その表示を維持するためにRAM308に設けた普図停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された図柄が所定期間停止表示され、普図変動遊技の結果が遊技者に報知される。
また、普図変動遊技の結果が当りであれば、後述するように、普図当りフラグがオンされる。この普図当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理では、RAM308の設定領域に普図作動中を設定するとともに、所定の開放期間(例えば2秒間)、第2特図始動口232の羽根部材2321の開閉駆動用のソレノイド(332)に、羽根部材2321を開放状態に保持する信号を出力するとともに、RAM308に設けた羽根開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。このようにして一対の羽根部材2321の開放制御を行う主制御部300のCPU304が、可変始動領域制御を行う可変始動領域制御手段の一例に相当する。一方、非電サポ状態であれば、RAM308の設定領域に普図非作動中を設定するとともに、第2特図始動口232の羽根部材2321の開閉駆動用のソレノイド(332)には、何ら信号を出力しない。こうすることで、羽根部材2321は閉じた状態のままになる。なお、羽根部材2321を閉じた状態に維持するための信号を必ず出力するようにしてもよい。
また、電サポ状態であった場合には、所定の開放期間が終了したタイミング(羽根開放時間管理用タイマの値が1から0になったタイミング)で開始する処理では、所定の閉鎖期間(例えば0.1秒間)、羽根部材2321の開閉駆動用のソレノイド(332)に、羽根部材2321を閉鎖状態に保持する信号を出力するとともに、RAM308に設けた羽根閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。
また、電サポ状態であった場合には、所定の閉鎖期間が終了したタイミング(羽根閉鎖時間管理用タイマの値が1から0になったタイミング)で開始する普図状態更新処理において、RAM308の設定領域に普図非作動中を設定する。さらに、普図変動遊技の結果がハズレであれば、後述するように、普図ハズレフラグがオンされる。この普図ハズレフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(普図停止時間管理用タイマの値が1から0になったタイミング)における普図状態更新処理でも、RAM308の設定領域に普図非作動中を設定する。普図非作動中の場合における普図状態更新処理では、何もせずに次のステップS223に移行するようにしている。
続いて、ステップS223では普図関連抽選処理を実行する。
図25(a)は、普図関連抽選処理の流れを示すフローチャートである。
図25(a)に示す普図関連抽選処理では、まず、普図保留情報があるか否かを判定する(ステップS2231)。ここにいう普図保留情報とは、普図の保留数を指す。すなわち、ここでは、保留している普図変動遊技の数が1以上であるか否かを判定する。なお、普図の保留数をデータとして持っていなくとも、例えば、保留に対応した乱数(普図当選乱数)を普図保留情報として認識するようにしても良い。普図保留情報がなければ、この普図関連抽選処理は終了になり、普図保留情報があればステップS2232に進む。ステップS2232では、普図変動遊技が行われているか否かを判定し、行われていればこの普図関連抽選処理は終了になり、行われていなければステップS2233に進む。ステップS2233では、第2特図始動口232の開閉制御が行われているか否か(普図作動中か否か)を判定し、普図作動中であればこの普図関連抽選処理は終了になり、普図非作動中であればステップS2234に進む。
ステップS2234では、上述の乱数記憶領域に記憶している普図当選乱数に基づいた乱数抽選を行う。
図25(b)は、普図抽選テーブルを示す図である。このテーブルは、主制御部300のROM306に記憶されている。
主制御部300のCPU304は、RAM308の乱数記憶領域から普図当選乱数を取り出し、時短フラグを参照し、時短フラグがオンであれば普図高確率状態(電サポ中)であるため、取得した普図当選乱数から普図高確率状態の普図当選データを引き、キャリーが発生した場合(普図当選乱数よりも普図当選データの値が大きい場合)は普図当選とし、キャリーが発生しなかった場合は普図ハズレになる。すなわち、普図当選乱数範囲は0〜9になる。普図高確率状態では、普図当選乱数は、図10に示す乱数生成回路318のチャンネルCH4から出力される。このチャンネルCH4には、図23に示す乱数生成回路初期設定処理における乱数生成範囲の設定(ステップS1053a)において0〜9の乱数生成範囲が設定されており、普図高確率状態の普図当選乱数の取り得る範囲は0〜9になる。したがって、普図高確率状態における普図当選確率は1/1になる。一方、時短フラグがオフであれば普図低確率状態(非電サポ中)であるため、取得した普図当選乱数から、普図高確率状態のデータと同じ普図低確率状態の普図当選データを引き、キャリーが発生した場合(普図当選乱数よりも普図当選データの値が大きい場合)は普図当選とし、キャリーが発生しなかった場合は普図ハズレになる。すなわち、普図低確率状態の場合でも普図当選乱数範囲は0〜9になる。普図低確率状態では、普図当選乱数は、図10に示す乱数生成回路318のチャンネルCH3から出力される。このチャンネルCH3には、乱数生成範囲の設定(ステップS1053a)において0〜999の乱数生成範囲が設定されており、普図低確率状態の普図当選乱数の取り得る範囲は0〜999になる。したがって、普図低確率状態における普図当選確率は1/100になる。
本実施形態では、普図当選乱数の取り得る範囲(乱数生成範囲)を、デフォルトの0〜65535から0〜999に制限することで大当り確率を、きりのよい1/100にすることができる。また、普図当選データを、普図高確率状態と普図低確率状態で同じ値にすることができる。乱数生成範囲を制限せずに確率を決定することは開発工数の増大を招くとともに誤った確率設計の原因となってしまう場合がある。特に、一の契機に基づいて複数回の抽選を行う場合に煩雑さはより顕著になってしまう。よって、乱数生成範囲を制限することは開発工数を削減するとともに、抽選処理の安定化を図ることができるといえる。また、普図当選データを、普図高確率状態と普図低確率状態で共通化することも、開発工数を削減するとともに、抽選処理の安定化を図ることができるといえる。
普図抽選に当選した場合にはRAM308に設けた当りフラグをオンに設定する。ハズレ(不当選)の場合には、当りフラグをオフに設定する。また、普図抽選の結果に関わらず、図4に示すカウンタ回路312から普図変動時間決定用乱数を取得し、取得した普図変動時間決定用乱数に基づいて複数の変動時間のうちから普図表示装置210に普図を変動表示する時間を1つ選択し、この変動表示時間を、普図変動表示時間として、RAM308に設けた普図変動時間記憶領域に記憶する。なお、保留している普図変動遊技の数は、RAM308に設けた普図保留数記憶領域に記憶するようにしており、ステップS2234を実行するたびに、保留している普図変動遊技の数から1を減算した値を、この普図保留数記憶領域に記憶し直すようにしている。また、カウンタ回路312からの普図変動時間決定用乱数の取得は、普図始動口228への入賞時に行ってもよい。
ステップS2235では、上述の乱数記憶領域から、先の普図抽選に使用した普図当選乱数を消去し、この普図関連抽選処理は終了になる。
続いて、特図先読み処理(ステップS225)が実行される。この先読み処理では、まず、RAM308に設けられた特図1の保留記憶部内の特図1当選乱数を先読みするか、あるいは特図2の保留記憶部内の特図2当選乱数を先読みする。なお、ここでの先読みとは始動情報を当否判定(本抽選)の前に先に読むことを意味するが、以降の先読み処理では、先読みという言葉を、先(当否判定(本抽選)の結果)を読むという意味で使用することがある。このステップS225では、後述する特図関連処理(ステップS229)で用いる図27(a)に示す特図抽選テーブルの内容と同じ内容の事前判定用テーブルを用い、先読みした特図当選乱数に基づく当否判定の事前判定を行う。なお、特図関連処理では、特図抽選テーブルを用いて特図変動遊技の当否判定を改めて行い、ここでの判定結果は、あくまで事前判定の結果になる。当否判定の事前判定では、「大当り」という結果か、あるいは「大当り」以外という結果が導出され、「大当り」という結果の場合には、RAM308に設けられた特図1の保留記憶部内の大当り用特図1乱数を先読みするか、あるいは特図2の保留記憶部内の大当り用特図2乱数を先読みする。続いて、ステップS229の特図関連処理で用いる図27(b)に示す停止図柄抽選テーブルの内容と同じ内容の事前判定用テーブルを用い、先読みした大当り用特図乱数に基づく特図の停止図柄の事前判定を行う。なお、特図関連処理では、停止図柄抽選テーブルを用いて特図の停止図柄の抽選を改めて行い、ここでの判定結果は、あくまで事前判定の結果になる。こうして、特図の停止図柄を事前判定すると、先読み予告の実行可否抽選を行う。この先読み予告は、特図関連抽選処理(ステップS229)が実行される前、すなわち当否判定が行われる前に、当該特図関連抽選処理で行われる当否判定の結果が大当り(ここではより限定して15Rの大当り(15R特別大当りか15R大当り))になることを予告するための報知である。ここでの先読み予告には、停止図柄の事前判定結果が15Rの大当り図柄(特図Aまたは特図B)でなくても、15Rの大当りになるかのように偽りで予告する偽の先読み予告も含まれる。すなわち、先読み予告は、当否判定の結果が15R大当りになる可能性があることを表したり、遊技者に示唆する事前報知、あるいは当否判定の結果が15R大当りになることを遊技者に期待させる事前報知であるといえる。先読み予告の実行可否抽選を行うタイミングで、RAM308に設けられた演出乱数カウンタから演出乱数(例えば、取り得る範囲は0〜99)を取得し、取得した演出乱数に基づいて実行可否抽選を行う。なお、停止図柄の事前判定結果を第1副制御部400に送信し、この実行可否抽選は、第1副制御部400が行うようにしてもよい。
次に、特図1および特図2それぞれについての特図状態更新処理(ステップS227)を行うが、最初に、特図2についての特図状態更新処理を行い、次いで、特図1についての特図状態更新処理を行う。特図2状態更新処理は、特図2の状態に応じて、次の8つの処理のうちの1つの処理を行う。例えば、特図2変動表示の途中(上述の特図2表示図柄更新タイマの値が1以上)における特図2状態更新処理では、第2特別図柄表示装置214を構成する7セグメントLEDの点灯と消灯を繰り返す点灯・消灯駆動制御を行う。この制御を行うことで、第2特別図柄表示装置214は特図2の変動表示(特図2変動遊技)を行う。
また、コマンド設定送信処理(ステップS231)で一般コマンド回転開始設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶してから処理を終了する。
また、主制御部300のRAM308には、15R大当りフラグ、2R大当たりフラグ、第1小当たりフラグ、第2小当たりフラグ、第1ハズレフラグ、第2ハズレフラグ、確変フラグ、および時短フラグそれぞれのフラグが用意されている。特図2変動表示時間が経過したタイミング(特図2表示図柄更新タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、後述する特図関連抽選処理における特図決定結果(特図の停止図柄態様)に基づいて第2特図表示装置214を構成する7セグメントLEDの点灯・消灯駆動制御を行い、RAM308の設定領域に特図2停止表示中であることを表す設定を行う。この制御を行うことで、第2特別図柄表示装置214は、15R特別大当たり図柄(特図A)、15R大当たり図柄(特図B)、2R特別大当たり図柄(特図C)、突然時短図柄(特図D)、隠れ確変図柄(特図E)、突然通常図柄(特図F)、第1小当たり図柄(特図G)、第2小当たり図柄(特図H)、第1ハズレ図柄(特図I)、および第2ハズレ図柄(特図J)のいずれか一つの図柄の確定表示を行う。さらにその後、所定の停止表示期間(例えば500m秒間)その表示を維持するためにRAM308に設けた特図2停止時間管理用タイマの記憶領域に停止期間を示す情報を設定する。この設定により、確定表示された特図2が所定期間停止表示され、特図2変動遊技の結果が遊技者に報知される。また、RAM308に設けられた電サポ回数記憶部に値がセットされている場合には、その値が1以上であれば、その時短回数から1を減算し、減算結果が1から0となった場合は、特図確率変動中でなければ、時短フラグをオフする。さらに、大当り遊技中や小当り遊技中にも、時短フラグをオフする。すなわち、主制御部300のCPU304は、大当り遊技状態中および小当り遊技状態中(第二の制御状態中)である場合に、非電サポ状態(第一の進入率制御状態)に移行させる。
また、後述するコマンド設定送信処理(ステップS231)で一般コマンド回転停止設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶するとともに、変動表示を停止する図柄が特図2であることを示す特図2識別情報を、後述するコマンドデータに含める情報としてRAM308に追加記憶してから処理を終了する。
また、特図2変動遊技の結果が大当りであれば、大当りフラグがオンされる。この大当りフラグがオンの場合には、所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理では、RAM308の設定領域に特図2作動中を設定するとともに、所定の入賞演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを開始することを遊技者に報知する画像を表示している期間待機するためにRAM308に設けた特図2待機時間管理用タイマの記憶領域に入賞演出期間を示す情報を設定する。また、コマンド設定送信処理(ステップS231)で一般コマンド入賞演出設定送信処理を実行させるために上述の送信情報記憶領域に5Hを送信情報(コマンド種別)として追加記憶する。
また、所定の入賞演出期間が終了したタイミング(特図2待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の開放期間(例えば29秒間、または可変入賞口234に所定球数(例えば10球)の遊技球の入賞を検出するまで)可変入賞口234の扉部材2341の開閉駆動用のソレノイド(332)に、扉部材2341を開放状態に保持する信号を出力するとともに、RAM308に設けた扉開放時間管理用タイマの記憶領域に開放期間を示す情報を設定する。また、コマンド設定送信処理(ステップS231)で一般コマンド大入賞口開放設定送信処理を実行させるために上述の送信情報記憶領域に7Hを送信情報(コマンド種別)として追加記憶する。
また、所定の開放期間が終了したタイミング(扉開放時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、所定の閉鎖期間(例えば1.5秒間)可変入賞口234の扉部材2341の開閉駆動用のソレノイド(332)に、扉部材2341を閉鎖状態に保持する信号を出力するとともに、RAM308に設けた扉閉鎖時間管理用タイマの記憶領域に閉鎖期間を示す情報を設定する。また、コマンド設定送信処理(ステップS231)で大入賞口閉鎖設定送信処理を実行させることを示す所定の送信情報を上述の送信情報記憶領域に追加記憶する。
また、この扉部材の開放・閉鎖制御を所定回数(本実施例では15ラウンドか2ラウンド)繰り返し、終了したタイミングで開始する特図2状態更新処理では、所定の終了演出期間(例えば3秒間)すなわち装飾図柄表示装置208による大当りを終了することを遊技者に報知する画像を表示している期間待機するように設定するためにRAM308に設けた演出待機時間管理用タイマの記憶領域に演出待機期間を示す情報を設定する。
以上説明したように、主制御部300のCPU304は、大当り遊技状態中に、可変入賞口234の扉部材2341の開閉状態の変化制御を行う可変入賞制御手段の一例に相当する。なお、主制御部300のROM306には、可変入賞口234の扉部材2341の開閉パターンが記憶されており、主制御部300のCPU304は、そのROM306から、特図変動遊技の当否判定に応じた開閉パターンを取得する。
また、主制御部300のCPU304は、特図決定結果が表す停止図柄態様に基づいて、大当り遊技の終了と同時に、RAM308に設けられた確変フラグや時短フラグをオンに設定する。すなわち、主制御部300のCPU304は、後述する特図抽選処理で特図決定結果が「特図A」や「特図C」である場合には確変フラグと時短フラグの双方をオンに設定する。また、特図決定結果が「特図E」である場合には確変フラグと時短フラグのうち確変フラグのみをオンに設定する。さらに、特図決定結果が「特図B」や「特図D」である場合には確変フラグと時短フラグのうち時短フラグのみをオンに設定するとともにRAM308に設けられた電サポ回数記憶部に電サポ回数100回をセットする。確変フラグがオンに設定されていると、特図高確率状態(確率変動中)であり、大当り遊技終了後に大当りに当選する確率が高くなっている状態(特図高確率状態)である。一方、確変フラグがオンに設定されていない(オフに設定されている)と、特図低確率状態である。したがって、確変フラグの設定状態は、当否判定(特図の抽選)の結果に影響を与える。また、時短フラグがオンに設定されていると電サポ状態であり、電チューが開きやすい(例えば当りやすい)、一回の当りに基づく開放時間が長い、一回の当りに基づく開放回数が多いなど可変始動領域制御が遊技者に有利になるように行われる。反対に、時短フラグがオフに設定されていると非電サポ状態であり、可変始動領域制御が遊技者に不利になるように行われる。したがって、時短フラグの設定状態は、可変始動領域制御にも影響を与える。よって、確変フラグおよび/または時短フラグの設定状態を表す情報は、遊技制御情報の一例に相当し、主制御部300のCPU304は遊技制御情報決定手段の一例に相当する。
さらに、コマンド設定送信処理(ステップS231)で一般コマンド終了演出設定送信処理を実行させるために上述の送信情報記憶領域に6Hを送信情報(コマンド種別)として追加記憶する。
また、所定の終了演出期間が終了したタイミング(演出待機時間管理用タイマの値が1から0になったタイミング)で開始する特図2状態更新処理では、RAM308の設定領域に特図2非作動中を設定する。さらに、特図2変動遊技の結果がハズレであれば、ハズレフラグがオンされる。このハズレフラグがオンの場合には、上述した所定の停止表示期間が終了したタイミング(特図2停止時間管理用タイマの値が1から0になったタイミング)における特図2状態更新処理でも、RAM308の設定領域に特図2非作動中を設定する。特図2非作動中の場合における特図2状態更新処理では、何もせずに次の処理に移行するようにしている。
特図2状態更新処理が終了すると、特図1状態更新処理を行う。この特図1状態更新処理では、特図1の状態に応じて、上述の特図2状態更新処理で説明した各処理を行う。この特図1状態更新処理で行う各処理は、上述の特図2状態更新処理で説明した内容の「特図2」を「特図1」と読み替えた処理と同一であるため、その説明は省略する。なお、特図2状態更新処理と特図1状態更新処理の順番は逆でもよい。
ステップS227における特図状態更新処理が終了すると、今度は、特図1および特図2それぞれについての特図関連抽選処理を行う。この特図関連抽選処理を実行する主制御部300のCPU304が当否判定手段の一例に相当する。主制御部300は、最初に特図2についての処理(特図2関連抽選処理)を行い、その後、特図1についての処理(特図1関連抽選処理)を行う。このように、主制御部300が特図2関連抽選処理を特図1関連抽選処理よりも先に行うことで、同じタイミングで、第1特図始動口230に遊技球が進入したことに基づいて始動情報を取得し、かつ第2特図始動口232に遊技球が進入したことに基づいて始動情報を取得した場合や、特図2変動遊技の開始条件と、特図1変動遊技の開始条件が同時に成立した場合や、特図2変動遊技の開始条件と特図1変動遊技の開始条件の両方が成立している場合でも、特図2変動遊技が先に変動中となるため、特図1変動遊技は変動を開始しない。すなわち、本実施形態のパチンコ機100は、特図2優先変動を行うものであり、第2特図始動口232への入賞に基づく抽選(特図2の当否判定)を、第1特図始動口230への入賞に基づく抽選(特図1の当否判定)よりも優先して行う。言い換えれば、本実施形態のパチンコ機100では、第1の特別始動領域に遊技球が進入した場合に第1の乱数記憶領域に乱数を最大保留数まで格納し、第2の特別始動領域に遊技球が入賞した場合に第2の乱数記憶領域に乱数を最大保留数まで格納する入賞記憶部と、前記第1の乱数記憶領域および前記第2の乱数記憶領域の両方に乱数が記憶されている場合に、前記第1の乱数記憶領域に前記乱数が記憶された時期および前記第2の乱数記憶領域に前記乱数が記憶された時期とは無関係に該第2の乱数記憶領域に記憶されている乱数に基づいて当否判定を行うとともに、前記第1の乱数記憶領域に乱数が記憶されておらず、かつ前記第2の乱数記憶領域に乱数が記憶されている場合には、該第2の乱数記憶領域に記憶されている乱数に基づいて当否判定を行い、前記第2の乱数記憶領域に乱数が記憶されておらず、かつ前記第1の乱数記憶領域に乱数が記憶されている場合には、該第1の乱数記憶領域に記憶されている乱数に基づいて当否判定を行う当否判定手段を備えている。また、第1特図表示装置212あるいは第2特図表示装置214による特図変動遊技の大当り判定の結果の報知は、主制御部300で行われ、第2特図始動口232への入賞に基づく当否判定の結果報知が、第1特図始動口230への入賞に基づく当否判定の結果報知よりも優先して行われ、当否判定が行われていない始動情報として、特図1の始動情報と特図2の始動情報のうちの特図1の始動情報のみが残っている状態で、特図2の始動情報が新たに記憶された場合には、新たに記憶された特図2の始動情報に基づく当否判定の結果の報知が、既に記憶されていた特図1の始動情報に基づく当否判定の結果の報知よりも先に行われる。また、始動情報を取得する始動情報取得手段は、第1の始動情報記憶手段および第2の始動情報記憶手段のうちの両方に始動情報が記憶されている場合には、該第2の始動情報記憶手段から始動情報を取得し、該第1の始動情報記憶手段および該第2の始動情報記憶手段のうちの一方に始動情報が記憶されている場合には、始動情報が記憶されている始動情報記憶手段から始動情報を取得するものである。なお、特図2状態更新処理に続いて先に特図2関連抽選処理を行い、それから、特図1状態更新処理を行い、その後、特図1関連抽選処理を行うようにしてもよい。
図26は、特図関連抽選処理の流れを示すフローチャートである。この図26に示す特図関連抽選処理では、特図1と特図2を区別しないで示しているが、先に特図2についてステップS2291〜ステップS2296までの処理を行い、その後、特図1についてステップS2291〜ステップS2296までの処理を行う。ここでは、特図2と特図1を区別しないで説明する。
図26に示す特図関連抽選処理では、まず、特図保留情報があるか否かを判定する(ステップS2291)。ここにい特図保留情報とは、特図の保留数を指す。すなわち、ここでは、保留している特図変動遊技の数が1以上であるか否かを判定する。なお、特図の保留数をデータとして持っていなくとも、例えば、保留に対応した乱数(特図当選乱数)を特図保留情報として認識するようにしても良い。特図保留情報がなければ、この特図関連抽選処理は終了になり、特図保留情報があればステップS2292に進む。ステップS2292では、特図表示装置(212,214)が特図変動表示中であるか、または停止表示中であるか否かを判定し、いずれかの表示中である場合には、この特図関連抽選処理は終了になり、いずれの表示中でもない場合には、ステップS2293に進む。ステップS2293では、特図作動中であるか否かを判定し、特図作動中であれば、この特図関連抽選処理は終了になり、特図非作動中であれば、ステップS2294に進む。
ステップS2294では特図抽選処理を行う。ここではまず、RAM308に設けられた特図の保留記憶部から、最も過去に格納した始動情報である1セット分の乱数(特図当選乱数、大当り用特図乱数、小当り用特図乱数、ハズレ用特図乱数、および特図変動時間決定用乱数)を取り出し、その保留記憶部にまだ格納されている始動情報(乱数のセット)を、今記憶されている領域から隣の領域に移し替える。すなわち、最も過去に格納した始動情報を特図の保留記憶部から取り出し、さらに特図の保留記憶部に始動情報が格納されていれば、N番目に古い始動情報を特図2の保留記憶部におけるN−1番目に古い始動情報として設定したことになる。また、RAM308に記憶している保留数を1減算する。RAM308の特図の保留記憶部から1セット分の乱数(特図当選乱数、大当り用特図乱数、小当り用特図乱数、ハズレ用特図乱数、および特図変動時間決定用乱数)を取り出す処理を行う主制御部300のCPU304が、始動情報取得手段の一例に相当する。
図27(a)は特図抽選テーブルを示す図である。このテーブルは、主制御部300のROM306に記憶されている。
主制御部300のCPU304は、RAM308の保留記憶部から始動情報を取り出すと、確変フラグを参照し、確変フラグがオンであれば確率変動中(特図高確率状態)であるため、取得した特図当選乱数から確率変動中の特図大当り当選データを引き、キャリーが発生した場合(特図当選乱数よりも特図当選データの値が大きい場合)は特図大当りに当選とし、キャリーが発生しなかった場合は特図大当りには不当選になる。すなわち、特図大当り当選乱数範囲は0〜124になる。確率変動中では、特図当選乱数の元になる乱数は、図10に示す乱数生成回路318のチャンネルCH2から出力される。このチャンネルCH2には、図23に示す乱数生成回路初期設定処理における乱数生成範囲の設定(ステップS1053a)において0〜4999の乱数生成範囲が設定されており、確率変動中の特図当選乱数の取り得る範囲は0〜4999になる。したがって、確率変動中における特図大当りの当選確率は1/40になる。一方、確変フラグがオフであれば非確率変動中(特図低確率状態)であるため、取得した特図当選乱数から、確率変動中のデータと同じ非確率変動中の特図大当り当選データを引き、キャリーが発生した場合(特図当選乱数よりも特図当選データの値が大きい場合)は特図大当りに当選とし、キャリーが発生しなかった場合は特図大当りには不当選になる。すなわち、非確率変動中でも特図大当り当選乱数範囲は0〜124になる。非確率変動中では、特図当選乱数の元になる乱数は、図10に示す乱数生成回路318のチャンネルCH1から出力される。このチャンネルCH1には、乱数生成範囲の設定(ステップS1053a)において0〜49999の乱数生成範囲が設定されており、非確率変動中の特図当選乱数の取り得る範囲は0〜49999になる。したがって、非確率変動中における特図大当りの当選確率は1/400になる。
本実施形態では、特図当選乱数の取り得る範囲(乱数生成範囲)を、デフォルトの0〜65535から0〜49999に制限することで大当り確率を、きりのよい1/400にすることができる。また、特図大当り当選データを、確率変動中と非確率変動中で同じ値にすることができる。乱数生成範囲を制限せずに確率を決定することは開発工数の増大を招くとともに誤った確率設計の原因となってしまう場合がある。特に、一の契機に基づいて複数回の抽選を行う場合に煩雑さはより顕著になってしまう。よって、乱数生成範囲を制限することは開発工数を削減するとともに、抽選処理の安定化を図ることができるといえる。また、特図大当り当選データを、確率変動中と非確率変動中で共通化することも、開発工数を削減するとともに、抽選処理の安定化を図ることができるといえる。
図27(a)では、特図大当りの抽選テーブルしか示していないが、特図小当りの当選データとして所定の値が用意されている。主制御部300のCPU304は、取得した特図当選乱数から特図大当り当選データを引き、キャリーが発生しなかった場合(特図当選乱数よりも特図当選データの値が小さい場合)には、今度は、特図大当り当選データを引いた値から特図小当り当選データを引き、ここでキャリーが発生した場合(特図当選乱数よりも特図小当り当選データの値が大きい場合)は特図小当りに当選とし、ここでもキャリーが発生しなかった場合はハズレになる。なお、ハズレの当選データを別途設けておいてもよい。こうして、特図の「大当り」、「小当り」、「ハズレ」が判定され、判定結果を特図当否判定結果として得る。なお、保留している特図変動遊技の数は、RAM308に設けた特図保留数記憶領域に記憶するようにしており、ステップS2294を実行するたびに、保留している特図変動遊技の数から1を減算した値を、この特図保留数記憶領域に記憶し直すようにしている。
次いで、図26に示す特図関連抽選処理では、特図当否判定結果に基づいて特図の停止図柄をソフトウェア乱数を用いて抽選する(ステップS2295)。
図27(b)は、停止図柄抽選テーブルを示す図である。このテーブルも、主制御部300のROM306に記憶されている。この停止図柄抽選テーブルは、当否判定結果ごとに特図の停止図柄態様(図5(a)参照)に対応した図柄当選データが規定されている。また、同図(b)には、当選確率も示されている。
主制御部300のCPU304は、当否判定結果が大当りの場合であれば、RAM308の保留記憶部から先に取得した1セット分の乱数のうちの大当り用特図乱数(取り得る数値範囲は0〜99)から特図A、特図B、・・・特図Fの順序で各停止図柄に対応した図柄当選データを徐々に減算し、キャリーが発生した場合の停止図柄を特図決定結果とする。また、当否判定結果が小当りの場合であれば、RAM308の保留記憶部から先に取得した1セット分の乱数のうちの小当り用特図乱数(取り得る数値範囲は0〜99)から特図Gの図柄当選データを引き、キャリーが発生した場合は「特図G」に当選とし、キャリーが発生しなかった場合には、特図Gの図柄当選データを引いた値からさらに特図Hの図柄当選データを引き、ここではキャリーが発生するため「特図H」に当選とする。なお、特図Hの図柄当選データを引く前に、「特図H」に当選したと判定してもよい。このようにして、当否判定結果が小当りの場合には、特図決定結果として「特図G」または「特図H」を決定する。さらに、当否判定結果がハズレの場合であれば、RAM308の保留記憶部から先に取得した1セット分の乱数のうちのハズレ用特図乱数(取り得る数値範囲は0〜99)から特図Iの図柄当選データを引き、キャリーが発生した場合は「特図I」に当選とし、キャリーが発生しなかった場合には、特図Iの図柄当選データを引いた値からさらに特図Jの図柄当選データを引き、ここではキャリーが発生するため「特図J」に当選とする。なおここでも、特図Jの図柄当選データを引く前に、「特図J」に当選したと判定してもよい。このようにして、当否判定結果がハズレの場合には、特図決定結果として「特図I」または「特図J」を決定する。なお、第1副制御部400では、ここで決定された特図決定結果に応じた装飾図柄の組合せである停止図柄態様を決定する。
また、RAM308の保留記憶部から先に取得した1セット分の乱数のうちの特図変動時間決定用乱数(取り得る数値範囲は0〜255)を取得し、取得した特図変動時間決定用乱数を用い、特図決定結果に基づいて、複数の変動時間のうちから特図表示装置(212,214)に特図を変動表示する時間(特図変動時間)を1つ選択する。なお、第1副制御部400では、ここで決定された特図変動時間に応じた装飾図柄表示装置208の演出態様を決定する。
ステップS2296では、RAM308の保留記憶部から先に取得した1セット分の乱数を消去し、この特図関連抽選処理は終了になる。
ステップS229の特図関連抽選処理に続いて行われるステップS231では、コマンド設定送信処理を行い、各種のコマンドが第1副制御部400に送信される。なお、第1副制御部400に送信する出力予定情報は本実施形態では16ビットで構成しており、ビット15はストローブ情報(オンの場合、データをセットしていることを示す)、ビット11〜14はコマンド種別(本実施形態では、基本コマンド、図柄変動開始コマンド、図柄変動停止コマンド、入賞演出開始コマンド、終了演出開始コマンド、当りラウンド数指定コマンド、復電コマンド、RAMクリアコマンド、特図保留増加コマンド、普図保留増加コマンドなどコマンドの種類を特定可能な情報)、ビット0〜10はコマンドデータ(コマンド種別に対応する所定の情報)で構成している。
具体的には、ストローブ情報は上述のコマンド送信処理でオン、オフするようにしている。また、コマンド種別が図柄変動開始コマンドの場合であればコマンドデータに、特図停止図柄を表す情報、制御状態を表す情報(時短フラグおよび確変フラグの設定状態を表す情報)、特図変動時間を表す情報などを示す情報を含み、図柄変動停止コマンドの場合であれば、特図停止図柄を表す情報(特図決定結果)、制御状態を表す情報などを含み、入賞演出開始コマンドおよび終了演出開始コマンドの場合であれば、制御状態を表す情報などを含み、当りラウンド数指定コマンドの場合であれば制御状態を表す情報、当りラウンド数などを含むようにしている。コマンド種別が基本コマンドを示す場合は、コマンドデータにデバイス情報、第1特図始動口230への入賞の有無、第2特図始動口232への入賞の有無、可変入賞口234への入賞の有無などを含む。
また、上述の一般コマンド回転開始設定送信処理では、コマンドデータにRAM308に記憶している、特図停止図柄を表す情報(特図決定結果)、制御状態を表す情報、特図変動時間を表す情報、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。
上述の一般コマンド回転停止設定送信処理では、コマンドデータにRAM308に記憶している、特図停止図柄を表す情報(特図決定結果)、制御状態を表す情報などを示す情報を設定する。
上述の一般コマンド入賞演出開始設定送信処理では、コマンドデータに、RAM308に記憶している、入賞演出期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、制御状態を表す情報、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。入演出開始コマンドを受信した第1副制御部400は、その入演出開始コマンドに基づいて第2副制御部500に入賞演出制御コマンドを送信する。入賞演出制御コマンドを受信した第2副制御部500は、装飾図柄表示装置208に、大当り遊技が開始されることを遊技者に報知する画像を所定のオープニング演出期間(例えば3秒間)表示させ、大当り遊技が開始する。
上述の一般コマンド終了演出開始設定送信処理では、コマンドデータに、RAM308に記憶している、演出待機期間中に装飾図柄表示装置208・各種ランプ418・スピーカ120に出力する演出制御情報、制御状態を表す情報、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。終了演出開始コマンドを受信した第1副制御部400は、その終了演出開始コマンドに基づいて第2副制御部500に終了演出制御コマンドを送信する。終了演出制御コマンドを受信した第2副制御部500は、装飾図柄表示装置208に大当りを終了することを遊技者に報知する画像を所定の終了演出期間(例えば3秒間)表示させ、大当り遊技が終了する。
上述の一般コマンド大入賞口開放設定送信処理では、コマンドデータに、RAM308に記憶している当りラウンド数、現在のラウンド数、制御状態を表す情報などを示す情報を設定する。上述の一般コマンド大入賞口閉鎖設定送信処理では、コマンドデータに、RAM308に記憶している現在のラウンド数、制御状態を表す情報、保留している第1特図変動遊技または第2特図変動遊技の数などを示す情報を設定する。
また、このステップS231では一般コマンド特図保留増加処理も行われる。この一般コマンド特図保留増加処理では、特図保留増加コマンドのコマンドデータにRAM308の送信用情報記憶領域に記憶している特図識別情報(特図1または特図2を示す情報)、制御状態を表す情報、事前判定した特図1あるいは特図2の情報を設定する。
さらに、このステップS231では一般コマンド普図保留増加処理も行われる。この一般コマンド普図保留増加処理では、普図保留増加コマンドのコマンドデータに、制御状態を表す情報等を設定する。また、主制御部300から第1副制御部400には、普図絡みのコマンドとして、普図の変動表示が開始した(する)ことを表す普図変動開始コマンドも送信される。なお、主制御部300から第1副制御部400には、普図の変動表示が停止した(する)ことを表す普図変動停止コマンドや、一対の羽根部材2321が開放を開始した(する)ことを表す電チュー開放開始コマンドや、一対の羽根部材2321が閉鎖した(する)ことを表す電チュー閉鎖コマンドを送信するようにしてもよい。
第1副制御部400では、受信した出力予定情報に含まれるコマンド種別により、主制御部300における遊技制御の変化に応じた演出制御の決定が可能になるとともに、出力予定情報に含まれているコマンドデータの情報に基づいて、演出制御内容を決定することができるようになる。また、第1副制御部400では、コマンドに含まれている当りラウンド数と現在のラウンド数に基づき、当り全ラウンドが終了するまでの残りラウンド数を取得する。
また、このコマンド設定送信処理では、図4に示す払出制御部600にもコマンドを送信する。払出制御部600に出力する出力予定情報および払出要求情報は1バイトで構成しており、ビット7にストローブ情報(オンの場合、データをセットしていることを示す)、ビット6に電源投入情報(オンの場合、電源投入後一回目のコマンド送信であることを示す)、ビット4〜5に暗号化のための今回加工種別(0〜3)、およびビット0〜3に暗号化加工後の払出要求数を示すようにしている。
次に、図24に示す主制御部タイマ割込処理では、外部出力信号設定処理(ステップS233)を行う。この外部出力信号設定処理では、RAM308に記憶している遊技情報を、情報出力回路336を介してパチンコ機100とは別体の情報入力回路350に出力する。
ステップS235では、デバイス監視処理を行う。
図28は、デバイス監視処理の流れを示すフローチャートである。
まず、ステップS235aでは、内部情報レジスタ3101の情報を取得する。なお、このステップS235aはタイマ割込み毎に実行されるため、内部情報レジスタ3101の情報はタイマ割込み毎に取得されることになる。
ステップS235bでは、ステップS235aで取得した情報に基づいて、乱数生成回路318に異常があるか否かを判定する。なお、ここでの乱数生成回路の異常とは、周波数監視回路3182の異常および乱数監視回路3184の異常の双方を指す。ここで、異常があると判定された場合にはステップS235cに進み、異常があると判定されなかった場合にはステップS235eに進む。
ステップS235cでは、乱数生成回路異常フラグをオンに設定する。なお、このフラグはRAM308内に記憶されている。より具体的には、周波数監視回路3182の異常を示すフラグおよび乱数監視回路3184の異常を示すフラグがある。以下では、これらのフラグを総称して乱数生成回路異常フラグと称する場合がある。
続いて実行されるステップS235dでは、乱数生成回路異常フラグ設定コマンドの送信準備が実行され、ステップS235eに進む。なお、この乱数生成回路異常フラグ設定コマンドは、周波数監視回路3182の異常か、乱数監視回路3184の異常か識別可能な情報を含むコマンドである。
ステップS235eでは、その他デバイス監視処理が実行される。例えば、上述のステップ205において信号状態記憶領域に記憶した各種センサの信号状態を読み出して、ガラス枠開放エラーの有無または下皿満タンエラーの有無などを監視し、ガラス枠開放エラーまたは下皿満タンエラーを検出した場合に、第1副制御部400に送信すべき送信情報に、ガラス枠開放エラーの有無または下皿満タンエラーの有無を示すデバイス情報を設定する。また、図4に示す各種ソレノイド332を駆動して第2特図始動口232や、可変入賞口234の開閉を制御したり、駆動回路324、326、330を介して普通図柄表示装置210、第1特図表示装置212、第2特図表示装置214、各種状態表示部328などに出力する表示データを、I/O310の出力ポートに設定する。また、払出要求数送信処理(ステップS219)で設定した出力予定情報をI/O310の出力ポートを介して第1副制御部400に出力する。これらの処理が終了すると、このステップS235のデバイス監視処理は終了になる。
続いて実行されるステップS237では、電源の遮断(電断)を検出したか否かを判定するために、低電圧信号がオンであるか否かを判定する。そして、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS239に進み、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS241に進む。
ステップS239では、タイマ割込終了処理を行う。このタイマ割込終了処理では、ステップS201で一時的に退避した各レジスタの値を元の各レジスタに設定したり、割り込み許可の設定などを行い、その後、図21に示す主制御部メイン処理に復帰する。
一方、ステップS241では、復電時に電断時の状態に復帰するための電断時処理を行う。
図29は、主制御部における電断時処理の流れを示すフローチャートである。
この電断時処理では、まず、スタックポインタを復帰データとしてRAM308の所定の領域に退避し(ステップS2431)、次いで、RAM308に設けた電源ステータス記憶領域に記憶した電源ステータスをサスペンドを示す情報に更新する(ステップS2432)。続いて、RAM308の所定の領域(例えば全ての領域)に記憶している1バイトデータを初期値が0である1バイト構成のレジスタに全て加算することによりチェックサムを算出し、算出したチェックサムの結果をRAM308に設定する(ステップS2433)。最後に、RAM308へのアクセスを禁止に設定し(ステップS2433)、この電断時処理は終了になり、やがてパチンコ機100は電断する。なお、電圧が完全に低下する前に復帰した場合には、図6に示すリセット制御回路314内に設けられたWDT3141がタイムアウトすることによってリセット制御回路314によりリセットがかかり設定されたリセット動作(システムリセットかユーザリセット)が実行される。
続いて、図24に示す入賞受付処理(ステップS217)のうち、特図当選乱数および普図当選乱数を取得する処理について説明する。
図30は、ステップS217における入賞受付処理のうち、特図当選乱数および普図当選乱数を取得する処理の流れを示した図である。
ステップS217aでは、乱数生成回路異常フラグがオンに設定されているか否かを判定する。このフラグは、図28のステップS235cで設定されるフラグであり、乱数更新用のクロックの周波数に異常があった場合や、図10に示す乱数更新回路3183で更新される乱数が正常に更新されなかった場合等に、対応するフラグがオンに設定される。このフラグがオンに設定されている場合には、この入賞受付処理は終了になり、異常がなかった場合にはステップS217bに進む。
ステップS217bでは、第1特図始動口230に入賞したことを表す特図1の入球信号があり、且つ、保留している特図変動遊技の数が所定数(本実施形態では4)未満であるか否かを判定し、否定的な場合にはステップS217fへ進み、肯定的な場合にはステップS217cに進む。ステップS217cでは、RAM308に用意された確変フラグを参照し、確率変動中(特図高確率状態)か否かを判定する。確変フラグがオフに設定されていれば、非確率変動中(特図低確率状態)であり、ステップS217dが実行される。このステップS217dでは、乱数生成回路318のチャンネルCH1の乱数レジスタから乱数を取得する。本実施形態では乱数をラッチする契機となる入球信号とは別に、CPUに同様の信号が送られ、CPUはその信号を受信したことに基づいて所定のチャンネル(ここではCH1)における信号に対応する乱数レジスタからラッチされている乱数を取得する。CPU304は、取得した乱数にRレジスタの値を加算し、さらに1を加えた値を特図1当選乱数として得、ステップS217fに進む。なお、CPU304は、図23に示すステップS1053aにおいて設定された乱数生成範囲を認識しており、その乱数生成範囲に基づいて加算処理を行う。すなわち、加算した値が乱数生成範囲の最大値を超える場合には当該乱数生成範囲の最小値に残りの値を加算する。
一方、確変フラグがオンに設定されていれば、確率変動中であり、ステップS217eが実行される。このステップS217eでは、乱数生成回路318のチャンネルCH2の乱数レジスタから乱数を取得し、ステップS217dと同様に、CPU304は、取得した乱数にRレジスタの値を加算し、さらに1を加えた値を特図1当選乱数として得、ステップS217fに進む。
ステップS217fでは、第2特図始動口232に入賞したことを表す特図2の入球信号があり、且つ、保留している特図変動遊技の数が所定数(本実施形態では4)未満であるか否かを判定し、否定的な場合にはステップS217jへ進み、肯定的な場合にはステップS217gに進む。ステップS217gでも、ステップS217cと同様に、RAM308に用意された確変フラグを参照し、確変フラグがオフに設定されていれば(非確率変動中であれば)、乱数生成回路318のチャンネルCH1の乱数レジスタから乱数を取得し、ステップS217dと同様に、CPU304は、取得した乱数にRレジスタの値を加算し、さらに1を加えた値を、ここでは特図2当選乱数として得(ステップS217h)、ステップS217jに進む。一方、確変フラグがオンに設定されていれば(確率変動中であれば)、乱数生成回路318のチャンネルCH2の乱数レジスタから乱数を取得し、同じくステップS217dと同様に、CPU304は、取得した乱数にRレジスタの値を加算し、さらに1を加えた値を特図2当選乱数として得(ステップS217i)、ステップS217jに進む。
ステップS217jでは、普図始動口228に入賞したことを表す普図の入球信号があり、且つ、保留している普図変動遊技の数が所定数(本実施形態では2)未満であるか否かを判定し、否定的な場合には入賞受付処理は終了になり、肯定的な場合にはステップS217kに進む。ステップS217kでは、RAM308に用意された時短フラグを参照し、時短フラグがオフに設定されていれば、普図低確率状態(非電サポ中)であり、ステップS217lが実行される。ステップS217lでは、乱数生成回路318のチャンネルCH3の乱数レジスタから普図当選乱数として乱数を取得し、この入賞受付処理は終了になる。一方、時短フラグがオンに設定されていれば、普図高確率状態(電サポ中)であり、ステップS217mが実行される。ステップS217mでは、乱数生成回路318のチャンネルCH4の乱数レジスタから普図当選乱数として乱数を取得し、入賞受付処理は終了になる。
<第1副制御部400の処理>
図31を用いて、第1副制御部400の処理について説明する。なお、同図(a)は、第1副制御部400のCPU404が実行するメイン処理のフローチャートである。
まず、同図(a)のステップS301では、各種の初期設定を行う。電源投入が行われると、ステップS301の初期設定が実行される。この初期設定では、図4に示すI/Oポート410の初期設定や、RAM408内の記憶領域の初期化処理等を行う。
ステップS303では、タイマ変数が10以上か否かを判定し、タイマ変数が10となるまでこの処理を繰り返し、タイマ変数が10以上となったときには、ステップS305の処理に移行する。
ステップS305では、タイマ変数に0を代入する。
ステップS307では、コマンド処理を行う。第1副制御部400のCPU404は、主制御部300からコマンドを受信したか否かを判別する。このコマンド処理では、復電時サブ側フラグ設定処理等が行われるが、詳細については後述する。
ステップS309では、演出制御処理を行う。例えば、S307で新たなコマンドがあった場合には、このコマンドに対応する演出データをROM406から読み出す等の処理を行い、演出データの更新が必要な場合には演出データの更新処理を行う。
ステップS311では、図1に示すチャンスボタン136の押下を検出していた場合、ステップS309で更新した演出データをチャンスボタン136の押下に応じた演出データに変更する処理を行う。
ステップS313では、S309で読み出した演出データの中に音源IC416への命令がある場合には、この命令を音源IC416に出力する。
ステップS315では、S309で読み出した演出データの中に各種ランプ418の駆動回路420への命令がある場合には、この命令を駆動回路420に出力する。
ステップS317では、S309で読み出した演出データの中に演出可動体224の駆動回路422への命令がある場合には、この命令を駆動回路422に出力する。
ステップS319では、S309で読み出した演出データの中に第2副制御部500に送信する制御コマンドがある場合には、この制御コマンドを出力する設定を行い、S303へ戻る。
次に、図31(b)を用いて、第1副制御部400のコマンド受信割込処理について説明する。図31(b)は、第1副制御部400のコマンド受信割込処理のフローチャートである。このコマンド受信割込処理は、第1副制御部400が、主制御部300が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS331では、主制御部300が出力したコマンドを未処理コマンドとしてRAM408に設けたコマンド記憶領域に記憶し、このコマンド受信割込処理が終了する。
次に、図31(c)を用いて、第1副制御部400のCPU404によって実行する第1副制御部タイマ割込処理について説明する。図31(c)は、第1副制御部400のタイマ割込処理のフローチャートである。第1副制御部400は、所定の周期(本実施形態では2msに1回)でタイマ割込を発生するハードウェアタイマを備えており、このタイマ割込を契機として、タイマ割込処理を所定の周期で実行する。
第1副制御部タイマ割込処理のステップS341では、図31(a)に示す第1副制御部メイン処理におけるステップS303において説明したRAM408のタイマ変数記憶領域の値に、1を加算して元のタイマ変数記憶領域に記憶する。従って、ステップS303において、タイマ変数の値が10以上と判定されるのは20ms毎(2ms×10)となる。
第1副制御部タイマ割込処理のステップS343では、ステップS319で設定された第2副制御部500への制御コマンドの送信や、演出用乱数の更新処理等を行い、このタイマ割込処理が終了する。
<第2副制御部500の処理>
第2副制御部500では、第1副制御部400から送信されてきた制御コマンドに基づいて、装飾図柄表示装置208の制御を実行する。第2副制御部500には、装飾図柄表示装置208に画像を表示する画像制御部が接続されている。この画像制御部は、VRAM(ビデオRAM)およびGPU(グラフィックス プロセッシング ユニット)を有する。GPUは、第2副制御部500のROMに記憶された絵柄情報等を第2副制御部500のCPUからの信号に基づいて読み出してVRAMの表示領域(ワークエリア)を使用して表示画像を生成し装飾図柄表示装置208に画像を表示する。
より具体的に説明すると、第2副制御部500のCPUは、最初に、画像データの転送指示を行う。ここでは、まず、VRAMの表示領域Aと表示領域Bの描画領域の指定をスワップする。これにより、描画領域に指定されていない表示領域に記憶された1フレームの画像が装飾図柄表示装置208に表示される。次に、CPUは、GPUのアトリビュートレジスタに、位置情報等テーブルに基づいてROM座標(ROMの転送元アドレス)、VRAM座標(VRAMの転送先アドレス)などを設定した後、ROMからVRAMへの画像データの転送開始を指示する命令を設定する。GPUは、アトリビュートレジスタに設定された命令に基づいて画像データをROMからVRAMに転送する。その後、GPUは、転送終了割込信号をCPUに対して出力する。
次いで、GPUからの転送終了割込信号が入力されたか否かを判定し、転送終了割込信号が入力された場合は、演出シナリオ構成テーブルおよびアトリビュートデータなどに基づいて、パラメータ設定を行う。ここでは、CPUは、VRAMに転送した画像データに基づいてVRAMの表示領域AまたはBに表示画像を形成するために、表示画像を構成する画像データの情報(VRAMの座標軸、画像サイズ、VRAM座標(配置座標)など)をGPUに指示する。GPUはアトリビュートレジスタに格納された命令に基づいてアトリビュートに従ったパラメータ設定を行う。一方、GPUからの転送終了割込信号が未入力の場合は、転送終了割込信号が入力されるのを待つ。
続いて、描画指示を行う。この描画指示では、CPUは、GPUに画像の描画開始を指示する。GPUは、CPUの指示に従ってフレームバッファにおける画像描画を開始する。
描画指示が行われると、画像の描画終了に基づくGPUからの生成終了割込み信号が入力されたか否かを判定し、生成終了割込み信号が未入力の場合には、生成終了割込み信号が入力されるのを待ち、生成終了割込み信号が入力された場合には、RAMの所定の領域に設定され、何シーンの画像を生成したかをカウントするシーン表示カウンタを、インクリメント(+1)して処理を終了する。
また、第2副制御部500では、第1副制御部400から送信されてきた制御コマンドに基づいて、遮蔽装置246の制御も実行する。
ここで、上記説明した内容を踏まえて、遊技台への電圧供給が低下した場合の動作について説明する。
例えば大当たり中の状態で停電などによって電源が切られた場合、再度電源投入によって遊技台が初期状態になると、遊技者にとって著しく不利益な状態になる。このような事態にならないよう、コンデンサに蓄えられた電力により遊技台の状態を保持する電断時処理(図24のステップS241)が実行される。この電断時処理は、電源が切られた場合の他、静電気などの要因により供給電圧が一時的に低下した場合にも実行される。以下、電源が切られた場合(以下、電源オフと称する)の動作と、供給電圧が一時的に低下した場合(以下、瞬断と称する)の動作について、図32を用いて説明する。同図(a)は、電源オフの場合の動作を示す図であり、(b)は、瞬断の場合の動作を示す図である。
電源が切られた場合、電圧が供給されなくなる(電断発生)が、すぐに電圧は0にはならず、コンデンサに蓄えられた電力により供給電圧が徐々に降下する。供給電圧が所定の電圧(本実施形態では9V)まで効果すると電圧監視回路338から低電圧信号がCPU304に送信される。この信号を受信したことにより、主制御部タイマ割込み処理のステップS237により電断が発生したと判定され、ステップS241の電断時処理が実行される。図32(a)には、電断が発生してから供給電圧が9Vに降下するまで通常処理が実行され、供給電圧が9Vになった時点で電断時処理が開始されていることが示されている。この電断時処理により、RAM308の内部に遊技台の状態を示すデータが記憶される。なお、本実施形態では、この電断時処理の実行に必要な時間(主制御部電断時処理猶予時間)を十分確保することができるコンデンサが備えられている。その後、電断時処理が終了すると、そのまま待機状態になる。その後電源の供給が再開されない場合、電圧が0に落ちて遊技台の動作が停止する。
一方、瞬断の場合にも、電圧監視回路338から低電圧信号がCPU304に送信されることにより、上記電断時処理が実行された後、そのまま待機状態になる。図32(b)には、一時的な電圧降下により、電断時処理が開始されていることが示されている。ここで、電圧が動作電圧まで回復しても、待機状態が継続する。この待機状態が継続していると、主制御部300のリセット制御回路314のWDT3141がリスタートされず(図24のステップS203が実行されない)、WDT3141がタイムアウトする。このことによりリセット制御回路314はリセット信号(システムリセット信号およびユーザリセット信号のいずれか)を出力する。その後、図21に示す主制御部メイン処理が再開すると、電断時処理で記憶されていたデータに基づいてステップS109のデータ書き戻し処理を含む復帰処理(ステップS109〜ステップS111)が実行される。図32(b)には、WDT3141のタイムアウトによるリセット信号が送信されたことにより、待機状態から復帰処理(リセット処理)に移っていることが示されている。この復帰処理により遊技台の状態が電断時処理前の状態に復帰する。なお、ここで、電断時処理で記憶されていたデータに不具合があった場合は、電断時処理前の状態に復帰できないと判定され、RAM308の内容がクリアされる(図21のステップS113)。
次に、本実施形態の乱数生成回路318により、乱数の生成範囲を設定することの効果について説明し、その後問題点について説明する。
上述したように本実施形態の遊技台が有する乱数生成回路318では、抽選結果の基になる乱数の生成範囲を設定することができる。この機能を利用して、遊技状態の設定が容易になる。
まず、乱数生成範囲が0〜65535の場合について説明する。例えば、これらの乱数が当たりかハズレのいずれかに対応している場合に、当選確率が1/400(0.25%)になるように設計しようとしたとする。生成される乱数は65536通りあるが、65536の1/400を計算すると163.84となり、整数にならない。仮にこの数字に近い164通りの乱数を当たりに対応させた場合、厳密には1/400の当選確率にならない。
ここで、上記の乱数生成範囲が0〜49999に設定されたとする。上記の場合と同様に当選確率が1/400(0.25%)になるようにするには、生成される乱数50000通りの1/400、すなわち125通りの値を当たりに対応させればよい。例えば、50000通り乱数のうち0〜124までの値を当たりに対応させ、それ以外の125〜49999の値をハズレに対応付けることで、当選確率を1/400にすることができる。すなわち、当選確率が設計値通り(例えば1/400)になるように、乱数生成範囲(例えば0〜49999)および当たりに対応する乱数の範囲(例えば0〜124)をそれぞれ設定することができる。
以上説明したように、乱数生成範囲を適切に設定することによって、所望の当選確率を設定することができる。これによって、例えば小当たりに対応する乱数生成範囲を除外して大当たりに対応する乱数生成範囲を残したり、あるいは大当たりに対応する乱数生成範囲の半分に該当する乱数が生成されないようにすることも可能である。特に図15を用いて説明したような乱数生成範囲が設定できれば、最大値だけを設定する場合と比較して遊技台の設計が容易になる。このため、乱数生成範囲を設定することは、遊技台の設計において有用であると言える。
次に、乱数生成範囲を異ならせることにより、当選確率を変更する方法について説明する。例えば、0〜49999の乱数生成範囲のうち、0〜124までの値を当たりに対応させた状態から、乱数生成範囲の最大値を49999から249に変更したとする。この場合、0〜124までの値が当たりに対応し、125〜249までの値がハズレに対応し、当選確率は1/2になる。すなわち、当たり又はハズレに対応する値を固定したまま乱数生成範囲だけを異ならせることにより、当選確率を容易に変更することができる。なお、上記説明では、よりわかり易くするために、当たりの範囲を偏らせた例について説明したが、当たりの範囲が偏っていなくてもよい。
生成された乱数に基づいて当たりかハズレかを判定する方法として、これらの対応を定めたテーブルを用意しておき、これを使用する方法が考えられる。しかし、この方法で当選確率を変更しようとした場合、当選確率に対応するテーブルをそれぞれ用意しておき、遊技の状態に応じてこれらを使い分ける処理を実行させる必要がある。上記説明した方法では、当たり又はハズレに対応する値を定めたテーブルが一つですむため、メモリの容量負担が少なくて済む。当然のことながら、テーブルを切り替える処理は不要である。
なお、本実施形態では、乱数生成範囲の異なる複数の乱数生成チャンネルを用意し、これらを使い分けることにより遊技中の当選確率を変更しているが、一つのチャンネルに対して適宜乱数生成範囲を変更する構成を用いて当選確率を変更させてもよい。
また、本実施形態では、乱数を加工した上で抽選に用いる場合があるが、この場合、加工を考慮したうえで対応するテーブルを用意すればよい。
ここで、図33を用いて、乱数生成範囲が意図せずに変更されてしまった場合の問題について説明する。同図は、乱数生成範囲の問題点を示す図である。
例えば、静電気等の要因によって上述した瞬断が生じ、その後復帰処理(ユーザリセット)が実行されたとする。この場合、乱数生成回路318の内部レジスタは、そのまま復帰処理以前の状態が維持される。ところが、電圧の変化によって内部レジスタの情報が書き換わる可能性がある。これによって乱数生成範囲が意図せずに変更されると、当選確率が変わってしまうことになる。
例えば、非確率変動状態において、図33(a)の上段に示すように、0〜49999の乱数生成範囲が設定されており、さらにこのうち0〜124(左下がりのハッチングで示す範囲)が当たりに対応する乱数であるとする。この状態で静電気等の要因が生じ、乱数生成範囲が0〜250になったとする。この場合、当選確率が1/400から1/2になってしまうため、店側にとっては大きな損害になってしまう。
また、確率変動状態において、図33(b)の上段に示すように、0〜4999の乱数生成範囲が設定されており、さらにこのうち0〜124(左下がりのハッチングで示す範囲)が当たりに対応する乱数であるとする。この状態で静電気等の要因が生じ、乱数生成範囲が0〜59999になったとする。この場合、当選確率が1/40から1/480になってしまうため、遊技者にとって著しく不利益になる。
上記の例で説明したように、乱数が生成される数値範囲を任意の数値範囲に制限する手法を用いて抽選処理を行うと、何らかの異常で制限した数値範囲が変化した場合に抽選処理の不安定化を招いてしまうという問題が生じる。
このような事態を防止するため、本実施形態の遊技台では、図23のステップS1053aにおいて、乱数生成範囲を復帰処理の要因が発生した直前の状態に設定し直す処理を実行させる。このように再度乱数生成範囲を設定し直すことによって、上記のような問題が生じないようにすることができる。すなわち、乱数が生成される数値範囲を任意の数値範囲に制限する手法を用いて抽選処理を行いつつも、抽選処理の不安定化を招くことを抑止することができる。
なお、本実施形態では、遊技台の起動時に乱数生成範囲が設定されるため、復帰処理の要因が発生した直前の状態が、初期状態と同じであるが、例えば、遊技中に乱数生成範囲を変更可能な構成の場合には、直前の状態に戻す処理が実行されればよい。
また、本実施形態のように、乱数生成範囲が設定されていたチャンネルに対しては乱数生成範囲を設定し直すとともに、乱数生成範囲が設定されていないチャンネルに対しては乱数生成範囲を設定し直さない構成の場合、初期化されるチャンネルと初期化されないチャンネルが存在することになる。この場合、基本回路302の外部からチャンネルが初期化されたか否かがわからないため、不正を防止する効果がある。
さらに、本実施形態の遊技台では、図23のステップS1053bにおいて、乱数レジスタ3188をラッチすることを許容する許容状態にしている。このようにすることで、乱数レジスタ3188にラッチされている乱数に異常があった場合に、この乱数が使用される頻度を下げることができる。この際乱数ラッチフラグレジスタ3189の内容は、乱数レジスタ3188が乱数をラッチすることが可能な状態であることを示す情報に書き換えられる。なお、本実施形態では、ユーザプログラムによって、乱数レジスタ3188を許容状態にすることと、乱数生成範囲の設定を同時に実行している(図22参照)が、ハードウェアを用いて許容状態にするようにしてもよい。なお、本実施形態の遊技台では乱数レジスタ3188が許容状態になっても新たに乱数をラッチするまでは乱数は残った状態になるが、可能であれば乱数レジスタ3188の値を所定の値に設定(例えば0に設定)するようにしてもよい。この場合には、異常の可能性がある乱数を使用させないようにすることができる。
上記説明した再設定は、WDT3141によるユーザリセットが実行されてから、駆動電圧の判定(図20のステップS103)を経て実行される(図21ステップS1053)この判定処理に要する時間は電圧の供給具合に依存するため、一定ではない。このため再設定を反映した乱数が出力され始めるタイミングにランダム性を持たせることができ、不正防止に効果がある。なお上述した、CPU304からの更新命令が来た時点で乱数の最大値を更新する構成の場合にも、同様の効果がある。
なお、上記の説明では、電圧の変化によって生じる問題およびその対処法についての一例について説明したが、他にも例えば乱数生成回路318のスタート値選択回路3183b内の値が書き換わってしまう可能性もある。この場合、本来生成されるはずのない値が、乱数更新回路3183から出力されてしまう虞がある。このような問題に対しても、上記の乱数生成範囲の例と同様に、スタート値選択回路3183b内の値を復帰処理の要因が発生した直前の状態に設定し直す処理を実行させることにより、上記のような問題が生じないようにすることができる。また、乱数生成範囲に応じて、別途スタート値選択回路3183b内の値を設定し直すようにしてもよい。すなわち、乱数生成回路318で設定可能な値を必要に応じて適切に設定し直す処理を実行させることにより、電圧の変化により異常な動作を起こさないようにすることができる。
また、電圧の変化以外にも、例えば、指定エリア外走行によって予期せぬ動作が生じた場合にも、上記のような問題が生じる虞がある。特に、指定エリア外走行の場合は、プログラムミス等によって同じ状況が再現される可能性が高く、電圧が変化した場合よりも不正をしやすくなる虞がある。従って、本実施形態では、指定エリア外走行が生じた場合でも、図23のステップS1053aおよびステップS1053bによる再設定を行うようにしている。
ここで、上記説明を踏まえて、図21の主制御部メイン処理におけるWDT3141の起動開始のタイミング(ステップS111、ステップS115)について説明を補足する。
通常WDTでは、プログラムの実行とは独立してカウントアップが行われている。この構成により、プログラムの実行に何らかの問題があっても、これに影響されずにリセット動作(本実施形態ではユーザリセット)を実行することができる。このため、WDTは初期設定時に起動(再起動)される必要がある。しかし、この起動タイミングによっては、問題が生じることがある。この問題について、図21におけるステップS101の初期設定1の直後にWDTを起動する場合を例に挙げて説明する。
ユーザリセットによってRAM308に復帰用のデータが記憶されている状態で、主制御部メイン処理が開始されたとする。まず、ステップS101によって初期設定1が実行され、次いでWDTが起動する。次に、駆動電圧が十分確保されるまでステップS103による待機処理が実行される。
例えば供給電圧の不安定に起因して上記のユーザリセットが実行された場合等に、この待機処理の実行時間が長くなる場合がある。ここで待機処理に時間がかかると、後のステップS107やステップS109の実行中にWDTがタイムアウトして、再度ユーザリセットが実行されてしまう場合がある。この場合、再度主制御部メイン処理が最初から実行されるため、RAM308に記憶されている復帰用のデータがレジスタに戻されるまでの処理時間が長くなってしまう。
さらに、例えばステップS109において、RAM308のデータをレジスタに戻すとともに、RAM308のデータを消去する処理が実行されている場合には、RAM308のデータの一部が消去されている状態でユーザリセットが実行される可能性もある。この場合には、再度主制御部メイン処理が最初から実行されても、RAM308の復帰用のデータは不完全なものであり、ステップS107で復帰可能と判定されないことになる。仮にステップS107で復帰可能と判定されてもステップS109のデータ書き戻し処理で完全にユーザリセット前の状態に復帰させることができない。
このような問題を回避するため、本実施形態では、駆動電圧の判定後から主制御部タイマ割込み処理が許可されるまでの間にWDT3141を起動するように構成されている(ステップS111、ステップS115)。なお、上記構成は一例であり、ユーザリセット後に主制御部メイン処理が開始されてから、主制御部タイマ割込み処理が許可されるまでの間にWDT3141がタイムアウトしないように、WDT3141を起動させるようにすることが好ましい。また、ユーザリセットが行われてから、主制御部によって遊技の進行が開始される(本実施形態では、主制御部メイン処理のステップS117〜ステップS119が開始され、かつ、主制御部タイマ割込み処理が開始される)までの間に、WDT3141がタイムアウトしないように、WDT3141を起動させることが好ましい。特に、ユーザリセット後に遊技を復帰させるための処理(遊技の進行を開始可能にするための処理)に、液晶画像表示装置(装飾図柄表示装置)の初期設定処理を実行させるための待機処理が含まれる場合には、上記の問題がより生じやすくなるため、上記説明したタイミングでのWDT3141の起動がより効果的である。さらに、主制御部タイマ割込み処理の最初の処理において、WDT3141を起動させるようにしても、上記の問題を回避することができる。なお、上記説明ではユーザリセットが実行された場合を例に説明しているが、システムリセットが実行された場合であっても同様である。
ここで、図34を用いて、図12で説明した乱数更新回路3183の変形例について説明する。同図は、図12で説明した乱数更新回路3183の変形例を示す図である。
この図34(a)に示す乱数更新回路3183nは、図12で説明した乱数更新回路3183に、乱数列変更回路3183dを加えたものである。
乱数列変更回路3183dは、予め内部に複数の乱数テーブルが設けられている。図34(b)には、65536個の乱数の並びを予め定めた複数の乱数列が示されている。これらの複数の乱数列を使用する際には、同じ乱数列を継続して使用するか、一つの乱数列を一周した時点で別の乱数列に変更するかを設定することができる。さらに、別の乱数列に変更する場合には、指示がなくても自動的に変更を行うか、あるいはその都度変更を指示するか否かを設定することができる。なお、カウンタ回路3183aから一巡信号を受けた時点で、一つの乱数列を一周したと判定される。
乱数列変更回路3183d内で使用する乱数列が決定されると、カウンタ回路3183aから出力されるカウント値に従って、この乱数列から値が取り出される。この取り出された値が乱数として出力される。例えば図34(b)において、乱数列Bを使用することが決定した場合に、カウント値「5」が入力されると、乱数として「9806」が出力される(図34(b)の太枠で示す部分参照)。
ここで、最大値設定レジスタ3183cに最大値が設定された場合における処理の例について説明する。
図14では、最大値設定レジスタ3183cに設定された最大値に従ってカウント回路3183aから出力される値の範囲が変更される例について説明した。なお、この図14では、このカウント回路3183aから出力される値をそのまま乱数として用いていた。ここでは、カウント回路3183aから出力される値を乱数ではなくカウント値として用い、乱数列変更回路3183dに入力する。
例えば、最大値が9999に設定された場合、0〜9999のカウント値がカウント回路3183aから出力されることになる。ここで、乱数列変更回路3183dには、最大値設定レジスタ3183cから最大値データを取得させ、乱数列の値のうち最大値を超える値を削除して空いた部分を詰める処理を実行させる。この処理により0〜9999の値をランダムに並べた乱数列が用意されることになる。この乱数列を用いて上記カウント値に対応する値を乱数として出力させると、乱数生成範囲を0〜9999とする乱数を出力させることができる。なお、上記方法は一例であり、例えば、カウント値に対応する値を乱数列から参照したときに最大値を超えている場合には以降の値を順次参照し、参照された値が最大値を超えない値であればその値を出力する、というように他の方法を用いてもよい。
ここで、上記の乱数更新回路3183nを用いた場合における、乱数監視回路3184における異常の検出例について説明する。この場合には、1回の乱数の更新前後においてカウンタ回路3183aから出力されるカウント値の値を比較し、同じカウント値が出力されていないか否かをチェックする。仮に同じカウント値が出力された場合には、異常を示す情報が出力される。なお、チェックのタイミングについては、この乱数更新周期よりも長い所定の周期毎であってもよい。なお、乱数監視回路3184に乱数列変更回路3183dから出力される乱数を監視させてもよいが、上記したようにカウンタ回路3138aから出力されるカウント値を監視するようにすることで監視精度を高めるとともに、監視負担を低減することができる。
また、図10に示す乱数生成回路318において説明したことと同様に、乱数生成回路318の外部に乱数監視回路3183nを設けてもよく、また、乱数更新回路3183nの内部に乱数監視回路3184を設けてもよい。
[実施形態2]
以下図面を用いて、本発明の第2実施形態であるスロットマシン100’について説明する。
<全体構成>
図35はスロットマシン100’の外観を示す外観斜視図である。図35に示すスロットマシン100’は、遊技に関する抽選を行い該抽選の結果に応じて遊技者に利益を付与する遊技台であり、本体101’と、本体101’の正面に取り付けられ、本体101’に対して開閉可能な前面扉102’と、を備える。本体101’の中央内部には、(図36参照)外周面に複数種類の図柄が配置されたリールが3個(左リール110’、中リール111’、右リール112’)収納され、スロットマシン100’の内部で回転できるように構成されている。これらのリール110’乃至112’はステッピングモータ等の駆動装置により回転駆動される。
本実施形態において、各図柄は帯状部材に等間隔で適当数印刷され、この帯状部材が所定の円形筒状の枠材に貼り付けられて各リール110’乃至112’が構成されている。リール110’乃至112’上の図柄は、遊技者から見ると、図柄表示窓113’から縦方向に概ね3つ表示され、合計9つの図柄が見えるようになっている。そして、各リール110’乃至112’を回転させることにより、遊技者から見える図柄の組み合せが変動することとなる。つまり、各リール110’乃至112’は複数種類の図柄の組合せを変動可能に表示する表示装置として機能する。なお、このような表示装置としてはリール以外にも液晶表示装置等の電子画像表示装置も採用できる。また、本実施形態では、3個のリールをスロットマシン100’の中央内部に備えているが、リールの数やリールの設置位置はこれに限定されるものではない。
各々のリール110’乃至112’の背面には、図柄表示窓113’に表示される個々の図柄を照明するためのバックライト200’(図36参照)が配置されており、各リール110’乃至112’はバックライト200’から発せられた光を透過する。バックライト200’は、各々の図柄ごとに遮蔽されて個々の図柄を均等に照射できるようにすることが望ましい。なお、スロットマシン100’内部において各々のリール110’乃至112’の近傍には、投光部と受光部から成る光学式センサ(図示省略)が設けられており、この光学式センサの投光部と受光部の間をリールに設けられた一定の長さの遮光片が通過するように構成されている。このセンサの検出結果に基づいてリール上の図柄の回転方向の位置を判断し、目的とする図柄が入賞ライン上に表示されるようにリール110’乃至112’を停止させる。
図柄表示窓113’は、リール110’乃至112’の一部が遊技者から見えるように切り抜かれた表示窓であって、この図柄表示窓113’が形成された部材は、リール110’乃至112’よりも遊技者側に配置されている。
入賞ライン表示ランプ120’は、有効となる入賞ライン114’を示すランプである。有効となる入賞ラインは、遊技媒体としてベットされたメダルの数によって予め定まっている。入賞ライン114’は5ラインあり、例えば、メダルが1枚ベットされた場合、中段の水平入賞ラインが有効となり、メダルが2枚ベットされた場合、上段水平入賞ラインと下段水平入賞ラインが追加された3本が有効となり、メダルが3枚ベットされた場合、右下り入賞ラインと右上り入賞ラインが追加された5ラインが入賞ラインとして有効になる。なお、入賞ライン114の数については5ラインに限定されるものではなく、また、例えば、メダルが1枚ベットされた場合に、中段の水平入賞ライン、上段水平入賞ライン、下段水平入賞ライン、右下り入賞ラインおよび右上り入賞ラインの5ラインを有効な入賞ラインとして設定してもよく、ベット数に関係なく、一律に同一数の入賞ラインを有効な入賞ラインとして設定してもよい。
告知ランプ123’は、例えば、後述する内部抽選において特定の入賞役(具体的には、ボーナス)に内部当選していること、または、ボーナス遊技中であることを遊技者に知らせるランプである。遊技メダル投入可能ランプ124’は、遊技者が遊技メダルを投入可能であることを知らせるためのランプである。再遊技ランプ122’は、前回の遊技において入賞役の一つである再遊技に入賞した場合に、今回の遊技が再遊技可能であること(メダルの投入が不要であること)を遊技者に知らせるランプである。リールパネルランプ128’は演出用のランプである。
ベットボタン130’乃至132’は、スロットマシン100’に電子的に貯留されているメダル(クレジットという)を所定の枚数分投入するためのボタンである。本実施形態においては、ベットボタン130’が押下される毎に1枚ずつ最大3枚まで投入され、ベットボタン131’が押下されると2枚投入され、ベットボタン132’が押下されると3枚投入されるようになっている。以下、ベットボタン132’はMAXベットボタンとも言う。なお、遊技メダル投入ランプ129’は、投入されたメダル数に応じた数のランプを点灯させ、規定枚数のメダルの投入があった場合、遊技の開始操作が可能な状態であることを知らせる遊技開始ランプ121’が点灯する。
メダル投入口141’は、遊技を開始するに当たって遊技者がメダルを投入するための投入口である。すなわち、メダルの投入は、ベットボタン130’乃至132’により電子的に投入することもできるし、メダル投入口141’から実際のメダルを投入(投入操作)することもでき、投入とは両者を含む意味である。
貯留枚数表示器125’は、スロットマシン100’に電子的に貯留されているメダルの枚数を表示するための表示器である。遊技情報表示器126’は、各種の内部情報(例えば、ボーナス遊技中のメダル払出枚数)を数値で表示するための表示器である。払出枚数表示器127’は、何らかの入賞役に入賞した結果、遊技者に払出されるメダルの枚数を表示するための表示器である。貯留枚数表示器125’、遊技情報表示器126’、および、払出枚数表示器127’は、7セグメント(SEG)表示器とした。
スタートレバー135’は、リール110’乃至112’の回転を開始させるためのレバー型のスイッチである。即ち、メダル投入口141’に所望するメダル枚数を投入するか、ベットボタン130’乃至132’を操作して、スタートレバー135’を操作すると、リール110’乃至112’が回転を開始することとなる。スタートレバー135’に対する操作を遊技の開始操作と言う。
ストップボタンユニット136’には、ストップボタン137’乃至139’が設けられている。ストップボタン137’乃至139’は、スタートレバー135’の操作によって回転を開始したリール110’乃至112’を個別に停止させるためのボタン型のスイッチであり、各リール110’乃至112’に対応づけられている。以下、ストップボタン137’乃至139’に対する操作を停止操作と言い、最初の停止操作を第1停止操作、次の停止操作を第2停止操作、最後の停止操作を第3停止操作という。なお、各ストップボタン137’乃至139’の内部に発光体を設けてもよく、ストップボタン137’乃至139’の操作が可能である場合、該発光体を点灯させて遊技者に知らせることもできる。
メダル返却ボタン133’は、投入されたメダルが詰まった場合に押下してメダルを取り除くためのボタンである。精算ボタン134’は、スロットマシン100’に電子的に貯留されたメダル、ベットされたメダルを精算し、メダル払出口155’から排出するためのボタンである。ドアキー孔140’は、スロットマシン100’の前面扉102’のロックを解除するためのキーを挿入する孔である。
ストップボタンユニット136’の下部には、機種名の表示と各種証紙の貼付とを行うタイトルパネル162’が設けられている。タイトルパネル162’の下部には、メダル払出口155’、メダルの受け皿161’が設けられている。
音孔145’はスロットマシン100’内部に設けられているスピーカの音を外部に出力するための孔である。前面扉102’の左右各部に設けられたサイドランプ144’は遊技を盛り上げるための装飾用のランプである。前面扉102’の上部には演出装置160’が配設されており、演出装置160’の上部には音孔143’が設けられている。この演出装置160’は、水平方向に開閉自在な2枚の右シャッタ163a’、左シャッタ163b’からなるシャッタ(遮蔽装置)163’と、このシャッタ163’の奥側に配設された液晶表示装置157’(演出画像表示装置)を備えており、右シャッタ163a’、左シャッタ163b’が液晶表示装置157’の手前で水平方向外側に開くと液晶表示装置157’の表示画面がスロットマシン100’正面(遊技者側)に出現する構造となっている。なお、液晶表示装置でなくとも、種々の演出画像や種々の遊技情報を表示可能な表示装置であればよく、例えば、複数セグメントディスプレイ(7セグディスプレイ)、ドットマトリクスディスプレイ、有機ELディスプレイ、プラズマディスプレイ、リール(ドラム)、或いは、プロジェクタとスクリーンとからなる表示装置等でもよい。また、表示画面は、方形をなし、その全体を遊技者が視認可能に構成している。本実施形態の場合、表示画面は長方形であるが、正方形でもよい。また、表示画面の周縁に不図示の装飾物を設けて、表示画面の周縁の一部が該装飾物に隠れる結果、表示画面が異形に見えるようにすることもできる。表示画面は本実施形態の場合、平坦面であるが、曲面をなしていてもよい。
図36は、前面扉102’を開けた状態のスロットマシン100’を示す正面図である。本体101’は、上面板261’、左側の側面板260’、右側の側面板260’、下面板264’および背面板242’で囲われ、前面に開口する箱体である。本体101’の内部には、背面板242’の上部に設けた通風口249’と重ならない位置に、内部に主制御基板を収納した主制御基板収納ケース210’が配置され、この主制御基板収納ケース210’の下方に、3つのリール110’乃至112’が配置されている。主制御基板収納ケース210’及びリール110’乃至112’の側方、即ち向って左側の側面板260’には、内部に副制御基板を収納した副制御基板収納ケース220’が配設してある。また、向かって右側の側面板260’には、主制御基板に接続されて、スロットマシン100’の情報を外部装置に出力する外部集中端子板248’が取り付けられている。
そして、下面板264’には、メダル払出装置180’(バケットに溜まったメダルを払出す装置)が配設され、このメダル払出装置180’の上方、即ちリール110’乃至112’の下方には、電源基板を有する電源装置252’が配設され、電源装置252’正面には電源スイッチ244’を配設している。電源装置252’は、スロットマシン100’に外部から供給される交流電源を直流化し、所定の電圧に変換して後述する主制御部300’、副制御部400’、500’等の各制御部、各装置に供給する。さらには、外部からの電源が断たれた後も所定の部品(例えば主制御部300’のRAM308’等)に所定の期間(例えば10日間)電源を供給するための蓄電回路(例えばコンデンサ)を備えている。
メダル払出装置180’の右側には、メダル補助収納庫240’が配設してあり、この背後にはオーバーフロー端子が配設されている(図示省略)。電源装置252’には、電源コード264’を接続する電源コード接続部が設けられ、ここに接続された電源コード264’が、本体101’の背面板242’に開設した電源コード用穴262’を通して外部に延出している。
前面扉102’は、本体101’の左側の側面板260’にヒンジ装置276’を介して蝶着され、図柄表示窓113’の上部には、演出装置160’、および、この演出装置160’を制御する演出制御基板(図示省略)、上部スピーカ272’、を設けている。図柄表示窓113’の下部には、投入されたメダルを選別するためのメダルセレクタ170’、このメダルセレクタ170’が不正なメダル等をメダル受皿161’に落下させる際にメダルが通過する通路266’等を設けている。さらに、音孔145’に対応する位置には低音スピーカ277’を設けている。
次に、図37を用いて、スロットマシン100’の制御部の制御部の回路構成について詳細に説明する。なお、同図は制御部の回路ブロック図を示したものである。
スロットマシン100’の制御部は、大別すると、遊技の進行を制御する主制御部300’と、主制御部300’が送信するコマンド信号(以下、単に「コマンド」と呼ぶ)に応じて、主な演出の制御を行う第1副制御部400’と、第1副制御部400’より送信されたコマンドに基づいて各種機器を制御する第2副制御部500’と、によって構成されている。
<主制御部>
まず、スロットマシン100’の主制御部300’について説明する。主制御部300’は、主制御部300’の全体を制御する基本回路302’を備えており、この基本回路302’には、CPU304’ (本発明の遊技制御手段、異常対応処理手段の一例に相当)と、制御プログラムデータ、入賞役の内部抽選時に用いる抽選データ、リールの停止位置等を記憶するためのROM306’と、一時的にデータを記憶するためのRAM308’ (本発明の記憶手段の一例に相当)と、各種デバイスの入出力を制御するためのI/O310’と、リアルタイム割り込みや時間計測等を行うためのタイマ回路311’と、時間や回数等を計測するためのカウンタ回路312’と、後述するシステムリセットとユーザリセットを制御するリセット制御回路314’ (本発明の異常検出手段の一例に相当)と、0〜65535の範囲で乱数を導出する乱数発生回路316’ (本発明の乱数生成手段の一例に相当)を搭載している。なお、ROM306’やRAM308’については他の記憶装置を用いてもよく、この点は後述する第1副制御部400’や第2副制御部500’についても同様である。この基本回路302’のCPU304’は、水晶発振器315b’が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。さらには、CPU304’は、電源が投入されるとROM306’の所定エリアに格納された分周用のデータをタイマ回路311’に送信し、タイマ回路311’は受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU304’に送信する。CPU304’は、この割込み要求を契機に各センサ等の監視や駆動パルスの送信を実行する。例えば、水晶発振器315b’が出力するクロック信号を8MHz、タイマ回路311’の分周値を1/256、ROM306の分周用のデータを47に設定した場合、割り込みの基準時間は、256×47÷8MHz=1.504msとなる。
主制御部300’は、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路338’を備えており、CPU304’は、この起動信号出力回路338’から起動信号が入力された場合に、遊技制御を開始する(後述する主制御部メイン処理を開始する)。
また、主制御部300’は、センサ回路320’を備えており、CPU304’は、割り込み時間ごとに各種センサ318’(ベットボタン130’センサ、ベットボタン131’センサ、ベットボタン132’センサ、メダル投入口141’から投入されたメダルのメダル受付センサ、スタートレバー135’センサ、ストップボタン137’センサ、ストップボタン138’センサ、ストップボタン139’センサ、精算ボタン134’センサ、メダル払出装置180’から払い出されるメダルのメダル払出センサ、リール110’のインデックスセンサ、リール111’のインデックスセンサ、リール112’のインデックスセンサ、エラー解除スイッチセンサ等)の状態を監視している。
なお、センサ回路320’がスタートレバーセンサのHレベルを検出した場合には、この検出を示す信号を乱数発生回路316’に出力する。この信号を受信した乱数発生回路316’は、そのタイミングにおける値をラッチし、抽選に使用する乱数を格納するレジスタに記憶する。
メダル受付センサは、メダル投入口141’の内部通路に2個設置されており、メダルの通過有無を検出する。スタートレバー135’センサは、スタートレバー135’内部に2個設置されており、遊技者によるスタート操作を検出する。ストップボタン137’センサ、ストップボタン138’センサ、および、ストップボタン139’は、各々のストップボタン137’乃至139’に設置されており、遊技者によるストップボタンの操作を検出する。
ベットボタン130’センサ、ベットボタン131’センサ、および、ベットボタン132’センサは、メダル投入ボタン130’乃至132’のそれぞれに設置されており、RAM308’に電子的に貯留されているメダルを遊技への投入メダルとして投入する場合の投入操作を検出する。精算ボタン134’センサは、精算ボタン134’に設けられている。精算ボタン134’が一回押されると、電子的に貯留されているメダルを精算する。メダル払出センサは、メダル払出装置180’が払い出すメダルを検出するためのセンサである。なお、以上の各センサは、非接触式のセンサであっても接点式のセンサであってもよい。
リール110’のインデックスセンサ、リール111’のインデックスセンサ、および、リール112’のインデックスセンサは、各リール110’乃至112’の取付台の所定位置に設置されており、リールフレームに設けた遮光片が通過するたびにLレベルになる。CPU304’は、この信号を検出すると、リールが1回転したものと判断し、リールの回転位置情報をゼロにリセットする。
エラー解除スイッチセンサは、後述するエラー処理状態を解除するためにスロットマシン100’の内部に設置されているエラー解除スイッチ(図示省略)に設置されており、操作されることで主制御部300’によりエラー状態を示すエラーフラグをクリアする処理が実行される。
主制御部300’は、リール110’乃至112’に設けたステッピングモータを駆動する駆動回路322’、投入されたメダルを選別するメダルセレクタ170’に設けたソレノイドを駆動する駆動回路324’、メダル払出装置180’に設けたモータを駆動する駆動回路326’、各種ランプ339’(入賞ライン表示ランプ120’、告知ランプ123’、遊技メダル投入可能ランプ124’、再遊技ランプ122’、遊技メダル投入ランプ129’、遊技開始ランプ121’、貯留枚数表示器125’、遊技情報表示器126’、払出枚数表示器127’)を駆動する駆動回路328’を備えている。
また、基本回路302’には、情報出力回路334’(外部集中端子板248’)を接続しており、主制御部300’は、この情報出力回路334’を介して、外部のホールコンピュータ(図示省略)等が備える情報入力回路652’にスロットマシン100’の遊技情報(例えば、遊技状態)を出力する。
また、主制御部300’は、電源管理部(図示しない)から主制御部300’に供給している電源の電圧値を監視する電圧監視回路330’を備えており、電圧監視回路330’は、電源の電圧値が所定の値(本実施例では9v)未満である場合に電圧が低下したことを示す低電圧信号を基本回路302’に出力する。
また、主制御部300’は、第1副制御部400’にコマンドを送信するための出力インタフェースを備えており、第1副制御部400’との通信を可能としている。なお、主制御部300’と第1副制御部400’との情報通信は一方向の通信であり、主制御部300’は第1副制御部400’にコマンド等の信号を送信できるように構成しているが、第1副制御部400’からは主制御部300’にコマンド等の信号を送信できないように構成している。
上述の第1実施形態では、図6を用いて説明した基本回路302を用いて主制御部300を構成する例について説明した。この第2実施形態のスロットマシン100’の基本回路302’も、図6に示す基本回路302と同様の構成のものであるとする。より具体的には、主制御部300’のCPU304’、ROM306’、RAM308’、タイマ回路311’、カウンタ回路312’、リセット制御回路314’、および乱数生成回路316’は、図6に示す基本回路302のCPU304、ROM(内蔵ROM)306、RAM(内蔵RAM)308、タイマ回路311、カウンタ回路312、リセット制御回路314、乱数生成回路318に、それぞれ相当する。また、主制御部300’のI/O310’は、図6に示す基本回路302の外部バス制御回路3101、パラレル入力ポート3102、アドレスデコード回路3103の3つに相当する。すなわち、上述した第1実施形態の遊技台100の効果(特に図6〜図20、図32〜図34の説明参照)が、本実施形態のスロットマシン100’にも適用される。
<副制御部>
次に、スロットマシン100’の第1副制御部400’について説明する。第1副制御部400’は、主制御部300’が送信した制御コマンドを入力インタフェースを介して受信する。第1副制御部400’は、この制御コマンドに基づいて第1副制御部400’の全体を制御する基本回路402’を備えており、この基本回路402’は、CPU404’と、一時的にデータを記憶するためのRAM408’と、各種デバイスの入出力を制御するためのI/O410’と、時間や回数等を計測するためのカウンタタイマ412’を搭載している。基本回路402’のCPU404’は、水晶発振器414’が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。ROM406’には、第1副制御部400’の全体を制御するための制御プログラム及びデータ、バックライト200’の点灯パターンや各種表示器を制御するためのデータ等が記憶されている。
CPU404’は、所定のタイミングでデータバスを介してROM406’の所定エリアに格納された分周用のデータをカウンタタイマ412’に送信する。カウンタタイマ412’は、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU404’に送信する。CPU404’は、この割込み要求のタイミングをもとに、各ICや各回路を制御する。
また、第1副制御部400’には、音源IC418’を設けており、音源IC418’に出力インタフェースを介してスピーカ272’、277’を設けている。音源IC418’は、CPU404’からの命令に応じてアンプおよびスピーカ272’、277’から出力する音声の制御を行う。音源IC418’には音声データが記憶されたS−ROM(サウンドROM)が接続されており、このROMから取得した音声データをアンプで増幅させてスピーカ272’、277’から出力する。
また、第1副制御部400’には、駆動回路422’が設けられ、駆動回路422’に入出力インタフェースを介して各種ランプ420’(上部ランプ、下部ランプ、サイドランプ144’、タイトルパネル162’ランプ、等)が接続されている。
また、CPU404’は、出力インタフェースを介して第2副制御部500’へ信号の送受信を行う。第2副制御部500’は、演出画像表示装置157’の表示制御を含む演出装置160’の各種制御を行う。なお、第2副制御部500’は、例えば、液晶表示装置157’の表示の制御を行う制御部、各種演出用駆動装置の制御を行う制御部(例えば、シャッタ163’のモータ駆動を制御する制御部)とするなど、複数の制御部で構成するようにしてもよい。
第2副制御部500’は、第1副制御部400’が送信した制御コマンドを入力インタフェースを介して受信し、この制御コマンドに基づいて第2副制御部500’の全体を制御する基本回路502’を備えており、この基本回路502’は、CPU504’と、一時的にデータを記憶するためのRAM508’と、各種デバイスの入出力を制御するためのI/O510’と、時間や回数等を計測するためのカウンタタイマ512’と、を搭載している。基本回路502’のCPU504’は、水晶発振器514’が出力する所定周期のクロック信号をシステムクロックとして入力して動作する。ROM506’には、第2副制御部500’の全体を制御するための制御プログラム及びデータ、画像表示用のデータ等が記憶されている。
CPU504’は、所定のタイミングでデータバスを介してROM506’の所定エリアに格納された分周用のデータをカウンタタイマ512’に送信する。カウンタタイマ512’は、受信した分周用のデータを基に割り込み時間を決定し、この割り込み時間ごとに割り込み要求をCPU504’に送信する。CPU504’は、この割込み要求のタイミングをもとに、各ICや各回路を制御する。
また、第2副制御部500’には、シャッタ163’のモータを駆動する駆動回路530’を設けており、駆動回路530’には出力インタフェースを介してシャッタ163’を設けている。この駆動回路530’は、CPU504’からの命令に応じてシャッタ163’に設けたステッピングモータ(図示省略)に駆動信号を出力する。
また、第2副制御部500’には、センサ回路532’を設けており、センサ回路532’には入力インタフェースを介してシャッタセンサ538’を接続している。CPU504’は、割り込み時間ごとにシャッタセンサ538’状態を監視している。
また、第2副制御部500’には、VDP534’(ビデオ・ディスプレイ・プロセッサー)を設けており、このVDP534’には、バスを介してROM506’、VRAM536’が接続されている。VDP534’は、CPU504’からの信号に基づいてROM506’に記憶された画像データ等を読み出し、VRAM536’のワークエリアを使用して表示画像を生成し、演出画像表示装置157’に画像を表示する。
次に、図38(a)を用いて、上述の各リール110’乃至112’に施される図柄配列について説明する。なお、同図は、各リール(左リール110’、中リール111’、右リール112’)に施される図柄の配列を平面的に展開して示した図である。
<図柄配列>
各リール110’乃至112’には、同図の右側に示す複数種類(本実施形態では8種類)の図柄が所定コマ数(本実施形態では、番号0〜20の21コマ)だけ配置されている。また、同図の左端に示した番号0〜20は、各リール110’乃至112’上の図柄の配置位置を示す番号である。例えば、本実施形態では、左リール110’の番号1のコマには「リプレイ」の図柄、中リール111’の番号0のコマには「ベル」の図柄、右リール112’の番号2のコマには「スイカ」の図柄、がそれぞれ配置されている。
<入賞役の種類>
次に、図38(b)を用いて、スロットマシン100’の入賞役の種類について説明する。なお、同図は入賞役(作動役を含む)の種類、各入賞役に対応する図柄組合せ、各入賞役の作動または払出を示している。
本実施形態における入賞役のうち、ビッグボーナス(BB1、BB2)および、レギュラーボーナス(RB)はボーナス遊技に移行する役として、また、再遊技(リプレイ)は新たにメダルを投入することなく再遊技が可能となる役として、それぞれ入賞役とは区別され「作動役」と呼ばれる場合があるが、本実施形態における「入賞役」には、作動役である、ビッグボーナス、レギュラーボーナス、再遊技が含まれる。また、本実施形態における「入賞」には、メダルの配当を伴わない(メダルの払い出しを伴わない)作動役の図柄組合せが有効ライン上に表示される場合も含まれ、例えば、ビッグボーナス、レギュラーボーナス、再遊技への入賞が含まれる。
スロットマシン100’の入賞役には、ビッグボーナス(BB1、BB2)と、レギュラーボーナス(RB)と、小役(チェリー、スイカ、ベル)と、再遊技(リプレイ)がある。なお、入賞役の種類は、これに限定されるものではなく、任意に採用できることは言うまでもない。
「ビッグボーナス(BB1、BB2)」(以下、単に、「BB」と称する場合がある)は、入賞により特別遊技であるビッグボーナス遊技(BB遊技)が開始される特別役(作動役)である。対応する図柄組合せは、BB1が「BB1−BB1−BB1」、BB2が「BB2−BB2−BB2」である。また、BB1、BB2についてはフラグ持越しを行う。すなわち、BB1、BB2に内部当選すると、これを示すフラグが立つ(主制御部300’のRAM308’の所定のエリア内に記憶される)が、その遊技においてBB1、BB2に入賞しなかったとしても、入賞するまで内部当選を示すフラグが立った状態が維持され、次遊技以降でもBB1、BB2に内部当選中となり、BB1に対応する図柄組み合わせ「BB1−BB1−BB1」、BB2に対応する図柄組み合わせ「BB2−BB2−BB2」が、揃って入賞する状態にある。
「レギュラーボーナス(RB)」は、入賞によりレギュラーボーナス遊技(RB遊技)が開始される特殊役(作動役)である。対応する図柄組合せは、「RB−RB−RB」である。なお、RBについても上述のBBと同様にフラグ持越しを行う。但し、(詳細は後述するが)ビッグボーナス遊技(BB遊技)においては、レギュラーボーナス遊技(RB遊技)が内部当選することや、図柄組み合わせが入賞ライン上に表示されること、を開始条件とせずに、ビッグボーナス遊技の開始後からレギュラーボーナス遊技を開始し、1回のレギュラーボーナス遊技を終了した場合には次のレギュラーボーナス遊技をすぐに開始するような自動的にレギュラーボーナス遊技を開始させる設定としてもよい。
「小役(チェリー、スイカ、ベル)」(以下、単に、「チェリー」、「スイカ」、「ベル」と称する場合がある)は、入賞により所定数のメダルが払い出される入賞役で、対応する図柄組合せは、チェリーが「チェリー−ANY−ANY」、スイカが「スイカ−スイカ−スイカ」、ベルが「ベル−ベル−ベル」である。また、対応する払出枚数は同図に示す通りである。なお、「チェリー−ANY−ANY」の場合、左リール110の図柄が「チェリー」であればよく、中リール111’と右リール112’の図柄はどの図柄でもよい。
「再遊技(リプレイ)」は、入賞により次回の遊技でメダル(遊技媒体)の投入を行うことなく遊技を行うことができる入賞役(作動役)であり、メダルの払出は行われない。なお、対応する図柄組合せは、再遊技は「リプレイ−リプレイ−リプレイ」である。
<遊技状態の種類>
次に、スロットマシン100’の遊技状態の種類について説明する。遊技状態とは、抽選などにおいて選択する抽選データの種別を識別するための情報である。本実施形態では、スロットマシン100’の遊技状態は、通常遊技と、BB遊技と、RB遊技と、ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技と、に大別した。但し、内部当選遊技は、通常遊技に含まれる区分けであってもよい。
<通常遊技>
通常遊技に内部当選する入賞役には、ビッグボーナス(BB)と、レギュラーボーナス(RB)と、再遊技(リプレイ)と、小役(チェリー、スイカ、ベル)がある。
「ビッグボーナス(BB)」は、入賞により特別遊技であるビッグボーナス遊技(BB遊技)が開始される特別役(作動役)である。レギュラーボーナス(RB)」は、入賞によりレギュラーボーナス遊技(RB遊技)を開始する特殊役(作動役)である。「再遊技(リプレイ)」は、入賞により次回の遊技でメダルの投入を行うことなく遊技を行うことができる入賞役(作動役)であり、メダルの払出も行われない。「小役」は、入賞により所定数のメダルが払い出される入賞役である。なお、各々の役の内部当選確率は、通常遊技に用意された抽選データから、各々の役に対応付けされた抽選データの範囲に該当する数値データを、内部抽選時に取得される乱数の範囲の数値データ(例えば65535)で除した値で求められる。通常遊技に用意された抽選データは、予めいくつかの数値範囲に分割され、各数値範囲に各々の役やハズレを対応付けしている。内部抽選を実行した結果得られた乱数が、何れの役に対応する抽選データに対応する値であったかを判定し、内部抽選役を決定する。この抽選データは少なくとも1つの役の当選確率を異ならせた設定1〜設定6が用意され、遊技店の係員等はいずれかの設定値を任意に選択し、設定することができる。
通常遊技は、内部抽選の結果が概ねハズレ(ビッグボーナス(BB)、レギュラーボーナス(RB)、再遊技(リプレイ)および小役に当選していない)となる設定、又は、停止表示結果がいずれの役の図柄組合せに該当しないハズレの停止表示結果が概ね導出される設定がされており、獲得するメダルの総数が、投入したメダルの総数に満たない遊技状態になっている。よって、遊技者にとっては不利益となる遊技状態である。但し、予め定めた条件を満たした場合(例えば、特定の図柄組み合わせが表示された場合)には、再遊技の内部当選の確率を上昇させる変動をさせてもよい遊技状態であり、この場合、遊技に用いられるメダルの消費が抑えられ、小役の入賞によって所定数のメダルが払い出されることにより、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態になり、遊技者にとっては利益となる遊技状態になる場合がある。
<BB遊技>
BB遊技は、遊技者にとっては利益となる遊技状態になるように設定されている。つまり、BB遊技は、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態となる。BB遊技は、本実施形態では、ビッグボーナス(BB)の入賞により開始され、RB遊技(後述する)を連続して繰り返し実行可能になっており、遊技中に予め定められた一の数(例えば、465枚)を超えるメダルが獲得された場合に終了する。但し、BB遊技はRB遊技を複数回数実行可能であればよく、例えば、RB遊技を開始する役(図柄組み合わせは例えば、リプレイ−リプレイ−リプレイ)を設定し、この役が内部当選した場合、または、入賞した場合に、RB遊技を開始するように設定してもよい。さらには、BB遊技は、BB遊技中のRB遊技を除くBB一般遊技を予め定めた回数(例えば、30回)実行した場合、または、BB遊技中に実行したRB遊技の回数が予め定めた回数に達した場合(例えば、3回)に終了するようにしてもよい。
<RB遊技>
RB遊技は、遊技者にとっては利益となる遊技状態になるように設定されている。つまり、RB遊技は、獲得するメダルの総数が、投入したメダルの総数を超える遊技状態となる。RB遊技は、本実施形態では、レギュラーボーナス(RB)の入賞により開始され、予め定めた一の役が内部当選の確率を上昇させる変動(例えば、「設定1」「通常遊技」に設定された「小役1」の内部当選確率1/15を、予め定めた一の値である内部当選確率1/1.2に上昇させる)をし、予め定めた一の数(例えば、8回)の入賞があった場合に終了する。RB遊技は、予め定めた回数(少なくとも2回)の入賞があった場合(例えば、8回)、または、RB遊技中に実行したRB遊技の回数が予め定めた回数に達した場合(例えば、8回)に終了するようにしてもよい。上述したBB遊技は、RB遊技を複数回数実行可能であるので、一回のRB遊技を行った場合には、BB遊技で得られるメダルの総数よりも少ないメダル数を獲得して終了することとなる。
<ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技>
ビッグボーナス(BB)およびレギュラーボーナス(RB)の内部当選遊技に内部当選する入賞役には、再遊技(リプレイ)と、小役がある。ビッグボーナス(BB)およびレギュラーボーナス(RB)は内部当選することはなく、ビッグボーナス(BB)かレギュラーボーナス(RB)に対応する図柄組み合わせを入賞させることが可能となっている遊技状態である。
但し、ビッグボーナス(BB)およびレギュラーボーナス(RB)に内部当選した次遊技から、再遊技の内部当選の確率を変動させてもよく、例えば、再遊技の内部当選の確率を上昇させる変動をさせて、ビッグボーナス(BB)およびレギュラーボーナス(RB)対応する図柄組み合わせが入賞するまでの間は、獲得するメダルの総数が、投入したメダルの総数とほぼ同じとなる遊技状態とし、通常遊技と比べると遊技者にとっては利益となる遊技状態としてもよい。なお、BB遊技、RB遊技は両者とも遊技者にとって利益となる遊技状態であるため、総じて、ボーナス遊技、又は、特別遊技と称する場合がある。
<主制御部メイン処理>
次に、図39を用いて、主制御部300’のCPU304’が実行する主制御部メイン処理について説明する。なお、同図は主制御部メイン処理の流れを示すフローチャートである。この主制御部メイン処理は上述のユーザモード(図8、図9参照)における処理に相当し、システムリセットがかかった場合でも、ユーザーリセットがかかった場合でも実行される処理である。
上述したように、主制御部300’には、電源が投入されると起動信号(リセット信号)を出力する起動信号出力回路(リセット信号出力回路)338’を設けている。この起動信号を入力した基本回路302’のCPU304’は、リセット割込によりリセットスタートしてROM306’に予め記憶している制御プログラムに従って図39に示す主制御部メイン処理を実行する。
電源投入が行われると、まず、ステップS101’で各種の初期設定処理を行う。この初期設定では、CPU304’のスタックポインタ(SP)へのスタック初期値の設定、割込禁止の設定、I/O310’の初期設定、’RAM308に記憶する各種変数の初期設定、リセット制御回路314’に設けられたWDT3141への動作許可及び初期値の設定等を行う。なお、この初期設定処理については図41を用いて後述する。
ステップS103’では、メダル投入・スタート操作受付処理を実行する。ここではメダルの投入の有無をチェックし、メダルの投入に応じて入賞ライン表示ランプ120’を点灯させる。なお、前回の遊技で再遊技に入賞した場合は、前回の遊技で投入されたメダル枚数と同じ数のメダルを投入する処理を行うので、遊技者によるメダルの投入が不要となる。また、スタートレバー135’が操作されたか否かのチェックを行い、スタートレバー135’の操作があればステップS105’へ進む。
ステップS105’では、投入されたメダル枚数を確定し、有効な入賞ラインを確定する。
ステップS107’では、乱数発生回路316’で発生させた乱数を取得する。
ステップS109’では、現在の遊技状態に応じてROM306’に格納されている入賞役抽選テーブルを読み出し、これとステップS107’で取得した乱数とを用いて内部抽選を行う。内部抽選の結果、いずれかの入賞役(作動役を含む)に内部当選した場合、その入賞役のフラグがONになる。
ステップS111’では、内部抽選結果に基づき、リール停止データを選択する。
ステップS113’では、全リール110’乃至112’の回転を開始させる。
ステップS115’では、ストップボタン137’乃至139’の受け付けが可能になり、いずれかのストップボタンが押されると、押されたストップボタンに対応するリール110’乃至112’の何れかをステップS111’で選択したリール停止制御データに基づいて停止させる。全リール110’乃至112’が停止するとステップS117’へ進む。
ステップS117’では、入賞判定を行う。ここでは、有効化された入賞ライン114’上に、何らかの入賞役に対応する絵柄組合せが表示された場合にその入賞役に入賞したと判定する。例えば、有効化された入賞ライン上に「ベル−ベル−ベル」が揃っていたならばベル入賞と判定する。
ステップS119’では払い出しのある何らかの入賞役に入賞していれば、その入賞役に対応する枚数のメダルを入賞ライン数に応じて払い出す。
ステップS121’では遊技状態制御処理を行う。遊技状態制御処理では、通常遊技、BB遊技、RB遊技、内部当選遊技、の各遊技状態の移行に関する処理を行い、それらの開始条件、終了条件の成立により、遊技状態を移行する。以上により1ゲームが終了する。以降ステップS103’へ戻って上述した処理を繰り返すことにより遊技が進行することになる。
<主制御部300’タイマ割込処理>
次に、図40を用いて、主制御部300’のCPU304’が実行する主制御部タイマ割込処理について説明する。なお、同図は主制御部タイマ割込処理の流れを示すフローチャートである。
主制御部300’は、所定の周期(本実施形態では約2msに1回)でタイマ割込信号を発生するタイマ回路311’を備えており、このタイマ割込信号を契機として主制御部タイマ割込処理を所定の周期で開始する。
ステップS201’では、タイマ割込開始処理を行う。このタイマ割込開始処理では、CPU304’の各レジスタの値をスタック領域に一時的に退避する処理などを行う。
ステップS203’では、リセット制御回路314’のWDT3141のカウント値が初期設定値(本実施形態では32.8ms)を超えてWDT割込が発生しないように(処理の異常を検出しないように)、WDT3141を定期的に(本実施形態では、主制御部タイマ割込の周期である約2msに1回)リスタートを行う。
ステップS205’では、入力ポート状態更新処理を行う。この入力ポート状態更新処理では、I/O310’の入力ポートを介して、各種センサ318’のセンサ回路320’の検出信号を入力して検出信号の有無を監視し、RAM308’に各種センサ318’ごとに区画して設けた信号状態記憶領域に記憶する。また、ここでは、乱数レジスタ3188から乱数が読み出される。以下、この理由について説明する。
乱数生成回路316’では、スタートレバー135’を操作すると、乱数を使用するか否かに関わらず乱数がラッチされる。この値は読み出されるまで保持されるため、例えばリールの回転中にスタートレバー135’を操作した際にラッチされた値が、次の遊技の抽選に使用される虞がある。これにより、例えば新たに遊技を開始しているにも関わらず、際に既に決まっている抽選結果によって遊技が進行してしまい、新たに遊技を開始した遊技者が介在する余地がなくなってしまうという問題が生じる。このため、乱数レジスタ3188の値をタイマ割込み毎に読み出すことで、遊技開始時のスタートレバー135の操作によって乱数が取得できるようにしている。なお、例えば、メダルの投入があった時点で乱数レジスタ3188の値を読み出すことにより、遊技開始時のスタートレバー135の操作によって乱数が取得できるようにしてもよい。また、遊技開始時のスタートレバー135の操作を受け付けたことにより、ソフトウェアラッチを用いて乱数を取得させてもよい。
ステップS205’に続いて、ステップS207’では、各種遊技処理を行う。具体的には、割込みステータスを取得し(各種センサ318’からの信号に基づいて各種割込みステータスを取得する)、このステータスに従った処理を行う(例えば、取得した各ストップボタン137’乃至139’の割込みステータスに基づいて、停止ボタン受付処理を行う)。
ステップS209’では、タイマ更新処理を行う。各種タイマをそれぞれの時間単位により更新する。
ステップS211’では、コマンド設定送信処理を行い、各種のコマンドが第1副制御部400’に送信される。なお、第1副制御部400’に送信する出力予定情報は本実施形態では16ビットで構成しており、ビット15はストローブ情報(オンの場合、データをセットしていることを示す)、ビット11〜14はコマンド種別(本実施形態では、基本コマンド、スタートレバー受付コマンド、演出抽選処理に伴う演出コマンド、リール110’乃至112’の回転を開始に伴う回転開始コマンド、ストップボタン137’乃至139’の操作の受け付けに伴う停止ボタン受付コマンド、リール110’乃至112’の停止処理に伴う停止位置情報コマンド、メダル払出処理に伴う払出枚数コマンド及び払出終了コマンド、遊技状態を示すコマンド等)、ビット0〜10はコマンドデータ(コマンド種別に対応する所定の情報)で構成されている。
第1副制御部400’では、受信した出力予定情報に含まれるコマンド種別により、主制御部300’における遊技制御の変化に応じた演出制御の決定が可能になるとともに、出力予定情報に含まれているコマンドデータの情報に基づいて、演出制御内容を決定することができるようになる。
ステップS213’では、外部出力信号設定処理を行う。この外部出力信号設定処理では、RAM308’に記憶している遊技情報を、情報出力回路334’を介してスロットマシン100’とは別体の情報入力回路652’に出力する。
ステップS215’では、デバイス監視処理を行う。ここでは、第1実施形態の遊技台におけるデバイス監視処理と同様の処理が行われる。具体的にはまず、図28を用いて説明したように内部情報レジスタ3101の情報を参照し、異常を示す情報があればRAM308’内に設けられた乱数生成回路異常フラグ(上述のエラーフラグの一種)がオンに設定される。このフラグがオンに設定されている場合には、スロットマシン100’は、所定のタイミング(例えば、メダル投入を受付可能な状態)で遊技者の操作による遊技の進行を停止させるエラー処理を実行する(例えば、ステップS205’で遊技を進行させる操作が検出されても、対応した処理が実行されなくなる)。その後、ステップS205’において信号状態記憶領域に記憶した各種センサ318’の信号状態を読み出して、メダル投入異常及びメダル払出異常等に関するエラーの有無を監視し、エラーを検出した場合には(図示省略)エラーフラグがオンに設定されるとともにエラー処理を実行させる。さらに、現在の遊技状態に応じて、メダルセレクタ170’(メダルセレクタ170’内に設けたソレノイドが動作するメダルブロッカ)、各種ランプ338’、各種の7セグメント(SEG)表示器の設定を行う。
なお、エラー解除スイッチが操作され、エラー処理が実行されている状態から遊技の進行を許容する(例えば、ステップS205’で遊技を進行させる操作が検出された場合に、対応した処理を実行する)状態へ復帰させる復帰処理を実行する際に、上述した内部情報レジスタ3101の情報を取得するとともに、取得した情報を破棄する処理を実行することにより、この復帰処理が実行された際に乱数生成回路316’が正常になっているにも関わらず再度エラー処理が実行されることを抑止することができる。
ステップS217’では、低電圧信号がオンであるか否かを監視する。そして、低電圧信号がオンの場合(電源の遮断を検知した場合)にはステップS221’に進み、低電圧信号がオフの場合(電源の遮断を検知していない場合)にはステップS219’に進む。
ステップS219’では、タイマ割込終了処理を終了する各種処理を行う。このタイマ割込終了処理では、ステップS201’で一時的に退避した各レジスタの値を元の各レジスタに設定等行う。その後、図39に示す主制御部メイン処理に復帰する。
一方、ステップS221’では、復電時に電断時の状態に復帰するための特定の変数やスタックポインタを復帰データとしてRAM308’の所定の領域に退避し、入出力ポートの初期化等の電断処理を行い、その後、図39に示す主制御部メイン処理に復帰する。
次に、図41を用いて、図39のステップS101における初期設定処理の詳細について説明する。同図は、図39のステップS101における初期設定処理のフローチャートである。
まず、最初に実行されるステップS1001’では、初期設定1を行う。この初期設定1では、CPU304’のスタックポインタ(SP)へのスタック初期値の設定(仮設定)、割込マスクの設定、I/O310’の初期設定、RAM308’に記憶する各種変数の初期設定等を行う。
ステップS1003’では、低電圧信号がオンであるか否か、すなわち、電圧監視回路330’が、主制御部300に供給されている電源の電圧値が所定の値(本実施形態では9v)未満である場合に電圧が低下したことを示す低電圧信号を出力しているか否かを監視する。そして、低電圧信号がオンの場合(CPU304’が電源の遮断を検知した場合)には繰り返しこのステップS1003’を実行し、低電圧信号がオフの場合(CPU304’が電源の遮断を検知していない場合)にはステップS1005’に進む。なお、電源が投入された直後で未だ上記所定の値(9V)に達しない場合にも、供給電圧がその所定の値以上になるまでステップS1003’は繰り返し実行される。
ステップS1005’では、初期設定2を行う。この処理の詳細は、図22を用いて説明した内容と同様であるため、説明を省略する。
ステップS1007’では、設定キースイッチがオンであるか否か判定される。ここで、設定キースイッチとは、スロットマシン100’における遊技者の有利度(例えば1〜6まで6種類の有利度)を設定するためのスイッチである。このスイッチがオンである場合にはステップS1017’に進み、そうでない場合にはステップS1009’に進む。
ステップS1009’では、RAM308’に記憶されているデータに異常があるか否か判定される。ここで判定されるデータは、スロットマシン100’の電源が落されるかあるいは上述の瞬断によってRAM308’に退避されたデータである(図40のステップS221’参照)。すなわち、RAM308’にデータが確実に退避されているか否かが、このステップS1009’で判定される。なお、この処理の詳細は、図21のステップS107において説明した内容と同様である。このデータに異常がある場合にはステップS1021’に進み、異常がない場合にはステップS1011’に進む。
ステップS1011’では、強制RWMクリアがON状態か否かを判定する。具体的には、電源が投入され、RWMクリアボタン(不図示)が長押し(例えば、5秒以上の押下)されたことに基づき、強制RWMクリアのON状態とする。そして、強制RWMクリアがON状態の場合はステップS1019’に移行し、OFF状態の場合はステップS1013’に進む。
ステップS1013’では、RAM308’に記憶されたデータをCPU304のレジスタに書き戻し、レジスタの状態を電断処理が実行される直前の状態に復帰させる処理が実行される。なお、この処理の詳細は、図21のステップS109において説明した内容と同様である。この処理の後ステップS1015’に進む。
ステップS1015’では、WDT3141を起動させる処理を行う。ここでは、WDT3141の起動許可及び初期値の設定等を行う。なお、本実施形態では、WDT3141に、初期値として32.8msに相当する数値を設定する。その後、この初期設定処理を終了する。
ステップS1007’において、設定キースイッチがオンの場合に進むステップS1017’では、設定キーの状態に従って設定値変更処理が実行される。その後、ステップS1019’に進む。
ステップS1019’では、RWMクリア処理を行う。この処理の詳細は、図21のステップS109において説明した内容と同様である。この処理の後、ステップS1015’に進む。
ステップS1009’において、RAM308’のデータに異常があると判定された場合に進むステップS1021’では、RWMエラー処理を行う。このRWMエラー処理では、使用スタックエリアを除く全てのRAM(RWM)308の記憶領域をクリアする準備などを行った後に、無限ループ状態に移行する。なお、この状態からは、電源を入れなおした後、設定キースイッチを操作することで遊技が開始できるようになる。
<第1副制御部400’の処理>
次に、図42を用いて、第1副制御部400’の処理について説明する。なお、図42(a)は、第1副制御部400’のCPU404’が実行するメイン処理のフローチャートである。図42(b)は、第1副制御部400’のコマンド受信割込処理のフローチャートである。図42(c)は、第1副制御部400’のタイマ割込処理のフローチャートである。
まず、図42(a)のステップS301’では、各種の初期設定を行う。電源投入が行われると、まずステップS301’で初期化処理が実行される。この初期化処理では、入出力ポートの初期設定や、RAM408’内の記憶領域の初期化処理等を行う。
ステップS303’では、タイマ変数が10以上か否かを判定し、タイマ変数が10となるまでこの処理を繰り返し、タイマ変数が10以上となったときには、ステップS305’の処理に移行する。
ステップS305’では、タイマ変数に0を代入する。
ステップS307’では、コマンド処理を行う。コマンド処理では第1副制御部400’のCPU404’は、主制御部300’からコマンドを受信したか否かを判別する。
ステップS309’では、演出制御処理を行う。例えば、ステップS307’で新たなコマンドがあった場合には、このコマンドに対応する処理を行う。この処理には、例えば、演出データをROM406’から読み出す等の処理を行い、演出データの更新が必要な場合には演出データの更新処理を行うことが含まれる。
ステップS311’では、ステップS309’の処理結果に基づいて音制御処理を行う。例えば、ステップS309’で読み出した演出データの中に音源IC418’への命令がある場合には、この命令を音源IC418’に出力する。
ステップS313’では、ステップS309’の処理結果に基づいてランプ制御処理を行う。例えば、ステップS309’で読み出した演出データの中に各種ランプ420’への命令がある場合には、この命令を駆動回路422’に出力する。
ステップS315’では、ステップS309’の処理結果に基づいて第2副制御部500’に制御コマンドを送信する設定を行う情報出力処理を行う。例えば、ステップS309’で読み出した演出データの中に第2副制御部500’に送信する制御コマンドがある場合には、この制御コマンドを出力する設定を行い、ステップS303’へ戻る。
次に、図42(b)を用いて、第1副制御部400’のコマンド受信割込処理について説明する。このコマンド受信割込処理は、第1副制御部400’が、主制御部300’が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS401’では、主制御部300’が出力したコマンドを未処理コマンドとしてRAM408’に設けたコマンド記憶領域に記憶する。
次に、図42(c)を用いて、第1副制御部400’のCPU404によって実行する第1副制御部タイマ割込処理について説明する。第1副制御部400’は、所定の周期(本実施形態では2msに1回)でタイマ割込を発生するハードウェアタイマを備えており、このタイマ割込を契機として、タイマ割込処理を所定の周期で実行する。
ステップS501’では、図42(a)に示す第1副制御部メイン処理におけるステップS303’において説明したRAM408’のタイマ変数記憶領域の値に、1を加算して元のタイマ変数記憶領域に記憶する。従って、ステップS303’において、タイマ変数の値が10以上と判定されるのは20ms毎(2ms×10)となる。
ステップS503’では、ステップS315’で設定された第2副制御部500’への制御コマンドの送信や、演出用乱数の更新処理等を行う。
<第2副制御部500’の処理>
次に、図43を用いて、第2副制御部500’の処理について説明する。なお、図43(a)は、第2副制御部500’のCPU504’が実行するメイン処理のフローチャートである。図43(b)は、第2副制御部500’のコマンド受信割込処理のフローチャートである。図43(c)は、第2副制御部500’のタイマ割込処理のフローチャートである。図43(d)は、第2副制御部500’の画像制御処理のフローチャートである。
まず、図43(a)のステップS601’では、各種の初期設定を行う。電源投入が行われると、まずステップS601’で初期化処理が実行される。この初期化処理では、入出力ポート初期設定や、RAM508’内の記憶領域の初期化処理等を行う。
ステップS603’では、タイマ変数が10以上か否かを判定し、タイマ変数が10となるまでこの処理を繰り返し、タイマ変数が10以上となったときには、ステップS605’の処理に移行する。
ステップS605’では、タイマ変数に0を代入する。
ステップS607’では、コマンド処理を行う。コマンド処理では第2副制御部500’のCPU504’は、第1副制御部400’のCPU404’からコマンドを受信したか否かを判別する。
ステップS609’では、演出制御処理を行う。例えば、ステップS607’で新たなコマンドがあった場合には、このコマンドに対応する処理を行う。この処理には、例えば、演出データをROM506’から読み出す等の処理を行い、演出データの更新が必要な場合には演出データの更新処理を行うことが含まれる。
ステップS611’では、ステップS609’の処理結果に基づいてシャッタ制御処理を行う。例えば、ステップS609’で読み出した演出データの中にシャッタ制御の命令がある場合には、この命令に対応するシャッタ制御を行う。
ステップS613’では、ステップS609’の処理結果に基づいて画像制御処理を行う。例えば、ステップS609’で読み出した演出データの中に画像制御の命令がある場合には、この命令に対応する画像制御を行い(詳細は後述する)、ステップS603’へ戻る。
次に、図43(b)を用いて、第2副制御部500’のコマンド受信割込処理について説明する。このコマンド受信割込処理は、第2副制御部500’が、第1副制御部400’が出力するストローブ信号を検出した場合に実行する処理である。コマンド受信割込処理のステップS701’では、第1副制御部400’が出力したコマンドを未処理コマンドとしてRAM508’に設けたコマンド記憶領域に記憶する。
次に、図43(c)を用いて、第2副制御部500’のCPU504’によって実行する第2副制御部タイマ割込処理について説明する。第2副制御部500’は、所定の周期(本実施形態では2msに1回)でタイマ割込を発生するハードウェアタイマを備えており、このタイマ割込を契機として、タイマ割込処理を所定の周期で実行する。
ステップS801’では、図43(a)に示す第2副制御部メイン処理におけるステップS603’において説明したRAM508’のタイマ変数記憶領域の値に、1を加算して元のタイマ変数記憶領域に記憶する。従って、ステップS603’において、タイマ変数の値が10以上と判定されるのは20ms毎(2ms×10)となる。
ステップS803’では、演出用乱数の更新処理等を行う。
次に、図43(d)を用いて、第2副制御部500’のメイン処理におけるステップS613’の画像制御処理について説明する。同図は、画像制御処理の流れを示すフローチャートを示した図である。
ステップS901’では、画像データの転送指示を行う。ここでは、CPU504’は、まず、VRAM536’の表示領域Aと表示領域Bの描画領域の指定をスワップする。これにより、描画領域に指定されていない表示領域に記憶された1フレームの画像が演出画像表示装置157’に表示される。次に、CPU504’は、VDP534’のアトリビュートレジスタに、位置情報等テーブルに基づいてROM座標(ROM506’の転送元アドレス)、VRAM座標(VRAM536’の転送先アドレス)などを設定した後、ROM506’からVRAM536’への画像データの転送開始を指示する命令を設定する。VDP534’は、アトリビュートレジスタに設定された命令に基づいて画像データをROM506’からVRAM536’に転送する。その後、VDP534’は、転送終了割込信号をCPU504’に対して出力する。
ステップS903’では、VDP534’からの転送終了割込信号が入力されたか否かを判定し、転送終了割込信号が入力された場合はステップS905’に進み、そうでない場合は転送終了割込信号が入力されるのを待つ。
ステップS905’では、演出シナリオ構成テーブルおよびアトリビュートデータなどに基づいて、パラメータ設定を行う。ここでは、CPU504’は、ステップS901’でVRAM536’に転送した画像データに基づいてVRAM536’の表示領域AまたはBに表示画像を形成するために、表示画像を構成する画像データの情報(VRAM536’の座標軸、画像サイズ、VRAM座標(配置座標)など)をVDP534’に指示する。VDP534’はアトリビュートレジスタに格納された命令に基づいてアトリビュートに従ったパラメータ設定を行う。
ステップS907’では、描画指示を行う。この描画指示では、CPU504’は、VDP534’に画像の描画開始を指示する。VDP534’は、CPU504’の指示に従ってフレームバッファにおける画像描画を開始する。
ステップS909’では、画像の描画終了に基づくVDP534’からの生成終了割込み信号が入力されたか否かを判定し、生成終了割込み信号が入力された場合はステップS911’に進み、そうでない場合は生成終了割込み信号が入力されるのを待つ。ステップS911’では、RAM508’の所定の領域に設定され、何シーンの画像を生成したかをカウントするシーン表示カウンタをインクリメント(+1)して処理を終了する。
以上の説明では、
所定の数値範囲で所定の周期ごとに更新され、遊技に関する抽選に用いられる乱数を生成する乱数生成手段(第1実施形態では乱数生成回路318、第2実施形態では乱数生成回路316’)と、
前記乱数の更新に関する異常を検出する更新異常検出手段(周波数監視回路3182と乱数監視回路3184)と、
前記異常検出手段により前記異常が検出されたことに基づいて、所定条件が成立するまで前記異常検出手段により前記異常が検出されたことを示す異常検出情報を保持する異常検出情報保持手段(内部情報レジスタ3101)と、
所定のタイミングで前記異常検出情報保持手段を参照し、前記異常検出情報保持手段により前記異常検出情報が保持されていたことに基づいて、所定の異常対応処理を実行する異常対応処理手段(第1実施形態ではCPU304と図28のデバイス監視処理および図29の入賞受付処理、第2実施形態ではCPU304’と図28のデバイス監視処理および図39のステップS119’)と、を備えたことを特徴とする遊技台、が記載されている。
また、
上記記載の遊技台であって、
前記異常検出情報保持手段は、
前記異常検出情報を保持している状態において前記異常対応処理手段により参照されたことに基づいて、前記異常検出情報が消去されるものであること(図17の内部情報レジスタの説明参照)を特徴とする遊技台、が記載されている。
以下、これまで説明したことも含めて付記する。
(付記1)
なお、以上説明した実施形態や付記の記載それぞれにのみ含まれている構成要件であっても、その構成要件を他の、実施形態や付記に適用してもよい。
(付記2)
所定の数値範囲内で更新される数値を導出するものであって、該所定の数値範囲を設定可能な乱数生成手段と、
前記所定の数値範囲を設定するための指示を前記乱数生成手段に対して行う数値範囲設定処理、前記乱数生成手段によって導出された数値を取得する数値取得処理、および該数値取得処理によって取得された数値に基づく抽選処理を少なくとも含む、遊技制御処理それぞれを、メイン制御および所定の割込み周期ごとに行われる割込み制御のうちの、少なくともいずれか一方の制御において行う遊技制御手段と、
前記乱数生成手段の更新に関する異常を検出する更新異常検出手段と、
前記更新異常検出手段によって前記乱数生成手段の更新に関する異常が検出されたか否かを示す情報を保持する更新異常検出情報保持手段と、
前記遊技制御処理の進行に関する異常を検出する処理を実行するとともに、該異常を検出した場合には、前記遊技制御手段に前記遊技制御処理を最初から行わせて前記遊技制御処理を正常に復帰させるための復帰指示を行う、遊技進行異常検出手段と、を備え、
前記遊技制御手段は、
前記数値範囲設定処理、および前記遊技制御処理であって前記割込み制御を許可する割込み許可処理を、前記メイン制御において行い、
前記数値取得処理を、前記割込み制御において行い、
前記メイン制御において、前記数値範囲設定処理が行われた後に、前記割込み許可処理を行い、
少なくとも前記復帰指示を受けた場合には、前記割込み制御が禁止されている割込み禁止状態において前記数値範囲設定処理を行うものであることを特徴とする遊技台。
(付記3)
付記2に記載の遊技台であって、
前記乱数生成手段、前記遊技制御手段、前記更新異常検出手段、および前記遊技進行異常検出手段を少なくとも有する、マイクロプロセッサを備え、
前記マイクロプロセッサは、
少なくとも前記遊技進行異常検出手段によって前記遊技制御処理の進行に関する異常が検出された場合には、セキュリティチェックが行われるセキュリティモードに所定期間に亘り滞在した後、前記遊技制御手段によって前記遊技制御処理が行われるユーザモードへ移行するものであることを特徴とする遊技台。
(付記4)
付記2または3に記載の遊技台であって、
前記遊技制御手段は、
所定のタイミングで前記更新異常検出情報保持手段を参照する処理、および前記更新異常検出情報保持手段によって前記更新異常検出情報が保持されていたことに基づいて行われる所定の更新異常対応処理を含む遊技制御処理を行うものであり、
前記更新異常検出情報保持手段は、
少なくとも前記遊技制御手段に対して前記復帰指示が行われた場合には、前記乱数生成手段の更新に関する異常が検出されたか否かを示す情報を初期化するものであることを特徴とする遊技台。
付記2〜4の遊技台によれば、遊技制御の安定化を図ることができる。