(57)【要約】【課題】演出制御処理のためのマイクロコンピュータの処理負荷や容量負担の軽減【解決手段】遊技機において、遊技状態に応じて発光動作を行う発光手段と、供給された第１ビット数（例えば８ビット）の発光駆動データで示される発光輝度に応じた発光駆動信号を接続された発光手段に出力して、該発光手段の発光動作を実行させる発光駆動信号出力手段と、第１ビット数より少ないビット数である第２ビット数（例えば４ビット）の発光輝度情報を記憶すると共に、第２ビット数の発光輝度情報を、第１ビット数に変換して上記発光駆動データを生成し、その発光駆動データを発光駆動信号出力手段に供給する演出制御手段とを備える。【選択図】図２９
2014064697.tif 000002
【特許請求の範囲】
【請求項１】
遊技状態に応じて発光動作を行う発光手段と、
供給された第１ビット数の発光駆動データで示される発光輝度に応じた発光駆動信号を接続された発光手段に出力して、該発光手段の発光動作を実行させる発光駆動信号出力手段と、
上記第１ビット数より少ないビット数である第２ビット数の発光輝度情報を記憶すると共に、上記第２ビット数の発光輝度情報を、上記第１ビット数に変換して上記発光駆動データを生成し、その発光駆動データを上記発光駆動信号出力手段に供給する演出制御手段と、
を備えた遊技機。
【請求項２】
上記演出制御手段は、上記第１ビット数に変換して生成した上記発光駆動データを、シリアルデータとして上記発光駆動信号出力手段に供給する請求項１に記載の遊技機。
【請求項３】
上記演出制御手段は、第２ビット数の発光輝度情報を、上記第１ビット数における上位ビットに配置して、上記第１ビット数の上記発光駆動データを生成する請求項１又は請求項２に記載の遊技機。
【請求項４】
上記第１ビット数は８ビット、上記第２ビット数は４ビットである請求項１乃至請求項３のいずれかに記載の遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパチンコ遊技機などの遊技機に係り、特には遊技機における演出動作等の制御のためのデータ送信動作に関する。
【先行技術文献】
【特許文献】
【０００２】
【特許文献１】特許第４６１３１９１号公報
【背景技術】
【０００３】
パチンコ遊技機、スロット遊技機等では、ＬＥＤ（Light Emitting Diode）等を用いた発光部による点灯・点滅動作や、遊技盤上に設けた可動体役物の駆動などにより、遊技に付随した演出を行ったり、或いは発光部の点灯・点滅動作により、エラー告知、案内表示等を行うものがある。
発光部や可動体役物の動作のためには、例えば演出制御部として機能するマイクロコンピュータが、ＬＥＤドライバ回路などに対し駆動データを供給する。ＬＥＤドライバには例えば多数のＬＥＤが接続され、ＬＥＤドライバは、各ＬＥＤに対し、駆動データに応じた発光駆動電流を流すことで発光動作を実行させる。
【０００４】
なお上記特許文献１には、演出制御部がＬＥＤドライバに対し、複数のＬＥＤの発光駆動のための駆動データをシリアルデータとして出力し、ＬＥＤドライバがシリアルデータをパラレルデータに変換して、接続された各ＬＥＤへ電流供給を行う技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このような遊技機では、本来の遊技動作の制御に加えて多様な演出制御、エラー制御等が行われるが、このため演出制御のためのマイクロコンピュータの制御負荷が増大し、それに伴って制御に用いる各種データの記憶のための容量負担が増大する傾向にある。
そこで本発明では、演出制御用のマイクロコンピュータ等の容量負担を軽減することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の遊技機は、遊技状態に応じて発光動作を行う発光手段と、供給された第１ビット数の発光駆動データで示される発光輝度に応じた発光駆動信号を接続された発光手段に出力して、該発光手段の発光動作を実行させる発光駆動信号出力手段と、上記第１ビット数より少ないビット数である第２ビット数の発光輝度情報を記憶すると共に、上記第２ビット数の発光輝度情報を、上記第１ビット数に変換して上記発光駆動データを生成し、その発光駆動データを上記発光駆動信号出力手段に供給する演出制御手段とを備える。
【０００７】
また、上記演出制御手段は、上記第１ビット数に変換して生成した上記発光駆動データを、シリアルデータとして上記発光駆動信号出力手段に供給する。
また上記演出制御手段は、第２ビット数の発光輝度情報を、上記第１ビット数における上位ビットに配置して、上記第１ビット数の上記発光駆動データを生成する。
また上記第１ビット数は８ビット、上記第２ビット数は４ビットである。
【０００８】
このような本発明では、演出制御手段は、発光駆動信号出力手段に供給する第１ビット数（例えば８ビット）の発光輝度情報（階調情報）を、第２ビット数（例えば４ビット）で記憶しておくことができる。このようにすることで、演出制御手段は内部ＲＯＭに記憶する階調データのデータ容量を大幅に削減でき、メモリ容量消費を抑制できる。
【発明の効果】
【０００９】
本発明によれば演出制御手段の発光階調制御のためのデータ容量負担を少なくすることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態のパチンコ遊技機の斜視図である。
【図２】実施の形態のパチンコ遊技機の盤面の正面図である。
【図３】実施の形態のパチンコ遊技機の制御構成のブロック図である。
【図４】第１の実施の形態のドライバ部の接続構成のブロック図である。
【図５】第１の実施の形態のドライバ部の内部構成例のブロック図である。
【図６】実施の形態の主制御メイン処理のフローチャートである。
【図７】実施の形態の主制御タイマ割込処理のフローチャートである。
【図８】実施の形態の演出制御メイン処理のフローチャートである。
【図９】実施の形態の演出制御の１ｍｓタイマ割込処理のフローチャートである。
【図１０】実施の形態の演出制御におけるコマンド解析処理のフローチャートである。
【図１１】実施の形態の演出制御におけるコマンド対応処理のフローチャートである。
【図１２】実施の形態の演出制御におけるシナリオ登録処理のフローチャートである。
【図１３】実施の形態の演出制御におけるシナリオ削除処理のフローチャートである。
【図１４】実施の形態の演出制御におけるシナリオ更新処理のフローチャートである。
【図１５】実施の形態の演出制御におけるサブシナリオ更新処理のフローチャートである。
【図１６】実施の形態のシナリオ登録情報、ランプデータ登録情報、モータデータ登録情報の説明図である。
【図１７】実施の形態の音データ登録情報の説明図である。
【図１８】実施の形態のメインシナリオテーブルの説明図である。
【図１９】実施の形態のサブシナリオテーブルの説明図である。
【図２０】実施の形態の演出制御におけるＬＥＤ駆動データ更新処理のフローチャートである。
【図２１】第１の実施の形態の演出制御におけるＬＥＤ出力処理のフローチャートである。
【図２２】実施の形態のランプデータの登録情報の説明図である。
【図２３】実施の形態のランプデータ及びマスクデータのアドレステーブルの説明図である。
【図２４】実施の形態のランプデータテーブル及びマスクデータテーブルの説明図である。
【図２５】実施の形態のランプデータの更新及び出力の説明図である。
【図２６】実施の形態のドライバへ送信するシリアルデータの説明図である。
【図２７】実施の形態の各チャネルへのシリアルデータ送信の説明図である。
【図２８】実施の形態の演出制御部のシリアルデータ送信動作の説明図である。
【図２９】実施の形態の４ビット点灯データの８ビット変換の説明図である。
【図３０】実施の形態のＬＥＤドライバ初期化処理のフローチャートである。
【図３１】実施の形態のＬＥＤドライバ初期化処理のフローチャートである。
【図３２】第２の実施の形態のドライバ部の接続構成のブロック図である。
【図３３】第２の実施の形態のドライバ部の内部構成例のブロック図である。
【図３４】第２の実施の形態の演出制御におけるＬＥＤ出力処理のフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明に係る遊技機の実施の形態としてパチンコ遊技機を例に挙げ、次の順序で説明する。
＜１．パチンコ遊技機の構造＞
＜２．パチンコ遊技機の制御構成及び第１の実施の形態のドライバ構成＞
＜３．主制御部の処理＞
＜４．演出制御部の処理＞
［４−１：メイン処理］
［４−２：１ｍｓタイマ割込処理］
［４−３：コマンド解析処理］
［４−４：シナリオ登録・削除処理］
［４−５：シナリオ更新処理］
［４−６：ＬＥＤ駆動データ更新処理］
［４−７：第１の実施の形態のＬＥＤ出力処理］
［４−８：ＬＥＤドライバ初期化処理］
＜５．第２の実施の形態＞
＜６．変形例＞
【００１２】
＜１．パチンコ遊技機の構造＞
まず図１、図２を参照して、本発明の実施の形態としてのパチンコ遊技機１の構成を概略的に説明する。
図１は実施の形態のパチンコ遊技機１の外観を示す正面側の斜視図であり、図２は遊技盤の正面図である。
図１，図２に示すパチンコ遊技機１は、主に「枠部」と「遊技盤部」から成る。
「枠部」は以下説明する前枠２，外枠２、ガラス扉５、操作パネル７を有して構成される。「遊技盤部」は図２の遊技盤３から成る。以下の説明上で、「枠部」「枠側」とは前枠２，外枠２、ガラス扉５、操作パネル７の総称とする。また「盤部」「盤側」とは遊技盤３を示す。
【００１３】
図１に示すようにパチンコ遊技機１は、木製の外枠４の前面に額縁状の前枠２が開閉可能に取り付けられている。図示していないが、この前枠２の裏面には遊技盤収納フレームが形成されており、その遊技盤収納フレーム内に図２に示す遊技盤３が装着される。これにより遊技盤３の表面に形成した遊技領域３ａが前枠２の開口部２ａから図１の遊技機前面側に臨む状態となる。
なお遊技領域３ａの前側には、透明ガラスを支持したガラス扉５が設けられており、遊技領域３ａは透明ガラスを介して前面の遊技者側に表出される。
【００１４】
ガラス扉５は軸支機構６により前枠２に対して開閉可能に取り付けられている。そしてガラス扉５の所定位置に設けられた図示しない扉ロック解除用キーシリンダを操作することで、前枠２に対するガラス扉５のロック状態を解除し、ガラス扉５を前側に開放できる構造とされている。また扉ロック解除用キーシリンダの操作によっては、外枠４に対する前枠２のロック状態も解除可能な構成とされている。
またガラス扉５の前面側には、枠側の発光手段として装飾ランプ２０ｗが各所に設けられている。装飾ランプ２０ｗは、例えばＬＥＤによる発光動作として、演出用の発光動作、エラー告知用の発光動作、動作状態に応じた発光動作などを行う。
【００１５】
ガラス扉５の下側には操作パネル７が設けられている。この操作パネル７も、図示しない軸支機構により、前枠２に対して開閉可能とされている。
操作パネル７には、上受け皿ユニット８、下受け皿ユニット９、発射操作ハンドル１０が設けられている。
【００１６】
上受け皿ユニット８には、弾球に供される遊技球を貯留する上受け皿８ａが形成されている。下受け皿ユニット９には、上受け皿８ａに貯留しきれない遊技球を貯留する下受け皿９ａが形成されている。
また上受け皿ユニット８には、上受け皿８ａに貯留された遊技球を下受け皿９ａ側に抜くための球抜きボタン１６が設けられている。下受け皿ユニット９には、下受け皿９ａに貯留された遊技球を遊技機下方に抜くための球抜きレバー１７が設けられている。
また上受け皿ユニット８には、図示しない遊技球貸出装置に対して遊技球の払い出しを要求するための球貸しボタン１４と、遊技球貸出装置に挿入した有価価値媒体の返却を要求するためのカード返却ボタン１５とが設けられている。
さらに上受け皿ユニット８には、パトライトスイッチ１１、演出ボタン１２、十字キー１３が設けられている。パトライトスイッチ１１や演出ボタン１２は、所定の入力受付期間中に内蔵ランプが点灯されて操作可能となり、その内蔵ランプ点灯時に押下することにより演出に変化をもたらすことができる押しボタンとされる。また十字キー１３は遊技者が演出状況に応じた操作や演出設定等のための操作を行う操作子である。
【００１７】
発射操作ハンドル１０は操作パネル７の右端部側に設けられ、遊技者が弾球のために図３に示す発射装置３２を作動させる操作子である。
また前枠２の上部の両側と、発射操作ハンドル１０の近傍には、演出音を音響出力するスピーカ２５が設けられている。
【００１８】
次に図２を参照して、遊技盤３の構成について説明する。遊技盤３は、略正方形状の木製合板または樹脂板を主体として構成されている。この遊技盤３には、発射された遊技球を案内する球誘導レール３１が盤面区画部材として環状に装着されており、この球誘導レール３１に取り囲まれた略円形状の領域が遊技領域３ａとなっている。
【００１９】
この遊技領域３ａの略中央部には、主液晶表示装置３２Ｍ（ＬＣＤ：Liquid Crystal Display）が設けられ、また主液晶表示装置３２Ｍの右側には副液晶表示装置３２Ｓが設けられている。
主液晶表示装置３２Ｍでは、後述する演出制御部５１の制御の下、背景画像上で、たとえば左、中、右の３つの装飾図柄の変動表示が行われる。また通常演出、リーチ演出、スーパーリーチ演出などの各種の演出画像の表示も行われる。副液晶表示装置３２Ｓも、同様に各種演出に応じた表示が行われる。
【００２０】
また遊技領域３ａ内には、主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓの表示面の周囲を囲むように、センター飾り３５Ｃが設けられている。
センター飾り３５Ｃは、そのデザインにより装飾効果を発揮するだけでなく、周囲の遊技球から主液晶表示装置３６Ｍ及び副液晶表示装置３２Ｓの表示面を保護する作用を持つ。さらにセンター飾り３５Ｃは、遊技球の打ち出しの強さまたはストローク長による遊技球の流路の左右打ち分けを可能とする部材としても機能する。即ち球誘導レール３１を介して遊技領域３ａ上部に打ち出された遊技球の流下経路は、センター飾り３５Ｃによって分割された左遊技領域３ｂと右遊技領域３ｃのいずれかを流下することとなる。いわゆる左打ちの場合、遊技球は左遊技領域３ｂを流下していき、右打ちの場合、遊技球は右遊技領域３ｃを流下していく。
【００２１】
また左遊技領域３ｂの下方には、左下飾り３５Ｌが設けられ、装飾効果を発揮するとともに左遊技領域３ｂとしての範囲を規定する。
同様に右遊技領域３ｃの下方には右下飾り３５Ｒが設けられ、装飾効果を発揮するとともに左遊技領域３ｂとしての範囲を規定する。
なお、遊技領域３ａ（左遊技領域３ｂ及び右遊技領域３ｃ）内には、所要各所に釘４９や風車４７が設けられて遊技球の多様な流下経路を形成する。
また主液晶表示装置３２Ｍの下方にはセンターステージ３５Ｓが設けられており、装飾効果を発揮するとともに、遊技球の遊動領域として機能する。
なお図示していないが、センター飾り３５Ｃには、適所に視覚的演出効果を奏する可動体役物が設けられている。
【００２２】
遊技領域３ａの右上縁付近には、複数個のＬＥＤを配置して形成されたドット表示器による図柄表示部３３が設けられている。
この図柄表示部３３では、所定のドット領域により、第１特別図柄表示部、第２特別図柄表示部、及び普通図柄表示部が形成され、第１特別図柄、第２特別図柄、及び普通図柄のそれぞれの変動表示動作（変動開始および変動停止を一セットする変動表示動作）が行われる。
なお、上述した主液晶表示装置３６Ｍは、図柄表示部３３による第１、第２特別図柄の変動表示と時間的に同調して、画像による装飾図柄を変動表示する。
【００２３】
センター飾り３５Ｃの下方には、上始動口４１（第１の特別図柄始動口）を有する入賞装置が設けられ、さらにその下方には下始動口４２ａ（第２の特別図柄始動口）を備える普通変動入賞装置４２が設けられている。
上始動口４１及び下始動口４２ａの内部には、遊技球の通過を検出する検出センサ（図３に示す上始動口センサ７１，下始動口センサ７２）が形成されている。
【００２４】
上始動口４１は、図柄表示部３３における第１特別図柄の変動表示動作の始動条件に係る入賞口で、始動口開閉手段（始動口を開放または拡大可能にする手段）を有しない入賞率固定型の入賞装置となっている。
【００２５】
下始動口４２ａを有する普通変動入賞装置４２は、始動口開閉手段により始動口の遊技球の入賞率を変動可能な入賞率変動型の入賞装置として構成されている。即ち下始動口４２ａを開放または拡大可能にする左右一対の可動翼片（可動部材）４２ｂを備えた、いわゆる電動チューリップ型の入賞装置である。
この普通変動入賞装置４２の下始動口４２ａは、図柄表示部３３における第２特別図柄の変動表示動作の始動条件に係る入賞口である。そして、この下始動口４２ａの入賞率は可動翼片４２ｂの作動状態に応じて変動する。即ち可動翼片４２ｂが開いた状態では、入賞が容易となり、可動翼片４２ｂが閉じた状態では、入賞が困難又は不可能となるように構成されている。
【００２６】
また普通変動入賞装置４２の左右には、一般入賞口４３が複数個設けられている。各一般入賞口４２の内部には、遊技球の通過を検出する検出センサ（図３に示す一般入賞口センサ７４）が形成されている。
また右遊技領域３ｃの下部側には、遊技球が通過可能なゲート（特定通過領域）からなる普通図柄始動口４４が設けられている。この普通図柄始動口４４は、図柄表示部３３における普通図柄の変動表示動作に係る入賞口であり、その内部には、通過する遊技球を検出するセンサ（図３に示すゲートセンサ７３）が形成されている。
【００２７】
右遊技領域３ｃ内の普通図柄始動口４４から普通変動入賞装置４２へかけての流下経路途中には第１特別変動入賞装置４５（特別電動役物）が設けられている。
第１特別変動入賞装置４５は、突没式の開放扉４５ｂにより第１大入賞口４５ａを閉鎖／開放する構造とされている。また、その内部には第１大入賞口４５ａへの遊技球の通過を検出するセンサ（図３の第１大入賞口センサ７５）が形成されている。
第１大入賞口４５ａの周囲は、右下飾り３５Ｒが遊技盤３の表面から膨出した状態となっており、その膨出部分の上辺及び開放扉４５ｂの上面が右流下経路３ｃの下流案内部を形成している。従って、開放扉４５ｂが盤内部側に引き込まれることで、下流案内部に達した遊技球は容易に第１大入賞口５０に入る状態となる。
【００２８】
また普通変動入賞装置４２の下方には、第２特別変動入賞装置４６（特別電動役物）が設けられている。第２特別変動入賞装置４６は、下部が軸支されて開閉可能な開放扉４６ｂにより、その内側の第２大入賞口４６ａを閉鎖／開放する構造とされている。また、その内部には第２大入賞口４６ａへの遊技球の通過を検出するセンサ（図３の第２大入賞口センサ７６）が形成されている。
開放扉４６ｂが開かれることで第２大入賞口４６ａが開放される。この状態では、左遊技領域３ｂ或いは右遊技領域３ｃを流下してきた遊技球は、高い確率で第２大入賞口５０に入ることとなる。
【００２９】
以上のように盤面の遊技領域には、入賞口として上始動口４１、下始動口４２ａ、普通図柄始動口４４、第１大入賞口４５ａ、第２大入賞口４６ａ、一般入賞口４３が形成されている。
本実施の形態のパチンコ遊技機１においては、これら入賞口のうち、普通図柄始動口４４以外の入賞口への入賞があった場合には、各入賞口別に設定された入賞球１個当りの賞球数が遊技球払出装置５５（図３参照）から払い出される。
例えば、上始動口４１および下始動口４２ａは３個、第１大入賞口４５ａ、第２大入賞口４６ａは１３個、一般入賞口４３は１０個などと賞球数が設定されている。
なお、これらの各入賞口に入賞しなかった遊技球は、アウト口４８を介して遊技領域３ａから排出される。
ここで「入賞」とは、入賞口がその内部に遊技球を取り込んだり、ゲートを遊技球が通過したりすることをいう。実際には入賞口ごとに形成されたセンサ（各入賞検出スイッチ）により遊技球が検出された場合、その入賞口に「入賞」が発生したものとして扱われる。この入賞に係る遊技球を「入賞球」とも称する。
【００３０】
以上のような盤面において、センター飾り３５Ｃ、左下飾り３５Ｌ、右下飾り３５Ｒ、センターステージ３５Ｓ、第１特別変動入賞装置４５、第２特別変動入賞装置４６、さらには図示していない可動体役物には、詳細には図示していないが各所に、盤側の発光手段として装飾ランプ２０ｂが設けられている。
装飾ランプ２０ｂは、例えばＬＥＤによる発光動作として、演出用の発光動作、エラー告知用の発光動作、動作状態に応じた発光動作などを行う。
【００３１】
＜２．パチンコ遊技機の制御構成及び第１の実施の形態のドライバ構成＞
次に本実施の形態のパチンコ遊技機１の制御系の構成について説明する。図３はパチンコ遊技機１の内部構成の概略的なブロック図である。
本実施の形態のパチンコ遊技機１は、その制御構成を形成する基板として主に、主制御基板５０、演出制御基板５１、液晶制御基板５２、払出制御基板５３、発射制御基板５４、電源基板５８が設けられている。
【００３２】
主制御基板５０は、マイクロコンピュータ等が搭載され、パチンコ遊技機１の遊技動作全般に係る統括的な制御を行う。なお以下では、主制御基板５０に搭載されたマイクロコンピュータ等を含めて主制御基板５０の構成体を「主制御部５０」と表記する。
演出制御基板５１は、マイクロコンピュータ等が搭載され、主制御部５０から演出制御コマンドを受けて、画像表示、発光、音響出力を用いた各種の演出動作を実行させるための制御を行う。なお以下では、演出制御基板５１に搭載されたマイクロコンピュータ等を含めて液晶制御基板５１の構成体を「演出制御部５１」と表記する。
【００３３】
液晶制御基板５２はマイクロコンピュータやビデオプロセッサ等が搭載され、演出制御部５１からの表示制御コマンドを受けて、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓによる表示動作の制御を行う。
なお主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓによる表示動作の制御を行う液晶制御基板として、主液晶制御基板、副液晶制御基板を独立して設けてもよい。
払出制御基板５３は、パチンコ遊技機１に接続された遊技球払出装置５５による賞球の払い出し制御を行う。
発射制御基板５４は、遊技者のパチンコ遊技機１に設けられている発射装置５６による遊技球の発射動作の制御を行う。
電源基板５８は、外部電源（例えばＡＣ２４Ｖ）からＡＣ／ＤＣ変換、さらにはＤＣ／ＤＣ変換を行い、各部に動作電源電圧Ｖｃｃを供給する。なお電源経路の図示は省略している。
【００３４】
まず主制御部５０及びその周辺回路について述べる。
主制御部５０は、ＣＰＵ１００（以下「主制御ＣＰＵ１００」と表記）を内蔵したマイクロプロセッサ、ＲＯＭ１０１（以下「主制御ＲＯＭ１０１」と表記）、ＲＡＭ１０２（以下「主制御ＲＡＭ１０２」と表記）を搭載し、マイクロコンピュータを構成している。
主制御ＣＰＵ１００は制御プログラムに基づいて、遊技の進行に応じた各種演算及び制御処理を実行する。
主制御ＲＯＭ１０１は、主制御ＣＰＵ１００による遊技動作の制御プログラムや、遊技動作制御に必要な種々のデータを記憶する。
主制御ＲＡＭ１０２は、主制御ＣＰＵ１００が各種演算処理に使用するワークエリアや、各種入出力データや処理データのバッファ領域として用いられる。
なお図示は省略したが、主制御部５０は、各部とのインターフェース回路、特別図柄変動表示に係る抽選用乱数を生成する乱数生成回路、各種の時間計数のためのＣＴＣ（Counter Timer Circuit）、主制御ＣＰＵ１００に割込み信号を与える割込コントローラ回路なども備えている。
【００３５】
主制御部５０は、上述のように盤面の遊技領域の各入賞手段（上始動口４１、下始動口４２ａ、普通図柄始動口４４、第１大入賞口４５ａ、第２大入賞口４６ａ、一般入賞口４３）に設けられるセンサの検出信号を受信する構成となっている。
即ち、上始動口センサ７１、下始動口センサ７２、ゲートセンサ７３、一般入賞口センサ７４、第１大入賞口センサ７５、第２大入賞口センサ７６のそれぞれの検出信号が主制御部５０に供給される。
なお、これらのセンサ（７１〜７６）は、入球した遊技球を検出する検出スイッチにより構成されるが、具体的にはフォトスイッチや近接スイッチなどの無接点スイッチや、マイクロスイッチなどの有接点スイッチで構成することができる。
【００３６】
主制御部５０は、上始動口センサ７１、下始動口センサ７２、ゲートセンサ７３、一般入賞口センサ７４、第１大入賞口センサ７５、第２大入賞口センサ７６のそれぞれの検出信号の受信に応じて、処理を行う。例えば抽選処理、図柄変動制御、賞球払出制御、演出制御コマンド送信制御、外部データ送信処理などを行う。
【００３７】
また主制御部５０には、下始動口４２の可動翼片４２ｂを開閉駆動する普通電動役物ソレノイド７７が接続され、主制御部５０は遊技進行状況に応じて制御信号を送信して普通電動役物ソレノイド７７の駆動動作を実行させ、可動翼片４２ｂの開閉動作を実行させる。
さらに、主制御部５０には、第１大入賞口４５の開放扉４５ｂを開閉駆動する第１大入賞口ソレノイド７８と、第２大入賞口４６の開放扉４６ｂを開閉駆動する第２大入賞口ソレノイド７９が接続されている。主制御部５０は、いわゆる大当たり状況に応じて、第１大入賞口ソレノイド７８又は第２大入賞口ソレノイド７９を駆動制御して、第１大入賞口４５又は第２大入賞口４６の開放動作を実行させる。
【００３８】
また主制御部５０には、図柄表示部３３が接続されており、図柄表示部３３に制御信号を送信して、各種図柄表示（ＬＥＤの消灯／点灯／点滅）を実行させる。これにより図柄表示部３３における第１特別図柄表示部８０、第２特別図柄表示部８１、普通図柄表示部８２での表示動作が実行される。
【００３９】
また主制御部５０には、枠用外部端子基板５７が接続される。主制御部５０は、遊技進行に関する情報を、枠用外部端子基板５７を介して図示しないホールコンピュータに送信可能となっている。遊技進行に関する情報とは、例えば大当り当選情報、賞球数情報、図柄変動表示実行回数情報などの情報である。ホールコンピュータとは、パチンコホールの遊技機を統括的に管理する管理コンピュータであり、遊技機外部に設置されている。
【００４０】
また主制御部５０には、払出制御基板５３が接続されている。払出制御基板５３には、発射装置５６を制御する発射制御基板５４と、遊技球の払い出しを行う遊技球払出装置５５が接続されている。
主制御部５０は、払出制御基板５３に対し、払い出しに関する制御コマンド（賞球数を指定する払出制御コマンド）を送信する。払出制御基板５３は当該制御コマンドに応じて遊技球払出装置５５を制御し、遊技球の払い出しを実行させる。
また払出制御基板５３は、主制御部５０に対して、払い出し動作状態に関する情報（払出状態信号）を送信可能となっている。主制御部５０側では、この払出状態信号によって、遊技球払出装置５５が正常に機能しているか否かを監視する。具体的には、賞球の払い出し動作の際に、玉詰まりや賞球の払い出し不足といった不具合が発生したか否かを監視している。
【００４１】
また主制御部５０は、特別図柄変動表示に関する情報を含む演出制御コマンドを、演出制御部５１に送信する。なお、主制御部５０から演出制御部２４への演出制御コマンドの送信は一方向通信により実行されるようにしている。これは、外部からの不正行為による不正な信号が演出制御部５１を介して主制御部５０に入力されることを防止するためである。
【００４２】
続いて演出制御部５１及びその周辺回路について説明する。
演出制御部２４は、ＣＰＵ２００（以下「演出制御ＣＰＵ２００」と表記）を内蔵したマイクロプロセッサ、ＲＯＭ２０１（以下「演出制御ＲＯＭ２０１」と表記）、ＲＡＭ２０２（以下「演出制御ＲＡＭ２０２」と表記）を搭載し、マイクロコンピュータを構成している。
演出制御ＣＰＵ２００は演出制御プログラム及び主制御部５０から受信した演出制御コマンドに基づいて、各種演出動作のための演算処理や各演出手段の制御を行う。演出手段とは、本実施の形態のパチンコ遊技機１の場合、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓ、装飾ランプ２０ｗ、２０ｂ、及び図示を省略した可動体役物となる。
演出制御ＲＯＭ２０１は、演出制御ＣＰＵ２００による演出動作の制御プログラムや、演出動作制御に必要な種々のデータを記憶する。
演出制御ＲＡＭ２０２は、演出制御ＣＰＵ２００が各種演算処理に使用するワークエリアや、テーブルデータ領域、各種入出力データや処理データのバッファ領域などとして用いられる。
なお図示は省略したが、演出制御部５１は、各部とのインターフェース回路、演出のための抽選用乱数を生成する乱数生成回路、各種の時間計数のためのＣＴＣ、演出制御ＣＰＵ２００に割込み信号を与える割込コントローラ回路、音響演出のための音源ＩＣなども備えている。
この演出制御部５１の主な役割は、主制御部５０からの演出制御コマンドの受信、演出制御コマンドに基づく演出の選択決定、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓ側への演出制御コマンドの送信、スピーカ４５の出力音制御、装飾ランプ２０ｗ，２０ｂ（ＬＥＤ）の発光制御、可動体役物の動作制御などとなる。
【００４３】
演出制御部５１は、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓ側への演出制御コマンドの送信を行うが、その演出制御コマンドは、液晶インターフェース基板６６を介して液晶制御基板５２に送られる。
【００４４】
液晶制御基板５２は、主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓの表示制御を行う。図示していないが、液晶制御基板５２には、ＶＤＰ（Video Display Processor）、画像ＲＯＭ、ＶＲＡＭ（Video RAM）、液晶制御ＣＰＵ、液晶制御ＲＯＭ、液晶制御ＲＡＭを備えている。
ＶＤＰは、画像展開処理や画像の描画などの映像出力処理全般の制御を行う。
画像ＲＯＭには、ＶＤＰが画像展開処理を行う画像データ（演出画像データ）が格納されている。
ＶＲＡＭは、ＶＤＰが展開した画像データを一時的に記憶する画像メモリ領域とされる。
液晶制御ＣＰＵは、ＶＤＰが表示制御を行うために必要な制御データを出力する。
液晶制御ＲＯＭには、液晶制御ＣＰＵの表示制御動作手順を記述したプログラムやその表示制御に必要な種々のデータが格納される。
液晶制御ＲＡＭは、ワークエリアやバッファメモリとして機能する。
【００４５】
液晶制御基板５２は、これらの構成により、演出制御基板５１からの演出制御コマンドに基づいて各種の画像データを生成し、主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓに出力する。これによって主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓにおいて各種の演出画像が表示される。
【００４６】
また演出制御部５１は、光演出や音演出の制御を行う。このため演出制御部５１には枠ドライバ部６１、盤ドライバ部６２が接続されている。
枠ドライバ部６１は、枠側の装飾ランプ部６３のＬＥＤについて発光駆動を行う。なお、装飾ランプ部６３とは、図１に示したように枠側に設けられている装飾ランプ２０ｗを総括的に示したものである。
盤ドライバ部６２は、盤側の装飾ランプ部６４のＬＥＤについて発光駆動を行う。なお、装飾ランプ部６４とは、図２に示したように盤側に設けられている装飾ランプ２０ｂを総括的に示したものである。また本実施の形態の場合、盤ドライバ部６２は、盤側に形成されている可動体役物を駆動する可動体役物モータ６５の駆動も行う。可動体役物モータ６５は例えばステッピングモータが用いられる。
【００４７】
本実施の形態の場合、枠ドライバ部６１は第１系統の駆動信号出力手段であり、盤ドライバ部６２は第２系統の駆動信号出力手段である。詳しくは図４を用いて後述するが、演出制御部５１（演出制御ＣＰＵ２００）は、シリアルデータ送信チャネルｃｈ１，ｃｈ２を用いて、演出駆動データをシリアルデータとして第１系統及び第２系統の駆動信号出力手段（枠ドライバ部６１及び盤ドライバ部６２）に供給する。
なおこの例では盤ドライバ部６２は、盤側に形成されている可動体役物を駆動する可動体役物モータ６５の駆動も行うものとしているが、装飾ランプ部６４の各ＬＥＤを発光駆動するドライバ部と、可動体役物モータ６５を駆動するドライバ部が別体として設けられても良い。
【００４８】
また演出制御部５１は、音源ＩＣで発生させた音声信号をスピーカ部５９に出力する。スピーカ部５９とは、図１で説明したスピーカ２５及びそのスピーカの駆動回路（パワーアンプ等）を含んだ部位として示している。演出制御部５１は遊技進行状況や主・副液晶表示装置３２Ｍ、３２Ｓの表示に対応させて、音楽やキャラクタ音声、効果音、メッセージ音等の音声信号をスピーカ部５９に出力し、スピーカ２５から音響出力させる。
【００４９】
また演出制御部５１には、遊技者が操作可能な操作部６０が接続され、操作部６０からの操作検出信号を受信可能となっている。この操作部６０とは、図１で説明したパトライトスイッチ１１、演出ボタン１２、十字キー１３と、それらの操作検出機構のことである。
演出制御部５１は、操作部６０からの操作検出信号に応じて、各種演出制御を行うことができる。
【００５０】
演出制御部５１は、主制御部５０から送られてくる演出制御コマンドに基づき、あらかじめ用意された複数種類の演出パターンの中から抽選によりあるいは一意に演出パターンを決定し、必要なタイミングで各種演出手段を制御する。これにより、演出パターンに対応する主・副液晶表示装置３２Ｍ、３２Ｓによる演出画像の表示、スピーカ部５９（スピーカ２５）からの音の再生、装飾ランプ部６３、６４（装飾ランプ２０ｗ、２０ｂ）におけるＬＥＤの点灯点滅駆動、可動体役物モータ６５による可動体役物の動作が実現され、時系列的に種々の演出パターンが展開されていく。これにより「演出シナリオ」が実現される。
【００５１】
なお演出制御コマンドは、１バイト長のモード（ＭＯＤＥ）と、同じく１バイト長のイベント（ＥＶＥＮＴ）からなる２バイト構成により機能を定義する。
ＭＯＤＥとＥＶＥＮＴの区別を行うために、ＭＯＤＥのＢｉｔ７はＯＮ、ＥＶＥＮＴのＢｉｔ７をＯＦＦとしている。
これらの情報を有効なものとして送信する場合、モード（ＭＯＤＥ）およびイベント（ＥＶＥＮＴ）各々に対応してストローブ信号が出力される。すなわち、主制御ＣＰＵ１００は、送信すべきコマンドがある場合、演出制御部５１にコマンドを送信するためのモード（ＭＯＤＥ）情報の設定および出力を行い、この設定から所定時間経過後に１回目のストローブ信号の送信を行う。さらに、このストローブ信号の送信から所定時間経過後にイベント（ＥＶＥＮＴ）情報の設定および出力を行い、この設定から所定時間経過後に２回目のストローブ信号の送信を行う。
ストローブ信号は主制御ＣＰＵ１００により、演出制御ＣＰＵ２００が確実にコマンドを受信することが可能な所定期間アクティブ状態に制御される。
また演出制御部５１（演出制御ＣＰＵ２００）は、ストローブ信号の入力に基づいて割込を発生させてコマンド受信割込処理用の制御プログラムを実行し、この割込処理において演出制御コマンドが取得される。
【００５２】
続いて、第１の実施の形態としてのドライバ構成を説明する。上述した第１系統及び第２系統の駆動信号出力手段（枠ドライバ部６１及び盤ドライバ部６２）の構成である。
図４に演出制御部５１に接続される枠ドライバ部６１、盤ドライバ部６２を示した。
【００５３】
第１系統の駆動信号出力手段である枠ドライバ部６１は、ｎ個のＬＥＤドライバ９０が、演出制御ＣＰＵ２００のシリアルデータ出力チャネルｃｈ１に対して並列に接続されている。
シリアルデータ出力チャネルｃｈ１の信号線としては、リセット信号RESETを供給するリセット信号線、クロック信号CLKを供給するクロック線、演出駆動データとしてのシリアルデータDATAを供給するデータ線、イネーブル信号ENABLEを供給するイネーブル信号線が設けられている。これら各信号線は、それぞれ、枠ドライバ部６１を構成するｎ個のＬＥＤドライバ９０に対して各信号を並列に供給するように接続されている。
枠ドライバ部６１の各ＬＥＤドライバ９０には、演出制御ＣＰＵ２００がスレーブアドレスとして用いるデバイスＩＤが設定されている。即ち個々のＬＥＤドライバ９０の識別子である。説明上、仮に、図示のように各ＬＥＤドライバ９０のデバイスＩＤ（スレーブアドレス）をｗ１〜ｗ（ｎ）と表記する。
【００５４】
また第２系統の駆動信号出力手段である盤ドライバ部６２は、ｍ個のＬＥＤドライバ９０が、演出制御ＣＰＵ２００のシリアルデータ出力チャネルｃｈ２に対して並列に接続されている。
シリアルデータ出力チャネルｃｈ２の信号線もチャネルｃｈ１と同様、リセット信号RESETを供給するリセット信号線、クロック信号CLKを供給するクロック線、演出駆動データとしてのシリアルデータDATAを供給するデータ線、イネーブル信号ENABLEを供給するイネーブル信号線が設けられている。これら各信号線は、それぞれ、盤ドライバ部６２を構成するｍ個のＬＥＤドライバ９０に対して各信号を並列に供給するように接続されている。
盤ドライバ部６２の各ＬＥＤドライバ９０には、演出制御ＣＰＵ２００がスレーブアドレスとして用いるデバイスＩＤ（個々のＬＥＤドライバ９０の識別子）が設定されている。説明上、仮に、図示のように各ＬＥＤドライバ９０のデバイスＩＤ（スレーブアドレス）をｂ１〜ｂ（ｍ）と表記する。
【００５５】
枠ドライバ部６１及び盤ドライバ部６２における各ＬＥＤドライバ９０としては、例えば２４チャネルＬＥＤドライバである「ＬＶ５２３６Ｖ（三洋半導体株式会社製）」を用いることができ、２４個の電流出力端子を備える。従って１つのＬＥＤドライバ９０によっては、最大２４個の系列のＬＥＤ駆動電流を出力することができる。具体的には例えば８系列のＲ（赤）ＬＥＤ駆動電流出力、８系列のＧ（緑）ＬＥＤ駆動電流出力、８系列のＢ（青）ＬＥＤ駆動電流出力を行い、８個のフルカラーＬＥＤの発光駆動が可能である。なお、ここでは１つの「系列」とは、１つの電流出力端子に対して接続される１つのＬＥＤ、又は１つの電流出力端子に対して直列又は並列で接続される複数個のＬＥＤの群を指している。
枠ドライバ部６１におけるＬＥＤドライバ９０の数ｎは、枠側に配置されるＬＥＤ系列数（装飾ランプ２０ｗの系列数）によって決められる。従ってｎは１の場合もあるし、２以上の場合もある。枠ドライバ部６１は１又は複数のＬＥＤドライバ９０を有する。
また盤ドライバ部６２におけるＬＥＤドライバ９０の数ｍは、盤側に配置されるＬＥＤ系列数（装飾ランプ２０ｂの系列数）によって決められる。従ってｍは１の場合もあるし、２以上の場合もある。盤ドライバ部６２は１又は複数のＬＥＤドライバ９０を有する。
【００５６】
図５ＡにＬＥＤドライバ９０の要部の概略構成例を示す。
ＬＥＤドライバ９０は、シリアルバスインターフェース９１、アドレス設定部９２、データバッファ／ＰＷＭコントローラ９３、Ｄ／Ａ変換器９４、駆動電流源回路９５−１〜９５−２４を備える。
駆動電流源回路９５−１〜９５−２４は、上記の２４系列の駆動電流出力を、それぞれ出力端子９６−１〜９６−２４から行う電流源である
【００５７】
このＬＥＤドライバ９０には、シリアルバスインターフェース９１に対し、演出制御ＣＰＵ２００からのイネーブル信号ENABLE、クロック信号CLK、シリアルデータDATAが入力される。シリアルバスインターフェース９１は、イネーブル信号ENABLEで規定される期間に、クロック信号CLKのタイミングでシリアルデータDATAを取り込む。シリアルバスインターフェース９１は、取り込んだシリアルデータをパラレルデータに変換してデータバッファ／ＰＷＭコントローラ９３に転送する。
なおシリアルデータの形式については図２６で後述するが、演出制御ＣＰＵ２００はスレーブアドレスを指定してＬＥＤ駆動データを送信してくる。
データバッファ／ＰＷＭコントローラ９３は、シリアルバスインターフェース９１から転送されたパラレルデータについて、スレーブアドレス確認を行う。パラレルデータに含まれるスレーブアドレスが、アドレス設定部９２に設定された自己のスレーブアドレス（ｗ１〜ｗ（ｎ）、ｂ１〜ｂ（ｍ）のいずれか）と一致していることを確認した場合に、該パラレルデータに含まれるＬＥＤ駆動データを有効なデータとして、指定されたレジスタに格納する。
【００５８】
データバッファ／ＰＷＭコントローラ９３は、各系列のＬＥＤ駆動データを取り込んだら、そのＬＥＤ駆動データで示された輝度情報（階調値）に応じた値を、２４系列の各駆動制御値としてＤ／Ａ変換器９４に出力する。
Ｄ／Ａ変換器９４は、輝度情報に応じた値をアナログ信号に変換し、各電流源回路９５−１〜９５−２４への制御信号とする。
【００５９】
出力端子９６−１〜９６−２４の全部（又は一部）には２４系列のＬＥＤ１２０が接続される。なお、図は簡略化して１系列の出力端子９６に１つのＬＥＤ１２０が接続された状態を示しているが、１系列の出力端子９６に、複数のＬＥＤが接続される構成（例えば直列接続）も当然あり得る。
各系列（出力端子９６−１〜９６−２４）では、ＬＥＤ１２０及び抵抗Ｒの直列接続に対して電源電圧Ｖｃｃが印加される。電流源回路９５−１〜９５−２４によって各系列のＬＥＤ１２０に電流が流され、発光が行われる。
即ち各電流源回路９５−１〜９５−２４は、Ｄ／Ａ変換器９４から供給された信号に応じた電流量の駆動電流を、対応する系列のＬＥＤ１２０に流すように動作する。
【００６０】
このようなＬＥＤ駆動制御を、１つの系列について具体的にいうと、データバッファ／ＰＷＭコントローラ９３は、当該系列の階調値に応じたパルスデューティに相当するデジタルデータ列をＤ／Ａ変換器９４に出力し、Ｄ／Ａ変換器９４は、デジタルデータ列をアナログ信号としてのパルス信号に変換して当該系列の電流源回路９５に供給する。電流源回路９５はパルス信号のＨ／Ｌにより出力制御され、例えば０ｍＡと５ｍＡの電流出力を行う。例えばこのような動作で、結果的に階調値に応じた平均電流値となる駆動電流がＬＥＤ１２０に流れることとなる。
なお、本実施の形態では、ＰＷＭ駆動方式により、電流値が例えば０ｍＡと５ｍＡとされ、時間軸方向で（積分的に）階調制御がされるものとしているが、もちろん階調制御はこれに限らず、実際に電流値を階調に応じて変化させても良いことはいうまでもいない。デューティ制御であろうと、レベル制御であろうと、あくまでも単位時間あたりの平均電流値が階調に応じたレベルとされることで適切な階調表現が可能となる。
【００６１】
なお、本実施の形態の場合、盤ドライバ部６２における一部のＬＥＤドライバ９０には、可動体役物を駆動する可動体役物モータ６５が接続される。図５Ｂに、或るＬＥＤドライバ９０の出力端子９６−１〜９６−２４の全部（又は一部）に例えばステッピングモータ１２１が接続された例を示している。図５Ｂは出力端子９６−１〜９６−２４の部分のみを示しているが、ＬＥＤドライバ９０の内部構成は図５Ａと同様である。
ＬＥＤドライバ９０は与えられたコマンド（シリアルデータ）によって指示される電流を出力端子９６−１〜９６−２４から出力する回路であることから、ステッピングモータやソレノイド等の物理的可動体駆動デバイスのドライバとしても使用することができる。そこで、一部のＬＥＤドライバ９０を図５Ｂのようにステッピングモータ１２１のドライバとして用いる。可動体役物の動作は演出シナリオによって細かく設定され、それに応じて演出制御部５１は駆動方向や駆動量などを制御するわけであるが、盤ドライバ部６２におけるＬＥＤドライバ９０を利用して可動体役物を駆動することで、装飾ランプ部６４の各装飾ランプ（ＬＥＤ２０ｂ）とともにシリアルデータによる可動体役物制御が可能となり、制御処理及び構成が効率化できる。
なお、１つのＬＥＤドライバ９０において、一部の出力端子がＬＥＤ駆動に用いられ、他の一部の出力端子がステッピングモータやソレノイド等の駆動に用いられるという手法を採っても良い。
【００６２】
以上のように、各ＬＥＤドライバ９０は、演出制御ＣＰＵ２００から受信したシリアルデータDATAに応じて、指定された輝度で各ＬＥＤ１２０が発光されるように駆動することとなる。或いはＬＥＤドライバ９０の一部は、シリアルデータDATAに応じて、ステッピングモータ１２１を駆動する。
そして第１系統、第２系統の駆動信号出力手段（枠ドライバ部６１、盤ドライバ部６２）には、それぞれが１又は複数の演出手段に駆動信号を出力する複数のＬＥＤドライバ９０が含まれ、１つの系統内の各ＬＥＤドライバ９０には、演出制御部５１からのシリアルデータが、並列に送信される構成とされている。そして各ＬＥＤドライバ９０は、自己のＩＤ（スレーブアドレス）が含まれる演出駆動データ（シリアルデータ）を取得する。
このようなドライバ構成において、後述するが本実施の形態では、演出制御部５１（演出制御ＣＰＵ２００）は、一送信単位のシリアルデータを、第１系統、第２系統の駆動信号出力手段（枠ドライバ部６１と盤ドライバ部６２）に対して略同時的に出力し、該送信単位のシリアルデータについての、枠ドライバ部６１、盤ドライバ部６２に対する送信完了後に、次の一送信単位のシリアルデータを、枠ドライバ部６１、盤ドライバ部６２に対して略同時的に出力する送信処理を行うものである。
【００６３】
＜３．主制御部の処理＞
以下、本実施の形態の制御処理につき説明する。まずここでは主制御部（主制御基板）５０によるメイン処理について述べる。
図６は、主制御部５０のメイン処理を示すフローチャートである。メイン処理が開始されるのは、停電状態からの復旧時のように初期化スイッチ（図示せず）が操作されることなく電源がＯＮ状態になる場合と、初期化スイッチがＯＮ操作されて電源がＯＮ状態になる場合とがある。いずれの場合でも、パチンコ遊技機１に電源が投入されると、電源基板５８によって各制御基板に電圧が供給される。この場合に主制御部５０（主制御ＣＰＵ１００）は図６に示すメイン処理を開始する。
【００６４】
この主制御側メイン処理において、主制御ＣＰＵ１００はステップＳ１１で、まず遊技動作開始前における必要な初期設定処理を実行する。たとえば、最初に自らを割込み禁止状態に設定すると共に、所定の割込みモード（割込みモード２）に設定し、またマイクロコンピュータの各部を含めてＣＰＵ内部のレジスタ値を初期設定する。
次に主制御ＣＰＵ１００はステップＳ１２で、図示してない入力ポートを介して入力されるＲＡＭクリアスイッチの出力信号であるＲＡＭクリア信号の状態（ＯＮ、ＯＦＦ）を判定する。ＲＡＭクリア信号とは、ＲＡＭの全領域を初期設定するか否かを決定する信号である。ＲＡＭクリア信号としては通常、パチンコ店の店員が操作する初期化スイッチのＯＮ／ＯＦＦ状態に対応した値を有している。
【００６５】
ＲＡＭクリア信号がＯＮ状態であった場合、主制御ＣＰＵ１００は処理をステップＳ１２からＳ１６に進め、ＲＡＭの全領域のゼロクリアを行う。したがって、電源遮断時にセットされたバックアップフラグの値は、他のチェックサム値などと共にゼロとなる。
続いてステップＳ１７で主制御ＣＰＵ１００は、ＲＡＭ領域がゼロクリアされたことを報知するための「ＲＡＭクリア表示コマンド」を初期化コマンドとして各制御基板に送信する。そしてステップＳ１８で、ＲＡＭクリア報知タイマに、ＲＡＭクリアされた旨を報知するための時間として、たとえば、３０秒を格納する。
【００６６】
次に主制御ＣＰＵ１００はステップＳ１９で、タイマ割込み動作を起動する割込み信号を出力するＣＴＣを初期設定して、ＣＰＵを割込み許可状態に設定する。
その後はステップＳ２０、Ｓ２１、Ｓ２２の処理として、割込みが発生するまで割込禁止状態と割込許可状態とを繰り返すとともに、その間に、各種乱数更新処理を実行する。このステップＳ２１の各種乱数更新処理では、特別図柄変動表示や普通図柄変動表示に使用される各種乱数の初期値（スタート値）変更のために使用する乱数や、変動パターンの選択に利用される変動パターン用乱数を更新する。
なお、特別図柄変動表示や普通図柄変動表示に使用される各種乱数とは、例えばインクリメント処理によって所定数値範囲を循環している大当り抽選に係る乱数（図柄抽選に利用される特別図柄判定用乱数）や、補助当り抽選に係る乱数（補助当りの当落抽選に利用される補助当り判定用乱数）などである。また初期値変更のために使用する乱数とは、特別図柄判定用初期値乱数、補助当り判定用初期値乱数などである。
【００６７】
主制御ＲＡＭ１０２には大当り抽選に係る図柄抽選、補助当り抽選、または変動パターン抽選などに利用される各種の乱数カウンタとして、特別図柄判定用乱数カウンタ初期値の生成用カウンタ、特別図柄判定用乱数カウンタ、補助当り判定用乱数カウンタ初期値の生成用カウンタ、補助当り判定用乱数カウンタ、変動パターン用乱数１カウンタ、変動パターン用乱数２カウンタなどが設けられている。これらのカウンタは、ソフトウェア的に乱数を生成する乱数生成手段としての役割を果たす。
ステップＳ２１の各種乱数更新処理では、上述の特別図柄判定用乱数カウンタや補助当り判定用乱数カウンタの初期値を生成する２つの初期値生成用カウンタ、変動パターン用乱数１カウンタ、変動パターン用乱数２カウンタなどを更新して、上記各種のソフト乱数を生成する。たとえば、変動パターン用乱数１カウンタとして取り得る数値範囲が０〜２３８とすると、主制御ＲＡＭ１０２の変動パターン用乱数１の値を生成するためのカウント値記憶領域から値を取得し、取得した値に１を加算してから元のカウント値記憶領域に格納する。このとき、取得した値に１を加算した結果が２３９であれば０を元の乱数カウンタ記憶領域に格納する。他の初期値生成用乱数カウンタも同様に更新する。ＣＰＵ２０１は、間欠的に実行されるタイマ割込処理を行っている間を除いて、各種乱数更新処理を繰り返し実行するようになっている。
【００６８】
以上はステップＳ１２でＲＡＭクリアスイッチＯＮと判定された場合について述べた。ＲＡＭクリアスイッチＯＦＦの場合を続いて説明する。例えば停電状態からの復旧時には、初期化スイッチ（ＲＡＭクリア信号）はＯＦＦ状態である。このような場合、主制御ＣＰＵ１００はステップＳ１２からＳ１３に処理を進め、バックアップフラグ値を判定する。なお、バックアップフラグは、電源遮断時にＯＮ状態に設定され、電源復帰後の最初のタイマ割込み処理の処理でＯＦＦ状態にリセットされるよう構成されている。
したがって、電源投入時や停電状態からの復旧時である場合には、通常では、バックアップフラグがＯＮ状態のはずである。ただし、何らかの理由で電源遮断までに所定の処理が完了しなかったような場合には、バックアップフラグはリセット（ＯＦＦ）状態になる。そこで、バックアップフラグがＯＦＦ状態である場合には、主制御ＣＰＵ１００は処理をステップＳ１３からＳ１６に進め、遊技機の動作を初期状態に戻す。
【００６９】
一方、バックアップフラグがＯＮ状態であれば、主制御ＣＰＵ１００は処理をステップＳ１３からＳ１４に進め、チェックサム値を算出するためのチェックサム演算を実行する。ここで、チェックサム演算とは、主制御ＲＡＭ１０２のワーク領域を対象とする８ビット加算演算である。
そして、チェックサム値が算出されたら、この演算結果を、主制御ＲＡＭ１０２のＳＵＭ番地の記憶値と比較をする。このＳＵＭ番地には、電源遮断時に、同じチェックサム演算によるチェックサム値が記憶されている。そして、記憶された演算結果は、主制御ＲＡＭ１０２の他のデータと共に、バックアップ電源によって維持されている。したがって、本来は、ステップＳ１４の判定によって両者が一致するはずである。
しかし、電源遮断時にチェックサム演算が実行できなかった場合や、実行できても、その後、メイン処理のチェックサム演算の実行時までの間に、ワーク領域のデータが破損している場合もある。このような場合にはステップＳ１４の判定結果は不一致となる。
判定結果の不一致によりデータ破損が検出された場合には、主制御ＣＰＵ１００はステップＳ１４からＳ１６の処理に進んでＲＡＭクリア処理を実行し、遊技機の動作状態を初期状態に戻す。
【００７０】
ステップＳ１４でのチェックサム演算によるチェックサム値と、ＳＵＭ番地の記憶値とが一致する場合には、主制御ＣＰＵ１００はステップＳ１５に進み、バックアップデータに基づき、電源遮断前におけるスタックポインタを復帰し、電源遮断時の処理状態から遊技を開始するために必要な遊技復旧処理を実行する。
そしてステップＳ１５の遊技復旧処理を終えると、ステップＳ１９の処理に進み、ＣＴＣを初期設定してＣＰＵを割込み許可状態に設定し、その後は、割込みが発生するまで割込禁止状態と割込許可状態とを繰り返すとともに、その間に、上述した各種乱数更新処理を実行する（ステップＳ２０〜Ｓ２２）。
【００７１】
次に主制御ＣＰＵ１００のタイマ割込処理について説明する。図７に主制御ＣＰＵ１００のタイマ割込処理を示している。この主制御タイマ割込処理は、ＣＴＣからの一定時間（４ｍｓ程度）ごとの割込みで起動され、上述したメイン処理実行中に割り込んで実行される。
【００７２】
タイマ割込みが生じると、主制御ＣＰＵ１００はレジスタの内容をスタック領域に退避させた後、まず図７のステップＳ５１として電源基板５８からの電源の供給状態を監視する電源異常チェック処理を行う。この電源異常チェック処理では、主に、電源が正常に供給されているかを監視する。ここでは、たとえば、電断が生じるなどの異常が発生した場合、電源復帰時に支障なく遊技を復帰できるように、電断時における所定の遊技情報をＲＡＭに格納するバックアップ処理などが行われる。
【００７３】
次にステップＳ５２で、主制御ＣＰＵ１００は遊技動作制御に用いられるタイマを管理するタイマ管理処理を行う。パチンコ遊技機１の遊技動作制御に用いる各種タイマ（たとえば特別図柄役物動作タイマなど）のタイマ値は、この処理で管理（更新）される。
【００７４】
ステップＳ５３では、主制御ＣＰＵ１００は入力管理処理を行う。この入力管理処理では、パチンコ遊技機１に設けられた各種センサによる検出情報を入賞カウンタに格納する。ここでの各種センサによる検出情報とは、たとえば、上始動口センサ７１、下始動口センサ７２、ゲートセンサ（普通図柄始動口センサ）７３、第１大入賞口センサ７５、第２第入賞口センサ７６、一般入賞口センサ７４などの入賞検出スイッチから出力されるスイッチ信号のＯＮ／ＯＦＦ情報（入賞検出情報）である。
このステップＳ５３の処理により、各入賞口において入賞を検出（入賞が発生）したか否かが割込みごとに監視される。また上記「入賞カウンタ」とは、各々の入賞口ごとに対応して設けられ、入賞した遊技球数（入賞球数）を計数するカウンタである。本実施の形態では、主制御ＲＡＭ１０２の所定領域に、上始動口４１用の上始動口入賞カウンタ、下始動口４２ａ用の下始動口入賞カウンタ、ゲート４４用の普通図柄始動口入賞カウンタ、第１大入賞口４５ａ用の第１大入賞口入賞カウンタ、第２大入賞口４６ａ用の第２大入賞口入賞カウンタ、一般入賞口４３用の一般入賞口用の入賞カウンタなどが設けられている。  またこの入力管理処理では、入賞検出スイッチからの検出情報が入賞を許容すべき期間中に入賞したか否かに基づいて、不正入賞があったか否かも監視される。たとえば大当り遊技中でないにもかかわらず第１、第２大入賞口センサ７５，７６が遊技球を検出したような場合は、これを不正入賞とみなして入賞検出情報を無効化し、その無効化した旨を外部に報知するべく後述のステップＳ５５のエラー管理処理において所定のエラー処理が行われるようになっている。
【００７５】
ステップＳ５４では、主制御ＣＰＵ１００は各変動表示に係る乱数を定期的に更新するタイマ割込内乱数管理処理を行う。この定期乱数更新処理では、特別図柄判定用乱数や補助当り判定用乱数の更新（割込み毎に＋１加算）と、乱数カウンタが一周するごとに、乱数カウンタのスタート値を変更する処理を行う。たとえば、特別図柄判定用乱数カウンタの値を所定範囲で更新（＋１加算）し、特別図柄判定用乱数カウンタが１周するごとに、特別図柄判定用乱数カウンタ初期値の生成用カウンタの値を読み出し、その生成用カウンタの値を特別図柄判定用乱数カウンタに格納する。これにより、特別図柄判定用乱数カウンタのスタート値が上記の生成用カウンタの値に応じて変更されるので、更新周期は一定でありながらも特別図柄判定用乱数カウンタのカウント値はランダムになる。
【００７６】
ステップＳ５５では、主制御ＣＰＵ１００は、遊技動作状態の異常の有無を監視するエラー管理処理を行う。このエラー管理処理では、遊技動作状態の異常として、たとえば、基板間に断線が生じたか否かの監視や、不正入賞があったか否かの監視などをして、これらの動作異常（エラー）が発生した場合には、そのエラーに対応した所定のエラー処理を行う。
エラー処理としては、たとえば、所定の遊技動作（たとえば、遊技球の払い出し動作や遊技球の発射動作など）の進行を停止させたり、エラー報知用コマンドを演出制御部５１に送信して、演出手段によりエラーが発生した旨を報知させたりする。
【００７７】
ステップＳ５６では、主制御ＣＰＵ１００は賞球管理処理を行う。この賞球管理処理では、ステップＳ５３の入力管理処理で格納したデータを把握して、上述の入賞カウンタの確認を行い、入賞があった場合は、賞球数を指定する払出制御コマンドを払出制御基板５３に送信する。
この払出制御コマンドを受信した払出制御基板５３は、遊技球払出装置５５を制御し、指定された賞球数の払い出し動作を行わせる。これにより、それぞれの入賞口に対応した賞球数が払い出されるようになっている。入賞口に対応した賞球数とは、入賞口別に設定された入賞球１個当りの所定の賞球数×入賞カウンタの値分の賞球数である。
【００７８】
ステップＳ５７では主制御ＣＰＵ１００は、普通図柄管理処理を行う。この普通図柄管理処理では、普通図柄変動表示における補助当り抽選を行い、その抽選結果に基づいて、普通図柄の変動パターンや普通図柄の停止表示態様を決定したり、所定時間毎に点滅を繰り返す普通図柄のデータ（普通図柄変動中のＬＥＤ点滅表示用データ）を作成したり、普通図柄が変動中でなければ、停止表示用のデータ（普通図柄停止表示中のＬＥＤ点滅表示用データ）を作成したりする。
【００７９】
ステップＳ５８では、主制御ＣＰＵ１００は、普通電動役物管理処理を行う。この普通電動役物管理処理では、ステップＳ５７の普通図柄管理処理の補助当り抽選の抽選結果に基づき、普通電動役物ソレノイド７７に対するソレノイド制御用の励磁信号の生成およびそのデータ（ソレノイド制御データ）の設定を行う。ここで設定されたデータに基づき、後述のステップＳ６４のソレノイド管理処理にて、励磁信号が普通電動役物ソレノイド７７に対して出力され、これにより可動翼片４２ｂの動作が制御される。
ステップＳ５９では、主制御ＣＰＵ１００は、特別図柄管理処理を行う。この特別図柄管理処理では、主に、特別図柄変動表示における大当り抽選を行い、その抽選結果に基づいて、特別図柄の変動パターン（先読み変動パターン、変動開始時の変動パターン）や特別停止図柄などを決定する。
ステップＳ６０では、主制御ＣＰＵ１００は特別電動役物管理処理を行う。この特別電動役物管理処理では、主に、大当り抽選結果が「大当り」または「小当り」であった場合、その当りに対応した当り遊技を実行制御するために必要な設定処理を行う。
【００８０】
ステップＳ６１では、主制御ＣＰＵ１００は右打ち報知情報管理処理を行う。この右打ち報知情報管理処理では、例えば第１、第２第入賞口４５ａ，４６ａが開放される機会や可動翼片４２ｂが駆動される電サポ状態など、右打ちが有利な状況において右打ち指示報知を行う「発射位置誘導演出（右打ち報知演出）」を現出させるための処理を行う。右打ち指示とは、具体的には、右遊技領域３ｃを狙う旨を有技者に指示する演出動作であり、例えば主液晶表示装置３２Ｍに「右打ち」を遊技者に促す画像を表示させたり、スピーカ２５から右打ちメッセージ音声を発生させる。
右打ち報知演出が行われる場合、この右打ち報知情報管理処理において、演出制御コマンドとして、右打ち報知演出の実行指示する「右打ち指示コマンド」が演出制御部５１に送信され、このコマンドを受けて、演出制御部５１が、画像や音声による右打ち報知の実行制御を行う。
ステップＳ６２では、主制御ＣＰＵ１００は、ＬＥＤ管理処理を行う。このＬＥＤ管理処理は、図柄表示部３３に対して普通図柄表示や第１，第２特別図柄表示のための表示データを出力する処理である。この処理により、普通図柄や特別図柄の変動表示および停止表示が行われる。なお、ステップＳ５７の普通図柄管理処理で作成された普通図柄の表示データや、ステップＳ５９の特別図柄管理処理中の特別図柄表示データ更新処理で作成される特別図柄の表示データは、このＬＥＤ管理処理で出力される。
【００８１】
ステップＳ６３では、主制御ＣＰＵ１００は、外部端子管理処理を行う。この外部端子管理処理では、枠用外部端子基板５７を通して、パチンコ遊技機１の動作状態情報をホールコンピュータや島ランプなどの外部装置に対して出力する。動作状態情報としては、大当り遊技が発生した旨（条件装置が作動した旨）、小当り遊技が発生した旨、図柄変動表示が実行された旨（特別図柄変動表示ゲームの開始または終了した旨）、入賞情報（始動口や大入賞口に入賞した旨や賞球数情報）などの情報が含まれる。
ステップＳ６４では、主制御ＣＰＵ１００は、ソレノイド管理処理を行う。このソレノイド管理処理では、ステップＳ５８の普通電動役物管理処理で作成されたソレノイド制御データに基づく普通電動役物ソレノイド７７に対する励磁信号の出力処理や、ステップＳ６０の特別電動役物管理処理で作成されたソレノイド制御データに基づく第１，第２大入賞口ソレノイド７８，７９に対する励磁信号の出力処理を行う。これにより、可動翼片４２ｂや開放扉４５ｂ、４６ｂが所定のパターンで動作し、下始動口４２ａや大入賞口４５ａ、４６ｂが開閉される。
【００８２】
主制御ＣＰＵ１００は、以上のステップＳ５１〜ステップＳ６４の処理を終えた後、退避していたレジスタの内容を復帰させて、ステップＳ６５で割込み許可状態に設定する。これにより、タイマ割込処理を終了して、割込み前の図６の主制御側メイン処理に戻り、次のタイマ割込みが発生するまで主制御メイン処理を行う。
【００８３】
＜４．演出制御部の処理＞
［４−１：メイン処理］
続いて演出制御部５１の処理について説明する。演出制御部５１の処理としては、主に、メインループ上で１６ｍｓ毎に行われる処理（以下「１６ｍｓ処理」ともいう）と、１ｍｓ毎に行われる割り込み処理（以下「１ｍｓタイマ割込処理」ともいう）がある。
まずここでは１６ｍｓ処理を含むメイン処理について説明する。
図８は、演出制御部５１のメイン処理を示している。演出制御部５１（演出制御ＣＰＵ２００）は、遊技機本体に対して電源が投入されると、図８のメイン処理を開始する。
このメイン処理において、演出制御ＣＰＵ２００は、まずステップＳ１０１で、遊技動作開始前における必要な初期設定処理を行う。例えば初期設定処理として、コマンド受信割込み設定、可動体役物の起点復帰処理、ＣＴＣの初期設定、タイマ割込みの許可、マイクロコンピュータの各部を含めてＣＰＵ内部のレジスタ値の初期設定などを行う。
【００８４】
ステップＳ１０１の初期設定処理を終えると、正常動作時の処理としてステップＳ１０２〜Ｓ１１７の処理を繰り返し行う。
即ちこの例では、演出制御ＣＰＵ２００はステップＳ１０２でのＩＤチェックとステップＳ１１７での乱数更新を毎ループ行うと共に、１６ｍｓ毎に、ステップＳ１０５〜Ｓ１１６の処理（１６ｍｓ処理）を行う。
ステップＳ１０２のＩＤチェックでは、演出制御ＣＰＵ２００はシステム上で設定されている自己或いは接続各部のＩＤの確認を行う。もし何らかの原因により、ＩＤ異常が検出された場合は、ステップＳ１０３としてシステム停止処理を行う。
ＩＤに問題のない通常時は、演出制御ＣＰＵ２００はステップＳ１０４以下の処理を行うことになる。即ち演出制御ＣＰＵ２００は、１６ｍｓ処理の実行判断のための割込みカウンタの値が「１５」より大きい値となっているか否かを判断する。この割込みカウンタは、後述する１ｍｓタイマ割込処理のステップＳ２０７でインクリメントされていくカウンタである。従って割込みカウンタの値が「１５」より大きい場合とは、１６ｍｓ処理のタイミングになっていることを意味する。
【００８５】
演出制御ＣＰＵ２００は、割込みカウンタの値が「１５」以下であるときは、ステップＳ１０４からＳ１１７に進み、演出用ソフト乱数の更新処理を行って１回のメイン処理を終え、再びステップＳ１０２からの処理を行う。
一方、割込みカウンタの値が「１６」以上である場合は、演出制御ＣＰＵ２００はステップＳ１０５〜Ｓ１１６の処理を実行し、その後、ステップＳ１１７で演出用ソフト乱数の更新処理を行って１回のメイン処理を終え、再びステップＳ１０２からの処理を行うことになる。
【００８６】
このように割込みカウンタでカウントされる１６ｍｓ毎に、演出制御ＣＰＵ２００はステップＳ１０５からの１６ｍｓ処理を行う。
その場合、まずステップＳ１０５では、割込みカウンタをゼロリセットする。以後、再び次の１６ｍｓ処理までのカウントを行うためである。
次にステップＳ１０６で演出制御ＣＰＵ２００は、エラー処理を行う。このエラー処理としては、ＲＡＭクリアエラー中、役物エラー中、右打ちエラー中などにおけるエラー処理タイマの処理、各種エラーが発生した際のエラー報知のためのシナリオ登録処理、エラー報知後のエラーシナリオのクリア処理などを行うこととなる。
次にステップＳ１０７では、演出制御ＣＰＵ２００はデモ処理を行う。このデモ処理では、再生音の制御、デモムービー実行や役物原点補正のシナリオ登録や、そのコマンドセットなどの処理を行う。客待ち状態などでは、このデモ処理で設定されたシナリオが実行されることでデモムービー表示が実行される。
【００８７】
ステップＳ１０８では、演出制御ＣＰＵ２００はコマンド解析処理を行う。このコマンド解析処理では、演出制御ＣＰＵ２００が、主制御部５０から供給される演出制御コマンドがコマンド受信バッファに格納されているか否かを監視し、演出制御コマンドが格納されていればこのコマンドを読み出す。そして読み出した演出制御コマンドに対応した演出制御処理を行う。詳しくは図１０，図１１で後述する。
ステップＳ１０９では、演出制御ＣＰＵ２００は入力検知処理を行う。この入力検知処理では、操作部６０の操作子（パトライトスイッチ１１、演出ボタン１２、十字キー１３）の操作による入力の検知を行い、入力を検知した場合、その操作に応じた処理を行う。
ステップＳ１１０では、演出制御ＣＰＵ２００はシナリオ更新処理を行う。この処理ではメインシナリオの更新、サブシナリオの更新が行われる。その際には装飾ランプ部６４，６５の点灯パターン登録、再生する音の登録、可動体役物の駆動のためのモータ動作の登録なども行われる。詳しくは図１４，図１５を用いて後述する。
ステップＳ１１１では、演出制御ＣＰＵ２００は音再生処理を行う。演出制御ＣＰＵ２００は、シナリオデータに基づいてワークに音チャネルとして登録されている音データに基づいて、フレーズ番号やボリューム等のデータを音源ＩＣに出力する。これによってスピーカ部５９からの効果音、音楽・音声等の再生出力が行われる。
ステップＳ１１２では、演出制御ＣＰＵ２００は役物エラー処理を行う。ここでは可動体役物の原点復帰がなされていないなどの位置エラー判定などを行う。
【００８８】
ステップＳ１１３では演出制御ＣＰＵ２００は、ＬＥＤ駆動データ更新を行う。ここでは、シナリオデータに基づいてワークにランプチャネルとして登録されているランプデータに基づいて、ＬＥＤ出力データ（駆動データ）を作成する処理が行われる。詳しくは図２０を用いて後述する。ＬＥＤ出力データは、１ｍｓタイマ割込処理において所定のタイミングで各ＬＥＤドライバ９０に対して出力される。
ステップＳ１１４では、演出制御ＣＰＵ２００は、演出制御ＲＡＭ２０２のワーク領域を対象としてチェックサム算出及びその保存を行い、またステップＳ１１５では、バックアップデータの保存を行う。
さらにステップＳ１１６ではシナリオ更新カウンタをゼロリセットする。シナリオ更新カウンタは後述の１ｍｓタイマ割込処理でインクリメントされるカウンタである。
以上のような１６ｍｓ処理が、図８のメインループ処理において１６ｍｓ経過毎に行われる。
【００８９】
［４−２：１ｍｓタイマ割込処理］
次に図９により１ｍｓタイマ割込処理を説明する。演出制御ＣＰＵ２００は、タイムカウントにより１ｍｓ毎に発生する割込要求に応じて、図９の１ｍｓタイマ割込処理を実行する。
この１ｍｓタイマ割込処理においては、まずステップＳ２０１では主制御ＣＰＵ１００からのテストコマンドに応じたチェックサム算出中であるか否かを判断する。チェックサム算出中でなければ、演出制御ＣＰＵ２００はステップＳ２０２の入力処理に進む。
【００９０】
ステップＳ２０２の入力処理とは、上述の図８のステップＳ１０９の入力検知処理とともに操作子の操作による入力検知を行うための１ｍｓ毎の処理である。例えばこの入力処理では、操作子の操作検出信号について、信号波形にエッジが検出されたら入力カウンタをリセットし、その後、エッジが発生しない期間、入力カウンタをカウントアップしていく処理を行う。１ｍｓタイマ割込処理において、入力情報（入力信号波形のＨまたはＬ）が検知され、またエッジ有無により、入力カウンタのリセット又はインクリメントが行われる。そしてメインループ処理（１６ｍｓ処理）におけるステップＳ１０９で、入力カウンタの値が１６以上となっており、前回とは入力情報が変化している場合に、入力変化を認識するようにしている。
このような入力処理（Ｓ２０２）及び入力検知処理（Ｓ１０９）により、ノイズ・チャタリングによる入力誤認識の防止がはかられる。また、入力カウンタを用いており、本実施の形態では例えば１６ビットカウンタを用いて６５５３５ｍｓ（約６５秒）までなどをカウントできるようにしているため、いわゆる長押しの検出も可能となる。
【００９１】
ステップＳ２０３では、演出制御ＣＰＵ２００はモータ動作更新処理を行う。この場合、演出制御ＣＰＵ２００は、シナリオデータに基づいてワーク（図１６Ｃで説明するモータデータ登録情報）にモータチャネルとして登録されているモータデータに基づいて、モータ駆動データを作成する処理を行う。これは可動体役物モータ６５を駆動制御するために盤ドライバ部６２のＬＥＤドライバに出力するモータ駆動データである。なお、本実施の形態では、ＬＥＤ駆動データ更新は上記ステップＳ１１３により１６ｍｓ毎に行われる一方、モータデータ更新は１ｍｓ毎に行われることになる。
ステップＳ２０４では、演出制御ＣＰＵ２００は、モータ駆動データを出力する。上述のように盤ドライバ部６２の一部のＬＥＤドライバ９０には、可動体役物モータ６５のステッピングモータ１２１等が接続されている。このステップＳ２０４では、これらステッピングモータ１２１に対する駆動データとしてのシリアルデータを、盤ドライバ部６２の所定のＬＥＤドライバ９０（ステッピングモータ１２１等の可動体役物モータ６５を駆動するＬＥＤドライバ９０）に対して出力することになる。
【００９２】
ステップＳ２０５では、演出制御ＣＰＵ２００は、割込みカウンタの値に応じて各処理を実行する。割込みカウンタは上述の１６ｍｓ処理のステップＳ１０５でゼロリセットされ、１ｍｓタイマ割込処理のステップＳ２０７でインクリメントされる。従って、１ｍｓタイマ割込処理でステップＳ２０５が実行される際には、割込みカウンタの値は０〜１５のいずれかとなっている。
この割込みカウンタの値０〜１５に応じて、ケース０〜ケース１５としてステップＳ２０５の処理が規定される。例えば本実施の形態では、ケース０ではＷＤＴ（watchdog timer）クリア信号ＯＮ、及びＬＥＤドライバ９０の初期化処理を行う。ケース１〜３ではＬＥＤドライバ９０の初期化処理を行う。ケース８ではＷＤＴクリア信号ＯＦＦを行う。ケース１２〜１５では、ＬＥＤドライバ９０に対するＬＥＤ駆動データの出力を行う。
ＬＥＤドライバ９０の初期化とは、ＬＥＤドライバ９０において使用しないレジスタにデフォルト値を出力する処理である。この初期化と、ＬＥＤ駆動データの出力は、１回の１ｍｓタイマ割込処理の際に、ＬＥＤドライバ９０の２，３個に対して行われる。
【００９３】
ステップＳ２０６では、演出制御ＣＰＵ２００は、液晶制御基板５２に対する演出制御コマンドの出力を行う。例えば１回の１ｍｓタイマ割込処理において、１コマンド（２バイト）の送信を行う。つまりモード及びイベントとしての２バイトの演出制御コマンドが送信される。
その後、演出制御ＣＰＵ２００はステップＳ２０７で割込みカウンタのインクリメントを行い、またステップＳ２０８でシナリオ更新カウンタのインクリメントを行う。そしてシナリオ更新カウンタの値が１００未満であれば、１ｍｓタイマ割込処理を終える。
なお、シナリオ更新カウンタは上述のように１６ｍｓ処理のステップＳ１１６でゼロリセットされるため、通常はシナリオ更新カウンタの値が１００以上となることはない。何らかの１００以上となるのは、演算異常、処理応答異常などにより１６ｍｓ処理が実行されない場合や、１６ｍｓ処理内の或る処理の進行が停止しているような場合である。このような場合は、無限ループに入り、ＷＤＴによってタイムアップ処理が行われるのを待つことになる。
【００９４】
１ｍｓタイマ割込処理に入った際に、ステップＳ２０１でチェックサム算出中と判断された場合は、演出制御ＣＰＵ２００は処理をステップＳ２１０に進め、ＷＤＴをクリアする。そしてステップＳ２１１で液晶制御基板５２に対する演出制御コマンドの送信出力を行う。そしてステップＳ２１２で割込みカウンタをインクリメントして１ｍｓタイマ割込処理を終える。
【００９５】
［４−３：コマンド解析処理］
続いて、１６ｍｓ処理として図８のステップＳ１０８で行われるコマンド解析処理について、図１０、図１１で説明する。演出制御ＣＰＵ２００は、ステップＳ１０８のコマンド解析処理として、主制御部５０から供給される演出制御コマンドがコマンド受信バッファに格納されているか否かを監視し、演出制御コマンドが格納されていればこのコマンドを読み出す。この具体的な処理として、図１０のステップＳ３０１〜Ｆ３０８の処理を行う。
【００９６】
演出制御部５１には、主制御部５０から送信されてきた演出制御コマンドを取り込むコマンド受信バッファが、例えば演出制御ＲＡＭ２０２に用意される。演出制御ＣＰＵ２００は、まず図１０のステップＳ３０１で、コマンド受信バッファの読み出しアドレスを示すリードポインタと、書き込みアドレスを示すライトポインタの確認を行う。
ライトポインタは、コマンド受信に応じて更新され、それに応じてライトポインタで示されるアドレスに、受信した演出制御コマンドが格納されていく。リードポインタは、コマンド受信バッファからの読み出しを行った際に更新（ステップＳ３０２）される。従って、もしリードポインタ＝ライトポインタでなければ、まだ読み出していない演出制御コマンドがコマンド受信バッファに格納されているということになる。そこでリードポインタ＝ライトポインタでなければステップＳ３０２に進み、演出制御ＣＰＵ２００はコマンド受信バッファにおいてリードポインタで示されるアドレスから１バイトのコマンドデータをロードする。この場合、次の読み出し（ロード）のためにリードポインタをインクリメントしておく。
【００９７】
上述したように１つの演出制御コマンドは、モードとしての１バイトとイベントとしての１バイトの２バイトで形成されている。演出制御ＣＰＵ２００はステップＳ３０３で、ロードした１バイトのコマンドデータが、モードであるかイベントであるかを確認する。この確認は、８ビット（Ｂｉｔ０〜Ｂｉｔ７）のうちのＢｉｔ７の値により行われる。
そしてモードであれば、コマンドの上位データ受信の処理として、ステップＳ３０４に進み、読み出したコマンドデータを、レジスタ「コマンドＨＩバイト」にセーブする。また「コマンドＬＯバイト」のレジスタをクリアする。そしてステップＳ３０１に戻る。
続いても、リードポインタ＝ライトポインタでなければ、まだ読み出していない演出制御コマンドがコマンド受信バッファに格納されていることになるため、ステップＳ３０２に進み、演出制御ＣＰＵ２００はコマンド受信バッファにおいてリードポインタで示されるアドレスから１バイトのコマンドデータをロードする。またリードポインタをインクリメントする。
そして読み出したコマンドがイベントであれば、コマンドの下位データ受信の処理として、ステップＳ３０３からＳ３０５に進み、読み出したコマンドデータを、レジスタ「コマンドＬＯバイト」にセーブする。
【００９８】
モード及びイベントのコマンドデータが、レジスタ「コマンドＨＩバイト」「コマンドＬＯバイト」にセーブされることで、演出制御ＣＰＵ２００は１つのコマンドを取り込んだことになる。
そこで演出制御ＣＰＵ２００はステップＳ３０６で、取り込んだコマンドに応じた処理を行う。具体例は図１１で後述する。
【００９９】
リードポインタ＝ライトポインタとなるのは、演出制御ＣＰＵ２００がまだ取り込んでいない演出制御コマンドがコマンド受信バッファには存在しない場合である。そこで、新たな取り込みは不要であるため、ステップＳ３０７に進む。この場合、図柄コマンド待ちの状態で１００ｍｓ経過したか否かを確認する。そのような事態となっていなければ、図１０のコマンド解析処理を終える。一方、図柄コマンド待ちの状態で１００ｍｓ経過していたのであれば、ステップＳ３０８でコマンド欠落における図柄変動の処理を行うこととなる。
【０１００】
上記のステップＳ３０６におけるコマンド対応処理の例を図１１で説明する。
図１１Ａは、コマンド対応処理としての基本処理を示している。２バイトの演出制御コマンドの受信に応じて、演出制御ＣＰＵ２００はまず図１１ＡのステップＳ３２１で、現在テストモード中であるか否かを確認する。テストモード中であれば、ステップＳ３２２ですべての演出シナリオのクリア、音出力の停止、装飾ランプ部６３，６４におけるＬＥＤの消灯を行う。そしてステップＳ３２３でテストモードを終了する。
テストモード中でなければ、これらの処理は行わない。
そして演出制御ＣＰＵ２００は、ステップＳ３３０として、取り込んだ演出制御コマンドについての処理を行うことになる。
【０１０１】
演出制御コマンドとしては、例えば特別図柄変動パターン指定コマンド、特別図柄指定コマンド、保留球減算コマンド、保留球加算コマンド、エラー表示指定コマンド、大当たり開始指定コマンド・・・など多様に設定されている。ステップＳ３３０では、演出制御ＣＰＵ２００は、受信したコマンドに対応して、プログラムで規定された処理を行う。ここでは図１１Ｂ、図１１Ｃ、図１１Ｄ、図１１Ｅで、４つの演出制御コマンドを挙げて、具体的処理を例示する。
【０１０２】
図１１Ｂは、ステップＳ３３０でのコマンド処理として、変動パターンコマンドを取り込んだ場合の処理Ｓ３３０ａを示している。
この場合、演出制御ＣＰＵ２００は、ステップＳ３３１で、図柄コマンド待ち状態をセットする処理を行う。これは変動パターンコマンドと、図柄コマンドが順次受信されることで、演出制御ＣＰＵ２００が図柄の変動表示の制御を行うためである。
図１１Ｃは、ステップＳ３３０でのコマンド処理として、図柄コマンドを取り込んだ場合の処理Ｓ３３０ｂを示している。
この場合、演出制御ＣＰＵ２００は、まずステップＳ３３２で、変動パターンコマンド受信済みであるか否かを確認する。受信していなければそのまま処理を終える。
図柄コマンドを受信した際に、既に変動パターンコマンド受信済みであれば、ステップＳ３３３に進み、まず役物原点補正の動作についてのシナリオ登録を行う。そしてステップＳ３３４で、変動開始処理を行う。その後、変動開始に応じてステップＳ３３５で変動パターンコマンドの削除を行う。
【０１０３】
図１１Ｄは、ステップＳ３３０でのコマンド処理として、電源投入コマンドを取り込んだ場合の処理Ｓ３３０ｃを示している。
この場合、演出制御ＣＰＵ２００は、ステップＳ３３７で演出制御ＲＡＭ２０２のクリア処理を行う。例えばコマンド受信／送信バッファ、操作部６０についての入力情報バッファの内容や、チェックサムの記憶領域のクリアを行う。
そしてステップＳ３３８でエラー解除コマンドの送信、ステップＳ３３９で役物エラー情報のクリア、ステップＳ３４０で役物動作の停止、ステップＳ３４１で電源投入のシナリオ登録、ステップＳ３４２で液晶制御基板５２へ送信する電源投入コマンドのセットを順次行う。
【０１０４】
図１１Ｅは、ステップＳ３３０でのコマンド処理として、ＲＡＭクリアコマンドを取り込んだ場合の処理Ｓ３３０ｄを示している。
この場合、演出制御ＣＰＵ２００は、ステップＳ３４３で演出制御ＲＡＭ２０２のクリア処理を行う。例えばコマンド受信／送信バッファ、操作部６０についての入力情報バッファの内容や、チェックサムの記憶領域のクリアを行う。
そしてステップＳ３４４でエラー解除コマンドの送信、ステップＳ３４５でＲＡＭクリアエラーセットと、エラー報知タイマのセットを行う。さらにステップＳ３４６で演出制御ＲＡＭ２０２における抽選処理に関する情報のクリア、ステップＳ３４７で、シナリオに関する情報のクリアを行う。そしてステップＳ３４８で液晶制御基板５２へ送信する電源初期投入表示（ＲＡＭクリア）コマンドのセットを行う。
【０１０５】
［４−４：シナリオ登録・削除処理］
次にシナリオ登録・削除処理について説明する。シナリオとは演出制御やエラー処理その他、各種の実行すべき動作を規定したデータである。実行すべきシナリオのデータは、シナリオ登録情報として演出制御ＲＡＭ２０２のワーク領域に登録される。図１６Ａに示すシナリオ登録情報の構造については後述するが、シナリオ登録情報としては、０〜６３までの６４個のシナリオチャネルが用意されている。この６４個のシナリオチャネルに登録されたシナリオは同時に実行可能とされる。以下、シナリオチャネルを「ｓＣＨ」で示す。
シナリオ登録処理とは、シナリオ登録情報における任意のシナリオチャネルに、登録を要求されたシナリオ番号のシナリオを登録する処理である。原則的には、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルは、どのチャネルが用いられても良い。
【０１０６】
以下説明するシナリオ登録は、例えばステップＳ１０６のエラー処理、ステップＳ１０７のデモ処理、ステップＳ１０８のコマンド解析処理などの処理過程において、必要時に呼び出され、実行される。例えば先に述べた図１１ＣのステップＳ３３３、図１１ＤのステップＳ３４１などが、シナリオ登録が実行される場合の一例となる。
【０１０７】
図１２の処理として、演出制御ＣＰＵ２００は、コマンド或いはプログラムグラム上で指定されるシナリオに対応したシナリオ番号と待機時間（delay）の値を、ワーク（シナリオ登録情報）に登録する処理を行う。
ステップＳ４０１で演出制御ＣＰＵ２００は、まず今回登録すべきシナリオ番号が正常であるか否かを確認する。シナリオ番号があり得ない番号の場合は、何もせずに処理を終える。
【０１０８】
シナリオ番号が適正であれば、演出制御ＣＰＵ２００はステップＳ４０２で変数Ｂをゼロに設定する。変数Ｂは、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルのうちで、空きチャネルを順次探索するために使用する変数である。さらに変数Ｂは、まだ探索（空きチャネルであるか否かの確認）をしていないシナリオチャネルが残っているか否かを判断するための変数を兼ねている。
【０１０９】
演出制御ＣＰＵ２００は、ステップＳ４０３で、「追加ポインタ」＋Ｂのシナリオチャネルが空きであるか否かを確認する。追加ポインタとは、シナリオ登録を行った際に、後述のステップＳ４０７で設定されるポインタである。図１２の処理を開始する時点では、追加ポインタの値は、前回登録したシナリオチャネルの次のシナリオチャネルを示す値となっている。なお、追加ポインタの初期値（初期状態から図１２の処理が初めて行われる時の値）は０である。
「追加ポインタ」＋Ｂのシナリオチャネルが空きでなければ、演出制御ＣＰＵ２００はステップＳ４０４で変数Ｂをインクリメントする。
ステップＳ４０５でＢ＜６４でなければ、この図１２の処理を終える。これは全シナリオチャネルについて探索を行ったが、空きチャネルがなくてシナリオ登録が不可能となる場合である。
まだ全シナリオチャネルの探索（空きチャネルであるか否かの確認）を行っていない時点では、ステップＳ４０５でＢ＜６４である。その場合はステップＳ４０６の確認処理を行い、「追加ポインタ」＋Ｂの値がシナリオチャネルｓＣＨの最大値を超えた値「６４」以上となっていなければステップＳ４０３に戻る。
また「追加ポインタ」＋Ｂの値が「６４」以上となっていた場合は、ステップＳ４０７で追加ポインタの値の補正処理を行う。具体的には「追加ポインタ」＋Ｂの値が「６４」となった場合、追加ポインタの値を「６４」減算する処理を行う。そしてステップＳ４０３に戻る。
【０１１０】
このステップＳ４０３〜Ｓ４０７の処理によれば、前回登録したシナリオチャネルの次のシナリオチャネルから、順次シナリオチャネルが空きか否かが確認されることになる。
つまり、ステップＳ４０４での変数Ｂのインクリメントにより、ステップＳ４０３が行われるたびに確認されるシナリオチャネルｓＣＨが、順次１つずつ進行することとなる。
また、変数ＢはステップＳ４０２でゼロリセットされてからステップＳ４０４でインクリメントされるものであるため、ステップＳ４０５でＢ＜６４とはならない場合（つまり変数Ｂが６４に達した場合）は、既にステップＳ４０３の処理が６４回行われた場合である。これは全シナリオチャネルｓＣＨ０〜ｓＣＨ６３を調べたが、空きがなかったと判断された場合である。そのため登録不可能として図１２の処理を終えることとなる。
【０１１１】
また、「追加ポインタ」の値は、前回登録したシナリオチャネルの次のシナリオチャネルを示す値であるため、まだ全シナリオチャネルの空き確認を行っていないＢ＜６４の時点でも、「追加ポインタ」＋Ｂの値（つまり次に確認しようとするシナリオチャネルｓＣＨの番号）が「６４」以上となることがある。具体的には、直前のステップＳ４０３の時点で「追加ポインタ」＋Ｂの値が６３であり、シナリオチャネルｓＣＨ６３について確認した後、ステップＳ４０４で変数Ｂがインクリメントされた場合である。このままでは、次に存在しないシナリオチャネルｓＣＨ６４を指定することとなる。
そこでステップＳ４０６でこの点を確認し、「追加ポインタ」＋Ｂの値が「６４」となっていたら、ステップＳ４０７では、次に確認するシナリオチャネルを「ｓＣＨ０」に戻すために、追加ポインタの補正を行う。つまり追加ポインタの値を−６４することで、「追加ポインタ」＋Ｂの値が「０」となるようにする。これにより次のステップＳ４０３では、シナリオチャネルｓＣＨ０が空きであるか否か確認されるようにする。
【０１１２】
ある時点のステップＳ４０３の処理で、空きのシナリオチャネルが発見されたら、演出制御ＣＰＵ２００はステップＳ４０８に進み、その空きのシナリオチャネルに、シナリオ番号、及び待機時間（delay）をセットする。またその他のシナリオ管理に必要なデータをゼロクリアする。
そしてステップＳ４０９で、追加ポインタを、登録を行ったシナリオチャネル＋１の値に更新する。つまり今回登録を行ったシナリオチャネルの次のシナリオチャネルの値を、追加ポインタとして記憶しておき、次回の登録処理に使用できるようにする。なお、本実施の形態ではシナリオチャネルはｓＣＨ０〜ｓＣＨ６３の６４チャネルのため追加ポインタの最大値は６３となる。
【０１１３】
この図１２の処理によれば、シナリオ登録の際に、前回登録を行ったシナリオチャネルの次のシナリオチャネルから、空きチャネルが探索される。追加ポインタの初期値は「０」であり、その後、登録に応じてステップＳ４０７で更新されていくが、この処理によれば、多くの場合、シナリオチャネルｓＣＨ０から順に使用されてシナリオ登録が行われる。そして、シナリオ登録の際には、前回の登録チャネルの次のシナリオチャネルから空きの確認が行われる。従って、殆どの場合、素早く空きチャネルが発見でき、シナリオ登録処理を効率的に実行することができる。これにより演出制御ＣＰＵ２００の処理負担は軽減される。
【０１１４】
なお、処理の変形例として、ステップＳ４０７で更新する追加ポインタの値は、登録を行ったシナリオチャネルの番号としておき、ステップＳ４０２では変数Ｂに１を代入してもよい。但しその場合、ステップＳ４０５ではＢ≦６５であるか否かの判断を行うようにする。
【０１１５】
次にシナリオ削除処理について説明する。これはワークの或るシナリオチャネルに登録されているシナリオを削除する処理である。
図１３Ａは、或るシナリオをシナリオ登録情報から削除する場合の演出制御ＣＰＵ２００の処理を示している。
演出制御ＣＰＵ２００は、コマンド或いはプログラムグラム上で指定される、削除するシナリオ番号（後述のメインシナリオ番号（mcNo））の値に基づいて、図１３Ａの処理を開始する。まずステップＳ４２１で演出制御ＣＰＵ２００は、削除要求にかかるシナリオ番号が正常であるか否かを確認する。シナリオ番号があり得ない番号の場合は、削除せずに処理を終える。
【０１１６】
シナリオ番号が適正であれば、演出制御ＣＰＵ２００はステップＳ４２２で変数Ｂをゼロに設定する。この場合の変数Ｂは、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルのうちで、削除対象のシナリオが登録されたチャネルを探索するために使用する変数となる。さらに変数Ｂは、まだ探索（削除対象のシナリオが登録されているか否かの確認）をしていないシナリオチャネルが残っているか否かを判断するための変数を兼ねている。
【０１１７】
演出制御ＣＰＵ２００は、ステップＳ４２３で、Ｂ領域、つまりシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが削除対象のシナリオ番号のものであるか否かを確認する。シナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが削除対象のシナリオ番号でなければ、ステップＳ４２４で変数Ｂをインクリメントし、ステップＳ４２５でＢ＜６４であることを確認して、ステップＳ４２３の処理を行う。
このステップＳ４２３，Ｆ４２４の処理によれば、シナリオチャネルｓＣＨ０からシナリオチャネルｓＣＨ６３に向かって順に、削除対象のシナリオを探索していくこととなる。
ステップＳ４２３でシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが削除対象のシナリオ番号であった場合は、ステップＳ４２６に進み、Ｂ領域、つまりシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオを削除する処理を行う。
以上により、要求された或るシナリオ番号のシナリオをワーク（シナリオ登録情報）から削除する処理が行われる。
なお、ステップＳ４２５でＢ＜６４ではないと判断される場合、つまり変数Ｂが６４に達した場合は、シナリオチャネルｓＣＨ０〜ｓＣＨ６３の全てを探索したが、削除対象のシナリオが登録されていなかったということになるため、処理を終える。
【０１１８】
図１３Ｂは、或る範囲のシナリオを削除する処理を示している。削除シナリオが範囲で指定された場合に、この処理が行われる。
演出制御ＣＰＵ２００は、コマンド或いはプログラムグラム上で、或るシナリオ番号の範囲で削除指定された場合、まずステップＳ４３１で変数Ｂをゼロに設定する。この場合の変数Ｂは、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルのうちで、削除対象範囲に該当するシナリオが登録されたチャネルを探索するために使用する変数となる。さらに変数Ｂは、まだ探索（削除対象範囲に該当するシナリオが登録されているか否かの確認）をしていないシナリオチャネルが残っているか否かを判断するための変数を兼ねている。
【０１１９】
演出制御ＣＰＵ２００は、ステップＳ４３２で、Ｂ領域、つまりシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが、削除対象とされた範囲内のシナリオ番号であるか否かを確認する。そしてシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが削除対象の範囲内のシナリオ番号であれば、ステップＳ４３３でシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオを削除する。そしてステップＳ４３４に進む。
シナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが、削除対象とされた範囲内のシナリオ番号ではなければ、ステップＳ４３３を行わずにステップＳ４３４に進む。
演出制御ＣＰＵ２００はステップＳ４３４では、変数Ｂをインクリメントし、ステップＳ４３５でＢ＜６４であることを確認して、ステップＳ４３２に戻る。変数Ｂが６４に達していたら、全シナリオチャネルｓＣＨ０〜ｓＣＨ６３について処理を完了したことになるため、このシナリオ範囲削除処理を終える。
以上により、シナリオ番号範囲の１又は複数のシナリオについて、ワーク（シナリオ登録情報）からの削除が行われる。
【０１２０】
図１３Ｃは登録されているシナリオを全て削除する処理を示している。例えばシステム上の都合により、やむを得ずシナリオを削除する際に呼び出される処理である。なお、保護対象とされたシナリオは削除しないようにする。
演出制御ＣＰＵ２００は、シナリオ全削除が要求された場合、まずステップＳ４４１で変数Ｂをゼロに設定する。この場合の変数Ｂは、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルのうちで、保護対象のシナリオを登録したシナリオチャネルを確認するために使用する変数となる。さらに変数Ｂは、まだ確認（保護対象のシナリオが登録されているか否かの確認）をしていないシナリオチャネルが残っているか否かを判断するための変数を兼ねている。
【０１２１】
演出制御ＣＰＵ２００は、ステップＳ４４２で、Ｂ領域、つまりシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオが、保護対象のシナリオであるか否かを確認する。そして保護対象のシナリオであれば、削除せず、一方、保護対象のシナリオでなければ、ステップＳ４４３で、そのシナリオチャネルｓＣＨ（Ｂ）に登録されているシナリオを削除する。
そしてステップＳ４４４で変数Ｂをインクリメントし、ステップＳ４４５でＢ＜６４であればステップＳ４４２に戻る。変数Ｂが６４に達していたら、全シナリオチャネルｓＣＨ０〜ｓＣＨ６３について処理を完了したことになるため、このシナリオ全削除処理を終える。
以上により、ワークにシナリオ登録情報として登録されているシナリオについて、保護対象のシナリオを除く全シナリオの削除が行われる。
【０１２２】
［４−５：シナリオ更新処理］
続いてメイン処理の１６ｍｓ処理のステップＳ１１０で行われるシナリオ更新処理について説明する。シナリオ更新処理では図１４、図１５で説明するようにメインシナリオとサブシナリオの更新が行われる。
【０１２３】
まずシナリオ登録情報の構造を図１６、図１７で説明する。図１６Ａは、メインシナリオ及びサブシナリオとしてのシナリオ登録情報の構造を示している。このシナリオ登録情報は演出制御ＲＡＭ２０２のワークエリアを用いて設定される。
本実施の形態では、先にも述べたようにシナリオ登録情報は、シナリオチャネルｓＣＨ０〜ｓＣＨ６３の６４個のチャネルを有するものとされる。各シナリオチャネルｓＣＨに登録されたシナリオについては同時に実行可能とされる。
【０１２４】
図示のように各シナリオチャネルｓＣＨに登録できる情報としては、サブシナリオ更新処理で用いるサブシナリオタイマ（scTm）と前回時間（scPrevTm）、音／モータサブシナリオテーブルの実行ラインを示すサブシナリオ実行ライン（scIx）、ランプサブシナリオテーブルの実行ラインを示すサブシナリオ実行ラインｌｍｐ（lmpIx）、シナリオ更新処理に用いるメインシナリオタイマ（msTm）、メインシナリオテーブルの実行ラインを示すメインシナリオ実行ライン（mcIx）、メインシナリオ番号（mcNo）、メインシナリオに付加可能なオプションデータであるメインシナリオオプション（mcOpt）、ユーザオプション（userFn）、待機時間（delay）、チェックサム（checkSum）がある。
【０１２５】
スピーカ部５９による音出力、装飾ランプ部６３，６４による発光、及び可動体役物モータ６５による可動体役物の駆動による演出を開始するときには、待機時間（delay）とメインシナリオ番号（scNo）をシナリオチャネルｓＣＨ０〜ｓＣＨ６３のうちの空いているシナリオチャネルに登録する。
待機時間（delay）は、シナリオチャネルｓＣＨに登録してからそのシナリオが開始されるまでの時間を示す。なおこの待機時間（delay）は１６ｍｓ処理毎に１減算される。待機時間（delay）が０の場合に、登録されたデータに対応した処理が実行されることとなる。
【０１２６】
図１８には、メインシナリオテーブルの一部として、シナリオ番号１，２，３の例を示している。各シナリオ番号のシナリオとしては、シナリオの各ライン（行）に時間データとしてメインシナリオタイマ（msTm）の値が記述されるとともに、サブシナリオ番号（scNo）、オプション（OPT）を記述することができる。即ちメインシナリオテーブルでは、メインシナリオタイマ（msTm）による時間として、実行されるべきサブシナリオ（及び場合によってはオプション）が指定される。またシナリオ最終行には、シナリオデータ終了コードD_SEEND、又はシナリオデータループコードD_SELOPが記述される。
なお、メインシナリオタイマ（msTm）の値はメインシナリオの開始時から、１６ｍｓ処理で行われるシナリオ更新の処理で＋１されるため、「１」とは１６ｍｓを示すものとなる。各シナリオ番号のシナリオテーブルは、或る行におけるメインシナリオタイマ（msTm）の時間を経過すると、次の行へ進むことになる。各行の時間データは、その行が終わるタイミングを示している。
例えばシナリオ番号２の場合、１５００×１６ｍｓの時間としてサブシナリオ番号２の動作が指定され、次の５００×１６ｍｓの時間としてサブシナリオ番号２０の動作が指定され、次の２０００×１６ｍｓの時間としてサブシナリオ番号２１の動作が指定されている。その次の行はシナリオデータ終了コードD_SEENDである。シナリオデータ終了コードD_SEENDの場合、シナリオ登録情報（ワーク）から、このシナリオが削除される（後述する図１４のステップＳ６１７参照）。
【０１２７】
次に図１６Ｂでランプデータ登録情報の構造を説明する。ランプデータ登録情報としては、ランプサブシナリオテーブルから選択されたシナリオ、即ち装飾ランプ部６３，６４による演出動作（点灯パターン）を示す情報が登録される。このランプデータ登録情報も演出制御ＲＡＭ２０２のワークエリアを用いて設定される。
本実施の形態では、ランプデータ登録情報は、ランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５の１６個のチャネルを有するものとされる。各ランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５には優先順位が設定されており、ランプチャネルｄｗＣＨ０からｄｗＣＨ１５に向かって順にプライオリティが高くなる。従ってランプチャネルｄｗＣＨ１５に登録されたシナリオ（ランプサブシナリオ）が最も優先的に実行される。また例えばランプチャネルｄｗＣＨ３、ｄｗＣＨ１０にシナリオが登録されていれば、ランプチャネルｄｗＣＨ１０に登録されたシナリオが優先実行される。
なお、ランプチャネルｄｗＣＨ０は主にＢＧＭ（Back Ground Music）に付随するランプ演出、ランプチャネルｄｗＣＨ１５はエラー関係のランプ演出に用いられ、ランプチャネルｄｗＣＨ１〜ｄｗＣＨ１４が通常演出に用いられる。
【０１２８】
各ランプチャネルｄｗＣＨに登録できる情報としては、図示のように、登録した点灯パターンの番号を示す登録点灯ナンバ（lmpNew）、実行する点灯パターンの番号を示す実行点灯ナンバ（lmpNo）、ランプサブシナリオの実行ラインを示すオフセット（offset）、実行時間（time）、チェックサム（checkSum）がある。
【０１２９】
図１９Ａにランプサブシナリオテーブルの一部として、ランプサブシナリオ番号１，２，３の例を示している。各番号のランプサブシナリオとしては、シナリオの各ライン（行）に時間データ（time）の値が記述されるとともに、ランプチャネルと、各種の点灯パターンを示すランプナンバが記述される。また最終行には、ランプシナリオデータ終了コードD_LSENDが記述される。
【０１３０】
このランプサブシナリオテーブルにおいて、各ラインの時間データ（time）は、そのサブシナリオが開始されてからの、当該ラインが開始される時間を示している。
１６ｍｓ毎にメインシナリオタイマ（msTm）と、テーブルの時間データを比較して、一致した場合に、そのラインのランプナンバが、図１６Ｂのランプデータ登録情報に登録される。登録されるランプチャネルｄｗＣＨは、当該ラインに示されたチャネルとなる。
例えば、上述の或るシナリオチャネルｓＣＨにおいて、図１８に示したシナリオ番号２が登録され、サブシナリオ番号２が参照されるとする。図１９Ａに示したランプサブシナリオ番号２では、１ライン目に時間データ（time）＝０としてランプチャネル５（ｄｗＣＨ５）及びランプナンバ５が記述されている。この場合、メインシナリオタイマ（msTm）＝０の時点で、まず当該１ライン目の情報が図１６Ｂのランプデータ登録情報のランプチャネルｄｗＣＨ５に、登録点灯ナンバ（lmpNew）＝５として登録される。シナリオ登録情報のサブシナリオ実行ラインｌｍｐ（lmpIx）の値は、次のラインの値（２ライン目）に更新される。これはランプチャネルｄｗＣＨ５という比較的低い優先度で、点灯ナンバ５の点灯パターン動作の実行を行うための登録となる。
２ライン目については、５００×１６ｍｓとなった時点で同様の処理が行われる。即ちランプデータ登録情報のランプチャネルｄｗＣＨ５に、登録点灯ナンバ（lmpNew）＝６（つまり点灯ナンバ６の点灯パターンの指示）が登録される。
なお、時間データ（time）が連続する２ラインで同一の値であったら、その各ラインについての処理は同時に開始されることとなる。
後述するＬＥＤ駆動データ更新処理では、このように更新されるランプデータ登録情報に基づいて、ＬＥＤ駆動データが作成される。
【０１３１】
次に図１６Ｃでモータデータ登録情報の構造を説明する。モータデータ登録情報としては、音／モータサブシナリオテーブルから選択されたシナリオを示す情報が登録される。このモータデータ登録情報も演出制御ＲＡＭ２０２のワークエリアを用いて設定される。
本実施の形態では、モータデータ登録情報は、モータチャネルｍＣＨ０〜ｍＣＨ７の８個のチャネルを有するものとされる。
各モータチャネルｍＣＨに登録できる情報としては、図示のように、実行動作ナンバ（no）、登録動作ナンバ（noNew）、動作カウント（lcnt）、励磁カウンタ（tcnt）、実行ステップ（step）、動作ライン（offset）、親（移行元）／子（移行先）の属性（attribute）、親ナンバ（retNo）、戻りアドレス（retAddr）、ループ開始ポイント（roopAddr）、ループ回数（roopCnt）、エラーカウンタ（errCnt）、現在の入力情報（currentSw）、ソフト上のスイッチ情報（softSw）、ソフト上のカウント（softCnt）がある。
【０１３２】
また図１７は、音データ登録情報を示している。音データ登録情報としては、音／モータサブシナリオテーブルから選択されたシナリオを示す情報が登録される。この音データ登録情報も演出制御ＲＡＭ２０２のワークエリアを用いて設定される。
本実施の形態では、音データ登録情報は、音チャネルａＣＨ０〜ａＣＨ１５の１６個のチャネルを有するものとされる。
各音チャネルａＣＨに登録できる情報としては、図示のように、ボリューム遷移量（frzVq）、ボリューム（frzVl）、遷移量変化（rsv2）、ボリューム変化（rsv1）、フレーズ変化（rsv0）、ステレオ（frzSt）、ループ（frzLp）、フレーズ番号ｈｉ（frzHi）、フレーズ番号ｌｏｗ（frzLo）がある。
【０１３３】
図１９Ｂに音／モータサブシナリオテーブルの一部として、音／モータサブシナリオ番号１，２の例を示している。各番号のランプサブシナリオとしては、シナリオの各ライン（行）に時間データ（time）の値（ｍｓ）が記述されるとともに、ＢＧＭ、予告音、エラー音、音コントロール、モータ、ソレノイド／ユーザオプションの情報が記述される。また最終行には、シナリオデータ終了コードD_SEENDが記述される。
この音／モータサブシナリオテーブルに関しては、サブシナリオタイマ（scTm）が０になったら（なお最初は０である）、この音／モータサブシナリオテーブルの時間データ（time）の値をサブシナリオタイマ（scTm）にセットする。なお、各ラインの時間データ（time）は、当該ラインが終了するタイミングを示している。サブシナリオタイマ（scTm）には、絶対時間を記述するが、従って、セットする時間データ値は、（当該ラインの時間データ）−（前回ラインの時間データ）の値である。
当該ラインのＢＧＭのデータは、ＢＧＭのフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音データ登録情報における音チャネルａＣＨ０（ステレオの場合は加えてａＣＨ１）にセットされる。
当該ラインの予告音のデータは、予告音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルａＣＨ２〜ａＣＨ１４の空いているところにセットされる。
当該ラインのエラー音のデータは、エラー音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルａＣＨ１５にセットされる。
音コントロールのデータは、下位６バイトでチャネル情報、上位２バイトでコントロール情報とされている。
モータのデータは、モータ１個につき１バイトでモータの動作パターン番号を示すように構成されている。モータ番号に対応するモータチャネルに動作パターン番号がセットされる。
【０１３４】
図９のステップＳ２０３として説明したモータ動作更新処理では、図１４，図１５のシナリオ更新処理で更新されるモータデータ登録情報に基づいて、モータ駆動データが作成される。
また図８のステップＳ１１１の音再生処理では、図１４，図１５のシナリオ更新処理で更新される音データ登録情報に基づいて、再生出力が行われる。
【０１３５】
以上の各情報を用いたシナリオ更新処理について、図１４、図１５で説明する。
図８の１６ｍｓ処理のステップＳ１１０として実行される図１４のシナリオ更新処理では、演出制御ＣＰＵ２００はループ処理ＬＰ１として、シナリオチャネルｓＣＨ０〜ｓＣＨ６３のそれぞれについて、ステップＳ６０１〜Ｓ６１６の処理を行う。当該ループ処理の各回の処理対象のシナリオチャネルを「ｓＣＨｎ」として説明する。
【０１３６】
演出制御ＣＰＵ２００は、ステップＳ６０１でシナリオチャネルｓＣＨｎの待機時間（delay）を確認する。待機時間（delay）＝０でなければステップＳ６０２で待機時間（delay）の値を−１（デクリメント）する。そしてステップＳ６１５でシナリオチャネルｓＣＨｎ関連のデータのチェックサムを算出し、保存する。またステップＳ６１６でシナリオチャネルｓＣＨｎ関連のデータをバックアップ保存する。これでシナリオチャネルｓＣＨｎについての１回の処理を終える。
【０１３７】
一方、ステップＳ６０１で待機時間（delay）＝０であることが確認された場合は、演出制御ＣＰＵ２００はステップＳ６０３に進み、シナリオチャネルｓＣＨｎに登録されているメインシナリオ番号（mcNo）と、メインシナリオ実行ライン（mcIx）に対応するメインシナリオテーブルのアドレスを特定する。
ステップＳ６０４では、当該特定したアドレスで示される、メインシナリオテーブルの或るメインシナリオ番号の実行ラインが、終了コードD_SEEND（図１８参照）が記述されている最終ラインであるか否かを確認する。
終了コードが記述された最終ラインで合った場合は、当該シナリオチャネルｓＣＨｎに登録されたシナリオで実行すべき処理は終了したことになるため、ステップＳ６１７で、そのシナリオチャネルｓＣＨｎに登録されているシナリオをシナリオ登録情報（ワーク）から削除する。
なお、この場合のシナリオ登録の削除は、シナリオ終了に応じた通常の削除である。先に図１３で説明したシナリオ削除は、この通常削除以外の、例えば未終了のシナリオをシナリオ登録情報（ワーク）から削除する処理であることを付言しておく。
【０１３８】
ステップＳ６０４で、メインシナリオテーブルの当該ラインが終了コードではない場合は、演出制御ＣＰＵ２００はステップＳ６０５に進み、まず当該シナリオチャネルｓＣＨｎのメインシナリオオプション（mcOpt）に、当該ラインのオプション（OPT）をセットする。次にステップＳ６０６で、シナリオ番号が０であるか否かを確認し、０でなければステップＳ６０７で、ユーザオプション（userFn）に０を代入する。
そしてステップＳ６０８で当該シナリオチャネルｓＣＨｎで指定されるサブシナリオの更新を行う。サブシナリオの更新については図１５で後述する。
【０１３９】
ステップＳ６０９では、演出制御ＣＰＵ２００はメインシナリオタイマ（msTm）を＋１（インクリメント）する。そしてステップＳ６１０では、メインシナリオタイマ（msTm）の値と、メインシナリオテーブルの該当ラインの時間データ（図１８参照：msTmで記述）を比較する。先に述べたように、メインシナリオテーブルの各ラインの時間データは、そのラインの終了タイミングを規定する。従ってメインシナリオタイマ（msTm）の値がメインシナリオテーブルの当該ラインに記述された時間データ以上であれば、そのラインの処理は終了し、次のラインを対象とする。その場合ステップＳ６１０からＳ６１１に進み、シナリオチャネルｓＣＨｎのメインシナリオ実行ライン（mcIx）を＋１する。つまり次回は、次のラインが対象となるようにする。
またその場合、ステップＳ６１２で次のラインがループ指定であるか否かを確認する。図１８のメインシナリオテーブルにおいてシナリオ番号１では、最終ラインがシナリオデータループコードD_SELOPとされている例を示したが、このようにループ指定されていた場合は、ステップＳ６１３で、メインシナリオ実行ライン（mcIx）にループ行をセットする。
【０１４０】
演出制御ＣＰＵ２００は、ステップＳ６１４では、１つのラインの終了に応じたクリア処理を行う。即ちメインシナリオタイマ（msTm）、サブシナリオタイマ（scTm）、前回時間（scPrevTm）、サブシナリオ実行ライン（scIx）、サブシナリオ実行ラインｌｍｐ（lmpIx）、メインシナリオオプション（mcOpt）、ユーザオプション（userFn）、待機時間（delay）をクリアする。
そしてステップＳ６１５のチェックサム処理，ステップＳ６１６のバックアップ処理を行ってシナリオチャネルｓＣＨｎについての１回の処理を終える。
シナリオ更新処理としては、ループ処理ＬＰ１として、シナリオチャネルｓＣＨ０〜ｓＣＨ６３のそれぞれについて以上の処理が実行されることになる。  
【０１４１】
ステップＳ６０８で行われるサブシナリオ更新処理を図１５Ａに詳細に示す。
メインシナリオタイマ（msTm）、シナリオチャネルｓＣＨｎと、メインシナリオテーブルに記述されたサブシナリオ番号（scNo）に基づいて、図１５Ａのサブシナリオの更新処理が行われる。
【０１４２】
まずステップＳ６２１で演出制御ＣＰＵ２００は、シナリオチャネルｓＣＨｎが０〜６３のいずれかを示しているか否か、つまり適正値であるか否かを確認する。シナリオチャネルｓＣＨｎが６４以上であれば、更新処理不能として図１５の処理を終える。
シナリオチャネルｓＣＨｎが適正値であれば、演出制御ＣＰＵ２００はステップＳ６２２で、サブシナリオ番号（scNo）とサブシナリオ実行ラインｌｍｐ（lmpIx）に対応するランプサブシナリオテーブル（図１９Ａ参照）のアドレスを特定する。
【０１４３】
演出制御ＣＰＵ２００はステップＳ６２３では、ランプデータ登録情報の更新のため、まずランプチャネルｄｗＣＨに０をセットする。つまりまずランプチャネルｄｗＣＨ０を指定した状態とする。
そしてステップＳ６２４で、メインシナリオタイマ（msTm）とランプサブシナリオテーブルの時間データ（time）を比較する。ランプサブシナリオテーブルの時間データ（time）は、当該ライン（サブシナリオ実行ラインｌｍｐ（lmpIx）で示されるライン）が開始される時間（ｍｓ）を示している。従って、メインシナリオタイマの時間（実際にはmsTm×１６ｍｓの時間）が、時間データ（time）以上となっていたら、そのラインについての処理を行う。その場合、ステップＳ６２５でランプチャネルｄｗＣＨの値が正常（ｄｗＣＨ０〜ｄｗＣＨ１５の範囲内）であるか否かを確認する。異常な値であれば処理を終える。正常な値であればステップＳ６２６で、現在のラインが、ランプシナリオデータ終了コードD_LSENDが記述されたラインであるか否かを確認する。
【０１４４】
ランプシナリオデータ終了コードD_LSENDが記述されたラインではなければ、演出制御ＣＰＵ２００はステップＳ６２７で、当該ラインに記述されているランプチャネルステップＳ６２８で点灯パターンナンバの登録を行う。
点灯パターンナンバの登録処理を図１５Ｂに示している。この場合、まず演出制御ＣＰＵ２００はステップＳ６５１で、当該ラインに記述されているランプチャネルｄｗＣＨの値が正常値であるか否かを判別する。正常値でなければ登録を行わずに処理を終える。
正常値であれば、ステップＳ６５２で、当該ラインに記述されているランプナンバが正常値であるか否かを判別する。正常値でなければ登録を行わずに処理を終える。
ランプチャネルｄｗＣＨ及びランプ番号のいずれもが正常値であれば、ステップＳ６５３でワークのランプデータ登録情報における、ランプチャネルｄｗＣＨに対応する領域に登録点灯ナンバ（lmpNew）と実行点灯ナンバ（lmpNo）をセットする。即ちランプサブシナリオテーブルの当該ラインから取得したランプナンバを、登録点灯ナンバ（lmpNew）にセットし、「０」を実行点灯ナンバ（lmpNo）にセットする。
以上の図１５Ｂの処理をステップＳ６２８で行ったら、演出制御ＣＰＵ２００はステップＳ６２９でサブシナリオ実行ラインｌｍｐ（lmpIx）の値を＋１し、ステップＳ６３０でランプチャネルｄｗＣＨの値を＋１してステップＳ６２４に戻る。
【０１４５】
ステップＳ６２４で、メインシナリオタイマの時間が、サブシナリオ実行ラインｌｍｐ（lmpIx）で示されるラインの時間データ（time）に達していない場合、及びステップＳ６２６でランプシナリオデータ終了コードD_LSENDが確認された場合は、演出制御ＣＰＵ２００の処理はステップＳ６３１へ進む。
ステップＳ６３１ではサブシナリオタイマ（scTm）が０であるか否かを確認する。０でなければ、音及びモータの登録を行わずにステップＳ６３９へ進む。この場合ステップＳ６４０でサブシナリオタイマ（scTm）の値をデクリメントして、この図１５Ａの処理を終えることとなる。
【０１４６】
ステップＳ６３１の時点でサブシナリオタイマ（scTm）＝０であれば、演出制御ＣＰＵ２００は処理をステップＳ６３２に進め、メインシナリオテーブルに記述されているサブシナリオ番号と、現在処理中のシナリオチャネルｓＣＨｎに登録されているサブシナリオ実行ライン（scIx）に対応する音／モータサブシナリオテーブルのアドレスを特定する。
そしてステップＳ６３３では演出制御ＣＰＵ２００は、該当する音／モータサブシナリオ番号のテーブルの、サブシナリオ実行ライン（scIx）で示されるラインが、シナリオデータ終了コードD_SEENDが記述された行であるか否かを確認し、シナリオデータ終了コードD_SEENDが記述された行であれば処理を終了する。
シナリオデータ終了コードD_SEENDが記述された行でなければ、演出制御ＣＰＵ２００はステップＳ６３４で、サブシナリオタイマ（scTm）に、当該ラインの時間データ（time）から前回時間（scPrevTm）を減算した値を代入する。また前回時間（scPrevTm）には、当該ラインの時間データ（time）を代入する。
【０１４７】
そして演出制御ＣＰＵ２００はステップＳ６３５で音の登録を行い、またステップＳ６３６でモータの登録を行う。詳述は避けるが、図１９Ｂに例示した音／モータサブシナリオテーブルの該当サブシナリオ番号の該当ラインの情報を、図１６Ｃのモータデータ登録情報の任意のモータチャネル、及び図１７の音データ登録情報の任意の音チャネルに登録する処理を行う。またステップＳ６３７でそのラインに記述されたソレノイド／ユーザオプションの情報も、シナリオ登録情報等に登録する。
そしてステップＳ６３８で、サブシナリオ実行ライン（scIx）の値として次のラインの値をセットする。そしてステップＳ６３９でサブシナリオタイマ（scTm）が０でなければ、ステップＳ６４０でサブシナリオタイマ（scTm）をデクリメントして処理を終える。
【０１４８】
図８のステップＳ１１０では、以上の図１４，図１５の処理が行われることとなる。この処理でワーク上のシナリオ登録情報、ランプデータ登録情報、モータデータ登録情報、音データ登録情報が逐次更新され、これに応じて演出制御が行われることで、シナリオに沿った演出動作が実行される。
【０１４９】
［４−６：ＬＥＤ駆動データ更新処理］
図８のステップＳ１１３のＬＥＤ駆動データ更新処理を説明する。
この処理は、ランプデータ登録情報に登録されている点灯ナンバ（登録点灯ナンバ（lmpNew）、実行点灯ナンバ（lmpNo））に対応するランプデータテーブルを参照して、ＬＥＤ駆動データを作成する処理である。なお上述のように、ランプデータ登録情報の点灯ナンバには、元々はランプサブシナリオテーブルに記述された、点灯パターンを示すランプナンバがセットされる。ランプナンバは点灯パターンを示すナンバと述べたが、具体的には図２４Ａで述べるランプデータテーブルのランプデータの番号を示すことになる。
【０１５０】
図２０はＬＥＤ駆動データ更新処理を示している。
演出制御ＣＰＵ２００はステップＳ７０１でそれまで出力データとしていたＬＥＤ駆動データをクリアする。
そしてループ処理ＬＰ２として、ランプデータ登録情報のランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５のそれぞれについて、ステップＳ７０２〜Ｓ７２０の処理が行われる。以下、処理対象のランプチャネルを「ｄｗＣＨｎ」と表記して説明する。
【０１５１】
ステップＳ７０２では演出制御ＣＰＵ２００は対象のランプチャネルｄｗＣＨｎにおける実行点灯ナンバ（lmpNo）と登録点灯ナンバ（lmpNew）が一致しているか否かを確認する。先の図１５ＢのステップＳ６５３のように点灯パターンナンバの登録が行われるため、最初は一致していない。一致していなければ点灯開始として、ステップＳ７０３で、実行点灯ナンバ（lmpNo）に登録点灯ナンバ（lmpNew）の値を代入する。またステップＳ７０４で、実行ライン（ofset）を０にセットし、また実行時間（time）を０にセットする。
なお実行点灯ナンバ（lmpNo）と登録点灯ナンバ（lmpNew）が一致していれば、既に過去に以上のステップＳ７０３，Ｓ７０４の処理が行われたものであるため、これらの処理は不要である。
【０１５２】
或るランプチャネルｄｗＣＨに登録された情報については、登録後、このＬＥＤ駆動データ更新処理の機会毎に、その情報が反映されて各ＬＥＤドライバ９０に出力するＬＥＤ駆動データが作成されていく。
図２２Ａは、図１６Ｂに示したワークのランプデータ登録情報において、ランプチャネルｄｗＣＨ０、ｄｗＣＨ５、ｄｗＣＨ８に登録が行われている状態を示している。この図の状態は、図２２Ｂの時点ｔ０の状態の一例である。
即ちランプチャネルｄｗＣＨ０、ｄｗＣＨ５の情報については、時点ｔ０より以前に、ＬＥＤ出力データに反映されている。ランプチャネルｄｗＣＨ０については、既に実行点灯ナンバ（lmpNo）と登録点灯ナンバ（lmpNew）が一致され、また実行ライン（ofset）は３（３ライン目）まで進んでいる。またランプチャネルｄｗＣＨ５についても、既に実行点灯ナンバ（lmpNo）と登録点灯ナンバ（lmpNew）が一致され、また実行ライン（ofset）は２（２ライン目）まで進んでいる。時点ｔ０では、ランプチャネルｄｗＣＨ８は登録直後であり、まだ実行点灯ナンバ（lmpNo）と登録点灯ナンバ（lmpNew）が一致されていない。この後、上記ステップＳ７０３，Ｓ７０４の処理が行われることになる。
【０１５３】
なお前述したように本実施の形態では、ランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５には優先順位が設定されており、ランプチャネルｄｗＣＨ０からｄｗＣＨ１５に向かって順にプライオリティが高くなる。図２２Ａに示すように、優先度の高いランプチャネルｄｗＣＨ１５はエラー報知用に使用される。ランプチャネルｄｗＣＨ１２，ｄｗＣＨ１３，ｄｗＣＨ１４等、優先度が高いランプチャネルは、連続予告や確定予告等、比較的信頼度の高い演出用などに用いられる。また優先度が中程度のランプチャネルは可動体演出用、優先度が比較的低いランプチャネルは、会話予告やステップアップ予告など比較的信頼度の低い演出用に用いられ、さらに優先度が低いランプチャネルは、通常変動、リーチ等に同期したランプ演出に用いられる。
このような優先度の設定のため、図２２Ｂのように複数のランプチャネルｄｗＣＨの動作が重なる場合、優先度の高いランプチャネルの点灯動作が実行される。例えば時点ｔ０からは、ランプチャネルｄｗＣＨ０、ｄｗＣＨ５に基づく点灯動作が制限され、ｄｗＣＨ８に基づく点灯が行われるようにＬＥＤ出力データが生成される。優先度の低いランプチャネルの情報を反映させないようにするためには、後述するマスクデータが使用される。
【０１５４】
続いて図２０のステップＳ７０５では、演出制御ＣＰＵ２００は実行点灯ナンバ(lmpNo)の値が正常範囲であるか否かを確認する。正常範囲とは、図２４Ａに示すランプデータテーブルのランプデータとして番号が存在する範囲である。
実行点灯ナンバ（lmpNo）が異常であれば、ステップＳ７１９に進む。なおランプチャネルｄｗＣＨｎが登録されていない空きチャネルの場合も、ここでは異常としてステップＳ７１９に進む。
【０１５５】
実行点灯ナンバ（lmpNo）が正常であれば、ステップＳ７０６に進む。ステップＳ７０６では演出制御ＣＰＵ２００は、ランプチャネルｄｗＣＨｎに登録された実行点灯ナンバ（lmpNo）、実行ライン（ofset）に対応する、ランプデータテーブルのアドレスを特定する。
またステップＳ７０７では、ランプチャネルｄｗＣＨｎに登録された実行点灯ナンバ（lmpNo）、マスクデータテーブルのアドレスを特定する。
アドレスの特定のためには演出制御ＣＰＵ２００は、図２３のようなランプデータアドレステーブルを参照する。このランプデータアドレステーブルには、各点灯パターン、例えば全体点滅、右側点滅、左側点滅、役物点灯などを実現するためのランプデータ番号のアドレスが示されている。図２３の左端の数字は、図１９Ａのランプサブシナリオテーブルで示されるランプナンバであり、例えばランプナンバ２のランプデータのアドレスの欄には、全体点滅の点灯パターンを行うためのランプデータ番号が記憶されたアドレスが記述されている。
また、マスクデータのアドレスの欄には、そのランプデータ番号の点灯パターンを実行する際に必要なマスクデータが記憶されたアドレスが記憶されている。例えば点灯ナンバ５の右側点滅の点灯パターンを行う際には、センターケースマスクが必要になるが、そのセンターケースマスクを行うためのマスクデータのアドレスが記述されている。
【０１５６】
図２４Ａにはランプデータテーブルの一部としてランプデータ１，２を示している。
各番号のランプデータにおける各ラインには、タイマ（frame）としての時間データと点灯データが記述されている。タイマ（frame）は各ラインの点灯データによるＬＥＤ出力データの生成を行う時間を規定する。
点灯データは、各ＬＥＤドライバ９０に対応して記述されている。先に図４では、枠ドライバ部６１にはｎ個、盤ドライバ部６２にはｍ個のＬＥＤドライバ９０が存在するとしたが、以下では一例として、枠ドライバ部６１には４個、盤ドライバ部６２には５個の、合計９個のＬＥＤドライバ９０が存在すると仮定して説明する。
その場合、ランプデータの各ラインには、図２４Ａに示すように、９個のＬＥＤドライバ９０のそれぞれに対応して点灯データが記述される。なお図では各ＬＥＤドライバ９０との対応をＬＥＤドライバ９０のスレーブアドレスでｗ１〜ｗ４、ｂ１〜ｂ５で示している。
点灯データとしては、図４，図５で説明した、ＬＥＤドライバ９０の１つの出力端子９６（１系列のＬＥＤ駆動電流出力）に対して４ビット（０ｈ〜Ｆｈ）が割り当てられ（「ｈ」は１６進表記を示す）、１６階調の輝度を指定するようにされている。図５で述べたように、ＬＥＤドライバ９０には２４個の出力端子９６−１〜９６−２４がある。このため、１つの点灯データは、「ＦＦＦＦ００００５５５５００００ＡＡＡＡＡＡＡＡ（ｈ）」のように、（４×２４）ビットの情報となる。仮に図示のランプデータ１の１ライン目のように、ＬＥＤドライバ９０（ｗ１）についての点灯データが、「ＦＦＦＦ００００００００００００５５５５００００（ｈ）」であれば、ＬＥＤドライバ９０（ｗ１）の出力端子９６−１〜９６−４からは最大輝度「Ｆ」を発光させるための駆動電流を出力し、出力端子９６−５〜９６−１６及び９６−２１〜９６−２４は非発光（最低輝度）、出力端子９６−１７〜９６−２０は輝度「５」としての駆動電流を出力することを指定する情報となる。
ランプデータにはこのような点灯データが、各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）のそれぞれに対して設定されて、かつそれらが各ライン毎に設定されることで、時系列的に変化する所定の発光パターンが示されることになる。（図では点灯データは一部のみに例示した。空欄部分は図示を省略したもので、実際には点灯データが記述される）
【０１５７】
図２４Ｂにはマスクデータテーブルの例として、マスクデータ１〜５を示している。各マスクデータは、枠側の装飾ランプ２０ｗの駆動についてのマスクのための、盤側の装飾ランプ２０ｂの駆動についてのマスクのため、全体のマスクのため、センターケースのマスクのため、役物のマスクのためなどとして、必要なマスクパターンが記憶されている。
各マスクデータ１〜５は、それぞれ各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）の各出力端子９６−５〜９６−２４について、消灯を「０ｈ」、マスク無しを「Ｆｈ」で示すデータとされている。
例えばマスクデータ１についてみると、枠ドライバ部６１におけるＬＥＤドライバ９０（ｗ１〜ｗ４）については、「００００・・・・・００（ｈ）」と、各出力端子９６−５〜９６−２４について消灯が設定され、盤ドライバ部６２のＬＥＤドライバ９０（ｂ１〜ｂ５）については、「ＦＦＦＦ・・・・・ＦＦ（ｈ）」と、各出力端子９６−５〜９６−２４についてマスク無しが設定されている。つまり枠側の装飾ランプ２０ｗのみをマスクすることを指定するデータとなる。（なお、マスクデータ４，５はデータ値の図示を省略している）
【０１５８】
図２０のステップＳ７０６，Ｓ７０７では、このようなランプデータテーブル、マスクデータテーブルにおいて、処理中のランプチャネルｄｗＣＨｎに対応するアドレスを特定するものである。
続いてステップＳ７０８で演出制御ＣＰＵ２００は、ランプデータテーブルの該当ライン（現在対象のランプチャネルｄｗＣＨｎの実行ライン（offset）で示されるライン）のタイマ（frame）を取得し、これを変数Dtimeに代入する。
【０１５９】
ステップＳ７０９で演出制御ＣＰＵ２００は、上記ステップＳ７０６，Ｓ７０７で特定した該当の点灯データとマスクデータを展開し、ＬＥＤ駆動データを生成していく。この処理については後述するが、現在処理中のランプチャネルｄｗＣＨｎについての点灯データとマスクデータを、出力するＬＥＤ駆動データに反映させる処理となる。
【０１６０】
ステップＳ７１０ではランプチャネルｄｗＣＨｎの情報である実行時間（time）を＋１する。
ステップＳ７１１では変数Dtimeと実行時間（time）を比較する。変数Dtimeには現在実行中のラインのタイマ（frame）が代入されている。実行時間（time）はＬＥＤ駆動データ更新処理毎（１６ｍｓ毎）に上記ステップＳ７１０で＋１される。従ってDtime≦timeとなれば、現ラインの終了タイミングとなる。Dtime≦timeではなければ、まだ現在のラインの終了に至らないとしてステップＳ７１１からＳ７１９に進む。Dtime≦timeの場合は、現在のラインの終了としてステップＳ７１１からＳ７１２に進む。
演出制御ＣＰＵ２００はステップＳ７１２で実行時間（time）を０にリセットする。またステップＳ７１３で、実行ライン（offset）の値を＋１する。つまり次のラインが対象となるようにする。
ステップＳ７１４では演出制御ＣＰＵ２００は、実行ライン（offset）に対応するランプデータテーブル該当ラインのアドレスを特定する。そしてステップＳ７１５，Ｄ７１７で、そのラインに終了コード（D_DTEND）が記述されているか、ループコード（LMP_LP）が記述されているかを確認する。
終了コード（D_DTEND）が記述されていた場合は、ステップＳ７１６で、当該ランプチャネルｄｗＣＨｎの登録点灯ナンバを０に更新する。つまりワーク上で、当該ランプチャネルｄｗＣＨの登録に応じた処理が完了したことを示すようにする。
ループコード（LMP_LP）が記述されていた場合はステップＳ７１８で、実行ライン（offset）の値をループ先のアドレスに更新する。
【０１６１】
ステップＳ７１９では演出制御ＣＰＵ２００は、ランプチャネルｄｗＣＨｎの時点のＬＥＤ駆動データのチェックサムを算出する。またステップＳ７２０でバックアップ用データを保存する。
以上で、１つのランプチャネルｄｗＣＨｎを対象としたＬＥＤデータ更新を終える。ループ処理ＬＰ２として、以上の処理をランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５まで順次行うことになる。
【０１６２】
各ランプチャネルｄｗＣＨｎでのＬＥＤ出力データの更新は、ステップＳ７０９で行われるが、これは次のような処理となる。
図２５Ａは点灯データとマスクデータを展開してＬＥＤ駆動データを生成する出力データバッファを模式的に示している。
出力データバッファは、ランプデータテーブル及びマスクデータテーブルと同様に、各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）のそれぞれに対応して用意される。図示する１つのマスは、１つのＬＥＤドライバ９０に対応し、（４×２４）ビットの情報のバッファとなる。
【０１６３】
このような出力データバッファに対して、ステップＳ７０９では、マスクデータをアンド（論理積）で展開し、点灯データをオア（論理和）で展開する処理が行われる。これがループ処理（ＬＰ２）により、各ランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５について順次ステップＳ７０９で行われる。
例えば図２２で示した時点ｔ０の場合、出力データバッファは、ランプデータ２のマスクデータ（図２３参照：マスクなし）がアンド展開され、ランプデータ２の３ライン目の点灯データがオア展開された状態の後、ランプデータ５のマスクデータ（図２３参照：センターケースマスク）がアンド展開され、ランプデータ５の２ライン目の点灯データがオア展開された状態となっている。
上述の通りマスクデータは０ｈ（＝００００）が消灯、Ｆｈ（＝１１１１）がマスクなしである。従ってマスクデータをアンドで展開するということは、その時点までの出力データバッファの値について、消灯（マスク）したいビットを「０」とし、マスクしないビットは変更しないということになる。
さらに点灯データをオアで展開するということは、処理中のランプチャネルｄｗＣＨの点灯データが、マスク後の出力データバッファに反映させるということになる。
この処理をランプチャネルｄｗＣＨ０〜ｄｗＣＨ１５について順次行うことで、高い番号のランプチャネルほど優先されたＬＥＤ駆動データが出力データバッファ上に形成されることになる。
【０１６４】
［４−７：第１の実施の形態のＬＥＤ出力処理］
上述のようにＬＥＤデータ更新処理で生成されたＬＥＤ駆動データは、図９の１ｍｓタイマ割込処理のステップＳ２０５（但し上述のケース１２〜１５の場合）で、実際に各ＬＥＤドライバ９０に出力される。
本実施の形態では、ＬＥＤ駆動データの出力は、１回の１ｍｓタイマ割込処理の際に、ＬＥＤドライバ９０の２，３個に対して行われる。さらに本実施の形態では、演出制御ＣＰＵ２００は、ＬＥＤ駆動データの一送信単位のシリアルデータを、第１系統、第２系統の駆動信号出力手段（枠ドライバ部６１と盤ドライバ部６２）に対して略同時的に出力する。
例えば図２５Ｂに示すように、１ｍｓタイマ割込処理のステップＳ２０５のケース１２では、枠ドライバ部６１のＬＥＤドライバ９０（ｗ１，ｗ２，ｗ３）と、盤ドライバ部６２のＬＥＤドライバ９０（ｂ１，ｂ２，ｂ３）にＬＥＤ駆動データの送信を行う。ＬＥＤドライバ９０のｗ１とｂ１、ｗ２とｂ２、ｗ３とｂ３に対する送信は同時的に行われる。
またケース１２では、枠ドライバ部６１のＬＥＤドライバ９０（ｗ４）と、盤ドライバ部６２のＬＥＤドライバ９０（ｂ４，ｂ５）にＬＥＤ駆動データの送信を行う。ＬＥＤドライバ９０のｗ４とｂ４に対する送信は同時的に行われる。
【０１６５】
図２６は、ＬＥＤドライバ９０に送信するＬＥＤ駆動データを送信する場合のシリアルデータ構造を示している。例えばＬＥＤドライバ９０（ｗ１）などの１つのＬＥＤドライバ９０に対して送信するシリアルデータ構造である。
例えば図２５Ｂに示した、各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）のそれぞれに対しては、この図２６の構造のシリアルデータでＬＥＤ駆動データが送信される。なおこの図２６は、図４、図５で説明したシリアルデータDATA及びイネーブル信号ENABLEを示している。
このシリアルデータは、イネーブル信号ENABLEがＯＮとされた期間に、１バイト毎順次送信が行われる。つまり当該構造のシリアルデータは、各１バイトが一送信単位となる。
【０１６６】
当該シリアルデータDATAは、１バイトのスレーブアドレス、１バイトのデータ設定開始レジスタアドレス（ＳＸ）、各１バイトの、アドレス（ＳＸ）への書込データ、アドレス（ＳＸ＋１）への書き込みデータ、・・・アドレス（ＳＸ＋２３）への書き込みデータの合計２６バイトで構成される。
このようなシリアルデータDATAは、イネーブル信号ENABLEで規定される期間に、ＬＥＤドライバ９０に取り込まれる。
【０１６７】
「スレーブアドレス」は各ＬＥＤドライバ９０のデバイスＩＤであり、ｗ１〜ｗ４、又はｂ１〜ｂ５の別を識別する１バイトコードである。
「データ設定開始レジスタアドレス（ＳＸ）」は、ＬＥＤドライバ９０内のデータ取り込みのためのレジスタの先頭を指定する情報である。例えば図５のデータバッファ／ＰＷＭコントローラ９３の内部レジスタの指定情報である。本実施の形態で採用するＬＥＤドライバ９０は、シリアルデータ取り込みのために例えばレジスタアドレス００ｈ〜２Ｃｈのレジスタ（各８ビット）が用意される。そのうちのレジスタアドレス１５ｈ〜２Ｃｈの２４個のレジスタ（各８ビット）は、２４個の出力端子９６−１〜９６−２４に対応した点灯データ（ＰＷＭ階調指示データ）を入力するレジスタ（階調値設定部）とされている。そのため「データ設定開始レジスタアドレス（ＳＸ）」としてはレジスタアドレス１５ｈを指定する。
「アドレス（ＳＸ）への書込データ」としては、「データ設定開始レジスタアドレス（ＳＸ）」で指定されたレジスタアドレス（本実施の形態では「１５ｈ」）のレジスタへの書き込みデータ、即ち出力端子９６−１に対応するＬＥＤ駆動データがセットされる。
「アドレス（ＳＸ＋１）への書込データ」としては、「データ設定開始レジスタアドレス（ＳＸ）」で指定されたレジスタアドレス＋１（本実施の形態では「１６ｈ」）のレジスタへの書き込みデータ、即ち出力端子９６−２に対応するＬＥＤ駆動データがセットされる。
以下同様であり、「アドレス（ＳＸ＋２３）への書込データ」としては、「データ設定開始レジスタアドレス（ＳＸ）」で指定されたレジスタアドレス＋２３（本実施の形態では「２Ｃｈ」）のレジスタへの書き込みデータ、即ち出力端子９６−２４に対応するＬＥＤ駆動データがセットされる。
【０１６８】
なお、これら書き込みデータは８ビット構造であるが、上述のように１つの点灯データは「０ｈ（＝００００）」〜「Ｆｈ（＝１１１１）」の４ビット構造である。４ビットで１６階調の輝度を表す。一方、ＰＷＭ階調指示データを入力するレジスタアドレス１５ｈ〜２Ｃｈの各レジスタ（各８ビット）は、８ビットで２５６階調に対応可能である。
本実施の形態の場合、点灯データは１６階調のデータとするため、レジスタアドレス１５ｈ〜２Ｃｈの各レジスタへの８ビットの書き込みデータとしては、上位４ビットに、点灯データをセットするようにしている。この点については後述する。
また、図９のステップＳ２０５ではケース０〜３でＬＥＤドライバ９０の初期化を行うと述べたが、これは具体的には、使用しないレジスタアドレス００ｈ〜１４ｈのレジスタにデフォルト値をセットする送信処理となる。この点についても後述する。
【０１６９】
図２１で、１ｍｓタイマ割込処理のステップＳ２０５（ケース１２，１３）で行われるＬＥＤ駆動データ出力処理を説明する。
演出制御ＣＰＵ２００はステップＳ８０１で、スタート値に対応するシリアルデータ出力チャネルｃｈ１、ｃｈ２のＬＥＤ駆動データ（図２５Ａの出力データバッファ）の先頭アドレスを特定する。
スタート値とは、最初に送信するＬＥＤドライバ９０の値である。例えば図２５Ｂのケース１２の場合、スタート値は「１」で、シリアルデータ出力チャネルｃｈ１、ｃｈ２からそれぞれ、ＬＥＤドライバ９０（ｗ１）、ＬＥＤドライバ９０（ｂ１）に対して最初に送信を行うため、ここでは図２５Ａの出力データバッファにおいてｗ１用のＬＥＤ駆動データが格納された先頭アドレスと、ｂ１用のＬＥＤ駆動データが格納された先頭アドレスを特定することになる。
またケース１３の場合は、スタート値は「４」で、同様の意味で、図２５Ａの出力データバッファにおいてｗ４用のＬＥＤ駆動データが格納された先頭アドレスと、ｂ４用のＬＥＤ駆動データが格納された先頭アドレスを特定する。
【０１７０】
次にステップＳ８０２で演出制御ＣＰＵ２００は、スタート値に対応する、シリアルデータ出力チャネルｃｈ１、ｃｈ２のスレーブアドレスを特定する。ケース１２の場合は「ｗ１，ｂ１」を示すアドレスコードであり、ケース１３の場合は、「ｗ４，ｂ４」を示すアドレスコードである。
【０１７１】
そしてループ処理ＬＰ３として、ドライバナンバ個数分、ステップＳ８０３〜Ｓ８１５の処理をループして実行する。
図２５Ｂの例では、ケース１２の場合、ドライバナンバ個数は「３」（つまり１つのシリアルデータ出力チャネルにつき３つのＬＥＤドライバ９０に送信を行う）であるため３回ループ処理する。ケース１３の場合は、ドライバナンバ個数とは「２」となる（シリアルデータ出力チャネルｃｈ２は２つのＬＥＤドライバ９０に送信を行うため）。
【０１７２】
ステップＳ８０３では、演出制御ＣＰＵ２００はシリアルデータ出力チャネルｃｈ１，ｃｈ２におけるイネーブル信号ENABLEをＯＮとする。
そしてステップＳ８０４で演出制御ＣＰＵ２００は、シリアルデータ出力チャネルｃｈ１，ｃｈ２のシリアルデータDATAの出力として、最初の一送信単位（１バイト）のデータ送信、即ちこの場合は図２６のシリアルデータ構造に示した先頭１バイトのスレーブアドレスを送信出力する。シリアルデータ出力チャネルｃｈ１，ｃｈ２については並行して同時的にデータ送信を行う。
その一送信単位の送信を行ったら、ステップＳ８０５，Ｓ８０６で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
【０１７３】
シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了が確認されたら、演出制御ＣＰＵ２００はステップＳ８０７で、次の一送信単位（１バイト）のデータ送信として、データ設定開始レジスタアドレス（ＳＸ）（本例の場合１５ｈ）を送信出力する。この場合も、シリアルデータ出力チャネルｃｈ１，ｃｈ２について並行して同時的にデータ送信を行う。
その一送信単位の送信を行ったら、ステップＳ８０８，Ｓ８０９で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
【０１７４】
ステップＳ８０８，Ｓ８０９でシリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了が確認されたら、演出制御ＣＰＵ２００はステップＳ８１０で、一送信単位（１バイト）のデータ送信として、レジスタアドレス（ＳＸ＝１５ｈ）〜（ＳＸ＋２３＝２Ｃｈ）への書込データ（＝ＬＥＤ駆動データ）を送信出力する。
まずはレジスタアドレス（１５ｈ）への１バイトのＬＥＤ駆動データ送信を、シリアルデータ出力チャネルｃｈ１，ｃｈ２について並行して同時的に行う。そしてステップＳ８１１，Ｓ８１２で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
送信完了を確認したら、ステップＳ８１３で、合計２４バイト、つまりレジスタアドレス１５ｈ〜２ＣｈまでのＬＥＤ駆動データ送信完了が確認されるまで、１バイトずつ、ステップＳ８１０の送信を実行していく。従って、次はレジスタアドレス（１６ｈ）への１バイトのＬＥＤ駆動データ送信を、シリアルデータ出力チャネルｃｈ１，ｃｈ２について行う。さらにその送信確認後、レジスタアドレス（１７ｈ）へのＬＥＤ駆動データ送信が行われる。以降も、送信完了待機→レジスタアドレス（１８ｈ）へのＬＥＤ駆動データ送信→送信完了待機→レジスタアドレス（１９ｈ）へのＬＥＤ駆動データ送信→送信完了待機・・・→レジスタアドレス（２Ｃｈ）へのＬＥＤ駆動データ送信→送信完了待機という処理が行われていく。
【０１７５】
ＬＥＤ駆動データについて２４バイトの送信出力が完了したら、図２６の構造の１つのＬＥＤドライバ９０に対するシリアルデータ出力が完了したことになる。そこでステップＳ８１４でイネーブル信号ENABLEをオフとし、次に対象とするスレーブアドレスを＋１する。そしてループ処理の１回を終える。
図２７は、以上の１回のループ処理で送信されるデータを示している。シリアルデータ出力チャネルｃｈ１，ｃｈ２において図示のように並列的にスレーブアドレス、データ設定開始レジスタアドレス、ＬＥＤ駆動データＬＰＤＴ１，ＬＰＤＴ２・・・ＬＰＤＴ２４が順次送信される。
このような送信が行われ、ＬＥＤドライバ９０にＬＥＤ駆動データがセットされる。ＬＥＤドライバ９０側では、各レジスタ（１５ｈ〜２Ｃｈ）に書き込まれたＬＥＤ駆動データＬＰＤＴ１，ＬＰＤＴ２・・・ＬＰＤＴ２４に示される発光輝度（０ｈ〜Ｆｈの１６階調）基づいて、各出力端子９６−１〜９６−２４からの電流量が制御され、各出力端子９６−１〜９６−２４に接続された各系列のＬＥＤ１２０の発光が行われる。
【０１７６】
ケース１２の場合は、続いて２回目のループ処理として、ＬＥＤドライバ９０（ｗ２）、ＬＥＤドライバ９０（ｂ２）について、同様にステップＳ８０３〜Ｓ８１５の処理が行われる。さらにその後、３回目のループ処理として、ＬＥＤドライバ９０（ｗ３）、ＬＥＤドライバ９０（ｂ３）について、同様にステップＳ８０３〜Ｓ８１５の処理が行われる。その３回のループ処理で図２１のＬＥＤ駆動データ出力が完了する。
ケース１３の場合は、１回目のループ処理として、ＬＥＤドライバ９０（ｗ４）、ＬＥＤドライバ９０（ｂ４）について、ステップＳ８０３〜Ｓ８１５の処理が行われる。その後２回目のループ処理では、ＬＥＤドライバ９０（ｂ５）のみについてステップＳ８０３〜Ｓ８１５の処理が行われる。その２回のループ処理で図２１のＬＥＤ駆動データ出力が完了する。
以上により図２５Ｂに示したような、９個の各ＬＥＤドライバ９０へのシリアルデータ出力が実行される。なお、搭載されるＬＥＤドライバ９０の数や、１回の１ｍｓタイマ割込処理で送信するＬＥＤドライバ９０の数などが異なれば、当然ループ回数が異なる場合もある。
また以上の例は２つのシリアルデータ出力チャネルｃｈ１，ｃｈ２を用いる例で述べているが、３以上のシリアルデータ出力チャネルを利用する場合も、それらが並行して同時的にシリアルデータ送信が行われるようにすれば良い。
【０１７７】
以上の図２１の処理のように、本実施の形態では、演出制御ＣＰＵ２００は、第１系統（シリアルデータ出力チャネルｃｈ１）と第２系統（シリアルデータ出力チャネルｃｈ２）の駆動信号出力手段（枠ドライバ部６１と盤ドライバ部６２）には、一送信単位のシリアルデータを同時的に送信する。そして当該送信の完了後、次の一送信単位のシリアルデータを、第１系統と第２系統の駆動信号出力手段に対して略同時的に送信する。このような処理で、ＬＥＤ駆動データを各ＬＥＤドライバ９０へ送信していく。
これにより全体のシリアルデータ送信動作に要する時間を短縮でき、もって演出制御ＣＰＵ２００の処理負担を軽減できる。
【０１７８】
この理由を説明する。
図２８は演出制御ＣＰＵ２００がシリアルデータ送信に使用するクロック信号CLK、送信データ、ＴＤＲＥ（送信データエンプティフラグ）、及び送信データの送信データレジスタへの書込タイミングを示している。
送信データとは、上述のスレーブアドレス、データ設定開始レジスタアドレス、ＬＥＤ駆動データＬＰＤＴ１，ＬＰＤＴ２・・・ＬＰＤＴ２４に相当する。ここでは１送信単位としての８ビットをデータｄ０〜ｄ７として示している。
【０１７９】
演出制御ＣＰＵ２００は、図２１のステップＳ８０４，Ｓ８０７，Ｓ８１０のそれぞれで一送信単位の８ビットデータを送信する場合、各シリアルデータ出力チャネルｃｈ１，ｃｈ２における送信データレジスタに８ビットの送信データを書き込む。送信データレジスタへ書き込まれた送信データは、クロック信号CLKのタイミング毎に１ビットずつ送信出力される。
ここで、ＴＤＲＥは、送信データレジスタに送信データを書き込むと「０」となり、送信データレジスタに有効なデータが存在していることを示す。そして送信データレジスタのデータが実際に送信出力（送信用シフトレジスタへのロード）されて送信が開始されると「１」になり、送信データレジスタに有効なデータが存在しないことを示す。
従って演出制御ＣＰＵ２００の送信処理としては、ＴＤＲＥが「１」となったことを確認して、８ビットの送信データを送信データレジスタへ書き込み、その次の８ビットの送信データの書き込みは、次にＴＤＲＥが「１」となるまで待機する。即ち図２８に待機時間ＴＷとして示す期間は、次の送信データの処理ができないことになる。
【０１８０】
シリアルデータ送信に関し、従来は、１つのシリアルデータ出力チャネルから例えば第１系統の駆動信号出力手段に一送信単位（８ビット）のシリアルデータを送信し、当該送信の完了後、次の送信チャネルから第２系統の駆動信号出力手段に一送信単位（８ビット）のシリアルデータを送信していく、というように送信動作を行っていた。例えば図２１のステップＳ８０４〜Ｓ８０６に相当する処理は、従来通常は、
（ＳＴ１）ｃｈ１からスレーブアドレス出力（送信データレジスタへの書込）
（ＳＴ２）送信出力完了待機
（ＳＴ３）ｃｈ１からデータ設定開始レジスタアドレス出力（送信データレジスタへの書込）
（ＳＴ４）送信出力完了待機
（ＳＴ５）ｃｈ１からＬＥＤ駆動データＬＰＤＴ１出力（送信データレジスタへの書込）
（ＳＴ６）送信出力完了待機
（ＳＴ７）ｃｈ１からＬＥＤ駆動データＬＰＤＴ２出力
（ＳＴ８）送信出力完了待機
・・・中略・・・
（ＳＴ５１）ｃｈ１からＬＥＤ駆動データＬＰＤＴ２４出力
（ＳＴ５２）送信出力完了待機
（ＳＴ５３）ｃｈ２からスレーブアドレス出力
（ＳＴ５４）ｃｈ２送信出力完了待機
（ＳＴ５５）ｃｈ２からデータ設定開始レジスタアドレス出力
（ＳＴ５６）送信出力完了待機
（ＳＴ５７）ｃｈ２からＬＥＤ駆動データＬＰＤＴ１出力
（ＳＴ５８）送信出力完了待機
（ＳＴ５９）ｃｈ２からＬＥＤ駆動データＬＰＤＴ２出力
（ＳＴ６０）送信出力完了待機
・・・中略・・・
（ＳＴ１０３）ｃｈ２からＬＥＤ駆動データＬＰＤＴ２４出力
（ＳＴ１０４）送信出力完了待機
というように行っていた。
この場合、シリアルデータ出力チャネルｃｈ１，ｃｈ２のそれぞれで一送信単位の送信毎に待ち時間が発生し、送信処理効率が悪い。
これに対して本実施の形態では、
（Ｓ８０４）ｃｈ１、ｃｈ２からスレーブアドレス出力（送信データレジスタへの書込）
（Ｓ８０５，Ｓ８０６）ｃｈ１、ｃｈ２送信出力完了待機
というように、同時的に両シリアルデータ出力チャネルｃｈ１，ｃｈ２での送信処理を行うようにすることで、処理が効率化される。
ステップＳ８０７〜Ｓ８０９の処理、及びステップＳ８１０〜Ｓ８１２の処理についても同様である。
【０１８１】
そして、１つのＬＥＤドライバ９０に対する送信は１ループ処理において１つの送信チャネル毎に２６バイト分（２６回の送信データレジスタへの書込）となる。各シリアルデータ出力チャネルｃｈ１，ｃｈ２について、同時的な処理を実行しなければ、総待機時間は、１回のループ処理期間でほぼ（５２×ＴＷ）となる。これが本実施の形態の場合、１回のループ処理期間でのほぼ（２６×ＴＷ）と、著しく短縮できる。
１ｍｓタイマ割込処理で行われるＬＥＤ駆動データ出力処理において、このようにシリアルデータ出力処理が効率化できることで、演出制御ＣＰＵ２００の処理負担は大きく軽減される。
【０１８２】
また本実施の形態では、シリアルデータ送信されるＬＥＤ駆動データは、発光輝度（階調）を示すデータとされ、上記のように例えば４ビットで１６階調の発光駆動を実現する。このような階調制御を可能とすることで、より多様な演出効果を実現することができる。
本実施の形態では１６階調とする例を述べたが、もちろんより多階調としても良い。
【０１８３】
また本実施の形態のパチンコ遊技機１は、枠部（前枠２、外枠４及びガラス扉５）と、この枠部に取り付けられる遊技盤部（遊技盤３）とを備えている。そして第１系統の駆動信号出力手段（枠ドライバ部６１）は、前枠２に設けられた演出手段である装飾ランプ部６３（装飾ランプ２０ｗ）にＬＥＤ駆動信号を出力する複数のドライバ回路（ＬＥＤドライバ９０）で構成され、第２系統の駆動信号出力手段（盤ドライバ部６２）は、遊技盤３に設けられた演出手段である装飾ランプ部６４（装飾ランプ２０ｂ）にＬＥＤ駆動信号を出力する複数のドライバ回路（ＬＥＤドライバ９０）で構成されている。
このような構成により、枠ドライバ部６１のＬＥＤドライバ９０はすべて枠側の装飾ランプ２０ｗに対応し、また盤ドライバ部６２のＬＥＤドライバ９０はすべて盤側の装飾ランプ２０ｂに対応することとなり、これにより配線の容易化、効率化、演出制御設定の容易性などを実現できる。
【０１８４】
ところで本実施の形態では、ステップＳ８１０では、上述のように４ビット構造とされている点灯データを８ビットに変換したものを一送信単位のシリアルデータとして出力している。
このビット変換について図２９で説明する。図２９Ａは１つのＬＥＤドライバ９０に送信する４×２４ビットの点灯データの例を示している。即ち図２５Ａの出力データバッファの１マス分に相当するデータの例である。先頭の「Ｆ８ｈ」（図では「ｈ」を省略）は、ＬＥＤドライバ９０のレジスタアドレス１５ｈ、１６ｈに送信すべき点灯データである、つまり「Ｆｈ」はＬＥＤドライバ９０のレジスタアドレス１５ｈに書き込む、出力端子９６−１についての階調値としての点灯データであり、「８ｈ」は、レジスタアドレス１６ｈに書き込む、出力端子９６−２についての階調値としての点灯データである。次の「０Ｆｈ」は、同様にレジスタアドレス１７ｈ、１８ｈに対応する。以下同様で、最後の「００ｈ」は、レジスタアドレス２Ｂｈ、２Ｃｈに対応する。
【０１８５】
ここで図２９Ａの「Ｆ８ｈ」「０Ｆｈ」・・・「００ｈ」のように、演出制御ＣＰＵ２００の内部処理単位としての８ビット単位で区切って考えた場合に、上位４ビット（例えば「Ｆ８ｈ」のうちの「Ｆｈ」）は、奇数レジスタアドレス（例えばレジスタアドレス１５ｈ）に対する点灯データで、下位４ビット（例えば「Ｆ８ｈ」のうちの「８ｈ」）は偶数レジスタアドレス（例えばレジスタアドレス１６ｈ）に対する点灯データとなる。
なお、ここでの「奇数レジスタアドレス」「偶数レジスタアドレス」というのはＬＥＤドライバ９０のレジスタ設計に応じた一例である。あくまで送信先を、レジスタアドレス１５ｈ〜２Ｃｈとした場合として便宜的に述べているにすぎない。
この場合に、奇数レジスタアドレス（１５ｈ、１７ｈ・・・２Ｂｈ）への点灯データについては、演出制御ＣＰＵ２００は、８ビットデータの下位４ビットをマスクして、それをＬＥＤドライバ９０に送信する。一方、偶数レジスタアドレス（１６ｈ、１８ｈ・・・２Ｃｈ）への点灯データについては、演出制御ＣＰＵ２００は、８ビットデータの上位４ビットをマスクして、それを４ビットシフトしたものをＬＥＤドライバ９０に送信する。つまり結果的に４ビットの点灯データを８ビットに変換して送信する。
【０１８６】
このビット変換として、「Ｆ８ｈ」の場合を図２９Ｂ、図２９Ｃに示した。
図２９Ｂは、点灯データ「Ｆｈ」をレジスタアドレス１５ｈに送信する場合の処理を示している。図２５Ａの出力データバッファから取り出す点灯データは、各４ビットの２つ点灯データである「Ｆ８ｈ」＝「１１１１１０００」となる。このデータに対し、下位４ビットをマスクする。例えばマスクデータ「Ｆ０ｈ」＝「１１１１００００」を用いてアンドをとる。これにより、図示のように、レジスタアドレス１５ｈに送信するシリアルデータ「１１１１００００」＝「Ｆ０ｈ」が得られることになる。この場合、出力端子９６−１からは最大階調値（Ｆ０ｈ）の駆動電流出力が行われることとなる。
一方、図２９Ｃは、点灯データ「８ｈ」をレジスタアドレス１６ｈに送信する場合の処理を示している。上記のとおり図２５Ａの出力データバッファから取り出した点灯データは「Ｆ８ｈ」＝「１１１１１０００」である。このデータに対し、上位４ビットをマスクする。例えばマスクデータ「０Ｆｈ」＝「００００１１１１」を用いてアンドをとる。これにより、図示のように「００００１０００」というデータが得られる。さらにこの場合、当該データを４ビットシフトすることで、レジスタアドレス１６ｈに送信するシリアルデータ「１０００００００」＝「８０ｈ」が得られることになる。この場合、出力端子９６−１からは中間的な階調値（８０ｈ）の駆動電流出力が行われることとなる。
【０１８７】
以上のように、本実施の形態では、演出制御部５１は、例えば演出制御ＲＯＭ２０１に第１ビット数（例えば８ビット）より少ないビット数である第２ビット数（例えば４ビット）の発光輝度情報（点灯データ）をランプデータテーブルなどの形式で記憶する。そして演出制御ＣＰＵ２００は、第２ビット数の発光輝度情報を、第１ビット数に変換してＬＥＤ駆動データを生成し、そのＬＥＤ駆動データを発光駆動信号出力手段であるＬＥＤドライバ９０にシリアルデータとして送信する。
ＬＥＤドライバ９０のレジスタアドレス１５ｈ〜２Ｃｈが、８ビットのＰＷＭデータを入力可能とされていることは、８ビットの点灯データとすれば２５６階調のＬＥＤ発光制御が可能である。しかしながら、本実施の形態の遊技機の発光演出に用いる装飾ランプ２０ｗ、２０ｂに対する制御としては、２５６階調は必要ではない。具体的には「００ｈ」「１０ｈ」「２０ｈ」・・・「Ｆ０ｈ」の１６階調で十分である。
そこで本実施の形態では、点灯データを４ビット構造として、１６階調表現を行うようにする。そしてＬＥＤドライバ９０への出力時には、４ビットを８ビットに変換して送信する。
【０１８８】
このようにすることで、演出制御部５１は内部ＲＯＭ（演出制御ＲＯＭ２０１）に記憶する点灯データのデータ容量を大幅に削減でき、メモリ容量消費を抑制できることになる。
また、近年の汎用的なＬＥＤドライバは、２５６階調などの高性能タイプのものの方が生産量が多く、価格的にも有利であることが多い。そのため、例えば１６階調が必要な場合に、１６階調の制御能力を持つＬＥＤドライバを採用するよりも、２５６階調のＬＥＤドライバを採用する方が、コストメリットが得られ、又、安定的入手性もよい。これにより製造上及びコスト的なメリットが得られる。
また上述したように、演出制御ＣＰＵ２００は、４ビットの点灯データを８ビットにおける上位４ビットに配置して、８ビットのＬＥＤ駆動データ（送信するシリアルデータ）を生成する。
このように上位４ビット配置により、１６階調のＬＥＤ駆動データを生成でき、またその処理は例えば図２９Ｂ、図２９Ｃの例のように、非常に簡易な処理である。このためビット数変換の処理負担はほとんど問題とならない。
【０１８９】
なお上記例では、８ビットに変換した点灯データを「００ｈ」「１０ｈ」「２０ｈ」・・・「Ｆ０ｈ」とするとしたが、次のような例も考えられる。
この場合、４ビットの点灯データが「Ｆｈ」のときの、８ビットのシリアルデータ「Ｆ０ｈ」が制御上の最大輝度となるが、ＬＥＤドライバ９０は「ＦＦｈ」まで対応できる。そこで、８ビットのシリアルデータの「Ｆ０ｈ」の下位４ビットを「１１１１」に変換して「ＦＦｈ」（＝１１１１１１１１）を送信するようにしてもよい。つまり送信するシリアルデータは「００ｈ」「１０ｈ」「２０ｈ」・・・「Ｅ０ｈ」「ＦＦｈ」とする。このようにすると、ＬＥＤドライバ９０の発光駆動能力上での最大輝度の発光を実行させることが可能となる。
また、「００ｈ」以外の「１０ｈ」「２０ｈ」・・・「Ｆ０ｈ」について、下位４ビットを「１１１１」に変換し、「１Ｆｈ」「２Ｆｈ」・・・「ＦＦｈ」として送信してもよい。これにより、各階調での発光輝度を上げ、演出効果を向上させることができる。
また、ここまでは４ビットの点灯データを８ビットとする例で述べたが、これは一例である。第１ビット数（例えば８ビット）はＬＥＤドライバ側の設計に応じて決められる。また第２ビット数（例えば４ビット）は、表現したい階調に応じて設定すればよい。例えば２階調なら１ビット、４階調なら２ビット、８階調なら３ビット・・・とすれば良い。
また本実施の形態では、シリアルデータ出力としてＬＥＤ駆動データ送信を行うものであるが、この第２ビット数の点灯データを第１ビット数に変換して発光駆動ドライバに送信するという処理は、パラレルデータ出力、或いは無線送信出力などにも応用でき、その場合に送信先の階調能力と、求める階調表現の差がある場合に、送信元のデータ記憶容量の低減効果を得ることができる。
【０１９０】
［４−８：ＬＥＤドライバ初期化処理］
図９のステップＳ２０５では割込みカウンタの値が「０」〜「３」であるケース０〜３でＬＥＤドライバ９０の初期化を行うと述べたが、これは、使用しないレジスタアドレス００ｈ〜１４ｈのレジスタにデフォルト値をセットする送信処理となる。
ここで、上述のようにＬＥＤドライバ９０のレジスタアドレス１５ｈ〜２Ｃｈは、それぞれ出力端子９６−１〜９６−２４に対応する点灯データ（階調値）が書き込まれるレジスタとされているが、レジスタアドレス００ｈ〜１４ｈの各レジスタは以下のようにデータが書き込まれる。
【０１９１】
００ｈ：８ビット中の３ビットでＰＷＭの周期設定データがセットされ、１ビットでマスタ／スレーブ設定データがセットされる。
０１ｈ：８ビット中の３つのビットで１階調あたりのフェードインスピード、３つのビットでフェードアウトスピードの各設定データがセットされる。
０２ｈ：８ビット中の５ビットで赤ＬＥＤの電流値データがセットされる。
０３ｈ：８ビット中の５ビットで緑ＬＥＤの電流値データがセットされる。
０４ｈ：８ビット中の５ビットで青ＬＥＤの電流値データがセットされる。
０５ｈ：８ビット中の６つのビットで、出力端子９６−１〜９６−６のオン／オフ設定データがセットされる。
０６ｈ：８ビット中の６つのビットで、出力端子９６−７〜９６−１２のオン／オフ設定データがセットされる。
０７ｈ：８ビット中の６つのビットで、出力端子９６−１３〜９６−１８のオン／オフ設定データがセットされる。
０８ｈ：８ビット中の６つのビットで、出力端子９６−１９〜９６−２４のオン／オフ設定データがセットされる。以上のレジスタアドレス０５ｈ〜０８ｈのレジスタは、出力端子９６−１〜９６−２４のそれぞれについてのオン／オフ設定部となる。
０９ｈ〜０Ｅｈ：それぞれのレジスタ（８ビット）に、４つの出力端子について、各２ビットで「ＰＷＭ出力優先」「フェード出力優先」「強制オン／オフ出力優先」のいずれかが選択設定される。０９ｈ〜０Ｅｈの６個のレジスタにより２４個の出力端子９６−１〜９６−２４に対応する。
０Ｆｈ〜１１ｈ：３つのレジスタ（合計２４ビット）で、２４個の出力端子９６−１〜９６−２４のフェード機能の有効／無効を設定する。
１２ｈ〜１４ｈ：３つのレジスタ（合計２４ビット）で、２４個の出力端子９６−１〜９６−２４の強制オン／オフ設定をする。
【０１９２】
ＬＥＤドライバ９０の初期化処理では、これらのレジスタ（００ｈ〜１４ｈ）にデフォルト値を設定する。デフォルト値は以下のとおりである。なお「０ｘ」は「ｈ」と同様、１６進表記を示す。レジスタアドレスの値と、データ値（デフォルト値）の区別のため、「０ｘ」と「ｈ」を使い分けている。
００ｈ：０ｘ００・・・ＰＷＭ周期の初期設定
０１ｈ：０ｘ００・・・フェードイン・フェードアウトのスロープなし
０２ｈ：０ｘ１Ｆ・・・赤ＬＥＤ電流値の初期設定
０３ｈ：０ｘ１Ｆ・・・緑ＬＥＤ電流値の初期設定
０４ｈ：０ｘ１Ｆ・・・青ＬＥＤ電流値の初期設定
０５ｈ：０ｘ７７・・・出力端子９６−１〜９６−６のオン設定
０６ｈ：０ｘ７７・・・出力端子９６−７〜９６−１２のオン設定
０７ｈ：０ｘ７７・・・出力端子９６−１３〜９６−１８のオン設定
０８ｈ：０ｘ７７・・・出力端子９６−１９〜９６−２４のオン設定
０９ｈ：０ｘ００・・・ＰＷＭ出力優先
０Ａｈ：０ｘ００・・・ＰＷＭ出力優先
０Ｂｈ：０ｘ００・・・ＰＷＭ出力優先
０Ｃｈ：０ｘ００・・・ＰＷＭ出力優先
０Ｄｈ：０ｘ００・・・ＰＷＭ出力優先
０Ｅｈ：０ｘ００・・・ＰＷＭ出力優先
０Ｆｈ：０ｘ００・・・フェード機能無効
１０ｈ：０ｘ００・・・フェード機能無効
１１ｈ：０ｘ００・・・フェード機能無効
１２ｈ：０ｘ００・・・強制オン／オフ設定を全てオフ
１３ｈ：０ｘ００・・・強制オン／オフ設定を全てオフ
１４ｈ：０ｘ００・・・強制オン／オフ設定を全てオフ
【０１９３】
以上のようなデフォルト値の設定を、図９の１ｍｓタイマ割込処理のステップＳ２０５（ケース０〜３）で各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）に対して行う。
図３０に、ＬＥＤドライバ初期化処理の一例を示している。この処理は、割込みカウンタ＝０〜３のときに呼び出される処理となる。
また各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）に対して、数回（例えば４回）に分けて初期化を行う。例えば１回の１ｍｓタイマ割込処理のステップＳ２０５で、３個又は２個のＬＥＤドライバ９０に対して初期化を行うようにされる。
【０１９４】
図３０は１つのＬＥＤドライバ９０に対する初期化処理として示している。
ステップＳ９０１で演出制御ＣＰＵ２００は、割込みカウンタの値（ケース０〜１５のいずれか）に応じて処理分けを行う。ケース０〜３のいずれかであれば、初期化を行うＬＥＤドライバ９０を特定し、そのＬＥＤドライバ９０に対してステップＳ９０２以下の処理に進むことになる。ケース０〜３以外では、初期化は行わないためステップＳ９０２以降の処理は行われない。
【０１９５】
あるＬＥＤドライバ９０に対して初期化を行う場合は、演出制御ＣＰＵ２００はステップＳ９０２で、そのＬＥＤドライバ９０に対応してイネーブル信号（ENABLE）をオンとする。そしてステップＳ９０２で、当該対象のＬＥＤドライバ９０のスレーブアドレスを出力する。
さらに演出制御ＣＰＵ２００はステップＳ９０４で、データ設定開始レジスタアドレスを出力する。この場合、レジスタアドレス「００ｈ」〜「１４ｈ」への書き込みとなるため、データ設定開始レジスタアドレス＝００ｈとする。
そして演出制御ＣＰＵ２００はステップＳ９０５で、順次各レジスタアドレス「００ｈ」〜「１４ｈ」に対応するデフォルト値のデータ送信を行う。この処理で、対象としているＬＥＤドライバ９０の各レジスタアドレス「００ｈ」〜「１４ｈ」に上述のデフォルト値が書き込まれる。つまりそのＬＥＤドライバ９０は初期設定される。
以上が完了したら、ステップＳ９０６でイネーブル信号（ENABLE）をオフとし、ステップＳ９０７でスレーブアドレスを＋１する。つまり次のＬＥＤドライバ９０を指定できる状態とする。そして１つのＬＥＤドライバ９０に対する初期化処理を終える。
【０１９６】
ここで本実施の形態の場合、上述してきたようにシリアルデータ出力チャネルｃｈ１，ｃｈ２としての２系統のシリアルデータ出力を行う。
図３０は１つのＬＥＤドライバ９０に対する初期化処理として示したが、この図３０の処理により、例えば９個の各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）について順次１つずつ初期化を行っても良い。例えば１ｍｓタイマ割込処理のケース０のときにＬＥＤドライバ９０（ｗ１，ｗ２）、ケース１のときにＬＥＤドライバ９０（ｗ３，ｗ４）、ケース２のときにＬＥＤドライバ９０（ｂ１，ｂ２）、ケース３のときにＬＥＤドライバ９０（ｂ３，ｂ４，ｂ５）として処理を割り当てることも可能である。
【０１９７】
しかし、シリアルデータ出力チャネルｃｈ１，ｃｈ２を用いて略同時的な送信を行うことで、枠ドライバ部６１、盤ドライバ部６２の各ＬＥＤドライバ９０（ｗ１〜ｗ４、ｂ１〜ｂ５）についての初期化処理を効率化できる。即ち上述したＬＥＤ駆動データ送信と同様の手法を採ることができる。その場合の処理例を図３１に示す。
なお、例えば図２５ＢのＬＥＤ駆動データの出力の例のように、初期化する各ＬＥＤドライバ９０のタイミングを割り当てるとする。
即ち、図２５Ｂのケース１２を、例えばケース０と考え、１ｍｓタイマ割込処理のステップＳ２０５のケース０では、枠ドライバ部６１のＬＥＤドライバ９０（ｗ１，ｗ２，ｗ３）と、盤ドライバ部６２のＬＥＤドライバ９０（ｂ１，ｂ２，ｂ３）について初期化データの送信を行う。ＬＥＤドライバ９０のｗ１とｂ１、ｗ２とｂ２、ｗ３とｂ３に対する送信は同時的に行われる。
また、図２５Ｂのケース１３を、例えばケース１と考え、ケース１では、枠ドライバ部６１のＬＥＤドライバ９０（ｗ４）と、盤ドライバ部６２のＬＥＤドライバ９０（ｂ４，ｂ５）に初期化データの送信を行う。ＬＥＤドライバ９０のｗ４とｂ４に対する送信は同時的に行われる。
【０１９８】
図３１の処理として、演出制御ＣＰＵ２００はステップＳ９５１で、シリアルデータ出力チャネルｃｈ１、ｃｈ２のスレーブアドレスを特定する。上記の図２５Ｂと同様とする例に則して言えば、ケース０の場合は「ｗ１，ｂ１」を示すアドレスコードであり、ケース１の場合は、「ｗ４，ｂ４」を示すアドレスコードである。
【０１９９】
そしてループ処理ＬＰ５として、ドライバナンバ個数分、ステップＳ９５２〜Ｓ９６４の処理をループして実行する。
図２５Ｂと同様とする例の場合、ケース０のときは、ドライバナンバ個数は「３」（つまり１つのシリアルデータ出力チャネルにつき３つのＬＥＤドライバ９０に送信を行う）であるため３回ループ処理する。ケース１の場合は、ドライバナンバ個数とは「２」となる（シリアルデータ出力チャネルｃｈ２は２つのＬＥＤドライバ９０に送信を行うため）。
【０２００】
ステップＳ９５２では、演出制御ＣＰＵ２００はシリアルデータ出力チャネルｃｈ１，ｃｈ２におけるイネーブル信号ENABLEをＯＮとする。
そしてステップＳ９５３で演出制御ＣＰＵ２００は、シリアルデータ出力チャネルｃｈ１，ｃｈ２のシリアルデータDATAの出力として、最初の一送信単位（１バイト）のデータ送信、即ちこの場合は図２６のシリアルデータ構造に示した先頭１バイトのスレーブアドレスを送信出力する。シリアルデータ出力チャネルｃｈ１，ｃｈ２については並行して同時的にデータ送信を行う。
その一送信単位の送信を行ったら、ステップＳ９５４，Ｓ９５５で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
【０２０１】
シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了が確認されたら、演出制御ＣＰＵ２００はステップＳ９５６で、次の一送信単位（１バイト）のデータ送信として、データ設定開始レジスタアドレス（ＳＸ）を送信出力する。レジスタアドレス００ｈ〜１４ｈへの書込であるため、ＳＸ＝００ｈとする。そしてこの場合も、シリアルデータ出力チャネルｃｈ１，ｃｈ２について並行して同時的にデータ送信を行う。
その一送信単位の送信を行ったら、ステップＳ９５７，Ｓ９５８で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
【０２０２】
ステップＳ９５７，Ｓ９５８でシリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了が確認されたら、演出制御ＣＰＵ２００はステップＳ９５９で、一送信単位（１バイト）のデータ送信として、レジスタアドレス（００ｈ）〜（１４ｈ）へのデフォルトデータを送信出力する。
まずはレジスタアドレス（００ｈ）への１バイトのデフォルトデータ送信を、シリアルデータ出力チャネルｃｈ１，ｃｈ２について並行して同時的に行う。そしてステップＳ９６０，Ｓ９６１で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２についての送信出力完了を待機する。
送信完了を確認したら、ステップＳ９６２でレジスタアドレス００ｈ〜１４ｈまでのデフォルトデータ送信完了が確認されるまで、１バイトずつ、ステップＳ９５９の送信を実行していく。従って、次はレジスタアドレス（０１ｈ）への１バイトのデフォルトデータ送信を、シリアルデータ出力チャネルｃｈ１，ｃｈ２について行う。さらにその送信確認後、レジスタアドレス（０２ｈ）へのデフォルトデータ送信が行われる。以降も、送信完了待機→レジスタアドレス（０３ｈ）へのデフォルトデータ送信→送信完了待機→レジスタアドレス（０４ｈ）へのデフォルトデータ送信→送信完了待機・・・→レジスタアドレス（１４ｈ）へのデフォルトデータ送信→送信完了待機という処理が行われていく。
【０２０３】
レジスタアドレス００ｈ〜１４ｈへのデフォルトデータの送信出力が完了したら、ステップＳ９６３でイネーブル信号ENABLEをオフとし、次に対象とするスレーブアドレスを＋１する。そしてループ処理の１回を終える。
【０２０４】
ケース０の場合は、続いて２回目のループ処理として、ＬＥＤドライバ９０（ｗ２）、ＬＥＤドライバ９０（ｂ２）について、同様にステップＳ９５２〜Ｓ９６４の処理が行われる。さらにその後、３回目のループ処理として、ＬＥＤドライバ９０（ｗ３）、ＬＥＤドライバ９０（ｂ３）について、同様にステップＳ９５２〜Ｓ９６４の処理が行われる。その３回のループ処理で図３１のＬＥＤドライバ初期化処理が完了する。
ケース１の場合は、１回目のループ処理として、ＬＥＤドライバ９０（ｗ４）、ＬＥＤドライバ９０（ｂ４）について、ステップＳ９５２〜Ｓ９６４の処理が行われる。その後２回目のループ処理では、ＬＥＤドライバ９０（ｂ５）のみについてステップＳ９５２〜Ｓ９６４の処理が行われる。その２回のループ処理で図３１のＬＥＤドライバ初期化処理が完了する。
以上により図２５Ｂに示したような、９個の各ＬＥＤドライバ９０へのデフォルトデータの出力による初期化が実行される。なお、搭載されるＬＥＤドライバ９０の数や、１回の１ｍｓタイマ割込処理で送信するＬＥＤドライバ９０の数などが異なれば、当然ループ回数が異なる場合もある。
また以上の例は２つのシリアルデータ出力チャネルｃｈ１，ｃｈ２を用いる例で述べているが、３以上のシリアルデータ出力チャネルを利用する場合も、それらが並行して同時的にシリアルデータ（デフォルトデータ）送信が行われるようにすれば良い。
【０２０５】
以上の図３１の処理のように、ＬＥＤドライバ９０の初期化処理に関しても、第１系統（シリアルデータ出力チャネルｃｈ１）と第２系統（シリアルデータ出力チャネルｃｈ２）の駆動信号出力手段（枠ドライバ部６１と盤ドライバ部６２）について、一送信単位のシリアルデータを同時的に送信する。そして当該送信の完了後、次の一送信単位のシリアルデータを、第１系統と第２系統の駆動信号出力手段に対して略同時的に送信する。このような処理で、ＬＥＤドライバ９０の初期化処理を行うことで、初期化処理全体に要する時間を短縮でき、もって演出制御ＣＰＵ２００の処理負担を軽減できる。
【０２０６】
本実施の形態では以上のように初期設定データとしてのデフォルトデータのシリアルデータ送信により各ＬＥＤドライバ９０の初期化を行うが、これにより、各ＬＥＤドライバ９０は、ＬＥＤ駆動データで示される階調値に応じて、出力端子９６−１〜９６−２４に接続されたＬＥＤ１２０の消灯、点灯、及び点灯時の発光輝度を実現するための発光駆動信号を出力する状態に設定されることとなる。
つまり出力端子９６−１〜９６−２４についてのオン／オフ設定部であるレジスタアドレス０５ｈ〜０８ｈに対して初期化処理により常時、上述のデフォルト値（＝オンデータ）がセットされ、出力端子９６−１〜９６−２４は全てオンとされ、さらにレジスタアドレス０９ｈ〜１４ｈのデフォルト値設定により、ＰＷＭ優先とされ、フェード機能、強制オン／オフ機能は無効化される。このため各ＬＥＤドライバ９０は、階調値設定部であるレジスタアドレス１５ｈ〜２Ｃｈに書き込まれた階調値（点灯データの値）に基づくＰＷＭ制御を行って、出力端子９６−１〜９６−２４からの階調に応じた電流量の発光駆動電流を流す状態となる。
【０２０７】
即ち、図９のステップＳ２０５のケース１２〜ケース１５の場合に行われる図２１のＬＥＤ駆動データ出力処理では、レジスタアドレス１５ｈ〜２Ｃｈに書き込まれるＬＥＤ駆動データとしての「００ｈ」「１０ｈ」「２０ｈ」・・・「Ｆ０ｈ」の１６階調のデータの送信が行われるが、このＬＥＤ駆動データ送信時には「００ｈ」「１０ｈ」「２０ｈ」・・・「Ｆ０ｈ」の１６階調のデータを送信するのみで、消灯（００ｈ）から階調制御された点灯（１０ｈ〜Ｆ０ｈ）が実行されることとなる。
これを演出制御ＣＰＵ２００側から見ると、０ｈ〜Ｆｈの点灯データにより、消灯、点灯、及び点灯時の発光輝度制御の全てが実行できるということである。
これにより演出制御ＣＰＵ２００では、ＬＥＤ発光制御を簡易な点灯データ設定で実現可能であり、処理負担は少なく、また制御のために必要なデータ容量も点灯データのみと少なくでき、演出制御ＲＯＭ２０１等の容量消費の低減も実現される。
【０２０８】
まとめると、演出制御部５１は、オン／オフ設定部であるレジスタアドレス０５ｈ〜０８ｈが常時オン設定となる処理を行うとともに、遊技状態に応じて、階調値を含むＬＥＤ駆動データを生成してＬＥＤドライバ９０に送信し、階調値を階調値設定部であるレジスタアドレス１５ｈ〜２Ｃｈに設定する処理を行うことで、ＬＥＤ駆動データ送信時には「００ｈ」・・・「Ｆ０ｈ」の１６階調のデータを送信するのみで、消灯から階調制御された点灯までを実行制御できる。
なお上記例では、実施の形態ではオン／オフ設定部であるレジスタアドレス０５ｈ〜０８ｈが常時オン設定とする処理として、１６ｍｓ毎の初期化処理を行うが、１６階調のデータを送信するのみで消灯から階調制御された点灯までを制御するには、あくまでレジスタアドレス０５ｈ〜０８ｈが常時オン設定とされていればよい。従って例えば演出制御ＣＰＵ２００は、例えば電源投入時の最初に初期化処理を行ってレジスタアドレス０５ｈ〜０８ｈをオン設定とするのみでもよい。これもオン／オフ設定部が常時オン設定となる処理の一例である。
【０２０９】
また以上の実施の形態では、ＬＥＤドライバ９０は、遊技状態に応じて変化するＬＥＤ駆動データが設定される第１レジスタ（レジスタアドレス１５ｈ〜２Ｃｈ）と、ＬＥＤドライバ９０の動作を規定する、遊技状態に応じては変化しない固定データ（初期化データ）が設定される第２レジスタ（レジスタアドレス００ｈ〜１４ｈ）とを有する。そして演出制御部５１は、所定周期毎（１ｍｓタイマ割込処理のケース１２〜１５の機会毎）に第１レジスタのＬＥＤ駆動データの設定を行うとともに、所定周期毎（１ｍｓタイマ割込処理のケース０〜３の機会毎）に第２レジスタの固定データの設定を行う。個々のＬＥＤドライバ９０から見れば、１６ｍｓ毎に第２レジスタに初期化データが設定され、同じく１６ｍｓ毎に第１レジスタにＬＥＤ駆動データ（階調値）が設定される。
【０２１０】
本実施の形態の場合、遊技中にはレジスタアドレス００ｈ〜１４ｈの設定値は、常時、上述のデフォルト値である。従って初期化処理として上述のデフォルト値を第２レジスタに設定する処理は、起動時の１回などでもよい。ところが、ノイズ等でレジスタアドレス００ｈ〜１４ｈの設定値が破壊・消失されることがあり、すると、ＬＥＤドライバ９０の動作が、ＬＥＤ駆動データで意図した動作とはならない場合が生ずる。これに対して本実施の形態では、初期化処理を周期的に行うことで、レジスタアドレス００ｈ〜１４ｈの設定値が破壊された場合でも、直ぐに修復し、本来の初期化状態とできる。それにより、常時、ＬＥＤ駆動データに基づく正確なＬＥＤ発光動作が実行される。このようにＬＥＤ駆動データに基づく発光駆動信号の出力動作を安定的に正常な状態に保つことができる。
【０２１１】
＜５．第２の実施の形態＞
続いて、第２の実施の形態としてのドライバ構成を説明する。なお第１の実施の形態と同様となる構成や処理については省略し、異なる点のみ説明する。
図３２には、第１の実施の形態における図４と同様の形式で、演出制御部５１（演出制御ＣＰＵ２００）と、ＬＥＤドライバ１３０の接続構成を示した。
なお、この例は、演出制御ＣＰＵ２００は３つのシリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３を使用する例とした。ＬＥＤドライバ１３０としては、３系統（枠ドライバ部６１、盤ドライバ部６２Ａ、６２Ｂ）設けられる。
シリアルデータ出力チャネルｃｈ１によって、枠ドライバ部６１としての複数のＬＥＤドライバ１３０に対するシリアルデータ送信が行われる。
シリアルデータ出力チャネルｃｈ２によって、盤ドライバ部６２Ａとしての複数のＬＥＤドライバ１３０に対するシリアルデータ送信が行われる。
シリアルデータ出力チャネルｃｈ３によって、盤ドライバ部６２Ｂとしての複数のＬＥＤドライバ１３０に対するシリアルデータ送信が行われる。
【０２１２】
各シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３の信号線としては、ラッチ信号LATCHを供給するラッチ信号線、クロック信号CLKを供給するクロック線、イネーブル信号ENABLEを供給するイネーブル信号線、演出駆動データとしてのシリアルデータDATAを供給するデータ線が設けられている。
ラッチ信号LATCH、クロック信号CLK、イネーブル信号ENABLE線は、枠ドライバ部６１（或いは盤ドライバ部６２Ａ、６２Ｂ）を構成する複数のＬＥＤドライバ１３０に対して並列に供給される。一方、シリアルデータDATAは、枠ドライバ部６１（或いは盤ドライバ部６２Ａ、６２Ｂ）を構成する複数のＬＥＤドライバ１３０のうちの先頭のＬＥＤドライバ１３０に供給され、順次後段のＬＥＤドライバ１３０に転送していくようにされる。
即ち１つの系統内の各ＬＥＤドライバ１３０は、シリアルデータDATAの入出力が順次直列接続されており、演出制御ＣＰＵ２００からのシリアルデータDATAは、１つの系統内の先頭のＬＥＤドライバ１３０から終端のＬＥＤドライバ１３０に順次転送され、各ＬＥＤドライバ１３０は、演出制御ＣＰＵ２００からのラッチ信号に基づいて、シリアルデータDATAを取り込む構成とされている。
【０２１３】
枠ドライバ部６１及び盤ドライバ部６２Ａ、６２Ｂにおける各ＬＥＤドライバ１３０としては、例えば１６ビット定電流ＬＥＤドライバである「ＢＤ７８５１ＦＰ（ローム株式会社製）」を用いることができ、例えば１６個の定電流出力端子を備える。
従って１つのＬＥＤドライバ１３０によっては、最大１６系列のＬＥＤ駆動電流を出力することができる。１つの「系列」とは、１つの電流出力端子に対して直列又は並列で接続される１又は複数のＬＥＤの群を指している。
枠ドライバ部６１におけるＬＥＤドライバ１３０の数は、枠側に配置されるＬＥＤ系列数（装飾ランプ２０ｗの系列数）によって決められる。
また盤ドライバ部６２Ａ、６２ＢにおけるＬＥＤドライバ１３０の数は、盤側に配置されるＬＥＤ系列数（装飾ランプ２０ｂの系列数）によって決められる。
【０２１４】
図３３にＬＥＤドライバ１３０の要部の概略構成例を示す。
ＬＥＤドライバ９０は、１６ビットシフトレジスタ１３１、ラッチ部１３２、出力ゲート部１３３及び定電流出力端子１３９−１〜１３９−１６を備える。
定電流出力端子１３９−１〜１３９−１６の全部（又は一部）には１６系列のＬＥＤ１２０が接続される。なお、図は簡略化して１系列の定電流出力端子１３９に１つのＬＥＤ１２０が接続された状態を示しているが、１系列の定電流出力端子１３９に、複数のＬＥＤが接続される構成（例えば直列接続）も当然あり得る。
【０２１５】
このＬＥＤドライバ１３０には、シフトレジスタ１３１に対し、シリアルデータDATAが端子１３４に供給され、またクロック信号CLKが端子１３５に入力される。
なお、各系統の先頭のＬＥＤドライバ１３０の端子１３４には、演出制御ＣＰＵ２００からのシリアルデータDATAが供給される。各系統の２つ目以降のＬＥＤドライバ１３０の端子１３４は、１つ前のＬＥＤドライバ１３０の端子１３６が接続される。
シフトレジスタ１３１は例えば１６段のＤフリップフロップ回路から成り、クロック信号CLKのタイミングで、端子１３４からのシリアルデータDATAを取り込むと共に、各Ｄフリップフロップ回路に保持していたデータを後段にシフトさせていく。なお、１６段目のＤフリップフロップ回路の出力は、端子１３６から、次のＬＥＤドライバ１３０の端子１３４から、そのシフトレジスタ１３１に供給される。
【０２１６】
また各ＬＥＤドライバ１３０には、演出制御ＣＰＵ２００からのラッチ信号LATCHが端子１３７からラッチ部１３２に供給される。ラッチ部１３２は、ラッチ信号LATCHが入力されたタイミングで、シフトレジスタ１３１における１６個の各Ｄフリップフロップ回路の値をラッチする。１６ビットのデータがラッチされることになる。
ラッチ部１３２でラッチされた１６ビットのデータは、出力ゲート部１３３に供給される。
なお、各系統のＬＥＤドライバ１３０は、シリアルデータDATAが順次転送される構成をとっている。演出制御ＣＰＵ２００は、終端のＬＥＤドライバ１３０に対するＬＥＤ駆動データ（１６ビット）、その前のＬＥＤドライバ１３０に対するＬＥＤ駆動データ（１６ビット）・・・先頭のＬＥＤドライバ１３０に対するＬＥＤ駆動データ（１６ビット）を順次連続して出力する。そして先頭のＬＥＤドライバ１３０に対する１６ビットのＬＥＤ駆動データを転送したタイミングで、系統内の全ＬＥＤドライバ１３０に対して並列にラッチ信号LATCHを出力することで、各ＬＥＤドライバ１３０は、自己に供給された１６ビットのＬＥＤ駆動データをラッチ部１３２に取り込むことができる。
【０２１７】
出力ゲート部は、端子１３８からのイネーブル信号ENABLEがＯＮの場合、ラッチ部１３２でラッチされた１６ビットのデータに基づいて、定電流出力端子１３９−１〜１３９−１６のそれぞれからＬＥＤ１２０の発光のための電流出力を行う。ラッチされた１６ビットの各ビットは、１６個の定電流出力端子１３９−１〜１３９−１６のそれぞれに対する電流出力制御値となる。
このような構成により、各ＬＥＤドライバ１３０は、接続された最大１６系統のＬＥＤ１２０を駆動する。
【０２１８】
この第２の実施の形態では、演出制御ＣＰＵ２００は、一送信単位のシリアルデータを、第１系統、第２系統、第３系統の駆動信号出力手段（枠ドライバ部６１と盤ドライバ部６２Ａ、６２Ｂ）に対して略同時的に出力する。
この第２の実施の形態としてのＬＥＤ出力処理を図３４で説明する。
第１の実施の形態で述べた場合と同様、ＬＥＤデータ更新処理で生成されたＬＥＤ駆動データが、所定のタイミングで各ＬＥＤドライバ１３０に出力される。
【０２１９】
演出制御ＣＰＵ２００はステップＳ８５１で、各シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３におけるＬＥＤ駆動データ（例えば第１の実施の形態の図２５Ａの出力データバッファに相当する出力データバッファ）の先頭アドレスを特定する。なお、第１の実施の形態では１つのＬＥＤドライバ９０に対するＬＥＤ駆動データは４×２４ビットの例としたが、第２の実施の形態では１つのＬＥＤドライバ１３０に対するＬＥＤ駆動データは例えば１６ビットとなる。
次にステップＳ８５２で演出制御ＣＰＵ２００は、全シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３のラッチ信号LATCHをオフとする。さらにステップＳ８５３で全シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３のイネーブル信号ENABLEをオンとする。
【０２２０】
そしてループ処理ＬＰ４としてステップＳ８５４〜Ｓ８５９の処理を必要回数繰り返す。
説明上、仮に、ＬＥＤドライバ１３０の数が、枠ドライバ部６１は５個、盤ドライバ部６２Ａは３個、盤ドライバ部６２Ｂは６個であるとする。つまりシリアルデータ出力チャネルｃｈ１は５個のＬＥＤドライバ１３０に送信を行い、シリアルデータ出力チャネルｃｈ２は３個のＬＥＤドライバに送信を行い、シリアルデータ出力チャネルｃｈ３は６個のＬＥＤドライバ１３０に送信を行うものとする。
なお、送信データレジスタへの書き込みは８ビットずつ行われる一方、１つのＬＥＤドライバ１３０には１６ビットのデータを送信する。従って１つのＬＥＤドライバ１３０に対して２回の送信が必要となる。従って送信データレジスタへの書込は、シリアルデータ出力チャネルｃｈ１では１０回、シリアルデータ出力チャネルｃｈ２では６回、シリアルデータ出力チャネルｃｈ３では１２回となる。
そしてループ処理ＬＰ４としては、最もＬＥＤドライバ１３０の数の多い（６個）、シリアルデータ出力チャネルｃｈ３の送信回数（＝１２回）だけ、ループすることとなる。
【０２２１】
当該ループ処理ＬＰ４としては、演出制御ＣＰＵ２００は、ステップＳ８５４でシリアルデータ出力チャネルｃｈ１の一送信単位の送信として、シリアルデータDATAの出力（送信データレジスタへの８ビットの書き込み）を行う。
また略同時に、ステップＳ８５５でシリアルデータ出力チャネルｃｈ２のシリアルデータDATAの出力（送信データレジスタへの８ビットの書き込み）を行い、さらに略同時にステップＳ８５６でシリアルデータ出力チャネルｃｈ３のシリアルデータDATAの出力（送信データレジスタへの８ビットの書き込み）を行う。
このように各シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３では、それぞれの系統のシリアルデータDATA（１６ビット×ＬＥＤドライバ数）の送信が、同時に実行される。
そしてステップＳ８５７，Ｓ８５８，Ｓ８５９で演出制御ＣＰＵ２００は、各シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３におけるシリアルデータDATAの送信完了を待機する。
送信完了となったら、再びステップＳ８５４，Ｓ８５５，Ｓ８５６の処理を行う。
【０２２２】
なお、ＬＥＤドライバ１３０の数の違いにより、他よりも先に全データ出力を完了するシリアルデータ出力チャネルが発生する。上記例の場合、シリアルデータ出力チャネルｃｈ１はステップＳ８５４を１０回行うことで完了し、シリアルデータ出力チャネルｃｈ２はステップＳ８５５を６回行うことで完了し、シリアルデータ出力チャネルｃｈ３はステップＳ８５６を１２回行うことで完了する。
従ってこの例では、シリアルデータ出力チャネルｃｈ１，ｃｈ２については、完了後のループ回数目ではステップＳ８５４，Ｓ８５５のシリアルデータ出力は行わない場合が生ずる。
なお、実際のシリアルデータ送信中以外は、シフトレジスタ１３６でのデータシフトが行われないようにクロック信号ＣＬＫの制御（例えばマスク等）を行うことは当然である。
【０２２３】
送信完了（上記例の場合、ループ処理ＬＰ４として１２回ループ完了）となったら、ステップＳ８６０で、全シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３のラッチ信号LATCHをオンとする。これにより、すべてのＬＥＤドライバ１３０において、シリアルデータDATA（１６ビットのＬＥＤ駆動データ）が取り込まれる。当該ラッチを行ったら、ステップＳ８６１で、全シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３のラッチ信号LATCHをオフとする。
この時点で、イネーブル信号ENABLEはオンである。例えば各ＬＥＤドライバ１３０の出力ゲート部１３３は、端子１３８からのイネーブル信号ENABLEがオフの場合に、ラッチ部１３２にラッチされたＬＥＤ駆動データにより定電流出力端子１３９−１〜１３９−１６を駆動するものとされている。そこで演出制御ＣＰＵ２００はステップＳ８６２でイネーブル信号ENABLEをオフとする。これによって、各ＬＥＤドライバ１３０は、今回書き込まれたＬＥＤ駆動データに基づいて、接続されたＬＥＤ１２０の発光駆動を行うこととなる。
【０２２４】
この第２の実施の形態では、演出制御ＣＰＵ２００は、第１系統（シリアルデータ出力チャネルｃｈ１）、第２系統（シリアルデータ出力チャネルｃｈ２）、第３系統（シリアルデータ出力チャネルｃｈ３）の駆動信号出力手段（枠ドライバ部６１、盤ドライバ部６２Ａ、６２Ｂ）には、シリアルデータを同時的に送信する。
そして当該送信の完了後、各ＬＥＤドライバ１３０にラッチを実行させる。
これにより全体のシリアルデータ送信動作に要する時間を短縮でき、もって演出制御ＣＰＵ２００の処理負担を軽減できる。
【０２２５】
例えば従来は、図３４のステップＳ８５４〜Ｓ８６０に相当する処理は、
（ＳＴ１）ｃｈ１のシリアルデータ送信（送信データレジスタへの書込）
（ＳＴ２）ｃｈ１送信出力完了待機
・・・以上を所要回数ループ
（ＳＴｘ）ｃｈ１ラッチ信号LATCHオン
（ＳＴｘ＋１）ｃｈ２のシリアルデータ送信（送信データレジスタへの書込）
（ＳＴｘ＋２）ｃｈ２送信出力完了待機
・・・以上を所要回数ループ
（ＳＴｙ）ｃｈ２ラッチ信号LATCHオン
（ＳＴｙ＋１）ｃｈ３のシリアルデータ送信（送信データレジスタへの書込）
（ＳＴｘ＋２）ｃｈ３送信出力完了待機
・・・以上を所要回数ループ
（ＳＴｚ）ｃｈ３ラッチ信号LATCHオン
というように行っていた。
この場合、シリアルデータ出力チャネルｃｈ１，ｃｈ２，ＣＨ３のそれぞれで待ち時間が発生し、送信処理効率が悪い。
これに対して本実施の形態では、
（Ｓ８５４，Ｓ８５５，Ｓ８５６）ｃｈ１、ｃｈ２、ｃｈ３からシリアルデータ送信開始
（Ｓ８５７，Ｓ８５８，Ｓ８５９）ｃｈ１、ｃｈ２、ｃｈ３の送信出力完了待機
（Ｓ８６０）全チャネルラッチ信号LATCHオン
というように、同時的に両シリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３での送信処理を行うようにすることで、処理が効率化される。
【０２２６】
特にこの第２の実施の形態の場合は、１つの系統の駆動信号出力手段（枠ドライバ部６１、盤ドライバ部６２Ａ、６２Ｂ）に対するシリアルデータは、その系統に含まれるＬＥＤドライバ１３０の数×１６ビットの単位となる。
従って最もＬＥＤドライバ１３０の数の多い駆動信号出力手段へのシリアルデータ転送完了までが全体の待機時間となる。即ち、上記例では最もＬＥＤドライバ１３０の数が多いシリアルデータ出力チャネルｃｈ３に必要な時間内で、全てのシリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３へのデータ送信が完了できる。
これにより、個別の駆動信号出力手段への出力及び待機を行うことに比べて、シリアルデータ送信に要する全体の時間は著しく短縮できる。
【０２２７】
なお、望ましくは、各系統の駆動信号出力手段におけるＬＥＤドライバ１３０の数は、同数とするとよい。或いはダミードライバを設けて同数としても良い。すると、演出制御ＣＰＵ２００は、３つのシリアルデータ出力チャネルｃｈ１，ｃｈ２，ｃｈ３から同時にシリアルデータ送信を開始し、同時に送信完了でき、その直後のタイミングでラッチさせることができ、処理も容易となる。
また図３４では、ステップＳ８５７〜Ｓ８５９の全シリアルデータ出力チャネルでの送信完了確認後に、ステップＳ８６０で全系統のラッチを実行させるものとしたが、実際には、シリアルデータ出力が完了したシリアルデータ出力チャネルからラッチオンとしていっても良い。
【０２２８】
またこの第２の実施の形態は、第１系統の駆動信号出力手段（枠ドライバ部６１）は、前枠２に設けられた演出手段である装飾ランプ部６３（装飾ランプ２０ｗ）にＬＥＤ駆動信号を出力する複数のドライバ回路（ＬＥＤドライバ９０）で構成される。第２系統の駆動信号出力手段（盤ドライバ部６２Ａ）、及び第３系統の駆動信号出力手段（盤ドライバ部６２Ｂ）は、遊技盤３に設けられた演出手段である装飾ランプ部６４（装飾ランプ２０ｂ）にＬＥＤ駆動信号を出力する複数のドライバ回路（ＬＥＤドライバ９０）で構成されている。
このような構成により、枠ドライバ部６１のＬＥＤドライバ９０はすべて枠側の装飾ランプ２０ｗに対応し、また盤ドライバ部６２Ａ、６２ＢのＬＥＤドライバ９０はすべて盤側の装飾ランプ２０ｂに対応することとなり、これにより配線の容易化、効率化、演出制御設定の容易性などを実現できる。
【０２２９】
＜６．変形例＞
以上実施の形態について説明してきたが本発明は実施の形態で挙げた例に限らず多様な変形例や適用例が考えられる。
ＬＥＤ等による装飾ランプ部６３，６４としては枠側に１系統（１つのシリアルデータ出力チャネル）、盤側に１系統又は２系統の例を挙げたが、もちろんこれに限られない。枠側の装飾ランプ部６３について複数系統を設けても良いし、盤側の装飾ランプ部６４において３系統以上を設けても良い。
また１つの系統に盤側の装飾ランプ２０ｂと枠側の装飾ランプ２０ｗが混在していてもよい。
【０２３０】
またＬＥＤ発光駆動だけではなく、他の駆動制御のためのシリアルデータ送信、例えばステッピングモータやソレノイド等の可動体の駆動モータのドライバに対するシリアルデータ送信にも本発明は適用できる。
また本発明はパチンコ遊技機１のような弾球遊技機に適用する例を示したが、回胴式遊技機（いわゆるスロット機）にも適用できる。
【符号の説明】
【０２３１】
１  パチンコ遊技機
２  前枠
３  遊技盤
３ａ  遊技領域
４  外枠
５  ガラス扉
６  軸支機構
７  操作パネル
８  上受け皿ユニット
９  下受け皿ユニット
１０  発射操作ハンドル
１１  パトライトスイッチ
１２  演出ボタン
１３  十字キー
１４  球貸しボタン
１５  カード返却ボタン
２０ｗ，２０ｂ  装飾ランプ
２５  スピーカ
３１  球誘導レール
３２Ｍ  主液晶表示装置
３２Ｓ  副液晶表示装置
３３  図柄表示部
４１  上始動口
４２  普通変動入賞装置
４２ａ  下始動口
４３  一般入賞口
４４  ゲート
４５  第１特別変動入賞装置
４６  第２特別変動入賞装置
５０  主制御基板５０
５１  演出制御基板５１
５２  液晶制御基板
５３  払出制御基板
５４  発射制御基板
５８  電源基板
５９  スピーカ部
６０  操作部
６１  枠ドライバ部
６２  盤ドライバ部
６３，６４  装飾ランプ部
９０，１３０  ＬＥＤドライバ
１２０  ＬＥＤ
２００  演出制御ＣＰＵ
２０１  演出制御ＲＯＭ
２０２  演出制御ＲＡＭ
【図１】
2014064697.tif 000003
【図２】
2014064697.tif 000004
【図３】
2014064697.tif 000005
【図４】
2014064697.tif 000006
【図５】
2014064697.tif 000007
【図６】
2014064697.tif 000008
【図７】
2014064697.tif 000009
【図８】
2014064697.tif 000010
【図９】
2014064697.tif 000011
【図１０】
2014064697.tif 000012
【図１１】
2014064697.tif 000013
【図１２】
2014064697.tif 000014
【図１３】
2014064697.tif 000015
【図１４】
2014064697.tif 000016
【図１５】
2014064697.tif 000017
【図１６】
2014064697.tif 000018
【図１７】
2014064697.tif 000019
【図１８】
2014064697.tif 000020
【図１９】
2014064697.tif 000021
【図２０】
2014064697.tif 000022
【図２１】
2014064697.tif 000023
【図２２】
2014064697.tif 000024
【図２３】
2014064697.tif 000025
【図２４】
2014064697.tif 000026
【図２５】
2014064697.tif 000027
【図２６】
2014064697.tif 000028
【図２７】
2014064697.tif 000029
【図２８】
2014064697.tif 000030
【図２９】
2014064697.tif 000031
【図３０】
2014064697.tif 000032
【図３１】
2014064697.tif 000033
【図３２】
2014064697.tif 000034
【図３３】
2014064697.tif 000035
【図３４】
2014064697.tif 000036
【手続補正書】
【提出日】平成25年6月27日(2013.6.27)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
また遊技領域３ａ内には、主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓの表示面の周囲を囲むように、センター飾り３５Ｃが設けられている。
センター飾り３５Ｃは、そのデザインにより装飾効果を発揮するだけでなく、周囲の遊技球から主液晶表示装置３２Ｍ及び副液晶表示装置３２Ｓの表示面を保護する作用を持つ。さらにセンター飾り３５Ｃは、遊技球の打ち出しの強さまたはストローク長による遊技球の流路の左右打ち分けを可能とする部材としても機能する。即ち球誘導レール３１を介して遊技領域３ａ上部に打ち出された遊技球の流下経路は、センター飾り３５Ｃによって分割された左遊技領域３ｂと右遊技領域３ｃのいずれかを流下することとなる。いわゆる左打ちの場合、遊技球は左遊技領域３ｂを流下していき、右打ちの場合、遊技球は右遊技領域３ｃを流下していく。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
遊技領域３ａの右上縁付近には、複数個のＬＥＤを配置して形成されたドット表示器による図柄表示部３３が設けられている。
この図柄表示部３３では、所定のドット領域により、第１特別図柄表示部、第２特別図柄表示部、及び普通図柄表示部が形成され、第１特別図柄、第２特別図柄、及び普通図柄のそれぞれの変動表示動作（変動開始および変動停止を一セットする変動表示動作）が行われる。
なお、上述した主液晶表示装置３２Ｍは、図柄表示部３３による第１、第２特別図柄の変動表示と時間的に同調して、画像による装飾図柄を変動表示する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
右遊技領域３ｃ内の普通図柄始動口４４から普通変動入賞装置４２へかけての流下経路途中には第１特別変動入賞装置４５（特別電動役物）が設けられている。
第１特別変動入賞装置４５は、突没式の開放扉４５ｂにより第１大入賞口４５ａを閉鎖／開放する構造とされている。また、その内部には第１大入賞口４５ａへの遊技球の通過を検出するセンサ（図３の第１大入賞口センサ７５）が形成されている。
第１大入賞口４５ａの周囲は、右下飾り３５Ｒが遊技盤３の表面から膨出した状態となっており、その膨出部分の上辺及び開放扉４５ｂの上面が右流下経路３ｃの下流案内部を形成している。従って、開放扉４５ｂが盤内部側に引き込まれることで、下流案内部に達した遊技球は容易に第１大入賞口４５ａに入る状態となる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
主制御基板５０は、マイクロコンピュータ等が搭載され、パチンコ遊技機１の遊技動作全般に係る統括的な制御を行う。なお以下では、主制御基板５０に搭載されたマイクロコンピュータ等を含めて主制御基板５０の構成体を「主制御部５０」と表記する。
演出制御基板５１は、マイクロコンピュータ等が搭載され、主制御部５０から演出制御コマンドを受けて、画像表示、発光、音響出力を用いた各種の演出動作を実行させるための制御を行う。なお以下では、演出制御基板５１に搭載されたマイクロコンピュータ等を含めて演出制御基板５１の構成体を「演出制御部５１」と表記する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
また主制御部５０は、特別図柄変動表示に関する情報を含む演出制御コマンドを、演出制御部５１に送信する。なお、主制御部５０から演出制御部５１への演出制御コマンドの送信は一方向通信により実行されるようにしている。これは、外部からの不正行為による不正な信号が演出制御部５１を介して主制御部５０に入力されることを防止するためである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
続いて演出制御部５１及びその周辺回路について説明する。
演出制御部５１は、ＣＰＵ２００（以下「演出制御ＣＰＵ２００」と表記）を内蔵したマイクロプロセッサ、ＲＯＭ２０１（以下「演出制御ＲＯＭ２０１」と表記）、ＲＡＭ２０２（以下「演出制御ＲＡＭ２０２」と表記）を搭載し、マイクロコンピュータを構成している。
演出制御ＣＰＵ２００は演出制御プログラム及び主制御部５０から受信した演出制御コマンドに基づいて、各種演出動作のための演算処理や各演出手段の制御を行う。演出手段とは、本実施の形態のパチンコ遊技機１の場合、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓ、装飾ランプ２０ｗ、２０ｂ、及び図示を省略した可動体役物となる。
演出制御ＲＯＭ２０１は、演出制御ＣＰＵ２００による演出動作の制御プログラムや、演出動作制御に必要な種々のデータを記憶する。
演出制御ＲＡＭ２０２は、演出制御ＣＰＵ２００が各種演算処理に使用するワークエリアや、テーブルデータ領域、各種入出力データや処理データのバッファ領域などとして用いられる。
なお図示は省略したが、演出制御部５１は、各部とのインターフェース回路、演出のための抽選用乱数を生成する乱数生成回路、各種の時間計数のためのＣＴＣ、演出制御ＣＰＵ２００に割込み信号を与える割込コントローラ回路、音響演出のための音源ＩＣなども備えている。
この演出制御部５１の主な役割は、主制御部５０からの演出制御コマンドの受信、演出制御コマンドに基づく演出の選択決定、主液晶表示装置３２Ｍ、副液晶表示装置３２Ｓ側への演出制御コマンドの送信、スピーカ４５の出力音制御、装飾ランプ２０ｗ，２０ｂ（ＬＥＤ）の発光制御、可動体役物の動作制御などとなる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００６０
【補正方法】変更
【補正の内容】
【００６０】
このようなＬＥＤ駆動制御を、１つの系列について具体的にいうと、データバッファ／ＰＷＭコントローラ９３は、当該系列の階調値に応じたパルスデューティに相当するデジタルデータ列をＤ／Ａ変換器９４に出力し、Ｄ／Ａ変換器９４は、デジタルデータ列をアナログ信号としてのパルス信号に変換して当該系列の電流源回路９５に供給する。電流源回路９５はパルス信号のＨ／Ｌにより出力制御され、例えば０ｍＡと５ｍＡの電流出力を行う。例えばこのような動作で、結果的に階調値に応じた平均電流値となる駆動電流がＬＥＤ１２０に流れることとなる。
なお、本実施の形態では、ＰＷＭ駆動方式により、電流値が例えば０ｍＡと５ｍＡとされ、時間軸方向で（積分的に）階調制御がされるものとしているが、もちろん階調制御はこれに限らず、実際に電流値を階調に応じて変化させても良いことはいうまでもない。デューティ制御であろうと、レベル制御であろうと、あくまでも単位時間あたりの平均電流値が階調に応じたレベルとされることで適切な階調表現が可能となる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００６８
【補正方法】変更
【補正の内容】
【００６８】
以上はステップＳ１２でＲＡＭクリアスイッチＯＮと判定された場合について述べた。ＲＡＭクリアスイッチＯＦＦの場合を続いて説明する。例えば停電状態からの復旧時には、初期化スイッチ（ＲＡＭクリア信号）はＯＦＦ状態である。このような場合、主制御ＣＰＵ１００はステップＳ１２からＳ１３に処理を進め、バックアップフラグ値を判定する。なお、バックアップフラグは、電源遮断時にＯＮ状態に設定され、電源復帰後の最初のタイマ割込み処理でＯＦＦ状態にリセットされるよう構成されている。
したがって、電源投入時や停電状態からの復旧時である場合には、通常では、バックアップフラグがＯＮ状態のはずである。ただし、何らかの理由で電源遮断までに所定の処理が完了しなかったような場合には、バックアップフラグはリセット（ＯＦＦ）状態になる。そこで、バックアップフラグがＯＦＦ状態である場合には、主制御ＣＰＵ１００は処理をステップＳ１３からＳ１６に進め、遊技機の動作を初期状態に戻す。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００７４
【補正方法】変更
【補正の内容】
【００７４】
ステップＳ５３では、主制御ＣＰＵ１００は入力管理処理を行う。この入力管理処理では、パチンコ遊技機１に設けられた各種センサによる検出情報を入賞カウンタに格納する。ここでの各種センサによる検出情報とは、たとえば、上始動口センサ７１、下始動口センサ７２、ゲートセンサ（普通図柄始動口センサ）７３、第１大入賞口センサ７５、第２大入賞口センサ７６、一般入賞口センサ７４などの入賞検出スイッチから出力されるスイッチ信号のＯＮ／ＯＦＦ情報（入賞検出情報）である。
このステップＳ５３の処理により、各入賞口において入賞を検出（入賞が発生）したか否かが割込みごとに監視される。また上記「入賞カウンタ」とは、各々の入賞口ごとに対応して設けられ、入賞した遊技球数（入賞球数）を計数するカウンタである。本実施の形態では、主制御ＲＡＭ１０２の所定領域に、上始動口４１用の上始動口入賞カウンタ、下始動口４２ａ用の下始動口入賞カウンタ、ゲート４４用の普通図柄始動口入賞カウンタ、第１大入賞口４５ａ用の第１大入賞口入賞カウンタ、第２大入賞口４６ａ用の第２大入賞口入賞カウンタ、一般入賞口４３用の一般入賞口用の入賞カウンタなどが設けられている。
またこの入力管理処理では、入賞検出スイッチからの検出情報が入賞を許容すべき期間中に入賞したか否かに基づいて、不正入賞があったか否かも監視される。たとえば大当り遊技中でないにもかかわらず第１、第２大入賞口センサ７５，７６が遊技球を検出したような場合は、これを不正入賞とみなして入賞検出情報を無効化し、その無効化した旨を外部に報知するべく後述のステップＳ５５のエラー管理処理において所定のエラー処理が行われるようになっている。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００９３
【補正方法】変更
【補正の内容】
【００９３】
ステップＳ２０６では、演出制御ＣＰＵ２００は、液晶制御基板５２に対する演出制御コマンドの出力を行う。例えば１回の１ｍｓタイマ割込処理において、１コマンド（２バイト）の送信を行う。つまりモード及びイベントとしての２バイトの演出制御コマンドが送信される。
その後、演出制御ＣＰＵ２００はステップＳ２０７で割込みカウンタのインクリメントを行い、またステップＳ２０８でシナリオ更新カウンタのインクリメントを行う。そしてシナリオ更新カウンタの値が１００未満であれば、１ｍｓタイマ割込処理を終える。
なお、シナリオ更新カウンタは上述のように１６ｍｓ処理のステップＳ１１６でゼロリセットされるため、通常はシナリオ更新カウンタの値が１００以上となることはない。１００以上となるのは、演算異常、処理応答異常などにより１６ｍｓ処理が実行されない場合や、１６ｍｓ処理内の或る処理の進行が停止しているような場合である。このような場合は、無限ループに入り、ＷＤＴによってタイムアップ処理が行われるのを待つことになる。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０１０７
【補正方法】変更
【補正の内容】
【０１０７】
図１２の処理として、演出制御ＣＰＵ２００は、コマンド或いはプログラム上で指定されるシナリオに対応したシナリオ番号と待機時間（delay）の値を、ワーク（シナリオ登録情報）に登録する処理を行う。
ステップＳ４０１で演出制御ＣＰＵ２００は、まず今回登録すべきシナリオ番号が正常であるか否かを確認する。シナリオ番号があり得ない番号の場合は、何もせずに処理を終える。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】０１１８
【補正方法】変更
【補正の内容】
【０１１８】
図１３Ｂは、或る範囲のシナリオを削除する処理を示している。削除シナリオが範囲で指定された場合に、この処理が行われる。
演出制御ＣＰＵ２００は、コマンド或いはプログラム上で、或るシナリオ番号の範囲で削除指定された場合、まずステップＳ４３１で変数Ｂをゼロに設定する。この場合の変数Ｂは、ｓＣＨ０〜ｓＣＨ６３のシナリオチャネルのうちで、削除対象範囲に該当するシナリオが登録されたチャネルを探索するために使用する変数となる。さらに変数Ｂは、まだ探索（削除対象範囲に該当するシナリオが登録されているか否かの確認）をしていないシナリオチャネルが残っているか否かを判断するための変数を兼ねている。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】０１３３
【補正方法】変更
【補正の内容】
【０１３３】
図１９Ｂに音／モータサブシナリオテーブルの一部として、音／モータサブシナリオ番号１，２の例を示している。各番号の音／モータサブシナリオとしては、シナリオの各ライン（行）に時間データ（time）の値（ｍｓ）が記述されるとともに、ＢＧＭ、予告音、エラー音、音コントロール、モータ、ソレノイド／ユーザオプションの情報が記述される。また最終行には、シナリオデータ終了コードD_SEENDが記述される。
この音／モータサブシナリオテーブルに関しては、サブシナリオタイマ（scTm）が０になったら（なお最初は０である）、この音／モータサブシナリオテーブルの時間データ（time）の値をサブシナリオタイマ（scTm）にセットする。なお、各ラインの時間データ（time）は、当該ラインが終了するタイミングを示している。サブシナリオタイマ（scTm）には、絶対時間を記述するが、従って、セットする時間データ値は、（当該ラインの時間データ）−（前回ラインの時間データ）の値である。
当該ラインのＢＧＭのデータは、ＢＧＭのフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音データ登録情報における音チャネルａＣＨ０（ステレオの場合は加えてａＣＨ１）にセットされる。
当該ラインの予告音のデータは、予告音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルａＣＨ２〜ａＣＨ１４の空いているところにセットされる。
当該ラインのエラー音のデータは、エラー音のフレーズ番号やボリューム値等の音データ登録情報に登録する情報で構成され、音チャネルａＣＨ１５にセットされる。
音コントロールのデータは、下位６バイトでチャネル情報、上位２バイトでコントロール情報とされている。
モータのデータは、モータ１個につき１バイトでモータの動作パターン番号を示すように構成されている。モータ番号に対応するモータチャネルに動作パターン番号がセットされる。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】０１４４
【補正方法】変更
【補正の内容】
【０１４４】
ランプシナリオデータ終了コードD_LSENDが記述されたラインではなければ、演出制御ＣＰＵ２００はステップＳ６２７で、当該ラインに記述されているランプチャネル、ランプナンバを取得する。そしてステップＳ６２８で点灯パターンナンバの登録を行う。
点灯パターンナンバの登録処理を図１５Ｂに示している。この場合、まず演出制御ＣＰＵ２００はステップＳ６５１で、当該ラインに記述されているランプチャネルｄｗＣＨの値が正常値であるか否かを判別する。正常値でなければ登録を行わずに処理を終える。
正常値であれば、ステップＳ６５２で、当該ラインに記述されているランプナンバが正常値であるか否かを判別する。正常値でなければ登録を行わずに処理を終える。
ランプチャネルｄｗＣＨ及びランプ番号のいずれもが正常値であれば、ステップＳ６５３でワークのランプデータ登録情報における、ランプチャネルｄｗＣＨに対応する領域に登録点灯ナンバ（lmpNew）と実行点灯ナンバ（lmpNo）をセットする。即ちランプサブシナリオテーブルの当該ラインから取得したランプナンバを、登録点灯ナンバ（lmpNew）にセットし、「０」を実行点灯ナンバ（lmpNo）にセットする。
以上の図１５Ｂの処理をステップＳ６２８で行ったら、演出制御ＣＰＵ２００はステップＳ６２９でサブシナリオ実行ラインｌｍｐ（lmpIx）の値を＋１し、ステップＳ６３０でランプチャネルｄｗＣＨの値を＋１してステップＳ６２４に戻る。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】０１６０
【補正方法】変更
【補正の内容】
【０１６０】
ステップＳ７１０ではランプチャネルｄｗＣＨｎの情報である実行時間（time）を＋１する。
ステップＳ７１１では変数Dtimeと実行時間（time）を比較する。変数Dtimeには現在実行中のラインのタイマ（frame）が代入されている。実行時間（time）はＬＥＤ駆動データ更新処理毎（１６ｍｓ毎）に上記ステップＳ７１０で＋１される。従ってDtime≦timeとなれば、現ラインの終了タイミングとなる。Dtime≦timeではなければ、まだ現在のラインの終了に至らないとしてステップＳ７１１からＳ７１９に進む。Dtime≦timeの場合は、現在のラインの終了としてステップＳ７１１からＳ７１２に進む。
演出制御ＣＰＵ２００はステップＳ７１２で実行時間（time）を０にリセットする。またステップＳ７１３で、実行ライン（offset）の値を＋１する。つまり次のラインが対象となるようにする。
ステップＳ７１４では演出制御ＣＰＵ２００は、実行ライン（offset）に対応するランプデータテーブル該当ラインのアドレスを特定する。そしてステップＳ７１５，Ｓ７１７で、そのラインに終了コード（D_DTEND）が記述されているか、ループコード（LMP_LP）が記述されているかを確認する。
終了コード（D_DTEND）が記述されていた場合は、ステップＳ７１６で、当該ランプチャネルｄｗＣＨｎの登録点灯ナンバを０に更新する。つまりワーク上で、当該ランプチャネルｄｗＣＨの登録に応じた処理が完了したことを示すようにする。
ループコード（LMP_LP）が記述されていた場合はステップＳ７１８で、実行ライン（offset）の値をループ先のアドレスに更新する。
【手続補正１６】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2014064697.tif 000037
【手続補正１７】
【補正対象書類名】図面
【補正対象項目名】図１３
【補正方法】変更
【補正の内容】
【図１３】
2014064697.tif 000038
【手続補正１８】
【補正対象書類名】図面
【補正対象項目名】図１４
【補正方法】変更
【補正の内容】
【図１４】
2014064697.tif 000039
【手続補正１９】
【補正対象書類名】図面
【補正対象項目名】図１６
【補正方法】変更
【補正の内容】
【図１６】
2014064697.tif 000040