JP2009261661A5 - - Google Patents

Download PDF

Info

Publication number
JP2009261661A5
JP2009261661A5 JP2008115265A JP2008115265A JP2009261661A5 JP 2009261661 A5 JP2009261661 A5 JP 2009261661A5 JP 2008115265 A JP2008115265 A JP 2008115265A JP 2008115265 A JP2008115265 A JP 2008115265A JP 2009261661 A5 JP2009261661 A5 JP 2009261661A5
Authority
JP
Japan
Prior art keywords
signal
processing
counter
operated
input
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
Application number
JP2008115265A
Other languages
English (en)
Other versions
JP2009261661A (ja
JP5610113B2 (ja
Filing date
Publication date
Application filed filed Critical
Priority to JP2008115265A priority Critical patent/JP5610113B2/ja
Priority claimed from JP2008115265A external-priority patent/JP5610113B2/ja
Publication of JP2009261661A publication Critical patent/JP2009261661A/ja
Publication of JP2009261661A5 publication Critical patent/JP2009261661A5/ja
Application granted granted Critical
Publication of JP5610113B2 publication Critical patent/JP5610113B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

遊技機
本発明は、スロットマシン等の遊技機に関するものである。
例えばスロットマシンでは、各リールの外周部に複数の図柄が付与されており、表示窓を通じて各リールに付与された図柄の一部が視認可能な構成となっている。そして、遊技者がメダルを投入することで有効ラインが設定され、その後、遊技者がスタートレバーを操作することでスロットマシンの内部にてビッグボーナス(以下、「BB」と言う)役や小役、再遊技といった役の抽選が行われるとともに各リールが回転を開始し、各リールが回転を開始した後にストップスイッチを操作することで各リールが順次停止して1回のゲームが終了する。そして、全てのリールが回転を停止した際に有効ライン上に当選した役と対応する図柄の組合せが停止すると入賞となり、メダルが払い出される特典や遊技状態が移行される特典等が遊技者に付与される。このように、スロットマシンでは、スタートレバーやストップスイッチ等の操作部材が操作されることによって遊技が進行する。また、上記操作がなされたか否かの判定は、操作部材に接続されたセンサからの信号入力状況に基づいて行うことが一般的である(例えば特許文献1参照)。
特開2007−325888号公報
ところで、操作部材の操作によって遊技が進行する遊技機においては、センサからの信号入力状況を確認する処理と、遊技者による操作がなされたか否かを判定する処理と、の間に生じるタイムラグを低減させることが望ましい。状況によっては、遊技者の行った操作と実際の遊技の進行との間にずれが生じる可能性が懸念されるからである。
なお、以上の問題は、上記例示したようなスロットマシンに限らず、所定条件の検出に基づいて遊技を進行させる他の遊技機にも該当する問題である。
本発明は上記例示した事情等に鑑みてなされたものであり、所定条件の検出と遊技の進行との間に生じるずれを低減させることが可能な遊技機を提供することを目的とするものである。
請求項1に記載の発明では、遊技を進行させるべく操作される操作手段と、前記操作手段が操作されたことに基づいて第1信号を出力するとともに、前記操作手段が操作されていないことに基づいて前記第1信号を非出力とする信号出力手段とを備え、前記信号出力手段からの信号入力状況に基づいて遊技を進行させる遊技機において、第1処理を行う第1処理実行手段と、前記信号出力手段からの信号入力状況を確認する状況確認処理を含む第2処理を定期的に行う第2処理実行手段とを備え、前記第1処理実行手段は、特定処理を行う特定処理実行手段と、前記特定処理が終了した場合、前記状況確認処理の処理結果を用いて遊技の進行に関わる第3処理を行う第3処理実行手段とを有し、前記特定処理実行手段は、前記特定処理を開始した後に前記第2処理が行われたか否かを確認する確認処理を行う確認処理実行手段と、前記確認処理実行手段が前記第2処理が行われたことを確認した場合、前記特定処理を終了させる終了手段とを有することを特徴とする。
所定条件の検出と遊技の進行との間に生じるずれを低減させることが可能となる。
以下、本発明の遊技機を手段として区分して示し、必要に応じて効果等を示しつつ説明する。なお以下においては、理解の容易のため、発明の実施の形態において対応する構成を括弧書き等で適宜示すが、この括弧書き等で示した具体的構成に限定されるものではない。
手段1.遊技を進行させるべく操作される操作手段(クレジット投入スイッチ56〜58等)と、
前記操作手段が操作されたことに基づいて第1信号を出力するとともに、前記操作手段が操作されていないことに基づいて前記第1信号を非出力とする信号出力手段(クレジット投入検出センサ56a〜58a等)と
を備え、前記信号出力手段からの信号入力状況に基づいて遊技を進行させる遊技機において、
第1処理(通常処理)を行う第1処理実行手段(CPU102)と、
前記信号出力手段からの信号入力状況を確認する状況確認処理(センサ監視処理S107)を含む第2処理(タイマ割込み処理)を定期的に行う第2処理実行手段(CPU102)と
を備え、
前記第1処理実行手段は、
特定処理(割込み待ち処理)を行う特定処理実行手段(CPU102)と、
前記特定処理が終了した場合、前記状況確認処理の処理結果を用いて遊技の進行に関わる第3処理(通常処理におけるS307、S606等)を行う第3処理実行手段(CPU102)と
を有し、
前記特定処理実行手段は、
前記特定処理を開始した後に前記第2処理が行われたか否かを確認する確認処理(割込み待ち処理におけるS407)を行う確認処理実行手段(CPU102)と、
前記確認処理実行手段が前記第2処理が行われたことを確認した場合、前記特定処理を終了させる終了手段(CPU102)と
を有することを特徴とする遊技機。
本手段によれば、第1処理と、定期的に行われる第2処理と、がある。第2処理は、信号出力手段からの信号入力状況を確認する状況確認処理を有している。第1処理は、第2処理が行われた場合に終了される特定処理と、特定処理が終了した場合に状況確認処理の処理結果を用いて行われる第3処理と、を有している。定期的に行われる第2処理において信号出力手段からの信号入力状況を確認する構成とすることにより、処理構成の簡略化を図ることが可能となる。また、特定処理を当該特定処理の開始後に第2処理が行われた場合に終了される構成とすることにより、特定処理が開始されてから終了されるまでの間に、少なくとも1回は第2処理を行うことができ、信号出力手段からの信号入力状況を確認することができる。さらに、特定処理が終了した場合に遊技の進行に関わる第3処理が行われる構成とすることにより、第2処理が終了してから第3処理が行われるまでの間隔を短縮させることが可能となる。以上の結果、操作手段の操作状況に即した状況確認処理の処理結果を用いて第3処理を行うことが可能となり、遊技者による操作という所定条件の検出と遊技の進行との間に生じるずれを低減させることが可能となる。
手段2.上記手段1において、前記第1処理実行手段は、規定条件(当選確率設定処理におけるスタートレバー41の操作、開始待ち処理における開始指令の発生)が成立するまで前記第1処理を繰り返し行うことを特徴とする遊技機。
本手段によれば、第1処理は規定条件が成立するまで繰り返し行われる。当該第1処理内で特定処理及び第3処理を行う構成とすることにより、遊技機が誤動作することを回避することが可能となる。仮に、第3処理の前段階で特定処理を行わない構成とした場合、状況確認処理を行ってから次に状況確認処理を行うまでの期間に第1処理を複数回行う可能性が考えられ、前記期間に第1処理を複数回行った場合、状況確認処理の同じ処理結果を用いて第3処理を複数回行うこととなる。これは、操作手段の1回の操作に対して対応する動作を複数回行うこととなり、遊技者等の意図しない動作となる可能性がある。一方、第3処理の前に特定処理を行う構成においては、第1処理を繰り返し行う場合であっても状況確認処理が少なくとも1回行われるのを待った上で第3処理を行うことができるため、上記懸念を好適に解消することができる。
手段3.上記手段2において、遊技者等により操作される所定操作手段(スタートレバー41)と、前記所定操作手段が操作されたことに基づいて前記第1信号を出力するとともに、前記所定操作手段が操作されていないことに基づいて前記第1信号を非出力とする所定信号出力手段(スタート検出センサ41a)と、を備え、前記規定条件は、前記所定信号出力手段から前記第1信号が出力されたことに基づいて成立することを特徴とする遊技機。
本手段によれば、所定操作手段が操作されたことに基づいて規定条件が成立する。かかる構成においては、規定条件の成立タイミングが遊技者等による所定操作手段の操作に依存することとなり、所定操作手段がいつ操作されるのかによって第1処理の繰り返し回数が変化することとなる。このため、第1処理内で行われる第3処理の前で特定処理を行う構成とすることにより、遊技機が誤動作することを好適に回避することが可能となる。
手段4.上記手段1において、前記第1処理実行手段は、第4処理(当選確率設定処理におけるS303〜S308、開始前準備処理S604〜S620)を行う第4処理実行手段(CPU102)と、前記第4処理が終了した場合に規定条件(当選確率設定処理におけるスタートレバー41の操作、開始待ち処理における開始指令の発生)が成立したか否かの判定処理(当選確率設定処理におけるS305、開始待ち処理におけるS620)を行う判定処理実行手段(CPU102)と、前記規定条件が成立していない場合に前記第4処理に復帰させる処理を行う復帰処理実行手段(CPU102)と、前記規定条件が成立した場合に前記第4処理を終了させる処理を行う第4処理終了実行手段(CPU102)と、を備え、前記第4処理実行手段が、前記特定処理実行手段及び前記第3処理実行手段を有することを特徴とする遊技機。
本手段によれば、規定条件が成立するまで繰り返し行われる第4処理があり、当該第4処理内で特定処理及び第3処理が行われる。かかる構成とすることにより、遊技機が誤動作することを回避することが可能となる。仮に、第3処理の前段階で特定処理を行わない構成とした場合、状況確認処理を行ってから次に状況確認処理を行うまでの期間に第4処理を複数回行う可能性が考えられ、前記期間に第4処理を複数回行った場合、状況確認処理の同じ処理結果を用いて第3処理を複数回行うこととなる。これは、操作手段の1回の操作に対して対応する動作を複数回行うこととなり、遊技者等の意図しない動作となる可能性がある。一方、第3処理の前に特定処理を行う構成においては、第4処理を繰り返し行う場合であっても状況確認処理が少なくとも1回行われるのを待った上で第3処理を行うことができるため、上記懸念を好適に解消することができる。
手段5.上記手段4において、遊技者等により操作される所定操作手段(スタートレバー41)と、前記所定操作手段が操作されたことに基づいて前記第1信号を出力するとともに、前記所定操作手段が操作されていないことに基づいて前記第1信号を非出力とする所定信号出力手段(スタート検出センサ41a)と、を備え、前記判定処理実行手段は、前記所定信号出力手段から前記第1信号が出力されたことに基づいて前記規定条件が成立したと判定することを特徴とする遊技機。
本手段によれば、所定操作手段が操作されたことに基づいて規定条件が成立する。かかる構成においては、規定条件の成立タイミングが遊技者等による所定操作手段の操作に依存することとなり、所定操作手段がいつ操作されるのかによって第4処理の繰り返し回数が変化することとなる。このため、第4処理内で行われる第3処理の前で特定処理を行う構成とすることにより、遊技機が誤動作することを好適に回避することが可能となる。
手段6.上記手段1乃至手段5のいずれかにおいて、前記第3処理実行手段は、前記第3処理として、前記状況確認処理の処理結果が前記第1信号の入力を示す処理結果である場合に前記操作手段の操作がなされたと判定する処理を行い、前記状況確認処理の処理結果が前記第1信号の非入力を示す処理結果である場合に前記操作手段の操作がなされていないと判定する処理を行うことを特徴とする遊技機。
本手段によれば、第3処理では、状況確認処理の処理結果を用いて操作手段が操作されたか否かを判定する処理を行う。このような第3処理の前段階で特定処理を行うことにより、操作手段の操作状況に即した状況確認処理の処理結果を用いて第3処理を行うことが可能となり、遊技者による操作と遊技の進行との間に生じるずれを低減させることが可能となる。
手段7.上記手段1乃至手段5のいずれかにおいて、前記状況確認処理の処理結果を記憶する記憶手段(RAM106のセンサ情報格納エリア112)を備え、前記記憶手段を、前記状況確認処理の最新の処理結果を記憶する第1記憶領域(第1エリア112a)と、前記最新の処理結果以前の処理結果を記憶する第2記憶領域(第2エリア112b、第3エリア112c)と、を有する構成としたことを特徴とする遊技機。
本手段によれば、記憶手段には、状況確認処理の最新の処理結果と、それ以前の処理結果とが記憶される。かかる構成とすることにより、第1信号が出力状態から非出力状態に切り替わったことや非出力状態から出力状態に切り替わったこと、すなわち信号入力状況の履歴を記憶手段に記憶することが可能となる。
手段8.上記手段7において、前記第3処理実行手段は、前記第1記憶領域に記憶された情報と、前記第2記憶領域に記憶された情報と、を用いて前記第3処理を行うことを特徴とする遊技機。
本手段によれば、信号入力状況の履歴を用いて第3処理が行われる。かかる構成とすることにより、操作手段の操作が開始されたタイミング又は操作手段の操作が終了したタイミングを用いて第3処理を行うことが可能となる。また特に、手段2乃至手段5のいずれかの構成に適用した場合には、繰り返し第3処理を行った場合であってもその都度信号入力状況の履歴が変化するため、遊技機が誤動作することを好適に回避することが可能となる。
手段9.上記手段8において、前記第3処理実行手段は、前記第3処理として、前記第1記憶領域及び前記第2記憶領域に記憶された情報が予め定めた特定情報(「011」)である場合に前記操作手段の操作がなされたと判定する処理を行い、前記第1記憶領域及び前記第2記憶領域に記憶された情報が前記特定情報でない場合に前記操作手段の操作がなされていないと判定する処理を行うことを特徴とする遊技機。
本手段によれば、第3処理では、第1記憶領域及び第2記憶領域に記憶された情報が特定情報であるか否かによって操作手段が操作されたか否かを判定する処理を行う。このような第3処理の前段階で特定処理を行うことにより、操作手段の操作状況に即した状況確認処理の処理結果を用いて第3処理を行うことが可能となり、遊技者による操作と遊技の進行との間に生じるずれを低減させることが可能となる。
手段10.開始条件の成立を検出する開始条件検出手段(CPU102の開始指令が発生したと判断する機能S620)と、
前記開始条件が成立したことに基づいて抽選を行う抽選手段(CPU102の抽選処理機能S505)と、
前記開始条件が成立したことに基づいて絵柄の可変表示を開始させるとともに、前記抽選手段の抽選結果に基づいた停止結果となるよう前記絵柄の可変表示を終了させる表示制御手段(CPU102のリール制御処理機能)と、
前記抽選手段の抽選結果が当選であって特定停止結果(当選図柄の組合せが有効ライン上に停止する停止結果)となった場合、遊技者に特典(メダル払出、BB状態への移行等)を付与する特典付与手段(CPU102のメダル払出処理機能S507、BB状態処理機能S508等)と
を備え、前記開始条件が成立したことに基づいて遊技が開始され、前記絵柄の可変表示が終了したこと又は前記特典付与手段が前記特典を付与したことに基づいて前記遊技が終了する遊技機において、
遊技を進行させるべく操作される操作手段(クレジット投入スイッチ56〜58等)と、
前記操作手段が操作されたことに基づいて第1信号を出力するとともに、前記操作手段が操作されていないことに基づいて前記第1信号を非出力とする信号出力手段(クレジット投入検出センサ56a〜58a等)と、
第1処理(通常処理)を行う第1処理実行手段(CPU102)と、
前記信号出力手段からの信号入力状況を確認する状況確認処理(センサ監視処理S107)を含む第2処理(タイマ割込み処理)を定期的に行う第2処理実行手段(CPU102)と
を備え、
前記第1処理実行手段は、
特定処理(割込み待ち処理)を行う特定処理実行手段(CPU102)と、
前記特定処理が終了した場合、前記状況確認処理の処理結果を用いて遊技の進行に関わる第3処理(通常処理におけるS307、S606等)を行う第3処理実行手段(CPU102)と
を有し、
前記特定処理実行手段は、
前記特定処理を開始した後に前記第2処理が行われたか否かを確認する確認処理(割込み待ち処理におけるS407)を行う確認処理実行手段(CPU102)と、
前記確認処理実行手段が前記第2処理が行われたことを確認した場合、前記特定処理を終了させる終了手段(CPU102)と
を有することを特徴とする遊技機。
本手段によれば、第1処理と、定期的に行われる第2処理と、がある。第2処理は、信号出力手段からの信号入力状況を確認する状況確認処理を有している。第1処理は、第2処理が行われた場合に終了される特定処理と、特定処理が終了した場合に状況確認処理の処理結果を用いて行われる第3処理と、を有している。定期的に行われる第2処理において信号出力手段からの信号入力状況を確認する構成とすることにより、処理構成の簡略化を図ることが可能となる。また、特定処理を当該特定処理の開始後に第2処理が行われた場合に終了される構成とすることにより、特定処理が開始されてから終了されるまでの間に、少なくとも1回は第2処理を行うことができ、信号出力手段からの信号入力状況を確認することができる。さらに、特定処理が終了した場合に遊技の進行に関わる第3処理が行われる構成とすることにより、第2処理が終了してから第3処理が行われるまでの間隔を短縮させることが可能となる。以上の結果、操作手段の操作状況に即した状況確認処理の処理結果を用いて第3処理を行うことが可能となり、遊技者による操作という所定条件の検出と遊技の進行との間に生じるずれを低減させることが可能となる。
手段11.所定条件を検出する検出手段(クレジット投入スイッチ56〜58等)と、
前記所定条件の検出に基づいて第1信号を出力する信号出力手段(クレジット投入検出センサ56a〜58a等)と
を備え、前記信号出力手段からの信号入力状況に基づいて遊技を進行させる遊技機において、
第1処理(通常処理)を行う第1処理実行手段(CPU102)と、
前記信号出力手段からの信号入力状況を確認する状況確認処理(センサ監視処理S107)を含む第2処理(タイマ割込み処理)を定期的に行う第2処理実行手段(CPU102)と
を備え、
前記第1処理実行手段は、
特定処理(割込み待ち処理)を行う特定処理実行手段(CPU102)と、
前記特定処理が終了した場合、前記状況確認処理の処理結果を用いて遊技の進行に関わる第3処理(通常処理におけるS307、S606等)を行う第3処理実行手段(CPU102)と
を有し、
前記特定処理実行手段は、
前記特定処理を開始した後に前記第2処理が行われたか否かを確認する確認処理(割込み待ち処理におけるS407)を行う確認処理実行手段(CPU102)と、
前記確認処理実行手段が前記第2処理が行われたことを確認した場合、前記特定処理を終了させる終了手段(CPU102)と
を有することを特徴とする遊技機。
本手段によれば、第1処理と、定期的に行われる第2処理と、がある。第2処理は、信号出力手段からの信号入力状況を確認する状況確認処理を有している。第1処理は、第2処理が行われた場合に終了される特定処理と、特定処理が終了した場合に状況確認処理の処理結果を用いて行われる第3処理と、を有している。定期的に行われる第2処理において信号出力手段からの信号入力状況を確認する構成とすることにより、処理構成の簡略化を図ることが可能となる。また、特定処理を当該特定処理の開始後に第2処理が行われた場合に終了される構成とすることにより、特定処理が開始されてから終了されるまでの間に、少なくとも1回は第2処理を行うことができ、信号出力手段からの信号入力状況を確認することができる。さらに、特定処理が終了した場合に遊技の進行に関わる第3処理が行われる構成とすることにより、第2処理が終了してから第3処理が行われるまでの間隔を短縮させることが可能となる。以上の結果、所定条件の検出に即した状況確認処理の処理結果を用いて第3処理を行うことが可能となり、所定条件の検出と遊技の進行との間に生じるずれを低減させることが可能となる。
以下、遊技機の一種である回胴式遊技機、具体的にはスロットマシンに適用した場合の一実施の形態を、図面に基づいて詳細に説明する。図1はスロットマシン10の正面図、図2はスロットマシン10の前面扉12を閉じた状態の斜視図、図3はスロットマシン10の前面扉12を開いた状態の斜視図、図4は前面扉12の背面図、図5は筐体11の正面図である。
図1〜図5に示すように、スロットマシン10は、その外殻を形成する筐体11を備えている。筐体11は、全体として前面を開放した箱状に形成されており、遊技ホールへの設置の際にいわゆる島設備に対し釘を打ち付ける等して取り付けられる。
筐体11の前面側には、前面扉12が開閉可能に取り付けられている。すなわち、筐体11には、その正面から見て左側部に上下一対の支軸13a,13bが設けられており、前面扉12には、各支軸13a,13bと対応する位置に軸受部14a,14bが設けられている。そして、各軸受部14a,14bに各支軸13a,13bが挿入された状態では、前面扉12が筐体11に対して両支軸13a,13bを結ぶ上下方向へ延びる開閉軸線を中心として回動可能に支持され、前面扉12の回動によって筐体11の前面開放側を開放したり閉鎖したりすることができるようになっている。また、前面扉12は、その裏面に設けられた施錠装置20によって開放不能な施錠状態とされる。前面扉12の右端側上部には、施錠装置20と一体化されたキーシリンダ21が設けられており、キーシリンダ21に対する所定のキー操作によって前記施錠状態が解除されるように構成されている。
前面扉12の中央部上寄りには、遊技者に遊技状態を報知する遊技パネル25が設けられている。遊技パネル25には、縦長の3つの表示窓26L,26M,26Rが横並びに形成されており、各表示窓26L,26M,26Rを通じてスロットマシン10の内部が視認可能な状態となっている。なお、各表示窓26L,26M,26Rを1つにまとめて共通の表示窓としてもよい。
図3に示すように、筐体11は仕切り板30によりその内部が上下2分割されており、仕切り板30の上部には、可変表示手段を構成するリールユニット31が取り付けられている。リールユニット31は、円筒状(円環状)にそれぞれ形成された左リール32L,中リール32M,右リール32Rを備えている。各リール32L,32M,32Rは、その中心軸線が当該リールの回転軸線となるように回転可能に支持されている。各リール32L,32M,32Rの回転軸線は略水平方向に延びる同一軸線上に配設され、それぞれのリール32L,32M,32Rが各表示窓26L,26M,26Rと1対1で対応している。したがって、各リール32L,32M,32Rの表面の一部はそれぞれ対応する表示窓26L,26M,26Rを通じて視認可能な状態となっている。また、リール32L,32M,32Rが正回転すると、各表示窓26L,26M,26Rを通じてリール32L,32M,32Rの表面は上から下へ向かって移動しているかのように映し出される。
ここで、リールユニット31の構成を簡単に説明する。
各リール32L,32M,32Rは、それぞれがステッピングモータに連結されており、各ステッピングモータの駆動により各リール32L,32M,32Rが個別に、すなわちそれぞれ独立して回転駆動し得る構成となっている。ステッピングモータは、例えば504パルスの駆動信号(以下、励磁パルスとも言う。)を与えることにより1回転されるように設定されており、この励磁パルスによってステッピングモータの回転位置、すなわちリールの回転位置が制御される。また、リールユニット31には、リールが1回転したことを検出するためのリールインデックスセンサが各リール32L,32M,32Rに設置されている。そして、リールインデックスセンサからは、リールが1回転したことを検出した場合、その検出の都度、後述する主制御装置101に検出信号が出力されるようになっている。このため主制御装置101は、リールインデックスセンサの検出信号と、当該検出信号が入力されるまでに出力した励磁パルス数とに基づいて、各リール32L,32M,32Rの角度位置を1回転毎に確認するとともに補正することができる。
各リール32L,32M,32Rの外周面には、その長辺方向(周回方向)に、識別情報としての図柄が複数個描かれている。より具体的には、21個の図柄が等間隔に描かれている。このため、所定の位置においてある図柄を次の図柄へ切り替えるには、24パルス(=504パルス÷21図柄)の励磁パルスの出力を要する。また、主制御装置101は、リールインデックスセンサの検出信号が入力されてから出力した励磁パルス数により、表示窓26L,26M,26Rから視認可能な状態となっている図柄を把握したり、表示窓26L,26M,26Rから視認可能な位置に所定の図柄を停止させたりする制御を行うことができる。
次に、各リール32L,32M,32Rに描かれている図柄について説明する。
図6には、左リール32L,中リール32M,右リール32Rの図柄配列が示されている。同図に示すように、各リール32L,32M,32Rには、それぞれ21個の図柄が一列に配置されている。また、各リール32L,32M,32Rに対応して番号が0〜20まで付されているが、これら番号は主制御装置101が表示窓26L,26M,26Rから視認可能な状態となっている図柄を認識するための番号であり、リール32L,32M,32Rに実際に付されているわけではない。但し、以下の説明では当該番号を使用して説明する。
図柄としては、「星」図柄(例えば、左リール32Lの20番目)、「チェリー」図柄(例えば、左リール32Lの19番目)、「青年」図柄(例えば、左リール32Lの18番目)、「ベル」図柄(例えば、左リール32Lの17番目)、「リプレイ」図柄(例えば、左リール32Lの16番目)、「白7」図柄(例えば、左リール32Lの15番目)、「スイカ」図柄(例えば、左リール32Lの14番目)、「赤7」図柄(例えば、左リール32Lの3番目)の8種類がある。そして、図6に示すように、各リール32L,32M,32Rにおいて各種図柄の数や配置順序は全く異なっている。
各表示窓26L,26M,26Rは、対応するリールに付された21個の図柄のうち図柄全体を視認可能となる図柄が3個となるように形成されている。このため、各リール32L,32M,32Rがすべて停止している状態では、3×3=9個の図柄が表示窓26L,26M,26Rを介して視認可能な状態となる。
本スロットマシン10では、これら9個の図柄が視認可能となる各位置を結ぶようにして、横方向へ平行に3本、斜め方向へたすき掛けに2本、計5本の組合せラインが設定されている。より詳しくは、図7に示すように、横方向の組合せラインとして、各リール32L,32M,32Rの上段図柄を結んだ上ラインL1と、各リール32L,32M,32Rの中段図柄を結んだ中ラインL2と、各リール32L,32M,32Rの下段図柄を結んだ下ラインL3と、が設定されている。また、斜め方向の組合せラインとして、左リール32Lの上段図柄,中リール32Mの中段図柄,右リール32Rの下段図柄を結んだ右下がりラインL4と、左リール32Lの下段図柄,中リール32Mの中段図柄,右リール32Rの上段図柄を結んだ右上がりラインL5と、が設定されている。そして、有効化された組合せライン、すなわち有効ライン上に図柄が所定の組合せで停止した場合には、入賞成立として、遊技媒体たるメダルが所定数払い出される特典が付与されたり、遊技状態が移行される特典が付与されたりするようになっている。
図8には、入賞となる図柄の組合せと、入賞となった場合に付与される特典とが示されている。
メダル払出が行われる小役入賞としては、ベル入賞と、スイカ入賞と、1枚役入賞と、チェリー入賞とがある。各リール32L,32M,32Rの「ベル」図柄が有効ライン上に並んで停止した場合、ベル入賞として8枚のメダル払出が行われ、各リール32L,32M,32Rの「スイカ」図柄が有効ライン上に並んで停止した場合、スイカ入賞として6枚のメダル払出が行われ、有効ライン上に左から順に「赤7」図柄,「青年」図柄,「白7」図柄と並んで停止した場合、1枚役入賞として1枚のメダル払出が行われる。また、左リール32Lの「チェリー」図柄が有効ライン上に停止した場合、チェリー入賞として2枚のメダル払出が行われる。すなわち、チェリー入賞の場合には、中リール32Mと右リール32Rについて、有効ライン上に停止する図柄がどのような図柄であっても良い。換言すれば、左リール32Lの「チェリー」図柄と、中リール32M及び右リール32Rの任意の図柄との組合せが有効ライン上に停止した場合、チェリー入賞が成立するとも言える。したがって、左リール32Lの複数の有効ラインが重なる位置(具体的には上段と下段)に「チェリー」図柄が停止した場合には、各有効ライン上にてチェリー入賞が成立することとなり、結果として4(=2×2)枚のメダル払出が行われる。本実施の形態では、左リール32Lの「チェリー」図柄が上段又は下段に停止してチェリー入賞が成立するようになっているため、チェリー入賞が成立した場合には4枚のメダル払出が行われる。
遊技状態の移行のみが行われる状態移行入賞としては、BB入賞がある。各リール32L,32M,32Rの「赤7」図柄が有効ライン上に並んで停止した場合、BB入賞として遊技状態がビッグボーナス状態(以下、「BB状態」と言う。)に移行する。
メダル払出や遊技状態の移行以外の特典が付与される入賞としては、再遊技入賞がある。各リール42L,42M,42Rの「リプレイ」図柄が有効ライン上に並んで停止した場合、再遊技入賞として、メダル払出や遊技状態の移行は行われないものの、メダルを投入することなく次ゲームの遊技を行うことが可能な再遊技の特典が付与される。
なお以下では、各入賞と対応する図柄の組合せを入賞図柄の組合せとも言う。例えば、再遊技図柄の組合せとは、再遊技入賞となる図柄の組合せ、すなわち「リプレイ」図柄,「リプレイ」図柄,「リプレイ」図柄の組合せである。また、各入賞と対応する各リール32L,32M,32Rの図柄を入賞図柄とも言う。例えば、1枚役図柄とは、左リール32Lにおいては「赤7」図柄であり、中リール32Mにおいては「青年」図柄であり、右リール32Rにおいては「白7」図柄である。
遊技パネル25の下方左側には、各リール32L,32M,32Rの回転を開始させるために操作されるスタートレバー41が設けられている。スタートレバー41はリール32L,32M,32Rを回転開始、すなわち図柄の可変表示を開始させるべく操作される開始操作手段又は始動操作手段を構成する。スタートレバー41は、遊技者がゲームを開始するときに手で押し操作するレバーであり、手が離れたあと初期位置に自動復帰する。ちなみに、本スロットマシン10におけるスタートレバー41は、手が離れたあと初期位置に自動復帰するまでに数10msecを要するように構成されている。所定数のメダルが投入されている状態でスタートレバー41を操作された場合、各リール32L,32M,32Rが回転を開始するようになっている。
スタートレバー41の右側には、回転している各リール32L,32M,32Rを個別に停止させるために操作されるボタン状のストップスイッチ42〜44が設けられている。各ストップスイッチ42〜44は、停止対象となるリール32L,32M,32Rに対応する表示窓26L,26M,26Rの直下にそれぞれ配置されている。すなわち、左ストップスイッチ42が操作された場合には左リール32Lの回転が停止し、中ストップスイッチ43が操作された場合には中リール32Mの回転が停止し、右ストップスイッチ44が操作された場合には右リール32Rの回転が停止する。ストップスイッチ42〜44はリール32L,32M,32Rの回転に基づく図柄の可変表示を停止させるべく操作される停止操作手段を構成する。ストップスイッチ42〜44は、左リール32Lが回転を開始してから所定時間を経過した場合に、停止操作可能な状態となるようになっている。ストップスイッチ42〜44の内部には図示しないランプが設けられており、停止操作可能な状態ではランプが点灯表示され、リールが停止している等の停止操作不可能な状態ではランプが消灯表示されるようになっている。
表示窓26L,26M,26Rの下方右側には、メダルを投入するためのメダル投入口45が設けられている。メダル投入口45は遊技媒体を入力する入力手段を構成する。また、メダル投入口45が遊技者によりメダルを直接投入するという動作を伴う点に着目すれば、遊技媒体を直接入力する直接入力手段を構成するものとも言える。
メダル投入口45から投入されたメダルは、前面扉12の背面に設けられた通路切替手段としてのセレクタ46によって貯留用通路47か排出用通路48のいずれかへ導かれる。より詳しくは、セレクタ46にはメダル通路切替ソレノイド46aが設けられており、そのメダル通路切替ソレノイド46aの非励磁時にはメダルが排出用通路48側に導かれ、前記メダル通路切替ソレノイド46aの励磁時にはメダルが貯留用通路47側に導かれるようになっている。貯留用通路47に導かれたメダルは、筐体11の内部に収納されたホッパ装置51へと導かれる。一方、排出用通路48に導かれたメダルは、前面扉12の前面下部に設けられたメダル排出口49からメダル受け皿50へと導かれ、遊技者に返還される。
ホッパ装置51は、メダルを貯留する貯留タンク52と、メダルを遊技者に払い出す払出装置53とより構成されている。払出装置53は、図示しないメダル払出用回転板を回転させることにより、排出用通路48に設けられた開口48aへメダルを排出し、排出用通路48を介してメダル受け皿50へメダルを払い出すようになっている。また、ホッパ装置51の右方には、貯留タンク52内に所定量以上のメダルが貯留されることを回避するための予備タンク54が設けられている。ホッパ装置51の貯留タンク52内部には、この貯留タンク52から予備タンク54へとメダルを排出する誘導プレート52aが設けられている。したがって、誘導プレート52aが設けられた高さ以上にメダルが貯留された場合、かかるメダルが予備タンク54に貯留されることとなる。
メダル投入口45の下方には、ボタン状の返却スイッチ55が設けられている。メダル投入口45に投入されたメダルがセレクタ46内に詰まった状況下で返却スイッチ55を操作された場合、セレクタ46が機械的に連動して動作され、当該セレクタ46内に詰まったメダルがメダル排出口49から返却されるようになっている。
表示窓26L,26M,26Rの下方左側には、遊技媒体としてのクレジットされた仮想メダルを一度に3枚投入するための第1クレジット投入スイッチ56が設けられている。また、第1クレジット投入スイッチ56の左方には、第2クレジット投入スイッチ57と、第3クレジット投入スイッチ58とが設けられている。第2クレジット投入スイッチ57は仮想メダルを一度に2枚投入するためのものであり、第3クレジット投入スイッチ58は仮想メダルを1枚投入するためのものである。各クレジット投入スイッチ56〜58は前記メダル投入口45とともに遊技媒体を入力する入力手段を構成する。また、メダル投入口45が遊技者によりメダルを直接投入するという動作を伴うのに対し、各クレジット投入スイッチ56〜58は貯留記憶に基づく仮想メダルの投入という動作を伴うに過ぎない点に着目すれば、遊技媒体を間接入力する間接入力手段を構成するものとも言える。各クレジット投入スイッチ56〜58の内部には図示しないランプが設けられており、投入操作可能な状態ではランプが点灯表示され、投入操作不可能な状態ではランプが消灯表示されるようになっている。
スタートレバー41の左方には、精算スイッチ59が設けられている。すなわち、本スロットマシン10では、所定の最大値(メダル50枚分)となるまでの余剰の投入メダルや入賞時の払出メダルを仮想メダルとして貯留記憶するクレジット機能を有しており、仮想メダルが貯留記憶されている状況下で精算スイッチ59を操作された場合、仮想メダルが現実のメダルとしてメダル排出口49から払い出されるようになっている。この場合、クレジットされた仮想メダルを現実のメダルとして払い出すという機能に着目すれば、精算スイッチ59は貯留記憶された遊技媒体を実際に払い出すための精算操作手段を構成するものとも言える。
遊技パネル25の表示窓26L,26M,26R下方には、クレジットされている仮想メダル数を表示するクレジット表示部60と、BB状態が終了するまでに払い出される残りのメダル数を表示する残払出枚数表示部61と、入賞時に払い出したメダルの枚数を表示する払出枚数表示部62とがそれぞれ設けられている。これら表示部60〜62は7セグメント表示器によって構成されているが、液晶表示器等によって代替することは当然可能である。
ここで、メダルのベット数と、有効化される組合せラインとの関係を、図7を用いて説明する。遊技の開始時にメダル投入口45からメダルが投入されるとベットとなる。
1枚目のメダルがメダル投入口45に投入された場合、ベット数は1となり、中ラインL2が有効化される。2枚目のメダルがメダル投入口45に投入された場合、ベット数は2となり、中ラインL2に加えて上ラインL1と下ラインL3を含む合計3本の組合せラインが有効化される。3枚目のメダルがメダル投入口45に投入された場合、ベット数は3となり、組合せラインL1〜L5の全てが有効化される。
なお、4枚以上のメダルがメダル投入口45に投入された場合、そのときに貯留記憶されている仮想メダルが50枚未満であれば、3枚を超える余剰メダルはスロットマシン10内部に貯留され、クレジット表示部60の仮想メダル数が加算表示される。一方、仮想メダル数が50枚のとき又は50枚に達したときには、セレクタ46により貯留用通路47から排出用通路48への切替がなされ、メダル排出口49からメダル受け皿50へと余剰メダルが返却される。
また、仮想メダルが貯留記憶されており、遊技の開始時に第1〜第3クレジット投入スイッチ56〜58のいずれかが操作された場合にも、仮想メダルが投入されたこととなりベットとなる。なお、第1〜第3クレジット投入スイッチ56〜58のいずれかが操作された場合については、投入された仮想メダルの枚数分だけクレジット表示部60に表示されている仮想メダル数が減算されることを除き、メダル投入口45からメダルを投入した場合と同じため、説明を省略する。
ちなみに、第1〜第3クレジット投入スイッチ56〜58のいずれかが操作された場合に投入されるべき仮想メダルが貯留記憶されていない場合、例えばクレジット表示部60の表示が2のときに第1クレジット投入スイッチ56が操作された場合等には、クレジット表示部60の数値が全て減算されて0となり、投入可能な仮想メダル分だけベットされる。
前面扉12の上部には、遊技の進行に伴い点灯したり点滅したりする上部ランプ63と、遊技の進行に伴い種々の効果音を鳴らしたり、遊技者に遊技状態を報知したりする左右一対のスピーカ64と、遊技者に各種情報を与える補助表示部65とが設けられている。補助表示部65は、遊技の進行に伴って各種表示演出を実行するためのものであり、各リール32L,32M,32Rによる遊技を主表示部によるものと考えることができることから、本実施形態では補助表示部65と称している。補助表示部65の背面には、上部ランプ63やスピーカ64、補助表示部65を駆動させるための表示制御装置81が設けられている。
筐体11の内部においてホッパ装置51の左方には、電源ボックス70が設けられている。電源ボックス70は、その内部に電源装置91を収容するとともに、電源スイッチ71やリセットスイッチ72、設定キー挿入孔73などを備えている。電源スイッチ71は、主制御装置101を始めとする各部に電源を供給するための起動スイッチである。リセットスイッチ72は、スロットマシン10のエラー状態をリセットするためのスイッチである。また、設定キー挿入孔73は、ホール管理者などがメダルの出玉調整を行うためのものである。すなわち、ホール管理者等が設定キーを設定キー挿入孔73へ挿入してON操作することにより、スロットマシン10の当選確率を設定できるようになっている。なお、リセットスイッチ72は、エラー状態をリセットする場合の他に、スロットマシン10の当選確率を変更する場合にも操作される。
リールユニット31の上方には、遊技を統括管理する主制御装置101が筐体11に取り付けられている。
次に、本スロットマシン10の電気的構成について、図9のブロック図に基づいて説明する。
主制御装置101には、演算処理手段であるCPU102を中心とするマイクロコンピュータが搭載されている。CPU102には、電源装置91の他に、8.000MHzの所定周波数の矩形波(第1クロック信号)を出力する第1クロック回路103や、入出力ポート104(具体的には、コネクタ、ドライバIC、チップセレクトIC等により構成される入出力ポート)、基礎乱数を生成するための基礎乱数生成器150などが内部バスを介して接続されている。かかる主制御装置101は、スロットマシン10に内蔵されるメイン基盤としての機能を果たすものである。
主制御装置101の入力側には、リールユニット31(より詳しくは各リール32L,32M,32Rが1回転したことを個別に検出するリールインデックスセンサ)、スタートレバー41の操作を検出するスタート検出センサ41a、各ストップスイッチ42〜44の操作を個別に検出するストップ検出センサ42a〜44a、メダル投入口45から投入されたメダルを検出する投入メダル検出センサ45a、ホッパ装置51から払い出されるメダルを検出する払出検出センサ51a、各クレジット投入スイッチ56〜58の操作を個別に検出するクレジット投入検出センサ56a〜58a、精算スイッチ59の操作を検出する精算検出センサ59a、リセットスイッチ72の操作を検出するリセット検出センサ72a、設定キー挿入孔73に設定キーが挿入されてON操作されたことを検出する設定キー検出センサ73a等の各種センサが接続されており、これら各種センサからの信号は入出力ポート104を介してCPU102へ出力されるようになっている。
なお、投入メダル検出センサ45aは、実際には複数個のセンサにより構成されている。すなわち、メダル投入口45からホッパ装置51に至る貯留用通路47は、メダルが1列で通過可能なように形成されている。そして、貯留用通路47には、第1センサが設けられるとともに、それよりメダルの幅以上離れた下流側に第2センサ及び第3センサが近接(少なくとも一時期において同一メダルを同時に検出する状態が生じる程度の近接)して設けられている。投入メダル検出センサ45aは、これら第1〜第3センサによって構成されている。主制御装置101は、第1センサから第2センサに至る時間を監視し、その経過時間が所定時間を越えた場合にはメダル詰まり又は不正があったものとみなしてエラー状態とする。エラー状態となった場合には、エラー状態報知が行われるとともに、エラー状態が解除されるまでの間、遊技者による操作が無効化される。また、主制御装置101は、第2センサと第3センサとがオンオフされる順序をも監視している。具体的には、第2,第3センサが共にオフ、第2センサのみオン、第2,第3センサが共にオン、第3センサのみオン、第2,第3センサが共にオフという順序通りになった場合で、かつ各オンオフ切替に移行する時間が所定時間内である場合にのみメダルが正常に取り込まれたと判断し、それ以外の場合はエラー状態とする。このようにするのは、貯留用通路47でのメダル詰まりの他、メダルを投入メダル検出センサ45a付近で往復動させてメダル投入と誤認させる不正を防止するためである。
また、主制御装置101の入力側には、入出力ポート104を介して電源装置91が接続されている。電源装置91には、主制御装置101を始めとしてスロットマシン10の各電子機器に駆動電力を供給する電源部91aや、停電監視回路91bなどが搭載されている。
停電監視回路91bは電源の遮断状態を監視し、停電時はもとより、電源スイッチ71による電源遮断時に停電信号を生成するためのものである。そのため停電監視回路91bは、電源部91aから出力されるこの例では直流12ボルトの安定化駆動電圧を監視し、この駆動電圧が例えば10ボルト未満まで低下したとき電源が遮断されたものと判断して停電信号が出力されるように構成されている。停電信号はCPU102と入出力ポート104のそれぞれに供給され、CPU102ではこの停電信号を認識することにより後述する停電時処理が実行される。また、この停電信号は表示制御装置81にも供給されるように構成されている。
電源部91aは、出力電圧が10ボルト未満まで低下した場合でも、主制御装置101などの制御系において駆動電圧として使用される5ボルトの安定化電圧が出力されるように構成されている。この安定化電圧が出力される時間としては、主制御装置101による停電時処理を実行するに十分な時間が確保されている。
主制御装置101の出力側には、リールユニット31(より詳しくは各リール32L,32M,32Rを回転させるためのステッピングモータ)、セレクタ46に設けられたメダル通路切替ソレノイド46a、ホッパ装置51、クレジット表示部60、残払出枚数表示部61、払出枚数表示部62、表示制御装置81、図示しないホール管理装置などに情報を送信できる外部集中端子板121等が入出力ポート104を介して接続されている。また、図示は省略するが、主制御装置101の出力側には、ストップスイッチ42〜44の内部に設けられたランプや、クレジット投入スイッチ56〜58の内部に設けられたランプ等も、入出力ポート104を介して接続されている。
表示制御装置81は、上部ランプ63やスピーカ64、補助表示部65を駆動させるための制御装置であり、これらを駆動させるためのCPU、ROM、RAM等が一体化された基板を備えている。そして、主制御装置101からの信号を受け取った上で、表示制御装置81が独自に上部ランプ63、スピーカ64及び補助表示部65を駆動制御する。したがって、表示制御装置81は、遊技を統括管理するメイン基盤たる主制御装置101との関係では補助的な制御を実行するサブ基盤となっている。なお、各種表示部60〜62も表示制御装置81が駆動制御する構成としてもよい。
上述したCPU102は、1チップCPUであって、このCPU102によって実行される各種の制御プログラムや固定値データを記憶したROM105と、このROM105に記憶されている制御プログラムを実行するにあたって各種のデータを一時的に記憶する作業エリアを確保するためのRAM106の他に、図示はしないが周知のように割込み回路を始めとしてタイマ回路、データ送受信回路などスロットマシン10において必要な各種の処理回路が内蔵されている。ROM105とRAM106によって記憶手段としてのメインメモリが構成され、図12以降のフローチャートに示される各種処理を実行するためのプログラムは、制御プログラムの一部として上述したROM105に記憶されている。
RAM106には、図10に示すように、役の抽選結果を記憶するための当選フラグ格納エリア106a、各リール32L,32M,32Rの停止制御を行う場合に用いるスベリテーブルを記憶するためのスベリテーブル格納エリア106b、BB状態等の遊技状態を記憶するための状態情報格納エリア106cの他に、役の抽選を行う際に用いる乱数を記憶するための乱数格納エリア110、各種カウンタとしての機能を有するカウンタエリア111、上述した各種センサからの信号入力状況を記憶するためのセンサ情報格納エリア112等の各種エリアが確保されている。カウンタエリア111は、乱数を作成する際に用いる第1カウンタ111a及び第2カウンタ111b、後述する割込み待ち処理にて用いる更新カウンタ111c、基礎乱数の取得タイミングを決定するための遅延カウンタ111d、クレジット枚数を記憶するためのクレジットカウンタ(図示略)等により構成されている。センサ情報格納エリア112は、リールインデックス検出用エリア、スタート検出用エリア、左ストップ検出用エリア、中ストップ検出用エリア、右ストップ検出用エリア、投入メダル検出用エリア、払出検出用エリア、第1クレジット投入検出用エリア、第2クレジット投入検出用エリア、第3クレジット投入検出用エリア、精算検出用エリア、リセット検出用エリア、設定キー検出用エリア等により構成されている。これら各検出用エリアは、対応する検出センサからの信号入力有無の履歴を記憶できるようになっており、第1エリア112aと、第2エリア112bと、第3エリア112cと、の3つの記憶エリアから構成されている。各検出用エリアは1バイト構成となっており、下位側の3ビットが上記各記憶エリアと対応付けられている。より詳しくは、下位ビットから順に第1エリア112a、第2エリア112b、第3エリア112cと対応付けられている。
また、RAM106は、スロットマシン10の電源が遮断された後においても電源装置91からバックアップ電圧が供給されてデータを保持(バックアップ)できる構成となっており、当該RAM106には、データを保持するためのバックアップエリアが設けられている。バックアップエリアは、停電等の発生により電源が遮断された場合において、電源遮断時(電源スイッチ71の操作による電源遮断をも含む。以下同様)のスタックポインタの値を記憶しておくためのエリアであり、停電解消時(電源スイッチ71の操作による電源投入をも含む。以下同様)には、バックアップエリアの情報に基づいてスロットマシン10の状態が電源遮断前の状態に復帰できるようになっている。バックアップエリアへの書き込みは停電時処理(図12参照)によって電源遮断時に実行され、バックアップエリアに書き込まれた各値の復帰は電源投入時のメイン処理(図14参照)において実行される。
図9の説明に戻り、CPU102のNMI端子(ノンマスカブル割込端子)には、停電等の発生による電源遮断時に、停電監視回路91bからの停電信号が入力されるように構成されている。そして、電源遮断時には、停電フラグ生成処理としてのNMI割込み処理が即座に実行されるようになっている。
ここで、基礎乱数生成器150,スタート検出センサ41a及びCPU102の接続関係を、図11のブロック図に基づいてより詳細に説明する。
基礎乱数生成器150の入力側には、7.915MHzの所定周波数の矩形波(第2クロック信号)を出力する第2クロック回路151と、CPU102が接続されている。基礎乱数生成器150の出力側には、CPU102が接続されている。
基礎乱数生成器150は、カウンタ150aとラッチ回路150bを有するハードウェアである。カウンタ150aは、16ビットのフリーランカウンタであり、0〜65535の範囲内で順に1ずつ加算されると共に、最大値(つまり65535)に達した後0に戻る構成となっている。カウンタ150aには第2クロック回路151が接続されており、当該第2クロック回路151からの第2クロック信号が入力されると、カウンタ150aのカウント値が更新されるようになっている。ラッチ回路150bは、複数のDフリップフロップ回路を組み合わせて構成されており、カウンタ150aのカウント値をラッチ(保持)できるようになっている。ラッチ回路150bにはCPU102が接続されており、当該CPU102からのラッチ信号が入力されると、そのタイミングにおけるカウンタ150aのカウント値がラッチ回路150bにラッチされる。そして、ラッチされたカウント値が基礎乱数としてCPU102内蔵の入力ポートに対して出力されるようになっている。
CPU102には、第2クロック回路151を監視するための監視回路152が接続されている。監視回路152は、Dフリップフロップ回路により構成されている。すなわち、監視回路152は、入力端子としてデータ端子(D端子)とクロック端子(CLK端子)を有し、出力端子として正論理出力端子(Q端子)と負論理出力端子(Qバー端子)を有している。D端子には、スタート検出センサ41aが波形整形回路153及び入出力ポート104を介して接続されており、CLK端子には、第2クロック回路151が反転器154を介して接続されている。また、Q端子は、非接続とされており、Qバー端子は、CPU102内蔵の入力ポートと接続されている。
スタート検出センサ41aは、スタートレバー41が操作されると操作信号を出力する。より詳しくは、スタート検出センサ41aは、スタートレバー41が初期位置から移動した場合に操作信号を出力し、スタートレバー41が初期位置に復帰した場合に操作信号の出力を停止する。波形整形回路153は、シュミットトリガ回路により構成されている。波形整形回路153には閾値が設定されており、波形整形回路153は、スタート検出センサ41aから出力された操作信号が電圧上昇側閾値よりも大きくなった場合に検出信号を監視回路152に対して出力し、操作信号が電圧降下側閾値よりも小さくなった場合に検出信号の出力を停止する。つまり、波形整形回路153とは、スタート検出センサ41aから出力される操作信号のなまり(立ち上がり遅れ及び立ち下がり遅れ)を整形するための回路である。なお、波形整形回路153は、入出力ポート104と監視回路152との間に接続されていても良く、波形整形回路153を主制御装置101上に設けることも可能である。
監視回路152は、反転された第2クロック信号(反転クロック信号)がCLK端子に入力されたタイミング(より詳しくは反転クロック信号の立ち上がりのタイミング)で操作信号(より詳しくは波形整形回路153からの検出信号)が入力されている場合、CPU102に対して開始信号を出力する。開始信号は、反転クロック信号がCLK端子に入力されたタイミングで操作信号が入力されていない状態となるまで継続出力される。換言すれば、監視回路152は、反転クロック信号がCLK端子に入力されるまで操作信号の入力状態を保持しているとも言える。
CPU102の入力側には、監視回路152のQバー端子の他に、基礎乱数生成器150のラッチ回路150bと、第1クロック信号を出力する第1クロック回路103が接続されている。また、CPU102の出力側には、基礎乱数生成器150のラッチ回路150bが接続されている。第1クロック回路103は、8.000MHzの所定周波数の矩形波を出力するものであり、第2クロック回路151と同期しないように構成されている。CPU102は、第1クロック信号が入力された場合に各種動作を行うようになっている。例えば、第1クロック信号の入力に基づいて開始信号の入力有無を判別し、開始信号が入力されていることに基づいて基礎乱数生成器150にラッチ信号を出力するようになっている。そして、基礎乱数生成器150から出力されたカウント値を基礎乱数として取得するようになっている。開始信号の入力有無の判別についてより詳細に説明すると、CPU102は、監視回路152のQバー端子と接続されているため、Qバー端子からの入力信号がHレベルからLレベルに切り替っている場合に開始信号が入力されたと判別している。
続いて、主制御装置101のCPU102により実行される各制御処理について説明する。CPU102は、第1クロック回路103から第1クロック信号が入力されることに基づいて各種処理を行う。かかるCPU102の処理としては、大別して、電源投入に伴い起動されるメイン処理と、定期的に(本実施の形態では1.49msec周期で)起動されるタイマ割込み処理と、NMI端子への停電信号の入力に伴い起動されるNMI割込み処理とがある。以下では、説明の便宜上、はじめにタイマ割込み処理を説明し、その後にメイン処理を説明する。
図12は、主制御装置101で定期的に実行されるタイマ割込み処理のフローチャートであり、主制御装置101のCPU102により例えば1.49msecごとにタイマ割込みが発生する。
先ず、ステップS101に示すレジスタ退避処理では、後述する通常処理で使用しているCPU102内の全レジスタの値をRAM106のバックアップエリアに退避させる。ステップS102では停電フラグがセットされているか否かを確認し、停電フラグがセットされているときにはステップS103に進み、停電時処理を実行する。
ここで、停電時処理について概略を説明する。
停電の発生等によって電源が遮断されると、電源装置91の停電監視回路91bから停電信号が出力され、当該停電信号がNMI端子を介して主制御装置101に入力される。主制御装置101は、停電信号が入力された場合、即座にNMI割込み処理を実行し、停電フラグをRAM106に設けられた停電フラグ格納エリアにセットする。
停電時処理では、先ずコマンドの送信が終了しているか否かを判定し、送信が終了していない場合には本処理を終了してタイマ割込み処理に復帰し、コマンドの送信を終了させる。コマンドの送信が終了している場合には、CPU102のスタックポインタの値をRAM106のバックアップエリアに保存する。その後、入出力ポート104における出力ポートの出力状態をクリアし、図示しない全てのアクチュエータをオフ状態にする。そして、停電解消時にRAM106のデータが正常か否かを判定するためのRAM判定値を算出してバックアップエリアに保存する。RAM判定値とは、具体的にはRAM106の作業領域アドレスにおけるチェックサムの2の補数である。RAM判定値をバックアップエリアに保存することにより、RAM106のチェックサムは0となる。RAM106のチェックサムを0とすることにより、それ以後のRAMアクセスを禁止する。以上の処理を行った後は、電源が完全に遮断して処理が実行できなくなるのに備え、無限ループに入る。なお、例えばノイズ等に起因して停電フラグが誤ってセットされる場合を考慮し、無限ループに入るまでは停電信号が出力されているか否かを確認する。停電信号が出力されていなければ停電状態から復旧したこととなるため、RAM106への書き込みを許可すると共に停電フラグをリセットし、タイマ割込み処理に復帰する。停電信号の出力が継続してなされていれば、そのまま無限ループに入る。ちなみに、無限ループ下においても停電信号が出力されているか否かを確認しており、停電信号が出力されなくなった場合にはメイン処理に移行する。
タイマ割込み処理の説明に戻り、ステップS102にて停電フラグがセットされていない場合には、ステップS104以降の各種処理を行う。
すなわち、ステップS104では、誤動作の発生を監視するためのウオッチドッグタイマの値を初期化するウオッチドッグタイマのクリア処理を行う。ステップS105では、CPU102自身に対して次回のタイマ割込みを設定可能とする割込み終了宣言処理を行う。ステップS106では、各リール32L,32M,32Rを回転させるために、それぞれの回胴駆動モータであるステッピングモータを駆動させるステッピングモータ制御処理を行う。ステップS107では、入出力ポート104に接続されたストップ検出センサ42a〜44a,投入メダル検出センサ45a,払出検出センサ51a等の各種センサ(図9参照)の状態を読み込むセンサ監視処理を行う。
ここで、センサ監視処理を図13のフローチャートに基づいて説明する。先ずステップS151では、センサ情報移行処理を行う。センサ情報移行処理では、今回確認する検出用エリアの第1〜第3エリア112a〜112cに格納されているデータを上位エリア側に順にシフトさせる。例えば、リセット検出センサ72aの状態を読み込む場合には、リセット検出用エリアにおいて、先ず第3エリア112cのデータをクリアし、その後、第2エリア→第3エリア、第1エリア→第2エリアといった具合に各エリア内のデータをシフトさせる。続くステップS152では、今回確認するセンサの接続されたポートを参照し、信号入力状態を読み込む。ステップS153では、ON信号が入力されているか否かを判定する。ON信号が入力されている場合には、ステップS154にて対応する検出用エリアの第1エリア112aに「1」をセットし、ON信号が入力されていない場合には、ステップS155にて対応する検出用エリアの第1エリア112aに「0」をセットする。その後、ステップS156では、全てのセンサの状態を確認したか否かを判定する。全てのセンサの状態を確認した場合には、そのまま本処理を終了し、確認していない場合には、未確認のセンサの状態を確認すべくステップS151に戻る。このように、センサ監視処理では、入出力ポート104に接続された各種センサについて、対応する検出用エリアの第1エリア112aに「0」又は「1」を格納する処理を実行する。なお、スタート検出センサ41aの状態を読み込む場合、ステップS153では、Lレベルの信号が入力されている場合にON信号が入力されていると判定し、Hレベルの信号が入力されている場合にON信号が入力されていないと判定している。
タイマ割込み処理の説明に戻り、ステップS108では、各カウンタやタイマの値を減算するタイマ演算処理を行う。ステップS109では、更新カウンタ111cの値を1更新する。ステップS110では、メダルのベット数や、払出枚数をカウントした結果を外部集中端子板121へ出力する処理を行う。ステップS111では、後述する抽選結果コマンド等の各種コマンドを表示制御装置81へ送信するコマンド出力処理を行う。ステップS112では、クレジット表示部60、残払出枚数表示部61及び払出枚数表示部62にそれぞれ表示されるセグメントデータを設定するセグメントデータ設定処理を行う。ステップS113では、セグメントデータ設定処理で設定されたセグメントデータを各表示部60〜62に供給して該当する数字、記号などを表示するセグメントデータ表示処理を行う。ステップS114では、入出力ポート104からI/O装置に対応するデータを出力するポート出力処理を行う。ステップS115では、先のステップS101にてバックアップエリアに退避させた各レジスタの値をそれぞれCPU102内の対応するレジスタに復帰させる。ステップS116では、基礎乱数を生成するための第1カウンタ111aの値を1更新する。第1カウンタ111aは、RAM106に形成された16ビットの記憶エリアであり、0〜65535の基礎乱数を生成できるようになっている。ステップS117では、遅延カウンタ111dの値を加算又は減算する遅延カウンタ処理を行う。その後ステップS118にて次回のタイマ割込みを許可し、この一連のタイマ割込み処理を終了する。
図14は電源投入後に実行される主制御装置101でのメイン処理を示すフローチャートである。メイン処理は、停電からの復旧や電源スイッチ71のオン操作によって電源が投入された際に実行される。
先ずステップS201では、初期化処理として、スタックポインタの値をCPU101内に設定するとともに、割込み処理を許可する割込みモードを設定し、その後CPU101内のレジスタ群や、I/O装置等に対する各種の設定などを行う。これらの初期化処理が終了すると、ステップS202では設定キーが設定キー挿入孔73に挿入されてON操作されているか否かを判定する。具体的には、図15に示す操作判定処理を行う。
操作判定処理では、先ずステップS251において今回の判定対象がリセットスイッチ72であるか否かを判定するとともに、ステップS252において今回の判定対象が第1〜第3クレジット投入スイッチ56〜58のいずれかであるか否かを判定する。今回の判定対象がリセットスイッチ72、第1〜第3クレジット投入スイッチ56〜58のいずれかである場合には、ステップS253〜ステップS256に示す全エリア参照処理を行う。一方、今回の判定対象が上記各スイッチ以外である場合、具体的には、スタートレバー41、ストップスイッチ42〜44、清算スイッチ59、設定キーのいずれかである場合には、ステップS257〜ステップS260に示す1エリア参照処理を行う。
全エリア参照処理では、ステップS253において、今回の判定対象と対応するセンサ情報格納エリア112の第1〜第3エリア112a〜112cを参照する。ステップS254では、参照結果が「011」であるか否か、すなわち、第1エリアに「1」、第2エリアに「1」、第3エリアに「0」が格納されているか否かを判定する。参照結果が「011」である場合には、ステップS255にて今回の判定対象が操作されたと判定し、本処理を終了する。一方、参照結果が「011」でない場合には、ステップS256にて今回の判定対象が操作されていないと判定し、本処理を終了する。つまり、全エリア参照処理では、対応する検出センサからの信号入力有無の履歴に基づいて、判定対象が操作されたか否かを判定する。
1エリア参照処理では、ステップS257において、今回の判定対象と対応するセンサ情報格納エリア112の第1エリア112aのみを参照する。ステップS258では、参照結果が「1」であるか否か、すなわち、第1エリアに「1」が格納されているか否かを判定する。参照結果が「1」である場合には、ステップS259にて今回の判定対象が操作されたと判定し、本処理を終了する。一方、参照結果が「0」である場合には、ステップS260にて今回の判定対象が操作されていないと判定し、本処理を終了する。つまり、1エリア参照処理では、対応する検出センサからの信号入力有無の最新情報に基づいて、判定対象が操作されたか否かを判定する。
メイン処理の説明に戻り、ステップS202では、判定対象が設定キーであるため、1エリア参照処理を行う。すなわち、設定キー検出用エリアの第1エリア112aを参照し、「1」が格納されている場合には設定キーのON操作がなされていると判定し、「0」が格納されている場合には設定キーのON操作がなされていないと判定する。設定キーのON操作がなされている場合には、ステップS203に進み、強制的RAMクリア処理を行う。強制的RAMクリア処理では、RAM106に記憶されたデータのうち、第1カウンタ111a,第2カウンタ111b及び遅延カウンタ111dに記憶されたデータ(カウント値)を除く他のデータを全てクリアする。つまり、第1カウンタ111a,第2カウンタ111b及び遅延カウンタ111dの値は、RAMクリアを行う場合であってもクリア(初期化)されない。なお、第1カウンタ111a,第2カウンタ111b及び遅延カウンタ111dの値は、エラー状態から復旧させるべくリセットスイッチ72が操作された場合もクリア(初期化)されない。
ステップS204では、当選確率設定処理を行う。ここで、当選確率設定処理について図16を用いて説明する。スロットマシン10には、「設定1」から「設定6」まで6段階の当選確率が予め用意されており、当選確率設定処理とは、いずれの当選確率に基づいて内部処理を実行させるのかを設定するための処理である。
ステップS301では次回のタイマ割込みを許可する。その後、ステップS302にて現在の設定値を読み込むとともに、ステップS303では現在の設定値をクレジット表示部60に表示する。但し、設定キーが挿入されてON操作された直後の処理では、先の強制的RAMクリア処理によりRAM106のデータがクリアされているため、クレジット表示部60に表示される設定値は「1」である。
ステップS304では、割込み待ち処理を行う。
割込み待ち処理では、図17のフローチャートに示すように、ステップS401にてレジスタ退避処理を行う。ステップS402では、次回のタイマ割込みを許可するとともに、現在の更新カウンタ111cの値を取得する。ステップS403〜ステップS407では、カウンタ更新処理を行う。カウンタ更新処理では、先ずステップS403にて次回のタイマ割込みを禁止し、その後、ステップS404にて遅延カウンタ111dの値を1更新するとともに、ステップS405にて第2カウンタ111bの値を1更新する。遅延カウンタ111dは、RAM106に形成された4ビットの記憶エリアであり、0〜16のカウント値を生成できるようになっている。第2カウンタ111bは、第1カウンタ111aと同様、RAM106に形成された16ビットの記憶エリアであり、0〜65535の基礎乱数を生成できるようになっている。遅延カウンタ111d及び第2カウンタ111bを更新した後、ステップS406では、次回のタイマ割込みを許可し、ステップS407では、更新カウンタ111cの値が変化したか否かを判定する。具体的には、ステップS402にて取得した値と、更新カウンタ111cの値と、が一致するか否かを判定する。上述したとおり、更新カウンタ111cの値は、タイマ割込み処理のステップS109にて更新される。このため、更新カウンタ111cの値が変化していない場合、ステップS402の処理を行った以降にタイマ割込み処理が行われていないことを意味する。かかる場合には、ステップS403に戻り、カウンタ更新処理を行う。一方、更新カウンタ111cの値が変化した場合には、タイマ割込み処理が行われたことを意味するため、ステップS408にてレジスタ復帰処理を行い、本処理を終了する。
割込み待ち処理が終了した場合には、ステップS305にてスタートレバー41が操作されたか否かを判定する。かかる判定処理として具体的には、上述した操作判定処理の1エリア参照処理を行う。すなわち、スタート検出用エリアの第1エリア112aを参照し、「1」が格納されている場合にはスタートレバー41が操作されたと判定し、「0」が格納されている場合にはスタートレバー41が操作されていないと判定する。スタートレバー41が操作されていない場合には、ステップS306〜ステップS308に示す設定更新処理を行う。ステップS306では、上述した割込み待ち処理を行い、ステップS307では、リセットスイッチ72が操作されたか否かを判定する。より詳しくは、操作判定処理の全エリア参照処理を行う。すなわち、リセット検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合にはリセットスイッチ72が操作されたと判定し、「011」が格納されていない場合にはリセットスイッチ72が操作されていないと判定する。リセットスイッチ72が操作されていない場合にはそのままステップS303に戻り、操作された場合にはステップS308にて設定値を1更新した後にステップS303に戻る。つまり、設定更新処理では、リセットスイッチ72が操作されたと判定する毎に設定値が1更新され、更新された設定値がクレジット表示部60に表示される。なお、設定値が「6」のときにリセットスイッチ72が操作された場合、設定値は「1」に更新される。
ステップS305にてスタートレバー41が操作された場合には、ステップS309にて割込み待ち処理を行った後、ステップS310にて設定キーのON操作が継続してなされているか否かを判定する。設定キーのON操作が継続してなされている場合には、ステップS309に戻り、ON操作が終了された場合にはステップS311にて次回のタイマ割込みを禁止する。その後、ステップS312では、設定値を保存し、ステップS313では、RAM106に記憶されたデータのうち、設定値,第1カウンタ111a,第2カウンタ111b及び遅延カウンタ111dの値以外のデータをクリアし、本処理を終了する。
メイン処理の説明に戻り、ステップS204にて当選確率設定処理を行った後には、ステップS205にて遊技に関わる主要な制御を行う通常処理を実行する。
一方、ステップS202にて設定キーのON操作がなされていない場合には、ステップS206以降に示す復電処理を行う。復電処理とは、スロットマシン10の状態を電源遮断前の状態に復帰させる処理である。従って、復電処理では先ずRAM106のデータが正常かどうかを確認する必要がある。
そこで、ステップS206では設定値が正常か否かを判定する。具体的には、設定値が1〜6のいずれかである場合に正常であると判定し、0又は7以上である場合に異常であると判定する。設定値が正常である場合には、ステップS207にて停電フラグがセットされているか否かを確認する。停電フラグがセットされている場合には、さらにステップS208にてRAM判定値が正常であるか否かを確認する。具体的には、RAM106のチェックサムの値を調べ、その値が正常、つまりRAM判定値を加味したチェックサムの値が0か否かを確認する。RAM判定値を加味したチェックサムの値が0である場合、RAM106のデータは正常であると判定する。
ステップS208においてRAM判定値が正常であると判定した場合にはステップS209に進み、バックアップエリアに保存されたスタックポインタの値をCPU102のスタックポインタに書き込み、スタックの状態を電源が遮断される前の状態に復帰させる。次に、ステップS210において、復電処理の実行を伝える復電コマンドを表示制御装置81に送信する。その後、ステップS211にて遊技状態として打ち止め及び自動精算設定保存処理を行い、ステップS212にてスタート検出センサ41a等の各種センサの初期化を行う。以上の処理が終了した後、ステップS213にて停電フラグをリセットし、電源遮断前の番地に戻る。具体的には、先に説明したタイマ割込み処理に復帰し、ウォッチドッグタイマクリア処理(ステップS104)が実行されることとなる。
一方、ステップS206〜ステップS208のいずれかがNO、すなわち、設定値が異常である、電源遮断時にセットされる筈の停電フラグがセットされていない、又はRAM判定値が異常である場合には、RAM106のデータが破壊された可能性が高い。このような場合には、ステップS214〜ステップS216に示す動作禁止処理を行う。動作禁止処理として、先ずステップS214にて次回のタイマ割込み処理を禁止し、ステップS215では入出力ポート104内の全ての出力ポートをクリアすることにより、入出力ポート104に接続された全てのアクチュエータをオフ状態に制御する。その後、ステップS216にてホール管理者等に上部ランプ63等を用いてエラーの発生を報知するエラー報知処理を行う。かかる動作禁止状態は、上述した当選確率設定処理が行われるまで維持される。
次に、遊技に関わる主要な制御を行う通常処理について図18のフローチャートに基づき説明する。
先ずステップS501では、次回のタイマ割込みを許可する。ステップS502では、遊技を可能とするための開始前処理を行う。開始前処理では、表示制御装置81等が初期化を終了するまで待機する。表示制御装置81等の初期化が終了した場合には、ステップS503〜ステップS508に示す遊技管理処理を行う。
遊技管理処理として、ステップS503では、RAM106に格納された各種遊技情報等のデータ(例えば前回の遊技で用いた乱数値等)をクリアする。その後、ステップS504では開始待ち処理を行う。
ここで、開始待ち処理について図19のフローチャートを用いて説明する。
ステップS601では、前回の遊技で再遊技入賞が成立したか否かを判定する。再遊技入賞が成立していた場合には、ステップS602にて自動投入処理を行う。自動投入処理とは、前回のベット数と同数の仮想メダルを自動投入する処理である。自動投入処理では、クレジット表示部60に表示された仮想メダル数を減じることなく仮想メダルの投入を行う。つまり、前回の遊技で再遊技入賞が成立した場合には、遊技者は所有するメダルを減らすことなく且つメダルを投入することなく今回の遊技を行うことができる。なお、前回の遊技で再遊技入賞が成立した場合には、先ずベット数と同数の値をクレジット表示部60に加算表示し、自動投入処理において前記加算表示数を減じた上で仮想メダルの投入を行う構成としても良い。ステップS601にて再遊技入賞が成立していないと判定した場合には、ステップS603にてメダルのベットを許可するメダル受付許可処理を行う。メダル受付許可処理では、メダル通路切替ソレノイド46aを励磁状態に切り替えることにより、メダルの投入が可能な状態とする。その後は、遊技を開始させるための開始指令が発生するまで、ステップS604〜ステップS620に示す開始前準備処理を繰り返し行う。
開始前準備処理として、先ずステップS604では、タイマ割込み処理のセンサ監視処理ステップS107にてなされたセンサの読み込み結果に異常が発生していないかを確認する異常確認処理を行う。異常確認処理では、異常が発生していると判定した場合、スロットマシン10をエラー状態とすると共にエラーの発生を報知する異常発生時処理を行う。かかるエラー状態は、リセットスイッチ72が操作されるまで維持される。センサの読み込み結果が正常である場合には、ステップS605に進み、割込み待ち処理を行う。ステップS606では、清算スイッチ59,各クレジット投入スイッチ56〜58のいずれかが操作されたか否かを判定する。
具体的には、清算スイッチ59に関しては操作判定処理の1エリア参照処理を行い、各クレジット投入スイッチ56〜58に関しては操作判定処理の全エリア参照処理を行う。すなわち、清算検出用エリアの第1エリア112aを参照し、「1」が格納されている場合には清算スイッチ59が操作されたと判定し、「0」が格納されている場合には清算スイッチ59が操作されていないと判定する。清算スイッチ59が操作されていない場合には、第1クレジット投入検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合には第1クレジット投入スイッチ56が操作されたと判定し、「011」が格納されていない場合には第1クレジット投入スイッチ56が操作されていないと判定する。第1クレジット投入スイッチ56が操作されていない場合には、第2クレジット投入検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合には第2クレジット投入スイッチ57が操作されたと判定し、「011」が格納されていない場合には第2クレジット投入スイッチ57が操作されていないと判定する。第2クレジット投入スイッチ57が操作されていない場合には、第3クレジット投入検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合には第3クレジット投入スイッチ58が操作されたと判定し、「011」が格納されていない場合には第3クレジット投入スイッチ58が操作されていないと判定する。
上記スイッチ56〜59のいずれかが操作された場合、又はステップS602にて自動投入処理を行った場合には、ステップS607に進み、払出枚数表示部62に表示しているメダル払出数をクリアする。その後、又は清算スイッチ59,各クレジット投入スイッチ56〜58のいずれも操作されていなかった場合には、ステップS608にて第2カウンタ111bの値を1更新するとともに、ステップS609にて遅延カウンタ111dの値を1更新する。続くステップS610では、メダル返却処理を行う。メダル返却処理では、ステップS606にて清算スイッチ59が操作されたと判定した場合に、クレジットされた仮想メダルと同数のメダルを払い出す処理を行う。
ステップS611では、メダルをベット可能な状態か否かを、メダル通路切替ソレノイド46aの状態すなわち励磁状態か非励磁状態かに基づいて判定する。そして、ベット可能な状態である場合には、ステップS612にてクレジット投入処理を行った後にステップS613に進む。クレジット投入処理では、ステップS606にてクレジット投入スイッチ56〜58のいずれかが操作されたと判定した場合、クレジット表示部60に表示されている仮想メダル数を減算表示したり、有効ラインの設定を行ったりする等の仮想メダルの投入に関わる処理を行う。また、ベット不可能な状態である場合には、クレジット投入処理を行うことなくそのままステップS613に進む。ちなみに、ベット不可能な状態としては、前回の遊技で再遊技入賞が成立し、ステップS602にて自動投入処理を行った場合が代表例として挙げられる。ステップS613では、投入判定処理を行う。投入判定処理では、投入メダル検出センサ45aからの検出信号に基づいてメダルが投入されたか否かを判定し、メダルが投入された場合には、有効ラインの設定等の処理を行う。
ステップS614では、ベットされているか否かを判定し、ベットされていない場合には、ステップS615にて設定表示処理を行う。設定表示処理では、設定キーが設定キー挿入孔73に挿入されてON操作されているか否かを判定し、設定キーのON操作がなされている場合には、現在の設定値をクレジット表示部60に表示する処理を行う。ステップS616では、デモ演出を開始済みであるか否かを判定する。本スロットマシン10では、ステップS503にてRAM106の遊技情報をクリアしてから所定時間(例えば1分)が経過した場合、補助表示部65等にてデモ演出を行う構成となっている。そこで、ステップS616では、前記所定時間を経過したか否かを判定し、所定時間を経過した場合には、さらにデモ演出を開始させるためのデモ開始コマンドを表示制御装置81に対して送信済みであるか否かを判定する。所定時間を経過していない場合、又はデモ開始コマンドを送信していない場合には、ステップS617にて演出待ち処理を行った後にステップS604に戻る。演出待ち処理では、RAM106の遊技情報をクリアしてからの経過時間を測定するカウンタを更新するとともに、所定時間を経過している場合には、デモ開始コマンドをセットする処理を行う。但し、演出待ち処理では、上記デモ開始コマンドをリングバッファにセットするのみであって、表示制御装置81に対してコマンドを送信しない。表示制御装置81へのコマンド送信は、先述したタイマ割込み処理のコマンド出力処理S111にて行う。ステップS616にてデモ開始コマンドを送信済みであると判定した場合には、演出待ち処理を行うことなくそのままステップS604に戻る。
ステップS614にてベットされていると判定した場合には、ステップS618にてベット数が規定数(本実施の形態では3)に達しているか否かを判定し、ベット数が規定数に達していない場合には、ステップS604に戻る。ベット数が規定数に達している場合には、ステップS619にて割込み待ち処理を行うとともに、ステップS620にてスタートレバー41が操作されたか否か、すなわちスタート検出エリアの第1エリア112aに「1」がセットされているか否かを判定する。スタートレバー41が操作されていない場合には、ステップS604に戻る。
一方、スタートレバー41が操作された場合には、規定数のメダルがベットされている状況下でスタートレバー41が操作されると遊技を開始できる構成となっているため、遊技を開始させるべく開始指令が発生したことを意味する。かかる場合には、ステップS621にてメダル受付禁止処理を行う。メダル受付禁止処理では、メダル通路切替ソレノイド46aを非励磁状態に切り替えることにより、メダルの投入(ベット)が不可能な状態とする。その後、ステップS622にて遅延処理を行い、本処理を終了する。
遅延処理では、図20のフローチャートに示すように、ステップS631にて遅延フラグをセットする。ここで、遅延フラグとは、遅延カウンタ111dの更新処理を変化させるためのフラグである。具体的に説明すると、タイマ割込み処理の遅延カウンタ処理S117では、図21のフローチャートに示すように、ステップS651にて遅延フラグがセットされているか否かを判定する。そして、遅延フラグがセットされていない場合には、ステップS652にて遅延カウンタ111dの値を1加算し、本処理を終了する。一方、遅延フラグがセットされている場合には、ステップS653にて遅延カウンタ111dの値を1減算し、本処理を終了する。このように、タイマ割込み処理では、遅延フラグがセットされていない場合、定期的に遅延カウンタ111dの値を1加算し、遅延フラグがセットされている場合、定期的に遅延カウンタ111dの値を1減算する処理を行う。したがって、ステップS631にて遅延フラグをセットした場合には、それ以降のタイマ割込み処理において遅延カウンタ111dの値が定期的に1減算されていくこととなる。そこで、ステップS632では、遅延カウンタ111dの値が0となったか否かを判定し、0でない場合には、そのまま待機する。遅延カウンタ111dの値が0となった場合には、ステップS633に進み、基礎乱数生成器150に対してラッチ信号を出力する。より詳しくは、ステップS633ではラッチ信号を出力するためのフラグをセットするのみであって、ラッチ信号の実際の出力はタイマ割込み処理において行う。そして、ラッチ信号は、タイマ割込み処理の1割込み分(すなわち1.49msec)にわたって継続出力されるようになっている。その後、ステップS634にて遅延フラグをクリアし、本処理を終了する。
上述したとおり、基礎乱数生成器150は、CPU102からのラッチ信号が入力された場合、そのタイミングにおけるカウンタ150aのカウント値をラッチ回路150bにラッチするようになっている。そこで、開始指令が発生した場合におけるCPU102、基礎乱数生成器150及び監視回路152の動作を、図22のタイミングチャートに基づいて説明する。
t1のタイミングで第2クロック回路151から出力される信号がLレベルからHレベルに立ち上がる、すなわち第2クロック信号が出力有り状態(第2クロック回路から出力される信号がHレベルの状態)に切り替ると、基礎乱数生成器150では、カウンタ150aのカウント値が更新されてnとなる。nは0〜65535のいずれかの値である。また、監視回路152のCLK端子には第2クロック回路151が反転器154を介して接続されているため、監視回路152では、CLK端子に入力される信号がタイミングt1においてHレベルからLレベルに立ち下がり、反転クロック信号が入力無し状態に切り替る。
t2のタイミングで第2クロック回路151から出力される信号がHレベルからLレベルに立ち下がる、すなわち第2クロック信号が出力無し状態(第2クロック回路から出力される信号がLレベルの状態)に切り替ると、監視回路152では、CLK端子に入力される信号がLレベルからHレベルに立ち上がり、反転クロック信号が入力有り状態に切り替る。このとき、基礎乱数生成器150では、カウンタ150aのカウント値が更新されることはなく、カウント値はnのままである。
監視回路152は、反転クロック信号が入力有り状態に切り替った場合、そのときにD端子に入力されている操作信号の入力状態に応じた信号を、Qバー端子から出力する。タイミングt2では操作信号(Hレベルの検出信号)が入力されていないため、Qバー端子から開始信号を出力しない。なお、開始信号はQバー端子(負論理出力端子)から出力されるため、開始信号に限りHレベルではなくLレベルの信号が開始信号となる。
その後、t3のタイミングで第2クロック信号が出力有り状態に切り替ると、基礎乱数生成器150では、カウンタ150aのカウント値が更新されてn+1となる。このように、基礎乱数生成器150では、第2クロック信号が出力無し状態から出力有り状態に切り替るタイミングでカウント値の更新が順次行われる。
t4のタイミングでスタートレバー41が操作された場合、監視回路152のD端子に入力されている信号がLレベルからHレベルに立ち上がり、操作信号が入力有り状態に切り替る。但し、かかるタイミングt4では反転クロック信号が入力無し状態のため、開始信号は出力無し状態のままである。
t5のタイミングで反転クロック信号が入力無し状態から入力有り状態に切り替った場合、監視回路152では、D端子に操作信号が入力されているため、Qバー端子からの出力信号をHレベルからLレベルに立ち下げる。この結果、かかるタイミングt5で開始信号が出力無し状態から出力有り状態に切り替る。このとき、CPU102から出力されるラッチ信号は、出力無し状態のままである。つまり、開始信号が出力されるタイミングt5では、ラッチ信号が出力されない。
t6のタイミングでは、反転クロック信号が入力有り状態から入力無し状態に切り替るが、開始信号の出力状態が変更されることはなく、そのまま出力有り状態が保持される。つまり、反転クロック信号が入力有り状態から入力無し状態に切り替ったとしても、開始信号は出力有り状態のまま保持される。
その後、t7のタイミングで反転クロック信号が入力無し状態から入力有り状態に切り替ると、かかるタイミングにおける操作信号の入力状態に応じた開始信号が出力される。t7のタイミングでは操作信号が入力有り状態のため、出力有り状態のまま開始信号が継続して出力される。
さて、タイミングt5において開始信号が出力有り状態に切り替わった場合、CPU102は、タイマ割込み処理のセンサ監視処理S107において開始信号の入力を検知し、スタート検出エリアの第1エリア112aに「1」をセットする。そして、開始待ち処理のステップS620にて開始指令が発生したと判定し、遅延処理を行う。遅延処理では、遅延カウンタ111dの値が0となったタイミングtdでラッチ信号を出力する。つまり、CPU102は、開始指令が発生したと判定してから遅延時間(具体的には、遅延カウンタ111dの値にタイマ割込みの周期1.49msecを乗算した時間)が経過した後のタイミングtdでラッチ信号を入力無し状態から入力有り状態に切り替える。この結果、スタートレバー41の操作タイミングと、ラッチ信号が出力されるタイミングと、には、遅延時間分だけずれが生じることとなる。
第2クロック信号が出力有り状態に切り替るタイミングt8において、基礎乱数生成器150は、カウンタ150aのカウント値を更新してm+1とする。mは0〜65535のいずれかの値である。このとき、基礎乱数生成器150にはラッチ信号が入力されているが、かかるタイミングではカウント値をラッチ回路150bにラッチしない。そして、基礎乱数生成器150は、第2クロック信号が出力無し状態に切り替るタイミングt9において、カウンタ150aのカウント値m+1をラッチ回路150bにラッチする。つまり、t4のタイミングでスタートレバー41が操作された場合、タイミングt4ではなくタイミングt9においてカウント値m+1が基礎乱数として取得される。
ここで、基礎乱数生成器150において、カウンタ150aのカウント値の更新は第2クロック信号が入力無し状態から入力有り状態に切り替るタイミング(t1,t3,t6等)で行われ、ラッチ回路150bにおけるカウント値のラッチは第2クロック信号が入力有り状態から入力無し状態に切り替るタイミング(t9)で行われる。かかる構成とすることにより、カウント値の更新タイミングとカウント値のラッチタイミングが同じタイミングとなることを回避でき、カウント値が更新されている最中にラッチタイミングがやってきてカウント値を正常にラッチできない不具合が生じることを回避できる。
タイミングt10でスタートレバー41が初期位置に復帰すると、監視回路152に入力されている操作信号が入力有り状態から入力無し状態に切り替る。タイミングt10は反転クロック信号が入力有り状態から入力無し状態に切り替るタイミングのため、かかるタイミングでは開始信号の出力状態は変化しない。そして、反転クロック信号が入力無し状態から入力有り状態に切り替るタイミングt11で操作信号が入力されていないことが検知され、開始信号が出力有り状態から出力無し状態に切り替る。なお、反転クロック信号が入力無し状態下(例えばタイミングt10<タイミングt<タイミングt11)で操作信号が入力有り状態から入力無し状態に切り替った場合、或いは反転クロック信号が入力有り状態下(例えばタイミングt9<タイミングt<タイミングt10)で操作信号が入力有り状態から入力無し状態に切り替った場合であっても、タイミングt11で開始信号が出力有り状態から出力無し状態に切り替る。
ちなみに、操作信号が入力されるタイミングを常時把握するのではなく反転クロック信号が入力されるタイミングで把握する構成の場合、1の反転クロック信号が入力された後に操作信号が入力有り状態に切り替り、次の反転クロック信号が入力されるまでの間に操作信号が入力無し状態に切り替ると、スタートレバー41の操作を正確に把握できないという可能性が考えられる。ところが、本スロットマシン10におけるスタートレバー41は、手が離れたあと初期位置に復帰するまでに数10msecを有するように構成されており、スタートレバー41が操作されると少なくとも数10msecは操作信号が監視回路152に入力されるようになっている。また、第2クロック回路151から出力される第2クロック信号のクロック周波数は7.915MHzであり、その周期は約126nsecである。つまり、監視回路152において反転クロック信号が入力される周期は、操作信号が入力有り状態に切り替ってから入力無し状態に切り替るまでに要する時間間隔と比して十分に短い。したがって、スタートレバー検出センサ41aから操作信号が出力されたにも関わらず監視回路152において前記操作信号が読み飛ばされるという不具合が生じることを回避できる。
また、監視回路152からではなくCPU102からラッチ信号を出力する構成とした場合、CPU102と基礎乱数生成器150が異なるクロック信号に基づいて動作するため、CPU102からラッチ信号が出力されたにも関わらず基礎乱数生成器150において前記ラッチ信号が読み飛ばされる可能性も考えられる。ところが、ラッチ信号は、タイマ割込み処理の1割込み分すなわち1.49msecにわたって出力されるように構成されており、第2クロック信号の周期は、上述したとおり約126nsecである。したがって、CPU102からラッチ信号が出力されたにも関わらず基礎乱数生成器150において前記ラッチ信号が読み飛ばされるという不具合が生じることを回避できる。
通常処理の説明に戻り、開始待ち処理にて開始指令が発生したと判定した場合には、ステップS505の抽選処理、ステップS506のリール制御処理、ステップS507のメダル払出処理、ステップS508のBB状態処理を順に実行し、ステップS503に戻る。
次に、ステップS505の抽選処理について、図23のフローチャートに基づき説明する。
ステップS701では、役の当否判定を行う際に用いる乱数を作成するための乱数作成処理を行う。図24のフローチャートに示すように、乱数作成処理のステップS801では、基礎乱数生成器150が生成した基礎乱数を、16ビットで構成された乱数格納エリア110に格納する。より具体的には、基礎乱数生成器150は、CPU102からのラッチ信号が入力されたタイミングでカウント値をラッチするとともに、ラッチしたカウント値をCPU102に対して出力する。CPU102は、CPU102内蔵の入力ポートに入力されたカウント値を基礎乱数として乱数格納エリア110に格納する。その後、ステップS802にて乱数格納エリア110に第1カウンタ111aの値を加算するとともに、ステップS803にて乱数格納エリア110に第2カウンタ111bの値を加算し、乱数作成処理を終了する。つまり、本スロットマシン10では、基礎乱数生成器150のラッチしたカウント値と、第1カウンタ111aのカウント値と、第2カウンタ111bのカウント値と、を加算することにより、乱数が作成される。
ここで、タイマ割込み処理におけるステップS108〜ステップS118の一連の処理は、これら一連の処理を行うために必要な時間が、基礎乱数生成器150がカウント値をラッチしてから当該ラッチ結果がCPU102に入力されるまでに要する時間より長くなるように構成されている。かかる構成とすることにより、基礎乱数の取得タイミング(ステップS801の処理を行うタイミング)を、今回のゲームでラッチされたカウント値がCPU102に入力されるタイミングより遅くすることができ、今回のゲームでラッチされたカウント値を確実に基礎乱数として乱数格納エリア110に格納することが可能となる。
乱数を作成した後、ステップS702では、役の当否判定を行うための抽選テーブルを選択する。具体的には、スロットマシン10の現在の遊技状態を判別し、遊技状態と対応した抽選テーブルを選択する。本スロットマシン10では、大別して通常状態とBB状態の2種類の遊技状態を有しており、各遊技状態と対応した抽選テーブルを選択する。また、設定状態が「設定1」のときにメダル払出の期待値が最も低い抽選テーブルを選択し、「設定6」のときにメダル払出の期待値が最も高い抽選テーブルを選択する。
抽選テーブルについて、簡単に説明する。図25は、「設定3」の通常状態で選択される通常状態用抽選テーブルである。抽選テーブルには、判定すべき役の数と同数のインデックス値IVが設定されており、各インデックス値IVには、当選となる役がそれぞれ一義的に対応付けられると共に、ポイント値PVが設定されている。すなわち、本スロットマシン10における通常状態では、再遊技、ベル、スイカ、チェリー、1枚役、BBの6種類の役について判定が行われるようになっている。
抽選テーブルを選択した後、ステップS703ではインデックス値IVを1とし、続くステップS704では役の当否を判定する際に用いる判定値DVを設定する。かかる判定値設定処理では、現在の判定値DVに、現在のインデックス値IVと対応するポイント値PVを加算して新たな判定値DVを設定する。なお、初回の判定値設定処理では、ステップS701にて作成した乱数値を現在の判定値DVとし、この乱数値に現在のインデックス値IVである1と対応するポイント値PVを加算して新たな判定値DVとする。
その後、ステップS705ではインデックス値IVと対応する役の当否判定を行う。役の当否判定では判定値DVが65535を超えたか否かを判定する。65535を超えた場合には、ステップS706に進み、そのときのインデックス値IVと対応する役の当選フラグを、RAM106の当選フラグ格納エリア106aにセットする。例えば、IV=3のときに判定値DVが65535を超えた場合、ステップS706ではスイカ当選フラグを当選フラグ格納エリア106aにセットする。
ちなみに、セットされた当選フラグが再遊技当選フラグ,ベル当選フラグ,スイカ当選フラグ,チェリー当選フラグ,1枚役当選フラグのいずれかである場合、この当選フラグは該当選フラグがセットされたゲームの終了後にリセットされる(通常処理のS503参照)。一方、当選フラグがBB当選フラグである場合、BB当選フラグはBB入賞が成立したことを条件の1つとしてリセットされる。すなわち、BB当選フラグは、複数回のゲームにわたって有効とされる場合がある。なお、BB当選フラグを持ち越した状態におけるステップS706では、現在のインデックス値IVが1〜5であればインデックス値IVと対応する当選フラグをセットし、現在のインデックス値IVが6であればBB当選フラグをセットしない。つまり、BB当選フラグが持ち越されているゲームでは、再遊技,ベル,スイカ,チェリー,1枚役のいずれかに当選した場合には対応する当選フラグをセットする一方、BBに当選した場合にはBB当選フラグをセットしない。
ステップS705にて判定値DVが65535を超えなかった場合には、インデックス値IVと対応する役に外れたことを意味する。かかる場合にはステップS707にてインデックス値IVを1加算し、続くステップS708ではインデックス値IVと対応する役があるか否か、すなわち当否判定すべき判定対象があるか否かを判定する。具体的には、1加算されたインデックス値IVが抽選テーブルに設定されたインデックス値IVの最大値を超えたか否かを判定する。当否判定すべき判定対象がある場合にはステップS704に戻り、役の当否判定を継続する。このとき、ステップS704では、先の役の当否判定に用いた判定値DV(すなわち現在の判定値DV)に現在のインデックス値IVと対応するポイント値PVを加算して新たな判定値DVとし、ステップS705では、当該判定値DVに基づいて役の当否判定を行う。ちなみに、図25に示した抽選テーブルを用いて役の当否判定を行う場合、BBの当選確率は約200分の1、再遊技の当選確率は約7.30分の1、ベルの当選確率は約10.9分の1、スイカの当選確率は128分の1、チェリーの当選確率は約73.0分の1、1枚役の当選確率は128分の1である。また、いずれの役にも当選しない外れの確率は約1.36分の1である。
ステップS706にて当選フラグをセットした後、又はステップS708にて当否判定すべき判定対象がないと判定した場合には、役の当否判定が終了したことを意味する。かかる場合には、ステップS709にて抽選結果コマンドをセットする。ここで、抽選結果コマンドとは、役の当否判定の結果を把握させるべく表示制御装置81に対して送信されるコマンドである。表示制御装置81は、当該抽選結果コマンドを受信することにより、例えば当選役を示唆すべく上部ランプ63や補助表示部65の駆動制御を実行する。但し、通常処理では、上記抽選結果コマンド等の各種コマンドをリングバッファにセットするのみであって、表示制御装置81に対してコマンドを送信しない。表示制御装置81へのコマンド送信は、先述したタイマ割込み処理のコマンド出力処理S111にて行われる。
そして、ステップS710では、リール停止制御用のスベリテーブル(停止テーブル)を設定するスベリテーブル設定処理を行い、抽選処理を終了する。ここで、スベリテーブルとは、ストップスイッチ42〜44が操作されたタイミングからリール32L,32M,32Rをどれだけ滑らせた(回転させた)上で停止させるかが定められたテーブルである。すなわち、スベリテーブルとは、ストップスイッチ42〜44が押された際に基点位置(本実施の形態では下段)に到達している到達図柄(到達図柄番号)と、前記基点位置に実際に停止させる停止図柄(停止図柄番号)との関係を導出することが可能な停止データ群である。
本スロットマシン10では、各リール32L,32M,32Rを停止させる停止態様として、ストップスイッチ42〜44が操作された場合に、基点位置に到達している到達図柄をそのまま停止させる停止態様と、対応するリールを1図柄分滑らせた後に停止させる停止態様と、2図柄分滑らせた後に停止させる停止態様と、3図柄分滑らせた後に停止させる停止態様と、4図柄分滑らせた後に停止させる停止態様との5パターンの停止態様が用意されている。そして、各リール32L,32M,32Rの図柄番号毎に前記5パターンの停止態様のいずれかを設定されたスベリテーブルが、各役について複数用意されている。
このように、ストップスイッチ42〜44が操作されたタイミングから規定時間(190msec)が経過するまでの間に各リール32L,32M,32Rが停止するようスベリテーブルを設定することにより、表示窓26L,26M,26Rから視認可能な範囲に停止する図柄配列(以下、停止出目と言う。)があたかも遊技者の操作によって決定されたかのような印象を遊技者に抱かせることが可能となる。また、4図柄分までは滑らせることが可能な構成とすることにより、かかる規定時間内で可能な限り抽選に当選した役と対応する図柄の組合せを有効ライン上に停止させることが可能となるとともに、抽選に当選していない役と対応する図柄の組合せが有効ライン上に停止することを回避させることができる。
図26は、左リール32Lの「リプレイ」図柄を有効ライン上に停止させる場合にセットされるスベリテーブルの一例である。滑り数が0である番号の図柄は、下段に実際に停止する図柄である。例えば、左リール32Lの14番の「スイカ」図柄が下段に到達している際に左ストップスイッチ42を操作された場合、左リール32Lは滑ることなくそのまま停止し、16番の「リプレイ」図柄が上段に停止する。また、滑り数が0でない番号の図柄は、記載された図柄数分だけリールが滑ることを意味する。例えば、左リール32Lの8番の「ベル」図柄が下段に到達している際に左ストップスイッチ42を操作された場合、左リール32Lは4図柄分だけ滑り、12番の「リプレイ」図柄が下段に停止する。このように、スベリテーブルでは、各リール32L,32M,32Rに付された図柄が下段に到達したタイミングでストップスイッチ42〜44を操作された場合の滑り数が図柄番号毎に設定されている。
さて、スベリテーブル設定処理では、RAM106の当選フラグ格納エリア106aにセットされている当選フラグを確認し、セットされている当選フラグと一義的に対応するスベリテーブルを、RAM106のスベリテーブル格納エリア106bにセットする。このとき、本スロットマシン10では、左リール32Lの当選役と対応する図柄(以下、「当選図柄」と言う。)が上段又は下段のいずれかに停止するように、中リール32Mと右リール32Rの当選図柄が中段に停止するように設定されたスベリテーブルをセットする。ここで、左リール32Lの当選図柄が上段又は下段のいずれかに停止するように設定されたスベリテーブルをセットするのは、一般的に左リール32L→中リール32M→右リール32Rの順に回転を停止させるべくストップスイッチ42〜44が操作されることを考慮し、停止出目を多様化させるためである。
ここで、各リール32L,32M,32Rの図柄配列について簡単に説明する。
「リプレイ」図柄は、下段に先に到達する図柄と次に到達する図柄との間隔が4図柄以下となるように、各リール32L,32M,32Rに配置されている。例えば、左リール32Lの4番の「リプレイ」図柄と7番の「リプレイ」図柄はその間隔が2図柄となるようにして配置されており、中リール32Mの1番の「リプレイ」図柄と6番の「リプレイ」図柄はその間隔が4図柄となるようにして配置されている。このように、「リプレイ」図柄は、同種図柄同士の間隔が4図柄以下となるようにして各リール32L,32M,32Rに配置されている。上述した通り、リール32L,32M,32Rはストップスイッチ42〜44の操作されたタイミングから最大4図柄分滑らせた後に停止させることができる。したがって、かかる図柄配列とすることにより、ストップスイッチ42〜44が如何なるタイミングで操作された場合であっても、再遊技入賞を成立させる際に「リプレイ」図柄を任意の位置に停止させることができる。例えば中リール32Mの1番の「リプレイ」図柄が下段に到達した際に中ストップスイッチ43が操作された場合、中リール32Mをそのまま停止させればこの「リプレイ」図柄を下段に停止させることができ、中リール32Mを3図柄分滑らせた後に停止させれば6番の「リプレイ」図柄を上段に停止させることができ、中リール32Mを4図柄分滑らせた後に停止させれば6番の「リプレイ」図柄を中段に停止させることができる。
本スロットマシン10では、かかる「リプレイ」図柄の他、「ベル」図柄についても、同種図柄同士の間隔が4図柄以下となるようにして各リール32L,32M,32Rに配置されている。このため、ストップスイッチ42〜44が如何なるタイミングで操作された場合であっても、ベル入賞を成立させる際に「ベル」図柄を任意の位置に停止させることができる。
一方、「スイカ」図柄は、同種図柄同士の間隔が4図柄以下となるようにして各リール32L,32M,32Rに配置されていない。このため、例えば左リール32Lの3番の「赤7」図柄が下段に到達している際に左ストップスイッチ42が操作された場合、仮に左リール32Lを4図柄分滑らせても「スイカ」図柄を有効ライン上に停止させることはできない。したがって、スイカに当選し、「スイカ」図柄が有効ライン上に停止するように設定されたスベリテーブルがセットされた場合であっても、ストップスイッチ42〜44の操作されたタイミングによっては「スイカ」図柄が有効ライン上に停止せず、スイカ入賞が成立しない所謂取りこぼしが発生する場合がある。本スロットマシン10では、かかる「スイカ」図柄の他、「赤7」図柄についても5図柄以上離れた区間が形成されるようにして各リール32L,32M,32Rに配置されている。また、左リール32Lにおいては、「チェリー」図柄が5図柄以上離れた区間を形成するようにして配置されており、中リール32Mにおいては、「青年」図柄が5図柄以上離れた区間を形成するようにして配置されており、右リール32Rにおいては、「白7」図柄が5図柄以上離れた区間を形成するようにして配置されている。このため、BB、スイカ、チェリー、1枚役のいずれかに当選した場合には、当選図柄が有効ライン上に停止するよう狙ってストップスイッチ42〜44を操作する必要がある。
スベリテーブル設定処理の説明に戻り、BB当選フラグと他の当選フラグがセットされている場合には、以下に示すスベリテーブルをセットする。
BB当選フラグと再遊技当選フラグがセットされている場合、再遊技入賞を優先して成立させるための再遊技入賞用スベリテーブルをセットする。再遊技入賞用スベリテーブルでは、左リール32Lの「リプレイ」図柄が上段又は下段に優先して停止するように、中リール32Mと右リール32Rの「リプレイ」図柄が中段に優先して停止するように設定されている。
BB当選フラグと小役当選フラグ(すなわち、ベル当選フラグ,スイカ当選フラグ,チェリー当選フラグ,1枚役当選フラグのいずれか)がセットされている場合、BB入賞を優先して成立させるためのBB優先入賞用スベリテーブルをセットする。但し、BB図柄たる「赤7」図柄は上述したとおり5図柄以上離れた区間が形成されるようにして各リール32L,32M,32Rに配置されているため、ストップスイッチ42〜44の操作タイミングによっては「赤7」図柄を有効ライン上に停止させることができない場合がある。そこで、BB優先入賞用スベリテーブルでは、各リール32L,32M,32Rについて以下のように設定されている。左リール32Lについては、「赤7」図柄と当選小役図柄とを共に有効ライン上に停止させることが可能であれば両図柄を有効ライン上に優先して停止させるように、「赤7」図柄を上段又は下段のいずれかに停止させることが可能であれば優先して停止させるように、「赤7」図柄を上段又は下段に停止させることが不可能であって当選小役図柄を上記各位置に停止させることが可能であれば当該当選小役図柄を上記各位置に停止させるように設定されている。また、中リール32M及び右リール32Rについては、「赤7」図柄を中段に停止させることが可能であれば優先して停止させるように設定されると共に、「赤7」図柄を上記各位置に停止させることが不可能であって当選小役図柄を上記各位置に停止させることが可能であれば当該当選小役図柄を上記各位置に停止させるように設定されている。
次に、ステップS506のリール制御処理について、図27のフローチャートに基づき説明する。
リール制御処理では、先ずステップS901において各リール32L,32M,32Rの回転を開始させる回転開始処理を行う。
回転開始処理では、前回の遊技でリールが回転を開始した時点から予め定めたウエイト時間(例えば4.1秒)が経過したか否かを確認し、経過していない場合にはウエイト時間が経過するまで待機する。ウエイト時間が経過した場合には、次回の遊技のためのウエイト時間を再設定するとともに、RAM106に設けられたモータ制御格納エリアに回転開始情報をセットするモータ制御初期化処理を行う。かかる処理を行うことにより、タイマ割込み処理のステッピングモータ制御処理S106にてステッピングモータの加速処理が開始され、各リール32L,32M,32Rが回転を開始する。このため、遊技者が規定数のメダルをベットしてスタートレバー41を操作したとしても、直ちに各リール32L,32M,32Rが回転を開始しない場合がある。その後、各リール32L,32M,32Rが所定の回転速度で定速回転するまで待機し、回転開始処理を終了する。また、CPU102は、各リール32L,32M,32Rの回転速度が定速となると、各ストップスイッチ42〜44の図示しないランプを点灯表示することにより、停止指令を発生させることが可能となったことを遊技者等に報知する。
回転開始処理に続き、ステップS902では停止前処理を行う。
停止前処理では、図28のフローチャートに示すように、先ずステップS1001にて割込み待ち処理を行う。続くステップS1002では、開始指令が発生しているか否か、より具体的にはスタート検出エリアの第1エリア112aに「1」がセットされているか否かを判定する。そして、スタート検出エリアの第1エリア112aに「1」がセットされている場合には、ステップS1001の割込み待ち処理に戻る。つまり、スタート検出エリアの第1エリア112aに「1」がセットされている場合には、当該スタート検出エリアの第1エリア112aが「0」に変更されるまでステップS1003以降の処理に進まない。
ちなみに、ステップS1002にて開始指令が発生していると判定する状況としては、ステップS620の処理タイミングからステップS1002の処理タイミングまでスタートレバー41が押し操作されたままである場合、ステップS620の処理を行った後にスタートレバー41が再度操作された場合、監視回路152等に何らかの異常が発生して開始信号が出力されたままとなっている場合等が考えられる。
開始指令が発生していない場合にはステップS1003に進み、ストップスイッチ42〜44のいずれかが操作されたか否かを判定する。より具体的には、上述した操作判定処理の1エリア参照処理を、各ストップスイッチ42〜44について行う。例えば、左ストップスイッチ42の操作有無については、左ストップ検出用エリアの第1エリア112aを参照し、「1」が格納されている場合には左ストップスイッチ42が操作されたと判定し、「0」が格納されている場合には左ストップスイッチ42が操作されていないと判定する。いずれのストップスイッチ42〜44も操作されていない場合には、ステップS1001の割込み待ち処理に戻る。ストップスイッチ42〜44のいずれかが操作されたと判定した場合には、ステップS1004に進み、回転中のリールと対応するストップスイッチが操作されたか否か、すなわち停止指令が発生したか否かを判定する。停止指令が発生していない場合には、ステップS1001の割込み待ち処理に戻る。停止指令が発生した場合には、ステップS1005に進み、今回の停止指令が第3停止指令か否か、すなわち1つのリールのみが回転しているときにストップスイッチが操作されたか否かを判定する。今回の停止指令が第3停止指令の場合には、ステップS1005にて肯定判定を行い、そのまま停止前処理を終了する。一方、全リール32L,32M,32Rが回転しているときに発生する第1停止指令、又は2つのリールが回転しているときに発生する第2停止指令の場合には、ステップS1005にて否定判定を行うとともにステップS1006にてスベリテーブル第1変更処理を行い、停止前処理を終了する。
ここで、スベリテーブル第1変更処理とは、RAM106のスベリテーブル格納エリア106bに格納されたスベリテーブルを、停止指令と対応するリールを停止させる前に変更する処理である。スベリテーブル第1変更処理では、例えば左ストップスイッチ42以外のストップスイッチ43,44が操作されて第1停止指令が発生した場合等といった、スベリテーブル格納エリア106bにスベリテーブルをセットする際に想定したストップスイッチ42〜44の操作順序と異なる操作順序でストップスイッチ42〜44が操作された場合に、スベリテーブルを変更する。かかる処理を行うことにより、停止出目の多様化を図ったり、セットされた当選フラグと対応する入賞が成立することなく前記当選フラグが無効とされる所謂取りこぼしの発生頻度を低減させたりすることができる。
リール制御処理の説明に戻り、ステップS902にて停止前処理が終了した場合、遊技を進行させるべく回転中のリールと対応するストップスイッチが操作され、停止指令が発生したことを意味する。かかる場合には、回転中のリールを停止させるべくステップS903〜ステップS909に示す停止制御処理を行う。
すなわち、ステップS903では、ストップスイッチの操作されたタイミングで下段に到達している到達図柄の図柄番号を確認する。具体的には、リールインデックスセンサの検出信号が入力された時点から出力した励磁パルス数により、下段に到達している到達図柄の図柄番号を確認する。続くステップS904では、スベリテーブル格納エリア106bにセットされたスベリテーブルのうち到達図柄と対応する図柄番号のデータから今回停止させるべきリールのスベリ数を算出する。その後、ステップS905では、算出したスベリ数を到達図柄の図柄番号に加算し、下段に実際に停止させる停止図柄の図柄番号を決定する。ステップS906では今回停止させるべきリールの到達図柄の図柄番号と停止図柄の図柄番号が等しくなったか否かを判定し、等しくなった場合にはステップS907にてリールの回転を停止させるリール停止処理を行う。その後、ステップS908では、全リール32L,32M,32Rが停止したか否かを判定する。全リール32L,32M,32Rが停止していない場合には、ステップS909にてスベリテーブル第2変更処理を行い、ステップS902の停止前処理に戻る。
ここで、スベリテーブル第2変更処理とは、RAM106のスベリテーブル格納エリア106bに格納されたスベリテーブルを、リールの停止後に変更する処理である。スベリテーブル第2変更処理では、セットされている当選フラグと、停止しているリールの停止出目と、に基づいてスベリテーブルを変更する。例えば、ベル当選フラグがセットされ、左リール32Lの「ベル」図柄が上段に停止した場合、中リール32Mの「ベル」図柄が上段又は中段に停止するように設定されたスベリテーブルに変更する。かかる処理を行うことにより、リールの停止結果に応じてその後に停止させるリールの停止出目の多様化を図ることができるとともに、取りこぼしの発生頻度を低減させることができる。
一方、ステップS908にて全リール32L,32M,32Rが停止していると判定した場合には、ステップS910にて払出判定処理を行い、本処理を終了する。払出判定処理とは、入賞図柄の組合せが有効ライン上に並んでいることを条件の1つとしてメダルの払出枚数を設定する処理である。
払出判定処理では、各リール32L,32M,32Rの下段に停止した停止図柄の図柄番号から各有効ライン上に形成された図柄の組合せを導出し、有効ライン上で入賞が成立しているか否かを判定する。入賞が成立している場合には、さらに入賞成立役が当選フラグ格納エリア106aにセットされている当選フラグと一致しているか否かを判定する。入賞成立役と当選フラグが一致している場合には、入賞成立役と、当該入賞成立役と対応する払出数と、をRAM106に設けられた払出情報格納エリアにセットする。一方、入賞成立役と当選フラグが一致していない場合には、スロットマシン10をエラー状態とするとともにエラーの発生を報知する異常発生時処理を行う。かかるエラー状態は、リセットスイッチ72が操作されるまで維持される。全ての有効ラインについて払出判定が終了した場合には、払出判定処理を終了する。
次に、ステップS507のメダル払出処理について、概略を説明する。
メダル払出処理では、払出情報格納エリアにセットされた払出数が0か否かを判定する。払出数が0の場合、先の払出判定処理にてメダルの払い出される入賞が成立していないと判定したことを意味する。かかる場合には、払出判定処理にてセットした入賞成立役に基づいて、再遊技入賞が成立したか否かを判定する。再遊技入賞が成立していない場合にはそのままメダル払出処理を終了し、再遊技入賞が成立している場合には、遊技状態を再遊技状態とする再遊技設定処理を行い、メダル払出処理を終了する。なお、先に説明した開始待ち処理S504では、現在の遊技状態が再遊技状態であると判定した場合に自動投入処理を行っている。
一方、払出情報格納エリアにセットされた払出数が0でない場合には、当該払出数と同数のメダルを払い出し、メダル払出処理を終了する。メダルの払い出しについて具体的には、クレジットカウンタのカウント値が上限(貯留されているメダル数が50枚)に達していない場合、クレジットカウンタのカウント値に払出数を加算するとともに加算後の値をクレジット表示部60に表示させる。また、クレジットカウンタのカウント値が上限に達している場合、又は払出数の加算途中でカウント値が上限に達した場合には、メダル払出用回転板を駆動し、メダルをホッパ装置51からメダル排出口49を介してメダル受け皿50へ払い出す。なお、メダル払出処理では、メダルの払い出しにあわせて払出枚数表示部62に表示される払出数を変更する処理も行っている。また、現在の遊技状態がBB状態である場合には、後述する残払出数カウンタの値から払出数を減算するとともに、残払出枚数表示部61に表示される残払出数を減算する処理を行う。
次に、ステップS508のBB状態処理を、図29のフローチャートに基づいて説明する。
BB状態処理の説明に先立ち、BB状態について説明する。BB状態は、複数回のRB状態で構成されている。RB状態は、12回のJACゲームで構成されている。JACゲームとは、メダル払出の特典が付与される入賞(例えばベル入賞等)の成立する確率が通常状態と比して非常に高いゲームである。そして、JACゲーム中に入賞が8回成立すると、JACゲームが12回行われる前であってもRB状態が終了する。また、BB状態は、メダル払出数が所定数(具体的には400枚)に達したことを以って終了する。加えて、RB状態の途中でメダル払出数が所定数に達した場合、BB状態のみならずRB状態も終了する。これは、BB状態中のメダル払出数に上限をもたせることにより遊技者の射幸心を抑え、遊技の健全性を担保するための工夫である。さらに、本実施の形態では、RB状態に移行する図柄の組合せを設定しておらず、BB状態に移行した直後及びRB状態が終了した直後にRB状態に移行する構成としている。故に、BB状態とは、所定数のメダル払出が行われるまでRB状態に連続して移行するゲームであるとも言える。
さて、BB状態処理では、先ずステップS1101にて現在の遊技状態がBB状態か否かを判定する。BB状態でない場合には、ステップS1102〜ステップS1105に示すBB判定処理を行う。
BB判定処理では、ステップS1102にてBB当選フラグがセットされているか否かを判定する。BB当選フラグがセットされている場合には、ステップS1103に進み、先の払出判定処理にてセットした入賞成立役に基づいて、BB入賞が成立したか否かを判定する。そして、BB入賞が成立した場合には、ステップS1104にて遊技状態をBB状態に移行させるべくBB開始処理を実行する。具体的には、BB当選フラグをクリアするとともにBB設定フラグをRAM106の状態情報格納エリア106cにセットし、遊技状態をBB状態とする。また、前記状態情報格納エリア106cに設けられたBB状態中に払出可能な残りのメダル数をカウントするための残払出数カウンタに400をセットし、残払出枚数表示部61に400を表示させる処理を行う。その後、ステップS1105にてRB開始処理を行い、BB状態処理を終了する。RB開始処理では、RB設定フラグをRAM106の状態情報格納エリア106cにセットし、遊技状態をRB状態とする。また、RB状態下で成立した入賞回数をカウントするための残払出入賞カウンタに8をセットするとともに、JACゲームの残りゲーム数をカウントするための残JACゲームカウンタに12をセットする。なお、残払出入賞カウンタと残JAC入賞カウンタは、状態情報格納エリア106cに設けられている。また、ステップS1101等における現在の遊技状態の判定は、状態情報格納エリア106cに対応する設定フラグがセットされているか否かに基づいて実行しており、いずれの設定フラグもセットされていない場合には、現在の遊技状態が通常状態であると判定している。
一方、BB当選フラグがセットされていない場合(ステップS1102がNOの場合)、又はBB入賞が成立していない場合(ステップS1103がNOの場合)には、BB開始処理等を実行することなく本処理を終了する。
ステップS1101にて現在の遊技状態がBB状態であると判定した場合には、ステップS1106に進み、先の払出判定処理にてセットした入賞成立役に基づいて入賞が成立したか否かを判定する。入賞が成立した場合には、ステップS1107にて残払出入賞カウンタの値を1減算する。その後、或いはステップS1106にて入賞が成立しなかったと判定した場合には、JACゲームを1つ消化したことになるため、ステップS1108にて残JACゲームカウンタの値を1減算する。続いて、ステップS1109では残払出入賞カウンタ又は残JACゲームカウンタのいずれかが0になったか否かを判定する。いずれかが0になっていたとき、つまり入賞が8回成立したかJACゲームが12回消化されたときには、RB状態の終了条件が成立したことを意味するため、ステップS1110にて残払出入賞カウンタ及び残JACゲームカウンタの値をクリアするRB終了処理を行う。続くステップS1111では、残払出数カウンタのカウント値が0か否かを確認する。0でない場合には、BB状態中に払い出されたメダル数が所定数に達しておらず、BB状態の終了条件が成立していないことを意味するため、ステップS1112に進み、先述したRB開始処理を行った後、本処理を終了する。
また、ステップS1109において残払出入賞カウンタ及び残JACゲームカウンタのいずれの値も0になっていないとき、つまり入賞がまだ8回成立しておらずJACゲームも12回消化されていないときには、ステップS1113に進み、残払出数カウンタのカウント値が0か否かを確認する。0でない場合には、BB状態中に払い出されたメダル数が所定数に達しておらず、BB状態の終了条件が成立していないことを意味するため、そのまま本処理を終了する。一方、残払出数カウンタのカウント値が0である場合には、BB状態の終了条件が成立したことを意味するため、ステップS1114〜ステップS1115に示す特別遊技状態終了処理を行う。特別遊技状態終了処理では、先ずステップS1114において、先述したRB終了処理を行う。その後、ステップS1115にてBB設定フラグや各種カウンタなどを適宜クリアしたりエンディング処理を行ったりするBB終了処理を行う。また、ステップS1111にて残払出数カウンタのカウント値が0である場合にも、BB状態の終了条件が成立したことを意味するため、ステップS1115にてBB終了処理を行う。BB終了処理を行った後、ステップS1116にて状態移行処理を実行し、BB状態処理を終了する。ここで、状態移行処理とは、遊技状態を通常状態に復帰させるための処理であり、例えばBB状態が終了したことを表示制御装置81に把握させるべく送信される終了コマンドをセットしたり、所定時間(例えばエンディング表示が終了するまでの時間)が経過するまで待機したりする処理を行う。
以上詳述した本実施の形態によれば、以下の優れた効果を奏する。
スタートレバー41が操作されて開始指令が発生した場合には、当該スタートレバー41の操作タイミングではなく、前記操作タイミングから遅延時間が経過した後のタイミングで、基礎乱数生成器150のカウント値をラッチする構成とした。遅延時間は遅延カウンタ111dの値によって変化するため、かかる構成とすることにより、仮にスタートレバー41の操作を一定周期で行われた場合であっても、基礎乱数生成器150のカウント値のラッチタイミングを変化させることができる。この結果、体感器等を用いて当選となる乱数が作成される際の基礎乱数生成器150のカウント値を狙ってスタートレバー41を操作する不正や、前記カウント値が生成されるタイミングで主制御装置101に開始指令が発生したと誤認識させる不正信号を出力可能な不正基板を取り付ける不正を困難なものとすることができ、当選となる乱数が不正に取得されることを困難なものとすることが可能となる。
電源投入に伴って起動されるとともに繰り返し行われる通常処理で割込み待ち処理を行う構成とし、割込み待ち処理を、更新カウンタ111cの値が変化した場合、すなわちタイマ割込み処理が行われた場合に終了する構成とした。そして、当該割込み待ち処理では、更新カウンタ111cの値が変化するまでの間、遅延カウンタ111dの値を繰り返し更新する構成とした。かかる構成とすることにより、割込み待ち処理の開始から終了までの時間をランダムなものとすることができる。タイマ割込み処理は1.49msec毎に定期的に行われる一方、割込み待ち処理を開始するタイミング、より詳しくはステップS402にて更新カウンタ111cの値を取得するタイミングは、電源投入から割込み待ち処理に至るまでに行った他の処理によって変化する。このため、タイマ割込み処理の終了直後に割込み待ち処理を開始した場合であれば、遅延カウンタ111dの更新時間として1.49msecからタイマ割込み処理に要した時間を減じた時間を確保でき、遅延カウンタ111dを複数回更新できる一方、ステップS402の直後にタイマ割込み処理を行った場合であれば、遅延カウンタ111dを1回更新する時間しか確保できない。この結果、割込み待ち処理にて行われる遅延カウンタ111dの更新回数をランダムなものとすることができ、開始指令が発生してからCPU102がラッチ信号を出力するまでの遅延時間をランダムなものとすることができる。
確かに、例えば通常処理においてタイマ割込み処理の開始タイミングと終了タイミングを監視し、タイマ割込み処理の終了タイミングから次回のタイマ割込み処理の開始タイミングまで遅延カウンタ111dの更新を行う構成、すなわち、割込み待ち処理の開始タイミングをタイマ割込み処理の終了タイミングに依存させる構成とすることも可能である。かかる構成とした場合であっても、上記実施の形態と同様、割込み待ち処理の開始から終了までの時間をランダムなものとすることができる。しかしながら、かかる構成とした場合には、タイマ割込み処理が1.49msec毎に開始されるため、割込み待ち処理の開始タイミングがタイマ割込み処理の開始タイミングから1.49msec以内という時間的な制約が生じることとなる。また、初回の割込み待ち処理の開始タイミングと次回の割込み待ち処理の開始タイミングとの間隔、すなわち割込み待ち処理の起動間隔が、タイマ割込み処理の2周期未満すなわち2.98msec未満となるという制約も生じることとなる。このため、これら制約を基にして、開始指令を発生させてからの遅延時間が毎ゲーム一定となるよう、遅延カウンタ111dのカウント値が不正に狙われる可能性が生じ得る。一方、上記実施の形態においては、割込み待ち処理の開始タイミングがタイマ割込み処理の開始タイミング及び終了タイミングに依存しないため、上述した各制約が生じることはなく、遅延カウンタ111dの値が不正に狙われる可能性を低減させることが可能となる。
通常処理では、割込み待ち処理が終了した場合、タイマ割込み処理のセンサ監視処理の結果を用いてスタートレバー41(例えばステップS620)等が操作されたか否かを判定する処理を行う構成とした。割込み待ち処理の終了後に上記判定処理を行う構成とすることにより、タイマ割込み処理が終了してから上記判定処理が行われるまでの間隔を短縮させることが可能となる。割込み待ち処理を行わない構成においては、上記間隔が最大で1.49msecからタイマ割込み処理に要した時間を減じた時間となる一方、割込み待ち処理を行う構成においては、最大でも、1.49msecからタイマ割込み処理に要した時間を減じ、さらにステップS403〜ステップS406の処理を1回行う際に要する時間とステップS407にて否定判定してステップS408の処理を行う際に要する時間とを減じた時間となるからである。この結果、スタートレバー41が操作されたか否か等の遊技の進行や遊技状況等に関わる判定を、より近いタイミングでなされたセンサ監視処理の結果を用いて行うことが可能となる。故に、遊技者等が行ったスタートレバー41等の操作と、それに伴うゲーム等の進行と、の間に生じるタイムラグを低減させることが可能となる。この結果、開始指令が発生してから遅延時間が経過した後に基礎乱数生成器150のカウント値をラッチする構成とした場合であっても、遊技者が上記タイムラグに対して違和感を抱くことを抑制することが可能となる。
割込み待ち処理を、スタートレバー41(例えばステップS620)等が操作されたか否かを判定する操作判定処理の前で行うことに加えて、当選確率設定処理のステップS303〜S308や開始待ち処理の開始前準備処理(ステップS604〜S620)等のループする処理内において行う構成とした。かかる構成とすることにより、スロットマシン10が誤動作することを回避することが可能となる。
ここで、上記ループ処理内で割込み待ち処理を行わない構成について考える。
例えば、当選確率設定処理のステップS303〜S308のループ処理においては、ステップS307においてリセットスイッチ72が操作されたか否かを判定し、操作されたと判定した場合に設定値を更新する処理を行う。CPU102は第1クロック信号が入力された場合に動作を行うようになっているため、CPU102の動作する周期は第1クロック信号の周期と等しく約125nsecである。また、タイマ割込み処理は1.49msec毎に行われるため、CPU102は、タイマ割込み処理を行ってから次回のタイマ割込み処理を行うまでの間に1000回以上の動作(処理動作)を行うことができる。このため、当選確率設定処理のループ処理において割込み待ち処理を行わない構成においては、例えばステップS303の処理を行う直前にタイマ割込み処理を行った場合、次回のタイマ割込み処理を行うまでにステップS303〜S308のループ処理を複数回繰り返し行うことができる。
ステップS307のリセットスイッチ72が操作されたか否かを判定する処理では、全エリア参照処理を行う。すなわち、リセット検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合にはリセットスイッチ72が操作されたと判定し、「011」が格納されていない場合にはリセットスイッチ72が操作されていないと判定する。かかる場合、割込み待ち処理を行わない構成においては、「011」が格納されている状況下でステップS307の判定処理を複数回行う可能性が生じ、これは、リセットスイッチ72が1回しか操作されていないにもかかわらず設定値が複数回更新されるという誤動作に繋がることとなる。
一方、リセットスイッチ72が操作されたか否かを判定する前段階で割込み待ち処理を行う構成においては、リセット検出用エリアに「011」が格納されている状況下でステップS307の処理を行った場合、次回のステップS307の処理を行う際にはリセット検出用エリアに「110」又は「111」が格納されていることとなり、ステップS307においてリセットスイッチ72が操作されたと繰り返し肯定判定することを回避することができる。この結果、リセットスイッチ72の1回の操作に対して設定値を複数回更新する誤動作を回避することができ、遊技場の管理者等に自身の望む設定値を設定させることが可能となる。
同様に、開始前準備処理S604〜S620のループ処理においては、ステップS606においてクレジット投入スイッチ56〜58が操作されたか否かを判定し、操作されたと判定した場合にステップS612においてクレジット投入処理を行う。かかるループ処理においても、割込み待ち処理を行わない構成においては、例えばステップS604の処理を行う直前にタイマ割込み処理を行った場合、次回のタイマ割込み処理を行うまでにステップS604〜S620のループ処理を複数回繰り返し行うことが可能となる。
ステップS606のクレジット投入スイッチ56〜58が操作されたか否かを判定する処理では、全エリア参照処理を行う。すなわち、各クレジット投入検出用エリアの全エリア112a〜112cを参照し、「011」が格納されている場合には対応するクレジット投入スイッチが操作されたと判定し、「011」が格納されていない場合には対応するクレジット投入スイッチが操作されていないと判定する。かかる場合、割込み待ち処理を行わない構成においては、「011」が格納されている状況下でステップS606の判定処理を複数回行う可能性が生じ、クレジット投入スイッチ56〜58が1回しか操作されていないにもかかわらず複数回操作されたと判定する可能性が生じる。これは、例えば仮想メダルを1枚だけ投入すべく第3クレジット投入スイッチ58を操作したにもかかわらず、仮想メダルが複数枚投入されてしまうという誤動作に繋がることとなる。
一方、クレジット投入スイッチ56〜58が操作されたか否かを判定する前段階で割込み待ち処理を行う構成においては、クレジット投入検出用エリアに「011」が格納されている状況下でステップS606の処理を行った場合、次回のステップS606の処理を行う際にはクレジット投入検出用エリアに「110」又は「111」が格納されていることとなり、ステップS606においてクレジット投入スイッチ56〜58が操作されたと繰り返し肯定判定することを回避することができる。この結果、クレジット投入スイッチ56〜58の1回の操作に対して対応する仮想メダルの投入が複数回行われる誤動作を回避することができ、遊技者の意図する仮想メダルの投入を行わせることが可能となる。
RAM106のセンサ情報格納エリア112を、第1〜第3エリア112a〜112cの3つの記憶エリアから構成した。かかる構成とすることにより、各検出センサからの信号入力有無の履歴を記憶することができ、信号入力有無の履歴を用いて操作がなされたか否かの判定を行うことができる。また、リセットスイッチ72とクレジット投入スイッチ56〜58については全エリア参照処理を行う構成とすることにより、スロットマシン10が誤動作することを好適に回避することが可能となる。仮に上記スイッチ56〜58,72に関して1エリア参照処理を行う構成とした場合には、当選確率設定処理のステップS303〜S308のループ処理におけるステップS307や開始前準備処理S604〜S620のループ処理におけるステップS606において、対応する検出用エリアの第1エリア112aのみを参照することとなる。上述したとおり、CPU102の動作周期は、上記スイッチ56〜58,72の操作が開始されてから終了までに要する時間と比して十分に早い。このため、上記スイッチ56〜58,72に対して1エリア参照処理を行った場合には、仮に割込み待ち処理を行ったとしても一定期間に亘って第1エリア112aに「1」が繰り返し格納されることとなり、1回の操作に対して複数回操作がなされたと判定してしまう可能性が生じるからである。
割込み待ち処理を、通常処理の開始前準備処理において行う構成とした。開始前準備処理は、開始指令が発生するまで繰り返し行われる処理であり、前回のゲームが終了してから開始指令が発生するまでの時間は、遊技者がスタートレバー41を操作するタイミングによって変化する。このため、開始指令が発生するまでに行われる開始前準備処理の回数がランダムなものとなり、これに伴って割込み待ち処理が行われる回数もランダムなものとなる。この結果、開始指令が発生するまでに行われる遅延カウンタ111dの更新回数をランダムなものとすることができる。
ここで、開始指令の発生タイミングは遊技者によるスタートレバー41の操作に依存するため、前回のゲームが終了してから開始指令が発生するまでの時間が一定となるようにスタートレバー41を不正に操作される可能性が考えられる。しかしながら、開始前準備処理を1回行うために必要な時間は遊技状況等によって変化する。例えば、メダルのベットに必要な処理時間だけを考えた場合であっても、クレジット投入スイッチ56〜58の操作によってなされたか、実際にメダルを投入されたか、によってクレジット投入処理に要する時間と投入判定処理に要する時間が変化するからである。また、割込み待ち処理を行う構成においては、当該割込み待ち処理に必要な処理時間を固定することができないため、前回のゲームが終了してから開始指令が発生するまでの時間が一定となるようスタートレバー41を不正に操作されたとしても、かかる時間内に開始前準備処理を行う回数すなわち割込み待ち処理を行う回数を一定に固定することはできない。故に、開始指令を発生させてからの遅延時間が毎ゲーム一定となるよう、遅延カウンタ111dのカウント値を狙ってスタートレバー41を操作する不正を困難なものとすることができる。
割込み待ち処理を、通常処理の停止前処理におけるステップS1001〜ステップS1004、すなわち回転中のリールを停止させることが可能となってから停止指令が発生するまでの間に行う構成とした。ステップS1001〜ステップS1004の処理は、停止指令が発生するまで繰り返し行われる処理であり、回転中のリールを停止させることが可能となってから停止指令が発生するまでの時間は、遊技者がストップスイッチ42〜44を操作するタイミングによって変化する。このため、停止指令が発生するまでに行われるステップS1001〜ステップS1004の処理回数がランダムなものとなり、これに伴って割込み待ち処理が行われる回数もランダムなものとなる。この結果、停止指令が発生するまでに行われる遅延カウンタ111dの更新回数をランダムなものとすることができる。
CPU102のRAM106に遅延カウンタ111dを設け、当該遅延カウンタ111dの更新をCPU102が行う構成とした。すなわち、ソフトフリーカウンタの値に基づいて遅延期間を決定する構成とした。かかる構成とすることにより、当選となる乱数が不正に取得されることを困難なものとすることが可能となる。確かに、CPU102と別体のハードウェアカウンタが生成したカウント値を用いて遅延期間を決定する構成とすることも可能である。しかしながら、かかる構成とした場合、当該ハードウェアカウンタを例えば1の値のみを出力する不正なハードウェアカウンタに変更される可能性が懸念され、かかる変更がなされた場合、遅延期間が毎ゲーム前記1の値に基づく一定期間となってしまうこととなる。そして、遅延期間を一定期間とした上で、体感器等を用いて当選となる乱数が作成される際の基礎乱数生成器150のカウント値を狙ってスタートレバー41を操作する不正や、前記カウント値が生成されるタイミングで主制御装置101に開始指令が発生したと誤認識させる不正信号を出力可能な不正基板を取り付ける不正が行われる可能性が懸念される。一方、CPU102のRAM106に遅延カウンタ111dを設け、遅延カウンタ111dの更新をCPU102が行う構成においては、CPU102自体が不正なCPUに変更されない限りは、上記不正を困難なものとすることが可能となる。
遅延カウンタ111dの値は、RAMクリアを行う場合であってもクリアされない構成とした。かかる構成とすることにより、RAMクリアを示す不正信号をCPU102に入力して遅延カウンタ111dの値を初期値に変更した上で、当選となる乱数が作成される際の基礎乱数生成器150,第1カウンタ111a及び第2カウンタ111bの値を狙ってスタートレバー41を操作する不正を防止することが可能となる。
CPU102のRAM106に第1カウンタ111a及び第2カウンタ111bを設け、乱数作成処理では、基礎乱数生成器150の生成した基礎乱数にこれらカウンタ111a,111bのカウント値を加算する構成とした。かかる構成とすることにより、作成される乱数や当選となる乱数が作成される周期を、1のカウンタのカウント値を用いて乱数を作成する構成よりもランダムなものとすることが可能となり、当選となる乱数を不正に取得することを困難なものとすることが可能となる。
CPU102のRAM106に第1カウンタ111aと第2カウンタ111bを設け、これらカウンタ111a,111bの更新をCPU102が行う構成とした。すなわち、ハードウェアカウンタたる基礎乱数生成器150の値に、ソフトフリーカウンタの値を加算して乱数を作成する構成とした。かかる構成とすることにより、当選となる乱数が不正に取得されることを困難なものとすることが可能となる。確かに、基礎乱数生成器150等のハードウェア乱数生成器がラッチしたカウント値をそのまま乱数として用いる構成とすることも可能である。しかしながら、かかる構成とした場合、当該ハードウェア乱数生成器を、例えば常にBB当選となるカウント値を出力する不正なハードウェア乱数生成器に変更される可能性が懸念され、かかる変更がなされた場合、スロットマシン10を設置する遊技場等が多大な被害を受けることとなる。一方、CPU102のRAM106に第1カウンタ111aと第2カウンタ111bを設け、これらカウンタ111a,111bの更新をCPU102が行う構成においては、仮に上記不正なハードウェア乱数生成器に変更されたとしても、第1カウンタ111aと第2カウンタ111bのカウント値を加算することでBB当選とならない乱数に変更することが可能となる。
第1カウンタ111a及び第2カウンタ111bの値は、RAMクリアを行う場合であってもクリアされない構成とした。かかる構成とすることにより、RAMクリアを示す不正信号をCPU102に入力して第1カウンタ111aと第2カウンタ111bの値を初期値に変更した上で、当選となる乱数が作成される際の基礎乱数生成器150,第1カウンタ111a及び第2カウンタ111bの値を狙ってスタートレバー41を操作する不正を防止することが可能となる。
また、ハードウェア乱数生成器がラッチしたカウント値をそのまま乱数として用いる構成とした場合には、上述した不正なハードウェア乱数生成器に変更される可能性に加えて、次のような問題も懸念される。すなわち、ハードウェア乱数生成器では、発振器が定周期でクロック信号をカウンタに対して出力し、当該クロック信号の入力に基づいてカウンタが更新される。このため、例えば発信器が故障等を原因としてクロック信号を出力しなくなると、カウンタの更新が行われなくなる。したがって、クロック信号が出力されなくなった後のゲームでは常に同じカウンタ値を用いて役の当否判定が行われることとなり、遊技者又はスロットマシンを設置する遊技場が不利益を被る可能性が懸念される。
そこで、Dフリップフロップ回路により構成された監視回路152を主制御装置101に設け、当該監視回路152には、そのD端子にスタート検出センサ41aを接続するとともにCLK端子に第2クロック回路151を接続し、Qバー端子にCPU102を接続した。かかる構成においては、故障等を原因として第2クロック回路151から第2クロック信号が出力されなくなった場合、或いは第2クロック信号が出力されたままの状態となった場合、監視回路152において第2クロック信号(より詳しくは反転クロック信号)の入力状態が変化しないため、CPU102に対して開始信号が出力されない。したがって、これら状況下においてスタート検出センサ41aから操作信号が出力されたとしても各リール32L,32M,32Rが回転を開始することはなく、遊技者又はスロットマシン10を設置する遊技場が不利益を被ることを回避できる。第2クロック信号が基礎乱数生成器150に入力されなくなる、或いは入力されたままとなった場合、その後にゲームを行うことが可能な構成においては、常に同じ基礎乱数を用いて乱数が作成されることとなるからである。
また、かかる構成においては、遊技者又はスロットマシン10を設置する遊技場の管理者等に、スタートレバー41を操作しても各リール32L,32M,32Rが回転を開始しないことを通じてスロットマシン10に異常が発生したことを報知することが可能となる。故に、第2クロック回路151に異常が発生したことを速やかに発見させることが可能となり、第2クロック回路151の異常に伴って遊技者又はスロットマシン10を設置する遊技場が不利益を被ることを好適に回避させることができる。
確かに、第2クロック回路151が周期的に第2クロック信号を出力しているか否かを監視する監視手段を設け、第2クロック信号が周期的に出力されていない場合にはCPU102が異常発生を報知する等の異常発生時処理を行う構成としても、第2クロック回路151に何らかの異常が発生したことを遊技者又は遊技場の管理者等に報知することが可能となる。しかしながら、かかる構成とした場合、異常発生時処理を行うためのプログラムを主制御装置101又はCPU102自体に記憶させる必要が生じ、記憶容量の増大化が懸念されることとなる。また、第2クロック回路151ではなく監視手段に何らかの異常が発生した場合、第2クロック回路151に異常が発生しているにも関わらず当該異常を発見することができずに継続してゲームが行われる可能性も懸念される。
一方、スタート検出センサ41aとCPU102が監視回路152を介して接続される上記実施の形態の場合、スタートレバー41を操作したにも関わらず各リール32L,32M,32Rが回転を開始しないことを通じて遊技者に異常発生を直接報知することが可能となり、CPU102側で異常発生時処理等を行う必要がない。また、監視回路152自体に何らかの異常が発生した場合、開始信号とラッチ信号の出力状態が変化しなくなるため、かかる場合であってもその後のゲームを行うことができないことを通じて遊技者に異常発生を直接報知することが可能となる。したがって、上記各懸念を解消しつつ、スロットマシン10内部で異常が発生した場合に遊技者又はスロットマシン10を設置する遊技場が不利益を被る機会を比較的簡易な構成で低減することができる。
基礎乱数生成器150において、カウンタ150aのカウント値の更新は第2クロック信号が入力無し状態から入力有り状態に切り替るタイミングで行われ、ラッチ回路150bにおけるカウント値のラッチは第2クロック信号が入力有り状態から入力無し状態に切り替るタイミングで行われる構成とした。かかる構成とすることにより、カウント値の更新タイミングとカウント値のラッチタイミングが同じタイミングとなることを回避でき、カウント値が更新されている最中にラッチタイミングがやってきてカウント値を正常にラッチできない不具合が生じることを回避できる。
主制御装置101において、CPU102と別個に監視回路152を設けたため、第2クロック回路151が正常か否かの監視をCPU102が行うことなくスロットマシン10の異常を報知することが可能となる。故に、CPU102の処理負荷を低減させることが可能となると共に、第2クロック回路151の監視制御に関するプログラムが不要となり、CPU102の記憶容量が増大化することを抑制することも可能となる。
さらに、第2クロック回路151ではなく監視回路152自体に何らかの異常が発生した場合であっても、当該異常を容易に発見させることが可能となる。すなわち、監視回路152に何かしらの異常が発生した場合、操作信号や第2クロック信号の入力状態に関わらず開始信号の出力状態が一定となる。これは、遊技者がスタートレバー41を操作したにも関わらず各リール32L,32M,32Rが回転を開始しなかったり、遊技者がスタートレバー41を操作していないにも関わらず開始信号が出力されたままの状態となったりするという異常な事象が発生することに繋がる。故に、遊技者又は遊技場の管理者等がスロットマシン10に何かしらの異常が発生していることを容易に発見することが可能となる。これにより、監視回路152に異常が発生しているために第2クロック回路151の異常を発見することができない等の不具合が生じることを回避しつつ、スロットマシン10内部で異常が発生した場合に遊技者又はスロットマシン10を設置する遊技場が不利益を被る機会を低減することができる。
CPU102にクロック信号を入力する第1クロック回路103と、基礎乱数生成器150にクロック信号を入力する第2クロック回路151とを別個に設けると共に、これらクロック回路103,151から出力されるクロック信号が同期しない構成とした。かかる構成とすることにより、基礎乱数生成器150においてラッチ回路150bがカウント値をラッチするタイミングと、CPU102がラッチ回路150bから乱数を取得する取得タイミングとが同期し、CPU102が基礎乱数を正常に取得できないという不具合が生じることを回避できる。
リール制御処理において、開始指令が発生したままでないことを条件として停止指令の発生有無を判定する構成とした。すなわち、リールが回転している最中に開始指令が発生している場合、停止指令を無効とする構成とした。かかる構成とすることにより、第2クロック信号が出力されたままの状態で第2クロック回路151に異常が発生した場合に、当該異常を速やかに発見することが可能となる。ゲームの途中で前記異常が発生した場合には、ストップスイッチを操作しても対応するリールを停止させることができないことを通じて、遊技者又は遊技場の管理者等にスロットマシン10に何らかの異常が発生したことを報知することが可能となるからである。また、スタートレバー41が操作されていない状況下で前記異常が発生して各リール32L,32M,32Rが回転を開始した場合、遊技者は違和感を抱きつつも当該ゲームを終了させるべくストップスイッチ42〜44を操作する可能性が考えられる。しかしながら、ストップスイッチを操作しても対応するリールを停止させることができないことを通じて、遊技者又は遊技場の管理者等にスロットマシン10に何らかの異常が発生したことを報知することが可能となる。
なお、上述した実施の形態の記載内容に限定されず、例えば次のように実施してもよい。
(1)上記実施の形態では、基礎乱数生成器150と第1カウンタ111aと第2カウンタ111bとを設け、基礎乱数生成器150のラッチしたカウント値と、第1カウンタ111aのカウント値と、第2カウンタ111bのカウント値と、を加算することで乱数を作成する構成としたが、かかる構成に限定されるものではなく、第1カウンタ111aと第2カウンタ111bを設けず、基礎乱数生成器150のカウント値をそのまま乱数として用いる構成としても良い。かかる構成とした場合、基礎乱数生成器150では当選となるカウント値が一定周期で生成されるため、前記カウント値を狙って開始指令を発生させる不正が行われる可能性が生じる。しかしながら、開始指令の発生から遅延時間を経過した後に基礎乱数生成器150のカウント値をラッチする構成においては、仮に開始指令を前記周期の自然数倍の周期で発生させられたとしても、基礎乱数生成器150のカウント値をラッチするタイミングを前記周期からずらすことができる。故に、当選となる乱数が不正に取得されることを困難なものとすることが可能となる。
また、基礎乱数生成器150を設けず、第1カウンタ111aのカウント値と第2カウンタ111bのカウント値とを加算することで乱数を作成する構成としても良いし、第1カウンタ111aのカウント値をそのまま乱数として用いる構成や、第2カウンタ111bのカウント値をそのまま乱数として用いる構成としても良いことは言うまでもない。
(2)上記実施の形態では、開始指令が発生した場合、遅延カウンタ111dの値が0となるまで減算する処理を行う構成としたが、遅延カウンタ111dの値が0となるまで加算する処理を行う構成としても良い。かかる構成とした場合であっても、上記実施の形態と同様の作用効果を奏することは明らかである。また、かかる構成とした場合には、遅延カウンタ処理のプログラム構成を簡略化することが可能となる。
(3)上記実施の形態では、遅延カウンタ111dの値が0となるまで減算する処理をタイマ割込み処理にて行う構成としたが、通常処理にて行う構成としても良い。具体的には、通常処理の遅延処理において、遅延フラグをセットした後に遅延カウンタ111dの値を1減算する処理を行い、その後に遅延カウンタ111dの値が0か否かの判定を行う構成とする。そして、遅延カウンタ111dの値が0でない場合には、遅延カウンタ111dの値が0となるまで前記減算処理を繰り返し行う構成とする。かかる構成とした場合には、遅延時間の短縮化を図ることが可能となる。タイマ割込み処理にて遅延カウンタ111dの減算処理を行った場合には、前記減算処理を1.49msec毎にしか行うことができないが、通常処理にて遅延カウンタ111dの減算処理を行った場合には、前記減算処理を約125nsec毎に行うことができるからである。
(4)上記実施の形態では、開始指令が発生した場合、遅延カウンタ111dの値が0となった後にラッチ信号を出力する構成としたが、かかる構成に限定されるものではなく、遅延カウンタ111dの値が1となった後にラッチ信号を出力する構成としても良いし、遅延カウンタ111dの値が10となった後にラッチ信号を出力する構成としても良い。つまり、そのときの遅延カウンタ111dの値と無関係な特定値となった後にラッチ信号を出力する構成であれば良い。
(5)上記実施の形態では、CPU102のRAM106に遅延カウンタ111dを1つ設け、当該遅延カウンタ111dの値を通常処理とタイマ割込み処理において更新する構成としたが、通常処理において更新される遅延カウンタと、タイマ割込み処理において更新される遅延カウンタと、を別個に設けても良い。
(6)上記実施の形態では、基礎乱数生成器150を設け、基礎乱数生成器150のラッチしたカウント値と、第1カウンタ111aのカウント値と、第2カウンタ111bのカウント値と、を加算することで乱数を作成する構成としたが、これらカウント値を減算することで乱数を作成する構成としても良いことは言うまでも無い。
(7)通常処理において割込み待ち処理を設ける位置は、タイマ割込み処理の処理結果を用いて判断を行う処理の前であれば、任意である。したがって、例えば停止前処理におけるステップS1002とステップS1003の間に割込み待ち処理を設ける構成としても良いし、投入判定処理の途中に割込み待ち処理を設ける構成としても良い。投入判定処理では、投入メダル検出センサ45aからの検出信号に基づいてメダルが投入されたか否かを判定するからである。
また、上述したようなセンサ監視処理の処理結果を用いて判断を行う処理の前ではなく、タイマ減算処理の処理結果を用いて判断を行う処理の前であっても良い。例えば、回転開始処理では、前回の遊技でリールが回転を開始した時点から予め定めたウエイト時間(例えば4.1秒)が経過したか否かを確認する。そこで、かかるウェイト時間を計測するタイマの減算をタイマ減算処理で行う構成であれば、ウエイト時間を経過したか否かを確認する前に割込み待ち処理を行う構成とする。或いは、所定のコマンドの出力が完了したか否かを判定する処理を行い、完了していない場合にはそのまま待機する構成においては、前記判定処理を行う前に割込み待ち処理を行う構成としても良い。これら構成とした場合には、待機時間を遅延カウンタ111dの更新時間として有効活用することが可能となる。
(8)上記実施の形態では、更新カウンタ111cの値が変化した場合に割込み待ち処理を終了する構成としたが、更新カウンタ111cの値の変化量は任意である。すなわち、ステップS407では、更新カウンタ111cの値がステップS402にて取得した値から3変化した場合に否定判定をする構成としても良いし、1変化した場合に否定判定をする構成としても良い。つまり、上記実施の形態では、更新カウンタ111cの値が変化した場合、その変化量に関わらず否定判定をして割込み待ち処理を終了する構成としたが、予め変化量を設定し、更新カウンタ111cの値が前記変化量分だけ変化した場合、すなわち予め定めた回数だけタイマ割込み処理が行われた場合、否定判定をして割込み待ち処理を終了する構成としても良い。
(9)上記実施の形態では、乱数の作成に用いるカウンタとして、タイマ割込み処理において更新される第1カウンタ111aと、通常処理において更新される第2カウンタ111bと、を別個に設ける構成としたが、1のカウンタの値を通常処理とタイマ割込み処理とで更新する構成としても良い。
また、基礎乱数生成器を有さない遊技機に上記構成を適用する場合には、前記カウンタの値をそのまま乱数として用いる構成としても良いし、前記カウンタの値を反転する等の所定の演算処理を行って得られた値を乱数として用いる構成としても良い。
(10)上記実施の形態では、割込み待ち処理における遅延カウンタ111dの更新回数を除いた場合、開始前準備処理が1回行われる毎に遅延カウンタ111dの値が1更新される構成としたが、2更新される構成としても良いし、3以上更新される構成としても良い。すなわち、開始前準備処理1回あたりに対する遅延カウンタ111dの更新回数又は更新値は任意である。
(11)上記実施の形態では、開始待ち処理において、ステップS604〜ステップS620の処理がループする構成としたが、ステップS601〜ステップS620の処理がループする構成としても良い。但し、開始前準備処理にステップS601〜ステップS603の処理を含めた構成とする場合には、メダル受付許可処理及び自動投入処理において1回目の処理であるか否かを判定し、1回目である場合には対応する処理を行い、1回目でない場合には対応する処理を行うことなくそれ以降の処理(ステップS604、ステップS607)に移行する構成とする必要がある。かかる構成とした場合には、開始前準備処理の開始から終了までの時間をより不定なものとすることができ、開始指令が発生するまでに行われる遅延カウンタ111dの更新回数をよりランダムなものとすることができる。
このように、開始前準備処理とは、リールが回転していない状況で開始され、開始指令が発生した場合に終了する処理であって、開始指令が発生するまで繰り返し行われる処理であれば良い。
(12)上記実施の形態では、遅延カウンタ111dの値を1加算又は1減算する更新処理を行う構成としたが、2以上の値を加算又は減算する更新処理を行う構成としても良いことは言うまでもない。第1カウンタ111a,第2カウンタ111b及び基礎乱数生成器150のカウンタ150aについても同様である。
(13)開始前準備処理において遅延カウンタ111dの更新を行う位置は任意である。すなわち、異常確認処理の直後に遅延カウンタ111dの更新を行う構成としても良いし、投入判定処理の直後に遅延カウンタ111dの更新を行う構成としても良い。これら構成とした場合であっても、上記実施の形態と同様の作用効果を奏することは明らかである。
(14)基礎乱数生成器150のラッチ回路150bとCPU102とを、16ビット反転接続する構成としても良い。
(15)上記実施の形態では、基礎乱数生成器150のカウンタ150aと、第1カウンタ111aと、第2カウンタ111bと、をそれぞれ16ビットで構成したが、8ビットで構成しても良いし、4ビットで構成しても良い。また、各カウンタのビット数が異なる構成としても良い。遅延カウンタ111dについても同様であり、4ビット構成に限らず、8ビット構成としても良いし、16ビット構成としても良い。但し、遅延カウンタ111dのビット数を大きくした場合には、遅延時間がその分だけ長くなることとなる。このため、かかる場合には、タイマ割込み処理において遅延カウンタ111dの減算処理を行う箇所を増加させる等の工夫を行うことが望ましい。
(16)上記実施の形態では、第1カウンタ111a,第2カウンタ111b及び遅延カウンタ111dの値がRAMクリアを行う場合であってもクリア(初期化)されない構成としたが、クリアされる構成としても良い。
(17)上記実施の形態では、基礎乱数生成器150をCPU102の外部に設ける構成としたが、CPU102が内蔵する構成としても良い。
(18)上記実施の形態における基礎乱数生成器150は、CPU102からのラッチ信号が入力されたタイミングでカウント値をラッチするとともに、ラッチしたカウント値をCPU102に対して出力したが、かかる構成を変更する。例えば、基礎乱数生成器150を、カウンタ150aのカウント値をラッチ回路150bを介して常時出力する構成とする。すなわち、CPU102には、カウンタ150aのカウント値が常時入力される構成とする。そして、CPU102は、遅延時間を経過した場合、そのときにCPU102に入力されているカウンタ150aのカウント値をラッチし、基礎乱数として取得する。かかる構成とした場合であっても、上記実施の形態と同様の作用効果を奏することは明らかである。
(19)上記実施の形態では、CPU102のRAM106に遅延カウンタ111dを設け、基礎乱数の取得タイミングを開始指令の発生タイミングから遅延させる構成としたが、遅延カウンタ111dを設けず、開始指令の発生タイミングで基礎乱数を取得する構成としても良い。かかる構成とした場合、基礎乱数生成器150のカウント値が狙われる可能性が生じるが、基礎乱数生成器150のカウント値に第1カウンタ111a及び第2カウンタ111bのカウント値を加算して乱数を作成する構成においては、基礎乱数生成器150のカウント値を狙われた場合であっても上記各カウンタ111a,111bのカウント値によって乱数を変化させることができる。故に、当選となる乱数が不正に取得されることを困難なものとすることが可能となる。
なお、基礎乱数の取得タイミングを遅延させない構成とする場合には、監視回路152のQ端子と基礎乱数生成器150のラッチ回路150bとを接続し、CPU102からラッチ信号を出力するのではなく監視回路152のQ端子からラッチ信号を出力すれば良い。
(20)上記実施の形態では、Dフリップフロップ回路により構成される監視回路152を設ける構成としたが、RSフリップフロップ回路やJKフリップフロップ回路等の順序回路や各種論理回路により構成される監視回路を設けても良い。
(21)上記実施の形態では、監視回路152のQバー端子をCPU102と接続し、Qバー端子から出力されるLレベルの出力信号をCPU102が開始信号として認識する構成としたが、Q端子とCPU102が反転器を介して接続される構成としても、上記実施の形態と同様の作用効果を奏することは明らかである。また、CPU102がHレベルの出力信号を開始信号として認識するのであれば、Q端子とCPU102を接続する構成としても良いし、Qバー端子とCPU102が反転器を介して接続される構成としても良い。
(22)上記実施の形態では、波形整形回路153と監視回路152を主制御装置102の入出力ポート104を介して接続する構成としたが、これらを直接接続する構成とし、監視回路152のQバー端子とCPU102を、入出力ポートを介して接続する構成としても良い。
(23)上記実施の形態では、Dフリップフロップ回路により構成される監視回路152を設けて第2クロック回路151に何らかの異常が発生した場合に遊技者又は遊技場が不利益を被ることを回避させる構成としたが、かかる構成を変更する。
第2クロック回路151が周期的に第2クロック信号を出力しているか否かを常時監視するウォッチドッグタイマを第2クロック回路と接続する。ウォッチドッグタイマには、所定時間毎に減算されるタイマカウンタが設けられており、そのタイマカウンタのタイマ値は、クロック信号の入力状態が変化する毎にセットされるようになっている。そして、ウォッチドッグタイマは、タイマカウンタが非ゼロの場合にはHレベルの正常信号を出力し、同タイマカウンタがゼロの場合にはLレベルの異常発生信号を出力するようになっている。ウォッチドッグタイマの出力側には、スタート検出センサ41aからの操作信号とウォッチドッグタイマからの入力信号との論理積を演算する論理積回路を設ける。そして、その論理積回路からの出力信号を反転器によって反転した反転信号がCPU102に入力される構成とする。
この場合、第2クロック回路151が第2クロック信号を周期的に出力していれば、ウォッチドッグタイマにおいてタイマ値が繰り返しセットされ、タイマカウンタがゼロになることはない。このため、ウォッチドッグタイマからの出力信号は常にHレベルであり、論理積回路からの出力信号はスタート検出センサ41aからの操作信号そのものとなる。そして、操作信号が出力されている場合には前記出力信号が反転器によって反転され、CPU102に開始信号として入力される。
一方、第2クロック回路151に異常が生じるなどして第2クロック信号の出力状態が変化していない場合には、ウォッチドッグタイマにおいてタイマカウンタがゼロとなり、その出力信号がLレベルとなる。このため、論理積回路の出力信号は操作信号の入力有無に関わらず常にLレベルとなる。したがって、スタートレバー41が操作されて操作信号が出力されたとしても論理積回路からCPU102に対して開始信号が出力されない。この結果、スタートレバー41を操作したにも関わらず各リール32L,32M,32Rが回転を開始しないという事態が起こり、スロットマシン10内部に何かしらの異常が発生していることを遊技者又は遊技場の関係者等に報知することができる。
なお、第2クロック回路151から周期的に第2クロック信号が出力されているか否かを判断するためにウォッチドッグタイマを用いたが、これに代えて第2クロック信号のデューティ比を検出し、かかるデューティ比が所定の正常範囲内(例えば25〜75%の範囲)でない場合にLレベルの信号を出力するデューティ比判定回路を設けても良い。
一般に、正常な第2クロック信号はデューティ比50%のパルス信号である。これに対して、第2クロック回路151に何らかの異常が発生するなどして第2クロック信号の出力状態が変化しなくなった場合には、デューティ比は0%(Lレベルで一定又はハイインピーダンスの場合)又は100%(Hレベルで一定の場合)に近づく。このため、実際のデューティ比が正常範囲内であるかを判定することにより、第2クロック信号が周期的に出力されているか否かを判断することが可能である。そして、本構成においては、第2クロック信号の出力状態が変化していない場合、デューティ比判定回路からLレベルの信号が出力されるため、論理積回路の出力信号は操作信号の入力有無に関わらず常にLレベルとなる。したがって、スタートレバー41が操作されて操作信号が出力されたとしても論理積回路からCPU102に対して開始信号が出力されない。
なお、第2クロック信号のデューティ比の正常範囲は、上記の一例に限らず、10〜90%や40〜80%などであっても良く、要するに正常動作時に許容される範囲とすれば良い。また、正常動作時の50%を中心にして対照的に設定する必要は無く、10〜60%や40〜90%などとしても良い。
(24)上記実施の形態では、基礎乱数生成器150を、第2クロック信号の入力に基づいてカウンタ150aのカウント値を更新し、ラッチ信号の入力されたタイミングにおけるカウンタ150aのカウント値をラッチ回路150bにラッチする構成としたが、次のような構成としても良い。
ラッチ回路150bを、カウンタ150aのカウント値のビット配列を適宜入れ替えた上でラッチする構成とする。
かかる構成の一例としては、カウンタ150aのカウント値の最下位から最上位までのビット配列を逆向きにしたものをラッチ回路150bにラッチさせる構成が代表例として挙げられる。かかる構成においては、ラッチ回路150bによりラッチされる値が第2クロック信号の入力に対して不規則に変化することとなり、所定の基礎乱数を遊技者に故意に取得される不具合が生じることを回避できる。
また、ラッチ回路150bのラッチした値のビット配列を適宜入れ替えた上で、CPU102に対して出力する構成としても良い。かかる構成とした場合であっても、CPU102に入力される乱数が第2クロック信号に対して不規則に変化することとなり、所定の乱数を遊技者に故意に取得される不具合が生じることを回避できる。
異なる周波数のクロック信号を出力するクロック回路を複数設け、これらクロック信号に基づいてカウンタ150aのカウント値を更新させる。
この場合、いずれのクロック回路から出力されたクロック信号を用いるかを適宜選択する選択回路を設けるとともに、当該選択回路により選択されたクロック信号が監視回路152のCLK端子に入力される構成とする。かかる構成では、選択回路によるクロック信号の選択によってカウンタ150aのカウント値が一巡する周期が変化するため、所定の基礎乱数を遊技者に故意に取得される不具合が生じることを回避できる。
カウンタ150aに代えて第2クロック信号の入力状態が変化する毎に乱数が変化する演算器を設ける。
かかる演算器の一例としては、前回までの基礎乱数を用いて今回の基礎乱数を決定するもの、平均採中法により基礎乱数を生成するもの、素数の加算によって基礎乱数を生成するものなどが代表例として挙げられる。これら構成においても、ラッチ回路150bによりラッチされる値が第2クロック信号の入力状態の変化に基づいて複雑に変化するため、所定の基礎乱数を遊技者に故意に取得される不具合が生じることを回避できる。
(25)上記実施の形態では、ハードウェア基礎乱数生成器150のクロック源として、CPU102用の第1クロック回路103とは別に乱数用の第2クロック回路151を設けたが、第1クロック回路103をクロック源として用いても良い。このとき、第1クロック回路103のクロック信号を周波数変調(分周、逓倍など)させたものを用いても良い。この場合、周波数変調を行う回路部に異常が生じるなどしてハードウェア基礎乱数生成器150に入力されるクロック信号が変動しなくなると、基礎乱数が常に一定になるという問題が発生するが、上記実施の形態と同様の効果を得ることによって、その異常を発見することができる。
(26)上記実施の形態では、第2クロック回路151から出力される第2クロック信号の周波数を変調させることなく、前記第2クロック信号を基礎乱数生成器150と監視回路152に入力させる構成としたが、周波数変調(分周、逓倍など)させたものを入力させる構成としても良い。具体的には、周波数変調を行う変換器を第2クロック回路151に接続し、前記変換器を基礎乱数生成器150と監視回路152に接続すれば良い。
(27)上記実施の形態では、メダルが3枚ベットされた後に開始指令が発生したか否かを判定する構成としたが、1枚ベットされた後や2枚ベットされた後にも開始指令が発生したか否かを判定する構成としてもよいことは言うまでもない。かかる構成とした場合には、割込み待ち処理を、上記実施の形態のようにクレジット投入スイッチが操作されたか否かを判定する処理(ステップS606、図19参照)の直前で行うことにより、スロットマシンが誤動作することをより好適に回避することが可能となる。遊技者の望むベット数でゲームを開始できない機会が発生し得るからである。
(28)上記実施の形態では、付与される特典として、遊技状態が移行する特典と、再遊技の特典の他に、メダルを払い出す特典を備える構成としたが、かかる構成に限定されるものではなく、遊技者に何らかの特典が付与される構成であればよい。例えば、メダルを払い出す特典に代えてメダル以外の賞品を払い出す構成であってもよい。また、現実のメダル投入やメダル払出機能を有さず、遊技者の所有するメダルをクレジット管理するスロットマシンにおいては、クレジットされたメダルの増加が特典の付与に相当する。
(29)上記実施の形態では、リールを3つ並列して備え、有効ラインとして5ラインを有するスロットマシンについて説明したが、かかる構成に限定されるものではなく、例えばリールを5つ並列して備えたスロットマシンや、有効ラインを7ライン有するスロットマシンであってもよい。
(30)上記実施の形態では、いわゆるAタイプのスロットマシンについて説明したが、Bタイプ、Cタイプ、AタイプとCタイプの複合タイプ、BタイプとCタイプの複合タイプ、さらにはCTゲームを備えたタイプなど、どのようなスロットマシンにこの発明を適用してもよく、何れの場合であっても上述した実施の形態と同様の作用効果を奏することは明らかである。なお、これらの各タイプにおけるボーナス当選としては、BB当選、RB当選、SB当選、CT当選などが挙げられる。
(31)上記実施の形態では、スロットマシン10について具体化した例を示したが、パチンコ機に適用しても良い。また、スロットマシンとパチンコ機とを融合した形式の遊技機に適用してもよい。即ち、スロットマシンのうち、メダル投入及びメダル払出機能に代えて、パチンコ機のような球投入及び球払出機能をもたせた遊技機としてもよい。
一実施の形態におけるスロットマシンの正面図である。 前面扉を閉じた状態を示すスロットマシンの斜視図である。 前面扉を開いた状態を示すスロットマシンの斜視図である。 前面扉の背面図である。 筐体の正面図である。 各リールの図柄配列を示す図である。 表示窓から視認可能となる図柄と組合せラインとの関係を示す説明図である。 入賞態様と付与される特典との関係を示す説明図である。 スロットマシンのブロック図である。 RAMの構成を説明するための説明図である。 スタートレバーの操作検出及び基礎乱数の取得に関するブロック図である。 タイマ割込み処理を示すフローチャートである。 センサ監視処理を示すフローチャートである。 メイン処理を示すフローチャートである。 操作判定処理を示すフローチャートである。 当選確率設定処理を示すフローチャートである。 割込み待ち処理を示すフローチャートである。 通常処理を示すフローチャートである。 開始待ち処理を示すフローチャートである。 遅延処理を示すフローチャートである。 遅延カウンタ処理を示すフローチャートである。 各種信号の変化を示すタイムチャートである。 抽選処理を示すフローチャートである。 乱数作成処理を示すフローチャートである。 通常状態用抽選テーブルの一例を示す図である。 スベリテーブルの一例を示す図である。 リール制御処理を示すフローチャートである。 停止前処理を示すフローチャートである。 BB状態処理を示すフローチャートである。
10…遊技機としてのスロットマシン、31…可変表示手段としてのリールユニット、32…循環表示手段を構成すると共に周回体としてのリール、41…開始操作手段又は始動操作手段としてのスタートレバー、42〜44…停止操作手段としてのストップスイッチ、56…開始操作手段又は入力操作手段としての第1クレジット投入スイッチ、57…開始操作手段又は入力操作手段としての第2クレジット投入スイッチ、58…開始操作手段又は入力操作手段としての第3クレジット投入スイッチ、63…補助演出部又は補助演出手段を構成する上部ランプ、64…補助演出部又は補助演出手段を構成するスピーカ、65…補助演出部又は補助演出手段を構成する補助表示部、81…サブ制御基板としての表示制御装置、101…メイン制御基板としての主制御装置、102…抽選手段やメイン制御手段等の各種制御手段を構成するCPU、106…RAM、111a…第1カウンタ、111b…第2カウンタ、111c…更新カウンタ、111d…遅延カウンタ、150…乱数生成手段としての基礎乱数生成器、150a…数値情報生成手段としてのカウンタ、150b…数値情報取得手段としてのラッチ回路、151…クロック信号出力手段としての第2クロック回路、152…開始信号出力手段,取得信号出力手段及びクロック信号監視装置としての監視回路、153…波形整形回路、154…遅延手段としての反転器。

Claims (8)

  1. 遊技を進行させるべく操作される操作手段と、
    前記操作手段が操作されたことに基づいて第1信号を出力するとともに、前記操作手段が操作されていないことに基づいて前記第1信号を非出力とする信号出力手段と
    を備え、前記信号出力手段からの信号入力状況に基づいて遊技を進行させる遊技機において、
    第1処理を行う第1処理実行手段と、
    前記信号出力手段からの信号入力状況を確認する状況確認処理を含む第2処理を定期的に行う第2処理実行手段と
    を備え、
    前記第1処理実行手段は、
    特定処理を行う特定処理実行手段と、
    前記特定処理が終了した場合、前記状況確認処理の処理結果を用いて遊技の進行に関わる第3処理を行う第3処理実行手段と
    を有し、
    前記特定処理実行手段は、
    前記特定処理を開始した後に前記第2処理が行われたか否かを確認する確認処理を行う確認処理実行手段と、
    前記確認処理実行手段が前記第2処理が行われたことを確認した場合、前記特定処理を終了させる終了手段と
    を有することを特徴とする遊技機。
  2. 前記第1処理実行手段は、規定条件が成立するまで前記第1処理を繰り返し行うことを特徴とする請求項1に記載の遊技機。
  3. 遊技者等により操作される所定操作手段と、前記所定操作手段が操作されたことに基づいて前記第1信号を出力するとともに、前記所定操作手段が操作されていないことに基づいて前記第1信号を非出力とする所定信号出力手段と、を備え、前記規定条件は、前記所定信号出力手段から前記第1信号が出力されたことに基づいて成立することを特徴とする請求項2に記載の遊技機。
  4. 前記第1処理実行手段は、第4処理を行う第4処理実行手段と、前記第4処理が終了した場合に規定条件が成立したか否かの判定処理を行う判定処理実行手段と、前記規定条件が成立していない場合に前記第4処理に復帰させる処理を行う復帰処理実行手段と、前記規定条件が成立した場合に前記第4処理を終了させる処理を行う第4処理終了実行手段と、を備え、前記第4処理実行手段が、前記特定処理実行手段及び前記第3処理実行手段を有することを特徴とする請求項1に記載の遊技機。
  5. 遊技者等により操作される所定操作手段と、前記所定操作手段が操作されたことに基づいて前記第1信号を出力するとともに、前記所定操作手段が操作されていないことに基づいて前記第1信号を非出力とする所定信号出力手段と、を備え、前記判定処理実行手段は、前記所定信号出力手段から前記第1信号が出力されたことに基づいて前記規定条件が成立したと判定することを特徴とする請求項4に記載の遊技機。
  6. 前記第3処理実行手段は、前記第3処理として、前記状況確認処理の処理結果が前記第1信号の入力を示す処理結果である場合に前記操作手段の操作がなされたと判定する処理を行い、前記状況確認処理の処理結果が前記第1信号の非入力を示す処理結果である場合に前記操作手段の操作がなされていないと判定する処理を行うことを特徴とする請求項1乃至請求項5のいずれかに記載の遊技機。
  7. 前記状況確認処理の処理結果を記憶する記憶手段を備え、前記記憶手段を、前記状況確認処理の最新の処理結果を記憶する第1記憶領域と、前記最新の処理結果以前の処理結果を記憶する第2記憶領域と、を有する構成としたことを特徴とする請求項1乃至請求項5のいずれかに記載の遊技機。
  8. 前記第3処理実行手段は、前記第1記憶領域に記憶された情報と、前記第2記憶領域に記憶された情報と、を用いて前記第3処理を行うことを特徴とする請求項7に記載の遊技機。
JP2008115265A 2008-04-25 2008-04-25 遊技機 Active JP5610113B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008115265A JP5610113B2 (ja) 2008-04-25 2008-04-25 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008115265A JP5610113B2 (ja) 2008-04-25 2008-04-25 遊技機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014180836A Division JP5979393B2 (ja) 2014-09-05 2014-09-05 遊技機

Publications (3)

Publication Number Publication Date
JP2009261661A JP2009261661A (ja) 2009-11-12
JP2009261661A5 true JP2009261661A5 (ja) 2011-06-16
JP5610113B2 JP5610113B2 (ja) 2014-10-22

Family

ID=41388276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008115265A Active JP5610113B2 (ja) 2008-04-25 2008-04-25 遊技機

Country Status (1)

Country Link
JP (1) JP5610113B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5907508B2 (ja) * 2013-08-07 2016-04-26 サミー株式会社 スロットマシン
JP5967718B2 (ja) * 2013-08-07 2016-08-10 サミー株式会社 遊技機
JP5979393B2 (ja) * 2014-09-05 2016-08-24 株式会社三洋物産 遊技機
JP6249295B2 (ja) * 2014-09-16 2017-12-20 サミー株式会社 遊技機
JP2016059442A (ja) * 2014-09-16 2016-04-25 サミー株式会社 遊技機
JP6269406B2 (ja) * 2014-09-16 2018-01-31 サミー株式会社 遊技機
JP6600660B2 (ja) * 2017-04-24 2019-10-30 株式会社三共 遊技機

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4005760B2 (ja) * 2000-06-02 2007-11-14 株式会社ソフィア 遊技機
JP4218863B2 (ja) * 2002-05-02 2009-02-04 株式会社三共 遊技機
JP2006289009A (ja) * 2005-04-08 2006-10-26 Oizumi Corp 遊技機
JP2007202648A (ja) * 2006-01-31 2007-08-16 Aruze Corp 遊技機

Similar Documents

Publication Publication Date Title
JP6434933B2 (ja) 遊技機
JP6434934B2 (ja) 遊技機
JP2009261662A5 (ja)
JP5610113B2 (ja) 遊技機
JP2009261661A5 (ja)
JP5590277B2 (ja) 遊技機
JP2009261660A5 (ja)
JP2009261663A5 (ja)
JP5590276B2 (ja) 遊技機
JP5979393B2 (ja) 遊技機
JP2009261659A5 (ja)
JP7481682B2 (ja) 遊技機
JP6836215B2 (ja) 遊技機
JP6836216B2 (ja) 遊技機
JP5590280B2 (ja) 遊技機
JP2018103029A (ja) 遊技機
JP2018075458A (ja) 遊技機
JP2018075457A (ja) 遊技機
JP2021072980A (ja) 遊技機
JP2016182520A (ja) 遊技機
JP2020072846A (ja) 遊技機
JP2016120399A (ja) 遊技機
JP2016120398A (ja) 遊技機
JP2014230832A (ja) 遊技機
JP2014230833A (ja) 遊技機