(57)【特許請求の範囲】
【請求項１】
可変表示の実行条件が成立した後に可変表示の開始条件が成立したことに基づいて、各々が識別可能な複数種類の識別情報を可変表示する可変表示装置を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態に制御する遊技機であって、
遊技機に電力を供給する電力供給手段と、
乱数を発生する乱数回路と遊技の進行を制御する遊技制御手段とを内蔵し、前記電力供給手段から供給される電力を用いて動作するマイクロプロセッサと、
所定の周期の基準クロック信号を生成して前記乱数回路に出力するクロック信号生成手段と、
前記実行条件が成立したことに基づいて、始動信号を前記乱数回路と前記遊技制御手段とに出力する始動信号出力手段と、
前記マイクロプロセッサからの制御信号に基づいて前記可変表示装置における識別情報の可変表示を制御する可変表示制御手段とを備え、
前記乱数回路は、
前記クロック信号生成手段から出力される基準クロック信号を用いて乱数発生用クロック信号を生成し、該乱数発生用クロック信号を出力する乱数発生用クロック信号生成手段と、
前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号を反転させて反転クロック信号を生成し、該反転クロック信号を出力する反転クロック信号生成手段と、
前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミングにおいて、数値データを更新する数値更新手段と、
前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミングにおいて、前記始動信号出力手段から入力される始動信号をラッチ信号として出力するラッチ信号出力手段と、
前記ラッチ信号出力手段から入力されるラッチ信号に応答して、前記数値更新手段により更新された数値データを乱数値として記憶する乱数値記憶手段とを含み、
前記遊技制御手段は、
前記電力供給手段による電力の供給開始後、前記乱数回路に前記乱数値を更新させるための設定を行う乱数回路設定手段と、
前記乱数回路設定手段により前記乱数回路に前記設定が行われた後、定期的に発生するタイマ割込処理の実行を許可するタイマ割込処理実行許可手段と、
前記タイマ割込処理の実行中、前記始動信号出力手段から始動信号が入力されたことに基づいて、前記乱数値記憶手段から乱数値を読み出して、該読み出した乱数値が所定の判定値データと合致するか否かを判定することにより、前記可変表示における表示結果を特定表示結果とするか否かを決定する表示結果決定手段と、
前記表示結果決定手段が前記乱数値記憶手段から乱数値を読み出す前に、該乱数値記憶手段に出力制御信号を出力して該乱数値記憶手段を読出可能状態に制御し、該表示結果決定手段が前記乱数値記憶手段から乱数値を読み出した後、該乱数値記憶手段への出力制御信号の出力を停止して該乱数値記憶手段を読出不能状態に制御する読出制御手段とを含み、
前記乱数値記憶手段は、前記ラッチ信号出力手段からラッチ信号が入力されているとき、前記読出制御手段から出力される出力制御信号に対して受信不能状態に制御する出力制御信号受信制御手段を含む、
ことを特徴とする遊技機。
【請求項２】
前記乱数回路は、
該乱数回路が発生する乱数の最大値を指定する乱数最大値設定データを格納する乱数最大値設定レジスタと、
前記乱数最大値設定レジスタに格納された乱数最大値設定データに応じて前記数値更新手段による更新範囲を規制する更新範囲規制手段とを含み、
前記乱数回路設定手段は、前記乱数最大値設定レジスタに乱数最大値設定データを書き込む乱数最大値設定データ書込手段を含む、
ことを特徴とする請求項１に記載の遊技機。
【請求項３】
前記遊技制御手段は、前記乱数最大値設定手段が前記乱数最大値設定レジスタに書き込んだ前記乱数最大値設定データにより指定される前記乱数の最大値が所定の下限値より小さいとき、該所定の下限値以上の所定値を指定する乱数最大値設定データを該乱数最大値設定レジスタに格納する、
ことを特徴とする請求項２に記載の遊技機。
【請求項４】
前記数値更新手段は、前記数値データを所定の初期値から所定の最大値まで循環的に更新し、
前記乱数回路は、前記数値更新手段により数値データが前記所定の最大値まで更新されたとき、その旨を通知する通知信号を出力する通知信号出力手段を含み、
前記遊技制御手段は、前記タイマ割込処理の実行中、前記通知信号出力手段から出力された通知信号に応答して前記数値更新手段により更新される数値データにおける前記所定の初期値を変更させる初期値変更手段を含む、
ことを特徴とする請求項１、２又は３に記載の遊技機。
【請求項５】
前記初期値変更手段は、変更した初期値が前記乱数の最大値より大きいとき、該変更した初期値を再度変更させる手段を含む、
ことを特徴とする請求項４に記載の遊技機。
【請求項６】
前記乱数回路は、
前記数値更新手段により更新される数値データの更新順である順列の変更を要求する数値順列変更データを格納する数値順列変更レジスタと、
前記数値順列変更レジスタに前記数値順列変更データが格納されているとき、該数値順列変更データが格納されていないときの順列とは異なる更新順の順列に変更する数値順列変更手段とを含み、
前記遊技制御手段は、前記タイマ割込処理の実行中、前記数値順列変更レジスタに前記数値順列変更データを書き込む数値順列変更データ書込手段を含む、
ことを特徴とする請求項１から５のいずれか１項に記載の遊技機。
【請求項７】
前記乱数回路は、
前記数値更新手段による数値データの更新を要求する数値更新データを格納する数値更新レジスタと、
前記数値更新手段により更新された数値データを乱数値として前記乱数値記憶手段に記憶することを指示する数値取込データを格納する数値取込レジスタと、
乱数値を更新する方式である第１及び第２の乱数更新方式のうちから選択された乱数更新方式を指定する乱数更新方式選択データを格納する乱数値更新方式選択レジスタと、
前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記乱数発生用クロック信号生成手段から出力されている乱数発生用クロック信号に代えて、前記数値更新レジスタに前記数値更新データが書き込まれたことに応答して数値データの更新を指示する数値更新指示信号を前記数値更新手段に出力し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記乱数発生用クロック信号生成手段から出力されている乱数発生用クロック信号を前記数値更新手段に出力する更新信号選択手段とを含み、
前記乱数回路設定手段は、前記乱数回路に前記乱数値を更新させるための設定として、少なくとも前記第１及び前記第２の乱数更新方式のうちから選択された乱数更新方式を指定する前記乱数更新方式選択データを、前記乱数更新方式選択レジスタに書き込む更新方式設定手段を含み、
前記遊技制御手段は、前記タイマ割込処理の実行中、前記第１の乱数更新方式が選択されているとき、前記数値更新データを前記数値更新レジスタに書き込む数値更新データ書込手段を含み、
前記始動信号出力手段は、始動信号を出力するとき、前記数値取込レジスタに前記数値取込データを書き込み、
前記数値更新手段は、前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記更新信号選択手段により選択されて入力される数値更新指示信号が前記所定の態様で変化するタイミングにおいて数値データを更新し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記更新信号選択手段により選択されて入力される前記乱数発生用クロック信号が所定の周期毎に前記所定の態様で変化するタイミングにおいて数値データを更新し、
前記ラッチ信号出力手段は、前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記反転クロック信号生成手段から出力される反転クロック信号をラッチ信号として出力し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記数値取込レジスタに前記数値取込データが書き込まれたことに応答して前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミングにおいてラッチ信号を出力する、
ことを特徴とする請求項１から６のいずれか１項に記載の遊技機。
【請求項８】
前記乱数回路は、前記数値更新手段による数値データの更新周期を指定する周期設定データを格納する周期設定レジスタを含み、
前記乱数回路設定手段は、予め設定された更新周期を指定する前記周波数設定データを前記周期設定レジスタに書き込む周期設定手段を含み、
前記乱数発生用クロック信号生成手段は、前記周期設定レジスタに格納されている周期設定データに応じて前記クロック信号生成手段から出力される基準クロック信号の周期を変更して前記乱数発生用クロック信号として出力する、
ことを特徴とする請求項１から７のいずれか１項に記載の遊技機。
【請求項９】
前記遊技制御手段は、前記周期設定手段が前記周期設定レジスタに書き込んだ前記周期設定データにより指定される前記更新周期が所定の下限値より小さいとき、該所定の下限値を指定する周期設定データを該周期設定レジスタに格納する、
ことを特徴とする請求項８に記載の遊技機。
【請求項１０】
前記乱数回路は、
該乱数回路の起動を要求する乱数回路起動データを格納する乱数回路起動レジスタと、
前記乱数回路起動レジスタに前記乱数回路起動データが書き込まれたことに応答して、該乱数回路を起動させる乱数回路起動手段とを含み、
前記乱数回路設定手段は、前記乱数回路起動データを前記乱数回路起動レジスタに書き込む乱数回路起動設定手段を含む、
ことを特徴とする請求項１から９のいずれか１項に記載の遊技機。
【請求項１１】
前記マイクロプロセッサは、該マイクロプロセッサをシステムリセットするシステムリセット手段を含み、
前記乱数回路起動設定手段は、前記システムリセット手段により前記マイクロプロセッサがシステムリセットされたとき、前記乱数回路起動データを前記乱数回路起動レジスタに再度書き込んで前記乱数回路を起動させる、
ことを特徴とする請求項１０に記載の遊技機。
【請求項１２】
前記乱数回路は、前記始動信号出力手段から始動信号が入力されている時間を計測し、該計測した時間が所定の時間になったとき、該始動信号を前記ラッチ信号出力手段に出力するタイマ手段を含む、
ことを特徴とする請求項１から１１のいずれか１項に記載の遊技機。
【請求項１３】
前記表示結果決定手段は、前記タイマ割込処理の実行回数が所定回に達するまでの間、前記始動信号出力手段から始動信号が継続して入力されたことに基づいて、前記乱数値記憶手段から乱数値を読み出し、
前記タイマ手段は、
前記タイマ割込処理の実行回数が前記所定回に達するまでの時間よりも短い時間を前記所定の時間として設定する設定手段を含み、前記計測した時間が前記設定手段により所定の時間として設定された時間になったとき、前記始動信号を前記ラッチ信号出力手段に出力する、
ことを特徴とする請求項１２に記載の遊技機。
【請求項１４】
前記乱数値記憶手段は、前記読出制御手段から出力制御信号が入力されているとき、前記ラッチ信号出力手段から出力されるラッチ信号に対して受信不能状態に制御するラッチ信号受信制御手段を含む、
ことを特徴とする請求項１から１３のいずれか１項に記載の遊技機。
【請求項１５】
可変表示の実行条件が成立した後に可変表示の開始条件が成立したことに基づいて、各々が識別可能な複数種類の識別情報を可変表示する可変表示装置を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態に制御する遊技機であって、
遊技機に電力を供給する電力供給手段と、
乱数を発生する乱数回路と遊技の進行を制御する遊技制御手段とを内蔵し、前記電力供給手段から供給される電力を用いて動作するマイクロプロセッサと、
所定の周期の基準クロック信号を生成して前記乱数回路に出力するクロック信号生成手段と、
前記実行条件が成立したことに基づいて、始動信号を前記遊技制御手段に出力する始動信号出力手段と、
前記マイクロプロセッサからの制御信号に基づいて前記可変表示装置における識別情報の可変表示を制御する可変表示制御手段とを備え、
前記遊技制御手段は、
前記電力供給手段による電力の供給開始後、前記乱数回路に前記乱数値を更新させるための設定を行う乱数回路設定手段と、
前記乱数回路設定手段により前記乱数回路に前記設定が行われた後、定期的に発生するタイマ割込処理の実行を許可するタイマ割込処理実行許可手段と、
前記タイマ割込処理の実行中、前記始動信号出力手段から始動信号が入力されたことに基づいて、前記可変表示における表示結果を特定表示結果とするか否かを決定する表示結果決定手段と、
前記タイマ割込処理の実行中、前記始動信号出力手段から始動信号が入力されたことに基づいて、ラッチ用始動信号を生成して前記乱数回路に出力するラッチ用始動信号出力手段とを含み、
前記乱数回路は、
前記クロック信号生成手段から出力される基準クロック信号を用いて乱数発生用クロック信号を生成し、該乱数発生用クロック信号を出力する乱数発生用クロック信号生成手段と、
前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号を反転させて反転クロック信号を生成し、該反転クロック信号を出力する反転クロック信号生成手段と、
前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミングにおいて、数値データを更新する数値更新手段と、
前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミングにおいて、前記ラッチ用始動信号出力手段から入力されるラッチ用始動信号をラッチ信号として出力するラッチ信号出力手段と、
前記ラッチ信号出力手段から入力されるラッチ信号に応答して、前記数値更新手段により更新された数値データを乱数値として記憶する乱数値記憶手段とを含み、
前記表示結果決定手段は、前記乱数記憶手段から乱数値を読み出して、該読み出した乱数値が所定の判定値データと合致するか否かを判定することにより、前記可変表示における表示結果を特定表示結果とするか否かを決定し、
前記遊技制御手段は、前記表示結果決定手段が前記乱数値記憶手段から乱数値を読み出す前に、該乱数値記憶手段に出力制御信号を出力して該乱数値記憶手段を読出可能状態に制御し、該表示結果決定手段が前記乱数値記憶手段から乱数値を読み出した後、該乱数値記憶手段への出力制御信号の出力を停止して該乱数値記憶手段を読出不能状態に制御する読出制御手段を含み、
前記乱数値記憶手段は、前記ラッチ信号出力手段からラッチ信号が入力されているとき、前記読出制御手段から出力される出力制御信号に対して受信不能状態に制御する出力制御信号受信制御手段を含む、
ことを特徴とする遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パチンコ遊技機やスロットマシン等の遊技機に係り、詳しくは、可変表示の実行条件が成立した後に可変表示の開始条件が成立したことに基づいて、各々が識別可能な複数種類の識別情報を可変表示する可変表示装置を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態に制御する遊技機に関する。
【背景技術】
【０００２】
パチンコ遊技機やスロットマシン等の遊技機においては、複数種類の識別情報（以下、表示図柄）を可変表示装置における複数列の表示部にて可変表示し、その表示結果により所定の遊技価値を付与するか否かを決定する、いわゆる可変表示ゲームによって遊技興趣を高めたものがある。可変表示ゲームでは、例えば所定領域を通過する遊技球を検出したことやスタートレバーの操作を検出したことといった、所定の条件が成立したときに、表示図柄の可変表示が開始される。そして、表示図柄の可変表示が完全に停止した際の停止図柄態様が特定表示態様となっているときに、遊技者にとって有利な特定遊技状態（大当り遊技状態）となる。例えば、大当り遊技状態となったパチンコ遊技機は、大入賞口又はアタッカと呼ばれる特別電動役物を開放状態とし、遊技者に対して遊技球の入賞が極めて容易となる状態を一定時間継続的に提供する。
【０００３】
こうした遊技機において、「大当り」とするか否かを判定するために用いられる乱数（大当り判定用乱数）を、マイクロプロセッサが所定のアプリケーションプログラムを実行することにより生成するものが知られている（例えば、特許文献１）。
【特許文献１】特開２００２−２８２４５７号公報
【０００４】
しかしながら特許文献１に開示されている技術では、プログラムによって乱数を発生させるので、マイクロプロセッサにおける処理負担が大きい。特に、遊技制御のためのタイマ割込処理の実行中に乱数の更新処理を行っているため、遊技制御用と同様のプログラム開発が必要であり、また、限られた割込処理時間の間で乱数発生のための処理を開始・終了しなければならず、マイクロプロセッサの処理負担が増大するといった問題があった。
【０００５】
そこで、クロックパルス（又はこのクロックパルスを反転させた反転クロックパルス）の立ち上がりエッヂに応答してクロックカウント回路が更新したカウント値を、反転クロックパルス（又はクロックパルス）の立ち上がりエッヂに同期したラッチ信号に基づいて乱数値としてカウント値記憶回路に記憶することにより、ハードウェアによる乱数の発生を可能とした遊技機等も提案されている（例えば、特許文献２）。
【特許文献２】特開２００３−１９０４８３号公報
【０００６】
特許文献２に開示されている技術では、遊技機等の制御を実行するメインコントロール部と、このメインコントロール部の制御とは無関係に乱数を発生させる乱数発生装置との配置については、何ら考慮されていない。この点について、第三者機関による検査を容易にするとの観点から、遊技制御用のマイクロプロセッサに外付けされた乱数回路により乱数を生成するものが提案されている（例えば、特許文献３）。
【特許文献３】特開２０００−３００８１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献３に開示されている技術では、マイクロプロセッサとは別個に乱数発生用の回路を配置しなければならず、ハードウェア量が増加するとともに多くの基板スペースを占有してしまうことになる。また、例えば不正基板の設置等により、乱数回路で生成された乱数値を示す数値データが不正に書き換えられるといった、偽造を防止することが困難になるという問題があった。また、特許文献３の乱数回路は、一定周波数でパルスを連続して出力するパルスジェネレータからの出力を、例えば０〜１０２３といった、所定範囲において単調に１ずつカウントアップし、最大値に達した後に再度０（最小値）からカウントアップするようにしているだけなので、発生する乱数に周期性が発生するなどしてランダム性が低くなるおそれがあった。
【０００８】
この発明は、上記実状に鑑みてなされたものであり、基板スペースの確保及び偽造の防止を可能としつつ、ランダム性の高い乱数の発生を可能とする遊技機を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本願の請求項１に記載の遊技機は、可変表示の実行条件（例えば普通可変入賞球装置６への入賞）が成立した後に可変表示の開始条件（例えば可変表示装置４における前回の可変表示及び大当り遊技状態の終了）が成立したことに基づいて、各々が識別可能な複数種類の識別情報（例えば特別図柄）を可変表示する可変表示装置（例えば可変表示装置４）を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態（例えば大当り遊技状態）に制御する遊技機（例えばパチンコ遊技機１）であって、遊技機に電力を供給する電力供給手段（例えば電源基板１０）と、乱数（例えばランダムＲなど）を発生する乱数回路（例えば乱数回路１０３）と遊技の進行を制御する遊技制御手段（例えばＣＰＵ１０６）とを内蔵し、前記電力供給手段から供給される電力を用いて動作するマイクロプロセッサ（例えば主基板１１に搭載された遊技制御用マイクロプロセッサ１００）と、所定の周期の基準クロック信号（例えば基準クロック信号ＣＬＫ）を生成して前記乱数回路に出力するクロック信号生成手段（例えばクロック回路１０１）と、前記実行条件が成立したことに基づいて、始動信号（例えば始動入賞信号ＳＳ）を前記乱数回路と前記遊技制御手段とに出力する始動信号出力手段（例えば始動入賞口スイッチ７０）と、前記マイクロプロセッサからの制御信号に基づいて前記可変表示装置における識別情報の可変表示を制御する可変表示制御手段（例えば表示制御基板１２）とを備え、前記乱数回路は、前記クロック信号生成手段から出力される基準クロック信号を用いて乱数発生用クロック信号（例えば乱数発生用クロック信号Ｓ１）を生成し、該乱数発生用クロック信号を出力する乱数発生用クロック信号生成手段（例えばクロック信号出力回路１２４）と、前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号を反転させて反転クロック信号（例えば反転クロック信号Ｓ２）を生成し、該反転クロック信号を出力する反転クロック信号生成手段（例えば反転回路１３２）と、前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミング（例えば乱数発生用クロック信号Ｓ１がローレベルからハイレベルへと立上がるタイミングＴ１１，Ｔ１２，…など）において、数値データ（例えばカウント値Ｃ）を更新する数値更新手段（例えばカウンタ１２１）と、前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミング（例えばタイミングＴ２２など）において、前記始動信号出力手段から入力される始動信号をラッチ信号（例えばラッチ信号ＳＬ）として出力するラッチ信号出力手段（例えばラッチ信号生成回路１３３）と、前記ラッチ信号出力手段から入力されるラッチ信号に応答して、前記数値更新手段により更新された数値データを乱数値（例えばランダムＲの値など）として記憶する乱数値記憶手段（例えば乱数値記憶回路１３１）とを含み、前記遊技制御手段は、前記電力供給手段による電力の供給開始後、前記乱数回路に前記乱数値を更新させるための設定を行う乱数回路設定手段（例えばＣＰＵ１０６がステップＳ１０の乱数回路設定処理を実行する部分）と、前記乱数回路設定手段により前記乱数回路に前記設定が行われた後、定期的（例えば２ミリ秒ごと）に発生するタイマ割込処理の実行を許可するタイマ割込処理実行許可手段（例えばＣＰＵ１０６がステップＳ１４での処理を実行する部分）と、前記タイマ割込処理の実行中（例えばＣＰＵ１０６による遊技制御割込処理の実行中）、前記始動信号出力手段から始動信号が入力されたことに基づいて、前記乱数値記憶手段から乱数値を読み出して、該読み出した乱数値が所定の判定値データ（例えば「３」など）と合致するか否かを判定することにより、前記可変表示における表示結果を特定表示結果とするか否かを決定する表示結果決定手段（例えばＣＰＵ１０６がステップＳ１４２の入賞処理とステップＳ１５０の特別図柄通常処理とステップＳ１５１の大当り判定処理とを実行する部分）と、前記表示結果決定手段が前記乱数値記憶手段から乱数値を読み出す前に、該乱数値記憶手段に出力制御信号（例えば出力制御信号ＳＣ）を出力して該乱数値記憶手段を読出可能状態に制御し、該表示結果決定手段が前記乱数値記憶手段から乱数値を読み出した後、該乱数値記憶手段への出力制御信号の出力を停止して該乱数値記憶手段を読出不能状態に制御する読出制御手段（例えばＣＰＵ１０６がステップＳ１７２及びステップＳ１７５の処理を実行する部分）とを含み、前記乱数値記憶手段は、前記ラッチ信号出力手段からラッチ信号が入力されているとき、前記読出制御手段から出力される出力制御信号に対して受信不能状態に制御する出力制御信号受信制御手段（例えばＡＮＤ回路２０３など）を含む。
【００１０】
請求項２に記載の遊技機において、前記乱数回路は、該乱数回路が発生する乱数の最大値（例えば「２５５」など）を指定する乱数最大値設定データ（例えば乱数最大値設定データ「００ＦＦｈ」など）を格納する乱数最大値設定レジスタ（例えば乱数最大値設定レジスタ１３５など）と、前記乱数最大値設定レジスタに格納された乱数最大値設定データに応じて前記数値更新手段による更新範囲（例えば「１」〜「２５５」までの範囲など）を規制する更新範囲規制手段（例えば比較器１２２）とを含み、前記乱数回路設定手段は、前記乱数最大値設定レジスタに乱数最大値設定データを書き込む乱数最大値設定データ書込手段（例えばＣＰＵ１０６がステップＳ２１の処理を実行する部分など）を含む。
【００１１】
請求項３に記載の遊技機において、前記遊技制御手段は、前記乱数最大値設定手段が前記乱数最大値設定レジスタに書き込んだ前記乱数最大値設定データにより指定される前記乱数の最大値が所定の下限値（例えば「４」など）より小さいとき（乱数最大値設定データにより指定される乱数の最大値が「０」〜「３」のときなど）、該所定の下限値以上の所定値（例えば「４０９５」など）を指定する乱数最大値設定データ（例えば乱数最大値設定データ「０ＦＦＦｈ」など）を該乱数最大値設定レジスタに格納する。
【００１２】
請求項４に記載の遊技機において、前記数値更新手段は、前記数値データを所定の初期値（例えば「１」）から所定の最大値（例えば「４０９５」）まで循環的に更新し、前記乱数回路は、前記数値更新手段により数値データが前記所定の最大値まで更新されたとき、その旨を通知する通知信号（例えば図４に示す通知信号）を出力する通知信号出力手段（例えばカウンタ１２１が通知信号を出力する部分）を含み、前記遊技制御手段は、前記タイマ割込処理の実行中、前記通知信号出力手段から出力された通知信号に応答して前記数値更新手段により更新される数値データにおける前記所定の初期値を変更させる初期値変更手段（例えばＣＰＵ１０６がステップＳ１０４の初期値変更処理を実行する部分など）を含む。
【００１３】
請求項５に記載の遊技機において、前記初期値変更手段は、変更した初期値が前記乱数の最大値（例えば「２５５」など）より大きいとき（例えば変更された初期値が「２５６」のときなど）、該変更した初期値を再度変更させる手段（例えば図９に示すカウンタ１２１及び比較器１２２におけるカウント値の更新動作において、ＣＰＵ１０６により変更された初期値が乱数最大値より大きい場合に、カウンタ１２１が変更された初期値のカウント値を比較器１２２に出力し、比較器１２２がカウンタ１２１にカウント値更新信号を出力して「４０９５」まで連続的にカウントアップさせて通知信号が出力されたことに応答して、ＣＰＵ１０６がさらにステップＳ１０４の初期値変更処理を実行することにより、変更した初期値を再度変更させる部分）を含む。
【００１４】
請求項６に記載の遊技機において、前記乱数回路は、前記数値更新手段により更新される数値データの更新順である順列の変更を要求する数値順列変更データ（例えばカウント値順列変更データ「０１ｈ」）を格納する数値順列変更レジスタ（例えばカウント値順列変更レジスタ１３６）と、前記数値順列変更レジスタに前記数値順列変更データが格納されているとき、該数値順列変更データが格納されていないときの順列とは異なる更新順の順列に変更する数値順列変更手段（例えばカウント値順列変更回路１２３）とを含み、前記遊技制御手段は、前記タイマ割込処理の実行中、前記数値順列変更レジスタに前記数値順列変更データを書き込む数値順列変更データ書込手段（例えばＣＰＵ１０６がステップＳ１０５のカウント値順列変更処理を実行する部分）を含む。
【００１５】
請求項７に記載の遊技機において、前記乱数回路は、前記数値更新手段による数値データの更新を要求する数値更新データ（例えばカウント値更新データ「０１ｈ」）を格納する数値更新レジスタ（例えばカウント値更新レジスタ１３８）と、前記数値更新手段により更新された数値データを乱数値として前記乱数値記憶手段に記憶することを指示する数値取込データ（例えば乱数値取込データ「０１ｈ」）を格納する数値取込レジスタ（例えば乱数値取込レジスタ１３９）と、乱数値を更新する方式である第１及び第２の乱数更新方式のうちから選択された乱数更新方式を指定する乱数更新方式選択データ（例えば乱数更新方式選択データ「０１ｂ」、「１０ｂ」）を格納する乱数値更新方式選択レジスタ（例えば乱数更新方式選択レジスタ１４０）と、前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データ（例えば乱数更新方式選択データ「０１ｂ」）が格納されているとき、前記乱数発生用クロック信号生成手段から出力されている乱数発生用クロック信号に代えて、前記数値更新レジスタに前記数値更新データが書き込まれたことに応答して数値データの更新を指示する数値更新指示信号（例えばカウント値更新信号Ｓ３）を前記数値更新手段に出力し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データ（例えば乱数更新方式選択データ「１０ｂ」）が格納されているとき、前記乱数発生用クロック信号生成手段から出力されている乱数発生用クロック信号を前記数値更新手段に出力する更新信号選択手段（例えばセレクタ１２８）とを含み、前記乱数回路設定手段は、前記乱数回路に前記乱数値を更新させるための設定として、少なくとも前記第１及び前記第２の乱数更新方式のうちから選択された乱数更新方式を指定する前記乱数更新方式選択データを、前記乱数更新方式選択レジスタに書き込む更新方式設定手段（例えばＣＰＵ１０６がステップＳ２２あるいはステップＳ３２の処理を実行する部分）を含み、前記遊技制御手段は、前記タイマ割込処理の実行中、前記第１の乱数更新方式が選択されているとき、前記数値更新データを前記数値更新レジスタに書き込む数値更新データ書込手段（例えばＣＰＵ１０６がステップＳ１９６の乱数値更新処理を実行する部分）を含み、前記始動信号出力手段は、始動信号を出力するとき、前記数値取込レジスタに前記数値取込データを書き込み、前記数値更新手段は、前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記更新信号選択手段により選択されて入力される数値更新指示信号が前記所定の態様で変化するタイミング（例えばタイミングＴ３２）において数値データを更新し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記更新信号選択手段により選択されて入力される前記乱数発生用クロック信号が所定の周期毎に前記所定の態様で変化するタイミング（例えばタイミングＴ１１，Ｔ１２，…など）において数値データを更新し、前記ラッチ信号出力手段は、前記乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記反転クロック信号生成手段から出力される反転クロック信号をラッチ信号（例えば図３６（Ｄ）に示すラッチ信号ＳＬ）として出力し、前記乱数値更新方式選択レジスタに第２の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、前記数値取込レジスタに前記数値取込データが書き込まれたことに応答して前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミング（例えばタイミングＴ２２）においてラッチ信号（例えば図２９（Ｅ）に示すラッチ信号ＳＬ）を出力する。
なお、更新信号選択手段は、乱数値更新方式選択レジスタに第１の乱数更新方式を指定する乱数更新方式選択データが格納されているとき、数値変更レジスタに数値変更データが書き込まれたことに応答して、乱数発生用クロック信号生成手段から出力されている乱数発生用クロック信号に同期した数値データの更新を指示する数値更新指示信号を、数値更新手段に出力してもよい。
【００１６】
請求項８に記載の遊技機において、前記乱数回路は、前記数値更新手段による数値データの更新周期を指定する周期設定データ（例えば周期設定データ「０Ｆｈ」など）を格納する周期設定レジスタ（例えば周期設定レジスタ１３７）を含み、前記乱数回路設定手段は、予め設定された更新周期を指定する前記周波数設定データを前記周期設定レジスタに書き込む周期設定手段（例えばＣＰＵ１０６がステップＳ２３の処理を実行する部分）を含み、前記乱数発生用クロック信号生成手段は、前記周期設定レジスタに格納されている周期設定データに応じて前記クロック信号生成手段から出力される基準クロック信号の周期を変更して前記乱数発生用クロック信号として出力する。
【００１７】
請求項９に記載の遊技機において、前記遊技制御手段は、前記周期設定手段が前記周期設定レジスタに書き込んだ前記周期設定データにより指定される前記更新周期が所定の下限値（例えば「システムクロック信号の周期×１２８×７」など）より小さいとき（周期設定データにより指定されるクロック信号の周期が「０」〜「システムクロック信号の周期×１２８×６」のときなど）、該所定の下限値を指定する周期設定データ（例えば周期設定データ「０７ｈ」など）を該周期設定レジスタに格納する。
【００１８】
請求項１０に記載の遊技機において、前記乱数回路は、該乱数回路の起動を要求する乱数回路起動データ（例えば乱数回路起動データ「８０ｈ」）を格納する乱数回路起動レジスタ（例えば乱数回路起動レジスタ１４１）と、前記乱数回路起動レジスタに前記乱数回路起動データが書き込まれたことに応答して、該乱数回路を起動させる乱数回路起動手段（例えば乱数回路起動信号出力回路１３０）とを含み、前記乱数回路設定手段は、前記乱数回路起動データを前記乱数回路起動レジスタに書き込む乱数回路起動設定手段（例えばＣＰＵ１０６がステップＳ２４の処理を実行する部分など）を含む。
【００１９】
請求項１１に記載の遊技機において、前記マイクロプロセッサは、該マイクロプロセッサをシステムリセットするシステムリセット手段（例えばリセットコントローラ１０２）を含み、前記乱数回路起動設定手段は、前記システムリセット手段により前記マイクロプロセッサがシステムリセットされたとき（例えばステップＳ６又はステップＳ７にてＮｏと判定されたとき）、前記乱数回路起動データを前記乱数回路起動レジスタに再度書き込んで前記乱数回路を起動させる（例えばＣＰＵ１０６がステップＳ９に続くステップＳ１０の乱数回路設定処理においてステップＳ２４の処理を実行する）。
【００２０】
請求項１２に記載の遊技機において、前記乱数回路は、前記始動信号出力手段から始動信号が入力されている時間を計測し、該計測した時間が所定の時間（例えば３ミリ秒）になったとき、該始動信号を前記ラッチ信号出力手段に出力するタイマ手段（例えばタイマ回路１３４）を含む。
【００２１】
請求項１３に記載の遊技機において、前記表示結果決定手段は、前記タイマ割込処理の実行回数が所定回（例えば２回）に達するまでの間（例えば４ミリ秒間）、前記始動信号出力手段から始動信号が継続して入力されたことに基づいて、前記乱数値記憶手段から乱数値を読み出し、前記タイマ手段は、前記タイマ割込処理の実行回数が前記所定回に達するまでの時間よりも短い時間を前記所定の時間として設定する設定手段（例えばタイマ回路１３４が２回の遊技制御割込処理の実行時間である４ミリ秒よりも短い時間として３ミリ秒を設定する部分など）を含み、前記計測した時間が前記設定手段により所定の時間として設定された時間になったとき、前記始動信号を前記ラッチ信号出力手段に出力する。
【００２４】
請求項１４に記載の遊技機において、前記乱数値記憶手段は、前記読出制御手段から出力制御信号が入力されているとき、前記ラッチ信号出力手段から出力されるラッチ信号に対して受信不能状態に制御するラッチ信号受信制御手段（例えばＡＮＤ回路２０１など）を含む。
【００２５】
請求項１５に記載の遊技機は、可変表示の実行条件（例えば普通可変入賞球装置６への入賞）が成立した後に可変表示の開始条件（例えば可変表示装置４における前回の可変表示及び大当り遊技状態の終了）が成立したことに基づいて、各々が識別可能な複数種類の識別情報（例えば特別図柄）を可変表示する可変表示装置（例えば可変表示装置４）を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態（例えば大当り遊技状態）に制御する遊技機（例えばパチンコ遊技機１）であって、遊技機に電力を供給する電力供給手段（例えば電源基板１０）と、乱数（例えばランダムＲなど）を発生する乱数回路（例えば乱数回路１０３）と遊技の進行を制御する遊技制御手段（例えばＣＰＵ１０６）とを内蔵し、前記電力供給手段から供給される電力を用いて動作するマイクロプロセッサ（例えば主基板１１に搭載された遊技制御用マイクロプロセッサ１００）と、所定の周期の基準クロック信号（例えば基準クロック信号ＣＬＫ）を生成して前記乱数回路に出力するクロック信号生成手段（例えばクロック回路１０１）と、前記実行条件が成立したことに基づいて、始動信号（例えば始動入賞信号ＳＳ）を前記遊技制御手段に出力する始動信号出力手段（例えば始動入賞口スイッチ７０）と、前記マイクロプロセッサからの制御信号に基づいて前記可変表示装置における識別情報の可変表示を制御する可変表示制御手段（例えば表示制御基板１２）とを備え、前記遊技制御手段は、前記電力供給手段による電力の供給開始後、前記乱数回路に前記乱数値を更新させるための設定を行う乱数回路設定手段（例えばＣＰＵ１０６がステップＳ１０の乱数回路設定処理を実行する部分）と、前記乱数回路設定手段により前記乱数回路に前記設定が行われた後、定期的（例えば２ミリ秒ごと）に発生するタイマ割込処理の実行を許可するタイマ割込処理実行許可手段（例えばＣＰＵ１０６がステップＳ１４での処理を実行する部分）と、前記タイマ割込処理の実行中（例えばＣＰＵ１０６による遊技制御割込処理の実行中）、前記始動信号出力手段から始動信号が入力されたことに基づいて、前記可変表示における表示結果を特定表示結果とするか否かを決定する表示結果決定手段（例えばＣＰＵ１０６がステップＳ１５０の特別図柄通常処理とステップＳ１５１の大当り判定処理とを実行する部分など）と、前記タイマ割込処理の実行中、前記始動信号出力手段から始動信号が入力されたことに基づいて、ラッチ用始動信号（例えばラッチ用始動入賞信号ＳＮ）を生成して前記乱数回路に出力するラッチ用始動信号出力手段（例えばＣＰＵ１０６がステップＳ２５４の処理を実行する部分）とを含み、前記乱数回路は、前記クロック信号生成手段から出力される基準クロック信号を用いて乱数発生用クロック信号（例えば乱数発生用クロック信号Ｓ１）を生成し、該乱数発生用クロック信号を出力する乱数発生用クロック信号生成手段（例えばクロック信号出力回路１２４）と、前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号を反転させて反転クロック信号（例えば反転クロック信号Ｓ２）を生成し、該反転クロック信号を出力する反転クロック信号生成手段（例えば反転回路１３２）と、前記乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミング（例えば乱数発生用クロック信号Ｓ１がローレベルからハイレベルへと立上がるタイミングＴ５１，Ｔ５２，…など）において、数値データ（例えばカウント値Ｃ）を更新する数値更新手段（例えばカウンタ１２１）と、前記反転クロック信号生成手段から出力される反転クロック信号が前記所定の態様で変化するタイミング（例えばタイミングＴ６２など）において、前記ラッチ用始動信号出力手段から入力されるラッチ用始動信号をラッチ信号（例えばラッチ信号ＳＬ）として出力するラッチ信号出力手段と、前記ラッチ信号出力手段から入力されるラッチ信号に応答して、前記数値更新手段により更新された数値データを乱数値（例えばランダムＲの値など）として記憶する乱数値記憶手段（例えば乱数値記憶回路１３１）とを含み、前記表示結果決定手段は、前記乱数記憶手段から乱数値を読み出して（例えばＣＰＵ１０６がステップＳ２５６〜Ｓ２６２の処理を実行して）、該読み出した乱数値が所定の判定値データ（例えば「３」など）と合致するか否かを判定することにより、前記可変表示における表示結果を特定表示結果とするか否かを決定し、前記遊技制御手段は、前記表示結果決定手段が前記乱数値記憶手段から乱数値を読み出す前に、該乱数値記憶手段に出力制御信号を出力して該乱数値記憶手段を読出可能状態に制御し、該表示結果決定手段が前記乱数値記憶手段から乱数値を読み出した後、該乱数値記憶手段への出力制御信号の出力を停止して該乱数値記憶手段を読出不能状態に制御する読出制御手段を含み、前記乱数値記憶手段は、前記ラッチ信号出力手段からラッチ信号が入力されているとき、前記読出制御手段から出力される出力制御信号に対して受信不能状態に制御する出力制御信号受信制御手段を含む。
【発明の効果】
【００２６】
本発明は、以下に示す効果を有する。
【００２７】
請求項１に記載の構成によれば、乱数回路は遊技制御手段とともにマイクロプロセッサに内蔵されていることから、基板スペースを確保することができる。また、乱数回路をマイクロプロセッサに内蔵させたことで、不正基板の設置等によって乱数回路で生成された乱数値を示す数値データを外部から書き換えることが困難になり、偽造の防止を図ることができる。さらに、マイクロプロセッサは、乱数回路設定手段による設定に従って乱数値記憶手段に記憶される乱数値の更新動作を制御できるため、例えば遊技機毎に異なる設定を行うことにより、乱数値記憶手段から読み出されて可変表示における表示結果を特定表示結果とするか否かの決定等に用いられる乱数のランダム性を高めることができる。加えて、数値更新手段は、乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミングにおいて数値データを更新し、ラッチ信号出力手段は、反転クロック信号生成手段により乱数発生用クロック信号を反転させることで生成された反転クロック信号が所定の態様で変化するタイミングにおいて始動信号をラッチ信号として出力する。これにより、乱数値の取得を確実且つ安定的に行うことができる。また、この構成によれば、始動信号が入力されたことに基づいて、表示結果決定手段が乱数値記憶手段から乱数値を読み出すため、無駄な処理を省略することができる。加えて、表示結果決定手段が乱数値を読み出すときのみ、乱数値記憶手段を読出可能状態にすることができるため、乱数値の取得を確実且つ安定的に行うことができる。さらに、乱数値記憶手段に記憶されている乱数値が更新されているときに、表示結果決定手段により乱数値記憶手段から乱数値が読み出されることを防止することができるため、乱数値の更新を確実且つ安定的に行うことができる。
【００２８】
請求項２に記載の構成によれば、予め設定された前記乱数の最大値を上限として、乱数値更新手段に格納されている乱数値を更新することができるため、遊技機毎に異なる乱数の最大値を設定することにより、乱数値記憶手段から読み出され、可変表示における表示結果を特定表示結果とする否かを決定するのに用いられる乱数のランダム性を高めることができる。
【００２９】
請求項３に記載の構成によれば、所定の下限値以下の値が乱数の最大値として乱数回路に設定されることを防止することができる。
【００３０】
請求項４に記載の構成によれば、数値更新手段により更新される数値データにおける所定の初期値を変更して、数値データが所定の初期値から所定の最終値まで更新される周期の検出を困難にすることにより、乱数値記憶手段から読み出した乱数値が所定の判定値データと合致するタイミングを狙って所定の信号を出力し、特定遊技状態を頻発させるといった不正行為を防止することができる。
【００３１】
請求項５に記載の構成によれば、初期値変更手段により変更された初期値が乱数回路に設定された乱数の最大値より大きいとき、さらに初期値を変更させることができるため、乱数値記憶手段に出力される数値データが乱数の最大値より大きくなることを防止することができる。
【００３２】
請求項６に記載の構成によれば、乱数値記憶手段に入力される数値データの更新順である順列を変更させることにより、乱数値記憶手段から読み出され、可変表示における表示結果を特定表示結果とする否かを決定するのに用いられる乱数のランダム性を高めることができる。
【００３３】
請求項７に記載の構成によれば、選択した乱数更新方式により乱数値記憶手段に乱数値を記憶させることができるため、遊技機毎に異なる乱数更新方式を選択することにより、乱数値記憶手段から読み出され、可変表示における表示結果を特定表示結果とするか否かを決定するのに用いられる乱数のランダム性を高めることができる。また、数値更新手段が数値データを更新するタイミングや、乱数値記憶手段に数値データを乱数値として記憶させるタイミングを指定することができるので、更新されていない乱数値が読み出されることを防止することができる。
【００３４】
請求項８に記載の構成によれば、予め設定された周期毎に数値更新手段による数値データの更新を行い、更新された数値データを乱数値記憶手段に乱数値として記憶させて乱数値の更新を行うことができるので、遊技機毎に異なる周期を設定することにより、乱数値記憶手段から読み出され、可変表示における表示結果を特定表示結果とする否かを決定するのに用いられる乱数のランダム性を高めることができる。
【００３５】
請求項９に記載の構成によれば、所定の下限値以下の値が更新周期として乱数回路に設定されることを防止することができる。
【００３６】
請求項１０に記載の構成によれば、乱数回路に乱数値を更新させるための設定を行った後、乱数回路を起動させることができるため、電力の供給開始後、乱数回路の設定を行う前に、乱数回路が乱数の発生を開始してしまうといった不具合を防止することができる。
【００３７】
請求項１１に記載の構成によれば、システムリセット手段によりシステムリセットされたときであっても、乱数回路を再度起動させることができる。
【００３８】
請求項１２に記載の構成によれば、乱数回路は、始動信号出力手段から入力される始動信号をラッチ信号出力手段に直接出力するのではなく、始動信号の入力時間をタイマ手段により計測し、計測時間が予め設定された時間になったときに、始動信号をラッチ信号出力手段に出力する。このため、ラッチ信号出力手段がノイズの影響等により誤って乱数値記憶手段にラッチ信号を出力することを防止することができる。
【００３９】
請求項１３に記載の構成によれば、タイマ手段には、タイマ割込処理の実行回数が所定回に達するまでの時間よりも短い時間が前記所定の時間として設定されているため、表示結果決定手段が乱数値記憶手段から読み出した乱数値が前回読み出した乱数値と同じ値になることを防止することができる。
【００４２】
請求項１４に記載の構成によれば、乱数回路は、表示結果決定手段が乱数値記憶手段から乱数値を読み出しているときに、乱数値記憶手段に記憶されている乱数値が更新されることを防止することができるため、乱数値の取得を確実且つ安定的に行うことができる。
【００４３】
請求項１５に記載の構成によれば、乱数回路は遊技制御手段とともにマイクロプロセッサに内蔵されていることから、基板スペースを確保することができる。また、乱数回路をマイクロプロセッサに内蔵させたことで、不正基板の設置等によって乱数回路で生成された乱数値を示す数値データを外部から書き換えることが困難になり、偽造の防止を図ることができる。さらに、マイクロプロセッサは、乱数回路設定手段による設定に従って乱数値記憶手段に記憶される乱数値の更新動作を制御できるため、例えば遊技機毎に異なる設定を行うことにより、乱数値記憶手段から読み出されて可変表示における表示結果を特定表示結果とするか否かの決定等に用いられる乱数のランダム性を高めることができる。加えて、数値更新手段は、乱数発生用クロック信号生成手段から出力される乱数発生用クロック信号が所定の態様で変化するタイミングにおいて数値データを更新し、ラッチ信号出力手段は、反転クロック信号生成手段により乱数発生用クロック信号を反転させることで生成された反転クロック信号が所定の態様で変化するタイミングにおいて、遊技制御手段から入力されるラッチ用始動信号をラッチ信号として出力する。これにより、乱数値の取得を確実且つ安定的に行うことができる。また、この構成によれば、始動信号が入力されたことに基づいて、表示結果決定手段が乱数値記憶手段から乱数値を読み出すため、無駄な処理を省略することができる。さらに、ラッチ用始動信号出力手段は、始動信号出力手段から始動信号が入力されたことに基づいて、ラッチ信号出力手段にラッチ用始動信号を出力するため、始動信号出力手段から乱数回路へ始動信号を供給するための経路を設ける必要がない。このため、遊技機のハードウェア構成を簡素化できる。加えて、表示結果決定手段が乱数値を読み出すときのみ、乱数値記憶手段を読出可能状態にすることができるため、乱数値の取得を確実且つ安定的に行うことができる。さらに、乱数値記憶手段に記憶されている乱数値が更新されているときに、表示結果決定手段により乱数値記憶手段から乱数値が読み出されることを防止することができるため、乱数値の更新を確実且つ安定的に行うことができる。
【発明を実施するための最良の形態】
【００４４】
以下、図面を参照しつつ、本発明の一実施形態を詳細に説明する。なお、以下の説明においてリーチ表示状態とは、表示結果として導出表示した図柄（リーチ図柄という）が大当り図柄の一部を構成しているときに未だ導出表示していない図柄（リーチ可変図柄という）については可変表示が行われている状態、あるいは、全て又は一部の図柄が大当り図柄の全て又は一部を構成しながら同期して可変表示している状態のことである。具体的には、予め定められた複数の表示領域に、予め定められた図柄が停止することで大当りとなる有効ラインが定められ、その有効ライン上の一部の表示領域に予め定められた図柄が停止しているときに未だ停止していない有効ライン上の表示領域において可変表示が行われている状態（例えば、左、中、右の表示領域のうち左、右の表示領域には大当り図柄の一部となる（例えば「７」）が停止表示されている状態で中の表示領域は未だ可変表示が行われている状態）、あるいは、有効ライン上の表示領域の全て又は一部の図柄が大当り図柄の全て又は一部を構成しながら同期して可変表示している状態（例えば、左、中、右の表示領域の全てで可変表示が行われてどの状態が表示されても同一の図柄が揃っている態様で可変表示が行われている状態）である。
【００４５】
本実施例における遊技機は、ＬＣＤ等からなる画像表示装置により特図ゲームを行う遊技機であり、プリペイドカードによって球貸しを行うカードリーダ（ＣＲ：Card Reader）式のパチンコ遊技機や、ＬＣＤを搭載したスロットマシン等の遊技機である。
【００４６】
図１は、本実施例におけるパチンコ遊技機の正面図であり、主要部材の配置レイアウトを示す。パチンコ遊技機（遊技機）１は、大別して、遊技盤面を構成する遊技盤（ゲージ盤）２と、遊技盤２を支持固定する遊技機用枠（台枠）３と、から構成されている。遊技盤２にはガイドレールによって囲まれた、ほぼ円形状の遊技領域が形成されている。この遊技領域のほぼ中央位置には、各々が識別可能な識別情報として特別図柄を可変表示可能に表示する可変表示装置４が設けられている。この可変表示装置４の下側には、普通可変入賞球装置（始動入賞口）６が配置されている。普通可変入賞球装置６の下側には、特別可変入賞球装置（大入賞口）７が配置されている。また、可変表示装置４の上部には、普通図柄表示器４０が設けられている。
【００４７】
可変表示装置４は、複数の表示領域において識別情報としての図柄を可変表示するＬＣＤ（Liquid Crystal Display）モジュール等を備えて構成され、例えば、普通可変入賞球装置６に遊技球が入賞することが実行条件となる特図ゲームにおいて、数字、文字、図柄等から構成される３つの表示図柄（特別図柄）の可変表示を開始し、一定時間が経過すると、左、右、中の順で表示図柄を確定する。可変表示装置４には、普通可変入賞球装置６に入った有効入賞球数すなわち始動記憶数を表示する４つの始動記憶表示エリアが設けられていてもよい。
【００４８】
この実施の形態では、図柄番号が偶数である特別図柄を通常大当り図柄とし、図柄番号が奇数である特別図柄を確変大当り図柄とする。すなわち、可変表示装置４による特図ゲームにおいて、特別図柄の可変表示を開始した後、左・中・右の表示領域にて同一の特別図柄が表示結果として導出表示されて確定したときには、パチンコ遊技機１は、大当り遊技状態となる。ここで、可変表示装置４による特図ゲームにおいて、特別図柄の可変表示を開始した後、左・中・右の表示領域にて同一の確変大当り図柄が表示結果として導出表示されて確定したときには、パチンコ遊技機１は大当り遊技状態の終了に続いて特別遊技状態（確率向上状態）となり、以後、所定条件が成立するまで特図ゲームにおける表示結果が大当り組合せとなる確率が向上する。また、確率向上状態では、普通可変入賞球装置６の開放時間が通常遊技状態よりも長くなるとともに、その開放回数が通常遊技状態のときよりも増加するなど、大当り遊技状態とは異なる遊技者にとって有利な状態となる。なお、通常遊技状態とは、大当り遊技状態や確率向上状態以外の遊技状態のことである。
【００４９】
普通図柄表示器４０は、発光ダイオード（ＬＥＤ）等を備えて構成され、遊技領域に設けられた所定の通過ゲートを遊技球が通過することを実行条件とする普通図ゲームにおいて、点灯、点滅、発色などが制御される。この普通図ゲームにおいて所定の当りパターンで表示が行われると、普通図ゲームにおける表示結果が「当り」となり、普通可変入賞球装置６を構成する電動チューリップの可動翼片を所定時間が経過するまで傾動制御する。
【００５０】
普通可変入賞球装置６は、ソレノイド２１（図３）によって垂直（通常開放）位置と傾動（拡大開放）位置との間で可動制御される一対の可動翼片を有するチューリップ型役物（普通電動役物）を備えて構成される。普通可変入賞球装置６への遊技球の入賞に基づく特別図柄の可変表示は、所定回数（本実施形態では、４回）まで後述する特図保留メモリ１７０（図２５）に記憶される。
【００５１】
特別可変入賞球装置７は、ソレノイド２２（図３）によって入賞領域を開成・閉成制御する開閉板を備える。この開閉板は、通常時には閉成し、普通可変入賞球装置６への遊技球の入賞に基づいて可変表示装置４による特図ゲームが行われた結果、大当り遊技状態となった場合に、ソレノイド２２によって入賞領域を所定期間（例えば、２９秒）あるいは所定個数（例えば、１０個）の入賞球が発生するまで開成（開成サイクル）する状態となるように設定され、その開成している間に遊技領域を落下する遊技球を受け止める。そして、この開成サイクルを例えば最高１６回繰り返すことができるようになっている。特別可変入賞球装置７に入賞した遊技球は、所定の検出部により検出される。入賞球の検出に応答し、後述する主基板１１と払出制御基板１５（図２）とにより、所定数の賞球の払い出しが行われる。
【００５２】
また、遊技盤２の表面には、上記した構成以外にも、ランプを内蔵した風車、アウト口等が設けられている。また、パチンコ遊技機１には、点灯又は点滅する遊技効果ランプ９や効果音を発生するスピーカ８Ｌ、８Ｒが設けられている。
【００５３】
図２は、パチンコ遊技機１の背面図であり、主要基板の配置レイアウトを示す。本実施例におけるパチンコ遊技機１は、主として、電力供給手段として機能する電源基板１０と、主基板１１と、表示制御基板１２と、音声制御基板１３と、ランプ制御基板１４と、払出制御基板１５と、情報端子基板１６と、を備え、それぞれ適所に配設されている。なお、表示制御基板１２、音声制御基板１３及びランプ制御基板１４は、それぞれ独立した基板として、例えば、パチンコ遊技機１の裏面において、１つのボックスに収容された状態で配置されてもよい。さらに、表示制御基板１２、音声制御基板１３及びランプ制御基板１４を、まとめて１つの基板として構成してもよい。
【００５４】
電源基板１０は、パチンコ遊技機１内の各回路に所定の電力を供給するものである。
【００５５】
主基板１１は、メイン側の制御基板であり、パチンコ遊技機１における遊技の進行を制御するための各種回路が搭載されている。主基板１１は、主として、所定位置に配設されたスイッチ等からの信号の入力を行う機能、表示制御基板１２と音声制御基板１３とランプ制御基板１４と払出制御基板１５となどからなるサブ側の制御基板に対して、それぞれ指令情報の一例となる制御データを出力して送信する機能、ホールの管理コンピュータに対して各種情報を出力する機能などを備えている。
【００５６】
主基板１１から表示制御基板１２へ送信される制御コマンドは表示制御コマンドである。図３は、主基板１１における回路構成、及び主基板１１から表示制御基板１２に送信される表示制御コマンドの信号線等を示すブロック図である。図３に示すように、この実施の形態では、表示制御コマンドが、表示制御信号ＣＤ０〜ＣＤ７の８本の信号線で主基板１１から表示制御基板１２に対して送出される。また、主基板１１と表示制御基板１２との間には、ストローブ信号を送受するための表示制御ＩＮＴ信号の信号線も配線されている。
【００５７】
主基板１１には、図３に示すように、始動入賞口スイッチ７０からの配線が接続されている。また、主基板１１には、大入賞口である特別可変入賞球装置７や、その他の入賞口への遊技球の入賞等を検出するための各種スイッチからの配線も接続されている。さらに、主基板１１には、普通可変入賞球装置６における可動翼片の可動制御や特別可変入賞球装置７における開成・閉成制御を行うためのソレノイド２１、２２への配線が接続されている。
【００５８】
主基板１１は、遊技制御用マイクロプロセッサ１００、スイッチ回路１０９、ソレノイド回路１１０などを搭載して構成される。遊技制御用マイクロプロセッサ１００は、例えば１チップマイクロプロセッサであり、クロック回路１０１、システムリセット手段として機能するリセットコントローラ１０２、乱数回路１０３、ゲーム制御用のプログラム等を記憶するＲＯＭ（Read Only Memory）１０４、ワークメモリとして使用されるＲＡＭ（Random Access Memory）１０５、制御動作を行うＣＰＵ（Central Processing Unit）１０６、ＣＰＵに割込要求信号を送出するＣＴＣ（Counter Timer Circuit）１０７及びＩ／Ｏ（Input/Output）ポート１０８を内蔵している。
【００５９】
クロック回路１０１は、システムクロック信号をＣＰＵ１０６に出力し、このシステムクロック信号を２７（＝１２８）分周して生成した所定の周期の基準クロック信号ＣＬＫを、乱数回路１０３に出力する。リセットコントローラ１０２は、ローレベルの信号が一定期間入力されたとき、ＣＰＵ１０６及び乱数回路１０３等に所定の初期化信号を出力して、遊技制御用マイクロプロセッサ１００をシステムリセットする。
【００６０】
図４は、乱数回路１０３の構成例を示すブロック図である。図４に示すように、乱数回路１０３は、数値更新手段として機能するカウンタ１２１と、更新範囲規制手段として機能する比較器１２２と、数値順列変更手段として機能するカウント値順列変更回路１２３と、乱数発生用クロック信号生成手段として機能するクロック信号出力回路１２４と、カウント値更新信号出力回路１２５と、乱数値読取信号出力回路１２６と、乱数更新方式選択信号出力回路１２７と、更新信号選択手段として機能するセレクタ１２８と、乱数回路起動信号出力回路１３０と、乱数値記憶手段として機能する乱数値記憶回路１３１と、反転クロック信号生成手段として機能する反転回路１３２と、ラッチ信号出力手段として機能するラッチ信号生成回路１３３と、タイマ手段として機能するタイマ回路１３４とから構成されている。乱数回路１０３は、例えば、大当りを発生させてパチンコ遊技機１を大当り遊技状態とするか否かを決定する大当り判定用の乱数であるランダムＲを発生する。
【００６１】
カウンタ１２１は、セレクタ１２８により選択されて入力される信号に応答して、出力するカウント値Ｃを、一定の規則に従って、初期値から最終値まで循環的に更新する。そして、カウンタ１２１は、カウント値Ｃを最終値まで更新すると、その旨を通知する通知信号をＣＰＵ１０６に出力し、この通知信号に応答したＣＰＵ１０６により初期値が変更される。この実施の形態において、カウンタ１２１は、セレクタ１２８からの信号における立ち上がりエッヂが入力される毎に、カウント値Ｃを「１」から「４０９５」まで１ずつカウントアップして行き、「４０９５」までカウントアップすると、その旨を通知する通知信号をＣＰＵ１０６に出力する。そして、この通知信号に応答したＣＰＵ１０６により、初期値が変更され、カウンタ１２１は、この変更された初期値から再び「４０９５」までカウントアップする。
【００６２】
カウント値順列変更回路１２３は、カウント値の更新順である順列の変更を要求するカウント値順列変更データ「０１ｈ」を格納するカウント値順列変更レジスタ（ＲＳＣ）１３６と、更新規則選択レジスタ（ＲＲＣ）１４２と、更新規則メモリ１４３と、を備える。カウント値順列変更回路１２３は、カウント値順列変更レジスタ１３６に数値順列変更データ「０１ｈ」が格納されているとき、カウント値順列変更データ「０１ｈ」が格納されていないときの順列とは異なる順列に変更する。
【００６３】
図５は、更新規則選択レジスタ１４２の構成例を示すブロック図である。図５に示すように、更新規則選択レジスタ１４２は、８ビットレジスタであり、その初期値は、「０（＝００ｈ）」に設定されている。更新規則選択レジスタ１４２は、ビット０〜ビット３が書込可能及び読出可能に、ビット４〜ビット７が書込不能及び読出不能に構成されている。したがって、更新規則選択レジスタ１４２のビット４〜ビット７に値を書き込んでも、その値は無効であり、ビット４〜ビット７から読み出した値は全て「０（＝００００ｂ）」となる。
【００６４】
更新規則選択レジスタ１４２の値（レジスタ値）は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」が書き込まれたことに応答して、「０（＝００ｈ）」から「１５（＝０Ｆｈ）」まで循環的に更新される。すなわち、カウント値順列変更レジスタ１３６にカウント値順列データ「０１ｈ」が書き込まれる毎に、レジスタ値は、「０」から「１」ずつ加算され、「１５」になると再び「０」に戻る。
【００６５】
図６は、更新規則メモリ１４３の構成例を示すブロック図である。図６に示すように、更新規則メモリ１４３は、カウント値の更新規則と、更新規則選択レジスタ１４２の値と、を対応付けて格納している。更新規則メモリ１４３には、カウンタ１２１の更新規則と同一の更新規則Ａがレジスタ値「０」と対応して格納され、カウンタ１２１の更新規則とは異なる更新規則Ｂ〜Ｐがレジスタ値「１」〜「１５」と対応して格納されている。
【００６６】
図４に示すカウント値順列変更回路１２３は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」が書き込まれているとき、カウンタ１２１からカウント値の最終値「４０９５」が入力されると、更新されたレジスタ値に基づいて、更新規則メモリ１４３のうちから更新規則を選択して設定することにより、出力するカウント値の更新規則を切り替える。そして、カウント値順列変更回路１２３は、カウンタ１２１からの入力に応答して、この切り替えた更新規則に従って、カウント値を更新して出力する。
【００６７】
このように、カウント値順列変更回路１２３は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」が書き込まれたことに応答して、更新規則を切り替えることにより、出力するカウント値の順列を変更する。
【００６８】
図７は、カウント値順列変更回路１２３におけるカウント値順列の変更動作の説明図である。図７に示すように、ＣＰＵ１０６により所定のタイミングにカウント値順列変更データ「０１ｈ」がカウント値順列変更レジスタ１３６に書き込まれると、レジスタ値は、１加算され、例えば「０」から「１」に更新される。この後、カウント値順列変更回路１２３は、カウンタ１２１からカウント値の最終値「４０９５」が入力されるまで、更新前のレジスタ値「０」に対応する「更新規則Ａ」に従ってカウント値を更新して出力する。このとき、カウント値順列変更回路１２３から出力されるカウント値の順列は、「１→２→…→４０９５」である。
【００６９】
そして、カウンタ１２１からカウント値の最終値「４０９５」が入力されると、カウント値順列変更回路１２３は、更新規則メモリ１４３から、更新後のレジスタ値「１」に対応する「更新規則Ｂ」を選択して設定する。カウント値順列変更回路１２３は、カウンタ１２１からの入力に応答して、この選択設定した「更新規則Ｂ」に従って、カウント値を更新して出力する。これにより、カウント値順列変更回路１２３から出力されるカウント値の順列は、「１→２→…→４０９５」から「４０９５→４０９４→…→１」に変更される。
【００７０】
この後、後述するようにカウント値順列変更レジスタ１３６は初期化され、カウント値順列変更回路１２３から出力されるカウント値の順列は、「４０９５→４０９４→…→１」のままとなる。
【００７１】
ＣＰＵ１０６によりカウント値順列変更データ「０１ｈ」がカウント値順列変更レジスタ１３６に再度書き込まれると、レジスタ値は「１」から「２」に更新される。そして、カウンタ１２１からカウント値の最終値「４０９５」が入力されると、カウント値順列変更回路１２３は、更新規則メモリ１４３から、レジスタ値「２」に対応する「更新規則Ｃ」を選択して設定する。カウント値順列変更回路１２３は、カウンタ１２１からの入力に応答して、この選択設定した「更新規則Ｃ」に従って、カウント値を更新して出力することにより、カウント値の順列は、さらに変更され、「１→３→…→４０９５→２…→４０９４」となる。
【００７２】
このように、カウント値順列変更レジスタ１３６が初期化された後、カウント値順列データ「０１ｈ」をカウント値順列変更レジスタ１３６に再度書き込むことにより、変更したカウント値の順列をさらに変更することができる。
【００７３】
図８は、カウント値順列変更レジスタ１３６の構成例を示す図である。図８に示すように、カウント値順列変更レジスタ１３６は、読出可能な８ビットレジスタであり、その初期値は、「０（＝００ｈ）」に設定されている。また、カウント値順列変更レジスタ１３６は、ビット０のみが書込可能及び書込可能に構成され、したがって、ビット１〜ビット７に値を書き込んでも、その値は無効であり、ビット１〜ビット７から読み出した値は全て「０（＝０００００００ｂ）」となる。
【００７４】
なお、カウント値順列変更回路１２３が、切り替えた更新規則に従ってカウント値の更新動作を開始したことに応答して、ＣＰＵ１０６は、カウント値順列変更データ「０１ｈ」が書き込まれたカウント値順列変更レジスタ１３６を初期化して格納されている値を初期値である「０（＝００ｈ）」に戻す。
【００７５】
図４に示す比較器１２２は、ランダムＲの最大値（乱数最大値）を指定する乱数最大値設定データを格納する乱数最大値設定レジスタ（ＲＭＸ）１３５を備える。比較器１２２は、乱数最大値設定レジスタ１３５に格納されている乱数最大値設定データに応じて、カウンタ１２１によるカウント値の更新範囲を規制する。この実施の形態において、カウンタ１２１から入力されたカウント値と乱数最大値設定レジスタ１３５に格納されている乱数最大値設定データ（例えば「００ＦＦｈ」）により指定される乱数最大値（例えば「２５５」）とを比較し、入力されたカウント値が乱数最大値以下のとき、入力されたカウント値を乱数値記憶回路１３１に出力し、入力されたカウント値が乱数最大値より大きいとき、カウント値更新信号をカウンタ１２１に出力する。
【００７６】
図９は、カウンタ１２１及び比較器１２２におけるカウント値の更新動作の説明図である。なお、図９では、カウント値順列変更回路１２３において更新規則Ａが選択され、乱数最大値を「２５５」と設定した場合を例に説明する。
【００７７】
入力されるカウント値が「１」から「２５５」までのとき、比較器１２２は、この入力されたカウント値をそのまま乱数値記憶回路１３１に出力する。そして、入力されるカウント値が乱数最大値「２５５」より大きい値「２５６」になると、比較器１２２は、カウンタ１２１にカウント値更新信号を出力してカウント値を「２５７」に更新させる。このような動作を繰り返すことにより、比較器１２２は、入力されるカウント値をカウンタ１２１により「２５６」から「４０９５」まで連続的にカウントアップさせる。そして、カウンタ１２１は、「４０９５」までカウントアップすると、その旨を通知する通知信号をＣＰＵ１０６に出力する。
【００７８】
この通知信号に応答したＣＰＵ１０６により変更された初期値が乱数最大値「２５５」より大きい場合（例えば「２５６」）、カウンタ１２１は、この変更された初期値のカウント値を比較器１２２に出力し、比較器１２２は、カウンタ１２１にカウント値更新信号を出力してカウント値を更新させる。このような動作を繰り返すことにより、比較器１２２は、入力されるカウント値をカウンタ１２１により「４０９５」まで連続的にカウントアップさせ、カウンタ１２１に通知信号を出力させる。そして、この通知信号に応答したＣＰＵ１０６により、初期値がさらに変更される。このようにして、初期値は、乱数最大値以下の値になるまで変更される。そして、この通知信号に応答したＣＰＵ１０６により変更された初期値が乱数最大値「２５５」以下になった場合（例えば「１５」）、カウンタ１２１は、この変更された初期値のカウント値を比較器１２２に出力し、比較器１２２は、入力されたカウント値をそのまま乱数値記憶回路１３１に出力する。
【００７９】
上記説明したカウンタ１２１及び比較器１２２における動作により、乱数最大値設定レジスタ１３５に格納されている乱数最大値以下のカウント値のみを乱数値記憶回路１３１に出力することにより、乱数回路１０３は、乱数最大値設定レジスタ１３５に格納した乱数最大値「２５５」を上限としたランダムＲを発生することができる。また、初期値が乱数最大値以下になるまで変更されることにより、乱数値記憶回路１３１には、乱数最大値「２５５」以下の値が、変更された初期値として入力される。
【００８０】
図１０は、乱数最大値設定レジスタ１３５の構成例を示すブロック図である。図１０に示すように、乱数最大値設定レジスタ１３５は、１６ビットレジスタであり、その初期値は、「４０９５（＝０ＦＦＦｈ）」に設定されている。乱数最大値設定レジスタ１３５は、ビット０〜ビット１１が書込可能及び読出可能に、ビット１２〜ビット１５が書込不能及び読出不能に構成されている。したがって、乱数最大値設定レジスタ１３５のビット１２〜ビット１５に値を書き込んでも、その値は無効であり、ビット１２〜ビット１５から読み出した値は全て「０（＝００００ｂ）」となる。
【００８１】
また、乱数最大値設定レジスタ１３５に下限値「４」より小さい値を指定する乱数最大値設定データ「００００ｈ」〜「０００３ｈ」が書き込まれた場合、乱数最大値設定レジスタ１３５には、ＣＰＵ１０６により、初期値「４０９５」を指定する乱数最大値設定データ「０ＦＦＦｈ」が格納される。即ち、乱数最大値設定レジスタ１３５に設定可能な乱数最大値は、「４」から「４０９５」までである。なお、ＣＰＵ１０６は、リセットコントローラ１０２により遊技制御用マイクロプロセッサ１００がシステムリセットされるまで、乱数最大値設定データが書き込まれた乱数最大値設定レジスタ１３５を書込不能に制御する。
【００８２】
図４に示すクロック信号出力回路１２４は、セレクタ１２８と反転回路１３２に出力するクロック信号の周期（カウント値の更新周期）を指定する周期設定データを格納する周期設定レジスタ（ＲＰＳ）１３７を備える。クロック信号出力回路１２４は、周期設定レジスタ１３７に格納されている周期設定データに基づいて、乱数回路１０３外部のクロック回路１０１から入力される基準クロック信号ＣＬＫを分周して、乱数回路１０３内部で乱数値の発生に用いるクロック信号（乱数発生用クロック信号Ｓ１）を生成し、この生成した乱数発生用クロック信号Ｓ１をセレクタ１２８と反転回路１３２に出力する。例えば、周期設定レジスタ１３７に書き込まれた周期設定データが「０Ｆｈ（＝１６）」の場合、クロック信号出力回路１２４は、クロック回路１０１から入力される基準クロック信号ＣＬＫを１６分周して乱数発生用クロック信号Ｓ１を生成する。このとき生成された乱数発生用クロック信号Ｓ１の周期は、「システムクロック信号の周期×１２８×１６」となる。
【００８３】
図１１は、周期設定レジスタ１３７の構成例を示すブロック図である。図１１に示すように、周期設定レジスタ１３７は、書込可能及び読出可能な８ビットレジスタであり、その初期値は、「２５６（＝ＦＦｈ）」に設定されている。
【００８４】
また、周期設定レジスタ１３７に下限値「システムクロック信号の周期×１２８×７」より小さい値を指定する周期設定データ「００ｈ〜０６ｈ」が書き込まれた場合、ＣＰＵ１０６は、周期設定レジスタ１３７に下限値「システムクロック信号の周期×１２８×７」を指定する周期設定データ「０７ｈ」を格納する。即ち、周期設定レジスタ１３７に設定可能な周期は、「システムクロック信号の周期×１２８×７」から「システムクロック信号の周期×１２８×２５６」までである。なお、ＣＰＵ１０６は、リセットコントローラ１０２により遊技制御用マイクロプロセッサ１００がシステムリセットされるまで、周期設定データが書き込まれた周期設定レジスタ１３７を書込不能に制御する。
【００８５】
図４に示すカウント値更新信号出力回路１２５は、カウント値の更新を要求するカウント値更新データ「０１ｈ」を格納するカウント値更新レジスタ（ＲＧＮ）１３８を備える。カウント値更新信号出力回路１２５は、カウント値更新レジスタ１３８にカウント値更新データ「０１ｈ」が書き込まれたことに応答して、カウント値更新信号Ｓ３をセレクタ１２８に出力する。
【００８６】
図１２は、カウント値更新レジスタ１３８の構成例を示すブロック図である。図１２に示すように、カウント値更新レジスタ１３８は、読出不能な８ビットレジスタであり、ビット０のみが書込可能に構成され、ビット１〜ビット７に値を書き込んでも、その値は無効である。
【００８７】
図４に示す乱数値読取信号出力回路１２６は、乱数値記憶回路１３１へのカウント値の取込を要求する乱数値取込データ「０１ｈ」を格納する乱数値取込レジスタ（ＲＬＴ）１３９を備える。乱数値読取信号出力回路１２６は、乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」が書き込まれたことに応答して、乱数値読取信号をラッチ信号生成回路１３３に出力する。
【００８８】
図１３は、乱数値取込レジスタ１３９の構成例を示すブロック図である。図１３に示すように、乱数値取込レジスタ１３９は、読出不能な８ビットレジスタであり、ビット０のみが書込可能に構成され、ビット１〜ビット７に値を書き込んでも、その値は無効である。
【００８９】
図４に示す乱数更新方式選択信号出力回路１２７は、ランダムＲの値を更新する方式である第１及び第２の乱数更新方式のうちから選択された乱数更新方式を指定する乱数更新方式選択データを格納する乱数更新方式選択レジスタ（ＲＴＳ）１４０を備える。乱数更新方式選択信号出力回路１２７は、乱数更新方式選択レジスタ１４０に乱数更新方式選択データが書き込まれたことに応答して、この書き込まれた乱数更新方式選択データにより指定される乱数更新方式に対応する乱数更新方式選択信号をセレクタ１２８とラッチ信号生成回路１３３に出力する。
【００９０】
図１４（Ａ）は、乱数更新方式選択レジスタ１４０の構成例を示すブロック図である。図１４（Ａ）に示すように、乱数更新方式選択レジスタ１４０は、８ビットレジスタであり、その初期値は、「００ｈ」に設定されている。乱数更新方式選択レジスタ１４０は、ビット０〜ビット１が書込可能及び読出可能に、ビット２〜ビット７が書込不能及び読出不能に構成されている。したがって、乱数更新方式選択レジスタ１４０のビット２〜ビット７に値を書き込んでも、その値は無効であり、ビット２〜ビット７から読み出した値は全て「０（＝００００００ｂ）」となる。
【００９１】
図１４（Ｂ）は、乱数更新方式選択レジスタ１４０に書き込まれる乱数更新方式選択データの一例の説明図である。図１４（Ｂ）に示すように、乱数更新方式選択データは、２ビットのデータから構成され、「０１ｂ」は、第１の乱数更新方式を指定するデータであり、「１０ｂ」は、第２の乱数更新方式を指定するデータである。乱数更新方式選択データ「００ｂ」又は「１１ｂ」が乱数更新方式選択レジスタ１４０に書き込まれた場合、乱数回路１０３は起動不能となる。
【００９２】
図４に示すセレクタ１２８は、乱数更新方式選択信号出力回路１２７から第１の乱数更新方式に対応する乱数更新方式選択信号（第１の乱数更新方式選択信号）が入力されたとき、カウント値更新信号出力回路１２５から出力されるカウント値更新信号Ｓ３を選択してカウンタ１２１に出力する。一方、セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式に対応する乱数更新方式選択信号（第２の乱数更新方式選択信号）が入力されたとき、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１を選択してカウンタ１２１に出力する。なお、セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第１の更新方式選択信号が入力されたとき、カウント値更新信号出力回路１２５から出力されるカウント値更新信号Ｓ３に応答して、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１に同期した数値データの更新を指示する数値更新指示信号を、カウンタ１２１に出力してもよい。
【００９３】
乱数回路起動信号出力回路１３０は、乱数回路１０３の起動を要求する乱数回路起動データ「８０ｈ」を格納する乱数回路起動レジスタ（ＲＳＴ）１４１を備える。乱数回路起動信号出力回路１３０は、乱数回路起動レジスタ１４１に乱数回路起動データ「８０ｈ」が書き込まれたことに応答して、所定の乱数回路起動信号を出力し、カウンタ１２１とクロック信号出力回路１２４とをオンして、カウンタ１２１によるカウント値の更新動作とクロック信号出力回路１２４による内部クロック信号の出力動作とを開始させることにより、乱数回路１０３を起動させる。
【００９４】
図１５は、乱数回路起動レジスタ１４１の構成例を示すブロック図である。図１５に示すように、乱数回路起動レジスタ１４１は、８ビットレジスタであり、その初期値は、「００ｈ」に設定されている。乱数回路起動レジスタ１４１は、ビット７のみが読出可能及び読出可能に構成され、ビット０〜ビット６に値を書き込んでも、その値は無効であり、ビット０〜ビット６から読み出した値は全て「０（＝００００ｂ）」となる。
【００９５】
図４に示す乱数値記憶回路１３１は、例えば８ビットレジスタであり、後述するステップＳ１４２の入賞処理において抽出されるランダムＲの値を格納する。乱数値記憶回路１３１は、ラッチ信号生成回路１３３から出力されるラッチ信号ＳＬに応答して、カウンタ１２１から比較器１２２を介して出力されるカウント値ＣをランダムＲの値として格納することにより、ランダムＲの値を更新する。
【００９６】
図１６は、乱数値記憶回路１３１の一構成例を示す回路図である。乱数値記憶回路１３１は、図１６に示すように、２個のＡＮＤ回路２０１，２０３と、２個のＮＯＴ回路２０２，２０４と、８個のフリップフロップ回路２１１〜２１８と、８個のＯＲ回路２２１〜２２８と、から構成されている。
【００９７】
ＡＮＤ回路２０１の入力端子は、ラッチ信号生成回路１３３の出力端子とＮＯＴ回路２０４の出力端子とに接続され、出力端子は、ＮＯＴ回路２０２の入力端子とフリップフロップ回路２１１〜２１８のクロック端子Ｃｌｋ１〜Ｃｌｋ８とに接続されている。ＮＯＴ回路２０２の入力端子は、ＡＮＤ回路２０１の出力端子に接続され、出力端子は、ＡＮＤ回路２０３の一方の入力端子に接続されている。
【００９８】
ＡＮＤ回路２０３の入力端子は、ＮＯＴ回路２０２の出力端子と遊技制御用マイクロプロセッサ１００に内蔵されたＣＰＵ１０６とに接続され、出力端子は、ＮＯＴ回路２０４の入力端子に接続されている。ＮＯＴ回路２０４の入力端子は、ＡＮＤ回路２０３の出力端子に接続され、出力端子は、ＡＮＤ回路２０１の一方の入力端子とＯＲ回路２２１〜２２８の各々の一方の入力端子とに接続されている。
【００９９】
フリップフロップ回路２１１〜２１８の入力端子Ｄ１〜Ｄ８は、比較器１２２の出力端子に接続されている。フリップフロップ回路２１１〜２１８のクロック端子Ｃｌｋ１〜Ｃｌｋ８は、ＡＮＤ回路２０１の出力端子に接続され、出力端子Ｑ１〜Ｑ８は、ＯＲ回路２２１〜２２８の各々の他方の入力端子に接続されている。
【０１００】
ＯＲ回路２２１〜２２８の入力端子は、ＮＯＴ回路２０４の出力端子とフリップフロップ回路２１１〜２１８の出力端子とに接続され、出力端子は、遊技制御用マイクロプロセッサ１００に内蔵されたＣＰＵ１０６に接続されている。
【０１０１】
上記構成を備える乱数値記憶回路１３１の動作を図１７に示すタイミングチャートを参照して説明する。
【０１０２】
遊技制御用マイクロプロセッサ１００に内蔵されたＣＰＵ１０６から出力制御信号ＳＣ（ハイレベルの信号）が入力されていない場合に（ＡＮＤ回路２０３の一方の入力がローレベルの場合に）、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力されると（図１７に示す例では、タイミングＴ１，Ｔ２，Ｔ７のとき）、ＡＮＤ回路２０１の入力は、共にハイレベルとなり、その出力端子から出力される信号ＳＲは、ハイレベルとなる。そして、ＡＮＤ回路２０１から出力された信号ＳＲは、フリップフロップ回路２１１〜２１８のクロック端子Ｃｌｋ１〜Ｃｌｋ８に入力される。
【０１０３】
フリップフロップ回路２１１〜２１８は、クロック端子Ｃｌｋ１〜Ｃｌｋ８から入力される信号ＳＲの立ち上がりエッヂに応答して、比較器１２２から入力端子Ｄ１〜Ｄ８を介して入力されるカウント値ＣのビットデータＣ１〜Ｃ８を乱数値のビットデータＲ１〜Ｒ８としてラッチして記憶し、記憶したランダムＲのビットデータＲ１〜Ｒ８を出力端子Ｑ１〜Ｑ８から出力する。
【０１０４】
出力制御信号ＳＣが入力されていない場合（図１７に示す例では、タイミングＴ３までの期間、タイミングＴ６以降の期間）、ＡＮＤ回路２０３の一方の入力がローレベルとなるため、その出力端子から出力される信号ＳＧは、ローレベルとなる。信号ＳＧは、ＮＯＴ回路２０４において反転され、ＯＲ回路２２１〜２２８の一方の入力端子には、ハイレベルの信号が入力される。
【０１０５】
このようにＯＲ回路２２１〜２２８の一方の入力がハイレベルとなるため、他方の入力端子に入力される信号がハイレベルであるかローレベルであるかに関わらず、即ち、入力されるランダムＲのビットデータＲ１〜Ｒ８の値が「０」であるか「１」であるかに関わらず、ＯＲ回路２２１〜２２８から出力される信号ＳＯ１〜ＳＯ８は、全てハイレベル（「１」）となる。これにより、乱数値記憶回路１３１から出力される値は、常に「２５５（＝１１１１１１１１ｂ）」となるため、乱数値記憶回路１３１からランダムＲを読み出すことはできなくなる。即ち、出力制御信号ＳＣが入力されていない場合、乱数値記憶回路１３１は、読出不能（ディセイブル）状態となる。
【０１０６】
そして、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力されていないときに、ＣＰＵ１０６から出力制御信号ＳＣが入力されると（図１７に示す例では、タイミングＴ４からタイミングＴ６までの期間）、ＡＮＤ回路２０３の入力が共にハイレベルとなるため、その出力端子から出力される信号ＳＧは、ハイレベルとなる。信号ＳＧは、ＮＯＴ回路２０４において反転され、ＯＲ回路２２１〜２２８の一方の入力端子には、ローレベルの信号が入力される。
【０１０７】
このようにＯＲ回路２２１〜２２８の一方の入力がローレベルとなるため、他方の入力端子に入力される信号がハイレベルのときは、その出力端子からハイレベルの信号が出力され、ローレベルのときは、ローレベルの信号が出力される。即ち、ＯＲ回路２２１〜２２８の他方の入力端子に入力されるランダムＲのビットデータＲ１〜Ｒ８の値は、ＯＲ回路２２１〜２２８の出力端子からそのまま（ビットデータＲ１〜Ｒ８の値が「１」のときは「１」が、「０」のときは「０」）出力される。これにより、乱数値記憶回路１３１からのランダムＲの読出が可能となる。即ち、出力制御信号ＳＣが入力されている場合、乱数値記憶回路１３１は、読出可能（イネイブル）状態となる。
【０１０８】
但し、ＣＰＵ１０６から出力制御信号ＳＣが入力される前に、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力されている場合、ＡＮＤ回路２０３の一方の入力がローレベルとなるため、その後、ラッチ信号ＳＬが入力されている状態のままで、出力制御信号ＳＣが入力されても（図１７に示す例では、タイミングＴ３からタイミングＴ４の期間）、その出力端子から出力される信号ＳＧは、ローレベルのままとなる。そして、信号ＳＧは、ＮＯＴ回路２０４において反転され、ＯＲ回路２２１〜２２８の一方の入力端子には、ハイレベルの信号が入力される。
【０１０９】
このようにＯＲ回路２２１〜２２８の一方の入力がハイレベルとなるため、他方の入力端子に入力される信号がハイレベルであるかローレベルであるかに関わらず、ＯＲ回路２２１〜２２８から出力される信号ＳＯ１〜ＳＯ８は、全てハイレベルとなり、出力制御信号ＳＣが入力されているにも関わらず、乱数値記憶回路１３１からランダムＲを読み出すことができない状態のままとなる。即ち、ラッチ信号ＳＬが入力されているとき、乱数値記憶回路１３１は、出力制御信号ＳＣに対して受信不能状態となる。
【０１１０】
また、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力される前に、ＣＰＵ１０６から出力制御信号ＳＣが入力されている場合、ＡＮＤ回路２０１の一方の入力がローレベルとなるため、その後、出力制御信号ＳＣが入力されているままの状態で、ラッチ信号ＳＬが入力されても（図１７に示す例では、タイミングＴ５）、その出力端子から出力される信号ＳＲは、ローレベルのままとなる。このため、フリップフロップ回路２１１〜２１８のクロック端子Ｃｌｋ１〜Ｃｌｋ８に入力される信号ＳＲは、ローレベルからハイレベルに立ち上がらず、フリップフロップ回路２１１〜２１８に格納されているランダムＲのビットデータＲ１〜Ｒ８は、ラッチ信号ＳＬが入力されているにも関わらず、更新されない。即ち、出力制御信号ＳＣが入力されているとき、乱数値記憶回路１３１は、ラッチ信号ＳＬに対して受信不能状態となる。
【０１１１】
図４に示す反転回路１３２は、クロック信号出力回路１２４から入力された乱数発生用クロック信号Ｓ１における信号レベルを反転させることにより、反転クロック信号Ｓ２を生成する。反転回路１３２は、生成した反転クロック信号Ｓ２をラッチ信号生成回路１３３に出力する。
【０１１２】
ラッチ信号生成回路１３３は、セレクタ及びフリップフロップ回路等を用いて構成され、乱数値読取信号出力回路１２６からの乱数値読取信号と反転回路１３２からの反転クロック信号Ｓ２とを入力し、乱数更新方式選択信号出力回路１２７からの乱数更新方式選択信号によって指定された乱数値更新方式に応じて、ラッチ信号ＳＬを出力する。すなわち、ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第１の乱数更新方式選択信号が入力されたとき、反転回路１３２から出力される反転クロック信号Ｓ２を選択し、ラッチ信号ＳＬとして乱数値記憶回路１３１に出力する。一方、ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されたとき、乱数値読取信号出力回路１２６から出力される乱数値読取信号を、反転回路１３２から出力される反転クロック信号Ｓ２の立ち上がりエッヂに同期させて、ラッチ信号ＳＬとして乱数値記憶回路１３１に出力する。
【０１１３】
タイマ回路１３４は、始動入賞口スイッチ７０から始動入賞信号ＳＳが入力されている時間を計測し、計測した時間が所定の時間（例えば３ミリ秒）になったとき、乱数値読取信号出力回路１２６の乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」を書き込む。例えば、タイマ回路１３４は、ハイレベルの信号が入力されたことに応答して起動するアップカウンタ又はダウンカウンタによって構成され、入力がハイレベルとなっている間、クロック回路１０１から順次入力される基準クロック信号ＣＬＫをアップカウント又はダウンカウントする。そして、アップカウント又はダウンカウントしたカウント値が３ミリ秒に対応する値となったとき、入力された信号が始動入賞信号ＳＳであると判断して、始動入賞信号ＳＳに対応した乱数値取込データ「０１ｈ」を乱数値取込レジスタ１３９に書き込む。
【０１１４】
図１８は、図３に示す遊技制御用マイクロプロセッサ１００におけるアドレスマップの一例を示す図である。図１８に示すように、００００ｈ番地〜１ＦＦＦｈ番地の領域は、ＲＯＭ１０４に割り当てられ、７Ｅ００ｈ番地〜７ＦＦＦｈ番地の領域は、ＲＡＭ１０５に割り当てられ、ＦＤ００ｈ番地〜ＦＥ００ｈ番地の領域は、乱数最大値設定レジスタ１３５等の内蔵レジスタに割り当てられている。
【０１１５】
ＲＯＭ１０４における００００ｈ番地〜１Ｆ７Ｆｈ番地の領域のユーザプログラムエリアには、ユーザにより予め作成されたプログラム（ユーザプログラム）１５０が記憶され、１Ｆ８０ｈ番地〜１ＦＦＦｈ番地の領域のユーザプログラム管理エリアには、ＣＰＵ１０６がユーザプログラム１５０を実行するために必要となるデータ（ユーザプログラム実行データ）が記憶されている。また、ＲＡＭ１０５における７Ｅ００ｈ番地〜７ＥＦＦｈ番地の領域は、使用されておらず、７ＥＦＦｈ番地〜７ＦＦＦｈ番地は、ワークエリアとして使用されている。
【０１１６】
図１９は、図１８に示すユーザプログラム管理エリアにおけるアドレスマップの一例を示す図である。図１９に示すように、１Ｆ９７ｈ番地の領域には、初期値を変更させる方式である第１，第２及び第３の初期値変更方式のうちからユーザが選択した初期値変更方式を指定する初期値変更方式設定データが記憶されている。１Ｆ９８ｈ番地の領域には、ＲＡＭ１０５に割り当てられた７ＥＦＦｈ番地〜７ＦＦＦｈ番地のうちから、ユーザにより予め指定されたＲＡＭ１０５における番地（指定ＲＡＭ番地）を特定するＲＡＭ番地データが下位の値として記憶されている。１Ｆ９９ｈ番地の領域には、指定ＲＡＭ番地の次の番地のＲＡＭ番地データが上位の値として記憶されている。
【０１１７】
図２０は、ユーザにより選択される初期値変更方式設定データの一例の説明図である。図２０に示すように、初期値変更データは、８ビットのデータから構成され、「００ｈ」は、初期値を変更しないことを指定するデータであり、「０１ｈ」は、第１の初期値変更方式を指定するデータである。また、「０２ｈ」は、第２の初期値変更方式を指定するデータであり、「０３ｈ」は、第３の初期値変更方式を指定するデータである。
【０１１８】
図２１は、ユーザプログラム１５０の構成例を示す図である。この実施の形態において、ユーザプログラム１５０は、図２１に示すように、複数種類のプログラムモジュールから構成される乱数回路設定プログラム１５１と、表示結果決定プログラム１５２と、初期値変更プログラム１５３と、カウント値順列変更プログラム１５４と、を含んで構成されている。
【０１１９】
乱数回路設定プログラム１５１は、乱数回路１０３にランダムＲの値を更新するための設定を行う乱数回路設定処理を実行するためのプログラムであり、ＣＰＵ１０６は、この乱数回路設定プログラム１５１を実行することにより、乱数回路設定手段として機能する。
【０１２０】
図２２は、乱数回路設定プログラム１５１の構成例を示す図である。図２２に示すように、乱数回路設定プログラム１５１は、前述した複数種類のプログラムモジュールとして、乱数最大値設定モジュール１５１ａと、乱数更新方式選択モジュール１５１ｂと、周期設定モジュール１５１ｃと、乱数回路起動モジュール１５１ｄと、を含んで構成されている。
【０１２１】
乱数最大値設定モジュール１５１ａは、ユーザにより予め設定されたランダムＲの最大値を乱数回路１０３に設定するためのプログラムモジュールである。ＣＰＵ１０６は、この乱数最大値設定モジュール１５１ａを実行して、ユーザにより予め設定されたランダムＲの最大値を指定する乱数最大値設定データを書き込むことにより、この予め設定されたランダムＲの最大値を乱数回路１０３に設定する。例えば、ユーザにより予め設定されたランダムＲの最大値が「２５５」の場合、ＣＰＵ１０６は、乱数最大値設定レジスタ１３５に乱数最大値設定データ「００ＦＦｈ」を書き込んで、ランダムＲの最大値「２５５」を乱数回路１０３に設定する。
【０１２２】
乱数更新方式選択モジュール１５１ｂは、ユーザが第１及び第２の乱数更新方式のうちから選択した乱数更新方式を乱数回路１０３に設定するためのプログラムモジュールである。ＣＰＵ１０６は、この乱数更新方式選択モジュール１５１ｂを実行して、ユーザが選択した乱数更新方式を指定する乱数更新方式選択データ「０１ｂ」又は「１０ｂ」を乱数更新方式選択レジスタ１４０に書き込むことにより、この選択した乱数更新方式を乱数回路１０３に設定する。これにより、遊技制御用マイクロプロセッサ１００は、乱数回路１０３に設定する乱数更新方式を第１及び前記第２の乱数更新方式のうちから選択する機能を発揮することができる。
【０１２３】
周期設定モジュール１５１ｃは、ユーザにより予め設定された内部クロック信号の周期を乱数回路１０３に設定するためのプログラムモジュールである。ＣＰＵ１０６は、この周期設定モジュール１５１ｃを実行して、ユーザにより予め設定された内部クロック信号の周期を指定する周期設定データを周期設定レジスタ１３７に書き込むことにより、この予め設定された内部クロック信号の周期を乱数回路１０３に設定する。例えば、ユーザにより予め設定された内部クロック信号の周期が「システムクロック信号の周期×１２８×１６」の場合、ＣＰＵ１０６は、周期設定レジスタ１３７に周期設定データ「０Ｆｈ」を書き込んで、内部クロック信号の周期「システムクロック信号の周期×１２８×１６」を乱数回路１０３に設定する。
【０１２４】
乱数回路起動モジュール１５１ｄは、乱数回路１０３を起動させるためのプログラムモジュールである。ＣＰＵ１０６は、この乱数回路起動モジュール１５１ｄを実行して、乱数回路起動データ「８０ｈ」を乱数回路起動レジスタ１４１に書き込むことにより、乱数回路１０３を起動させる。
【０１２５】
乱数値更新プログラム１５５は、第１の乱数更新方式が選択されているときに、乱数値記憶回路１３１に格納されているランダムＲの値を更新するためのプログラムである。ＣＰＵ１０６は、この乱数値更新プログラム１５５を実行することにより、乱数値更新手段として機能する。ＣＰＵ１０６は、この乱数値更新プログラム１５５を実行して、カウント値更新データ「０１ｈ」をカウント値更新レジスタ１３８に書き込むことにより、乱数値記憶回路１３１に格納さているランダムＲの値を更新させる。
【０１２６】
表示結果決定プログラム１５２は、特図ゲームにおける表示結果を大当りとするか否かを決定するためのプログラムであり、ＣＰＵ１０６は、この表示結果決定プログラム１５２を実行することにより、表示結果決定手段として機能する。
【０１２７】
ＣＰＵ１０６は、遊技球が普通可変入賞球装置６に入賞して特別図柄の可変表示（特図ゲーム）を実行するための条件（実行条件）が成立したことに応じて、この表示結果決定プログラム１５２を実行することにより、乱数値記憶回路１３１からこの更新させたランダムＲの値を読み出して、可変表示装置４による特図ゲームの表示結果を大当りとするか否かを決定する。
【０１２８】
図２３は、第１の乱数更新方式が選択されているときのＣＰＵ１０６によるランダムＲの値の更新動作及び読出動作の説明図である。図２３に示すように、第１の乱数更新方式が選択されているとき、ＣＰＵ１０６は、カウント値更新データ「０１ｈ」をカウント値更新レジスタ１３８に書き込むことにより、乱数値記憶回路１３１に記憶されたランダムＲの値（例えば「２」）を更新させる。そして、ＣＰＵ１０６は、遊技球が普通可変入賞球装置６に入賞して特別図柄の可変表示（特図ゲーム）を実行するための条件（実行条件）が成立したことに応じて、乱数値記憶回路１３１からランダムＲの値（例えば「２」）を読み出す。乱数値記憶回路１３１に記憶されているランダムＲの値をさらに更新させる場合は、前回のランダムＲの値を更新したときからクロック回路１０１により出力されるシステムクロック信号の周期以上の間隔をあけて、カウント値更新レジスタ１３８にカウント値更新データ「０１ｈ」を書き込まなければならない。これは、更新させたランダムＲの値を乱数値記憶回路１３１から読み出す時間を確保するためである。
【０１２９】
図２４は、第２の乱数更新方式が選択されているときのＣＰＵ１０６によるランダムＲの値の更新動作及び読出動作の説明図である。図２４に示すように、第２の乱数更新方式が選択されているとき、ＣＰＵ１０６は、乱数値取込コマンド「０１ｈ」を乱数値取込レジスタ１３９に書き込むことにより、カウンタ１２１から出力されるカウント値（例えば「２」）を乱数値記憶回路１３１に取り込ませて、乱数値記憶回路１３１に記憶されているランダムＲの値を更新させる。そして、乱数値記憶回路１３１からこの更新させたランダムＲの値（例えば「２」）を読み出す。
【０１３０】
なお、ＣＰＵ１０６が乱数値取込コマンド「０１ｈ」を乱数値取込レジスタ１３９に書き込まなければ、カウンタ１２１から出力されるカウント値が更新されていても、乱数値記憶回路１３１に記憶されている乱数値は更新されない。例えば、ＣＰＵ１０６が乱数値取込コマンド「０１ｈ」を乱数値取込レジスタ１３９に書き込み、カウンタ１２１から出力されるカウント値「３」を乱数値記憶回路１３１に取り込ませて、乱数値記憶回路１３１に記憶されているランダムＲの値「３」を更新させた場合、その後、ＣＰＵ１０６が乱数値取込コマンド「０１ｈ」を乱数値取込レジスタ１３９に書き込まなければ、カウンタ１２１から出力されるカウント値が「３」から「４」や「５」に更新されていても、乱数値記憶回路１３１に記憶されている乱数値は更新されず、乱数値記憶回路１３１から読み出される乱数値は「３」のままとなる。
【０１３１】
図２１に示す初期値変更プログラム１５３は、カウンタ１２１により更新されるカウント値の初期値を変更させるためのプログラムであり、ＣＰＵ１０６は、この初期値変更プログラム１５３を実行することにより、初期値変更手段として機能する。ＣＰＵ１０６は、この初期値変更プログラム１５３を実行して、第１，第２及び第３の初期値変更方式のうちからユーザが選択した初期値変更方式により、カウンタ１２１により更新されるカウント値の初期値を変更させる。これにより、遊技制御用マイクロプロセッサ１００は、初期値を変更させる方式を第１，第２及び第３の初期値変更方式のうちから選択する機能を発揮することができる。
【０１３２】
より詳細に説明すれば、図１９に示すユーザプログラム管理エリアの１Ｆ９７ｈ番地の領域に第１の初期値変更方式を指定する初期値変更方式設定データ「０１ｈ」が記憶されている場合、ＣＰＵ１０６は、初期値を遊技制御用マイクロプロセッサ１００固有のＩＤ（Identification）ナンバに基づいて設定された値に変更させる。
【０１３３】
また、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に第２の初期値変更方式を指定する初期値変更方式設定データ「０２ｈ」が記憶されている場合、ＣＰＵ１０６は、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に記憶されている番地データから指定ＲＡＭ番地を特定し、特定した指定ＲＡＭ番地の領域に格納されている値を読み出し、初期値を読み出した値に変更させる。
【０１３４】
ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に第３の初期値変更方式を指定する初期値変更方式設定データ「０３ｈ」が記憶されている場合、ＣＰＵ１０６は、ＲＡＭ１０５の各番地に格納されている値を読み出し、この読み出した値を加算する。そして、ＣＰＵ１０６は、初期値をこの加算値に変更させる。
【０１３５】
カウント値順列変更プログラム１５４は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」を書き込んで、乱数値記憶回路１３１に記憶されているカウント値の順列を変更するカウント値順列変更処理を実行するためのプログラムであり、ＣＰＵ１０６は、このカウント値順列変更プログラム１５４を実行することにより、数値データ順列変更手段として機能する。ＣＰＵ１０６は、このカウント値順列変更プログラム１５４を実行して、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」を書き込むことにより、カウント値順列変更回路１２３から出力され、乱数値記憶回路１３１に入力されるカウント値の順列を変更させる。
【０１３６】
また、図３に示す遊技制御用マイクロプロセッサ１００は、図２５に示すように、特図保留メモリ１７０と、大当り判定用テーブルメモリ１７１と、フラグメモリ１７２と、始動入賞口スイッチタイマメモリ１７３と、を備えている。
【０１３７】
特図保留メモリ１７０は、遊技球が普通可変入賞球装置６に入賞して特別図柄の可変表示（特図ゲーム）を実行するための条件（実行条件）が成立したが、従前の可変表示を実行中である等の理由のために可変表示を実際に開始するための条件（開始条件）が成立していない保留状態を記憶するためのメモリである。特図保留メモリ１７０は、４つのエントリを備え、各エントリには、普通可変入賞球装置６への入賞順に、保留番号と、その入賞に応じて乱数値記憶回路１３１から読み出したランダムＲの値とが対応付けて格納される。主基板１１から表示制御基板１２へ可変表示装置４における特別図柄の可変表示の終了を指示する特別図柄確定コマンドが送出されて特別図柄の可変表示が１回終了したり、大当り遊技状態が終了したりするごとに、最上位の情報に基づいた可変表示の開始条件が成立し、最上位の情報に基づいた可変表示が実行される。このとき、第２位以下の登録情報が１位ずつ繰り上がる。また、特別図柄の可変表示中等に遊技球が普通可変入賞球装置６に新たに入賞した場合には、その入賞に基づいて乱数値記憶回路１３１から読み出されたランダムＲの値が最上位の空エントリに登録される。
【０１３８】
図２５に示す大当り判定用テーブルメモリ１７１は、ＣＰＵ１０６が特図ゲームにおける表示結果を大当りとするか否かを判定するために設定される複数の大当り判定テーブルを記憶する。具体的には、大当り判定用テーブルメモリ１７１は、図２６（Ａ）に示す通常時大当り判定テーブル１７１ａ、図２６（Ｂ）に示す確変時大当り判定テーブル１７１ｂを格納する。
【０１３９】
図２５に示すフラグメモリ１７２は、パチンコ遊技機１において遊技の進行を制御するために用いられる各種のフラグが設定される。例えば、フラグメモリ１７２には、特別図柄プロセスフラグ、普通図柄プロセスフラグ、大当り状態フラグ、入力状態フラグ、タイマ割込フラグ、初期値変更フラグなどが設けられている。
【０１４０】
特別図柄プロセスフラグは、後述する特別図柄プロセス処理（図３２）において、どの処理を選択・実行すべきかを指示する。普通図柄プロセスフラグは、普通図柄表示器４０の表示状態を所定の順序で制御するために、所定の普通図柄プロセス処理においてどの処理を選択・実行すべきかを指示する。大当り状態フラグは、可変表示装置４による特図ゲームの表示結果が大当りとなるときにオン状態にセットされ、大当り遊技状態が終了するときにクリアされてオフ状態となる。
【０１４１】
入力状態フラグは、Ｉ／Ｏポート１０８に入力される各種信号の状態や始動入賞口スイッチ７０等から入力される検出信号の状態等に応じて各々セットあるいはクリアさせる複数ビットからなるフラグである。タイマ割込フラグは、所定時間が経過してタイマ割込みが発生するごとにオン状態にセットされる。初期値変更フラグは、乱数回路１０３から通知信号が出力されたことに応答してオン状態にセットされ、初期値が変更されたときにクリアされてオフ状態となる。
【０１４２】
始動入賞口スイッチタイマメモリ１７３は、始動入賞口スイッチ７０から入力される始動入賞信号ＳＳに応じ加算あるいはクリアされるタイマ値を記憶するためのものである。
【０１４３】
図３に示すスイッチ回路１０９は、始動入賞口スイッチ７０等の各入賞口スイッチからの検出信号を取り込んで、遊技制御用マイクロプロセッサ１００に伝達する。ソレノイド回路１１０は、遊技制御用マイクロプロセッサ１００からの指令に従って各ソレノイド２１、２２を駆動する。ソレノイド２１は、リンク機構を介して普通可変入賞球装置６の可動翼片に連結されている。ソレノイド２２は、リンク機構を介して特別可変入賞球装置７の開閉板に連結されている。
【０１４４】
始動入賞口スイッチ７０は、始動入賞口である普通可変入賞球装置６への遊技球の入賞等を検出したことに基づいて、始動入賞信号（ハイレベルの信号）ＳＳを、スイッチ回路１０９を介して乱数回路１０３とＣＰＵ１０６とに出力する。
【０１４５】
表示制御基板１２は、主基板１１から受信した制御コマンドに従って演出制御を行うためのものである。具体的には、表示制御基板１２は、可変表示装置４の表示制御や、遊技効果ランプ９及び普通図柄表示器４０の点灯制御を行う。
【０１４６】
音声制御基板１３、ランプ制御基板１４は、主基板１１から送信される制御コマンドに基づいて、音声出力制御、ランプ出力制御を、それぞれ主基板１１とは独立して実行するサブ側の制御基板である。払出制御基板１５は、遊技球の貸出や賞球等の払出制御を行うものである。情報端子基板１６は、各種の遊技関連情報を外部に出力するためのものである。
【０１４７】
次に、本実施例におけるパチンコ遊技機１の動作（作用）を説明する。図２７は、主基板１１に搭載された遊技制御用マイクロプロセッサ１００が実行する遊技制御メイン処理を示すフローチャートである。主基板１１では、電源基板１０からの電力が供給されると、遊技制御用マイクロプロセッサ１００が起動し、ＣＰＵ１０６が、まず、図２７のフローチャートに示す遊技制御メイン処理を実行する。遊技制御メイン処理を開始すると、まず、ＣＰＵ１０６は、割込禁止に設定し（ステップＳ１）、続いて、割込モードをモード２に設定する（ステップＳ２）。
【０１４８】
この後、ＣＰＵ１０６は、スタックポインタにスタックポインタ指定アドレスを設定する（ステップＳ３）。そして、遊技制御用マイクロプロセッサ１００の内蔵デバイスであるＣＴＣ１０７などのレジスタ設定を行う（ステップＳ４）。例えば、ＣＴＣ１０７に対して、割込ベクタを設定する。
【０１４９】
ステップＳ４に続いて、ＣＰＵ１０６は、例えばＲＡＭ１０５に設けられたバックアップフラグ領域をチェックするなどして（ステップＳ５）、前回の電源断時にＲＡＭ１０５の全部又は一部について所定のデータ保護処理によるバックアップがなされたか否かを判別する（ステップＳ６）。パチンコ遊技機１では、不測の電源断が生じたときに、ＲＡＭ１０５に記憶されたデータの全部又は一部を保護するためのデータ保護処理が行われる。このようなデータ保護処理が行われていた場合には、バックアップありと判別される。
【０１５０】
ステップＳ６にてバックアップありと判別したとき（ステップＳ６；Ｙｅｓ）、ＣＰＵ１０６は、バックアップデータのチェックとしてパリティチェックを行い、チェック結果が正常であるか否かを判別する（ステップＳ７）。チェック結果が正常であれば（ステップＳ７；Ｙｅｓ）、主基板１１の内部状態とサブ側の各制御基板（表示制御基板１２、音声制御基板１３、ランプ制御基板１４、及び払出制御基板１５）の制御状態を電源断時の状態に戻すための遊技状態復旧処理を実行する（ステップＳ８）。その後、ステップＳ１０に進む。
【０１５１】
ステップＳ６にてバックアップなしと判別したときや（ステップＳ６；Ｎｏ）、ステップＳ７にてチェック結果が正常ではなかったとき（ステップＳ７；Ｎｏ）、ＣＰＵ１０６は、ＲＡＭ１０５のクリアや、所定の作業領域に対する初期設定などの初期化処理を行う（ステップＳ９）。
【０１５２】
続いて、ＣＰＵ１０６は、乱数回路設定プログラム１５１を実行して、乱数回路設定処理を行う（ステップＳ１０）。この乱数回路設定処理では、乱数回路１０３にランダムＲの値を更新させるための設定が行われる。
【０１５３】
図２８は、ステップＳ１０の乱数回路設定処理を示すフローチャートである。この乱数回路設定処理において、ＣＰＵ１０６は、まず、乱数回路設定プログラム１５１に含まれる乱数最大値設定モジュール１５１ａを実行して、ユーザにより予め設定された乱数最大値を指定する乱数最大値設定データを乱数最大値設定レジスタ１３５に書き込むことにより、この予め設定されたランダムＲの最大値を乱数回路１０３に設定する（ステップＳ２１）。
【０１５４】
次に、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数更新方式選択モジュール１５１ｂを実行して、乱数更新方式選択データ「１０ｂ」を乱数更新方式選択レジスタ１４０に書き込むことにより、第２の乱数更新方式を乱数回路１０３に設定する（ステップＳ２２）。
【０１５５】
続いて、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる周期設定モジュール１５１ｃを実行して、ユーザにより予め設定された乱数発生用クロック信号Ｓ１の周期を指定する周期設定データを周期設定レジスタ１３７に書き込むことにより、この予め設定された乱数発生用クロック信号Ｓ１の周期を乱数回路１０３に設定する（ステップＳ２３）。
【０１５６】
この後、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数回路起動モジュール１５１ｄを実行して、乱数回路起動データ「８０ｈ」を乱数回路起動レジスタ１４１に書き込むことにより、乱数回路１０３を起動させる（ステップＳ２４）。
【０１５７】
こうして図２８に示すような乱数回路設定処理が実行されることにより、乱数回路１０３は、例えば図２９に示すようなタイミングチャートに従って動作する。
【０１５８】
図２９に示す動作例において、クロック回路１０１から乱数回路１０３へは、タイミングＴ１１，Ｔ２１，…においてローレベルからハイレベルに立ち上がる、図２９（Ａ）に示す基準クロック信号ＣＬＫが供給されるものとする。
【０１５９】
クロック信号出力回路１２４は、クロック回路１０１から供給された基準クロック信号ＣＬＫを分周して、例えばタイミングＴ１１，Ｔ１２，…においてローレベルからハイレベルに立ち上がり、タイミングＴ２１，Ｔ２２，…においてハイレベルからローレベルに立ち下がる、図２９（Ｂ）に示す乱数発生用クロック信号Ｓ１を生成する。なお、図２９に示す動作例では、説明のために、クロック信号出力回路１２４が基準クロック信号ＣＬＫを２分周して乱数発生用クロック信号Ｓ１を生成する場合を示している。しかしながら、実際には、周期設定レジスタ１３７に設定可能な周期は、「システムクロック信号の周期×１２８×７」から「システムクロック信号の周期×１２８×２５６」までとなっており、この範囲で周期設定レジスタ１３７に設定される周期設定データ「０７ｈ」〜「ＦＦｈ」に対応した分周比で、基準クロック信号ＣＬＫを分周することにより乱数発生用クロック信号Ｓ１が生成されることになる。クロック信号出力回路１２４によって生成された乱数発生用クロック信号Ｓ１は、セレクタ１２８と反転回路１３２とに出力される。
【０１６０】
セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、クロック信号出力回路１２４から出力された乱数発生用クロック信号Ｓ１を選択してカウンタ１２１に出力する。カウンタ１２１は、セレクタ１２８から供給される乱数発生用クロック信号Ｓ１の立ち上がりエッヂが入力される毎に、カウント値Ｃを更新してカウント値順列変更回路１２３に出力する。
【０１６１】
反転回路１３２は、クロック信号出力回路１２４から出力された乱数発生用クロック信号Ｓ１の信号レベルを反転させることにより、例えばタイミングＴ１１，Ｔ１２，…においてハイレベルからローレベルに立ち下がり、タイミングＴ２１，Ｔ２２，…においてローレベルからハイレベルに立ち上がる、図２９（Ｃ）に示す反転クロック信号Ｓ２を生成する。反転回路１３２によって生成された反転クロック信号Ｓ２は、ラッチ信号生成回路１３３に出力される。
【０１６２】
ラッチ信号生成回路１３３では、図２９（Ｄ）に示す始動入賞信号ＳＳがタイマ回路１３４に入力されてからの経過時間が所定時間（例えば３ミリ秒）に達したときに、乱数値読取信号出力回路１２６からの乱数値読取信号がローレベルからハイレベルに立ち上がる。ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、乱数値読取信号出力回路１２６から入力される乱数値読取信号を、反転回路１３２から供給される反転クロック信号Ｓ２の立ち上がりエッヂに同期させ、図２９（Ｅ）に示すラッチ信号ＳＬを出力する。
【０１６３】
これにより、乱数回路１０３は、タイミングＴ１１，Ｔ１２，Ｔ１３…において、カウント値Ｃを更新し、タイミングＴ１１，Ｔ１２，Ｔ１３とは異なるタイミングＴ２２において、ラッチ信号ＳＬを出力することができる。
【０１６４】
図２７に示す遊技制御メイン処理では、ステップＳ１０の乱数回路設定処理に続いて、ＣＰＵ１０６がＣＴＣ１０７によるタイマ割込みのための設定を行う（ステップＳ１１）。具体的には、ＣＴＣ１０７に対して、ＣＴＣ１０７が備える複数のチャネルのうちの１つ（具体的には、第０チャネルから第３チャネルのうちの第３チャネル）に割込許可を与えてタイマモードで動作させるとともに、当該チャネルのカウント初期値を指定する。これにより、以後、所定時間（例えば２ミリ秒）ごとにＣＴＣ１０７から割込要求信号がＣＰＵ１０６へ送出され、ＣＰＵ１０６は定期的にタイマ割込処理を実行することができる。
【０１６５】
この後、ＣＰＵ１０６は、ＣＴＣ１０７からの割込要求信号によるタイマ割込が発生したか否かを監視するためのループ処理に移行する。このループ処理では、割込禁止に設定した後（ステップＳ１２）、表示用乱数更新処理（ステップＳ１３）が実行され、表示用乱数更新処理が完了すると、割込許可に設定する（ステップＳ１４）。
【０１６６】
図２７に示す遊技制御メイン処理を実行したＣＰＵ１０６は、ＣＴＣ１０７からの割込要求信号を受信して割込要求を受け付けると、図３０に示す遊技制御割込処理の実行を開始する。
【０１６７】
遊技制御割込処理を開始すると、ＣＰＵ１０６は、所定の電源断処理を実行することにより、電源基板１０から供給される電力が低下したときなどに所定のデータ保護処理等を実行可能とする（ステップＳ１０１）。続いて、所定のスイッチ処理を実行することにより、始動入賞口スイッチ７０等の各入賞口スイッチから入力される検出信号の状態を判定する（ステップＳ１０２）。スイッチ処理では、スイッチ回路１０９を介して始動入賞口スイッチ７０から入力される始動入賞信号ＳＳがオン状態となっているか否かを判別する。始動入賞信号ＳＳがオン状態である場合には、タイマ値を「１」加算して始動入賞口スイッチタイマメモリ１７３に格納する。一方、始動入賞信号ＳＳがオフ状態である場合には、タイマ値をクリアする。
【０１６８】
次に、ＣＰＵ１０６は、表示用乱数更新処理（ステップＳ１０３）を実行する。続いて、ＣＰＵ１０６は、初期値変更プログラム１５３を実行して、初期値変更処理を行う（ステップＳ１０４）。
【０１６９】
図３１は、ステップＳ１０４の初期値変更処理を示すフローチャートである。この初期値変更処理において、ＣＰＵ１０６は、まず、フラグメモリ１７２に設けられた初期値変更フラグをチェックすることにより、乱数回路１０３から通知信号が出力されたか否かを判別する（ステップＳ１２１）。初期値フラグがオフ状態にある場合（ステップＳ１２１；Ｎｏ）、カウンタ１２１のカウント値が最終値までカウントアップされていないと判別して初期値変更処理を終了する。一方、初期値フラグがオン状態にある場合（ステップＳ１２１；Ｙｅｓ）、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に記憶されている初期値変更方式設定データを読み出して、ユーザが選択した初期値変更方式を特定する（ステップＳ１２２，Ｓ１２３及びＳ１２４）。
【０１７０】
第１の初期値変更方式を指定する初期値変更方式設定データ「０１ｈ」が記憶されている場合（ステップＳ１２２；Ｙｅｓ）、ＣＰＵ１０６は、初期値を遊技制御用マイクロプロセッサ１００固有のＩＤ（Identification）ナンバに基づいて設定された値に変更させる（ステップＳ１２５）。
【０１７１】
第２の初期値変更方式を指定する初期値変更方式設定データ「０２ｈ」が記憶されている場合（ステップＳ１２２；Ｎｏ，ステップＳ１２３；Ｙｅｓ）、ＣＰＵ１０６は、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に記憶されているＲＡＭ番地データから指定ＲＡＭ番地を特定し、特定した指定ＲＡＭ番地の領域に格納されている値を読み出す（ステップＳ１２６）。そして、ＣＰＵ１０６は、初期値を読み出した値に変更させる（ステップＳ１２７）。
【０１７２】
第３の初期値変更方式を指定する初期値変更方式設定データ「０３ｈ」が記憶されている場合（ステップＳ１２２；Ｎｏ，ステップＳ１２３；Ｎｏ，ステップＳ１２４；Ｙｅｓ）、ＣＰＵ１０６は、ＲＡＭ１０５の各番地に格納されている値を読み出して（ステップＳ１２８）、読み出した値を加算する（ステップＳ１２９）。そして、ＣＰＵ１０６は、初期値をこの加算値に変更させる（ステップＳ１３０）。
【０１７３】
また、ステップＳ１２２，ステップＳ１２３及びステップＳ１２４にてＮｏと判別した場合、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に記憶されている初期値変更方式設定データを「００ｈ」と判別し、初期値を変更せず、そのままステップＳ１３１に進む。
【０１７４】
この後、ＣＰＵ１０６は、初期値変更フラグをクリアしてオフ状態とし（ステップＳ１３１）、初期値変更処理を終了する。
【０１７５】
こうして初期値変更処理が終了した後、ＣＰＵ１０６は、カウント値順列変更プログラム１５４を実行して、カウント値順列変更処理を行う（ステップＳ１０５）。このカウント値順列更新処理において、ＣＰＵ１０６は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」を書き込むことにより、乱数値記憶回路１３１に入力されるカウント値Ｃの順列を変更させる。
【０１７６】
続いて、ＣＰＵ１０６は、特別図柄プロセス処理を実行する（ステップＳ１０６）。特別図柄プロセス処理では、遊技状態に応じてパチンコ遊技機１を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選択されて実行される。特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【０１７７】
また、ＣＰＵ１０６は、普通図柄プロセス処理を実行する（ステップＳ１０７）。普通図柄プロセス処理では、普通図柄表示器４０を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選択されて実行される。普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。さらに、特別図柄コマンド制御処理（ステップＳ１０８）と、普通図柄コマンド制御処理（ステップＳ１０９）と、を順次実行する。これにより、ＣＰＵ１０６は、主基板１１から表示制御基板１２に対して表示制御コマンドを送ることにより、可変表示装置４の表示制御や普通図柄表示器４０の点灯制御を指示する。
【０１７８】
続いて、ＣＰＵ１０６は、所定の情報出力処理を実行することにより、各種出力データをＩ／Ｏポート１０８に含まれる各出力ポートに出力する（ステップＳ１１０）。この情報出力処理では、主基板１１から情報端子基板１６に、大当り情報、始動情報、確率可変情報などをホール管理用コンピュータに対して出力する指令の送出も行われる。
【０１７９】
また、ＣＰＵ１０６は、所定の賞球処理を実行することにより、始動入賞口スイッチ７０等の各入賞口スイッチから入力された検出信号に基づく賞球数の設定などを行い、払出制御基板１５に対して払出制御コマンドを出力可能とする（ステップＳ１１１）。さらに、ＣＰＵ１０６は、所定のソレノイド出力処理を実行することにより、所定の条件が成立したときに普通可変入賞球装置６における可動翼片や特別可変入賞球装置７における開閉板の開閉駆動を行う（ステップＳ１１２）。
【０１８０】
図３２は、ステップＳ１０６にて実行される特別図柄プロセス処理を示すフローチャートである。特別図柄プロセス処理を開始すると、ＣＰＵ１０６は、まず、表示結果決定プログラム１５２を実行して、遊技球が普通可変入賞球装置６に入賞したか否かを、始動入賞口スイッチタイマメモリ１７３に記憶されているタイマ値をチェックすることにより、判別する（ステップＳ１４１）。ステップＳ１４１において、ＣＰＵ１０６は、始動入賞口スイッチタイマメモリ１７３に記憶されているタイマ値をロードし、ロードしたタイマ値を所定のスイッチオン判定値（例えば「２」）と比較する。ここで、スイッチオン判定値は、遊技制御割込処理の実行回数（例えば「２」）に対応して予め定められている。これにより、ＣＰＵ１０６は、所定回（例えば２回）の遊技制御割込処理が実行されている間（例えば４ミリ秒）、始動入賞口スイッチ７０から始動入賞信号ＳＳが継続して入力されたが否かを判別することができる。
【０１８１】
そして、この比較結果に基づいて、ＣＰＵ１０６は、タイマ値がスイッチオン判定値「２」以上であるか否かを判別する。タイマ値がスイッチオン判定値「２」以上である場合には、遊技球が入賞しているものと判別して（ステップＳ１４１；Ｙｅｓ）、入賞処理を実行する（ステップＳ１４２）と共に、タイマ値をクリアする。一方、タイマ値がスイッチオン判定値「２」未満である場合には、遊技球が入賞していないものと判別して（ステップＳ１４１；Ｎｏ）、入賞処理をスキップする。
【０１８２】
図３３は、ステップＳ１４２の入賞処理を示すフローチャートである。この入賞処理において、ＣＰＵ１０６は、まず、特図保留メモリ１７０が記憶している始動入賞記憶数が所定の最大値（例えば、「４」）であるか否かを判別する（ステップＳ１７１）。ここで、特図保留メモリ１７０において、例えば始動入賞記憶番号「４」に対応したランダムＲが記憶されている場合には、始動入賞記憶数が最大値であると判別される。
【０１８３】
始動入賞記憶数が最大値であるときには（ステップＳ１７１；Ｙｅｓ）、今回の入賞による始動検出は無効として、そのまま入賞処理が終了する。一方、始動入賞記憶数が最大値ではないときには（ステップＳ１７１；Ｎｏ）、乱数値記憶回路１３１に出力制御信号ＳＣを送出して、乱数値記憶回路１３１を読出可能（イネイブル）状態に制御する（ステップＳ１７２）。
【０１８４】
続いて、ＣＰＵ１０６は、乱数値記憶回路１３１から乱数値として記憶されているランダムＲの値を読み出し（ステップＳ１７３）、この読み出したランダムＲの値を、例えばＲＡＭ１０５に設けられた所定のバッファ領域に格納した後（ステップＳ１７４）、乱数値記憶回路１３１への出力制御信号ＳＣの送出を停止して、乱数値記憶回路１３１を読出不能（ディセイブル）状態に制御する（ステップＳ１７５）。そして、ＣＰＵ１０６は、始動入賞記憶数を「１」加算し（ステップＳ１７６）、所定のバッファ領域に格納したランダムＲの値を特図保留メモリ１７０の空エントリの先頭にセットする（ステップＳ１７７）。
【０１８５】
この後、ＣＰＵ１０６は、フラグメモリ１７２に格納されている特別図柄プロセスフラグの値に基づいて、図３２に示すステップＳ１５０〜Ｓ１５８の９個の処理のいずれかを選択する。以下に、ステップＳ１５０〜Ｓ１５８の各処理について説明する。
【０１８６】
ステップＳ１５０の特別図柄通常処理は、特別図柄プロセスフラグの値が初期値「０」のときに実行される処理である。この処理において、ＣＰＵ１０６は、特図保留メモリ１７０が記憶している保留記憶数が「０」であるか否かを判別する。ここで、特図保留メモリ１７０において、保留番号「１」に対応したランダムＲ等の各種データが記憶されていない場合には、保留記憶数が「０」であると判別される。保留記憶数が「０」であれば、表示制御基板１２を介して可変表示装置４上にデモンストレーション画面を表示するなどして、特別図柄通常処理を終了する。一方、保留記憶数が「０」ではないと判別すると、特別図柄プロセスフラグの値を大当り判定処理に対応した値である「１」に更新する。
【０１８７】
ステップＳ１５１の大当り判定処理は、特別図柄プロセスフラグの値が「１」のときに実行される処理である。この処理において、ＣＰＵ１０６は、図３４に示すように、まず、特図保留メモリ１７０から保留番号「１」に対応して格納されているランダムＲの値を読み出す（ステップＳ１８１）。この際、保留記憶数を１減算し、且つ、特図保留メモリ１７０の第２〜第４エントリ（保留番号「２」〜「４」）に格納されたランダムＲの値を１エントリずつ上位にシフトする（ステップＳ１８２）。
【０１８８】
続いて、ＣＰＵ１０６は、確率向上状態（確変中）であるか否かを判別し（ステップＳ１８３）、確変中ではなければ（ステップＳ１８３；Ｎｏ）、通常遊技状態であると判断し、特図ゲームの表示結果を大当りとするか否かを判定するためのテーブルとして、図２６（Ａ）に示すような通常時大当り判定テーブル１７１ａを設定する（ステップＳ１８４）。これに対して、確変中であれば（ステップＳ１８３；Ｙｅｓ）、図２６（Ｂ）に示すような確変時大当り判定テーブル１７１ｂを設定する（ステップＳ１８５）。
【０１８９】
ＣＰＵ１０６は、ステップＳ１８１にて読み出したランダムＲの値に基づき、ステップＳ１８４又はＳ１８５にて設定した大当り判定テーブル１７１ａ又は１７１ｂを用いて特図ゲームの表示結果を大当りとするか否かを判定する（ステップＳ１８６）。そして、大当りとすることに決定した場合には（ステップＳ１８６；Ｙｅｓ）、フラグメモリ１７２に設けられた大当り状態フラグをオン状態にセットし（ステップＳ１８７）、ハズレとすることに決定した場合には（ステップＳ１８６；Ｎｏ）、大当り状態フラグをクリアしてオフ状態とする（ステップＳ１８８）。この後、特別図柄プロセスフラグの値を確定図柄決定処理に対応した値である「２」に更新する（ステップＳ１８９）。
【０１９０】
図３２に示すステップＳ１５２の確定図柄決定処理は、特別図柄プロセスフラグの値が「２」のときに実行される処理である。この処理において、ＣＰＵ１０６は、フラグメモリ１７２に設けられた大当り状態フラグがオンとなっているか否かを判別するとともに、所定のリーチ判定用乱数を抽出した結果等に基づいて、リーチとするか否かを判別する。これらの判別結果に従って、可変表示装置４による特図ゲームにおける最終的な確定図柄が設定される。その後、特別図柄プロセスフラグの値を可変表示パターン設定処理に対応した値である「３」に更新する。
【０１９１】
ステップＳ１５３の可変表示パターン設定処理は、特別図柄プロセスフラグの値が「３」のときに実行される処理である。この処理において、ＣＰＵ１０６は、まず、フラグメモリ１７２に設けられた大当り状態フラグがオンとなっているか否かを判別するとともに、上記ステップＳ１５２の確定図柄決定処理にてリーチとすることが決定されたか否かを判別し、これらの判別結果に従って、所定の可変表示パターンテーブルを設定する。そして、所定の可変表示パターン決定用乱数を抽出した結果等に基づいて、設定した可変表示パターンテーブルのうちから、今回の特図ゲームで使用する可変表示パターンを決定する。こうして可変表示パターンを決定した後、ＣＰＵ１０６は、特別図柄プロセスフラグの値を可変表示指令処理に対応した値である「４」に更新する。
【０１９２】
ステップＳ１５４の可変表示指令処理は、特別図柄プロセスフラグの値が「４」のときに実行される処理である。この処理において、ＣＰＵ１０６は、可変表示装置４において特別図柄の全図柄が可変表示を開始するように制御する。具体的には、上述したステップＳ１５２の確定図柄決定処理にて決定した特別図柄の確定図柄に対応する制御データや、ステップＳ１５３の可変表示パターン設定処理にて決定した可変表示パターンに対応する制御データを、所定のコマンド送信テーブルに設定するなどして、可変表示開始コマンドと左・中・右の図柄指定コマンドを表示制御基板１２に対して送出可能に設定する。そして、可変表示パターンに対応する総可変表示時間を所定の可変表示時間タイマに設定し、可変表示開始コマンドが送信されるとともにカウントダウンを開始する。この後、所定の可変表示時間タイマがタイムアウトすると、特別図柄プロセスフラグの値を可変表示停止時処理に対応した値である「５」に更新する。
【０１９３】
ステップＳ１５５の可変表示停止時処理は、特別図柄プロセスフラグの値が「５」のときに実行される処理である。この処理において、ＣＰＵ１０６は、主基板１１から表示制御基板１２に対して特別図柄確定コマンドを送出するための設定を行う。具体的には、特別図柄確定コマンドに対応する制御データを、所定のコマンド送信テーブルに設定するなどして、特別図柄確定コマンドを表示制御基板１２に対して送出可能に設定する。また、パチンコ遊技機１が確率向上状態となっているときには、確率向上状態から通常遊技状態に戻すか否かを判定し、戻すと判定すると、パチンコ遊技機１における遊技状態を確率向上状態から通常遊技状態に移行させる。そして、可変表示の表示結果が大当りになるときは、特別図柄プロセスフラグの値を大入賞口開放前処理に対応した値である「６」に更新し、ハズレとなるときには、特別図柄プロセスフラグの値を「０」に更新する。
【０１９４】
ステップＳ１５６の大入賞口開放前処理は、特別図柄プロセスフラグの値が「６」のときに実行される処理である。この処理において、ＣＰＵ１０６は、大入賞口としての特別可変入賞球装置７を開放する制御を開始するための設定を行う。そして、特別可変入賞球装置７を開放する制御を開始するとともに、特別図柄プロセスフラグの値を大入賞口開放中処理に対応した値である「７」に更新する。
【０１９５】
ステップＳ１５７の大入賞口開放中処理は、特別図柄プロセスフラグの値が「７」のときに実行される処理である。この処理において、ＣＰＵ１０６は、開成された特別可変入賞球装置７への遊技球の入賞検出、賞球の払出指令、開成時間の計測、及び開成サイクルのラウンド数表示のための表示制御コマンド設定等を行う。そして、例えば、１回の大当りについて、特別可変入賞球装置７の開成回数をカウントし、開成回数が例えば１６回に達していれば、特定遊技状態（大当り遊技状態）を終了する条件が終了したとして特別図柄プロセスフラグの値を大当り終了処理に対応した値である「８」に更新する。一方、開成回数が１６回に達していなければ、特別可変入賞球装置７を一旦閉成した後、所定時間が経過するのを待って再度開成する。
【０１９６】
ステップＳ１５８の大当り終了処理は、特別図柄プロセスフラグの値が「８」のときに実行される処理である。この処理において、ＣＰＵ１０６は、表示制御基板１２に対して所定の大当り終了コマンドを送出するための設定を行うなどして、大当り遊技状態を終了させる。また、ＣＰＵ１０６は、フラグメモリ１７２に設けられた大当り状態フラグをクリアしてオフ状態とする。そして、特別図柄プロセスフラグの値を「０」に更新する。
【０１９７】
以上説明したように、この実施例においては、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、セレクタ１２８がクロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１を選択してカウンタ１２１に出力する。これにより、カウンタ１２１には、タイミングＴ１１，Ｔ１２，Ｔ１３，…において、ローレベルからハイレベルに立ち上がる乱数発生用クロック信号Ｓ１が供給される。また、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１は、反転回路１３２によって信号レベルが反転された後、反転クロック信号Ｓ２としてラッチ信号生成回路１３３に出力される。ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されていることに応答して、乱数値読取信号出力回路１２６から出力される乱数値読取信号を、反転回路１３２から入力される反転クロック信号Ｓ２に同期させ、タイミングＴ２２において、ローレベルからハイレベルに立ち上がるラッチ信号ＳＬとして乱数値記憶回路１３１に出力する。
【０１９８】
このようにして、乱数回路１０３は、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１がローレベルからハイレベルに立ち上がるタイミングＴ１１，Ｔ１２，Ｔ１３，…においてカウント値Ｃを更新し、これらのタイミングＴ１１，Ｔ１２，Ｔ１３，…とは異なるタイミングＴ２１，Ｔ２２，Ｔ２３，…においてラッチ信号ＳＬを出力することができる。そして、乱数値記憶回路１３１は、この更新されたカウント値Ｃをラッチ信号ＳＬの立ち上がりエッヂに応答して、ランダムＲとして記憶する。
【０１９９】
このため、乱数回路１０３は、カウンタ１２１によるカウント値Ｃの更新タイミングと、ラッチ信号生成回路１３３によるラッチ信号ＳＬの出力タイミング（ラッチタイミング）とを、確実に異ならせることができ、乱数値の取得を確実且つ安定的に行うことができる。
【０２００】
また、ＣＰＵ１０６は、パチンコ遊技機１に電力が供給され、遊技制御メイン処理が開始された後、タイマ割込処理の実行を許可してループ処理に移行する前に、乱数回路設定プログラム１５１を実行して乱数回路設定処理を行うため、限られた割り込み処理時間（例えば２ミリ秒）の間で乱数発生のための処理を開始・終了する必要はなくなり、遊技制御用マイクロプロセッサ１００の処理負担の増加を防止することができる。さらに、乱数回路１０３がＣＰＵ１０６とともに遊技制御用マイクロプロセッサ１００に内蔵されているため、主基板１１のスペースを確保することができ、また、不正基板の設置等の偽造を困難にすることができる。
【０２０１】
なお、好適には、乱数回路設定処理は、遊技状態復旧処理の実行後又はＲＡＭ１０５のクリアや所定の作業領域に対する初期設定などの初期化処理の実行後、タイマ割込処理の実行を許可してループ処理に移行する前に、実行されることが望ましい。
【０２０２】
また、ＣＰＵ１０６は、乱数回路１０３が発生するランダムＲの値を用いて特図ゲームおける表示結果を大当りとするか否かを決定するため、ＲＯＭ１０４等に記憶するプログラムの容量を削減することができる。
【０２０３】
さらに、ランダムＲの値は、乱数回路１０３にて更新されるので、ソフトウェアで更新するものに比べて、ＲＯＭ１０４等が記憶するプログラムの容量を少なくすることできる。
【０２０４】
また、乱数値記憶回路１３１に記憶されているランダムＲの値を、乱数回路設定プログラム１５１を実行してなされた設定に従って、更新させることができるため、パチンコ遊技機１毎に異なる設定を行うことにより、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２０５】
より詳細には、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数最大値設定モジュール１５１ａ，乱数更新方式選択モジュール１５１ｂ及び周期設定モジュール１５１ｃを実行して、ユーザがパチンコ遊技機１毎に適宜設定したランダムＲの最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期を乱数回路１０３に設定し、その後、乱数回路起動モジュール１５１ｄを実行して乱数回路１０３を起動させる。このようにして乱数回路１０３に設定されたランダムＲの最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期に従って、乱数値記憶回路１３１に格納されているランダムＲの値を更新させることにより、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２０６】
さらに、カウント値順列変更プログラム１５４を実行して、カウント値の更新順である順列を変更させることにより、乱数値記憶回路１３１に入力されるカウント値のランダム性が高まる結果、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２０７】
また、カウント値順列変更回路１２３が、切り替えた更新規則に従ってカウント値の更新動作を開始したことに応答して、ＣＰＵ１０６は、カウント値順列変更データ「０１ｈ」が書き込まれたカウント値順列変更レジスタ１３６を初期化するため、カウント値順列変更回路１２３から出力され、乱数値記憶回路１３１に入力されるカウント値の順列が連続的に変更されるといった不具合を防止することができる。
【０２０８】
さらに、カウント値順列変更レジスタ１３６が初期化された後、ＣＰＵ１０６は、カウント値順列データ「０１ｈ」をカウント値順列変更レジスタ１３６に再度書き込むことにより、変更したカウント値の順列をさらに変更することができる。
【０２０９】
また、カウンタ１２１により更新されるカウント値の初期値を変更させることにより、カウント値が初期値から最終値までカウントアップされる周期の検出を困難にすることができる。これにより、ステップＳ１７３にて乱数値記憶回路１３１から読み出されるランダムＲの値と大当り判定値とが合致するタイミングを狙って所定の信号を出力し、大当りを頻発させるといった不正行為を防止することができる。
【０２１０】
さらに、ＣＰＵ１０６は、リセットコントローラ１０２によりシステムリセットされるまで、乱数最大値設定データが書き込まれた乱数最大値設定レジスタ１３５、周期設定データが書き込まれた周期設定レジスタ１３７及び乱数更新方式選択データが書き込まれた乱数更新方式選択レジスタ１４０を書込不能に制御して乱数回路１０３に設定された乱数最大値、乱数発生用クロック信号Ｓ１の周期及び乱数更新方式を変更不能にする。これにより、悪質な遊技客が乱数最大値、乱数発生用クロック信号Ｓ１の周期及び乱数更新方式を変更して乱数値記憶回路１３１から読み出されるランダムＲの値と大当り判定値とが一致するタイミングを自在に設定し、大当りを頻発させるといった不正行為を防止することができる。
【０２１１】
また、ユーザがパチンコ遊技機１毎に適宜選択した初期値変更方式によりカウント値の初期値を変更させるため、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２１２】
さらに、乱数最大値設定レジスタ１３５に、下限値「４」以下の値を指定する乱数最大値設定データ「００００ｈ」〜「０００３ｈ」が書き込まれた場合、ＣＰＵ１０６は、この乱数最大値設定レジスタ１３５に「０ＦＦＦｈ」を格納するため、「４」以下の値が乱数最大値として乱数回路１０３に設定されることを防止することができる。
【０２１３】
また、ＣＰＵ１０６により変更された初期値が乱数最大値より大きい場合、比較器１２２は、カウント値更新信号を順次出力して、カウンタ１２１に、カウント値を変更された初期値から最終値まで連続的に更新させ、通知信号を出力させることにより、この変更された初期値をＣＰＵ１０６にさらに変更させることができる。これにより、乱数値記憶回路１３１に出力されるカウント値が乱数最大値より大きくなることを防止することができる。
【０２１４】
さらに、周期設定レジスタ１３７に、下限値「システムクロック信号の周期×１２８×７」以下の値を指定する周期設定コマンド「００ｈ」〜「０６ｈ」が書き込まれた場合、ＣＰＵ１０６は、この周期設定レジスタ１３７に「０７ｈ」を格納するため、「システムクロック信号の周期×１２８×７」より小さい値が内部クロック信号の周期として乱数回路１０３に設定されることを防止することができる。
【０２１５】
また、ＣＰＵ１０６は、乱数回路１０３に乱数の最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期を設定した後に、乱数回路１０３を起動させるため、電力の供給開始後、乱数の最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期の設定を行う前に、この乱数回路１０３から乱数が発生してしまうといった不具合を防止することができる。
【０２１６】
また、リセットコントローラ１０２によりシステムリセットされたときは、乱数回路起動レジスタ１４１に乱数回路起動データ「８０ｈ」を書き込むことにより、乱数回路１０３を再度起動させることができる。
【０２１７】
始動入賞口スイッチ７０は、始動入賞口である普通可変入賞球装置６へ遊技球が入賞したことに基づいて、始動入賞信号ＳＳを乱数回路１０３とＣＰＵ１０６とに出力する。ＣＰＵ１０６は、所定回（例えば２回）のタイマ割込処理が実行されている間（例えば４ミリ秒）、始動入賞口スイッチ７０から始動入賞信号ＳＳが継続して入力されたことに基づいて、入賞処理を実行する。この入賞処理において、ＣＰＵ１０６は、乱数値記憶回路１３１に出力制御信号ＳＣを送出して乱数値記憶回路１３１を読出可能（イネイブル）状態に制御した後、乱数値記憶回路１３１からランダムＲの値を読み出す。そして、ＣＰＵ１０６は、乱数値記憶回路１３１への出力制御信号ＳＣの送出を停止して乱数値記憶回路１３１を読出不能（ディセイブル）状態に制御した後、読み出したランダムＲの値が所定の判定値「３」などと一致するか否かを判定することにより、可変表示装置４による特図ゲームの表示結果を大当り遊技状態とするか否かを決定する。
【０２１８】
このように、ＣＰＵ１０６がランダムＲの値を読み出すときのみ、乱数値記憶回路１３１を読出可能状態に制御することにより、パチンコ遊技機１は、乱数値の取得をより一層、確実且つ安定的に行うことができる。また、ＣＰＵ１０６は、始動入賞口である普通可変入賞球装置６へ遊技球が入賞したときのみ、乱数値記憶回路１３１からランダムＲの値を読み出すため、パチンコ遊技機１は、無駄な処理を省略することができる。
【０２１９】
なお、乱数回路１０３は、始動入賞口スイッチ７０から出力された始動入賞信号ＳＳをラッチ信号生成回路１３３に直接入力するのではなく、一旦タイマ回路１３４に入力して、始動入賞信号ＳＳの入力時間を計測し、計測した時間が予め設定された時間（３ミリ秒）になったとき、乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」をセットすることにより、乱数値読取信号をラッチ信号生成回路１３３に入力する。このため、パチンコ遊技機１は、ラッチ信号生成回路１３３がノイズの影響等により誤って乱数値記憶回路１３１にラッチ信号ＳＬを出力することを防止することができる。また、タイマ回路１３４には、２回のタイマ割込処理の実行間「４ミリ秒」よりも短い「３ミリ秒」が設定されているため、ＣＰＵ１０６が乱数値記憶回路１３１から読み出したランダムＲの値が前回の入賞時に読み出したランダムＲの値と同じ値となることを防止することができる。
【０２２０】
また、乱数値記憶回路１３１は、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力されているとき、遊技制御用マイクロプロセッサ１００から入力される出力制御信号（ハイレベルの信号）ＳＣをローレベルの信号に変換することにより、出力制御信号ＳＣに対して受信不能状態に制御する。これにより、乱数値記憶回路１３１に記憶されているランダムＲの値が更新されているときに、ＣＰＵ１０６により乱数値記憶回路１３１からランダムＲの値が読み出されることを防止することができるため、パチンコ遊技機１は、乱数値の更新を確実且つ安定的に行うことができる。
【０２２１】
さらに、乱数値記憶回路１３１は、遊技制御用マイクロプロセッサ１００から出力制御信号ＳＣが入力されているとき、ラッチ信号生成回路１３３から入力されるラッチ信号（ハイレベルの信号）ＳＬをローレベルの信号に変換することにより、ラッチ信号ＳＬに対して受信不能状態に制御する。これにより、遊技制御用マイクロプロセッサ１００が乱数値記憶回路１３１からランダムＲの値を読み出しているときに、乱数値記憶回路１３１に記憶されているランダムＲの値が更新されることを防止することができるため、パチンコ遊技機１は、乱数値の取得を確実且つ安定的に行うことができる。
【０２２２】
上記の実施例では、ユーザにより第２の乱数更新方式が選択された場合について説明した。これに対して、第１の乱数更新方式が選択された場合には、図２７に示すステップＳ１０の乱数回路設定処理として、図３５のフローチャートに示す処理が実行される。
【０２２３】
図３５に示す乱数回路設定処理において、ＣＰＵ１０６は、まず、乱数回路設定プログラム１５１に含まれる乱数最大値設定モジュール１５１ａを実行して、ユーザにより予め設定された乱数最大値を指定する乱数最大値設定データを乱数最大値設定レジスタ１３５に書き込むことにより、この予め設定されたランダムＲの最大値を乱数回路１０３に設定する（ステップＳ３１）。次に、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数更新方式選択モジュール１５１ｂを実行して、乱数更新方式選択データ「０１ｂ」を乱数更新方式選択レジスタ１４０に書き込むことにより、第１の乱数更新方式を乱数回路１０３に設定する（ステップＳ３２）。この後、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数回路起動モジュール１５１ｄを実行して、乱数回路起動データ「８０ｈ」を乱数回路起動レジスタ１４１に書き込むことにより、乱数回路１０３を起動させる（ステップＳ３３）。
【０２２４】
こうして図３５に示すような乱数回路設定処理が実行されることにより、乱数回路１０３は、例えば図３６に示すようなタイミングチャートに従って動作する。
【０２２５】
図３６に示す動作例において、クロック回路１０１から乱数回路１０３へは、タイミングＴ３１，Ｔ４１，…においてローレベルからハイレベルに立ち上がる、図３６（Ａ）に示す基準クロック信号ＣＬＫが供給されるものとする。
【０２２６】
クロック信号出力回路１２４は、クロック回路１０１から供給された基準クロック信号ＣＬＫを分周して乱数発生用クロック信号Ｓ１を生成し、セレクタ１２８と反転回路１３２とに出力する。セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第１の乱数更新方式選択信号が入力されることに応答して、カウント値更新信号出力回路１２５から出力されるカウント値更新信号Ｓ３を選択してカウンタ１２１に出力する。カウンタ１２１は、セレクタ１２８から供給されるカウント値更新信号Ｓ３の立ち上がりエッヂが入力されるタイミングにおいて、カウント値Ｃを更新してカウント値順列変更回路１２３に出力する。ここで、セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第１の乱数更新方式選択信号が入力されたときに、カウント値更新信号出力回路１２５から出力されるカウント値更新信号Ｓ３に応答して、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１に同期した数値データの更新を指示する数値更新信号を、カウンタ１２１に出力してもよい。
【０２２７】
反転回路１３２は、クロック信号出力回路１２４から出力された乱数発生用クロック信号Ｓ１の信号レベルを反転させることにより、例えばタイミングＴ３１，Ｔ３２，…においてハイレベルからローレベルに立ち下がり、タイミングＴ４１，Ｔ４２，…においてローレベルからハイレベルに立ち上がる、図３６（Ｃ）に示す反転クロック信号Ｓ２を生成する。反転回路１３２によって生成された反転クロック信号Ｓ２は、ラッチ信号生成回路１３３に出力される。
【０２２８】
ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第１の乱数更新方式選択信号が入力されることに応答して、反転回路１３２から供給される反転クロック信号Ｓ２を、図３６（Ｄ）に示すラッチ信号ＳＬとして出力する。このような第１の乱数更新方式が選択された場合に、ＣＰＵ１０６がカウント値更新レジスタ１３８にカウント値更新データ「０１ｈ」を書き込むタイミングを、乱数発生用クロック信号Ｓ１がローレベルからハイレベルに立ち上がるタイミングＴ３１，Ｔ３２…のいずれかとなるように制御する。なお、セレクタ１２８がクロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１に同期した数値更新指示信号を出力可能な場合には、このような制御が行われなくても、タイミングＴ３１，Ｔ３２…のいずれかにおいて信号レベルが切り替わる数値更新指示信号がカウンタ１２１へ出力されることになる。これにより、乱数回路１０３は、タイミングＴ３１，Ｔ４１，Ｔ３２，Ｔ４２，Ｔ３３，Ｔ４３…のうち、タイミングＴ３２において、カウント値Ｃを更新し、タイミングＴ３３とは異なるタイミングＴ４１，Ｔ４２，Ｔ４３…において、ラッチ信号ＳＬを出力することができる。すなわち、第１の乱数更新方式が選択された場合でも、乱数回路１０３は、カウンタ１２１によるカウント値Ｃの更新タイミングと、ラッチ信号生成回路１３３によるラッチ信号ＳＬの出力タイミング（ラッチタイミング）とを、確実に異ならせることができ、乱数値の取得を確実且つ安定的に行うことができる。
【０２２９】
この第１の乱数更新方式が選択された場合、ＣＰＵ１０６は、図３０のフローチャートに示す遊技制御割込処理に代えて、図３７に示す処理を実行する。
【０２３０】
図３７に示す遊技制御割込処理において、ＣＰＵ１０６は、まず、所定の電源断処理を実行することにより、電源基板１０から供給される電力が低下したときなどに所定のデータ保護処理等を実行可能とする（ステップＳ１９１）。続いて、所定のスイッチ処理を実行することにより、始動入賞口スイッチ７０等の各入賞口スイッチから入力される検出信号の状態を判定する（ステップＳ１９２）。次に、ＣＰＵ１０６は、表示用乱数更新処理（ステップＳ１９３）を実行する。続いて、ＣＰＵ１０６は、初期値変更プログラム１５３を実行して、図３１に示す初期値変更処理を行う（ステップＳ１９４）。さらに、ＣＰＵ１０６は、カウント値順列変更プログラム１５４を実行して、カウント値順列変更処理を行う（ステップＳ１９５）。
【０２３１】
そして、ＣＰＵ１０６は、この乱数値更新プログラム１５５を実行して、乱数値更新処理を行う（ステップＳ１９６）。この乱数値更新処理において、ＣＰＵ１０６は、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１の立ち上がりエッヂと同期して、カウント値更新データ「０１ｈ」をカウント値更新レジスタ１３８に書き込むことにより、カウンタ１２１によりカウントされているカウント値Ｃを更新させる。カウンタ１２１におけるカウント値Ｃは、ラッチ信号生成回路１３３からラッチ信号ＳＬとして出力される反転クロック信号Ｓ２の立ち上がりエッヂと同期して、乱数値記憶回路１３１に取り込まれて記憶される。
【０２３２】
続いて、特別図柄プロセス処理を実行する（ステップＳ１９７）。特別図柄プロセス処理では、遊技状態に応じてパチンコ遊技機１を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選択されて実行される。特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、ＣＰＵ１０６は、普通図柄プロセス処理を実行する（ステップＳ１９８）。普通図柄プロセス処理では、普通図柄表示器４０を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選択されて実行される。普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。さらに、特別図柄コマンド制御処理（ステップＳ１９９）と、普通図柄コマンド制御処理（ステップＳ２００）と、を順次実行する。これにより、ＣＰＵ１０６は、主基板１１から表示制御基板１２に対して表示制御コマンドを送ることにより、可変表示装置４の表示制御や普通図柄表示器４０の点灯制御を指示する。続いて、ＣＰＵ１０６は、所定の情報出力処理を実行することにより、各種出力データをＩ／Ｏポート１０８に含まれる各出力ポートに出力する（ステップＳ２０１）。この情報出力処理では、主基板１１から情報端子基板１６に、大当り情報、始動情報、確率可変情報などをホール管理用コンピュータに対して出力する指令の送出も行われる。また、ＣＰＵ１０６は、所定の賞球処理を実行することにより、始動入賞口スイッチ７０等の各入賞口スイッチから入力された検出信号に基づく賞球数の設定などを行い、払出制御基板１５に対して払出制御コマンドを出力可能とする（ステップＳ２０２）。さらに、ＣＰＵ１０６は、所定のソレノイド出力処理を実行することにより、所定の条件が成立したときに普通可変入賞球装置６における可動翼片や特別可変入賞球装置７における開閉板の開閉駆動を行う（ステップＳ２０３）。
【０２３３】
このように、ユーザの設定に応じて第１及び第２の乱数更新方式のいずれかが選択され、選択された乱数更新方式で乱数値記憶回路１３１にランダムＲの値を記憶させることができる。このため、パチンコ遊技機１毎に異なる乱数更新方式を選択することにより、乱数値記憶回路１３１から読み出されるランダムＲの値のランダム性を高めることができる。また、カウンタ１２１がカウント値Ｃを更新するタイミングや、乱数値記憶回路１３１にカウント値Ｃを取り込んでランダムＲの値を更新するタイミングを指定することができるので、更新されていない乱数値が読み出されることを防止できる。
【０２３４】
また、上記の実施例では、始動入賞口スイッチ７０からの始動入賞信号ＳＳが、スイッチ回路１０９を介して遊技制御用マイクロプロセッサ１００の乱数回路１０３とＣＰＵ１０６とに入力される場合について説明した。これに対して、始動入賞口スイッチ７０からの始動入賞信号ＳＳは、ＣＰＵ１０６に入力させ、乱数回路１０３には入力しないようにしてもよい。この場合には、ＣＰＵ１０６がラッチ用始動入賞信号ＳＮを生成して乱数回路１０３に供給すればよい。
【０２３５】
図３８は、ＣＰＵ１０６にてラッチ用始動入賞信号ＳＮを生成して乱数回路１０３に供給する場合における、乱数回路１０３の構成例を示すブロック図である。なお、図３８において、図４と同様の構成には同一の符号が付されている。
【０２３６】
図３８に示す構成において、乱数値読取信号出力回路１２６に設けられた乱数値取込レジスタ１３９には、ＣＰＵ１０６からのラッチ用始動入賞信号ＳＮとして、乱数値取込データ「０１ｈ」が書き込まれる。乱数値読取信号出力回路１２６は、乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」が書き込まれたことに応答して、乱数値読取信号をラッチ信号生成回路１３３に出力する。
【０２３７】
また、遊技制御用マイクロプロセッサ１００は、図２５に示すような特図保留メモリ１７０と、大当り判定用テーブルメモリ１７１と、フラグメモリ１７２と、始動入賞口スイッチタイマメモリ１７３とを備えており、フラグメモリ１７２には、乱数値読出フラグが設けられている。乱数値読出フラグは、ＣＰＵ１０６がラッチ用始動入賞信号ＳＮを乱数回路１０３に送出したときにオン状態にセットされ、乱数値記憶回路１３１からランダムＲの値が読み出されるとクリアされてオフ状態となる。
【０２３８】
図３８に示すような構成の乱数回路１０３を備えるパチンコ遊技機１において、第２の乱数更新方式が選択された場合、ＣＰＵ１０６は、図２７のフローチャートに示すステップＳ１０の乱数回路設定処理として、図２８のフローチャートに示す処理を実行する。これにより、乱数回路１０３は、例えば図３９に示すようなタイミングチャートに従って動作する。
【０２３９】
図３９に示す動作例において、クロック回路１０１から乱数回路１０３へは、タイミングＴ５１，Ｔ６１，…においてローレベルからハイレベルに立ち上がる、図３９（Ａ）に示す基準クロック信号ＣＬＫが供給されるものとする。
【０２４０】
クロック信号出力回路１２４は、クロック回路１０１から供給された基準クロック信号ＣＬＫを分周して、例えばタイミングＴ５１，Ｔ５２，…においてローレベルからハイレベルに立ち上がり、タイミングＴ６１，Ｔ６２，…においてハイレベルからローレベルに立ち下がる、図３９（Ｂ）に示す乱数発生用クロック信号Ｓ１を生成する。クロック信号出力回路１２４によって生成された乱数発生用クロック信号Ｓ１は、セレクタ１２８と反転回路１３２とに出力される。
【０２４１】
セレクタ１２８は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、クロック信号出力回路１２４から出力された乱数発生用クロック信号Ｓ１を選択してカウンタ１２１に出力する。カウンタ１２１は、セレクタ１２８から供給される乱数発生用クロック信号Ｓ１の立ち上がりエッヂが入力される毎に、カウント値Ｃを更新してカウント値順列変更回路１２３に出力する。
【０２４２】
反転回路１３２は、クロック信号出力回路１２４から出力された乱数発生用クロック信号Ｓ１の信号レベルを反転させることにより、例えばタイミングＴ５１，Ｔ５２，…においてハイレベルからローレベルに立ち下がり、タイミングＴ６１，Ｔ６２，…においてローレベルからハイレベルに立ち上がる、図３９（Ｃ）に示す反転クロック信号Ｓ２を生成する。反転回路１３２によって生成された反転クロック信号Ｓ２は、ラッチ信号生成回路１３３に出力される。
【０２４３】
ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、ＣＰＵ１０６から入力される図３９（Ｄ）に示すラッチ用始動入賞信号ＳＮを、反転回路１３２から供給される反転クロック信号Ｓ２の立ち上がりエッヂに同期させて、図３９（Ｅ）に示すラッチ信号ＳＬとして出力する。より具体的には、ラッチ信号生成回路１３３は、ＣＰＵ１０６から入力される図３９（Ｄ）に示すようなラッチ用始動入賞信号ＳＮを、反転回路１３２から供給される反転クロック信号Ｓ２の立ち上がりエッヂタイミングにおいて取り込むとともに、取り込まれたラッチ用始動入賞信号ＳＮの信号レベルに対応して、図３９（Ｅ）に示すようなラッチ信号ＳＬを出力する。
【０２４４】
これにより、乱数回路１０３は、タイミングＴ５１，Ｔ６１，Ｔ５２，Ｔ６２，Ｔ５３，Ｔ６３…のうち、タイミングＴ５１，Ｔ５２，Ｔ５３…において、カウント値Ｃを更新し、タイミングＴ５１，Ｔ５２，Ｔ５３とは異なるタイミングＴ６２において、ラッチ信号ＳＬを出力することができる。
【０２４５】
また、図３８に示す構成の乱数回路１０３を備えるパチンコ遊技機１において、第２の乱数更新方式が選択された場合、ＣＰＵ１０６は、図３０のフローチャートに示すステップＳ１０６の特別図柄プロセス処理を開始すると、図４０に示すステップＳ２５１〜Ｓ２６２の処理を実行する。
【０２４６】
図４０に示す処理において、ＣＰＵ１０６は、まず、フラグメモリ１７２に設けられた乱数値読出フラグがオンとなっているか否かを判別する（ステップＳ２５１）。乱数値読出フラグがオフであるときには（ステップＳ２５１；Ｎｏ）、始動入賞口スイッチタイマメモリ１７３に記憶されているタイマ値をチェックすることにより、判別する（ステップＳ２５２）。ステップＳ２５２において、ＣＰＵ１０６は、始動入賞口スイッチタイマメモリ１７３に記憶されているタイマ値をロードし、ロードしたタイマ値を所定のスイッチオン判定値（例えば「２」）と比較する。ここで、スイッチオン判定値は、遊技制御割込処理の実行回数（例えば「２」）に対応して予め定められている。これにより、ＣＰＵ１０６は、所定回（例えば２回）の遊技制御割込処理が実行されている間（例えば４ミリ秒）、始動入賞口スイッチ７０から始動入賞信号ＳＳが継続して入力されたが否かを判別することができる。
【０２４７】
そして、この比較結果に基づいて、ＣＰＵ１０６は、タイマ値がスイッチオン判定値「２」以上であるか否かを判定する。タイマ値がスイッチオン判定値「２」以上である場合には、遊技球が入賞しているものと判別して（ステップＳ２５２；Ｙｅｓ）、特図保留メモリ１７０が記憶している始動入賞記憶数が所定の最大値（例えば、「４」）であるか否かを判別する（ステップＳ２５３）。ここで、特図保留メモリ１７０において、例えば始動入賞記憶番号「４」に対応したランダムＲが記憶されている場合には、始動入賞記憶数が最大値であると判別される。
【０２４８】
始動入賞記憶数が最大値であるときには（ステップＳ２５３；Ｙｅｓ）、今回の入賞による始動検出は無効とし、特別図柄プロセスフラグの値に基づいて、図３２に示すステップＳ１５０〜Ｓ１５８の９個の処理のいずれかを選択して実行する。一方、始動入賞記憶数が最大値ではないときには（ステップＳ２５３；Ｎｏ）、乱数回路１０３にラッチ用始動入賞信号ＳＮを送出して、乱数値読取信号出力回路１２６に設けられた乱数値取込レジスタ１３９に、乱数値取込データ「０１ｈ」を書き込む（ステップＳ２５４）。このときには、乱数値読出フラグをオン状態にセットした後（ステップＳ２５５）、図３２に示すステップＳ１５０〜Ｓ１５８の処理のうちから特別図柄プロセスフラグの値に対応した処理が選択されて実行される。
【０２４９】
この後に再び特別図柄プロセス処理が実行されたときには、ステップＳ２５１にて乱数値読出フラグがオンであると判別される（ステップＳ２５１；Ｙｅｓ）。このとき、ＣＰＵ１０６は、乱数値記憶回路１３１に出力制御信号ＳＣを送出して、乱数値記憶回路１３１を読出可能（イネイブル）状態に制御する（ステップＳ２５６）。続いて、ＣＰＵ１０６は、乱数値記憶回路１３１から乱数値として記憶されているランダムＲの値を読み出し（ステップＳ２５７）、この読み出したランダムＲの値を、例えばＲＡＭ１０５に設けられた所定のバッファ領域に格納した後（ステップＳ２５８）、乱数値記憶回路１３１への出力制御信号ＳＣの送出を停止して、乱数値記憶回路１３１を読出不能（ディセイブル）状態に制御する（ステップＳ２５９）。そして、ＣＰＵ１０６は、始動入賞記憶数を「１」加算し（ステップＳ２６０）、所定のバッファ領域に格納したランダムＲの値を特図保留メモリ１７０の空エントリの先頭にセットする（ステップＳ２６１）。この後、ＣＰＵ１０６は、乱数値読出フラグをクリアしてオフ状態とし（ステップＳ２６２）、図３２に示すステップＳ１５０〜１５８の処理のうちで特別図柄プロセスフラグの値に対応したものに進む。
【０２５０】
以上のように、図３８に示すような構成の乱数回路１０３を備えるパチンコ遊技機１においては、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されることに応答して、セレクタ１２８がクロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１を選択してカウンタ１２１に出力する。これにより、カウンタ１２１には、タイミングＴ５１，Ｔ５２，Ｔ５３，…において、ローレベルからハイレベルに立ち上がる乱数発生用クロック信号Ｓ１が供給される。また、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１は、反転回路１３２によって信号レベルが反転された後、反転クロック信号Ｓ２としてラッチ信号生成回路１３３に出力される。ラッチ信号生成回路１３３は、乱数更新方式選択信号出力回路１２７から第２の乱数更新方式選択信号が入力されていることに応答して、乱数値読取信号出力回路１２６から出力される乱数値読取信号を、反転回路１３２から入力される反転クロック信号Ｓ２に同期させて、タイミングＴ６２において、ローレベルからハイレベルに立ち上がるラッチ信号ＳＬとして乱数値記憶回路１３１に出力する。
【０２５１】
このようにして、図３８に示す構成を有する乱数回路１０３は、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１がローレベルからハイレベルに立ち上がるタイミングＴ５１，Ｔ５２，Ｔ５３，…においてカウント値Ｃを更新し、これらのタイミングＴ５１，Ｔ５２，Ｔ５３，…とは異なるタイミングＴ６１，Ｔ６２，Ｔ６３，…においてラッチ信号ＳＬを出力することができる。そして、乱数値記憶回路１３１は、この更新されたカウント値Ｃをラッチ信号ＳＬの立ち上がりエッヂに応答して、ランダムＲとして記憶する。
【０２５２】
このため、図３８に示す乱数回路１０３は、カウンタ１２１によるカウント値Ｃの更新タイミングと、ラッチ信号生成回路１３３によるラッチ信号ＳＬの出力タイミング（ラッチタイミング）とを、確実に異ならせることができ、乱数値の取得を確実且つ安定的に行うことができる。
【０２５３】
また、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６は、パチンコ遊技機１に電力が供給され、遊技制御メイン処理が開始された後、タイマ割込処理の実行を許可してループ処理に移行する前に、乱数回路設定プログラム１５１を実行して乱数回路設定処理を行う。このため、限られた割り込み処理時間（例えば２ミリ秒）の間で乱数発生のための処理を開始・終了する必要はなくなり、遊技制御用マイクロプロセッサ１００の処理負担の増加を防止することができる。さらに、図３８に示す乱数回路１０３をＣＰＵ１０６とともに遊技制御用マイクロプロセッサ１００に内蔵させることで、主基板１１のスペースを確保することができ、また、不正基板の設置等の偽造を困難にすることができる。
【０２５４】
なお、好適には、乱数回路設定処理は、遊技状態復旧処理の実行後又はＲＡＭ１０５のクリアや所定の作業領域に対する初期設定などの初期化処理の実行後、タイマ割込処理の実行を許可してループ処理に移行する前に、実行されることが望ましい。
【０２５５】
図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６は、普通可変入賞球装置６へ遊技球が入賞したものと判別したとき、乱数回路１０３にラッチ用始動入賞信号ＳＮを送出し、乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」を書き込む。このため、パチンコ遊技機１は、始動入賞スイッチ７０から乱数回路１０３へ始動入賞信号ＳＳを供給するための経路を設ける必要がなく、そのハードウェア構成を簡素化することができる。
【０２５６】
また、ＣＰＵ１０６は、図３８に示す乱数回路１０３が発生するランダムＲの値を用いて特図ゲームおける表示結果を大当りとするか否かを決定する。これにより、ＲＯＭ１０４等に記憶するプログラムの容量を削減することができる。
【０２５７】
さらに、ランダムＲの値は、図３８に示す乱数回路１０３にて更新されるので、ソフトウェアで更新するものに比べて、ＲＯＭ１０４等が記憶するプログラムの容量を少なくすることできる。
【０２５８】
また、図３８に示す乱数回路１０３が備える乱数値記憶回路１３１に記憶されているランダムＲの値を、乱数回路設定プログラム１５１を実行してなされた設定に従って更新させる。これにより、パチンコ遊技機１毎に異なる設定を行い、特図ゲームにおける表示結果を大当りとするか否かを判定するために乱数値記憶回路１３１から読み出されるランダムＲのランダム性を高めることができる。
【０２５９】
より詳細には、ＣＰＵ１０６は、乱数回路設定プログラム１５１に含まれる乱数最大値設定モジュール１５１ａ，乱数更新方式選択モジュール１５１ｂ及び周期設定モジュール１５１ｃを実行して、ユーザがパチンコ遊技機１毎に適宜設定したランダムＲの最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期を図３８に示す構成を有する乱数回路１０３に設定し、その後、乱数回路起動モジュール１５１ｄを実行して図３８に示す乱数回路１０３を起動させる。このようにして図３８に示す乱数回路１０３に設定されたランダムＲの最大値、乱数更新方式及び内部クロック信号の周期に従って、乱数値記憶回路１３１に格納されているランダムＲの値を更新させる。これにより、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２６０】
図３８に示す乱数回路１０３が備える比較器１２２には、ランダムＲの最大値（乱数最大値）を指定する乱数最大値設定データが格納される乱数最大値設定レジスタ１３５が設けられている。比較器１２２は、乱数最大値設定レジスタ１３５に格納された乱数最大値設定データに応じて、カウンタ１２１によるカウント値の更新範囲を規制する。これにより、図３８に示す乱数回路１０３を備えるパチンコ遊技機１毎に異なる乱数の最大値を設定することができ、可変表示における表示結果を特定表示結果とするか否かに用いられる乱数値のランダム性を高めることができる。
【０２６１】
さらに、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６がカウント値順列変更プログラム１５４を実行して、カウント値の更新順である順列を変更させる。図３８に示す乱数回路１０３が備えるカウント値順列変更回路１２３には、順列の変更を要求するカウント値順列変更データ「０１ｈ」を格納するカウント値順列変更レジスタ１３６が設けられている。カウント値順列変更回路１２３は、カウント値順列変更レジスタ１３６にカウント値順列変更データ「０１ｈ」が書き込まれたことに応答して更新規則を切り替えることにより、カウント値順列変更データ「０１ｈ」が格納されていないときとは異なる更新順の順列に変更する。これにより、乱数値記憶回路１３１に入力されるカウント値Ｃのランダム性が高まる結果、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２６２】
また、図３８に示す乱数回路１０３が備えるカウント値順列変更回路１２３が、切り替えた更新規則に従ってカウント値の更新動作を開始したことに応答して、ＣＰＵ１０６は、カウント値順列変更データ「０１ｈ」が書き込まれたカウント値順列変更レジスタ１３６を初期化する。このため、カウント値順列変更回路１２３から出力され、乱数値記憶回路１３１に入力されるカウント値の順列が連続的に変更されるといった不具合を防止することができる。
【０２６３】
さらに、図３８に示す乱数回路１０３に設けられたカウント値順列変更レジスタ１３６が初期化された後、ＣＰＵ１０６は、カウント値順列データ「０１ｈ」をカウント値順列変更レジスタ１３６に再度書き込む。これにより、変更したカウント値の順列をさらに変更することができる。
【０２６４】
また、図３８に示す乱数回路１０３が備えるカウンタ１２１により更新されるカウント値の初期値を変更させることにより、カウント値が初期値から最終値までカウントアップされる周期の検出を困難にすることができる。これにより、ステップＳ１７３にて乱数値記憶回路１３１から読み出されるランダムＲの値と大当り判定値とが合致するタイミングを狙って所定の信号を出力し、大当りを頻発させるといった不正行為を防止することができる。
【０２６５】
さらに、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６は、リセットコントローラ１０２によりシステムリセットされるまで、乱数最大値設定データが書き込まれた乱数最大値設定レジスタ１３５、周期設定データが書き込まれた周期設定レジスタ１３７及び乱数更新方式選択データが書き込まれた乱数更新方式選択レジスタ１４０を書込不能に制御して乱数回路１０３に設定された乱数最大値、乱数発生用クロック信号Ｓ１の周期及び乱数更新方式を変更不能にする。これにより、悪質な遊技客が乱数最大値、乱数発生用クロック信号Ｓ１の周期及び乱数更新方式を変更して乱数値記憶回路１３１から読み出されるランダムＲの値と大当り判定値とが一致するタイミングを自在に設定し、大当りを頻発させるといった不正行為を防止することができる。
【０２６６】
また、図３８に示す乱数回路１０３を備えるパチンコ遊技機１のユーザがパチンコ遊技機１毎に適宜選択した初期値変更方式により、カウント値の初期値を変更させる。このため、乱数値記憶回路１３１から読み出され、特図ゲームおける表示結果を大当りとするか否かを判定するのに用いられる乱数値のランダム性を高めることができる。
【０２６７】
さらに、図３８に示す乱数回路１０３に設けられた乱数最大値設定レジスタ１３５に、下限値「４」以下の値を指定する乱数最大値設定データ「００００ｈ」〜「０００３ｈ」が書き込まれた場合、ＣＰＵ１０６は、この乱数最大値設定レジスタ１３５に「０ＦＦＦｈ」を格納する。このため、「４」以下の値が乱数最大値として乱数回路１０３に設定されることを防止することができる。
【０２６８】
また、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６により変更された初期値が乱数最大値より大きい場合、比較器１２２は、カウント値更新信号を順次出力して、カウンタ１２１に、カウント値を変更された初期値から最終値まで連続的に更新させ、通知信号を出力させることにより、この変更された初期値をＣＰＵ１０６にさらに変更させることができる。これにより、乱数値記憶回路１３１に出力されるカウント値が乱数最大値より大きくなることを防止することができる。
【０２６９】
さらに、図３８に示す乱数回路１０３に設けられた周期設定レジスタ１３７に、下限値「システムクロック信号の周期×１２８×７」以下の値を指定する周期設定コマンド「００ｈ」〜「０６ｈ」が書き込まれた場合、ＣＰＵ１０６は、この周期設定レジスタ１３７に「０７ｈ」を格納する。このため、「システムクロック信号の周期×１２８×７」より小さい値が内部クロック信号の周期として乱数回路１０３に設定されることを防止することができる。
【０２７０】
また、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６は、乱数回路１０３に乱数の最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期を設定した後に、乱数回路１０３を起動させる。このため、電力の供給開始後、乱数の最大値、乱数更新方式及び乱数発生用クロック信号Ｓ１の周期の設定を行う前に、この乱数回路１０３から乱数が発生してしまうといった不具合を防止することができる。
【０２７１】
また、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、リセットコントローラ１０２によりシステムリセットされたときは、乱数回路起動レジスタ１４１に乱数回路起動データ「８０ｈ」を書き込むことにより、乱数回路１０３を再度起動させることができる。
【０２７２】
図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、始動入賞口スイッチ７０は、始動入賞口である普通可変入賞球装置６へ遊技球が入賞したことに基づいて、始動入賞信号ＳＳをＣＰＵ１０６に出力する。ＣＰＵ１０６は、所定回（例えば２回）のタイマ割込処理が実行されている間（例えば４ミリ秒）、始動入賞口スイッチ７０から始動入賞信号ＳＳが継続して入力されたことに基づいて、普通可変入賞球装置６へ遊技球が入賞したものと判別し、乱数回路１０３にラッチ用始動入賞信号ＳＮを送出し、乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」を書き込む。
【０２７３】
この後、最初に行われる遊技制御割込処理において、ＣＰＵ１０６は、乱数値記憶回路１３１に出力制御信号ＳＣを送出して乱数値記憶回路１３１を読出可能（イネイブル）状態に制御した後、乱数値記憶回路１３１からランダムＲの値を読み出す。そして、ＣＰＵ１０６は、乱数値記憶回路１３１への出力制御信号ＳＣの送出を停止して乱数値記憶回路１３１を読出不能（ディセイブル）状態に制御した後、読み出したランダムＲの値が所定の判定値「３」などと一致するか否かを判定することにより、可変表示装置４による特図ゲームの表示結果を大当り遊技状態とするか否かを決定する。
【０２７４】
このように、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６は、２回のタイマ割込処理としての遊技制御割込処理が実行されている間、始動入賞信号ＳＳが継続して入力されたことに基づいて、普通可変入賞球装置６へ遊技球が入賞したものと判別する。このため、パチンコ遊技機１は、ノイズの影響等により誤って乱数回路１０３にラッチ用始動入賞信号ＳＮが出力されることを防止することができる。
【０２７５】
さらに、図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、ＣＰＵ１０６がランダムＲの値を読み出すときのみ、乱数値記憶回路１３１を読出可能状態に制御する。これにより、パチンコ遊技機１は、乱数値の取得をより一層、確実且つ安定的に行うことができる。また、ＣＰＵ１０６は、始動入賞口である普通可変入賞球装置６へ遊技球が入賞したときのみ、乱数値記憶回路１３１からランダムＲの値を読み出すため、パチンコ遊技機１は、無駄な処理を省略することができる。
【０２７６】
また、図３８に示す乱数回路１０３が備える乱数値記憶回路１３１は、ラッチ信号生成回路１３３からラッチ信号ＳＬが入力されているとき、遊技制御用マイクロプロセッサ１００から入力される出力制御信号（ハイレベルの信号）ＳＣをローレベルの信号に変換することにより、出力制御信号ＳＣに対して受信不能状態に制御する。これにより、乱数値記憶回路１３１に記憶されているランダムＲの値が更新されているときに、ＣＰＵ１０６により乱数値記憶回路１３１からランダムＲの値が読み出されることを防止することができるため、パチンコ遊技機１は、乱数値の更新を確実且つ安定的に行うことができる。
【０２７７】
さらに、図３８に示す乱数回路１０３が備える乱数値記憶回路１３１は、遊技制御用マイクロプロセッサ１００から出力制御信号ＳＣが入力されているとき、ラッチ信号生成回路１３３から入力されるラッチ信号（ハイレベルの信号）ＳＬをローレベルの信号に変換することにより、ラッチ信号ＳＬに対して受信不能状態に制御する。これにより、遊技制御用マイクロプロセッサ１００が乱数値記憶回路１３１からランダムＲの値を読み出しているときに、乱数値記憶回路１３１に記憶されているランダムＲの値が更新されることを防止することができるため、パチンコ遊技機１は、乱数値の取得を確実且つ安定的に行うことができる。
【０２７８】
図３８に示す乱数回路１０３を備えるパチンコ遊技機１において、第１の乱数更新方式が選択された場合には、図４に示す乱数回路１０３を備えるパチンコ遊技機１において第１の乱数更新方式が選択された場合と同様に、図２７に示すステップＳ１０の乱数回路設定処理として、図３５のフローチャートに示す処理を実行する。図３５に示すような乱数回路設定処理が実行されることにより、図３８に示す乱数回路１０３は、例えば図３６に示すようなタイミングチャートに従って動作する。また、第１の乱数更新方式が選択された場合には、ＣＰＵ１０６が図３０のフローチャートに示す遊技制御割込処理に代えて図３７に示す処理を実行し、ステップＳ１９６にて乱数値更新処理を行う。この乱数値更新処理において、ＣＰＵ１０６は、クロック信号出力回路１２４から出力される乱数発生用クロック信号Ｓ１の立ち上がりエッヂと同期してカウント値更新データ「０１ｈ」をカウント値更新レジスタ１３８に書き込むことにより、カウンタ１２１によりカウントされているカウント値Ｃを更新させる。カウンタ１２１におけるカウント値Ｃは、ラッチ信号生成回路１３３からラッチ信号ＳＬとして出力される反転クロック信号Ｓ２の立ち上がりエッヂと同期して、乱数値記憶回路１３１に取り込まれて記憶される。
【０２７９】
このように、図３８に示す乱数回路１０３を備えるパチンコ遊技機１においても、ユーザの設定に応じて第１及び第２の乱数更新方式のいずれかが選択され、選択された乱数更新方式で乱数値記憶回路１３１にランダムＲの値を記憶させることができる。このため、パチンコ遊技機１毎に異なる乱数更新方式を選択することにより、乱数値記憶回路１３１から読み出されるランダムＲの値のランダム性を高めることができる。また、カウンタ１２１がカウント値Ｃを更新するタイミングや、乱数値記憶回路１３１にカウント値Ｃを取り込んでランダムＲの値を更新するタイミングを指定することができるので、更新されていない乱数値が読み出されることを防止できる。
【０２８０】
なお、この発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、この発明に適用可能な上記の実施の形態の変形態様について説明する。
【０２８１】
上記実施の形態では、クロック信号出力回路１２４から出力された信号を乱数発生用クロック信号Ｓ１としてセレクタ１２８と反転回路１３２とに出力し、その信号における信号レベルを反転回路１３２にて反転させて生成した信号を反転クロック信号Ｓ２としてラッチ信号生成回路１３３に出力していた。しかしながら、本発明は、これに限定されず、クロック信号出力回路１２４から出力された信号をラッチ信号生成回路１３３に出力し、その信号における信号レベルを反転させて生成した信号をセレクタ１２８に出力するようにしてもよい。すなわち、カウンタ１２１がカウント値Ｃを更新するために用いる信号における信号レベルを反転させた信号と同期させて、ラッチ信号ＳＬを乱数値記憶回路１３１に供給できるものであればよい。
【０２８２】
また、カウンタ１２１やラッチ信号生成回路１３３は、乱数発生用クロック信号Ｓ１や反転クロック信号Ｓ２の立ち上がりエッヂに応答してカウント値Ｃの更新やラッチ信号ＳＬの出力を行うものに限定されず、例えば、各信号の立ち下がりエッヂに応答してカウント値Ｃの更新やラッチ信号ＳＬの出力を行うものであってもよい。すなわち、カウンタ１２１及びラッチ信号生成回路１３３は、例えば乱数発生用クロック信号Ｓ１あるいは反転クロック信号Ｓ２における信号レベルが予め定められた第１の信号レベルから第２の信号レベルへと変化するといった、所定の態様での信号変化に応答して、カウント値Ｃの更新やラッチ信号ＳＬの出力を行うことができるものであればよい。
【０２８３】
上記の実施の形態において、カウンタ１２１は、カウント値を「１」から「４０９５」まで１ずつカウントアップして更新していた。しかしながら、本発明は、これに限定されず、カウンタ１２１は、カウント値を更新する規則は、任意である。上記実施の形態では、カウンタ１２１はアップカウンタであったが、ダウンカウンタであってもよい。さらに、数値更新手段は、カウンタ１２１に限定されず、疑似乱数発生回路であってもよい。また、カウンタ１２１の各ビット出力端子の接続を入れ替えること等により、乱数値記憶回路１３１に入力されるカウント値Ｃのランダム性を高めてもよい。
【０２８４】
さらに、上記の実施の形態において、更新範囲規制手段は、カウンタ１２１から入力されたカウント値Ｃと乱数最大値設定レジスタ１３５に格納されている乱数最大値設定データにより指定される乱数最大値とを比較し、入力されたカウント値Ｃが乱数最大値以下のとき、入力されたカウント値Ｃを乱数値記憶回路１３１に出力し、入力されたカウント値Ｃが乱数最大値より大きいとき、カウント値更新信号をカウンタ１２１に出力する比較器１２２であった。しかしながら、本発明は、これに限定されず、更新範囲規制手段は、乱数最大値設定レジスタ１３５に格納されている乱数最大値設定データに応じて、所定の演算を行い、カウント値の更新範囲を規制するもの等、任意である。
【０２８５】
例えば図４１に示すように、更新範囲規制手段は、カウンタ１２１から入力されたカウント値Ｃが「０」〜「９９」で、乱数最大値設定レジスタ１３５に格納されている乱数最大値設定データにより指定される乱数最大値「９」の場合、入力カウント値「０」〜「９」のときカウント値「０」を、入力カウント値「１０」〜「１９」のときカウント値「１」を、…、入力カウント値「９０」〜「９９」のときカウント値「９」を、出力することにより、カウント値の更新範囲を「９」に規制するものであってもよい。
【０２８６】
また、上記の実施の形態において、乱数値記憶回路１３１から読み出したランダムＲの値を、大当りを発生させてパチンコ遊技機１を大当り遊技状態とするか否かを決定する大当り判定用の乱数として用いるものとして説明した。しかしながら、本発明は、これに限定されず、この読み出したランダムＲの値を、何に用いるかは任意であり、ハズレ時にリーチするか否かを決定するリーチ判定用の乱数、特別図柄及び飾り図柄の可変表示に用いる可変表示パターンを決定するための表示用の乱数、大当り時における特別図柄の確定図柄を決定するための表示用の乱数、ハズレ時における特別図柄の確定図柄を決定するための表示用の乱数、大当りを生じさせる確率が向上している高確率状態（特別遊技状態）とするか否かを決定する確変判定用の乱数や、普通図柄表示器４０による普通図ゲームにおける表示結果を当りとするか否かを決定する普通図当り判定用の乱数などに用いてもよい。但し、ここに挙げた乱数の全てを乱数回路１０３を用いて更新する必要はなく、一部の乱数を乱数回路１０３を用いずに更新してもよい。例えば、これらの乱数のうちの一部を、遊技制御割込処理中に所定のプログラムを実行することによって、更新してもよく、また、リフレッシュレジスタを用いた乱数の更新方式を併用してもよい。さらに、乱数値記憶回路１３１から読み出したランダムＲの値と、遊技制御割込処理中に所定のプログラムを実行することによって更新した乱数の値及び／又はリフレッシュレジスタを用いて更新した乱数の値と、を加算、減算、積算、乗算、除算するなど、演算して得られた値を、大当り、リーチ、可変パターン等の決定用の乱数として用いてもよい。
【０２８７】
上記の実施の形態において、ＣＰＵ１０６は、遊技制御メイン処理において、ステップＳ８による遊技状態復旧処理又はＳ９による初期化処理の後、ステップＳ１１によるＣＴＣ１０７によるタイマ割込みのための設定をする前に、乱数回路設定処理を実行していたが、本発明は、これに限定されず、電力供給が開始された後、ループ処理に移行する前であれば任意であり、例えば、ステップＳ１にて割込禁止に設定した直後に行ってもよく、ステップＳ２にて割込モードをモード２に設定した直後に行ってもよい。また、ステップＳ３にてスタックポインタにスタックポインタ指定アドレスを設定した直後、ステップＳ４にてＣＴＣ１０７などのレジスタ設定を行った直後や、ステップＳ１１にてタイマ割込みのための設定をした直後に行ってもよい。
【０２８８】
さらに、上記実施の形態において、ＣＰＵ１０６は、図３０に示す遊技制御割込処理において、ステップＳ１０５によるカウント値順列変更処理の後、ステップＳ１０６による特別図柄プロセス処理の前に、乱数値更新処理を実行していたが、本発明は、これに限定されず、遊技制御割込処理中であれば任意であり、例えば、ステップＳ１０３による表示用乱数更新処理の前に、乱数値更新処理を実行してもよい。また、乱数値更新処理を、ステップＳ１０３による表示用乱数更新処理の後、ステップＳ１０４による初期値変更処理の前に、行ってもよく、さらには、ステップＳ１０４による初期値変更処理の後、ステップＳ１０５によるカウント値順列変更処理の前に、行ってもよい。
【０２８９】
また、上記実施の形態において、ＣＰＵ１０６は、入賞時に、乱数値取込データ「０１ｈ」を乱数値取込レジスタ１３９に書き込んで、乱数値記憶回路１３１に格納されているランダムＲの値を更新させていた。しかしながら、本発明は、これに限定されず、タイマ割込毎に、乱数値取込データ「０１ｈ」を乱数値取込レジスタ１３９に書き込んで、乱数値記憶回路１３１に格納されているランダムＲの値を更新させてもよい。
【０２９０】
さらに、上記の実施の形態において、ユーザプログラム実行データエリアの１Ｆ９７ｈ番地の領域に第３の初期値変更方式を指定する初期値変更方式設定データ「０３ｈ」が記憶されている場合、ＣＰＵ１０６は、カウンタ１２１が更新するカウント値Ｃの初期値を、ＲＡＭ１０５の各番地に格納されている値の加算値に変更させた。しかしながら、本発明は、これに限定されず、初期値変更方式設定データ「０３ｈ」が記憶されている場合に、変更される値は、ＲＡＭ１０５の予め定められた番地に格納されている値に基づくものであれば、任意である。例えば、ＣＰＵ１０６は、カウンタ１２１が更新するカウント値Ｃの初期値を、ＲＡＭ１０５の各番地に格納されている値の積算値や乗算値等に変更させてもよい。
【０２９１】
また、上記実施の形態において、乱数値記憶回路１３１は、ＡＮＤ回路２０１，２０３やＯＲ回路２２１〜２２８などの論理回路を用いてラッチ信号ＳＬ及び出力制御信号ＳＣの受信制御，ランダムＲの出力制御などのイネイブル／ディセイブル制御を行っていた。しかしながら、本発明は、これに限定されず、乱数値記憶回路１３１は、Ｉ／Ｏポート１０８やラッチ信号生成回路１３３との間にＦＥＴ（Field Effect Transistor）などのスイッチング素子を設け、ラッチ信号ＳＬや出力制御信号ＳＣの入力に応答して、Ｉ／Ｏポート１０８やラッチ信号生成回路１３３との経路を導通、遮断することにより、ラッチ信号ＳＬや出力制御信号ＳＣのイネイブル／ディセイブル制御を行ってもよい。
【０２９２】
上記実施の形態において、タイマ回路１３４は、ハイレベルの信号が入力されたことに応答して起動し、入力がハイレベルとなっている間、クロック回路１０１から順次入力される基準クロック信号ＣＬＫをアップカウント又はダウンカウントし、アップカウント又はダウンカウントした値が、所定の時間に対応する値となったとき、入力された信号をハイレベルの信号であると判定して乱数値取込レジスタ１３９に乱数値取込データ「０１ｈ」を書き込むものであった。しかしながら、本発明は、これに限定されず、タイマ回路１３４は、始動入賞口スイッチ７０から始動入賞信号ＳＳが入力されている時間を計測し、計測した時間が所定の時間になったとき、始動入賞信号ＳＳを出力するものであれば任意である。
【０２９３】
さらに、上記実施の形態において、タイマ回路１３４は、クロック回路１０１から順次入力される基準クロック信号ＣＬＫを用いて信号の入力時間を計測していたが、本発明は、これに限定されず、タイマ回路１３４は、基準クロック信号ＣＬＫを分周したクロック信号や、クロック回路１０１とは異なるクロック信号生成回路から出力されるクロック信号を用いてもよい。また、上記実施の形態において、タイマ回路１３４には、所定の時間として３ｍｓが設定されていたが、本発明は、これに限定されず、２回のタイマ割込処理の実行時間である４ｍｓよりも短い時間であれば任意に設定可能である。
【０２９４】
また、上記実施の形態において、ＣＰＵ１０６は、２回のタイマ割込処理が実行されている間、始動入賞信号ＳＳが継続して入力されたことに基づいて、入賞処理を実行していた。しかしながら、本発明は、これに限定されず、上述したタイマ割込処理の実行回数は、任意であり、例えば、ＣＰＵ１０６は、３回のタイマ割込処理が実行されている間、始動入賞信号ＳＳが継続して入力されたことに基づいて、入賞処理を実行してもよい。この場合、タイマ回路１３４には、３回のタイマ割込処理の実行時間である６ｍｓよりも短い時間を設定すればよい。
【０２９５】
さらに、上記の実施の形態において、乱数回路１０３を内蔵する遊技機は、可変表示の実行条件（例えば普通可変入賞球装置６への入賞）が成立した後に可変表示の開始条件（例えば可変表示装置４における前回の可変表示及び大当り遊技状態の終了）が成立したことに基づいて、各々が識別可能な複数種類の識別情報を可変表示する可変表示装置（例えば可変表示装置４）を備え、可変表示の表示結果が予め定められた特定表示結果となったときに、遊技者にとって有利な特定遊技状態（例えば大当り遊技状態）に制御する遊技機であった。
【０２９６】
しかしながら、本発明は、これに限定されず、例えば、乱数回路１０３を内蔵する遊技機は、遊技領域に設けられた始動領域にて遊技媒体を検出する始動検出手段（例えば始動玉検出器）の検出により、遊技者にとって不利な第２の状態から遊技者にとって有利な第１の状態となる始動動作（例えば開放動作）を行う可変入賞装置（例えば可変入賞球装置）を有し、可変入賞装置に設けられた特定領域にて遊技媒体を検出する特定検出手段（例えば特定玉検出器）の検出により、始動動作よりも遊技者にとってさらに有利な特定の態様で可変入賞装置を第１の状態に制御する特定遊技状態（例えば大当り遊技状態）を発生させるパチンコ遊技機であってもよい。
【０２９７】
この場合、乱数値記憶回路１３１から読み出したランダムＲの値を、特定遊技状態（例えば大当り遊技状態）におけるラウンド（例えば所定の開閉部材により所定の入賞口を遊技者にとって有利な特定態様で開口させる動作）の継続上限回数の判定や、可変入賞装置（例えば可変入賞球装置）の内部構造変化に関わる判定用乱数として用いることができる。
【０２９８】
また、乱数回路１０３を内蔵する遊技機は、特別領域（例えば特別装置作動領域）に設けられた特別検出手段（例えば特定球検出スイッチや特別領域スイッチ）で遊技球が検出されたことを条件に権利発生状態となり、権利発生状態となっている期間中に、始動領域（例えば作動入賞口や始動入賞装置における始動口）に設けられた始動検出手段（例えば作動球検出スイッチや始動口スイッチ）により遊技球が検出されたことに基づいて、特別可変入賞装置（例えば大入賞口）を遊技者にとって不利な状態（例えば閉鎖状態）から遊技者にとって有利な状態（例えば開放状態）に変化させる制御を行うことが可能なパチンコ遊技機であってもよい。
【０２９９】
こうしたパチンコ遊技機が、入賞することにより権利発生状態を発生させる入賞装置の開閉に関わる表示結果を表示する可変表示装置を備える遊技機である場合、乱数値記憶回路１３１から読み出した乱数を、普通図柄の事前判定用乱数として用いることができる。さらに、この種のパチンコ遊技機が、可変表示装置にて特定の表示結果が表示されたときに、可変表示装置に特定の表示結果を導出させる起因となった遊技媒体を、権利発生状態を発生させる特定検出装置に遊技球を誘導する誘導装置を備える遊技機である場合、乱数値記憶回路１３１から読み出した乱数を、判定図柄の事前判定用乱数として用いることができる。
【０３００】
さらに、本発明の遊技機は、図４２に示す、１ゲームに対して賭け数を設定することによりゲームを開始させることが可能となり、可変表示装置（例えば可変表示装置１００２）の表示結果が導出表示されることにより１ゲームが終了し、該可変表示装置の表示結果に応じて所定の入賞が発生可能であるスロットマシン（例えばスロットマシン１０００）であってもよい。図４２に示すスロットマシン１０００は、本発明の始動信号出力手段として、遊技者によりスタートレバー１０１１が操作されたことに基づいて所定の始動信号を遊技制御手段（例えば主基板）や乱数発生手段（例えば乱数発生回路）に出力する図示しないスタートスイッチを備えている。なお、図４２に示す液晶表示器１００１は、演出手段として機能するものである。
【０３０１】
また、本発明の遊技機は、パチンコ遊技機等の弾球遊技機において画像表示装置を有するものであれば、例えば、一般電役機、又はパチコンと呼ばれる確率設定機能付き弾球遊技機等であっても構わない。さらには、プリペイドカードによって球貸しを行うＣＲ式パチンコ遊技機だけではなく、現金によって球貸しを行うパチンコ遊技機にも適用可能である。すなわち、ＬＣＤ等からなる画像表示装置を有し、識別情報としての図柄を可変表示することが可能な遊技機であれば、どのような形態のものであっても構わない。また、本発明は、入賞球の検出に応答して所定数の賞球を払い出す払出式遊技機に限定されるものではなく、遊技球を封入し入賞球の検出に応答して得点を付与する封入式遊技機にも適用することができる。
【０３０２】
図１、図２及び図４２に示した装置構成、図３、図４、図２５及び図３８に示すブロック構成、図５、図８、図１０〜図１５に示すレジスタ構成、図１８及び図１９に示すアドレスマップ、図２１、図２２に示すプログラム構成、図６、図２６に示すテーブル構成、図１６に示す回路構成、図２７、図２８、図３０〜図３５、図３７、図４０に示すフローチャート構成や、図２９、図３６、図３９に示すタイミングチャート構成等は、発明の趣旨を逸脱しない範囲で任意に変更及び修正が可能である。
【０３０３】
また、パチンコ遊技機１の動作をシミュレーションするゲーム機などにも本発明を適用することができる。本発明を実現するためのプログラム及びデータは、コンピュータ装置等に対して、着脱自在の記録媒体により配布・提供される形態に限定されるものではなく、予めコンピュータ装置等の有する記憶装置にプリインストールしておくことで配布される形態を採っても構わない。さらに、本発明を実現するためのプログラム及びデータは、通信処理部を設けておくことにより、通信回線等を介して接続されたネットワーク上の、他の機器からダウンロードすることによって配布する形態を採っても構わない。
【０３０４】
そして、ゲームの実行形態も、着脱自在の記録媒体を装着することにより実行するものだけではなく、通信回線等を介してダウンロードしたプログラム及びデータを、内部メモリ等にいったん格納することにより実行可能とする形態、通信回線等を介して接続されたネットワーク上における、他の機器側のハードウェア資源を用いて直接実行する形態としてもよい。さらには、他のコンピュータ装置等とネットワークを介してデータの交換を行うことによりゲームを実行するような形態とすることもできる。
【図面の簡単な説明】
【０３０５】
【図１】本発明の実施の形態におけるパチンコ遊技機の正面図である。
【図２】本発明の実施の形態におけるパチンコ遊技機の背面図である。
【図３】主基板における回路構成等を示すブロック図である。
【図４】乱数回路の一構成例を示すブロック図である。
【図５】更新規則選択レジスタの構成例を示す図である。
【図６】更新規則メモリの構成例を示す図である。
【図７】カウント値順列変更回路によるカウント値の順列の変更動作の説明図である。
【図８】カウント値順列変更レジスタの構成例を示す図である。
【図９】カウンタ及び比較器によるカウント値の更新動作の説明図である。
【図１０】乱数最大値設定レジスタの構成例を示す図である。
【図１１】周期設定レジスタの構成例を示す図である。
【図１２】カウント値更新レジスタの構成例を示す図である。
【図１３】乱数値取込レジスタの構成例を示す図である。
【図１４】（Ａ）は、乱数更新方式選択レジスタの構成例を示す図であり、（Ｂ）は、乱数更新方式選択データの説明図である。
【図１５】乱数回路起動レジスタの構成例を示す図である。
【図１６】乱数値記憶回路の構成例を示す図である。
【図１７】乱数値記憶回路の動作を説明するためのタイミングチャートである。
【図１８】遊技制御用マイクロプロセッサにおけるアドレスマップの一例を示す図である。
【図１９】ＲＯＭにおけるアドレスマップの一例を示す図である。
【図２０】初期値変更方式選択データの説明図である。
【図２１】ユーザプログラムの構成例を示す図である。
【図２２】乱数回路設定プログラムの構成例を示す図である。
【図２３】第１の乱数更新方式が選択されているときのＣＰＵによるランダム値の更新動作の説明図である。
【図２４】第２の乱数更新方式が選択されているときのＣＰＵによるランダム値の更新動作の説明図である。
【図２５】遊技制御用マイクロプロセッサの構成例を示すブロック図である。
【図２６】大当り判定テーブルの構成例を示す図である。
【図２７】遊技制御メイン処理を示すフローチャートである。
【図２８】乱数回路設定処理を示すフローチャートである。
【図２９】乱数回路の動作を説明するためのタイミングチャートである。
【図３０】遊技制御割込処理を示すフローチャートである。
【図３１】図３０における初期値変更処理のフローチャートである。
【図３２】特別図柄プロセス処理を示すフローチャートである。
【図３３】図３２における入賞処理の詳細を示すフローチャートである。
【図３４】図３２における大当り判定処理の詳細を示すフローチャートである。
【図３５】図２８における乱数回路設定処理の変形例を示すフローチャートである。
【図３６】乱数回路の動作を説明するためのタイミングチャートである。
【図３７】図３０における遊技制御割込処理の変形例を示すフローチャートである。
【図３８】乱数回路の他の構成例を示すブロック図である。
【図３９】図３８に示す乱数回路の動作を説明するためのタイミングチャートである。
【図４０】図３２における特別図柄プロセス処理の変形例を示すフローチャートである。
【図４１】図９に示すカウント値の更新動作の変形例の説明図である。
【図４２】スロットマシンの正面図である。
【符号の説明】
【０３０６】
１  …  パチンコ遊技機
２  …  遊技盤
３  …  遊技機用枠
４  …  可変表示装置
６  …  普通可変入賞球装置
７  …  特別可変入賞球装置
８Ｌ，８Ｒ…  スピーカ
９  …  遊技効果ランプ
１０  …  電源基板
１１  …  主基板
１２  …  表示制御基板
１３  …  音声制御基板
１４  …  ランプ制御基板
１５  …  払出制御基板
１６  …  情報端子基板
２１，２２  …  ソレノイド
４０  …  普通図柄表示器
７０  …  始動入賞口スイッチ
１００  …  遊技制御用マイクロプロセッサ
１０１  …  クロック回路
１０２  …  リセットコントローラ
１０３  …  乱数回路
１０４  …  ＲＯＭ
１０５  …  ＲＡＭ
１０６  …  ＣＰＵ
１０７  …  ＣＴＣ
１０８  …  Ｉ／Ｏポート
１０９  …  スイッチ回路
１１０  …  ソレノイド回路
１２１  …  カウンタ
１２２  …  比較器
１２３  …  カウント値順列変更回路
１２４  …  クロック信号出力回路
１２５  …  カウント値更新信号出力回路
１２６  …  乱数値読取信号出力回路
１２７  …  乱数更新方式選択信号出力回路
１２８  …  セレクタ
１３０  …  乱数回路起動信号出力回路
１３１  …  乱数値記憶回路
１３２  …  反転回路
１３３  …  ラッチ信号生成回路
１３４  …  タイマ回路
１３５  …  乱数最大値設定レジスタ
１３６  …  カウント値順列変更レジスタ
１３７  …  周期設定レジスタ
１３８  …  カウント値更新レジスタ
１３９  …  乱数値取込レジスタ
１４０  …  乱数更新方式選択レジスタ
１４１  …  乱数回路起動レジスタ
１４２  …  更新規則選択レジスタ
１４３  …  更新規則メモリ
１５０  …  ユーザプログラム
１５１  …  乱数回路設定プログラム
１５１ａ…  乱数最大値設定モジュール
１５１ｂ…  乱数更新方式選択モジュール
１５１ｃ…  周期設定モジュール
１５１ｄ…  乱数回路起動モジュール
１５２  …  表示結果決定プログラム
１５３  …  初期値変更プログラム
１５４  …  カウント値順列変更プログラム
１７０  …  特図保留メモリ
１７１  …  大当り判定用テーブルメモリ
１７１ａ…  通常時大当り判定テーブル
１７１ｂ…  確変時大当り判定テーブル
１７２  …  フラグメモリ
２０１，２０３  …  ＡＮＤ回路
２０２，２０４  …  ＮＯＴ回路
２１１〜２１８  …  フリップフロップ回路
２２１〜２２８  …  ＯＲ回路
１０００  …  スロットマシン
１００１  …  液晶表示器
１００２  …  可変表示装置
１０１１  …  スタートレバー
【図１】
0004671604.tif 000002
【図２】
0004671604.tif 000003
【図３】
0004671604.tif 000004
【図４】
0004671604.tif 000005
【図５】
0004671604.tif 000006
【図６】
0004671604.tif 000007
【図７】
0004671604.tif 000008
【図８】
0004671604.tif 000009
【図９】
0004671604.tif 000010
【図１０】
0004671604.tif 000011
【図１１】
0004671604.tif 000012
【図１２】
0004671604.tif 000013
【図１３】
0004671604.tif 000014
【図１４】
0004671604.tif 000015
【図１５】
0004671604.tif 000016
【図１６】
0004671604.tif 000017
【図１７】
0004671604.tif 000018
【図１８】
0004671604.tif 000019
【図１９】
0004671604.tif 000020
【図２０】
0004671604.tif 000021
【図２１】
0004671604.tif 000022
【図２２】
0004671604.tif 000023
【図２３】
0004671604.tif 000024
【図２４】
0004671604.tif 000025
【図２５】
0004671604.tif 000026
【図２６】
0004671604.tif 000027
【図２７】
0004671604.tif 000028
【図２８】
0004671604.tif 000029
【図２９】
0004671604.tif 000030
【図３０】
0004671604.tif 000031
【図３１】
0004671604.tif 000032
【図３２】
0004671604.tif 000033
【図３３】
0004671604.tif 000034
【図３４】
0004671604.tif 000035
【図３５】
0004671604.tif 000036
【図３６】
0004671604.tif 000037
【図３７】
0004671604.tif 000038
【図３８】
0004671604.tif 000039
【図３９】
0004671604.tif 000040
【図４０】
0004671604.tif 000041
【図４１】
0004671604.tif 000042
【図４２】
0004671604.tif 000043