以下、実施例に基づいて本発明を詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される前枠3とで構成されている。この前枠3には、遊技盤5が、裏側からではなく、表側から着脱自在に装着され、その前側には、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。
ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。一方、ガラス扉6の上部左右位置と下側には、全3個のスピーカが配置されている。上部に配置された2個のスピーカは、各々、左右チャネルR,Lの音声を出力し、下側のスピーカは重低音を出力するよう構成されている。
前面板7には、発射用の遊技球を貯留する上皿8が装着され、前枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。
上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。
上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。
図2に示すように、遊技盤5の表面には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その略中央には、中央開口HOが設けられている。そして、中央開口HOの下方には、不図示の可動演出体が隠蔽状態で収納されており、可動予告演出時には、その可動演出体が上昇して露出状態となることで、所定の信頼度の予告演出を実現している。ここで、予告演出とは、遊技者に有利な大当り状態が招来することを不確定に報知する演出であり、予告演出の信頼度とは、大当り状態が招来する確率を意味している。
中央開口HOには、大型の液晶カラーディスプレイ(LCD)で構成されたメイン表示装置DS1が配置され、メイン表示装置DS1の右側には、小型の液晶カラーディスプレイで構成された可動式のサブ表示装置DS2が配置されている。メイン表示装置DS1は、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置DS1は、中央部に特別図柄表示部Da〜Dcと右上部に普通図柄表示部19とを有している。そして、特別図柄表示部Da〜Dcでは、大当り状態の招来を期待させるリーチ演出が実行されることがあり、特別図柄表示部Da〜Dc及びその周りでは、適宜な動画などによる予告演出が実行される。
サブ表示装置DS2は、通常時には、その表示画面が遊技者に見やすい角度に傾斜した静止状態で画像情報を表示している。但し、所定の予告演出時には、遊技者に見やすい角度に傾斜角度を変えながら、図示の左側に移動する共に、所定の予告動画(補助動画)を表示するようになっている。すなわち、実施例のサブ表示装置DS2は、単なる表示装置ではなく、予告演出を実行する可動演出体としても機能している。ここで、サブ表示装置DS2による予告演出は、その信頼度が高く設定されており、遊技者は、大きな期待感をもってサブ表示装置DS2の移動動作に注目することになる。
本実施例では、メイン表示装置DS1だけでなく、サブ表示装置DS2でも動画演出が実行されるが、CGROMを大型化することなく、多種類の動画を再生できるよう、サブ表示装置DS2及び/又はメイン表示装置DS1では、演出価値が高くない補助動画を低速で再生している。この点の詳細は後述するが、主としてメイン表示装置DS1で再生される通常動画は、30fps(frame per second)程度であるのに対して、主としてサブ表示装置DS2で再生される補助動画は、15fps程度であり、動画データの総量を抑制しつつ、バリエーション豊富な動画演出を実現している。
ところで、遊技球が落下移動する遊技領域には、第1図柄始動口15a、第2図柄始動口15b、第1大入賞口16a、第2大入賞口16b、普通入賞口17、及び、ゲート18が配設されている。これらの入賞口15〜18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。
第1図柄始動口15aの上部には、導入口INから進入した遊技球がシーソー状又はルーレット状に移動した後に、第1図柄始動口15に入賞可能に構成された演出ステージ14が配置されている。そして、第1図柄始動口15に遊技球が入賞すると、特別図柄表示部Da〜Dcの変動動作が開始されるよう構成されている。
第2図柄始動口15bは、左右一対の開閉爪を備えた電動式チューリップで開閉されるように構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、所定時間だけ、若しくは、所定個数の遊技球を検出するまで、開閉爪が開放されるようになっている。
なお、普通図柄表示部19は、普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止する。
第1大入賞口16aは、前後方向に進退するスライド盤を有して構成され、第2大入賞口16bは、下端が軸支されて前方に開放する開閉板を有して構成されている。第1大入賞口16aや第2大入賞口16bの動作は、特に限定されないが、この実施例では、第1大入賞口16aは、第1図柄始動口15aに対応し、第2大入賞口16bは、第1図柄始動口15bに対応するよう構成されている。
すなわち、第1図柄始動口15aに遊技球が入賞すると、特別図柄表示部Da〜Dcの変動動作が開始され、その後、所定の大当り図柄が特別図柄表示部Da〜Dcに整列すると、第1大当りたる特別遊技が開始され、第1大入賞口16aのスライド盤が、前方に開放されて遊技球の入賞が容易化される。
一方、第2図柄始動口15bへの遊技球の入賞によって開始された変動動作の結果、所定の大当り図柄が特別図柄表示部Da〜Dcに整列すると、第2大当りたる特別遊技が開始され、第2大入賞口16bの開閉板が開放されて遊技球の入賞が容易化される。特別遊技(大当り状態)の遊技価値は、整列する大当り図柄などに対応して種々相違するが、何れの遊技価値が付与されるかは、遊技球の入賞タイミングに応じた抽選結果に基づいて予め決定される。
典型的な大当り状態では、大入賞口16の開閉板が開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板が閉じる。このような動作は、最大で例えば15回まで継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da〜Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態(確変状態)となるという特典が付与される。
図3は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図であり、図4はその一部を詳細に図示したものである。図3に示す通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧や、電源異常信号ABN1、ABN2やシステムリセット信号(電源リセット信号)SYSなどを出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、主制御基板21から受けた制御コマンドCMDに基づいてランプ演出及び音声演出などを実行する演出制御基板22と、演出制御基板22から受けた制御コマンドCMD’に基づいて2つの表示装置DS1,DS2を駆動する画像制御基板23と、主制御基板21から受けた制御コマンドCMD”に基づいて払出モータMを制御して遊技球を払い出す払出制御基板24と、遊技者の操作に応答して遊技球を発射させる発射制御基板25と、を中心に構成されている。
図示の通り、主制御基板21が出力する制御コマンドCMDは、演出制御基板22に伝送される。また、主制御基板21が出力する制御コマンドCMD”は、主基板中継基板32を経由して、払出制御基板24に伝送される。
制御コマンドCMD,CMD’,CMD”は、何れも16ビット長であるが、主制御基板21や払出制御基板24が関係する制御コマンドは、8ビット長毎に2回に分けてパラレル送信されている。一方、演出制御基板22から画像制御基板23に伝送される制御コマンドCMD’は、16ビット長をまとめてパラレル伝送されている。そのため、可動予告演出を含む予告演出を、多様化して多数の制御コマンドを連続的に送受信するような場合でも、迅速にその処理を終えることができ、他の制御動作に支障を与えない。
図示の通り、本実施例では、画像制御基板23及び演出制御基板22からアクセス可能な液晶インタフェイス基板28が設けられている。そして、液晶インタフェイス基板28は、現在時刻を計時可能な時計回路(リアルタイムクロック)RTCと、遊技実績情報を記憶するメモリ素子(Static Random Access Memory )SRAMが搭載されている。
また、本実施例では、画像制御基板23は、LVDS受信回路などを搭載した液晶インタフェイス基板28を経由して、メイン表示装置DS1とサブ表示装置DS2を駆動している。ここで、液晶インタフェイス基板28と、画像制御基板23とは、配線ケーブルを経由することなく、雄型コネクタと雌型コネクタとを直結されている。同様に、演出制御基板23と液晶インタフェイス基板28についても、配線ケーブルを経由することなく、雄型コネクタと雌型コネクタとを直結されている。そのため、各電子回路の回路構成を複雑高度化しても基板全体の収納空間を最小化できると共に、接続ラインを最短化することで耐ノイズ性を高めることができる。
これら主制御基板21、演出制御基板22、画像制御基板23、及び払出制御基板24には、ワンチップマイコンなどのコンピュータ回路がそれぞれ搭載されている。そこで、これらの制御基板21〜24と液晶インタフェイス基板28に搭載された回路、及びその回路によって実現される動作を機能的に総称して、本明細書では、主制御部21、演出制御部22、画像制御部23、及び払出制御部24と言うことがある。なお、主制御部21に対して、演出制御部22、画像制御部23、及び払出制御部24の全部又は一部がサブ制御部となる。
このパチンコ機GMは、図3の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された前枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。
図3の破線枠に示す通り、枠側部材GM1には、電源基板20と、払出制御基板24と、発射制御基板25と、枠中継基板35とが含まれており、これらの回路基板が、前枠3の適所に各々固定されている。一方、遊技盤5の背面には、主制御基板21、演出制御基板22、画像制御基板23が、表示装置DS1,DS2やその他の回路基板と共に固定されている。そして、枠側部材GM1と盤側部材GM2とは、一箇所に集中配置された接続コネクタC1〜C4によって電気的に接続されている。
電源基板20は、接続コネクタC2を通して、主基板中継基板32に接続され、接続コネクタC3を通して、電源中継基板33に接続されている。電源基板20には、交流電源の投入と遮断とを監視する電源監視部MNTが設けられている。電源監視部MNTは、交流電源が投入されたことを検知すると、所定時間だけシステムリセット信号SYSをLレベルに維持した後に、これをHレベルに遷移させる。
また、電源監視部MNTは、交流電源の遮断を検知すると、電源異常信号ABN1,ABN2を、直ちにLレベルに遷移させる。電源異常信号ABN1,ABN2は、電源投入後に速やかにHレベルとなる。
ところで、本実施例のシステムリセット信号は、交流電源に基づく直流電源によって生成されている。そのため、交流電源の投入(通常は電源スイッチのON)を検知してHレベルに増加した後は、直流電源電圧が異常レベルまで低下しない限り、Hレベルを維持する。したがって、直流電源電圧が維持された状態で、交流電源が瞬停状態となっても、システムリセット信号SYSがCPUをリセットすることはない。なお、電源異常信号ABN1,ABN2は、交流電源の瞬停状態でも出力される。
主基板中継基板32は、電源基板20から出力される電源異常信号ABN1、バックアップ電源BAK、及びDC5V,DC12V,DC32Vを、そのまま主制御部21に出力している。一方、電源中継基板33は、電源基板20から受けたシステムリセット信号SYSや、交流及び直流の電源電圧を、そのまま演出制御部22に出力している。そして、演出制御部22は、受けたシステムリセット信号SYSを、そのまま画像制御部23に出力している。
一方、払出制御基板24は、中継基板を介することなく、電源基板20に直結されており、主制御部21が受けると同様の電源異常信号ABN2や、バックアップ電源BAKを、その他の電源電圧と共に直接的に受けている。
電源基板20が出力するシステムリセット信号SYSは、電源基板20に交流電源24Vが投入されたことを示す電源リセット信号であり、この電源リセット信号によって演出制御部22のワンチップマイコン40と画像制御部23の内蔵CPU回路は、その他の回路素子やVDPを含む内部回路と共に電源リセットされるようになっている。
但し、このシステムリセット信号SYSは、主制御部21と払出制御部24には、供給されておらず、各々の回路基板21,24のリセット回路RSTにおいて電源リセット信号(CPUリセット信号)が生成されている。そのため、例えば、接続コネクタC2がガタついたり、或いは、配線ケーブルにノイズが重畳しても、主制御部21や払出制御部24のCPUが異常リセットされるおそれはない。演出制御部22と画像制御部23は、主制御部21からの制御コマンドに基づいて、従属的に演出動作を実行することから、回路構成の複雑化を回避するために、電源基板20から出力されるシステムリセット信号SYSを利用している。
主制御部21や払出制御部24に設けられたリセット回路RSTは、各々ウォッチドッグタイマを内蔵しており、各制御部21,24のCPUから、定時的なクリアパルスを受けない限り、各CPUは強制的にリセットされる。
また、この実施例では、RAMクリア信号CLRは、主制御部21で生成されて主制御部21と払出制御部24のワンチップマイコンに伝送されている。ここで、RAMクリア信号CLRは、各制御部21,24のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定する信号であって、係員が操作する初期化スイッチSWのON/OFF状態に対応した値を有している。
主制御部21及び払出制御部24は、電源基板20から電源異常信号ABN1,ABN2を受けることによって、停電や営業終了に先立って、必要な終了処理を開始するようになっている。また、バックアップ電源BAKは、営業終了や停電により交流電源24Vが遮断された後も、主制御部21と払出制御部24のワンチップマイコンの内蔵RAMのデータを保持するDC5Vの直流電源である。したがって、主制御部21と払出制御部24は、電源遮断前の遊技動作を電源投入後に再開できることになる(電源バックアップ機能)。このパチンコ機では少なくとも数日は、各ワンチップマイコンのRAMの記憶内容が保持されるよう設計されている。
図3に示す通り、主制御部21は、主基板中継基板32を経由して、払出制御部24に制御コマンドCMD”を送信する一方、払出制御部24からは、遊技球の払出動作を示す賞球計数信号や、払出動作の異常に係わるステイタス信号CONや、動作開始信号BGNを受信している。ステイタス信号CONには、例えば、補給切れ信号、払出不足エラー信号、下皿満杯信号が含まれる。動作開始信号BGNは、電源投入後、払出制御部24の初期動作が完了したことを主制御部21に通知する信号である。
また、主制御部21は、遊技盤中継基板31を経由して、遊技盤5の各遊技部品に接続されている。そして、遊技盤上の各入賞口16〜18に内蔵された検出スイッチのスイッチ信号を受ける一方、電動式チューリップなどのソレノイド類を駆動している。ソレノイド類や検出スイッチは、主制御部21から配電された電源電圧VB(12V)で動作するよう構成されている。また、図柄始動口15への入賞状態などを示す各スイッチ信号は、電源電圧VB(12V)と電源電圧Vcc(5V)とで動作するインタフェイスICで、TTLレベル又はCMOSレベルのスイッチ信号に変換された上で、主制御部21に伝送される。
先に説明した通り、演出制御基板22と画像制御基板23と液晶インタフェイス基板28とはコネクタ連結によって一体化されており、演出制御部22は、電源中継基板33を経由して、電源基板20から各レベルの直流電圧(5V,12V,32V)と、システムリセット信号SYSを受けている(図3及び図4(a)参照)。
また、演出制御部22は、主制御部21から制御コマンドCMDとストローブ信号STBとを受けている。そして、演出制御部22は、ランプ駆動基板36及びランプ駆動基板29やモータランプ駆動基板30に搭載されたドライバICに、ランプ駆動信号SDATAを、クロック信号CKに同期してシリアル伝送することで、多数のLEDランプや電飾ランプで構成されたランプ群を駆動して、制御コマンドCMDに基づくランプ演出を実現している。
本実施例の場合、ランプ演出は、三系統のランプ群CH0〜CH2によって実行されており、ランプ駆動基板36は、枠中継基板34,35を経由して、CH0のランプ駆動信号SDATA0を、クロック信号CK0に同期して受けている(クロック同期式シリアル通信)。なお、シリアル信号として伝送される一連のランプ駆動信号SDATA0は、動作制御信号ENABLE0がアクティブレベルに変化したタイミングで、ドライバICからランプ群CH0に出力されることで一斉に点灯状態が更新される。
以上の点は、ランプ駆動基板29についても同様であり、ランプ駆動基板29のドライバICは、ランプ群CH1のランプ駆動信号SDATA1を、クロック信号CK1に同期して受け、動作制御信号ENABLE1がアクティブレベルに変化したタイミングで、ランプ群CH1の点灯状態を一斉に更新している。
一方、モータランプ駆動基板30に搭載されたドライバICは、クロック同期式で伝送されるランプ駆動信号を受けてランプ群CH2を駆動すると共に、クロック同期式で伝送されるモータ駆動信号を受けて、複数のステッピングモータで構成された演出モータ群M1〜Mnを駆動している。なお、ランプ駆動信号とモータ駆動信号は、一連のシリアル信号SDATA2であって、クロック信号CK1に同期してシリアル伝送され、これを受けたドライバICは、動作制御信号ENABLE2がアクティブレベルに変化するタイミングで、ランプ群CH2やモータ群M1〜Mnの駆動状態を更新する。
また、演出制御部22は、画像制御部23に対して、制御コマンドCMD’及びストローブ信号STB’と、電源基板20から受けたシステムリセット信号SYSと、2種類の直流電圧(12V,5V)とを出力している。そして、画像制御部23では、制御コマンドCMD’に基づいて表示装置DS1,DS2を駆動して各種の画像演出を実行している。図3及び図4(a)に示す通り、画像制御部23は、汎用ワンチップマイコンと同等の内部構成を有する内蔵CPU回路(画像演出制御装置)51と、VDP(Video Display Processor )52と、を内蔵した複合チップ50を中心に構成されている。また、内蔵CPUの制御プログラムを記憶する制御メモリ(PROM)53と、大量のデータを高速にアクセス可能なDRAM(Dynamic Random Access Memory)54と、画像制御に必要な大量のCGデータを記憶するCGROM55とが搭載されている。
そして、CGROM55から読み出したCGデータに基づいてVDP52が生成した画像データは、第1と第2のLVDS(低電圧差動伝送Low voltage differential signaling)信号として、液晶インタフェイス基板28を経由して、メイン表示装置DS1とサブ表示装置DS2に伝送される。なお、表示装置DS1には、LVDS信号をRGB信号に変換するLVDS受信部が内蔵されており、表示装置DS1は、液晶インタフェイス基板28から5対のLVDS信号と、LEDバックライト電源を含む直流電源電圧とを受けて駆動されている。一方、サブ表示装置DS1は、液晶インタフェイス基板28のLVDS受信部で変換されたデジタルRGB信号と、LEDバックライト電源を含む直流電源電圧とを受けて駆動されている。
続いて、図4(a)に基づいて、演出制御部22の構成を更に詳細に説明する。図4(a)に示す通り、演出制御部22は、音声演出・ランプ演出・演出可動体による予告演出・データ転送などの処理を実行するワンチップマイコン40(演出制御CPU40)と、演出制御CPU40の制御プログラムや各種の演出データENを記憶する制御メモリ(flash memory)41と、内蔵レジスタRG0〜RGnに設定される演出制御CPU40の指示に基づいて音声信号を再生して出力する音声プロセッサ42と、再生される音声信号の元データである圧縮音声データなどを記憶する音声メモリ43と、音声プロセッサ42から出力される音声信号を受けるデジタルアンプ46と、を備えて構成されている。
本実施例の場合、制御メモリ41に記憶されている演出データENには、ランプ演出や音声演出の演出進行を管理するシナリオデータと、LEDの点滅態様を決定するランプ駆動データと、モータの回転態様を決定するモータ駆動データと、が含まれている。なお、ランプ駆動データやモータ駆動データは、1ビットずつ時間順次に出力されることで、ランプ駆動シリアル信号やモータ駆動シリアル信号となる。
ワンチップマイコン40には、複数のシリアル入出力ポートSIOと、複数のパラレル入出力ポートPIOとが内蔵されている。ここで、シリアル入出力ポートSIOには、CHiのランプ駆動信号又はモータ駆動信号SDATAiをクロック信号CKiに同期して出力するシリアル出力ポートSoiと、モータ群M1〜Mnの原点センサ信号(シリアル信号)をクロック信号CK3に同期して受けるシリアルポートSiとが含まれている。なお、i=0〜2であって、三系統のランプ群CH0〜CH2や、CH2のランプ群と共に駆動されるモータ群M1〜Mnに対応している。
一方、パラレル入出力ポートPIOは、出力ポートPo,Po’と入力ポートPiに区分され、入力ポートPiには、主制御部21からの制御コマンドCMD及びストローブ信号STBが入力される。一方、出力ポートPo’からは動作制御信号ENABLE0〜ENABLE2が出力され、出力ポートPoからは、制御コマンドCMD’及びストローブ信号STB’が出力されるよう構成されている。詳細には、主制御基板21から出力された制御コマンドCMD及びストローブ信号(割込み信号)STBが、バッファ44において、ワンチップマイコン40の電源電圧3.3Vに対応する論理レベルに降圧された後、入力ポートPiに8ビット単位で二回に分けて供給される。また、割込み信号STBは、演出制御CPU40の割込み端子に供給され、受信割込み処理によって、演出制御部22は、制御コマンドCMDを取得するよう構成されている。
演出制御部22が取得する制御コマンドCMDには、(1)異常報知その他の報知用制御コマンドなどの他に、(2)図柄始動口への入賞に起因する各種演出動作の概要特定する制御コマンド(変動パターンコマンド)や、図柄種別を指定する制御コマンド(図柄指定コマンド)が含まれている。ここで、変動パターンコマンドで特定される演出動作の概要には、演出開始から演出終了までの演出総時間と、大当たり抽選における当否結果とが含まれている。
また、図柄指定コマンドには、大当たり抽選の結果に応じて、大当たりの場合には、大当たり種別に関する情報(15R確変、2R確変、15R通常、2R通常など)を特定する情報が含まれ、ハズレの場合には、ハズレを特定する情報が含まれている。変動パターンコマンドで特定される演出動作の概要には、演出開始から演出終了までの演出総時間と、大当り抽選における当否結果とが含まれている。なお、これらに加えて、リーチ演出や予告演出の有無などを含めて変動パターンコマンドで特定しても良いが、この場合でも、演出内容の具体的な内容は特定されていない。
そのため、演出制御部22では、変動パターンコマンドを取得すると、これに続いて演出抽選を行い、取得した変動パターンコマンドで特定される演出概要を更に具体化している。例えば、リーチ演出や予告演出について、その具体的な内容が決定される。そして、決定された具体的な遊技内容にしたがい、LED群などの点滅によるランプ演出や、スピーカによる音声演出の準備動作を行うと共に、画像制御部23に対して、ランプやスピーカによる演出動作に同期した画像演出に関する制御コマンドCMD’を出力する。
このような演出動作に同期した画像演出を実現するため、演出制御部22は、出力ポートPoを通して、画像制御部23に対するストローブ信号(割込み信号)STB’と共に、16ビット長の制御コマンドCMD’を出力している。なお、演出制御部22は、図柄指定コマンドや、異常報知用制御コマンドや、その他の制御コマンドを受信した場合は、その8ビット単位の制御コマンドを、16ビット長に纏めた状態で、割込み信号STB’と共に画像制御部23に向けて出力している。
先に説明した通り、本実施例の音声プロセッサ42は、演出制御CPU40から内蔵レジスタ(音声制御レジスタ)RG0〜RGnに受ける指示(音声コマンドSNDによる設定値)に基づいて、音声メモリ43をアクセスして、必要な音声信号を再生して出力している。図示の通り、音声プロセッサ42と、音声メモリ43とは、26ビット長の音声アドレスバスと、16ビット長の音声データバスで接続されている。そのため、音声メモリ43には、1Gビット(=226*16)のデータが記憶可能となる。本実施例の場合、音声メモリ43に記憶された圧縮音声データは、13ビット長のフレーズ番号(000H〜1FFFH)で特定されるフレーズ(phrase)圧縮データであり、一連の背景音楽の一曲分(BGM)や、ひと纏まりの演出音(予告音)などが、最高8192種類(=213)、各々、フレーズ番号に対応して記憶されている。そして、このフレーズ番号は、演出制御CPU40から音声プロセッサ42の音声制御レジスタRG0〜RGnに伝送される音声コマンドSNDの設定値によって特定される。
音声コマンドSNDは、複数(2又は3)バイト長であって、音声プロセッサ42に内蔵された多数の音声制御レジスタRG0〜RGnの何れかRGiに、所定の設定値を伝送するWrite 用途で使用される。但し、本実施例の音声コマンドSNDは、フレーズ番号などの設定値を書込むWrite 用途だけでなく、所定の音声制御レジスタRGiからステイタス情報(エラー情報)STSを読み出すRead用途でも使用される。なお、アクセス対象となる所定の音声制御レジスタRGiは、1バイト長のレジスタアドレスで特定される。
音声制御レジスタRGiへの設定値の設定(Write )は、必ずしも、音声制御レジスタ毎に個別的に実行する必要はなく、音声メモリ43に格納されているSACデータを指定して、一群の音声制御レジスタRGi〜RGjに対する一連の設定動作を完了させることもできる。ここで、SACデータとは、音声制御レジスタRGiのレジスタアドレス(1バイト)と、その音声制御レジスタRGiへの設定値(複数バイト)とを対応させた最大512個(最大1024バイト)の集合体を意味する。本実施例では、このようなSACデータが、必要組だけ、予め音声メモリ43に記憶されており、一組のSACデータは、単一のID情報である13ビット程度のSAC番号で特定されるようになっている。
したがって、本実施例の場合、Write 用途の音声コマンドSNDは、SAC番号を指定して一組のSACデータを特定するか、或いは、設定値とレジスタアドレスとを個別的に特定することになる。
図4(b)に接続関係の要部を記載している通り、演出制御CPU40と音声プロセッサ42は、1バイトデータを送受信可能なパラレル信号線(データバス)CD0〜CD7と、動作管理データを送信可能な2ビット長の動作管理データ線(アドレスバス)A0〜A1と、読み書き(read/write)動作を制御可能な2ビット長の制御信号線WR,RDと、音声プロセッサ42を選択するチップセレクト信号線CSとで接続されている。
パラレル信号線CD0〜CD7は、演出制御CPU40のデータバスで実現され、また、動作管理データ線A0〜A1は、演出制御CPU40のアドレスバスで実現されており、各々、演出制御CPU40に接続されている。そして、演出制御CPU40が、プログラム処理によって、例えば、IOREAD動作やIOWRITE動作を実行すると、制御信号WR,RDやチップセレクト信号CSが適宜に変化して、パラレル信号線CD0〜CD7で特定される音声制御レジスタRGiとの読み書き(R/W)動作が実現される。
具体的には、図4(b’)のタイムチャートに示す通りであり、音声制御レジスタRGiのレジスタアドレスと、音声制御レジスタRGiへの書込みデータは、各々、パラレル信号線CD0〜CD7を通してパラレル伝送される。そして、パラレル伝送された1バイトが、レジスタアドレスであるか、それとも、書込みデータ(ライトデータ)であるかは、動作管理データA0〜A1によって特定される。
したがって、図4(b)に示す通り、動作管理データ(アドレスデータA0〜A1)を、[00]→[01]と推移させる一方で、データバスの1バイトデータを、[音声制御レジスタRGiのレジスタアドレス]→[音声制御レジスタRGiへの書込みデータ]と推移させることで、所定の音声コマンドSNDが送信される。なお、SAC番号(13ビット)を送信する場合のように、書込みデータが複数バイト長の場合には、[01]の動作管理データA0〜A1を、[00]→[01]→[01]→[01]と繰り返しつつ、複数バイトの書込みデータを送信する。
このようにして送信された音声コマンドは、通信異常がない限り、その後、実効化される。但し、複数バイト長のデータが互いに整合しないなど、通信異常が認められる場合には、その音声コマンドSNDが実効化させることはない。そして、音声制御レジスタRGnのエラーフラグがセットされるが、このエラーフラグ(ステイタス情報STS)は、アドレスバスの動作管理データA0〜A1を、[01]から[10]に推移させることで、演出制御CPU40がRead動作によって受信することができる。
このように、この実施例では、動作管理データA0〜A1を、[00]→[01]→・・・[01]→[10]と推移させる最終サイクルにおいて、複数ビット長のエラー情報(異常時はFFH)を取得することができる。そして、正当にパラレル送信できなかった音声コマンドSNDを再送することで、音声演出を適切に進行させることができる。したがって、本実施例の構成によれば、音声演出が突然、途絶えるような不自然さを確実に解消されることができる。
なお、図4(b)の構成では、演出制御CPU40は、エラー情報を含んだステイタス情報STSを、音声プロセッサ42からパラレル受信しているが、何ら、この構成に限定されるものではない。すなわち、音声プロセッサ42が通信エラーを認識すると、演出制御CPU40に割込み信号を出力する構成を採るのも好適であり、この場合には、演出制御CPU40の割込み処理プログラムにおいて、通信エラーが生じた音声コマンドを再送すればよい。このような構成を採れば、殆どの場合に無駄な処理となる、エラーフラグ(ステイタス情報STS)の取得処理、すなわち、動作管理データA0〜A1を[10]に遷移させる処理を省略することができる。
図3及び図4(a)に示す通り、本実施例では、デジタルアンプ46の出力によって、遊技機上部の左右スピーカと、遊技機下部のスピーカとを駆動している。そのため、音声プロセッサ42は、3チャネルの音声信号を生成する必要があり、これをパラレル伝送すると、音声プロセッサ42とデジタルアンプ46との配線が複雑化する。
そこで、本実施例では、音質の劣化を防止すると共に、配線の複雑化を回避するため、音声プロセッサ42とデジタルアンプ46との間は、4本の信号線で接続されており、具体的には、転送クロック信号SCLKと、チャネル制御信号LRCLKと、2ビット長のシリアル信号SD1,SD2との合計4ビットの信号線に抑制されている。
ここで、SD1は、遊技機上部に配置された左右スピーカのステレオ信号R,Lを特定するPCMデータについてのシリアル信号であり、SD2は、遊技機下部に配置された重低音スピーカのモノラル信号を特定するPCMデータについてのシリアル信号である。そして、音声プロセッサ42は、チャネル制御信号LRCLKをLレベルに維持した状態で、左チャネルの音声信号Lを伝送し、チャネル制御信号LRCLKをHレベルに維持した状態で、右チャネルの音声信号Rを伝送する(図4(c)参照)。重低音スピーカは、本実施例では1個であるので、モノラル音声信号が伝送されているが、ステレオ音声信号として伝送できるのは勿論である。
何れにしても本実施例では、4種類の音声信号を4本のケーブルで伝送可能であるので、最小のケーブル本数によってノイズによる音声劣化のない信号伝達が可能となる。すなわち、シリアル伝送であるのでパラレル伝送より圧倒的にケーブル本数が少ない。
このようなシリアル信号SD1,SD2は、クロック信号SCLKの立上りエッジに同期して、デジタルアンプ46に取得される。そして、デジタルアンプ46内部で、所定ビット長毎にパラレル変換され、DA変換後にD級増幅されて各スピーカに供給されている。
図4(a)に関して説明を続けると、演出制御基板22には、ワンチップマイコン40のシリアル入出力ポートSIOのシリアル出力ポートSoiから出力されるシリアルデータSDATAiとクロック信号CKiを転送するバッファ回路47〜49が設けられている(i=0〜2)。
ここで、出力バッファ47は、シリアル出力ポートSo0が出力するランプ駆動信号SDATA0とクロック信号CK0を、ランプ駆動基板36のシフトレジスタ回路(ドライバIC)に転送している。また、出力バッファ48は、シリアル出力ポートSo1が出力するランプ駆動信号SDATA1とクロック信号CK1を、ランプ駆動基板29のドライバICに転送している。なお、各ランプ駆動基板29,36に搭載されたドライバICが、CH0とCH1のランプ群を点灯駆動することは先に説明した通りである。
一方、バッファ回路49は、入出力バッファとして機能しており、シリアル出力ポートSo2が出力するシリアル信号SDATA2を、クロック信号CK2と共にモータランプ駆動基板30に転送している。また、一群の演出モータM1〜Mnの原点位置を示す原点センサ信号(シリアル信号)を、クロック信号CK3に同期してワンチップマイコン40のシリアル入力ポートSiに転送している。
本実施例の場合、バッファ回路49が転送するシリアル信号SDATA2は、ランプ群CH2を点灯させるためのランプ駆動信号(シリアル信号)と、演出モータM1〜Mnを回転させるためのモータ駆動信号(シリアル信号)とが連続するよう構成されている。そして、モータランプ駆動基板30では、これら一連のシリアル信号を16ビット長毎に分断すると共に、各16ビット長をパラレル信号に変換して、ランプ演出と可動予告演出を実行している。具体的には、制御コマンドCMDに対応して抽選決定された演出動作として、一連のランプ演出を実行すると共に、モータ駆動信号を受信した場合には、演出モータM1〜Mnを回転させて適宜な可動予告演出を実行している。
次に、図4(a)の左側に示す通り、本実施例では、演出制御CPU40のデータバスとアドレスバスは、液晶インタフェイス基板28にも及んでいる。説明の便宜上、図4(a)の左側に、この関係を図示しているが、時計回路RTCは、演出制御CPU40のアドレスバスの下位4ビットと、データバスの下位4ビットとでCPUに接続されており、任意にアクセス可能に構成されている。また、遊技実績情報を記憶するメモリ素子SRAMは、演出制御CPU40のアドレスバスの16ビットと、データバスの下位16ビットとで、演出制御CPU40のランダムアクセスを可能にしている。
時計回路RTCは、現在年月日や現在時刻を計時する時計IC(リアルタイムクロック)であり、メモリ素子SRAMと共に、演出制御基板22から受ける電源電圧で充電される二次電池BTで永続的に動作している。すなわち、遊技機に電源が投入されている状態で、二次電池BT(図5)が充電される一方、遊技機の電源が遮断された後は、充電状態の二次電池BTに基づいて、時計回路RTCの計時動作が継続され、演出データも永続的に記憶保持される(バックアップ動作)。
図5に示す通り、実施例の時計回路RTCは、4ビットのデータバスと、4ビットのデータバスと、Read/Write動作用のコントロールバスRD+WRとを通して、演出制御CPU40に接続されている。そして、演出制御CPU40は、遊技動作に関する重要な遊技情報や異常情報を、時計回路RTCから取得した年月日情報及び曜日情報や時刻情報を付加して、メモリ素子SRAMに記憶するようにしている。
この時計回路RTCは、CS1とCS0バーの2種類のチップセレクト端子を有しており、各端子への入力電圧が正常レベルであることを条件に、演出制御CPU40からのアクセスを許可するようになっている。ここで、CS0バー端子は、アドレスデコーダの出力を受ける通常のチップセレクト端子である。一方、CS1端子は、電源異常検出部ERの出力(電圧降下信号)Voを受けており、CS1端子が異常レベルの出力Voを受けた場合には、時計回路RTCの異常検出フラグFosが自動的にセットされるようになっている。
本実施例の場合、この異常検出フラグFosは、他の異常検出フラグTEMPと共に、電源投入時に演出制御CPU40によって判定され、仮に、異常検出フラグFosがセット状態であれば、その時の年月日及び時刻が報知されるようになっている。そのため、もし、時計機能の異常が認められた場合には、これに素早く対処することができる。
なお、電源遮断時に二次電池BTの電圧が降下しても、二次電池BTの電圧レベルは、電源復帰によって素早く回復してCS1端子が正常レベルに戻るので、演出制御CPU40からのアクセスが許可されることになる。したがって、異常検出フラグFosの判定処理を設ける本実施例の構成を採らない場合には、時計回路RTCの異常を永続的に検出できないおそれがある。
また、実施例の時計回路RTCは、一週間に一回、例えば、毎金曜日の21時50分に、割込み信号IRQを出力するよう構成されおり、割込み信号IRQを受けた演出制御CPU40では、それまでにメモリ素子SRAMに蓄積した遊技情報や異常情報について、適宜に集計するようにしている。
なお、集計する遊技情報は、大当り状態に関する履歴情報をまとめたものであり、例えば、(1)大当り状態となるまでに要した図柄始動口への入賞回数、(2)大当り状態の図柄や、確変か否かの大当り状態の集計値や統計値、(3)大当り状態に至った予告演出やリーチ演出の種類、(4)連チャン回数、(5)連チャンによる払出球数の時間的な増加推移、などが含まれる。そして、これらの集計情報や統計情報は、遊技者の求めに応じて適宜に報知される。遊技者の指示は、例えば、デモ演出中のチャンスボタン11の押圧で特定され、報知内容は表示装置DS1に表示される。
一方、集計する異常情報には、例えば、(1)ドア開放回数、(2)違法行為を検出する検知センサの検出種別や検出回数や検出時刻、(3)閉塞状態の図柄始動口15や大入賞口16を針金などで無理に開放しようとする行為の検出回数や検出頻度や検出時刻などが含まれる。そして、これらの集計情報は、係員による特別な操作に対応して、表示装置DS1に表示される。
図5(a)に示す通り、実施例の時計回路RTCは、Bank0〜Bank2の3つの内部レジスタテーブルを内蔵して構成されている。但し、Bank2のレジスタテーブルは、時刻設定や年月日設定に関するものであるので、図5(b)と図5(c)に、Bank0とBank1のレジスタテーブルだけ記載している。何れにしても、各レジスタテーブルは、4バイト×16個のレジスタで構成されおり、内部回路が計時した現在年月日と現在時刻は、Bank0のレジスタテーブル(図5(b))に書込まれるよう構成されている。
図5(b)に示すように、Bank0のレジスタテーブルにおいて、1番レジスタのビット3は、異常検出フラグFosであり、14番レジスタのビット2は、内蔵温度センサが異常温度を検出したことを示す温度異常フラグTEMPである。そして、本実施例では、演出制御部22のCPUリセット時に、異常検出フラグFosの値を判定することで、異常な計時動作の継続を防止している。また、時計回路RTCを演出制御CPU40に近接配置すると共に、適宜な時間間隔で、温度異常フラグTEMPの値を繰り返し判定することで、演出制御CPU40の温度異常を素早く検出している。
また、Bank0のレジスタテーブルにおいて、15番レジスタのビット0は、レジスタテーブルが更新中であることを示すBusyフラグである。そして、本実施例では、Busyフラグが非Busy状態(更新完了)であることを条件に、Bank0のレジスタテーブルから、現在年月日と現在時刻を取得している。そのため、本実施例では、更新動作中の中途半端、又は不合理な時計情報を取得するおそれがなく、メモリ素子SRAMに記憶される時計情報の正当性が担保される。例えば、1時59分59秒から2時0分0秒に更新中の時計情報を取得すると、1時0分0秒の時計情報を取得してしまうおそれがある。
また、Bank1のレジスタテーブルは、割込み信号IRQの発生時刻を設定可能に構成されている。そこで、本実施例では、Bank1の1番レジスタのビット0に1をセットすることで割込み発生を指示し(Interrupt Enable)、Bank1の0番レジスタ〜8番レジスタに、金曜の曜日指定と、21時30分00秒の時刻情報を設定している。
続いて、画像制御部23について図6〜図8を参照しつつ詳細に説明する。先ず、図6(a)は、画像制御部23を構成する複合チップ50について、関連する回路素子も含めて図示した回路ブロック図である。図示の通り、実施例の複合チップ50には、内蔵CPU回路51とVDP回路52とが内蔵されている。そして、内蔵CPU回路51とVDP回路52とは、互いの送受信データを中継するCPUIF回路56を通して接続されると共に、VDP回路52から内蔵CPU回路51に対して、Vブランク割込み信号(VBLANK)が供給されるようになっている。
ここで、Vブランク割り込み信号は、表示装置DS1の垂直同期信号に対応するもので、表示装置DS1の一フレーム分の画像データの出力が完了したタイミングを1/60秒毎に規定している。この実施例では、2つの表示回路74A/74Bのうち、表示回路74Aが定常的に機能するよう構成される一方、表示回路74Bは、必要時に機能して、表示回路74Aに同期して動作するので、結局、垂直同期信号(Vブランク割り込み信号)は、表示回路74Aの出力動作が終わったことを意味することになる。
Vブランク割り込みに基づくシーケンス動作については後述するが、CPUIF回路56には、図6に示す通り、制御プログラムや、必要な制御データを不揮発的に記憶する制御メモリ(PROGRAM_ROM )53と、2Mバイト程度の記憶容量を有するワークメモリ(RAM)57とが接続され、各々、内蔵CPU回路51からアクセス可能に構成されている。
内蔵CPU回路51は、汎用のワンチップマイコンと同等の性能を有する回路であり、制御メモリ53の制御プログラムに基づき画像演出を統括的に制御する画像制御CPU63と、プログラムが暴走状態になるとCPUを強制リセットするウォッチドッグタイマ(WDT)58と、16kバイト程度の記憶容量を有してCPUの作業領域として使用されるRAM59と、CPUを経由しないでデータ転送を実現するDMAC(Direct Memory Access Controller )60と、複数の入力ポートSi及び出力ポートSoを有するシリアル入出力ポート(SIO)61と、複数の入力ポートPi及び出力ポートPoを有するパラレル入出力ポート(PIO)62と、を有して構成されている。
なお、便宜上、入出力ポートとの表現を使用するが、画像制御部23において、入出力ポートには、独立して動作する入力ポートと出力ポートとが含まれている。なお、この点は、以下に説明する入出力回路64pや入出力回路64sについても同様である。
パラレル入出力ポート62は、入出力回路64pを通して外部機器(演出制御基板22)に接続されており、画像制御CPU63は、入力回路64p及びパラレル入力ポートPiを経由して、演出制御部22が出力する制御コマンドCMD’と割込み信号STB’を受信するようになっている。一方、この実施例では、シリアル入出力ポート61と、DMAC60については、これらを使用していない。
次に、VDP回路52について説明すると、VDP回路52には、画像演出を構成する静止画や動画の構成要素となる圧縮データを記憶するCGROM55と、4Gbit程度の記憶容量を有する外付けDRAM(Dynamic Random Access Memory)54と、メイン表示装置DS1と、サブ表示装置DS2とが接続されている。
特に限定されるものではないが、この実施例では、CGROM55は、62Gbit程度の記憶容量のNAND型フラッシュメモリで構成されたフラッシュSSD(solid state drive )で構成されており、シリアル伝送によって必要な圧縮データを取得するよう構成されている。そのため、パラレル伝送において不可避的に生じるスキュー(ビットデータ毎の伝送速度の差)の問題が解消され、極限的な高速伝送動作が可能となる。
なお、NAND型のフラッシュメモリは、ハードディスクより機械的に安定であり、且つ高速アクセスが可能である一方で、シーケンシャルアクセスメモリであるため、DRAMやSRAM(Static Random Access Memory )に比較するとアクセス速度に劣り、アクセス速度は、内蔵VRAM71>外付けDRAM54>CGROM55の順番に遅くなる。但し、一群の圧縮データ(CGデータ)を、描画動作に先行してDRAM54に読み出しておくプリロード動作を実行することで、描画動作時におけるCGデータの円滑なランダムアクセスを実現することができる。
VDP回路52は、詳細には、VDPの動作を規定する各種の動作パラメータが設定されるレジスタ群70と、各表示装置DS1,DS2に表示すべき画像データの生成時に使用される48Mバイト程度のVRAM(video RAM )71と、チップ内部の各部間のデータ送受信及びチップ外部とのデータ送受信を制御するデータ転送回路72と、プリロード動作を実行するプリローダ73と、VRAM71の画像データを読み出して、適宜な画像処理を並列的に実行する3系統(A/B/C)の表示回路74と、CGROM55から読み出した圧縮データをデコードするグラフィックスデコーダ75と、デコード後の静止画データや動画データを適宜に組み合わせて各表示装置DS1,DS2の一フレーム分の画像データを生成する描画回路76と、描画回路76の動作の一部として、適宜な座標変換によって立体画像を生成するジオメトリエンジン77と、シリアルデータ送受信可能なSMC部78と、3系統(A/B/C)の表示回路74の出力を適宜に選択出力する出力選択部79と、出力選択部79が出力する画像データをLVDS信号に変換するLVDS部80と、CPUIF回路56とのデータ送受信を中継するCPUIF部81と、CGROM55からのデータ受信を中継するCGバスIF部82と、外付けDRAM54とのデータ送受信を中継するDRAMIF部83と、VRAM71とのデータ送受信を中継するVRAMIF部84と、を有して構成されている。
図6(b)には、CPUIF部81、CGバスIF部82、DRAMIF部83、及び、VRAMIF部84と、レジスタ群70、CGROM55、DRAM54、及びVRAM71との関係が図示され、特に、レジスタ群70については、その一部が具体的に記載されている。図示の通り、CGROM55とCGバスIF部82は、シリアル回線で接続されており、アドレス情報Txの送信に対応して、CGROM55がシーケンシャルアクセスされ、一群のCGデータ(圧縮データ)Rxが、順次読み出されるようになっている。
CGROM55から読み出されたCGデータは、第1実施例では、CGバスIF部82→VRAMIF部84を経由して、VRAM71に格納されるが、図8のタイミングT1+δの矢印は、この読出し動作を示している。図8に示す通り、VRAM71には、グラフィックスデコーダ75の作業領域として、静止画デコード領域と動画デコード領域とが確保されており、CGデータの種別に応じた位置に、CGデータが圧縮状態のまま格納される。また、図7や図8に示す通り、VRAM71には、デコード後の一フレーム分の画像データを配置するフレームバッファFB領域も確保されている。
一方、プリローダ73を機能させる第2実施例では、CGデータは、デコード処理に必要なタイミングに先行して、CGバスIF部82→DRAMIF部83を経由して、DRAM54のプリロード領域に格納され、その後の必要なタイミングでランダムアクセスされて、VRAM71に転送される。但し、何れの実施例でも、VRAM71の静止画デコード領域や動画デコード領域に格納されたCGデータは、グラフィックスデコーダ75によってデコードされた後、描画回路76によって、VRAM71のフレームバッファFB領域の適所に展開される。なお、図8のタイミングT1+δ’の矢印は、この動作を示している。
図6(a)に戻って説明を続けると、データ転送回路72は、VDP回路内部のリソース(記憶媒体)と外部記憶媒体を、転送元ポート又は転送先ポートとして、これらの間でデータ転送動作を実行する回路である。転送元ポートには、VRAM71の他、CPUバス、CGバス、外部DRAMバスに接続された記憶媒体(リソース)が含まれる。同様に、転送先ポートには、VRAM71の他、CPUバス、CGバス、外部DRAMバスに接続された記憶媒体が含まれる。また、データ転送回路72は、一群の描画コマンドによって一フレーム分の表示画像を特定するディスプレイリストDLを、描画回路76(必要時にはプリローダ73)に送信する動作も担当している。
プリローダ73は、データ転送回路72によって送信されたディスプレイリストDLを解釈して、その中で参照しているCGROM55上のCGデータを、予め指定されているDRAM54のプリロード領域に転送する回路である。また、このとき、プリローダ73は、CGデータの参照先を、転送後のアドレスに書換えたディスプレイリストDLを出力する。そして、書換えたディスプレイリストDLは、データ転送回路72によって描画回路76に送信される。
但し、第1実施例では、プリローダ73を使用していない。一方、第2実施例では、プリローダレジスタ(図6(b)参照)への設定値に基づき、外付けDRAM54に、十分な記憶領域のプリロード領域を設定している。そして、この第2実施例では、プリロード領域として設定された記憶領域を使い切らない限り、プリロードされた圧縮データは、その後の圧縮データによって上書き消去されることなく維持される。そのため、プリロード処理を使用する第2実施例では、必要な圧縮データが、プリロード領域に存在しない場合に限り、CGROM55をアクセスすることになる。なお、プリロード領域に十分な記憶領域が確保されているので、複数フレーム分のCGデータを一気にプリロードしても何も問題が生じない。
描画回路76は、データ転送回路72によって送信されたディスプレイリストDLの描画コマンドを順番に解析して、グラフィックスデコーダ75や、ジオメトリエンジン77などと協働して、VRAM71に形成されたフレームバッファFBに、表示装置DS1や表示装置DS2の一フレーム分の画像を描画する回路である。
ここで、ディスプレイリストDLは、描画する順番に記載された一群の描画コマンドで構成されている。描画コマンドには、一フレームのどの位置に、どのような画像を描画するかを規定するコマンドも含まれ、描画すべき画像のCGROMなどの記憶位置(ソースアドレス)も特定されている。そして、描画回路76は、このようなディスプレイリストDLを解釈して、内蔵VRAM71に確保されたフレームバッファFBに、表示装置DS1,DS2の各一フレーム分の画像データを生成している(図7参照)。
図7に示す通り、本実施例のフレームバッファFBは、表示回路74A/74B/74Cに対応して、三区分(FBa,FBb,FBc)されているが、各フレームバッファFB(FBa,FBb,FBc)の描画位置は、ディスプレイリストDLに記載された所定の描画コマンドによって特定される。
三区分されたフレームバッファFB(FBa,FBb,FBc)は、何れも、描画領域と表示領域に機能的に区分されたダブルバッファであり、2つの領域(領域0と領域1)を、交互に用途を切り換えて使用している。すなわち、描画回路76が、2つの領域の何れか一方の領域に、画像データが書込んでいるとき、表示回路74は、他方の領域の画像データを読み出して、表示装置DS1,DS2に出力している。もっとも、本実施例では、表示回路74Cを使用しないのでフレームバッファFBcが使用されることはない。
特に限定されるものではないが、本実施例では、表示装置DS1,DS2の1フレームは、最大状態では、3種類又はそれ以上の画像(動画と静止画)で構成されている。すなわち、表示装置DS1,DS2では、最大状態では、一又は複数の動画が再生される一方で、これに重ねて時間的に変化する静止画が背景画に重ねて表示されるよう構成されている。そのため、特に動画演出について、そのCGデータ量が膨大化するおそれがあるが、後出するデータ縮小手法や低速再生手法を採ることで、CGデータ量の抑制を図っている。
静止画の基本形状は、スプライト画像として予めCGROM55に記憶されており、この基本形状を、適宜に拡大/縮小/回転/変形させると共に、配置位置を変更させることで、時間的な変化を実現している。一方、動画は、所定時間、滑らかに変化するいわゆるムービーであって、M枚のフレームが、MPEG符号化方式などの動画圧縮手法で圧縮されてCGROM55に記憶されている。
動画の圧縮データは、本実施例では、本来の解像度(ピクセル数)を維持して圧縮された通常データと、解像度を劣化させた後に圧縮された縮小データと、に区分されている。縮小データは、遊技者から見て横方向をW倍(W<1)、縦方向にH倍(H<1)に縮小されているが、横方向を大きく縮小して(W<H<1)、縦長に変形した上で圧縮されている。そのため、本実施例では、CGデータの総量を大幅に抑制することができ、CGROMを大型化することなく、多数の動画データを記憶させて画像演出のバリエーションを増やしている。
例えば、Nフレームで構成された動画は、図10の下方に示す通りであり、全ての画素データが、矩形状の画像フレーム単位で縦長に縮小された上で動画圧縮されている。そして、このような縮小データは、動画デコードされた後、表示回路74A,74Bのスケーラ(図7参照)において、フレーム単位で、元の縦横寸法に拡大される。すなわち、横方向に1/W倍に拡大され、縦方向に1/H倍に拡大されることで、元の縦横寸法に復元される。
この縦長縮小の手法は、本発明者が実験的に検出したものであり、多数の実験結果によれば、等倍縮小するより、縦長縮小する方が、動画再生における復元画像の画質が良いことを確認している。なお、縮小率は、その動画の演出価値に応じて、0.5≦H≦1の範囲で適宜に選択されるが、何れの場合も、H/Wが、1.1〜1.8程度が適当であると考えている。この場合、W=H/1.1〜H/1.8であるので、データ量は、H*W=H2/1.1〜H2/1.8であり、H=0.9の場合、最低でも0.74倍の縮小効果がある。以上、動画について説明したが、静止画を構成するスプライト画像についても、その演出価値に応じて、適宜な縦長(H/W>1)に縮小設定しても良い。但し、データ縮小効果は動画データの方が顕著である。
このような効果を発揮する縦長縮小の手法を採るか否かに拘わらず、本実施例の動画は、全フレームを30fps(frame per second)程度の再生速度で再生される通常動画と、演出価値がそれほど高くないため、15fps程度の低速で再生される補助動画に大別されている。この点は、最初に説明した通りであり、補助動画は、2倍速で生成されたムービーを1/2倍速で再生すること、つまり、N秒の動画を2×N秒の再生時間で再生することで、CGデータ(動画データ)の抑制を図っている。
特に限定されないが、本実施例の通常動画は、IフレームとPフレームとで構成されたIPストリーム動画である。一方、補助動画は、通常動画と同じIPストリーム動画だけでなく、Iフレームだけで構成されたIストリーム動画も含まれている。ここで、Pフレームとは、過去フレームから予測したデータとの差分をエンコードするPピクチャ(Predictive Picture)で構成されたフレームを意味し、圧縮率が高いものの、順次再生が必須となる。
一方、Iフレームとは、他のフレームに依存することなく、単独でエンコード可能なIピクチャ(Intra Picture )で構成されたフレームを意味する。したがって、Iストリーム動画は、IPストリーム動画より圧縮率が劣るものの、時間逆順に再生する逆再生や、任意の位置から再生するシーク再生も可能となる。そこで、サブ表示装置DS2では、必要に応じて、このようなIストリーム動画(補助動画)を変則再生することで演出効果を高めている。
また、本実施例では、IPストリーム動画より圧縮率が劣るIストリーム動画について、これをメイン表示装置DS1やサブ表示装置DS2低速再生することでCGデータ量の抑制を図っている。なお、IピクチャやPピクチャは、MPEG符号化方式の用語であるが、本実施例の圧縮手法は、必ずしもMPEG方式に限定されるものではなく、IPストリーム動画やIストリーム動画は、その他の圧縮手法でも構成可能である。
このような構成に対応して、グラフィックスデコーダ75は、静止画デコーダと動画デコーダに区分され、所定の圧縮アルゴリズムでエンコード(圧縮)された静止画と動画を、各々に対応する伸張アルゴリズムでデコード(伸張)している。例えば、静止画は、1枚の静止画を構成する画像データ毎に所定のアルゴリズムで圧縮され、IPストリーム動画のPフレームは、一連の動画を実現する複数枚の静止画データが、フレーム間のデータ差分値などに基づいて圧縮されている。
次に、表示回路74は、フレームバッファFBの画像データを読み出して、最終的な画像処理を施した上で出力する回路である(図7参照)。図7に示す通り、表示回路74での画像処理には、スケーラが機能してフレーム画像を拡大/縮小するスケーリング処理と、微妙なカラー補正処理と、画像全体の量子化誤差が最小化するディザリング処理と、が含まれている。なお、スケーリング処理には、縦長縮小された動画データ(縦長縮小データ)について、動画デコード後のフレームデータの拡大処理(横1/W倍、縦1/H倍)が含まれている。
そして、これらの画像処理を経たでデジタルRGB信号(合計24ビット)が、水平同期信号や垂直同期信号と共に、表示装置DS1,DS2に向けて出力される。図7に示す通り、本実施例では、上記の動作を並列的に実行する3系統の表示回路74A/74B/74Cが設けられており、各表示回路74A/74B/74Cは、各々に対応するフレームバッファFBa/FBb/FBcの画像データを読み出して、上記の最終画像処理を実行している。もっとも、本実施例では、表示回路74CやフレームバッファFBcを使用しないことは前記の通りである。
図7に示す通り、出力選択部79は、表示回路74Aの出力信号をLVDS部80aに伝送し、表示回路74Bの出力信号をLVDS部80bに伝送している。そして、LVDS部80aやLVDS部80bは、画像データ(合計24ビットのデジタルRGB信号)をLVDS信号に変換して、クロック信号を伝送する一対を加えて、全五対の差動信号として各表示装置DS1,DS2に向けて出力している。なお、表示装置DS1には、LVDS信号の変換受信部RVが内蔵されており、LVDS信号からRGB信号を復元して、最大状態では、3種類以上の画像(動画と静止画)を重複して表示している。但し、出力する画像データは、必ずしもLVDS信号とする必要は無く、遊技機のように伝送距離が長くない場合には、デジタルRGB部80cを経由して、デジタルRGB信号をそのまま表示装置DS1,DS2に伝送するのも好適である。
次に、SMC部78(Serial Management Controller)は、LEDコントローラとMotorコントローラとを内蔵した複合コントコントローラである。そして、外部基板に搭載したLED/Motorドライバ(シフトレジスタを内蔵するドライバIC)に対して、クロック信号に同期してLED駆動信号やモータ駆動信号を出力する一方、適宜なタイミングで、ラッチパルスを出力可能に構成されている。
上記したVDP回路52の内部回路及びその動作に関し、内部回路が実行すべき動作内容は、画像制御CPU63が、レジスタ群70に設定する動作パラメータ(設定値)で規定され、VDP回路52の実行状態は、レジスタ群70の動作ステイタス値をREADすることで特定できるようになっている。レジスタ群70は、画像制御CPU63のメモリマップ上、1Mバイト程度のメモリ空間(0〜FFFFFH)にマッピングされた多数のレジスタを意味し、画像制御CPU63は、CPUIF部81を経由して動作パラメータのWRITE(設定)動作と、動作ステイタス値のREAD動作を実行するようになっている(図6(b)参照)。
レジスタ群70には、割り込み動作などシステム動作に関する初期設定値が書込まれる「システム制御レジスタ」と、画像制御CPU63とVDP回路52の内部回路との間のデータ転送回路72によるデータ転送処理に関する設定値などが書込まれる「データ転送レジスタ」と、グラフィックスデコーダ75のエラー発生などを含む実行状況を特定可能な「GDECレジスタ」と、描画コマンドや描画回路76に関する設定値が書込まれる「描画レジスタ」と、プリローダ73の動作に関する設定値が書込まれる「プリローダレジスタ」と、三区分された表示回路A/B/Cの各動作に関する設定値が書込まれる「表示レジスタ」と、LEDコントローラ(SMC部78)に関する設定値が書込まれる「LED制御レジスタ」と、Motorコントローラ(SMC部78)に関する設定値が書込まれる「モータ制御レジスタ」とが含まれており、これらの制御レジスタは、各々複数バイト長で構成されている。
より詳細には、「プリローダレジスタ」には、(1) プリロード領域をDRAM54に設定するか、VRAM84に設定するかの設定、(2) プリロード領域の先頭アドレス、(3) プリロードデータ領域を、何フレーム分使用するかの設定、(4) 1フレーム当たりのデータサイズなどが設定される。また、「データ転送レジスタ」には、データ転送元やデータ転送先が設定され、「表示レジスタ」には、表示回路A/B/Cに対応して、フレームバッファFBa/FBb/FBcの開始位置及びバッファサイズや、各フレームバッファFBa/FBb/FBcにおいて、時間的に切り換わる描画領域と表示領域の切換指示や、スケーラの縦横拡大率などが設定される。また、「描画レジスタ」「プリローダレジスタ」「データ転送レジスタ」には、描画動作、プリロード動作、データ転送動作について、各動作の実行開始が指示される。
何れにしても、画像制御CPU63が、レジスタ群70の何れかに適宜な設定値を書込むことで、VDP回路52の内部動作が実現される。したがって、画像制御CPU63は、適宜な時間間隔で更新するディスプレイリストDLと、上記したレジスタ群70を構成するレジスタへの設定値に基づいて、ディスプレイリストDLに基づく画像演出を実現することになる。なお、この実施例では、ランプ演出やモータ演出は、演出制御基板22の演出制御CPU40が担当するので、SMC部78を使用することはなく、LED制御レジスタやモータ制御レジスタに設定値が書込まれることもない。
続いて、表示装置DS1,DS2を使用して実行される画像演出の制御動作について、図9(a)〜図9(d)のフローチャートと、図8や図10の動作説明図を参照しつつ説明する。これらの画像演出は、演出制御CPU40から制御コマンドCMD’を受ける画像制御CPU63と、画像制御CPU63に指示されて機能するVDP回路52と、によって実現される。そして、画像制御CPU63からVDP回路52に対する指示は、レジスタ群70に書込まれる動作パラメータによって特定される。
図9に示す通り、画像演出動作は、画像制御CPU63によって所定時間毎に実行されるディスプレイリストDLの更新処理(図9(a)〜図9(b))と、画像制御CPU63から受けるディスプレイリストDLに基づいて動作する描画回路76、及び、表示回路74の各シーケンス動作(図9(c)〜図9(d))と、によって実現される。なお、描画回路76、及び、表示回路74が、以下に説明するシーケンス動作を実現するよう、画像制御CPU63は、電源リセット時やその後の必要なタイミングで、必要な動作パラメータをレジスタ群70に設定している。例えば、縦長縮小データが使用される動画再生タイミングでは、フレームデータの拡大率(横1/W倍、縦1/H倍)が、表示レジスタに設定される。
以上を踏まえて説明すると、画像制御CPU63は、1/60秒毎のVブランク割込みで規定される一定時間δ(例えば1/30秒)毎に、ディスプレイリストDLの更新処理を開始し(ST1)、描画回路76、及び、表示回路74のシーケンス動作を開始させている(ST2)。図6に関して説明した通り、Vブランク割り込みは、表示回路74Aの出力動作が終わったことを意味するが、ステップST2の処理に基づき、描画回路76と、表示回路74A/74Bは、間欠的に、自らの動作を並列的に実行する(図10参照)。
最初に、図10を参照して、描画回路76と表示回路74のシーケンス動作について概略的に説明する。先ず、T1から始まる実行周期で、CPU63が生成したディスプレイリストDLは、T1+δから始まる実行周期で、描画回路76に解釈され、描画回路76が生成した画像データが、フレームバッファFBに作成される。そして、この画像データが、T1+2δから始まる実行周期で、表示回路74によって出力される。したがって、本実施例では、3回の実行周期を経て、画像演出についての一単位動作が完了することになる。
以上の関係は、図8にも記載の通りであり、T1’のタイミングでDRAM54に転送されたディスプレイリストDLに基づき、T1+δのタイミングで、CGROM55のCGデータがVRAM71に読み出され(但し必要時に限る)、同じ実行周期で、フレームバッファFBに画像データが作成される(タイミングT1+δ’)。そして、この画像データは、T1+2δのタイミングで、表示装置DS1と表示装置DS2に出力される。
次に、表示回路74の動作を、動画再生に限定して具体的に説明する。図10に示す通り、表示回路74Aは、一定時間δ毎に更新される通常動画の各フレーム(A1,A2,・・・A6)を連続的に出力している。一方、表示回路74Bは、二周期2δを要して更新される補助動画の各フレームを、二度ずつ重複的に出力している(B1,B1,B2,B2,B3,B3・・・)。なお、ここでは動画再生について説明しているが、通常動画や補助動画に重複して、必要時には、背景画や時間的に移動する静止画が表示されることになる。したがって、一フレームとの用語は、必ずしも、表示装置DS1,DS2のフレーム全体を意味しないことは勿論である。なお、この点は、以下の説明でも同様である。
先に説明した通り、本実施例の画像演出では、30fpsの通常動画や、15pfsの補助動画が使用されるが、1/30秒毎に図9(a)の動作を繰り返すことで(ST1)、最高、30fpsの通常動画の再生が可能となる。但し、実行周期δを短く設定すれば(例えば1/60秒)、30fpsを超える動画再生を実現することもできる。
以上、概略説明をしたので、続いて、図9(b)に基づいて、ステップST2の処理を具体的に説明する。画像制御CPU63は、最初に、この演出タイミングが、サブ表示装置DS2が補助動画を再生中か否かを判定する(ST10)。そして、補助動画の再生中であれば、トグル変数NUMを0と1の間でトグル的に更新し(ST11)、トグル変数NUM=0か否かを判定する(ST12)。
この処理は、15pfsの補助動画を適切に低速再生するべく、表示回路74Bの表示動作を1/15秒毎に切り換えるためである。すなわち、トグル変数NUM=0であれば、表示回路74Bの動作を規定する表示レジスタに、適宜な設定値を書込むことで、表示回路74BのフレームバッファFBbの表示領域を切り換える(ST13)。
図7に示す通り、フレームバッファFBはダブルバッファ構造(0/1)になっており、その一方が、描画回路76のアクセス対象となる描画領域であり、他方が、表示回路74のアクセス対象となる表示領域である。そして、ステップST13の処理によって、描画領域と表示領域が入れ替わることになり、それまでに描画回路76がフレームバッファFBbに生成した一フレーム分の画像データが、この実行周期で、表示回路74Bによってサブ表示装置DS2に出力されることになる。
なお、図10に示す通り、本実施例では、表示回路A/Bの動作周期が1/60秒に設定されているのに対して、画像制御CPU63の動作周期が1/30秒であるので、表示回路Aも、実際には、同一の画像データを2度出力することになる。すなわち、通常動画を表示するメイン表示装置DS1も、正確には、同一フレームを連続して二回表示することになる(30fpsの再生動作)。
この点はさて措き、次に、画像制御CPU63は、そのタイミングが補助動画の再生中であれば、表示回路74Bに表示動作の実行を指示する(ST14)。なお、説明の都合上、補助動画の再生中では、毎回、表示回路74Bの表示動作を許可設定しているが(ST14)、実際には、補助動画(低速再生)の開始時に一回だけ許可設定されるだけである。同様に、補助動画の再生終了時には、表示回路74Bの表示動作を停止設定がされる。
ステップST13の処理の結果、表示回路74Bは、1/30秒毎に出力処理を繰り返すことになるが、ステップST13の処理を経ないタイミングでは、直前の画像データを再度2回出力することになる。その結果、Nフレームで再生時間M秒の補助動画が、2×M秒を要して低速再生されることになる。
以上の通り、表示回路74Bは、1/15秒毎に、画像データを切り換えて出力するが(ST13〜ST14)、表示回路74Aについては、1/30秒毎に毎回、フレームバッファFBaの表示領域を切り換える(ST15)。次に、描画回路76の動作を規定する描画レジスタに、描画動作の動作開始を指示する(ST16)。
その結果、描画回路76についても、1/30秒毎に所定の動作を開始することになる。なお、描画回路76や表示回路74が実行すべき動作内容は、電源リセット時やその後の必要なタイミングで、画像制御CPU63によって、描画レジスタや表示レジスタに設定されることは先に説明した通りである。
図9(b)から図9(a)に戻って説明を続けると、画像制御CPU63は、上記したステップST2の処理で、描画回路76や表示回路74のシーケンス動作を指示した後、画像演出シナリオに基づいて、次の一フレームについてのディスプレイリストDLを作成する。ここで、画像演出シナリオは、演出制御CPU40から受けた制御コマンドCMD’で特定される画像演出を具体化したものである。
すなわち、画像演出シナリオには、一定時間継続される一連の動画や、描画位置や配置姿勢や拡大縮小率が適宜に規定される静止画(背景画像や予告画像を含む)について、(1) 一連の動画演出の開始時刻や終了時刻、(2) どの静止画を、どの時刻に、どの位置に、どのように描くか、などが規定されている。なお、動画演出とは言っても、表示装置の描画画像が、迅速かつ円滑に変化するだけであり、一定時間毎に、同一又は異なる次の画像データ(フレーム画像データ)を、表示装置に描画する点では静止画と同じである。
そして、画像制御CPU63は、このような構成の演出シナリオを参照して、各タイミング(T1,T1+δ,T1+2δ,・・・)で、表示装置DS1,DS2の表示画像を特定する一群の描画コマンドを列記したディスプレイリストDLを生成する。ディスプレイリストDLは、動画については、時間的に進行する動画のどの部分を表示するかを、CGROMの記憶位置を特定して規定し、スプライト画像などの静止画については、CGROMの何処に記憶されている画像を、表示装置のどの位置に、どのように描くかなどを規定している。
なお、図10では、フレームAiやフレームBjを生成するためのディスプレイリストについても、便宜上、Ai,Bjと表記している。そして、ディスプレイリストAiは、通常動画や静止画の一フレーム(A1,A2,・・・A6)を特定し、ディスプレイリストBjは、低速再生される補助動画の一フレーム(B1,B2,B3)を特定している。なお、ディスプレイリストBjの更新周期が、他の更新周期の2倍であることは前記の通りである。
そして、このようにして作成されたディスプレイリストDL(=Ai+Bj)は、画像制御CPU63に指示されたデータ転送回路72によって、内蔵RAM59から、外付けDRAM54に転送される(ST4)。図8のタイミングT1’の矢印は、この動作を図示したものである。なお、画像制御CPU63は、動作周期ごとに、各表示装置一フレームを特定する一のディスプレイリストDLを生成する必要はなく、複数タイミングでの表示内容を特定する複数のディスプレイリストDL1,DL2・・・を、一の動作周期でまとめて生成しても良い。
また、図10には、画像制御CPU63によるステップST15の処理が、CPU63から描画回路76へ向かう縦方向の矢印で示され、画像制御CPU63によるステップST13〜ST15の処理が、CPU63から表示回路A/Bに向う縦方向の矢印で示されている。
続いて、図9(c)〜(d)や図10を参照しつつ、描画回路76、グラフィックスデコーダ75、及びジオメトリエンジン77などが協働して実行する描画動作について確認的に説明する。図10に示す通り、この描画動作は、一定時間(δ)毎に繰り返されるが、便宜上、以下の説明では、書換え後のディスプレイリストDL(=A1+B1)に基づいて実行されるタイミングT1+2δ以降の描画動作を説明する。
描画回路76は、外付けDRAM54に記憶されているディスプレイリストのうち、未処理で最古のディスプレイリストであるディスプレイリストDL(=A1+B1)に記載されている描画コマンドを順番に解析して(図9(c)のSS20)、描画コマンドが指定する静止画や動画について、グラフィックスデコーダ75やジオメトリエンジン77を機能させる。
そして、グラフィックスデコーダ75によってデコードされた静止画データや動画データは、各々、内蔵VRAM71に確保されている静止画デコード領域や動画デコード領域に伸張展開される(SS22〜SS23)。次に、デコード後の静止画データや動画データが、描画コマンドによって規定される描画態様で、VRAM71のフレームバッファFB(FBa,FBb)の所定位置に書込まれることで描画処理が実行される(SS24)。なお、描画態様には、フレームバッファFB(FBa,FBb)における描画位置が含まれるが、スプライト画像などの場合には、更に、描画姿勢や拡大縮小率などが規定される場合があり、ジオメトリエンジン77が機能する。
2種類のディスプレイリストDL(=Ai+Bj)が存在する場合には、各ディスプレイリストDL(=Ai+Bj)に基づいて、フレームバッファFBa,FBbの所定位置に、静止画や動画のデコードデータが書込まれることで描画動作が実現される(SS24)。先に説明した通り、フレームバッファFBa/FBbは、各々、描画領域と表示領域に区分されたダブルバッファ構造であり、描画動作(SS24)では、より正確には、フレームバッファFBa/FBbの描画領域における所定位置に、デコードデータが書込まれることになる。
何れにしても、ステップSS22又はステップSS23の処理後に、そのデコードデータ(動画/静止画)に基づいて、所定のフレームバッファFBa/FBbの所定位置に必要な画像が描画される(SS24)。そして、この処理は、ディスプレイリストDLの先頭から最後まで、描画コマンドの記載順に実行されるので、先に描画された画像は、その後に、同じ領域に描画される画像によって上書きされることになる。通常は、表示装置全フレーム分の領域を有する背景画の上に、静止画が描画され、更にその上に動画が描画される。
このようにして、全ての描画コマンドについての描画処理が終われば、間欠的に開始される次回の描画動作まで待機状態となる(SS25)。なお、図8には、タイミングT1+δ’において、フレームバッファFB(FBa+FBb)に、必要な画像が描画されることが矢印で記載されている。
最後に、図9(d)に基づいて表示回路74の動作を説明する。この表示動作も、一定時間(δ)毎に繰り返されるが、便宜上、以下の説明では、図10に示すタイミングT1+2δ以降の表示動作を説明する。先に説明した通り、このタイミングでは、ディスプレイリストDL(=A1+B1)に基づく画像データが、フレームバッファFBa/FBbの描画領域に確保されている。そして、この描画領域は、タイミングT1+2δ以降の表示動作では、表示領域として機能する。
図9(d)に示す通り、表示回路74A/74Bは、各々に対応するフレームバッファFBa/FBbの表示領域に格納されている画像データ(A1,B1)を読み出して、出力選択部79に出力する(SS30)。
その後は、出力選択部79の動作に基づき、表示回路74Aが出力するフレームバッファFBaの画像データ(A1)が、LVDS部80aを経由してメイン表示装置DS1に伝送され、表示回路74Bが出力するフレームバッファFBbの画像データ(B1)が、LVDS部80bを経由してサブ表示装置DS2に伝送されるので、通常動画や静止画の一フレーム(A1)と、補助動画の一フレーム(B1)とが各表示装置DS1,DS2に表示されることになる。
以上は、タイミングT1+2δから始まる表示動作だけでなく、タイミングT1+3δから始まる表示動作でも同じである。但し、タイミングT1+3δから始まる表示動作では、表示回路74Bが、未更新の画像データを出力するので、通常動画や静止画の一フレーム(A2)と、補助動画の一フレーム(B1)が各表示装置DS1,DS2に表示されることになる。以下、同じ動作を繰り返すので、通常動画は30fpsで再生され、補助動画は、15fpsで低速再生されることになる。
以上、30fpsの通常動画をメイン表示装置DS1に表示し、15pfsの補助動画をサブ表示装置DS2に表示する実施例を説明したが、特に限定されず、例えば、メイン表示装置DS1に、通常動画と補助動画を表示するのも好適である。図11は、このような実施態様を説明する図面であり、通常動画と補助動画が、同じ表示装置DS1に、同時期に表示される動作状態を示している。
このような動作を実現するため、この実施例の描画回路76は、直前のデコードデータを再度使用できるよう構成されている。すなわち、動画や静止画の一フレーム分は、デコードされてワークエリアに展開され(一時保存)、これがフレームバッファFBに転送されるが、ワークエリアのデータを再利用できるようにしている。なお、このような動作を実現させるための描画コマンドを、本明細書では、特に再利用コマンドと称することにする。
そして、このような構成を採る場合には、ディスプレイリストB1’,B2’,B3’・・・に書込まれた再利用コマンドによって、直前のデコードデータを再度使用できることになる。そのため、描画回路76がディスプレイリストB1’,B2’,B3’・・・を受けたタイミングでは、描画回路76は、その直前のデコードデータをフレームバッファFBaに書込むことになる。
したがって、例えば、T1+δから開始される動作周期と、T1+2δから開始される動作周期では、補助動画の同一フレームB1がフレームバッファFBaの描画領域に繰り返し格納されることになる。なお、フレームバッファFBaにおける表示領域と描画領域の切換えは、実行周期δ毎に実行されるので、T1+2δから開始される動作周期では、ダブルバッファの2つの領域に、同一フレームB1の画像データが共に格納されることになる。
そのため、表示回路47Aは、T1+2δから開始される動作周期と、T1+3δから開始される動作周期において、補助動画の同一フレームB1を、繰り返しメイン表示装置DS1に出力することになる。この実行周期2回の間、表示装置DS1には、静止画のフレームC1とフレームC2と共に、通常動画のフレームA1とフレームA2が表示されるので、結局、30fpsの通常動画と、15fpsの補助動画が、同一の表示装置DS1に同時に再生されることになる。
以上、プリローダ73を機能させない第1実施例を説明したが、CGROM55をシーケンシャルアクセスする弱点をカバーするには、プリローダ73を活用するのも好適である、図12及び図13は、プリローダ73を使用する第2実施例を示している。この第2実施例でも、メイン表示装置DS1に、普通動画と補助動画を表示するようにしており、補助動画を低速再生する場合には、一連のディスプレイリストには、適宜な頻度(例えば2回に1回)で、再利用コマンドが記載されている。
図12に示す通り、第2実施例の画像演出動作は、画像制御CPU63によって所定時間毎に実行されるディスプレイリストの更新処理(図12(a))と、画像制御CPU63から受けるディスプレイリストに基づいて動作するプリローダ73、描画回路76、及び、表示回路74の各シーケンス動作(図12(b)〜図12(d))によって実現される。なお、プリローダ73についても、描画回路76や表示回路74と同様に、以下に説明するシーケンス動作を実現するよう、電源リセット時やその後の必要なタイミングで、画像制御CPU63が、必要な動作パラメータをレジスタ群70に設定している。
画像制御CPU63は、所定時間δ毎に、リスト更新処理を開始し(ST1)、プリローダ73、描画回路76、及び、表示回路74のシーケンス動作を開始させる(ST2)。図13(a)に示す通り、画像制御CPU63、プリローダ73、描画回路76、及び表示回路74は、一定時間(δ)間隔で間欠的に、各々、自らの動作を並列的に実行することになる。なお、図13(b)は、CPU回路の内蔵RAM59と、VDP回路の内蔵VRAM71と、外付けDRAM54と、CGROM55について、各メモリの内容を模式的に示している。
画像制御CPU63の動作について説明を続けると、ステップST2の処理に続いて、画像制御CPU63は、演出シナリオに基づいてディスプレイリストDLを更新する(ST3)。そして、画像制御CPU63は、このような構成の演出シナリオを参照して、各タイミング(T1,T1+δ,T1+2δ,・・・)で、表示装置DS1の表示画像を特定する一群の描画コマンドを列記したディスプレイリストDL1、DL2,・・・を生成する。
先に説明した通り、補助動画を低速再生する場合には、偶数番目のディスプレイリスト(DL2,DL4・・・)には、再利用コマンドが記載される。
次に、このように構成されたディスプレイリストDLを、外付けDRAM54の規定領域に転送して、次のリスト更新タイミングに達するのを待つ(ST4)。図13(a)及び図13(b)には、タイミングT1から開始される画像制御CPU63の動作の結果、ディスプレイリストDL1が生成され、これがタイミングT1’で外付けDRAM54に転送されることが図示されている。
このディスプレイリストDL1は、第2実施例では、一タイミング遅れたタイミングT1+δで、プリローダ73によって書換え処理がされ、更に一タイミング遅れたタイミングT1+2δで、書換え後のディスプレイリストDL1に基づいて描画回路76によって描画処理がされる。そして、更に一タイミング遅れたタイミングT1+3δで、表示回路74の表示動作に基づいて、ディスプレイリストDL1によって特定される表示画面がメイン表示装置DS1に現れる。
このように、第2実施例では、プリローダ73、描画回路76、及び表示回路74が、一タイミングずつ遅れて動作するよう構成されている。そのため、タイミングT1から開始されるプリローダ73は、外付けDRAM54の未処理で最古のディスプレイリストを処理することで、具体的には、一つ手前のタイミングで生成されたディスプレイリストを処理することになる。言い換えると、タイミングT1に画像制御CPU63が生成したディスプレイリストDL1は、タイミングT1+δから開始されるプリローダ73の動作に基づき、以下の通りに処理される。
以下、タイミングT1+δ以降を説明すると、プリローダ73は、外付けDRAM54の規定領域に記憶されている、未処理で最古のディスプレイリストであるディスプレイリストDL1を解析する。そして、ディスプレイリストDL1に、CGROMのCGデータの必要とする描画コマンドを検出した場合には、その一群のCGデータを外付けDRAM54のCGデータ領域に取得するべく、必要な情報をCGバスIF部82に伝える。また、この先読み(プリロード)処理に関わる描画コマンドにおける、CGデータの記憶位置をCGROM55のソースアドレス値から、DRAM54に確保したCGデータ領域のアドレス値に書換える(SS10)。
以上の動作は、CGROMのCGデータを必要とする描画コマンドを検出する毎に、繰り返し実行され、表示装置DS1の一フレームを構築するためのCGデータ(圧縮データ)が、全て、CGROM55からDRAM54のCGデータ領域に確保されることになる。なお、一度、DRAM54のCGデータ領域に確保したCGデータは、その後も使用可能に管理されているので、それ以前のタイミングで確保したCGデータを使用する場合には、プリロード処理(SS11)がスキップされ(図12(b)の破線参照)、CGデータの記憶位置をCGROM55のソースアドレス値から、DRAM54に確保したCGデータ領域のアドレス値に書換える処理(SS10)だけが実行される。
そして、表示装置DS1の各一フレームを特定するディスプレイリストDL1について、そこに記載された全描画コマンドについて、必要なCGデータのDRAM54への転送処理や、デイプレイリストの書換え処理が終了すれば、間欠的に開始される次回のプリロード動作まで待機することになる(SS12)。なお、図13(b)には、タイミングT1+δにおいて、必要なCGデータがCGROM55から外付けDRAM54に転送される状態が矢印で記載されている。なお、転送されたCGデータは圧縮状態のままである。
描画動作(SS20〜SS24)や出力動作(SS30)については、動作タイミングが遅れるだけで動作内容は第1実施例と同じである。なお、図13(b)には、タイミングT1+2δにおいて、フレームバッファFBaに、必要な画像が描画され、タイミングT1+3δに出力されることが矢印で記載されている。この表示回路74の表示動作も、一定時間(δ)毎に繰り返されるが、普通動画については30fpsの速度で通常再生され、補助動画については、15fpsの速度で低速再生されることになる。
なお、この実施例では、ステップSS10〜SS11の処理は、必ずしも、単一のディスプレイリストDLに限定されず、複数n個のディスプレイリストDLiについて順番に実行することもできる。この場合、画像制御CPU63は、一の動作周期δで、複数のディスプレイリストDLiを生成してDRAM54に転送し、プリローダ73は、複数のディスプレイリストDLiを可能な限り先行して解釈実行することになる。
以上の通り、第2実施例では、一連の動作を、プリローダ73と、描画回路76と、表示回路74とが、連動して各々が担当する処理を並列的に実行するので、高画質で高速に変化する大画面の画像演出を支障なく実現することができる。
以上、本発明の実施例について詳細に説明したが、具体的な記載内容は特に本発明を限定するものではない。例えば、上記した各実施例では、単純な動画再生について説明したが、特に、Iストリーム動画については、必要に応じて、各表示装置DS1,DS2において、逆再生やシーク再生が実行される。このような動作は、通常は順方向に更新されるディスプレイリスト(B1,B2,・・・・Bn)を、逆方向に更新するか(Bn,Bn−1,・・・・B1)、途中から更新を開始すること(Bi,Bi+1,・・・・Bn)で実現される。
また、上記の各実施例では、1/2倍の低速再生を説明したが、図10の「切換え指示なし+動作指示」の動作や、図11の再利用コマンドの使用を、M回連続されれば、1/(M+1)倍の低速再生も可能となる。また、規則的な低速再生を説明したが、通常再生の途中で、図10の「切換え指示なし+動作指示」の動作や、図11の再利用コマンドの使用を、必要な回数だけ連続させれば、適所で一時停止される動画再生を実現することができる。
一時停止の態様としては、例えば、素早く移動してしばらく止まる、などの動作を例示することができる。何れにしても、演出内容に対応して、1/(M+1)倍の低速再生や、一時停止動作を含めることで、動画データのデータ容量を抑制しつつ演出効果を高めることができる。なお、本発明は、弾球遊技機に限らず、回胴遊技機など、画像演出を伴う他の遊技機においても好適に活用できることは勿論である。