JPH05303525A - 高速描画装置 - Google Patents

高速描画装置

Info

Publication number
JPH05303525A
JPH05303525A JP4107408A JP10740892A JPH05303525A JP H05303525 A JPH05303525 A JP H05303525A JP 4107408 A JP4107408 A JP 4107408A JP 10740892 A JP10740892 A JP 10740892A JP H05303525 A JPH05303525 A JP H05303525A
Authority
JP
Japan
Prior art keywords
address
source
destination
signal
area
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.)
Withdrawn
Application number
JP4107408A
Other languages
English (en)
Inventor
Tatsuhiko Sakamoto
辰彦 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP4107408A priority Critical patent/JPH05303525A/ja
Publication of JPH05303525A publication Critical patent/JPH05303525A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【目的】 パターンデータを利用した描画処理を高速で
行なうことを可能にする。 【構成】 ソースアドレス領域を走査する走査アドレス
信号を繰返し発生するソースアドレス繰返し発生回路3
2と、デスティネーション領域を走査するアドレス信号
を出力するデスティネーションアドレス発生回路24
と、メモリ16の、ソース領域の、ソースアドレス信号
SAによって指定されるアドレスから、デスティネーシ
ョン領域の、デスティネーションアドレスDAに示され
るアドレスに対して画像情報を転送するための回路2
2、28、30、36、38を含む。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、図形描画を行なうた
めのシステムに関し、特に、線パターン、塗りパターン
などのパターンのある図形描画をハードウェア的に高速
で行なう高速描画装置に関する。
【0002】
【従来の技術】図形描画を行なうシステムにおいて、図
6に示されるような直線描画、図7に示されるような、
線種(線パターン)のある直線描画、図9に示されるよ
うな矩形領域の塗り、図10に示されるような矩形領域
の特定のパターンによる塗りなどを行なう場合がある。
図8には、図7に示される線種のある直線描画において
使用される線パターンが、図11には図10に示される
ようなパターンのある矩形領域の塗りにおいて用いられ
る、パターンテーブルが示されている。
【0003】図7、図10に示されるような線パターン
のある直線描画、塗りパターンのある図形の塗り描画処
理は、従来以下の2つの方法のいずれかによって行なわ
れていた。
【0004】方法1:ソフトウェアで処理する方法 図12を参照して、ソフトウェア処理によって上述のパ
ターンのある図形描画処理を行なうためのシステムは、
CPU10と、プログラム/データ用メモリ12と、表
示用メモリ16と、表示装置18とを含む。プログラム
/データ用メモリ12は、CPU10の動作を制御する
プログラムを格納しておく領域、および動作のためのデ
ータを格納する領域として使用される。CPU10は、
メモリ12に格納されたプログラムに従って、表示用メ
モリ16への描画処理を行なうためのものである。表示
装置18は、表示用メモリ16の格納内容を表示するた
めのものであり、たとえばCRT(陰極線表示管)、L
CD(液晶表示装置)などからなる。表示用メモリ16
は、表示装置18に表示されるデータを格納するための
メモリである。表示内容を変更する場合には、表示用メ
モリ16の内容を変更することで行なうことができる。
【0005】図12に示されるようなシステム構成にお
いて、図7に示されるような線パターンのある直線の描
画を行なう場合の動作は次のように行なわれる。
【0006】図13を参照して、まずステップS81
で、パターンのどの部分から使用するかを決定するため
にパターンスタートポインタを設定する処理が行なわれ
る。たとえば、図8に示されるパターンの例では、パタ
ーンの始点はA点、終点はB点である。パターンスター
トポインタの位置は通常はA点であるが、必ずしもA点
でなくてもよく、A点〜B点の間の、たとえばC点を指
定することもできる。C点をパターンスタートポインタ
の位置として指定した場合には、描画される直線のパタ
ーンは図7に示されるものとは異なったものとなる。図
7は、図8に示されるパターンのA点をパターンスター
トポインタとした場合の描画結果である。
【0007】続いてステップS82において、パターン
スタートポインタがパターンの終了点を越えているかど
うかについての判定が行なわれる。越えている場合には
制御はステップS83からステップS84に進み、越え
ていない場合には制御は直接ステップS84に進む。
【0008】ステップS83では、パターンを繰返しそ
の始点から利用するために、パターンスタートポインタ
をパターンの始点に戻す処理が行なわれる。
【0009】ステップS84においては、パターンテー
ブルの内容のうち1バイト分のデータを利用して描画す
る処理が行なわれる。
【0010】ステップS82〜S84の処理は、パター
ンテーブルの内容を数回繰返し利用するためのものであ
る。具体的には、図8に示されるパターンにおいて、パ
ターンスタートポインタがパターンの終了点(B点)ま
で到達したかどうかを判定し、もし到達していれば再び
A点からパターンの利用を行なう。このようにすること
により、図7に示されるようなパターンを有する直線描
画が行なわれる。
【0011】ステップS84の後、制御はステップS8
5に進む。ステップS85では、図12の表示用メモリ
16の、描画すべきアドレス(図形を書込むべきアドレ
ス)を更新する処理が行なわれる。
【0012】続いてステップS86で、パターンテーブ
ルの次の内容を利用できるようにするために、パターン
スタートポインタの内容を更新する処理が行なわれる。
ステップS84で1バイト分のデータを利用している場
合には、ステップS86ではパターンスタートポインタ
を1バイト分進める処理が行なわれる。
【0013】続いてステップS87では、描画すべき直
線の終了点まで描画処理が終了したか否かについての判
断が行なわれる。終了点までの描画が終了していれば処
理は終了する。終了していなければ制御は再びステップ
S82に戻り、ステップS82〜S87の処理を繰返し
行なう。これにより、次のパターンテーブルの内容が次
の描画アドレスに描画される。そしてステップS82に
おける判断の答が「真(T)」となって初めて描画処理
全体が終了することになる。
【0014】S84の描画処理では、実際には、描画を
開始するドット位置により、余分なビットを描画先アド
レスに書込まないようにするために、ビットマスク処理
を行なう必要がある。また、利用するパターンテーブル
の開始ドット位置と、描画を開始する直線のドット位置
との間にずれがあれば、パターンテーブルの利用に先立
って複数回のビットシフト処理を行なう必要がある。さ
らに、描画先のアドレスにすでにデータが書込まれてい
る場合には、新しく描画するために書込まれるデータ
と、これら以前に書かれていたデータとの間でAND、
ORなどのラスタオペレーションを行ない、その結果を
新しい描画データとするなどの処理を行なう必要もある
ことも多い。
【0015】このような処理は次のようにして行なわれ
る。たとえば図14を参照して、図14(a)に示され
るような内容のデータが書込まれた表示メモリの、描画
開始位置として示された位置から描画終了位置として示
された位置まで、図14(b)に示されるようなパター
ンを書込む場合を考える。このパターンテーブルは、図
14(b)にも示されるように16ビット、すなわち2
バイトである。また、そのパターン開始位置は、と書
込まれたビットであるものとする。
【0016】図14(a)に示される描画開始位置と、
図14(b)に示されるパターン利用開始位置との間に
は、2ビットのずれがある。したがって、図14(c)
に示されるように、描画開始位置から描画終了位置まで
の間に、パターン利用開始位置からの15ビットを書込
むためには、2ビットのずれを解消するために、パター
ンテーブルのデータを左に2ビットシフトしたものを利
用する必要がある。また、表示用メモリにもとから書込
まれていたデータのうち、描画開始位置よりも前のデー
タおよび描画終了位置よりも後のデータについては、も
とのデータが残るようにマスク処理を行なう必要があ
る。この場合、図14(c)に示されるような描画結果
は、次のようにして出られる。
【0017】以下の説明では、図14に示される最初の
8ビット(1バイト)分の書込処理の手順を説明する。
この1バイトのデータは以下の手順で作成される。
【0018】(1) 図14(b)に示されるパターン
テーブルのデータの1バイト目および2バイト目を、あ
わせて2ビット左へシフトする。シフト結果を、利用す
べきパターンテーブルの内容とする。この結果、図15
(a)に示されるようなデータが得られる。この場合、
この1バイト分のみが図示されていることに注意すべき
である。以下同様である。
【0019】(2) さらに、この最初の1バイトの左
4ビットのデータは、表示用メモリのもとのデータを残
す必要がある。そのため、この左4ビットにはデータを
書込まないようにビットマスクを行なう。ビットマスク
は、図15(b)に示されるように、1バイトのデータ
のうち、ビットマスクを行なうビットについては“0”
を、ビットマスクを行なわないビットについては“1”
というデータを準備し、書込むべきデータ(図15
(a))とビットマスク用のデータとの間のANDを行
なうことによって行なわれる。この結果、図15(c)
に示されるように、先頭から4ビットについては“0”
が、後半の4ビットについては図15(a)に示される
パターンデータのうちの第5番目〜第8番目のビット
(第4ビット〜第7ビット)からなる1バイトが得られ
る。
【0020】(3) 図16(b)に示されるようなも
との表示用メモリのデータのうち、左4ビットのみ残
し、右4ビットは“0”が書込まれた図6(c)に示さ
れるような1バイトを得る必要がある。このために、図
16(a)に示されるように、残すべき4ビットの部分
には“1”が、マスクすべき後半4ビットには“0”が
それぞれ書込まれた1バイトのデータを準備し、この1
バイトと図16(b)に示される表示用メモリの格納内
容の1バイトとの間のANDをとる。このANDの結
果、図16(c)に示される1バイトが得られる。
【0021】(4) 図17を参照して、(a)で示さ
れる(2)の処理で得られたデータと、(b)で示され
る、(3)の処理によって得られたデータとの間でOR
をとる。このOR演算の結果、左4ビットにはもとの表
示用メモリの内容が、右4ビットにはシフトされたパタ
ーンテーブルの内容が入った、図17(c)に示される
ようなデータが得られる。そのデータが表示用メモリに
描画すべきデータとなる。
【0022】さらに、パターンテーブルの場合には単に
表示メモリの格納内容に上書きするだけではなく、何ら
かのデータとの間でAND、ORなどのラスタオペレー
ションを行なう場合もある。この場合には、パターンテ
ーブルを必要ビット数シフトした後、所望のラスタオペ
レーションを行ない、その結果を新しく利用すべきパタ
ーンテーブルの内容とする。後は、上述の処理と同様の
詳細を行なえばよい。このようにして新しい表示用メモ
リの内容が得られ、さらにこのような処理を繰返し行な
うことにより、パターンのある直線の描画を行なうこと
かできる。
【0023】図10に示されるようなパターンのある塗
り描画を行なう場合、ソフトウェアでは以下の様な方法
によって処理される。図18を参照して、まずステップ
S101で、パターン行ポインタの設定が行なわれる。
パターン行ポインタは、パターンテーブルのどの行が利
用されているかを示すものであり、これを所定の初期値
に設定することにより、パターンテーブルのどの行から
利用するかを設定することができる。
【0024】続いてステップS102において、パター
ン行ポインタの示す行が、パターンテーブルの終了行を
越えたかどうかについての判断が行なわれる。越えてい
れば制御はステップS103からステップS104に進
み、越えていない場合には制御は直接ステップS104
に進む。
【0025】ステップS103においては、パターン行
ポインタが、パターンテーブルの先頭行に設定される。
【0026】ステップS104では、すでに説明したよ
うな直線描画関数を使用することにより、パターンの1
ラインを描画する処理が行なわれる。
【0027】続いてステップS105では、描画すべき
ラインを更新する処理が行なわれる。この処理により、
表示用メモリの、描画されるライン位置が1行進むこと
になる。
【0028】ステップS106では、利用するパターン
テーブルのパターン行ポインタを更新する処理が行なわ
れる。
【0029】ステップS107では、表示用メモリの、
描画すべき矩形の終了点まで描画が終了したかどうかに
ついての判断が行なわれる。終了していればすべての処
理が終了する。終了していなければ作業はステップS1
02に戻り、以下ステップS102〜S107によって
各ラインを順次描画する処理が繰返し行なわれる。この
ようにして、矩形の塗り描画処理はソフトウェアによっ
て行なわれる。
【0030】方法2:BITBLT機能による方法 直線描画および矩形の塗り描画処理において、BITB
LT(bit boundary block tra
nsfer)機能を利用することも行なわれる。
【0031】BITBLTとは、図19に示されるよう
に、矩形領域の内容を、別の矩形領域にコピーする機能
である。元の矩形領域をソース領域、コピー先の矩形領
域をデスティネーション領域と呼ぶ。BITBLT装置
には、ただ単にコピーするのではなく、ソース領域と、
デスティネーション領域とのデータの間にAND、OR
などのラスタオペレーションを行ない、新しいデスティ
ネーション領域のデータを決定する機能が用意されてい
るものもある。ラスタオペレーションの1機能として、
デスティネーション領域にデータ“1”を書込む機能と
データ“0”を書込む機能とを用意しておくことによ
り、デスティネーション領域をデータ“1”またはデー
タ“0”で埋め尽くすことができる。
【0032】このように、ある一定のデータでデスティ
ネーション領域を埋め尽くす機能を利用すると、直線の
描画および矩形領域の塗り描画を容易に実現することが
できる。たとえば、デスティネーション領域として、描
画したい直線の場所または塗りつぶしたい矩形領域の場
所を指定すればよい。デスティネーション領域が直線で
ある場合とは、矩形領域の幅または高さを1とした特別
な場合と考えることもできる。
【0033】BITBLT機能を用いて描画処理を行な
うシステムのシステム構成図を図20に示す。図20を
参照して、このシステムは、CPU10と、プログラム
/データ用メモリ12と、BITBLT装置78と、表
示用メモリ16と、表示装置18とを含む。図20にお
いて、図12に示されるシステムと同様の部品には同一
の参照番号および名称が与えられている。それらについ
ての機能も同一である。したがってここでは詳しい説明
は繰返さない。
【0034】図20に示すシステムにおいては、表示用
メモリ16が、BITBLT装置78の管理下にある。
CPU10は、BITBLT装置78を用いることによ
り、表示用メモリ16に高速で描画を行なうことかでき
る。
【0035】
【発明が解決しようとする課題】上述の2つの方法のう
ち、方法1においては、すべてをソフトウェアで処理す
るために描画速度が遅いという問題点がある。また方法
2においては、BITBLT機能は通常ハードウェア化
されているために高速処理が可能であるという利点があ
る。しかし、この方法においては、方法1において可能
であったようなパターンを用いた描画を行なうことがで
きない。これを解決するために、描画したい領域と同じ
大きさの領域をもつパターンテーブルを準備し、これを
ソース領域として指定することによって描画処理に利用
することも可能である。しかし、このような方法を用い
る場合には大きなソース領域が必要であり、また処理の
高速化は望めないという問題点がある。
【0036】それゆえに請求項1、2および3に記載の
発明の目的は、パターンのある描画処理を高速に行なう
ことが可能な高速描画装置を提供することである。
【0037】
【課題を解決するための手段】請求項1に記載の発明に
係る高速描画装置は、記憶手段に接続され、記憶手段内
の指定されたソース領域に格納された画像情報を、記憶
手段内の指定されたデスティネーション領域に高速で転
送するための高速描画装置であって、所定の周期でソー
ス領域を所定の順序で走査するためのソースアドレス信
号を繰返し発生するためのソースアドレス信号発生手段
と、所定の周期で、デスティネーション領域を所定の順
序で走査するデスティネーションアドレス信号を発生す
るためのデスティネーションアドレス信号発生手段と、
所定の周期で、記憶手段内の、アドレス信号によって決
定されるアドレスから、デスティネーションアドレス信
号によって特定されるアドレスに画像情報を転送するた
めの転送手段とを含む。
【0038】請求項2に記載の発明に係る高速描画装置
は、請求項1に記載の装置であって、デスティネーショ
ン領域は複数個のデスティネーションサブ領域に区分さ
れる。またソース領域は複数個のソースサブ領域に区分
される。請求項2に記載の高速描画装置のソースアドレ
ス信号発生手段は、予めソース領域の開始アドレスが書
込まれる、書換可能なアドレス記憶手段と、デスティネ
ーションアドレス信号により示されるアドレスが、各デ
スティネーションサブ領域の終了アドレスのいずれかと
一致することを検出して第1の検出信号を、デスティネ
ーション領域の終了アドレスと一致することを検出して
第2の検出信号をそれぞれ出力するための第1の一致検
出手段と、第1の検出信号に応答して、アドレス記憶手
段に格納されているアドレスに所定増分を加算して、ア
ドレス記憶手段の格納内容を書換えるためのアドレス書
換手段と、ソースアドレス信号により示されるアドレス
が、ソースサブ領域の終了アドレスのいずれかと一致し
たことを検出して第3の検出信号を、ソース領域の終了
アドレスと一致したことを検出して第4の検出信号をそ
れぞれ出力するための第2の一致検出手段と、第1の検
出信号または第3の検出信号の少なくとも一方に応答し
て、アドレス記憶手段に記憶されたアドレスを起算点に
選び、また第4の検出信号に応答して、ソース領域の走
査を先頭アドレスを起算点に選び、順次所定周期で所定
増分の加算を行なうことによりソースアドレス信号を、
第2の検出信号を検出するまで出力するための加算手段
とを含む。
【0039】請求項3に記載の高速描画装置は、請求項
1に記載の装置であって、デスティネーション領域は、
複数個のデスティネーションサブ領域に区分される。ま
たソース領域は複数個のソースサブ領域に区分される。
請求項3に記載の発明に係る装置のソースアドレス信号
発生手段は、予めソース領域の先頭アドレスが格納され
る、書換可能なアドレス記憶手段と、それぞれ所定のア
ドレスオフセット量を格納するための第1および第2の
オフセット記憶手段と、デスティネーションアドレス信
号により示されるアドレスが各デスティネーションサブ
領域の終了アドレスのいずれかと一致したことを検出し
て第1の検出信号を、デスティネーション領域の終了ア
ドレスと一致したことを検出して第2の検出信号を、そ
れぞれ出力するための第1の一致検出手段と、第1の検
出信号に応答して、アドレス記憶手段に格納されている
アドレスに所定増分を加算してアドレス記憶手段の格納
内容を書換えるためのアドレス書換手段と、ソースアド
レス信号により示されるアドレスが、ソースサブ領域の
終了アドレスのいずれかと一致したことを検出して第3
の検出信号を、ソース領域の終了アドレスと一致したこ
とを検出して第4の検出信号を、それぞれ出力するため
の第2の一致検出手段と、最初はソース領域の先頭アド
レスから第1および第2のオフセット記憶手段に記憶さ
れたオフセット量だけ変位したアドレスを起算点に選
び、第1の検出信号に応答して、アドレス記憶手段の格
納アドレスから第2のオフセット記憶手段に格納されて
いるオフセット量だけ変位したアドレスを起算点に選
び、第3の検出信号に応答してアドレス記憶手段の格納
アドレスを起算点に選び、および第4の検出信号に応答
して、ソース領域の先頭アドレスを起算点として選び、
所定周期で所定増分ずつ加算することにより、ソースア
ドレス信号を第2の検出信号を検出するまで出力するた
めの加算手段とを含む。
【0040】
【作用】請求項1に記載の高速描画装置においては、ソ
ースアドレス信号がソース領域を所定の順序で走査する
ように繰返し発生され、ソース領域の該当アドレスの画
像情報が、そのときデスティネーションアドレス信号に
よって示されるデスティネーション領域の所定箇所に転
送手段によって書込まれる。したがってソース領域の画
像情報を複数回繰返して使用してデスティネーション領
域を埋め尽くすことができる。
【0041】請求項2記載の高速描画装置では、ソース
アドレス信号が、アドレス記憶手段に最初に格納されて
いるソース領域の先頭アドレスから加算することにより
順次出力される。ソースアドレス信号がソースサブ領域
の終了点に達するたびに第3の検出信号が出力されて、
再びアドレス記憶手段に記憶されているアドレスを起算
点としてソースアドレス信号の出力が繰返される。この
繰返出力は、デスティネーションアドレス信号により示
されるアドレスが、各デスティネーションサブ領域の終
了アドレスに到達するまで行なわれる。到達した場合に
はアドレス書換手段に格納されるアドレスに所定増分が
加算され、この加算されたアドレスを新たな起算点とし
てソースアドレス信号の出力が行なわれる。そして、ソ
ースアドレス信号がソース領域の終了点まで達すると第
4の検出信号が出力され、再びソースアドレス信号はソ
ース領域の先頭アドレスを起算点として加算・出力が行
なわれる。このようにして、ソース領域の画像情報の各
サブ領域によってデスティネーションサブ領域が埋め尽
くされ、同じようにすべてのデスティネーションサブ領
域が埋め尽くされてデスティネーション領域をソース領
域の画像情報で埋め尽くすことができる。
【0042】請求項3に記載の高速描画装置において
は、画像転送の最初と、ソースアドレス信号がソース領
域を終了点に達した場合とに、アドレス記憶手段にソー
ス領域の先頭アドレスが格納される。そして画像転送の
最初にはこの先頭アドレスから第1、第2のオフセット
記憶手段に記憶されたオフセット量の和だけ変位したア
ドレスを起算点としてソースアドレス信号加算出力が行
なわれる。ソースアドレス信号の示すアドレスがソース
サブ領域の終了点に達すると第3の検出信号が出力さ
れ、この第3の検出信号に応答して、ソースアドレス信
号の起算点はアドレス記憶手段に記憶されているアドレ
スとなる。このようにしてデスティネーションアドレス
信号がデスティネーションサブ領域の終了アドレスに到
達するまで、デスティネーションサブ領域がソースサブ
領域のデータによって繰返し埋め尽くされる。デスティ
ネーションアドレス信号の示すアドレスがデスティネー
ションサブ領域の終了点に到達すると、アドレス記憶手
段の格納内容に所定増分加算され、この加算されたアド
レスに第2のオフセット記憶手段に記憶されたオフセッ
ト量だけ変位したアドレスが起算点として選ばれてソー
スアドレス信号の出力が開始される。そして、ソースア
ドレス信号がソース領域の終了点にまで到達すると第4
の検出信号が出力され、アドレス記憶手段の格納内容が
ソース領域の先頭アドレスに書換えられ、再びソース領
域のデータを先頭から利用して同様の描画処理が行なわ
れる。このようにしてデスティネーション領域のすべて
のデスティネーションサブ領域は、それぞれ対応するソ
ースサブ領域の繰返しによって埋め尽くされ、デスティ
ネーション領域はソース領域の画像情報によって埋め尽
くされることになる。
【0043】
【実施例】図1は、本発明に係る高速描画装置のブロッ
ク図である。この装置が図20に示される従来のシステ
ムと異なるのは、図20の従来のBITBLT装置78
に代えて、機能拡張されたBITBLT装置14を含む
ことにある。図1、図20において、同一の部品には同
一の参照符号および名称が与えられている。それらの機
能も同一である。したがってここではそれらについて詳
しい説明は繰返さない。
【0044】機能拡張されたBITBLT装置14が図
20に示されるBITBLT装置78と異なるのは、ソ
ース領域のデータを繰返し使用してデスティネーション
領域を埋め尽くすことにより、ソース領域よりも大きな
デスティネーション領域を、ソース領域の画像情報をタ
イルのように敷きつめた形で埋め尽くすことかできると
いう点である。
【0045】図2は、BITBLT装置14のブロック
図である。図2を参照して、このBITBLT装置14
は、CPU10に接続されたアドレスデコーダ20と、
オペレーションモードレジスタ22と、タイミング発生
回路26と、CPU10とアドレスデコーダ20とタイ
ミング発生回路26とに接続されたデスティネーション
アドレス発生回路24と、ソースレジスタ28、30
と、タイミング発生回路26とCPU10とアドレスデ
コーダ20とに接続されたソースアドレス繰返し発生回
路30と、タイミング発生回路26とデスティネーショ
ンアドレス発生回路26とソースアドレス繰返し発生回
路32とに接続され、ソースアドレス信号SAとデステ
ィネーションアドレス信号DAとのいずれか一方を選択
し、メモリ16にメモリアドレス信号MAとして与える
ためのアドレス出力回路34と、デスティネーションレ
ジスタ36と、デスティネーションレジスタ36とソー
スレジスタ30とオペレーションモードレジスタ22と
に接続され、デスティネーションデータADとソースデ
ータSDとにオペレーションモード信号MODEによっ
て指定されるラスタオペレーションを行ない、メモリ1
6にメモリデータMDとして与えるためのラスタオペレ
ーション回路38とを含む。
【0046】図2に示されるBITBLT装置14は、
図20に示される従来のBITBLT装置78とほぼ同
様の構成であるが、従来のBITBLT装置のソースア
ドレス発生回路に代えて、ソース領域を繰返し走査する
ようなソースアドレス信号を繰返し発生することができ
るソースアドレス繰返し発生回路32を含むことを特徴
とする。
【0047】図3は、ソースアドレス繰返し発生回路3
2のブロック図である。図3を参照して、この回路32
は、転送されるバイト数をカウントするための転送バイ
トカウンタ40と、ソースアドレス信号44を発生する
ためのアドレスカウンタ42と、ソース領域開始アドレ
スレジスタ50と、領域幅レジスタ56と、1ライン幅
レジスタ52と、ライン終了アドレスレジスタ54と、
ライン開始アドレスレジスタ48と、領域高さレジスタ
64と、転送幅レジスタ58と、回路60と、ソースラ
インカウンタ62と、比較回路66と、ラインカウンタ
68と、転送高さレジスタ70と、比較回路72とを含
む。
【0048】図3において、ソース領域開始アドレスレ
ジスタ52は、図4(a)に示されるソース領域の左上
のアドレスが予め格納される。1ライン幅レジスタ52
には、ソース領域の入っているメモリにおいて、縦方向
に隣接するドットのアドレスの差を示した値が予め格納
される。領域幅レジスタ56は、図4(a)に示される
ソース領域の領域幅の値を予め格納する。領域高さレジ
スタ64は、図4(a)に示される、ソース領域の領域
高さを示す値を予め格納する。
【0049】転送幅レジスタ58は、図4(b)に示さ
れるデスティネーション領域の転送幅を示す値を予め格
納する。転送高さレジスタ70は、図4(b)に示され
るデスティネーション領域の転送高さを示す値を予め格
納する。
【0050】図3において、上述の各レジスタには、処
理に先立って予め上述のような各値が書込まれる。した
がってこれら各レジスタには、CPU10からデータを
受け取るための配線と、データ書込のための配線とが接
続されているが、図の簡単化のために、図3ではこれら
の配線は省略されている。
【0051】図2、3に示されるBITBLT装置14
は次のように動作する。図2を参照して、CPU10
は、予めソースアドレス繰返し発生回路32に対し、図
4を参照して説明したようなソース領域、デスティネー
ション領域の領域開始アドレス、ソース領域の幅、高
さ、メモリのライン幅などのデータCDを与え記憶させ
ている。さらにCPU10は、アドレスデコーダ20に
対しCPUの状態信号CDを与える。オペレーションモ
ードレジスタ22には、予めCPU10によってマスタ
オペレーションモードを示す値が設定される。オペレー
ションモードレジスタ20は、この値に従ってラスタオ
ペレーションモード信号MODEをラスタオペレーショ
ン回路38に与える。
【0052】ソースレジスタ28および30は、ソース
領域のデータを格納するためのレジスタである。ソース
レジスタ28には、メモリ16のソース領域から読出さ
れたデータが一旦格納される。ソースレジスタ30に
は、ソースレジスタ28に格納されたソース領域のデー
タに、必要なだけのビットシフト操作が行なわれたデー
タが与えられ、ソースレジスタ30はそのデータを一旦
格納してラスタオペレーション回路38に対しソースデ
ータSDとして与える。このビットシフトの量は、ソー
ス領域とデスティネーション領域のドット位置によって
定められる。この操作は、図14において(b)のパタ
ーン利用開始位置を、(a)の描画開始位置に合わせる
ようにシフトし、(c)に示される位置とする操作に相
当する。
【0053】ソースレジスタ28にデータMDを書込む
タイミング信号STWは、タイミング発生回路26から
ソースレジスタ28に与えられる。またビットシフトカ
ウント信号SFTCは、タイミング発生回路26からソ
ースレジスタ28、30にそれぞれ与えられる。
【0054】デスティネーションレジスタ36には、メ
モリ16の、ラスタオペレーションのためデスティネー
ション領域から読出されるデスティネーション領域のデ
ータMDが一旦格納される。このデータはデスティネー
ションデータDDとしてラスタオペレーション回路38
に与えられる。デスティネーションレジスタ36へのデ
ータの書込は、タイミング発生回路26から発生される
タイミング信号DDWに応答して行なわれる。
【0055】デスティネーションアドレス発生回路24
内の各レジスタ、すなわち、14(d)に示されるよう
な領域を特定するためのデータの書込レジスタには、予
めCPU10からデータCDが与えられて、記憶されて
いる。この書込はアドレスデコーダ20からのタイミン
グ信号DSに応答して行なわれる。そしてデスティネー
ションアドレス発生回路24は、タイミング発生回路2
6から与えられるデスティネーションアドレスカウント
信号DCに応答してデスティネーションアドレス信号を
順次発生し、デスティネーションアドレス信号DAをア
ドレスセレクタ回路34に与える。
【0056】ソースアドレス繰返し発生回路32内の各
レジスタ50、52、56、58、64、70(図3参
照)には、予めCPU10によってデータCDが書込ま
れている。この書込はアドレスデコーダ20からのタイ
ミング信号SSに応答して行なわれる。そしてソースア
ドレス繰返し発生回路32は、タイミング発生回路26
から与えられるソースアドレスカウント信号SCに応答
して、以下のようにしてソースアドレス信号SAを発生
し、アドレスセレクタ回路34に与える。
【0057】図3を参照して、ライン開始アドレスレジ
スタ48には、アドレス発生の開始時には、ソース領域
開始アドレスレジスタ50に格納されている、ソース領
域の左上のアドレスが格納される。このライン開始アド
レスレジスタ48の内容は、以後比較回路66から与え
られる信号LD4に応答して、1ライン幅レジスタ52
に格納されている値だけ加算され書換えられる。すなわ
ち、ライン開始アドレスレジスタ48は、現在転送して
いるソース領域の行の開始アドレスを格納していること
になる。一方、ライン終了アドレスレジスタ54には、
ライン開始アドレスレジスタ48の格納内容と領域幅レ
ジスタ16の格納内容とを加算したアドレスが格納され
る。すなわち、ライン終了アドレスレジスタ54には、
現在転送しているソース領域の行の終了アドレスが格納
されている。
【0058】領域高さレジスタ64には、ソース領域の
高さが予め格納されている。転送幅レジスタ58および
転送高さレジスタ70には、デスティネーション領域の
領域幅と高さとがそれぞれ予め格納されている。ソース
ラインカウンタ62と、ラインカウンタ68とは、いず
れも0で初期化されている。
【0059】転送バイトカウンタ40は、当初0に設定
されている。転送バイトカウンタ40は、タイミング発
生回路26からソースアドレスカウント信号SCを1回
得るたびに、1だけカウントされる。本実施例では転送
は1バイトずつ行なわれるので、転送バイトカウンタ4
0の出力は、ソース領域からデスティネーション領域に
実際に転送されたバイト数を表わす。転送バイトカウン
タ40は、後述するように、デスティネーション領域の
1行分の転送が終了すると0にリセットされる。
【0060】以下、このソースアドレス繰返し発生回路
32の動作を詳細に説明する。転送が開始されるとき
に、ライン開始アドレスレジスタ48には、ソース領域
開始アドレスレジスタ50の格納内容が書込まれてい
る。ライン終了アドレスレジスタ54には、ライン開始
アドレスレジスタ48の格納内容に、領域幅レジスタ5
6の格納内容が加算されたアドレスが格納されている。
すなわち、ライン開始アドレスレジスタ48、ライン終
了アドレスレジスタ54にはそれぞれ、ソース領域の先
頭行の対象アドレスと終了アドレスとがそれぞれ格納さ
れていることになる。
【0061】アドレスカウンタ42は、ライン開始アド
レスレジスタ48に格納されているアドレスを起算点と
し、タイミング発生回路26(12参照)から与えられ
るソースアドレスカウント信号SCに応答して所定増分
ずつ加算を行ない、ソースアドレス信号44をアドレス
セレクタ回路24(図2参照)および比較回路46に与
える。
【0062】比較回路46は、アドレスカウンタ42か
ら与えられるソースアドレス信号と、ライン終了アドレ
スレジスタ54に格納されている、現在転送中のソース
領域の行の終了アドレスとを比較し、一致した場合には
ロードタイミング信号LD3をアドレスカウンタ42に
与える。すなわち、比較回路46は、ソースアドレス信
号によって示されるアドレスが、現在転送中のソース領
域の行の終了位置に到達するとロードタイミング信号L
D3を出力することになる。
【0063】アドレスカウンタ42は、このロードタイ
ミング信号LD3に応答して次のように動作する。アド
レスカウンタ42は、ライン開始アドレスレジスタ48
の格納内容を再び起算点に変更し、ソースアドレスカウ
ント信号SCに応答して所定増分ずつ加算することによ
りソースアドレス信号44を出力する。ライン開始アド
レスレジスタ48の格納内容は、後述するようにロード
タイミング信号LD1またはLD4が与えられない限り
変化しない。したがって、アドレスカウンタ42は、ロ
ードタイミング信号LD3が与えられるたびに、転送中
のソース領域の行のアドレスを繰返し発生することにな
る。
【0064】デスティネーションアドレス発生回路24
は、この間デスティネーション領域のある行のアドレス
を先頭から順次発生しているため、ソースレジスタ2
8、30とデスティネーションレジスタ36とラスタオ
ペレーション回路38とによって、メモリ16のソース
領域の所定行のデータが、デスティネーション領域の対
応する行に繰返し1バイトずつ転送されることになる。
この転送は、デスティネーションアドレス信号が、その
デスティネーション領域の行の終了位置に到達するまで
行なわれる。このデスティネーション領域の転送中の最
終値までデスティネーションアドレスが到達したかどう
かは、次のようにして検出される。図3を参照して、転
送バイトカウンタ40は、ソースアドレスカウント信号
SCに応答してその内容を1ずつ加算している。したが
って転送バイトカウンタ40の格納内容は、ソース領域
からデスティネーション領域に転送されたデータの実際
のバイト数を示す。比較回路60は、転送幅レジスタ5
8に格納されているデスティネーション領域の領域幅
と、転送バイトカウンタ40の値とを比較し、一致した
場合にロードタイミング信号LD1を出力する。すなわ
ち、転送バイトカウンタ40のカウント内容によって、
デスティネーション領域の1行分のデータがソース領域
からデスティネーション領域に転送されたと判断された
場合に、ロードタイミング信号LD1が出力されること
になる。したがってこのロードタイミング信号LD1に
より、デスティネーションアドレス信号が、デスティネ
ーション領域の転送中の行の最終位置まで到達したこと
が判別できる。
【0065】ロードタイミング信号LD1は、比較回路
60からソースラインカウンタ62、ラインカウンタ6
8、ライン開始アドレスレジスタ48、アドレスカウン
タ42、転送バイトカウンタ40にそれぞれ与えられ
る。
【0066】転送バイトカウンタ40は、ロードタイミ
ング信号LD1に応答してその格納内容0にリセットす
る。したがって転送バイトカウンタ40のカウント内容
は、デスティネーション領域の現在転送中の行にソース
領域から転送されたデータのバイト数を示すことにな
る。
【0067】ソースラインカウンタ62およびラインカ
ウンタ68は、ともにロードタイミング信号LD1に応
答して1ずつその内容をインクリメントする。ソースラ
インカウンタ62は、ソース領域の現在転送中の行を、
ラインカウンタ68は、デスティネーション領域の現在
転送中の行をそれぞれ示すためのものである。
【0068】ライン開始アドレスレジスタ48は、この
ロードタイミング信号LD1に応答して、その内容を、
1ライン幅レジスタ52に格納されている値だけインク
リメントする。これにより、ライン開始アドレスレジス
タ48の格納内容は、ソース領域の、1行だけ進んだ行
の先頭アドレスとなる。これに伴いライン終了アドレス
レジスタ54の格納内容は、ソース領域の、1ラインだ
け進んだ行の終了アドレスを示す値となる。
【0069】アドレスカウンタ42は、ロードタイミン
グ信号LD1に応答して、書換えられたライン開始アド
レスレジスタ48の格納内容を起算点として、ソースア
ドレスカウント信号SCに応答して加算を繰返すること
によりソースアドレス信号44を出力する。ライン開始
アドレスレジスタ48の格納内容は、ソース領域の1ラ
イン進んだ行の先頭アドレスに更新されているために、
ソースアドレス信号44は、ソース領域の1ラインだけ
進んだ行を示すアドレス信号となる。このとき、図2に
示されるデスティネーションアドレス発生回路24の出
力するデスティネーションアドレスDAも、当然1行進
んだ値となっているから、ロードタイミング信号LD1
が出力されることにより、ソース領域の次の行のライン
情報を、デスティネーション領域の次の行に転送する処
理が開始されることになる。
【0070】このようにしてソース領域の内容を繰返
し、デスティネーション領域の対応する行に転送する。
この場合、ソース領域の領域高さが、デスティネーショ
ン領域の領域高さよりも小さければデスティネーション
領域の最終行まで到達する前にソース領域の最終行まで
到達してしまう。そこで、このソースアドレス繰返し発
生回路32においては、ソース領域の終了位置までソー
スアドレス信号が到達した場合には、再びソース領域の
先頭位置まで転送位置を戻すようにするために、次のよ
うな処理が行なわれる。
【0071】ソースラインカウンタ62の内容は、転送
開始時は0であり、ロードタイミング信号LD1が出力
されるたびに1ずつインクリメントされる。したがって
その内容は、ソース領域の、現在転送中の行番号を示
す。比較回路66は、ソースラインカウンタ62の内容
と、領域高さレジスタ64に予め格納されているソース
領域の高さとを比較し、一致した場合にロードタイミン
グ信号LD4を出力する。ロードタイミング信号LD4
は、ソースラインカウンタ62と、ライン開始アドレス
レジスタ48と、アドレスカウンタ42とに与えられ
る。
【0072】ライン開始アドレスレジスタ48は、ロー
ドタイミング信号LD4に応答して、ソース領域開始ア
ドレスレジスタ50に格納されている値を取込む。ソー
ス領域開始アドレスレジスタ50に格納されている値
は、前述のように、処理の前に予め設定された値であっ
て、ソース領域の左上の点のアドレスを示す。
【0073】一方、アドレスカウンタ42には、このと
き前述のようにロードタイミング信号LD1が与えられ
ており、その結果アドレスカウンタ42は、ソース領域
の左上のアドレスを起算点として、ソースアドレスカウ
ント信号SCに応答してソースアドレス信号の加算出力
を開始することになる。そのため、ソースアドレス信号
44の示すアドレスは、ロードタイミング信号LD4が
出力されたときにソース領域の左上に帰還する。
【0074】ソースラインカウンタ62は、ロードタイ
ミング信号LD4によってクリアされる。そのために、
ソースラインカウンタ62の値は、常に、ソース領域の
現在転送中の行を示すことになる。
【0075】このようにして、ソース領域のデータを繰
返しデスティネーション領域の横方向および縦方向に転
送することにより、デスティネーション領域がソース領
域の画像情報によって埋め尽くされることになる。この
状態は、ソース領域を1枚のタイルに例えるならば、デ
スティネーション領域に複数のタイルが敷きつめられる
ような状態に相当する。
【0076】この間、ラインカウンタ68はデスティネ
ーション領域の転送中の行が1行進むたびに1ずつカウ
ントアップしている。比較回路72は、ラインカウンタ
68の内容と、予め転送高さレジスタ70に格納されて
いたデスティネーション領域の高さとを比較し、一致し
た場合に終了信号LD2を出力する。終了信号LD2に
応答してこのBITBLT装置の動作が終了する。
【0077】図3に示される各カウンタ、レジスタなど
は、フリップフロップ等の組合せ回路によって簡単に構
成することができる。そして図3に示されるようなソー
スアドレス信号繰返し発生回路を含むBITBLT装置
14を用いることにより、ソース領域のデータを、ソー
ス領域よりも大きなデスティネーション領域に繰返し転
送し、デスティネーション領域をソース領域のデータで
埋め尽くすことができる。したがってソース領域にパタ
ーンデータを予め準備してパターンテーブルとしておく
ことにより、デスティネーション領域をパターンテーブ
ルのデータによって埋め尽くすことが容易にできる。し
かもこの処理はハードウェア的に行われるために、ソフ
トウェアで行なった場合と比較してはるかに高速で行な
うことができる。
【0078】上述の例では、ソース領域のデータをその
左上から順次デスティネーション領域に転送する実施例
について説明した。しかし、従来の図8で示されるよう
に、直線パターンの途中の点Cからパターンの利用を開
始する場合があったように、パターンデータを途中から
利用してデスティネーション領域をパターンデータで埋
め尽くす必要が生ずる場合がある。このためには、図4
(a)「スタートアドレス」で示されるように、ソース
領域の中の所望の1点を起点としてデスティネーション
領域へのデータ転送を開始できるようにすることが必要
である。以下、そのような改良を行なった、本発明の第
2の実施例について説明する。
【0079】図5は、そのような装置において用いられ
るBITBLT装置の、ソースアドレス繰返し発生回路
のブロック図である。図4に示される回路が図3に示さ
れる回路と異なるのは、ソース領域の、転送開始アドレ
スを格納するためのスタートアドレスレジスタ76を新
たに含むことと、図3に示されるアドレスカウンタ42
に代えて、転送開始時にスタートアドレスレジスタ76
の格納内容を起算点としてソースアドレス信号の加算出
力を開始するアドレスカウンタ74を含むこととであ
る。図5と図3とにおいて、同一の部品には同一の参照
符号および名称が与えられている。それらの機能も同一
である。したがって、ここではそれらについての詳しい
説明は繰返さない。
【0080】図5において、スタートアドレスレジスタ
76には、ソース領域各行のどの部分から利用するかを
表わすスタートアドレスが、転送動作前にCPUによっ
て他のレジスタと同様に書込まれている。このスタート
アドレスは、ソース領域の、転送開始アドレスの、その
行の先頭からのオフセット値である。ソース領域の転送
開始行位置は、予めソースラインカウンタ62にその行
位置を書込んでいくことにより設定しておく。そして、
以下のようにアドレスカウンタ74が動作することによ
り、ソースラインカウンタ62の初期値およびスタート
アドレスレジスタ76に格納されているオフセット値と
で決定されるスタートアドレスからの転送が開始され
る。
【0081】アドレスカウンタ74は、スタートアドレ
スレジスタ76の値が設定されると、CPUから与えら
れるスタートアドレスロード信号80に応答して、この
スタートアドレスレジスタ76の格納内容をロードす
る。このとき、ラインカウンタ68には初期値として0
が設定されているのは第1の実施例の場合と同様であ
る。また、ライン開始アドレスレジスタ48には、転送
開始ラインの開始アドレスが予め設定される。ライン終
了アドレスレジスタ54の内容はしたがって、スタート
アドレスを含むソース領域の行の終了アドレスを示す。
【0082】アドレスカウンタ74は、ソースアドレス
カウント信号SCに応答して、ライン開始アドレスレジ
スタ48の格納内容に、スタートアドレスレジスタ76
に格納されているオフセット量だけ加えた点を起算点と
し、ソースアドレスカウント信号SCに応答して順次加
算処理を行なう。これにより、ソースアドレス信号44
を出力する。比較回路46は、ソースアドレス信号44
とライン終了アドレスレジスタ54との値を比較し、一
致した場合にロードタイミング信号LD3をアドレスカ
ウンタ74に与える。アドレスカウンタ74は、ロード
タイミング信号LD3に応答して、今度はライン開始ア
ドレスレジスタ48の格納内容を起算点とし、順次加算
処理を行なうことによりソースアドレス信号44を出力
する。このようにすることにより、ソースアドレス信号
は、ソースラインカウンタ62によって示されるソース
領域の行の先頭から、スタートアドレスレジスタ76の
格納内容によって示されるオフセットにだけ変位した点
をスタートアドレスとし、この行の各点を順次示すアド
レス信号となる。この場合、このソースアドレス信号は
ソース領域の転送中の行の終了位置まで到達すると、ロ
ードタイミング信号LD3が出力され、この結果ソース
アドレスは再びその転送中の行の先頭位置に戻り、以下
この行の転送処理が繰返し行なわれることになる。
【0083】また、ソースラインカウンタ62のカウン
ト内容はデスティネーション領域が1行進むたびに1ず
つ加算されてソース領域の終了行まで到達すると0にク
リアされる。その結果、ソース領域のスタートアドレス
以下の部分を最初の部分とし、以後はソース領域全体の
データがが繰返して右方向、下方向にソース領域からデ
スティネーション領域へ転送されていく。
【0084】その他の各部分の動作は、第1の実施例に
おいてすでに説明したものと同様である。したがってこ
こではそれらについては詳しい説明は繰返さない。
【0085】上述の第2の実施例を用いてソース領域に
予め所定のパターンデータを書込んでパターンテーブル
を用意しておけば、パターンテーブルの所望の位置から
データ転送を開始し,デスティネーション領域をこのパ
ターンデータで埋め尽くすことが可能となる。
【0086】
【発明の効果】以上のように請求項1に記載の発明によ
れば、ソースアドレス信号を繰返し発生し、デスティネ
ーション領域の各点にソース領域の画像情報を繰返し転
送することができる。その結果デスティネーション領域
にソース領域の画像情報を繰返し書込むことができ、デ
スティネーション領域をソース領域のデータで埋め尽く
すことができる。しかもソフトウェアを使用しないため
に、高速でこの処理を行なうことができる。ソース領域
にパターンデータを予め格納しておけば、デスティネー
ション領域をこのパターンデータで埋め尽くすことが高
速に行なえる。
【0087】請求項2に記載の発明によれば、デスティ
ネーション領域の各デスティネーションサブ領域には、
ソース領域の対応するソースサブ領域のデータが繰返し
転送される。ソース領域のすべてのソースサブ領域から
の転送が終了すると、再びソース領域の先頭のソースサ
ブ領域からの転送が開始され、その結果デスティネーシ
ョン領域のすべてのサブ領域が、ソース領域のデータで
埋め尽くされる。この操作にはソフトウェアが使用され
ないために、これらの処理は高速で行なうことができ
る。ソース領域にパターンデータを予め書込んでおくこ
とにより、デスティネーション領域をこのパターンデー
タで埋め尽くすことが高速で行なえる。
【0088】請求項3に記載の発明によれば、デスティ
ネーション領域の各デスティネーションサブ領域には、
ソース領域の対応するソースサブ領域のデータが繰返し
転送され、その画像情報で埋め尽くされる。このとき、
先頭のデスティネーションサブ領域に転送されるソース
サブ領域が、第1のオフセット記憶手段により指定され
る。また、各デスティネーションサブ領域に転送される
ソースサブ領域の先頭位置は、第2のオフセット記憶手
段によって指定される。その結果、ソース領域の所望の
位置を先頭として、デスティネーション領域に画像情報
を順次転送することが可能となる。ソース領域に所定の
パターンデータを予め書込んでおき、第1および第2の
オフセット記憶手段によって転送開始位置を指定してお
くことにより、デスティネーション領域を、所望のパタ
ーンデータで、パターンデータの所望の点を先頭として
埋め尽くすことができる。
【図面の簡単な説明】
【図1】本発明に係る装置のシステム構成図である。
【図2】機能拡張されたBITBLT装置のブロック図
である。
【図3】図2に示されるソースアドレス繰返し発生回路
のブロック図である。
【図4】各レジスタ、カウンタに設定される内容を示
す、ソース領域およびデスティネーション領域を示す模
式図である。
【図5】本発明の第2の実施例のBITBLT装置のソ
ースアドレス繰返し発生回路のブロック図である。
【図6】曲線描画の例を示す模式図である。
【図7】線パターンを利用した直線描画の例を示す模式
図である。
【図8】線パターンの例を示す模式図である。
【図9】矩形領域の塗り描画の例を示す模式図である。
【図10】塗りパターンを利用した矩形領域の塗り描画
処理の例を示す模式図である。
【図11】塗りパターンの例を示す模式図である。
【図12】従来の描画システムの構成図である。
【図13】図12に示された描画システムにおいて、パ
ターンのある直線描画を行なうときの動作を説明するた
めのフローチャートである。
【図14】表示用メモリに書込まれていたデータに重ね
て、パターンデータを書込む際の書込位置関係を示す模
式図である。
【図15】図14に示される処理において、1バイト目
のデータを得るための途中経過を示す模式図である。
【図16】図14に示される例において、1バイト目の
データを得るための途中経過を示す模式図である。
【図17】図15および図16に示されるデータから図
14に示される結果を得るための操作を説明する模式図
である。
【図18】図12に示される描画システムを用いて、塗
りパターンを利用した矩形の塗り描画処理を行なう場合
の動作を説明するためのフローチャートである。
【図19】BITBLT機能を説明するための模式図で
ある。
【図20】BITBLT装置を用いる従来の描画システ
ムのブロック構成図である。
【符号の説明】
10 CPU 12 プログラム/データ用メモリ 14 機能拡張されたBITBLT装置 16 表示用メモリ 18 表示装置 24 デスティネーションアドレス発生回路 32 ソースアドレス繰返し発生回路 40 転送バイトカウンタ 42 アドレスカウンタ 46、60、66、72 比較回路 50 ソース領域開始アドレスレジスタ 62 ソースラインカウンタ 74 アドレスカウンタ 76 スタートアドレスレジスタ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 記憶手段に接続され、前記記憶手段内の
    指定されたソース領域に格納された画像情報を、前記記
    憶手段内の指定されたデスティネーション領域に高速で
    転送するための高速描画装置であって、 所定の周期で、前記ソース領域を所定の順序で走査する
    ためのソースアドレス信号を繰返し発生するためのソー
    スアドレス信号発生手段と、 前記所定の周期で、前記デスティネーション領域を所定
    の順序で走査するデスティネーションアドレス信号を発
    生するためのデスティネーションアドレス信号発生手段
    と、 前記所定の周期で、前記記憶手段の、前記ソースアドレ
    ス信号によって特定されるアドレスから、前記デスティ
    ネーションアドレス信号で特定されるアドレスに画像情
    報を転送するための転送手段とを含む、高速描画装置。
  2. 【請求項2】 前記デスティネーション領域は複数個の
    デスティネーションサブ領域に区分され、 前記ソース領域は複数個のソースサブ領域に区分され、 前記ソースアドレス信号発生手段は、 予め前記ソース領域の開始アドレスが書込まれる、書換
    可能なアドレス記憶手段と、 前記デスティネーションアドレス信号により示されるア
    ドレスが、前記デスティネーションサブ領域の終了アド
    レスのいずれかと一致することを検出して第1の検出信
    号を,デスティネーション領域の終了アドレスと一致す
    ることを検出して第2の検出信号を、それぞれ出力する
    ための第1の一致検出手段と、 前記第1の検出信号に応答して、前記アドレス記憶手段
    に格納されているアドレスに所定増分を加算して、前記
    アドレス記憶手段の格納内容を書換えるためのアドレス
    書換手段と、 前記ソースアドレス信号により示されるアドレスが、前
    記ソースサブ領域の終了アドレスのいずれかと一致した
    ことを検出して第3の検出信号を,前記ソース領域の終
    了アドレスと一致したことを検出して第4の検出信号
    を、それぞれ出力するための第2の一致検出手段と、 前記第1の検出信号または前記第3の検出信号の少なく
    とも一方に応答して、前記アドレス記憶手段に記憶され
    たアドレスを起算点に選び、前記第4の検出信号に応答
    してソース領域の走査の先頭アドレスを起算点に選び、
    順次前記所定の周期で所定増分ずつ加算することによ
    り、前記ソースアドレス信号を,前記第2の検出信号を
    検出するまで出力するための加算手段とを含む、請求項
    1に記載の高速描画装置。
  3. 【請求項3】 前記デスティネーション領域は、複数個
    のデスティネーション領域に区分され、 前記ソース領域は、複数個のソースサブ領域に区分さ
    れ、 前記ソースアドレス信号発生手段は、 予め前記ソース領域の開始アドレスが格納され、書換可
    能なアドレス記憶手段と、 それぞれ所定のアドレスオフセット量を格納するための
    第1および第2のオフセット記憶手段と、 前記デスティネーションアドレス信号により示されるア
    ドレスが各前記デスティネーションサブ領域の終了アド
    レスのいずれかと一致したことを検出して第1の検出信
    号を,デスティネーション領域の終了アドレスと一致し
    たことを検出して第2の検出信号を、それぞれ出力する
    ための第1の一致検出手段と、 前記第1の検出信号に応答して、前記アドレス記憶手段
    に格納されているアドレスに所定増分を加算して、前記
    アドレス記憶手段の格納内容を書換えるためのアドレス
    書換手段と、 前記ソースアドレス信号により示されるアドレスが、前
    記ソースサブ領域の終了アドレスのいずれかと一致した
    ことを検出して第3の検出信号を,ソース領域の終了ア
    ドレスと一致したことを検出して第4の検出信号を、そ
    れぞれ出力するための第2の一致検出手段と、 最初は前記アドレス記憶手段の格納アドレスから前記第
    1および第2のオフセット記憶手段に記憶されたオフセ
    ット量の和だけ変位した場所を起算点に選び、前記第1
    の検出信号に応答して、前記アドレス記憶手段に格納さ
    れているアドレスから、前記第2のオフセット記憶手段
    に記憶されているオフセット量だけ変位したアドレスを
    起算点に選び、前記第3の検出信号に応答して、前記ア
    ドレス記憶手段に記憶されているアドレスを起算点に選
    び、および前記第4の検出信号に応答して、前記ソース
    領域の先頭アドレスを起算点に選び、前記所定の周期で
    前記所定増分ずつ加算することにより、前記ソースアド
    レス信号を前記第2の検出信号を検出するまで出力する
    ための加算手段とを含む、請求項1に記載の高速描画装
    置。
JP4107408A 1992-04-27 1992-04-27 高速描画装置 Withdrawn JPH05303525A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4107408A JPH05303525A (ja) 1992-04-27 1992-04-27 高速描画装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4107408A JPH05303525A (ja) 1992-04-27 1992-04-27 高速描画装置

Publications (1)

Publication Number Publication Date
JPH05303525A true JPH05303525A (ja) 1993-11-16

Family

ID=14458396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4107408A Withdrawn JPH05303525A (ja) 1992-04-27 1992-04-27 高速描画装置

Country Status (1)

Country Link
JP (1) JPH05303525A (ja)

Similar Documents

Publication Publication Date Title
US4491834A (en) Display controlling apparatus
EP0185294B1 (en) Display apparatus
USRE34835E (en) Method and apparatus for editing document in colors
US4849747A (en) Display data transfer control apparatus applicable for display unit
US4918435A (en) Method for processing animated graphics
US6005572A (en) Display unit having plurality of frame buffers
US4695834A (en) Patterned line generator for a data processing device
JPS6339947B2 (ja)
EP0354591B1 (en) Painting-out pattern reference system
JPH0112309Y2 (ja)
JPS63835B2 (ja)
JP2605609B2 (ja) ドット表示処理装置
JP2549792B2 (ja) ラスタ図面のスクロール装置
JP2554876B2 (ja) アドレス変換装置
JP2643617B2 (ja) 建築図等における壁または梁の作図方法およびその装置
JPS60173588A (ja) マルチウインドウ表示処理方式
JPS6213671B2 (ja)
JP2721661B2 (ja) 表示方法
JPH077391B2 (ja) 文書処理装置
JPS59197083A (ja) Crt表示装置
JPH07282286A (ja) 図形表示装置
JPH0450896A (ja) 描画回路
JPH0658690B2 (ja) 描画方法
JPS6360915B2 (ja)
JPS63262687A (ja) ウインドウ制御方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990706