(57)【要約】【課題】  画素数が多いＬＣＤ１６を備えた遊技機において、処理能力が見合わないＶＤＰを用いながらも、高画質での画面表示を実現する。【解決手段】  遊技機のＬＣＤ１６に画像を表示させるため、ＣＰＵは遊技状況に応じて、画面の内容を決定する。そして、ＬＣＤ１６の表示領域を、上画像、下画像の２つの部分に分け、上画像、下画像の順にＶＤＰに描画させる。ＶＤＰはが生成した上画像、下画像の表示データはフレームメモリに順に格納され（状態ＦＭ２）、上画像、下画像の表示データがそろった時点で、ＬＣＤ１６に出力される。こうすることにより、解像度を低下させることなく、画像を表示させることができる。ＣＰＵは、更に、このように分割して表示データを生成するモードと、上記分割を行わずに表示データを生成するモードとを、ＬＣＤ１６に表示すべき画面内容に応じて使い分ける。【選択図】  図４
2007312949.tif 000002
【特許請求の範囲】
【請求項１】
遊技盤面に設けられた表示装置の表示領域に遊技中に所定の演出表示を行う遊技機であって、
前記遊技の状況に応じて前記演出表示を制御する表示コマンドを出力するサブ制御基板と、
前記サブ制御基板からの表示コマンドを受けて、前記表示装置を駆動するための表示データを生成し、該表示装置に出力する表示制御基板とを有し、
前記表示制御基板は、
前記表示装置に表示すべき画面の構成を規定する画面データを記憶する画面データ記憶部と、
前記表示領域をＮ（Ｎは自然数）分割して分割領域を設定し、前記表示コマンドに応じて、各分割領域に表示すべき画面を決定し、前記画面データに基づいて、該分割領域に応じた描画コマンドを出力する描画制御部と、
前記画面に表示される所定のスプライトを前記表示装置の画素単位で表したスプライトデータを記録するキャラクターメモリと、
仮想のキャンバス上に前記描画コマンドで指定されたスプライトデータを指定された位置に配置して、前記画面データに対応した画像を描画し、前記キャンバス上に前記分割領域に対応した大きさで予め設定された表示エリア内の描画結果に基づいて表示データを生成する表示データ生成部と、
前記生成された各分割領域の表示データを、前記表示領域上の画素と対応づけて記憶するための表示データ記憶部と、
前記表示データの前記表示データ記憶部への格納を制御するとともに、該表示データを所定のタイミングで前記表示装置に出力する表示データ管理部とを備え、
前記描画制御部は、前記表示コマンドに基づいて、前記分割数Ｎを切り換える遊技機。
【請求項２】
請求項１記載の遊技機であって、
前記描画制御部は、前記分割の数Ｎが１の非分割モードと、前記分割数Ｎが２以上の分割モードとを切り換える遊技機。
【請求項３】
請求項１または２記載の遊技機であって、
前記分割数Ｎを切り換える際の移行期間において、前記表示データの前記表示データ記憶部への新たな格納が禁止される遊技機。
【請求項４】
請求項３記載の遊技機であって、
前記表示データ管理部は、前記表示データ生成部から出力される所定の同期信号をトリガとして前記表示データ記憶部への前記表示データの格納を開始するよう構成されており、
前記格納の禁止は、前記同期信号の前記表示データ管理部への伝達を停止することで実現される遊技機。
【請求項５】
請求項１〜４いずれか記載の遊技機であって、
前記表示データ生成部は、前記分割数Ｎの切り換えに応じて、前記表示データを出力する周期を切り換える遊技機。
【請求項６】
請求項１〜５いずれか記載の遊技機であって、
前記表示データ記憶部は、複数枚の画面に対応する表示データを格納可能であり、
前記描画制御部は、前記分割数Ｎを切り換える際の移行期間において、前記複数枚の画面に対応する表示データが同一となるよう、前記描画コマンドの出力を制御する遊技機。
【請求項７】
請求項１〜６いずれか記載の遊技機であって、
前記表示データ記憶部は、前記分割数Ｎの値に応じて個別に設けられた領域に、前記表示データを格納する遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊技盤面に設けられた表示装置の表示領域に遊技中に所定の演出表示を行う画面表示方法に関する。
【背景技術】
【０００２】
パチンコ機やスロットマシンなどの遊技機では、遊技盤に備えられた表示装置を用いて、遊技中に種々の演出表示が行われる。この演出表示には、液晶パネルが用いられることが多い。液晶パネルは、マトリックス状に配置された画素によって画像を表示する。画像を表示するための表示データは、例えば、特許文献１記載の手順で生成される。まず、演出表示を制御するためのＣＰＵは、表示コマンドを受け取り、その内容を解析し、予め用意されたスケジュールデータを参照して、表示すべき画面の内容を決定する。そして、このスケジュールデータに基づいて描画コマンドをＶＤＰ（Video Display Processor）に出力する。ＶＤＰは、この描画コマンドをビットマップ展開して画素単位での表示データを生成し、液晶パネルに出力する。表示データを生成する回路には、生成されたデータを一時的に保持しておくためのバッファが設けられるのが通常である。
【０００３】
【特許文献１】特開２００５−２７８３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
近年、遊技機の興趣を高めるため、液晶パネルが大型化し、画素数が増大する傾向にある。このような液晶パネルを用いるためには、その画素数に応じて、ＶＤＰの処理能力を向上させることが望ましい。しかし、画素数は液晶パネルの面積に比例して増大するため、ＶＤＰには液晶パネルの面積増に応じた能力向上が要求されることになる。この能力向上にはＶＤＰが表示データを生成する際に使用するメモリ容量や表示データの管理情報を格納するためのレジスタサイズの増大、描画に必要なスプライトのデータを格納するキャラＲＯＭの容量、キャラＲＯＭへのアクセス速度などが要求され、いずれの面でも能力向上には限界があり、また仮に能力向上が技術的に可能であったとしても、ＶＤＰのコスト増大、ひいては遊技機自体のコスト増大という看過できない弊害を招くことになる。
【０００５】
特許文献１では、ＶＤＰの能力向上に代えて、スケーラと呼ばれる素子を用いる技術が開示されている。スケーラを用いれば、ＶＤＰが生成した１画素分の表示データを、複数画素で共通に使用することによって、表示データを拡大し、大画面の液晶パネルに画像を表示することが可能となる。しかし、この技術は、複数の画素に同じ表示データを出力するため、液晶パネルの解像度を実質的に低下させ、表示される画像の画質を低下させることになる。
【０００６】
このように、従来の技術では、ＶＤＰの能力およびコストを抑制しつつ、十分に高い解像度で大画面の液晶パネルへの画像表示を行うことができなかった。かかる課題は、液晶パネルを用いる場合のみならず、種々の表示装置に共通の課題であった。本発明は、この課題の解決を図り、遊技機において、ＶＤＰの能力増を要さず、高解像度の表示装置への画像表示を実現することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、遊技盤面に設けられた表示装置の表示領域に遊技中に所定の演出表示を行う遊技機を対象とする。遊技機には、パチンコ機や回胴式遊技機などが該当する。表示装置は、液晶パネル、プラズマディスプレイ、有機ＥＬなどを利用可能である。遊技機には、遊技の状況に応じて演出表示を制御する表示コマンドを出力するサブ制御基板と、サブ制御基板からの表示コマンドを受けて、表示装置を駆動する表示制御基板とが備えられている。この他に、遊技機全体の制御を統合する主制御基板、賞球やメダル等の払出しを制御する払出基板などを備えてもよい。
【０００８】
本発明の表示制御基板は、表示装置への演出表示を実現するために画面データ記憶部、描画制御部、キャラクターメモリ、表示データ生成部、表示データ管理部が設けられている。画面データ記憶部は、表示装置に表示すべき画面の構成を規定する画面データを記憶している。画面データは、表示コマンドと対応づけられているため、画面データを用いることによって表示コマンドに応じた画面が決まることになる。描画制御部は、大きく２つの機能を実現する。第１に、描画制御部は、表示コマンドに基づいて表示領域をＮ（Ｎは自然数）分割して分割領域を設定する。本明細書では、「分割」とは、分割領域と表示領域とが同一となる場合も含む広い概念で用いる。描画制御部は、第２に、表示コマンドに応じて、各分割領域に表示すべき画面を決定し、画面データに基づいて描画コマンドを出力する。例えば、分割領域が表示領域と一致している場合には、表示領域に表示すべき画面全体を描画するための描画コマンドを出力する。また、表示領域を２分割して分割領域を定義している場合には、１回目の処理で一方の分割領域を描画するための描画コマンドを出力し、２回目の処理で他方の分割領域を描画するための描画コマンドを出力する。３分割以上されている場合も同様である。
【０００９】
ここで、描画コマンドとは、画面を、表示装置の画素単位で展開したデータを生成するためのコマンドである。本発明では、キャラクターメモリに、画面に表示される所定のスプライトを表示装置の画素単位で表したスプライトデータが記録されている。描画コマンドには、例えば、このスプライトの配置、複数のスプライトの重ね合わせ方が含まれる。スプライト以外の図形や線分の描画を指定するコマンドを含めても良い。
【００１０】
本明細書では、「キャラクター」および「スプライト」を次の意味で用いる。スプライトとは、遊技機の画面にまとまった単位として表示されるイメージを意味する。例えば、画面上に種々の人物を表示させる場合には、それぞれの人物を描くためのデータを「スプライト」と呼ぶ。複数の人物を表示させるためには、複数のスプライトを用いることになる。人物のみならず背景画像を構成する家、山、道路などをそれぞれスプライトとすることもできる。また、背景画像全体を一つのスプライトとしてもよい。遊技機は、これらの各スプライトの画面上の配置を決め、スプライト同士が重なる場合の上下関係を決めることで、種々の画像を表示させることが可能である。
【００１１】
遊技機では、データを扱う便宜上、各スプライトは縦横それぞれ６４ピクセルなど一定の大きさの矩形領域を複数組み合わせて構成される。この矩形領域を描くためのデータを「キャラクター」と呼ぶ。小さなスプライトの場合は、一つのキャラクターで表現することができるし、人物など比較的大きいスプライトの場合には、例えば、横２×縦３などで配置した合計６個のキャラクターで表現することができる。背景画像のように更に大きいスプライトであれば、更に多数のキャラクターを用いて表現することができる。キャラクターの数および配置は、スプライトごとに任意に指定可能である。
【００１２】
表示データ生成部は、仮想のキャンバス上に描画コマンドで指定されたスプライトデータを指定された位置に配置して、画面データに対応した画像を表す表示データを生成する。表示データは、ビットマップ展開された画像のうち、キャンバス上に分割領域に対応した大きさで予め設定された表示エリア内の描画結果に基づいて生成される。本発明では、このキャンバスのサイズは、各分割領域よりも大きく表示領域を構成する全画素数よりは縦横の一方が小さい。分割領域よりも大きいサイズとすることにより、いずれの分割領域についても、それぞれキャンバス上に画像を展開することが可能となる。表示領域の画素数よりも小さいサイズとすることにより、表示データ生成部に要求される処理能力を抑制することができる。キャンバスのサイズは、表示データ生成部の能力によって定まるものである。例えば、表示データ生成部が描画用に有するメモリ容量上の制約で定まる場合もあれば、キャラクターメモリへのアクセスや描画処理の速度上の制約で定まる場合もある。また、表示データの管理情報を格納するためのレジスタサイズ上の制約で定まる場合もある。キャンバスのサイズは、表示データ生成部の物理的な性能の制約とは無関係に、設定された値であってもよい。キャンバスは、仮想的なものであるため、必ずしもフレームメモリのようにキャンバス全体の画素を記憶可能なメモリが物理的に用意されている必要はない。
【００１３】
表示データ記憶部には、こうして生成された各分割領域の表示データが、表示領域上の画素と対応づけて記憶される。つまり、表示データ記憶部には、表示領域に表示すべき画面全体に対応したデータが格納可能であり、各分割領域の表示データが生成されるたびに、画面のデータが部分的に満たされていき、全ての分割領域についての処理が完了すると、画面全体のデータが満たされることになる。表示データ管理部は、表示データの表示データ記憶部への格納を制御するとともに、表示データを所定のタイミングで表示装置に出力する。表示データと表示領域上の各画素との対応関係は１対１に限らず、ｉ対ｊ（ｉ，ｊは自然数）でよい。１対１以外の対応関係では、表示装置への出力時に、表示領域上の画素数に適合するよう表示データを拡大または縮小すればよい。表示データの出力タイミングは、種々の設定が可能である。例えば、画面全体のデータが満たされた後に出力を開始するようにしてもよいし、画面の一部のデータが満たされた時点で出力を開始してもよい。後者の場合には、表示データの格納と、出力とを並行して行うことになる。
【００１４】
本発明では、描画制御部は、更に表示コマンドに基づいて、分割数Ｎを切り換える。遊技機では、多彩な演出表示が行われる。例えば、パチンコ機の場合、リーチ後には画像自体を楽しませる内容の画面よりも、画面が移り変わるスピード感によって興趣を高めることが多い。一方、その他の場面では、画像自体を楽しませる内容の画面が用いられることもある。前者では、表示される各フレームの画面は、比較的簡易な処理で生成することが好ましく、後者では、高解像度で高画質の画面を生成することが好ましい。本発明では、表示コマンドに基づいて、分割数Ｎを切り換えることにより、狙いの異なる演出画面にかかる切り換えを実現している。
【００１５】
分割数Ｎの切り換えには次の利点がある。分割数Ｎの切り換えは、分割領域のサイズ変更、ひいては表示データ生成装置が表示データを生成する際の解像度の変更を意味する。解像度が高い場合には、画質が向上するものの、スプライトデータの解像度も同様に高める必要があるため、キャラクターメモリの容量が増大する。また、表示データの画素数が増大するため、表示データ生成時の処理負荷が増大し、所要時間が増大する。解像度が低い場合には、逆に、画質が低下するものの、キャラクターメモリの容量は抑制でき、所要時間も抑制することができる。従って、比較的高速に移り変わる画面を表示する場合には、分割数Ｎを低減することにより、低容量のキャラクターメモリを用い、短時間で表示データを生成することが可能となる。逆に、高画質が要求される画面を表示する場合には、分割数Ｎを増大させればよい。
【００１６】
本発明では、一例として、分割の数Ｎが１の非分割モードと、分割数Ｎが２以上の分割モードとを切り換える態様を採ることができる。分割モードで用いる分割数Ｎは１通りであってもよいし、更に複数の分割数に切り換えてもよい。非分割モードおよび分割モードの使い分けは任意に決定可能である。一例として、画質への要求が低い画面に対して非分割モードを用い、高画質が要求される画面に対して分割モードを用いるように使い分けることができる。
【００１７】
先に説明した通り、表示装置は種々の装置を用いることが可能であるが、例えば、画素の配列に沿った一方向に各画素の表示状態を設定する主走査と、一方向と交差する方向に主走査を繰り返し実行する副走査とによって駆動される装置とすることができる。この場合において分割数Ｎが２以上の場合、分割領域は、主走査が行われる一方向（以下、「主走査方向」と呼ぶ）に平行な境界線で定義することが好ましい。例えば、左右方向に主走査が行われる場合には、左右方向の境界線によって分割領域を定義することが好ましく、各領域は上下方向に配置されることになる。分割領域は、更に、主走査に交差する方向（以下、「副走査方向」と呼ぶ）の境界線を含めて定義しても良い。例えば、上述の場合において、上下方向に配置された各領域を更に、左右に分割して各分割領域を定義してもよい。
【００１８】
いずれの場合においても、主走査方向に平行な境界線で分割領域を定義することにより、主走査方向に配列された一列分の画素（以下、「ラスタ」と呼ぶ）に対応するデータを速やかに生成することができる。仮に主走査方向に交差する境界線で分割領域が定義されている場合には、１ラスタ分のデータを用意するために、複数回の表示データ生成を繰り返す必要が生じるが、上述の態様では表示データの生成が行われる度に、速やかに１ラスタ分の表示データが完成することになる。この結果、各ラスタの表示データの格納、全ラスタの表示データの生成が完了したか否かの判断その他の管理が容易となる利点がある。また、表示データの格納と出力とを並行して行うことが可能となる利点もある。
【００１９】
分割数が２以上の場合、表示データ記憶部へのデータ格納の際、表示データと分割領域との対応関係は、表示データ管理部が自律的に判断可能としてもよい。表示データ管理部にとって、各分割領域の位置および処理順序が既知となっている場合には、この方法が可能である。これに対し、描画制御部が、描画コマンドを表示データ生成部に出力する際に、フィールド信号、即ち描画コマンドに対応する分割領域を特定するための制御信号を、表示データ管理部に出力するようにしてもよい。予め分割領域に付されたインデックスを表す信号をフィールド信号として用いることができる。こうすることにより、表示データ管理部は、容易かつ確実に、表示データと分割領域との対応関係を把握することが可能となる。
【００２０】
分割数Ｎが２以上の場合には、先に説明した通り、分割領域ごとに表示データを生成し、これらの表示データを集めて画面全体に対応する表示データを生成する。これは、キャンバスに展開すべき描画コマンドが分割領域ごとに異なることを意味する。分割領域ごとに異なる描画コマンドを表示データ生成装置に出力するためには、種々の方法を採ることができる。
【００２１】
第１の態様として、分割領域が同一の形状となっている場合には、描画制御部は、分割領域に関わらず、画面の全体を描画するための描画コマンドを出力する。この際、描画コマンドで指定されるスプライトデータの位置と表示エリアとの相対的な位置関係を分割領域に応じて変更する。描画コマンドに含まれる座標値、表示エリアの位置を規定する座標値の一方または双方を変更すればよい。この態様では、描画コマンドを複数の分割領域で共通して使うことができるため、用意しておくべき画面データの容量を抑制することが可能となる。
【００２２】
第２の態様として、分割領域が同一の形状となっている場合には、描画制御部は、分割領域のうち最初の分割領域に対して、画面の全体を描画するための描画コマンドを出力し、２番目以降の分割領域に対しては、キャンバスにおける表示エリアの位置を変更するコマンドを出力するようにしてもよい。この態様では、分割領域の位置に応じて表示エリアの位置を変更するため、描画コマンドは２以上の分割領域で共通化することができる。もっとも、この態様においても、２番目以降の分割領域においても、適宜、描画コマンドを出力しても差し支えない。
【００２３】
第３の態様として、画面データ記憶部に、一つの画面に対し分割領域単位で画面の一部を表す複数通りの画面データを用意しておいてもよい。画面データは、分割領域ごとに個別に用意してもよいし、２以上の分割領域に共通のデータとしてもよい。このように複数通りの画面データが用意されている場合、描画制御部が、分割領域に対応した画面データを選択して描画コマンドを出力することにより、座標値の修正などの処理を要するまでなく、各分割領域に応じた表示データを生成することができる。
【００２４】
分割数Ｎが２以上の場合、表示データの生成時には、描画コマンドとは別に、分割領域の全てに共通して描画時の条件を設定する条件設定コマンドが要求されることがある。条件設定コマンドには、例えば、描画コマンドが複数のレイヤから構成されている場合に、各レイヤの重ね合わせ順序、表示／非表示の設定などが含まれる。このような場合には、描画制御部が、条件設定コマンドを生成して表示データ生成部に出力すればよい。条件設定コマンドの出力は種々のタイミングで行うことができる。一例として、最初の分割領域に対する描画コマンドを出力した後に出力する方法を採ることができる。こうすることにより、描画コマンドとほぼ同期して条件設定コマンドを表示データ生成部に受け渡すことができる利点がある。
【００２５】
また、上述のタイミングで条件設定コマンドを出力するか否かに関わらず、条件設定コマンドは、２番目以降の分割領域のうち少なくとも一つに対する処理時を除いて出力することが好ましい。つまり、最初の分割領域の処理時には必然的に出力されるが、２番目以降の分割領域の処理時には、一部または全部で出力が省略される。こうすることで表示データ生成部へのデータ出力を簡素化することができる。
【００２６】
分割数Ｎの切り換えを行う際の移行期間においては、表示データ記憶部に新たに表示データを格納することを禁止することが望ましい。分割数Ｎが切り換えられると、表示データのサイズ等が変化するため、一時期、描画コマンドの出力、表示データの出力、格納等において不安定な時期が生じるおそれがある。上述の態様によれば、切り換えを行う際の移行期間においては、新たなデータ格納を禁止するため、この期間では、表示データ記憶部に従前の処理で記憶済みの表示データを用いて画面の表示が行われる。従って、表示データの出力および格納等が不安定な時期においても、画面表示に違和感が生じることを回避できる。ここで、移行時期は、分割数Ｎの切り換えが完了するまでに許容される時間範囲、および切り換え時に画面に生じる違和感の双方における影響を考慮して、任意に設定可能である。
【００２７】
表示データの格納禁止には、種々の方法を採ることができる。例えば、表示データ管理部が、表示データ生成部から出力される所定の同期信号をトリガとして表示データの格納を開始するよう構成されている場合には、この同期信号が表示データ管理部に伝達されるのを停止してもよい。例えば、同期信号を表示データ生成部が出力している場合には、その出力自体を停止してもよい。また、表示データ生成部と表示データ管理部との間の同期信号の伝達経路に、信号の伝達可否を切り換えるスイッチ回路を設け、描画制御部がこのスイッチ回路のオン・オフを制御する方法を採っても良い。
【００２８】
本発明では、表示データ生成部は、分割数Ｎの切り換えに応じて、表示データを出力する周期を切り換えるようにしてもよい。分割数Ｎの切り換えによって、表示データ生成部が１回の処理で生成すべき表示データのサイズが変動する。従って、周期を切り換えることにより、表示データ生成部の処理能力の制限に関わらず、柔軟に分割数Ｎを設定可能となる。表示データの出力周期は任意に設定可能であるが、特に、分割数Ｎ×周期が一定となるよう切り換えることが好ましい。こうすることにより、各フレームを表示するために必要となる表示データは、一定の周期でそろうことになり、表示装置への表示データの出力制御の簡素化、安定化を図ることが可能となる。
【００２９】
表示データ記憶部は、複数枚の画面に対応する表示データを格納可能、即ち複数フレーム分の容量を備えるようにしてもよい。この場合、描画制御部は、分割数Ｎを切り換える際の移行期間においては、複数枚の画面に対応する表示データが同一となるよう、描画コマンドの出力を制御することが好ましい。先に説明した通り、移行期間においては、描画コマンドの出力、表示データの生成、格納が不安定になることがある。かかる状況で、複数フレーム分の記憶領域に、異なる表示データを格納していると、これらの表示データが表示装置に出力される順序によっては、表示画面の内容が不自然に変動し、違和感を与える画面となるおそれがある。上述の通り、複数のフレームに格納される表示データを同一のものとしておけば、かかる弊害が生じる可能性を抑制することができる。
【００３０】
複数フレーム分の表示データを同一とする制御は種々の態様で実現できる。第１の方法として、同一の描画コマンドを繰り返し表示データ生成部に出力してもよい。第２の方法として、移行期間は描画コマンドの出力を保留し、表示データ生成部に従前に出力済みの描画コマンドに基づく表示データを繰り返し生成させてもよい。
【００３１】
本発明では、表示データ記憶部は、分割数Ｎの値に応じて個別に設けられた領域に、表示データを格納するよう構成することが好ましい。分割数Ｎが変わると表示データ生成装置から出力される表示データのサイズおよびその後の管理方法も変動するため、格納領域を変えることにより表示データの格納、管理を安定的に行うことが可能となる。分割数Ｎに応じた格納領域の使い分けは、表示データ記憶部が自律的に行うようにしてもよいし、描画制御部が表示データを格納すべき格納領域を指定するようにしてもよい。
【００３２】
本発明では、上述した種々の特徴を全て備えている必要はなく、一部を省略してもよいし、適宜、組み合わせて適用してもよい。また、本発明における上述の特徴部分は、ハードウェア的に実現してもよいし、ソフトウェア的に実現してもよい。
【発明を実施するための最良の形態】
【００３３】
本発明の実施例について以下の順序で説明する。本実施例では、パチンコ機としての構成例を示すが、遊技機は、回胴式遊技機としてもよい。
Ａ．遊技機の構成：
Ｂ．制御用ハードウェア構成：
Ｃ．表示制御処理：
Ｄ．非分割表示制御処理：
Ｅ１．分割表示制御処理：
Ｅ２．分割表示制御処理の変形例：
Ｆ．分割移行処理：
Ｇ．非分割移行処理：
【００３４】
Ａ．遊技機の構成：
図１は実施例としてのパチンコ機１の正面図である。パチンコ機１は、中央に遊技領域６を備えた遊技盤４が取り付けられている。遊技者は、ハンドル８を操作して遊技領域６内に遊技球を打ち込み、入賞口に入賞させる遊技を行うことができる。入賞口の一つである始動入賞口９に遊技球が入賞すると、パチンコ機１は抽選を行い、その結果に応じて「大当り」か否かが決まる。大当り発生時には、大入賞口１０が所定期間開放するなどの大当り遊技が行われる。
【００３５】
上述の抽選の結果は、４つのランプで構成された特別図柄表示装置４１に表示される。遊技領域６の中央には、ＬＣＤ１６が備えられており、遊技中に種々の演出画面（装飾図柄と呼ぶこともある）が表示される。始動入賞口９への入賞時、大当りの発生時などにも、それぞれ遊技の状態に応じた演出画面が表示される。装飾図柄は、遊技の状況に応じて種々変化する。抽選結果を表示する過程で、大当りが発生する可能性が高いリーチ状態になると、スピード感あふれる画面が表示され、遊技者をハラハラドキドキさせることによって興趣を高めるようになっている。また、リーチ以前の状態や、遊技が行われていない時のデモ画面では、種々のスプライトを組み合わせて画面自体にも楽しめる要素を多分に含んだ画面が表示される。装飾図柄には、このように主としてスピード感が重視される画像（以下、「高速画像」という）と、主として画質が重視される画像（以下、「高画質画像」という）とが含まれる。以下の実施例は、スピード感および画質のいずれを重視すべきか微妙なものも含めて、高速画像、高画質画像のいずれかに分類したとして説明する。本実施例では、この分類に応じて２つの表示モードを使い分けるからである。装飾図柄を３通り以上に分類し、３つ以上の表示モードを使い分けるようにしてもよい。
【００３６】
Ｂ．制御用ハードウェア構成：
図２はパチンコ機１の制御用ハードウェア構成を示すブロック図である。パチンコ機１は、メイン制御基板３、払出制御基板２５、サブ制御基板３５、装飾図柄制御基板３０などの各制御基板の分散処理によって制御される。メイン制御基板３、払出制御基板２５、サブ制御基板３５は、それぞれ内部にＣＰＵ、ＲＡＭ、ＲＯＭなどを備えたマイクロコンピュータとして構成されており、ＲＯＭに記録されたプログラムに従って種々の制御処理を実現する。
【００３７】
実施例のパチンコ機１では、種々の不正を防止するため、メイン制御基板３への外部からの入力が制限されている。メイン制御基板３とサブ制御基板３５とは単方向のパラレル電気信号で接続されており、メイン制御基板３と払出制御基板２５とは、制御処理の必要上、双方向シリアル電気信号で接続されている。払出制御基板２５、サブ制御基板３５は、それぞれメイン制御基板３からのコマンドに応じて動作する。装飾図柄制御基板３０は、サブ制御基板３５からのコマンドに応じて動作する。パチンコ機１には、メイン制御基板３が直接に制御する機構もある。図中には、メイン制御基板３が制御する装置の一例として、大入賞口１０を駆動するための大入賞口ソレノイド１８、および特別図柄表示装置４１を例示した。メイン制御基板３は、この他にも、普通図柄表示装置、特別図柄保留ランプ、普通図柄保留ランプ、大当り種類表示ランプ、状態表示ランプなどの表示を制御することができる。また、メイン制御基板３には、遊技中の動作を制御するため、種々のセンサからの検出信号が入力される。図中には一例として入賞検出器１５ａからの入力を例示した。入賞検出器１５ａとは、始動入賞口９への入賞を検出するためのセンサである。メイン制御基板３は、入賞検出器１５ａからの信号に応じて、先に説明した抽選を行い、大当り遊技を実行することができる。メイン制御基板３には、他にも種々の入力がなされているが、ここでは説明を省略する。
【００３８】
遊技時におけるその他の制御は、払出制御基板２５、サブ制御基板３５を介して行われる。払出制御基板２５は、遊技中の遊技球の発射および払い出しを次の手順で制御する。遊技球の発射は、直接的には発射制御基板４７によって制御される。即ち、遊技者が、発射ハンドル８を操作すると、発射制御基板４７は操作に応じて発射モータ４９を制御し、遊技球を発射する。遊技球の発射は、タッチ検出部４８によって、発射ハンドル８に遊技者が触れていることが検出されている状況下でのみ行われる。払出制御基板２５は、発射制御基板４７に対して、発射可否の制御信号を送出することで、間接的に球の発射を制御する。
【００３９】
遊技中に入賞した旨のコマンドをメイン制御基板３から受信すると、払出制御基板２５は、賞球払出装置２１内の払出モータ２０を制御し、払出球検出器２２によって球数をカウントしながら規定数の球を払い出す。払出モータ２０の動作は、モータ駆動センサ２４によって監視されており、球ガミ、球切れなどの異常が検出された場合、払出制御基板２５は、表示部４ａにエラーコードを表示する。エラー表示された時には、係員が異常を除去した後、操作スイッチ４ｂを操作することで復旧させることができる。
【００４０】
サブ制御基板３５は、遊技中における音声、表示、ランプ点灯などの演出を制御する。これらの演出は、通常時、入賞時、大当たり時、エラー時、不正行為その他の異常が生じた時の警報など、遊技中のステータスに応じて変化する。メイン制御基板３から、各ステータスに応じた演出用のコマンドが送信されると、サブ制御基板３５は、各コマンドに対応したプログラムを起動して、メイン制御基板３から指示された演出を実現する。
【００４１】
本実施例では、図示する通り、サブ制御基板３５はスピーカ２９を直接制御する。ＬＣＤ１６は、装飾図柄制御基板３０を介して制御する。装飾図柄制御基板３０の回路構成は後述する。サブ制御基板３５の制御対象となるランプには、遊技盤面に設けられたパネル装飾ランプ１２と、枠に設けられた枠装飾ランプ３１がある。サブ制御基板３５は、ランプ中継基板３２、３４を介して、パネル装飾ランプ１２および枠装飾ランプ３１と接続されており、各ランプを個別に点滅させることができる。
【００４２】
図３は装飾図柄制御基板３０の回路構成を示す説明図である。装飾図柄制御基板３０は、サブ制御基板３５から受けた表示コマンドに応じて、ＬＣＤ１６に画面を表示するための駆動データを出力する。駆動データは、ＬＣＤ１６にマトリックス状に備えられたＲ，Ｇ，Ｂの各画素の表示階調値を示すデータである。本実施例のＬＣＤ１６は左右方向に８００画素、上下方向に６００画素を有している。駆動データは、主走査として、ＬＣＤ１６の左から右に順次、画素ごとに出力される。一ラスタ分の出力が完了すると、副走査として直下のラスタに移行し、同様に左から右に向けて順次、画素ごとに駆動データが出力される。以下では、左右方向を主走査方向と呼び、上下方向を副走査方向と呼ぶこともある。
【００４３】
装飾図柄制御基板３０には、表示コマンドに応じた駆動データを生成する機能を実現するために図示する種々の回路が用意されている。装飾図柄制御基板３０には、まず、駆動データの生成を制御するためのマイクロコンピュータとしてＣＰＵ３８１、ＲＡＭ３８２、ＲＯＭ３８３が備えられている。ＲＯＭ３８３には、駆動データを生成するための表示プログラム、表示コマンドに対し表示すべき画面、表示の時間、表示の順序を規定するスケジューラ、各画面の構成を規定する画面データが記憶されている。画面データの内容については後述するが、この段階では、ＬＣＤ１６の画素に対応したデータとはなっていない。ＣＰＵ３８１は、ＲＯＭ３８３を参照して、表示コマンドに応じた画面データを抽出し、ＶＤＰ（Video Display Processor）３８５に出力する。
【００４４】
キャラＲＯＭ３８６は、スプライトデータ、即ち画面に表示されるスプライトをビットマップで表したデータを格納している。ＶＤＰ３８５は、ＣＰＵ３８１から受け取った画面データに基づいて、表示すべきスプライトデータをキャラＲＯＭ３８６から抽出し、表示データ、即ち表示すべき画像をビットマップ展開したデータを生成して、スケーラ３９０に出力する。以下、ビットマップ展開するための記憶領域を「キャンバス」と呼ぶ。
【００４５】
ＶＤＰ３８５には、ＣＰＵ３８１からの画面データを受け取り保持しておくためのレジスタとして、スプライトレジスタ３８５ｓおよびＶＤＰレジスタ３８５ｖを備えている。スプライトレジスタ３８５ｓは、画面データのうち、スプライトの配置や重ね合わせの順序などを示す描画コマンドを受け取るためのレジスタであり、ダブルバッファとして構成されている。つまり、第１バッファ、第２バッファという二つの等しい容量のバッファが備えられている。従って、ＶＤＰ３８５は、ＣＰＵ３８１から出力された描画コマンドが第１バッファに書き込まれている間、第２バッファに保持されている描画コマンドを読み出して表示データの生成処理を実行することができる。ＶＤＰレジスタ３８５ｖは、表示データを生成する際の条件設定を指定するコマンド（以下、「条件設定コマンド」と呼ぶ）を記憶するためのレジスタである。条件設定コマンドには、例えば、描画コマンドが複数のレイヤから構成されている場合に、各レイヤの重ね合わせ順序、表示／非表示の設定などが含まれる。条件設定コマンドは比較的低容量であり、書き込みの所要時間が短いことから、ＶＤＰレジスタ３８５ｖはダブルバッファとはなっていない。
【００４６】
スケーラ３９０は、ＶＤＰ３８５からの表示データをフレームメモリ３９７に格納する。また、フレームメモリ３９７から表示データを読み出し、ＬＣＤ１６に出力する。図示する通り、本実施例では、フレームメモリ３９７の内部は３９７［０］〜３９７［５］の６つのフィールドに分かれている。４つのフィールド３９７［０］〜３９７［３］は８００×３００画素分を単位とするメモリ領域（以下、「ＳＶＧＡフィールド」と呼ぶこともある）である。フィールド３９７［４］、３９７［５］は６４０×４８０画素分を単位とするメモリ領域（以下、「ＶＧＡフィールド」と呼ぶこともある）である。このようにサイズの異なる２種類のフィールドが用意されている意義について説明する。
【００４７】
本実施例では、ＶＤＰ３８５は２つの表示モードでＬＣＤ１６の表示データを生成する。一つは、表示データを、６４０×４８０画素のＶＧＡサイズで生成するモードである。このモードでは、ＶＧＡサイズの表示データをスケーラ３９０で８００×３００画素に拡大してＬＣＤ１６に出力する。以下、この表示モードを非分割モードと称する。非分割モードは、ＶＧＡサイズの画像を拡大してＬＣＤ１６に表示するため、１フレーム分の表示データを速やかに準備することができる反面、画質が比較的低いという特徴がある。本実施例では、高速画像の表示に非分割モードを用いる。
【００４８】
２つ目のモードは、ＬＣＤ１６の表示データを２回に分けて生成する表示モードである。本実施例では、図中に示すようにＬＣＤ１６の表示領域を中央でそれぞれ８００×３００ドットの分割領域に分割する。以下、上側の領域を上画像、下側の領域を下画像と呼ぶものとする。ＶＤＰ３８５はまず上画像の表示データを生成し、フレームメモリ３９７に格納し、次に下画像の表示データを生成して、フレームメモリ３９７に格納する。スケーラ３９０は、上画像と下画像の両方の表示データが格納された時点で、両者をＬＣＤ１６に順次、出力する。こうすることで、ＶＤＰ３８５が８００×６００ドットの表示データを一度に生成するだけの能力を有しない場合でも、解像度を低下させることなく画面を表示させることが可能となるのである。スケーラ３９０は、本来、ＬＣＤ１６への出力過程で、ＶＤＰ３８５によって生成された表示データの画素数を増減しＬＣＤ１６の画素数に適合させたり、いわゆるインターレース形式で生成された表示データをノンインタレース形式に形式変換したりするための素子であり、フレームメモリ３９７の内部を４つのフィールドに分けて管理する機能も、本来は画素数の増減や形式変換を実現するために用意されている機能である。本実施例では、この機能を以下で説明する通り流用することで、分割して生成された表示データを結合して１画面分の表示データを生成する機能を実現する。以下、このモードを分割モードと称する。分割モードは、高解像度で表示データを生成可能であるため、本実施例では、高画質データの表示に用いる。
【００４９】
フレームメモリ３９７に設けられた各フィールド３９７［０］〜３９７［３］には、分割モードにおいてＶＤＰ３８５によって１回に生成される表示データを格納することができる。フィールド３９７［０］、３９７［２］はそれぞれ上画像の表示データを格納し、フィールド３９７［１］、３９７［３］はそれぞれ下画像の表示データを格納する。従って、フィールド３９７［０］、３９７［１］には併せて１フレーム分のデータが格納され、フィールド３９７［２］、３９７［３］にも併せて１フレーム分のデータが格納される。つまり、フレームメモリ３９７は、フィールド３９７［０］〜３９７［３］を用いて分割モードにおける２フレーム分の表示データを格納することができる。
【００５０】
フィールド３９７［４］、３９７［５］は６４０×４８０画素の画像データ、即ち非分割モードで生成される表示データを格納可能である。つまり、フレームメモリ３９７は、フィールド３９７［４］、３９７［５］を用いて、非分割モードにおける２フレーム分の表示データを格納することができる。このように、本実施例では、分割モード、非分割モードでそれぞれフレームメモリ３９７内に個別に用意されたフィールドを用いている。こうすることにより、表示モードを切り換える過程を含めて、表示データの簡易かつ安定的に管理することが可能となる。もっとも、このように表示モードによってフィールドを使い分けることは必然的な構成ではなく、双方のモードで共通のフィールドに表示データを格納する構成としてもよい。また、本実施例では、それぞれの表示モードで２フレーム分の表示データを格納可能としたが、１フレーム分のデータのみを格納可能としてもよいし、３フレーム以上のデータを格納可能としてもよい。
【００５１】
フレームメモリ３９７の各フィールド３９７［０］〜３９７［５］に表示データを誤り無く格納するため、本実施例では、ＣＰＵ３８１がＶＤＰ３８５に描画コマンドを出力する際に、フィールド信号を生成し、スケーラ３９０に出力する。フィールド信号は、非分割モードにおいてはフレームの切り換えを表す信号となり、分割モードにおいては、上画像／下画像のいずれの描画コマンドを示す信号ともなる。スケーラ３９０は、この信号に応じて内部的に制御信号ＩＦＬＤを生成し、フィールド３９７［０］〜３９７［５］のうち、ＶＤＰ３８５からの表示データを格納すべきフィールドを特定する。
【００５２】
ＶＤＰ３８５からスケーラ３９０には、表示データと併せて同期信号ＶＳＹＮＣが出力される。非分割モードでは、同期信号ＶＳＹＮＣは１フレーム分の表示データが生成される度に出力され、分割モードでは上画像、下画像が生成される度に出力される。本実施例では、非分割モードのデータは３２ｍｓｅｃ周期で生成し、分割モードにおける上画像、下画像の生成は、１６ｍｓｅｃ周期で行うものとした。この同期信号ＶＳＹＮＣは、信号停止回路３８９を介してスケーラ３９０に出力される。信号停止回路３８９は、ＣＰＵ３８１が出力する制御信号ＶＥＮに応じて、同期信号ＶＳＹＮＣの伝達／停止を切り換え可能な回路である。本実施例では、東芝社製のＴＣ７ＳＺ１２５ＡＦＥ（商標）なる素子を用いた。この素子は、Ａ端子、Ｙ端子、Ｇ端子を有しており、Ｇ端子がロウの時のみＡ端子の入力信号をＹ端子から出力する機能を有している。この素子を用いる場合には、Ａ端子をＶＤＰ３８５、Ｙ端子をスケーラ３９０、Ｇ端子をＣＰＵ３８１に接続すればよい。本実施例では、同期信号ＶＳＹＮＣの伝達／停止の切り換えは、後述する通り、表示モードの移行時期に行う。本実施例では、このようにハードウェア的に伝達／停止を切り換えたが、この切り換えはＶＤＰ３８５からの同期信号ＶＳＹＮＣの出力／停止をソフトウェア的に切り換える方法で実現してもよい。
【００５３】
スケーラ３９０は、ＬＣＤ１６に１６ｍｓｅｃのフレームレートで同期信号および駆動データを出力し、ＬＣＤ１６の画像を更新する。同期信号は、スケーラ３９０自身が生成する。先に説明した通り、本実施例では、１フレーム分の表示データは３２ｍｓｅｃ周期でしか更新されない。非分割モードでは表示データの生成は３２ｍｓｅｃで行われ、分割モードでは、上画像、下画像の両方の表示データをそろえるためには、１６ｍｓｅｃの処理を２回行う必要があるからである。従って、本実施例では、スケーラ３９０は、既に生成済みの表示データを、フレームメモリ３９７から１６ｍｓｅｃで読み出し、ＬＣＤ１６に出力する処理を２回繰り返すことにより、同一画像を１６ｍｓｅｃで２回表示しつつ、表示内容を３２ｍｓｅｃで更新しながらＬＣＤ１６への表示を行う。
【００５４】
本実施例のＬＣＤ１６は８００×６００画素を備えている。従って、分割モードでは、スケーラ３９０は上画像／下画像の表示データをそのまま駆動データとして出力すればよい。非分割モードでは、表示データが６００×４８０画素で生成されているため、スケーラ３９０は、この表示データを１．２５倍に拡大して、８００×６００画素相当の駆動データを生成し、ＬＣＤ１６に出力する。このようにスケーラ３９０はＶＤＰ３８５によって生成された表示データを加工してＬＣＤ１６に出力してもよい。例えば、スケーラ３９０は、上画面／下画面に分割して生成された表示データを結合する過程で上画面／下画面の画素数の増減を行っても良いし、結合した後、ＬＣＤ１６に出力する段階で画素数の増減を行っても良い。分割モードでは、原理的には無制限に高解像度の画面を表示することも可能となるが、現実には、高解像度の画面に対応した膨大なキャラクタデータを用意する必要が生じ、キャラＲＯＭ３８６の容量が膨大になってしまうという弊害や、キャラＲＯＭ３８６へのアクセス回数の増加、スプライトを描画する際の処理負荷の増大などに伴う制約が生じるのが通常である。上述の通り、画面の分割と、スケーラ３９０本来の機能である画素数の増減とを組み合わせて適用することにより、これらの弊害を抑えながら、高解像度での画面表示を実現することが可能となる。
【００５５】
Ｃ．表示制御処理：
図４は表示制御処理のフローチャートである。ＣＰＵ３８１がＶＤＰ３８５に対して描画コマンド等を出力し、表示データを生成させるために実行する処理である。この処理は、１６ｍｓｅｃ周期の割込処理として実行される。この処理を開始すると、ＣＰＵ３８１は、処理を実行するための準備として、多重割込みを許可し（ステップＳ１）、ノイズキャンセル・判定処理を行う（ステップＳ２）。そして、割込端子の端子レベルを確認し（ステップＳ３）、端子レベルが異常の場合には、ノイズ等の影響による異常なトリガに基づいて表示制御処理が開始されたものと判断し、そのまま処理を終了する。端子レベルが正常の場合には、以下に示す処理によって、描画コマンド、条件設定コマンドの出力を行う。
【００５６】
端子レベルが正常の場合には、ＣＰＵ３８１は現在の表示モードが非分割モード／分割モードのいずれであるかを読み込み（ステップＳ４）、サブ制御基板３５からのコマンドに基づいて次に非分割モード／分割モードのいずれの表示モードを採るべきかを設定する（ステップＳ５）。そして、両者の比較に基づいて表示制御モードを判断する（ステップＳ６）。表示制御モードは、表示モードに関する制御処理の分類である。非分割モード、分割モードという２つの表示モードの他、非分割モードから分割モードへの移行モード、分割モードから非分割モードへの移行モードが含まれる。ＣＰＵ３８１は、現在の表示モードおよび次に採るべき表示モードに応じて、以下の通り４通りの表示制御モードに対応する制御処理を実行する。
（現在）非分割モード→（次）非分割モードの場合、非分割表示制御処理（ステップＳ１００）；
（現在）分割モード→（次）分割モードの場合、分割表示制御処理（ステップＳ２００）；
（現在）非分割モード→（次）分割モードの場合、分割移行処理（ステップＳ３００）；
（現在）分割モード→（次）非分割モードの場合、非分割移行処理（ステップＳ４００）；
以下では、各表示制御モードにおける処理内容について順に説明する。
【００５７】
なお、本実施例では、表示制御処理において上述の表示制御モードを設定し、それぞれ対応する処理に振り分ける制御方法を説明した。各表示制御モードを使い分ける方法は、図４に例示した方法に限らない。本実施例も含め、上述の４つの表示制御モードは、非分割表示制御処理（ステップＳ１００）、分割移行処理（ステップＳ３００）、分割表示制御処理（ステップＳ２００）、非分割移行処理（ステップＳ４００）の順にシーケンシャルに行われるのが通常である。従って、それぞれの表示制御モードを繰り返し実行する過程で、次の表示制御モードに移行するか否かの判定を組み込むようにしてもよい。例えば、非分割表示制御処理（ステップＳ１００）の中に、分割移行処理に移行するか否かの判断処理を組み込めばよい。こうすることにより、上述の処理（図４）よりも簡易な処理で表示制御モードの使い分けができる利点がある。ただし、上述の処理（図４）には、表示制御モードを柔軟に切り換え可能という利点がある。例えば、分割モードとして更に、３分割の表示モードが増えた場合など、表示モード間の移行態様が多様になった場合でも、上述の処理はステップＳ６の分岐条件を修正することにより、比較的容易に対応できる利点がある。
【００５８】
Ｄ．非分割表示制御処理：
図５は非分割表示処理における表示データの生成例を示す説明図である。図の右下に示す画像（６４０×４８０ドット）（以下、「ＶＧＡ画像」という）を表示する手順を示した。図の左側には、ＶＤＰ３８５内での処理概要を示し、図の右側にはフレームメモリ３９７に格納されるデータ内容を示した。図の左側に示すように、ＶＤＰ３８５内では、描画データをビットマップ展開するためのキャンバスＣＶ０１が用意されている。回路上では、キャンバスＣＶ０１内の全画素に対応するメモリ領域が用意されることになる。キャンバスＣＶ０１のサイズは、ＶＧＡ画像（６４０×４８０ドット）よりも大きく、ＬＣＤ１６の表示領域（８００×６００ドット）よりも小さく縦方向は５１２ドットとなっている。以下、説明の便宜上、キャンバスＣＶ０１の左上を原点として左から右に向かう主走査方向をｘ方向、上から下に向かう副走査方向をｙ方向と呼ぶこともある。
【００５９】
本実施例では、キャンバスＣＶ０１に対応する物理的なメモリが用意されている場合を例にとって説明するが、キャンバスＣＶ０１は仮想的なものでもよい。例えば、キャンバスＣＶ０１上への描画をラスタ単位で行う場合には、１ラスタ分の描画データをビットマップ展開するためのラインメモリ、およびキャンバスＣＶ０１のどのラスタを展開しているのかを管理するためのレジスタを用意しておけば足りる。ＶＤＰ３８５が描画可能なキャンバスＣＶ０１のサイズは、このレジスタの上限値で決定されることになる。本実施例は、このレジスタの上限値が５１２に制限されている場合に相当すると言うこともできる。
【００６０】
キャンバスＣＶ０１内には、ＶＧＡ画像相当の表示エリアＶＡが定義される。ＶＤＰ３８５は、キャンバスＣＶ０１上に画像をビットマップ展開した後、表示エリアＶＡ内の画像を切り出し、表示データとしてスケーラ３９０に出力する。本実施例において、キャンバスＣＶ０１を表示エリアＶＡよりも大きいサイズとしたのは、スプライトが表示エリアＶＡから一部はみ出す状態で配置された場合でも比較的簡易な処理でビットマップ展開可能とするためである。このような状態でスプライトが配置されている場合の処理方法としては、キャラＲＯＭから取得したスプライトデータのうち、表示エリアＶＡ内に存在する部分のみを切り出してビットマップ展開する方法も可能ではある。しかし、この方法では、描画時の処理負荷が非常に高くなる。これに対し、キャンバスＣＶ０１を表示エリアＶＡよりも大きくしておけば、スプライトが表示エリアＶＡからはみ出す場合でも、上述の切り出しを行うまでなく、ビットマップ展開できるため、処理の簡素化を図ることができるのである。こうした効果を重視しない場合は、キャンバスＣＶ０１と表示エリアＶＡとを同じ形状とすることも可能である。
【００６１】
ＣＰＵ３８１から上画像の描画データを受け取り、ＶＤＰ３８５が画像を描画すると、キャンバスＣＶ０２の状態が得られる。ＶＤＰ３８５は、キャンバスＣＶ０２から、表示エリアＶＡ内の画像を切り出し、スケーラ３９０を介して（図示を省略）、表示データとして出力する。この表示データは、フレームメモリ３９７のＶＧＡ画像用のフィールド３９７［４］に格納される。この結果、フレームメモリ３９７内には、状態ＦＭ０１で示す内容の表示データが格納されることになる。この表示データを出力すれば、ＬＣＤ１６には右下に示した画像を表示させることができる。ただし、本実施例では、スケーラ３９０は、この表示データをＬＣＤ１６の８００×６００画素相当のサイズとなるよう１．２５倍に拡大して出力する。
【００６２】
図６は非分割モードにおけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。図５で説明した手順でＶＧＡ画像の表示データがフレームメモリに格納され、ＬＣＤ１６に出力される様子を示した。ＶＤＰ３８５のスプライトレジスタ３８５ｓには、３２ｍｓｅｃ周期で繰り返し描画コマンドが書き込まれる。図中では、ＬＣＤ１６に表示されるフレームに対応して「ＶＧＡ１」、「ＶＧＡ２」のように示した。
【００６３】
図３で説明した通り、スプライトレジスタ３８５ｓはダブルバッファとなっている。第１バッファへの「ＶＧＡ１」の描画コマンドの書き込みが完了すると、この描画コマンドは、ＤＭＡ信号に同期して、第２バッファにＤＭＡ転送され、ＶＤＰ３８５によるビットマップ展開が開始される。この結果、図中に示すように、「ＶＧＡ１」の書き込みが完了し、ＤＭＡ信号が出力された後で、ＶＤＰ出力として「ＶＧＡ１出力」
が得られる。ＶＧＡ２以降の描画コマンドおよび表示データの出力も同様のタイミングで繰り返される。また、ＶＤＰ出力と併せてＶＤＰ３８５からは同期信号ＶＳＹＮＣが出力される。
【００６４】
ＣＰＵ３８１からＶＤＰ３８５には、描画コマンドの他、描画条件を指定する条件設定コマンドも出力される。このコマンドはＶＤＰレジスタに格納される。また、ＣＰＵ３８１は、ＶＤＰ３８５に描画コマンドを出力する際に、フィールド信号を出力する。フィールド信号は、図示する通り、フレームごとにＯＮ／ＯＦＦが切り替わる信号である。スケーラ３９０は、フィールド信号に連動する形でデータ読み書きをする対象となるフィールドを指定する制御信号ＩＦＬＤを内部的に生成する。分割表示モードでも使用できるよう制御信号ＩＦＬＤは上位桁をＩＦＬＤ１、下位桁をＩＦＬＤ０とする２ビットの信号として設定されている。
【００６５】
下位桁ＩＦＬＤ０のＯＮ・ＯＦＦは、フィールド信号を受けて変化する。ただし、ＣＰＵ３８１からＶＤＰ３８５への描画コマンド書き込みと、ＶＤＰ３８５からの表示データ出力のタイミングのずれに応じて、フィールド信号および制御信号ＩＦＬＤ０の出力タイミングにはずれが生じる。下位桁ＩＦＬＤ０のＯＮ・ＯＦＦが変化すると、１周期ごとに上位桁ＩＦＬＤ１のＯＮ・ＯＦＦが変化する。つまり、制御信号ＩＦＬＤは、フィールド信号の変化に連動して、２ビットで「００Ｈ」〜「０３Ｈ」の４値を表す信号となっている。制御信号の下位桁ＩＦＬＤ０のＯＦＦ／ＯＮは、それぞれフレームメモリ３９７のフィールド３９７［４］〜３９７［５］に対応する。
【００６６】
例えば、ＶＤＰ３８５から「ＶＧＡ１出力」がなされている時点では、制御信号ＩＦＬＤは、「１０Ｈ」を表しているから、書き込みメモリはフィールド３９７［４］となる。「ＶＧＡ２出力」がなされている時点では、書き込みメモリはフィールド３９７［５］となる。この時点では、フィールド３９７［４］にはＶＧＡ１の表示データが格納されているため、ＶＤＰ３８５はフィールド３９７［４］からデータを読み出し、ＬＣＤ１６に出力する。読み出しメモリは、制御信号ＩＦＬＤ０を反転させた信号で指定すればよい。「ＶＧＡ２出力」がなされている時点では、制御信号ＩＦＬＤ０はＯＮとなっているから、その反転信号はＯＦＦである。従って、下位桁が「０」となるフィールド、つまりフィールド３９７［４］が読み出しメモリとなる。ＶＧＡ１出力が完了すると、下位桁ＩＦＬＤ０がＯＦＦとなるから、読み出しメモリはフィールド３９７［５］に切り替わる。
【００６７】
以上で示した手順により、ＶＤＰ３８５はＣＰＵ３８１から描画コマンドを受け取り、表示データを生成してフレームメモリ３９７に書き込む。フレームメモリ３９７の書き込みメモリは、３２ｍｓｅｃ周期で切り替わる。スケーラ３９０は、また、フレームメモリ３９７から、格納済みの表示データを読み出し、ＬＣＤ１６に駆動データとして出力する。図示する通り、ＬＣＤ１６への出力は、同一の読み出しメモリから２回ずつ繰り返して行われる。つまり、ＬＣＤ１６には１６ｍｓｅｃ周期で同じ駆動データが出力され、同じ画面が表示される。画面内容は、３２ｍｓｅｃ周期で切り替わることになる。本実施例では、遊技中に表示される画面のスケジュール管理を容易にするため、分割モードと非分割モードの両者で、ＬＣＤ１６の画面内容が更新される周期を３２ｍｓｅｃで統一した。こうすることにより、ＶＤＰ３８５に過度の処理負荷をかけることを回避できる利点もある。もっとも、非分割モードにおけるＬＣＤ１６の画面更新周期は、分割モードと必ずしも合わせる必要はない。例えば、ＶＤＰ３８５が処理可能であれば、非分割モードでは図６に示した描画コマンドの出力、表示データの出力等を１６ｍｓｅｃ周期で実行し、ＬＣＤ１６の画面内容を１６ｍｓｅｃで更新してもよい。こうすることにより、非分割モードは、高速画像を滑らかに表示することが可能となる。
【００６８】
図７は非分割表示制御処理のフローチャートである。表示制御処理（図４）のステップＳ１００に相当する処理である。ＣＰＵ３８１がＶＤＰ３８５に対して描画コマンド等を出力し、非分割モードで表示データを生成させるための処理である。この処理は、３２ｍｓｅｃ周期の割込処理として実行される。１６ｍｓｅｃの割込処理として構成し、２回の割込に対して１回の割合で処理全体をスキップするようにしてもよい。
【００６９】
この処理を開始すると、ＣＰＵ３８１は、ＶＤＰ３８５を初期化する（ステップＳ１０２）。この処理には、ＶＤＰ３８５が表示データの生成に使用する種々のレジスタ等の値の初期化が含まれるが、ＣＰＵ３８１からの描画コマンド等を保持しておくべきスプライトレジスタおよびＶＤＰレジスタの初期化は含まれない。スプライトレジスタ等の初期化は、別途実行することになる。
【００７０】
次に、ＣＰＵ３８１はＶＤＰ３８５のスプライトレジスタを初期化する（ステップＳ１０４）。また、ＶＤＰレジスタに条件設定コマンドを設定する（ステップＳ１０６）。これは、表示データ生成時に使用される種々の設定をＶＤＰレジスタに書き込む処理である。これらの初期化およびＶＤＰレジスタ設定が完了すると、ＣＰＵ３８１は、次にサブ制御基板３５から受信した表示コマンドの内容を解析し（ステップＳ１０８）、ＬＣＤ１６に表示すべき画面データを特定する。そして、この画面データに基づいてＶＧＡ画像の描画コマンドをＶＤＰ３８５に出力する（ステップＳ１１０）。
【００７１】
ＣＰＵ３８１は、描画コマンド出力の後、スプライトの最適化を行う（ステップＳ１１２）。これは、次の手順で、ＶＤＰ３８５に定義された表示エリア（図５のＶＡ参照）から全体が外れるようなスプライトについては、描画コマンドから省略する処理である。先に説明した描画コマンド出力時には、ＣＰＵ３８１は、スプライトが表示エリアに含まれるか否かを判定することなく、画面データで特定された全てのスプライトを描画対象としてＶＤＰ３８５のスプライトレジスタに書き込む。各スプライトについては、描画位置の指定の他、表示／非表示を切り換えるためのフラグが設けられており、この段階では、このフラグは全て「表示」に設定されている。ＣＰＵ３８１は、スプライトの最適化では、それぞれのスプライトレジスタについて、書き込んだスプライトレジスタのサイズ、位置に基づいて、表示エリアから全体が外れるか否かを判定する。全体が外れるスプライトに対しては、ＣＰＵ３８１は、上述のフラグを切り換え「非表示」に設定する。
【００７２】
スプライト最適化は、上述の通り、全体が表示エリアから外れるスプライトをキャンバス上に描画するという無駄な処理を回避するためである。描画コマンドを出力する際に、一つ一つのスプライトについて表示エリアから外れるか否かの判定を行う方法を採ることも可能ではあるが、本実施例では、描画コマンドの出力と、スプライト最適化に分けることにより、同種の処理を集約することができ、処理効率を向上させている。もっとも、スプライト最適化は、ＶＤＰ３８５の処理効率を向上させるための処理であるため、省略することも可能である。ＣＰＵ３８１は、以上の処理が完了すると、フィールド信号（図６参照）を切り換えて（ステップＳ１１４）、非分割表示制御処理を終了する。
【００７３】
Ｅ１．分割表示制御処理：
図８は分割モードにおける表示データの生成例を示す説明図である。図の右下に示す画像（８００×６００ドット）を表示する手順を示した。図の左側には、ＶＤＰ３８５内での処理概要を示し、図の右側にはフレームメモリ３９７に格納されるデータ内容を示した。図の左側に示すように、ＶＤＰ３８５内では、描画データをビットマップ展開するためのキャンバスＣＶ１が用意されている。回路上では、キャンバスＣＶ１内の全画素に対応するメモリ領域が用意されることになる。キャンバスＣＶ１のサイズは、上画像／下画像（８００×３００ドット）よりも大きく、ＬＣＤ１６の表示領域（８００×６００ドット）よりも小さく、縦方向に５１２ドットとなっている。
【００７４】
キャンバスＣＶ１内には、表示エリアＶＡが定義されている。これは上画像／下画像と同一形状の領域である。ＶＤＰ３８５は、キャンバスＣＶ１上に画像をビットマップ展開した後、表示エリアＶＡ内の画像を切り出し、表示データとしてスケーラ３９０に出力する。
【００７５】
ＣＰＵ３８１から上画像の描画データを受け取り、ＶＤＰ３８５が画像を描画すると、キャンバスＣＶ２の状態が得られる。ＶＤＰ３８５は、キャンバスＣＶ２から、表示エリアＶＡ内の画像を切り出し、スケーラ３９０を介して（図示を省略）、表示データとして出力する。この表示データは、フレームメモリ３９７の上画像用のフィールド３９７［０］に格納される。この結果、フレームメモリ３９７内には、状態ＦＭ１で示す内容の表示データが格納されることになる。
【００７６】
次に、ＣＰＵ３８１から下画像の描画データを受け取り、ＶＤＰ３８５が画像を描画すると、キャンバスＣＶ３の状態が得られる。本実施例では、表示エリアＶＡの位置は固定したまま、画像の位置を−ｙ方向に３００ドット分ずらして描画する。この移動を実現するためには、描画コマンドで指定されるｙ座標値から３００を引けばよい。画像の位置をずらして描画した状態で、表示エリアＶＡ内の画像を切り出せば、下画像の表示データが得られることになる。この表示データは、フレームメモリ３９７の下画像用のフィールド３９７［１］に格納される。この結果、フレームメモリ３９７内には、状態ＦＭ２で示す通り、画像全体を表す表示データが格納されることになる。この表示データを出力すれば、ＬＣＤ１６には右下に示した画像を表示させることができる。
【００７７】
図９は分割モードにおいてＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。図８で説明した手順で、上画像、下画像の表示データがフレームメモリに格納され、ＬＣＤ１６に出力される様子を示した。ＶＤＰ３８５のスプライトレジスタ３８５ｓには、上画像、下画像の順で繰り返し描画コマンドが書き込まれる。図中では、ＬＣＤ１６に表示されるフレーム１に対応した上画像、下画像をそれぞれ「上１」、「下１」のように略称で示した。フレーム２、フレーム３に対応する上画像、下画像も同様である。
【００７８】
図３で説明した通り、スプライトレジスタ３８５ｓはダブルバッファとなっている。第１バッファへの「上１」の描画コマンドの書き込みが完了すると、この描画コマンドは、ＤＭＡ信号に同期して、第２バッファにＤＭＡ転送され、ＶＤＰ３８５によるビットマップ展開が開始される。この結果、図中に示すように、「上１」の書き込みが完了し、ＤＭＡ信号が出力された後で、ＶＤＰ出力として「上１出力」、即ち「上１」に対応した表示データの出力が得られる。「下１」以降の描画コマンドおよび表示データの出力も同様のタイミングで繰り返される。また、ＶＤＰ出力と併せてＶＤＰ３８５からは同期信号ＶＳＹＮＣが出力される。
【００７９】
ＣＰＵ３８１からＶＤＰ３８５には、描画コマンドの他、描画条件を指定する条件設定コマンドも出力される。このコマンドはＶＤＰレジスタに格納される。本実施例では、ＣＰＵ３８１からＶＤＰ３８５への上画像の描画コマンドの出力が完了した時点で、条件設定コマンドを出力するものとした。従って、図示するように、例えば、「上１書き込み」後のＤＭＡ信号に同期して、ＶＤＰレジスタ更新、つまりＶＤＰレジスタへの条件設定コマンドの出力が行われる。この条件設定コマンドは、「上１出力」および「下１出力」のＶＤＰ出力に共通して用いられる。従って、「下１書き込み」後のＶＤＰレジスタの更新は省略することができる。
【００８０】
ＣＰＵ３８１は、ＶＤＰ３８５に描画コマンドを出力する際に、上画像／下画像を特定するフィールド信号を出力する。フィールド信号は、図示する通り、上画像に対してＯＮ、下画像に対してＯＦＦとなる信号である。スケーラ３９０は、フィールド信号に連動する形でデータ読み書きをする対象となるフィールドを指定する制御信号ＩＦＬＤを内部的に生成する。制御信号ＩＦＬＤは２ビットの信号であり、図中では上位桁をＩＦＬＤ１、下位桁をＩＦＬＤ０で表した。
【００８１】
下位桁ＩＦＬＤ０のＯＮ・ＯＦＦは、フィールド信号を受けて変化する。例えば、「上１書き込み」時にＣＰＵ３８１からフィールド信号としてＯＮが出力されると、ＶＤＰ３８５は「上１出力」時に制御信号ＩＦＬＤ０としてＯＮを出力する。ＣＰＵ３８１からＶＤＰ３８５への描画コマンド書き込みと、ＶＤＰ３８５からの表示データ出力のタイミングのずれに応じて、フィールド信号および制御信号ＩＦＬＤ０の出力タイミングにはずれが生じる。下位桁ＩＦＬＤ０のＯＮ・ＯＦＦが変化すると、１周期ごとに上位桁ＩＦＬＤ１のＯＮ・ＯＦＦが変化する。つまり、制御信号ＩＦＬＤは、フィールド信号の変化に連動して、２ビットで「００Ｈ」〜「０３Ｈ」の４値を表す信号となっている。制御信号ＩＦＬＤで表される４値は、それぞれフレームメモリ３９７のフィールド３９７［０］〜３９７［３］に対応している。
【００８２】
例えば、ＶＤＰ３８５から「上１出力」がなされている時点では、制御信号ＩＦＬＤは、「１０Ｈ」を表しているから、書き込みメモリはフィールド３９７［２］となる。「下１出力」がなされている時点では、書き込みメモリはフィールド３９７［３］となる。つまり、フレーム１の上画像、下画像の表示データは、フィールド３９７［２］、３９７［３］に書き込まれることになる（図３参照）。この時点では、フィールド３９７［０］、３９７［１］にはフレーム１よりも前に書き込み済みの表示データが格納されているため、ＶＤＰ３８５はフィールド３９７［０］、３９７［１］からデータを読み出し、ＬＣＤ１６に出力する。読み出しメモリは、制御信号ＩＦＬＤ１を反転させた信号で指定すればよい。上述の時点では、制御信号ＩＦＬＤ１はＯＮとなっているから、その反転信号はＯＦＦである。従って、上位桁が「０」となるフィールド、つまり「００Ｈ」、「０１Ｈ」に対応するフィールド３９７［０］、３９７［１］が読み出しメモリとなる。下１出力が完了すると、上位桁ＩＦＬＤ１がＯＦＦとなるから、読み出しメモリは「１０Ｈ」、「１１Ｈ」に対応するフィールド３９７［２］、３９７［３］に切り替わる。また、下位桁ＩＦＬＤ０に応じて、フィールド３９７［０］、３９７［１］が書き込みメモリとなる。
【００８３】
以上で示した手順により、ＶＤＰ３８５はＣＰＵ３８１から描画コマンドを受け取り、表示データを生成してフレームメモリ３９７に書き込む。フレームメモリ３９７の書き込みメモリは、１６ｍｓｅｃ周期で切り替わる。スケーラ３９０は、また、フレームメモリ３９７から、格納済みの表示データを読み出し、ＬＣＤ１６に駆動データとして出力する。図示する通り、ＬＣＤ１６への出力は、同一の読み出しメモリから２回ずつ繰り返して行われる。つまり、ＬＣＤ１６には１６ｍｓｅｃ周期で同じ駆動データが出力され、同じ画面が表示される。画面内容は、３２ｍｓｅｃ周期で切り替わることになる。
【００８４】
図１０は分割モードにおける表示制御処理のフローチャートである。ＣＰＵ３８１がＶＤＰ３８５に対して描画コマンド等を出力し、表示データを生成させるために実行する処理である。この処理は、１６ｍｓｅｃ周期の割込処理として実行される。
【００８５】
先に説明した通り、本実施例では、表示制御処理を実行する度に、上画像、下画像を順次、切り換えて描画コマンドを出力することになる。上画像、下画像のいずれを処理対象とすべきかは、上下フラグによって管理される。上下フラグは、上画像を処理対象とすべき時には値１となり、下画像を処理対象とすべき時には値０となるフラグである。
【００８６】
ＣＰＵ３８１は上下フラグが値０の場合には（ステップＳ２０２）、以下に示す通り、上画像に対する処理を実行する。まず、ＣＰＵ３８１はＶＤＰ３８５を初期化する（ステップＳ２０４）。この処理には、ＶＤＰ３８５が表示データの生成に使用する種々のレジスタ等の値の初期化が含まれるが、ＣＰＵ３８１からの描画コマンド等を保持しておくべきスプライトレジスタおよびＶＤＰレジスタの初期化は含まれない。スプライトレジスタ等の初期化は、別途実行することになる。
【００８７】
ＣＰＵ３８１は次に上半分表示処理を実行する（ステップＳ２１０）。上半分表示処理の内容は後で詳述し、ここでは概要のみを説明する。この処理は、新たなフレームの上画像の描画コマンドをＶＤＰ３８５に出力する処理ではない。新たな上画像の描画コマンド出力に先立って、直前のフレームの下画像の描画コマンドの座標を修正する処理である。この下画像の描画コマンドは既にＶＤＰ３８５のスプライトレジスタに蓄積されているデータであり、本来、上画像に対する処理では不要のデータである。しかし、スプライトレジスタの初期化を行っても、そのままスプライトレジスタに残っている場合がある。初期化では、レジスタに全て「０」や「Ｎｕｌｌ」を入力するとは限らず、描画コマンドを残したまま、単にその描画コマンドの設定を「無効」、「非表示」などにする簡易な方法が採られることもあるからである。この場合には、設定の誤り等によって、従前のフレームのスプライトが再度、表示対象となる可能性がないとは言えない。そこで、本実施例では、仮にこのような事態が生じたとしても、上画像の表示データに極端な違和感を与えることを回避するための処理として、上半分表示処理を実行している。この処理では、例えば、図８のキャンバスＣＶ３に示された画像の位置は、キャンバスＣＶ２に示した上画像の描画時の位置に戻される。次のフレームは、従前のフレームと近似した画像となることが多いため、このように位置を修正しておくことにより、例え従前の描画コマンドが表示データに影響を与えたとしても、違和感を十分に抑制することが可能となる。上半分表示処理は必須の処理ではないため、省略することも可能である。
【００８８】
上半分表示処理が完了すると、ＣＰＵ３８１はＶＤＰ３８５のスプライトレジスタを初期化する（ステップＳ２２０）。この時点で、併せてＶＤＰレジスタの初期化も行う。初期化が完了すると、ＣＰＵ３８１は、次にサブ制御基板３５から受信した表示コマンドの内容を解析し（ステップＳ２２２）、ＬＣＤ１６に表示すべき画面データを特定する。そして、この画面データに基づいて上画像の描画コマンドをＶＤＰ３８５に出力する（ステップＳ２２４）。先に図８で説明した通り、本実施例では、上画像、下画像のいずれを処理するかに関わらず、ＬＣＤ１６に表示すべき画面全体の描画コマンドをＶＤＰ３８５に出力している。上画像、下画像の生成時で異なるのは、描画コマンドの座標値のみである。本実施例では、描画コマンドは、上画像生成時を基準として用意しておくものとした。従って、ステップＳ２２４の処理では、ＣＰＵ３８１は描画コマンドの座標値を修正するまでなく、そのままＶＤＰ３８５に出力すれば足りる。
【００８９】
ＣＰＵ３８１は、描画コマンド出力と並行して、スプライトの最適化を行う（ステップＳ２２６）。
【００９０】
ＣＰＵ３８１は、以上の処理が完了すると、下画像が次の処理対象となることを示すため、フィールド信号（図９参照）をＯＦＦとする（ステップＳ２２８）。また、上下フラグを値１だけ増加させる（ステップＳ２５０）。上下フラグは１ビットのフラグであるため、この処理によって上下フラグの値は１となり、次の処理では下画像が処理対象と判断されることになる。
【００９１】
ステップＳ１３において、上下フラグが値１の場合には、ＣＰＵは以下の手順で下画像に対する処理を実行する。まず、ＣＰＵはＶＤＰ３８５を初期化し（ステップＳ２３０）、ＶＤＰレジスタに条件設定コマンドを設定する（ステップＳ２３２）。これは、図９に示したＶＤＰレジスタの更新に相当する処理であり、上画像、下画像に共通して表示データ生成時に使用される種々の設定を行う処理である。ＶＤＰ３８５は、この処理を受けて、スプライトレジスタに設定済みの描画コマンドに基づき、上画像の表示データを生成してフレームメモリ３９７に出力する。
【００９２】
ＣＰＵ３８１は、次に下半分表示処理を実行する（ステップＳ２３４）。この処理は、先に概要を説明した上半分表示処理（ステップＳ２１０）と同様、描画コマンドの座標値を修正する処理である。この処理によって、例えば、上画像の描画時には、図８中のキャンバスＣＶ２の状態で配置される描画コマンドは、キャンバスＣＶ３の状態に移動されることになる。本実施例では、上画像、下画像はｙ方向に３００ドットのサイズとなっているから、下半分処理では、描画コマンドのｙ座標をそれぞれ３００ずつ減じればよい。
【００９３】
ＣＰＵ３８１は、下半分表示処理が完了すると、スプライトの最適化を行い（ステップＳ２３６）、フィールド信号をＯＮとし（ステップＳ２３８）、上下フラグを値１だけ増加させる（ステップＳ２５０）。上下フラグは１ビットのフラグであるから、この演算によって値０となる。この結果、フィールド信号、上下フラグともに、次の処理対象が上画像であることを示す状態となる。この後、ＶＤＰ３８５内では、下画像の描画コマンドが読み込まれ、表示データが生成される。条件設定コマンドはステップＳ５１でＶＤＰレジスタに設定された内容がそのまま使用される。本実施例では、上画像の描画コマンドが設定された後、その表示データの生成を開始する前の時点で、条件設定コマンドを設定することにより、下画像に対する一連の処理内で、条件設定コマンドを上画像、下画像に流用することができる。
【００９４】
図１１は上半分表示処理のフローチャートである。表示制御処理（図１０）のステップＳ２１０に相当する処理である。この処理は、先に説明した通り、ＶＤＰ３８５のスプライトレジスタに格納されている描画コマンドのｙ座標を３００増加させる。本実施例では、スプライトごとに、その配置、表示／非表示の設定することで描画コマンドが構成されていることから、スプライト単位で順次、その座標を修正する手法を採った。以下では、それぞれのスプライトに対して、一義的な識別番号として「スプライトＮｏ．」が付されているものとして説明する。
【００９５】
まず、ＣＰＵ３８１は全スプライトを順番に処理するための初期設定として、処理対象となるべき「スプライトＮｏ．」を０に設定する（ステップＳ２１１）。そして、処理対象となるスプライトの設定データを読み込む（ステップＳ２１２）。図中に設定データの内容を例示した。識別番号としての「スプライトＮｏ．」、キャラＲＯＭ内の「データ格納場所」を表すアドレス、スプライトを配置すべきキャンバス上の配置座標（ＸＰＯＳ，ＹＰＯＳ）、およびスプライトの表示／非表示を切り換えるためのフラグが含まれる。この他のデータを含めても差し支えない。
【００９６】
ＣＰＵ３８１は、処理対象のスプライトが、表示／非表示フラグによって「表示」設定されている場合には（ステップＳ２１３）、配置座標の修正を施す（ステップＳ２１４）。つまり、ｙ座標（ＹＰＯＳ）を値３００だけ増大させる。図中にこの処理の意味を示した。図の左側に示す通り、表示エリアＶＡおよび画像が配置されているとする。この状態で画像のｙ座標を値３００だけ増大させると、右側に示すように画像の位置が表示エリアＶＡに対して相対的に下側にずれる。表示エリアＶＡは縦方向に３００ドットであるから、左側の画像で表示エリアＶＡから上側にはみ出していた部分が表示エリア内に入る。つまり、左側の下画像に対応する上画像が表示エリアＶＡ内に現れることになる。ＣＰＵ３８１は、表示／非表示フラグが非表示設定となっている場合には（ステップＳ２１３）、上述した配置座標の修正を施す必要はないと判断し、ステップＳ２１４をスキップする。
【００９７】
以上の処理を、ＣＰＵ３８１は「スプライトＮｏ．」が所定の上限値Ｎｌｉｍに至るまで（ステップＳ２１５）、「スプライトＮｏ．」を順次、値１ずつ増加させながら（ステップＳ２１６）、繰り返し実行する。上限値Ｎｌｉｍは、画面データで用いられる全スプライトに付された「スプライトＮｏ．」の最大値とすることができる。遊技状態によって、一部のスプライトしか用いないことが決まっている場合には、その中の「スプライトＮｏ．」の最大値としてもよい。
【００９８】
以上で説明した実施例によれば、８００ドット×６００ドットというＬＣＤ１６用の表示データを上画像、下画像の２回に分けて生成することができる。この結果、ＶＤＰ３８５の処理能力がＬＣＤ１６の画素数に見合うほどに高くはない場合であっても、解像度を活かした高い画質で画像を表示することが可能となる。
【００９９】
Ｅ２．分割表示制御処理の変形例：
実施例では、図８で説明した通り、上画像、下画像の表示データを生成する際に、表示エリアＶＡに対する位置を相対的に移動させながら、画面全体の描画コマンドをＶＤＰ３８５に出力する例を示した。分割モードにおけるＶＤＰ３８５への描画コマンドの出力は、この態様に依らず、種々の態様を採ることができる。例えば、描画コマンドの座標値は固定としたまま表示エリアの位置を移動させてもよい。また、上画像用、下画像用に個別に描画コマンドを用意してもよい。以下では、これらの２つの態様について、それぞれ第１変形例、第２変形例として説明する。
【０１００】
図１２は第１変形例としての表示制御処理のフローチャートである。図１０に代わる処理であり、上画像、下画像の生成時に、描画コマンドの座標値は固定としたまま表示エリアの位置を移動させる態様に相当する。この処理では、図１０と同様、ＣＰＵ３８１は、上下フラグの値に応じて、以下に示す通り、上画像、下画像を対象とするそれぞれの処理を実行する。
【０１０１】
上下フラグが値０の場合（ステップＳ２０２）、即ち上画像の処理を行う場合には、ＣＰＵ３８１はＶＤＰの初期化を行った後（ステップＳ２０４）、表示エリアＶＡの位置を設定する（ステップＳ２０４Ａ）。表示エリアＶＡは、描画コマンドで描かれる全体画像のうち上画像を切り出すことができる位置に設定される（図８のキャンバスＣＶ２参照）。そして、ＣＰＵ３８１は、スプライトレジスタを初期化し（ステップＳ２２０）、コマンド解析処理を実行し（ステップＳ２２２）、画像全体の描画コマンドをＶＤＰ３８５に出力する（ステップＳ２２４）。そして、スプライトを最適化し（ステップＳ２２６）、次の処理対象が下画像となることを示すため、フィールド信号をＯＦＦにするとともに（ステップＳ２２８）、上下フラグの値を１だけ増加させて（ステップＳ２５０）、表示制御処理を終了する。
【０１０２】
上下フラグが値１の場合（ステップＳ２０２）、即ち下画像の処理を行う場合には、ＣＰＵ３８１はＶＤＰレジスタに条件設定コマンドの設定を行う（ステップＳ２３０）。この設定を受けて、ＶＤＰ３８５は上画像の描画コマンドおよび表示エリアＶＡの設定に基づき、上画像の表示データを生成、出力する。その後、ＣＰＵ３８１は、表示エリアＶＡを下方に３００ドット移動させる（ステップＳ２３４Ａ）。図中に移動の様子を示した。左側に示すように、上画像を切り出し可能な状態で配置されていた表示エリアＶＡは、この処理によって、右側に示すように下画像を切り出し可能な状態に移動される。実施例（図１０）と異なり描画コマンドの座標の修正は行わないため、画像の位置は固定されたままである。ＣＰＵ３８１は、スプライトの最適化を行い（ステップＳ２３６）、フィールド信号をＯＮした後（ステップＳ２３８）、上下フラグを値１だけ増加させて（ステップＳ２５０）、表示制御処理を終了する。ＶＤＰ３８５は、これに応じて、下画像の表示データを生成する。
【０１０３】
第１変形例によれば、描画コマンドの座標値を修正する必要がなく、上画像、下画像それぞれの生成に要する処理負荷を軽減することができる利点がある。
【０１０４】
図１３は第２変形例としての表示制御処理のフローチャートである。図１０に代わる処理であり、上画像用、下画像用に個別に描画コマンドを用意する態様に相当する。この処理では、図１０と同様、ＣＰＵ３８１は、上下フラグの値に応じて、以下に示す通り、上画像、下画像を対象とするそれぞれの処理を実行する。
【０１０５】
上下フラグが値０の場合（ステップＳ２０２）、即ち上画像の処理を行う場合には、ＣＰＵ３８１はＶＤＰ初期化（ステップＳ２０４）、スプライトレジスタの初期化を行った後（ステップＳ２２０）、コマンド解析処理を実行してＬＣＤ１６に表示すべき画像の画面データを特定した後（ステップＳ２２２）、上半分の描画コマンドを出力する（ステップＳ２２４Ａ）。変形例では、コマンド解析処理によって特定される画面データには、上画像用の画面データ、下画像用の画面データが個別に用意されているものとした。例えば、上画像用には図中に示すハッチング部分に対応する描画コマンドが含まれている。図の例では、この画面にはスプライトＳＰ１、ＳＰ２が含まれるが、上画像で必要とされるのは、スプライトＳＰ１のみである。従って、画面データはスプライトＳＰ２を省略した状態のデータとすることができる。ＣＰＵ３８１は、実施例と同様、スプライトの最適化（ステップＳ２２６）、フィールド信号ＯＦＦ（ステップＳ２２８）、上下フラグのインクリメント（ステップＳ２５０）の各処理を実行して、表示制御処理を終了する。第２変形例では、上画像用に最適化された画面データを用意することができるため、スプライトの最適化（ステップＳ２２６）は省略することも可能である。
【０１０６】
上下フラグが値１の場合（ステップＳ２０２）、即ち下画像の処理を行う場合には、ＣＰＵ３８１はＶＤＰレジスタに条件設定コマンドを設定し（ステップＳ２３２）、スプライトレジスタを初期化して（ステップＳ２３３）、下半分の描画コマンドを出力する（ステップＳ２３４Ａ）。下画像用の画面データには図中に示すハッチング部分に対応する描画コマンド、即ちスプライトＳＰ１、ＳＰ２の双方に対する描画コマンドが含まれることになる。描画コマンドのｙ座標値は、表示エリアＶＡによって下画像を切り出すことができるように設定された値となっている。従って、ＣＰＵ３８１は座標値の修正や表示エリアＶＡの位置修正などを施すまでなく、単に用意された描画コマンドをＶＤＰ３８５に出力すれば足りる。ＣＰＵ３８１は、次に、実施例と同様、スプライトの最適化（ステップＳ２３６）、フィールド信号ＯＮ（ステップＳ２３８）、上下フラグのインクリメント（ステップＳ２５０）の各処理を実行して、表示制御処理を終了する。スプライトの最適化（ステップＳ２３６）は省略することも可能である。
【０１０７】
第２変形例によれば、上画像、下画像のそれぞれについて描画コマンドを出力する際に、座標修正や表示エリアの移動などの処理が不要となるため、処理負荷を軽減することができる利点がある。
【０１０８】
上述の実施例および変形例では、分割モードにおいてＬＣＤ１６の画面を上下２つに分割して表示データを生成する場合を例示した。画面の分割は、かかる態様に依らず、種々の態様を採ることができる。例えば、上下方向に３以上の領域に分割してもよい。また、上画像、下画像を更に左右方向に分割してもよい。
【０１０９】
Ｆ．分割移行処理：
図１４は分割移行処理におけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。分割移行処理とは、非分割モードから分割モードへの切り換えを行う処理である。最上段には、定常処理としてサブ制御基板３５が実行するスケジューラ更新のタイミングを示した。スケジューラ更新とは、サブ制御基板３５が遊技状態に応じてＬＣＤ１６にシーケンシャルに表示すべき画面を順次、更新していく処理であり、サブ制御基板３５から装飾図柄制御基板３０に表示コマンドを出力する処理に対応する。本実施例では、非分割モード、分割モードともに、３２ｍｓｅｃでスケジューラ更新が行われる。
【０１１０】
非分割モードで描画コマンドの出力が行われているものとして説明を行う。図中の例は、ＶＤＰ３８５のスプライトレジスタにＶＧＡ２出力がなされた状態を示している。この時点では、ＶＤＰ３８５からは、従前の描画コマンドに対応するＶＧＡ１の表示データが出力されている。このＶＧＡ１出力は、ＶＤＰ３８５から出力される同期信号ＶＳＹＮＣをトリガとして、フレームメモリ３９７のフィールド３９７［４］（以下、「ＶＧＡ用エリア０」と呼ぶこともある）に書き込まれる。
【０１１１】
次に、サブ制御基板３５がスケジュール更新を行い、分割モードへの移行が指示されたとする。この移行指示は、例えば、サブ制御基板３５が「移行コマンド」を出力する態様をとってもよいし、サブ制御基板３５が指定する装飾図柄が、高速画像から高画質画像に切り替わった時点でＣＰＵ３８１が自律的に移行指示がなされたものと判断するという態様をとってもよい。これらの態様で移行指示がなされると、ＣＰＵ３８１は、ＶＤＰレジスタに対して「上下設定」、即ち分割モードで処理するための設定を行う。また、スプライトレジスタには、「上１」画像の描画データ書き込みを行う。ただし、この間、ＶＤＰ３８５は従前に書き込まれたＶＧＡ２に対応する表示データを出力している。
【０１１２】
ＣＰＵ３８１は、上述の処理と並行して、スケーラ３９０に対して上下用、即ち分割モード用の書き込みアドレスを設定する。本実施例では、図３に示した通り、非分割モードと分割モードでは個別に用意されたフィールドが用いられる。書き込みアドレスの設定は、表示データの格納先を、非分割モードで使用されているフィールド３９７［４］、３９７［５］から、分割モードで使用されるフィールド３９７［０］〜３９７［３］に切り換える処理である。
【０１１３】
書き込みアドレスの変更は、ＶＤＰ３８５からのＶＧＡ２出力と並行して行われるため、この変更を直ちに反映させると、フレームメモリ３９７に表示データを格納すべきフィールドが、ＶＤＰ３８５からのデータ出力中に変化することになり、表示データの格納が不安定となるおそれがある。また、ＶＤＰ３８５から出力される表示データは、非分割モードの描画データに対応したＶＧＡ２出力であるから、データ容量的にも分割モード用のフィールドに適合しない。本実施例では、これらの不整合によって表示データの格納が不安定となる事態を回避するため、書き込みアドレスの変更時には、表示データをフレームメモリに書き込むことを禁止している。フレームメモリ３９７への表示データの格納は、ＶＤＰ３８５からの同期信号ＶＳＹＮＣをトリガとして行われるから、書き込みアドレス変更時には、図中に破線Ａで示すように、ＶＳＹＮＣの出力を停止するのである。本実施例では、ＣＰＵ３８１がＶＥＮにハイを出力することにより、信号停止回路３８９の機能によってＶＤＰ３８５からのＶＳＹＮＣの出力を停止する。この方法に代えて、ＣＰＵ３８１がＶＤＰ３８５に制御信号を出力することで、ソフトウェア的に同期信号ＶＳＹＮＣの出力を停止させてもよい。同期信号ＶＳＹＮＣの出力が停止される結果、図中に示す通り、ＶＤＰ３８５から表示データが出力されてはいるものの、この表示データは、書き込みメモリには格納されなくなる。
【０１１４】
この時点では、書き込みアドレスの変更は行われているものの、フレームメモリ３９７からの読み出しアドレスの変更は行われていない。従って、スケーラ３９０は、従前の非分割モードで設定された読み出しアドレスに従い、フィールド３９７［５］（「ＶＧＡ用エリア１」と呼ぶこともある）から表示データを読み出し、ＬＣＤ１６に出力する。ＬＣＤ１６には、非分割モード時の画像が表示され続けることになる。
【０１１５】
書き込みアドレスの変更が完了すると、次の１６ｍｓｅｃの処理では、ＣＰＵ３８１はスプライトレジスタに「下１」の書き込みを行う。また、分割モードでの処理に従い、下１書き込みと並行してＶＤＰレジスタの設定を行う。ＶＤＰ３８５からは、既に設定済みの「上１」画像に対応した表示データが出力される。この時点では、書き込みアドレスの変更が完了しているため、この表示データは、フィールド３９７［０］（「エリア０上」と呼ぶこともある）に格納される。この時点でも、読み出しアドレスは未変更であるから、スケーラ３９０は、ＶＧＡ用エリア１から表示データを読み出しＬＣＤ１６に出力する。
【０１１６】
「下１」画像の書き込みが完了すると、以後は、分割モードに従って、安定的に描画コマンドの書き込み、および表示データの出力が行われるようになる。ＣＰＵ３８１は、この時点で、フィールド３９７［０］〜３９７［３］からのデータ読み出しが行われるよう、スケーラ３９０の読み出しアドレスを分割モード用に変更する。書き込みアドレスは変更済みであるから、フィールド３９７［０］（エリア０上）、３９７［１］（エリア０下）には、「上１」「下１」画像の表示データが格納されている。読み出しアドレスの変更中は、非分割モードに従って、フィールド３９７［４］（ＶＧＡ用エリア０）からの表示データ読み出しが行われる。なお、ＶＧＡ用エリア０には、ＶＧＡ用エリア１よりも以前に生成された表示データが格納されているため、この時点では、一瞬とはいえ、厳密にはＬＣＤ１６の表示は過去の表示内容に逆戻りしていることになる。従って、遊技者にちらつきなどの違和感を与えないようにするため、非分割モードから分割モードへの切り換え前には、黒画面などの同一画面を２フレーム以上継続する期間を設けておくことが好ましい。
【０１１７】
読み出しアドレスの変更が完了した後は、フィールド３９７［３］（エリア１上）、３９７［１］（エリア１下）へのデータ書き込みが行われるとともに、フィールド３９７［０］、３９７［１］からの表示データの読み出しが行われるようになり、分割モードへの移行が完了する。以上で説明したように、分割モードへの移行は、１６ｍｓｅｃでの割込処理を一つのフェーズとして考えると、書き込みアドレスの変更（フェーズ１）、分割モードでの「上１」「下１」画像の描画コマンド出力およびフィールド３９７［０］（エリア０上）への表示データの格納開始（フェーズ２）、読み出しアドレスの変更（フェーズ３）という３つのフェーズで行われる。
【０１１８】
図１５および図１６は分割移行処理のフローチャートである。ＣＰＵ３８１が実行する処理であり、図１４のタイミングチャートで示した処理に相当する処理である。ＣＰＵ３８１は、まず信号停止回路３８９を制御して、ＶＤＰ３８５からのＶＳＹＮＣの出力をディセーブルする（ステップＳ３０２）。次に、ＶＤＰ３８５を上下表示出力に設定し、分割モードで処理すべきことを指示する（ステップＳ３０４）。そして、次に処理すべき画像が上画像であることを示すため、上下フラグに値０を初期値として設定し（ステップＳ３０６）、上表示用座標補正処理を実行する（ステップＳ３０８）。上表示用座標補正処理とは、分割モードにおける上半分表示処理（図１１参照）と同じく、描画コマンドの座標値を補正する処理である。ここでは、非分割モードで指定されている描画データの座標値を補正することになるため、「上半分表示処理」との名称を避けたが、処理内容は同等である。
【０１１９】
上表示用座標補正処理が完了すると、ＣＰＵ３８１は、「上１」画像に対応する描画コマンドを出力し（ステップＳ３１０）、スプライトの最適化を行う（ステップＳ３１２）。この時点で、サブ制御基板３５からのコマンドを解析して、分割モードでの表示内容に従った描画コマンドを出力してもよいが、本実施例では、非分割モードで指定済みの描画コマンドを流用するものとした。分割移行処理を行う時点では、暗転など改めてコマンド解析をする必要性に乏しい画像が使われることが多いからであり、コマンド解析を行ったとしても分割移行中は表示データの出力、格納が不安定なため、有効活用されない可能性があるからである。
【０１２０】
ＣＰＵ３８１は、ＶＤＰ３８５からの表示データがフレームメモリ３９７の分割モード用のフィールド３９７［０］〜３９７［３］に格納されるよう、スケーラ３９０の書き込みアドレスを設定し（ステップＳ３１４）、信号停止回路３８９を制御して、ＶＳＹＮＣをイネーブルする（ステップＳ３１６）。この処理によって、ＶＤＰ３８５から次に出力される同期信号ＶＳＹＮＣはスケーラ３９０に伝達されるようになり、表示データがフレームメモリ３９７に格納されるようになる。以上が、図１４で説明したフェーズ１の処理に対応する。
【０１２１】
次に、ＣＰＵ３８１は、下画像の処理に移行すべく、フィールド信号をＯＦＦとし（図１６のステップＳ３２０）、上下フラグに値１を設定する（ステップＳ３２２）。そして、下表示用座標補正処理を行い（ステップＳ３２４）、描画コマンドを出力して（ステップＳ３２６）、スプライトの最適化を行う（ステップＳ３２８）。下表示用座標補正処理は、上表示用座標補正処理（ステップＳ３０８）と同様、描画コマンドの座標値を下画像用に３００減じる処理である。以上が、図１４で説明したフェーズ２の処理に対応する。本実施例では、この時点でも、サブ制御基板３５からのコマンド解析は省略した。
【０１２２】
次に、ＣＰＵ３８１は、再び上画像の処理に移行すべき、フィールド信号をＯＮとし（ステップＳ３３０）、上下フラグに０を設定する（ステップＳ３３２）。そして、上表示座標補正処理を行う（ステップＳ３３４）。この時点では、書き込みアドレスの変更も完了しており、分割モードでの表示データを安定的にフレームメモリ３９７に格納可能となっている。従って、ＣＰＵ３８１は、スプライトレジスタを初期化して（ステップＳ３３６）、サブ制御基板３５からのコマンドを解析し（ステップＳ３３８）、これに応じた描画コマンド出力（ステップＳ３４０）、スプライトの最適化を行う（ステップＳ３４２）。
【０１２３】
その後、ＣＰＵ３８１は、フレームメモリ３９７の分割モード用のフィールド３９７［０］〜３９７［３］から表示データが読み出されるよう、スケーラ３９０の読み出しアドレスを設定し（ステップＳ３４４）、分割移行処理を終了する。以上の処理が図１４のフェーズ３に相当する。この処理が完了した後は、分割モードで表示データの格納、読み出しが可能な状態となる。
【０１２４】
Ｇ．非分割移行処理：
図１７は非分割移行処理におけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。非分割移行処理とは、分割モードから非分割モードに表示モードを切り換える処理である。最上段には、サブ制御基板３５でのスケジューラ更新のタイミングを示した。後述する通り、本実施例では、移行期間の途中で、スケジューラの更新を行わない期間が存在する。これは、移行期間において表示データの生成、格納が不安定となることによって、ＬＣＤ１６に表示される画面にちらつきが生じることを回避するために行われる処理であり、意図的に同一画面を継続的に表示させる処理である。
【０１２５】
分割モードが実行されている途中にサブ制御基板３５がスケジュール更新を行い、非分割モードへの移行が指示されたとする。この移行指示は、例えば、サブ制御基板３５が「移行コマンド」を出力する態様をとってもよいし、サブ制御基板３５が指定する装飾図柄が、高画質画像から高速画像に切り替わった時点でＣＰＵ３８１が、自律的に移行指示がなされたものと判断するという態様をとってもよい。これらの態様で移行指示がなされると、ＣＰＵ３８１は、ＶＧＡ１書き込みを行った後、ＶＤＰレジスタに対して「ＶＧＡ設定」、即ち非分割モードで処理するための設定を行う。ただし、この間、ＶＤＰ３８５は従前に分割モードで書き込まれた「下２」画像に対応する表示データを出力している。
【０１２６】
次に、ＣＰＵ３８１は非分割モードに従って表示データを格納するよう、フレームメモリ３９７の書き込みアドレスをＶＧＡ用、即ち非分割モード用に設定する。また、スプライトレジスタには、ＶＧＡ２の書き込みを行う。ＶＤＰ３８５は、従前に書き込まれたＶＧＡ１画像に対応する表示データを出力している。ただし、ＶＤＰレジスタに「ＶＧＡ設定」を行った直後なので、ＶＧＡ１の表示データの出力動作は不安定となっているおそれがある。本実施例では、このような不安定な状態で出力された表示データが表示に弊害を与えることを回避するため、この時点での表示データのフレームメモリ３９７への格納を禁止する。図中の破線Ｂに示すように、ＣＰＵ３８１は信号停止回路３８９を制御して、ＶＤＰ３８５からの同期信号ＶＳＹＮＣをディセーブルするのである。こうすることにより、ＶＤＰ３８５から出力されるＶＧＡ１出力の表示データはフレームメモリ３９７に格納されずに破棄される。
【０１２７】
書き込みアドレスの変更が完了した後は、ＶＤＰ３８５から出力されるＶＧＡ２画像の表示データは、非分割モードに従って、フィールド３９７［４］（ＶＧＡ用エリア０）に格納されるようになる。この時点では、読み出しアドレスは変更されていないため、スケーラ３９０は分割モードに従って、フィールド３９７［２］、３９７［３］の表示データをＬＣＤ１６に出力する。
【０１２８】
サブ制御基板３５は、ＶＧＡ２書き込みがなされた後は、スケジューラの更新を省略する。この結果、スプライトレジスタへの新たな描画コマンドの書き込みも省略される。従って、ＶＤＰ３８５からは書き込み済みの「ＶＧＡ２」画像の描画コマンドに従って、ＶＧＡ２出力が引き続き出力される。こうして出力されたＶＧＡ２の表示データは、非分割モードに従って、フィールド３９７［５］（ＶＧＡ用エリア１）に格納される。この結果、非分割モード用のフィールド３９７［４］、３９７［５］の双方に、ＶＧＡ２画像の表示データが格納されることになる。
【０１２９】
フィールド３９７［５］（ＶＧＡ用エリア１）へのＶＧＡ２の表示データの書き込みが行われている間、並行して、スプライトレジスタには新たにＶＧＡ３画像の書き込みが行われる。また、ＣＰＵ３８１は、非分割モードで表示データの読み出しが行われるように、スケーラ３９０に対してＶＧＡ拡大出力設定を行う。つまり、フレームメモリ３９７の読み出しアドレスを、非分割モード用に変更し、読み出し時の拡大倍率を１．２５倍に設定する。非分割モードで生成される表示データのサイズと、ＬＤ１６の画素数との関係によっては、拡大倍率の設定は省略してもよい。読み出しアドレスの変更が完了すると、スケーラ３９０は、非分割モードに従って、フィールド３９７［４］（ＶＧＡ用エリア０）の表示データを読み出し、ＬＣＤ１６への出力を開始する。これにより、以後、非分割モードによる表示データの生成、出力が可能となる。
【０１３０】
以上で説明した通り、非分割モードへの移行は、非分割モードでの画面更新周期である３２ｍｓｅｃを一つのフェーズとして考えると、書き込みアドレスの変更（フェーズ１）、非分割モードでの描画コマンド出力およびフィールド３９７［４］（ＶＧＡ用エリア０）への表示データの格納開始（フェーズ２）、読み出しアドレスの変更（フェーズ３）という３つのフェーズで行われる。
【０１３１】
図１８は非分割移行処理のフローチャートである。ＣＰＵ３８１が実行する処理であり、図１７のタイミングチャートで示した処理に相当する処理である。ＣＰＵ３８１は、信号停止回路３８９を制御して、ＶＳＹＮＣをディセーブルにする（ステップＳ４０２）。そして、ＶＤＰ３８５を非分割表示出力、即ち非分割モードに設定する（ステップＳ４０４）。その後、図１７にＶＧＡ２書き込みとして示した通り、描画コマンドを出力し（ステップＳ４０６）、スプライトの最適化を行う（ステップＳ４０８）。また、この処理と並行して、非分割モードで表示データの格納が行われるように、スケーラの書き込みアドレスを設定し（ステップＳ４１０）、ＶＳＹＮＣをイネーブルする（ステップＳ４１２）。以上の処理が図１７で説明したフェーズ１に対応する処理であり、この処理によって、以後の表示データは、非分割モード用のフィールド３９７［４］、３９７［５］に格納されるようになる。
【０１３２】
次に、ＣＰＵ３８１は表示データを格納するフィールドを切り換えるべくフィールド信号をＯＦＦとする（ステップＳ４２０）。これは図１７のフェーズ２に対応する処理である。本実施例では、先に説明した通り、非分割移行処理の移行期間において、サブ制御基板３５がスケジューラの更新を省略するため、フェーズ２ではＣＰＵ３８１は、他の処理を行うことなく時間経過を待つことになる。この間、ＶＤＰ３８５からは、図１７に示した通り、従前に書き込まれた描画コマンドＶＧＡ２に従って、ＶＧＡ２出力が行われている。もっとも、スケジューラの更新の省略は非分割移行処理に必須のものではなく、移行期間においてもスケジュールの更新を行っても良い。この場合、フェーズ２では、ＣＰＵ３８１はサブ制御基板３５からの表示コマンドに従って、スプライトレジスタへの書き込みを行えばよい。
【０１３３】
次に、ＣＰＵ３８１は表示データを格納するフィールドを切り換えるべくフィールド信号をＯＮとする（ステップＳ４３０）。そして、描画コマンドの出力（ステップＳ４３２）、スプライト最適化（ステップＳ４３４）を行う。また、非分割モードで表示データの読み出しが行われるよう、スケーラ３９０の読み出しアドレスを設定して、非分割移行処理を終了する（ステップＳ４３６）。以上が図１７で示したフェーズ３の処理に相当する。この処理が完了した後は、非分割モードで表示データの格納、読み出しが可能な状態となる。
【０１３４】
以上で説明した実施例の遊技機では、ＬＣＤ１６への表示データを、非分割モード、分割モードの２通りで生成することができ、これらの表示モードを遊戯中に切り換えることができる。分割モードには、ＬＣＤ１６の解像度を活かし、高画質な画像を提供することができる。非分割モードは、画像の解像度が比較的低いため、描画に用いるスプライトデータのデータ量を抑制することができる利点がある。従って、遊技中に表示されるべき画面内容に応じて、双方の表示モードを使い分けることにより、それぞれ画面内容の特徴を活かした表示を実現することができ、遊技の興趣を高めることができる。
【０１３５】
また、本実施例の遊技機では、書き込みアドレスの変更（フェーズ１）、移行後の表示モードでの表示データの格納開始（フェーズ２）、読み出しアドレスの変更（フェーズ３）という３フェーズで表示モードの切り換えを行うことにより、切り換え時に、ＬＣＤ１６への表示画面がちらつくなどの弊害を抑制することができる。こうした弊害をより確実に抑制するため、切り換え前後で暗転などの同一画面を数フレーム継続して表示させることが更に好ましい。移行期間において、ＶＤＰ３８５からの同期信号ＶＳＹＮＣを停止し、フレームメモリ３９７に不安定な表示データの書き込みが行われるのを回避することも、ちらつき等の弊害防止に効果的である。
【０１３６】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。実施例では、ＬＣＤ１６を表示装置として用いる場合を例示したが、本発明は他の種類の表示装置を用いる場合にも適用可能である。
【図面の簡単な説明】
【０１３７】
【図１】実施例としてのパチンコ機１の正面図である。
【図２】パチンコ機１の制御用ハードウェア構成を示すブロック図である。
【図３】装飾図柄制御基板３０の回路構成を示す説明図である。
【図４】表示制御処理のフローチャートである。
【図５】非分割表示処理における表示データの生成例を示す説明図である。
【図６】非分割モードにおけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。
【図７】非分割表示制御処理のフローチャートである。
【図８】分割モードにおける表示データの生成例を示す説明図である。
【図９】分割モードにおいてＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。
【図１０】分割モードにおける表示制御処理のフローチャートである。
【図１１】上半分表示処理のフローチャートである。
【図１２】第１変形例としての表示制御処理のフローチャートである。
【図１３】第２変形例としての表示制御処理のフローチャートである。
【図１４】分割移行処理におけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。
【図１５】分割移行処理のフローチャート（１）である。
【図１６】分割移行処理のフローチャート（２）である。
【図１７】非分割移行処理におけるＶＤＰ３８５への画面データ出力の様子を示すタイミングチャートである。
【図１８】非分割移行処理のフローチャートである。
【符号の説明】
【０１３８】
１…パチンコ機
３…メイン制御基板
４…遊技盤
４ａ…表示部
４ｂ…操作スイッチ
６…遊技領域
８…発射ハンドル
９…始動入賞口
１０…大入賞口
１２…パネル装飾ランプ
１５ａ…入賞検出器
１６…ＬＣＤ
１８…大入賞口ソレノイド
２０…払出モータ
２１…賞球払出装置
２２…払出球検出器
２４…モータ駆動センサ
２５…払出制御基板
２９…スピーカ
３０…装飾図柄制御基板
３１…枠装飾ランプ
３２、３４…ランプ中継基板
３５…サブ制御基板
４１…特別図柄表示装置
４７…発射制御基板
４８…タッチ検出部
４９…発射モータ
３８１…ＣＰＵ
３８２…ＲＡＭ
３８３…ＲＯＭ
３８６…キャラＲＯＭ
３８５…ＶＤＰ
３８５ｓ…スプライトレジスタ
３８５ｖ…ＶＤＰレジスタ
３８９…信号停止回路
３９０…スケーラ
３９７…フレームメモリ
３９７［０］〜３９７［５］…フィールド
【図１】
2007312949.tif 000003
【図２】
2007312949.tif 000004
【図３】
2007312949.tif 000005
【図４】
2007312949.tif 000006
【図５】
2007312949.tif 000007
【図６】
2007312949.tif 000008
【図７】
2007312949.tif 000009
【図８】
2007312949.tif 000010
【図９】
2007312949.tif 000011
【図１０】
2007312949.tif 000012
【図１１】
2007312949.tif 000013
【図１２】
2007312949.tif 000014
【図１３】
2007312949.tif 000015
【図１４】
2007312949.tif 000016
【図１５】
2007312949.tif 000017
【図１６】
2007312949.tif 000018
【図１７】
2007312949.tif 000019
【図１８】
2007312949.tif 000020