JP3238188B2 - フレームメモリ制御装置及びフレームメモリ制御方法 - Google Patents
フレームメモリ制御装置及びフレームメモリ制御方法Info
- Publication number
- JP3238188B2 JP3238188B2 JP6289092A JP6289092A JP3238188B2 JP 3238188 B2 JP3238188 B2 JP 3238188B2 JP 6289092 A JP6289092 A JP 6289092A JP 6289092 A JP6289092 A JP 6289092A JP 3238188 B2 JP3238188 B2 JP 3238188B2
- Authority
- JP
- Japan
- Prior art keywords
- area
- window
- screen
- save under
- save
- 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 - Fee Related
Links
Landscapes
- Digital Computer Display Output (AREA)
Description
【0001】
【産業上の利用分野】本発明は、例えばコンピュータグ
ラフィックス分野における、ダブルバッファを有する表
示装置に関し、特にポップアップ・メニュー等を実現す
るためのセーブアンダ領域に描画する場合のフレームメ
モリ制御装置に関する。
ラフィックス分野における、ダブルバッファを有する表
示装置に関し、特にポップアップ・メニュー等を実現す
るためのセーブアンダ領域に描画する場合のフレームメ
モリ制御装置に関する。
【0002】
【従来の技術】ワークステーション等では、図9に示す
如く、ウィンドウW1 、ウィンドウW 2 等を表示してデ
ータ処理を行う、マルチウィンドウ・システムが採用さ
れている。このウィンドウW1 とW2 を表示している状
態で、これまたウィンドウの1つであるポップアップ・
メニューPMを表示し、そのメニュー項目を選択するよ
うなとき、このポップアップ・メニューPMによりカバ
ーされた領域のデータを一時退避させ、このポップアッ
プ・メニューPMが消滅したとき、この退避データを戻
して、画面を復元することが必要である。このためにセ
ーブアンダ機能が具備されている。
如く、ウィンドウW1 、ウィンドウW 2 等を表示してデ
ータ処理を行う、マルチウィンドウ・システムが採用さ
れている。このウィンドウW1 とW2 を表示している状
態で、これまたウィンドウの1つであるポップアップ・
メニューPMを表示し、そのメニュー項目を選択するよ
うなとき、このポップアップ・メニューPMによりカバ
ーされた領域のデータを一時退避させ、このポップアッ
プ・メニューPMが消滅したとき、この退避データを戻
して、画面を復元することが必要である。このためにセ
ーブアンダ機能が具備されている。
【0003】セーブアンダ機能とは、図9に示すような
マルチウィンドウ・システムにおいて、セーブアンダを
行うと指定されたウィンドウ(例えばポップアップ・メ
ニューPM)が覆い隠した部分の描画内容をシステムが
セーブアンダ領域に保持し、セーブアンダ指定の前記ウ
ィンドウが移動されて、隠されていた部分が見えるよう
になった場合に、その内容をシステムが自動的に復元す
る機能である。この機能により、隠されていた部分の再
表示処理を省くことが可能となりウィンドウの操作性が
向上する。
マルチウィンドウ・システムにおいて、セーブアンダを
行うと指定されたウィンドウ(例えばポップアップ・メ
ニューPM)が覆い隠した部分の描画内容をシステムが
セーブアンダ領域に保持し、セーブアンダ指定の前記ウ
ィンドウが移動されて、隠されていた部分が見えるよう
になった場合に、その内容をシステムが自動的に復元す
る機能である。この機能により、隠されていた部分の再
表示処理を省くことが可能となりウィンドウの操作性が
向上する。
【0004】この機能の難しい点は、隠されている部分
のデータをセーブアンダ領域に保持している間に、隠さ
れているウィンドウに対して描画が行われた場合、ウィ
ンドウの見えている部分とセーブアンダ領域の両方に描
画することが必要である点である。セーブアンダ領域に
対しても描画を行うことでセーブアンダ指定がされてい
るウィンドウが消去された場合に、隠されていた部分を
セーブアンダ領域からコピーするだけでウィンドウの修
復を行うことができる。
のデータをセーブアンダ領域に保持している間に、隠さ
れているウィンドウに対して描画が行われた場合、ウィ
ンドウの見えている部分とセーブアンダ領域の両方に描
画することが必要である点である。セーブアンダ領域に
対しても描画を行うことでセーブアンダ指定がされてい
るウィンドウが消去された場合に、隠されていた部分を
セーブアンダ領域からコピーするだけでウィンドウの修
復を行うことができる。
【0005】また、ダブルバッファとは、図形処理表示
をスムースに行うため、フレームバッファを2個備え、
一方のフレームバッファで表示している間に他方のフレ
ームバッファに描画を行い、それを瞬時に切り替えるこ
とにより、描画途中を見せることなく表示が行えるよう
に構成することをいう。
をスムースに行うため、フレームバッファを2個備え、
一方のフレームバッファで表示している間に他方のフレ
ームバッファに描画を行い、それを瞬時に切り替えるこ
とにより、描画途中を見せることなく表示が行えるよう
に構成することをいう。
【0006】従来、セーブアンダを実現する場合、下記
の如き2通りの手段がある。 (1) セーブアンダ領域として主記憶装置を使用する方
法。 この方法は、セーブアンダを行うと指定されている、例
えばポップアップ・メニューの如きウィンドウを描画す
る前に、隠される部分のデータを主記憶に獲得したセー
ブアンダ領域にコピーすることにより行われる。図10
により、この方法でのセーブアンダ処理手順を説明す
る。
の如き2通りの手段がある。 (1) セーブアンダ領域として主記憶装置を使用する方
法。 この方法は、セーブアンダを行うと指定されている、例
えばポップアップ・メニューの如きウィンドウを描画す
る前に、隠される部分のデータを主記憶に獲得したセー
ブアンダ領域にコピーすることにより行われる。図10
により、この方法でのセーブアンダ処理手順を説明す
る。
【0007】図10(A)に示すウィンドウWに文字E
を表示しているとき、このウィンドウWの小領域Sにポ
ップアップ・メニューPMを表示するとき、主記憶に格
納された、マルチウィンドウを実現するプログラムにも
とづき、CPUはオペレータの指示をマウスの如き入力
装置から受け取り、それに対応した処理を行う。これに
よりオペレータがポップアップ・メニューを表示する指
示をした場合、CPUは、ポップアップ・メニューPM
を表示する位置すなわち前記小領域Sのピクセルデータ
を格納することができる領域、つまり図10(B)に示
すセーブアンダ領域MSを主記憶に獲得する。
を表示しているとき、このウィンドウWの小領域Sにポ
ップアップ・メニューPMを表示するとき、主記憶に格
納された、マルチウィンドウを実現するプログラムにも
とづき、CPUはオペレータの指示をマウスの如き入力
装置から受け取り、それに対応した処理を行う。これに
よりオペレータがポップアップ・メニューを表示する指
示をした場合、CPUは、ポップアップ・メニューPM
を表示する位置すなわち前記小領域Sのピクセルデータ
を格納することができる領域、つまり図10(B)に示
すセーブアンダ領域MSを主記憶に獲得する。
【0008】そして、図10(B)に示す如く、ポップ
アップ・メニューPMを表示する位置のフレームメモリ
内のピクセルデータをこのセーブアンダ領域MSにコピ
ーし、それから同(C)に示す如く、ディスプレイにポ
ップアップ・メニューPMを表示する。
アップ・メニューPMを表示する位置のフレームメモリ
内のピクセルデータをこのセーブアンダ領域MSにコピ
ーし、それから同(C)に示す如く、ディスプレイにポ
ップアップ・メニューPMを表示する。
【0009】この状態で、図10(D)に示す如く、ポ
ップアップ・メニューPMの下にあるウィンドウWに対
して、例えば文字Fを描く描画要求があった場合、この
描画図形をウィンドウWの見える部分の矩形リスト(ク
リップリスト)CL1 、CL 2 、CL3 に従ってウィン
ドウWに対して描画ハードウェアを使用して描画を行
う。次に図10(E)に示す如く、同じ描画図形(文字
F)を、CPUがセーブアンダ領域MSに対して描画を
行う。
ップアップ・メニューPMの下にあるウィンドウWに対
して、例えば文字Fを描く描画要求があった場合、この
描画図形をウィンドウWの見える部分の矩形リスト(ク
リップリスト)CL1 、CL 2 、CL3 に従ってウィン
ドウWに対して描画ハードウェアを使用して描画を行
う。次に図10(E)に示す如く、同じ描画図形(文字
F)を、CPUがセーブアンダ領域MSに対して描画を
行う。
【0010】次にオペレータがポップアップ・メニュー
を消去する指令を出した場合には、図10(E)に示す
セーブアンダ領域MSのピクセルデータをフレームメモ
リにコピーして、主記憶に獲得したセーブアンダ領域を
解放する。かくして図10(F)に示す如く、今度はウ
ィンドウWに文字E、Fが記入された状態で復元される
ことになる。
を消去する指令を出した場合には、図10(E)に示す
セーブアンダ領域MSのピクセルデータをフレームメモ
リにコピーして、主記憶に獲得したセーブアンダ領域を
解放する。かくして図10(F)に示す如く、今度はウ
ィンドウWに文字E、Fが記入された状態で復元される
ことになる。
【0011】ところで、この方法の問題点は、セーブア
ンダ領域を主記憶に獲得するため、フレームメモリに描
画するときに使用している描画ハードウェアが使用でき
ない点にある。勿論フレームメモリへの描画に描画ハー
ドウェアを使用していない場合は関係ないが、その場合
の描画性能はかなり低いものになる。またシェーディン
グを行う多角形の描画をCPUで行うことは、現在のC
PUでは性能上問題がある。
ンダ領域を主記憶に獲得するため、フレームメモリに描
画するときに使用している描画ハードウェアが使用でき
ない点にある。勿論フレームメモリへの描画に描画ハー
ドウェアを使用していない場合は関係ないが、その場合
の描画性能はかなり低いものになる。またシェーディン
グを行う多角形の描画をCPUで行うことは、現在のC
PUでは性能上問題がある。
【0012】そのため、3次元図形を描画するシステム
では図形描画を行う特別なハードウェアを搭載するのが
常になっている。この描画ハードウェアの機能として
は、低いレベルではベクトル描画、矩形描画等であり、
より高いレベルになればシェーディング多角形描画機能
を持つ場合もある。
では図形描画を行う特別なハードウェアを搭載するのが
常になっている。この描画ハードウェアの機能として
は、低いレベルではベクトル描画、矩形描画等であり、
より高いレベルになればシェーディング多角形描画機能
を持つ場合もある。
【0013】このような高機能な描画ハードで実現して
いる機能をCPUで行った場合の描画性能は非常に低下
し、セーブアンダを行うとかえってシステムの性能を損
なうことになる。そのため高機能な図形描画をサポート
しているシステムではセーブアンダを行わずに、ウィン
ドウを再描画するようにしている。
いる機能をCPUで行った場合の描画性能は非常に低下
し、セーブアンダを行うとかえってシステムの性能を損
なうことになる。そのため高機能な図形描画をサポート
しているシステムではセーブアンダを行わずに、ウィン
ドウを再描画するようにしている。
【0014】このように、セーブアンダ領域に主記憶し
か利用できないシステムでは、高機能な図形描画ではセ
ーブアンダを使用することができなく、したがってポッ
プアップ・メニュー消去時には、ポップアップ・メニュ
ーに覆われていた全てのウィンドウに対して再描画を行
う。この再描画性能は、セーブアンダが実現できた場合
の性能に比べてはるかに遅いので、この再描画に長時間
が必要である。
か利用できないシステムでは、高機能な図形描画ではセ
ーブアンダを使用することができなく、したがってポッ
プアップ・メニュー消去時には、ポップアップ・メニュ
ーに覆われていた全てのウィンドウに対して再描画を行
う。この再描画性能は、セーブアンダが実現できた場合
の性能に比べてはるかに遅いので、この再描画に長時間
が必要である。
【0015】(2) セーブアンダ領域としてフレームバッ
ファのオフスクリーン領域を使用する方法。 この方法は、セーブアンダを行うと指定されたウィンド
ウによって隠された部分を、フレームバッファのオフス
クリーンにコピーし、以後隠されている部分に対する描
画はその領域に行うものである。
ファのオフスクリーン領域を使用する方法。 この方法は、セーブアンダを行うと指定されたウィンド
ウによって隠された部分を、フレームバッファのオフス
クリーンにコピーし、以後隠されている部分に対する描
画はその領域に行うものである。
【0016】図11(A)に示す如く、フレームバッフ
ァ・メモリFMを一枚の連続領域で構成し、これにディ
スプレイEの表示領域EAと、オフスクリーン領域OA
を用意する場合もあるし、同(B)に示す如く、フレー
ムバッファ・メモリFMを表示領域EAと、オフスクリ
ーン領域OAに分割してもよい。
ァ・メモリFMを一枚の連続領域で構成し、これにディ
スプレイEの表示領域EAと、オフスクリーン領域OA
を用意する場合もあるし、同(B)に示す如く、フレー
ムバッファ・メモリFMを表示領域EAと、オフスクリ
ーン領域OAに分割してもよい。
【0017】以下図12、図13にもとづきこの方法で
のセーブアンダの処理手順を説明する。図12(A)に
示す如く、ウィンドウW1 に文字Hが、ウィンドウW2
に文字Eがウィンドウの一部が重なった状態で表示され
ているとき、このウィンドウW 2 の小領域Sを隠すポッ
プアップ・メニューPMを表示するとき、主記憶に格納
された、マルチウィンドウを実現するプログラムにもと
づき、CPUはオペレータの指示をマウスの如き入力装
置から受け取り、それに対応した処理を行う。
のセーブアンダの処理手順を説明する。図12(A)に
示す如く、ウィンドウW1 に文字Hが、ウィンドウW2
に文字Eがウィンドウの一部が重なった状態で表示され
ているとき、このウィンドウW 2 の小領域Sを隠すポッ
プアップ・メニューPMを表示するとき、主記憶に格納
された、マルチウィンドウを実現するプログラムにもと
づき、CPUはオペレータの指示をマウスの如き入力装
置から受け取り、それに対応した処理を行う。
【0018】これによりオペレータがポップアップ・メ
ニューを表示するように指示をした場合、CPUはポッ
プアップ・メニューPMを表示する位置、すなわち前記
小領域Sのピクセルデータを格納することができる領域
MSを、図12(B)に示す如く、フレームバッファ・
メモリFMのオフスクリーン領域OAから獲得する。そ
して、ポップアップ・メニューPMを表示する位置であ
る前記小領域S内のピクセルデータをこのセーブアンダ
領域MSにコピーし、それからポップアップ・メニュー
PMを表示する。
ニューを表示するように指示をした場合、CPUはポッ
プアップ・メニューPMを表示する位置、すなわち前記
小領域Sのピクセルデータを格納することができる領域
MSを、図12(B)に示す如く、フレームバッファ・
メモリFMのオフスクリーン領域OAから獲得する。そ
して、ポップアップ・メニューPMを表示する位置であ
る前記小領域S内のピクセルデータをこのセーブアンダ
領域MSにコピーし、それからポップアップ・メニュー
PMを表示する。
【0019】この状態で、図13(A)に示す如く、ポ
ップアップ・メニューPMの下にあるウィンドウW2 に
対して、例えば文字Fを描く描画要求があった場合、こ
の描画図形をウィンドウW2 の見える部分のクリップリ
スト(クリップ処理を行う矩形の集合)にしたがって、
その個々の矩形CL1 、CL2 、CL3 、CL4 に対し
て描画ハードウェアを使用して描画を行う。次に同じ描
画図形(文字F)を、セーブアンダ領域MSに対して、
同じく描画ハードウェアを使用して描画する。
ップアップ・メニューPMの下にあるウィンドウW2 に
対して、例えば文字Fを描く描画要求があった場合、こ
の描画図形をウィンドウW2 の見える部分のクリップリ
スト(クリップ処理を行う矩形の集合)にしたがって、
その個々の矩形CL1 、CL2 、CL3 、CL4 に対し
て描画ハードウェアを使用して描画を行う。次に同じ描
画図形(文字F)を、セーブアンダ領域MSに対して、
同じく描画ハードウェアを使用して描画する。
【0020】次にオペレータがポップアップ・メニュー
を消去する指示を出した場合、図13(A)に示すセー
ブアンダ領域MSのピクセルデータを、同(B)に示す
如く、表示領域にコピーして、オフスクリーン領域に獲
得したセーブアンダ領域を解放する。
を消去する指示を出した場合、図13(A)に示すセー
ブアンダ領域MSのピクセルデータを、同(B)に示す
如く、表示領域にコピーして、オフスクリーン領域に獲
得したセーブアンダ領域を解放する。
【0021】この方法の問題点は、図14に示す如く、
フレームバッファ・メモリのオフスクリーン領域がセー
ブアンダ指定されたウィンドウ(この例ではポップアッ
プ・メニュー)によって隠された領域より小さい場合に
対応できないという欠点がある。この欠点を解消するた
めには、オフスクリーン領域を表示領域と同じ大きさ
分、用意する必要がある。しかしオフスクリーン領域を
セーブアンダのためだけに用意するというのもコストの
点で問題がある。
フレームバッファ・メモリのオフスクリーン領域がセー
ブアンダ指定されたウィンドウ(この例ではポップアッ
プ・メニュー)によって隠された領域より小さい場合に
対応できないという欠点がある。この欠点を解消するた
めには、オフスクリーン領域を表示領域と同じ大きさ
分、用意する必要がある。しかしオフスクリーン領域を
セーブアンダのためだけに用意するというのもコストの
点で問題がある。
【0022】また別の問題としてウィンドウの見えてい
る部分とセーブアンダ領域は別矩形となるので、描画を
2度行う必要がある点である。つまり、セーブアンダを
行うとセーブアンダ指定されているウィンドウに覆われ
ているウィンドウの描画は、見えている部分と覆われて
いる部分の2ケ所に行うことになり性能がダウンする。
る部分とセーブアンダ領域は別矩形となるので、描画を
2度行う必要がある点である。つまり、セーブアンダを
行うとセーブアンダ指定されているウィンドウに覆われ
ているウィンドウの描画は、見えている部分と覆われて
いる部分の2ケ所に行うことになり性能がダウンする。
【0023】例えば、この例の場合には、個々の矩形C
L1 、CL2 、CL3 、CL4 とセーブアンダ領域の5
つの領域に対して、同じ描画を行うことになる。
L1 、CL2 、CL3 、CL4 とセーブアンダ領域の5
つの領域に対して、同じ描画を行うことになる。
【0024】
【発明が解決しようとする課題】描画ハードウェアがフ
レームメモリにしか描画できない場合、セーブアンダ領
域を主記憶にとると、セーブアンダ領域に対する描画に
は描画ハードウェアを使用できない。そのためCPUで
主記憶に描画する必要がある。しかしCPUで描画する
のが遅いために描画ハードウェアを備えているのに、セ
ーブアンダ領域に対する描画にCPUを使用しているの
では性能を出すことができない。
レームメモリにしか描画できない場合、セーブアンダ領
域を主記憶にとると、セーブアンダ領域に対する描画に
は描画ハードウェアを使用できない。そのためCPUで
主記憶に描画する必要がある。しかしCPUで描画する
のが遅いために描画ハードウェアを備えているのに、セ
ーブアンダ領域に対する描画にCPUを使用しているの
では性能を出すことができない。
【0025】またCPUで描画するためには、描画ハー
ドウェアで実現している描画機能をすべてサポートする
プログラムを主記憶に対する描画のために開発しなけれ
ばならない。
ドウェアで実現している描画機能をすべてサポートする
プログラムを主記憶に対する描画のために開発しなけれ
ばならない。
【0026】上記問題を解決するためには、別にフレー
ムメモリを用意して、そこをセーブアンダ領域として使
用する方法がある。この方法を用いれば描画ハードウェ
アを使用してセーブアンダ領域に描画を行うことができ
る。しかしセーブアンダ機能のためにフレームメモリを
備えるというのはコスト的に問題がある。
ムメモリを用意して、そこをセーブアンダ領域として使
用する方法がある。この方法を用いれば描画ハードウェ
アを使用してセーブアンダ領域に描画を行うことができ
る。しかしセーブアンダ機能のためにフレームメモリを
備えるというのはコスト的に問題がある。
【0027】またセーブアンダ領域を主記憶に取る方法
も、別のフレームメモリを用意する方法も、ウィンドウ
の表示されている部分と、セーブアンダ領域の部分に対
する描画は別々に行う必要がある。そのためウィンドウ
に対する描画は、最低でも表示部分とセーブアンダ部分
の2回行う必要があり、セーブアンダを行わない場合に
比べて低下する。
も、別のフレームメモリを用意する方法も、ウィンドウ
の表示されている部分と、セーブアンダ領域の部分に対
する描画は別々に行う必要がある。そのためウィンドウ
に対する描画は、最低でも表示部分とセーブアンダ部分
の2回行う必要があり、セーブアンダを行わない場合に
比べて低下する。
【0028】本発明の目的は、これを改善するため、ダ
ブルバッファのために用意されているフレームメモリを
セーブアンダにも利用し、表示領域とセーブアンダ領域
を連続した1つの矩形として描画ハードウェアに見せる
ことで描画速度を高速化するためのハード及びその制御
方法を提供することである。
ブルバッファのために用意されているフレームメモリを
セーブアンダにも利用し、表示領域とセーブアンダ領域
を連続した1つの矩形として描画ハードウェアに見せる
ことで描画速度を高速化するためのハード及びその制御
方法を提供することである。
【0029】
【課題を解決するための手段】このため本発明では、図
1に示すようにダブルバッファを構成する2組のフレー
ムメモリA、B(それぞれA面、B面を構成する)と、
セーブアンダ領域を示すセーブアンダマスクプレーン1
0と、ディスプレイEのどの部分に、この2組のフレー
ムメモリA、Bのどちらを表示するのかを示すダブルバ
ッファA/B面選択プレーンと、これらを制御するフレ
ームメモリ制御装置4を設ける。フレームメモリ制御装
置4は、セーブアンダマスクプレーンが有効であるかど
うかを制御するセーブアンダ制御レジスタ4−1と、セ
ーブアンダマスクプレーンのマスクに掛かった図形を強
制的にどちらの面に描画するかを指定するセーブアンダ
面選択レジスタ4−2を含む。
1に示すようにダブルバッファを構成する2組のフレー
ムメモリA、B(それぞれA面、B面を構成する)と、
セーブアンダ領域を示すセーブアンダマスクプレーン1
0と、ディスプレイEのどの部分に、この2組のフレー
ムメモリA、Bのどちらを表示するのかを示すダブルバ
ッファA/B面選択プレーンと、これらを制御するフレ
ームメモリ制御装置4を設ける。フレームメモリ制御装
置4は、セーブアンダマスクプレーンが有効であるかど
うかを制御するセーブアンダ制御レジスタ4−1と、セ
ーブアンダマスクプレーンのマスクに掛かった図形を強
制的にどちらの面に描画するかを指定するセーブアンダ
面選択レジスタ4−2を含む。
【0030】
【作用】本発明の動作を、図2(A)のように、A面、
B面にそれぞれの図形が描画され、表示画面に、これら
が合成された状態において、セーブアンダ指定したウィ
ンドウWを表示する場合の、ウィンドウWで覆われる部
分を保存する動作[図2(A)−>図2(B)の動
作]、また、セーブアンダ指定したウィンドウWが表示
されている状態において、ウィンドウWによって覆われ
ているウィンドウW1に文字「F」のような図形を描画
する場合の動作[図2(B)−>図3(A)の動作]、
また、ウィンドウWが消去される場合にウィンドウWに
よって覆われていた部分を復元する動作[図3(A)−
>図3(B)の動作]、以上、3つのセーブアンダ機能
を実現するための動作について、それぞれ説明する。
B面にそれぞれの図形が描画され、表示画面に、これら
が合成された状態において、セーブアンダ指定したウィ
ンドウWを表示する場合の、ウィンドウWで覆われる部
分を保存する動作[図2(A)−>図2(B)の動
作]、また、セーブアンダ指定したウィンドウWが表示
されている状態において、ウィンドウWによって覆われ
ているウィンドウW1に文字「F」のような図形を描画
する場合の動作[図2(B)−>図3(A)の動作]、
また、ウィンドウWが消去される場合にウィンドウWに
よって覆われていた部分を復元する動作[図3(A)−
>図3(B)の動作]、以上、3つのセーブアンダ機能
を実現するための動作について、それぞれ説明する。
【0031】[図2(A)−>図2(B)の動作]セー
ブアンダ指定されたウィンドウWによって覆われる部分
を、ウィンドウWを表示する面でない方にコピーし保存
する。(このとき、ウィンドウWを描画する面とは反対
の面に描画表示されているウィンドウW2 に対しては保
存を行う必要はない。)そして、ウィンドウWの範囲が
セーブアンダを行う領域であることを指定するために、
セーブアンダマスクプレーン10のウィンドウWの表示
位置に対応する部分に「1」を書き込む。そして、ウィ
ンドウWを描画し、ウィンドウWが表示画面に表示され
るように、ダブルバッファA/B面選択プレーンのウィ
ンドウWに対応する位置にウィンドウWが表示されるよ
うにデータを書き込む。(例えば、ウィンドウWがA面
に描画されるのであれば、「0」を、B面に描画される
のであれば「1」を書き込む。)以上により、図2
(B)の表示画面Eのような表示が得られる。
ブアンダ指定されたウィンドウWによって覆われる部分
を、ウィンドウWを表示する面でない方にコピーし保存
する。(このとき、ウィンドウWを描画する面とは反対
の面に描画表示されているウィンドウW2 に対しては保
存を行う必要はない。)そして、ウィンドウWの範囲が
セーブアンダを行う領域であることを指定するために、
セーブアンダマスクプレーン10のウィンドウWの表示
位置に対応する部分に「1」を書き込む。そして、ウィ
ンドウWを描画し、ウィンドウWが表示画面に表示され
るように、ダブルバッファA/B面選択プレーンのウィ
ンドウWに対応する位置にウィンドウWが表示されるよ
うにデータを書き込む。(例えば、ウィンドウWがA面
に描画されるのであれば、「0」を、B面に描画される
のであれば「1」を書き込む。)以上により、図2
(B)の表示画面Eのような表示が得られる。
【0032】[図2(B)−>図3(A)の動作]それ
から、ウィンドウWで覆われているウィンドウW1 に、
文字「F」のような図形を描画する場合、セーブアンダ
マスクプレーン10が「0」の位置では、ウィンドウW
1 の描画されている面に描画し、セーブアンダマスクプ
レーン10が「1」の位置では、本来ならウィンドウW
1 が描画されている面に描画されるところを、反対の面
に描画する。このようにして、ウィンドウWで覆われて
いる部分に対する描画は、前記の保存した部分に書き込
まれ、覆われていない部分はそのままウィンドウW1 に
描画することができる。
から、ウィンドウWで覆われているウィンドウW1 に、
文字「F」のような図形を描画する場合、セーブアンダ
マスクプレーン10が「0」の位置では、ウィンドウW
1 の描画されている面に描画し、セーブアンダマスクプ
レーン10が「1」の位置では、本来ならウィンドウW
1 が描画されている面に描画されるところを、反対の面
に描画する。このようにして、ウィンドウWで覆われて
いる部分に対する描画は、前記の保存した部分に書き込
まれ、覆われていない部分はそのままウィンドウW1 に
描画することができる。
【0033】[図3(A)−>図3(B)の動作]次
に、ウィンドウWが消去された場合、ウィンドウWによ
って覆われていた部分を、それを保存している面からウ
ィンドウWが描画されていた面にコピーし、表示画面を
復元する。また、復元した部分がそれぞれ表示されるよ
うに、ダブルバッファA/B面選択プレーンを設定す
る。そして、セーブアンダ領域がなくなったので、セー
ブアンダマスクプレーン10を「0」クリアする。以上
のようにして、図3(B)の表示画面のようになる。
に、ウィンドウWが消去された場合、ウィンドウWによ
って覆われていた部分を、それを保存している面からウ
ィンドウWが描画されていた面にコピーし、表示画面を
復元する。また、復元した部分がそれぞれ表示されるよ
うに、ダブルバッファA/B面選択プレーンを設定す
る。そして、セーブアンダ領域がなくなったので、セー
ブアンダマスクプレーン10を「0」クリアする。以上
のようにして、図3(B)の表示画面のようになる。
【0034】このようにして、本発明では、ダブルバッ
ファのために用意されているフレームメモリをセーブア
ンダを実現するために利用し、なおかつ、図形を描画す
る際に表示する面と、保存する面とを区別しないので、
覆い隠されている部分に対して、別に描画する必要がな
く、セーブアンダを高速化することができる。
ファのために用意されているフレームメモリをセーブア
ンダを実現するために利用し、なおかつ、図形を描画す
る際に表示する面と、保存する面とを区別しないので、
覆い隠されている部分に対して、別に描画する必要がな
く、セーブアンダを高速化することができる。
【0035】
【実施例】本発明の一実施例を図1〜図8にもとづき、
図1を参照しつつ説明する。図1は本発明の一実施例構
成図、図2、図3はそれぞれ本発明の動作説明図、図4
はセーブアンダ指定ウィンドウ表示時の処理説明図、図
5はダブルバッファA/B面選択プレーンの説明図、図
6はセーブアンダマスクプレーンの説明図、図7はピク
セルデータ及びピクセルアドレス説明図、図8はフレー
ムメモリ制御装置の処理動作説明図である。
図1を参照しつつ説明する。図1は本発明の一実施例構
成図、図2、図3はそれぞれ本発明の動作説明図、図4
はセーブアンダ指定ウィンドウ表示時の処理説明図、図
5はダブルバッファA/B面選択プレーンの説明図、図
6はセーブアンダマスクプレーンの説明図、図7はピク
セルデータ及びピクセルアドレス説明図、図8はフレー
ムメモリ制御装置の処理動作説明図である。
【0036】図中、他図と同記号部分は同一部分を示
し、1はCPU(主制御装置)、2は主記憶装置、3は
描画装置、4はフレームメモリ制御装置、5はA面のフ
レームメモリ、6はB面のフレームメモリ、7は表示デ
ータ切替回路、8はD/Aコンバータ、10はセーブア
ンダマスクプレーン、11はダブルバッファA/B面選
択プレーン、Eはディスプレイである。
し、1はCPU(主制御装置)、2は主記憶装置、3は
描画装置、4はフレームメモリ制御装置、5はA面のフ
レームメモリ、6はB面のフレームメモリ、7は表示デ
ータ切替回路、8はD/Aコンバータ、10はセーブア
ンダマスクプレーン、11はダブルバッファA/B面選
択プレーン、Eはディスプレイである。
【0037】CPU1は本発明に関するフレームメモリ
制御装置を含む画像処理装置全体の制御を行うものであ
る。主記憶装置2は、例えばCPU1を動作するための
プログラムが記入されたり、CPU1が動作するために
必要なデータが記入されたり、作業領域を提供するもの
である。
制御装置を含む画像処理装置全体の制御を行うものであ
る。主記憶装置2は、例えばCPU1を動作するための
プログラムが記入されたり、CPU1が動作するために
必要なデータが記入されたり、作業領域を提供するもの
である。
【0038】描画装置3は、例えばベクトルデータを演
算してピクセルに展開するものである。フレームメモリ
制御装置4はA面のフレームメモリ5、B面のフレーム
メモリ6に選択的に画像データを記入制御するものであ
り、またセーブアンダマスクプレーン10が有効か否か
を制御するセーブアンダ制御レジスタ4−1と、セーブ
アンダマスクプレーンのマスクに掛かった図形を強制的
にどちらの面に描画するかを指定するセーブアンダ面選
択レジスタ4−2を有する。例えばセーブアンダ制御レ
ジスタ4−1に「0」が設定されるときセーブアンダマ
スクプレーン10は無効で「1」が設定されるとき有効
とし、またセーブアンダ面選択レジスタ4−2に「0」
が記入されるときA面選択とし「1」が記入されるとき
B面選択とする。
算してピクセルに展開するものである。フレームメモリ
制御装置4はA面のフレームメモリ5、B面のフレーム
メモリ6に選択的に画像データを記入制御するものであ
り、またセーブアンダマスクプレーン10が有効か否か
を制御するセーブアンダ制御レジスタ4−1と、セーブ
アンダマスクプレーンのマスクに掛かった図形を強制的
にどちらの面に描画するかを指定するセーブアンダ面選
択レジスタ4−2を有する。例えばセーブアンダ制御レ
ジスタ4−1に「0」が設定されるときセーブアンダマ
スクプレーン10は無効で「1」が設定されるとき有効
とし、またセーブアンダ面選択レジスタ4−2に「0」
が記入されるときA面選択とし「1」が記入されるとき
B面選択とする。
【0039】表示データ切替回路7は、ダブルバッファ
A/B面選択プレーン11の記入データに応じて表示デ
ータの読出し先をフレームメモリ5又はフレームメモリ
6のいずれにするのか切替制御するものである。
A/B面選択プレーン11の記入データに応じて表示デ
ータの読出し先をフレームメモリ5又はフレームメモリ
6のいずれにするのか切替制御するものである。
【0040】セーブアンダマスクプレーン10は、セー
ブアンダ領域を示すものであり、図6(A)に示す如
く、例えば「1」が記入されている位置がセーブアンダ
領域を示す。この場合、フレームメモリの指定された位
置にピクセルデータを書き込むとき、このセーブアンダ
マスクプレーン10の対応する位置のビットデータを参
照し、「0」である場合にはそのまま書き込もうとした
面にデータを書き込む。しかし「1」である場合には書
き込み面がどちらであっても前記セーブアンダ面選択レ
ジスタ4−2で指定された面にデータを書き込む。
ブアンダ領域を示すものであり、図6(A)に示す如
く、例えば「1」が記入されている位置がセーブアンダ
領域を示す。この場合、フレームメモリの指定された位
置にピクセルデータを書き込むとき、このセーブアンダ
マスクプレーン10の対応する位置のビットデータを参
照し、「0」である場合にはそのまま書き込もうとした
面にデータを書き込む。しかし「1」である場合には書
き込み面がどちらであっても前記セーブアンダ面選択レ
ジスタ4−2で指定された面にデータを書き込む。
【0041】いま、図6(A)においてセーブアンダ制
御レジスタ4−1に「1」が記入されてセーブアンダマ
スクプレーン10が有効であり、セーブアンダ面選択レ
ジスタ4−2に「1」が記入されて記入先がB面を示す
とき、A面にFという図形を描画する場合、同(B)に
示す如く、セーブアンダマスクプレーン10に「0」が
記入される部分についてはA面にFという図形の一部が
描画される。しかし、セーブアンダマスクプレーン10
に「1」が記入される部分については、そのセーブアン
ダ面選択レジスタ4−2に記入されているB面にこの図
形の一部が描画される。
御レジスタ4−1に「1」が記入されてセーブアンダマ
スクプレーン10が有効であり、セーブアンダ面選択レ
ジスタ4−2に「1」が記入されて記入先がB面を示す
とき、A面にFという図形を描画する場合、同(B)に
示す如く、セーブアンダマスクプレーン10に「0」が
記入される部分についてはA面にFという図形の一部が
描画される。しかし、セーブアンダマスクプレーン10
に「1」が記入される部分については、そのセーブアン
ダ面選択レジスタ4−2に記入されているB面にこの図
形の一部が描画される。
【0042】ダブルバッファA/B面選択プレーン11
は、ディスプレイEのどの部分に2組のフレームメモリ
のどちらを表示するのかを示すものであり、例えば図5
に示す如く、A面を表示する領域には「0」を記入し、
B面を表示する領域には「1」を記入する。
は、ディスプレイEのどの部分に2組のフレームメモリ
のどちらを表示するのかを示すものであり、例えば図5
に示す如く、A面を表示する領域には「0」を記入し、
B面を表示する領域には「1」を記入する。
【0043】なお、前記セーブアンダマスクプレーン1
0とダブルバッファA/B面選択プレーン11でコント
ロールプレーンを構成する。A面のフレームメモリ5お
よびB面のフレームメモリ6に、図5に示す如き図形が
記入されるとき、ディスプレイEにはその左下部分にB
面の図形が表示され、他はA面の図形が表示される。
0とダブルバッファA/B面選択プレーン11でコント
ロールプレーンを構成する。A面のフレームメモリ5お
よびB面のフレームメモリ6に、図5に示す如き図形が
記入されるとき、ディスプレイEにはその左下部分にB
面の図形が表示され、他はA面の図形が表示される。
【0044】次に図1の動作について説明する。マルチ
ウィンドウを実現するプログラムは、主記憶装置2に格
納されており、CPU1はこれにより制御される。い
ま、オペレータの指示をマウスのような入力装置から伝
達されると、CPU1はこれに対応した処理を行うこと
になる。
ウィンドウを実現するプログラムは、主記憶装置2に格
納されており、CPU1はこれにより制御される。い
ま、オペレータの指示をマウスのような入力装置から伝
達されると、CPU1はこれに対応した処理を行うこと
になる。
【0045】オペレータが例えばポップアップ・メニュ
ーを表示する指示を入力装置のボタンを押下することに
より伝達した場合、CPU1はポップアップ・メニュー
によって覆われるウィンドウの内、A面に表示されてい
るウィンドウの覆われている部分をB面にコピーする。
ーを表示する指示を入力装置のボタンを押下することに
より伝達した場合、CPU1はポップアップ・メニュー
によって覆われるウィンドウの内、A面に表示されてい
るウィンドウの覆われている部分をB面にコピーする。
【0046】例えば図4(A)に示す如き表示画面がデ
ィスプレイEに表示されているとき、同(B)に示す表
示画面の如く、セーブアンダ指定されたポップアップ・
メニューPMが表示される場合について、この場合のセ
ーブアンダ機能の実現について説明する。なお、図4
(A)のA面に示すa部分は後述する説明用のものであ
り、このときA面には表示画面に示すウィンドウW1 に
示す画像が記入され、B面には図4(A)に示す通りの
画像が記されている。
ィスプレイEに表示されているとき、同(B)に示す表
示画面の如く、セーブアンダ指定されたポップアップ・
メニューPMが表示される場合について、この場合のセ
ーブアンダ機能の実現について説明する。なお、図4
(A)のA面に示すa部分は後述する説明用のものであ
り、このときA面には表示画面に示すウィンドウW1 に
示す画像が記入され、B面には図4(A)に示す通りの
画像が記されている。
【0047】そしてセーブアンダマスクプレーン10に
はオール「0」が記入され、ダブルバッファA/B面選
択プレーン11には、図4(A)に示す如く、ウィンド
ウW 2 の表示部分のみ「1」を記入し、他を「0」にし
て、A面、B面のフレームメモリの表示状態を示してい
る。
はオール「0」が記入され、ダブルバッファA/B面選
択プレーン11には、図4(A)に示す如く、ウィンド
ウW 2 の表示部分のみ「1」を記入し、他を「0」にし
て、A面、B面のフレームメモリの表示状態を示してい
る。
【0048】この状態で前記の如く、ポップアップ・メ
ニューを表示する場合について説明する。 まずセー
ブアンダ制御レジスタ4−1に「0」を設定して、セー
ブアンダマスクプレーン10を無効にする。そしてA
面に表示されているウィンドウW 1 で、セーブアンダ領
域SUに掛かる部分、すなわち、図4(A)のA面に示
すa部分を反対面であるB面にコピーする。
ニューを表示する場合について説明する。 まずセー
ブアンダ制御レジスタ4−1に「0」を設定して、セー
ブアンダマスクプレーン10を無効にする。そしてA
面に表示されているウィンドウW 1 で、セーブアンダ領
域SUに掛かる部分、すなわち、図4(A)のA面に示
すa部分を反対面であるB面にコピーする。
【0049】 セーブアンダ領域SUを指定するため
にポップアップ・メニューPMに対応する位置のセーブ
アンダマスクプレーンに「1」を記入する。これにはC
PU1でアクセスして「1」を記入してもよく、また描
画装置が使用できる場合は、描画装置で矩形面塗りをし
てもよい。
にポップアップ・メニューPMに対応する位置のセーブ
アンダマスクプレーンに「1」を記入する。これにはC
PU1でアクセスして「1」を記入してもよく、また描
画装置が使用できる場合は、描画装置で矩形面塗りをし
てもよい。
【0050】 フレームメモリのA面にポップアップ
・メニューを表示するために、ダブルバッファA/B面
選択プレーン11の対象位置に「0」(A面選択を示
す)を書き込む。このデータも、前記 と同様にして書
き込む。
・メニューを表示するために、ダブルバッファA/B面
選択プレーン11の対象位置に「0」(A面選択を示
す)を書き込む。このデータも、前記 と同様にして書
き込む。
【0051】 フレームメモリのA面にポップアップ
・メニューPMの内容を描画する。これにより、図4
(B)に示す表示画面がディスプレイEに表示される。
セーブアンダ面選択レジスタ4−2に「1」(B面
選択を示す)を設定する。
・メニューPMの内容を描画する。これにより、図4
(B)に示す表示画面がディスプレイEに表示される。
セーブアンダ面選択レジスタ4−2に「1」(B面
選択を示す)を設定する。
【0052】 前記により「0」にしたセーブアン
ダ制御レジスタ4−1に「1」を設定してセーブアンダ
を有効にする。この状態でポップアップ・メニューの下
にあったウィンドウに対して描画要求があった場合は、
以下のようにしてセーブアンダとダブルバッファを共存
させることができる。
ダ制御レジスタ4−1に「1」を設定してセーブアンダ
を有効にする。この状態でポップアップ・メニューの下
にあったウィンドウに対して描画要求があった場合は、
以下のようにしてセーブアンダとダブルバッファを共存
させることができる。
【0053】この状態でポップアップ・メニューによっ
て覆われたウィンドウに対して描画要求があった場合に
ついて説明する。図1において、描画装置3は、ウィン
ドウを構成する矩形リストに対してのみ描画を行う。
(これにより、従来のようにセーブアンダ領域を構成す
る矩形リストに対して別に描画する必要がなくなり、高
速化が図れる。)すると、描画装置3が出力したピクセ
ルデータは、フレームメモリ制御装置により、A面また
は、B面に書き込まれる。これを、図3(A)で説明す
ると、描画対象のウィンドウのセーブアンダマスクプレ
ーンで指定された部分は、B面に書き込み、セーブアン
ダマスクプレーンで指定されていない部分は、もともと
書き込もうとしたA面の方に書き込まれる。このように
して、表示画面上は、覆い隠されているウィンドウの見
えている部分に対してのみ描画されたようにオペレータ
に見せることができ、隠されている部分の図形は、現
在、表示されていないB面の部分に描画されている。
て覆われたウィンドウに対して描画要求があった場合に
ついて説明する。図1において、描画装置3は、ウィン
ドウを構成する矩形リストに対してのみ描画を行う。
(これにより、従来のようにセーブアンダ領域を構成す
る矩形リストに対して別に描画する必要がなくなり、高
速化が図れる。)すると、描画装置3が出力したピクセ
ルデータは、フレームメモリ制御装置により、A面また
は、B面に書き込まれる。これを、図3(A)で説明す
ると、描画対象のウィンドウのセーブアンダマスクプレ
ーンで指定された部分は、B面に書き込み、セーブアン
ダマスクプレーンで指定されていない部分は、もともと
書き込もうとしたA面の方に書き込まれる。このように
して、表示画面上は、覆い隠されているウィンドウの見
えている部分に対してのみ描画されたようにオペレータ
に見せることができ、隠されている部分の図形は、現
在、表示されていないB面の部分に描画されている。
【0054】この処理を以下に詳しく説明する。A面に
表示されていたウィンドウの場合、描画図形をウィンド
ウのセーブアンダ領域が存在しない場合でのクリップリ
ストに従ってウィンドウに対して描画ハードウェアを使
用してB面に描画を行う。描画装置3は図形をピクセル
に分解して、各ピクセル毎にピクセルデータとB面のピ
クセルのアドレスを出力する。
表示されていたウィンドウの場合、描画図形をウィンド
ウのセーブアンダ領域が存在しない場合でのクリップリ
ストに従ってウィンドウに対して描画ハードウェアを使
用してB面に描画を行う。描画装置3は図形をピクセル
に分解して、各ピクセル毎にピクセルデータとB面のピ
クセルのアドレスを出力する。
【0055】フレームメモリ制御装置4では、セーブア
ンダ制御レジスタ4−1が「0」即ちセーブアンダマス
クプレーン10が無効の場合は、入力したピクセルアド
レスにピクセルデータを書き込む。セーブアンダ制御レ
ジスタ4−1が「1」の場合には、ピクセルアドレスに
対応する位置のセーブアンダマスクプレーンの値を読み
込む。
ンダ制御レジスタ4−1が「0」即ちセーブアンダマス
クプレーン10が無効の場合は、入力したピクセルアド
レスにピクセルデータを書き込む。セーブアンダ制御レ
ジスタ4−1が「1」の場合には、ピクセルアドレスに
対応する位置のセーブアンダマスクプレーンの値を読み
込む。
【0056】実際には、フレームメモリ、ダブルバッフ
ァA/B面選択プレーン、セーブアンダマスクプレーン
の関係は、図7(A)に示す如くパックして構成された
状態で示される。そしてピクセルデータ形式は、図7
(B)に示す如く示されるので、入力したピクセルアド
レスで読み込んだピクセルデータの6ビット目(5で示
される区分)を取り出せばこのセーブアンダマスクプレ
ーンの値を読むことができる。しかし入力ピクセルアド
レスからセーブアンダマスクプレーンの対応するビット
を読み込む手法は、本発明とは直接関係するものではな
いので、他の適当な手法をとってもよい。
ァA/B面選択プレーン、セーブアンダマスクプレーン
の関係は、図7(A)に示す如くパックして構成された
状態で示される。そしてピクセルデータ形式は、図7
(B)に示す如く示されるので、入力したピクセルアド
レスで読み込んだピクセルデータの6ビット目(5で示
される区分)を取り出せばこのセーブアンダマスクプレ
ーンの値を読むことができる。しかし入力ピクセルアド
レスからセーブアンダマスクプレーンの対応するビット
を読み込む手法は、本発明とは直接関係するものではな
いので、他の適当な手法をとってもよい。
【0057】セーブアンダマスクプレーンの値が「0」
の場合は、入力したピクセルアドレスにピクセルデータ
を書き込む。そしてセーブアンダマスクプレーンの値が
「1」の場合は、セーブアンダ面選択レジスタ4−2に
よって指定されている面にピクセルデータを書き込む。
の場合は、入力したピクセルアドレスにピクセルデータ
を書き込む。そしてセーブアンダマスクプレーンの値が
「1」の場合は、セーブアンダ面選択レジスタ4−2に
よって指定されている面にピクセルデータを書き込む。
【0058】セーブアンダ面選択レジスタ4−2から書
き込む面のアドレスを求める方法は、例えば図7(C)
に示す如く、ピクセルアドレスの31ビット(32ビッ
ト目)をセーブアンダ面選択レジスタ4−2の値で置換
することにより可能となる。勿論このアドレス生成の手
法も本発明とは直接関係がないので、どのような手法を
とってもよい。
き込む面のアドレスを求める方法は、例えば図7(C)
に示す如く、ピクセルアドレスの31ビット(32ビッ
ト目)をセーブアンダ面選択レジスタ4−2の値で置換
することにより可能となる。勿論このアドレス生成の手
法も本発明とは直接関係がないので、どのような手法を
とってもよい。
【0059】このようにしてセーブアンダ指定されたウ
ィンドウにより覆われたウィンドウに対する描画は、フ
レームメモリ制御装置4により、セーブアンダ領域が存
在しない場合と同様に描画ができる。図8は前記のフレ
ームメモリ制御装置4の動作説明をフローチャートとし
て示したものである。
ィンドウにより覆われたウィンドウに対する描画は、フ
レームメモリ制御装置4により、セーブアンダ領域が存
在しない場合と同様に描画ができる。図8は前記のフレ
ームメモリ制御装置4の動作説明をフローチャートとし
て示したものである。
【0060】次に描画した図形を表示画面に表示される
ようにするために、ダブルバッファA/B面選択プレー
ン11にウィンドウのクリップリストにしたがって
「1」を書き込む。B面に表示されていたウィンドウに
対しても同じようにA/B面を逆にして処理を行う。こ
のようにしてダブルバッファとセーブアンダを両立させ
ることができる。
ようにするために、ダブルバッファA/B面選択プレー
ン11にウィンドウのクリップリストにしたがって
「1」を書き込む。B面に表示されていたウィンドウに
対しても同じようにA/B面を逆にして処理を行う。こ
のようにしてダブルバッファとセーブアンダを両立させ
ることができる。
【0061】それからオペレータがポップアップ・メニ
ューを消去する指示を出した場合、図3(B)のように
セーブアンダ領域のピクセルデータを対応するウィンド
ウが表示されている面にコピーし、ダブルバッファA/
B面選択プレーンを設定することによって画面を修復す
る。そしてセーブアンダマスクプレーン10の対象マス
クを「0」クリアする。
ューを消去する指示を出した場合、図3(B)のように
セーブアンダ領域のピクセルデータを対応するウィンド
ウが表示されている面にコピーし、ダブルバッファA/
B面選択プレーンを設定することによって画面を修復す
る。そしてセーブアンダマスクプレーン10の対象マス
クを「0」クリアする。
【0062】なお前記説明ではA面にセーブアンダ指定
されたポップアップ・メニューの如きウィンドウを表示
する例について説明したが、勿論B面にこのようなウィ
ンドウを表示することができる。この場合は、A面とB
面を逆にすればよい。
されたポップアップ・メニューの如きウィンドウを表示
する例について説明したが、勿論B面にこのようなウィ
ンドウを表示することができる。この場合は、A面とB
面を逆にすればよい。
【0063】
【発明の効果】本発明によりセーブアンダ領域をダブル
バッファと共有して使用することが可能となるので、セ
ーブアンダ用のフレームメモリを装備する必要がなくな
り、低コストでセーブアンダを実現できる。しかもセー
ブアンダ領域に対する描画を表示領域に対する描画と同
時に行えるのでセーブアンダが行われている時の描画が
セーブアンダが行われていないときと同じ速度で実現で
きる。
バッファと共有して使用することが可能となるので、セ
ーブアンダ用のフレームメモリを装備する必要がなくな
り、低コストでセーブアンダを実現できる。しかもセー
ブアンダ領域に対する描画を表示領域に対する描画と同
時に行えるのでセーブアンダが行われている時の描画が
セーブアンダが行われていないときと同じ速度で実現で
きる。
【図1】本発明の一実施例構成図である。
【図2】本発明の動作説明図(その1)である。
【図3】本発明の動作説明図(その2)である。
【図4】本発明におけるセーブアンダ指定ウィンドウ表
示時の処理説明図である。
示時の処理説明図である。
【図5】ダブルバッファA/B面選択プレーン説明図で
ある。
ある。
【図6】セーブアンダマスクプレーンの説明図である。
【図7】ピクセルデータ及びピクセルアドレス説明図で
ある。
ある。
【図8】フレームメモリ制御装置の処理動作説明図であ
る。
る。
【図9】マルチウィンドウシステム説明図である。
【図10】セーブアンダ機能説明図である。
【図11】オフスクリーン領域説明図である。
【図12】オフスクリーンにおけるセーブアンダ説明図
(その1)である。
(その1)である。
【図13】オフスクリーンにおけるセーブアンダ説明図
(その2)である。
(その2)である。
【図14】オフスクリーンが小さい場合の問題点説明図
である。
である。
1 CPU 2 主記憶装置 3 描画装置 4 フレームメモリ制御装置 5 フレームメモリ(A面) 6 フレームメモリ(B面) 7 表示データ切替回路 8 D/Aコンバータ 10 セーブアンダマスクプレーン 11 ダブルバッファA/B面選択プレーン
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−257617(JP,A) 特開 昭62−160572(JP,A) 特開 昭59−90887(JP,A) 特開 平3−78824(JP,A) 特開 平3−220595(JP,A) 特開 平4−194985(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/00 G06F 3/14 - 3/153 G06F 12/00 - 12/06 G06F 13/16 - 13/18 G09G 5/00 - 5/40
Claims (6)
- 【請求項1】 少なくとも第1及び第2の画面バッファ
を有し、前記2つの画面バッファに格納されたデータを
それぞれから選択して1画面を作成し、表示装置に表示
させる表示制御装置において、 前記表示装置に表示された画面の任意の領域を書き換え
るとき、第1の画面バッファの前記任意の領域に、前記
任意の領域を書き換えるためのデータを格納する手段
と、 前記第1の画面バッファのデータのうち、前記書き換え
られる部分に対応する位置の書き換え前のデータを、前
記第1の画面バッファから第2の画面バッファに退避す
る手段とを有することを特徴とする表示制御装置。 - 【請求項2】 前記書き換えられた部分の領域を指定す
るマスク手段と、 前記画面の任意の位置を新たに描画する場合に、前記マ
スク手段の指定する領域に対応する部分を描画するとき
は、前記第2の画面バッファに退避されたデータのうち
前記マスク手段の指定する領域を描画する手段を有する
ことを特徴とする請求項1に記載の表示制御装置。 - 【請求項3】 前記書き換えられた部分の領域を消去す
る場合に、前記マスク手段の指定する領域に対応する第
2の画面バッファの領域を第1の画面バッファに復帰す
る手段を有することを特徴とする請求項1又は2に記載
の表示制御装置。 - 【請求項4】 少なくとも第1及び第2の画面バッファ
に格納されたデータをそれぞれから選択して1画面を作
成し、表示装置に表示させる表示方法において、 前記表示装置に表示された画面の任意の領域を書き換え
るとき、第1の画面バッファの前記任意の領域に、前記
任意の領域の書き換えのためのデータを格納するステッ
プと、 前記第1の画面バッファのデータのうち、前記書き換え
られる部分に対応する位置の書き換え前のデータを、前
記第1の画面バッファから第2の画面バッファに退避す
るステップとを有することを特徴とする表示方法。 - 【請求項5】 前記書き換えられた部分の領域を指定す
るマスクステップと 、 前記画面の任意の位置を新たに描画する場合に、前記マ
スクステップの指定する領域に対応する部分を描画する
とき、前記第2の画面バッファに退避されたデータのう
ち前記マスクステップにより指定された領域を描画する
ことを特徴とする、請求項4に記載の表示方法。 - 【請求項6】 前記書き換えられた部分の領域を消去す
る場合に、前記マスクステップにより指定された領域に
対応する第2の画面バッファの領域を第1の画面バッフ
ァに復帰することを特徴とする請求項4又は5に記載の
表示制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6289092A JP3238188B2 (ja) | 1992-03-19 | 1992-03-19 | フレームメモリ制御装置及びフレームメモリ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6289092A JP3238188B2 (ja) | 1992-03-19 | 1992-03-19 | フレームメモリ制御装置及びフレームメモリ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05265686A JPH05265686A (ja) | 1993-10-15 |
JP3238188B2 true JP3238188B2 (ja) | 2001-12-10 |
Family
ID=13213298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6289092A Expired - Fee Related JP3238188B2 (ja) | 1992-03-19 | 1992-03-19 | フレームメモリ制御装置及びフレームメモリ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3238188B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101228111B1 (ko) | 2006-11-01 | 2013-02-01 | 삼성전자주식회사 | 움직임 보상을 위한 더블 레지스터 어레이 버퍼 |
-
1992
- 1992-03-19 JP JP6289092A patent/JP3238188B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05265686A (ja) | 1993-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5321807A (en) | Accelerated graphics display method | |
KR900006042B1 (ko) | 복합문서 처리 장치용 표시 제어장치 | |
US4819189A (en) | Computer system with multiwindow presentation manager | |
JP2865751B2 (ja) | 表示画面スクロール方式 | |
JP3413201B2 (ja) | ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン | |
JPH0421198B2 (ja) | ||
US20030210267A1 (en) | Systems and methods for providing asynchronous client rendering in a graphical user interface (GUI) environment | |
EP1316064B1 (en) | Scaling images | |
JP3238188B2 (ja) | フレームメモリ制御装置及びフレームメモリ制御方法 | |
JPH06149533A (ja) | 表示領域外セグメントの描画処理を削減したセグメント高速描画方式 | |
JP2535324B2 (ja) | 表示制御装置 | |
JP2690925B2 (ja) | 表示制御方式及び表示制御方法 | |
JP3337934B2 (ja) | ブリンク表示方法 | |
JPS6315617B2 (ja) | ||
JP2951666B2 (ja) | クリッピング方法及びグラフィックシステム並びにワークステーション | |
JPS62256175A (ja) | 画像編集処理装置 | |
JP2829051B2 (ja) | 文字表示方式 | |
JP2998417B2 (ja) | マルチメディア情報処理装置 | |
JP2510013B2 (ja) | ビットマップディスプレイ制御方式 | |
JPH08123651A (ja) | マルチウィンドウディスプレイ装置 | |
JP2822672B2 (ja) | 図形描画方法および装置 | |
JP2595884B2 (ja) | ラバーバンド枠表示装置 | |
JPS6159484A (ja) | セグメント制御方式 | |
JPH04308921A (ja) | マルチウィンドウシステム | |
JPH08249481A (ja) | 図面処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20010918 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071005 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081005 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081005 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091005 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |