JP2016214433A - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP2016214433A JP2016214433A JP2015100734A JP2015100734A JP2016214433A JP 2016214433 A JP2016214433 A JP 2016214433A JP 2015100734 A JP2015100734 A JP 2015100734A JP 2015100734 A JP2015100734 A JP 2015100734A JP 2016214433 A JP2016214433 A JP 2016214433A
- Authority
- JP
- Japan
- Prior art keywords
- game
- data
- winning
- value
- bell
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 316
- 230000008859 change Effects 0.000 claims abstract description 218
- 238000000034 method Methods 0.000 claims description 1338
- 230000008569 process Effects 0.000 claims description 1328
- 238000003860 storage Methods 0.000 claims description 176
- 230000000630 rising effect Effects 0.000 claims description 146
- 230000008901 benefit Effects 0.000 claims description 9
- 238000003780 insertion Methods 0.000 description 112
- 230000037431 insertion Effects 0.000 description 112
- 241000167854 Bourreria succulenta Species 0.000 description 84
- 235000019693 cherries Nutrition 0.000 description 83
- 241000219109 Citrullus Species 0.000 description 71
- 235000012828 Citrullus lanatus var citroides Nutrition 0.000 description 70
- 238000003825 pressing Methods 0.000 description 69
- PZTQVMXMKVTIRC-UHFFFAOYSA-L chembl2028348 Chemical compound [Ca+2].[O-]S(=O)(=O)C1=CC(C)=CC=C1N=NC1=C(O)C(C([O-])=O)=CC2=CC=CC=C12 PZTQVMXMKVTIRC-UHFFFAOYSA-L 0.000 description 52
- 238000012360 testing method Methods 0.000 description 50
- 238000007726 management method Methods 0.000 description 49
- 230000000694 effects Effects 0.000 description 46
- 238000011084 recovery Methods 0.000 description 45
- 238000004364 calculation method Methods 0.000 description 34
- 230000002159 abnormal effect Effects 0.000 description 28
- 230000007704 transition Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 20
- 238000001514 detection method Methods 0.000 description 19
- 238000012790 confirmation Methods 0.000 description 17
- 239000002243 precursor Substances 0.000 description 14
- 230000005856 abnormality Effects 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 13
- 238000012544 monitoring process Methods 0.000 description 11
- 238000002360 preparation method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000007689 inspection Methods 0.000 description 7
- 238000012423 maintenance Methods 0.000 description 7
- 238000005259 measurement Methods 0.000 description 7
- 239000000758 substrate Substances 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 244000145845 chattering Species 0.000 description 4
- 239000013256 coordination polymer Substances 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 230000005284 excitation Effects 0.000 description 4
- 230000008014 freezing Effects 0.000 description 4
- 238000007710 freezing Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009747 swallowing Effects 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005764 inhibitory process Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 206010047571 Visual impairment Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 235000005282 vitamin D3 Nutrition 0.000 description 1
- 239000011647 vitamin D3 Substances 0.000 description 1
Images
Landscapes
- Slot Machines And Peripheral Devices (AREA)
Abstract
【解決手段】遊技の進行を制御するメイン処理と、メイン処理の実行中にメイン処理とは異なる処理を一定時間ごとの割込みによって実行する割込み処理とを備える。割込み処理ごとに設定変更スイッチのオン/オフを検知するとともに、前回の割込み処理では設定変更スイッチのオフを検知し、かつ今回の割込み処理では設定変更スイッチのオンを検知したときに、設定変更スイッチの立ち上がりデータを生成し、記憶する。メイン処理は、設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行し(ステップS816)、次に設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、割込み処理が実行されるまで待機する割込み待ち処理を実行する(ステップS814)。
【選択図】図29
Description
ここで、設定変更ボタンにより設定値を変更するときに発生するチャタリングにより、意図しない設定値となってしまうことを防止する技術が知られている(たとえば、特許文献1参照)。
本発明が解決しようとする課題は、専用のタイマーを設けることなく、設定値が意図した値にならないようにすることである。
本発明(第1実施形態)は、
遊技の進行を制御するメイン処理(M_MAIN)と、
前記メイン処理の実行中に、前記メイン処理とは異なる処理を、一定時間ごとの割込みによって実行する割込み処理(I_INTR)と、
遊技者の有利度を定める設定値を記憶する設定値記憶手段(RWM61のアドレス「F000」の「_NB_RANK」)と、
前記設定値を変更するときに操作される設定変更スイッチ(設定変更/リセットスイッチ53)と
を備え、
前記割込み処理ごとに前記設定変更スイッチのオン/オフを検知するとともに、前回の割込み処理では前記設定変更スイッチのオフを検知し、かつ今回の割込み処理では前記設定変更スイッチのオンを検知したときに、前記設定変更スイッチの立ち上がりデータを生成し、かつその立ち上がりデータを記憶し(ステップS607)、
前記メイン処理は、
前記設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行し(ステップS816)、
前記設定変更スイッチの立ち上がりデータのオン/オフを判断した後、次に前記設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、少なくとも1回の割込み処理が実行されるまで待機する割込み待ち処理を実行する(ステップS814;C_INTR_WAIT )
ことを特徴とする。
「遊技媒体」とは、遊技の用に供する媒体をいい、本実施形態では「メダル」である。ただしこれに限らず、遊技球を使用することも可能である。また、遊技媒体には、実際のメダルの他に、遊技機内部に電気的に貯留(クレジット、記憶)された遊技媒体(遊技媒体に係るデータ)も含まれる。
「ベット」とは、遊技を行うためにメダル(遊技媒体)を賭けることをいう。本実施形態において、ベット可能な最大(限界)枚数は、通常遊技(非特別遊技)では「3」枚に設定され、特別遊技(本実施形態では1BB遊技)では「2」枚に設定されている。ただし、これに限らず、「1」枚の場合を設定してもよい。たとえばSB(シングルボーナス)を設けたときは、通常遊技では「3」枚に設定し、SB遊技中は「1」枚に設定すること等が挙げられる。
「手入れベット」とは、遊技者が、メダル投入口43からメダルを手入れすることにより、メダルをベットすることをいう。
「手入れ貯留」とは、遊技者が、メダル投入口43からメダルを手入れすることにより、メダルを貯留する(クレジットを加算する)ことをいう。
「ベットメダル」とは、ベットされているメダルをいう。
「貯留メダル」とは、クレジットとして貯留されているメダルをいう。
「自動ベット」とは、リプレイが入賞したときに、スロットマシン10の内部制御処理により、前回遊技でベットされていた数のメダルを自動でベットすることをいう。なお、上記の手入れベットしたメダル、貯留ベットしたメダル、及び貯留メダルは、その後に精算可能であるが、リプレイの入賞により自動ベットされたメダルは精算を行うことができないように設定されている。
「精算」とは、ベットメダル及び/又は貯留メダルを遊技者に対して払い出すことをいう。
「払出し」とは、上記精算によりメダルを払い出すこと、又は役の入賞に基づきメダルを遊技者に払い出すことをいい、クレジットとして貯留すること、又は払出し口(図示せず)からの実際のメダルを払い出すことをいう。本実施形態における払出しは、「50」枚を限界枚数として貯留し、役の入賞に基づき貯留数が「50」を超えた分のメダルは、遊技者に対して払い出すように制御する。
ただし、8ビットの数値以外の2進数表記については、「B」の末尾は省略する。たとえば、「Aレジスタ値が「0」」のような表記における「0」は、実際には「00000000B」の2進数を意味している。したがって、末尾に「B」を付していない数値は常に2進数でないことを意味するものではない。
<第1実施形態>
図1は、本実施形態におけるスロットマシン10の制御の概略を示すブロック図である。
スロットマシン10は、メイン制御基板60とサブ制御基板80とを備える。
メイン制御基板60は、入力ポート(0〜2)及び出力ポート(0〜8)を有し、RWM(メインメモリ)61、ROM62、メインCPU63等を備える(図1で図示したもののみを備える意味ではない)。
なお、サブ制御基板80と接続されたプッシュボタン25(「プッシュボタンユニット」ともいう。)は、双方向で信号の送受信が可能となっている。具体的には、プッシュボタン25の操作に基づいてサブ制御基板80に操作が行われた旨の信号を送信し、サブ制御基板80からプッシュボタン25に設けられたランプを発光させる。
ROM62は、遊技の進行に必要なプログラムや各種データ(たとえば、データテーブル)等を記憶しておく記憶媒体である。
メインCPU63は、メイン制御基板60上に設けられたCPUを指し、遊技の進行に必要なプログラムの実行、演算等を行い、具体的には、役の抽選、リール31の駆動制御、及び入賞時の払出し等を実行する。メインCPU63は、レジスタ(後述)を内蔵する。
メダルセレクタは、図1に示すように、通路センサ43a、ブロッカ45、投入センサ44a及び44bを備え(ただし、これらに限定されるものではない)、メイン制御基板60と電気的に接続されている。
メダル投入口43からメダルが投入されると、最初に、通路センサ43aにより検知されるように構成されている。
さらに、これに限らず、2枚ベット用のベットスイッチを設けてもよい。
さらにまた、ストップスイッチ42は、3つ(左、中、右)のリール31に対応して3つ設けられ、対応するリール31を停止させるときに遊技者が操作するスイッチである。
さらに、精算スイッチ46は、スロットマシン10内部に貯留(クレジット)されたメダルを払い戻す(ペイアウトする)ときに遊技者が操作するスイッチである。
さらに、制御基板同士が直接(ハーネス等で)接続されていることに限らず、他の別基板(中継基板等)を介して接続されていてもよい。たとえば、メイン制御基板60とサブ制御基板80との間に1つ以上の他の別基板(中継基板等)が介在してもよい。
また、図2において、これら貯留数表示LED71、獲得数表示LED72、及び状態表示LED73の下側であってスロットマシン10内部に表示基板70(図2中、点線で示す)が配置されている。
ここで、「デジット」とは、表示部(ディスプレイ)を意味し、特に本実施形態では、セブンセグメントディスプレイ(セブンセグメント表示部、いわゆる7セグ)から構成されている。
なお、図2に示すように、表示基板70上に実装されたデジットはデジット1〜4の4個であるが、本実施形態では5個のデジットを有し、もう1つのデジット5は、メイン制御基板60上に設けられた設定値表示LED64(図1)に相当する。
なお、獲得数表示LED72は、通常は獲得数を表示するが、エラー発生時にはエラーの内容(種類)を表示するLEDとして機能するため、「獲得数(又はエラー)表示LED72」と称する場合もある。さらに、獲得数表示LED72は、AT遊技中に正解押し順を報知する表示部として用いられる場合もある。
たとえば、メダルが全くベット及び貯留されていない状態では、貯留数表示LED71の表示は、「00」となっている。ここで、1枚のメダルが手入れされると、当該遊技のためにその1枚のメダルがベットされる。さらに2枚を追加投入すると、当該遊技のために3枚のメダルがベットされる(ベット限界枚数が3枚の場合)。したがって、手入れされたメダルが3枚までのときは、そのメダルはベットされ、貯留されない。さらにメダルが手入れされ続けると、スロットマシン10内部にメダルが貯留されるとともに、その貯留枚数が貯留数表示LED71によって表示される。
獲得数表示LED72は、払い出されるメダルがないときは、表示は「00」であるが、たとえば後述するベル01が入賞して8枚のメダルが払い出されると、獲得数表示LED72の表示は、「00」から「08」となる。
なお、獲得数表示LED72は、払い出されるメダルがないときは、消灯するように制御してもよい。
リプレイ表示LED73aは、リプレイの入賞時に点灯するLEDであり、リプレイの入賞に基づく自動ベットが行われると、リプレイ表示LED73aが点灯し、自動ベット状態であることを遊技者に知らせる。
精算表示LED73cは、本実施形態では、精算処理中に点灯するLEDである。貯留メダル及び/又はベットメダル(リプレイ入賞時の自動ベットを除く)を有する状態で、精算スイッチ46がオンされたときに、メダルを実際に払い出している最中に点灯する。
各デジットは、セグメントA〜P(合計8個)から構成され、そのうちのセグメントA〜G(7個)により、いわゆる7セグを構成している。さらに、セグメントPは、状態表示LED73のいずれか1つ(ただし、デジット2を除く)を構成している。
また、図3において、デジット3のうち、セグメントA〜Gは、獲得数表示LED72の上位桁の7セグを構成するとともに、セグメントPは、投入可表示LED73bを構成している。
また、図3において、デジット5のうち、セグメントA〜Gは、設定値表示LED64の7セグを構成するとともに、セグメントPは、精算表示LED73cを構成している。
LED表示要求フラグは、どのLEDが点灯可能であるかを示すフラグであり、8ビット(D0〜D7)からなる1バイトデータとしてRWM61の所定領域に記憶される。
そして、LED表示要求フラグは、たとえばデジット1及び2、すなわち貯留数表示LED71の上位桁及び下位桁が表示可能であるときは、D0及びD1ビットが「1」となり、他のデジットが表示不可でれば、他のビットは「0」となる。したがって、この場合のLED表示要求フラグのデータは、「00000011B」となる。
また、設定変更中は、デジット5に設定値を表示するのでD4ビットが「1」となり、デジット1及び2(貯留数表示LED71)を非表示とするため「0」となり、デジット3及び4(獲得数表示LED72)には「−−」を表示するため「1」となる。よって、設定変更中のLED表示要求フラグは「00011100B」となる。
これに対し、LED表示要求カウンタは、LED表示要求フラグと同様に、8ビット(D0〜D7)からなる1バイトデータであり、後述するタイマ割込み(2.235ms)ごとに値が更新されるデータである。図4に示すように、初期値として、「00010000B」をとり、割込み処理ごとに、オン(「1」)となるデジットが一桁ずつ右にシフトする(シフト命令を実行)ように更新される。そして、LED表示要求カウンタの値が「00000001B」のときに、次の割込み時には、「00000000B」となるが、更新後に「0」になったときは、その割込み時に、再度、初期値である「00010000B」に設定される。なお、全ビットが「0」になった次の割込み時に、初期値である「00010000B」に設定しても良い。
また、図4に示すLED表示要求フラグ及びLED表示要求カウンタの各ビットへのデジットの割り当ては、図4に示すものに限らず、種々設計することができる。たとえば、D0〜D2を未使用とし、D3〜D7を各デジットに割り当てることも可能である。
なお、後述するように、スロットマシン10に復帰不可能エラー(電源断し、電源の再投入を行わないと復帰ができないエラー)が生じた場合のエラー内容(番号)をLED表示するときには、LED表示要求フラグやLED表示要求カウンタを参照することはない。
これに対し、復帰可能エラー(電源のオン/オフ等なく復帰させることができるエラー)時には、通常中と同様に、LED表示要求フラグとLED表示要求カウンタとを「AND」演算した結果、「1」であるLEDが点灯対象となる。
たとえば、デジットに「0」と表示させるためには、図3中、セグメントA〜Fがオン、セグメントGがオフである。したがって、このときのセグメントデータは、「00111111B」となる。
以上のように、アドレス「1211」を先頭として、順に、デジットに「0」、「1」、「2」、・・を表示するためのデータを記憶している。
また、図5にけるオフセット値の使用については、後述する(図65のステップS635)。
メイン制御基板60には、図柄表示装置30のモータ32等が電気的に接続されている。
図柄表示装置30は、図柄を表示する(本実施形態では3つの)リール31と、各リール31をそれぞれ駆動するモータ32と、リール31の位置を検出するためのリールセンサ39とを含む。
払出しセンサ37a及び37bは、投入センサ44a及び44bと同様に、上流側に払出しセンサ37aが設けられ、下流側に払出しセンサ37bが設けられている。
なお、図1に示すように、後述する説明においては、上流側の払出しセンサ37aを払出しセンサ1、下流側の払出しセンサ37bを払出しセンサ2と称する場合もある。
一方、払出しセンサ37a又は37bの信号の少なくとも1つがオンのままとなったときは、メダル詰まりが生じたと検知する。なお、払出しセンサ37を1つだけ設け、上記エラーを検知するようにしてもよい。
また、電源スイッチ51は、スロットマシン10の電源のオン/オフを行うスイッチである。
設定キースイッチ52は、設定キー挿入口から設定キーが挿入され、右90度に回転しているときにオンとなるスイッチであり、設定確認時や設定変更時にオンとなる。
設定変更/リセットスイッチ53は、設定値を変更するときに操作される。また、設定キースイッチ52をオンにしつつ電源スイッチ51がオンにされると、リセットすなわち初期化処理が行われ、RWM61に記憶されている所定のデータがクリアされる。
本実施形態の入力ポート0〜2及び出力ポート0〜8は、D0〜D7の8ビットが入力又は出力可能な1バイトのポートである。
なお、入力ポート及び出力ポートは、図示したもの以外にも設けられているが、本実施形態では説明を省略する。
さらにまた、入力ポート2には、電断信号(電断が発生したときに出力される信号)、投入センサ1(44a)及び2(44b)の信号、払出しセンサ1(37a)及び2(37b)の信号、満杯センサ38の信号が入力される。なお、設定ドアスイッチ54を設けていない仕様のスロットマシン10であるときには、入力ポート1のD2ビットは未使用となる。
また、たとえば入力ポート0の1バイトデータ(8ビット)を取得すれば、すべての操作スイッチのオン/オフの状況を知ることができる。
以上のように、出力ポート0でどのデジットを点灯させるかを定め、出力ポート1でどのセグメントを点灯させるかを定める。
そして、出力ポート2では、3ベットスイッチ40b及びストップスイッチ42の上記LEDを点灯させるための信号が出力される。「赤」は操作不可時に、「青」は操作可時にそれぞれ点灯させる。
図8において、出力ポート3では、D0〜D3ビットからは、左リール31のモータ32の各φ0〜φ3信号が出力される。本実施形態のモータ32は、1−2相励磁によりリール31を回転するように構成されており、φ0〜φ3の4相の励磁の組合せでリール31を駆動するようにしているため、各相の信号がそれぞれ所定のビットから出力される。
ここで、ブロッカ45は、ブロッカの信号が「1」(オン)であるときは、メダル投入口43とホッパー35aとを連結するメダル通路を形成し、「0」(オフ)であるときは、メダル投入口43と払出し口とを連結する通路(返却通路)を形成する。
そして、たとえばブロッカ45の駆動時には、割込み処理によって、出力ポート3のD6ビットからブロッカ信号を出力する。
また、出力ポート4のD5〜D7ビットからは、状態表示LED73中、1枚、2枚、3枚投入表示LED73e〜73gの信号が出力される。
ここで、「外部信号」とは、外部集中端子板100を介してスロットマシン10の外部(ホールコンピュータや、ホールに設置されているデータカウンタ等)に出力するための信号である。本実施形態では、ART発動(初当たり)を示す外部信号1、ART継続を示す外部信号2、ARTの開始時から終了時までを示す外部信号3、スロットマシン10で生じたエラーや電源断が発生したこと等を示す外部信号4、スロットマシン10のフロントドアの開放を示す外部信号5を設けている。
これらの出力信号の詳細については後述するが、本実施形態では、出力ポート6から出力される信号がBレジスタに記憶され、「外部出力信号データ」となる。
また、出力ポート8は、試験信号1〜8の出力ポートである。試験信号の具体的内容にについては後述する。
以上のようにして、一割込み内で、入力ポート0〜2の信号に基づくデータ(「レベルデータ」と称する。)を記憶するとともに、出力ポート0〜8に対しては、記憶されている制御データに基づき信号を出力する。
図10は、入力ポート1の立ち上がりデータ及び立ち下がりデータを生成する演算例を示す図である。
次に、データA0(今回割込み時のレベルデータ)とデータC0(変化ビットを示すデータ)とを論理積(AND)により演算を実行する。これにより作成されるデータD0が、入力ポート1立ち上がりデータとなる。
図10では、前回割込み時の入力ポート1レベルデータ(データB1)が「00011110」(D1ビットのドアスイッチ信号、D2ビットの設定ドアスイッチ信号、D3ビットの設定キースイッチ信号、D4ビットの設定変更スイッチがオン)であり、今回割込み時の入力ポート1レベルデータ(データA1)が「00001110」(前回レベルデータに対し、設定変更スイッチオフ)となった例を示している。したがって、上記例とは逆に、設定変更スイッチ信号について立ち下がりを有する例である。
次に、データB1(前回回割込み時のレベルデータ)とデータC1(変化ビットを示すデータ)とを論理積(AND)により演算を実行する。これにより作成されるデータD1が、入力ポート1立ち下がりデータとなる。
たとえば、入力ポート0を例にあげると、一割込み内で、2回、入力ポート0のデータを取得する。なお、データを2回取得する場合の時間間隔は任意であるが、たとえば1回目のデータ取得時から50μS(マイクロ秒)経過後に2回目のデータを取得することが挙げられる。
00000100:取得データ1回目(正常)
00000100:取得データ2回目(正常)
であったと仮定する。なお、上記例では、1回目及び2回目のいずれも正常なデータを取得し、両データに変化がない例を示している。そして、これら2つのデータを論理積(AND)による演算を実行する。その結果、
00000100:AND演算後
となる。このAND演算後のデータを当該割込み処理時におけるレベルデータとする。
00000100:取得データ1回目(正常)
00000110:取得データ2回目(異常)
となる。そして、両データを上記のように論理積(AND)による演算を実行すると、
00000100:AND演算後
となり、上記と同じ結果を得る。すなわち、AND演算を実行することで、取得データ2回目のD1ビットを「0」にすることができ、これによってノイズやチャタリング等を防止することができる。
図11において、番地「F008」の「_PT_IN0_OLD 」は、入力ポート0レベルデータの記憶領域である。一割込み処理ごとに、入力ポート0からの入力信号が読み込まれ、レベルデータが更新されていく。
番地「F009」の「_PT_IN0_UP」は、入力ポート0立ち上がりデータの記憶領域である。入力ポート0レベルデータの更新ごとに上述のように演算され、一割込み処理ごとに、入力ポート0立ち上がりデータも更新されていく。
また、番地「F00B」の「_PT_IN1_UP」は、入力ポート1立ち上がりデータの記憶領域である。入力ポート1レベルデータの更新ごとに上述のように演算され、入力ポート1立ち上がりデータも更新されていく。
また、番地「F00D」の「_PT_IN2_OLD 」は、入力ポート2レベルデータの記憶領域である。一割込み処理ごとに、入力ポート2からの入力信号が読み込まれ、データが更新されていく。
D3ビットのリプレイ表示LEDは、リプレイが表示され、再遊技としてメダルが自動投入されるとき(図38のステップS141)に、「1」にされるデータである。このデータが「1」のときに、上述した状態表示LED73のうちのリプレイ表示LED73aが点灯する。また、再遊技による遊技が終了したとき(図36のステップS73)に、「0」にされるデータである。このデータが「0」のとき、リプレイ表示LED73aが消灯する。
たとえばリプレイが入賞したときは、リプレイの作動状態となり、遊技状態をセットするとき(図37のステップS88)に、D0ビットが「1」にされる。このD0ビットが「1」から「0」にされるのは、再遊技による遊技が終了したとき(図36のステップS73)である。
また、本実施形態では設けていないが、2BB及びCBを設けたときは、作動状態フラグに示すように、たとえばD1ビットに2BB、D2ビットにCBを割り当てることが挙げられる。
また、本実施形態では設けていないが、2BB、CB、(単独当選する)RBを設けたときは、作動状態フラグに対応するように、たとえばD1ビットに2BB、D2ビットにCB、D4ビットにRBを割り当てることが挙げられる。
アドレス「F06B」の「_NB_PLAY_MEDAL」は、メダルベット枚数データの記憶領域であり、本実施形態では、「0」〜「3」のいずれかが記憶される。
アドレス「F06C」の「_NB_PAY_MEDAL 」は、メダル払出し枚数データの記憶領域であり、本実施形態では、「0」〜「8」の値のいずれかが記憶される。なお、本実施形態では、1遊技におけるメダルの最大払出し枚数が8枚であるため、メダル払出し枚数データの最大値は「8」である。ただし、たとえば15枚払出し役を設けたときは、メダル払出し枚数データは、「0」〜「15」となる。
アドレス「F06D」の「_BF_PAY_MEDAL 」は、メダル払出し枚数データバッファの記憶領域であり、本実施形態では、アドレス「F06C」の「_NB_PAY_MEDAL 」と同様に、「0」〜「8」の値のいずかが記憶される。
本実施形態では、遊技終了時に、アドレス「F06C」の「_NB_PAY_MEDAL 」と、アドレス「F06D」の「_BF_PAY_MEDAL 」との双方の値が更新される。この更新時には、双方のアドレスに同一値が記憶される。そして、アドレス「F06C」の「_NB_PAY_MEDAL 」は、メダル払出しごとに減算され、メダル払出し終了時には「0」となる。これに対し、アドレス「F06D」の「_BF_PAY_MEDAL 」は、メダル払出しによっては値が更新されずに維持される。次回遊技の終了時に値が更新されるまで、記憶された値を維持する。
なお、本実施形態では、貯留枚数データそのものを記憶するRWM61のアドレスは設けておらず、貯留数表示LED71の表示データとして貯留枚数表示データを設けている。ただし、貯留枚数表示データは、貯留枚数データそのものである。
また、本実施形態では設けられていないが、たとえば2BB(役物連続作動装置)を設けたときは、次のアドレス「F072」に「_CT_BB2_PAY 」として2BB作動時の獲得枚数カウンタ(2BB遊技で獲得可能な最大のメダル枚数)を格納する記憶領域が設けられる。そして、その2BB遊技の初期値としては、たとえば「40」が設定され、2BB遊技においてメダルが払い出されるごとに、記憶された値が減算される。
なお、2BBを設けたときに、その2BB遊技では、2BB遊技の終了条件(最大払出し枚数)を満たすまで、毎遊技、連続作動するCB(第二種特別役物)遊技が実行される。
また、アドレス「F074」の「_CT_BONUS_WIN 」は、RB作動時の入賞回数カウンタの記憶領域であり、本実施形態では、「0」〜「2」が記憶される。
ここで、本実施形態では、ビッグボーナスとして1BB(役物連続作動装置)を設けており、1BB遊技中は、RB(第一種特別役物)が作動する(RB遊技を実行する)ように設定されている。さらに、RB遊技は、遊技回数が2回又は入賞回数が2回の少なくとも一方を満たすまで継続されるとともに、1BB遊技の終了条件(200枚の払出し)を満たすまで連続作動するように設定されている。
このため、1BB遊技中は、RB遊技の遊技回数及び入賞回数をカウントし続ける。
アドレス「F03A」の「_TM2_GAME 」は、1回の最小遊技時間を監視するタイマであり、初期値として「1836」がセットされると、一割込みごとに「1」ずつ減算されるタイマである。本実施形態の最小遊技時間は、「4.1秒」に設定されている(2.235ms×1836≒4100ms)。
また、アドレス「F049」の「_NB_CND_BNS 」は、役物条件装置番号の記憶領域であり、本実施形態では1BBの当選の有無に応じて、「0」又は「1」が記憶される。この値も上記と同様に、リール31の停止制御に用いる停止位置決定テーブルの選択、AT抽選(AT中の上乗せ)、サブ制御基板80による演出抽選等に用いられる。
なお、特別役としてたとえば1BBと2BBとの2種類を設けた場合には、10進数で表すと「0」から「2」が記憶され、1BB(1)、1BB(2)、2BB(1)、2BB(2)の4種類の特別役を設けた場合には、「0」から「4」が記憶される。ここで、本アドレスには特別役の当選番号が記憶されるが、たとえば特別役に当選し、当選した特別役に対応する図柄組合せが停止表示しなかった場合(後述する内部中遊技の場合)にも、当選している特別役の当選番号が記憶される。
上記の入賞及びリプレイ条件装置番号と、役物条件装置番号とについての詳細は、後述する。
本実施形態では、24割込みにより、約53.64msがカウントされ、この53.64msが条件装置信号の出力時間となる。詳細は後述するが、本実施形態では、最小遊技時間経過後にタイマ値が「25」がセットされた後、最初の割込み処理でそのタイマ値が「24」に更新される。そして、タイマ値が「24」〜「13」である間は、役物条件装置情報(_NB_CNDINF_B)を出力し、タイマ値が「12」〜「1」である間は入賞及びリプレイ条件装置情報(_NB_CNDINF_N)を出力する。さらに、タイマ値が「0」である間は、条件装置情報として「0」の値を出力する。
アドレス「F01F」の「_FL_POWER_OFF 」は、電源断時に、電源断を示すデータを記憶しておく領域であり、正常な電源断が行われたときは「01」Hが記憶され、それ以外の場合(異常時)には「00」Hが記憶される(後述する図66のステップS652)。
アドレス「F075」の「_WK_SUM_CHK 」は、電源断時に算出されるチェックサムのデータ(補数データ)を記憶しておく領域であり、データ値としては、「00」H〜「FF」Hが記憶される(後述する図66のステップS656)。チェックサムデータは、再度、RWM61のチェックサムを行う(チェックの対象となるアドレスの全データの加算し、さらにこのアドレス「F075」に記憶されたチェックサムデータを加算する)と、「0」となるデータ値が記憶される。
図1に示すように、メイン制御基板60のメインCPU63は、以下の設定変更手段63a等を備える。なお、本実施形態における以下の各手段は例示であり、本実施形態で示した手段に限定されるものではない。
ここで、設定値とは、遊技者の有利度、より具体的にはメダルの投入枚数に対する払出し枚数の期待値(遊技者が獲得できるメダル)の程度を定めるものであり、本実施形態では設定1〜設定6の6段階を設けている。
そして、設定値が高くなるほど、少なくとも一部の役(特に、1BB)の当選確率が高く設定される等、遊技者にとっての有利度が高くなるように設定している。
また、設定値が高くなるほど、ARTに移行する確率が高くなり、遊技者にとっての有利度が高くなるように設定している。
なお、ARTに移行する確率を高くすることのみに限られるものではなく、たとえばAT中の遊技回数や払出し枚数を上乗せする確率を高くしたり、ARTを継続する確率を高くしてもよい。
本実施形態では、電源スイッチ51を一旦オフにし、電源断をした後に、設定キー挿入口に設定キーを差し込み、これを時計回りに90度回転させると、設定キースイッチ52がオンとなる。この状態で電源スイッチ51を再度オンにすると、設定変更中、すなわち設定変更モードになる。この場合、通常の立ち上げ処理は行われない。したがって、設定変更中にするためには、電源スイッチ51のオン/オフ操作が必要である。
また、設定変更手段63aは、設定変更/リセットスイッチ53が1回操作(オン)されるごとに、設定値の表示を、・・・→「1」→「2」→「3」→「4」→「5」→「6」→「1」→「2」→・・・と順次変化させる。
そして、設定変更手段63aは、設定キーを反時計回りに90度回転させて設定キースイッチ52をオフにすることで、設定変更後の設定値で遊技が可能となる。
また、設定キー挿入口から設定キーを抜かなければ設定変更後の設定値で遊技ができないように構成してもよい。
さらに、設定キーを反時計回りに90度回転させて設定キースイッチ52をオフにし、設定キー挿入口から設定キーを抜き、この状態で電源スイッチ51を一旦オフにした後に再度オンにしなければ、設定変更後の設定値で遊技ができないように構成してもよい。
さらにまた、設定キースイッチ52がオンにされた状態で、電源スイッチ51がオンにされると、リセット、すなわち初期化処理が行われる。この初期化処理については後述する。
ここで、本実施形態の役、図柄の組合せ等について説明する。
図18は、本実施形態におけるリール31の図柄配列を示す図である。図18では、図柄番号を併せて図示している。たとえば、左リール31において、図柄番号16番の図柄は、「ベル」である。
また、図19は、スロットマシン10のフロントカバー11に設けられた表示窓13(透明窓)と、各リール31の位置関係と、有効ラインとを示す図である。
ここで、「有効ライン」とは、リール31の停止時における図柄の並びラインであって図柄の組合せを形成させる図柄組合せラインであり、かつ、いずれかの役に対応する図柄の組合せがそのラインに停止したときに、その役の入賞となるラインである。本実施形態では、図19に示すように、水平方向中段の有効ライン(1本)のみが定められ、他の図柄組合せラインは、全て無効ラインとなっている。
また、たとえば図20のベル02aの場合には、ベル02aの図柄の組合せとして、「リプレイ」−「赤7」−「赤7」と、「リプレイ」−「赤7」−「BAR」の2種類を有するという意味である(他の役において、複数の図柄の組合せを有する場合も、同様の意味である。)。
そして、各役に対応する図柄の組合せ及び入賞時の払出し枚数等が定められている。すべてのリール31の停止時に、いずれかの役に対応する図柄の組合せが有効ラインに停止する(役が入賞する。以下同じ。)と、その役に対応する枚数のメダルが払い出される。
なお、特別役としては、他に、RB(レギュラーボーナス(第一種特別役物))、2BB(第2種ビッグボーナス(役物連続作動装置)。「MB」(ミドルボーナス)ともいう。)、CB(チャレンジボーナス(第二種特別役物))、SB(シングルボーナス(普通役物))が挙げられるが、本実施形態では設けられていない。
なお、1BB遊技は、出率が「1」を超えるように設定されていることで、通常遊技以上にメダル獲得が期待できる、遊技者にとって有利な遊技である。
1BB遊技は、RBが連続作動する(RB遊技が連続して実行される)遊技である。なお、RBに対応する図柄の組合せは設けられておらず、1BB遊技が開始されると同時にRBが作動し、RB遊技の終了後は、1BB遊技の終了条件を満たしていなければ再度RBが作動する。
一方、RBが作動し、たとえば1遊技目終了時に1BB遊技の払出し枚数が200枚を超えたときは、当該遊技で1BB遊技を終了する。
2BB遊技は、上述したように、たとえばメダル払出し枚数が40枚を超えるまで継続される。2BB遊技では、毎遊技、CBが作動し、1遊技ごとに、当該遊技の終了後にCBが非作動となり、次遊技の開始時にCBが作動状態となる。
本実施形態のリプレイは、ノーマルリプレイに相当するリプレイと、2種類の特殊リプレイ(特殊リプレイ1及び2)を備え、それぞれ図柄の組合せが異なる。
特殊リプレイ1は、RT1において入賞すると、RT1からRT2に遊技状態を昇格させる役であり、昇格リプレイとも称される。
一方、特殊リプレイ2は、RT2において入賞すると、RT2からRT1に遊技状態を降格させる役であり、転落リプレイとも称される。
そして、ベルは、入賞時に8枚の払出しのあるベル01と、入賞時に1枚の払出しのあるベル02a〜09dを備える。
チェリーは、チェリー01〜04の4種類を有し、いずれも、入賞時の払出し枚数は1枚に設定されている。
持ち越される役は、特別役である1BBである。1BBに当選したときは、1BBが入賞するまでの遊技において、1BBの当選を次遊技に持ち越すように制御される。
また、本実施形態では設けられていないが、2BBや単独当選するRBを設けた場合には、1BBと同様に、当選が持ち越され、当選した遊技で入賞しなかったときは、次遊技から内部中遊技に移行する。
これに対し、本実施形態では設けられていないが、SBや単独当選するCBを設けた場合には、小役と同様に、当選が持ち越されることはなく、当選した遊技で入賞しなかった場合には、その遊技の終了時に、その当選役に係る権利は消滅する。
役抽選手段63bは、たとえば、役抽選用の乱数発生手段(ハードウェア乱数や、MPUに備えられている乱数生成回路等)と、この乱数発生手段が発生する乱数を抽出する乱数抽出手段と、乱数抽出手段が抽出した乱数値に基づいて、役の当選の有無及び当選役を判定する判定手段とを備えている。
なお、抽出した乱数を演算により加工して役抽選テーブルと照合してもよい。
なお、役抽選手段63bは、スタートスイッチ41の操作時に役抽選を行うとき、役抽選を行う前に、アドレス「F000」の設定値データ(_NB_RANK)を読み込み、予め定められた範囲内(「1」〜「6」)の値であるか否かを確認する。設定値が「1」〜「6」の範囲内であると判断したときは役抽選処理を実行するが、設定値が「1」〜「6」の範囲内でないと判断したときは役抽選処理を実行することなく、後述するエラー処理(復帰不可能エラー処理(SS_ERROR_STOP ))を実行する(この時点で遊技の進行が中止される)。
当選番号「0」の1BBの当選、及び当選番号「1」のリプレイの当選は、それぞれ、1BB及びリプレイの単独当選である。
当選番号「2」〜「13」は、ベル当選を示し、いずれも、8枚役であるベル01と、1枚役である3種類のベル(合計4種類)との重複当選である。たとえば、ベルA1は、ベル01、ベル02a、ベル03、ベル04aの4つのベルの重複当選を意味する。
また、当選番号「14」のチェリー重複は、チェリー01〜04の4つのチェリーが重複当選するものである。
なお、図23及び図24では、「備考」欄において、ストップスイッチ42の押し順と入賞役との関係を示しているが、この点については後述する。
図25において、「置数」とは、乱数値がとる全範囲「65536」のうち、当選となる範囲を示す値である。したがって、「当選確率=置数/65536」となる。たとえば、RT1等の遊技状態において、1BBの置数は「218」であるので、1BBの当選確率は、「218/65536」=「約1/300」である。
なお、1BBは、上述した設定値に応じて異なるように設定されており、図25の例は、いずれか1つの設定値における置数を示している(なお、2BB等を設けた場合も同様である)。
また、非内部中遊技は、RT1及びRT2を有する。RT1では、当選番号「1」と、当選番号「15」及び「16」の合算の確率は、「約1/7.3」であり、内部中遊技にけるリプレイの当選確率とほぼ同一である。
また、RT2は、リプレイの当選確率が高確率に設定されたRTである。RT2では、当選役により、非当選をほとんど有さない(1/65536)ように設定されている。
なお、内部中遊技におけるリプレイの当選確率を、通常時(RT1等)よりも高く設定したとき、内部中RTと称する場合もある。
したがって、非内部中遊技では、非ARTであるときとARTであるきとを有するが、内部中遊技では、常に非ARTである。
これらの各遊技状態ごとに役抽選テーブルが設けられているとともに、図25に示すように、抽選される役の種類や当選確率が設定されている。
1BB遊技以外の遊技状態において、内部中遊技では、リプレイは、当選番号「1」のみが抽選される。これに対し、非内部中であるRT1及びRT2では、リプレイの当選として、当選番号「1」、「15」、「16」を有する。
さらに、ベルA1〜A8当選は、いずれも、置数として「1260」が割り当てられているが、ベルB1〜B4当選には、いずれも置数として「1620」が割り当てられており、ベルA1〜A8当選よりも当選確率が高い。
これに対し、1BBの当選は持ち越されるので、当該遊技で1BBに当選し、当選した1BBに係る当選フラグが一旦オンになったときは、その1BBが入賞するまでオンの状態が維持され、その1BBが入賞した時点でオフにされる。
なお、本実施形態における「遊技結果」とは、役抽選手段63bにより当選した当選役に対応したリール31の停止表示結果を指す。
本実施形態では、リール31は、定速時は1分間で約80回転する速度で回転される。
そして、ストップスイッチ42が操作されたときは、ストップスイッチ42が操作された瞬間からリール31を停止させるまでの時間が190ms以内に設定されている。これにより、本実施形態では、ストップスイッチ42が操作された瞬間の図柄からリール31が停止するまでの最大移動コマ数が3コマに設定されている。
さらに、複数の役に当選している遊技では、入賞させる役の優先順位が予め定められており、所定の優先順位によって、最も優先する図柄の引込み停止制御を行う。
また、2BB遊技では、毎遊技、CBが連続作動するが、CB遊技では、小役の抽選は行われない。ただし、全小役が入賞可能にリール31が停止制御される。このため、2BB遊技では、毎遊技、CB遊技が実行されるとともに、CB遊技では、毎遊技、小役が入賞可能となる。
さらに、たとえば2BB遊技中は、1又は2以上のリプレイの抽選を行い、リプレイの当選の有無、さらには当選したリプレイの種類に応じて、入賞させる小役の種類を異ならせることが挙げられる(このように設定する場合には、右リール31の図柄を「ANY」とした小役を複数設ける)。
ストップスイッチ42が操作されると、そのストップスイッチ42が操作された旨の信号がリール制御手段63cに入力される。この信号を判別することで、どのストップスイッチ42が操作されたかを検出する。
1BBテーブルは、1BBの当選フラグのみがオンであるとき、すなわち当該遊技で1BBに当選したとき、又は当該遊技以前に1BBに当選し、かつ当該遊技で非当選であるときに用いられ、リール31の停止制御の範囲内において、1BBに対応する図柄の組合せを有効ラインに停止させるとともに、1BB以外の役に対応する図柄の組合せを有効ラインに停止させないように、リール31の停止時の図柄の組合せを定めたものである。
これに対し、ストップスイッチ42が操作された瞬間のリール31がどの位置であっても(ストップスイッチ42の操作タイミングにかかわらず)、対象図柄を常に有効ラインに停止させる(引き込む)ことができることを、「PB=1」と称する。
上述したように、第1実施形態では、最大移動コマ数は「3」であるので、4図柄以内の間隔で対象図柄が配列されているときは、「PB=1」となり、5図柄以上の間隔で配列されているときは、「PB≠1」となる。
なお、2BBを設けた場合の2BBテーブルは、上記1BBテーブルと同様となる。すなわち、上記1BBテーブル中、「1BB」を「2BB」と読み替えたものに相当する。
ここで、図18に示すように、すべてのリール31において、「リプレイ」の図柄は、4図柄以内の間隔で配置されている。したがって、リプレイについては、ストップスイッチ42の操作タイミングにかかわらず、リプレイを常に入賞させることができる(PB=1)。
非内部中遊技及び内部中遊技のいずれも、リプレイの当選時は、「PB=1」でリプレイが入賞する。
同様に、右一停止であるときは、右リール31の停止時に中段に「ベル」図柄を停止させる。そして、この場合、左リール31の停止時には中段に「ベル」図柄を停止させ、中リール31の停止時には中段に「リプレイ」図柄を停止させる。
リール31の停止制御については、リプレイ重複1テーブルと同様であり、右第一停止であるときは「リプレイ」−「ベル」−「リプレイ」(特殊リプレイ1)を有効ラインに停止させ、左又は中第一停止であるときは「ベル」−「リプレイ」−「ベル」(特殊リプレイ2)を有効ラインに停止させる。
「枚数優先」とは、重複当選している役に係る図柄の組合せのうち、払出し枚数の最も多い役に係る図柄の組合せを構成する図柄を優先して有効ラインに停止させる(引き込む)ように、リール31の停止位置を定めている。
一方、「個数優先」とは、リール31の停止時に、その図柄を有効ラインに停止させたときに、入賞可能となる図柄の組合せの数が最も多くなるように、リール31の停止位置を定めている。
他のベル当選時においても、8枚役のベル01と、1枚役の3種類のベルとの重複当選になることは、同様である。
図23及び図24では、「名称」の欄に、かっこ書きで正解押し順を表示している。さらに、「備考」欄に、ストップスイッチ42の押し順と入賞役との関係を示している。
たとえばベルA1において、「備考」中、「213」とは、中左右の押し順を示し、「231」とは、中右左の押し順を示す(「1」=左、「2」=中、「3」=右)。
また、「1−−」とは、左第一停止(第二及び第三停止の押し順は任意)を意味し、「3−−」とは、右第一停止(第二及び第三停止の押し順は任意)を意味する。
さらに、「231:1枚(ベル03)」とは、「231」すなわち中右左の不正解押し順時には、「PB=1」で1枚役であるベル03が入賞することを意味する。
「備考」欄に記載した他の内容についても上記と同様に解釈する。
また、図18に示すように、全リール31ともに、「ベル」図柄は、「PB=1」の配列である。よって、ベルA1当選時に、正解押し順である中左右でストップスイッチ42が操作されたときは、有効ラインに、ベル01である「ベル」−「ベル」−「リプレイ」が停止する。
なお、16コマのリール31上に4図柄間隔で均等に配置すれば、「PB=1」の図柄に設定することができる。
中第一停止時には、この時点では正解押し順であるので、リール制御手段63cは、中リール31の停止時に中段に「ベル」を停止させる。この時点では、押し順正解であるので、枚数優先により中リール31を停止させている。
次に、右第二停止時には、この時点で押し順不正解となるので、リール制御手段63cは、個数優先制御を行うことにより、右リール31の停止時に中段に「リプレイ」を停止させない。
なお、中リール31の停止時には「ベル」図柄が停止しているので、中リール31の図柄が「ベル」である図柄の組合せを有効ラインに停止させるように制御する必要がある。
「リプレイ」−「赤7」−「赤7」(ベル02a)
「リプレイ」−「赤7」−「BAR」(ベル02a)
「スイカ」−「ベル」−「スイカ」(ベル03)
「スイカ」−「ベル」−「チェリー」(ベル03)
「チェリー」−「ベル」−「スイカ」(ベル03)
「チェリー」−「ベル」−「チェリー」(ベル03)
「赤7」−「スイカ」−「ベル」(ベル04a)
「BAR」−「スイカ」−「ベル」(ベル04a)
である。
同様に、右リール31の停止時に「チェリー」図柄を有効ラインに停止させたときは、その時点で、「スイカ」−「ベル」−「チェリー」又は「チェリー」−「ベル」−「チェリー」の2種類の図柄の組合せが停止可能な状態となる。
一方、右リール31の停止時に「リプレイ」図柄を停止させたときは、その時点で入賞可能となる図柄の組合せは、「ベル」−「ベル」−「リプレイ」(ベル01)の1種類となる。
よって、個数優先により、右リール31の停止時には、「スイカ」図柄又は「チェリー」図柄を優先して停止させることが可能となる。
なお、左及び中リール31においても、右リール31のように、「スイカ」図柄又は「チェリー」図柄のいずれかは、4図柄間隔配置となっている。たとえば左リール31では、「スイカ」図柄又は「チェリー」図柄は、01番、05番、09番、13番に配置されている。また、中リール31では、「スイカ」図柄又は「チェリー」図柄は、01番、05番、09番、13番に配置されている。
よって、ベルA1当選時に、中右左の押し順でストップスイッチ42が操作されたときは、「PB=1」(1/1の確率)でベル03を入賞させることができる。
左第一停止時は、第一停止時に押し順不正解が確定する。したがって、第一停止時から、個数優先によってリール31を停止制御する。
ベルA1当選時における左第一停止時に、有効ラインに「リプレイ」を停止させると、この時点で入賞可能となる図柄の組合せは、
「リプレイ」−「赤7」−「赤7」
「リプレイ」−「赤7」−「BAR」
である(合計2種類)。
また、左第一停止時に、有効ラインに「スイカ」を停止させると、この時点で入賞可能となる図柄の組合せは、
「スイカ」−「ベル」−「スイカ」
「スイカ」−「ベル」−「チェリー」
である(合計2種類)。
「チェリー」−「ベル」−「スイカ」
「チェリー」−「ベル」−「チェリー」
である(合計2種類)。
さらに、左第一停止時に、有効ラインに「赤7」を停止させると、この時点で入賞可能となる図柄の組合せは、「赤7」−「スイカ」−「ベル」である(1種類)。
同様に、左第一停止時に、有効ラインに「BAR」を停止させると、この時点で入賞可能となる図柄の組合せは、「BAR」−「スイカ」−「ベル」である(1種類)。
このように、個数が同一となる図柄の組合せを複数有する場合には、いずれを採用してもよく、事前に決定しておけばよい。本実施形態では、ベルA1当選時の左第一停止時は、「リプレイ」図柄を有効ラインに停止させると定めている。なお、左リール31の停止時に、「リプレイ」図柄を「PB=1」で有効ラインに停止させることができる。
よって、左第一停止時に「リプレイ」図柄を有効ラインに停止させたとき、その時点で有効ラインに停止可能となるのは、
「リプレイ」−「赤7」−「赤7」
「リプレイ」−「赤7」−「BAR」
の2種類である。
図18に示すように、中リール31において、「赤7」図柄は、02番にのみ設けられている。したがって、15番〜16番又は01番〜02番が有効ラインを通過する瞬間(直前)に中ストップスイッチ42が操作されたときは「赤7」図柄を有効ラインに停止させることができる。それ以外の位置で中ストップスイッチ42が操作されたときは、「赤7」図柄を有効ラインに停止させることができない。このため、中リール31の停止時に「赤7」図柄を有効ラインに停止させることができる確率は「1/4」となる。
1/1(左リール31)×1/4(中リール31)×1/2(右リール31)
=1/8
となる。
よって、「備考」欄に記載した通り、「1/8」の確率で1枚ベルが入賞する。
となる。
右第一停止時は、第一停止時に押し順不正解が確定する。したがって、第一停止時から、個数優先によってリール31を停止制御する。
ベルA1当選時における右第一停止時に、有効ラインに「赤7」図柄を停止させると、この時点で入賞可能となる図柄の組合せは、「リプレイ」−「赤7」−「赤7」である(1種類)。
さらにまた、右第一停止時に、有効ラインに「スイカ」図柄を停止させると、この時点で入賞可能となる図柄の組合せは、
「スイカ」−「ベル」−「スイカ」
「チェリー」−「ベル」−「スイカ」
である(2種類)。
「スイカ」−「ベル」−「チェリー」
「チェリー」−「ベル」−「チェリー」
である(2種類)。
また、右第一停止時に、有効ラインに「ベル」図柄を停止させると、この時点で入賞可能となる図柄の組合せは、
「赤7」−「スイカ」−「ベル」
「BAR」−「スイカ」−「ベル」
である(2種類)。
よって、本実施形態では、個数2種類となる場合のうち、有効ラインに「ベル」図柄を停止させ、「赤7」−「スイカ」−「ベル」又は「BAR」−「スイカ」−「ベル」を停止させるように定める。
また、左停止時には、有効ラインに「赤7」又は「BAR」図柄を停止可能であるときは「赤7」又は「BAR」図柄を停止させる。図18に示すように、「赤7」又は「BAR」図柄は、06番及び14番に配置されている。したがって、上述と同様に計算すれば、1/2の確率で、「赤7」又は「BAR」図柄を有効ラインに停止させることができる。
さらにまた、中停止時には、有効ラインに「スイカ」図柄を停止可能であるときは「スイカ」図柄を停止させる。図18に示すように、「スイカ」図柄は、05番及び13番に配置されている。したがって、上記と同様に、1/2の確率で、「スイカ」図柄を有効ラインに停止させることができる。
1/2(左リール31)×1/2(中リール31)×1/1(右リール31)
=1/4
となる。
よって、「備考」欄に記載した通りとなる。
さらにまた、左第一停止の押し順では、「1/8」の確率で1枚ベルが入賞する。
さらに、右第一停止の押し順では、「1/4」の確率で1枚ベルが入賞する。
さらにまた、左第一停止の押し順では、「1/8」の確率で1枚ベルが入賞する。
さらに、右第一停止の押し順では、「1/4」の確率で1枚ベルが入賞する。
さらにまた、左第一停止の押し順では、「1/8」の確率で1枚ベルが入賞する。
さらに、中第一停止の押し順では、「1/4」の確率で1枚ベルが入賞する。
さらにまた、左第一停止の押し順では、「1/8」の確率で1枚ベルが入賞する。
さらに、中第一停止の押し順では、「1/4」の確率で1枚ベルが入賞する。
ベルB1当選時には、正解押し順は、123(左中右;順押し)である。したがって、左中右の押し順でストップスイッチ42が操作されたときは、ベル01が入賞し、8枚の払出しとなる。ベル01の図柄の組合せは、「ベル」−「ベル」−「リプレイ」であり、上述したように、左及び中リール31の「ベル」図柄、並びに右リール31の「リプレイ」図柄は、いずれも、「PB=1」配置であるから、常に、有効ラインに停止させることができる。
よって、ベルB1当選時に、正解押し順である左中右でストップスイッチ42が操作されたときは、有効ラインに、ベル01である「ベル」−「ベル」−「リプレイ」が停止する。
左第一停止時には、この時点では正解押し順であるので、リール制御手段63cは、左リール31の停止時に中段に「ベル」を停止させる。この時点では、押し順正解であるので、枚数優先により左リール31を停止させている。
次に、右第二停止時には、この時点で押し順不正解となるので、リール制御手段63cは、個数優先制御を行うことにより、右リール31の停止時に中段に「ベル」を停止させない。
「ベル」−「スイカ」−「スイカ」(ベル07)
「ベル」−「スイカ」−「チェリー」(ベル07)
「ベル」−「チェリー」−「スイカ」(ベル07)
「ベル」−「チェリー」−「チェリー」(ベル07)
「リプレイ」−「リプレイ」−「ベル」(ベル08)
「赤7」−「リプレイ」−「ベル」(ベル09a)
である。
ここで、図18に示すように、右リール31の「スイカ」又は「チェリー」図柄のいずれかの図柄は、4図柄間隔、すなわち「PB=1」で配置されている。したがって、右リール31の停止時に、「スイカ」又は「チェリー」図柄のいずれかの図柄を有効ラインに停止させることができる。
以上より、ベルB1当選時に、左右中の押し順でストップスイッチ42が操作されたときは、
左リール(1/1)×中リール(1/1)×右リール(1/1)
=1/1(PB=1)
の確率で、1枚ベル(ベル07)を停止させることができる。
中第一停止時は、第一停止時に押し順不正解が確定する。したがって、第一停止時から、個数優先制御によってリール31を停止制御する。
ベルB1当選時における中第一停止時に、有効ラインに「スイカ」を停止させると、この時点で入賞可能となる図柄の組合せは、
「ベル」−「スイカ」−「スイカ」
「ベル」−「スイカ」−「チェリー」
である(2種類)。
「ベル」−「チェリー」−「スイカ」
「ベル」−「チェリー」−「チェリー」
である(2種類)。
さらにまた、中第一停止時に、有効ラインに「リプレイ」を停止させると、この時点で入賞可能となる図柄の組合せは、
「リプレイ」−「リプレイ」−「ベル」
「赤7」−「リプレイ」−「ベル」
である(2種類)。
また、左リール31の停止時には、有効ラインに「赤7」図柄を停止可能であるときは「赤7」図柄を有効ラインに停止させる。なお、左リール31の「赤7」図柄は「PB≠1」配置である。一方、「赤7」図柄を停止させることができないときは、「リプレイ」図柄を有効ラインに停止させる。左リール31の「リプレイ」図柄は「PB=1」配置であるから、「リプレイ」図柄を常に有効ラインに停止させることができる。
1/1(左リール31)×1/1(中リール31)×1/1(右リール31)
=1/1(PB=1)
となる。
右第一停止時は、第一停止時に押し順不正解が確定する。したがって、第一停止時から、個数優先制御によってリール31を停止制御する。
ベルB1当選時における右第一停止時に、有効ラインに「ベル」図柄を停止させると、この時点で入賞可能となる図柄の組合せは、
「リプレイ」−「リプレイ」−「ベル」
「赤7」−「リプレイ」−「ベル」
である(2種類)。
「ベル」−「スイカ」−「スイカ」
「ベル」−「チェリー」−「スイカ」
である(2種類)。
さらにまた、右第一停止時に、有効ラインに「チェリー」図柄を停止させると、この時点で入賞可能となる図柄の組合せは、
「ベル」−「スイカ」−「チェリー」
「ベル」−「チェリー」−「チェリー」
である(2種類)。
したがって、右リール31の「ベル」図柄、左リール31の「赤7」又は「リプレイ」図柄、及び中リール31の「リプレイ」図柄は、いずれも、当該リール31において「PB=1」配置であるから、常に、これらの図柄を有効ラインに停止させることができる。
以上より、ベルB1当選時に、右第一停止であるとき、1枚ベルを有効ラインに停止させることができる確率は、
1/1(左リール31)×1/1(中リール31)×1/1(右リール31)
=1/1(PB=1)
となる。
同様に、ベルB3又はB4の当選時においては、132(左右中)が正解押し順となり、その押し順でストップスイッチ42を操作したときは、「PB=1」でベル01が入賞する。また、123(左中右)の押し順、中第一停止、及び右第一停止時には、いずれも、「PB=1」で1枚ベルが入賞する。
図26に示すように、ベルA1〜B4当選時のうち、ベルA1〜A8当選時については、置数が「1260」に設定されており、ベルB1〜B4当選については、置数が「1620」に設定されている。これにより、ベル当選の合計置数は「16560」となり、合算の当選確率は、「16560/65536」≒「1/4」である。
さらにまた、左第一停止時は、「1/8」の確率で1枚役が入賞する。したがって、押し順「123」及び「132」のいずれであっても、メダル獲得期待値は、「0.125」となる。
さらに、右第一停止時は、「1/4」の確率で1枚役が入賞する。したがって、押し順「312」及び「321」のいずれであっても、メダル獲得期待値は、「0.25」となる。
(1260×0.125)×8+1620×8×2+1620×1×2
=30420
となる。
この値を「65536」で割ると、
30420/65536
≒0.46(枚)(ベル当選に基づくメダル獲得期待値)
となる。
以上より、ずっと同一押し順で遊技を消化したときは、押し順による優劣はなく、ベル当選によるメダル獲得期待値は、1遊技あたり、「0.46(枚)」となる。
さらに、いずれの押し順であってもベル当選に基づくメダル獲得期待値は同一であるので、押し順をランダムにして遊技を進行したときと、上記のようにずっと同一押し順(たとえば左中右の順押し)で遊技を消化したときとで、メダル獲得期待値は同一となる。
図18に示すように、チェリー01〜04の左リール31の図柄は、いずれも「チェリー」図柄である。そして、図18に示すように、左リール31では、05番及び13番に「チェリー」図柄が配置されている。したがって、「チェリー」図柄は、「PB≠1」配置である。ただし、チェリー重複当選時にその旨が遊技者に報知され、遊技者が「チェリー」図柄が有効ラインに停止するように左リール31を目押しすれば、「チェリー」図柄を有効ラインに停止させることができる。また、左リール31を任意の位置で停止させたとき、「1/2」の確率で「チェリー」図柄が有効ラインに停止する。
さらにまた、右リール31の停止時には、「赤7」、「BAR」、「青7」、又は「白7」図柄のいずれかを有効ラインに停止させる。これら4つのうちのいずれかの図柄を有効ラインに停止させれば、いずれかのチェリー01〜04が入賞可能となるからである。
これにより、チェリー当選時には、左リール31のみ、目押しが必要となる。また、チェリー重複当選時に、全く目押しを行うことなく全リール31を停止させたときに、いずれかのチェリーが入賞する確率は、「1/2」となる。
先ず、内部中遊技のリプレイ当選時は、リプレイの入賞を優先するが、リプレイは、常に入賞可能(PB=1)である。したがって、当該遊技で1BBが入賞する場合はない。
さらにまた、内部中遊技のベル当選時は、ベルの入賞を優先するが、順押し時に、1枚ベルに係る図柄を有効ラインに停止させることができないが、1BBに係る図柄を停止可能であるときは、当該図柄を停止させ、1BBを入賞可能な停止形とする。
図27は、遊技状態(内部状態を含む)の移行を説明する図である。以下、図27を参照しつつ、状態制御手段63fついて説明する。
遊技状態制御手段63fは、非内部中遊技(RT1及びRT2)において特別役(1BB)に当選し、当該遊技で当選した特別役が入賞しなかったときは、次遊技から、内部中遊技に移行させるように制御する。さらに、内部中遊技において、当選した特別役が入賞したときは、次遊技から、特別遊技(1BB遊技)に移行させるように制御する。
そして、1BB遊技において1BB遊技の終了条件を満たすときは、1BB遊技を終了し、次遊技から、非内部中遊技(RT1)に移行させるように制御する。
なお、ART(RT2)中に特別役に当選したときは、特別役が非入賞であれば、ARTを継続し(内部中ARTとする)、ARTの終了後に特別役を入賞させてもよい。
なお、ART遊技中は、メイン制御基板60は、正解押し順の情報をサブ制御基板80に送信する。そして、サブ制御基板80は、たとえば画像表示装置23に正解押し順(たとえばベルA1当選時は、「中左右」)を画像表示する。
また、非ARTは、内部状態として、ARTに当選する確率が異なる低確率、通常確率、及び高確率と、ART当選後の前兆とを備える。ここで、「内部状態」とは、遊技状態とは異なる概念であって、一つの遊技状態中に、複数の内部状態を備えるものである。本実施形態では、RT1(非ART)において、上記4つの内部状態を備える。
また、前兆の終了後、リプレイ重複当選となったときに、特殊リプレイ1を入賞させる押し順を報知する。当該遊技で特殊リプレイ1が入賞すると、RT1からRT2(ART)への移行条件を満たし、次遊技からRT2を開始する。
さらにまた、RT2(ART)は、内部状態として、ARTの遊技回数が上乗せされる期待値が異なる通常確率と高確率とを備える。
本実施形態では、前兆に移行することに決定したときが、ARTの当選に相当する。
(1)低確率中
チェリー当選時、40%の確率で通常確率に移行し、5%の確率で高確率に移行し、1%の確率で前兆に移行する(54%の確率で移行なし)。
(2)通常確率中
a)チェリー当選時、50%の確率で高確率に移行し、10%の確率で前兆に移行する(40%の確率で移行なし)。
b)リプレイ当選時、5%の確率で低確率に移行する(95%の確率で移行なし)。
(3)高確率中
a)チェリー当選時、100%の確率で前兆に移行する。
d)リプレイ当選時、5%の確率で通常確率に移行し、3%の確率で低確率に移行する(92%の確率で移行なし)。
遊技状態制御手段63fは、上記のような抽選において前兆に移行することに決定したときは、前兆の遊技回数を、「1」〜「32」の範囲内において抽選で決定し、カウンターにその値をセットする。そして、カウンター値を毎遊技「1」ずつ減算し、「0」となったときは、前兆を終了する。また、前兆中のいずれかの時点で、ARTの当選報知を行う。なお、一旦前兆に移行したときは、前兆から、低確率、通常確率、又は高確率に移行する場合はない。また、ARTに当選したときは、その時点でART確定である旨を報知し、前兆を経由しなくてもよい(前兆の遊技回数を「0」にする)。
なお、RT1において、非ART中は、順押しで遊技が消化されるので、リプレイ重複当選となった遊技では、特殊リプレイ2が入賞する。そして、RT1において特殊リプレイ2が入賞してもRT移行はない。
RT2(ART)では、ARTの終了条件を満たすまで、ベル当選時に正解押し順が報知される。また、リプレイ重複当選時に特殊リプレイ1を入賞させる押し順を報知する。なお、RT2において特殊リプレイ2が入賞するとRT1に移行するが、特殊リプレイ1が入賞してもRT移行はない。
ただし、RT1において特殊リプレイ1が入賞すると、次遊技からRT2に移行する。しかし、偶然にRT1からRT2に移行しても、そのRT2で順押しを継続していれば、リプレイ重複当選時に特殊リプレイ2が入賞してRT1に戻る。
(1)遊技回数が所定回数(たとえば初期遊技回数を「50」とし、この「50」に「N」が上乗せされた場合には、「50+N」)に到達したとき
(2)払出し枚数又は差枚数(払出し枚数から投入枚数を引いた枚数)が所定枚数(たとえば、300枚)に到達したとき
(2)ベル当選回数(正解押し順時)が所定回数(たとえば40回)に到達したとき
が挙げられる。
たとえば、ARTの終了条件を遊技回数とし、遊技回数の初期値を「50」に設定する。そして、チェリー当選時に、遊技回数を上乗せするか否か、及び上乗せ遊技回数を抽選で決定する。上乗せ遊技回数を決定したときは、その時点でのARTの残り遊技回数に上乗せ遊技回数を加算する処理を行う。
(1)通常確率中
チェリー当選時、上乗せ数は、「10」(30%)、「30」(50%)、「50」(20%)の中から抽選で決定する。
(2)高確率中
チェリー当選時、上乗せ数は、「30」(30%)、「50」(40%)、「100」(30%)の中から抽選で決定する。
役抽選結果に基づいて内部状態を移行する場合、たとえば、通常確率中は、チェリー当選時の50%で高確率に移行することが挙げられる。
また、高確率中は、リプレイ当選時の10%で通常確率に移行することが挙げられる。
これに対し、RT2においてARTを終了したときは、次遊技から、リプレイ重複当選時に特殊リプレイ1を入賞させる押し順や、ベル当選時の正解押し順を報知しない。したがって、遊技状態の移行(RT2からRT1への移行)と、ARTの終了のタイミングとは必ずしも一致するものではない。
本実施形態では、図8(出力ポート7)に示すように、ARTの発動時、継続時、ART中には、それぞれその旨の外部信号(ART信号)を送信する。
メイン制御基板60とサブ制御基板80とは、電気的に接続されており、メイン制御基板60のメインCPU63内にあるシリアル通信回路により、サブ制御基板80に一方向で演出等に必要な情報(信号、データ、制御コマンド等)を送信する。
なお、メイン制御基板60とサブ制御基板80とは、電気的に接続されることに限らず、光通信手段を用いた接続であってもよい。さらに、電気的接続及び光通信接続のいずれも、シリアル通信に限らず、パラレル通信であってもよく、シリアル通信とパラレル通信とを併用してもよい。
ここで、サブ制御基板80上には、RWM81、ROM82、及びサブCPU83を含むMPUが搭載される。さらに、MPU内蔵のRWMとは別個に、MPUの外部(サブ制御基板80上)にRWMが搭載される。このため、RWM81というときは、MPU内蔵のRWM、及び外部RWMを含む意味で使用する。
RWM(サブメモリ)81は、サブCPU83が演出を制御するときに取り込んだデータ等を一時的に記憶可能な記憶媒体である。
また、ROM(サブROM)82は、演出用データとして、演出に係る抽選を行うとき等のプログラムや各種データ等を記憶しておく記憶媒体である。
演出ランプ21は、たとえばLED等からなり、所定の条件を満たしたときに、それぞれ所定のパターンで点灯する。なお、演出ランプ21には、各リール31の内周側に配置され、リール31に表示された図柄(表示窓13から見える上下に連続する3図柄)を背後から照らすためのバックランプ、リール31の上部からリール31上の図柄を照光する蛍光灯、スロットマシン10のフロントカバー前面に配置され、役の入賞時等に点滅する枠ランプ等が含まれる。
さらにまた、画像表示装置23は、液晶ディスプレイ、有機ELディスプレイ、ドットディスプレイ等からなるものであり、遊技中に各種の演出画像(1BB遊技中及びART中の押し順、役の抽選結果に対応する演出等)や、遊技情報(1BB遊技及びART中の遊技回数や獲得枚数等)等を表示するものである。
また、十字キー24及びプッシュボタン25は、遊技者が意図する情報を表示させたりするときや、ホール管理者(店長等)が各種の設定を変更するとき等に用いられる。
演出出力制御手段83aは、当選役及び遊技状態等に応じて、どのようなタイミングで(スタートスイッチ41の操作時や各ストップスイッチ42の操作時等)、どのような演出を出力するか(ランプ21をどのように点灯、点滅又は消灯させるか、スピーカ22からどのようなサウンドを出力するか、及び画像表示装置23にどのような画像を表示させるか等)を抽選によって決定する。
そして、演出出力制御手段83aは、その決定に従い、演出ランプ21、スピーカ22、画像表示装置23の出力を制御する。また、1BB遊技中やART中は、ストップスイッチ42の押し順、獲得枚数、残り遊技回数等を画像表示する。
図28は、メイン制御基板60によるプログラムを開始するときの処理(M_PRG_START )を示すフローチャートである。
図28において、ステップS11でプログラムが開始されると、次のステップS12において、メイン制御基板60は、レジスタを初期化する。具体的処理としては、たとえば、メインCPU63に設けられているシリアル通信回路の通信速度の設定、割込みの種類の設定(たとえば、マスカブル割込みに設定すること等)、送信する制御コマンドに付与するパリティビットの設定(たとえば、偶数パリティに設定すること等)が挙げられる。
いいかえれば、スロットマシン10を正常に動作させるために必要な初期値を各種レジスタに設定する。
なお、本実施形態では、レジスタは複数(たとえばAレジスタ〜Lレジスタや及び送信用レジスタ等)設けられている。
本実施形態では、RWM61の所定範囲のチェックサムを行うとともに、アドレス「F075」のチェックサムデータ(_WK_SUM_CHK )を加算したチェックサムデータを算出すると、当該チェックサムデータが「0」となるように、アドレス「F075」のチェックサムデータが設定されている。
なお、以降の処理においてもRWM61の複数範囲(アドレス)に記憶されたデータを初期化する場合には、本実施形態では指定されたRWM61の範囲で同様の処理を実行するものとする。
つまり、ドアスイッチ16の信号がオフのときや(フロントカバーが閉じられている)、設定ドアスイッチ54の信号がオフのとき(設定ドアが閉じられている)にもかかわらず、設定キースイッチ52の信号がオンになることはあり得ず、不正の可能性が高いことから、設定変更処理への移行を許可しない。
ステップS19では、メイン制御基板60は、電源断復帰データが異常値であるか否かを判断する。この電源断復帰データは、ステップS16でレジスタに記憶したデータである。
なお、本実施形態では、設定変更不可フラグを設けたが、常時設定変更が可能に構成されている場合には、設定変更不可フラグを設けなくてもよい。その場合、ステップS20に相当する処理は不要となる。
また、指定スイッチがオンでない場合(ステップS18で「No」)又は設定変更が不可である場合において、電源断復帰データが異常値であるとき(ステップS21で「No」)は復帰不可能エラー処理(SS_ERROR_STOP )に進み、電源断復帰データが正常値であるとき(ステップS21で「Yes」)は電源復帰処理(M_POWER_ON)に進む。
先ず、ステップS801において、RWM61の初期化範囲として、「所定範囲」をレジスタに記憶する。ここでは、電源断処理が正常に実行されたと判断した場合に備えるためのセットであり、設定値データ(アドレス「F000」)、遊技状態(たとえば、RT状態)データ、当選フラグ(持ち越しているフラグ)を初期化しない(含まない)ようにした初期化範囲を「所定範囲」とする。なお、これに限らず、「所定範囲」は、設定値データを含まない範囲であればよく、遊技状態(RT状態等)データや当選フラグの記憶範囲を含めるか否かは任意である。
なお、ステップS804において特定範囲が初期化されると、アドレス「F000」の設定値データの値は「0」となる。
これにより、たとえば遊技店側が前日の設定値と同一の設定値を設定したい場合には、新たに設定値を設定する(同一設定の打ち直しを行う)ことなく、上記のATに関するデータをクリアすることができる。
本実施形態では、制御コマンドデータは、第1制御コマンドデータ及び第2制御コマンドデータからなり、出力要求に応じて、異なる第1制御コマンドデータ及び第2制御コマンドデータが送信される。
なお、以下のフローチャートにおいても、後述する「2バイト時間待ち処理」を実行するに際し、ステップS809のような待機時間をセット処理を実行するが、この場合の具体的な待機時間(BCレジスタに記憶する値)は、プログラムに記述されている。したがって、RWM61の所定アドレスに記憶された値を呼び出すものではない。
具体的には、メイン制御基板60のRWM61のクリア範囲(設定変更に伴いクリアされる範囲であって、たとえば特定範囲)は、たとえばアドレス「F000(H)〜F1FF(H)」(バイト数で512バイト)であり、サブ制御基板80のRWM81のクリア範囲は、たとえばアドレス「000000(H)〜800000(H)」(バイト数で約12〜13ギガバイト)である。
また、設定変更開始時の出力要求セット及び制御コマンドセット1の実行後、サブ制御基板80がRWM81の初期化を開始するが、RWM81の初期化が終了するために十分な時間をウェイト時間として設定する。これにより、サブ制御基板80側でRWM81の初期化処理を終了した後に、メイン制御基板60側でステップS811以降の処理に進むようにする。
これに対し、ステップS810の2バイト時間待ち処理を実行しなかった場合には、メイン制御基板60の処理が先に実行されてしまう。その結果、たとえばスタートスイッチ41の操作に基づき役抽選結果Aとなり、リール31の回転開始時に演出aを出力したいとき、リール31の回転開始のタイミングで演出aが出力されず、少し遅れて演出aが出力されてしまう。
また、たとえば前回設定した設定値が「3」であるが、電源断復帰が正常に行われなかったために、ステップS804で設定値データを含めて初期化されると、ステップS812で設定値として「1」が記憶されるので、ステップS813で表示される設定値は「1」となる。しかし、ステップS807では、電源断復帰時が正常であるか否かを含めた制御コマンドをサブ制御基板80に送信し、サブ制御基板80側で、電源断復帰時の正常/異常を報知すれば、設定値の管理者は、その報知に基づいて、なぜ設定値が「1」と表示されたのかを理解することができる。
ステップS815では、設定変更スイッチ53の操作を検出したか否かを判断する。ここでは、入力ポート1の立ち上がりデータを判断し、D4ビットが「1」であるか否かを判断する。設定変更スイッチ53の操作を検出したと判断したとき、すなわち入力ポート1立ち上がりデータのD4ビットが「1」であるときはステップS816に進み、検出していないと判断したとき、すなわち入力ポート1立ち上がりデータのD4ビットが「0」であるときはステップS817に進む。
スタートスイッチ41が操作されたと判断したときはステップS818に進み、操作されていないと判断したときはステップS814に戻る。
たとえば、ステップS814の処理を設けない場合、ステップS815で設定変更スイッチ53の立ち上がりデータがオンであると判断されると、ステップS816で設定値を更新し、次のステップS817でスタートスイッチ41がオンでないと判断されると、ステップS815に進んで、設定変更スイッチ53の立ち上がりデータがオンであるか否かが判断される。
また、設定変更スイッチの立ち上がりデータをオフにする処理を実行することなく、設定値が2以上上がり続けてしまうことを防止できる。
これにより、当該処理以降に割込み処理が実行されたとき、設定値表示LED64が消灯し、貯留数表示LED71及び獲得数表示LED72の点灯が可能となる。
そして、制御コマンドセット2では、以下に示すように、制御コマンドの書き込みを行うが、制御コマンドセット2の実行中は、上述したように割込み処理が禁止されている。したがって、制御コマンドの書き込み処理中に割込み処理が実行されることによる誤作動(正常の書き込みアドレスとは異なるアドレスに書き込んでしまうこと等)を防止することができる。
メイン制御基板60は、割込み処理を実行するタイミングが到来したときは、割込みフラグのオン/オフを判断し、割込み処理の禁止/許可を判断する。
まず、ステップS511では、制御コマンドバッファのアドレスをセットする。この処理は、制御コマンドバッファの先頭アドレスをセットする処理である。
次のステップS512では、書き込みポインタの取得を行う。書き込みポインタとは、制御コマンドのデータを、RWM61のどのアドレスに書き込むかを指定するためのものであり、現時点での書き込みポインタが記憶されているので、その書き込みポインタを読み込む処理を行う。
次にステップS514に進み、指定アドレスのデータを取得する。この処理は、前処理のステップS513で求めたアドレスのRWM61の記憶領域に保存されているデータを読み込む処理である。
RWM指定であると判断されたときはステップS517に進み、RWM指定でないと判断されたときはステップS518に進む。
ステップS518では第1制御コマンドを示すデータをRWM61に記憶する。ここでは、ステップS513における「指定アドレス取得」で取得したアドレスに、第12制御コマンドを記憶する処理である。具体的には、制御コマンドセット2処理の前に記憶したDレジスタの値を記憶する処理である(RWM指定の場合は、Dレジスタの値に80(H)を加算した値を記憶している。)。
そしてステップS520に進み、書き込みポインタの値を「+1」更新する処理を行う。なお、第1制御コマンド及び第2制御コマンドを示すデータを、2か所のRWM61の記憶領域に書き込むが、ステップS513における「指定アドレス取得」処理の演算において、書き込みポインタのデータを2倍にして演算を行うので、書き込みポインタの値としては「1」だけインクリメントする。
ステップS31では、2バイトの待機時間が経過したか否かを判断する。この処理は、BCレジスタの値を判断し、「0」であるか否か(Bレジスタ値が「0」、かつCレジスタ値が「0」であるか否か)を判断する。具体的には、たとえばBレジスタ値=「1」、Cレジスタ値=「0」であるときは、「0」でないと判断する。あるいは、Bレジスタ値=「0」、Cレジスタ値=「0」であるときは、「0」であると判断する。
ステップS31において「0」であると判断したときは本フローチャートによる処理を終了し、「0」でないと判断したときはステップS32に進む。
ステップS41の割込みカウンタ値取得では、割込みカウンタ値をAレジスタに記憶する。ここで、本実施形態では、「F02B」及び「F02C」の2アドレスに16ビットとして割込みカウンタ値を記憶しているが、ステップS41では、下位8ビットのアドレス「F02C」に記憶されている値をAレジスタに記憶する。
次に、ステップS42に進み、割込みカウンタ値(アドレス「F02C」に記憶されている下位8ビットの値)が変化したか否かを判断する。具体的には、「Aレジスタ値」から「アドレス「F02C」に記憶されている割込みカウンタ値」を減算する処理を実行し、演算結果が「0」(ゼロフラグ=「1」)であるときは、「No」と判断する。そして、変化したと判断したときは本フローチャートによる処理を終了し、変化していないと判断したときはステップS42の処理を継続する。
なお、ゼロフラグとは、演算した結果が「0」か否かを判断するためのフラグであって、MPUに設けられたフラグレジスタ(Fレジスタ)の特定ビットを指す。当該特定ビットが「0」(ゼロフラグ=「0」)のときには、演算結果が「0」でないことを示し、当該特定ビットが「1」(ゼロフラグ=「1」)のときには、演算結果が「0」であることを示す。
また、上述したように、割込みカウンタ値として8ビット値を用いる場合には、アドレス「F02B」のみに割込みカウンタ値を記憶するので、ステップS41ではアドレス「F02B」の値をAレジスタに記憶し、ステップS42では、アドレス「F02B」に記憶されている値が変化したか否かを判断する。
先ず、ステップS831では、スタックポインタを復帰させる。ここで、スタックポインタとは、電断が生じた場合に、電断発生時のデータ(例えば、レジスタ値、割込み処理前のメイン処理の命令処理等)を保存するRWM61の領域を指す。
次のステップS832では、RWM61のアドレス「F000」の設定値データを読み込み、設定値の範囲が正常範囲であるか(「1」〜「6」の範囲内であるか)否かを判断する。設定値が正常範囲であると判断したときはステップS833に進み、設定値が正常範囲でないと判断したときはステップS839に進み、復帰不可能エラー処理(SS_ERROR_STOP )に移行する。この場合のエラーは、本実施形態では「E6」エラーと称し、「E6」である旨を獲得数表示LED72に表示する。
次のステップS835では、RWM61の初期化を終了したか否かを判断し、終了したと判断したときはステップS836に進む。ステップS836では、入力ポート0〜2の読み込みを行う。この処理は、電源断前の入力ポートの各データ(レベルデータ、立ち上がりデータ、立ち下がりデータ)を最新のデータに更新するための処理である。
次にステップS838に進み、アドレス「F01F」の電源断処理済フラグをクリア、すなわち「0」にする。そして本フローチャートによる処理を終了する。
本実施形態では、遊技待機中に、設定キーを挿入して、設定値の確認ができるように構成されている。ここで、設定キースイッチ52の立ち下がり信号が「1」になったときに、設定値の確認を終了したと判断している。
しかし、たとえば設定確認中に電源断が生じ、この電源断中に設定キースイッチ52をオフにして(設定キーを抜いて)電源を立ち上げたと仮定する。
その結果、電源断復帰時の状態と、電源断前の状態とで、異なる状態となってしまう。具体的には、電源断前の状態では、設定キースイッチ52の立ち下がり信号が「0」であるのに対し、電源断復帰時に、設定キースイッチ52の立ち下がり信号が「1」となる。
よって、このように、電源断前後で異なる状態となってしまうことを回避するために、電源断復帰時には、入力ポート0〜2のRWM61の値を最新の状態に更新する。そこで、入力ポート0〜2読み込み処理を実行した後、割込み処理を起動させている。
なお、本実施形態において、復帰不可能エラーと判断されるのは、以下の場合である。ただし、本実施形態で示した復帰不可能エラーに限定されるものではない。
E1エラー:図28のステップS24において、電源断からの復帰が正常でないと判断されたとき
E5エラー:図36のステップS76において、表示エラーが発生したと判断されたとき
E6エラー:図34のステップS839において、設定値が正常範囲でないと判断されたとき
E7エラー:図64のステップS620において、乱数エラーが発生したと判断されたとき
次にステップS884に進み、全出力ポートが終了したか否か、すなわち出力ポート6まで終了したか否かを判断する。終了していないと判断したときはステップS882に戻り、終了したと判断したときはステップS885に進む。
また、モータ32がφ1を出力している状況において電源断が起こった場合、当該処理を実行しないとリセット信号が入力されるまでφ1を出力し続けることとなる。本来であればリセット信号が入力されるまでの時間は短いが、瞬間的に電源電圧が低下したことにより電源断処理が実行され、その後通常の電源電圧が供給されてしまうと、リセット信号が入力されることなくリセット待ちを繰り返すことになる。このため、φ1が出力され続ける状況も起こり得る。
次にステップS887に進み、LEDをオフにする。この処理は、出力ポート0を示すアドレスに「00000000B」を出力する処理である。したがって、ステップS887の時点では、全LEDの出力が「0」(消灯)となる。これにより、LEDのちらつきを防止することができる。
そして、次のステップS888の「エラー表示出力」処理は、出力ポート1を示すアドレスに所定値を出力する処理を行う。ここでは、エラー表示内容として、「E1」、「E5」、「E6」、「E7」等が表示されるようにする処理である。
「1/内部システムクロック(16MHz)」×256×8(命令)+α(その他命令)≒0.128ms
の時間で、Bレジスタが「255」→「0」になるように設定されている。
これにより、同一のプログラム処理により下位桁の表示から上位桁の表示に切り替えることができる。また、上位桁/下位桁の切替え周期は、約0.128msとなる。したがって、上位桁を0.128msの間点灯させたら、次に下位桁を0.128msの間点灯させる処理を繰り返す。
いいかえれば、LEDを用いてエラー表示を行う場合に、復帰不可能エラーの方が通常エラーよりも輝度が高いので、サブ制御基板80側の機器(演出ランプ21、スピーカ22、画像表示装置23)を用いたエラー報知を行わなくても(行えなくても)、ホール店員が気づきやすくなる。
以上の通り、タイマ割込み処理が実行されない(実行したくない)期間においてエラーが発生した場合であっても、レジスタを用いた演算処理、及びハード構成により適切にLEDを用いてエラーの表示を実行することができる。
上記のように、約0.1ms程度のウェイト時間を設ければ、そのウェイト時間中は、一方のLEDが点灯し続けるので、LEDの一定の明るさ(光束)を確保できる。一方、近時の高性能のLEDを採用すれば、点灯時間が一瞬(ステップS889のみ)であっても目視に十分な明るさを確保することができる。
また、図37〜図63は、メイン処理中のサブルーチンを示す処理である。
次のステップS52では、遊技開始セット処理(MS_GAME_SET )を行う。ステップS52に進むと、後述する図37の処理に移行する。
次のステップS54では、ステップS53で読み込んだベット枚数に基づき、ベットメダルの有無を判断する。
次のステップS57では、ソフト乱数の更新処理を行う。この処理は、役抽選手段63bで使用する乱数(ハード乱数、又は内蔵乱数)に加工(演算処理)するための加工用乱数を更新(たとえば「1」ずつ加算)する処理である。ソフト乱数は、0〜65535の範囲を有する16ビット乱数である。なお、更新方法として、更新前の値に、割込みカウント値(割込み時にインクリメントされるカウント値(変数))を加算する処理を実行してもよい。
ステップS60では、役抽選手段63bは、スタートスイッチ41が操作されたタイミングで、すなわちスタートスイッチ41の操作信号の受信時に、役の抽選を実行する。なお、役抽選時の乱数値はステップS59で取得する。そして、ステップS60において、取得した乱数値が、いずれかの当選役に該当する乱数値であるか否かを役抽選テーブルを用いて判定する処理を行う。
次にステップS62に進み、リール制御手段63cは、リール31の回転を開始する。次のステップS63では、リール31の停止受付けをチェックする。ここでは、ストップスイッチ42の操作信号を受信したか否かを検知し、操作信号を受信したときは、役の抽選結果とリール31の位置とに基づいてリール31の停止位置を決定し、その決定した位置にリール31を停止させるように制御する。
次にステップS67に進み、図柄の表示エラーが発生したか否かを判断する。図柄の表示エラーが発生したと判断したときはステップS76に進み、表示エラーが発生していないと判断したときはステップS68に進む。
一方、後述する満杯エラー等の復帰可能エラーの発生時は、エラー内容を表示して処理を停止するが(たとえば後述する図46のステップS239等)、ホール店員がエラー解除操作を実行し(エラー要因を除去し)、リセットスイッチ53を操作すると、エラーが解除されたか否かを判断して、エラーが解除されたと判断したときは、処理を再開する。
次のステップS69では、特別役(1BB)の入賞があったか否かを判断する。特別役が入賞したと判断したときはステップS70に進み、特別役が入賞していないと判断したときはステップS72に進む。
ステップS70では、特別役の入賞時の待機時間をセットする。この処理は、上述のステップS809と同様であり、BCレジスタに所定値をセットする処理である。本実施形態では、BCレジスタに「2000」(約4470ms相当)をセットする。より具体的には、Bレジスタ値=「3」(00000011B)、Cレジスタ値=「208」(11101000B)をセットする。そして、次のステップS71で、2バイト時間待ち処理を実行する。
次にステップS75に進み、メイン制御基板60は、制御コマンドセット1を実行する。この処理は、制御コマンドバッファ(RWM61)に、サブ制御基板80に送信する制御コマンドデータを記憶する処理である。
そして、ステップS75の処理を終了すると、再度、ステップS50に戻る。
まず、ステップS81では、遊技待機表示時間をセットする(RWM61の所定記憶領域に記憶する)。本実施形態では、遊技待機表示時間としては、「26846」割込み(≒60000ms、すなわち約60秒(1分))をセットする。このステップS81で遊技待機表示時間がセットされると、この時点から割込み処理ごとに値が「1」ずつ減算される。
次のステップS83では、1BB作動図柄が表示されたか否かを判断する。この処理では、Aレジスタ値に記憶されているD3ビットが「1」であるときは「Yes」と判断し、「0」であるときは「No」と判断する。1BB作動図柄が表示されたと判断したときはステップS84に進み、表示されていないと判断したときは(2BBが設けられていない場合には)ステップS87に進む。
一方、ステップS86では、2BB作動時(2BB遊技時)の獲得可能枚数を保存する。この処理は、上述の「_CT_BB2_PAY 」(RWM61)に、「40」の値を保存(記憶)する処理に相当する。この「40」は、2BB遊技における獲得可能な最大枚数である。そして、ステップS87に進む。
1)まず、HLレジスタに、作動状態フラグのアドレスを記憶する。上述したように、作動状態フラグのアドレスは「F01C」であるので、Hレジスタ値=「F0」、及びLレジスタ値=「1C」とする。
2)次に、Aレジスタ値と、HLレジスタに記憶されているアドレスの情報とを「OR」演算し、演算結果をAレジスタに記憶する。ここで、Aレジスタには、ステップS82において図柄組合せ表示フラグ(_FL_WIN )のデータが記憶されており、HLレジスタに記憶されているアドレスの情報は、作動状態フラグ(_FL_ACTION)の情報である。
例1)
1BBの図柄の組合せが表示されたときは、
Aレジスタ値:00001000B
HLレジスタのアドレスの情報値:00000000B
「OR」演算後のAレジスタ値:00001000B
となる。
例2)
1BBの図柄の組合せが既に表示され、かつ、1BB及びRBが作動中であるときは、
Aレジスタ値:00000000B
HLレジスタのアドレスの情報値:00011000B
「OR」演算後のAレジスタ値:00011000B
となる。
1BBの図柄の組合せが既に表示され、かつ、1BBの作動中であるが、RBの非作動であるときは、
Aレジスタ値:00000000B
HLレジスタのアドレスの情報値:00001000B
「OR」演算後のAレジスタ値:00001000B
となる。
例4)
1BB、及び2BBが非作動であり、かつリプレイ作動であるときは、
Aレジスタ値:00000001B
HLレジスタのアドレスの情報値:00000000B
「OR」演算後のAレジスタ値:00000001B
となる。
たとえば上記の例1)〜例4)を例に挙げると、以下のようになる。
例1)及び例3)
Aレジスタ値:00001000B、Cレジスタ値:00001000B
例2)
Aレジスタ値:00011000B、Cレジスタ値:00011000B
例4)
Aレジスタ値:00000001B、Cレジスタ値:00000001B
ここで、1BBのみを備える場合には、BBに対応するビットを「1」にした情報は、「00001000B」である。したがって、たとえば上記の例1)〜例4)を例に挙げると、以下のようになる。
例1)及び例3)
Aレジスタ値:00001000B
BBに対応するビットを「1」にした情報:00001000B
AND演算後のAレジスタ値:00001000B
例2)
Aレジスタ値:00011000B
BBに対応するビットを「1」にした情報:00001000B
AND演算後のAレジスタ値:00001000B
例4)Aレジスタ値:00000001B
BBに対応するビットを「1」にした情報:00001000B
AND演算後のAレジスタ値:00000000B
なお、1BBと2BBとの双方を備える場合には、BBに対応するビットを「1」にした情報は、「00001010B」となる。また、2BBのみを備える場合には、BBに対応するビットを「1」にした情報は、「00000010B」となる。
たとえば上記の例1)〜例4)を例に挙げると、以下のようになる。
例1)〜例3)
Aレジスタ値(演算前):00001000B
Aレジスタ値(演算後):00010000B
例4)
Aレジスタ値(演算前):00000000B
Aレジスタ値(演算後):00000000B
たとえば上記の例1)〜例4)を例に挙げると、以下のようになる。
例1)
Aレジスタ値:00010000B
Cレジスタ値:00001000B
Aレジスタ値(演算後):00011000B
例2)
Aレジスタ値:00010000B
Cレジスタ値:00011000B
Aレジスタ値(演算後):00011000B
Aレジスタ値:00010000B
Cレジスタ値:00001000B
Aレジスタ値(演算後):00011000B
例4)
Aレジスタ値:00000000B
Cレジスタ値:00000001B
Aレジスタ値(演算後):00000001B
たとえば、例1)のように、1BBの図柄の組合せが表示されたとき(1BB入賞時)は、作動状態フラグの1BBに対応するD3ビットが「0」から「1」となる。
また、例2)のように、1BB及びRBが作動中であるときは、その状態が維持される(作動状態フラグの1BBに対応するD3ビット及びRBに対応するD4ビットが「1」)。
さらに、例4)のように、リプレイ作動時は、作動状態フラグのリプレイに対応するD0ビットが「0」から「1」になる。
上記の例1)〜例4)を例に挙げると、以下のようになる。
例1)及び例3)
Aレジスタ値:00011000B
Cレジスタ値:00001000B
Aレジスタ値(「XOR」演算後):00010000B(ゼロフラグ≠1)
例2)
Aレジスタ値:00011000B
Cレジスタ値:00011000B
Aレジスタ値(「XOR」演算後):00000000B(ゼロフラグ=1)
例4)
Aレジスタ値:00000001B
Cレジスタ値:00000001B
Aレジスタ値(「XOR」演算後):00000000B(ゼロフラグ=1)
a)1BB遊技の開始時
b)RB作動終了後、1BB遊技の終了条件を満たしていないとき
は、「Yes」と判断される。
次のステップS91では、RB作動時の遊技回数及び入賞回数を保存する。この処理は、RB作動時の遊技回数カウンタ「_CT_BONUS_PLAY」に「2」を保存(記憶)するとともに、RB作動時の入賞回数カウンタ「_CT_BONUS_WIN 」に「2」を保存(記憶)する処理に相当する。そしてステップS92に進む。なお、これらのRB作動時の遊技回数カウンタ「_CT_BONUS_PLAY」及びRB作動時の入賞回数カウンタ「_CT_BONUS_WIN 」は、いずれも、初期値として「2」が設定され、それぞれ遊技回数又は入賞回数が「1」増加するごとに「1」ずつデクリメントされるカウンタである。ただし、これに限らず、これらのカウンタ値の初期値を「0」に設定し、遊技回数又は入賞回数が「1」増加するごとに「1」ずつインクリメントし、これらのカウンタ値が「2」に到達したか否かを判断してもよい。
次にステップS95に進み、作動状態の出力要求をセットする。次のステップS96では、制御コマンドセット1を実行する。具体的には、リプレイが作動したことや1BB等が作動したことを示す情報をサブ制御基板80に送信する。なお、図示していないが、今回遊技の設定値に関する情報や、今回遊技のRT状態に関する情報等も送信している。そして、ステップS97に進み、メダル受付け開始処理(MS_MEDAL_START)(図38)に移行する。
まず、ステップS131では、ベットダル枚数のデータをクリアする。すなわち、前遊技におけるベット枚数をクリアする処理であり、具体的には、メダルベット枚数データ(_NB_PLAY_MEDAL)の値を「0」にする処理を行う。
次にステップS132に進み、投入表示LED(73e〜73g)を消灯する処理を行う。具体的には、投入枚数表示LED信号データ(_PT_MEDAL_LED )のD5〜D7ビットを「0」にする処理を行う。
次のステップS133では、メダル管理フラグの初期化を行う。具体的には、メダル管理フラグ(_FL_MEDAL_STS )のD0、D2〜D4、D6、及びD7ビットを「0」にする処理を行う。
リプレイ作動時でないと判断され、ステップS148に進むと、ブロッカ45をオンにする処理(MS_BLOCKER_ON ;図41)を実行し、本フローチャートによる処理を終了する。すなわち、リプレイ非作動時には、一律に、メダルの手入れ投入を許可する。
したがって、本フローチャートのメダル受け付け開始処理において、ステップS136以降の処理は、リプレイ作動時のメダルの自動ベット処理に相当する。
さらに、たとえばリプレイの入賞時に、2バイト時間待ち処理を利用してリプレイ入賞時の演出(リプレイ入賞時の効果音等も含む)を遊技者に提供することも可能となる(2バイト時間待ち処理中は、遊技進行を停止するので、演出キャンセルができないため)。
なお、入賞したリプレイの種類に応じてウェイト時間を異ならせることが可能である。たとえば特殊リプレイ1入賞時(すなわち、ART開始時)には、1秒以上のウェイト時間を設定してもよい。
以上より、第1に、リプレイ作動時でないときは、常にブロッカ45をオンにし、メダルの受付けを許可する。リプレイ作動時でないときは、前回遊技で貯留枚数が上限枚数(50枚)であったとしても、ベットメダル(通常遊技では3枚)については消費しており、その分についてはベット可能だからである。
さらにまた第3に、リプレイ作動時において、貯留メダル枚数が限界枚数であるときは、ブロッカ45をオンにしない(それまでのブロッカ45のオフ状態を維持する)。リプレイ作動時かつ貯留メダル枚数が上限枚数であるときは、メダルをベットできず、かつ貯留メダル枚数の追加ができないので、メダルの受付けを行わないためである。
なお、リプレイ表示LED73aを実際に点灯させる処理は、後述する割込み処理(図64)におけるステップS606のLED表示制御にて行う。
このように、ステップS137において2バイト時間待ち処理の実行後にリプレイ表示LED73aの点灯処理を実行するので、リプレイが表示された瞬間にリプレイ表示LED73aが点灯するのではなく、リプレイが表示された後、約0.5秒の間をおいてから点灯することになる。
次のステップS144では、メダルを1枚加算する処理(ここでは、自動ベット処理を意味する)、すなわち、リプレイの入賞に基づき、自動ベットを行うために、1枚ずつメダルの自動ベット(加算)処理を行う。なお、メダル1枚加算処理の詳細については後述する(MS_MEDAL_INC;図42)。
一方、メダル限界枚数になっていないと判断したときはステップS144に戻り、メダル1枚加算(自動ベット)処理を再度実行する。
次にステップS152において、メイン制御基板60は、ステップS151で読み込んだメダル枚数のチェックを行う。具体的には、Aレジスタの値が「0」を示す値となっているときに、ゼロフラグを「1」にする。そして、本フローチャートによる処理を終了する。
先ず、ステップS161において、メイン制御基板60は、ブロッカ監視時間の経過をチェックする。ブロッカ監視時間は、予め所定値(46割り込み:約102ms)に設定されており、通路センサ43aがオンとなったとき(メダルを検知したとき)に計時を開始する。次にステップS162に進み、タイマによる所定時間が経過したか否かを判断する。経過したと判断したときはステップS163に進み、経過していないと判断したときはステップS161に戻る。
このように制御するのは、ブロッカ45によりメダルを挟み込んでしまうことを防止するためである。具体的には、通路センサ43aによりメダルを検知してから約102ms経過していれば、通路センサ43aにより検知されたメダルはブロッカ45を既に通り過ぎていると判断できるからである。換言すれば、通路センサ43aがオンとなってから約102ms以内にブロッカ45を駆動すると、通路センサ43aにより検知したメダルをブロッカ45が挟み込んでしまうおそれがあるためである。なお、ブロッカ監視時間は、所定のRWMアドレスに記憶される時間であって、所定値をセットした後も遊技の進行は可能となる(2バイト時間待ち処理とは異なる)。
なお、本実施形態では、割込み処理により出力ポートから情報を出力している(図64のステップS611)。すなわち、ステップS164のタイミングで出力ポート3のD6ビットをオンにするのではなく、メイン処理であるステップS164において、RWM61の「ブロッカ信号及びホッパーモータ駆動信号データ(_PT_BLK_HPM )」にデータを記憶し、割込み処理において出力ポート3を出力する処理時(ステップS611)に、RWM61に記憶されたデータに基づいて出力している。
本実施形態では、ステップS164において、ブロッカ信号をオンにし、ステップS166において、ブロッカ状態信号をオンにする処理を行う。この場合、ステップS164とステップS166との間に割込みが入ると、一方がオン、他方がオフの状態になってしまう。具体的には、途中で入った割込み処理により、ブロッカ45に対してはオンを出力するのにもかかわらず、投入可表示LED73bにはオンを出力しない(非点灯)という不整合が生じることとなる。つまり、そのような状態を避け、双方の値を一気に更新するために、割込み処理を禁止することにより、遊技者に混乱を与えないように制御することを可能としている。なお、本実施形態でステップS164、S165、S166の順で処理を実行しているが、これらの順序は本実施形態と同様の処理順序ではなくてもよい。たとえば、ステップSS166、S165、S164の順序でもよい。
なお、この図42におけるメダル1枚の加算処理は、メダルの手入れベット時、リプレイの表示に基づく自動ベット時、及びベットスイッチ40の操作に基づく貯留ベット時に、共通して用いられる処理である。このように、実行するベット処理が異なる場合であっても、共通する処理(プログラム)を用いることにより、プログラム容量を削減することができる。
先ず、ステップS171では、メイン制御基板60は、ベットされたメダルの読み込みを行う(S_PLAYM_READ)。次のステップS172では、読み込んだベットメダル枚数に「1」を加算する処理(「+1」)を行う。そして、その演算結果をCレジスタに記憶する。たとえば、それまでのベットメダル枚数が「0」枚であったときは、「1」を加算することにより、
Cレジスタ値=00000001B
となる。
たとえば、読み込んだベットメダル枚数データ(_NB_PLAY_MEDAL)が「0」であったときは、
_NB_PLAY_MEDAL=0
Aレジスタ値=00000000B
Aレジスタ値=00000001B(「1」加算後)
_NB_PLAY_MEDAL=1
となる。
この処理は、Aレジスタの値が「0」となるように演算(たとえば、Aレジスタ値とAレジスタ値との排他的論理和を演算)し、演算後のAレジスタ値を獲得枚数表示データに記憶(更新)する処理を実行する。
なお、獲得数表示LED72を実際に表示する処理は、割込み処理でのLED表示制御(ステップS606)にて行われる。
先ず、Aレジスタの値に「1」を加算する。加算前のAレジスタ値は、ステップS175の処理により「0」であるため、
Aレジスタ値(加算前):00000000B
Aレジスタ値(加算後):00000001B
となる。
次に、Aレジスタ値を右に一桁シフトする。本シフト処理は、単に右シフトを行うだけでなく、D0ビット目の値をD7にする循環的なシフト命令であるため、ローテートシフトとも呼ばれる。この処理により、
Aレジスタ値(シフト前):00000001B
Aレジスタ値(シフト後):10000000B
となる。
先ず、Cレジスタ値から「1」を減算する。Cレジスタ値は、上記のように、「1」であるので、
Cレジスタ値(演算前):00000001B
Cレジスタ値(演算後):00000000B
となる。
そして、Cレジスタ値が「0」でないときは、ステップS177で「No」となり、「0」であるときは「Yes」となる。
実際に投入枚数表示LED信号データを用いて点灯制御を実行するのは、後述する割込み処理にて実行される。
ステップS178の処理は、具体的には、以下の通りである。
先ず、Aレジスタ値を、投入枚数表示LED信号データ(_PT_MEDAL_LED )に記憶する。したがって、
投入表示LED信号データ:10000000B
となる。
ステップS172では、
Cレジスタ値=00000010B
となる。
また、ステップS176では、
Aレジスタ値(加算前):00000000B
Aレジスタ値(加算後):00000001B
となる。
さらに、
Aレジスタ値(シフト前):00000001B
Aレジスタ値(シフト後):10000000B
となる。
Cレジスタ値(演算前):00000010B
Cレジスタ値(演算後):00000001B
となる。
したがって、Cレジスタ値≠「0」であるので、ステップS176に戻る。
そして、ステップS176では、
Aレジスタ値(加算前):10000000B
Aレジスタ値(加算後):10000001B
となる。
さらに、
Aレジスタ値(シフト前):10000001B
Aレジスタ値(シフト後):11000000B
となる。
Cレジスタ値(演算前):00000001B
Cレジスタ値(演算後):00000000B
となる。
そして、Cレジスタ値=「0」であるので、ステップS177で「Yes」となり、ステップS178に進む。
これにより、ステップS178では、
投入枚数表示LED信号データ:11000000B
となる。
このようにして、レジスタ(Cレジスタ、Aレジスタ)とシフト処理を用いることで、少ないプログラム処理(簡素なプログラム)で対応したデータに投入枚数表示LED信号データを記憶することができる。
メダル限界枚数とは、当該遊技においてベット可能なメダル枚数の最大値(又はその遊技でベットしなければいけないメダル枚数)を意味する。具体的には、本実施形態ではベット可能な最大メダル枚数が遊技状態で異なっているので、その遊技状態でベット可能な最大メダル枚数を意味する。特に本実施形態では、通常遊技では、最大3枚のメダルがベット可能であり、1BB遊技中では、最大で2枚のメダルをベット可能である。よって、1BB遊技中を除くメダル限界枚数は3枚となり、1BB遊技中のメダル限界枚数は2枚となる。
そして、次のステップS181において、メイン制御基板60は、ベット枚数が限界枚数であるか否かを判断する。具体的には、メダル限界枚数(Aレジスタの値)からベット枚数(Cレジスタの値)を減算することにより、「0」であればベット枚数が限界枚数であると判断する。ベット枚数が限界枚数でないと判断したときは本フローチャートによる処理を終了し、限界枚数であると判断したときはステップS182に進む。ステップS182では、メダル限界フラグをセットする。ここでは、メダル管理フラグ(_FL_MEDAL_STS )のD7ビットを「1」にする処理を実行する。そして本フローチャートによる処理を終了する。
次のステップS202では、作動状態フラグ(_FL_ACTION)の値を読み込む。
一方、ステップS204に進むと、メダルの限界枚数として、Cレジスタに「2」を記憶する。
先ず、ステップS411では、メイン制御基板60は、設定キースイッチ52の信号がオンであるか否かを判断する。ここでは、入力ポート1の立ち上がりデータ(アドレス「F00B」)において、設定キースイッチ52の立ち上がりデータ(D3ビット)がオン(「1」)であるか否かを判断する。オンであるときはステップS412に進み、オンでないと判断したときはステップS421に進む。すなわち、メダル投入待ち状態において、設定キースイッチ52がオンにされると(設定キー挿入口から設定キーが挿入されると)、設定確認モードとなり、ステップS412〜ステップS420の処理が実行される。設定確認モードは、現設定値を確認(管理者が目視にて確認)するモードであり、設定値の変更はできない。
次のステップS413では、メイン制御基板60は、設定値表示開始時の出力要求をセットする。そして、次のステップS414で、サブ制御基板80に対して送信する、設定値表示開始時の制御コマンドデータをセットする。
次のステップS420では、メイン制御基板60は、ブロッカをオンにする処理(MS_BLOCKER_ON ;図41)を行う。次にステップS421に進み、メイン制御基板60は、遊技待機表示時間が、ステップS81(図37)でセットした「26846」割込み(約60秒)を経過したか否かを判断する。
つまり、本実施形態では、所定時間、遊技が行われなかった場合には、獲得数表示LED72の表示をクリアするが、リプレイ表示LED73a、貯留数表示LED71、投入表示LED73e〜73gはクリアしないように構成している。これにより、ベットされていること、再遊技が可能なこと、又は精算可能な貯留枚数は、表示され続けているため、遊技者が一旦離席しようとしたときに、他の遊技者やホール関係者に対してその遊技者が遊技を終了したとは感じさせないことが可能となる。これにより、遊技者が不利益を被ることを少なくすることができる。
これにより、たとえば、リール31の回転中や、全リール31の停止時における役の非入賞時(役の当選を有無を問わない)には、獲得数表示LED72には「00」が表示された状態である。また、たとえば全リール31の停止時にベル01が入賞したとき(通常遊技中)は、獲得数表示LED72の表示が「00」から「08」となる。
なお、上記の制御は一例であるので、たとえば、リール31の回転中、全リール31の停止時における役の非入賞時、メダル投入時には、獲得数表示LED72には何も表示しないようにしてもよい。
図45において、ステップS211では、メイン制御基板60は、ブロッカ信号がオンであるか否かを検知する。ブロッカ信号がオンであるときはステップS212に進み、ブロッカ信号がオンでないときはステップS213に進む。ここで、「ブロッカ信号がオン」であるというのは、ブロッカ45によりメダル通路が形成されている場合に相当する。本実施形態では、メダル管理フラグ(_FL_MEDAL_STS )のD2ビットのデータがオンであるか否かを検知する。
次にステップS215に進み、メイン制御基板60は、操作受付けが可能であるか否かを判断する。可能であると判断したときはステップS216に進み、可能でないと判断したときは本フローチャートによる処理を終了し、メイン処理に戻る。
ステップS216では、ベットスイッチ信号及び精算スイッチ信号の確認要求をセットする。ここでは、入力ポート0の立ち上がりデータ(アドレス「F009」)を読み込む。
具体的には、たとえば読み込んだ入力ポート0の立ち上がりデータと、「00000111B」(定義データ)とをAND演算し、D3〜D7ビットをクリアする。そして、演算結果が「0」であるか否かを判断する。
演算結果が「0」であるときは、いずれの信号の立ち上がりもないと判断し(すなわち、1ベットスイッチ40a、3ベットスイッチ40b及び精算スイッチ46のいずれも操作の変化がないと判断し)、本フローチャートによる処理を終了してメイン処理に戻る。
なお、スタートスイッチ41に基づく処理(たとえば役抽選処理等)は、メイン処理で実行され、精算処理や貯留ベット処理もメイン処理で実行されることから、たとえば精算処理中にスタートスイッチ41に基づく処理が実行されないように構成されている。
そして、次のステップS220で、メイン制御基板60は、ステップS219での確認に基づき、精算スイッチ46信号の立ち上がりがあるか否かを判断する。ここでの処理は、入力ポート0の立ち上がりデータにおいて、D0ビットが「0」であるときは精算スイッチ43信号の立ち上がりがないと判断し、D0ビットが「1」であるときは、精算スイッチ43信号の立ち上がりがあると判断する。
したがって、ベットスイッチ40や精算スイッチ43よりも、物理的なメダルの投入を優先的にチェックするので、メダルの飲み込みを防止することができる。
この理由の1つとして、本実施形態では貯留ベット処理を実行するためのスイッチとして1ベットスイッチ40a、3ベットスイッチ40bの2つのスイッチを備えているのに対し、精算処理を実行するためのスイッチとしては精算スイッチ46の1つしか備えていない。そのため、入力ポート0のD0ビット(特定ビット)の立ち上がりデータがオンか否かを判断するだけで、精算処理又は貯留ベット処理の判断が可能となる。換言すると、「D1ビット又はD2ビットがオン?」と判定するより処理が簡素化され、プログラム容量が削減される。
図46において、ステップS231では、メイン制御基板60は、スタートスイッチ41の受付け許可フラグ(メダル管理フラグのD0ビット)をクリアする。
次にステップS232に進み、メイン制御基板60は、投入センサ1(44a)信号に係るデータがオンであるか否かを判断する。
ステップS237では、メイン制御基板60は、投入センサ1の通過チェック時間が経過したか否かを判断する。すなわち、ステップS233でセットした時間が所定時間を経過したか否かを判断する。通過チェック時間を経過したと判断したときはステップS248に進み、通過チェック時間を経過していないと判断したときはステップS234に戻る。
また、当該カウンタの値が「+4」となるのは、通路センサ43aを通過したメダルが投入センサ1、2を通過する前に滞留している場合が挙げられる。
次のステップS254では、貯留枚数の読み込みを実行する(S_CREDIT_READ :図40)。
「現在のベット枚数」+「現在の貯留枚数」−49=「メダル限界枚数」
という式が成立するか否かを演算する。
ここで、「現在のベット枚数」とは、現在通過したメダルを加算する前のメダル枚数を指す。たとえば、現在のベット数が「2」であり、現在の貯留数が「50」であるとき、メダル限界枚数は「3」となり、この式が成立するので、現在通過したメダルの投入後は、その後のメダル投入は不可能であると判断する。
そして、ブロッカ信号がオンであるときは、投入センサ1及び2を通過するメダル通路を形成させ、オフであるときは、メダル投入口43から投入されたメダルを払出し口から返却するメダル通路を形成する。
次のステップS260では、メイン制御基板60は、現時点でメダルのベット枚数が限界枚数(上限枚数)であるか否かを判断する。ベット枚数が限界値であると判断したときはステップS262に進み、貯留(クレジット)枚数の加算処理(MS_CREDIT_ADD :図49)を実行する。これに対し、ベット枚数が限界枚数でないと判断したときはステップS261に進み、メダル1枚のベット加算処理を行う(MS_MEDAL_INC:図42)。
そしてステップS276に進み、メイン制御基板60は、投入センサ2の異常入力の検出時間をセットする。
ステップS276で投入センサ異常入力の検出時間をセットすると、ステップS277に進み、ステップS273で設定した割込み禁止の解除、すなわち割込みを許可する。そして、本フローチャートによる処理を終了する。
すなわち、ブロッカ信号をオフにする処理、及びブロッカ状態信号をオフにする処理との間に割込みが入ると、一方がオフ、他方がオンの状態になってしまうが、そのような状態を避け、双方の値を一気に更新するために、割込み処理を禁止している。
ステップS274でブロッカ信号をオフにした後、ステップS276の処理が実行される前に割込み処理が実行されると、後述する図64のステップS607において入力ポート読込み処理が行われ、投入センサ2がメダルを検知したときはエラーを検出してしまう。そこで、ステップS276の処理の実行後に、ステップS277で割込み処理を許可している。
ステップS278では、貯留枚数の読み込みを実行する(S_CREDIT_READ ;図40)。ここでは、貯留枚数表示データ(_NB_CREDIT_LED)を読み込み、その値をAレジスタに記憶する処理を実行する。
次のステップS279では、貯留枚数に「1」を加算する処理(「+1」)を行う。この処理は、Aレジスタ値に「1」を加算する処理である。次のステップS280では、貯留枚数データを保存、すなわち演算後のAレジスタ値を貯留枚数表示データ(_NB_CREDIT_LED)に記憶する。そして、本フローチャートによる処理を終了する。なお、ステップS280では、貯留枚数データを10進数データに変換した値を貯留枚数表示データとして保存する。
先ず、ステップS281において、メイン制御基板60は、メダル管理フラグのD7ビットを読み込むことにより、メダル限界フラグがオン(「1」)であるか否かを判断する。メダル限界フラグがオンであるときは、ベット枚数が既に最大枚数であることを意味するので、本フローチャートによるベット処理を終了する。すなわち、図45のステップS220においてベットスイッチ40の操作を検知し、「MS_BET_IN 」の処理に移行したとしても、ベット枚数が既に最大枚数であるときは、貯留ベット処理を行わない。
Bレジスタ値=1
となる。
次にステップS283に進み、入力ポート0のD1ビットの立ち上がりを有するか否か(「1」であるか否か)、すなわち1ベットスイッチ40aが操作されたか否かを判断する。1ベットスイッチ40aが操作されたと判断したときはステップS288に進み、1ベットスイッチ40aが操作されていないと判断したときはステップS284に進む。
なお、ステップS283以前の処理(図45のステップS217、ステップS220)において、いずれかのベットスイッチ40の操作を検知しているので、ステップS283において「No」となったときは、3ベットスイッチ40bが操作されたことを意味する。
Cレジスタ値=3
となる。
次のステップS285では、(ベット)メダルの読み込み処理を行う(S_PLAYM_READ;図39)。この処理は、上述と同様に、メダルベット枚数データ(_NB_PLAY_MEDAL)の値を読み込み、読み込んだベットメダル枚数データをAレジスタに記憶する処理である。また、メダルベット枚数データのアドレス「F06B」をHLレジスタに記憶する。これにより、
HLレジスタ値=F06B(H)
となる。
上述したステップS282では、初期値として、ベット要求枚数を「1」(Bレジスタ値=「1」)にセットしたが、1ベットスイッチ40aの操作時にはそのままとし、3ベットスイッチ40bの操作時には、ステップS282でセットした「1」に代えて、ステップS286で演算した値を再セットするものである。
次のステップS289では、メイン制御基板60は、メダルの貯留の有無を判断する。ステップS288で記憶したAレジスタ値が「0」であるときはメダルの貯留なしと判断し、Aレジスタ値が「0」でないときはメダルの貯留ありと判断する。
そして、メダルの貯留なしと判断したときは本フローチャートによる処理を終了し、メダルの貯留有りと判断したときはステップS290に進む。
一方、ベット処理を実行する場合には、割込み処理によって生成・記憶した1ベットスイッチ40aに係る立ち上がりデータを、メイン処理内でクリアする処理を実行する。
ここで、1ベットスイッチ40aに係る立ち上がりデータをクリアしなかった場合には、再度割込み処理が実行されるまで、1ベットスイッチ40aに係る立ち上がりデータ「1」が維持される。
このような不都合を回避するために、メダルの貯留がある場合には、ベット処理の開始前に、1ベットスイッチ40aに係る立ち上がりデータをクリアしている。
3ベットスイッチ40bの操作に基づき3枚が貯留ベットされたときは、その後、ステップS296のメダル1枚加算において、メダル限界フラグがセットされる(図42のステップS182)。
これにより、仮に、上記と同様に、次に割込み処理が実行されるまで、3ベットスイッチ40b信号の立ち上がりデータ「1」が維持され、図45のメダル管理(MS_MEDAL_CHK)からステップS217で「Yes」となり、図50の貯留ベット処理(MS_BET_IN )が再度実行されると、ステップS281で「Yes」となり、貯留ベット処理は実行されないからである。
この状態において、3ベットスイッチ40b信号の立ち上がりデータがクリアされておらず、次の割込み処理が実行される前に、再度、貯留ベット処理が実行されると、ステップS281では、「No」となるが、ステップS289で「No」となるので、ステップS290以降の処理が実行されることはない。
このため、3ベットスイッチ40bに係る立ち上がりデータのクリアは、必ずしも必要でない(少なくとも1ベットスイッチ40aに係る立ち上がりデータをクリアすればよい)。
そして、メダル貯留枚数がベット要求枚数以上であると判断したときはステップS294に進み、メダル貯留枚数がベット要求枚数以上でないと判断したときはステップS293に進む。
一方、ステップS287においてたとえばベット要求枚数として「3」がセットされ、ステップS292で「Yes」であるときは、ベット要求枚数「3」がベット加算枚数とされ、その値がBレジスタに記憶される(Bレジスタ値=「00000011B」)。
また、ステップS287においてベット要求枚数として「3」がセットされたが、貯留枚数が「2」であるときは、ステップS292で「No」となり、ステップS293で「2」がベット加算枚数とされ、その値がBレジスタに記憶される(Bレジスタ値=「00000010B」)。
このように、ベット加算枚数(ベット要求枚数)とは、ベットスイッチ40が操作されたときに演算結果に基づいて実際にベットされる枚数を指す。
次にステップS295に進み、制御コマンドセット1を実行する。ここでの処理は、制御コマンドバッファに制御コマンドデータ(DEレジスタ値)を書き込む処理である。
次のステップS296では、メダル1枚の加算(ベット)処理を行う(MS_MEDAL_INC;図42)。このメダル1枚加算処理が実行されると、メダルベット枚数データ「_NB_PLAY_MEDAL」の値に「1」を加算する処理が行われる。
そして、演算後のBレジスタ値が「0」であると判断したときは要求枚数のベットが終了したと判断し、演算後のBレジスタ値が「0」でないと判断したときは要求枚数のベットが終了していないと判断する。
要求枚数のベットが終了したと判断したときはステップS302に進み、終了していないと判断したときはステップSステップS299に進む。
上記の処理において、ステップS299でブロッカ45をオフにするのは、メダル1枚加算処理を繰り返すときに、待ち処理を設けているので、この間にメダルが手入れ投入されてしまい、メダルの飲み込みが発生してしまうことを避けるためである。
これにより、2枚以上の貯留ベット処理を実行するときは、1枚のベット処理の後、ウェイト時間を隔てて次の1枚のベット処理が実行される。したがって、3ベットスイッチ40bに基づいて3枚をベットするときに、一瞬で3枚がベットされてしまう(一瞬で投入表示LED73e〜73gが点灯してしまう)ことをなくすことができる。
本実施形態では、1枚目のベット処理(1枚投入表示LED73e点灯)→約100msのウェイト処理→2枚目のベット処理(2枚投入表示LED73f点灯)→約100msのウェイト処理→3枚目のベット処理(3枚投入表示LED73g点灯)となる。
なお、2枚以上をベットするときに限らず、1枚ベットするときにも2バイト時間待ち処理を実行してもよい。この場合には、ステップS297とS298との間に、ステップS299、S300及びS301の処理を設けることが挙げられる。
これにより、貯留ベット処理の終了後は、ブロッカ45がオンとなるので、メダルの手入れ投入が可能となる。
具体的には、メダル1枚加算処理をベット加算枚数が「0」になるまで繰り返した後、ステップS302のブロッカオンの前又は後に、ステップS291における立ち上がりデータのクリア処理を実行してもよい。
本実施形態では、次のベット処理(再度、図50の処理)が実行される前までに、ベットスイッチ40(特に、1ベットスイッチ40a)の立ち上がりデータのクリア処理を実行すればよい。
ステップS305では、貯留枚数の読み込みを実行する(S_CREDIT_READ ;図40)。ここでの処理は、貯留枚数表示データ(_NB_CREDIT_LED)を読み込み、その値をAレジスタに記憶する処理である。
次のステップS306では、貯留枚数から「1」を減算する処理(「−1」)を行う。この処理は、図49のステップS279と逆の処理であり、Aレジスタ値から「1」を減算する。次のステップS307において、貯留枚数データを保存、すなわち演算後のAレジスタ値を貯留枚数表示データに記憶する。そして、本フローチャートによる処理を終了する。なお、ステップS307では、ステップS280と同様に、貯留枚数データを10進数データに変換した値を貯留枚数表示データとして保存する。
先ず、ステップS311では、メイン制御基板60は、貯留枚数の読み込み処理(S_CREDIT_READ ;図40)を行う。次のステップS312では、メイン制御基板60は、(ベット)メダルの読み込み処理(S_PLAYM_READ;図39)を行う。
ステップS314においてリプレイ作動時でないときはステップS316に進み、リプレイ作動時であるときはステップS315に進む。
なお、本フローチャートに示すように、リプレイの作動による自動ベットを有するときであっても、その自動ベットを維持した状態で、貯留メダルの精算が可能である。
ステップS316において精算可能なメダルありと判断したときはステップS317以降の処理に進むが、精算可能なメダルなしと判断したときは、本フローチャートによる処理を終了する。
次に、ステップS318に進み、メイン制御基板60は、精算開始時の出力要求をセットし、次のステップS319では制御コマンドセット1を実行する。
次のステップS320及びステップS321の処理は、上述したステップS313及びステップS314の処理と同一である。
ステップS322では、ベットメダル(現在ベットされているメダル枚数)の読み込み処理(S_PLAYM_READ)(ステップS312と同じ)を行う。
ここで、ベットメダルありの場合には、ステップS327以降の処理を行うことによって、ベットメダルの精算処理を行う。これに対し、ベットメダルなしの場合には、ステップS324以降の処理を行うことによって、貯留メダル、すなわちクレジットされているメダルの精算処理を行う。
したがって、ベットメダル及び貯留メダルの双方を有する場合には、ベットメダルの精算を先に行う。
なお、精算表示LED73cを実際に点灯させる処理は、割込み処理でのLED表示制御(ステップS606)にて行う。
たとえば、現時点で3枚のメダルがベットされているときは、投入表示LED73e〜73gの3個全てが点灯状態にある。そして、この状態でステップS328に進んだときは、3枚投入表示LED73gのみを消灯する(1枚投入表示LED73e及び2枚投入表示LED73fの点灯は維持)するように制御する。
さらにまた、1枚投入表示LED73eのみが点灯している状態でステップS328に進んだときは、1枚投入表示LED73eを消灯する(これにより、投入表示LED73e〜73gが全消灯となる)ように制御する。
投入枚数表示LED信号データ(1枚投入時):10000000B
投入枚数表示LED信号データ(2枚投入時):11000000B
投入枚数表示LED信号データ(3枚投入時):11100000B
となっている。
したがって、ステップS328の直前で、投入枚数表示LED信号データが3枚投入時の「11100000B」であるときは、2枚投入時の投入枚数表示LED信号データとなるように、演算を行って「11000000B」とする。
つまり、左にシフトする命令を出すことで、「11100000B」→「11000000B」となる(先述したローテート式ではない命令を用いている。)。
次のステップS331では、メダル枚数表示の出力要求をセットする。この処理は、1枚のメダルを減算した後のメダル枚数の表示の要求である。次のステップS332では、メイン制御基板60は、制御コマンドセット1を実行する。
さらに、次のステップS333では、ベットメダルの読み込みを行う(S_PLAYM_READ;図39)。このステップS333では、1枚減算後のメダル枚数が読み込まれる。
また、ステップS336及びステップS337では、精算を終了したことをサブ制御基板80に送信するため、制御コマンドデータのセットを行う。
図53において、まず、ステップS341では、メイン制御基板60は、現時点における貯留枚数の読み込み処理(S_CREDIT_READ ;図40)を行う。次にステップS342に進み、メイン制御基板60は、ステップS341で読み込んだ結果に基づいて、貯留メダル、すなわちクレジットの有無を判断する。貯留メダルあり(ゼロフラグが「0」)と判断したときはステップS343に進み、貯留メダルなし(ゼロフラグが「1」)と判断したときは本フローチャートによる処理を終了する。
図54のステップS351では、メイン制御基板60は、エラー未検出をセットする。すなわち、初期状態ではエラーを検出していない状態をセットする。次のステップS352では、メイン制御基板60は、メダル詰まりエラー表示要求をセットする。
なお、メダル詰まりエラーは、本実施形態では「HPエラー」と称し、このメダル詰まりエラーが発生したときは、獲得数表示LED72に「HP」と表示する処理を実行する。
ステップS361では、ホッパーモータ36の駆動信号をオフにするための処理を行う。具体的には、上述したホッパモータ駆動信号データを「0」にすることにより、次の割込み処理時に出力ポート3のD7ビットが「0」となる。そして、次のステップS362では、払出しセンサ1の検出時間(たとえば「27」割り込み、約60ms)をセットし、検出時間の計時を開始する。次にステップS363に進み、メイン制御基板60は、払出しセンサ1信号に係るデータがオンであるか否かを判断する。オンであると判断したときはステップS355に進み、オンでないと判断したときはステップS364に進む。
一方、ステップS364において払出しセンサ1の検出時間が所定時間を経過していないと判断したときはステップS363に戻る。
ステップS367では、メイン制御基板60は、払出しセンサ1信号に係るデータがオンであるか否かを判断する。オンであると判断されたときはステップS368に進み、オンでないと判断されたときはステップSステップS357に進む。
ステップS369では、メイン制御基板60は、払出しセンサ2の検出時間をセットする。次に、図55のステップS370に進み、メイン制御基板60は、メダル詰まりを検出したか否かを判断する。メダル詰まりを検出したと判断したときはステップS352に進み、検出していないと判断したときはステップS371に進む。
ステップS372では、メイン制御基板60は、メダル払出しが無効であるか否かを判断する。無効であると判断したときはステップS357に進み、無効でないと判断したときはステップS373に進む。ステップS373では、メイン制御基板60は、払出しセンサ1信号に係るデータがオフであるか否かを判断する。オフであると判断したときはステップS374に進み、オフでないと判断したときはステップS370に戻る。
これに対し、上述した「復帰不可能エラー」時には、図56の処理は行われない。復帰不可能エラーの発生時には、上述した図35の処理が行われる(割込みが禁止される)。
次に、ステップS383に進み、ホッパーモータ(36)駆動信号をオフにする。具体的には、ホッパモータ駆動信号データを「0」にする。これにより、ホッパーモータ36が駆動中であるときは、次の割込み処理からその駆動が停止する。
次のステップS387では、獲得数表示LED72にエラー情報を表示する処理を行う。具体的には、図56が実行される前に記憶されたDレジスタの値を記憶する。たとえばステップS381において、保存したエラーがCPエラーであるときは、獲得数表示LED72に「CP」と表示するための獲得枚数表示データ値を記憶する。
なお、エラー情報のLED表示は、後述する割込み処理(ステップS606)によって行われる。
ステップS394では、払出しセンサ37a及び37bの検査データをセットする。この処理は、払出しセンサ37a及び37bに係る異常を検知したか否かを判断するための検査データをセットする処理である。
ステップS396では、投入センサ44a及び44b並びに通路センサ43aの検査データをセットする。この処理は、これらのセンサに係る異常であるか否かを判断するための検査データをセットする処理である。
次にステップS398に進み、ステップS397のエラーチェック結果に基づいて、エラー要因が除去されたか否かを判断する。除去されたと判断したときはステップS399に進み、除去されていないと判断したときはステップS390に戻る。ステップS399では、ステップS381でRWM61に保存したエラー番号データをクリアする。次にステップS400に進み、ステップS386で退避した(Bレジスタに一時記憶していた)獲得枚数を、RWM61の所定の記憶領域である獲得枚数表示データに復帰する。したがって、当該処理の以降に実行される割込み処理により、獲得数表示LED72の表示内容がエラー発生前に戻る。
ステップS431では、内蔵乱数をMPUのレジスタ(乱数ソフトラッチレジスタ)に記憶する。ここでは、乱数のラッチ(取得)を行うものであり、取得した乱数が当選役に相当する乱数であるか否かを判定するのは、図36のステップS60である。
次のステップS432では、スタートスイッチ受付け許可フラグをクリアする。すなわち、メダル管理フラグのD0ビットをクリアする(「0」にする)。
次にステップS433に進み、設定変更許可フラグをクリアする。この処理では、メダル管理フラグのD6ビットを「1」にする。これにより、設定変更が不可となる。
次にステップS437に進み、ステップS435で読み込んだベットメダル枚数(Aレジスタ値)をEレジスタにセットする。
次にステップS439に進み、メイン制御基板60は、RWM61に記憶されている設定値(アドレス「F000」の設定値データ)が正常範囲(1〜6)であるか否かを判断する。正常範囲であると判断したときはステップS440に進み、正常範囲でないと判断したときはステップS445に進んで復帰不可能エラー処理(E6エラー)を実行する。
このように処理するのは、図36において、ステップS59のスタートスイッチ受付け処理後に、ステップS60において役抽選処理(出玉にかかわる抽選)を行うので、設定値が正常範囲外(例えば設定「7」)であると、正しい抽選ができないためである。たとえば設定値が「7」等、「1」〜「6」の範囲外の値であったときは、想定外の抽選テーブルを参照してしまったり、想定外の値(当選確率)で役の抽選等を行うおそれがあるためである。
ステップS531では、最小遊技期間が経過したか否かを判断する。本実施形態では、最小遊技時間(リール31の回転開始時から、次回遊技でリール31の回転を開始するまでの最小時間)として、約4.1秒に設定されている。ここでは、RWM61に記憶された最小遊技時間(_TM2_GAME )の値を読み込み、Aレジスタに記憶し、Aレジスタに記憶した値が「0」でないか否か(ゼロフラグが「1」でないか否か)を判断する。「0」でない(ゼロフラグが「1」でない)とき、「No」と判断する。
次のステップS534における条件装置情報出力ビットセットでは、HレジスタのD7ビットを「1」に設定し、LレジスタのD6ビットを「1」に設定する処理を行う。
本実施形態では、条件装置情報の上位2ビット中、D7ビットが「1」であるときは、役物条件装置情報であることを指し、D6ビットが「1」であるときは、入賞及びリプレイ条件装置情報を指すように設定している。
次にステップS536に進み、条件装置情報出力時間を保存する。この処理は、RWM61の条件装置出力時間(_TM1_COND_OUT )に「25」を記憶する処理である。詳細は後述するが、本実施形態では、「24×2.235ms=53.64ms」の間、役物条件装置情報(_NB_CNDINF_B)と入賞及びリプレイ条件装置情報(_NB_CNDINF_N)とを外部に出力する。ここでセットした条件装置出力時間は、次回割込み処理から、後述するステップS605において「1」ずつ減算される。
まず、ステップS591では、メダル払出し枚数データを取得する。ステップS66における表示判定に基づいて、入賞した役(図柄の組合せ)を特定することができるので、その図柄の組合せに対応するメダル払出し枚数を、データテーブル等から読み取る。
そして、本フローチャートによる処理を終了する。
まず、ステップS451では、メダル払出し開始時の出力要求をセットする。この処理は、獲得(払出し)枚数を示すコマンドを所定のレジスタに記憶する処理である。次のステップS452では、制御コマンドセット1(S_CMD_SET )を実行する。この処理は、RWM61のコマンドバッファにコマンドを記憶する処理である。
次にステップS453に進み、メダル枚数セット処理を実行する。この処理は、以下の2つに分けられる。この処理の1つ目として、Dレジスタに、メダル払出し枚数データ(_NB_PAY_MEDAL )の値を記憶する。2つ目として、Eレジスタに、メダルベット枚数データ(_NB_PLAY_MEDAL)の値を記憶する。次のステップS454では、作動フラグをチェックする。この処理は、作動状態フラグ(_FL_ACTION)の各ビットのオン/オフを判断する処理である。
ステップS456では、BB作動時(この例では1BB遊技中)の獲得可能枚数データを取得する。この処理は、RWM61の1BB作動時の獲得可能枚数(_CT_BB1_PAY )のデータをAレジスタに記憶する処理である。そして、次のステップS457では、BB作動時の獲得枚数上限値に到達したか否かを判断する。ここでは、Aレジスタに記憶した値から、Dレジスタの情報(メダル払出し枚数データ)を減算し、その演算結果をAレジスタに記憶し、Aレジスタに記憶した値がマイナスでない(キャリーフラグ≠「1」)か否かを判断する。マイナスでないと判断したときは、「No」と判断される。
マイナスであると判断されるとステップS458に進み、マイナスでないと判断されるとステップS459に進む。
ステップS458では、BB作動時の獲得可能枚数をクリアする。この処理は、Aレジスタ値とAレジスタ値とを「XOR」演算し、その演算結果をAレジスタに記憶する処理である。この演算処理により、Aレジスタ値は必ず「0」となる。そしてステップS459に進む。
ステップS459では、BB作動時の獲得可能枚数を更新する。具体的には、Aレジスタ値をRWM61の1BB作動時の獲得可能枚数(_CT_BB1_PAY )に記憶する。そして、ステップS460に進む。
まず、ステップS455において、作動状態フラグのD1ビットが「1」であるか否かにより、2BBの作動状態フラグを判断する。
2BB作動時は、ステップS456において、2BB作動時(2BB遊技中)の獲得可能枚数データを取得する(RWM61の2BB作動時の獲得可能枚数(_CT_BB2_PAY )のデータをAレジスタに記憶する)。メダル払出し後の値がマイナスでないか否かを判断し、マイナスであるときは、2BB作動時の獲得可能枚数をクリアする。また、Aレジスタ値をRWM61の2BB作動時の獲得可能枚数(_CT_BB2_PAY )に記憶することで、2BB作動時の獲得可能枚数を更新する。
次のステップS461では、リプレイが表示されたか否かを判断する。この処理は、図柄組合せ表示フラグ(_FL_WIN )のD0ビットが「1」であるか否かを判断する処理である。そして、リプレイ表示時であると判断したときはステップS463に進み、リプレイ表示時でないと判断したときはステップS462に進む。
以上の処理により、リプレイ入賞時には、Aレジスタ値は、ステップS453でセットしたメダルベット枚数データ(_NB_PLAY_MEDAL)値となり、リプレイの入賞時でないとき(すなわち小役入賞時)には、Aレジスタ値は、ステップS462でセットしたメダル払出し枚数データ(_NB_PAY_MEDAL )値となる。
次にステップS463に進み、Aレジスタに記憶されたメダル枚数を2倍にする処理を実行する。2倍にする理由は、上述した通りである。この処理は、Aレジスタ値とAレジスタ値とを加算し、加算後の値をAレジスタに記憶する処理である。また、HLレジスタに、メダル払出し信号出力回数(_CT_MEDAL_OUT )のアドレス(F070)を記憶する。
以上の処理により、メダル払出し信号出力回数の値の更新前後で割込み処理が禁止される。
この割込み禁止により、メダル払出し信号の更新途中に割込み処理が実行され、メダル払出し信号出力回数を更新する処理が実行されてしまうことを防止することができる。すなわち、メダル払出し信号出力回数を更新する処理の終了後、割込み処理を許可してメダル払出し信号の更新を許可するものである。
ステップS468では、貯留枚数読み込み(S_CREDIT_READ ;図40)を行う。次にステップS469に進み、メダル貯留枚数が限界値となっているか否かを判断する。貯留枚数が「50」であるときは貯留枚数が限界値になっていると判断してステップS473に進み、貯留枚数が限界になっていないと判断したときはステップS470に進む。
ステップS469からステップS473に進むと、メダル1枚払出し処理(MS_1MEDAL_PAY ;図54)を実行する。以上の処理により、貯留枚数が限界値になるまでは貯留枚数を加算し、貯留枚数が限界であるときは、実際のメダルをホッパーから払い出す処理を実行する。
次のステップS475では、メダル払出し枚数データ(_NB_PAY_MEDAL )から「1」を減算する処理を行う。なお、ステップS475では、アドレス「F06C」のメダル払出し枚数データのみを更新し、アドレス「F06D」のメダル払出し枚数データバッファの値については更新しない。
次にステップS476に進み、メダル払出しが終了したか否かを判断する。この処理は、更新後のメダル払出し枚数データ(_NB_PAY_MEDAL )が「0」となったか否かを判断する。メダル払出し枚数が「0」であると判断したときはステップS477に進み、メダル払出し枚数が「0」でないと判断したときはステップS468に進む。
そして、本実施形態のように、貯留枚数を加算するときに、1枚加算ごとに2バイト時間待ち処理を実行することで、サブ制御基板80側から出力する払出し音(「プルルル・・・」)と、貯留枚数のカウントアップとを同調させることが可能となる。
これは、実際のメダルを1枚払い出すためには、ホッパーモータ36を駆動して払い出すため、上述したように、1枚の払出しに約100msの時間を要するためである。これにより、メダル1枚あたりの払出し時間が約100msとなるので、実際のメダルを払い出すときには、2バイト時間待ち処理を設けていない。よって、実際にメダルを払い出すときには、2バイト時間待ち処理を設けることなく、サブ制御基板80側から出力する払出し音と同調させることができる。
ステップS541では、条件装置のフラグをクリアする処理を行う。この処理は、特別役の条件装置以外をクリアする処理であり、特別役に対応する図柄の組合せが有効ラインに停止したと判断したときは特別役の条件装置についてもクリアする処理を実行する。次のステップS542では、リプレイ表示LEDの消灯処理を行う。この処理は、メダル管理フラグ(_FL_MEDAL_STS )のD3ビットを「0」にする処理に相当する。次にステップS543に進み、リプレイ作動フラグをクリアする。この処理は、作動状態フラグ(_FL_ACTION)のD0ビットを「0」にする処理である。
なお、図36において、特別役表示時の2バイト時間待ち処理は、ステップS70及び70で実行したが、これに限らず、遊技終了チェック処理において、ステップS541の前に行うこと等も可能である。
ステップS551では、作動状態フラグをチェックする。この処理は、作動状態フラグ(_FL_ACTION)の値をAレジスタに記憶する処理を実行する。さらに、Aレジスタに記憶した値を右に(一桁)ローテーションシフトする。具体的には、たとえばリプレイ作動時は、作動状態フラグ(_FL_ACTION)は、
Aレジスタ値=「00000001B」
となる。
さらに、右に一桁ローテーションすると、
Aレジスタ値=「00000000B」(キャリーフラグオン)
となる。
Aレジスタ値=「00011000B」
となる。
さらに、右に一桁ローテーションすると、
Aレジスタ値=「00001100B」(ゼロフラグオフ(≠「0」))
となる。
これに対し、1BBと2BBとの双方を備える場合には、ステップS552における判断枝を、「1BB作動時であるか否か」と「2BB作動時であるか否か」との双方を設けることが挙げられる。さらに、1BB作動時であるか否かの判断では、Aレジスタ値のD2ビットが「1」であるか否かを判断すればよい。また、2BB作動時であるか否かの判断では、Aレジスタ値のD0ビットが「1」であるか否かを判断すればよい。
ステップS553では、BB作動時の獲得枚数を取得する。作動中のBBが1BBであるときは、RWM61に記憶している1BB作動時の獲得可能枚数(_CT_BB1_PAY )の値をAレジスタに記憶する。なお、作動中のBBが2BBであるときは、RWM61に記憶している2BB作動時の獲得可能枚数(_CT_BB2_PAY )の値をAレジスタに記憶する。
ステップS561では、RWM61に記憶したRB作動時の遊技回数(_CT_BONUS_PLAY)から「1」を減算する。次のステップS562では、ステップS561で更新後のRB作動時の遊技回数が「0」であるか否か(ゼロフラグ=「1」であるか否か)を判断する。RB作動時の遊技回数が「0」であると判断したときはステップS566に進み、「0」でないと判断したときはステップS563に進む。
ステップS563では、メダル払出し枚数データバッファ(アドレス「F06D」の「_BF_PAY_MEDAL 」)の値が「0」であるか否かを判断する。この判断は、RB作動時の入賞回数の値を減算するか否かを判断するための処理であり、当該遊技における小役の入賞による払出しがあったか否かを判断している。すなわち、当該遊技で小役が入賞したとき(メダル払出しを有するとき)は、上述した図59(メダル払出し枚数更新処理)のステップS593において、「_BF_PAY_MEDAL 」にメダル払出し枚数が記憶されるので、このデータ値が「0」であるか否かを判断することで、当該遊技における小役の入賞による払出しがあるか否かを判断している。
ステップS564では、RWM61に記憶されたRB作動時の入賞回数(_CT_BONUS_WIN )から「1」を減算する。次にステップS565に進み、RBの作動が終了したか否かを判断する。ステップS565では、ステップS564において入賞回数から「1」を減算した結果、その値が「0」(ゼロフラグ=「1」)であるか否かを判断する。「0」であると判断したときはステップS566に進み、「0」でないと判断したときは本フローチャートによる処理を終了する。
次に、ステップS567に進み、RB作動終了時の待機時間をセットする。この処理は、BCレジスタに、待機時間に対応する値をセットする処理であり、本実施形態では、BCレジスタに「5」(約11ms)をセットする。より具体的には、Bレジスタ値=「0」(00000000B)、Cレジスタ値=「5」(00000101B)をセットする。そして、次のステップ5680で、2バイト時間待ち処理を実行する。2バイト時間待ち処理後、本フローチャートによる処理を終了する。
先ず、ステップS601の割込み処理に移行すると、ステップS602では、初期処理として、レジスタ値の退避及び重複割込みの禁止処理を行う。ここでは、メインループで使用しているメインCPU63のレジスタを割込み処理で使用するため、現在のレジスタ値をRWM61のスタック領域に退避する。さらに、割込み処理中に次の割込み処理が開始されないように、割込み禁止フラグをオンにする。このようにするのは、たとえば電源断処理の実行中に割込み処理の実行要求が行われるときがあるからである。
そして、電源断を検知したときはステップS619の電源断処理(IS_POWER_DOWN )に進み、電源断を検知していないと判断したときはステップS604に進む。
次のステップS605では、タイマー計測を行う。この処理は、メイン処理でセットした時間を減算等する処理である。具体的には、ステップS532でセットした最小遊技時間(_TM2_GAME )の減算処理や、ステップS536でセットした条件装置出力時間(_TM1_COND_OUT )の減算処理、さらには、ステップS237の処理で投入センサ1の所定時間を経過したか否か、ステップS531の処理で最小遊技時間(4.1秒)を経過したか否か等が挙げられる。
次に、ステップS606に進み、LED表示制御(IS_LED_OUT;図65)を行う。ここでは、スロットマシン10の状態に応じて、設定値、貯留枚数、獲得枚数、エラー表示内容(エラーコード)等を7セグLED(デジット1〜5)を用いて点灯する処理である。
次のステップS613では、制御コマンドの送信(IS_CMD_SET;図67)を行う。この処理は、たとえば出力要求セット及び制御コマンドセット1でセットされた制御コマンド(RWM61のコマンドバッファに記憶されている未送信の制御コマンド)をサブ制御基板80に送信する処理である。
具体的には、出力要求セット及び制御コマンドセット1において制御コマンドがコマンドバッファにセットされると、その時点以降の割込み処理(コマンドバッファが空の場合は、原則としては、その時点の次に到来する割込み処理)において、このステップS613によって制御コマンドがサブ制御基板80に送信される。
なお、試験機に対して送信する情報名として、作動状態に関する情報を試験信号、当選役に関する情報を条件装置情報と称しているが、作動状態に関する情報を第1の試験信号、当選役に関する情報を第2の試験信号と称してもよい。また、試験機に対して上記以外の他の情報を送信してもよい。たとえば、最適な停止操作態様(停止操作位置、停止操作順序)に関する情報(第3の試験信号と称す)を送信することが挙げられる。これにより、試験機側で出玉試験(シミュレーション試験とも呼ばれる)を行うことができる。
次にステップS617に進み、乱数更新処理を行う。次のステップS618では、ステップS602で退避したレジスタ値を復帰させ、次回割込みの許可を行う。具体的には、割込み処理開始時に記憶していたレジスタデータを復帰するとともに、次回の割込み処理を開始できるように、割込禁止フラグをオフにする。そして本フローチャートによる処理を終了する。
さらに、割込み処理ごとに、サブ制御基板80に未送信の制御コマンドがコマンドバッファに記憶されているときは、その送信処理が行われる。
復帰不可能エラーは、通常では起こり得ない重大なエラーであり、異常データに基づく処理(入力ポートからのデータに基づくRWM61のデータ更新や、サブ制御基板80への制御コマンドの送信)等を実行させないようにするために、割込み自体を禁止している。
さらに、復帰不可能エラーの発生時に、制御コマンドのバッファに未送信のコマンドが格納されていた場合は、当該コマンドをサブ制御基板80に送信しない。バッファに格納されている制御コマンドが正しくないおそれがあるからである。
先ず、ステップS621では、出力ポート0及び1がオフにされる。出力ポート0は、デジット信号に対応する出力ポートであり、出力ポート1は、セグメント信号に対応する出力ポートである。これらの出力ポート0及び1について、「00000000B」を出力することで、一旦、全LEDの出力を行わないようにする。これにより、LEDの表示を切り替える際に、一瞬でも異なるLEDが同時に点灯して見えてしまうこと(被って表示されてしまうこと)を防止している(残像防止)。
ステップS623では、LED表示要求カウンタが「0」であるか否かを判断する。すなわち、ステップS622で更新した後のLED表示要求カウンタが「0」であるか否かを判断する。「0」であると判断されたときはステップS624に進み、「0」でないと判断されたときはステップS625に進む。
この処理では、先ず、LED表示要求フラグの値をAレジスタに記憶する。LED表示要求フラグは、表示してもよいデジットがオン(「1」)、表示しないデジットがオフ(「0」)となっているフラグである。
たとえば、
LED表示要求カウンタの値:00001000B
LED表示要求フラグ値 :00001111B
AND演算後 :00001000B
となる。
あるいは、たとえば、
LED表示要求カウンタの値:00010000B
LED表示要求フラグ値 :00001111B
AND演算後 :00000000B
となる。
そして、上記AND演算の結果、「0」であるときはゼロフラグが「1」となる。
獲得枚数の下位桁の表示要求ありと判断したときはステップS635に進み、表示要求なしと判断したときはステップS631に進む。
獲得枚数の上位桁の表示要求ありと判断したときはステップS634に進み、表示要求なしと判断したときはステップS632に進む。
具体的には、貯留枚数の表示データが「08」、すなわち「0000/1000B」(なお、上位4ビットと下位4ビットとの間に「/」を表記する)であるときは、「1000/0000B」に変換する。また、たとえば貯留枚数が「41」、すなわち「0100/0001B」であるときは、「0001/0100B」に変換する。そして、ステップS635に進む。
たとえば、Aレジスタ値が「10000000B」であるときは、「00000000B」となる。
また、Aレジスタ値がたとえば「10101100B」であるときは、「00001100B」となる。
さらにまた、Aレジスタ値がたとえば「00010100B」であるときは、「00000100B」となる。
ここで記憶されるAレジスタ値が後述するオフセット値となる。
次のステップS637では、セグメントA〜Gの出力データを取得する。ここでは、LEDセグメントテーブルのアドレスにAレジスタ値(オフセット値)を加算することにより、セグメントデータを取得する。そして、取得したデータをHレジスタに記憶する。
また、Aレジスタ値がたとえば「00000100B」(オフセット値が「4」)であるときは、アドレス「1215」のセグメントデータ、すなわち「01100110B」を取得し、Hレジスタに記憶する。この結果、表示内容は「4」となる。
さらにまた、Aレジスタ値がたとえば「00001100B」(オフセット値が「C」)であるときは、アドレス「121D」のセグメントデータ、すなわち「00111001B」を取得し、Hレジスタに記憶する。この結果、表示内容は「C」となる。
そして、メダル管理フラグのデータを記憶したAレジスタ値と、LED表示要求カウンタの値を記憶したBレジスタ値とのAND演算を実行する。そして、AND演算の結果、「0」であるときは、セグメントPの表示要求なしと判断し、「0」でないときは、セグメントPの表示要求ありと判断する。
Aレジスタ値:00001101B
Bレジスタ値:00001000B
AND演算後:00001000B(Aレジスタ)
となり、表示要求ありとなる。
また、たとえば
Aレジスタ値:00000101B
Bレジスタ値:00001000B
AND演算後:00000000B(Aレジスタ)
となり、表示要求なしとなる。
ステップS639では、セグメントPの出力データをセットする。この処理は、Hレジスタ(ステップS637で記憶したデータ)のD7ビット、すなわち今回の割込み処理において表示要求のあるデジットのD7ビットを「1」にする処理である。
また、今回の割込み処理において表示要求のあるLEDがデジット4であり、そのセグメントPに対応するD7ビットが「1」となったときは、リプレイ表示LED73aとデジット4とが同時に点灯する。
さらにまた、今回の割込み処理において表示要求のあるLEDがデジット5であり、そのセグメントPに対応するD7ビットが「1」となったときは、精算表示LED73cとデジッ5とが同時に点灯する。
一方、復帰不可能エラーの際には、上述したように、0.128msごとに上位桁と下位桁との点灯切替えを繰り返すので、切替え周期は、割込み周期よりも早くなり、割込み処理におけるLED点灯輝度よりも輝度が高くなる。
先ず、ステップS651では、全出力ポート(0〜6)の出力をオフにする。次にステップS652に進み、電源断処理済みフラグをRWM61に記憶する。この処理は、正常な電源断処理が実行されたことを示すデータをRWM61に記憶する処理である。具体的には、アドレス「F01F」の「_FL_POWER_OFF 」に、「01」Hを記憶する。これにより、正常な電源断処理が行われるとステップS652を経由して電源断処理済みフラグとしてアドレス「F01F」に「01」Hが記憶されるが、それ以外の電源断の場合には電源断処理済みフラグとしてアドレス「F01F」に「01」Hは記憶されない。
そして、次のステップS655で、チェックサムの全範囲の算出が終了したか否かを判断し、終了していないと判断したときはステップS654に戻ってチェックサムの算出を継続する。一方、チェックサムの算出が終了したと判断したときはステップS656に進む。
先ず、ステップS661では、制御コマンドバッファのアドレスをセットする。メイン制御基板60からサブ制御基板80に送信する制御コマンドのデータは、RWM61内において、アドレスに対応付けられたバッファに記憶されている。また、どのアドレスの制御コマンドデータを読み込むかを指定する読み込みポインタを示すデータについても、アドレスに対応付けられてRWM61に記憶されている。このため、ステップS661では、制御コマンドバッファの先頭アドレスと、RWM61に記憶されている読み込みポインタを記憶しているアドレスを取得する。
次のステップS663では、送信対象となる制御コマンドバッファのアドレスをセットする。この処理は、制御コマンドバッファの先頭アドレスと、読み込みポインタとから、次に読み込みを行うRWM61の制御コマンドバッファのアドレスを算出する処理である。
次にステップS666に進み、ステップS665でセットしたアドレス(SCU3データレジスタ)に、第1制御コマンドデータを書き込む。これにより、その第1制御コマンドデータがサブ制御基板80に送信される。また、送信対象となる制御コマンドバッファのアドレスのデータを「+1」にする。これにより、第2制御コマンドデータが記憶されているアドレスがセットされる。
次のステップS668では、制御コマンドの送信が完了したか否かを判断する。ここでは、読み込みポインタのデータが奇数であるか否かを判断する。奇数であるときは、2回目の送信であることを示し、偶数であるときは、1回目の送信であることを示す。
このような処理を行うのは、本実施形態では、同一の制御コマンド(第1制御コマンド及び第2制御コマンド)を、2回続けて(2割込みで)サブ制御基板80に送信するためである。
ステップS669では、送信済みの制御コマンドデータをクリアする。すなわち、制御コマンドバッファに記憶されているデータを消去し、RWM61の領域を空にする。
次にステップS670に進み、読み込みポインタのデータを「+1」更新する。そして本フローチャートによる処理を終了する。
ステップS571では、試験信号の出力データをセットする。この処理は、作動状態フラグ(_FL_ACTION)に記憶されている情報をAレジスタに記憶する処理である。そして、次のステップS572において、試験信号を出力する。この処理は、Aレジスタに記憶した情報を出力ポート8に出力する処理である。これにより、出力ポート8から、作動状態フラグ(_FL_ACTION)に記憶された情報に基づいた情報が出力(送信)される。したがって、作動状態フラグの信号を試験信号として試験機に出力可能となる。
なお、図68の処理においては、上記のステップS571及びS572が作動状態フラグの情報の出力処理に相当し、以下のステップS573〜S579が条件装置情報の出力処理に相当する。
このように、本実施形態では、作動状態フラグに記憶された情報に基づいた情報を出力ポート8から出力する。しかし、これに限らず、たとえば作動状態フラグを有さず、複数のRWM61のアドレスからそれぞれ所定の情報(各アドレスにそれぞれ作動状態を示す一部の情報が記憶されているものとする)を取得し、レジスタを用いた演算処理によって作動状態フラグに相当する情報を作成(合成)し、その情報を試験信号として出力ポート8に書き込む(セットする)ような方法であってもよい。
上述したように、図58中、ステップS531で最小遊技時間(約4.1秒)を経過したと判断されると、ステップS536において、条件装置出力時間(_TM1_COND_OUT )に、「25」の値が記憶される。そして、この値は、一割込みごと(具体的には、図64のステップS605のタイマー計測処理時)に「1」ずつ減算されていく。したがって、「25」の値が記憶された後、「25」割込み後は、「0」となる。
次にステップS579に進み、Aレジスタに記憶されている情報を、出力ポート7に出力する。これにより、出力ポート7から、条件装置情報が出力(送信)される。そして本フローチャートによる処理を終了する。
また、ステップS574において、条件装置出力時間(_TM1_COND_OUT )の値が「0」であるときは、「No」と判断され、ステップS579に進む。この場合、Aレジスタ値は「0」であるので、条件装置情報として、「0」(00000000B)を出力することとなる。
なお、条件装置出力時間の初期値としては、図58のステップS536において「25」がセットされるが、図64のステップS605において「1」が減算されてからステップS616の試験信号・条件装置情報出力処理に進む。したがって、ステップS536において「25」がセットされた後、最初に図68のステップS574に進んだときは、条件装置出力時間値は「24」となっている。
さらに、条件装置情報を出力する場合において、ステップS576の判断で、条件装置出力時間(_TM1_COND_OUT )が「13」〜「24」(第1の期間とも称する)であるときは、ステップS577をスキップするので、出力する条件装置情報は、役物条件装置情報(_NB_CNDINF_B)となる。これに対し、ステップS576の判断で、条件装置出力時間(_TM1_COND_OUT )が「1」〜「12」(第2の期間とも称する)であるときは、ステップS577の処理を実行するので、出力する条件装置情報は、入賞及びリプレイ情報装置情報(_NB_CNDINF_N)となる。
そして、条件装置情報が更新されるのは、図58のステップS533である。よって、条件装置情報が更新されるのは、最小遊技時間(4.1秒)の経過後(ステップS531で「Yes」のとき)である。これにより、試験機側では、受信した「0」以外の条件装置情報に変化があったとき、「0」以外の条件装置情報を受信してから、次に変化のあった「0」以外の条件装置情報を受信するまでの時間を計測することで、最小遊技時間(4.1秒)が担保されているかどうかを判断することができる。したがって、最小遊技時間に関する情報を別途設けることなく、上記構成によって、条件装置情報を出力するだけで、最小遊技時間の計測を試験機側で行うことが可能となる。
図69は、ステップS572において、試験信号として出力される作動状態フラグの情報中、D3ビット(1BB)及びD4ビット(RB)のオン/オフ状態を示す図である。
1BB遊技が開始されると、作動状態フラグのD3(1BB)及びD4(RB)ビットは、「1」となるので、割込み処理により、試験信号として、D3ビット(1BB)及びD4ビット(RB)がオン(「1」)の情報が出力される。
ここで、図63のステップS567及びS568の間は、メイン処理が停止する。すなわち、操作スイッチを操作しても、その操作が受け付けられない期間となる。RBの作動状態フラグが「1」から「0」になった後、たとえば数秒間の2バイト時間待ち処理を実行したときは、遊技者は、操作スイッチの操作が付け付けられないこと、すなわちメイン処理が停止している(フリーズしている)ことを、体感的に感じ取ることができると考えられる。
一方、RBの作動状態フラグが「0」となっている時間を短くしすぎると、試験信号として試験機側に出力したときに、RBの作動状態フラグが「0」となっていることを正しく検知することができないおそれがある。これらのことを考慮して、本実施形態では、「5」割込み間(約11ms)に設定している。
なお、本実施形態では、「5」割込み間(約11ms)に設定したが、これに限らず、たとえば「2」割込み間(4.5ms程度)〜「25」割込み間(約56ms)程度であれば、上記と同様の効果を発揮できると考えられる。
図70の例では、1BB内部中に、「N」遊技目では当選番号「13」(ベルB4に当選)となり、次の「N+1」遊技目では当選番号「1」(リプレイに当選)となったときの条件装置情報の出力例を示す。なお、「N」遊技目では1BBは入賞しないものとする。
まず、1BB内部中であるときは、役物条件装置情報(_NB_CNDINF_B)のD0ビットは「1」となる。したがって、役物条件装置情報(_NB_CNDINF_B)は、「10000001B」となる。
また、「N」遊技目で当選番号「13」となったときは、入賞及びリプレイ条件装置情報(_NB_CNDINF_N)のD0〜D5ビットは、「001101」(=「13」)であるので、入賞及びリプレイ条件装置情報(_NB_CNDINF_N)は、「01001101B」となる。
そして、次遊技が開始され、「N+1」遊技目で役の抽選が行われ、当選番号「1」となった場合において、条件装置出力時間値が「24」〜「13」である間は、「N」遊技目と同様に、「10000001B」を出力し、条件装置出力時間値が「12」〜「1」である間は、「01000001B」を出力する。これにより、図70に示す信号波形となる。
ここで、「N」遊技目の役物条件装置情報の出力が開始された時(条件装置出力時間値が「24」のとき)から、「N+1」遊技目の役物条件装置情報の出力が開始された時(条件装置出力時間値が「24」のとき)までの間は、遊技が最短時間で消化されたときは、最小遊技時間、すなわち4.1秒(「1836」割込み)となる。したがって、上述したように、試験機側では、役物条件装置情報の出力が開始された時から、次遊技での役物条件装置情報の出力が開始された時までの時間を計測し、4.1秒を経過していれば、最小遊技時間を担保しているスロットマシン10であると判断することができる。
図71は、サブ制御基板80のプログラム開始処理及びサブ側のメイン処理を示すフローチャートである。
図71において、ステップS700で電源が投入され、サブ制御基板80のプログラムが開始されると、先ず、ステップS701において、サブ制御基板80は、割込み処理を禁止する。次のステップS702では、サブ制御基板80は、各種初期化処理を実行する。初期化処理としては、サブCPU83やRWM81の初期化が挙げられる。
チェックサムが一致すると判断したときはステップS704に進み、チェックサムが一致しないと判断したときはステップS705に進む。
まず、ステップS706では、サブ制御基板80は、実装されているウォッチドッグタイマをクリアする。次にステップS707に進み、ウォッチドッグタイマの動作処理(計測)を開始する。ウォッチドッグタイマは、サブCPU83の暴走判定用のパルスを出力するとともに、このパルスの出力数をカウントし続ける。そして、後述するようにウォッチドッグタイマがクリアされるまでにパルス数のカウント値(時間値)が所定値(たとえば「500ms」)となったときは、サブCPU83が暴走していると判定し、サブ制御基板80の処理を電源投入時の処理に移行する。
次のステップS709では、16ms毎処理(1フレーム毎処理)を行う。サブ制御基板80で実行する処理は、16ms毎に1回行う処理(16ms毎処理、又は1フレーム処理)と、16ms以内で行う1コマンド処理とを有する。そして、ステップS709では、これらの処理のうち、16ms毎処理を実行する。
16ms毎処理としては、画像表示装置23(液晶ディスプレイ)が正常に動作しているか否かの監視、スピーカ22の音源アンプが正常に動作しているか否かの監視、電源投入時間の計測、プッシュボタン24や十字キー25の操作に基づくレベルデータや立ち上がりデータ等の生成、エラー時間やリール31の駆動時間の計測等を実行する。
たとえば、第1系統コマンドとして、遊技の進行をスムーズに行うために必要なコマンド(役抽選結果を示すコマンド、エラー番号のコマンド、設定変更の開始のコマンド等)とし、第2系統コマンドとして、遊技の進行に直接影響を与えないコマンド(役抽選を行わないときのスタートスイッチ41が操作されたコマンド、リール31の停止制御を行わないときのストップスイッチ42が操作されたコマンド等の入力ポートに入力された情報)としている。
そのような場合、1コマンド処理では、第1系統コマンド→第2系統コマンドのように一連の順序でコマンド処理を実行している。
一方、1コマンド処理中以外で電断が生じたときは、通常復帰処理を行う。通常復帰処理では、サブCPU83及びRWM81を初期化し、サブ処理の最初から処理を実行する。
16msを経過していないと判断したときはステップS710に戻り、1コマンド処理を継続する。一方、ステップS711において16msを経過したと判断したときは、16msをカウントするカウンタ値をリセットし、ステップS706に戻り、ステップS707で開始したウォッチドッグタイマをクリアする。したがって、この時点で、カウントしていたウォッチドッグタイマのパルス数(時間)がクリアされる。
この記憶領域は、設定変更処理においても消去されない記憶領域である。これにより、サブ制御基板80の初期化時にメイン制御基板60から制御コマンドが送信された場合であっても、当該コマンドに基づく処理が正常に実行されるようになっている。
図72において、ステップS750で設定変更処理が開始されると、ステップS751で、割込み処理を禁止する。なお、メイン制御基板60からサブ制御基板80に送信される制御コマンドの割込み(2.235msごと)は禁止されない。また、制御コマンド受信処理は、制御コマンドの取りこぼし防止のため、割込み禁止としない。
次にステップS753に進み、サブ制御基板80は、RWM81の初期化を開始するアドレスを指定する。ここでは、初期化を行うアドレスの範囲を指定する。次にステップS754に進んで、当該範囲の初期化処理を実行する。
ステップS756では、ステップS752で停止したウォッチドッグタイマの停止を解除する。停止の解除とは、ウォッチドッグタイマが停止した途中から計時を開始することを採用する場合と、ウォッチドッグタイマが停止した途中からの計時ではなく、初期値から計時を開始する場合とが考えられる。
次のステップS757では、ステップS751で禁止した割込みを許可する。そして本フローチャートによる処理を終了する。
また、上記処理において、ウォッチドッグタイマを停止させてからRWM81の初期化処理に移行するので、初期化処理中にウォッチドッグタイマによる再起動処理が実行しないようにすることができる。
なお、本実施形態では、設定変更開始処理時には、ステップS752においてウォッチドッグタイマを停止したが、これに代えて、ウォッチドッグタイマをクリアする処理とすることも可能である。
第2実施形態は、第1実施形態に対し、2バイト時間待ち処理(R_2BYTE_WAIT )を実行する場合に、BCレジスタに記憶する値が異なる。
第2実施形態について、図29の設定変更処理を例に挙げて説明する。
図29のステップS809では、メイン制御基板60は、設定変更開始時のための待機時間をセットする。上述したように、第1実施形態では、設定変更開始時の待機時間として、割込み回数「224」(約500ms)をセットしたが、第2実施形態では、さらに、その時点における割込みカウンタ(_CT_INTR)の値(「0」〜「65535」のいずれかの値)を取得する。そして、待機時間である割込み回数「224」と、割込みカウンタ値とを加算した値を、BCレジスタにセットする。たとえば、割込みカウンタ値が「1000」であるとき、「224+1000=1224」となる。よって、Bレジスタ値=「00000100B」、Cレジスタ値=「11001000B」となる。
また、第2実施形態では、待機時間セット処理の次に続く「2バイト時間待ち処理」は、後述する図74の処理(ステップS31’)に置き換える。
図73において、ステップS901で待機時間セット処理が開始されると、ステップS902で、待機時間を取得する。たとえば、上記のステップS809の例では、「224」をAレジスタに記憶する処理に相当する。
次にステップS904に進み、Aレジスタ値とDレジスタ値とを加算し、その演算結果をBCレジスタに記憶する。上記例に示すように、たとえば割込みカウンタ値が「1000」であるときは、加算による演算結果は「1224」となり、その値をBCレジスタに記憶する。そして本フローチャートによる処理を終了する。
ステップS911では、割込みカウンタ値を取得する。この処理は、図33のステップS41と同様であり、割込みカウンタ値をAレジスタに記憶する処理である。次にステップS912に進み、ステップS911で取得した割込みカウンタ値(Aレジスタ値)がBCレジスタ値以上であるか否かを判断する。この処理は、たとえば割込みカウンタ値(Aレジスタ値)からBCレジスタ値を減算し、ゼロフラグ=「1」又はキャリーフラグ=「1」であるときは、「Yes」と判断し、ゼロフラグ≠「1」かつキャリーフラグ≠「1」であるときは「No」と判断する。
ステップS912で「Yes」であるときは本フローチャートによる処理を終了し、「No」であるときはステップS32に進む。ステップS32は、割込み待ち処理(C_INTR_WAIT ;図33)(一割込み待ち)を実行し、一割込み待ち後、ステップS911に戻る。
なお、図74においては、ステップS32の割込み待ち処理を実行せずに、ステップS912でNOと判断された場合には、S911に戻るような処理であっても良い。換言すると、ステップS911とステップS912とを循環することにより待機処理を実現してもよい。
第1実施形態では、作動状態フラグ(_FL_ACTION )を設けることで、特別役及びリプレイの作動状態を管理した。換言すると、試験信号の出力に対応するRWMアドレスを設けていた。
これに対し、特別役の種類が多いときは、特別役の作動状態を管理する特別役作動状態フラグを設けることが挙げられる。
図75は、特別役作動状態フラグの例を示す図である。図75の特別役作動状態フラグは、各特別役の作動状態を、「0」番から「7」番までの番号で管理するものである。また、各番号に対応する情報は、それぞれ当該番号を2進数の数値で8ビット表示したものである。
図75の特別役作動状態フラグにおいて、「1」番のRB作動は、単体で当選するレギュラーボーナスである。また、「4」番のSB作動は、単体で当選するシングルボーナスである。たとえば、特別役非内部中においてSBに当選すると、当該遊技で「PB=1」で当選したSBが入賞し、かつ、次遊技の1遊技でSB遊技を行い、SB遊技の終了後(SB遊技は1遊技で終了)、特別役非内部中に戻るように制御される。
図75の例1)に示すように、ボーナス非作動時から1BBが入賞し、1BB遊技が開始されると、1BB作動状態となり、特別役作動状態フラグの番号は、「0」番から「3」番に変更される。そして、RB遊技が2遊技実行され、当該遊技の終了時にRBの作動状態フラグを「0」にするときは、番号を「3」番から「2」番に変更(「−1」)する。
さらにまた、1BBの作動終了時には、番号を「3」番から「0」番に変更する。
さらにまた、2BBの作動終了時は、番号を「7」番から「0」番に変更する。
例3)に示すように、RB(単独)が作動すると、特別役作動状態フラグの番号を「0」番から「1」番に変更する。これにより、RBの単独作動状態を示す情報となる。そして、RB作動終了時は、特別役作動状態フラグの番号を「1」番から「0」番に変更する。
さらにまた、例5)に示すように、CB(単独)作動時は、特別役作動状態フラグの番号を「0」番から「5」番に変更する。これにより、CBの単独作動状態を示す情報となる。
そして、CBの作動終了時は、特別役作動状態フラグの番号を「5」番から「0」番に変更する。
なお、このときに試験機に試験信号を送信するときは、特別役作動状態フラグに記憶されている情報をそのまま試験信号として送信してもよく、あるいは、特別役作動状態フラグに記憶されている情報に基づいて加工・合成した情報を試験信号として送信してもよい。たとえば、特別役作動状態フラグとリプレイ・小役作動状態フラグ(リプレイや小役の作動を管理しているフラグ)が複数のRWM61に記憶されているときに、これらの情報に基づいて試験信号を生成し、試験機に送信してもよい。
図77は、第4実施形態における設定変更処理(M_RANK_SET)を示すフローチャートであり、第1実施形態の図29に対応する図である。
第1実施形態では、図29に示すように、設定変更スイッチ53の立ち上がりデータに基づいて設定値を更新した後(ステップS816)、再度、ステップS815の判断が実行される前に、ステップS814の割込み待ち処理(C_INTR_WAIT )を実行することで、設定変更スイッチ53の立ち上がりデータがクリアされるようにした。
これに対し、第4実施形態では、図29のステップS814に相当する割込み待ち処理を設けていない。
なお、第4実施形態において、入力ポート1の立ち上がりデータ中、D4ビット(設定変更スイッチ53信号)のみをクリアするのではなく、アドレス「F00A」の1バイトデータの全ビットをクリアしてもよい。ステップS822のタイミングで、入力ポート1の立ち上がりデータの全ビットをクリアしても特段問題が生じないのであれば、全ビットクリア処理を実行することも可能である。
図78は、第5実施形態における入賞によるメダル払出し処理(MS_WIN_PAY)を示すフローチャートであり、第1実施形態の図60に対応する図である。第5実施形態では、第1実施形態に対し、以下の点が異なる。
(1)第5実施形態では、メダル払出しに伴い、メダル払出し枚数データ(アドレス「F06C」の「_NB_PAY_MEDAL 」)の値を更新(減算)しない。当該遊技においてメダル払出し枚数データが更新された(図59のステップS593)後、次に更新されるのは、次回遊技におけるメダル払出し枚数データの更新時(図59のステップS593)である。
(2)第1実施形態におけるメダル払出し枚数データバッファ(アドレス「F06D」の「_BF_PAY_MEDAL 」)を設けない。このため、第5実施形態では、図59のメダル払出し枚数更新処理においては、ステップS593を有さない。
(3)第5実施形態では、図63のRB作動管理(M_RB_CTL)において、ステップS563では、メダル払出し枚数データ(アドレス「F06C」の「_NB_PAY_MEDAL 」)の値が「0」であるか否かを判断する(メダル払出し枚数データに基づいて、当該遊技で小役が入賞したか否かを判断する)。
ステップS466からステップS479に進むと、メダル払出し枚数データの値をXレジスタ(単に「レジスタ」とも称し、具体的には、Aレジスタ、Bレジスタ、Cレジスタ、Dレジスタ、Eレジスタ、Hレジスタ、又はLレジスタのうちのいずれかのレジスタを指す。)に記憶する。ここでは、図78のステップS480〜S482の処理を行うためにXレジスタを用いるものであり、特に、ステップS453においてメダル払出し枚数データの値をDレジスタに記憶しているので、ステップS480〜S482の処理を実行している間に他の処理でDレジスタを用いなければ、ステップS479では、XレジスタとしてDレジスタを用いることも可能である。
ステップS468からステップS474までは、図60の第1実施形態と同様であるので説明を省略する。
これに対し、ステップS482でXレジスタ値が「0」でないと判断したときは、払い出すべきメダルが未だ残っている状態であるので、ステップS468に戻って払出し処理を継続する。
さらに、メダル払出し枚数データバッファ(_BF_PAY_MEDAL )の記憶領域を不要にすることができるので、RWM61の記憶容量を削減することができる。
第5実施形態では、メダル払出し枚数データをXレジスタに記憶し、メダル払出し処理ごとにXレジスタ値を減算し、Xレジスタ値が「0」となったときにメダル払出し処理を終了した。そして、RB作動管理中、ステップS563では、アドレス「F06C」の「_NB_PAY_MEDAL 」の値が「0」であるか否かを判断した。
これに対し、第5実施形態の変形例では、第5実施形態と同様に、ステップS479を設け、メダル払出し枚数データをXレジスタに記憶する。
一方、ステップS479の後は、第1実施形態(図60)と同様に、ステップS467の処理、すなわちアドレス「F06C」のメダル払出し枚数データ(_NB_PAY_MEDAL )が「0」であるか否かを判断し、「0」でないときはステップS468以降のメダル払出し処理を実行するとともに、メダル払出し処理ごとにメダル払出し枚数データ(_NB_PAY_MEDAL )を減算する。
図79は、第6実施形態における入賞によるメダル払出し処理(MS_WIN_PAY)を示すフローチャートであり、第1実施形態の図60に対応する図である。
第5実施形態では、図79において、ステップS483の処理のみが第1実施形態と異なる。
また、第6実施形態では、RWM61のアドレス「F06D」のメダル払出し枚数データバッファ(_BF_PAY_MEDAL )は設けられていない。
上記以外は、第1実施形態と同一である。
第6実施形態では、ステップS467においてメダル払出し枚数データ(アドレス「F06C」の「_NB_PAY_MEDAL 」)が「0」でない(すなわち、払い出すべきメダルがある)と判断されると、ステップS483に進み、RB作動時入賞処理を実行する。このRB作動時入賞処理の実行後、ステップS468に進む。
ステップS485では、RWM61のアドレス「F074」のRB作動時の入賞回数(_CT_BONUS_WIN )から「1」を減算する処理を行う。そして、本フローチャートによる処理を終了する。
第6実施形態では、上述したように、RB作動時入賞処理によりRB作動時の入賞回数を更新する。したがって、第1実施形態のように、RB作動管理(M_RB_CTL)の処理内ではRB作動時の入賞回数の更新処理は行わない。
図81において、ステップS562で、RB作動時の遊技回数が「0」でないと判断したときはステップS569に進む。ステップS569では、RB作動時の入賞回数(_CT_BONUS_WIN )が「0」であるか否かを判断する。ここでの判断は、図80の処理で更新された後である。そして、RB作動時の入賞回数が「0」であると判断したときはステップS566以降の処理を実行し、「0」でないと判断したときは本フローチャートによる処理を終了する。
図82は、第7実施形態におけるメイン処理(M_MAIN)を示すフローチャートであり、第1実施形態の図36に対応する図である。
第1実施形態では、図36中、ステップS59及びS60、並びに図57のステップS439に示すように、スタートスイッチ41の操作受付け時に設定値が正常範囲内であるか否かを判断し、正常範囲内であるときは遊技を進行するが、正常範囲内でないと判断したときは、その時点で遊技の進行を中止し、復帰不可能エラーとした。
そこで、このような抽選を行う場合には、全停時にも、図57のステップS439に示すように、設定値が正常範囲内であるか否かを判断した後に抽選を実行することが望ましい。
ステップS78では、上述した全停時の抽選を有するときは、当該抽選処理を実行する。たとえば図22に示したようなチェリー等のレア小役当選時に、AT抽選等を実行することが挙げられる。そして、ステップS68に進む。
(1)フリーズ
スロットマシン10において、フリーズを実行することが可能である。
ここで「フリーズ」とは、遊技の進行を、所定期間一時停止状態にして、遅延させることであり、たとえば、メダルの受付け、ベットスイッチ40の操作の受付け、スタートスイッチ41、ストップスイッチ42の操作の受付け(リール31の停止操作の受付け)に関する機能を一時停止状態にすることである。このようなフリーズを実行するとともに、このフリーズ期間中に、各種の演出を出力することが挙げられる。
さらに、フリーズの実行中に、リール31を用いたリール演出(リール31を小刻みに震えさせる、リール31を逆回転させた後、所定位置で停止させる等)を行うことも可能である。
これに対し、以下のように遊技状態を制御することも可能である。
まず、当選を持ち越すMB(特別役)を設け、MBに当選したときであってもMBが入賞しにくいように制御する。たとえば、MBは、押し順が右中左であることを条件として入賞可能とする。これにより、遊技者がMB当選時に逆押しをしない限り、当該遊技でMBが入賞することはない。また、MB内部中は、リプレイと小役の当選を用いて、非当選となる確率を極めて低くなるように設定すれば、MB内部中においてMBの入賞機会は極めて低くなるので、MBが入賞しない状態、すなわちMB内部中遊技がずっと継続する確率を高くすることができる。
さらに、非ATは、ATに当選する確率が異なる低確率、通常確率、及び高確率を備える。これらの低確率、通常確率、高確率中にATに当選すると、ATに当選しているがATの開始前の遊技期間である前兆に移行する。この前兆中において、ATに当選していることが遊技者に報知される。
また、前兆の終了後、AT開始時までの間の期間は、AT準備中となる。さらにまた、ATは、ATの遊技回数が上乗せされる期待値が異なる通常確率と高確率とを備える。
本実施形態では、内部状態のうち、前兆に移行することに決定したときが、ATの当選に相当する。
以上のような遊技状態及び内部状態からなるものであってもよい。
さらに、本実施形態では、「0」〜「255」の待機時間を記憶する場合にも、Bレジスタには「00000000B」を記憶した。しかし、これに限らず、待機時間が1バイト(「255」以下)であるときは、Bレジスタのみ又はCレジスタのみを使用してもよい。
たとえば、AT抽選等で用いる乱数データが格納されている乱数データの値を用い、この乱数データが変化したことに基づいて割込みが実行された(カウントアップ又はダウンする)と判断してもよい。この場合、図33において、ステップS41では、「乱数データを取得」する。次のステップS42では、「乱数データ値が変化したか否か」を判断し、「Yes」と判断したときは本フローチャートによる処理を終了するように制御すればよい。
これらの特別役入賞時には、2バイト時間待ち処理を実行するとともにその特別役入賞時の演出を出力することで、1BBと同様に、演出キャンセルをさせることなくその演出を遊技者に見せることができる。
たとえば、ステップS469、S472、S474、S475、S476の順に処理を実行し、S476で「No」のときは、ステップS470及びS471を実行した後、ステップS468に戻るようにしてもよい。このように制御しても、貯留数表示LED71がカウントアップするように遊技者に見せることができるという効果を発揮することができる。
これに対し、図60のように、1枚のメダルの貯留加算時であっても、その貯留加算の実行前に2バイト時間待ち処理を実行することで、1枚役の入賞後、貯留加算前にウェイトを設けることができるので、役が入賞した瞬間に貯留加算されることはない。このことは、図38において、リプレイ入賞時に、最初の1枚を自動ベットする(ステップS144)前に、ステップS136及びS137で2バイト時間待ち処理を実行することにより、ウェイトを設けていることと同じである。
(10)本実施形態では、遊技機の一例としてスロットマシン10を例に挙げたが、弾球遊技機や封入式遊技機等にも適用可能である。
(11)本実施形態及び上記の各種の変形例は、単独で実施されることに限らず、適宜組み合わせて実施することが可能である。
本願の当初明細書等に記載した発明(当初発明)は、たとえば以下の当初発明1〜6を挙げることができ、それぞれ、当初発明が解決しようとする課題、当初発明に係る課題を解決するための手段及び当初発明の効果は、以下の通りである。ただし、当初発明は、以下の当初発明1〜6に限ることを意味するものではない。
なお、本願の請求項に係る当初発明は、以下の当初発明3に相当する。
(a)当初発明が解決しようとする課題
従来の技術において、遊技機の電源投入時に、電源復帰が異常になる場合が考えられる。このような場合には、設定値が異常値になってしまうおそれがある。しかし、従来の技術では、電源復帰時に設定値異常が生じたときの有効な処理は設けられていなかった。
当初発明が解決しようとする課題は、電源復帰時に設定値異常が生じたときであっても、エラー処理を行うことなく適切に制御処理を進行できるようにすることである。
当初発明(第1実施形態)は、
遊技者の有利度を定める設定値を記憶する設定値記憶手段(RWM61のアドレス「F000」の「_NB_RANK」)と、
電源復帰が正常であるか否かを判断する処理(ステップS802)と、
設定値を変更するための条件を満たした場合(ステップS19で「Yes」、又はステップS20で「No」の場合)において、電源復帰が正常であると判断したとき(ステップS802で「Yes」)は前記設定値記憶手段に記憶されたデータをクリアせずに所定の記憶領域に記憶されたデータをクリアし(ステップS801、ステップS804)、電源復帰が正常でないと判断したとき(ステップS802で「No」)は前記設定値記憶手段に記憶された設定値及び前記所定の記憶領域に記憶されたデータをクリアする(ステップS801、ステップS803、ステップS804)データクリア処理と、
前記設定値記憶手段に記憶された設定値が所定範囲(「1」〜「6」)内であるか否かを判断する設定値判断処理(ステップS811)と、
前記データクリア処理の実行後、前記設定値判断処理を実行し、前記所定範囲外であると判断したときは、前記設定値記憶手段に特定値(「1」)を記憶する設定値更新処理(ステップS812)と
を備え、
前記データクリア処理の実行後とは異なる所定のタイミング(スタートスイッチ受付け処理)で前記設定値判断処理を実行し(ステップS439)、前記所定範囲外であると判断したときは、エラー処理を行う(ステップS445;復帰不可能エラー処理)
ことを特徴とする。
なお、本発明における「所定のタイミング」とは、設定値によって当選確率が変動する抽選タイミングを示し、実施形態で示したステップS439又はステップS77に限定されるものではない。
当初発明によれば、設定値を変更するための条件を満たした場合において、電源復帰が正常でないと判断したときは、その時点でエラー処理を行うことなく設定値データをクリアし、設定値として特定値を記憶するので、電源復帰からの制御処理を中断等することなくスムーズに進行することができる。
また、設定値を変更する条件を満たす正常な電源復帰時でも、所定の記憶領域に記憶されたデータについてはクリアするので、新たに設定値を設定し直すことなく、所定の記憶領域に記憶されたデータを消去することができる。
さらにまた、たとえば出玉にかかわる抽選等を実行するときは、設定値判断処理を実行し、設定値が正しくないときはエラー処理を実行するので、不正な設定値に基づく抽選等の処理をが実行されてしまうことを防止することができる。
(a)当初発明が解決しようとする課題
従来の技術では、設定値が意図した数値と異なる値にならないようにするために、無効タイマー125を設け、タイムアップとなるまでにずっと時間を計測する必要があった。
当初発明が解決しようとする課題は、タイマーを設けることなく、設定値が意図した値にならないようにすることである。
当初発明(第4実施形態)は、
遊技の進行を制御するメイン処理(M_MAIN)と、
前記メイン処理の実行中に、前記メイン処理とは異なる処理を、一定時間ごとの割込みによって実行する割込み処理(I_INTR)と、
遊技者の有利度を定める設定値を記憶する設定値記憶手段(RWM61のアドレス「F000」の「_NB_RANK」)と、
前記設定値を変更するときに操作される設定変更スイッチ(設定変更/リセットスイッチ53)と
を備え、
前記割込み処理ごとに前記設定変更スイッチのオン/オフを検知するとともに、前回の割込み処理では前記設定変更スイッチのオフを検知し、かつ今回の割込み処理では前記設定変更スイッチのオンを検知したときは、前記設定変更スイッチの立ち上がりデータを生成し、かつその立ち上がりデータを記憶し(ステップS607)、
前記メイン処理は、前記設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行した後(ステップS816)、次に前記設定変更スイッチの立ち上がりデータのオン/オフを判断する前に前記設定変更スイッチの立ち上がりデータをオフにする(ステップS822)
ことを特徴とする。
当初発明によれば、割込み処理ごとに設定変更スイッチに係る立ち上がりデータを生成し、メイン処理では、設定変更スイッチの立ち上がりデータがオンであるときは設定変更を実行するが、次に設定変更スイッチの立ち上がりデータのオン/オフを判断する前に設定変更スイッチの立ち上がりデータをオフにするので、設定変更スイッチに係る立ち上がりデータがオンとなったときに、その立ち上がりデータによって2回以上続けて設定値が更新されることはない。したがって、タイマー等を設けることなく、設定値が連続して更新されることを防止することができる。
(a)当初発明が解決しようとする課題
従来の技術では、設定値が意図した数値と異なる値にならないようにするために、専用の無効タイマー125を設ける必要があった。
当初発明が解決しようとする課題は、専用のタイマーを設けることなく、設定値が意図した値にならないようにすることである。
当初発明(第1実施形態)は、
遊技の進行を制御するメイン処理(M_MAIN)と、
前記メイン処理の実行中に、前記メイン処理とは異なる処理を、一定時間ごとの割込みによって実行する割込み処理(I_INTR)と、
遊技者の有利度を定める設定値を記憶する設定値記憶手段(RWM61のアドレス「F000」の「_NB_RANK」)と、
前記設定値を変更するときに操作される設定変更スイッチ(設定変更/リセットスイッチ53)と
を備え、
前記割込み処理ごとに前記設定変更スイッチのオン/オフを検知するとともに、前回の割込み処理では前記設定変更スイッチのオフを検知し、かつ今回の割込み処理では前記設定変更スイッチのオンを検知したときに、前記設定変更スイッチの立ち上がりデータを生成し、かつその立ち上がりデータを記憶し(ステップS607)、
前記メイン処理は、
前記設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行し(ステップS816)、
前記設定変更スイッチの立ち上がりデータのオン/オフを判断した後、次に前記設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、少なくとも1回の割込み処理が実行されるまで待機する割込み待ち処理を実行する(ステップS814;C_INTR_WAIT )
ことを特徴とする。
当初発明によれば、メイン処理とは別に設けられている割込み処理を利用し、1割込み処理が行われた後、すなわち設定変更スイッチの立ち上がりデータが更新された後に、設定変更スイッチの立ち上がりデータのオン/オフを判断するので、設定変更スイッチに係る立ち上がりデータがオンとなったときに、その立ち上がりデータによって2回以上続けて設定値が更新されることはない。したがって、意図しない設定値とならないようにするための専用のタイマーを設けることなく、設定値が連続して更新されることを防止することができる。
(a)当初発明が解決しようとする課題
従来の遊技機において、レギュラーボーナスゲームを実行するスロットマシンが知られている。レギュラーボーナスゲーム中は、遊技回数及び入賞回数を計数し、遊技回数が12回、又は入賞回数が8回になったときに終了条件を満たすと判断し、レギュラーボーナスゲームを終了させる(たとえば、特開平09−253274号公報)。
しかし、前述の従来の技術において、入賞回数計数手段132がどのようにして入賞回数をカウントするかについての具体的記載はない。
当初発明が解決しようとする課題は、特別遊技中における役の入賞回数に関する情報を正しくカウントすることである。
当初発明(第1実施形態)は、
所定の条件を満たしたとき(RBに係る作動状態フラグが「1」であるとき(ステップS545で「No」のとき))に、特別遊技(RB遊技)を実行する遊技機において、
前記特別遊技における役の入賞回数に関する情報を記憶するカウンタ(アドレス「F074」の「_CT_BONUS_WIN 」)と、
遊技媒体の払出し数を記憶する払出し数記憶手段と
を備え、
前記払出し数記憶手段は、
遊技媒体の払出しに伴って、記憶した値を減算する(ステップS475)払出し数第1記憶手段(アドレス「F06C」の「_NB_PAY_MEDAL 」)と、
遊技媒体の払出しによっても、記憶した値を減算しない払出し数第2記憶手段(アドレス「F06D」の「_BF_PAY_MEDAL 」)と
を備え、
遊技媒体の払出しを有する役が入賞したときは、前記払出し数第1記憶手段及び前記払出し数第2記憶手段にそれぞれ払出し数に相当する値を記憶し(ステップS592及びステップS593)、
前記払出し数第2記憶手段に記憶された値が特定値(「0」)であるとき(ステップS563で「Yes」)は前記カウンタの値を更新せず、前記払出し数第2記憶手段に記憶された値が前記特定値でないとき(ステップS563で「No」)は前記カウンタの値を更新する(ステップS564)
ことを特徴とする。
当初発明によれば、遊技媒体の払出しがあるときに、払出し数第1記憶手段及び払出し数第2記憶手段の双方に払出し数を記憶し、払出し数第2記憶手段に記憶した値は、遊技媒体の払出しによっても減算しないので、払出し数第2記憶手段に記憶された値が特定値であるか否かを判断することで、当該遊技で遊技媒体の払出しを有する役が入賞したか否かを判断することができる。これにより、払出し数記憶手段に記憶された値に基づいて、カウンタの値を更新することができる。
(a)当初発明が解決しようとする課題
当初発明4と同一。
(b)当初発明に係る課題を解決するための手段(なお、かっこ書きで、対応する実施形態を記載する。)
当初発明(第5実施形態)は、
所定の条件を満たしたとき(RBに係る作動状態フラグが「1」であるとき(ステップS545で「No」のとき))に、特別遊技(RB遊技)を実行する遊技機において、
前記特別遊技における役の入賞回数に関する情報を記憶するカウンタ(アドレス「F074」の「_CT_BONUS_WIN 」)と、
遊技媒体の払出し数を記憶する払出し数記憶手段(アドレス「F06C」の「_NB_PAY_MEDAL 」)と
を備え、
遊技媒体の払出しを有する役が入賞したときは、前記払出し数記憶手段に払出し数に相当する値を記憶し(ステップS68)、
遊技媒体の払出し処理を実行するときは、前記払出し数記憶手段に記憶された値をレジスタ(Xレジスタ)に記憶し(ステップS479)、当該レジスタに記憶された値が「0」になるまで遊技媒体の払出しを行い(ステップS468〜ステップS474、ステップS481、及びステップS482)、
前記払出し数記憶手段に払出し数が記憶された後の所定のタイミング(ステップS563)で、前記払出し数記憶手段に記憶された値が特定値(「0」)であるか否かを判断し、前記払出し数記憶手段に記憶された値が前記特定値であるときは前記カウンタの値を更新せず、前記払出し数記憶手段に記憶された値が前記特定値でないときは前記カウンタの値を更新する(ステップS564)
ことを特徴とする。
なお、本発明において、「所定のタイミング」とは、払出し数記憶手段に払出し数が記憶された後の任意のタイミングを意味し、実施形態で示したステップS563に限定されるものではない。
当初発明によれば、遊技媒体の払出し処理を実行するときは、払出し数記憶手段に記憶された値をレジスタに記憶し、当該レジスタ値を払出しに伴って減算していくので、払出し数記憶手段に記憶された値は減算されることはない。これにより、カウンタの値を更新するときは、払出し数記憶手段に記憶された値を参照することで、当該遊技で遊技媒体の払出しを有する役が入賞したか否かを判断することができる。
(a)当初発明が解決しようとする課題
当初発明4と同一。
(b)当初発明に係る課題を解決するための手段(なお、かっこ書きで、対応する実施形態を記載する。)
当初発明(第6実施形態)は、
所定の条件を満たしたとき(RBに係る作動状態フラグが「1」であるとき(ステップS545で「No」のとき))に、特別遊技(RB遊技)を実行する遊技機において、
前記特別遊技における役の入賞回数に関する情報を記憶するカウンタ(アドレス「F074」の「_CT_BONUS_WIN 」)と、
遊技媒体の払出し数を記憶する払出し数記憶手段(アドレス「F06C」の「_NB_PAY_MEDAL 」)と
を備え、
遊技媒体の払出しを有する役が入賞したときは、前記払出し数記憶手段に払出し数に相当する値を記憶し(ステップS68)、
遊技媒体の払出しに伴って前記払出し数記憶手段に記憶された値を減算し(ステップS468〜ステップS476)、
前記払出し数記憶手段に払出し数が記憶された後の所定のタイミング(ステップS467)で、前記払出し数記憶手段に記憶された値が特定値(「0」)であるか否かを判断し、前記払出し数記憶手段に記憶された値が前記特定値であるとき(ステップS467で「Yes」)は前記カウンタの値を更新せず、前記払出し数記憶手段に記憶された値が前記特定値でないとき(ステップS467で「No」)は前記カウンタの値を更新し(ステップS483)、
前記カウンタの値が所定値(「0」)であるか否かを判断し(ステップS569)、前記カウンタの値が前記所定値であると判断したときは(ステップS569で「Yes」)、前記特別遊技を終了するように制御する(ステップS566及びステップS567)
ことを特徴とする。
なお、本発明における「所定のタイミング」とは、払出し数記憶手段に払出し数が記憶された後、払出し数記憶手段に記憶された値を減算する前までの任意のタイミングを意味し、実施形態で示したステップS467に限られるものではない。
当初発明によれば、払出し数記憶手段に払出し数が記憶された後、払出し数記憶手段に記憶された値を減算する前の所定のタイミングで、払出し数記憶手段に記憶された値が特定値であるか否かを判断し、特定値でないときはカウンタの値を更新するので、払出し数記憶手段に記憶された払出し数が払出しに伴って減算される場合であっても、払出し数記憶手段に記憶された値に基づいてカウンタの値を更新することができる。
13 表示窓
16 ドアスイッチ
21 演出ランプ
22 スピーカ
23 画像表示装置
24 十字キー
25 プッシュボタン
31 リール
32 モータ
35 メダル払出し装置
35a ホッパー
35b サブタンク
36 ホッパーモータ
37a、37b 払出しセンサ
38 満杯センサ
39 リールセンサ
40a 1ベットスイッチ
40b 3ベットスイッチ
41 スタートスイッチ
42 ストップスイッチ
43 メダル投入口
43a 通路センサ
44a、44b 投入センサ
45 ブロッカ
46 精算スイッチ
51 電源スイッチ
52 設定キースイッチ
53 設定変更/リセットスイッチ
54 設定ドアスイッチ
60 メイン制御基板(メイン制御手段)
61 RWM
62 ROM
63 メインCPU
63a 設定変更手段
63b 役抽選手段
63c リール制御手段
63d 入賞判定手段
63e 払出し手段
63f 遊技状態制御手段
63g コマンド制御手段
64 設定値表示LED
70 表示基板
71 貯留数表示LED
72 獲得数表示LED
73 状態表示LED
73a リプレイ表示LED
73b 投入可表示LED
73c 精算表示LED
73d 遊技開始LED
73e 1枚投入表示LED
73f 2枚投入表示LED
73g 3枚投入表示LED
80 サブ制御基板(サブ制御手段)
81 RWM
82 ROM
83 サブCPU
83a 演出出力制御手段
100 外部集中端子板
本発明(第1実施形態)は、
遊技の進行を制御するメイン制御手段(メイン制御基板60)と、
設定値を変更するときに操作される設定変更スイッチ(設定変更/リセットスイッチ53)と
を備え、
前記メイン制御手段は、少なくとも、前記設定変更スイッチの立ち上がりデータを記憶する記憶手段(RWM61のアドレス「F00B」(入力ポート1立ち上がりデータ記憶領域))を有し、
前記メイン制御手段は、電源が供給された場合において設定値の変更処理を実行する条件を満たしたとき(図28中、ステップS19で「Yes」、又はステップS20で「No」のとき)は、設定値の変更処理(図29)を実行し、
設定値の変更処理では、
前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断し(ステップS815)、前記設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行し(ステップS816)、
前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断した後、次に前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、少なくとも1回の割込み処理が実行されるまで待機する割込み待ち処理を実行し(ステップS814;C_INTR_WAIT )、
前記メイン制御手段は、割込み処理(図64)では、前記設定変更スイッチの立ち上がりデータを生成し、前記設定変更スイッチの立ち上がりデータを前記記憶手段に記憶する処理を実行する(ステップS607)
ことを特徴とする。
本発明(第1実施形態)は、
遊技の進行を制御するメイン制御手段(メイン制御基板60)と、
設定値を変更するときに操作される設定変更スイッチ(設定変更/リセットスイッチ53)と
を備え、
前記メイン制御手段は、少なくとも、前記設定変更スイッチの立ち上がりデータのオン/オフを記憶する記憶手段(RWM61のアドレス「F00B」(入力ポート1立ち上がりデータ記憶領域))を有し、
前記メイン制御手段は、所定時間(2.235ms)間隔で割込み処理(I_INTR)を実行し、
前記割込み処理では、
前回の割込み処理で前記設定変更スイッチのオフを検知し、今回の割込み処理で前記設定変更スイッチのオンを検知したときは、前記設定変更スイッチの立ち上がりデータのオンを前記記憶手段に記憶し、
前回の割込み処理で前記設定変更スイッチのオンを検知し、今回の割込み処理で前記設定変更スイッチのオフを検知したときは、前記設定変更スイッチの立ち上がりデータのオフを前記記憶手段に記憶し、
前記メイン制御手段は、電源が供給された場合において設定値の変更処理を実行する条件を満たしたとき(図28中、ステップS19で「Yes」、又はステップS20で「No」のとき)は、設定値の変更処理(図29)を実行し、
設定値の変更処理では、
前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断し(ステップS815)、前記設定変更スイッチの立ち上がりデータがオンであると判断したとき(ステップS815で「Yes」)は、設定値の更新処理を実行し(ステップS816)、
前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断した後、次に前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、少なくとも1回の割込み処理が実行されるまで待機する割込み待ち処理を実行し(ステップS814;C_INTR_WAIT )、前記割込み待ち処理中に実行される前記割込み処理により、前回の割込み処理で前記設定変更スイッチの立ち上がりデータのオンを前記記憶手段に記憶したときは前記設定変更スイッチの立ち上がりデータのオフを前記記憶手段に記憶することにより、次に前記記憶手段に記憶されている前記設定変更スイッチの立ち上がりデータのオン/オフを判断したときは、前記設定変更スイッチの立ち上がりデータがオンと判断されないようにする
ことを特徴とする。
Claims (1)
- 遊技の進行を制御するメイン処理と、
前記メイン処理の実行中に、前記メイン処理とは異なる処理を、一定時間ごとの割込みによって実行する割込み処理と、
遊技者の有利度を定める設定値を記憶する設定値記憶手段と、
前記設定値を変更するときに操作される設定変更スイッチと
を備え、
前記割込み処理ごとに前記設定変更スイッチのオン/オフを検知するとともに、前回の割込み処理では前記設定変更スイッチのオフを検知し、かつ今回の割込み処理では前記設定変更スイッチのオンを検知したときに、前記設定変更スイッチの立ち上がりデータを生成し、かつその立ち上がりデータを記憶し、
前記メイン処理は、
前記設定変更スイッチの立ち上がりデータがオンであると判断したときは、設定値の更新処理を実行し、
前記設定変更スイッチの立ち上がりデータのオン/オフを判断した後、次に前記設定変更スイッチの立ち上がりデータのオン/オフを判断するまでの間に、少なくとも1回の割込み処理が実行されるまで待機する割込み待ち処理を実行する
ことを特徴とする遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015100734A JP5892676B1 (ja) | 2015-05-18 | 2015-05-18 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015100734A JP5892676B1 (ja) | 2015-05-18 | 2015-05-18 | 遊技機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5892676B1 JP5892676B1 (ja) | 2016-03-23 |
JP2016214433A true JP2016214433A (ja) | 2016-12-22 |
Family
ID=55541210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015100734A Active JP5892676B1 (ja) | 2015-05-18 | 2015-05-18 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5892676B1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019017938A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2019017939A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2022186866A (ja) * | 2019-10-28 | 2022-12-15 | 株式会社三洋物産 | 遊技機 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6421695B2 (ja) * | 2015-05-18 | 2018-11-14 | サミー株式会社 | 遊技機 |
JP6726568B2 (ja) * | 2016-08-15 | 2020-07-22 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
JP6943551B2 (ja) * | 2016-08-25 | 2021-10-06 | 株式会社三共 | 遊技機 |
JP6943552B2 (ja) * | 2016-08-25 | 2021-10-06 | 株式会社三共 | 遊技機 |
JP6751237B2 (ja) * | 2016-12-05 | 2020-09-02 | サミー株式会社 | スロットマシン |
JP6985169B2 (ja) * | 2018-01-31 | 2021-12-22 | 株式会社ニューギン | 遊技機 |
JP6985168B2 (ja) * | 2018-01-31 | 2021-12-22 | 株式会社ニューギン | 遊技機 |
JP6898489B2 (ja) * | 2018-11-29 | 2021-07-07 | 株式会社ユニバーサルエンターテインメント | 遊技機 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011200511A (ja) * | 2010-03-26 | 2011-10-13 | Sankyo Co Ltd | 遊技機 |
JP2013042879A (ja) * | 2011-08-23 | 2013-03-04 | Sankyo Co Ltd | 遊技機 |
JP2014136075A (ja) * | 2013-01-17 | 2014-07-28 | Sankyo Co Ltd | スロットマシン |
-
2015
- 2015-05-18 JP JP2015100734A patent/JP5892676B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011200511A (ja) * | 2010-03-26 | 2011-10-13 | Sankyo Co Ltd | 遊技機 |
JP2013042879A (ja) * | 2011-08-23 | 2013-03-04 | Sankyo Co Ltd | 遊技機 |
JP2014136075A (ja) * | 2013-01-17 | 2014-07-28 | Sankyo Co Ltd | スロットマシン |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019017938A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2019017939A (ja) * | 2017-07-21 | 2019-02-07 | 株式会社三洋物産 | 遊技機 |
JP2022186866A (ja) * | 2019-10-28 | 2022-12-15 | 株式会社三洋物産 | 遊技機 |
Also Published As
Publication number | Publication date |
---|---|
JP5892676B1 (ja) | 2016-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5813897B1 (ja) | 遊技機 | |
JP5892675B1 (ja) | 遊技機 | |
JP6380231B2 (ja) | 遊技機 | |
JP5892676B1 (ja) | 遊技機 | |
JP5871349B1 (ja) | 遊技機 | |
JP6260574B2 (ja) | 遊技機 | |
JP6358151B2 (ja) | 遊技機 | |
JP5901034B1 (ja) | 遊技機 | |
JP5717160B1 (ja) | 遊技機 | |
JP5717162B1 (ja) | 遊技機 | |
JP2016083264A (ja) | 遊技機 | |
JP6168027B2 (ja) | 遊技機 | |
JP2016214434A (ja) | 遊技機 | |
JP2016083259A (ja) | 遊技機 | |
JP6213442B2 (ja) | 遊技機 | |
JP6252432B2 (ja) | スロットマシン | |
JP6120285B2 (ja) | 遊技機 | |
JP6421695B2 (ja) | 遊技機 | |
JP2019122637A (ja) | 遊技機 | |
JP6358152B2 (ja) | 遊技機 | |
JP6260573B2 (ja) | 遊技機 | |
JP6260572B2 (ja) | 遊技機 | |
JP6365407B2 (ja) | 遊技機 | |
JP6561796B2 (ja) | 遊技機 | |
JP6650628B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160115 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160219 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5892676 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |