以下、本発明の遊技機を実施例に基づいて更に詳細に説明する。図1は、実施例に係るパチンコ機の正面図であり、発光ランプやLEDランプ(以下、ランプ類ということがある)の配置状態を図示したものである。このパチンコ機は、横幅Wで縦幅H1の大きさのガラス扉26と、横幅Wで縦幅H2の大きさの前面板28とが開閉可能に構成されている。すなわち、横幅Wの左端に枢軸Pが設けられており、ガラス扉26及び前面板28が枢着されている。一方、ガラス扉26から透視できる位置には、各種遊技部品を配置した遊技盤25が設けられている。
このパチンコ機に配置されるランプ類は、遊技盤25に配置されるものと、ガラス扉26に配置されるものに大別されるが、ガラス扉26には、最上段の左右に大当りLED1が配置され、その下側には列状に大当りLED2が配置されている。後述するように、この実施例では、大当りLED1,LED2は、大当りゲームの開始前や、大当りゲーム中の大入賞口の開放時などに適宜なランプ演出として点滅するようになっている。
また、ガラス扉26において大当りLED2の下部には、左側に補給切れLEDが配置され、右側に下受皿満杯LEDが配置されている。これらはエラーランプであり、それぞれ、遊技球の供給が途絶えたこと、及び払出された遊技球が下受皿29に詰まったことを報知する目的で点灯される。
一方、遊技盤25には、左右の装飾風車LED、普通図柄記憶表示LED、特別図柄記憶表示LED、左サイドLED、右サイドLED、左右の入賞口ランプ、左右の下入賞口ランプ、左右の大入賞口ランプ、左右の入賞口LEDが配置されている。普通図柄記憶表示LEDは4個設けられており、普通図柄の変動動作中にゲート(不図示)を遊技球が通過した場合には、4個を限度として順次点灯されるようになっている。同様に、特別図柄記憶表示LEDも4個設けられており、大当りに係わる特別図柄が液晶表示部8で変動動作中に図柄始動口(不図示)を遊技球が通過した場合には、4個を限度として順次点灯されるようになっている。なお、遊技盤25に配置されたその他のランプ類は、遊技状態に応じて適宜なランプ演出をする目的で点滅するようになっている。
図2は、実施例のパチンコ機について全体的な回路構成を図示したブロック図である。図示の通り、このパチンコ機は、遊技動作を中心的に制御する主制御基板1と、液晶ディスプレイ8の動作を制御する図柄制御基板2と、音声的に遊技動作を盛上げる音声制御基板3と、ランプ類を点滅動作させて遊技動作を盛上げるランプ制御基板4と、遊技球を払出す払出制御基板5と、払出制御基板5に制御されて遊技球を発射する発射制御基板7と、AC24Vを受けて装置各部に直流電圧を供給する電源基板6とを中心に構成されている。
主制御基板1、図柄制御基板2、音声制御基板3、ランプ制御基板4、払出制御基板5は、ワンチップマイコンを備えるコンピュータ回路で構成されており、サブ制御基板2〜5は、主制御基板1からの制御コマンドに基づいて個別的な制御動作を実現している。
図3は、ランプ制御基板4と各種ランプ類の接続関係を図示したブロック図である。図示の通り、ランプ制御基板4は、電源基板6から各種の直流電圧を受けると共に、主制御基板1から制御コマンドCMD(ここでは1バイト)及びストローブ信号STBを受けて動作するようになっている。ランプ制御基板4では、主制御基板1からの制御コマンドCMDを解釈してランプ類の点灯/消灯状態を制御するが、コモン信号COM1〜COM4、セグメント信号SEG(D0〜D7)及び表示灯信号L1〜L7は、ランプ中継基板9や大当りLED中継基板10を通してランプ類に供給されるようになっている。なお、中継基板9,10は、受けた信号をそのまま伝送するだけである。
ランプ制御基板4から出力される信号のうち、表示灯信号L1〜L4は、ランプ中継基板9及び大当りLED中継基板10を通して、ガラス扉26に取り付けられた大当りLED基板に供給される。そして、表示灯信号L1〜L4は、図1に示す大当り用LED1、大当り用LED2、下受皿満杯LED、補給切れLEDに供給されることになる。
また、ランプ制御基板4から出力される表示灯信号L5は、ランプ中継基板9を通して、遊技盤上の左右の装飾風車LEDに供給される。同様に、ランプ制御基板4から出力される表示灯信号L6は、ランプ中継基板9を通して左右の入賞口ランプ及び左右の下入賞口ランプに供給され、表示灯信号L7は、左右の大入賞口ランプに供給される。なお、大当りLED1,2、下受皿満杯LED、補給切れLED、及び左右の装飾風車LEDには、直流電圧32Vが供給されており、左右の入賞口ランプや左右の下入賞口ランプにはランプコモン信号L−COMである直流電圧24Vが供給されている。
ランプ制御基板4から出力されるコモン信号COM1〜COM4のうち、COM1は、ランプ中継基板9を通して左右のサイドLEDに供給されている。そして、左サイドLEDには、セグメントデータSEG0〜SEG3(D0〜D3)が供給され、右サイドLEDには、セグメントデータSEG4〜SEG7(D4〜D7)が供給されているので、これらセグメントデータSEGiとコモン信号COM1の組合せに応じて各LEDが点灯されることになる。
また、ランプ制御基板4から出力されるコモン信号COM1〜COM4のうち、COM2は、ランプ中継基板9を通して左右の大入賞口LEDに供給されている。そして、左・大入賞口LEDには、セグメントデータSEG0,SEG1(D0,D1)が供給され、右・大入賞口LEDサイドLEDには、セグメントデータSEG2,SEG3(D2,D3)が供給されている。従って、これらセグメントデータSEGiとコモン信号COM2の組合せに応じて各LEDが点灯されることになる。
コモン信号COM3,COM4も同様であり、COM3,COM4は、ランプ中継基板9を通して、セグメントデータSEG0〜SEG3(D0〜D3)と共に、図柄記憶表示LEDに供給されている。従って、コモン信号COM3、COM4とセグメントデータSEGiの組合せに応じて、普通図柄記憶表示LEDや特別図柄記憶表示LEDが適宜に点灯されることになる。
図4及び図5は、ランプ制御基板4の入力部(図4)と出力部(図5)とを図示したものである。図4に示すように、主制御基板1からの制御コマンドCMDは、入力ポート12を通してワンチップマイコン11に伝送される。なお、この実施例では、入力ポート12として、74244相当品のバスバッファを使用している。
また、主制御基板1からは、制御コマンドCMDの出力に同期してストローブ信号STBも出力されるが、このストローブ信号STBは、シュミットトリガ回路を通して、CPUの割込み端子に供給されている。CPUに割込み信号が加わると、CPUは割込み処理プログラムの実行を開始するが、この割込み制御プログラムにおいて制御コマンドが取得されることになる。制御プログラムを取得すると、CPUは、後述する処理に基づいて、ワンチップマイコンの出力ポートP3,P0,P1から適宜なデータを出力する。
図5に示すように、出力ポートP3からの出力データは、出力ドライバ13を通して、コモン信号COM1〜COM4として出力される。なお、コモン信号COMiは、セグメントデータSEGjと組み合わされて、LEDランプを点灯させる信号であるが、コモン信号COM1は、図1に示す左右サイドLEDに供給される。以下同様であり、コモン信号COM2は左右の大入賞口LEDに供給され、コモン信号COM3は普通図柄記憶表示LEDに供給され、コモン信号COM4は特別図柄記憶表示LEDに供給される。
ワンチップマイコンの出力ポートP0の出力データは、出力開閉回路14を通して、セグメントデータSEG0〜SEG7として出力される。なお、この実施例では、出力開閉回路14としてM54585を使用し、出力ドライバ13としてM54562を使用しており、図6に示すように、コモン信号COMiがHレベルであって、セグメントデータSEGjとしてLレベルのデータを受けたLEDランプが点灯されることになる(i=1〜4、j=0〜7)。
一方、ワンチップマイコンの出力ポートP1の出力データは、トランジスタ群15a,15bを通して、表示灯信号L1〜L7として出力されている。これら表示灯信号は、直流24V(ランプコモン信号L−COM)や直流32Vと共に出力されるが、表示灯信号L1〜L7は、それぞれ、図1に示す大当りLED1、大当りLED2、下受皿満杯LED、補給切れLED、左右の装飾風車LED、入賞口ランプ(左右+上下)、左右の大入賞口ランプを点灯させる信号である。
続いて、図4及び図5の構成を備えるランプ制御基板4における動作内容を説明する。ランプ制御基板4の動作は、電源投入後、無限ループ状に繰り返されるメイン処理(図8)と、メイン処理中に主制御基板1からのストローブ信号STBを受けて開始されるSTB割込み処理(図7)と、メイン処理中2m秒毎に開始されるタイマ割込み処理(図13)とで構成されている。
先ず、STB割込みから説明すると、図8に示すメイン処理中、主制御基板1からストローブ信号が加わると、CPUは、実行中の処理を中断してレジスタ類を退避した後(ST30)、入力ポート12から制御コマンドを取得し、これをコマンドデータ格納エリアCMDDTに格納する(ST31)。この格納動作を終えれば、CPUは退避しておいたレジスタを復帰させて(ST32)、割込み処理を終える(ST33)。
この実施例では、制御コマンドを1バイトで構成しており(正確には7ビット)、図7(c)に列記したものが用意されている。そして、制御コマンドは、その指令内容及び具体的な演出動作に応じて、並列的に動作可能なコマンド系列0〜コマンド系列5に大別されている。例えば、コマンド系列0の制御コマンドは、遊技盤上に配置された同一のランプ類を用いた演出を指示しているので、このコマンド系列0に含まれる制御コマンドは、互いに排他的にしか動作できず並列的には動作できない。
逆に、コマンド系列0に属する何れかの制御コマンドが実行中であっても、他のコマンド系列1,2,3,4,5に属する制御コマンドの指令は、並列的に動作可能となる。例えば、コマンド系列1に属する制御コマンドは、ガラス扉30に配置された大当りLEDを点滅させるものであり、遊技盤上のランプ類とは独立して動作可能である。
また、コマンド系列2やコマンド系列3に属する制御コマンドは、コマンド系列0の制御コマンドの実行時には使用しないランプ類を使用し、それぞれ特別図柄記憶状態(図柄始動口への入賞状態)や普通図柄記憶状態(ゲートへの通過状態)を表示するものであるから、他のコマンド系列に属する制御コマンドと並列的に動作可能であり、むしろ並列的に動作させる必要がある。この点は、遊技機のエラー状態に関するコマンド系列4やコマンド系列5に属する制御コマンドについても同様であり、他のコマンド系列に属する制御コマンドの実行時には使用しないランプ類を使用し、他のコマンド系列に属する制御コマンドとは並列的に動作可能に構成されている。
以上の通り、本実施例では、排他的に実行化すべき複数の制御コマンドを一つのコマンド系列にまとめている。そして、コマンド系列の異なる制御コマンド同士を互いに並列的に動作させて、以下に説明する、特徴ある優れたランプ演出を可能にしている。
一方、各コマンド系列に属する制御コマンドは、制御コマンドの指令内容に応じてコマンド種別に分類されている。例えば、同一のコマンド系列に属する制御コマンドも、それが実行化されるタイミングに応じてまとめられている。なお、実行化されるタイミングとは、遊技状態の時間的推移に基づいて区分されるタイミングであり、この実施例では、コマンド系列0の制御コマンドは、特別図柄の変動中を演出するコマンド種別0と、特別図柄の変動停止後のコマンド種別3に更に分類されている。
このように本実施例では、複数の制御コマンドは、コマンド系列に大分類され、コマンド系列の制御コマンドは、コマンド種別に更に小分類されている。そして、受信した制御コマンドCMDiは、図7(b)に示すように、コマンド種別i(i=0〜8)毎に、コマンドデータ格納エリアCMDDT(i)に格納される。
その後の処理は、図8〜図14のフローチャートに示す通りであるが、フローチャートの説明に先立って概略的に説明する。ランプ制御基板4では、制御コマンドを受信すると、受信した制御コマンドに基づいて図17のような選択テーブルCMD_TBLが参照される。選択テーブルCMD_TBLは、制御コマンドによって実行化されるランプ演出について、その演出内容を規定する演出参照テーブル(CM**H_TBL)を制御コマンド別に列記したものである。なお、**は、任意の数を意味する(以下同様)。
例えば、制御コマンド03Hを受信した場合には、選択テーブルCMD_TBLの内容に基づき、演出参照テーブルがCM03H_TBLであると決定される。なお、この実施例では、制御コマンドが7ビット長で構成されていることから、選択テーブルCMD_TBLには、00H〜7FHの128個の制御コマンドに対応して、128個のアドレス値が記憶されている(但し、本実施例では128個全ての制御コマンドを使用している訳ではない)。
図18は、ランプ演出の演出参照テーブルCM**H_TBLを一覧表にしたものである。図示の通り、各演出参照テーブルCM**H_TBLは、この実施例では第1欄〜第6欄を備えており、第1欄はシナリオタイマ欄となっている。ここでシナリオタイマ欄に格納されているシナリオタイマ値は、制御コマンドの受信に対応して開始される特定のランプ演出の実行継続時間を意味している。なお、シナリオタイマ値が0であれば、継続時間に特に制限がないことを意味している。
したがって、シナリオタイマ値が0の場合には、同一コマンド系列に属する次の制御コマンドを受信するまで、(演出参照テーブルCM**H_TBLで決まる)同一のランプ演出を永続的に持続することになる。例えば、制御コマンド03Hを受信すると演出参照テーブルCM03H_TBLが選択されるが、この場合の演出は、同一コマンド系列に属する次の制御コマンドを受信するまで持続される。
一方、シナリオタイマ値が0以外の場合には、シナリオタイマ値×2mSの時間は同一のランプ演出を持続するが、その後は、次のランプ演出に移行することになる。例えば、制御コマンド02Hを受信すると演出参照テーブルCM02HTBLが選択されるが、この場合の演出は、演出参照テーブルCM02H_TBLの第1行目の演出が3秒間(=1500×2)継続された後、演出参照テーブルCM02H_TBLの第2行目の演出が3秒間行われ、その後は、演出参照テーブルCM02H_TBLの第3行目の演出が行われる。なお、シナリオタイマ値1500が3秒を意味するのは、2mS毎に生じるタイマ割込み処理によってカウンタ値が計数されるためである。
図18に示すように、各演出参照テーブルCM**H_TBLの第2欄〜第6欄には、表示灯信号の参照テーブルLAMP_**_TBLと、COM1用セグメントデータの参照テーブルCOM1_**_TBLと、COM2用セグメントデータの参照テーブルCOM2_**_TBLと、COM3用セグメントデータの参照テーブルCOM3_**_TBLと、COM4用セグメントデータの参照テーブルCOM4_**_TBLのアドレス値がそれぞれ記載されている。なお、この実施例では、この参照テーブルを「電飾パターンデータテーブル」と命名している。
表示灯信号の電飾パターンデータテーブルLAMP_**_TBLは、表示灯信号L1〜L7をどのように点灯させるかのパターンデータ(ビットデータ)を記憶したものである。また、電飾パターンデータテーブルCOMi_**_TBLは、コモン信号COMiが供給されているLEDランプを、どのように点灯させるかのパターンデータ(セグメントデータ)を記憶したものである(i=1〜4)。これらのLEDランプは、コモン信号COMiとセグメントデータSEGjの組合せによって点灯/消灯が決定されるので、結局、電飾パターンデータテーブルCOMi_**_TBLには、コモン信号COMiと組み合わされるセグメントデータSEGのH/Lレベルが規定されていることになる。
図19は、この電飾パターンデータテーブルを一覧表にしたものである。電飾パターンデータテーブルLAMP_**_TBL、及びCOMi_**_TBLは、可変長のデータを記憶するテーブルであり、具体的なデータ長は、第1欄の演出番号によって規定される。ここで演出番号は、図20に示すシナリオテーブルTM_TBLの参照行を特定する番号である。なお、演出番号が0の場合はシナリオテーブルを参照しない静的な動作(つまり、ランプ点滅を伴わない動作)であり、例えば、普通図柄記憶表示LEDや特別図柄記憶表示LEDの動作において選択される。
図20に示すように、シナリオテーブルTM_TBLは、第1欄〜第3欄からなり、演出番号で決まる各ランプ演出について、タイマMAX値とカウンタMAX値とカウンタ再設定値とを規定している。各ランプ演出は、パーツ演出の組合せで構成されており、第1パーツの演出に続いて、第2パーツの演出が行われ、以下同様に第3パーツ以降の演出が続くように構成されている。
そのようなパーツ演出の連続において、シナリオテーブル第1欄のタイマMAX値は、当該ランプ演出における各パーツ演出の持続時間を規定している。また、シナリオテーブル第2欄のカウンタMAX値は、当該ランプ演出におけるパーツ演出の推移数を規定している。例えば、演出番号2のランプ演出は、第1パーツの演出を0.26秒間(=130×2)継続させ、その後、第2パーツの演出に移行して0.26秒間継続させ、以下同様に、第3パーツの演出を0.26秒間継続させ、第4パーツの演出を0.26秒間継続させて一連のランプ演出の一巡を終えることになる。なお、130が0.26秒を意味するのはタイマ割込みが2mS毎に行われることによる。
パーツ演出の具体的な内容は、図19に示す電飾パターンデータテーブルに規定されており、例えば、電飾パターンテーブルLAMP_03_TBLであれば、その第1欄より演出番号2となるが、各パーツの演出は、0101000B、0101000B、00100000B、0010000Bのパターンデータで規定される(Bは2進数を意味する)。
図21は、電飾パターンデータテーブルによって規定されるランプ演出の推移を例示したものである。例えば、LAMP_03_TBLが選択された場合、表示灯信号L1〜L7は、シナリオテーブルTM TBLのタイマMAX値(=130)とシナリオカウンタMAX値(=4)とで決まる0.26秒×4を一周期として、01010000B→01010000B→00100000B→00100000Bのように駆動されることを示している。
電飾パターンテーブルLAMP_**_TBLにおけるパターンデータのビット0〜ビット6は、表示灯信号L1〜L7に対応するので、例えば、パターンデータが01010000B→00000000B→01110000B→00000000Bと変化する場合には、表示灯L5,L7の点灯→全表示灯の消灯→表示灯L5,L6,L7の点灯→全表示灯の消灯の動作を繰り返すことになる。
なお、LAMP_**_TBLの選択に合わせて、COM1_**_TBL、COM2_**_TBL、COM3_**_TBL、COM4_**_TBLも選択されているので、図21には、その点も含めて図示している。コモン信号COMiについての演出番号と、表示灯信号の演出番号とを一致させれば、パーツ演出の移行タイミングが互いに同期するが、逆に、コモン信号COMiについての演出番号を、表示灯信号の演出番号と相違させてタイマMAX値やカウンタMAX値を相違させれば、パーツ演出の移行タイミングを非同期とすることができる。なお、この実施例では、コモン信号COM3、COM4は、図柄記憶表示LEDに供給されるので、他のランプ演出とは同期させていない。
続いて、以上説明した概略動作を踏まえてランプ制御基板4におけるメイン処理(図8)と、2mS毎に実行されるタイマ割込み処理(図13)について詳細に説明する。遊技機に電源が投入されると、ランプ制御基板4のCPUは先ずRAMクリアなど各種の初期設定を行った後(ST1)、コマンド監視処理を実行する(ST2)。
コマンド監視処理は、STB割込み処理プログラム(図7(a))によって、主制御基板1からの制御コマンドを新たに取得したか否かを判定する処理であり、遊技機の電源投入後、無限ループ状に繰り返し実行される。具体的な処理内容としては、先ず、コマンド種別iに応じて設けられた図7(b)のコマンドデータ格納エリアCMDDT(i)の内容を、バッファエリアCMDBF(i)にコピーする(図15(a)(b)参照:i=0〜8)。この際、バッファエリアCMDBF(i)の元の値CMDi’と新たにコピーした制御コマンドCMDiとが一致しているか否かを判定する。両コマンドが不一致となるのは、その制御コマンドCMDiが新規に取得したコマンドであるためであり、このような制御コマンドは系列別の格納エリアCMDARに格納する。
先に説明したように、本実施例では、制御コマンドはコマンド種別0〜種別8の小分類に区分され、コマンド系列0〜5に大分類されている。受信した制御コマンドは、コマンド種別毎にコマンドデータ格納エリアCMDDT(i)に格納されているので、新規に取得したコマンドであると判定された制御コマンドCMDは、それが属するコマンド系列xに応じて、該当する取得格納エリアCMDAR(x)に格納することになる(図15(c))。
また、この動作に合わせて、該当するシナリオカウンタSCENCT(x)をゼロクリアすると共に、該当するシナリオ計時領域TIMER(x)と、そのバッファ領域TIMERBF(x)にシナリオタイマの初期値を設定する(図15(d)〜(f))。
ここでシナリオカウンタSCENCT(x)の内容は、これから始まる一連のランプ演出のシナリオ番号を意味する。例えば、図18の演出参照テーブルCM02H_TBLのように、第1番目のシナリオを実行した後(CM02H_TBLの1行目)、第2番目のシナリオ(CM02H_TBLの2行目)に移行する場合もあるので、実行すべきシナリオ番号を管理するため、図15(d)のシナリオカウンタSCENCTを活用している。但し、図18の演出参照テーブルCM01H_TBLのように、単一のシナリオしか定義されていない場合には(この場合、必ず第1欄のシナリオタイマ値が0となる)、シナリオカウンタSCENCTの値は、ステップST2の処理で初期値設定された後、変化することはない。
先に説明したように新規の制御コマンドCMDが検出された場合には、シナリオ計時領域TIMER(x)と、そのバッファ領域TIMERBF(x)にシナリオタイマの初期値を設定するが(図15(d)〜(f))、シナリオタイマの初期値は、図18の演出参照テーブルの第1欄によって特定される。このシナリオタイマ値の初期値は、第1番目のシナリオの実行継続時間を意味するものである。
例えば、図18の演出参照テーブルCM02H_TBでは、第1番目のシナリオ(CM02H_TBLの1行目)、→第2番目のシナリオ(CM02H_TBLの2行目)→第3番目のシナリオ(CM03H_TBLの3行目)のように移行するので、ここでは、第1番目のシナリオの実行継続時間として1500(1500×2=3秒)を設定するのである。なお、図18の演出参照テーブルの第1欄がゼロの場合には、シナリオが進行しない(第1番目のシナリオを永続的に持続させる)ことを意味して、シナリオ計時領域TIMER(x)及びバッファ領域TIMERBF(x)は共にゼロとなる。
以上のようにして新規取得の制御コマンドの把握と、その新規取得の制御コマンドによって規定されるランプ演出についての、シナリオ進行の初期設定が終了する(ST2)。そこで次に、現在進行中の全てのランプ演出について、シナリオを進行させるべきかの判定処理と、必要なシナリオ進行処理を行う(ST3)。
以下、図9に示すシナリオ進行処理のフローチャートに基づいて説明する。先ず、コマンド系列を示す変数jを初期設定した後(ST10)、バッファ領域TIMEBF(j)の値がゼロか否かを判定する(ST11)。先に説明したように、バッファ領域TIMEBF(j)には、第1番目のシナリオの実行継続時間が初期値として設定されるが、初期値がゼロの場合はシナリオが進行しないことを意味した。したがって、バッファ領域TIMEBF(j)≠0の場合だけ、次にシナリオタイマ領域TIMER(j)の値がゼロか否かを判定する(ST12)。
シナリオタイマ領域TIMER(j)は、実行中のシナリオの継続時間を管理する減算タイマであるから(図13のST26)、シナリオタイマTIMER(j)=0とは、実行中のシナリオの継続時間が終了したことを意味する。なお、初期値設定の段階からTIMER(j)=0であれば、TIMEBF(j)=0となっているので(ST2)、シナリオ進行のないランプ演出は、ステップST11の判定において排除されている。
したがって、TIMEBF(j)≠0であって、TIMER(j)=0の場合には、次のシナリオに移行させるべく、図15(c)のシナリオカウンタSCENCT(j)の値を+1すると共に(ST13)、次のシナリオのシナリオタイマ値をTIMER(j)に初期値設定する(ST14)。なお、次のシナリオのシナリオタイマ値は、図18に示す演出参照テーブルCM**H_TBLの第1欄から取得される。
次に、TIMER(j)の値をTIMEBF(j)にコピーし(ST16)、コマンド系列を示す変数jを+1した後、その値が6になるまで、ステップST11〜ST16の処理を繰り返す。以上の処理の結果、シナリオタイマの値がゼロになったシナリオ演出については、シナリオ番号が更新(+1)されることになる。なお、シナリオ進行処理は、コマンド系列0〜5の全てについて行われ、系列0〜系列5の制御コマンドによるランプ演出が並列的に実行される。
シナリオ進行処理(ST3)が終われば、パターンセットPTNSET処理(ST4)に移行する。パターンセット処理とは、コマンド格納エリアCMDAR(j)に格納されている最新の制御コマンドに基づいて、出力信号系列k毎の出力データ生成の準備を意味し、具体的には、図16に示すセグメントパターン領域SEGPTN(k,j)に、図19に示す電飾パターンデータテーブルのアドレス値を登録することを意味する。なおj=0〜5、k=0〜4である。
ここで、出力信号系列kとは、動作メカニズムが同一であって一括して制御すべき出力信号(ランプ類の点灯信号)をまとめたものである。具体的には、コモン信号COMiを伴うことのない表示灯信号(信号系列0)、コモン信号COM1と組み合わされて実行化されるセグメントデータ(信号系列1)、コモン信号COM2と組み合わされて実行化されるセグメントデータ(信号系列2)、コモン信号COM3と組み合わされて実行化されるセグメントデータ(信号系列3)、コモン信号COM4と組み合わされて実行化されるセグメントデータ(信号系列4)に分類されている。
信号系列0のパターンデータは、各1ビットごとに独立して、対応するランプ類を点灯させるものである。また、信号系列1〜4のパターンデータは、それぞれ、コモン信号COM1〜COM4と組み合わされて、対応するランプ類(具体的にはLEDランプ)を点灯させるものである。信号系列が異なれば、動作メカニズムが異なるが、同一の信号系列内のビットデータは同一メカニズムでランプ類を点灯させる。
以上を踏まえてパターンセットPTNSET処理を具体的に説明すると下記の通りである。図10に示すように、先ず、コマンド系列を指定する変数jを0に設定した後(ST60)、図11に示すサブルーチンSEARCHを実行する(ST61)。サブルーチンSEARCHでは、図15(c)のCMDAR(j)に格納されている制御コマンドに基づいて、図17の選択テーブルCMD_TBLを検索して、当該制御コマンドに対応する演出参照テーブルCM**H_TBLを特定する(ST81)。
そして、特定された演出参照テーブルCM**H_TBLの先頭アドレスを作業領域であるADRSSエリアに格納する(ST82)。なお、演出参照テーブルCM**H_TBLは、図18に示す通りであり、同一の制御コマンドによって実行されるランプ演出に、連続する一連のシナリオが存在する場合には、CM**H_TBLの第1欄に記憶されているシナリオタイマ値がゼロ以外の値となっている。
次に、現在実行中のシナリオ番号を、図15(d)のシナリオカウンタSCENCT(j)によって特定し、その値がゼロか否かを判定する(ST83)。ここで、シナリオカウンタSCENCT(j)がゼロ以外であれば、ADRSSエリアに格納した演出参照テーブルCM**H_TBLのアドレス値を、シナリオカウンタSCENCT(j)の分だけ増加させて処理を終える(ST84)。例えば、ADRSSエリアにはCM02H_TBLのアドレス値が格納されており、シナリオカウンタSCENCT(j)の値が1であれば、CM02H_TBLのアドレス値が+12されてADRSSエリアに再格納される。
以上のようにしてサブルーチンSEARCHの処理が終わると、出力信号系列を指定する変数kを先ずゼロクリアする(ST62)。次に、ADRSSエリアに格納されているアドレス値から演出参照テーブルCM**H_TBLを特定し、特定された演出参照テーブルCM**H_TBLの第(k+1)欄(=CM**H_TBL(k+1))の値がゼロか否かを判定する(ST63)。
変数kは0〜4まで変化するので、判定されるのは、図18に示す演出参照テーブルCM**H_TBLの第2欄〜第6欄の値である。ここで、演出参照テーブルCM**H_TBLの第2欄〜第6欄には、表示灯信号用の電飾パターンデータテーブルのアドレス値、コモン信号COM1用の電飾パターンデータテーブルのアドレス値、コモン信号COM2用の電飾パターンデータテーブルのアドレス値、コモン信号COM3用の電飾パターンデータテーブルのアドレス値、コモン信号COM4用の電飾パターンデータテーブルのアドレス値が記憶されている。そして、アドレス値がゼロである場合には、その信号出力系列のランプ演出を行わないことを意味する。
そこで、特定された演出参照テーブルCM**H_TBLの第(k+1)欄の値がゼロでなく、有意なアドレス値が存在する場合だけ、そのアドレス値を取得する(ST64)。そして、取得したアドレス値を、図16のセグメントパターン領域SEGPTNにおける該当欄SEGPTN(k,j)の内容と比較する(ST65)。なお、図16に示すように、SEGPTN領域には、コマンド系列jごとに分類された制御コマンドについて、実行すべきランプ演出の具体的内容を特定するべく、図19の電飾パターンデータテーブル(LAMP_**_TBLやCOMi_**TBL)の先頭アドレス値を信号出力系列kごとに記憶している(図16)。
ステップST64の処理で取得したアドレス値が、SEGPTN(k,j)の内容と一致しない場合は、コマンド格納エリアCMDAR(j)の制御コマンドが新規に受信した制御コマンドであるか、シナリオが変化したことを意味する。そこで、そのような場合には、ステップST64の処理で取得したアドレス値(電飾パターンデータテーブルの先頭アドレス値)を、セグメントパターン領域の該当欄SEGPTN(k,j)に格納する(ST66)。
続いて、格納した電飾パターンデータテーブル(LAMP_**_TBLやCOMi_**_TBL)の第1欄から、当該ランプ演出の演出番号を取得する(ST67)。図19に示すように、電飾パターンデータテーブルの第1欄には、演出番号が記憶されており、その演出番号に対応して図20のシナリオタイマには、タイマMAX値、カウンタMAX値、カウンタ再設定値が記憶されている。なお、演出番号がゼロの場合は、そのランプ演出が動きのない静的なもの(例えば図柄記憶表示など)であることを意味している。
そこで、演出番号がゼロであるか否かを判定して(ST68)、ゼロでない場合には、当該演出番号nをインデックスとして、図20(b)に示すILMTM(n)の第1欄と第2欄にゼロを格納する(ST69)。図14にも示す通り、ILMTMエリアの第1欄と第2欄は、実行中のランプ演出・各パーツの継続時間と移行回数を管理するタイマとカウンタであり、初期値設定としてゼロクリアするのである。
以上の処理を終えれば、出力信号系列を示す変数kを+1し(ST70)、k=5となるまで、ステップST63〜ST70の処理を繰り返す。この動作によって、第j番目のコマンド系列に属する、新規に取得した制御コマンドについてランプ演出動作の準備が完了する。したがって、これに続いて、コマンド系列を示す変数jを+1して(ST72)、変数j=6となるまで、ステップ61〜72の処理を繰り返す。以上の動作によって、コマンド系列0〜5に属する、新規に取得した制御コマンドについて、ランプ演出動作の準備が全て完了することになる。
このようにしてパターンセット処理(PTNSET)を終えれば、次に、出力データ作成処理(OUTSET)に移行する(ST5)。図12に示すように、出力データ作成処理(OUTSET)では、先ず、図12(b)に示すバッファ領域SEGBFを全てゼロクリアし(OST1)、コマンド系列を示す変数jと出力信号系列を示す変数kをゼロに初期値設定する(OST2,OST3)。
その後、図16に示すセグメントパターン領域のSEGPT(k,j)の値を取得し、取得値を作業領域であるADRSSエリアに格納する(OST4)。SEGPT(k,j)には、ランプ演出を行う場合には、図19の電飾パターンデータテーブルの先頭アドレスが記憶されており、ランプ演出が存在しない場合にはゼロが記憶されている。したがって、SEGPT(k,j)の値がゼロ以外であれば、有意なアドレス値が取得できたことになる。
そこで、次に、取得されたアドレス値に基づいて、電飾パターンデータテーブルの第1欄から演出番号を取得し、取得値がゼロか否かを判定する(OST6)。演出番号がゼロでない場合とは、当該ランプ演出が動的なものであることを意味する。そこで演出番号nがゼロ以外の場合には、図20(b)のILMTM(n)の第2欄からカウンタ値を取得し、図19の電飾パターンデータテーブル(LAMP_**_TBL,COMi_**_TBL)の該当アドレスを特定する(OST7)。例えば、現在実行中のパターンデータが第m回目のパターンデータであれば、該当する電飾パターンデータテーブルの先頭アドレスから+mされた値が該当アドレスとなる。
次に、上記の該当アドレスからパターンデータを取得し(OST8)、取得したパターンデータをSEGBF(k)の値とOR演算し、演算結果を再度SEGBF(k)に格納する(OST9)。これは、コマンド系列の異なるコマンド毎に使用するビットが相違するので、同一の出力信号系列について出力データを総合化するためである(図16の最終行参照)。
次に、変数kを+1して、変数kがk=5となるまでステップOST4〜OST11の処理を繰り返す。この結果、コマンド系列jに属する制御コマンドについての出力すべきパターンデータが、バッファ領域であるSEGBF(k)にまとめられたことになる。したがって、ステップOST11の判定においてk=5となれば、コマンド系列を示す変数jを+1して、変数jがj=6となるまでステップOST3〜OST13の処理を繰り返す。
この結果、全てのコマンド系列jに属する制御コマンドについての出力すべきパターンデータが、全ての出力信号系列kにつき、SEGBF(k)にまとめられたことになる。そこで、最後に、k=0〜4と変化させつつSEGBF(k)の内容をSEGDT(k)にコピーしてサブルーチンOUTSETの処理を終える(OST14)。
以上のようにして出力データ作成処理(図8のST5)が終われば、最後にウォッチドッグタイマ処理(WDTOUT)をして(ST6)、ステップST2の処理に戻る。このように、本実施例では、電源投入後、ステップST2〜ST6の処理が無限ループ状に繰り返される。なお、プログラムの暴走によってステップST6の処理が一定時間実行されない場合には、CPUに強制的にリセットされるようになっており、ウォッチドッグタイマ処理では、そのシステムリセットを防止するべくウォッチドッグタイマを初期値設定している。
図8に示す無限ループ状の処理の間に、主制御基板1からのストローブ信号STBに基づく割込み処理が実行されるのは前述した通りである。このことと同様に、無限ループ状の処理の間には、図13に示すタイマ割込み処理が実行される。なお、タイマ割込みの割込み周期は2mSである。
タイマ割込みでは、レジスタ類が退避された後(ST20)、先ずSEGDT番地の内容をワンチップマイコンの出力ポートP1に出力すると共に、出力ポートP3にはゴースト防止のためにクリアデータ(=0)を出力する(ST21)。図5に関して説明したように、出力ポートP1に出力されたデータは表示灯信号L1〜L7として、ガラス扉26や遊技盤25などに配置された電飾ランプやLEDランプに供給される。また、出力ポートP3に出力されたデータは、コモン信号COM1〜COM4として各LEDランプに供給される。
ステップST21の処理が終われば、スキャンカウンタSCNCTの値を+1して更新する(ST22)。ここで、スキャンカウンタSCNCTは、0〜3の範囲で循環するカウンタであり、コモン信号COM1〜COM4を記憶しているCOM_TBLエリアを順次アクセスする目的で使用される。すなわち、更新されたスキャンカウンタSCNCTに基づき、先ず、SCNCT+1が指示するセグメントデータエリアSEGDTのセグメントデータSEGDT(SCNCT+1)を出力ポートP0から出力する(ST23)。
なお、図12(b)に関して説明し図13にも記載の通り、セグメントデータエリアSEGDTには、コモン信号COMiと組み合わされてLEDランプを駆動するセグメントデータが格納されている。具体的には、SEGDT(2)〜SEGDT(5)にはCOM1用のセグメントデータ〜コモン信号COM4用のセグメントデータが格納されている。
次に、スキャンカウンタSCNCTの指示するCOM_TBLエリアのデータを、ワンチップマイコンの出力ポートP3を出力する(ST24)。この動作によって、COM1かCOM2かCOM3かCOM4かの何れかのコモン信号を受けているLEDランプが点灯されることになる(ダイナミック点灯)。なお、全てのLEDランプが同時に駆動されることはないが、タイマ割込みが2mSごとに発生するので実質上何の問題もない。
以上の処理によってランプ類の点灯動作が終了するので、次に電飾タイマの更新処理を行う(ST25)。図14は、この更新処理を具体的に示すフローチャートである。先ず、演出番号を示す変数iをゼロにした後(ST40)、電飾タイマの値ILMTM(2i)を+1する(ST41)。なお、図10のステップST69に関して説明したように、電飾タイマの値ILMTM(2i)は、ゼロに初期設定されているが、ステップST41の処理によって、2mS毎に+1されることになる。
続いて、更新後の電飾タイマの値ILMTM(2i)をシナリオテーブルTMTBLの該当データTM_TBL(3i)と対比する(ST42)。図20(a)や図15(b)に示すように、該当データTM_TBL(3i)はタイマMAX値であり、もし、ILMTM(2i)=TM_TBL(3i)なら、当該演出についてのタイムアップを意味するのでILMTM(2i)の値をゼロリセットする(ST43)。また、これに続けて、ILMTM(2i+1)の値を+1して更新する(ST44)。ILMTM(2i+1)は、演出番号iの演出のカウンタ値であるが、タイマがカウンタアップしたことから、次のパターンデータに変えるための処理を行うのである。
次に、ILMTM(2i+1)の値とTM_TBL(3i+1)の値を比較する(ST45)。ILMTM(2i+1)は、演出番号iの演出のカウンタ値であり、TM_TBL(3i+1)はシナリオテーブルTM_TBLに格納されているカウンタMAX値である(図15(b)(c)、図20(a)参照)。したがって、ILMTM(2i+1)=TM_TBL(3i+1)の場合とは、一連のランプ演出が一通り終了することを意味する。そこで、そのような場合には、カウンタ再設定値TM_TBL(3i+2)を初期値としてILMTM(2i+1)に格納する(ST46)。通常は、カウンタ再設定値はゼロであるから、以降、第1パーツのランプ演出から再開されるが、もし、ゼロ以外なら途中のパーツのランプ演出から再開される。
以上の処理が終われば、演出番号を示す変数iを+1して(ST47)、変数iがnになるまでステップST41〜ST48の処理を繰り返す。その結果、全てのランプ演出について時間進行の処理が行われることになる。したがって、異なるコマンド系列に属する複数の制御コマンドの実行開始タイミングが異なっても、全体として同期したランプ演出が実現されることになる。
図13の説明に戻ると、ステップST25の電飾タイマ更新処理が終われば、図15(e)に示すシナリオタイマTIMER(j)の値がゼロでない限り、その値を−1する(ST26)。そして、レジスタの復帰処理を行ってタイマ割込み処理を終える(ST27)。なお、シナリオタイマTIMER(j)はコマンド系列ごとに設けられており、各シナリオの継続時間を管理するものである(図9参照)。
以上説明したように、本実施例では、コマンド系列(j=0〜5)の異なる複数の制御コマンドを実行する際、並行して実行する各制御コマンドのランプ演出は、それぞれシナリオ番号によって管理され、例えば、図22に例示するように、第1シナリオ⇒第2シナリオ⇒・・・⇒最終シナリオのように進行する。ランプ演出の具体的内容は、図18の演出参照テーブルCM**_TBL中に、その先頭アドレス値が記憶されている[電飾パターンデータテーブル(LAMP_**_TBL,COMi_**_TBL)]によって決定されるが、各シナリオの継続時間は、演出参照テーブルCM**_TBLの各行の第1欄に記憶されているシナリオタイマ値によって決まる。また、各制御コマンドに対応して設けられている演出参照テーブルCM**_TBL中に、シナリオタイマ値が何個記憶されているかによって、シナリオ個数(シナリオの変化回数)が決まる。
各シナリオは、具体的には、図21や図22に示すような、演出パーツの連続で構成されるが、出力信号系列(k=0〜4)ごとに演出番号を変えれば独立的に動作可能である。演出番号は、各演出パーツの継続時間とパーツ個数(通常は、演出パーツの変化回数)とを決定するものであり、これらは、図20のシナリオテーブルTM_TBLに規定されている。
なお、図22には特定の制御コマンドによるランプ演出のみを図示しているが、コマンド系列j=0〜5に属する制御コマンドが、最大では6個同時に実行されるので、出力信号系列kが共通するセグメントデータはOR演算され、実際には、図21のような動作内容となる。
以上、本発明の第1実施例について具体的に説明したが、ランプ演出の内容を主制御基板1からの制御コマンドのみで決定するのではなく、ランプ制御基板4における振分け処理によって演出のバリエーションを増加させた第2実施例について説明する。なお、以降の実施例では、制御コマンドが2バイト構成であるとする。
図23(a)は、主制御基板1からのストローブ信号による割込み処理に、演出振分け処理(ST300)を設けた実施例であり、受信した制御コマンドと乱数抽選とによって演出内容を決定している。なお、この第2実施例の場合には、メイン処理の最後において、8ビット長の乱数カウンタRNDの更新処理(ST7)を行っており、乱数カウンタは0〜255の範囲で循環している。
演出の振分けは、この実施例では、図17の選択テーブルCMD_TBLの内容を乱数カウンタRNDの値に応じて書き換えることで実現される(図23(c))。すなわち、選択テーブルCMD_TBLには、制御コマンド毎に、実行すべきランプ演出を規定する演出参照テーブルCM**H_TBLの先頭アドレスが記載されているが、このアドレス値を書き換えることで演出を振り分けている。
演出振分けの具体的内容としては、例えば、図26(c)のような内容であり、[大当り開始演出]を指示する制御コマンドを受けた際、その時の乱数値RNDに応じて、「ランプ点灯」か「ランプ高速点滅」か「天ランプ低速点滅」かのランプ演出に振り分けている。なお、「ランプ点灯」「ランプ高速点滅」「天ランプ低速点滅」の具体的内容を規定した演出参照テーブルA,B,Cが予め用意されており、その時の乱数値RNDに応じて、該当する演出参照テーブルの先頭アドレスを、選択テーブルCMD_TBLに書き込むのである。
図24は、受信した制御コマンドとその時の遊技状態とによって振分け処理を行う第3実施例を説明するフローチャートである。この実施例では、以前に受信した制御コマンドによって遊技状態を把握するようにしており、確変大当り回数を計数して[大当り終了]の演出を振り分けている。具体的な動作内容は、図26(a)に記載の通りである。なお、「確変大当り」とは、大当り状態のうち、特に、後述する特定図柄が揃って開始されるものをいい、大当りゲーム終了後は、大当り確率が向上するものを言う。
図24の演出振分け処理(ST300)について説明すると、先ず、受信した制御コマンドを解析して、[非特定図柄による大当りゲームの終了演出]を指示する制御コマンド(F401H)であれば、カウンタCTの値をポインタPTにコピーした後、カウンタCTをクリアする(S100)。その後、ポインタPNTの値(0〜3)に応じて、選択テーブルCMD_TBLに記憶されている演出参照テーブルCM**H_TBLの先頭アドレスを、該当アドレス(a〜d)に書き換える。
一方、受信した制御コマンドが[特定図柄による大当りゲームの終了演出]を指示する制御コマンド(F402H)であれば、カウンタCTの値をポインタPTにコピーした後、カウンタCTを+1する(S200)。そして、ポインタPNTの値(0〜3)に応じて、選択テーブルCMD_TBLに記憶されている演出参照テーブルCM**H_TBLの先頭アドレスを、該当アドレス(A〜D)に書き換える。
カウンタCTは、非特定図柄による大当りゲームが終了するとゼロクリアされ(S100)、特定図柄による大当りゲームが終了する毎に+1されるので(S200)、確変大当りの連続をカウントしていることになり、結局、図26(a)に記載した動作が実行できるのである。
図25は、図26(b)に記載した動作を実現するフローチャートである。この演出振分け処理(ST300)では、先ず、受信した制御コマンドがA0**Hか否かを判定する(SS1)。なお、*は、任意の16進数を意味するが、制御コマンドA0**Hは、液晶表示部において図柄変動動作を開始させる場合にランプ制御基板に伝送される制御コマンドである。この制御コマンドは、**部分の値に応じて多数の種類が存在するが、変動動作終了後に最も価値の高い「特定図柄」が揃って停止するか、次に価値の高い「特別図柄」が揃って停止するか、それ以外であるかはA0**Hの制御コマンドで把握できるようになっている。
そこで、A0**Hの制御コマンドを受信した場合には、それをメモリに記憶して処理を終える。その後、液晶表示部での変動動作が終わり、当り図柄(特定図柄又は特別図柄)が揃うと、大当りゲーム開始前の演出を指示する制御コマンドF001Hが主制御基板1から送信されてくる。すると、ステップSS3の判定がYesとなるので、カウンタCTの値をポインタPNTにコピーした後(SS4)、ステップSS2の処理で記憶しておいた制御コマンドA0**Hを読み出して、これから開始される大当りゲームが「非特定図柄(特別図柄)における大当り」か「特定図柄における大当り」かを判定する(SS5)。
そして、「非特定図柄(特別図柄)における大当り」であれば、カウンタCTをゼロクリアした後(SS6)、ポインタPNTの値に応じて、選択テーブルCMD_TBLに記憶されている演出参照テーブルCM**H_TBLの先頭アドレスを、該当アドレス(αかγ)に書き換える。
一方、ステップSS5、SS10の判定で、「特定図柄による大当り」であると判定されれば、カウンタCTを+1した後(SS11)、選択テーブルCMDTBLに記憶されている演出参照テーブルCM**H_TBLの先頭アドレスを、該当アドレスβに書き換える。この実施例では、「特定図柄による大当り」のゲームが開始されるのに先だって、カウンタCTが+1され、一方、「非特定図柄による大当り」のゲームが開始されるのに先だって、カウンタCTがクリアされるので、結局、図26(b)の動作を実現できることになる。
以上、実施例2〜4のついて説明したが、[受信した制御コマンド]と、[乱数抽選結果]と、[遊技状態]とを組合せても良いのは勿論である。また、画一的に振分け処理をする必要はなく、遊技状態に応じて振分け動作の有無を選択しても良い。図27〜図29はその具体的手法を例示したものである。
以上、ランプ制御基板4におけるランプ演出について具体的に説明したが、単数又は複数の単色の電飾ランプやLEDランプを用いることに限定されるものではなく、2色又は3色のLEDランプ、7セグメントLEDその他のランプ類にも本発明を適用できるのは勿論である。また、ランプ類の駆動方法についても、低速点滅、高速点滅、青色での(低速点滅、高速点滅)、赤色での(低速点滅、高速点滅)、長時間点灯、長時間消灯、複数のランプが連続動作(消灯、点灯・点滅)など各種の動作方法が可能である。
最後に本発明が好適に適用される弾球遊技機について確認的に説明する。図30は、パチンコ機21を示す斜視図であり、図31は、同パチンコ機21の側面図である。なお、パチンコ機21は、カード式球貸し機22に電気的に接続された状態で、パチンコホールの島構造体の長さ方向に複数個が配設されている。
図示のパチンコ機21は、島構造体に着脱可能に装着される矩形枠状の木製外枠23と、外枠23に固着されたヒンジHを介して開閉可能に枢着される前枠24とで構成されている。この前枠24には、遊技盤25が裏側から着脱自在に装着され、その前側には、ガラス扉26と前面板27とが夫々開閉自在に枢着されている。
前面板27には発射用の遊技球を貯留する上皿28が装着され、前枠24の下部には、上皿28から溢れ出し又は抜き取った遊技球を貯留する下皿29と、発射ハンドル30とが設けられている。発射ハンドル30は発射モータと連動しており、発射ハンドルの回動角度に応じて動作する打撃槌31(図33参照)によって遊技球が発射される。
上皿28の右部には、カード式球貸し機22に対する球貸し操作用の操作パネル32が設けられ、この操作パネル32には、カード残額を3桁の数字で表示するカード残額表示部32aと、所定金額分の遊技球の球貸しを指示する球貸しスイッチ32bと、ゲーム終了時にカードの返却を指令する返却スイッチ32cとが設けられている。ガラス扉26の上部には、大当り状態を示す大当りLEDランプP1が配置されている。また、この大当りLEDランプP1に近接して、補給切れ状態や下皿の満杯状態を示す異常報知LEDランプP2,P3が設けられている。これらの点は図1に関して説明した通りである。
図32に示すように、遊技盤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回まで特別遊技が継続され、遊技者に有利な状態に制御される。なお、変動後の停止図柄が特別図柄のうちの一定図柄(特定図柄)であった場合には、特別遊技の終了後に高確率状態に移行するという特典が付与される。
図33に示すように、前枠24の裏側には、遊技盤25を裏側から押さえる裏機構板40が着脱自在に装着されている。この裏機構板40には開口部40aが形成され、その上側に賞球タンク41と、これから延びるタンクレール42とが設けられている。裏機構板40の側部には、タンクレール42に接続された払出装置43が設けられ、裏機構板40の下側には払出装置43に接続された通路ユニット44が設けられている。払出装置43から払出された遊技球は、通路ユニット44を経由して上皿排出口28a(図30)から上皿28に払出されることになる。
裏機構板40の開口部40aには、遊技盤25の裏側に装着された裏カバー45と、入賞口35〜37に入賞した遊技球を排出する入賞球排出樋(不図示)とが嵌合されている。この裏カバー45に装着されたケースCA1の内部に主制御基板1が配設され、その前側に図柄制御基板2が配設されている(図31参照)。主制御基板1の下側で、裏カバー45に装着されたケースCA2の内部にランプ制御基板4が設けられ、隣接するケースCA3の内部に音声制御基板3が設けられている。
これらケースCA2,CA3の下側で、裏機構板40に装着されたケースCA4の内部には、電源基板6と払出制御基板5が設けられている。この電源基板6には、電源スイッチ53と初期化スイッチ54とが配置されている。これら両スイッチ53,54に対応する部位は切欠かれ、両スイッチを指で同時に操作可能になっている。
発射ハンドル30の後側に装着されたケースCA5の内部には、発射制御基板7が設けられている。そして、これらの回路基板1〜7は夫々独立して構成され、電源基板6と発射制御基板7を除く制御基板2〜6には、ワンチップマイコンを備えるコンピュータ回路が搭載されている。
以上、本発明の実施形態について詳述したが、本発明は各実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内で種々の変更が可能である。例えば下記の通りである。
[基板構成について]
・遊技者に有利な利益状態を発生させるか否かの抽選手段、及び/又は、遊技盤面上で入口が開閉又は拡大縮小可能な可変入賞口の動作を制御する可変入賞口制御手段、を備えた遊技制御部を設けても良い。・複数の演出装置に関連する演出動作を抽選により選択する演出動作選択手段を設けても良い。・遊技媒体の貸出手段を制御する貸出制御部を設けても良い。例えば弾球遊技機の場合遊技球の球貸手段を制御する球貸制御手段にあたる。・賞媒体の払出手段を制御する払出制御部を設けても良い。例えば弾球遊技機の場合、遊技球の払出手段を制御する払出制御手段にあたる。
・主制御部と遊技制御部とを同一基板に構成しても良い。・主制御部と貸出制御部とを同一基板に構成しても良い。・主制御部と払出制御部とを同一基板に構成しても良い。・主制御部と遊技制御部とを同一基板に構成し、それとは別の基板に、複数のサブ制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。・主制御部と貸出制御部とを同一基板に構成し、それとは別の基板に、複数のサブ制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。
・主制御部と貸出制御部とを同一基板に構成し、それとは別の複数の基板に夫々サブ制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。・主制御部と払出制御部とを同一基板に構成し、それとは別の基板に、複数のサブ制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。
・主制御部と払出制御部とを同一基板に構成し、それとは別の複数の基板に夫々サブ制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。
・主制御部とサブ制御部とを同一基板に構成し、それとは別の基板に、遊技制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。・主制御部と特定のサブ制御部とを同一基板に構成し、それとは別の複数の基板に、遊技制御部、サブ制御部を夫々設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。
・主制御部と複数のサブ制御部とを同一基板に構成し、それとは別の基板に、遊技制御部を設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。・遊技制御部及び/又は貸出及び/又は払出、主制御部、サブ制御部とを夫々別の基板に設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。
・遊技制御部及び/又は貸出及び/又は払出、主制御部、複数のサブ制御部とを夫々別の基板に設けても良い。また、そのとき基板間の通信方法は1方向であっても良いし、双方向通信であっても良い。・遊技制御部及び/又は貸出及び/又は払出を備えた基板と、その基板とは別で、サブ制御部を備えた基板との間の通信方法は1方向通信であることが好適である。・遊技制御部及び/又は貸出及び/又は払出を備えず、主制御部及び/又はサブ制御部を備えた基板と、その基板とは別で、サブ制御部を備えた基板との間の通信方法は双方向通信であることが好適である。
・主制御部及び/又はサブ制御部は、大入賞口の開放又は拡大に関わる大当りの発生を報知するための特別図柄の変動表示を制御する特別図柄制御部であっても良い。・主制御部及び/又はサブ制御部は、開放式入賞口の開放又は拡大に関わる大当りの発生を報知するための普通図柄の変動表示を制御する普通図柄制御部であっても良い。・主制御部及び/又はサブ制御部は、役物の動作及び/又は遊技状態変化を報知するための判定図柄の変動表示を制御する判定図柄制御部であっても良い。
・主制御部及び/又はサブ制御部は、遊技盤及び/又は遊技枠に設けられたランプ類の演出動作を制御するランプ制御部であっても良い。・主制御部及び/又はサブ制御部は、スピーカから発生するサウンドを制御するサウンド制御部であっても良い。・主制御部及び/又はサブ制御部は、遊技盤面上及び/又は遊技機前面の可動物の動作を制御する可動物制御部であっても良い。
・主制御部及び/又はサブ制御部は、遊技盤面上及び/又は遊技機前面に設けられた遊技者操作が可能な外部入力スイッチからの入力及び/又はその外部入力スイッチの有効無効状態などに関わる制御をおこなう外部入力スイッチ制御部であっても良い。この外部入力スイッチは、遊技状態の報知、演出動作の選択、変動演出する演出動作の停止、などに用いても良い。・主制御部及び/又はサブ制御部及び/又は複数のサブ制御部に、演出動作選択手段を設けても良い。
・主制御部と遊技制御部及び/又は貸出及び/又は払出とを別の基板に構成し、主制御部を大入賞口の開放又は拡大に関わる大当りの発生を報知するための特別図柄の変動表示を制御する特別図柄制御部と同一基板に構成し、サブ制御部は、遊技盤及び/又は遊技枠に設けられたランプ類の演出動作を制御するランプ制御部と、及び/又はスピーカから発生するサウンドを制御するサウンド制御部と、と同一の基板に構成しても良い。
・主制御部と遊技制御部及び/又は貸出及び/又は払出とを同一の基板に構成し、大入賞口の開放又は拡大に関わる大当りの発生を報知するための特別図柄の変動表示を制御する特別図柄制御部と、遊技盤及び/又は遊技枠に設けられたランプ類の演出動作を制御するランプ制御部と、スピーカから発生するサウンドを制御するサウンド制御部と、を同一の基板に構成しても良いし、さらに、特別図柄制御部と、遊技盤面上及び/又は遊技機前面に設けられた遊技者操作が可能な外部入力スイッチからの入力及び/又はその外部入力スイッチの有効無効状態などに関わる制御をおこなう外部入力スイッチ制御部と、を同一の基板に構成しても良いし、さらに、特別図柄制御部と、開放式入賞口の開放又は拡大に関わる大当りの発生を報知するための普通図柄の変動表示を制御する普通図柄制御部と、を同一の基板に構成しても良い。
・遊技制御部及び/又は貸出及び/又は払出、主制御部、サブ制御部のうちの複数が同一の基板に構成されている場合は、制御コマンドは、RAMなど作業領域及び/又はレジスタ及び/又は磁気記憶手段及び/又は光記憶手段などを介して、伝送されるように構成しても良い。
[制御構成について]
・実施例では、1つのコマンドを受信した場合、1つのコマンド系列によって演出動作を制御するが、1つのコマンドを受信した場合に、複数のコマンド系列によって演出動作を制御するようにしても良い。また、1つのコマンド系列によって演出動作を制御するか、複数のコマンド系列によって演出動作を制御するか、を遊技状態に応じて異ならせても良い。
もしくは、1つのコマンド系列によって演出動作を制御するか、複数のコマンド系列によって演出動作を制御するか、を抽選によって決め手も良い。もしくは、1つのコマンド系列によって演出動作を制御するか、複数のコマンド系列によって演出動作を制御するか、を受信したコマンドに応じて異ならせても良い。
・1つのコマンドを受信した場合に、複数のコマンド系列によって演出動作を制御する場合は、夫々のコマンド系列で制御する演出動作を抽選により決定しても良いし、1部のコマンド系列で制御する演出動作のみを抽選により決定し、その他のコマンド系列で制御する演出動作は予め定められていても良し、全てのコマンド系列で制御する演出動作を予め定められていても良い。全ての抽選は乱数などを用いる乱数抽選でも良い。
・受信した制御コマンドは、その属性に応じた格納場所CMDAR(i)に格納されるが、それらCMDAR(i)に値を格納しない特定のコマンドを設けても良い。その特定のコマンドの受信を条件に、例えば複数又は全部のCMDAR(i)を初期化するように構成しても良いし、その特定のコマンドの受信回数を計数し、その計数値によって演出動作に変化を与えても良いし、遊技状態の判定材料としても良いし、乱数生成の処理に乱数を初期化するよう指令するなどの影響を与えるようにしても良し、複数の制御コマンドを受信したように複数又は全部のCMDAR(i)に任意の制御コマンドを格納するようにしても良い。この場合の任意とは、遊技状態に応じて異なっても良いし、抽選で異ならせても良い。
・第1手段(ST2)が、受信した制御コマンドに基づく情報を、その制御コマンドに基づく情報によって制御される演出装置に応じた格納場所CMDAR(i)に格納するように構成しても良い。また、受信した制御コマンドに基づく情報が、複数の演出装置を制御する情報である場合は、複数の格納場所CMDAR(i)にその制御コマンドに基づく情報を格納するように構成しても良い。
・実施例では、0〜5のコマンド系列を予め作業領域に定義したが、コマンドを受信するたび等、所定条件で動的にコマンド系列用の作業領域を確保するようにしても良い。これはコマンド系列用に限らず、シナリオカウンタ用、セグメントパターン領域用、ILMTMエリア用、のいずれか又は、複数でも良い。
・実施例では、格納される制御コマンドの属性毎に0〜5のコマンド系列を予め作業領域に固定的に定義していたが、格納される制御コマンドを、未使用のコマンド系列に格納していっても良い。・乱数値の生成処理で生成される乱数値は、コマンド系列による演出動作制御夫々に対して専用であっても良いし、複数又は全部のコマンド系列による演出動作制御に対して共用しても良い。
・演出抽選処理は、実施例では、コマンド受信時に行っているが、コマンド系列などへのコマンド格納時、シナリオ切換時、演出パターン切換時、所定のコマンドを受信した時、遊技状態の判定処理が所定の遊技状態を判定した時、などであっても良い。・演出抽選処理の作動の条件は、実施例では、コマンド受信であるが、コマンド系列などへのコマンド格納、シナリオ切換、演出パターン切換、所定のコマンドを受信、遊技状態の判定処理が所定の遊技状態を判定など、であっても良い。
・コマンド系列などへのコマンド格納時、シナリオ切換時、演出パターン切換時、所定のコマンドを受信した時、遊技状態の判定処理が所定の遊技状態を判定した時に乱数値の生成処理で生成される乱数値を取得し、コマンド系列毎に記憶するようにしても良い。コマンド系列に格納された演出動作を指定する情報と、その記憶された乱数値を用いて、演出動作を特定し制御するようにしても良い。その場合、演出抽選処理によって、記憶されている乱数値を更新するようにしても良い。
・実施例では、タイマ割込みは定期的(2ms毎)におこなっているが、タイマ割込みのタイミングは可変にしても良い。その場合、タイマ割込みの割込み周期の変更は、実行中又は実行する演出動作によって切りかえる、遊技状態の判定処理が所定の遊技状態を判定した場合、制御コマンドの属性毎に、演出制御する演出装置毎などであっても良い。
・実施例では、制御コマンドの取得は主制御基板からのストローブ信号が加わることを条件に行っているが、ストローブ信号を条件にせず、定期的に、常時、所定周期、所定条件の成立で制御コマンドが伝送されていないか、を確認し、制御コマンドの取得を行っても良い。・制御コマンドの取得処理を複数備えても良く、その場合、実行中又は実行する演出動作毎、遊技状態の判定処理が所定の遊技状態を判定した場合、制御コマンド毎、制御コマンドの属性毎、演出制御する演出装置毎などによって複数の制御コマンドの取得処理のうち一つ又は複数から制御コマンドを取得するように構成しても良い。
・取得処理が制御コマンド送信側の制御手段により占有される構成になっていても良い。例えば、取得処理は、送信側制御手段からの占有開始コマンドを受信すると、該占有開始コマンドに基づく制御コマンド受信処理が終了するまで、及び/又は所定の最大受信時間が経過するまで、他の制御コマンドを受信不可能に構成しても良い。
・実施例では、1単位のシナリオを演出参照テーブルに複数連続的に格納可能としているが、1単位のシナリオを別テーブルにそれぞれ格納し、演出参照テーブルには、シナリオタイマと1単位のシナリオを特定するキーを連続的に格納するなど、階層的なテーブル構成にしても良い。また、シナリオタイマを前記別テーブル内に格納し、演出参照テーブルには、1単位のシナリオを特定するキーを連続的に格納するなどでもよい。それらの場合、時系列的に演出動作させるシナリオタイマと1単位のシナリオを特定するキーを連続的に格納するようにしても良い。また、その場合、そのキーはテーブルのアドレスであっても良い。
・実施例では、演出参照テーブルの選択テーブル(CMD_TBL)は、アドレスにより希望の演出参照テーブルを特定できるように構成しているが、選択テーブル(CMD_TBL)に演出参照テーブルとその演出参照テーブルを特定するキーなどを1組として格納するようにしても良い。その場合、演出抽選処理は制御コマンドと複数の前記キーなどを対応付けたテーブルを設けるようすれば、受信した制御コマンドの指定範囲内で、演出参照テーブルを選択し、演出動作を制御することができる。
・二次元テーブル(SEGPTN)は、その他の要素により構成された三次元以上のテーブルであってもよい。・所定コマンドの受信、もしくは所定コマンドの受信回数、所定の複数のコマンドの受信、また、その受信の順番などによって遊技状態を判断し、記憶する遊技状態記憶手段を設けても良い。また、遊技状態記憶手段には、遊技者が遊技領域に発射した遊技球、遊技者に払出した賞球などに関する情報、差球に関する情報を記憶するようにしても良い。差球は、遊技者が遊技領域に発射した遊技球、遊技者に払出した賞球などに関する情報などから算出するようにしても良い。
・遊技状態の判定処理は、遊技状態記憶手段に記憶された情報に基づいて遊技状態を判定するようにしても良い。・遊技状態の判定処理は、制御コマンド取得処理に設ける以外に、常時、所定周期、所定条件の成立などで作動させるようにしても良い。例えば、コマンド系列へのコマンド格納、シナリオ切換、演出パターン切換、所定のコマンド受信時、コマンド系列が制御していた演出動作の終了時など、又はそれらと略同時期でも良い。・実施例では、全てのコマンド系列の同じ出力信号系列のパターンデータの論理和を算出しているが、コマンド系列を種類別にグループ分けし、そのグループ内で、全てのコマンド系列の同じ出力信号系列のパターンデータの論理和を算出するように構成しても良い。
その場合、いずれのグループの算出結果を出力するかは、所定条件で任意に決定するようにすれば良い。例えば、出力優先順位ごとにグループ分けをおこない、より出力優先順位が高いグループの出力データが存在する場合は、そのグループで算出された出力信号を出力するようにしても良い。このグループに含まれるコマンド系列は1つでも、複数でも良い。
また、遊技状態に応じて、出力するグループを変化させるようにしても良い。また、出力する演出装置によってグループ分けを行っても良い。また、そのグループ内のコマンド系列の同じ出力信号系列のパターンデータの算出方法は論理和には限定されず、論理和、算術和、排他的論理和などでも良いし、グループ毎に異なる場合もある。
・実施例では、同じ属性のコマンドを受信するまで、実行中の演出動作を行うように構成しているが、コマンド受信以外の所定の終了条件で、実行中の演出動作を終了させるようにしても良い。例えば、演出参照テーブルや、制御コマンドなどに対応した演出時間を記憶しておき、その演出時間の経過を条件に演出を終了させるようにしても良い。その場合、終了と同時に対応する作業領域(例えば、第1領域CMDAR(i)など)を初期化するようにしても良い。
また、特定のコマンドの受信を条件に複数又は全部の演出動作を終了させても良い。さらにその終了させた演出動作に対応付けられる作業領域を(例えば、第1領域CMDAR(i)など)を初期化するようにしても良い。・制御コマンドを受信した場合に、他の制御コマンドに置換えるコマンド置換え処理を設けても良い。
また、そのコマンド置換え処理は、コマンド受信時、コマンド系列などへのコマンド格納、シナリオ切換、演出パターン切換、などと略同時に行っても良い。
・少なくとも図柄通常変動用演出動作を指定するCMDAR(i)と、遊技者に有利な利益状態が発生することを予告するための演出動作を指定するCMDAR(i)とが別であっても良い。遊技者に有利な利益状態は、大入賞口開放に関係する状態(例えば、大当り、小当たり、中当りなど、R数増加、開放時間延長)、可変入賞口開放に関係する状態(例えば、当り、開放時間延長など)、その遊技者に有利な利益状態を報知する図柄の変動時間短縮状態、遊技者に有利な利益状態が発生させるか否かの抽選手段の抽選確率が高確率になることに関連する状態である。
・少なくとも図柄通常変動用演出動作を指定するCMDAR(i)と、リーチ発生及び/又はスーパリーチ発生予告するための演出動作を指定するCMDAR(i)とが別であっても良い。・少なくとも図柄通常変動用演出動作を指定するCMDAR(i)と、遊技盤面上及び/又は遊技機前面に設けられた遊技者操作が可能な外部入力スイッチの有効又は無効状態の制御を指定するCMDAR(i)とが別であっても良い。
・予告は、予告内容が実現される確率が100%である必要は無くても良い。
・少なくとも図柄通常変動用演出動作を指定するCMDAR(i)と、図柄変動保留内に所定の乱数値が格納されていることを予告するための演出動作を指定するCMDAR(i)とが別であっても良い。
[その他]
・演出装置は、遊技盤及び/又は遊技枠に設けられたランプ類でも良い。複数でも良い。・演出装置は、遊技盤及び/又は遊技枠に設けられた複数又は一つの液晶、7セグ、ドットマトリックスなど画像表示装置でも良い。複数でも良い。・演出装置は、サウンドを発生するスピーカでも良い。複数でも良い。
・演出装置は、遊技盤面上及び/又は遊技機前面の回転ドラム、動物、魚、キャラクタなどの人形、ベルト式、チェーン式など可動物でも良い。複数でも良い。・実施例では、制御コマンドは1バイト(正確には7ビット)であるが、1ビット、複数ビットなどで何でも良い。
・停電発生後、停電前又は停電発生と略同時期の、演出動作の状態を復帰させるためのバックアップ手段を、サブ制御部に設けても良い。・作業領域のチェックサムなどから瞬停か否かを判定する瞬停判定手段と、作業領域の1部分のみを初期化する瞬停処理手段を、サブ制御部に設けても良い。・「略同時」は同一割込み処理、連続する割込み処理内など、ほぼ同じ演出動作実行中であれば良い。
・主制御部に、サブ制御部が制御する演出装置の演出動作を抽選により決定する演出決定手段と、該演出決定手段により決定した演出動作を指定する制御コマンドを送信する制御コマンド送信手段と、サブ制御部に、該制御コマンドで指定された演出動作の演出範囲内で、演出動作を抽選により決定するサブ側演出決定手段と、を設けても良い。
・主制御部に、サブ制御部が制御する演出装置の演出動作を抽選により決定する演出決定手段と、該演出決定手段により決定した演出動作を指定する制御コマンドを送信する制御コマンド送信手段と、サブ制御部に、該制御コマンドで指定された演出動作に付加する演出動作を抽選により決定するサブ側付加演出決定手段と、を設けても良い。
・主制御部に、サブ制御部が制御する演出装置の演出動作を抽選により決定する演出決定手段と、該演出決定手段により決定した演出動作を指定する制御コマンドを送信する制御コマンド送信手段と、サブ制御部に、該制御コマンドで指定された演出動作の一部を削除する演出動作を抽選により決定するサブ側削除演出決定手段と、を設けても良い。
・主制御部に、乱数発生手段と、該乱数発生手段で発生した乱数値に基づいて遊技者に有利な利益状態を発生させるか否かの抽選をおこなうための抽選手段と、を備え、該乱数値と遊技状態にのみ基づく制御コマンドをサブ制御手段に送信し、サブ制御手段に、受信したその制御コマンドに基づいて演出装置の演出動作を抽選により決定する演出決定手段を設けた構成にしても良い。
・制御コマンドに演出動作を繰り返しおこなう演出動作回数情報を含んでも良い。例えば、制御コマンドが、遊技者に有利な利益状態が発生することを予告する予告演出動作と、その演出動作の繰り返し動作回数と、を指定する場合、大入賞口の開放又は拡大に関わる大当りの発生を報知するための特別図柄の変動表示がその制御コマンドにより指定された繰り返し動作回数変動表示するまで、指定された予告演出動作を行っても良い。
ここで、変動表示開始に基づいて予告演出動作を開始し、変動表示終了に基づいて予告演出動作を終了しても良いし、制御コマンドにより指定された繰り返し動作回数変動表示する間、常時又は間欠的に予告演出動作をおこなうように構成しても良い。
予告演出動作は、「画像表示装置の背景画像を変化させる。キャラクタを表示する。図柄の形状、大きさ、色が変化する。複数又は単一のランプの点滅態様を変化させる。ランプが所定時間継続して点灯する。ランプが所定時間継続して消灯する。スピーカから所定のサウンドが発生する。」など何でも良い。