以下、本発明の実施の形態を、図面に示す実施例を参照して説明する。
ここでは弾球遊技機として、いわゆるフィーバー機と呼ばれるタイプの第一種パチンコ機(弾球遊技機)を例にとり、その構造を図1〜図15を参照して説明する。
パチンコ機1の前面部は、本体枠2と、中枠3と、前面枠4と、上皿部5と、下皿部6と、施錠装置7とから構成されている。
本体枠2は、木製の板状体を略長方形の額縁状に組立て固着したものである。中枠3は、全体がプラスチック製で、枠体部(図示略)と下板部(図示略)とを有して本体枠2の内周側に嵌合し取り付けられている。
ここで枠体部は、上端から下方へ略2/3程度に略長方形の額縁状に形成され、上端部には、前面枠4の枠飾りランプ用レンズ4bに対応して、左側に賞球表示LED(図示略)及び賞球表示LED基板4d(図16参照)が、右側にストップ表示LED(図示略)及びストップ表示LED基板4f(図16参照)が配設されている。
また、下板部は、下端から上方へ略1/3程度を占め、左端には、上皿部5に形成されたスピーカ面5aに対応すべく、遊技状態に応じた効果音その他の音(以下音声情報等という)を発生させるスピーカ(図16参照)が配設され、略中央には、遊技球を発射する発射装置ユニット8(図5参照)に上皿部5に貯留された遊技球を供給する供給装置等(図示略)が設けられている。さらに、下方には下皿部6が設けられ、右端中央には施錠装置7が設けられている。
下皿部6は、灰皿や玉抜きレバー等を備えて、パチンコ機1の内部から遊技球を排出するための排出口6cが開設され、右端に発射ユニット8を操作する発射ハンドル9が設けられている。また、この発射ハンドル9には、遊技者がタッチしていることを検出するタッチスイッチ9aが装着され、その近傍には、発射停止を一時的に指令する発射停止スイッチ9bが配置されている。施錠装置7は、正面視すると鍵穴を備えた略長方形状を呈し、前面枠4を閉鎖した場合に施錠するためのものである。
前面枠4は、全体がプラスチック製であり、遊技盤10を前方から視認するべく、遊技盤10に形成された遊技領域11の形状に対応して上側が略円弧状を呈し、全体が略弾丸形状に開設された開口部4aを有している。そして、その裏面には、開口部4aに応じてガラス板が嵌められた略長方形状のガラス枠(図示略)が装着されている。また、この前面枠4は、パチンコ機1の前面全体の2/3のサイズを占め、中枠3の左端に軸着され開閉可能に形成されている。さらに、上端部には、枠飾りランプ用レンズ4bが設けられ、このレンズ4b内部には、開口部4a上端の円弧部分に沿って、枠飾りランプ基板4g(図16参照)及び複数個の遊技効果ランプ(図示略)が配設されている。
上皿部5は、前面枠4の下側で、中枠3の左端に軸着され開閉可能に形成されている。皿外縁部5dには、玉抜きボタンや遊技球の貸出・返却ボタン等が配設されている。またパチンコ機1の内部から遊技球を排出するための排出口5cが開設されている。左端には、複数の長孔を有するスピーカ面5aが形成され、その裏面には、音量スイッチ基板12(図16参照)が設けられている。パチンコ機1の左端側には、プリペイドカードユニット13が装着されている。
次に、本実施例の遊技盤10の表面構造を図2を参照して説明する。
遊技盤10は、略長方形の木製の板状体であって、後述する裏機構盤100(図5参照)により保持され、その表面に設けられた外レール14と内レール15とにより略円形状に形成される遊技領域11内に、特別図柄表示装置16と、第一種始動口(普通電動役物)17と、変動入賞装置18と、左上入賞口19、右上入賞口20、左下入賞口21、右下入賞口22と、多数の障害釘23と、一対のランプ風車24、25や一対の風車26、27等が配設されて、構成されている。
特別図柄表示装置16は、遊技領域11の略中央部に配置され、センター役物28と、液晶表示盤29とを備えている。ここで、液晶表示盤29は、複数種類の特別図柄(図示略)等を変動表示するもので、その映像画面は略長方形状を呈している。また、この液晶表示盤29は、遊技球が第一種始動口(普通電動役物)17に入球することにより、その映像画面に表示される各特別図柄をそれぞれ変動させて停止表示させるものである。そして、例えば、図柄が「7、7、7」の3桁同一図柄で揃って停止表示すると、変動入賞装置18に配設された後述する大入賞装置30が開放される。また、センター役物28は、液晶表示盤29の前面周辺部に額縁状に突設して装着され、普通図柄表示装置31と、翼状部32、33とステージ34とを備えている。
普通図柄表示装置31は、センター役物28上部中央に配置され、7セグメント表示器31aと、普通図柄保留表示LED31bとを有している。また、この普通図柄表示装置31の両側にはそれぞれ、略翼状に延びた翼状部32、33が配設されている。さらに、その下側には、4個の丸形の緑色LEDで構成され、横一列状に特別図柄保留表示LED35が設けられている。これは、第一種始動口(普通電動役物)17に入球した遊技球の数を4個まで保留し、入球ごとに順次点灯し左へシフト表示するものである。そして、液晶表示盤29で次の特別図柄の変動が開始するたびに、未始動回数が消化され、1個の特別図柄保留表示LED35は消灯される。
7セグメント表示器31aは、1〜9の奇数数字を変動表示させるもので、後述する左右の普通図柄作動通過口36、37のいずれかを遊技球が通過することにより、変動して所定時間経過後に1種類の奇数数字が停止表示される。そして、例えば「7」で停止表示すると、第一種始動口(普通電動役物)17が所定時間(例えば、0.5秒)開放される。
普通図柄保留表示LED31bは、4個の丸形の赤色LEDで構成され、7セグメント表示器31aの両側に2個ずつに分けて配置されている。これは、左右の普通図柄作動通過口36、37を通過した遊技球の数を4個まで保留とし、通過ごとに順次点灯しシフト表示するものである。次の7セグメント表示器31aの変動表示が開始するたびに、未始動回数が消化され、1個の普通図柄保留表示LED31bは消灯される。
翼状部32、33は、上述したように、センター役物28上部から側部にかけて中空状に形成され、上部内部には、複数個の遊技効果ランプ38(図3参照)が配設されている。また、各外側部上端には、遊技球の普通図柄作動通過口36、37がそれぞれ左右両側に設けられ、各内側部下端には、遊技球の通過口出口(図示略)がそれぞれ設けられて、これらの通過口36、37と通過口出口間には、それぞれ図示しない通過筒部が設けられている。そして、各通過口36、37から入った遊技球は、内部に配設された左、右普通図柄作動通過口通過検知スイッチ36s、37s(図4参照)を通過し、各通過筒部を通過して各通過口出口から飛び出し、ステージ34上を転動する。ステージ34はセンター役物28下部に配置され、各通過口出口からの遊技球を中央寄りに集めつつ、さらに、遊技盤10面上を流下させるべく、一部傾斜状に形成されている。なお、遊技球の普通図柄作動通過口通過検知スイッチ36s、37sのいずれかの通過により、普通図柄表示装置31における7セグメント表示器31aが変動表示する。
第一種始動口(普通電動役物)17は、特別図柄表示装置16におけるセンター役物28に有するステージ34の中央直下に配設され、いわゆるチューリップ式で左右に一対の翼片部が開閉するべく形成されている。内部には、遊技球の通過を検知する第一種始動口(普通電動役物)入賞検知スイッチ17s(図4参照)が備えられている。この一対の翼片部が左右に開くと、遊技球の入球可能な開放状態となり、一対の翼片部が閉じると、遊技球の入球困難な閉鎖状態となる。
変動入賞装置18は、上記第一種始動口(普通電動役物)17の下方に配設され、前面側が略逆台形状に形成された基板41に、大入賞装置30と、左入球口42と右入球口43とを備えている。ここで、大入賞装置30は、略中央に形成され、帯状に開口された大入賞口44と、この大入賞口44を開放・閉鎖する開閉板39と、この開閉板39を開閉するための大入賞口ソレノイド45(図4参照)と、連動杆(図示略)と、特定領域開閉シャッター(図示略)と、この特定領域開閉シャッターを作動させるための開閉シャッターソレノイド40と、特定領域(図示略)と、特定領域外領域(図示略)とから構成されている。
また、左入球口42は、大入賞装置30の左斜め上方に配設されて、内部に左入球口通過検知スイッチ42s(図4参照)が設けられている。さらに、右入球口43は、大入賞装置30の右斜め上方に配設されて、内部に右入球口通過検知スイッチ43s(図4参照)が設けられている。アウト口46は、変動入賞装置18における大入賞装置30の中央直下に配設されている。バック球防止部材47は、アウト口46の下部に設けられ、遊技領域11に到達せず戻ってきた遊技球が再び発射位置に戻ることを防止するものである。ファール球防止部材48は、内レール15の先端部に取り付けられ、返しゴム49は、ファール球防止部材48の位置とは略正反対側の、遊技盤10の右半分側の位置であって、外レール14に沿って嵌合状に取り付けられている。
一対のランプ風車24、25はそれぞれ、特別図柄表示装置16から左右斜め上方に配設されている。左上入賞口19及び右上入賞口20はそれぞれ、特別図柄表示装置16から左右両側方に配設されている。左下入賞口21及び右下入賞口22はそれぞれ、特別図柄表示装置16から左右斜め下方に配設されている。
一対の風車26、27はそれぞれ、特別図柄表示装置16から左右両側方であって、特別図柄表示装置16と左上入賞口19または右上入賞口20間に配設されている。一対のサイドランプ50、51はそれぞれ、遊技領域11の左右両端部において、縦帯状で相対称状に配設されている。なお、多数の障害釘23は、以上説明した各装置との位置バランスを考慮して、遊技領域11にパチンコ遊技に適するべく、配設されている。
次に、本実施例の遊技盤10上に位置する各種LED、ランプと、これらの基板について図3を参照して説明する。遊技盤10における遊技領域11には、センター役物28に備える普通図柄表示装置31に、4個の丸形の普通図柄保留表示LED31b用の略長方形状の基板31fが配設されている。また、この基板31fの下側であって、左右の翼状部32、33周辺に、4個の丸形の特別図柄保留表示LED35及び4個の遊技効果ランプ38兼用の基板35fが配設されている。また、一対のランプ風車24、25の位置には、2個の丸形の遊技効果ランプ24r、25rを各ランプ風車軸の両側にそれぞれ備えた略円形状の基板24f、25fが配設されている。また、一対のサイドランプ50、51の位置には、3個の丸形の遊技効果ランプ50r、51rを縦列にそれぞれ備えた略縦帯状のサイドランプ基板50f、51fが配設されている。
また、左上入賞口19の位置には、1個の丸形の遊技効果ランプ19rを略中心に備えた略V字状の左上入賞口基板19fが、右上入賞口20の位置には、1個の丸形の遊技効果ランプ20rを略中心に備えた略V字状の右上入賞口基板20fが、それぞれ配設されている。また、左下入賞口21の位置には、1個の丸形の遊技効果ランプ21rを略中心に備えた略U字状の左下入賞口基板21fが、右下入賞口22の位置には、1個の丸形の遊技効果ランプ22rを略中心に備えた略U字状の右下入賞口基板22fが、それぞれ配設されている。さらに、第一種始動口(普通電動役物)17の位置には、2個の丸形の遊技効果ランプ17rを並列に備えた略コ字状の第一種始動口(普通電動役物)基板17fが配設されている。
次に、本実施例の遊技盤10の裏面側の遊技球経路及びスイッチ等の配設について図4を参照して説明する。遊技盤10の中央部には、略横楕円形状のセンター役物取付用貫設孔28hが設けられ、このセンター役物取付貫設孔28hの左右斜め上側には、円形状のランプ風車取付用貫設孔24h、25hが、左右側方には、略だるま形状の左上入賞口取付用貫設孔19h及び右上入賞口取付用貫設孔20hが、左右斜め下側には、略楕円形状の左下入賞口取付用貫設孔21h及び右下入賞口取付用貫設孔22hが、中央直下には、略逆円錐台形状の第一種始動口取付用貫設孔17hが、それぞれ設けられている。また、左上入賞口取付用貫設孔19h及び右上入賞口取付用貫設孔20hのそれぞれの外側には、縦長孔状のサイドランプ取付用貫設孔50h、51hが設けられている。さらに、第一種始動口取付用貫設孔17hの下側には、略逆台形状の変動入賞装置取付用貫設孔18hが設けられている。
また、第一種始動口(普通電動役物)17の裏側には、第一種始動口(普通電動役物)ソレノイド52が配設され、その内部には、上述したように、第一種始動口(普通電動役物)入賞検知スイッチ17sが配設されている。左、右普通図柄作動通過口36、37の内部には、上述したように、普通図柄作動通過口通過検知スイッチ36s、37sがそれぞれ配設されている。さらに、変動入賞装置18に形成された大入賞装置30には、左右に分かれて、開閉板39を開閉するための大入賞口ソレノイド45と、特定領域開閉シャッターを作動させるための開閉シャッターソレノイド40とがそれぞれ配設され、大入賞口44の左右端側の特定領域外領域内、特定領域内にもそれぞれ、カウント通過検知スイッチ53とカウント検知及び特定領域通過検知スイッチ54とが配設されている。なお、上述したように、左入球口42及び右入球口43の内部にもそれぞれ、左入球口通過検知スイッチ42s、右入球口通過検知スイッチ43sが配設されている。
さらに、遊技盤10の裏面側には、後述する機構盤100において、左上入賞口19、左下入賞口21、第一種始動口(普通電動役物)17及び左入球口42を接続した左セーフ球集合樋55と、右上入賞口20、右下入賞口22及び右入球口43を接続した右セーフ球集合樋56とが接続されている。また、アウト口46の裏側から漏斗状にアウト球集合樋58が配設されている。
次に、本実施例のパチンコ機1の裏面構造について図5を参照して説明する。
前面枠4は中枠3にあって、前面枠4の上下端の位置に設けられた一対のヒンジ101により、開閉可能に支持されている。機構盤102は中枠3にあって機構盤102の上下端の位置に設けられた一対のヒンジ103により、開閉可能に支持されている。遊技盤10は中枠3の表面側に着脱可能に取り付けられている。上端側にあるヒンジ101の配設位置からみて左側には、タンク球切れ検知スイッチ104をタンク底部に備えた賞球タンク105と、この賞球タンク105に接続されるタンクレール106とが取り付けられている。また、タンクレール106の右側には、球抜きレバー107が設けられ、その下流側には、補給球切れ検知センサ108が、さらに、その下流側には、賞球払出装置109が配設されている。
続いて、遊技球の振り分け部110が賞球払出装置109の下流側に設けられている。タンクレール106の下流側には、特別図柄表示装置16における液晶表示盤29を格納した蓋付きの裏ケース111が、この裏ケース111の下側には、後述する主制御部140(図16参照)である主制御基板340を格納した主制御基板ケース112がそれぞれ設けられている。主制御基板ケース112の左側には、発射装置制御基板(図示略)を格納した発射装置制御基板ケース113、タッチ感度調整つまみ114、球飛び強弱調整つまみ115及び発射制御集合中継基板116が設けられている。機構盤102の左下方部には、上述した発射装置ユニット8が、同じく右下方部には、補給球詰まり、下皿部満タン、主電源電圧異常、発射停止、主制御基板通信異常、賞球モータ異常などを7セグメントLEDで表示する枠状態表示器117を備えた枠制御部150(図16参照)である枠制御基板(第一周辺制御基板350)を格納した枠制御基板ケース118が設けられている。また、特別図柄表示装置16の液晶表示盤29の作動制御を行う、特別図柄制御部160(図16参照:第二周辺制御部)が形成される特別図柄制御基板(第二周辺制御基板360)、各種ランプ類の制御を統括して行う、ランプ制御部170(図16参照:第三周辺制御部)が形成されるランプ制御基板(第三周辺制御基板370)、スピーカ400からの音声出力制御を司る音声制御部180(図16参照:第四周辺制御部)が形成されるランプ音声基板(第四周辺制御基板380)もそれぞれ取り付けられている。
一方、機構盤102の右上端部には、ヒューズボックス119、電源スイッチ120、電源ターミナル基板121及び大当り、発射装置制御、球切れ、扉開放、賞球、球貸し用等の遊技機枠用外部接続端子を備えた端子基板122が設けられている。また、外部からの電力の供給を受けるための電源ケーブル123も端子基板122の下側に配設されている。枠制御基板を格納した枠制御基板ケース118からは接続ケーブル124が上方へ延出し、電源ケーブル125を備えたプリペイドカードユニット13に接続されている。また、機構盤102の略中央下端部には、下皿部用球通路部材126が設けられている。
次に、本実施例のパチンコ機1の裏機構盤100について上記と重複する部分はあるが、図6を参照して説明する。裏機構盤100の上部には、タンク球切れ検知スイッチ104をタンク底部に備えた賞球タンク105と、この賞球タンク105に接続されるタンクレール106とが取り付けられている。また、タンクレール106の中間位置には、補給球切れ検知スイッチ108が、さらに、その下流側には、賞球払出装置109が配設されている。続いて、遊技球の振り分け部110が賞球払出装置109の下流側に設けられている。タンクレール106の下流側には、下皿部満タンスイッチ127が設けられ、ガイドレール131は、裏機構盤100の略中央下端部に設けられた下皿部用球通路部材126に連通している。また、裏機構盤100の右下部にはアンプ基板128が取り付けられ、その外側にはリセットスイッチ129が設けられている。
次に、本実施例のパチンコ機1のセーフ球の流下経路について図7〜図9を参照して説明する。図7に示すように、前記左セーフ球集合樋55及び前記右セーフ球集合樋56はそれぞれその下端部分が、なだらかな下向勾配あるいは階段形状に形成されたセーフ球の流下経路を有し、さらにそれらの下部がそれぞれ開口状態とされて、アウト口46の裏側から漏斗状に配設されたアウト球集合樋58にそれぞれ連通されている。図8には、右セーフ球集合樋56の下端に階段状に区画形成された通路57上を、右上入賞口20、右下入賞口22及び右入球口43に入球したセーフ球が転動しながらアウト球集合樋58へ流下している形態を表している。また、図9には、アウト球集合樋58に形成された通路57上をセーフ球が流下している形態を表している。
次に、本実施例のパチンコ機1の賞球払出装置109について、図10〜図14を参照して説明する。図10に示すように、賞球払出装置109は、ガイドレール223上を流下される賞球を受け止め、この賞球を1個宛払い出すカム210と、このカム210のカム軸211を駆動させるモータ212と、このカム軸211にカム210と並列して取り付けられ、複数のスリットが形成された回転円板213と、この回転円板213に近接して配置された賞球払出センサ214(ここでは、カム210の回転角を検知するものである)と、この賞球払出センサ214が取り付けられている賞球払出装置センサ基板215と、これらの部品を格納するケース本体217とそのケース蓋216とを備える。
本実施例において前記カム210は、カム軸211と直交する方向に凸部210aが90度毎に4個設けられており、図12(c)に示すように、賞球は各凸部210a間に形成される凹所内に一旦乗せられ、カム軸211が90度回転されるとき、カム210の凸部210a間の凹所内に乗せられた賞球が払い出されることになる。本実施例においては賞球の払出能力を高めるため、図11に示すように、ガイドレール223に隔壁を設けて賞球を流下させる2列の球通路218を並列状態に配置している。したがって、カム軸211には、払い出すべき賞球を受け止め、この賞球を1個宛払い出すために2個のカム210が、カム軸211と直交する方向に取付角度(本実施例では90度)を変えて、並列状態で取り付けられている。
各球通路218は、図12、図13に示すように、カム軸211の手前において蛇行状態に形成されており、これによって形成された球通路218の突起部219とカム210との間隔において、1個宛の賞球の払い出しを規制している。本実施例においてカム軸211には、上述したように、並列して2個のカム210が取付角度(本実施例では90度)を変えて取り付けられているので、カム軸211が90度回転されれば、各球通路218においてそれぞれ1個、合計2個の賞球が、またカム軸211が1回転されれば、それぞれ4個、合計8個の賞球が払い出されることになる。
モータ212は払い出すべき賞球に応じて駆動され、この駆動に基づいてカム軸211は回転制御される。このカム軸211の回転数は、賞球払出センサ214において、その回転円板213に所定角度間隔(例えば45度)毎に形成されたスリット位置を光電的に検知することによって求められる。求められた回転数はモータ212にフィードバックされるとともに、上述したように、賞球の払出数としてカウントされる。例えば、15球の賞球払出であれば、図13(a)に示す一方の球通路218においては斜線を付した7個の賞球が、また図13(b)に示す他方の球通路218においては斜線を付した8個の賞球がそれぞれ、払い出しの対象となり、カム軸211は1回転と7/8だけ回転し、このとき賞球払出センサ214はスリットを15回カウントしている。カム軸211の回転後、図14(a)に示す一方の球通路218においては7個の賞球が払い出され、次に払い出される賞球はカム210の凸部210aと球通路218の突起部219との間隔において規制されている。また、図14(b)に示す他方の球通路218においては8個の賞球が払い出され、次に払い出される賞球はカム210の凸部210a間に形成される凹所内に乗せられる(図12も参照)。
なお、賞球払出センサ214としては、上述のようなスリットを光電的に検知する態様のほか、図15(a)に示すように、回転円板213の円周上に溝220を設け、この溝220を近接スイッチ221によって非接触状態で検知したり、あるいは図15(b)に示すように、溝220をマイクロスイッチ222によって接触状態で検知することも可能である。また、カム軸211の回転を検知する方式に代えて、払い出される賞球をリミットスイッチ、あるいは光電管等で検知することも可能である。
次に、本実施例のパチンコ機1の電子制御装置130について、図16を参照して説明する。まず、電子制御装置130は、主制御部140と、共通信号伝送経路である共有バス500により、その主制御部140に直列的に接続された枠制御部150、特別図柄制御部160、ランプ制御部170及び音声制御部180とを含んで構成されている。主制御部以外の4つの制御部150、160、170、180は前述の通り、第一〜第四の周辺制御部をなすものである。
主制御部140は、CPU141と、RAM142と、ROM143と、入出力ポート144とをバス145により相互に接続したものである。そして、CPU141はROM143に格納された制御プログラムにより、RAM142をワークエリアとしてパチンコ機1全体の作動制御(すなわち、遊技の基本進行制御)を司る。また、ROM143に記憶された当否判定プログラムにより、CPU141が主体となって当否判断制御を行う。また、入出力ポート144には前記した共有バス500が接続され、後述する通り入出力ポート144からその共有バス500へ、各周辺制御部150、160、170、180へ処理内容を指示する、指令信号たるコマンドデータを送信する。なお、主制御部140から各周辺制御部150、160、170、180へは、一方向形式でデータが伝送される。また、該主制御部140には、電源ターミナル基板121が接続されている。なお、主制御部140は、それ自体が遊技者の賞球獲得上の利害に関与する第一種作動部となっていることは明らかである。また、RAM142は、遊技者の賞球獲得上の利害に関与する制御情報を記憶する第一種制御情報記憶手段をなす。
中継基板200には、タッチスイッチ9a、発射停止スイッチ9b、右普通図柄作動通過口通過検知スイッチ37s、左普通図柄作動通過口通過検知スイッチ36s、カウント検知スイッチ53、カウント検知及び特定領域通過検知スイッチ54、ヴォリュームスイッチ202、左入球口通過検知スイッチ42s、右入球口通過検知スイッチ43s、タンク球切れ検知スイッチ104及び補給球切れ検知センサ108等が接続され、中継基板200の出力端子は、入出力ポート144と接続されている。また、第一種始動口(普通電動役物)入賞検知スイッチ17sも、入出力ポート144に接続されている。さらに、賞球払出センサ214の出力は中継基板200を介して主制御部140に入力されるとともに、枠用端子基板200aを介して枠制御部150にも入力される。
枠制御部150は、主制御部140と同様の演算回路構成要素151〜155を含んで構成され、入出力ポート154において共有バス500に接続されている。また、入出力ポート154には、普通図柄表示装置基板31f、役物作動を司る各種ソレノイド40、45、賞球払出装置109、発射装置制御基板201等が接続されている。なお、枠制御部150と普通図柄表示装置基板31f(及びこれに接続される普通図柄表示装置31)、役物作動を司る各種ソレノイド45、52、賞球払出装置109、発射装置制御基板201(及びこれに接続される発射装置)等は、遊技者の賞球獲得上の利害に関与する第一種作動部となっている。また、RAM152は、遊技者の賞球獲得上の利害に関与する制御情報を記憶する第一種制御情報記憶手段をなす。
特別図柄制御部160は、主制御部140と同様の演算回路構成要素161〜165を含んで構成され、入出力ポート164において共有バス500に接続されている。入出力ポート164には、液晶表示盤29が接続されている。なお、特別図柄制御部160と、特別図柄を表示する液晶表示盤29は、遊技者の賞球獲得上の利害に関与する第一種作動部と見ることもできる。
ランプ制御部170は、主制御部140と同様の演算回路構成要素171〜175を含んで構成され、入出力ポート174において共有バス500に接続されている。入出力ポート174には、枠飾りランプ基板4g、各種ランプ基板17f、20f、21f、22f、24f、25f、50f、51f、各種LED基板4d、4f、35fが接続されている。これら各基板にランプあるいはLEDが1又は複数個接続される。本実施例では遊技機の正面にランプ及びLED(以下、総称する場合は単にランプといい、符号410により代表させる)が例えば32個配置してある。これらランプのうちの幾つかは、複数個のランプを常に同時に点灯し消灯するものであるが、ここではこれらの複数個からなるランプの組を夫々1個とみなす。これら32個のランプはゲームの進行に対応して点灯・消灯または点滅する。なお、ランプ制御部170とこれに接続される各種基板類(ひいてはランプ等)は、いずれも遊技者の賞球獲得上の利害に関与しない第二種作動部となっている。
音声制御部180は、主制御部140と同様の演算回路構成要素181〜185を含んで構成され、入出力ポート184において共有バス500に接続されている。入出力ポート184には、サウンドジェネレーター203、音量スイッチ基板12が接続されている。サウンドジェネレーター203は、図示しないLSI等に格納された音声データと音声出力モジュールとに基づいて、これに接続されたスピーカ400より、ゲームの進行に対応した各種の音声出力を行う。音量スイッチ基板12は、図示しない音量スイッチの操作に伴い、サウンドジェネレーター203に対して出力音量の設定を行うものである。なお、音声制御部180とこれに接続されるサウンドジェネレーター203等は、いずれも遊技者の賞球獲得上の利害に関与しない第二種作動部となっている。
次に、賞球動作は、以下の順序で実行される。
主制御部140は、遊技球がカウント検知スイッチ53またはカウント検知及び特定領域通過検知スイッチ54を通過したら15個の賞球個数データを、第一種始動口(普通電動役物)入賞検知スイッチ17sを通過したら6個の賞球個数データを、それ以外の場合、例えば、左右入球口42、43の通過検知スイッチ42s、43sの通過を検知した場合などにおいては、10個の賞球個数データを、枠制御部150に対してその検知順に、枠制御部150を作動指令対象とする指令信号として、前記した共有バス500を介して送信する。(すなわち、固有賞球数はここでは、6個、10個あるいは15個である。)枠制御部150は、主制御部140からの賞球個数データを受け取り、賞球払出信号の送信により賞球払出装置109を作動させる。
また、主制御部140は、上述の各種検知スイッチの出力に基づいて遊技状態を判断し、また、その遊技状態に基づいて当否判定を行うとともに、判定内容に応じて対応する図柄表示態様で画像表示制御を行うためのデータを作成する。例えば、主制御部140は、第一種始動口(普通電動役物)入賞検知スイッチ17s、カウント検知スイッチ53、カウント検知及び特定領域通過検知スイッチ54等の検知結果や、特別図柄当否判定乱数の取得値などを使用して、遊技が行われていない客待ちの状態、遊技は行われているが始動入賞がない状態(変動準備状態)、始動入賞があった状態、及び、特別遊技状態なども判断する。また、始動入賞が検知されると乱数値に基づいて当否判定が行われ、その判定結果に基づいて特別図柄の変動、または確定などの表示態様制御のためのデータが作成される。このデータは、特別図柄制御部160を作動指令対象とする指令信号として、前記した共有バス500を介して送信される。
さらに、枠飾りランプ基板4g等の各種ランプやサウンドジェネレーター203は、特別図柄制御部160の制御による特別図柄の変動・停止表示態様、リーチ発生の有無、リーチ表示態様(全回転、コマ送り、逆進、図柄の拡大・縮小など)、特別遊技態様、及び、遊技モード(確率変動、時短など)等に応じてその態様は制御される。その制御指令の指令信号は、ランプ制御部170あるいは音声制御部180を作動指令対象とする指令信号として、前記した共有バス500を介して送信される。
次に、主制御部140と特別図柄制御部160とにより実行される各種ジョブのうち、主要なジョブについて以下に説明する。まず、主制御部140により実行されるメインジョブについて図17を参照して説明する。これは、主制御部140のROM143に格納されたプログラムに基づき、CPU141により実行されるものである。すなわち、スタックポインタをRAM142の所定のアドレスに設定した後(S10)、初期化終了の判定が行われる(S20)。初期化が終了していれば(S20:YES)、LEDジョブ(S30)からスイッチジョブ(S70)までのジョブが実行される。また、初期化が終了していなければ(S20:NO)、初期化ジョブ(190)が実行される。
LEDジョブ(S30)においては、普通図柄及び普通図柄未始動回数の表示態様データや、特別図柄未始動回数の表示態様データなどが出力される。等速乱数ジョブ(S40)では、RAM142の特別図柄当否判定乱数メモリや汎用カウントメモリ(図示略)などが更新される。非等速乱数ジョブ(S50)では、外れ普通図柄乱数メモリ(図示略)が更新される。なお、汎用カウントメモリ(図示略)は、ユーザーリセットごとの「0」〜「255」の値の作成や、コマンドジョブ、飾りジョブの実行などに使用される。また、音楽作成ジョブ(S60)では、音楽や音声に関するデータの作成が行われ、スイッチジョブ(S70)では、各種検知スイッチの読み込みが行われる。すなわち、発射停止検知信号、タッチ検知信号、ヴォリューム検知信号、カウント検知信号、特定領域通過検知信号、普通図柄作動通過口通過検知信号、左右入球口通過検知信号などの各種信号が中継基板200を介して主制御部140に取り込まれ、また、第一種始動口(普通電動役物)入賞検知スイッチ17sから第一種始動口入賞検知信号が取り込まれる。
さらに、カウント検知スイッチ53またはカウント検知及び特定領域通過検知スイッチ54に異常があるか否かが判定され(S80)、異常がなければ(S80:YES)、特別図柄メインジョブ(S90)から音声ジョブ(S110)までのジョブが実行される。また、異常(球詰まりや断線など)があれば(S80:NO)、エラージョブ(S130)が実行される。
特別図柄メインジョブ(S90)においては、主制御部140と特別図柄制御部160とが協調して動作するために必要なデータに関するジョブが実行される。このジョブについては後述する。また、普通図柄メインジョブ(S100)では、普通図柄及び普通図柄未始動回数の表示態様データの作成が行われる。音声ジョブ(S110)では、遊技状態に応じた音声のデータが出力される。
この後、再び、カウント検知スイッチ53またはカウント検知及び特定領域通過検知スイッチ54に異常があるか否かが判定され(S120)、異常がなければ(S120:YES)、各フラグ状態がバックアップメモリにセットされ(S140)、賞球信号ジョブ(S150)、情報信号ジョブ(S160)、コマンドジョブ(S170)、及び残余時間ジョブ(S180)が実行される。各種スイッチに異常がある場合には(S120:NO)、エラージョブ(S130)が実行される。
賞球信号ジョブ(S150)においては、賞球払い出しに関するデータの作成や出力が行われ、情報信号ジョブ(S160)では、他の制御部への情報出力に必要なデータの作成が行われる。さらに、コマンドジョブ(S170)では、特別図柄管理のためのコマンドの入出力が行われ、残余時間ジョブ(S180)では、非等速乱数の呼出しや、汎用乱数メモリ(図示略)の更新が行われる。
次に、上記メインジョブの一連の流れの中で実行される、賞球総数記憶ジョブの流れを図18を参照して説明する。S200において各入賞口に入賞球があったか否かを確認し、肯定判断(YES)であれば、S210において入賞した入賞口の賞球払出個数が15個用か否かを判断する。肯定判断(YES)であれば、S220に進んで残球数カウンタ(RAM141内に形成される)に賞球個数として「15」を加算し、S270へスキップする。また、S210において否定判断(NO)であれば、S230に進み、入賞した入賞口の賞球払出個数が6個用か否かを判断する。肯定判断(YES)であれば、S240に進んで残球数カウンタに賞球個数として「6」を加算し、S270へスキップする。さらに、S230において否定判断(NO)であれば、S250に進み、入賞した入賞口の賞球払出個数が10個用か否かを判断する。肯定判断(YES)であれば、S260に進んで残球数カウンタに賞球個数として「10」を加算する。
次いで、S270において、賞球個数信号を主制御部140側から枠制御部150側へ送信する。なお、S200、あるいはS250において、否定判断(NO)であれば、S280へスキップする。S280に進んで、賞球払出装置109において賞球が賞球払出センサ214により検出されたか否かを確認する。肯定判断(YES)であれば、S290に進んで、主制御部140の残球数カウンタから「1」だけ減算する。残球数カウンタの減算が進み、これがゼロになると、払出賞球総数の全てが払出消化されたことを意味し、主制御部140(賞球払出管理手段)は、全ての賞球が問題なく払い出されたことを確認することができる。
例えば、主制御部140を主体に構成される賞球払出管理手段において、払出賞球の検知個数が払い出すべき賞球個数に対し所定数以上超過する場合と、同じく所定数以上不足する場合との少なくともいずれかにおいて、賞球払出しの異常があったものとして判断し、予め定められた異常出力を行う払出異常判定・出力手段を、前述の制御プログラムにより機能実現することができる。具体的にはエラー表示(音声出力等も含む)を行ったり、あるいは遊技機の作動(すなわち、各制御部のプログラム処理)を一時的に停止したりする処理を行うことができる。なお、後者の場合のプログラム停止に際しては、後述する停電時と同様のバックアップ処理を行うことができる。
払出異常判定・出力手段は、総賞球個数記憶手段(残球数カウンタ)に記憶されている総賞球個数に対し、払出賞球の検知個数が所定数以上超過する場合と、同じく所定数以上不足する場合との少なくともいずれかにおいて、賞球払出しの異常があったものとして判断して、異常出力を行うものとすることができる。
例えば、残球数カウンタの値が0になって、さらに減算が進むと、該カウンタの値は負数に転ずる。これは、主制御部140から枠制御部150へ送信された払出賞球数の合計よりも、実際に払い出された賞球数の方が多くなったということであり、何らかの異常が発生したことを意味する。その要因としては、ノイズの影響等が第一に考えられるが、より由々しき状況としては、例えば枠制御部150側にて不正操作が行われ、遊技者が本来得られるはずのない賞球獲得がなされたということも考えられる。一方、逆の状況として、相当の時間を経過しても減算が進まない場合は、賞球払出装置10の故障や、球詰まり等により賞球払出が正常進行していないことを意味する。このような場合、残球数カウンタを監視することにより、種々のエラー処理を講ずることが可能となる。
この場合の賞球総数記憶ジョブの一例を図44に示している。S200〜S280までは、図17と全く同じであり、S280で賞球払出センサ214の出力を検出すればS700に進んで残球数カウンタを減算する。そして、そのカウンタの指示値が負数であれば、総賞球数を超過して賞球が払い出されたことがわかり、その負数のカウンタ指示値の絶対値が超過球数を意味する。この実施例では、超価球数が限界値Nuを超えた場合に異常と判断し、前述の異常出力として、賞球超過エラー処理を行う。前述の通りこの処理は、例えばエラー表示(例えばLEDの点灯)を行ったり、あるいは遊技機の作動を一時的に停止したりする処理である。
例えば、本実施例では、以下のようなコマンド送信の規約が設定されている。すなわち、所定時間(例えば100ms)の球切れの検知により「補給球切れ」、所定時間(例えば3000ms)の球有りの検知により「補給球切れ解除」、所定時間(例えば200ms)の満タン検知により「下受け皿満タン」の各コマンドが送信される。また、所定時間(例えば200ms)の満タン解除を検知すると「下受け皿満タン解除」、限界値Nu個分の賞球超過を検出すると「賞球超過」、限界値Njの賞球不足が検出されると「賞球不足」の各コマンドが送信される。
なお、コマンド処理においては、STB:ストローブ信号を割込み信号(INT又はNMI(non-maskable interrupt))とする割込み処理により送信され該当コマンドが枠制御部150へされる。主制御部140側では割り込み処理が終了する毎にコマンドがクリアされる。なお、NMI割込み処理が行われる場合は、該当プログラムの最後に記述されており、STOPを抜け出してもリセットが入るよう設定される。
また、「賞球超過」の発生原因としては、
(1)コマンドラインへのノイズ混入(割込が誤発生する);
(2)コマンドラインのぶら下がりゴト(賞球コマンドが捏造される);
(3)枠制御基板側の賞球計数センサの断線(バッファ(メモリ)値が減らなくなる);
(4)ノイズあるいは電気的異常による主基板のRAMクリア(動作中に主基板(主制御部140)がリセットされる。枠制御部150側にはデータが残るので、見かけ上は賞球超過と同じ状態になり、誤作動のもととなりうる);
(5)賞球払出装置の異常;
等が挙げられる。
また、「賞球不足」の発生原因としては、
(1)主基板側の賞球計数センサの断線(バッファ(メモリ)値が減らない);(2)賞球払出装置の異常;
(3)枠制御基板のノイズによるリセット;
等が挙げられる。
なお、超価球数の限界値Nuであるが、あまりにもこれを小さく設定し過ぎると、払出装置の機械的動作遅れ等を原因として生ずる日常的な誤差に対しても異常判定が行われることになり、その対応が煩わしくなる難点がある。一方、限界値Nuが大きくなり過ぎると、超過球数が相当大きくならないと異常発生判定がなされないから、不正払出操作等による賞球損失の防止効果が薄れる。従って、この観点から、上記限界値Nuは、例えば500〜2500個の範囲にて選択するのがよい。例えば、限界値Nuを、一回の特別遊技(大当たり)により獲得される賞球数と同程度(例えば700〜2500個、具体例としては2000個)に設定することで、遊技者が通常では得られるはずのない量の賞球獲得を試みる不正操作を的確に認識できるという利点が生ずる。
なお、上記限界値NUの下限を500個としたのは、最も一般的な特別遊技内容である10カウント・15個賞球・16ラウンドに比較して、各条件を小さく抑えた場合(例えばラウンド(継続)数を8とし、賞球数を7とした場合など)を考慮したためであり、種々の遊技条件の設定次第で若干の変動があり得る。また、釘調整等の外的要因により、カウント数が既定値に達しないうちに制限時間超過となって、実際に獲得された賞球数が予想される賞球数を下まわる場合もあり得る。さらに、限界値NUの上限値を2500個としたのは、先の最も一般的な特別遊技内容、及び、実際の獲得賞球数のばらつき等を考慮したためである。
一方、S280で賞球払出センサ214の出力を検出しなかった場合はS703に進み、払出賞球の不足が生じていないかどうかの判断に移る。この場合、賞球払出管理手段の払出異常判定・出力手段は、総賞球個数記憶手段に記憶されている総賞球個数が予め定められた限界数以上となった場合に、賞球払出しの異常があったものとして判断して、予め定められた異常出力を行う備ように機能実現させることもできる。賞球払出しが何らかの要因で滞ると、例えば大当たり時等においては、その後も入賞球が頻繁に発生し、残球数カウンタの値は通常ではありえない値に異常増加する。そこで、図44のS703に示すように、総賞球個数、すなわち残球数カウンタ値の増加に限界数NJを予め定めておき、その限界数NJを超えた場合に異常の判断を行い、例えばS704に進んで賞球不足エラー処理を行うようにすれば、総賞球個数の監視を行うのみで賞球払出の不足を容易に把握でき、ひいては適切なエラー処理を講ずることができる。エラー処理は、ここでも例えばエラー表示を行ったり、あるいは遊技機の作動を一時的に停止したりする処理である。
なお、上記限界値NJの具体例の200個は、例えば10カウント・15個賞球(=150個)に、いわゆる「その他入賞口への入賞」を3個×10個賞球(30個)とし、始動口入賞を3個×6個賞球(=18個)として、各個数を合計し、端数を四捨五入(あるいは切り捨て/切り上げ)したものである。
限界値NJは、例えば大当たり時など、入賞球が短時間に非常に多数発生する場合は、正常動作が確保されている場合でも、払い出すべき賞球個数の増加に実際の払出しが追い付かなくなことがあるので、このようなケースを見込んで例えば25個以上に設定するのがよい。他方、この値を大きくし過ぎると、相当量の賞球払出の滞りが生じない限り、これを異常と判定できなくなり、遊技者に不信感を抱かせるおそれも生じうる。従って、上記限界値NJは、300個以下に設定するのがよい。限界値NJの具体例は、例えば200個である。
なお、賞球払出の不足時の対応としては、図45に示すような処理を行ってもよい。すなわち、賞球払出しの検出を最後に受けてからの経過時間Twを計測し、S704にて上記結果時間Twが所定時間Ta以上となった場合に、残球数カウンタ値が不足限界数NLを超えたか否かを確認し、超えている場合はS706にて賞球不足エラー処理を行う。なお、賞球払出し処理が正常に進行している場合でも、例えば入賞球の発生が長時間途絶えれば残球数カウンタはゼロがそれに近い値になっているはずであるから、S703として、ゼロを含む一定球数を下限基準数Nkとして、残球数がその下限基準数Nk以上となった場合にのみ、S705以下の、賞球払出不足に対応する処理を行うようにしている。なお、上記の賞球払出超過に対応する処理と、賞球払出不足に対応する処理とのいずれか一方を省略するようにしてもよい。
次に、上記メインジョブの一連の流れの中で実行される、賞球個数データ記憶ジョブの好適な態様について説明する。通常、パチンコ機1の電子制御装置130においては、各入賞口に入球すると入賞球検知部から出力される入賞球検知信号に対応して払い出す所定数の賞球個数を主制御部140内で一旦記憶し、これを枠制御部150側へ送信していた。このため、主制御部140側においては入賞した順に該当する賞球個数を或程度記憶するバッファが必要となる。このとき、記憶容量の最低単位として1バイト(8ビット)の記憶容量を用いて、各入賞口に対応した所定数の賞球個数データが入賞した順に、その都度一時的に記憶され、枠制御部150において賞球が払い出される毎に1バイト(8ビット)の記憶容量が解放されることになる。
各入賞口に入球した入賞球の入賞順が、例えば、6個払い入賞→15個払い入賞→15個払い入賞→6個払い入賞→6個払い入賞の場合、図22に示すように、払い出すべき賞球個数の記憶が順次積み立てられていく。また、枠制御部150側においては、賞球個数が記憶された順に賞球の払い出しが行われる。バッファ内に記憶される賞球個数と賞球の払い出しに伴って解放される記憶容量が、バランス良く処理されていれば、バッファの記憶容量が不足することはないが、入賞口に入球する入賞球の頻度が高くなった場合、例えば、大入賞口44が所定時間(例えば、約30秒)又は所定個数(例えば、10個)の遊技球が入球するまで開放される場合など、記憶すべき賞球個数データ量が多くなってバッファの記憶容量が不足する事態が発生することになる。
以下に、大入賞口44に入賞した場合を想定して、具体的な数値に基づいて必要とされるバッファの記憶容量を求める。遊技球の発射間隔を、例えば0.6秒/1回、1ラウンドを8秒(10カウント+2秒のインターバル)とすれば、大当り中の時間は16ラウンドの場合で128秒となる。一方、賞球の払い出し速度を15個賞球の払い出しで1秒/1回として、128個分の賞球の払い出しが可能となる。大当り中の賞球数は、160個(16ラウンド×10個)であるので、大当り終了時、32個(160個−128個)の賞球分がバッファの記憶容量として必要となる。ただし、この計算は正常に賞球が払い出された場合を想定しており、実際には、球切れ、球詰まり、球貸し処理等で、賞球の払い出しが遅れる可能性もあり、さらに多くのバッファが必要となる。
しかしながら、主制御部140の作業領域が合計256バイト程度の場合、現状のメインプログラム用に作業領域を確保する必要上、この作業領域以外を緩衝域としてのバッファに供出する領域は、30〜50バイトの範囲に限られている。したがって、各入賞口への入賞順に賞球の払い出しを行えば、上述した方法ではバッファのオーバーフローが頻繁に発生すると思われる。
そこで、バッファ内において記憶される記憶容量の最低単位が1バイトであるという概念を払拭し、賞球個数データの記憶手段として予め設定した2ビット単位を記憶容量の最低単位として用い、限られた緩衝域の記憶容量を大幅に増加した状態で使用させれば、記憶すべき賞球個数データ量が一時的に増加しても記憶容量の不足とならない。すなわち、2ビットを払い出すべき賞球個数データとすることによって、バッファ内の記憶容量を4倍に拡張して使用できることになる。この2ビットを記憶容量の最低単位とした場合には、所定数の賞球個数データを2ビットによって表すことになる。例えば、払出賞球個数が6個であれば「01b」、払出賞球個数が10個であれば「10b」、払出賞球個数が15個であれば「11b」、入賞なしの場合であれば「00b」となる。
例えば、各入賞口に入球した入賞球の入賞順が、上述と同様、6個払い入賞→15個払い入賞→15個払い入賞→6個払い入賞→6個払い入賞であれば、バッファの記憶容量としては10ビットで済むことになる。図23には、これら入賞球の入賞順を時系列に示しており、この時系列にて示した態様は、図19に示す賞球個数データ記憶ジョブの好適な実施例を模式的に表すものである。すなわち、賞球の払い出し個数はバッファ内に2ビット単位で記憶され、次の払出個数データを記憶する毎に左へシフトされる。このシフトされたビット列は8ビット(1バイト)毎に桁上がりされて蓄積されることになる。
バッファの記憶容量としては、上述したように緩衝域として供出し得る領域が50バイトをほぼ上限とされているので、バッファ0〜49となり、最大200個(50バイト×8ビット/2ビット)の賞球個数データを書き込むことができる。図24(a)、(b)は、図20に示す賞球個数データ記憶取出しジョブの流れを模式的に示している。図24(a)は記憶時の様子を表すもので、賞球個数データが、すでに記憶されている賞球個数データのメモリシフトを行うことなく、データ列の先頭側に順次付け加わる形で上述した入賞球の入賞順に記憶されてゆく。
一方、図24(b)は記憶取出時の様子を表すもので、先頭の(すなわち、最も古い)賞球個数データ[1]が、常にバッファ0の先頭位置(すなわち、オフセット0=0、オフセット1=0)にて取り出され、その2ビット取り出し後の残るビット列は、2ビット単位で右詰めにメモリシフトされる。これにより、入賞順位[2]の賞球個数データ(「11」:15個払い入賞)がバッファ0の記憶取り出し位置に移り、再び2ビット単位で払い出すべき賞球個数の情報が隙間なく配列した形となる。なお、このようにビット列を2ビット毎に転送する方式に代えて、バッファ内に記憶領域を別途設定し、この領域へ残るビット列を一旦退避させ、これをブロック毎転送することも可能である。
以下、図23及び図24の具体的な処理の流れを、図19を参照して説明する。なお、この賞球個数データ記憶ジョブ及び図20に示す賞球個数データ記憶取出しジョブの説明中のオフセットは下記のことを意味する。主制御部140において、RAM141中の、メインプログラム用に確保された作業領域以外の領域を緩衝域とし、この緩衝域に記憶バッファを割り当てる。この記憶バッファは、図21に示すように、1バイト(8ビット)毎に0〜49の記憶容量で構成され、この記憶バッファのビット列中のメモリセルの配列方向をオフセット0とし、また、ビット列の配列方向をオフセット1として、マトリックス状のオフセットテーブルとして表している。記憶容量の最低単位を2ビットとすれば、オフセット0は「0」〜「3」で表される。オフセットカウンタは、データの書き込まれている先頭の次の空きになっているセル位置をオフセット番号となるようにルーチンが組まれている。なお、記憶バッファはRAM141とは別に、バッファ専用メモリを設けてもよい。
まず、図19のS700において賞球個数信号を受信したか否かを確認し、肯定判断(YES)であれば、S710に進む。S710に進みオフセット1の値は「50」か否かを確認する。すなわち、オフセット1の値が記憶バッファ0〜49の領域外であるか否かを確認して、否定判断(NO)であれば、S720へ進む。また、肯定判断(YES)であれば、記憶バッファ0〜49の全てに書き込みがあると判断され、その入賞賞球は無効となり、スキップする。S720において、記憶バッファ0のアドレスにオフセット1の値を加算し記憶バッファ0〜49のいずれかを選択し、データを書き込みたい記憶バッファのアドレスを選択する。
続くS730において、選択した記憶バッファにオフセット0の値を加算し、記憶a〜dのいずれかのエリアを選択する。続くS740において、賞球個数信号は「15」か否かを確認し、肯定判断(YES)であればS750に進み、選択したエリアに「03h」をセットする。すなわち、選択した記憶エリアに、賞球個数信号「15」に対応するデータ「03h」を書き込む。S760において、オフセット0の値に「1」を加算し、続くS770においてオフセット0の値は「4」以上か否かを確認し、肯定判断(YES)であれば、S780に進む。S780において、オフセット0に「0」をセットしオフセット1に「1」を加算する。すなわち、記憶バッファの桁上げを行う。
なお、S740において否定判断(NO)であれば、S790に進んで賞球個数信号は「6」か否かを確認する。肯定判断(YES)であればS800に進み、選択したエリアに「01h」をセットし、S760へスキップする。すなわち、選択した記憶エリアに、賞球個数信号「6」に対応するデータ「01h」(16進数表示、2進数の「01b」に相当)を書き込む。また、否定判断(NO)であれば、S810に進む。S810において賞球個数信号は「10」か否かを確認し、肯定判断(YES)であればS820に進み、選択したエリアに「02h」をセットし、S820へスキップする。すなわち、選択した記憶エリアに、賞球個数信号「10」に対応するデータ「02h」(16進数表示、2進数の「10b」に相当)を書き込む。
また、賞球個数データ記憶取出しジョブは、図20のようになる。S900において記憶バッファ0の値は「0」か否かを確認し、否定判断(NO)であれば、S910に進む。S910において、記憶バッファ0の記憶aの値を取得し、続くS920において、記憶バッファ49〜0の順に値を2ビット右シフトする。S930に進んで、オフセット0の値は「0」か否かを確認する。すなわち、オフセットカウンタを参照することによってオフセット番号のセル位置、すなわちオフセットポインタの位置を求めるとともに、そのオフセットポインタの位置が記憶バッファの先頭か否かを確認する。肯定判断(YES)であれば、S940に進み、オフセット1を「1」減算する。すなわち、データの書き込みがある先頭のセル位置へ戻るため、記憶バッファの桁下げを行う。S950に進み、オフセット0に「3」をセットし、桁下げした記憶バッファの先頭セル位置にオフセットポインタを移動させる。なお、S930において否定判断(NO)であれば、S960に進み、データの書き込みがある先頭のセル位置へ戻るため、オフセット0を「1」減算する。
次に、賞球個数データ記憶ジョブは、上記と逆の態様、すなわち図42に示すように、記憶時にメモリシフトを行って、データ列の先頭に空白のメモリセルを作り、常に同じメモリセル位置にて新規データの書込みを行う態様としてもよい。この流れを図25を参照して説明する。S300において賞球個数信号を受信したか否かを確認し、肯定判断(YES)であれば、S310に進む。S310において、オフセット0の値は「0」か否かを確認する。すなわち、オフセットカウンタを参照することによってオフセット番号(データの書き込まれている先頭の次)のセル位置を求める。オフセットテーブルの先頭列の縦方向(記憶バッファ0〜49にわたって)のセル位置がデータの空き領域となっているか否かを確認して、否定判断(NO)であれば(書き込みがあれば)、S320に進み、オフセット0の値は「3」か否かを確認する。すなわち、オフセットテーブルのビット列の最後尾(第4番目)の縦方向(記憶バッファ0〜49にわたって)のセル位置が空き領域であるか否かを確認して、肯定判断(YES)であれば、S330に進む。
S330において、オフセット1に「1」を加算し、オフセット0の値をクリアする。すなわち、オフセット1の桁上げを行い、オフセット0の「3」の値をクリアすることになる。続くS340において、記憶バッファ0〜記憶バッファ49を左に2ビットシフトする。これにより、記憶バッファ0の先頭列に書き込み領域を設ける。S350において、賞球個数信号は「15」か否かを確認し、肯定判断(YES)であればS360に進み、記憶バッファ0と「03h」とを論理和する。すなわち、記憶バッファ0の先頭列の書き込み領域に、賞球個数信号「15」に対応するデータ「03h」(16進数表示、2進数の「11b」に相当)を書き込む。また、否定判断(NO)であれば、S370に進む。
S370において賞球個数信号は「6」か否かを確認し、肯定判断(YES)であればS380に進み、記憶バッファ0と「01h」とを論理和する。すなわち、記憶バッファ0の先頭列の書き込み領域に、賞球個数信号「6」に対応するデータ「01h」(16進数表示、2進数の「01b」に相当)を書き込む。また、否定判断(NO)であれば、S390に進む。
S390において賞球個数信号は「10」か否かを確認し、肯定判断(YES)であればS400に進み、記憶バッファ0と「02h」とを論理和する。すなわち、記憶バッファ0の先頭列の書き込み領域に、賞球個数信号「10」に対応するデータ「02h」(16進数表示、2進数の「10b」に相当)を書き込む。
なお、S310において肯定判断(YES)であれば(すなわち、記憶バッファ先頭のセル位置が空き領域でなければ)、S410に進みオフセット1の値は「50」か否かを確認する。すなわち、オフセット1の値が記憶バッファ0〜49の領域外であるか否かを確認して、否定判断(NO)であれば、S420へ進む。また、肯定判断(YES)であれば、記憶バッファ0〜49の全てに書き込みがあると判断され、その入賞賞球は無効となりスキップする。また、S320において否定判断(NO)であれば記憶バッファの先頭のセル位置が空き領域であることを意味するから、S420においてオフセット0の値に「1」を加算し、次のセルにオフセットポインタを設定する。
また一方、賞球個数データ記憶取出しジョブは、図43に示すように、記憶取出し時に先頭側のものから順にメモリセル位置を後退させながらデータ読出しを行う態様としてもよい。この流れは図26のようになる。S500において記憶バッファ0の値は「0」か否かを確認し、否定判断(NO)であれば、S510に進む。S510において、オフセット0の値は「0」か否かを確認する。すなわち、オフセットカウンタを参照することによってオフセット番号(データの書き込まれている先頭の次)のセル位置を求める。まず、オフセット0の値が「0」か否かを確認し、肯定判断(YES)であればS520に進み、オフセット1を「1」減算する。すなわち、データの書き込みがある先頭のセル位置へ戻るため、記憶バッファの桁下げを行う。そして、S530に進み、オフセット0に「3」をセットして、桁下げした記憶バッファの最後尾(第4番目)のセル位置にオフセットポインタを設定する。
S540に進んで、記憶バッファ0のアドレスにオフセット1の値を加算し、記憶バッファ0〜49のいずれかを選択し、その中の記憶データを取得する。すなわち、読み出すべきデータのある記憶バッファのアドレスに戻って記憶データを取得する。S550において、オフセット0は「0」か否かを確認して、肯定判断(YES)であれば、S560に進んで対応する記憶データの記憶値a(図21参照)を取得し、続くS570にて該当する記憶領域を「0」にクリアする。また、S550にて否定判断(NO)であれば、S580に進んで、オフセット0は「1」か否かを確認して、肯定判断(YES)であれば、S590に進んで対応する記憶データの記憶bを取得し、S570へスキップする。S580において否定判断(NO)であれば、S600に進んで、オフセット0は「2」か否かを確認して、肯定判断(YES)であれば、S610に進んで対応する記憶データの記憶cを取得し、S570へスキップする。また、否定判断(NO)であれば、S620に進んで対応する記憶データの記憶dを取得し、S570へスキップする。
なお、S510において否定判断(NO)であれば、S630に進み、データの書き込みがある先頭のセル位置へ戻るため、オフセット0を「1」減算する。
以上の処理において、バッファメモリから取り出された賞球個数データは、前述の通り枠制御部150へ転送される。枠制御部150では、その賞球個数データを受けてRAM152内に形成される枠制御部側払出カウンタを、該賞球個数データが示す数だけインクリメントするとともに、図10〜図14により既に説明した賞球払出装置109に賞球の払出しを行わせる。そして、前述の賞球払出センサ214からの賞球検出信号は枠制御部150にもフィードバックされており、賞球払出が確認される毎に枠制御部側払出カウンタをデクリメントさせ、この値が例えばゼロになれば賞球の払出を終了させる。なお、この枠制御部150においても、例えば球詰まり等により枠制御部側残球数カウンタの値が異常増加した場合に、主制御部側と同様の賞球不足エラー処理を行わせるように構成することができる。
なお、上記の処理では、主制御部140側にバッファメモリを設け、賞球個数データを入賞球の検出順に記憶バッファに蓄積するとともに、これを先頭のものから枠制御部150に転送することで、賞球の払出しを入賞球の検出順に行わせるようにしている。主制御部140から枠制御部150に転送される賞球個数情報は、入賞口毎に定められた1入賞当りの払出賞球個数である単位賞球数(前述した6個賞球、10個賞球あるいは15個賞球である)を含む。これにより、遊技者が、例えば単位賞球数の異なる入賞球の時系列的な順序を多少でも覚えている場合に、遊技機がその覚え通りの順序で賞球を払い出してくれるから違和感も少なく、遊技への信頼感も高められることとなる。このような効果をより確実に達成したい場合は、枠制御部150の枠制御部側払出カウンタに、各入賞に対応した賞球数以上の払出数が累積されないよう、記憶バッファからのデータの取り出し時間間隔を、例えば送信した賞球数に見合う賞球払出時間を見越して所定時間以上確保したり、枠制御部150側にも1ないし複数の賞球個数データを時系列順に一時蓄積するためのバッファメモリを設けることが有効である。
なお、枠制御部150では、受信する賞球個数情報が、予め定められた単位賞球数と合致しない払出個数を指定するものであった場合に、賞球の払出しを禁止するように処理を行ってもよい(払出禁止手段の機能実現)。具体的には、賞球払出装置109への作動指令信号の出力を停止せさたり、あるいは枠制御部側払出カウンタのインクリメントを行わない等の処理である。これにより、何らかの不正な賞球数(例えば、数千個〜1万個など、不正を企てる者にとって、リスクに相応する利益を期待できる魅力的な数の賞球数である)が枠制御部150に入力されても、これを確実に識別して、的確な処理対応を行うことができる。
例えば、単位賞球数が、入賞口の種別により複数通り(例えば6個、10個、15個)に定められている場合、受信する賞球個数情報が、それら複数通りの単位賞球数のいずれとも合致しない場合に、賞球の払出を禁止するように構成することができる。これによれば、いずれの単位賞球数にも該当しない賞球数データが枠制御部150に入力された場合に、これを不正データとして確実に検出することができ、その不正データによる賞球排出を防止できる。従って、より確実な賞球払出が可能となる。
なお、主制御部140側で賞球検出信号を受けた順に、対応する賞球個数データを逐次(例えばリアルタイム的に)枠制御部150へ転送するようにしてもよい。この場合は、枠制御部150側のRAM151内に設けられたバッファ領域内にこれを蓄積し、上記と同様の処理により賞球個数データを取り出して賞球払出しを行ってもよいが、賞球の払出しを入賞球の検出順に行わせる必要が特にない場合は、バッファを省略することも可能である。この場合の枠制御部150での処理例を図46に示している。S750で賞球個数データを受けると、S751〜S753では、それが何個賞球のデータかを判別する。そして、それが予め定められた単位賞球数(6個、10個、15個)のいずれでもなければ、S759に進んでエラー処理を行う。他方、単位賞球数のいずれかであればS754に進み、枠制御部側残球数カウンタ(RAM151内に形成される)に加算される。なお、S755では、枠制御部側残球数カウンタの値がNJを超えた場合に、球詰まり等により賞球排出が停滞下と判断し、S758に進んでエラー処理を行う。他方、賞球払出センサ214からの賞球払出し信号を受ければ、枠制御部側残球数カウンタの値を減算する。
図47は、賞球払出しの処理の流れを示すものであり、S760では枠制御部側残球数カウンタの値をリードする。そして、S761では、残球数がND(例えば10〜30球など)か否かを判断し、ND以下であれば残球を一括して払出し、NDを超えていれば残球をND個に区切って払出しを行う。この処理によれば、賞球個数データが十分に時間をおいて入力(受信)される場合には、S762の処理により、賞球個数データに対応する単位賞球数の払出しが、時系列な到来順に行われることになるし、賞球個数データがを短時間のうちに連続して受信した場合には、それら賞球個数データが枠制御部側残球数カウンタに累積され、S763の処理により、ND個に区切って払出しが行われる形となる。
次に、賞球払出機構は、貸球排出及び賞球排出に共用される球排出手段として構成することができ、払出賞球検知機構は、貸球及び賞球を区別して検出する球検出手段を備え、賞球払出管理手段は、その区別して検出された賞球の検出情報を払出賞球の検知情報として使用することができる。
球排出手段の具体的な構造の好適例には、裏機構盤に配設され、遊技球を上流側通路から分岐部を介して複数の分岐通路に枝分かれさせた遊技球通路と、前記分岐部に配設され、異なる方向に駆動制御可能とされて、遊技球を前記複数の分岐通路のいずれかに選択して移送可能な球送り部材を有する球排出装置と、を備えたものが挙げられる。これにより、球排出装置は、単位貸球数(例えば25個)や単位賞球数(例えば6個、15個など)に基づいた制御指令を受けて、必要な数の球排出を行う。CR機では、球送り部材を異なる方向に駆動制御可能とし、分岐通路、即ち、賞球通路と球貸通路とのいずれかに選択して遊技球を移送可能とする。一方、現金機では、球送り部材を一方向に駆動制御し、分岐通路の一方に蓋を取り付ける等によって球貸通路を封鎖することができ、賞球通路のみを使用できる。なお、球送り部材としては、軸と、軸に取りつけられた歯車と、軸を回動させる球排出モータからなるもの等が挙げられる。球検出手段の具体例としては、前述の分岐通路にそれぞれ設けた賞球カウントスイッチ、球貸カウントスイッチ等が挙げられる。
以下、対応する遊技機の構成例について説明する。図48は、この場合のブロック図であり、大半は図16と共通であるが、賞球払出装置109に代え、貸球排出及び賞球排出に共用される球排出装置99が枠制御部150に接続されている。
この実施例では、図49(a),(b)に示すように、裏機構盤100の裏側に、図示しない賞球タンクに通ずるタンクレール65が装着され、そのタンクレールに続く形で球流下部70が形成されている。この球流下部70には、上流側通路71、賞球通路73、及び、球貸通路74が形成されるとともに、球排出装置99が装着されている。上流側通路71、賞球通路73、及び、球貸通路74は、図5(b)に一部省略して示すようにいずれも2条の樋であり、機構盤62の前後方向に区画された第1及び第2の通路(71a,71b,73a,73b,74a,74b)からなる。
上流側通路71は屈曲しており、その上端は、タンクレール65の右端下部に開口した球流出口85に接続されている。また、上流側通路71の上端部近傍には、接触式の補給球切れ検知スイッチ86、及び、球切れスイッチレバー90が配設されている。球切れスイッチレバー90は上流側通路71の一部を構成するとともに、上端部を支点として弾性的に揺動可能である。そして、球切れスイッチレバー90は、常開式の補給球切れ検知スイッチ86に隣接しており、その揺動によって補給球切れ検知スイッチ86をON/OFFにする。
なお、本実施形態においては、球切れスイッチレバー90の弾性的動作のためにねじりコイルばねが用いられているが、その他のコイルばね(引張或は圧縮等)や板ばねなどの一般的な種々の弾性部材の採用が可能である。また、本実施形態においては、球切れスイッチレバー90及び補給球切れ検知スイッチ86は、各通路71a,71b毎に別個に設置されており、各通路71a,71bの遊技球の有無は個別に検出される。なお、球切れスイッチレバー90及び補給球切れ検知スイッチ86を第1及び第2の通路71a,71bのいずれか一方のみに設けてもよい。
前記賞球通路73及び球貸通路74は、各々上下に直線状に形成されており、互いにほぼ平行に延びている。また、賞球通路73には賞球カウントスイッチ(賞球払出センサ)78が装着されており、球貸通路74には球貸カウントスイッチ79が装着されている。各スイッチ78,79は溝形の非接触式センサであり、各通路73,74に一体に形成されたスイッチ装着部78a,78b,79a,79bのそれぞれに収容されている。各スイッチ装着部78a〜79bは、各スイッチ78,79を受入れる空間を確保するため、各通路73,74の外側に張り出している。なお、各スイッチ78,79として磁気式のものが採用されているが、この他に光学式等の一般的な種々の遊技球検出スイッチの採用が可能である。
上記球排出装置99は、例えば直方体状のケース77内に、球排出モータ80、球送り部材76、及び、球排出装置センサ基板96を収容している。球排出モータ80は正逆回転可能なステッピングモータであり、前述の主制御部140及び枠制御部150の指令に基づいて動作する。球排出装置センサ基板96には、図示を省略するが、一対の投光器と受光器とを有する光センサが装着されている。また、ケース77には遊技球通路75が形成されており、この遊技球通路75の上端部は上流側通路71に連通している。また、遊技球通路75は途中の分岐部72において二方向に分岐しており、賞球通路73及び球貸通路74に連通している。つまり、ケース77の上部には2つの入口が開口し、下部には4つの出口が開口している。そして、上流側通路71、遊技球通路75、及び、賞球通路73と球貸通路74によって、下流側へ二股に分かれる球流下通路が形成されている。
上記球送り部材76は合成樹脂の一体成形品であり、球排出モータ80の出力軸に装着されている。さらに、球送り部材76は、中空なシャフト81の外周に遊技球移送用の歯車82,83と回転量検出用の歯車(スプロケット)84とを有しており、これらの歯車82,83,84はシャフト81の基端側から先端側へ、回転量検出用の歯車84、遊技球移送用の歯車82,83の順で配設されている。そして、これらの歯車82,83,84は、球排出モータ80の駆動に伴って一体に回転する。
移送用の歯車82,83は、遊技球通路75の分岐部72において、第1の通路72a及び第2の通路72bの中にそれぞれ位置している。また、両歯車82,83は同数の歯を同ピッチで有しており、歯間の凹部は遊技球(一般に直径約11mm)を受入れることができる程度の大きさに設定されている。さらに、両歯車82,83の間には位相差が設定されている。また、回転量検出用の歯車84の歯は等しいピッチで形成されており、その歯数は移送用の歯車82,83よりも多く設定されている。そして、回転量検出用の歯車84は球排出装置センサ基板96に対し、歯車84の回転に伴ってその歯の各々が前述の光センサの光を間欠的に遮る位置関係にある。
遊技球は、賞球タンク64、タンクレール65を経て、球流下部70に供給される。球流下部70において遊技球は、上流側通路71の屈曲した経路を辿り、球切れスイッチレバー90を押圧しながら流下する。球切れスイッチレバー90は、球経路中に遊技球が存在する場合には、遊技球により押圧されて弾性的に回動変位し、補給球切れ検知スイッチ86をONにする。また、球切れスイッチレバー90は、遊技球からの押圧力から解放された場合には、ねじりコイルばねの復元力を利用して元の位置に戻り、補給球切れ検知スイッチ86をOFFする。この球切れスイッチレバー90の動作を利用して、上流側通路71における遊技球の有無が検出される。
上流側通路71を通過した遊技球は球排出装置99に達し、遊技球通路75に流入して移送用の歯車82,83に接する。一方の歯車82(又は83)においては遊技球が歯の間に進入し、他方の歯車83(又は82)においては遊技球が歯上に載置される。さらに、後続の遊技球は先行の遊技球上に載置され、先行の遊技球の上に順に堆積する。この際、上流側通路71が屈曲しているため、上流側通路71に堆積した遊技球の重量は多方向に分散され、歯車82,83に過度の負荷が作用することが防止されている。また、上流側通路71の長さは、歯車82,83から球切れスイッチレバー90までの間の遊技球数が25個以上となるよう設定されている。この個数は単位貸球数(単位球貸金額(ここでは100円)を球単価(ここでは4円)で除した値)に一致している。
賞球排出が行われる場合には、球排出装置99の球排出モータ80は、枠制御部150により正転駆動され、歯車82,83が図5(a)の反時計回りに回転する。歯車82,83の回転に伴い、遊技球は賞球通路73の側へ移送され、歯車82,83から解放されて賞球通路73に放出される。放出された遊技球は、賞球通路73に沿って落下し、賞球カウントスイッチ78を通過して個々に検出される。他方、これらの遊技球は、球流下部70から流出して振分け部101に到り、上皿6に放出される。
球排出モータ80の回転量は、入賞の態様に応じて払い出されるべき単位賞球数(ここでは6個、10個、15個の3種類)に基づいて決定される。また、歯車82,83に位相差が設定されているため、遊技球の排出は第1及び第2の通路間で交互に行われる。したがって、二つの通路73a,73bについての合計で奇数個の排出も可能である。さらに、球排出モータ80の回転量は、移送用の歯車82,83と一体に形成された回転量検出用の歯車(あるいはスプロケット)84を利用して検出される。すなわち、球排出モータ80の駆動に伴って、回転量検出用の歯車(あるいはスプロケット)84の歯が前述の光センサの光を遮り、光センサの出力を変化させるため、通過した歯数と歯のピッチとを参照することにより回転量が算出される。この回転量の検出結果は、球排出モータ80の動作確認や、球排出異常の判断などに利用される。
なお、パチンコ機を現金機として使用する場合の例を、図5(c)を用いて説明する。なお、図5(a)と重複する部分については同一番号にダッシュを付してその説明は省略するとともに、新たな構成要素については新たな番号を付す。ここでは、貸球は上皿に機外から直接供給されるため、球流下部70'の球貸通路74'を使用する必要がない。したがって、球貸通路74'のスイッチ装着部79a',79b'にストッパ蓋88が装着され、球貸通路74'が封鎖されている。ストッパ蓋88は、CR機の場合に用いられる球貸カウントスイッチ79(図5(a)参照)とほぼ同じ外形寸法を有する厚板状の合成樹脂体であり、球貸カウントスイッチ79のような球通過孔を有していない。そして、このストッパ蓋88は、遊技球検出の機能を有していない。また、球排出モータ80の回転制御は正転のみに制限され、逆転方向の回転制御は行われない。つまり、球排出モータ80は賞球排出にのみ使用され、排出後の遊技球の検出も賞球についてのみ行われる。
以上の実施例では、賞球カウントスイッチ78の検出信号が、前述の賞球検出信号として、主制御部140あるいは枠制御部150に送られ、残球数カウンタ(総賞球数)等の減算に使用される。賞球排出センサ214を賞球カウントスイッチ78に置き換えられているのみで、賞球払出に関しては、基本的には図44〜図47と略同様の処理がなされる。他方、図50は、処理の概略の流れを示すものである。すなわち、主制御部140が入賞球を検知すると(S60)、賞球数情報を枠制御部150へ送信し(S62)、所定数の賞球の排出を要求する。枠制御部150は、主制御部140から要求された賞球数に応じて、球排出モータ380を回転させる(S64)。排出された賞球は、通路切換えアーム301により案内されて賞球通路373へ流入するとともに、賞球カウントスイッチ378によって検出(S66)され、検出結果が主制御部140へ送られる(S68)。主制御部140は、賞球カウントスイッチ378の計数値に基づいて、要求通りの数の賞球が排出されたか否かを確認し(S70)、処理を終了する。また、枠制御部150も排出数を確認し、排出数が主制御部140からの要求数に対して不足している場合(S72:YES)は、枠制御部150は排出モータ380を再試行動作させ(S74)、不足分の賞球排出を行い、処理を終了する。排出数が主制御部140からの要求数に対して足りている場合(S72:NO)は、処理を終了する。
次に、異常発生時の遊技情報バックアップ機能実現部分の構成と、その作動について説明する。この実施例では、停電等による電源電圧低下を異常として検出し、停電復帰後に停電前の遊技状態に基づく遊技続行が可能となるように、停電直前の制御部のワークメモリ内の遊技情報をバックアップする態様を例にとる。
上述したように、パチンコ機1は、3つの制御部、すなわち主制御部140、枠制御部150及び特別図柄制御部160(表示制御部)を有している。従って、停電直前作動状態の正確な回復を行う観点においては、それら全ての制御部140、150、160のそれぞれに上記バックアップ機能実現部分を付加しておくことが望ましいといえる。しかし、主制御部140内の遊技情報をバックアップするのみでも停電直前作動状態をかなりの精度で回復できることも多く、この場合は主制御部140にのみバックアップ機能実現部分を付加する態様とすることができる。一方、例えば賞球の払い出しに関する動作のみを復元したい場合は、枠制御部150、あるいは枠制御部150及び特別図柄制御部160にのみバックアップ機能実現部分を付加する態様も可能である。ここでは、3つの制御部140、150、160の全てにおいてバックアップ処理を行う場合を例に取る。
図27は、バックアップ機能実現のための基本的な回路構成の一例を表すブロック図である。なお、回路構成及びバックアップ処理の基本的な制御の流れは、バックアップするデータの種別が異なるだけで、制御部140、150、160のいずれについてもほぼ同じである。以下において、符号については主制御部140に関係するものを代表して使用しつつ、他の制御部150、160についても、対応する回路構成要素の符号を図面中に援用表示し、共通化した説明を行う。そのため、主制御部140はバックアップ対象制御部(あるいは単に制御部)140と称することにするが、これは主制御部140のみがバックアップの対象となることを、必ずしも意味しないことはいうまでもない。
まず、制御部140の基板には、CPU141及びRAM142(ROM143は図示省略)が搭載されている。そして、その基板上には電源監視回路553が実装されている。他方、CPU141への作動電圧を供給するCPU主電源回路552は、この実施例では基板外に設けられているように描いているが、設計上の便宜により、CPU主電源回路552も基板上に合わせて実装する構成としてよいことはもちろんである。また、電源監視回路553に基準信号等を供給する汎用定電圧電源回路555についても、基板上に設けても基板外に設けてもいずれでもよい。
CPU主電源回路552は、出力電圧がCPU141の作動電圧に合わせて、例えば5Vに設定されている。また、汎用定電圧電源回路555は、各種電圧レベルの基準信号発生に対応できるよう幾分高めの出力電圧(ここでは、12V)を有するものとして設計されている。いずれも、外部交流電源(例えばAC24V)550からの交流入力を受けて、これを直流定電圧出力に変換するものである。その構成は公知のものであるが、代表的なものを図29及び図30に示す。いずれも交流入力側に降圧用の変圧器573が設けられ、その二次側交流出力をダイオードブリッジ574による全波整流とコンデンサ575による平滑化により直流化する。そして、図29の構成では、ツェナーダイオード576により、また、図30では三端子レギュレータ577により所望の直流出力電圧V0を得るようにしている。
図28は、電源監視回路553の内部構成の一例を示す回路図である。まず、CPU主電源回路552からの出力電圧は、CPU141の電源端子VCCにCPU作動用補助電源回路556を介して入力されている。この補助電源回路556は、停電等による外部交流電源550からの電力供給の遮断(あるいはCPU主電源回路552自身の故障)等により、CPU主電源回路552からの電力供給が途絶えるか、あるいは出力電圧が所定値以下に降下した場合に、CPU141の必要な作動電圧を確保するためのものである。ここでは、出力電圧維持用の蓄電手段、具体的にはコンデンサ557がCPU作動用補助電源回路556の主体をなしている。
コンデンサ557は、CPU主電源回路552からの電力供給線に対して並列に接続されており、常時はダイオード558を経てCPU主電源回路552から電力供給を受けることにより充電状態を維持している。そして、電力供給が途絶えた場合は、コンデンサ557がダイオード558により逆流防止されつつ放電し、CPU141の作動電圧を供給する。なお、コンデンサ557の容量は、後述するバックアップ処理が完了するまでの間は少なくとも、CPU141の作動を確保できる程度に設定されていることが望ましい。バックアップ処理自体は1ミリ秒程度までで完了するが、余裕を見越して5ミリ秒以上、望ましくは10ミリ秒以上の作動が確保できるように容量設定を行うことが望ましい。なお、補助電源回路556は、コンデンサ557に代えて電池(この場合、一次電池でも二次電池でもいずれでもよい)557aを用いて構成してもよい。
次に、CPU主電源回路552からの出力電圧VXは、異常検出手段(ここでは、電源遮断検出手段)として機能するコンパレータ569に分岐入力され、ここで電圧監視基準信号567の電圧レベルVSと比較される。VSは、例えばCPU141の安定した作動が不能となる下限の電圧レベルに対応して設定することができる。常時はVX>VSであり、コンパレータ569の出力は第一状態(ここではLレベル)となっているが、停電等によりVX<VSになると、コンパレータ569の出力は前記した第一状態と異なる第二状態(ここではHレベル)となる。
そして、このコンパレータ569の出力は、電源遮断信号(異常検出信号)の出力手段であるANDゲート570(異常確定情報生成手段の主体もなす)の一方の端子に入力される。そして、ANDゲート570の他方の端子には、電源遮断信号発生用基準信号568が入力されている。この電源遮断信号発生用基準信号568は、前記したコンパレータ569の第二状態に対応する電圧レベルVYを有する(ここでは便宜的にVS=VYとしている)。従って、コンパレータ569の出力が前記した第二状態になった場合にのみ、ANDゲート570は電源遮断信号VKを出力し(ここではLレベル)、これがCPU141の割込端子に入力される。
なお、コンパレータ569及びANDゲート570の作動電圧は、汎用定電圧電源回路555(出力:+12V)により供給されている。なお、ANDゲート570の作動電圧は+5Vなので、分圧抵抗570a、570bからなる調整部570c(DC−DCコンバータ等であってもよい)により電圧調整されている。また、前記した電圧監視基準信号567及び電源遮断信号発生用基準信号568も汎用定電圧電源回路555により作られる(電圧レベルは分圧抵抗563、564からなる調整部560により調整されている)。なお、停電時には汎用定電圧電源回路555からの電力供給も途絶えるので、ダイオード562とコンデンサ561を有する、CPU作動用補助電源回路556と同様の構成の基準信号用補助電源回路559が設けられている。
一方、図27に示すように、CPU141のワークメモリエリアを形成するRAM142には、RAMバックアップ電源回路551が接続されている。後述する通り、このRAM142内に遊技情報たる遊技データが記憶・保持(バックアップ)されることとなる。この電源回路551も、基本的には前記補助電源回路556あるいは559と同様の構成のものを採用できる。この場合、コンデンサあるいは電池にて構成される蓄電手段は、予想される停電時間に応じて、その間の記憶内容保持が可能となるように容量が設定される。
次に、バックアップ対象制御部のジョブ実行形態であるが、例えば主制御部140について図49を用いて説明したように、制御プログラムのメインジョブをリセット周期(例えば2ミリ秒)毎に繰り返し実行することにより、自然派生的に行われてゆくものである。メインジョブの大まかな流れは、個々のジョブの内容が相違するのみで、3つの制御部140、150、160について基本的には同じである。
そして、図31に示すように、RAM142内に形成されたワークメモリエリア590内には、制御プログラムの格納エリア591が形成されている。制御プログラムは、上記のメインジョブを実行するためのメインルーチン596の他、異常発生時のバックアップ処理のためのルーチンとして、バックアップ処理ルーチン592と回復処理ルーチン593とが形成されており、さらに、異常確定情報記憶手段としての電源遮断フラグ594が形成されている。なお、バックアップ対象制御部以外の制御部については、その制御プログラムにバックアップ処理ルーチン592と回復処理ルーチン593は含まれない。また、ワークメモリエリア590内には、遊技データの格納エリアが形成されているが、これはバックアップ処理時にはそのままバックアップデータ格納エリア595として機能するものである。ただし、このバックアップデータ格納エリア595は、ワークメモリエリア590の外にある別のエリア(この場合、別のRAMのエリアであってもよい)に形成してもよい。
以下、処理の流れについてフローチャートを用いて説明する。
図32は、各制御部のメインジョブの流れを共通化かつ簡略化して示すものである。S1は、ワークメモリエリア590の初期化ジョブであるが、後述する通り、通常のリセットではワークメモリエリアを含めたRAMの初期化が行われ(当然、データは全て消去される)、電源遮断異常から復帰した直後のリセット周期では、初期化の代わりに、バックアップデータ格納エリア595(図31)内に記憶・保持された遊技データにより、電源遮断発生時の記憶状態を回復する処理がなされるのである。
そして、初期化後は、S2においてタイマー監視(カウンタプログラムによるソフトタイマー処理である)により、リセット周期が到来したかどうかが確認され、リセット周期が到来していればS1の初期化ジョブに戻る。他方、リセット周期が到来していなければS3(I/O入出力)に進み、入出力ポート(例えば主制御部140では、図16の144)の所定のポートにアクセスして遊技制御に必要な遊技データ(遊技情報)を収集する。収集した遊技データは、図31のバックアップデータ格納エリア595内に記憶されるとともに、S4にて必要な形態に編集される。
処理に関与する遊技データの種別は、制御部毎に異なる。例えば、主制御部140の場合、賞球動作制御に関しては以下のものがある。
・カウント検知スイッチ53、カウント検知及び特定領域通過検知スイッチ54の通過に伴う15個賞球回数データの加算値。
・第一種始動口(普通電動役物)入賞検知スイッチ17sの通過に伴う6個賞球回数の加算値。
これらの加算値が判明すれば、賞球排出個数が算出できる。
また、図4に示す第一種始動口(普通電動役物)入賞検知スイッチ17s、カウント検知スイッチ53、カウント検知及び特定領域通過検知スイッチ54等の検知結果や、特別図柄当否判定乱数の取得値などを用いて、遊技が行われていない客待ちの状態、遊技は行われているが始動入賞がない状態(変動準備状態)、始動入賞があった状態、及び、特別遊技状態などの判別に使用するデータ等も、主制御部140が取り扱う遊技データである。また、始動入賞が検知されると、乱数値に基づいて当否判定が行われるが、保留始動入賞のものも含めて、その判定結果も重要な遊技データとなる。上記のデータをバックアップする場合は、主制御部140にてこれを行うのが望ましいといえる。
一方、主制御部140から枠制御部150に送られる遊技データとしては、次のようなものがある。これらのデータのバックアップは、主制御部140側と、枠制御部150側のいずれで行ってもよい。
・15個賞球回数が0でなければ15個の賞球個数データが、6個賞球回数が0でなければ6個の賞球個数データが送られる。
・それ以外の場合、例えば、左右下入賞口21、22や左右入球口42、43で遊技球の通過を検知した場合などにおいては、10個の賞球個数データが送られる。
主制御部140の賞球個数データ記憶手段には、各入賞口に対応した所定数の賞球個数データが、入賞した順にバッファ内に2ビット単位で記憶されている。主制御部140から枠制御部150に送信された賞球個数データに基づいて、枠制御部150では入賞順に賞球払出装置108から当該賞球個数が払い出され、賞球が払い出される毎に2ビットの記憶容量が解放されることになる。この賞球払出装置108に取り付けた払出賞球検知機構によって、賞球が払い出されるときにこの賞球個数が検知され、この検知情報は、主制御部140から枠制御部150に送信された賞球個数データと照合され、検知情報に基づく賞球払出が正常か否かを判別している。また、枠制御部150の指示に基づいて賞球個数が払い出されたとき、主制御部140の総賞球個数記憶手段に記憶されている賞球総数から払い出された賞球数を減算することになる。例えば、主制御部140から枠制御部150へ送信された賞球個数データを記憶するバッファには、入賞順に2ビット毎に払い出すべき賞球個数の情報が蓄積されており、また、主制御部140には払い出すべき賞球総数が総賞球個数記憶手段に記憶されており、賞球の払い出し途中で電源遮断等が発生した場合は、これらのデータを用いて払い出し動作の続きを復帰後に行わせることができる。
一方、特別図柄表示に関する遊技データは次のようなものがある。
すなわち、前述のように主制御部140は、当否判定の判定内容に応じて、対応する図柄表示パターン画像表示制御を行うためのデータを、前記したコマンドデータの集合として作成して、特別図柄制御部160へ送信する。この場合、コマンドメモリ(図16のRAM142内に形成されるので、これをバックアップデータ格納エリア595(図31)に含めておけばよい)に必要な要素コマンドのデータがセットされるので、例えば主制御部140にてバックアップを行う場合は、この要素コマンドのうち未処理のものを遊技データとして記憶保持すればよい。この場合、コマンドは特別図柄制御部160に逐次転送するようにし、転送済みのものから消去(あるいは無効化)してゆけば、未処理のものだけが主制御部140側に残るので都合がよい。また、次の要素モジュールの立ち上げまでに許されるタイマー値も遊技データの一部として記憶しておくとよい。
一方、特別図柄制御部160へ転送されてきたコマンドデータを遊技情報として、特別図柄制御部160側でバックアップする方法もある。これは、特別図柄制御部160のRAM162内に形成されたコマンドメモリに格納され、さらに対応する要素モジュールが画像処理の進行に伴い起動される。従って、より正確な表示動作復帰を目指す場合は、その要素モジュールの実行途中状態をも遊技データとして記憶しておくことが望ましい。また、前述の通り、主制御部140側から、複数のコマンドデータを一括して受け取り、順次これを読み出して実行することも可能であるが、この場合は、処理の終了したコマンドから順次消去(あるいは無効化)してゆけば、未処理のものだけが残るので都合がよい。
図32に戻り、S5では、編集された遊技データを用いて個々の遊技制御ジョブが実行される。その詳細については、既に説明済みであるので省略する。
さて、上記のようなメインジョブの実行中に、もし停電等による電源遮断異常が発生した場合は、次のようにしてバックアップ処理が行われる。すなわち電源遮断が発生すると、図28においてCPU主電源回路552の出力電圧が低下し、結果として既に説明した通り、ANDゲート570が電源遮断信号をCPU141の割込端子に入力する。これを受けてCPU141は、図31のバックアップ処理ルーチン592を起動する。
ここで、図27において電源遮断信号が入力される割込端子は、NMI(Non-Maskable Interrupt)端子であり、この端子を能動化することにより実行される割込処理ルーチンは、プログラムによる無効化が不能とされており、他の割込信号がNMI端子あるいは通常割込のINT端子に入力されても、一切中断されることなく処理が行われる。また、先に実行されている割込処理があれば強制的に終了され、NMI割込処理が優先される。
図33は、バックアップ処理の内容を示すものであり、まずS7で電源遮断フラグ594(図31)の値を「異常あり(ここでは「1」)」にセットする。このフラグのセットは、電源遮断信号が入力と対になるバックアップ処理が実行された場合にのみセットされる。すなわち、電源遮断異常以外のトラブル発生(例えばプログラム暴走など)時にはセットされることはない。
そして、この電源遮断フラグのセットが終了すればS8に進み、その時点でバックアップデータ格納エリア595内に記憶されている遊技データを記憶・保持させる。このとき、ワークメモリエリア590内に分散記憶されている遊技データのうち、必要なものをバックアップデータ格納エリア595に集める処理を実行するようにしてもよいし、別のエリアに集められていた遊技データを、バックアップデータ格納エリア595にコピーする処理を行ってもよい。これにより、バックアップデータ格納エリア595外に存在する遊技データを、喪失から救い出すことができる。
他方、バックアップ処理実行時にバックアップデータ格納エリア595内に残っている遊技データのみを救済するようにしてもよい。電源遮断された後は、図27のRAMバックアップ電源回路551の作動により、自動的にバックアップデータ格納エリア595内の記憶内容が記憶保持されることとなる。なお、より簡便な方法は、RAM142の全アドレス空間をバックアップ記憶保持の対象としておくことである。
ここで、図33に示すように、電源遮断フラグのセットと同時にバックアップデータ格納エリア595へのアクセスを禁止し、さらに停止命令(STOP)の挿入あるいは無限ループの設定により、バックアップ処理終了後にメインジョブのルーチンに復帰させないようにしておくことができる。このようにすれば、次のような効果が達成可能である。
[1]バックアップ処理以降のプログラム処理を停止しない場合、いわゆる不正基板等が遊技機に取り付けられていたりすると、その不正基板等から出力される割込信号により、制御に対して不正が加えられることが起こりうる。しかし、上記のようにプログラムを停止させれば、そのような不具合発生を未然に防ぐことができる。
[2]バックアップ処理終了後も補助電源の電圧は一定期間維持され、プログラム処理の続行は可能であるが、補助電源電圧が不安定化してくると、プログラムの正常作動が困難となり、甚だしい場合は暴走状態に陥って、バックアップデータ格納エリア595内のデータが壊されてしまうこともありうる。しかし、上記のようにプログラムを停止させれば、そのような不具合発生を防ぐことができる。
次に、図34は、初期化ジョブの流れを示すものである。このジョブの特徴は、その最初のステップS1000において、図31の電源遮断フラグ594の内容を読みにいくことである。もし、電源遮断異常から復旧後の最初の立ち上げ時においては、この電源遮断フラグ594の内容は「異常あり」を意味する「1」にセットされている。従って、この場合はS1400の回復処理ルーチン(図31;593)を実行して、バックアップデータ格納エリア595内のバックアップデータをもとに、電源遮断前の状態からの継続処理が可能となるように、RAM142のワークメモリエリア590(図31)の記憶状態を回復させる。なお、この実施例では、処理途中ジョブのバックアップデータか、処理待ちジョブのバックアップデータかのいずれかが残っていれば回復処理ルーチンS1400を実行し、いずれも残っていなければRAM142の初期化(S1100)を行うようにしている。他方、電源遮断フラグ594の内容が、「異常なし(ここでは「0」)」になっていれば回復処理ルーチンS1400は実行せず、初期化S1100を行う。
例えば、賞球排出ジョブ(例えば枠制御部150)に係るバックアップ処理の場合は、図35に示すように、既に説明した方式により、処理待ち賞球データ(例えば、処理待ちの賞球個数データ)あるいは処理途中の賞球データ(賞球排出状況を示すデータ)を用いて、ワークメモリエリア590(図31)の記憶状態を回復させる。図32のS5では、この回復された記憶内容に基づき賞球排出動作が再開される。一方、主制御部140における当否判定後の制御指令の流れをバックアップする場合は、図36に示すように、処理待ちあるいは処理途中の当否データを用いて、ワークメモリエリア590(図31)の記憶状態を回復させる。図32のS5では、この回復された記憶内容に基づき当否判定後に係る制御指令(例えば、図49の特別図柄メインジョブ(S90)、コマンドジョブ(S170)等)が再開される。
なお、遊技店の営業終了時等において、電源スイッチのオフにより正常に終了する場合は、これを電源遮断異常として検出せず、バックアップ処理を行わせない(あるいは、一旦行ったものを無効化する)ようにしておくことが望ましい。これには種々方法があるが、例えば電源スイッチをオフにすることにより終了信号を発生させ、この終了信号により電源遮断信号の発生を禁止化する手段を設けておく方法がある。そして、この電源遮断信号発生の禁止化処理が完了した後、電源からの電力供給を遮断するようにする。例えば、図27に示すように、電源監視回路553からの電源遮断信号の出力線上に、上記終了信号をインヒビット入力として使用するトライステートバッファ595を設けておく。終了信号がLレベルとしてトライステートバッファ595のインヒビット端子に入力されると、トライステートバッファ595の出力はハイインピーダンス状態となり、電源遮断信号の出力が禁止される。この方法は、上記のように、プログラム中断不能なNMI割込によりバックアップ処理を行う場合に特に有効である。なお、特開平10−85421号公報に記載されているように、電源遮断後、一定期間が経過した場合にRAM142の初期化を行う方法もある。
また、図37に示すように、遊技データのバックアップ記憶は、CPU141(あるいは151、161)の内部RAM領域142'(あるいは152'、162')に形成された、バックアップデータ格納エリア(図では、「バックアップRAM」と表示している)580において行うようにしてもよい。この場合、RAMバックアップ電源回路551の出力は、CPU141に設けられた、上記内部RAM領域142'の記憶保護のためのRAMバックアップ端子に接続される。
他方、バックアップ処理ルーチン592の実行は、上記のようなNMI割込処理にて行うのではなく、図38に示すように、通常のINT割込処理により行うようにしてもよい。この場合、CPU141は、そのとき実行しているプログラムルーチンを所定時間経過後にリセットした後、バックアップ処理ルーチン592を起動する。なお、複数のINT割込が競合した場合に、バックアップ処理ルーチン592の実行が優先されるよう、割込調停回路596を設けている。この調停回路596は、電源遮断信号を受けた場合、他の割込信号を待たせて電源遮断信号を割込信号として優先させるように機能する。その回路構成としては、イネーブルフリップフロップを2個含む、図19に示すものと類似のものを採用することができる(Dラッチ418、421がイネーブルフリップフロップである)。この場合、第一割込信号に電源遮断信号を対応させ、第二割込信号に他の割込信号を対応させれば、作動も図19に示すものと同様である。
一方、図39に示すように、優先順位のついた複数のINT端子(INT1、INT2、‥‥)を有するCPU141を用いる場合は、最も優先度の高いINT1端子に電源遮断信号を入力するようにしておく。
また、図40に示すように、CPU141に接続された別体の入出力インターフェース(入出力回路)581(144)に、電源遮断信号が入力されるようにしてもよい(なお、図27、図37〜図39でも入出力インターフェースが設けられているが、これらの図では図示を省略しているだけである)。この場合、CPU141は、入出力インターフェース581(144)の電源遮断信号の出力ポートに、予め定められたタイミングにて自発的にアクセスして電源遮断信号の検出を行う。図41は、その場合のジョブの流れを示すフローチャートであり、S3のI/O入出力ステップにて電源遮断信号のポートアクセスを行い、S2000にて電源遮断信号を検出すればS7〜S8のバックアップ処理ルーチンをサブルーチンとして実行する。この場合も、バックアップ処理ルーチンの実行後は、処理停止(S9)とすることが望ましい。
以上、本発明の実施の形態を説明したが、本発明はこれに限定されるものではなく、各請求項に記載した範囲を逸脱しない限り、各請求項の記載文言に限定されず、当業者がそれらから容易に置き換えられる範囲にもおよび、かつ、当業者が通常有する知識に基づく改良を適宜付加することができる。また、本発明は、第一種パチンコ機以外にも、いわゆる権利物、羽根物、アレンジボールと呼ばれている機種、一般電役などの種々の弾球遊技機へも適用が可能である。