JP5845242B2 - 遊技機 - Google Patents

遊技機 Download PDF

Info

Publication number
JP5845242B2
JP5845242B2 JP2013268112A JP2013268112A JP5845242B2 JP 5845242 B2 JP5845242 B2 JP 5845242B2 JP 2013268112 A JP2013268112 A JP 2013268112A JP 2013268112 A JP2013268112 A JP 2013268112A JP 5845242 B2 JP5845242 B2 JP 5845242B2
Authority
JP
Japan
Prior art keywords
game
special
state
random number
variable display
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.)
Active
Application number
JP2013268112A
Other languages
English (en)
Other versions
JP2014140670A (ja
Inventor
小倉 敏男
敏男 小倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sankyo Co Ltd
Original Assignee
Sankyo Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sankyo Co Ltd filed Critical Sankyo Co Ltd
Priority to JP2013268112A priority Critical patent/JP5845242B2/ja
Publication of JP2014140670A publication Critical patent/JP2014140670A/ja
Application granted granted Critical
Publication of JP5845242B2 publication Critical patent/JP5845242B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Pinball Game Machines (AREA)

Description

本発明は、パチンコ遊技機等の遊技機に係り、詳しくは、始動領域を遊技媒体が通過したことにもとづいて識別情報の可変表示を行い特定表示結果が導出表示されたときに、遊技者にとって有利な有利状態に制御する遊技機に関する。
遊技機として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞して始動条件が成立すると、複数種類の識別情報(以下、表示図柄)を可変表示装置にて可変表示し、その表示結果により所定の遊技価値を付与するか否かを決定する、いわゆる可変表示ゲームによって遊技興趣を高めたパチンコ遊技機がある。こうしたパチンコ遊技機では、可変表示ゲームにおける表示図柄の可変表示が完全に停止した際の停止図柄態様が特定表示態様となったときに、遊技者にとって有利な特定遊技状態(大当り遊技状態)となる。例えば、大当り遊技状態となったパチンコ遊技機は、大入賞口又はアタッカと呼ばれる特別電動役物を開放状態とし、遊技者に対して遊技球の入賞が極めて容易となる状態を一定時間継続的に提供する。
このような遊技機において、始動入賞口に入った入賞球を検出する始動口スイッチがオンすることに対応して、乱数生成手段を構成する乱数確定レジスタに、例えばCPUからのラッチパルスや始動口スイッチからの出力といった、所定信号を入力し、この乱数確定レジスタにラッチされたカウント値を乱数値として取得するものがある(例えば特許文献1)。
特開2000−61120号公報
特許文献1に記載の技術では、不正行為がなされるおそれがある。また、外部出力用の信号線に無駄が生じる。
この発明は、上記実状に鑑みてなされたものであり、不正行為を防止しつつ、外部出力用の信号線の無駄を低減することができる遊技機を提供することを目的とする。
(1)上記目的を達成するため、本願の請求項に係る遊技機は、始動領域(例えば、第1始動入賞口、第2始動入賞口)を遊技媒体(例えば、遊技球)が通過したことにもとづいて識別情報(例えば、第1特図、第2特図)の可変表示を行い特定表示結果(例えば、大当り図柄)が導出表示されたときに、遊技者にとって有利な有利状態(例えば、大当り遊技状態)に制御する遊技機であって、前記始動領域に設けられ、所定条件の成立にもとづいて入賞可能な開放状態に変化可能な可変入賞装置(例えば、普通可変入賞装置6B)と、前記遊技機への電力供給が停止しても記憶内容を所定期間保持可能な記憶手段(例えば、RAM507)と、操作に応じて操作信号を出力する初期化操作手段(例えば、クリアスイッチ304)と、電力供給が開始されたときに、前記初期化操作手段からの前記操作信号が入力されたことにもとづいて、前記記憶手段の記憶内容を初期化する初期化処理を実行する初期化処理実行手段(例えば、遊技制御用マイクロコンピュータ100におけるステップS31、S32を実行する部分)と、所定のエラーが発生しているか否かを判定するエラー判定手段(例えば、遊技制御用マイクロコンピュータ100におけるステップSA11のスイッチ異常チェック処理を実行する部分)と、少なくとも、前記初期化処理実行手段によって前記初期化処理が実行されたこと、および前記エラー判定手段によって前記所定のエラーが発生していると判定されたことを含む信号出力条件が成立したこと(例えば、初期化処理が実行されたこと、第2始動入賞口への異常入賞を検出したこと)にもとづいて、前記遊技機の外部にセキュリティ信号を出力するセキュリティ信号外部出力手段(例えば、遊技制御用マイクロコンピュータ100におけるステップS32A、SA32でセキュリティ信号出力時間を設定した後に、ステップSB01〜SB03を実行して、セキュリティ信号を出力する部分)とを備え、前記エラー判定手段は、前記可変入賞装置への異常入賞発生しているときに、前記所定のエラーが発生していると判定し(例えば、遊技制御用マイクロコンピュータ100におけるステップSA31の処理を実行する)、前記セキュリティ信号外部出力手段は、前記初期化処理実行手段によって前記初期化処理が実行されたときと前記エラー判定手段によって前記所定のエラーが発生していると判定されたときとで、前記遊技機に設けられた共通の出力端子(例えば、出力ポートOP1のビット番号[7]に対応するターミナル基板のコネクタ)から前記セキュリティ信号を前記遊技機の外部に出力し(例えば、遊技制御用マイクロコンピュータ100は、ステップS32A、SA32、SB01〜SB03を実行することによって、出力ポートOP1のビット番号[7]に対応するターミナル基板のコネクタから共通のセキュリティ信号として外部出力する)、前記初期化処理実行手段によって前記初期化処理が実行されたことにより前記セキュリティ信号を出力しているときに前記エラー判定手段によって前記所定のエラーが発生していると判定された場合には、前記セキュリティ信号を出力する出力期間を延長し、前記初期化処理実行手段によって前記初期化処理が実行されたときに前記セキュリティ信号を出力する出力期間と、前記エラー判定手段によって前記所定のエラーが発生していると判定されたときに前記セキュリティ信号を出力する出力期間とが異なる。
このような構成によれば、不正行為を防止しつつ、外部出力用の信号線の無駄を低減することができる。
なお、前記始動領域には、遊技媒体を検出し、第1の検出信号を出力する第1検出手段と、遊技媒体を検出し、第2の検出信号を出力する第2検出手段とが設けられ、前記エラー判定手段は、前記第1検出手段から出力された前記第1の検出信号と前記第2検出手段から出力された前記第2の検出信号とにもとづいて、前記第1検出手段にて検出された遊技媒体数と前記第2検出手段にて検出された遊技媒体数との差が所定の閾値を超えたときに前記可変入賞装置への異常入賞が発生したと判定し、前記所定の閾値を、前記第1検出手段と前記第2検出手段との間に複数の遊技媒体が滞留した状態となったときの前記第1検出手段における遊技媒体の検出数と前記第2検出手段における遊技媒体の検出数との差分よりも多い値としたものでもよい。
(2)あるいは、本願に係る遊技機は、遊技領域に設けられた通過領域(例えば普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口、特別可変入賞球装置7が形成する大入賞口など)に遊技媒体(例えば遊技球など)を通過させる遊技を行うことが可能な遊技機(例えばパチンコ遊技機1など)であって、所定の初期設定(例えばステップS1〜S14からなるセキュリティチェック処理など)を実行した後、不揮発性メモリ(例えばROM506など)の記憶内容に基づき遊技機における遊技制御を実行する制御用CPU(例えばCPU505など)が内蔵された遊技制御用マイクロコンピュータ(例えば遊技制御用マイクロコンピュータ100など)と、前記遊技制御用マイクロコンピュータに内蔵又は外付けされ、乱数値となる数値データを生成する乱数回路(例えば乱数回路509など)と、前記通過領域を通過する遊技媒体を検出して第1の検出信号を出力する第1遊技媒体検出手段(例えば第1始動口スイッチ22Aや第2始動口スイッチ22Bなど)と、前記第1遊技媒体検出手段より下流に配置され、前記通過領域を通過する遊技媒体を検出して第2の検出信号を出力する第2遊技媒体検出手段(例えば第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dなど)とを備え、前記乱数回路は、数値データを予め定められた手順により更新して出力する数値更新手段(例えば乱数生成回路553や乱数列変更回路555など)と、前記数値更新手段から出力された数値データを前記乱数値として取り込んで格納する乱数値格納手段(例えば乱数値レジスタ559A(R1D)や乱数値レジスタ559B(R2D)など)とを含み、前記遊技制御用マイクロコンピュータは、前記乱数回路によって生成された乱数値に基づいて、前記制御用CPUにより所定の決定を行う制御決定手段(例えばCPU505がステップS229、S230、S260、S262の処理を実行する部分や、ステップS170の普通図柄通常処理にて普図表示結果を決定する部分など)と、所定信号(例えば第1始動入賞信号SS1や第2始動入賞信号SS2に基づく乱数ラッチ信号LL1、LL2など)の入力に基づいて前記数値更新手段から出力された数値データが前記乱数値格納手段に格納されたときに第1の値にされて新たな数値データの格納を制限する一方、前記乱数値格納手段に格納された数値データが前記乱数値の読出タイミングにて前記制御用CPUにより読み出されたときに第2の値にされて新たな数値データの格納を許可する所定のデータ(例えば乱数ラッチフラグRDFM0、RDFM1など)と、前記所定の初期設定において前記不揮発性メモリの記憶内容が変更されたか否かを検査するセキュリティチェックを実行するセキュリティチェック手段(例えばCPU505がステップS9〜ステップS14の処理を実行する部分など)と、前記セキュリティチェック手段によるセキュリティチェックの実行時間を可変設定可能なセキュリティ時間設定手段(例えばセキュリティ時間設定KSESのビット番号[2−0]に基づきCPU505がステップS1〜ステップS4の処理を実行する部分や、セキュリティ時間設定KSESのビット番号[4−3]に基づきCPU505がステップS5〜ステップS8の処理を実行する部分など)と、前記第1遊技媒体検出手段から入力した第1の検出信号と前記第2遊技媒体検出手段から入力した第2の検出信号とに基づいて、前記通過領域への遊技媒体の通過異常が発生したか否かを判定する通過異常判定手段(例えばCPU505がステップSA21〜SA31の処理を実行する部分など)とを含み、前記第2遊技媒体検出手段は、前記第1遊技媒体検出手段による遊技媒体の検出方式(例えば電磁式など)とは異なる検出方式(例えば光学式など)で遊技媒体を検出する(例えば第1始動口スイッチ22Aや第2始動口スイッチ22Bが近接スイッチとして構成される一方、第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dがフォトセンサとして構成されることなど)。
このような構成によれば、所定信号の入力に基づいて数値データが乱数値格納手段に格納されたときに所定のデータが第1の値にされて新たな数値データの格納が制限される一方、乱数値の読出タイミングにて乱数値格納手段から数値データが読み出されたときに所定のデータが第2の値にされて新たな数値データの格納が許可される。これにより、所定信号の入力に基づいて乱数値格納手段に格納された数値データを、正確な乱数値として取得することができる。また、セキュリティチェック処理の実行時間を可変設定できる。これにより、遊技制御の実行開始タイミングを特定することが困難になり、制御コードの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続することによる不正行為を、確実に防止することができる。さらに、第1遊技媒体検出手段より下流に、通過領域を通過する遊技媒体を検出して第2の検出信号を出力する第2遊技媒体検出手段を配置し、第2遊技媒体検出手段による遊技媒体の検出方式を、第1遊技媒体検出手段による遊技媒体の検出方式とは異ならせている。これにより、遊技媒体を検出する検出手段に対する不正行為を確実に検知して、確実な不正行為対策を講じることができる。
(3)上記(2)の遊技機において、前記数値更新手段は、数値データを更新可能な所定の範囲において、所定の更新初期値から所定の更新最終値まで循環的に数値データを更新し(例えば乱数生成回路553や乱数列変更回路555により図18や図19に示すような乱数列RSNを生成する部分など)、前記遊技制御用マイクロコンピュータは、当該遊技制御用マイクロコンピュータがシステムリセットされるごとに、前記所定の更新初期値を可変設定可能な乱数初期値設定手段(例えばCPU505がステップS55の処理を実行する部分や、スタート値設定回路554など)を含んでもよい。
このような構成においては、数値更新手段が循環的に数値データを更新するために設定される所定の更新初期値を、遊技制御用マイクロコンピュータがシステムリセットされるごとに可変設定できる。これにより、システムリセットの発生後に乱数値となる数値データを特定することが困難になり、狙い撃ちなどによる不正行為を、確実に防止することができる。
(4)上記(3)の遊技機において、遊技機への電力供給が開始された後、前記制御用CPUの動作とは別個に初期値決定用データをカウントするカウント手段(例えばフリーランカウンタ554Aなど)を備え、前記乱数初期値設定手段は、前記カウント手段によってカウントされた初期値決定用データを用いて、前記所定の更新初期値を決定してもよい(例えばCPU505によるステップS55の処理に基づき、スタート値設定回路554がスタート値を設定する部分など)。
このような構成においては、制御用CPUの動作とは別個にカウント手段によってカウントされた初期値決定用データを用いて、所定の更新初期値を決定する。これにより、制御用CPUの動作態様から乱数値となる数値データを特定することが困難になり、狙い撃ちなどによる不正行為を、確実に防止することができる。
(5)上記(2)から(4)のいずれかの遊技機において、前記不揮発性メモリは、前記遊技制御用マイクロコンピュータに内蔵され、前記遊技制御用マイクロコンピュータは、前記制御用CPU以外による前記不揮発性メモリの外部読出を制限する読出制限回路(例えば内部リソースアクセス制御回路501Aなど)を含んでもよい。
このような構成においては、制御用CPU以外による不揮発性メモリの外部読出を制限する読出制限回路が遊技制御用マイクロコンピュータに含まれている。これにより、不揮発性メモリに記憶されている制御プログラムを遊技制御用マイクロコンピュータの外部から読み出して解析などをすることが困難になり、制御プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続することによる不正行為を、確実に防止することができる。
(6)上記(2)から(5)のいずれかの遊技機において、前記遊技制御用マイクロコンピュータの外部にて乱数用クロック信号を生成して、前記乱数回路に供給する乱数用クロック生成回路(例えば乱数用クロック生成回路112など)と、前記制御用CPUに供給される制御用クロック信号を生成する制御用クロック生成回路(例えば制御用クロック生成回路111やクロック回路502など)とを備え、前記乱数回路は、前記遊技制御用マイクロコンピュータに内蔵され、前記遊技制御用マイクロコンピュータは、前記乱数用クロック生成回路から供給される乱数用クロック信号の入力状態を前記制御用クロック生成回路にて生成された制御用クロック信号と比較することにより、乱数用クロック信号の入力状態に異常が発生したか否かを判定する乱数用クロック異常判定手段(例えば周波数監視回路551、及び、CPU505がステップS62〜S66の処理を実行する部分など)を含んでもよい。
このような構成においては、乱数用クロック生成回路から供給される乱数用クロック信号の入力状態を制御用クロック生成回路にて生成された制御用クロック信号と比較することにより、乱数用クロック信号の入力状態に異常が発生したか否かを判定する。これにより、乱数値となる数値データの更新動作に異常が発生している状態で遊技制御が実行されてしまうことを防止できる。
(7)上記(2)から(6)のいずれかの遊技機において、前記遊技制御用マイクロコンピュータは、当該遊技制御用マイクロコンピュータのシステムリセットが解除されて前記制御用CPUによる遊技制御の実行が開始されるときに、前記所定のデータを第2の値にするシステムリセット時処理手段(例えばCPU505がステップS56の処理を実行する部分など)を含んでもよい。
このような構成においては、遊技制御用マイクロコンピュータのシステムリセットが解除されて遊技制御の実行が開始されるときに、システムリセット時処理手段が所定のデータを第2の値にする。これにより、例えば電源投入時などの電源電圧が不安定な状態で誤って乱数値格納手段に格納された数値データを乱数値として取得してしまうことを防止できる。
(8)上記(2)から(7)のいずれかの遊技機において、遊技機への電力供給に基づいて生成された所定電源電圧を監視し、該所定電源電圧が低下したことに基づいて検出信号(例えば電源断信号など)を出力する電源監視手段(例えば電源監視回路303など)を備え、前記遊技制御用マイクロコンピュータは、前記電源監視手段から前記検出信号が出力された後、前記遊技制御用マイクロコンピュータが動作停止状態となるまで、前記検出信号の入力状態を繰り返し判定する検出判定手段(例えばCPU505がステップS119の処理を実行する部分など)と、前記検出判定手段によって前記検出信号が入力されていない旨の判定がなされたときに、前記制御用CPUにより遊技制御処理プログラムの先頭から遊技制御の実行を開始させる電断復旧時制御手段(例えばCPU505がステップS124の処理を実行した後、遊技制御用タイマ割込み処理から復帰(リターン)する部分など)と、前記検出判定手段によって前記検出信号が入力されていない旨の判定がなされた後、前記電断復旧時制御手段が前記制御用CPUにより前記遊技制御処理プログラムの先頭から遊技制御の実行を開始させるより前に、前記所定のデータを第2の値にする電断復旧時処理手段(例えばCPU505がステップS121、S123の処理を実行する部分など)とを含んでもよい。
このような構成においては、電源監視手段から検出信号が出力された後、遊技制御用マイクロコンピュータが動作停止状態となるまで、検出判定手段により検出信号の入力状態を繰り返し判定する。そして、検出信号が入力されていない旨の判定がなされた後、制御用CPUにより遊技制御処理プログラムの先頭から遊技制御の実行が開始されるより前に、電断復旧時処理手段が所定のデータを第2の値にする。これにより、例えば所定電源電圧の低下時などの電源電圧が不安定な状態で誤って乱数値格納手段に格納された数値データを乱数値として取得してしまうことを防止できる。
なお、始動領域(例えば普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口など)を遊技媒体(例えば遊技球など)が通過した後に、可変表示の開始を許容する開始条件の成立(例えばステップS221またはステップS223にてNoと判定されたことなど)に基づいて、各々を識別可能な複数種類の識別情報(例えば特別図柄や飾り図柄など)を可変表示する可変表示手段(例えば第1及び第2特別図柄表示装置4A、4Bや画像表示装置5など)と、前記可変表示手段に特定表示結果(例えば大当り図柄となる確定特別図柄や大当り組合せの確定飾り図柄など)が導出表示されたときに遊技者にとって有利な特定遊技状態(例えば大当り遊技状態など)に制御する遊技状態制御手段(例えばCPU505がステップS144〜S147の処理を実行する部分など)と、前記始動領域を遊技媒体が通過したときに、前記乱数値格納手段から前記乱数値を読み出す乱数読出手段(例えばCPU505がステップS506の処理を実行する部分など)と、前記開始条件が成立したことに基づいて、前記乱数読出手段によって読み出された前記乱数値を用いて、前記特定遊技状態に制御するか否かを、前記識別情報の表示結果が導出表示される以前に決定する事前決定手段(例えばCPU505がステップS229の処理を実行する部分など)と、前記事前決定手段による決定前に、前記始動領域を遊技媒体が通過したときに、前記乱数読出手段によって読み出された前記乱数値に基づいて、前記特定遊技状態に制御するか否かを含む所定の判定を行う始動判定手段(例えばCPU505がステップS205、S210にて入賞時乱数値判定処理を実行する部分など)と、前記事前決定手段の決定結果に基づいて、前記識別情報の可変表示パターンを決定する可変表示パターン決定手段(例えばCPU505がステップS251〜S262の処理を実行する部分など)と、前記始動領域を遊技媒体が通過したときに、前記識別情報の可変表示パターンを決定するための可変表示決定用乱数値(例えば変動パターン種別決定用の乱数値MR3など)を抽出する抽出手段(例えばCPU505がステップS511の処理を実行する部分など)と、前記始動領域を遊技媒体が通過したにもかかわらず前記開始条件が成立していない可変表示について、前記乱数読出手段が読み出した前記乱数値と前記抽出手段が抽出した前記可変表示決定用乱数値とを所定の上限数を限度として保留記憶として記憶する保留記憶手段(例えば第1及び第2特図保留記憶部591A、591Bなど)と、前記始動判定手段による判定結果に基づいて、当該判定対象となった可変表示の前記開始条件が成立する以前に、特定演出(例えば図74に示す予告演出YD1や図75に示す予告演出YD2、図76に示す予告演出YD3など)を実行する特定演出実行手段(例えば演出制御用マイクロコンピュータ120のCPUがステップS705〜S709の処理に基づいて、S728〜S731の処理を実行する部分など)とを備え、前記可変表示パターン決定手段は、前記開始条件が成立したときの前記保留記憶手段が記憶する保留記憶数と、前記抽出手段により抽出された前記可変表示決定用乱数値と、複数種類の可変表示パターンに対応した決定値とに基づいて、前記識別情報の可変表示パターンを決定し、前記始動判定手段は、前記抽出手段により抽出された前記可変表示決定用乱数値と、前記複数種類の可変表示パターンに対応した決定値とに基づいて、前記識別情報の可変表示パターンが複数種類の可変表示パターンのうちの特定の可変表示パターン(例えばスーパーリーチを伴う変動パターンなど)となるか否かを判定し(例えばCPU505がステップS528、S534の処理を実行する部分など)、前記特定演出実行手段は、前記始動判定手段によって前記特定遊技状態に制御すると判定された場合または前記特定の可変表示パターンとなると判定された場合に、前記特定演出を実行可能であり(例えば演出制御用マイクロコンピュータ120のCPUがステップS554〜S556、S561〜S563の処理や、ステップS701におけるYesの判定に基づいて、ステップS705〜S709の処理などを実行する部分など)、前記特定の可変表示パターンに対応した決定値のうちの少なくとも一部は、前記開始条件が成立したときの前記保留記憶手段が記憶する保留記憶数にかかわらず、同一決定値(例えば図60に示すような特定パターン共通範囲内となる「230」〜「251」の範囲の値など)が設定され、前記特定の可変表示パターンと異なる非特定の可変表示パターンに対応した決定値は、前記開始条件が成立したときの前記保留記憶手段が記憶する保留記憶数に応じて異なる決定値(例えば図60に示す非リーチやノーマルリーチに割り当てられた決定値など)が設定され、前記始動判定手段は、前記抽出手段により抽出された前記可変表示決定用乱数値が前記同一判定値と合致するか否かを判定することによって、前記特定の可変表示パターンとなるか否かを判定してもよい(例えばCPU505がステップS528、S534にて乱数値MR3が特定パターン共通範囲内であるか否かを判定する部分など)。さらに、前記非特定の可変表示パターンには、リーチ状態が成立しない可変表示パターンであり、前記特定の可変表示パターンと比較して前記識別情報の可変表示を開始してから表示結果を導出表示するまでの可変表示時間が短い短縮用の可変表示パターン(例えば変動パターンPA1−2など)を含み、前記可変表示パターン決定手段は、前記可変表示の開始条件が成立したときの前記保留記憶手段が記憶する保留記憶数が所定数以上である場合(例えば通常時における合計保留記憶数が「3」以上または「6」以上である場合や、時短中における合計保留記憶数が「1」以上または「2」以上である場合など)には、該保留記憶数が所定数未満である場合と比較して、前記短縮用の可変表示パターンに対応した決定値の個数が多く設定された決定値を用いて可変表示パターンを決定してもよい(例えば演出制御用マイクロコンピュータ120のCPUがステップS258、S259にて選択したハズレ変動パターン種別決定テーブル133C、133Dのいずれかを参照してステップS260にて変動パターン種別を決定する部分など)。
このような構成においては、特定の可変表示パターンに対応した決定値のうちの少なくとも一部は、開始条件が成立したときの保留記憶数にかかわらず同一決定値が設定され、この同一決定値と可変表示決定用乱数値が合致するか否かを判定することによって、特定の可変表示パターンとなるか否かが判定される。これにより、識別情報の可変表示よりも前に、特定の可変表示パターンとなる旨の判定を確実に行うことができる。また、特定の可変表示パターンと異なる非特定の可変表示パターンに対応した決定値は、開始条件が成立したときの保留記憶数に応じて異なる決定値が設定されるので、保留記憶手段が記憶する保留記憶数に従って可変表示時間を異ならせることができ、可変表示の作動率が低下してしまう事態を極力防止することができる。
この実施の形態におけるパチンコ遊技機の正面図である。 始動入賞口内の断面構造の具体例を示す図である。 遊技球の検出方式を説明するための回路図などである。 パチンコ遊技機に搭載された各種の制御基板などを示す構成図である。 電源基板の構成例を示すブロック図である。 リセット信号及び電源断信号の状態を模式的に示すタイミング図である。 演出制御コマンドの内容の一例を示す説明図である。 遊技制御用マイクロコンピュータの構成例を示すブロック図である。 遊技制御用マイクロコンピュータにおけるアドレスマップの一例を示す図である。 プログラム管理エリア及び内蔵レジスタエリアの主要部分を例示する図である。 ヘッダ及び機能設定における設定内容の一例を示す図である。 第1乱数初期設定、第2乱数初期設定及び割込み初期設定における設定内容の一例を示す図である。 セキュリティ時間設定における設定内容の一例を示す図である。 内部情報レジスタの構成例等を示す図である。 遊技用乱数となる乱数値を例示する説明図である。 乱数回路の構成例を示すブロック図である。 乱数列変更レジスタの構成例等を示す図である。 乱数列変更回路による乱数列更新規則の変更動作を示す説明図である。 乱数列変更回路による乱数列更新規則の変更動作を示す説明図である。 乱数値取込レジスタの構成例等を示す図である。 乱数ラッチ選択レジスタの構成例等を示す図である。 乱数値レジスタの構成例を示す図である。 乱数ラッチフラグレジスタの構成例等を示す図である。 乱数割込み制御レジスタの構成例等を示す図である。 遊技制御用マイクロコンピュータに乱数回路が外付けされる場合の構成例を示す図である。 入力ポート及び出力ポートのビット割当て例を示す図である。 変動パターンを例示する図である。 変動パターン種別を例示する図である。 特図表示結果決定テーブルの構成例を示す図である。 大当り種別決定テーブルの構成例を示す図である。 変動パターン種別決定テーブルの構成例を示す図である。 変動パターン種別決定テーブルの構成例を示す図である。 変動パターン決定テーブルの構成例を示す図である。 普図表示結果決定テーブルの構成例を示す図である。 始動口入賞テーブルの構成例を示す図である。 遊技制御用データ保持エリアの構成例を示すブロック図である。 入力ポートチェックに使用される各種バッファの構成例を示す図である。 演出制御パターンの構成例などを示す図である。 セキュリティチェック処理の一例を示すフローチャートである。 遊技制御メイン処理の一例を示すフローチャートである。 乱数回路設定処理の一例を示すフローチャートである。 乱数回路異常検査処理の一例を示すフローチャートである。 遊技制御用タイマ割込み処理の一例を示すフローチャートである。 電源断処理の一例を示すフローチャートである。 スイッチ処理の一例を示すフローチャートである。 スイッチ異常チェック処理の一例を示すフローチャートである。 第1始動口スイッチや第1入賞確認スイッチによる検出動作例を示す図である。 第1始動口スイッチや第1入賞確認スイッチによる検出動作例を示す図である。 始動入賞口内で遊技球が球詰まりを起こした場合を示す図である。 メイン側エラー処理の一例を示すフローチャートである。 遊技機から出力される各種信号を示す図である。 情報出力処理の一例を示すフローチャートである。 セキュリティ信号の出力動作例を示すタイミング図である。 遊技用乱数更新処理の一例を示すフローチャートである。 特別図柄プロセス処理の一例を示すフローチャートである。 始動入賞判定処理の一例を示すフローチャートである。 乱数値設定処理の一例を示すフローチャートである。 ソフトウェアによる乱数値の加工動作例を示す図である。 入賞時乱数値判定処理の一例を示すフローチャートである。 特定パターン共通範囲などを示す図である。 特別図柄通常処理の一例を示すフローチャートである。 変動パターン設定処理の一例を示すフローチャートである。 特別図柄停止処理の一例を示すフローチャートである。 大当り終了処理の一例を示すフローチャートである。 普通図柄プロセス処理の一例を示すフローチャートである。 演出制御メイン処理の一例を示すフローチャートである。 異常報知画面の一例を示す図である。 演出制御コマンド解析処理の一例を示すフローチャートである。 演出制御プロセス処理の一例を示すフローチャートである。 飾り図柄変動設定処理の一例を示すフローチャートである。 連続予告設定処理の一例を示すフローチャートである。 飾り図柄変動中処理の一例を示すフローチャートである。 演出制御指令処理の一例を示すフローチャートである。 予告演出が実行されるときの表示動作例などを示す図である。 予告演出が実行されるときの表示動作例などを示す図である。 予告演出が実行されるときの表示動作例などを示す図である。 乱数回路における動作を説明するためのタイミングチャートである。 乱数値レジスタの読出動作などを説明するためのタイミングチャートである。 電源電圧の低下時における動作などを説明するためのタイミングチャートである。
以下、図面を参照しつつ、本発明の一実施形態を詳細に説明する。図1は、本実施の形態におけるパチンコ遊技機の正面図であり、主要部材の配置レイアウトを示す。パチンコ遊技機(遊技機)1は、大別して、遊技盤面を構成する遊技盤(ゲージ盤)2と、遊技盤2を支持固定する遊技機用枠(台枠)3とから構成されている。遊技盤2には、ガイドレールによって囲まれた、ほぼ円形状の遊技領域が形成されている。この遊技領域には、遊技媒体としての遊技球が、図4に示す発射モータ61を含む打球発射装置により発射されて打ち込まれる。
遊技盤2の所定位置(図1に示す例では、遊技領域の右側方)には、第1特別図柄表示装置4Aと、第2特別図柄表示装置4Bとが設けられている。第1特別図柄表示装置4Aと第2特別図柄表示装置4Bはそれぞれ、例えば7セグメントやドットマトリクスのLED(発光ダイオード)等から構成され、可変表示ゲームの一例となる特図ゲームにおいて、各々が識別可能な複数種類の識別情報(特別識別情報)である特別図柄(「特図」ともいう)を、変動可能に表示(可変表示)する。例えば、第1特別図柄表示装置4Aと第2特別図柄表示装置4Bはそれぞれ、「0」〜「9」を示す数字や「−」を示す記号等から構成される複数種類の特別図柄を可変表示する。なお、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにて表示される特別図柄は、「0」〜「9」を示す数字や「−」を示す記号等から構成されるものに限定されず、例えば7セグメントのLEDにおいて点灯させるものと消灯させるものとの組合せを異ならせた複数種類の点灯パターンが、複数種類の特別図柄として予め設定されていればよい。複数種類の特別図柄には、それぞれに対応した図柄番号が付されている。一例として、「0」〜「9」を示す数字それぞれには、「0」〜「9」の図柄番号が付され、「−」を示す記号には、「10」の図柄番号が付されていればよい。以下では、第1特別図柄表示装置4Aにより可変表示される特別図柄を「第1特図」ともいい、第2特別図柄表示装置4Bにより可変表示される特別図柄を「第2特図」ともいう。
第1特別図柄表示装置4Aと第2特別図柄表示装置4Bの上方には、第1保留表示器25Aと、第2保留表示器25Bとが設けられている。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、特図ゲームにおける可変表示の保留記憶数(特図保留記憶数)を特定可能に表示(特図保留記憶表示)する。一例として、第1保留表示器25Aは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームにおける可変表示の保留記憶数(第1特図保留記憶数)を特定可能に表示する。第2保留表示器25Bは、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームにおける可変表示の保留記憶数(第2特図保留記憶数)を特定可能に表示する。特図ゲームにおける可変表示の保留記憶は、普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)して始動入賞したときに発生する。すなわち、特図ゲームや飾り図柄の可変表示といった可変表示ゲームを実行するための始動条件(「実行条件」ともいう)は成立したが、先に成立した開始条件に基づく可変表示ゲームが実行中であることや、パチンコ遊技機1における遊技状態が大当り遊技状態あるいは小当り遊技状態に制御されていることなどにより、可変表示ゲームを開始するための開始条件が成立していないときに、成立した始動条件に対応する可変表示の保留記憶が行われる。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、例えば第1特図保留記憶数と第2特図保留記憶数のそれぞれにおける上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されていればよい。
遊技盤2の所定位置(図1に示す例では、遊技領域の左側方)には、普通図柄表示器20が設けられている。一例として、普通図柄表示器20は、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bと同様に7セグメントやドットマトリクスのLED等から構成され、特別図柄とは異なる複数種類の識別情報である普通図柄(「普図」あるいは「普通図」ともいう)を変動可能に表示(可変表示)する。このような普通図柄の可変表示は、普図ゲーム(「普通図ゲーム」ともいう)と称される。普通図柄表示器20は、例えば「0」〜「9」を示す数字や「−」を示す記号等から構成される複数種類の普通図柄を可変表示する。複数種類の普通図柄には、それぞれに対応した図柄番号が付されている。一例として、「0」〜「9」を示す数字それぞれには、「0」〜「9」の図柄番号が付され、「−」を示す記号には、「10」の図柄番号が付されていればよい。なお、普通図柄表示器20は、「0」〜「9」を示す数字や「−」を示す記号等を普通図柄として可変表示するものに限定されず、例えば「○」と「×」とを示す装飾ランプ(又はLED)を交互に点灯させることや、「左」、「中」、「右」といった複数の装飾ランプ(又はLED)を所定順序で点灯させることにより、普通図柄を可変表示するものであってもよい。
普通図柄表示器20の上方には、普図保留表示器25Cが設けられている。普図保留表示器25Cは、普図ゲームにおける可変表示の保留記憶数(普図保留記憶数)を特定可能に表示(普図保留記憶表示)する。ここで、普図ゲームにおける可変表示の保留記憶は、遊技領域に設けられた通過ゲート41を遊技球が通過したときに発生する。すなわち、普図ゲームの可変表示を実行するための条件は成立したが、普図ゲームを開始するための条件が成立していないときに、普図ゲームの保留記憶が行われる。普図保留表示器25Cは、例えば普図保留記憶数の上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されていればよい。
遊技盤2における遊技領域の中央付近には、画像表示装置5が設けられている。画像表示装置5は、例えば液晶表示装置(LCD:Liquid Crystal Display)等から構成され、各種の演出画像を表示する表示領域を形成している。画像表示装置5の表示領域では、特図ゲームにおける第1特別図柄表示装置4Aによる第1特図の可変表示や第2特別図柄表示装置4Bによる第2特図の可変表示のそれぞれに対応して、例えば3つといった複数に分割された可変表示部となる飾り図柄表示部にて、各々が識別可能な複数種類の識別情報(装飾識別情報)である飾り図柄を可変表示する。
一例として、画像表示装置5の表示領域には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rが配置されている。そして、特図ゲームにおいて、第1特別図柄表示装置4Aによる第1特図の可変表示と、第2特別図柄表示装置4Bによる第2特図の可変表示とのうち、いずれかの可変表示が開始されることに対応して、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部において飾り図柄の可変表示(例えば上下方向あるいは左右方向のスクロール表示など)が開始される。その後、特図ゲームにおける可変表示結果として確定特別図柄が停止表示(完全停止表示)されるときに、画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて、飾り図柄の可変表示結果となる確定飾り図柄(最終停止図柄)が停止表示(完全停止表示)される。なお、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rは、画像表示装置5の表示領域内で移動可能とされ、飾り図柄を縮小あるいは拡大して表示することができるようにしてもよい。特別図柄や飾り図柄が完全停止表示されたときには、各図柄の可変表示における表示結果が確定的に表示され、それ以後は今回の可変表示が進行しないことを遊技者が認識できる表示状態となる。これに対して、飾り図柄の可変表示を開始してから可変表示結果となる確定飾り図柄が完全停止表示されるまでの可変表示中には、飾り図柄の変動速度が「0」となって、飾り図柄が停留して表示され、例えば微少な揺れや伸縮などを生じさせる表示状態となることがある。このような表示状態は、仮停止表示ともいい、可変表示における表示結果が確定的に表示されていないものの、スクロール表示や更新表示による飾り図柄の変動が進行していないことを遊技者が認識可能となる。なお、仮停止表示には、微少な揺れや伸縮なども生じさせず、所定時間(例えば1秒間)よりも短い時間だけ、飾り図柄を完全停止表示することなどが含まれてもよい。完全停止表示や仮停止表示のように、特別図柄や飾り図柄の変動が進行していないことを遊技者が認識できる程度に表示図柄を停止表示することは、導出表示ともいう。
「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される飾り図柄には、例えば8種類の図柄(英数字「1」〜「8」あるいは漢数字「一」〜「八」、英文字「A」〜「H」、所定のモチーフに関連する8個のキャラクタを示す演出画像、数字や文字あるいは記号とキャラクタとを組み合わせた演出画像など。なお、キャラクタを示す演出画像は、例えば人物や動物、これら以外の物体、もしくは、文字などの記号、あるいは、その他の任意の図形を示す画像であればよい。)が含まれていればよい。また、こうした8種類の飾り図柄の他に、ブランク図柄(大当り組合せを構成しない図柄)が含まれていてもよい。飾り図柄のそれぞれには、対応する図柄番号が付されている。例えば、「1」〜「8」を示す英数字それぞれに対して、「1」〜「8」の図柄番号が付されている。なお、可変表示される飾り図柄の種類数は、8種類のものに限定されず、任意の複数種類からなる飾り図柄であればよい。
飾り図柄の変動中には、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおいて、例えば図柄番号が小さいものから大きいものへと順次に、上方から下方へ、あるいは、右側から左側へと、流れるようなスクロール表示が行われる。そして、図柄番号が最大(例えば「8」)である飾り図柄が表示されると、続いて図柄番号が最小(例えば「1」)である飾り図柄が表示される。あるいは、飾り図柄表示部5L、5C、5Rのうち少なくともいずれか1つ(例えば「左」の飾り図柄表示部5Lなど)において、図柄番号が大きいものから小さいものへとスクロール表示を行って、図柄番号が最小である飾り図柄が表示されると、続いて図柄番号が最大である飾り図柄が表示されるようにしてもよい。
画像表示装置5の表示領域には、始動入賞記憶表示エリア5Hが配置されている。始動入賞記憶表示エリア5Hでは、特図ゲームに対応した可変表示の保留数(特図保留記憶数)を特定可能に表示する保留記憶表示が行われる。ここで、特図ゲームに対応した可変表示の保留は、普通入賞球装置6Aが形成する第1始動入賞口や、普通可変入賞球装置6Bが形成する第2始動入賞口を、遊技球が通過(進入)することによる始動入賞に基づいて発生する。すなわち、特図ゲームや飾り図柄の可変表示といった可変表示ゲームを実行するための始動条件(「実行条件」ともいう)は成立したが、先に成立した開始条件に基づく可変表示ゲームが実行中であることやパチンコ遊技機1が大当り遊技状態や小当り遊技状態に制御されていることなどにより、可変表示ゲームの開始を許容する開始条件は成立していないときに、成立した始動条件に対応する可変表示の保留が行われる。
一例として、始動入賞記憶表示エリア5Hには、第1始動入賞口と第2始動入賞口のそれぞれに対応して、始動入賞の発生に基づき先に始動条件が成立した可変表示ゲームから順に左から右へと、表示色が変更される複数の表示部位が設けられている。そして、第1始動入賞口を遊技球が通過(進入)したことに基づき第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームの始動条件(第1始動条件)が成立したときには、通常非表示(透過色)となっている表示部位のうちの1つ(例えば非表示となっている第1始動入賞口に対応した表示部位のうち左端の表示部位)を青色表示に変化させる。また、第2始動入賞口を遊技球が通過(進入)したことに基づき第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームの始動条件(第2始動条件)が成立したときには、通常非表示となっている表示部位のうちの1つ(例えば非表示となっている第2始動入賞口に対応した表示領域のうち左端の表示部位)を赤色表示に変化させる。その後、第1特図を用いた特図ゲームの開始条件(第1開始条件)が成立したときには、例えば第1始動入賞口に対応した表示部位のうちの1つ(例えば青色表示となっている表示部位のうち右端の表示部位)を非表示に戻す。また、第2特図を用いた特図ゲームの開始条件(第2開始条件)が成立したときには、例えば第2始動入賞口に対応した表示部位のうちの1つ(例えば赤色表示となっている表示部位のうち右端の表示部位)を非表示に戻す。
なお、始動入賞記憶表示エリア5Hでは、特図保留記憶数を示す数字を表示することなどにより、特図保留記憶数を遊技者等が認識できるようにしてもよい。始動入賞記憶表示エリア5Hとともに、あるいは始動入賞記憶表示エリア5Hに代えて、特図保留記憶数を表示する表示器を設けるようにしてもよい。図1に示す例では、始動入賞記憶表示エリア5Hとともに、第1特別図柄表示装置4A及び第2特別図柄表示装置4Bの上部に、特図保留記憶数を特定可能に表示するための第1保留表示器25Aと第2保留表示器25Bとが設けられている。第1保留表示器25Aは、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した有効始動入賞球数としての第1特図保留記憶数を特定可能に表示する。第2保留表示器25Bは、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した有効始動入賞球数としての第2特図保留記憶数を特定可能に表示する。第1保留表示器25Aと第2保留表示器25Bはそれぞれ、例えば第1特図保留記憶数と第2特図保留記憶数のそれぞれにおける上限値(例えば「4」)に対応した個数(例えば4個)のLEDを含んで構成されている。
こうして、第1始動条件や第2始動条件が成立したものの、先に開始された特図ゲームが実行中であることや、パチンコ遊技機1が大当り遊技状態や小当り遊技状態に制御されていることなどにより、特図ゲームを開始するための開始条件が成立しないときには、特図ゲームに対応した可変表示の保留が発生する。例えば、第1始動条件が成立したときに、当該第1始動条件の成立に基づく第1特図を用いた特図ゲームを開始するための第1開始条件が成立しなければ、第1特図保留記憶数が1加算(インクリメント)され、第1特図を用いた特図ゲームの実行が保留される。また、第2始動条件が成立したときに、当該第2始動条件の成立に基づく第2特図を用いた特図ゲームを開始するための第2開始条件が成立しなければ、第2特図保留記憶数が1加算(インクリメント)され、第2特図を用いた特図ゲームの実行が保留される。これに対して、第1特図を用いた特図ゲームの実行が開始されるときには、第1特図保留記憶数が1減算(デクリメント)され、第2特図を用いた特図ゲームの実行が開始されるときには、第2特図保留記憶数が1減算(デクリメント)される。
第1特図保留記憶数と第2特図保留記憶数とを加算した可変表示の保留記憶数は、特に、合計保留記憶数ともいう。単に「特図保留記憶数」というときには、通常、第1特図保留記憶数、第2特図保留記憶数及び合計保留記憶数のいずれも含む概念を指すが、特に、これらの一部(例えば第1特図保留記憶数と第2特図保留記憶数を含む一方で合計保留記憶数は除く概念)を指すこともあるものとする。
画像表示装置5の表示領域には、飾り図柄とは異なる識別情報としての色図柄を可変表示する色図柄表示部が設けられていてもよい。一例として、色図柄表示部には、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームが開始されるときに、色図柄の変動(例えば表示色の更新表示)が開始される「左」の色図柄表示部と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが開始されるときに、色図柄の変動が開始される「右」の色図柄表示部とが含まれていればよい。そして、特図ゲームにおいて可変表示結果となる確定特別図柄が完全停止表示されるときには、色図柄の変動が終了して、色図柄の可変表示結果となる確定色図柄が完全停止表示される。「左」及び「右」の色図柄表示部にて可変表示される色図柄には、例えば5種類の図柄(「黄色」、「緑色」、「赤色」、「青色」、「紫色」など)といった、複数種類の色図柄が含まれていればよい。色図柄のそれぞれには、対応する図柄番号が付されている。一例として、「黄色」、「緑色」、「赤色」、「青色」、「紫色」の色図柄それぞれに対して、「1」〜「5」の図柄番号が付されていればよい。そして、例えば特別図柄の可変表示結果(特図表示結果)が「ハズレ」である場合には色図柄の可変表示結果として「黄色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「非確変」である場合には色図柄の可変表示結果として「緑色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「確変」である場合には色図柄の可変表示結果として「赤色」の確定色図柄が停止表示され、特図表示結果が「大当り」で大当り種別が「突確」である場合には色図柄の可変表示結果として「青色」の確定色図柄が停止表示され、特図表示結果が「小当り」である場合には色図柄の可変表示結果として「紫色」の確定色図柄が停止表示されればよい。
画像表示装置5の下方には、普通入賞球装置6Aと、普通可変入賞球装置6Bとが設けられている。普通入賞球装置6Aは、例えば所定の玉受部材によって常に一定の開放状態に保たれる第1始動入賞口を形成する。普通可変入賞球装置6Bは、図4に示す普通電動役物用のソレノイド81によって垂直位置となる通常開放状態と傾動位置となる拡大開放状態とに変化する一対の可動翼片を有する電動チューリップ型役物(普通電動役物)を備え、第2始動入賞口を形成する。一例として、普通可変入賞球装置6Bでは、普通電動役物用のソレノイド81がオフ状態であるときに可動翼片が垂直位置となることにより、遊技球が第2始動入賞口に進入(通過)しにくい通常開放状態となる。その一方で、普通可変入賞球装置6Bでは、普通電動役物用のソレノイド81がオン状態であるときに可動翼片が傾動位置となることにより、遊技球が第2始動入賞口に進入(通過)しやすい拡大開放状態となる。なお、普通可変入賞球装置6Bは、通常開放状態であるときでも、第2始動入賞口には遊技球が進入(通過)可能であるものの、拡大開放状態であるときよりも遊技球が進入(通過)する可能性が低くなるように構成してもよい。あるいは、普通可変入賞球装置6Bは、通常開放状態において、例えば第2始動入賞口を閉鎖することなどにより、第2始動入賞口には遊技球が進入(通過)しないように構成してもよい。
普通入賞球装置6Aにて第1始動入賞口を通過(進入)した遊技球は、遊技盤2の背面に導かれ、図4に示す第1始動口スイッチ22A(例えば近接スイッチ)によって検出されるとともに、第1入賞確認スイッチ22C(例えばフォトセンサ)によって検出される。普通可変入賞球装置6Bにて第2始動入賞口を通過(進入)した遊技球は、遊技盤2の背面に導かれ、図4に示す第2始動口スイッチ22B(例えば近接スイッチ)によって検出されるとともに、第2入賞確認スイッチ22D(例えばフォトセンサ)によって検出される。
第1始動口スイッチ22Aや第2始動口スイッチ22Bによって遊技球が検出されたことに基づき、所定個数(例えば3個)の遊技球が賞球として払い出される。なお、第1始動口スイッチ22Aによって遊技球が検出されたことに基づいて払い出される賞球の個数と、第2始動口スイッチ22Bによって遊技球が検出されたことに基づいて払い出される賞球の個数は、互いに同一の個数であってもよいし、異なる個数であってもよい。第1始動口スイッチ22Aや第2始動口スイッチ22Bによる遊技球の検出結果に加えて第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dの検出結果に基づいて、異常入賞の発生の有無が判定され、異常入賞の発生が検出されたときには、セキュリティ信号の外部出力が行われる。なお、第1入賞確認スイッチ22Cと第2入賞確認スイッチ22Dは、第1始動入賞口と第2始動入賞口のそれぞれに対応して別個に設けられてもよいし、各始動入賞口に共通して単一のスイッチが設けられてもよい。
図2は、普通入賞球装置6Aにおける第1始動入賞口内の断面構造の具体例を示している。図2に示すように、第1始動入賞口内には、第1始動入賞口を通過(進入)した遊技球を遊技盤2の背面へと誘導して排出する球経路が形成されており、この球経路にて遊技球を検出可能な2つのスイッチ(第1始動口スイッチ22A及び第1入賞確認スイッチ22C)が設けられている。図2に示す例では、第1始動口スイッチ22Aが球経路における第1入賞確認スイッチ22Cの上流側に配置されており、第1入賞確認スイッチ22Cが球経路における第1始動口スイッチ22Aの下流側に配置されている。したがって、第1始動入賞口を通過(進入)した遊技球は、まず第1始動口スイッチ22Aで検出され、続いて第1入賞確認スイッチ22Cで検出される。
第1始動口スイッチ22Aと第1入賞確認スイッチ22Cは、それぞれ異なる検出方式のスイッチを用いて構成される。例えば、第1始動口スイッチ22Aは近接スイッチを用いて構成される一方、第1入賞確認スイッチ22Cはフォトセンサを用いて構成される。また、第1始動口スイッチ22Aによる遊技球の検出結果に加えて第1入賞確認スイッチ22Cによる遊技球の検出結果に基づいて、異常入賞の発生の有無が判定され、異常入賞の発生が検出されたときには、セキュリティ信号の外部出力が行われる。第1入賞確認スイッチ22Cは、異常入賞の判定のみに用いられればよく、特別図柄の可変表示や賞球の払出しには影響を与えないようにすればよい。
図3は、遊技球の検出方式を示している。図3(A)は、第1始動口スイッチ22Aの一例となる近接スイッチを示している。第1始動口スイッチ22Aの一方の端子には、図4に示す電源基板10などから+12V電源電圧が供給され、他方の端子の電圧レベルである検出信号が、主基板11に入力される。主基板11において、検出信号は、図4に示すスイッチ回路114から遊技制御用マイクロコンピュータ100に入力される。また、第1始動口スイッチ22Aの出力側には、他端が接地されている抵抗RとコンデンサCの一端が接続されている。
近接スイッチである第1始動口スイッチ22Aに設けられている穴を金属の遊技球が通過するとコイルLに逆起電力が生じ、コイルLの等価的な抵抗値が極めて大きくなる。したがって、第1始動口スイッチ22Aの出力は、0Vに近いローレベルになる。すなわち、検出信号は、ローレベルとなることによりオン状態となる。第1始動口スイッチ22Aに設けられている穴を金属の遊技球が通過していない場合には、第1始動口スイッチ22Aの出力は+12VがコイルLと抵抗Rの抵抗値で分圧された値であり、ハイレベルであるとみなされる閾値レベルを越える。すなわち、検出信号は、ハイレベルとなることによりオフ状態となる。このように、第1始動口スイッチ22Aの出力は負論理となっている。なお、検出信号のレベルをスイッチ回路114などにて論理反転してから遊技制御用マイクロコンピュータ100に入力するよう構成してもよい。
図3(B)は、第1入賞確認スイッチ22Cの一例となるフォトセンサを示している。図3(B)に示すフォトセンサは、発光する発光ダイオード(LED)341と、受光して電流を出力するフォトトランジスタ342とで構成されている。発光ダイオード341及びフォトトランジスタ342の近傍を遊技球が通過すると、遊技球が反射した発光ダイオード341からの光をフォトトランジスタ342が受光して出力側に電流を流す。この場合、フォトトランジスタ342のコレクタ端子からエミッタ端子の向きに電流が流れることにより、フォトセンサの検出信号は、近接スイッチと同様に負論理である。フォトセンサの出力側は主基板11に接続され、主基板11において、フォトセンサの検出信号は、スイッチ回路114から遊技制御用マイクロコンピュータ100に入力される。フォトセンサの出力側(具体的には、フォトトランジスタ342の出力側)に電流が流れると、スイッチ回路114では、ローレベルの検出信号を遊技制御用マイクロコンピュータ100に出力する。遊技制御用マイクロコンピュータ100では、スイッチ回路114からの検出信号がローレベルであるときに、遊技球がフォトセンサを通過したと判定することができる。なお、近接スイッチの場合と同様に、検出信号のレベルをスイッチ回路114などにて論理反転してから遊技制御用マイクロコンピュータ100に入力するよう構成してもよい。
フォトセンサとして、図3(B)に示す反射型のフォトセンサに代えて、図3(C)の上段に示すような透過型のフォトセンサが用いられてもよい。この場合、発光素子(LED341)と受光素子(フォトトランジスタ342)とが球経路を挟むように対向して配置され、遊技球が発光素子からの光を遮り受光素子が光を検出しなくなることによって、発光素子と受光素子との間を通過した遊技球を検出できる。こうした透過型のフォトセンサを用いる場合には、図3(C)の下段に示すように、発光素子の光軸(図3(C)において黒丸で例示されている)が、球経路を通過する遊技球の中央部からずれるように、発光素子と受光素子を設置することが好ましい。光軸が遊技球の中央部に相当する位置に設置した場合に比べると、連続して通過する2つの遊技球の間隔が相対的に広い部分(図3(C)における「空隙」の部分)において遊技球を検知することができ、2つの遊技球を別個に検出しやすくなる。図3(B)に示した反射型のフォトセンサを用いる場合にも、発光素子からの光の反射点が遊技球の中央部からずれるように、発光素子と受光素子が設置されればよい。
普通可変入賞球装置6Bの第2始動入賞口においても、第2始動口スイッチ22Bや第2入賞確認スイッチ22Dが、第1始動入賞口における第1始動口スイッチ22Aや第1入賞確認スイッチ22Cと同様の構成で設置されていればよい。
なお、第1始動口スイッチ22Aや第2始動口スイッチ22B及び第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dの検出方式は、例えば、第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとで異なる検出方式となり、第2始動口スイッチ22Bと第2入賞確認スイッチ22Dとで異なる検出方式となれば、任意の検出方式を組み合わせればよい。一例として、第1始動口スイッチ22Aとしてフォトセンサを用い、第1入賞確認スイッチ22Cとして近接スイッチを用いてもよい。この場合、フォトセンサである第1始動口スイッチ22Aの検出結果にもとづいて特別図柄の変動表示や賞球の払出しが実行され、近接スイッチである第1入賞確認スイッチ22Cの検出結果は、第1始動入賞口における異常入賞の判定のみに用いられることになる。また、例えば、電磁式のスイッチである近接スイッチや光学式のフォトセンサに代えて、機械式のスイッチ(マイクロスイッチなど)を用いてもよい。
普通入賞球装置6Aと普通可変入賞球装置6Bの下方には、特別可変入賞球装置7が設けられている。特別可変入賞球装置7は、図4に示す大入賞口扉用のソレノイド82によって開閉駆動される大入賞口扉を備え、その大入賞口扉によって開放状態(第1状態)と閉鎖状態(第2状態)とに変化する大入賞口を形成する。一例として、特別可変入賞球装置7では、大入賞口扉用のソレノイド82がオフ状態であるときに大入賞口扉が大入賞口を閉鎖状態にする。その一方で、特別可変入賞球装置7では、大入賞口扉用のソレノイド82がオン状態であるときに大入賞口扉が大入賞口を開放状態にする。特別可変入賞球装置7に形成された大入賞口に進入した遊技球は、例えば図4に示すカウントスイッチ23によって検出される。カウントスイッチ23によって遊技球が検出されたことに基づき、所定個数(例えば13個)の遊技球が賞球として払い出される。
この実施の形態では、第1始動入賞口と第2始動入賞口に、第1始動口スイッチ22Aや第2始動口スイッチ22Bに加えて第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dを設けている。これに対して、大入賞口にも、カウントスイッチ23に加えて入賞確認スイッチを設けてもよい。この場合、例えば第1始動入賞口や第2始動入賞口と同様に、近接スイッチを用いてカウントスイッチ23を構成し、フォトセンサを用いて入賞確認スイッチを構成すればよい。これとは逆に、フォトセンサを用いてカウントスイッチ23を構成し、近接スイッチを用いて入賞確認スイッチを構成してもよい。近接スイッチやフォトセンサに代えて、マイクロスイッチなどの機械式のスイッチを用いてもよい。大入賞口への遊技球の進入(入賞)に基づく賞球の払出しは、カウントスイッチ23の検出結果のみに基づいて行われる一方、カウントスイッチ23の検出結果と入賞確認スイッチの検出結果の両方に基づいて、大入賞口における異常入賞が発生したか否かの判定が行われるようにしてもよい。例えば、カウントスイッチ23により検出された遊技球の個数と、入賞確認スイッチにより検出された遊技球の個数との差が所定値(例えば「10」など)以上となったときに、大入賞口における異常入賞が発生したと判定できればよい。
遊技盤2の表面には、上記の構成以外にも、遊技球の流下方向や速度を変化させる風車及び多数の障害釘が設けられている。また、第1始動入賞口、第2始動入賞口及び大入賞口とは異なる入賞口として、例えば所定の玉受部材によって常に一定の開放状態に保たれる一般入賞口が1つ又は複数設けられてもよい。この場合には、一般入賞口のいずれかに進入した遊技球が所定の一般入賞球スイッチによって検出されたことに基づき、所定個数(例えば10個)の遊技球が賞球として払い出されればよい。遊技領域の最下方には、いずれの入賞口にも進入しなかった遊技球が取り込まれるアウト口が設けられている。遊技機用枠3の左右上部位置には、効果音等を再生出力するためのスピーカ8L、8Rが設けられており、さらに遊技領域周辺部には、遊技効果ランプ9が設けられている。パチンコ遊技機1の遊技領域における各構造物(例えば普通入賞球装置6A、普通可変入賞球装置6B、特別可変入賞球装置7等)の周囲には、装飾用LEDが配置されていてもよい。
遊技機用枠3の右下部位置には、遊技媒体としての遊技球を遊技領域に向けて発射するために遊技者等によって操作される打球操作ハンドルとなる操作ノブ30が設けられている。例えば、遊技者等による操作量(回転量)に応じて遊技球の弾発力を調整する。打球操作ハンドルには、打球発射装置が備える発射モータの駆動を停止させるための単発発射スイッチや、タッチリング(タッチセンサ)が設けられていればよい。遊技領域の下方における遊技機用枠3の所定位置には、賞球として払い出された遊技球や所定の球貸機により貸し出された遊技球を、打球発射装置へと供給可能に保持(貯留)する打球供給皿(上皿)が設けられている。打球供給皿の下方には、打球供給皿に収容不能となった遊技球を保持(貯留)する余剰球受皿(下皿)が設けられている。
例えば打球供給皿の上面における手前側の中央位置といった、パチンコ遊技機1の遊技機用枠3における所定位置には、押下操作などにより遊技者が所定の指示操作を可能な操作ボタンが設置されていてもよい。この操作ボタンは、押下可能であるとともに、回動可能なジョグダイアルになっていてもよい。なお、操作ボタンは、押下操作や回動操作が可能なものに限定されず、例えばタッチパネルのように接触操作や押圧操作が可能なものであってもよい。また、操作ボタン代えて、例えば赤外線センサやCCDセンサ、CMOSセンサのように、遊技者による所定の操作行為を検出できるセンサを用いてもよい。すなわち、操作ボタンは、遊技者による所定の操作行為を、機械的、電気的、あるいは、電磁的に、検出できるように構成されていればよい。操作ボタンに対する遊技者の指示操作は、所定の操作検出スイッチによって検出されればよい。
こうした操作ボタンに代えて、あるいは、操作ボタンとともに、例えば下皿を形成する部材において、下皿本体の上面における手前側の所定位置(例えば下皿の中央部分)などに、遊技者が把持して傾倒操作が可能なスティックコントローラが取り付けられてもよい。スティックコントローラは、遊技者が把持する操作桿を含み、操作桿の所定位置(例えば遊技者が操作桿を把持したときに操作手の人差し指が掛かる位置など)には、トリガボタンが設けられている。トリガボタンは、遊技者がスティックコントローラの操作桿を操作手(例えば左手など)で把持した状態において、所定の操作指(例えば人差し指など)で押引操作することなどにより所定の指示操作ができるように構成されていればよい。操作桿の内部には、トリガボタンに対する押引操作などによる所定の指示操作を検知するトリガセンサが内蔵されていればよい。スティックコントローラの下部における下皿の本体内部などには、操作桿に対する傾倒操作を検知する傾倒方向センサユニットが設けられていればよい。例えば、傾倒方向センサユニットは、パチンコ遊技機1と正対する遊技者の側からみて操作桿の中心位置よりも左側で遊技盤2の盤面と平行に配置された2つの透過形フォトセンサ(平行センサ対)と、この遊技者の側からみて操作桿の中心位置よりも右側で遊技盤2の盤面と垂直に配置された2つの透過形フォトセンサ(垂直センサ対)とを組み合わせた4つの透過形フォトセンサを含んで構成されていればよい。なお、下皿におけるスティックコントローラの取付位置は、下皿の中央部分に限定されず、左右のいずれかに寄せた位置であってもよい。
スティックコントローラと操作ボタンの取付位置は、上皿及び下皿の中央部分において上下の位置関係にあればよい。これに対して、上下の位置関係を保ったまま、スティックコントローラ及び操作ボタンの取付位置を、上皿及び下皿において左右のいずれかに寄せた位置としてもよい。あるいは、スティックコントローラと操作ボタンの取付位置が上下の位置関係にはなく、例えば左右の位置関係にあるものとしてもよい。
さらに、パチンコ遊技機1に隣接する所定位置には、プリペイドカード等を用いた球貸しを可能にするための処理が実行されるプリペイドカードユニット(カードユニット)が設置されてもよい。カードユニットは、プリペイドカードを取り込んで球貸しの処理を実行するだけでなく、会員カードや現金を取り込んで球貸しの処理を実行するものであってもよい。
普通図柄表示器20による普図ゲームは、遊技領域に設けられた通過ゲート41を通過した遊技球が図4に示すゲートスイッチ21によって検出されたことといった、普通図柄表示器20にて普通図柄の可変表示を実行するための普図始動条件が成立した後に、例えば前回の普図ゲームが終了したことといった、普通図柄の可変表示を開始するための普図開始条件が成立したことに基づいて、開始される。この普図ゲームでは、普通図柄の変動を開始させた後、所定の可変表示時間(普図変動時間)が経過すると、普通図柄の可変表示結果となる確定普通図柄を完全停止表示する。普通図柄の可変表示時間は、例えば各普図ゲームの開始時に、所定の乱数値を示す数値データを抽出することなどにより、複数種類の可変表示時間のうちで、いずれかに決定されればよい。普図ゲームにおける普通図柄の可変表示結果となる確定普通図柄として、例えば「7」を示す数字あるいは「○」を示す記号といった、特定の普通図柄(普図当り図柄)が停止表示されれば、普通図柄の可変表示結果が「普図当り」となる。その一方、確定普通図柄として、例えば「7」を示す数字以外の数字あるいは「×」を示す記号といった、普図当り図柄以外の普通図柄が停止表示されれば、普通図柄の可変表示結果が「普図ハズレ」となる。普通図柄の可変表示結果が「普図当り」となったことに対応して、普通可変入賞球装置6Bを構成する電動チューリップの可動翼片(左右一対の開閉羽根)が傾動位置(開放状態)となる拡大開放制御が行われ、所定時間が経過すると垂直位置(閉鎖状態)に戻る通常開放制御が行われる。
第1特別図柄表示装置4Aによる特図ゲームは、普通入賞球装置6Aに形成された第1始動入賞口に進入した遊技球が図4に示す第1始動口スイッチ22Aによって検出されたことなどにより第1始動条件が成立した後に第1開始条件が成立したことに基づいて、開始される。第1開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第1特図を用いた今回の特図ゲームが開始可能となることにより成立する。第2特別図柄表示装置4Bによる特図ゲームは、普通可変入賞球装置6Bに形成された第2始動入賞口に進入した遊技球が図4に示す第2始動口スイッチ22Bによって検出されたことなどにより第2始動条件が成立した後に第2開始条件が成立したことに基づいて、開始される。第2開始条件は、例えば前回の特図ゲームや大当り遊技状態あるいは小当り遊技状態が終了したときなどに、第2特図を用いた今回の特図ゲームが開始可能となることにより成立する。
第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームでは、特別図柄の可変表示を開始させた後、所定の可変表示時間(特図変動時間)が経過すると、特別図柄の可変表示結果となる確定特別図柄を完全停止表示する。特別図柄の可変表示時間は、各特図ゲームの開始時に、例えば図15に示すような変動パターン種別決定用の乱数値MR3を示す数値データや、変動パターン決定用の乱数値MR4を示す数値データなどに基づいて決定された変動パターンに対応して、複数種類の可変表示時間のうちで、いずれかに決定される。特図ゲームにおける特別図柄の可変表示結果は、特図表示結果ともいう。特図ゲームにおける特別図柄の可変表示結果となる確定特別図柄として、特定の特別図柄(大当り図柄)が停止表示されれば、特定表示結果としての「大当り」となり、大当り図柄とは異なる所定の特別図柄(小当り図柄)が停止表示されれば、所定表示結果としての「小当り」となり、大当り図柄や小当り図柄以外の特別図柄(ハズレ図柄)が停止表示されれば、非特定表示結果としての「ハズレ」となる。特図ゲームでの可変表示結果が「大当り」になった後には、特定遊技状態としての大当り遊技状態に制御される。また、特図ゲームでの可変表示結果が「小当り」になった後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この実施の形態におけるパチンコ遊技機1では、一例として、「1」、「3」、「7」を示す数字を大当り図柄とし、「5」を示す数字を小当り図柄とし、「−」を示す記号をハズレ図柄としている。なお、第1特別図柄表示装置4Aによる特図ゲームにおける大当り図柄や小当り図柄、ハズレ図柄といった各図柄は、第2特別図柄表示装置4Bによる特図ゲームにおける各図柄とは異なる特別図柄となるようにしてもよいし、双方の特図ゲームにおいて共通の特別図柄が大当り図柄や小当り図柄、ハズレ図柄となるようにしてもよい。
この実施の形態では、大当り図柄となる「1」、「3」、「7」の数字を示す特別図柄のうち、「3」、「7」の数字を示す特別図柄を15ラウンド大当り図柄とし、「1」の数字を示す特別図柄を2ラウンド大当り図柄とする。特図ゲームにおける確定特別図柄として15ラウンド大当り図柄が停止表示された後に制御される第1特定遊技状態としての大当り遊技状態(15ラウンド大当り状態)では、特別可変入賞球装置7の開閉板が、第1期間となる所定期間(例えば29秒間)あるいは所定個数(例えば9個)の入賞球が発生するまでの期間にて大入賞口を開放状態とすることにより、特別可変入賞球装置7を遊技者にとって有利な第1状態に変化させるラウンドが実行される。こうしてラウンド中に大入賞口を開放状態とした開閉板は、遊技盤2の表面を落下する遊技球を受け止め、その後に大入賞口を閉鎖状態とすることにより、特別可変入賞球装置7を遊技者にとって不利な第2状態に変化させて、1回のラウンドを終了させる。15ラウンド大当り状態では、大入賞口の開放サイクルであるラウンドの実行回数が、第1回数(例えば「15」)となる。ラウンドの実行回数が「15」となる15ラウンド大当り状態における遊技は、15回開放遊技とも称される。
特図ゲームにおける確定特別図柄として2ラウンド大当り図柄が停止表示された後に制御される第2特定遊技状態としての大当り遊技状態(2ラウンド大当り状態)では、各ラウンドで特別可変入賞球装置7を遊技者にとって有利な第1状態に変化させる期間(開閉板により大入賞口を開放状態とする期間)が、15ラウンド大当り状態における第1期間よりも短い第2期間(例えば0.5秒間)となる。また、2ラウンド大当り状態では、ラウンドの実行回数が、15ラウンド大当り状態における第1回数よりも少ない第2回数(例えば「2」)となる。なお、2ラウンド大当り状態では、各ラウンドで大入賞口を開放状態とする期間が第2期間となることと、ラウンドの実行回数が第2回数となることのうち、少なくともいずれか一方が行われるように制御されればよく、それ以外の制御は15ラウンド大当り状態と同様に行われるようにしてもよい。ラウンドの実行回数が「2」となる2ラウンド大当り状態における遊技は、2回開放遊技とも称される。なお、2ラウンド大当り状態では、各ラウンドで特別可変入賞球装置7とは別個に設けられた所定の入賞球装置を、遊技者にとって不利な第2状態から遊技者にとって有利な第1状態に変化させ、所定期間(第1期間又は第2期間)が経過した後に第2状態へと戻すようにしてもよい。
また、15ラウンド大当り図柄となる「3」、「7」の数字を示す特別図柄のうち、「3」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく15ラウンド大当り状態が終了した後には、特別遊技状態の1つとして、通常状態に比べて特図ゲームにおける特別図柄の変動時間(特図変動時間)が短縮される時間短縮制御(時短制御)が行われる時短状態に制御される。ここで、通常状態とは、大当り遊技状態等の特定遊技状態や時短状態等の特別遊技状態以外の遊技状態のことであり、パチンコ遊技機1の初期設定状態(例えばシステムリセットが行われた場合のように、電源投入後に初期化処理を実行した状態)と同一の制御が行われる。時短状態は、所定回数(例えば100回)の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了すればよい。なお、特図ゲームにおける確定特別図柄として15ラウンド大当り図柄のうち「3」の数字を示す特別図柄が停止表示されたことに基づく15ラウンド大当り状態が終了した後には、時短状態とはならずに通常状態となるようにしてもよい。こうした「3」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に時短状態や通常状態に制御される15ラウンド大当り図柄は、非確変大当り図柄(「通常大当り図柄」ともいう)と称される。特図ゲームにおける確定特別図柄が非確変大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「非確変」(「通常」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。
15ラウンド大当り図柄となる「3」、「7」の数字を示す特別図柄のうち、「7」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく15ラウンド大当り状態が終了した後や、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が特図ゲームにおける確定特別図柄として停止表示されたことに基づく2ラウンド大当り状態が終了した後には、時短状態とは異なる特別遊技状態の1つとして、例えば通常状態に比べて特図変動時間が短縮される時間短縮制御とともに、継続して確率変動制御(確変制御)が行われる確変状態(高確率遊技状態)に制御される。この確変状態では、各特図ゲームや飾り図柄の可変表示において、可変表示結果が「大当り」となって更に大当り遊技状態に制御される確率が、通常状態よりも高くなるように向上する。このような確変状態は、特図ゲームの実行回数に関わりなく、次に可変表示結果が「大当り」となるまで継続してもよい。これに対して、確変状態となった後に、所定回数(例えば100回)の特図ゲームが実行されることと、可変表示結果が「大当り」となることのうち、いずれかの条件が先に成立したときに、終了するようにしてもよい。また、確変状態において所定回数の特図ゲームが実行されたり可変表示結果が「大当り」となる以前であっても、特図ゲームが開始されるときに、所定の割合で確変状態が終了することがあるようにしてもよい。確変状態における時間短縮制御は、時短状態の場合と同様に、所定回数(例えば100回)の特図ゲームが実行されたときに、終了してもよい。あるいは、確変状態における時間短縮制御は、特図ゲームの実行回数にかかわりなく、次に可変表示結果が「大当り」となるまで継続してもよい。
「7」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される15ラウンド大当り図柄は、確変大当り図柄と称される。特図ゲームにおける確定特別図柄が確変大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「確変」(「確変大当り」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。「1」の数字を示す特別図柄のように、特図ゲームにおける確定特別図柄として停止表示されたことに基づく大当り遊技状態が終了した後に確変状態に制御される2ラウンド大当り図柄は、突確大当り図柄と称される。特図ゲームにおける確定特別図柄が突確大当り図柄となる場合における特別図柄や飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」(「突確大当り」あるいは「突然確変大当り」ともいう)の可変表示態様(「大当り種別」ともいう)と称される。
このように、特図ゲームにおける確定特別図柄として15ラウンド大当り図柄が停止表示(導出表示)されたときには、15ラウンド大当り状態に制御されて所定回数(具体的には15回)のラウンドが実行可能となり、遊技者が多数の賞球を容易に獲得することができるという、遊技者にとって有利な遊技価値が付与される。また、可変表示結果が「大当り」で大当り種別が「確変」となったときには、15ラウンド大当り状態が終了した後に、遊技状態が確変状態となり、短時間のうちに可変表示結果が「大当り」になるという、遊技者にとって有利な遊技価値が付与される。特図ゲームにおける確定特別図柄として2ラウンド大当り図柄が停止表示(導出表示)されたときには、2ラウンド大当り状態に制御されて所定回数(具体的には2回)のラウンドが実行可能にはなるものの、ラウンドの実行回数が比較的に少ないことや、大入賞口の開放期間が比較的に短いことにより、遊技者が賞球を獲得することは困難である。その一方で、2ラウンド大当り状態が終了した後には、遊技状態が確変状態となり、短時間のうちに可変表示結果が「大当り」になるという、遊技者にとって有利な遊技価値が付与される。
確変状態や時短状態にて時間短縮制御が行われるときには、普通図柄表示器20による普図ゲームにおける普通図柄の可変表示時間(普図変動時間)を通常状態のときよりも短くする制御や、各回の普図ゲームで普通図柄の可変表示結果が「普図当り」となる確率を通常状態のときよりも向上させる制御、可変表示結果が「普図当り」となったことに基づく普通可変入賞球装置6Bにおける可動翼片(開閉羽根)の傾動時間(開放時間)を通常状態のときよりも長くする制御、その傾動回数(開放回数)を通常状態のときよりも増加させる制御といった、第2始動入賞口に遊技球が進入する可能性を高めて第2始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われる。なお、これらの制御のいずれか1つが行われるようにしてもよいし、複数の制御が組み合わせられて行われるようにしてもよい。このように、確変状態や時短状態における時間短縮制御とともに、遊技球が第2始動入賞口に進入しやすくして遊技者にとって有利となる制御は、高開放制御ともいう。高開放制御が行われることにより、第2始動入賞口は、高開放制御が行われていないときよりも拡大開放状態となる頻度が高められる。これにより、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームを実行するための第2始動条件が成立しやすくなり、特図ゲームが頻繁に実行可能となることで、次に可変表示結果が「大当り」となるまでの時間が短縮される。したがって、高開放制御が行われることにより、通常状態に比べて大当り遊技状態となりやすくなる。高開放制御が実行可能となる期間は、高開放制御期間ともいい、この期間は、パチンコ遊技機1における遊技状態が確変状態と時短状態のいずれかであるときに時間短縮制御が行われている期間と同一であればよい。
高開放制御期間であるときには、遊技状態が高ベース中であるともいう。これに対して、高開放制御期間でないときには、遊技状態が低ベース中であるともいう。この実施の形態における時短状態は、低確高ベース状態とも称される遊技状態であり、通常状態は、低確低ベース状態とも称される遊技状態である。また、確変状態において、高開放制御が行われる高開放制御期間であるときは、高確高ベース状態とも称される遊技状態であり、高開放制御期間でないときは、高確低ベース状態とも称される遊技状態である。
特図ゲームにおける確定特別図柄として小当り図柄が停止表示された後には、大当り遊技状態とは異なる小当り遊技状態に制御される。この小当り遊技状態では、2ラウンド大当り状態と同様に特別可変入賞装置7を遊技者にとって有利な第1状態に変化させる可変入賞動作が行われる。すなわち、小当り遊技状態では、例えば特別可変入賞球装置7が備える開閉板により大入賞口を第2期間にわたり開放状態とする動作が、第2回数に達するまで繰り返し実行される。なお、小当り遊技状態では、2ラウンド大当り状態と同様に、大入賞口を開放状態とする期間が第2期間となることと、大入賞口を開放状態とする動作の実行回数が第2回数となることのうち、少なくともいずれか一方が行われるように制御されればよい。小当り遊技状態が終了した後には、遊技状態の変更が行われず、可変表示結果が「小当り」となる以前の遊技状態に継続して制御されることになる。ただし、可変表示結果が「小当り」となる可変表示ゲームに対応して、時短状態を終了する旨の判定がなされた場合には、小当り遊技状態の終了後に、通常状態へと制御されることになる。可変入賞動作により大入賞口を開放状態とする回数が「2」である小当り遊技状態における遊技は、2ラウンド大当り状態における遊技と同様に、2回開放遊技とも称される。なお、2ラウンド大当り状態における各ラウンドで特別可変入賞球装置7とは別個に設けられた入賞球装置を第1状態に変化させる場合には、小当り遊技状態でも、2ラウンド大当り状態と同様の態様で、その入賞球装置を第1状態に変化させるようにすればよい。
画像表示装置5の表示領域では、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特別図柄の可変表示に対応して、飾り図柄の可変表示が行われる。すなわち、画像表示装置5の表示領域では、第1開始条件と第2開始条件のいずれか一方が成立したことに基づいて、例えば「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄の加速表示(全図柄加速表示)を行い、所定速度に達すれば、飾り図柄の定速表示(全図柄定速表示)を行う。こうした全図柄加速表示や全図柄定速表示は、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて飾り図柄を可変表示する全図柄変動に含まれる。こうした全図柄変動の後、例えば「左」→「右」→「中」といった所定順序で飾り図柄の減速表示(各図柄減速表示)を行い、変動速度が「0」となれば、飾り図柄を停留して表示する一方で、例えば微少な揺れや伸縮などを生じさせる仮停止表示を行う。そして、飾り図柄の可変表示を開始してからの経過時間が変動パターンなどに基づいて決定された可変表示時間に達したときには、可変表示結果となる確定飾り図柄を完全停止表示する。なお、確定飾り図柄を停止表示する手順としては、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおいて所定順序で飾り図柄を減速表示するものに限定されず、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおいて同時に確定飾り図柄となる飾り図柄を減速表示(全図柄減速表示)するものが含まれていてもよい。
全図柄変動が開始された後には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rのうち全部又は一部の飾り図柄表示部にて、飾り図柄をリーチ表示状態で導出表示することがある。ここで、リーチ表示状態とは、画像表示装置5の表示領域にて導出表示された飾り図柄が大当り組合せの一部を構成しているときに未だ導出表示されていない飾り図柄(「リーチ変動図柄」ともいう)については変動が継続している表示状態、あるいは、全部又は一部の飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態のことである。具体的には、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける一部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)では予め定められた大当り組合せを構成する飾り図柄(例えば「7」の英数字を示す飾り図柄)が導出表示されているときに未だ導出表示されていない残りの飾り図柄表示部(例えば「中」の飾り図柄表示部5Cなど)では飾り図柄が変動している表示状態、あるいは、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部又は一部で飾り図柄が大当り組合せの全部又は一部を構成しながら同期して変動している表示状態である。また、リーチ表示状態となったことに対応して、画像表示装置5の表示領域に飾り図柄とは異なるアニメーション画像や実写画像といった演出画像を表示させたり、背景画像の表示態様を変化させたり、飾り図柄の変動態様を変化させたりすることがある。このような演出画像の表示や背景画像の表示態様の変化、飾り図柄の変動態様の変化を、リーチ演出表示(あるいは単にリーチ演出)という。リーチ演出の中には、それが出現すると、通常のリーチ演出(ノーマルリーチ)に比べて大当りが発生しやすい(高い確率で大当りとなる)ように設定されたものがある。このような特別のリーチ演出を、スーパーリーチ演出(あるいは単に「スーパーリーチ」)ともいう。一例として、スーパーリーチとなるリーチ演出には、ノーマルリーチと同様のリーチ演出を所定時間が経過するまで行ってから、例えば背景画像の表示態様や、表示されるキャラクタ、飾り図柄の変動方向といった飾り図柄の変動態様のうち、少なくともいずれか1つがリーチ表示状態となる以前やノーマルリーチのときとは異なるものとなることにより、演出態様が変化(いわゆる「発展」)して、スーパーリーチに特有のリーチ演出における導入部分が開始されるものが含まれていればよい。また、スーパーリーチとなるリーチ演出には、飾り図柄がリーチ表示状態で導出表示されたときに、ノーマルリーチと同様のリーチ演出を行うことなく、スーパーリーチに特有のリーチ演出における導入部分が開始されるものが含まれていてもよい。
また、飾り図柄の可変表示中には、リーチ演出とは異なり、飾り図柄がリーチ状態で導出表示される可能性があることや、可変表示結果が「大当り」となる可能性があることを、飾り図柄の可変表示態様などにより遊技者に報知するための特定演出が実行されることがある。この実施の形態では、「滑り」や「擬似連」といった特定演出が実行可能に設定されている。なお、この実施の形態における特定演出は、対応する演出動作が実行されるか否か応じて特図変動時間が変化するものであればよい。例えば、ある特定演出が実行される場合には、その特定演出が実行されない場合に比べて、特図変動時間が長くなるものであればよい。
「滑り」の特定演出では、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させる全図柄変動を行ってから、2つ以上の飾り図柄表示部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)にて飾り図柄を仮停止表示させた後、その仮停止表示した飾り図柄表示部のうち所定数(例えば「1」又は「2」)の飾り図柄表示部(例えば「左」の飾り図柄表示部5Lと「右」の飾り図柄表示部5Rのいずれか一方又は双方)にて飾り図柄を再び変動させた後に停止表示させることで、停止表示する飾り図柄を変更させる演出表示が行われる。なお、特定演出における飾り図柄の仮停止表示では、飾り図柄が停留して表示される一方で、例えば揺れ変動表示を行うことや短時間の停留だけで直ちに飾り図柄を再変動させることなどによって、遊技者に停止表示された飾り図柄が確定しない旨を報知すればよい。あるいは、仮停止表示でも、停止表示された飾り図柄が確定したと遊技者が認識する程度に飾り図柄を停留させてから、飾り図柄を再変動させるようにしてもよい。
「擬似連」の特定演出では、特別図柄や飾り図柄の可変表示を開始するための第1開始条件あるいは第2開始条件が1回成立したことに対応して、全図柄変動が開始されてから、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて順次に又は同時に飾り図柄を仮停止表示させた後、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて飾り図柄を再び変動させる再可変表示動作(再変動)を、所定回(例えば最大3回まで)実行する演出動作である。一例として、「擬似連」の特定演出では、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにて、擬似連チャンス目として予め定められた複数種類の飾り図柄の組合せのいずれかが仮停止表示される。そして、再変動の回数が多くなるに従って、可変表示結果が「大当り」となる割合が高くなるように設定されていればよい。これにより、遊技者は、擬似連チャンスのいずれかが仮停止表示されることで、「擬似連」の特定演出が行われると認識でき、再変動の回数が多くなるに従って、可変表示結果が「大当り」となる期待感が高められる。この実施の形態では、「擬似連」の特定演出において、再変動が1回〜3回行われることにより、第1開始条件あるいは第2開始条件が1回成立したことに基づき、飾り図柄の可変表示があたかも2回〜4回続けて開始されたかのように見せることができる。
「擬似連」の特定演出が実行される飾り図柄の可変表示中には、擬似連続変動の進行に伴って、例えば画像表示装置5の表示領域における所定位置に予め用意されたキャラクタを示す演出画像を表示することや、スピーカ8L、8Rから所定の音声(特別音)を出力させること、遊技効果ランプ9を所定の点灯パターンで点灯させること、遊技領域内あるいは遊技領域外に設けられた演出用役物が備える複数の可動部材を動作させることといった、所定の演出動作が実行されてもよい。一例として、全部の飾り図柄表示部5L、5C、5Rにて飾り図柄を仮停止表示させた後、全部の飾り図柄表示部5L、5C、5Rにて飾り図柄を再可変表示させるときには、キャラクタを示す演出画像の表示、特別音の出力、ランプの点灯、可動部材の動作のうち、いずれか1つ、あるいは、複数の動作を組み合わせた演出動作が行われることにより、擬似連続変動が行われることを認識可能に報知するようにしてもよい。
こうした飾り図柄の可変表示動作を利用した特定演出としては、「擬似連」や「滑り」の他にも、例えば「発展チャンス目」や「発展チャンス目終了」、「チャンス目停止後滑り」といった、各種の演出動作が実行されてもよい。ここで、「発展チャンス目」の特定演出では、飾り図柄の可変表示が開始されてから可変表示結果となる確定飾り図柄が導出表示されるまでに、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて、予め定められた特殊組合せに含まれる発展チャンス目を構成する飾り図柄を仮停止表示させた後、飾り図柄の可変表示状態をリーチ状態として所定のリーチ演出が開始される。これにより、発展チャンス目を構成する飾り図柄が仮停止表示されたときには、飾り図柄の可変表示状態がリーチ状態となることや、リーチ状態となった後に可変表示結果が「大当り」となることに対する、遊技者の期待感が高められる。また、「発展チャンス目終了」の特定演出では、飾り図柄の可変表示が開始された後に、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて、発展チャンス目として予め定められた組合せの飾り図柄を、確定飾り図柄として導出表示させる演出表示が行われる。「チャンス目停止後滑り」の特定演出では、「擬似連」の可変表示演出と同様に、飾り図柄の可変表示が開始されてから可変表示結果となる確定飾り図柄が導出表示されるまでに、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにおける全部にて複数種類の擬似連チャンス目のいずれかとなるハズレ組合せ(特殊組合せ)の飾り図柄を一旦仮停止表示させた後、「擬似連」の特定演出とは異なり、飾り図柄表示部5L、5C、5Rの一部にて飾り図柄を再び変動させることで、停止表示する飾り図柄を変更させる演出表示が行われる。
さらに、飾り図柄の可変表示中には、リーチ演出や特定演出とは異なり、例えば所定のキャラクタ画像やメッセージ画像を表示することなどといった、飾り図柄の可変表示態様以外の表示態様により、飾り図柄の可変表示状態がリーチ状態となる可能性があることや、可変表示結果が「大当り」となる可能性があることを、遊技者に報知するための予告演出が実行されることがある。例えば、「キャラクタ表示」、「ステップアップ画像」、「背景変更」といった予告演出が実行可能に設定されていればよい。なお、予告演出は、対応する演出動作が実行されるか否かによって特図変動時間に変化が生じないものであればよい。「キャラクタ表示」の予告演出では、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させてから、2つ以上の飾り図柄表示部(例えば「左」及び「右」の飾り図柄表示部5L、5Rなど)にて飾り図柄を導出表示させる以前に、画像表示装置5の表示領域における所定位置に予め用意されたキャラクタ画像を表示させる演出表示が行われる。「ステップアップ画像」の予告演出では、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける全部にて飾り図柄を変動させてから、2つ以上の飾り図柄表示部にて飾り図柄を導出表示させる以前に、画像表示装置5の表示領域にて、予め用意された複数種類の演出画像を所定の順番に従って切り替えて表示させる演出表示が行われることがある。なお、「ステップアップ画像」の予告演出では、予め用意された複数種類の演出画像のうちいずれか1つ(例えば所定の順番において最初に表示される演出画像など)が表示された後、演出画像が切り替えられることなく、予告演出における演出表示を終了させることがあるようにしてもよい。「背景変更」の予告演出では、画像表示装置5の表示領域における背景画像の表示を、複数種類のいずれかに変更させる演出表示が行われる。
また、複数回の特図ゲームなどに対応して複数回実行される飾り図柄の可変表示にわたり、可変表示結果が「大当り」又は「小当り」となる可能性があることや、特定の変動パターン(例えばスーパーリーチを伴う変動パターン)による可変表示が実行される可能性があることを、遊技者に報知するための予告演出が、連続して実行されることがある。このような複数回の可変表示にわたり連続して実行される予告演出を、連続予告演出ともいう。これに対して、単一の可変表示に対応して実行される予告演出を、単独予告演出ともいう。連続予告演出が実行される複数回の可変表示のうちで最終の可変表示は、連続予告演出により可変表示結果が「大当り」となる可能性などが報知される対象となる可変表示であり、連続予告演出による予告対象となる可変表示ともいう。連続予告演出が実行される場合には、予告対象となる可変表示が開始されるより前に、特図ゲームの保留記憶情報に基づいて可変表示結果が「大当り」となる可能性などを予告する予告演出が開始される。
連続予告演出が開始された後には、例えば飾り図柄の可変表示が実行されるごとに、予め用意された複数種類の演出画像を所定の順番に従って選択的に表示させる演出表示により、演出態様が複数段階に変化(ステップアップ)するような演出動作が行われるようにしてもよい。このとき、変化する回数(ステップ数)が多くなるに従って、可変表示結果が「大当り」又は「小当り」となる可能性(信頼度)などが高くなるようにしてもよい。さらに変化する回数(ステップ数)によって予告する対象が変化するようにしてもよい。例えば第2ステップまで行くと「リーチ確定」、第3ステップまで行くと「スーパーリーチ確定」、第4ステップまで行くと「大当り確定」となるようなものでもよい。予告の態様の変化(ステップアップ)としては、異なるキャラクタ画像が順番に表示されるものであってもよいし、1つのキャラクタにおける形状や色等が変化することでステップアップするようなものであってもよい。すなわち、遊技者からみて予告する手段(表示、音、ランプ、可動物等)の状態が段階的に変化したと認識可能なものであればよい。
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態とならずに、所定の非リーチ組合せとなる確定飾り図柄や、複数種類の発展チャンス目のいずれかとなる確定飾り図柄が、停止表示されることがある。このような飾り図柄の可変表示態様は、可変表示結果が「ハズレ」となる場合における「非リーチ」(「通常ハズレ」ともいう)の可変表示態様と称される。
特図ゲームにおける確定特別図柄として、ハズレ図柄となる特別図柄が停止表示される場合には、飾り図柄の可変表示が開始されてから、飾り図柄の可変表示状態がリーチ状態となったことに対応して、リーチ演出が実行された後に、所定のリーチハズレ組合せ(単に「リーチ組合せ」ともいう)となる確定飾り図柄が停止表示されることがある。このような飾り図柄の可変表示結果は、可変表示結果が「ハズレ」となる場合における「リーチ」(「リーチハズレ」ともいう)の可変表示態様と称される。
特図ゲームにおける確定特別図柄として、15ラウンド大当り図柄となる特別図柄のうち非確変大当り図柄である「3」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後に、所定の非確変大当り組合せ(「通常大当り組合せ」ともいう)となる確定飾り図柄が停止表示される。ここで、非確変大当り組合せとなる確定飾り図柄は、例えば画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される図柄番号が「1」〜「8」の飾り図柄のうち、図柄番号が偶数「2」、「4」、「6」、「8」である飾り図柄のいずれか1つが、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて所定の有効ライン上に揃って停止表示されるものであればよい。このように非確変大当り組合せを構成する図柄番号が偶数「2」、「4」、「6」、「8」である飾り図柄は、非確変図柄(「通常図柄」ともいう)と称される。そして、特図ゲームにおける確定特別図柄が非確変大当り図柄となることに対応して、所定のリーチ演出が実行された後に、非確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「非確変」(「通常」ともいう)の可変表示態様(大当り種別ともいう)と称される。こうして「非確変」の可変表示態様により可変表示結果が「大当り」となった後には、15ラウンド大当り遊技状態に制御され、その15ラウンド大当り状態が終了すると、時短状態又は通常状態に制御されることになる。
特図ゲームにおける確定特別図柄として、15ラウンド大当り図柄となる特別図柄のうち確変大当り図柄である「7」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、大当り種別が「非確変」である場合と同様のリーチ演出が実行された後などに、もしくは、大当り種別が「非確変」である場合とは異なるリーチ演出が実行された後などに、所定の確変大当り組合せとなる確定飾り図柄が停止表示されることがある。ここで、確変大当り組合せとなる確定飾り図柄は、例えば画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて可変表示される図柄番号が「1」〜「8」の飾り図柄のうち、図柄番号が奇数「1」、「3」、「5」、「7」である飾り図柄のいずれか1つが、「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて所定の有効ライン上に揃って停止表示されるものであればよい。このように確変大当り組合せを構成する図柄番号が奇数「1」、「3」、「5」、「7」である飾り図柄は、確変図柄と称される。そして、特図ゲームにおける確定特別図柄が確変大当り図柄となることに対応して、リーチ演出が実行された後などに、確変大当り組合せの確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「確変」の可変表示態様(大当り種別ともいう)と称される。
特図ゲームにおける確定特別図柄として確変大当り図柄が停止表示される場合に、飾り図柄の可変表示結果として、非確変大当り組合せとなる確定飾り図柄が停止表示されることがあるようにしてもよい。このように、非確変大当り組合せとなる確定飾り図柄が停止表示される場合でも、特図ゲームにおける確定特別図柄として確変大当り図柄が停止表示されるときは、「確変」の可変表示態様に含まれる。こうして「確変」の可変表示態様により可変表示結果が「大当り」となった後には、15ラウンド大当り状態に制御され、その15ラウンド大当り状態が終了すると、確変状態に制御されることになる。非確変大当り組合せとなる確定飾り図柄や確変大当り組合せとなる確定飾り図柄は、まとめて大当り組合せ(特定の組合せ)の確定飾り図柄ともいう。
確定飾り図柄が非確変大当り組合せや確変大当り組合せとなる飾り図柄の可変表示中には、再抽選演出が実行されてもよい。再抽選演出では、画像表示装置5における「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rに非確変大当り組合せとなる飾り図柄を仮停止表示させた後に、例えば「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて同一の飾り図柄が揃った状態で再び変動させ、確変大当り組合せとなる飾り図柄(確変図柄)と、非確変大当り組合せとなる飾り図柄(非確変図柄)のうちいずれかを、確定飾り図柄として停止表示(最終停止表示)させる。ここで、大当り種別が「非確変」である場合に再抽選演出が実行されるときには、その再抽選演出として、仮停止表示させた飾り図柄を再変動させた後に非確変大当り組合せとなる確定飾り図柄を導出表示する変動中昇格失敗演出が行われる。これに対して、大当り種別が「確変」である場合に再抽選演出が実行されるときには、その再抽選演出として、仮停止表示させた飾り図柄を再変動させた後に確変大当り組合せとなる確定飾り図柄を停止表示する変動中昇格成功演出が実行されることもあれば、変動中昇格失敗演出が実行されることもある。
非確変大当り組合せとなる確定飾り図柄が導出表示された後には、大当り遊技状態の開始時や大当り遊技状態におけるラウンドの実行中、大当り遊技状態においていずれかのラウンドが終了してから次のラウンドが開始されるまでの期間、大当り遊技状態において最終のラウンドが終了してから次の可変表示ゲームが開始されるまでの期間などにて、確変状態に制御するか否かの報知演出となる大当り中昇格演出が実行されてもよい。なお、大当り中昇格演出と同様の報知演出が、大当り遊技状態の終了後における最初の可変表示ゲーム中などにて実行されてもよい。大当り遊技状態において最終のラウンドが終了してから実行される大当り中昇格演出を、特に「エンディング昇格演出」ということもある。
大当り中昇格演出には、確定飾り図柄が非確変大当り組合せであるにもかかわらず遊技状態が確変状態となる昇格がある旨を報知する大当り中昇格成功演出と、確変状態となる昇格がない旨を報知する大当り中昇格失敗演出とがある。例えば、大当り中昇格演出では、画像表示装置5の表示領域にて飾り図柄を可変表示させて非確変図柄と確変図柄のいずれかを演出表示結果として停止表示させること、あるいは、飾り図柄の可変表示とは異なる演出画像の表示を行うことなどにより、確変状態となる昇格の有無を、遊技者が認識できるように報知すればよい。
特図ゲームにおける確定特別図柄として、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が停止表示される場合や、小当り図柄となる「2」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態とならずに、2回開放チャンス目として予め定められた複数種類の確定飾り図柄の組合せのいずれかが停止表示されることがある。また、特図ゲームにおける確定特別図柄として、2ラウンド大当り図柄となる「1」の数字を示す特別図柄が停止表示される場合には、飾り図柄の可変表示状態がリーチ状態となったことに対応して、所定のリーチ演出が実行された後などに、所定のリーチ組合せとなる確定飾り図柄が停止表示されることもある。特図ゲームにおける確定特別図柄が2ラウンド大当り図柄である「1」の数字を示す特別図柄となることに対応して、各種の確定飾り図柄が停止表示される飾り図柄の可変表示態様は、可変表示結果が「大当り」となる場合における「突確」(「突確大当り」あるいは「突然確変大当り」ともいう)の可変表示態様(大当り種別ともいう)と称される。こうして「突確」の可変表示態様により可変表示結果が「大当り」となった後には、2ラウンド大当り状態に制御され、その2ラウンド大当り状態が終了すると、確変状態に制御されることになる。
可変表示結果が「大当り」で大当り種別が「突確」となる場合には、飾り図柄の可変表示中に突確モード開始演出が実行されてもよい。突確モード開始演出では、大当り種別が「突確」となることに対応して予め定められた演出動作が行われる。突確モード開始演出が行われた後には、突確モードと称される通常の演出モードとは異なる演出モードが開始されてもよい。また、突確モード開始演出は、特別図柄や飾り図柄の可変表示中に実行される演出動作に限定されず、2ラウンド大当り状態となる期間の一部または全部においても、可変表示中から継続して実行される演出動作であってもよい。突確モード開始演出が開始されるときには、可変表示中の飾り図柄を消去して、突確モード開始演出が実行された後には、確定飾り図柄が導出表示されないようにしてもよい。突確モードでは、例えば可変表示結果が「大当り」となって確変状態が終了するまで、突確モード中演出が行われる。突確モード中演出では、画像表示装置5の表示領域における背景画像の表示態様を通常の演出モードにおける表示態様とは異なるものとすること、飾り図柄の可変表示に伴ってスピーカ8L、8Rから出力される音声を通常の演出モードにおける音声とは異なるものとすること、遊技効果ランプ9や装飾用LEDの点灯パターンを通常の演出モードにおける点灯パターンとは異なるものとすること、あるいは、これらの一部又は全部を組み合わせることにより、突確モードであることを遊技者が認識できるように報知すればよい。
確変状態では、例えば「確変中」といった確変状態であることを報知する演出画像を画像表示装置5の表示領域に表示させることや、画像表示装置5の表示領域における背景画像や飾り図柄の表示態様を通常の演出モードにおける表示態様とは異なるものとすることなどにより、確変状態であることを遊技者が認識できる確変中の演出モードとなるようにしてもよい。あるいは、確変状態では、例えば通常状態や時短状態と同様の演出モードとなることにより、確変状態であることを遊技者が認識不可能あるいは認識困難になることがあってもよい(いわゆる潜伏確変)。こうした潜伏確変が行われる期間は、遊技状態が潜伏確変中であるともいう。
パチンコ遊技機1には、例えば図4に示すような電源基板10、主基板11、演出制御基板12、音声制御基板13、ランプ制御基板14、払出制御基板15、発射制御基板17といった、各種の制御基板が搭載されている。また、パチンコ遊技機1には、主基板11と演出制御基板12との間で伝送される各種の制御信号を中継するための中継基板18なども搭載されている。なお、音声制御基板13やランプ制御基板14は、演出制御基板12とは別個の独立した基板によって構成されてもよいし、演出制御基板12にまとめられて1つの基板として構成されてもよい。その他、パチンコ遊技機1の背面には、例えば情報端子基板やインタフェース基板などといった、各種の制御基板が配置されている。インタフェース基板は、パチンコ遊技機1に隣接してカードユニットが設置される場合に、払出制御基板15とカードユニットとの間に介在する制御基板である。
電源基板10は、主基板11、演出制御基板12、払出制御基板15等の各制御基板とは独立して設置され、パチンコ遊技機1内の各制御基板及び機構部品が使用する電圧を生成する。例えば、電源基板10では、図5に示すように、AC24V、VLP(直流+24V)、VSL(直流+30V)、VDD(直流+12V)、VCC(直流+5V)及びVBB(直流+5V)を生成する。電源基板10は、例えば図5に示すように、変圧回路301と、直流電圧生成回路302と、電源監視回路303と、クリアスイッチ304とを備えて構成されている。また、電源基板10には、バックアップ電源となるコンデンサが設けられていてもよい。このコンデンサは、例えばVBB(直流+5V)の電源ラインから充電されるものであればよい。加えて、電源基板10には、パチンコ遊技機1内の各制御基板及び機構部品への電力供給を実行又は遮断するための電源スイッチが設けられていてもよい。あるいは、電源スイッチは、パチンコ遊技機1において、電源基板10の外部に設けられていてもよい。
変圧回路301は、例えば商用電源が入力側(一次側)に印加されるトランスや、トランスの入力側に設けられた過電圧保護回路としてのバリスタなどを備えて構成されたものであればよい。ここで、変圧回路301が備えるトランスは、商用電源と電源基板10の内部とを電気的に絶縁するためのものであればよい。変圧回路301は、その出力電圧として、AC24Vを生成する。直流電圧生成回路302は、例えばAC24Vを整流素子で整流昇圧することによってVSLを生成する整流平滑回路を含んでいる。VSLは、ソレノイド駆動用の電源電圧として用いられる。また、直流電圧生成回路302は、例えばAC24Vを整流素子で整流することによってVLPを生成する整流回路を含んでいる。VLPは、遊技効果ランプ9等の発光体を点灯するための電源電圧として用いられる。加えて、直流電圧生成回路302は、例えばVSLに基づいてVDDおよびVCCを生成するDC−DCコンバータを含んでいる。このDC−DCコンバータは、例えば1つ又は複数のスイッチングレギュレータと、そのスイッチングレギュレータの入力側に接続された比較的大容量のコンデンサとを含み、外部からパチンコ遊技機1への電力供給が停止したときに、VSL、VDD、VBB等の直流電圧が比較的緩やかに低下するように構成されたものであればよい。VDDは、例えば図4に示すゲートスイッチ21、第1及び第2始動口スイッチ22A、22B、カウントスイッチ23といった、遊技媒体を検出する各種スイッチに供給され、これらのスイッチを作動させるために用いられる。
図5に示すように、変圧回路301から出力されたAC24Vは、例えば所定のコネクタや電源ラインを介して、払出制御基板15へと伝送される。VLPは、例えば所定のコネクタや電源ラインを介して、ランプ制御基板14へと伝送される。VSL、VDD及びVCCは、例えば所定のコネクタや電源ラインを介して、主基板11、ランプ制御基板14及び払出制御基板15へと伝送される。VBBは、例えば所定のコネクタや電源ラインを介して、主基板11及び払出制御基板15へと伝送される。なお、演出制御基板12及び音声制御基板13には、ランプ制御基板14を経由して各電圧が供給されればよい。あるいは、演出制御基板12及び音声制御基板13には、ランプ制御基板14を経由することなく、電源基板10から直接に各電圧が供給されてもよい。
電源監視回路303は、例えば停電監視リセットモジュールICを用いて構成され、電源断信号を出力する電源監視手段を実現する回路である。例えば、電源監視回路303は、パチンコ遊技機1において用いられる所定電源電圧(一例としてVSL)が所定値(一例として+22V)を超えると、オフ状態(ハイレベル)の電源断信号を出力する。その一方で、所定電源電圧が所定値以下になった期間が、予め決められている時間(一例として56ms)以上継続したときに、オン状態(ローレベル)の電源断信号を出力する。あるいは、電源監視回路303は、パチンコ遊技機1において用いられる所定電源電圧が所定値以下になると、直ちにオン状態の電源断信号を出力するようにしてもよい。電源断信号は、例えばローレベルとなることでオン状態となりハイレベルとなることでオフ状態となる負論理の電気信号であればよい。電源監視回路303から出力された電源断信号は、例えば電源基板10に搭載された出力ドライバ回路によって増幅された後に所定のコネクタや信号ラインを介して、主基板11や払出制御基板15へと伝送される。なお、電源断信号は、払出制御基板15を介して主基板11へと伝送されるようにしてもよい。
電源断信号を出力するための監視対象となる所定電源電圧は、例えば電源電圧VSLといった、スイッチ作動用の電源電圧VDDにおける規定値(一例として+12V)よりも高い電圧であることが好ましい。これにより、スイッチ作動用の電源電圧VDDが低下して各種スイッチ(例えばゲートスイッチ21、第1及び第2始動口スイッチ22A、22B、カウントスイッチ23など)の動作状態が不安定となる以前に、電源断信号を出力する(オン状態にする)ことで、各種スイッチによる誤検出に基づく遊技制御の進行を防止できる。すなわち、スイッチ作動用の電源電圧VDDが低下すると負論理(ローレベルでオン状態となる)のスイッチ出力がオン状態となるものの、電源電圧VDDよりも早く低下する電源電圧VSLを監視して電力供給の停止を認識することで、スイッチ出力がオン状態となる以前に、電源復旧待ちの状態となってスイッチ出力を検出しない状態となることができる。
電源電圧VSLなどを主基板11、ランプ制御基板14及び払出制御基板15へと伝送する電源ラインには、大容量のコンデンサが接続されていてもよい。これに対して、電源電圧VSLを監視対象とするために電源監視回路303へと伝送する入力ラインには、このようなコンデンサが接続されていなくてもよい。この場合、監視対象となる電源監視回路303への入力ラインにおける電源電圧VSLは、コンデンサが接続された電源ラインにおける電源電圧VSLより早く低下する。すなわち、監視対象の電源電圧VSLが低下し始めた後でも、所定期間は、ソレノイドやモータなどに供給される電源ラインにおける電源電圧VSLの供給状態が維持される。したがって、監視対象となる電源電圧VSLが低下し始める場合でも、所定期間は、ソレノイドやモータなどを駆動可能な状態とすることができる。また、電源ラインにおける電源電圧VSLが低下し始める前に、電力供給の停止を認識することができる。
なお、ソレノイド駆動用の電源電圧VSLに代えて、例えば発光体点灯用の電源電圧VLPといった、スイッチ作動用の電源電圧VDDにおける規定値よりも高い任意の電源電圧を監視対象として、電源断信号を出力するようにしてもよい。また、外部からパチンコ遊技機1に供給される電力の供給停止を検出するための条件としては、パチンコ遊技機1において用いられる所定電源電圧が所定値以下になったことに限られず、外部からの電力が途絶えたことを検出できる任意の条件であればよい。例えば、AC24V等の交流波そのものを監視して交流波が途絶えたことを検出条件としてもよいし、交流波をデジタル化した信号を監視して、デジタル信号が平坦になったことをもって交流波が途絶えたことの検出条件としてもよい。
電源監視回路303は、例えば所定電源電圧(一例としてVCC)が所定値(一例として+4.5V)以下になったときに、リセット信号を出力してもよい。リセット信号は、例えばローレベルとなることでオン状態となる電気信号であればよい。電源監視回路303から出力されたリセット信号は、例えば電源基板10に搭載された出力ドライバ回路によって増幅された後に所定のコネクタや信号ラインを介して、主基板11、ランプ制御基板14及び払出制御基板15へと伝送される。演出制御基板12には、ランプ制御基板14を経由してリセット信号が伝送されればよい。あるいは、演出制御基板12に対しても、ランプ制御基板14を経由せずにリセット信号が直接に伝送されるようにしてもよい。さらに、リセット信号を出力する回路は、電源監視回路303とは別個に設けられたウォッチドッグタイマ内蔵IC、あるいはシステムリセットICなどを用いて構成されてもよい。
パチンコ遊技機1への電力供給が停止するときには、電源監視回路303が、電源断信号を出力(ローレベルに設定)してから所定期間が経過したときに、リセット信号を出力(ローレベルに設定)する。ここでの所定期間は、例えば図4に示す主基板11に搭載されている遊技制御用マイクロコンピュータ100及び払出制御基板15に搭載されている払出制御用マイクロコンピュータ150が、所定の電源断処理を実行するのに十分な時間であればよい。すなわち、電源監視回路303は、給電中信号としての電源断信号を出力した後、遊技制御用マイクロコンピュータ100及び払出制御用マイクロコンピュータ150が所定の電源断処理を実行完了してから、動作停止信号としてのリセット信号を出力(ローレベルに設定)する。電源監視回路303から出力されたリセット信号を受信した遊技制御用マイクロコンピュータ100や払出制御用マイクロコンピュータ150は、動作停止状態となり、各種の制御処理の実行が停止される。また、パチンコ遊技機1への電力供給が開始され、例えば所定電源電圧(一例としてVCC)が所定値(一例として+4.5V)を超えたときに、電源監視回路303はリセット信号の出力を停止(ハイレベルに設定)する。
図6は、パチンコ遊技機1への電力供給が開始されたとき、及び電力供給が停止するときにおける、AC24V、VSL、VCC、リセット信号及び電源断信号の状態を、模式的に示すタイミング図である。図6に示すように、パチンコ遊技機1への電力供給が開始されたときに、VSL及びVCCは徐々に規定値(直流+30V及び直流+5V)に達する。このとき、VCCが第1の所定値を超えると、電源監視回路303はリセット信号の出力を停止(ハイレベルに設定)してオフ状態とする。また、VSLが第2の所定値を超えると、電源監視回路303は電源断信号の出力を停止(ハイレベルに設定)してオフ状態とする。他方、パチンコ遊技機1への電力供給が停止するときに、VSL及びVCCは徐々に低下する。このとき、VSLが第2の所定値にまで低下すると、電源監視回路303は電源断信号をオン状態として出力(ローレベルに設定)する。また、VCCが第1の所定値にまで低下すると、電源監視回路303はリセット信号をオン状態として出力(ローレベルに設定)する。
図5に示す電源基板10が備えるクリアスイッチ304は、例えば押しボタン構造を有し、押下などの操作に応じてクリア信号を出力する。クリア信号は、例えば押下などの操作に応じてローレベルとなることでオン状態となる電気信号であればよい。あるいは、クリア信号は、例えば押下などの操作に応じてハイレベルとなることでオン状態となる電気信号であってもよい。クリアスイッチ304から出力されたクリア信号は、例えば所定のコネクタや信号ラインを介して、主基板11へと伝送され、主基板11から払出制御基板15へと伝送される。また、クリアスイッチ304の操作がなされていないときには、クリア信号の出力を停止(ハイレベルあるいはローレベルに設定)する。なお、クリアスイッチ304は、押しボタン構造以外の他の構成(例えばスライドスイッチ構造やトグルスイッチ構造、ダイヤルスイッチ構造など)であってもよい。
主基板11は、メイン側の制御基板であり、パチンコ遊技機1における遊技の進行を制御するための各種回路が搭載されている。主基板11は、主として、特図ゲームにおいて用いる乱数の設定機能、所定位置に配設されたスイッチ等からの信号の入力を行う機能、演出制御基板12や払出制御基板15などからなるサブ側の制御基板に宛てて、指令情報の一例となる制御コマンドを制御信号として出力して送信する機能、ホールの管理コンピュータに対して各種情報を出力する機能などを備えている。また、主基板11は、第1特別図柄表示装置4Aと第2特別図柄表示装置4Bを構成する各LED(例えばセグメントLED)などの点灯/消灯制御を行って第1特図や第2特図の可変表示を制御することや、普通図柄表示器20の点灯/消灯/発色制御などを行って普通図柄表示器20による普通図柄の可変表示を制御することといった、所定の表示図柄の可変表示を制御する機能も備えている。主基板11は、例えば図4に示すように、遊技制御用マイクロコンピュータ100と、制御用クロック生成回路111と、乱数用クロック生成回路112と、スイッチ回路114と、ソレノイド回路115とを備えている。また、主基板11には、遊技開始スイッチ31が設置されていてもよい。
ここで、制御用クロック生成回路111は、遊技制御用マイクロコンピュータ100の外部にて、所定周波数の発振信号となる制御用クロックCCLKを生成する。制御用クロック生成回路111により生成された制御用クロックCCLKは、例えば図8に示すような遊技制御用マイクロコンピュータ100の制御用外部クロック端子EXCを介してクロック回路502に供給される。乱数用クロック生成回路112は、遊技制御用マイクロコンピュータ100の外部にて、制御用クロックCCLKの発振周波数とは異なる所定周波数の発振信号となる乱数用クロックRCLKを生成する。乱数用クロック生成回路112により生成された乱数用クロックRCLKは、例えば図8に示すような遊技制御用マイクロコンピュータ100の乱数用外部クロック端子ERCを介して乱数回路509に供給される。一例として、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数以下となるようにすればよい。あるいは、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数は、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数よりも高周波となるようにしてもよい。
スイッチ回路114は、遊技球検出用の各種スイッチなどからの検出信号を取り込んで遊技制御用マイクロコンピュータ100に伝送する。ソレノイド回路115は、遊技制御用マイクロコンピュータ100からのソレノイド駆動信号をソレノイド81、82に伝送する。遊技開始スイッチ31は、例えば押しボタン構造を有し、パチンコ遊技機1において遊技機用枠3を閉じて遊技者が通常遊技を行う状態でパチンコ遊技機1の外部から触れることのできない所定箇所に配設されていればよい。そして、例えばパチンコ遊技機1の電源投入時やシステムリセット時などに、パチンコ遊技機1の初期設定を行った後に遊技開始を指示するために操作される。なお、遊技開始スイッチ31は、押しボタン構造以外の他の構成(例えばスライドスイッチ構造やトグルスイッチ構造、ダイヤルスイッチ構造など)であってもよい。
図4に示すように、主基板11には、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B及びカウントスイッチ23からの検出信号を伝送する配線が接続されている。なお、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B及びカウントスイッチ23は、例えばセンサと称されるものなどのように、遊技媒体としての遊技球を検出できる任意の構成を有するものであればよい。また、主基板11には、第1特別図柄表示装置4Aや第2特別図柄表示装置4B、普通図柄表示器20、第1保留表示器25A、第2保留表示器25B、普図保留表示器25Cなどの表示制御を行うための指令信号を伝送する配線が接続されている。さらに、主基板11には、普通電動役物用のソレノイド81や大入賞口扉用のソレノイド82などの駆動制御を行うための指令信号を伝送する配線が接続されている。
主基板11には、例えば中継基板18に対応して主基板側コネクタが設けられるとともに、この主基板側コネクタと遊技制御用マイクロコンピュータ100との間に、出力バッファ回路が接続されていてもよい。この出力バッファ回路は、例えば主基板11から中継基板18を介して演出制御基板12へ向かう方向にのみ制御信号を通過させることができ、中継基板18から主基板11への信号の入力を阻止する。したがって、演出制御基板12や中継基板18の側から主基板11の側に信号が伝わる余地はない。なお、主基板11と演出制御基板12との間に中継基板18を設けない構成としてもよい。これにより、主基板11と演出制御基板12との間における配線引き回しの自由度を高めることができる。
中継基板18には、例えば主基板11から演出制御基板12に対して制御信号を伝送するための配線に、伝送方向規制回路が設けられていればよい。伝送方向規制回路は、主基板11対応の主基板用コネクタにアノードが接続されるとともに演出制御基板12対応の演出制御基板用コネクタにカソードが接続されたダイオードと、一端がダイオードのカソードに接続されるとともに他端がグランド(GND)接続された抵抗とから構成されている。この構成により、伝送方向規制回路は、演出制御基板12から中継基板18への信号の入力を阻止して、主基板11から演出制御基板12へ向かう方向にのみ信号を通過させることができる。したがって、演出制御基板12の側から主基板11側に信号が伝わる余地はない。この実施の形態では、中継基板18において制御信号を伝送するための配線に伝送方向規制回路を設けるとともに、主基板11にて遊技制御用マイクロコンピュータ100と主基板側コネクタの間に出力バッファ回路を設けることで、外部から主基板11への不正な信号の入力を防止することができる。
主基板11と払出制御基板15との間では、例えば双方向でシリアル通信を行うことにより、各種の制御コマンドや通知信号が伝送される。払出制御基板15は、主基板11とは独立したサブ側の制御基板であり、主基板11から送信された制御コマンドや通知信号を受信して、払出モータ51による遊技球の払出動作を制御するための各種回路が搭載されている。すなわち、払出制御基板15は、払出モータ51による賞球の払出動作を制御する機能を備えている。また、払出制御基板15は、例えばインタフェース基板を介したカードユニットとの通信結果に応じて払出モータ51の駆動制御を行って、球貸し動作を制御する機能を備えていてもよい。払出制御基板15には、満タンスイッチ26や球切れスイッチ27からの検出信号を受信するための配線や、払出モータ位置センサ71や払出カウントスイッチ72、エラー解除スイッチ73からの検出信号を受信するための配線が接続されている。加えて、払出制御基板15には、払出モータ51における遊技球の払出制御を行うための指令信号を送信するための配線や、エラー表示用LED74における表示制御を行うための指令信号を送信するための配線、インタフェース基板を介してカードユニットとの間で通信を行うための配線などが接続されている。
ここで、満タンスイッチ26は、例えば遊技盤2の背面下方にて打球供給皿と余剰球受皿の間を連通する余剰球通路の側壁に設置され、余剰球受皿の満タンを検出するためのものである。賞球又は球貸し要求に基づく遊技球が多数払い出されて打球供給皿が満杯になり、遊技球が連絡口に到達した後、さらに遊技球が払い出されると、遊技球は余剰球通路を経て余剰球受皿へと導かれる。さらに遊技球が払い出されると、例えば所定の感知レバーが満タンスイッチ26を押圧してオンする。
また、球切れスイッチ27は、例えば遊技盤2の背面にて遊技球を払出モータ51が設置された払出装置へと誘導する誘導レールの下流に設置され、誘導レールの下流にてカーブ樋を介して連通された2列の球通路内における遊技球の有無を検出するためのものである。一例として、球切れスイッチ27は、球通路に27〜28個の遊技球が存在することを検出できるような位置に係止片によって係止され、球貸しの一単位の最大払出個数(例えば100円分に相当する25個)以上が確保されていることを確認可能にする。なお、誘導レールは、遊技盤2の背面上方にて補給球としての遊技球を貯留する貯留タンクからの遊技球を払出装置へと誘導するものであり、球通路の下部には、払出モータ51が設置された払出装置が固定されている。
エラー解除スイッチ73は、払出制御用マイクロコンピュータ150が所定のエラー状態に制御されているときに、ソフトウェアリセットによって、そのエラー状態を解除するためのスイッチである。エラー表示用LED74は、例えば7セグメントLEDにより構成され、払出制御用マイクロコンピュータ150にてセットされたエラーフラグなどに基づいて、各種のエラーに対応するエラーコードを表示するためのものである。
図4に示す発射制御基板17は、操作ノブ30の操作量に応じて、所定の発射装置による遊技球の発射動作を制御するためのものである。発射制御基板17には、例えば電源基板10あるいは主基板11からの駆動信号を伝送する配線や、払出制御基板15及びインタフェース基板を介してカードユニットからの接続信号を伝送する配線、及び操作ノブ30からの配線が接続されるとともに、発射モータ61への配線が接続されている。なお、カードユニットからの接続信号は、払出制御基板15にて分岐されて発射制御基板17に伝送されてもよいし、カードユニットからインタフェース基板を介し、払出制御基板15を経由せずに発射制御基板17に伝送されてもよい。発射制御基板17は、操作ノブ30の操作量に対応して発射モータ61の駆動力を調整する。発射モータ61は、例えば発射制御基板17により調整された駆動力により発射バネを弾性変形させ、発射バネの付勢力を打撃ハンマに伝達して遊技球を打撃することにより、遊技球を操作ノブ30の操作量に対応した速度で遊技領域に向けて発射させる。
中継基板18を介して主基板11から演出制御基板12へと送信される制御コマンドは、例えば電気信号として伝送される演出制御コマンドである。この実施の形態において、演出制御コマンドは、主基板11に搭載された遊技制御用マイクロコンピュータ100が備えるCPU505(図8参照)によって送信設定が行われ、その設定に基づいて遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511(図8参照)の第2チャネル送信回路により、演出制御基板12に対して送信される。以下の説明では、主基板11から演出制御基板12に対する演出制御コマンドの送信動作に、こうした遊技制御用マイクロコンピュータ100に設けられたCPU505やシリアル通信回路511による一連の動作が含まれているものとする。この場合、演出制御基板12の側では、例えば演出制御用マイクロコンピュータ120のCPUが、主基板11から伝送されたシリアル信号形式の通信データを受信した際に発生する受信割込み要求に基づく割込み処理を実行することにより、演出制御コマンドを取り込んで所定のバッファ(例えば演出用受信コマンドバッファ)等に格納してもよい。なお、演出制御コマンドは、複数本の信号線(例えば8本の演出制御信号線)で主基板11から中継基板18を介し演出制御基板12に対して送信されてもよい。この場合には、演出制御コマンドを送信するための信号線に加えて、演出制御コマンドの取込みを要求する取込信号(演出制御INT信号)を送信するための信号線が配線されてもよい。
演出制御コマンドには、例えば画像表示装置5における画像表示動作を制御するために用いられる表示制御コマンドや、スピーカ8L、8Rからの音声出力を制御するために用いられる音声制御コマンド、遊技効果ランプ9といった発光体の点灯動作などを制御するために用いられるランプ制御コマンドが含まれている。図7(A)は、この実施の形態で用いられる表示制御コマンドの内容の一例を示す説明図である。表示制御コマンドは、例えば2バイト構成であり、1バイト目はMODE(コマンドの分類)を示し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット番号[7])は必ず“1”とされ、EXTデータの先頭ビットは“0”とされる。なお、図7(A)に示された表示制御コマンドの形態は一例であって、他のコマンド形態を用いてもよい。また、この例では、表示制御コマンドが2バイト構成であるとしているが、表示制御コマンドを構成するバイト数は、1であってもよいし、3以上の複数であってもよい。
図7(A)に示す例において、コマンド8001Hは、第1特別図柄表示装置4Aによる特図ゲームにおける第1特図の変動開始を指定する第1変動開始コマンドである。コマンド8002Hは、第2特別図柄表示装置4Bによる特図ゲームにおける第2特図の変動開始を指定する第2変動開始コマンドである。コマンド81XXHは、特図ゲームにおける特別図柄の可変表示に対応して画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rで可変表示される飾り図柄などの変動パターンを指定する変動パターン指定コマンドである。ここで、XXHは不特定の16進数であることを示し、演出制御コマンドによる指示内容に応じて任意に設定される値であればよい。変動パターン指定コマンドでは、指定する変動パターンなどに応じて、異なるEXTデータが設定される。
この実施の形態では、第1及び第2変動開始コマンドと、変動パターン指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、第1特図及び第2特図のいずれが変動開始となるかの指定内容と、変動パターンの指定内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、変動開始となる特別図柄(第1特図あるいは第2特図)と変動パターンとの組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、変動開始となる特別図柄と変動パターンとを特定できるようにしてもよい。ここで、変動開始となる特別図柄と変動パターンとを1つの演出制御コマンドにより特定可能となるように構成した場合には、1つの変動パターンに対して、変動開始となる特別図柄(第1特図あるいは第2特図)に応じた2種類の演出制御コマンドを用意しなければならないことがある。これに対して、変動開始となる特別図柄を指定する演出制御コマンドと、変動パターンを指定する演出制御コマンドとを別個に用意すれば、変動開始となる特別図柄に対応した2種類の演出制御コマンドと、変動パターンの種類数に対応した個数の演出制御コマンドとを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
コマンド8CXXHは、特別図柄や飾り図柄などの可変表示結果を指定する表示結果指定コマンドである。表示結果指定コマンドでは、例えば図7(B)に示すように、可変表示結果が「ハズレ」、「大当り」、「小当り」のいずれとなるかの事前決定結果、また、可変表示結果が「大当り」となる場合における大当り種別が「非確変」、「確変」、「突確」のいずれとなるかの大当り種別決定結果に対応して、異なるEXTデータが設定される。より具体的には、コマンド8C00Hは、可変表示結果が「ハズレ」となる旨の事前決定結果を示す第1表示結果指定コマンドである。コマンド8C01Hは、可変表示結果が「大当り」となる場合における大当り種別が「非確変」となる旨の事前決定結果及び大当り種別決定結果を示す第2表示結果指定コマンドである。コマンド8C02Hは、可変表示結果が「大当り」となる場合における大当り種別が「確変」となる旨の事前決定結果及び大当り種別決定結果を示す第3表示結果指定コマンドである。コマンド8C03Hは、可変表示結果が「大当り」となる場合における大当り種別が「突確」となる旨の事前決定結果及び大当り種別決定結果を示す第4表示結果指定コマンドである。コマンド8C04Hは、可変表示結果が「小当り」となる旨の事前決定結果を示す第5表示結果指定コマンドである。
この実施の形態では、変動パターン指定コマンドと表示結果指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、変動パターン指定コマンドに示される変動パターンと、表示結果指定コマンドに示される可変表示結果とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、変動パターンと可変表示結果(「ハズレ」、「大当り」及び「小当り」のいずれかと、「大当り」となる場合における大当り種別)との組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、変動パターンと可変表示結果を特定可能な情報が伝送されるようにしてもよい。あるいは、3つ以上の演出制御コマンドにより、変動パターンと可変表示結果とを特定できるようにしてもよい。ここで、変動パターンと可変表示結果とを1つの演出制御コマンドにより特定可能となるように構成した場合には、1つの変動パターンに対して、複数種類の可変表示結果に応じた複数種類の演出制御コマンドを用意しなければならないことがある。これに対して、変動パターンを指定する演出制御コマンドと、可変表示結果を通知する演出制御コマンドとを別個に用意すれば、変動パターンの種類数に対応した個数の演出制御コマンドと、可変表示結果の種類数に対応した個数の演出制御コマンドとを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
コマンド8F00Hは、画像表示装置5における「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rで飾り図柄の可変表示の停止を指定する図柄確定指定コマンドである。なお、図柄確定指定コマンドは、主基板11から演出制御基板12に対して伝送されないようにしてもよい。この場合には、変動パターン指定コマンドで指定された変動パターンに対応する可変表示時間を、演出制御基板12の側で特定し、飾り図柄の可変表示を開始してからの経過時間が可変表示時間に達したときに、主基板11からの演出制御コマンドを受信しなくても、確定飾り図柄を完全停止表示して可変表示結果を確定させるようにしてもよい。
コマンド95XXHは、パチンコ遊技機1における現在の遊技状態を指定する遊技状態指定コマンドである。遊技状態指定コマンドでは、例えばパチンコ遊技機1における現在の遊技状態が通常状態、確変状態及び時短状態のいずれであるかに対応して、異なるEXTデータが設定される。具体的な一例として、コマンド9500Hを遊技状態が通常状態である場合に対応した第1遊技状態指定コマンドとし、コマンド9501Hを遊技状態が確変状態である場合に対応した第2遊技状態指定コマンドとし、コマンド9502Hを遊技状態が時短状態である場合に対応した第3遊技状態指定コマンドとすればよい。
A0XXHは、大当り遊技状態や小当り遊技状態の開始を示す演出画像の表示を指定する当り開始指定コマンド(「ファンファーレコマンド」ともいう)である。当り開始指定コマンドでは、例えば表示結果指定コマンドと同様のEXTデータが設定されることなどにより、事前決定結果や大当り種別決定結果に応じて異なるEXTデータが設定される。あるいは、当り開始指定コマンドでは、事前決定結果や大当り種別決定結果と設定されるEXTデータとの対応関係を、表示結果指定コマンドにおける対応関係とは異ならせるようにしてもよい。
コマンドA1XXHは、大当り遊技状態や小当り遊技状態に対応して、各ラウンドや可変入賞動作で大入賞口が開放状態となっている期間における演出画像の表示を指定する大入賞口開放中指定コマンドである。コマンドA2XXHは、大当り遊技状態や小当り遊技状態に対応して、各ラウンドや可変入賞動作の終了により大入賞口が開放状態から閉鎖状態に変化した期間おける演出画像(例えばラウンド間のインターバルにおける演出画像)の表示を指定する大入賞口開放後指定コマンドである。大入賞口開放中指定コマンドや大入賞口開放後指定コマンドでは、例えば15ラウンド大当り状態におけるラウンドの実行回数(例えば「1」〜「15」)や、2ラウンド大当り状態におけるラウンドや小当り遊技状態における可変入賞動作の実行回数(例えば「1」又は「2」)に対応して、異なるEXTデータが設定される。なお、15ラウンド大当り状態であるか、2ラウンド大当り状態や小当り遊技状態であるかに応じて、大入賞口開放中指定コマンドや大入賞口開放後指定コマンドを別個に用意してもよい。これに対して、15ラウンド大当り状態と2ラウンド大当り状態、小当り遊技状態で共通の大入賞口開放中指定コマンドや大入賞口開放後指定コマンドを用いることにより、演出制御コマンドの種類数を削減することができる。また、大当り遊技状態や小当り遊技状態では、各ラウンドや可変入賞動作で大入賞口が開放状態となっている期間であるか、各ラウンドや可変入賞動作の終了により大入賞口が開放状態から閉鎖状態に変化した期間であるかに関わりなく、大当り遊技状態や小当り遊技状態の開始時点から終了時点まで継続的な演出動作が実行されるようにしてもよい。さらに、小当り遊技状態では、大入賞口開放中指定コマンドや大入賞口開放後指定コマンドの伝送が行われないようにしてもよい。
コマンドA3XXHは、大当り遊技状態や小当り遊技状態の終了時における演出画像の表示を指定する当り終了指定コマンドである。当り終了指定コマンドでは、例えば表示結果指定コマンドや当り開始指定コマンドと同様のEXTデータが設定されることなどにより、事前決定結果や大当り種別決定結果に応じて異なるEXTデータが設定される。あるいは、当り終了指定コマンドでは、事前決定結果や大当り種別決定結果と設定されるEXTデータとの対応関係を、表示結果指定コマンドや当り開始指定コマンドにおける対応関係とは異ならせるようにしてもよい。
コマンドB1XXHは、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した遊技球が第1始動口スイッチ22Aにより検出されて始動入賞が発生したことに基づき、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームを実行するための第1始動条件が成立したことを通知する第1始動口入賞指定コマンドである。コマンドB2XXHは、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した遊技球が第2始動口スイッチ22Bにより検出されて始動入賞が発生したことに基づき、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームを実行するための第2始動条件が成立したことを通知する第2始動口入賞指定コマンドである。
この実施の形態において、第1始動口入賞指定コマンドは、第1始動入賞口を通過(進入)した遊技球の検出時である第1始動入賞時に、所定の数値データを用いた判定結果を通知する演出制御コマンドとしても用いられる。また、第2始動口入賞指定コマンドは、第2始動入賞口を通過(進入)した遊技球の検出時である第2始動入賞時に、所定の数値データを用いた判定結果を通知する演出制御コマンドとしても用いられる。
例えば図7(C)に示すように、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドでは、特図表示結果が「ハズレ」となる場合に、変動パターンを決定するために用いる所定の可変表示決定用数値(例えば変動パターン種別決定用の乱数値MR3を示す数値データ)が特図ゲームの保留記憶数(特図保留記憶数)にかかわらず特定の変動パターン(例えばスーパーリーチを伴う変動パターン)とする特定パターン共通範囲の範囲内であるか範囲外であるかに応じて、異なるEXTデータが設定される。より具体的には、コマンドB100HやコマンドB200Hは、特定パターン共通範囲外であることを通知する一方で、コマンドB101HやコマンドB201Hは、特定パターン共通範囲内であることを通知する。
また、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドでは、可変表示結果を「大当り」とするか否かを決定するために用いる所定の特定表示結果決定用数値(例えば特図表示結果決定用の乱数値MR1を示す数値データ)に基づいて、特図表示結果が「大当り」に決定されるか否かの判定結果などに応じて、異なるEXTデータが設定される。より具体的には、コマンドB102HやコマンドB202Hは、特図表示結果が「大当り」又は「小当り」に決定されると判定した入賞時当り判定を通知する。これに対して、コマンドB100HやコマンドB101H、コマンドB200HやコマンドB201Hでは、特図表示結果が「大当り」や「小当り」には決定されないと判定したことが通知される。なお、入賞時当り判定は、特図表示結果が「小当り」に決定されると判定した場合を含むものに限定されず、特図表示結果が「大当り」に決定されると判定した場合のみを含むものであってもよい。あるいは、入賞時当り判定は、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」に決定されて15ラウンド大当り状態に制御されると判定した場合のみを含むものであってもよい。あるいは、特図表示結果が「大当り」で大当り種別が「突確」に決定されて2ラウンド大当り遊技状態に制御されると判定したことや、特図表示結果が「小当り」に決定されて小当り遊技状態に制御されると判定したことを通知するコマンドを、別個に用意してもよい。
さらに、第1始動口入賞指定コマンドでは、パチンコ遊技機1が大当り遊技状態に制御されている大当り中に第1始動入賞口を通過(進入)した遊技球が検出されたことや、確変状態あるいは時短状態において時短制御が行われている時短制御中に第1始動入賞口を通過(進入)した遊技球が検出されたことを、特定可能とするEXTデータが設定される。より具体的には、コマンドB103Hは、大当り中や時短制御中に第1始動入賞口を通過(進入)した遊技球が検出されたという大当り中・時短中入賞を通知する。
コマンドC0XXHは、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hなどにて特図保留記憶数を特定可能に表示するために、第1特図保留記憶数と第2特図保留記憶数との合計値である合計保留記憶数を通知する特図保留記憶数通知コマンドである。特図保留記憶数通知コマンドは、例えば第1始動条件と第2始動条件のいずれかが成立したことや、第1開始条件と第2開始条件のいずれかが成立して特図ゲームの実行が開始されることなどに対応して、第1始動口入賞指定コマンドと第2始動口入賞指定コマンドのいずれかが送信されたことに続いて、主基板11から演出制御基板12に対して送信される。特図保留記憶数通知コマンドでは、例えば図36に示す第1特図保留記憶部591Aにおける保留データと第2特図保留記憶部591Bにおける保留データの総記憶数(例えば「0」〜「8」)に対応して、異なるEXTデータが設定される。これにより、演出制御基板12の側では、第1始動条件と第2始動条件のいずれかが成立したときや、第1開始条件と第2開始条件のいずれかが成立して特図ゲームの実行が開始されるときなどに、主基板11から伝送された特図保留記憶数通知コマンドを受信して、第1特図保留記憶部591Aと第2特図保留記憶部591Bにおける保留データの総記憶数を特定することができる。
この実施の形態では、第1及び第2始動口入賞指定コマンドと保留記憶数指定コマンドとを、互いに別個の演出制御コマンドとして用意している。これに対して、第1始動条件及び第2始動条件のいずれが成立したかの通知内容と、合計保留記憶数の通知内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。一例として、成立した始動条件(第1始動条件あるいは第2始動条件)と合計保留記憶数との組合せに対応してEXTデータが設定される演出制御コマンドを用意して、その演出制御コマンドにより、成立した始動条件と合計保留記憶数とを特定できるようにしてもよい。ここで、第1始動条件と第2始動条件のいずれが成立したかを、合計保留記憶数とともに1つの演出制御コマンドで特定可能とする場合には、例えば合計保留記憶数の上限値が「8」である場合に、第1始動条件と第2始動条件のそれぞれが成立した場合に対応して8種類ずつの合計16種類の演出制御コマンドを用意しなければならない。これに対して、第1始動条件と第2始動条件のいずれが成立したかを特定可能な演出制御コマンドと、合計保留記憶数を特定可能な演出制御コマンドとを別個に用意すれば、第1始動条件と第2始動条件のそれぞれを特定可能な2種類の演出制御コマンドと、合計保留記憶数を特定可能な8種類の演出制御コマンドとからなる、合計10種類の演出制御コマンドを用意すればよく、予め用意するコマンドの種類や、コマンドテーブルの記憶容量などを、削減することができる。
また、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドとは別に、第1始動入賞時や第2始動入賞時に所定の数値データを用いた判定結果を通知する演出制御コマンドを用意してもよい。あるいは、第1始動入賞時や第2始動入賞時に所定の数値データを用いた判定結果の通知内容と、合計保留記憶数の通知内容とを、1つの演出制御コマンドにより特定可能となるように構成してもよい。
コマンドD0XXは、入賞口への異常入賞などの報知を指定する異常入賞報知コマンドである。異常入賞報知コマンドでは、例えば異常が検出された事項などに対応して、異なるEXTデータが設定されればよい。異常入賞報知コマンドの一例として、第1始動入賞口における異常入賞の発生の報知を指定するコマンドD000Hと、第2始動入賞口における異常入賞の発生の報知を指定するコマンドD001Hとが、予め用意されていればよい。なお、第1始動入賞口における異常入賞が発生した場合と、第2始動入賞口における異常入賞が発生した場合とで、共通(EXTデータが同一)の異常入賞報知コマンドが用いられるようにしてもよい。
主基板11から払出制御基板15に対して送信される制御コマンドは、例えば電気信号として伝送される払出制御コマンドである。なお、払出制御コマンドは、主基板11に搭載された遊技制御用マイクロコンピュータ100が備えるCPU505(図8参照)によって払出制御コマンドを送信するための設定が行われ、その設定に基づいて遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511(図8参照)の第1チャネル送受信回路により払出制御基板15に対して送信されるものである。以下の説明では、主基板11から払出制御基板15に対する払出制御コマンドの送信動作に、こうした遊技制御用マイクロコンピュータ100に設けられたCPU505やシリアル通信回路511による一連の動作が含まれているものとする。また、払出制御基板15から主基板11に対しては、例えば電気信号としての払出通知コマンドなどが送信される。なお、払出通知コマンドは、払出制御基板15に搭載された払出制御用マイクロコンピュータ150が備えるCPUによって払出通知コマンドを送信するための設定が行われ、その設定に基づいて払出制御用マイクロコンピュータ150が備えるシリアル通信回路により主基板11に対して送信されるものである。以下の説明では、払出制御基板15から主基板11に対する払出通知コマンドの送信動作に、こうした払出制御用マイクロコンピュータ150に設けられたCPUやシリアル通信回路による一連の動作が含まれているものとする。加えて、以下の説明では、主基板11及び払出制御基板15のいずれか一方から他方に対する所定動作の指令だけでなく、一方での動作状態を他方に通知する通知信号も、払出制御コマンドや払出通知コマンドに含まれるものとする。
主基板11から払出制御基板15に対して送信される払出制御コマンドには、払出数指定コマンドやACKフィードバックコマンドが含まれていればよい。払出数指定コマンドは、払い出すべき賞球の数を示すコマンドである。ACKフィードバックコマンドは、払出制御基板15から主基板11に対して送信された賞球ACKコマンドを主基板11の側で受信したことを示す受信確認受付信号となる。
払出制御基板15から主基板11に対して送信される払出通知コマンドには、賞球ACKコマンド、払出エラー通知コマンド、払出エラー解除コマンドが含まれていればよい。賞球ACKコマンドは、主基板11から払出制御基板15に対して送信された払出数指定コマンドを払出制御基板15の側で受信したことを示す受信確認信号となる。払出エラー通知コマンドは、払出制御基板15の側において遊技球の払出に関わる異常が発生した旨を主基板11の側に通知するコマンドである。払出エラー解除コマンドは、払出制御基板15の側で発生したエラーが解除された旨を主基板11の側に通知するコマンドである。
なお、主基板11と払出制御基板15との間では、シリアル通信によりコマンドを送受信するものに限定されず、複数本の信号線を用いたパラレル通信によりコマンドを送受信してもよい。また、払出制御基板15から主基板11に対して送信される払出エラー通知コマンドや払出エラー解除コマンドに代えて、払出制御基板15におけるエラーの発生状態を示す払出エラー状態信号を、主基板11に設けられた入力ポートの1つに入力してもよい。例えば、払出エラー状態信号は、払出制御基板15にてエラーが発生したときにオン状態となり、エラーが発生していないときや、エラーが解除されたときにオフ状態となる。この場合、主基板11の側では、タイマ割込みの発生毎に払出エラー状態信号を取り込み、その取込結果を記憶しておく。そして、今回のタイマ割込みで取り込んだ信号状態と、前回のタイマ割込みで取り込んで記憶された信号状態との排他的論理和をとることにより、払出エラー状態信号がオフ状態からオン状態に変化したことや(エラー発生時を示す)、オン状態からオフ状態に変改したことを(エラー解除時を示す)、検出できるようにすればよい。払出制御基板15におけるエラー発生時やエラー解除時には、主基板11から演出制御基板12に向け、各々に対応して用意された演出制御コマンドを伝送することなどにより、払出動作にエラーが発生したことを報知する報知動作の開始や終了を、指示するようにしてもよい。払出エラー状態信号として主基板11に設けられた入力ポートの1つに入力するものに限定されず、例えば満タン信号や球切れ信号、賞球ケースエラー信号、ドア開放信号といった、払出制御基板15に入力される信号を、それぞれ主基板11にも入力して、払出エラー状態信号の場合と同様にエラー発生時やエラー解除時を検出できるようにしてもよい。そして、検出されたエラーの種類に応じた演出制御コマンドを主基板11から演出制御基板12に向けて伝送することなどにより、検出されたエラーに応じた報知動作の開始や終了を、指示するようにしてもよい。
図8は、主基板11に搭載された遊技制御用マイクロコンピュータ100の構成例を示している。図8に示す遊技制御用マイクロコンピュータ100は、例えば1チップマイクロコンピュータであり、外部バスインタフェース501と、クロック回路502と、固有情報記憶回路503と、リセット/割込みコントローラ504と、CPU(Central Processing Unit)505と、ROM(Read Only Memory)506と、RAM(Random Access Memory)507と、CTC(Counter/Timer Circuit)508と、乱数回路509と、PIP(Parallel Input Port)510と、シリアル通信回路511と、アドレスデコード回路512とを備えて構成される。
図9は、遊技制御用マイクロコンピュータ100におけるアドレスマップの一例を示している。図9に示すように、アドレス0000H〜アドレス1FFFHの領域は、ROM506に割り当てられ、ユーザプログラムエリアとプログラム管理エリアとを含んでいる。図10(A)は、ROM506におけるプログラム管理エリアの主要部分について、用途や内容の一例を示している。アドレス2000H〜アドレス20FFHの領域は、遊技制御用マイクロコンピュータ100の内蔵レジスタに割り当てられる内蔵レジスタエリアである。図10(B)は、内蔵レジスタエリアの主要部分について、用途や内容の一例を示している。アドレス7E00H〜アドレス7FFFHの領域は、RAM507に割り当てられたワークエリアであり、I/Oマップやメモリマップに割り付けることができる。アドレスFDD0H〜アドレスFDFBHの領域は、アドレスデコード回路512に割り当てられるXCSデコードエリアである。
プログラム管理エリアは、CPU505がユーザプログラムを実行するために必要な情報を格納する記憶領域である。図10(A)に示すように、プログラム管理エリアには、ヘッダKHDR、機能設定KFCS、第1乱数初期設定KRS1、第2乱数初期設定KRS2、割込み初期設定KIIS、セキュリティ時間設定KSESなどが、含まれている。
プログラム管理エリアに記憶されるヘッダKHDRは、遊技制御用マイクロコンピュータ100における内部データの読出設定を示す。図11(A)は、ヘッダKHDRにおける設定データと動作との対応関係を例示している。ここで、遊技制御用マイクロコンピュータ100では、ROM読出防止機能と、バス出力マスク機能とを設定可能である。ROM読出防止機能は、遊技制御用マイクロコンピュータ100が備えるROM506の記憶データについて、読出動作を許可又は禁止する機能であり、読出禁止に設定された状態では、ROM506の記憶データを読み出すことができない。バス出力マスク機能は、外部バスインタフェース501に接続された外部装置から遊技制御用マイクロコンピュータ100の内部データに対する読出要求があった場合に、外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることにより、外部装置から内部データの読み出しを不能にする機能である。図11(A)に示すように、ヘッダKHDRの設定データに対応して、ROM読出防止機能やバス出力マスク機能の動作組合せが異なるように設定される。図11(A)に示す設定データのうち、ROM読出が許可されるとともに、バス出力マスクが有効となる設定データは、バス出力マスク有効データともいう。また、ROM読出が禁止されるとともに、バス出力マスクが有効となる設定データ(全て「00H」)は、ROM読出禁止データともいう。ROM読出が許可されるとともに、バス出力マスクが無効となる設定データは、バス出力マスク無効データともいう。
プログラム管理エリアに記憶される機能設定KFCSは、遊技制御用マイクロコンピュータ100におけるウォッチドッグタイマ(WDT;Watch Dog Timer)の動作設定や、各種機能兼用端子の使用設定を示す。図11(B)は、機能設定KFCSにおける設定内容の一例を示している。
機能設定KFCSのビット番号[7−5]は、例えばリセット/割込みコントローラ504における割込み要因として設定可能なウォッチドッグタイマの動作許可/禁止や、許可した場合の周期を示している。機能設定KFCSのビット番号[4]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第1兼用端子)を、シリアル通信回路511が使用する第2チャネル送信端子TXBとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS13とするかを指定するTXB端子設定である。図11(B)に示す例において、機能設定KFCSのビット番号[4]におけるビット値が“0”であれば、第1兼用端子がシリアル通信回路511での第2チャネル送信に使用される第2チャネル送信端子TXBの設定となる。これに対して、そのビット値が“1”であれば、第1兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS13の設定となる。この実施の形態では、機能設定KFCSのビット番号[4]を“0”として、第1兼用端子を第2チャネル送信端子TXBに設定することにより、演出制御基板12との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[3]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第2兼用端子)を、シリアル通信回路511が使用する第1チャネル送信端子TXAとするか、アドレスデコード回路512が使用するチップセレクト出力端子XCS12とするかを示すTXA端子設定である。図11(B)に示す例において、機能設定KFCSのビット番号[3]におけるビット値が“0”であれば、第2兼用端子がシリアル通信回路511での第1チャネル送信に使用される第1チャネル送信端子TXAの設定となる。これに対して、そのビット値が“1”であれば、第2兼用端子がアドレスデコード回路512で使用されるチップセレクト出力端子XCS12の設定となる。この実施の形態では、機能設定KFCSのビット番号[3]を“0”として、第2兼用端子を第1チャネル送信端子TXAに設定することにより、払出制御基板15との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[2]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第3兼用端子)を、シリアル通信回路511が使用する第1チャネル受信端子RXAとするか、PIP510が使用する入力ポートP5とするかを示すRXA端子設定である。図11(B)に示す例において、機能設定KFCSのビット番号[2]におけるビット値が“0”であれば、第3兼用端子がシリアル通信回路511での第1チャネル受信に使用される第1チャネル受信端子RXAの設定となる。これに対して、そのビット値が“1”であれば、第3兼用端子がPIP510に含まれる入力ポートP5の設定となる。この実施の形態では、機能設定KFCSのビット番号[2]を“0”として、第3兼用端子を第1チャネル受信端子RXAに設定することにより、払出制御基板15との間でのシリアル通信を可能にする。
機能設定KFCSのビット番号[1]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第4兼用端子)を、CPU505等に接続される外部ノンマスカブル割込み端子XNMIとするか、PIP510が使用する入力ポートP4とするかを示すNMI接続設定である。図11(B)に示す例において、機能設定KFCSのビット番号[1]におけるビット値が“0”であれば、第4兼用端子がCPU505等に接続される外部ノンマスカブル割込み端子XNMIの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第4兼用端子がPIP510に含まれる入力ポートP4の設定となる(CPU非接続)。
機能設定KFCSのビット番号[0]は、遊技制御用マイクロコンピュータ100における所定の機能兼用端子(第5兼用端子)を、CPU505等に接続される外部マスカブル割込み端子XINTとするか、PIP510が使用する入力ポートP3とするかを示すXINT接続設定である。図11(B)に示す例において、機能設定KFCSのビット番号[0]におけるビット値が“0”であれば、第5兼用端子がCPU505等に接続される外部マスカブル割込み端子XINTの設定となる(CPU接続)。これに対して、そのビット値が“1”であれば、第5兼用端子がPIP510に含まれる入力ポートP3の設定となる(CPU非接続)。
プログラム管理エリアに記憶される第1乱数初期設定KRS1及び第2乱数初期設定KRS2は、乱数回路509の初期設定を示す。図12(A)は、第1乱数初期設定KRS1における設定内容の一例を示している。図12(B)は、第2乱数初期設定KRS2における設定内容の一例を示している。
第1乱数初期設定KRS1のビット番号[3]は、乱数回路509を使用するか否かを示す乱数回路使用設定である。図12(A)に示す例において、第1乱数初期設定KRS1のビット番号[3]におけるビット値が“0”であれば、乱数回路509を使用しない設定となる一方(未使用)、“1”であれば、乱数回路509を使用する設定となる(使用)。この実施の形態では、第1乱数初期設定KRS1のビット番号[3]を“1”として、乱数回路509を使用可能に設定する。
第1乱数初期設定KRS1のビット番号[2]は、乱数回路509における乱数値となる数値データの更新に用いられる乱数更新クロックRGK(図16参照)を、内部システムクロックSCLKとするか、乱数用クロックRCLKの2分周とするかを示す乱数更新クロック設定である。図12(A)に示す例において、第1乱数初期設定KRS1のビット番号[2]におけるビット値が“0”であれば、内部システムクロックSCLKを乱数更新クロックRGKに用いる設定となる一方、“1”であれば、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定となる。この実施の形態では、第1乱数初期設定KRS1のビット番号[2]を“1”として、乱数用クロックRCLKを2分周して乱数更新クロックRGKに用いる設定とする。
第1乱数初期設定KRS1のビット番号[1−0]は、乱数回路509における乱数更新規則を変更するか否かや、変更する場合における変更方式を示す乱数更新規則設定である。図12(A)に示す例において、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が“00”であれば、乱数更新規則を変更しない設定となり、“01”であれば、2周目以降にて乱数更新規則をソフトウェアにより変更する設定となり、“10”であれば、2周目以降にて乱数更新規則を自動で変更する設定となる。
第2乱数初期設定KRS2のビット番号[3−2]は、固定のビット値“00”が設定される。なお、図12(B)における「00B」の“B”は2進数表示であることを示す。第2乱数初期設定KRS2のビット番号[1−0]は、乱数回路509における乱数値となる数値データでのスタート値に関する設定を示す。図12(B)に示す例において、第2乱数初期設定KRS2のビット番号[1]におけるビット値が“0”であれば、スタート値が所定のデフォルト値0000Hに設定される一方、“1”であるときには、遊技制御用マイクロコンピュータ100ごとに付与された固有の識別情報であるIDナンバーに基づく値がスタート値に設定される。また、図12(B)に示す例では、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“0”であれば、システムリセット毎にスタート値を変更しない設定となる一方、“1”であるときには、システムリセット毎にスタート値を変更する設定となる。なお、スタート値をIDナンバーに基づく値に設定する場合には、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値をスタート値に用いるようにすればよい。また、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”である場合には、システムリセット毎に所定のフリーランカウンタ(例えば図16に示すフリーランカウンタ554A)におけるカウント値に基づいて設定される値をスタート値に用いるようにすればよい。さらに、第2乱数初期設定KRS2のビット番号[1]及び[0]におけるビット値がともに“1”である場合には、IDナンバーとフリーランカウンタにおけるカウント値とに基づいて設定される値をスタート値に用いるようにすればよい。
なお、乱数回路509にて乱数値となる数値データを生成するための回路が2系統(第1及び第2チャネル対応)設けられる場合には、図12(A)及び(B)に示す第1乱数初期設定KRS1のビット番号[3−0]と第2乱数初期設定KRS2のビット番号[3−0]とを、第1チャネルにおける初期設定を示すものとして使用する。その一方で、第1乱数初期設定KRS1のビット番号[7−4]や第2乱数初期設定KRS2のビット番号[7−4]を(図12(A)及び(B)では省略)、第2チャネルにおける初期設定を示すものとして使用すればよい。
プログラム管理エリアに記憶される割込み初期設定KIISは、遊技制御用マイクロコンピュータ100にて発生するマスカブル割込みの取扱いに関する初期設定を示す。図12(C)は、割込み初期設定KIISにおける設定内容の一例を示している。
割込み初期設定KIISのビット番号[7−4]では、割込みベクタの上位4ビットを設定する。割込み初期設定KIISのビット番号[3−0]では、マスカブル割込み要因の優先度の組合せを設定する。図12(C)に示す例において、割込み初期設定KIISのビット番号[3−0]により「00H」〜「02H」及び「06H」のいずれかが指定されれば、CTC508からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。これに対して、「03H」及び「07H」のいずれかが指定されれば、乱数回路509からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。また、「04H」及び「05H」のいずれかが指定されれば、シリアル通信回路511からのマスカブル割込み要因を最優先とする優先度の組合せが設定される。なお、同一回路からのマスカブル割込み要因を最優先とする優先度の組合せでも、指定値が異なる場合には、最優先となるマスカブル割込み要因の種類や第2順位以下における優先度の組合せなどが異なっている。
プログラム管理エリアに記憶されるセキュリティ時間設定KSESは、乱数用クロックRCLKの周波数を監視する場合に異常を検知する周波数や、遊技制御用マイクロコンピュータ100の動作開始時などに移行するセキュリティモードの時間(セキュリティ時間)に関する設定を示す。ここで、遊技制御用マイクロコンピュータ100の動作モードがセキュリティモードであるときには、所定のセキュリティチェック処理が実行されて、ROM506の記憶内容が変更されたか否かが検査される。図13(A)は、セキュリティ時間設定KSESにおける設定内容の一例を示している。
セキュリティ時間設定KSESのビット番号[7−6]は、乱数用クロックRCLKの周波数を監視する場合に異常が検出される周波数を示す乱数用クロック異常検出設定である。図13(B)は、セキュリティ時間設定KSESのビット番号[7−6]における設定内容の一例を示している。セキュリティ時間設定KSESのビット番号[7−6]は、内部システムクロックSCLKの周波数に基づき、乱数用クロックRCLKの周波数が異常と検知される基準値(判定値)を指定する。こうしたセキュリティ時間設定KSESのビット番号[7−6]における設定に基づき、乱数用クロックRCLKの入力状態を内部システムクロックSCLKと比較することにより、乱数用クロックRCLKの入力状態に異常が発生したか否かの判定を可能にする。セキュリティ時間設定KSESのビット番号「5」は、固定のビット値“0”が設定される。
セキュリティ時間設定KSESのビット番号[4−3]は、セキュリティ時間をシステムリセット毎にランダムな時間分延長する場合の時間設定を示す。図13(C)は、セキュリティ時間設定KSESのビット番号[4−3]における設定内容の一例を示している。図13(C)に示す例において、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”であれば、ランダムな時間延長を行わない設定となる。これに対して、そのビット値が“01”であればショートモードの設定となり、“10”であればロングモードの設定となる。ここで、ショートモードやロングモードが指定された場合には、例えば遊技制御用マイクロコンピュータ100に内蔵されたフリーランカウンタのカウント値を、システムリセットの発生時に遊技制御用マイクロコンピュータ100が備える所定の内蔵レジスタ(可変セキュリティ時間用レジスタ)に格納する。そして、初期設定時に可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、セキュリティ時間を延長する際の延長時間がランダムに決定されればよい。一例として、内部システムクロックSCLKの周波数が6.0MHzである場合には、ショートモードにおいて0〜680μs(マイクロ秒)の範囲で延長時間がランダムに決定され、ロングモードにおいて0〜348,160μsの範囲で延長時間がランダムに決定される。また、他の一例として、内部システムクロックSCLKの周波数が10.0MHzである場合には、ショートモードにおいて0〜408μsの範囲で延長時間がランダムに決定され、ロングモードにおいて0〜208,896μsの範囲で延長時間がランダムに決定される。可変セキュリティ時間用レジスタは、例えば遊技制御用マイクロコンピュータ100のRAM507におけるバックアップ領域といった、主基板11におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであればよい。あるいは、可変セキュリティ時間用レジスタは、RAM507におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされてもよい。こうして、可変セキュリティ時間用レジスタがバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間は可変セキュリティ時間用レジスタの格納値が保存されることになる。なお、フリーランカウンタにおけるカウント値を読み出して可変セキュリティ時間用レジスタに格納するタイミングは、システムリセットの発生時に限定されず、予め定められた任意のタイミングとしてもよい。あるいは、フリーランカウンタをバックアップ電源によってバックアップしておき、初期設定時にフリーランカウンタから読み出した格納値を用いてセキュリティ時間を延長する際の延長時間がランダムに決定されてもよい。
また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値によりショートモード又はロングモードを設定するとともに、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外とすることにより固定時間に加える延長時間を設定することもできる。この場合には、ビット番号[2−0]におけるビット値に対応した延長時間と、ビット番号[4−3]におけるビット値に基づいてランダムに決定された延長時間との双方が、固定時間に加算されて、遊技制御用マイクロコンピュータ100がセキュリティモードとなるセキュリティ時間が決定されることになる。
図8に示す遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501は、遊技制御用マイクロコンピュータ100を構成するチップの外部バスと内部バスとのインタフェース機能や、アドレスバス、データバス及び各制御信号の方向制御機能などを有するバスインタフェースである。例えば、外部バスインタフェース501は、遊技制御用マイクロコンピュータ100に外付けされた外部メモリや外部入出力装置などに接続され、これらの外部装置との間でアドレス信号やデータ信号、各種の制御信号などを送受信するものであればよい。この実施の形態において、外部バスインタフェース501には、内部リソースアクセス制御回路501Aが含まれている。
内部リソースアクセス制御回路501Aは、外部バスインタフェース501を介した外部装置から遊技制御用マイクロコンピュータ100の内部データに対するアクセスを制御して、例えばROM506に記憶されたゲーム制御用プログラム(遊技制御処理プログラム)や固定データといった、内部データの不適切な外部読出を制限するための回路である。ここで、外部バスインタフェース501には、例えばインサーキットエミュレータ(ICE;InCircuit Emulator)といった回路解析装置が、外部装置として接続されることがある。
一例として、ROM506のプログラム管理エリアに記憶されたヘッダKHDRの内容に応じて、ROM506における記憶データの読み出しを禁止するか許可するかを切り替えられるようにする。例えば、ヘッダKHDRがバス出力マスク無効データとなっている場合には、外部装置によるROM506の読み出しを可能にして、内部データの外部読出を許可する。これに対して、ヘッダKHDRがバス出力マスク有効データとなっている場合には、例えば外部バスインタフェース501におけるアドレスバス出力、データバス出力及び制御信号出力にマスクをかけることなどにより、外部装置からROM506の読み出しを不能にして、内部データの外部読出を禁止する。この場合、外部バスインタフェース501に接続された外部装置から内部データの読み出しが要求されたときには、予め定められた固定値を出力することで、外部装置からは内部データを読み出すことができないようにする。また、ヘッダKHDRがROM読出禁止データとなっている場合には、ROM506自体を読出不能として、ROM506における記憶データの読み出しを防止してもよい。そして、例えば製造段階のROMでは、ヘッダKHDRをROM読出禁止データとすることで、ROM自体を読出不能としておき、開発用ROMとするのであればバス出力マスク無効データをヘッダKHDRに書き込むことで、外部装置による内部データの検証を可能にする。これに対して、量産用ROMとするのであればバス出力マスク有効データをヘッダKHDRに書き込むことで、CPU505などによる遊技制御用マイクロコンピュータ100の内部におけるROM506の読み出しは可能とする一方で、外部装置によるROM506の読み出しはできないようにすればよい。
他の一例として、内部リソースアクセス制御回路501Aは、ROM506における記憶データの全部又は一部といった、遊技制御用マイクロコンピュータ100の内部データの読み出しが、外部バスインタフェース501に接続された外部装置から要求されたことを検出する。この読出要求を検出したときに、内部リソースアクセス制御回路501Aは、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可するか否かの判定を行う。例えば、ROM506における記憶データの全部又は一部に暗号化処理が施されているものとする。この場合、内部リソースアクセス制御回路501Aは、外部装置からの読出要求がROM506に記憶された暗号化処理プログラムや鍵データ等に対する読出要求であれば、この読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。外部バスインタフェース501では、ROM506の記憶データが出力される出力ポートと、内部バスとの間にスイッチ素子を設け、内部リソースアクセス制御回路501Aが内部データの読み出しを禁止した場合には、このスイッチ素子をオフ状態とするように制御すればよい。このように、内部リソースアクセス制御回路501Aは、外部装置からの読出要求が所定の内部データ(例えばROM506の所定領域)の読み出しを要求するものであるか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
あるいは、内部リソースアクセス制御回路501Aは、内部データの読出要求を検出したときに、所定の認証コードが外部装置から入力されたか否かを判定してもよい。この場合には、例えば内部リソースアクセス制御回路501Aの内部あるいはROM506の所定領域に、認証コードとなる所定のコードパターンが予め記憶されていればよい。そして、外部装置から認証コードが入力されたときには、この認証コードを内部記憶された認証コードと比較して、一致すれば読出要求を受容して、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可する。これに対して、外部装置から入力された認証コードが内部記憶された認証コードと一致しない場合には、読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。このように、内部リソースアクセス制御回路501Aは、外部装置から入力された認証コードが内部記憶された認証コードと一致するか否かに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。これにより、検査機関などが予め知得した正しい認証コードを用いて、遊技制御用マイクロコンピュータ100の内部データを損なうことなく読み出すことができ、内部データの正当性を適切に検査することなどが可能になる。
さらに他の一例として、内部リソースアクセス制御回路501Aに読出禁止フラグを設け、読出禁止フラグがオン状態であれば外部装置によるROM506の読み出しを禁止する。その一方で、読出禁止フラグがオフ状態であるときには、外部装置によるROM506の読み出しが許可される。ここで、読出禁止フラグは、初期状態ではオフ状態であるが、読出禁止フラグを一旦オン状態とした後には、読出禁止フラグをクリアしてオフ状態に復帰させることができないように構成されていればよい。すなわち、読出禁止フラグはオフ状態からオン状態に不可逆的に変更することが可能とされている。例えば、内部リソースアクセス制御回路501Aには、読出禁止フラグをクリアしてオフ状態とする機能が設けられておらず、どのような命令によっても読出禁止フラグをクリアすることができないように設定されていればよい。そして、内部リソースアクセス制御回路501Aは、外部装置からROM506における記憶データといった遊技制御用マイクロコンピュータ100の内部データの読み出しが要求されたときに、読出禁止フラグがオンであるか否かを判定する。このとき、読出禁止フラグがオンであれば、外部装置からの読出要求を拒否して、遊技制御用マイクロコンピュータ100の内部データの読み出しを禁止する。他方、読出禁止フラグがオフであれば、外部装置からの読出要求を受容して、遊技制御用マイクロコンピュータ100の内部データの読み出しを許可にする。このような構成であれば、ゲーム制御用の遊技制御処理プログラムを作成してROM506に格納する提供者においては、読出禁止フラグがオフとなっている状態でデバッグの終了したプログラムをROM506から外部装置に読み込むことができる。そして、デバッグの作業が終了した後に出荷する際には、読出禁止フラグをオン状態にセットすることにより、それ以後はROM506の外部読出を制限することができ、パチンコ遊技機1の使用者などによるROM506の読出を防止することができる。このように、内部リソースアクセス制御回路501Aは、読出禁止フラグといった内部フラグがオフであるかオンであるかに応じて、内部データの読み出しを禁止するか許可するかを決定するようにしてもよい。
なお、読出禁止フラグを不可逆に設定するのではなく、オン状態からオフ状態に変更することも可能とする一方で、読出禁止フラグをオン状態からオフ状態に変更して内部データの読み出しが許可されるときには、ROM506の記憶データを消去(例えばフラッシュ消去など)することにより、ROM506の外部読出を制限するようにしてもよい。
遊技制御用マイクロコンピュータ100が備えるクロック回路502は、例えば制御用外部クロック端子EXCに入力される発振信号を2分周することなどにより、内部システムクロックSCLKを生成する回路である。この実施の形態では、制御用外部クロック端子EXCに制御用クロック生成回路111が生成した制御用クロックCCLKが入力される。クロック回路502により生成された内部システムクロックSCLKは、例えばCPU505といった、遊技制御用マイクロコンピュータ100において遊技の進行を制御する各種回路に供給される。また、内部システムクロックSCLKは、乱数回路509にも供給され、乱数用クロック生成回路112から供給される乱数用クロックRCLKの周波数を監視するために用いられる。さらに、内部システムクロックSCLKは、クロック回路502に接続されたシステムクロック出力端子CLKOから、遊技制御用マイクロコンピュータ100の外部へと出力されてもよい。なお、内部システムクロックSCLKは、遊技制御用マイクロコンピュータ100の外部へは出力されないことが望ましい。このように、内部システムクロックSCLKの外部出力を制限することにより、遊技制御用マイクロコンピュータ100の内部回路(CPU505など)の動作周期を外部から特定することが困難になり、乱数値となる数値データをソフトウェアにより更新する場合に、乱数値の更新周期が外部から特定されてしまうことを防止できる。
遊技制御用マイクロコンピュータ100が備える固有情報記憶回路503は、例えば遊技制御用マイクロコンピュータ100の内部情報となる複数種類の固有情報を記憶する回路である。一例として、固有情報記憶回路503は、ROMコード、チップ個別ナンバー、IDナンバーといった3種類の固有情報を記憶する。ROM506コードは、ROM506の所定領域における記憶データから生成される4バイトの数値であり、生成方法の異なる4つの数値が準備されればよい。チップ個別ナンバーは、遊技制御用マイクロコンピュータ100の製造時に付与される4バイトの番号であり、遊技制御用マイクロコンピュータ100を構成するチップ毎に異なる数値を示している。IDナンバーは、遊技制御用マイクロコンピュータ100の製造時に付与される8バイトの番号であり、遊技制御用マイクロコンピュータ100を構成するチップ毎に異なる数値を示している。ここで、チップ個別ナンバーはユーザプログラムから読み取ることができる一方、IDナンバーはユーザプログラムから読み取ることができないように設定されていればよい。なお、固有情報記憶回路503は、例えばROM506の所定領域を用いることなどにより、ROM506に含まれるようにしてもよい。あるいは、固有情報記憶回路503は、例えばCPU505の内蔵レジスタを用いることなどにより、CPU505に含まれるようにしてもよい。
遊技制御用マイクロコンピュータ100が備えるリセット/割込みコントローラ504は、遊技制御用マイクロコンピュータ100の内部や外部にて発生する各種リセット、割込み要求を制御するためのものである。リセット/割込みコントローラ504が制御するリセットには、システムリセットとユーザリセットが含まれている。システムリセットは、外部システムリセット端子XSRSTに一定の期間にわたりローレベル信号が入力されたときに発生するリセットである。ユーザリセットは、ウォッチドッグタイマ(WDT)のタイムアウト信号が発生したことや、指定エリア外走行禁止(IAT)が発生したことなど、所定の要因により発生するリセットである。
リセット/割込みコントローラ504が制御する割込みには、ノンマスカブル割込みNMIとマスカブル割込みINTが含まれている。ノンマスカブル割込みNMIは、CPU505の割込み禁止状態でも無条件に受け付けられる割込みであり、外部ノンマスカブル割込み端子XNMI(入力ポートP4と兼用)に一定の期間にわたりローレベル信号が入力されたときに発生する割込みである。マスカブル割込みINTは、CPU505の設定命令により、割込み要求の受け付けを許可/禁止できる割込みであり、優先順位設定による多重割込みの実行が可能である。マスカブル割込みINTの要因としては、外部マスカブル割込み端子XINT(入力ポートP3と兼用)に一定の期間にわたりローレベル信号が入力が入力されたこと、CTC508に含まれるタイマ回路にてタイムアウトが発生したこと、シリアル通信回路511にてデータ受信又はデータ送信による割込み要因が発生したこと、乱数回路509にて乱数値となる数値データの取込による割込み要因が発生したことなど、複数種類の割込み要因が予め定められていればよい。
リセット/割込みコントローラ504は、図10(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、割込みマスクレジスタIMR(アドレス2028H)、割込み待ちモニタレジスタIRR(アドレス2029H)、割込み中モニタレジスタISR(アドレス202AH)、内部情報レジスタCIF(アドレス208CH)などを用いて、割込みの制御やリセットの管理を行う。割込みマスクレジスタIMRは、互いに異なる複数の要因によるマスカブル割込みINTのうち、使用するものと使用しないものとを設定するレジスタである。割込み待ちモニタレジスタIRRは、割込み初期設定KIISにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の発生状態を確認するレジスタである。割込み中モニタレジスタISRは、割込み初期設定KIISにより設定されたマスカブル割込み要因のそれぞれについて、マスカブル割込み要求信号の処理状態を確認するレジスタである。内部情報レジスタCIFは、直前に発生したリセット要因を管理したり、乱数用クロックRCLKの周波数異常を記録したりするためのレジスタである。
図14(A)は、内部情報レジスタCIFの構成例を示している。図14(B)は、内部情報レジスタCIFに格納される内部情報データの各ビットにおける設定内容の一例を示している。内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4は、乱数用クロックRCLKにおける周波数異常の有無を示す乱数用クロック異常指示である。図14(B)に示す例では、乱数用クロックRCLKの周波数異常が検知されないときに、内部情報データCIF4のビット値が“0”となる一方、周波数異常が検知されたときには、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[2]に格納される内部情報データCIF2は、直前に発生したリセット要因がシステムリセットであるか否かを示すシステムリセット指示である。図14(B)に示す例では、直前のリセット要因がシステムリセットではないときに(システムリセット未発生)、内部情報データCIF2のビット値が“0”となる一方、システムリセットであるときには(システムリセット発生)、そのビット値が“1”となる。内部情報データCIF2を用いた動作の第1例として、電源投入時に遊技制御用マイクロコンピュータ100のCPU505などが内部情報データCIF2のビット値をチェックして、そのビット値が“1”(セット)でなければ、通常の電源投入ではないと判断する。このときには、例えば演出制御基板12に向けて所定の演出制御コマンドを伝送させることなどにより、パチンコ遊技機1における電源投入直後に大当り遊技状態とすることを狙った不正信号の入力行為が行われた可能性がある旨を、演出装置などにより報知させてもよい。また、内部情報データCIF2を用いた動作の第2例として、パチンコ遊技機1が電源投入時にのみ確変状態を報知し、通常時には確変状態を報知しない場合に、電源投入時に遊技制御用マイクロコンピュータ100のCPU505などが内部情報データCIF2のビット値をチェックして、そのビット値が“1”(セット)でなければ、遊技状態の報知を行わないようにしてもよい。
内部情報レジスタCIFのビット番号[1]に格納される内部情報データCIF1は、直前に発生したリセット要因がウォッチドッグタイマ(WDT)のタイムアウトによるユーザリセットであるか否かを示すWDTタイムアウト指示である。図14(B)に示す例では、直前のリセット要因がウォッチドッグタイマのタイムアウトによるユーザリセットではないときに(タイムアウト未発生)、内部情報データCIF1のビット値が“0”となる一方、ウォッチドッグタイマのタイムアウトによるユーザリセットであるときに(タイムアウト発生)、そのビット値が“1”となる。内部情報レジスタCIFのビット番号[0]に格納される内部情報データCIF0は、直前に発生したリセット要因が指定エリア外走行禁止(IAT)によるユーザリセットであるか否かを示すIAT発生指示である。図14(B)に示す例では、直前のリセット要因が指定エリア外走行の発生によるユーザリセットではないときに(IAT発生なし)、内部情報データCIF0のビット値が“0”となる一方、指定エリア外走行の発生によるユーザリセットであるときに(IAT発生あり)、そのビット値が“1”となる。
遊技制御用マイクロコンピュータ100が備えるCPU505は、ROM506から読み出した制御コードに基づいてユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を実行することにより、パチンコ遊技機1における遊技制御を実行する制御用CPUである。こうした遊技制御が実行されるときには、CPU505がROM506から固定データを読み出す固定データ読出動作や、CPU505がRAM507に各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPU505がRAM507に一時記憶されている各種の変動データを読み出す変動データ読出動作、CPU505が外部バスインタフェース501やPIP510、シリアル通信回路511などを介して遊技制御用マイクロコンピュータ100の外部から各種信号の入力を受け付ける受信動作、CPU505が外部バスインタフェース501やシリアル通信回路511などを介して遊技制御用マイクロコンピュータ100の外部へと各種信号を出力する送信動作等も行われる。
このように、遊技制御用マイクロコンピュータ100では、CPU505がROM506に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ100(又はCPU505)が実行する(又は処理を行う)ということは、具体的には、CPU505がプログラムに従って制御を実行することである。このことは、主基板11以外の他の基板に搭載されているマイクロコンピュータについても同様である。
遊技制御用マイクロコンピュータ100が備えるROM506には、ユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードや固定データ等が記憶されている。また、ROM506には、セキュリティチェックプログラム506Aが記憶されている。CPU505は、パチンコ遊技機1の電源投入やシステムリセットの発生に応じて遊技制御用マイクロコンピュータ100がセキュリティモードに移行したときに、ROM506に記憶されたセキュリティチェックプログラム506Aを読み出し、ROM506の記憶内容が変更されたか否かを検査するセキュリティチェック処理を実行する。なお、セキュリティチェックプログラム506Aは、ROM506とは異なる内蔵メモリに記憶されてもよい。また、セキュリティチェックプログラム506Aは、例えば外部バスインタフェース501を介して遊技制御用マイクロコンピュータ100に外付けされた外部メモリの記憶内容を検査するセキュリティチェック処理に対応したものであってもよい。
遊技制御用マイクロコンピュータ100が備えるRAM507は、ゲーム制御用のワークエリアを提供する。ここで、RAM507の少なくとも一部は、電源基板10において作成されるバックアップ電源によってバックアップされているバックアップRAMであればよい。すなわち、パチンコ遊技機1への電力供給が停止しても、所定期間はRAM507の少なくとも一部の内容が保存される。一例として、パチンコ遊技機1における遊技状態に応じたデータ(特図プロセスフラグの値や保留記憶カウンタの値など)と未払出賞球数を示すデータ(賞球出力カウンタの値など)は、バックアップRAMに保存されればよい。遊技状態に応じたデータは、停電等が生じた後に復旧した場合に、そのデータに基づいて制御状態を停電等の発生前に復旧させるために必要なデータである。
遊技制御用マイクロコンピュータ100が備えるCTC508は、例えば8ビットのプログラマブルタイマを3チャネル(PTC0−PTC2)内蔵して構成され、リアルタイム割込みの発生や時間計測を可能とするタイマ回路を含んでいる。各プログラマブルタイマPTC0−PTC2は、内部システムクロックSCLKに基づいて生成されたカウントクロックの信号変化(例えばハイレベルからローレベルへと変化する立ち下がりタイミング)などに応じて、タイマ値が更新されるものであればよい。また、CTC508は、例えば8ビットのプログラマブルカウンタを4チャネル(PCC0−PCC3)内蔵してもよい。各プログラマブルカウンタPCC0−PCC3は、内部システムクロックSCLKの信号変化、あるいは、プログラマブルカウンタPCC0−PCC3のいずれかにおけるタイムアウトの発生などに応じて、カウント値が更新されるものであればよい。CTC508は、セキュリティ時間を延長する際の延長時間(可変設定時間)をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタなどを、含んでもよい。あるいは、こうしたフリーランカウンタは、例えばRAM507のバックアップ領域といった、CTC508とは異なる遊技制御用マイクロコンピュータ100の内部回路に含まれてもよい。
遊技制御用マイクロコンピュータ100が備える乱数回路509は、例えば16ビット乱数といった、所定の更新範囲を有する乱数値となる数値データを生成する回路である。この実施の形態では、主基板11の側において、例えば図15に示すような特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3、変動パターン決定用の乱数値MR4、普図表示結果決定用の乱数値MR5のそれぞれを示す数値データが、カウント(更新)可能に制御される。なお、遊技効果を高めるために、これら以外の乱数値が用いられてもよい。こうした遊技の進行を制御するために用いられる乱数は、遊技用乱数ともいう。CPU505は、乱数回路509から抽出した数値データに基づき、例えば図36に示す遊技制御カウンタ設定部594に設けられたランダムカウンタといった、乱数回路509とは異なるランダムカウンタを用いて、ソフトウェアによって各種の数値データを加工あるいは更新することで、乱数値MR1〜MR5の全部又は一部を示す数値データをカウントするようにしてもよい。あるいは、CPU505は、乱数回路509を用いることなく、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタのみを用いて、ソフトウェアによって乱数値MR1〜MR5を示す数値データの一部をカウント(更新)するようにしてもよい。一例として、ハードウェアとなる乱数回路509からCPU505により抽出された数値データを、ソフトウェアにより加工することで、特図表示結果決定用の乱数値MR1を示す数値データが更新され、それ以外の乱数値MR2〜MR5を示す数値データは、CPU505がランダムカウンタなどを用いてソフトウェアにより更新すればよい。
特図表示結果決定用の乱数値MR1は、特図ゲームにおける特別図柄などの可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、決定するために用いられる乱数値である。例えば、特図表示結果決定用の乱数値MR1は、「0」〜「65535」の範囲の値をとる。大当り種別決定用の乱数値MR2は、可変表示結果を「大当り」とする場合に、大当り種別を複数種類のいずれかに決定するために用いられる乱数値である。例えば、大当り種別決定用の乱数値MR2は、「0」〜「99」の範囲の値をとる。
変動パターン種別決定用の乱数値MR3は、特別図柄や飾り図柄の可変表示における変動パターン種別を、予め用意された複数種類のいずれかに決定するために用いられる乱数値であり、例えば「0」〜「251」の範囲の値をとる。変動パターン決定用の乱数値MR4は、特別図柄や飾り図柄の可変表示における変動パターンを、予め用意された複数種類のいずれかに決定するために用いられる乱数値であり、例えば「0」〜「997」の範囲の値をとる。普図表示結果決定用の乱数値MR5は、普通図柄表示器20による普図ゲームにおける可変表示結果を「普図当り」とするか「普図ハズレ」とするかなどの決定を行うために用いられる乱数値であり、例えば「3」〜「13」の範囲の値をとる。すなわち、普図表示結果決定用の乱数値MR5は、普図ゲームにおける可変表示結果に基づき普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)不能な状態(通常開放状態など)から遊技球が通過(進入)可能な状態(拡大開放状態など)へと変化させるか否かなどの決定を行うために用いられる。
図16は、乱数回路509の一構成例を示すブロック図である。乱数回路509は、図16に示すように、周波数監視回路551、クロック用フリップフロップ552、乱数生成回路553、スタート値設定回路554、フリーランカウンタ554A、乱数列変更回路555、乱数列変更設定回路556、ラッチ用フリップフロップ557A、557B、乱数ラッチセレクタ558A、558B、乱数値レジスタ559A、559Bを備えて構成される。なお、乱数値レジスタ559Aと乱数値レジスタ559Bはそれぞれ、図10(B)に示すような遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれる乱数値レジスタR1D(アドレス2038H−2039H)と乱数値レジスタR2D(アドレス203AH−203BH)に対応している。
周波数監視回路551は、乱数用クロック生成回路112により生成された乱数用クロックRCLKの乱数回路509に対する入力状態を監視して、その異常発生を検知するための回路である。周波数監視回路551は、例えば乱数用外部クロック端子ERCに入力される発振信号を監視して、内部システムクロックSCLKとの比較により、セキュリティ時間設定KSESのビット番号[7−6]における設定内容(図13(B)参照)に応じた周波数異常を検知したときに、内部情報レジスタCIFのビット番号[4]を“1”にセットする。この実施の形態では、乱数用外部クロック端子ERCに乱数用クロック生成回路112が生成した乱数用クロックRCLKが入力される。
クロック用フリップフロップ552は、例えばD型フリップフロップなどを用いて構成され、乱数用外部クロック端子ERCからの乱数用クロックRCLKがクロック端子CKに入力される。また、クロック用フリップフロップ552では、逆相出力端子(反転出力端子)QバーがD入力端子に接続されている。そして、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKを出力する一方で、逆相出力端子(反転出力端子)Qバーからラッチ用クロックRC0を出力する。この場合、クロック用フリップフロップ552は、クロック端子CKに入力される乱数用クロックRCLKにおける信号状態が所定の変化をしたときに、正相出力端子(非反転出力端子)Q及び逆相出力端子(反転出力端子)Qバーからの出力信号における信号状態を変化させる。例えば、クロック用フリップフロップ552は、乱数用クロックRCLKの信号状態がローレベルからハイレベルへと変化する立ち上がりのタイミング、あるいは、乱数用クロックRCLKの信号状態がハイレベルからローレベルへと変化する立ち下がりのタイミングのうち、いずれか一方のタイミングにて、D入力端子における入力信号を取り込む。このとき、正相出力端子(非反転出力端子)Qからは、D入力端子にて取り込まれた入力信号が反転されることなく出力される一方で、逆相出力端子(反転出力端子)Qバーからは、D入力端子にて取り込まれた入力信号が反転されて出力される。こうして、クロック用フリップフロップ552の正相出力端子(非反転出力端子)Qからは乱数用クロックRCLKにおける発振周波数(例えば20MHz)の1/2となる発振周波数(例えば10MHz)を有する乱数更新クロックRGKが出力される一方、逆相出力端子(反転出力端子)Qバーからは乱数更新クロックRGKの逆相信号(反転信号)、すなわち乱数更新クロックRGKと同一周波数で乱数更新クロックRGKとは位相がπ(=180°)だけ異なるラッチ用クロックRC0が出力される。
クロック用フリップフロップ552から出力された乱数更新クロックRGKは、乱数生成回路553のクロック端子に入力されて、乱数生成回路553におけるカウント値の歩進に用いられる。また、クロック用フリップフロップ552から出力されたラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、ラッチ用クロックRC1とラッチ用クロックRC2とは、互いに同一の発振周波数を有し、互いに共通の周期で信号状態が変化することになる。ここで、ラッチ用クロックRC1やラッチ用クロックRC2における信号状態の変化としては、例えばローレベルからハイレベルへと変化する立ち上がりや、ハイレベルからローレベルへと変化する立ち下がりなどがある。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力されて、始動入賞時ラッチ信号SL1の生成に用いられる乱数取得用クロックとなる。ラッチ用クロックRC2は、ラッチ用フリップフロップ557Bのクロック端子CKに入力されて、始動入賞時ラッチ信号SL2の生成に用いられる乱数取得用クロックとなる。
ここで、乱数用クロックRCLKの発振周波数と、制御用クロック生成回路111によって生成される制御用クロックCCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。一例として、制御用クロックCCLKの発振周波数が11.0MHzである一方で、乱数用クロックRCLKの発振周波数は9.7MHzであればよい。そのため、乱数更新クロックRGKやラッチ用クロックRC1、RC2はいずれも、CPU505に供給される制御用クロックCCLKとは異なる周期で信号状態が変化する発振信号となる。すなわち、クロック用フリップフロップ552は、乱数用クロック生成回路112によって生成された乱数用クロックRCLKに基づき、カウント値を更新するための乱数更新クロックRGKや、複数の乱数取得用クロックとなるラッチ用クロックRC1、RC2として、制御用クロックCCLKや内部システムクロックSCLK(制御用クロックCCLKを2分周したもの)とは異なる周期で信号状態が変化する発振信号を生成する。
乱数生成回路553は、例えば16ビットのカウンタなどから構成され、クロック用フリップフロップ552から出力される乱数更新クロックRGKなどの入力に基づき、数値データを更新可能な所定の範囲において所定の初期値から所定の最終値まで循環的に更新する回路である。例えば乱数生成回路553は、所定のクロック端子への入力信号である乱数更新クロックRGKにおける立ち下がりエッジに応答して、「0」から「65535」までの範囲内で設定された初期値から「65535」まで1ずつ加算するように数値データをカウントアップして行く。そして、「65535」までカウントアップした後には、「0」から初期値よりも1小さい最終値となる数値まで1ずつ加算するようにカウントアップすることで、数値データを循環的に更新する。
スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]におけるビット値(図12(B)参照)に応じて、乱数生成回路553により生成されるカウント値におけるスタート値を設定する。例えば、スタート値設定回路554は、第2乱数初期設定KRS2のビット番号[1−0]が“00”であればスタート値をデフォルト値である「0000H」に設定し、“10”であればIDナンバーに基づく値に設定し、“01”であればシステムリセット毎に変更されるフリーランカウンタ554Aにおけるカウント値に基づく値に設定し、“11”であればIDナンバーとフリーランカウンタ554Aにおけるカウント値とに基づく値に設定する。図16に示す構成例では、乱数回路509にフリーランカウンタ554Aが内蔵されている。そして、スタート値をシステムリセット毎に変更する場合には、初期設定時にフリーランカウンタ554Aのカウント値をそのまま用いること、あるいは、そのカウント値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、スタート値がランダムに決定されればよい。フリーランカウンタ554Aは、例えば遊技制御用マイクロコンピュータ100のRAM507におけるバックアップ領域といった、主基板11におけるバックアップ箇所と共通のバックアップ電源を用いてバックアップされるものであればよい。あるいは、フリーランカウンタ554Aは、RAM507におけるバックアップ領域などに用いられるバックアップ電源とは別個に設けられた電源によりバックアップされてもよい。こうして、フリーランカウンタ554Aがバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、所定期間はフリーランカウンタ554Aにおけるカウント値が保存されることになる。
フリーランカウンタ554Aがバックアップ電源によってバックアップされるものに限定されず、例えばシステムリセットの発生時にフリーランカウンタ554Aのカウント値を所定の内蔵レジスタ(例えば乱数スタート値用レジスタ)に格納し、この内蔵レジスタがバックアップ電源によってバックアップされるようにしてもよい。そして、初期設定時に乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数に代入して得られた値を用いることなどにより、スタート値がランダムに決定されてもよい。この場合、フリーランカウンタ554Aにおけるカウント値を読み出して乱数スタート値用レジスタに格納するタイミングは、システムリセットの発生時に限定されず、予め定められた任意のタイミングとしてもよい。フリーランカウンタ554Aは、乱数回路509に内蔵されて数値データのスタート値をランダムに決定するために用いられる専用のフリーランカウンタであってもよい。すなわち、フリーランカウンタ554Aは、セキュリティ時間を延長する際に延長時間のランダムな決定に用いられるフリーランカウンタとは別個の構成として設けられたものであってもよい。あるいは、フリーランカウンタ554Aとして、遊技制御用マイクロコンピュータ100には内蔵されるが乱数回路509の外部に設けられて、セキュリティ時間を延長する際に延長時間のランダムな決定に用いられるフリーランカウンタと共通のものを用いてもよい。この場合には、数値データのスタート値を決定する処理と、セキュリティ時間中の延長時間をランダムに決定する処理とにおいて、例えばカウント値を代入する演算関数を互いに異ならせること、あるいは、一方の決定処理ではカウント値をそのまま用いるのに対して他方の決定処理ではカウント値を所定の演算関数に代入して得られた値を用いることなどにより、スタート値の決定手法と延長時間の決定手法とを異ならせてもよい。
このように、フリーランカウンタ554Aは、乱数回路509に内蔵されるものに限定されず、例えばCTC508に含まれるものでもよい。あるいは、例えばRAM507のバックアップ領域といった、CTC508とは異なる遊技制御用マイクロコンピュータ100の内部回路に含まれてもよい。また、フリーランカウンタ554Aは、セキュリティ時間を延長する際の延長時間をシステムリセット毎にランダムに決定するために用いられるフリーランカウンタと、同一のカウンタであってもよいし、別個に設けられたカウンタであってもよい。
乱数列変更回路555は、乱数生成回路553により生成された数値データの順列を所定の乱数更新規則に従った順列に変更可能とする回路である。例えば、乱数列変更回路555は、乱数生成回路553から出力される数値データにおけるビットの入れ替えや転置などのビットスクランブル処理を実行する。また、乱数列変更回路555は、例えばビットスクランブル処理に用いるビットスクランブル用キーやビットスクランブルテーブルを変更することなどにより、数値データの順列を変更することができる。
乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値(図12(A)参照)などに応じて、乱数列変更回路555における乱数更新規則を変更する設定を行うための回路である。例えば、乱数列変更設定回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“00”であれば2周目以降も乱数更新規則を変更しない設定とする一方、“01”であれば2周目以降はソフトウェアでの変更要求に応じて乱数更新規則を変更し、“10”であれば自動で乱数更新規則を変更する。
乱数列変更回路556は、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応してソフトウェアによる乱数更新規則の変更を行う場合に、図10(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数列変更レジスタRDSC(アドレス2034H)を用いて、乱数更新規則の変更を制御する。図17(A)は、乱数列変更レジスタRDSCの構成例を示している。図17(B)は、乱数列変更レジスタRDSCに格納される乱数列変更要求データの各ビットにおける設定内容の一例を示している。乱数列変更レジスタRDSCのビット番号[0]に格納される乱数列変更要求データRDSC0は、乱数更新規則をソフトウェアにより変更する場合に、乱数列の変更要求の有無を示している。図17(B)に示す例では、ソフトウェアにより乱数列の変更要求がないときに、乱数列変更要求データRDSC0のビット値が“0”となる一方、乱数列の変更要求があったときには、そのビット値が“1”となる。
図18は、乱数更新規則をソフトウェアにより変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたときに、乱数列変更要求データRDSC0が“1”であることに応答して、乱数更新規則を変更する。図18に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。この後、CPU505がROM506に格納されたユーザプログラムを実行することによって、所定のタイミングで乱数列変更レジスタRDSCのビット番号[0]に“1”が書き込まれたものとする。
そして、第1乱数初期設定KRS1のビット番号[1−0]が“01”であることに対応して、乱数列変更設定回路556が乱数列変更要求データRDSC0を読み出し、そのビット値が“1”であることに応答して、乱数更新規則を変更するための設定を行う。このとき、乱数列変更設定回路556は、乱数生成回路553から出力されたカウント値順列RCNが所定の最終値に達したことに応じて、例えば予め用意された複数種類の乱数更新規則のいずれかを選択することなどにより、乱数更新規則を変更する。図18に示す動作例では、乱数列変更回路555が乱数生成回路553から出力されたカウント値順列RCNにおける最終値に対応する数値データ「65535」を出力した後、乱数列変更要求データRDSC0に応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「65535→65534→…→0」を出力する。乱数列変更レジスタRDSCは、乱数列変更設定回路556により乱数列変更要求データRDSC0が読み出されたときに初期化される。そのため、再び乱数列変更レジスタRDSCのビット番号[0]にビット値“1”が書き込まれるまでは、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。
CPU505がROM506に格納されたユーザプログラムを実行することによって、乱数列変更レジスタRDSCのビット番号[0]に再びビット値“1”が書き込まれると、乱数更新規則が再度変更される。図18に示す動作例では、乱数列変更回路555が乱数列RSNにおける最終値に対応する数値データ「0」を出力したときに、乱数列変更要求データRDSC0としてビット値“1”が書き込まれたことに応じて乱数更新規則を変更する。その後、乱数列変更回路555は、変更後の乱数更新規則に従った乱数列RSNとして、「0→2→…→65534→1→…→65535」を出力する。
図19は、乱数更新規則を自動で変更する場合の動作例を示している。この場合、乱数生成回路553から出力されるカウント値順列RCNが所定の初期値から所定の最終値まで循環的に更新されたことに応じて、乱数列変更設定回路556が自動的に乱数更新規則を変更する。図19に示す動作例では、始めに乱数列変更回路555から出力される乱数列RSNが、「0→1→…→65535」となっている。
そして、乱数変更回路555から出力された乱数列RSNが所定の最終値に達したときに、乱数列変更設定回路556は、予め用意された複数種類の更新規則のうちから予め定められた順序に従って更新規則を選択することにより、更新規則を変更するようにしてもよい。あるいは、乱数列変更設定回路556は、複数種類の更新規則のうちから任意の更新規則を選択することにより、更新規則を変更するようにしてもよい。図19に示す動作例では、1回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNが、「65535→65534→…→0」となる。その後、2回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「0→2→…→65534→1→…→65535」となる。図19に示す動作例では、3回目の乱数更新規則の変更により、乱数列変更回路555から出力される乱数列RSNは、「65534→0→…→32768」となる。4回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「16383→49151→…→49150」となる。5回目の乱数更新規則の変更が行われたときには、乱数列変更回路555から出力される乱数列RSNが、「4→3→…→465531」となる。
このように、乱数列変更回路555は、乱数生成回路553から出力されたカウント値順列RCNを、乱数列変更設定回路556の設定により予め定められた乱数更新規則に基づいて変更することで、数値データを所定手順により更新した乱数列RSNを出力することができる。
ラッチ用フリップフロップ557A、557Bはそれぞれ、例えばD型フリップフロップなどを用いて構成される。ラッチ用フリップフロップ557Aでは、D入力端子にPIP510が備える入力ポートP0からの配線が接続され、クロック端子CKにラッチ用クロックRC1を伝送する配線が接続されている。この実施の形態では、入力ポートP0に第1始動口スイッチ22Aからの第1始動入賞信号SS1が入力される。ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち下がりエッジなどに応答して、第1始動入賞信号SS1を取り込み、始動入賞時ラッチ信号SL1として出力する。これにより、ラッチ用フリップフロップ557Aでは、ラッチ用クロックRC1の立ち下がりエッジに同期して、第1始動入賞信号SS1が始動入賞時ラッチ信号SL1として出力される。ラッチ用フリップフロップ557Bでは、D入力端子にPIP510が備える入力ポートP1からの配線が接続され、クロック端子CKにラッチ用クロックRC2を伝送する配線が接続されている。この実施の形態では、入力ポートP1に第2始動口スイッチ22Bからの第2始動入賞信号SS2が入力される。ラッチ用フリップフロップ557Bは、ラッチ用クロックRC2の立ち下がりエッジなどに応答して、第2始動入賞信号SS2を取り込み、始動入賞時ラッチ信号SL2として出力する。これにより、ラッチ用フリップフロップ557Bでは、ラッチ用クロックRC2の立ち下がりエッジに同期して、第2始動入賞信号SS2が始動入賞時ラッチ信号SL2として出力される。
なお、第1始動入賞信号SS1や第2始動入賞信号SS2は、第1始動口スイッチ22Aや第2始動口スイッチ22Bから直接伝送されるものに限定されない。一例として、第1始動口スイッチ22Aからの出力信号や第2始動口スイッチ22Bからの出力信号がオン状態となっている時間を計測し、計測した時間が所定の時間(例えば3ms)になったときに、第1始動入賞信号SS1や第2始動入賞信号SS2を出力するタイマ回路を設けてもよい。
乱数ラッチセレクタ558Aは、ラッチ用フリップフロップ557Aから伝送される始動入賞時ラッチ信号SL1と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号LL1として選択的に出力する回路である。乱数ラッチセレクタ558Bは、ラッチ用フリップフロップ557Bから伝送される始動入賞時ラッチ信号SL2と、ソフトウェアによる乱数ラッチ要求信号とを取り込み、いずれかを乱数ラッチ信号LL1として選択的に出力する回路である。乱数ラッチセレクタ558Aと乱数ラッチセレクタ558Bは、図10(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数値取込レジスタRDLT(アドレス2032H)と、乱数ラッチ選択レジスタRDLS(アドレス2030H)とを用いて、乱数ラッチ信号LL1や乱数ラッチ信号LL2の出力を制御する。乱数値取込レジスタRDLTは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、ソフトウェアにより乱数値レジスタ559Aや乱数値レジスタ559Bに取り込むために用いられるレジスタである。乱数ラッチ選択レジスタRDLSは、乱数列変更回路555から出力された乱数列RSNにおける数値データを、乱数値レジスタ559Aや乱数値レジスタ559Bに、ソフトウェアにより取り込むか、入力ポートP0、P1への信号入力により取り込むかの取込方法を示すレジスタである。
図20(A)は、乱数値取込レジスタRDLTの構成例を示している。図20(B)は、乱数値取込レジスタRDLTに格納される乱数値取込指定データの各ビットにおける設定内容の一例を示している。乱数値取込レジスタRDLTのビット番号[1]に格納される乱数値取込指定データRDLT1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに対する乱数値取込指定の有無を示している。図20(B)に示す例では、ソフトウェアにより乱数値レジスタR2Dに対する乱数値の取込指定がないときに、乱数値取込指定データRDLT1のビット値が“0”となる一方、乱数値の取込指定があったときには、そのビット値が“1”となる。乱数値取込レジスタRDLTのビット番号[0]に格納される乱数値取込指定データRDLT0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに対する乱数値取込指定の有無を示している。図20(B)に示す例では、ソフトウェアにより乱数値レジスタR1Dに対する乱数値の取込指定がないときに、乱数値取込指定データRDLT0のビット値が“0”となる一方、乱数値の取込指定があったときには、そのビット値が“1”となる。
図21(A)は、乱数ラッチ選択レジスタRDLSの構成例を示している。図21(B)は、乱数ラッチ選択レジスタRDLSに格納される乱数ラッチ選択データの各ビットにおける設定内容の一例を示している。乱数ラッチ選択レジスタRDLSのビット番号[1]に格納される乱数ラッチ選択データRDLS1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bへの取込方法を示している。図21(B)に示す例では、ソフトウェアによる乱数値取込指定データRDLT1の書き込みに応じて乱数値となる数値データを乱数値レジスタR2Dに取り込む場合に、乱数ラッチ選択データRDLS1のビット値を“0”とする。これに対して、入力ポートP1への信号入力に応じて乱数値となる数値データを乱数値レジスタR2Dに取り込む場合には、乱数ラッチ選択データRDLS1のビット値を“1”とする。乱数ラッチ選択レジスタRDLSのビット番号[0]に格納される乱数ラッチ選択データRDLS0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aへの取込方法を示している。図21(B)に示す例では、ソフトウェアによる乱数値取込指定データRDLT0の書き込みに応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合に、乱数ラッチ選択データRDLS0のビット値を“0”とする。これに対して、入力ポートP0への信号入力に応じて乱数値となる数値データを乱数値レジスタR1Dに取り込む場合には、乱数ラッチ選択データRDLS0のビット値を“1”とする。
乱数値レジスタ559A、559Bはそれぞれ、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として格納するレジスタである。図22(A)及び(B)は、乱数値レジスタR1Dとなる乱数値レジスタ559Aの構成例を示している。なお、図22(A)は、乱数値レジスタR1Dの下位バイトR1D(L)を示し、図22(B)は、乱数値レジスタR1Dの上位バイトR1D(H)を示している。図22(C)及び(D)は、乱数値レジスタR2Dとなる乱数値レジスタ559Bの構成例を示している。なお、図22(C)は、乱数値レジスタR2Dの下位バイトR2D(L)を示し、図22(D)は、乱数値レジスタR2Dの上位バイトR2D(H)を示している。乱数値レジスタ559A、559Bはいずれも16ビット(2バイト)のレジスタであり、16ビットの乱数値を格納することができる。
乱数値レジスタ559Aは、乱数ラッチセレクタ558Aから供給される乱数ラッチ信号LL1がオン状態となったことに応答して、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ559Aは、CPU505から供給されるレジスタリード信号RRS1がオン状態となったときに、読出可能(イネーブル)状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号RRS1がオフ状態であるときには、常に同じ値(例えば「65535H」など)を出力して、読出不能(ディセーブル)状態となればよい。また、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態である場合に、レジスタリード信号RRS1を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ559Aは、乱数ラッチ信号LL1がオン状態となるより前にレジスタリード信号RRS1がオン状態となっている場合に、乱数ラッチ信号LL1を受信不可能な状態となるようにしてもよい。
乱数値レジスタ559Bは、乱数ラッチセレクタ558Bから供給される乱数ラッチ信号LL2がオン状態となったことに応答して、乱数列変更回路555から出力された乱数列RSNにおける数値データを乱数値として取り込んで格納する。乱数値レジスタ559Bは、CPU505から供給されるレジスタリード信号RRS2がオン状態となったときに、読出可能(イネーブル)状態となり、格納されている数値データを内部バス等に出力する。これに対して、レジスタリード信号RRS2がオフ状態であるときには、常に同じ値(例えば「65535H」など)を出力して、読出不能(ディセーブル)状態となればよい。また、乱数値レジスタ559Bは、乱数ラッチ信号LL2がオン状態である場合に、レジスタリード信号RRS2を受信不可能な状態となるようにしてもよい。さらに、乱数値レジスタ559Bは、乱数ラッチ信号LL2がオン状態となるより前にレジスタリード信号RRS2がオン状態となっている場合に、乱数ラッチ信号LL2を受信不可能な状態となるようにしてもよい。
乱数値レジスタ559Aと乱数値レジスタ559Bは、図10(B)に示すような遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、乱数ラッチフラグレジスタRDFM(アドレス2033H)と、乱数割込み制御レジスタRDIC(アドレス2031H)とを用いて、乱数ラッチ時の動作管理や割込み制御を可能にする。乱数ラッチフラグレジスタRDFMは、乱数値レジスタ559Aと乱数値レジスタ559Bのそれぞれに対応して、乱数値となる数値データがラッチされたか否かを示す乱数ラッチフラグを格納するレジスタである。例えば、乱数ラッチフラグレジスタRDFMでは、乱数値レジスタ559Aと乱数値レジスタ559Bのそれぞれに対応した乱数ラッチフラグの状態(オン又はオフ)を示すデータが格納され、乱数値レジスタ559Aや乱数値レジスタ559Bに数値データが取り込まれて格納されたときに対応する乱数ラッチフラグ(ビット値のデータ)がオン状態(第1の値)となり新たな数値データの格納が制限される一方、乱数値レジスタ559Aや乱数値レジスタ559Bに格納された数値データが読み出されたときに対応する乱数ラッチフラグ(ビット値のデータ)がオフ状態(第2の値)となり新たな数値データの格納が許可される。乱数割込み制御レジスタRDICは、乱数値レジスタ559Aや乱数値レジスタ559Bに乱数値となる数値データがラッチされたときに発生する割込みの許可/禁止を設定するレジスタである。
図23(A)は、乱数ラッチフラグレジスタRDFMの構成例を示している。図23(B)は、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータの各ビットにおける設定内容の一例を示している。乱数ラッチフラグレジスタRDFMのビット番号[1]に格納される乱数ラッチフラグデータRDFM1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図23(B)に示す例では、乱数値レジスタR2Dに数値データが取り込まれていないときに(乱数値取込なし)、乱数ラッチフラグデータRDFM1のビット値が“0”(第2の値)となって乱数ラッチフラグがオフ状態にクリアされる一方、数値データが取り込まれたときには(乱数値取込あり)、そのビット値が“1”(第1の値)となって乱数ラッチフラグがオン状態にセットされる。乱数ラッチフラグレジスタRDFMのビット番号[0]に格納される乱数ラッチフラグデータRDFM0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたか否かを示す乱数ラッチフラグとなる。図23(B)に示す例では、乱数値レジスタR1Dに数値データが取り込まれていないときに(乱数値取込なし)、乱数ラッチフラグデータRDFM0のビット値が“0”(第2の値)となって乱数ラッチフラグがオフ状態にクリアされる一方、数値データが取り込まれたときには(乱数値取込あり)、そのビット値が“1”(第1の値)となって乱数ラッチフラグがオン状態にセットされる。
各乱数ラッチフラグがオンであるときには、各乱数ラッチフラグと対応付けられた乱数値レジスタR1Dあるいは乱数値レジスタR2Dにおける新たな数値データの格納が制限(禁止)される。すなわち、乱数値レジスタR1Dに数値データが取り込まれたか否かを示す乱数ラッチフラグデータRDFM0のビット値が“1”となって乱数ラッチフラグがオン状態であるときには、乱数値レジスタR1Dに格納された数値データを変更することができず、新たな数値データの格納(取り込み)が制限(禁止)される。また、乱数値レジスタR2Dに乱数値データが取り込まれたか否かを示す乱数ラッチフラグデータRDFM1のビット値が“1”となって乱数ラッチフラグがオン状態であるときには、乱数値レジスタR2Dに格納された数値データを変更することができず、新たな数値データの格納(取り込み)が制限(禁止)される。これに対して、各乱数ラッチフラグがオフであるときには、各乱数ラッチフラグと対応付けられた乱数値レジスタR1Dあるいは乱数値レジスタR2Dにおける新たな数値データの格納が許可される。すなわち、乱数ラッチフラグデータRDFM0のビット値が“0”となって乱数ラッチフラグがオフ状態であるときには、乱数値レジスタR1Dに格納された数値データを変更することができ、新たな数値データの格納(取り込み)が許可される。また、乱数ラッチフラグデータRDFM1のビット値が“0”となって乱数ラッチフラグがオフ状態であるときには、乱数値レジスタR2Dに格納された数値データを変更することができ、新たな数値データの格納(取り込み)が許可される。
なお、乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値は、“0”となることで対応する乱数ラッチフラグがオフ状態にクリアされる一方で“1”となることでオン状態にセットされる正論理のものに限定されず、“1”となることで対応する乱数ラッチフラグがオフ状態となる一方で“0”となることでオン状態となる負論理のものであってもよい。すなわち、各乱数ラッチフラグは、対応する乱数値レジスタR1D又は乱数値レジスタR2Dに数値データが格納されたときにオン状態となり新たな数値データの格納が制限(禁止)される一方で、対応する乱数値レジスタR1D又は乱数値レジスタR2Dの読み出しが行われたときにオフ状態となり新たな数値データの格納が許可されるものであればよい。
図24(A)は、乱数割込み制御レジスタRDICの構成例を示している。図24(B)は、乱数割込み制御レジスタRDICに格納される乱数割込み制御データの各ビットにおける設定内容の一例を示している。乱数割込み制御レジスタRDICのビット番号[1]に格納される乱数割込み制御データRDIC1は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図24(B)に示す例では、乱数値レジスタR2Dへの取込時における割込みを禁止する場合に(割込み禁止)、乱数割込み制御データRDIC1のビット値を“0”とする一方、この割込みを許可する場合には(割込み許可)、そのビット値を“1”とする。乱数割込み制御レジスタRDICのビット番号[0]に格納される乱数割込み制御データRDIC0は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに数値データが取り込まれたときに発生する割込みを、許可するか禁止するかの割込み制御設定を示している。図24(B)に示す例では、乱数値レジスタR1Dへの取込時における割込みを禁止する場合に(割込み禁止)、乱数割込み制御データRDIC0のビット値を“0”とする一方、この割込みを許可する場合には(割込み許可)、そのビット値を“1”とする。
図8に示す構成例では、乱数回路509が遊技制御用マイクロコンピュータ100に内蔵されている。これに対して、例えば図25に示すように、乱数回路509は、遊技制御用マイクロコンピュータ100とは異なる乱数回路チップとして、遊技制御用マイクロコンピュータ100に外付けされるものであってもよい。この場合、第1始動口スイッチ22Aからの第1始動入賞信号SS1をスイッチ回路114の内部にて分岐し、一方を遊技制御用マイクロコンピュータ100が備えるPIP510の入力ポートP0へと入力させて、他方を乱数回路509が備えるラッチ用フリップフロップ557AのD入力端子へと入力させてもよい。また、第2始動口スイッチ22Bからの第2始動入賞信号SS2をスイッチ回路114の内部にて分岐し、一方を遊技制御用マイクロコンピュータ100が備えるPIP510の入力ポートP1へと入力させて、他方を乱数回路509が備えるラッチ用フリップフロップ557BのD入力端子へと入力させてもよい。遊技制御用マイクロコンピュータ100との間では、例えば遊技制御用マイクロコンピュータ100が備えるクロック回路502からシステムクロック出力端子CLKOを介して出力された内部システムクロックSCLKを乱数回路509が備える周波数監視回路551やクロック用フリップフロップ552へと入力させたり、遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501に接続されたアドレスバスやデータバス、制御信号線などを介して、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データの読み出しなどが行われたりすればよい。
また、図25に示すように乱数回路509が遊技制御用マイクロコンピュータ100に外付けされる場合にも、各乱数ラッチフラグの状態(オン/オフ)に応じて、乱数値レジスタR1Dや乱数値レジスタR2Dへの新たな数値データの格納が制限(禁止)あるいは許可されるようにすればよい。図10(B)に示す内蔵レジスタのうち、例えば乱数ラッチ選択レジスタRDLSや乱数割込み制御レジスタRDIC、乱数値取込レジスタRDLT、乱数ラッチフラグレジスタRDFM、乱数列変更レジスタRDSC、乱数値レジスタR1D、乱数値レジスタR2Dといった、乱数回路509が使用する各種レジスタは、遊技制御用マイクロコンピュータ100には内蔵されず、遊技制御用マイクロコンピュータ100に外付けされた乱数回路509に内蔵されるようにしてもよい。この場合、遊技制御用マイクロコンピュータ100のCPU505は、例えば外部バスインタフェース501などを介して、乱数回路509に内蔵された各種レジスタの書き込みや読み出しを行うようにすればよい。
図8に示す遊技制御用マイクロコンピュータ100が備えるPIP510は、例えば6ビット幅の入力専用ポートであり、専用端子となる入力ポートP0〜入力ポートP2と、機能兼用端子となる入力ポートP3〜入力ポートP5とを含んでいる。入力ポートP3は、CPU505等に接続される外部マスカブル割込み端子XINTと兼用される。入力ポートP4は、CPU505等に接続される外部ノンマスカブル割込み端子XNMIと兼用される。入力ポートP5は、シリアル通信回路511が使用する第1チャネル受信端子RXAと兼用される。入力ポートP3〜入力ポートP5の使用設定は、プログラム管理エリアに記憶される機能設定KFCSにより指示される。
PIP510は、遊技制御用マイクロコンピュータ100が備える内蔵レジスタのうち、所定の入力ポートレジスタなどを用いて、入力ポートP0〜入力ポートP5の状態管理等を行うことができればよい。入力ポートレジスタは、入力ポートP0〜入力ポートP5のそれぞれに対応して、外部信号の入力状態を示すビット値が格納されるレジスタである。
遊技制御用マイクロコンピュータ100には、PIP510とは別個に、あるいは、PIP510の一部又は全部を用いた構成として、入力ポートIP0と入力ポートIP1、及び出力ポートOP0と出力ポートOP1が、設けられていてもよい。なお、入力ポートIP0、入力ポートIP1、出力ポートOP0、出力ポートOP1は、遊技制御用マイクロコンピュータ100に内蔵されるものであってもよいし、主基板11上で遊技制御用マイクロコンピュータ100に外付けされるものであってもよい。こうした入出力ポートが遊技制御用マイクロコンピュータ100に外付けされる場合、CPU505は、例えば外部バスインタフェース501を介して、入力ポートIP0や入力ポートIP1から信号を取り込み、出力ポートOP0や出力ポートOP1に対して信号を伝送することができればよい。図26は、入力ポートIP0、入力ポートIP1、出力ポートOP0、出力ポートOP1におけるビット割当て例を示している。
図26(A)は、入力ポートIP0におけるビット割当て例を示している。図26(A)に示す例において、入力ポートIP0のビット番号[0]には第1始動口スイッチ22Aからの検出信号が入力され、入力ポートIP0のビット番号[1]には第2始動口スイッチ22Bからの検出信号が入力される。また、入力ポートIP0のビット番号[2]には第1入賞確認スイッチ22Cからの検出信号が入力され、入力ポートIP0のビット番号[3]には第2入賞確認スイッチ22Dからの検出信号が入力される。加えて、入力ポートIP0のビット番号[6]には電源基板10からの電源断信号が入力され、入力ポートIP0のビット番号[7]には電源基板10のクリアスイッチ304(図5参照)からの検出信号(クリア信号)が入力される。
図26(B)は、入力ポートIP1におけるビット割当て例を示している。図26(B)に示す例において、入力ポートIP1のビット番号[0]にはカウントスイッチ23からの検出信号が入力され、入力ポートIP1のビット番号[1]にはゲートスイッチ21からの検出信号が入力される。また、入力ポートIP1のビット番号[2]及びビット番号[3]には一般入賞口スイッチからの検出信号が入力される。加えて、入力ポートIP1のビット番号[4]〜[7]には、それぞれ、磁石センサ信号1、磁石センサ信号2、ドア開放信号、賞球情報が入力される。磁石センサ信号1及び磁石センサ信号2は、磁石を用いた不正行為を検出するために設けられた2個の磁石センサから伝送される検出信号である。
図26(C)は、出力ポートOP0におけるビット割当て例を示している。図26(C)に示す例において、出力ポートOP0からは、払出制御基板15に送信される払出制御信号の一種となる接続信号が出力される。また、普通電動役物用のソレノイド81や大入賞口扉用のソレノイド82に対する駆動信号も、出力ポートOP0から出力される。
図26(D)は、出力ポートOP1におけるビット割当て例を示している。図26(D)に示す例において、出力ポートOP1からは、始動口信号、図柄確定回数1信号、大当り1信号、大当り2信号、大当り3信号、時短信号、セキュリティ信号といった、制御に関わる情報を示す各種の情報出力用信号が出力される。出力ポートOP1から出力された各種の情報出力用信号は、所定のターミナル基板を介して外部装置へと伝送される。なお、ターミナル基板を介して外部装置に出力される信号には、賞球信号1(賞球払出を1個検出するごとに出力される信号)や、遊技機エラー状態信号(パチンコ遊技機1がエラー状態(本例では、球切れエラー状態または満タンエラー状態)であることを示す信号)が、含まれていてもよい。この場合、払出制御基板15の側において、賞球払出やパチンコ遊技機1のエラー状態が検出され、賞球信号1や遊技機エラー状態信号が主基板11に入力される。そして、主基板11に入力された賞球信号1や遊技機エラー状態信号は、遊技制御用マイクロコンピュータ100を経由することなく、主基板11上からターミナル基板を介して外部出力されればよい。なお、主基板11に入力された賞球信号1や遊技機エラー状態信号は、遊技制御用マイクロコンピュータ100を一旦経由してから、ターミナル基板を介して外部出力されるようにしてもよい。
なお、ターミナル基板を介して外部出力される信号には、例えば、遊技機用枠3が開放状態であることを示すドア開放信号や、賞球の払出を10個検出するごとに出力される賞球情報などが、含まれていてもよい。この場合、払出制御基板15の側において、遊技機用枠3が開放状態であることや賞球の払出が検出され、ドア開放信号や賞球情報が主基板11に入力される。そして、主基板11に入力されたドア開放信号や賞球情報は、遊技制御用マイクロコンピュータ100を経由することなく、主基板11上からターミナル基板を介して外部出力されればよい。また、ドア開放信号や賞球情報は、主基板11上で分岐され、遊技制御用マイクロコンピュータ100にも入力されればよい。あるいは、主基板11に入力されたドア開放信号や賞球情報は、遊技制御用マイクロコンピュータ100を一旦経由してから、ターミナル基板を介して外部出力されるようにしてもよい。
ターミナル基板には、主基板11からの信号を伝達するケーブルを接続するためのコネクタ(主基板用コネクタ)や、払出制御基板15から主基板11を経由した信号を伝達するケーブルを接続するためのコネクタ(払出用コネクタ)、ホールコンピュータなどの外部装置に対して信号を伝達するケーブルを接続するためのコネクタ(外部出力用コネクタ)、ドライバ回路としての半導体リレー(フォトMOSリレー)などが、各ケーブルの配線に対応して搭載されていればよい。主基板用コネクタや払出用コネクタに含まれる所定端子に接続された信号線は、それぞれ、1kΩの抵抗を介して、ターミナル基板に複数搭載された半導体リレーの入力端子のいずれかに接続されていればよい。そして、半導体リレーの出力端子に接続された信号線は、それぞれ、外部出力用コネクタに含まれる所定端子に接続されていればよい。外部出力用コネクタには、始動口信号、図柄確定回数1信号、大当り1信号、大当り2信号、大当り3信号、時短信号、セキュリティ信号、賞球信号1、遊技機エラー状態信号を個別に出力するために、複数の端子が含まれていればよい。
外部出力用コネクタの所定端子からは、パチンコ遊技機1のセキュリティ状態を示すセキュリティ信号が出力される。一例として、第1始動口スイッチ22Aや第2始動口スイッチ22Bの検出結果と第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dの検出結果とに基づいて、第1始動入賞口や第2始動入賞口における異常入賞が発生したと判定された場合に、セキュリティ信号が所定時間(例えば4分間)ホールコンピュータなどの外部装置に出力される。これにより、電波などを用いて第1始動入賞口や第2始動入賞口への入賞数を実際の入賞数よりも多く認識させるような不正行為が行われたことを、ホールコンピュータなどの外部装置側で認識することができる。
また、パチンコ遊技機1への電源投入が行われて初期化処理が実行された場合にも、セキュリティ信号が所定期間(例えば30秒間)ホールコンピュータなどの外部装置に出力される。これにより、不自然なタイミング(例えば遊技店の開店時に全ての遊技機の電源リセット作業を終えた後であるにもかかわらず)初期化処理が実行されたことを認識可能として、不正にパチンコ遊技機1を電源リセットさせて電源リセットのタイミングで大当りを狙うような不正行為が行われた可能性を、ホールコンピュータなどの外部装置側で認識することができる。
セキュリティ信号を外部出力するための出力端子は、図26(D)に示す出力ポートOP1のビット番号[7]から伝達される信号を外部出力する共通の出力端子として構成されている。そして、異常入賞の発生が検出された場合と、初期化処理(例えばパチンコ遊技機1への電源投入時にクリアスイッチ304が操作されたことに基づいてRAM507の記憶内容をクリアするなどの処理)が実行された場合とでは、共通のセキュリティ信号が共通の出力端子から外部出力される。初期化処理が実行されるのは、通常、遊技店の開店時にパチンコ遊技機1の電源リセット作業を行う場合のみである。したがって、1日のうち1回程度しか出力されない信号のためにターミナル基板上に専用のコネクタや半導体リレーを設けることは効率的ではなく無駄が多い。そこで、異常入賞の発生が検出された場合と、初期化処理が実行された場合とで、共通の出力端子からセキュリティ信号を出力するように構成することによって、外部出力用の信号線や回路素子の無駄を低減している。すなわち、ホールコンピュータなどの外部装置に情報を出力するための機構の部品数の増加や配線作業の複雑化を防ぐことができる。
なお、セキュリティ信号として共通の出力端子から外部出力される信号は、例えば第1始動入賞口や第2始動入賞口における異常入賞に限らず、大入賞口や一般入賞口における異常入賞の発生を検出した場合に、出力可能となる信号などが含まれてもよい。この場合、大入賞口や一般入賞口についても、第1始動入賞口や第2始動入賞口と同様に、遊技球の通過(進入)を検出するためのスイッチとして検出方式が異なる2種類のスイッチ(例えば近接スイッチとフォトセンサなど)を設けて、第1始動入賞口や第2始動入賞口と同様の判定方法に従って、異常入賞の有無を判定すればよい。
また、例えばパチンコ遊技機1に設けられた磁石センサで異常磁気を検出した場合や、パチンコ遊技機1に設けられた電波センサで異常電波を検出した場合に、ターミナル基板の外部出力用コネクタに含まれる共通の出力端子からセキュリティ信号の外部出力が可能となるように構成してもよい。その他、例えばパチンコ遊技機1に設けられた各種スイッチの異常を検出した場合(具体例として、入力値が閾値を超えたことにより、短絡などの発生を検出した場合)に、共通の出力端子からセキュリティ信号の外部出力が可能となるように構成してもよい。こうして、大入賞口などにおける異常入賞や異常磁気エラー、異常電波エラーについても共通の出力端子からセキュリティ信号の外部出力が可能なように構成すれば、1本の信号線を接続することでホールコンピュータなどの外部装置でエラー検出を行うことができ、エラー検出に関する作業負担を軽減することができる。
大入賞口における異常入賞の発生を検出する場合には、カウントスイッチ23による検出数と入賞確認スイッチによる検出数との差が所定値(例えば「10」など)以上となったことに基づく判定に加えて、特図プロセスフラグの値が大当り遊技状態中であることを示す値となっていないとき(例えば特図プロセスフラグの値が“4”〜“7”以外のとき、図55参照)にカウントスイッチ23により遊技球が検出された場合にも、大入賞口における異常入賞が発生したと判定してもよい。このように、カウントスイッチ23の検出結果と入賞確認スイッチの検出結果とに基づいて大入賞口における異常入賞の発生が検出された場合や、特図プロセスフラグの値に基づいて大入賞口における異常入賞の発生が検出された場合にも、異常入賞時セキュリティ信号出力時間(例えば4分間)を設定することにより(図46のSA32参照)、セキュリティ信号を外部出力できればよい。
主基板11に搭載された遊技制御用マイクロコンピュータ100と払出制御基板15に搭載された払出制御用マイクロコンピュータ150との間で通信エラーが検出された場合にも、共通の出力端子からセキュリティ信号の外部出力が可能となるように構成してもよい。例えば、遊技制御用マイクロコンピュータ100は、払出制御用マイクロコンピュータ150からの賞球ACKコマンドなどを受信できなかったときに、通信エラーが発生したと判定し、共通の出力端子からセキュリティ信号を外部出力できればよい。また、遊技制御用マイクロコンピュータ100は、シリアル通信回路511にて受信時エラーの発生による割込みが発生したときに、通信エラーが発生したと判定し、共通の出力端子からセキュリティ信号を外部出力できればよい。なお、遊技制御用マイクロコンピュータ100と払出制御用マイクロコンピュータ150との間で通信エラーが検出された場合には、専用の信号線や出力端子から、セキュリティ信号とは別の信号が外部出力されるようにしてもよい。
セキュリティ信号出力用の信号線や出力端子とは別に、初期化処理実行の検出、第1始動入賞口や第2始動入賞口における異常入賞の検出、大入賞口における異常入賞の検出、異常磁気エラーの検出、異常電波エラーの検出、通信エラーの検出について、それぞれ別々の信号線や出力端子を設けて、セキュリティ信号とともに、それぞれのエラーに対応した外部出力信号も、ホールコンピュータなどの外部装置に出力できるようにしてもよい。この場合、セキュリティ信号を確認することによって何らかのエラーが発生していることを認識できるとともに、さらにエラーの種類ごとに出力される信号を確認することによって遊技店側でエラーの種類を確認することができる。したがって、遊技店側からエラーの種類の確認まで要求されているような場合には、セキュリティ信号とは別にエラー種類ごとの外部出力信号を設けることによって、より遊技店のニーズに応えた外部出力を行えるようにすることができる。一方で、何らかのエラーが発生していることの確認のみを要求しているような遊技店の場合には、外部出力される信号のうち、セキュリティ信号のみをホールコンピュータなどの外部装置に接続して確認できるようにすればよい。
主基板用コネクタや払出用コネクタの各端子に接続された信号線と、外部出力用コネクタの各端子に接続された信号線との間には、半導体リレーが介在することにより、外部からパチンコ遊技機1の内部への信号入力を防止することができ、不正行為を確実に防止することができる。なお、半導体リレーに代えて、例えば機械式のリレーといった、他のリレー素子を用いてもよい。
主基板11や払出制御基板15からの信号を伝達するケーブルをターミナル基板でとりまとめて各種信号を外部出力するように構成してもよいし、例えば主基板11にて払出制御基板15からの信号を伝達するケーブルなどをとりまとめて各種信号を外部出力するように構成してもよい。一例として、図26(C)に示す出力ポートOP0や図26(D)に示す出力ポートOP1に含まれる所定ビット(一部又は全部)が、ホールコンピュータなどの外部装置に各種信号を出力するための出力端子として構成されてもよい。
遊技制御用マイクロコンピュータ100が備えるシリアル通信回路511は、例えば全二重、非同期、標準NRZ(Non Return to Zero)フォーマットで通信データを取扱う回路である。一例として、シリアル通信回路511は、外部回路との間にて双方向でシリアルデータを送受信可能な第1チャネル送受信回路と、外部回路との間にて単一方向でシリアルデータを送信のみが可能な第2チャネル送信回路とを含んでいればよい。シリアル通信回路511が備える第1チャネル送受信回路は、払出制御基板15に搭載された払出制御用マイクロコンピュータ150との間における双方向のシリアル通信に使用されてもよい。シリアル通信回路511が備える第2チャネル送信回路は、演出制御基板12に搭載された演出制御用マイクロコンピュータ120との間における単一方向(送信のみ)のシリアル通信に使用されてもよい。これにより、演出制御基板12の側から主基板11に対する信号入力を禁止して、不正行為を防止することができる。
シリアル通信回路511では、例えばオーバーランエラー、ブレークコードエラー、フレーミングエラー、パリティエラーといった、4種類のエラーが通信データの受信時に発生することがあり、いずれかのエラーが発生したときに、受信割込みを発生させることができればよい。オーバーランエラーは、受信済みの通信データがユーザプログラムによってリードされるより前に、次の通信データを受信してしまった場合に発生するエラーである。ブレークコードエラーは、通信データの受信中に所定のブレークコードが検出されたとき発生するエラーである。フレーミングエラーは、受信した通信データにおけるストップビットが“0”である場合に発生するエラーである。パリティエラーは、パリティ機能を使用する設定とした場合、受信した通信データのパリティが、予め指定したパリティと一致しない場合に発生するエラーである。
シリアル通信回路511は、第1割込み制御回路と、第2割込み制御回路とを含んでいてもよい。第1割込み制御回路は、シリアル通信回路511に含まれる第1チャネル送受信回路における割込み発生因子を管理して、通信割込み要求を制御するための回路である。第1割込み制御回路が制御する割込みには、第1チャネル送信割込みと、第1チャネル受信割込みとがある。第1チャネル送信割込みには、送信完了による割込みや、送信データエンプティによる割込みが含まれている。第1チャネル受信割込みには、受信データフルによる割込みや、ブレークコードエラー、オーバーランエラー、フレーミングエラー、パリティエラーといった受信時エラーの発生による割込みが含まれている。第2割込み制御回路は、シリアル通信回路511に含まれる第2チャネル受信回路における割込み発生因子を管理して、通信割込み要求を制御するための回路である。第2割込み制御回路が制御する割込みは、第2チャネル送信割込みである。第2チャネル送信割込みには、送信完了による割込みや、送信データエンプティによる割込みが含まれている。
遊技制御用マイクロコンピュータ100が備えるアドレスデコード回路512は、遊技制御用マイクロコンピュータ100の内部における各機能ブロックのデコードや、外部装置用のデコード信号であるチップセレクト信号のデコードを行うための回路である。チップセレクト信号により、遊技制御用マイクロコンピュータ100の内部回路、あるいは、周辺デバイスとなる外部装置を、選択的に有効動作させて、CPU505からのアクセスが可能となる。
遊技制御用マイクロコンピュータ100が備えるROM506には、ゲーム制御用のユーザプログラムやセキュリティチェックプログラム506Aとなる制御コードの他に、遊技の進行を制御するために用いられる各種の選択用データ、テーブルデータなどが格納される。例えば、ROM506には、CPU505が各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブル、設定テーブルなどを構成するデータが記憶されている。また、ROM506には、CPU505が主基板11から各種の制御コマンドとなる制御信号を送信するために用いられる複数のコマンドテーブルを構成するテーブルデータや、飾り図柄の変動パターンを複数種類格納する変動パターンテーブルを構成するテーブルデータなどが記憶されている。
図27は、飾り図柄の変動パターンを例示する説明図である。この実施の形態では、可変表示結果が「ハズレ」となる場合のうち、飾り図柄の可変表示態様が「非リーチ」である場合と「リーチ」である場合のそれぞれに対応して、また、可変表示結果が「大当り」となる場合のうち、大当り種別が「非確変」又は「確変」である場合と「突確」である場合、さらには、可変表示結果が「小当り」となる場合などに対応して、複数の変動パターンが予め用意されている。なお、可変表示結果が「ハズレ」で飾り図柄の可変表示態様が「非リーチ」である場合に対応した変動パターンは、非リーチ変動パターン(「非リーチハズレ変動パターン」ともいう)と称され、可変表示結果が「ハズレ」で飾り図柄の可変表示態様が「リーチ」である場合に対応した変動パターンは、リーチ変動パターン(「リーチハズレ変動パターン」ともいう)と称される。また、非リーチ変動パターンとリーチ変動パターンは、可変表示結果が「ハズレ」となる場合に対応したハズレ変動パターンに含まれる。可変表示結果が「大当り」や「小当り」である場合に対応した変動パターンは、当り変動パターンと称される。
図27に示すように、この実施の形態では、非リーチ変動パターンとして、変動パターンPA1−1〜変動パターンPA1−4が、予め用意されている。また、リーチ変動パターンとして、変動パターンPA2−1、変動パターンPA2−2、変動パターンPB2−1、変動パターンPB2−2、変動パターンPA3−1、変動パターンPA3−2、変動パターンPB3−1、変動パターンPB3−2が、予め用意されている。可変表示結果が「大当り」で大当り種別が「非確変」又は「確変」となる場合に対応した当り変動パターンとしては、変動パターンPA4−1、変動パターンPA4−2、変動パターンPB4−1、変動パターンPB4−2、変動パターンPA5−1、変動パターンPA5−2、変動パターンPB5−1、変動パターンPB5−2が、予め用意されている。可変表示結果が「大当り」で大当り種別が「突確」となる場合や、可変表示結果が「小当り」となる場合に対応した当り変動パターンとしては、変動パターンPC1−1〜変動パターンPC1−3が、予め用意されている。さらに、可変表示結果が「大当り」で大当り種別が「突確」となる場合にのみ対応した当り変動パターンとして、変動パターンPC1−4及び変動パターンPC1−5が、予め用意されている。
図28は、この実施の形態における飾り図柄の変動パターン種別を示している。図27に示す各変動パターンは、図28に示す複数の変動パターン種別のうち、少なくとも1つの変動パターン種別に含まれている。すなわち、各変動パターン種別は、例えば飾り図柄の可変表示中に実行される演出動作などに基づいて分類(グループ化)された1つ又は複数の変動パターンを含むように構成されていればよい。一例として、複数の変動パターンをリーチ演出の種類(演出態様)で分類(グループ化)して、飾り図柄の可変表示状態がリーチ状態とならない変動パターンが含まれる変動パターン種別と、ノーマルリーチを伴う変動パターンが含まれる変動パターン種別と、スーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴う変動パターンが含まれる変動パターン種別とに分ければよい。他の一例として、複数の変動パターンを「擬似連」の可変表示演出の有無や擬似連変動(再変動)の実行回数で分類(グループ化)して、「擬似連」の可変表示演出を実行しない変動パターンが含まれる変動パターン種別と、「擬似連」の可変表示演出にて擬似連変動(再変動)の実行回数を1回とする変動パターンが含まれる変動パターン種別と、「擬似連」の可変表示演出にて擬似連変動(再変動)の実行回数を2回以上とする変動パターンが含まれる変動パターン種別とに分ければよい。さらに他の一例として、複数の変動パターンを「擬似連」や「滑り」などの特定演出の有無、あるいは、飾り図柄の可変表示時間などに応じて、分類(グループ化)してもよい。複数の変動パターン種別のうちには、共通の変動パターンを含んで構成されたものがあってもよい。
図28に示す例では、可変表示結果が「ハズレ」で「非リーチ」の可変表示態様となる場合に対応して、変動パターン種別CA1−1〜変動パターン種別CA1−3が、予め用意されている。また、可変表示結果が「ハズレ」で「リーチ」の可変表示態様となる場合に対応して、変動パターン種別CA2−1〜変動パターン種別CA2−4が、予め用意されている。可変表示結果が「大当り」で「非確変」又は「確変」の可変表示態様(大当り種別)に対応して、変動パターン種別CA3−1〜変動パターン種別CA3−3が、予め用意されている。可変表示結果が「大当り」で「突確」の可変表示態様(大当り種別)である場合や可変表示結果が「小当り」である場合に対応して、変動パターン種別CA4−1が、予め用意されている。さらに、可変表示結果が「大当り」で「突確」の可変表示態様(大当り種別)である場合のみに対応して、変動パターン種別CA4−2が、予め用意されている。
変動パターン種別CA1−1は、特別図柄や飾り図柄の可変表示時間が短縮されず、また、「擬似連」や「滑り」などの可変表示演出が実行されない「短縮なし」の変動パターン種別であり、「短縮なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA1−2は、例えば通常状態にて合計保留記憶数が「3」以上であるときや、確変状態又は時短状態にて合計保留記憶数が「1」以上であるとき、特別図柄や飾り図柄の可変表示時間が短縮されて、「擬似連」や「滑り」などの特定演出が実行されない「短縮あり」の変動パターン種別であり、「短縮あり」と予め対応付けられた変動パターンを含んでいる。なお、通常状態であるときに可変表示時間が短縮される場合に対応した変動パターン種別と、確変状態又は時短状態であるときに可変表示時間が短縮される場合に対応した変動パターン種別とを、別個に設けるようにしてもよい。また、通常状態であるときに、合計保留記憶数が「3」〜「5」で可変表示時間が短縮される場合に対応した変動パターン種別と、合計保留記憶数が「6」〜「8」で可変表示時間が短縮される場合に対応した変動パターン種別とを、別個に設けるようにしてもよい。変動パターン種別CA1−3は、可変表示態様が「非リーチ」となる場合に「擬似連」や「滑り」の特定演出が実行される「滑り、擬似連」の変動パターン種別であり、「滑り、擬似連」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA2−1は、「擬似連」の特定演出が実行されずに、飾り図柄の可変表示状態をリーチ状態とした後に通常のリーチ演出となるノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連なし」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA2−2は、「擬似連」の特定演出における擬似連変動(再変動)の実行回数が1回であり、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連変動1回」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連変動1回」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA2−3は、「擬似連」の特定演出における擬似連変動(再変動)の実行回数が2回であり、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「ノーマルリーチ(ハズレ)擬似連変動2回」の変動パターン種別であり、「ノーマルリーチ(ハズレ)擬似連変動2回」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA2−4は、飾り図柄の可変表示状態をリーチ状態とした後にスーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴い、リーチ演出が終了したときにリーチ組合せの確定飾り図柄を導出表示する「スーパーリーチ(ハズレ)」の変動パターン種別であり、「スーパーリーチ(ハズレ)」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA3−1は、「擬似連」の可変表示演出が実行されずに、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「ノーマルリーチ(大当り)擬似連なし」の変動パターン種別であり、「ノーマルリーチ(大当り)擬似連なし」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA3−2は、「擬似連」の可変表示演出が実行されて、飾り図柄の可変表示状態をリーチ状態とした後にノーマルリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「ノーマルリーチ(大当り)擬似連あり」の変動パターン種別であり、「ノーマルリーチ(大当り)擬似連あり」と予め対応付けられた変動パターンを含んでいる。変動パターン種別CA3−3は、飾り図柄の可変表示状態をリーチ状態とした後にスーパーリーチを伴い、リーチ演出が終了したときに大当り組合せの確定飾り図柄を導出表示する「スーパーリーチ(大当り)」の変動パターン種別であり、「スーパーリーチ(大当り)」と予め対応付けられた変動パターンを含んでいる。
変動パターン種別CA4−1は、2回開放チャンス目となる確定飾り図柄を導出表示する「2回開放チャンス目停止」の変動パターン種別であり、「2回開放チャンス目停止」と予め対応付けられた変動パターンを含んでいる。図27に示す変動パターンの例では、変動パターンPC1−1〜変動パターンPC1−3が、確定飾り図柄を複数種類の2回開放チャンス目のいずれかとする変動パターンとなっており、変動パターン種別CA4−1に含まれることになる。変動パターン種別CA4−2は、可変表示結果が「大当り」で大当り種別が「突確」である場合に飾り図柄の可変表示状態をリーチ状態としてからリーチ組合せの確定飾り図柄を導出表示する「2回開放時リーチハズレ」の変動パターン種別であり、「2回開放時リーチハズレ」と予め対応付けられた変動パターンを含んでいる。図27に示す変動パターンの例では、変動パターンPC1−4及び変動パターンPC1−5が、確定飾り図柄をリーチ組合せとする変動パターンとなっており、変動パターン種別CA4−2に含まれることになる。
図29は、ROM506に記憶される特図表示結果決定テーブルの構成例を示している。この実施の形態では、特図表示結果決定テーブルとして、図29(A)に示す第1特図表示結果決定テーブル130Aと、図29(B)に示す第2特図表示結果決定テーブル130Bとが、予め用意されている。第1特図表示結果決定テーブル130Aは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果決定用の乱数値MR1に基づいて決定するために参照されるテーブルである。第2特図表示結果決定テーブル130Bは、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームにおいて可変表示結果となる確定特別図柄が導出表示される以前に、その可変表示結果を「大当り」として大当り遊技状態に制御するか否かや、可変表示結果を「小当り」として小当り遊技状態に制御するか否かを、特図表示結果決定用の乱数値MR1に基づいて決定するために参照されるテーブルである。
第1特図表示結果決定テーブル130Aでは、図36に示す遊技制御フラグ設定部592に設けられた確変フラグがオフであるかオンであるかに応じて、特図表示結果決定用の乱数値MR1と比較される数値(決定値)が、「大当り」や「小当り」、「ハズレ」の特図表示結果に割り当てられている。第2特図表示結果決定テーブル130Bでは、確変フラグがオフであるかオンであるかに応じて、特図表示結果決定用の乱数値MR1と比較される数値(決定値)が、「大当り」や「ハズレ」の特図表示結果に割り当てられている。第1特図表示結果決定テーブル130Aや第2特図表示結果決定テーブル130Bにおいて、特図表示結果決定用の乱数値MR1と比較される決定値を示すテーブルデータは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの決定結果に割り当てられる決定用データとなっている。そして、第1特図表示結果決定テーブル130Aと第2特図表示結果決定テーブル130Bのそれぞれでは、確変フラグがオンであるときには、確変フラグがオフであるときに比べて多くの決定値が、「大当り」の特図表示結果に割り当てられている。ここで、パチンコ遊技機1における遊技状態が確変状態であるときには、確変フラグがオンとなる。その一方で、パチンコ遊技機1における遊技状態が通常状態や時短状態であるときには、確変フラグがオフとなる。これにより、パチンコ遊技機1における遊技状態が確変状態であるときには、通常状態や時短状態であるときに比べて、特図表示結果を「大当り」として大当り遊技状態に制御すると決定される確率が高くなる。すなわち、第1特図表示結果決定テーブル130Aと第2特図表示結果決定テーブル130Bのそれぞれでは、パチンコ遊技機1における遊技状態が確変状態であるときに、通常状態や時短状態であるときに比べて大当り遊技状態に制御すると決定される確率が高くなるように、決定用データが大当り遊技状態に制御するか否かの決定結果に割り当てられている。
また、図29(A)に示す第1特図表示結果決定テーブル130Aの設定例では、所定範囲の決定値(「30000」〜「30099」の範囲の値)が「小当り」の特図表示結果に割り当てられている。その一方で、図29(B)に示す第2特図表示結果決定テーブル130Bの設定例では、「小当り」の特図表示結果に決定値が割り当てられていない。このような設定により、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを開始するための第1開始条件が成立したことに基づいて可変表示結果の判定を行う場合と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを開始するための第2開始条件が成立したことに基づいて可変表示結果の判定を行う場合とで、特図表示結果を「小当り」として小当り遊技状態に制御すると決定される割合を、異ならせることができる。特に、第2特図を用いた特図ゲームでは特図表示結果を「小当り」として小当り遊技状態に制御すると決定されることがないので、例えば時短状態や確変状態といった、普通可変入賞球装置6Bが形成する第2始動入賞口に遊技球が進入しやすい遊技状態において、賞球を得ることが困難な小当り遊技状態の頻発を回避して、遊技の間延びによる遊技興趣の低下を防止できる。
なお、第2特図表示結果決定テーブル130Bにおいても、第1特図表示結果決定テーブル130Aにおける設定とは異なる所定範囲の決定値が、「小当り」の特図表示結果に割り当てられるようにしてもよい。あるいは、第1開始条件と第2開始条件のいずれが成立したかにかかわらず、共通の特図表示結果決定テーブルを参照して、特図表示結果の決定を行うようにしてもよい。
図29(B)に示す第2特図表示結果決定テーブル130Bの設定例では、特図表示結果決定用の乱数値MR1と比較される決定値のうち、「0」を示す値が「大当り」の特図表示結果に割り当てられている。これに対して、「0」を示す決定値は、「大当り」の特図表示結果に対して割り当てられず、「ハズレ」の特図表示結果に対して割り当てられるようにしてもよい。これにより、例えば第2乱数初期設定KRS2のビット番号[1]におけるビット値を“0”に設定した場合にスタート値となるデフォルト値「0000H」の設定タイミングで第2始動入賞信号SS1を故意に入力させて特図表示結果決定用の乱数値MR1となる「0」を示す数値データを乱数値レジスタR2Dに格納させて読み出すことや、乱数値レジスタR2Dの破壊や故障を利用して特図表示結果決定用の乱数値MR1となる「0」を示す数値データを抽出させることなどにより、不正に特図表示結果が「大当り」とされてしまうことを防止できる。また、第2特図表示結果決定テーブル130Bでは、第1特図表示結果決定テーブル130Aと同一の決定値が「大当り」の特図表示結果に割り当てられるようにしてもよい。
図30は、ROM506に記憶される大当り種別決定テーブル131の構成例を示している。大当り種別決定テーブル131は、特図表示結果を「大当り」として大当り遊技状態に制御すると決定されたときに、大当り種別決定用の乱数値MR2に基づき、大当り種別を複数種類のいずれかに決定するために参照されるテーブルである。大当り種別決定テーブル131では、図36に示す遊技制御バッファ設定部595に設けられた変動特図指定バッファの値(変動特図指定バッファ値)が「1」であるか「2」であるかに応じて、大当り種別決定用の乱数値MR2と比較される数値(決定値)が、「非確変」や「確変」、「突確」といった複数種類の大当り種別に割り当てられている。ここで、変動特図指定バッファ値は、第1開始条件の成立により第1特別図柄表示装置4Aにて第1特図を用いた特図ゲームを開始するときに「1」が設定される一方で、第2開始条件の成立により第2特別図柄表示装置4Bにて第2特図を用いた特図ゲームを開始するときに「2」が設定される。また、大当り種別決定テーブル131は、遊技制御バッファ設定部595に設けられた大当り種別バッファの値(大当り種別バッファ値)を、大当り種別決定用の乱数値MR2に基づいて決定された大当り種別に対応して、「0」〜「2」のいずれかに設定するためのテーブルデータ(設定用データ)を含んでいる。
図30に示す大当り種別決定テーブル131の設定例では、変動特図指定バッファ値が「1」であるか「2」であるかに応じて、「突確」の大当り種別に対する決定値の割当てが異なっている。すなわち、変動特図指定バッファ値が「1」である場合には、所定範囲の決定値(「82」〜「99」の範囲の値)が「突確」の大当り種別に割り当てられる一方で、変動特図指定バッファ値が「2」である場合には、「突確」の大当り種別に対して決定値が割り当てられていない。このような設定により、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを開始するための第1開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合と、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを開始するための第2開始条件が成立したことに基づいて大当り種別を複数種類のいずれかに決定する場合とで、大当り種別を「突確」に決定する割合を、異ならせることができる。特に、第2特図を用いた特図ゲームでは大当り種別を「突確」として2ラウンド大当り状態に制御すると決定されることがないので、例えば時短状態や確変状態といった、普通可変入賞球装置6Bが形成する第2始動入賞口に遊技球が進入しやすい遊技状態において、賞球を得ることが困難な2ラウンド大当り状態の頻発を回避して、遊技の間延びによる遊技興趣の低下を防止できる。なお、変動特図指定バッファ値が「2」である場合にも、変動特図指定バッファ値が「1」である場合とは異なる所定範囲の決定値が、「突確」の大当り種別に割り当てられるようにしてもよい。
図31及び図32は、ROM506に記憶される変動パターン種別決定テーブルの構成例を示している。この実施の形態では、変動パターン種別決定テーブルとして、図31(A)に示す大当り変動パターン種別決定テーブル133Aと、図31(B)に示す小当り変動パターン種別決定テーブル133Bと、図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cと、図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dとが、予め用意されている。
大当り変動パターン種別決定テーブル133Aは、特図表示結果を「大当り」にすると決定(事前決定)されたときに、大当り種別の決定結果に応じて、変動パターン種別を、変動パターン種別決定用の乱数値MR3に基づいて、複数種類のうちのいずれかに決定するために参照されるテーブルである。大当り変動パターン種別決定テーブル133Aでは、大当り種別の決定結果が「非確変」や「確変」、「突確」のいずれであるかに応じて、変動パターン種別決定用の乱数値MR3と比較される数値(決定値)が、変動パターン種別CA3−1〜変動パターン種別CA3−3、変動パターン種別CA4−1及び変動パターン種別CA4−2のいずれかに割り当てられている。大当り変動パターン種別決定テーブル133Aでは、大当り種別が複数種類のいずれに決定されたかに応じて、各変動パターン種別に決定される割合が異なるように、決定値が各変動パターン種別に割り当てられている部分がある。例えば、大当り種別が「非確変」であるか「確変」であるかに応じて、変動パターン種別CA3−1〜変動パターン種別CA3−3に対する決定値の割当てが異なっている。これにより、大当り種別を複数種類のいずれにするかの決定結果に応じて、同一の変動パターン種別に決定される割合を異ならせることができる。
また、大当り変動パターン種別決定テーブル133Aでは、大当り種別が複数種類のいずれに決定されたかに応じて、異なる変動パターン種別に決定値が割り当てられている部分がある。例えば、大当り種別が「非確変」又は「確変」である場合には、変動パターン種別CA3−1〜変動パターン種別CA3−3に対して決定値が割り当てられている一方で、変動パターン種別CA4−1及び変動パターン種別CA4−2に対しては決定値が割り当てられていない。これに対して、大当り種別が「突確」である場合には、変動パターン種別CA4−1及び変動パターン種別CA4−2に対して決定値が割り当てられている一方で、変動パターン種別CA3−1〜変動パターン種別CA3−3に対しては決定値が割り当てられていない。これにより、特図表示結果が「大当り」で大当り種別が「突確」に応じて2ラウンド大当り状態に制御される場合には、15ラウンド大当り状態に制御される場合とは異なる変動パターン種別に決定することができる。
なお、大当り種別が「非確変」や「確変」、「突確」のいずれかに決定された場合に、パチンコ遊技機1における遊技状態が通常状態や確変状態、時短状態のいずれであるかに応じて、各変動パターン種別に対する決定値の割当てを異ならせるようにしてもよい。これにより、遊技状態が複数種類のいずれであるかに応じて、同一の変動パターン種別に決定される割合を異ならせることができる。また、大当り種別が「非確変」や「確変」、「突確」のいずれかに決定された場合に、パチンコ遊技機1における遊技状態が通常状態や確変状態、時短状態のいずれであるかに応じて、異なる変動パターン種別に決定値が割り当てられるようにしてもよい。これにより、遊技状態が複数種類のいずれであるかに応じて、異なる変動パターン種別に決定することができる。
大当り種別が「非確変」と「確変」のいずれに決定されたかに応じて、各変動パターン種別に対する決定値の割当てをことならせてもよい。これにより、いずれの変動パターン種別に含まれる変動パターンによる可変表示が実行されるかに応じて、可変表示結果が「15R確変大当り」となる期待度を異ならせることができる。例えば、大当り種別が「確変」の場合に多くの決定値が割り当てられる一方、大当り種別が「非確変」の場合に少ない決定値が割り当てられる変動パターン種別に含まれる変動パターンによる可変表示が行われたときには、可変表示結果が「15R確変大当り」となる期待度が高められる。
小当り変動パターン種別決定テーブル133Bは、特図表示結果を「小当り」にすると決定(事前決定)されたときに、変動パターン種別を決定するために参照されるテーブルである。小当り変動パターン種別決定テーブル133Bでは、変動パターン種別決定用の乱数値MR3と比較される全ての数値(決定値)が、変動パターン種別CA4−1に対して割り当てられている。ここで、変動パターン種別CA4−1には、図31(A)に示す大当り変動パターン種別決定テーブル133Aにおいて、大当り種別が「突確」である場合に応じて決定値の一部が割り当てられている。このように、変動パターン種別CA4−1は、大当り種別が「突確」となる場合と、特図表示結果が「小当り」となる場合とで、共通の変動パターン種別となっている。すなわち、大当り変動パターン種別決定テーブル133Aにて大当り種別が「突確」に対応したテーブルデータと、小当り変動パターン種別決定テーブル133Bを構成するテーブルデータとには、共通の変動パターン種別が含まれるように設定されている。なお、小当り変動パターン種別決定テーブル133Bは、大当り種別が「突確」である場合に決定可能な変動パターン種別とは異なる変動パターン種別に対しても、決定値が割り当てられるように設定されてもよい。すなわち、大当り変動パターン種別決定テーブル133Aにて大当り種別が「突確」に対応したテーブルデータと、小当り変動パターン種別決定テーブル133Bを構成するテーブルデータとには、共通の変動パターン種別が含まれるとともに、それぞれに固有の変動パターン種別が含まれるように設定されてもよい。
ハズレ変動パターン種別決定テーブル(通常時)133Cと、ハズレ変動パターン種別決定テーブル(時短中)133Dは、特図表示結果を「ハズレ」にすると決定(事前決定)されたときに、変動パターン種別を、変動パターン種別決定用の乱数値MR3に基づいて、複数種類のうちのいずれかに決定するために参照されるテーブルである。ここで、ハズレ変動パターン種別決定テーブル(通常時)133Cは、例えば遊技状態が通常状態であるときに使用テーブルとして選択される。これに対して、ハズレ変動パターン種別決定テーブル(時短中)133Dは、例えば時短状態や確変状態において時間短縮制御(時短制御)が行われているときに、使用テーブルとして選択される。なお、確変状態において時短制御が行われていないときには、ハズレ変動パターン種別決定テーブル(通常時)133Cが使用テーブルとして選択されればよい。
ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数に応じて、変動パターン種別決定用の乱数値MR3と比較される数値(決定値)が、変動パターン種別CA1−1〜変動パターン種別CA1−3、変動パターン種別CA2−1〜変動パターン種別CA2−4のいずれかに割り当てられている。ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、互いに各変動パターン種別に決定される割合が異なるように、決定値が各変動パターン種別に割り当てられている部分がある。これにより、遊技状態が通常状態であるか時短状態や確変状態であるかや、時間短縮制御が行われているか否かに応じて、同一の変動パターン種別に決定される割合を異ならせることができる。なお、ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dでは、異なる変動パターン種別に決定値が割り当てられている部分があってもよい。これにより、遊技状態が通常状態であるか時短状態や確変状態であるかや、時間短縮制御が行われているか否かに応じて、異なる変動パターン種別に決定することができる。
この実施の形態では、ハズレ変動パターン種別決定テーブル(通常時)133C、ハズレ変動パターン種別決定テーブル(時短中)133Dのいずれかを参照することにより、変動パターン種別CA1−1〜変動パターン種別CA1−3や変動パターン種別CA2−1〜変動パターン種別CA2−4のいずれかに決定することができる。ここで、変動パターン種別CA1−1〜変動パターン種別CA1−3は、図28に示すように、可変表示結果が「ハズレ」で可変表示態様が「非リーチ」となる場合に対応した変動パターン種別である。また、変動パターン種別CA2−1〜変動パターン種別CA2−4は、可変表示結果が「ハズレ」で可変表示態様が「リーチ」となる場合に対応した変動パターン種別である。したがって、変動パターン種別決定用の乱数値MR3に基づき、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dを参照して変動パターン種別を決定することにより、飾り図柄の可変表示状態をリーチ状態とするか否かを決定することができる。
図32(A)及び(B)に示すハズレ変動パターン種別決定テーブル(通常時)133Cとハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、変動パターン種別決定用の乱数値MR3の値が「230」〜「251」のいずれかであれば、遊技状態や合計保留記憶数にかかわらず、少なくともスーパーリーチ(スーパーリーチαまたはスーパーリーチβ)を伴う変動パターンが分類される変動パターン種別CA2−4に決定される。すなわち、可変表示結果が「ハズレ」に決定される場合において、スーパーリーチを伴う変動パターンが分類される変動パターン種別CA2−4に対応した決定値のうちの少なくとも一部は、可変表示の開始時における合計保留記憶数にかかわらず、同一決定値が設定されている。
なお、図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cの設定例では、合計保留記憶数が「0」〜「2」である場合に、「220」〜「229」の決定値も変動パターン種別CA2−4に割り当てられており、合計保留記憶数が「3」〜「5」である場合に、「225」〜「229」の決定値も変動パターン種別CA2−4に割り当てられている。また、図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、合計保留記憶数が「0」である場合に、「225」〜「229」の決定値も変動パターン種別CA2−4に割り当てられている。このように、スーパーリーチを伴う特定の変動パターンが分類される変動パターン種別CA2−4に対応した決定値のうちには、同一決定値とは異なる決定値が含まれることがあってもよく、少なくとも一部の決定値が同一決定値となるものであればよい。これに対して、同一決定値のみがスーパーリーチを伴う特定の変動パターンが分類される変動パターン種別CA2−4に割り当てられ、同一決定値以外の決定値は割り当てられないようにしてもよい。
図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cの設定例では、合計保留記憶数が「0」〜「2」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられていない一方で、合計保留記憶数が「3」〜「5」や「6」〜「8」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられている。また、合計保留記憶数が「6」〜「8」のいずれかである場合には、合計保留記憶数が「3」〜「5」のいずれかである場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。
図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、合計保留記憶数が「0」である場合に、変動パターン種別CA1−2に対して決定値が割り当てられていない一方で、合計保留記憶数が「1」や「2」〜「8」のいずれかである場合に、変動パターン種別CA1−2に対して決定値が割り当てられている。また、合計保留記憶数が「2」〜「8」のいずれかである場合には、合計保留記憶数が「1」である場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。
ここで、変動パターン種別CA1−2には、可変表示結果が「ハズレ」で可変表示態様が「非リーチ」に対応して、特図変動時間が3000ms(ミリ秒)となる短縮ありの変動パターンPA1−2が含まれている(図33(B)を参照)。すなわち、変動パターン種別CA1−2に含まれる変動パターンPA1−2は、飾り図柄の可変表示状態がリーチ状態とはならない変動パターンであり、スーパーリーチを伴う変動パターンのいずれと比べても、その特図変動時間が短くなる短縮用の変動パターンである。そして、遊技状態が通常状態である場合などの通常時に参照されるハズレ変動パターン種別決定テーブル(通常時)133Cでは、可変表示の開始時における合計保留記憶数が「0」〜「2」のいずれかである場合に、変動パターンPA1−2に対応した決定値の設定がなく、合計保留記憶数が「3」〜「5」のいずれかである場合と比較して、合計保留記憶数が「6」〜「8」のいずれかである場合に、変動パターンPA1−2に対応した決定値の個数が多く設定されている。また、確変状態や時短状態にて時間短縮制御が行われる場合などの短縮時に参照されるハズレ変動パターン種別決定テーブル(時短中)133Dでは、可変表示の開始時における合計保留記憶数が「0」である場合に、変動パターンPA1−2に対応した決定値の設定がなく、合計保留記憶数が「1」である場合と比較して、合計保留記憶数が「2」〜「8」のいずれかである場合に、変動パターンPA1−2に対応した決定値の個数が多く設定されている。
図33は、ROM506に記憶される変動パターン決定テーブルの構成例を示している。この実施の形態では、変動パターン決定テーブルとして、図33(A)に示す当り変動パターン決定テーブル134Aと、図33(B)に示すハズレ変動パターン決定テーブル134Bとが、予め用意されている。各変動パターン決定テーブルは、変動パターン決定用の乱数値MR4などに基づいて、変動パターンを複数種類のいずれかに決定するために参照されるテーブルである。各変動パターン決定テーブルでは、変動パターン種別の決定結果に応じて、変動パターン決定用の乱数値MR4と比較される数値(決定値)が、単一種類又は複数種類の変動パターンに割り当てられている。
図34は、ROM506に記憶される普図表示結果決定テーブル135の構成例を示している。普図表示結果決定テーブル135は、普通図柄表示器20による普図ゲームにおいて普図表示結果となる確定普通図柄が導出表示されるより前に、その普図表示結果を「普図当り」とするか「普図ハズレ」とするかなどを、普図表示結果決定用の乱数値MR5に基づいて決定するために参照されるテーブルである。
普図表示結果決定テーブル135では、時短フラグがオフであるかオンであるかに応じて、普図表示結果決定用の乱数値MR5と比較される数値(決定値)が、「普図当り」又は「普図ハズレ」の普図表示結果に割り当てられている。ここで、時短フラグは、パチンコ遊技機1における遊技状態が確変状態や時短状態といった特別遊技状態であるときに、時間短縮制御が行われることに対応してオン状態にセットされる一方、時間短縮制御が終了することに対応してクリアされてオフ状態となる。普図表示結果決定テーブル135は、普図表示結果などに対応して、普通図柄の変動表示が開始されてから確定普通図柄が導出表示されるまでの普図変動時間を複数種類のいずれかに設定するための設定用データや、普図表示結果が「普図当り」となった場合に対応して普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過可能な開放状態とする制御を行う時間(開放時間)と回数(開放回数)を設定するための設定用データなどを、含んでもよい。
図34に示す普図表示結果決定テーブル135の設定例では、時短フラグがオンであるか否かに応じて、「普図当り」又は「普図ハズレ」の普図表示結果に対する決定値の割当てが異なっている。すなわち、時間短縮制御が行われる時短中には、時短中以外であるときよりも「普図当り」の普図表示結果に決定される割合が高くなるように、各普図表示結果に決定値が割り当てられている。このような設定により、時間短縮制御が行われる時短中には時短中以外であるときよりも、普図表示結果が「普図当り」となって普通可変入賞球装置6B(第2始動入賞口)を開放状態とする頻度が高められる。また、時間短縮制御が行われる時短中には時短中以外であるときよりも、普図表示結果が「普図当り」となった場合に普通可変入賞球装置6B(第2始動入賞口)を開放状態とする時間(開放時間)や回数(開放回数)が増加する。さらに、時間短縮制御が行われる時短中には時短中以外であるときよりも、普通図柄表示器20にて普通図柄の変動表示が開始されてから確定普通図柄が導出表示されるまでの普図変動時間が、短くなるように設定されてもよい。こうした設定により、時間短縮制御が行われる時短中には時短中以外であるときよりも、第2始動入賞口を遊技球が通過(進入)する可能性を高めて第2始動条件が成立しやすくする。
図35は、ROM506に記憶される始動口入賞テーブルの構成例を示している。この実施の形態では、始動口入賞テーブルとして、図35(A)に示す第1始動口入賞テーブル136Aと、図35(B)に示す第2始動口入賞テーブル136Bとが、予め用意されている。各始動口入賞テーブルは、普通入賞球装置6Aが形成する第1始動入賞口や普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、各種の設定を行うために参照されるテーブルである。
図35(A)に示す第1始動口入賞テーブル136Aは、第1始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、使用テーブルとして選択される。第1始動口入賞テーブル136Aは、第1保留記憶カウンタアドレスや乱数値レジスタR1Dアドレス、第1特図保留記憶部アドレスなどを指定するテーブルデータから構成されている。第1保留記憶カウンタアドレスは、第1保留記憶カウンタに割り当てられたアドレスである。第1保留記憶カウンタは、図36に示す遊技制御カウンタ設定部594に設けられて第1特図保留記憶数をカウントする。乱数値レジスタR1Dアドレスは、図10(B)に示す内蔵レジスタエリアにおいて乱数値レジスタR1Dに割り当てられたアドレス(例えば先頭アドレス2038Hなど)である。第1特図保留記憶部アドレスは、図36に示す第1特図保留記憶部591Aに割り当てられたアドレス(例えば先頭アドレスなど)である。
図35(B)に示す第2始動口入賞テーブル136Bは、第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときに、使用テーブルとして選択される。第2始動口入賞テーブル136Bは、第2保留記憶カウンタアドレスや乱数値レジスタR2Dアドレス、第2特図保留記憶部アドレスなどを指定するテーブルデータから構成されている。第2保留記憶カウンタアドレスは、第2保留記憶カウンタに割り当てられたアドレスである。第2保留記憶カウンタは、図36に示す遊技制御カウンタ設定部594に設けられて第2特図保留記憶数をカウントする。乱数値レジスタR2Dアドレスは、図10(B)に示す内蔵レジスタエリアにおいて乱数値レジスタR2Dに割り当てられたアドレス(例えば先頭アドレス203AHなど)である。第2特図保留記憶部アドレスは、図36に示す第2特図保留記憶部591Bに割り当てられたアドレス(例えば先頭アドレスなど)である。
遊技制御用マイクロコンピュータ100が備えるRAM507には、パチンコ遊技機1における遊技の進行などを制御するために用いられる各種のデータを保持する領域として、例えば図36に示すような遊技制御用データ保持エリア590が設けられている。図36に示す遊技制御用データ保持エリア590は、第1特図保留記憶部591Aと、第2特図保留記憶部591Bと、普図保留記憶部591Cと、遊技制御フラグ設定部592と、遊技制御タイマ設定部593と、遊技制御カウンタ設定部594と、遊技制御バッファ設定部595とを備えている。
第1特図保留記憶部591Aは、普通入賞球装置6Aが形成する第1始動入賞口を遊技球が通過(進入)したことによる始動入賞の発生に対応して第1始動条件は成立したが第1開始条件は成立していない特図ゲーム(第1特別図柄表示装置4Aによる第1特図を用いた特図ゲーム)の保留データを記憶する。一例として、第1特図保留記憶部591Aは、第1始動入賞口への入賞順に保留番号と関連付けて、その入賞による第1始動条件の成立に基づいてCPU505により取得された特図表示結果決定用の乱数値MR1を示す数値データや大当り種別決定用の乱数値MR2を示す数値データ、変動パターン種別決定用の乱数値MR3を示す数値データを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
第2特図保留記憶部591Bは、普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過(進入)したことによる始動入賞の発生に対応して第2始動条件は成立したが第2開始条件は成立していない特図ゲーム(第2特別図柄表示装置4Bによる第2特図を用いた特図ゲーム)の保留データを記憶する。一例として、第2特図保留記憶部591Bは、第2始動入賞口への入賞順に保留番号と関連付けて、その入賞による第2始動条件の成立に基づいてCPU505により取得された特図表示結果決定用の乱数値MR1を示す数値データや大当り種別決定用の乱数値MR2を示す数値データ、変動パターン種別決定用の乱数値MR3を示す数値データを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
普図保留記憶部591Cは、通過ゲート41を通過して普図始動条件は成立したが普図開始条件は成立していない普図ゲームの保留データを記憶する。一例として、普図保留記憶部591Cは、通過ゲート41の通過順に保留番号と関連付けて、各遊技球の通過による普図始動条件の成立に基づいてCPU505により取得された普図表示結果決定用の乱数値MR5を示す数値データなどを、保留データとして、その記憶数が所定の上限値(例えば「4」)に達するまで記憶する。
なお、第1特図保留記憶部591Aと第2特図保留記憶部591Bは、別々に設けるようにしてもよいし、これらを組み合わせた記憶領域を設けるようにしてもよい。一例として、始動データ記憶領域と乱数値記憶領域とを組み合わせた領域を8つ含む記憶領域を設けるようにしてもよい。このような構成において、始動データ記憶領域と乱数値記憶領域の各領域には、RAM507における連続したアドレスが割り当てられればよい。この場合、例えば合計保留記憶数に基づいてデータ格納先のアドレスを指定するポインタの値を更新することによって、空き領域の先頭となる始動データ記憶領域に、始動データ(第1始動入賞口と第2始動入賞口のいずれを遊技球が通過(進入)したことによる始動入賞の発生であるかを特定可能なデータ)をセットする。このとき、空き領域の先頭を特定するには、例えば1つの保留データ(始動データと乱数値を示す数値データ)におけるデータ数を合計保留記憶数に乗算した値に1加算した値(始動データ記憶領域1つ分を加算した値)を、アドレスのオフセット値として特定する。こうして特定したオフセット値に従ってポインタの値を更新すればよい。この構成では、1つの保留データに対応して始動データ記憶領域と乱数値記憶領域が1つずつの合計2つのデータ格納領域が設けられている。そこで、合計保留記憶数を2倍した値に1加算した値がアドレスのオフセット値として特定される。一例として、合計保留記憶数が「3」である場合には、オフセット値として「+7」(合計保留記憶数「3」を2倍した後に1加算した値)が特定され、このオフセット値に対応した始動データ記憶領域に始動データをセットすることになる。また、1つの保留データに対応して1つの始動データ記憶領域と2つの乱数値記憶領域との合計3つのデータ格納領域が設けられている場合には、合計保留記憶数を3倍した値に1加算した値(始動データ記憶領域1つ分を加算した値)が、アドレスのオフセット値として特定されればよい。
また、データ格納先のアドレスを指定するポインタの初期位置を保留番号「1」に対応した始動データ記憶領域とする場合には、1つの保留データにおけるデータ数を合計保留記憶数に乗算した値が、アドレスのオフセット値として特定されればよい。例えば、1つの保留データに対応して1つの始動データ記憶領域と1つの乱数値記憶領域との合計2つのデータ格納領域が設けられている場合には、合計保留記憶数を2倍した値が、アドレスのオフセット値として特定されればよい。また、1つの保留データに対応して1つの始動データ記憶領域と2つの乱数値記憶領域との合計3つのデータ格納領域が設けられている場合には、合計保留記憶数を3倍した値が、アドレスのオフセット値として特定されればよい。こうして始動データ記憶領域に始動データをセットした後には、アドレスを指定するポインタの値を1加算して、加算後のポインタが指すアドレスの乱数値記憶領域に、乱数値を示す数値データを格納すればよい。
遊技制御フラグ設定部592には、パチンコ遊技機1における遊技の進行状況などに応じて状態を更新可能な複数種類のフラグが設けられている。例えば、遊技制御フラグ設定部592には、複数種類のフラグそれぞれについて、フラグの値を示すデータや、オン状態あるいはオフ状態を示すデータが記憶される。一例として、遊技制御フラグ設定部592には、特図プロセスフラグ、普図プロセスフラグ、大当りフラグ、小当りフラグ、確変フラグ、時短フラグなどが設けられていればよい。
特図プロセスフラグは、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームの進行や、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームの進行などを制御するために実行される図43のステップS96や図55に示す特別図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。普図プロセスフラグは、普通図柄表示器20による普通図柄を用いた普図ゲームの進行などを制御するために実行される図43のステップS97や図65に示す普通図柄プロセス処理において、どの処理を選択・実行すべきかを指示する。
大当りフラグは、特図ゲームが開始されるときに特図表示結果を「大当り」とする旨の決定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として大当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。小当りフラグは、特図ゲームが開始されるときに特図表示結果を「小当り」とする旨の決定結果に対応して、オン状態にセットされる。その一方で、特図ゲームにおける確定特別図柄として小当り図柄が停止表示されたことなどに対応して、クリアされてオフ状態となる。確変フラグは、パチンコ遊技機1における遊技状態が確変状態に制御されることに対応してオン状態にセットされる一方で、確変状態が終了することなどに対応してクリアされてオフ状態となる。時短フラグは、パチンコ遊技機1における遊技状態が時短状態に制御されることに対応してオン状態にセットされる一方で、時短状態が終了することなどに対応してクリアされてオフ状態となる。
遊技制御タイマ設定部593には、パチンコ遊技機1における遊技の進行を制御するために用いられる各種のタイマが設けられている。例えば、遊技制御タイマ設定部593には、複数種類のタイマそれぞれにおけるタイマ値を示すデータが記憶される。一例として、遊技制御タイマ設定部593には、遊技制御プロセスタイマ、特図変動タイマ、普図変動タイマ、バックアップ監視タイマなどが設けられていればよい。
遊技制御プロセスタイマは、例えば大当り遊技状態あるいは小当り遊技状態の進行を制御するための時間などを、主基板11の側にて計測するためのものである。具体的な一例として、遊技制御プロセスタイマは、大当り遊技状態あるいは小当り遊技状態の進行を制御するために計測する時間に対応したタイマ値を示すデータを、遊技制御プロセスタイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、遊技制御プロセスタイマは、大当り遊技状態もしくは小当り遊技状態の開始時点といった、所定時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
特図変動タイマは、特図ゲームの実行時間である特図変動時間といった特図ゲームの進行を制御するための時間を、主基板11の側にて計測するためのものである。具体的な一例として、特図変動タイマは、特図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、特図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、特図変動タイマは、特図ゲームの開始時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
普図変動タイマは、普図ゲームの実行時間である普図変動時間といった普図ゲームの進行を制御するための時間を、主基板11の側にて計測するためのものである。具体的な一例として、普図変動タイマは、普図ゲームの進行を制御するために計測する時間に対応したタイマ値を示すデータを、普図変動タイマ値として記憶し、定期的にカウントダウンするダウンカウンタとして用いられる。あるいは、普図変動タイマは、普図ゲームの開始時点からの経過時間に対応したタイマ値を示すデータを記憶し、定期的にカウントアップするアップカウンタとして用いられてもよい。
バックアップ監視タイマは、電源基板10に搭載された電源監視回路303から伝送される電源断信号がオン状態となってからの経過時間を計測するためのものである。一例として、電源監視回路303から供給される電源電圧VSLが低下したことに基づいて出力される電源断信号を主基板11にて検知したときに、バックアップ監視タイマによる経過時間の計測が開始される。そして、電源断信号の出力が停止されるまでは、バックアップ監視タイマによる計測を継続させる。バックアップ監視タイマによって計測された経過時間が所定時間に達すると、例えばRAM507におけるバックアップ領域のデータを保護する処理といった、電力の供給停止に対応した所定の準備処理が実行される。
遊技制御カウンタ設定部594には、パチンコ遊技機1における遊技の進行を制御するために用いられるカウント値を計数するためのカウンタが複数種類設けられている。例えば、遊技制御カウンタ設定部594には、複数種類のカウンタそれぞれにおけるカウント値を示すデータが記憶される。一例として、遊技制御カウンタ設定部594に、ランダムカウンタ、第1保留記憶カウンタ、第2保留記憶カウンタ、ラウンド数カウンタなどが設けられていればよい。
遊技制御カウンタ設定部594のランダムカウンタは、遊技の進行を制御するために用いられる乱数値を示す数値データの一部を、乱数回路509とは別個に、CPU505がソフトウェアにより更新可能にカウントするためのものである。例えば、遊技制御カウンタ設定部594のランダムカウンタには、乱数値MR1〜MR5を示す数値データが、ランダムカウント値として記憶される。そして、乱数値MR2〜MR5については、CPU505によるソフトウェアの実行に応じて、定期的あるいは不定期に、各乱数値を示す数値データが更新される。
第1保留記憶カウンタは、第1特図保留記憶部591Aにおける保留データの記憶数である第1特図保留記憶数をカウントするためのものである。例えば、第1保留記憶カウンタには、第1特図保留記憶数に対応したカウント値を示すデータが、第1保留記憶カウント値として記憶され、第1特図保留記憶数の増減に対応して更新(例えば1加算あるいは1減算)される。第2保留記憶カウンタは、第2特図保留記憶部591Bにおける保留データの記憶数である第2特図保留記憶数をカウントするためのものである。例えば、第2保留記憶カウンタには、第2特図保留記憶数に対応したカウント値を示すデータが、特図保留記憶カウント値として記憶され、特図保留記憶数の増減に対応して更新(例えば1加算あるいは1減算)される。なお、第1及び第2保留記憶カウンタとは別個に、合計保留記憶数をカウントするための合計保留記憶カウンタを設けてもよい。あるいは、合計保留記憶数は、第1保留記憶カウント値と第2保留記憶カウント値とを加算することにより特定できるようにしてもよい。
ラウンド数カウンタは、大当り遊技状態におけるラウンドの実行回数などをカウントするためのものである。例えば、ラウンド数カウンタには、大当り遊技状態の開始時にカウント初期値「1」を示すデータが、ラウンド数カウント値として設定される。そして、1回のラウンドが終了して次回のラウンドが開始されるときに、ラウンド数カウント値が1加算されて更新される。また、ラウンド数カウンタは、小当り遊技状態における可変入賞動作の実行回数もカウントするようにしてもよい。
遊技制御バッファ設定部595は、パチンコ遊技機1における遊技の進行を制御するために用いられるデータを一時的に記憶する各種のバッファが設けられている。例えば、遊技制御バッファ設定部595には、複数種類のバッファそれぞれにおけるバッファ値を示すデータが記憶される。一例として、遊技制御バッファ設定部595には、送信コマンドバッファ、変動特図指定バッファ、大当り種別バッファ、前回ポートバッファ、ポートバッファ、スイッチオンバッファなどが設けられていればよい。
送信コマンドバッファは、主基板11からサブ側の制御基板に対して制御コマンドを送信するための設定データを一時的に格納するために用いられる。例えば、送信コマンドバッファは、複数(例えば「12」)のバッファ領域を備えて構成され、送信する制御コマンドに対応したコマンドテーブルのROM506における記憶アドレスを示す設定データなどが、各バッファ領域に格納される。また、送信コマンドバッファにおいて設定データの書込や読出を行うバッファ領域は、送信コマンドポインタなどによって指定され、複数のバッファ領域をリングバッファとして使用することができるように構成されていればよい。
変動特図指定バッファには、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームと、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームのうち、いずれの特図ゲームが実行されるかを示すバッファ値が格納される。一例として、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファの値(変動特図指定バッファ値)が“1”に設定される。また、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが実行されることに対応して、変動特図指定バッファ値が“2”に設定される。そして、特図ゲームが終了したことなどに対応して、変動特図指定バッファ値が“0”に設定される。
大当り種別バッファには、可変表示結果が「大当り」となる場合における飾り図柄の可変表示態様を、「非確変」、「確変」、「突確」といった複数種類の大当り種別のいずれかとする決定結果に対応した値が、大当り種別バッファ値として格納される。一例として、図30に示すような大当り種別決定テーブル131での設定に基づき、大当り種別が「非確変」の場合には大当り種別バッファ値が「0」に設定され、大当り種別が「確変」の場合には大当り種別バッファ値が「1」に設定され、大当り種別が「突確」の場合には大当り種別バッファ値が「2」に設定される。
前回ポートバッファは、前回のタイマ割込み発生時(例えば2ms前など)におけるスイッチオン/オフの判定結果が格納される16ビット(2バイト)のバッファである。ポートバッファは、今回入力したスイッチオン/オフの内容が格納される16ビット(2バイト)のバッファである。スイッチオンバッファは、スイッチのオンが検出された場合にそのスイッチの対応ビットにおいて「1」が設定され、スイッチのオフが検出された場合にそのスイッチの対応ビットにおいて「0」が設定される16ビット(2バイト)のバッファである。
図37は、各2バイトのバッファを示す説明図である。前回ポートバッファ、ポートバッファ、及びスイッチオンバッファのビット配列は、入力ポートIP0や入力ポートIP1のビット配列に対応していればよい。つまり、図26(A)及び(B)に示す入力ポートIP0や入力ポートIP1のビット番号[0]〜[7]に割り当てられているスイッチの検出信号等のそれぞれに対応する情報が、前回ポートバッファ、ポートバッファ、及びスイッチオンバッファのビット番号[0]〜[15]に設定される。
一例として、スイッチオンバッファのビット番号[0]には、図26(A)に示す入力ポートIP0のビット番号[0]に対応して、第1始動口スイッチ22Aから伝送される第1始動入賞信号SS1の状態を示すビット値が設定される。また、スイッチオンバッファのビット番号[1]には、図26(A)に示す入力ポートIP0のビット番号[1]に対応して、第2始動口スイッチ22Bから伝送される第2始動入賞信号SS2の状態を示すビット値が設定される。遊技制御用マイクロコンピュータ100のCPU505は、スイッチオンバッファのビット番号[0]におけるビット値に基づいて、普通入賞球装置6Aが形成する第1始動入賞口を遊技球が通過したか否かの検出結果を特定し、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームを実行するための第1始動条件を成立させることや、第1始動入賞口を通過した遊技球の検出に対応した賞球の払出を指示すること、あるいは、これらの一方もしくは双方を含めた所定の設定等を行うようにすればよい。また、遊技制御用マイクロコンピュータ100のCPU505は、スイッチオンバッファのビット番号[1]におけるビット値に基づいて、普通可変入賞球装置6Bが形成する第2始動入賞口を遊技球が通過したか否かの検出結果を特定し、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームを実行するための第2始動条件を成立させることや、第2始動入賞口を通過(進入)した遊技球の検出に対応した賞球の払出を指示すること、あるいは、これらの一方もしくは双方を含めた所定の設定等を行うようにすればよい。
図4に示すように、演出制御基板12には、演出制御用マイクロコンピュータ120が搭載されている。また、演出制御基板12には、演出制御用マイクロコンピュータ120からの描画コマンドに応じて画像データを生成するVDP(Video Display Processor)121や、画像表示装置5、スピーカ8L、8R及び遊技効果ランプ9等の発光体といった演出装置による演出動作を制御するために用いられる各種データを記憶する演出データメモリ122なども搭載されている。演出制御用マイクロコンピュータ120は、例えば遊技制御用マイクロコンピュータ100と同様の構成を有する1チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット/割込みコントローラ、CPU、ROM、RAM、CTC、乱数回路、PIP、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、演出制御用マイクロコンピュータ120における構成の全部又は一部を、遊技制御用マイクロコンピュータ100における構成とは異ならせてもよい。一例として、演出制御基板12の側で用いられる乱数値となる数値データを、全てソフトウェアにより更新する場合には、演出制御用マイクロコンピュータ120が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板11から伝送される演出制御コマンドを受信可能な受信回路が設けられていればよく、画像表示装置5、音声制御基板13、ランプ制御基板14に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
演出制御用マイクロコンピュータ120では、CPUがROMから読み出した演出制御用のプログラムを実行することにより、演出用の電気部品(演出装置)による演出動作を制御するための処理が実行される。このときには、CPUがROMから固定データを読み出す固定データ読出動作や、CPUがRAMに各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPUがRAMに一時記憶されている各種の変動データを読み出す変動データ読出動作、CPUが外部バスインタフェースやPIP、シリアル通信回路などを介して演出制御用マイクロコンピュータ120の外部から各種信号の入力を受け付ける受信動作、CPUが外部バスインタフェースやシリアル通信回路などを介して演出制御用マイクロコンピュータ120の外部へと各種信号を出力する送信動作なども行われる。なお、演出制御用マイクロコンピュータ120を構成する1チップのマイクロコンピュータには、少なくともCPUの他にRAMが内蔵されていればよく、ROMや乱数回路、PIPなどは、外付けされるものでも内蔵されるものでもよい。中継基板18を介して主基板11から送信された演出制御コマンドとなる制御信号は、演出制御用マイクロコンピュータ120が備える所定のシリアル受信端子に供給され、演出制御用マイクロコンピュータ120に内蔵されたシリアル通信回路にて受信すればよい。あるいは、演出制御コマンドとなる制御信号は、複数本の信号線(例えば8本の演出制御信号線)を介して、主基板11から演出制御基板12へと向かう方向でパラレルに送受信されてもよい。
演出制御用マイクロコンピュータ120のROMには、演出制御用のプログラムの他に、演出動作を制御するために用いられる各種のデータテーブルなどが格納されている。例えば、演出制御用マイクロコンピュータ120のROMには、演出制御用マイクロコンピュータ120のCPUが各種の判定や決定、設定を行うために用意された複数の判定テーブルや決定テーブルを構成するテーブルデータ、各種の演出制御パターンを構成するパターンデータなどが記憶されている。
一例として、演出制御用マイクロコンピュータ120のROMには、演出制御用マイクロコンピュータ120のCPUが各種の演出装置(例えば画像表示装置5やスピーカ8L、8R、遊技効果ランプ9及び装飾用LED、演出用役物など)による演出動作を制御するために使用する演出制御パターンを複数種類格納した演出制御パターンテーブルが記憶されている。演出制御パターンは、パチンコ遊技機1における遊技の進行状況に応じて実行される各種の演出動作に対応して、その制御内容を示すデータなどから構成されている。演出制御パターンテーブルには、例えば特図変動時演出制御パターンと、各種演出制御パターンとが、格納されていればよい。
特図変動時演出制御パターンは、複数種類の変動パターンに対応して、特図ゲームにおいて特別図柄の変動が開始されてから特図表示結果となる確定特別図柄が導出表示されるまでの期間における、飾り図柄の可変表示動作やリーチ演出における演出表示動作、あるいは、飾り図柄の可変表示を伴わない各種の演出表示動作といった、様々な演出動作の制御内容を示すデータなどから構成されている。各種演出制御パターンは、パチンコ遊技機1における遊技の進行状況に応じて実行される各種の演出動作に対応して、その制御内容を示すデータなどから構成されている。
図38(A)は、各種の演出制御パターンの構成例を示している。図38(A)に示す構成例において、演出制御パターンは、例えば演出制御プロセスタイマ判定値、表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データ、終了コードなどを含んだプロセスデータから構成されている。
演出制御プロセスタイマ判定値は、例えば演出制御用マイクロコンピュータ120のRAMなどに設けられた演出制御プロセスタイマの格納値である演出制御プロセスタイマ値と比較される値(判定値)であって、各演出動作の実行時間(演出時間)に対応した判定値が予め設定されている。なお、演出制御プロセスタイマ判定値に代えて、例えば主基板11から所定の演出制御コマンドを受信したことや、演出制御用マイクロコンピュータ120のCPUにおいて演出動作を制御するための処理として所定の処理が実行されたことといった、所定の制御内容や処理内容に対応して、演出制御の切換タイミング等を示すデータが設定されていてもよい。
表示制御データには、例えば飾り図柄の可変表示中における各飾り図柄の変動態様を示すデータといった、画像表示装置5の表示領域における演出画像の表示態様を示すデータが含まれている。すなわち、表示制御データは、画像表示装置5の表示領域における演出画像の表示動作を指定するデータである。音声制御データには、例えば飾り図柄の可変表示中における飾り図柄の可変表示動作に連動した効果音等の出力態様を示すデータといった、スピーカ8L、8Rからの音声出力態様を示すデータが含まれている。すなわち、音声制御データは、スピーカ8L、8Rからの音声出力動作を指定するデータである。ランプ制御データには、例えば遊技効果ランプ9や装飾用LEDといった、発光体の点灯動作態様を示すデータが含まれている。すなわち、ランプ制御データは、発光体の点灯動作を指定するデータである。操作検出制御データは、例えば操作ボタンに対する遊技者の指示操作(例えば押下操作など)を有効に検出する操作有効期間や、有効に検出した場合における演出動作の制御内容等を指定するデータといった、操作ボタン(スティックコントローラが含まれてもよい)を用いた演出動作態様を示すデータが含まれている。
なお、これらの制御データは、全ての演出制御パターンに含まれなければならないものではなく、各演出制御パターンによる演出動作の内容に応じて、一部の制御データを含んで構成される演出制御パターンがあってもよい。また、演出制御パターンに含まれる複数種類のプロセスデータでは、各タイミングで実行される演出動作の内容に応じて、それぞれのプロセスデータを構成する制御データの種類が異なっていてもよい。すなわち、表示制御データや音声制御データ、ランプ制御データ、操作検出制御データの全部を含んで構成されたプロセスデータもあれば、これらの一部を含んで構成されたプロセスデータもあってよい。さらに、例えば演出用役物が備える可動部材における動作態様を示す演出用模型制御データといった、その他の各種制御データが含まれることがあってもよい。
図38(B)は、演出制御パターンの内容に従って実行される各種の演出動作を示している。演出制御用マイクロコンピュータ120のCPUは、演出制御パターンに含まれる各種の制御データに従って、演出動作の制御内容を決定する。例えば、演出制御プロセスタイマ値が演出制御プロセスタイマ判定値のいずれかと合致したときには、その演出制御プロセスタイマ判定値と対応付けられた表示制御データにより指定される態様で飾り図柄を表示させるとともに、キャラクタ画像や背景画像といった演出画像を画像表示装置5の表示領域に表示させる制御を行う。また、音声制御データにより指定される態様でスピーカ8L、8Rから音声を出力させる制御を行うとともに、ランプ制御データにより指定される態様で遊技効果ランプ9等の発光体を点滅させる制御を行い、操作検出制御データにより指定される操作有効期間にて操作ボタン等に対する操作を受け付けて演出内容を決定する制御を行う。なお、演出制御プロセスタイマ判定値と対応していても制御対象にならない演出用部品に対応するデータには、ダミーデータ(制御を指定しないデータ)が設定されてもよい。
演出制御用マイクロコンピュータ120では、例えば飾り図柄の可変表示を開始するときなどに、変動パターン指定コマンドに示された変動パターンなどに基づいてCPUが演出制御パターンをセットする。ここで、演出制御パターンをセットする際には、該当する演出制御パターンを構成するパターンデータを、演出制御用マイクロコンピュータ120のROMから読み出してRAMの所定領域に一時記憶させてもよいし、該当する演出制御パターンを構成するパターンデータのROMにおける記憶アドレスを、RAMの所定領域に一時記憶させて、ROMにおける記憶データの読出位置を指定するだけでもよい。その後、演出制御プロセスタイマ値が更新されるごとに、演出制御プロセスタイマ判定値のいずれかと合致したか否かの判定を行い、合致した場合には、対応する各種の制御データに応じた演出動作の制御を行う。こうして、演出制御用マイクロコンピュータ120では、演出制御パターンに含まれるプロセスデータ#1〜プロセスデータ#n(nは任意の整数)の内容に従って、演出装置(画像表示装置5、スピーカ8L、8R、遊技効果ランプ9等の発光体など)の制御を進行させる。なお、各プロセスデータ#1〜プロセスデータ#nにおいて、演出制御プロセスタイマ判定値#1〜#nと対応付けられた表示制御データ#1〜表示制御データ#n、音声制御データ#1〜音声制御データ#n、ランプ制御データ#1〜ランプ制御データ#n、操作検出制御データ#1〜操作検出制御データ#nは、演出装置における演出動作の制御内容を示し、演出制御の実行を指定する演出制御実行データ#1〜演出制御実行データ#nを構成する。
VDP121は、画像表示装置5の表示領域に各種画像を表示させるための高速描画機能や動画像デコード機能といった画像データ処理機能を有し、演出制御用マイクロコンピュータ120からの表示制御指令に従った画像データ処理を実行する画像処理プロセッサである。なお、VDP121は、GPU(Graphics Processing Unit)、GCL(Graphics Controller LSI)、あるいは、より一般的にDSP(Digital Signal Processor)と称される画像処理用のマイクロプロセッサであってもよい。演出データメモリ122は、例えばフラッシュメモリなどの半導体メモリや磁気メモリ、光学メモリといった不揮発性の記録媒体を用いて構成されればよい。
音声制御基板13には、例えば入出力ドライバや音声合成用IC、音声データROM、増幅回路、ボリュームなどが搭載されている。一例として、音声制御基板13では、演出制御基板12から伝送された効果音信号に示される音番号データが入出力ドライバを介して音声合成用ICに入力される。音声合成用ICは、音番号データに応じた音声や効果音を生成し増幅回路に出力する。増幅回路は、音声合成用ICの出力レベルを、ボリュームで設定されている音量に応じたレベルに増幅した音声信号を、スピーカ8L、8Rに出力する。音声データROMには、音番号データに応じた制御データが格納されており、音声合成用ICが音番号データに応じた制御データを読み出して、音声や効果音が生成される。音声データROMの記憶データは、所定期間における音声や効果音の出力態様を時系列的に示すデータなどから構成されていればよい。
ランプ制御基板14には、例えば入出力ドライバやランプドライバなどが搭載されている。一例として、ランプ制御基板14では、演出制御基板12から伝送された電飾信号が、入出力ドライバを介してランプドライバに入力される。ランプドライバは、電飾信号を増幅して遊技効果ランプ9などに供給する。
払出制御基板15には、払出制御用マイクロコンピュータ150やスイッチ回路151などが搭載されている。スイッチ回路151には、満タンスイッチ26、球切れスイッチ27、払出モータ位置センサ71、払出カウントスイッチ72、エラー解除スイッチ73などの各種スイッチやセンサからの検出信号が入力される。スイッチ回路151は、これらの検出信号を取り込んで、払出制御用マイクロコンピュータ150に伝送する。払出制御用マイクロコンピュータ150は、例えば遊技制御用マイクロコンピュータ100と同様の1チップマイクロコンピュータであり、外部バスインタフェース、クロック回路、固有情報記憶回路、リセット/割込みコントローラ、CPU、ROM、RAM、CTC、乱数回路、PIP、シリアル通信回路、アドレスデコード回路などを備えていればよい。また、払出制御用マイクロコンピュータ150における構成の全部又は一部を、遊技制御用マイクロコンピュータ100における構成とは異ならせてもよい。一例として、払出制御基板15の側で乱数値となる数値データを用いない場合には、払出制御用マイクロコンピュータ150が乱数回路を備えていなくてもよい。また、シリアル通信回路では、少なくとも主基板11との間で双方向のシリアル通信が可能な送受信回路が1つ設けられていればよく、払出モータ51、エラー表示用LED74、発射制御基板17に対するデータや指令信号の送信は、外部バスインタフェースやアドレスデコード回路を用いて行うようにしてもよい。
払出制御用マイクロコンピュータ150では、CPUがROMから読み出した払出制御用のプログラムを実行することにより、払出モータ51を含む払出装置による払出動作などを制御するための処理が実行される。このときには、CPUがROMから固定データを読み出す固定データ読出動作や、CPUがRAMに各種の変動データを書き込んで一時記憶させる変動データ書込動作、CPUがRAMに一時記憶されている各種の変動データを読み出す変動データ読出動作、CPUが外部バスインタフェースやPIP、シリアル通信回路などを介して払出制御用マイクロコンピュータ150の外部から各種信号の入力を受け付ける受信動作、CPUが外部バスインタフェースやシリアル通信回路などを介して払出制御用マイクロコンピュータ150の外部へと各種信号を出力する送信動作なども行われる。なお、払出制御用マイクロコンピュータ150を構成する1チップのマイクロコンピュータには、少なくともCPUの他にRAMが内蔵されていればよく、ROMやPIPなどは、外付けされるものでも内蔵されるものでもよい。
次に、本実施例におけるパチンコ遊技機1の動作(作用)を説明する。主基板11では、電源基板10からの電力供給が開始され遊技制御用マイクロコンピュータ100へのリセット信号がハイレベル(オフ状態)になったことに応じて、遊技制御用マイクロコンピュータ100が起動し、CPU505がROM506から読み出したセキュリティチェックプログラム506Aに基づき、図39のフローチャートに示すようなセキュリティチェック処理が実行される。このとき、遊技制御用マイクロコンピュータ100は、セキュリティモードとなり、ROM506に記憶されているゲーム制御用のユーザプログラムは未だ実行されない状態となる。
図39に示すセキュリティチェック処理を開始すると、CPU505は、まず、セキュリティチェック処理が実行されることにより遊技制御用マイクロコンピュータ100がセキュリティモードとなる時間(セキュリティ時間)を決定するための処理を実行する。このとき、CPU505は、ROM506のプログラム管理エリアに記憶されるセキュリティ時間設定KSESのビット番号[2−0]におけるビット値を読み出す(ステップS1)。そして、この読出値が“000”であるか否かを判定する(ステップS2)。
ステップS2にて読出値が“000”と判定された場合には(ステップS2;Yes)、定常設定時間を既定の固定時間に設定する(ステップS3)。ここで、定常設定時間は、セキュリティ時間のうち、パチンコ遊技機1におけるシステムリセットの発生等に基づくセキュリティチェック処理の実行回数(遊技制御用マイクロコンピュータ100がセキュリティーモードとなる回数)に関わりなく、一定となる時間成分である。また、固定時間は、セキュリティ時間のうち、遊技制御用マイクロコンピュータ100の仕様などに基づいて予め定められた不変時間成分であり、例えばセキュリティ時間として設定可能な最小値となるものであればよい。
ステップS2にて読出値が“000”以外と判定された場合には(ステップS2;No)、その読出値に対応して、固定時間に加えて図13(D)に示す設定内容により選択される延長時間を、定常設定時間に設定する(ステップS4)。こうして、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、固定時間に加えて予め選択可能な複数の延長時間のいずれかに設定することができる。
ステップS3、S4の処理のいずれかを実行した後には、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を読み出す(ステップS5)。そして、この読出値が“00”であるか否かを判定する(ステップS6)。
ステップS6にて読出値が“00”と判定された場合には(ステップS6;Yes)、定常設定時間をセキュリティ時間に設定する(ステップS7)。これに対して、読出値が“00”以外と判定された場合には(ステップS6;No)、その読出値に対応して決定される可変設定時間を、定常設定時間に加算してセキュリティ時間に設定する(ステップS8)。ここで、可変設定時間は、セキュリティ時間のうち、セキュリティチェック処理が実行されるごとに変化する時間成分であり、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“01”(ショートモード)であるか“10”(ロングモード)であるかに応じて異なる所定の時間範囲で変化する。例えば、システムリセットの発生時に、所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ100に内蔵された可変セキュリティ時間用レジスタに格納される場合には、ステップS8の処理において、可変セキュリティ時間用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、可変設定時間がシステムリセット毎に所定の時間範囲でランダムに変化するように決定されればよい。こうして、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、セキュリティチェック処理の実行時間であるセキュリティ時間を、システムリセットの発生等に基づくセキュリティチェック処理が実行されるごとに所定の時間範囲で変化させることができる。
ここで、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であり、なおかつ、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値である場合には、ステップS4にて設定される延長時間と、ステップS8にて設定される可変設定時間との双方が、固定時間に加算されて、セキュリティ時間が決定されることになる。
ステップS7、S8の処理のいずれかを実行した後には、ROM506の所定領域に記憶されたセキュリティコードを読み出す(ステップS9)。ここで、ROM506の所定領域には、記憶内容のデータを所定の演算式によって演算した演算結果のセキュリティコードが予め記憶されている。セキュリティコードの生成方法としては、例えばハッシュ関数を用いてハッシュ値を生成するもの、エラー検出コード(CRCコード)を用いるもの、エラー訂正コード(ECCコード)を用いるもののいずれかといった、予め定められた生成方法を使用すればよい。また、ROM506のセキュリティコード記憶領域とは異なる所定領域には、セキュリティコードを演算により特定するための演算式が、暗号化して予め記憶されている。
ステップS9の処理に続いて、暗号化された演算式を復号化して元に戻す(ステップS10)。その後、ステップS10で復号化した演算式により、ROM506の所定領域における記憶データを演算してセキュリティコードを特定する(ステップS11)。このときセキュリティコードを特定するための演算に用いる記憶データは、例えばROM506の記憶データのうち、セキュリティチェックプログラム506Aとは異なるユーザプログラムの全部又は一部に相当するプログラムデータ、あるいは、所定のテーブルデータを構成する固定データの全部又は一部であればよい。そして、ステップS9にて読み出したセキュリティコードと、ステップS11にて特定されたセキュリティコードとを比較する(ステップS12)。このときには、比較結果においてセキュリティコードが一致したか否かを判定する(ステップS13)。
ステップS13にてセキュリティコードが一致しない場合には(ステップS13;No)、ROM506に不正な変更が加えられたと判断して、CPU505の動作を停止状態(HALT)へ移行させる。これに対して、ステップS13にてセキュリティコードが一致した場合には(ステップS13;Yes)、ステップS7やステップS8の処理で設定されたセキュリティ時間が経過したか否かを判定する(ステップS14)。そして、セキュリティ時間が経過していなければ(ステップS14;No)、ステップS14の処理を繰り返し実行して、セキュリティ時間が経過するまで待機する。その一方で、ステップS14にてセキュリティ時間が経過したと判定された場合には(ステップS14;Yes)、例えばCPU505に内蔵されたプログラムカウンタの値をROM506におけるユーザプログラムの先頭アドレス(アドレス0000H)に設定することなどにより、遊技制御メイン処理の実行を開始する。このときには、ROM506に記憶されたユーザプログラムを構成する制御コードの先頭から遊技制御の実行が開始されることにより、遊技制御用マイクロコンピュータ100の動作状態がセキュリティモードからユーザモードへと移行し、遊技制御メイン処理の実行が開始されることになる。
図40は、遊技制御用マイクロコンピュータ100のCPU505により実行される遊技制御メイン処理の一例を示すフローチャートである。なお、以下に説明する各処理は、遊技制御用マイクロコンピュータ100が備えるCPU505によって実行されるものとする。また、遊技制御用マイクロコンピュータ100が備えるCTC508や乱数回路509、シリアル通信回路511などで発生した各種の割込み要因に基づく割込み要求は、CPU505に所定の割込み処理を実行させるためのものである。そして、CPU505やCPU505以外の各種回路を含んだ概念を遊技制御用マイクロコンピュータ100ということもあるものとする。
図40に示す遊技制御メイン処理を開始すると、CPU505は、まず、割込禁止に設定し(ステップS21)、割込モードの設定を行う(ステップS22)。例えば、ステップS22では、遊技制御用マイクロコンピュータ100の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビットは“0”)とを合成することにより割込アドレスが生成されるマスク可能割込の割込モード[2]が設定される。マスク可能な割込みが発生したときには、CPU505が自動的に割込禁止状態となる設定を行うとともに、プログラムカウンタの内容がスタックにセーブされればよい。
続いて、例えばスタックポインタ指定アドレスの設定など、スタックポインタに関わる設定を行う(ステップS23)。また、図10(B)に示すような内蔵レジスタの設定(初期化)を行う(ステップS24)。一例として、ステップS24の処理では、第1チャネル通信設定レジスタSAFMや第2チャネル通信設定レジスタSBFM等の設定を行うことにより、シリアル通信回路511における動作設定が行われればよい。ステップS24の処理に続いて、CTC508やPIP510の設定が行われる(ステップS25)。ステップS25の処理を実行した後には、例えば入力ポートIP0における端子状態をチェックすることなどにより、電源断信号がオフ状態となっているか否かを判定するようにしてもよい。
その後、RAM507をアクセス可能に設定する(ステップS26)。続いて、電源基板10に設置されたクリアスイッチ304から伝送されるスイッチ信号(クリア信号)の信号状態などに基づき、クリアスイッチ304がオン操作されたかを判定する(ステップS27)。なお、ステップS27の処理では、クリアスイッチ304から伝送されるクリア信号を複数回チェックし、連続してオン状態となったときに、クリアスイッチ304がオン操作されたと判定してもよい。例えば、クリア信号の状態がオフ状態であることを1回確認したら、所定時間(例えば0.1秒)が経過した後に、クリア信号の状態をもう1回確認する。このとき、クリア信号がオフ状態であれば、クリア信号がオフ状態である旨の判定を行うようにする。他方、このときにクリア信号の状態がオン状態であれば、所定時間が経過した後に、クリア信号の状態を再び確認するようにしてもよい。なお、クリア信号の状態を再確認する回数は1回であってもよいし、複数回であってもよい。また、2回チェックして、チェック結果が一致していなかったときに、もう一度確認するようにしてもよい。
ステップS27にてクリアスイッチ304がオフであるときには(ステップS27;No)、遊技制御フラグ設定部592などに設けられたバックアップフラグがオンとなっているか否かを判定する(ステップS28)。バックアップフラグの状態は、遊技制御用マイクロコンピュータ100への電力供給が停止するときに、遊技制御フラグ設定部592などに設定される。そして、このバックアップフラグの設定箇所がバックアップ電源によってバックアップされることで、電力供給が停止した場合でも、バックアップフラグの状態は保存されることになる。ステップS28では、例えばバックアップフラグの値として「55H」が遊技制御フラグ設定部592に設定されていれば、バックアップあり(オン状態)であると判断される。これに対して、「55H」以外の値が設定されていればバックアップなし(オフ状態)であると判断される。
ステップS28にてバックアップフラグがオンであるときには(ステップS28;Yes)、RAM507のデータチェックを行い、チェック結果が正常であるか否かを判定する(ステップS29)。ステップS29の処理では、例えばRAM507の特定領域における記憶データを用いてチェックサムを算出し、算出されたチェックサムとメインチェックサムバッファに記憶されているチェックサムとを比較する。ここで、メインチェックサムバッファには、前回の電力供給停止時に、同様の処理によって算出されたチェックサムが記憶されている。そして、比較結果が不一致であれば、RAM507の特定領域におけるデータが電力供給停止時のデータとは異なっていることから、チェック結果が正常でないと判断される。
ステップS29におけるチェック結果が正常であるときには(ステップS29;Yes)、例えば遊技制御用マイクロコンピュータ100の内部状態といった主基板11における制御状態や、サブ側の制御基板(例えば演出制御基板12など)の制御状態などを電力供給が停止されたときの状態に戻すための復旧時における設定を行い、電断前の遊技状態を復旧させる(ステップS30)。具体的な一例として、ステップS30の処理では、ROM506に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し、バックアップ時設定テーブルの内容を順次に、RAM507内のワークエリアに設定する。ここで、RAM507のワークエリアはバックアップ電源によってバックアップされており、バックアップ時設定テーブルには、作業領域のうちで初期化してもよい領域についての初期化データが設定されていてもよい。
ステップS27にてクリアスイッチ304がオンであるときや(ステップS27;Yes)、ステップS28にてバックアップフラグがオフであるとき(ステップS28;No)、あるいは、ステップS29にてチェック結果が正常ではないときには(ステップS29;No)、停電復旧時でない電源投入時やシステムリセット時に対応した初期化処理を実行する。この初期化処理では、RAM507のクリア(初期化)を行い(ステップS31)、作業領域となるワークエリアを設定する(ステップS32)。なお、ステップS31の処理では、所定のデータ(例えば遊技制御カウンタ設定部594に設けられたランダムカウンタにおける格納データなど)が任意の値あるいは予め定められている初期値などに設定されてもよい。また、RAM507の全領域を初期化してもよいし、一部の領域を初期化する一方で所定のデータはそのままにしてもよい。ステップS31の処理が実行されるときには、乱数回路509の動作状態も初期化してもよい。ステップS32の処理により、遊技制御フラグ設定部592、遊技制御タイマ設定部593、遊技制御カウンタ設定部594、遊技制御バッファ設定部595などに初期値が設定されればよい。このときには、演出制御基板12等といったサブ側の各制御基板を初期化するための制御コマンド(初期化指定コマンド)を送信してもよい。例えば、演出制御基板12では、初期化指定コマンドの受信に応答して、画像表示装置5の表示領域においてパチンコ遊技機1における制御が初期化されたことを報知するための画像を表示させるなどの初期化報知が実行されればよい。
ステップS32の処理に続いて、初期化処理時に対応して予め定められたセキュリティ信号出力時間(例えば30秒)を設定する(ステップS32A)。例えば、ステップS32Aの処理では、遊技制御タイマ設定部593などに設けられたセキュリティ信号情報タイマに、セキュリティ信号出力時間に対応するタイマ初期値が設定されればよい。セキュリティ信号情報タイマは、外部出力されるセキュリティ信号のオン時間を計測するためのタイマである。こうして、ステップS32Aにてセキュリティ信号出力時間が設定されたことに基づいて、図43のステップS94や図52に示す情報出力処理が実行されることにより、パチンコ遊技機1の電源投入時における初期化処理の実行に対応して、セキュリティ信号が所定時間(例えば30秒間)外部出力される。
ステップS30にて電断前の遊技状態を復旧した後や、ステップS32Aの処理を実行した後には、ROM506のプログラム管理エリアにおける記憶データに基づき、遊技制御用マイクロコンピュータ100に内蔵された各種回路の動作設定を行う(ステップS33)。一例として、ステップS33の処理内では、プログラム管理エリアに記憶されている第1乱数初期設定KRS1や第2乱数初期設定KRS2を読み出して、図41のフローチャートに示すような乱数回路設定処理が実行される。なお、ステップS33の処理は、ステップS24の処理やステップS25の処理が実行されるときに、実行されるようにしてもよい。
図41に示す乱数回路設定処理において、CPU505は、まず、第1乱数初期設定KRS1のビット番号[3]におけるビット値に基づき、乱数回路509を使用するための設定を行う(ステップS51)。この実施の形態では、第1乱数初期設定KRS1のビット番号[3]におけるビット値が予め“1”とされており、このビット値に対応して乱数回路509を使用する設定が行われる。続いて、第1乱数初期設定KRS1のビット番号[2]におけるビット値に基づき、乱数回路509における乱数更新クロックRGKの設定を行う(ステップS52)。例えば、第1乱数初期設定KRS1のビット番号[2]におけるビット値が予め“1”とされていることに対応して、乱数用クロック生成回路112で生成された乱数用クロックRCLKを2分周して乱数更新クロックRGKとする設定が行われる。
ステップS52での設定を行った後には、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値に基づき、乱数回路509における乱数更新規則の設定を行う(ステップS53)。例えば、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“00”とされている場合には、乱数列RSNにおける乱数値となる数値データの更新順を指定する乱数更新規則を2周目以降も変更しない設定がなされる。また、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“01”とされている場合には、乱数列RSNにおける乱数更新規則を2周目以降はソフトウェアで変更する設定がなされる。さらに、第1乱数初期設定KRS1のビット番号[1−0]におけるビット値が予め“10”とされている場合には、乱数列RSNにおける乱数更新規則を2周目以降は自動で変更する設定がなされる。
続いて、第2乱数初期設定KRS2のビット番号[1]におけるビット値に基づき、乱数値となる数値データにおける起動時スタート値を決定する(ステップS54)。例えば、第2乱数初期設定KRS2のビット番号[1]におけるビット値が予め“0”とされている場合には、乱数のスタート値をデフォルト値「0000H」とする設定がなされる。また、第2乱数初期設定KRS2のビット番号[1]におけるビット値が予め“1”とされている場合には、乱数のスタート値をIDナンバーに基づく値とする設定がなされる。
さらに、第2乱数初期設定KRS2のビット番号[0]におけるビット値に基づき、乱数値となる数値データのスタート値をシステムリセット毎に変更するか否かの設定を行う(ステップS55)。例えば、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“0”とされている場合には、パチンコ遊技機1の電源初期投入時(バックアップ無効後の起動)における起動であるか、システムリセットによる再起動であるかに関わりなく、ステップS54にて設定した起動時スタート値をそのまま用いて、乱数回路509におけるスタート値とすればよい。また、第2乱数初期設定KRS2のビット番号[0]におけるビット値が予め“1”とされている場合には、乱数のスタート値をシステムリセット毎に変更する設定がなされる。例えば、システムリセットの発生時といった所定タイミングにて、例えばフリーランカウンタ554Aといった所定のフリーランカウンタにおけるカウント値が遊技制御用マイクロコンピュータ100に内蔵された乱数スタート値用レジスタに格納される場合には、ステップS55の処理において、乱数スタート値用レジスタの格納値をそのまま用いること、あるいは、その格納値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、乱数のスタート値がシステムリセット毎に所定の数値範囲(例えば乱数生成回路553にて生成されるカウント値順列RCNに含まれる数値データの全部又は一部を含む範囲)でランダムに変化するように決定されればよい。
ステップS55の処理を実行した後には、例えば乱数値レジスタR1Dや乱数値レジスタR2Dに格納されている数値データを読み出すことなどにより、乱数ラッチフラグレジスタRDFMのビット番号[1]やビット番号[0]に格納される乱数ラッチフラグデータRDFM1や乱数ラッチフラグデータRDFM0のビット値を“0”として、各乱数ラッチフラグをオフ状態にクリアする(ステップS56)。一例として、乱数ラッチフラグデータRDFM1と乱数ラッチフラグデータRDFM0について、それぞれの値が“1”であるか“0”であるかを判定し、その値が“1”であれば、対応する乱数値レジスタの読み出しを行うことにより、乱数ラッチフラグをオフ状態とすればよい。あるいは、乱数ラッチフラグデータRDFM1や乱数ラッチフラグデータRDFM0の値にかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの読み出しを行うことにより、各乱数ラッチフラグをオフ状態としてもよい。なお、ステップS56の処理により乱数値レジスタR1Dや乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。こうしたステップS56の処理による設定が完了すると、乱数回路509では乱数値の生成動作が開始されればよい。
なお、乱数回路設定処理による設定の一部又は全部は、CPU505の処理が介在することなく、乱数回路509がプログラム管理エリアの記憶データに基づき自律的に行うようにしてもよい。この場合、乱数回路509は、遊技制御用マイクロコンピュータ100がセキュリティモードとなっているときには初期設定を行わず、乱数値の生成動作が行われないようにしてもよい。そして、遊技制御用マイクロコンピュータ100にてCPU505がROM506に記憶されたユーザプログラムを読み出して遊技制御メイン処理の実行が開始されたときに、例えばCPU505から乱数回路509に対して初期設定を指示する制御信号が伝送されたことなどに応答して、乱数回路509が初期設定を行ってから乱数値の生成動作を開始するようにしてもよい。あるいは、特に乱数回路509が遊技制御用マイクロコンピュータ100に外付けされる場合などには、遊技制御用マイクロコンピュータ100がセキュリティモードとなっているときでも、乱数回路509がCPU505における処理とは独立して、プログラム管理エリアの記憶データに基づく初期設定を行ってから、乱数値の生成動作を開始するようにしてもよい。また、図40に示すステップS33の処理には、プログラム管理エリアに記憶されている割込み初期設定KIISを読み出して、リセット/割込みコントローラ504におけるマスカブル割込み要因の優先制御に関する設定を行う処理などが含まれてもよい。マスカブル割込み要因の優先順位を設定する際には、割込み初期設定KIISのビット番号[3−0]におけるビット値に対応して、最優先割込みの設定が行われる。例えば、割込み初期設定KIISのビット番号[3−0]のビット値を予め「04H」及び「05H」のいずれかとしておくことにより、シリアル通信回路511で発生した割込み要因による割込み処理を最優先で実行することができる。こうして、割込み初期設定KIISのビット番号[3−0]におけるビット値に応じたマスカブル割込み要因の優先制御を行うことにより、割込み処理の優先順位を任意に設定可能とし、設計の自由度を増大させることができる。
ステップS33での設定を行った後には、乱数回路509における動作異常の有無を検査するための乱数回路異常検査処理を実行する(ステップS34)。図42は、ステップS34にて実行される乱数回路異常検査処理の一例を示すフローチャートである。
図42に示す乱数回路異常検査処理において、CPU505は、まず、例えば遊技制御カウンタ設定部594などに設けられた乱数用クロック異常判定カウンタをクリアして、そのカウント値である乱数用クロック異常判定カウント値を「0」に初期化する(ステップS61)。続いて、内部情報レジスタCIFのビット番号[4]に格納されている内部情報データCIF4を読み出す(ステップS62)。そして、ステップS62での読出値が“1”であるか否かを判定する(ステップS63)。乱数回路509が備える周波数監視回路551では、乱数用外部クロック端子ERCにおける乱数用クロックRCLKの入力状態を、内部システムクロックSCLKと比較する。そして、乱数用クロックRCLKの入力状態に、図13(B)で示したような設定内容に応じた周波数異常が検出されたときには、内部情報データCIF4としてビット値“1”が書き込まれる。
そこで、ステップS63にて読出値が“1”と判定された場合には(ステップS63;Yes)、乱数用クロック異常判定カウント値を1加算するように更新する(ステップS64)。このときには、ステップS64での更新後におけるカウント値が所定のクロック異常判定値に達したか否かを判定する(ステップS65)。ここで、クロック異常判定値は、周波数監視回路551により乱数用クロックRCLKの周波数異常が連続して検知された場合にクロック異常と判定するために予め定められた数値であればよい。ステップS65にてクロック異常判定値に達していなければ、ステップS62の処理に戻り、再び内部情報データCIF4のビット値に基づく判定を行う。
ステップS65にてクロック異常判定値に達した場合には(ステップS65;Yes)、所定の乱数用クロックエラー時処理を実行してから(ステップS66)、乱数回路異常検査処理を終了する。なお、乱数用クロックエラー時処理では、例えば演出制御基板12に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数用クロックRCLKの周波数異常が検知されたことを報知させるとともに、所定のエラー解除手順(例えばシステムリセットやエラー解除スイッチの操作など)がとられるまでは、以後の処理には進まないようにしてもよく、あるいは、乱数用クロックエラー時処理の終了とともに乱数回路異常検査処理を終了して、以後は乱数用クロックエラー時処理を実行しない通常時とほぼ同様の遊技制御などが実行されるようにしてもよい。ここで、ステップS66にて乱数用クロックエラー時処理を実行した後に遊技制御などが実行される場合には、乱数用クロックエラー時処理の実行に対応したエラーの発生状態を記憶しておき、例えば後述する図50に示すステップS195の処理に基づき乱数用クロックRCLKの周波数異常を通知する演出制御コマンドを送信するようにしてもよい。また、乱数用クロックエラー時処理を実行することなく、CPU505の動作を停止状態(HALT)へ移行させてもよい。
ステップS63にて読出値が“0”と判定された場合には(ステップS63;No)、例えば遊技制御カウンタ設定部594などに設けられた乱数値異常判定カウンタをクリアして、そのカウント値である乱数値異常判定カウント値を「0」に初期化する(ステップS67)。なお、ステップS63の処理では、ステップS62にて読み出した内部情報データCIF4のビット値が複数回(例えば2回など)連続して“0”となったときに、読出値が“0”であると判定してもよい。
ステップS67の処理に続いて、乱数値における異常の有無をチェックするために用いるチェック値を、初期値「0000H」に設定する(ステップS68)。そして、乱数回路509が備える乱数値レジスタR1Dとなる乱数値レジスタ559Aや乱数値レジスタR2Dとなる乱数値レジスタ559Bから、格納されている乱数値となる数値データを読み出す(ステップS69)。例えば、ステップS69の処理では、乱数ラッチ選択レジスタRDLSのビット番号[1]やビット番号[0]に格納される乱数ラッチ選択データRDLS1や乱数ラッチ選択データRDLS0のビット値を“0”として、ソフトウェアによる乱数値の取り込みを指定する。続いて、乱数値取込指定レジスタRDLTのビット番号[1]やビット番号[0]に格納される乱数値取込指定データRDLT1や乱数値取込指定データRDLT0のビット値を“1”として、乱数値レジスタR2Dや乱数値レジスタR1Dへの取り込みを指定する。なお、乱数値取込指定レジスタRDLTのビット番号[1]やビット番号[0]におけるビット値を“1”とすることは、CPU505から乱数回路509に対して数値データの取り込み(ラッチ)を指示するラッチ信号を出力することに相当する。その後、乱数値レジスタR2Dに供給するレジスタリード信号RRS2をオン状態とすることや、乱数値レジスタR1Dに供給するレジスタリード信号RRS1をオン状態とすることにより、格納されている乱数値となる数値データを読み出すようにすればよい。なお、乱数値レジスタR2Dと乱数値レジスタR1Dのそれぞれに格納された数値データを、同時に読み出して乱数値における異常の有無をチェックしてもよいし、一方のレジスタについて異常の有無をチェックしてから、他方のレジスタについて異常の有無をチェックするようにしてもよい。
ステップS69にて数値データを読み出した後には、その読出値を乱数検査基準値に設定する(ステップS70)。続けて、さらに乱数値レジスタ559Aや乱数値レジスタ559Bから乱数値となる数値データを読み出す(ステップS71)。なお、ステップS71での読出動作は、ステップS69での読出動作と同様の手順で行われればよい。また、ステップS69での読出動作と、ステップS71での読出動作との間には、乱数回路509で生成される乱数列RSNにおける数値データが変化するために十分な遅延時間を設けるとよい。ステップS71にて数値データを読み出した後には、乱数検査基準値と、ステップS71での読出値との排他的論理和演算を実行する(ステップS72)。また、ステップS72での演算結果と、チェック値との論理和演算を実行し、演算結果を新たなチェック値とするように更新させる(ステップS73)。例えば、チェック値はRAM507の所定領域に記憶しておき、ステップS73の処理が実行される毎に、その処理で得られた演算結果を新たなチェック値として保存すればよい。これにより、乱数値レジスタ559Aや乱数値レジスタ559Bから読み出した数値データにおける全ビットの変化が記録され、複数回の読出中に少なくとも1回は値が変化したビットであれば、チェック値において対応するビット値が“1”となる。
そこで、チェック値が「FFFFH」となったか否かを判定し(ステップS74)、なっていれば(ステップS74;Yes)、全ビットについてビット値の変化が認められることから、乱数値が正常に更新されていると判断して、乱数回路異常検査処理を終了する。なお、乱数値が正常に更新されていることを確認できた場合には、乱数ラッチ選択レジスタRDLSのビット番号[1]やビット番号[0]に格納される乱数ラッチ選択データRDLS1や乱数ラッチ選択データRDLS0のビット値を“1”として、入力ポートP1への信号入力に応じた乱数値レジスタR2Dへの乱数値取込や、入力ポートP0への信号入力に応じた乱数値レジスタR1Dへの乱数値取込を、指示するようにしてもよい。一例として、入力ポートP0には第1始動口スイッチ22Aからの第1始動入賞信号SS1を伝送する配線が接続され、入力ポートP1には第2始動口スイッチ22Bからの第2始動入賞信号SS2を伝送する配線が接続されるように構成する。これにより、第1始動入賞信号SS1がオン状態となったときに乱数値レジスタR1Dへの乱数値取込を行う一方、第2始動入賞信号SS2がオン状態となったときに乱数値レジスタR2Dへの乱数値取込を行うことができる。
ステップS74にてチェック値が「FFFFH」以外と判定された場合には(ステップS74;No)、乱数値異常判定カウント値を1加算するように更新する(ステップS75)。このときには、ステップS75での更新後におけるカウント値が所定の乱数値異常判定値に達したか否かを判定する(ステップS76)。ここで、乱数値異常判定値は、乱数回路509が正常動作していれば、乱数値レジスタ559Aや乱数値レジスタ559Bから読み出される数値データの全ビットが少なくとも1回は変化するのに十分な判定回数となるように、予め定められた数値であればよい。ステップS76にて乱数値異常判定値に達していなければ、ステップS71の処理に戻り、再び乱数回路509から乱数値となる数値データを読み出して異常の有無をチェックするための判定などを行う。
ステップS76にて乱数値異常判定値に達した場合には(ステップS76;Yes)、所定の乱数値エラー時処理を実行してから(ステップS77)、乱数回路異常検査処理を終了する。なお、乱数値エラー時処理では、例えば演出制御基板12に対して所定の演出制御コマンドを送信するための設定を行って、演出装置により乱数値の異常が検知されたことを報知させるとともに、所定のエラー解除手順(例えばシステムリセットやエラー解除スイッチの操作など)がとられるまでは、以後の処理には進まないようにしてもよく、あるいは、乱数値エラー時処理の終了とともに乱数回路異常検査処理を終了して、以後は乱数値エラー時処理を実行しない通常時とほぼ同様の遊技制御などが実行されるようにしてもよい。ここで、ステップS77にて乱数値エラー時処理を実行した後に遊技制御などが実行される場合には、乱数値エラー時処理の実行に対応したエラーの発生状態を記憶しておき、例えば後述する図61に示すステップS238の処理に基づき客待ちデモ指定コマンドを送信するときなどに、そのエラーの発生状態を通知する客待ちデモ指定コマンドを送信するようにしてもよい。また、乱数値エラー時処理を実行することなく、CPU505の動作を停止状態(HALT)へ移行させてもよい。
このように、乱数回路異常検査処理では、例えばステップS71の処理を繰り返し実行することなどにより、乱数回路509の乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを複数回読み出す。そして、ステップS72〜ステップS74の処理を実行することなどにより読み出した数値データの全ビットを監視して、変化しないビットデータの有無に基づき、ステップS76にて乱数回路509の動作状態に異常が発生したか否かを判定する。これにより、乱数回路509の動作状態に異常が発生していることを確実かつ容易に検知して、不正行為を防止することができる。
なお、ステップS34の乱数回路異常検査処理は、CPU505が実行するものに限定されず、CPU505以外の遊技制御用マイクロコンピュータ100における内蔵回路により乱数回路異常検査処理が実行されてもよい。一例として、乱数回路509が乱数回路異常検査処理を実行する機能を有し、乱数用クロックRCLKの周波数異常が検知されたときや、乱数値の異常が検知されたときに、エラーの発生をCPU505に通知するようにしてもよい。また、乱数回路異常検査処理は、ステップS34のみにて実行されるものに限定されず、例えば遊技制御用マイクロコンピュータ100にてタイマ割込みが発生する毎に、後述する遊技制御用タイマ割込み処理(図43参照)にて乱数回路異常検査処理の一部又は全部が実行されるようにしてもよい。すなわち、ステップS34の乱数回路異常検査処理は、図40に示すステップS35の処理を実行した後に、実行される処理としてもよい。一例として、遊技制御用タイマ割込み処理にて乱数回路異常検査処理が実行される場合には、例えば図42に示すステップS61〜ステップS66の処理を実行する一方で、ステップS67〜ステップS77の処理は実行されないようにしてもよい。ステップS67〜ステップS77の処理は、例えばステップS69の処理を繰り返し実行して乱数回路509から数値データを繰り返し読み出すためなどに、長い処理時間を要することがあり、遊技制御用タイマ割込み処理において処理落ちが発生するおそれがある。そこで、この場合にはステップS61〜ステップS66の処理のみを実行することで、遊技制御用タイマ割込み処理における処理量を軽減し、処理落ちの発生を防止することができる。
図40に示すステップS34にて以上のような乱数回路異常検査処理を実行した後には、割込み許可状態に設定して(ステップS35)、各種割込み要求の発生を待機する。ステップS35の処理を実行した後には、例えばステップS25におけるCTC508の設定に基づき、2ms(ミリ秒)ごとに遊技制御用のタイマ割込みが発生するようになればよい。ステップS35の処理を実行した後には、遊技用乱数更新処理が繰り返し実行される(ステップS36)。
なお、ステップS35の処理を実行するより前に、主基板11に設置された遊技開始スイッチ31から伝送されるスイッチ信号の信号状態などに基づき、遊技開始スイッチ31がオン操作されたか否かを判定するようにしてもよい。この場合には、遊技開始スイッチ35から伝送されるスイッチ信号を複数回チェックし、連続してオン状態となったときに、遊技開始スイッチ31がオン操作されたと判定してもよい。また、遊技開始スイッチ31のオン操作をチェックする処理は、例えばステップS31及びステップS32の処理が実行された場合のように、復旧のない初期状態からのスタート時(コールドスタート時)に限り実行し、例えばステップS30の処理が実行された場合のように、電断前の遊技状態に復旧させるスタート時(ホットスタート時)には遊技開始スイッチ31の操作に関わりなく、例えば遊技制御用タイマ割込み処理といった、遊技の進行を制御する処理に進めるようにしてもよい。ここで、遊技制御用マイクロコンピュータ100が備えるRAM507にて遊技制御カウンタ設定部594に設けられたランダムカウンタとなる領域がバックアップ電源によりバックアップされている場合には、ホットスタート時であれば電断前のランダムカウンタにおける格納データを用いて乱数値となる数値データの更新を開始するので、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値を特定することは困難になる。これに対して、コールドスタート時には、例えばステップS31の処理でランダムカウンタがクリア(初期化)されてしまうことなどにより、一定の初期値(例えば「0」など)から乱数値の更新が開始され、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値が特定されてしまう可能性がある。
そこで、コールドスタート時には遊技開始スイッチ31がオン操作されるまで待機させ、パチンコ遊技機1の動作開始タイミングからランダムカウンタに格納された乱数値が特定されることを困難にする。これにより、特に大当り判定用の乱数値(例えば特図表示結果判定用の乱数値MR1)をソフトウェアのみで更新するような場合に、いわゆる「ぶら下げ基板」を接続してパチンコ遊技機1の動作開始タイミングから所定時間が経過したタイミングで不正信号が入力されても、不正な大当り遊技状態の発生を防止できる。また、遊技開始スイッチ31がオン操作されていないと判定したときには、遊技用乱数更新処理を実行して、ランダムカウンタに格納された乱数値をソフトウェアにより更新するようにしてもよい。これにより、遊技開始スイッチ31のオン操作がなされたタイミングからの経過時間に加えて、パチンコ遊技機1の動作開始タイミングから遊技開始スイッチ31のオン操作がなされるまでの経過時間も特定できなければ、たとえコールドスタート時でもランダムカウンタに格納された乱数値を特定することは困難になり、狙い撃ちや不正信号の入力などにより不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
こうしてステップS35の処理が実行されることにより割込み許可状態となった後、例えばCTC508や乱数回路509、シリアル通信回路511の一部又は全部などにて同時に複数のマスカブル割込み要因が生じたときには、割込み初期設定KIISのビット番号[3−0]におけるビット値による指定に基づき、リセット/割込みコントローラ504によって優先順位の高い割込み要因が受け付けられる。リセット/割込みコントローラ504が割込み要因を受け付けたときには、例えばCPU505が備えるIクラス割込み(IRQ)端子などに対して、オン状態の割込み要求信号を出力する。CPU505にてIRQ端子にオン状態の割込み要求信号が入力されたときには、例えば内部レジスタの格納データを確認した結果などに基づき、発生した割込み要因を特定し、特定された割込み要因に対応するベクタアドレスを先頭アドレスとするプログラムを実行することにより、各割込み要因に基づく割込み処理を開始することができる。
シリアル通信回路511が備える第1チャネル送受信回路による通信データの受信中に、オーバーランエラー、ブレークコードエラー、フレーミングエラー、パリティエラーという、4種類のエラーのいずれかが発生した場合には、第1チャネル受信割込みが発生する。このときには、CPU505が所定のシリアル通信エラー割込み処理を実行してもよい。このシリアル通信エラー割込み処理では、例えば所定の第1チャネル通信設定レジスタにおける所定のビット番号と、第2チャネル通信設定レジスタにおける所定のビット番号とに対応したビット値を、いずれも“0”に設定することなどにより、シリアル通信回路511における送信機能と受信機能をいずれも使用しないように設定すればよい。ここで、第1チャネル通信設定レジスタや第2チャネル通信設定レジスタは、遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれるものであればよい。また、第1チャネル送受信回路による通信データの受信中にエラーが発生したときには、払出モータ51を含む払出装置による遊技球の払出を禁止する制御を行うようにしてもよい。これにより、通信データの受信エラーといった異常が発生したときに、賞球となる遊技球の過剰な払出を防止することができる。
遊技制御用マイクロコンピュータ100では、例えばリセット/割込みコントローラ504がCTC508からの割込み要求を受け付けたことなどに基づき、CPU505が図43のフローチャートに示す遊技制御用タイマ割込み処理を実行する。図43に示す遊技制御用タイマ割込み処理において、CPU505は、まず、割込み禁止状態としてから、所定の電源断処理を実行する(ステップS91)。また、所定のスイッチ処理を実行することにより、スイッチ回路114を介して遊技球検出用の各スイッチ21、22A、22B、23などから入力される検出信号(入賞検出信号)の状態を判定する(ステップS92)。
ステップS92におけるスイッチ処理に続いて、所定のメイン側エラー処理を実行することにより、パチンコ遊技機1の異常診断を行い、その診断結果に応じて必要ならば警告を発生可能とする(ステップS93)。例えば、メイン側エラー処理では、賞球過多や賞球不足、その他の動作エラーが発生した場合に対応して、異常動作の発生を報知するための設定などが行われてもよい。この後、所定の情報出力処理を実行することにより、例えばパチンコ遊技機1の外部に設置されたホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する(ステップS94)。
情報出力処理に続いて、遊技用乱数更新処理を実行する(ステップS95)。この後、CPU505は、特別図柄プロセス処理を実行する(ステップS96)。特別図柄プロセス処理では、遊技制御フラグ設定部592に設けられた特図プロセスフラグの値をパチンコ遊技機1における遊技の進行状況に応じて更新し、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにおける表示動作の制御や特別可変入賞球装置7における大入賞口の開閉動作設定などを所定の手順で行うために、各種の処理が選択されて実行される。
特別図柄プロセス処理に続いて、普通図柄プロセス処理が実行される(ステップS97)。CPU505は、普通図柄プロセス処理を実行することにより、普通図柄表示器20における表示動作(例えばセグメントLEDの点灯、消灯など)を制御して、普通図柄の可変表示や普通可変入賞球装置6Bにおける可動翼片の傾動動作設定などを可能にする。普通図柄プロセス処理を実行した後、CPU505は、例えばステップS92におけるスイッチ処理の実行結果などに基づき、入賞検出信号の入力に応じて賞球個数の設定などを行う賞球処理を実行する(ステップS98)。賞球処理に続いて、メイン側通信制御処理を実行することにより、主基板11から演出制御基板12や払出制御基板15などのサブ側の制御基板に向けて制御コマンドを送信したり、払出制御基板15から伝送された制御コマンドを受信したりするための通信制御を行う(ステップS99)。
一例として、メイン側通信制御処理では、遊技制御バッファ設定部595に設けられた送信コマンドバッファに含まれる払出用送信コマンドバッファの記憶データによって指定されたコマンド送信テーブルにおける設定に対応して、シリアル通信回路511が備える第1チャネル送受信回路に送信動作の指示を送ることなどにより、払出制御コマンドの伝送を可能にする。また、遊技制御バッファ設定部595などに設けられた払出用受信コマンドバッファの記憶内容を確認して受信コマンドが格納されているか否かを判定し、格納されているときには、その受信コマンドを読み出す。なお、払出用受信コマンドバッファに対する受信コマンドの格納は、シリアル通信回路511にて第1チャネル送受信回路により払出通知コマンドとなる通信データを受信したことに応じて発生する第1チャネル受信割込みに基づいて実行される割込み処理により、行われるようにすればよい。他の一例として、メイン側通信制御処理では、送信コマンドバッファに含まれる演出用送信コマンドバッファの記憶データによって指定されたコマンド送信テーブルにおける設定に対応して、シリアル通信回路511が備える第2チャネル送信回路に送信動作の指示を送ることなどにより、演出制御コマンドの伝送を可能にする。こうしたメイン側通信制御処理を実行した後には、割込み許可状態としてから、遊技制御用タイマ割込み処理を終了する。
図44は、電源断処理として、図43のステップS91にて実行される処理の一例を示すフローチャートである。この電源断処理において、CPU505は、まず、電源断信号がオン状態であるか否か、すなわち、電源基板10に搭載された電源監視回路303から電源断信号が出力されているか否かを判定する(ステップS111)。このとき、電源断信号がオフ状態であり、電源断信号が出力されていなければ(ステップS112;No)、遊技制御タイマ設定部593に設けられたバックアップ監視タイマをクリアして、その格納値であるバックアップ監視タイマ値を初期値となる「0」に設定する(ステップS112)。これに対して、電源断信号がオン状態であり、電源断信号が出力されているときには(ステップS111;Yes)、バックアップ監視タイマ値を1加算するなどして更新する(ステップS113)。そして、ステップS113における更新後のバックアップ監視タイマ値が予め定められたバックアップ判定値(例えば「2」など)に達したか否かを判定する(ステップS114)。ステップS114にてバックアップ判定値に達していないときには(ステップS114;No)、電源断処理を終了する。
ステップS114にてバックアップ判定値に達した場合には(ステップS114;Yes)、電力の供給停止に対応するための準備処理として、ステップS115以降の処理を実行する。こうした準備処理が実行されるときには、遊技の進行を制御する状態から遊技状態を保存させるための電力供給停止時処理(電源断時制御処理)を実行する状態に移行する。ステップS114の処理でバックアップ判定値に達した場合に限り準備処理を実行することにより、ノイズ等で電源電圧が一瞬低下して電源断信号のオン状態が発生しても、誤って電力供給停止時処理が開始されてしまうことを防止できる。
電力供給停止時処理では、チェックサムを算出して、例えば遊技制御バッファ設定部595に設けられたメインチェックサムバッファなどに記憶させる(ステップS115)。一例として、ステップS115の処理では、RAM507における所定領域の先頭アドレスをチェックサム算出開始アドレスに設定し、その所定領域の最終アドレスに対応してチェックサム算出回数を設定する。こうしたチェックサム算出開始アドレスとチェックサム算出回数の設定に用いられるアドレスで特定されるRAM507の所定領域は、電力供給停止時でも内容が保存されるべき記憶領域として予め定められた内容保存領域であればよい。そして、この内容保存領域における記憶データを順次に読み出して排他的論理和を演算する。例えば、チェックサム算出開始アドレスをポインタにセットした後、RAM507においてポインタが指すアドレスの記憶データを読み出して、初期値が「00」であるチェックサムデータとの排他的論理和を演算した上で、演算結果を新たなチェックサムデータとしてストアする。このときには、ポインタの値を1加算するとともに、チェックサム算出回数を1減算する。続いて、チェックサム算出回数が「0」以外の値であれば、さらにポインタが指すアドレスの記憶データを読み出して、チェックサムデータとの排他的論理和を演算する処理や、ポインタの値を1加算してチェックサム算出回数を1減算する処理を、チェックサム算出回数が「0」になるまで繰り返し実行すればよい。チェックサム算出回数が「0」になったときには、チェックサムデータの各ビット値を反転して、得られた値をメインチェックサムバッファにストアして記憶させればよい。こうしてメインチェックサムバッファに記憶されたデータは、電源投入時にチェックされるパリティデータとして使用される。
ステップS115の処理を実行してチェックサムデータを記憶させたときには、遊技制御フラグ設定部592に設けられたバックアップフラグをオン状態にセットすればよい。その後、例えば所定のRAMアクセスレジスタにアクセス禁止値を設定することなどにより、以後、RAM507へのアクセスを禁止する(ステップS116)。電源電圧が低下していくときには、CPU505の動作などに暴走が生じることや、各種信号線における信号レベル(電圧レベル)が不安定になることなどにより、RAM507の記憶内容が誤って変更される可能性がある。そこで、ステップS116の処理によりRAM507へのアクセスを禁止した状態に設定することで、RAM507に設けられたバックアップ用の記憶領域などにおける記憶内容の誤った変更(破損)を防止できる。また、CPU505は、遊技制御用マイクロコンピュータ100が備える所定の出力ポートにクリアデータである「00」をセットするなどのクリア設定を行う(ステップS117)。さらに、CPU505は、例えばCTC508の制御レジスタに「00」をセットすることなどにより、タイマ割込み禁止状態に設定する(ステップS118)。ここで、CTC508の制御レジスタは、遊技制御用マイクロコンピュータ100の内蔵レジスタに含まれるものであればよい。なお、ステップS117の処理による出力ポートのクリア設定や、ステップS118の処理によるタイマ割込み禁止状態の設定は、ステップS115の処理によりチェックサムが算出されるよりも前に実行してもよい。図43に示す遊技制御用タイマ割込み処理の実行が開始されるときに割込み禁止状態とする場合には、ステップS118の処理によるタイマ割込み禁止状態の設定は実行されなくてもよい。
ステップS118の処理による設定に続いて、電源断信号がオフ状態となったか否かを監視するループ処理に入る(ステップS119)。そして、電源断信号がオン状態のあいだは(ステップS119;No)、ステップS119の処理を繰り返し実行して待機する。これに対して、ステップS119にて電源断信号がオフ状態となったときには(ステップS119;No)、乱数ラッチフラグをクリアするための処理を実行する。
すなわち、乱数ラッチフラグレジスタRDFMのビット番号[0]に格納される乱数ラッチフラグデータRDFM0のビット値が“1”であるか否かに応じて、乱数値レジスタR1Dに対応する乱数ラッチフラグがオンであるか否かを判定する(ステップS120)。そして、この乱数ラッチフラグがオンであれば(ステップS120;Yes)、乱数値レジスタR1Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM0のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする(ステップS121)。また、ステップS120にて乱数ラッチフラグデータRDFM0で指定される乱数ラッチフラグがオフである場合や(ステップS120;No)、ステップS121の処理を実行した後には、乱数ラッチフラグレジスタRDFMのビット番号[1]に格納される乱数ラッチフラグデータRDFM1のビット値が“1”であるか否かに応じて、乱数値レジスタR2Dに対応する乱数ラッチフラグがオンであるか否かを判定する(ステップS122)。このとき、乱数ラッチフラグがオンであれば(ステップS122;Yes)、乱数値レジスタR2Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM1のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする(ステップS123)。こうしたステップS121やステップS123の処理により、乱数ラッチフラグがオフ状態とされて、乱数値レジスタR1Dや乱数値レジスタR2Dに新たな数値データの格納が許可された状態に設定できる。なお、ステップS121やステップS123の処理により乱数値レジスタR1Dや乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。また、ステップS120〜ステップS123の処理に代えて、乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1の値にかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの読み出しを行うことにより、各乱数ラッチフラグをオフ状態とする処理が実行されてもよい。
ステップS122にて乱数ラッチフラグデータRDFM1で指定される乱数ラッチフラグがオフであるときや(ステップS122;No)、ステップS123の処理を実行した後には、所定の電断復旧時における設定を行った後(ステップS124)、遊技制御メイン処理の先頭にリターンする。一例として、ステップS124の処理では、CPU505に内蔵されたスタックポインタに電源断復旧時ベクタテーブルの記憶アドレスを格納し、遊技制御用タイマ割込み処理から復帰(リターン)させる。ここで、電源断復旧時ベクタテーブルは、ROM506に記憶された制御コード(遊技制御プログラム)の先頭アドレスを指定するものであればよい。遊技制御タイマ割込み処理のような割込み処理から復帰(リターン)するときには、スタックポインタで指定されるアドレスの記憶データが復帰アドレスとして読み出される。こうして、ステップS124の処理を実行した後には、CPU505により、ROM506に記憶されている制御コードの先頭から、遊技制御の実行を開始(再開)させることができる。
図45は、スイッチ処理として、図43に示すステップS92にて実行される処理の一例を示すフローチャートである。このスイッチ処理において、CPU505は、まず、入力ポートIP0及び入力ポートIP1における入力データ(入力値)を取り込む(ステップSA01)。このとき取り込まれた入力値(取込値)は、ボートバッファに設定される(ステップSA02)。
続いて、所定のウェイト時間が経過したか否かを判定する(ステップSA03)。このとき、ウェイト時間が経過しなければ(ステップSA03;No)、ステップSA03の処理を繰り返して待機する。そして、ウェイト時間が経過すれば、再度、入力ポートIP0及び入力ポートIP1における入力値を取り込む(ステップSA04)。その後、ステップSA04にて取り込まれた入力値(取込値)と、ポートバッファに格納されている値(ポートバッファ値)との間で、ビット毎に論理積演算を行う(ステップSA05)。このときの演算結果は、改めてポートバッファに設定される(ステップSA06)。
ステップSA03〜SA06の処理により、所定のウェイト時間をおいて入力ポートIP0及び入力ポートIP1から取り込んだ2回分の入力値のうち、2回とも「1」であるビットのみが、ポートバッファにおいて「1」となる。すなわち、ウェイト時間だけ検出信号のオン状態が継続すると、ポートバッファにおいて対応するビット値が“1”になる。なお、ここでは第1始動口スイッチ22Aや第2始動口スイッチ22B、第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dからの検出信号が負論理から正論理に論理反転された後に、入力ポートIP0における所定のビット番号に入力されるものとしている。これに対して負論理の検出信号がそのまま入力ポートIP0に入力される場合には、例えばステップSA05にて論理和演算を行うことにより、2回分の入力値のうち、2回とも「0」であるビットのみが、ポートバッファにおいて「0」となるようにできる。以下同様に、検出信号が負論理であるか正論理であるかなどに応じて、論理演算は適宜変更されてもよい。
ステップSA06の処理に続いて、前回ポートバッファに格納されている値(前回ポートバッファ値)と、ポートバッファ値との間で、ビット毎に排他的論理和演算を行う(ステップSA07)。この演算処理において、前回(例えば2ms前)におけるスイッチオン/オフの判定結果と、今回判定されたスイッチオン/オフの判定結果とが異なっているスイッチに対応したビットが「1」になる。ステップSA07での演算結果は、ポートバッファ値との間で、ビット毎の論理積演算に用いられる(ステップSA08)。このときの演算結果は、スイッチオンバッファに設定される(ステップSA09)。これにより、ステップSA07における排他的論理和演算で前回の判定結果と今回の判定結果とが異なっているスイッチに対応したビットのうち、今回オンと判定されたスイッチに対応したビットのみが「1」として残る。
その後、ポートバッファ値を前回ポートバッファに設定して次回の処理に備えるとともに(ステップSA10)、スイッチ異常チェック処理を実行してから(ステップSA11)、スイッチ処理を終了する。こうしたスイッチ処理によって、所定期間(ウェイト時間が経過する期間)継続してオン状態であったスイッチのうち、前回(例えば2ms前)のスイッチオン/オフの判定結果がオフであったスイッチ、すなわち、オフ状態からオン状態に変化したスイッチに対応したビットが、スイッチオンバッファにおいて「1」に設定される。
図46は、図45のステップSA11にて実行されるスイッチ異常チェック処理の一例を示すフローチャートである。このスイッチ異常チェック処理において、CPU505は、まず、入力ポートIP1に対応するスイッチオンバッファの値(スイッチオンバッファ値)を読み出す(ステップSA21)。
ステップSA21にて読み出されたスイッチオンバッファ値に基づいて、第1始動口スイッチ22Aがオンであるか否かを判定する(ステップSA22)。例えば、ステップSA22の処理では、ステップSA21の処理で読み出したスイッチオンバッファ値において、第1始動口スイッチ22Aに対応するビット番号[0]のビット値が“1”であるか否かをチェックする。これにより、第1始動入賞口を通過(進入)した遊技球を検出する第1始動口スイッチ22A(近接スイッチ)からの検出信号がオン状態となっているか否かを判定する。
ステップSA22にて第1始動口スイッチ22Aがオンであるときには(ステップSA22;Yes)、例えば遊技制御カウンタ設定部594などに設けられた第1スイッチ用カウンタの格納値である第1スイッチ用カウント値を1加算する(ステップSA23)。
ステップSA22にて第1始動口スイッチ22Aがオフであるときや(ステップSA22;No)、ステップSA23の処理を実行した後には、ステップSA21にて読み出されたスイッチオンバッファ値に基づいて、第1入賞確認スイッチ22Cがオンであるか否かを判定する(ステップSA24)。例えば、ステップSA24の処理では、ステップSA21の処理で読み出したスイッチオンバッファ値において、第1入賞確認スイッチ22Cに対応するビット番号[2]のビット値が“1”であるか否かをチェックする。これにより、第1始動入賞口内の球経路にて第1始動口スイッチ22Aの下流に設けられた第1入賞確認スイッチ22C(フォトセンサ)からの検出信号がオン状態となっているか否かを判定する。
ステップSA24にて第1入賞確認スイッチ22Cがオンであるときには(ステップSA24;Yes)、第1スイッチ用カウント値を1減算する(ステップSA25)。こうして、第1スイッチ用カウンタには、第1始動口スイッチ22Aにより検出された遊技球の個数と、第1入賞確認スイッチ22Cにより検出された遊技球の個数との差を示すカウント値が設定される。
ステップSA24にて第1入賞確認スイッチ22Cがオフであるときや(ステップSA24;No)、ステップSA25の処理を実行した後には、第1スイッチ用カウント値が予め定められた正常範囲の範囲外であるか否かを判定する(ステップSA26)。第1スイッチ用カウント値の正常範囲は、第1始動口スイッチ22Aにより検出された遊技球の個数と、第1入賞確認スイッチ22Cにより検出された遊技球の個数との差における許容範囲を示し、例えば「10」などの値が予め定められていればよい。また、第1スイッチ用カウント値の正常範囲は、例えば「10」といった上限値を示すものだけでなく、例えば「−10」といった下限値を示すものを含んでいてもよい。あるいは、第1スイッチ用カウント値のデフォルト値として「10」を設定するとともに、正常範囲の上限値を「20」とし下限値を「0」とするように設定してもよい。
ステップSA26にて第1スイッチ用カウント値が正常範囲の範囲内であるときには(ステップSA26;No)、ステップSA21にて読み出されたスイッチオンバッファ値に基づいて、第2始動口スイッチ22Bがオンであるか否かを判定する(ステップSA27)。例えば、ステップSA27の処理では、ステップSA21の処理で読み出したスイッチオンバッファ値において、第2始動口スイッチ22Bに対応するビット番号[1]のビット値が“1”であるか否かをチェックする。これにより、第2始動入賞口を通過(進入)した遊技球を検出する第2始動口スイッチ22B(近接スイッチ)からの検出信号がオン状態となっているか否かを判定する。
ステップSA27にて第2始動口スイッチ22Bがオンであるときには(ステップSA27;Yes)、例えば遊技制御カウンタ設定部594などに設けられた第2スイッチ用カウンタの格納値である第2スイッチ用カウント値を1加算する(ステップSA28)。
ステップSA27にて第2始動口スイッチ22Bがオフであるときや(ステップSA27;No)、ステップSA28の処理を実行した後には、ステップSA21にて読み出されたスイッチオンバッファ値に基づいて、第2入賞確認スイッチ22Dがオンであるか否かを判定する(ステップSA29)。例えば、ステップSA29の処理では、ステップSA21の処理で読み出したスイッチオンバッファ値において、第2入賞確認スイッチ22Dに対応するビット番号[3]のビット値が“1”であるか否かをチェックする。これにより、第2始動入賞口内の球経路にて第2始動口スイッチ22Bの下流に設けられた第2入賞確認スイッチ22D(フォトセンサ)からの検出信号がオン状態となっているか否かを判定する。
ステップSA29にて第2入賞確認スイッチ22Dがオンであるときには(ステップSA29;Yes)、第2スイッチ用カウント値を1減算する(ステップSA30)。こうして、第2スイッチ用カウンタには、第2始動口スイッチ22Bにより検出された遊技球の個数と、第2入賞確認スイッチ22Dにより検出された遊技球の個数との差を示すカウント値が設定される。
ステップSA29にて第2入賞確認スイッチ22Dがオフであるときや(ステップSA29;No)、ステップSA30の処理を実行した後には、第2スイッチ用カウント値が予め定められた正常範囲の範囲外であるか否かを判定する(ステップSA31)。第2スイッチ用カウント値の正常範囲は、第2始動口スイッチ22Bにより検出された遊技球の個数と、第2入賞確認スイッチ22Dにより検出された遊技球の個数との差における許容範囲を示し、例えば「10」などの値が予め定められていればよい。また、第2スイッチ用カウント値の正常範囲は、例えば「10」といった上限値を示すものだけでなく、例えば「−10」といった下限値を示すものを含んでいてもよい。あるいは、第2スイッチ用カウント値のデフォルト値として「10」を設定するとともに、正常範囲の上限値を「20」とし下限値を「0」とするように設定してもよい。
ステップSA31にて第2スイッチ用カウント値が正常範囲の範囲内であるときには(ステップSA31;No)、スイッチ異常チェック処理を終了する。これに対して、ステップSA26やステップSA31にて正常範囲の範囲外であると判定されたときには(ステップSA26;No、又はステップSA31;No)、異常始動入賞時に対応して予め定められたセキュリティ信号出力時間(例えば4分間)を設定する(ステップSA32)。例えば、ステップSA32の処理では、遊技制御タイマ設定部593などに設けられたセキュリティ信号情報タイマに、セキュリティ信号出力時間に対応するタイマ初期値が設定されればよい。こうして、ステップSA32にてセキュリティ信号出力時間が設定されたことに基づいて、図43のステップS94や図52に示す情報出力処理が実行されることにより、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたときに、セキュリティ信号が所定時間(例えば4分間)外部出力される。
なお、ステップSA32の処理が実行されるときに、既にセキュリティ信号出力時間の設定が行われている場合には、既に設定されているセキュリティ信号出力時間(残り時間)を、異常始動入賞時のセキュリティ信号出力時間(例えば4分間)に更新(上書き)するように設定されればよい。これにより、セキュリティ信号の外部出力中に新たな異常入賞の発生が検出された場合には、セキュリティ信号の外部出力期間が延長され、新たに異常入賞の発生が検出された時点から更に所定時間(例えば4分間)セキュリティ信号の外部出力が継続することになる。
ステップSA32の処理に続いて、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたことに対応して、異常入賞となった遊技球の検出を無効とするための設定が行われる。すなわち、スイッチオンバッファにおいて、異常入賞が検出された始動入賞口(第1始動入賞口や第2始動入賞口)に対応するビット番号をクリアして、そのビット値を“0”に初期化する(ステップSA33)。一例として、ステップSA26にて第1スイッチ用カウント値が正常範囲外と判定された場合には、スイッチオンバッファにおけるビット番号[0]及び[2]をクリアして、これらのビット値を“0”に初期化する。他の一例として、ステップSA31にて第2スイッチ用カウント値が正常範囲外と判定された場合には、スイッチオンバッファにおけるビット番号[1]及び[3]をクリアして、これらのビット値を“0”に初期化する。
ステップSA33の処理により、異常入賞となった遊技球の検出が無効化され、所定個数(例えば3個)の遊技球を賞球として払い出すことや、始動条件が成立したことに基づく特図ゲームの実行、ホールコンピュータなどの外部装置に対する始動口信号の出力などが、行われないように制限される。なお、所定個数の賞球の払出し、始動条件の成立に基づく特図ゲーム、外部装置に対する始動口信号の出力のうち、少なくともいずれか1つ、あるいは2つ以上を組み合わせたものが行われるものであってもよい。
ステップSA33の処理を実行した後には、例えば遊技制御フラグ設定部592などに設けられた異常入賞報知フラグをオン状態にセットする(ステップSA34)。こうして、異常入賞報知フラグがオンとなったことに基づいて、図43のステップS93や図50に示すメイン側エラー処理が実行されることなどにより、主基板11から演出制御基板12に対して異常入賞報知コマンドが送信される。なお、第1始動入賞口と第2始動入賞口のうち、いずれの始動入賞口において異常入賞の発生が検出されたかに応じて、EXTデータの設定などが異なる異常入賞報知コマンドが送信されるように、異常入賞報知フラグがセットされてもよい。一例として、第1始動入賞口と第2始動入賞口のそれぞれに対応した2つの異常入賞報知フラグを設け、ステップSA26にて第1スイッチ用カウント値が正常範囲外と判定された場合であるか、ステップSA31にて第2スイッチ用カウント値が正常範囲外と判定された場合であるかに応じて、異なる異常入賞報知フラグをオン状態にセットすればよい。
ステップSA34の処理に続いて、異常入賞の発生が検出された始動入賞口に対応した乱数値レジスタを読み出して乱数ラッチフラグデータのビット値を“0”にクリアしてから(ステップSA35)、スイッチ異常チェック処理を終了する。例えば、ステップSA26にて第1スイッチ用カウント値が正常範囲外と判定されたときには、乱数値レジスタR1Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM0のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする。また、ステップSA31にて第2スイッチ用カウント値が正常範囲外と判定されたときには、乱数値レジスタR2Dの読み出しを行うことにより、乱数ラッチフラグデータRDFM1のビット値を“0”にクリアして、対応する乱数ラッチフラグをオフ状態とする。こうしたステップSA35の処理により、乱数ラッチフラグがオフ状態とされて乱数値レジスタに新たな数値データの格納が許容された状態に設定できる。なお、ステップSA35の処理により乱数値レジスタから読み出された数値データは、始動条件の成立に基づく特図ゲームが異常入賞のために実行されないことに対応して、特図表示結果を「大当り」として大当り遊技状態に制御するか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。
また、第1始動入賞口や第2始動入賞口における異常入賞の発生に加えて、大入賞口における異常入賞の発生や、異常磁気エラー、異常電波エラー、通信エラーを検出した場合にもセキュリティ信号を出力するように構成する場合には、それぞれエラーの種類ごとに異なる異常報知コマンドを演出制御基板12に対して送信するようにしてもよい。そして、演出制御基板12の側において、画像表示装置5の表示領域などに、エラーの種類ごとに異なる異常報知画面を表示させることなどにより異常の発生を報知できるようにしてもよい。
図47及び図48は、第1始動口スイッチ22Aと第1入賞確認スイッチ22Cによる検出動作例を示している。このうち、図47は、正常時における検出動作例を示しており、図48は、異常入賞につながる不正行為が行われているときの検出動作例を示している。
第1始動口スイッチ22A(近接スイッチ)は、第1始動入賞口を通過(進入)する遊技球を検出したときに、検出信号の出力がローレベルとなってオン状態となる。第1入賞確認スイッチ22C(フォトセンサ)も、遊技球を検出したときに、検出信号の出力がローレベルとなってオン状態となる。スイッチが正常に動作し、かつ、不正行為(スイッチからの検出信号を不正にオン状態にしたり、オン状態の検出信号を不正にオフ状態にしたりする行為)を受けていない場合には、第1始動口スイッチ22Aが第1入賞確認スイッチ22Cよりも上流側に配置されていることから、まず、第1始動口スイッチ22A(近接スイッチ)がオン状態となり、続いて第1入賞確認スイッチ22C(フォトセンサ)がオン状態となる。図46に示すステップSA22にて第1始動口スイッチ22Aがオンであると判定されたときには、ステップSA23にて第1スイッチ用カウント値が1加算される。また、図46に示すステップSA24にて第1入賞確認スイッチ22Cがオンであると判定されたときには、ステップSA25にて第1スイッチ用カウント値が1減算される。したがって、遊技球が第1始動入賞口を通過(進入)するときに、第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとがともにオン状態となり、正常な動作状態であれば、第1スイッチ用カウント値の更新タイミングにずれ(遊技球の通過タイミングのずれに相当)があるものの、図47に示すように、第1スイッチ用カウント値を「0」に保たれる。
これに対して、例えば電波による不正行為が行われたときには、図48に示すように、第1始動口スイッチ22Aが1回オン状態となるべき期間にて、電波により不正にオフ状態を割り込ませ、あたかも第1始動口スイッチ22Aが2回オン状態となったかのように認識されるおそれがある。こうして第1始動口スイッチ22Aが2回にわたりオン状態になったと誤認識された場合には、図46に示すステップSA23の処理が2回実行されることにより、第1スイッチ用カウント値が合計で「2」加算される。一方、下流側に配置された第1入賞確認スイッチ22Cは、電磁式である第1始動口スイッチ22Aとは検出方式が異なり、光学式のフォトセンサが用いられている。そのため、電波による不正行為の影響を受けない。そして、図48に示すように、第1始動口スイッチ22Aで1個の遊技球を検出した後に、少し遅れて第1入賞確認スイッチ22Cの側で遊技球を検出したときに、正常に第1入賞確認スイッチ22Cが1回だけオン状態となり、図46に示すステップSA25の処理が1回実行されることにより、第1スイッチ用カウント値が1減算される。こうして、電波による不正行為が行われた場合には、検出方式が異なる第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとの間で検出数に差が生じる。これにより、図48に示すように、第1スイッチ用カウント値が「0」に保たれず、第1スイッチ用カウント値が正常範囲外(例えば「10」以上など)となったことに基づいて、第1始動入賞口における異常入賞の発生を検出することができる。
なお、不正に光を照射する行為などによって同様の不正行為が行われる可能性もある。この場合、第1入賞確認スイッチ22Cが1回オン状態となるはずの期間に、光により不正にオフ状態を割り込ませ、あたかも第1入賞確認スイッチ22Cが2回オン状態となったかのように認識されるおそれがある。この場合、電磁式の第1始動口スイッチ22Aの側では光による不正行為の影響を受けず遊技球を正常に検出できる。これにより、同様に第1スイッチ用カウント値が「0」に保たれず、第1スイッチ用カウント値が正常範囲外(例えば「−10」以下など)となったことに基づいて、第1始動入賞口における異常入賞の発生を検出することができる。
図47及び図48に示す検出動作例では、第1始動口スイッチ22Aや第1入賞確認スイッチ22Cにおける検出信号の出力が負論理となっている。これに対して、検出信号の出力は正論理となるように構成してもよい。例えば、第1始動口スイッチ22Aや第1入賞確認スイッチ22Cの出力レベルを、それぞれ対応する入力ドライバ回路で論理反転してから遊技制御用マイクロコンピュータ100に入力するように構成すればよい。
第1スイッチ用カウント値や第2スイッチ用カウント値の正常範囲として、例えば「10」以上になったことといった、一定の許容幅をもった上限値や下限値を設定しておく。このような設定により、例えば第1始動入賞口や第2始動入賞口で遊技球が球詰まりを起こした場合などを不正行為による異常入賞と判定することを防止できる。
図49は、第1始動入賞口の内部で球詰まりを起こした状態を示している。図49に示すように、第1始動入賞口の内部にて、第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとは、上下に一定の距離をおいて配置される。そのため、第1始動入賞口を通過(進入)した遊技球は、まず第1始動口スイッチ22Aで検出された後、少し時間をおいて下流側の第1入賞確認スイッチ22Cで検出される。図49に示すように、第1始動入賞口の内部において球詰まりを起こした状態では、第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとの物理的な距離差によって、その検出数に差が生じた状態となる。例えば、図49に示すように、第1始動口スイッチ22Aと入賞確認スイッチ22Cとの間で最大3個の検出誤差が生じるものとする。この場合、第1スイッチ用カウント値が、球詰まり時における第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとの検出誤差3個に対して十分余裕をもたせた所定値(例えば「10」など)以上となったことに基づいて異常入賞が発生したと判定する。これにより、第1始動入賞口の内部で遊技球が球詰まりを起こした状態などを不正行為による異常入賞と判定することを防止できる。
第1スイッチ用カウント値の正常範囲は、球詰まり時における第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとの検出誤差(例えば3個)に対して十分余裕をもたせた所定値(例えば「10」など)が上限値や下限値となるように設定している。これに対して、例えば少なくとも球詰まり時における第1始動口スイッチ22Aと第1入賞確認スイッチ22Cとの検出誤差より多い数が正常範囲外と判定されるように、例えば「4」などの値が上限値や下限値として設定されてもよい。
第2始動入賞口についても、第1始動入賞口の場合と同様に、第2始動口スイッチ22Bと第2入賞確認スイッチ22Dとの検出誤差に基づいて、異常入賞の発生が検出されればよい。また、第1スイッチ用カウンタと第2スイッチ用カウンタを共通のカウンタとして構成した場合には、第1始動入賞口と第2始動入賞口の双方における球詰まり時における検出誤差を合計した数より多い数となったときに、正常範囲外と判定されるようにすればよい。さらに、第1始動入賞口と第2始動入賞口に加えて大入賞口における異常入賞の発生を検出可能に構成した場合に、各入賞口における球詰まり時における検出誤差がいずれも3個であれば、最大3個×3=9個までの検出誤差であれば、電波を用いた不正行為によらなくても、入賞口における球詰まりによって生じる可能性がある。この場合には、共通のスイッチ用カウンタの値が少なくとも「10」以上となったときに正常範囲外であると判定すれば、異常入賞の発生が誤検出されることを防止できる。
図50は、メイン側エラー処理として、図43のステップS93にて実行される処理の一例を示すフローチャートである。このメイン側エラー処理において、CPU505は、まず、所定の報知禁止期間であるか否かを判定する(ステップS191)。ここで、報知禁止期間は、例えばパチンコ遊技機1への電力供給が開始されたことに対応した初期報知が開始された場合に異常入賞の報知を禁止する期間として、予め定められたものであればよい。
ステップS191にて報知禁止期間ではないと判定された場合には(ステップS191;No)、遊技制御フラグ設定部592に設けられた異常入賞報知フラグがオンであるか否かを判定する(ステップS192)。そして、異常入賞報知フラグがオンであるときには(ステップS192;Yes)、異常入賞フラグをクリアしてオフ状態にした後(ステップS193)、異常入賞報知コマンドを送信するための設定を行う(ステップS194)。例えば、ステップS194の処理では、ROM506に予め格納されている異常入賞報知コマンドテーブルの記憶アドレス(先頭アドレス)を、送信コマンドバッファに含まれる演出制御コマンドバッファにて、送信コマンドポインタにより指定されたバッファ領域にセットする。こうして設定された異常入賞報知コマンドは、例えばメイン側エラー処理が終了した後に図43に示すステップS99のメイン側通信制御処理が実行されることなどにより、主基板11から演出制御基板12に対して伝送される。
ステップS191にて報知禁止期間であるときや(ステップS191;Yes)、ステップS192にて異常入賞報知フラグがオフであるとき(ステップS192;No)、あるいは、ステップS194の処理を実行した後には、その他のエラーに対応する設定を行ってから、メイン側エラー処理を終了する。
図51は、主基板11や払出制御基板15からターミナル基板を介して外部出力される各種信号を示している。図51に示すように、主基板11に搭載された遊技制御用マイクロコンピュータ100からターミナル基板に対しては、始動口信号、図柄確定回数1信号、大当り1信号、大当り2信号、大当り3信号、時短信号、およびセキュリティ信号が、図43のステップS94や図52に示す情報出力処理により出力される。また、払出制御基板15に搭載された払出制御用マイクロコンピュータ150から、主基板11を経由して、ターミナル基板に対して、賞球信号1および遊技機エラー状態信号が出力される。
始動口信号は、第1始動入賞口や第2始動入賞口への入賞個数を通知するための信号である。図柄確定回数1信号は、特別図柄の変動回数を通知するための信号である。大当り1信号は、大当り遊技中(特別可変入賞球装置7の動作中)であることを通知するための信号である。大当り2信号は、大当り遊技中(特別可変入賞球装置7の動作中)、または特別図柄の可変表示時間(特図変動時間)を通常よりも短縮する時間短縮制御が作動中(時短状態中)であることを通知するための信号である。大当り3信号は、15ラウンド大当り状態の制御中(15ラウンド大当り中)であることを通知するための信号である。時短信号は、特別図柄の可変表示時間(特図変動時間)を通常よりも短縮する時間短縮制御が作動中(時短状態中)であることを通知するための信号である。
セキュリティ信号は、パチンコ遊技機1におけるセキュリティ状態を示す信号である。例えば、第1始動口スイッチ22Aや第2始動口スイッチ22Bの検出結果と第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dの検出結果とに基づいて、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出された場合に、セキュリティ信号が所定時間(例えば4分間)ホールコンピュータなどの外部装置に出力される。また、パチンコ遊技機1への電源投入が行われて初期化処理が実行された場合にも、セキュリティ信号が所定時間(例えば30秒間)ホールコンピュータなどの外部装置に出力される。
賞球信号1は、賞球払出を1個検出するごとに出力される信号である。また、遊技機エラー状態信号は、パチンコ遊技機1がエラー状態(例えば球切れエラー状態、又は満タンエラー状態)であることを示す信号である。なお、賞球払出を1個検出するごとに賞球信号1を外部出力するのではなく、賞球払出を所定個(例えば、10個)検出するごとに何らかの賞球信号を出力するようにしてもよい。
図52は、図43のステップS94にて実行される情報出力処理の一例を示すフローチャートである。この情報出力処理において、CPU505は、まず、セキュリティ信号出力時間の設定があるか否かを判定する(ステップSB01)。例えば、ステップSB01の処理では、セキュリティ信号情報タイマの格納値であるセキュリティ信号情報タイマ値が「0」であるか否かを判定し、「0」以外である場合には、セキュリティ信号出力時間の設定(残り時間の設定)があると判定すればよい。
ステップSB01にてセキュリティ信号出力時間の設定があるときには(ステップSB01;Yes)、例えばセキュリティ信号情報タイマ値を1減算することなどにより、オン状態のセキュリティ信号を出力する残り時間を更新する(ステップSB02)。続いて、セキュリティ信号を外部出力するための設定を行う(ステップSB03)。ステップSB03の処理では、例えば図26(D)に示す出力ポートOP1のビット番号[7]におけるビット値を“1”に設定することにより、ターミナル基板を介してオン状態のセキュリティ信号をホールコンピュータなどの外部装置へと外部出力させる。なお、ステップSB01にてセキュリティ信号出力時間の設定がないときには、ステップSB03の処理が実行されないために、セキュリティ信号はオフ状態となる。
こうしたステップSB01〜SB03の処理により、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されてから異常始動入賞時のセキュリティ信号出力時間(例えば4分間)が経過するまで、又はパチンコ遊技機1への電力供給開始時に初期化処理が実行されてから初期化処理時のセキュリティ信号出力時間(例えば30秒間)が経過するまで、出力ポートIP1のビット番号[7]や、ターミナル基板に設けられた外部出力用コネクタに含まれる共通の出力端子を用いて、セキュリティ信号が外部出力される。なお、セキュリティ信号の外部出力中に新たな異常入賞の発生が検出されたときには、最後に異常入賞の発生が検出されてから異常始動入賞時のセキュリティ信号出力時間(例えば4分間)が経過するまで、セキュリティ信号の出力が継続される。
ステップSB01にてセキュリティ信号出力時間の設定がないときや(ステップSB01;No)、ステップSB03の処理を実行した後には、その他の情報信号(例えば始動口信号や図柄確定回数1信号、大当り1信号、大当り2信号、大当り3信号、時短信号など)を主基板11からターミナル基板を介して外部出力させるための設定を行ってから(ステップSB04)、情報出力処理を終了する。
図53は、セキュリティ信号の出力タイミングを示している。パチンコ遊技機1への電力供給が開始されたときには、クリアスイッチ304に対する操作などに基づいて初期化処理が実行されたことに基づいて(例えば図40に示すステップS27におけるYesの判定に基づきステップS31、S32の処理が実行される部分など)、ステップS32Aの処理にて初期化処理時のセキュリティ信号出力時間(例えば30秒間)が設定される。その後、図52に示すステップSB01〜SB03の処理が実行されて、図53(A)に示すように、所定の出力端子からホールコンピュータなどの外部装置に対してオン状態のセキュリティ信号が外部出力される。また、パチンコ遊技機1への電力供給が開始された後、第1始動口スイッチ22Aや第2始動口スイッチ22Bの検出結果と第1入賞確認スイッチ22Cや第2入賞確認スイッチ22Dの検出結果とに基づいて、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたときには、図46に示すステップSA32の処理にて異常始動入賞時のセキュリティ信号出力時間(例えば4分間)が設定される。その後、図52に示すステップSB01〜SB03の処理が実行されて、図53(A)に示すように、初期化処理時と共通の出力端子からホールコンピュータなどの外部装置に対してオン状態のセキュリティ信号が外部出力される。こうして、パチンコ遊技機1への電源投入時に初期化処理が実行されたときと、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたときに、共通の出力端子からセキュリティ信号が外部出力される。
セキュリティ信号の外部出力中に新たに第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたときには、実質的にセキュリティ信号の出力時間が延長され、最後に異常入賞の発生が検出された時点から異常始動入賞時のセキュリティ信号出力時間(例えば4分間)が経過するまで、セキュリティ信号の外部出力が継続される。
一例として、図53(B)に示すように、パチンコ遊技機1の電源投入時に初期化処理が実行されたことによるセキュリティ信号の外部出力中に、その出力時間である30秒間が経過する前であっても、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出される可能性がある。この場合、異常入賞の発生が検出されたことに基づいて、図46に示すステップSA32の処理にて異常始動入賞時のセキュリティ信号出力時間(例えば4分間)に更新(上書き)され、そのままセキュリティ信号の外部出力が継続される。そして、異常入賞の発生が検出された時点から更新後のセキュリティ信号出力時間(例えば4分間)が経過するまでセキュリティ信号の外部出力が継続されることにより、実質的にセキュリティ信号の出力が延長されることになる。
他の一例として、図53(C)に示すように、異常入賞の発生が検出されたことによるセキュリティ信号の外部出力中に、その出力時間である4分間が経過する前であっても、第1始動入賞口や第2始動入賞口における新たな異常入賞の発生が検出される可能性がある。この場合、新たな異常入賞の発生が検出されたことに基づいて、そのままセキュリティ信号の外部出力が継続される。そして、新たな異常入賞の発生が検出された時点から更新後のセキュリティ信号出力時間(例えば4分間)が経過するまでセキュリティ信号の外部出力が継続されることにより、実質的にセキュリティ信号の出力が延長されることになる。
こうして、出力中のセキュリティ信号の出力時間をそのまま延長することにより、セキュリティ信号の出力が終了してから改めて次のセキュリティ信号の出力を開始する場合に比べて、セキュリティ信号の出力処理にかかる処理負担を軽減するとともに、セキュリティ信号の出力処理用のプログラム容量を低減することができる。ここで、セキュリティ信号の出力を終了してから改めて次のセキュリティ信号の出力を開始させる場合には、セキュリティ信号の出力を終了した後、次のセキュリティ信号の出力を開始するまでのインターバル時間を計測する処理などが必要となり、処理負担が増加するとともにプログラム容量も増加することになる。これに対して、新たな異常入賞の発生が検出されたときには、セキュリティ信号を外部出力する残り時間を異常始動入賞時のセキュリティ信号出力時間に更新(上書き)すれば、そのままセキュリティ信号の外部出力を継続させることができ、処理負担の増加やプログラム容量の増加を防止することができる。
なお、初期化処理時や異常始動入賞時のセキュリティ信号出力時間は、任意に設定可能である。すなわち、初期化処理が実行された場合であるか異常入賞の発生が検出された場合であるかを認識可能に、セキュリティ信号出力時間を異ならせるようにすれば、30秒間や4分間などの期間は任意に変更が可能である。
図54は、図40のステップS36や図43のステップS95にて実行される遊技用乱数更新処理の一例を示すフローチャートである。遊技用乱数更新処理では、遊技用乱数となる図15に示す乱数値MR1〜MR6のうち、乱数値MR2〜MR5を示す数値データを順次に更新対象とする乱数値に設定する。ここで、例えば乱数値MR2〜MR5については、加算値や加算判定値、最大判定値が予め定められていればよい。一例として、大当り種別決定用の乱数値MR2に対応して、加算値が「1」、最大判定値が「100」に定められていればよい。変動パターン種別決定用の乱数値MR3に対応して、加算値の範囲が「0」〜「7」、加算判定値が「8」、最大判定値が「252」に定められていればよい。変動パターン決定用の乱数値MR4に対応して、加算値の範囲が「0」〜「7」、加算判定値が「8」、最大判定値が「998」に定められていればよい。普図表示結果決定用の乱数値MR5に対応して、加算値の範囲が「0」〜「2」、加算判定値が「3」、最小判定値が「3」、最大判定値が「14」に定められていればよい。
加算値は、1回のタイマ割込みなどに対応して各乱数値に加算する値であり、その値は遊技用乱数更新処理が実行されるごとに異ならせることができればよい。例えば、加算値は、加算値決定用の乱数値となる数値データなどに基づいて求められるもので、一時的な変数として加算値を記憶するための領域がRAM507などに設けられていればよい。加算判定値は、加算値決定用の乱数値との比較により、各乱数値に対応した加算値を取得するために用いられる値である。より具体的には、加算値決定用の乱数値が各乱数値に対応した加算値の初期値として読み出された後、現在の加算値が加算判定値よりも小さくなったと判定されるまで、現在の加算値から加算判定値を減算した値を、新たな加算値として更新していく。なお、大当り種別決定用の乱数値MR2については、加算値が「1」に固定されていることから、加算判定値の設定は不要である。これに対して、大当り種別決定用の乱数値MR2についても、加算値が一定範囲の値に定められる場合には、加算判定値の設定も予め行われていればよい。最大判定値や最小判定値は、最終的に求められた加算値を加算したことによる更新後の各乱数値が取り得る値の範囲内であるかを判定するために用いられる値である。例えば、更新後の各乱数値が対応する最大判定値以上であるときには、更新後の乱数値から最大判定値を減算した値を、新たな乱数値として設定できる。また、更新後の普図表示結果決定用の乱数値MR5から最大判定値を減算した値が対応する最小判定値「3」未満であるときには、更新後の乱数値に最小判定値を加算した値を、新たな乱数値として設定できる。
図54に示す遊技用乱数更新処理において、CPU505は、まず、大当り種別決定用の乱数値MR2を処理対象に設定する(ステップSB11)。その後、加算値の設定を行う(ステップSB12)。このとき、大当り種別決定用の乱数値MR2が処理対象である場合には、加算値を「1」に設定すればよい。また、乱数値MR2以外の乱数値MR3〜乱数値MR5のいずれかが処理対象である場合には、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタなどから、加算値決定用の乱数値MR6を示す数値データを抽出する。そして、その読出値が更新対象となる乱数値ごとに定められた加算判定値未満であるか否かを判定する。そして、加算判定値未満であれば、読出値を加算値に設定する。これに対して、加算判定値以上であれば、読出値から加算判定値を減算した値を、加算値に設定する。
ステップSB12の処理に続いて、更新の処理対象となる乱数値に加算値を加算して、加算後乱数値とする(ステップSB13)。このときには、加算後乱数値が、更新対象となる乱数値ごとに定められた最大判定値未満であるか否かを判定する(ステップSB14)。最大判定値未満であれば(ステップSB14;Yes)、加算後乱数値を更新後乱数値に設定する(ステップSB15)。これに対して、最大判定値以上であれば(ステップSB14;No)、加算後乱数値から最大判定値を減算した値を、更新後乱数値に設定する(ステップSB16)。
ステップSB15、SB16の処理のいずれかを実行した後には、更新の処理対象が普図表示結果決定用の乱数値MR5であるか否かを判定する(ステップSB17)。そして、処理対象が乱数値MR5以外であれば(ステップSB17;No)、ランダムカウンタにて更新の処理対象となる乱数値を格納する所定領域に、更新後乱数値を設定する(ステップSB18)。続いて、次の乱数値を更新の処理対象となる乱数値に設定してから、ステップSB12の処理に戻る。この実施の形態では、乱数値MR2〜乱数値MR5について、順次に更新の処理対象となる乱数値に設定することにより、遊技用乱数更新処理が1回実行されるごとに、乱数値MR2〜乱数値MR5の全部が更新されるようにする。
ステップSB17にて処理対象が乱数値MR5であるときには(ステップSB17;Yes)、更新後乱数値が最小判定値未満であるか否かを判定する(ステップSB20)。このとき、最小判定値未満であれば(ステップSB20;Yes)、更新後乱数値に最小判定値を加算した値を、加算後乱数値に設定する。そして、ランダムカウンタにて更新の処理対象となる乱数値MR5を格納する所定領域に、加算後乱数値を設定してから(ステップSB22)、遊技用乱数更新処理を終了する。
ステップSB20にて乱数値MR5が最小判定値以上であれば(ステップSB20;Yes)、ランダムカウンタにて更新の処理対象となる乱数値MR5を格納する所定領域に、更新後乱数値を設定してから(ステップSB23)、遊技用乱数更新処理を終了する。
図55は、特別図柄プロセス処理として、図43に示すステップS96にて実行される処理の一例を示すフローチャートである。この特別図柄プロセス処理において、CPU505は、まず、始動入賞判定処理を実行する(ステップS131)。図56は、ステップS131にて実行される始動入賞判定処理の一例を示すフローチャートである。
図56に示す始動入賞判定処理を開始すると、CPU505は、まず、第1始動口スイッチ22Aにおける遊技球の検出状態をチェックする(ステップS201)。一例として、ステップS201の処理では、スイッチオンバッファにおける格納値をロードして、第1始動口スイッチ22Aと対応付けられたビット番号[0]のビット値が“0”であるか“1”であるかを特定する。このとき、チェックしたビット値が“0”であれば第1始動口スイッチ22Aは遊技球を検出しておらずオフ状態であることを示す一方、“1”であれば第1始動口スイッチ22Aは遊技球を検出したことによりオン状態であることを示すものであればよい。なお、第1始動口スイッチ22Aからの検出信号が負論理のままスイッチオンバッファの格納値に反映される場合には、チェックしたビット値が“0”でれば第1始動口スイッチ22Aは遊技球を検出したことによりオン状態であることを示す一方、“1”であれば第1始動口スイッチ22Aは遊技球を検出しておらずオフ状態であることを示すものであればよい。ステップS201の処理に続いて、第1始動口入賞テーブル136Aを選択して、使用テーブルにセットする(ステップS202)。一例として、ステップS202の処理では、ROM506における第1始動口入賞テーブル136Aの記憶アドレス(先頭アドレス)を、所定のテーブルポインタに格納することで、第1始動口入賞テーブル136Aを使用テーブルとして参照可能に設定すればよい。以下、各種のテーブルを選択して使用テーブルにセットする処理において、同様の設定が行われればよい。
ステップS202の処理に続いて、ステップS201でのチェック結果に基づいて、第1始動口スイッチ22Aがオン状態であるか否かを判定する(ステップS203)。このとき、第1始動口スイッチ22Aがオン状態であれば(ステップS203;Yes)、所定の乱数値設定処理を実行するとともに(ステップS204)、入賞時乱数値判定処理を実行する(ステップS205)。
ステップS203にて第1始動口スイッチ22Aがオフ状態であると判定されたときや(ステップS203;No)、ステップS205にて入賞時乱数値判定処理を実行した後には、第2始動口スイッチ22Bにおける遊技球の検出状態をチェックする(ステップS206)。ステップS206の処理は、ステップS201の処理を第2始動口スイッチ22Bに適合させたものであればよい。続いて、第2始動口入賞テーブル136Bを選択して、使用テーブルにセットする(ステップS207)。さらに、ステップS206でのチェック結果に基づいて、第2始動口スイッチ22Bがオン状態であるか否かを判定する(ステップS208)。そして、第2始動口スイッチ22Bがオン状態であれば(ステップS208;Yes)、ステップS204と同様に乱数値設定処理を実行するとともに(ステップS209)、ステップS205と同様に入賞時乱数値判定を実行してから(ステップS210)、始動入賞判定処理を終了する。これに対して、ステップS208にて第2始動口スイッチ22Bがオフ状態であると判定されたときには、ステップS209の乱数値設定処理やステップS210の入賞時乱数値判定処理を実行せずに、始動入賞判定処理を終了する。
ステップS204やステップS209において実行される乱数値設定処理は、共通の処理ルーチンとして、予め用意されたユーザプログラム(ゲーム制御用の遊技制御処理プログラム)に含まれる制御コードにより実現される処理であればよい。この乱数値設定処理では、ステップS202の処理でセットされた第1始動口入賞テーブル136Aを使用するか、ステップS207の処理でセットされた第2始動口入賞テーブル136Bを使用するかに応じて、第1始動入賞口を遊技球が通過(進入)した場合に対応した各種処理と、第2始動入賞口を遊技球が通過(進入)した場合に対応した各種処理とのうち、いずれかを実行することができる。
図57は、乱数値設定処理として、図56のステップS204やステップS209にて実行される処理の一例を示すフローチャートである。この乱数値設定処理では、CPU505が乱数回路509から読み出した乱数値を示す数値データを、ソフトウェアにより加工するための演算処理などが実行される。図58は、乱数回路509から読み出した乱数値を示す数値データを、CPU505がソフトウェアにより特図表示結果決定用の乱数値MR1や加算値決定用の乱数値MR6に加工する動作の一例を示している。
図57に示す乱数値設定処理において、CPU505は、まず、遊技球が通過(進入)した始動入賞口に対応する保留記憶カウント値を読み出す(ステップS501)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、遊技制御カウンタ設定部594から第1保留記憶カウント値を読み出す一方、遊技球が第2始動入賞口を通過(進入)した場合には、遊技制御カウンタ設定部594から第2保留記憶カウント値を読み出す。このときには、例えば図56に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される第1保留記憶カウンタアドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される第2保留記憶カウンタアドレスに対応して、保留記憶カウント値の読出元となるRAM507の記憶アドレスなどを特定できればよい。
続いて、ステップS501の処理における読出値が、予め定められた上限値(例えば「4」など)以上であるか否かを判定する(ステップS502)。このとき、上限値未満であれば(ステップS502;No)、ステップS501の処理で読み出した保留記憶カウント値を1加算するように更新する(ステップS503)。また、遊技球が通過(進入)した始動入賞口に対応する特図保留記憶部における保留データの記憶位置を特定する(ステップS504)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、第1特図保留記憶部591Aにおける保留データの記憶位置を特定する一方、遊技球が第2始動入賞口を通過(進入)した場合には、第2特図保留記憶部591Bにおける保留データの記憶位置を特定する。このときには、例えば図56に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される第1特図保留記憶部アドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される第2特図保留記憶部アドレスに、ステップS501の処理などで読み出した保留記憶カウント値に対応するアドレス加算値を加算することなどにより、保留データの記憶位置となる第1特図保留記憶部591Aや第2特図保留記憶部59Bの記憶アドレスなどを特定できればよい。
ステップS504の処理を実行した後には、乱数回路509において数値データの読出元となる乱数値レジスタを特定する(ステップS505)。すなわち、遊技球が第1始動入賞口を通過(進入)した場合には、乱数値レジスタR1Dを数値データの読出元とする一方、遊技球が第2始動入賞口を通過(進入)した場合には、乱数値レジスタR2Dを数値データの読出元とする。このときには、例えば図56に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される乱数値レジスタR1Dアドレス、あるいは、ステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される乱数値レジスタR2Dアドレスに対応して、数値データの読出元となる乱数値レジスタのアドレスなどを特定できればよい。
そして、ステップS505にて特定された乱数値レジスタの格納値を示す数値データを抽出する(ステップS506)。すなわち、ステップS505の処理で乱数値レジスタR1Dが読出元とされた場合には、乱数回路509が備える乱数値レジスタR1Dとしての乱数値レジスタ559Aから、数値データを読み出して抽出する。その一方で、ステップS505の処理で乱数値レジスタR2Dが読出元とされた場合には、乱数回路509が備える乱数値レジスタR2Dとしての乱数値レジスタ559Bから、数値データを読み出して抽出する。このときには、数値データが読み出された乱数値レジスタR1Dあるいは乱数値レジスタR2Dに対応する乱数ラッチフラグがオフ状態になる。すなわち、ステップS505の処理で乱数値レジスタR1Dが読出元とされた場合には、ステップS506の処理による数値データの読み出しにより乱数ラッチフラグデータRDFM0のビット値が“1”から“0”へと更新され、乱数値レジスタR1Dと対応付けられた乱数ラッチフラグがオフ状態となる。その一方で、ステップS505の処理で乱数値レジスタR2Dが読出元とされた場合には、ステップS506の処理による数値データの読み出しにより乱数ラッチフラグデータRDFM1のビット値が“1”から“0”へと変更され、乱数値レジスタR2Dと対応付けられた乱数ラッチフラグがオフ状態となる。
ステップS506にて読み出された数値データは、CPU505などが有する16ビットの汎用レジスタに格納されればよい。例えば、図58に示すように、乱数回路509から読み出された数値データのうちで、上位1バイト(8ビット)に相当する部分は、上位バイトGR1ー1として汎用レジスタに格納されればよい。また、乱数回路509から読み出された数値データのうちで、下位1バイト(8ビット)に相当する部分は、下位バイトGR1−2として汎用レジスタに格納されればよい。なお、乱数回路509から読み出された数値データは、CPU505が有する汎用レジスタに格納されるものに限定されず、例えばRAM507の所定領域に格納されてもよい。
ステップS506の処理に続いて、CPU505の内部に設けられたリフレッシュレジスタRR1の格納値であるリフレッシュレジスタ値を、加工用の乱数値となる数値データとして読み出す(ステップS507)。そして、ステップS506にて乱数回路509から読み出した数値データや、ステップS507にてリフレッシュレジスタRR1から読み出したリフレッシュレジスタ値を用いて、乱数値を加工するための演算処理を実行する(ステップS508)。こうした演算処理の実行結果に基づいて、特図表示結果決定用の乱数値MR1を示す数値データが設定される(ステップS509)。
一例として、ステップS508の処理では、汎用レジスタにおける上位バイトGR1−1に、ステップS507にて読み出したリフレッシュレジスタ値を加算する論理和演算を実行する。このとき、汎用レジスタにおける下位バイトGR1−2については、そのままにしておく。その後、特図表示結果決定用の乱数値MR1が「0」〜「65535」の範囲の値をとる場合であれば、汎用レジスタの格納値と「FFFFH」とを論理積演算して、あるいは、汎用レジスタの格納値をそのまま出力して、演算結果や出力値をRAM507の所定領域に格納することなどにより、ステップS509の処理にて2バイト(16ビット)の乱数値MR1を示す数値データを設定する。なお、特図表示結果決定用の乱数値MR1が「0」〜「16383」の範囲の値をとる場合であれば、汎用レジスタの格納値と「7F7FH」とを論理積演算して、RAM507の所定領域に格納することなどにより、14ビットの乱数値MR1を示す数値データを設定すればよい。あるいは、任意の14ビット値が乱数値MR1として設定されるように、所定の論理値との論理積演算などが実行されればよい。また、論理積演算に代えて、あるいは論理積演算とともに、論理和演算及び排他的論理和演算その他の複数種類ある論理演算のうち、一部の論理演算を単独で、又は組み合わせて実行してもよいし、全部の論理演算を組み合わせて実行してもよい。このとき、乱数値MR1を示す数値データが格納されるRAM507の領域は、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタなどに含まれていればよい。あるいは、ステップS504の処理で特定された第1特図保留記憶部591A又は第2特図保留記憶部591Bの記憶位置に、乱数値MR1を示す数値データが保留データとして格納されるように、乱数値MR1を設定してもよい。
図58に示す加工動作例では、汎用レジスタにおける上位バイトGR1−1と、リフレッシュレジスタ値との論理和演算を実行している。これに対して、論理積演算及び排他的論理和演算その他の複数種類ある論理演算のうち、一部の論理演算を単独で、又は組み合わせて実行することにより、あるいは全部の論理演算を組み合わせて実行することにより、乱数値が加工されるようにしてもよい。また、乱数値を加工するための演算処理として、乱数回路509から読み出した数値データにおけるビットの入れ替えや転置などを行うビットスクランブル処理が実行されてもよい。この場合、ビットスクランブル処理に用いるビットスクランブル用キーやビットスクランブルテーブルを変更することなどにより、乱数値を加工する手順が変化してもよい。あるいは、乱数値を加工するための演算処理として、乱数回路509から読み出した数値データに対するリフレッシュレジスタ値の加算・減算・乗算・除算などの四則演算の一部又は全部が実行されてもよい。さらに、乱数値を加工するための演算処理として、論理演算処理、ビットスクランブル処理及び四則演算処理の一部又は全部を組み合わせた処理が実行されてもよい。上位バイトGR1−1に代えて、あるいは上位バイトGR1−1とともに、下位バイトGR1−2に対する所定の演算処理が実行されるようにしてもよい。上位バイトGR1−1と下位バイトGR1−2とを区別することなく、例えばビットスクランブル処理といった、所定の演算処理が実行されるようにしてもよい。
ステップS509の処理を実行した後、汎用レジスタの格納値に基づいて、加算値決定用の乱数値MR6を示す数値データを設定する(ステップS510)。一例として、加算値決定用の乱数値MR6を示す数値データが「0」〜「7」の範囲の値をとる場合であれば、汎用レジスタの格納値と「C0C0H」とを論理積演算して、演算結果をRAM507の所定領域に格納することなどにより、4ビットの乱数値MR6を示す数値データを設定すればよい。あるいは、任意の4ビット値が乱数値MR6として設定されるように、所定の論理値との論理積演算などが実行されればよい。また、論理積演算に代えて、あるいは論理積演算とともに、論理和演算及び排他的論理和演算その他の複数種類ある論理演算のうち、一部の論理演算を単独で、又は組み合わせて実行してもよいし、全部の論理演算を組み合わせて実行してもよい。このとき、乱数値MR6を示す数値データが格納されるRAM507の領域は、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタなどに含まれていればよい。
ステップS510の処理に続いて、遊技制御カウンタ設定部594に設けられたランダムカウンタから、大当り種別決定用の乱数値MR2を示す数値データと、変動パターン種別決定用の乱数値MR3を示す数値データとを抽出する(ステップS511)。このとき抽出された乱数値MR2や乱数値MR3を示す数値データは、ステップS509の処理で設定された特図表示結果決定用の乱数値MR1を示す数値データとともに、保留データとしてステップS504の処理で特定された第1特図保留記憶部591A又は第2特図保留記憶部591Bの記憶位置に記憶される。
ステップS511の処理を実行した後には、演出制御基板12に対して保留記憶数通知コマンドを送信するための設定を行ってから(ステップS512)、乱数値取得処理を終了する。ステップS511の処理では、例えばROM506における保留記憶数通知コマンドテーブルの記憶アドレスを送信コマンドバッファにおいて送信コマンドポインタが指定するバッファ領域にセットすればよい。
また、ステップS502にて読出値が上限値以上であると判定されたときには(ステップS502;Yes)、乱数値レジスタの読み出しにより乱数ラッチフラグをクリアしてから(ステップS513)、乱数値取得処理を終了する。ここで、ステップS513の処理では、遊技球が第1始動入賞口を通過(進入)した場合に対応して、乱数値レジスタR1Dに格納された数値データを読み出す一方、遊技球が第2始動入賞口を通過(進入)した場合に対応して、乱数値レジスタR2Dに格納された数値データを読み出す。このときには、ステップS505の処理と同様に、例えば図56に示すステップS202の処理でセットされた第1始動口入賞テーブル136Aで指定される乱数値レジスタR1Dアドレス、あるいはステップS207の処理でセットされた第2始動口入賞テーブル136Bで指定される乱数値レジスタR2Dアドレスに対応して、数値データの読出元となる乱数値レジスタのアドレスなどを特定できればよい。
第1始動入賞信号SS1や第2始動入賞信号SS2が、第1始動口スイッチ22Aや第2始動口スイッチ22BからCPU505などを介することなく乱数回路509に入力される場合には、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数にかかわらず、第1始動入賞信号SS1や第2始動入賞信号SS2の入力に対応して、乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが格納されることになる。このときには、数値データが格納された乱数値レジスタに対応する乱数ラッチフラグがオン状態となり新たな数値データの格納が制限される。したがって、保留データの記憶数が上限値以上である場合に、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出さずに放置すると、第1始動入賞口や第2始動入賞口を新たな遊技球が通過(進入)したときに、この遊技球の通過(進入)に対応した新たな数値データを乱数値レジスタR1Dや乱数値レジスタR2Dに取り込んで格納することができず、先に通過(進入)した遊技球に対応して格納された数値データが読み出されてしまい、正確な乱数値を取得できなくなることがある。そこで、保留データの記憶数が上限値に達している場合でも、ステップS513の処理を実行して乱数値レジスタの読み出しにより乱数ラッチフラグをクリアすることで、新たな遊技球の通過(進入)に対応して正確な乱数値となる数値データの取得が可能になる。なお、ステップS513の処理により乱数値レジスタR1Dあるいは乱数値レジスタR2Dから読み出された数値データは、特図表示結果を「大当り」とするか否かの判定処理などには使用せず、そのまま破棄(消去)すればよい。
図59は、入賞時乱数値判定処理として、図56のステップS205やステップS210にて実行される処理の一例を示すフローチャートである。この実施の形態において、特別図柄や飾り図柄の可変表示が開始されるときには、後述する特別図柄通常処理(図55のステップS140、図61)において、特図表示結果を「大当り」や「小当り」とするか否かの決定や、大当り種別の決定が行われ、後述する変動パターン設定処理(図55のステップS141、図62)において、変動パターン種別の決定や、変動パターンの決定が行われる。他方、これらの決定とは別に、遊技球が始動入賞口(第1始動入賞口又は第2始動入賞口)にて検出されたタイミングで、CPU505がステップS205やステップS210にて入賞時乱数値判定処理を実行することにより、特図表示結果が「大当り」又は「小当り」となるか否かや、飾り図柄の変動パターンが少なくともスーパーリーチを伴う変動パターンとなるか否かを、予め特定する。これにより、始動入賞口に進入した遊技球の検出に基づく飾り図柄の可変表示が開始されるより前に、特図表示結果が「大当り」又は「小当り」となることや、スーパーリーチのリーチ演出が実行されることを予測し、この予測結果に基づいて、演出制御基板12の側で演出制御用マイクロコンピュータ120のCPUなどにより複数回の可変表示にわたり連続予告演出を実行するか否かなどを決定することができる。
図59に示す入賞時乱数値判定処理において、CPU505は、まず、第1始動入賞口を遊技球が通過(進入)した第1始動口入賞であるか否かを判定する(ステップS521)。このとき、第1始動口入賞であれば(ステップS521;Yes)、パチンコ遊技機1における遊技状態が大当り遊技状態となっている大当り中であるか否かを判定する(ステップS522)。例えば、ステップS522の処理において、CPU505は、特図プロセスフラグの値が“4”〜“7”のいずれかであれば、大当り中であると判定すればよい。
ステップS522にて大当り中ではないと判定されたときには(ステップS522;No)、確変状態や時短状態において時間短縮制御が行われている時短制御中であるか否かを判定する(ステップS523)。例えば、ステップS523の処理において、CPU505は、遊技制御フラグ設定部592に設けられた時短フラグの状態を確認して、時短フラグがオンであれば時短制御中であると判定すればよい。ステップS522にて大当り中であると判定されたときや(ステップS522;Yes)、ステップS523にて時短制御中であると判定されたときには(ステップS523;Yes)、大当り中・時短中入賞を通知する第1始動口入賞指定コマンドとなるコマンドB103H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS524)、入賞時乱数値判定処理を終了する。このような大当り中・時短中入賞を通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、大当り中や時短制御中における始動入賞に基づくものが含まれると特定できる。
ステップS523にて時短制御中ではないと判定されたときには(ステップS523;No)、図57のステップS509にて設定された特図表示結果決定用の乱数値MR1を示す数値データが、所定の大当り判定範囲内であるか否かを判定する(ステップS525)。例えば、ステップS525の処理では、図29(A)に示す第1特図表示結果決定テーブル130Aを選択して、使用テーブルにセットする。続いて、使用テーブルにセットした第1特図表示結果決定テーブル130Aを参照することにより、ステップS509にて設定された乱数値MR1に応じた特図表示結果が「大当り」であるか否かが判定される。より具体的には、乱数値MR1を示す数値データと、第1特図表示結果決定テーブル130Aに格納された決定値とを比較して、乱数値MR1と合致した決定値が割り当てられている特図表示結果が「大当り」であるか否かを判定する。ここでは、パチンコ遊技機1における遊技状態が通常状態又は時短状態であれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定し、確変状態であれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が確変状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定すればよい。なお、パチンコ遊技機1における遊技状態にかかわらず、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを判定するようにしてもよい。
なお、パチンコ遊技機1における遊技状態の変化を予測して、その予測結果に基づき第1特図表示結果決定テーブル130Aにおいて参照するテーブルデータを切り替えるようにしてもよい。一例として、可変表示結果が「大当り」となるまで確変制御が継続して行われる場合であれば、ステップS525にて特図表示結果が「大当り」に決定されると判定したときに、図57のステップS511にて抽出された大当り種別決定用の乱数値MR2を示す数値データに基づき、図30に示す大当り種別決定テーブル131を参照することにより、大当り種別が「非確変」、「確変」、「突確」のいずれに決定されるかを判定する。そして、大当り種別が「非確変」ではなく「確変」または「突確」になると判定されたときに、遊技制御フラグ設定部592などに設けられた確変時判定フラグをオン状態にセットする。その一方で、大当り種別が「非確変」になると判定されたときには、確変時判定フラグをクリアしてオフ状態とする。そして、ステップS525の処理では、確変時判定フラグがオンであるかオフであるかを判定する。このとき、確変時判定フラグがオンであれば、第1特図表示結果決定テーブル130Aにおいて遊技状態が確変状態である場合に応じたテーブルデータを参照して、特図表示結果が「大当り」であるか否かを特定する。これに対して、確変時判定フラグがオフであるときには、第1特図表示結果決定テーブル130Aにおいて遊技状態が通常状態又は時短状態である場合に応じたテーブルデータを参照すればよい。このような処理が実行されることなどにより、第1特図保留記憶部591Aに記憶された保留データに基づく特図ゲームが開始されるときの遊技状態が確変状態である場合に対応して、通常状態や時短状態のときよりも高い割合で特図表示結果が「大当り」に決定されるテーブルデータを使用して特図表示結果を特定することができ、実際の遊技状態に適合して、より正確な特図表示結果を特定できる。
ステップS525にて大当り判定範囲内ではないと判定されたときには(ステップS525;No)、その乱数値MR1が小当り判定範囲内であるか否かを判定する(ステップS526)。ステップS525にて乱数値MR1が大当り判定範囲内であると判定された場合や(ステップS525;Yes)、ステップS526にて乱数値MR1が小当り判定範囲内であると判定された場合には(ステップS526;Yes)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて入賞時当り判定がなされたことを通知する第1始動口入賞指定コマンドとなるコマンドB102H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS527)、入賞時乱数値判定処理を終了する。このような入賞時当り判定を通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」又は「小当り」に決定されることを示すものが含まれると特定できる。
なお、ステップS525にて大当り判定範囲内であると判定されたときと、ステップS526にて小当り判定範囲内であると判定されたときとでは、EXTデータの設定が異なる第1始動口入賞指定コマンドを送信することなどにより、特図表示結果が「大当り」となるか「小当り」となるかを、演出制御基板12の側で特定できるようにしてもよい。あるいは、ステップS525にて大当り判定範囲内であると判定されたときには、大当り種別決定用の乱数値MR2に基づいて大当り種別がいずれに決定されるかの判定を行い、大当り種別が「突確」に決定されると判定した場合には、ステップS526にて小当り判定範囲内であると判定した場合と共通の第1始動口入賞指定コマンドを送信する一方、大当り種別が「非確変」または「確変」に決定されると判定した場合には、大当り種別が「突確」になると判定された場合や小当り判定範囲内であると判定された場合とは異なる第1始動口入賞指定コマンドを送信してもよい。これにより、演出制御基板12の側では、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」で大当り種別が「非確変」または「確変」に決定されることを示すものが含まれる場合と、特図表示結果が「大当り」で大当り種別が「突確」または特図表示結果が「小当り」に決定されることを示すものが含まれる場合とを、区別して特定することができる。
ステップS526にて乱数値MR1が小当り判定範囲内ではないと判定されたときには(ステップS526;No)、図57のステップS511にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データが特定パターン共通範囲の範囲内であるか否かを判定する(ステップS528)。ここで、図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例では、遊技状態や特図保留記憶数にかかわらず、変動パターン種別決定用の乱数値MR3が「230」〜「251」の範囲内であれば、少なくともスーパーリーチ(スーパーリーチα又はスーパーリーチβ)を伴う特定の変動パターンが含まれる変動パターン種別CA2−4に決定されることになる。したがって、ステップS528の処理では、例えば図60に示すように、乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定すればよい。すなわち、CPU505は、スーパーリーチを伴う特定の変動パターンが含まれる変動パターン種別CA2−4に対応した決定値の少なくとも一部に設定された同一決定値「230」〜「251」のいずれかと乱数値SR3が合致するか否かを判定することによって、スーパーリーチを伴う変動パターンに決定されるか否かを判定することができる。なお、変動パターン種別CA2−4に対応した決定値には、同一決定値とは異なる決定値が含まれることがあってもよいし、同一決定値のみが設定されて、同一決定値以外の決定値が割り当てられていないように設定されてもよい。
ステップS528にて乱数値MR3が特定パターン共通範囲内であると判定されたときには(ステップS528;Yes)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲内であることを通知する第1始動口入賞指定コマンドとなるコマンドB101H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS529)、入賞時乱数値判定処理を終了する。これに対して、ステップS528にて乱数値MR3が特定パターン共通範囲内ではないと判定されたときには(ステップS528;No)、第1始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲外であることを通知する第1始動口入賞指定コマンドとなるコマンドB100H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS530)、入賞時乱数値判定処理を終了する。こうした特定パターン共通範囲内であるか否かを通知する第1始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第1特図保留記憶数を特定可能とする演出画像の表示を更新させることができる。また、第1特図を用いた特図ゲームに対応する保留記憶情報のうちに、特定の変動パターンに決定されることを示すものが含まれるか否かを特定できる。
ステップS521にて第1始動口入賞ではないときには(ステップS521;No)、例えば図29(B)に示す第2特図表示結果決定テーブル130Bを使用テーブルにセットして参照することなどにより、図57のステップS509にて設定された特図表示結果決定用の乱数値MR1を示す数値データが、大当り判定範囲内であるか否かを判定する(ステップS531)。このとき、パチンコ遊技機1における遊技状態の変化を予測して参照するテーブルデータを切り替えるなどしてもよいことは、ステップS525の処理と同様である。
ステップS531にて大当り判定範囲内ではないと判定された場合には(ステップS531;No)、その乱数値MR1が小当り判定範囲内であるか否かを判定する(ステップS532)。ステップS531にて大当り判定範囲内であると判定されたときや(ステップS531;Yes)、ステップS532にて小当り判定範囲内であると判定されたときには(ステップS532;Yes)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて入賞時当り判定がなされたことを通知する第2始動口入賞指定コマンドとなるコマンドB202H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS533)、入賞時乱数値判定処理を終了する。このような入賞時当り判定を通知する第2始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第2特図保留記憶数を特定可能とする演出画像の表示を更新させることができ、また、第2特図を用いた特図ゲームに対応する保留記憶情報のうちに、特図表示結果が「大当り」又は「小当り」に決定されることを示すものが含まれると特定できる。
なお、第2始動口入賞指定コマンドに示される入賞時当り判定は、特図表示結果が「大当り」となる場合のみに通知され、特図表示結果が「小当り」となる場合には通知されないようにしてもよい。この場合、ステップS531にて乱数値MR1が大当り判定範囲内である場合にはステップS533の処理に進む一方、ステップS532にて乱数値MR1が小当り判定範囲内であれば、後述するステップS536の処理などに進むようにすればよい。あるいは、第2始動口入賞指定コマンドに示される入賞時当り判定は、特図表示結果が「大当り」で「非確変」または「確変」の大当り種別となる場合のみに通知され、「突確」の大当り種別となる場合や特図表示結果が「小当り」となる場合には通知されないようにしてもよい。この場合、ステップS531にて乱数値MR1が大当り判定範囲内である場合には、さらに大当り種別決定用の乱数値MR2が「非確変」または「確変」の判定範囲内であるか否かを判定し、この判定範囲内である場合にはステップS533の処理に進む一方、「突確」の判定範囲内である場合や、ステップS532にて乱数値MR1が小当り判定範囲内であれば、ステップS536の処理などに進むようにすればよい。なお、大当り種別が「突確」に決定されると判定した場合には、ステップS532にて特図表示結果が「小当り」に決定されると判定した場合と共通の第2始動口入賞指定コマンドを送信してもよいことなどは、ステップS525〜S527の処理と同様である。
ステップS532にて乱数値MR1が小当り判定範囲内ではないと判定されたときには(ステップS532;No)、図57のステップS511にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データが特定パターン共通範囲の範囲内であるか否かを判定する(ステップS534)。このときには、ステップS528の処理と同様に、乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定すればよい。
ステップS534にて乱数値MR3が特定パターン共通範囲内であると判定されたときには(ステップS534;Yes)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲内であることを通知する第2始動口入賞指定コマンドとなるコマンドB201H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS535)、入賞時乱数値判定処理を終了する。これに対して、ステップS534にて乱数値MR3が特定パターン共通範囲内ではないと判定されたときには(ステップS534;No)、第2始動入賞口を通過(進入)した遊技球の検出に基づいて特定パターン共通範囲外であることを通知する第2始動口入賞指定コマンドとなるコマンドB200H(図7(C)を参照)を、主基板11から演出制御基板12に対して送信するための設定を行ってから(ステップS536)、入賞時乱数値判定処理を終了する。こうした特定パターン共通範囲内であるか否かを通知する第2始動口入賞指定コマンドにより、演出制御基板12の側では、画像表示装置5の始動入賞記憶表示エリア5Hにて第2特図保留記憶数を特定可能とする演出画像の表示を更新させることができる。また、第2特図を用いた特図ゲームに対応する保留記憶情報のうちに、特定の変動パターンに決定されることを示すものが含まれるか否かを特定できる。
以上のような入賞時乱数値判定処理が実行されることにより、第1始動入賞口や第2始動入賞口を通過(進入)した遊技球が検出された時点(第1始動入賞時又は第2始動入賞時)で、パチンコ遊技機1における遊技状態や特図ゲームの保留記憶数である特図保留記憶数にかかわらず、特図表示結果が「大当り」又は「小当り」に決定されるか否かや、スーパーリーチを伴う特定の変動パターンに決定されるか否かを判定し、これらの判定結果に応じて異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドを、主基板11から演出制御基板12に対して伝送させることができる。
この実施の形態では、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dにおける決定値の割当てなどにより、変動パターン種別CA2−4に対応した決定値のうちの少なくとも一部は、第1開始条件や第2開始条件の成立に基づく可変表示の開始時における合計保留記憶数にかかわらず、同一決定値「230」〜「251」が設定される。そして、この同一決定値のいずれかに乱数値MR3が合致するか否かを判定することにより、スーパーリーチを伴う変動パターンに決定されるか否かを判定するので、スーパーリーチを伴う変動パターンに決定される旨の判定を、確実に行うことができる。すなわち、ステップS528やステップS534にて特定パターン共通範囲内ではないと判定されたときでも、スーパーリーチを伴う変動パターンに決定される場合がある一方で、特定パターン共通範囲内であると判定されたときには、常にスーパーリーチを伴う変動パターンに決定されることになりスーパーリーチを伴わない変動パターンに決定されることがない。
スーパーリーチを伴う変動パターン種別CA2−4とは異なる変動パターン種別CA1−1〜CA1−3や変動パターン種別CA2−1〜CA2−3に対応した決定値は、第1開始条件や第2開始条件の成立に基づく可変表示の開始時における合計保留記憶数に応じて、異なる決定値が設定されている。このうち、短縮用の非リーチ変動パターンとなる変動パターンPA1−2が含まれる変動パターン種別CA1−2に対応した決定値は、合計保留記憶数が所定数以上である場合には、この合計保留記憶数が所定数未満である場合と比較して、多くなるように設定される。例えば、遊技状態が通常状態であるときなどには、合計保留記憶数が「3」以上または「6」以上である場合に、「3」未満または「6」未満である場合と比較して多くの決定値が、変動パターン種別CA1−2に割り当てられている。また、遊技状態が確変状態や時短状態で時間短縮制御が行われているときには、合計保留記憶数が「1」以上または「2」以上である場合に、「1」未満または「2」未満である場合と比較して多くの決定値が、変動パターン種別CA1−2に割り当てられている。したがって、合計保留記憶数が所定数以上であるときには、所定数未満であるときに比べて平均的な可変表示時間(特図変動時間など)を短縮して、パチンコ遊技機1における稼働率の低下を防止できる。
図55のステップS131にて始動入賞判定処理を実行した後には、遊技制御フラグ設定部592に設けられた特図プロセスフラグの値に応じて、ステップS140〜ステップS150の処理のいずれかを選択して実行する。
ステップS140の特別図柄通常処理は、特図プロセスフラグの値が“0”のときに実行される。この特別図柄通常処理では、第1特図保留記憶部591Aや第2特図保留記憶部591Bに記憶されている保留データの有無などに基づいて、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームを開始するか否かの判定が行われる。また、特別図柄通常処理では、特図表示結果判定用の乱数値MR1を示す数値データに基づき、特別図柄や飾り図柄などの可変表示結果を「大当り」や「小当り」とするか否かを、その可変表示結果が導出表示される以前に決定(事前決定)する。さらに、特別図柄通常処理では、特図ゲームにおける特別図柄の可変表示結果に対応して、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bによる特図ゲームにおける確定特別図柄(大当り図柄、小当り図柄及びハズレ図柄のいずれか)が設定される。
ステップS141の変動パターン設定処理は、特図プロセスフラグの値が“1”のときに実行される。この変動パターン設定処理には、可変表示結果を「大当り」や「小当り」とするか否かの事前決定結果や、飾り図柄の可変表示状態をリーチ状態とするか否かのリーチ決定結果などに基づいて、変動パターン種別を複数種類のいずれかに決定する処理や、変動パターン種別の決定結果に対応して、変動パターンを複数種類のいずれかに決定する処理などが含まれている。
ステップS142の特別図柄変動処理は、特図プロセスフラグの値が“2”のときに実行される。この特別図柄変動処理には、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにおいて特別図柄を変動させるための設定を行う処理や、その特別図柄が変動を開始してからの経過時間を計測する処理などが含まれている。例えば、ステップS142にて特別図柄変動処理が実行されるごとに、遊技制御タイマ設定部593に設けられた特図変動タイマにおける値(特図変動タイマ値)を1減算あるいは1加算することにより、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームであるか、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームであるかに関わりなく、共通のタイマによって経過時間の測定が行われる。また、計測された経過時間が変動パターンに対応する特図変動時間に達したか否かの判定も行われる。このように、特別図柄変動処理は、第1特別図柄表示装置4Aにおける第1特図を用いた特図ゲームにおける特別図柄の変動や、第2特別図柄表示装置4Bにおける第2特図を用いた特図ゲームにおける特別図柄の変動を、共通の処理ルーチンによって制御する処理となっている。そして、特別図柄の変動を開始してからの経過時間が特図変動時間に達したときには、特図プロセスフラグの値を“3”に更新する。
ステップS143の特別図柄停止処理は、特図プロセスフラグの値が“3”のときに実行される。この特別図柄停止処理には、第1特別図柄表示装置4Aや第2特別図柄表示装置4Bにて特別図柄の変動を停止させ、特別図柄の可変表示結果となる確定特別図柄を停止表示させるための設定を行う処理が含まれている。そして、遊技制御フラグ設定部592に設けられた大当りフラグと小当りフラグのいずれかがオンとなっているか否かの判定などが行われ、大当りフラグがオンである場合には特図プロセスフラグの値を“4”に更新し、小当りフラグがオンである場合には特図プロセスフラグの値を“8”に更新する。また、大当りフラグと小当りフラグがいずれもオフである場合には、特図プロセスフラグの値を“0”に更新する。
ステップS144の大入賞口開放前処理は、特図プロセスフラグの値が“4”のときに実行される。この大入賞口開放前処理には、可変表示結果が「大当り」となったことなどに基づき、大当り遊技状態においてラウンドの実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば大入賞口開放回数最大値の設定に対応して、大入賞口を開放状態とする期間の上限を設定するようにしてもよい。一例として、大入賞口開放回数最大値が15ラウンド大当り状態に対応した「15」に設定されている場合には、大入賞口を開放状態とする期間の上限を「29秒」に設定する。これに対して、大入賞口開放回数最大値が2ラウンド大当り状態に対応した「2」に設定されている場合には、大入賞口を開放状態とする期間の上限を「0.5秒」に設定する。
ステップS145の大入賞口開放中処理は、特図プロセスフラグの値が“5”のときに実行される。この大入賞口開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間やカウントスイッチ23によって検出された遊技球の個数などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。大入賞口を閉鎖状態から開放状態へと変化させるときには、大入賞口扉用のソレノイド82に対するソレノイド駆動信号の供給を開始させる処理などが実行されればよい。他方、大入賞口を閉鎖状態に戻すときには、大入賞口扉用のソレノイド82に対するソレノイド駆動信号の供給を停止させる処理などが実行されればよい。
ステップS146の大入賞口開放後処理は、特図プロセスフラグの値が“6”のときに実行される。この大入賞口開放後処理には、大入賞口を開放状態とするラウンドの実行回数が大入賞口開放回数最大値に達したか否かを判定する処理や、大入賞口開放回数最大値に達した場合に当り終了指定コマンドを送信するための設定を行う処理などが含まれている。
ステップS147の大当り終了処理は、特図プロセスフラグの値が“7”のときに実行される。この大当り終了処理には、画像表示装置5やスピーカ8L、8R、遊技効果ランプ9といった演出用の電気部品(演出装置)により、大当り遊技状態の終了を報知する演出動作としてのエンディング演出が実行される期間に対応した待ち時間が経過するまで待機する処理や、その大当り遊技状態の終了に対応した各種の設定を行う処理などが含まれている。
ステップS148の小当り開放前処理は、特図プロセスフラグの値が“8”のときに実行される。この小当り開放前処理には、可変表示結果が「小当り」となったことなどに基づき、小当り遊技状態において可変入賞動作の実行を開始して大入賞口を開放状態とするための設定を行う処理などが含まれている。このときには、例えば可変表示結果が「小当り」であることにより大入賞口開放回数最大値が「2」であることに対応して、大入賞口を開放状態とする期間の上限を「0.5秒」に設定すればよい。
ステップS149の小当り開放中処理は、特図プロセスフラグの値が“9”のときに実行される。この小当り開放中処理には、大入賞口を開放状態としてからの経過時間を計測する処理や、その計測した経過時間などに基づいて、大入賞口を開放状態から閉鎖状態に戻すタイミングとなったか否かを判定する処理などが含まれている。
ステップS150の小当り終了処理は、特図プロセスフラグの値が“10”のときに実行される。この小当り終了処理には、画像表示装置5やスピーカ8L、8R、遊技効果ランプ9といった演出用の電気部品(演出装置)により、小当り遊技状態の終了を報知する演出動作が実行される期間に対応した待ち時間が経過するまで待機する処理などが含まれている。ここで、小当り遊技状態が終了するときには、確変フラグや時短フラグの状態を変更しないようにして、小当り遊技状態となる以前のパチンコ遊技機1における遊技状態を継続させる。
図61は、特別図柄通常処理として、図55のステップS140にて実行される処理の一例を示すフローチャートである。この特別図柄通常処理において、CPU505は、まず、第2特図を用いた特図ゲームの保留記憶数を示す第2保留記憶カウント値が「0」であるか否かを判定する(ステップS221)。例えば、ステップS221の処理では、遊技制御カウンタ設定部594から読み出した第2保留記憶カウント値が「0」であるか否かを判定すればよい。ステップS221にて第2保留記憶カウント値が「0」以外であるときには(ステップS221;No)、例えば遊技制御バッファ設定部595などに設けられた変動特図指定バッファの値を「2」に更新する(ステップS222)。
ステップS221にて第2保留記憶カウント値が「0」であるときには(ステップS221;Yes)、第1特図を用いた特図ゲームの保留記憶数を示す第1保留記憶カウント値が「0」であるか否かを判定する(ステップS223)。例えば、ステップS223の処理では、遊技制御カウンタ設定部594から読み出した第1保留記憶カウント値が「0」であるか否かを判定すればよい。ステップS223にて第1保留記憶カウント値が「0」以外であるときには(ステップS223;No)、例えば遊技制御バッファ設定部595などに設けられた変動特図指定バッファの値を「1」に更新する(ステップS224)。このように、ステップS223の処理では、ステップS221にて第2保留記憶カウント値が「0」であると判定されたときに、第1保留記憶カウント値が「0」であるか否かを判定する。したがって、第2特図を用いた特図ゲームは、第1特図を用いた特図ゲームよりも優先して実行が開始される。
なお、第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して開始されるものに限定されず、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した順番に従って、それぞれの特図ゲームが順次に実行されるようにしてもよい。すなわち、第1始動条件と第2始動条件とを区別することなく、先に成立した始動条件に対応する特図ゲームから順次に実行が開始されるようにしてもよい。あるいは、第1保留記憶カウント値と第2保留記憶カウント値とのうち、いずれの値が大きいかを判定し、カウント値が大きい方に対応する特別図柄を用いた特図ゲームを優先して実行するようにしてもよい。この場合には、第1保留記憶カウント値と第2保留記憶カウント値とを比較して、第1保留記憶カウント値の方が大きい場合には、変動特図指定バッファの値を「1」に更新する一方で、第2保留記憶カウント値の方が大きい場合には、変動特図指定バッファの値を「2」に更新すればよい。また、第1保留記憶カウント値と第2保留記憶カウント値とが一致した場合には、第1特図を用いた特図ゲームを優先して実行してもよいし、第2特図を用いた特図ゲームを優先して実行してもよい。このように、保留記憶カウント値が多い方に対応する特別図柄を用いた特図ゲームを優先して実行することで、無効な始動入賞の発生を低減することができる。
ステップS222、S224の処理のいずれかを実行した後には、変動特図指定バッファ値に応じた特図保留記憶部から保留データを読み出す(ステップS225)。例えば、変動特図指定バッファ値が「1」であるときには、第1特図保留記憶部591Aにて保留番号「1」と対応付けて記憶されている保留データとして、特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3を示す数値データをそれぞれ読み出す。これに対して、変動特図指定バッファ値が「2」であるときには、第2特図保留記憶部591Bにて保留番号「1」と対応付けて記憶されている保留データとして、特図表示結果決定用の乱数値MR1、大当り種別決定用の乱数値MR2、変動パターン種別決定用の乱数値MR3を示す数値データをそれぞれ読み出す。このとき読み出された数値データは、例えば遊技制御バッファ設定部595などに設けられた変動用乱数バッファなどに格納されて、一時記憶されればよい。
ステップS225の処理に続いて、変動特図指定バッファ値に応じた保留記憶カウント値を1減算するとともに、変動特図指定バッファ値に応じた特図保留記憶部にて保留番号「1」より下位のエントリ(例えば保留番号「2」〜「4」に対応するエントリ)に記憶された保留データの記憶内容を、1エントリずつ上位にシフトさせる(ステップS226)。例えば、変動特図指定バッファ値が「1」である場合には、第1保留記憶カウント値を1減算するとともに、第1特図保留記憶部591Aにおける保留データの記憶内容を、1エントリずつ上位にシフトさせる。これに対して、変動特図指定バッファ値が「2」である場合には、第2保留記憶カウント値を1減算するとともに、第2特図保留記憶部591Bにおける保留データの記憶内容を、1エントリずつ上位にシフトさせる。
この後、可変表示結果を「大当り」とするか否かや「小当り」とするか否かを決定するための使用テーブルとして、変動特図指定バッファ値に応じた特図表示結果決定テーブルを選択してセットする(ステップS227)。例えば、変動特図指定バッファ値が「1」であれば図29(A)に示す第1特図表示結果決定テーブル130Aを使用テーブルとしてセットする一方で、変動特図指定バッファ値が「2」であれば図29(B)に示す第2特図表示結果決定テーブル130Bを使用テーブルとしてセットする。CPU505は、こうしてセットされた特図表示結果決定テーブルを参照することにより、ステップS225にて読み出された保留データに含まれる特図表示結果決定用の乱数値MR1を示す数値データに基づいて、特図表示結果を複数種類のいずれかに決定する(ステップS228)。そして、ステップS228にて決定された特図表示結果が「大当り」であるか否かを判定する(ステップS229)。
ステップS229にて「大当り」ではないと判定された場合には(ステップS229;No)、その特図表示結果が「小当り」であるか否かを判定する(ステップS230)。そして、「小当り」であると判定されたときには(ステップS230;Yes)、遊技制御フラグ設定部592に設けられた小当りフラグをオン状態にセットする(ステップS231)。
ステップS229にて「大当り」であると判定された場合には(ステップS229;Yes)、遊技制御フラグ設定部592に設けられた大当りフラグをオン状態にセットする(ステップS232)。このときには、大当り種別を複数種類のいずれかに決定するための使用テーブルとして、図30に示す大当り種別決定テーブル131を選択してセットする(ステップS233)。CPU505は、こうしてセットされた大当り種別決定テーブル131を参照することにより、ステップS225にて読み出された保留データに含まれる大当り種別決定用の乱数値MR2を示す数値データに基づいて、大当り種別を「非確変」、「確変」、「突確」といった複数種類のうち、いずれかに決定する(ステップS234)。なお、ステップS222にて変動特図指定バッファ値を「2」に設定した場合には、大当り種別決定テーブル131にて「突確」の大当り種別に対する決定値の割当てがないことから、大当り種別が「突確」に決定されることはない。こうしてステップS234にて決定された大当り種別に対応して、例えば遊技制御バッファ設定部595に設けられた大当り種別バッファの格納値である大当り種別バッファ値を設定することにより、ステップS234の処理で決定された大当り種別を記憶する(ステップS235)。一例として、大当り種別が「非確変」であれば大当り種別バッファ値を「0」とし、「確変」であれば「1」とし、「突確」であれば「2」とすればよい。
ステップS230にて「小当り」ではないと判定された場合や(ステップS230;No)、ステップS231、S235の処理のいずれかを実行した後には、大当り遊技状態や小当り遊技状態に制御するか否かの事前決定結果、さらには、大当り遊技状態とする場合における大当り種別の決定結果に対応して、確定特別図柄を設定する(ステップS236)。一例として、ステップS230にて特図表示結果が「小当り」ではないと判定された場合には、特図表示結果を「ハズレ」とする旨の事前決定結果に対応して、ハズレ図柄となる「−」を示す記号の特別図柄を、確定特別図柄に設定する。その一方で、ステップS230にて特図表示結果が「小当り」であると判定された場合には、特図表示結果を「小当り」とする旨の事前決定結果に対応して、小当り図柄となる「5」を示す数字の特別図柄を、確定特別図柄に設定する。また、ステップS229にて特図表示結果が「大当り」であると判定された場合には、ステップS234における大当り種別の決定結果に応じて、大当り図柄となる「1」、「3」、「7」を示す数字の特別図柄のうち、いずれかを確定特別図柄に設定する。すなわち、大当り種別を「非確変」とする決定結果に応じて、非確変大当り図柄となる「3」の数字を示す特別図柄を、確定特別図柄に設定する。また、大当り種別を「確変」とする決定結果に応じて、確変大当り図柄となる「7」の数字を示す特別図柄を、確定特別図柄に設定する。大当り種別を「突確」とする決定結果に応じて、突確大当り図柄「1」の数字を示す特別図柄を、確定特別図柄に設定する。
ステップS236にて確定特別図柄を設定した後には、特図プロセスフラグの値を変動パターン設定処理に対応した値である“1”に更新してから(ステップS237)、特別図柄通常処理を終了する。また、ステップS223にて第1保留記憶カウント値が「0」であるときには(ステップS223;Yes)、所定のデモ表示設定を行ってから(ステップS238)、特別図柄通常処理を終了する。ステップS238におけるデモ表示設定では、例えば画像表示装置5において所定の演出画像を表示することなどによるデモンストレーション表示(デモ画面表示)を指定する客待ちデモ指定コマンドが、主基板11から演出制御基板12に対して送信済みであるか否かを判定する。このとき、送信済みであれば、そのままデモ表示設定を終了する。これに対して、未送信であれば、例えばROM506における客待ちデモ指定コマンドテーブルの記憶アドレスを送信コマンドバッファにセットすることなどにより、客待ちデモ指定コマンドの送信設定を行えばよい。
図62は、変動パターン設定処理として、図55のステップS141にて実行される処理の一例を示すフローチャートである。この変動パターン設定処理において、CPU505は、まず、大当りフラグがオンであるか否かを判定する(ステップS251)。そして、大当りフラグがオンであれば(ステップS251;Yes)、変動パターン種別を複数種別のいずれかに決定するための使用テーブルとして、大当り変動パターン種別決定テーブル133Aを選択してセットする(ステップS252)。このときには、例えば遊技制御バッファ設定部595などに記憶される大当り種別バッファ値を読み取ることなどにより、大当り種別が「非確変」、「確変」、「突確」のいずれであるかを特定する(ステップS253)。
ステップS251にて大当りフラグがオフであるときには(ステップS251;No)、小当りフラグがオンであるか否かを判定する(ステップS254)。そして、小当りフラグがオンであれば(ステップS254;Yes)、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとして、小当り変動パターン種別決定テーブル133Bを選択してセットする(ステップS255)。
ステップS254にて小当りフラグがオフであるときには(ステップS254;No)、例えば遊技制御カウンタ設定部594に記憶されている第1保留記憶カウント値と第2保留記憶カウント値とを加算すること、あるいは、合計保留記憶カウント値を読み出すことなどにより、合計保留記憶数を特定する(ステップS256)。そして、時短フラグがオンであるか否かを判定する(ステップS257)。このとき、時短フラグがオフであれば(ステップS257;No)、時間短縮制御が行われていない通常時であることに対応して、ハズレ変動パターン種別決定テーブル(通常時)133Cを選択し、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとしてセットする(ステップS258)。ステップS257にて時短フラグがオンであるときには(ステップS257;Yes)、時間短縮制御が行われている時短中であることに対応して、ハズレ変動パターン種別決定テーブル(時短中)133Dを選択し、変動パターン種別を複数種類のいずれかに決定するための使用テーブルとしてセットする(ステップS259)。
ステップS253、S255、S258、S259の処理のいずれかを実行した後には、例えば変動用乱数バッファなどに格納されている変動パターン種別決定用の乱数値MR3を示す数値データなどに基づき、使用テーブルにセットされた変動パターン種別決定テーブルを参照することにより、変動パターン種別を複数種類のいずれかに決定する(ステップS260)。ここで、ステップS260の処理では、第1始動条件が成立したことに基づき第1特別図柄表示装置4Aにより第1特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターン種別を決定するか、第2始動条件が成立したことに基づき第2特別図柄表示装置4Bにより第2特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターン種別を決定するかにかかわらず、共通のランダムカウンタなどによって更新される変動パターン種別決定用となる共通の乱数値MR3を示す数値データを用いて、共通の処理モジュールにより変動パターン種別を複数種類のいずれかに決定することができる。
図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が所定数以上である場合に、合計保留記憶数が所定数未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。例えば、ハズレ変動パターン種別決定テーブル(通常時)133Cでは、合計保留記憶数が「3」以上である場合に、合計保留記憶数が「3」未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられており、また、合計保留記憶数が「6」以上である場合に、合計保留記憶数が「6」未満である場合に比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。ハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が「1」以上である場合に、合計保留記憶数が「1」未満の「0」である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられており、また、合計保留記憶数が「2」以上である場合に、合計保留記憶数が「2」未満である場合と比較して、変動パターン種別CA1−2に対して多くの決定値が割り当てられている。変動パターン種別CA1−2には、スーパーリーチを伴う変動パターンPA3−1、変動パターンPA3−2、変動パターンPB3−1、変動パターンPB3−2と比較して特図変動時間が短い非リーチ変動パターンとしての変動パターンPA1−2が含まれている。したがって、特図表示結果が「ハズレ」となる場合には、開始条件(第1開始条件または第2開始条件)が成立したときの合計保留記憶数が所定数以上であるときに、合計保留記憶数が所定数未満であるときと比較して、変動パターンPA1−2に対応した決定値の個数が多く設定された決定値を用いて、変動パターン種別が決定される。これにより、開始条件が成立したときの合計保留記憶数に応じて平均的な特図変動時間を異ならせることができ、特に特図保留記憶数が所定数以上であるときには平均的な特図変動時間が短くなるようにして、可変表示の作動率が低下してしまう事態を極力防止することができる。
こうしてステップS260にて変動パターン種別が決定された後には、その変動パターン種別の決定結果に応じて、変動パターンを複数種類のいずれかに決定するための使用テーブルとして、当り変動パターン決定テーブル134Aと、ハズレ変動パターン決定テーブル134Bとのうち、いずれかを選択してセットする(ステップS261)。続いて、変動パターン決定用の乱数値MR4を示す数値データに基づき、ステップS261にてセットした変動パターン決定テーブルを参照することにより、変動パターンを複数種類のいずれかに決定する(ステップS262)。変動パターン決定用の乱数値MR4を示す数値データは、ステップS262の処理が実行されるときに、遊技制御カウンタ設定部594のランダムカウンタなどから抽出されてもよいし、第1始動入賞口や第2始動入賞口を通過(進入)した遊技球が検出された始動入賞時に抽出されたものを、乱数値MR1〜MR3とともに、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データとして記憶しておいてもよい。
ステップS262の処理では、第1始動条件が成立したことに基づき第1特別図柄表示装置4Aにより第1特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターンを決定するか、第2始動条件が成立したことに基づき第2特別図柄表示装置4Bにより第2特図を用いて実行される特図ゲームに対応した飾り図柄の変動パターンを決定するかに関わらず、共通のランダムカウンタなどによって更新される変動パターン決定用となる共通の乱数値MR4を示す数値データを用いて、変動パターンを複数種類のいずれかに決定する。一例として、ステップS262の処理では、決定テーブルポインタにセットされたROM506のアドレスに記憶された決定テーブルを参照して変動パターンが決定されればよい。
このようなステップS262における変動パターンの決定に続いて、その変動パターンの決定結果に応じた特図変動時間を設定する(ステップS263)。その後、変動特図指定バッファ値に応じて、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームと、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームのいずれかを開始させるように、特別図柄の変動を開始させるための設定を行う(ステップS264)。一例として、変動特図指定バッファ値が「1」であれば、第1特別図柄表示装置4Aによる第1特図の表示を更新させる駆動信号を送信するための設定を行う。これに対して、変動特図指定バッファ値が「2」であれば、第2特別図柄表示装置4Bによる第2特図の表示を更新させる駆動信号を送信するための設定を行う。
ステップS264の処理を実行した後には、特別図柄の変動開始時用となる各種コマンドを送信するための設定を行う(ステップS265)。例えば、変動特図指定バッファ値が「1」である場合に、CPU505は、主基板11から演出制御基板12に対して第1変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドを順次に送信するために、予め用意された第1変動開始用コマンドテーブルのROM506における記憶アドレス(先頭アドレス)を示す設定データを、送信コマンドバッファにセットする。他方、変動特図指定バッファ値が「2」である場合に、CPU505は、主基板11から演出制御基板12に対して第2変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドを順次に送信するために、予め用意された第2変動開始用コマンドテーブルのROM506における記憶アドレスを示す設定データを、送信コマンドバッファにセットする。こうしたステップS265での設定を行った場合には、特別図柄プロセス処理が終了してから図43に示すステップS99のメイン側通信制御処理が実行されるごとに、主基板11から演出制御基板12に対して、第1変動開始コマンドまたは第2変動開始コマンド、変動パターン指定コマンド、表示結果指定コマンド、遊技状態指定コマンドが、順次に送信されることになる。なお、こうした複数種類の演出制御コマンドが送信される順序は、パチンコ遊技機1の仕様などに応じて、任意に設定されたものであればよい。
ステップS265での設定に続いて、特図プロセスフラグの値を特別図柄変動処理に対応した値である“2”に更新してから(ステップS266)、変動パターン設定処理を終了する。
図63は、特別図柄停止処理として、図55のステップS143にて実行される処理の一例を示すフローチャートである。この特別図柄停止処理において、CPU505は、まず、大当りフラグがオンであるか否かを判定する(ステップS281)。このとき、大当りフラグがオンであれば(ステップS281;Yes)、大当り開始時演出待ち時間を設定する(ステップS282)。例えば、ステップS282の処理では、大当り開始時演出待ち時間に対応して予め定められたタイマ初期値が、遊技制御タイマ設定部593に設けられた遊技制御プロセスタイマにセットされればよい。
ステップS282の処理に続いて、当り開始指定コマンドを主基板11から演出制御基板12に対して送信するための設定を行う(ステップS283)。例えば、ステップS283の処理では、当り開始指定コマンドを送信するために予め用意された当り開始指定コマンドテーブルのROM506における記憶アドレスを示す設定データが、送信コマンドバッファに格納されればよい。その後、大当りフラグをクリアしてオフ状態とする(ステップS284)。また、確変状態や時短状態を終了するための設定を行う(ステップS285)。例えば、ステップS285では、確変フラグや時短フラグをクリアしてオフ状態とする処理や、確変状態や時短状態における特図ゲームの実行回数をカウントするための特図変動回数カウンタをクリアする処理などが実行されればよい。そして、特別図柄プロセスフラグの値を大入賞口開放前処理に対応した値である“4”に更新してから(ステップS286)、特別図柄停止処理を終了する。
ステップS281にて大当りフラグがオフである場合には(ステップS281;No)、小当りフラグがオンであるか否かを判定する(ステップS287)。このとき、小当りフラグがオンであれば(ステップS287;Yes)、小当り開始時演出待ち時間を設定する(ステップS288)。例えば、ステップS288の処理では、小当り開始時演出待ち時間に対応して予め定められたタイマ初期値が、遊技制御プロセスタイマにセットされればよい。
ステップS288の処理に続いて、ステップS283の処理と同様に、当り開始指定コマンドを主基板11から演出制御基板12に対して送信するための設定を行う(ステップS289)。その後、小当りフラグをクリアしてオフ状態とする(ステップS290)。そして、特図プロセスフラグの値を小当り開放前処理に対応した値である“8”に更新する(ステップS291)。
また、ステップS287にて小当りフラグがオフである場合には(ステップS287;No)、特図プロセスフラグの値を特別図柄通常処理に対応した値である“0”に更新する(ステップS292)。ステップS291、S292の処理のいずれかを実行した後には、確変状態や時短状態を終了させるか否かの判定を行う(ステップS293)。例えば、ステップS293の処理では、特図変動回数カウンタの値(特図変動回数カウント値)を、例えば1減算または1加算するなどして更新し、更新後の特図変動回数カウント値が所定の特別遊技状態終了判定値と合致するか否かの判定が行われる。このとき、特別遊技状態終了判定値と合致すれば、確変フラグや時短フラグをクリアしてオフ状態とすることなどにより、確変状態や時短状態を終了して通常状態に制御すればよい。他方、特別遊技状態終了判定値と合致しなければ、確変フラグや時短フラグの状態を維持して、ステップS293の処理を終了すればよい。こうした確変状態や時短状態の終了判定を実行した後には、特別図柄停止処理が終了する。なお、特図変動回数カウント値に基づく終了判定は、時短状態である場合のみ行うようにして、確変状態については、次に可変表示結果が「大当り」となるまで継続されるようにしてもよい。あるいは、例えば遊技制御カウンタ設定部594に設けられたランダムカウンタから、確変状態終了判定用の乱数値を示す数値データを抽出し、予めROM506などに格納された確変状態終了判定テーブルを参照することにより、確変状態を終了するか否かの判定を行うようにしてもよい。
図64は、大当り終了処理として、図55のステップS147にて実行される処理の一例を示すフローチャートである。この大当り終了処理において、CPU505は、まず、大当り終了時演出待ち時間が経過したか否かを判定する(ステップS301)。一例として、図55に示すステップS146の大入賞口開放後処理では、特図プロセスフラグの値を“7”に更新するときに、大当り終了時演出待ち時間に対応して予め定められたタイマ初期値が遊技制御プロセスタイマにセットされる。この場合、ステップS301の処理では、例えば遊技制御プロセスタイマ値を1減算することなどにより更新し、更新後の遊技制御プロセスタイマ値が所定の待ち時間経過判定値(例えば「0」など)と合致したか否かに応じて、大当り終了時演出待ち時間が経過したか否かを判定すればよい。ステップS301にて大当り終了時演出待ち時間が経過していなければ(ステップS301;No)、そのまま大当り終了処理を終了する。
これに対して、ステップS301にて大当り終了時演出待ち時間が経過した場合には(ステップS301;Yes)、遊技制御バッファ設定部595などに記憶されている大当り種別バッファ値を読み出して、大当り種別が「非確変」、「確変」、「突確」のいずれであったかを特定する(ステップS302)。このときには、特定された大当り種別が「非確変」であったか否かを判定する(ステップS303)。
ステップS303にて大当り種別が「非確変」であったと判定された場合には(ステップS303;Yes)、遊技状態を時短状態とする制御を開始するための設定を行う(ステップS304)。例えば、CPU505は、時短フラグをオン状態にセットするとともに、時短状態にて実行可能な特図ゲームの上限値に対応して予め定められたカウント初期値(例えば「100」)を、時短回数カウンタに設定する。その一方で、大当り種別が「確変」または「突確」と判定された場合には(ステップS303;No)、遊技状態を確変状態とする制御を開始するための設定を行う(ステップS305)。例えば、CPU505は、確変フラグと時短フラグをともにオン状態にセットする。また、確変状態とする場合にも、時間短縮制御が行われる特図ゲームの上限値に対応して、時短回数カウンタにカウント初期値が設定されてもよい。
ステップS304、S305の処理のいずれかを実行した後には、特図プロセスフラグをクリアして、その値を“0”に初期化してから(ステップS306)、大当り終了処理を終了する。
図65は、普通図柄プロセス処理として、図43のステップS97にて実行される処理の一例を示すフローチャートである。この普通図柄プロセス処理において、CPU505は、まず、ゲート通過判定処理を実行する(ステップS161)。例えば、ステップS161のゲート通過判定処理では、ゲートスイッチ21からの検出信号に基づき、通過ゲート41を通過した遊技球の検出があったか否かを判定し、検出がなければ、そのままゲート通過判定処理を終了する。これに対して、通過ゲート41を通過した遊技球の検出があれば、普図保留記憶部591Cにおける保留データの記憶数である普図保留記憶数を示す普図保留記憶カウント値が、普図保留上限値として予め定められた値(例えば「4」)となっているか否かを判定する。このとき、普図保留上限値に達していれば、通過ゲートにおける今回の遊技球の通過を無効として、ゲート通過判定処理を終了する。その一方で、普図保留上限値に達していない場合には、例えば遊技制御カウンタ設定部594のランダムカウンタなどによって更新される数値データのうちから、普図表示結果決定用の乱数値MR5を示す数値データを抽出する。このとき抽出した乱数値MR5を示す数値データが、保留データとして普図保留記憶部591Cにおける空きエントリの先頭にセットされることで、乱数値MR5が記憶される。この場合には、普図保留記憶数カウント値を1加算するように更新してから、ゲート通過判定処理を終了する。
ステップS161のゲート通過判定処理を実行した後、CPU505は、遊技制御フラグ設定部592に設けられた普図プロセスフラグの値に応じて、図65に示すステップS170〜S173の処理のいずれかを選択して実行する。
ステップS170の普通図柄通常処理は、普図プロセスフラグの値が“0”のときに実行される。この普通図柄通常処理では、普図保留記憶部591Cに格納された保留データの有無などに基づいて、普通図柄表示器20による普図ゲームを開始するか否かの判定が行われる。このとき、例えば普図保留記憶部591Cに格納された保留データがある場合には、普図ゲームにおける普通図柄の可変表示結果である普図表示結果を「普図当り」とするか「普図ハズレ」とするかを決定する普図表示結果決定処理が実行してから、普図プロセスフラグの値を“1”に更新する。
普図表示結果決定処理では、普図保留記憶部591Cから読み出した保留データに含まれる普図表示結果決定用の乱数値MR5を示す数値データなどに基づき、普図表示結果決定テーブル135を参照して、普図表示結果を決定する。ここで、普図表示結果決定テーブル135では、時短フラグがオンである場合に、時短フラグがオフである場合よりも普図表示結果を「普図当り」とする決定がなされる割合が高くなるように、決定値が普図表示結果に割り当てられている。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、通常状態などにて時間短縮制御が行われていないときと比較して、普図ゲームにおける普通図柄の可変表示結果が「普図当り」となりやすくなることで、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高まり、遊技球が第2始動入賞口を通過(進入)しやすくなる。
また、普図表示結果決定処理では、普図表示結果に対応する普図変動時間の決定も行われる。このとき、時短フラグがオンである場合には、時短フラグがオフである場合よりも普図変動時間が短くなるように設定される。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、普図ゲームにおける普通図柄の可変表示結果が導出表示される間隔が短くなることで、「普図当り」の可変表示結果が導出表示される間隔も短くなり、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高まり、遊技球が第2始動入賞口を通過(進入)しやすくなる。さらに、普図表示結果決定処理では、普図表示結果を「普図当り」とする場合に、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする時間(開放時間)や開放状態とする回数(開放回数)を設定してもよい。このとき、時短フラグがオンである場合には、時短フラグがオフである場合よりも開放時間や開放回数が増加するように設定される。これにより、確変状態や時短状態といった特別遊技状態にて時間短縮制御が行われているときには、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる時間や回数が増加することで、遊技球が第2始動入賞口を通過(進入)しやすくなる。なお、普通可変入賞球装置6B(第2始動入賞口)を開放状態とする設定は、ステップS172の普通図柄停止処理やステップS173の普通電動役物作動処理にて行うようにしてもよい。
ステップS171の普通図柄変動処理は、普図プロセスフラグの値が“1”のときに実行される。この普通図柄変動処理では、普通図柄表示器20において普通図柄を変動させるための設定が行われるとともに、その普通図柄が変動を開始してからの経過時間が計測される。また、こうして計測された経過時間が所定の普図変動時間に達したか否かの判定が行われる。
ステップS172の普通図柄停止処理は、普図プロセスフラグの値が“2”のときに実行される。この普通図柄停止処理では、普図変動時間が経過したことに基づき、普通図柄表示器20にて普通図柄の変動を停止させ、普通図柄の可変表示結果となる確定普通図柄を停止表示(導出表示)させるための設定などを行う。ステップS173の普通電動役物作動処理は、普図プロセスフラグの値が“4”のときに実行される。この普通電動役物作動処理では、普図ゲームにおける可変表示結果(普図表示結果)が「普図当り」となったことに対応して、普通可変入賞球装置6Bが備える可動翼片(左右一対の開閉羽根)を垂直位置から傾動位置に移動させて、普通可変入賞球装置6B(第2始動入賞口)を閉鎖状態から開放状態に変化させるための設定などが行われる。
次に、演出制御基板12における動作を説明する。演出制御基板12では、電源基板等から電源電圧の供給を受けると、演出制御用マイクロコンピュータ120のCPUが起動し、図66のフローチャートに示すような演出制御メイン処理を実行する。なお、演出制御用マイクロコンピュータ120においても、電源投入時やシステムリセット時には、CPUによりセキュリティチェック処理が実行され、演出制御用マイクロコンピュータ120がセキュリティモードとなるようにしてもよい。この場合には、セキュリティチェック処理にてROMに不正な変更が加えられていないと判定された後、セキュリティ時間が経過してから、演出制御メイン処理の実行が開始されるユーザモードへと移行すればよい。図66に示す演出制御メイン処理を開始すると、演出制御用マイクロコンピュータ120のCPUは、まず、所定の初期化処理を実行して(ステップS401)、演出制御用マイクロコンピュータ120に内蔵又は外付けされたRAMのクリアや各種初期値の設定、また演出制御用マイクロコンピュータ120に内蔵等されたCTC(カウンタ/タイマ回路)のレジスタ設定等を行う。
その後、演出用乱数更新処理が実行され(ステップS402)、演出制御に用いる各種の乱数値として、演出制御用マイクロコンピュータ120のRAMなどに設けられたランダムカウンタによってカウントされる乱数値を示す数値データを、ソフトウェアにより更新する。続いて、タイマ割込みフラグがオンとなっているか否かの判定を行う(ステップS403)。タイマ割込みフラグは、例えば演出制御用マイクロコンピュータ120におけるCTCのレジスタ設定に基づき、所定時間(例えば2ms)が経過するごとにオン状態にセットされる。
また、演出制御基板12の側では、所定時間が経過するごとに発生するタイマ割込みとは別に、主基板11から演出制御コマンドを受信するための割込みが発生する。この割込みは、例えば演出制御用マイクロコンピュータ120が備えるシリアル通信回路における受信データフルにより発生する割込みであればよい。あるいは、主基板11と演出制御基板12との間に演出制御INT信号を伝送するための信号線を配線した場合には、演出制御INT信号がオン状態となることによる割込みが発生するようにしてもよい。こうした割込み発生に応答して、演出制御用マイクロコンピュータ120のCPUは、自動的に割込み禁止に設定するが、自動的に割込み禁止状態にならないCPUを用いている場合には、割込み禁止命令(DI命令)を発行することが望ましい。演出制御用マイクロコンピュータ120のCPUは、受信データフルによる割込み、あるいは、演出制御INT信号がオン状態となることによる割込みに対応して、例えば所定のコマンド受信割込み処理を実行する。このコマンド受信割込み処理では、演出制御用マイクロコンピュータ120のシリアル通信回路に対応して設けられた通信データレジスタなどに格納された通信データを取り込む。あるいは、コマンド受信割込み処理では、演出制御用マイクロコンピュータ120が備えるPIP等に含まれる入力ポートのうちで、中継基板18を介して主基板11から伝送された制御信号を受信する所定の入力ポートより、演出制御コマンドとなる制御信号を取り込むようにしてもよい。このとき取り込まれた演出制御コマンドは、例えば演出制御用マイクロコンピュータ120のRAMなどに設けられた演出制御コマンド受信用バッファに格納する。一例として、演出制御コマンドが2バイト構成である場合には、1バイト目(MODE)と2バイト目(EXT)を順次に受信して演出制御コマンド受信用バッファに格納する。その後、演出制御用マイクロコンピュータ120のCPUは、割込み許可に設定してから、コマンド受信割込み処理を終了する。
ステップS403にてタイマ割込みフラグがオフであれば(ステップS403;No)、ステップS402の処理に戻る。他方、ステップS403にてタイマ割込みフラグがオンである場合には(ステップS403;Yes)、タイマ割込みフラグをクリアしてオフ状態にするとともに(ステップS404)、コマンド解析処理を実行する(ステップS405)。ステップS405にて実行されるコマンド解析処理では、例えば主基板11の遊技制御用マイクロコンピュータ100から送信されて演出制御コマンド受信用バッファに格納されている各種の演出制御コマンドを読み出した後に、その読み出された演出制御コマンドに対応した設定や制御などが行われる。
ステップS405にてコマンド解析処理を実行した後には、演出制御プロセス処理を実行する(ステップS406)。この演出制御プロセス処理では、例えば画像表示装置5の表示領域における演出画像の表示動作、スピーカ8L、8Rからの音声出力動作、遊技効果ランプ9や装飾用LEDにおける点灯動作といった、演出用の電気部品(演出装置)を用いた演出動作の制御内容について、主基板11から送信された演出制御コマンド等に応じた判定や決定、設定などが行われる。演出制御プロセス処理を実行した後には、報知制御処理を実行してから(ステップS407)、ステップS402の処理に戻る。
ステップS407の報知制御処理では、例えば主基板11から伝送された異常入賞報知コマンドを受信したときに、図67に示すような異常報知画面といった所定の報知画面を画像表示装置5の表示領域に表示させることや、遊技効果ランプ9に含まれる所定の警告ランプを点灯させること、スピーカ8L、8Rから所定の警告音を出力させること、あるいは、これらの一部もしくは全部を組み合わせることにより、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出された旨を報知すればよい。この場合、例えば異常入賞報知コマンドのEXTデータなどに基づいて、第1始動入賞口と第2始動入賞口のうち、いずれの始動入賞口において異常入賞の発生が検出されたかを特定できるようにしてもよい。そして、異常入賞の発生が検出されたと特定した始動入賞口に応じて、異なる異常報知画面を表示するといった、報知態様(報知内容)が異なる異常入賞の報知が行われるようにしてもよい。
図68は、演出制御コマンド解析処理として、図66のステップS404にて実行される処理の一例を示すフローチャートである。この演出制御コマンド解析処理において、演出制御用マイクロコンピュータ120のCPUは、まず、第1始動口入賞指定コマンドを受信したか否かを判定する(ステップS551)。例えば演出制御基板12の側で受信した演出制御コマンドは演出制御コマンド受信用バッファに格納されており、この演出制御コマンド受信用バッファに格納されているコマンドを読み出して内容を確認することにより、受信した演出制御コマンドを特定できればよい。
ステップS551にて第1始動口入賞指定コマンドを受信したと判定されたときには(ステップS551;Yes)、第1始動口入賞時に対応した表示更新の設定を行う(ステップS552)。例えば、ステップS552の処理では、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hで非表示となっている第1始動入賞口に対応した表示部位のうちの1つを、第1始動入賞口を通過(進入)した遊技球の検出による第1始動条件の成立に応じて、青色表示に変化させるための表示設定などが行われればよい。
ステップS552の処理に続いて、例えば演出制御用マイクロコンピュータ120のRAMにおける所定領域などに設けられた連続予告変動カウンタの格納値である連続予告変動カウント値が「0」であるか否かを判定する(ステップS553)。ここで、連続予告変動カウンタには、主基板11から伝送される第1始動口入賞指定コマンドや第2始動口入賞指定コマンドにより入賞時当り判定や特定パターン共通範囲内であることが通知されたときに、始動入賞後の合計保留記憶数や第2特図保留記憶数が設定され、そのカウント値が「0」になるまで、特図ゲームの実行開始に対応して飾り図柄の可変表示が開始されるごとに1減算されるように更新される。したがって、連続予告変動カウント値が「0」以外であるときには、保留記憶情報のうちに入賞時当り判定がなされた可変表示あるいは特定パターン共通範囲内の判定がなされた可変表示が含まれている。
ステップS553にて連続予告変動カウント値が「0」以外であるときには(ステップS553;No)、先に発生した始動入賞に基づく保留記憶情報について入賞時当り判定や特定パターン共通範囲内の判定がなされていることから、演出制御コマンド解析処理を終了する。ステップS553にて連続予告変動カウント値が「0」であるときには(ステップS553;Yes)、例えば第1始動口入賞指定コマンドにおけるEXTデータを読み取ることなどにより、入賞時当り判定が通知されたか否かを判定する(ステップS554)。このとき、入賞時当り判定が通知されていなければ(ステップS554;No)、特定パターン共通範囲内であることが通知されたか否かを判定する(ステップS555)。
ステップS555にて特定パターン共通範囲内であることが通知されていなければ(ステップS555;No)、演出制御コマンド解析処理を終了する。ステップS554にて入賞時当り判定が通知された場合や(ステップS554;Yes)、ステップS555にて特定パターン共通範囲内であることが通知された場合には(ステップS555;Yes)、例えば演出制御用マイクロコンピュータ120のRAMにおける所定領域などに設けられた連続予告フラグをオン状態にセットする(ステップS556)。
ステップS556の処理を実行した後には、連続予告変動カウント値として、始動入賞後の合計保留記憶数をセットしてから(ステップS557)、演出制御コマンド解析処理を終了する。第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、ステップS557の処理にて合計保留記憶数を連続予告変動カウント値にセットすることで、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報に基づく可変表示が実行される以前に実行される可変表示回数を特定することができる。合計保留記憶数は、例えば主基板11から伝送された保留記憶数通知コマンドのEXTデータを読み取ることなどにより、特定できればよい。
ステップS551にて第1始動口入賞指定コマンドを受信していないと判定されたときには(ステップS551;No)、第2始動口入賞指定コマンドを受信したか否かを判定する(ステップS558)。そして、第2始動口入賞指定コマンドを受信したと判定されたときには(ステップS558;Yes)、第2始動口入賞時に対応した表示更新の設定を行う(ステップS559)。例えば、ステップS559の処理では、画像表示装置5の表示領域に設けられた始動入賞記憶表示エリア5Hで非表示となっている第2始動入賞口に対応した表示部位のうちの1つを、第2始動入賞口を通過(進入)した遊技球の検出による第2始動条件の成立に応じて、赤色表示に変化させるための表示設定などが行われればよい。
ステップS559の処理に続いて、連続予告変動カウント値が「0」となっているか否か、すなわち、先に発生した始動入賞に基づく保留記憶情報について入賞時当り判定や特定パターン共通範囲内の判定がなされているか否かを判定する(ステップS560)。このとき、連続予告変動カウント値が「0」以外であれば(ステップS560;No)、演出制御コマンド解析処理を終了する。なお、第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、連続予告演出による予告対象となる第1特図を用いた特図ゲームが開始されるより前に、遊技球が第2始動入賞口を通過(進入)して第2特図を用いた特図ゲームが実行されてしまうと、連続予告演出による予告対象となる可変表示にズレが生じることになる。そこで、ステップS560の処理にて連続予告変動カウント値が「0」以外であるときでも、その連続予告変動カウント値が第2特図保留記憶数を超えている場合のように、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報が第1始動入賞口を通過(進入)した遊技球の検出に基づくものである場合には、例えば連続予告変動カウント値をクリアして「0」に初期化してから、ステップS561の処理に進むようにしてもよい。
ステップS560にて連続予告変動カウント値が「0」であるときには(ステップS560;No)、例えば第2始動口入賞指定コマンドにおけるEXTデータを読み取ることなどにより、入賞時当り判定が通知されたか否かを判定する(ステップS561)。このとき、入賞時当り判定が通知されていなければ(ステップS561;No)、特定パターン共通範囲内であることが通知されたか否かを判定する(ステップS562)。
ステップS562にて特定パターン共通範囲内であることが通知されていなければ(ステップS562;No)、演出制御コマンド解析処理を終了する。ステップS561にて入賞時当り判定が通知された場合や(ステップS561;Yes)、ステップS562にて特定パターン共通範囲内であることが通知された場合には(ステップS562;Yes)、連続予告フラグをオン状態にセットする(ステップS563)。
ステップS563の処理を実行した後には、連続予告変動カウント値として、始動入賞後の第2特図保留記憶数をセットしてから(ステップS564)、演出制御コマンド解析処理を終了する。第2特図を用いた特図ゲームが第1特図を用いた特図ゲームよりも優先して実行される場合には、ステップS564の処理にて第2特図保留記憶数を連続予告変動カウント値にセットすることで、入賞時当り判定や特定パターン共通範囲内の判定がなされた保留記憶情報に基づく可変表示が実行される以前に実行される可変表示回数を特定することができる。第2特図保留記憶数は、例えば主基板11から伝送された第2始動口入賞指定コマンドの受信数と、第2変動開始コマンドの受信数との差分などから、特定できればよい。例えば、第2特図保留特定カウンタの格納値である第2特図保留特定カウント値を、第2始動口入賞指定コマンドの受信ごとに1加算するように更新し、第2変動開始コマンドの受信ごとに1減算するように更新して、第2特図保留記憶数を特定できるようにすればよい。
特図表示結果が「大当り」で大当り種別が「突確」になると判定されたときや、特図表示結果が「小当り」になると判定されたときに、特図表示結果が「大当り」で大当り種別が「非確変」または「確変」になると判定されたときとは異なるEXTデータが第1始動口入賞指定コマンドなどに設定される場合には、大当り種別が「非確変」または「確変」になると判定されたときに連続予告フラグをオン状態にセットするなどの設定(連続予告演出を実行するための設定)を行う一方、大当り種別が「突確」になると判定されたときや、特図表示結果が「小当り」になると判定されたときには、連続予告演出を実行するための設定が行われないようにしてもよい。これにより、連続予告演出が実行されて特図表示結果が「大当り」となる期待感を高めておきながら、遊技者が賞球を得ることが困難な2ラウンド大当り状態や小当り遊技状態に制御されてしまうことにより遊技興趣が減退する事態を極力防止できる。
図69は、演出制御プロセス処理として、図66のステップS406にて実行される処理の一例を示すフローチャートである。この演出制御プロセス処理において、演出制御用マイクロコンピュータ120のCPUは、例えば演出制御用マイクロコンピュータ120のRAM等に設けられた演出プロセスフラグの値に応じて、以下のようなステップS180〜ステップS186の処理のいずれかを選択して実行する。
ステップS180の飾り図柄変動開始待ち処理は、演出プロセスフラグの値が“0”のときに実行される処理である。この飾り図柄変動開始待ち処理には、主基板11から伝送される変動開始コマンドとして、第1変動開始コマンドと第2変動開始コマンドのいずれかを受信したか否かに応じて、画像表示装置5の表示領域に設けられた「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにおける飾り図柄の可変表示を、開始するか否かの判定を行う処理などが含まれている。このとき、可変表示を開始すると判定されれば、演出プロセスフラグの値が“1”に更新される。
ステップS181の飾り図柄変動設定処理は、演出プロセスフラグの値が“1”のときに実行される処理である。この飾り図柄変動設定処理には、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームの開始や第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームの開始に対応して、飾り図柄の可変表示を含めた各種の演出動作を行うために、変動パターンや可変表示結果などに応じた最終停止図柄となる確定飾り図柄や仮停止図柄、予告演出の有無等を決定し、その決定結果に応じて、予め用意された複数種類の演出制御パターンのいずれかを、使用パターンとして選択して設定する処理などが含まれている。こうした決定や設定などが行われた後には、演出プロセスフラグの値が“2”に更新される。
ステップS182の飾り図柄変動中処理は、演出プロセスフラグの値が“2”のときに実行される処理である。この飾り図柄変動中処理には、例えば演出制御用マイクロコンピュータ120のRAM等に設けられた演出制御プロセスタイマの値(演出制御プロセスタイマ値)などに対応して、使用パターンとなる演出制御パターンなどから各種の制御データを読み出して、飾り図柄の可変表示中における各種の演出制御を行うための処理が含まれている。そして、例えば演出制御プロセスタイマ値が所定の可変表示終了値(例えば「0」)となったこと、あるいは、主基板11から伝送される図柄確定指定コマンドを受信したことなどに対応して、飾り図柄の可変表示結果となる最終停止図柄としての確定飾り図柄を完全停止表示させる。演出制御プロセスタイマ値が可変表示終了値となったことに対応して確定飾り図柄を完全停止表示させるようにすれば、変動パターン指定コマンドにより指定された変動パターンに対応する可変表示時間が経過したときに、主基板11からの演出制御コマンドによらなくても、演出制御基板12の側で自律的に確定飾り図柄を導出表示して可変表示結果を確定させることができる。確定飾り図柄を完全停止表示したときには、演出プロセスフラグの値が“3”に更新される。
ステップS183の飾り図柄変動終了時処理は、演出プロセスフラグの値が“3”のときに実行される処理である。この飾り図柄変動終了時処理には、主基板11から伝送される当り開始指定コマンドを受信したか否かを判定する処理が含まれている。このとき、当り開始指定コマンドを受信した旨の判定がなされれば、その当り開始指定コマンドから特定される可変表示結果が「大当り」である場合に、演出プロセスフラグの値が“4”に更新される。その一方で、当り開始指定コマンドから特定される可変表示結果が「小当り」である場合には、演出プロセスフラグの値が“5”に更新される。また、当り開始指定コマンドを受信せずに所定時間が経過したときには、可変表示結果が「ハズレ」であることに対応して、演出プロセスフラグの値が“0”に更新される。
ステップS184の大当り制御中演出処理は、演出プロセスフラグの値が“4”のときに実行される処理である。この大当り制御中演出処理には、例えば可変表示結果が「大当り」となったことなどに対応した演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、大当り遊技状態における各種の演出動作を制御する処理が含まれている。そして、例えば主基板11から伝送される当り終了指定コマンドを受信したことなどに対応して、演出プロセスフラグの値が“6”に更新される。
ステップS185の小当り制御中演出処理は、演出プロセスフラグの値が“5”のときに実行される処理である。この小当り制御中演出処理には、例えば可変表示結果が「小当り」となったことなどに対応して演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、小当り遊技状態における各種の演出動作を制御する処理が含まれている。そして、例えば主基板11から伝送される当り終了指定コマンドを受信したことなどに対応して、演出プロセスフラグの値が“6”に更新される。
ステップS186のエンディング演出処理は、演出プロセスフラグの値が“6”のときに実行される処理である。このエンディング演出処理には、大当り遊技状態や小当り遊技状態が終了することなどに対応した演出制御パターン等を設定し、その設定内容に基づく演出画像を画像表示装置5の表示領域に表示させることや、音声制御基板13に対する音番号データの出力によりスピーカ8L、8Rから音声や効果音を出力させること、ランプ制御基板14に対する電飾信号の出力により遊技効果ランプ9や装飾用LEDを点灯/消灯/点滅させることといった、大当り遊技状態や小当り遊技状態の終了に対応した各種の演出動作を制御する処理が含まれている。そして、こうした演出動作が終了したことなどに対応して、演出プロセスフラグの値が“0”に更新される。
図70は、飾り図柄変動設定処理として、図69に示すステップS181にて実行される処理の一例を示すフローチャートである。この飾り図柄変動設定処理において、演出制御用マイクロコンピュータ120のCPUは、まず、例えば主基板11から伝送された表示結果指定コマンドにおけるEXTデータを読み取ることなどにより、特図表示結果が「ハズレ」となるか否かを判定する(ステップS601)。このとき、特図表示結果が「ハズレ」となる旨の判定がなされれば(ステップS601;Yes)、例えば主基板11から伝送された変動パターン指定コマンドにおけるEXTデータを読み取ることなどにより、指定された変動パターンが飾り図柄の可変表示態様を「非リーチ」とする場合に対応した非リーチ変動パターンであるか否かを判定する(ステップS602)。
ステップS602にて非リーチ変動パターンであると判定された場合には(ステップS602;Yes)、非リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS603)。一例として、ステップS603の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される左確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の左確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「左」の飾り図柄表示部5Lに停止表示される左確定飾り図柄を決定する。次に、ランダムカウンタ等により更新される右確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の右確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「右」の飾り図柄表示部5Rに停止表示される右確定飾り図柄を決定する。このときには、右確定図柄決定テーブルにおける設定などにより、右確定飾り図柄の図柄番号が左確定飾り図柄の図柄番号とは異なるように、決定されるとよい。続いて、ランダムカウンタ等により更新される中確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の中確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「中」の飾り図柄表示部5Cに停止表示される中確定飾り図柄を決定する。
ステップS602にて非リーチ変動パターンではないと判定された場合には(ステップS602;No)、リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS604)。一例として、ステップS604の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される左右確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の左右確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「左」と「右」の飾り図柄表示部5L、5Rにて揃って停止表示される図柄番号が同一の飾り図柄を決定する。さらに、ランダムカウンタ等により更新される中確定図柄決定用の乱数値を示す数値データを抽出し、ROMなどに予め記憶された所定の中確定図柄決定テーブルを参照することなどにより、確定飾り図柄のうち画像表示装置5の表示領域における「中」の飾り図柄表示部5Cにて停止表示される中確定飾り図柄を決定する。ここで、例えば中確定飾り図柄の図柄番号が左確定飾り図柄及び右確定飾り図柄の図柄番号と同一になる場合のように、確定飾り図柄が大当り組合せとなってしまう場合には、任意の値(例えば「1」)を中確定飾り図柄の図柄番号に加算または減算することなどにより、確定飾り図柄が大当り組合せとはならずにリーチ組合せとなるようにすればよい。あるいは、中確定飾り図柄を決定するときには、左確定飾り図柄及び右確定飾り図柄の図柄番号との差分(図柄差)を決定し、その図柄差に対応する中確定飾り図柄を設定してもよい。
ステップS601にて特図表示結果が「ハズレ」ではないと判定されたときには(ステップS601;No)、特図表示結果が「大当り」で大当り種別が「突確」である場合、又は、特図表示結果が「小当り」である場合であるか、これら以外の場合であるかを判定する(ステップS605)。このとき、大当り種別が「突確」又は特図表示結果が「小当り」であると判定されれば(ステップS605;Yes)、予め定められた複数種類の2回開放チャンス目のいずれかといった、大当り種別が「突確」の場合や特図表示結果が「小当り」の場合に対応した飾り図柄の可変表示結果となる確定飾り図柄の組合せを決定する(ステップS606)。一例として、変動パターン指定コマンドにより変動パターンPC1−1〜変動パターンPC1−3のいずれかが指定された場合に対応して(図27を参照)、複数種類の2回開放チャンス目のいずれかを構成する最終停止図柄となる確定飾り図柄の組合せを決定する。この場合には、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新されるチャンス目決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定のチャンス目決定テーブルを参照することなどにより、複数種類の2回開放チャンス目のいずれかを構成する確定飾り図柄の組合せを決定すればよい。また、変動パターン指定コマンドにより変動パターンPC1−4及び変動パターンPC1−5のいずれかが指定された場合には、例えばステップS604と同様の処理を実行することにより、リーチ組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定すればよい。
ステップS605にて特図表示結果が「大当り」で大当り種別が「突確」以外の「非確変」又は「確変」であると判定されたときには(ステップS605;No)、大当り組合せを構成する最終停止図柄となる確定飾り図柄の組合せを決定する(ステップS607)。一例として、ステップS607の処理では、まず、演出制御用マイクロコンピュータ120に内蔵されたランダムカウンタ等により更新される大当り確定図柄決定用の乱数値を示す数値データを抽出し、演出制御用マイクロコンピュータ120のROMなどに予め記憶された所定の大当り確定図柄決定テーブルを参照することなどにより、画像表示装置5の表示領域における「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rに揃って停止表示される図柄番号が同一の飾り図柄を決定する。
ステップS603、S604、S606、S607の処理のいずれかを実行した後には、「擬似連」や「滑り」といった可変表示演出を実行するための設定が行われる(ステップS608)。例えば、ステップS608の処理では、主基板11から伝送された変動パターン指定コマンドにおけるEXTデータを読み取って特定された変動パターンなどに応じて、「擬似連」や「滑り」の可変表示演出が実行されるか否かを判定する。このとき、「擬似連」や「滑り」の可変表示演出が実行されると判定した場合には、「擬似連」の可変表示演出において仮停止表示されて複数種類の擬似連チャンス目のいずれかを構成する飾り図柄や、「滑り」の可変表示演出において仮停止表示される飾り図柄などを決定する。
ステップS608の処理に続いて、確変昇格演出を実行するための設定が行われる(ステップS609)。例えば、ステップS609の処理では、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」である場合に、再抽選演出を実行するか否かや、実行する場合における再抽選演出の演出態様に対応した再抽選演出パターンなどが、決定されるようにすればよい。また、ステップS609の処理では、特図表示結果が「大当り」で大当り種別が「非確変」又は「確変」である場合に、大当り中昇格演出を実行するか否かや、実行する場合における大当り中昇格演出の演出態様に対応した大当り中昇格演出パターンなどが、決定されるようにしてもよい。
ステップS609の処理を実行した後には、連続予告設定処理を実行する(ステップS610)。続いて、演出制御パターンを予め用意された複数パターンのいずれかに決定する(ステップS611)。このときには、例えば変動パターン指定コマンドに示された変動パターンなどに対応して、複数用意された特図変動時演出制御パターンのいずれかを選択し、使用パターンとしてセットする。また、ステップS608における可変表示演出の設定や、ステップS609における確変昇格演出(特に再抽選演出)の設定、ステップS610における連続予告演出の設定に対応して、複数用意された特図変動時演出制御パターンのいずれかを選択し、使用パターンとしてセットすればよい。
ステップS611の処理に続いて、例えば変動パターン指定コマンドに示された変動パターンに対応して、演出制御用マイクロコンピュータ120に内蔵された演出制御プロセスタイマの初期値を設定する(ステップS612)。そして、画像表示装置5における飾り図柄の変動を開始させるための設定を行う(ステップS613)。このときには、例えばステップS611にて使用パターンとして決定された特図変動時演出制御パターンに含まれる表示制御データが指定する表示制御指令をVDP121等に対して伝送させることなどにより、画像表示装置5の表示領域に設けられた「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて飾り図柄の変動を開始させればよい。その後、演出プロセスフラグの値を飾り図柄変動中処理に対応した値である“2”に更新してから(ステップS614)、飾り図柄変動設定処理を終了する。
図71は、連続予告設定処理として、図70のステップS610にて実行される処理の一例を示すフローチャートである。この連続予告設定処理において、演出制御用マイクロコンピュータ120のCPUは、まず、連続予告フラグがオンであるか否かを判定する(ステップS701)。このとき、連続予告フラグがオフであれば(ステップS701;No)、連続予告設定処理を終了する。
ステップS701にて連続予告フラグがオンであるときには(ステップS701;Yes)、連続予告変動カウント値を1減算するように更新する(ステップS702)。そして、更新後の連続予告変動カウント値が「0」となったか否かを判定する(ステップS703)。このとき、連続予告変動カウント値が「0」であれば(ステップS703;Yes)、連続予告フラグをクリアしてオフ状態としてから(ステップS704)、連続予告設定処理を終了する。なお、ステップS703にて連続予告変動カウント値が「0」になったときでも、連続予告演出を実行するための決定や設定が行われるようにしてもよい。ステップS703にて連続予告変動カウント値が「0」になるのは、連続予告演出により特図表示結果が「大当り」となる可能性を報知する対象となる飾り図柄の可変表示が開始されるときである。そこで、このときにも連続予告演出を実行するための決定や設定を行うことにより、報知対象となる飾り図柄の可変表示中においても連続予告演出を実行することができる。
ステップS703にて連続予告変動カウント値が「0」以外であるときには(ステップS703;No)、その連続予告変動カウント値が「3」以上であるか否かを判定する(ステップS705)。そして、連続予告変動カウント値が「3」以上であるときには(ステップS705;Yes)、予め用意された複数種類の演出態様(演出内容)のうちで、予告演出YD1の連続予告演出に決定して(ステップS706)、連続予告設定処理を終了する。
ステップS705にて連続予告変動カウント値が「3」未満であるときには(ステップS705;No)、その連続予告変動カウント値が「2」であるか否かを判定する(ステップS707)。そして、連続予告変動カウント値が「2」であるときには(ステップS707;Yes)、予め用意された複数種類の演出態様(演出内容)のうちで、予告演出YD2の連続予告演出に決定して(ステップS708)、連続予告設定処理を終了する。
ステップS707にて連続予告変動カウント値が「2」ではないときには(ステップS707;No)、連続予告変動カウント値が「1」であることに対応して、複数種類の演出態様(演出内容)のうちで、予告演出YD3の連続予告演出に決定してから(ステップS709)、連続予告設定処理を終了する。
こうして、入賞時当り判定や特定パターン共通範囲内が通知されたことに基づいて連続予告フラグがオンとなった後には、連続予告変動カウント値が「0」となるまで、連続予告演出を実行することができる。なお、入賞時当り判定や特定パターン共通範囲内が通知された場合に、常に連続予告演出が実行されるものに限定されず、所定割合で連続予告演出を実行するか否かの決定が行われるようにしてもよい。一例として、入賞時当り判定が通知されたときには、特定パターン共通範囲内が通知されたときよりも高い割合で、連続予告演出を実行する旨の決定が行われるようにしてもよい。また、入賞時当り判定や特定パターン共通範囲内が通知されない場合でも、所定割合で連続予告演出を実行する旨の決定が行われるようにしてもよい。この場合には、入賞時当り判定や特定パターン共通範囲内が通知されたか否かに応じて異なる割合で、連続予告演出を実行する旨の決定が行われるようにしてもよい。一例として、入賞時当り判定や特定パターン共通範囲内が通知されたときには、これらが通知されないときよりも高い割合で、連続予告演出を実行する旨の決定が行われるようにすればよい。
図71に示す連続予告設定処理では、連続予告変動カウント値で示される連続予告演出により特図表示結果が「大当り」となる可能性を報知する対象となる飾り図柄の可変表示が開始されるまでに実行される特図ゲームの残り回数に応じて、異なる演出態様(演出内容)の連続予告演出が決定される。これに対して、報知対象となる飾り図柄の可変表示が開始されるまでに実行される特図ゲームの残り回数(連続予告変動カウント値)にかかわらず、同一の演出態様(演出内容)となる予告演出が連続予告演出として実行されるように決定してもよい。また、入賞時当り判定や特定パターン共通範囲内のうち、いずれが通知されたかに応じて、連続予告演出における演出態様(演出内容)の決定割合を異ならせるようにしてもよい。一例として、入賞時当り判定が通知されたときには、特定パターン共通範囲内が通知されたときよりも高い割合で、特定の演出態様(例えば「激熱だよ!」のメッセージを報知する予告演出)に決定されるようにしてもよい。
複数回の可変表示にわたる連続予告演出は、一括して決定されるようにしてもよい。一例として、複数回の可変表示それぞれに対応した演出態様(演出内容)を示す連続予告演出パターンを予め複数パターン用意して、入賞時当り判定や特定パターン共通範囲内が通知されたときに、合計保留記憶数などに基づいて、いずれかの連続予告演出パターンに決定してもよい。この場合、合計保留記憶数に応じて、連続予告演出を実行するか否かの決定割合を異ならせてもよい。例えば、合計保留記憶数が所定数以上である場合には、所定数未満の場合と比較して、高い割合で連続予告演出を実行する旨の決定がされるようにしてもよい。
図72は、飾り図柄変動中処理として、図69のステップS182にて実行される処理の一例を示すフローチャートである。この飾り図柄変動中処理において、演出制御用マイクロコンピュータ120のCPUは、演出制御プロセスタイマ値を更新(例えば1減算)してから(ステップS621)、更新後の演出制御プロセスタイマ値を演出制御パターンにて示される演出制御プロセスタイマ判定値と比較して、いずれかのタイマ判定値と合致したか否かの判定を行う(ステップS622)。
ステップS622にてタイマ判定値と合致した場合には(ステップS622;Yes)、そのタイマ判定値と対応付けて演出制御パターンに格納された演出制御実行データ(例えば、表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データの一部又は全部)あるいは終了コードを読み出す(ステップS623)。ここで、ステップS622にて演出制御パターンで示される複数のタイマ判定値が演出制御プロセスタイマ値と合致した場合には、合致した各々のタイマ判定値と対応付けて格納されている複数の演出制御実行データを、ステップS623にて読み出すようにすればよい。そして、ステップS623にて終了コードが読み出されたか否かの判定を行う(ステップS624)。このとき、終了コードではないと判定された場合には(ステップS624;No)、ステップS623にて読み出された演出制御実行データに従って演出動作を制御するための演出制御指令処理を実行してから(ステップS625)、飾り図柄変動中処理を終了する。
ステップS624にて終了コードであると判定された場合には(ステップS624;Yes)、例えば所定のタイマ初期値を演出制御プロセスタイマに設定することなどにより、当り開始指定コマンド受信待ち時間の設定を行う(ステップS626)。そして、演出プロセスフラグの値を飾り図柄変動終了時処理に対応した値である“3”に更新してから(ステップS627)、飾り図柄変動中処理を終了する。これにより、次回のタイマ割込み発生時には、飾り図柄変動終了時処理が実行され、当り開始指定コマンド受信待ち時間が経過するまでに当り開始指定コマンドの受信がなければ、演出プロセスフラグがクリアされて、その値が“0”に初期化される。その一方で、当り開始指定コマンド受信待ち時間が経過するまでに当り開始指定コマンドの受信があれば、特図表示結果が「小当り」であるか「大当り」であるかに応じて、演出制御プロセスフラグの値が“4”(特図表示結果が「大当り」の場合)又は“5”(特図表示結果が「小当り」の場合)に更新されることにより、小当り時や大当り時における演出動作の制御が行われるようにすればよい。
また、ステップS622にてタイマ判定値のいずれとも合致しなかったときにも(ステップS622;No)、飾り図柄変動中処理を終了する。ただし、ステップS622の処理を実行した後に、あるいは、ステップS622の処理を実行する以前に、主基板11から伝送された図柄確定指定コマンドを受信したと判定された場合には、ステップS626の処理に進み、次回のタイマ割込み発生時には飾り図柄変動終了時処理が実行されるようにしてもよい。
図73は、演出制御指令処理として、図72に示すステップS625にて実行される処理の一例を示すフローチャートである。この演出制御指令処理において、演出制御用マイクロコンピュータ120のCPUは、図72に示すステップS623の処理で読み出された演出制御実行データの種類を特定する(ステップS721)。このときには、演出制御実行データに含まれる表示制御データ、音声制御データ、ランプ制御データ、操作検出制御データのうち、いずれの制御データであるかが特定されればよい。
その後、特定された演出制御実行データが表示制御データであるか否かを判定する(ステップS722)。このとき、表示制御データであると判定された場合には(ステップS722;Yes)、その表示制御データが指定する表示制御指令をVDP121等に対して送出するための設定を行う(ステップS723)。
ステップS722にて表示制御データではないと判定された場合や(ステップS722;No)、ステップS723の処理を実行した後には、特定された演出制御実行データが音声制御データであるか否かを判定する(ステップS724)。このとき、音声制御データであると判定された場合には(ステップS724;Yes)、その音声制御データが指定する音番号データに応じた効果音信号を音声制御基板13に対して送出するための設定を行う(ステップS725)。
ステップS724にて音声制御データではないと判定された場合や(ステップS724;No)、ステップS725の処理を実行した後には、特定された演出制御実行データがランプ制御データであるか否かを判定する(ステップS726)。このとき、ランプ制御データであると判定された場合には(ステップS726;Yes)、そのランプ制御データが指定する電飾信号をランプ制御基板14に対して送出するための設定を行う(ステップS727)。
ステップS726にてランプ制御データではないと判定された場合や(ステップS726;No)、ステップS727の処理を実行した後には、特定された演出制御実行データが操作検出制御データであるか否かを判定する(ステップS728)。このとき、操作検出制御データではないと判定された場合には(ステップS728;No)、演出制御指令処理を終了する。これに対して、操作検出制御データであると判定された場合には(ステップS728;Yes)、その操作検出制御データに基づいて、遊技者の操作ボタン等に対する所定の指示操作(例えば押下操作など)を有効に検出して、検出結果に応じて演出動作を切換可能な期間である有効検出期間であるか否かを判定する(ステップS729)。例えば、予告演出YD1〜予告演出YD3の各連続予告演出において、操作ボタンに対する指示操作を促す演出画像を画像表示装置5の表示領域に表示させたときから所定時間が経過するまでを有効検出期間とするように、所定の演出制御プロセスタイマ判定値と対応付けられた操作検出制御データにより予め設定しておけばよい。
ステップS729にて有効検出期間であると判定された場合には(ステップS729;Yes)、操作ボタンに対する指示操作の検出結果に基づく演出制御を実行してから(ステップS730)、演出制御指令処理を終了する。例えば、ステップS730の処理では、操作ボタンから演出制御基板12へと伝送される操作検出信号に基づいて、操作ボタンに対する所定の指示操作(例えば押下操作など)が検出されたか否かを判定する。そして、操作ボタンに対する指示操作が検出されたときには、その検出結果に応じて演出内容の変更などを行うための設定が行われればよい。
ステップS729にて有効検出期間ではないと判定された場合には(ステップS729;No)、操作検出制御データなどに基づくその他の操作検出制御を行ってから(ステップS731)、演出制御指令処理を終了する。例えば、ステップS731の処理では、操作検出制御データに基づいて、有効検出期間を終了して、遊技者による指示操作等が以後に検出されないように制限するための設定を行えばよい。
以下、パチンコ遊技機1における具体的な動作例について説明する。パチンコ遊技機1では、第1特別図柄表示装置4Aによる第1特図を用いた特図ゲームや、第2特別図柄表示装置4Bによる第2特図を用いた特図ゲームが実行され、また、これらの特図ゲームにおける特別図柄の可変表示に対応して、画像表示装置5の表示領域に含まれる「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rにて飾り図柄の可変表示が実行される。そして、例えば確定特別図柄といった特図ゲームにおける可変表示結果や、確定飾り図柄の組合せといった飾り図柄の可変表示結果などに基づいて、例えば大当り遊技状態に制御されることといった、所定の遊技価値が付与可能となる。なお、パチンコ遊技機1にて付与可能な遊技価値とは、大当り遊技状態に制御されて大入賞口が閉鎖状態から開放状態に変化して遊技球が進入(入賞)しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることなどであればよい。また、例えば大当り遊技状態にて実行可能なラウンドの上限回数や、時短状態にて実行可能な特図ゲームの上限回数、確変状態における大当り確率、通常状態に制御されることなく大当り遊技状態に制御される回数である連チャン回数が所定回数に達すること、あるいは、これらの一部又は全部といった、パチンコ遊技機1における遊技の有利度合いに関わる任意の事項が、パチンコ遊技機1における遊技価値となり得る。
パチンコ遊技機1では、普通入賞球装置6Aが形成する第1始動入賞口を通過(進入)した遊技球が第1始動口スイッチ22Aにより検出されたときや、普通可変入賞球装置6Bが形成する第2始動入賞口を通過(進入)した遊技球が第2始動口スイッチ22Bにより検出されたときに、図57のステップS509にて設定された特図表示結果決定用の乱数値MR1や、ステップS511にて抽出した変動パターン種別決定用の乱数値MR3を用いて、図56に示すステップS205やステップS210にて、図59に示すような入賞時乱数値判定処理が実行される。
ここで、図57のステップS509にて設定される特図表示結果決定用の乱数値MR1は、ステップS506にて乱数回路509の乱数値レジスタR1D(乱数値レジスタ559A)又は乱数値レジスタR2D(乱数値レジスタ559B)から読み出した数値データを用いて、ステップS508にて所定の演算処理を実行することにより設定される。また、ステップS511にて抽出される大当り種別決定用の乱数値MR2や変動パターン種別決定用の乱数値MR3を含めた各種の乱数値MR2〜乱数値MR5の一部又は全部は、図40のステップS36や図43のステップS95で実行される図54に示すような遊技用乱数更新処理において、加算値決定用の乱数値MR6などを用いて更新される。加算値決定用の乱数値MR6は、図57に示すステップS506にて乱数回路509から読み出した数値データを用いたステップS508での演算処理などに基づき、ステップS510にて設定される。こうして、乱数値MR1〜乱数値MR5といった各種の遊技用乱数となる数値データは、その更新値がランダムになり、これらの乱数値により決定される遊技内容などに偏りが生じることを防止できる。
入賞時乱数値判定処理では、図59のステップS525にて特図表示結果決定用の乱数値MR1が大当り判定範囲内である旨の判定がなされたときなどに(ステップS525;Yes)、ステップS527での送信設定に基づき、入賞時当り判定を通知する第1始動口入賞指定コマンドが、主基板11から演出制御基板12に対して伝送される。また、図59のステップS531にて特図表示結果決定用の乱数値MR1が大当り判定範囲内である旨の判定がなされたときなどには(ステップS531;Yes)、ステップS533での送信設定に基づき、入賞時当り判定を通知する第2始動口入賞指定コマンドが、主基板11から演出制御基板12に対して伝送される。
演出制御基板12では、図68のステップS551にて第1始動口入賞指定コマンドを受信したと判定した後、ステップS554にて入賞時当り判定が通知されたと判定したときに、連続予告フラグをオン状態にセットするとともに(ステップS556)、連続予告変動カウント値の設定を行う(ステップS557)。また、ステップS558にて第2始動口入賞指定コマンドを受信したと判定した後、ステップS561にて入賞時当り判定が通知されたと判定したときにも、連続予告フラグをオン状態にセットするとともに(ステップS563)、連続予告変動カウント値の設定を行う(ステップS564)。こうして連続予告変動カウント値の設定が行われることにより、乱数値MR1が大当り判定範囲内となったことなどにより可変表示結果が「大当り」などになる可変表示の保留位置(保留番号)を特定することができる。
その後、図71のステップS701にて連続予告フラグがオンであると判定され(ステップS701;Yes)、更新後の連続予告変動カウント値が「0」ではないと判定されたときには(ステップS703;No)、その連続予告変動カウント値に応じた演出態様(演出内容)の連続予告演出が決定される(ステップS705〜S709)。
図74は、図71のステップS706にて予告演出YD1に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、まず、例えば特図ゲームにおける特別図柄の変動開始などに対応して、図74(A)に示すように「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて停止表示されていた飾り図柄が、図74(B)に示すように「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rの全部にて変動を開始する。その後、例えば図70に示すステップS611の処理で決定された連続予告演出用の演出制御パターンから読み出した表示制御データなどに従い、図74(C)に示すように、遊技者に操作ボタンの指示操作を促す演出画像YH11を表示させる。そして、遊技者が有効検出期間内に操作ボタンに対する指示操作を行い、それに応じて演出制御基板12へと伝送される操作検出信号がオン状態となった場合には、例えば図74(D)に示すようなキャラクタ画像のセリフを示す演出画像YH21を表示させる。この演出画像YH21は、「スーパーリーチかも」などのスーパーリーチの発生を予告する文字列を示している。これに対して、有効検出期間内に操作ボタンに対する指示操作がなされなかった場合には、例えば図74(E)に示すように演出画像YH11が消去されて、連続予告演出における演出動作が終了する。その後、例えば図74(F)に示すように「左」の飾り図柄表示部5Lにて飾り図柄を仮停止表示するなど、飾り図柄の可変表示が進行してゆく。
図75は、図71のステップS708にて予告演出YD2に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、図75(A)〜(C)に示すように、図74(A)〜(C)と同様の表示動作が行われる。その後、遊技者が有効検出期間内に操作ボタンに対する指示操作を行った場合には、例えば図75(D)に示すように、図74(D)に示す演出画像YH21とは異なる演出画像YH22を表示させることなどにより、予告演出YD1の場合とは異なる演出態様(演出内容)で報知を行う。この演出画像YH22は、「もうすぐリーチかも?」などのリーチが近いことを示唆する文字列を示している。有効検出期間内に操作ボタンに対する指示操作がなされなかった場合は、図75(E)に示すように、図74(E)と同様の演出動作制御が行われればよい。その後の表示動作は、図75(F)に示すように、図74(F)と同様に制御されればよい。
図76は、図71のステップS709にて予告演出YD3に決定されたことに基づく連続予告演出が実行される場合の表示動作例を示している。この表示動作例では、図76(A)〜(C)に示すように、図74(A)〜(C)などと同様の表示動作が行われる。その後、遊技者が有効検出期間内に操作ボタンに対する指示操作を行った場合には、例えば図76(D)に示すように、図74(D)に示す演出画像YH21や図75(D)に示す演出画像YH22とは異なる演出画像YH23を表示させることなどにより、予告演出YD1や予告演出YD2の場合とは異なる演出態様(演出内容)で報知を行う。この演出画像YH23は、「次回スーパーリーチになりそう」などのスーパーリーチの発生がさらに近いことを示唆する文字列を示している。有効検出期間内に操作ボタンに対する指示操作がなされなかった場合は、図76(E)に示すように、図74(E)などと同様の演出動作制御が行われればよい。その後の表示動作は、図76(F)に示すように、図74(F)などと同様に制御されればよい。
図74〜図76に示す表示動作例では、予告演出YD1〜予告演出YD3に対応した連続予告演出として、操作ボタンに対する指示操作が行われた場合に所定のメッセージを報知する予告演出が実行される。しかしながら、この発明はこれに限定されず、任意の演出態様(演出内容)で特図表示結果が「大当り」となる可能性を報知する連続予告演出が実行されるものであればよい。一例として、操作ボタンに対する指示操作を必要とせずに所定のメッセージを報知する予告演出が、予告演出YD1〜予告演出YD3に対応した連続予告演出として実行されてもよい。他の一例として、始動入賞記憶表示エリア5Hにおける保留記憶の表示態様(例えば表示色や表示形状、キャラクタなど)を変化させることにより、複数回の可変表示にわたる連続予告演出として実行されてもよい。
図59及び図60に示す例では、変動パターン種別決定用の乱数値MR3が「230」〜「251」の範囲内であれば特定パターン共通範囲の範囲内であると判定され、ステップS528〜S530の処理などにより、特定パターン共通範囲内であるか否かを示す第1始動口入賞指定コマンドが送信され、ステップS534〜S536の処理などにより、特定パターン共通範囲内であるか否かを示す第2始動口入賞指定コマンドが送信される。これに対して、特定の変動パターン(例えばスーパーリーチを伴う変動パターン)となるか否かを判定するための閾値を複数種類設けて、いずれの閾値を用いて特定の変動パターンとなるか否かが判定されたかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるようにしてもよい。
一例として、図59に示すステップS525やステップS531にて乱数値MR1が大当り判定範囲内であると判定されたときにも、変動パターン種別決定用の乱数値MR3を用いて、特定の変動パターンに決定されるか否かの判定を行うようにしてもよい。この場合には、ステップS525やステップS531にて乱数値MR1が大当り判定範囲内であると判定されたときに、大当り種別決定用の乱数値MR2に基づき大当り種別決定テーブル131を参照することなどにより、大当り種別が「非確変」又は「確変」に決定されるか否かを判定する。そして、大当り種別が「非確変」又は「確変」に決定されるときには、変動パターン種別決定用の乱数値MR3を用いて、例えばスーパーリーチを伴う変動パターンが含まれる変動パターン種別CA3−3(図28を参照)に決定されるか否かを判定する。図31(A)に示す大当り変動パターン種別決定テーブル133Aの設定例では、大当り種別が「非確変」又は「確変」の場合に、変動パターン種別CA3−3に対応した決定値の少なくとも一部に設定された同一決定値「100」〜「251」のいずれかと乱数値MR3が合致するか否かを判定することによって、スーパーリーチを伴う変動パターンに決定されるか否かを判定することができる。そこで、大当り種別が「非確変」又は「確変」に決定されるときには、可変表示結果が「ハズレ」となる場合とは異なる同一決定値「100」〜「251」のいずれかと乱数値MR3が合致するか否かを判定して、特定パターン共通範囲の範囲内であるか否かを判定する。そして、特定パターン共通範囲内であると判定されたときには、ステップS529やステップS535にて設定される第1始動口入賞指定コマンドや第2始動口入賞指定コマンドとはEXTデータが異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドの送信設定を行うようにすればよい。
なお、可変表示結果が「大当り」で大当り種別が「非確変」又は「確変」に決定される場合と可変表示結果が「ハズレ」に決定される場合とで、特定パターン共通範囲を画する閾値を異ならせるものに限定されず、例えば可変表示結果が「ハズレ」となる場合でも、特図保留記憶数(合計保留記憶数など)や遊技状態に応じて、特定パターン共通範囲を画する閾値を異ならせるようにしてもよい。こうした場合でも、いずれの閾値を用いて特定の変動パターンとなるか否かが判定されたかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるように設定すればよい。
図59に示す入賞時乱数値判定処理を実行することなどにより、入賞時当り判定や特定パターン共通範囲内などを通知する第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが主基板11から演出制御基板12に対して送信される。これに対して、変動パターン種別決定用の乱数値MR3がとり得る値の範囲(具体的には、「0」〜「251」の範囲)を、予め複数の抽出値範囲に分割しておき、図57に示すステップS511の処理で抽出された乱数値MR3がいずれの抽出値範囲に含まれるかに応じて、異なる第1始動口入賞指定コマンドや第2始動口入賞指定コマンドが送信されるようにしてもよい。一例として、「0」〜「251」の範囲のうち、「230」〜「251」の範囲を第1抽出値範囲とし、「225」〜「229」の範囲を第2抽出値範囲とし、「220」〜「224」の範囲を第3抽出値範囲とする。この場合、例えば図59に示すステップS528やステップS534の処理などでは、変動パターン種別決定用の乱数値がいずれの抽出値範囲に含まれるかの判定を行う。そして、抽出値範囲の判定結果に応じて、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドにおけるEXTデータの設定を異ならせるようにすればよい。演出制御基板12の側では、第1始動口入賞指定コマンドや第2始動口入賞指定コマンドのEXTデータから特定される抽出値範囲などに応じて、特定の変動パターンとなるか否かの判定などが行われるようにすればよい。
図55のステップS140では、図61に示すような特別図柄通常処理が実行されることにより、ステップS221にて第2保留記憶カウント値が「0」であると判定されたときに(ステップS221;Yes)、ステップS223にて第1保留記憶カウント値が「0」であるか否かの判定が行われる。したがって、第2特図を用いた特図ゲームは、第1特図を用いた特図ゲームよりも優先して実行されることになる。加えて、特図表示結果が「大当り」となったことに基づく大当り遊技状態が終了するときには、図64のステップS303にて大当り種別が「非確変」であると判定されたことに基づいて、ステップS304にて遊技状態を時短状態とする制御を開始するための設定が行われ、時短フラグがオン状態にセットされる。また、ステップS303にて大当り種別が「確変」又は「突確」であると判定された場合には、ステップS305にて遊技状態を確変状態とする制御を開始するための設定が行われ、時短フラグがオン状態にセットされることがある。こうして時短フラグがオン状態となることにより、時短状態や確変状態における時間短縮制御とともに高開放制御が開始されると、例えば普図ゲームにおける普図変動時間が短い時間に設定されることや、普図表示結果を「普図当り」とする決定がなされる割合が高くなること、普図表示結果を「普図当り」とする場合に普通可変入賞球装置6B(第2始動入賞口)を開放状態とする開放時間や開放回数が増加すること、あるいは、これらの一部又は全部を組み合わせることにより、遊技球が普通可変入賞球装置6B(第2始動入賞口)を通過(進入)しやすくなる。そして、図59のステップS523にて時短制御中であると判定されたときには(ステップS523;Yes)、ステップS524にて大当り中・時短中入賞を通知する第1始動口入賞指定コマンドを送信するための設定が行われ、例えばステップS525における乱数値MR1に基づく判定などの実行を制限する。
時短状態や確変状態において高開放制御が行われているときには、普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)しやすくなっており、第1特図を用いた特図ゲームの保留記憶情報に基づいて連続予告演出の実行を開始すると、第2始動入賞口に遊技球を通過(進入)させて優先的に実行される第2特図を用いた特図ゲームを実行し続けることで、可変表示結果が「大当り」となる保留記憶情報を保持した状態で多数回の可変表示を継続して実行することができる。この場合、連続予告演出は、可変表示結果が「大当り」となる保留記憶情報が保持されている状態を報知する演出となり、第2特図を用いた特図ゲームを実行することで可変表示結果が「大当り」となり、大当り遊技状態へと繰り返し制御されることになってパチンコ遊技機1の射幸性が著しく高められるおそれがある。また、遊技者が第1特図を用いた特図ゲームで可変表示結果が「大当り」となることを認識しながら、第2始動入賞口に遊技球を繰り返し通過(進入)させて第2特図を用いた特図ゲームを繰り返し実行するか、第2始動入賞口に遊技球を通過(進入)させずに第1特図を用いた特図ゲームを実行するかにより、可変表示結果が「大当り」となり大当り遊技状態へと制御されるタイミングを、遊技者の技量によって大きく変化させられるおそれがある。そこで、時短制御中であるときには、第1始動入賞口を通過(進入)した遊技球の検出に基づく連続予告演出の実行が開始されないように設定して、第1特図を用いた特図ゲームで可変表示結果が「大当り」となる可能性があることを遊技者が認識できないようにして、健全な遊技性を確保することができる。
遊技制御用マイクロコンピュータ100では、例えばCPU505が図57のステップS506にて乱数回路509の乱数値レジスタR1Dや乱数値レジスタR2Dから読み出した数値データを用いてステップS509にて設定した特図表示結果決定用の乱数値MR1を示す数値データに基づいて、図61のステップS228にて特図表示結果を「大当り」、「小当り」、「ハズレ」のいずれかに決定する。乱数回路509では、例えば乱数生成回路553から出力されたカウント値順列RCNを、乱数列変更設定回路556の設定により予め定められた乱数更新規則に基づいて乱数列変更回路555が変更することで、数値データを所定手順により更新した乱数列RSNが出力される。そして、入力ポートIP0のビット番号[0](入力ポートP0)に入力された第1始動口スイッチ22Aからの第1始動入賞信号SS1がオン状態となったことに基づき、乱数値レジスタR1Dに乱数列RSNを構成する数値データが乱数値として取り込まれて格納される。また、入力ポートIP0のビット番号[1](入力ポートP1)に入力された第2始動口スイッチ22Bからの第2始動入賞信号SS2がオン状態となったことに基づき、乱数値レジスタR2Dに乱数列RSNを構成する数値データが乱数値として取り込まれて格納される。
図77は、乱数回路509の動作を説明するためのタイミングチャートである。また、図77(A)では、主基板11に搭載された制御用クロック生成回路111により生成される制御用クロックCCLKを示している。図77(B)では、乱数用クロック生成回路112により生成される乱数用クロックRCLKを示している。なお、図77に示す各種信号は、ハイレベルでオフ状態となりローレベルでオン状態となる負論理の信号であるものとしている。図77(A)及び(B)に示すように、制御用クロックCCLKの発振周波数と、乱数用クロックRCLKの発振周波数とは、互いに異なる周波数となっており、また、いずれか一方の発振周波数が他方の発振周波数の整数倍になることがない。
図77(B)に示すように、乱数用クロックRCLKは、タイミングT10、T11、T12、…においてハイレベルからローレベルに立ち下がる。そして、乱数用クロックRCLKは、遊技制御用マイクロコンピュータ100の乱数用外部クロック端子ERCに供給され、図16に示す乱数回路509が備えるクロック用フリップフロップ552におけるクロック端子CKに入力される。クロック用フリップフロップ552は、逆相出力端子(反転出力端子)QバーからD入力端子へとフィードバックされるラッチ用クロックRC0を、クロック端子CKに入力される乱数用クロックRCLKの立ち下がりエッジに応答して取り込み(ラッチして)、正相出力端子(非反転出力端子)Qから乱数更新クロックRGKとして出力する。これにより、乱数更新クロックRGKは、図77(C)に示すように、タイミングT10、T12、T14、…において、ハイレベルからローレベルへと立ち下がり、乱数用クロックRCLKの発振周波数の1/2の発振周波数を有する信号となる。例えば、乱数用クロックRCLKの発振周波数が20MHzであれば、乱数更新クロックRGKの発振周波数は10MHzとなる。そして、乱数用クロックRCLKの発信周波数は制御用クロックCCLKの発振周波数の整数倍にも整数分の1にもならないことから、乱数更新クロックRGKの発振周波数は、制御用クロックCCLKの発振周波数とは異なる周波数となる。乱数生成回路553は、例えば乱数更新クロックRGKの立ち下がりエッジに応答して、カウント値順列RCNにおける数値データを更新する。乱数列変更回路555は、乱数列変更設定回路556による乱数更新規則の設定に基づき、乱数生成回路553から出力されたカウント値順列RCNにおける数値データの更新順を変更したものを、乱数列RSNとして出力する。こうして、乱数列RSNにおける数値データは、例えば図77(D)に示すように、乱数更新クロックRGKの立ち下がりエッジなどに応答して更新される。
このように、乱数用クロック生成回路112により生成される乱数用クロックRCLKの発振周波数と、制御用クロック生成回路111により生成される制御用クロックCCLKの発振周波数とは、互いに異なっており、また、一方の発振周波数が他方の発振周波数の整数倍となることもない。そのため、乱数回路509のクロック用フリップフロップ552により生成される乱数更新クロックRGKやラッチ用クロックRC0の発振周波数は、乱数用クロックRCLKの発振周波数の1/2となるが、制御用クロックCCLKの発振周波数や、制御用クロックCCLKの発振周波数の1/2となる内部システムクロックSCLKの発振周波数とは、異なるものとなる。こうして、制御用クロックCCLKや内部システムクロックSCLKと、乱数更新クロックRGKとに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数生成回路553や乱数列変更回路555により生成される乱数列RSNにおける数値データの更新タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの更新動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。
クロック用フリップフロップ552から出力されるラッチ用クロックRC0は、乱数更新クロックRGKの反転信号となり、その発振周波数は乱数更新クロックRGKの発振周波数と同一で、その位相は乱数更新クロックRGKの位相とπ(=180°)だけ異なる。ラッチ用クロックRC0は、分岐点BR1にてラッチ用クロックRC1とラッチ用クロックRC2とに分岐される。したがって、例えば図77(E)に示すように、各ラッチ用クロックRC0、RC1、RC2はいずれも、共通の周期で信号状態が変化する発振信号となる。ラッチ用クロックRC1は、ラッチ用フリップフロップ557Aのクロック端子CKに入力される。ラッチ用クロックRC2は、ラッチ用フリップフロップ557Bのクロック端子CKに入力される。
こうして、ラッチ用クロックRC0を分岐することにより生成されるラッチ用クロックRC1、RC2の発振周波数は、制御用クロックCCLKや内部システムクロックSCLKの発振周波数とは、異なるものとなる。したがって、制御用クロックCCLKや内部システムクロックSCLKと、ラッチ用クロックRC1、RC2とに同期が生じることを防ぎ、CPU505の動作タイミングからは、乱数回路509にて乱数値となる数値データが取り込まれる動作タイミングを特定することが困難になる。これにより、CPU505の動作タイミングから乱数回路509における乱数値となる数値データの取込動作を解析した結果に基づく狙い撃ちなどを、確実に防止することができる。
ラッチ用フリップフロップ557Aは、ラッチ用クロックRC1の立ち下がりエッジに応答して、第1始動口スイッチ22Aから伝送されて入力ポートIP0のビット番号[0](入力ポートP0)に供給された第1始動入賞信号SS1を取り込み(ラッチして)、始動入賞時ラッチ信号SL1として出力端子Qから出力する。そして、乱数ラッチセレクタ558Aにおける取込方法が入力ポートP0への信号入力に指定されていれば、始動入賞時ラッチ信号SL1が乱数ラッチ信号LL1として出力される。これにより、例えば図77(F)に示すようなタイミングでオフ状態(ハイレベル)とオン状態(ローレベル)とで信号状態が変化する第1始動入賞信号SS1は、ラッチ用クロックRC1が立ち下がるタイミングT11、T13、T15、…にてラッチ用フリップフロップ557Aに取り込まれた後、図77(G)に示すようなタイミングT11、T13で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号LL1となって、乱数ラッチセレクタ558Aから出力される。ここで、第1始動口スイッチ22Aから伝送される第1始動入賞信号SS1は、普通入賞球装置6Aが形成する第1始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ557Aから乱数ラッチセレクタ558Aを介して出力された乱数ラッチ信号LL1は、乱数値レジスタR1Dとなる乱数値レジスタ559Aに供給されて、乱数列変更回路555から出力された乱数列RSNにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ557A及び乱数ラッチセレクタ558Aでは、第1始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックRC1を用いて、乱数値となる数値データを取得するための乱数ラッチ信号LL1が、第2始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
ラッチ用フリップフロップ557Bは、ラッチ用クロックRC2の立ち下がりエッジに応答して、第2始動口スイッチ22Bから伝送されて入力ポートIP0のビット番号[1](入力ポートP1)に供給された第2始動入賞信号SS2を取り込み(ラッチして)、始動入賞時ラッチ信号SL2として出力端子Qから出力する。そして、乱数ラッチセレクタ558Bにおける取込方法が入力ポートP1への信号入力に指定されていれば、始動入賞時ラッチ信号SL2が乱数ラッチ信号LL2として出力される。これにより、例えば図77(I)に示すようなタイミングでオフ状態(ハイレベル)とオン状態(ローレベル)とで信号状態が変化する第2始動入賞信号SS2は、ラッチ用クロックRC2が立ち下がるタイミングT11、T13、T15、…にてラッチ用フリップフロップ557Bに取り込まれた後、図77(J)に示すようなタイミングT13、T15で信号状態がオフ状態とオン状態とで変化する乱数ラッチ信号LL2となって、乱数ラッチセレクタ558Bから出力される。ここで、第2始動口スイッチ22Bから伝送される第2始動入賞信号SS2は、普通可変入賞球装置6Bが形成する第2始動入賞口における遊技球の始動入賞が検出されたときに、オフ状態からオン状態へと変化する。ラッチ用フリップフロップ557Bから乱数ラッチセレクタ558Bを介して出力された乱数ラッチ信号LL2は、乱数値レジスタR2Dとなる乱数値レジスタ559Bに供給されて、乱数列変更回路555から出力された乱数列RSNにおける数値データを取得するために用いられる。こうして、ラッチ用フリップフロップ557B及び乱数ラッチセレクタ558Bでは、第2始動入賞口における遊技球の始動入賞が検出されたことに基づき、ラッチ用クロックRC2を用いて、乱数値となる数値データを取得するための乱数ラッチ信号LL2が、第1始動入賞口における遊技球の始動入賞が検出された場合とは別個に生成される。
このように、ラッチ用フリップフロップ557Aとラッチ用フリップフロップ557Bはそれぞれ、互いに共通のクロック用フリップフロップ552にて生成されたラッチ用クロックRC0を分岐点BR1で分岐したことにより、互いに共通の周期で信号状態が変化するラッチ用クロックRC1、RC2を用いて、乱数値となる数値データを取得するための始動入賞時ラッチ信号SL1や始動入賞時ラッチ信号SL2を生成する。これにより、乱数回路509における回路構成の簡素化や、パチンコ遊技機1における製造コストの削減を図ることができる。
乱数値レジスタR1Dとなる乱数値レジスタ559Aは、乱数列変更回路555から出力される乱数列RSNにおける数値データを、乱数ラッチセレクタ558Aからクロック端子へと入力される乱数ラッチ信号LL1の立ち下がりエッジに応答して取り込み(ラッチして)、記憶データとなる数値データを更新する。乱数値レジスタR2Dとなる乱数値レジスタ559Bは、乱数列変更回路555から出力される乱数列RSNにおける数値データを、乱数ラッチセレクタ558Bからクロック端子へと入力される乱数ラッチ信号LL2の立ち下がりエッジに応答して取り込み(ラッチして)、記憶データとなる数値データを更新する。
例えば図77(G)に示すように、タイミングT11にて乱数ラッチ信号LL1がオフ状態からオン状態に変化する立ち下がりエッジが生じた場合には、このタイミングT11にて乱数列変更回路555から出力されている乱数列RSNにおける数値データが、図77(H)に示すように、乱数値レジスタR1Dに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタR1Dとなる乱数値レジスタ559Aでは、第1始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第2始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
また、例えば図77(J)に示すように、タイミングT13にて乱数ラッチ信号LL2がオフ状態からオン状態に変化する立ち下がりエッジが生じた場合には、このタイミングT13にて乱数列変更回路555から出力されている乱数列RSNにおける数値データが、図77(K)に示すように、乱数値レジスタR2Dに取り込まれ、乱数値となる数値データとして取得される。これにより、乱数値レジスタR2Dとなる乱数値レジスタ559Bは、第2始動入賞口における遊技球の始動入賞が検出されたことに基づき、乱数値として用いられる数値データを、第1始動入賞口における遊技球の始動入賞が検出された場合とは別個に、取得して記憶することができる。
こうして、乱数値レジスタ559Aは、ラッチ用フリップフロップ557Aがラッチ用クロックRC1を用いて生成した始動入賞時ラッチ信号SL1や乱数ラッチセレクタ558Aから出力された乱数ラッチ信号LL1の立ち下がりエッジに応答して、乱数値RSNにおける数値データを格納する。また、乱数値レジスタ559Bは、ラッチ用フリップフロップ557Bがラッチ用クロックRC2を用いて生成した始動入賞時ラッチ信号SL2や乱数ラッチセレクタ558Bから出力された乱数ラッチ信号LL2の立ち下がりエッジに応答して、乱数列RSNにおける数値データを格納する。
このように、乱数回路509では、クロック用フリップフロップ552や乱数生成回路553、乱数列変更回路555などが、第1始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ557Aや乱数ラッチセレクタ558A、乱数値レジスタ559Aの組合せと、第2始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得するように構成されたラッチ用フリップフロップ557Bや乱数ラッチセレクタ558B、乱数値レジスタ559Bの組合せとに対して、共通化されている。したがって、クロック用フリップフロップ552から出力されて乱数生成回路553に供給されてカウント値順列RCNにおける数値データや乱数列RSNにおける数値データの更新に用いられる乱数更新クロックRGKは、第1始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成と、第2始動入賞口における遊技球の始動入賞に基づき乱数値となる数値データを取得する構成とについて、共通の乱数更新用クロック信号となる。これにより、乱数回路509における回路構成を簡素化することができ、パチンコ遊技機1の製造コストを削減することができる。
図23(A)に示す乱数ラッチフラグレジスタRDFMでは、乱数値レジスタR1Dとなる乱数値レジスタ559Aにおける数値データの取込動作や読出動作、また、乱数値レジスタR2Dとなる乱数値レジスタ559Bにおける数値データの取込動作や読出動作に応答して、対応するビット値が“0”と“1”とに変化する。図78は、乱数ラッチフラグレジスタRDFMのビット番号[0]及び[1]に格納される乱数ラッチフラグデータRDFM0及び乱数ラッチフラグデータRDFM1の変化を説明するためのタイミングチャートである。
図78(A)に示すように、乱数ラッチ信号LL1や乱数ラッチ信号LL2が立ち下がるタイミングT20にて、図78(B)に示すように乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが取り込まれて格納されたことに対応して、図78(C)に示すように乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化する。例えば、タイミングT20にて乱数ラッチ信号LL1がオン状態(ローレベル)となったことに応答して乱数値レジスタR1Dに数値データが格納されたときには、乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化することにより、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態となる。また、タイミングT20にて乱数ラッチ信号LL2がオン状態(ローレベル)となったことに応答して乱数値レジスタR2Dに数値データが格納されたときには、乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化することにより、乱数値レジスタR2Dに対応する乱数ラッチフラグがオン状態となる。
こうして乱数ラッチフラグがオン状態となったときには、対応する乱数値レジスタR1Dや乱数値レジスタR2Dへの新たな数値データの格納が制限される。例えば、乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化したときには、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態となり、乱数値レジスタR1Dへの新たな数値データの格納が制限される。また、乱数ラッチフラグデータRDFM1のビット値が“0”から“1”へと変化したときには、乱数値レジスタR2Dに対応する乱数ラッチフラグがオン状態となり、乱数値レジスタR2Dへの新たな数値データの格納が制限される。したがって、対応する乱数ラッチフラグがオン状態である乱数値レジスタR1D及び/又は乱数値レジスタR2Dには、第1始動入賞信号SS1及び/又は第2始動入賞信号SS2の入力に対応して数値データを取り込むための乱数ラッチ信号LL1及び/又は乱数ラッチ信号LL2が入力されたときでも、乱数列RSNに含まれる新たな数値データの格納を行うことができない。
これにより、乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが一旦格納された後、その数値データがCPU505などから読み出されるよりも前に、例えば第1始動入賞信号SS1や第2始動入賞信号SS2がノイズ等により誤ってオン状態となったときでも、既に格納されている数値データが更新されてしまい不正確な乱数値の読み出しを防止することができる。また、乱数値取込指定データRDLT0や乱数値取込指定データRDLT1のビット値を外部から意図的に“1”に設定すること、あるいは、第1始動入賞信号SS1や第2始動入賞信号SS2を外部から意図的にオン状態とすることなどにより、既に格納されている数値データを改変するといった不正行為を防止することもできる。その一方で、乱数値レジスタR1Dや乱数値レジスタR2Dに一旦格納された数値データが長時間にわたりCPU505などから読み出されなくなると、その後に第1始動入賞信号SS1や第2始動入賞信号SS2が正常にオン状態となったときに、第1始動入賞口や第2始動入賞口における遊技球の通過(進入)に対応した正確な数値データを乱数値レジスタR1Dや乱数値レジスタR2Dに格納することができなくなる。
そこで、例えば遊技制御用マイクロコンピュータ100のCPU505は、予め定められた乱数値読出条件が成立したときに、図78(D)に示すような所定の乱数値レジスタ読出処理を実行する。そして、乱数値レジスタR1Dや乱数値レジスタR2Dの読み出しを行って乱数ラッチフラグをオフ状態とすることにより、新たな数値データの格納が許可された状態に設定する。乱数値読出条件としては、CPU505がパチンコ遊技機1における遊技制御の実行を開始することや、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときに特図ゲームの保留記憶数が所定の上限値に達していること、普通可変入賞球装置6B(第2始動入賞口)を通過(進入)した遊技球の検出に基づく第2始動条件の成立を無効とする場合にスイッチオンバッファのビット番号[1]をクリアしてビット値を「0」にすること、あるいは、これらの一部もしくは全部を含むものであればよい。図78に示す動作例では、タイミングT25にて図78(B)に示す乱数値レジスタ読出処理が完了したことに対応して、図78(C)に示すように乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値が“1”から“0”へと更新されて、対応する乱数ラッチフラグがオフ状態に設定される。
一例として、CPU505は、パチンコ遊技機1における電源供給の開始に基づいて遊技制御用マイクロコンピュータ100のシステムリセットが解除されたときに、所定のセキュリティチェック処理などを実行してから、ROM506からユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの読み出しなどを行い遊技制御の実行を開始する。このとき、CPU505は、乱数値レジスタ読出処理として図41に示すステップS56の処理を実行することにより、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態とする。なお、図41に示すステップS56の処理において、CPU505は、乱数ラッチフラグデータRDFM1と乱数ラッチフラグデータRDFM0のビット値をチェックした結果などに基づいて、乱数ラッチフラグがオン状態となっている乱数値レジスタの読み出しのみを行うようにしてもよい。あるいは、乱数ラッチフラグがオン状態であるか否かにかかわらず、乱数値レジスタR1Dと乱数値レジスタR2Dの双方から数値データを読み出すことにより、各乱数ラッチフラグをオフ状態としてもよい。
パチンコ遊技機1の電源投入時などには、例えば図6(B)及び(C)に示す電源電圧VSL及び電源電圧VCCのように、各種の電源電圧が徐々に規定値まで上昇していく。こうした電源電圧の上昇中には、例えば遊技制御用マイクロコンピュータ100の内蔵回路といった、各種回路の一部分が正常に動作する一方で、他の部分は未だ正常には動作できない状態となることがある。一例として、電源電圧が不安定な状態では、第1始動入賞信号SS1や第2始動入賞信号SS2が誤ってオン状態となることなどにより、乱数回路509において乱数値レジスタR1Dや乱数値レジスタR2Dに数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態になって新たな数値データの格納が制限されてしまう可能性がある。また、CPU505などによる遊技制御の実行が開始された後、図43に示すステップS92のスイッチ処理が実行されるより前に、所定タイミングで乱数ラッチ信号LL1や乱数ラッチ信号LL2を乱数値レジスタR1Dや乱数値レジスタR2Dに入力することで、特図表示結果を「大当り」とする特図表示結果決定用の乱数値MR1を示す数値データを取得して大当り遊技状態に制御させる不正行為がなされる可能性がある。このように、乱数ラッチフラグがオン状態になると新たな数値データの格納が制限されるようにした場合には、第1始動入賞口や第2始動入賞口といった始動入賞口を遊技球が通過(進入)する始動入賞の発生後にノイズ等により誤った数値データが乱数値レジスタR1Dや乱数値レジスタR2Dに取り込まれて格納されることを防止できる一方で、始動入賞の発生前に電源電圧の不安定による誤動作や不正行為などにより数値データが乱数値レジスタR1Dや乱数値レジスタR2Dに取り込まれて格納された場合、その後に始動入賞が発生しても、この始動入賞の発生タイミングよりも前に既に格納されている数値データが乱数値として取得されて特図表示結果の決定などに用いられる可能性がある。
そこで、遊技制御用マイクロコンピュータ100におけるシステムリセットが解除されて遊技制御が開始されるときには、乱数ラッチフラグをオフ状態に設定して、新たな数値データの格納が許可された状態とする。これにより、例えばパチンコ遊技機1における電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データが乱数値として取得されてしまい、遊技制御における各種の決定などに使用されてしまうことを防止できる。また、遊技制御の実行が開始された後、第1始動口スイッチ22Aや第2始動口スイッチ22Bの状態がチェックされるより前に乱数ラッチ信号を入力して大当り遊技状態に制御させる不正行為を防止することができる。
他の一例として、例えば電源電圧VSLといった、パチンコ遊技機1における所定電源電圧が低下したことに基づいて、電源基板10に搭載された電源監視回路303からオン状態の電源断信号が出力される。CPU505は、図44のステップS111にてオン状態の電源断信号が出力され(ステップS111;Yes)、さらに、ステップS114にてバックアップ監視タイマ値がバックアップ判定値に達した後に、ステップS115〜ステップS118の処理を実行して電源電圧の低下によるパチンコ遊技機1の動作不安定あるいは動作停止に備えるとともに、遊技制御用マイクロコンピュータ100が動作停止状態となるまでステップS119の処理を繰り返し実行することにより、電源断信号の入力状態を繰り返し判定する。その後、ステップS119の処理を実行中に電源断信号がオフ状態となり入力されていない旨の判定がなされたときに、CPU505は、ステップS124の処理を実行してから電源断処理を終了するとともに遊技制御用タイマ割込み処理から復帰(リターン)させることにより、ROM506に記憶されているユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの先頭から、遊技制御の実行を開始させる。ここで、ステップS119の処理により電源断信号がオフ状態となり入力されていない旨の判定がなされた後、電源断処理を終了して制御コードの先頭から遊技制御の実行を開始させるより前に、乱数値レジスタ読出処理としてステップS120〜ステップS123の処理を実行することにより、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態に設定する。
図79は、遊技制御の実行中に電源電圧VSLが低下した場合の動作例を示すタイミングチャートである。始めに、例えばパチンコ遊技機1への電源供給が開始されたことなどに基づき、図79(A)に示す電源電圧VSLが所定値VSL1に達するタイミングT31よりも前のタイミングT30にて、図79(B)に示す電源電圧VCCが所定値VCC1に達する。このタイミングT30では、図79(C)に示すリセット信号がオン状態からオフ状態となる。続いて、タイミングT31にて電源電圧VSLが所定値VSL1に達したときに、図79(D)に示す電源断信号がオン状態からオフ状態となる。その後、例えばタイミングT32にて、乱数値レジスタR1Dに乱数値となる数値データが取り込まれて格納されたことに対応して、図79(E)に示す乱数ラッチフラグデータRDFM0のビット値が“0”から“1”へと変化することにより、乱数値レジスタR1Dに対応する乱数ラッチフラグがオン状態になるものとする。
こうしてタイミングT32にて乱数値レジスタR1Dに数値データが格納された後、その数値データがCPU505などにより読み出されるよりも前のタイミングT33にて、図79(A)に示す電源電圧VSLが所定値VSL1より低下したとする。このとき、図79(D)に示す電源断信号がオン状態であると判定されたことなどに基づいて(図44のステップS111;Yes)、ステップS119にて電源断信号がオン状態であるか否かが繰り返し判定される。その後、例えばタイミングT34にて、図79(A)に示す電源電圧VSLが所定値VSL1に復帰したときには、図44に示すステップS119にて電源断信号がオフ状態であり入力されていないと判定される(ステップS119;No)。また、図44に示すステップS120にて乱数ラッチフラグデータRDFM0のビット値が“1”であり乱数ラッチフラグがオン状態であると判定されたことに基づいて、ステップS121の処理が実行される。そして、乱数値レジスタR1Dに格納された数値データが読み出され、乱数ラッチフラグデータRDFM0のビット値が“1”から“0”へと更新されて、乱数値レジスタR1Dに対応する乱数ラッチフラグがオフ状態に設定される。その後、電源断処理が終了するときには、例えば図44に示すステップS124にて設定された電源断復旧時ベクタテーブルでの指定内容などに基づいて、ROM506に記憶されているユーザプログラム(ゲーム制御用の遊技制御処理プログラム)を示す制御コードの先頭から遊技制御の実行を開始することで、図40に示すような遊技制御メイン処理が最初から実行される。
なお、乱数回路509において、第1始動入賞信号SS1や第2始動入賞信号SS2の立ち上がりエッジに応答して乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納される場合には、例えば図42に示すステップS119の処理を繰り返し実行している期間などに、スイッチ作動用の電源電圧VDDが所定のスイッチ電圧以下に低下した後に正常電圧値に復旧すると、その正常電圧値への復旧中に第1始動入賞信号SS1や第2始動入賞信号SS2の立ち上がりエッジが生じて乱数値レジスタR1Dや乱数値レジスタR2Dの全部に数値データが取り込まれて格納され、各乱数ラッチフラグがオン状態になることがある。このような乱数ラッチフラグのオン状態を放置すると、電源電圧の復旧後に第1始動入賞口や第2始動入賞口を遊技球が通過(進入)して始動入賞が発生したときには、乱数ラッチフラグがオン状態であることから新たな数値データの格納が制限され、電源電圧の復旧中などに取り込まれた数値データに基づいて特図表示結果の決定などが行われてしまい、始動入賞の発生タイミングとは全く異なるタイミングで取り込まれた数値データを用いた決定が行われてしまうという問題が生じる。そこで、遊技制御用マイクロコンピュータ100のCPU505は、図41に示すステップS56や図44に示すステップS121及び/又はステップS123にて乱数値レジスタR1Dや乱数値レジスタR2Dの読み出しを行い、対応する乱数ラッチフラグをオフ状態にしてから遊技制御の実行を開始(再開)させることで、上記の問題を解決することができる。
乱数値読出条件の他の一例として、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときに特図ゲームの保留記憶数が所定の上限値に達している場合がある。ここで、例えば図56に示すステップS203にて第1始動口スイッチ22Aがオン状態であると判定された後、図57に示すステップS502にて第1保留記憶カウンタの読出値が所定の上限値(例えば「4」)以上であると判定された場合には、第1特図保留記憶部591Aにて全てのエントリ(例えば保留番号が「1」〜「4」に対応するエントリ)に保留データが記憶されており、第1特図保留記憶部591Aにおける保留データの記憶数が上限記憶数に達しているために、新たな保留データを第1特図保留記憶部591Aに記憶させることができない。また、例えば図56に示すステップS208にて第2始動口スイッチ22Bがオン状態であると判定された後、図57に示すステップS502にて第2保留記憶カウンタの読出値が所定の上限値以上であると判定された場合には、第2特図保留記憶部591Bにて全てのエントリに保留データが記憶されており、第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達しているために、新たな保留データを第2特図保留記憶部591Bに記憶させることができない。こうした場合には、一般に、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したことに基づく特図ゲームの始動条件を成立させずに無効なものとし、賞球の払出しのみが行われる。
そのため、乱数回路509により生成される乱数値となる数値データを読み出さないようにすることも考えられる。しかしながら、乱数回路509では、保留データの記憶数にかかわらず、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されたことに応答して、乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態となる。そうすると、次に第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときには、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されても、乱数値レジスタR1Dや乱数値レジスタR2Dにおける新たな数値データの格納が制限されるために、始動入賞の発生に対応した正確な乱数値を取得することができなくなる。
これに対して、遊技制御用マイクロコンピュータ100のCPU505は、図57に示すステップS502にて保留記憶カウンタの読出値が所定の上限値以上であると判定したときに(ステップS502;Yes)、ステップS510の処理を実行して、乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出すことで、対応する乱数ラッチフラグをオフ状態としてから、乱数値取得処理を終了する。なお、ステップS510の処理では、図56のステップS202にて第1始動口入賞テーブル136Aがセットされた場合に乱数値レジスタR1Dの読み出しを行う一方、図56のステップS207にて第2始動口入賞テーブル136Bがセットされた場合に乱数値レジスタR2Dの読み出しを行うようにする。こうして、例えば第1特別図柄表示装置4Aや第2特別図柄表示装置4Bといった、特別図柄を可変表示する表示装置が複数設けられている場合において、特図ゲームの保留記憶数が上限値に達している特別図柄と対応付けられた始動入賞口を通過(進入)した遊技球が検出されたときに、その始動入賞口と対応付けられた乱数値レジスタから数値データを読み出して新たな数値データの格納を許可する一方で、その始動入賞口と対応付けられていない乱数値レジスタからは数値データを読み出さないようにする。これにより、複数の始動入賞口のうち、いずれかを遊技球が通過(進入)したときに、他の始動入賞口に対応して乱数値となる数値データを更新や取得する動作に影響が及ばないようにすることができる。
乱数値読出条件の他の一例として、普通入賞球装置6A(第1始動入賞口)や普通可変入賞球装置6B(第2始動入賞口)を通過(進入)した遊技球の検出に基づく第1始動条件や第2始動条件の成立を異常入賞の発生に対応して無効とし、スイッチオンバッファのビット番号[0]やビット番号[1]をクリアしてビット値を[0]にする場合がある。普通入賞球装置6Aが形成する第1始動入賞口の内部における球経路には、上流側に近接スイッチなどで構成された第1始動口スイッチ22Aが設置され、下流側にフォトセンサなどで構成された第1入賞確認スイッチ22Cが設置されている。また、普通可変入賞球装置6Bが形成する第2始動入賞口の内部における球経路には、上流側に近接スイッチなどで構成された第2始動口スイッチ22Bが設置され、下流側にフォトセンサなどで構成された第2入賞確認スイッチ22Dが設置されている。すなわち、第1始動入賞口や第2始動入賞口では、それぞれの入賞口を通過(進入)した遊技球が、検出方式の異なる2つのスイッチによって検出され、その検出結果に基づいて異常入賞が発生したか否かを判定することができる。
そして、図46に示すステップSA26にて第1スイッチ用カウント値が正常範囲外であると判定されて第1始動入賞口における異常入賞の発生が検出されたときや(ステップSA26;Yes)、ステップSA31にて第2スイッチ用カウント値が正常範囲外であると判定されて第2始動入賞口における異常入賞の発生が検出されたときには、ステップSA33にてスイッチオンバッファの対応するビット番号[0]やビット番号[1]がクリアされてビット値が“0”になる。これにより、第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したことに基づく特図ゲームの始動条件などを成立させずに無効なものとし、賞球の払出しも行われないようにする。
このとき、乱数回路509により生成される乱数値となる数値データを読み出さないようにすることも考えられる。しかしながら、乱数回路509では、CPU505での異常入賞に基づく無効判定にかかわらず、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されたことに応答して、対応する乱数値レジスタR1Dや乱数値レジスタR2Dに乱数値となる数値データが取り込まれて格納され、対応する乱数ラッチフラグがオン状態となる。そうすると、次に第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときには、第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態となって入力されても、乱数値レジスタR1Dや乱数値レジスタR2Dにおける新たな数値データの格納が制限されるために、始動入賞の発生に対応した正確な乱数値を取得することができなくなる。
これに対して、遊技制御用マイクロコンピュータ100のCPU505は、図46に示すステップSA33にてスイッチオンバッファのビット番号[0]やビット番号[1]をクリアするときに、ステップSA35の処理を実行して、対応する乱数値レジスタR1Dや乱数値レジスタR2Dに格納された数値データを読み出すことで、対応する乱数ラッチフラグをオフ状態としてから、スイッチ異常チェック処理を終了する。これにより、第1始動入賞口や第2始動入賞口における異常入賞の発生により特図ゲームの始動条件などが無効とされたときに、対応する乱数値レジスタR1Dや乱数値レジスタR2Dの読み出しを行い、対応する乱数ラッチフラグをオフ状態にすることで、以後に発生する始動入賞に対応した正確な乱数値の取得が可能になる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)したときには、CPU505が図56に示すステップS204やステップS209にて、遊技球が通過(進入)した始動入賞口にかかわらず共通の乱数値設定処理を実行する。そして、例えば図57に示すステップS501〜ステップS513の処理といった、遊技球が通過した始動入賞口にかかわらず共通の処理ルーチンにおいて、特にステップS505及びステップS506の処理を実行することなどにより、乱数回路509が備える乱数値レジスタR1D及び乱数値レジスタR2Dのうち、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタから、乱数値となる数値データを読み出す。こうした共通の処理ルーチンにより乱数値となる数値データを読出可能にすることで、例えば第1始動入賞口や第2始動入賞口といった、複数の始動入賞口を設けたパチンコ遊技機1において、乱数値となる数値データを取得するためのプログラム量が過剰に増大することを防止できる。
主基板11では、電源基板10からの初期電力供給時(バックアップ電源のない電源投入時)や、システムリセットの発生後における再起動時などに、CPU505がROM506などに記憶されているセキュリティチェックプログラム506Aを読み出して実行することにより、遊技制御用マイクロコンピュータ100がセキュリティモードとなる。このときには、セキュリティチェックプログラム506Aに対応した処理として、例えば図39に示すようなセキュリティチェック処理が実行される。ここで、遊技制御用マイクロコンピュータ100がセキュリティモードとなるセキュリティ時間は、ROM506のプログラム管理エリアに記憶されているセキュリティ時間設定KSESのビット番号[2−0]やビット番号[4−3]に予め格納されたビット値に応じて、一定の固定時間とは異なる時間成分を含むことができる。
例えば、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値が“000”以外の値であれば(図39に示すステップS2;No)、図13(D)に示すような設定内容に対応して、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定することができる(ステップS4)。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値が“00”以外の値であれば(ステップS6;No)、図13(C)に示すようなショートモード又はロングモードに対応して、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定することができる(ステップS8)。
こうして設定されたセキュリティ時間が経過するまでは(ステップS14;No)、ROM506に記憶されているユーザプログラムによる遊技制御メイン処理の実行が開始されない。そして、乱数回路509による乱数値となる数値データの生成動作も、遊技制御用マイクロコンピュータ100がセキュリティモード中である期間では、開始されないようにすればよい。これにより、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
一例として、パチンコ遊技機1の機種毎に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を異なる値に設定する。この場合には、図39に示すステップS4にて設定される延長時間を、パチンコ遊技機1の機種毎に異ならせることができ、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することが困難になる。また、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“01”又は“10”に設定することにより、ステップS8にて設定される可変設定時間を、システムリセット毎に異ならせる。これにより、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングを特定することは著しく困難になる。
図39に示すステップS14にてセキュリティ時間が経過したと判定されたときには(ステップS14;Yes)、CPU505がROM506に記憶されているユーザプログラムを読み出して、図40に示すような遊技制御メイン処理が実行される。そして、例えばステップS33における設定処理などには、図41に示すような乱数回路設定処理が含まれている。ここで、図12(B)に示すような第2乱数初期設定KRS2のビット番号[0]におけるビット値を“1”とすれば、図41に示すステップS55の処理などにより、乱数回路509にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更することができる。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタ559Aや乱数値レジスタ559Bから読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
乱数回路509などには、CPU505の動作とは別個に初期値決定用データとなるカウント値を更新するフリーランカウンタ554Aが設けられている。そして、第2乱数初期設定KRS2のビット番号[0]におけるビット値が“1”である場合には、乱数回路509のスタート値初期設定回路554による設定などに基づき、初期設定時にフリーランカウンタ554Aのカウント値をそのまま用いること、あるいは、そのカウント値を所定の演算関数(例えばハッシュ関数)に代入して得られた値を用いることなどにより、スタート値がランダムに決定される。これにより、CPU505の動作態様から乱数回路509においてスタート値となる数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
遊技制御用マイクロコンピュータ100のCPU505は、図62に示すステップS252にて図31(A)に示す大当り変動パターン種別決定テーブル133Aを使用テーブルにセットした後や、ステップS255にて図31(B)に示す小当り変動パターン種別決定テーブル133Bを使用テーブルにセットした後、ステップS258にて図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cを使用テーブルにセットした後、あるいは、ステップS259にて図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dを使用テーブルにセットした後に、ステップS260の処理を実行して、変動パターン種別を予め用意された複数種類のいずれかに決定する。そして、このとき決定された変動パターン種別に基づき、ステップS261にて図33(A)に示す当り変動パターン決定テーブル134Aあるいは図33(B)に示すハズレ変動パターン決定テーブル134Bを使用テーブルにセットした後に、ステップS262の処理を実行して、変動パターンを予め用意された複数種類のいずれかに決定する。これにより、変動パターン種別の追加や発生率の変更を行う場合には、変動パターン種別決定テーブルにおける決定値の設定のみを変更すればよいので、設定時間を短縮化することができる。また、詳細な変動パターンの追加や発生率の変更を行う場合には、変動パターン決定テーブルにおける決定値の設定のみを変更すればよいので、設定時間を短縮化することができる。すなわち、変動パターン種別の決定割合と、変動パターンの決定割合とを、別個に設定することができるので、変動パターン種別や変動パターンの振分けにかかわる設計変更を容易に行うことができる。
図31(A)に示す大当り変動パターン種別決定テーブル133Aの設定例では、大当り種別が「突確」である場合に対応して、変動パターン種別CA4−1及び変動パターン種別CA4−2といった、大当り種別が「非確変」又は「確変」である場合とは異なる変動パターン種別が含まれるように、テーブルデータが構成されている。このようにして、大当り種別が「突確」である場合には、「突確」以外である場合とは異なる変動パターン種別や変動パターンに決定することにより、大当り種別が「突確」であることにより2ラウンド大当り状態に制御されるにもかかわらず、15ラウンド大当り状態に制御される場合と同様の演出動作が行われて遊技者に不信感を与えてしまうことを防止できる。
図32(A)に示すハズレ変動パターン種別決定テーブル(通常時)133Cや図32(B)に示すハズレ変動パターン種別決定テーブル(時短中)133Dの設定例において、合計保留記憶数が所定数以上である場合には、合計保留記憶数が所定数未満である場合に比べて、多くの決定値が変動パターン種別CA1−2に割り当てられている。変動パターン種別CA1−2には、短縮用の非リーチ変動パターンである変動パターンPA1−2のみが含まれている。したがって、合計保留記憶数が所定数以上であるときには、所定数未満であるときに比べて、特別図柄や飾り図柄の平均的な可変表示時間が短縮される。これにより、パチンコ遊技機1において可変表示の作動率(稼働率)が低下してしまう事態を極力防止することができる。
図46に示すステップSA34にて異常入賞報知フラグがオン状態にセットされた場合には、図50に示すステップS194の設定などに基づいて、異常入賞報知コマンドが主基板11から演出制御基板12に対して送信される。演出制御基板12では、演出制御用マイクロコンピュータ120のCPUが、図66に示すステップS407の報知制御処理にて、第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されたことを報知する異常報知画面を表示させる。これにより、パチンコ遊技機1は、異常な状態が発生したことを遊技店の店員に認識させることができる。
図45に示すスイッチ処理では、ステップSA01やステップSA04にて入力ポートIP0及び入力ポートIP1の入力値が定期的に取り込まれ、ステップSA07にて前回ポートバッファ値との排他的論理和演算が行われる。続いて、ステップSA08では、この演算結果と、ポートバッファ値との論理積演算が行われて、ステップSA09にてこの演算結果がスイッチオンバッファに設定される。こうして、スイッチオンバッファには、入力ポートIP0及び入力ポートIP1に異なるタイミングで入力された各信号値からとられた演算結果が格納される。CPU505は、このスイッチオンバッファの内容に基づいて、ゲートスイッチ21、第1始動口スイッチ22A、第2始動口スイッチ22B、カウントスイッチ23などからの検出信号の入力状態を一括して判定することができる。これにより、複数のスイッチ毎に検出信号の入力状態を判定したり、スイッチ回路114にマスクをして第2始動口スイッチ22Bからの検出信号が入力されないようにしたりするなどして、普通可変入賞球装置6B(第2始動入賞口)が閉鎖状態であるときに、スイッチオンバッファのビット番号[1]がセットされてビット値が“1”にならないようにするためのプログラムを設ける必要がなくなる。このため、プログラム構成の複雑化により、CPU505での処理負担が増大することを防止することができる。
こうしたスイッチ処理は、図43に示す遊技制御用タイマ割込み処理において、ステップS94の情報出力処理、ステップS96の特別図柄プロセス処理及びステップS98の賞球処理が実行されるよりも前に実行される。そして、図45に示すスイッチ処理内のステップSA11にてスイッチ異常チェック処理が実行され、図46に示すステップSA33にてスイッチオンバッファのビット番号[0]やビット番号[1]をクリアしてビット値を“0”にすることにより、第1始動入賞口や第2始動入賞口への入賞が無効にされる。したがって、第1始動入賞口や第2始動入賞口における異常入賞の発生に基づくスイッチオンバッファの格納値が、始動口信号の外部出力、賞球の払出、第1始動条件又は第2始動条件が成立したことに基づく第1特図又は第2特図を用いた特図ゲームなどに用いられることを、確実に防止できる。
図65に示すステップS170の普通図柄通常処理で普通図柄の可変表示結果となる普図表示結果を決定するときには、普図表示結果決定テーブル135を参照することにより、時短フラグがオンである場合に、時短フラグがオフである場合と比較して高い割合で、普図表示結果を「普図当り」に決定する。また、時短フラグがオンであるときには、時短フラグがオフであるときに比べて、普通図柄の可変表示時間である普図変動時間が短くなるように設定される。加えて、時短フラグがオンであるときには、時短フラグがオフであるときに比べて、普図表示結果が「普図当り」となったことに基づく普通可変入賞球装置6B(第2始動入賞口)の開放回数や開放時間が増大するように設定される。こうして、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御や高開放制御が行われるときには、通常状態などにて時間短縮制御や高開放制御が行われないときに比べて、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度を高めて、多くの賞球が払い出される可能性を高め、遊技興趣を向上させることができる。
図30に示す大当り種別決定テーブル133の設定例では、変動特図指定バッファ値が「1」であれば「突確」の大当り種別に対して決定値が割り当てられる一方で、変動特図指定バッファ値が「2」であれば「突確」の大当り種別に対して決定値が割り当てられていない。したがって、普通入賞球装置6Aに形成された第1始動入賞口に進入した遊技球が第1始動口スイッチ22Aによって検出されたことに基づいて第1始動条件が成立した後、第1開始条件が成立した場合には、普通可変入賞球装置6Bに形成された第2始動入賞口に進入した遊技球が第2始動口スイッチ22Bによって検出されたことに基づいて第2始動条件が成立した後、第2開始条件が成立した場合とは異なる割合で、大当り種別が決定される。これにより、遊技球が普通入賞球装置6Aに形成された第1始動入賞口と、普通可変入賞球装置6Bに形成された第2始動入賞口とのいずれに進入したことに基づき、大当り遊技状態に制御されたかに対して、遊技者の関心を高め、遊技興趣を向上させることができる。
図29(B)に示す第2特図表示結果決定テーブル130Bの設定例では、「小当り」の特図表示結果に対して決定値が割り当てられていない。また、図30に示す大当り種別決定テーブル133の設定例では、変動特図指定バッファ値が「2」である場合に、「突確」の大当り種別に対して決定値が割り当てられていない。そして、図61に示すステップS221、S223の処理により、第2特図を用いた特図ゲームが、第1特図を用いた特図ゲームよりも優先して実行される。したがって、パチンコ遊技機1における遊技状態が確変状態や時短状態で時間短縮制御や高開放制御が行われ、普通可変入賞球装置6B(第2始動入賞口)が開放状態となる頻度が高められているときに、第2始動条件の成立に基づく第2特図を用いた特図ゲームで大当り種別が「突確」に決定されることや、特図表示結果が「小当り」に決定されることがない。これにより、確変状態や時短状態における遊技の間延びによる遊技興趣の低下を防止できる。
以上説明したように、上記実施の形態におけるパチンコ遊技機1では、例えば第1始動入賞信号SS1や第2始動入賞信号SS2がオン状態になることといった所定信号の入力に基づいて、乱数回路509で乱数生成回路553や乱数列変更回路555などにより予め定められた手順で更新される乱数列RSNに含まれる数値データが乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納されたときに、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータRDFM0や乱数ラッチフラグデータRDFM1のビット値を“0”から“1”へと変化させることなどにより、数値データを格納した乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に対応する乱数ラッチフラグがオン状態になり新たな数値データの格納が制限される。その一方で、例えばCPU505が図57に示すステップS506の処理を実行したときといった、乱数値の読出タイミングにて乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)から乱数値となる数値データが読み出されたときに、その数値データが読み出された乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に対応する乱数ラッチフラグがオフ状態になり新たな数値データの格納が許可される。これにより、所定信号の入力に基づいて乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データは、CPU505などによって読み出されるまでにノイズ等により改変されてしまうことがなく、正確な乱数値となる数値データを取得することができる。
そして、遊技制御用マイクロコンピュータ100のCPU505などにより遊技制御の実行が開始されるときには、例えば図41に示すステップS56の処理や、図44に示すステップS120〜ステップS123の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばパチンコ遊技機1において電源遮断が発生したときや電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
図10(A)や図13(A)及び(C)に示すセキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“00”以外の値としたときには、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定する。また、図10(A)や図13(A)及び(D)に示すセキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外の値としたときには、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定する。これにより、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングから、乱数回路509の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に大当り遊技状態を発生させるなどの行為を、確実に防止することができる。
普通入賞球装置6Aが形成する第1始動入賞口の内部における球経路には、上流側に近接スイッチなどで構成された第1始動口スイッチ22Aが設置され、下流側にフォトセンサなどで構成された第1入賞確認スイッチ22Cが設置されている。また、普通可変入賞球装置6Bが形成する第2始動入賞口の内部における球経路には、上流側に近接スイッチなどで構成された第2始動口スイッチ22Bが設置され、下流側にフォトセンサなどで構成された第2入賞確認スイッチ22Dが設置されている。すなわち、第1始動入賞口や第2始動入賞口では、それぞれの入賞口を通過(進入)した遊技球が、検出方式の異なる2つのスイッチによって検出され、その検出結果に基づいて異常入賞が発生したか否かを判定する。これにより、遊技球を検出するスイッチやセンサに対する不正行為を確実に検知して、確実な不正行為対策を講じることができる。
乱数回路509の乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から読み出された数値データを用いて、所定の演算処理が実行されることにより、特図表示結果決定用の乱数値MR1を示す数値データや加算値決定用の乱数値MR6を示す数値データが設定される。そして、加算値決定用の乱数値MR6などを用いて、各種の遊技用乱数となる乱数値MR2〜乱数値MR5が更新される。こうした遊技用乱数に基づいて特図表示結果その他の遊技内容が決定されることにより、遊技内容の決定に偏りが生じることなどを防止できる。
パチンコ遊技機1への電源投入時に初期化処理が実行されたとき、及び第1始動入賞口や第2始動入賞口における異常入賞の発生が検出されてエラーが発生したときに、共通の出力端子からパチンコ遊技機1の外部装置に対してセキュリティ信号が外部出力される。また、セキュリティ信号の外部出力中に新たな異常入賞の発生が検出されたときには、セキュリティ信号を出力する時間を延長する。このように、初期化処理の実行に基づいてセキュリティ信号が外部出力されることにより、パチンコ遊技機1への電源投入時に行われる不正行為を防止することができる。また、初期化処理が実行されたときと所定のエラーが発生したときとで共通の出力端子からセキュリティ信号が外部出力されることにより、外部出力用の信号線に無駄が生じることを防止できる。
乱数回路509では、乱数生成回路553から出力されたカウント値順列RCNを乱数列変更回路555が予め定められた乱数変更規則に基づいて変更することで、数値データを所定手順により所定の更新初期値から所定の更新最終値まで循環的に更新する。そして、図10(A)や図12(B)に示す第2乱数初期設定KRS2のビット番号[0]におけるビット値を“1”としたときには、CPU505が図41に示すステップS55の処理を実行することなどにより、乱数回路509にて生成される乱数値となる数値データのスタート値を、システムリセット毎に変更する。これにより、たとえ乱数回路509の動作開始タイミングを特定することができたとしても、乱数回路509が備える乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から読み出される数値データを特定することは困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
より具体的には、乱数回路509などに設けられたフリーランカウンタ554により、遊技制御用マイクロコンピュータ100のCPU505における動作とは別個に初期値決定用データとなるカウント値が更新される。そして、乱数回路509のスタート値初期設定回路554による設定などに基づき、フリーランカウンタ554のカウント値を用いて乱数値となる数値データのスタート値が決定される。これにより、遊技制御用マイクロコンピュータ100のCPU505における動作態様から乱数値となる数値データを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
遊技制御用マイクロコンピュータ100が備える外部バスインタフェース501では、内部リソースアクセス制御回路501Aにより、例えばROM506の記憶データといった、遊技制御用マイクロコンピュータ100の内部データにつき、CPU505等の内部回路以外による外部読出が制限される。これにより、例えばROM506に記憶されているゲーム制御用のユーザプログラムといった、遊技制御処理プログラムが遊技制御用マイクロコンピュータ100の外部から読み出されて解析などに提供されることを防止できる。そして、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」の接続による不正信号の入力などを、確実に防止することができる。
遊技制御用マイクロコンピュータ100に内蔵又は外付けされた乱数回路509の周波数監視回路551では、乱数用クロック生成回路112から乱数用外部クロック端子ERCに対する乱数用クロックRCLKの入力状態を内部システムクロックSCLKと比較して、乱数用クロックRCLKにおける周波数異常が検知されたときに、内部情報レジスタCIFのビット番号[4]に格納される内部情報データCIF4のビット値を“1”に設定する。そして、CPU505では、例えば図42に示すステップS63にて内部情報データCIF4の読出値が“1”であると連続して判定された回数が、ステップS65にてクロック異常判定値に達したと判定されたときに、乱数回路509の動作状態に異常が発生したと判定する。これにより、乱数用クロックRCLKとして不正信号を入力することによる不正行為を確実に防止することができる。
遊技制御用マイクロコンピュータ100のCPU505は、パチンコ遊技機1における電源供給の開始などに基づいて遊技制御用マイクロコンピュータ100のシステムリセットが解除されたときに、乱数値レジスタ読出処理として図41に示すステップS56の処理を実行することにより、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを読み出して、対応する乱数ラッチフラグをオフ状態とする。これにより、例えば電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを乱数値として取得してしまうことを防止できる。
また、図44に示すステップS111にて電源断信号がオン状態であると判定されたことなどに対応して、例えば電源電圧VSLといった所定電源電圧の低下が検出された後、遊技制御用マイクロコンピュータ100が動作停止状態となるまでは、ステップS119の処理を実行することにより、電源断信号の入力状態を繰り返し判定する。そして、ステップS119にて電源断信号がオフ状態となり入力されていない旨の判定がなされたときに、ステップS124における設定に基づきROM506に記憶された制御コードの先頭から遊技制御が開始されるより前に、ステップS120〜ステップS123の処理を実行して、オン状態となっている乱数ラッチフラグをオフ状態にする。これにより、例えば電源電圧VSLといった所定電源電圧の低下時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データを乱数値として取得してしまうことを防止できる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した始動入賞の発生時に、図57のステップS509にて設定された特図表示結果決定用の乱数値MR1に基づき、図56に示すステップS205やステップS210にて図59に示すような入賞時乱数値判定処理が実行され、ステップS525やステップS531にて乱数値MR1が大当り判定範囲内であるか否かを判定して、特図表示結果が「大当り」に決定されるか否かを判定する。そして、図68のステップS554やステップS561にて入賞時当り判定が通知されたことに対応して、ステップS556やステップS563にて連続予告フラグがオン状態にセットされることなどにより、入賞時当り判定の対象となった可変表示が開始されるより前に、例えば複数回の可変表示にわたる連続予告演出といった、特定の演出動作を実行する。これにより、入賞時当り判定などの対象となった可変表示が開始されるより前に、その表示結果が「大当り」となる可能性を報知して、長期間にわたり可変表示結果が「大当り」となる期待感を持続させて、遊技興趣を向上させることができる。
第1始動入賞口や第2始動入賞口を遊技球が通過(進入)した始動入賞の発生時に、図57のステップS511にて抽出された変動パターン種別決定用の乱数値MR3を示す数値データに基づき、図59のステップS528やステップS534にて特定パターン共通範囲の範囲内であるか否かを判定して、例えばスーパーリーチを伴う変動パターンといった、特定の変動パターンに決定されるか否かを判定する。そして、図68のステップS555やステップS562にて特定パターン共通範囲内が通知されたことに対応して、ステップS556やステップS563にて連続予告フラグがオン状態にセットされることなどにより、特定パターン共通範囲内の判定対象となった可変表示が開始されるより前に、例えば複数回の可変表示にわたる連続予告演出といった、特定の演出動作を実行する。これにより、特定パターン共通範囲内などの判定対象となった可変表示が開始されるより前に、その可変表示で特定の変動パターンとなる可能性を報知して、長期間にわたり可変表示結果が「大当り」となる期待感を高めて、遊技興趣を向上させることができる。
また、ハズレ変動パターン種別決定テーブル(通常時)133Cやハズレ変動パターン種別決定テーブル(時短中)133Dでは、合計保留記憶数が所定数以上であるか否かに応じて、変動パターン種別CA1−1〜変動パターン種別CA1−3や変動パターン種別CA2−1〜変動パターン種別CA2−3に対する決定値の割当てが異なっている。これにより、特図ゲームの保留記憶数に応じて変動パターンの決定割合を異ならせて、特別図柄や飾り図柄の可変表示時間の調整を可能にすることにより、保留記憶数が多いときには可変表示の効率を高める一方、保留記憶数が少ないときには可変表示が途切れて遊技興趣が低下することを防止できる。
その一方で、ハズレ変動パターン種別決定テーブル(通常時)133Cとハズレ変動パターン種別決定テーブル(時短中)133Dにおいて、変動パターン種別CA2−4に対応した決定値の少なくとも一部は、遊技状態や合計保留記憶数にかかわらず同一決定値「230」〜「251」が設定されている。これにより、遊技状態や合計保留記憶数にかかわらず、特定の変動パターンに決定される旨の判定を、確実に行うことができる。
第1始動入賞口を通過(進入)した遊技球が検出されて図56に示すステップS203にて第1始動口スイッチ22Aがオンであると判定されたときにはステップS204において、また、第2始動入賞口を通過(進入)した遊技球が検出されて図56に示すステップS208にて第2始動口スイッチ22Bがオンであると判定されたときにはステップS209において、遊技球が通過(進入)した始動入賞口にかかわらず共通の乱数値取得処理が実行される。そして、例えば図57に示すステップS505及びステップS506の処理といった、遊技球が通過した始動入賞口にかかわらず共通の処理ルーチンにおいて、乱数回路509が備える乱数値レジスタR1D(559A)及び乱数値レジスタR2D(559B)のうち、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタから、乱数値となる数値データを読み出す。これにより、例えば第1始動入賞口や第2始動入賞口といった、複数の始動入賞口を設けたパチンコ遊技機1において、プログラム量の過剰な増大を防止することができる。
図57に示すステップS502にて保留記憶カウンタの読出値が上限値以上であると判定されたことに対応して、乱数値の読出タイミングにて第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達しているときには、ステップS510の処理において、遊技球が通過した第1始動入賞口又は第2始動入賞口に対応する乱数値レジスタR1D(559A)又は乱数値レジスタR2D(559B)から、乱数値となる数値データを読み出すことにより、対応する乱数ラッチフラグをオフ状態に設定する。これにより、第1特図保留記憶部591Aや第2特図保留記憶部591Bにおける保留データの記憶数が上限記憶数に達した後、例えば上限記憶数未満となってから乱数値の読出タイミングとなったときなどに、第1始動入賞信号SS1や第2始動入賞信号SS2といった所定信号の入力に基づく正確な乱数値を取得することができる。
図46に示すステップSA33にてスイッチオンバッファのビット番号[0]やビット番号[1]がクリアされてビット値が“0”となり、普通入賞球装置6A(第1始動入賞口)や普通可変入賞球装置6B(第2始動入賞口)を遊技球が通過(進入)したことに基づく第1始動条件や第2始動条件の成立が異常入賞の発生により無効とされるときには、ステップSA35の処理において、遊技球が通過した第1始動入賞口や第2始動入賞口に対応する乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から、乱数値となる数値データを読み出すことにより、対応する乱数ラッチフラグをオフ状態に設定する。これにより、第1始動条件や第2始動条件の成立が異常入賞の発生により無効とされた後、例えば新たな遊技球が普通入賞球装置6A(第1始動入賞口)や普通可変入賞球装置6B(第2始動入賞口)を通過(進入)して乱数値の読出タイミングとなったときなどに、第1始動入賞信号SS1や第2始動入賞信号SS2といった所定信号の入力に基づく正確な乱数値を取得することができる。
この発明は、上記実施の形態に限定されず、様々な変形及び応用が可能である。例えば、上記実施の形態では、乱数回路509において乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に数値データが格納されたときに、対応する乱数ラッチフラグデータRDFM0あるいは乱数ラッチフラグデータRDFM1のビット値が“1”(オン状態)に設定されて新たな数値データの格納を制限する一方、乱数値の読出タイミングにて乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)から数値データが読み出されたときに、対応する乱数ラッチフラグデータRDFM0あるいは乱数ラッチフラグデータRDFM1のビット値が“0”(オフ状態)に設定されて新たな数値データの格納を許可する構成と、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングにてROM506の記憶内容が変更されたか否かを検査するセキュリティチェックの実行時間を可変設定可能とする構成と、第1始動入賞口や第2始動入賞口その他の入賞口を通過(進入)した遊技球を検出する入賞口スイッチとして、球経路の上流側に第1スイッチを設けるとともに下流側に第2スイッチを設け、第1スイッチと第2スイッチとでは異なる検出方式(例えば近接スイッチとフォトセンサなど)を採用した構成と、乱数回路509の乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から読み出した数値データを加工するための演算処理を実行する構成と、初期化処理が実行されたときと所定のエラー判定がなされたときとで共通の出力端子からセキュリティ信号を外部出力する構成とが、単一のパチンコ遊技機1に全て備えられるものとして説明した。
しかしながら、この発明はこれに限定されず、これらの構成の一部を備えたものであってもよい。一例として、乱数回路509において乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)に数値データが格納されたときに、対応する乱数ラッチフラグデータRDFM0あるいは乱数ラッチフラグデータRDFM1のビット値が“1”(オン状態)に設定されて新たな数値データの格納を制限する一方、乱数値の読出タイミングにて乱数値レジスタR1D(559A)あるいは乱数値レジスタR2D(559B)から数値データが読み出されたときに、対応する乱数ラッチフラグデータRDFM0あるいは乱数ラッチフラグデータRDFM1のビット値が“0”(オフ状態)に設定されて新たな数値データの格納を許可する構成と、パチンコ遊技機1の電源投入やシステムリセット等による動作開始タイミングにてROM506の記憶内容が変更されたか否かを検査するセキュリティチェックの実行時間を可変設定可能とする構成とのうち、一方又は双方の構成を備えることを前提に、第1始動入賞口や第2始動入賞口その他の入賞口を通過(進入)した遊技球を検出する入賞口スイッチとして、球経路の上流側に第1スイッチを設けるとともに下流側に第2スイッチを設け、第1スイッチと第2スイッチとでは異なる検出方式(例えば近接スイッチとフォトセンサなど)を採用した構成と、乱数回路509の乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から読み出した数値データを加工するための演算処理を実行する構成と、初期化処理が実行されたときと所定のエラー判定がなされたときとで共通の出力端子からセキュリティ信号を外部出力する構成とのうち、一部の構成を備えたものであってもよい。
上記実施の形態では、第1特別図柄表示装置4A及び第2特別図柄表示装置4Bを備えたパチンコ遊技機1について説明したが、1つの特別図柄表示装置のみが設けられたものであってもよい。この場合には、例えば図16に示す乱数回路509が備えるラッチ用フリップフロップ557B、乱数ラッチセレクタ558B及び乱数値レジスタR2D(559B)の組合せを不使用とすればよい。
また、普通入賞球装置6Aが形成する第1始動入賞口と、普通可変入賞球装置6Bが形成する第2始動入賞口とが、複数の始動領域として設けられるものに限定されず、例えば3個以上といった複数の始動領域が設けられるものであってもよい。この場合、各始動領域にて遊技球の始動入賞が検出されたことに基づき、互いに異なる特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。そして、乱数回路509には、始動領域の個数に対応して3個以上といった複数の乱数値レジスタが設けられ、また、各乱数値レジスタに対応した乱数ラッチフラグが設けられるようにすればよい。あるいは、例えば3個以上の始動領域のうちで、一部(少なくとも2個)の始動領域にて遊技球の始動入賞が検出されたことに基づき、同一の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。また、複数の始動領域のうち、いずれの始動領域にて遊技球の始動入賞が検出された場合でも、共通する1個(あるいは1組)の特別図柄を用いた特図ゲームを実行するための始動条件が成立するようにしてもよい。この場合には、複数の始動領域において遊技球の始動入賞が検出された順番と同一の順番で、特図ゲームを開始するための開始条件が成立するようにしてもよい。あるいは、複数の始動領域に優先順位を付け、優先順位が高い始動領域にて遊技球の始動入賞が検出されたことに基づく特図ゲームを開始するための開始条件を、優先順位が低い始動領域にて遊技球の始動入賞が検出されたことに基づく開始条件よりも、優先的に成立させるようにしてもよい。
図44に示すステップS119の処理では、電源断信号がオン状態であるか否かの判定に代えて、ウォッチドッグタイマがタイムアウトしたか否かの判定を行うようにしてもよい。例えば、ウォッチドッグタイマの入力端子に内部システムクロックSCLKといった所定の発振信号を供給し、その信号変化をカウントアップする。そして、ウォッチドッグタイマでカウントされた値が所定値(タイムアウト値)に達すると、タイムアウト信号が出力される。タイムアウト信号は所定の反転回路で論理反転された後、復帰信号としてAND回路に入力される。AND回路はリセット信号と復帰信号との論理積をとってCPU505のリセット端子に供給する。ウォッチドッグタイマにおけるタイムアウト値は、電源断信号がオン状態になってから、例えば電源電圧VSLが電源電圧VCCを生成可能な電圧値よりも低下する時間以上に設定されればよい。ウォッチドッグタイマは、電源電圧VCCを駆動電圧として動作するので、タイムアウト値は、ウォッチドッグタイマの動作可能期間に相当する値以上に設定される。したがって、パチンコ遊技機1への電力供給停止時には、そのまま電源電圧が低下して供給停止に至るのであれば、ウォッチドッグタイマがタイムアウトして復帰信号が出力されるより前に、ウォッチドッグタイマ及びその他の回路部品は動作しなくなる。なお、CPU505が遊技制御を実行しているときには、定期的にタイマクリア信号がウォッチドッグタイマに供給されて、カウント値がクリア(例えば初期値「0」に設定など)されればよい。タイマクリア信号の出力周期は、ウォッチドッグタイマがタイムアウトするまでの所要時間よりも短くなるように設定する。そのため、CPU505が通常の遊技制御を実行しているときには、ウォッチドッグタイマからタイムアウト信号が出力されることはない。
この場合、ステップS119の処理が繰り返し実行される期間では、ウォッチドッグタイマへのタイマクリア信号の供給が行われず、所定時間が経過しても電源電圧VCCが正常電圧値であれば、ウォッチドッグタイマにてタイムアウトが発生する。このときには、CPU505に供給された復帰信号に基づいて、遊技制御処理プログラムの先頭から処理を開始(再開)するようにしてもよい。このようにしても、例えば図41に示すステップS56の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。あるいは、図44に示すステップS119の処理にてウォッチドッグタイマにてタイムアウトが発生したと判定されたときに、パチンコ遊技機1が電源電圧の瞬断から復帰したと判断して、ステップS120以降の処理が実行されるようにすればよい。このようにしても、図44に示すステップS120〜ステップS123の処理において、乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばパチンコ遊技機1において瞬断の発生時といった電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)や乱数値レジスタR2D(559B)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
図39のステップS4にて設定される延長時間は、例えばROM506に記憶されたユーザプログラムにおける設定などにより、システムリセット毎に複数の延長時間のいずれかに決定するようにしてもよい。この場合には、ステップS4にて設定される延長時間がいずれも、ステップS8にて設定可能な最長の可変設定時間に比べて、長くなるように定義しておく。そして、ステップS4では大まかな延長時間を決定した後、ステップS8では詳細な延長時間を決定すればよい。これにより、パチンコ遊技機1の電源投入時やシステムリセット時にセキュリティモードとなるセキュリティ時間を、システムリセット毎に大きく変化させることが可能になり、パチンコ遊技機1の動作開始タイミングから乱数回路509の動作開始タイミングや更新される数値データなどを特定することが、より困難になる。
また、固定時間に加算される延長時間などは、遊技制御用マイクロコンピュータ100を構成するチップ毎に付与されるIDナンバーを用いて決定されるようにしてもよい。一例として、IDナンバーに所定のスクランブル処理を施す演算や、IDナンバーを用いた加算・減算・乗算・除算などの演算の一部又は全部を実行して、算出された値に対応して延長時間を設定してもよい。この場合には、例えばシステムリセット毎に延長時間を決定するために用いる演算式を変更することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。さらに、例えばIDナンバーを用いて延長時間を決定するための演算式をシステムリセット時に格納したフリーランカウンタのカウント値に対応して決定するといったように、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、システムリセット毎に延長時間がランダムに決定されるようにしてもよい。また、乱数回路509にて生成される乱数のスタート値をシステムリセット毎に変更する場合にも、フリーランカウンタのカウント値と、IDナンバーとを組み合わせて使用することなどにより、乱数のスタート値を決定してもよい。
遊技制御用マイクロコンピュータ100のCPU505に供給されるクロック信号と、乱数回路509に供給されるクロック信号は、共通のクロック生成回路に含まれる1つの発振器により生成された発振信号を用いて、生成されるようにしてもよい。この場合には、例えば乱数用クロックRCLKと制御用クロックCCLKをそれぞれ生成するための分周器などを設け、ラッチ用クロックRC0、RC1、RC2と制御用クロックCCLKあるいは内部システムクロックSCLKとの同期が生じにくくなるように、各分周器における分周比などを設定すればよい。制御用クロック生成回路111と乱数用クロック生成回路112とは、その全部又は一部が、遊技制御用マイクロコンピュータ100の内部に設けられてもよいし、遊技制御用マイクロコンピュータ100の外部に設けられてもよい。
乱数更新クロックRGKやラッチ用クロックRC0となる発振信号は、例えば乱数用クロック生成回路112といった、乱数回路509の外部において生成されるようにしてもよい。あるいは、乱数回路509の内部にて、乱数更新クロックRGKを生成するための回路と、ラッチ用クロックRC0を生成するための回路とを、別個に設けるようにしてもよい。一例として、クロック用フリップフロップ552と同様のフリップフロップにより乱数更新クロックRGKを生成する一方で、乱数更新クロックRGKの信号状態を反転させる反転回路を設け、その反転回路から出力される信号を、ラッチ用クロックRC0として用いるようにしてもよい。
ROM506の外部読出などを制限する場合には、例えば遊技制御用マイクロコンピュータ100にてROM506の記憶データを外部読出するための接続端子などを、パチンコ遊技機1の提供者において外部装置が接続不能に封止されてもよい。
上記実施の形態では、図55に示すステップS141の変動パターン設定処理として、第1開始条件と第2開始条件のいずれが成立したかに関わりなく、図62のフローチャートに示すような処理が実行されるものとして説明した。しかしながら、この発明はこれに限定されず、第1開始条件が成立した場合と第2開始条件が成立した場合とでは、互いに異なる処理を実行して、変動パターン種別を複数種類のいずれとするかの決定や、変動パターンを複数種類のいずれとするかの決定を行うようにしてもよい。この場合、変動パターン種別を決定するための処理や、変動パターンを決定するための処理は、第1開始条件と第2開始条件のいずれが成立したかに応じて異ならせる一方で、変動パターン種別決定用の乱数値MR3を示す数値データや、変動パターン決定用の乱数値MR4を示す数値データとしては、第1開始条件と第2開始条件のいずれが成立したかに関わりなく、共通の数値データを用いるようにすればよい。
また、大当り変動パターン種別決定テーブルや小当り変動パターン種別決定テーブル、ハズレ変動パターン種別決定テーブルといった変動パターン種別決定テーブルとして、第1開始条件と第2開始条件のいずれが成立したかに応じて、各変動パターン種別に対する決定値の割当てを異ならせたものを予め用意してもよい。そして、第1開始条件の成立に対応して実行される変動パターン設定処理では、第1開始条件の成立に応じた変動パターン種別決定テーブルを使用テーブルとして選択し、変動パターン種別決定用の乱数値MR3に基づいて、変動パターン種別を複数種類のいずれかに決定する。これに対して、第2開始条件の成立に対応して実行される変動パターン設定処理では、第2開始条件の成立に応じて第1開始条件が成立した場合とは異なる変動パターン種別決定テーブルを使用テーブルとして選択し、第1開始条件が成立した場合と共通の変動パターン種別決定用の乱数値MR3に基づいて、変動パターン種別を複数種類のいずれかに決定すればよい。
上記実施の形態では、可変表示結果が「小当り」となったことに基づいて小当り遊技状態に制御され、小当り遊技状態が終了した後には、遊技状態の変更が行われない。その一方で、可変表示結果が「大当り」となる場合に大当り種別が「突確」となったことに基づいて2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、確変状態に制御されるものとして説明した。しかしながら、この発明はこれに限定されず、大当り種別が「突確」となる場合や可変表示結果が「小当り」となる場合に代えて、あるいは、これらの場合に加えて、「突然時短」や「突然通常」となる場合を設けるようにしてもよい。一例として、「突然時短」と「突然通常」は、可変表示結果が「大当り」となる場合における大当り種別に含まれるものとする。この場合、大当り種別決定テーブル131は、変動特図指定バッファ値に応じて、大当り種別決定用の乱数値MR2を、「突然時短」や「突然通常」の大当り種別に割り当てるテーブルデータが含まれるように構成されればよい。そして、可変表示結果が「大当り」となる場合に大当り種別が「突然時短」となるときには、大当り種別が「突確」の場合と同様にして2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり時短状態に制御される。他方、可変表示結果が「大当り」となる場合に大当り種別が「突然通常」となるときには、大当り種別が「突確」の場合と同様にして2ラウンド大当り状態に制御され、2ラウンド大当り状態が終了した後には、大当り種別が「突確」の場合とは異なり通常状態に制御される。これにより、2ラウンド大当り状態の終了後に制御される遊技状態に対する遊技者の期待感を高め、遊技興趣を向上させることができる。
このような「突然時短」や「突然通常」を設ける場合には、「突然時短」及び「突然通常」以外である場合とは異なる変動パターン種別や変動パターンに決定するようにしてもよい。これにより、大当り種別が「突然時短」や「突然通常」であることにより2ラウンド大当り状態に制御されるにもかかわらず、15ラウンド大当り状態に制御される場合と同様の演出動作が行われて遊技者に不信感を与えてしまうことを防止できる。また、大当り種別が「突然時短」や「突然通常」となる場合には、可変表示結果が「小当り」となる場合、あるいは、大当り種別が「突確」となる場合と、共通の変動パターン種別に決定可能としてもよい。これにより、変動パターンを決定する際には、大当り種別が「突然時短」や「突然通常」となる場合であるか、可変表示結果が「小当り」となる場合あるいは大当り種別が「突確」となる場合であるかに関わりなく、共通の変動パターン決定テーブルを用いることができ、データ容量の削減を図ることができる。
上記実施の形態では、可変表示結果が「大当り」となったことに基づく大当り遊技状態が終了した後に、確変状態や時短状態といった遊技状態に制御できるものとして説明した。そして、確変状態や時短状態では、第2始動入賞口に遊技球が進入する可能性を高めて第2始動条件が成立しやすくなることで遊技者にとって有利となる制御が行われるものとして説明した。しかしながら、この発明はこれに限定されず、例えば確変状態には、継続して確変制御が行われるとともに、第2始動入賞口に遊技球が進入する可能性を高める高開放制御が行われる高確高ベース状態と、確変制御は行われるが高開放制御は行われない高確低ベース状態とが含まれるようにしてもよい。また、時短状態には、特図変動時間が短縮されるとともに高開放制御が行われる低確高ベース状態と、特図変動時間は短縮されるが高開放制御は行われない低確低ベース状態とが含まれるようにしてもよい。一例として、大当り種別が「確変」及び「突確」のいずれであるかに対応して、大当り遊技状態の終了後に、高確高ベース状態と高確低ベース状態のいずれかに制御されるようにしてもよい。他の一例として、大当り種別が「確変」及び「突確」のいずれであるかに応じて、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれかに制御される割合を、互いに異ならせるようにしてもよい。
大当り種別が「突確」である場合に変動パターン種別を複数種類のいずれかに決定する際には、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれに制御するかに応じて、異なる変動パターン種別に決定するようにしてもよい。一例として、図61に示すステップS234にて大当り種別が「突確」に決定された際には、大当り遊技状態の終了後に高確高ベース状態と高確低ベース状態のいずれに制御するかを決定するための判定処理を実行する。このとき、高確低ベース状態に制御することが決定された場合には、変動パターン種別CA4−1といった、大当り種別が「突確」となる場合と可変表示結果が「小当り」となる場合で共通の変動パターン種別に決定する。これに対して、高確高ベース状態に制御することが決定された場合には、変動パターン種別CA4−2といった、大当り種別が「突確」となる場合のみに専用の変動パターン種別に決定すればよい。これにより、大当り種別が「突確」で大当り遊技状態の終了後に高確低ベース状態となる場合には、飾り図柄の可変表示中における演出動作や2ラウンド大当り状態における演出動作として、可変表示結果が「小当り」となる場合と共通の演出動作が行われた後、高確低ベース状態となることができる。他方、大当り種別が「突確」で大当り遊技状態の終了後に高確高ベース状態となる場合には、飾り図柄の可変表示中における演出動作や2ラウンド大当り状態における演出動作として、大当り種別が「突確」となる場合のみに専用の演出動作が行われた後、高確高ベース状態となることができる。
上記実施の形態では、画像表示装置5の表示領域において、「左」、「中」、「右」の飾り図柄表示部5L、5C、5Rが設けられ、各飾り図柄表示部5L、5C、5Rにて1個の飾り図柄が停止表示されることで、予め定められた1個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるものとして説明した。しかしながら、この発明はこれに限定されず、例えば「左」、「中」、「右」の各飾り図柄表示部5L、5C、5Rにて「上段」、「中段」、「下段」の3カ所に飾り図柄を停止表示可能とし、5個あるいは8個の有効ライン上に最終停止図柄となる確定飾り図柄が停止表示されるようにしてもよい。
その他にも、パチンコ遊技機1の装置構成、データ構成、フローチャートで示した処理、画像表示装置5の表示領域における演出画像の表示動作を含めた各種の演出動作などは、本発明の趣旨を逸脱しない範囲で、任意に変更及び修正が可能である。加えて、本発明の遊技機は、入賞球の検出に応答して所定数の賞球を払い出す払出式遊技機に限定されるものではなく、遊技球を封入し入賞球の検出に応答して得点を付与する封入式遊技機にも適用することができる。
上記実施の形態では、遊技機の例として、特別図柄や飾り図柄を可変表示する機能や各種の演出画像を表示する機能を有するパチンコ遊技機1を用いて説明した。しかしながら、上記実施の形態におけるパチンコ遊技機1が備える構成及び機能の少なくとも一部は、スロットマシンなどの他の遊技機にも適用することができる。
一例として、スロットマシンが備える遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路では、例えば図16に示した構成のうち、ラッチ用フリップフロップ557B、乱数ラッチセレクタ558B及び乱数値レジスタR2D(559B)の組合せを不使用とすればよい。その一方で、例えば図8に示した構成において、PIP510が備える入力ポートP0(入力ポートIP0のビット番号[0])にスロットマシンが備えるスタートレバースイッチからの検出信号を入力する。
そして、遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路では、例えばスタートレバースイッチからの検出信号がオン状態になることといった所定信号の入力に基づいて、図16に示した乱数生成回路553や乱数列変更回路555などにより予め定められた手順で更新される乱数列RSNに含まれる数値データが乱数値レジスタR1D(559A)に格納されたときに、乱数ラッチフラグレジスタRDFMに格納される乱数ラッチフラグデータRDFM0のビット値を“0”から“1”へと変化させることなどにより、数値データを格納した乱数値レジスタR1D(559A)に対応する乱数ラッチフラグがオン状態になり新たな数値データの格納が制限される。その一方で、例えば遊技制御用マイクロコンピュータのCPUが、図57に示すステップS506に相当する処理を実行したときといった、乱数値の読出タイミングにて乱数値レジスタR1D(559A)から乱数値となる数値データが読み出されたときに、その数値データが読み出された乱数値レジスタR1D(559A)に対応する乱数ラッチフラグがオフ状態になり新たな数値データの格納が許可される。これにより、所定信号の入力に基づいて乱数値レジスタR1D(559A)に格納された数値データは、遊技制御用マイクロコンピュータのCPUなどによって読み出されるまでにノイズ等により改変されてしまうことがなく、正確な乱数値となる数値データを取得することができる。
また、図10(A)や図13(A)及び(C)に示したものと同様に、セキュリティ時間設定KSESのビット番号[4−3]におけるビット値を“00”以外の値としたときには、システムリセットや電源投入に基づき初期設定処理が実行されるごとに所定の時間範囲で変化する可変設定時間を、セキュリティ時間に含まれる時間成分として設定する。加えて、図10(A)や図13(A)及び(D)に示したものと同様に、セキュリティ時間設定KSESのビット番号[2−0]におけるビット値を“000”以外の値としたときには、固定時間に加えて予め選択可能な複数の延長時間のいずれかを、セキュリティ時間に含まれる時間成分として設定する。これにより、スロットマシンの電源投入やシステムリセット等による動作開始タイミングから、乱数回路の動作開始タイミングや更新される数値データなどを特定することが困難になり、遊技制御処理プログラムの解析結果に基づく狙い撃ちや、いわゆる「ぶら下げ基板」を接続して所定タイミングで不正信号を入力することで、不正に特別遊技状態を発生させるなどの行為を、確実に防止することができる。
さらに、スロットマシンにおいても、遊技制御用マイクロコンピュータのCPUなどにより遊技制御の実行が開始されるときには、例えば図41に示すステップS56に相当する処理や、図44に示すステップS120及びステップS121に相当する処理において、乱数値レジスタR1D(559A)から数値データを読出可能であり、各乱数ラッチフラグをオフ状態に設定することができる。これにより、例えばスロットマシンにおいて電源遮断が発生したときや電源投入時などの電源電圧が不安定な状態で誤って乱数値レジスタR1D(559A)に格納された数値データが、乱数値として取得されてしまうことを防止できる。
加えて、スロットマシンにおいて、スタートレバースイッチからの検出信号がオン状態となったときには、図57に示すステップS506に相当する処理において、乱数値レジスタR1D(559A)から数値データを読み出し、ステップS508に相当する演算処理の実行結果に基づいて、表示結果決定用の乱数値や、その他の遊技用乱数値が設定されればよい。これにより、例えばスロットマシンにおいて、遊技内容の決定に偏りが生じることなどを防止できる。
また、スロットマシンへの電源投入時に初期化処理が実行されたとき、及び所定のエラーが発生したときに、共通の出力端子からスロットマシンの外部装置に対してセキュリティ信号が外部出力されてもよい。これにより、外部出力用の信号線に無駄が生じることを防止しつつ、スロットマシンへの電源投入時に行われる不正行為を防止することができる。
その他、スロットマシンにおいて、例えば遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路にて生成される乱数値となる数値データのスタート値をシステムリセット毎に変更すること、より具体的には、遊技制御用マイクロコンピュータのCPUにおける動作とは別個に初期値決定用データとなるカウント値を更新するフリーランカウンタから読み出したカウント値を用いて乱数値となる数値データのスタート値が決定されること、遊技制御用マイクロコンピュータが備える外部バスインタフェースでは内部リソースアクセス制御回路によりROMの記憶データといった遊技制御用マイクロコンピュータの内部データにつきCPU等の内部回路以外による外部読出が制限されること、遊技制御用マイクロコンピュータに内蔵又は外付けされた乱数回路の周波数監視回路では乱数用クロックの入力状態を内部システムクロックと比較して乱数用クロックにおける周波数異常が検知されること、あるいは、これらの一部又は全部を組み合わせることなどにより、上記実施の形態におけるパチンコ遊技機1が備える構成及び機能の少なくとも一部が、スロットマシンにおいても実現されればよい。
スロットマシンは、メダル並びにクレジットを使用してゲームを実施可能なものに限らず、例えばパチンコ球を用いてゲームを行うスロットマシンや、メダルが外部に排出されることなくクレジットを使用して遊技可能な完全クレジット式のスロットマシン、可変表示装置が図柄を示す画像の表示を行う画像式のスロットマシンなどにも適用することができる。
パチンコ遊技機1やスロットマシンが備える構成及び機能の一部又は全部を実現するためのプログラム及びデータは、コンピュータ装置等に対して、着脱自在の記録媒体により配布・提供される形態に限定されるものではなく、予めコンピュータ装置等の有する記憶装置にプリインストールしておくことで配布される形態を採っても構わない。さらに、本発明を実現するためのプログラム及びデータは、通信処理部を設けておくことにより、通信回線等を介して接続されたネットワーク上の、他の機器からダウンロードすることによって配布する形態を採っても構わない。
1 … パチンコ遊技機
2 … 遊技盤
3 … 遊技機用枠
4A、4B … 特別図柄表示装置
5 … 画像表示装置
6A … 普通入賞球装置
6B … 普通可変入賞球装置
7 … 特別可変入賞球装置
8L、8R … スピーカ
9 … 遊技効果ランプ
11 … 主基板
12 … 演出制御基板
13 … 音声制御基板
14 … ランプ制御基板
15 … 払出制御基板
18 … 中継基板
20 … 普通図柄表示器
21 … ゲートスイッチ
22A、22B … 始動口スイッチ
22C、22D … 入賞確認スイッチ
23 … カウントスイッチ
31 … 遊技開始スイッチ
41 … 通過ゲート
100、810 … 遊技制御用マイクロコンピュータ
501 … 外部バスインタフェース
501A … 内部リソースアクセス制御回路
502 … クロック回路
503 … 固有情報記憶回路
504 … リセット/割込みコントローラ
505 … CPU
506 … ROM
507 … RAM
508 … CTC
509 … 乱数回路
510 … PIP
511 … シリアル通信回路
512 … アドレスデコード回路
551 … 周波数監視回路
552 … クロック用フリップフロップ
553 … 乱数生成回路
554 … スタート値設定回路
554A … フリーランカウンタ
555 … 乱数列変更回路
556 … 乱数列変更設定回路
557A、557B … ラッチ用フリップフロップ
558A、558B … 乱数ラッチセレクタ
559A、559B … 乱数値レジスタ

Claims (2)

  1. 始動領域を遊技媒体が通過したことにもとづいて識別情報の可変表示を行い特定表示結果が導出表示されたときに、遊技者にとって有利な有利状態に制御する遊技機であって、
    前記始動領域に設けられ、所定条件の成立にもとづいて入賞可能な開放状態に変化可能な可変入賞装置と、
    前記遊技機への電力供給が停止しても記憶内容を所定期間保持可能な記憶手段と、
    操作に応じて操作信号を出力する初期化操作手段と、
    電力供給が開始されたときに、前記初期化操作手段からの前記操作信号が入力されたことにもとづいて、前記記憶手段の記憶内容を初期化する初期化処理を実行する初期化処理実行手段と、
    所定のエラーが発生しているか否かを判定するエラー判定手段と、
    少なくとも、前記初期化処理実行手段によって前記初期化処理が実行されたこと、および前記エラー判定手段によって前記所定のエラーが発生していると判定されたことを含む信号出力条件が成立したことにもとづいて、前記遊技機の外部にセキュリティ信号を出力するセキュリティ信号外部出力手段とを備え、
    前記エラー判定手段は、前記可変入賞装置への異常入賞発生しているときに、前記所定のエラーが発生していると判定し、
    前記セキュリティ信号外部出力手段は、前記初期化処理実行手段によって前記初期化処理が実行されたときと前記エラー判定手段によって前記所定のエラーが発生していると判定されたときとで、前記遊技機に設けられた共通の出力端子から前記セキュリティ信号を前記遊技機の外部に出力し、
    前記初期化処理実行手段によって前記初期化処理が実行されたことにより前記セキュリティ信号を出力しているときに前記エラー判定手段によって前記所定のエラーが発生していると判定された場合には、前記セキュリティ信号を出力する出力期間を延長し、
    前記初期化処理実行手段によって前記初期化処理が実行されたときに前記セキュリティ信号を出力する出力期間と、前記エラー判定手段によって前記所定のエラーが発生していると判定されたときに前記セキュリティ信号を出力する出力期間とが異なる、
    ことを特徴とする遊技機。
  2. 前記始動領域には、
    遊技媒体を検出し、第1の検出信号を出力する第1検出手段と、
    遊技媒体を検出し、第2の検出信号を出力する第2検出手段とが設けられ、
    前記エラー判定手段は、前記第1検出手段から出力された前記第1の検出信号と前記第2検出手段から出力された前記第2の検出信号とにもとづいて、前記第1検出手段にて検出された遊技媒体数と前記第2検出手段にて検出された遊技媒体数との差が所定の閾値を超えたときに前記可変入賞装置への異常入賞が発生したと判定し、
    前記所定の閾値を、前記第1検出手段と前記第2検出手段との間に複数の遊技媒体が滞留した状態となったときの前記第1検出手段における遊技媒体の検出数と前記第2検出手段における遊技媒体の検出数との差分よりも多い値とした、
    ことを特徴とする請求項1に記載の遊技機。
JP2013268112A 2013-12-25 2013-12-25 遊技機 Active JP5845242B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013268112A JP5845242B2 (ja) 2013-12-25 2013-12-25 遊技機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013268112A JP5845242B2 (ja) 2013-12-25 2013-12-25 遊技機

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010039395A Division JP5788144B2 (ja) 2010-02-24 2010-02-24 遊技機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015177748A Division JP6124473B2 (ja) 2015-09-09 2015-09-09 遊技機

Publications (2)

Publication Number Publication Date
JP2014140670A JP2014140670A (ja) 2014-08-07
JP5845242B2 true JP5845242B2 (ja) 2016-01-20

Family

ID=51422517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013268112A Active JP5845242B2 (ja) 2013-12-25 2013-12-25 遊技機

Country Status (1)

Country Link
JP (1) JP5845242B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016005683A (ja) * 2015-09-09 2016-01-14 株式会社三共 遊技機

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014138802A (ja) * 2013-12-20 2014-07-31 Sankyo Co Ltd 遊技機
JP5845243B2 (ja) * 2013-12-27 2016-01-20 株式会社三共 遊技機
JP6864429B2 (ja) * 2015-07-31 2021-04-28 サミー株式会社 ぱちんこ遊技機
JP2021083981A (ja) * 2019-11-29 2021-06-03 株式会社三洋物産 遊技機

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000237435A (ja) * 1999-02-17 2000-09-05 Sankyo Kk 遊技機
JP5021946B2 (ja) * 2006-03-14 2012-09-12 サン電子株式会社 遊技機情報収集装置
JP4782085B2 (ja) * 2007-09-05 2011-09-28 株式会社三共 遊技機
JP5517632B2 (ja) * 2010-01-07 2014-06-11 株式会社三共 遊技機
JP6045488B2 (ja) * 2013-12-27 2016-12-14 株式会社三共 遊技機
JP6093293B2 (ja) * 2013-12-27 2017-03-08 株式会社三共 遊技機
JP6093296B2 (ja) * 2013-12-27 2017-03-08 株式会社三共 遊技機
JP6093295B2 (ja) * 2013-12-27 2017-03-08 株式会社三共 遊技機
JP6093294B2 (ja) * 2013-12-27 2017-03-08 株式会社三共 遊技機

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016005683A (ja) * 2015-09-09 2016-01-14 株式会社三共 遊技機

Also Published As

Publication number Publication date
JP2014140670A (ja) 2014-08-07

Similar Documents

Publication Publication Date Title
JP5845242B2 (ja) 遊技機
JP5788144B2 (ja) 遊技機
JP5362617B2 (ja) 遊技機
JP6124473B2 (ja) 遊技機
JP5240730B2 (ja) 遊技機
JP5719917B2 (ja) 遊技機
JP5346395B2 (ja) 遊技機
JP5362616B2 (ja) 遊技機
JP5346391B2 (ja) 遊技機
JP5427256B2 (ja) 遊技機
JP5240733B2 (ja) 遊技機
JP5346394B2 (ja) 遊技機
JP5240743B2 (ja) 遊技機
JP5346393B2 (ja) 遊技機
JP5240732B2 (ja) 遊技機
JP5362610B2 (ja) 遊技機
JP5362609B2 (ja) 遊技機
JP5346392B2 (ja) 遊技機
JP5362608B2 (ja) 遊技機
JP5427255B2 (ja) 遊技機
JP5240731B2 (ja) 遊技機
JP5427257B2 (ja) 遊技機
JP2014028257A (ja) 遊技機
JP2014028256A (ja) 遊技機
JP2014028253A (ja) 遊技機

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150909

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150916

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: 20151117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151120

R150 Certificate of patent or registration of utility model

Ref document number: 5845242

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250