JP2020081519A - Game machine - Google Patents
Game machine Download PDFInfo
- Publication number
- JP2020081519A JP2020081519A JP2018222160A JP2018222160A JP2020081519A JP 2020081519 A JP2020081519 A JP 2020081519A JP 2018222160 A JP2018222160 A JP 2018222160A JP 2018222160 A JP2018222160 A JP 2018222160A JP 2020081519 A JP2020081519 A JP 2020081519A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- display
- area
- data
- predetermined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012546 transfer Methods 0.000 claims abstract description 256
- 238000000034 method Methods 0.000 claims abstract description 155
- 239000000872 buffer Substances 0.000 claims abstract description 147
- 230000008569 process Effects 0.000 claims abstract description 135
- 230000000694 effects Effects 0.000 claims description 198
- 238000012545 processing Methods 0.000 claims description 115
- 230000002159 abnormal effect Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 8
- 238000004519 manufacturing process Methods 0.000 description 46
- 230000036316 preload Effects 0.000 description 42
- 230000005856 abnormality Effects 0.000 description 32
- 230000006870 function Effects 0.000 description 31
- 230000005540 biological transmission Effects 0.000 description 18
- 239000002131 composite material Substances 0.000 description 18
- 238000003860 storage Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 230000001095 motoneuron effect Effects 0.000 description 15
- 238000010561 standard procedure Methods 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 8
- 239000004973 liquid crystal related substance Substances 0.000 description 7
- 101000661807 Homo sapiens Suppressor of tumorigenicity 14 protein Proteins 0.000 description 6
- 238000010304 firing Methods 0.000 description 6
- 101100500473 Bacillus subtilis (strain 168) abn2 gene Proteins 0.000 description 5
- 101100041125 Arabidopsis thaliana RST1 gene Proteins 0.000 description 4
- 101100522110 Oryza sativa subsp. japonica PHT1-10 gene Proteins 0.000 description 4
- 101100522109 Pinus taeda PT10 gene Proteins 0.000 description 4
- 101100443250 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DIG1 gene Proteins 0.000 description 4
- 230000004913 activation Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 239000011521 glass Substances 0.000 description 4
- 101001139126 Homo sapiens Krueppel-like factor 6 Proteins 0.000 description 3
- 101100443251 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DIG2 gene Proteins 0.000 description 3
- 101100041128 Schizosaccharomyces pombe (strain 972 / ATCC 24843) rst2 gene Proteins 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 101000661816 Homo sapiens Suppression of tumorigenicity 18 protein Proteins 0.000 description 2
- 241000722921 Tulipa gesneriana Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 210000000078 claw Anatomy 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 102100035353 Cyclin-dependent kinase 2-associated protein 1 Human genes 0.000 description 1
- 101000737813 Homo sapiens Cyclin-dependent kinase 2-associated protein 1 Proteins 0.000 description 1
- 101000710013 Homo sapiens Reversion-inducing cysteine-rich protein with Kazal motifs Proteins 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005654 stationary process Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Landscapes
- Pinball Game Machines (AREA)
- Display Devices Of Pinball Game Machines (AREA)
Abstract
Description
本発明は、遊技動作に起因する抽選処理を行い、その抽選結果に対応する画像演出を実行する遊技機に関し、特に、迫力ある画像演出を安定して実行できる遊技機に関する。 The present invention relates to a gaming machine that performs a lottery process resulting from a game operation and executes an image effect corresponding to the lottery result, and particularly to a gaming machine that can stably perform a powerful image effect.
パチンコ機などの弾球遊技機は、遊技盤に設けた図柄始動口と、複数の表示図柄による一連の図柄変動態様を表示する図柄表示部と、開閉板が開閉される大入賞口などを備えて構成されている。そして、図柄始動口に設けられた検出スイッチが遊技球の通過を検出すると入賞状態となり、遊技球が賞球として払出された後、図柄表示部では表示図柄が所定時間変動される。その後、7・7・7などの所定の態様で図柄が停止すると大当り状態となり、大入賞口が繰返し開放されて、遊技者に有利な遊技状態を発生させている。 A ball game machine such as a pachinko machine is equipped with a symbol starting opening provided on the game board, a symbol display section for displaying a series of symbol variation modes by a plurality of display symbols, and a large winning opening for opening/closing the opening/closing plate. Is configured. Then, when the detection switch provided in the symbol starting port detects the passage of the game ball, the winning state is established, and after the game ball is paid out as the prize ball, the display symbol is changed in the symbol display portion for a predetermined time. After that, when the symbols are stopped in a predetermined mode such as 7/7/7, a big hit state occurs, and the special winning opening is repeatedly opened to generate a game state that is advantageous to the player.
このような遊技状態を発生させるか否かは、図柄始動口に遊技球が入賞したことを条件に実行される大当り抽選で決定されており、上記の図柄変動動作は、この抽選結果を踏まえたものとなっている。例えば、抽選結果が当選状態である場合には、リーチアクションなどと称される演出動作を20秒前後実行し、その後、特別図柄を整列させている。一方、ハズレ状態の場合にも、同様のリーチアクションが実行されることがあり、この場合には、遊技者は、大当り状態になることを強く念じつつ演出動作の推移を注視することになる。そして、図柄変動動作の終了時に、停止ラインに所定図柄が揃えば、大当り状態であることが遊技者に保証されたことになる。 Whether or not to generate such a game state is determined by a jackpot lottery executed on the condition that a game ball is won at the symbol start opening, and the above-mentioned symbol variation operation is based on this lottery result. It has become a thing. For example, when the lottery result is a winning state, a production operation called a reach action or the like is executed for about 20 seconds, and then special symbols are arranged. On the other hand, the same reach action may be executed even in the case of the lost state, and in this case, the player pays close attention to the big hit state and pays close attention to the transition of the effect operation. Then, at the end of the symbol changing operation, if the predetermined symbols are aligned with the stop line, the player is guaranteed to be in the big hit state.
この種の遊技機では、各種の演出を複雑化かつ豊富化したいところ、特に、画像演出については、その要請が高い。そこで、出願人は、各種の提案をしているが(引用文献1〜引用文献4)、画像演出の更なる高度化や、画像演出制御の改善が望まれるところである。 In this type of gaming machine, there is a high demand for making various effects complicated and abundant, especially for image effects. Therefore, the applicant has made various proposals (Cited Documents 1 to 4), but it is desired to further enhance the image effect and improve the image effect control.
本発明は、上記の課題に鑑みてなされたものであり、より改善された画像演出制御を実行可能な遊技機を提供することを目的とする。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a gaming machine capable of executing improved image production control.
上記の目的を達成するため、本発明に係る遊技機は、演出制御動作を実行するCPUが発行するディスプレイリストに基づく画像データを、所定のバッファ領域(例えば、フレームバッファFBa)に完成させる描画回路と、前記ディスプレイリスト(DL)又はこれを一部書換えた書換えリスト(DL’)を前記描画回路に転送するデータ転送回路と、前記描画回路が完成させた画像データを前記バッファ領域から読み出して出力する表示回路と、前記描画回路、前記データ転送回路、及び前記表示回路を含んだ各種の内部回路の動作を規定する設定値が前記CPUによって設定される多数の制御レジスタ(RGij)と、を設けた画像生成手段を有して構成され、前記CPUが、所定の制御レジスタに必要な設定値を設定することで、表示装置の横方向ピクセル数に基づいて決定された水平サイズと、所定の垂直サイズとを有する一対の二次元空間を前記バッファ領域に確保する初期処理(例えば、図10のST1,ST2,ST3)が電源投入後に実行され、前記初期処理の後、所定の動作周期毎に、繰り返し実行される定常処理には、一対の二次元空間のうち、前記表示回路が読み出すべき二次元空間を所定の制御レジスタに特定する特定処理(例えば、図10のST6)と、前記描画回路の動作を有効化した状態で、前記データ転送回路を経由して前記ディスプレイリスト又は前記書換えリストを前記描画回路に取得させる転送処理(例えば、図10のST8)と、が含まれ、前記転送処理に先行して、前記CPUは、所定の制御レジスタに所定の設定値を設定して、前記描画回路又は前記データ転送回路について、必要な初期化処理を実行するよう構成されている。この構成は、実施例では、図13のST20や図16のST20の処理がこれに該当する。 In order to achieve the above object, the gaming machine according to the present invention is a drawing circuit that completes image data based on a display list issued by a CPU that executes an effect control operation in a predetermined buffer area (for example, a frame buffer FBa). And a data transfer circuit for transferring the display list (DL) or a rewrite list (DL′) obtained by partially rewriting the display list to the drawing circuit, and image data completed by the drawing circuit is read from the buffer area and output. And a plurality of control registers (RGij) in which set values are set by the CPU to define the operation of various internal circuits including the drawing circuit, the data transfer circuit, and the display circuit. And a predetermined vertical value by setting the necessary setting value in a predetermined control register by the CPU. An initial process (for example, ST1, ST2, ST3 in FIG. 10) of securing a pair of two-dimensional space having a size in the buffer area is executed after power is turned on, and after the initial process, every predetermined operation cycle, The stationary process that is repeatedly executed includes a specific process (for example, ST6 in FIG. 10) that specifies a two-dimensional space to be read by the display circuit in a predetermined control register from a pair of two-dimensional spaces, and the drawing circuit. A transfer process (for example, ST8 in FIG. 10) that causes the drawing circuit to acquire the display list or the rewrite list via the data transfer circuit in a state in which the operation is enabled, and the transfer process includes Prior to this, the CPU is configured to set a predetermined set value in a predetermined control register and execute a necessary initialization process for the drawing circuit or the data transfer circuit. This configuration corresponds to the processing of ST20 of FIG. 13 and ST20 of FIG. 16 in the embodiment.
また、本発明は、演出制御動作を実行するCPUが発行するディスプレイリストに基づく画像データを、所定のバッファ領域に完成させる描画回路と、前記ディスプレイリスト又はこれを一部書換えた書換えリストを前記描画回路に転送するデータ転送回路と、前記描画回路が完成させた画像データを前記バッファ領域から読み出して出力する表示回路と、前記描画回路、前記データ転送回路、及び前記表示回路を含んだ各種の内部回路の動作を規定する設定値が前記CPUによって設定される多数の制御レジスタと、を設けた画像生成手段を有して構成され、前記CPUが、所定の制御レジスタに必要な設定値を設定することで、表示装置の横方向ピクセル数に基づいて決定された水平サイズと、所定の垂直サイズとを有する一対の二次元空間を前記バッファ領域に確保する初期処理が電源投入後に実行され、前記初期処理の後、所定の動作周期毎に、繰り返し実行される定常処理には、一対の二次元空間のうち、前記表示回路が読み出すべき二次元空間を所定の制御レジスタに特定する特定処理と、前記描画回路の動作を有効化した状態で、前記データ転送回路を経由して前記ディスプレイリスト又は前記書換えリストを前記描画回路に取得させる転送処理と、が含まれ、 Further, the present invention draws the drawing circuit for completing the image data based on the display list issued by the CPU that executes the effect control operation in a predetermined buffer area, and the display list or a rewriting list obtained by partially rewriting the display list. A data transfer circuit for transferring to the circuit, a display circuit for reading out and outputting the image data completed by the drawing circuit from the buffer area, the drawing circuit, the data transfer circuit, and various internals including the display circuit The image forming means is provided with a large number of control registers in which a set value that defines the operation of the circuit is set by the CPU, and the CPU sets a necessary set value in a predetermined control register. Thus, an initial process of securing a pair of two-dimensional spaces having a horizontal size determined based on the number of pixels in the horizontal direction of the display device and a predetermined vertical size in the buffer area is executed after power is turned on, and After the processing, the regular processing that is repeatedly executed for each predetermined operation cycle includes a specific processing that specifies, in a predetermined control register, a two-dimensional space to be read by the display circuit among a pair of two-dimensional spaces, A transfer process for causing the drawing circuit to acquire the display list or the rewrite list via the data transfer circuit in a state where the operation of the drawing circuit is enabled,
前記転送処理中に所定の異常事態が発生すると、前記CPUは、所定の制御レジスタに所定の設定値を設定して、前記描画回路又は前記データ転送回路について、必要な初期化処理を実行するよう構成されている。この構成は、実施例では、図12のST27、図14のST52、図16のST20などの処理がこれに該当する。 When a predetermined abnormal situation occurs during the transfer processing, the CPU sets a predetermined set value in a predetermined control register and executes necessary initialization processing for the drawing circuit or the data transfer circuit. It is configured. In this embodiment, this configuration corresponds to the processes of ST27 of FIG. 12, ST52 of FIG. 14, ST20 of FIG. 16, and the like.
上記した本発明によれば、高度化された画像演出であっても、不合理な動作の発生が未然防止され、円滑適切な画像制御動作を実行することができる。 According to the present invention described above, irrational operation is prevented from occurring and smooth and appropriate image control operation can be executed even with advanced image effects.
以下、実施例に基づいて本発明を詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される前枠3とで構成されている。この前枠3には、遊技盤5が、裏側からではなく、表側から着脱自在に装着され、その前側には、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。 Hereinafter, the present invention will be described in detail based on examples. FIG. 1 is a perspective view showing a pachinko machine GM of this embodiment. The pachinko machine GM includes a rectangular frame-shaped wooden outer frame 1 that is detachably attached to an island structure, and a front frame 3 that is pivotally mounted to be openable and closable via a hinge 2 fixed to the outer frame 1. It is configured. A game board 5 is detachably attached to the front frame 3 from the front side, not from the back side, and a glass door 6 and a front plate 7 are pivotally attached to the front side so as to be openable and closable.
ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。一方、ガラス扉6の上部左右位置と下側には、全3個のスピーカが配置されている。上部に配置された2個のスピーカは、各々、左右チャンネルR,Lの音声を出力し、下側のスピーカは低音を出力するよう構成されている。 On the outer periphery of the glass door 6, an electric lamp such as an LED lamp is arranged in a substantially C shape. On the other hand, a total of three speakers are arranged at the upper left and right positions and the lower side of the glass door 6. The two speakers arranged in the upper part are configured to output the sounds of the left and right channels R and L, respectively, and the lower speaker is configured to output the bass sound.
前面板7には、発射用の遊技球を貯留する上皿8が装着され、前枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。 The upper plate 8 for storing the game balls for firing is mounted on the front plate 7, and the lower plate 9 for storing the game balls overflowing or extracted from the upper plate 8 and the launch handle are mounted on the lower portion of the front frame 3. And 10 are provided. The firing handle 10 is interlocked with a firing motor, and a game ball is fired by a batting mallet that operates according to the rotation angle of the firing handle 10.
上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。 A chance button 11 is provided on the outer peripheral surface of the upper plate 8. The chance button 11 is provided at a position where it can be operated by the player's left hand, and the player can operate the chance button 11 without releasing the right hand from the firing handle 10. The chance button 11 is not functioning normally, but when the game state is the button chance state, the built-in lamp is turned on and it can be operated. The button chance state is a game state provided as needed.
また、チャンスボタン11の下方には、ロータリースイッチ型の音量スイッチVLSWが配置されており、遊技者が音量スイッチVLSWを操作することで、無音レベル(=0)から最高レベル(=7)まで、スピーカ音量を8段階に調整できるようになっている。なお、スピーカの音量は、係員だけが操作可能な設定スイッチ(不図示)によって初期設定されており、遊技者が音量スイッチVLSWを操作しない限り、初期設定音量が維持される。また、異常事態が発生したことを報知する異常報知音は、係員による初期設定音量や、遊技者の設定音量に拘らず最高音量で放音される。 In addition, below the chance button 11, a rotary switch type volume switch VLSW is arranged, and when the player operates the volume switch VLSW, from a silent level (=0) to a maximum level (=7), The speaker volume can be adjusted in 8 steps. The volume of the speaker is initially set by a setting switch (not shown) that can be operated only by a staff member, and the initial setting volume is maintained unless the player operates the volume switch VLSW. Further, the abnormality notification sound for notifying that an abnormal situation has occurred is emitted at the maximum volume regardless of the initial volume set by the staff member or the volume set by the player.
上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。 On the right side of the upper plate 8, there is provided an operation panel 12 for operation of lending a ball to a card type ball lending machine, a frequency display section for displaying the remaining amount of the card by a three-digit number, and a ball for a predetermined amount of game balls. A ball lending switch for instructing lending and a return switch for instructing the return of the card at the end of the game are provided.
図2に示すように、遊技盤5の表面には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その略中央には、中央開口HOが設けられている。そして、中央開口HOの下方には、不図示の可動演出体が隠蔽状態で収納されており、可動予告演出時には、その可動演出体が上昇して露出状態となることで、所定の信頼度の予告演出を実現している。ここで、予告演出とは、遊技者に有利な大当り状態が招来することを不確定に報知する演出であり、予告演出の信頼度とは、大当り状態が招来する確率を意味している。 As shown in FIG. 2, on the surface of the game board 5, a guide rail 13 composed of an outer rail and an inner rail made of metal is provided in an annular shape, and a central opening HO is provided substantially at the center thereof. A movable effect body (not shown) is housed under the central opening HO in a concealed state. When the movable notice effect is performed, the movable effect body rises to be in an exposed state, so that a predetermined reliability is obtained. A notice production is realized. Here, the advance notice effect is an effect that informs uncertainly that a big hit state advantageous to the player is coming, and the reliability of the notice effect means a probability that the big hit state is brought.
中央開口HOには、大型(例えば、横1280×縦1024ピクセル)の液晶カラーディスプレイ(LCD)で構成されたメイン表示装置DS1が配置され、メイン表示装置DS1の右側には、小型(例えば、横480×縦800ピクセル)の液晶カラーディスプレイで構成された可動式のサブ表示装置DS2が配置されている。メイン表示装置DS1は、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置DS1は、中央部に特別図柄表示部Da〜Dcと右上部に普通図柄表示部19とを有している。そして、特別図柄表示部Da〜Dcでは、大当り状態の招来を期待させるリーチ演出が実行されることがあり、特別図柄表示部Da〜Dc及びその周りでは、適宜な予告演出などが実行される。 In the central opening HO, a main display device DS1 including a large-sized (for example, horizontal 1280×vertical 1024 pixels) liquid crystal color display (LCD) is arranged, and on the right side of the main display device DS1, a small (for example, horizontal) A movable sub-display device DS2 composed of a liquid crystal color display of 480×800 pixels) is arranged. The main display device DS1 is a device that variably displays a specific symbol related to the big hit state and also displays a background image and various characters in an animation manner. This display device DS1 has special symbol display portions Da to Dc in the central portion and a normal symbol display portion 19 in the upper right portion. Then, in the special symbol display portions Da to Dc, a reach effect that is expected to invite a big hit state may be executed, and in the special symbol display portions Da to Dc and around it, an appropriate notice effect or the like is executed.
サブ表示装置DS2は、通常時には、その表示画面が遊技者に見やすい角度に傾斜した静止状態で画像情報を表示している。但し、所定の予告演出時には、遊技者に見やすい角度に傾斜角度を変えながら、図示の左側に移動する共に、所定の予告画像を表示するようになっている。 The sub display device DS2 normally displays image information in a stationary state in which its display screen is tilted at an angle that is easy for the player to see. However, at the time of a predetermined notice production, the inclination angle is changed to an angle that is easy for the player to see, while moving to the left side in the figure, a predetermined notice image is displayed.
すなわち、実施例のサブ表示装置DS2は、単なる表示装置ではなく、予告演出を実行する可動演出体としても機能している。ここで、サブ表示装置DS2による予告演出は、その信頼度が高く設定されており、遊技者は、大きな期待感をもってサブ表示装置DS2の移動動作に注目することになる。 That is, the sub display device DS2 of the embodiment functions not only as a display device but also as a movable effect body that executes a notice effect. Here, the notice effect by the sub display device DS2 is set to have a high degree of reliability, and the player pays attention to the moving operation of the sub display device DS2 with great expectation.
ところで、遊技球が落下移動する遊技領域には、第1図柄始動口15a、第2図柄始動口15b、第1大入賞口16a、第2大入賞口16b、普通入賞口17、及び、ゲート18が配設されている。これらの入賞口15〜18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。 By the way, in the game area where the game balls fall and move, the first symbol starting opening 15a, the second symbol starting opening 15b, the first big winning opening 16a, the second big winning opening 16b, the normal winning opening 17, and the gate 18 Are arranged. Each of these winning openings 15 to 18 has a detection switch inside, so that the passage of a game ball can be detected.
第1図柄始動口15aの上部には、導入口INから進入した遊技球がシーソー状又はルーレット状に移動した後に、第1図柄始動口15に入賞可能に構成された演出ステージ14が配置されている。そして、第1図柄始動口15に遊技球が入賞すると、特別図柄表示部Da〜Dcの変動動作が開始されるよう構成されている。 At the upper part of the first symbol starting port 15a, after the game ball that has entered from the introduction port IN moves in the shape of a seesaw or roulette wheel, the production stage 14 configured to be able to win the first symbol starting port 15 is arranged. There is. Then, when a game ball wins the first symbol starting port 15, the changing operation of the special symbol display portions Da to Dc is started.
第2図柄始動口15bは、左右一対の開閉爪を備えた電動式チューリップで開閉されるように構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、所定時間だけ、若しくは、所定個数の遊技球を検出するまで、開閉爪が開放されるようになっている。 The second symbol starting port 15b is configured to be opened and closed by an electric tulip having a pair of left and right opening and closing claws, and when the stop symbol after the change of the normal symbol display unit 19 displays a hit symbol, a predetermined symbol is given. The opening/closing claw is opened only for a time or until a predetermined number of game balls are detected.
なお、普通図柄表示部19は、普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止する。 In addition, the normal symbol display portion 19 is for displaying a normal symbol, and when a game ball that has passed through the gate 18 is detected, the normal symbol changes for a predetermined time and is extracted at the time when the game ball passes through the gate 18. Display a stop symbol determined by the selected random number for lottery and stop.
第1大入賞口16aは、前後方向に進退するスライド盤を有して構成され、第2大入賞口16bは、下端が軸支されて前方に開放する開閉板を有して構成されている。第1大入賞口16aや第2大入賞口16bの動作は、特に限定されないが、この実施例では、第1大入賞口16aは、第1図柄始動口15aに対応し、第2大入賞口16bは、第1図柄始動口15bに対応するよう構成されている。 The first special winning opening 16a is configured to include a slide board that moves forward and backward, and the second special winning opening 16b is configured to include an opening/closing plate that is pivotally supported at its lower end and opens forward. .. The operations of the first big winning opening 16a and the second big winning opening 16b are not particularly limited, but in this embodiment, the first big winning opening 16a corresponds to the first symbol starting opening 15a, and the second big winning opening. 16b is constituted so as to correspond to the first symbol starting port 15b.
すなわち、第1図柄始動口15aに遊技球が入賞すると、特別図柄表示部Da〜Dcの変動動作が開始され、その後、所定の大当り図柄が特別図柄表示部Da〜Dcに整列すると、第1大当りたる特別遊技が開始され、第1大入賞口16aのスライド盤が、前方に開放されて遊技球の入賞が容易化される。 That is, when the game ball wins the first symbol starting port 15a, the variation operation of the special symbol display portions Da to Dc is started, and after that, when the predetermined jackpot symbols are aligned with the special symbol display portions Da to Dc, the first jackpot. The barrel special game is started, and the slide board of the first big winning opening 16a is opened forward to facilitate the winning of the game ball.
一方、第2図柄始動口15bへの遊技球の入賞によって開始された変動動作の結果、所定の大当り図柄が特別図柄表示部Da〜Dcに整列すると、第2大当りたる特別遊技が開始され、第2大入賞口16bの開閉板が開放されて遊技球の入賞が容易化される。特別遊技(大当り状態)の遊技価値は、整列する大当り図柄などに対応して種々相違するが、何れの遊技価値が付与されるかは、遊技球の入賞タイミングに応じた抽選結果に基づいて予め決定される。 On the other hand, as a result of the variation operation started by the winning of the game ball to the second symbol starting port 15b, when the predetermined big hit symbols are aligned with the special symbol display portions Da to Dc, the second big hit special game is started, The opening/closing plate of the two major winning openings 16b is opened to facilitate the winning of game balls. The game value of the special game (big hit state) is variously different according to the big hit symbols to be arranged, but which game value is given is based on the lottery result according to the winning timing of the game ball in advance. It is determined.
典型的な大当り状態では、大入賞口16の開閉板が開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板が閉じる。このような動作は、最大で例えば15回まで継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da〜Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態(確変状態)となるという特典が付与される。 In a typical big hit state, after the opening/closing plate of the special winning opening 16 is opened, the opening/closing plate is closed when a predetermined time elapses or when a predetermined number (for example, 10) of game balls are won. Such an operation is continued up to 15 times, for example, and is controlled in a state advantageous to the player. In addition, when the stop symbol after the change of the special symbol display portions Da to Dc is a specific symbol among the special symbols, a privilege that the game after the special game is in the high probability state (probability change state) is provided. Granted.
図3は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図であり、図4(a)はその一部を詳細に図示したものである。 FIG. 3 is a block diagram showing the entire circuit configuration of a pachinko machine GM that realizes each of the above-described operations, and FIG. 4A shows a part of it in detail.
図3に示す通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧や、電源異常信号ABN1、ABN2を出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、音声演出用の回路素子SNDを搭載した演出インタフェイス基板22と、主制御基板21から受けた制御コマンドCMDに基づいてランプ演出、音声演出、及び画像演出を統一的に実行する演出制御基板23と、演出制御基板23と表示装置DS1,DS2の間に位置する液晶インタフェイス基板24と、主制御基板21から受けた制御コマンドCMD’に基づいて払出モータMを制御して遊技球を払い出す払出制御基板25と、遊技者の操作に応答して遊技球を発射させる発射制御基板26と、を中心に構成されている。 As shown in FIG. 3, the pachinko machine GM has a power supply board 20 which receives various direct current voltages and various power supply abnormal signals ABN1 and ABN2 in response to AC24V, and a main control board 21 which centrally controls a game control operation. , A production interface board 22 on which a circuit element SND for voice production is mounted, and a production control board 23 which integrally executes lamp production, voice production, and image production based on a control command CMD received from the main control board 21. Based on the liquid crystal interface board 24 located between the effect control board 23 and the display devices DS1 and DS2, and the control command CMD' received from the main control board 21, the payout motor M is controlled to pay out the game ball. The payout control board 25 and a launch control board 26 that launches a game ball in response to a player's operation are mainly configured.
本実施例の場合、演出インタフェイス基板22と、演出制御基板23と、液晶インタフェイス基板24とは、配線ケーブルを経由することなく、雄型コネクタと雌型コネクタとを直結されている。そのため、各電子回路の回路構成を複雑高度化しても基板全体の収納空間を最小化できると共に、接続ラインを最短化することで耐ノイズ性を高めることができる。 In the case of the present embodiment, the production interface board 22, the production control board 23, and the liquid crystal interface board 24 are directly connected to the male connector and the female connector without passing through a wiring cable. Therefore, even if the circuit configuration of each electronic circuit is complicated and sophisticated, the storage space of the entire substrate can be minimized, and the noise resistance can be improved by minimizing the connection line.
図示の通り、主制御基板21が出力する制御コマンドCMD’は、主基板中継基板33を経由して、払出制御基板25に伝送される。一方、主制御基板21が出力する制御コマンドCMDは、演出インタフェイス基板22を経由して演出制御基板23に伝送される。制御コマンドCMD,CMD’は、何れも16bit長であるが、8bit長毎に2回に分けてパラレル送信される。 As illustrated, the control command CMD′ output from the main control board 21 is transmitted to the payout control board 25 via the main board relay board 33. On the other hand, the control command CMD output from the main control board 21 is transmitted to the effect control board 23 via the effect interface board 22. The control commands CMD and CMD' each have a 16-bit length, but are transmitted in parallel every two 8-bit lengths.
主制御基板21と払出制御基板25には、ワンチップマイコンを含むコンピュータ回路が搭載されている。また、演出制御基板23には、VDP回路(Video Display Processor )52や内蔵CPU回路51などのコンピュータ回路が内蔵された複合チップ50が搭載されている。そこで、これらの制御基板21、25、23と、演出インタフェイス基板22や液晶インタフェイス基板24に搭載された回路、及びその回路によって実現される動作を機能的に総称して、本明細書では、主制御部21、演出制御部23、及び払出制御部25と言うことがある。なお、主制御部21に対して、演出制御部23と、払出制御部25がサブ制御部となる。 A computer circuit including a one-chip microcomputer is mounted on the main control board 21 and the payout control board 25. In addition, the production control board 23 is mounted with a composite chip 50 in which computer circuits such as a VDP circuit (Video Display Processor) 52 and a built-in CPU circuit 51 are built. Therefore, these control boards 21, 25, 23, the circuits mounted on the production interface board 22 and the liquid crystal interface board 24, and the operations realized by the circuits are functionally collectively referred to in this specification. , Main control unit 21, effect control unit 23, and payout control unit 25. In addition, with respect to the main control unit 21, the effect control unit 23 and the payout control unit 25 are sub-control units.
また、このパチンコ機GMは、図3の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された前枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。 The pachinko machine GM is roughly divided into a frame side member GM1 surrounded by a broken line in FIG. 3 and a board side member GM2 fixed to the back surface of the game board 5. The frame-side member GM1 includes a front frame 3 to which a glass door 6 and a front plate 7 are pivotally attached, and a wooden outer frame 1 on the outer side thereof. Fixedly installed. On the other hand, the board side member GM2 is exchanged in response to a model change, and a new board side member GM2 is attached to the frame side member GM1 instead of the original board side member. In addition, all except the frame side member 1 are the board side members GM2.
図3の破線枠に示す通り、枠側部材GM1には、電源基板20と、払出制御基板25と、発射制御基板26と、枠中継基板36とが含まれており、これらの回路基板が、前枠3の適所に各々固定されている。一方、遊技盤5の背面には、主制御基板21、演出制御基板23が、表示装置DS1,DS2やその他の回路基板と共に固定されている。そして、枠側部材GM1と盤側部材GM2とは、一箇所に集中配置された接続コネクタC1〜C4によって電気的に接続されている。 As shown by the broken line frame in FIG. 3, the frame side member GM1 includes a power supply board 20, a payout control board 25, a firing control board 26, and a frame relay board 36, and these circuit boards are The front frame 3 is fixed in place. On the other hand, on the back surface of the game board 5, the main control board 21 and the effect control board 23 are fixed together with the display devices DS1 and DS2 and other circuit boards. The frame-side member GM1 and the board-side member GM2 are electrically connected by the connection connectors C1 to C4 centrally arranged at one place.
電源基板20は、接続コネクタC2を通して、主基板中継基板33に接続され、接続コネクタC3を通して、電源中継基板34に接続されている。そして、電源基板20には、交流電源の投入と遮断とを監視する電源監視部MNTが設けられている。電源監視部MNTは、交流電源の遮断を検知すると、電源異常信号ABN1,ABN2を、直ちにLレベルに遷移させる。なお、電源異常信号ABN1,ABN2は、電源投入後に速やかにHレベルとなる。 The power supply board 20 is connected to the main board relay board 33 through the connection connector C2, and is connected to the power supply relay board 34 through the connection connector C3. The power supply board 20 is provided with a power supply monitoring unit MNT that monitors the turning on and off of the AC power supply. When the power supply monitoring unit MNT detects the interruption of the AC power supply, the power supply abnormality signals ABN1 and ABN2 are immediately changed to the L level. It should be noted that the power supply abnormality signals ABN1 and ABN2 quickly become H level after the power is turned on.
主基板中継基板33は、電源基板20から出力される電源異常信号ABN1、バックアップ電源BAK、及びDC5V,DC12V,DC32Vを、そのまま主制御部21に出力している。また、電源中継基板34は、電源基板20から受けた交流及び直流の電源電圧を、そのまま演出インタフェイス基板22に出力している。 The main board relay board 33 outputs the power supply abnormality signal ABN1 output from the power supply board 20, the backup power supply BAK, and DC5V, DC12V, DC32V as they are to the main control unit 21. Further, the power supply relay board 34 outputs the AC and DC power supply voltages received from the power supply board 20 as they are to the production interface board 22.
図示の通り、演出インタフェイス基板22には、音声プロセッサ27などの音声回路SNDが搭載され、演出制御基板23には、VDP回路52やCPU回路51などのコンピュータ回路が内蔵された複合チップ50が搭載されている。 As shown in the figure, the production interface board 22 is equipped with a voice circuit SND such as a voice processor 27, and the production control board 23 is provided with a composite chip 50 having a built-in computer circuit such as a VDP circuit 52 and a CPU circuit 51. It is installed.
また、演出インタフェイス基板22には、電源投入時に、電源電圧の上昇を検知してリセット信号SYS(CPUリセット信号)を生成するリセット回路RST3が搭載されている。このCPUリセット信号SYSは、演出インタフェイス基板22の音声回路SNDや、演出制御基板23の複合チップ50に伝送されることで、各電子素子を同期的に電源リセットしている。なお、後述するように、CPU回路51のプログラム処理が無限ループ状態となると、CPU回路51に内蔵されたウォッチドッグタイマ58(図4(a)参照)が起動して、音声回路SNDと複合チップ50が同期して異常リセットされる。 Further, the production interface board 22 is equipped with a reset circuit RST3 that detects a rise in the power supply voltage and generates a reset signal SYS (CPU reset signal) when the power is turned on. The CPU reset signal SYS is transmitted to the audio circuit SND of the production interface board 22 and the composite chip 50 of the production control board 23 to synchronously reset the power source of each electronic element. As will be described later, when the program processing of the CPU circuit 51 enters an infinite loop state, the watchdog timer 58 (see FIG. 4A) incorporated in the CPU circuit 51 is activated to activate the audio circuit SND and the composite chip. 50 is synchronously reset abnormally.
次に、枠側部材GM1たる払出制御基板25は、中継基板を介することなく、電源基板20に直結されて、主制御部21が受けると同様の電源異常信号ABN2や、バックアップ電源BAKを、その他の電源電圧と共に受けている。また、主制御部21と払出制御部25には、各々、リセット回路RST1,RST2が搭載されており、電源投入時に電源リセット信号が生成され、各コンピュータ回路が電源リセットされるよう構成されている。 Next, the payout control board 25, which is the frame-side member GM1, is directly connected to the power supply board 20 without the intermediary of the relay board, and receives the same power supply abnormality signal ABN2 and the backup power supply BAK that the main control section 21 receives. Received along with the power supply voltage. Further, the main control unit 21 and the payout control unit 25 are respectively equipped with reset circuits RST1 and RST2, and are configured so that a power supply reset signal is generated when the power is turned on and each computer circuit is reset. ..
このように、本実施例では、主制御部21と、払出制御部25と、演出インタフェイス基板22に、各々、リセット回路RST1〜RST3を配置しており、CPUリセット信号SYSが回路基板間で伝送されることがない。すなわち、CPUリセット信号SYSを伝送する配線ケーブルが存在しないので、配線ケーブルに重畳するノイズによって、コンピュータ回路が異常リセットされるおそれが解消される。 As described above, in the present embodiment, the main controller 21, the payout controller 25, and the effect interface board 22 are provided with the reset circuits RST1 to RST3, respectively, and the CPU reset signal SYS is transmitted between the circuit boards. It will not be transmitted. That is, since there is no wiring cable for transmitting the CPU reset signal SYS, the risk that the computer circuit is abnormally reset due to noise superimposed on the wiring cable is eliminated.
但し、主制御部21や払出制御部25に設けられたリセット回路RST1,RST2は、各々ウォッチドッグタイマを内蔵しており、各制御部21,25のCPUから、定時的なクリアパルスを受けない場合には、各CPUは強制的にリセットされる。 However, each of the reset circuits RST1 and RST2 provided in the main controller 21 and the payout controller 25 has a built-in watchdog timer, and does not receive a regular clear pulse from the CPU of each controller 21 and 25. In this case, each CPU is forcibly reset.
また、主制御部21には、係員が操作可能な初期化スイッチSWが配置されており、電源投入時、初期化スイッチSWがON操作されたか否かを示すRAMクリア信号CLRが出力されるよう構成されている。このRAMクリア信号CLRは、主制御部21と払出制御部25のワンチップマイコンに伝送され、各制御部21,25のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定している。 Further, the main controller 21 is provided with an initialization switch SW that can be operated by a staff member so that when the power is turned on, a RAM clear signal CLR indicating whether or not the initialization switch SW has been turned ON is output. It is configured. The RAM clear signal CLR is transmitted to the one-chip microcomputers of the main control unit 21 and the payout control unit 25, and determines whether or not to initialize the entire area of the built-in RAM of the one-chip microcomputers of the control units 21 and 25. ing.
また、主制御部21及び払出制御部25は、電源基板20から電源異常信号ABN1,ABN2を受けることによって、停電や営業終了に先立って、必要な終了処理を開始するようになっている。また、バックアップ電源BAKは、営業終了や停電により交流電源24Vが遮断された後も、主制御部21と払出制御部25のワンチップマイコンの内蔵RAMのデータを保持するDC5Vの直流電源である。したがって、主制御部21と払出制御部25は、電源遮断前の遊技動作を電源投入後に再開できることになる(電源バックアップ機能)。このパチンコ機では少なくとも数日は、各ワンチップマイコンのRAMの記憶内容が保持されるよう設計されている。 Further, the main control unit 21 and the payout control unit 25 receive the power supply abnormality signals ABN1 and ABN2 from the power supply board 20 so as to start necessary end processing prior to power failure or business end. The backup power supply BAK is a DC 5V DC power supply that retains the data in the built-in RAM of the one-chip microcomputers of the main control unit 21 and the payout control unit 25 even after the AC power supply 24V is shut off due to the closing of business or power failure. Therefore, the main control unit 21 and the payout control unit 25 can restart the game operation before power-off after power-on (power-source backup function). This pachinko machine is designed so that the stored contents of the RAM of each one-chip microcomputer are retained for at least several days.
図3に示す通り、主制御部21は、払出制御部25から、遊技球の払出動作を示す賞球計数信号や、払出動作の異常に係わるステイタス信号CONや、動作開始信号BGNを受信している。ステイタス信号CONには、例えば、補給切れ信号、払出不足エラー信号、下皿満杯信号が含まれる。動作開始信号BGNは、電源投入後、払出制御部25の初期動作が完了したことを主制御部21に通知する信号である。 As shown in FIG. 3, the main control unit 21 receives from the payout control unit 25 a prize ball counting signal indicating a payout operation of gaming balls, a status signal CON relating to an abnormality in the payout operation, and an operation start signal BGN. There is. The status signal CON includes, for example, an out-of-supply signal, an insufficient payout error signal, and a lower plate full signal. The operation start signal BGN is a signal that notifies the main control unit 21 that the initial operation of the payout control unit 25 is completed after the power is turned on.
また、主制御部21は、遊技盤中継基板32を経由して、遊技盤5の各遊技部品に接続されている。そして、遊技盤上の各入賞口16〜18に内蔵された検出スイッチのスイッチ信号を受ける一方、電動式チューリップなどのソレノイド類を駆動している。ソレノイド類や検出スイッチは、主制御部21から配電された電源電圧VB(12V)で動作するよう構成されている。また、図柄始動口15への入賞状態などを示す各スイッチ信号は、電源電圧VB(12V)と電源電圧Vcc(5V)とで動作するインタフェイスICで、TTLレベル又はCMOSレベルのスイッチ信号に変換された上で、主制御部21に伝送される。 Further, the main controller 21 is connected to each game component of the game board 5 via the game board relay board 32. Then, while receiving a switch signal of a detection switch built in each of the winning ports 16 to 18 on the game board, it drives solenoids such as an electric tulip. The solenoids and the detection switches are configured to operate with the power supply voltage VB (12V) distributed from the main controller 21. Further, each switch signal indicating a winning state or the like to the symbol starting port 15 is converted into a switch signal of TTL level or CMOS level by an interface IC which operates with a power supply voltage VB (12V) and a power supply voltage Vcc (5V). Then, it is transmitted to the main control unit 21.
先に説明した通り、演出インタフェイス基板22と演出制御基板23と液晶インタフェイス基板24とはコネクタ連結によって一体化されており、演出インタフェイス基板22は、電源中継基板34を経由して、電源基板20から各レベルの直流電圧(5V,12V,32V)を受けている(図3及び図4(a)参照)。 As described above, the production interface board 22, the production control board 23, and the liquid crystal interface board 24 are integrated by connector connection, and the production interface board 22 is connected to the power supply via the power relay board 34. DC voltage (5V, 12V, 32V) of each level is received from the substrate 20 (see FIGS. 3 and 4A).
図3に示す通り、演出インタフェイス基板22は、主制御部21から制御コマンドCMDとストローブ信号STBとを受けて、演出制御基板23に転送している。より詳細には、図4(a)に示す通りであり、制御コマンドCMDとストローブ信号STBは、入力バッファ40を経由して、演出制御基板23の複合チップ50(CPU回路51)に転送される。 As shown in FIG. 3, the production interface board 22 receives the control command CMD and the strobe signal STB from the main control unit 21 and transfers them to the production control board 23. More specifically, as shown in FIG. 4A, the control command CMD and the strobe signal STB are transferred to the composite chip 50 (CPU circuit 51) of the effect control board 23 via the input buffer 40. ..
また、リセット回路RST3で生成されたCPUリセット信号SYSは、入力バッファ40とOR回路G1とを経由して、演出制御基板23と、音声プロセッサ27などの音声回路SNDに供給されている。図示の通り、OR回路G1には、WDT回路58のアンダーフロー信号UFも供給されており、二つの信号SYS,UFの何れかがアクティブレベルとなると、複合チップ50の内部回路と、音声回路SNDが同期してリセット状態になる(異常リセット)。異常リセットされる複合チップ50の内部回路には、CPU回路51と、VDP回路52が含まれ、異常リセットされる音声回路SNDには、音声プロセッサ27と、音声メモリ28が含まれている。 The CPU reset signal SYS generated by the reset circuit RST3 is supplied to the effect control board 23 and the audio circuit SND such as the audio processor 27 via the input buffer 40 and the OR circuit G1. As shown in the figure, the OR circuit G1 is also supplied with the underflow signal UF of the WDT circuit 58, and when either of the two signals SYS, UF becomes an active level, the internal circuit of the composite chip 50 and the audio circuit SND are supplied. Are reset in synchronization (abnormal reset). The internal circuit of the composite chip 50 that is abnormally reset includes a CPU circuit 51 and a VDP circuit 52, and the audio circuit SND that is abnormally reset includes an audio processor 27 and an audio memory 28.
図4(a)に示す通り、演出インタフェイス基板22の入力バッファ44は、枠中継基板35,36からチャンスボタン11や音量スイッチVLSWのスイッチ信号を受け、各スイッチ信号を演出制御基板23のCPU回路51に伝送している。具体的には、音量スイッチVLSWの接点位置(0〜7)を示すエンコーダ出力の3bit長と、チャンスボタン11のON/OFF状態を示す1bit長をCPU回路51に伝送している。 As shown in FIG. 4A, the input buffer 44 of the effect interface board 22 receives the switch signals of the chance button 11 and the volume switch VLSW from the frame relay boards 35 and 36, and sends each switch signal to the CPU of the effect control board 23. It is transmitted to the circuit 51. Specifically, a 3-bit length of the encoder output indicating the contact position (0 to 7) of the volume switch VLSW and a 1-bit length indicating the ON/OFF state of the chance button 11 are transmitted to the CPU circuit 51.
また、演出インタフェイス基板22には、ランプ駆動基板30やモータランプ駆動基板31が接続されると共に、枠中継基板35,36を経由して、ランプ駆動基板37にも接続されている。図示の通り、ランプ駆動基板30に対応して、出力バッファ42が配置され、モータランプ駆動基板31に対応して、入力バッファ43aと出力バッファ43bが配置されている。なお、図4(a)では、便宜上、入力バッファ43aと出力バッファ43bを総称して、入出力バッファ43と記載している。入力バッファ43aは、可動演出体たる役物の現在位置(演出モータM1〜Mnの回転位置)を把握する原点センサの出力SN0〜SNnを受けて、演出制御基板23のCPU回路51に伝送している。 Further, the production interface board 22 is connected to the lamp drive board 30 and the motor lamp drive board 31, and is also connected to the lamp drive board 37 via the frame relay boards 35 and 36. As shown, an output buffer 42 is arranged corresponding to the lamp driving board 30, and an input buffer 43a and an output buffer 43b are arranged corresponding to the motor lamp driving board 31. In FIG. 4A, for convenience, the input buffer 43a and the output buffer 43b are collectively referred to as the input/output buffer 43. The input buffer 43a receives the outputs SN0 to SNn of the origin sensor for grasping the current position (rotational positions of the effect motors M1 to Mn) of the accessory which is the movable effect body, and transmits them to the CPU circuit 51 of the effect control board 23. There is.
ランプ駆動基板30、モータランプ駆動基板31、及び、ランプ駆動基板37には、同種のドライバICが搭載されており、演出インタフェイス基板22は、演出制御基板23から受けるシリアル信号を、各ドライバICに転送している。シリアル信号は、具体的には、ランプ(モータ)駆動信号SDATAとクロック信号CKであり、駆動信号SDATAがクロック同期方式で各ドライバICに伝送され、多数のLEDランプや電飾ランプによるランプ演出や、演出モータM1〜Mnによる役物演出が実行される。 The same type of driver IC is mounted on the lamp drive board 30, the motor lamp drive board 31, and the lamp drive board 37, and the production interface board 22 receives the serial signal received from the production control board 23 from each driver IC. Have transferred to. Specifically, the serial signal is a lamp (motor) drive signal SDATA and a clock signal CK, and the drive signal SDATA is transmitted to each driver IC in a clock synchronization method, and a lamp effect by a large number of LED lamps and decorative lamps is produced. A character effect is executed by the effect motors M1 to Mn.
本実施例の場合、ランプ演出は、三系統のランプ群CH0〜CH2によって実行されており、ランプ駆動基板37は、枠中継基板35,36を経由して、CH0のランプ駆動信号SDATA0を、クロック信号CK0に同期して受けている。なお、シリアル信号として伝送される一連のランプ駆動信号SDATA0は、動作制御信号ENABLE0がアクティブレベルに変化したタイミングで、ドライバICからランプ群CH0に出力されることで一斉に点灯状態が更新される。 In the case of the present embodiment, the lamp effect is executed by the three groups of lamp groups CH0 to CH2, and the lamp drive board 37 clocks the lamp drive signal SDATA0 of CH0 via the frame relay boards 35 and 36. It is received in synchronization with the signal CK0. A series of lamp drive signals SDATA0 transmitted as a serial signal are output from the driver IC to the lamp group CH0 at the timing when the operation control signal ENABLE0 changes to the active level, so that the lighting state is updated all at once.
以上の点は、ランプ駆動基板30についても同様であり、ランプ駆動基板30のドライバICは、ランプ群CH1のランプ駆動信号SDATA1を、クロック信号CK1に同期して受け、動作制御信号ENABLE1がアクティブレベルに変化したタイミングで、ランプ群CH1の点灯状態を一斉に更新している。 The above points are the same for the lamp driving board 30. The driver IC of the lamp driving board 30 receives the lamp driving signal SDATA1 of the lamp group CH1 in synchronization with the clock signal CK1, and the operation control signal ENABLE1 is at the active level. The lighting state of the lamp group CH1 is updated all at once at the timing of change to.
一方、モータランプ駆動基板31に搭載されたドライバICは、クロック同期式で伝送されるランプ駆動信号を受けてランプ群CH2を駆動すると共に、クロック同期式で伝送されるモータ駆動信号を受けて、複数のステッピングモータで構成された演出モータ群M1〜Mnを駆動している。なお、ランプ駆動信号とモータ駆動信号は、一連のシリアル信号SDATA2であって、クロック信号CK1に同期してシリアル伝送され、これを受けたドライバICは、動作制御信号ENABLE2がアクティブレベルに変化するタイミングで、ランプ群CH2やモータ群M1〜Mnの駆動状態を更新する。 On the other hand, the driver IC mounted on the motor lamp drive board 31 drives the lamp group CH2 by receiving the lamp drive signal transmitted in the clock synchronous system, and receives the motor drive signal transmitted in the clock synchronous system, The effect motor groups M1 to Mn configured by a plurality of stepping motors are driven. The lamp drive signal and the motor drive signal are a series of serial signals SDATA2, which are serially transmitted in synchronization with the clock signal CK1, and the driver IC which receives the serial signal SDATA2 receives the timing when the operation control signal ENABLE2 changes to the active level. Then, the driving states of the lamp group CH2 and the motor groups M1 to Mn are updated.
続いて、音声回路SNDについて説明する。図4(a)に示す通り、演出インタフェイス基板22には、演出制御基板23のCPU回路51(演出制御CPU63)から受ける指示に基づいて音声信号を再生する音声プロセッサ(音声合成回路)27と、再生される音声信号の元データである圧縮音声データなどを記憶する音声メモリ28と、音声プロセッサ27から出力される音声信号を受けるデジタルアンプ29と、が搭載されている。 Next, the audio circuit SND will be described. As shown in FIG. 4A, the effect interface board 22 includes a voice processor (voice synthesizer circuit) 27 that reproduces an audio signal based on an instruction received from the CPU circuit 51 (effect control CPU 63) of the effect control board 23. An audio memory 28 for storing compressed audio data, which is the original data of the audio signal to be reproduced, and a digital amplifier 29 for receiving the audio signal output from the audio processor 27 are mounted.
音声プロセッサ27は、演出制御CPU63から内蔵レジスタたる音声制御レジスタに受ける動作パラメータ(音声コマンドによる設定値)に基づいて、音声メモリ28をアクセスして、必要な音声信号を再生して出力している。図4(a)に示す通り、音声プロセッサ27と、音声メモリ28とは、26bit長の音声アドレスバスと、16bit長の音声データバスで接続されている。そのため、音声メモリ28には、1Gbit(=226*16)のデータが記憶可能となる。 The voice processor 27 accesses the voice memory 28 based on the operation parameter (set value by voice command) received from the effect control CPU 63 in the voice control register which is a built-in register, reproduces and outputs a necessary voice signal. .. As shown in FIG. 4A, the voice processor 27 and the voice memory 28 are connected by a voice address bus having a length of 26 bits and a voice data bus having a length of 16 bits. Therefore, 1 Gbit (=2 26 *16) of data can be stored in the audio memory 28.
本実施例の場合、音声メモリ28に記憶された圧縮音声データは、13bit長のフレーズ番号NUM(000H〜1FFFH)で特定されるフレーズ(phrase)圧縮データであり、一連の背景音楽の一曲分(BGM)や、ひと纏まりの演出音(予告音)などが、最高8192種類(=213)、各々、フレーズ番号NUMに対応して記憶されている。そして、このフレーズ番号NUMは、演出制御CPU63から音声プロセッサ27の音声制御レジスタに伝送される音声コマンドの設定値(動作パラメータ)によって特定される。 In the case of the present embodiment, the compressed voice data stored in the voice memory 28 is the phrase compressed data specified by the 13-bit long phrase number NUM (000H to 1FFFH), which is equivalent to one song of a series of background music. (BGM), a set of effect sounds (preliminary sounds), etc. are stored in association with a maximum of 8192 types (=213) of the phrase numbers NUM. The phrase number NUM is specified by the set value (operation parameter) of the voice command transmitted from the effect control CPU 63 to the voice control register of the voice processor 27.
また、図4(a)に示す通り、演出制御部23のCPU回路51のデータバスとアドレスバスは、液晶インタフェイス基板24に搭載された時計回路(real time clock )38と演出データメモリ39にも及んでいる。時計回路38は、CPU回路51のアドレスバスの下位4bitと、データバスの下位4bitに接続されており、CPU回路51が任意にアクセスできるよう構成されている。また、演出データメモリ39は、高速アクセス可能なメモリ素子SRAM(Static Random Access Memory )であって、CPU回路51のアドレスバスの16bitと、データバスの下位16bitに接続されており、そこに記憶されている遊技実績情報その他が、CPU回路51から適宜にR/Wアクセスされるようになっている。 As shown in FIG. 4A, the data bus and the address bus of the CPU circuit 51 of the effect control unit 23 are stored in the time circuit (real time clock) 38 and the effect data memory 39 mounted on the liquid crystal interface board 24. Has also reached. The clock circuit 38 is connected to the lower 4 bits of the address bus and the lower 4 bits of the data bus of the CPU circuit 51, and is configured so that the CPU circuit 51 can arbitrarily access it. The effect data memory 39 is a high-speed accessible memory device SRAM (Static Random Access Memory), which is connected to the 16-bit address bus and the lower 16-bit data bus of the CPU circuit 51, and is stored therein. The game performance information and other information being played can be appropriately R/W accessed from the CPU circuit 51.
時計回路38と演出データメモリ39は、不図示の二次電池で駆動されており、この二次電池は、遊技動作中、電源基板20からの給電電圧によって適宜に充電される。そのため、電源遮断後も、時計回路38の計時動作が継続され、また、演出データメモリ39に記憶された遊技実績情報が、永続的に記憶保持されることになる(不揮発性を付与)。 The clock circuit 38 and the effect data memory 39 are driven by a secondary battery (not shown), and the secondary battery is appropriately charged by the power supply voltage from the power supply board 20 during the game operation. Therefore, even after the power is cut off, the clocking operation of the clock circuit 38 is continued, and the game performance information stored in the effect data memory 39 is permanently stored (nonvolatile).
図4(a)の右側に示す通り、演出制御基板23には、CPU回路51やVDP回路52を内蔵する複合チップ50と、CPU回路51の制御プログラムを記憶する制御メモリ(PROM)53と、大量のデータを高速にアクセス可能なDRAM(Dynamic Random Access Memory)54と、演出制御に必要な大量のCGデータを記憶するCGROM55と、が搭載されている。 As shown on the right side of FIG. 4A, on the effect control board 23, a composite chip 50 having a built-in CPU circuit 51 and a VDP circuit 52, a control memory (PROM) 53 for storing a control program of the CPU circuit 51, A DRAM (Dynamic Random Access Memory) 54 that can access a large amount of data at high speed and a CGROM 55 that stores a large amount of CG data necessary for effect control are mounted.
図5(a)は、演出制御部23を構成する複合チップ50について、関連する回路素子も含めて図示した回路ブロック図である。図示の通り、実施例の複合チップ50には、所定時間毎にディスプレイリストDLを発行する内蔵CPU回路51と、発行されたディスプレイリストDLに基づいて画像データを生成して表示装置DS1,DS2を駆動するVDP回路52とが内蔵されている。そして、内蔵CPU回路51とVDP回路52とは、互いの送受信データを中継するCPUIF回路56を通して接続されている。 FIG. 5A is a circuit block diagram illustrating the composite chip 50 forming the effect control unit 23, including the related circuit elements. As shown in the figure, in the composite chip 50 of the embodiment, a built-in CPU circuit 51 that issues a display list DL at predetermined time intervals, and display devices DS1 and DS2 that generate image data based on the issued display list DL are provided. A VDP circuit 52 for driving is built in. The built-in CPU circuit 51 and the VDP circuit 52 are connected via a CPUIF circuit 56 that relays the transmission/reception data of each other.
また、CPUIF回路56には、制御プログラムや必要な制御データを不揮発的に記憶する制御メモリ(PROGRAM_ROM )53と、2Mバイト程度の記憶容量を有するワークメモリ(RAM)57とが接続され、各々、内蔵CPU回路51からアクセス可能に構成されている。そして、ワークメモリ(RAM)57には、表示装置DS1,DS2の各一フレームを特定する一連の指示コマンドが記載されたディスプレイリストDLを、一次的に記憶するDLバッファBUFが確保されている。 Further, the CPUIF circuit 56 is connected to a control memory (PROGRAM_ROM) 53 that stores a control program and necessary control data in a nonvolatile manner, and a work memory (RAM) 57 that has a storage capacity of about 2 Mbytes. It is configured to be accessible from the built-in CPU circuit 51. Then, in the work memory (RAM) 57, a DL buffer BUF that temporarily stores a display list DL in which a series of instruction commands for specifying each frame of the display devices DS1 and DS2 are described is secured.
本実施例の場合、一連の指示コマンドには、CGROM55から画像素材(テクスチャ)を読み出してデコード(展開)するためのTXLOADコマンドなどのテクスチャロード系コマンドと、デコード(展開)先のVRAM領域(インデックス空間)を予め特定するなどの機能を有するSETINDEXコマンドなどのテクスチャ設定系コマンドと、デコード(展開)後の画像素材を仮想描画空間の所定位置に配置するためのSPRITEコマンドなどのプリミティブ描画系コマンドと、描画系コマンドによって仮想描画空間に描画された画像のうち、実際に表示装置に描画する描画領域を特定するためのSETDAVR コマンドやSETDAVF コマンドなどの環境設定コマンドと、インデックス空間を管理するインデックステーブルIDXTBLに関するインデックステーブル制御系コマンド(WRIDXTBL)が含まれる。 In the case of the present embodiment, the series of instruction commands includes a texture load type command such as a TXLOAD command for reading and decoding (developing) an image material (texture) from the CGROM 55, and a VRAM area (index Texture setting commands such as the SET INDEX command that has the function of specifying the space) in advance, and primitive drawing commands such as the SPRITE command for placing the decoded (decompressed) image material at a predetermined position in the virtual drawing space. , Environment setting commands such as SETDAVR command and SETDAVF command for specifying the drawing area that is actually drawn on the display device among the images drawn in the virtual drawing space by drawing commands, and the index table IDXTBL that manages the index space. Includes index table control commands (WRIDXTBL) for.
なお、図7(c)には、仮想描画空間(水平X方向±8192:垂直Y方向±8192)と、仮想描画空間の中で任意に設定可能な描画領域と、表示装置DS1,DS2に出力する画像データを一次保存するフレームバッファFBa,FBbにおける実描画領域と、の関係が図示されている。 In FIG. 7C, a virtual drawing space (horizontal X direction ±8192: vertical Y direction ±8192), a drawing area that can be arbitrarily set in the virtual drawing space, and output to the display devices DS1 and DS2. The relationship between the actual drawing areas in the frame buffers FBa and FBb for temporarily storing the image data to be stored is illustrated.
内蔵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と、を有して構成されている。 The built-in CPU circuit 51 is a circuit having a performance equivalent to that of a general-purpose one-chip microcomputer. A watchdog timer (WDT) 58 forcibly resetting, a RAM 59 having a storage capacity of about 16 kbytes and used as a work area of the CPU, and a DMAC (Direct Memory Access Controller) for realizing data transfer without going through the CPU. 60, a serial input/output port (SIO) 61 having a plurality of input ports Si and an output port So, and a parallel input/output port (PIO) 62 having a plurality of input ports Pi and an output port Po. Has been done.
なお、便宜上、入出力ポートとの表現を使用するが、演出制御部23において、入出力ポートには、独立して動作する入力ポートと出力ポートとが含まれている。なお、この点は、以下に説明する入出力回路64pや入出力回路64sについても同様である。 For convenience, the expression “input/output port” is used, but in the effect control unit 23, the input/output ports include an input port and an output port that operate independently. Note that this point is the same for the input/output circuit 64p and the input/output circuit 64s described below.
パラレル入出力ポート62は、入出力回路64pを通して外部機器(演出インタフェイス基板22)に接続されており、演出制御CPU63は、入力回路64pを経由して、音量スイッチVLSWのエンコーダ出力3bitと、チャンスボタン11のスイッチ信号と、制御コマンドCMDと、割込み信号STBと、を受信するようになっている。エンコーダ出力3bitと、スイッチ信号1bitは、入出力回路64pを経由して、パラレル入出力ポート(PIO)62に供給されている。 The parallel input/output port 62 is connected to an external device (production interface board 22) through an input/output circuit 64p, and the production control CPU 63, via the input circuit 64p, the encoder output 3bit of the volume switch VLSW and the chance. The switch signal of the button 11, the control command CMD, and the interrupt signal STB are received. The encoder output 3 bits and the switch signal 1 bit are supplied to the parallel input/output port (PIO) 62 via the input/output circuit 64p.
同様に、受信した制御コマンドCMDは、入出力回路64pを経由して、パラレル入出力ポート(PIO)62に供給されている。また、ストローブ信号STBは、入出力回路64pを経由して、演出制御CPU63の割込み端子に供給されることで、受信割込み処理を起動させている。したがって、受信割込み処理に基づいて、制御コマンドCMDを把握した演出制御CPU63は、演出抽選などを経て、この制御コマンドCMDに対応する音声演出、ランプ演出、モータ演出、及び画像演出を統一的に制御することになる。 Similarly, the received control command CMD is supplied to the parallel input/output port (PIO) 62 via the input/output circuit 64p. Further, the strobe signal STB is supplied to the interrupt terminal of the effect control CPU 63 via the input/output circuit 64p to activate the reception interrupt processing. Therefore, the effect control CPU 63 that grasps the control command CMD on the basis of the reception interrupt process controls the sound effect, the lamp effect, the motor effect, and the image effect corresponding to the control command CMD uniformly through the effect lottery and the like. Will be done.
特に限定されないが、本実施例では、ランプ演出とモータ演出のために、VDP回路52のSMC部(Serial Management Controller)78を使用している。SMC部78は、LEDコントローラとMotorコントローラと、を内蔵した複合コントコントローラであり、クロック同期方式でシリアル信号を出力できるよう構成されている。また、Motorコントローラは、所定の制御レジスタ70への設定値に基づき、任意のタイミングでラッチパルスを出力可能に構成され、また、クロック同期方式でシリアル信号を入力可能に構成されている。 Although not particularly limited, in this embodiment, the SMC unit (Serial Management Controller) 78 of the VDP circuit 52 is used for the lamp effect and the motor effect. The SMC unit 78 is a composite controller that incorporates an LED controller and a Motor controller, and is configured to output a serial signal in a clock synchronization system. Further, the Motor controller is configured to be able to output a latch pulse at an arbitrary timing based on a set value in a predetermined control register 70, and to be able to input a serial signal by a clock synchronization method.
そこで、本実施例では、クロック信号に同期してモータ駆動信号やLED駆動信号を、SMC部78から出力させる一方、適宜なタイミングで、ラッチパルスを、動作制御信号ENABLEとして出力するようにしている。また、演出モータ群M1〜Mnからの原点センサ信号SN0〜SNnをクロック同期方式でシリアル入力するよう構成されている。 Therefore, in this embodiment, the motor drive signal and the LED drive signal are output from the SMC unit 78 in synchronization with the clock signal, while the latch pulse is output as the operation control signal ENABLE at an appropriate timing. .. Further, the origin sensor signals SN0 to SNn from the effect motor groups M1 to Mn are serially input by the clock synchronization method.
図4(a)に関して説明した通り、クロック信号CK0〜CK2、駆動信号SDATA0〜SDATA2、及び、動作制御信号ENABLE0〜ENABLE2は、出力バッファ41〜43を経由して、所定の駆動基板30,31,37に伝送される。また、原点センサ信号SN0〜SNnは、モータランプ駆動基板31から入出力バッファ43を経由して、SMC部78にシリアル入力される。 As described with reference to FIG. 4A, the clock signals CK0 to CK2, the drive signals SDATA0 to SDATA2, and the operation control signals ENABLE0 to ENABLE2 are output to the predetermined drive substrates 30, 31, 37 is transmitted. The origin sensor signals SN0 to SNn are serially input from the motor lamp drive board 31 to the SMC section 78 via the input/output buffer 43.
但し、本実施例において、SMC部78を使用することは必須ではない。すなわち、CPU回路51には、汎用のシリアル入出力ポートSIO61が内蔵されているので、これらを使用して、ランプ演出とモータ演出を実行することもできる。 However, in this embodiment, it is not essential to use the SMC unit 78. That is, since the CPU circuit 51 has the built-in general-purpose serial input/output port SIO61, it is possible to execute a lamp effect and a motor effect by using these.
具体的には、図5(a)の破線に示す通りであり、破線で示す構成では、シリアル入出力ポートSIO61に内部接続されている入出力回路64sを経由して、クロック信号CK0〜CK2、駆動信号SDATA0〜SDATA2が出力され、入出力回路64pを経由して動作制御信号ENABLE0〜ENABLE2が出力される。なお、便宜上、入出力ポートや入出力回路と表現するが、実際に機能するのは、出力ポートや出力回路である。 Specifically, as shown by the broken line in FIG. 5A, in the configuration shown by the broken line, clock signals CK0 to CK2, via the input/output circuit 64s internally connected to the serial input/output port SIO61, The drive signals SDATA0 to SDATA2 are output, and the operation control signals ENABLE0 to ENABLE2 are output via the input/output circuit 64p. It should be noted that, for convenience, it is expressed as an input/output port or an input/output circuit, but it is the output port or output circuit that actually functions.
ここで、シリアル出力ポートSOは、16段のFIFOレジスタを内蔵して構成されている。そして、DMAC回路60は、演出制御CPU63から動作開始指示(図10(b)ST18参照)を受けて起動し、ランプ/モータ駆動テーブル(図10(b)参照)から、必要な駆動テータを順番に読み出し、シリアル出力ポートSOのFIFOレジスタにDMA転送するよう構成されている。FIFOレジスタに蓄積された駆動データは、クロック同期方式でシリアル出力ポートSOからシリアル出力される。なお、DMAC回路には、複数(例えば4)のDMAチャンネルが存在するが、第1のDMAチャンネルでランプ駆動データをDMA転送し、第2のDMAチャンネルでモータ駆動データをDMA転送するよう構成されている。 Here, the serial output port SO is configured by incorporating a 16-stage FIFO register. Then, the DMAC circuit 60 is activated upon receiving an operation start instruction (see ST18 in FIG. 10(b)) from the effect control CPU 63, and sequentially selects the necessary drive data from the lamp/motor drive table (see FIG. 10(b)). Read out and DMA-transferred to the FIFO register of the serial output port SO. The drive data accumulated in the FIFO register is serially output from the serial output port SO by the clock synchronization method. The DMAC circuit has a plurality of DMA channels (for example, 4), but is configured so that the first DMA channel DMA-transfers the lamp drive data and the second DMA channel DMA-transfers the motor drive data. ing.
次に、内蔵CPU回路51に設けられたWDT回路58は、演出制御CPU63からアクセス可能な複数の制御レジスタ(WDT制御レジスタなど)への設定値に基づいて、ダウンカウント動作するWDTカウンタを有して構成されている。このWDTカウンタは、所定の初期値から開始して、ゼロに向かって所定の動作周期でダウンカウントされ、ダウンカウント値がゼロに達するとすると、内部割込み(WDT割込み)が発生すると共に、アクティブレベルのアンダーフロー信号UFを出力するよう構成されている。 Next, the WDT circuit 58 provided in the built-in CPU circuit 51 has a WDT counter that performs a down-count operation based on the set values in a plurality of control registers (WDT control registers, etc.) accessible from the effect control CPU 63. Is configured. The WDT counter starts from a predetermined initial value and is down-counted toward a zero in a predetermined operation cycle. When the down-count value reaches zero, an internal interrupt (WDT interrupt) is generated and the active level is lowered. Of the underflow signal UF.
図4(a)に関し先に説明した通り、アンダーフロー信号UFは、OR回路G1を経由して各部に伝送され、複合チップ50と音声回路SNDを同期して異常リセットしている。もっとも、演出制御CPU63は、所定時間(例えば1/30秒)毎に、WDT制御レジスタの初期化ビットに所定1bit値を書き込むことで(図10のST14参照)、カウンタ値を初期値に戻しており、上記した異常リセットの発生を回避している。なお、WDTカウンタのカウンタ値が初期値に戻ると、初期化ビットも元の値に戻る。 As described above with reference to FIG. 4A, the underflow signal UF is transmitted to each unit via the OR circuit G1 and abnormally resets the composite chip 50 and the audio circuit SND in synchronization. Of course, the effect control CPU 63 restores the counter value to the initial value by writing a predetermined 1-bit value in the initialization bit of the WDT control register every predetermined time (for example, 1/30 seconds) (see ST14 in FIG. 10). Therefore, the occurrence of the above-mentioned abnormal reset is avoided. When the counter value of the WDT counter returns to the initial value, the initialization bit also returns to the original value.
このように本実施例では、演出制御CPU63は、WDT制御レジスタの初期化ビット(1bit)をWrite アクセスするだけで足り、主制御部21や払出制御部25のCPUように、リセット回路RST1,RST2へのクリアパルスを出力する必要がないので、この分だけ制御負担が軽減される。また、アンダーフロー異常時には、WDT割込みが発生するので、適宜なWDT割込み処理プログラムを起動させることで、異常リセットの発生時刻などを、演出データメモリ39に不揮発的に記憶させることもできる。図4(b)は、このような場合の回路構成を示しており、演出制御CPU63は、WDT割込み処理プログラムの実行後に、ソフトウェアリセット処理によって、リセット状態となる。 As described above, in this embodiment, the effect control CPU 63 only needs to write-access the initialization bit (1 bit) of the WDT control register, and the reset circuits RST1 and RST2, like the CPUs of the main control unit 21 and the payout control unit 25, need. Since it is not necessary to output a clear pulse to, the control load is reduced by this amount. Further, since a WDT interrupt is generated when the underflow is abnormal, it is possible to store the occurrence time of the abnormal reset in the effect data memory 39 in a nonvolatile manner by activating an appropriate WDT interrupt processing program. FIG.4(b) has shown the circuit structure in such a case, and the production|generation control CPU63 will be in a reset state by a software reset process after execution of a WDT interruption process program.
DMAC回路60は、所定の動作制御レジスタへの設定値に基づいて、転送元(Source)から転送先(Destination )に対して、所定のDMA転送モードで、所定のデータ転送単位毎に、所定回数、データ転送を繰り返す回路である。 The DMAC circuit 60 performs a predetermined number of times for each predetermined data transfer unit in a predetermined DMA transfer mode from a transfer source (Source) to a transfer destination (Destination) based on a set value in a predetermined operation control register. , A circuit for repeating data transfer.
例えば、シリアル出力ポートSOが機能する実施例(図5(a)破線部参照)では、CPU回路51の動作制御レジスタには、ランプ/モータ駆動テーブルの先頭アドレス(転送元アドレスの先頭値)と、シリアル出力ポートSOの入力レジスタのアドレス(転送先アドレスの固定値)と、データ転送単位(8bit)と、転送回数と、が指定される。そして、所定の動作制御レジスタに動作開始指示を受けたDMAC回路60は、転送元アドレスを更新しつつ、所定の転送先アドレスに駆動データをDMA転送する。 For example, in the embodiment in which the serial output port SO functions (see the broken line in FIG. 5A), the operation control register of the CPU circuit 51 stores the start address (start value of the transfer source address) of the lamp/motor drive table. , The address of the input register of the serial output port SO (fixed value of the transfer destination address), the data transfer unit (8 bits), and the transfer count are designated. Then, the DMAC circuit 60, which has received the operation start instruction from the predetermined operation control register, updates the transfer source address and DMA-transfers the drive data to the predetermined transfer destination address.
この点は、ディスプレイリストDLをDMAC回路60が発行する実施例(図13、図17(c))の場合もほぼ同様である。すなわち、演出制御CPU63は、CPU回路51の所定の動作制御レジスタに、転送元(DLバッファBUF)の先頭アドレスと、転送先(転送ポートTR_PORT )のアドレスと、DMA転送モードと、データ転送単位と、転送回数、その他の条件を設定することになる。なお、これらの点は、図13に関して更に後述する。 This point is almost the same in the case of the embodiment (FIGS. 13 and 17C) in which the display list DL is issued by the DMAC circuit 60. That is, the effect control CPU 63 stores the start address of the transfer source (DL buffer BUF), the transfer destination (transfer port TR_PORT), the DMA transfer mode, and the data transfer unit in the predetermined operation control register of the CPU circuit 51. , The number of transfers, and other conditions will be set. Note that these points will be described later with reference to FIG. 13.
一般に、DMA転送モードには、DMA転送の単位動作(R動作/W動作)の途中でバス制御権を開放するなど、DMA動作がメモリバスを占有しないサイクルスチール転送モードと、複数のR動作やW動作を連続させるなど、指定された転送回数が完了するまでバス制御権を解放しないバースト転送(パイプライン転送)モードと、他のデバイスから受けるDMA転送要求(デマンド)がアクティブの間はDMA動作を継続するデマンド転送モードなどが考えられる。しかし、本実施例のDMAC回路60は、DMA転送時のリードアクセス起動(R動作)とライトアクセス起動(W動作)の間に、少なくとも1サイクルのメモリ開放期間を設けたサイクルスチール転送モードで機能することで、演出制御CPU63の動作に支障が出ないようにしている。 Generally, the DMA transfer mode includes a cycle steal transfer mode in which the DMA operation does not occupy the memory bus, such as releasing the bus control right during a unit operation (R operation/W operation) of the DMA transfer, and a plurality of R operations and DMA operation during burst transfer (pipeline transfer) mode in which the bus control right is not released until the specified number of transfers is completed, such as continuous W operation, and while a DMA transfer request (demand) received from another device is active. A demand transfer mode or the like for continuing the operation can be considered. However, the DMAC circuit 60 of this embodiment functions in the cycle steal transfer mode in which a memory release period of at least one cycle is provided between the read access activation (R operation) and the write access activation (W operation) at the time of DMA transfer. By doing so, the operation of the effect control CPU 63 is prevented from being hindered.
図6は、サイクルスチール転送動作(a)と、パイプライン転送(b)とを説明する図面である。図6(a)に示す通り、サイクルスチール転送モードで機能するDMAC回路60は、1データ転送のリードアクセス起動(R)とライトアクセス起動(W)の間に、少なくとも1サイクル空けて動作しており、この空いたサイクルでは、演出制御CPU63のバス使用が可能となる。図6(a)(b)の対比関係から明らかなように、パイプライン転送では、一サイクル(一オペランド転送)が終わるまでは、バスがCPUに開放されないのに対して、サイクルスチール転送モードでは、リードアクセス毎に、バスがCPUに開放されるので、CPUの動作が大きく遅れることがない。 FIG. 6 is a diagram for explaining the cycle steal transfer operation (a) and the pipeline transfer (b). As shown in FIG. 6A, the DMAC circuit 60 functioning in the cycle steal transfer mode operates at least one cycle between the read access activation (R) and the write access activation (W) of one data transfer. In this idle cycle, the production control CPU 63 can use the bus. As is clear from the comparison between FIGS. 6A and 6B, in the pipeline transfer, the bus is not released to the CPU until one cycle (one operand transfer) is completed, whereas in the cycle steal transfer mode. Since the bus is opened to the CPU for each read access, the operation of the CPU is not significantly delayed.
そして、例えば、ディスプレイリストDLのVDP回路52への発行時に、DMAC回路60を使用する実施態様では、一サイクルのデータ転送単位(1オペランド)を、32×2bitに設定し、ディスプレイリストDLが格納されている内蔵RAM59のソースアドレスを適宜に増加しつつ(1オペランド転送毎に+8)、固定アドレスで特定されるデータ転送回路72の転送ポートレジスタTR_PORT (図8参照)に対して、DMA転送動作を実行している。 Then, for example, in the embodiment using the DMAC circuit 60 when the display list DL is issued to the VDP circuit 52, the data transfer unit (1 operand) of one cycle is set to 32×2 bits and the display list DL is stored. While appropriately increasing the source address of the built-in RAM 59 (+8 for each operand transfer), the DMA transfer operation is performed on the transfer port register TR_PORT (see FIG. 8) of the data transfer circuit 72 specified by the fixed address. Is running.
後述するように、実施例では、ディスプレイリストDLに、必要個数のNOP (no operation)コマンドを付加することで、全体のデータサイズを、固定値(例えば、4×64=256バイト、又はその整数倍)に調整しており、32bit×2回の一オペランド転送を32回(又はその整数倍)繰り返すことで、ディスプレイリストDLの発行を完了させている。なお、描画回路76がNOP コマンドを実行しても、事実上、何の変化も生じない。 As will be described later, in the embodiment, by adding a necessary number of NOP (no operation) commands to the display list DL, the entire data size is fixed (for example, 4×64=256 bytes, or an integer thereof). By adjusting one operand transfer 32 times×2 times 32 times (or an integral multiple thereof), the issue of the display list DL is completed. Even when the drawing circuit 76 executes the NOP command, virtually no change occurs.
次に、VDP回路52について説明すると、VDP回路52には、画像演出を構成する静止画や動画の構成要素となる圧縮データを記憶するCGROM55と、4Gbit程度の記憶容量を有する外付けDRAM(Dynamic Random Access Memory)54と、メイン表示装置DS1と、サブ表示装置DS2とが接続されている。なお、DRAM54は、好適にはDDR(Double-Data-Rate SDRAM)で構成される。 Next, the VDP circuit 52 will be described. The VDP circuit 52 includes a CGROM 55 that stores compressed data that is a constituent element of a still image or a moving image that forms an image effect, and an external DRAM (Dynamic) having a storage capacity of about 4 Gbit. The Random Access Memory) 54, the main display device DS1 and the sub display device DS2 are connected. The DRAM 54 is preferably composed of DDR (Double-Data-Rate SDRAM).
特に限定するものではないが、この実施例では、CGROM55は、62Gbit程度の記憶容量のNAND型フラッシュメモリで構成されたフラッシュSSD(solid state drive )で構成されており、シリアル伝送によって必要な圧縮データを取得するよう構成されている。そのため、パラレル伝送において不可避的に生じるスキュー(ビットデータ毎の伝送速度の差)の問題が解消され、極限的な高速伝送動作が可能となる。特に限定されないが、本実施例では、SerialATAに準拠したHSS(High Speed Serial )方式で、CGROM55を高速アクセスしている。 Although not particularly limited, in this embodiment, the CGROM 55 is composed of a flash SSD (solid state drive) composed of a NAND flash memory having a storage capacity of about 62 Gbit, and compressed data required for serial transmission. Is configured to get. Therefore, the problem of skew (difference in transmission rate for each bit data) that is inevitably generated in parallel transmission is solved, and extremely high-speed transmission operation becomes possible. Although not particularly limited, in this embodiment, the CGROM 55 is accessed at a high speed by the HSS (High Speed Serial) method based on Serial ATA.
なお、SerialATAに準拠したHSS方式を採るか否かに拘らず、NAND型のフラッシュメモリは、ハードディスクより機械的に安定であり、且つ高速アクセスが可能である一方で、シーケンシャルアクセスメモリであるため、DRAMやSRAM(Static Random Access Memory )に比較すると、ランダムアクセス性に問題がある。そこで、本実施例では、一群の圧縮データ(CGデータ)を、描画動作に先行してDRAM54に読み出しておくプリロード動作を実行することで、描画動作時におけるCGデータの円滑なランダムアクセスを実現している。ちなみに、アクセス速度は、内蔵VRAM>外付けDRAM>CGROMの順番に遅くなる。 Regardless of whether or not the HSS method conforming to Serial ATA is adopted, the NAND flash memory is mechanically stabler than the hard disk and can be accessed at high speed, while it is a sequential access memory. Compared to DRAM and SRAM (Static Random Access Memory), there is a problem in random accessibility. Therefore, in the present embodiment, a preload operation of reading a group of compressed data (CG data) into the DRAM 54 prior to the drawing operation is executed to realize smooth random access of the CG data during the drawing operation. ing. By the way, the access speed becomes slower in the order of internal VRAM>external DRAM>CGROM.
VDP回路52は、詳細には、VDP(Video Display Processor )の動作を規定する各種の動作パラメータが演出制御CPU63によって設定可能な制御レジスタ群70と、表示装置DS1,DS2に表示すべき画像データの生成時に使用される48Mバイト程度の内蔵VRAM(video RAM )71と、チップ内部の各部間のデータ送受信及びチップ外部とのデータ送受信を実行するデータ転送回路72と、内蔵VRAM71に関して、SourceやDestination のアドレス情報を特定可能なインデックステーブルIDXTBLと、描画動作に先行してCGROM55をReadアクセスするプリロード動作が実行可能なプリローダ73と、CGROM55から読み出した圧縮データをデコード(復号伸長/展開)するグラフィックスデコーダ(GDEC)75と、デコード(展開)後の静止画データや動画データを適宜に組み合わせて表示装置DS1,DS2の各一フレーム分の画像データを生成する描画回路76と、描画回路76の動作の一部として、適宜な座標変換によって立体画像を生成するジオメトリエンジン77と、描画回路76が生成したフレームバッファFBa,FBbの画像データを読み出して、適宜な画像処理を並列的に実行可能な3系統(A/B/C)の表示回路74A〜74Cと、3系統(A/B/C)の表示回路74の出力を適宜に選択出力する出力選択部79と、出力選択部79が出力する画像データをLVDS信号に変換するLVDS部80と、シリアルデータ送受信可能なSMC部78と、CPUIF回路56とのデータ送受信を中継するCPUIF部81と、CGROM55からのデータ受信を中継するCGバスIF部82と、外付けDRAM54とのデータ送受信を中継するDRAMIF部83と、内蔵VRAM71とのデータ送受信を中継するVRAMIF部84と、を有して構成されている。 More specifically, the VDP circuit 52 includes a control register group 70 in which various operation parameters that define the operation of a VDP (Video Display Processor) can be set by the effect control CPU 63, and image data to be displayed on the display devices DS1 and DS2. A built-in VRAM (video RAM) 71 of about 48 Mbytes used at the time of generation, a data transfer circuit 72 that executes data transmission/reception between each part inside the chip and data transmission/reception with the outside of the chip, and a source and destination of the built-in VRAM 71. An index table IDXTBL capable of specifying address information, a preloader 73 capable of executing a preload operation for Read access to the CGROM 55 prior to a drawing operation, and a graphics decoder for decoding (decoding/expanding/decompressing) the compressed data read from the CGROM 55. (GDEC) 75, a drawing circuit 76 that appropriately combines the decoded (decompressed) still image data and moving image data to generate image data for each frame of the display devices DS1 and DS2, and the operation of the drawing circuit 76. As a part, the geometry engine 77 that generates a stereoscopic image by appropriate coordinate conversion and the image data of the frame buffers FBa and FBb generated by the drawing circuit 76 are read out, and three systems that can perform appropriate image processing in parallel (A/B/C) display circuits 74A to 74C and an output selection unit 79 that appropriately outputs the outputs of the three-system (A/B/C) display circuits 74, and an image output by the output selection unit 79 An LVDS unit 80 that converts data into an LVDS signal, an SMC unit 78 that can transmit/receive serial data, a CPUIF unit 81 that relays data transmission/reception with the CPUIF circuit 56, and a CG bus IF unit 82 that relays data reception from the CGROM 55. And a DRAMIF section 83 for relaying data transmission/reception with the external DRAM 54, and a VRAMIF section 84 for relaying data transmission/reception with the built-in VRAM 71.
図5(b)には、CPUIF部81、CGバスIF部82、DRAMIF部83、及び、VRAMIF部84と、制御レジスタ群70、CGROM55、DRAM54、及び内蔵VRAM71との関係が図示されている。図示の通り、CGROM55から取得したCGデータは、例えば、プリロードデータとして、データ転送回路72及びDRAMIF部83を経由して、外付けDRAM54のプリロード領域に転送される。 FIG. 5B shows the relationship between the CPUIF unit 81, the CG bus IF unit 82, the DRAMIF unit 83, the VRAMIF unit 84, the control register group 70, the CGROM 55, the DRAM 54, and the built-in VRAM 71. As illustrated, the CG data acquired from the CGROM 55 is transferred to the preload area of the external DRAM 54 as preload data, for example, via the data transfer circuit 72 and the DRAMIF unit 83.
但し、上記したプリロード動作は、何ら必須動作ではなく、また、データ転送先も、外付けDRAM54に限定されず、内蔵VRAM71であっても良い。したがって、例えば、プリロード動作を実行しない実施例では、CGデータは、データ転送回路72及びVRAMIF部84を経由して、内蔵VRAM71に転送される(図5(b))。 However, the preload operation described above is not an essential operation, and the data transfer destination is not limited to the external DRAM 54 and may be the built-in VRAM 71. Therefore, for example, in the embodiment in which the preload operation is not executed, the CG data is transferred to the built-in VRAM 71 via the data transfer circuit 72 and the VRAMIF section 84 (FIG. 5B).
ところで、本実施例では、内蔵VRAM71には、CGROM55から読み出した圧縮データの展開領域、表示装置のW×H個の表示ピクセルの各ARGB情報(32bit=8×4)を特定する画像データを格納するフレームバッファ領域、及び、各表示ピクセルの深度情報を記憶するZバッファ領域などが必要となる。なお、ARGB情報において、Aは、8bitのαプレーンデータ、RGBは三原色の8bitデータを意味する。 By the way, in the present embodiment, the built-in VRAM 71 stores the image data for specifying the expansion area of the compressed data read from the CGROM 55 and each ARGB information (32 bit=8×4) of W×H display pixels of the display device. A frame buffer area for storing data and a Z buffer area for storing depth information of each display pixel are required. In the ARGB information, A means 8-bit α plane data and RGB means 8-bit data of three primary colors.
ここで、内蔵VRAM71の上記した各領域は、演出制御CPU63がディスプレイリストDLに記載した各種の指示コマンド(前記したテクスチャやSPRITEなど)に基づいて間接的にアクセスされるが、そのREAD/WRITEアクセスにおいて、一々、内蔵VRAM71のDestination アドレスや、Sourceアドレスを特定するのでは煩雑である。そこで、本実施例では、CPUリセット後の初期処理において、描画動作で必要となる一次元または二次元の論理メモリ空間(以下、インデックス空間という)を確保して、各インデックス空間にインデックス番号を付与することで、インデックス番号に基づくアクセスを可能にしている。 Here, the above-mentioned areas of the built-in VRAM 71 are indirectly accessed by the effect control CPU 63 based on various instruction commands (texture, SPRITE, etc.) described in the display list DL, but READ/WRITE access thereof. It is troublesome to specify the Destination address and the Source address of the built-in VRAM 71 one by one. Therefore, in this embodiment, in the initial processing after the CPU is reset, a one-dimensional or two-dimensional logical memory space (hereinafter referred to as an index space) necessary for the drawing operation is secured and an index number is assigned to each index space. By doing so, access based on the index number is enabled.
具体的には、CPUリセット後、内蔵VRAM71を3種類のメモリ領域に大別すると共に、各メモリ領域に、必要数のインデックス空間を確保している。そして、インデックス空間とインデックス番号とを紐付けて記憶するインデックステーブルIDXTBL(図7(a)参照)を構築することで、その後のインデックス番号に基づく動作を実現している。 Specifically, after the CPU is reset, the built-in VRAM 71 is roughly divided into three types of memory areas, and a required number of index spaces are secured in each memory area. Then, by constructing an index table IDXTBL (see FIG. 7A) that stores the index space and the index number in association with each other, the subsequent operation based on the index number is realized.
このインデックス空間は、(1) 初期処理後に追加することや、逆に、(2) 開放することも必要となる。そこで、これら追加/開放の演出制御CPU63の動作時に、追加/開放の処理が可能なタイミングか否か、また、追加/開放などの処理が実際に完了したか否か、などを判定可能なフラグ領域FGをインデックステーブルIDXTBLに設けている。なお、内蔵VRAM71は、以下に説明する2つのAAC領域(a1,a2) と、ページ領域(b) と、任意領域(c) の三種類のメモリ領域に大別され、この三種類のメモリ領域(a1,a2)(b)(c) に対応して、インデックステーブルIDXTBLが3区分されている(図7(a))。図示の通り、この実施例では、AAC領域(a) として、第一AAC領域(a1)と第二AAC領域(a2)が確保されているが、特に限定されるものではなく、何れか一方だけでも良い。なお、以下の説明では、第一と第二のAAC領域(a1,a2) を総称する場合には、AAC領域(a) と称する場合がある。 It is necessary to (1) add this index space after initial processing, and conversely (2) open it. Therefore, during the operation of the addition/release effect control CPU 63, it is possible to determine whether or not the timing of the addition/release processing is possible, and whether or not the processing of addition/release is actually completed. The area FG is provided in the index table IDXTBL. The built-in VRAM 71 is roughly divided into three types of memory areas, two AAC areas (a1, a2), a page area (b), and an arbitrary area (c), which will be described below. The index table IDXTBL is divided into three sections corresponding to (a1, a2)(b)(c) (FIG. 7(a)). As shown in the figure, in this embodiment, the first AAC area (a1) and the second AAC area (a2) are secured as the AAC area (a), but it is not particularly limited and only one of them is provided. But good. In the following description, the first and second AAC areas (a1, a2) may be collectively referred to as the AAC area (a).
本実施例の場合、内蔵VRAM71は、(a) インデックス空間とそのインデックス番号が内部処理によって自動付与され、且つメモリキャッシュ機能を有するAAC領域と、(b) 例えば4096bit×128ラインの二次元空間を単位空間として、その整数倍の範囲でインデックス空間が確保可能なページ領域と、(c) 先頭アドレス(空間先頭アドレス)STxと水平サイズHxが任意に設定できる任意領域と、に区分可能に構成されている(図7(b)参照)。但し、VDP回路52の内部動作を円滑化するため、任意領域(c) において任意設定されるインデックス空間の空間先頭アドレスSTxは、その下位11bitが0であって、所定ビット(2048bit=256バイト)単位とする必要がある。 In the case of this embodiment, the built-in VRAM 71 has (a) an AAC area having an index space and its index number automatically assigned by internal processing and having a memory cache function, and (b) a two-dimensional space of, for example, 4096 bits×128 lines. As a unit space, it is configured such that it can be divided into a page area in which an index space can be secured in the range of an integral multiple thereof, and (c) a start address (space start address) STx and an arbitrary area in which the horizontal size Hx can be arbitrarily set. (See FIG. 7B). However, in order to facilitate the internal operation of the VDP circuit 52, the lower 11 bits of the space start address STx of the index space arbitrarily set in the arbitrary area (c) are 0, and a predetermined bit (2048 bits=256 bytes). Must be in units.
そして、CPUリセット後、各々に必要なメモリ空間の最大値と、領域先頭アドレス(下位11bit=0)を規定して、AAC領域(a1)と、第二AAC領域(a2)と、ページ領域(b) とが確保され、その残りのメモリ領域が任意領域(c) となる。VDP回路52の内部動作を円滑化するため、AAC領域のメモリ空間の最大値は、2048bit単位で規定され、ページ領域のメモリ空間の最大値は、上記した4096bit×128ラインの単位空間の整数倍とされる。 After the CPU is reset, the maximum value of the memory space required for each and the area start address (lower 11 bits=0) are specified, and the AAC area (a1), the second AAC area (a2), and the page area ( b) and are secured, and the remaining memory area becomes an arbitrary area (c). In order to facilitate the internal operation of the VDP circuit 52, the maximum value of the memory space of the AAC area is defined in units of 2048 bits, and the maximum value of the memory space of the page area is an integral multiple of the above unit space of 4096 bits×128 lines. It is said that.
次に、このように確保された各領域(a1,a2)(b)(c) に必要個数のインデックス空間が設定される。なお、任意領域(c) を使用する場合、VDP回路52の内部動作を円滑化するため、二次元データを扱うインデックス空間の水平サイズHxは、256bitの倍数として、任意に設定可能である一方、その垂直サイズは固定値(例えば、2048ライン)となっている。 Next, a required number of index spaces are set in each of the areas (a1, a2)(b)(c) thus secured. When the arbitrary area (c) is used, in order to facilitate the internal operation of the VDP circuit 52, the horizontal size Hx of the index space that handles two-dimensional data can be arbitrarily set as a multiple of 256 bits, while The vertical size is a fixed value (for example, 2048 lines).
何れにしても、第一と第二のAAC領域(a1,a2) は、VDP回路52によって、インデックス空間とインデックス番号が自動的に付与されるので、例えば、テクスチャ設定系コマンドのSETINDEXコマンドによって、デコード先をAAC領域(a) に指定すれば、CGROM55からCGデータを読み出すTXLOAD(テクスチャロード)コマンドでは、CGROM55のSourceアドレスと、展開(デコード)後の水平・垂直サイズなどを指定するだけで足りることになる。そこで、本実施例では、予告演出時などに一時的に出現するキャラクタなどの静止画(テクスチャ)や、Iストリーム動画については、そのデコード先をAAC領域(a) にしている。 In any case, since the VDP circuit 52 automatically assigns the index space and the index number to the first and second AAC areas (a1, a2), for example, by the SETINDEX command of the texture setting system command, If the decoding destination is specified in the AAC area (a), the TXLOAD (texture load) command that reads CG data from the CGROM 55 need only specify the source address of the CGROM 55 and the horizontal and vertical sizes after expansion (decoding). It will be. Therefore, in the present embodiment, for a still image (texture) such as a character that appears temporarily during a notice presentation, or an I-stream moving image, the decoding destination is the AAC area (a).
このAAC領域(a) は、いずれも、メモリキャッシュ機能が付与されているので、例えば、CGROM55の同一のテクスチャを複数回、AAC領域(a) に読み出すような場合には、二度目以降は、AAC領域(a) にキャッシュされているデコードデータが活用可能となり、余分なREADアクセスとデコード処理が抑制可能となる。もっとも、AAC領域(a) を使い切った場合には、古いデータが自動的に破壊されるので、本実施例では、AAC領域(a) を使用する場合、原則として第一AAC領域(a1)を使用することとし、繰り返し使用する特定のテクスチャだけを第二AAC領域(a2)に取得するようにしている。 Since the memory cache function is added to all the AAC areas (a), for example, when the same texture of the CGROM 55 is read into the AAC areas (a) a plurality of times, after the second time, The decoded data cached in the AAC area (a) can be utilized, and extra READ access and decoding processing can be suppressed. However, when the AAC area (a) is used up, old data is automatically destroyed. Therefore, in this embodiment, when the AAC area (a) is used, the first AAC area (a1) is basically used. Only the specific texture to be used repeatedly is acquired in the second AAC area (a2).
繰り返し使用するテクスチャとして、例えば、所定の予告演出時に繰り返し出現するキャラクタや、背景画面を静止画で構築する場合の背景画などを例示することができる。このような場合、テクスチャ設定系コマンドのSETINDEXコマンドによって、デコード先を第二AAC領域(a2)に設定し、TXLOADコマンドによって、キャラクタや背景画などのテクスチャを第二AAC領域(a2)にデコードした後は、第二AAC領域(a2)を使用しないことで、デコード結果を保護する。 As the texture that is repeatedly used, for example, a character that repeatedly appears in a predetermined notice effect, a background image when the background screen is constructed with a still image, and the like can be illustrated. In such a case, the SETINDEX command of the texture setting commands sets the decoding destination to the second AAC area (a2), and the TXLOAD command decodes the texture such as characters and background images to the second AAC area (a2). After that, the decoding result is protected by not using the second AAC area (a2).
そして、その後、SETINDEXコマンドによって、デコード先を第二AAC領域(a2)に指定した上で、取得済みのテクスチャを再取得する同一のTXLOADコマンドを実行させると、取得済みのテクスチャがキャッシュヒットするので、CGROM55へのReadアクセスと、デコード処理に要する時間を削除することができる。後述するように、このようなキャッシュヒット機能は、プリロード領域に先読みされたプリロードデータでも発揮されるが、プリロード領域でキャッシュヒットするプリロードデータは、デコード前の圧縮データであるのに対して、AAC領域でキャッシュヒットするのはデコード後の展開データである点に意義がある。 Then, after specifying the decoding destination in the second AAC area (a2) with the SET INDEX command and executing the same TXLOAD command to reacquire the acquired texture, the acquired texture will hit the cache. , Read access to the CGROM 55 and the time required for the decoding process can be deleted. As will be described later, such a cache hit function is also exerted on the preload data prefetched in the preload area. However, the preload data cache hit in the preload area is the compressed data before decoding, whereas the AAC It is significant that the cache hit in the area is the expanded data after decoding.
ところで、テクスチャ(texture )とは、一般に、物の表面の質感・手触りなどを指す概念であるが、本明細書では、静止画を構成するスプライト画像データや、動画一フレームを構成する画像データや、三角形や四角形などの描画プリミティブ(primitive )に貼り付ける画像データだけでなく、デコード後の画像データも含む概念として使用している。そして、内蔵VRAM71の内部で、画像データをコピーする(以下、便宜上、移動と称する)場合には、テクスチャ設定系コマンドのSETINDEXコマンドによって、移動元の画像データをテクスチャとして設定した上で、SPRITEコマンドを実行することになる。 By the way, a texture is a concept that generally refers to the texture and texture of the surface of an object, but in this specification, sprite image data that constitutes a still image, image data that constitutes one moving image frame, , And is used as a concept that includes not only image data to be attached to drawing primitives such as triangles and quadrangles but also image data after decoding. Then, when the image data is copied (hereinafter, referred to as a move for convenience) inside the built-in VRAM 71, the image data of the move source is set as a texture by the SETINDEX command of the texture setting command, and then the SPRITE command is set. Will be executed.
なお、SPRITEコマンドの実行により、移動元のSource画像データが、形式上は、図7(c)に示す仮想描画空間に描画されるが、表示装置に実際に描画される仮想描画空間内の描画領域と、フレームバッファとなるインデックス空間との対応関係を、予め環境設定コマンド(SETDAVR ,SETDAVF )や、テクスチャ設定系コマンド(SETINDEX)によって設定しておけば、例えば、SPRITEコマンドによる仮想描画空間への描画により、所定のインデックス空間(フレームバッファ)には、移動元のSource画像データが描画されることになる(図7(c)参照)。 By the execution of the SPRITE command, the source image data of the movement source is formally drawn in the virtual drawing space shown in FIG. 7C, but is actually drawn on the display device in the virtual drawing space. If the correspondence between the area and the index space that will be the frame buffer is set in advance by environment setting commands (SETDAVR, SETDAVF) or texture setting commands (SETINDEX), for example, the virtual drawing space by the SPRITE command By the drawing, the source image data of the movement source is drawn in a predetermined index space (frame buffer) (see FIG. 7C).
何れにしても、本実施例では、内蔵VRAM71が、AAC領域(a1,a2) とページ領域(b) と任意領域(c) に大別され、各々に、適当数のインデックス空間を確保することができ、各インデックス空間は、各領域(a)(b)(c) ごとに独立のインデックス番号によって特定される。インデックス番号は、例えば、1バイト長であり、(内部回路によって自動付与されるAAC領域(a) を除いた)ページ領域(b) と任意領域(c) については、0〜255の範囲で演出制御CPU63が、インデックス番号を自由に付与することができる。 In any case, in this embodiment, the built-in VRAM 71 is roughly divided into an AAC area (a1, a2), a page area (b) and an arbitrary area (c), and an appropriate number of index spaces are secured in each. Each index space is specified by an independent index number for each area (a)(b)(c). The index number is, for example, 1 byte long, and the page area (b) and the optional area (c) (excluding the AAC area (a) automatically assigned by the internal circuit) are rendered in the range of 0 to 255. The control CPU 63 can freely assign an index number.
そこで、本実施例では、図7(a)に示す通り、表示装置DS1用として、任意領域(c) に、一対のフレームバッファFBaを確保して、ダブルバッファ構造の双方に、インデックス番号255,254を付与している。すなわち、メイン表示装置DS1用のフレームバッファFBaとして、トグル的に切り換えて使用されるインデックス空間255と、インデックス空間254を確保している。特に限定されないが、このインデックス空間255,254は、表示装置DS1の横方向ピクセル数に対応して、水平サイズ1280としている。なお、各ピクセルは、ARGB情報32bitで特定されるので、水平サイズ1280は、32×1280=40960bit(256bitの倍数)を意味する。 Therefore, in the present embodiment, as shown in FIG. 7A, a pair of frame buffers FBa are secured in the arbitrary area (c) for the display device DS1, and the index numbers 255 and 255 are assigned to both of the double buffer structures. 254 is given. That is, as the frame buffer FBa for the main display device DS1, the index space 255 and the index space 254 that are used by switching in a toggle manner are secured. Although not particularly limited, the index spaces 255 and 254 have a horizontal size of 1280 corresponding to the number of horizontal pixels of the display device DS1. Since each pixel is specified by 32 bits of ARGB information, the horizontal size 1280 means 32×1280=40960 bits (a multiple of 256 bits).
また、表示装置DS2用として、任意領域(c) に、別の一対のフレームバッファFBbを確保して、ダブルバッファ構造の双方にインデックス番号252,251を付与している。すなわち、サブ表示装置DS2用のフレームバッファFBbとして、インデックス空間252と、インデックス空間251を確保している。このインデックス空間252,251は、表示装置DS2の横方向ピクセル数に対応して、水平サイズ480としている。この場合も、各ピクセルは、ARGB情報32bitで特定されるので、水平サイズ480は、32×480=15360bit(256bitの倍数)を意味する。 Further, for the display device DS2, another pair of frame buffers FBb is secured in the arbitrary area (c), and index numbers 252 and 251 are given to both of the double buffer structures. That is, the index space 252 and the index space 251 are secured as the frame buffer FBb for the sub display device DS2. The index spaces 252 and 251 have a horizontal size of 480 corresponding to the number of pixels in the horizontal direction of the display device DS2. Also in this case, since each pixel is specified by the ARGB information 32 bits, the horizontal size 480 means 32×480=15360 bits (a multiple of 256 bits).
なお、フレームバッファFBa,FBbを任意領域(c) に確保するのは、任意領域(c) には、32バイト(=256bit=8ピクセル分)の倍数として、任意の水平サイズに設定することができ、上記のように、表示装置DS1,DS2の水平ピクセル数に一致させれば、確保領域に無駄が生じないからである。一方、ページ領域(b) には、128ピクセル×128ラインの単位空間の整数倍の水平/垂直サイズしか設定できない。 The frame buffers FBa and FBb are secured in the arbitrary area (c) by setting an arbitrary horizontal size in the arbitrary area (c) as a multiple of 32 bytes (=256 bits=8 pixels). This is because, as described above, if the number of horizontal pixels of the display devices DS1 and DS2 is matched, no waste occurs in the reserved area. On the other hand, in the page area (b), only the horizontal/vertical size that is an integral multiple of the unit space of 128 pixels×128 lines can be set.
但し、任意領域(c)に確保される二次元のインデックス空間は、その垂直サイズが固定値(例えば、2048ライン)となっている。そのため、フレームバッファFBaにおいて、水平サイズ1280×垂直サイズ1024の領域だけが、メイン表示装置DS1にとって有効データ領域となる。この点は、サブ表示装置DS2についても同様であり、フレームバッファFBbにおいて、水平サイズ480×垂着サイズ800の領域だけが、サブ表示装置DS2にとって有効データ領域となる(図7(c),図10(d)参照)。 However, the vertical size of the two-dimensional index space secured in the arbitrary area (c) has a fixed value (for example, 2048 lines). Therefore, in the frame buffer FBa, only the area of horizontal size 1280×vertical size 1024 becomes the effective data area for the main display device DS1. This also applies to the sub display device DS2, and in the frame buffer FBb, only the area of horizontal size 480×drop size 800 becomes the effective data area for the sub display device DS2 (FIG. 7(c), FIG. 10(d)).
上記の点は更に後述するが、何れにしても、フレームバッファFBa,FBbは、描画回路76にとっての描画領域として、各ダブルバッファ(255/254 ,252/251 )が交互に使用され、また、表示回路74A,74Bにとっての表示領域として、各ダブルバッファ(255/254 ,252/251 )が交互に使用される。なお、本実施例では、表示ピクセルの深度情報を記憶するZバッファを使用しないので欠番(253)が生じるが、Zバッファを使用する場合には、任意領域(c) におけるインデックス番号253,250のインデックス空間253,250が、表示装置DS1と表示装置DS2のためのZバッファとなる。 In any case, in the frame buffers FBa and FBb, the double buffers (255/254, 252/251) are alternately used as the drawing area for the drawing circuit 76, and the above point will be described later. The double buffers (255/254, 252/251) are alternately used as display areas for the display circuits 74A and 74B. In this embodiment, since the Z buffer that stores the depth information of the display pixel is not used, a missing number (253) occurs. However, when using the Z buffer, the index numbers 253 and 250 of the arbitrary area (c) are used. The index spaces 253 and 250 serve as Z buffers for the display device DS1 and the display device DS2.
また、本実施例では、フレームバッファFBa,FBbが確保された任意領域(c) に、追加のインデックス空間(メモリ領域)を確保する場合には、0から始まるインデック番号を付与するようにしている。何ら限定されないが、本実施例では、キャラクタやその他の静止画で構成された演出画像を、必要に応じて、適宜な回転姿勢で表示画面の一部に出現させる予告演出用の作業領域として、任意領域(c) に、インデックス空間(0)を確保している。 Further, in this embodiment, when an additional index space (memory area) is secured in the arbitrary area (c) where the frame buffers FBa and FBb are secured, an index number starting from 0 is given. .. Although not limited in any way, in the present embodiment, the effect image composed of the character and other still images, as a work area for the notice effect to appear in a part of the display screen in an appropriate rotation posture, if necessary, An index space (0) is secured in the arbitrary area (c).
但し、作業領域の使用は必須ではなく、また、任意領域(c) に代えて、ページ領域(b) に作業領域としてのインデックス空間を確保しても良い。ページ領域(b) を使用すれば、水平サイズ128(=4096bit)×垂直サイズ128の正方形状の単位空間の倍数寸法のインデックス空間を確保できるので、小型の演出画像を扱うには好適である。 However, use of the work area is not essential, and an index space as a work area may be secured in the page area (b) instead of the arbitrary area (c). If the page area (b) is used, an index space having a multiple size of a square unit space of horizontal size 128 (=4096 bits)×vertical size 128 can be secured, which is suitable for handling a small effect image.
ところで、本実施例では、背景画も含め動画で構成されており、画像演出は、ほぼ動画のみで実現されている。特に、変動演出時には、多数(通常10個以上)の動画が同時に描画されている。これらの動画は、何れも、一連の動画フレームとして、圧縮状態でCGROM55に格納されているが、Iフレームのみで構成されたIストリーム動画と、IフレームとPフレームとで構成されたIPストリーム動画とに区分される。ここで、Iフレーム(Intra coded frame )とは、他画面とは独立して、入力画像をそのまま圧縮するフレームを意味する。一方、Pフレーム(Predictive coded frame)とは、前方向予測符号化を行うフレームを意味し、時間的に過去に位置するIフレームまたはPフレームが必要となる。 By the way, in the present embodiment, a moving image including a background image is formed, and the image effect is realized by almost only the moving image. In particular, a large number (usually 10 or more) of moving images are drawn at the same time during the variation effect. All of these moving pictures are stored in the CGROM 55 in a compressed state as a series of moving picture frames, but an I stream moving picture composed of only I frames and an IP stream moving picture composed of I frames and P frames. It is divided into and. Here, the I frame (Intra coded frame) means a frame that compresses the input image as it is, independently of other screens. On the other hand, a P frame (Predictive coded frame) means a frame in which forward predictive coding is performed, and an I frame or a P frame that is temporally located in the past is required.
そこで、本実施例では、IPストリーム動画については、旧データの破壊が懸念されるAAC領域(a) ではなく、ページ領域(b) に展開している。すなわち、水平サイズ128×垂直サイズ128の倍数寸法のインデックス空間を確保可能なページ領域(b) に、多数のインデックス空間(IDX0〜IDXN)を確保して、一連の動画フレームは、各動画MViに対応する、常に同一のインデックス空間IDXiを使用してデコードするようにしている。すなわち、動画MV1はインデックス空間IDX1に展開され、動画MV2はインデックス空間IDX2に展開され、以下同様に、動画MViはインデックス空間IDXiに展開されるよう構成されている。 Therefore, in the present embodiment, the IP stream moving image is expanded in the page area (b) instead of the AAC area (a) where the destruction of the old data may occur. That is, a large number of index spaces (IDX 0 to IDX N ) are secured in the page area (b) capable of securing an index space having a multiple of horizontal size 128×vertical size 128, and a series of moving image frames is used for each moving image frame. The same index space IDXi corresponding to MVi is always used for decoding. That is, the moving image MV1 is expanded in the index space IDX1, the moving image MV2 is expanded in the index space IDX2, and so on. Similarly, the moving image MVi is expanded in the index space IDXi.
動画MViについて、更に具体的に説明すると、SETINDEXコマンドによって、「IPストリーム動画MViのデコード先は、ページ領域(b) におけるインデックス番号iのインデックス空間(i)である」と予め指定した上で、IPストリーム動画MViの動画一フレームを取得するTXLOADコマンドを実行させている。 More specifically, the moving image MVi will be described in more detail by using the SET INDEX command to specify that "the decoding destination of the IP stream moving image MVi is the index space (i) of the index number i in the page area (b)". The TXLOAD command that acquires one frame of the IP stream moving image MVi is executed.
すると、TXLOADコマンドが特定するCGROM55上の動画一フレーム(一連の動画フレームの何れか)が、先ず、AAC領域(a) に取得され、その後、自動的に起動するGDEC(グラフィックスデコーダ)75によって、ページ領域(b) のインデックス空間(i)に、取得した動画一フレームがデコードされて展開されることになる。 Then, one moving picture frame (one of a series of moving picture frames) on the CGROM 55 specified by the TXLOAD command is first acquired in the AAC area (a), and then automatically activated by the GDEC (graphics decoder) 75. , One frame of the acquired moving image is decoded and expanded in the index space (i) of the page area (b).
一方、本実施例では、Iストリーム動画については、静止画と同一扱いとしており、SETINDEXコマンドによって、「Iストリーム動画MVjのデコード先は、第一AAC領域(a1)である」と指定して、TXLOADコマンドを実行させる。その結果、動画フレームは第一AAC領域(a1) に取得され、その後、自動的に起動するGDEC75が、第一ACC領域(a1)にデコードデータを展開している。先に説明した通り、AAC領域(a) のインデックス空間は、自動的に生成されるので、インデックス番号を指定する必要はない。なお、インデックス空間に必要となる展開ボリューム、つまり、デコードされたテクスチャ(動画フレーム)の水平サイズと垂直サイズは、展開先がAAC領域(a) か、ページ領域(b) かに拘らず、TXLOADコマンドによって特定される。 On the other hand, in the present embodiment, the I stream moving image is treated the same as the still image, and it is designated by the SET INDEX command that "the decoding destination of the I stream moving image MVj is the first AAC area (a1)". Execute the TXLOAD command. As a result, the moving image frame is acquired in the first AAC area (a1), and thereafter, the automatically activated GDEC 75 expands the decoded data in the first ACC area (a1). As described above, since the index space of the AAC area (a) is automatically generated, it is not necessary to specify the index number. Note that the expansion volume required for the index space, that is, the horizontal and vertical sizes of the decoded texture (video frame) is TXLOAD regardless of whether the expansion destination is the AAC area (a) or the page area (b). Specified by command.
ところで、IPストリーム動画MViやIストリーム動画MVjは、一般にN枚の動画フレーム(IフレームやPフレーム)で構成されている。そのため、TXLOADコマンドでは、例えば、k枚目(1≦k≦N)の動画フレームが記憶されているCGROM55のSourceアドレスと、展開後の水平・垂直サイズなどを指定することになる。何ら限定されないが、静止画を殆ど使用しない実施例では、内蔵VRAM71のメモリ空間48Mバイトの大部分(30Mバイト程度)をページ領域(b) に割り当てている。そして、静止画を殆ど使用しない実施例では、AAC領域として、第一AAC領域(a1)だけを確保し、第二AAC領域(a2)を確保せず、また、前記したAAC領域のキャッシュヒット機能も活用しない。 By the way, the IP stream moving image MVi and the I stream moving image MVj are generally composed of N moving image frames (I frames and P frames). Therefore, in the TXLOAD command, for example, the Source address of the CGROM 55 in which the k-th (1≦k≦N) moving image frame is stored, the expanded horizontal/vertical size, and the like are specified. Although not limited in any way, in the embodiment that hardly uses a still image, most of the 48 Mbytes of memory space of the built-in VRAM 71 (about 30 Mbytes) is allocated to the page area (b). In the embodiment that hardly uses still images, only the first AAC area (a1) is secured as the AAC area, the second AAC area (a2) is not secured, and the cache hit function of the AAC area described above is used. Also do not utilize.
なお、圧縮動画データのデコード処理を高速化するため、専用のGDEC(グラフィックスデコーダ)回路を設けることも考えられる。そして、専用のGDEC回路をVDP回路52に内蔵させれば、N枚の圧縮動画フレームで構成された圧縮動画データのデコード処理において、動画圧縮データの先頭アドレスをGDEC回路に指示すれば足りるので、N枚の圧縮動画フレームについて、1枚ごとに先頭アドレスを指定する必要がなくなる。 Note that a dedicated GDEC (graphics decoder) circuit may be provided in order to speed up the decoding process of the compressed moving image data. If a dedicated GDEC circuit is built in the VDP circuit 52, it is sufficient to indicate the start address of the compressed video data to the GDEC circuit in the decoding process of the compressed video data composed of N compressed video frames. It is not necessary to specify the start address for each of N compressed moving image frames.
しかし、このような専用のGDEC回路を、圧縮アルゴリズム毎に複数個内蔵させるのでは、VDP回路52の内部構成が更に複雑化する。そこで、本実施例では、ソフトウェアGDECとし、IPストリーム動画、Iストリーム動画、静止画、その他α値などのデータについて、各圧縮アルゴリズムに対応するソフトウェア処理によってデコード処理を実現している。なお、ハードウェア処理とソフトウェア処理の処理時間差は、あまり問題にならず、処理時間が問題になるのは、もっぱら、CGROM55からのアクセス(READ)タイムである。 However, incorporating a plurality of such dedicated GDEC circuits for each compression algorithm further complicates the internal configuration of the VDP circuit 52. In view of this, in this embodiment, software GDEC is used to implement decoding processing for data such as IP stream moving images, I stream moving images, still images, and other α values by software processing corresponding to each compression algorithm. Note that the processing time difference between the hardware processing and the software processing does not matter so much, and the processing time only concerns the access (READ) time from the CGROM 55.
続いて、図5(a)に戻って説明を続けると、データ転送回路72は、VDP回路内部のリソース(記憶媒体)と外部記憶媒体を、転送元ポート又は転送先ポートとして、これらの間でDMA(Direct Memory Access)的にデータ転送動作を実行する回路である。図8は、このデータ転送回路72の内部構成を、関連する回路構成と共に記載したブロック図である。 Subsequently, returning to FIG. 5A and continuing the description, the data transfer circuit 72 uses the resource (storage medium) inside the VDP circuit and the external storage medium as a transfer source port or a transfer destination port and connects them. It is a circuit that executes a data transfer operation by DMA (Direct Memory Access). FIG. 8 is a block diagram showing the internal structure of the data transfer circuit 72 together with the related circuit structure.
図8に示す通り、データ転送回路72は、ルータ機能を有する統合接続バスICMを経由して、CGROM55、DRAM54、及び、内蔵RAM71とデータを送受信するよう構成されている。なお、CGROM55とDRAM54は、CGバスIF部82や、DMAMIF部83を経由してアクセスされる。 As shown in FIG. 8, the data transfer circuit 72 is configured to send and receive data to and from the CGROM 55, the DRAM 54, and the built-in RAM 71 via the integrated connection bus ICM having a router function. The CGROM 55 and the DRAM 54 are accessed via the CG bus IF section 82 and the DMAMIF section 83.
一方、内蔵CPU回路51は、データ転送回路72に内蔵された転送ポートレジスタTR_PORT を経由して、描画回路76やプリローダ73にディスプレイリストDLを発行している。なお、内蔵CPU回路51とデータ転送回路72は、双方向に接続されているが、ディスプレイリストDLの発行時には、転送ポートレジスタTR_PORT は、ディスプレイリストDLを構成する一単位のデータを受け入れるデータ書き込みポートとして機能する。なお、転送ポートレジスタTR_PORT の書込み単位(一単位データ長)は、CPUバス制御部72dのFIFO構造に対応して32bitとなる。 On the other hand, the built-in CPU circuit 51 issues the display list DL to the drawing circuit 76 and the preloader 73 via the transfer port register TR_PORT built in the data transfer circuit 72. Although the built-in CPU circuit 51 and the data transfer circuit 72 are bidirectionally connected, when the display list DL is issued, the transfer port register TR_PORT is a data write port that receives one unit of data that constitutes the display list DL. Function as. The write unit (one unit data length) of the transfer port register TR_PORT is 32 bits corresponding to the FIFO structure of the CPU bus controller 72d.
図示の通り、演出制御CPU63は、CPUIF部81を経由して、転送ポートレジスタTR_PORT をWrite アクセスできる一方、DMAC回路60を活用する場合には、DMAC回路60が、転送ポートレジスタTR_PORT を直接的にWrite アクセスすることになる。そして、転送ポートレジスタTR_PORT に書込まれた一連の指示コマンド(つまり、ディスプレイリストDLを構成する指示コマンド列)は、32bit単位で、FIFO構造(32bit×130段)のFIFOバッファを内蔵したCPUバス制御部72dに、自動蓄積されるよう構成されている。 As shown in the figure, the effect control CPU 63 can write-access the transfer port register TR_PORT via the CPUIF section 81, while the DMAC circuit 60 directly uses the transfer port register TR_PORT when utilizing the DMAC circuit 60. You will have Write access. Then, a series of instruction commands written in the transfer port register TR_PORT (that is, an instruction command string forming the display list DL) is in units of 32 bits, and a CPU bus incorporating a FIFO buffer (32 bits×130 stages) of FIFO buffers. It is configured to be automatically accumulated in the control unit 72d.
また、このデータ転送回路72は、3チャンネルChA〜ChCの伝送経路で、データの送受信動作を実行しており、FIFO構造(64bit×N段)のFIFOバッファを有するChA制御回路72a(N=130段)と、ChB制御回路72b(N=1026段)と、ChC制御回路72c(N=130段)と、を有している。 Further, the data transfer circuit 72 executes data transmission/reception operations on the transmission paths of the three channels ChA to ChC, and has a ChA control circuit 72a (N=130) having a FIFO buffer having a FIFO structure (64 bits×N stages). Stage), a ChB control circuit 72b (N=1026 stages), and a ChC control circuit 72c (N=130 stages).
そして、CPUバス制御部72dに蓄積された指示コマンド列(ディスプレイリストDL)は、演出制御CPU63によるデータ転送レジスタRGij(各種制御レジスタ70の一種)への設定値に基づき、描画回路76か、又はプリローダ73に転送される。矢印で示す通り、ディスプレイリストDLは、CPUバス制御部72dから、ChB制御回路72bのFIFOバッファを経由して描画回路76に転送され、ChC制御回路72cのFIFOバッファを経由してプリローダ73に転送されるよう構成されている。 The instruction command string (display list DL) accumulated in the CPU bus control unit 72d is either the drawing circuit 76 or the drawing circuit 76 based on the setting value in the data transfer register RGij (a kind of various control registers 70) by the effect control CPU 63. It is transferred to the preloader 73. As indicated by the arrow, the display list DL is transferred from the CPU bus control unit 72d to the drawing circuit 76 via the FIFO buffer of the ChB control circuit 72b and to the preloader 73 via the FIFO buffer of the ChC control circuit 72c. Is configured.
なお、本実施例では、ChB制御回路72bと、ChC制御回路72bは、ディスプレイリストDLの転送動作に特化されており、CPUバス制御部72dのFIFOバッファに蓄積されたデータは、ChB制御回路72bか、ChC制御回路72cのFIFOバッファを経由して、各々、ディスプレイリストDLの一部として、描画回路76かプリローダ73のディスプレイリストアナライザ(Display List Analyzer )に転送される。 In this embodiment, the ChB control circuit 72b and the ChC control circuit 72b are specialized for the transfer operation of the display list DL, and the data stored in the FIFO buffer of the CPU bus control unit 72d is the ChB control circuit. The data is transferred to the drawing circuit 76 or the display list analyzer of the preloader 73 as a part of the display list DL via 72b or the FIFO buffer of the ChC control circuit 72c.
そして、描画回路76は、転送されたディスプレイリストDLに基づいた描画動作を開始する。一方、プリローダ73は、転送されたディスプレイリストDLに基づき、必要なプリロード動作を実行する。プリロード動作によってCGROM55のCGデータが、DRAM54に確保されたプリロード領域に先読みされ、TXLOADコマンドなどに関して、テクスチャのSourceアドレスを変更したディスプレイリストDL(以下、書換えリストDL’という)が、DRAM54に確保されたDLバッファ領域BUF’に保存される。 Then, the drawing circuit 76 starts the drawing operation based on the transferred display list DL. On the other hand, the preloader 73 executes a necessary preload operation based on the transferred display list DL. By the preload operation, the CG data of the CGROM 55 is prefetched in the preload area secured in the DRAM 54, and the display list DL (hereinafter referred to as the rewrite list DL') in which the source address of the texture is changed is secured in the DRAM 54 with respect to the TXLOAD command and the like. Stored in the DL buffer area BUF'.
一方、CGROM55、DRAM54、及び、内蔵RAM71などの記憶媒体の間のデータ転送には、ChA制御回路72aと、接続バスアクセス調停回路72eとが機能する。また、インデックステーブルIDXTBLのアドレス情報が必要になる内蔵RAM71のアクセス時には、IDXTBLアクセス調停回路72fが機能する。具体的に確認すると、ChA制御回路72aは、例えば、(a)CGROM55の圧縮データを内蔵VRAM71に転送する場合や、(b)CGROM55の圧縮データをプリロード(先読み)して外付けDRAM54に転送する場合や、(c)プリロード領域の先読みデータを、内蔵VRAM71に転送する場合に機能する。 On the other hand, the ChA control circuit 72a and the connection bus access arbitration circuit 72e function for data transfer between storage media such as the CGROM 55, the DRAM 54, and the built-in RAM 71. Further, the IDXTBL access arbitration circuit 72f functions when accessing the built-in RAM 71 which requires the address information of the index table IDXTBL. When specifically confirmed, the ChA control circuit 72a transfers, for example, (a) the compressed data of the CGROM 55 to the built-in VRAM 71, or (b) preloads the compressed data of the CGROM 55 to the external DRAM 54. In this case, (c) the prefetch data in the preload area is transferred to the built-in VRAM 71.
ここで、ChA制御回路72aは、ChB制御回路72bやChC制御回路72cと並行して動作可能に構成されており、上記した(a)〜(c)の動作は、ディスプレイリストDLの発行動作(図10のST8,図15のPT11)や、書換えリストDL’の転送動作(図15のPT10)と並行して実行可能となる。また、ChB制御回路72bとChC制御回路72cも、同時実行可能であり、例えば、ChB制御回路72bが機能する図15のステップPT10の処理と、ChC制御回路72cが機能するステップPT11の処理は並行して実行可能である。但し、転送ポートレジスタTR_PORT は単一であるので、何れか一方(72b/72c)が転送ポートレジスタTR_PORT を使用しているタイミングでは、他方(72c/72b)は、転送ポートレジスタTR_PORT をアクセスすることはできない。 Here, the ChA control circuit 72a is configured to be operable in parallel with the ChB control circuit 72b and the ChC control circuit 72c, and the operations (a) to (c) described above are the operation of issuing the display list DL ( This can be executed in parallel with ST8 of FIG. 10, PT11 of FIG. 15) and the transfer operation of the rewrite list DL′ (PT10 of FIG. 15). Further, the ChB control circuit 72b and the ChC control circuit 72c can be simultaneously executed. For example, the process of step PT10 in FIG. 15 in which the ChB control circuit 72b functions and the process of step PT11 in which the ChC control circuit 72c functions are parallel. Then it is feasible. However, since the transfer port register TR_PORT is single, at the timing when one (72b/72c) uses the transfer port register TR_PORT, the other (72c/72b) accesses the transfer port register TR_PORT. I can't.
なお、ChA制御回路72aの動作時に、接続バスアクセス調停回路72eは、統合接続バスICMを経由する各記憶素子(CGROM55、DRAM54)とのデータ伝送を調停(Arbitration )している。一方、IDXTBLアクセス調停回路72fは、インデックステーブルIDXTBLに基づいてChA制御回路72aを制御することで、内蔵VRAM71とのデータ交信を調停している。なお、プリローダ73が機能する実施例の場合、DRAM54のDLバッファ領域BUF’に保存された書換えリストDL’は、接続バスアクセス調停回路72eと、ChB制御回路72bを経由して描画回路76に転送されることになる(図16(b)参照)。 When the ChA control circuit 72a operates, the connection bus access arbitration circuit 72e arbitrates data transmission with each storage element (CGROM 55, DRAM 54) via the integrated connection bus ICM. On the other hand, the IDXTBL access arbitration circuit 72f arbitrates data communication with the built-in VRAM 71 by controlling the ChA control circuit 72a based on the index table IDXTBL. In the case where the preloader 73 functions, the rewrite list DL′ stored in the DL buffer area BUF′ of the DRAM 54 is transferred to the drawing circuit 76 via the connection bus access arbitration circuit 72e and the ChB control circuit 72b. (See FIG. 16B).
上記の通り、本実施例のデータ転送回路72は、各種の記憶リソース(Resource)から任意に選択されたデータ転送元と、各種の記憶リソース(Resource)から任意に選択されたデータ転送先との間で、高速のデータ転送を実現している。図8から確認される通り、データ転送回路72が機能する記憶リソースには、内蔵RAM71だけでなく、CPUIF部56、CGバスIF部82、DRAMIF部83を経由する外部デバイスも含まれる。 As described above, the data transfer circuit 72 according to the present exemplary embodiment includes a data transfer source arbitrarily selected from various storage resources (Resource) and a data transfer destination arbitrarily selected from various storage resources (Resource). In between, high-speed data transfer is realized. As confirmed from FIG. 8, the storage resources in which the data transfer circuit 72 functions include not only the built-in RAM 71 but also external devices passing through the CPUIF unit 56, the CG bus IF unit 82, and the DRAMIF unit 83.
そして、CGROM55から1回に取得すべきデータ量(メモリシーケンシャルRead)のように、ChA制御回路72aが機能する外部デバイスとのデータ転送量は、ChB制御回路72bやChC制御回路72cが機能するディスプレイリストDLの場合と比較して膨大であり、互いに、データ転送量が大きく相違する。 Then, like the amount of data to be acquired at one time from the CGROM 55 (memory sequential read), the data transfer amount with the external device in which the ChA control circuit 72a functions is determined by the display in which the ChB control circuit 72b or the ChC control circuit 72c functions. The list DL is huge compared to the case of the list DL, and the amount of data transfer differs greatly from each other.
ここで、これら各種のデータ転送について、単位データ量や総転送データ量を、細かく設定可能に構成することも考えらえるが、これでは、VDP内部の制御動作が煩雑化し、円滑な転送動作が阻害される。そこで、本実施例では、データ転送の最低データ量Dminを一意に規定すると共に、総転送データ量を、最低データ量DTminの整数倍となるよう制限することで、高速で円滑なデータ転送動作を実現している。特に限定されないが、実施例のデータ転送回路72では、最低データ量Dmin(単位データ量)を、256バイトとし、総転送データ量を、この整数倍に制限することにしている。 Here, for each of these various types of data transfer, it is conceivable that the unit data amount and the total transfer data amount can be finely set, but this makes the control operation inside the VDP complicated and smooth the transfer operation. Be hindered. Therefore, in this embodiment, the minimum data amount Dmin for data transfer is uniquely defined, and the total transfer data amount is limited to be an integral multiple of the minimum data amount DTmin, so that a high-speed and smooth data transfer operation is performed. Has been realized. Although not particularly limited, in the data transfer circuit 72 of the embodiment, the minimum data amount Dmin (unit data amount) is set to 256 bytes, and the total transfer data amount is limited to this integral multiple.
したがって、32ビット毎にCPUバス制御部72dのFIFOバッファに蓄積されたディスプレイリストDLの指示コマンド列は、その総量が最低データ量Dminに達したタイミングで、ChB制御回路72bやChC制御回路72bに転送され、各々のFIFOバッファに蓄積されることになる。 Therefore, the instruction command sequence of the display list DL stored in the FIFO buffer of the CPU bus control unit 72d every 32 bits is stored in the ChB control circuit 72b and the ChC control circuit 72b at the timing when the total amount reaches the minimum data amount Dmin. It will be transferred and stored in each FIFO buffer.
ディスプレイリストDLは、一連の指示コマンドで構成されているが、本実施例では、転送ポートレジスタTR_PORT の書込み単位(32bit)に対応して、ディスプレイリストDLは、コマンド長が、32bitの整数N倍(N>0)の指示コマンドのみで構成されている。したがって、データ転送回路72を経由して、ディスプレイリストDLの指示コマンドを受ける描画回路76やプリローダ73は、素早く円滑にコマンド解析処理(DL analyze)を開始することができる。なお、32bitの整数N倍のコマンド長は、その全てが有意ビットとは限らず、無意ビット(Don't care bit)も含んで、32bitの整数N倍という意味である。 Although the display list DL is composed of a series of instruction commands, in the present embodiment, the display list DL corresponds to the write unit (32 bits) of the transfer port register TR_PORT and the command length is an integer N times 32 bits. It is composed only of (N>0) instruction commands. Therefore, the drawing circuit 76 and the preloader 73 that receive the instruction command of the display list DL via the data transfer circuit 72 can quickly and smoothly start the command analysis processing (DL analyze). It should be noted that the command length that is an integral multiple of 32 bits is not limited to all significant bits, and includes a non-significant bit (Don't care bit), meaning that it is an integral multiple of 32 bits.
次に、プリローダ73について説明する。先に概略説明した通り、プリローダ73は、データ転送回路72(ChC制御回路72b)から転送されたディスプレイリストDLを解釈して、TXLOADコマンドが参照しているCGROM55上のCGデータを、予め、DRAM54のプリロード領域に転送する回路である。また、プリローダ73は、このTXLOADコマンドに関し、CGデータの参照先を、転送後のアドレスに書換えた書換えリストDL’を、DRAM54のDLバッファBUF’に記憶する。なお、DLバッファBUF’や、プリロード領域は、CPUリセット後の初期処理時(図10のST3)に、予め確保されている。 Next, the preloader 73 will be described. As outlined above, the preloader 73 interprets the display list DL transferred from the data transfer circuit 72 (ChC control circuit 72b), and stores the CG data on the CGROM 55 referenced by the TXLOAD command in advance in the DRAM 54. This is a circuit for transferring to the preload area of. Further, the preloader 73 stores, in the DL buffer BUF' of the DRAM 54, a rewriting list DL' in which the reference destination of the CG data is rewritten to the address after transfer regarding the TXLOAD command. The DL buffer BUF' and the preload area are secured in advance during the initial processing after the CPU reset (ST3 in FIG. 10).
そして、書換えリストDL’は、描画回路76の描画動作の開始時に、データ転送回路72の接続バスアクセス調停回路72eや、ChB制御回路72bを経由して、描画回路76のディスプレイリストアナライザ(DL Analyzer )に転送される。そして、描画回路76は、書換えリストDL’に基づいて、描画動作を実行する。したがって、TXLOADコマンドなどに基づき、本来は、CGROM55から取得すべきCGデータが、プリロード領域に先読みされているプリロードデータとして、DRAM54のプリロード領域から取得される。この場合、プリロードデータは、上書き消去されない限り、繰り返し使用可能であり、プリロード領域にキャッシュヒットしたプリロードデータは、繰り返し再利用される。 Then, the rewrite list DL′ is displayed at the start of the drawing operation of the drawing circuit 76 via the connection bus access arbitration circuit 72e of the data transfer circuit 72 and the ChB control circuit 72b, and is displayed by the display list analyzer (DL Analyzer) of the drawing circuit 76. ) Is transferred to. Then, the drawing circuit 76 executes the drawing operation based on the rewriting list DL'. Therefore, based on the TXLOAD command or the like, the CG data that should originally be acquired from the CGROM 55 is acquired from the preload area of the DRAM 54 as preload data that is preread in the preload area. In this case, the preload data can be repeatedly used unless it is overwritten and erased, and the preload data having a cache hit in the preload area is repeatedly reused.
本実施例では、十分な記憶容量を有する外付けDRAM54にプリロード領域を設定しているので、上記のキャッシュヒット機能が有効に機能する。また、外付けDRAM54の記憶容量が大きいので、例えば、複数フレーム分のCGデータを一気にプリロードする多重プリロードも可能である。すなわち、プリローダ73の動作期間に関し、CGデータの先読み動作を含んだ一連のプリロード動作の動作期間を、VDP回路52の間欠動作時の動作周期δの整数倍の範囲内で、適宜に設定することで多重プリロードが実現される。 In this embodiment, since the preload area is set in the external DRAM 54 having a sufficient storage capacity, the above-mentioned cache hit function works effectively. Further, since the storage capacity of the external DRAM 54 is large, for example, multiple preload for preloading CG data for a plurality of frames at a stretch is possible. That is, regarding the operation period of the preloader 73, the operation period of a series of preload operations including the prefetch operation of CG data is appropriately set within the range of an integral multiple of the operation cycle δ during the intermittent operation of the VDP circuit 52. Multiple preload is realized by.
但し、以下の説明では、便宜上、多重プリロードのない実施例について説明するので、実施例のプリローダ73は、一動作周期(δ)の間に、一フレーム分のプリロード動作を完了することにする。なお、図10に関し後述するように、本実施例では、VDP回路52の間欠動作時の動作周期δは、表示装置DS1の垂直同期信号の2倍周期である1/30秒である。 However, in the following description, for the sake of convenience, an embodiment without multiple preload will be described. Therefore, the preloader 73 of the embodiment completes the preload operation for one frame during one operation cycle (δ). As will be described later with reference to FIG. 10, in this embodiment, the operation cycle δ during the intermittent operation of the VDP circuit 52 is 1/30 second which is a double cycle of the vertical synchronizing signal of the display device DS1.
次に、描画回路76は、データ転送回路72を経由して転送されたディスプレイリストDLや書換えリストDL’の指示コマンド列を順番に解析して、グラフィックスデコーダ75やジオメトリエンジン77などと協働して、VRAM71に形成されたフレームバッファに、各表示装置DS1,DS2の一フレーム分の画像を描画する回路である。 Next, the drawing circuit 76 sequentially analyzes the instruction command sequences of the display list DL and the rewriting list DL′ transferred via the data transfer circuit 72, and cooperates with the graphics decoder 75, the geometry engine 77, and the like. Then, it is a circuit for drawing an image of one frame of each of the display devices DS1 and DS2 in the frame buffer formed in the VRAM 71.
上記の通り、プリローダ73を機能させる実施例では、書換えリストDL’のCGデータの参照先は、CGROM55ではなく、DRAM54に設定されたプリロード領域である。そのため、描画回路76による描画の実行中に生じるCGデータへのシーケンシャルアクセスを迅速に実行することができ、動きの激しい高解像度の動画についても問題なく描画することができる。すなわち、本実施例によれば、CGROM55として、安価なSATAモジュールを活用しつつ、複雑高度な画像演出を実行することができる。 As described above, in the embodiment in which the preloader 73 functions, the reference destination of the CG data in the rewrite list DL' is not the CGROM 55 but the preload area set in the DRAM 54. Therefore, the sequential access to the CG data generated during the drawing by the drawing circuit 76 can be executed quickly, and a high-resolution moving image with a lot of movement can be drawn without any problem. That is, according to the present embodiment, it is possible to execute a complex and sophisticated image effect while utilizing an inexpensive SATA module as the CGROM 55.
図7に関して説明した通り、VRAM71の任意領域(c) に確保されたフレームバッファFBは、描画領域と読出領域に区分されたダブルバッファであり、2つの領域を、交互に用途を切り替えて使用する。また、本実施例では、2つの表示装置DS1,DS2が接続されているので、図7に示す通り、2区画のフレームバッファFBa/FBbが確保されている。したがって、描画回路76は、表示装置DS1用のフレームバッファFBaの描画領域(書込み領域)に、一フレーム分の画像データを描画すると共に、表示装置DS2用のフレームバッファFBaの描画領域(書込み領域)に、一フレーム分の画像データを描画することになる。なお、描画領域に、画像データが書込まれているとき、表示回路74は、他方の読出領域(表示領域)の画像データを読み出して、各表示装置DS1,DS2に出力する。 As described with reference to FIG. 7, the frame buffer FB secured in the arbitrary area (c) of the VRAM 71 is a double buffer divided into a drawing area and a reading area, and the two areas are used by alternately switching the applications. .. Further, in this embodiment, since the two display devices DS1 and DS2 are connected, as shown in FIG. 7, the two sections of frame buffers FBa/FBb are secured. Therefore, the drawing circuit 76 draws one frame of image data in the drawing area (writing area) of the frame buffer FBa for the display device DS1 and also draws the drawing area (writing area) of the frame buffer FBa for the display device DS2. Then, one frame of image data is drawn. When the image data is written in the drawing area, the display circuit 74 reads the image data in the other reading area (display area) and outputs it to each of the display devices DS1 and DS2.
表示回路74は、フレームバッファFBa,FBbの画像データを読み出して、最終的な画像処理を施した上で出力する回路である(図9)参照)。最終的な画像処理には、例えば、画像を拡大/縮小するスケーリング処理、微妙なカラー補正処理、画像全体の量子化誤差が最小化するディザリング処理が含まれている。そして、これらの画像処理を経たデジタルRGB信号(合計24bit)が、水平同期信号や垂直同期信号と共に出力される。図9に示す通り、本実施例では、上記の動作を並列的に実行する3系統の表示回路A/B/Cが設けられており、各表示回路74A〜74Cは、各々に対応するフレームバッファFBa/FBb/FBcの画像データを読み出して、上記の最終画像処理を実行する。但し、本実施例では、表示装置は2個であるので、フレームバッファFBcは確保されておらず、表示回路74Cが機能することもない。 The display circuit 74 is a circuit that reads out image data from the frame buffers FBa and FBb, performs final image processing, and then outputs the image data (see FIG. 9). The final image processing includes, for example, scaling processing for enlarging/reducing the image, delicate color correction processing, and dithering processing for minimizing the quantization error of the entire image. Then, the digital RGB signals (24 bits in total) that have undergone these image processes are output together with the horizontal synchronizing signal and the vertical synchronizing signal. As shown in FIG. 9, in this embodiment, three systems of display circuits A/B/C that perform the above-described operations in parallel are provided, and each of the display circuits 74A to 74C has a corresponding frame buffer. The image data of FBa/FBb/FBc is read and the final image processing is executed. However, in this embodiment, since there are two display devices, the frame buffer FBc is not secured and the display circuit 74C does not function.
この動作に関連して、この実施例の出力選択部79は、表示回路74Aの出力信号を、LVDS部80aに伝送し、表示回路74Bの出力信号を、LVDS部80bに伝送している(図9)。そして、LVDS部80aは、画像データ(合計24bitのデジタルRGB信号)をLVDS信号に変換して、クロック信号を伝送する一対を加えて、全五対の差動信号としてメイン表示装置DS1に出力している。なお、メイン表示装置DS1には、LVDS信号の変換受信部RVが内蔵されており、LVDS信号からRGB信号を復元して、表示回路74Aの出力に対応する画像を表示している。 In connection with this operation, the output selection unit 79 of this embodiment transmits the output signal of the display circuit 74A to the LVDS unit 80a and the output signal of the display circuit 74B to the LVDS unit 80b (Fig. 9). Then, the LVDS unit 80a converts the image data (24-bit digital RGB signal in total) into an LVDS signal, adds one pair for transmitting a clock signal, and outputs it to the main display device DS1 as all five pairs of differential signals. ing. The main display device DS1 has a built-in conversion receiving unit RV for LVDS signals, which restores RGB signals from LVDS signals and displays an image corresponding to the output of the display circuit 74A.
この点は、LVDS部80bも同様であり、各8bitのデジタルRGB信号の合計24bitについて、クロック信号を伝送する一対を加えて、全五対の差動信号として変換受信部RVに出力し、サブ表示装置DS2が変換受信部RVから受ける合計24bitのRGB信号による画像表示を実現している。そのため、サブ表示装置DS2と、メイン表示装置DS1は、28*28*28の解像度を有することになる。 In this respect, the LVDS unit 80b is also the same, and for a total of 24 bits of each 8-bit digital RGB signal, a pair for transmitting a clock signal is added, and a total of five pairs of differential signals are output to the conversion receiving unit RV, The display device DS2 realizes image display by a total of 24 bits of RGB signals received from the conversion receiving unit RV. Therefore, the sub display device DS2 and the main display device DS1 have a resolution of 2 8 *2 8 *2 8 .
なお、必ずしもLVDS信号とする必要は無く、例えば伝送距離が短い場合には、デジタルRGB信号を、デジタルRGB部80cを経由して、そのまま表示装置に伝送するか、或いは、伝送距離が長い場合には、デジタルRGB信号を、変換送信部TR’において、V−By−one(登録商標)信号に変換して変換受信部RV’に伝送した後、変換受信部RV’においてデジタルRGB信号に戻すのも好適である。なお、図9の破線は、この動作態様を示しているが、出力選択部79の動作を適宜に設定することで、表示回路74A〜74Cの何れの出力信号であっても上記の動作が可能となる。 It is not always necessary to use the LVDS signal. For example, when the transmission distance is short, the digital RGB signal is directly transmitted to the display device via the digital RGB unit 80c, or when the transmission distance is long. Converts the digital RGB signal into a V-By-one (registered trademark) signal in the conversion transmitting unit TR′ and transmits the V-By-one (registered trademark) signal to the conversion receiving unit RV′, and then returns the digital RGB signal in the conversion receiving unit RV′. Is also suitable. It should be noted that the broken line in FIG. 9 shows this operation mode, but the above operation is possible with any output signal of the display circuits 74A to 74C by appropriately setting the operation of the output selection unit 79. Becomes
次に、SMC部78(Serial Management Controller)は、LEDコントローラとMotorコントローラとを内蔵した複合コントコントローラである。そして、外部基板に搭載したLED/Motorドライバ(シフトレジスタを内蔵するドライバIC)に対して、クロック信号に同期してLED駆動信号やモータ駆動信号を出力する一方、適宜なタイミングで、ラッチパルスを出力可能に構成されている。 Next, the SMC unit 78 (Serial Management Controller) is a composite controller incorporating an LED controller and a Motor controller. Then, while the LED drive signal and the motor drive signal are output in synchronization with the clock signal to the LED/Motor driver (driver IC that incorporates the shift register) mounted on the external board, the latch pulse is output at an appropriate timing. It is configured to output.
上記したVDP回路52の内部回路及びその動作に関し、内部回路が実行すべき動作内容は、演出制御CPU63が、制御レジスタ群70に設定する動作パラメータ(設定値)で規定され、VDP回路52の実行状態は、制御レジスタ群70の動作ステイタス値をREADすることで特定できるようになっている。制御レジスタ群70は、演出制御CPU63のメモリマップ上、1Mバイト程度のメモリ空間(0〜FFFFFH)にマッピングされた多数のVDPレジスタRGijを意味し、演出制御CPU63は、CPUIF部81を経由して動作パラメータのWRITE(設定)動作と、動作ステイタス値のREAD動作を実行するようになっている(図5(b)参照)。 Regarding the internal circuit of the VDP circuit 52 and the operation thereof, the operation content to be executed by the internal circuit is defined by the operation parameter (setting value) set in the control register group 70 by the effect control CPU 63, and the operation of the VDP circuit 52 is executed. The state can be specified by reading the operation status value of the control register group 70. The control register group 70 means a large number of VDP registers RGij mapped in the memory space (0 to FFFFFH) of about 1 Mbyte on the memory map of the effect control CPU 63, and the effect control CPU 63 passes through the CPUIF section 81. The operation parameter WRITE (setting) operation and the operation status value READ operation are executed (see FIG. 5B).
制御レジスタ群70(VDPレジスタRGij)には、割り込み動作などシステム動作に関する初期設定値が書込まれる「システム制御レジスタ」と、内蔵VRAMにAAC領域(a) やページ領域(b) を確定する共に、インデックステーブルIDXTBLを構築又は変更などに関する「インデックステーブルレジスタ」と、演出制御CPU63とVDP回路52の内部回路との間のデータ転送回路72によるデータ転送処理に関する設定値などが書込まれる「データ転送レジスタ」と、グラフィックスデコーダ75の実行状況を特定する「GDECレジスタ」と、指示コマンドや描画回路76に関する設定値が書込まれる「描画レジスタ」と、プリローダ73の動作に関する設定値が書込まれる「プリローダレジスタ」と、表示回路74の動作に関する設定値が書込まれる「表示レジスタ」と、LEDコントローラ(SMC部78)に関する設定値が書込まれる「LED制御レジスタ」と、Motorコントローラ(SMC部78)に関する設定値が書込まれる「モータ制御レジスタ」とが含まれている。 In the control register group 70 (VDP register RGij), the "system control register" in which initial setting values related to system operation such as interrupt operation are written, and the AAC area (a) and page area (b) are fixed in the built-in VRAM. , "Index table register" for constructing or changing the index table IDXTBL, and "data transfer" in which setting values and the like regarding data transfer processing by the data transfer circuit 72 between the effect control CPU 63 and the internal circuit of the VDP circuit 52 are written. “Register”, “GDEC register” for specifying the execution status of the graphics decoder 75, “drawing register” in which instruction commands and setting values for the drawing circuit 76 are written, and setting values for operation of the preloader 73 are written. A "preloader register", a "display register" in which setting values related to the operation of the display circuit 74 are written, an "LED control register" in which setting values related to the LED controller (SMC unit 78) are written, and a Motor controller (SMC). And a "motor control register" in which the set values for the section 78) are written.
以下の説明では、制御レジスタ群70に含まれる一又は複数のレジスタRGijを、上記した個別名称で呼ぶ場合と、VDPレジスタRGijと総称することがあるが、何れにしても、演出制御CPU63は、所定のVDPレジスタRGijに、適宜な設定値を書込むことで、VDP回路52の内部動作を制御している。具体的には、演出制御CPU63は、適宜な時間間隔で更新するディスプレイリストDLと、所定のVDPレジスタRGijへの設定値に基づいて、所定の画像演出を実現している。なお、この実施例では、ランプ演出やモータ演出も含め、演出制御CPU63が担当するので、VDPレジスタRGijには、LED制御レジスタやモータ制御レジスタも含まれる。 In the following description, one or a plurality of registers RGij included in the control register group 70 may be collectively referred to as the above-mentioned individual name or VDP register RGij, but in any case, the effect control CPU 63 The internal operation of the VDP circuit 52 is controlled by writing an appropriate set value in a predetermined VDP register RGij. Specifically, the effect control CPU 63 realizes a predetermined image effect based on the display list DL that is updated at appropriate time intervals and the set value in the predetermined VDP register RGij. In this embodiment, the effect control CPU 63 handles the lamp effect and the motor effect, so the VDP register RGij also includes an LED control register and a motor control register.
続いて、上記した内蔵CPU回路51とVDP回路52とを内蔵した複合チップ50によって実現される、画像演出、音声演出、モータ演出、及び、ランプ演出の統一的な演出制御動作について説明する。図10は、内蔵CPU回路51の演出制御CPU63の制御動作を説明するフローチャートである。 Next, a unified effect control operation of image effect, sound effect, motor effect, and lamp effect, which is realized by the composite chip 50 having the built-in CPU circuit 51 and the VDP circuit 52 built therein, will be described. FIG. 10 is a flowchart for explaining the control operation of the effect control CPU 63 of the built-in CPU circuit 51.
演出制御CPU63の動作は、CPUリセット後に起動するメイン処理(a)と、1mS毎に起動するタイマ割込み処理(b)と、制御コマンドCMDを受けて起動する受信割込み処理(不図示)と、表示装置DS1のVブランク(垂直帰線期間)の開始タイミングに生じるVBLANK信号を受けて起動するVBLANK割込み処理(c)と、を含んで構成されている。 The operation of the effect control CPU 63 includes a main process (a) started after CPU reset, a timer interrupt process (b) started every 1 mS, a reception interrupt process (not shown) started upon receiving the control command CMD, and a display. VBLANK interrupt processing (c) which is activated upon receiving the VBLANK signal generated at the start timing of the V blank (vertical blanking period) of the device DS1.
受信割込み処理では、主制御部21から受けた制御コマンドCMDを、メイン処理(ST13)において参照できるよう、所定の受信バッファに記憶して処理を終える。また、VBLANK割込み処理では、VBLANK割込み毎に、割込みカウンタVCNTをインクリメントし、メイン処理の開始タイミングでは、割込みカウンタVCNTの値に基づいて、1/30秒の動作開始タイミングを把握した上で、割込みカウンタVCNTをゼロクリアしている(ST4)。 In the reception interrupt process, the control command CMD received from the main control unit 21 is stored in a predetermined reception buffer so that it can be referred to in the main process (ST13), and the process ends. In the VBLANK interrupt process, the interrupt counter VCNT is incremented for each VBLANK interrupt, and at the start timing of the main process, the operation start timing of 1/30 second is grasped based on the value of the interrupt counter VCNT, and then the interrupt The counter VCNT is cleared to zero (ST4).
一方、タイマ割込み処理には、図10(b)に示す通り、ランプ演出やモータ演出の進行処理(ST18)と、原点センサ信号SN0〜SNn信号や、チャンスボタン信号などを取得するセンサ信号取得処理(ST19)とが含まれている。ランプ演出やモータ演出は、全ての演出動作を一元管理する演出シナリオに基づいて制御されており、演出カウンタENが管理する演出開始時に達すれば、演出シナリオ更新処理(ST11)において、モータ駆動テーブルやランプ駆動テーブルが特定されるようになっている。 On the other hand, in the timer interrupt process, as shown in FIG. 10B, a lamp effect or motor effect progression process (ST18) and a sensor signal acquisition process for acquiring the origin sensor signals SN0 to SNn signals, chance button signals, and the like. (ST19) and are included. The lamp effect and the motor effect are controlled on the basis of an effect scenario that centrally manages all the effect operations, and if the effect start time managed by the effect counter EN is reached, in the effect scenario update process (ST11), the motor drive table or The lamp drive table is specified.
そして、その後は、特定されたモータ駆動テーブルに基づいてモータ演出が進行し、特定されたモータ駆動テーブルに基づいてランプ演出が進行することになる。先に説明した通り、ステップST18の動作時に、DMAC回路(第1と第2のDMAチャンネル)60が機能する実施例もある。なお、モータ演出は、1mS毎に進行するが、ランプ演出は、1mSより長い適宜なタイミングで進行する。 Then, after that, the motor effect proceeds based on the specified motor drive table, and the lamp effect advances based on the specified motor drive table. As described above, in some embodiments, the DMAC circuit (first and second DMA channels) 60 functions during the operation of step ST18. Note that the motor effect proceeds every 1 mS, but the lamp effect proceeds at an appropriate timing longer than 1 mS.
続いて、プリローダを機能しない実施例について、メイン処理(a)について説明する。図10(a)に示す通り、メイン処理は、CPUリセット後に実行される初期処理(ST1〜ST3)と、その後、1/30秒毎に繰り返し実行される定常処理(ST4〜ST14)とに区分される。 Next, the main process (a) will be described as an embodiment in which the preloader does not function. As shown in FIG. 10A, the main process is divided into an initial process (ST1 to ST3) that is executed after the CPU is reset and a steady process (ST4 to ST14) that is repeatedly executed every 1/30 seconds thereafter. To be done.
そして、定常処理は、割込みカウンタVCNTが、VCNT≧2となったタイミングで開始されるので(ST4)、定常処理の動作周期δは、1/30秒となる。この動作周期δは、演出制御CPU63の制御に基づいて間欠動作するVDP回路52について、その実質的な動作周期δに他ならない。なお、判定条件を、VCNT≧2とするのは、定常処理(ST4〜ST14)が異常に長引いて、VCNT=2のタイミングを見逃す可能性を考慮したものであるが、VCNT=3となる事態が発生しないよう設計されている。 Then, the steady process is started at the timing when the interrupt counter VCNT becomes VCNT≧2 (ST4), and therefore the operation cycle δ of the steady process becomes 1/30 seconds. This operation cycle δ is nothing but the actual operation cycle δ of the VDP circuit 52 that intermittently operates under the control of the effect control CPU 63. It should be noted that the reason why the determination condition is VCNT≧2 is to take into consideration the possibility that the steady process (ST4 to ST14) is abnormally lengthened and misses the timing of VCNT=2, but VCNT=3. Is designed to prevent
以上を踏まえてメイン処理(図10(a))の説明を続けると、本実施例では、初期処理において、記憶容量48Mバイトの内蔵VRAM71を、適切な記憶容量を有するACC領域(a) と、ページ領域(b) と、任意領域(c) と、に適宜に切り分ける(ST1)。具体的には、ACC領域(a1,a2) と、ページ領域(b) について、各々の領域先頭アドレスと必要な総データサイズを、所定のインデックステーブルレジスタRGijに設定する(ST1)。すると、確保されたACC領域(a1,a2) と、ページ領域(b) には含まれない残余領域が任意領域(c) となる。 Continuing the description of the main processing (FIG. 10A) based on the above, in this embodiment, in the initial processing, the built-in VRAM 71 having a storage capacity of 48 Mbytes is stored in the ACC area (a) having an appropriate storage capacity, The page area (b) and the arbitrary area (c) are appropriately separated (ST1). Specifically, with respect to the ACC area (a1, a2) and the page area (b), the area start address of each area and the necessary total data size are set in a predetermined index table register RGij (ST1). Then, the reserved ACC areas (a1, a2) and the remaining area not included in the page area (b) become the arbitrary area (c).
ここで、第一と第二のACC領域(a1,a2) と、ページ領域(b) の領域先頭アドレスは、各々の下位11bitが0でなくてはならないが、2048bit単位で任意に選択可能である(1番地=1バイトとして、256番地ごとの選択)。また、総データサイズも、単位サイズの整数倍の範囲で任意に選択される。特に限定されないが、ACC領域(a) の単位サイズは、2048bit、ページ領域(b) の単位サイズは、512kbitである。 Here, the first 11 bits of the first and second ACC areas (a1, a2) and the area start address of the page area (b) must be 0 for each of the lower 11 bits, but can be arbitrarily selected in units of 2048 bits. Yes (1 address = 1 byte, 256 addresses are selected). Also, the total data size is arbitrarily selected within the range of an integral multiple of the unit size. Although not particularly limited, the unit size of the ACC area (a) is 2048 bits and the unit size of the page area (b) is 512 kbits.
このように本実施例では、ACC領域(a1,a2) と、ページ領域(b) の領域設定に一定の条件を設けるが、それは、メモリ容量が限られている内蔵VRAM71について、可能な限り無駄領域を排除する一方で、VDP回路52の内部動作の円滑化を図るためである。すなわち、内蔵VRAM71の記憶容量を無闇に増加させると、製造コストの高騰やチップ面積の大型化が懸念される一方、無駄領域を完全に排除するような自由な領域設定を認めると、内部処理が煩雑化して、VRAMアクセスの処理時間を短縮化できないためである。なお、以下に説明するインデックス空間の確保に、一定の制約を設けるのも同じ理由による。 As described above, in the present embodiment, a certain condition is set for the area setting of the ACC area (a1, a2) and the page area (b), but this is as wasteful as possible for the built-in VRAM 71 whose memory capacity is limited. This is because the internal operation of the VDP circuit 52 is smoothed while eliminating the area. That is, if the storage capacity of the built-in VRAM 71 is increased unnecessarily, the manufacturing cost may increase and the chip area may increase. On the other hand, if the free area setting that completely eliminates the waste area is allowed, the internal processing is This is because the processing time for VRAM access cannot be shortened due to complexity. It should be noted that the same reason is provided with a certain constraint for securing the index space described below.
以上を踏まえて説明を続けると、ステップST1の処理に続いて、ページ領域(b) と、任意領域(c) について、必要なインデックス空間IDXiを確保する(ST2)。具体的には、所定のインデックステーブルレジスタRGijに、必要な情報を設定することで、各領域(b)(c)のインデックス空間IDXiを確保する。 Continuing the description based on the above, following the processing of step ST1, the necessary index space IDXi is secured for the page area (b) and the arbitrary area (c) (ST2). Specifically, by setting necessary information in a predetermined index table register RGij, the index space IDXi of each area (b)(c) is secured.
例えば、ページ領域(b) にインデックス空間IDXiを設ける場合には、任意のインデックス番号iに対応して、任意の水平サイズHxと、任意の垂直サイズWxの倍数情報(単位空間に対する縦横の倍数情報)が、所定のインデックステーブルレジスタRGijに設定される(ST2)。 For example, when the index space IDXi is provided in the page area (b), the multiple number information of the arbitrary horizontal size Hx and the arbitrary vertical size Wx corresponding to the arbitrary index number i (vertical and horizontal multiple information for the unit space) ) Is set in a predetermined index table register RGij (ST2).
先に説明した通り、ページ領域(b) のインデックス空間IDXiは、水平サイズ128×垂直サイズ128ラインを単位空間としており、また、1ピクセルは32bitの情報で特定されるので、水平サイズHxと垂直サイズWxの設定に基づいて、データサイズ(bit長)=32×128×Hx×128×Wxのインデックス空間IDXiが確保されたことになる。なお、ページ領域(b) のインデックス空間IDXiの先頭アドレス(空間先頭アドレス)は、内部的に自動付与される。 As described above, the index space IDXi of the page area (b) has a horizontal size of 128×vertical size of 128 lines as a unit space, and one pixel is specified by the information of 32 bits. Based on the setting of the size Wx, the index space IDXi of data size (bit length)=32×128×Hx×128×Wx is secured. The start address (space start address) of the index space IDXi of the page area (b) is automatically given internally.
また、任意領域(c) にインデックス空間IDXiを設ける場合には、任意のインデックス番号iに対応して、任意の先頭アドレス(空間先頭アドレス)STxと、任意の水平サイズHxの倍数情報が、所定のインデックステーブルレジスタRGijに設定される(ST2)。ここで、任意とは、所定条件を前提とするもので、水平サイズHxは256bit単位で任意決定され、先頭アドレスSTxの下位11bitは0であって、2048bit単位で任意決定される。先に説明した通り、任意領域の垂直サイズは、2048ラインに固定化されるので、水平サイズHxの設定に基づいて、先頭アドレスSTx以降には、データサイズ(bit長)=2048×Hxのインデックス空間が確保されたことになる。 Further, when the index space IDXi is provided in the arbitrary area (c), the arbitrary head address (space head address) STx and the multiple information of the arbitrary horizontal size Hx are associated with the predetermined index number i. Is set in the index table register RGij (ST2). Here, the term “arbitrary” is based on a predetermined condition. The horizontal size Hx is arbitrarily determined in 256-bit units, and the lower 11 bits of the start address STx is 0, which is arbitrarily determined in 2048-bit units. As described above, since the vertical size of the arbitrary area is fixed to 2048 lines, based on the setting of the horizontal size Hx, the data size (bit length)=2048×Hx index after the head address STx. The space is secured.
具体的には、メイン表示装置DS1のフレームバッファFBaとして、水平サイズ1280×垂直ライン2048の一対のインデックス空間が、各々インデックス番号を特定して、一又は複数の所定のインデックステーブルレジスタRGijに設定され、サブ表示装置DS2のフレームバッファFBbとして、水平サイズ480×垂直ライン2048の一対のインデックス空間が、各々インデックス番号を特定して、一又は複数の所定のインデックステーブルレジスタRGijに設定される。なお、もし、表示装置の水平ピクセル数が、256bit/32bitの整数倍に一致しない場合には、各インデックス空間の水平サイズを、その表示装置の水平ピクセル数より大きく、且つ、256/32=8の整数倍となる値に設定して、無駄なメモリ領域の発生を最小限に抑制する。 Specifically, as the frame buffer FBa of the main display device DS1, a pair of index spaces having a horizontal size of 1280×vertical lines 2048 are set in one or a plurality of predetermined index table registers RGij by specifying their respective index numbers. As the frame buffer FBb of the sub display device DS2, a pair of index spaces of horizontal size 480×vertical line 2048 are set in one or a plurality of predetermined index table registers RGij by specifying index numbers. If the number of horizontal pixels of the display device does not match an integer multiple of 256 bits/32 bits, the horizontal size of each index space is larger than the number of horizontal pixels of the display device, and 256/32=8. Set to a value that is an integral multiple of to minimize the occurrence of useless memory areas.
以上のように、ページ領域(b) と、任意領域(c) について、必要なサイズ情報やアドレス情報を所定のインデックステーブルレジスタRGijに各々設定することで、必要個数のインデックス空間IDXiが生成される(ST2)。そして、この設定処理(ST2)に対応して、各インデックス空間IDXiのアドレス情報やサイズ情報を特定するインデックステーブルIDXTBLが自動的に構築される。図7(a)に示す通り、インデックステーブルIDXTBLには、各インデックス空間IDXiの先頭アドレスが、その他の必要情報と共に記憶されており、VDP回路52内部でのデータ転送時や、外部記憶リソース(Resource)からのデータ取得時に参照される(図8参照)。なお、AAC領域(a) のインデックス空間IDXiは、必要時に自動生成され、自動消滅するので、ステップST2の設定処理は不要である。 As described above, by setting necessary size information and address information in the predetermined index table register RGij for the page area (b) and the arbitrary area (c), the required number of index spaces IDXi are generated. (ST2). Then, corresponding to this setting process (ST2), the index table IDXTBL for specifying the address information and size information of each index space IDXi is automatically constructed. As shown in FIG. 7A, the index table IDXTBL stores the start address of each index space IDXi together with other necessary information, and is used when data is transferred inside the VDP circuit 52 and external storage resources (Resource ) Is referred to at the time of data acquisition (see FIG. 8). The index space IDXi of the AAC area (a) is automatically generated when necessary and automatically disappears, so that the setting process of step ST2 is unnecessary.
図7(a)(b)に示す通り、任意領域(c) には、各一対のフレームバッファFBaとFBbが確保され、各々、インデックス番号が付与されている。Zバッファを使用しない実施例では、フレームバッファFBaとして、インデックス番号255,254が付与された、一対のインデックス空間255,254が確保される。また、フレームバッファFBbとして、インデックス番号252,251が付与された、一対のインデックス空間252,251が確保される。なお、本実施例では、任意領域(c) に、インデックス番号0の作業領域(インデックス空間0)も確保されている。 As shown in FIGS. 7A and 7B, a pair of frame buffers FBa and FBb are secured in the arbitrary area (c), and index numbers are given to them. In the embodiment that does not use the Z buffer, a pair of index spaces 255 and 254 to which index numbers 255 and 254 are assigned are secured as the frame buffer FBa. Further, as the frame buffer FBb, a pair of index spaces 252 and 251 to which index numbers 252 and 251 are given are secured. In the present embodiment, the work area with index number 0 (index space 0) is also secured in the arbitrary area (c).
また、本実施例では、ページ領域(a) に、IPストリーム動画のデコード領域となる必要個数のインデックス空間IDXiを確保し、インデックス番号iを付与することにしている。但し、初期的には、背景動画(IPストリーム動画)のためのインデックス空間IDX0だけを確保している。そして、画像演出(変動演出や予告演出)における必要性に応じて、インデックステーブルレジスタRGijへの設定処理や、ディスプレイリストDLの指示コマンドに基づいて、ページ領域(a) のインデックス空間IDXjを増やし、その後、不要になれば、そのインデックス空間IDXjを開放するようにしている。すなわち、図7(a)は、定常動作時のインデックステーブルIDXTBLを示している。 Further, in this embodiment, a required number of index spaces IDXi to be the decoding region of the IP stream moving image are secured in the page region (a) and the index number i is given. However, initially, only the index space IDX 0 for the background moving image (IP stream moving image) is secured. Then, the index space IDXj of the page area (a) is increased based on the setting process to the index table register RGij or the command command of the display list DL according to the necessity in the image effect (variable effect or notice effect), After that, if it becomes unnecessary, the index space IDXj is opened. That is, FIG. 7A shows the index table IDXTBL in the steady operation.
なお、ACC領域(a) のインデックス空間は、ディスプレイリストDLに記載されている指示コマンドに基づいて、必要時に自動的に生成され、インデックステーブルIDXTBLには、自動生成されたインデックス空間IDXjの先頭アドレスや、その他の必要情報が自動設定される。本実施例では、このAAC領域(a) を、静止画その他のテクスチャのデコード領域として使用している。 The index space of the ACC area (a) is automatically generated when necessary based on the instruction command described in the display list DL, and the index table IDXTBL has the start address of the automatically generated index space IDXj. And other necessary information are automatically set. In this embodiment, this AAC area (a) is used as a decoding area for still images and other textures.
インデックス空間を確保する上記の動作は、もっぱら、制御レジスタ群70に含まれるインデックステーブルレジスタRGijへの設定動作によって実現されるが、ステップST1〜ST2の処理に続いて、他のVDPレジスタRGijに、必要な設定動作を実行することで、図18〜図19に示すVDP回路52の定常動作(間欠動作)を可能にしている。 The above-described operation of securing the index space is realized exclusively by the setting operation to the index table register RGij included in the control register group 70. By executing the necessary setting operation, the steady operation (intermittent operation) of the VDP circuit 52 shown in FIGS. 18 to 19 is enabled.
例えば、表示回路74の動作を規定する所定の表示レジスタRGijに、所定の動作パラメータ(ライン数と画素数)を書込むことで、各表示装置DS1,SD2について表示ライン数と水平画素数を設定している(SS30)。その結果、各フレームバッファFBa,FBbにおいて、表示回路74がREADアクセスすべき有効データ領域(図10(d)の破線部)の縦横寸法が、特定されることになる。 For example, by writing a predetermined operation parameter (the number of lines and the number of pixels) in a predetermined display register RGij that defines the operation of the display circuit 74, the number of display lines and the number of horizontal pixels are set for each of the display devices DS1 and SD2. (SS30). As a result, in each of the frame buffers FBa and FBb, the vertical and horizontal dimensions of the effective data area (broken line portion in FIG. 10D) to be read-accessed by the display circuit 74 are specified.
次に、所定の表示レジスタRGijに、所定の動作パラメータ(アドレス値)を書込んで、各フレームバッファFBa,FBbについて、垂直表示開始位置と水平表示開始位置を特定する(SS31)。その結果、ステップSS30の処理で縦横寸法が特定された有効データ領域が、フレームバッファFBa,FBb上に確定されることになる。ここで、垂直表示開始位置と水平表示開始位置は、各インデックス空間における相対アドレス値であって、図10(d)に示す実施例では、表示開始位置は(0,0)となっている。 Next, a predetermined operation parameter (address value) is written in a predetermined display register RGij to specify the vertical display start position and the horizontal display start position for each frame buffer FBa, FBb (SS31). As a result, the valid data area whose vertical and horizontal dimensions are specified by the processing of step SS30 is settled on the frame buffers FBa and FBb. Here, the vertical display start position and the horizontal display start position are relative address values in each index space, and in the embodiment shown in FIG. 10D, the display start position is (0, 0).
続いて、メイン表示装置DS1を駆動する表示回路74Aに関する表示レジスタRGij(DSPAINDEX )と、サブ表示装置DS2を駆動する表示回路74Bに関する表示レジスタRGij(DSPBINDEX )に、各々、「表示領域(0)」と「表示領域(1)」を設定して、各表示領域を定義している(SS32)。 Then, the display register RGij (DSPAINDEX) related to the display circuit 74A driving the main display device DS1 and the display register RGij (DSPBINDEX) related to the display circuit 74B driving the sub display device DS2 are respectively displayed in the "display area (0)". And "display area (1)" are set to define each display area (SS32).
ここで、「表示領域」とは、表示回路74A,74Bが、表示装置DS1,DS2を駆動するために、画像データを読み出すべきインデックス空間(フレームバッファFBa,FBb)を意味し、各々ダブルバッファ構造であるフレームバッファFBa,FBbにおけるダブルバッファの何れか一方を意味する。もっとも、表示回路74A,74Bが、実際に画像データを読み出すのは、表示領域(0)又は表示領域(1)における、ステップSS30〜SS31で特定された「有効データ領域」に限定される。 Here, the "display area" means an index space (frame buffers FBa, FBb) from which the display circuits 74A, 74B should read image data in order to drive the display devices DS1, DS2, and each has a double buffer structure. Means one of the double buffers in the frame buffers FBa and FBb. However, the display circuits 74A and 74B actually read the image data only in the "valid data area" specified in steps SS30 to SS31 in the display area (0) or the display area (1).
何ら限定されないが、本実施例では、フレームバッファFBaについて、VRAM任意領域(c) におけるインデックス番号254のインデックス空間254を「表示領域(0)」と定義し、VRAM任意領域(c) におけるインデックス番号255のインデックス空間255を、「表示領域(1)」と定義している(SS32)。 In the present embodiment, the index space 254 of the index number 254 in the VRAM arbitrary area (c) is defined as “display area (0)” in the frame buffer FBa, and the index number in the VRAM arbitrary area (c) is not limited. The index space 255 of 255 is defined as "display area (1)" (SS32).
また、フレームバッファFBbについて、VRAM任意領域(c) におけるインデックス番号251のインデックス空間251を「表示領域(0))とし、VRAM任意領域(c) におけるインデックス番号252のインデックス空間252を「表示領域(1)」としている(SS32)。なお、「表示領域」を初期処理(SS3)において定義することは、特に限定されず、動作周期δ毎に、表示回路74が画像データをREADアクセスすべきインデックス空間(表示領域)をトグル的に切換えても良い。 In the frame buffer FBb, the index space 251 of the index number 251 in the VRAM arbitrary area (c) is set as “display area (0)”, and the index space 252 of the index number 252 in the VRAM arbitrary area (c) is set as “display area ( 1)” (SS32). Note that the definition of the “display area” in the initial processing (SS3) is not particularly limited, and the index space (display area) to which the display circuit 74 should READ access the image data for each operation cycle δ toggles. You may switch.
本実施例では、以上の初期処理(SS30〜SS32)が終われば、次に、所定のシステム制御レジスタRGijへの設定値が、その後、ノイズなどの影響で変更されないよう、第1種の禁止設定レジスタRGijに、所定の禁止値を設定している(第1の禁止設定SS33)。 In the present embodiment, after the above initial processing (SS30 to SS32) is completed, the first-class prohibition setting is performed so that the set value in the predetermined system control register RGij is not changed by the influence of noise or the like. A predetermined prohibition value is set in the register RGij (first prohibition setting SS33).
ここで、今後の書込みが禁止される設定値には、(1) 表示装置DS1,DS2の表示クロックに関する設定値、(2) LVDSのサンプリングクロックに関する設定値、(3) 出力選択回路79の選択動作に関する設定値、(4) 複数の表示回路DS1,DS2の同期関係(表示回路74Bが表示回路74Aの動作周期に従属すること)などが含まれている。なお、第1の禁止設定を解除するソフトウェア処理は存在するが、本実施例では使用していない。但し、必要に応じて使用するのも好適である。 Here, the set values for which writing is prohibited in the future include (1) set values related to the display clocks of the display devices DS1 and DS2, (2) set values related to the sampling clock of the LVDS, and (3) selection of the output selection circuit 79. It includes set values related to operation, (4) synchronization relationship between the plurality of display circuits DS1 and DS2 (the display circuit 74B is dependent on the operation cycle of the display circuit 74A), and the like. Although there is software processing for canceling the first prohibition setting, it is not used in this embodiment. However, it is also suitable to use it if necessary.
次に、第2種の禁止設定レジスタRGijに、所定の禁止値を設定することで、初期設定系のVDPレジスタRGijについて書込み禁止設定をしている(第2の禁止設定SS34)。ここで、禁止設定されるレジスタには、ステップSS30〜SS32に係るVDPレジスタRGijが含まれている。 Next, by setting a predetermined prohibition value in the second type prohibition setting register RGij, the write prohibition setting is made for the VDP register RGij of the initialization system (second prohibition setting SS34). Here, the registers that are set to be prohibited include the VDP register RGij related to steps SS30 to SS32.
一方、第3種の禁止設定レジスタRGijに、所定の禁止値を設定することで、ステップST1〜ST3の設定処理に関するVDPレジスタを含んだ、多数のVDPレジスタへの禁止設定も可能である(第3の禁止設定)。但し、本実施例では原則として使用しない。何れにしても、第2の禁止設定や、第3の禁止設定は、所定の解除レジスタRGijに、解除値を書込むことで任意に解除可能であり、定常動作中に設定値を変更することも可能となる。 On the other hand, by setting a predetermined prohibition value in the third-type prohibition setting register RGij, it is possible to set prohibition to a large number of VDP registers including the VDP register relating to the setting processing of steps ST1 to ST3 (the first prohibition setting). 3 prohibition setting). However, it is not used in principle in this embodiment. In any case, the second prohibition setting and the third prohibition setting can be arbitrarily canceled by writing the cancel value in a predetermined cancel register RGij, and the setting value should be changed during the steady operation. Will also be possible.
以上、初期設定処理について説明したので、次に、定常処理(ST4〜ST14)を説明する前に、演出制御CPU63によって制御されるVDP回路52の定常動作(間欠動作)について図18(a)及び図19(b)に基づいて概略的に説明しておく。 Since the initial setting process has been described above, before describing the steady process (ST4 to ST14), the steady operation (intermittent operation) of the VDP circuit 52 controlled by the effect control CPU 63 will be described with reference to FIG. A brief description will be given based on FIG.
VDP回路52の間欠動作は、図18や図19に示す通りであり、プリローダ73を使用しない実施例では、図18(a)に示すように、演出制御CPU63が完成させたディスプレイリストDLiは、その動作周期(T1)で、描画回路76に発行され、描画回路76はディスプレイリストDLiに基づく描画動作によって、フレームバッファFBa,FBbに、画像データを完成させる。そして、フレームバッファFBa,FBbに完成された画像データは、次の動作周期T1+δに、表示回路74が表示装置DS1,DS2に出力することで、その後の、表示装置DS1,DS2の描画動作に基づき、遊技者が感知する表示画面となる。 The intermittent operation of the VDP circuit 52 is as shown in FIGS. 18 and 19, and in the embodiment in which the preloader 73 is not used, as shown in FIG. 18A, the display list DLi completed by the effect control CPU 63 is: In the operation cycle (T1), it is issued to the drawing circuit 76, and the drawing circuit 76 completes the image data in the frame buffers FBa and FBb by the drawing operation based on the display list DLi. Then, the image data completed in the frame buffers FBa and FBb is output to the display devices DS1 and DS2 by the display circuit 74 in the next operation cycle T1+δ, and based on the subsequent drawing operation of the display devices DS1 and DS2. , A display screen that the player perceives.
一方、プリローダ73を使用する実施例では、図19(a)に示すように、演出制御CPU63が完成させたディスプレイリストDLiは、その動作周期(T1)で、プリローダ73に発行され、プリローダ73は、ディスプレイリストDLiを解釈して、必要な先読み動作を実行すると共に、ディスプレイリストDLiの一部を書き換えて、書換えリストDL’を完成させる。なお、先読みされたCGデータと書換えリストDL’は、DRAM54の適所に格納される。 On the other hand, in the embodiment using the preloader 73, as shown in FIG. 19A, the display list DLi completed by the effect control CPU 63 is issued to the preloader 73 in its operation cycle (T1), and the preloader 73 , The display list DLi is interpreted, necessary read-ahead operation is executed, and a part of the display list DLi is rewritten to complete the rewrite list DL′. The pre-read CG data and the rewrite list DL' are stored at appropriate places in the DRAM 54.
次に、描画回路76は、その次の動作周期(T1+δ)で、DRAM54から書換えリストDL’を取得し、書換えリストDL’に基づく描画動作によって、フレームバッファFBa,FBbに、画像データを完成させる。そして、フレームバッファFBa,FBbに完成された画像データは、更にその次の動作周期(T1+2δ)で、表示回路74が表示装置DS1,DS2に出力することで、その後の表示装置DS1,DS2の描画動作に基づき、遊技者が感知する表示画面となる。 Next, the drawing circuit 76 acquires the rewriting list DL′ from the DRAM 54 in the next operation cycle (T1+δ), and completes the image data in the frame buffers FBa and FBb by the drawing operation based on the rewriting list DL′. .. Then, the image data completed in the frame buffers FBa and FBb is output to the display devices DS1 and DS2 by the display circuit 74 in the next operation cycle (T1+2δ), so that the subsequent display devices DS1 and DS2 are rendered. Based on the operation, the display screen is sensed by the player.
以上、VDP回路52の間欠動作について概略的に説明したが、上記した図18〜図19の動作を実現するため、演出制御CPU63は、初期処理(ST1〜ST3)の後、割込みカウンタVCNTの値を繰り返し参照して、動作開始タイミングに達するのを待ち、動作開始タイミング(一つ飛びのVブランク開始タイミング)に達すれば、割込みカウンタVCNTをゼロクリアする(ST4)。 Although the intermittent operation of the VDP circuit 52 has been schematically described above, in order to realize the above-described operations of FIGS. 18 to 19, the effect control CPU 63 causes the value of the interrupt counter VCNT after the initial processing (ST1 to ST3). Repeatedly waiting for the operation start timing to be reached, and when the operation start timing (one-by-one V blank start timing) is reached, the interrupt counter VCNT is cleared to zero (ST4).
その後、定常動作を開始するが、本実施例では、最初に、定常動作を開始すべき動作開始条件を満たしているか否かを判定する(ST5)。なお、この判定タイミングは、図18〜図19に記載のT1,T1+δ、T1+2δ、・・・・のタイミング、つまり、表示装置DS1の垂直帰線期間(VBLANK)の開始タイミングである。なお、表示装置DS2の表示タイミングは、表示装置DS1の表示タイミングに従属するよう、初期設定(ST3)時に設定されている。 After that, the steady operation is started, but in the present embodiment, first, it is determined whether or not the operation start condition for starting the steady operation is satisfied (ST5). Note that this determination timing is the timing of T1, T1+δ, T1+2δ,... Described in FIGS. 18 to 19, that is, the start timing of the vertical blanking period (VBLANK) of the display device DS1. The display timing of the display device DS2 is set during the initial setting (ST3) so as to be dependent on the display timing of the display device DS1.
垂直帰線期間(VBLANK)の開始タイミングで判定される動作開始条件は、プリローダ73を活用するか否かで異なるので、先ず、プリローダ73を活用しない実施例(図10)について説明する。この場合は、本来、図18(a)のタイムチャートに示す通りにVDPの内部動作が進行するよう、回路構成やプログラムが設計されている。すなわち、動作周期(T1)で完成されたディスプレイリストDL1に基づき、描画回路76は、その動作周期中(T1〜T1+δ)に、描画動作を終える筈である。しかし、例えば、図18(a)の動作周期(T1+2δ)で完成されたディスプレイリストDL3のように、その動作周期中(T1+2δ〜T1+3δ)に、描画動作を終わらない場合も無いとは言えない。 Since the operation start condition determined at the start timing of the vertical blanking period (VBLANK) differs depending on whether the preloader 73 is used or not, first, an embodiment (FIG. 10) in which the preloader 73 is not used will be described. In this case, originally, the circuit configuration and the program are designed so that the internal operation of the VDP proceeds as shown in the time chart of FIG. That is, based on the display list DL1 completed in the operation cycle (T1), the drawing circuit 76 should end the drawing operation during the operation cycle (T1 to T1+δ). However, for example, like the display list DL3 completed in the operation cycle (T1+2δ) of FIG. 18A, it cannot be said that the drawing operation may not end during the operation cycle (T1+2δ to T1+3δ).
ステップST5の判定処理は、かかる事態を考慮したのであり、演出制御CPU63は、描画回路76の動作状態を示すステイタスレジスタRGij(制御レジスタ群70の一種)をアクセスして、ステップST5のタイミングで、描画回路76が、必要な動作を終えているか否かを判定する。プリローダ73を活用しない実施例では、例えば、図18(a)のタイミングT1+δでは、描画回路76に関する描画レジスタのステイタス情報をReadアクセスして、ディスプレイリストDL1に基づく描画動作が終わっていることを確認する。 This situation is taken into consideration in the determination process of step ST5, and the effect control CPU 63 accesses the status register RGij (a kind of control register group 70) indicating the operation state of the drawing circuit 76, and at the timing of step ST5, The drawing circuit 76 determines whether or not the required operation has been completed. In the embodiment in which the preloader 73 is not used, for example, at timing T1+δ in FIG. 18A, the status information of the drawing register regarding the drawing circuit 76 is read-accessed and it is confirmed that the drawing operation based on the display list DL1 is completed. To do.
そして、動作開始条件を満たさない場合(不適合)には、異常回数をカウントする異常フラグERをインクリメントして、ステップST6〜ST8処理をスキップする。異常フラグERは、その他の重大異常フラグABNと共に、ステップST9やST10の処理で判定され、重大異常フラグABNがリセット状態である前提において、連続異常回数が多くない場合(ER≦2)には、正常時と同様に、演出コマンド解析処理を実行する(ST13)。 Then, when the operation start condition is not satisfied (nonconformity), the abnormality flag ER for counting the number of abnormalities is incremented, and the processes of steps ST6 to ST8 are skipped. The abnormality flag ER is determined along with other serious abnormality flags ABN in the processing of steps ST9 and ST10, and if the number of consecutive abnormalities is not large (ER≦2) on the assumption that the serious abnormality flag ABN is in the reset state, The production command analysis processing is executed as in the normal state (ST13).
演出コマンド解析処理(ST13)では、主制御基板21から制御コマンドCMDを受けているか否かを判定し、制御コマンドCMDを受けた場合には、その制御コマンドCMDを解析して必要な処理を実行する(ST13)。ここで、必要な処理には、変動演出の開始を指示する制御コマンドCMDに基づく新規の変動演出の開始準備処理や、エラー発生を示す制御コマンドCMDに基づくエラー報知の開始処理が含まれる。 In the effect command analysis processing (ST13), it is determined whether or not the control command CMD is received from the main control board 21, and when the control command CMD is received, the control command CMD is analyzed and necessary processing is executed. (ST13). Here, the necessary processing includes a start preparation processing for a new variation effect based on a control command CMD that instructs the start of variation effect, and an error notification start processing based on a control command CMD indicating an error occurrence.
続いて、WDTタイマを初期値に戻すべく、WDT制御レジスタの初期ビットに規定1bitを書き込んだ後(ST14)、ステップST4の処理に戻る。演出制御CPU63は、外部装置に対してクリアパルスを出力する必要がなく、単に、内蔵レジスタへのWrite 命令を実行するだけで足りる利点は、先に説明した通りである。 Then, in order to return the WDT timer to the initial value, a prescribed 1 bit is written in the initial bit of the WDT control register (ST14), and the process returns to step ST4. The effect control CPU 63 does not need to output the clear pulse to the external device, and the advantage that it is sufficient to simply execute the Write command to the internal register is as described above.
以上、動作開始条件が不適合の場合であって、異常フラグERがER≦2である場合について説明したが、このような場合には、その動作周期では、表示回路74が読み出す表示領域をトグル切換える処理(ST6)や、ディスプレイリストの作成処理(ST7)がスキップされ、且つ、演出シナリオが進行しないことになる(ST8〜ST12参照)。これは、不完全な状態のフレームバッファFBa,FBbの画像データを出力させないためである。そのため、例えば、図18(a)の動作周期(T1+3δ)では、画像演出が進行せず、元の画面(DL2に基づく画面)が再表示されるフレーム落ちが生じる。 The case where the operation start condition is not satisfied and the abnormality flag ER is ER≦2 has been described above. In such a case, the display area read by the display circuit 74 is toggle-switched in the operation cycle. The process (ST6) and the display list creation process (ST7) are skipped, and the effect scenario does not proceed (see ST8 to ST12). This is because the image data in the incomplete frame buffers FBa and FBb is not output. Therefore, for example, in the operation cycle (T1+3δ) of FIG. 18A, the image effect does not proceed, and a frame drop occurs in which the original screen (the screen based on DL2) is displayed again.
ここで、フレーム落ちを回避するため、動作開始条件が成立するまで待機する構成も考えられる。しかし、演出制御CPU63が実行すべき制御処理(ST6〜ST12)は数多く、各々の処理時間を確保する必要があるので、本実施例では、動作開始条件を満たさない場合にフレーム落ちを生じさせている。 Here, in order to avoid dropped frames, a configuration of waiting until the operation start condition is satisfied can be considered. However, since there are many control processes (ST6 to ST12) to be executed by the effect control CPU 63 and it is necessary to secure the processing time for each, in the present embodiment, frame drop occurs when the operation start condition is not satisfied. There is.
但し、フレーム落ちが生じたとしても、割込み処理(図10(b))によって進行するランプ演出やモータ演出と比較して、1/30〜2/30秒程度、画像演出の進行が遅れるだけであり、これに遊技者が気付くことはない。しかも、フレーム落ち時には、演出カウンタENの更新処理を含んだ演出シナリオ処理(ST11)や、音声進行処理(ST12)も合わせてスキップされるので、その後に開始されるリーチ演出や予告演出や役物演出において、画像演出、音声演出、ランプ演出、及びモータ演出などの開始タイミングがずれるおそれはない。 However, even if a frame drop occurs, the progress of the image effect is delayed by about 1/30 to 2/30 seconds as compared with the lamp effect and the motor effect that are advanced by the interrupt process (FIG. 10B). Yes, the player does not notice this. Moreover, when the frame is dropped, the effect scenario processing (ST11) including the update processing of the effect counter EN and the voice progress processing (ST12) are also skipped, so that the reach effect, the notice effect, and the accessory that are started after that are performed. In the effect, there is no fear that the start timing of the image effect, the sound effect, the lamp effect, the motor effect, or the like will be shifted.
すなわち、演出シナリオでは、画像演出、音声演出、ランプ演出、モータ演出の開始タイミングと、その後に実行すべき演出内容を一元的に管理しており、正常時に限り更新される演出カウンタENによって、開始タイミングを制御しているので、各種の演出の同期が外れることはない。例えば、爆発音と、爆発画像と、役物移動と、ランプフラッシュ動作を複合した演出動作がある場合、フレーム落ちが生じた後であっても、上記した各演出動作は正しく同期して開始される。 That is, in the production scenario, the start timings of the image production, the audio production, the lamp production, and the motor production and the content of the production to be executed thereafter are centrally managed, and the production counter EN updated only in the normal time Since the timing is controlled, the synchronization of various performances will not be lost. For example, if there is a performance operation that combines explosion sound, explosion image, character movement, and lamp flash operation, each performance operation described above will start correctly in synchronization even after a frame drop occurs. It
以上、比較的軽微な異常時について説明したが、重大異常フラグABNがセット状態である場合や、連続異常回数が多い場合(ER>2)には、ステップST10の判定の後、無限ループ状態としている。その結果、WDTタイマのダウンカウント動作が進行して、演出制御CPU63を含んだ複合チップ50は、異常リセットされ、その後、初期処理(ST1〜ST3)が再実行されることで、異常事態発生の根本原因の解消が期待される。 Although the comparatively slight abnormality has been described above, when the serious abnormality flag ABN is in the set state or when the number of continuous abnormalities is large (ER>2), the state is set to the infinite loop state after the determination in step ST10. There is. As a result, the down count operation of the WDT timer proceeds, the composite chip 50 including the effect control CPU 63 is abnormally reset, and then the initial processing (ST1 to ST3) is re-executed, so that an abnormal situation occurs. It is expected that the root cause will be resolved.
図4に関して説明した通り、この異常時には、音声回路SNDも合わせ異常リセットされるので、画像演出、音声演出、ランプ演出、モータ演出は、全て初期状態に戻ることになる。但し、これらのリセット動作は、主制御部21や払出制御部25には、何の影響も与えなので、大当り状態の消滅や、賞球の消滅のような事態が発生するおそれはない。 As described with reference to FIG. 4, at the time of this abnormality, the audio circuit SND is also abnormally reset, so that the image effect, the audio effect, the lamp effect, and the motor effect are all returned to the initial state. However, since these reset operations have no effect on the main control unit 21 and the payout control unit 25, there is no possibility that a big hit state disappears or a prize ball disappears.
以上、異常事態について説明したが、実際には、軽微な場合も含め上記した異常が発生することは殆どなく、ステップST5の処理の後、所定の表示レジスタRGij(DSPACTL /DSPBCTL)への設定に基づき、表示回路74Aと表示回路74Bが読み出すべき画像データを記憶するフレームバッファFBa,FBbの「表示領域」をトグル的に切り換える(ST6)。先に説明した通り、「表示領域(0)」と「表示領域(1)」は、予め初期処理において定義されているので(ST3)、ステップST6の処理では、フレームバッファFBa,FBbについて、今回の「表示領域」が、表示領域(0)/表示領域(1)の何れであるかを特定する。 Although the abnormal situation has been described above, in reality, the above-mentioned abnormalities rarely occur even in the case of a minor case, and after the processing of step ST5, the predetermined display register RGij (DSPACTL/DSPBCTL) is set. Based on this, the "display areas" of the frame buffers FBa and FBb that store the image data to be read by the display circuit 74A and the display circuit 74B are toggled (ST6). As described above, since “display area (0)” and “display area (1)” are defined in advance in the initial processing (ST3), in the processing of step ST6, the frame buffers FBa and FBb are It specifies which of the display area (0) and the display area (1) the "display area" of is.
このステップST6が実行されることで、表示回路74Aは、インデックス空間254(表示領域(0))と、インデックス空間255(表示領域(1))から、動作周期δ毎に、交互に画像データを読み出して表示装置DS1を駆動することになる。同様に、表示回路74Bは、インデックス空間251(表示領域(0))と、インデックス空間252(表示領域(1))から、動作周期δ毎に、交互に画像データを読み出してサブ表示装置DS2を駆動することになる。なお、表示回路74が実際にREADアクセスするのは、表示領域(0)/表示領域(1)における有効データ領域に限定されるのは先に説明した通りである。 By executing this step ST6, the display circuit 74A alternately outputs the image data from the index space 254 (display area (0)) and the index space 255 (display area (1)) for each operation cycle δ. The data is read out and the display device DS1 is driven. Similarly, the display circuit 74B alternately reads out the image data from the index space 251 (display area (0)) and the index space 252 (display area (1)) for each operation cycle δ to display the sub display device DS2. Will be driven. Note that the display circuit 74 actually performs READ access is limited to the effective data area in the display area (0)/display area (1) as described above.
何れにしても、本実施例では、動作周期毎に「表示領域」が切り替わるので、表示回路74A,74Bは、直前の動作周期で描画回路76が完成させた画像データについて、表示装置DS1,DS2への出力処理を開始することになる。但し、ステップST5の処理は、メイン表示装置DS1の垂直帰線期間(Vブランク)の開始時から開始されるので、実際には、垂直帰線期間が完了してから画像データの出力処理が開始されることになる。図18(a)において、表示回路の欄に示す矢印は、この出力処理の動作周期を示している。 In any case, in this embodiment, the "display area" is switched for each operation cycle, so that the display circuits 74A and 74B display the display devices DS1 and DS2 with respect to the image data completed by the drawing circuit 76 in the immediately previous operation cycle. The output processing to will be started. However, since the process of step ST5 is started from the start of the vertical blanking period (V blank) of the main display device DS1, the output process of the image data is actually started after the vertical blanking period is completed. Will be done. In FIG. 18A, the arrow shown in the column of the display circuit indicates the operation cycle of this output processing.
以上のような意義を有するステップST6の処理が終われば、演出制御CPU63は、続いて、次の動作周期で、表示回路74が表示装置に出力するべき画像データを特定したディスプレイリストDLを完成させる(ST7)。特に限定されないが、この実施例では、RAM59のリストバッファ領域(DLバッファBUF)を確保し、そこにディスプレイリストDLを完成させている(図8参照)。 When the processing of step ST6 having the above meaning is completed, the effect control CPU 63 subsequently completes the display list DL specifying the image data to be output to the display device by the display circuit 74 in the next operation cycle. (ST7). Although not particularly limited, in this embodiment, the list buffer area (DL buffer BUF) of the RAM 59 is secured and the display list DL is completed there (see FIG. 8).
ディスプレイリストDLは、一連の指示コマンドを、適宜な順番で列記して構成され、EODL(End Of DL )コマンドを記載して終わるよう構成されている。そして、本実施例では、データ転送回路72、描画回路76、プリローダ73の円滑な動作を実現するべく、EODLコマンドを含む全ての指示コマンドを、コマンド長が32bitの整数N倍(N>0)の指示コマンドだけに限定している。なお、32bitの整数N倍で構成された指示コマンドに、無意ビット(Don't care bit)も含んで良いことは先に説明した通りである。 The display list DL is configured by listing a series of instruction commands in an appropriate order, and is configured to end by describing an EODL (End Of DL) command. Then, in this embodiment, in order to realize smooth operation of the data transfer circuit 72, the drawing circuit 76, and the preloader 73, all instruction commands including the EODL command are multiplied by an integer N times a command length of 32 bits (N>0). It is limited only to the command command of. As described above, the instruction command configured by an integer N times 32 bits may include an insignificant bit (Don't care bit).
このように、実施例のディスプレイリストDLは、コマンド長が32bitの整数N倍(N>0)の指示コマンドだけで構成されているので、ディスプレイリストDL全体のデータボリューム値(データ総量)は、必ず、コマンド長の最小単位(32bit=4バイト)の整数倍となる。更に、本実施例では、データ転送回路72の最低データ量Dminを考慮して、ディスプレイリストDLのデータボリューム値を、最低データ量Dminの整数倍(1以上)であって、且つ、指示コマンドの最小単位(4バイト)の整数倍となるよう調整している。例えば、Dmin=256バイトであれば、ディスプレイリストDLのデータボリューム値は、256バイト、512バイト・・・の何れかの値に調整される。 As described above, the display list DL of the embodiment is composed of only instruction commands having a command length of an integer N times 32 bits (N>0). Therefore, the data volume value (total data amount) of the entire display list DL is It is always an integral multiple of the minimum unit of command length (32 bits=4 bytes). Further, in this embodiment, in consideration of the minimum data amount Dmin of the data transfer circuit 72, the data volume value of the display list DL is an integral multiple (1 or more) of the minimum data amount Dmin, and the instruction command It is adjusted to be an integral multiple of the minimum unit (4 bytes). For example, if Dmin=256 bytes, the data volume value of the display list DL is adjusted to any value of 256 bytes, 512 bytes,...
ここで、演出内容の複雑さに応じて、適宜に、256バイトか、又は512バイトに調整するのも好適であるが、本実施例では、表示装置が二個であり、サブ表示装置DS2はそれほど複雑な画像演出を実行させないことを考慮して、ディスプレイリストDLのデータボリューム値を、常に、256バイトに調整している。 Here, it is also suitable to adjust to 256 bytes or 512 bytes as appropriate according to the complexity of the effect contents, but in this embodiment, there are two display devices and the sub display device DS2 is The data volume value of the display list DL is constantly adjusted to 256 bytes in consideration of not executing a complicated image effect.
もっとも、この手法は、何ら限定されず、表示装置が三個以上になる場合や、サブ表示装置DS2も含め複雑な画像演出を実行する遊技機の場合には、512バイト又は、768バイトに調整される。また、通常の演出時は、ディスプレイリストDLのデータボリューム値を256バイトに調整し、特別な演出を実行する場合に限り、ディスプレイリストDLのデータボリューム値を、512バイト又は、768バイトに調整するのも好適である。 However, this method is not limited in any way, and is adjusted to 512 bytes or 768 bytes when there are three or more display devices or in the case of a gaming machine which executes complicated image effects including the sub-display device DS2. To be done. In addition, during a normal effect, the data volume value of the display list DL is adjusted to 256 bytes, and only when a special effect is executed, the data volume value of the display list DL is adjusted to 512 bytes or 768 bytes. Is also suitable.
但し、本実施例の場合には、ディスプレイリストDLのデータボリューム値は、各動作周期δにおいて、予め規定された所定バイト長(256バイト)に調整される。調整手法としては、32bit長のEODLコマンドの後に、不足領域を補填する32bit長のNOP (No Operation)コマンドを埋める簡易手法(A)か、或いは、不足領域を32bit長のNOP コマンドで埋めた後、最後に32bit長のEODLコマンドを記載する標準手法(B)が考えられる。なお、ディスプレイリストDLのデータボリューム値(データ総量)を全く調整することなくEODLコマンドで終結させ、データ転送回路72の動作時に、ダミーデータを付加的に転送して、最低データ量Dminの整数倍の転送量を確保する無調整手法(C)も考えられる。 However, in the case of the present embodiment, the data volume value of the display list DL is adjusted to a predetermined byte length (256 bytes) defined in advance in each operation cycle δ. As the adjustment method, a simple method (A) of filling a 32-bit long EODL command with a 32-bit long NOP (No Operation) command for compensating for the shortage area, or after filling the shortage area with a 32-bit long NOP command Finally, the standard method (B) in which a 32-bit EODL command is described can be considered. It should be noted that the data volume value (total data amount) of the display list DL is terminated by the EODL command without any adjustment, and dummy data is additionally transferred during the operation of the data transfer circuit 72 to be an integral multiple of the minimum data amount Dmin. A non-adjustment method (C) that secures the transfer amount of
ここで、標準手法(B)を採る場合には、最初、コマンドカウンタCNTを規定値(256バイトに対応する64−1)に初期設定し、DLバッファ領域BUFに、有意な指示コマンドを書き込むごとに、コマンドカウンタCNTを適宜に減算し、一連の有意な指示コマンドの書き込みが終われば、コマンドカウンタCNTがゼロになるまで、NOP コマンドを記載し、最後にEODLコマンドを記載する手法が考えられる。本実施例の場合、指示コマンドは、そのコマンド長が32bitの整数N倍(N>0)のものに限定されているので、上記の処理は容易であり、コマンドカウンタCNTの減算処理は、整数Nに対応した減算処理となる。 Here, in the case of adopting the standard method (B), first, the command counter CNT is initialized to a specified value (64-1 corresponding to 256 bytes), and every time a significant instruction command is written to the DL buffer area BUF. In addition, a method is conceivable in which the command counter CNT is appropriately subtracted, and when a series of significant instruction commands have been written, the NOP command is described until the command counter CNT becomes zero, and the EODL command is described last. In the case of the present embodiment, since the command length of the instruction command is limited to an integer N times 32 bits (N>0), the above processing is easy, and the subtraction processing of the command counter CNT is an integer. The subtraction process corresponds to N.
一方、簡易手法(A)を採る場合には、ディスプレイリストDLの作成時、最初に、リストバッファ領域(DLバッファBUF)の全てをNOP コマンドで埋めれば足りるので、一見、標準手法(B)より優れているように思われる。また、簡易性の観点では、無調整手法(C)も優れているように思われる。しかし、本実施例では、基本的に標準手法(B)を採っており、ディスプレイリストDLの先頭からEODLコマンドまでの実データ量、つまり、EODLコマンドまでのデータ量が、常に、データ転送回路72の最低データ量Dminの整数倍となるよう調整している。 On the other hand, when adopting the simple method (A), it is sufficient to first fill the entire list buffer area (DL buffer BUF) with the NOP command when creating the display list DL. Seems better. From the viewpoint of simplicity, the non-adjustment method (C) also seems to be excellent. However, in this embodiment, the standard method (B) is basically adopted, and the actual data amount from the head of the display list DL to the EODL command, that is, the data amount up to the EODL command is always the data transfer circuit 72. Is adjusted to be an integral multiple of the minimum data amount Dmin.
これは、プリローダ73を活用する実施例を考慮したものであり、もし、簡易手法(A)や無調整手法(C)を採用すると、EODLコマンドまでのディスプレイリストDLの実データ量が、ランダムな値となり、プリローダ73が書き換えた書換えリストDL’のDRAM54への転送時や、DRAM54から描画回路76への書換えリストDL’の転送時に支障が生じるからである。なお、書換えリストDL’のDRAM54への転送時には、データ転送回路72のChA制御回路72aが機能し、書換えリストDL’の描画回路76への転送時には、ChB制御回路72bが機能するが(図16参照)、何れの場合もEODLコマンドまでの書換えリストDL’しか転送しないことになる。 This is in consideration of the embodiment utilizing the preloader 73. If the simple method (A) or the non-adjustment method (C) is adopted, the actual data amount of the display list DL up to the EODL command is random. This is because the value becomes a value, and a problem occurs when the rewrite list DL′ rewritten by the preloader 73 is transferred to the DRAM 54 or when the rewrite list DL′ is transferred from the DRAM 54 to the drawing circuit 76. The ChA control circuit 72a of the data transfer circuit 72 functions when transferring the rewrite list DL′ to the DRAM 54, and the ChB control circuit 72b functions when transferring the rewrite list DL′ to the drawing circuit 76 (see FIG. 16). In any case, only the rewrite list DL' up to the EODL command is transferred.
以上、ディスプレイリストDLのデータボリューム値を調整する標準手法(B)の利点を説明したが、プリローダ73を使用しない実施例では、発行されたディスプレイリストDLは、描画回路76によって処理されるだけであるので、簡易手法(A)や無調整手法(C)の使用が何ら禁止されない。 The advantages of the standard method (B) of adjusting the data volume value of the display list DL have been described above, but in the embodiment in which the preloader 73 is not used, the issued display list DL is only processed by the drawing circuit 76. Therefore, the use of the simplified method (A) and the non-adjustment method (C) is not prohibited at all.
但し、以下の説明では、プリローダ73の使用の有無に拘らず、原則として標準手法(B)を採ることを前提に、図11に基づいて、ディスプレイリストDLの詳細について説明する。 However, in the following description, the details of the display list DL will be described based on FIG. 11 on the assumption that the standard method (B) is used in principle regardless of whether or not the preloader 73 is used.
特に限定されないが、本実施例では、ディスプレイリストDLに、先ず、メイン表示装置DS1に関する指示コマンド列(L11〜L16)を記載し、その後、サブ表示装置DS2に関する指示コマンド列(L17〜L20)を記載するようにしている。また、標準手法(B)を採用して、ディスプレイリストDLのデータボリューム値を固定長(256バイト)に調整している。なお、図11は、事実上、演出制御CPU63が、RAM59のリストバッファ領域に、指示コマンドを書き込む手順や、ディスプレイリストDLに基づく描画回路76の動作を示したものともなっている。 Although not particularly limited, in the present embodiment, the display list DL first describes the instruction command string (L11 to L16) related to the main display device DS1, and then the instruction command string (L17 to L20) related to the sub display device DS2. I am trying to describe it. Also, the standard method (B) is adopted to adjust the data volume value of the display list DL to a fixed length (256 bytes). Note that FIG. 11 also shows the procedure in which the effect control CPU 63 writes the instruction command in the list buffer area of the RAM 59 and the operation of the drawing circuit 76 based on the display list DL in effect.
図11に示す通り、ディスプレイリストDLの先頭では、環境設定系の指示コマンド(SETDAVR )を記載して、表示装置DS1のフレームバッファFBaについて、インデックス空間IDX上の左上基点アドレス(X,Y)を規定する(L11)。図7(a)に関して説明した通り、本実施例では、表示装置DS1用として、任意領域(c) に、一対のフレームバッファFBaが確保されている。そして、通常は、表示回路74にとっての有効データ領域に対応して、基点アドレス(X,Y)=(0,0)とすることで、フレームバッファFBaの先頭位置から描画回路76に活用される。 As shown in FIG. 11, at the top of the display list DL, an environment setting instruction command (SETDAVR) is described, and the upper left base point address (X, Y) on the index space IDX is set for the frame buffer FBa of the display device DS1. Specify (L11). As described with reference to FIG. 7A, in this embodiment, a pair of frame buffers FBa are secured in the arbitrary area (c) for the display device DS1. Then, normally, by setting the base point address (X, Y)=(0, 0) corresponding to the effective data area for the display circuit 74, the drawing circuit 76 is utilized from the head position of the frame buffer FBa. ..
図7(c)では、その下方左側の実描画領域にL11と付しているが、これは、指示コマンドL11によって、フレームバッファFBa上の実描画領域が、フレームバッファFBaの基点アドレス(0,0)位置から始まると特定されたことを意味している。ただし、実描画領域の縦横寸法や、その実描画領域を具体的に特定するインデックス番号は、未だ未確定であり、後述する指示コマンド(SETINDEX)L13によって確定する。なお、指示コマンドL11ではZバッファの使用の有無も指定される。 In FIG. 7C, the actual drawing area on the lower left side is labeled L11. This means that the actual drawing area on the frame buffer FBa is changed to the base address (0, 0) means that it was specified to start from the position. However, the vertical and horizontal dimensions of the actual drawing area and the index numbers that specifically specify the actual drawing area have not yet been decided, and are decided by an instruction command (SETINDEX) L13 described later. The instruction command L11 also specifies whether or not the Z buffer is used.
次に、環境設定系の指示コマンド(SETDAVF )によって、仮想描画空間上に、左上基点座標(Xs,Ys)と、右下対角点座標(Xe,Ye)を設定して、W×H寸法の描画領域を定義する(L12)。ここで、仮想描画空間とは、描画用の指示コマンド(SPRITEコマンドなど)によって描画可能な、X方向±8192、Y方向±8192の仮想的な二次元空間である(図7(c)参照)。 Next, set the upper left base point coordinates (Xs, Ys) and the lower right diagonal point coordinates (Xe, Ye) in the virtual drawing space using the environment setting system command (SETDAVF), and set W×H dimensions. The drawing area of is defined (L12). Here, the virtual drawing space is a virtual two-dimensional space of ±8192 in the X direction and ±8192 in the Y direction that can be drawn by a drawing instruction command (SPRITE command or the like) (see FIG. 7C). ..
この指示コマンドL12(SETDAVF )によって、仮想描画空間は、描画内容が実際に表示装置DS1に反映される描画領域と、その他の非描画領域に区分される。また、指示コマンドL12(SETDAVF )は、指示コマンドL11で開始位置(基点アドレス)が規定された実描画領域と、仮想描画空間上の描画領域とを対応付けることになる。 By this instruction command L12 (SETDAVF), the virtual drawing space is divided into a drawing area where the drawing contents are actually reflected on the display device DS1 and other non-drawing areas. Further, the instruction command L12 (SETDAVF) associates the actual drawing area whose start position (base point address) is specified by the instruction command L11 with the drawing area in the virtual drawing space.
この点を言い換えると、指示コマンドL12によって、(インデックス空間は未定の)フレームバッファFBaには、仮想描画空間上の描画領域に対応する、基点アドレスから始まるW×Hの実描画領域が定義されることになる。したがって、指示コマンドL12で指定する描画領域は、フレームバッファFBaの水平サイズと同一か、それ以下とする必要がある。通常、描画領域や実描画領域は、表示回路74にとっての有効データ領域(図10(d))と同寸法となるよう定義される。 In other words, the instruction command L12 defines a W×H actual drawing area starting from the base point address, which corresponds to the drawing area in the virtual drawing space, in the frame buffer FBa (index space is undecided). It will be. Therefore, the drawing area specified by the instruction command L12 must be equal to or smaller than the horizontal size of the frame buffer FBa. Usually, the drawing area and the actual drawing area are defined to have the same size as the effective data area (FIG. 10D) for the display circuit 74.
そして、描画回路76が指示コマンドL11,L12を実行した後は、仮想描画空間に描画された描画内容のうち、描画領域に含まれるものだけが、フレームバッファFBaの実描画領域に反映されることになる。したがって、描画領域からはみ出した部分や、図7(c)において作業領域と記載された部分の描画内容は、そのままでは、フレームバッファに反映されることはない。なお、仮想描画空間に作業領域を確保する場合には、仮想描画空間の非描画領域が使用される。 After the drawing circuit 76 executes the instruction commands L11 and L12, only the drawing contents included in the drawing area among the drawing contents drawn in the virtual drawing space are reflected in the actual drawing area of the frame buffer FBa. become. Therefore, the drawing contents of the portion protruding from the drawing area and the portion described as the work area in FIG. 7C are not reflected as they are in the frame buffer. When a work area is secured in the virtual drawing space, a non-drawing area in the virtual drawing space is used.
次に、今回の動作周期において、描画回路76が、これから完成させるディスプレイリストDLに基づいて描画する描画内容を何処に描画すべきかを規定する(L13)。具体的には、ダブルバッファ構成の表示装置DS1のフレームバッファFBaについて、今回のディスプレイリストDLに基づく描画内容の「書込み領域」となるインデックス空間IDXが特定される(L13)。具体的には、テクスチャ設定系のコマンドであるSETINDEXコマンドによって、(1) フレームバッファFBaは、任意領域に確保されていること、及び、(2) 「書込み領域」となるインデックス空間IDXNの任意領域上のインデックス番号Nが特定される。 Next, in the current operation cycle, the drawing circuit 76 defines where to draw the drawing content to be drawn based on the display list DL to be completed (L13). Specifically, with respect to the frame buffer FBa of the display device DS1 having the double buffer configuration, the index space IDX that is the "writing area" of the drawing content based on the display list DL this time is specified (L13). Specifically, by the SET INDEX command which is a texture setting type command, (1) the frame buffer FBa is secured in an arbitrary area, and (2) an arbitrary index space IDX N to be a "writing area" is set. The index number N on the area is specified.
この指示コマンドL13によって、例えば、N=255と特定された場合には、仮想描画空間上に定義された描画領域に対応する実描画領域は、具体的には、ダブルバッファ構造のフレームバッファFBaにおけるインデックス空間IDX255であると定義されたことになる。 For example, when N=255 is specified by the instruction command L13, the actual drawing area corresponding to the drawing area defined in the virtual drawing space is specifically the frame buffer FBa having the double buffer structure. It is defined as being the index space IDX 255 .
本実施例の場合、フレームバッファFBaのインデックス番号は、255又は254であり(図7(a))、トグル的に切り換えた何れかが指定される(L13)。なお、このインデックス番号は、メイン処理のステップST6で指定された表示領域(0)/(1)ではない方のインデック番号である。例えば、ステップST6の処理において、表示回路74に対して、表示領域(0)が指定されている場合には、表示領域(1)が、描画回路76にとっての「書込み領域」となる。 In the case of the present embodiment, the index number of the frame buffer FBa is 255 or 254 (FIG. 7(a)), and either of the toggled switching is designated (L13). The index number is the index number of the display area (0)/(1) that is not designated in step ST6 of the main process. For example, in the process of step ST6, when the display area (0) is designated for the display circuit 74, the display area (1) becomes the “writing area” for the drawing circuit 76.
以上の通り、指示コマンドL11と指示コマンドL12とで、実描画領域(W×Hの論理空間)と描画領域(W×Hの仮想空間)との対応関係が、一般的に定義された後、インデックス空間IDXを具体的に特定する指示コマンドL13(SETINDEX)によって、W×Hの仮想空間が、特定のインデックス空間IDXにおけるW×Hの論理空間であると対応付けられたことになる。 As described above, after the correspondence between the actual drawing area (W×H logical space) and the drawing area (W×H virtual space) is generally defined by the instruction commands L11 and L12, By the instruction command L13 (SET INDEX) that specifically specifies the index space IDX, the W×H virtual space is associated with the W×H logical space in the specific index space IDX.
この点を言い換えると、今後、一連の指示コマンドに基づいて、W×Hの仮想空間に仮想的に描画される内容は、仮想空間と内蔵VRAM71の実アドレスとの対応関係を規定するVDP内部の変換テーブルに基づいて、内蔵VRAM71(フレームバッファ)の画像データとなる。 In other words, in the future, based on a series of instruction commands, the contents virtually drawn in the W×H virtual space are the contents of the VDP internal that defines the correspondence between the virtual space and the real address of the internal VRAM 71. The image data of the built-in VRAM 71 (frame buffer) is obtained based on the conversion table.
続いて、「書込み領域」として、特定されたインデックス空間IDXを、例えば、黒色で塗りつぶすフレームバッファ・クリア処理を実行する指示コマンドが記載される(ST14,ST15)。これは、二動作期間前にフレームバッファFBaに書き込まれた画像データの消去処理に他ならない。 Subsequently, as the "writing area", an instruction command for executing the frame buffer clear processing for filling the specified index space IDX with, for example, black is described (ST14, ST15). This is nothing but the erasing process of the image data written in the frame buffer FBa two operation periods ago.
具体的には、環境設定コマンドの一種であるSETFCOLOR コマンドによって、例えば黒色を選択し、プリミティブ描画系コマンドであるRECTANGLE コマンドによって矩形領域を塗り潰すべく規定する。なお、RECTANGLE コマンドでは、仮想描画空間に設定された描画領域(フレームバッファFBaに対応する仮想空間)について、その左上端点と、右下端点のXY座標が指定される(図7(c)参照)。 Specifically, for example, black is selected by the SETFCOLOR command, which is one of the environment setting commands, and the rectangular area is defined by the RECTANGLE command, which is a primitive drawing system command. The RECTANGLE command specifies the XY coordinates of the upper left end point and the lower right end point of the drawing area (virtual space corresponding to the frame buffer FBa) set in the virtual drawing space (see FIG. 7C). ..
以上の処理によって、描画準備処理が完了するので、次に、静止画や動画一フレームなど、適宜なテクスチャを、仮想描画空間に描画するための指示コマンドを列記する。典型的には、先ず、テクスチャの展開先となるインデックス空間IDXを、テクスチャ設定系のSETINDEXコマンドで特定した上で、テクスチャロード系の指示コマンドであるTXLOADコマンドを記載して、CGROM55から読み出す所定のテクスチャを、所定のインデックス空間IDXに展開するようディスプレイリストDLに記載する。 Since the drawing preparation processing is completed by the above processing, next, an instruction command for drawing an appropriate texture such as a still image or one frame of a moving image in the virtual drawing space is listed. Typically, first, the index space IDX, which is the expansion destination of the texture, is specified by the SETINDEX command of the texture setting system, and then the TXLOAD command that is the instruction command of the texture loading system is described, and the predetermined read from the CGROM 55 The texture is described in the display list DL so as to be expanded in a predetermined index space IDX.
先に説明した通り、本実施例では、背景動画が、IPストリーム動画で構成されている。そこで、例えば、背景動画について、これを展開すべきインデックス空間IDXを、テクスチャ設定系のSETINDEXコマンドで、ページ領域(b) のインデックス空間IDX0と特定した上で、テクスチャロード系のTXLOADコマンドを記載する。なお、TXLOADコマンドでは、今回LOADすべき動画フレームについて、CGROM55の先頭アドレス(テクスチャのSourceアドレス)と、展開後のデータサイズ(水平×垂直)を特定する必要がある。 As described above, in this embodiment, the background moving image is composed of the IP stream moving image. So, for example, for the background video, specify the index space IDX that should be expanded as the index space IDX 0 of the page area (b) with the SETINDEX command of the texture setting system, and then describe the TXLOAD command of the texture loading system. To do. In the TXLOAD command, it is necessary to specify the start address (texture source address) of the CGROM 55 and the expanded data size (horizontal×vertical) for the moving image frame to be loaded this time.
VDP回路52において、上記のTXLOADコマンドが実行されると、背景動画の一動画フレーム(テクスチャ)は、先ず、AAC領域(a) に取得され、その後、自動的に起動するGDEC75によって、ページ領域(b) のインデックス空間IDX0に展開される。次に、この一動画フレームを仮想描画空間に描画することになる。この場合に、SETINDEXコマンド(テクスチャ設定系)によって、「ページ領域(b) のインデックス空間IDX0が、その後の処理対象のテクスチャである」と設定しても良いが、TXLOADコマンドに連続して処理する場合には、このSETINDEXコマンドの記載を省略することができる。 When the above TXLOAD command is executed in the VDP circuit 52, one moving image frame (texture) of the background moving image is first acquired in the AAC area (a), and then the page area (texture) is automatically set by the GDEC 75 which is automatically activated. It is expanded to the index space IDX 0 of b). Next, this one moving image frame is drawn in the virtual drawing space. In this case, the SET INDEX command (texture setting system) may be used to set that "the index space IDX 0 of the page area (b) is the texture to be processed thereafter", but it is processed continuously after the TXLOAD command. In this case, the description of this SET INDEX command can be omitted.
何れにしても、「ページ領域(b) のインデックス空間IDX0が、その後の処理対象のテクスチャである」と特定されている状態で、次に、αブレンド処理のためのパラメータを設定するなど、適宜な描画間演算系の指示コマンドを記載する。なお、αブレンド処理とは、既に描画領域(フレームバッファFBa)に記載されている画像と、これから上書きする画像との透明化/半透明化処理に関するものある。したがって、背景動画の動画フレームのように、第一枚目の描画動作では、描画間演算系の指示コマンドの使用は不要である。 In any case, in a state in which "the index space IDX 0 of the page area (b) is the texture to be processed thereafter" is set, the parameter for the α blending process is set next. Describe an appropriate command command for the inter-drawing calculation system. The α blending process relates to a transparency/translucency process of an image already written in the drawing area (frame buffer FBa) and an image to be overwritten. Therefore, unlike the moving image frame of the background moving image, it is not necessary to use the instruction command of the inter-drawing calculation system in the first drawing operation.
続いて、プリミティブ描画系の指示コマンドであるSPRITEコマンドによって、「ページ領域(b) のインデックス空間IDX0のテクスチャ(背景動画の一動画フレーム)」を、仮想描画空間の適所(矩形のDestination 領域)に描画するべくSPRITEコマンドを記載する。なお、SPRITEコマンドには、仮想描画空間のDestination 領域について、その左上端点と、右下端点を特定する必要がある。 Then, the "texture of index space IDX 0 of the page area (b) (one moving image frame of the background video)" is set in the virtual drawing space (rectangular Destination area) by the SPRITE command which is an instruction command of the primitive drawing system. Describe the SPRITE command to draw in. In the SPRITE command, it is necessary to specify the upper left end point and the lower right end point of the Destination area in the virtual drawing space.
このDestination 領域は、予め、指示コマンドL11,L12によって、実描画領域(FBa)に対応付けられた描画領域(仮想描画空間上に定義された仮想空間)の全体又はその一部である。但し、背景動画は、通常、表示画面全体に描画するので、このような場合のDestination 領域は、描画領域の全体又はそれ以上となる。なお、Destination 領域が、描画領域の全体より大きい場合とは、例えば、背景動画がズームアップされる場合である。 This Destination area is the whole or a part of the drawing area (the virtual space defined on the virtual drawing space) associated with the actual drawing area (FBa) in advance by the instruction commands L11 and L12. However, since the background moving image is usually drawn on the entire display screen, the Destination area in such a case is the entire drawing area or more. Note that the case where the Destination area is larger than the entire drawing area is, for example, when the background moving image is zoomed up.
以上の処理によって、背景動画の動画フレームの描画が終わったので、続いて、テクスチャロード系、テクスチャ設定系、描画間演算系、プリミティブ描画系コマンドなどの指示コマンドを適宜な順番で列記して、背景動画に重ねて、各種のテクスチャを描画するべくディスプレイリストDLを構成することになる。先に説明したように、変動演出時では、多数の動画が必要となるので、その場合には、内蔵VRAM71のページ領域(b) について、インデックス空間IDXを増加するべく、インデックステーブル制御系の指示コマンド(NEWPIX)を記載することになる。 With the above processing, the drawing of the video frame of the background video is completed, so next, list the instruction commands such as texture load system, texture setting system, inter-drawing operation system, primitive drawing system command in an appropriate order, The display list DL is configured to draw various textures on the background moving image. As described above, since a large number of moving images are required at the time of changing performance, in that case, the index table control system instruction is issued to increase the index space IDX for the page area (b) of the built-in VRAM 71. The command (NEWPIX) will be described.
例えば、二つ目のIPストリーム動画に関し、NEWPIXコマンドによって、ページ領域(b) に、追加のインデックス空間IDX1を確保した後、このインデックス空間IDX1を特定して(SETINDEX)、二つ目の動画の一フレームの展開を指示し(TXLOAD)、展開したテクスチャを描画領域の適所に配置する(SPRITE)。通常、この場合のDestination 領域は、描画領域の一部となる。 For example, regarding the second IP stream moving image, after the additional index space IDX 1 is secured in the page area (b) by the NEWPIX command, this index space IDX 1 is specified (SETINDEX), and the second Instruct the development of one frame of the video (TXLOAD), and place the developed texture in the proper place in the drawing area (SPRITE). Normally, the Destination area in this case is a part of the drawing area.
以下、同様であり、NEWPIXコマンドによって、次々、インデックス空間IDXkを確保した後、適宜なαブレンド処理を実行しつつ、複数のIPストリームを描画領域に描画すれば、描画領域への描画内容は、実描画領域であるフレームバッファFBaに画像データとして順次蓄積されることになる。複数N個のIPストリーム動画が描画されている演出時には、ページ領域(b) において、複数N個のインデックス空間が機能している。 This is the same as the following, and after the index space IDX k is secured by the NEWPIX command one after another, if a plurality of IP streams are drawn in the drawing area while performing appropriate α blending processing, the drawing content in the drawing area will be The image data is sequentially stored in the frame buffer FBa, which is an actual drawing area. When rendering a plurality of N IP stream moving images, a plurality N of index spaces are functioning in the page area (b).
そして、一連の変動演出が終了したような場合には、ページ領域(b) に確保した多数のインデックス空間IDX1〜IDXkのうち、不要と思われるインデックス空間IDXを開放するべく、DELPIXコマンドによって不要なインデックス空間IDXを削除すれば良い。 Then, when a series of variation effects are completed, the DELPIX command is used to release the index space IDX that is considered unnecessary among the many index spaces IDX 1 to IDX k secured in the page area (b). The unnecessary index space IDX may be deleted.
なお、静止画やIストリーム動画を描画する場合には、SETINDEXコマンドによって、これらのテクスチャのデコード先が、AAC領域(a) であると指定した上で、TXLOADコマンドを実行させれば、AAC領域(a) に取得されたテクスチャは、その後、自動的に起動するGDEC75によってACC領域(a) に展開される。そして、展開されたテクスチャは、SPRITEコマンドによって、描画領域の適所に描画すれば良い。なお、キャッシュヒット機能を活用するか否かに応じて、第一AAC領域(a1)か、第二AAC領域(a2)が使用される。 When drawing a still image or an I-stream moving image, the SETINDEX command is used to specify that these textures are to be decoded in the AAC area (a), and then the TXLOAD command is executed. The texture acquired in (a) is then developed in the ACC area (a) by the GDEC 75 which is automatically activated. Then, the developed texture may be drawn at a proper place in the drawing area by the SPRITE command. The first AAC area (a1) or the second AAC area (a2) is used depending on whether or not the cache hit function is used.
ここまでの説明では、各テクスチャは、直接的に、メイン表示装置用DS1の描画領域に描画されるが、必ずしも、このような動作に限定されない。例えば、既に表示装置DS1用に確保されている描画領域に重複しない状態で、適宜な描画領域を設け(図7(c))、この描画領域を内蔵VRAM71の作業領域に対応付ければ、中間的な描画領域を構築して、適宜な演出画像を完成させることができる。ここで、表示装置DS1用の描画領域と重複しない状態とするのは、重複領域については、後の対応付け設定が優先され、その領域への描画内容がフレームバッファFBaに反映されないからである。 In the above description, each texture is directly drawn in the drawing area of the DS1 for the main display device, but the operation is not necessarily limited to this. For example, if an appropriate drawing area is provided without overlapping with the drawing area already reserved for the display device DS1 (FIG. 7C) and this drawing area is associated with the work area of the built-in VRAM 71, it becomes an intermediate value. An appropriate rendering image can be completed by constructing various drawing areas. Here, the reason why the drawing area for the display device DS1 does not overlap is that the subsequent correspondence setting is prioritized for the overlapping area, and the drawing content in that area is not reflected in the frame buffer FBa.
図7(c)に示す通り、本実施例の作業領域は、任意領域(c) におけるインデックス空間IDX0である。そして、この作業領域を使用する演出タイミングでは、先行して、演出画像用の描画領域(図7(c)参照)を、作業領域(インデックス空間IDX0の実描画領域)に対応付けるための指示コマンド列(SETDAVR ,SETDAVF ,SETINDEX)を記載しておく。図7(c)に示す通り、演出画像用の描画領域は、メイン表示装置DS1用の描画領域に含まれない領域に確保される。 As shown in FIG. 7C, the work area of this embodiment is the index space IDX 0 in the arbitrary area (c). Then, at an effect timing using this work area, an instruction command for associating the drawing area for the effect image (see FIG. 7C) with the work area (actual drawing area of the index space IDX 0 ) in advance. List the columns (SETDAVR, SETDAVF, SETINDEX). As shown in FIG. 7C, the drawing area for the effect image is secured in an area not included in the drawing area for the main display device DS1.
そして、その後は、フレームバッファFBaに関する指示コマンド列L16と同様の指示コマンドを列記して、インデックス空間IDX0に、適宜な演出画像を完成させれば良い。本実施例の場合、演出画像は、静止画で構成されるので、デコードデータは第一AAC領域(a1)に展開されるよう指示コマンド(SETINDEX)が記載され、次に、インデックス空間IDX0の描画領域の適所をDestination とするプリミティブ描画系の指示コマンド(SPRITE)が使用されることになる。なお、このような動作は、演出内容に応じて、一回又は複数回繰り返される。 Then, after that, an instruction command similar to the instruction command row L16 regarding the frame buffer FBa is listed, and an appropriate effect image may be completed in the index space IDX 0 . In the case of the present embodiment, since the effect image is composed of a still image, an instruction command (SETINDEX) is described so that the decoded data is expanded in the first AAC area (a1), and then the index space IDX 0 The primitive drawing command (SPRITE) that uses the destination in the drawing area as the destination will be used. It should be noted that such an operation is repeated once or a plurality of times depending on the effect contents.
そして、演出画像を完成させたインデックス空間IDX0をテクスチャと位置付けた後(SETINDEX)、SPRITEコマンドによって、メイン表示装置用DS1の描画領域の適所に、インデックス空間IDX0の演出画像(テクスチャ)を描画すれば良い。このような場合、インデックス空間IDX0の演出画像を、三角形の描画プリミティブ(primitive )に分解し、適宜な角度に回転させた上で、描画領域に描画することが考えられる。なお、テクスチャの回転角度は、例えば、予告演出の信頼度などに対応付けられる。 Then, after the index space IDX 0 that has completed the effect image is positioned as a texture (SETINDEX), the effect image (texture) of the index space IDX 0 is drawn in the drawing area of the DS1 for the main display device by the SPRITE command. Just do it. In such a case, it is conceivable that the effect image of the index space IDX 0 is decomposed into triangular drawing primitives, rotated at an appropriate angle, and then drawn in the drawing area. The rotation angle of the texture is associated with, for example, the reliability of the notice effect.
以上、メイン表示装置DS1の一フレームを完成させるための指示コマンド列(L11〜L16)について説明したが、サブ表示装置DS2の一フレームを完成させるための指示コマンド列(L17〜L12)についても、同様である。すなわち、フレームバッファFBbの開始XY座標を特定し(L17)を定義し(通常はX=0,Y=0)、図7(c)に示す仮想描画空間上に、サブ表示装置DS2のための描画領域を定義する(L18)。 Although the instruction command sequence (L11 to L16) for completing one frame of the main display device DS1 has been described above, the instruction command sequence (L17 to L12) for completing one frame of the sub display device DS2 is also described. It is the same. That is, the start XY coordinates of the frame buffer FBb are specified (L17) is defined (usually X=0, Y=0), and the sub display device DS2 for the virtual drawing space shown in FIG. The drawing area is defined (L18).
ところで、本実施例では、メイン表示装置DS1用の画像データの生成を終えた後、サブ表示装置DS2用の生成処理に移行するので、サブ表示装置DS2用の描画領域が、メイン表示装置DS1用の描画領域と重複しても何の問題もなく、描画領域を自由に設定することができる。そのため、ディスプレイリストDLの生成プログラムの開発時、例えば、SPRITEコマンドで、新規に設定された描画領域に適宜なテクスチャを貼り付けるような場合、SPRITEコマンドの動作パラメータ(Destination 領域)の設定その他を、ある程度、定型化することができる。 By the way, in the present embodiment, after the generation of the image data for the main display device DS1 is completed, the process proceeds to the generation process for the sub display device DS2, so the drawing area for the sub display device DS2 is for the main display device DS1. There is no problem even if the drawing area overlaps with the drawing area, and the drawing area can be freely set. Therefore, when developing a program for generating the display list DL, for example, when an appropriate texture is pasted to a newly set drawing area with the SPRITE command, setting of the operation parameter (Destination area) of the SPRITE command, etc. It can be stylized to some extent.
このような任意の描画領域の定義が終われば(L18)、次に、ダブルバッファ構成の表示装置DS2のフレームバッファFBbについて、今回のディスプレイリストDLに基づく描画内容の「書込み領域」となるインデックス空間IDXを特定する(L19)。このインデックス空間IDXのインデックス番号は、フレームバッファFBbに関し、メイン処理のステップST6で指定された表示領域(0)/(1)に対応しない方のインデック番号である。 When the definition of such an arbitrary drawing area is completed (L18), next, for the frame buffer FBb of the display device DS2 having the double buffer configuration, an index space to be a "writing area" of the drawing content based on the current display list DL. The IDX is specified (L19). The index number of this index space IDX is the index number of the frame buffer FBb that does not correspond to the display area (0)/(1) designated in step ST6 of the main processing.
そして、その後、サブ表示装置DS2についての指示コマンド列L20〜L22が、メイン表示装置DS1に関する指示コマンド列L14〜L16と同様に列記される。また、インデックス空間IDX0に完成させた演出画像を使用することもできる。 Then, thereafter, the instruction command strings L20 to L22 for the sub display device DS2 are listed similarly to the instruction command strings L14 to L16 for the main display device DS1. Also, the effect image completed in the index space IDX 0 can be used.
以上、ディスプレイリストDLを構成するL11〜L22の指示コマンドは、本実施例では、全て、コマンド長が32ビットの整数倍のものに限定されている。そして、先に説明した通り、本実施例のディスプレイリストDLのデータボリューム値(データ総量)を、固定長(256バイト)に調整しており、ダミーコマンドたる必要数のNOP コマンド(L23)を付加した上で、EODLコマンド(L24)で終結させている。すなわち、図11の実施例では、前記した標準手法(B)を採っている。 As described above, in the present embodiment, all of the instruction commands of L11 to L22 forming the display list DL are limited to those having a command length of an integral multiple of 32 bits. Then, as described above, the data volume value (total data amount) of the display list DL of the present embodiment is adjusted to a fixed length (256 bytes), and the necessary number of NOP commands (L23) that are dummy commands are added. Then, it is terminated by the EODL command (L24). That is, in the embodiment of FIG. 11, the standard method (B) described above is adopted.
但し、標準手法(B)を採る場合でも、全ての動作周期において、ディスプレイリストDLのデータ総量を256バイトと固定化することは必ずしも必須ではない。すなわち、別の実施例では、NOP コマンドを除くディスプレイリストDLのデータ総量が、256バイトを超える場合(例えば、特別な演出期間)には、ディスプレイリストDLのデータ総量は、NOP コマンドを付加することで、512バイト又はそれ以上のN×256バイトに調整される。なお、標準手法(B)を採る場合、N×256バイトの最後はEODLコマンドで終端されることは先に説明した通りである。 However, even if the standard method (B) is adopted, it is not always necessary to fix the total data amount of the display list DL to 256 bytes in all operation cycles. That is, in another embodiment, when the total data amount of the display list DL excluding the NOP command exceeds 256 bytes (for example, a special performance period), the NOP command is added to the total data amount of the display list DL. , 512 bytes or more, adjusted to N×256 bytes. Note that, when the standard method (B) is adopted, the end of N×256 bytes is terminated by the EODL command, as described above.
以上、ディスプレイリストDLの構成について詳細に説明したが、演出制御CPU63は、完成させた固定バイト長のディスプレイリストDLをVDP回路に発行することになる(ST7〜ST8)。図12は、演出制御CPU63が、転送回路72の転送ポートレジスタTR_PORT を直接Write アクセスして、描画回路76にディスプレイリストDLを発行するDL発行処理(図10のST8)を説明するフローチャートである。なお、転送ポートレジスタTR_PORT は、データ転送回路72の動作内容を規定するデータ転送レジスタRGijの一種である。 Although the configuration of the display list DL has been described in detail above, the effect control CPU 63 issues the completed display list DL having a fixed byte length to the VDP circuit (ST7 to ST8). FIG. 12 is a flowchart illustrating a DL issuing process (ST8 in FIG. 10) in which the effect control CPU 63 directly Write-accesses the transfer port register TR_PORT of the transfer circuit 72 to issue the display list DL to the drawing circuit 76. The transfer port register TR_PORT is a kind of the data transfer register RGij that defines the operation content of the data transfer circuit 72.
DL発行処理を実現するには、先ず、データ転送回路72の動作内容を規定する複数のデータ転送レジスタRGijに、必要な設定値を設定する必要がある。具体的には、データ転送回路72の転送動作態様と、データ転送回路72内部の伝送経由と、を所定のデータ転送レジスタRGijに特定する。設定内容は、特に限定されないが、ここでは、CPUIF部56からChB制御回路72bを経由すること、及び、CPUバス制御部72dに関し、そのFIFOバッファの残量をチェックしながらデータ転送動作を実行すると設定する(ST20)。なお、以下の説明では、ChB制御回路72bを、便宜上、「転送回路ChB」と略すことがある。 In order to realize the DL issuing process, first, it is necessary to set necessary setting values in a plurality of data transfer registers RGij that define the operation content of the data transfer circuit 72. Specifically, the transfer operation mode of the data transfer circuit 72 and the transmission via the inside of the data transfer circuit 72 are specified in a predetermined data transfer register RGij. Although the setting contents are not particularly limited, here, when the data transfer operation is executed while checking the remaining amount of the FIFO buffer with respect to the CPUIF controller 56 via the ChB control circuit 72b and the CPU bus controller 72d. Set (ST20). In the following description, the ChB control circuit 72b may be abbreviated as "transfer circuit ChB" for convenience.
次に、転送総サイズを、所定のデータ転送レジスタRGijに設定する。先に説明した通り、本実施例では、ディスプレイリストDLのデータ総量を256バイトの整数倍に調整しているので、その値を設定する。なお、データ総量=256×Nは、データ転送回路72の最低データ量Dminの整数N倍にもなっている。通常、倍数Nは、1又は2であるが、以下の説明では、N=1として説明することにする。 Next, the total transfer size is set in a predetermined data transfer register RGij. As described above, in this embodiment, the total amount of data in the display list DL is adjusted to an integral multiple of 256 bytes, so that value is set. The total data amount=256×N is an integer N times the minimum data amount Dmin of the data transfer circuit 72. Normally, the multiple N is 1 or 2, but in the following description, N=1 will be described.
ここで、転送ポートレジスタTR_PORT (以下、転送ポートと略すことがある)は、32bit長のレジスタであるので、演出制御CPU63は、32bit毎に、転送ポートTR_PORT に対して、レジスタWrite 動作を実行することになる。そこで、レジスタWrite 回数を管理する管理カウンタCNの値を64の初期設定する(ST21)。なお、無調整手法(C)を採る場合は、このタイミングで、最低データ量Dminの整数倍のデータ転送量を決定して、管理カウンタCNを設定することになる。 Here, since the transfer port register TR_PORT (hereinafter, may be abbreviated as a transfer port) is a register having a length of 32 bits, the effect control CPU 63 executes a register Write operation to the transfer port TR_PORT every 32 bits. It will be. Therefore, the value of the management counter CN that manages the number of register writes is initialized to 64 (ST21). When the non-adjustment method (C) is adopted, the data transfer amount that is an integral multiple of the minimum data amount Dmin is determined and the management counter CN is set at this timing.
以上の処理で初期設定が完了するので、次に、転送回路ChBを経由するデータ転送動作を開始状態に設定すると共に(ST22)、描画回路76の動作を規定する所定の描画レジスタRGijへの設定値に基づいて、描画動作を開始させる(ST23)。この結果、その後、演出制御CPU63が、転送ポートTR_PORT にレジスタWrite 動作する指示コマンド列について、描画回路76(ディスプレイリストアナライザ)による迅速かつ円滑なAnalyze 処理が担保される。 Since the initial setting is completed by the above processing, next, the data transfer operation via the transfer circuit ChB is set to the start state (ST22), and the setting to the predetermined drawing register RGij defining the operation of the drawing circuit 76 is performed. The drawing operation is started based on the value (ST23). As a result, after that, the effect control CPU 63 secures a quick and smooth Analyze process by the drawing circuit 76 (display list analyzer) for the instruction command sequence for performing the register Write operation to the transfer port TR_PORT.
なお、迅速かつ円滑なAnalyze 処理には、ディスプレイリストDLに列記する指示コマンドが、コマンド長32bit整数倍の指示コマンドに限定されている点も有効に寄与する。図18(a)におけるタイミングt1,t2,t3,t4は、ステップST23の動作タイミングを示している。なお、ディスプレイリストDLの発行処理(ST8)は、素早く終わるので、図18〜図19では発行処理の要する時間幅を記載していない。 Note that the prompt and smooth Analyze processing effectively contributes to the fact that the command commands listed in the display list DL are limited to command commands having a command length of 32 bits, which is an integral multiple. Timings t1, t2, t3, and t4 in FIG. 18A indicate the operation timing of step ST23. Since the display list DL issuing process (ST8) ends quickly, FIGS. 18 to 19 do not describe the time width required for the issuing process.
続いて、ステップST22の設定が機能したか否かを確認する(ST24)。これは、データ転送回路72の各部の初期設定は、演出制御CPU63によるレジスタWrite 動作(設定動作)より処理時間がかかるので、不完全な状態のデータ転送回路72に対して、その後の指示を与えないためである。そして、万一、所定時間、待機しても動作開始状態にならない場合には、重大異常フラグABNをセットしてDL発行処理を終える(ST25)。その結果、その後、ウォッチドッグタイマ58が機能して、複合チップ50は異常リセットされる(ST10)。 Then, it is confirmed whether the setting of step ST22 worked (ST24). This is because the initial setting of each part of the data transfer circuit 72 requires more processing time than the register write operation (setting operation) by the effect control CPU 63, and therefore, the subsequent instruction is given to the data transfer circuit 72 in an incomplete state. Because there is no. If the operation start state is not reached even after waiting for a predetermined time, the serious abnormality flag ABN is set and the DL issuing process is terminated (ST25). As a result, thereafter, the watchdog timer 58 functions and the composite chip 50 is abnormally reset (ST10).
但し、通常は、ステップST22の設定は、迅速に完了するので、続いて、CPUバス制御部72dのFIFOバッファ(32bit×130段)について、FIFOバッファが満杯でないことを確認した上で(ST26)、ディスプレイリストDLを構成する先頭行から順番に、一行ごとに転送ポートTR_PORT に指示コマンドを書込む(ST28)。 However, normally, the setting in step ST22 is completed quickly, and then, after confirming that the FIFO buffer of the CPU bus control unit 72d (32 bits×130 stages) is not full (ST26). , Instructing commands are written in the transfer port TR_PORT line by line in order from the first line forming the display list DL (ST28).
そして、管理カウンタCNをデクリメントしつつ(ST29)、管理カウンタCNがゼロになるまで、ステップST26〜ST29の処理を繰り返す(ST30)。この実施例の場合、データ転送回路72には、最低データ量Dminが規定されているので、FIFOバッファに最低データ量Dminが蓄積されたタイミングで、データ転送動作が実行されることになり、間欠的な転送動作となる。 Then, while decrementing the management counter CN (ST29), the processes of steps ST26 to ST29 are repeated (ST30) until the management counter CN becomes zero. In the case of this embodiment, since the minimum data amount Dmin is defined in the data transfer circuit 72, the data transfer operation is executed at the timing when the minimum data amount Dmin is accumulated in the FIFO buffer, and the intermittent operation is performed. Transfer operation.
何れにしても、本実施例では、迅速にDL発行処理(ST28)が完了するが、万一、ノイズなどの影響でVDPレジスタRGijへの設定内容が矛盾したような場合には、ステップST26の判定において、所定時間待機してもFIFOバッファFullの状態が解消されない場合もあり得る。そして、そのような場合には、所定のVDPレジスタRGijに初期化データをセットして、描画回路76とデータ転送回路72を初期化した上で、重大異常フラグABNをセットしてDL発行処理を終える(ST27)。 In any case, in this embodiment, the DL issuing process (ST28) is completed promptly, but if the setting contents in the VDP register RGij are inconsistent due to the influence of noise or the like, in step ST26. In the determination, the state of the FIFO buffer Full may not be resolved even after waiting for a predetermined time. Then, in such a case, the initialization data is set in a predetermined VDP register RGij to initialize the drawing circuit 76 and the data transfer circuit 72, and then the serious abnormality flag ABN is set to execute the DL issuing process. Finish (ST27).
ところで、このタイミングでは、データ転送回路72や、描画回路76は、既に動作を開始しており、ある程度の処理を終えているので、描画回路76の初期化処理には、描画レジスタRGijの内容を維持した状態で、(1) ディスプレイリストDLによって設定される可能性のある全ての内部パラメータを初期値に設定すること、(2) 全ての内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化することが含まれている。同様に、データ転送回路72の初期化処理には、FIFOバッファのクリアなど、それまでのデータ転送全体の初期化処理が含まれている。この結果、データ転送回路72の動作状態を示すステイタス情報が所定値(データ転送全体初期化中を示す値)に変化する。 By the way, at this timing, the data transfer circuit 72 and the drawing circuit 76 have already started their operations and have completed a certain amount of processing, so the contents of the drawing register RGij are set for the initialization processing of the drawing circuit 76. While maintaining the state, (1) set all internal parameters that may be set by the display list DL to initial values, (2) set all internal control circuits to initial states, (3) This includes initializing the GDEC 75 and (4) initializing the cache state of the AAC area. Similarly, the initialization processing of the data transfer circuit 72 includes the initialization processing of the entire data transfer until then, such as clearing the FIFO buffer. As a result, the status information indicating the operation state of the data transfer circuit 72 changes to a predetermined value (a value indicating that the entire data transfer is being initialized).
なお、上記したステップST27の初期化処理では、描画レジスタRGijの内容を維持したが、所定の描画レジスタについては、その内容を初期化しても良い。初期値にクリアされる所定の描画レジスタには、(a) 描画実行開始を設定する実行制御レジスタ(図12のST23参照)、(b) 描画回路76の実行状況を示すステイタスレジスタ、及び、(c) 現在処理しているディスプレイリストの位置を特定するステイタスレジスタが含まれる。 Although the contents of the drawing register RGij are maintained in the initialization process of step ST27 described above, the contents of a predetermined drawing register may be initialized. The predetermined drawing register that is cleared to the initial value includes (a) an execution control register that sets the start of drawing execution (see ST23 in FIG. 12), (b) a status register that indicates the execution status of the drawing circuit 76, and ( c) Contains a status register that identifies the position of the display list currently being processed.
何れにしても、重大異常フラグABNをセットした結果、その後、ウォッチドッグタイマ58が機能して、複合チップ50は異常リセットされるので(ST10)、描画回路76やデータ転送回路72を初期化する処理は必ずしも必須ではない。一方、描画回路76やデータ転送回路72を初期化する場合には、その結果、異常回復が期待できるので、重大異常フラグABNをセットすることなく、ステップST20の処理に戻ってDL発行処理を再実行するのも好適である。 In any case, as a result of setting the serious abnormality flag ABN, the watchdog timer 58 then functions and the composite chip 50 is abnormally reset (ST10), so that the drawing circuit 76 and the data transfer circuit 72 are initialized. Processing is not always essential. On the other hand, when the drawing circuit 76 and the data transfer circuit 72 are initialized, as a result, abnormal recovery can be expected, so the process returns to step ST20 without setting the serious abnormal flag ABN, and the DL issuing process is restarted. It is also suitable to carry out.
この点は、ステップST25の処理においても同様であり、データ転送回路72や描画回路76を初期化した上で、重大異常フラグABNをセットすることなく、ステップST20の処理に戻るもの好適である。但し、このような場合には、DL発行処理の再実行回数をカウントし、再実行回数が限界値を越えれば、重大異常フラグABNをセットしてDL発行処理を終えることになる。 This point is the same in the process of step ST25, and it is preferable that the data transfer circuit 72 and the drawing circuit 76 are initialized and then the process returns to step ST20 without setting the serious abnormality flag ABN. However, in such a case, the number of re-executions of the DL issuance process is counted, and if the number of re-executions exceeds the limit value, the serious abnormality flag ABN is set and the DL issuance process is terminated.
図12(b)は、正常な動作状態について、確認的に図示したものである。図示の通り、発行されたディスプレイリストDLは、列記された指示コマンドの順番に、描画回路76(ディスプレイリストアナライザ)によって解析され、各指示コマンドに基づく動作が実行される。この動作は、ディスプレイリストDLの発行処理や、データ転送回路72のデータ転送動作(ST26〜ST30)に並行して実行される。 FIG. 12B is a diagram for confirming the normal operation state. As illustrated, the issued display list DL is analyzed by the drawing circuit 76 (display list analyzer) in the order of the listed instruction commands, and the operation based on each instruction command is executed. This operation is executed in parallel with the issue processing of the display list DL and the data transfer operation (ST26 to ST30) of the data transfer circuit 72.
例えば、指示コマンド(TXLOAD)が実行されることで、CGROM55から必要なテクスチャが読み出されてAAC領域(a) に取得され、その後、GDEC75が自動的に起動してデコード動作が実行され、デコード後のデータが所定のインデックス空間に展開される。また、指示コマンドによっては、ジオメトリエンジン77その他が機能するが、何れにしても、描画回路76の各部が協働することで、ディスプレイリストDLに対応する画像データがフレームバッファFBa,FBbに完成されることになる。 For example, when the instruction command (TXLOAD) is executed, the required texture is read from the CGROM 55 and acquired in the AAC area (a), and then the GDEC 75 is automatically activated to execute the decoding operation and Later data is expanded in a predetermined index space. Further, depending on the instruction command, the geometry engine 77 or the like functions, but in any case, the image data corresponding to the display list DL is completed in the frame buffers FBa and FBb by the cooperation of the respective units of the drawing circuit 76. Will be.
続いて、DMAC回路60を介在させてディスプレイリストDLを発行する場合を、図13に基づいて説明する。何ら限定されないが、DMAC回路60に内蔵された第1〜第4のDMAチャンネルのうち、第3のDMAチャンネルを使用することにする。 Next, the case of issuing the display list DL via the DMAC circuit 60 will be described with reference to FIG. Although not limited in any way, of the first to fourth DMA channels built in the DMAC circuit 60, the third DMA channel is used.
図13の実施例では、先ず、所定のデータ転送レジスタRGijと、所定の描画レジスタRGijに各々クリア値を設定して、データ転送回路72と、描画回路76を初期化する(ST20)。この処理は、図12のステップST27のエラー処理と同じであり、FIFOバッファを含んだデータ転送回路72の内部回路が初期化され、データ転送の進行状態を示すデータ転送レジスタのステイタスビットが初期値となり、データ転送全体を初期化中であることを示すビットが所定値となる。 In the embodiment of FIG. 13, first, a clear value is set in each of the predetermined data transfer register RGij and the predetermined drawing register RGij, and the data transfer circuit 72 and the drawing circuit 76 are initialized (ST20). This process is the same as the error process of step ST27 of FIG. 12, the internal circuit of the data transfer circuit 72 including the FIFO buffer is initialized, and the status bit of the data transfer register indicating the progress of the data transfer is initialized. Thus, the bit indicating that the entire data transfer is being initialized has a predetermined value.
描画回路76についても同様であり、上記した(1) 内部パラメータを初期値に設定すること、(2) 内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化する処理が含まれている。また、描画回路の初期化処理(図13のST20)においても、前記した所定の描画レジスタRGijを初期化しても良い。なお、図12の処理において、このような初期化処理を最初に実行しても良い。 The same applies to the drawing circuit 76. (1) Setting the internal parameters to the initial values, (2) Setting the internal control circuit to the initial state, (3) Initializing the GDEC 75, (4) ) A process for initializing the cache state of the AAC area is included. Further, also in the initialization processing of the drawing circuit (ST20 in FIG. 13), the above-mentioned predetermined drawing register RGij may be initialized. In the process of FIG. 12, such an initialization process may be executed first.
図13の処理では、次に、初期化処理が正常に完了したことを、データ転送回路72と描画回路76の動作状態を特定する所定のステイタスレジスタRGijをReadして確認する(ST21)。そして、万一、初期化できない場合には、重大異常フラグABNをセットして処理を終える(ST22)。但し、このような事態は、実際にはほぼ発生しない。 In the process of FIG. 13, next, it is confirmed that the initialization process is normally completed by reading a predetermined status register RGij that specifies the operation states of the data transfer circuit 72 and the drawing circuit 76 (ST21). If the initialization cannot be performed, the serious abnormality flag ABN is set and the process is terminated (ST22). However, such a situation hardly occurs in reality.
次に、データ転送回路72の転送動作態様と、データ転送回路72内部の伝送経由とを、所定のデータ転送レジスタRGijに設定する。設定内容は、特に限定されないが、ここでは、CPUIF部56からChB制御回路72bを経由すること、及び、CPUバス制御部72dへの転送プロトコルに関し、DMAC回路60への設定に従うと設定する(ST23)。 Next, the transfer operation mode of the data transfer circuit 72 and the transmission via the data transfer circuit 72 are set in a predetermined data transfer register RGij. The setting content is not particularly limited, but here, it is set according to the setting in the DMAC circuit 60 regarding the passage from the CPUIF unit 56 through the ChB control circuit 72b and the transfer protocol to the CPU bus control unit 72d (ST23. ).
次に、転送総サイズを、所定のデータ転送レジスタRGijに設定する。図12の場合と同様、データ総量=256となる。なお、無調整手法(C)を採る場合は、このタイミングで、最低データ量Dminの整数倍の転送総サイズを決定して設定することになる。次に、所定の描画レジスタRGijへの設定値に基づいて、描画回路76の描画動作を開始させる(ST25)。図18(a)におけるタイミングt1,t2,t3,t4は、ステップST25の動作タイミングでもある。そして次に、DMAC回路60の動作を開始させた上で(ST26)、データ転送回路72のデータ転送動作を開始させる(ST27)。 Next, the total transfer size is set in a predetermined data transfer register RGij. As in the case of FIG. 12, the total amount of data=256. When the non-adjustment method (C) is adopted, the transfer total size that is an integral multiple of the minimum data amount Dmin is determined and set at this timing. Next, the drawing operation of the drawing circuit 76 is started based on the set value in the predetermined drawing register RGij (ST25). Timings t1, t2, t3, t4 in FIG. 18A are also operation timings in step ST25. Then, after the operation of the DMAC circuit 60 is started (ST26), the data transfer operation of the data transfer circuit 72 is started (ST27).
DMAC回路60の動作を開始処理は、図13(b)に示す通りであり、先ず、DMAC転送を禁止した状態で、一サイクルのデータ転送単位(1オペランド)の転送が完了するのを待つ(ST40)。詳細な動作内容は、図14に示す処理と同じであり、DMAC転送を禁止設定する処理(ST53)と、その後の待機処理(ST54)に区分される。 The process for starting the operation of the DMAC circuit 60 is as shown in FIG. 13B. First, in the state where the DMAC transfer is prohibited, the completion of the transfer of one cycle of data transfer unit (1 operand) ( ST40). The detailed operation content is the same as the process shown in FIG. 14, and is divided into a process of setting the DMAC transfer to be prohibited (ST53) and a standby process thereafter (ST54).
このような処理を設けるのは、(1) 他の実施例では、メイン処理やタイマ割込み処理(図10)で、DMAC回路60(第3のDMAチャンネル)を使用する可能性があること、及び、(2) 図10のステップST5の処理を設けない他の実施例において、ディスプレイリストDLの発行を開始したDMAC回路60が、その動作周期(δ)内ではDL発行動作を終了できない場合もあり得ることなどを考慮したものである。 Such processing is provided (1) In another embodiment, the DMAC circuit 60 (third DMA channel) may be used in the main processing and the timer interrupt processing (FIG. 10), and (2) In another embodiment in which the process of step ST5 of FIG. 10 is not provided, the DMAC circuit 60 that has started issuing the display list DL may not be able to complete the DL issuing operation within its operation cycle (δ). It is to consider what to obtain.
上記のような例外事態において、動作中のDMAC回路60に対して、新規の設定値(矛盾する設定値など)を追加的に設定すると、正常なDMA動作が全く担保されず、深刻なトラブルが懸念されるが、ステップST40の処理を設けることで、その後の設定値に基づく正常動作が担保される。すなわち、本実施例を一部変更した変更実施例でも、先行するトラブルに拘らず、その後の正常なDMA動作を実現することができる。 In the exceptional situation as described above, if a new setting value (inconsistent setting value or the like) is additionally set to the operating DMAC circuit 60, normal DMA operation is not guaranteed at all, and serious trouble occurs. Although there is a concern, provision of the process of step ST40 ensures the normal operation based on the subsequent set value. That is, even in the modified embodiment in which this embodiment is partially modified, the normal DMA operation thereafter can be realized regardless of the preceding trouble.
以上のような意義を有するステップST40の処理を実行すれば、次に、DMAC回路60の動作条件を設定する(ST41)。具体的には、図6に示す通り、サイクルスチール転送モードを選択し、一オペランド転送を32bit転送×2回とする。また、Sourceアドレスは、RAM59のリストバッファ領域(DLバッファBUF)のアドレスであるので順次増加と認識すべきこと、一方、Destination アドレスは、転送ポートTR_PORT であるため固定値とすべきことを規定する。 If the process of step ST40 having the above meaning is executed, then the operating condition of the DMAC circuit 60 is set (ST41). Specifically, as shown in FIG. 6, the cycle steal transfer mode is selected, and one operand transfer is 32 bit transfer×2 times. Further, the Source address is an address of the list buffer area (DL buffer BUF) of the RAM 59 and therefore should be recognized as increasing sequentially. On the other hand, the Destination address is a transfer port TR_PORT and should be a fixed value. ..
次に、RAM59のDLバッファBUFの先頭アドレスを、DMAC回路60の動作を規定する所定の動作制御レジスタに設定すると共に(ST42)、転送先アドレスである転送ポートTR_PORT のアドレスを設定する(ST43)。また、転送総サイズ、つまり、ディスプレイリストDLのデータ総量を256バイトに設定した上で(ST44)、DMAC回路60のDMA動作を開始させる(ST45)。 Next, the head address of the DL buffer BUF of the RAM 59 is set in a predetermined operation control register that defines the operation of the DMAC circuit 60 (ST42), and the address of the transfer port TR_PORT which is the transfer destination address is set (ST43). .. Further, the total transfer size, that is, the total data amount of the display list DL is set to 256 bytes (ST44), and then the DMA operation of the DMAC circuit 60 is started (ST45).
ところで、ここまでの説明は、指示コマンドの実質ビット長が、全て32bitの整数倍であることを前提にした。しかし、ディスプレイリストDLや指示コマンドの構成は必ずしも限定されないので、以下、このような場合について説明する。 By the way, the description so far is based on the assumption that the actual bit length of the instruction command is all an integral multiple of 32 bits. However, since the configurations of the display list DL and the instruction command are not necessarily limited, such a case will be described below.
例えば、前記した無調整手法(C)を採る場合も含め、ディスプレイリストDLのデータ総量Xが、32bitの整数倍ではない任意値Xである場合には、ステップST44の処理では、この任意値Xを、適切な転送量MODに調整した上で、転送総サイズの設定処理を実行する。ここで、適切な転送量MODは、一オペランド転送についての設定内容と、データ転送回路72の最低データ量Dmin(バイト)とに基づいて規定される。 For example, when the total data amount X of the display list DL is an arbitrary value X that is not an integral multiple of 32 bits, including the case where the above-described non-adjustment method (C) is adopted, in the process of step ST44, the arbitrary value X is set. Is adjusted to an appropriate transfer amount MOD, and then a transfer total size setting process is executed. Here, the appropriate transfer amount MOD is defined based on the setting content for one-operand transfer and the minimum data amount Dmin (byte) of the data transfer circuit 72.
具体的には、一オペランド転送設定がNバイト×M回であれば、転送量MODは、N×M(バイト)の整数倍であって、且つ、Dmin(バイト)の整数倍の値に調整される。例えば、N×M=8×4、Dmin=256であれば、任意値X(=300)バイトは、転送量MOD(=512)バイトに調整される。 Specifically, if the one-operand transfer setting is N bytes×M times, the transfer amount MOD is adjusted to an integer multiple of N×M (bytes) and an integer multiple of Dmin (bytes). To be done. For example, if N×M=8×4 and Dmin=256, the arbitrary value X (=300) bytes is adjusted to the transfer amount MOD (=512) bytes.
以上、一般論も含め説明したが、DMAC回路60のDMA動作は、図6に示すようなサイクルスチール転送動作が開始され、CPUの動作を特に阻害することなく、ディスプレイリストDLが、実施例の場合には32ビット毎に、転送ポートTR_PORT に転送される。そして、転送されたデータは、転送回路ChBを経由して、描画回路76に転送される。 As described above, including the general theory, in the DMA operation of the DMAC circuit 60, the cycle steal transfer operation as shown in FIG. 6 is started, and the display list DL of the embodiment does not particularly hinder the operation of the CPU. In this case, the data is transferred to the transfer port TR_PORT every 32 bits. Then, the transferred data is transferred to the drawing circuit 76 via the transfer circuit ChB.
このような動作を実現するため、本実施例では、ステップST45の処理に続いて、データ転送回路72の転送動作を開始させて処理を終える(ST27)。その後、データ転送回路72は、DMAC回路60から最低データ量Dminを一単位として、ディスプレイリストDLの指示コマンド列を受け、これを描画回路76に転送する。そして、描画回路76は、ディスプレイリストDLの指示コマンドに基づいて描画動作を実行する。したがって、ステップST27の処理の後、演出制御CPU63は、図10のステップST11の処理を開始することができ、VDP回路52による描画動作(DMAC回路60によるDL発行処理)と並行して、音声演出やランプ演出やモータ演出を制御することができる。 In order to realize such an operation, in this embodiment, following the processing of step ST45, the transfer operation of the data transfer circuit 72 is started and the processing ends (ST27). After that, the data transfer circuit 72 receives the instruction command string of the display list DL from the DMAC circuit 60 with the minimum data amount Dmin as one unit, and transfers this to the drawing circuit 76. Then, the drawing circuit 76 executes the drawing operation based on the instruction command of the display list DL. Therefore, after the processing of step ST27, the effect control CPU 63 can start the processing of step ST11 of FIG. 10, and in parallel with the drawing operation by the VDP circuit 52 (DL issuing processing by the DMAC circuit 60), the audio effect is produced. It is possible to control the lamp effect and the motor effect.
図13(c)は、この動作内容を図示したものである。DMA転送に先行して、描画回路の動作を開始しており(ST25)、描画回路76のディスプレイリストアナライザは、迅速かつ円滑にAnalyze 処理を実行し、その他、GDEC75やジオメトリエンジン77などの動作に基づき、フレームバッファFBa,FBbには、各表示装置DS1,DS2について、各一フレーム分の画像データが生成される。 FIG. 13C shows the contents of this operation. Prior to the DMA transfer, the operation of the drawing circuit is started (ST25), and the display list analyzer of the drawing circuit 76 executes the Analyze processing quickly and smoothly, and in addition to the operations of the GDEC 75, the geometry engine 77, etc. Based on this, in the frame buffers FBa and FBb, image data for one frame is generated for each of the display devices DS1 and DS2.
ところで、DL発行処理をステップST27の処理で終える図13の構成は、必ずしも、限定されない。例えば、図20〜図21のように、音声演出、ランプ演出、及びモータ演出を、他のCPUが制御する場合には、ステップST27の処理の後、DMAC回路60やデータ転送回路72の正常動作を確認するのが好ましい。図14は、図13のステップST27に続く動作であり、正常動作の確認処理を説明するフローチャートである。 By the way, the configuration of FIG. 13 in which the DL issuing process ends in the process of step ST27 is not necessarily limited. For example, as shown in FIGS. 20 to 21, when the other CPU controls the sound effect, the lamp effect, and the motor effect, the normal operation of the DMAC circuit 60 and the data transfer circuit 72 is performed after the process of step ST27. Is preferably confirmed. FIG. 14 is a flowchart illustrating an operation subsequent to step ST27 in FIG. 13 and for confirming the normal operation.
先ず、所定のステイタスレジスタを参照して、DMAC回路60の転送動作が正常に終了していることを確認する(ST50)。また、データ転送回路72が転送動作を終了していることを確認する(ST51)。通常、このような経路で、図13のDL発行処理が完了する。 First, referring to a predetermined status register, it is confirmed that the transfer operation of the DMAC circuit 60 is normally completed (ST50). Also, it is confirmed that the data transfer circuit 72 has completed the transfer operation (ST51). Normally, the DL issuing process of FIG. 13 is completed through such a route.
一方、所定時間待機しても.DMAC回路60の動作が完了していない場合、或いは、データ転送回路72が転送動作を完了していない場合には、描画回路76とデータ転送回路72について、所定のVDPレジスタRGijにクリア値を設定して、DL発行処理を初期化する(ST52)。これは、ディスプレイリストDLの発行処理が正常に終了していないことに基づく動作であり、具体的には、図12のステップST27のエラー処理や、図13のステップST20の初期処理と同じ内容である。 On the other hand, even after waiting for a predetermined time. When the operation of the DMAC circuit 60 is not completed, or when the data transfer circuit 72 is not completed the transfer operation, a clear value is set in a predetermined VDP register RGij for the drawing circuit 76 and the data transfer circuit 72. Then, the DL issuing process is initialized (ST52). This is an operation based on the fact that the issuing process of the display list DL is not normally completed, and specifically, the same contents as the error process of step ST27 of FIG. 12 and the initial process of step ST20 of FIG. is there.
すなわち、この場合も、描画回路76は、既に動作を開始しており、ある程度の処理を終えているので、描画回路76の初期化処理には、(1) ディスプレイリストDLによって設定される可能性のある全ての内部パラメータを初期値に設定すること、(2) 全ての内部制御回路を初期状態に設定すること、(3) GDEC75を初期化すること、(4) AAC領域のキャッシュ状態を初期化することが含まれる。 That is, also in this case, since the drawing circuit 76 has already started its operation and has completed some processing, the initialization processing of the drawing circuit 76 may be set by (1) the display list DL. To set all internal parameters with initial values to (2) to set all internal control circuits to initial state, (3) to initialize GDEC75, (4) to initialize cache state of AAC area It is included to convert.
次に、新規のDMA転送動作を禁止した上で(ST53)、実行中の一オペランドの転送動作が終わるのを待つ(ST54)。先に説明した通り、本実施例では、32bit転送×2回を一オペランドとしており、動作中のDMAC回路60をいきなり初期化することを避けるためである。 Next, the new DMA transfer operation is prohibited (ST53), and the completion of the transfer operation of the one operand being executed is waited (ST54). As described above, in the present embodiment, 32 bits transfer×2 times is used as one operand, and this is to avoid sudden initialization of the operating DMAC circuit 60.
そして、この準備作業が終われば、DMAC回路60の動作を規定する所定の動作制御レジスタにクリア値を設定して、DMAC回路60を初期化する(ST52)。そして、重大異常フラグABNをセットしてDL発行処理を終える。なお、この場合、ステップST52やST55の処理によって、異常回復が期待できるので、重大異常フラグABNをセットすることなく、図13のステップST20に戻って、DL発行処理を再実行するのも好適である。但し、DL発行処理(ST23〜ST27)の再実行回数をカウントし、再実行回数が限界値を越えれば、重大異常フラグABNをセットしてDL発行処理を終える必要がある。 When this preparatory work is completed, a clear value is set in a predetermined operation control register that defines the operation of the DMAC circuit 60, and the DMAC circuit 60 is initialized (ST52). Then, the serious abnormality flag ABN is set and the DL issuing process is ended. In this case, since abnormal recovery can be expected by the processing of steps ST52 and ST55, it is also preferable to return to step ST20 of FIG. 13 and re-execute the DL issuing processing without setting the serious abnormal flag ABN. is there. However, it is necessary to count the number of re-executions of the DL issuing process (ST23 to ST27) and, if the number of re-executions exceeds the limit value, set the serious abnormality flag ABN and end the DL issuing process.
続いて、プリローダ73を使用する場合のメイン処理について、図15に基づいて説明する。図15の処理は、図10の処理に類似しているが、先ず、開始条件判定(ST5’)の内容が相違する。すなわち、プリローダを使用する実施例では、各動作周期の開始時に、描画回路76とプリローダ73のステイタス情報をReadアクセスして、ディスプレイリストDL1に基づく描画動作が終わっていること、及び、ディスプレイリストDL2に基づくプリロード動作が終わっていること確認する(ST5’)。 Next, main processing when using the preloader 73 will be described with reference to FIG. The process of FIG. 15 is similar to the process of FIG. 10, but first, the contents of the start condition determination (ST5') are different. That is, in the embodiment using the preloader, the status information of the drawing circuit 76 and the preloader 73 is read-accessed at the start of each operation cycle, and the drawing operation based on the display list DL1 is completed, and the display list DL2. It is confirmed that the preload operation based on (3) is completed (ST5').
図19(a)のタイムチャートに示す通り、プリローダ76は、例えば、動作周期(T1)に発行されたディスプレイリストDL1に基づき、その動作周期中(T1〜T1+δ)に、先読み動作(プリロード動作)を終えている筈である。また、描画回路76は、例えば、動作周期(T1+δ)で指示された動作開始指令に基づき、その動作周期中(T1+δ〜T1+2δ)に、ディスプレイリストDL1に基づく描画動作を終えている筈である。 As shown in the time chart of FIG. 19A, the preloader 76, for example, based on the display list DL1 issued in the operation cycle (T1), performs the prefetch operation (preload operation) during the operation cycle (T1 to T1+δ). Should have finished. Further, the drawing circuit 76 should have completed the drawing operation based on the display list DL1 during the operation cycle (T1+δ to T1+2δ), for example, based on the operation start command instructed in the operation cycle (T1+δ).
そこで、(ST5’)では、描画回路76とプリローダ73に関するVDPレジスタRGijのステイタス情報をReadアクセスして、上記の正常動作を確認するのである。図19(a)には、動作周期T1,T1+δ,T1+2δ,T1+4δの判定タイミングでは正常動作が確認されるが、動作周期T1+3δの判定タイミングでは、プリロード動作が終了していない状態が示されている。 Therefore, in (ST5'), the status information of the VDP register RGij relating to the drawing circuit 76 and the preloader 73 is read-accessed to confirm the above normal operation. FIG. 19A shows a state in which the normal operation is confirmed at the determination timings of the operation cycles T1, T1+δ, T1+2δ, and T1+4δ, but the preload operation is not completed at the determination timings of the operation cycle T1+3δ. ..
そして、このような異常時には、異常フラグERをインクリメントした上で(ER=ER+1)、ステップST9の処理に移行させている。そのため、図10の実施例の場合と同様に、フレーム落ちが生じる。すなわち、表示領域の切換え処理(ST6)がスキップされるので、同じ画面が再表示される。図18(a)に示す動作期間(T1+3δ〜T1+4δ)は、その動作状態を示している。 Then, at the time of such an abnormality, the abnormality flag ER is incremented (ER=ER+1), and the process proceeds to step ST9. Therefore, frame drop occurs as in the case of the embodiment of FIG. That is, since the display area switching process (ST6) is skipped, the same screen is displayed again. The operation period (T1+3δ to T1+4δ) shown in FIG. 18A shows the operation state.
また、ステップST5’の判定において、開始条件を満たさない場合には、描画回路76に対して、書換えリストDL’に基づく描画動作の開始指示(PT10)が実行されないので、描画回路76は非動作状態であり、また、新規のディスプレイリストが生成されることもない。なお、図19(a)において、タイミングt0,t2,t4は、描画動作の開始指示(PT10)の動作タイミング、より正確には、図16のステップST26のタイミングを示している。 If the start condition is not satisfied in the determination in step ST5′, the drawing circuit 76 is not operated because the drawing operation start instruction (PT10) based on the rewriting list DL′ is not executed. This is the state, and no new display list is generated. Note that in FIG. 19A, timings t0, t2, and t4 indicate the operation timing of the drawing operation start instruction (PT10), more accurately, the timing of step ST26 in FIG.
以上、ステップST5’の判定が不適合の場合を説明したが、通常の場合は、フレームバッファFBa,FBbの表示領域をトグル的に切換えた後(ST6)、描画回路76に対して、書換えリストDL’に基づく描画動作を開始させる(PT10)。具体的な内容は、図16に示す通りであり、描画回路76は、演出制御CPU63の制御に基づき、データ転送回路72(転送回路ChB)を経由して、外付けDRAM54のDLバッファBUF’から書換えリストDL’を取得して描画動作を実行することになる。 The case where the determination in step ST5′ is non-conforming has been described above. However, in the normal case, after the display areas of the frame buffers FBa and FBb are toggled (ST6), the rewriting list DL is written to the drawing circuit 76. The drawing operation based on'is started (PT10). The specific content is as shown in FIG. 16, and the drawing circuit 76 is controlled from the DL buffer BUF′ of the external DRAM 54 via the data transfer circuit 72 (transfer circuit ChB) under the control of the effect control CPU 63. The rewriting list DL' is acquired and the drawing operation is executed.
この動作を実現する図16のフローチャートを説明することに先行して、プリローダ73の動作を確認すると、プリローダ73は、一動作周期前に取得したディスプレイリストDLに基づき、CGROM55の先読み動作(プリロード)を完了しており、先読みされたデータは、外付けDRAM54に確保されたプリロード領域に既に格納済みである。また、ディスプレイリストDLに記載されているテクスチャロード系のコマンド(TXLOAD)については、そのSourceアドレスがプリロード領域のアドレスに書換えられ、書換えリストDL’として、外付けDRAM54のDLバッファBUF’に格納されている。 Prior to explaining the flowchart of FIG. 16 that realizes this operation, when the operation of the preloader 73 is confirmed, the preloader 73 determines the prefetch operation (preload) of the CGROM 55 based on the display list DL acquired one operation cycle before. Has been completed, and the prefetched data has already been stored in the preload area secured in the external DRAM 54. In addition, the source address of the texture load command (TXLOAD) described in the display list DL is rewritten to the address of the preload area, and is stored in the DL buffer BUF′ of the external DRAM 54 as the rewriting list DL′. ing.
なお、この書換え処理において、ディスプレイリストDLのデータ総量に変化はなく、書換えリストDL’のデータ総量は、ディスプレイリストDLと同じである。また、ディスプレイリストDLは、標準手法(B)で作成されており、書換えリストDL’の最後は、ディスプレイリストDLの場合と同様にEODLコマンドである。 In this rewriting process, the total amount of data in the display list DL does not change, and the total amount of data in the rewriting list DL' is the same as that in the display list DL. The display list DL is created by the standard method (B), and the end of the rewrite list DL' is the EODL command as in the case of the display list DL.
以上を踏まえて、図16について説明すると、演出制御CPU63は、先ず、所定のデータ転送レジスタRGijと、所定の描画レジスタRGijに各々クリア値を設定して、データ転送回路72と、描画回路76を初期化する(ST20)。この処理は、図13のST20の処理と同一内容である。次に、この初期化処理が正常に終了したことを確認し(ST21)、万一、所定時間経過しても初期化が完了しない場合には、重大異常フラグABNをセットして処理を終える(ST22)。 Referring to FIG. 16 based on the above, the effect control CPU 63 first sets the clear values in the predetermined data transfer register RGij and the predetermined drawing register RGij, and sets the data transfer circuit 72 and the drawing circuit 76. Initialize (ST20). This process has the same contents as the process of ST20 in FIG. Next, it is confirmed that the initialization processing has been normally completed (ST21), and if the initialization is not completed even if a predetermined time elapses, the serious abnormality flag ABN is set and the processing is terminated ( ST22).
通常は、データ転送回路72と描画回路76の初期化は正常に終了するので、続いて、データ転送回路72内部の伝送経由を、所定のデータ転送レジスタRGijに設定する(ST23)。具体的には、外付けDRAM54から、ChB制御回路72bを経由して描画回路76にデータを転送すると設定する(ST23)。次に、書換えリストDL’が格納されている外付けDRAM54のDLバッファBUF’について、その先頭アドレスを、所定のデータ転送レジスタRGijに設定する(ST24)。 Normally, the initialization of the data transfer circuit 72 and the drawing circuit 76 is normally completed, so that the transmission via the inside of the data transfer circuit 72 is set in a predetermined data transfer register RGij (ST23). Specifically, it is set to transfer data from the external DRAM 54 to the drawing circuit 76 via the ChB control circuit 72b (ST23). Next, the start address of the DL buffer BUF' of the external DRAM 54 in which the rewrite list DL' is stored is set in a predetermined data transfer register RGij (ST24).
また、この書換えリストDL’について、転送総サイズを、所定のデータ転送レジスタRGijに設定する(ST25)。先に説明した通り、書換えリストDL’のデータ総量は、ディスプレイリストDLのデータ総量と同じであり、具体的には、例えば、256バイトである。 Further, the total transfer size of this rewrite list DL' is set in a predetermined data transfer register RGij (ST25). As described above, the total amount of data in the rewrite list DL' is the same as the total amount of data in the display list DL, specifically, for example, 256 bytes.
次に、所定の描画レジスタRGijへの設定値に基づいて、描画回路76の描画動作を開始させる(ST26)。図18(a)におけるタイミングt1,t2,t3,t4は、ステップST26の動作タイミングでもある。そして、次に、所定のデータ転送レジスタRGijへの設定値に基づいて、データ転送回路60の動作を開始させて処理を終える(ST27)。その後、演出制御CPU63は、データ転送回路72や描画回路の動作に特に関与せず、次回の動作周期で実効化されるディスプレイリストの生成処理(ST7)に移行する。 Next, the drawing operation of the drawing circuit 76 is started based on the set value in the predetermined drawing register RGij (ST26). Timings t1, t2, t3, t4 in FIG. 18A are also operation timings in step ST26. Then, next, based on the set value in the predetermined data transfer register RGij, the operation of the data transfer circuit 60 is started and the processing is ended (ST27). After that, the effect control CPU 63 shifts to the display list generation process (ST7) that is activated in the next operation cycle without particularly being involved in the operations of the data transfer circuit 72 and the drawing circuit.
一方、ステップST26のタイミングで動作を開始する描画回路76は、書換えリストDL’に基づいた描画動作を実行して、フレームバッファFBa,FBbに、書換えリストDL’に基づいた画像データを生成する。なお、この動作において、描画回路76は、CGROM55をReadアクセスすることなく、もっぱら、プリロード領域をReadアクセスするので、一連の描画動作を迅速に完了することができる。 On the other hand, the drawing circuit 76, which starts the operation at the timing of step ST26, executes the drawing operation based on the rewriting list DL' to generate the image data based on the rewriting list DL' in the frame buffers FBa and FBb. Note that in this operation, the drawing circuit 76 exclusively performs read access to the preload area without performing read access to the CGROM 55, so that a series of drawing operations can be completed quickly.
以上、ステップPT10の処理内容を説明したので、図15に戻って説明を続けると、ステップPT11の処理の後、プリローダ73を活用する実施例では、次サイクルで実効化されるディスプレイリストDLを、標準手法(B)に基づいて作成する(ST7)。例えば、図19(a)に示す動作周期(T1)では、次サイクルである動作周期(T1+δ)において、描画回路76に参照されるディスプレイリストDLを作成する。 Since the processing contents of step PT10 have been described above, returning to FIG. 15, the description will be continued. In the embodiment utilizing the preloader 73 after the processing of step PT11, the display list DL to be activated in the next cycle is It is created based on the standard method (B) (ST7). For example, in the operation cycle (T1) shown in FIG. 19A, the display list DL referred to by the drawing circuit 76 is created in the operation cycle (T1+δ) which is the next cycle.
次に、演出制御CPU63は、作成後のディスプレイリストDLを、描画回路76ではなく、プリローダ73に発行する(PT11)。具体的な動作内容は、図17に示す通りである。先に、プリローダ73を使用しない実施例(図10)に関し、演出制御CPU63が、ディスプレイリストDLを、直接的に、描画回路76に発行する場合(図12)と、DMAC回路60を経由して発行する場合(図13)を示しているが、図17には、発行先がプリローダ73である点を除いて、ほぼ同じ動作が図17(b)と図17(c)に示されている。 Next, the production control CPU 63 issues the created display list DL to the preloader 73 instead of the drawing circuit 76 (PT11). The specific operation content is as shown in FIG. First, regarding the embodiment (FIG. 10) in which the preloader 73 is not used, when the effect control CPU 63 directly issues the display list DL to the drawing circuit 76 (FIG. 12) and via the DMAC circuit 60. Although the case of issuing (FIG. 13) is shown, almost the same operation is shown in FIG. 17B and FIG. 17C except that the issue destination is the preloader 73. ..
図17(a)は、図17(b)の動作を説明するフローチャートであり、図12のフローチャートとほぼ同じである。但し、CPUIF部56からChC制御回路72cを経由すること、及び、CPUバス制御部72dに関し、そのFIFOバッファの残量をチェックしながらデータ転送動作を実行すると設定する(ST20)。なお、以下の説明では、ChC制御回路72cを、便宜上、「転送回路ChC」と略すことがある。 17A is a flowchart for explaining the operation of FIG. 17B, which is almost the same as the flowchart of FIG. However, the CPUIF unit 56 is set to pass through the ChC control circuit 72c and the CPU bus control unit 72d is set to execute the data transfer operation while checking the remaining amount of the FIFO buffer (ST20). In the following description, the ChC control circuit 72c may be abbreviated as "transfer circuit ChC" for convenience.
次に、転送総サイズ(標準手法(B)で調整された例えば256バイト)を、所定のデータ転送レジスタRGij設定し、管理カウンタCNを64に初期設定する(ST21)。次に、転送回路ChCを経由するデータ転送動作を開始状態に設定すると共に(ST22)、プリローダ73の動作を規定するプリロードレジスタRGijへの設定値に基づいて、プリロード動作を開始させる(ST23)。 Next, the total transfer size (for example, 256 bytes adjusted by the standard method (B)) is set in a predetermined data transfer register RGij, and the management counter CN is initialized to 64 (ST21). Next, the data transfer operation via the transfer circuit ChC is set to the start state (ST22), and the preload operation is started based on the set value in the preload register RGij defining the operation of the preloader 73 (ST23).
この結果、その後、プリローダ73は、演出制御CPU63が、転送ポートTR_PORT に書込む指示コマンド毎に、必要な解析(Analyze )処理を実行し、CGROM55をReadアクセスすべき指示コマンド(TXLOAD)を検出すると、そのテクスチャをプリロードして、DRAM54のプリロード領域に保存する。また、テクスチャのSourceアドレスを変更した書換えリストDL’をDRAM54のDLバッファ領域BUF’に保存する。 As a result, after that, in the preloader 73, when the production control CPU 63 executes the necessary analysis (Analyze) processing for each instruction command to be written in the transfer port TR_PORT, and detects an instruction command (TXLOAD) to read-access the CGROM 55. , The texture is preloaded and stored in the preload area of the DRAM 54. Further, the rewrite list DL' in which the source address of the texture is changed is stored in the DL buffer area BUF' of the DRAM 54.
なお、図19(a)におけるタイミングt1,t3,t5は、事実上、図17のステップST23の動作タイミングを示している。但し、この実施例においても、ディスプレイリストDLの発行処理の途中で、何らかの異常が発生すれば、ステップST25やステップST27の処理を実行する。具体的には、データ転送回路72や、プリローダ73の動作を初期化して、可能な範囲でディスプレイリストDLの発行処理(ST20〜ST30)を再実行する。プリローダ73の初期化処理には、未完成状態の書き換えリストDL’の消去や、新規にプリロードデータを記憶したプリロード領域のクリア処理が含まれる。 Note that the timings t1, t3, and t5 in FIG. 19A actually indicate the operation timing of step ST23 in FIG. However, also in this embodiment, if any abnormality occurs in the process of issuing the display list DL, the processes of step ST25 and step ST27 are executed. Specifically, the operations of the data transfer circuit 72 and the preloader 73 are initialized, and the display list DL issuing process (ST20 to ST30) is re-executed within a possible range. The initialization process of the preloader 73 includes erasing the rewrite list DL' in an unfinished state and clearing the preload area in which the preload data is newly stored.
以上、プリローダ73を使用する場合と、使用しない場合について詳細に説明したが、具体的な動作内容は、特に限定されない。図18(b)は、演出制御CPU63が生成したディスプレイリストを、生成したその動作周期ではなく、一動作周期δ遅れて描画回路76に発行する実施例を示している。このような実施例の場合には、描画回路76は、一動作周期(δ)のほぼ全時間を使用できるので、フレーム落ちの可能性が低減される。 Although the case where the preloader 73 is used and the case where the preloader 73 is not used have been described above in detail, the specific operation content is not particularly limited. FIG. 18B shows an embodiment in which the display list generated by the effect control CPU 63 is issued to the drawing circuit 76 with a delay of one operation cycle δ instead of the generated operation cycle. In the case of such an embodiment, the drawing circuit 76 can use almost all the time of one operation cycle (δ), so that the possibility of dropped frames is reduced.
また、図19(b)は、演出制御CPU63が生成したディスプレイリストを、生成したその動作周期ではなく、一動作周期遅れてプリローダ73に発行する実施例を示している。この場合は、プリローダ73は、一動作周期(δ)のほぼ全時間を使用してプリドード動作を実行することができるので、この場合も、フレーム落ちの可能性が低減される。 Further, FIG. 19B shows an embodiment in which the display list generated by the effect control CPU 63 is issued to the preloader 73 with a delay of one operation cycle instead of the generated operation cycle thereof. In this case, the preloader 73 can perform the pre-doing operation using almost the entire time of one operation cycle (δ), and in this case also, the possibility of dropping frames is reduced.
なお、ここまでの説明では、複合チップ50を使用することにしているが、必ずしも、演出制御CPU63とVDP回路を、一素子に集積化する必要はない。更にまた、上記の実施例では、演出制御全体を、単一のCPU(演出制御CPU63)で制御しているが、上流側のCPUと、下流側の演出制御CPU63が互いに協働して、演出制御動作を実行しても良い。 Although the composite chip 50 is used in the description so far, the effect control CPU 63 and the VDP circuit do not necessarily have to be integrated in one element. Furthermore, in the above embodiment, the entire effect control is controlled by a single CPU (effect control CPU 63), but the upstream CPU and the downstream effect control CPU 63 cooperate with each other to effect the effect. The control operation may be executed.
図20〜図21は、このような実施例を示すブロック図である。図示の通り、この実施例では、上流側の演出制御CPUが、音声演出と、ランプ演出と、モータ演出を制御している。一方、下流側の内蔵CPU50は、演出制御CPUから受ける制御コマンドCMD’に基づいて、画像演出だけを制御している。 20 to 21 are block diagrams showing such an embodiment. As shown in the figure, in this embodiment, the effect control CPU on the upstream side controls the sound effect, the lamp effect, and the motor effect. On the other hand, the internal CPU 50 on the downstream side controls only the image effect based on the control command CMD' received from the effect control CPU.
このような構成を採る場合には、内蔵CPU50は、図10(a)のステップST12の処理と、図10(b)の処理を実行する必要がなく、十分に時間をかけて複雑なディスプレイリストDLを生成することができ、より複雑で高度な3D(Dimension )などの画像演出を実現することができる。このような場合には、ディスプレイリストが大型化するが、その場合には、ディスプレイリストDLのデータ総量は、ダミーコマンドを付加することで、512バイト又はそれ以上のN×256バイトに調整される。 When such a configuration is adopted, the built-in CPU 50 does not need to execute the processing of step ST12 of FIG. 10A and the processing of FIG. DL can be generated, and more complex and sophisticated image effects such as 3D (Dimension) can be realized. In such a case, the display list becomes large, but in that case, the total data amount of the display list DL is adjusted to 512 bytes or more N×256 bytes by adding a dummy command. .
また、下流側の内蔵CPU50の動作は、画像演出制御に特化されるので、ディスプレイリストDLの発行後、描画動作が完了するのを確認することもできる。図12の下方は、この場合の動作制御例を示しており、限界時間を超えても描画動作が完了しない場合には、重大異常フラグABNをセットして処理を終える(ST32)。なお、下流側の内蔵CPU50の処理は、画像演出制御だけであるので、簡易的には、描画動作の完了を無限ループ状に待機するのでも良い。 Further, since the operation of the built-in CPU 50 on the downstream side is specialized in image effect control, it is possible to confirm that the drawing operation is completed after issuing the display list DL. The lower part of FIG. 12 shows an example of the operation control in this case. When the drawing operation is not completed even after the limit time is exceeded, the serious abnormality flag ABN is set and the processing ends (ST32). Since the processing of the built-in CPU 50 on the downstream side is only for the image effect control, it may be possible to simply wait for the completion of the drawing operation in an endless loop.
このような構成を採る場合、図10(a)の開始条件判定(ST5)を所定時間繰り返すことができる。このように構成しても、描画動作完了の遅れが、それほど長くなければ、表示領域(0)と表示領域(1)の切り換えが遅れるだけの問題しか生じない。すなわち、図22(a)に示す動作周期T1+3δのように、表示動作が二回繰り返される一動作周期の中で、前半だけ、フレーム落ち状態となり、後半は、正常なフレームが表示される。 When adopting such a configuration, the start condition determination (ST5) of FIG. 10A can be repeated for a predetermined time. Even with such a configuration, if the delay in the completion of the drawing operation is not so long, there is only a problem that the switching between the display area (0) and the display area (1) is delayed. That is, as in the operation cycle T1+3δ shown in FIG. 22A, in one operation cycle in which the display operation is repeated twice, the first half is in the frame drop state, and in the second half, the normal frame is displayed.
この点は、プリローダを使用する場合も同様であり、図15(a)の開始条件判定(ST5’)を所定時間繰り返すことができる。そして、多少の遅れであれば、図22(b)に示す動作周期T1+3δのように、前半だけ、フレーム落ち状態となり、後半は、正常なフレームが表示される。但し、描画動作の完了が大幅に遅れると、図18(a)の動作周期T1+3δと同様に、完全なフレーム落ちが生じることになり、万一、このような事態が継続すると、ウォッチドッグタイマ58が起動することになる。そこで、その後は、アンダーフロー信号UFに基づいて、演出制御動作の全部又は一部(画像演出のみ)を異常リセットすればよい。この点は、プリローダを使用しない場合も同様である。 This point is the same when the preloader is used, and the start condition determination (ST5') in FIG. 15A can be repeated for a predetermined time. Then, if there is some delay, as in the operation cycle T1+3δ shown in FIG. 22B, only the first half is in the frame drop state, and in the second half, a normal frame is displayed. However, if the completion of the drawing operation is significantly delayed, a complete frame drop occurs as in the operation cycle T1+3δ in FIG. 18A, and if such a situation continues, the watchdog timer 58 Will be started. Therefore, thereafter, all or part of the effect control operation (image effect only) may be abnormally reset based on the underflow signal UF. This point is the same when the preloader is not used.
また、内蔵CPU50の制御動作が画像演出制御に特化される場合、DMA転送を採用する実施例では、図14の下方に示す通り、描画回路76の描画動作の完了と、データ転送回路72の動作完了と、DMAC回路60の動作完了が判定される(ST50’〜ST52’)。そして、何れかの動作が正常に終了しない場合には、データ転送回路72と、描画回路76の動作を初期化し、ステップST53〜ST55の処理と同様の処理(ST55’〜ST57’)が実行される。なお、この場合も、所定回数だけ、DL発行処理を再実行するのが好適である。 Further, when the control operation of the built-in CPU 50 is specialized for image effect control, in the embodiment adopting the DMA transfer, as shown in the lower part of FIG. 14, the drawing operation of the drawing circuit 76 is completed and the data transfer circuit 72 is operated. When the operation is completed, it is determined whether the operation of the DMAC circuit 60 is completed (ST50' to ST52'). Then, if any of the operations is not normally completed, the operations of the data transfer circuit 72 and the drawing circuit 76 are initialized, and the same processing (ST55' to ST57') as the processing of steps ST53 to ST55 is executed. It In this case as well, it is preferable to re-execute the DL issuing process a predetermined number of times.
以上、メイン表示装置DS1及びサブ表示装置DS2のフレームバッファFBa,FBbとして、各表示装置の水平ピクセル数に完全一致する水平サイズのインデックス空間を構築する実施例について説明した。図23(a)は、この関係を確認的に図示したものであり、仮想描画空間上の描画領域(W×H)と、インデックス空間上の有効データ領域(実描画領域W×H)とが、何れも、表示装置の水平/垂直ピクセル数に一致する場合を示している。 The embodiment has been described above in which, as the frame buffers FBa and FBb of the main display device DS1 and the sub display device DS2, an index space having a horizontal size that completely matches the number of horizontal pixels of each display device is constructed. FIG. 23A is a diagram for confirming this relationship, in which a drawing area (W×H) on the virtual drawing space and an effective data area (actual drawing area W×H) on the index space are shown. , Both show the case where the number of horizontal/vertical pixels of the display device matches.
このような対応関係において、ディスプレイリストDLによる仮想描画空間への描画動作は、必ずしも、描画領域(W×H)に限定されないので、例えば、図23(a)上部の左傾斜線で示すように、描画領域(W×H)を超える描画画像(W’×H’)について、その描画位置を時間的に移動させることで、図23(a)下部の右傾斜線で示す実描画領域W×Hへの描画内容を、縦/横/斜めに適宜に移動させることが可能となる。 In such a correspondence relationship, the drawing operation in the virtual drawing space by the display list DL is not necessarily limited to the drawing area (W×H), and therefore, for example, as shown by the left slant line in the upper part of FIG. , A drawing image (W′×H′) that exceeds the drawing area (W×H) is temporally moved, so that the actual drawing area W×H shown by the right slanted line at the bottom of FIG. It is possible to appropriately move the drawing contents to the vertical/horizontal/diagonal.
また、このような演出を実行するため、例えば、図23(b)に示すように、表示装置の水平ピクセル数より大きい水平サイズWのインデックス空間を設けても良い。この場合には、ディスプレイリストDLの指示コマンドL12(SETDAVF )で定義される仮想描画空間上の描画領域W×Hは、表示装置の水平/垂直ピクセル数に対応する実描画領域w×hより大きく設定される。なお、図23(b)の下部には、実描画領域w×hが、右傾斜線で示されている。 In order to execute such an effect, for example, as shown in FIG. 23B, an index space having a horizontal size W larger than the number of horizontal pixels of the display device may be provided. In this case, the drawing area W×H in the virtual drawing space defined by the instruction command L12 (SETDAVF) of the display list DL is larger than the actual drawing area w×h corresponding to the number of horizontal/vertical pixels of the display device. Is set. In the lower part of FIG. 23B, the actual drawing area w×h is shown by a right slanted line.
そして、実描画領域w×hの縦横寸法は、図10のステップSS30の処理で、表示装置の表示ライン数と水平画素数として特定され、また、実描画領域w×hの左上端点は、図10のステップSS31の処理で、垂直/水平表示開始位置として、所定の表示レジスタに設定される。 The vertical and horizontal dimensions of the actual drawing area w×h are specified as the number of display lines and the number of horizontal pixels of the display device in the process of step SS30 in FIG. 10, and the upper left end point of the actual drawing area w×h is In step SS31 of 10, the vertical/horizontal display start position is set in a predetermined display register.
一方、インデックス空間における基点アドレス(X,Y)は、ディスプレイリストの指示コマンドL11によって、所定の描画レジスタに設定される。先に説明した通り、具体的には、環境設定系の指示コマンドL11(SETDAVR )によって、インデックス空間IDX上の左上基点アドレスが、例えば(0,0)と規定される。そして、実描画領域w×hの左上端点を、定常処理において適宜に移動させれば、図23(b)下部の右傾斜線で示す実描画領域W×Hの描画内容は、縦/横/斜めに適宜に移動することになる。 On the other hand, the base address (X, Y) in the index space is set in a predetermined drawing register by the instruction command L11 of the display list. As described above, specifically, the upper left base point address on the index space IDX is defined as (0, 0) by the environment setting related instruction command L11 (SETDAVR). Then, if the upper left end point of the actual drawing area w×h is appropriately moved in the steady process, the drawing content of the actual drawing area W×H indicated by the right slanted line in the lower part of FIG. Will be moved accordingly.
図10に関して説明した通り、ステップSS30〜SS32に係るVDPレジスタRGijについては、初期設定時に、書込み禁止設定がされているが(第2の禁止設定SS34)、上記の演出を実行するタイミングでは、所定のVDPレジスタRGijに解除値を書込むことで、この禁止設定が解除される。 As described with reference to FIG. 10, with respect to the VDP register RGij according to steps SS30 to SS32, the write-prohibition setting is made at the initial setting (second prohibition setting SS34), but at the timing of executing the above-mentioned effect, a predetermined value is set. This prohibition setting is released by writing the release value in the VDP register RGij of.
以上、各種の実施例について詳細に説明したが、具体的な記載内容は、何ら本発明を限定しない。なお、便宜上、弾球遊技機について説明しているが、本発明は、回胴遊技機など他の遊技機に対しても好適に適用可能である。 Although various embodiments have been described in detail above, the specific description does not limit the present invention. Although a ball game machine is described for the sake of convenience, the present invention can be suitably applied to other game machines such as a spinning-roller game machine.
GM 遊技機
DS1 表示装置
FBa バッファ領域
DL ディスプレイリスト
DL’ 書換えリスト
Rij 制御レジスタ
63 CPU
77 描画回路
74 表示回路
72 データ転送回路
ST1,ST2,ST3 初期処理
ST6 特定処理
ST8 転送処理
GM gaming machine DS1 display device FBa buffer area DL display list DL' rewriting list Rij control register 63 CPU
77 drawing circuit 74 display circuit 72 data transfer circuit ST1, ST2, ST3 initial processing ST6 specific processing ST8 transfer processing
Claims (8)
前記ディスプレイリスト又はこれを一部書換えた書換えリストを前記描画回路に転送するデータ転送回路と、
前記描画回路が完成させた画像データを前記バッファ領域から読み出して出力する表示回路と、
前記描画回路、前記データ転送回路、及び前記表示回路を含んだ各種の内部回路の動作を規定する設定値が前記CPUによって設定される多数の制御レジスタと、を設けた画像生成手段を有して構成され、
前記CPUが、所定の制御レジスタに必要な設定値を設定することで、表示装置の横方向ピクセル数に基づいて決定された水平サイズと、所定の垂直サイズとを有する一対の二次元空間を前記バッファ領域に確保する初期処理が電源投入後に実行され、
前記初期処理の後、所定の動作周期毎に、繰り返し実行される定常処理には、一対の二次元空間のうち、前記表示回路が読み出すべき二次元空間を所定の制御レジスタに特定する特定処理と、前記描画回路の動作を有効化した状態で、前記データ転送回路を経由して前記ディスプレイリスト又は前記書換えリストを前記描画回路に取得させる転送処理と、が含まれ、
前記転送処理に先行して、前記CPUは、所定の制御レジスタに所定の設定値を設定して、前記描画回路又は前記データ転送回路について、必要な初期化処理を実行するよう構成されていることを特徴とする遊技機。 A drawing circuit for completing image data based on a display list issued by the CPU that executes the effect control operation in a predetermined buffer area;
A data transfer circuit for transferring the display list or a rewrite list obtained by partially rewriting the display list to the drawing circuit;
A display circuit for reading out and outputting the image data completed by the drawing circuit from the buffer area;
An image generation unit provided with a plurality of control registers in which set values for defining operations of various internal circuits including the drawing circuit, the data transfer circuit, and the display circuit are set by the CPU. Composed,
The CPU sets a required setting value in a predetermined control register to define a pair of two-dimensional spaces having a horizontal size determined based on the number of pixels in the horizontal direction of the display device and a predetermined vertical size. The initial processing to secure the buffer area is executed after the power is turned on,
After the initial process, the steady process that is repeatedly executed at every predetermined operation cycle includes a specific process of specifying a two-dimensional space to be read by the display circuit in a predetermined control register from a pair of two-dimensional spaces. A transfer process for causing the drawing circuit to acquire the display list or the rewrite list via the data transfer circuit in a state where the operation of the drawing circuit is enabled,
Prior to the transfer processing, the CPU is configured to set a predetermined set value in a predetermined control register and execute necessary initialization processing for the drawing circuit or the data transfer circuit. A gaming machine characterized by.
前記ディスプレイリスト又はこれを一部書換えた書換えリストを前記描画回路に転送するデータ転送回路と、
前記描画回路が完成させた画像データを前記バッファ領域から読み出して出力する表示回路と、
前記描画回路、前記データ転送回路、及び前記表示回路を含んだ各種の内部回路の動作を規定する設定値が前記CPUによって設定される多数の制御レジスタと、を設けた画像生成手段を有して構成され、
前記CPUが、所定の制御レジスタに必要な設定値を設定することで、表示装置の横方向ピクセル数に基づいて決定された水平サイズと、所定の垂直サイズとを有する一対の二次元空間を前記バッファ領域に確保する初期処理が電源投入後に実行され、
前記初期処理の後、所定の動作周期毎に、繰り返し実行される定常処理には、一対の二次元空間のうち、前記表示回路が読み出すべき二次元空間を所定の制御レジスタに特定する特定処理と、前記描画回路の動作を有効化した状態で、前記データ転送回路を経由して前記ディスプレイリスト又は前記書換えリストを前記描画回路に取得させる転送処理と、が含まれ、
前記転送処理中に所定の異常事態が発生すると、前記CPUは、所定の制御レジスタに所定の設定値を設定して、前記描画回路又は前記データ転送回路について、必要な初期化処理を実行するよう構成されていることを特徴とする遊技機。 A drawing circuit for completing image data based on a display list issued by the CPU that executes the effect control operation in a predetermined buffer area;
A data transfer circuit for transferring the display list or a rewrite list obtained by partially rewriting the display list to the drawing circuit;
A display circuit for reading out and outputting the image data completed by the drawing circuit from the buffer area;
An image generation unit provided with a plurality of control registers in which set values for defining operations of various internal circuits including the drawing circuit, the data transfer circuit, and the display circuit are set by the CPU. Composed,
The CPU sets a required setting value in a predetermined control register to define a pair of two-dimensional spaces having a horizontal size determined based on the number of pixels in the horizontal direction of the display device and a predetermined vertical size. The initial processing to secure the buffer area is executed after the power is turned on,
After the initial process, the steady process that is repeatedly executed at every predetermined operation cycle includes a specific process of specifying a two-dimensional space to be read by the display circuit in a predetermined control register from a pair of two-dimensional spaces. A transfer process for causing the drawing circuit to acquire the display list or the rewrite list via the data transfer circuit in a state where the operation of the drawing circuit is enabled,
When a predetermined abnormal situation occurs during the transfer processing, the CPU sets a predetermined set value in a predetermined control register and executes necessary initialization processing for the drawing circuit or the data transfer circuit. A gaming machine characterized by being configured.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018222160A JP6952676B2 (en) | 2018-11-28 | 2018-11-28 | Pachinko machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018222160A JP6952676B2 (en) | 2018-11-28 | 2018-11-28 | Pachinko machine |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020081519A true JP2020081519A (en) | 2020-06-04 |
JP6952676B2 JP6952676B2 (en) | 2021-10-20 |
Family
ID=70909434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018222160A Active JP6952676B2 (en) | 2018-11-28 | 2018-11-28 | Pachinko machine |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6952676B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015112287A (en) * | 2013-12-11 | 2015-06-22 | 株式会社藤商事 | Game machine |
JP2017153870A (en) * | 2016-03-04 | 2017-09-07 | 株式会社三共 | Game machine |
JP2018108527A (en) * | 2018-04-17 | 2018-07-12 | 株式会社藤商事 | Game machine |
-
2018
- 2018-11-28 JP JP2018222160A patent/JP6952676B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015112287A (en) * | 2013-12-11 | 2015-06-22 | 株式会社藤商事 | Game machine |
JP2017153870A (en) * | 2016-03-04 | 2017-09-07 | 株式会社三共 | Game machine |
JP2018108527A (en) * | 2018-04-17 | 2018-07-12 | 株式会社藤商事 | Game machine |
Non-Patent Citations (1)
Title |
---|
永淵 健治: "基礎知識からグラフィックス・チップ,OpenGL,GUIを理解する グラフィックス描画の原理,手法,", INTERFACE 第35巻 第8号, JPN6020038276, 1 August 2009 (2009-08-01), pages 59 - 71, ISSN: 0004583563 * |
Also Published As
Publication number | Publication date |
---|---|
JP6952676B2 (en) | 2021-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020065707A (en) | Game machine | |
JP2020110476A (en) | Game machine | |
JP6903628B2 (en) | Pachinko machine | |
JP2020065714A (en) | Game machine | |
JP2021142397A (en) | Game machine | |
JP6872522B2 (en) | Pachinko machine | |
JP6933625B2 (en) | Pachinko machine | |
JP2020065708A (en) | Game machine | |
JP2020065711A (en) | Game machine | |
JP6872521B2 (en) | Pachinko machine | |
JP6891159B2 (en) | Pachinko machine | |
JP6903625B2 (en) | Pachinko machine | |
JP6903624B2 (en) | Pachinko machine | |
JP6872520B2 (en) | Pachinko machine | |
JP2020065716A (en) | Game machine | |
JP2020065717A (en) | Game machine | |
JP2020065718A (en) | Game machine | |
JP2020065715A (en) | Game machine | |
JP6891158B2 (en) | Pachinko machine | |
JP6903627B2 (en) | Pachinko machine | |
JP6952676B2 (en) | Pachinko machine | |
JP6903623B2 (en) | Pachinko machine | |
JP6952673B2 (en) | Pachinko machine | |
JP2020081515A (en) | Game machine | |
JP2020081518A (en) | Game machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191219 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200918 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201013 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201211 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210525 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210721 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210831 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210928 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6952676 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |