以下、本発明の実施例について詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される前枠3とで構成されている。この前枠3には、遊技盤5が、裏側からではなく表側から着脱自在に装着され、その前側には、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。
ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。前面板7には発射用の遊技球を貯留する上皿8が装着され、前枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。
上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。
上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。
図2に示すように、遊技盤5には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その内側の遊技領域5aの略中央には、液晶カラーディスプレイである表示装置DISPが配置されている。また、遊技領域5aの適所には、図柄始動口15、大入賞口16、複数個の普通入賞口17(大入賞口16の左右に4つ)、通過口であるゲート18が配設されている。これらの入賞口15〜18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。
表示装置DISPは、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する。この表示装置DISPは、中央部に特別図柄表示部Da〜Dcと右上部に普通図柄表示部19を有している。そして、特別図柄表示部Da〜Dcでは、大当り状態の招来を期待させるリーチ演出が実行されたり、特別図柄表示部Da〜Dc及びその周りでは、当否結果を不確定に報知する予告演出などが実行される。
普通図柄表示部19は普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止するようになっている。
図柄始動口15は、左右1対の開閉爪15aを備えた電動式チューリップで開閉されるよう例えば構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、開閉爪15aが所定時間だけ、若しくは、所定個数の遊技球を検出するまで開放されるようになっている。
図柄始動口15に遊技球が入賞すると、特別図柄表示部Da〜Dcの表示図柄が所定時間だけ変動し、図柄始動口15への遊技球の入賞タイミングに応じた抽選結果に基づいて決定される停止図柄で停止する。なお、特別図柄表示部Da〜Dc及びその周りでは、一連の図柄演出の間に、予告演出が実行される場合がある。
大入賞口16は、例えば前方に開放可能な開閉板16aで開閉制御されるが、特別図柄表示部Da〜Dcの図柄変動後の停止図柄が「777」などの大当り図柄のとき、「大当りゲーム」と称する特別遊技が開始され、開閉板16aが開放されるようになっている。
大入賞口16の開閉板16aが開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板16aが閉じる。このような動作は、最大で例えば15回まで特別遊技が継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da〜Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態となるという特典が付与される。
図3は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図である。図中の一点破線は、主に、直流電圧ラインを示している。
図示の通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧や、電源異常信号ABN1、ABN2やシステムリセット信号(電源リセット信号)SYSなどを出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、主制御基板21から受けた制御コマンドCMDに基づいてランプ演出及び音声演出を実行する演出制御基板22と、演出制御基板22から受けた制御コマンドCMD’に基づいて表示装置DISPを駆動する画像制御基板23と、主制御基板21から受けた制御コマンドCMD”に基づいて払出モータMを制御して遊技球を払い出す払出制御基板24と、遊技者の操作に応答して遊技球を発射させる発射制御基板25と、を中心に構成されている。
但し、この実施例では、主制御基板21が出力する制御コマンドCMDは、コマンド中継基板26と演出インタフェイス基板27を経由して、演出制御基板22に伝送される。また、演出制御基板22が出力する制御コマンドCMD’は、演出インタフェイス基板27を経由して、画像制御基板23に伝送され、主制御基板21が出力する制御コマンドCMD”は、主基板中継基板28を経由して、払出制御基板24に伝送される。
これら主制御基板21、演出制御基板22、画像制御基板23、及び払出制御基板24には、ワンチップマイコンを備えるコンピュータ回路がそれぞれ搭載されている。そこで、これらの制御基板21〜24に搭載された回路、及びその回路によって実現される動作を機能的に総称して、本明細書では、主制御部21、演出制御部22、画像制御部23、及び払出制御部24と言うことがある。なお、演出制御部22、画像制御部23、及び払出制御部24の全部又は一部がサブ制御部である。
ところで、このパチンコ機GMは、図3の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された前枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。
図3の破線枠に示す通り、枠側部材GM1には、電源基板20と、払出制御基板24と、発射制御基板25と、枠中継基板32とが含まれており、これらの回路基板が、前枠3の適所に各々固定されている。一方、遊技盤5の背面には、主制御基板21、演出制御基板22、画像制御基板23が、表示装置DISPやその他の回路基板と共に固定されている。そして、枠側部材GM1と盤側部材GM2とは、一箇所に集中配置された接続コネクタC1〜C4によって電気的に接続されている。
電源基板20は、接続コネクタC2を通して、主基板中継基板28に接続され、接続コネクタC3を通して、電源中継基板30に接続されている。そして、主基板中継基板28は、電源基板20から受けた電源異常信号ABN1、バックアップ電源BAK、及びDC5V,DC12V,DC32Vを、そのまま主制御部21に出力している。一方、電源中継基板30は、電源基板20から受けたシステムリセット信号SYSや、交流及び直流の電源電圧を、そのまま演出インタフェイス基板27に出力している。なお、演出インタフェイス基板27は、受けたシステムリセット信号SYSを、そのまま演出制御部22と画像制御部23に出力している。
一方、払出制御基板24は、中継基板を介することなく、電源基板20に直結されており、主制御部21が受けると同様の電源異常信号ABN2や、バックアップ電源BAKを、その他の電源電圧と共に直接的に受けている。
電源基板20が出力するシステムリセット信号SYSは、電源基板20に交流電源24Vが投入されたことを示す電源リセット信号であり、この電源リセット信号によって演出制御部22と画像制御部23のワンチップマイコンは、その他のIC素子と共に電源リセットされるようになっている。
但し、このシステムリセット信号SYSは、主制御部21と払出制御部24には、供給されておらず、各々の回路基板21,24のリセット回路RSTにおいて電源リセット信号(CPUリセット信号)が生成されている。そのため、例えば、接続コネクタC2がガタついたり、或いは、配線ケーブルにノイズが重畳しても、主制御部21や払出制御部24のCPUが異常リセットされるおそれはない。なお、演出制御部22と画像制御部23は、主制御部21からの制御コマンドに基づいて、従属的に演出動作を実行することから、回路構成の複雑化を回避するために、電源基板20から出力されるシステムリセット信号SYSを利用している。
また、この実施例では、RAMクリア信号CLRは、主制御部21で生成されて主制御部21と払出制御部24のワンチップマイコンに伝送されている。ここで、RAMクリア信号CLRは、各制御部21,24のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定する信号であって、係員が操作する初期化スイッチSWのON/OFF状態に対応した値を有している。
主制御部21及び払出制御部24が、電源基板20から受ける電源異常信号ABN1,ABN2は、交流入力電源AC24Vが降下し始めたことを示す信号であり、この電源異常信号ABN1,ABN2を受けることによって、各制御部21、24では、停電や営業終了に先立って、必要な終了処理を開始するようになっている。また、バックアップ電源BAKは、営業終了や停電により交流電源24Vが遮断された後も、主制御部21と払出制御部24のワンチップマイコンの内蔵RAMのデータを保持するDC5Vの直流電源である。したがって、主制御部21と払出制御部25は、電源遮断前の遊技動作を電源投入後に再開できることになる(電源バックアップ機能)。このパチンコ機では少なくとも数日は、各ワンチップマイコンのRAMの記憶内容が保持されるよう設計されている。
図3に示す通り、主制御部21は、主基板中継基板28を経由して、払出制御部25に制御コマンドCMD”を送信する一方、払出制御部25からは、遊技球の払出動作を示す賞球計数信号や、払出動作の異常に係わるステイタス信号CONを受信している。ステイタス信号CONには、例えば、補給切れ信号、払出不足エラー信号、下皿満杯信号が含まれる。
また、主制御部21は、遊技盤中継基板29を経由して、遊技盤5の各遊技部品に接続されている。そして、遊技盤上の各入賞口16〜18に内蔵された検出スイッチのスイッチ信号を受ける一方、電動チューリップなどのソレノイド類を駆動している。ソレノイド類や検出スイッチは、主制御部21から給電された電源電圧VB(12V)で動作するよう構成されている。そして、図柄始動口15への入賞状態などを示す各スイッチ信号は、電源電圧VB(12V)と電源電圧Vcc(5V)とで動作するインタフェイスICで、TTLレベルのスイッチ信号に変換された上で、主制御部21に伝送される。
図4は、電源基板20の電源回路を示す回路図である。この電源回路は、演出インタフェイス基板27に供給される直流電圧を生成する第二電源部SDと、主制御部21と払出制御部24に供給される直流電圧を生成する第一電源部FRと、電源投入と電源遮断とを監視する電源監視部MNTと、過大な交流電圧を受けるとグランドラインを遮断する電源遮断部CUTと、を有して構成されている。なお、払出制御部24に供給される他の直流電圧(DC32V)や、演出インタフェイス基板27に供給される他の直流電圧(DC32V,DC15V)については、図示を省略している。
<第二電源部SD>
第二電源部SDは、ダイオードD1〜D4による全波整流回路と、平滑コンデンサC1と、直流電圧VB(12V)を生成するDC−DCコンバータと、直流電圧Vcc(5V)を生成するDC−DCコンバータと、平滑コンデンサC2,C3とを有して構成されている。2つのDC−DCコンバータは、何れもチョッパ型であり、平滑コンデンサC1を共通的に受けて動作している。第二電源部SDで生成された直流電圧は、演出インタフェイス基板27に伝送された後、適宜に降圧されて、演出インタフェイス基板27と、演出制御基板22と、画像制御基板23とで使用される。
<第一電源部FR>
第一電源部FRは、ダイオードD1,D2,D5,D6による全波整流回路と、平滑コンデンサC4と、直流電圧VB(12V)を生成するDC−DCコンバータと、直流電圧Vcc(5V)を生成するDC−DCコンバータと、平滑コンデンサC5,C6と、ダイオードD7及びコンデンサCbとで構成された蓄電部BKとを有して構成されている。この2つのDC−DCコンバータも、チョッパ型であり、平滑コンデンサC4を共通的に受けて動作している。また、蓄電部BKで生成された直流電圧は、主制御部21と払出制御部24のワンチップマイコンの内蔵RAMのデータを保持するバックアップ電源BAKとなる。
第一電源部FRで生成された直流電圧VBと直流電圧Vccは、主制御部21と払出制御部24だけに供給されており、演出インタフェイス基板27に伝送される直流電圧とは配線上で区別されている。そのため、主制御部21や払出制御部24が、他のサブ制御部22,23と電源ラインを経由して接続されることがなく、高周波ノイズなどの伝送が阻止される。
なお、主制御部21や払出制御部24での総電流は、最大でも、電源電圧VBラインで600mAを超えることがなく、また、電源電圧Vccラインでも300mAを超えることがないので、各電源電圧VB,Vccの給電ラインの電圧降下は、全く問題にならない。
<電源遮断部CUT>
電源遮断部CUTは、交流電圧AC24Vから所定レベルの直流電圧を生成する整流部51と、交流電源ラインLN1,LN2の過電圧時にON動作する交流監視部52と、交流監視部52のON動作に対応してOFF動作するスイッチ回路53と、を有して構成されている。
整流部51は、交流電源ラインLN2から交流電圧を受けるダイオードD12と、電流制限抵抗R1と、コンデンサC8及びツェナーダイオードZD2の並列回路と、が直列に接続されて構成されている。そして、正常時には、コンデンサC8の両端電圧は、ツェナーダイオードZD2の降伏電圧に一定化されている。
スイッチ回路53は、大電流容量のMOSトランジスタQ2と、コンデンサC8に並列接続されたバイアス抵抗R5と、を有して構成されている。ここで、トランジスタQ2は、コンデンサC8の両端電圧が所定レベルである限り、ON状態であって、遊技機の全回路のグランドラインとフレームグランドFGとを接続状態にしている。
交流監視部52は、交流電源ラインLN1,LN2に接続された2つのダイオードD8,D9と、ダイオードD8,D9の接続点に接続されたツェナーダイオードZD1と、バイアス抵抗R2,R3及びコンデンサC7の並列回路と、バイアス抵抗R3の両端電圧が上昇するとON動作するトランジスタQ1と、トランジスタQ1の電流制限抵抗R4とを有して構成されている。
ツェナーダイオードZD1は、通常は、OFF状態であるが、交流電源ラインLN1,LN2に過大な交流電圧(例えばAC100V)が加わると、降伏状態となる。この降伏状態では、バイアス抵抗R3の両端電圧が上昇してトランジスタQ1がON動作することでコンデンサC8の両端電圧が降下する。
すると、それまでON状態であったトランジスタQ2がOFF遷移することで、回路グランドとフレームグランドFGとが非接続となって、全ての遊技機の全ての電源電圧が遮断状態となる。電源遮断部CUTの動作内容は、以上の通りであり、交流電源ラインLN1,LN2の両端電圧が限界値を超えると、全ての遊技機の全ての電源電圧を一気に遮断する機能を果たしている。
<電源監視部MNT>
次に、電源監視部MNTについて説明する。電源監視部MNTは、交流電源ラインLN1,LN2の電圧レベルを監視する給電監視部54と、電源電圧Vccを受けて比較基準電圧Voを出力する比較電圧部55と、給電監視部54と比較電圧部55の出力電圧を対比して電源異常を検出する異常検出部56と、システムリセット信号SYSを生成する電源リセット部57と、を有して構成されている。
[給電監視部54]
給電監視部54は、交流電源ラインLN1,LN2に接続された2つのダイオードD10,D11と、ダイオードD10,D11の接続点に接続された抵抗R6及びツェナーダイオードZD3の直列回路と、ツェナーダイオードZD3に並列接続されたダイオードD13及び平滑コンデンサC9の直列回路と、平滑コンデンサC9に並列接続された抵抗R7,R8の直列回路と、抵抗R8を短絡させるコンパレータA3と、を有して構成されている。
この実施例では、ツェナーダイオードZD3の降伏電圧が5.1V程度であり、ツェナーダイオードZD3は、電流制限抵抗R6を通して、交流電圧AC24Vを受けている。そのため、交流入力電源の給電状態であれば、平滑コンデンサC9の両端電圧は、4.5V程度の一定値となる。また、2つの抵抗R7,R8は、その抵抗値がR8>>R7に設定されているので、抵抗R8の両端電圧Vsは、正常レベルの交流電圧AC24Vに対応して約4.5Vとなる。但し、コンパレータA3の出力がLレベルであると、これに対応して、抵抗R8の両端電圧Vsは、ほぼ0Vとなる。なお、抵抗R7は、Lレベル出力時のコンパレータA3に対する電流制限抵抗として機能する。
コンパレータA3は、他のコンパレータA1〜A4と共に、QUADコンパレータ(NJM2901)で構成されている。このQUADコンパレータには、4つのコンパレータA1〜A4が内蔵されているが、何れのコンパレータA1〜A4も、オープンコレクタタイプとなっている(図6(i)参照)。
そして、コンパレータA3のマイナス端子には、比較電圧部55の出力電圧Voが供給され、プラス端子には、定常状態では2.8V程度の比較電圧V1が供給されている。この比較電圧V1は、第一電源部FRが生成した二種類の電源電圧Vcc,VBを抵抗で分圧して生成されている。
後述するように、電源投入時には、比較電圧部55の出力電圧Voは、レベル上昇中の電源電圧Vccに対応したレベルとなる(Vo=Vcc−Vf−Δ)。なお、VfとΔは、ダイオードD14,D15と、抵抗R9における電圧降下である。
一方、比較電圧V1は、電源電圧Vcc,VBを分圧して生成されるので、電源投入直後は、比較電圧部55の出力電圧Voより低い。そのため、電源投入直後の過渡状態では、コンパレータA3の出力がLレベルとなって抵抗R8を短絡させ、その結果、給電監視部54の出力電圧Vsがほぼ0Vとなる。
一方、電源電圧Vcc,VBが所定レベルに達した定常状態では、比較電圧V1が、2.8V程度となる一方、比較電圧部55の出力電圧Voは2.5V程度に一定化される。つまり、コンパレータA3は、[プラス入力への入力電圧]>[マイナス端子への入力電圧]の大小関係となるが、コンパレータA3の出力部がオープンコレクタであり(図6(i)参照)、図4に示す通り、その出力端子がプルアップされていないので、コンパレータA3の出力部は開放状態となって他の回路に影響を与えない。
以上説明した給電監視部54の動作を整理すると以下の通りである。
(1)交流電圧AC24Vが投入された電源投入直後は、抵抗R8がコンパレータA3の出力部によって短絡されるので、抵抗R8の両端電圧Vsがほぼ0Vとなる。
(2)その後、電源電圧Vccが正常レベル近くまで増加すると、コンパレータA3の出力部が開放状態となるので、抵抗R8の両端電圧Vsは、ツェナーダイオードZD3の両端電圧に対応してほぼ4.5Vとなる。
(3)交流電圧AC24Vが遮断状態となると、抵抗R8の両端電圧Vsは、素早く0Vまで降下する。しかし、交流電圧AC24Vが遮断されても、しばらくは、電源電圧Vcc,VBが所定レベルを維持するので、コンパレータA3の出力部は、そのまま開放状態を維持する。
[比較電圧部55]
比較電圧部55は、第一電源部FRと第二電源部SDとで別々に生成された2つの電源電圧Vcc,Vccを各アノード端子に受けるダイオードD14,D15と、ダイオードD14,D15の各カソード端子に接続される電流制限抵抗R9と、電圧生成部GNと、が直列に接続されて構成されている。この実施例では、電圧生成部GNとして、シャントレギュレータ(HA17431:RENESAS)を使用している。
このシャントレギュレータは、アノード端子Aとカソード端子Kと比較端子REFとを有するが、アノード端子Aとカソード端子Kとを接続した図示の状態では、ツェナーダイオードと同等に機能して、降伏動作時には、アノード・カソード端子間に一定の基準電圧Vo(2.5V)を出力する(図6(h)参照)。一方、非降伏動作時には、内部回路がOFF動作して、アノード・カソード端子間が開放状態となる。
したがって、電源投入時、電源電圧Vccが所定レベルに達するまでは、比較電圧部55(電圧生成部GN)の出力電圧Voは、レベル上昇中の電源電圧Vccに対応して、Vo=Vcc−Vf−Δとなる。一方、電源電圧Vccが所定レベルに達すると、比較電圧部55の出力電圧Voは、一定の比較基準電圧(2.5V)となる。
[異常検出部56]
異常検出部56は、主制御部21への電源異常信号ABN1を生成するコンパレータA1と、払出制御部24への電源異常信号ABN2を生成するコンパレータA2と、各コンパレータA1,A2のプルアップ抵抗R10,R11と、各コンパレータA1,A2の入力端子間に接続されたコンデンサCsとを有して構成されている。各コンパレータA1,A2のマイナス端子には、比較電圧部55の出力電圧Voが供給され、プラス端子には、抵抗R8の両端電圧Vsが供給されている。なお、コンパレータA1,A2は、先に説明したQUADコンパレータ(NJM2901)に内蔵されている。
図示を省略しているが、コンパレータA1,A2から出力される電源異常信号ABN1、ABN2は、主制御部21と払出制御部24の入力ポートに供給されている。そして、各入力ポートの入力端子とグランド間には、適宜なコンデンサを接続されており、各入力ポートが、適宜な抵抗を経由して電源異常信号を受けることで耐ノイズ性を確保している。また、適宜なソフトウェア処理(図8のST34〜ST35)によって、スパイクノイズの影響を排除している。
給電監視部54が前記した(1)〜(3)の通りに動作するので、これに対応して異常検出部56は、以下の通りに動作する。
(1)交流電圧AC24Vが投入された電源投入直後は、抵抗R8の両端電圧Vsがほぼ0Vであり、一方、比較電圧部55の出力電圧Voは、レベル上昇中の電源電圧Vccに対応して、Vcc−Vf−Δとなる。そのため、コンパレータA1,A2が出力する電源異常信号ABN1,ABN2は、レベル変動することなく、Lレベルを安定的に維持する。図6(c)のタイミングT0〜T1は、この電源投入時の安定したLレベル状態を示している。
(2)その後、レベル上昇中の電源電圧Vccが所定レベルを超えた後は、比較電圧部55の出力電圧Voは、2.5Vを維持する。また、電源電圧Vccが正常レベル近くまで増加すると、コンパレータA3の出力部が開放状態となるので、抵抗R8の両端電圧Vsは、ツェナーダイオードZD3の両端電圧に対応してほぼ4.5Vとなる。
そのため、コンパレータA1,A2が出力する電源異常信号ABN1,ABN2がHレベルに遷移して、その後は、正常状態を示すHレベルを定常的に維持する。図6(c)のタイミングT1以降は、正常レベルの電源異常信号ABN1,ABN2を示している。
(3)その後、何らかの理由で交流電圧AC24Vが遮断状態となると、抵抗R8の両端電圧Vsは、素早く0Vまで降下する。しかし、電源電圧Vcc,VBは、しばらく所定レベルを維持するので、コンパレータA3や比較電圧部55は、それまでの動作を維持する。
したがって、図6(a)のタイミングT7において、交流電圧AC24Vが遮断状態になると、コンパレータA1,A2が出力する電源異常信号ABN1,ABN2は、直ちに、HレベルからLレベルに遷移して異常事態の発生を示す。なお、主制御部21と払出制御部24では、この電源異常信号ABN1,ABN2を定時的にチェックしており、電源異常信号ABN1,ABN2がLレベルに遷移したことを確認すると、直ちにバックアップ処理を開始するようになっている。
[電源リセット部57]
次に、コンパレータA4で構成された電源リセット部57について説明する。図示の通り、コンパレータA4の出力端子には、プルアップ抵抗R12が接続され、出力端子とプラス端子との間には、抵抗RfとコンデンサCfの直列回路が接続されている。また、コンパレータA4のマイナス端子には、比較電圧部55の出力電圧Voが供給され、プラス端子には、定常状態では2.95V程度の比較電圧V2が供給されている。この比較電圧V2は、第二電源部SDが生成した二種類の電源電圧Vcc,VBを抵抗で分圧して生成されている。
電源リセット部57は、上記の通りに構成されているので、以下の通りに動作する。
(1)交流電圧AC24Vが投入された電源投入直後は、比較電圧部55の出力電圧Voは、レベル上昇中の電源電圧Vccに対応して、Vcc−Vf−Δとなる。一方、比較電圧V2は、第二電源部SDの電源電圧Vcc,VBを分圧して生成されるので、レベル上昇中の出力電圧Voより低い。そのため、このような過渡状態では、コンパレータA4から出力されるシステムリセット信号SYSがLレベルとなる(図6(a)参照)。
(2)その後、レベル上昇中の電源電圧Vccが所定レベルに達した後は、比較電圧部55の出力電圧Voは、2.5Vを維持する。また、電源電圧Vcc,VBが正常レベル近くまで増加すると、比較電圧V2が定常値2.95Vに近づく。そのため、コンパレータA4から出力されるシステムリセット信号SYSは、適宜なタイミングで、LレベルからHレベルに遷移する。
このようにして生成されたシステムリセット信号SYSは、演出インタフェイス基板27を経由して、演出制御部22と画像制御部23に伝送されるが、各制御部22,制御部23に設けられた遅延回路を経由してCPUやその他のICを電源リセットしている。なお、抵抗RfとコンデンサCfの直列回路も、遷移動作を遅延させる機能を発揮する。
図5(a)は、主制御部21と払出制御部24に配置されたリセット回路RSTを示す回路図である。この実施例では、電源電圧監視用IC1(MB3771富士通マイクロエレクトロニクス)と、ウォッチドッグタイマ機能付き電源電圧監視用IC2(MB3773富士通マイクロエレクトロニクス)とを活用してリセット回路RSTを構成している。
図5(b)の等価回路を示す通り、電源電圧監視用IC1は、2つのコンパレータCompA,CompBを内蔵して構成されている。そして、2つのコンパレータCompA,CompBのプラス端子は、内蔵回路によって1.24V程度に設定される。
また、実施例の回路構成では、Vsa端子がコンデンサC11を経由してグランドに接続されているので、コンパレータCompAのマイナス端子の電位は、内蔵された抵抗で分圧されて1.4V程度となる。一方、Vsb端子には、外付けの分圧抵抗R20、R21によって電源電圧VBが分圧して供給されているので、Vsb端子の電位は、VB*R21/(R20+R21)である。なお、抵抗R21には、電圧安定用のコンデンサC12が並列接続されている。また、Ct端子には遅延コンデンサC10が接続されている。
電源電圧監視用IC1は、図5(b)の内部回路を有しているので、電源投入後、電源電圧Vccが所定レベルまで上昇すると(図6(d)のタイミングT2参照)、内蔵された定電流源によって、遅延コンデンサC10の充電が開始される。そして、遅延コンデンサC10が所定レベルまで充電されるまでの間は(図6(e)のT3参照)、リセット端子から出力される基礎リセット信号RS1がLレベルに維持される。なお、このリセットホールド時間Tpo[S]は、外付けコンデンサC10の容量に対応してTpo[S]=105*C10[F]となっている。
このようにして、タイミングT3でHレベルとなった基礎リセット信号RS1は、電源電圧Vcc,VBが降下しない限り、そのレベルを維持する。しかし、Vsb端子の電位は、VB*R21/(R20+R21)であって、このVsb端子において電源電圧VBのレベルを監視している。同様に、Vsa端子の電位は、内蔵抵抗40kΩ、100kΩに対応して、Vcc*40/(40+1001)であって、このVsa端子において電源電圧Vccのレベルを監視している。
そのため、交流入力AC24Vの遮断や、電源部FR,SDの故障などによって、電源電圧Vcc,VBの双方又は一方の電圧レベルが降下すると(図6(d)のタイミングT8参照)、内蔵コンパレータCompA,CompBのいずれかの出力端子がHレベルに遷移する。すると、内蔵されたフリップフロップがセットされて、リセット端子から出力される基礎リセット信号RS1が、直ちにLレベルに降下する(図6(e)のタイミングT8参照)。
ところで、本実施例では、Vsa端子とグランド間には、コンデンサC11が接続され、Vsb端子とグランド間には、コンデンサC12が接続されている。図5(b)の等価回路から明らかな通り、これらのコンデンサC11,C12は、内部回路の動作を遅延させる機能を果しており、電源電圧Vcc,VBが短時間だけ、例えば4V以下に低下して回復する瞬低状態や瞬断状態では、基礎リセット信号RS1が出力されることはない。
本実施例では、Cll=C12=1000pF程度に設定されており、これに対応して、直流電圧(5V,12V)のレベル降下が、40μS以内に回復する瞬断状態や瞬低状態では、電源電圧監視用IC1が反応しないよう構成されている。したがって、電源基板20から供給される電源電圧Vcc,VBの給電ラインの何れかに、パルス幅40μS以内のスパイクノイズが重畳しても、基礎リセット信号RS1が異常に出力されることはない。
上記の通りに動作する電源電圧監視用IC1に対応して、基礎リセット信号RS1は、2つのNOTゲートG1,G2を経由して、I/Oリセット信号として主制御部21や払出制御部24に搭載されたデータ入出力用ICのリセット端子に供給される。好ましくは、ラッチ機能を有するデータ入出力用ICに基礎リセット信号(I/Oリセット信号)RS1が供給される。そのため、電源投入時にランダムにラッチされたデータ入出力用IC(例えば、SN74273、SN74LV8155など)のデータが、基礎リセット信号RS1によって確実にクリアされる。
またNOTゲートG1を経由した基礎リセット信号RS1バーは、ウォッチドッグタイマ機能付き電源電圧監視用IC2に供給されている。図示の通り、電源電圧監視用IC2は、CPUリセット信号RS2を出力するが、電源電圧監視用IC2のCt端子には、遅延コンデンサC15が接続され、CK端子には、ワンチップマイコンからクリアパルスが供給されるよう構成されている。
また、電源電圧監視用IC2のVs端子は、コンデンサC14を経由してグランドに接続され、コンデンサC14には、トランジスタQ3のコレクタ端子とエミッタ端子とが並列接続されている。そして、トランジスタQ3のベース端子には、バイアス抵抗R23,R24によって分圧された基礎リセット信号RS1バーが供給されている。
コンテンサC14は、内部回路の動作を遅延させる遅延素子である。電源電圧監視用IC1の場合と同様、コンデンサC14の静電容量を適宜に設定することで、電源電圧Vccの瞬断状態や瞬低状態では、電源電圧監視用IC2が反応しないよう構成することができる。
電源電圧監視用IC2は、図5(c)の内部回路を有しており、Vs端子が開放状態であれば、Vs端子の電位は、内蔵抵抗によって1.4V程度に設定されている。また、このVs端子は、内蔵されたコンパレータCompSのマイナス端子に接続され、コンパレータCompSのプラス端子には、内蔵回路によって1.24V程度の電圧が供給されている。
以下、電源電圧監視用IC2の動作を説明すると、電源投入後、タイミングT3(図6(f)参照)に至るまでの期間は、基礎リセット信号RS1バーがHレベルであるので、トランジスタQ3がON状態である。そのため、電源電圧監視用IC2のVs端子の電位が0Vであって、コンパレータCompSの出力がHレベルとなる。
ところが、タイミングT3において、基礎リセット信号RS1バーがLレベルに遷移してトランジスタQ3がOFF状態となると、コンパレータCompSの出力がLレベルに遷移することで、内蔵されたフリップフロップがリセット状態となり、遅延コンデンサC15への充電動作が開始される。そして、遅延コンデンサC15が所定レベルまで充電された後(図6(g)のタイミングT4参照)、CPUリセット信号RS2がLレベルからHレベルに遷移する。
CPUリセット信号RS2がLレベルの間は、ワンチップマイコンのリセット端子がLレベルに維持されるので、CPUコアその他は確実にリセット状態となる。なお、リセットホールド時間Tpr[mS]は、外付けコンデンサC15の容量に対応して、Tpr[mS]=1000*C15[μF]となっている。
この電源電圧監視用IC2では、CPUリセット信号RS2がHレベルに遷移して、ワンチップマイコンが動作開始するタイミングに合わせ、電源電圧監視用IC2に内蔵されたウォッチドッグタイマ回路が動作を開始するよう構成されている。
そのため、その後は、ウォッチドッグタイマ機能が発揮される。具体的に確認すると、ワンチップマイコンの動作開始に合わせて、電源電圧監視用IC2では、遅延コンデンサC15の放電動作が開始され、ワンチップマイコンがクリアパルスを供給する毎に、遅延コンデンサC15の放電動作が充電動作に切り替わる。
しかし、プログラム暴走などのトラブルが発生すると(図6(g)のタイミングT5参照)、遅延コンデンサC15の放電動作が継続されることになり、Ct端子の電位が0.4V程度まで降下すると、CPUリセット信号RS2が強制的にLレベルに遷移される。その後、CPUリセット信号RS2は、Lレベルに維持されるが、所定の維持時間Twrの経過後、CPUリセット信号RS2がHレベルに復帰すると、CPUは、電源投入状態と同様の初期処理プログラムの実行を開始する。なお、継続時間Twr[mS]は、遅延コンデンサC15の容量に対応して、Twr[mS]=20*C15[μF]となっている。
次に、電源遮断時における電源電圧監視用IC2の動作を説明する。電源電圧Vccが所定レベル(4.2V)まで降下すると、CPUリセット信号RS2がLレベルに遷移する(図6(g)のタイミングT8)。そして、その後は、ウォッチドッグタイマ回路の動作が禁止される。
ところで、本実施例では、ワンチップマイコンに内蔵されたウォッチドッグタイマ回路を活用せず、あえて、外付けの専用IC2を使用している。それは、CPUが暴走するような異常時には、ワンチップマイコンの内蔵回路にも、何らかの異常が発生している可能性を否定できないため、万全の安全対策を採ったことによる。
また、本実施例では、電源電圧監視用IC1と電源電圧監視用IC2とを重複して配置し、電源電圧監視用IC2から出力される電源リセット信号(CPUリセット信号)RS2を、ワンチップマイコンだけに供給し、電源電圧監視用IC1から出力される電源リセット信号(基礎リセット信号)RS1を、ワンチップマイコン以外のデータ入出力用ICや乱数生成回路に供給している。また、電源電圧監視用IC2のウォッチドッグタイマ機能によって生成されたCPUリセット信号RS2は、ワンチップマイコンだけに供給されているが、このような構成を採る理由は以下の通りである。
先ず、本実施例の弾球遊技機は、電源バックアップ機能を有しているので、電源投入時に、電源遮断前(前日や停電前)の遊技を再開することもある。そのため、電源投入時には、特に、ラッチ機能を有するデータ入出力用ICを確実にリセット状態にする必要がある。但し、リセットホールド時間は、短くて足りるので、電源電圧監視用IC1を利用して電源リセット信号(基礎リセット信号)RS1を生成している。
一方、ワンチップマイコンについては、電源電圧Vcc,VBが安定した後、十分なリセットホールド時間が必要である。また、前記した理由から、ウォッチドッグタイマ回路を外付けするのが好ましく、このウォッチドッグタイマによるCPUリセット信号RS2についても、所望のリセットホールド時間が必要となる。そこで、本実施例では、電源電圧監視用IC1と電源電圧監視用IC2とを直列的に接続して、最適なリセットホールド時間(=Tpo+Tpr)を有する電源リセット信号(CPUリセット信号)RS2を生成すると共に、電源電圧監視用IC2を利用して、異常発生時のCPUリセット信号RS2を生成している。リセットホールド時間は、CPUリセット後の初期処理時間なども考慮して、主制御部20と払出制御部24とで各々最適値に設定される。したがって、例えば、払出制御部24の初期処理動作中に、制御コマンドが送信されることはない。もっとも、初期処理時間において、主制御部20の方が、払出制御部より明らかに長い場合には、リセットホールド時間を同一に設定したので足りる。
なお、プログラム暴走などによる異常発生時には、基礎リセット信号RS1が発生されることはないので、データ入出力用ICはリセットされない。しかし、電源投入時とは異なり、異常リセット時に、データ入出力用ICにランダムなデータがラッチされることはなく、また、異常リセット時には、RAMクリア処理が実行され、遊技動作が再開されることはないので、データ入出力用ICをリセットしないことに何の問題も生じない。
一方、電源電庄(VB,Vccc)の瞬断状態が短時間とはいうものの、コンデンサCll,C12で吸収できない程度に継続した場合には、電源電圧監視用1Clから、短いパルス幅の基礎リセット信号RSlが出力される。そして、この基礎リセット信号RS1は、トランジスタQ3を短時間だけON動作させる。しかし、トランジスタQ3のON抵抗を適宜な値に設定すると共に、トランジスタQ3に並列接続されるコンデンサC14を適度な静電容量に設定することで、CPUリセット信号RS2の出力を回避することもできる。
このような場合、データ入出力用ICだけがリセットされることになるが、このリセット動作は、特に、図柄始動口などのスイッチ信号を生成するために使用される電源電圧VB(12V)が、瞬低状態に陥った場合に、データ入出力用ICだけがクリアされる点で効果的である。
図7は、主制御部21のワンチップマイコン21Aと、乱数生成回路との接続関係を示す回路図である。この乱数生成回路は、図柄始動口15への遊技球の入賞に基づいて実行される大当り抽選処理(図11のST27)で使用される乱数値RNDを生成する回路である。
図7に示す通り、乱数生成回路は、周波数8MHz程度の計数クロックΦを生成する発振回路40と、図柄始動口15への遊技球入賞を示す入賞スイッチ信号Honを保持する保持回路41と、2つの8ビットカウンタCNT1,CNT2をカスケード接続してなるカウンタ回路42と、電源遮断時にランダム情報D1〜D3を取得して電源遮断後も維持する記憶回路43と、電源投入時にランダムな始動充電動作を実現する始動回路44と、を中心に構成されている。
カウンタ回路42は、ワンチップマイコン21Aのデータバスに接続されており、16ビット長の乱数値RNDが、8ビット毎に取得されるようになっている。また、ワンチップマイコン21Aには、入力ポートP1,P2が接続されており、入賞スイッチ信号Hon、電源異常信号ABN1、及びRAMクリア信号CLRなどが適宜なタイミングで取得可能に構成されている。
<保持回路41>
保持回路41は、2つのD型フリップフロップFF1,FF2が直列接続されて構成され、各クロック端子CLKには、発振回路40の計数クロックΦが供給されている。D型フリップフロップは、特に限定されないが、この実施例では、SN74HC74(TI社)を使用しており、計数クロックΦの立上りエッジで、D入力端子のデータがQ出力端子に出力される。したがって、図8(a)〜図8(d)に示す通り、遊技動作に対応して発生する入賞スイッチ信号Honは、フリップフロップFF1において、計数クロックΦに同期してパルス幅が調整された上で(Hon’)、更に計数クロックの1クロック分だけ遅延して(Hon”)、フリップフロップFF2から出力される。
また、2つのフリップフロップFF1,FF2のクリア端子CLRには、電源電圧監視用IC1から出力される電源リセット信号(基礎リセット信号)RS1が供給されており、他のデータ入出力用ICと共に電源リセットされる。なお、電源リセット信号RS1は、2つの8ビットカウンタCNT1,CNT2のクリア端子CCLRにも供給されており、同じタイミングで電源リセットされる。
先に説明した通り、本実施例では、電源リセット信号を主制御部21や払出制御部24で生成し、他の回路基板から供給を受ける構成を採らない。そのため、違法遊技者は、乱数生成回路のリセットタイミングを正確に把握することができず、防犯上も有効である。この構成とは逆に、例えば、電源基板20から電源リセット信号を受ける構成を採ると、電源基板20との接続コネクタに違法基板を介在させることで、違法基板で乱数生成回路のリセットタイミングを正確に把握することができ、大当りタイミングを正確に予測することが可能となる。
<カウンタ回路42>
本実施例のカウンタ回路42は、2つのSN74HC590A(8-BIT BINARY COUNTERS WITH 3-STATE OUTPUT REGISTERS:TI社)CNT1,CNT2で構成されている。図9に等価回路を示す通り、各8ビットカウンタには、28進カウンタCTと、8ビットラッチLaと、8ビットの出力レジスタRoとが内蔵されている。そして、クロック端子CCLKに供給される計数クロックの立上りエッジで、28進カウンタCTのカウンタ値が更新される。
この実施例では、第1カウンタCNT1のクロック端子CCLKには、計数クロックΦを位相反転させた計数クロックΦバーが供給され、内部28進カウンタCTの桁上り信号(ripple carry)RCOは、第2カウンタCNT2のクロック端子CCLKに供給されている。そのため、本実施例のカウンタ回路42は、全体として、216進カウンタとして機能して、0000H〜FFFFHの数値範囲(Hは16進数を示す)で循環している。
但し、各カウンタCNT1,CNT2の動作禁止端子CCKENの電圧がHレベルであると、計数動作が禁止され、クロック端子CCLKの電圧変化に拘らず、216進カウンタCTのカウンタ値が変化しない。図8(f)と図8(g)は、この関係を示しており、動作禁止端子CCKENの電圧がHレベルである区間は、計数クロックΦバーの供給に拘らず、カウンタ値がN+1のままで変化しないことを示している。
また、28進カウンタCTのカウンタ値は、ラッチクロック端子RCLKのラッチ信号の立上りエッジで、8ビットラッチLaに保持され、8ビットラッチLaの出力値は、制御端子OEの制御信号がLレベルであることを条件に、出力レジスタRoから出力される。なお、制御端子OEの制御信号がHレベルであると、出力レジスタRoの出力端子は、ハイインピーダンス状態(HiZ)となる。
本実施例では、第1カウンタCNT1と第1カウンタCNT2の各ラッチクロック端子RCLKに、フリップフロップFF2の出力(Hon”)が供給されている。そのため、入賞スイッチ信号Hon”の立上りエッジで、2つの28進カウンタCTのカウンタ値が、2つの8ビットラッチLaに各々保持される。図8(d)と、図8(g)は、その関係を図示したものであり、M−1からインクリメントされたカウンタ値(16ビット長)Mが、D型フリップフロップFF2の出力Hon”の立上りエッジで、第1カウンタCNT1と第2カウンタCNT2の8ビットラッチLaに取得されることを示している。
本発明では、ランダムなタイミングでON状態となる入賞スイッチ信号Honを、計数クロックΦに同期させて波形整形する一方で、計数クロックΦを位相反転させた計数クロックΦバーに同期して216進カウンタを更新している。そのため、各28進カウンタCTのカウンタ値が、各8ビットラッチLaにラッチされるタイミングでは、カウンタの更新動作が確実に完了しており、例えば、M−1→Mへの更新途中の不安定なカウンタ値がラッチされるおそれがない。なお、計数クロックΦに同期してカウンタを更新したのでは、更新途中の不合理なカウンタ値をラッチしてしまうおそれがある。
<記憶回路43>
記憶回路43は、トランジスタQ5とエミッタ抵抗R30によるエミッタホロワー回路と、エミッタホロワー回路の出力を受けるNOTゲートG6と、5つのD型フリップフロップFF3〜FF7とを中心に構成されている。ここで、トランジスタQ5のベース端子に電源異常信号ABN1が供給され、NOTゲートG6は、終端抵抗R31でプルダウンされている。また、この実施例では、D型フリップフロップFF3〜FF7として、SN74HC74(TI社)を使用している。
3つのフリップフロップFF3〜FF5は、クロック端子CLKの信号の立上りエッジに同期して、D入力端子のデータを保持するラッチ回路として機能している。一方、他の2つのフリップフロップFF6〜FF7は、そのQバー出力端子が、D入力端子に接続されており、クロック端子の信号の立上りエッジに同期して、Q出力が反転するT型フリップフロップとして機能している。
そして、フリップフロップFF6のクロック端子CLKには、第1カウンタCNT1の桁上り信号(ripple carry)RCO1が供給され、フリップフロップFF7のクロック端子CLKには、第2カウンタCNT1の桁上り信号(ripple carry)RCO2が供給されている。
ここで、桁上り信号RCO1は、256個目の計数クロックΦバーがカウンタ回路42に供給される毎に出力され、桁上り信号RCO2は、256*256個目の計数クロックΦバーがカウンタ回路42に供給される毎に出力される(図9参照)。一方、フリップフロップFF6,FF7は、各々、桁上り信号RCO1,RCO2を受けてトグル動作を実行する。そのため、フリップフロップFF6のQ出力は、256個の計数クロックΦバーを受ける間はLレベルを維持し、次の256個の計数クロックΦバーを受ける間はHレベルを維持する。同様に、フリップフロップFF7のQ出力は、256*256個の計数クロックΦバーを受ける間はLレベルを維持し、次の256*256個の計数クロックΦバーを受ける間はHレベルを維持する。
次に、D型フリップフロップFF3〜FF5について説明する。図示の通り、フリップフロップFF3〜FF5のクロック端子CLKには、NOTゲートG6の出力が共通的に供給されている。また、フリップフロップFF3のD入力端子は、終端抵抗R32でプルダウンされた状態で、計数クロックΦバーを受けている。一方、フリップフロップFF4,FF5のD入力端子は、終端抵抗R33,R34でプルダウンされた状態で、フリップフロップFF6,FF7のQ出力を受けている。
本実施例では、フリップフロップFF3〜FF5のクリア端子CLRと電源端子Vccには、各々、バックアップ電源BAKが供給されている。そのため、フリップフロップFF3〜FF5については、電源遮断後も引き続き正常にラッチ機能を維持し、また、電源復帰時にQ出力がクリアされることもない。なお、フリップフロップFF3〜FF5のクロック端子CLKとD入力端子は、各々、抵抗R31〜R34を経由してプルダウンされているので、電源遮断時や電源復帰時に、各フリップフロップFF3〜FF5が異常動作することもない。
図6に関して説明した通り、交流電源がOFF状態となるタイミング(T7)では、直流電圧Vccは正常値を維持した状態で、電源異常信号ABN1だけが素早くLレベルに降下する。すると、これに対応して、NOTゲートG6の出力が立上るので、3つのフリップフロップFF3〜FF5は、各々、そのタイミングにおける、計数クロックΦバー(D1)、フリップフロップFF6のQ出力(D2)、及び、フリップフロップFF7のQ出力(D3)を取得して記憶する。
ここで、計数クロックΦのディーティ比が50%であり、周波数が8MHzであると仮定すると、計数クロックΦバーの電圧レベルD1は、1/(2*8*106)[秒]の均一時間幅で、LレベルとHレベルとを繰り返す。また、この場合、フリップフロップFF6のQ出力D2は、256/(8*106)[秒]の均一時間幅で、LレベルとHレベルとを繰り返し、フリップフロップFF7のQ出力D3は、256*256/(8*106)[秒]の均一時間幅で、LレベルとHレベルとを繰り返す。
そのため、3ビットのデータD3〜D1(ランダム情報D3〜D1)を、ある程度長い時間幅(例えば、216進カウンタ値が30回循環する0.5秒程度)で評価した場合には、データD3〜D1は1/8の均等確率で、000〜111の何れかの値を採ることになる。そして、このランダムな3ビットデータD3〜D1は、NOTゲートG6の出力の立上りエッジに同期して、各フリップフロップFF3〜FF5に不揮発的に保持される。先に説明した通り、NOTゲートG6の出力は、交流電源がOFF状態となるタイミング(T7)で立上るので、3つのフリップフロップFF3〜FF5は、その瞬間のランダム情報D1〜D3を記憶する。
<始動回路44>
始動回路44は、3ビットデータD1〜D3に対応してON/OFF動作するアナログスイッチAS1〜AS3と、アナログスイッチAS1〜AS3の一方側端子と電源電圧Vccとの間に共通的に接続されるプルアップ抵抗R35と、アナログスイッチAS1〜AS3の他方側端子とグランド間に個々的に接続されるコンデンサC30〜C32と、NチャンネルMOSトランジスタQ6と、トランジスタQ6のドレイン端子と電源電圧Vccとの間に接続される負荷抵抗R36とを有して構成されている。
図示の通り、トランジスタQ6のゲート端子は、アナログスイッチAS1〜AS3の一方側端子に共通的に接続され、ソース端子は、グランドに接続されている。なお、アナログスイッチAS1〜AS3として、単一電源で動作する素子が好適に採用され、例えば、TS5A3159A(TI社)が使用される。このアナログスイッチAS1〜AS3は、制御端子の電圧がHレベルあるとON動作するが、各制御端子には、ランダム情報D1〜D3が供給されている。
3つのコンデンサC30〜C32は、数μF以上のキャパシタンスを有し、各キャパシタンス値は、C31=2*C30、C32=4*C30に設定されている。そのため、アナログスイッチAS1〜AS3がON状態となると、ON状態のアナログスイッチに接続されたコンデンサC30〜C32が互いに並列接続されることになり、これらのコンデンサが、プルアップ抵抗R35を経由して正方向に充電される。
本実施例では、C31=2*C30、C32=4*C30のキャパシタンス値に設定されているので、アナログスイッチAS1〜AS3の制御端子に供給される3ビットのランダム情報D3〜D1に対応して、合成キャパシタンス値が直線的に変化する。具体的には、D3〜D1=000,001,010,011,・・・・111に対応して、合成キャパシタンス値が、0,C30,2*C30,3*C30,・・・7*C30となる。
したがって、プルアップ抵抗R35と合成キャパシタンスとで構成される充電回路の時定数は、3ビッのランダム情報D3〜D1に対応して、0,τ,2τ,3τ,・・・7τのように直線的に変化する。この充電回路は、電源電圧Vccが供給され始める電源投入時に機能し、0〜7τの時定数に対応する充電時間を経て、トランジスタQ6のゲート端子を0ボルトから論理Hレベルの電圧レベルまで増加させる。
そして、トランジスタQ6のゲート端子にHレベルの電圧が供給されると、トランジスタQ6がON状態に遷移することで、ドレイン端子が0レベルとなる。トランジスタQ6のドレイン端子は、カウンタ回路42の動作禁止端子CCKENに接続されているので、トランジスタQ6のドレイン端子が0レベルになった後は、カウンタ回路42の計数動作が許可され、逆に、ドレイン端子が0レベルに降下するまでの電源始動時には、カウンタ回路42の計数動作が禁止される。
この計数動作が禁止される時間は、3ビットのランダム情報D3〜D1に対応してランダムとなるので、不正遊技者が電源投入時からの経過時間に応じて大当り状態のタイミングを知ることはできない。すなわち、電源投入時からの経過時間が同じでも、遊技機毎に、また、営業日毎に、カウンタ回路42の動作禁止端子CCKENがHレベルを維持する動作禁止期間が異なるので、大当りタイミングを狙った不正遊技を成功させることができない。
動作禁止期間は、適宜に設定されるが、例えば、3ビットのランダム情報D3〜D1に対応して、0.1秒、0.2秒、・・・0.7秒程度に設定すればよい。このような設計の場合、ランダム情報の最下位桁D1の相違だけで0.1秒の差が生じ、その0.1秒の間に、216進カウンタ値が6回程度循環するので、不正遊技を確実に防止できると考えられる。しかも、C31、C32、C30として、敢えて、低精度の部品を使用することで、動作禁止期間を更に微妙にランダム化することができる。
続いて、遊技動作を統括的に制御する主制御部21のプログラムの概要を説明する。図10〜図11は、主制御部21の制御プログラムを示すフローチャートである。主制御部21の制御プログラムは、電源電圧の復旧や投入に基づいて起動されるシステムリセット処理(図10)と、所定時間毎(2mS)に起動されるマスク可能なタイマ割込み処理(図11(a))とで構成されている。なお、払出制御部24の動作内容も、システムリセット処理とタイマ割込み処理の基本構成において共通している。
以下、図10を参照しつつ、システムリセット処理プログラム(メイン処理)について説明する。メイン処理が開始されるのは、停電状態からの復旧時のように初期化スイッチSWがOFF状態で電源がON状態になる場合と、遊技ホールの開店時のように、初期化スイッチSWがON操作されて電源がON状態になる場合とがある。なお、制御プログラムが暴走したことにより、電源電圧監視用IC2のウォッチドッグタイマ機能が発揮されてCPUが強制的にリセットされる場合もある。
何れの場合でも、Z80CPUは、最初に自らを割込み禁止状態に設定すると共に(ST1)、割込みモード2に設定する(ST2)。また、CPU内部のスタックポインタSPの値を、スタック領域の最終アドレスに初期設定すると共に(ST3)、ワンチップマイコンの各部を含めて内部レジスタの値を初期設定する(ST4)。
続いて、入力ポートから電源異常信号ABN1を取得し、これが正常レベルに変化するまで、同一の処理を繰返す(ST5〜ST6)。これは、電源遮断時に、図11(b)のST41の処理を終えた後でも、電源電圧Vccが降下し切らない場合もあることを考慮したものである。すなわち、図11(b)の電源監視処理を終えて、無限ループ処理を繰返しているタイミングで、ウォッチドッグタイマ機能が発揮されてCPUがリセットされることがあっても、その後の処理は、ステップST7以降に進むことはない。
このような待機処理(ST5〜ST6)を設けていないと、ステップST5から進行した定常処理によってRAMのデータ(チェックサム演算の基礎データや、ST33で更新されるバックアップフラグBFL)が書き換えられ、しかも、そのデータが電源遮断後も保存されることになる。このような場合、翌日の判定において、バックアップフラグBFL=0となるか、或いは、前日にバックアップされたチェックサム値(ST38)と、翌日の電源投入後に算出するチェックサム値に不一致となるので、せっかくのバックアップ処理(ST37〜ST38)が無駄になる。
また、ステップST5〜ST6の処理は、電源電圧監視用IC2によるウォッチドッグタイマ機能と協働することで、交流入力電圧の給電が一瞬だけ停止される瞬停状態でも有効に機能する。すなわち、図5に関して説明した通り、たとえ瞬停状態であっても、電源異常信号ABN1,ABN2が主制御部21と払出制御部24に供給されるので、図11(b)の電源監視処理が開始されることがある。そして、電源異常信号ABN1,ABN2のパルス幅によっては、ステップST36〜ST40の処理を終えて無限ループ処理に移行する可能性もある。しかし、このような場合であっても、その後ウォッチドッグタイマ機能によってCPUがリセットされ、その後、ステップST5〜ST6の処理を通過することで、それまでの遊技動作を再開することができる。
このような場合も含め、ステップST6の処理において、電源異常信号ABN1が正常レベルであることが確認されたら、続いて、入力ポートP2(図7)からRAMクリア信号CLRを取得する(ST7)。先に説明した通り、RAMクリア信号CLRとは、ワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定する信号であって、係員が操作する初期化スイッチSWのON/OFF状態に対応した値を有している。
次にRAMクリア信号のレベルが判定されるが(ST8)、RAMクリア信号がON状態であったと仮定すると、内蔵RAMの全領域がゼロクリアされる(ST12)。したがって、図11(b)のステップST37の処理でセットされたバックアップフラグBFLの値は、他のチェックサム値などと共にゼロとなる。
次に、RAM領域がゼロクリアされたことを報知するための電源投入コマンドが出力され(ST13)、タイマ割込み動作(図11(a))を起動する割込み信号INTを出力するCTCを初期設定する(ST14)。そして、CPUを割込み禁止状態にセットした状態で(ST15)、各種のカウンタついて更新処理を実行し(ST16)、その後、CPUを割込み許可状態に戻してステップST15に戻る。なお、ステップST16で更新されるカウンタには、外れ図柄用カウンタが含まれているが、この外れ図柄用カウンタは、図11(a)の特別図柄処理(ST27)における大当り抽選処理の結果が外れ状態となった場合に、どのような態様の外れゲームを演出するかを決定するためのカウンタである。
さて、ステップST8の判定処理に戻って説明すると、CPUがウォッチドッグタイマによって強制的にリセットされた場合や、停電状態からの復旧時には、RAMクリア信号はOFF状態である。そして、このような場合には、ステップST8の判定に続いて、バックアップフラグBFLの内容が判定される(ST9)。バックアップフラグBFLとは、図11(b)の電源監視処理の動作が実行されたことを示すデータであり、この実施例では、電源遮断時のステップST37の処理でバックアップフラグBFLが5AHとされ、電源復帰後のステップST33の処理でゼロクリアされる。
電源投入時や、停電状態からの復旧時である場合には、バックアップフラグBFLの内容が5AHの筈である。但し、何らかの理由でプログラムが暴走状態となり、ウォッチドッグタイマによるCPUリセット動作が生じたような場合には、バックアップフラグBFL=00Hである。したがって、BFL≠5AH(通常はBFL=00H)となる場合には、ステップST9からステップST12の処理に移行させて遊技機の動作を初期状態に戻す。
一方、バックアップフラグBFL=5AHであれば、チェックサム値を算出するためのチェックサム演算を実行する(ST10)。ここで、チェックサム演算とは、内蔵RAMのワーク領域を対象とする8ビット加算演算である。そして、チェックサム値が算出されたら、この演算結果を、RAMのSUM番地の記憶値と比較をする(ST11)。
SUM番地には、電圧降下時に実行される電源監視処理(図11(b))において、同じチェックサム演算によるチェックサム値が記憶されている(ST38)。そして、記憶された演算結果は、内蔵RAMの他のデータと共に、バックアップ電源によって維持されている。したがって、本来は、ステップST11の判定によって両者が一致する筈である。
しかし、電源降下時にチェックサム演算(ST38)の実行できなかった場合や、実行できても、その後、メイン処理のチェックサム演算(ST10)の実行時までの間に、ワーク領域のデータが破損している場合もあり、このような場合にはステップST11の判定結果は不一致となる。判定結果の不一致によりデータ破損が検出された場合には、ステップST12の処理に移行させてRAMクリア処理を実行し、遊技機の動作を初期状態に戻す。一方、ステップST9の判定において、チェックサム演算(ST10)によるチェックサム値と、SUM番地の記憶値とが一致する場合には、ステップST14の処理に移行する。
続いて、上記したメイン処理を中断させて、2mS毎に開始されるタイマ割込み処理プログラム(図11(a))を説明する。タイマ割込みが生じると、CPUのレジスタを保存することなく、直ちに電源監視処理が実行される(ST20)。これは、タイマ割込み処理が起動されるタイミングが、ステップST15の直後に固定されているためである。
電源監視処理(ST20)では、電源基板20から供給されている電源異常信号のレベルを判定するが、具体的な処理内容については後述する。電源監視処理(ST20)が終わると、普通図柄処理(ST26)における抽選動作で使用される当り用カウンタRGが更新される(ST21)。なお、特別図柄処理(ST27)における抽選動作で使用される大当り判定用の乱数値RNDは、図7に示す乱数生成回路において高速度(1/8MHzの時間間隔)で自動的に更新されている。
カウンタRGの更新処理(ST21)が終わると、各遊技動作の時間を管理しているタイマについて、タイマ減算処理が行なわれる(ST22)。ここで減算されるタイマは、主として、電動チューリップや大入賞口の開放時間やその他の遊技演出時間を管理するために使用される。
続いて、電源電圧監視用IC2のCK端子にクリアパルスを出力すると共に、図柄始動口15や大入賞口16の入賞検出スイッチを含む各種スイッチ類のON/OFF信号が入力され、ワーク領域にON/OFF信号レベルや、その立上り状態が記憶される(ST23)。なお、遊技球が図柄始動口15に入賞したか否かを示す入賞スイッチ信号Honは、図7に示す入力ポートP1を経由して取得される。次に、エラー管理処理が行われる(ST24)。エラー管理処理は、遊技球の補給が停止したり、遊技球が詰まっていないかなど、機器内部に異常が生じていないかの判定を含んでいる。
続いて、図柄始動口や大入賞口などからの検出信号に基づく管理処理を実行した後(ST25)、普通図柄処理を行う(ST26)。普通図柄処理とは、電動チューリップなど、普通電動役物を作動させるか否かの判定を意味する。具体的には、ステップST23のスイッチ入力処理で、遊技球がゲートを通過していると判定された場合に、乱数更新処理(ST21)で更新された当り用カウンタRGを、当り当選値と対比して行われる。そして、対比結果が当選状態であれば当り中の動作モードに変更する。また、当り中となれば、電動チューリップなど、普通電動役物の作動に向けた処理を行う。
続いて、特別図柄処理を行う(ST27)。特別図柄処理とは、大入賞口16など特別電動役物を作動させるか否かの判定であり、ステップST23のスイッチ入力処理で、図柄始動口に遊技球が入賞したと判定された場合には、乱数生成回路のカウンタ回路42から16ビット長の乱数値RNDを8ビット毎に取得する。図7に示す通り、チップセレクト信号(負論理)CS3に同期して下位8ビットデータが取得され、チップセレクト信号CS4(負論理)に同期して下位8ビットデータが取得される。
そして、取得した乱数値RNDに使用して大当り抽選処理を実行する(ST66)。図示省略しているが、抽選結果が当選状態であれば大当り中の動作モードに変更する。また、大当り中となれば、大入賞口など種特別電動役物の作動に向けた処理を行う。
このような特別図柄処理(ST27)の後、主制御部21で管理するLEDについて点灯動作を進行させると共に(ST28)、電動チューリップや大入賞口などの開閉動作を実現するソレノイド駆動処理を実行した後(ST29)、CPUを割込み許可状態EIに戻してタイマ割込みを終える(ST30)。その結果、割込み処理ルーチンからメイン処理の無限ループ処理(図10)に戻り、ステップST17の処理が実行される。
続いて、図11(b)に示す電源監視処理(ST20)について説明する。電源監視処理(ST20)では、先ず、電源基板20から供給される電源異常信号ABN1を、入力ポートP2(図7)を通して取得し(ST31)、それが異常レベルでないか判定する(ST32)。そして、異常レベルでない場合には、異常回数カウンタとバックアップフラグBFLをゼロクリアして処理を終える(ST33)。
一方、電源異常信号ABN1が異常レベルである場合には、異常回数カウンタをインクリメント(+1)して(ST34)、計数結果が上限値MAXを超えていないかを判定する(ST35)。これは、入力ポートからの取得データが、ノイズなどの影響でビット化けしている可能性があることを考慮したものであり、所定回数(例えば、上限値MAX=2)連続して異常レベルを維持する場合には、交流電源が現に遮断されたと判定する。
このように、本実施例では、電源遮断時にも、直ぐには以降のバックアップ処理を開始せず、動作開始のタイミングが、MAX×2mSだけ遅れる。しかし、(1)電源降下信号は、直流電源電圧の降下ではなく、交流直流電圧の降下を検出すること、(2)直流電源電圧は、大容量のコンデンサによって交流電源の遮断後もしばらくは維持されること、(3)電源監視処理が高速度(2mS毎)で繰り返されること、(4)バックアップ処理が極めてシンプルであり、迅速に終わることから、実質的には何の弊害もない。
ところで、ステップST35の判定の結果、異常回数カウンタの計数値が上限値MAXに一致した場合には、異常回数カウンタをゼロクリアした後(ST36)、バックアップフラグBFLに5AHを設定する(ST37)。次に、メインルーチンのステップST7の場合と、全く同じ演算を、全く同じ作業領域(ワークエリア)に対して実行し、その演算結果を記憶する(ST38)。なお、実行される演算は、典型的には8ビット加算演算である。
そして、その後はワンチップマイコンをRAMアクセス禁止状態に設定すると共に(ST39)、全ての出力ポートの出力データをクリアする(ST40)。以上のバックアップ処理が終われば、CTCに対する設定処理によって割込み信号INTの生成を禁止すると共に、無限ループ処理を繰り返しつつ直流電源電圧が降下するのを待つ(ST41)。なお、このタイミングでは、CPUは、もともと割込み禁止状態であるが(ST30参照)、電源電圧の降下による誤動作の可能性を、可能な限り排除する趣旨から、本実施例では、CTCからの割込み信号INTの出力も禁止している。
ところで、先に説明した通り、ステップST20の処理は、交流電源の遮断後(図6のタイミングT7参照)、2mS以内に迅速に開始され、速やかに終了される。一方、電源電圧Vccが所定レベルまで降下するのは、電源回路などに配置された平滑コンデンサの影響でかなり遅れる(図6のタイミングT8参照)。
そして、電源電圧Vccが所定レベルまで降下しない限り、電源電圧監視用IC2のウォッチドッグタイマは機能し続ける。そのため、ステップST20の処理が開始され、全ての処理が終わった後、無限ループ処理中に、ウォッチドッグタイマによってCPUが異常リセットされる可能性もある。しかし、前記した通り、本実施例では、ステップST5〜ST6の待機処理を設けているので、バックアップ処理が無駄になることはない。なお、ST31→ST32→ST34→ST35→ST36→・・・ST41までの電源監視処理の全処理時間は、クリアパルスの出力周期(2mS)より短く設定されており、電源監視処理を終えるまでにウォッチドッグタイマが起動することはない。
以上、本発明の実施例を具体的に説明したが、具体的な記載内容は何ら本発明を限定するものではなく、各種の改変が可能である。例えば、実施例では、専ら弾球遊技機について説明したが、本発明をスロットマシンなど他の遊技機にも適用できるのは勿論である。
また、図7の回路構成も特に限定されるものではなく、適宜に変更可能である。特に、記憶回路43について、本実施例では、計数クロックΦバーと、2つ桁上げ信号RCOを活用したが何ら限定されない。また、簡易的には、フリップフロップFF6,FF7を設けることなく、計数クロックΦバーや、2つ桁上げ信号RCOを、直接、フリップフロップFF3〜FF5のD入力端子に供給しても良い。
図12(a)は、記憶回路43の第1変形例を例示したものである。ここでは、ワンチップマイコン21Aからカウンタ回路42に供給されるチップセレクト信号CS3を、3つのD型フリップフロップFF3〜FF5のクロック端子CLKに共通的に供給している。なお、チップセレクト信号CS3は、プルアップ抵抗Rpを通してバックアップ電源BAKに接続されている。
また、この第1変形例では、カウンタ回路42の下位3ビットBit0〜Bit3を、フリップフロップFF3〜FF5のD入力端子に供給している。そのため、アクティブレベルとなったチップセレクト信号CS3の立上りエッジで、3ビットデータBit0〜Bit3が、フリップフロップFF3〜FF5に記憶される。なお、チップセレクト信号CS3がHレベルに立上った後は、3ビットデータBit0〜Bit3はHiZ状態である。
チップセレクト信号CS3がアクティブレベル(Lレベル)になるのは、ワンチップマイコン21Aがカウンタ回路42から乱数値RNDを取得する時であるので、この実施例では、取得された乱数値RNDの下位3ビットが、フリップフロップFF3〜FF5に、順次、上書きされることになる。そして、電源遮断後は、最終に取得された乱数値RNDの下位3ビットが不揮発的に記憶維持される。なお、3ビットデータは、Bit0〜Bit15の任意の3Bitに代替可能であるのは勿論である。また、ランダム情報は、必ずしも3ビットである必要はなく、適宜に増加減少可能である。
図12(b)は、記憶回路43の第2変形例を例示したものである。ここでは、2つのフリップフロップFF6〜FF7をT型フリップフロップとして動作させると共に、2ビットのバイナリカウンタを構成している。そして、計数クロックΦバーを、フリップフロップFF6のクロック端子CLKと、フリップフロップFF3のD入力端子に供給している。
そのため、3つのフリップフロップFF3〜FF5に供給される3ビットデータD1〜D3は、計数クロックΦバーに同期して、000〜111の数値範囲を循環する。そして、電源異常信号ABN1が降下する電源遮断時か、或いは、チップセレクト信号CS3がLアクティブとなる乱数値の取得時に、000〜111の何れかの値が、3つのフリップフロップFF3〜FF5にラッチされ、この値が電源遮断後も記憶維持される。この変形例でも、ランダム情報000〜111の出現確率は各々1/8であり、始動回路44は、電源投入時にランダムな始動動作を実行することができる。
ところで、電源投入時など、論理素子の動作が安定しないタイミングでも、正確な動作をする回路構成が望まれる。また、意図的に電源遮断動作と電源投入動作とを繰り返す違法行為も有り得る。そこで、好ましくは、図7に代えて、図13の回路構成を採るべきである。図13の乱数生成回路は、図7に示す記憶回路43及び始動回路44について、その回路構成を改善したものであり、図14は、回路動作を説明するタイミングチャートである。
図13の乱数生成回路は、エミッタホロワー回路Q7,R36を経由して基礎リセット信号RS1を論理反転させるNOTゲートG6と、NOTゲートG6及びエミッタホロワー回路Q5,R30の出力を受けるNORゲートG7と、エミッタホロワー回路Q5,R30の出力に基づいてON/OFF動作するアナログスイッチAS4と、コンデンサC30〜C32の充電電荷を放電させるトランジスタQ7〜Q9とが追加して設けられている。
NチャンネルMOSで構成されたトランジスタQ7〜Q9は、NOTゲートG6の出力がHレベルである場合に限りON動作する。また、フリップフロップFF3〜FF5は、NORゲートG7の出力が立上るタイミングでラッチ動作をする。
<電源遮断時>
以上の動作を踏まえて、先ず、電源遮断時の動作から説明する。NORゲートG7は、エミッタホロワー回路Q5,R30と、NOTゲートG6の出力に基づいて動作するため、NORゲートG7の出力は、基礎リセット信号RS1がRS1=Hであって、電源異常信号ABN1がABN1=LのタイミングだけがHレベルとなる(図14(d)参照)。
したがって、NORゲートG7の出力は、電源異常信号ABN1が立下る電源遮断時(タイミングT7)に立上り、その時のフロップフロップFF3〜FF5のD入力の値がラッチされ、ランダム情報D1〜D3として記憶保持される。なお、この電源遮断時(タイミングT7)には、電源異常信号ABN1が立下ることで、それまでON状態であったアナログスイッチAS4がOFF状態になる。
その後、直流電源が降下し始めると(タイミングT8)、基礎リセット信号RS1がLレベルとなることに対応して、NOTゲートG6の出力がHレベルとなる。そのため、タイミングT8以降、トランジスタQ7〜Q9がON動作して、充電状態であったコンデンサC30〜C32について、その充電電荷が放電される。したがって、電源遮断後に直ちに電源が投入されても、設計通りの始動動作が実現される。
<電源投入時>
続いて、電源投入時の動作を説明する。電源が投入されると(タイミングT0)、先ず、電源異常信号ABN1が立上り(タイミングT1)、アナログスイッチAS4がON状態になる。そして、その後、基礎リセット信号RS1が立上るタイミングT3までは、トランジスタQ7〜Q9がON動作を維持するので、仮に充電されているコンデンサC30〜C32が存在しても、その充電電荷は確実に放電される。
そして、電源電圧が正常レベルに立上ったタイミングT3の後、トランジスタQ7〜Q9がOFF状態となる。そのため、フリップフロップFF3〜FF5にラッチされているランダム情報D1〜D3に基づいて、コンデンサC30〜C32が充電され、ランダムな遅れ時間の後にカウンタCNT1,CNT2の更新動作が開始される。
なお、ランダム情報D1〜D3が000の場合には、遅延時間なくカウンタの更新動作が開始されるのは、図7の回路構成の場合と同じである。