(57)【特許請求の範囲】
【請求項１】
遊技者が所定の遊技を行うことが可能な遊技機であって、
定期的に発生するタイマ割込が発生したことにもとづいて遊技の進行を制御する遊技制御処理を定期的に実行するとともに、該遊技制御処理において、遊技に供される電気部品を制御させるためのコマンドとしてのコマンドデータを出力し、コマンドデータ出力開始後所定の期間が経過した後にコマンドデータの取込を指示する取込信号を出力するコマンド出力処理を実行するコマンド出力手段を含む遊技制御手段と、
前記遊技制御手段からのコマンドに応じて前記電気部品を制御するための複数の電気部品制御手段とを備え、
一つのコマンドは、複数のコマンドデータで構成され、
前記コマンド出力手段は、前記コマンド出力処理において、一のコマンドデータを出力して取込信号を出力し、該取込信号を出力した後、所定期間経過後に次のコマンドデータを出力して取込信号を出力し、前記複数の電気部品制御手段に対するコマンドデータおよび取込信号を同一のコマンド出力サブルーチンをコールして出力し、
前記所定期間を、前記複数の電気部品制御手段のそれぞれがコマンドデータを受信するために要する期間のうちの最大の期間以上の期間とし、
前記コマンド出力手段は、取込信号を出力した後、前記所定期間が経過するまでコマンドデータの出力を維持し、
前記コマンド出力手段は、前記電気部品制御手段に対して、１回の前記遊技制御処理内で一のコマンドデータと次のコマンドデータとをともに出力し、
前記電気部品制御手段は、所定周期で発生するタイマ割込に応じた定期割込処理、および前記遊技制御手段からの取込信号に応じて発生するコマンド受信割込に応じたコマンド受信処理を含む割込処理を実行し、
前記コマンド受信処理は、前記定期割込処理よりも優先して実行される
ことを特徴とする遊技機。
【請求項２】
電気部品制御手段は、コマンド受信処理が終了するまではマスク可能な割込の発生を許可しない
請求項１記載の遊技機。
【請求項３】
コマンド受信処理は、定期割込処理を中断して実行可能である
請求項１または請求項２記載の遊技機。
【請求項４】
割込処理には、割込禁止解除処理が含まれる
請求項１から請求項３のうちのいずれかに記載の遊技機。
【請求項５】
コマンド受信処理を含む割込処理では、最後に割込禁止解除処理が実行される
請求項４記載の遊技機。
【請求項６】
定期割込処理では、最初に割込禁止解除処理が実行される
請求項４記載の遊技機。
【請求項７】
コマンド受信処理には、入力されたコマンドが適正であるか否かを判定するコマンド判定処理が含まれる
請求項１から請求項６のうちのいずれかに記載の遊技機。
【請求項８】
遊技制御手段は、発生要因が異なる複数の制御について、１回の遊技制御処理内で複数のコマンドを出力することが可能である
請求項１から請求項７のうちのいずれかに記載の遊技機。
【請求項９】
遊技制御手段は、取込信号を出力する場合に、所定時間のオンデータと所定時間のオフデータとを出力する
請求項１から請求項８のうちのいずれかに記載の遊技機。
【請求項１０】
電気部品制御手段は、遊技制御手段からのコマンドに応じて払出装置を制御する払出制御手段を含み、
遊技制御手段は、所定の入賞に応じて、前記払出装置から払い出すべき遊技媒体数を特定可能なコマンドを前記払出制御手段に対して出力可能であり、
前記払出制御手段は、入賞に応じた遊技媒体の払い出しと、貸出要求に応じた遊技媒体の払い出しとを単一の前記払出装置により払い出す制御を行う
請求項１から請求項９のうちのいずれかに記載の遊技機。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、遊技者の操作に応じて遊技が行われるパチンコ遊技機、コイン遊技機、スロット機等の遊技機に関する。
【０００２】
【従来の技術】
遊技機の一例として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示部が設けられ、可変表示部の表示結果があらかじめ定められた特定の表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
【０００３】
遊技価値とは、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることや、景品遊技媒体払出の条件が成立しやすくなる状態になることである。
【０００４】
特別図柄を表示する可変表示部を備えた第１種パチンコ遊技機では、特別図柄を表示する可変表示部の表示結果があらかじめ定められた特定の表示態様の組合せとなることを、通常、「大当り」という。大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個（例えば１０個）の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数（例えば１６ラウンド）に固定されている。なお、各開放について開放時間（例えば２９．５秒）が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件（例えば、大入賞口内に設けられているＶゾーンへの入賞）が成立していない場合には、大当り遊技状態は終了する。
【０００５】
また、「大当り」の組合せ以外の表示態様の組合せのうち、複数の可変表示部の表示結果のうちの一部が未だに導出表示されていない段階において、既に確定的な、または一時的な表示結果が導出表示されている可変表示部の表示態様が特定の表示態様の組合せとなる表示条件を満たしている状態を「リーチ」という。そして、可変表示部に可変表示される識別情報の表示結果が「大当り」となる条件を満たさない場合には「はずれ」となり、可変表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
【０００６】
遊技機における遊技進行はマイクロコンピュータ等による遊技制御手段によって制御される。可変表示装置に表示される識別情報、キャラクタ画像および背景画像は、遊技制御手段からの表示制御コマンドデータに従って動作する表示制御手段によって制御される。可変表示装置に表示される識別情報、キャラクタ画像および背景画像は、一般に、表示制御用のマイクロコンピュータとマイクロコンピュータの指示に応じて画像データを生成して可変表示装置側に転送するビデオディスプレイプロセッサ（ＶＤＰ）とによって制御されるが、表示制御用のマイクロコンピュータのプログラム容量は大きい。
【０００７】
従って、プログラム容量に制限のある遊技制御手段のマイクロコンピュータで可変表示装置に表示される識別情報等を制御することはできず、遊技制御手段のマイクロコンピュータとは別の表示制御用のマイクロコンピュータ（表示制御手段）が用いられる。よって、遊技の進行を制御する遊技制御手段は、表示制御手段に対して表示制御のためのコマンドを送信する必要がある。
【０００８】
また、そのような遊技機では、遊技盤にスピーカが設けられ、遊技効果を増進するために遊技の進行に伴ってスピーカから種々の効果音が発せられる。また、遊技盤にランプやＬＥＤ等の発光体が設けられ、遊技効果を増進するために遊技の進行に伴ってそれらの発光体が点灯されたり消灯されたりする。効果音を発生する音声制御やランプ点灯／滅灯のタイミング制御は、遊技の進行を制御する遊技制御手段によって行われる。よって、遊技制御手段とは別に、音発生やランプ・ＬＥＤ駆動を行う音声制御手段やランプ制御手段が設けられている場合には、遊技制御手段は、それらの制御手段に対してコマンドを送信する必要がある。
【０００９】
そして、遊技球が遊技盤に設けられている入賞口に遊技球が入賞すると、あらかじめ決められている個数の賞球払出が行われる。遊技の進行は主基板に搭載された遊技制御手段によって制御されるので、入賞にもとづく賞球個数は、遊技制御手段によって決定され、払出制御基板に送信される。なお、以下、遊技制御手段およびその他の制御手段は、遊技機に設けられている各種電気部品を制御するので、それらを電気部品制御手段と呼ぶことがある。
【００１０】
【発明が解決しようとする課題】
以上のように、遊技制御手段とは別体に種々の電気部品制御手段が設けられている場合には、遊技制御手段から各電気部品制御手段に制御コマンドを送信しなければならない。また、各電気部品制御手段は受信した制御コマンドにもとづく種々の処理を行うのであるが、制御コマンドは遊技制御手段の処理にもとづいて発生するので、遊技制御手段とは独立して動作している電気部品制御手段の処理実行中のどの段階でも制御コマンドが送出されうる。すなわち、決まったタイミングで制御コマンドが送出されてくるというのではなく、電気部品制御手段の動作中に突然に制御コマンドが送出されてくる。制御コマンドの受信を誤ると電気部品制御手段が本来行わなければならない制御に支障を来すので、各電気部品制御手段は、遊技制御手段から制御コマンドを確実に受信する必要がある。
【００１１】
そこで、本発明は、遊技制御手段から他の電気部品制御手段に対してコマンドが送出される構成の遊技機において、電気部品制御手段が確実にコマンドを受信することができる遊技機を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明による遊技機は、遊技者が所定の遊技を行うことが可能な遊技機であって、定期的に発生するタイマ割込が発生したことにもとづいて遊技の進行を制御する遊技制御処理を定期的に実行するとともに、遊技制御処理において、遊技に供される電気部品を制御させるためのコマンドとしてのコマンドデータを出力し、コマンドデータ出力開始後所定の期間が経過した後にコマンドデータの取込を指示する取込信号を出力するコマンド出力処理を実行するコマンド出力手段を含む遊技制御手段と、遊技制御手段からのコマンドに応じて電気部品を制御するための複数の電気部品制御手段とを備え、一つのコマンドは、複数のコマンドデータで構成され、コマンド出力手段は、コマンド出力手段は、コマンド出力処理において、一のコマンドデータを出力して取込信号を出力し、取込信号を出力した後、所定期間経過後に次のコマンドデータを出力して取込信号を出力し、複数の電気部品制御手段に対するコマンドデータおよび取込信号を同一のコマンド出力サブルーチンをコールして出力し、所定期間を、複数の電気部品制御手段のそれぞれがコマンドデータを受信するために要する期間のうちの最大の期間以上の期間とし、コマンド出力手段は、取込信号を出力した後、所定期間が経過するまでコマンドデータの出力を維持し、コマンド出力手段は、電気部品制御手段に対して、１回の遊技制御処理内で一のコマンドデータと次のコマンドデータとをともに出力し、電気部品制御手段が、所定周期で発生するタイマ割込に応じた定期割込処理、および遊技制御手段からの取込信号に応じて発生するコマンド受信割込に応じたコマンド受信処理を含む割込処理を実行し、コマンド受信処理は、定期割込処理よりも優先して実行されることを特徴とする。
【００１３】
電気部品制御手段が、コマンド受信処理が終了するまではマスク可能割込の発生を許可しないように構成されていてもよい。
【００１４】
コマンド受信処理は、定期割込処理を中断して実行可能であるように構成されていてもよい。
【００１５】
割込処理には、割込禁止解除処理が含まれるように構成されていてもよい。
【００１６】
コマンド受信処理を含む割込処理では、最後に割込禁止解除処理が実行されるように構成されていてもよい。
【００１７】
定期割込処理では、最初に割込禁止解除処理が実行されるように構成されていてもよい。
【００１８】
コマンド受信処理には、入力されたコマンドが適正であるか否かを判定するコマンド判定処理が含まれていてもよい。
【００２０】
遊技制御手段が、発生要因が異なる複数の制御について、１回の遊技制御処理内で複数のコマンドを出力することが可能であるように構成されていてもよい。
【００２１】
遊技制御手段が、取込信号を出力する場合に、所定時間のオンデータと所定時間のオフデータとを出力するように構成されていてもよい。
【００２３】
【発明の実施の形態】
以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図１はパチンコ遊技機１を正面からみた正面図である。なお、ここでは、遊技機の一例としてパチンコ遊技機を示すが、本発明はパチンコ遊技機に限られず、例えばコイン遊技機やスロット機等であってもよい。
【００２４】
図１に示すように、パチンコ遊技機１は、額縁状に形成されたガラス扉枠２を有する。ガラス扉枠２の下部表面には打球供給皿３がある。打球供給皿３の下部には、打球供給皿３からあふれた遊技球を貯留する余剰玉受皿４と打球を発射する打球操作ハンドル（操作ノブ）５が設けられている。ガラス扉枠２の後方には、遊技盤６が着脱可能に取り付けられている。また、遊技盤６の前面には遊技領域７が設けられている。
【００２５】
遊技領域７の中央付近には、複数種類の図柄を可変表示するための可変表示部（特別図柄表示装置）９と７セグメントＬＥＤによる普通図柄表示器（普通図柄表示装置）１０とを含む可変表示装置８が設けられている。可変表示部９には、例えば「左」、「中」、「右」の３つの図柄表示エリアがある。可変表示装置８の側部には、打球を導く通過ゲート１１が設けられている。通過ゲート１１を通過した打球は、玉出口１３を経て始動入賞口１４の方に導かれる。通過ゲート１１と玉出口１３との間の通路には、通過ゲート１１を通過した打球を検出するゲートスイッチ１２がある。また、始動入賞口１４に入った入賞球は、遊技盤６の背面に導かれ、始動口スイッチ１７によって検出される。また、始動入賞口１４の下部には開閉動作を行う可変入賞球装置１５が設けられている。可変入賞球装置１５は、ソレノイド１６によって開状態とされる。
【００２６】
可変入賞球装置１５の下部には、特定遊技状態（大当り状態）においてソレノイド２１によって開状態とされる開閉板２０が設けられている。この実施の形態では、開閉板２０が大入賞口を開閉する手段となる。開閉板２０から遊技盤６の背面に導かれた入賞球のうち一方（Ｖゾーン）に入った入賞球はＶ入賞スイッチ２２で検出される。また、開閉板２０からの入賞球はカウントスイッチ２３で検出される。可変表示装置８の下部には、始動入賞口１４に入った入賞球数を表示する４個の表示部を有する始動入賞記憶表示器１８が設けられている。この例では、４個を上限として、始動入賞がある毎に、始動入賞記憶表示器１８は点灯している表示部を１つずつ増やす。そして、可変表示部９の可変表示が開始される毎に、点灯している表示部を１つ減らす。
【００２７】
遊技盤６には、複数の入賞口１９，２４が設けられ、遊技球のそれぞれの入賞口１９，２４への入賞は、対応して設けられている入賞口スイッチ１９ａ，１９ｂ，２４ａ，２４ｂによって検出される。遊技領域７の左右周辺には、遊技中に点滅表示される装飾ランプ２５が設けられ、下部には、入賞しなかった打球を吸収するアウト口２６がある。また、遊技領域７の外側の左右上部には、効果音を発する２つのスピーカ２７が設けられている。遊技領域７の外周には、遊技効果ＬＥＤ２８ａおよび遊技効果ランプ２８ｂ，２８ｃが設けられている。
【００２８】
そして、この例では、一方のスピーカ２７の近傍に、賞球残数があるときに点灯する賞球ランプ５１が設けられ、他方のスピーカ２７の近傍に、補給球が切れたときに点灯する球切れランプ５２が設けられている。さらに、図１には、パチンコ遊技機１に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット５０も示されている。
【００２９】
カードユニット５０には、使用可能状態であるか否かを示す使用可表示ランプ１５１、カード内に記録された残額情報に端数（１００円未満の数）が存在する場合にその端数を打球供給皿３の近傍に設けられる度数表示ＬＥＤに表示させるための端数表示スイッチ１５２、カードユニット５０がいずれの側のパチンコ遊技機１に対応しているのかを示す連結台方向表示器１５３、カードユニット５０内にカードが投入されていることを示すカード投入表示ランプ１５４、記録媒体としてのカードが挿入されるカード挿入口１５５、およびカード挿入口１５５の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット５０を解放するためのカードユニット錠１５６が設けられている。
【００３０】
打球発射装置から発射された打球は、打球レールを通って遊技領域７に入り、その後、遊技領域７を下りてくる。打球が通過ゲート１１を通ってゲートスイッチ１２で検出されると、普通図柄表示器１０の表示数字が連続的に変化する状態になる。また、打球が始動入賞口１４に入り始動口スイッチ１７で検出されると、図柄の変動を開始できる状態であれば、可変表示部９内の図柄が回転を始める。図柄の変動を開始できる状態でなければ、始動入賞記憶を１増やす。
【００３１】
可変表示部９内の画像の回転は、一定時間が経過したときに停止する。停止時の画像の組み合わせが大当り図柄の組み合わせであると、大当り遊技状態に移行する。すなわち、開閉板２０が、一定時間経過するまで、または、所定個数（例えば１０個）の打球が入賞するまで開放する。そして、開閉板２０の開放中に打球が特定入賞領域に入賞しＶ入賞スイッチ２２で検出されると、継続権が発生し開閉板２０の開放が再度行われる。継続権の発生は、所定回数（例えば１５ラウンド）許容される。
【００３２】
停止時の可変表示部９内の画像の組み合わせが確率変動を伴う大当り図柄の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、高確率状態という遊技者にとってさらに有利な状態となる。また、普通図柄表示器１０における停止図柄が所定の図柄（当り図柄＝小当り図柄）である場合に、可変入賞球装置１５が所定時間だけ開状態になる。さらに、高確率状態では、普通図柄表示器１０における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置１５の開放時間と開放回数が高められる。
【００３３】
次に、パチンコ遊技機１の裏面に配置されている各基板について説明する。
図２に示すように、パチンコ遊技機１の裏面では、枠体２Ａ内の機構板の上部に玉貯留タンク３８が設けられ、パチンコ遊技機１が遊技機設置島に設置された状態でその上方から遊技球が球貯留タンク３８に供給される。球貯留タンク３８内の遊技球は、誘導樋３９を通って賞球ケース４０Ａで覆われる球払出装置に至る。
【００３４】
遊技機裏面側では、可変表示部９を制御する可変表示制御ユニット２９、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板（主基板）３１が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板３７、およびモータの回転力を利用して打球を遊技領域７に発射する打球発射装置が設置されている。さらに、装飾ランプ２５、遊技効果ＬＥＤ２８ａ、遊技効果ランプ２８ｂ，２８ｃ、賞球ランプ５１および球切れランプ５２に信号を送るためのランプ制御基板３５、スピーカ２７からの音声発生を制御するための音声制御基板７０および打球発射装置を制御するための発射制御基板９１も設けられている。
【００３５】
さらに、ＤＣ３０Ｖ、ＤＣ２１Ｖ、ＤＣ１２ＶおよびＤＣ５Ｖを作成する電源回路が搭載された電源基板９１０が設けられ、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板１６０が設置されている。ターミナル基板１６０には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および球貸し個数信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板３１からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤３４が設置されている。なお、図２には、ランプ制御基板３５および音声制御基板７０からの信号を、枠側に設けられている遊技効果ＬＥＤ２８ａ、遊技効果ランプ２８ｂ，２８ｃ、賞球ランプ５１および球切れランプ５２に供給するための電飾中継基板Ａ７７が示されているが、信号中継の必要に応じて他の中継基板も設けられる。
【００３６】
図３はパチンコ遊技機１の機構板を背面からみた背面図である。球貯留タンク３８に貯留された玉は誘導樋３９を通り、図３に示されるように、球切れ検出器（球切れスイッチ）１８７ａ，１８７ｂを通過して球供給樋１８６ａ，１８６ｂを経て球払出装置９７に至る。球切れスイッチ１８７ａ，１８７ｂは遊技球通路内の遊技球の有無を検出するスイッチであるが、球タンク３８内の補給球の不足を検出する球切れ検出スイッチ１６７も設けられている。以下、球切れスイッチ１８７ａ，１８７ｂを、球切れスイッチ１８７と表現することがある。
【００３７】
球払出装置９７から払い出された遊技球は、連絡口４５を通ってパチンコ遊技機１の前面に設けられている打球供給皿３に供給される。連絡口４５の側方には、パチンコ遊技機１の前面に設けられている余剰玉受皿４に連通する余剰玉通路４６が形成されている。
【００３８】
入賞にもとづく景品球が多数払い出されて打球供給皿３が満杯になり、ついには遊技球が連絡口４５に到達した後さらに遊技球が払い出されると遊技球は、余剰玉通路４６を経て余剰玉受皿４に導かれる。さらに遊技球が払い出されると、感知レバー４７が満タンスイッチ４８を押圧して満タンスイッチ４８がオンする。その状態では、球払出装置９７内のステッピングモータの回転が停止して球払出装置９７の動作が停止するとともに打球発射装置の駆動も停止する。
【００３９】
次に、機構板３６に設置されている中間ベースユニットの構成について説明する。中間ベースユニットには、球供給樋１８６ａ，１８６ｂや球払出装置９７が設置される。図４に示すように、中間ベースユニットの上下には連結凹突部１８２が形成されている。連結凹突部１８２は、中間ベースユニットと機構板３６の上部ベースユニットおよび下部ベースユニットを連結固定するものである。
【００４０】
中間ベースユニットの上部には通路体１８４が固定されている。そして、通路体１８４の下部に球払出装置９７が固定されている。通路体１８４は、カーブ樋１７４（図３参照）によって流下方向を左右方向に変換された２列の遊技球を流下させる払出球通路１８６ａ，１８６ｂを有する。払出球通路１８６ａ，１８６ｂの上流側には、球切れスイッチ１８７ａ，１８７ｂが設置されている。球切れスイッチ１８７ａ，１８７ｂは、払出球通路１８６ａ，１８６ｂ内の遊技球の有無を検出するものであって、球切れスイッチ１８７ａ，１８７ｂが遊技球を検出しなくなると球払出装置９７における払出モータ（図４において図示せず）の回転を停止して球払出が不動化される。
【００４１】
なお、球切れスイッチ１８７ａ，１８７ｂは、払出球通路１８６ａ，１８６ｂに２７〜２８個程度の遊技球が存在することを検出できるような位置に係止片１８８によって係止されている。すなわち、球切れスイッチ１８７ａ，１８７ｂは、賞球の一単位の最大払出量（この実施の形態では１５個）および球貸しの一単位の最大払出量（この実施の形態では１００円：２５個）以上が確保されていることが確認できるような位置に設置されている。
【００４２】
通路体１８４の中央部は、内部を流下する遊技球の球圧を弱めるように、左右に湾曲する形状に形成されている。そして、払出球通路１８６ａ，１８６ｂの間に止め穴１８９が形成されている。止め穴１８９の裏面は中間ベースユニットに設けられている取付ボスがはめ込まれる。その状態で止めねじがねじ止めされて、通路体１８４は中間ベースユニットに固定される。なお、ねじ止めされる前に、中間ベースユニットに設けられている係止突片１８５によって通路体１８４の位置合わせを行えるようになっている。
【００４３】
通路体１８４の下方には、球払出装置９７に遊技球を供給するとともに故障時等には球払出装置９７への遊技球の供給を停止する球止め装置１９０が設けられている。球止め装置１９０の下方に設置される球払出装置９７は、直方体状のケース１９８の内部に収納されている。ケース１９８の左右４箇所には突部が設けられている。各突部が中間ベースユニットに設けられている位置決め突片に係った状態で、中間ベースユニットの下部に設けられている弾性係合片にケース１９８の下端がはめ込まれる。
【００４４】
図５は球払出装置９７の分解斜視図である。球払出装置９７の構成および作用について図５を参照して説明する。この実施形態における球払出装置９７は、ステッピングモータ（払出モータ）２８９がスクリュー２８８を回転させることによりパチンコ玉を１個ずつ払い出す。なお、球払出装置９７は、入賞にもとづく景品球だけでなく、貸し出すべき遊技球も払い出す。
【００４５】
図５に示すように、球払出装置９７は、２つのケース１９８ａ，１９８ｂを有する。それぞれのケース１９８ａ，１９８ｂの左右２箇所に、球払出装置９７の設置位置上部に設けられた位置決め突片に当接される係合突部２８０が設けられている。また、それぞれのケース１９８ａ，１９８ｂには、球供給路２８１ａ，２８１ｂが形成されている。球供給路２８１ａ，２８１ｂは湾曲面２８２ａ，２８２ｂを有し、湾曲面２８２ａ，２８２ｂの終端の下方には、球送り水平路２８４ａ，２８４ｂが形成されている。さらに、球送り水平路２８４ａ，２８４ｂの終端に球排出路２８３ａ，２８３ｂが形成されている。
【００４６】
球供給路２８１ａ，２８１ｂ、球送り水平路２８４ａ，２８４ｂ、球排出路２８３ａ，２８３ｂは、ケース１９８ａ，１９８ｂをそれぞれ前後に区画する区画壁２９５ａ，２９５ｂの前方に形成されている。また、区画壁２９５ａ，２９５ｂの前方において、玉圧緩衝部材２８５がケース１９８ａ，１９８ｂ間に挟み込まれる。玉圧緩衝部材２８５は、球払出装置９７に供給される玉を左右側方に振り分けて球供給路２８１ａ，２８１ｂに誘導する。
【００４７】
また、玉圧緩衝部材２８５の下部には、発光素子（ＬＥＤ）２８６と受光素子（図示せず）とによる払出モータ位置センサが設けられている。発光素子２８６と受光素子とは、所定の間隔をあけて設けられている。そして、この間隔内に、スクリュー２８８の先端が挿入されるようになっている。なお、玉圧緩衝部材２８５は、ケース１９８ａ，１９８ｂが張り合わされたときに、完全にその内部に収納固定される。
【００４８】
球送り水平路２８４ａ，２８４ｂには、払出モータ２８９によって回転させられるスクリュー２８８が配置されている。払出モータ２８９はモータ固定板２９０に固定され、モータ固定板２９０は、区画壁２９５ａ，２９５ｂの後方に形成される固定溝２９１ａ，２９１ｂにはめ込まれる。その状態で払出モータ２８９のモータ軸が区画壁２９５ａ，２９５ｂの前方に突出するので、その突出の前方にスクリュー２８８が固定される。スクリュー２８８の外周には、払出モータ２８９の回転によって球送り水平路２８４ａ，２８４ｂに載置された遊技球を前方に移動させるための螺旋突起２８８ａが設けられている。
【００４９】
そして、スクリュー２８８の先端には、発光素子２８６を収納するように凹部が形成され、その凹部の外周には、２つの切欠部２９２が互いに１８０度離れて形成されている。従って、スクリュー２８８が１回転する間に、発光素子２８６からの光は、切欠部２９２を介して受光素子で２回検出される。
【００５０】
つまり、発光素子２８６と受光素子とによる払出モータ位置センサは、スクリュー２８８を定位置で停止するためのものであり、かつ、払出動作が行われた旨を検出するものである。なお、発光素子２８６、受光素子および払出モータ２８９からの配線は、まとめられてケース１９８ａ，１９８ｂの後部下方に形成された引出穴から外部に引き出されコネクタに結線される。
【００５１】
遊技球が球送り水平路２８４ａ，２８４ｂに載置された状態において、払出モータ２８９が回転すると、スクリュー２８８の螺旋突起２８８ａによって、遊技球は、球送り水平路２８４ａ，２８４ｂ上を前方に向かって移動する。そして、遂には、球送り水平路２８４ａ，２８４ｂの終端から球排出路２８３ａ，２８３ｂに落下する。このとき、左右の球送り水平路２８４ａ，２８４ｂからの落下は交互に行われる。すなわち、スクリュー２８８が半回転する毎に一方から１個の遊技球が落下する。従って、１個の遊技球が落下する毎に、発光素子２８６からの光が受光素子によって検出される。
【００５２】
図４に示すように、球払出装置９７の下方には、球振分部材（切替部材）３１１が設けられている。球振分部材３１１は、振分ソレノイド３１０によって駆動される。例えば、ソレノイド３１０のオン時には、球振分部材３１１は右側に倒れ、オフ時には左側に倒れる。振分ソレノイド３１０の下方には、近接スイッチによる賞球カウントスイッチ３０１Ａおよび球貸しカウントスイッチ３０１Ｂが設けられている。入賞にもとづく賞球時には、球振分部材３１１は右側に倒れ、球排出路２８３ａ，２８３ｂからの玉はともに賞球カウントスイッチ３０１Ａを通過する。また、球貸し時には、球振分部材３１１は左側に倒れ、球排出路２８３ａ，２８３ｂからの玉はともに球貸しカウントスイッチ３０１Ｂを通過する。従って、球払出装置９７は、賞球時と球貸し時とで払出流下路を切り替えて、所定数の遊技媒体の払出を行うことができる。
【００５３】
このように、球振分部材３１１を設けることによって、２条の玉流路を落下してきた玉は、賞球カウントスイッチ３０１Ａと球貸しカウントスイッチ３０１Ｂとのうちのいずれか一方しか通過しない。従って、賞球であるのか球貸しであるのかの判断をすることなく、賞球カウントスイッチ３０１Ａと球貸しカウントスイッチ３０１Ｂの検出出力から、直ちに賞球数または球貸し数を把握することができる。
【００５４】
なお、この実施の形態では、電気的駆動源の駆動によって遊技球を払い出す球払出装置として、ステッピングモータの回転によって遊技球が払い出される球払出装置９７を用いることにするが、その他の駆動源によって遊技球を送り出す構造の球払出装置を用いてもよいし、ソレノイド等の電気的駆動源の駆動によってストッパを外し遊技球の自重によって払い出しがなされる構造の球払出装置を用いてもよい。また、この実施の形態では、球払出装置９７は賞球にもとづく景品球と貸出要求にもとづく貸し球の双方を払い出すが、それぞれについて払出装置が設けられていてもよい。
【００５５】
図６は、主基板３１における回路構成の一例を示すブロック図である。なお、図６には、払出制御基板３７、ランプ制御基板３５、音声制御基板７０、発射制御基板９１および図柄制御基板８０も示されている。主基板３１には、プログラムに従ってパチンコ遊技機１を制御する基本回路５３と、ゲートスイッチ１２、始動口スイッチ１７、Ｖ入賞スイッチ２２、カウントスイッチ２３、入賞口スイッチ１９ａ，１９ｂ，２４ａ，２４ｂ、満タンスイッチ４８、球切れスイッチ１８７および賞球カウントスイッチ３０１Ａからの信号を基本回路５３に与えるスイッチ回路５８と、可変入賞球装置１５を開閉するソレノイド１６、開閉板２０を開閉するソレノイド２１および大入賞口内の経路を切り換えるためのソレノイド２１Ａを基本回路５３からの指令に従って駆動するソレノイド回路５９とが搭載されている。
【００５６】
なお、図６には示されていないが、カウントスイッチ短絡信号もスイッチ回路５８を介して基本回路５３に伝達される。
【００５７】
また、基本回路５３から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示部９の画像表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部機器に対して出力する情報出力回路６４が搭載されている。
【００５８】
基本回路５３は、ゲーム制御用のプログラム等を記憶するＲＯＭ５４、ワークメモリとして使用される記憶手段の一例であるＲＡＭ５５、プログラムに従って制御動作を行うＣＰＵ５６およびＩ／Ｏポート部５７を含む。この実施の形態では、ＲＯＭ５４，ＲＡＭ５５はＣＰＵ５６に内蔵されている。すなわち、ＣＰＵ５６は、１チップマイクロコンピュータである。なお、１チップマイクロコンピュータは、少なくともＲＡＭ５５が内蔵されていればよく、ＲＯＭ５４およびＩ／Ｏポート部５７は外付けであっても内蔵されていてもよい。
【００５９】
さらに、主基板３１には、電源投入時に基本回路５３をリセットするためのシステムリセット回路６５が設けられている。
【００６０】
遊技球を打撃して発射する打球発射装置は発射制御基板９１上の回路によって制御される駆動モータ９４で駆動される。そして、駆動モータ９４の駆動力は、操作ノブ５の操作量に従って調整される。すなわち、発射制御基板９１上の回路によって、操作ノブ５の操作量に応じた速度で打球が発射されるように制御される。
【００６１】
なお、この実施の形態では、ランプ制御基板３５に搭載されているランプ制御手段が、遊技盤に設けられている始動記憶表示器１８、ゲート通過記憶表示器４１および装飾ランプ２５の表示制御を行うとともに、枠側に設けられている遊技効果ランプ・ＬＥＤ２８ａ，２８ｂ，２８ｃ、賞球ランプ５１および球切れランプ５２の表示制御を行う。また、特別図柄を可変表示する可変表示部９および普通図柄を可変表示する普通図柄表示器１０の表示制御は、図柄制御基板８０に搭載されている表示制御手段によって行われる。
【００６２】
図７は、払出制御基板３７および球払出装置９７の構成要素などの払出に関連する構成要素を示すブロック図である。図７に示すように、満タンスイッチ４８からの検出信号は、中継基板７１を介して主基板３１のＩ／Ｏポート５７に入力される。満タンスイッチ４８は、余剰球受皿４の満タンを検出するスイッチである。また、球切れスイッチ１８７（１８７ａ，１８７ｂ）からの検出信号も、中継基板７２および中継基板７１を介して主基板３１のＩ／Ｏポート５７に入力される。
【００６３】
主基板３１のＣＰＵ５６は、球切れスイッチ１８７からの検出信号が球切れ状態を示しているか、または、満タンスイッチ４８からの検出信号が満タン状態を示していると、払出禁止を指示する払出制御コマンドを送出する。払出禁止を指示する払出制御コマンドを受信すると、払出制御基板３７の払出制御用ＣＰＵ３７１は球払出処理を停止する。
【００６４】
さらに、賞球カウントスイッチ３０１Ａからの検出信号は、中継基板７２および中継基板７１を介して主基板３１のＩ／Ｏポート５７に入力されるとともに、中継基板７２を介して払出制御基板３７の入力ポート３７２ｂに入力される。賞球カウントスイッチ３０１Ａは、球払出装置９７の払出機構部分に設けられ、実際に払い出された賞球払出球を検出する。
【００６５】
入賞があると、払出制御基板３７には、主基板３１の出力ポート（ポート０，１）５７０，５７１から賞球個数を示す払出制御コマンドが入力される。出力ポート（出力ポート１）５７１は８ビットのデータを出力し、出力ポート５７０は１ビットの取込信号としてのストローブ信号（ＩＮＴ信号）を出力する。賞球個数を示す払出制御コマンドは、入力バッファ回路３７３Ａを介してＩ／Ｏポート３７２ａに入力される。ＩＮＴ信号は、入力バッファ回路３７３Ｂを介して払出制御用ＣＰＵ３７１の割込端子に入力されている。払出制御用ＣＰＵ３７１は、Ｉ／Ｏポート３７２ａを介して払出制御コマンドを入力し、払出制御コマンドに応じて球払出装置９７を駆動して賞球払出を行う。なお、この実施の形態では、払出制御用ＣＰＵ３７１は、１チップマイクロコンピュータであり、少なくともＲＡＭが内蔵されている。
【００６６】
また、主基板３１において、出力ポート５７０，５７１の外側にバッファ回路６２０，６８Ａが設けられている。バッファ回路６２０，６８Ａとして、例えば、汎用のＣＭＯＳ−ＩＣである７４ＨＣ２５０，７４ＨＣ１４が用いられる。このような構成によれば、外部から主基板３１の内部に入力される信号が阻止されるので、払出制御基板３７から主基板３１に信号が与えられる可能性がある信号ラインをさらに確実になくすことができる。なお、バッファ回路６２０，６８Ａの出力側にノイズフィルタを設けてもよい。
【００６７】
払出制御用ＣＰＵ３７１は、出力ポート３７２ｃを介して、貸し球数を示す球貸し個数信号をターミナル基板１６０に出力する。さらに、出力ポート３７２ｄを介して、エラー表示用ＬＥＤ３７４にエラー信号を出力する。
【００６８】
さらに、払出制御基板３７の入力ポート３７２ｂには、中継基板７２を介して球貸しカウントスイッチ３０１Ｂからの検出信号が入力される。球貸しカウントスイッチ３０１Ｂは、球払出装置９７の払出機構部分に設けられ、実際に払い出された貸し球を検出する。払出制御基板３７からの払出モータ２８９への駆動信号はあ、出力ポート３７２ｃおよび中継基板７２を介して球払出装置９７の払出機構部分における払出モータ２８９に伝えられ、振分ソレノイド３１０への駆動信号は、出力ポート３７２ｅおよび中継基板７２を介して球払出装置９７の払出機構部分における振分ソレノイド３１０に伝えられる。
【００６９】
カードユニット５０には、カードユニット制御用マイクロコンピュータが搭載されている。また、カードユニット５０には、端数表示スイッチ１５２、連結台方向表示器１５３、カード投入表示ランプ１５４およびカード挿入口１５５が設けられている（図１参照）。残高表示基板７４には、打球供給皿３の近傍に設けられている度数表示ＬＥＤ、球貸しスイッチおよび返却スイッチが接続される。
【００７０】
残高表示基板７４からカードユニット５０には、遊技者の操作に応じて、球貸しスイッチ信号および返却スイッチ信号が払出制御基板３７を介して与えられる。また、カードユニット５０から残高表示基板７４には、プリペイドカードの残高を示すカード残高表示信号および球貸し可表示信号が払出制御基板３７を介して与えられる。カードユニット５０と払出制御基板３７の間では、接続信号（ＶＬ信号）、ユニット操作信号（ＢＲＤＹ信号）、球貸し要求信号（ＢＲＱ信号）、球貸し完了信号（ＥＸＳ信号）およびパチンコ機動作信号（ＰＲＤＹ信号）が入力ポート３７２ｂおよび出力ポート３７２ｅを介してやりとりされる。
【００７１】
パチンコ遊技機１の電源が投入されると、払出制御基板３７の払出制御用ＣＰＵ３７１は、カードユニット５０にＰＲＤＹ信号を出力する。また、カードユニット制御用マイクロコンピュータは、ＶＬ信号を出力する。払出制御用ＣＰＵ３７１は、ＶＬ信号の入力状態により接続状態／未接続状態を判定する。カードユニット５０においてカードが受け付けられ、球貸しスイッチが操作され球貸しスイッチ信号が入力されると、カードユニット制御用マイクロコンピュータは、払出制御基板３７にＢＲＤＹ信号を出力する。この時点から所定の遅延時間が経過すると、カードユニット制御用マイクロコンピュータは、払出制御基板３７にＢＲＱ信号を出力する。
【００７２】
そして、払出制御基板３７の払出制御用ＣＰＵ３７１は、カードユニット５０に対するＥＸＳ信号を立ち上げ、カードユニット５０からのＢＲＱ信号の立ち下がりを検出すると、払出モータ２８９を駆動し、所定個の貸し球を遊技者に払い出す。このとき、振分ソレノイド３１０は駆動状態とされている。すなわち、球振分部材３１１を球貸し側に向ける。そして、払出が完了したら、払出制御用ＣＰＵ３７１は、カードユニット５０に対するＥＸＳ信号を立ち下げる。その後、カードユニット５０からのＢＲＤＹ信号がオン状態でなければ、賞球払出制御を実行する。
【００７３】
以上のように、カードユニット５０からの信号は全て払出制御基板３７に入力される構成になっている。従って、球貸し制御に関して、カードユニット５０から主基板３１に信号が入力されることはなく、主基板３１の基本回路５３にカードユニット５０の側から不正に信号が入力される余地はない。また、カードユニット５０で用いられる電源電圧ＡＣ２４Ｖは払出制御基板３７から供給される。
【００７４】
また、この実施の形態では、カードユニット５０が遊技機とは別体として遊技機に隣接して設置されている場合を例にするが、カードユニット５０は遊技機と一体化されていてもよい。また、コイン投入に応じてその金額に応じた遊技球を貸し出すように構成した場合でも本発明を適用できる。すなわち、遊技機は遊技球の払出として賞球払出のみを行う場合でも本発明を適用可能である。
【００７５】
図８は、電源基板９１０の一構成例を示すブロック図である。電源基板９１０は、主基板３１、図柄制御基板８０、音声制御基板７０、ランプ制御基板３５および払出制御基板３７等の電気部品制御基板と独立して設置され、遊技機内の各電気部品制御基板および機構部品が使用する電圧を生成する。この例では、ＡＣ２４Ｖ、ＶSL（ＤＣ＋３０Ｖ）、ＤＣ＋２１Ｖ、ＤＣ＋１２ＶおよびＤＣ＋５Ｖを生成する。また、バックアップ電源となるコンデンサ９１６は、ＤＣ＋５Ｖすなわち各基板上のＩＣ等を駆動する電源のラインから充電される。なお、ＶSLは、整流回路９１２において、整流素子でＡＣ２４Ｖを整流昇圧することによって生成される。ＶSLは、ソレノイド駆動電源となる。
【００７６】
トランス９１１は、交流電源からの交流電圧を２４Ｖに変換する。ＡＣ２４Ｖ電圧は、コネクタ９１５に出力される。また、整流回路９１２は、ＡＣ２４Ｖから＋３０Ｖの直流電圧を生成し、ＤＣ−ＤＣコンバータ９１３およびコネクタ９１５に出力する。ＤＣ−ＤＣコンバータ９１３は、１つまたは複数のコンバータＩＣ９２２（図８では１つのみを示す。）を有し、ＶSLにもとづいて＋２１Ｖ、＋１２Ｖおよび＋５Ｖを生成してコネクタ９１５に出力する。コンバータＩＣ９２２の入力側には、比較的大容量のコンデンサ９２３が接続されている。従って、外部からの遊技機に対する電力供給が停止したときに、＋３０Ｖ、＋１２Ｖ、＋５Ｖ等の直流電圧は、比較的緩やかに低下する。この結果、コンデンサ９２３は、後述する補助駆動電源の役割を果たす。コネクタ９１５は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。
【００７７】
ただし、電源基板９１０に各電気部品制御基板に至る各コネクタを設け、電源基板９１０から、中継基板を介さずにそれぞれの基板に至る各電圧を供給するようにしてもよい。また、図８には１つのコネクタ９１５が代表して示されているが、コネクタは、各電気部品制御基板対応に設けられている。
【００７８】
ＤＣ−ＤＣコンバータ９１３からの＋５Ｖラインは分岐してバックアップ＋５Ｖラインを形成する。バックアップ＋５Ｖラインとグラウンドレベルとの間には大容量のコンデンサ９１６が接続されている。コンデンサ９１６は、遊技機に対する電力供給が遮断されたときの電気部品制御基板のバックアップＲＡＭ（電源バックアップされているＲＡＭすなわち電力供給停止時にも記憶内容保持状態となりうるバックアップ記憶手段）に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、＋５Ｖラインとバックアップ＋５Ｖラインとの間に、逆流防止用のダイオード９１７が挿入される。この実施の形態では、バックアップ用の＋５Ｖは、主基板３１および払出制御基板３７に供給される。
【００７９】
なお、バックアップ電源として、＋５Ｖ電源から充電可能な電池を用いてもよい。電池を用いる場合には、＋５Ｖ電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。
【００８０】
また、電源基板９１０には、電源監視用ＩＣ９０２が搭載されている。電源監視用ＩＣ９０２は、ＶSL電圧を導入し、ＶSL電圧を監視することによって電源断の発生を検出する。具体的には、ＶSL電圧が所定値（この例では＋２２Ｖ）以下になったら、電源断が生ずるとして電源断信号を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧（この例では＋５Ｖ）よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるＶSLが用いられている。電源監視用ＩＣ９０２からの電源断信号は、主基板３１や払出制御基板３７等に供給される。
【００８１】
電源監視用ＩＣ９０２が電源断を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のＣＰＵが暫くの間動作しうる程度の電圧である。また、電源監視用ＩＣ９０２が、ＣＰＵ等の回路素子を駆動するための電圧（この例では＋５Ｖ）よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、ＣＰＵが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。さらに、監視電圧としてＶSL（＋３０Ｖ）を用いる場合には、遊技機の各種スイッチに供給される電圧が＋１２Ｖであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、＋３０Ｖ電源の電圧を監視すると、＋３０Ｖ作成の以降に作られる＋１２Ｖが落ち始める以前の段階でそれの低下を検出できる。
【００８２】
よって、＋１２Ｖ電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、＋１２Ｖより早く低下する＋３０Ｖ電源電圧を監視して電源断を認識すれば、スイッチ出力がオン状態を呈する前に電源復旧待ちの状態に入ってスイッチ出力を検出しない状態となることができる。
【００８３】
また、電源監視用ＩＣ９０２は、電気部品制御基板とは別個の電源基板９１０に搭載されているので、電源監視回路から複数の電気部品制御基板に電源断信号を供給することができる。電源断信号を必要とする電気部品制御基板が幾つあっても電源監視手段は１つ設けられていればよいので、各電気部品制御基板における各電気部品制御手段が後述する復帰制御を行っても、遊技機のコストはさほど上昇しない。
【００８４】
なお、図８に示された構成では、電源監視用ＩＣ９０２の検出出力（電源断信号）は、バッファ回路９１８，９１９を介してそれぞれの電気部品制御基板（例えば主基板３１と払出制御基板３７）に伝達されるが、例えば、１つの検出出力を中継基板に伝達し、中継基板から各電気部品制御基板に同じ信号を分配する構成でもよい。また、電源断信号を必要とする基板数に応じたバッファ回路を設けてもよい。
【００８５】
図９は、主基板３１におけるＣＰＵ５６周りの一構成例を示すブロック図である。図９に示すように、電源基板９１０の電源監視回路（電源監視手段）からの電源断信号が、ＣＰＵ５６のマスク不能割込端子（ＸＮＭＩ端子）に接続されている。電源監視回路は、遊技機が使用する各種直流電源のうちのいずれかの電源の電圧を監視して電源電圧低下を検出する回路である。この実施の形態では、ＶSLの電源電圧を監視して電圧値が所定値以下になるとローレベルの電源断信号を発生する。ＶSLは、遊技機における直流電圧のうちで最大のものであり、この例では＋３０Ｖである。従って、ＣＰＵ５６は、割込処理によって電源断の発生を確認することができる。
【００８６】
図９には、システムリセット回路６５も示されている。リセットＩＣ６５１は、電源投入時に、外付けのコンデンサの容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。すなわち、リセット信号をハイレベルに立ち上げてＣＰＵ５６を動作可能状態にする。また、リセットＩＣ６５１は、電源監視回路が監視する電源電圧と等しい電源電圧であるＶSLの電源電圧を監視して電圧値が所定値（電源監視回路が電源断信号を出力する電源電圧値よりも低い値）以下になると出力をローレベルにする。従って、ＣＰＵ５６は、電源監視回路からの電源断信号に応じて所定の電力供給停止時処理を行った後、システムリセットされる。
【００８７】
図９に示すように、リセットＩＣ６５１からのリセット信号は、ＮＡＮＤ回路９４７に入力されるとともに、反転回路（ＮＯＴ回路）９４４を介してカウンタＩＣ９４１のクリア端子に入力される。カウンタＩＣ９４１は、クリア端子への入力がローレベルになると、発振器９４３からのクロック信号をカウントする。そして、カウンタＩＣ９４１のＱ５出力がＮＯＴ回路９４５，９４６を介してＮＡＮＤ回路９４７に入力される。また、カウンタＩＣ９４１のＱ６出力は、フリップフロップ（ＦＦ）９４２のクロック端子に入力される。フリップフロップ９４２のＤ入力はハイレベルに固定され、Ｑ出力は論理和回路（ＯＲ回路）９４９に入力される。ＯＲ回路９４９の他方の入力には、ＮＡＮＤ回路９４７の出力がＮＯＴ回路９４８を介して導入される。そして、ＯＲ回路９４９の出力がＣＰＵ５６のリセット端子に接続されている。このような構成によれば、電源投入時に、ＣＰＵ５６のリセット端子に２回のリセット信号（ローレベル信号）が与えられるので、ＣＰＵ５６は、確実に動作を開始する。
【００８８】
そして、例えば、電源監視回路の検出電圧（電源断信号を出力することになる電圧）を＋２２Ｖとし、リセット信号をローレベルにするための検出電圧を＋９Ｖとする。そのように構成した場合には、電源監視回路とシステムリセット回路６５とが、同一の電源ＶSLの電圧を監視するので、電圧監視回路が電源断信号を出力するタイミングとシステムリセット回路６５がシステムリセット信号を出力するタイミングの差を所望の所定期間に確実に設定することができる。所望の所定期間とは、電源監視回路からの電源断信号に応じて電力供給停止時処理を開始してから電力供給停止時処理が確実に完了するまでの期間である。
【００８９】
ＣＰＵ５６等の駆動電源である＋５Ｖ電源から電力が供給されていない間、ＲＡＭの少なくとも一部は、電源基板から供給されるバックアップ電源によってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、＋５Ｖ電源が復旧すると、システムリセット回路６５からリセット信号が発せられるので、ＣＰＵ５６は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップＲＡＭに保存されているので、停電等からの復旧時に停電発生時の遊技状態に復帰することができる。
【００９０】
なお、図９に示す構成では、電源投入時にＣＰＵ５６のリセット端子に２回のリセット信号（ローレベル信号）が与えられるが、リセット信号の立ち上がりタイミングが１回しかなくても確実にリセット解除されるＣＰＵを使用する場合には、符号９４１〜９４９で示された回路素子は不要である。その場合、リセットＩＣ６５１の出力がそのままＣＰＵ５６のリセット端子に接続される。
【００９１】
この実施の形態で用いられるＣＰＵ５６は、Ｉ／Ｏポート（ＰＩＯ）およびタイマ／カウンタ回路（ＣＴＣ）も内蔵している。ＰＩＯは、ＰＢ０〜ＰＢ３の４ビットおよびＰＡ０〜ＰＡ７の１バイトのポートを有する。ＰＢ０〜ＰＢ３およびＰＡ０〜ＰＡ７のポートは、入力／出力いずれにも設定できる。
【００９２】
図１０および図１１は、この実施の形態における出力ポートの割り当てを示す説明図である。図１０に示すように、出力ポート０は各電気部品制御基板に送出される制御コマンドのストローブ信号（ＩＮＴ信号）の出力ポートである。また、払出制御基板３７に送出される払出制御コマンドの８ビットのデータは出力ポート１から出力され、図柄制御基板８０に送出される表示制御コマンドの８ビットのデータは出力ポート２から出力され、ランプ制御基板３５に送出されるランプ制御コマンドの８ビットのデータは出力ポート３から出力される。そして、図１１に示すように、音声制御基板７０に送出される音声制御コマンドの８ビットのデータは出力ポート４から出力される。
【００９３】
また、出力ポート５から、情報出力回路６４を介して情報端子板３４やターミナル基板１６０に至る各種情報出力用信号すなわち制御に関わる情報の出力データが出力される。そして、出力ポート６から、可変入賞球装置１５を開閉するためのソレノイド１６、大入賞口の開閉板２おを開閉するためのソレノイド２１、および大入賞口内の経路を切り換えるためのソレノイド２１Ａに対する駆動信号が出力される。
【００９４】
図１２は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図１２に示すように、入力ポート０のビット０〜７には、それぞれ、入賞口スイッチ２４ａ、入賞口スイッチ２４ｂ、入賞口スイッチ１９ａ、入賞口スイッチ１９ｂ、始動口スイッチ１７、カウントスイッチ２３、Ｖ入賞スイッチ（特定領域スイッチ）２２、ゲートスイッチ１２の検出信号が入力される。また、入力ポート１のビット０〜３には、それぞれ、賞球カウントスイッチ３０１Ａ、満タンスイッチ４８、球切れスイッチ１８７の検出信号、カウントスイッチ短絡信号が入力される。
【００９５】
次に遊技機の動作について説明する。
図１３は、主基板３１におけるＣＰＵ５６が実行するメイン処理を示すフローチャートである。遊技機に対する電源が投入されると、メイン処理において、ＣＰＵ５６は、まず、必要な初期設定を行う。
【００９６】
初期設定処理において、ＣＰＵ５６は、まず、割込禁止に設定する（ステップＳ１）。次に、割込モードを割込モード２に設定し（ステップＳ２）、スタックポインタにスタックポインタ指定アドレスを設定する（ステップＳ３）。そして、内蔵デバイスレジスタの初期化を行う（ステップＳ４）。また、内蔵デバイス（内蔵周辺回路）であるＣＴＣ（カウンタ／タイマ）およびＰＩＯ（パラレル入出力ポート）の初期化（ステップＳ５）を行った後、ＲＡＭをアクセス可能状態に設定する（ステップＳ６）。
【００９７】
この実施の形態で用いられているＣＰＵ５６には、マスク可能な割込（ＩＮＴ）のモードとして以下の３種類のモードが用意されている。なお、マスク可能な割込が発生すると、ＣＰＵ５６は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
【００９８】
割込モード０：割込要求を行った内蔵デバイスがＲＳＴ命令（１バイト）またはＣＡＬＬ命令（３バイト）をＣＰＵの内部データバス上に送出する。よって、ＣＰＵ５６は、ＲＳＴ命令に対応したアドレスまたはＣＡＬＬ命令で指定されるアドレスの命令を実行する。リセット時に、ＣＰＵ５６は自動的に割込モード０になる。よって、割込モード１または割込モード２に設定したい場合には、初期設定処理において、割込モード１または割込モード２に設定するための処理を行う必要がある。
【００９９】
割込モード１：割込が受け付けられると、常に００３８（ｈ）番地に飛ぶモードである。
【０１００】
割込モード２：ＣＰＵ５６の特定レジスタ（Ｉレジスタ）の値（１バイト）と内蔵デバイスが出力する割込ベクタ（１バイト：最下位ビット０）から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた２バイトで示されるアドレスである。従って、任意の（飛び飛びではあるが）偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
【０１０１】
よって、割込モード２に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード１とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップＳ２において、ＣＰＵ５６は割込モード２に設定される。
【０１０２】
そして、電源断時にバックアップＲＡＭ領域のデータ保護処理（例えばパリティデータの付加等の停電発生ＮＭＩ処理）が行われたか否か確認する（ステップＳ７）。この実施の形態では、不測の電源断が生じた場合には、バックアップＲＡＭ領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。バックアップなしを確認したら、ＣＰＵ５６は初期化処理を実行する。
【０１０３】
この実施の形態では、バックアップＲＡＭ領域にバックアップデータがあるか否かは、電源断時にバックアップＲＡＭ領域に設定されるバックアップフラグの状態によって確認される。この例では、図１４に示すように、バックアップフラグ領域に「５５Ｈ」が設定されていればバックアップあり（オン状態）を意味し、「５５Ｈ」以外の値が設定されていればバックアップなし（オフ状態）を意味する。
【０１０４】
バックアップありを確認したら、ＣＰＵ５６は、バックアップＲＡＭ領域のデータチェック（この例ではパリティチェック）を行う。不測の電源断が生じた後に復旧した場合には、バックアップＲＡＭ領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【０１０５】
チェック結果が正常であれば（ステップＳ８）、ＣＰＵ５６は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電源断時の状態に戻すための遊技状態復旧処理を行う（ステップＳ９）。そして、バックアップＲＡＭ領域に保存されていたＰＣ（プログラムカウンタ）の退避値がＰＣに設定され、そのアドレスに復帰する。
【０１０６】
初期化処理では、ＣＰＵ５６は、まず、ＲＡＭクリア処理を行う（ステップＳ１１）。また、所定の作業領域（例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄左中右図柄バッファ、払出コマンド格納ポインタなど）に初期値を設定する初期値設定処理も行われる。さらに、サブ基板（ランプ制御基板３５、払出制御基板３７、音声制御基板７０、図柄制御基板８０）を初期化するための処理を実行する（ステップＳ１３）。サブ基板を初期化する処理とは、例えば初期設定コマンドを送出する処理である。
【０１０７】
そして、２ｍｓ毎に定期的にタイマ割込がかかるようにＣＰＵ５６に設けられているＣＴＣのレジスタの設定が行われる（ステップＳ１４）。すなわち、初期値として２ｍｓに相当する値が所定のレジスタ（時間定数レジスタ）に設定される。そして、初期設定処理のステップＳ１において割込禁止とされているので、初期化処理を終える前に割込が許可される（ステップＳ１５）。
【０１０８】
この実施の形態では、ＣＰＵ５６の内蔵ＣＴＣが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は２ｍｓに設定される。具体的には、ＣＰＵ５６の動作クロックを分周したクロックがＣＴＣに与えられ、クロックの入力によってレジスタの値が減算され、レジスタの値が０になるとタイマ割込が発生する。分周したクロックにもとづいて減算が行われるので、レジスタの初期値は大きくならない。なお、この実施の形態では、初期値として４６（Ｈ）が設定される。そして、タイマ割込が発生すると、図１５に示すように、ＣＰＵ５６は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする（ステップＳ１２）。
【０１０９】
初期化処理の実行（ステップＳ１１〜Ｓ１５）が完了すると、メイン処理で、タイマ割込が発生したか否かの監視（ステップＳ１７）の確認が行われるループ処理に移行する。なお、ループ内では、表示用乱数更新処理（ステップＳ１６）も実行される。
【０１１０】
ＣＰＵ５６は、ステップＳ１７において、タイマ割込が発生したことを認識すると、ステップＳ２１〜Ｓ３１の遊技制御処理を実行する。遊技制御処理において、ＣＰＵ５６は、まず、スイッチ回路５８を介して、ゲートセンサ１２、始動口センサ１７、カウントセンサ２３および入賞口スイッチ１９ａ，１９ｂ，２４ａ，２４ｂ等のスイッチの状態を入力し、それらの状態判定を行う（スイッチ処理：ステップＳ２１）。
【０１１１】
次いで、パチンコ遊技機１の内部に備えられている自己診断機能によって種々の異常診断処理が行われ、その結果に応じて必要ならば警報が発せられる（エラー処理：ステップＳ２２）。
【０１１２】
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を示す各カウンタを更新する処理を行う（ステップＳ２３）。ＣＰＵ５６は、さらに、停止図柄の種類を決定する乱数等の表示用乱数を更新する処理を行う（ステップＳ２４）。
【０１１３】
さらに、ＣＰＵ５６は、特別図柄プロセス処理を行う（ステップＳ２５）。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機１を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う（ステップＳ２６）。普通図柄プロセス処理では、７セグメントＬＥＤによる可変表示器１０を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【０１１４】
次いで、ＣＰＵ５６は、特別図柄に関する表示制御コマンドをＲＡＭ５５の所定の領域に設定して表示制御コマンドを送出する処理を行う（特別図柄コマンド制御処理：ステップＳ２７）。また、普通図柄に関する表示制御コマンドをＲＡＭ５５の所定の領域に設定して表示制御コマンドを送出する処理を行う（普通図柄コマンド制御処理：ステップＳ２８）。
【０１１５】
さらに、ＣＰＵ５６は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う（ステップＳ２９）。
【０１１６】
また、ＣＰＵ５６は、所定の条件が成立したときにソレノイド回路５９に駆動指令を行う（ステップＳ３０）。ソレノイド回路５９は、駆動指令に応じてソレノイド１６，２１を駆動し、可変入賞球装置１５または開閉板２０を開状態または閉状態とする。
【０１１７】
そして、ＣＰＵ５６は、各入賞口への入賞を検出するためのスイッチ１７，２３，１９ａ，１９ｂ，２４ａ，２４ｂの検出出力にもとづく賞球数の設定などを行う賞球処理を実行する（ステップＳ３１）。具体的には、入賞検出に応じて払出制御基板３７に払出制御コマンドを出力する。払出制御基板３７に搭載されている払出制御用ＣＰＵ３７１は、払出制御コマンドに応じて球払出装置９７を駆動する。
【０１１８】
以上の制御によって、この実施の形態では、遊技制御処理は２ｍｓ毎に起動されることになる。なお、この実施の形態では、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるが、タイマ割込処理で遊技制御処理を実行してもよい。
【０１１９】
また、メイン処理には遊技制御処理に移行すべきか否かを判定する処理が含まれ、ＣＰＵ５６の内部タイマが定期的に発生するタイマ割込にもとづくタイマ割込処理で遊技制御処理に移行すべきか否かを判定するためのフラグがセット等がなされるので、遊技制御処理の全てが確実に実行される。つまり、遊技制御処理の全てが実行されるまでは、次回の遊技制御処理に移行すべきか否かの判定が行われないので、遊技制御処理中の全ての各処理が実行完了することは保証されている。
【０１２０】
以上に説明したように、この実施の形態では、ＣＴＣやＰＩＯを内蔵するＣＰＵ５６に対して、初期設定処理で割込モード２が設定される。従って、内蔵ＣＴＣを用いた定期的なタイマ割込処理を容易に実現できる。また、タイマ割込処理をプログラム上の任意の位置に設置できる。また、内蔵ＰＩＯを用いたスイッチ検出処理等を容易に割込処理で実現できる。その結果、プログラム構成が簡略化され、プログラム開発工数が低減する等の効果を得ることができる。
【０１２１】
なお、ＣＴＣおよびＰＩＯの設定（ステップＳ５）が完了した後に、ＩＥＯ／ＳＣＬＫ０端子から出力されるクロック信号の周波数を決めるための内部レジスタの設定を行ってもよい。その際、クロック信号の周波数は、遊技制御処理の起動周期である２ｍｓに応じた周波数とされる。そのような設定を行うと、ＩＥＯ／ＳＣＬＫ０端子から、遊技制御処理の起動周期に応じた周波数のクロック信号がＣＰＵ５６から外部出力される。すると、ＣＰＵ５６の外部において遊技制御処理の起動周期に対応した信号を観測することができる。よって、そのような信号を用いて、遊技機外部においてＣＰＵ５６による遊技制御処理をシミュレーションしたり、ＣＰＵ５６の動作状況を試験したりすることが容易になる。
【０１２２】
また、図１０および図１１に示された出力ポート０〜６のうち、出力ポート０，１，２，３，４は、遊技制御処理のうちの特別図柄コマンド制御処理（ステップＳ２５）、普通図柄コマンド制御処理（ステップＳ２７）、賞球処理（ステップＳ３１）等でアクセスされる。また、出力ポート５は、情報出力処理（ステップＳ２９）でアクセスされ、出力ポート６は、特別図柄プロセス処理（ステップＳ２５）や普通図柄プロセス処理（ステップＳ２６）でアクセスされる。
【０１２３】
次に、メイン処理におけるスイッチ処理（ステップＳ２１）の具体例を説明する。この実施の形態では、検出信号のオン状態が所定時間継続すると、確かにスイッチがオンしたと判定されスイッチオンに対応した処理が開始される。所定時間を計測するために、スイッチタイマが用いられる。スイッチタイマは、バックアップＲＡＭ領域に形成された１バイトのカウンタであり、検出信号がオン状態を示している場合に２ｍｓ毎に＋１される。図１６に示すように、スイッチタイマは検出信号の数Ｎだけ設けられている。この実施の形態ではＮ＝１２である。また、ＲＡＭにおいて、各スイッチタイマのアドレスは、入力ポートのビット配列順（図１２に示された上から下への順）と同じ順序で並んでいる。
【０１２４】
図１７は、遊技制御処理におけるステップＳ２１のスイッチ処理の処理例を示すフローチャートである。なお、スイッチ処理は、図１３に示すように遊技制御処理において最初に実行される。スイッチ処理において、ＣＰＵ５６は、まず、入力ポート０に入力されているデータを入力する（ステップＳ７１）。次いで、処理数として「８」を設定し（ステップＳ７２）、入賞口スイッチ２４ａのためのスイッチタイマのアドレスをポインタにセットする（ステップＳ７３）。そして、スイッチチェック処理サブルーチンをコールする（ステップＳ７４）。
【０１２５】
図１８は、スイッチチェック処理サブルーチンを示すフローチャートである。スイッチチェック処理サブルーチンにおいて、ＣＰＵ５６は、ポート入力データ、この場合には入力ポート０からの入力データを「比較値」として設定する（ステップＳ８１）。また、クリアデータ（００）をセットする（ステップＳ８２）。そして、ポインタ（スイッチタイマのアドレスが設定されている）が指すスイッチタイマをロードするとともに（ステップＳ８３）、比較値を右（上位ビットから下位ビットへの方向）にシフトする（ステップＳ８４）。比較値には入力ポート０のデータ設定されている。そして、この場合には、入賞口スイッチ２４ａの検出信号がキャリーフラグに押し出される。
【０１２６】
キャリーフラグの値が「１」であれば（ステップＳ８５）、すなわち入賞口スイッチ２４ａの検出信号がオン状態であれば、スイッチタイマの値を１加算する（ステップＳ８７）。加算後の値が０でなければ加算値をスイッチタイマに戻す（ステップＳ８８，Ｓ８９）。加算後の値が０になった場合には加算値をスイッチタイマに戻さない。すなわち、スイッチタイマの値が既に最大値（２５５）に達している場合には、それよりも値を増やさない。
【０１２７】
キャリーフラグの値が「０」であれば、すなわち入賞口スイッチ２４ａの検出信号がオフ状態であれば、スイッチタイマにクリアデータをセットする（ステップＳ８６）。すなわち、スイッチがオフ状態であれば、スイッチタイマの値が０に戻る。
【０１２８】
その後、ＣＰＵ５６は、ポインタ（スイッチタイマのアドレス）を１加算するとともに（ステップＳ９０）、処理数を１減算する（ステップＳ９１）。処理数が０になっていなければステップＳ８２に戻る。そして、ステップＳ８２〜Ｓ９２の処理が繰り返される。
【０１２９】
ステップＳ８２〜Ｓ９２の処理は、処理数分すなわち８回繰り返され、その間に、入力ポート０の８ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が１増やされる。
【０１３０】
ＣＰＵ５６は、スイッチ処理のステップＳ７５において、入力ポート１に入力されているデータを入力する。次いで、処理数として「４」を設定し（ステップＳ７６）、賞球カウントスイッチ３０１Ａのためのスイッチタイマのアドレスをポインタにセットする（ステップＳ７７）。そして、スイッチチェック処理サブルーチンをコールする（ステップＳ７８）。
【０１３１】
スイッチチェック処理サブルーチンでは、上述した処理が実行されるので、ステップＳ８２〜Ｓ９２の処理が、処理数分すなわち４回繰り返され、その間に、入力ポート１の４ビットに入力されるスイッチの検出信号について、順次、オン状態かオフ状態か否かのチェック処理が行われ、オン状態であれば、対応するスイッチタイマの値が１増やされる。
【０１３２】
なお、この実施の形態では、遊技制御処理が２ｍｓ毎に起動されるので、スイッチ処理も２ｍｓに１回実行される。従って、スイッチタイマは、２ｍｓ毎に＋１される。
【０１３３】
図１９〜図２１は、遊技制御処理におけるステップＳ３１の賞球処理の一例を示すフローチャートである。この実施の形態では、賞球処理では、入賞口スイッチ１９ａ，１９ｂ，２４ａ，２４ｂ、カウントスイッチ２３および始動口スイッチ１７が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板３７に送出されるように制御し、また、満タンスイッチ４８および球切れスイッチ１８７が確実にオンしたか否か判定されるとともに、オンしたら所定の払出制御コマンドが払出制御基板３７に送出されるように制御する等の処理が行われる。
【０１３４】
賞球処理において、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「１」を設定し（ステップＳ１５０）、スイッチタイマのアドレスのオフセットとして「９」を設定する（ステップＳ１５１）。入力判定値テーブル（図２３参照）のオフセット「１」は、入力判定値テーブルの２番目のデータ「５０」を使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「９」は満タンスイッチ４８に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１５２）。
【０１３５】
入力判定値テーブルとは、各スイッチについて、連続何回のオンが検出されたら確かにスイッチがオンしたと判定するための判定値が設定されているＲＯＭ領域である。入力判定値テーブルの構成例は図２３に示されている。図２３に示すように、入力判定値テーブルには、上から順に、すなわちアドレス値が小さい領域から順に、「２」、「５０」、「２５０」、「３０」、「２５０」、「１」の判定値が設定されている。また、スイッチオンチェックルーチンでは、入力判定値テーブルの先頭アドレスとオフセット値とで決まるアドレスに設定されている判定値と、スイッチタイマの先頭アドレスとオフセット値とで決まるスイッチタイマの値とが比較され、一致した場合には、例えばスイッチオンフラグがセットされる。
【０１３６】
スイッチオンチェックルーチンの一例が図２２に示されている。スイッチオンチェックルーチンにおいて、満タンスイッチ４８に対応するスイッチタイマの値が満タンスイッチオン判定値「５０」に一致していればスイッチオンフラグがセットされるので（ステップＳ１５３）、満タンフラグがセットされる（ステップＳ１５４）。なお、図１９には明示されていないが、満タンスイッチ４８に対応したスイッチタイマの値が０になると、満タンフラグはリセットされる。
【０１３７】
また、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「２」を設定し（ステップＳ１５６）、スイッチタイマのアドレスのオフセットとして「０Ａ（Ｈ）」を設定する（ステップＳ１５７）。入力判定値テーブルのオフセット「２」は、入力判定値テーブルの３番目のデータ「２５０」を使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「０Ａ（Ｈ）」は球切れスイッチ１８７に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１５８）。
【０１３８】
スイッチオンチェックルーチンにおいて、球切れスイッチ１８７に対応するスイッチタイマの値が球切れスイッチオン判定値「２５０」に一致していればスイッチオンフラグがセットされるので（ステップＳ１５９）、球切れフラグがセットされる（ステップＳ１６０）。なお、図１９には明示されていないが、球切れスイッチ１８７に対応したスイッチオフタイマが用意され、その値が５０になると、球切れフラグはリセットされる。
【０１３９】
そして、ＣＰＵ５６は、払出停止状態であるか否か確認する（ステップＳ２０１）。払出停止状態は、払出制御基板３７に対して払出停止状態指定に関する払出制御コマンドを送出した後の状態である。払出停止状態でなければ、上述した球切れ状態フラグまたは満タンフラグがオンになったか否かを確認する（ステップＳ２０２）。
【０１４０】
いずれかがオン状態に変化したときには、払出停止状態指定に関する払出制御コマンド送信テーブルをセットし（ステップＳ２０３）、コマンドセット処理をコールする（ステップＳ２０６）。ステップＳ２０３では、払出停止状態指定に関する払出制御コマンドが格納されているコマンド送信テーブル（ＲＯＭ）の先頭アドレスが、コマンド送信テーブルのアドレスとして設定される。払出停止状態指定に関するコマンド送信テーブルには、後述するＩＮＴデータ、払出制御コマンドの１バイト目のデータ、および払出制御コマンドの２バイト目のデータが設定されている。なお、ステップＳ２０２において、いずれか一方のフラグが既にオン状態であったときに他方のフラグがオン状態になったときには、コマンド送信制御処理（ステップＳ２０３）は行われない。
【０１４１】
また、払出停止状態であれば、球切れ状態フラグおよび満タンフラグがともにオフ状態になったか否かを確認する（ステップＳ２０４）。ともにオフ状態となったときには、払出可能状態指定に関するコマンド送信テーブルをセットし（ステップＳ２０５）、コマンドセット処理をコールする（ステップＳ２０７）。ステップＳ２０５では、払出可能状態指定に関する払出制御コマンドが格納されているコマンド送信テーブル（ＲＯＭ）の先頭アドレスが、コマンド送信テーブルのアドレスとして設定される。払出可能状態指定に関するコマンド送信テーブルには、後述するＩＮＴデータ、払出制御コマンドの１バイト目のデータ、および払出制御コマンドの２バイト目のデータが設定されている。
【０１４２】
さらに、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し（ステップＳ１２１）、スイッチタイマのアドレスのオフセットとして「０」を設定する（ステップＳ１２２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「０」は入賞口スイッチ２４ａに対応したスイッチタイマが指定されることを意味する。また、繰り返し数として「４」をセットする（ステップＳ１２３）。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１２４）。
【０１４３】
スイッチオンチェックルーチンにおいて、ＣＰＵ５６は、入力判定値テーブル（図２３参照）の先頭アドレスを設定する（ステップＳ１０１）。そして、そのアドレスにオフセットを加算し（ステップＳ１０２）、加算後のアドレスからスイッチオン判定値をロードする（ステップＳ１０３）。
【０１４４】
次いで、ＣＰＵ５６は、スイッチタイマの先頭アドレスを設定し（ステップＳ１０４）、そのアドレスにオフセットを加算し（ステップＳ１０５）、加算後のアドレスからスイッチタイマの値をロードする（ステップＳ１０６）。各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチに対応したスイッチタイマの値がロードされる。
【０１４５】
そして、ＣＰＵ５６は、ロードしたスイッチタイマの値とスイッチオン判定値とを比較する（ステップＳ１０７）。それらが一致すれば、スイッチオンフラグをセットする（ステップ１０８）。
【０１４６】
この場合には、スイッチオンチェックルーチンにおいて、入賞口スイッチ２４ａに対応するスイッチタイマの値がスイッチオン判定値「２」に一致していればスイッチオンフラグがセットされる（ステップＳ１２５）。そして、スイッチチェックオンルーチンは、スイッチタイマのアドレスのオフセットが更新されつつ（ステップＳ１３０）、最初に設定された繰り返し数分だけ実行されるので（ステップＳ１２８，Ｓ１２９）、結局、入賞口スイッチ１９ａ，１９ｂ，２４ａ，２４ｂについて、対応するスイッチタイマの値がスイッチオン判定値「２」と比較されることになる。
【０１４７】
スイッチオンフラグがセットされたら、１０個の賞球個数指示に関するコマンド送信バッファ設定処理を行う（ステップＳ１２６）。コマンド送信バッファ設定処理では、払出制御コマンド用のコマンド送信バッファに所定のデータが設定された後、コマンド送信カウンタが＋１される。また、総賞球数格納バッファの格納値に１０を加算する（ステップＳ１２７）。
【０１４８】
総賞球数格納バッファは、払出制御手段に対して指示した賞球個数の累積値（ただし、払い出しがなされると減算される）が格納されるバッファであり、バックアップＲＡＭに形成されている。
【０１４９】
次に、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し（ステップＳ１３１）、スイッチタイマのアドレスのオフセットとして「４」を設定する（ステップＳ１３２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「４」は始動口スイッチ１７に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１３３）。
【０１５０】
スイッチオンチェックルーチンにおいて、始動口スイッチ１７に対応するスイッチタイマの値がスイッチオン判定値「２」に一致していればスイッチオンフラグがセットされる（ステップＳ１３４）。スイッチオンフラグがセットされたら、６個の賞球個数指示に関するコマンド送信バッファ設定処理を行う（ステップＳ１３５）。コマンド送信バッファ設定処理では、払出制御コマンド用のコマンド送信バッファに所定のデータが設定された後、コマンド送信カウンタが＋１される。また、総賞球数格納バッファの格納値に６を加算する（ステップＳ１３６）。
【０１５１】
次いで、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し（ステップＳ２２１）、スイッチタイマのアドレスのオフセットとして「５」を設定する（ステップＳ２２２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「５」はカウントスイッチ２３に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ２２３）。
【０１５２】
スイッチオンチェックルーチンにおいて、カウントスイッチ２３に対応するスイッチタイマの値がスイッチオン判定値「２」に一致していればスイッチオンフラグがセットされる（ステップＳ２２４）。スイッチオンフラグがセットされたら、１５個の賞球個数指示に関するコマンド送信バッファ設定処理を行う（ステップＳ２２５）。コマンド送信バッファ設定処理では、払出制御コマンド用のコマンド送信バッファに所定のデータが設定された後、コマンド送信カウンタが＋１される。また、総賞球数格納バッファの格納値に１５を加算する（ステップＳ２２６）。
【０１５３】
そして、コマンドセット処理をコールする（ステップＳ２２７）。コマンドセット処理の動作については後で詳しく説明するが、１つ以上の払出制御コマンドがコマンド送信バッファに格納されている場合には、コマンド送信バッファに格納された払出制御コマンドが払出制御基板３７に送信される。以上のようにして、遊技制御手段から払出制御基板３７に賞球個数を指示する払出制御コマンドを出力しようとするときに、コマンド送信バッファの設定が行われた後、コマンド送信バッファに設定された払出制御コマンドが払出制御基板３７に送出される。
【０１５４】
なお、コマンドセット処理の入力引数となるコマンド送信テーブルのアドレスは（図２８のステップＳ３３１参照）、賞球個数を指示する払出制御コマンド送出の場合には、未送出コマンドが格納されているコマンド送信バッファのアドレスである。そして、総賞球数バッファの内容が０でない場合、すなわち、まだ賞球残がある場合には、ＣＰＵ５６は、賞球払出中フラグをオンする（ステップＳ２２８，Ｓ２２９）。
【０１５５】
また、ＣＰＵ５６は、賞球払出中フラグがオンしているときには（ステップＳ２３０）、球払出装置９７から実際に払い出された賞球数を監視して総賞球数格納バッファの格納値を減算する賞球個数減算処理を行う（ステップＳ２３１）。なお、賞球払出中フラグがオンからオフに変化したときには、ランプ制御基板３５に対して、賞球ランプ５１の点灯を指示するランプ制御コマンドが送出される。
【０１５６】
図２０および図２１に示された賞球処理における賞球個数を指定するための払出制御コマンドの設定処理では、各入賞口スイッチがオンしたことが判定されたときに、オン判定された入賞口スイッチに対応する賞球数が総賞球数格納バッファの値に加算される。しかし、入賞口スイッチがオンしたことが判定されたときに、賞球個数を指定するためのデータをリングバッファ形式のコマンド送信バッファに格納するまでの処理を行い、送信するコマンドのデータが格納されている領域を示す読出ポインタの値に従ってコマンド送信バッファから当該コマンドを出力するコマンドセット処理をコールする前に、出力するデータに応じた賞球数を総賞球数格納バッファの値に加算するようにしてもよい。なお、コマンドセット処理については後で詳しく説明する（図２８参照）。
【０１５７】
次に、遊技制御手段から各電気部品制御手段に対する制御コマンドの送出方式について説明しておく。遊技制御手段から各電気部品制御基板（サブ基板）に制御コマンドを出力しようとするときに、コマンド送信バッファの設定が行われる。図２４（Ａ）は、コマンド送信バッファの一構成例を示す説明図である。１つのコマンド送信バッファは３バイトで構成され、１バイト目にはＩＮＴデータが設定される。また、２バイト目のコマンドデータ１には、制御コマンドの１バイト目のＭＯＤＥデータが設定される。そして、３バイト目のコマンドデータ２には、制御コマンドの２バイト目のＥＸＴデータが設定される。
【０１５８】
なお、ＥＸＴデータそのものがコマンドデータ２の領域に設定されてもよいが、コマンドデータ２には、ＥＸＴデータが格納されているテーブルのアドレスを指定するためのデータが設定されるようにしてもよい。この実施の形態では、コマンドデータ２のビット７（ワークエリア参照ビット）が０あれば、コマンドデータ２にＥＸＴデータそのものが設定されていることを示す。そのようなＥＸＴデータはビット７が０であるデータである。ワークエリア参照ビットが１あれば、他の７ビットが、ＥＸＴデータが格納されているテーブルのアドレスを指定するためのオフセットであることを示す。また、この実施の形態では各制御コマンド毎にコマンド送信テーブルが用意されている。
【０１５９】
図２４（Ｂ）ＩＮＴデータの一構成例を示す説明図である。ＩＮＴデータにおけるビット０は、払出制御基板３７に払出制御コマンドを送出すべきか否かを示す。ビット０が「１」であるならば、払出制御コマンドを送出すべきことを示す。従って、ＣＰＵ５６は、例えば賞球処理（メイン処理のステップＳ３１）において、ＩＮＴデータに「０１（Ｈ）」を設定する。また、ＩＮＴデータにおけるビット１は、図柄出制御基板８０に表示制御コマンドを送出すべきか否かを示す。ビット１が「１」であるならば、表示制御コマンドを送出すべきことを示す。従って、ＣＰＵ５６は、例えば特別図柄コマンド制御処理（メイン処理のステップＳ２７）において、ＩＮＴデータに「０２（Ｈ）」を設定する。
【０１６０】
ＩＮＴデータのビット２，３は、それぞれ、ランプ制御コマンド、音声制御コマンドを送出すべきか否かを示すビットであり、ＣＰＵ５６は、それらのコマンドを送出すべきタイミングになったら、特別図柄プロセス処理等で、ポインタが指しているコマンド送信テーブルに、ＩＮＴデータ、コマンドデータ１およびコマンドデータ２を設定する。それらのコマンドを送出するときには、ＩＮＴデータの該当ビットが「１」に設定され、コマンドデータ１およびコマンドデータ２にＭＯＤＥデータおよびＥＸＴデータが設定される。
【０１６１】
この実施の形態では、各制御コマンドについて、それぞれ複数のコマンド送信バッファが用意され、使用すべきコマンド送信バッファはポインタで指定される。また、複数のコマンド送信バッファはリングバッファとして使用される。例えば、払出制御コマンドについて、図２４（Ｃ）に示すように、１２個のコマンド送信バッファが用意されている。従って、ＣＰＵ５６は、例えば、賞球処理において、賞球個数を示す払出制御コマンドを送出するときに、コマンド送信個数カウンタが指しているコマンド送信バッファに、ＩＮＴデータ、コマンドデータ１およびコマンドデータ２を設定する。そして、コマンド送信個数カウンタを更新する。そして、コマンド送信個数カウンタの値が１２になると、その値を０に戻す。
【０１６２】
図２５は、主基板３１から他の電気部品制御基板に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは２バイト構成であり、１バイト目はＭＯＤＥ（コマンドの分類）を表し、２バイト目はＥＸＴ（コマンドの種類）を表す。ＭＯＤＥデータの先頭ビット（ビット７）は必ず「１」とされ、ＥＸＴデータの先頭ビット（ビット７）は必ず「０」とされる。なお、図２５に示されたコマンド形態は一例であって他のコマンド形態を用いてもよい。
【０１６３】
図２６は、遊技制御基板から他の各電気部品制御基板に対する制御コマンドを構成する８ビットの制御信号と取込信号としてのＩＮＴ信号（ストローブ信号）との関係を示すタイミング図である。各電気部品制御手段に対する制御コマンドを構成する８ビットの制御信号とＩＮＴ信号との関係を示すタイミング図である。図２６に示すように、ＭＯＤＥまたはＥＸＴのデータが出力ポートに出力されてから、Ａで示される期間が経過すると、ＣＰＵ５６は、データ出力を示す信号であるＩＮＴ信号をハイレベルからローレベルに立ち下げる。また、そこからＢで示される期間が経過するとＩＮＴ信号をハイレベルに立ち上げる。さらに、次に送出すべきデータがある場合には、すなわち、ＭＯＤＥデータ送出後では、Ｃで示される期間をおいてから２バイト目のデータを出力ポートに送出する。２バイト目のデータに関して、Ａ，Ｂの期間は、１バイト目の場合と同様である。このように、取込信号には、所定時間のオンデータ期間（ローアクティブ（負論理）の場合のローレベル期間）と所定時間のオフデータ期間（ローアクティブの場合のハイレベル期間）とが存在する。
【０１６４】
Ａの期間は、ＣＰＵ５６が、コマンドの送出準備の期間すなわちバッファに送出コマンドを設定する処理に要する期間であるとともに、制御信号線におけるデータの安定化のための期間である。また、Ｂ，Ｃの期間は、電気部品制御手段が確実にデータを取り込めるように設定されている期間である。Ｂ，Ｃの期間では、信号線上のデータは変化しない。すなわち、Ｂ，Ｃの期間が経過するまでデータ出力が維持される。
【０１６５】
この実施の形態では、払出制御基板３７への払出制御コマンド、図柄制御基板８０への表示制御コマンド、ランプ制御基板３５へのランプ制御コマンドおよび音声制御基板７０への音声制御コマンドは、同一のコマンド送信処理ルーチン（共通モジュール）を用いて送出される。そこで、Ｂ，Ｃの期間すなわち１バイト目に関するＩＮＴ信号がオフ状態（ローアクティブならばハイレベル）になってから２バイト目のデータが送出開始されるまでの期間は、コマンド受信処理に最も時間がかかる電気部品制御手段における受信処理時間よりも長くなるように設定される。
【０１６６】
なお、各電気部品制御手段は、ＩＮＴ信号が最初に立ち下がったことを検知して、例えば割込処理によって１バイトのデータの取り込み処理を開始する。
【０１６７】
Ｂ，Ｃの期間が、コマンド受信処理に最も時間がかかる電気部品制御手段における受信処理時間よりも長いので、遊技制御手段が、各電気部品制御手段に対するコマンド送出処理を共通モジュールで制御しても、いずれの電気部品制御手段でも遊技制御手段からの制御コマンドを確実に受信することができる。
【０１６８】
この実施の形態では、ＣＰＵ５６は、（１１．７７６／２）ＭＨｚのシステムクロックで動作している。そして、具体的には、Ａの期間に１３８ステート（１ステート＝［２／１１．７７６］μｓ）かけ、Ｂの期間に８２ステートかけ、Ｃの期間に２５１ステートかけている。従って、Ａ，Ｃの期間（ハイレベル期間）はＢの期間（ローレベル期間）よりも長い。この実施の形態では電気部品制御手段はＩＮＴ信号がローレベルに変化することによって割込処理が起動され割込処理によって制御コマンドを取り込むのであるが、例えば、ＩＮＴ信号を入力ポートに入力し、ポートのレベル監視（ローレベルが所定期間継続したか否かの監視）にもとづいて制御コマンド受信処理を開始するような場合には、ローレベル期間がより短く設定されることによって、ノイズ等に起因する誤受信を防止することができる。
【０１６９】
図２７は、払出制御コマンドの内容の一例を示す説明図である。図２７に示された例において、ＭＯＤＥ＝ＦＦ（Ｈ），ＥＸＴ＝００（Ｈ）のコマンドＦＦ００（Ｈ）は、払出可能状態を指定する払出制御コマンド（払出可能状態指定コマンド）である。ＭＯＤＥ＝ＦＦ（Ｈ），ＥＸＴ＝０１（Ｈ）のコマンドＦＦ０１（Ｈ）は、払出停止状態を指定する払出制御コマンド（払出停止状態指定コマンド）である。また、ＭＯＤＥ＝Ｆ０（Ｈ）のコマンドＦ０ＸＸ（Ｈ）は、賞球個数を指定する払出制御コマンドである。ＥＸＴである「ＸＸ」が払出個数を示す。
【０１７０】
払出制御手段は、主基板３１の遊技制御手段からＦＦ０１（Ｈ）の払出制御コマンドを受信すると賞球払出および球貸しを停止する状態となり、ＦＦ００（Ｈ）の払出制御コマンドを受信すると賞球払出および球貸しができる状態になる。また、賞球個数を指定する払出制御コマンドを受信すると、受信したコマンドで指定された個数に応じた賞球払出制御を行う。
【０１７１】
なお、払出制御コマンドは、払出制御手段が認識可能に１回だけ送出される。認識可能とは、この例では、ＩＮＴ信号が立ち下がることであり、認識可能に１回だけ送出されるとは、この例では、払出制御信号の１バイト目および２バイト目のそれぞれに応じてＩＮＴ信号が１回だけ立ち下がることである。
【０１７２】
各電気部品制御基板への制御コマンドを、対応する出力ポート（出力ポート１〜４）に出力する際に、出力ポート０のビット０〜３のうちのいずれかのビットが所定期間オン状態（ローアクティブであればローレベル）になるのであるが、ＩＮＴデータにおけるビット配列と出力ポート０におけるビット配列とは対応している。従って、各電気部品制御基板に制御コマンドを送出する際に、コマンド送信バッファに設定されているＩＮＴデータにもとづいて、容易にＩＮＴ信号の出力を行うことができる。
【０１７３】
図２８は、コマンドセット処理（ステップＳ２０６，Ｓ２０７，Ｓ２２７）の処理例を示すフローチャートである。コマンドセット処理は、コマンド出力処理とＩＮＴ信号出力処理とを含む処理である。コマンドセット処理において、ＣＰＵ５６は、まず、コマンド送信テーブルのアドレス（送信コマンドデータ指示手段としてのポインタの内容）をスタック等に退避する（ステップＳ３３１）。そして、ポインタが指していたコマンド送信テーブルのＩＮＴデータを引数１にロードする（ステップＳ３３２）。引数１は、後述するコマンド送信処理に対する入力情報になる。また、コマンド送信テーブルを指すアドレスを＋１する（ステップＳ３３３）。従って、コマンド送信テーブルを指すアドレスは、コマンドデータ１のアドレスに一致する。なお、賞球個数を示す払出制御コマンドは図２４に示されたコマンド送信バッファに格納されているので、賞球個数を示す払出制御コマンドを送出する場合には、コマンド送信テーブルを指すアドレスとは、実際には、コマンド送信バッファを指すアドレスのことである。
【０１７４】
そこで、ＣＰＵ５６は、コマンドデータ１を読み出して引数２に設定する（ステップＳ３３４）。引数２も、後述するコマンド送信処理に対する入力情報になる。そして、コマンド送信処理ルーチンをコールする（ステップＳ３３５）。
【０１７５】
図２９は、コマンド送信処理ルーチンを示すフローチャートである。コマンド送信処理ルーチンにおいて、ＣＰＵ５６は、まず、引数１に設定されているデータすなわちＩＮＴデータを、比較値として決められているワークエリアに設定する（ステップＳ３５１）。次いで、送信回数＝４を、処理数として決められているワークエリアに設定する（ステップＳ３５２）。そして、払出制御信号を出力するためのポート１のアドレスをＩＯアドレスにセットする（ステップＳ３５３）。この実施の形態では、ポート１のアドレスは、払出制御信号を出力するための出力ポートのアドレスである。また、ポート２〜４のアドレスが、表示制御信号、ランプ制御信号、音声制御信号を出力するための出力ポートのアドレスである。
【０１７６】
次に、ＣＰＵ５６は、比較値を１ビット右にシフトする（ステップＳ３５４）。シフト処理の結果、キャリービットが１になったか否か確認する（ステップＳ３５５）。キャリービットが１になったということは、ＩＮＴデータにおける最も右側のビットが「１」であったことを意味する。この実施の形態では４回のシフト処理が行われるのであるが、例えば、払出制御コマンドを送出すべきことが指定されているときには、最初のシフト処理でキャリービットが１になる。
【０１７７】
キャリービットが１になった場合には、引数２に設定されているデータ、この場合にはコマンドデータ１（すなわちＭＯＤＥデータ）を、ＩＯアドレスとして設定されているアドレスに出力する（ステップＳ３５６）。最初のシフト処理が行われたときにはＩＯアドレスにポート１のアドレスが設定されているので、そのときに、払出制御コマンドのＭＯＤＥデータがポート１に出力される。
【０１７８】
次いで、ＣＰＵ５６は、ＩＯアドレスを１加算するとともに（ステップＳ３５７）、処理数を１減算する（ステップＳ３５８）。加算前にポート１を示していた場合には、ＩＯアドレスに対する加算処理によって、ＩＯアドレスにはポート２のアドレスが設定される。ポート２は、表示制御コマンドを出力するためのポートである。そして、ＣＰＵ５６は、処理数の値を確認し（ステップＳ３５９）、値が０になっていなければ、ステップＳ３５４に戻る。ステップＳ３５４で再度シフト処理が行われる。
【０１７９】
２回目のシフト処理ではＩＮＴデータにおけるビット１の値が押し出され、ビット１の値に応じてキャリーフラグが「１」または「０」になる。従って、表示制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。同様に、３回目および４回目のシフト処理によって、ランプ制御コマンドおよび音声制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。このように、それぞれのシフト処理が行われるときに、ＩＯアドレスには、シフト処理によってチェックされる制御コマンド（払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド）に対応したＩＯアドレスが設定されている。
【０１８０】
よって、キャリーフラグが「１」になったときには、対応する出力ポート（ポート１〜ポート４）に制御コマンドが送出される。すなわち、１つの共通モジュールで、各電気部品制御手段に対する制御コマンドの送出処理を行うことができる。
【０１８１】
また、このように、シフト処理のみによってどの電気部品制御手段に対して制御コマンドを出力すべきかが判定されるので、いずれの電気部品制御手段に対して制御コマンドを出力すべきか判定する処理が簡略化されている。
【０１８２】
次に、ＣＰＵ５６は、シフト処理開始前のＩＮＴデータが格納されている引数１の内容を読み出し（ステップＳ３６０）、読み出したデータを反転してポート０に出力する（ステップＳ３６１）。この実施の形態では、ポート０のアドレスは、各制御信号についてのＩＮＴ信号を出力するためのポートであり、ポート０のビット０〜４が、それぞれ、払出制御ＩＮＴ信号、表示制御ＩＮＴ信号、ランプ制御ＩＮＴ信号、音声制御ＩＮＴ信号を出力するためのポートである。ＩＮＴデータでは、ステップＳ３５１〜Ｓ３５９の処理で出力された制御コマンド（払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド）に応じたＩＮＴ信号の出力ビットに対応したビットが「１」になっている。従って、ポート１〜ポート４のいずれかに出力された制御コマンド（払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド）に対応したＩＮＴ信号がローレベルになる。
【０１８３】
次いで、ＣＰＵ５６は、ウェイトカウンタに所定値を設定し（ステップＳ３６２）、その値が０になるまで１ずつ減算する（ステップＳ３６３，Ｓ３６４）。この処理は、図２６のタイミング図に示されたＩＮＴ信号（制御信号ＩＮＴ）のオフ期間（ローレベル期間＝Ｂ期間）を設定するための処理である。ウェイトカウンタの値が０になると、クリアデータ（この例ではオール「１」）を設定して（ステップＳ３６５）、そのデータをポート０に出力する（ステップＳ３６６）。よって、ＩＮＴ信号はローレベルになる。そして、ウェイトカウンタに所定値を設定し（ステップＳ３６２）、その値が０になるまで１ずつ減算する（ステップＳ３６８，Ｓ３６９）。この処理は、１つ目のＩＮＴ信号の立ち下がりからＥＸＴデータ出力開始までの期間を設定するための処理である。
【０１８４】
従って、ステップＳ３６７でウェイトカウンタに設定される値は、１つ目のＩＮＴ信号の立ち下がりからＥＸＴデータ出力開始までの期間が、制御コマンド受信対象となる全ての電気部品制御手段（サブ基板に搭載されているＣＰＵ等）が確実にコマンド受信処理を行うのに十分な期間になるような値である。また、ウェイトカウンタに設定される値は、その期間が、ステップＳ３５１〜Ｓ３５９の処理に要する時間よりも長くなるような値である。
【０１８５】
以上のようにして、制御コマンドの１バイト目のＭＯＤＥデータが送出される。そこで、ＣＰＵ５６は、図２８に示すステップＳ３３６で、コマンド送信テーブルを指す値を１加算する。従って、３バイト目のコマンドデータ２の領域が指定される。ＣＰＵ５６は、指し示されたコマンドデータ２の内容を引数２にロードする（ステップＳ３３７）。また、コマンドデータ２のビット７（ワークエリア参照ビット）の値が「０」であるか否か確認する（ステップＳ３３９）。０でなければ、コマンド拡張データアドレステーブルの先頭アドレスをポインタにセットし（ステップＳ３３９）、そのポインタにコマンドデータ２のビット６〜ビット０の値を加算してアドレスを算出する（ステップＳ３４０）。そして、そのアドレスが指すエリアのデータを引数２にロードする（ステップＳ３４１）。
【０１８６】
コマンド拡張データアドレステーブルには、電気部品制御手段に送出されうるＥＸＴデータが順次設定されている。よって、以上の処理によって、ワークエリア参照ビットの値が「１」であれば、コマンドデータ２の内容に応じたコマンド拡張データアドレステーブル内のＥＸＴデータが引数２にロードされ、ワークエリア参照ビットの値が「０」であれば、コマンドデータ２の内容がそのまま引数２にロードされる。なお、コマンド拡張データアドレステーブルからＥＸＴデータが読み出される場合でも、そのデータのビット７は「０」である。
【０１８７】
次に、ＣＰＵ５６は、コマンド送信処理ルーチンをコールする（ステップＳ３４２）。従って、ＭＯＤＥデータの送出の場合と同様のタイミングでＥＸＴデータが送出される。その後、ＣＰＵ５６は、コマンド送信テーブルのアドレスを復帰し（ステップＳ３４３）、コマンド送信テーブルを指す読出ポインタの値を更新する（ステップＳ３４４）。読出ポインタの値が図２４（Ｃ）に示すコマンドコマンド送信バッファ１２の位置を越えた場合には、読出ポインタの値が０に戻される。
【０１８８】
以上のようにして、１つの制御信号出力モジュールであるコマンド制御処理モジュールによって、２バイト構成の各制御コマンド（払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド）が、対応する電気部品制御手段に送信される。電気部品制御手段では、取込信号としてのＩＮＴ信号の立ち下がりを検出すると制御コマンドの取り込み処理を開始するのであるが、いずれの電気部品制御手段についても、取り込み処理が完了する前に遊技制御手段からの新たな信号が信号線に出力されることはない。すなわち、各電気部品制御手段において、確実なコマンド受信処理が行われる。なお、各電気部品制御手段は、ＩＮＴ信号の立ち上がりで制御コマンドの取り込み処理を開始してもよい。
【０１８９】
また、この実施の形態では、複数のコマンド送信テーブルがリングバッファとして用いられ、図２８に示すコマンドセット処理では、読出ポインタが指しているコマンド送信テーブル（コマンド送信バッファ）を対象としてコマンド出力制御が行われ、コマンド送信バッファにデータを設定する処理では、コマンド送信個数カウンタが指すコマンド送信バッファを対象としてコマンド設定処理が行われる。従って、同時に複数のコマンド送出要求が発生しても、それらの要求にもとづくコマンド出力処理は問題なく実行される。
【０１９０】
さらに、この実施の形態では、１回の賞球処理内で払出停止状態指定コマンドまたは払出可能状態指定コマンドと賞球個数を示すコマンドとの双方を送出することができる。すなわち、２ｍｓ毎に起動される１回の制御期間内において、複数のコマンドを送出することができる。また、この実施の形態では、各制御手段への制御コマンド（表示制御コマンド、ランプ制御コマンド、音声制御コマンド、払出制御コマンド）毎に、それぞれ複数のコマンド送信テーブルが用意されているので、例えば、表示制御コマンド、ランプ制御コマンドおよび音声制御コマンドのコマンド送信テーブルに制御コマンドが設定されている場合には、１回のコマンド制御処理で複数の表示制御コマンド、ランプ制御コマンドおよび音声制御コマンドを送出するように構成することも可能である。すなわち、同時に（１メイン処理起動周期での意味）、それらの制御コマンドを送出することができる。遊技演出の進行上、それらの制御コマンドの送出タイミングは同時に発生するので、このように構成されているのは便利である。ただし、払出制御コマンドは、遊技演出の進行とは無関係に発生するので、一般には、表示制御コマンド、ランプ制御コマンドおよび音声制御コマンドと同時に送出されることはない。
【０１９１】
図３０は、賞球個数減算処理の一例を示すフローチャートである。賞球個数減算処理において、ＣＰＵ５６は、まず、総賞球数格納バッファの格納値をロードする（ステップＳ２４１）。そして、格納値が０であるか否か確認する（ステップＳ２４２）。０であれば処理を終了する。
【０１９２】
０でなければ、賞球カウントスイッチ用のスイッチタイマをロードし（ステップＳ２４３）、ロード値とオン判定値（この場合は「２」）とを比較する（ステップＳ２４４）。一致したら（ステップＳ２４５）、賞球カウントスイッチ３０１Ａが確かにオンしたとして、すなわち、確かに１個の遊技球が球払出装置９７から払い出されたとして、総賞球数格納バッファの格納値を１減算する（ステップＳ２４６）。
【０１９３】
また、賞球情報カウンタの値を＋１する（ステップＳ２４７）。そして、賞球情報カウンタの値が１０以上であれば（ステップＳ２４８）、賞球情報出力カウンタの値を＋１するとともに（ステップＳ２４９）、賞球情報カウンタの値を−１０する（ステップＳ２５０）。なお、賞球情報出力カウンタの値は、図１３に示されたメイン処理における情報出力処理（ステップＳ２９）で参照され、その値が１以上であれば、賞球信号（出力ポート５のビット７：図１１参照）として１パルスが出力される。よって、この実施の形態では、１０個の遊技球が賞球として払い出される度に、１つの賞球信号が遊技機外部に出力される。なお、賞球払出検出に応じて賞球信号を出力する処理は、図２１に示すステップＳ２３０で「ＹＥＳ」の判定がなされ、図３０に示すステップＳ２４２で「ＮＯ」の判定がなされた場合に限らず、すなわち、総賞球数バッファの内容が０であっても、必ず実行するようにしてもよい。そのようにすれば、主基板３１側の記憶内容（総賞球数バッファの内容）に関わらず、賞球払出が検出されれば必ず情報として出力されるので、遊技店側で実際の賞球払出数をより確実に把握することができる。
【０１９４】
そして、総賞球数格納バッファの格納値が０になったら（ステップＳ２５１）、賞球払出中フラグをクリアし（ステップＳ２５２）、賞球残数がないことを報知するために、ランプ制御コマンド用のコマンド送信テーブルに賞球ランプ５１の消灯を示すコマンドデータを設定した後（ステップＳ２５３）、ランプ制御コマンドの送出処理を実行する（ステップＳ２５４）。
【０１９５】
上記の実施の形態では、図２６に示されたように、ＩＮＴ信号はローアクティブ（負論理）であって、ＩＮＴ信号の立ち下がりのタイミングで払出制御手段は払出制御コマンドの取込を開始したが、ＩＮＴ信号をハイアクティブ（正論理）とし、ＩＮＴ信号の立ち上がりで払出制御手段が払出制御コマンドの取込を開始するようにしてもよい。また、コマンド送信バッファには、賞球個数を示すためのＭＯＤＥデータと賞球個数を特定するためのＥＸＴデータとが格納されたが、メモリ容量節減のために、リングバッファ形式のバッファ領域に賞球個数を特定するためのデータ（ＥＸＴデータに対応）のみを格納するようにしてもよい。
【０１９６】
以下、ＩＮＴ信号をハイアクティブとし、ＩＮＴ信号の立ち上がりで払出制御手段が払出制御コマンドの取込を開始するようにし、遊技制御手段におけるリングバッファ形式のバッファ領域に賞球個数を特定するためのデータ（ＥＸＴデータに対応）のみを格納する実施の形態について説明する。
【０１９７】
図３１は、制御コマンドを構成する８ビットの制御信号ＣＤ０〜ＣＤ７とＩＮＴ信号との関係を示すタイミング図である。図３１に示すように、ＭＯＤＥまたはＥＸＴのデータが出力ポート（出力ポート１〜出力ポート４のうちのいずれか）に出力されてから、Ａで示される期間が経過すると、ＣＰＵ５６は、データ出力を示す信号であるＩＮＴ信号をハイレベル（オンデータ）にする。また、そこからＢで示される期間が経過するとＩＮＴ信号をローレベル（オフデータ）にする。さらに、次に送出すべきデータがある場合には、すなわち、ＭＯＤＥデータ送出後では、Ｃで示される期間をおいてから２バイト目のデータを出力ポートに送出する。２バイト目のデータに関して、Ａ，Ｂの期間は、１バイト目の場合と同様である。このように、取込信号はＭＯＤＥおよびＥＸＴのデータのそれぞれについて出力される。
【０１９８】
Ａの期間は、ＣＰＵ５６が、コマンドの送出準備の期間すなわちバッファに送出コマンドを設定する処理に要する期間であるとともに、制御信号線におけるデータの安定化のための期間である。すなわち、制御信号線において制御信号ＣＤ０〜ＣＤ７が出力された後、所定期間（Ａの期間：オフ出力期間の一部）経過後に、取込信号としてのＩＮＴ信号が出力される。また、Ｂの期間（オン出力期間）は、ＩＮＴ信号安定化のための期間である。そして、Ｃの期間（オフ出力期間の一部）は、電気部品制御手段が確実にデータを取り込めるように設定されている期間である。Ｂ，Ｃの期間では、信号線上のデータは変化しない。すなわち、Ｂ，Ｃの期間が経過するまでデータ出力が維持される。なお、オフ出力期間とはハイアクティブの場合のローレベル期間であり、オン出力期間とはハイアクティブの場合のハイレベル期間である。
【０１９９】
この実施の形態では、払出制御基板３７への払出制御コマンド、図柄制御基板８０への表示制御コマンド、ランプ制御基板３５へのランプ制御コマンドおよび音声制御基板７０への音声制御コマンドは、同一のコマンド送信処理ルーチン（共通モジュール）を用いて送出される。そこで、Ｂ，Ｃの期間すなわち１バイト目に関するＩＮＴ信号が立ち上がってから２バイト目のデータが送出開始されるまでの期間は、コマンド受信処理に最も時間がかかる電気部品制御手段における受信処理時間よりも長くなるように設定される。
【０２００】
なお、各電気部品制御手段は、ＩＮＴ信号が立ち上がったことを検知して、例えば割込処理によって１バイトのデータの取り込み処理を開始する。
【０２０１】
Ｂ，Ｃの期間が、コマンド受信処理に最も時間がかかる電気部品制御手段における受信処理時間よりも長いので、遊技制御手段が、各電気部品制御手段に対するコマンド送出処理を共通モジュールで制御しても、いずれの電気部品制御手段でも遊技制御手段からの制御コマンドを確実に受信することができる。
【０２０２】
この実施の形態では、遊技制御手段において、払出制御コマンドについて、図３２に示すように、リングバッファおよび送信バッファが用意されている。そして、賞球処理において、賞球払出条件が成立すると、成立した条件に応じた賞球数が順次リングバッファに設定される。また、賞球数に関する払出制御コマンド送出する際に、リングバッファから１個のデータが送信バッファに転送される。なお、図３２に示す例では、リングバッファには、１２個分の払出制御コマンドに相当するデータが格納可能になっている。すなわち、１２個のバッファがある。なお、リングバッファにおけるバッファの数は、賞球を発生させる入賞口の数に対応した数であればよい。同時入賞が発生した場合でも、それぞれの入賞にもとづく払出制御コマンドのデータの格納が可能だからである。
【０２０３】
図３３および図３４は、この実施の形態での賞球処理の一部を示すフローチャートである。図３３および図３４に示す処理は、図１９に示された処理に続けて実行される。ステップＳ１２１において、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し、スイッチタイマのアドレスのオフセットとして「０」を設定する（ステップＳ１２２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「０」は入賞口スイッチ２４ａに対応したスイッチタイマが指定されることを意味する。また、繰り返し数として「４」をセットする（ステップＳ１２３）。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１２４）。スイッチオンチェックルーチンの動作は、既に説明したとおりである（図２２参照）。
【０２０４】
スイッチオンフラグがセットされたら、払い出すべき賞球個数としての「１０」をリングバッファに設定する（ステップＳ１２６Ａ）。そして、総賞球数格納バッファの格納値に１０を加算する（ステップＳ１２７）。なお、リングバッファにデータを書き込んだときには、書込ポインタをインクリメントし、リングバッファの最後の領域にデータを書き込まれたときには、書込ポインタを、リングバッファの最初の領域を指すように更新する。
【０２０５】
総賞球数格納バッファは、払出制御手段に対して指示した賞球個数の累積値（ただし、払い出しがなされると減算される）が格納されるバッファであり、バックアップＲＡＭに形成されている。なお、この実施の形態では、リングバッファにデータを書き込んだ時点で総賞球数格納バッファの格納値に対する加算処理が行われるが、後述するステップＳ２６５でコマンドセット処理をコールする時点、または、払い出すべき賞球数を指示する払出制御コマンドを出力ポートに出力した時点で総賞球数格納バッファの格納値に対する、出力する払出制御コマンドに対応した賞球数の加算処理を行ってもよい。
【０２０６】
次に、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し（ステップＳ１３１）、スイッチタイマのアドレスのオフセットとして「４」を設定する（ステップＳ１３２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「４」は始動口スイッチ１７に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ１３３）。
【０２０７】
スイッチオンチェックルーチンにおいて、始動口スイッチ１７に対応するスイッチタイマの値がスイッチオン判定値「２」に一致していればスイッチオンフラグがセットされる（ステップＳ１３４）。スイッチオンフラグがセットされたら、払い出すべき賞球個数としての「６」をリングバッファに設定する（ステップＳ１３５Ａ）。また、総賞球数格納バッファの格納値に６を加算する（ステップＳ１３６）。
【０２０８】
次いで、ＣＰＵ５６は、入力判定値テーブルのオフセットとして「０」を設定し（ステップＳ２２１）、スイッチタイマのアドレスのオフセットとして「５」を設定する（ステップＳ２２２）。入力判定値テーブルのオフセット「０」は、入力判定値テーブルの最初のデータを使用することを意味する。また、各スイッチタイマは、図１２に示された入力ポートのビット順と同順に並んでいるので、スイッチタイマのアドレスのオフセット「５」はカウントスイッチ２３に対応したスイッチタイマが指定されることを意味する。そして、スイッチオンチェックルーチンがコールされる（ステップＳ２２３）。
【０２０９】
スイッチオンチェックルーチンにおいて、カウントスイッチ２３に対応するスイッチタイマの値がスイッチオン判定値「２」に一致していればスイッチオンフラグがセットされる（ステップＳ２２４）。スイッチオンフラグがセットされたら、払い出すべき賞球個数としての「１５」をリングバッファに設定する（ステップＳ２２５Ａ）。また、総賞球数格納バッファの格納値に１５を加算する（ステップＳ２２６）。
【０２１０】
そして、リングバッファにデータが存在する場合には（ステップＳ２６１）、読出ポインタが指すリングバッファの内容を送信バッファにセットするとともにＩＮＴデータの設定を行い（ステップＳ２６２）、読出ポインタの値を更新（リングバッファの次の領域を指すように更新）し（ステップＳ２６３）、賞球数に関するコマンド送信テーブルをセットし（ステップＳ２６４）、コマンドセット処理をコールする（ステップＳ２６５）。この実施の形態でのコマンドセット処理の動作については後で詳しく説明する（図３５参照）。
【０２１１】
ステップＳ２６４では、賞球数に関する払出制御コマンドが格納されているコマンド送信テーブル（ＲＯＭ）の先頭アドレスが、コマンド送信テーブルのアドレスとして設定される。賞球数に関するコマンド送信テーブルには、後述するＩＮＴデータ（０１（Ｈ））、払出制御コマンドの１バイト目のデータ（Ｆ０（Ｈ））、および払出制御コマンドの２バイト目のデータが設定されている。ただし、２バイト目のデータとして「８０（Ｈ）」が設定されている。すなわち、この実施の形態では、払出制御コマンドの２バイト目のデータにおいて、ワークエリア参照ビットがオンに設定されている。そして、ワークエリアの内容（拡張データ）として、送信バッファの内容が用いられる。
【０２１２】
以上のように、遊技制御手段から払出制御基板３７に賞球数を指示する払出制御コマンドを出力しようとするときに、賞球数に関するコマンド送信テーブルのアドレス設定と送信バッファの設定とが行われる。そして、コマンドセット処理によって、賞球数に関するコマンド送信テーブルと送信バッファの設定内容とにもとづいて払出制御コマンドが払出制御基板３７に送出される。なお、ステップＳ２４１において、書込ポインタと読出ポインタとの差によってデータがあるか否か確認することができるが、リングバッファ内の未処理のデータ個数を示すカウンタを設け、カウント値によってデータがあるか否か確認するようにしてもよい。
【０２１３】
そして、総賞球数バッファの内容が０でない場合、すなわち、まだ賞球残がある場合には、ＣＰＵ５６は、賞球払出中フラグをオンする（ステップＳ２６６，Ｓ２６７）。
【０２１４】
また、ＣＰＵ５６は、賞球払出中フラグがオンしているときには（ステップＳ２６８）、球払出装置９７から実際に払い出された賞球数を監視して総賞球数格納バッファの格納値を減算する賞球個数減算処理を行う（ステップＳ２６９）。
【０２１５】
図３５は、この実施の形態におけるコマンドセット処理（ステップＳ２０６，Ｓ２０７，Ｓ２６５）の処理例を示すフローチャートである。コマンドセット処理は、コマンド出力処理とＩＮＴ信号出力処理とを含む処理である。コマンドセット処理において、ＣＰＵ５６は、まず、コマンド送信テーブルのアドレス（送信コマンドデータ指示手段としてのポインタの内容）をスタック等に退避する（ステップＳ３３１）。そして、ポインタが指していたコマンド送信テーブルのＩＮＴデータを引数１にロードする（ステップＳ３３２）。引数１は、後述するコマンド送信処理に対する入力情報になる。また、コマンド送信テーブルを指すアドレスを＋１する（ステップＳ３３３）。従って、コマンド送信テーブルを指すアドレスは、コマンドデータ１のアドレスに一致する。
【０２１６】
そこで、ＣＰＵ５６は、コマンドデータ１を読み出して引数２に設定する（ステップＳ３３４）。引数２も、後述するコマンド送信処理に対する入力情報になる。そして、コマンド送信処理ルーチンをコールする（ステップＳ３３５）。コマンド送信処理ルーチンの動作は既に説明したとおりである（図２９参照）。ただし、この実施の形態ではＩＮＴ信号はハイアクティブであるから、この場合には、ステップＳ３６１において、ポート０の該当ビットに「１」が出力され、ステップＳ３６５で設定されるクリアデータは「００」である。
【０２１７】
以上のようにして、制御コマンドの１バイト目のＭＯＤＥデータが送出される。そこで、ＣＰＵ５６は、ステップＳ３３６で、コマンド送信テーブルを指す値を１加算する。従って、３バイト目のコマンドデータ２の領域が指定される。ＣＰＵ５６は、指し示されたコマンドデータ２の内容を引数２にロードする（ステップＳ３３７）。また、コマンドデータ２のビット７（ワークエリア参照ビット）の値が「０」であるか否か確認する（ステップＳ３３８）。０でなければ、送信バッファの内容を引数２にロードする（ステップＳ３７１）。上述したように、この実施の形態では、コマンドデータ２のビット７が「１」に設定されている。従って、送信バッファの設定内容が引数２にロードされる。送信バッファには賞球数を特定可能なデータが設定されているので、引数２にそのデータが設定される。
【０２１８】
なお、ワークエリア参照ビットの値が「１」であるときにコマンド送信テーブルの内容以外の拡張データを使用するように構成されている場合には、例えば、コマンド拡張データアドレステーブルに、電気部品制御手段に送出されうるＥＸＴデータが順次設定される。その場合、ワークエリア参照ビットの値が「１」であれば、コマンドデータ２の内容に応じたコマンド拡張データアドレステーブル内のＥＸＴデータが引数２にロードされる。
【０２１９】
次に、ＣＰＵ５６は、コマンド送信処理ルーチンをコールする（ステップＳ３７２）。従って、ＭＯＤＥデータの送出の場合と同様のタイミングでＥＸＴデータが送出される。なお、図３１に示されたＣの期間は、オンデータが出力される所定時間が経過した後でコマンドデータの出力が維持される所定の出力維持期間に相当しているが、コマンド送信処理ルーチンにおけるステップＳ３６７〜Ｓ３６９の処理によって作成される（図２９参照）。ただし、実際のＣの期間は、ステップＳ３６７〜Ｓ３６９で作成される時間に、その後の処理時間（この時点でＭＯＤＥデータが出力されている場合にはＥＸＴデータを出力するまでに要する制御にかかる時間）が加算された期間となる。このように、Ｃの期間が設定されることによって、連続してコマンドが送出される場合であっても、一のコマンドの出力完了後、次にコマンドの送出が開始されるまでに所定期間がおかれることになり、コマンドを受信する電気部品制御手段の側で、容易に連続するコマンドの区切りを識別することができ、各コマンドは確実に受信される。また、図３１に示されたＡの期間は、ステップＳ３５７〜Ｓ３６０の処理に要する時間に相当するのであるが、Ａの期間を十分に確保するためにさらに長くしたい場合には、Ａの期間を作成するためのウェイト処理（例えば、ウェイトカウンタに所定値を設定し、ウェイトカウンタの値が０になるまで減算を行う処理）を行う。このことは、図２６に示されたような形式のＩＮＴ信号を用いる場合も同様である。
【０２２０】
以上のようにして、２バイト構成の制御コマンド（払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音声制御コマンド）が、対応する電気部品制御手段に送信される。電気部品制御手段ではＩＮＴ信号の立ち上がりを検出すると制御コマンドの取り込み処理を開始するのであるが、いずれの電気部品制御手段についても、取り込み処理が完了する前に遊技制御手段からの新たな信号が信号線に出力されることはない。すなわち、各電気部品制御手段において、確実なコマンド受信処理が行われる。なお、各電気部品制御手段は、ＩＮＴ信号の立ち下がりで制御コマンドの取り込み処理を開始してもよい。
【０２２１】
また、この実施の形態では、賞球処理において、賞球払出条件が成立すると賞球数を特定可能なデータが、同時に複数のデータを格納可能なリングバッファに格納され、賞球数を指定する払出制御コマンドを送出する際に、読出ポインタが指しているリングバッファの領域のデータが送信バッファに転送される。従って、同時に複数の賞球払出条件の成立があっても、それらの条件成立にもとづく賞球数を特定可能なデータがリングバッファに保存されるので、各条件成立にもとづくコマンド出力処理は問題なく実行される。
【０２２２】
次に、遊技制御手段以外の電気部品制御手段において制御コマンド受信処理が行われる場合の例として、払出制御手段において払出制御コマンドの受信が行われる場合について説明する。
【０２２３】
図３６は、払出制御用ＣＰＵ３７１周りの一構成例を示すブロック図である。図３６に示すように、電源基板９１０の電源監視回路（電源監視手段）からの電源断信号が、バッファ回路９６０を介して払出制御用ＣＰＵ３７１のマスク不能割込端子（ＸＮＭＩ端子）に接続されている。従って、払出制御用ＣＰＵ３７１は、マスク不能割込処理によって電源断の発生を確認することができる。
【０２２４】
払出制御用ＣＰＵ３７１のＣＬＫ／ＴＲＧ２端子には、主基板３１からのＩＮＴ信号が接続されている。ＣＬＫ／ＴＲＧ２端子にクロック信号が入力されると、払出制御用ＣＰＵ３７１に内蔵されているタイマカウンタレジスタＣＬＫ／ＴＲＧ２の値がダウンカウントされる。そして、レジスタ値が０になると割込が発生する。従って、タイマカウンタレジスタＣＬＫ／ＴＲＧ２の初期値を「１」に設定しておけば、ＩＮＴ信号の入力に応じて割込が発生することになる。
【０２２５】
払出制御基板３７には、システムリセット回路９７５も搭載されているが、この実施の形態では、システムリセット回路９７５におけるリセットＩＣ９７６は、電源投入時に、外付けのコンデンサに容量で決まる所定時間だけ出力をローレベルとし、所定時間が経過すると出力をハイレベルにする。また、リセットＩＣ９７６は、ＶSLの電源電圧を監視して電圧値が所定値（例えば＋９Ｖ）以下になると出力をローレベルにする。従って、電源断時には、リセットＩＣ９７６からの信号がローレベルになることによって払出制御用ＣＰＵ３７１がシステムリセットされる。
【０２２６】
リセットＩＣ９７６が電源断を検知するための所定値は、通常時の電圧より低いが、払出制御用ＣＰＵ３７１が暫くの間動作しうる程度の電圧である。また、リセットＩＣ９７６が、払出制御用ＣＰＵ３７１が必要とする電圧（この例では＋５Ｖ）よりも高い電圧を監視するように構成されているので、払出制御用ＣＰＵ３７１が必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。
【０２２７】
＋５Ｖ電源から電力が供給されていない間、払出制御用ＣＰＵ３７１の内蔵ＲＡＭの少なくとも一部は、電源基板から供給されるバックアップ電源がバックアップ端子に接続されることによってバックアップされ、遊技機に対する電源が断しても内容は保存される。そして、＋５Ｖ電源が復旧すると、システムリセット回路９７５からリセット信号が発せられるので、払出制御用ＣＰＵ３７１は、通常の動作状態に復帰する。そのとき、必要なデータがバックアップされているので、停電等からの復旧時には停電発生時の払出制御状態に復帰することができる。
【０２２８】
なお、図３６に示された構成では、システムリセット回路９７５は、電源投入時に、コンデンサの容量で決まる期間のローレベルを出力し、その後ハイレベルを出力する。すなわち、リセット解除タイミングは１回だけである。しかし、図９に示された主基板３１の場合と同様に、複数回のリセット解除タイミングが発生するような回路構成を用いてもよい。
【０２２９】
図３７は、この実施の形態における出力ポートの割り当てを示す説明図である。図３７に示すように、出力ポートＣ（アドレス００Ｈ）は、払出モータ２８９に出力される駆動信号の出力ポートである。また、出力ポートＤ（アドレス０１Ｈ）は、７セグメントＬＥＤであるエラー表示ＬＥＤ３７４に出力される表示制御信号の出力ポートである。そして、出力ポートＥ（アドレス０２Ｈ）は、振分ソレノイド３１０に出力される駆動信号、およびカードユニット５０に対するＥＸＳ信号とＰＲＤＹ信号とを出力するための出力ポートである。
【０２３０】
図３８は、この実施の形態における入力ポートのビット割り当てを示す説明図である。図３８に示すように、入力ポートＡ（アドレス０６Ｈ）は、主基板３１から送出された払出制御コマンドの８ビットの払出制御信号を取り込むための入力ポートである。また、入力ポートＢ（アドレス０７Ｈ）のビット０〜２には、それぞれ、賞球カウントスイッチ３０１Ａ、球貸しカウントスイッチ３０１Ｂ、モータ位置センサの検出信号入力される。ビット３〜５には、カードユニット５０からのＢＲＤＹ信号、ＢＲＱ信号およびＶＬ信号が入力される。
【０２３１】
図３９は、払出制御用ＣＰＵ３７１のメイン処理を示すフローチャートである。メイン処理では、払出制御用ＣＰＵ３７１は、まず、必要な初期設定を行う。すなわち、払出制御用ＣＰＵ３７１は、まず、割込禁止に設定する（ステップＳ７０１）。次に、割込モードを割込モード２に設定し（ステップＳ７０２）、スタックポインタにスタックポインタ指定アドレスを設定する（ステップＳ７０３）。また、払出制御用ＣＰＵ３７１は、内蔵デバイスレジスタの初期化を行い（ステップＳ７０４）、ＣＴＣおよびＰＩＯの初期化（ステップＳ７０５）を行った後に、ＲＡＭをアクセス可能状態に設定する（ステップＳ７０６）。
【０２３２】
この実施の形態では、内蔵ＣＴＣのうちの一つのチャネルがタイマモードで使用される。従って、ステップＳ７０４の内蔵デバイスレジスタの設定処理およびステップＳ７０５の処理において、使用するチャネルをタイマモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。そして、そのチャネルによる割込がタイマ割込として用いられる。タイマ割込を例えば２ｍｓ毎に発生させたい場合は、初期値として２ｍｓに相当する値が所定のレジスタ（時間定数レジスタ）に設定される。
【０２３３】
なお、タイマモードに設定されたチャネル（この実施の形態ではチャネル３）に設定される割込ベクタは、タイマ割込処理の先頭番地に相当するものである。具体的は、Ｉレジスタに設定された値と割込ベクタとでタイマ割込処理の先頭番地が特定される。タイマ割込処理ではタイマ割込フラグがセットされ、メイン処理でタイマ割込フラグがセットされていることが検知されると、払出制御処理が実行される。すなわち、タイマ割込処理では、電気部品制御処理の一例である払出制御処理を実行するための設定がなされる。
【０２３４】
また、内蔵ＣＴＣのうちの他の一つのチャネル（この実施の形態ではチャネル２）が、遊技制御手段からの払出制御コマンド受信のための割込発生用のチャネルとして用いられ、そのチャネルがカウンタモードで使用される。従って、ステップＳ７０４の内蔵デバイスレジスタの設定処理およびステップＳ７０５の処理において、使用するチャネルをカウンタモードに設定するためのレジスタ設定、割込発生を許可するためのレジスタ設定および割込ベクタを設定するためのレジスタ設定が行われる。
【０２３５】
カウンタモードに設定されたチャネル（チャネル２）に設定される割込ベクタは、後述するコマンド受信割込処理の先頭番地に相当するものである。具体的は、Ｉレジスタに設定された値と割込ベクタとでコマンド受信割込処理の先頭番地が特定される。
【０２３６】
この実施の形態では、払出制御用ＣＰＵ３７１でも割込モード２が設定される。従って、内蔵ＣＴＣのカウントアップにもとづく割込処理を使用することができる。また、ＣＴＣが送出した割込ベクタに応じた割込処理開始番地を設定することができる。
【０２３７】
ＣＴＣのチャネル２（ＣＨ２）のカウントアップにもとづく割込は、上述したタイマカウンタレジスタＣＬＫ／ＴＲＧ２の値が「０」になったときに発生する割込である。従って、例えばステップＳ７０５において、特定レジスタとしてのタイマカウンタレジスタＣＬＫ／ＴＲＧ２に初期値「１」が設定される。さらに、ＣＬＫ／ＴＲＧ２端子に入力される信号の立ち上がりまたは立ち下がりで特定レジスタとしてのタイマカウンタレジスタＣＬＫ／ＴＲＧ２のカウント値が−１されるのであるが、所定の特定レジスタの設定によって、立ち上がり／立ち下がりの選択を行うことができる。なお、タイマカウンタレジスタＣＬＫ／ＴＲＧ２の値は、ＣＬＫ／ＴＲＧ２端子に入力される信号（この例ではＩＮＴ信号）のレベル変化によって−１される。図２６に示された例では、ＩＮＴ信号を負論理としてＩＮＴ信号の立ち下がり（ハイレベルからローレベルへのレベル変化）でタイマカウンタレジスタＣＬＫ／ＴＲＧ２のカウント値が−１され、図３１に示された例では、ＩＮＴ信号を正論理としてＩＮＴ信号の立ち上がり（ローレベルからハイレベルへのレベル変化）でタイマカウンタレジスタＣＬＫ／ＴＲＧ２のカウント値が−１されるのであるが、ＩＮＴ信号を負論理としてＩＮＴ信号の立ち上がりでカウント値が−１されたり、ＩＮＴ信号を正論理としてＩＮＴ信号の立ち下がりでカウント値が−１されたりするように設定することも可能である。
【０２３８】
また、ＣＴＣのチャネル３（ＣＨ３）のカウントアップにもとづく割込は、ＣＰＵの内部クロック（システムクロック）をカウントダウンしてレジスタ値が「０」になったら発生する割込であり、後述する２ｍｓタイマ割込として用いられる。具体的には、ＣＰＵ３７１の動作クロックを分周したクロックがＣＴＣに与えられ、クロックの入力によってレジスタの値が減算され、レジスタの値が０になるとタイマ割込が発生する。例えば、ＣＨ３のレジスタ値はシステムクロックの１／２５６周期で減算される。分周したクロックにもとづいて減算が行われるので、レジスタの初期値は大きくならない。ステップＳ７０５において、ＣＨ３のレジスタには、初期値として２ｍｓに相当する値が設定される。なお、この実施の形態では、初期値として４６（Ｈ）が設定される。
【０２３９】
ＣＴＣのＣＨ２のカウントアップにもとづく割込は、ＣＨ３のカウントアップにもとづく割込よりも優先順位が高い。従って、同時にカウントアップが生じた場合に、ＣＨ２のカウントアップにもとづく割込、すなわち、コマンド受信割込処理の実行契機となる割込の方が優先される。
【０２４０】
そして、払出制御用ＣＰＵ３７１は、払出制御用のバックアップＲＡＭ領域にバックアップデータが存在しているか否かの確認を行う（ステップＳ７０７）。すなわち、例えば、主基板３１のＣＰＵ５６の処理と同様に、電源断時にセットされるバックアップフラグがセット状態になっているか否かによって、バックアップデータが存在しているか否か確認する。バックアップフラグがセット状態になっている場合には、バックアップデータありと判断する。
【０２４１】
バックアップありを確認したら、払出制御用ＣＰＵ３７１は、バックアップＲＡＭ領域のデータチェック（この例ではパリティチェック）を行う。不測の電源断が生じた後に復旧した場合には、バックアップＲＡＭ領域のデータは保存されていたはずであるから、チェック結果は正常になる。チェック結果が正常でない場合には、内部状態を電源断時の状態に戻すことができないので、停電復旧時でない電源投入時に実行される初期化処理を実行する。
【０２４２】
チェック結果が正常であれば（ステップＳ７０８）、払出制御用ＣＰＵ３７１は、内部状態を電源断時の状態に戻すための払出状態復旧処理を行う（ステップＳ７０９）。そして、バックアップＲＡＭ領域に保存されていたＰＣ（プログラムカウンタ）の指すアドレスに復帰する。
【０２４３】
初期化処理では、払出制御用ＣＰＵ３７１は、まず、ＲＡＭクリア処理を行う（ステップＳ７１１）。そして、２ｍｓ毎に定期的にタイマ割込がかかるように払出制御用ＣＰＵ３７１に設けられているＣＴＣのレジスタの設定が行われる（ステップＳ７１２）。すなわち、初期値として２ｍｓに相当する値が所定のレジスタ（時間定数レジスタ）に設定される。そして、初期設定処理のステップＳ７０１において割込禁止とされているので、初期化処理を終える前に割込が許可される（ステップＳ７１３）。
【０２４４】
この実施の形態では、払出制御用ＣＰＵ３７１の内蔵ＣＴＣが繰り返しタイマ割込を発生するように設定される。この実施の形態では、繰り返し周期は２ｍｓに設定される。そして、タイマ割込が発生すると、図４０に示すように、払出制御用ＣＰＵ３７１は、例えばタイマ割込が発生したことを示すタイマ割込フラグをセットする（ステップＳ７２１）。なお、図４０には割込を許可することも明示されているが（ステップＳ７２０）、２ｍｓタイマ割込処理では、最初に割込許可状態に設定される。すなわち、２ｍｓタイマ割込処理中には割込許可状態になってので、ＩＮＴ信号の入力にもとづく払出制御コマンド受信処理を優先して実行することができる。
【０２４５】
払出制御用ＣＰＵ３７１は、ステップＳ７２４において、タイマ割込フラグがセットされたことを検出するとステップＳ７５１以降の払出制御処理を実行する。以上の制御によって、この実施の形態では、払出制御処理は２ｍｓ毎に起動されることになる。なお、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、払出制御処理はメイン処理において実行されるが、タイマ割込処理で払出制御処理を実行してもよい。
【０２４６】
払出制御処理において、払出制御用ＣＰＵ３７１は、まず、中継基板７２を介して入力ポート３７２ｂに入力される賞球カウントスイッチ３０１Ａ、球貸しカウントスイッチ３０１Ｂがオンしたか否かを判定する（スイッチ処理：ステップＳ７５１）。
【０２４７】
次に、払出制御用ＣＰＵ３７１は、センサ（例えば、払出モータ２８９の回転数を検出するモータ位置センサ）からの信号入力状態を確認してセンサの状態を判定する等の処理を行う（入力判定処理：ステップＳ７５２）。払出制御用ＣＰＵ３７１は、さらに、受信した払出制御コマンドを解析し、解析結果に応じた処理を実行する（コマンド解析実行処理：ステップＳ７５３）。
【０２４８】
次いで、払出制御用ＣＰＵ３７１は、主基板３１から払出停止状態指定コマンドを受信していたら払出停止状態に設定し、払出可能状態指定コマンドを受信していたら払出停止状態の解除を行う（ステップＳ７５４）。また、プリペイドカードユニット制御処理を行う（ステップＳ７５５）。
【０２４９】
次いで、払出制御用ＣＰＵ３７１は、球貸し要求に応じて貸し球を払い出す制御を行う（ステップＳ７５６）。このとき、払出制御用ＣＰＵ３７１は、振分ソレノイド３１０によって球振分部材３１１を球貸し側に設定する。
【０２５０】
さらに、払出制御用ＣＰＵ３７１は、総合個数記憶に格納された個数の賞球を払い出す賞球制御処理を行う（ステップＳ７５７）。このとき、払出制御用ＣＰＵ３７１は、振分ソレノイド３１０によって球振分部材３１１を賞球側に設定する。そして、出力ポート３７２ｃおよび中継基板７２を介して球払出装置９７の払出機構部分における払出モータ２８９に対して駆動信号を出力し、所定の回転数分払出モータ２８９を回転させる払出モータ制御処理を行う（ステップＳ７５８）。
【０２５１】
なお、この実施の形態では、払出モータ２８９としてステッピングモータが用いられ、それらを制御するために１−２相励磁方式が用いられる。従って、具体的には、払出モータ制御処理において、８種類の励磁パターンデータが繰り返し払出モータ２８９に出力される。また、この実施の形態では、各励磁パターンデータが４ｍｓずつ出力される。
【０２５２】
次いで、エラー検出処理が行われ、その結果に応じてエラー表示ＬＥＤ３７４に所定の表示を行う（エラー処理：ステップＳ７５９）。
【０２５３】
なお、出力ポートＣは、払出制御処理における払出モータ制御処理（ステップＳ７５８）でアクセスされる。また、出力ポートＤは、払出制御処理におけるエラー処理（ステップＳ７５９）でアクセスされる。そして、出力ポートＥは、払出制御処理における球貸し制御処理（ステップＳ７５６）および賞球制御処理（ステップＳ７５７）でアクセスされる。
【０２５４】
図４１は、払出制御用ＣＰＵ３７１が内蔵するＲＡＭの使用例を示す説明図である。この例では、バックアップＲＡＭ領域に、総合個数記憶（例えば２バイト）と貸し球個数記憶とがそれぞれ形成されている。総合個数記憶は、主基板３１の側から指示された賞球払出個数の総数を記憶するものである。貸し球個数記憶は、未払出の球貸し個数を記憶するものである。
【０２５５】
そして、払出制御用ＣＰＵ３７１は、例えば、賞球制御処理（ステップＳ７５７）において、遊技制御手段から賞球個数を示す払出制御コマンドを受信すると、指示された個数分だけ総合個数記憶に内容を増加する。また、球貸し制御処理（ステップＳ７５６）において、カードユニット５０から球貸し要求の信号を受信する毎に１単位（例えば２５個）の個数分だけ貸し球個数記憶に内容を増加する。さらに、払出制御用ＣＰＵ３７１は、賞球制御処理において賞球カウントスイッチ３０１Ａが１個の賞球払出を検出すると総合個数記憶の値を１減らし、球貸し制御処理において球貸しカウントスイッチ３０１Ｂが１個の貸し球払出を検出すると貸し球個数記憶の値を１減らす。
【０２５６】
従って、未払出の賞球個数と貸し球個数とが、所定期間はその内容を保持可能なバックアップＲＡＭ領域に記憶されることになる。よって、停電等の不測の電源断が生じても、所定期間内に電源復旧すれば、バックアップＲＡＭ領域に記憶される賞球処理および球貸し処理を続行できる。従って、遊技者に与えられる不利益を低減することができる。
【０２５７】
図４２は、主基板３１から受信した払出制御コマンドを格納するための受信バッファの一構成例を示す説明図である。この例では、２バイト構成の払出制御コマンドを６個格納可能なリングバッファ形式の受信バッファが用いられる。従って、受信バッファは、確定コマンドバッファ１〜１２の１２バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、０〜１１の値をとる。
【０２５８】
図４３は、割込処理による払出制御コマンド受信処理を示すフローチャートである。主基板３１からの払出制御用のＩＮＴ信号は払出制御用ＣＰＵ３７１のＣＬＫ／ＴＲＧ２端子に入力されている。よって、主基板３１からのＩＮＴ信号の立ち上がりまたは立ち下がりで、払出制御用ＣＰＵ３７１に割込がかかり、図４３に示す払出制御コマンドの受信処理が開始される。
【０２５９】
なお、ＩＮＴ信号の極性に応じて、ＣＬＫ／ＴＲＧ２端子の入力が立ち上がるとタイマカウンタレジスタＣＬＫ／ＴＲＧ２の値が−１されるような初期設定すなわちＩＮＴ信号の立ち上がりで割込が発生するような初期設定、または、ＣＬＫ／ＴＲＧ２端子の入力が立ち下がるとタイマカウンタレジスタＣＬＫ／ＴＲＧ２の値が−１されるような初期設定すなわちＩＮＴ信号の立ち下がりで割込が発生するような初期設定が行われている。従って、取込信号としてのパルス状（矩形波状）のＩＮＴ信号のレベル変化タイミング（エッジ）で割込が発生するように構成される。このようにすることで、コマンドの取込が指示された段階でいち早くコマンド受信を行うことが可能になる。また、Ａの期間（図２６および図３１参照）が経過するまでＩＮＴ信号の出力が待機されるので、ＩＮＴ信号の出力時に、制御信号ＣＤ０〜ＣＤ７のライン上のコマンドデータの出力状態は安定している。よって、払出制御手段において、払出制御コマンドは良好に受信される。なお、ＩＮＴ信号のレベル変化は立ち上がりであっても立ち下がりであってもよいが、ＩＮＴ信号が正論理である場合の立ち下がり（矩形波における２回目のレベル変化）、およびＩＮＴ信号が負論理である場合の立ち上がり（矩形波における２回目のレベル変化）を用いた場合には、コマンド受信タイミングが遅れるためＣの期間（図２６および図３１参照）が長くなる。その結果、主基板３１の遊技制御手段のコマンド出力等の処理負担が増加する。よって、ＩＮＴ信号が正論理である場合の立ち上がり（矩形波の最初のレベル変化）、およびＩＮＴ信号が負論理である場合の立ち下がり（矩形波の最初のレベル変化）を用いることが好ましい。
【０２６０】
なお、ここでは払出制御手段のコマンド受信処理について説明するが、表示制御手段、ランプ制御手段および音声制御手段でも、同様のコマンド受信処理が実行されている。
【０２６１】
払出制御コマンドの受信処理において、払出制御用ＣＰＵ３７１は、まず、各レジスタをスタックに退避する（ステップＳ８５０）。次いで、払出制御コマンドデータの入力に割り当てられている入力ポート３７２ａ（図７参照）からデータを読み込む（ステップＳ８５１）。そして、２バイト構成の払出制御コマンドのうちの１バイト目であるか否か確認する（ステップＳ８５２）。１バイト目であるか否かは、受信したコマンドの先頭ビットが「１」であるか否かによって確認される。先頭ビットが「１」であるのは、２バイト構成である払出制御コマンドのうちのＭＯＤＥバイト（１バイト目）のはずである（図２５参照）。そこで、払出制御用ＣＰＵ３７１は、先頭ビットが「１」であれば、有効な１バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す確定コマンドバッファに格納する（ステップＳ８５３）。
【０２６２】
払出制御コマンドのうちの１バイト目でなければ、１バイト目を既に受信したか否か確認する（ステップＳ８５４）。既に受信したか否かは、受信バッファ（確定コマンドバッファ）に有効なデータが設定されているか否かによって確認される。
【０２６３】
１バイト目を既に受信している場合には、受信した１バイトのうちの先頭ビットが「０」であるか否か確認する。そして、先頭ビットが「０」であれば、有効な２バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ＋１が示す確定コマンドバッファに格納する（ステップＳ８５５）。先頭ビットが「０」であるのは、２バイト構成である払出制御コマンドのうちのＥＸＴバイト（２バイト目）のはずである（図２５参照）。なお、ステップＳ８５４における確認結果が１バイト目を既に受信したである場合には、２バイト目として受信したデータのうちの先頭ビットが「０」でなければ処理を終了する。
【０２６４】
ステップＳ８５５において、２バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに２を加算する（ステップＳ８５６）。そして、コマンド受信カウンタが１２以上であるか否か確認し（ステップＳ８５７）、１２以上であればコマンド受信個数カウンタをクリアする（ステップＳ８５８）。その後、退避されていたレジスタを復帰し（ステップＳ８５９）、割込許可に設定する（ステップＳ８５９）。
【０２６５】
コマンド受信割込処理中は割込禁止状態になっている。上述したように、２ｍｓタイマ割込処理中は割込許可状態になっているので、２ｍｓタイマ割込中にコマンド受信割込が発生した場合には、コマンド受信割込処理が優先して実行される。また、コマンド受信割込処理中に２ｍｓタイマ割込が発生しても、その割込処理は待たされる。このように、この実施の形態では、主基板３１からのコマンド受信処理の処理優先度が高くなっている。また、コマンド受信処理中には他の割込処理が実行されないので、コマンド受信処理に要する最長時間は決まる。コマンド受信処理中に他の割込処理が実行可能であるように構成したのでは、コマンド受信処理に要する最長の時間を見積もることは困難である。コマンド受信処理に要する最長時間が決まるので、遊技制御手段のコマンド送出処理におけるＣの期間（図２６参照）をどの程度にすればよいのかを正確に判断することができる。
【０２６６】
また、払出制御コマンドは２バイト構成であって、１バイト目（ＭＯＤＥ）と２バイト目（ＥＸＴ）とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、ＭＯＤＥとしてのデータを受信したのかＥＸＴとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。
【０２６７】
図４４は、ステップＳ７５１のスイッチ処理の一例を示すフローチャートである。スイッチ処理において、払出制御用ＣＰＵ３７１は、賞球カウントスイッチ３０１Ａがオン状態を示しているか否か確認する（ステップＳ７５１ａ）。オン状態を示していれば、払出制御用ＣＰＵ３７１は、賞球カウントスイッチオンカウンタを＋１する（ステップＳ７５１ｂ）。賞球カウントスイッチオンカウンタは、賞球カウントスイッチ３０１Ａのオン状態を検出した回数を計数するためのカウンタである。
【０２６８】
そして、賞球カウントスイッチオンカウンタの値をチェックし（ステップＳ７５１ｃ）、その値が２になっていれば、１個の賞球の払出が行われたと判断する。１個の賞球の払出が行われたと判断した場合には、払出制御用ＣＰＵ３７１は、賞球未払出カウンタ（総合個数記憶に格納されている賞球数）を−１する（ステップＳ７５１ｄ）。
【０２６９】
ステップＳ７５１ａにおいて賞球カウントスイッチ３０１Ａがオン状態でないことが確認されると、払出制御用ＣＰＵ３７１は、賞球カウントスイッチオンカウンタをクリアする（ステップＳ７５１ｅ）。そして、この実施の形態では、球貸しカウントスイッチ３０１Ｂがオン状態を示しているか否か確認する（ステップＳ７５１ｆ）。オン状態を示していれば、払出制御用ＣＰＵ３７１は、球貸しカウントスイッチオンカウンタを＋１する（ステップＳ７５１ｇ）。球貸しカウントスイッチオンカウンタは、球貸しカウントスイッチ３０１Ｂのオン状態を検出した回数を計数するためのカウンタである。
【０２７０】
そして、球貸しカウントスイッチオンカウンタの値をチェックし（ステップＳ７５１ｈ）、その値が２になっていれば、１個の貸し球の払出が行われたと判断する。１個の貸し球の払出が行われたと判断した場合には、払出制御用ＣＰＵ３７１は、貸し球未払出個数カウンタ（貸し球個数記憶に格納されている貸し球数）を−１する（ステップＳ７５１ｉ）。
【０２７１】
ステップＳ７５１ｆにおいて球貸しカウントスイッチ３０１Ｂがオン状態でないことが確認されると、払出制御用ＣＰＵ３７１は、球貸しカウントスイッチオンカウンタをクリアする（ステップＳ７５１ｊ）。
【０２７２】
図４５は、ステップＳ７５３のコマンド解析実行処理の一例を示すフローチャートである。コマンド解析実行処理において、払出制御用ＣＰＵ３７１は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う（ステップＳ７５３ａ）。受信コマンドがあれば、受信した払出制御コマンドが賞球数を示す払出制御コマンドであるか否かの確認を行う（ステップＳ７５３ｂ）。なお、払出制御用ＣＰＵ３７１は、コマンド指示手段としての読出ポインタが指す確定コマンドバッファ領域中のアドレスに格納されている受信コマンドについてステップＳ７５３ｂの判断を行う。また、その判断後、読出ポインタの値は＋１される。読出ポインタが指すアドレスが確定コマンドバッファ１２（図４２参照）のアドレスを越えた場合には、読出ポインタの値は、確定コマンドバッファ１を指すように更新される。
【０２７３】
受信した払出制御コマンドが賞球数を示す払出制御コマンドであれば、払出制御コマンドで指示された個数を総合個数記憶に加算する（ステップＳ７５３ｃ）。すなわち、払出制御用ＣＰＵ３７１は、主基板３１のＣＰＵ５６から送られた払出制御コマンドに含まれる賞球数をバックアップＲＡＭ領域（総合個数記憶）に記憶する。
【０２７４】
なお、払出制御用ＣＰＵ３７１は、必要ならば、コマンド受信個数カウンタの減算や確定コマンドバッファ領域における受信コマンドシフト処理を行う。
【０２７５】
図４６は、ステップＳ７５４の払出停止状態設定処理の一例を示すフローチャートである。払出停止状態設定処理において、払出制御用ＣＰＵ３７１は、確定コマンドバッファ領域中に受信コマンドがあるか否かの確認を行う（ステップＳ７５４ａ）。確定コマンドバッファ領域中に受信コマンドがあれば、受信した払出制御コマンドが払出停止状態指定コマンドであるか否かの確認を行う（ステップＳ７５４ｂ）。払出停止状態指定コマンドであれば、払出制御用ＣＰＵ３７１は、払出停止状態に設定する（ステップＳ７５４ｃ）。
【０２７６】
ステップＳ７５４ｂで受信コマンドが払出停止状態指定コマンドでないことを確認すると、受信した払出制御コマンドが払出可能状態指定コマンドであるか否かの確認を行う（ステップＳ７５４ｄ）。払出可能状態指定コマンドであれば、払出停止状態を解除する（ステップＳ７５４ｅ）。
【０２７７】
図４７は、ステップＳ７５５のプリペイドカードユニット制御処理の一例を示すフローチャートである。プリペイドカードユニット制御処理において、払出制御用ＣＰＵ３７１は、カードユニット制御用マイクロコンピュータより入力されるＶＬ信号を検知したか否かを確認する（ステップＳ７５５ａ）。ＶＬ信号を検知していなければ、ＶＬ信号非検知カウンタを＋１する（ステップＳ７５５ｂ）。また、払出制御用ＣＰＵ３７１は、ＶＬ信号非検知カウンタの値が本例では１２５であるか否か確認する（ステップＳ７５５ｃ）。ＶＬ信号非検知カウンタの値が１２５であれば、払出制御用ＣＰＵ３７１は、発射制御基板９１への発射制御信号出力を停止して、駆動モータ９４を停止させる（ステップＳ７５５ｄ）。
【０２７８】
以上の処理によって、１２５回（２ｍｓ×１２５＝２５０ｍｓ）継続してＶＬ信号のオフが検出されたら、球発射禁止状態に設定される。
【０２７９】
ステップＳ７５５ａにおいてＶＬ信号を検知していれば、払出制御用ＣＰＵ３７１は、ＶＬ信号非検知カウンタをクリアする（ステップＳ７５５ｅ）。そして、払出制御用ＣＰＵ３７１は、発射制御信号出力を停止していれば（ステップＳ７５５ｆ）、発射制御基板９１への発射制御信号出力を開始して駆動モータ９４を動作可能状態にする（ステップＳ７５５ｇ）。
【０２８０】
図４８および図４９は、ステップＳ７５６の球貸し制御処理の一例を示すフローチャートである。なお、この実施の形態では、連続的な払出数の最大値を貸し球の一単位（例えば２５個）とするが、連続的な払出数の最大値は他の数であってもよい。
【０２８１】
球貸し制御処理において、払出制御用ＣＰＵ３７１は、貸し球払出中であるか否かの確認を行い（ステップＳ５１１）、貸し球払出中であれば図４９に示す球貸し中の処理に移行する。なお、貸し球払出中であるか否かは、後述する球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ、賞球の払出中であるか否か確認する（ステップＳ５１２）。賞球の払出中であるか否は、後述する賞球処理中フラグの状態によって判断される。
【０２８２】
貸し球払出中でも賞球払出中でもなければ、払出制御用ＣＰＵ３７１は、カードユニット５０から球貸し要求があったか否かを確認する（ステップＳ５１３）。要求があれば、球貸し処理中フラグをオンするとともに（ステップＳ５１４）、２５（球貸し一単位数：ここでは１００円分）をバックアップＲＡＭ領域の貸し球個数記憶に設定する（ステップＳ５１５）。そして、払出制御用ＣＰＵ３７１は、ＥＸＳ信号をオンする（ステップＳ５１６）。また、球払出装置９７の下方の球振分部材３１１を球貸し側に設定するために振分用ソレノイド３１０を駆動する（ステップＳ５１７）。さらに、払出モータ２８９をオンして（ステップＳ５１８）、図４９に示す球貸し中の処理に移行する。
【０２８３】
なお、払出モータ２８９をオンするのは、厳密には、カードユニット５０が受付を認識したことを示すためにＢＲＱ信号をＯＦＦとしてからである。なお、球貸し処理中フラグはバックアップＲＡＭ領域に設定される。
【０２８４】
図４９は、払出制御用ＣＰＵ３７１による払出制御処理における球貸し中の処理を示すフローチャートである。球貸し処理では、払出モータ２８９がオンしていなければオンする。なお、この実施の形態では、ステップＳ７５１のスイッチ処理で、球貸しカウントスイッチ３０１Ｂの検出出力による遊技球の払出がなされたか否かの確認を行うので、球貸し制御処理では貸し球個数記憶の減算などは行われない。球貸し制御処理において、払出制御用ＣＰＵ３７１は、貸し球通過待ち時間中であるか否かの確認を行う（ステップＳ５１９）。貸し球通過待ち時間中でなければ、貸し球の払出を行い（ステップＳ５２０）、払出モータ２８９の駆動を終了すべきか（一単位の払出動作が終了したか）否かの確認を行う（ステップＳ５２１）。具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用ＣＰＵ３７１は、払出モータ２８９の駆動を停止し（ステップＳ５２２）、貸し球通過待ち時間の設定を行う（ステップＳ５２３）。
【０２８５】
なお、ステップＳ５２０の球貸し処理では、払出モータ位置センサのオンとオフとがタイマ監視されるが、所定時間以上のオン状態またはオフ状態が継続したら、払出制御用ＣＰＵ３７１は、払出モータ球噛みエラーが生じたと判断する。
【０２８６】
ステップＳ５１９で貸し球通過待ち時間中であれば、払出制御用ＣＰＵ３７１は、貸し球通過待ち時間が終了したか否かの確認を行う（ステップＳ５２４）。貸し球通過待ち時間は、最後の払出球が払出モータ２８９によって払い出されてから球貸しカウントスイッチ３０１Ｂを通過するまでの時間である。貸し球通過待ち時間の終了を確認すると、一単位の貸し球は全て払い出された状態であるので、カードユニット５０に対して次の球貸し要求の受付が可能になったことを示すためにＥＸＳ信号をオフにする（ステップＳ５２５）。また、振分ソレノイドをオフするとともに（ステップＳ５２６）、球貸し処理中フラグをオフする（ステップＳ５２７）。なお、貸し玉通過待ち時間が経過するまでに最後の払出球が球貸しカウントスイッチ３０１Ｂを通過しなかった場合には、球貸し経路エラーとされる。また、この実施の形態では、賞球も球貸しも同じ払出装置で行われる。
【０２８７】
なお、球貸し要求の受付を示すＥＸＳ信号をオフにした後、所定期間内に再び球貸し要求信号であるＢＲＱ信号がオンしたら、振分ソレノイドおよび払出モータをオフせずに球貸し処理を続行するようにしてもよい。すなわち、所定単位（この例では１００円単位）毎に球貸し処理を行うのではなく、球貸し処理を連続して実行するように構成することもできる。
【０２８８】
貸し球個数記憶の内容は、遊技機の電源が断しても、所定期間電源基板９１０のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用ＣＰＵ３７１は、貸し球個数記憶の内容にもとづいて球貸し処理を継続することができる。
【０２８９】
図５０および図５１は、ステップＳ７５７の賞球制御処理の一例を示すフローチャートである。なお、この例では、連続的な払出数の最大値を貸し球の一単位と同数（例えば２５個）とするが、連続的な払出数の最大値は他の数であってもよい。
【０２９０】
賞球制御処理において、払出制御用ＣＰＵ３７１は、貸し球払出中であるか否か確認する（ステップＳ５３１）。貸し球払出中であるか否かは、球貸し処理中フラグの状態によって判断される。貸し球払出中でなければ賞球の払出中であるか否か確認し（ステップＳ５３２）、賞球の払出中であれば図５１に示す賞球中の処理に移行する。賞球の払出中であるか否かは、後述する賞球処理中フラグの状態によって判断される。
【０２９１】
貸し球払出中でも賞球払出中でもなければ、払出制御用ＣＰＵ３７１は、カードユニット５０からの球貸し準備要求があるか否か確認する（ステップＳ５３３）。球貸し準備要求があるか否かは、カードユニット５０から入力されるＢＲＤＹ信号のオン（要求あり）またはオフ（要求なし）を確認することによって行われる。
【０２９２】
カードユニット５０からの球貸し準備要求がなければ、払出制御用ＣＰＵ３７１は、総合個数記憶に格納されている賞球数（未払出の賞球数）が０でないか否か確認する（ステップＳ５３４）。総合個数記憶に格納されている賞球数が０でなければ、賞球制御用ＣＰＵ３７１は、賞球処理中フラグをオンし（ステップＳ５３５）、総合個数記憶の値が２５以上であるか否か確認する（ステップＳ５３６）。なお、賞球処理中フラグは、バックアップＲＡＭ領域に設定される。
【０２９３】
総合個数記憶に格納されている賞球数が２５以上であると、払出制御用ＣＰＵ３７１は、２５個分の遊技球を払い出すまで払出モータ２８９を回転させるように払出モータ２８９に対して駆動信号を出力するために、２５個払出動作の設定を行う（ステップＳ５３７）。総合個数記憶に格納されている賞球数が２５以上でなければ、払出制御用ＣＰＵ３７１は、総合個数記憶に格納されている全ての遊技球を払い出すまで払出モータ２８９を回転させるように駆動信号を出力するために、全個数払出動作の設定を行う（ステップＳ５３８）。次いで、払出モータ２８９をオンする（ステップＳ５３８）。なお、振分ソレノイドはオフ状態であるから、球払出装置９７の下方の球振分部材は賞球側に設定されている。そして、図５１に示す賞球制御処理における賞球払出中の処理に移行する。
【０２９４】
図５１は、払出制御用ＣＰＵ３７１による払出制御処理における賞球中の処理の一例を示すフローチャートである。賞球制御処理では、払出モータ２８９がオンしていなければオンする。なお、この実施の形態では、ステップＳ７５１のスイッチ処理で、賞球カウントスイッチ３０１Ａの検出出力による遊技球の払出がなされたか否かの確認を行うので、賞球制御処理では総合個数記憶の減算などは行われない。賞球中の処理において、払出制御用ＣＰＵ３７１は、賞球通過待ち時間中であるか否かの確認を行う（ステップＳ５４０）。賞球通過待ち時間中でなければ、賞球払出を行い（ステップＳ５４１）、払出モータ２８９の駆動を終了すべきか（２５個または２５個未満の所定の個数の払出動作が終了したか）否かの確認を行う（ステップＳ５４２）。具体的には、所定個数の払出に対応した回転が完了したか否かを確認する。所定個数の払出に対応した回転は、払出モータ位置センサの出力によって監視される。所定個数の払出に対応した回転が完了した場合には、払出制御用ＣＰＵ３７１は、払出モータ２８９の駆動を停止し（ステップＳ５４３）、賞球通過待ち時間の設定を行う（ステップＳ５４４）。賞球通過待ち時間は、最後の払出球が払出モータ２８９によって払い出されてから賞球カウントスイッチ３０１Ａを通過するまでの時間である。
【０２９５】
ステップＳ５４０で賞球通過待ち時間中であれば、払出制御用ＣＰＵ３７１は、賞球通過待ち時間が終了したか否かの確認を行う（ステップＳ５４５）。賞球通過待ち時間が終了した時点は、ステップＳ５３７またはステップＳ５３８で設定された賞球が全て払い出された状態である。そこで、払出制御用ＣＰＵ３７１は、賞球通過待ち時間が終了していれば、賞球処理中フラグをオフする（ステップＳ５４６）。賞球通過待ち時間が経過するまでに最後の払出球が賞球カウントスイッチ３０１Ａを通過しなかった場合には、賞球経路エラーとされる。
【０２９６】
なお、この実施の形態では、ステップＳ５１１、ステップＳ５３１の判断によって球貸しが賞球処理よりも優先されることになるが、賞球処理が球貸しに優先するようにしてもよい。
【０２９７】
総合個数記憶および貸し球個数記憶の内容は、遊技機の電源が断しても、所定期間電源基板９１０のバックアップ電源によって保存される。従って、所定期間中に電源が回復すると、払出制御用ＣＰＵ３７１は、総合個数記憶の内容にもとづいて払出処理を継続することができる。
【０２９８】
なお、払出制御用ＣＰＵ３７１は、主基板３１から指示された賞球個数を賞球個数記憶で総数として管理したが、賞球数毎（例えば１５個、１０個、６個）に管理してもよい。例えば、賞球数毎に対応した個数カウンタを設け、払出個数指定コマンドを受信すると、そのコマンドで指定された個数に対応する個数カウンタを＋１する。そして、個数カウンタに対応した賞球払出が行われると、その個数カウンタを−１する（この場合、払出制御処理にて減算処理を行うようにする）。その場合にも、各個数カウンタはバックアップＲＡＭ領域に形成される。よって、遊技機の電源が断しても、所定期間中に電源が回復すれば、払出制御用ＣＰＵ３７１は、各個数カウンタの内容にもとづいて賞球払出処理を継続することができる。
【０２９９】
以上に説明したように、この実施の形態では、払出制御手段は、払出制御信号に関する取込信号としてのＩＮＴ信号（矩形波）の最初のレベル変化を検知して、例えば割込処理によって１バイトのデータの取り込み処理を開始する。そして、複数の払出制御コマンドを格納可能な受信リングバッファ領域（この例では確定コマンドバッファ）が設けられているので、払出制御コマンドを受信後、そのコマンドにもとづく制御が開始されないうちに次の払出制御コマンドを受信しても、そのコマンドが、払出制御手段において受信されないということはない。
【０３００】
また、図１９および図２０のフローチャートに示されたように、遊技制御手段は、払出停止状態であっても（ステップＳ２０１）、ステップＳ２３５のコマンドセット処理が実行可能であるように構成されている。よって、払出停止状態であっても、入賞検出がなされると払出個数を示す払出制御コマンドが払出制御手段に対して送出される。
【０３０１】
払出制御手段において、払出停止状態であっても割込処理は起動されるので、払出制御手段は、払出停止中であっても、払出制御コマンドを受信することができる。そして、払出停止中では受信した払出制御コマンドに応じた払出処理は停止しているのであるが、複数の払出制御コマンドを格納可能な受信リングバッファ領域が設けられているので、遊技制御手段から送出された払出制御コマンドは、払出制御手段において消失してしまうようなことはない。
【０３０２】
そして、払出制御手段において、送出コマンドを受信リングバッファ領域（この例では確定コマンドバッファ）のどの領域に格納するのかを示すアドレス指示手段としてのコマンド受信個数カウンタが用いられる。よって、どの領域を使用すればよいのかの判断は容易である。
【０３０３】
また、遊技制御手段においても、送信コマンドは、リングバッファ形式のコマンド送信バッファ（図２４参照）またはリングバッファ（図３２参照）に格納される。ただし、図１９〜図２１のフローチャートに示されたように、払出制御コマンドについては、賞球個数を示す払出制御コマンドはコマンド送信バッファ格納されるが（ステップＳ１２６，Ｓ１３５，Ｓ２２５）、払出停止状態指定に関する払出制御コマンドおよび払出可能状態指定に関する払出制御コマンドについては、コマンド送信バッファには格納されない。それらのコマンドについては、コマンドに関するデータ設定されているコマンド送信テーブル（ＲＯＭ）の内容を用いてコマンド送出が行われる（Ｓ２０６，Ｓ２０７）。また、図３３〜図３４のフローチャートに示された例では、賞球個数を示す払出制御コマンドのＥＸＴデータに同等するデータはリングバッファ格納されるが（ステップＳ１２６Ａ，Ｓ１３５Ａ，Ｓ２２５Ａ）、払出停止状態指定に関する払出制御コマンドおよび払出可能状態指定に関する払出制御コマンドについては、リングバッファには格納されない。
【０３０４】
そして、図１９〜図２１のフローチャートおよび図３３〜図３４のフローチャートにおいて、入賞口に関するスイッチのチェックよりも前に払出停止状態に関するチェックが実行されるので、２ｍｓの一処理期間内で、払出停止状態指定に関する払出制御コマンドおよび払出可能状態指定に関する払出制御コマンドは優先して送出される。すなわち、電気部品の動作停止／再開を指令する信号のように、その信号にもとづく処理が早めに開始されることが好ましい重要なコマンドは、１回の制御期間内で先に送信される。さらに、払出停止に関する制御および賞球払出に関する制御とは発生要因が異なる制御の例として、エラー検出制御、遊技制御手段による球詰まり検出制御、球払出装置９７に関連するその他の制御を行ってもよい。それらの制御も行われる場合、遊技制御手段を、それぞれの制御について一処理期間内で１つの払出制御コマンド（例えば、エラー発生を示すコマンド、球詰まり解除を示すコマンド）を送出可能に構成しておけば、やはり、一処理期間内で複数の払出制御コマンド（それぞれ発生要因が異なる）を送出することができる。
【０３０５】
また、賞球関連の制御コマンドとして、球切れランプ５２の点灯を示す制御コマンドが払出可能状態指定に関する払出制御コマンドよりも優先して出力され、賞球個数を指定するための払出制御コマンドが、賞球残ありを示す賞球ランプ５１の点灯を示す制御コマンドよりも優先して出力されるように構成することもできる。すなわち、払出可能状態指定に関する払出制御コマンドと賞球個数を指定するための払出制御コマンドとの優先関係に止まらず、賞球関連の制御コマンドについて、払出の異常に関わる制御コマンドが、賞球個数に関わる制御コマンドに優先して出力されるように構成することができる。
【０３０６】
なお、払出停止状態指定に関する払出制御コマンドおよび払出可能状態指定に関する払出制御コマンドも、賞球個数を示す払出制御コマンドと同様に、コマンド送信バッファに格納してもよい。そのように構成しても、入賞口に関するスイッチのチェックよりも前に払出停止状態に関するチェックを実行すれば、払出停止状態指定に関する払出制御コマンドおよび払出可能状態指定に関する払出制御コマンドが優先して送出される。
【０３０７】
また、遊技制御手段においても、図２４に示されたリングバッファ形式のコマンド送信バッファまたは図３２に示されたリングバッファのどの領域のデータを送出するのかを示すアドレス指示手段としてのポインタが用いられる。よって、どの領域のデータを送出するのかの判断は容易である。
【０３０８】
なお、上記の実施の形態では、払出制御手段を例にしたが、その他の電気部品制御手段、例えば、表示制御手段、音声制御手段、ランプ制御手段等も上述したような処理によって遊技制御手段からの制御コマンドを確実に受信することができる。
【０３０９】
また、上記の実施の形態では、電源監視回路は電源基板９１０に設けられたが、電源監視回路は主基板３１や払出制御基板３７などの電気部品制御基板に設けられていてもよい。電源回路が搭載された電気部品制御基板が構成される場合には、電源基板には電源監視回路は搭載されない。
【０３１０】
そして、上記の各実施の形態のパチンコ遊技機１は、主として、始動入賞にもとづいて可変表示部９に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第１種パチンコ遊技機であったが、始動入賞にもとづいて開放する電動役物の所定領域への入賞があると所定の遊技価値が遊技者に付与可能になる第２種パチンコ遊技機や、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第３種パチンコ遊技機であっても、本発明を適用できる。
【０３１１】
さらに、遊技媒体が遊技球であるパチンコ遊技機に限られず、スロット機等においても本発明を適用することができる。例えば、遊技者の操作によって可変表示を開始し、遊技者の操作によって可変表示を停止させ、その表示結果に応じてコイン等が払い出されたりビッグボーナスなどの遊技価値が付与されるスロット機においては、ビッグボーナス，レギュラーボーナスなどの当り判定等を行う遊技制御手段と、遊技制御手段からのコマンドにもとづいて、遊技者の操作によって停止される可変表示部以外のリール、画像表示、ランプ、音等を制御する演出制御手段を設けたものにあっては、演出制御手段におけるコマンドの受信制御において本発明を適用できる。また、遊技制御手段からのコマンドに従ってコイン等の払い出しを制御する払出制御手段を遊技制御手段とは別に設けたものにあっては、その払出制御手段に本発明を適用できる。
【０３１２】
【発明の効果】
請求項１記載の発明では、遊技機を、遊技制御手段が電気部品を制御させるためのコマンドとしてのコマンドデータを出力し、コマンドデータ出力開始後所定の期間が経過した後にコマンドデータの取込を指示する取込信号を出力するコマンド出力処理を実行するコマンド出力手段を含み、コマンド出力手段は、コマンド出力処理において、一のコマンドデータを出力して取込信号を出力し、取込信号を出力した後、所定期間経過後に次のコマンドデータを出力して取込信号を出力し、所定期間を、複数の電気部品制御手段のそれぞれがコマンドデータを受信するために要する期間のうちの最大の期間以上の期間とし、コマンド出力手段は、取込信号を出力した後、所定期間が経過するまでコマンドデータの出力を維持し、コマンド出力手段は、電気部品制御手段に対して、１回の遊技制御処理内で一のコマンドデータと次のコマンドデータとをともに出力し、電気部品制御手段が、所定周期で発生するタイマ割込に応じた定期割込処理、および遊技制御手段からの取込信号に応じて発生するコマンド受信割込に応じたコマンド受信処理を含む割込処理を実行し、コマンド受信処理は、定期割込処理よりも優先して実行されるように構成したので、電気部品制御手段は、確実に遊技制御手段からのコマンドを受信することができるという効果がある。その結果、電気部品制御手段は、遊技進行に応じた制御を確実に実行することができる。
【０３１３】
請求項２記載の発明では、電気部品制御手段が、コマンド受信処理が終了するまではマスク可能割込の発生を許可しないように構成されているので、コマンド受信処理中に他の処理が行われてしまうことはなく、遊技制御手段からのコマンドを取りこぼすことなく確実に受信できる。
【０３１４】
請求項３記載の発明では、コマンド受信処理は定期割込処理を中断して実行可能であるように構成されているので、他の割込処理中であっても直ちにコマンド受信処理が開始されるので、遊技制御手段からのコマンドを取りこぼすことなく確実に受信できる。
【０３１５】
請求項４記載の発明では、割込処理に割込禁止解除処理が含まれるように構成されているので、割込処理の優先の度合いを変化させることが容易である。
【０３１６】
請求項５記載の発明では、コマンド受信処理を含む割込処理で、最後に割込禁止解除処理が実行されるように構成されているので、コマンド受信処理を他の処理に優先させることを容易に実現することができる。
【０３１７】
請求項６記載の発明では、定期割込処理で、最初に割込禁止解除処理が実行されるように構成されているので、コマンド受信処理を定期割込処理に優先させることを容易に実現することができる。
【０３１８】
請求項７記載の発明では、コマンド受信処理にコマンド判定処理が含まれているように構成されているので、受信したコマンドの判定までもコマンド受信割込処理内で実行されるので、コマンドの識別が迅速に実行される。
【０３２０】
請求項８記載の発明では、遊技制御手段が、発生要因が異なる複数の制御について、１回の遊技制御処理内で複数のコマンドを出力することが可能であるように構成されているので、異なる属性のコマンドの出力機会が同時に発生しても、各コマンドを迅速に送受信することができる。
【０３２１】
請求項９記載の発明では、遊技制御手段が、取込信号を出力する場合に、所定時間のオンデータと所定時間のオフデータとを出力するように構成されているので、コマンドを連続的に送信する場合でも、受信側においてそれらを容易に識別することができる。
【図面の簡単な説明】
【図１】  パチンコ遊技機を正面からみた正面図である。
【図２】  パチンコ遊技機の裏面に設けられている各基板を示す説明図である。
【図３】  パチンコ遊技機の機構盤を背面からみた背面図である。
【図４】  機構板に設置されている中間ベースユニット周りの構成を示す正面図である。
【図５】  球払出装置を示す分解斜視図である。
【図６】  遊技制御基板（主基板）の回路構成を示すブロック図である。
【図７】  払出制御基板および球払出装置の構成要素などの賞球に関連する構成要素を示すブロック図である。
【図８】  電源基板の一構成例を示すブロック図である。
【図９】  主基板におけるＣＰＵ周りの一構成例を示すブロック図である。
【図１０】  出力ポートのビット割り当ての一例を示す説明図である。
【図１１】  出力ポートのビット割り当ての一例を示す説明図である。
【図１２】  入力ポートのビット割り当ての一例を示す説明図である。
【図１３】  主基板におけるＣＰＵが実行するメイン処理を示すフローチャートである。
【図１４】  バックアップフラグと遊技状態復旧処理を実行するか否かとの関係の一例を示す説明図である。
【図１５】  ２ｍｓタイマ割込処理を示すフローチャートである。
【図１６】  ＲＡＭにおけるスイッチタイマの形成例を示す説明図である。
【図１７】  スイッチ処理の一例を示すフローチャートである。
【図１８】  スイッチチェック処理の一例を示すフローチャートである。
【図１９】  賞球処理の一例を示すフローチャートである。
【図２０】  賞球処理の一例を示すフローチャートである。
【図２１】  賞球処理の一例を示すフローチャートである。
【図２２】  スイッチオンチェック処理を示すフローチャートである。
【図２３】  入力判定値テーブルの構成例を示す説明図である。
【図２４】  コマンド送信バッファの一構成例を示す説明図である。
【図２５】  制御コマンドのコマンド形態の一例を示す説明図である。
【図２６】  制御コマンドを構成する８ビットの制御信号とＩＮＴ信号との関係を示すタイミング図である。
【図２７】  払出制御コマンドの内容の一例を示す説明図である。
【図２８】  コマンドセット処理の処理例を示すフローチャートである。
【図２９】  コマンド送信処理ルーチンを示すフローチャートである。
【図３０】  賞球個数減算処理の一例を示すフローチャートである。
【図３１】  制御コマンドを構成する８ビットの制御信号とＩＮＴ信号との関係の他の例を示すタイミング図である。
【図３２】  リングバッファおよび送信バッファを示す説明図である。
【図３３】  賞球処理の他の例を示すフローチャートである。
【図３４】  賞球処理の他の例を示すフローチャートである。
【図３５】  コマンドセット処理の他の処理例を示すフローチャートである。
【図３６】  電源監視および電源バックアップのための払出制御用ＣＰＵ周りの一構成例を示すブロック図である。
【図３７】  出力ポートのビット割り当ての一例を示す説明図である。
【図３８】  入力ポートのビット割り当ての一例を示す説明図である。
【図３９】  払出制御基板におけるＣＰＵが実行するメイン処理を示すフローチャートである。
【図４０】  ２ｍｓタイマ割込処理を示すフローチャートである。
【図４１】  払出制御手段におけるＲＡＭの一構成例を示す説明図である。
【図４２】  受信バッファの一構成例を示す説明図である。
【図４３】  払出制御用ＣＰＵのコマンド受信処理の例を示すフローチャートである。
【図４４】  スイッチ処理の例を示すフローチャートである。
【図４５】  コマンド解析実行処理の例を示すフローチャートである。
【図４６】  払出停止状態設定処理の例を示すフローチャートである。
【図４７】  プリペイドカードユニット制御処理の例を示すフローチャートである。
【図４８】  球貸し制御処理の例を示すフローチャートである。
【図４９】  球貸し制御処理の例を示すフローチャートである。
【図５０】  賞球制御処理の例を示すフローチャートである。
【図５１】  賞球制御処理の例を示すフローチャートである。
【符号の説明】
３１      遊技制御基板（主基板）
３７      払出制御基板
５６      ＣＰＵ
９７      球払出装置
３０１Ａ  賞球カウントスイッチ
３０１Ｂ  球貸しカウントスイッチ
３１０    振分ソレノイド
３１１    振分部材
３７１    払出制御用ＣＰＵ
９１０    電源基板
【図１】
0004137358.tif 000002
【図２】
0004137358.tif 000003
【図３】
0004137358.tif 000004
【図４】
0004137358.tif 000005
【図５】
0004137358.tif 000006
【図６】
0004137358.tif 000007
【図７】
0004137358.tif 000008
【図８】
0004137358.tif 000009
【図９】
0004137358.tif 000010
【図１０】
0004137358.tif 000011
【図１１】
0004137358.tif 000012
【図１２】
0004137358.tif 000013
【図１３】
0004137358.tif 000014
【図１４】
0004137358.tif 000015
【図１５】
0004137358.tif 000016
【図１６】
0004137358.tif 000017
【図１７】
0004137358.tif 000018
【図１８】
0004137358.tif 000019
【図１９】
0004137358.tif 000020
【図２０】
0004137358.tif 000021
【図２１】
0004137358.tif 000022
【図２２】
0004137358.tif 000023
【図２３】
0004137358.tif 000024
【図２４】
0004137358.tif 000025
【図２５】
0004137358.tif 000026
【図２６】
0004137358.tif 000027
【図２７】
0004137358.tif 000028
【図２８】
0004137358.tif 000029
【図２９】
0004137358.tif 000030
【図３０】
0004137358.tif 000031
【図３１】
0004137358.tif 000032
【図３２】
0004137358.tif 000033
【図３３】
0004137358.tif 000034
【図３４】
0004137358.tif 000035
【図３５】
0004137358.tif 000036
【図３６】
0004137358.tif 000037
【図３７】
0004137358.tif 000038
【図３８】
0004137358.tif 000039
【図３９】
0004137358.tif 000040
【図４０】
0004137358.tif 000041
【図４１】
0004137358.tif 000042
【図４２】
0004137358.tif 000043
【図４３】
0004137358.tif 000044
【図４４】
0004137358.tif 000045
【図４５】
0004137358.tif 000046
【図４６】
0004137358.tif 000047
【図４７】
0004137358.tif 000048
【図４８】
0004137358.tif 000049
【図４９】
0004137358.tif 000050
【図５０】
0004137358.tif 000051
【図５１】
0004137358.tif 000052