JP3660309B2 - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP3660309B2 JP3660309B2 JP2002022583A JP2002022583A JP3660309B2 JP 3660309 B2 JP3660309 B2 JP 3660309B2 JP 2002022583 A JP2002022583 A JP 2002022583A JP 2002022583 A JP2002022583 A JP 2002022583A JP 3660309 B2 JP3660309 B2 JP 3660309B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- power supply
- game
- state
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Pinball Game Machines (AREA)
- Display Devices Of Pinball Game Machines (AREA)
Description
【発明の属する技術分野】
本発明は、遊技者が所定の遊技を行うことが可能なパチンコ遊技機やスロットマシン等の遊技機に関する。
【0002】
【従来の技術】
遊技機として、遊技球などの遊技媒体を発射装置によって遊技領域に発射し、遊技領域に設けられている入賞口などの入賞領域に遊技媒体が入賞すると、所定個の賞球が遊技者に払い出されるものがある。さらに、表示状態が変化可能な可変表示装置が設けられ、始動口への遊技球の入賞(始動入賞)などの条件成立にもとづいて可変表示装置において可変表示がなされ、可変表示装置の表示結果があらかじめ定められた特定表示態様となった場合に所定の遊技価値を遊技者に与えるように構成されたものがある。
【0003】
なお、所定の遊技価値とは、例えば、遊技者に多数の景品としての遊技媒体を払い出しうる特定遊技状態になることであり、具体的には、遊技機の遊技領域に設けられた可変入賞球装置の状態が打球が入賞しやすい遊技者にとって有利な状態になることや、遊技者にとって有利な状態となるための権利を発生させたりすることや、賞球払出の条件が成立しやすくなる状態になることである。
【0004】
パチンコ遊技機では、識別情報を可変表示する可変表示装置の表示結果があらかじめ定められた特定表示態様の組合せとなることを、通常、「大当り」という。識別情報は例えば図柄であり、以下、識別情報として図柄(特別図柄ともいう。)を例にして説明を進める。また、可変表示とは可変表示装置における表示状態が変化することであり、以下、変動ともいう。大当りが発生すると、例えば、大入賞口が所定回数開放して打球が入賞しやすい大当り遊技状態に移行する。そして、各開放期間において、所定個(例えば10個)の大入賞口への入賞があると大入賞口は閉成する。そして、大入賞口の開放回数は、所定回数(例えば16ラウンド)に固定されている。なお、各開放について開放時間(例えば29.5秒)が決められ、入賞数が所定個に達しなくても開放時間が経過すると大入賞口は閉成する。また、大入賞口が閉成した時点で所定の条件(例えば、大入賞口内に設けられているVゾーンへの入賞)が成立していない場合には、大当り遊技状態は終了する。
【0005】
また、可変表示装置において最後に停止表示される最終停止図柄(例えば左右中図柄のうち中図柄)となる図柄以外の図柄が、所定時間継続して、特定表示態様と一致している状態で停止、揺動、拡大縮小もしくは変形している状態、または、複数の図柄が同一図柄で同期して変動したり、表示図柄の位置が入れ替わっていたりして、最終結果が表示される前で大当り発生の可能性が継続している状態(以下、これらの状態をリーチ状態という。)において行われる演出をリーチ演出という。また、リーチ演出を含む可変表示をリーチ可変表示という。リーチ状態において、変動パターンを通常状態における変動パターンとは異なるパターンにすることによって、遊技の興趣が高められている。そして、可変表示装置に可変表示される図柄の表示結果がリーチ状態となる条件を満たさない場合には「はずれ」となり、可変表示状態は終了する。遊技者は、大当りをいかにして発生させるかを楽しみつつ遊技を行う。
【0006】
遊技機には、遊技の全体的な進行を制御する遊技制御手段が搭載された遊技制御基板の他に種々の制御手段が搭載された制御基板が設けられている。そして、遊技制御手段は、遊技状況に応じて動作指示を示す制御コマンドを、各制御基板に搭載された各制御手段に送信する。各制御手段は遊技機に設けられている電気部品の制御を行うので、以下、各制御手段を電気部品制御手段といい、電気部品制御手段が搭載された基板を電気部品制御基板ということがある。電気部品とは、遊技機に設けられている部品(機構部品や回路等)であって電気的に動作するものである。電気部品制御手段として、例えば、電気部品としての球払出装置を制御する払出制御手段、電気部品としての演出用の可変表示装置の制御を行う表示制御手段、電気部品としての演出制御用の発光体(ランプやLED)の制御を行うランプ制御手段、電気部品としての演出用のスピーカからの音発生の制御を行う音制御手段がある。また、演出用の電気部品を制御する表示制御手段、ランプ制御手段、音制御手段等を演出制御手段ということがある。
【0007】
【発明が解決しようとする課題】
以上のように、遊技機には、遊技制御手段を初めとする種々の電気部品制御手段が搭載されている。一般に、各電気部品制御手段はマイクロコンピュータを含んだ構成とされる。そのような電気部品制御手段は、一般に、電源電圧が立ち上がると初期化処理を行い初期状態から制御を開始する。すると、停電等の不測の電源断が生じ、その後、電源復旧すると初期状態に戻ってしまうので、遊技者が得た遊技価値等が消滅してしまう等の問題が生ずることがある。そのような問題が生じないようにするには、遊技制御手段およびその他の電気部品制御手段において、電源電圧値の低下に伴なって発生される所定の信号(電源断信号という。)に応じて制御を中断し、そのときの制御状態を、遊技機に対する電力供給停止中でも電源バックアップされている記憶手段(バックアップ記憶手段)に保存し、電力供給が完全に停止するのを待つように制御すればよい。そのような遊技機は、記憶手段に遊技状態が保存されている状態で電力供給が再開されたら、保存されている制御状態にもとづいて遊技を再開するので、遊技者に不利益が与えられることが防止される。
【0008】
ところが、遊技制御手段および他の電気部品制御手段が、制御を中断しそのときの制御状態をバックアップ記憶手段に保存する場合に、遊技制御手段が制御を中断するタイミングと他の電気部品制御手段が制御を中断するタイミングとが一致していないと、双方の制御手段において、保存される制御状態にずれが生ずる可能性がある。また、保存されている制御状態にもとづいて遊技を再開する場合に、遊技制御手段が制御を再開するタイミングと他の電気部品制御手段が制御を再開するタイミングとが一致していないと、双方の制御手段において、制御状態にずれが生ずる可能性がある。
【0009】
そこで、本発明は、遊技制御手段および他の電気部品制御手段を備えた構成において、遊技制御手段と他の電気部品制御手段との間で制御のずれが生ずることを防止することができる遊技機を提供することを目的とする。
【0010】
【課題を解決するための手段】
本発明による遊技機は、遊技者が所定の遊技を行うことが可能な遊技機であって、遊技の進行を制御するとともに、遊技の進行に応じたコマンドを送信する遊技制御マイクロコンピュータ(例えばCPU56等)と、遊技制御マイクロコンピュータからのコマンドにもとづいて遊技機に設けられた電気部品(例えば可変表示装置9、ランプ・LED等の発光体、スピーカ27球払出装置97)を制御するための電気部品制御マイクロコンピュータ(例えば表示制御手段、ランプ制御手段、音制御手段、払出制御手段)と、遊技機で用いられる所定の電源の状態を監視して、遊技機への電力の供給停止に関わる検出条件が成立した場合に検出信号(例えば電源断信号)を出力する電源監視手段(例えば電源監視用IC902)とを備え、遊技制御マイクロコンピュータおよび電気部品制御マイクロコンピュータが、それぞれ、遊技機への電力供給が停止しても所定期間は記憶内容を保持することが可能な変動データ記憶手段(例えば電源バックアップされたRAM55やRAM104)を備え、遊技制御マイクロコンピュータが、電源監視手段からの検出信号に応じて、制御状態を復旧させるために必要なデータ(レジスタの内容等)を遊技制御マイクロコンピュータが備える変動データ記憶手段に保存するための電力供給停止時処理(例えばステップS450〜S483の処理)を実行するとともに、電力の供給停止に関わる検出条件が成立したことを示す条件成立コマンド(例えば電源断コマンド)を電気部品制御マイクロコンピュータに送信し、遊技機への電力供給が開始され所定の復旧条件(例えばステップS8〜S10の条件)が成立した場合に、遊技制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる復旧処理(例えばステップS11の遊技状態復旧処理)を実行するとともに、電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるための復旧コマンドを電気部品制御マイクロコンピュータに送信し、電気部品制御マイクロコンピュータが、遊技制御マイクロコンピュータから条件成立コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータを電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存するためのサブ側電力供給停止時処理(例えばステップS719の電力供給停止時処理)を実行し、遊技制御マイクロコンピュータから復旧コマンドを受信したことを条件に(例えばステップS708でY)、電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる(例えばステップS709の表示制御状態復旧処理を実行)とともに、遊技制御マイクロコンピュータが、遊技の進行に応じたコマンドの送信中に電源監視手段からの検出信号を受けたときは、該コマンドの送信終了後に電力供給停止時処理を実行するとともに、条件成立コマンドを送信することを特徴とする。
【0011】
遊技制御マイクロコンピュータが、遊技機への電力供給が開始されたときに、定期的にタイマ割込が発生するように設定し、定期的に発生するタイマ割込が生じたことにもとづいて遊技の制御を行うための割込処理を実行し、割込処理に要する時間の余り時間で、遊技の制御に用いられるカウンタを更新する処理を実行し、余り時間でカウンタを更新する処理では割込処理の実行を禁止する割込禁止状態に設定するように構成されていてもよい。
【0012】
電力供給停止時処理にて、電力供給停止時に割込処理の実行を禁止する割込禁止状態または実行を許可する割込許可状態のうちいずれの状態であるかを示す割込許可状態データを変動データ記憶手段に保存させる処理を行い、復旧処理にて、割込状態データにもとづいて割込禁止状態または割込許可状態に復旧させるように構成されていてもよい。
【0019】
【発明の実施の形態】
以下、本発明の一実施形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機を正面からみた正面図、図2は遊技盤の前面を示す正面図である。
【0020】
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板と、それらに取り付けられる種々の部品(後述する遊技盤を除く。)とを含む構造体である。
【0021】
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球を貯留する余剰球受皿4と打球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には遊技領域7が形成されている。
【0022】
遊技領域7の中央付近には、それぞれが識別情報としての図柄を可変表示する可変表示部を含む表示領域150を有する可変表示装置9が設けられている。表示領域150には、例えば「左」、「中」、「右」の3つの図柄表示エリアがある。また、この実施の形態では、可変表示装置9の表示領域150において、普通図柄の可変表示も行われ、特別図柄始動記憶数(特別図柄の変動開始条件の保留記憶数、以下、単に始動記憶数ともいう。)および普通図柄始動記憶数(普通図柄の変動開始条件の保留記憶数)の表示も行われる。また、可変表示装置9の周囲には、可変表示装置を装飾するための装飾部材(表飾り)が設けられている。
【0023】
可変表示装置9の下方には、始動入賞口14が設けられている。始動入賞口14に入った入賞球は、遊技盤6の背面に導かれ、始動口スイッチ14aによって検出される。また、始動入賞口14の下部には開閉動作を行う可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされる。
【0024】
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる開閉板20が設けられている。開閉板20は大入賞口を開閉する手段である。開閉板20から遊技盤6の背面に導かれた入賞球のうち一方(V入賞領域)に入った入賞球はV入賞スイッチ22で検出され、開閉板20からの入賞球はカウントスイッチ23で検出される。遊技盤6の背面には、大入賞口内の経路を切り換えるためのソレノイド21Aも設けられている。
【0025】
ゲート32に遊技球が入賞しゲートスイッチ32aで検出されると、普通図柄始動記憶が上限に達していなければ、所定の乱数値が抽出される。そして、普通図柄表示部において表示状態が変化する可変表示を開始できる状態であれば、普通図柄表示部の表示の可変表示が開始される。普通図柄表示部において表示状態が変化する可変表示を開始できる状態でなければ、普通図柄始動記憶の値が1増やされる。
【0026】
この実施の形態では、可変表示装置9の表示領域150の一部において普通図柄の可変表示が行われ、可変表示は所定時間(例えば29秒)継続する。そして、可変表示の終了時に当り図柄が停止表示されると当りとなる。当りとするか否かは、ゲート32に遊技球が入賞したときに抽出された乱数の値が所定の当り判定値と一致したか否かによって決定される。普通図柄の可変表示の表示結果が当りである場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になって遊技球が入賞しやすい状態になる。すなわち、可変入賞球装置15の状態は、普通図柄の停止図柄が当り図柄である場合に、遊技者にとって不利な状態から有利な状態に変化する。
【0027】
さらに、確変状態では、普通図柄の停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数とのうちの一方または双方が高められ、遊技者にとってさらに有利になる。また、確変状態等の所定の状態では、普通図柄の可変表示期間(変動時間)が短縮されることによって、遊技者にとってさらに有利になるようにしてもよい。
【0028】
遊技盤6には、複数の入賞口29,30,33,39が設けられ、遊技球の入賞口29,30,33への入賞は、それぞれ入賞口スイッチ29a,30a,33a,39aによって検出される。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった打球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cが設けられている。さらに、遊技領域7における各構造物(大入賞口等)の周囲には装飾LEDが設置されている。天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cおよび装飾用LEDは、遊技機に設けられている装飾発光体の一例である。なお、図1に明示されている装飾ランプ25の他にも、可変表示装置9における周辺部分や開閉板20の周囲部分等には装飾用のランプやLEDが設置されている。
【0029】
そして、この例では、左枠ランプ28bの近傍に、賞球残数があるときに点灯する賞球ランプ51が設けられ、天枠ランプ28aの近傍に、補給球が切れたときに点灯する球切れランプ52が設けられている。さらに、図1には、パチンコ遊技機1に隣接して設置され、プリペイドカードが挿入されることによって球貸しを可能にするカードユニット50も示されている。
【0030】
カードユニット50には、使用可能状態であるか否かを示す使用可表示ランプ151、カードユニット50がいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器153、カードユニット50内にカードが投入されていることを示すカード投入表示ランプ154、記録媒体としてのカードが挿入されるカード挿入口155、およびカード挿入口155の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニット50を解放するためのカードユニット錠156が設けられている。
【0031】
打球発射装置から発射された遊技球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。打球が始動入賞口14に入り始動口スイッチ14aで検出されると、特別図柄の可変表示を開始できる状態であれば、可変表示装置9の表示領域150において特別図柄が可変表示(変動)を始める。図柄の可変表示を開始できる状態でなければ、始動記憶数を1増やす。
【0032】
特別図柄の可変表示は、一定時間が経過したときに停止する。停止時の特別図柄の組み合わせが大当り図柄(特定表示態様)であると、大当り遊技状態に移行する。すなわち、開閉板20が、一定時間経過するまで、または、所定個数(例えば10個)の打球が入賞するまで開放する。そして、開閉板20の開放中に打球がV入賞領域に入賞しV入賞スイッチ22で検出されると、継続権が発生し開閉板20の開放が再度行われる。継続権の発生は、所定回数(例えば15ラウンド)許容される。
【0033】
停止時の特別図柄の組み合わせが確率変動を伴う大当り図柄(確変図柄)の組み合わせである場合には、次に大当りとなる確率が高くなる。すなわち、確変状態という遊技者にとってさらに有利な状態となる。
【0034】
次に、パチンコ遊技機1の裏面の構造について図3を参照して説明する。図3は、遊技機を裏面から見た背面図である。
【0035】
図3に示すように、遊技機裏面側では、可変表示装置9を制御する図柄制御基板80を含む可変表示制御ユニット49、遊技制御用マイクロコンピュータ等が搭載された遊技制御基板(主基板)31が設置されている。また、球払出制御を行う払出制御用マイクロコンピュータ等が搭載された払出制御基板37が設置されている。さらに、遊技盤6に設けられている各種装飾LED、装飾ランプ25、枠側に設けられている天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、賞球ランプ51および球切れランプ52を点灯制御するランプ制御手段が搭載されたランプ制御基板35、スピーカ27からの音発生を制御する音制御手段が搭載された音制御基板70も設けられている。また、また、DC30V、DC21V、DC12VおよびDC5Vを作成する電源回路が搭載された電源基板910や発射制御基板91が設けられている。
【0036】
遊技機裏面において、上方には、各種情報を遊技機外部に出力するための各端子を備えたターミナル基板160が設置されている。ターミナル基板160には、少なくとも、球切れ検出スイッチの出力を導入して外部出力するための球切れ用端子、賞球個数信号を外部出力するための賞球用端子および球貸し個数信号を外部出力するための球貸し用端子が設けられている。また、中央付近には、主基板31からの各種情報を遊技機外部に出力するための各端子を備えた情報端子盤34が設置されている。
【0037】
さらに、各基板(主基板31や払出制御基板37等)に含まれる記憶内容保持手段(例えば、電力供給停止時にもその内容を保持可能な変動データ記憶手段すなわちバックアップRAM)に記憶されたバックアップデータをクリアするための操作手段としてのクリアスイッチ921が搭載されたスイッチ基板190が設けられている。スイッチ基板190には、クリアスイッチ921と、主基板31等の他の基板と接続されるコネクタ922が設けられている。
【0038】
貯留タンク38に貯留された遊技球は誘導レールを通り、賞球ケース40Aで覆われた球払出装置に至る。球払出装置の上部には、遊技媒体切れ検出手段としての球切れスイッチ187が設けられている。球切れスイッチ187が球切れを検出すると、球払出装置の払出動作が停止する。球切れスイッチ187は遊技球通路内の遊技球の有無を検出するスイッチであるが、貯留タンク38内の補給球の不足を検出する球切れ検出スイッチ167も誘導レールにおける上流部分(貯留タンク38に近接する部分)に設けられている。球切れ検出スイッチ167が遊技球の不足を検知すると、遊技機設置島に設けられている補給機構から遊技機に対して遊技球の補給が行われる。
【0039】
球払出装置から払い出された遊技球は、連絡口を通ってパチンコ遊技機1の前面に設けられている打球供給皿3に誘導される。連絡口の側方には、パチンコ遊技機1の前面に設けられている余剰球受皿4に連通する余剰球通路が形成されている。
【0040】
入賞にもとづく景品としての遊技球や球貸し要求にもとづく遊技球が多数払い出されて打球供給皿3が満杯になり、ついには遊技球が連絡口に到達した後さらに遊技球が払い出されると、遊技球は、余剰球通路を経て余剰球受皿4に導かれる。さらに遊技球が払い出されると、感知レバーが貯留状態検出手段としての満タンスイッチ48(図3において図示せず)を押圧して、貯留状態検出手段としての満タンスイッチ48がオンする。その状態では、球払出装置内の払出モータの回転が停止して球払出装置の動作が停止するとともに発射装置の駆動も停止する。
【0041】
図4は、主基板31における回路構成の一例を示すブロック図である。なお、図4には、払出制御基板37、ランプ制御基板35、音制御基板70、発射制御基板91および図柄制御基板80も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御するCPU56を含む基本回路53と、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、満タンスイッチ48、球切れスイッチ187、賞球カウントスイッチ301Aおよびクリアスイッチ921からの信号を基本回路53に与えるスイッチ回路58と、可変入賞球装置15を開閉するソレノイド16、開閉板20を開閉するソレノイド21および大入賞口内の経路を切り換えるためのソレノイド21Aを基本回路53からの指令に従って駆動するソレノイド回路59とが搭載されている。
【0042】
なお、図4には示されていないが、カウントスイッチ短絡信号もスイッチ回路58を介して基本回路53に伝達される。また、ゲートスイッチ32a、始動口スイッチ14a、V入賞スイッチ22、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39a、満タンスイッチ48、球切れスイッチ187、賞球カウントスイッチ301A等のスイッチは、センサと称されているものでもよい。すなわち、遊技球を検出できる遊技媒体検出手段(この例では遊技球検出手段)であれば、その名称を問わない。
【0043】
また、基本回路53から与えられるデータに従って、大当りの発生を示す大当り情報、可変表示装置9における図柄の可変表示開始に利用された始動入賞球の個数を示す有効始動情報、確率変動が生じたことを示す確変情報等の情報出力信号をホールコンピュータ等の外部装置に対して出力する情報出力回路64が搭載されている。
【0044】
基本回路53は、ゲーム制御用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段(変動データを記憶する手段)としてのRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54,RAM55はCPU56に内蔵されている。すなわち、CPU56は、1チップマイクロコンピュータである。なお、1チップマイクロコンピュータは、少なくともRAM55が内蔵されていればよく、ROM54およびI/Oポート部57は外付けであっても内蔵されていてもよい。なお、CPU56はROM54に格納されているプログラムに従って制御を実行するので、以下、CPU56が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているCPUについても同様である。
【0045】
また、RAM(CPU内蔵RAMであってもよい。)55の一部または全部が、電源基板910において作成されるバックアップ電源によってバックアップされているバックアップRAMである。すなわち、遊技機に対する電力供給が停止しても、所定期間は、RAM55の一部または全部の内容は保存される。
【0046】
リセット回路65は、所定電位の電源(例えば+5V)の電圧が所定電圧以上になると出力をローレベルからハイレベルに変化させる。従って、遊技機への電力供給開始時に、出力をローレベルからハイレベルに変化させる。リセット回路65の出力はCPU56のリセット端子に接続されている。そして、CPU56は、リセット端子の入力がハイレベルになると動作を開始する。
【0047】
遊技球を打撃して発射する打球発射装置は発射制御基板91上の回路によって制御される駆動モータ94で駆動される。そして、駆動モータ94の駆動力は、操作ノブ5の操作量に従って調整される。すなわち、発射制御基板91上の回路によって、操作ノブ5の操作量に応じた速度で打球が発射されるように制御される。
【0048】
この実施の形態では、ランプ制御基板35に搭載されているランプ制御手段が、遊技盤に設けられている装飾ランプ25の表示制御を行うとともに、枠側に設けられている天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、賞球ランプ51および球切れランプ52の表示制御を行う。なお、各ランプはLEDその他の種類の発光体でもよく、この実施の形態および他の実施の形態で用いられているLEDも他の種類の発光体でもよい。すなわち、ランプやLEDは発光体の一例である。また、可変表示装置9における周辺部分や開閉板20の周囲部分等に設置されている装飾用のランプやLEDも、ランプ制御手段によって制御される。従って、ランプ制御基板35に搭載されているランプ制御手段は、遊技機に設けられている発光体の制御を行う発光体制御手段に相当する。また、特別図柄および普通図柄を可変表示する可変表示装置9の表示制御は、図柄制御基板80に搭載されている表示制御手段によって行われる。
【0049】
図5は、図柄制御基板80内の回路構成を、可変表示装置9の一実現例であるLCD(液晶表示装置)82、主基板31の出力ポート(ポート0,2)570,572および出力バッファ回路620,62Aとともに示すブロック図である。出力ポート(出力ポート2)572からは8ビットのデータが出力され、出力ポート570からは1ビットのストローブ信号(INT信号)が出力される。なお、この実施の形態では、可変表示装置9はLCD82で実現されているが、可変表示装置9は、CRT、ドットマトリクス表示器、7セグメント表示器など他の表示装置によって実現されていてもよい。
【0050】
表示制御用CPU101は、ROM102に格納されたプログラムに従って動作し、主基板31からノイズフィルタ107および入力バッファ回路105Bを介してINT信号が入力されると、入力バッファ回路105Aを介して表示制御コマンドを受信する。入力バッファ回路105A,105Bとして、例えば汎用ICである74HC540,74HC14を使用することができる。なお、表示制御用CPU101がI/Oポートを内蔵していない場合には、入力バッファ回路105A,105Bと表示制御用CPU101との間に、I/Oポートが設けられる。
【0051】
そして、表示制御用CPU101は、受信した表示制御コマンドに従って、LCD82に表示される画面の表示制御を行う。具体的には、表示制御コマンドに応じた指令をVDP103に与える。VDP103は、キャラクタROM86から必要なデータを読み出す。VDP103は、入力したデータに従ってLCD82に表示するための画像データを生成し、R,G,B信号および同期信号をLCD82に出力する。
【0052】
また、表示制御用CPU101は、制御動作中に生じたデータで後に使用するデータをRAM104に保存する。RAM104の少なくとも一部は、電源基板910から供給されるバックアップ電源で電源バックアップされるバックアップRAMである。なお、RAM104の全領域が電源バックアップされていてもよい。
【0053】
リセット回路109は、所定電位の電源(例えば+5V)の電圧が所定電圧以上になると出力をローレベルからハイレベルに変化させる。従って、遊技機への電力供給開始時に、出力をローレベルからハイレベルに変化させる。リセット回路109の出力は表示制御用CPU101のリセット端子に接続されている。そして、表示制御用CPU101は、リセット端子の入力がハイレベルになると動作を開始する。なお、主基板31に搭載されているリセット回路65が出力をハイレベルにするタイミングよりも、リセット回路109が出力をハイレベルにするタイミングの方が早くなるように構成されている。従って、リセット回路65とリセット回路109とによって、CPU56の立ち上がり(動作開始時点)を表示制御用CPU101の立ち上がりよりも遅くする遅延出段が実現されている。
【0054】
なお、図5には、VDP103に動作クロックを与えるための発振回路85、および使用頻度の高い画像データを格納するキャラクタROM86も示されている。キャラクタROM86に格納される使用頻度の高い画像データとは、例えば、LCD82に表示される人物、動物、または、文字、図形もしくは記号等からなる画像などである。
【0055】
高周波信号を遮断するノイズフィルタ107として、例えば3端子コンデンサやフェライトビーズが使用されるが、ノイズフィルタ107の存在によって、表示制御コマンドに基板間でノイズが乗ったとしても、その影響は除去される。また、主基板31のバッファ回路620,62Aの出力側にもノイズフィルタを設けてもよい。
【0056】
図6は、電源基板910の一構成例を示すブロック図である。電源基板910は、主基板31、ランプ制御基板35、払出制御基板37、音制御基板70および図柄制御基板80等の電気部品制御基板と独立して設置され、遊技機内の各電気部品制御基板および機構部品が使用する電圧を生成する。この例では、AC24V、VSL(DC+30V)、DC+21V、DC+12VおよびDC+5Vを生成する。また、バックアップ電源すなわち記憶保持手段となるコンデンサ916は、DC+5Vすなわち各基板上のIC等を駆動する電源のラインから充電される。なお、VSLは、整流回路912において、整流素子でAC24Vを整流昇圧することによって生成される。VSLは、ソレノイド駆動電源となる。
【0057】
電源基板910には、遊技機内の各電気部品制御基板や機構部品への電力供給を実行または遮断するための電源スイッチ914が設けられている。トランス911は、交流電源からの交流電圧を24Vに変換する。AC24V電圧は、コネクタ915に出力される。また、整流回路912は、AC24Vから+30Vの直流電圧を生成し、DC−DCコンバータ913およびコネクタ915に出力する。DC−DCコンバータ913は、1つまたは複数のコンバータIC922(図6では1つのみを示す。)を有し、VSLにもとづいて+21V、+12Vおよび+5Vを生成してコネクタ915に出力する。コンバータIC922の入力側には、比較的大容量のコンデンサ923が接続されている。従って、外部からの遊技機に対する電力供給が停止したときに、+30V、+12V、+5V等の直流電圧は、比較的緩やかに低下する。コネクタ915は例えば中継基板に接続され、中継基板から各電気部品制御基板および機構部品に必要な電圧の電力が供給される。
【0058】
ただし、電源基板910に各電気部品制御基板に至る各コネクタを設け、電源基板910から、中継基板を介さずにそれぞれの基板に至る各電圧を供給するようにしてもよい。また、図6には1つのコネクタ915が代表して示されているが、コネクタは、各電気部品制御基板対応に設けられている。
【0059】
DC−DCコンバータ913からの+5Vラインは分岐してバックアップ+5Vラインを形成する。バックアップ+5Vラインとグラウンドレベルとの間には大容量のコンデンサ916が接続されている。コンデンサ916は、遊技機に対する電力供給が停止したときの電気部品制御基板のバックアップRAM(電源バックアップされているRAMすなわち電力供給停止時にも記憶内容保持状態となりうるバックアップ記憶手段)に対して記憶状態を保持できるように電力を供給するバックアップ電源となる。また、+5Vラインとバックアップ+5Vラインとの間に、逆流防止用のダイオード917が挿入される。なお、この実施の形態では、バックアップ用の+5Vは、主基板31および図柄制御基板80に供給される。
【0060】
なお、バックアップ電源として、+5V電源から充電可能な電池を用いてもよい。電池を用いる場合には、+5V電源から電力供給されない状態が所定時間継続すると容量がなくなるような充電池が用いられる。また、上記のコンデンサ923,924の代わりに、+30V電源から充電可能な電池を用いてもよい。電池は、充電機能を有するものでなくてもよく、例えばニッカド電池、アルカリ電池、マンガン電池などの電池を用いることもできる。
【0061】
また、電源基板910には、電源監視回路(電源監視手段)としての電源監視用IC902が搭載されている。電源監視用IC902は、VSL電圧を導入し、VSL電圧を監視することによって遊技機への電力供給停止の発生を検出する。具体的には、VSL電圧が所定値(この例では+22V)以下になったら、電力供給の停止が生ずるとして電源断信号を出力する。なお、監視対象の電源電圧は、各電気部品制御基板に搭載されている回路素子の電源電圧(この例では+5V)よりも高い電圧であることが好ましい。この例では、交流から直流に変換された直後の電圧であるVSLが用いられている。電源監視用IC902からの電源断信号は、バッファ回路918を介して主基板31に供給される。
【0062】
電源監視用IC902が電力供給の停止を検知するための所定値は、通常時の電圧より低いが、各電気部品制御基板上のCPUが暫くの間動作しうる程度の電圧である。また、電源監視用IC902が、CPU等の回路素子を駆動するための電圧(この例では+5V)よりも高く、また、交流から直流に変換された直後の電圧を監視するように構成されているので、CPUが必要とする電圧に対して監視範囲を広げることができる。従って、より精密な監視を行うことができる。さらに、監視電圧としてVSL(+30V)を用いる場合には、遊技機の各種スイッチに供給される電圧が+12Vであることから、電源瞬断時のスイッチオン誤検出の防止も期待できる。すなわち、+30V電源の電圧を監視すると、+30V作成の以降に作られる+12Vが落ち始める以前の段階でそれの低下を検出できる。
【0063】
+12V電源の電圧が低下するとスイッチ出力がオン状態を呈するようになるが、+12Vより早く低下する+30V電源電圧を監視して電力供給の停止を認識すれば、スイッチ出力がオン状態を呈する前に電力供給回復待ちの状態に入ってスイッチ出力を検出しない状態となることができる。
【0064】
また、電源監視用IC902は、電気部品制御基板とは別個の電源基板910に搭載されているので、電源監視回路から複数の電気部品制御基板に電源断信号を供給することができる。電源断信号を必要とする電気部品制御基板が幾つあっても電源監視手段は1つ設けられていればよい。
【0065】
また、図6に示すように、電源基板910には、押しボタン構造のクリアスイッチ921が搭載されている。クリアスイッチ921が押下されるとローレベル(オン状態)のクリアスイッチ信号が出力され、コネクタ915を介して主基板31等に送信される。また、クリアスイッチ921が押下されていなければハイレベル(オフ状態)の信号が出力される。なお、この実施の形態では、オン状態のクリア信号が出力される場合が、操作手段としてのクリアスイッチ921から操作信号が出力される状態である。なお、クリアスイッチ921が、押しボタン構造以外の他の構成とされていてもよい。また、クリアスイッチ921は、遊技機において、電源基板910以外に設けられていてもよい。
【0066】
図7は、可変表示装置9において実行される予告演出(大当りとなること、またはリーチとなる可能性があることを報知するための演出)の例を示す説明図である。図7(A)〜(D)に例示するように、この実施の形態では、可変表示装置9において、背景(図柄表示エリア以外の部分)に現れるキャラクタ等の表示による4種類の予告演出を行うことが可能である。
【0067】
また、この実施の形態では、図8(A)〜(D)に例示するように、可変表示装置9において季節に応じた予告演出も実行される。例えば、3月〜5月には図8(A)に示す予告演出が実行され、6月〜8月には図8(B)に示す予告演出が実行され、9月〜11月には図8(C)に示す予告演出が実行され、12月,1月,2月には図8(D)に示す予告演出が実行される。また、図9(A)〜(D)に例示するように、可変表示装置9において時刻に応じた予告演出も実行される。例えば、12時より前の午前中では図9(A)に示す予告演出が実行され、12時以降午後4時まで図9(B)に示す予告演出が実行され、午後4時以降午後7時まで図9(C)に示す予告演出が実行され、午後7時以降図9(D)に示す予告演出が実行される。
【0068】
次に遊技機の動作について説明する。図10は、主基板31における遊技制御手段(CPU56およびROM,RAM等の周辺回路)が実行するメイン処理を示すフローチャートである。遊技機に対して電源が投入され、リセット端子の入力レベルがハイレベルになると、CPU56は、ステップS1以降のメイン処理を開始する。メイン処理において、CPU56は、まず、必要な初期設定を行う。
【0069】
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、所定のデータを保管するためのスタック領域を指すスタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスレジスタの初期化を行う(ステップS4)。また、内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化(ステップS5)を行った後、RAMをアクセス可能状態に設定する(ステップS6)。
【0070】
この実施の形態で用いられるCPU56は、I/Oポート(PIO)およびタイマ/カウンタ回路(CTC)も内蔵している。また、CTCは、2本の外部クロック/タイマトリガ入力CLK/TRG2,3と2本のタイマ出力ZC/TO0,1を備えている。
【0071】
この実施の形態で用いられているCPU56には、マスク可能な割込のモードとして以下の3種類のモードが用意されている。なお、マスク可能な割込が発生すると、CPU56は、自動的に割込禁止状態に設定するとともに、プログラムカウンタの内容をスタックにセーブする。
【0072】
割込モード0:割込要求を行った内蔵デバイスがRST命令(1バイト)またはCALL命令(3バイト)をCPUの内部データバス上に送出する。よって、CPU56は、RST命令に対応したアドレスまたはCALL命令で指定されるアドレスの命令を実行する。リセット時に、CPU56は自動的に割込モード0になる。よって、割込モード1または割込モード2に設定したい場合には、初期設定処理において、割込モード1または割込モード2に設定するための処理を行う必要がある。
【0073】
割込モード1:割込が受け付けられると、常に0038(h)番地に飛ぶモードである。
【0074】
割込モード2:CPU56の特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。すなわち、割込番地は、上位アドレスが特定レジスタの値とされ下位アドレスが割込ベクタとされた2バイトで示されるアドレスである。従って、任意の(飛び飛びではあるが)偶数番地に割込処理を設置することができる。各内蔵デバイスは割込要求を行うときに割込ベクタを送出する機能を有している。
【0075】
よって、割込モード2に設定されると、各内蔵デバイスからの割込要求を容易に処理することが可能になり、また、プログラムにおける任意の位置に割込処理を設置することが可能になる。さらに、割込モード1とは異なり、割込発生要因毎のそれぞれの割込処理を用意しておくことも容易である。上述したように、この実施の形態では、初期設定処理のステップS2において、CPU56は割込モード2に設定される。
【0076】
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチ921の出力信号の状態を1回だけ確認する(ステップS8)。その確認においてオンを検出した場合には、CPU56は、後述する初期化処理を実行する(ステップS12〜ステップS15)。クリアスイッチ921がオンである場合(押下されている場合)には、ローレベルのクリアスイッチ信号が出力されている。例えば、遊技店員は、クリアスイッチ921をオン状態にしながら遊技機に対する電力供給を開始することによって、容易に初期化処理を実行させることができる。すなわち、RAMクリア等を行うことができる。
【0077】
クリアスイッチ921がオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばチェックデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS9)。この実施の形態では、電力供給の停止が生じた場合には、バックアップRAM領域のデータを保護するための処理が行われている。そのような保護処理が行われていた場合をバックアップありとする。そのような保護処理が行われていないことを確認したら、CPU56は通常の初期化処理を実行する。
【0078】
この実施の形態では、バックアップRAM領域にバックアップデータがあるか否かは、電力供給停止時処理においてバックアップRAM領域に設定される実行確認情報としてのバックアップフラグの状態によって確認される。例えば、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
【0079】
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS10)。遊技機への電力供給が停止する際に実行される電力供給停止時処理において、チェックサムが算出され、チェックサムはバックアップRAM領域に保存されている。ステップS10では、算出したチェックサムと保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
【0080】
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と表示制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理を行う(ステップS11)。そして、バックアップRAM領域に保存されていたPC(プログラムカウンタ)の退避値がPCに設定され、そのアドレスに復帰する。遊技状態復旧処理においてPCが電力供給停止時前の状態に復元され、かつ、各種データ(例えば各乱数を生成するためのカウンタ)がバックアップRAMに保存されていることから、遊技機への電力供給が停止した後所定時間(バックアップRAMのデータ保持可能期間)内に電力供給が復旧すれば、例えば、後述する判定用乱数、表示用乱数および初期値用乱数を生成するためのカウンタのカウント値は、電力供給停止時前の状態から継続されることになる。チェック結果が正常でなければ通常の初期化処理を実行する。
【0081】
初期化処理では、CPU56は、まず、RAMの全領域をクリアするRAMクリア処理を行う(ステップS12)。また、所定の作業領域(例えば、特別図柄判定用乱数カウンタ、特別図柄判定用バッファ、プロセスフラグ、払出コマンド格納ポインタ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグ)に初期値を設定する作業領域設定処理を行う(ステップS13)。さらに、他のサブ基板(電気部品制御基板:払出制御基板37、ランプ制御基板35、音制御基板70、図柄制御基板80)に搭載されている電気部品制御手段を初期化するための初期化コマンドを各サブ基板に送信する処理を実行する(ステップS14)。初期化コマンドとして、表示制御手段に対して初期化を指示するコマンド(図柄制御基板80に対して)や賞球ランプおよび球切れランプの消灯を指示するコマンド(ランプ制御基板35に対して)等がある。初期化コマンドを送信するには、具体的は、初期化コマンドが格納されているコマンド送信テーブルをセットし、サブルーチンであるコマンド作成処理(図24参照)をコールする。なお、コマンド送信テーブルをセットするとは、コマンド送信テーブルのアドレスを指定する処理(アドレスを所定のレジスタ等に設定する処理)である。そして、コマンド作成処理を実行することによって表示制御コマンド等が図柄制御基板80等に送信される。
【0082】
そして、2ms毎に定期的にタイマ割込がかかるようにCPU56に設けられているCTCのレジスタの設定が行われる(ステップS15)。すなわち、初期値として2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。
【0083】
初期化処理の実行(ステップS12〜S15)が完了すると、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)が繰り返し実行される。表示用乱数更新処理および初期値用乱数更新処理が実行されるときには割込禁止状態とされ(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態とされる(ステップS19)。表示用乱数更新処理および初期値用乱数更新処理が実行されるときには割込禁止状態になっているので、それらの乱数更新処理が実行されている最中に後述する2msタイマ割込が生じ割込処理で乱数更新処理が実行され、カウント値に矛盾が生じてしまうことが防止される。
【0084】
表示用乱数とは、可変表示装置9に停止表示される図柄を決定するための乱数等であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。初期値用乱数とは、大当りとするか否かを決定するための乱数を発生するためのカウンタ(当り判定用乱数発生カウンタ)等のカウント値の初期値(最大値を越えて値が戻された後の値)を決定するための乱数である。
【0085】
図11は、遊技状態復旧処理の一例を示すフローチャートである。遊技状態復旧処理において、CPU56は、まず、スタックポインタの復帰処理を行う(ステップS80)。スタックポインタの値は、後で詳述する電力供給停止時処理において、所定のRAMエリア(電源バックアップされている領域におけるスタックポインタ退避バッファ)に退避している。よって、ステップS80では、そのRAMエリアの値をスタックポインタに設定することによって復帰させる。なお、復帰されたスタックポインタが指す領域(すなわちサブルーチンを呼び出した際の戻りアドレス等を保存するスタック領域における読み出し先:具体的にはそこから複数の領域)には、電力供給が停止したときのレジスタ値やプログラムカウンタ(PC)の値が退避している。
【0086】
次いで、CPU56は、図柄制御基板80に対して、表示制御状態を復旧させるための表示制御コマンドすなわち復旧コマンドを送信する処理を行う。具体的には、復旧コマンドに対応したコマンド送信テーブルをセットし(ステップS81)、コマンド作成処理をコールする(ステップS82)。
【0087】
また、CPU56は、内蔵デバイスの設定を行うとともに、スタック領域から各種レジスタの退避値を読み出して、各種レジスタ(IXレジスタ、HLレジスタ、DEレジスタ、BCレジスタ)に設定する。すなわち、レジスタ復元処理を行う(ステップS83)。なお、各レジスタが復旧される毎に、スタックポインタの値が減らされる。すなわち、スタックポインタの値が、スタック領域の1つ前のアドレスを指すように更新される。その後、2ms毎にタイマ割込がかかるようにタイマ割込の設定を行う(ステップS84)。また、CPU56は、バックアップフラグをクリアする(ステップS85)。すなわち、前回の電力供給停止時に所定の記憶保護処理が実行されたことを示すフラグをリセットする。よって、制御状態の復旧後に不必要な情報が残存しないようにすることができる。
【0088】
そして、パリティフラグがオンしていない場合には割込許可状態にする(ステップS86,S87)。最後に、AFレジスタ(アキュミュレータとフラグのレジスタ)をスタック領域から復元する(ステップS88)。
【0089】
そして、RET命令が実行される。RET命令が実行されるときには、CPU56は、スタックポインタが指す領域に格納されているデータをプログラムカウンタに設定することによってプログラムのリターン動作を実現する。ただし、ここでのリターン先は、遊技状態復旧処理をコールした部分ではない。なぜなら、ステップS80においてスタックポインタの復帰処理がなされ、ステップS83でレジスタの復帰処理が終了した後では、スタック領域を指すスタックポインタは、NMIによる電力供給停止時処理が開始されたときに実行されていたプログラムのアドレスが退避している領域を指している。すなわち、復帰されたスタックポインタが指すスタック領域に格納されているリターンアドレスは、プログラムにおける前回の電力供給停止時にNMIが発生したアドレスである。従って、ステップS88の次のRET命令によって、電力供給停止時にNMIが発生したアドレスにリターンする。
【0090】
以上のように、この実施の形態では、スタック領域に退避されていたアドレスデータ(プログラムアドレスデータ)にもとづいて遊技制御が再開される。
【0091】
タイマ割込が発生すると、図12に示すように、CPU56は、レジスタの退避処理(ステップS20)を行った後、ステップS21〜S31の遊技制御処理を実行する。遊技制御処理において、CPU56は、まず、スイッチ回路58を介して、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ29a,30a,33a,39a等のスイッチの検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
【0092】
次に、遊技制御に用いられる大当り判定用の乱数等の各判定用乱数を生成するための各乱数生成用カウンタのカウント値を更新する処理を行う(ステップS23)。CPU56は、さらに、表示用乱数および初期値用乱数を生成するための乱数生成用カウンタのカウント値を更新する処理を行う(ステップS24,S25)。
【0093】
図13は、各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:大当りを発生させるか否か決定する(大当り判定用)
(2)ランダム2−1〜2−3:特別図柄の左右中のはずれ図柄決定用(特別図柄左右中)
(3)ランダム3:大当りを発生させる特別図柄の組合せを決定する(大当り図柄決定用)
(4)ランダム4:特別図柄の変動パターンを決定する(変動パターン決定用)
(5)ランダム5:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(6)ランダム6:ランダム1の初期値を決定する(ランダム1初期値決定用)
(7)ランダム7:ランダム5の初期値を決定する(ランダム5初期値決定用)
【0094】
なお、図12に示された遊技制御処理におけるステップS23では、CPU56は、(1)の大当り判定用乱数、(3)の大当り図柄決定用乱数、および(5)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数または初期値用乱数である。なお、遊技効果を高めるために、上記(1)〜(7)の乱数以外の普通図柄に関する乱数等も用いられている。
【0095】
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS25)。特別図柄プロセス制御では、遊技状態に応じてパチンコ遊技機1を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、特別図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。また、普通図柄プロセス処理を行う(ステップS26)。普通図柄プロセス処理では、普通図柄の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理が選び出されて実行される。そして、普通図柄プロセスフラグの値は、遊技状態に応じて各処理中に更新される。
【0096】
次いで、CPU56は、特別図柄に関する表示制御コマンドを送信する処理を行う(特別図柄コマンド制御処理:ステップS27)。また、普通図柄に関する表示制御コマンドを送信する処理を行う(普通図柄コマンド制御処理:ステップS28)。
【0097】
さらに、CPU56は、例えばホールコンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
【0098】
また、CPU56は、所定の条件が成立したときにソレノイド回路59に駆動指令を行う(ステップS30)。可変入賞球装置15または開閉板20を開状態または閉状態としたり、大入賞口内の遊技球通路を切り替えたりするために、ソレノイド回路59は、駆動指令に応じてソレノイド16,21,21Aを駆動する。
【0099】
そして、CPU56は、入賞口スイッチ29a,30a,33a,39aの検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS31)。具体的には、入賞口スイッチ29a,30a,33a,39aがオンしたことにもとづく入賞検出に応じて、払出制御基板37に賞球個数を示す払出制御コマンドを出力する。払出制御基板37に搭載されている払出制御用CPU371は、賞球個数を示す払出制御コマンドに応じて球払出装置97を駆動する。その後、レジスタの内容を復旧させ(ステップS32)、割込許可状態に設定する(ステップS33)。
【0100】
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に定期的に起動されることになる。なお、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
【0101】
図14は、CPU56が実行する特別図柄プロセス処理のプログラムの一例を示すフローチャートである。図14に示す特別図柄プロセス処理は、図12のフローチャートにおけるステップS25の具体的な処理である。CPU56は、特別図柄プロセス処理を行う際に、変動短縮タイマ減算処理(ステップS310)および始動口スイッチ通過確認処理(ステップS311)を行った後に、内部状態(この例では特別図柄プロセスフラグ)に応じて、ステップS300〜S309のうちのいずれかの処理を行う。
【0102】
変動短縮タイマ減算処理は、始動記憶(始動口スイッチ14aがオンしたことの記憶)の記憶可能最大数に対応した個数設けられている変動短縮タイマを減算する処理である。そして、後述する特別図柄大当り判定処理(ステップS301)において、例えば、変動短縮タイマの値が0になっていて、かつ、低確率状態(通常状態)では始動記憶数が始動記憶の最大値、確変状態では始動記憶数が「2」以上であれば、図柄の変動パターンとして変動時間が短縮されたパターンを用いることに決定される。また、始動口スイッチ通過確認処理は、始動口スイッチ14aがオンしたときに所定の各乱数値を取得して記憶する処理である。
【0103】
ステップS300〜S309において、以下のような処理が行われる。
【0104】
特別図柄通常処理(ステップS300):始動記憶数を確認し、始動記憶数が0でなければ、ステップS301に移行するように特別図柄プロセスフラグの値を変更する。
【0105】
特別図柄大当り判定処理(ステップS301):始動入賞があったときに記憶された各種乱数を格納するバッファ等の内容をシフトする。シフトの結果、押し出されたバッファの内容にもとづいて大当りとするか否かを決定する。なお、バッファは、始動入賞の記憶可能最大数だけ用意されている。また、シフトによって押し出されたバッファの内容は、最も前に生じた始動入賞に応じた内容である。そして、大当りとすることに決定した場合には、大当りフラグをセットする。その後、ステップS302に移行するように特別図柄プロセスフラグの値を変更する。
【0106】
停止図柄設定処理(ステップS302):特別図柄の可変表示の表示結果である左右中図柄の停止図柄を決定する。そして、ステップS303に移行するように特別図柄プロセスフラグの値を変更する。
【0107】
変動パターン設定処理(ステップS303):特別図柄の可変表示のパターンすなわち可変表示パターン(変動パターン)を決定する。そして、決定された変動パターンおよび停止図柄等を通知するための表示制御コマンドを図柄制御基板80等に対して出力するための処理を行う。その後、ステップS304に移行するように特別図柄プロセスフラグの値を変更する。
【0108】
特別図柄変動処理(ステップS304):変動パターンに応じて決められている変動時間が経過したか否か確認する。経過していれば、ステップS305に移行するように特別図柄プロセスフラグの値を変更する。
【0109】
特別図柄図柄停止処理(ステップS305):一定時間(例えば1.000秒)が経過した後、大当りとすることに決定されている場合には、ステップS306に移行するように特別図柄プロセスフラグの値を変更する。そうでなければ、ステップS300に移行するように特別図柄プロセスフラグの値を変更する。
【0110】
大入賞口開放前処理(ステップS306):大入賞口を開放する制御を開始する。具体的には、カウンタやフラグを初期化するとともに、ソレノイド54を駆動して大入賞口を開放する。そして、ステップS307に移行するように特別図柄プロセスフラグの値を変更する。
【0111】
大入賞口開放中処理(ステップS307):大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立したら、ステップS308に移行するように特別図柄プロセスフラグの値を変更する。
【0112】
特定領域有効時間処理(ステップS308):V入賞スイッチ22の通過の有無を監視して、大当り遊技状態継続条件の成立を確認する処理を行う。大当り遊技状態継続の条件が成立し、かつ、まだ残りラウンドがある場合には、ステップS307に移行するように特別図柄プロセスフラグの値を変更する。また、所定の有効時間内に大当り遊技状態継続条件が成立しなかった場合、または、全てのラウンドを終えた場合には、ステップS309に移行するように特別図柄プロセスフラグの値を変更する。
【0113】
大当り終了処理(ステップS309):大当り遊技状態が終了したことを遊技者に報知するための表示をランプ制御手段等に行わせる制御を行う。そして、ステップS300に移行するように特別図柄プロセスフラグの値を変更する。
【0114】
図15は、始動口スイッチ通過確認処理(ステップS311)を示すフローチャートである。打球が遊技盤に設けられている始動入賞口14に入賞すると、始動口スイッチ14aがオンする。CPU56は、スイッチ回路58を介して始動口スイッチ14aがオンしたことを判定すると(ステップS41)、始動記憶数が上限値(この例では4)に達しているかどうか確認する(ステップS42)。始動記憶数が上限値に達していなければ、始動記憶数を1増やし(ステップS43)、大当り判定用乱数等の各乱数の値を抽出する。そして、それらを始動記憶数の値に対応した乱数値格納エリア(特別図柄判定用バッファ)に格納する(ステップS44)。
【0115】
また、始動記憶数指定コマンドの送出要求のための処理を行う(ステップS45)。始動記憶数指定コマンドとは、図柄制御基板80に搭載されている表示制御手段に対して送信される、新たな始動記憶数を通知するための表示制御コマンドであり、具体的には、後述するコマンド送信テーブルを指定する処理が行われる。なお、始動記憶数が上限値に達している場合には、始動記憶数を増やす処理を行わない。
【0116】
CPU56は、ステップS25の特別図柄プロセス処理において、図16に示すように始動記憶数の値を確認する(ステップS51)。始動記憶数が0でなければ、始動記憶;1(1番目の始動記憶)に対応する乱数値格納エリアに格納されている値を読み出すとともに(ステップS52)、始動記憶数の値を1減らし、かつ、各乱数値格納エリアの値をシフトする(ステップS53)。すなわち、始動記憶;n(n=2,・・・,4)に対応する乱数値格納エリアに格納されている各値を、始動記憶:n−1に対応する乱数値格納エリアに格納する。なお、そのときの始動記憶数に対応した乱数値格納エリアの内容をクリアする。例えば、始動記憶数が4であった場合には、始動記憶;4に対応した特別図柄乱数値格納エリアの内容をクリアする。
【0117】
また、始動記憶数が1減らされたので、新たな始動記憶数を表示制御手段に通知するために、始動記憶数指定コマンドの送出要求のための処理を行う(ステップS65)。ステップS65の処理は、具体的には、始動記憶数に対応する表示制御コマンドが格納されているコマンド送信テーブルのアドレスを設定してコマンド作成処理をコールする処理である。
【0118】
そして、CPU56は、ステップS52で読み出した値、すなわち抽出されている大当り判定用乱数(特別図柄判定用乱数)の値にもとづいて当り/はずれを決定する(ステップS54)。ここでは、大当り判定用乱数は0〜316の範囲の値をとることにする。そして、図17に示すように、通常状態では、例えばその値が「3」である場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。また、高確率状態(確変状態)では、例えばその値が「3」,「7」,「79」,「103」,「107」のいずれかである場合に「大当り」と決定し、それ以外の値である場合には「はずれ」と決定する。
【0119】
図16に示すステップS54において、大当りと判定されたときには、大当り図柄用乱数(ランダム3)の値に従って大当り図柄を決定する(ステップS55)。この実施の形態では、ランダム3の値に応じた大当り図柄テーブルに設定されている図柄番号の各図柄が、大当り図柄として決定される。大当り図柄テーブルには、複数種類の大当り図柄の組み合わせのそれぞれに対応した左右中の図柄番号が設定されている。また、変動パターン決定用乱数(ランダム4)を抽出し、ランダム4の値にもとづいて特別図柄の変動パターンを決定する(ステップS56)。
【0120】
はずれと判定された場合には、CPU56は、大当りとしない場合の停止図柄の決定を行う。この実施の形態では、ステップS52で読み出した値、すなわち抽出されているランダム2−1の値に従って左図柄を決定する(ステップS57)。また、ランダム2−2の値に従って中図柄を決定する(ステップS58)。そして、ランダム2−3の値に従って右図柄を決定する(ステップS59)。ここで、決定された中図柄が左右図柄と一致した場合には、中図柄に対応した乱数の値に1加算した値に対応する図柄を中図柄の停止図柄として、大当り図柄と一致しないようにする。
【0121】
さらに、CPU56は、リーチすることに決定されたか否か(左右の停止図柄が揃っているか否か)を確認し(ステップS60)、リーチすることに決定されている場合には、変動パターン決定用乱数(ランダム4)の値を抽出し、ランダム4にもとづいて図柄の変動パターンを決定する(ステップS61)。
【0122】
リーチすることに決定されていない場合には、確変状態か否かを確認する(ステップS62)。確変状態であれば変動パターンをはずれ時短縮変動パターンとすることに決定する(ステップS63)。確変状態でなければ変動パターンをはずれ時の通常変動パターンとすることに決定する(ステップS64)。なお、はずれ時短縮変動パターンは、左右中の図柄の変動時間が例えば1.0秒という通常変動パターンよりも変動期間が短い変動パターンである。
【0123】
以上のようにして、始動入賞にもとづく図柄の変動態様を、リーチ態様とするか、はずれ態様とするか決定され、それぞれの停止図柄の組合せが決定される。すなわち、特別図柄の変動態様として、リーチ演出を行うのか行わないのかが決定されるとともに停止図柄の組合せが決定される。また、遊技制御手段は、決定結果にもとづく制御コマンド(変動パターンを特定可能な制御コマンド)を、表示制御手段、音制御手段およびランプ制御手段に送信する処理を行う。
【0124】
なお、図16に示された処理は、図14に示された特別図柄プロセス処理におけるステップS301〜S303の処理をまとめて示した場合の処理に相当する。また、この実施の形態では、左右中図柄の停止図柄が揃った場合に大当りが発生する。左右図柄のみが揃った場合にリーチとなる。
【0125】
次に、遊技制御手段から各電気部品制御手段に対する制御コマンドの送出方式について説明する。図18は、主基板31から図柄制御基板80に送信される表示制御コマンドの信号線を示す説明図である。図18に示すように、この実施の形態では、表示制御コマンドは、表示制御信号D0〜D7の8本の信号線で主基板31から図柄制御基板80に送信される。また、主基板31と図柄制御基板80との間には、ストローブ信号を送信するための表示制御INT信号の信号線も配線されている。図18には、表示制御コマンドの例が示されているが、他の電気部品制御基板への制御コマンドも、8本の信号線と1本のINT信号の信号線によって送信される。
【0126】
遊技制御手段から他の電気部品制御基板(サブ基板)に制御コマンドを出力しようとするときに、コマンド送信テーブルの先頭アドレスの設定が行われる。図19(A)は、コマンド送信テーブルの一構成例を示す説明図である。1つのコマンド送信テーブルは3バイトで構成され、1バイト目にはINTデータが設定される。また、2バイト目のコマンドデータ1には、制御コマンドの1バイト目のMODEデータが設定される。そして、3バイト目のコマンドデータ2には、制御コマンドの2バイト目のEXTデータが設定される。
【0127】
なお、EXTデータそのものがコマンドデータ2の領域に設定されてもよいが、コマンドデータ2には、EXTデータが格納されているテーブルのアドレスを指定するためのデータが設定されるようにしてもよい。例えば、コマンドデータ2のビット7(ワークエリア参照ビット)が0であれば、コマンドデータ2にEXTデータそのものが設定されていることを示す。そのようなEXTデータはビット7が0であるデータである。この実施の形態では、ワークエリア参照ビットが1であれば、EXTデータとして、送信バッファの内容を使用することを示す。なお、ワークエリア参照ビットが1であれば、他の7ビットが、EXTデータが格納されているテーブルのアドレスを指定するためのオフセットであることを示すように構成することもできる。
【0128】
図19(B)INTデータの一構成例を示す説明図である。INTデータにおけるビット0は、払出制御基板37に払出制御コマンドを送出すべきか否かを示す。ビット0が「1」であるならば、払出制御コマンドを送出すべきことを示す。また、INTデータにおけるビット1は、図柄出制御基板80に表示制御コマンドを送出すべきか否かを示す。ビット1が「1」であるならば、表示制御コマンドを送出すべきことを示す。また、INTデータのビット2,3は、それぞれ、ランプ制御コマンド、音制御コマンドを送出すべきか否かを示すビットである。
【0129】
図20は、主基板31から他の電気部品制御基板に送出される制御コマンドのコマンド形態の一例を示す説明図である。この実施の形態では、制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」とされ、EXTデータの先頭ビット(ビット7)は必ず「0」とされる。このように、電気部品制御基板へのコマンドとなる制御コマンドは、複数のデータで構成され、先頭ビットによってそれぞれを区別可能な態様になっている。なお、図20に示されたコマンド形態は一例であって他のコマンド形態を用いてもよい。例えば、1バイトや3バイト以上で構成される制御コマンドを用いてもよい。また、図20には図柄制御基板80に送出される表示制御コマンドが例示されているが、他の電気部品制御基板に送出される制御コマンドも同一構成である。
【0130】
図21に示すように、制御コマンドは、8ビットの制御信号CD0〜CD7(コマンドデータ)とINT信号(取込信号)とで構成される。払出制御基板37および図柄制御基板80に搭載されている払出制御手段および表示制御手段は、INT信号が立ち上がったことを検知して、割込処理によって1バイトのデータの取り込み処理を開始する。
【0131】
なお、制御コマンドは、電気部品制御手段が認識可能に1回だけ送出される。認識可能とは、この例では、INT信号のレベルが変化することであり、認識可能に1回だけ送出されるとは、例えば表示制御信号の1バイト目および2バイト目のそれぞれに応じてINT信号が1回だけパルス状(矩形波状)に出力されることである。
【0132】
各電気部品制御基板への制御コマンドを、対応する出力ポートに出力する際に、INT信号を出力する出力ポートのビット0〜3のうちのいずれかのビットが所定期間「1」(ハイレベル)になるのであるが、INTデータにおけるビット配列とINT信号を出力する出力ポートにおけるビット配列とは対応している。従って、各電気部品制御基板に制御コマンドを送出する際に、INTデータにもとづいて、容易にINT信号の出力を行うことができる。
【0133】
図22は、図柄制御基板80に送出される表示制御コマンドの内容の一例を示す説明図である。図22に示す例において、コマンド8000(H)〜800E(H)は、特別図柄を可変表示する可変表示装置9における特別図柄の変動パターンを指定する表示制御コマンドである。なお、変動パターンを指定するコマンド(変動パターンコマンド)は変動開始指示も兼ねている。また、コマンド800E(H)は、短縮表示パターンを指定するコマンドである。
【0134】
コマンド88XX(H)(X=4ビットの任意の値)は、普通図柄の変動パターンに関する表示制御コマンドである。コマンド89XX(H)は、普通図柄の停止図柄を指定する表示制御コマンドである。コマンド8AXX(H)(X=4ビットの任意の値)は、普通図柄の可変表示の停止を指示する表示制御コマンドである。
【0135】
コマンド91XX(H)、92XX(H)および93XX(H)は、特別図柄の左中右の停止図柄を指定する表示制御コマンドである。「XX」には図柄番号が設定される。また、コマンドA000(H)は、特別図柄の可変表示の停止を指示する表示制御コマンドである。コマンドBXXX(H)は、大当り遊技開始から大当り遊技終了までの間に送出される表示制御コマンドである。そして、コマンドC000(H)〜EXXX(H)は、特別図柄の変動および大当り遊技に関わらない可変表示装置9の表示状態に関する表示制御コマンドである。
【0136】
コマンドC000(H)は、客待ちデモンストレーション表示を指定するための表示制御コマンド(客待ちデモ表示コマンド)である。コマンドC100(H)は、遊技機への電力供給が復旧したときに送信される表示制御コマンド(復旧コマンド)である。コマンドC200(H)は、遊技機への電力供給が断たれるときに送信される表示制御コマンド(電源断コマンド)である。電源断コマンドは、遊技機への電力供給の停止に関わる検出条件が成立したことを示す条件成立信号に相当する。図柄制御基板80の表示制御手段は、主基板31の遊技制御手段から上述した表示制御コマンドを受信すると図22に示された内容に応じて可変表示装置9の表示状態を変更する制御を行う。
【0137】
コマンドE0XX(H)は、特別図柄始動記憶数を指定する表示制御コマンドである。コマンドE1XX(H)は、普通図柄始動記憶数を指定する表示制御コマンドである。表示制御手段は、可変表示装置9の表示領域の一部に設けられている特別図柄始動記憶数表示領域にコマンドE0XX(H)における「XX(H)」で指定される数の特別図柄始動記憶数を表示する制御を行う。また、可変表示装置9の表示領域の一部に設けられている普通図柄始動記憶数表示領域にコマンドE0XX(H)における「XX(H)」で指定される数の普通図柄始動記憶数を表示する制御を行う。なお、特別図柄始動記憶数および普通図柄始動記憶数に関するコマンドがそれらの増減を示すように構成されていてもよい。
【0138】
図23は、変動パターンコマンドと変動パターンとの関係の一例を示す説明図である。図23において、「EXT」とは、表示制御コマンドにおける2バイト目のEXTデータを示す。なお、この実施の形態では、1バイト目の「MODE」データは、いずれの場合も「80(H)」である。また、「時間」は変動時間を示す。
【0139】
なお、「通常変動」とは、リーチ態様を伴わない変動パターンである。「ノーマルリーチ」とは、リーチ態様を伴うが変動結果(停止図柄)が大当りを生じさせるものとならない変動パターンである。「リーチA」は、「ノーマルリーチ」とは異なるリーチ態様を持つ変動パターンである。また、リーチ態様が異なるとは、リーチ変動時間において異なった態様の変動態様(速度や回転方向等)やキャラクタ等が現れることをいう。例えば、「ノーマル」では単に1種類の変動態様によってリーチ態様が実現されるのに対して、「リーチA」では、変動速度や変動方向が異なる複数の変動態様を含むリーチ態様が実現される。
【0140】
また、「リーチB」は、「ノーマルリーチ」および「リーチA」とは異なるリーチ態様を持つ変動パターンである。そして、「リーチC」は、「ノーマルリーチ」、「リーチA」および「リーチB」とは異なるリーチ態様を持つ変動パターンである。なお、「リーチA」、「リーチB」および「リーチC」では、大当りとなる場合と大当りとならない場合とがある。
【0141】
この実施の形態では、さらに、短縮表示パターンが用いられる。短縮表示パターンは、左右中の図柄の変動時間が例えば1.0秒という極めて短い変動パターンである。
【0142】
図24は、コマンド作成処理の処理例を示すフローチャートである。コマンド作成処理は、コマンド出力処理とINT信号出力処理とを含む処理である。コマンド作成処理は、遊技制御処理では、ステップS25の特別図柄プロセス処理、ステップS27の特別図柄コマンド制御処理、ステップS28の普通図柄コマンド制御処理等において、制御コマンドを作成する際にコールされる。
【0143】
コマンド作成処理において、CPU56は、まず、コマンド送信テーブルのアドレスをスタック等に退避する(ステップS331)。そして、ポインタが指していたコマンド送信テーブルのINTデータを引数1にロードする(ステップS332)。引数1は、後述するコマンド送信処理に対する入力情報になる。また、コマンド送信テーブルを指すアドレスを+1する(ステップS333)。従って、コマンド送信テーブルを指すアドレスは、コマンドデータ1のアドレスに一致する。
【0144】
次いで、CPU56は、コマンドデータ1を読み出して引数2に設定する(ステップS334)。引数2も、後述するコマンド送信処理に対する入力情報になる。そして、コマンド送信処理ルーチンをコールする(ステップS335)。
【0145】
図25は、コマンド送信処理ルーチンを示すフローチャートである。コマンド送信処理ルーチンにおいて、CPU56は、コマンド送信中フラグをオンしたあと(ステップS350)、引数1に設定されているデータすなわちINTデータを、比較値として決められているワークエリアに設定する(ステップS351)。なお、コマンド送信中フラグは、コマンド送信処理中であるか否かを示すフラグであって、RAM55の所定の領域に記憶されている。次いで、CPU56は、送信回数=4を、処理数として決められているワークエリアに設定する(ステップS352)。そして、払出制御信号を出力するためのポート1のアドレスをIOアドレスにセットする(ステップS353)。この実施の形態では、ポート1のアドレスは、払出制御信号を出力するための出力ポートのアドレスである。また、ポート2〜4のアドレスが、表示制御信号、ランプ制御信号、音声制御信号を出力するための出力ポートのアドレスである。
【0146】
次に、CPU56は、比較値を1ビット右にシフトする(ステップS354)。シフト処理の結果、キャリービットが1になったか否か確認する(ステップS355)。キャリービットが1になったということは、INTデータにおける最も右側のビットが「1」であったことを意味する。この実施の形態では4回のシフト処理が行われるのであるが、例えば、払出制御コマンドを送出すべきことが指定されているときには、最初のシフト処理でキャリービットが1になる。
【0147】
キャリービットが1になった場合には、引数2に設定されているデータ、この場合にはコマンドデータ1(すなわちMODEデータ)を、IOアドレスとして設定されているアドレスに出力する(ステップS356)。最初のシフト処理が行われたときにはIOアドレスにポート1のアドレスが設定されているので、そのときに、払出制御コマンドのMODEデータがポート1に出力される。
【0148】
次いで、CPU56は、IOアドレスを1加算するとともに(ステップS357)、処理数を1減算する(ステップS358)。加算前にポート1を示していた場合には、IOアドレスに対する加算処理によって、IOアドレスにはポート2のアドレスが設定される。ポート2は、表示制御コマンドを出力するためのポートである。そして、CPU56は、処理数の値を確認し(ステップS359)、値が0になっていなければ、ステップS354に戻る。ステップS354で再度シフト処理が行われる。
【0149】
2回目のシフト処理ではINTデータにおけるビット1の値が押し出され、ビット1の値に応じてキャリーフラグが「1」または「0」になる。従って、表示制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。同様に、3回目および4回目のシフト処理によって、ランプ制御コマンドおよび音制御コマンドを送出すべきことが指定されているか否かのチェックが行われる。このように、それぞれのシフト処理が行われるときに、IOアドレスには、シフト処理によってチェックされる制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に対応したIOアドレスが設定されている。
【0150】
よって、キャリーフラグが「1」になったときには、対応する出力ポート(ポート1〜ポート4)に制御コマンドが送出される。すなわち、1つの共通モジュールで、各電気部品制御手段に対する制御コマンドの送出処理を行うことができる。
【0151】
また、このように、シフト処理のみによってどの電気部品制御手段に対して制御コマンドを出力すべきかが判定されるので、いずれの電気部品制御手段に対して制御コマンドを出力すべきか判定する処理が簡略化されている。
【0152】
次に、CPU56は、シフト処理開始前のINTデータが格納されている引数1の内容を読み出し(ステップS360)、読み出したデータをポート0に出力する(ステップS361)。この実施の形態では、ポート0のアドレスは、各制御信号についてのINT信号を出力するためのポートであり、ポート0のビット0〜4が、それぞれ、払出制御INT信号、表示制御INT信号、ランプ制御INT信号、音制御INT信号を出力するためのポートである。INTデータでは、ステップS351〜S359の処理で出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に応じたINT信号の出力ビットに対応したビットが「1」になっている。従って、ポート1〜ポート4のいずれかに出力された制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)に対応したINT信号がハイレベルになる。
【0153】
次いで、CPU56は、ウェイトカウンタに所定値を設定し(ステップS362)、その値が0になるまで1ずつ減算する(ステップS363,S364)。ウェイトカウンタの値が0になると、クリアデータ(00)を設定して(ステップS365)、そのデータをポート0に出力する(ステップS366)。よって、INT信号はローレベルになる。また、ウェイトカウンタに所定値を設定し(ステップS362)、その値が0になるまで1ずつ減算する(ステップS368,S369)。そして、ウェイトカウンタの値が0になると(ステップS369のY)、CPU56は、コマンド送信中フラグをオフする(ステップS370)。
【0154】
以上のようにして、制御コマンドの1バイト目のMODEデータが送出される。そこで、CPU56は、図24に示すステップS336で、コマンド送信テーブルを指す値を1加算する。従って、3バイト目のコマンドデータ2の領域が指定される。CPU56は、指し示されたコマンドデータ2の内容を引数2にロードする(ステップS337)。また、コマンドデータ2のビット7(ワークエリア参照ビット)の値が「0」であるか否か確認する(ステップS338)。0でなければ、コマンド拡張データアドレステーブルの先頭アドレスをポインタにセットし(ステップS339)、そのポインタにコマンドデータ2のビット6〜ビット0の値を加算してアドレスを算出する(ステップS340)。そして、そのアドレスが指すエリアのデータを引数2にロードする(ステップS341)。
【0155】
コマンド拡張データアドレステーブルには、各サブ基板の制御手段に送出されうるEXTデータが順次設定されている。よって、以上の処理によって、ワークエリア参照ビットの値が「1」であれば、コマンドデータ2の内容に応じたコマンド拡張データアドレステーブル内のEXTデータが引数2にロードされ、ワークエリア参照ビットの値が「0」であれば、コマンドデータ2の内容がそのまま引数2にロードされる。なお、コマンド拡張データアドレステーブルからEXTデータが読み出される場合でも、そのデータのビット7は「0」である。
【0156】
次に、CPU56は、コマンド送信処理ルーチンをコールする(ステップS342)。従って、MODEデータの送出の場合と同様のタイミングでEXTデータが送出される。その後、CPU56は、コマンド送信テーブルのアドレスを復旧し(ステップS343)、コマンド送信テーブルを指す読出ポインタの値を更新する(ステップS344)。そして、さらに送出すべきコマンドがあれば(ステップS345)、ステップS331に戻る。
【0157】
以上のようにして、2バイト構成の制御コマンド(払出制御コマンド、表示制御コマンド、ランプ制御コマンド、音制御コマンド)が、対応する電気部品制御手段に送信される。電気部品制御手段ではINT信号の立ち上がりを検出すると制御コマンドの取り込み処理を開始する。なお、各電気部品制御手段は、INT信号の立ち下がりで制御コマンドの取り込み処理を開始してもよい。また、INT信号の極性を図21に示された場合と逆にしてもよい。
【0158】
また、図25に示すように、コマンド送信処理の最後で、CPU56は、電源断フラグがオンしているか否か確認する(ステップS371)。この実施の形態では、NMIがかかったことに起因して実行されるNMI処理(マスク不能割込処理)において、NMIがかかった時点がコマンド送信処理の実行中であることが検出されると、NMIがかかったことを示す電源断フラグをセットするとともに、コマンド送信処理を続行する。従って、コマンド送信処理が終了したときに、電源断フラグがセットされている場合には、後述するステップS450に戻る。
【0159】
図26,図27は、電源基板910からの電源断信号に応じて実行されるマスク不能割込処理の処理例を示すフローチャートである。マスク不能割込が発生すると、CPU56に内蔵されている割込制御機構は、マスク不能割込発生時に実行されていたプログラムのアドレス(具体的には実行完了後の次のアドレス)を、スタックポインタが指すスタック領域に退避させるとともに、スタックポインタの値を増やす。すなわち、スタックポインタの値がスタック領域の次のアドレスを指すように更新する。
【0160】
電力供給停止時処理において、CPU56は、AFレジスタ(アキュミュレータとフラグのレジスタ)を所定のバックアップRAM領域(具体的にはスタック領域)に退避する(ステップS450)。次いで、コマンド送信中フラグがオンしているか否か確認する(ステップS451)。なお、アキュミュレータ(Aレジスタ)の内容は既に退避しているので、ステップS451の処理を実行するときにアキュミュレータを使用することができる。上述したように、コマンド送信中フラグは、コマンド送信処理に実行中にセット状態になっている。コマンド送信中フラグがオンしている場合には、電源断フラグをセットするとともに(ステップS461)、スタック領域からマスク不能割込発生時に実行されていたプログラムのアドレスを取得してそのアドレスにジャンプする(ステップS462,S463)。
【0161】
そして、上述したように、コマンド送信処理が終了すると、ステップS450に戻る。コマンド送信処理が終了したときにはコマンド送信中フラグはリセットされているので、コマンド送信処理の終了後にステップS450に戻ったときにはステップS452以降の処理が実行される。なお、マスク不能割込発生時にコマンド送信処理が実行されていない場合には、ステップS450から直ちにステップS452の処理に移行する。
【0162】
ステップS451,S461,S462およびジャンプ処理(ステップS463)によって、コマンド送信処理中にマスク不能割込が発生した場合には、コマンド送信処理を終了させてから、電力供給停止時処理(ステップS450以降の処理)が実行される。従って、コマンド送信処理は中断されることなく最後まで実行される。よって、コマンド受信側の電気部品制御手段においてコマンドの取りこぼしが生ずることが確実に防止される。なお、コマンド送信処理が終了したら再びステップS450の処理を実行するのは、電力供給停止時処理以外の処理での最後のAFレジスタのデータを退避させるためである。
【0163】
CPU56は、ステップS452において、割込フラグをパリティフラグにコピーし、その内容をスタック領域に退避する(ステップS453)。また、BCレジスタ、DEレジスタ、HLレジスタおよびIXレジスタをスタック領域に退避する(ステップS454〜S457)。なお、電源復旧時には、退避された内容にもとづいてレジスタ内容が復帰され、パリティフラグの内容に応じて、割込許可状態/禁止状態の内部設定がなされる。
【0164】
次いで、CPU56は、図柄制御基板80に対して電源断コマンドを送信するための制御を行う。具体的には、電源断コマンドに対応したコマンド送信テーブルをセットし(ステップS458)、コマンド作成処理をコールする(ステップS460)。
【0165】
次いで、CPU56は、各出力ポートのクリア処理を行う(ステップS460)。各出力ポートがオフ状態になるので、保存される遊技状態と整合しない状況が発生することは確実に防止される。
【0166】
次いで、CPU56は、バックアップあり指定値(この例では「55H」)をバックアップフラグにストアする(ステップS471)。バックアップフラグはバックアップRAM領域に形成されている。次いで、パリティデータを作成する(ステップS472〜S480)。すなわち、まず、クリアデータ(00)をチェックサムデータエリアにセットし(ステップS472)、チェックサム算出開始アドレスをポインタにセットする(ステップS473)。また、チェックサム算出回数をセットする(ステップS474)。
【0167】
そして、チェックサムデータエリアの内容とポインタが指すRAM領域の内容との排他的論理和を演算する(ステップS475)。演算結果をチェックサムデータエリアにストアするとともに(ステップS476)、ポインタの値を1増やし(ステップS477)、チェックサム算出回数の値を1減算する(ステップS478)。ステップS476〜S478の処理が、チェックサム算出回数の値が0になるまで繰り返される(ステップS479)。
【0168】
チェックサム算出回数の値が0になったら、CPU56は、チェックサムデータエリアの内容の各ビットの値を反転する(ステップS480)。そして、反転後のデータをチェックサムデータエリアにストアする(ステップS481)。このデータが、電源投入時にチェックされるパリティデータとなる。次いで、スタックポインタの内容をバックアップRAM領域に退避した後(ステップS482)、RAMアクセスレジスタにアクセス禁止値を設定する(ステップS483)。以後、内蔵RAM55のアクセスができなくなる。
【0169】
そして、RAMアクセスレジスタにアクセス禁止値を設定すると、CPU56は、待機状態(ループ状態)に入る。従って、システムリセットされるまで、何もしない状態になる。
【0170】
図28は、表示制御用CPU101が実行するメイン処理を示すフローチャートである。メイン処理では、まず、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS701)。そして、内蔵デバイスレジスタの初期化を行う(ステップS702)。また、割込可能状態に設定する(ステップS703)。
【0171】
そして、コマンド受信監視タイマをスタートする(ステップS704)。ステップS701からの処理は遊技機への電力供給が開始されると実行開始されるのであるが、電力供給開始時には主基板31から初期化コマンド(図10におけるステップS14参照)または復旧コマンド(図11におけるステップS81参照)が送信される。コマンド受信監視タイマは、それらの表示制御コマンドの受信を監視するためのタイマであり、タイムアウト時間は、主基板31に搭載されている遊技制御手段が電力供給が開始されてから初期化コマンドまたは復旧コマンドを送信する前での時間に余裕を持たせた時間に設定される。
【0172】
表示制御用CPU101は、コマンド受信監視タイマのタイムアウトを監視しつつ(ステップS706)、初期化コマンドまたは復旧コマンドを受信するのを待つ(ステップS707,S708)。その間、コマンド解析処理(ステップS705、図31参照)を実行する。コマンド解析処理では、初期化コマンドまたは復旧コマンドの受信が確認されたら、対応するフラグがセットされる。従って、ステップS707およびステップS708では、それらのフラグがセットされたか否か確認する。
【0173】
復旧コマンドを受信した場合には、表示制御用CPU101は、表示制御状態復旧処理を実行する(ステップS709)。また、初期化コマンドを受信した場合、または、コマンド受信監視タイマがタイムアウトした場合には、ステップS710〜S712の初期化処理を実行する。
【0174】
このように、表示制御手段は、コマンド受信監視タイマがタイムアウトした場合に初期化処理を実行するので、遊技制御手段から初期化コマンドを受信せず、また、復旧コマンドを受信できなかった場合でも、初期化処理を実行することができる。
【0175】
初期化処理では、表示制御用CPU101は、まず、RAMクリア処理を行う(ステップS710)。また、所定の作業領域(例えば、特別図柄プロセスフラグなど制御状態に応じて選択的に処理を行うためのフラグ)に初期値を設定する作業領域設定処理を行う(ステップS711)。そして、所定時間ごとにタイマ割込が発生するようにタイマ割込の設定を行う(ステップS712)。その後、この実施の形態では、表示制御用CPU101は、タイマ割込フラグの監視(ステップS715)を行うループ処理に移行する。ループ処理では、主基板31から受信した表示制御コマンドを解析する処理であるコマンド解析処理を実行する(ステップS713)。また、ループ処理内で遊技制御手段からの電源断コマンドの受信を検出したら(ステップS714)、電力供給停止時処理(ステップS719)を実行する。
【0176】
タイマ割込が発生すると、表示制御用CPU101は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、表示制御用CPU101は、そのフラグをクリアし(ステップS716)、カウンタ更新処理(ステップS717)および表示制御プロセス処理(ステップS718)を実行する。なお、ステップS717は、予告を行うか否かと予告の種類とを決定するための乱数を生成するためのカウンタの更新処理であり、予告を行うか否かと予告の種類とを乱数を用いて決定するように構成されていない場合には不要である。
【0177】
なお、この実施の形態では、タイマ割込は16.7ms(1/60秒)毎にかかるとする。すなわち、カウンタ更新処理および表示制御プロセス処理は、16.7ms毎に起動される。また、この実施の形態では、タイマ割込処理ではフラグセットのみがなされ、具体的な表示制御処理(表示制御プロセス処理)はメイン処理において実行されるが、タイマ割込処理で表示制御処理を実行してもよい。
【0178】
また、タイマ割込はより短い周期でかかるようにし(例えば2ms)、タイマ割込処理ではカウンタ更新処理を実行せず、カウンタ更新処理は、可変表示装置9の同期信号(SYNC)に同期して起動されるように構成してもよい。
【0179】
図29は、主基板31から受信した表示制御コマンドを格納するための受信バッファの一構成例を示す説明図である。この例では、2バイト構成の表示制御コマンドを6個格納可能なリングバッファ形式のコマンド受信バッファが用いられる。従って、コマンド受信バッファは、受信コマンドバッファ1〜12の12バイトの領域で構成される。そして、受信したコマンドをどの領域に格納するのかを示すコマンド受信個数カウンタが用いられる。コマンド受信個数カウンタは、0〜11の値をとる。なお、必ずしもリングバッファ形式でなくてもよく、例えば、図柄指定コマンド格納領域を3個(2×3=6バイトのコマンド受信バッファ)、それ以外の変動パターン指定などのコマンド格納領域を1個(2×1=2バイトのコマンド受信バッファ)のようなバッファ構成としてもよい。音制御手段や、ランプ制御手段においても同様に、リングバッファ形式でないバッファ形式としてもよい。この場合、表示制御手段、音制御手段、ランプ制御手段は、変動パターンなどの格納領域に格納される最新のコマンドにもとづいて制御を実行する。よって、遊技制御手段からの指示に迅速に対応することができる。
【0180】
図30は、割込処理による表示制御コマンド受信処理を示すフローチャートである。主基板31からの表示制御用のINT信号は表示制御用CPU101の割込端子に入力されている。主基板31からのINT信号が立ち上がると、表示制御用CPU101に割込がかかり、図30に示す表示制御コマンドの受信処理が開始される。なお、表示制御用CPU101は、割込が発生すると、ソフトウェアで割込許可にしない限り、マスク可能割込がさらに生ずることはないような構造のCPUである。
【0181】
なお、ここでは表示制御手段のコマンド受信処理について説明するが、払出制御手段、ランプ制御手段および音制御手段でも、同様のコマンド受信処理が実行されている。また、この実施の形態では、割込端子の入力が立ち上がると割込が発生するが、割込端子の入力が立ち下がると割込がかかるようなCPUの初期設定を行ったり、割込端子の入力が立ち下がると割込がかかるようなCPUを用いてもよい。
【0182】
すなわち、取込信号としてのパルス状(矩形波状)のINT信号のレベル変化タイミング(エッジ)で割込が発生するように構成すれば、エッジは立ち上がりエッジであっても立ち下がりエッジであってもよい。いずれにせよ、取込信号としてのパルス状(矩形波状)のINT信号のレベル変化タイミング(エッジ)で割込が発生するように構成される。このようにすることで、コマンドの取込が指示された段階でいち早くコマンド受信を行うことが可能になる。
【0183】
表示制御コマンドの受信処理において、表示制御用CPU101は、まず、各レジスタをスタックに退避する(ステップS670)。次いで、表示制御コマンドデータの入力に割り当てられている入力ポートからデータを読み込む(ステップS671)。そして、2バイト構成の表示制御コマンドのうちの1バイト目であるか否か確認する(ステップS672)。1バイト目であるか否かは、受信したコマンドの先頭ビットが「1」であるか否かによって確認される。先頭ビットが「1」であるのは、2バイト構成である表示制御コマンドのうちのMODEバイト(1バイト目)のはずである(図20参照)。そこで、表示制御用CPU101は、先頭ビットが「1」であれば、有効な1バイト目を受信したとして、受信したコマンドを受信バッファ領域におけるコマンド受信個数カウンタが示す受信コマンドバッファに格納する(ステップS673)。
【0184】
表示制御コマンドのうちの1バイト目でなければ、1バイト目を既に受信したか否か確認する(ステップS674)。既に受信したか否かは、受信バッファ(受信コマンドバッファ)に有効なデータが設定されているか否かによって確認される。
【0185】
1バイト目を既に受信している場合には、受信した1バイトのうちの先頭ビットが「0」であるか否か確認する。そして、先頭ビットが「0」であれば、有効な2バイト目を受信したとして、受信したコマンドを、受信バッファ領域におけるコマンド受信個数カウンタ+1が示す受信コマンドバッファに格納する(ステップS675)。先頭ビットが「0」であるのは、2バイト構成である表示制御コマンドのうちのEXTバイト(2バイト目)のはずである(図20参照)。なお、ステップS674における確認結果が「1バイト目を既に受信した」(=Y)である場合には、2バイト目として受信したデータのうちの先頭ビットが「0」でなければ処理を終了する。なお、ステップS674で「N」と判断された場合には、ステップS676の処理が行われないので、次に受信したコマンドは、今回受信したコマンドが格納されるはずであったバッファ領域に格納される。
【0186】
ステップS675において、2バイト目のコマンドデータを格納すると、コマンド受信個数カウンタに2を加算する(ステップS676)。そして、コマンド受信カウンタが12以上であるか否か確認し(ステップS677)、12以上であればコマンド受信個数カウンタをクリアする(ステップS678)。その後、退避されていたレジスタを復旧し(ステップS679)、最後に割込許可に設定する(ステップS680)。
【0187】
表示制御コマンドは2バイト構成であって、1バイト目(MODE)と2バイト目(EXT)とは、受信側で直ちに区別可能に構成されている。すなわち、先頭ビットによって、MODEとしてのデータを受信したのかEXTとしてのデータを受信したのかを、受信側において直ちに検出できる。よって、上述したように、適正なデータを受信したのか否かを容易に判定することができる。
【0188】
図31は、コマンド解析処理(ステップS705,S713)の具体例を示すフローチャートである。主基板31から受信された表示制御コマンドは受信コマンドバッファに格納されるが、コマンド解析処理では、受信コマンドバッファに格納されているコマンドの内容が確認される。
【0189】
コマンド解析処理において、表示制御用CPU101は、まず、コマンド受信バッファに受信コマンドが格納されているか否か確認する(ステップS681)。格納されているか否かは、コマンド受信カウンタの値と読出ポインタとを比較することによって判定される。両者が一致している場合が、受信コマンドが格納されていない場合である。コマンド受信バッファに受信コマンドが格納されている場合には、表示制御用CPU101は、コマンド受信バッファから受信コマンドを読み出す(ステップS682)。なお、読み出したら読出ポインタの値を+1しておく。
【0190】
受信した表示制御コマンドが特別図柄左指定の表示制御コマンド(91XX(H))であれば(ステップS683)、表示制御用CPU101は、「XX」で示される左図柄を示すデータを、RAM104における左図柄格納領域に格納する(ステップS684)。また、特別図柄中指定の表示制御コマンド(92XX(H))であれば(ステップS686)、表示制御用CPU101は、「XX」で示される中図柄を示すデータを、RAM104における中図柄格納領域に格納する(ステップS687)。そして、特別図柄右指定の表示制御コマンド(93XX(H))であれば(ステップS688)、表示制御用CPU101は、「XX」で示される右図柄を示すデータを、RAM104における右図柄格納領域に格納する(ステップS689)。
【0191】
また、受信した表示制御コマンドが変動パターン指定の表示制御コマンドであれば(ステップS691)、表示制御用CPU101は、そのコマンドのEXTデータを変動パターンデータ格納領域に格納し(ステップS692)、変動パターン受信フラグをセットする(ステップS693)。そして、ステップS682で読み出した受信コマンドがその他の表示制御コマンドである場合には、受信コマンドに対応するフラグをセットする(ステップS696)。
【0192】
図32は、表示制御状態復旧処理(ステップS709)の一例を示すフローチャートである。表示制御状態復旧処理において、表示制御用CPU101は、まず、スタックポインタの復帰処理を行う(ステップS731)。スタックポインタの値は、後で詳述する電力供給停止時処理において、所定のRAMエリア(電源バックアップされている退避領域におけるスタックポインタ退避バッファ)に退避している。よって、ステップS731では、そのRAMエリアの値をスタックポインタに設定することによって復帰させる。なお、復帰されたスタックポインタが指す領域(すなわちサブルーチンを呼び出した際の戻りアドレス等を保存するスタック領域における読み出し先:具体的にはそこから複数の領域)には、電力供給が停止したときのレジスタ値やプログラムカウンタ(PC)の値が退避している。
【0193】
また、表示制御用CPU101は、バックアップRAM領域における退避領域に退避しているタイマ値や内部フラグ等を本来のアドレスに戻す(ステップS732)。なお、RAM104の全領域が電源バックアップされている場合には、この処理は不要である。また、内蔵デバイスの設定を行うとともに、スタック領域から各種レジスタの退避値を読み出して、各種レジスタ(例えばIXレジスタ、HLレジスタ、DEレジスタ、BCレジスタ)に設定する。すなわち、レジスタ復元処理を行う(ステップS733)。なお、各レジスタが復旧される毎に、スタックポインタの値が減らされる。すなわち、スタックポインタの値が、スタック領域の1つ前のアドレスを指すように更新される。その後、所定時間毎にタイマ割込がかかるようにタイマ割込の設定を行う(ステップS734)。
【0194】
そして、RET命令が実行される。RET命令が実行されるときには、表示制御用CPU101は、スタックポインタが指す領域に格納されているデータをプログラムカウンタに設定することによってプログラムのリターン動作を実現する。ただし、ここでのリターン先は、表示制御状態復旧処理をコールした部分ではない。なぜなら、ステップS731においてスタックポインタの復帰処理がなされ、ステップS733でレジスタの復帰処理が終了した後では、スタック領域を指すスタックポインタは、後述する電力供給停止時処理(図39参照)においてスタック領域に退避された戻りアドレスが格納されている領域を指している。従って、ステップS734の次のRET命令によって、その戻りアドレスにリターンする。また、ステップS732の処理によって、表示制御(表示演出)を電力供給停止前の状態に戻すために必要なデータが退避領域から復元されるので、表示制御手段は、電力供給停止前の状態から表示制御を続行することができる。
【0195】
以上のように、この実施の形態では、スタック領域に退避されていたアドレスデータ(プログラムアドレスデータ)にもとづいて表示制御が再開される。従って、表示制御手段は、可変表示装置9において表示演出が実行されているときに遊技機への電力供給が停止し電力供給が再開された場合には、バックアップRAM領域に保存されている演出に関わるデータにもとづいて、電力供給が停止した時点から演出を再開させる制御を実行することができる。また、表示制御手段は、復旧コマンドを受信したことを条件に、スタックポインタを復帰させ(ステップS731)、タイマ割込の設定を行い(ステップS734)、その後、RET命令を発行して表示制御状態を電力供給停止前の状態に復帰させる。遊技制御手段は、遊技状態復旧処理において、スタックポインタを復帰させ(ステップS80)、タイマ割込の設定を行い(ステップS84)、その後、RET命令を発行して制御状態を電力供給停止前の状態に復帰させる。従って、遊技制御手段と表示制御手段とは、ほぼ同時に電力供給停止前の状態から制御を再開する。
【0196】
図33は、RAM104の使用領域の一例を示す説明図である。RAM104には、バックアップ電源で電源バックアップされているバックアップRAM領域と非バックアップRAM領域とがある。なお、全領域がバックアップRAM領域であってもよい。
【0197】
バックアップRAM領域には、主基板31に搭載されている遊技制御手段から変動パターン指定の表示制御コマンドで指定された変動パターンを示すデータが格納される変動パターンデータ格納領域、表示制御手段が決定した予告演出の種類を示すデータが格納される予告パターンデータ格納領域、遊技制御手段から特別図柄左,中,右指定の表示制御コマンドで指定された左中右の停止図柄を示すデータが格納される左,中,右図柄格納領域がある。また、変動パターン1〜変動パターン15のそれぞれの実行回数の累積値が格納される変動パターン1実行累積回数〜変動パターン15実行累積回数の領域、各予告演出の実行回数の累積値が格納される予告1実行累積回数〜予告4実行累積回数,季節予告実行累積回数,時刻予告実行累積回数の領域、および表示結果がはずれ図柄の組合せとなった特別図柄の変動回数が格納されるはずれ変動回数連続回数の領域がある。
【0198】
また、スタック領域はバックアップRAM領域に設けられている。さらに、バックアップRAM領域には、遊技機への電力供給が停止するときに必要なデータを退避するための退避領域が設けられている。
【0199】
さらに、この実施の形態では、表示制御手段は、時計・カレンダー機能を有している。例えば、図柄制御基板80に時計・カレンダー機能を有するLSI(時計・カレンダーLSI)が搭載されている。時計・カレンダーLSIは、バックアップ電源で電源バックアップされている。表示制御用CPU101は、所定期間ごとに時計・カレンダーLSIから日時(月日と時刻)を読み出してバックアップRAM領域における時計・カレンダー領域に格納する。なお、所定時間とは、例えば、タイマ割込がかかる毎である。
【0200】
そして、表示制御用CPU101は、表示制御上で月日と時刻とを使用するときには、バックアップRAM領域における時計・カレンダー領域から月日と時刻とを読み出す。なお、表示制御用CPU101は、所定期間ごとに時計・カレンダーLSIから月日と時刻とを読み出してバックアップRAM領域における時計・カレンダー領域に格納するのではなく、月日と時刻とを使用するときに、時計・カレンダーLSIから月日と時刻とを読み出して使用するようにしてもよい。
【0201】
図34は、図28に示されたメイン処理における表示制御プロセス処理(ステップS718)を示すフローチャートである。表示制御プロセス処理では、表示制御プロセスフラグの値に応じてステップS800〜S806のうちのいずれかの処理が行われる。各処理において、以下のような処理が実行される。
【0202】
変動パターンコマンド受信待ち処理(ステップS800):コマンド受信割込処理によって、変動時間を特定可能な表示制御コマンド(変動パターンコマンド)を受信したか否か確認する。具体的には、変動パターンコマンドが受信されたことを示すフラグ(変動パターン受信フラグ)がセットされたか否か確認する。変動パターン受信フラグは、コマンド解析処理によって、変動パターン指定の表示制御コマンドが受信されたことが確認された場合にセットされる(ステップS698)。
【0203】
予告選択処理(ステップS801):予告演出を行うか否かと、行う場合の予告演出の種類を決定する。
【0204】
全図柄変動開始処理(ステップS802):左右中図柄の変動が開始されるように制御する。
【0205】
図柄変動中処理(ステップS803):変動パターンを構成する各変動状態(変動速度)の切替タイミングを制御するとともに、変動時間の終了を監視する。また、左右図柄の停止制御を行う。
【0206】
全図柄停止待ち設定処理(ステップS804):変動時間の終了時に、全図柄停止を指示する表示制御コマンド(特別図柄停止の表示制御コマンド)を受信していたら、図柄の変動を停止し停止図柄(確定図柄)を表示する制御を行う。
【0207】
大当り表示処理(ステップS805):変動時間の終了後、確変大当り表示または通常大当り表示の制御を行う。
【0208】
大当たり遊技中処理(ステップS806):大当たり遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の表示制御コマンドを受信したら、ラウンド数の表示制御等を行う。
【0209】
図35は、変動パターンテーブル毎に設定されているプロセスデータの一構成例を示す説明図である。プロセスデータは、プロセスタイマ設定値と表示制御実行テーブルの組み合わせが複数集まったデータで構成されている。各表示制御実行テーブルには、変動パターンを構成する各変動態様が記載されている。また、プロセスタイマ設定値には、その変動態様での変動時間が設定されている。表示制御用CPU101は、プロセスデータ参照し、プロセスタイマ設定値に設定されている時間だけ表示制御実行テーブルに設定されている変動態様で図柄を変動表示させる制御を行う。
【0210】
図35に示すプロセスデータは、図柄制御基板80におけるROMに格納されている。また、プロセスデータは、各変動パターンのそれぞれに応じて用意されている。
【0211】
図36は、図34に示された表示制御プロセス処理における変動パターンコマンド受信待ち処理(ステップS800)を示すフローチャートである。変動パターンコマンド受信待ち処理において、表示制御用CPU101は、変動パターン受信フラグがセットされたか否か確認する(ステップS871)。セットされていたら、そのフラグをリセットする(ステップS872)。また、変動パターン指定の表示制御コマンドで指定された変動パターンが変動パターン1〜10または変動パターン15であった場合には(ステップS873)、はずれ変動連続回数を+1し(ステップS874)、そうでない場合には、はずれ変動連続回数をクリアする(ステップS875)。その後、表示制御プロセスフラグの値を予告選択処理(ステップS801)に対応した値に変更する(ステップS876)。
【0212】
図37は、予告振り分けテーブルの一例を示す説明図である。予告振り分けテーブルにおいて、全ての変動パターンについて、選択されうる予告種類(予告なしも含む)に対応した数値が設定されている。また、各変動パターンについて、選択されうる予告種類に対応した数値の個数の和は43である。例えば、変動パターン11に対応して、予告なしの欄に21種類の数値が設定され、予告1の欄に11種類の数値が設定され、予告2の欄に11種類の数値が設定されている。表示制御用CPU101は、所定の乱数と、予告振り分けテーブルにおける各数値とを比較し、一致した数値に対応した予告種類の予告演出を行うことに決定する。例えば、変動パターン11に対応した予告なしの欄に0〜20の数値が設定され、予告1の欄に21〜31の数値が設定され、予告2の欄に32〜42の数値が設定され、変動パターン11を示す表示制御コマンドを遊技制御手段から受信した場合に、乱数値が0〜20のうちのいずれかであれば予告しないことに決定する。また、乱数値が21〜31のうちのいずれかであれば予告1の態様で予告演出することに決定する。そして、乱数値が32〜42のうちのいずれかであれば予告2の態様で予告演出することに決定する。なお、各数値を予告指定値と呼ぶ。
【0213】
図38は、予告選択処理(ステップS801)を示すフローチャートである。予告選択処理において、表示制御用CPU101は、まず、予告乱数カウンタ1のカウント値を読み出し、読み出した値を予告決定用乱数値1とする(ステップS831)。
【0214】
次に、表示制御用CPU101は、季節予告の過去の出現率が所定値以下であるか否か確認する(ステップS833)。具体的には、RAM104における季節予告実行累積回数(図43参照)の値を、予告1実行累積回数〜予告4実行累積回数,季節予告実行累積回数および時刻予告実行累積回数の和で割り算し、割り算の結果が、あらかじめ決められている所定値以下であれば、季節予告の過去の出現率が所定値以下であると判断する。そして、季節予告の過去の出現率が所定値以下であれば、予告振り分けテーブルから、季節予告が発生しやすいデータ、例えば変動パターン14に対応する欄のデータを取得する(ステップS834)。所定値を越えていれば、予告振り分けテーブルから、受信している変動パターンコマンドに対応する欄のデータを取得する(ステップS835)。なお、季節予告とは、図11(A)〜(D)に示された予告演出である。また、時刻予告とは、図12(A)〜(D)に示された予告演出である。
【0215】
次いで、取得したデータ中の予告指定値と予告選択テーブルと予告決定用乱数1とを比較し、予告する/しないと、予告するのであれば予告種類を決定する(ステップS836)。予告しないことに決定した場合にはステップS825に移行する(ステップS815)。時刻予告を示している場合には、RAM104のバックアップRAM領域から現在時刻を取得する(ステップS816,S817)。なお、表示制御用CPU101は、時計・カレンダーLSIから直接現在時刻を取得してもよい。そして、現在時刻に合った時刻予告を実行することに決定する(ステップS818)。
【0216】
季節予告を行うことに決定した場合には、RAM104のバックアップRAM領域から現在月を取得する(ステップS819,S820)。なお、表示制御用CPU101は、時計・カレンダーLSIから直接現在月を取得してもよい。そして、現在月に合った季節予告を実行することに決定する(ステップS821)。
【0217】
そして、表示制御用CPU101は、決定した予告演出(予告態様)を示すデータを予告パターンデータ格納領域に格納し(ステップS822)、決定した予告演出に対応した累積実行回数を+1する(ステップS823)。また、決定した予告演出に対応した予告開始時間決定タイマをスタートする(ステップS824)。そして、表示制御プロセスフラグを全図柄変動開始処理(ステップS802)に対応した値に更新する(ステップS825)。
【0218】
なお、予告することに決定された場合には、表示制御プロセス処理における図柄変動中処理(ステップS803)において、表示制御用CPU101は、予告振り分けテーブルと予告決定用乱数1との比較の結果で決定されている予告の種類に応じた態様で表示制御を行う。また、予告乱数カウンタ1は、ステップS705のカウンタ更新処理で更新される。
【0219】
予告選択処理は変動パターン指定の表示制御コマンドを主基板31から受信したことにもとづいて実行される処理であるから、以上の処理によって、表示制御手段は、RAM104に記憶されている時節データ(時計・カレンダーにもとづく時刻データおよび季節データ)または時計・カレンダーLSIから読み出した時節データにもとづいて、遊技制御手段から特別図柄の変動に関わる表示制御コマンドを受信した時点における時節(時刻や季節)に関連する予告演出を実行することができる。
【0220】
また、過去の予告演出の履歴にもとづいて、季節予告の発生頻度が低い場合には、季節予告が発生しやすい予告振り分けテーブル中のデータを用いて予告演出の種類を決定する。季節予告は、本来、変動パターン14による特別図柄の可変表示が行われるときに出現し、変動パターン14は大当り発生時に用いられる変動パターンである。従って、遊技者は、季節予告が出現することによって、大当りが発生することを強く期待することができる。なお、この実施の形態では、季節予告の発生頻度が低い場合には季節予告が発生しやすい予告振り分けテーブル中のデータを用いて予告演出の種類を決定するが、逆に、季節予告が発生しにくい予告振り分けテーブル中のデータを用いて予告演出の種類を決定するようにしてもよい。
【0221】
また、この実施の形態では、季節予告について演出履歴データ(予告1実行累積回数〜予告4実行累積回数,季節予告実行累積回数および時刻予告実行累積回数)を用いた発生頻度にもとづく制御(ステップS833,S834)を行ったが、他の種類の予告演出について演出履歴データにもとづく制御を行うようにしてもよい。例えば、大当りとなる可能性が極めて高い場合に使用される予告演出があって、そのような予告演出の発生頻度が低いことが演出履歴データから確認された場合には、そのような予告演出が選択されやすい予告振り分けテーブル中のデータを用いて予告演出の種類を決定する。逆に、そのような予告演出の発生頻度が低いことが演出履歴データから確認された場合には、そのような予告演出が選択されにくい予告振り分けテーブル中のデータを用いて予告演出の種類を決定するように構成してもよい。
【0222】
また、演出履歴データとして予告の実行累積回数のデータだけでなく、変動パターンの実行累積回数やはずれ変動連続回数のデータを用いてもよい。例えば、はずれ変動連続回数が所定回(例えば500回)となったら、季節予告が発生しやすい予告振り分けテーブル中のデータを用いて予告演出の種類を決定するようにしてもよい。また、表示結果が大当り図柄となる変動パターン10〜14の実行累積回数の和が10回になる毎に季節予告が3回程度生ずるように、適宜、季節予告が発生しやすい予告振り分けテーブル中のデータを用いて予告演出の種類を決定するようにしてもよい。
【0223】
表示制御用CPU101は、図柄変動中処理(ステップS803)において、予告開始時間決定用タイマがタイムアウトしたか否か確認する。タイムアウトしていたら、既に決定されている予告演出にもとづく表示が行われるようにVDP103を制御する。ここで、予告演出を実行するためのパターンテーブル(タイマ設定値と制御実行テーブルの組み合わせが複数集まったデータ)を用いて予告演出を実行するようにしてもよいが、変動パターンテーブル毎に設定されているプロセスデータを、さらに、予告演出の種類に応じて細分化して設定しておき、実現される変動パターンおよび実行される予告演出に応じたプロセスデータを使用するようにしてもよい。変動パターンおよび予告演出に応じたプロセスデータを使用する場合には、予告演出の表示制御は、図柄の可変表示とともに、プロセスデータの内容に応じて実行される。
【0224】
なお、表示制御用CPU101は、プロセスタイマがタイムアウトしたら、表示制御実行テーブルの切替を行う。すなわち、プロセスデータにおいて、次に設定されているプロセスタイマをスタートさせるとともに、その次に設定されている表示制御実行テーブルの内容に従ってVDP103を制御する。従って、VDP103は、表示制御実行テーブルの内容に応じて可変表示装置9の表示状態を制御する。
【0225】
図39は、電力供給停止時処理(ステップS719)の一例を示すフローチャートである。電力供給停止時処理において、表示制御用CPU101は、戻りアドレス(電力供給が復旧した場合のリターンアドレス)およびレジスタの値をバックアップRAM領域のスタック領域に退避する処理を行う。この例では、まず、戻りアドレスをスタック領域に退避する(ステップS849)。戻りアドレスは、例えば、図28に示されたメイン処理におけるステップS715の処理開始部分である。そして、AFレジスタ(アキュミュレータとフラグのレジスタ)をスタック領域に退避する(ステップS850)。また、BCレジスタ、DEレジスタ、HLレジスタおよびIXレジスタをスタック領域に退避する(ステップS851〜S854)。
【0226】
さらに、使用していたタイマのタイマ値をバックアップRAM領域における退避領域に退避し(ステップS855)、表示制御プロセスフラグ等の内部フラグを退避領域に退避する(ステップS856)。ステップS855,S856では、表示制御用CPU101は、遊技機への電力供給が停止した後に電力供給が復旧したときに、表示制御(表示演出)を電力供給停止前の状態に戻すために必要なデータを退避領域に退避する。また、スタックポインタの値を退避領域の所定の領域に退避する(ステップS857)。その後、表示制御用CPU101は、HALT命令を発行して動作しない状態になる。ここで、HALT命令を発行する代わりに、ループするようにしてもよい。
【0227】
上記の各実施の形態では、演出制御手段として表示制御手段を例にしたが、他の演出制御手段(ランプ制御手段、音制御手段)についても本発明を適用できる。また、演出制御手段に限らず他の電気部品制御手段(この実施の形態では払出制御手段)についても本発明を適用できる。
【0228】
図40は、本発明が適用されるランプ制御手段(CPU、ROM、RAM、周辺回路等)が搭載されたランプ制御基板37における回路構成例を示すブロック図である。遊技領域7の外側に設けられている点枠ランプ28a、左枠ランプ28b、右枠ランプ28cと遊技盤に設けられている装飾ランプ25の点灯/消灯と、賞球ランプ51および球切れランプ52の点灯/消灯とを示すランプ制御コマンドが主基板31からランプ制御基板35に出力される。
【0229】
図40に示すように、ランプ制御に関するランプ制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,3)570,573から出力される。出力ポート(出力ポート3)573は8ビットのデータを出力し、出力ポート570は1ビットのINT信号を出力する。ランプ制御基板35において、主基板31からの制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。なお、ランプ制御用CPU351がI/Oポートを内蔵していない場合には、入力バッファ回路355A,355Bとランプ制御用CPU351との間に、I/Oポートが設けられる。
【0230】
ランプ制御基板35において、ランプ制御用CPU351は、各制御コマンドに応じて定義されている天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、装飾ランプ25の点灯/消灯パターンに従って、天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、装飾ランプ25に対して点灯/消灯信号を出力する。点灯/消灯信号は、天枠ランプ28a、左枠ランプ28b、右枠ランプ28c、装飾ランプ25に出力される。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。
【0231】
主基板31において、CPU56は、RAM55の記憶内容に未払出の賞球残数があるときに賞球ランプ51の点灯を指示する制御コマンドを出力し、遊技盤裏面の払出球通路の上流に設置されている球切れスイッチ187(図3参照)が遊技球を検出しなくなると球切れランプ52の点灯を指示する制御コマンドを出力する。ランプ制御基板35において、各制御コマンドは、入力バッファ回路355A,355Bを介してランプ制御用CPU351に入力する。ランプ制御用CPU351は、それらの制御コマンドに応じて、賞球ランプ51および球切れランプ52を点灯/消灯する。なお、点灯/消灯パターンは、ランプ制御用CPU351の内蔵ROMまたは外付けROMに記憶されている。また、主基板31において、出力ポート570,573の外側にバッファ回路620,63Aが設けられている。
【0232】
また、ランプ制御用CPU371は、制御動作中に生じたデータで後に使用するデータをRAM374に保存する。RAM374の少なくとも一部は、電源基板910から供給されるバックアップ電源で電源バックアップされるバックアップRAMである。
【0233】
リセット回路359は、所定電位の電源(例えば+5V)の電圧が所定電圧以上になると出力をローレベルからハイレベルに変化させる。従って、遊技機への電力供給開始時に、出力をローレベルからハイレベルに変化させる。リセット回路359の出力はランプ制御用CPU351のリセット端子に接続されている。そして、ランプ制御用CPU351は、リセット端子の入力がハイレベルになると動作を開始する。なお、主基板31に搭載されているリセット回路65が出力をハイレベルにするタイミングよりも、リセット回路359が出力をハイレベルにするタイミングの方が早い。従って、リセット回路65とリセット回路359とによって、CPU56の立ち上がり(動作開始時点)をランプ制御用CPU351の立ち上がりよりも遅くする遅延出段が実現されている。
【0234】
そして、ランプ制御手段は、遊技制御手段から電源断コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータをRAM354のバックアップRAM領域に保存するための電力供給停止時処理を実行し、遊技制御手段から復旧コマンドを受信したことを条件に、バックアップRAM領域に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる。
【0235】
図41は、本発明が適用される音制御手段(CPU、ROM、RAM、周辺回路等)が搭載された音制御基板70における回路構成例を示すブロック図である。遊技進行に応じて、遊技領域7の外側に設けられているスピーカ27の音声出力を指示するための音制御コマンドが、主基板31から音制御基板70に出力される。
【0236】
図41に示すように、音制御コマンドは、基本回路53におけるI/Oポート部57の出力ポート(出力ポート0,4)570,574から出力される。出力ポート(出力ポート4)574からは8ビットのデータが出力され、出力ポート570からは1ビットのINT信号が出力される。音制御基板70において、主基板31からの各信号は、入力バッファ回路705A,705Bを介して音制御用CPU701に入力する。なお、音制御用CPU701がI/Oポートを内蔵していない場合には、入力バッファ回路705A,705Bと音制御用CPU701との間に、I/Oポートが設けられる。また、主基板31において、出力ポート570,574の外側にバッファ回路620,67Aが設けられている。
【0237】
そして、例えばディジタルシグナルプロセッサによる音声合成回路702は、音制御用CPU701の指示に応じた音声や効果音を発生し音量切替回路703に出力する。音量切替回路703は、音制御用CPU701の出力レベルを、設定されている音量に応じたレベルにして音量増幅回路704に出力する。音量増幅回路704は、増幅した音声信号をスピーカ27に出力する。
【0238】
また、音制御用CPU701は、制御動作中に生じたデータで後に使用するデータをRAM714に保存する。RAM714の少なくとも一部は、電源基板910から供給されるバックアップ電源で電源バックアップされるバックアップRAMである。
【0239】
リセット回路719は、所定電位の電源(例えば+5V)の電圧が所定電圧以上になると出力をローレベルからハイレベルに変化させる。従って、遊技機への電力供給開始時に、出力をローレベルからハイレベルに変化させる。リセット回路719の出力は音制御用CPU701のリセット端子に接続されている。そして、音制御用CPU701は、リセット端子の入力がハイレベルになると動作を開始する。なお、主基板31に搭載されているリセット回路65が出力をハイレベルにするタイミングよりも、リセット回路719が出力をハイレベルにするタイミングの方が早い。従って、リセット回路65とリセット回路719とによって、CPU56の立ち上がり(動作開始時点)を音制御用CPU701の立ち上がりよりも遅くする遅延出段が実現されている。
【0240】
そして、音制御手段は、遊技制御手段から電源断コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータをRAM714のバックアップRAM領域に保存するための電力供給停止時処理を実行し、遊技制御手段から復旧コマンドを受信したことを条件に、バックアップRAM領域に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる。
【0241】
図42は、本発明が適用される払出制御制御手段(CPU、ROM、RAM、周辺回路等)が搭載された払出制御基板37における回路構成例を示すブロック図である。満タンスイッチ48からの検出信号は、中継基板71を介して主基板31のI/Oポート部57に入力される。また、球切れスイッチ187からの検出信号も、中継基板72および中継基板71を介して主基板31のI/Oポート部57に入力される。
【0242】
主基板31のCPU56は、球切れスイッチ187からの検出信号が球切れ状態を示しているか、または、満タンスイッチ48からの検出信号が満タン状態を示していると、払出を停止すべき状態であることを指示する払出制御コマンドを送出する。払出を停止すべき状態であることを指示する払出制御コマンドを受信すると、払出制御基板37の払出制御用CPU371は球払出処理を停止する。
【0243】
さらに、賞球カウントスイッチ301Aからの検出信号は、中継基板72および中継基板71を介して主基板31のI/Oポート部57に入力されるとともに、中継基板72を介して払出制御基板37の入力ポート372bに入力される。賞球カウントスイッチ301Aは、球払出装置97の払出機構部分に設けられ、実際に払い出された賞球払出球を検出する。
【0244】
入賞があると、払出制御基板37には、主基板31の出力ポート(ポート0,1)570,571から賞球個数を示す払出制御コマンドが入力される。出力ポート(出力ポート1)571は8ビットのデータを出力し、出力ポート(出力ポート0)570は1ビットのINT信号を出力する。賞球個数を示す払出制御コマンドは、入力バッファ回路373Aを介してI/Oポート372aに入力される。INT信号は、入力バッファ回路373Bを介して払出制御用CPU371の割込端子に入力されている。払出制御用CPU371は、I/Oポート372aを介して払出制御コマンドを入力し、払出制御コマンドに応じて球払出装置97を駆動して賞球払出を行う。なお、この実施の形態では、払出制御用CPU371は、1チップマイクロコンピュータであり、少なくともRAMが内蔵されている。また、主基板31において、出力ポート570,571の外側にバッファ回路620,68Aが設けられている。
【0245】
払出制御用CPU371は、出力ポート372cを介して、貸し球数を示す球貸し個数信号をターミナル基板160に出力する。さらに、出力ポート372dを介して、エラー表示用LED374にエラー信号を出力する。
【0246】
さらに、払出制御基板37の入力ポート372bには、中継基板72を介して、球貸しカウントスイッチ301B、および払出モータ289の回転位置を検出するための払出モータ位置センサからの検出信号が入力される。球貸しカウントスイッチ301Bは、球払出装置97の払出機構部分に設けられ、実際に払い出された貸し球を検出する。払出制御基板37からの払出モータ289への駆動信号は、出力ポート372cおよび中継基板72を介して球払出装置97の払出機構部分における払出モータ289に伝えられ、振分ソレノイド310への駆動信号は、出力ポート372eおよび中継基板72を介して球払出装置97の払出機構部分における振分ソレノイド310に伝えられる。また、クリアスイッチ921の出力も、入力ポート372bに入力される。
【0247】
また、払出制御用CPU371は、制御動作中に生じたデータで後に使用するデータを内蔵RAMに保存する。内蔵RAMの少なくとも一部は、電源基板910から供給されるバックアップ電源で電源バックアップされるバックアップRAMである。
【0248】
リセット回路379は、所定電位の電源(例えば+5V)の電圧が所定電圧以上になると出力をローレベルからハイレベルに変化させる。従って、遊技機への電力供給開始時に、出力をローレベルからハイレベルに変化させる。リセット回路379の出力は払出制御用CPU371のリセット端子に接続されている。そして、払出制御用CPU371は、リセット端子の入力がハイレベルになると動作を開始する。なお、主基板31に搭載されているリセット回路65が出力をハイレベルにするタイミングよりも、リセット回路379が出力をハイレベルにするタイミングの方が早い。従って、リセット回路65とリセット回路379とによって、CPU56の立ち上がり(動作開始時点)を払出制御用CPU371の立ち上がりよりも遅くする遅延出段が実現されている。
【0249】
そして、払出制御手段は、遊技制御手段から電源断コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータをバックアップRAMに保存するための電力供給停止時処理を実行し、遊技制御手段から復旧コマンドを受信したことを条件に、バックアップRAMに保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる。
【0250】
さらに、表示制御手段、ランプ制御手段および音制御手段を含む演出制御手段が搭載されている演出制御基板や、表示制御手段、ランプ制御手段および音制御手段のうちの2つの制御手段を実現する演出制御手段が搭載されている演出制御基板が設けられている場合には、それらの演出制御手段について、本発明を適用することができる。
【0251】
また、上記の実施の形態では、電気部品制御手段においてRAMの少なくとも一部が電源基板910からのバックアップ電源によって電源バックアップされていたが、RAMは、各電気部品制御基板に搭載された電池等のバックアップ電源によって電源バックアップされるようにしてもよい。図43は、図柄制御基板80においてRAM104がバックアップ電源106によって電源バックアップされる例を示す。なお、バックアップ電源106は、遊技機の稼働中には、図柄制御基板80に供給される電源から充電可能な電池であってもよい。
【0252】
以上に説明したように、上記の各実施の形態では、図44に示すように、主基板31に搭載されているCPU56およびバックアップ電源916Aで電源バックアップされるRAM55を含む遊技制御手段が、電源基板910に搭載されている電源監視手段902Aからの検出信号に応じて、制御状態を復旧させるために必要なデータを遊技制御手段が備える変動データ記憶手段としてのRAM55に保存するための電力供給停止時処理を実行するとともに、電力の供給停止に関わる検出条件が成立したことを示す条件成立信号としての電源断コマンドを電気部品制御基板80Aに搭載されているCPU101Aおよび電源バックアップされるRAM104Aを含む電気部品制御手段に送信する。また、遊技制御手段は、遊技機への電力供給が開始され所定の復旧条件が成立した場合に、RAM55に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる復旧処理を実行するとともに、電気部品制御手段が備えるRAM104Aに保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるための復旧コマンドを電気部品制御手段に送信する。電気部品制御手段は、遊技制御手段から電源断コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータをRAM104Aに保存するためのサブ側電力供給停止時処理を実行する。また、遊技制御手段から復旧コマンドを受信したことを条件に、RAM104Aに保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる。
【0253】
なお、図44に示された遅延手段は、実際には、例えば、主基板31に搭載されているリセット回路(図示せず)と電気部品制御基板80Aにに搭載されているリセット回路(図示せず)とのリセット解除を示す信号の出力タイミングの差によって実現される。
【0254】
また、上記の実施の形態では、電力の供給停止に関わる検出条件が成立したことを示す条件成立信号として電源断信号を用いたが、遊技制御手段から電気部品制御手段に至る条件成立信号の信号線を設け、信号レベルによって検出条件が成立したことを通知するようにしてもよい。条件成立信号の信号線は、電気部品制御手段におけるCPUの割込端子(マスク不能割込端子またはマスク可能割込端子)に接続されることが好ましい。また、電気部品制御手段の制御状態を電力供給が停止する前の状態に復旧させるための信号として復旧コマンドを用いたが、遊技制御手段から電気部品制御手段に至る復旧信号の信号線を設け、制御状態を電力供給が停止する前の状態に復旧させることを指示するようにしてもよい。
【0255】
また、上記の各実施の形態のパチンコ遊技機は、主として、始動入賞にもとづいて可変表示部9に可変表示される特別図柄の停止図柄が所定の図柄の組み合わせになると所定の遊技価値が遊技者に付与可能になる第1種パチンコ遊技機であったが、始動入賞にもとづいて可変表示される図柄の停止図柄が所定の図柄の組み合わせになると開放する所定の電動役物への入賞があると所定の権利が発生または継続する第3種パチンコ遊技機であっても、本発明を適用できる。
【0256】
【発明の効果】
以上のように、請求項1記載の発明では、遊技機を、遊技制御マイクロコンピュータが、電源監視手段からの検出信号に応じて、制御状態を復旧させるために必要なデータを遊技制御マイクロコンピュータが備える変動データ記憶手段に保存するための電力供給停止時処理を実行するとともに、電力の供給停止に関わる検出条件が成立したことを示す条件成立コマンドを電気部品制御マイクロコンピュータに送信し、遊技機への電力供給が開始され所定の復旧条件が成立した場合に、遊技制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる復旧処理を実行するとともに、電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるための復旧コマンドを電気部品制御マイクロコンピュータに送信し、電気部品制御マイクロコンピュータが、遊技制御マイクロコンピュータから条件成立コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータを電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存するためのサブ側電力供給停止時処理を実行し、遊技制御マイクロコンピュータから復旧コマンドを受信したことを条件に、電気部品制御マイクロコンピュータが備える変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるとともに、遊技制御マイクロコンピュータが、遊技の進行に応じたコマンドの送信中に電源監視手段からの検出信号を受けたときは、該コマンドの送信終了後に電力供給停止時処理を実行するとともに、条件成立コマンドを送信するように構成にしたので、遊技制御マイクロコンピュータと他の電気部品制御マイクロコンピュータとの間で制御のずれが生ずることを極力防止することができる効果がある。また、
【図面の簡単な説明】
【図1】 パチンコ遊技機を正面からみた正面図である。
【図2】 ガラス扉枠を取り外した状態での遊技盤の前面を示す正面図である。
【図3】 遊技機を裏面から見た背面図である。
【図4】 遊技制御基板(主基板)の回路構成例を示すブロック図である。
【図5】 図柄制御基板の回路構成例を示すブロック図である。
【図6】 電源基板の回路構成例を示すブロック図である。
【図7】 予告演出の例を示す説明図である。
【図8】 季節予告の例を示す説明図である。
【図9】 時刻予告の例を示す説明図である。
【図10】 主基板におけるCPUが実行するメイン処理を示すフローチャートである。
【図11】 遊技状態復旧処理を示すフローチャートである。
【図12】 2msタイマ割込処理を示すフローチャートである。
【図13】 乱数の一例を示す説明図である。
【図14】 特別図柄プロセス処理を示すフローチャートである。
【図15】 始動口スイッチ通過確認処理を示すフローチャートである。
【図16】 可変表示の停止図柄を決定する処理およびリーチ種類を決定する処理を示すフローチャートである。
【図17】 大当りとするか否かを決定する処理を示すフローチャートである。
【図18】 表示制御コマンドの信号線を示す説明図である。
【図19】 コマンド送信テーブル等の一構成例を示す説明図である。
【図20】 制御コマンドのコマンド形態の一例を示す説明図である。
【図21】 制御コマンドを構成する8ビットの制御信号とINT信号との関係を示すタイミング図である。
【図22】 表示制御コマンドの内容の一例を示す説明図である。
【図23】 変動パターンを示す説明図である。
【図24】 コマンド作成処理の処理例を示すフローチャートである。
【図25】 コマンド送信処理ルーチンを示すフローチャートである。
【図26】 マスク不能割込処理を示すフローチャートである。
【図27】 マスク不能割込処理を示すフローチャートである。
【図28】 表示制御用CPUが実行するメイン処理を示すフローチャートである。
【図29】 表示制御手段におけるコマンド受信バッファの構成を示す説明図である。
【図30】 コマンド受信割込処理を示すフローチャートである。
【図31】 コマンド解析処理を示すフローチャートである。
【図32】 表示制御状態復旧処理を示すフローチャートである。
【図33】 RAMの使用領域の一例を示す説明図である。
【図34】 表示制御プロセス処理を示すフローチャートである。
【図35】 プロセスデータの一構成例を示す説明図である。
【図36】 表示制御プロセス処理の変動パターンコマンド受信待ち処理を示すフローチャートである。
【図37】 予告振り分けテーブルを示す説明図である。
【図38】 予告選択処理を示すフローチャートである。
【図39】 電力供給停止時処理を示すフローチャートである。
【図40】 ランプ制御基板における回路構成例を示すブロック図である。
【図41】 音制御基板における回路構成例を示すブロック図である。
【図42】 払出制御基板における回路構成例を示すブロック図である。
【図43】 図柄制御基板における他の回路構成例を示すブロック図である。
【図44】 本発明の概要を示す概念図である。
【符号の説明】
1 パチンコ遊技機
9 可変表示装置
31 主基板
35 ランプ制御基板
37 払出制御基板
55 RAM
56 CPU
70 音制御基板
80 図柄制御基板
101 表示制御用CPU
104 RAM
351 ランプ制御用CPU
371 払出制御用CPU
701 音制御用CPU
Claims (3)
- 遊技者が所定の遊技を行うことが可能な遊技機であって、
遊技の進行を制御するとともに、遊技の進行に応じたコマンドを送信する遊技制御マイクロコンピュータと、
前記遊技制御マイクロコンピュータからのコマンドにもとづいて遊技機に設けられた電気部品を制御するための電気部品制御マイクロコンピュータと、
遊技機で用いられる所定の電源の状態を監視して、遊技機への電力の供給停止に関わる検出条件が成立した場合に検出信号を出力する電源監視手段とを備え、
前記遊技制御マイクロコンピュータおよび前記電気部品制御マイクロコンピュータは、それぞれ、遊技機への電力供給が停止しても所定期間は記憶内容を保持することが可能な変動データ記憶手段を備え、
前記遊技制御マイクロコンピュータは、
前記電源監視手段からの検出信号に応じて、制御状態を復旧させるために必要なデータを前記遊技制御マイクロコンピュータが備える前記変動データ記憶手段に保存するための電力供給停止時処理を実行するとともに、電力の供給停止に関わる検出条件が成立したことを示す条件成立コマンドを前記電気部品制御マイクロコンピュータに送信し、
遊技機への電力供給が開始され所定の復旧条件が成立した場合に、前記遊技制御マイクロコンピュータが備える前記変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させる復旧処理を実行するとともに、前記電気部品制御マイクロコンピュータが備える前記変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるための復旧コマンドを前記電気部品制御マイクロコンピュータに送信し、
前記電気部品制御マイクロコンピュータは、
前記遊技制御マイクロコンピュータから前記条件成立コマンドを受信したことを条件に、制御状態を復旧させるために必要なデータを前記電気部品制御マイクロコンピュータが備える前記変動データ記憶手段に保存するためのサブ側電力供給停止時処理を実行し、
前記遊技制御マイクロコンピュータから前記復旧コマンドを受信したことを条件に、前記電気部品制御マイクロコンピュータが備える前記変動データ記憶手段に保存されていた記憶内容にもとづいて制御状態を電力供給が停止する前の状態に復旧させるとともに、
前記遊技制御マイクロコンピュータは、遊技の進行に応じたコマンドの送信中に前記電源監視手段からの検出信号を受けたときは、該コマンドの送信終了後に電力供給停止時処理を実行するとともに、前記条件成立コマンドを送信する
ことを特徴とする遊技機。 - 遊技制御マイクロコンピュータは、
遊技機への電力供給が開始されたときに、定期的にタイマ割込が発生するように設定し、
定期的に発生するタイマ割込が生じたことにもとづいて遊技の制御を行うための割込処理を実行し、
前記割込処理に要する時間の余り時間で、遊技の制御に用いられるカウンタを更新する処理を実行し、
前記余り時間でカウンタを更新する処理では前記割込処理の実行を禁止する割込禁止状態に設定する
請求項1記載の遊技機。 - 電力供給停止時処理にて、電力供給停止時に割込処理の実行を禁止する割込禁止状態または実行を許可する割込許可状態のうちいずれの状態であるかを示す割込許可状態データを変動データ記憶手段に保存させる処理を行い、
復旧処理にて、前記割込状態データにもとづいて前記割込禁止状態または前記割込許可 状態に復旧させる
請求項2記載の遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002022583A JP3660309B2 (ja) | 2002-01-30 | 2002-01-30 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002022583A JP3660309B2 (ja) | 2002-01-30 | 2002-01-30 | 遊技機 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003220196A JP2003220196A (ja) | 2003-08-05 |
JP3660309B2 true JP3660309B2 (ja) | 2005-06-15 |
JP2003220196A5 JP2003220196A5 (ja) | 2005-08-18 |
Family
ID=27745543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002022583A Expired - Fee Related JP3660309B2 (ja) | 2002-01-30 | 2002-01-30 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3660309B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016049228A (ja) * | 2014-08-29 | 2016-04-11 | 京楽産業.株式会社 | 遊技機 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007000369A (ja) * | 2005-06-23 | 2007-01-11 | Sankyo Kk | 遊技機 |
JP2007000368A (ja) * | 2005-06-23 | 2007-01-11 | Sankyo Kk | 遊技機 |
JP2007000367A (ja) * | 2005-06-23 | 2007-01-11 | Sankyo Kk | 遊技機 |
JP5061431B2 (ja) * | 2005-07-11 | 2012-10-31 | 株式会社三洋物産 | 遊技機 |
JP2007014661A (ja) * | 2005-07-11 | 2007-01-25 | Sanyo Product Co Ltd | 遊技機 |
JP4671808B2 (ja) * | 2005-08-25 | 2011-04-20 | 株式会社三共 | 遊技機 |
JP4671810B2 (ja) * | 2005-08-25 | 2011-04-20 | 株式会社三共 | 遊技機 |
JP4671809B2 (ja) * | 2005-08-25 | 2011-04-20 | 株式会社三共 | 遊技機 |
JP2007082726A (ja) * | 2005-09-21 | 2007-04-05 | Sankyo Kk | 遊技機 |
JP2007082727A (ja) * | 2005-09-21 | 2007-04-05 | Sankyo Kk | 遊技機 |
JP4693569B2 (ja) * | 2005-09-21 | 2011-06-01 | 株式会社三共 | 遊技機 |
JP4837347B2 (ja) * | 2005-09-21 | 2011-12-14 | 株式会社三共 | 遊技機 |
JP5620098B2 (ja) * | 2007-05-07 | 2014-11-05 | 株式会社平和 | 遊技機 |
JP2007229502A (ja) * | 2007-05-11 | 2007-09-13 | Sankyo Kk | 遊技機 |
JP5099631B2 (ja) * | 2007-11-30 | 2012-12-19 | サミー株式会社 | 弾球遊技機 |
JP4934217B2 (ja) * | 2010-12-28 | 2012-05-16 | 株式会社三共 | 遊技機 |
JP5353902B2 (ja) * | 2011-01-07 | 2013-11-27 | 株式会社三洋物産 | 遊技機 |
JP5750782B2 (ja) * | 2011-03-15 | 2015-07-22 | 株式会社大一商会 | パチンコ遊技機 |
JP2011183181A (ja) * | 2011-05-23 | 2011-09-22 | Sanyo Product Co Ltd | 遊技機 |
JP5570036B2 (ja) * | 2012-09-18 | 2014-08-13 | サミー株式会社 | 弾球遊技機 |
JP5667146B2 (ja) * | 2012-10-26 | 2015-02-12 | 株式会社三共 | 遊技機 |
JP5633553B2 (ja) * | 2012-11-07 | 2014-12-03 | 株式会社三洋物産 | 遊技機 |
JP5765351B2 (ja) * | 2013-02-12 | 2015-08-19 | 株式会社三洋物産 | 遊技機 |
JP6192308B2 (ja) * | 2013-02-22 | 2017-09-06 | 株式会社ソフイア | 遊技機 |
JP6101959B2 (ja) * | 2013-02-22 | 2017-03-29 | 株式会社ソフイア | 遊技機 |
JP5863747B2 (ja) * | 2013-10-22 | 2016-02-17 | 株式会社三共 | 遊技機 |
JP2014166371A (ja) * | 2014-03-17 | 2014-09-11 | Sanyo Product Co Ltd | 遊技機 |
JP2015024213A (ja) * | 2014-10-27 | 2015-02-05 | 株式会社三洋物産 | 遊技機 |
JP5956642B2 (ja) * | 2015-04-30 | 2016-07-27 | 株式会社大一商会 | パチンコ遊技機 |
JP6308182B2 (ja) * | 2015-07-29 | 2018-04-11 | サミー株式会社 | 遊技機 |
JP2016104347A (ja) * | 2016-03-04 | 2016-06-09 | 株式会社三洋物産 | 遊技機 |
JP2016172051A (ja) * | 2016-05-31 | 2016-09-29 | 株式会社三洋物産 | 遊技機 |
JP6493499B2 (ja) * | 2017-12-04 | 2019-04-03 | 株式会社三洋物産 | 遊技機 |
-
2002
- 2002-01-30 JP JP2002022583A patent/JP3660309B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016049228A (ja) * | 2014-08-29 | 2016-04-11 | 京楽産業.株式会社 | 遊技機 |
Also Published As
Publication number | Publication date |
---|---|
JP2003220196A (ja) | 2003-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3660309B2 (ja) | 遊技機 | |
JP4255642B2 (ja) | 遊技機 | |
JP2003225430A (ja) | 遊技機 | |
JP3768419B2 (ja) | 遊技機 | |
JP4242098B2 (ja) | 遊技機 | |
JP2003205083A (ja) | 遊技機 | |
JP2003199931A (ja) | 遊技機 | |
JP4794779B2 (ja) | 遊技機 | |
JP4754127B2 (ja) | 遊技機 | |
JP4131791B2 (ja) | 遊技機 | |
JP5095057B2 (ja) | 遊技機 | |
JP5090558B2 (ja) | 遊技機 | |
JP5095056B2 (ja) | 遊技機 | |
JP4850974B2 (ja) | 遊技機 | |
JP4347379B2 (ja) | 遊技機 | |
JP4658177B2 (ja) | 遊技機 | |
JP2003038786A (ja) | 遊技機 | |
JP5133441B2 (ja) | 遊技機 | |
JP5090488B2 (ja) | 遊技機 | |
JP5133442B2 (ja) | 遊技機 | |
JP2002177504A (ja) | 遊技機 | |
JP5090489B2 (ja) | 遊技機 | |
JP2003024606A (ja) | 遊技機 | |
JP4347378B2 (ja) | 遊技機 | |
JP4477041B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050124 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20050124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050127 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20050225 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050308 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050316 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110325 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120325 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120325 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120325 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130325 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130325 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140325 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |