以下、本発明を実施例に基づいて本発明の実施の形態を詳細に説明する。図1は、実施例に係るパチンコ機の全体構成を図示したブロック図である。
図示のパチンコ機は、遊技動作を中心的に制御する主制御基板1と、表示装置8の動作を制御する図柄制御基板2と、音声的な遊技演出を実現する音声制御基板3と、ランプ類を点滅動作させるランプ制御基板4と、遊技球を払出す払出制御基板5と、払出制御基板5に制御されて遊技球を発射する発射制御基板6と、AC24Vを受けて装置各部に直流電圧を供給する電源基板7とを中心に構成されている。
図示の通り、電源基板7から主制御基板1及び払出制御基板5には、電源遮断後もRAMエリアの記憶内容を維持するためのバックアップ電源が供給されている。また、主制御基板1と払出制御基板5には、係員のスイッチ操作に対応して各制御基板のRAMをゼロクリアするRAMクリア信号RAMCLRが供給されるようになっている。
主制御基板1、図柄制御基板2、音声制御基板3、ランプ制御基板4、及び払出制御基板5は、それぞれワンチップマイコンを備えるコンピュータ回路で構成されており、サブ制御基板2〜5は、主制御基板1からの制御コマンドに基づいて個別的な制御動作を実現している。そのため、回路基板に搭載された回路素子やプログラムによって実現される機能を総称して、以下、主制御部1、図柄制御部2、音声制御部3、ランプ制御部4、及び払出制御部5ということがある。なお、この実施例の場合、制御コマンドは、コマンドの種別を示すMODEデータと、具体的内容を特定するEVENTデータとが、それぞれ8ビット長で構成されている。
主制御基板1から払出制御基板5に伝送される制御コマンドは、払出すべき遊技球の数を指示する賞球数指定コマンド(MODEデータ=8AH)と、払出動作の停止や再開を指示する動作指定コマンド(MODEデータ=9AH)とに大別され、賞球数指定コマンド(=8A××H)は、EVENTデータ(=××H)によって賞球数を指定している。一方、動作指定コマンドには、払出停止コマンド(=9A11H)と払出再開コマンド(=9A12H)とが用意されている。
払出停止コマンドは、動作開始時または遊技動作中に下皿が満杯状態であるか、遊技球の補給が途絶えている場合には、主制御基板1から払出制御基板5に伝送される。そして、払出停止コマンドを受信した払出制御基板5は、その時が払出動作中であっても直ちに遊技球の払出動作を停止して、その後、払出再開コマンドを受けるまでその状態で待機するようになっている。
後述するように、本実施例の場合、払出回転体RO(図3)に至る遊技球通路は、左右2つに区分されている。したがって、この実施例では、主制御基板1において、遊技球の補給状態を左右別々に把握して、何れか一方が補給切れ状態であれば、払出停止コマンドを払出制御基板5に対して出力するようにしている。但し、この構成に特に限定されるものではなく、左右の通路が共に補給切れの場合だけ、払出停止コマンドを出力するのでも良い。また、遊技球の補給通路の源流側で遊技球の補給状態を総体的に把握し、補給が全く途絶えた場合だけ払出停止コマンドを出力したのでも良い。
図2(a)は、払出制御基板5の周辺回路を図示したものである。図示の通り、払出制御基板5は、電源基板7から(バックアップ電源を含む)電源電圧だけでなく、払出制御基板5(ワンチップマイコン)のRAMをクリアするための指令信号RAMCLRと、電源電圧の降下に伴うNMI(non maskable interrupt)信号と、電源リセット信号SYSRSTなどを受けている。また、払出制御基板5は、プリペイドカードユニット22とも接続され、球貸し動作に係わる各種の制御信号(BRDY,BRQ,EXS,PRDY)を送受している。そして、球貸し情報信号を外部に出力するようになっている。なお、払出制御基板5は、プリペイドカードユニット22から直流電圧18vを受けており、この電圧値を正常に受信できることを条件に発射制御基板6の動作を許可している。
払出制御基板5は、遊技球の入賞に伴う賞球か、又はプリペイドカードで清算される貸し球として、所定数の遊技球を払出す必要がある。そこで、ステッピングモータたる払出モータMOに4相の駆動パルスデータΦ1〜Φ4を出力し、払出モータMOの回転に伴って払出される遊技球を、左右の賞球計数スイッチRSW1,LSW1か又は左右の球貸し計数スイッチRSW2,LSW2で検出するようにしている。なお、図2(a)に示す通り、左右の賞球計数スイッチRSW1,LSW1の信号は、主制御基板1にも伝送されるようになっている。
図3は、払出カセットの内部構成について、払出モータMOとその周辺部材について図示したものである。図示の通り、払出モータMOの回転軸に接続された払出回転体ROには、それぞれ遊技球6個を保有可能な保持溝が左右に形成されている。この払出回転体ROの回転に伴い、保持溝に保持された遊技球は、左右から交互に1個ずつ下方に放出されるが、この実施例では、通常時には、18mS毎に変化する駆動データΦ1〜Φ4が、4ステップ出力されて(払出回転体ROが30°回転され)1個の遊技球を払出している(図2(b)及び、図4参照)。
図3に示すように、払出回転体ROの下方には、賞球計数スイッチRSW1,LSW1と球貸し計数スイッチRSW2,LSW2が設けられている。また、払出動作切換え用のレバーLEが配置されており、この払出切換レバーLEで案内されることによって、遊技球は、賞球計数スイッチか球貸し計数スイッチの何れかを通過することになる。払出切換レバーLEは、図2に示す払出切換ソレノイドのON/OFF動作に応じて、姿勢を切換えるようになっており、図3は、左右の賞球計数スイッチRSW1,LSW1が遊技球の通過を検出する賞球動作状態を図示している。なお、左右の賞球計数スイッチRSW1,LSW1(及び球貸し計数スイッチRSW2,LSW2)の信号は、払出制御基板5に伝えられ、必要数の球貸し動作と賞球動作とが管理されている。
図6は、払出制御基板5の内部構成を図示したものである。図示の通り、払出制御基板5は、主制御基板からの制御コマンドを受ける入力バッファ10と、賞球及び球貸し計数スイッチからのスイッチ信号を受けるコンパレータ群11と、第1入力ポート13と、第2入力ポート12と、Z80CPU相当品を内蔵するワンチップマイコン14と、入出力ポートのチップセレクト信号を生成するデコーダ15と、第1出力ポート16と、第2出力ポート17と、第1出力ポート16から受けた駆動信号を払出モータMOに供給するトランジスタ群(オープンコレクタ)18とを中心に構成されている。
なお、この実施例では、入力バッファ10、第1と第2の入力ポート12,13は、74541相当品のバスバッファで構成され、デコーダは、74138相当品で構成されている。また、出力ポート16,17は、74273相当品のD型フリップフロップで構成されている。
図示の通り、第1入力ポート13のbit0,bit1には、左右の賞球計数スイッチSW1(R,L)からの信号が供給され、bit2,bit3には、左右の球貸し計数スイッチSW2(R,L)からの信号が供給されている。また、bit4には、マニュアル操作されるモータ逆転スイッチSWからの信号が供給され、bit5には電源基板7からのRAMクリア信号RAMCLRが供給されている。なお、第1の入力ポート13のbit6〜7にはプリペイドカードユニット22からの制御信号BRDY,BRQが供給されている。
先に説明した通り、第2入力ポート12には主制御基板1からの制御コマンドが伝えられるが、主制御基板1からは、制御コマンドの伝送に合わせてストローブ信号STBが供給される。このストローブ信号STBは、CPUコアの割込み端子(maskable interrupt)に供給されるので、これに応じて、払出制御基板5では受信割込みルーチンが起動し、制御コマンドを取得するようになっている。
第1出力ポート16のbit3〜bit0からは、(Φ4,Φ3,Φ2,Φ1)=0101→0110→1010→1001→0101→・・・の駆動パルスデータが時間順次に払出モータMOに対して出力される(図5参照)。また、第1出力ポートのbit4にはLED駆動信号がエラー報知ランプERLに出力され、bit7からは、不図示のウォッチドッグタイマ回路のクリア信号が所定時間毎に出力されるようになっている。
一方、第2出力ポート17のbit0からは、切換えレバーLEの姿勢を切換える際に、切換え信号が切換えソレノイドに対して出力される。また、第2出力ポート17のbit3からは外部出力用の球貸し情報信号が出力され、bit6,bit7からはプリペイドカードユニット22に対して、制御信号PRDY,EXSが出力される。
図7は、図6に示す払出制御基板5で実行されるプログラムを説明するフローチャートである。払出制御基板5の動作は、概説すると、電源投入後に開始されて無限ループ状に繰り返されるメインルーチン(図7(a))と、主制御基板1からのストローブ信号STBによって起動される割込み処理ルーチン(図7(b))と、一定時間(2mS)毎に開始されるタイマ割込みルーチン(図7(c))と、電源電圧降下時に主制御基板1からNMI信号を受けて開始されるマスク不能のNMIルーチン(図7(d))とで構成されている。
図7(b)に示すように、受信割込みルーチンでは、第1入力ポート12から制御コマンドを取得して、これをRAMのコマンドバッファ領域に格納して処理を終える(ST100)。また、図7(c)に示すように、タイマ割込みルーチンでは、割込み確認フラグを5AHに書き換えて処理を終える(ST200)。この割込み確認フラグの値は、メインルーチンのステップST10においてチェックされ、この値が5AHであることを条件にメインルーチンの処理が進行するようになっている。すなわち、メインルーチンの割込み待ち処理(ST10)では、割込み確認フラグが5AHとなるのを待ち、5AHとなれば割込み確認フラグを00Hに書換えた後にステップST11の処理に移行する。したがって、ST11以下の処理は2mS毎に繰返し実行されることになる。
図7(d)に示すように、NMIルーチンでは、レジスタの値を退避させた後(ST301)、スタックポインタSPの値をRAMの記憶エリアに保存する(ST302)。次に、第2入力ポート12から制御コマンドを入力し、もし新規の制御コマンドであれば、RAMのコマンドバッファ領域に格納する(ST303)。その後、最低限の処理が終わったことを示すべく、バックアップフラグBAKFLGに5AHを格納した後(ST304)、RAMエリアのチェックサム値(8bit長)を算出して該当エリアに記憶する(ST305)。最後にワンチップマイコンをRAMアクセス禁止状態に設定して(ST305)、無限ループ処理を実行しつつ電源電圧が遮断されるのを待つ(ST306)。
以上の動作を踏まえてメインルーチン(図7(a))の動作内容を説明する。電源基板7から電源電圧が供給されると共に、システムリセット信号SYSRSTが供給されると、CPUを割込み禁止状態に設定した後(ST1)、ワンチップマイコン14各部の初期設定を行う(ST2)。次に、第1入力ポート13からのデータに基づき、電源基板7からRAMクリア信号が供給されているか否かをチェックする(ST3)。この実施例では、パチンコホールの営業開始時であって、特に係員が電源基板7のRAMクリアスイッチをON操作した場合にはRAMクリア信号RAMCLRが供給されるが、停電からの復旧時を含め、通常はRAMクリア信号が供給されない。
そして、RAMクリア信号が供給されない場合には、NMIルーチンのステップST304の処理で記憶されるバックアップフラグBAKFLGの値をチェックし(ST4)、BAKFLG=5AHであれば、次に、NMIルーチンのステップST305の処理で記憶されたチェクサム値を確認する(ST5)。このメインルーチンで算出したサム値と、NMIルーチンで記憶されたサム値とが一致する場合には、バックアップ復帰処理を実行してバックアップ処理前の処理に戻る(ST19)。
バックアップ復帰処理は具体的には図18に示す通りである。先ず、ステップST302の処理でバックアップされたスタックポインタSPの値を復帰させ(ST400)、スタートフラグSTFLGに5AHを設定する(ST401)。ここでスタートフラグSTFLGが5AHに設定されたことにより、バックアップ復帰後の最初の払出動作では、1個不足する遊技球が通常のスピードで払出された後、最後の1個はリトライ処理によってゆっくり払出されることになる。このリトライ処理の結果、払出モータが所定のホームポジションに位置決めされるがこの点については更に後述する。
次に、復帰処理が完了したことを示すべくバックアップ確認フラグを00Hにクリアし、スタックポインタSPの記憶エリアをゼロクリアする(ST401)。その後、レジスタの値を復帰させ(ST402)、NMI処理の実行前の状態に戻る。
以上、電源投入時にRAMクリアスイッチがON操作されない場合を説明したが、図7に戻ってメインルーチンの説明を続ける。営業開示時に係員がRAMクリアスイッチをON操作した場合(その他、NMIルーチンが正常に終了する以前に電源電圧が降下してしまったような例外的な場合も含め)、ワンチップマイコン14のRAM領域がゼロクリアされる(ST7)。なお、NMIルーチンが正常に終了するまでに電源電圧が降下したことは、BAKFLG≠5AHであるか、又はチェックサムエラーによって検出され、このような場合には正常なバックアップ復帰が不可能と考えられるのでRAM領域をゼロクリアするのである。
そして、その後、スタートフラグSTFLGに5AHを設定して(ST8)、CPUを割込み許可状態に戻す(ST9)。なお、ステップST8においてスタートフラグSTFLGを5AHに設定したことにより、最初の払出動作時に、1個不足する遊技球が通常のスピードで払出された後、最後の1個はリトライ処理によってゆっくり払出されることになる。この処理の結果、払出モータのホームポジションが正しく位置決めできる点は前記したバックアップ復帰時の場合と同様である。
続いて、ステップST10〜ST18の処理が無限ループ状に繰り返されるが、ST11〜ST18の無限ループ処理は、前述した割込み待ち処理(ST10)によって一定時間毎(2mS)に実行される。無限ループ処理では、先ず、第1入力ポート13を通して、スイッチ入力信号が取得される(ST11)。これは、払出モータMOの回転によって遊技球が払出されたか否かを確認するための処理である。続いて、8bit長又は16bit長のタイマの減算処理(−1)が行われる(ST12)。なお、無限ループ処理が2mS毎に実行されることにより、減算タイマの1単位時間は2mSを意味する。
タイマ減算処理が終われば、次に、受信割込み処理によって取得される制御コマンドの解析処理が行われる(ST13)。コマンド解析処理は、図8(a)に示すように、新規に受信した制御コマンドの正当性を確認する受信コマンドのチェック処理(ST89)と、イベントチェック処理(ST90)に区分されるが、これらの処理が2mS毎に毎回実行される。
イベントチェック処理(ST90)は、制御コマンドの下位8bitであるEVENTデータのチェックを意味するが、具体的内容は、図8(b)に示す通りである。イベントチェック処理では、先ず、新規に受信した制御コマンドが払出再開コマンドか否かが判定される(ST91)。そして、払出再開コマンドが検出された場合には、払出動作を停止すべきか否かを規定している払出停止フラグの値が判定され(ST92)、払出動作が可能な場合には、払出停止フラグ=00H、払出リトライフラグ=5AH、モータ停止タイマ=250に設定される(ST93)。
払出リトライフラグ=5AHとなったことにより、遊技球を1個払出すまで払出モータをゆっくり回転させるリトライ動作ステイタスモード(図15(b))に設定されたことになる。また、モータ停止タイマ=250となったことにより、このリトライ動作による遊技球の払出に先立って、500mS(=250×2)だけモータが停止状態に維持される。
ステップST91の判定がNOの場合には、新規に受信した制御コマンドが払出停止コマンドか否か判定される(ST94)。そして、払出停止コマンドが受信されていた場合には、払出停止フラグの値が判定され(ST95)、もし00Hであれば払出動作を停止すべく、払出停止フラグ=5AHに設定する(ST96)。
一方、ステップST94の判定の結果、新規に受信した制御コマンドが遊技球の払出個数を規定する賞球数指定コマンドであった場合には、全賞球数カウンタに、新たに指示された賞球数を加える(ST97)。このように、コマンド解析処理(ST13)によって、遊技機から払出すべき遊技球の総数が、受信した制御コマンドに基づいて順次更新されている(ST97)。
以下、図7に戻ってメインルーチンの説明を続けると、プリペイドカードユニット22との通信処理(ST14)と、プリペイドカードで清算される球貸し処理(ST15)とを行った後、賞球処理(ST16)とモータ処理(ST17)とデータ出力処理(ST18)とが行われ、ステップST10の処理に戻る。
モータ処理(ST17)は、払出モータMOを回転させるための準備処理であり、具体的には、払出モータMO用の駆動データ(Φ1〜Φ4)を生成してワークエリアMOOUTに格納している。一方、データ出力処理(ST18)は、前記した駆動データを含む各種のデータを、第1と第2の出力ポート16,17から出力する処理である。また、賞球処理(ST16)は、賞球の払出数を管理する処理であり、コマンド解析処理(ST13)によって更新された全賞球数カウンタの値に基づいて払出数を決定し、データ出力処理(ST18)によって払出モータMOを回転させると共に、データ入力処理(ST11)で把握される遊技球の払出し状態を参照して払出モータの動作終了タイミングなどを決定している。
賞球処理(ST16)とモータ処理(ST17)の説明に先立って、図17に基づいてデータ出力処理(ST18)から説明する。データ出力処理では、先ず、モータ処理(具体的には図11のST68)で用意されたモータ駆動データをMOOUT番地から取得する(ST70)。なお、モータ駆動データは2進数で0101,0110,1010,1001の何れかであり、それらが図5に示すように出力されることで払出モータMOが回転する。なお、この実施例では、通常時、払出モータMOの1ステップ(最低回転角度)の回転時間が18mSに設定され、4ステップ分のデータ駆動データの出力によって払出モータMOが30度回転して遊技球を1個払出すように設定されている。なお、払出モータMOの1ステップの回転時間は、モータ駆動タイマで管理されており、1ステップ分の回転時間18mSが、タイマ割込み9回分に相当することから、通常動作時にはモータ駆動タイマの初期値は9に設定される。
何れにしてもステップST70の処理によって、モータ駆動データがBレジスタに用意されたら、LEDフラグが5AHにセットされているか判定される(ST71)。LEDフラグとは、払出動作の異常状態が所定時間(22.4秒)継続した場合に、エラー報知ランプERL(図6参照)を点灯させるためのフラグである。したがって、LEDフラグが5AHであれば、Bレジスタのbit4を1にセットする(ST73)。
次にBレジスタのbit7を1に設定し(ST73)、Bレジスタの値を、第1出力ポート16に出力する(ST74)。この結果、払出モータMOには駆動データが出力され、エラー報知ランプERLが点灯又は消灯する。また、Bレジスタのbit7は、ウォッチドッグタイマに出力されるので、時間消費処理(ST75)の後、bit7をゼロに戻して、第1出力ポート16から再出力している(ST7)。この動作によってウォッチドッグタイマがゼロクリアされるが、プログラムの暴走によって、本来2mS毎に実行されるべきデータ出力処理(ST18)が実行されなくなると、ウォッチドッグタイマ回路の動作に基づいてCPUが強制的にリセットされることになる。
何れにしてもステップST76の処理に続いて、切換えソレノイドフラグ、球貸し信号フラグ、PRDYフラグ、EXEフラグを参照して、該当ビットをセットしたデータを第2出力ポート17に出力する(ST78)。この動作の結果、場合によっては、球貸し情報信号が外部に出力され、切換えレバーLE(図3)の姿勢が変更される。なお、PRDY信号やEXE信号は、プリペイドカードユニット22に出力される制御信号である。
以上、図7に示すメインルーチンについて概略的に説明したが、続いて、図9〜図15を参照しつつ、賞球処理(ST16)とモータ処理(ST17)とを詳細に説明する。
図9に示すように、賞球処理では、最初に賞球が検出されたか否かが判定される(ST20)。賞球の払出は、データ出力処理(ST18)に起因して払出モータMOが1ステップ回転した場合に生じ得るが、もし、払出があればステップST11の処理によってスイッチエッジデータとして取得されている。なお、この実施例では、スイッチエッジデータのbit0が、左賞球計数スイッチの検出状態を表し、bit1が右賞球計数スイッチの検出状態を表している(図6参照)。
賞球検出処理(ST20)の具体的内容は図10に示す通りであり、左右の賞球データ(スイッチエッジデータのbit0とbit1)を変数D1に取得すると共に、Bレジスタに2を設定する(ST40)。次に、変数D1を右に1ビットシフト演算することで、スイッチエッジデータのbit0の内容をキャリーフラグCYに移動させる(ST41)。
CY=1であれば左賞球計数スイッチがONであることを意味するが、この段階では払出モータの回転が開始されていないのでCY=0のはずである。そこで、Bレジスタの値を−1して(ST49〜ST50)、更に変数D1を右に1ビットシフト演算する(ST41)。この段階でCY=1であれば右賞球計数スイッチがONであることを意味するが、この段階では払出モータの回転が開始されていないのでCY=0のはずである。したがって、ステップST49〜50の処理を経て賞球検出処理を終える。
一方、払出モータMOの回転が開始された後は、ステップST42の判定でCY=1となる場合がある。そこで、その場合には、賞球フラグの内容をチェックする(ST43)。賞球フラグは、本実施例の払出動作を管理するフラグの一つであり、当初は00Hであるが、払出残数カウンタに1単位分(25個以下)の払出数を設定した段階で5AHに設定されるようになっている(図9のST27〜ST29)。そして、1単位分の払出が終わり、払出残数カウンタの値がゼロになると賞球フラグの値がA5Hに変更され(図10のST48)、その後直ちに初期状態の00Hに戻される(図9のST31)。
したがって、払出動作が開始された段階では、賞球フラグが5AHであるので、賞球計数スイッチがONであったことに対応して払出検出フラグを5AHに設定すると共に、払出残数カウンタを−1する(ST45〜46)。次に、払出残数カウンタの値がゼロか否かを判定して(ST47)、もしゼロなら払出モータフラグと賞球フラグをA5Hに変更する(ST48)。払出モータフラグは、払出モータMOが駆動状態か否かを決定するフラグであり、賞球フラグとほぼ連動して変化している。
具体的には、図19に示す通りであり、最初は、払出モータフラグは00Hであるが、払出残数カウンタに1単位分(25個以下)の払出数を設定した段階で5AHに設定される(図9のST27〜ST29)。そして、1単位分の払出が終わり、払出残数カウンタの値がゼロになるとA5Hに変更される(図10のST48)。その後、更に、払出動作が持続する場合には、賞球フラグがゼロにされた後(ST31)、払出残数カウンタに1単位分の払出数を設定した段階で5AHに戻される(ST27〜ST29)。一方、不足分なく全賞球数を払出して払出動作が完了した場合には、00Hに戻される(図15のS27,S40)。
この実施例では、払出モータフラグは、払出モータMOを駆動状態にするか非駆動状態にするかを規定しており、払出モータフラグが5AH又はA5Hであれば、モータ駆動状態となるが00Hであれば非駆動状態となる。ここでモータ駆動状態とは、第1出力ポート16に有意な駆動データ(2進数0101,0110,1010,1001の何れか)が出力されていることを意味し、非駆動状態とは、第1出力ポート16に2進数0000が出力されていることを意味する。なお、第1出力ポート16に2進数0000が出力されると、オープンコレクタタイプのトランジスタ群18が全てOFF状態となり、払出モータMOは自由回転状態となる(図6参照)。
以上の通り、本実施例では、払出モータフラグや賞球フラグがA5Hである場合は、1単位分の遊技球の払出が完了した状態である。したがって、図10に示すステップST48の処理の後、ステップST42の判断においてCY=1となることは本来あり得ない。万一、賞球フラグ=A5Hか00Hの状態で払出が検出された場合(CY=1)は、本来の払出完了後に遊技球の自重などに基づいて、余分の賞球が誤って払出されたものと考えることができる。
そこで、賞球フラグ=A5H又は00Hの状態でCY=1となった場合には、払出リトライフラグを5AHにセットしている(ST44)。払出リトライフラグは、動作ステイタス=0の動作状態を動作ステイタス=3に変更するためのフラグであり(図14のS1)、その後は、1個目の遊技球の払出を検出するまで、モータを格段にゆっくり回転させる(実施例では9/350倍)。遊技球が誤って賞球が払出された以上、払出モータの停止位置は本来のホームポジション位置からずれていると考えられるので、本来の位置に修正するのである。
図4は、払出モータMOの本来の停止位置を説明する図面であり、遊技球の払出直前の状態(図4(a))と、遊技球を払出し終わった状態を示している。なお、この実施例では、払出モータは、1ステップで7.5度ずつ回転するよう設計されているので、駆動データが1つ進むことにより、図4(a)の状態から図4(b)の状態に移行する。そして、左右一方側の遊技球を払出した図4(b)の状態から、更に4ステップ分だけ動作が進行すると左右他方側の遊技球が払出されることになる。つまり、図4(b)の状態は、左右他方側の遊技球が自重などで誤って払い出される可能性が最も低い状態であると考えられる。
かかる点を踏まえ、本実施例では、遊技球を払出し終わった図4(b)の状態を、払出モータのホームポジション(定常的な停止位置)に設定している。但し、払出モータのその後の運転に伴って、機器精度上の問題からホームポジションが時計方向にずれたり、或いは機器精度上の問題や遊技球の自重によって反時計方向にずれる可能性もある。
そこで、遊技球の払出不足(通常、ホームポジションの時計方向へのずれが原因と考えられる)や、遊技球の過剰払出(通常、ホームポジションの反時計方向へのずれが原因と考えられる)が生じた場合には、動作ステイタス=3に変更して(図14のS7参照)、次回の払出動作時、最初の1個の遊技球が払出されるまで、7.5度ずつ払出モータMOをゆっくり回転させてホームポジションのずれを修正している(リトライ処理)。
以下、図9の賞球処理を説明すると、賞球検出処理(ST20)の後、先ず賞球フラグの値がチェックされる(ST21)。払出モータの駆動が開始されていない状態では、賞球フラグは00Hであるので(図19)、コマンド解析処理(ST13)で更新された全賞球数カウンタの値が変数D1に取得される(ST22)。そして、変数D1がD1≠0であれば、1単位分の払出数の最大値25を変数D2に格納し、変数D1から変数D2を減算する(ST24)。
次に減算結果が負か否か判定され(ST25)、もし負なら変数D2に全賞球数カウンタの値を格納すると共に、変数D1をゼロにする(ST26)。その後、払出残数カウンタに変数D2の値を格納すると共に、変数D1の値を全賞球数カウンタに格納する(ST27,ST28)。以上の処理の結果、全賞球数NがN>25であれば、払出残数カウンタには、1単位分の払出数の最大値25が設定され、全賞球数がN−25に更新される。一方、賞球処理開始時に、全賞球数NがN<25であれば、払出残数カウンタにはその値Nが設定され、全賞球数はゼロとなる。なお、ステップST27の処理で設定される払出残数カウンタの初期値は、通常は5個、10個、15個、25個の何れかである。
その後、賞球フラグと払出モータフラグが5AHに設定されて賞球処理が終わるが(ST29)、5AHに設定された賞球フラグは、図10のステップST48の処理でA5Hに変更されるまではその値を維持するので、次回の賞球処理においては、ステップST21からステップST30に処理が移行し、賞球検出処理を行うだけで賞球処理を終えることになる。その後、賞球フラグがA5Hに変更されると、ステップST31の処理によって賞球フラグが00Hに戻され、更にその次の賞球処理(ST16)では、図9のステップST22〜ST29の処理が再実行されることになる。
図11は、モータ処理(ST17)の具体的内容を図示したフローチャートである。図11に示す通り、モータ処理では、最初に払出エラー処理(ST61)が実行される。払出エラー処理(ST61)とは、エラー報知ランプERLを点灯させて、係員によるモータ逆転スイッチSWのON操作を待つための準備処理であり、具体的内容は図13(a)に示す通りである。
図13(a)に基づいて説明すると、払出エラー処理(ST61)では、先ず、リトライ・エラーフラグRTYがチェックされ(S70)、これが既に5AHにセットされていたら、何もしないで処理を終える。リトライ・エラーフラグRTYとは、リトライ処理を32回繰り返しても遊技球が払出されなかった球詰り状態を示すフラグであり、図13(a)のステップS73の処理において5AHに設定される。したがって、リトライ・エラーフラグRTY=5AHであり、既に球詰り状態である以上、後述するモータ逆転処理(図16)によって異常が解消されて、リトライ・エラーフラグRTYがゼロクリアされるまで(S87)、ステップS71〜S74の処理をスキップする。
一方、ステップS70の処理において、リトライ・エラーフラグRTY=00Hであると判定されると、次に、払出検出フラグの値がチェックされる(S71)。払出検出フラグは、賞球検出処理(図10)において、適正に遊技球の払出が検出されると5AHに設定される(ST45)。したがって、払出検出フラグが5AHであれば、球詰りの可能性はないので、そのまま処理を終える。
逆に、払出検出フラグが00Hであれば、今回の処理では、遊技球の払出が検出されてないことを意味するので、次に、リトライ・カウンタの値を判定する(S72)。リトライ・カウンタは、リトライ処理においても遊技球が払出されない場合に、図15(b)のステップS33の処理でインクリメント(+1)されるカウンタである。したがって、リトライ・カウンタが32未満であれば、何もしないで処理を終えるが、リトライ・カウンタが32以上の値に達していたら、リトライ・エラーフラグRTYとLEDフラグを共に5AHにセットする(S73)。この結果、その後のデータ出力処理(図7のST18)において、エラー報知ランプERLが点灯される。リトライ処理を繰り返しても遊技球が払出されない球詰り状態である以上、エラー報知ランプERLを点灯させて係員の処理を求めるのである。
次に、動作ステイタスを4に設定すると共に、モータ逆転動作(S83)を直ちに開始するため、モータ駆動タイマを0に設定する(S74)。モータ駆動タイマは、図15(b)に示すリトライ処理中は、必ず350に設定されるので(S34)、待機時間を経ることなく払出モータMOを逆回転させるために、ステップS74において、モータ駆動タイマを0に再設定している。
さて、図11に説明を戻すと、上記した内容の払出エラー処理(ST61)が終わると、モータ出力データを格納しているMOOUT番地の内容をクリアし(ST62)、払出停止フラグがゼロであるか否かが判定される(ST63)。そして、払出停止フラグがゼロでない場合には、そのままモータ処理を終えるので、モータ出力データは2進数0000のままであり(ST62参照)、払出モータMOが駆動されない。
一方、ステップST63の判定で、払出停止フラグがゼロであると判定された場合には、払出モータフラグの値がチェックされ、これがゼロでない限り、モータ停止タイマの値がチェックされる(ST64,ST65)。モータ停止タイマの値は、タイマ減算処理(ST12)によって2mS毎に−1されているが、この値がゼロになるまでは、払出モータが停止状態のまま駆動され続ける(ST68)。
逆に、モータ停止タイマの値がゼロの場合には、そのときの動作ステイタスの値に応じてモータ駆動開始処理(ST67a)、モータ駆動中処理(ST67b)、モータ停止中処理(ST67c)、モータリトライ中処理(ST67d)、モータ逆転処理(ST67e)の何れかが実行された後、これらの処理で決定された払出モータMOの位置に応じてモータ駆動データが選択されMOOUT番地に格納される。この実施例では、払出モータMOの位置は0〜3で管理されており(図5参照)。例えば、モータ位置(0、1、2、3)に応じて、それぞれモータ駆動データ(0101、0110、1010、1001)が出力される。
図14〜図16は、モータ駆動開始処理(ST67a)、モータ駆動中処理(ST67b)、モータ停止中処理(ST67c)、モータリトライ中処理(ST67d)、及びモータ逆転処理(ST67e)の具体的内容を図示したものである。初期状態では動作ステイタスは0であるので、図14(a)モータ駆動開始処理が実行される。
<モータ駆動開始処理(動作ステイタス0)>
モータ駆動開始処理では、払出リトライフラグの値がチェックされ(S1)、払出リトライフラグ≠5AHであれば、次にスタートフラグSTFLGの値がチェックされる(S2)。なお、スタートフラグSTFLGは、電源投入時やバックアップ復帰時にSTFLG=5AHに設定されている。したがって、電源投入後の最初の払出動作時であれば、ステップS3の処理に移行し、払出残数カウンタの値を−1して、その4倍の値をステップカウンタに設定する。また、スタートフラグSTFLGの値を00Hに戻す。
払出残数カウンタには、払出すべき1単位の遊技球の個数が設定されている(図9のST27)。また、ステップカウンタは、払出モータDに駆動データを供給する総回数を示しており、この実施例では、駆動データが4個(4ステップ)進行して1個の遊技球が支払われるよう設計されている。そのため、ステップS3の初期設定の結果、本来払出されるべき遊技球がN個であるにも係わらず、払出モータMOはN−1個分しか回転しないことになる。この払出不足状態は、図10のステップST48の処理を実行することなく動作ステイタス=1から動作ステイタス=2に遷移することによって検出され(図14のS15、図15のS20)、その後、図15(b)に示すリトライ処理が開始される。
このようなリトライ処理に移行するステップS3の処理は一回だけであり、その後は、スタートフラグSTFLGはゼロとなる。したがって、通常は、残数カウンタの値を4倍してステップカウンタに格納する(S4)。払出残数カウンタの初期値は、ステップST27の処理で設定された1単位分の払出量N(=25個以下)である。そして、この実施例では払出モータMOに4ステップの駆動データを供給して30度回転させ、遊技球を1個払出すようにしているので、払出モータMOに供給すべき一連の駆動データの総数として、4×Nの値をステップカウンタに設定しているのである。
次に、ステップS3かS4の処理によってステップカウンタの初期値を設定した状態で、動作ステイタスを1に変更すると共に、モータ駆動タイマを9に初期設定して処理を終わる(S5〜S6)。モータ駆動タイマは、払出モータMOに駆動データを供給する時間間隔を指定するものであり、初期設定されたモータ駆動タイマは、ステップS12のタイマ減算処理で−1されるので、この場合には図5に示す時間間隔(=18mS)でモータ位置が変化することになる。なお、モータ駆動タイマがゼロになる毎にステップカウンタが−1される。
動作ステイタスが0の場合、払出リトライフラグが5AHの場合には、動作ステイタスが3に変更される(S7)。また、モータ駆動タイマが350に設定され払出リトライフラグと払出検出フラグがゼロクリアされる。動作ステイタスが3に変更されると、その後リトライ処理が開始させることになるが、モータ駆動タイマが350に初期設定されたことにより、以降は、1ステップ700mS(=2×350)の時間間隔で極めてゆっくり払出モータMOが駆動されることになる。なお、ステップS5〜S7の処理が実行されるのは、遊技球の過剰払出でモータ駆動開始処理が開始された場合であり(図10のST44参照)、そのため、ステップST45の処理で5AHに設定されている払出検出フラグをゼロクリアしている。
<モータ駆動中処理(動作ステイタス1)>
図14(a)のステップS3の処理によって動作ステイタスが1に設定された後は、図14(b)に示すモータ駆動中処理が実行される。ここでは、先ず、モータ駆動タイマの値がチェックされ(S10)、ゼロでなければ何もしないで処理を終える。したがって、例えば、モータ駆動タイマが9に初期設定された場合には、9回のモータ処理(ST17)では同一の駆動データを出力することになる(ST67b〜ST68)。その後、モータ駆動タイマがゼロになると、4×Nに初期設定されているステップカウンタの値を−1すると共に、モータ位置を0〜3の範囲で+1する(S11〜S12)。
その後ステップカウンタの値が判定され(S13)、ゼロでなければ再度、モータ駆動タイマを9に初期設定して処理を終える(S14)。一方、ステップカウンタの値がゼロになった場合には、形式的には1単位分(N≦25)の遊技球の払出を終えたことになるので、動作ステイタスを2に変更すると共に、モータ駆動タイマの値を350に初期設定する(S15〜S16)。なお、ステップカウンタの値がゼロになったことにより、形式的には(時間的には)、1単位分(N≦25)の遊技球の払出を終えたことになるが、実際には払出量が過不足している場合も有り得る。
払出量が不足する場合は、払出残数カウンタがゼロになっていないので、払出モータフラグがA5Hに変更されず5AHのままであり、一方、払出モータフラグがA5Hであれば払出残数カウンタがゼロになったことを意味する(ST48参照)。但し、払出残数カウンタがゼロになった後に更に払出がされる可能性もあり、払出モータフラグがA5Hでも払出リトライフラグが5AHの場合もある(ST44)。
<モータ停止中処理(動作ステイタス2)>
図15(a)に示すように、動作ステイタス2の状態ではモータ停止中処理が実行される。ここでは先ず、払出モータフラグの値がチェックされ、これがA5Hであれば、少なくとも払出不足ではないと判断できるので動作ステイタスを2から0に変更し、モータ駆動タイマをゼロにする(S25〜S26)。また、払出モータフラグと払出検出フラグをゼロクリアする(S27)。
一方、ステップS20の処理において、払出モータフラグ≠A5Hと判定された場合、払出モータフラグが5AHであれば、払出量が不足していることを意味するので、先ず、モータ駆動タイマがゼロになるのを待つ(S21)。なお、動作ステイタスが1から2に変更された段階で、モータ駆動タイマが350に初期設定されているので(S16)、ここでは700mSだけ時間消費されることになる。その後、モータ駆動タイマがゼロになれば、動作ステイタスを2から3に変更すると共に、モータ駆動タイマを350に初期設定し、払出検出フラグをクリアする(S22〜S24)。
<リトライ処理(動作ステイタス3)>
図15(b)に示すように、動作ステイタスが3の場合には、先ず、モータ駆動タイマがゼロになるのを待つ(S30)。動作ステイタスが3に変更された段階で、モータ駆動タイマが350に初期設定されているので(S6,S23)、ここでは700mSだけ時間消費されることになる。その後、払出検出フラグの値をチェックする(S31)。払出検出フラグは、遊技球の払出しを確認した段階で5AHに設定され(図10のST45)、動作ステイタスが3に変更される段階でゼロにされている(図15のS24,図14のS7)。
したがって、モータリトライ処理において、払出検出フラグは最初ゼロの筈であるので、次に、モータ位置を0〜3の範囲で1つ進める(S32)。また、リトライ・カウンタを+1すると共に、モータ駆動タイマに350を設定する(S33〜S34)。したがって、以降、1ステップ=700mS毎に駆動データを更新するリトライ処理が実行されることになる。
図20は、このリトライ処理を図示したものであり、通常時の9/700倍の速度でゆっくり払出モータMOが回転することを示している。ステップS30〜S34より明らかなように、1ステップ(7.5度)分だけ払出モータMOが回転する毎に、つまりモータ駆動タイマがゼロになる毎に、(図10のステップST45の処理で設定された払出検出フラグの値に基づき)、遊技球の払出しをチェックし、払出しを検出するまで同じ動作を繰り返す(S31)。
このような処理を繰り返していると、やがて払出検出フラグが5AHとなるので、この場合には次に払出モータフラグの値をチェックする(S35)。払出モータフラグは、払出残数カウンタがゼロとなる時、つまり、不足分なく遊技球を払出した時にA5Hに設定される(図10のST48)。したがって、払出モータフラグ≠5AHは、払出し残した遊技球が存在することを意味するので、払出残数カウンタの値を4倍した値をステップカウンタに格納する(S36)。また、動作ステイタスを3から1に変更して、リトライ・カウンタをクリアすると共に、モータ駆動タイマに9を設定する(S37,S38)。
この設定処理の結果、これ以降は、1ステップ=18mS毎に駆動データを更新する通常のモータ回転が開始されることになる(図5参照)。なお、以上の動作を図12と図14〜図15に基づいて確認すると、形式的に払出動作が完了して(ステップカウンタ=0)、動作ステイタスが1から2に変更された時(S15)、払出不足分があると動作ステイタスが2から3に変更される(S22)。そして、動作ステイタス3の状態で払出モータMOが低速回転して遊技球を1個払出した段階で、更に不足分がある場合には、動作ステイタスを3から1に変更して(S37)、その後は、不足分が解消されるまで動作ステイタス1における通常動作を実行するのである。
さて、図15(b)のモータリトライ中処理の説明を続けると、ステップS35の判定において払出モータフラグ=A5Hとなった場合には、先ず、動作ステイタス3から0に変更する(S39)。払出しを検出した状態(払出検出フラグ=5AH)で払出モータフラグがA5Hであるということは、動作ステイタス=3の状態で1個の遊技球を払出し、且つ払出残数カウンタがゼロとなったことを意味する(ST48参照)。つまり、不足分の払出しが完了したことを意味するので、動作ステイタスを3から0に変更して、その後、改めて払出動作が必要となる時期まで待機させるのである。そのため、リトライ・カウンタ、払出モータフラグ、及び払出検出フラグの値を全てゼロにする(S40)。
<モータ逆転処理(動作ステイタス4)>
続いて、図16(a)に基づいて払出モータMOのモータ逆転処理(動作ステイタス4)について具体的に説明する。このモータ逆転処理は、リトライ処理(図15(b))を、例えば32回繰り返しても遊技球が払出されないこと(球詰り状態)を、払出エラー処理(ST61、図13(a)参照)で検出したことにより実行される。
モータ逆転処理では、データ入力処理(ST11)で取得されたデータ(スイッチエッジデータ)のbit4の値を先ず抽出する(S80)。スイッチエッジデータのBit4は、図6に示す通り、モータ逆転スイッチSWのON/OFF状態を示している。
球詰り状態であることは、5AHに設定されたLEDフラグの値に基づいて(S73)、データ出力処理(ST17)で点灯されたエラー報知ランプERLによって広く報知される(図7及び図17参照)。そのため、係員は、迅速に当該遊技機まで急行して、モータ逆転スイッチSWをON操作すると思われる。
そこで、ステップS81の判定により、モータ逆転スイッチSWがON状態であると認定されれば、次に、モータ駆動タイマの値が0か否かを判定する(S82)。図13(a)のステップS74の処理に関して説明した通り、球詰りを検出した段階ではモータ駆動タイマが0に初期設定されている。そのため、初めてステップS82に移行したタイミングでは、ステップS82からステップS83の処理に移行して、モータを逆転させるべくモータ位置(0,1,2,3)が、1つ逆転した位置に設定される(S83)。具体的には、本来、0101→0110→1010→1001の順番となる駆動パルスデータΦ1〜Φ4を、逆方向に0101←0110←1010←1001に変化させる(S83)。
次に、モータ駆動タイマを9に初期設定すると共に(S84)、ボタン押しフラグBTを5AHに設定して処理を終える(S84)。モータ駆動タイマが9に設定されたことにより、その後、払出モータMOは、18mS毎に変化する駆動データΦ1〜Φ4によって通常の回転速度で逆転される。
ところで、球詰り状態が検出されてエラー報知ランプERLが点灯されてから、モータ逆転スイッチSWがON操作されるまでの間は、ステップS81からステップS86に処理が移行して、そのままモータ逆転処理を終える。その後、係員によってモータ逆転スイッチSWがON操作されると、上記した手順(S82〜S85)を経て、払出モータMOが逆転動作を開始するが、通常の場合には、数秒間のモータ逆転動作によって球詰り状態が解消すると思われる。
そして、係員がON状態を解除してモータ逆転スイッチSWをOFF状態に戻すと、ステップS81からステップS86の判定処理に移行する。モータ逆転スイッチSWによるモータ逆転動作を終えた段階では、ボタン押しフラグBTの値は5AHであるから(S85参照)、ステップS86からステップS87の処理に移行して、リトライ・エラーフラグRTYと、LEDフラグと、リトライ・カウンタとが全て0にクリアされる(S87)。また、ボタン押しフラグBTも0にクリアされ(S88)、動作ステイタスが4から3に変更され、モータ駆動タイマは350に設定される(S89)。
これらの処理の結果、その後の動作サイクルでは、リトライ処理(図15(b))が開始されることになる。先に説明した通り、リトライ処理では、払出モータMOがゆっくり順方向に回転して、1個目の遊技球を払い出し、その後、残りの遊技球については通常の回転速度で払出す。
図12には、この点も含めて図示されている。動作ステイタス3の状態でリトライエラー(球詰り)が生じると、エラー報知ランプERLが点灯されて動作ステイタス4の状態に移行する(図13)。その後、係員がモータ逆転スイッチSWをON操作すると払出モータMOが逆回転を開始する。その後、適当なタイミングでモータ逆転スイッチSWのON操作を解消すると、動作ステイタスが4から3に戻り、リトライ処理が開始される。
以上、実施例に係る払出制御基板5の動作を詳細に説明したが、具体的な記載内容は特に本発明を限定するものではなく、更に各種の変更が可能である。例えば、上記の実施例では、モータ逆転スイッチSWのON操作→OFF操作によるリトライ処理によっても遊技球が払出されない場合、再度、リトライ処理を例えば32回繰り返さない限り、モータ逆転スイッチSWのON操作が受け付けられない不便である。
そこで、この不便を解消するためには、図13(b)に示すように、ステップS70とステップS71の間で、毎回、モータ逆転スイッチSWのON/OFF状態を判定するのも好適である。図13(b)の変形例によれば、一度ON→OFF操作しても遊技球が払出されない場合には、再度、モータ逆転スイッチSWをON操作すれば良く、このON操作が直ちに受け付けられる(SS1,SS2)。そして、動作ステイタスが3から4に変わり(S74)、払出モータMOが直ぐに逆転を開始する(図16)。
また、これらの実施例では、係員がモータ逆転スイッチをON操作しない限り、払出モータMOが逆回転を開始しない不便がある。そこで、この点を解消するためには、モータ逆転動作を図16(b)のように変更すれば良い。なお、この場合には、払出エラー処理の最後で計数カウンタCTが00Hに初期設定される(S75)。
図16(b)のモータ逆転動作では、逆転スイッチを設ける代わりにクリアスイッチを設けている。そして、クリアスイッチがOFF状態であれば(S81)、所定回数MAXだけ、払出モータMOを自動的に逆方向に駆動している。具体的には、ステップS83の処理でモータ位置を変更する毎に、計数カウンタCTをインクリメントしている(SS20)。そして、計数値CTが所定値MAXを超えない限り、ステップS81〜S84の処理を自動的に繰り返している。
そして、計数値CTが所定値MAXに達した場合には、リトライ・エラーフラグRTYと、リトライ・カウンタとカウンタ変数CTを0クリアする(SS22)。また、モータ駆動タイマを350に設定して、動作ステイタスを3に変更する(SS22)。その結果、その後は、払出モータMOがゆっくり順方向に回転して、1個目の遊技球を払い出し、その後、残りの遊技球については通常の回転速度で払出すことになる。
このように、図16(b)の実施例では、エラー報知ランプERLの点灯の後に自動的にモータ逆転動作が開始されるので、係員が現場に到着した段階では球詰り状態が解消されて場合も多い。そこで、そのような場合には、係員は、クリアスイッチを長押しすることで、ステップS81からステップSS23の処理に移行させて、リトライ・エラーフラグRTYと、リトライ・カウンタと、LEDフラグを全て0クリアさせる(SS23)。
一方、自動的に開始されるモータ逆転動作によっても球詰り状態が解消されない場合には、ステップSS22の処理によって動作ステイタスが3に変更された後、リトライ処理を32回繰り返した後、再度、図16(b)の処理を実行することになる。このような場合、モータ逆転動作→リトライ処理を何回繰り返しても球詰りが解消されないと思われるので、係員は、払出モータMOの操作片BARを操作して球詰りを人為的に解消させるか、或いは、払出カセットそのものを交換する。なお、これらの人為的処理は、全ての実施例において同じである。また、リトライ処理の繰り返し回数を、もっと少なくしても良いのは勿論である。
ところで、上記の各実施例では、電源投入後(バックアップ復帰後を含む)初めての払出動作時には、あえて1個不足する遊技球を払出させて、最後の1個の遊技球を動作ステイタス3の状態(リトライ処理)で払出している。しかし、このような動作に代えて、最初の1個をリトライ処理で払出すのも好適である。
図21〜図23は、そのような動作を実現する実施例を示すフローチャートである。この実施例では、図7(a)メインルーチンのステップST8や、図18バックアップ復帰処理ステップST401において、スタートフラグを設定するのに代えて、払出リトライフラグを5AHに設定している(図21、図22)。また、これに関連して、図14(a)の処理も図23のように変更している。
この第2実施例の場合には、電源投入時(バックアップ復帰時を含む)に払出リトライフラグが5AHに設定されるので、最初に動作ステイタス0の状態になった時には、必ずステップS1からステップS5に移行することになり、動作ステイタスが0から3に直接遷移する。
電源投入時(及びバックアップ復帰時)に他の制御基板(典型的には主制御基板1)から特別な制御コマンドを受けることなく払出モータの位置決めができる点は実施例1の場合と同様であるが、この第2実施例の場合には、1個目の遊技球払出時に自動的に位置決めができる点が更に有利である。すなわち、例えば5個の遊技球を最初に払出す場合、第1実施例では4個の払出しの後、最後の1個の遊技球がゆっくり払出されるという不自然さがあるが、第2実施例では、5個の遊技球が一気に払出されるので違和感がない。なお、払出回転体は、図3に示したような回転体外周に沿って周方向へ球を運ぶもの以外にも、例えば、外周付近に沿って軸方向へ球を運ぶスクリュー式の回転体も適用可能である。
最後に、本発明が好適に適用される弾球遊技機について確認的に説明する。図図24(a)は、本実施例のパチンコ機21を示す斜視図であり、図25は、同パチンコ機21の側面図である。なお、パチンコ機21は、カード式球貸し機22に電気的に接続された状態で、パチンコホールの島構造体の長さ方向に複数個が配設されている。
図示のパチンコ機21は、島構造体に着脱可能に装着される矩形枠状の木製外枠23と、外枠23に固着されたヒンジHを介して開閉可能に枢着される前枠24とで構成されている。この前枠24には、遊技盤25が裏側から着脱自在に装着され、その前側には、ガラス扉26と前面板27とが夫々開閉自在に枢着されている。なお、図24(b)は、前枠24を、外枠23から開放させた状態であり、係員にとって操作容易な戸先側の位置にモータ逆転スイッチSWが配置され、ヒンジHの背面側の奥まった位置に、払出モータMOと操作片BARが配置されていることを示している。モータ逆転スイッチSWは、図25にも現れている。
前面板27には発射用の遊技球を貯留する上皿28が装着され、前枠24の下部には、上皿28から溢れ出し又は抜き取った遊技球を貯留する下皿29と、発射ハンドル30とが設けられている。発射ハンドル30は発射モータと連動しており、発射ハンドルの回動角度に応じて動作する打撃槌31(図27参照)によって遊技球が発射される。
上皿28の右部には、カード式球貸し機22に対する球貸し操作用の操作パネル32が設けられ、この操作パネル32には、カード残額を3桁の数字で表示するカード残額表示部32aと、所定金額分の遊技球の球貸しを指示する球貸しスイッチ32bと、ゲーム終了時にカードの返却を指令する返却スイッチ32cとが設けられている。ガラス扉26の上部には、大当り状態を示す大当りLEDランプP1が配置されている。また、この大当りLEDランプP1に近接して、補給切れ状態や下皿の満杯状態を示す異常報知LEDランプP2,P3が設けられている。
図26に示すように、遊技盤25には、金属製の外レールと内レールとからなるガイドレール33が環状に設けられ、その内側の遊技領域25aの略中央には、表示装置8(具体的には液晶カラーディスプレイ)が配置されている。また、遊技領域25aの適所には、図柄始動口35、大入賞口36、複数個の普通入賞口37(大入賞口36の左右に4つ)、2つの通過口であるゲート部38が配設されている。これらの入賞口35〜38は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。
表示装置8は、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置8は、中央部に特別図柄表示部Da〜Dcと右上部に普通図柄表示部39を有している。普通図柄表示部39は普通図柄を表示するものであり、ゲート部38を通過した遊技球が検出されると、表示される普通図柄が所定時間だけ変動し、遊技球のゲート部38の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止するようになっている。
図柄始動口35は、左右1対の開閉爪35aを備えた電動式チューリップで開閉されるよう例えば構成され、普通図柄表示部39の変動後の停止図柄が当り図柄を表示した場合には、開閉爪35aが所定時間だけ開放されるようになっている。そして、図柄始動口35に遊技球が入賞すると、特別図柄表示部Da〜Dcの表示図柄が所定時間だけ変動し、図柄始動口35への遊技球の入賞タイミングに応じた抽選結果に基づいて決定される停止図柄で停止する。
大入賞口36は、例えば前方に開放可能な開閉板36aで開閉制御されるが、特別図柄表示部Da〜Dcの図柄変動後の停止図柄が「777」などの大当り図柄のとき、「大当り」と称する特別遊技が開始され、開閉板36aが開放されるようになっている。大入賞口36の内部に特定領域36bがあり、この特定領域36bを入賞球が通過すると、遊技者に有利な特別遊技が継続される。
大入賞口36の開閉板36aが開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板36aが閉じる。このとき、遊技球が特定領域36bを通過していない場合には特別遊技が終了するが、特定領域36bを通過していれば、最大で例えば15回まで特別遊技が継続され、遊技者に有利な状態に制御される。さらに、変動後の停止図柄が特別図柄のうちの特別状態発生図柄であった場合には、特別状態を発生させる。
図27に示すように、前枠24の裏側には、遊技盤25を裏側から押さえる裏機構板40が着脱自在に装着されている。この裏機構板40には開口部40aが形成され、その上側に賞球タンク41と、これから延びるタンクレール42とが設けられている。裏機構板40の側部には、タンクレール42に接続された払出装置43が設けられ、裏機構板40の下側には払出装置43に接続された通路ユニット44が設けられている。払出装置43から払出された遊技球は、通路ユニット44を経由して上皿排出口28a(図24)から上皿28に払出されることになる。
図27(c)に示すように、払出装置43は、払出モータMOと操作片BARとを含め、全体が払出カセットに一体化されており、ヒンジHの裏側であって、前枠24を完全に開放しない限り操作できない位置に配置されている(図27(b))。このような奥まった位置に払出装置43を配置することにより、万一、不正遊技者が合鍵によって前枠24を開放したとしても、払出装置43を容易には違法改変できないようにしている。
裏機構板40の開口部40aには、遊技盤25の裏側に装着された裏カバー45と、入賞口35〜37に入賞した遊技球を排出する入賞球排出樋(不図示)とが嵌合されている。この裏カバー45に装着されたケースCA1の内部に主制御基板1が配設され、その前側に図柄制御基板2が配設されている(図25参照)。主制御基板1の下側で、裏カバー45に装着されたケースCA2の内部にランプ制御基板4が設けられ、隣接するケースCA3の内部に音声制御基板3が設けられている。
これらケースCA2,CA3の下側で、裏機構板40に装着されたケースCA4の内部には、電源基板7と払出制御基板5が設けられている。この電源基板7には、電源スイッチ53とRAMクリアスイッチ54とが配置されている。これら両スイッチ53,54に対応する部位は切欠かれ、両スイッチを指で同時に操作可能になっている。また、ケースCA4には、払出制御基板5に設けられたモータ逆転スイッチSWの操作部が現れている。
発射ハンドル30の後側に装着されたケースCA5の内部には、発射制御基板6が設けられている。そして、これらの回路基板1〜7は夫々独立して構成され、電源基板7と発射制御基板6を除く制御基板1〜5には、ワンチップマイコンを備えるコンピュータ回路が搭載されている。