<第1実施形態>
以下、本発明に係る遊技機の第1実施形態を、パチンコ遊技機を例にして、図1〜図11を参照して具体的に説明する。まず、図1及び図2を参照して本実施形態に係るパチンコ遊技機の外観構成を説明する。
図1に示すように、パチンコ遊技機は、遊技機本体1を有し、この遊技機本体1は、木製の外枠2の前面に矩形状の前面枠3を開閉可能に取り付け、その前面枠3の裏面に取り付けられている遊技盤収納フレーム(図示せず)内に遊技盤4を装着された構成からなる。遊技盤4は、図2に示す遊技領域40を前面に臨ませた状態で装着され、図1に示すようにこの遊技領域40の前側に透明ガラスを支持したガラス扉枠5が設けられている。なお、上記遊技領域40は、遊技盤4の面上に配設された球誘導レール6(図2参照)で囲まれた領域からなるものである。
一方、遊技機本体1は、図1に示すように、ガラス扉枠5の下側に前面操作パネル7が配設され、その前面操作パネル7には上受け皿ユニット8が設けられ、この上受け皿ユニット8には、排出された遊技球を貯留する上受け皿9が一体形成されている。そして、この前面操作パネル7の右端部側には、発射ユニットを作動させるための発射操作ハンドル10が設けられ、前面枠3の上部両側面側には、遊技状態に応じてBGM(Background music)あるいは効果音を出力する上部スピーカ11が設けられている。そして、発射操作ハンドル10の上側には、上記上部スピーカ11と同様、遊技状態に応じてBGMあるいは効果音を出力する下部スピーカ12が設けられている。
また、この前面操作パネル7には、球貸しボタン13及びプリペイドカード排出ボタン14(カード返却ボタン14)が設けられ、さらには、略十字キーからなる表面スイッチ15が設けられている。この表面スイッチ15は、遊技者が使用するもので、上下左右4箇所に対応する選択ボタンSW1〜SW4からなり、上記上部スピーカ11及び下部スピーカ12から出力されるBGMあるいは効果音の音量を調整できるものである。また、遊技機本体1の背面側には、裏面スイッチ16(図6(a)参照)が設けられており、この裏面スイッチ16は、遊技場側の従業員等が使用するもので、上記上部スピーカ11及び下部スピーカ12から出力されるBGMあるいは効果音の音量を0〜9の10段階(図6(a)参照)に調整することができる。なお、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4は、遊技者が、選択ボタンSW1又は選択ボタンSW3を押圧すると音量が増加し、選択ボタンSW2又は選択ボタンSW4を押圧すると音量が減少するようになっている。また、選択ボタンSW1〜SW4は遊技における演出の選択を行う際にも用いられるようになっている。
一方、上記上受け皿9の上皿表面部分には、内蔵ランプ(図示せず)点灯時に押下することにより演出効果を変化させることができる押しボタン式の演出ボタン装置17が設けられている。また、この上受け皿9には、当該上受け皿9に貯留された遊技球を下方に抜くための球抜きボタン18が設けられている。そして、上記前面枠3の周枠には、LEDランプ等の装飾ランプが配設されている。
他方、上記遊技盤4の遊技領域40には、図2に示すように、略中央部にLCD(Liquid Crystal Display)等からなる液晶表示装置41が配設されている。この液晶表示装置41は、表示エリアを左、中、右の3つのエリアに分割し、独立して数字やキャラクタあるいは図柄(装飾図柄)の変動表示が可能なものである。そして、この上飾り42a,左飾り42b,右飾り42cの背面側には、夫々第1の可動式役物装置43a(図3参照)が配設され、さらに、上飾り42aの左背面側には第2の可動式役物装置43b(図3参照)が配設されている。
一方、液晶表示装置41の真下には、特別図柄始動口44が配設され、その内部には入賞球を検知する特別図柄始動口センサ44a(図3参照)が設けられている。そして、この特別図柄始動口44の右側には、大入賞口45が配設され、その内部には入賞球を検知する大入賞口センサ45a(図3参照)が設けられている。
また一方、上記右飾り42cの上縁部近傍には、ゲートからなる普通図柄始動口46が配設されており、その内部には、遊技球の通過を検知する普通図柄始動口センサ46a(図3参照)が設けられている。また、上記大入賞口45の右側及び上記特別図柄始動口44の左側には、一般入賞口47が夫々配設され(図示では、右側に1つ、左側に3つ)、その内部には、夫々、遊技球の通過を検知する一般入賞口センサ47aが設けられている。
さらに、上記遊技盤4の遊技領域40の右下周縁部には、7セグメントを3桁に並べて構成される特別図柄表示装置48と、2個のLEDからなる普通図柄表示装置49が設けられている。そしてさらに、上記遊技盤4の遊技領域40には、図示はしないが複数の遊技釘が配設され、遊技球の落下方向変換部材としての風車50が配設されている。
次に、上記のような外観構成からなるパチンコ遊技機内に設けられる遊技の進行状況に応じて電子制御を行う制御装置を、図3〜図5を用いて説明する。この制御装置は、図3に示すように、遊技動作全般の制御を司る主制御基板60と、主制御基板60から演出制御コマンドを受けて、画像と光と音についての制御を行うサブ制御基板70とを有している。なお、サブ制御基板70は、図3に示すように、演出制御基板80と、液晶制御基板90と、装飾ランプ基板100とで構成されている。
上記主制御基板60は、主制御CPU600と、一連の遊技制御手順を記述した制御プログラム等を格納した主制御ROM601と、作業領域やバッファメモリ等として機能する主制御RAM602とで構成された1チップマイクロコンピュータを搭載している。そして、このように構成される主制御基板60には、払出モータM2を制御して遊技球を払出す払出制御基板61と、遊技者の操作に応答して遊技球を発射させる発射制御基板62とが接続されている。そしてさらには、特別図柄始動口44への入賞を検知する特別図柄始動口センサ44aと、普通図柄始動口46の通過を検知する普通図柄始動口センサ46aと、一般入賞口47への入賞を検知する一般入賞口センサ47aと、大入賞口45への入賞を検知する大入賞口センサ45aとが接続され、さらに、特別図柄表示装置48と、普通図柄表示装置49とが接続されている。
このように構成される主制御基板60は、特別図柄始動口センサ44aや普通図柄始動口センサ46aからの信号を受信すると、遊技者に有利な特別遊技状態を発生させるか(いわゆる「当たり」)、あるいは、遊技者に有利な特別遊技状態を発生させないか(いわゆる「ハズレ」)の抽選を行い、その抽選結果である当否情報に応じて特別図柄の変動パターンや停止図柄あるいは普通図柄の表示内容を決定し、その決定した情報を特別図柄表示装置48又は普通図柄表示装置49に送信する。これにより、特別図柄表示装置48又は普通図柄表示装置49に抽選結果が表示されることとなる。そしてさらに、主制御基板60は、その決定した情報を含む演出制御コマンドCMD_DATA(図4参照)を生成し、サブ制御基板70、すなわち、演出制御基板80に送信する。なお、主制御基板60が、一般入賞口センサ47a、大入賞口センサ45aからの信号を受信した場合は、遊技者に幾らの遊技球を払い出すかを決定し、その決定した情報を払出制御基板61に送信することで、払出制御基板61が遊技者に遊技球を払出すこととなる。
一方、上記演出制御基板80は、図4に示すように、作業領域やバッファメモリ等として機能する演出制御RAM800aが内蔵されている演出制御CPU800と、演出制御手順を記述した制御プログラム等が格納されている演出制御フラッシュROM801と、所望のBGMや効果音を生成すると共に、その音量を調整する音LSI802と、BGMや効果音等の音データ等が格納されている音フラッシュROM803と、シフトレジスタ804が搭載されている。
この演出制御CPU800は、演出アドレスバスADR_BUS(図示では24ビット)及び演出データバスDA_BUS(図示では16ビット)を介して演出制御フラッシュROM801と接続され、上記演出アドレスバスADR_BUSの下位2ビット及び上記演出データバスDA_BUSの上位8ビットが音LSI802に接続されている。そして、音LSI802は、音アドレスバスMADR_BUS(図示では26ビット)及び音データバスMDA_BUS(図示では16ビット)を介して音フラッシュROM803と接続されている。
また、演出制御CPU800には、図4に示すように、シフトレジスタ804が接続されており、このシフトレジスタ804は、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号を受信し、さらに、演出ボタン装置17からのボタン信号EB_SWを受信し、演出制御CPU800の出力ポートから出力されるクロック信号CLK及びラッチ信号LATCHを受信する。これにより、シフトレジスタ804は、クロック信号CLKの立ち上がりエッジに同期して、シリアル信号SOUTを出力する。そして、演出制御CPU800は、内部に設けられているシリアルポート(図示せず)によって、上記シリアル信号SOUTを上記クロック信号CLKの立下りエッジに同期して順次取得し、パラレルデータとして記憶している。
このようなシフトレジスタ804の動作を、図5も用いてより詳しく説明する。まず、演出制御CPU800は、内部に設けられているパラレルポート(図示せず)からラッチ信号LATCH(図4参照)をシフトレジスタ804に出力する。このラッチ信号LATCHは、図5(a)に示すように、定常的にHレベルであるが、所定時間だけLレベルに降下される。これにより、シフトレジスタ804は、ラッチ信号LATCHの立下りエッジに同期して、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWを内部レジスタに取得する。なお、この取得動作は後述する2ms毎のタイマ割込み(図11参照)毎に繰り返し実行される。そのため、このような構成を採ることにより、上記表面スイッチ15のように、いつ押圧されるか予測不能なスイッチについても、読み落としなく確実に操作を把握することができる。また、2ms毎に上記信号を取得しているため、演出ボタン装置17を如何に高速に操作しても、そのON/OFF状態を確実に把握することができ、遊技者のボタン操作速度等を計測することもできる。
一方、演出制御CPU800は、図5(a)に示すように、Lレベルに降下されたラッチ信号LATCHをHレベルに戻した後、内部に設けられているシリアルポート(図示せず)からクロック信号CLK(図4参照)をシフトレジスタ804に出力する。そして、クロック信号CLKを受信したシフトレジスタ804は、図5(a)に示す一個目のクロック信号CLKの立ち上がり時に表面スイッチ15の選択ボタンSW1を出力し、二個目のクロック信号CLKの立ち上がり時に表面スイッチ15の選択ボタンSW2を出力し、以下同様の動作を繰り返してシリアル信号SOUTを生成する。
かくして、シフトレジスタ804から出力されたシリアル信号SOUTは、演出制御CPU800の内部に設けられているシリアルポート(図示せず)によって、上記クロック信号CLKの立下りエッジに同期して1ビット毎に取得される。そして、上記シリアルポート(図示せず)は、1バイト分のデータを取得する毎に、当該シリアルポートの受信バッファに1バイトデータを順次格納し、規定ビット長(本実施形態では8ビット)のデータを取得し終えると、受信完了レジスタをセットする。なお、本実施形態においては、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWと5ビットのデータしかシフトレジスタ804に入力していないが、残りの3ビットは“L”レベルに固定されている。
このように、上記シリアルポート(図示せず)は、クロック信号CLKが8個出力されると、シリアル信号SOUTの受信処理を完了し、受信バッファに1バイトデータを格納すると共に、受信完了フラグをセットすることとなる。これにより、演出制御CPU800は、繰り返し受信完了フラグをチェックすることで、上記シリアルポートにおける受信処理が完了するまで待機する。
そして、受信完了フラグのセット状態が確認されたら、演出制御CPU800は、クロック信号CLKの出力を停止し、上記シリアルポート(図示せず)のエラー検出レジスタをチェックして、通信エラーが生じていないことを確認する。もし通信エラーが認められると、エラービットや受信バッファをクリアして処理を終える。その結果、今回の取得データは無視されることとなる。
なお、本実施形態においては、上記シリアルポート(図示せず)から定常的にクロック信号CLKの出力をするのではなく、必要時にクロック信号CLKの出力を開始しているため、一個目のクロック信号CLKによって取得されるデータは、必ず、表面スイッチ15の選択ボタンSW1であると割り切ることができ、この意味においてスタートビットが不要となる。
また、本実施形態においては、規定ビット長のクロック信号CLKを出力して処理を終えるため、シリアル信号SOUTにストップビットを付加する必要はない。さらに、本実施形態においては、パリティビットも使用しないため、スタートビット、ストップビット及びパリティビットを除いた必要最小限の通信時間で、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWを取得でき、2ms毎に繰り返し実行しても、他の演出処理時間を奪う恐れはない。
そして、本実施形態によれば、スタートビット、ストップビット及びパリティビット等を付加するための回路構成が不要となるばかりか、上記シリアルポート(図示せず)を間欠的に動作させているため、回路動作上の無駄がなく、さらには、クロック信号の周波数を高めても、他の回路素子への定常的なノイズ源となるおそれもない。
一方、本実施形態においては、スタートビット、ストップビット及びパリティビットを設けていないため、フレーミングやパリティーエラーが問題となることはなく、通信エラーとしてはせいぜいオーバーランエラーだけが問題となるものの、高ノイズ環境下、電磁ノイズによるビット化けが生じないとは言い切れない。そこで、この点を考慮して、複数回(M)、同一データを繰返し受信することを条件に、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWを取得することもできる。すなわち、連続取得回数を例えば、10回(M=10)とした場合、2ms×10=20msの間、8ビット長(実質的には5ビット長)の表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWが全て同一値を維持することが、取得条件となる。
そのため、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWの遷移タイミングを正確に把握することができず、図5(b)にて破線で示すように、M=10の場合には20ms〜40ms程度、遷移タイミングの把握が遅れることになる。しかしながら、本実施形態において問題にする信号は、遊技者の手動操作に対応する信号であるため、40ms程度の検出遅れは実質的に何の問題もない。逆に、電磁ノイズ等は、通常、20ms以内に収束するため、パリティビットなどを設けることなくノイズの影響を排除することができるという利点がある。
他方、演出制御CPU800には、図3及び図4に示すように、当該演出制御CPU800の入力ポートに上述した遊技動作全般の制御を司る主制御基板60から演出制御コマンドCMD_DATA(図示では8ビット)及び演出割込み信号CMD_IRQが送信されるように接続され、さらに、その演出制御CPU800の出力ポートから送信される液晶表示装置41の表示内容に対応した液晶制御コマンドLCD_CMD(図示では16ビット)及び液晶制御割込み信号LCD_IRQが液晶制御基板90で受信されるように接続されている。そしてさらに、演出制御CPU800には、ランプ演出効果を現出するLEDランプが搭載されている装飾ランプ基板100に、当該演出制御CPU800の出力ポートからランプデータLAMP_DATAが送信された際、装飾ランプ基板100にて受信できるように接続されている。また、演出制御CPU800には、第1及び第2の可動式役物装置43a,43bと、内蔵されているランプ(図示せず)点灯時に遊技者が押下することにより演出効果を変化させることができる押しボタン式の演出ボタン装置17とが接続されている。また、演出制御CPU800には、遊技場側の従業員等が使用する裏面スイッチ16が接続されている。なお、本実施形態においては、主制御基板60より演出制御コマンドCMD_DATAが一方向に送信されているが、これは、外部からのゴト行為による不正な信号がサブ制御基板70を介して主制御基板60に入力されることを防止するためである。
上記第1の可動式役物装置43aは、図3に示すように、モータM1と、そのモータM1の作動によって駆動する可動体43a1と、そのモータM1の位置を検知するモータセンサS1とで構成されている。第2の可動式役物装置43bは、ソレノイドSOLと、そのソレノイドSOLの作動によって駆動する可動体43b1で構成されている。
また、上記第1の可動式役物装置43aのモータM1は、演出制御CPU800の出力ポートより送信されるモータデータMOT_DATA(図4参照)に基づいて作動し、上記第2の可動式役物装置43bのソレノイドSOLは、演出制御CPU800の出力ポートより送信されるソレノイドデータSOL_DATA(図4参照)に基づいて作動する。そして、上記モータM1の位置を検知するモータセンサS1は、その検知したデータMOT_SENが演出制御CPU800の入力ポートに送信される。
一方、裏面スイッチ16は、上記上部スピーカ11及び下部スピーカ12から出力されるBGMあるいは効果音の音量を0〜9の10段階(図6(a)参照)に調整できるものであって、そのうち、例えば、矢印16a(図6(a)参照)に示すように「9」が選択されていた場合、その選択された信号BA_SWが演出制御CPU800の入力ポートに送信される。
他方、音LSI802は、図3及び図4に示すように、当該音LSI802の出力ポートより送信されるBGMや効果音の音源データAMOR/L_Aを上部スピーカ11に送信し、音源データAMOR/L_Bを下部スピーカ12に送信するものである。
なお、上記説明した各基板への電源供給は、電源基板63(図3参照)より供給されている。この電源基板63は、外部電源(図示せず)に接続され、変圧トランスから供給される交流電圧(AC24V:メイン電源)より所要電源を生成し、その生成した電源を各基板へ供給している。なお、図示では、電源供給ルートは、省略している。
次に、上記詳述した制御装置のうち、本実施形態の特徴部分は、演出制御基板80にて生成されるBGMや効果音等の音量調整に関する処理の部分であるため、その点につき、図6及び図7を用いて説明する。
演出制御フラッシュROM801には、図6(b)に示す、シンプルアクセスコードテーブルSAC_TBLが格納されている。このシンプルアクセスコードテーブルSAC_TBLには、後述する音フラッシュROM803に夫々格納されている音量出力データに対応づけられているシンプルアクセスコード数(以下、SAC数という)が格納されている。すなわち、シンプルアクセスコードテーブルSAC_TBLには、図6(a)に示す裏面スイッチ16における0〜9の10段階の数字がそれぞれ格納されており、これら数字が、図6(b)に示すテーブルTB1にそれぞれ格納されている。
そして、そのテーブルTB1に格納されている数字に対応するSAC数が図6(b)に示すテーブルTB2にそれぞれ格納されている。このテーブルTB2に格納されているSAC数は、裏面スイッチ16における0〜9の10段階の数字に対応するものであり、遊技場側の従業員等が設定できるもので、基準値となるものである。すなわち、遊技者が、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4を何ら押圧しなければ、そのテーブルTB2に格納されているSAC数に対応した音量出力データに基づく音量に調整されたBGMや効果音等が、上部スピーカ11及び下部スピーカ12から出力されることとなる。
一方、遊技者が、音量を増加しようと、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3(図1参照)を押圧した場合、その押圧数(調整数)に対応したSAC数がそれぞれシンプルアクセスコードテーブルSAC_TBLに格納されており、これらSAC数が、図6(b)に示すように、テーブルTB3に格納されている。
このテーブルTB3には、遊技場側の従業員等が裏面スイッチ16において、0〜2のいずれかを選択した場合、SAC数が何ら格納されておらず、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を押圧したとしても、音量調整ができないようになっている。その一方で、遊技場側の従業員等が裏面スイッチ16において、3〜9のいずれかを選択した場合、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を1回押圧する毎に、+1ずつ増加する遊技者調整数に対応したSAC数が格納されている。このSAC数は、テーブルTB2に格納されている基準値のSAC数に対して+1ずつ増加したものが格納されており、遊技者は、10段階で音量が増大できるようになっている。
他方、遊技者が、音量を減少しようと、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4(図1参照)を押圧した場合、その押圧数(調整数)に対応したSAC数がそれぞれシンプルアクセスコードテーブルSAC_TBLに格納されており、これらSAC数は、図6(b)に示すように、テーブルTB4に格納されている。
このテーブルTB4には、遊技場側の従業員等が裏面スイッチ16において、0〜2のいずれかを選択した場合、SAC数が何ら格納されておらず、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を押圧したとしても、音量調整ができないようになっている。その一方で、遊技場側の従業員等が裏面スイッチ16において、3〜9のいずれかを選択した場合、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を1回押圧する毎に、−1ずつ減少する遊技者調整数に対応したSAC数が格納されている。このSAC数は、テーブルTB2に格納されている基準値のSAC数に対して−1ずつ減少したものが格納されており、遊技者は、10段階で音量が減少できるようになっている。なお、遊技者調整数は、遊技者が、表面スイッチ15の上下左右に対応する選択ボタンSW1〜SW4の押圧回数によって変動するものである。すなわち、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を、例えば2回押圧し、遊技者調整数が+2になっている状態で、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を、例えば1回押圧した場合は、遊技者調整数が+1となる。そしてまた、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を、例えば10回押圧し、遊技者調整数が−10になっている状態で、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を、例えば1回押圧した場合は、遊技者調整数が−9となるというものである。
しかして、このように、遊技場側の従業員等の設定によっては、遊技者による音量調整ができない設定を設けることで、ある遊技者が音量を変化させることで他の遊技者が不快になるような遊技者同士のトラブルを未然に防ぐことができる。
他方、音フラッシュROM803(図4参照)には、図7に示すように、音量出力値テーブルVL_TBLが格納されている。この音量出力値テーブルVL_TBLには、上記シンプルアクセスコードテーブルSAC_TBLに格納されているSAC数が0〜100まで格納されており、これらSAC数は、図7に示すテーブルTB10にそれぞれ格納されている。
また、音量出力値テーブルVL_TBLには、このテーブルTB10に格納されたSAC数に対応した上部スピーカ11における音量出力データがそれぞれ格納されており、これら音量出力データは、図7に示すテーブルTB11にそれぞれ格納されている。より詳しく説明すると、テーブルTB11には、上部スピーカ11から出力される音量の音量出力データが夫々格納されており、さらには、その音量出力データを設定する音LSI802内に設けられているレジスタのアドレス(C0H)も格納されている。そして、音量出力値テーブルVL_TBLには、テーブルTB10に格納されたSAC数に対応した下部スピーカ12における音量出力データがそれぞれ格納されており、これら音量出力データはテーブルTB12に格納されている。より詳しく説明すると、テーブルTB12には、下部スピーカ12から出力される音量の音量出力データがそれぞれ格納されており、さらには、その音量出力データを設定する音LSI802内に設けられているレジスタのアドレス(C1H)も格納されている。そして、音量出力値テーブルVL_TBLには、音LSI802に対し、当該音量出力値テーブルVL_TBLへのアクセスを終了させるための終了コード(FFH)が格納されている。なお、これら終了コードは、図7に示すテーブルTB13に格納されている。
このように、演出制御フラッシュROM801に、シンプルアクセスコードテーブルSAC_TBLを格納し、音フラッシュROM803に、音量出力値テーブルVL_TBLを格納することで、音フラッシュROM803に格納されているデータによって、上部スピーカ11及び下部スピーカ12から出力される音の音量を調整することができる。すなわち、演出制御CPU800が、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号(例えば、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を1回押圧した場合、すなわち、遊技者調整数が+1の場合)及び裏面スイッチ16からの信号BA_SW(例えば、裏面スイッチ16の矢印16aが「3」を選択していた場合)に基づいて、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されているシンプルアクセスコードテーブルSAC_TBLにアクセスすると、演出制御CPU800は、そのシンプルアクセスコードテーブルSAC_TBLから、SAC数(例えば、31)を読み出し、その読み出したSAC数(例えば、31)を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数(例えば、31)に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数(例えば、31)に対応した上部スピーカ11における音量出力データ(例えば、35H)及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ(例えば、4EH)及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そして、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。これにより、音LSI802は、音フラッシュROM803より読み出した上部スピーカ11における音量出力データ(例えば、35H)に基づく音量に調整したBGMや効果音の音源データAMOR/L_Aを上部スピーカ11に出力する。そしてさらに、音LSI802は、音フラッシュROM803より読み出した下部スピーカ12における音量出力データ(例えば、4EH)に基づく音量に調整したBGMや効果音の音源データAMOR/L_Bを下部スピーカ12に出力する。それゆえ、演出制御フラッシュROM801に、シンプルアクセスコードテーブルSAC_TBLを格納し、音フラッシュROM803に、音量出力値テーブルVL_TBLを格納することで、音フラッシュROM803に格納されているデータによって、上部スピーカ11及び下部スピーカ12から出力される音の音量を調整することができる。
次に、上記内容を踏まえ、演出制御基板80の処理内容を図8〜図11を参照して具体的に説明することで、演出制御基板80におけるBGMや効果音等の音量調整に関する処理をより詳しく説明する。
パチンコ遊技機に電源が投入されると、電源基板63(図3参照)から各制御基板に電源が投入された旨の電源投入信号が送られる。そしてその信号を受けて、図4に示す演出制御基板80に搭載されている演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して演出制御フラッシュROM801内に格納されている演出制御手順を記述した制御プログラムを逐次実行する。図8は、この制御プログラムの処理に関し、最初に実行される演出制御メイン処理を示したものである。
図8に示すように、この演出制御メイン処理は、まず、演出制御CPU800が、演出制御CPU800内に設けられているレジスタ(図示せず)を初期化すると共に、演出制御CPU800内に設けられているI/Oポートの入出力方向を設定する。そしてさらに、出力方向に設定されたI/Oポート(すなわち、出力ポート)から外部に送信されるデータがシリアル転送となるように設定する(ステップS1)。
その設定後、演出制御CPU800は、上記主制御基板60(図3参照)から受信する演出制御コマンドCMD_DATA及び上記液晶制御基板90(図3参照)に送信する液晶制御コマンドLCD_CMDを格納する演出制御RAM800a内のメモリ領域を初期化する(ステップS2)。そして、演出制御CPU800は、上記主制御基板60からの演出制御割込み信号CMD_IRQを受信する入力ポートの割込み許可設定処理を行う(ステップS3)。
次いで、演出制御CPU800は、作業領域、スタック領域として使用する演出制御RAM800a内のメモリ領域を初期化し(ステップS4)、図4に示す演出アドレスバスADR_BUS、演出データバスDA_BUSを介して音LSI802に初期化指令を行う。これにより、音LSIは、その内部に設けられているレジスタ(図示せず)を初期化する(ステップS5)。
次いで、演出制御CPU800は、第1の可動式役物装置43aのモータM1を作動させるモータデータMOT_DATAが格納される演出制御RAM800a内のメモリ領域に、異常データが格納されているか否かを確認する。そして、その確認により異常データが格納されていれば、第1の可動式役物装置43aが初期位置以外の位置に移動している可能性があるため、演出制御CPU800は、第1の可動式役物装置43aのモータM1を原点位置に戻す指令を行う。これにより、第1の可動式役物装置43aは初期位置に戻ることとなる。しかしながら、演出制御CPU800は、第1の可動式役物装置43aのモータM1の位置を検知するモータセンサS1から送信されるデータMOT_SENに基づきモータM1の位置を確認し、初期位置に戻っていなければ、エラーフラグERR_FLGをONにセットする処理を行う。なお、初期位置に戻っていれば、エラーフラグERR_FLGをOFFにセットする処理を行う(ステップS6)。
その後、演出制御CPU800は、その内部に設けられている一定周期のパルス出力を作成する機能や時間計測の機能等を有するCTC(Counter Timer Circuit)の設定を行う。すなわち、演出制御CPU800は、2ms毎に定期的にタイマ割込みがかかるように上記CTCの時間定数レジスタを設定する(ステップS7)。
以上説明したステップS1〜S7により、遊技動作開始前における演出制御CPU800による初期設定処理が行われ、その後、演出制御CPU800は、メインループ更新周期か否かを確認する。具体的には、0〜31までループ状にカウントするメインループカウンタML_CNTを16分周(すなわち、16で除算)した際の余りを確認し、その余りが0であれば(ステップS8:YES)ステップS10に進み、0以外であれば(ステップS8:NO)予告抽選等に用いる乱数値を更新する処理を行う(ステップS9)。なお、メインループカウンタML_CNTのインクリメント(+1)方法については、後述することとする。
次いで、演出制御CPU800は、後述するステップS12にて生成された上記LEDランプを夫々点灯又は消灯させるのに必要なランプデータLAMP_DATAを演出制御RAM800a内のメモリ領域に書込みする処理を行う(ステップS10)。
続いて、演出制御CPU800は、上記演出制御RAM800a内のメモリ領域に格納されている上記主制御基板60(図3参照)から受信する演出制御コマンドCMD_DATAを読み出し、その内容に応じた演出パターンを決定する。そして、その決定された演出パターンに対応する液晶制御コマンドLCD_CMDを上記演出制御RAM800a内のメモリ領域に格納する。なお、演出制御CPU800は、演出制御コマンドCMD_DATAが、遊技中断コマンド(客待ちコマンド)であれば、音量調整可能フラグMA_FLGをONにセットし、演出制御コマンドCMD_DATAが、変動開始コマンド(保留増加コマンド又は変動パターンコマンド)であれば、音量調整可能フラグMA_FLGをOFFにセットする。そして、演出制御CPU800は、演出制御コマンドCMD_DATAが、不正等のエラーコマンドであれば、エラーフラグERR_FLGをONにセットする処理を行う(ステップS12)。
次いで、演出制御CPU800は、上記決定された演出パターンに応じたランプデータLAMP_DATA,音データ及び第1の可動式役物装置43aのモータM1の作動内容,第2の可動式役物装置43bのソレノイドSOLの作動内容を決定する。そして、上記決定された演出パターン内に、演出ボタン装置17を遊技者に押下げさせるような演出があるか否かも決定される(ステップS13)。なお、この決定されたランプデータLAMP_DATAが、次回のステップS10の処理の際、演出制御RAM800a内のメモリ領域に書込みされる。
次いで、演出制御CPU800は、上記決定された音データを演出アドレスバスADR_BUS、演出データバスDA_BUSを介して音LSI802に送信する(図4参照)。そして、音LSI802は、その音データに応じたBGMあるいは効果音を音アドレスバスMADR_BUS、音データバスMDA_BUSを介して音フラッシュROM803から読み出す。
そしてさらに、演出制御CPU800は、後述する図11に示すステップS303の処理にて、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び裏面スイッチ16からの信号BA_SWが格納されている演出制御CPU800内のレジスタ(上述した受信バッファを含む)を読み出し、その内容(例えば、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を1回押圧した場合、すなわち、遊技者調整数が+1の場合及び裏面スイッチ16の矢印16aが「3」を選択していた場合)に基づいて、演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されているシンプルアクセスコードテーブルSAC_TBLにアクセスし、そのシンプルアクセスコードテーブルSAC_TBLから、SAC数(例えば、31)を読み出し、その読み出したSAC数(例えば、31)を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数(例えば、31)に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数(例えば、31)に対応した上部スピーカ11における音量出力データ(例えば、35H)及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ(例えば、4EH)及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出す。そしてさらに、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。
これにより、音LSI802は、その読み出した音データ及び音量出力データに基づく処理を行い、音源データAMOR/L_Aとして上部スピーカ11へ送信する処理を行い、さらに、音源データAMOR/L_Bとして下部スピーカ12へ送信する処理を行う(ステップS13)。
次いで、演出制御CPU800は、ステップS12にて決定されたソレノイドSOLの作動内容に応じたソレノイドデータSOL_DATAを生成し、その生成したソレノイドデータSOL_DATAを演出制御RAM800a内のメモリ領域に格納する(ステップS14)。
次いで、演出制御CPU800は、上記ステップS13での処理に関し、上記音LSI802に演出アドレスバスADR_BUS、演出データバスDA_BUSを介して送信された音データ等を音LSI802がデコード処理する際、ノイズ等により何らかのエラーが発生していないかを演出アドレスバスADR_BUS、演出データバスDA_BUSを介して上記音LSI802にアクセスし確認する(ステップS15)。なお、もしエラーがあった場合は、音LSI802にステップS12の処理にて決定した音データを演出アドレスバスADR_BUS、演出データバスDA_BUSを介して再送信するか、又は、演出制御CPU800内に設けられている図示しないウォッチドッグタイマを用いて、演出制御CPU800を強制的にリセットし、ステップS1より処理をやり直すようにすれば良い。なお、ステップS15の処理としては、本実施形態で示した例に限らず、例えば、演出制御CPU800が、音LSI802の動作状態を音LSI802からの割込み信号を監視することにより判断するようにしても良い。割込み信号の入力条件は、例えば音源データAMOR/L_Aを上部スピーカ11及び音源データAMOR/L_Bを下部スピーカ12へ送信し終えたタイミングで音LSI802から演出制御CPU800に対して割込みをかけるようにしておけば良い。このようにしておけば、演出制御CPU800にて管理されている音源データAMOR/L_Aを上部スピーカ11へ送信し、音源データAMOR/L_Bを下部スピーカ12へ送信し終えたタイミングで音LSI802からの割込み信号があれば正常に動作しているものとみなされ次のステップの処理(本実施形態ではステップS8)へ移行することとなる。なお、この判断結果がエラーに対応するものである場合、所定の処理(例えば、割込み信号の監視処理)を繰り返すことでウォッチドックタイマをタイムアップさせ強制的にリセットさせることもできる。また、割込み条件としては、所定周期で割込みがされるように設定しても良い。さらに、判断結果がエラーに対応するものである場合、所定の処理(例えば、割込み信号の監視処理)を繰り返すことでウォッチドックタイマをタイムアップさせ強制的にリセットさせずとも、音LSI802の異常を報知するだけで、その他の処理は通常通り実行されるようにしても良い。
かくして、演出制御CPU800は、上記ステップS15の処理を終えた後、再度ステップS8の処理に戻り、ステップS8〜S15の処理を繰り返すこととなる。なお、本実施形態においては、ステップS10の処理をステップS8:YESの処理後にしているが、これは、ステップS11〜S15の処理時間が変動する可能性があるためである。
ここで、上記説明したステップS13の処理のうち、音量調整に関する処理方法を、図9を用いてより詳しく説明する。図9に示すように、演出制御CPU800は、まず、エラー確認を行う(ステップS140)。すなわち、演出制御CPU800は、エラーフラグERR_FLGがONにセットされているか否かを確認し、エラーフラグERR_FLGがONにセットされていれば何らかのエラーが発生していると判断し、ステップS141の処理に移行する(ステップS140:YES)。そして、エラーフラグERR_FLGがOFFにセットされていればエラーが発生していないと判断し、ステップS142の処理に移行する(ステップS140:NO)。
一方、演出制御CPU800は、何らかのエラーが発生していると判断した場合、表面スイッチ15及び裏面スイッチ16の設定に係らずエラー音量に調整する。すなわち、演出制御CPU800は、エラー音量に調整するため、予めプログラム上決定されているSAC数(例えば、90)を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数(例えば、90)に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数(例えば、90)に対応した上部スピーカ11における音量出力データ(例えば、C8H)及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ(例えば、E1H)及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そしてさらに、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。そして、音LSI802は、その読み出した音量出力データに基づく音量調整を行い、音源データAMOR/L_Aとして上部スピーカ11へ送信する処理を行い、さらに、音源データAMOR/L_Bとして下部スピーカ12へ送信する処理を行い、ステップS13の処理を終える(ステップS141)。これにより、遊技機に何らかのエラーが生じたことを的確に報知することができる。
他方、演出制御CPU800は、エラーが発生していないと判断した場合、遊技者の音量調整が可能かどうかを確認する処理を行う(ステップS142)。すなわち、演出制御CPU800は、音量調整可能フラグMA_FLGがONにセットされているか否かを確認し、音量調整可能フラグMA_FLGがOFFにセットされていれば、音量調整ができないと判断し、ステップS150の処理に移行する(ステップS142:NO)。そして、音量調整可能フラグMA_FLGがONにセットされていれば音量調整が可能であると判断し、ステップS143の処理に移行する(ステップS142:YES)。このように、主制御基板60(図3参照)から受信する演出制御コマンドCMD_DATAの内容に応じて音量調整を可能にしたり、不能にしたりすることにより、遊技の進行を妨げない最適な状態の時に音量調整が可能となる。
演出制御CPU800は、遊技者の音量調整が可能と判断した場合、続いて、リセットタイマRST_TIMERの値が0か否かを確認する(ステップS143)。演出制御CPU800は、このリセットタイマRST_TIMERの値が0でなければ、ステップS144の処理に移行し(ステップS143:NO)、そして、リセットタイマRST_TIMERの値が0であれば、ステップS147の処理に移行する(ステップS143:YES)。なお、このリセットタイマRST_TIMERの役割は、上部スピーカ11及び下部スピーカ12より出力される音の音量を遊技場側が裏面スイッチ16を用いて設定した当初の設定に戻すか否かを判断するためのタイマである。
一方、演出制御CPU800は、リセットタイマRST_TIMERの値が0でないと判断した場合は、リセットタイマRST_TIMERの値を−1減算する処理を行い(ステップS144)、当該リセットタイマRST_TIMERの値が0か否かを再度確認する(ステップS145)。これにより、リセットタイマRST_TIMERの値が0であると判断した場合、演出制御CPU800は、ステップS146の処理に移行し(ステップS145:YES)、リセットタイマRST_TIMERの値が0でないと判断した場合、演出制御CPU800は、ステップS147の処理に移行する(ステップS145:NO)。
そして、演出制御CPU800は、リセットタイマRST_TIMERの値が0であると判断した場合、初期の音量に変更する処理を行う(ステップS146)。すなわち、演出制御CPU800は、裏面スイッチ16からの信号BA_SWが格納されている演出制御CPU800内のレジスタを読み出し、その内容(例えば、裏面スイッチ16の矢印16aが「3」を選択していた場合)に基づいて、演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されているシンプルアクセスコードテーブルSAC_TBLにアクセスし、そのシンプルアクセスコードテーブルSAC_TBLから、SAC数(例えば、30)を読み出し、その読み出したSAC数(例えば、30)を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数(例えば、30)に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数(例えば、30)に対応した上部スピーカ11における音量出力データ(例えば、32H)及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ(例えば、4BH)及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そしてさらに、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。そして、音LSI802は、その読み出した音量出力データに基づく音量調整を行い、音源データAMOR/L_Aとして上部スピーカ11へ送信する処理を行い、さらに、音源データAMOR/L_Bとして下部スピーカ12へ送信する処理を行う(ステップS141)。これにより、次の遊技者は、遊技場側が意図した音量から開始することができる。なお、本実施形態においては、主制御基板60からの演出制御コマンドCMD(遊技中断コマンド(客待ちコマンド))を演出制御CPU800にて受信後、当該演出制御CPU800が、所定時間経過後に、遊技場側が裏面スイッチ16を用いて設定した当初の設定に戻すようにしたが、主制御基板60が遊技の待機状態を検知し、所定時間経過後、遊技場側が裏面スイッチ16を用いて設定した当初の設定に戻す内容を含んだ演出制御コマンドCMD(遊技中断コマンド(客待ちコマンド))を演出制御CPU800にて送信した後、当該演出制御CPU800が、遊技場側が裏面スイッチ16を用いて設定した当初の設定に戻すようにしても良い。
一方、演出制御CPU800は、ステップS143にてリセットタイマRST_TIMERの値が0であると判断した場合、又は、ステップS145にてリセットタイマRST_TIMERの値が0でないと判断した場合、遊技者が音量調整したか否かを確認する(ステップS147)。すなわち、演出制御CPU800は、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号が格納されている演出制御CPU800内の受信バッファを読み出し、前回格納されている内容と変更されている点があるかどうかを確認する。そして、前回格納されている内容と何ら変わりなければ、ステップS150に移行する処理を行い(ステップS147:NO)、変更されていれば、ステップS148に移行する処理を行う(ステップS147:YES)。
次いで、演出制御CPU800は、遊技者が音量調整したか否かを確認した後、音量調整していれば、上記変更内容及び裏面スイッチ16からの信号BA_SWの内容に基づいて、演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されているシンプルアクセスコードテーブルSAC_TBLにアクセスし、そのシンプルアクセスコードテーブルSAC_TBLから、該当するSAC数を読み出し、その読み出したSAC数を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数に対応した上部スピーカ11における音量出力データ及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そしてさらに、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。そして、音LSI802は、その読み出した音量出力データに基づく音量調整を行い、その音量に調整した音源データAMOR/L_Aとして上部スピーカ11へ送信する処理を行い、さらに、その音量に調整した音源データAMOR/L_Bとして下部スピーカ12へ送信する処理を行う(ステップS148)。これにより、遊技者が、表面スイッチ15を用いて設定した音量に変更されることとなる。
続いて、演出制御CPU800は、リセットタイマRST_TIMERに「0FFH」を設定する処理を行う(ステップS149)。なお、リセットタイマRST_TIMERに設定する値は自由に変更可能である。
そして次いで、演出制御CPU800は、裏面スイッチ16からの信号BA_SWが格納されている演出制御CPU800内のレジスタを読み出し、前回格納されている内容と変更されている点があるかどうかを確認する(ステップS150)。そして、前回格納されている内容と何ら変わりなければ、ステップS13の処理を終了し(ステップS150:NO)、変更されていれば、ステップS151に移行する処理を行う(ステップS150:YES)。
次いで、演出制御CPU800は、裏面スイッチ16が変更されたか否かを確認した後、変更されていれば、演出制御CPU800は、上記裏面スイッチ16からの信号BA_SWの内容に基づいて、演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されているシンプルアクセスコードテーブルSAC_TBLにアクセスし、そのシンプルアクセスコードテーブルSAC_TBLから、該当するSAC数を読み出し、その読み出したSAC数を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBLにアクセスし、そのSAC数に対応した上部スピーカ11における音量出力データ及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そしてさらに、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。そして、音LSI802は、その読み出した音量出力データに基づく音量調整を行い、その音量に調整した音源データAMOR/L_Aとして上部スピーカ11へ送信する処理を行い、さらに、その音量に調整した音源データAMOR/L_Bとして下部スピーカ12へ送信する処理を行う(ステップS151)。これにより、遊技場側の従業員等が裏面スイッチ16を用いて設定した音量に変更されることとなる。
ところで、演出制御CPU800は、このような演出制御メイン処理の実行中に、主制御基板60より演出制御コマンドCMD_DATA及び演出割込み信号CMD_IRQが送信されてくると、図10に示す処理を実行することとなる。
すなわち、図10に示すように、演出制御CPU800は、上記演出割込み信号CMD_IRQを受信した際、各レジスタの内容を演出制御RAM800a内のスタック領域に退避させる退避処理を実行する(ステップS200)。その後、演出制御CPU800は、演出制御コマンドCMD_DATAを受信した入力ポートのレジスタを読み出し(ステップS201)、演出制御RAM800a内のコマンド送受信用メモリ領域のアドレス番地を示すポインタを算出する(ステップS202)。
そしてその後、演出制御CPU800は、再度、演出制御コマンドCMD_DATAを受信した入力ポートのレジスタを読み出し(ステップS203)、ステップS201にて読み出した値とステップS203にて読み出した値が一致しているか否かを確認する。一致していなければ(ステップS204:NO)ステップS207に進み、一致していれば(ステップS204:YES)、上記算出したポインタに対応するアドレス番地に、主制御基板60より受信した演出制御コマンドCMD_DATAを格納する(ステップS205)。なお、この格納された演出制御コマンドCMD_DATAが、図8に示すステップS11の処理の際、演出制御CPU800に読み出されることとなる。
次いで、演出制御CPU800は、演出制御RAM800a内のコマンド送受信用メモリ領域のアドレス番地を示すポインタを更新し(ステップS206)、ステップS200の処理で退避しておいたレジスタを復帰させる(ステップS207)。これにより、図8に示す演出制御メイン処理に戻ることとなる。
一方、演出制御メイン処理のステップS7の処理(図8参照)にて設定した、2ms毎のタイマ割込みが発生すると、演出制御CPU800は、図11に示す処理を実行することとなる。
すなわち、図11に示すように、演出制御CPU800は、2ms毎のタイマ割込みが発生した際、各レジスタの内容を演出制御RAM800a内のスタック領域に退避させる退避処理を実行する(ステップS300)。その後、演出制御CPU800は、演出制御CPU800内に設けられているI/Oポートのレジスタをリフレッシュし(ステップS301)、図8に示すステップS14にて処理した演出制御RAM800a内のメモリ領域に格納されているソレノイドデータSOL_DATAを出力ポートよりシリアル転送で送信する。これにより、図3に示す第2の可動式役物装置43bのソレノイドSOLが通電されることとなり、可動体43b1はそのソレノイドデータSOL_DATAに基づいた作動をすることとなる。またさらに、演出制御CPU800は、演出制御RAM800a内のメモリ領域に格納されているモータデータMOT_DATAを出力ポートよりシリアル転送で送信させる。これにより、図3に示す第1の可動式役物装置43aのモータM1が回転することとなり、可動体43a1はそのモータデータMOT_DATAに基づいた作動をすることとなる。なお、このモータデータMOT_DATAの生成方法は、後述のステップS306にて詳述することとする。
次いで、演出制御CPU800は、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWを受信する。すなわち、図4及び図5を用いて上述したように、図4に示すシフトレジスタ804によって、上記表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号及び演出ボタン装置17からのボタン信号EB_SWは受信され、そして、そのシフトレジスタ804よってシリアル信号SOUTとして演出制御CPU800に出力されると、演出制御CPU800は、そのシリアル信号SOUTをパラレルデータとして受信バッファに記憶する処理を行う。
そしてまた、演出制御CPU800は、裏面スイッチ16からの信号BA_SWを内部レジスタに記憶する処理を行う(ステップS303)。なお、演出ボタン装置17が遊技者によって押下されていた場合、演出制御CPU800は、図8に示すステップS12の処理を行う際、演出ボタン装置17が押下されたことを考慮した演出パターンを決定することとなる。
その後、演出制御CPU800は、図3に示す第1の可動式役物装置43aのモータM1の位置を検知するモータセンサS1から送信される検知したデータMOT_SENに基づきモータM1の位置を確認する(ステップS304)。
次いで、演出制御CPU800は、図8に示すステップS11の処理にて演出制御RAM800a内のメモリ領域に格納された液晶制御コマンドLCD_CMDと共に、液晶制御割込み信号LCD_IRQを演出制御CPU800の出力ポートより液晶制御基板90(図3参照)に送信する(ステップS305)。これにより、液晶制御基板90は、その液晶制御コマンドLCD_CMDに応じた画像を液晶表示装置41に表示させる処理を行う。なお、この液晶制御コマンドLCD_CMDには、遊技者が音量調整可能か否かの表示内容も含まれている。
次いで、演出制御CPU800は、上記ステップS304にて確認したモータM1の位置に基づき、図8に示すステップS12にて決定されたモータM1の作動内容に応じたモータデータMOT_DATAを生成した上で、演出制御RAM800a内のメモリ領域に格納する(ステップS306)。なお、この演出制御RAM800a内のメモリ領域に格納されたモータデータMOT_DATAが、次の2msのタイマ割込みの際、ステップS302の処理にて出力ポートよりシリアル転送にて送信されることとなる。
続いて、演出制御CPU800は、演出制御RAM800a内のメモリ領域内にモータデータMOT_DATAを格納した後、図8に示すステップS10の処理にて演出制御RAM800a内に格納したランプデータLAMP_DATAを装飾ランプ基板100(図3参照)に送信する。これにより、LEDランプLAが点灯又は消灯することとなり、所望のランプ演出が行われることとなる。
次いで、演出制御CPU800は、図8に示すステップS8の処理にて用いる0〜31までループ状にカウントするメインループカウンタML_CNTをインクリメント(+1)し、そのインクリメントした値を16分周(すなわち、16で除算)する処理を行う(ステップS308)。そしてその後、演出制御CPU800は、ステップS300の処理で退避しておいたレジスタを復帰させる(ステップS309)。これにより、図8に示す演出制御メイン処理に戻ることとなる。
以上説明した本実施形態によれば、遊技場側の従業員等が設定した裏面スイッチ16の設定を基準値とし、その基準値に基づいて遊技者が表面スイッチ15を用いて音量調整できるようにしているから、遊技場側からの意向から外れることなく、遊技者が音量調整をすることができる。
<第2実施形態>
次に、本発明の第2実施形態を図12及び図13に基づいて説明する。なお、第1実施形態と同一構成については、同一の符号を付し、説明は省略する。
図12及び図13に示すように、第2実施形態と第1実施形態の異なる点は、図6(b)及び図7に示すテーブルが異なるだけでそれ以外は同一である。
図12に示す、音量出力増減値テーブルVO_REG_TBLは、演出制御フラッシュROM801に格納されており、この音量出力増減値テーブルVO_REG_TBLには、図12に示す裏面スイッチ16における0〜9の10段階の数字がそれぞれ格納されている。なお、これら数字は、図12に示すテーブルTB100にそれぞれ格納されている。
そして、そのテーブルTB100に格納されている数字に対応するSAC数が図12に示すテーブルTB101にそれぞれ格納されている。このテーブルTB101に格納されているSAC数は、裏面スイッチ16における0〜9の10段階の数字に対応するものであり、遊技場側の従業員等が設定できるもので、基準値となるものである。すなわち、遊技者が、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4を何ら押圧しなければ、そのテーブルTB101に格納されているSAC数に対応した音量出力データに基づく音量に調整されたBGMや効果音等が、上部スピーカ11及び下部スピーカ12から出力されることとなる。
一方、遊技者が、音量を増加しようと、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3(図1参照)を押圧した際、その押圧数(調整数)に対応した音量出力データ(図13参照)の増加値がそれぞれ音量出力増減値テーブルVO_REG_TBLに格納されており、これら増加値は、図12に示すように、テーブルTB102に格納されている。
このテーブルTB102には、遊技場側の従業員等が裏面スイッチ16において、0〜2のいずれかを選択した場合、音量出力データの増加値が何ら格納されておらず、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を押圧したとしても、音量調整ができないようになっている。その一方で、遊技場側の従業員等が裏面スイッチ16において、3〜9のいずれかを選択した場合、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を1回押圧する毎に、+1ずつ増加する遊技者調整数に対応した音量出力データの増加値が格納されている。この音量出力データの増加値は、+3Hずつ増加するような増加値が格納されており、遊技者は、10段階で音量が増大できるようになっている。
一方、遊技者が、音量を減少しようと、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4(図1参照)を押圧した際、その押圧数(調整数)に対応した音量出力データ(図13参照)の減少値がそれぞれ音量出力増減値テーブルVO_REG_TBLに格納されている。なお、これら減少値は、図12に示すように、テーブルTB103に格納されている。
このテーブルTB103には、遊技場側の従業員等が裏面スイッチ16において、0〜2のいずれかを選択した場合、音量出力データの減少値が何ら格納されておらず、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を押圧したとしても、音量調整ができないようになっている。その一方で、遊技場側の従業員等が裏面スイッチ16において、3〜9のいずれかを選択した場合、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を1回押圧する毎に、−1ずつ減少する遊技者調整数に対応した音量出力データの減少値が格納されている。この音量出力データの減少値は、−3Hずつ減少するような減少値が格納されており、遊技者は、10段階で音量を減少できるようになっている。なお、遊技者調整数は、遊技者が、表面スイッチ15の上下左右に対応する選択ボタンSW1〜SW4の押圧回数によって変動するものである。すなわち、遊技者が、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を、例えば2回押圧し、遊技者調整数が+2になっている状態で、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を、例えば1回押圧した場合は、遊技者調整数が+1となる。そしてまた、遊技者が、表面スイッチ15の下又は左に対応する選択ボタンSW2又はSW4を、例えば10回押圧し、遊技者調整数が−10になっている状態で、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を、例えば1回押圧した場合は、遊技者調整数が−9となるというものである。
他方、音フラッシュROM803(図4参照)には、図13に示すように、音量出力値テーブルVL_TBL_Aが格納されている。この音量出力値テーブルVL_TBL_Aには、上記音量出力増減値テーブルVO_REG_TBLに格納されているSAC数が0〜9まで格納されており、これらSAC数は、図13に示すテーブルTB110にそれぞれ格納されている。
また、音量出力値テーブルVL_TBL_Aには、このテーブルTB110に格納されたSAC数に対応した上部スピーカ11における音量出力データがそれぞれ格納されており、これら音量出力データは、図13に示すテーブルTB111にそれぞれ格納されている。より詳しく説明すると、テーブルTB111には、上部スピーカ11から出力される音量の音量出力データがそれぞれ格納されており、さらには、その音量出力データを設定する音LSI802内に設けられているレジスタのアドレス(C0H)も格納されている。そして、音量出力値テーブルVL_TBL_Aには、テーブルTB110に格納されたSAC数に対応した下部スピーカ12における音量出力データがそれぞれ格納されており、これら音量出力データはテーブルTB112に格納されている。より詳しく説明すると、テーブルTB112には、下部スピーカ12から出力される音量の音量出力データがそれぞれ格納されており、さらには、その音量出力データを設定する音LSI802内に設けられているレジスタのアドレス(C1H)も格納されている。そして、音量出力値テーブルVL_TBL_Aには、音LSI802に対し、当該音量出力値テーブルVL_TBL_Aへのアクセスを終了させるための終了コード(FFH)が格納されている。なお、これら終了コードは、図13に示すテーブルTB113に格納されている。
このように、演出制御フラッシュROM801に、音量出力増減値テーブルVO_REG_TBLを格納し、音フラッシュROM803に、音量出力値テーブルVL_TBL_Aを格納することで、音フラッシュROM803に格納されているデータを大幅に削減することができる。すなわち、演出制御CPU800が、裏面スイッチ16からの信号BA_SW(例えば、裏面スイッチ16の矢印16aが「3」を選択していた場合)に基づいて、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、演出制御フラッシュROM801に格納されている音量出力増減値テーブルVO_REG_TBLにアクセスすると、演出制御CPU800は、その音量出力増減値テーブルVO_REG_TBLから、SAC数(例えば、3)を読み出し、その読み出したSAC数(例えば、3)を、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して音LSI802に出力する。そして、音LSI802は、そのSAC数(例えば、3)に対応した音量出力データを読み出すべく、音アドレスバスMADR_BUS及び音データバスMDA_BUSを介して、音フラッシュROM803に格納されている音量出力値テーブルVL_TBL_Aにアクセスし、そのSAC数(例えば、3)に対応した上部スピーカ11における音量出力データ(例えば、32H)及び上記音LSI802の内部レジスタアドレス(C0H)を、音データバスMDA_BUSを介して読み出し、さらに、下部スピーカ12における音量出力データ(例えば、4BH)及び上記音LSI802の内部レジスタアドレス(C1H)を、音データバスMDA_BUSを介して読み出し、そして、終了コード(FFH)を、音データバスMDA_BUSを介して読み出す。これにより、音LSI802は、音フラッシュROM803より読み出した上部スピーカ11における音量出力データ(例えば、32H)及び下部スピーカ12における音量出力データ(例えば、4BH)を内部レジスタに格納する。そして、演出制御CPU800は、音LSI802の内部レジスタに格納された上部スピーカ11における音量出力データ(例えば、32H)及び下部スピーカ12における音量出力データ(例えば、4BH)を、演出データバスDA_BUSを介して読み出し、表面スイッチ15の上下左右4箇所に対応する選択ボタンSW1〜SW4の接点信号(例えば、表面スイッチ15の上又は右に対応する選択ボタンSW1又はSW3を1回押圧した場合、すなわち、遊技者調整数が+1の場合)に基づいて、当該音量出力データを増減させる処理を行う。すなわち、本実施形態においては、上部スピーカ11における音量出力データは、32H+03H=35Hとなり、下部スピーカ12における音量出力データは、4BH+03H=4EHとなる。このように算出された算出値を演出制御CPU800は、演出アドレスバスADR_BUS及び演出データバスDA_BUSを介して、音LSI802に出力する。これにより、音LSI802は、上部スピーカ11における音量出力データ(例えば、35H)に基づく音量に調整したBGMや効果音の音源データAMOR/L_Aを上部スピーカ11に出力し、そしてさらに、下部スピーカ12における音量出力データ(例えば、4EH)に基づく音量に調整したBGMや効果音の音源データAMOR/L_Bを下部スピーカ12に出力する。
したがって、このように、演出制御フラッシュROM801に、音量出力増減値テーブルVO_REG_TBLを格納し、音フラッシュROM803に、音量出力値テーブルVL_TBL_Aを格納することで、音フラッシュROM803に格納されているデータを大幅に削減することができる。しかも、上記第1実施形態と同様、遊技場側からの意向から外れることなく、遊技者が音量調整をすることができる。
なお、本実施形態においては、音量出力値テーブルVL_TBL_Aを音フラッシュROM803に格納するようにしたが、演出制御フラッシュROM801に格納するようにしても良い。これによれば、SAC数に対応した音量出力データを読み出す際、音フラッシュROM803にわざわざアクセスしなくとも良くなる。
ところで、上記第1及び第2実施形態においては、表面スイッチ15及び裏面スイッチ16の調整段階として10段階に調整できる例を示したが、これに限定されず、何段階でも自由に設計変更可能である。
また、上記第1及び第2実施形態においては、遊技者が音量調整可能か否かの報知を液晶表示装置41に表示させるような例を示したが、表面スイッチ15に内蔵ランプを設け、それを光らせるようにしても良い。その際、図8に示す上記ステップS12にてそのデータを作成し、ステップS10にてそのデータを演出制御CPU800の内部レジスタに格納し、図11に示すステップS307にて当該データを出力するようにすれば良い。
さらに、上記第1及び第2実施形態においては、演出制御CPU800と演出制御フラッシュROM801を別々に設けた例を示したが、演出制御CPU800内に演出制御フラッシュROM801を内蔵させても良い。
そして、上記第1及び第2実施形態においては、演出制御基板80と液晶制御基板90と別々に設ける例を示したが、一体的に設けても良い。
また、上記第1及び第2実施形態においては、遊技中断コマンド(客待ちコマンド)で音量調整を可能にし、変動開始コマンド(保留増加コマンド又は変動パターンコマンド)であれば、音量調整を不能にするような例を示したが、勿論これに限らず、大当たりの開始を示すファンファーレコマンドで音量調整を可能にし、実際に大入賞口が開始されるラウンド開始コマンドで音量調整を不能にしても良く、遊技の進行を妨げない状態であれば、どのような状態であっても良い。