JP2887236B2 - Video display processing device - Google Patents
Video display processing deviceInfo
- Publication number
- JP2887236B2 JP2887236B2 JP60081208A JP8120885A JP2887236B2 JP 2887236 B2 JP2887236 B2 JP 2887236B2 JP 60081208 A JP60081208 A JP 60081208A JP 8120885 A JP8120885 A JP 8120885A JP 2887236 B2 JP2887236 B2 JP 2887236B2
- Authority
- JP
- Japan
- Prior art keywords
- sprite
- color
- register
- data
- output
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/34—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators for rolling or scrolling
- G09G5/346—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators for rolling or scrolling for systems having a bit-mapped display memory
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Digital Computer Display Output (AREA)
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明はビデオ信号装置に関するもので,とくに1個
または複数個の可動パターンをより大型の固定パターン
上の選択された位置で重畳させることができるようにし
た、ビデオ表示プロセッサに係わるものである.表示画
面は1回につき1ピクセル分だけ、水平方向および垂直
方向にスクロールさせることが可能である。
[従来の技術]
1個または複数個の可動パターンをより大型の固定パ
ターン上の選択された位置で重畳(スーパーインポー
ズ)させる基本原理は、本出願人を譲受人とする米国特
許第4,243,984号によって、すでに開示されている。ま
た可動のパターンを開示するシステムとしては、ほかに
例えば、米国特許第4,112,422号、第4,129,858号、第4,
034,990号、第4,107,664号、第4,016,362号、第4,116,4
44号、第4,771,155号、第4,296,476号、第4,232,374
号、第4,177,462号および第4,119,955号等にその開示例
がある。
[発明の概要]
ビデオモニタ、あるいはビデオモニタとして用いるテ
レビ受像機の図形パターンは、アドバンスビデオプロセ
ッサのハードウエア的スクロール機能によりスクロール
させることが可能である。
この場合、垂直スクロールレジスタおよび水平スクロ
ールレジスタにより、水平方向には256個までのピクセ
ルを、また垂直方向にも256個までのピクセルをそれぞ
れスクロールさせることができる。この水平スクロール
レジスタはアドバンスビデオプロセッサの一部を構成す
るものであり、ホストマイクロプロセッサ(CPU)によ
って、ロードされる。ホストマイクロプロセッサはピク
セルの水平方向位置決定に8ビットの情報を用い、また
水平方向位置決定にも8ビットの情報を用いて、該アド
バンスビデオプロセッサの動作を制御する。この場合、
スクリーンのタテおよびヨコの寸法により、水平方向ス
クロールレジスタまたは垂直方向スクロールレジスタの
いずれかの8ビットの記憶内容を変更することによっ
て、表示画面をピクセルごとに左右いずれかの方向ある
いは上下にロールさせることができる。
なおここにいう表示画面とは、動作モードにより、24
8ないし256のラインおよび192ないし256行に配列された
ピクセル群として定義されるものである。
表示画面は、アドバンスビデオプロセッサ内に内蔵さ
れた水平方向スクロールレジスタおよび垂直方向スクロ
ールレジスタの記憶内容を変更することによって、1回
につき1ピクセル分だけ、水平方向および垂直方向にス
クロールさせることが可能である。水平方向スクロール
レジスタまたは垂直方向スクロールレジスタの記憶内容
が変更されると、ビデオ表示RAM内の記憶場所から得た
表示中のデータは、水平方向スクロールレジスタおよび
垂直方向スクロールレジスタにより該ビデオ表示RAMの
アドレスの変更に従って変更される。
[実施例]
次に図面を参照して本発明の実施例を説明する.
第1図は本発明によるアドバンスビデオプロセッサ1
を含むビデオ表示システム100を示すブロック図であ
る.同図において,ホストマイクロプロセッサ(CPU)3
0は双方向データバス51,制御バス49および割込みライン
47を介してアドバンスビデオプロセッサ(AVDP)1とイ
ンターフェースする.このアドバンスビデオプロセッサ
1はマイクロプロセッサ30をカラービデオモニタ33とイ
ンターフェースさせるのに用いるものである.アドバン
スビデオプロセッサ1はさらに,ダイナミックRAM31を
用いてビデオスクリーンに表示される情報を記憶する.
上記マイクロプロセッサ30はこれとアドバンスビデオプ
ロセッサ1間の8ビットデータバス51を介してアドバン
スビデオプロセッサ1の構成レジスタをロードし,つい
で該マイクロプロセッサ30は,ビデオスクリーン32に表
示すべき情報をビデオRAM31に供給する.アドバンスビ
デオプロセッサ1は,マイクロプロセッサ30によるアク
セスとは独立して,ビデオスクリーン32のリフレッシュ
を行なう.ビデオRAM31は8ビットアドレスバスおよび
8ビットデータバスを介して,アドバンスビデオプロセ
ッサ1によりアクセスされる.アドバンスビデオプロセ
ッサ1はさらに,必要なRAS(行アドレスストローブ)
信号およびCAS(列アドレスストローブ)信号を供給し
て,ダイナミックビデオRAM31をアドバンスビデオプロ
セッサ1とインターフェースさせる.さらにアドバンス
ビデオプロセッサ1には、ランダムアクセスメモリであ
るビデオRAM31が接続され,このRAM31は双方向データバ
ス53,メモリアドレスバス55および制御ライン45を介し
てアドバンスビデオプロセッサ1に接続されている.図
形等(以下グラフィックスという)の表示方式として
は,2つの方式が考えられ,赤緑青(RGB)モニタ33を用
いてこれをRGBバス39を介してアドバンスビデオプロセ
ッサ1と結合させる方式と,複合ビデオモニタ/テレビ
受像機35を用いてこれを色差バス41およびビデオエンコ
ーダ/RFモニタ37を介してアドバンスビデオプロセッサ
1と結合させる方式の二方式のうち,一方もしくは双方
を用いることとする.なお,上記複合ビデオモニタ/テ
レビ受像機35には,音声バス43を経由して音声入力も与
えられる.アドバンスビデオプロセッサ1は7個の基本
的機能ブロックを含み,これらブロックに含まれるCPU
制御ロジック65は,前記ホストマイクロプロセッサ30と
アドバンスビデオプロセッサ1との間のインターフェー
スを司り,制御ライン49の末端部を構成するとともに,
データバス51を介してデータの入出力を行ない,さらに
割込みライン47を介してホストマイクロプロセッサ30に
対する割込み動作を行なうものである.このCPU制御ロ
ジック65により,ホストマイクロプロセッサ30は5種類
の基本動作を行なうことが可能となる.すなわち,ビデ
オRAM31に対するデータの書込み,該ビデオRAM31からの
データの読出し,アドバンスビデオプロセッサ1の内部
レジスタ63に対する当該(RAM31から読み出された)デ
ータの書込み,これらアドバンスビデオプロセッサ1の
内部レジスタ63のうちのいくつかのレジスタからのデー
タの読出し,およびアドバンスビデオプロセッサ1の表
示ロジック内に含まれている内部音声ゼネレータ69に対
する書込みである.
データ転送の形式および方向は制御ライン49,とくにC
SW,CSR(第2a図上端),およびモード入力ラインにより
制御される.ラインCSWはマイクロプロセッサ30からア
ドバンスビデオプロセッサ1への書込み選択ラインであ
り,このラインCSWが低レベルに活性化されると,デー
タライン51のCD0ないしCD7(第9図)上の8ビットがア
ドバンスビデオプロセッサ1にストローブ入力される.
他方,ラインCSRはマイクロプロセッサ30からアドバン
スビデオプロセッサ1への読出し選択ラインであり,こ
のラインVSRが低レベルに活性化されて,アドバンスビ
デオプロセッサ1からラインCD0ないしCD7に8ビットの
データが出力されて,マイクロプロセッサ30が読み出し
を行なう.なお,ラインCSWおよびCSRがいずれも低レベ
ルに活性化された場合は、前記音声ゼネレータ69に対す
るアドレス指定が行なわれる.
前記モードは,読出しまたは書込み転送の発信側もし
くは宛先を決定するもので,このラインは一般にCPU
(マイクロプロセッサ30)の下位桁アドレスラインに接
続されている.
上記ホストマイクロプロセッサ30とアドバンスビデオ
プロセッサ1間のデータ転送方式を第1表に示す.
前記基本機能ブロックのうちビデオRAM制御ロジック6
7(第1図参照)は,アドバンスビデオプロセッサ1と
ビデオRAM31との間のインターフェースを制御するもの
で,制御ライン45に出力された制御信号に応答して,メ
モリアドレスバス55を介して指定されたビデオRAM31の
メモリアドレス位置へ,データバス53を介して転送され
るデータの転送を司るものである.なお,図示の実施例
では,このデータバス53はこれを8ビット双方向バスと
し,またメモリアドレスバス55は,これを8ビット多重
アドレスバスとする.また第1図に示すアドバンスビデ
オプロセッサ1は,ビデオRAM31に対するダイナミック
リフレッシュを行いつつ,16Kバイト(たとえばTMS4416
を2個,またはその相当品),もしくは32Kバイト(た
とえばTMS4416を4個,またはその相当品),もしくは6
4Kバイト(たとえばTMS4416を8個,またはその相当
品)を直接アドレスしうるものとする(ただし上記TMS4
416はテキサスインスツルメンツ社の製品番号であ
る).
第1図および第2a,2b図に示す内部レジスタ(群)63
は,読出し専用レジスタを2個,ステータスレジスタお
よびスプライト衝突レジスタ(第2表)を各1個,およ
び書込み専用レジスタ(第3表)64個を有する.このう
ち,書込み専用レジスタの機能は下記のごとくである.
すなわち,これら書込み専用レジスタのうち3個は,ア
ドバンスビデオプロセッサ1の動作モードを特定するも
ので,たとえばRGBモニタ33や,あるいは複合ビデオモ
ニタ/テレビ受像機35を駆動するのに必要な動作モード
やビデオ信号出力の形式等のオプションを特定する.ま
た内部レジスタブロック63内の書込み専用レジスタのう
ち6個は,アドバンスビデオプロセッサ1に特定された
レジスタで,メモリアドレスマッピングレジスタを表示
して,ビデオRAM31内の記憶位置を特定するものであ
る.さらに上記書込み専用レジスタのうち1個は,カラ
ーコードレジスタで,スプライトプロセッサ10がテキス
トモードで動作中にカラーの指定を行なう.ほかに単独
のレジスタが2個あり,これはスクロール用のレジスタ
で,そのうち一方は水平方向スクロール用,他方は垂直
方向スクロール用である.さらにプログラマブルな割込
みレジスタが1個あり,すべてのテレビモニタ信号で発
生する各水平リトレース期間中には,この割込みレジス
タによりアドバンスビデオプロセッサ1の設定変更が可
能となる.4個のブロック移動アドレスおよびデクリメン
ト(逆歩進)カウンタレジスタは,ビデオメモリの各ブ
ロックのうち指定されたブロックを該ビデオメモリの他
のメモリ位置に移動させることができる.32個のレジス
タはカラーパレットパイロットレジスタで,(512色カ
ラーバレットから)各水平走査ラインにつき最大16種類
の表示可能のカラーを指定する.
つぎに,前記読出し専用レジスタの機能は下記のごと
くである.すなわちステータスレジスタには割込みやス
プライトの同時発生および任意の1水平走査ライン上に
11個目のスプライドがあることを示すフラッグが記憶さ
れている.前記アドバンスビデオプロセッサ1には1個
の8ビットのステータスレジスタ28(第2a図)が含まれ
ており,このステータスレジスタはマイクロプロセッサ
30によりその読出しを行なうことができる.このステー
タスレジスタ28のフォーマットは第4表に示す.割込み
ペンディングを示すフラッグ(F)と,スプライトの同
時発生を示すフラッグ(C)と,11番目のスプライトを
表わすフラッグ(11S)と,もしあれば,11番目のスプラ
イトの番号を表わす数とを含むものである.
上記ステータスレジスタ28の読出しは任意の時点でこ
れを行なって,上記F,C,11Sフラッグのステータスビッ
トの検定を行なってもよい.なお,ステータスの読出し
により割込みフラッグFはクリヤされるが,ステータス
の非同期読出しによりフレームフラッグ(F)のビット
がリセットされて結果的に欠落することもあるため,ス
テータスレジスタ28の読出しは,アドバンスビデオプロ
セッサ1の割込みがペンディング状態にあるときにのみ
行なうのがよい.またこのステータスレジスタ28の読出
しに要するデータの転送は1回のみである.
割込みペンディングフラッグ(F)
ステータスレジスタ28のF状態フラッグは,割込みペ
ンディングがあるときには常に1にセットされるが,こ
のビットが設定されるのは次の3つのうちのいずれかの
場合,すなわちブロックの移動が完了したときと,プロ
グラマブルな割込みモードが選択されたときと,フレー
ムエンドが発生したとき(垂直リトレース期間)であ
る.割込みペンディングフラッグは,ステータスレジス
タ28の読出しが行なわれたとき,あるいは外部からのリ
セット信号によって0にリセットされる.
適当な割込みイネーブルビット(書込み専用レジスタ
1のIEビット2または書込み専用レジスタ10のPIEビッ
ト2)が1にセットされたときには,Fステータスフラッ
グが論理1であれば必ず,INTが低レベルで活性化され
る.
なお,ステータスレジスタ28は各割込みの実行後,か
ならずその読出しを行なって,当該割込みモードをクリ
ヤし,次の割込みの発生で新しい割込みを受けるべく待
機するようにする必要がある.
同時発生フラッグ(C)
ステータスレジスタ28内のCステータスフラッグは,2
個ないしそれ以上のスプライトが同時に発せられたとき
に1にセットされる.このスプライトの同時発生は,ス
クリーン上で任意の2個のスプライトが1個の重畳する
ピクセルを共有する場合に起るものである.この場合,
一部もしくは全部がスクリーン外にあるスプライトのほ
かに,透明なカラースプライトをも考慮の対象とする.C
フラッグはステータスレジスタ28の読出し完了後,ある
いはアドバンスビデオプロセッサ1が外部からリセット
された後に論理0にクリヤされる.
なお,このステータスレジスタ28の読出しはパワーア
ップ後ただちに行なって,同時発生フラッグのリセット
を確実に実行するようにする必要がある.
アドバンスビデオプロセッサ1は各々の同時発生のピ
クセル位置を,その位置がスクリーンのどの点に位置し
ているかには係わりなく,当該ピクセルの発生中にチェ
ックする.この動作は1/60秒ごとに行なわれ,従ってこ
のような期間中に2個以上のピクセル位置を移動させて
いる状態では,アドバンスビデオプロセッサ1により同
時発生チェックを行なう際に,複数のスプライトに複数
個の重畳する画素を共有させたり、若しくは、複数のス
プライト同士を重ね合わせた場合、後方のスプライト画
面を前方のスプライト画面の透明背景部分に表示させる
ことが可能である。
11番スプライトフラッグ(11S)および番号
ステータスレジスタ内の11Sステータスフラッグは,
水平走査ライン(選択モードによりライン0−209のう
ちのいずれか)に11以上のスプライトが含まれており,
かつフレームフラッグ(F)が論理0である場合は常に
0にリセットされる.
この11Sステータスフラッグは,ステータスレジスタ
の読出し完了後,あるいはアドバンスビデオプロセッサ
1が外部からリセットされた後で,0にクリヤされる.ま
た11Sフラッグが論理1にセットされた場合には必ず,
該フラッグがセットされ,有効となりこの時点で,11個
目のスプライトの番号がステータスレジスタ28の下位5
ビットに入力される.ただしこの11番目のスプライトの
設定によって割込みが行なわれることはない.
どのスプライト群(1個の群の場合もあり,複数の群
の場合もある)にスプライトの衝突が発生したかは,ス
プライト衝突検出レジスタ83(第2a図)により判定す
る.
このスプライト衝突レジスタ83は8ビットレジスタ
で,どのスプライト群が衝突を起したかを判定するのに
用いることができる.スプライトカラーバイトはカラー
ビットが4個と,先行クロックビットが1ビットと,残
りの3ビットからなり,これら残りの3ビットはスプラ
イトを8個のグループに分割するのに用いられ,スプラ
イト衝突レジスタ83の各ビットがこれら8個のグループ
のひとつに対応する.従って,2個のスプライトが衝突し
た場合には必ず,これらビットのうちの1ないしそれ以
上のビットがセットされることになる.このスプライト
衝突レジスタ83は,前記マイクロプロセッサ30がこのレ
ジスタを読出すことによって,クリアされる.スプライ
ト衝突レジスタ83における上記8個のグループの構成を
第6図に示す.なお,このレジスタ83の読出しには3回
分のデータ転送が必要である.
スプライトプロセッサ10は,図示(第1図)の実施例
では,単一のチップに形成したアドバンスビデオプロセ
ッサ1に対するスプライト制御を全面的に司るもので,
このスプライトプロセッサ10により1本の水平走査線上
に10個ものスプライト(第1図の実施例の場合)を乗せ
ることができる.従来のビデオ表示プロセッサでは,1走
査線あたりわずか4個のスプライトに限られていたので
ある.スプライト自体は多色でも単色でもよく,スプラ
イトの各々の水平走査線の半分を,選択的にそのスプラ
イトとは異なるカラーとすることもできる.さらに本実
施例において独自のスプライト同時発生検出方式が提供
されている.このような方式では,表示画面上でいずれ
か2個のスプライトが少なくとも1個の重畳するピクセ
ルを共有している時は,スプライトの同時発生が起って
いる.このような特徴を具体化するのに必要なスプライ
トマッピングは,ビデオRAM31に内蔵されている.
グラフィックスおよびテキストの処理はグラフィック
ス・テキストプロセッサ60で行なうが,この場合マイク
ロプロセッサ30によってアドバンスビデオプロセッサ1
の設定を行なうことにより,第1図に示す実施例の場
合,次の表示モードのうちいずれかの動作を行なう.
256×192個のピクセルからなる表示画面で8×8ピク
セルの各ブロックに対して2色の解像度を用いる第1の
グラフィックス表示モード.
256×192個のピクセルからなる表示画面で8×1ピク
セルの各ブロックに対して2色を用いる第2のグラフィ
ックス表示モード.
256×192個のピクセルからなる表示画面で4×2ピク
セルの各ブロックに対して2色を用いる第3のグラフィ
ックス表示モード.
512×192個のピクセルを用いる全ピクセル解像度で,8
×1ピクセルの各ブロックに対して2色を用いた高解像
度である第4のグラフィックス表示モード.
256×210個のピクセル解像度の全ビットマップを用い
る第5のグラフィックス表示モード.
24行40列のテキストを用いる第1のテキストモード.
24行80列のテキストを用いる第2のテキストモード.
ただし上記第5のグラフィックス表示モードである全
ビットマップモード以外のグラフィックス表示およびテ
キストモードは,すべてテーブル駆動とする.
第1図の実施例における音声ゼネレータ69は,オンチ
ップでの音声発生を行なうものであり,このような機能
のデバイスは,たとえばテキサスインスツルメンツ社製
のSN764889デバイス等によりおきかえ可能である.この
回路は3個のプログラマブルトーンゼネレータと,1個の
プログラマブルノイズゼネレータと,120ないし100,000H
zの周波数応答帯域と,2dBきざみで2dBから28dBまでの15
のプログラマブルな減衰ステップを有するものである.
次に参照する第2図は第1図に示すアドバンスビデオ
プロセッサ1のブロック図である.第1図につき先に述
べたごとく,内部レジスタ63は2個の読出し専用レジス
タと64個の書込み専用レジスタを含んでいる.図には,
さらに16色に各々対応する16個の9ビットのレジスタで
あるカラーパレットレジスタ2が含まれている.これら
のカラーパレットレジスタ2は,スプライト制御ロジッ
ク59(第2b図)と,前記グラフィックス・テキストプロ
セッサ60の一部を構成する第1,第2,第3のカラーバファ
61,62,64(第2b図)と,プログラムカラー用のボーダー
カラーレジスタ29(第2b図)と,テキストカラーレジス
タ30によりアドレスされる.
なお,アドバンスビデオプロセッサ1は,第1図およ
び第2図の実施例においては,グラフィックス表示モー
ドでは各文字のカラーのフェッチを行なうが,テキスト
モードでは行なわない.上記カラーパレットレジスタ2
は,カラーパレット読出しロジック65によりアドレスさ
れ,個々のカラーパレットレジスタの記憶内容はD/A変
換ロジック67に入力される.このD/A変換ロジック67
は,さきに第1図のカラーパレット・ビデオ出力ロジッ
ク57につき説明したように,RGBモニタ33にR,G,Bカラー
信号を供給するか,あるいはビデオ符号化RFモジューレ
タ37に色差信号を供給するものである.なお,アドバン
スビデオプロセッサ1の構成により,上記D/A変換ロジ
ック67の出力はRGBバス39か,あるいは色差バス41に出
力される.
カラーパレットレジスタ2は第3表に示したようにレ
ジスタR32ないしR63を含み,これらカラーパレットレジ
スタ2に対するカラーコードの入力は,カラーパレット
書込みロジック3により制御される.このパレットのフ
ォーマットを第5表および第6表に示す.該パレットは
16個の9ビットレジスタからなっており,これを用いる
ことにより,使用者はスクリーン上に512色のうち16色
を同時に表示させることができる.また外部からのリセ
ット信号にもとづいて,第7表に示すような色差出力用
のデフォールト値により,カラーパレットの初期化を行
なう.
水平カウンタすなわちプログラマブルロジックアレイ
(PLA)5により,水平走査線上の位置をカウントし,
走査ビームの位置にもとづいて命令の複号化を行なっ
て,スプライトの位置およびカラーを特定するためのD/
A変換制御ロジック67に対するタイミング信号を生成す
る.また垂直カウンタたるプログラマブルロジックアレ
イ(PLA)6は走査線上の行位置をカウントし,命令の
複号化を行なって,上記水平カウンタPLAが位置カラー
データにつき行なうのと同様,スプライトレジスタ11に
対するタイミング信号を生成する.なお第2図には示し
てないが,上記水平カウンタPLA5および垂直カウンタPL
A6は下記のような論理機能と結合されている.
カラー優先度ロジック7は、まず、後方のカラーロジ
ック29、テキストカラーロジック30、カラーバッファロ
ジック61、64、およびスプライト制御ロジック59間にお
けるカラーロジックの優先順位を決定する。この場合の
優先順位は、背景のパターン、スプライトが活性領域に
あればそのスプライト表示、さらにスプライトが重なる
場合は前方のスプライト表示の順にハードロジックによ
り自動的に決定される。この他に3種ないしそれ以上の
従属するカラーおよび7種類の動作により、適当なカラ
ーをビデオプロセッサ1に対して上記カラー優先度ロジ
ックから指定する。
割込みロジック8は,タイミング信号割込みにもとづ
いて,ホストマイクロプロセッサ30に対する割込みを行
なってレジスタのひとつへの入力を実行する.なお,第
8表において,「IE」はレジスタ28の割込みイネーブル
ビット2を,「F」はステータスレジスタの割込みフレ
ームフラッグビット0を,「PIE」はレジスタ10のプロ
グラマブル割込みイネーブルビット2を,それぞれ表わ
す.
任意の水平走査又は走査線のための割込みを行なうた
めのプログラマブル割込みロジック29は、第1図に示す
実施例では,8ビットレジスタを有し,このレジスタの記
憶内容が前記垂直カウンタPLA6の内容と比較され,その
結果,走査線がホストマイクロプロセッサ30により実行
中のプログラムシーケンスに割込むことを要求している
ことが知られた場合には,割込みロジック8に対する割
込み要求を発する.
前記スプライト制御ロジック59は,スプライトのフェ
ッチを制御するもので,垂直カウンタPLA6からの垂直位
置信号をチエックして,スプライト水平位置パターンお
よびカラーデータのフェッチを行なう.
スプライト制御ロジック59(第2b図)は,本実施例で
は32個としたスプライト全部の処理およびチェックを行
なって,その位置が有効であるかどうかを判定する.次
の走査線にスプライトが装荷(ロード)される場合、ス
プライト制御ロジック59は、そのスプライトの番号ある
いは垂直位置をスプライトスタック11に装荷(ロード)
させる制御を行う。スプライトスタック11は、スプライ
トの番号をRAMアドレスバス69に出力してビデオRAM31に
一旦書き込んだ表示データを読み戻すための検索に使用
される。
CPUレジスタ12(第2a図)は,データバス51およびア
ドバンスビデオプロセッサ1に含まれるデータバス51A
を介して,ホストマイクロプロセッサ30をビデオRAM31
とインターフェースさせる.またネームレジスタ13は,
バックグラウンドパターンのネーム(8ビット数)を記
憶するもので,これにより,次に表示すべき文字のため
のパターンバイトやカラーバイトをフェッチする.さら
にアドレスレジスタ14は,ホストマイクロプロセッサ30
からの命令(読出し令名であってもまたは書込み命令で
あっても)にもとづいてビデオRAM31をアドレスし,さ
らにアドバンスビデオプロセッサ1や内部レジスタ63,
カラーパレットレジスタ57(第1図)等をもアドレスす
る.
前記スクロールロジックは,垂直ステートレジスタ2
2,垂直スクロールレジスタ23,文字カウンタ24,水平スク
ロールレジスタ25および水平ステートレジスタ26を含む
ものである.
前記第1〜第4のグラフィックモードおよび第1,第2
のテキストモードを行なうに当って,スクリーンは4個
の文字に分割される.これらの文字は,テレビが水平お
よび垂直走査が進行するのにともなって,上記文字カウ
ンタ24により計数される.また上記水平ステートレジス
タ26は,個々の文字のどのピクセルが現在表示中である
かを判定する.さらに上記垂直ステートカウンタ22は,
各文字のどの行が現在表示中であるかを判定するもので
ある.
第5のグラフィックスモードはビットマップされるだ
けで文字に分割はされない.このモードのときには,テ
レビの水平および垂直走査が進行するのにともなって,
水平ステートレジスタ26,垂直ステートレジスタ22,およ
び文字カウンタ24がピクセルごとのカウントを行なう.
これらのカウンタはビデオRAM31のアドレスを指示する
のに用いられるものである.他方,水平スクロールレジ
スタ25は8ビット数を含んでおり,この8ビット数によ
りスクリーンの水平スクロール位置を決定する.この水
平スクロールレジスタ25の記憶内容は,各水平走査の開
始時点で水平ステートレジスタ26および文字カウンタ24
にロードされる.これらカウンタの開始位置を変更する
ことにより,スクリーンを最大256の相異る水平位置に
スクロールさせることができる.
前記垂直スクロールレジスタ23も8ビット数を含んで
おり,この8ビット数によりスクリーンの垂直スクロー
ル位置を決定する.この垂直スクロールレジスタ23の記
憶内容は,各走査の開始時に垂直ステートレジスタ22お
よび文字カウンタ24にロードされる.これらカウンタの
開始位置を変更することにより,スクリーンを最大256
の相異る位置にスクロールさせることが可能である.
ベースレジスタ15,16,17,18はビデオ情報の個々の区
画が記憶されるビデオメモリ31内の記憶位置を画定する
レジスタである.これらレジスタのうちネームベースレ
ジスタ15はメモリ内のネームテーブルの位置を画定し,
カラーベースレジスタ16はビデオカラー情報の位置を画
定し,パターンベースレジスタ17は各文字のマッピング
を行なうパターンビットの位置を画定し,またスプライ
ト位置レジスタ18はスプライトパターンやスプライトカ
ラー,スプライト水平位置,スプライト垂直位置等の記
憶場所を画定するものである.さらにコマンドレジスタ
19,20,21はアドバンスビデオプロセッサ1の
動作モードを制御するためのレジスタである。
ステータスレジスタ28は,前記データバス51Aを介し
てホストマイクロプロセッサ30に,下記の割込み情報を
反映するステータス信号を送る.
すなわち,プログラマブル割込みが発生したこと,使
用中のスプライトの数が10以上であること,2個のスプラ
イトが衝突していること,走査線上の11番目のスプライ
トに対する5ビット加算ステータスビット,等の情報で
ある.CPU制御ロジック65はホストマイクロプロセッサ30
に対する割込み信号を出力し,ビデオ内部レジスタ63あ
るいはビデオRAM31に対する割込みまたは読出しが行な
われている場合には,書込みコマンドや読出しコマンド
あるいは動作(モード)を示すモードコマンドを受け取
る.
プランクネームレジスタ27(16ビットレジスタ2個に
より構成)はメモリのある区画(セクション)から他の
区画へデータを移動させるのに用いられる.これら2個
のプランクネームレジスタ27のうち一方には移動すべき
バイト数が記憶され,他方には読出しメモリ位置が記憶
されている.書込みメモリの宛先はアドレスレジスタ14
内に位置している.
カラーバッファ60には3バイトのパターンプレーンカ
ラー情報が記憶されており,またバッファ64にはカラー
バス86に出力されるカラーが記憶されて,いつでも出力
しうる状態となっている.このバッファ64は1バイト分
の情報,または2種類の4ビットカラーを記憶するもの
で前記第1ないし第4のグラフィックス表示モードに対
しては,パターンビットが1のときはこのカラーバイト
の最下位側の数ビットがカラーバスに出力され、パター
ンビットが0のときには、このカラーバイトの最上位側
の数ビットがカラーバスに出力される。第5のグラフィ
ックス表示モード(1または0のビットがマッピングさ
れるモード)に対しては、最下位側の数ビットが表示す
べき第1番目のカラーピクセル(例えば、「1」)とな
り、最上位側の数ビットが第2番目のカラーピクセル
(例えば、「0」)となる。他方,バッファ61,62は一
時記憶用のバッファで,その記憶内容はバッファ64に入
力されることになる.
パターンバッファ84は,上記バッファ64内のどのカラ
ーを表示するかを決定する論理1および0を記憶するも
ので,その出力はパターンシフトレジスタ586に入力さ
れて,直列にシフトされる.このパターンシフトレジス
タ586の出力により,前記カラー優先度ロジック7の出
力に応じて前記バッファ64からのカラー信号がカラーバ
ス86に出力される.
スプライトレジスタ100(第2a図)はスプライト水平
ポインタ82,スプライトパターンレジスタ81,スプライト
カラーレジスタ80およびスプライト同時発生選択ロジッ
ク70を含む.この動作は各水平走査ラインにつき10個の
スプライトに対して10回ずつ繰り返される.上記スプラ
イト水平カウンタ(ポインタ)82には水平スプライト位
置が入力され,ゼロ値までデクリメント(逆歩進)され
る.ついでスプライトパターンレジスタ81がビットの直
列のシフトを開始する.この場合,ビットが1であると
きは当該スプライトカラー信号がカラーバス86に出力さ
れ,0ならばそのままとする.
上記スプライトカラーレジスタ80はスプライトカラー
用に4ビット,初期クロック用に1ビット,およびスプ
ライトグループの指示用に3ビットを有するものであ
る.
スプライト同時発生検出ロジック70(第2a図)は,ス
プライトパターンレジスタ81(第2a図)から同時に2個
もしくはそれより多いスプライトの論理1がシフト中か
どうかを判定するもので,このような状態が発生した場
合には,2個ないしはそれより多いスプライトがスクリー
ン上で衝突したことになる.これらのスプライト群は10
個のスプライトカラーレジスタ80に記憶された3ビット
からデコードされ,当該スプライト群に対応するビット
がスプライト同時発生レジスタ83に設定される.ただし
この場合,これらスプライトが重畳して表示されない影
側にあるときは、このビットの設定は行なわれない.こ
のスプライトカラーレジスタ80内の3ビットは,これを
デコードして8グループとし,各グループをスプライト
同時発生レジスタ83の1ビットに対応させることが可能
である.
次に第4図を参照して説明する.第1図および第2図
の実施例における同時発生検出装置は,本発明をビデオ
ゲームに適用する場合にとくに有効である.ここにいう
ビデオとはたとえば,スプライトグループ1に属するス
プライト1としての宇宙船110と,スプライトグループ
2に割り当てたスプライト2,3,4としての複数のロケッ
ト船112,グループ4のスプライト8であるところの空飛
ぶ円盤113,およびグループ3に属するスプライトたる流
星群115,116,117で,これらのスプライトを用いてゲー
ムを実行するのである.この場合,たとえばスプライト
群2に属するロケット船112a,b,cのうち1機が他のロケ
ット船と衝突を起したとすると,スプライトの同時発生
が検出され,スプライト同時発生レジスタ83(第2a図)
のビット2がセットされる.またスペースシップ110が
ロケット船(ミサイル)112のうち1機と衝突した場合
には,同じくスプライトの同時発生が検出されて,スプ
ライト同時発生レジスタ83のビット1および2がセット
される.ホストマイクロプロセッサ30は,このスプライ
ト同時発生レジスタ83の読出しを行ない,かつビット1
のチェックを実行することによって,スペースシップ11
0が他の物体と衝突したかどうかをチェックすることが
できる.
第5図に多色スプライトを示す.スプライトは各水平
走査ライン上で相異るカラーをもつことができる.第5
図左のスプライトは帽子121,眼123,口125,鼻126からな
り,4種類の相異るカラーをもつものであるが,これで1
スプライトである.他方,第5図中央のスプライトは顔
面のスプライト127であり,このスプライトは上記の眼1
23,口125,鼻126と同一の水平走査ライン上にあるもので
あるため,第5図左のスプライトとは別個のスプライト
として描画する必要がある.スプライト1とスプライト
2とが組み合わされることにより,(第5図右側の)ス
プライト129ができあがる.
なお第2図のスプライト同時発生検出ロジック70は,
前記スプライト群のうちの1群がしたときにスプライト
レジスタ83に対して出力する.
第7図はグラフィックスとアルファベットで表わされ
るデータの双方(あわせてビデオテキストとよぶ)を発
生可能にする為に単一チップ上で必要な処理手段を組み
合わせて示すもので,同図に例示のビデオテキスシステ
ムではモデル235,データアクセス手段234およびUART(U
niversal Asynchronous Receiver/Transimitter)233を
用いた標準的な伝送ライン237を介して双方向通信を行
なうようになっている.マイクロプロセッサ30はさらに
ROMメモリ231およびRAMメモリ232とインターフェースす
るほか,キーボード236を介してオペレータへのインタ
ーフェースをとる.また前記アドバンスビデオプロセッ
サ1はビデオRAM31を代表する4個のRAM,すなわち第7
図に示すようにA RAM,B RAM,C RAM,D RAMに接続されて
いる.これら4個のRAMとしては好ましくは,テキサス
インスツルメンツ社製のTMS4116を用いることにより,
ビデオデータの記憶に必要なメモリを提供することがで
きる.ビデオデータはアドバンスビデオプロセッサ1に
より一定のシーケンスとして出力され,ついでビデオエ
ンコーダ37によりエンコードされて,各水平走査ライン
用のドットデータとなり,かくてこの情報がテレビ受像
機35で視認することが可能となる.このテレビ受像機35
における画像のリフレッシュおよび表示に必要なビデオ
情報や同期信号は,すべてビデオディスプレイプロセッ
サ1により供給される.
第8図にDMAコントローラ103およびDMAピン101を介し
て行なう直接メモリアクセス(DMA)方式の例を示す.
このDMAピン101により,ホストマイクロプロセッサ30は
ビデオRAM31に対して直接アクセスすることができる.
このピンは,マイクロプロセッサ30によるアクセスが
行なわれていないときには,論理1状態とされる.
以上本発明の実施例につき各種説明してきたが,本発
明による装置および方法はこれら実施例に限定されるも
のでなく,記載の実施例に適宜各種の追加ないし変更を
加えてもよいことはいうまでもない.
Description: TECHNICAL FIELD The present invention relates to a video signal device, and more particularly to a video signal device.
Or multiple movable patterns to larger fixed patterns
Can be superimposed at the selected position above
Also, it concerns the video display processor. Display image
Face is one pixel at a time, horizontal and vertical
It is possible to scroll in the direction. [Prior Art] One or more movable patterns are transferred to a larger fixed pattern.
Overlay at selected position on turn (super import
The basic principle to be adopted is that of the U.S.
No. 4,243,984, which has already been disclosed. Ma
Other systems that disclose movable patterns include:
For example, U.S. Pat.Nos. 4,112,422, 4,129,858, 4,
034,990, 4,107,664, 4,016,362, 4,116,4
No. 44, No. 4,771,155, No. 4,296,476, No. 4,232,374
No. 4,177,462 and 4,119,955 etc.
There is. [Summary of the Invention] A video monitor or a TV used as a video monitor
The graphic pattern of the Levi receiver is
Scroll by hardware scroll function
It is possible to do. In this case, the vertical scroll register and horizontal scroll register
Up to 256 pixels in the horizontal direction
And up to 256 pixels vertically
Can be scrolled. This horizontal scroll
Registers form part of the advanced video processor
And is dependent on the host microprocessor (CPU).
Is loaded. Host microprocessor
8-bit information is used to determine the horizontal position of the cell, and
The 8-bit information is used to determine the horizontal position, and the
Controls the operation of the Vance Video Processor. in this case,
Depending on the vertical and horizontal dimensions of the screen, the horizontal
Crawl register or vertical scroll register
By changing any of the 8-bit storage contents
The display screen in one of the left and right directions for each pixel.
Or roll up and down. The display screen mentioned here depends on the operation mode.
Arranged in 8 to 256 lines and 192 to 256 rows
It is defined as a group of pixels. The display screen is built into the advanced video processor.
Horizontal scroll register and vertical scroll
Once by changing the contents of the
1 pixel per horizontal and vertical
It is possible to crawl. Horizontal scroll
Stored contents of register or vertical scroll register
Is changed and obtained from a storage location in the video display RAM
The data being displayed is stored in the horizontal scroll register and
The vertical scroll register allows the video display RAM
It is changed according to the address change. Example Next, an example of the present invention will be described with reference to the drawings. FIG. 1 shows an advanced video processor 1 according to the present invention.
1 is a block diagram illustrating a video display system 100 including
It is. In the figure, the host microprocessor (CPU) 3
0 is the bidirectional data bus 51, control bus 49 and interrupt line
47 and the advanced video processor (AVDP) 1
Interface. This advanced video processor
1 connects the microprocessor 30 with the color video monitor 33
It is used to interface. Advan
The video processor 1 further includes a dynamic RAM 31
To store the information displayed on the video screen.
The microprocessor 30 and the advanced video processor
Advance via an 8-bit data bus 51 between the processors 1
The configuration registers of the video processor 1 are loaded, and
The microprocessor 30 is displayed on a video screen 32.
The information to be shown is supplied to the video RAM 31. Advancebi
The video processor 1 is activated by the microprocessor 30.
Refresh video screen 32 independently of Seth
Perform Video RAM 31 has an 8-bit address bus and
Advance video processing via an 8-bit data bus
Accessed by the servicer 1. Advanced video processing
The server 1 also has the necessary RAS (row address strobe)
And CAS (column address strobe) signals
Dynamic Video RAM 31
Interface with Sessa 1. Further advance
The video processor 1 has a random access memory.
Video RAM 31 is connected, and this RAM 31
Through the memory 53, the memory address bus 55, and the control line 45.
Connected to the advanced video processor 1. Figure
As a display method for shapes (hereinafter referred to as graphics)
Can use two methods, using a red-green-blue (RGB) monitor 33
This is connected to the advanced video processor via the RGB bus 39.
And a composite video monitor / television
This is connected to a color difference bus 41 and a video encoder using a receiver 35.
Video processor via the coder / RF monitor 37
One or both of the two methods of combining with 1
Is used. The composite video monitor / telephone
The audio input is also given to the Levi receiver 35 via the audio bus 43.
available. Advanced Video Processor 1 has 7 basics
CPUs that contain functional blocks
The control logic 65 communicates with the host microprocessor 30.
Interface with advanced video processor 1
And constitutes the end of the control line 49,
Input / output data via the data bus 51,
To the host microprocessor 30 via the interrupt line 47
An interrupt operation is performed for this. This CPU control
5 types of host microprocessors 30
The basic operation of can be performed. That is, the bidet
Write data to the RAM 31;
Reading of data, internal of advanced video processor 1
The corresponding data (read from RAM 31) for register 63
Data writing of these advanced video processors 1
Data from some of the internal registers 63
Of the advanced video processor 1
To the internal audio generator 69 contained in the display logic.
It is writing to do. The format and direction of the data transfer is control line 49, especially C
By SW, CSR (top of Fig. 2a) and mode input line
Is controlled. Line CSW is accessed from microprocessor 30
This is a write selection line to the advanced video processor 1.
When this line CSW is activated to a low level,
8 bits on CD0 to CD7 (Fig. 9)
Strobe input to advanced video processor 1.
On the other hand, the line CSR
This is a read selection line to the video processor 1,
Line VSR is activated to a low level,
8-bit data from lines 1 to 7 on lines CD0 to CD7
Data is output and read by microprocessor 30
Perform Line CSW and CSR are both low level.
When activated to the audio generator 69,
Address is specified. The above mode shall be used if the originator of a read or write transfer.
This line is generally used to determine the destination.
(Microprocessor 30)
It has been continued. Advanced video with the above host microprocessor 30
Table 1 shows the data transfer method between processors 1. Video RAM control logic 6 among the basic function blocks
7 (see Fig. 1)
Controls the interface to the video RAM 31
In response to the control signal output to the control line 45, the
Of the video RAM 31 specified via the memory address bus 55
Transferred to the memory address location via the data bus 53
It is responsible for data transfer. The embodiment shown
Then, this data bus 53 is an 8-bit bidirectional bus.
The memory address bus 55 multiplexes this into 8-bit data.
Address bus. The advanced video shown in FIG.
The processor 1 has a dynamic
16K bytes (for example, TMS4416
2 or its equivalent) or 32K bytes
For example, 4 TMS4416s or their equivalents) or 6
4K bytes (for example, 8 TMS4416 or equivalent
Product) can be directly addressed (but TMS4 above)
416 is the Texas Instruments product number
). Internal registers (group) 63 shown in FIG. 1 and FIGS. 2a and 2b
Means two read-only registers, a status register and
And one sprite collision register (Table 2).
And 64 write-only registers (Table 3). This
The function of the write-only register is as follows.
That is, three of these write-only registers are
The operation mode of the advanced video processor 1 is specified.
Therefore, for example, RGB monitor 33 or composite video monitor
Operation modes required to drive the NITA / TV receiver 35
Specify options such as and the format of the video signal output. Ma
Of the write-only registers in the internal register block 63
Six are specified for the advanced video processor 1.
Display memory address mapping register by register
To specify the storage location in the video RAM 31.
It is. In addition, one of the write-only registers
Sprite processor 10 is a text register
Specify the color while operating in default mode. Alone
There are two registers, which are registers for scrolling
Where one is for horizontal scrolling and the other is vertical
It is for directional scrolling. More programmable interrupts
There is only one register, which is generated by all TV monitor signals.
During each horizontal retrace period, the interrupt register
Advanced Video Processor 1 settings can be changed
4 block move addresses and decrement
Counter register is used for each block of video memory.
The specified block of the lock is
32 memory locations.
Is a color palette pilot register.
Up to 16 types per horizontal scan line (from Lavalette)
Specify the colors that can be displayed. Next, the functions of the read-only register are as follows:
It is. That is, the status register contains interrupts and switches.
Simultaneous bright and on any one horizontal scan line
A flag indicating that there is an eleventh spride is remembered.
Have been One for the advanced video processor 1
8 bit status register 28 (Figure 2a) is included
This status register is a microprocessor
30 can read it out. This stay
Table 4 shows the format of the status register 28. interrupt
The flag indicating pending (F) and the sprite
The flag (C) indicating the occurrence of time and the 11th sprite
Flag (11S) and the 11th spr
And a number representing the site number. The status register 28 can be read at any time.
The status bits of the F, C, and 11S flags are
Test may be performed. Read status
Interrupt flag F is cleared by
Bit of frame flag (F) by asynchronous read of
May be reset and lost as a result,
The reading of status register 28 is
Only when the processor 1 interrupt is pending
Good to do. Also, reading of this status register 28
Only one transfer of data is required. Interrupt pending flag (F) The F status flag of the status register 28
Is always set to 1 when there is
Bit is set in one of the following three
In other words, when the movement of the block is completed,
When the grammatical interrupt mode is selected,
When the memory end occurs (vertical retrace period)
It is. The interrupt pending flag is the status register
Data is read from the
Reset to 0 by set signal. Appropriate interrupt enable bit (write-only register
1 IE bit 2 or PIE bit of write-only register 10
When 2) is set to 1, the F status flag
If logic is a logic one, INT is always activated low.
It is. After execution of each interrupt, status register 28
Read the interrupt mode and clear the interrupt mode.
Waits for a new interrupt at the next interrupt
Need to work. Simultaneous flag (C) The C status flag in the status register 28 is 2
When one or more sprites are fired at the same time
Is set to 1. This simultaneous occurrence of sprites
Any two sprites overlap one on the clean
This happens when pixels are shared. in this case,
Some or all of the sprites are off-screen.
Crabs and transparent color sprites are also considered.
Flag exists after completion of reading status register 28
Or advanced video processor 1 is externally reset
After that, it is cleared to logic 0. Note that reading this status register 28
Reset immediately after resetting
You need to make sure that is executed. The advanced video processor 1 controls each simultaneous
The xel position at which point on the screen
Regardless of whether the pixel is
Check. This operation is performed every 1/60 second.
Move two or more pixel positions during a period like
In the state where the
When performing an occurrence check, multiple sprites
Pixels to be overlapped, or multiple pixels
When the sprites are overlapped, the rear sprite image
Display the face on the transparent background part of the front sprite screen
It is possible. The 11th sprite flag (11S) and the 11S status flag in the number status register
Horizontal scan line (line 0-209 depending on the selection mode)
Contains more than 11 sprites,
And whenever the frame flag (F) is logic 0,
Reset to 0. This 11S status flag is the status register
After reading of data is completed, or Advanced Video Processor
After 1 is reset externally, it is cleared to 0. Ma
Whenever the 11S flag is set to logic 1,
The flag is set and becomes effective.
The number of the eye sprite is the lower 5 of the status register 28.
Input to bit. However, this 11th sprite
There is no interruption by setting. Any sprite group (may be one group, multiple groups
It can be determined whether a sprite collision occurred in
Determined by the bright collision detection register 83 (Fig. 2a).
It is. This sprite collision register 83 is an 8-bit register
To determine which sprite group caused the collision
Can be used. Sprite color byte is color
4 bits, 1 leading clock bit and 1
And the remaining three bits are
Used to divide the site into eight groups
Each bit of the unit collision register 83 consists of these eight groups.
Corresponds to one of Therefore, two sprites collide
Must be one of these bits or more.
The upper bit will be set. This sprite
The collision register 83 is stored in the register 30 by the microprocessor 30.
Cleared by reading the register. Splice
The configuration of the above eight groups in the collision register 83
Fig. 6 shows the results. Note that this register 83 is read three times.
Data transfer is required. The sprite processor 10 is an embodiment shown in FIG.
Now, the advanced video process formed on a single chip
It controls the sprite control for all
With this sprite processor 10, one horizontal scanning line
10 sprites (in the case of the embodiment of FIG. 1)
Can be With a conventional video display processor, one run
Was limited to just four sprites per line
is there. The sprite itself may be multicolor or single color.
Half of each horizontal scan line in the site
The color can be different from the light. In addition
Providing a unique sprite coincidence detection method in the embodiment
Has been done. In such a method, somewhere on the display screen
One or two sprites have at least one overlapping pixel
When sharing files, sprites occur simultaneously.
Yes. The splices needed to embody these features
The mapping is built in the video RAM31. Graphics and text processing is graphic
Text processor 60, in this case a microphone
Advanced video processor 1 by microprocessor 30
The setting of the embodiment shown in FIG.
In this case, one of the following display modes is performed. 8 × 8 pixels on a display screen consisting of 256 × 192 pixels
The first uses two color resolution for each block of cells
Graphics display mode. 8 × 1 pixels on a display screen consisting of 256 × 192 pixels
A second graphic using two colors for each block of cells
Display mode. 4 × 2 pixels on a display screen consisting of 256 × 192 pixels
Third graphics using two colors for each block of cells
Display mode. At a full pixel resolution using 512 x 192 pixels, 8
High resolution using two colors for each block of × 1 pixel
4th graphics display mode. Using all bitmaps with 256 × 210 pixel resolution
Fifth graphics display mode. First text mode using 24 rows and 40 columns of text. Second text mode using 24 rows and 80 columns of text. However, all of the fifth graphics display modes
Graphics display and text other than bitmap mode
In the text mode, all tables are driven. The audio generator 69 in the embodiment of FIG.
This function generates audio in the
Devices are, for example, Texas Instruments
It can be replaced by the SN764889 device and so on. this
The circuit consists of three programmable tone generators and one
120 to 100,000H with programmable noise generator
z frequency response band and 15 dB from 2 dB to 28 dB in 2 dB steps.
It has a programmable attenuation step of. FIG. 2 referred to next is the advanced video shown in FIG.
FIG. 2 is a block diagram of a processor 1. As described earlier with reference to FIG.
Like the internal register 63, two read-only registers
Data and 64 write-only registers. In the figure,
In addition, 16 9-bit registers each corresponding to 16 colors
A certain color palette register 2 is included. these
Color palette register 2 is a sprite control logic
59 (Figure 2b) and the graphics / text
First, second, and third color buffers that form part of Sessa 60
61, 62, 64 (Fig. 2b) and borders for program colors
Color register 29 (Fig. 2b) and text color register
Address 30. In addition, the advanced video processor 1 is shown in FIG.
In the embodiment shown in FIG.
Fetches the color of each character,
Not in mode. The above color palette register 2
Is addressed by the color palette read logic 65.
The stored contents of each color palette register are D / A
It is input to the conversion logic 67. This D / A conversion logic 67
Is the color palette and video output logic shown in Fig. 1.
R, G, B colors on the RGB monitor 33
Supply a signal or a video coded RF module
The color difference signal is supplied to the data 37. In addition, Advan
Depending on the configuration of the video processor 1, the above D / A conversion logic
The output of the block 67 is output to the RGB bus 39 or the color difference bus 41.
It is forced. The color palette register 2 is registered as shown in Table 3.
These include the color palette registers R32 to R63
The input of the color code to the star 2 is the color palette
Controlled by write logic 3. This palette
Tables 5 and 6 show the formats. The pallet is
It consists of 16 9-bit registers and uses this
This allows the user to display 16 of the 512 colors on the screen
Can be displayed at the same time. External reset
For color difference output as shown in Table 7 based on the bit signal
Initialize the color palette with the default value of
Now. Horizontal counter or programmable logic array
(PLA) 5 counts the position on the horizontal scanning line,
Decode instructions based on the position of the scanning beam
D / D to specify the position and color of the sprite
Generates timing signal for A conversion control logic 67
It is. Also, a programmable logic array as a vertical counter
B (PLA) 6 counts the row position on the scanning line, and
After decoding, the horizontal counter PLA is
In the same way as for data,
Generate a timing signal for FIG. 2 shows
Although not shown above, the above horizontal counter PLA5 and vertical counter PL
A6 is combined with the following logical functions. The color priority logic 7 first determines the color
29, text color logic 30, color buffalo
Gick 61, 64 and sprite control logic 59
Priority of the color logic to be used. In this case
Priority is given to the background pattern and sprite in the active area.
If there is, sprite display, further sprites overlap
In the case of the sprite display in the
Automatically determined. In addition, three or more
Subordinate colors and seven types of motions
The color priority log to the video processor 1.
Specify from the check. The interrupt logic 8 is based on a timing signal interrupt.
Interrupts the host microprocessor 30
And execute input to one of the registers. In addition,
In Table 8, "IE" is the interrupt enable of register 28
Bit 2 and “F” are interrupt registers in the status register.
Flag bit 0, and “PIE”
Indicates the Gramable Interrupt Enable bit 2 respectively
Yes. Interrupt for any horizontal scan or scan line
The programmable interrupt logic 29 is shown in FIG.
In the embodiment, an 8-bit register is provided.
The contents of the memory are compared with the contents of the vertical counter PLA6.
As a result, the scan line is executed by the host microprocessor 30
Requires interrupting the program sequence inside
If this is known, the interrupt logic 8
Issue a request for The sprite control logic 59 is used to
Control the vertical position from the vertical counter PLA6.
Check the sprite horizontal position pattern and
And fetch color data. The sprite control logic 59 (FIG. 2b) is used in this embodiment.
Processes and checks all 32 sprites
To determine whether the position is valid. Next
When the sprite is loaded on the scan line of
The sprite control logic 59 has the number of the sprite.
Or load the vertical position on the sprite stack 11 (load)
Is performed. Sprite stack 11
Output to the RAM address bus 69 and output to the video RAM 31
Used for search to read back display data once written
Is done. The CPU register 12 (Fig. 2a)
Data bus 51A included in advanced video processor 1
Via the host microprocessor 30 to the video RAM 31
Interface. The name register 13
Enter the background pattern name (8-bit number)
Remember, this allows for the next character to be displayed
Fetch pattern bytes and color bytes of. Further
The address register 14 has a host microprocessor 30
Command (even if it is a read command or a write command)
Address the video RAM 31 based on
In addition, advanced video processor 1 and internal register 63,
Address color palette register 57 (Fig. 1)
It is. The scroll logic includes a vertical state register 2
2, vertical scroll register 23, character counter 24, horizontal scroll
Includes roll register 25 and horizontal state register 26
Thing. The first to fourth graphic modes and the first and second graphic modes
4 screens for the text mode
Is divided into. These characters are used when the TV is horizontal.
As the vertical scanning progresses, the character
Counter 24. Also the above horizontal state register
26, which pixel of each character is currently being displayed
Is determined. Further, the vertical state counter 22
Determine which line of each character is currently being displayed.
is there. The fifth graphics mode is bitmapped
Will not be split into characters. In this mode,
As the horizontal and vertical scanning of the levi progresses,
Horizontal state register 26, vertical state register 22, and
And the character counter 24 counts for each pixel.
These counters point to the address of video RAM 31
This is used for. On the other hand, horizontal scroll register
The star 25 includes an 8-bit number, and the 8-bit number
The horizontal scroll position of the screen. This water
The stored contents of the horizontal scroll register 25 are the
Initially, the horizontal state register 26 and character counter 24
Is loaded into. Change the starting position of these counters
This allows the screen to be placed in up to 256 different horizontal positions
You can scroll. The vertical scroll register 23 also contains an 8-bit number.
And the vertical scroll of the screen
Determine the position of the file. This vertical scroll register 23
The contents are stored in the vertical state register 22 at the start of each scan.
And loaded into character counter 24. Of these counters
Up to 256 screens by changing the starting position
It is possible to scroll to different positions of. Base registers 15, 16, 17, and 18 are individual sections of video information.
Defines the storage location in the video memory 31 where the image is stored
It is a register. Of these registers, the name base register
Register 15 defines the location of the name table in memory,
Color base register 16 defines the location of video color information.
The pattern base register 17 maps each character.
To determine the position of the pattern bits
The position register 18 stores the sprite pattern and sprite
Of sprites, sprite horizontal position, sprite vertical position, etc.
It defines the storage space. Further command register
Reference numerals 19, 20, and 21 denote registers for controlling the operation mode of the advanced video processor 1. The status register 28 is connected via the data bus 51A.
The following interrupt information to the host microprocessor 30.
Send a status signal to reflect. In other words, the occurrence of a programmable interrupt
The number of sprites in use is 10 or more, and two sprites
Site collision, eleventh splice on scan line
Information such as a 5-bit addition status bit for the
The CPU control logic 65 is the host microprocessor 30
Output an interrupt signal to the internal video register 63
Or interrupt or read to video RAM 31
Write and read commands, if any
Or receives a mode command indicating the operation (mode)
It is. Plank name register 27 (two 16-bit registers
From one section of memory to another
Used to move data to parcels. These two
Should move to one of the plank name registers 27
The number of bytes is stored, the other is the read memory location
Has been done. The destination of the write memory is address register 14.
Is located within. The color buffer 60 has a 3-byte pattern plane
Color information is stored in the buffer 64
Color output to bus 86 is stored and output at any time
It is in a state where it can be done. This buffer 64 is 1 byte
That stores the information of two or four types of 4-bit color
Corresponding to the first to fourth graphics display modes.
When the pattern bit is 1, this color byte
Are output to the color bus and the least significant bits of
Bit is 0, the most significant bit of this color byte
Are output to the color bus. Fifth graphics
Display mode (1 or 0 bit is mapped
Mode), the least significant bits are displayed.
To be the first color pixel (eg, "1")
The most significant bits are the second color pixel
(For example, “0”). On the other hand, buffers 61 and 62
This is a buffer for storing time, and the stored contents are stored in buffer 64.
You will be empowered. The pattern buffer 84 stores
Logic 1 and 0 that determine whether to display
Therefore, the output is input to the pattern shift register 586.
Are shifted in series. This pattern shift register
Output of the color priority logic 7 by the output of the
The color signal from the buffer 64 is changed according to the force.
Is output to step 86. Sprite register 100 (Figure 2a) is sprite horizontal
Pointer 82, sprite pattern register 81, sprite
Color register 80 and sprite simultaneous selection logic
Including 70. This operation is equivalent to 10 horizontal scan lines.
This is repeated 10 times for sprites. Supra above
The horizontal sprite position is assigned to the site horizontal counter (pointer) 82.
Is decremented (reversely stepped) to zero value
It is. Next, the sprite pattern register 81
Start shifting columns. In this case, if the bit is 1,
The sprite color signal is output to the color bus 86.
If it is 0, leave it as it is. The above sprite color register 80 is a sprite color
4 bits for initial clock, 1 bit for initial clock, and
It has three bits for indicating a light group.
It is. The sprite coincidence detection logic 70 (Fig. 2a)
Two simultaneously from the bright pattern register 81 (Fig. 2a)
Or logical 1 of more sprites is shifting
To determine if such a condition has occurred.
Two or more sprites
Collision on the screen. These sprites are 10
3 bits stored in the sprite color registers 80
And the bit corresponding to the sprite group
Is set in the sprite coincidence register 83. However
In this case, these sprites are shadowed
When this bit is set, this bit is not set. This
The three bits in the sprite color register 80
Decode into 8 groups and sprite each group
Can correspond to 1 bit of coincidence register 83
. Next, a description will be given with reference to FIG. Figures 1 and 2
The coincidence detection device in the embodiment of the present invention
This is especially effective when applied to games. Say here
A video is, for example, a video that belongs to sprite group 1.
Spaceship 110 as Prite 1 and Sprite Group
Multiple locations as sprites 2,3,4 assigned to
Flying on a boat 112, sprite 8 of group 4
Disk 113, and sprite flow belonging to group 3
The star cluster 115, 116, 117 uses these sprites to
Execute the system. In this case, for example, a sprite
One of the rocket ships 112a, b, c belonging to group 2 is assigned to another location
And sprites occur simultaneously
Is detected and the sprite coincidence register 83 (Fig. 2a)
Bit 2 is set. Space Ship 110
Collision with one of the 112 rocket ships (missiles)
In the same way, the simultaneous occurrence of sprites is detected,
Bits 1 and 2 of write simultaneous register 83 are set
Is performed. The host microprocessor 30
Reads out the simultaneous register 83 and sets bit 1
Performing a check on spaceship 11
Checking if 0 collided with another object
it can. Figure 5 shows a multicolor sprite. Sprite is horizontal
Can have different colors on a scan line. Fifth
The sprite on the left of the figure consists of a hat 121, eyes 123, mouth 125, and nose 126.
And have four different colors.
It is a sprite. On the other hand, the sprite in the center of FIG.
Surface sprite 127, which is
23, mouth 125, nose 126 on the same horizontal scan line
Therefore, a sprite that is separate from the sprite on the left in Fig. 5
Must be rendered as. Sprite 1 and sprite
2 is combined with the
Prite 129 is completed. The sprite coincidence detection logic 70 shown in FIG.
A sprite when one of the sprites
Output to register 83. Figure 7 is represented by graphics and alphabets
Data (also referred to as video text)
In order to be able to produce
The video text system shown in the figure is also shown.
Model 235, data access means 234 and UART (U
niversal Asynchronous Receiver / Transimitter) 233
Two-way communication via the standard transmission line 237 used.
It has become. Microprocessor 30
Interface with ROM memory 231 and RAM memory 232
And an operator interface via keyboard 236.
-Face. In addition, the advanced video processor
The first RAM is four RAMs representing the video RAM 31, that is, the seventh RAM.
Connected to A RAM, B RAM, C RAM, DRAM as shown
Yes. These four RAMs are preferably Texas
By using TMS4116 manufactured by Instruments,
Providing the memory required to store video data.
Wear. Video data is sent to the advanced video processor 1.
It is output as a more constant sequence and then video
Each horizontal scan line is encoded by the encoder 37
Dot data for the TV receiver
It becomes possible to visually recognize it with the machine 35. This TV receiver 35
Required for refreshing and displaying images on a computer
All information and synchronization signals are transferred to the video display
Supplied by service 1. FIG. 8 shows an example of the operation through the DMA controller 103 and the DMA pin 101.
Here is an example of direct memory access (DMA) method.
This DMA pin 101 allows the host microprocessor 30
The video RAM31 can be accessed directly. This pin is accessed by microprocessor 30
If not, it will be in the logic 1 state. Various embodiments of the present invention have been described above.
The device and method according to Ming are limited to these examples.
Rather, various additions or changes may be made to the described embodiment as appropriate.
Needless to say, it can be added.
【図面の簡単な説明】
第1図は本発明によるビデオ表示システムを示すブロッ
ク図,第2図(第2a,2b図)は第1図に示すシステムに
おけるアドバンスビデオプロセッサを示すブロック図,
第3図は2個のスプライト間の衝突直前の状態を示す概
略図,第4図はプライトをコンピュータゲームに用いた
場合の説明図,第5図はスプライトを用いて図形表示を
行なった場合の説明図,第6図は本発明におけるバイト
およびビットの割当て方式を示す図,第7図本発明の他
の実施例を示すブロック図,第8図は本発明によるアド
バンスビデオプロセッサに直接メモリアクセス機能を用
いる場合の構成を示すブロック図である。
1……アドバンスビデオプロセッサ,
10……スプライトプロセッサ,
30……ホストマイクロプロセッサ(CPU),
31……ビデオRAM,
33……カラー(RGB)モニタ,
35……合成ビデオモニタまたはテレビ受像機,
37……ビデオエンコーダまたはRFモジレータ,
57……カラーパレットおよびビデオ出力ロジック,
60……グラフィックスおよびテキストプロセッサ,
63……内部レジスタ,
65……CPU(マイクロプロセッサ)制御ロジック,
67……ビデオRAM制御ロジック,
69……音声ゼネレータ.BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing a video display system according to the present invention. FIG. 2 (FIGS. 2a and 2b) is a block diagram showing an advanced video processor in the system shown in FIG.
FIG. 3 is a schematic diagram showing a state immediately before a collision between two sprites, FIG. 4 is an explanatory diagram when a sprite is used in a computer game, and FIG. 5 is a diagram when a graphic is displayed using a sprite. FIG. 6 is a diagram showing a method of allocating bytes and bits in the present invention, FIG. 7 is a block diagram showing another embodiment of the present invention, and FIG. 8 is a function of direct memory access to an advanced video processor according to the present invention. FIG. 3 is a block diagram showing a configuration in the case of using. 1 advanced video processor, 10 sprite processor, 30 host microprocessor (CPU), 31 video RAM, 33 color (RGB) monitor, 35 composite video monitor or television receiver, 37 ... Video encoder or RF modulator, 57 ... Color palette and video output logic, 60 ... Graphics and text processor, 63 ... Internal registers, 65 ... CPU (microprocessor) control logic, 67 ... Video RAM control Logic, 69 ... Voice generator.
フロントページの続き (56)参考文献 特開 昭53−33741(JP,A) 特開 昭53−125732(JP,A) 特開 昭55−123732(JP,A) 特開 昭56−94390(JP,A) 特開 昭56−94391(JP,A) 特開 昭56−43977(JP,A) 特開 昭56−94389(JP,A) 特開 昭56−150039(JP,A) 特開 昭57−11390(JP,A) 特開 昭58−46978(JP,A) 特開 昭58−97378(JP,A)Continuation of front page (56) References JP-A-53-33741 (JP, A) JP-A-53-125732 (JP, A) JP-A-55-123732 (JP, A) JP-A-56-94390 (JP, A) JP-A-56-94391 (JP, A) JP-A-56-43977 (JP, A) JP-A-56-94389 (JP, A) JP-A-56-150039 (JP, A) JP-A-57-11390 (JP, A) JP-A-58-46978 (JP, A) JP-A-58-97378 (JP, A)
Claims (1)
書込みをするためのメモリポートと、 前記メモリポートと接続し、前記外部メモリから走査線
形ビデオ表示装置の画素に対応する色データを前記メモ
リポートを通じて連続読出しする画像処理装置と、 スプライト水平位置、および、動画に対応するスプライ
ト色データを記憶し、前記ビデオ表示装置の走査線の水
平位置に対応する前記動画を含むときに前記スプライト
色データを出力する少くとも一つのスプライトレジスタ
と、 入力、複数の色パレットレジスタ、および、出力を含
み、前記複数の色パレットレジスタはその数を超える色
数を特定可能な色符号を各々記憶し、前記入力で受信し
た色データに対応する色符号を前記出力を通じて出力す
る色パレットと、 前記画像処理装置、前記少くとも一つのスプライトレジ
スタ、および、前記色パレットに接続され、前記スプラ
イトレジスタのスプライト色データ出力がないときは前
記画像処理装置から前記色パレットの入力へ前記色デー
タを供給し、かつ、どれか1つの前記スプライトレジス
タのスプライト色信号出力があるときは所定のスプライ
ト優先順位内で最優先順位を有するスプライトレジスタ
から前記色パレットの入力へ前記スプライト色データを
供給する色優先順位論理回路と、 前記色パレットの出力に接続される入力、および、出力
を有し、前記入力で受信した色符号に対応するアナログ
色信号を出力するデジタル・アナログ変換器と、 前記画像処理装置および前記少くとも一つのスプライト
レジスタに接続され、前記ビデオ表示装置の走査線の次
の水平ラインが動画を含む場合に、その動画のスプライ
ト水平位置およびスプライト色データを対応するスプラ
イトレジスタに格納し、それにより一つの動画が異なる
水平ライン毎に異なるスプライト色データを含み得るス
プライト制御論理回路と、 を含むビデオ表示処理装置。(57) [Claims] A video display processing device, comprising: a memory port for reading or writing display data and a color code from an external memory; and a color corresponding to a pixel of the scanning linear video display device connected to the memory port, from the external memory. An image processing apparatus for continuously reading data through the memory port; a sprite horizontal position; and sprite color data corresponding to a moving image. The image processing device stores the moving image corresponding to a horizontal position of a scanning line of the video display device. The at least one sprite register for outputting the sprite color data, an input, a plurality of color palette registers, and an output, wherein the plurality of color palette registers each include a color code capable of specifying a number of colors exceeding the number. A color to store and output through said output a color code corresponding to the color data received at said input A palette, the image processing device, the at least one sprite register, and the color palette connected to the color palette, and when there is no sprite color data output of the sprite register, the image processing device sends the color to the input of the color palette. When data is supplied, and when there is a sprite color signal output from any one of the sprite registers, the sprite color data is supplied from a sprite register having the highest priority within a predetermined sprite priority to an input of the color palette. A color priority logic circuit, an input connected to the output of the color palette, and a digital-to-analog converter having an output and outputting an analog color signal corresponding to the color code received at the input; An image processing device and the at least one sprite register; When the horizontal line next to the scanning line of the display device includes a moving image, the sprite horizontal position and sprite color data of the moving image are stored in the corresponding sprite registers, so that one moving image has a different sprite color for each different horizontal line. A video display processor comprising: sprite control logic that can include data.
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US60067284A | 1984-04-16 | 1984-04-16 | |
| US60092184A | 1984-04-16 | 1984-04-16 | |
| US60073784A | 1984-04-16 | 1984-04-16 | |
| US600672 | 1984-04-16 | ||
| US600921 | 1984-04-16 | ||
| US600737 | 1984-04-16 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6122394A JPS6122394A (en) | 1986-01-30 |
| JP2887236B2 true JP2887236B2 (en) | 1999-04-26 |
Family
ID=27416808
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60081208A Expired - Lifetime JP2887236B2 (en) | 1984-04-16 | 1985-04-16 | Video display processing device |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0159851B1 (en) |
| JP (1) | JP2887236B2 (en) |
| DE (1) | DE3586969T2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05108043A (en) * | 1991-10-16 | 1993-04-30 | Pioneer Video Corp | Graphic decoder |
| US6078306A (en) * | 1997-10-21 | 2000-06-20 | Phoenix Technologies Ltd. | Basic input-output system (BIOS) read-only memory (ROM) with capability for vertical scrolling of bitmapped graphic text by columns |
| JP4530679B2 (en) * | 2004-02-12 | 2010-08-25 | 株式会社三共 | Game machine |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4296476A (en) * | 1979-01-08 | 1981-10-20 | Atari, Inc. | Data processing system with programmable graphics generator |
| DE2952180A1 (en) * | 1979-12-22 | 1981-07-02 | Dornier System Gmbh, 7990 Friedrichshafen | DEVICE FOR OVERLAYING AND ACCURATE POSITIONING OR POINTLY SHIFTING OF SYNTHETICALLY GENERATED IMAGES |
| GB2070399B (en) * | 1980-02-27 | 1983-10-05 | Xtrak Corp | Real time toroidal pan |
-
1985
- 1985-04-09 DE DE8585302465T patent/DE3586969T2/en not_active Expired - Fee Related
- 1985-04-09 EP EP85302465A patent/EP0159851B1/en not_active Expired - Lifetime
- 1985-04-16 JP JP60081208A patent/JP2887236B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE3586969D1 (en) | 1993-02-25 |
| DE3586969T2 (en) | 1993-05-06 |
| EP0159851A3 (en) | 1990-03-07 |
| JPS6122394A (en) | 1986-01-30 |
| EP0159851B1 (en) | 1993-01-13 |
| EP0159851A2 (en) | 1985-10-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5089811A (en) | Advanced video processor having a color palette | |
| CA1283980C (en) | Display generator circuitry for personal computer system | |
| US4642794A (en) | Video update FIFO buffer | |
| US4829295A (en) | Image synthesizer | |
| US4914729A (en) | Method of filling polygonal region in video display system | |
| US5103499A (en) | Beam synchronized coprocessor | |
| US5815169A (en) | Frame memory device for graphics allowing simultaneous selection of adjacent horizontal and vertical addresses | |
| US4642789A (en) | Video memory controller | |
| JP2517123Y2 (en) | Memory device | |
| JPH09245179A (en) | Computer graphics equipment | |
| US4703317A (en) | Blinking of a specific graph in a graphic display | |
| US5448264A (en) | Method and apparatus for separate window clipping and display mode planes in a graphics frame buffer | |
| JPH0377530B2 (en) | ||
| JPH0769969B2 (en) | Graphic display processor | |
| JP2887236B2 (en) | Video display processing device | |
| US4626839A (en) | Programmable video display generator | |
| EP0062669B1 (en) | Graphic and textual image generator for a raster scan display | |
| US5642138A (en) | Display control system using a different clock in the graphics mode from that in the text mode in accessing an image memory | |
| CA2021828C (en) | Display system with graphics cursor | |
| EP0165665A2 (en) | Sprite collision detector | |
| JP2898482B2 (en) | Computer game equipment | |
| JP2830765B2 (en) | Polygon data sorting method and game device using the same | |
| JPH0887267A (en) | Image processing device | |
| JPH07199907A (en) | Display controller | |
| JPH06242772A (en) | Sprite control system |