JPH0460588A - マルチウインドウ制御方法 - Google Patents

マルチウインドウ制御方法

Info

Publication number
JPH0460588A
JPH0460588A JP2170033A JP17003390A JPH0460588A JP H0460588 A JPH0460588 A JP H0460588A JP 2170033 A JP2170033 A JP 2170033A JP 17003390 A JP17003390 A JP 17003390A JP H0460588 A JPH0460588 A JP H0460588A
Authority
JP
Japan
Prior art keywords
window
area
address
data
memory
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.)
Pending
Application number
JP2170033A
Other languages
English (en)
Inventor
Akiyoshi Miura
三浦 明義
Hidehiko Akita
秋田 英彦
Hiroshi Fujise
藤瀬 洋
Tetsuo Kiyomatsu
哲郎 清松
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.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering Ltd
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 Hitachi Ltd, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP2170033A priority Critical patent/JPH0460588A/ja
Publication of JPH0460588A publication Critical patent/JPH0460588A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は電子計算機システムに係わり、特にマルチウィ
ンドウの制御方法に関する。
〔従来の技術〕
従来、マルチウィンドウの制御方式に関しては日経エレ
クトロニクス1986年7年14日号、第115頁から
第132頁において論じられている。
〔発明が解決しようとする課題〕
マルチウィンドウ制御においてはウィンドウに表示され
ているデータだけでなく、他のウィンドウにより隠され
ている部分のデータも保持しておく必要がある。これは
ウィンドウ群の構成が変化し、今まで隠されていた部分
が表面に現われた場合、アプリケーションプログラムの
介在無しにデータを表示させる必要がある。また、アプ
リケーションプログラムにはウィンドウへの描画時にウ
ィンドウの隠されている部分の有無を意識させない必要
もある。
従来、上記課題に対応したマルチウィンドウ制御方式の
一つとしてbitblt(bit block tra
nsfer)方式が知られている。これは、第21図に
示すように、各々のウィンドウ用の表示データ領域をビ
ットマツプメモリに保持し、表示コントローラがウィン
ドウの重なり具合の情報をもとに、ビットマツプメモリ
から各ウィンドウの表示部分のデータだけを表示用のフ
レームバッファに転送する方式である。ディスプレイに
はフレームバッファの内容が表示され、ウィンドウが重
なって見える。
このbitblt方式はウィンドウ内に描画する際ビッ
トツブメモリ内の該ウィンドウ領域にデータを書き込め
ばよいので、プログラムはウィンドウの重なり具合を考
慮せず描画できる。また、ウィンドウ群の構成が変化し
、隠れていた部分が表面にでても、マルチウィンドウ制
御プログラムがビットマツプメモリ内の該部分のデータ
をフレームメモリに転送することにより該データを表示
できるので、アプリケーションプログラムに影響を与え
ることはない。しかしながら描画のたびに、すなわちビ
ットマツプメモリのウィンドウ領域にデータを書き込む
たびにビットマツプメモリ内の該ウィンドウ領域の表示
部分のデータをフレームバッファに転送する必要があっ
た。従って、−旦描画したデータを転送するというオー
バヘッドが発生し、これが表示速度を遅らせる要因とな
っていた。
本発明の目的は上記問題を解決しマルチウィンドウの表
示速度を向上させることにある。
〔課題を解決するための手段〕
上記問題である描画のたびにビットマツプメモリからフ
レームメモリへのデータ転送を無くすため、本発明では
全てのウィンドウに対し、プログラムにはウィンドウ全
体が表示されているかのごとく、すなわちウィンドウ全
体がフレームメモリに割り付けられているように見なさ
せ、プログラムがウィンドウに描画する際、ディスプレ
イに表示されるデータを保持するフレームメモリのアド
レスをアクセスさせるが、ウィンドウの可視領域すなわ
ち他のウィンドウにより隠されていない部分については
直接フレームバッファをアクセスさせ、隠されている部
分についてはフレームメモリへのアクセスを表示されな
いデータを保持するビットマツプメモリへのアクセスに
変換する。
これをプログラムで不可視領域の存在を認識しアクセス
先を切り換えるのは、効率の面で次のような問題がある
ためbitblt方式と比べて優れているとはいえない
。この問題を例をあげ説明する。
第3図に示すように途中のCD部が不可視領域にかかっ
ている線分ABを描画する場合、不可視領域を認識し、
線分ACおよび線分DBはフレームバッファに描画し、
線分CDはビットマツプメモリに描画するといった処理
が必要となる。
もう一つの発明は、ウィンドウの不可視領域及びそれに
対応するビットマツプメモリ領域の変換対を登録し、該
変換対をもとにCPUからの可視領域に対するアクセス
はそのまま8力し、不可視領域に対するアクセスを対応
するビットマツプメモリ領域に変換して出力するアドレ
ストランスレータを設けることにある。
もう一つの発明は、上記アドレストランスレータをCP
Uに内蔵させることにある。
またもう一つの本発明は、上記アドレストランスレータ
をグラフィックプロセッサに内蔵させることにある。
尚、上記手段においては不可視領域とそれに対応するビ
ットマツプメモリ領域の変換対は複数個設定可能とする
〔作用〕
本発明では、ウィンドウへの描画前に描画対象のウィン
ドウの重なり具合に応じた上記変換対を設定することに
より、ウィンドウごとに異なる変換対を設定できるので
誤ってフレームバッファの不可視領域に書き込むことを
防ぐことができる。
また、ウィンドウ群の構成が変化し、従来不可視領域で
あったところが可視領域になった場合、マルチウィンド
ウ制御プログラムがビットマツプメモリに待避していた
表示データをフレームメモリに移せるので、アプリケー
ションプログラムに影響を与えることはない。
〔実施例〕
以下図を用いて本発明の一実施例について説明する。
第1図は本発明の一実施例のシステム構成を示す図で、
中央処理装置のCP U (CentralProce
ssing Unit) 1、主記憶MM (Main
 Memory)2、システムバスS B (Syst
e+m Bus) 3、アドレストランスレータA T
 (Address Translator) 4、ビ
ットマツプメモリBM(Bitmap Memory)
 5、フレームバッファ F B (Frame Bu
ffer) 6、表示コントローラD P C(Dis
play Controller) 7、ディスプレイ
[) P (Display ) 8、及びサブシステ
ムバスS S B (Sub System Bus)
 9から構成される。
本実施例においてCPUIはウィンドウの生成や消去な
どの管理および描画を行なうプログラムを実行する。こ
のプログラム及びプログラムが使用するデータはMM2
に格納する。CPUIからはMM2、後述する8M5を
SB3を通しアクセスする。また、CPUIは後述する
Ar1を経由し8M5及びFB6をアクセスする。ディ
スク等の入出力機器を制御する入出力制御コントローラ
もSB3に接続されるが、本発明には直接関係しないの
で図には示していない。
Ar1はウィンドウの不可視領域のアドレス及びそれら
に対応するビットマツプメモリ領域のアドレスを管理し
、可視領域に対するアクセスはそのままFB6に、不可
視領域に対するアクセスは8M5に変換する。
8M5はウィンドウの不可視領域のデータを格納する。
8M5は2メガバイトの容量を持ち、CPUIがSB3
を通し直接アクセスすることも。
Ar1から5SB9を経由してアクセスすることも可能
である。どちらの場合も先頭アドレスは200000番
地(以下アドレスの番地は全て16進数とする)で、番
地当たり1バイトのデータを保持する。
FB6はDP8の表示画面に対応するデータを保持し、
 256000バイトの容量を持ち、その先頭アドレス
は100000番地であり、CPUIからはAr1を通
してアクセスする。本実施例では、1ドツトの大きさは
1バイトであり、8M5及びFB6共、左上のドツトか
ら始まるスキャンラインの順にメモリに格納される。
DPC7は随時FB6よりデータを読みだしDP8に表
示データを送る。従って、DP8には常にFB6の内容
が反映されて表示される。DP8は横640ドツト、縦
400ドツトの大きさで、画面の各点をxy座標で表す
と、左上が原点(0゜0)で、左下が(0,400)右
上が(640゜0)、右下が(640,400)となる
第4図は第1図に示したAr1の構成を示す図で、アド
レスデコーダAD (Address Decoder
)lO1座標生成器CC(Coordinates C
reator)11、コンパレータCMP (Comp
arator)  12、矩形レジスタRR(Rect
angle Register)  13、バイパスレ
ジスタB R(Bypass Register) 1
4、及び制御部CU (Coutrol Unit) 
15からなる。
ADIOには第1図のCPUIからのアドレス信号が入
力される。CCIIは入力されたアドレスからXY座標
を生成する。CMP12はCCIIにより生成されたX
Y座標とRR13に保持されている不可視領域の座標と
を比較し、CPUIによりアクセスされる座標が不可視
領域に含まれているか否かを半定し、含まれていればヒ
ツト信号を、含まれていなければミスヒツト信号を出力
する。RR13は不可視領域の座標及び対応するビット
マツプメモリの先頭アドレスを保持する。
本実施例ではそれぞれ16個のCMPl2とRR13を
備える。BR14はAr1によるアドレスの変換を行な
わせるか否かを指定するレジスタである。Cu2SはA
r1のアドレス変換動作を制御し、BR14の値がOの
場合、Cu2SはAr1に入力されたアドレス変換を行
ない、BR14の値が1の場合CU15は入力されたア
ドレスをそのまま出力する。
第5図は第4図に示したRR13の構成を示す図で、矩
形のX座標の下限を示すX L F (X LowFi
eld) 20 、 X座標の上限を示すX HF (
X l(ighField) 21、Y座標下限を示す
YLF(YLowField) 22、Y座標の上限を
示すY HF (Y HighField) 23、ビ
ットマツプメモリアドレスを示すB M A F (B
it+++ap Memory Address Fi
eld) 24、及びRR13内のデータが有効か無効
かを示すV F (Valid Field) 25か
らなる。VF25の値が1の場合、CMPl2は座標の
比較を行ない、値がOの場合は無効でCMPl2は比較
を行なわず常にミスヒツト信号を出力する。
第6図は本実施例におけるDP8の表示内容を示す図で
、矩形のウィンドウ30及びウィンドウ31が上に重な
り不可視領域35及び不可視領域36を持つウィンドウ
32の4つのウィンドウが表示されている。
第7図はウィンドウ30〜32及び不可視領域35〜3
6のXY座標及び不可視領域に対応する8M5の先頭ア
ドレスを示す。
第8図は第4図のAr1の動作を示すフローチャートで
ある。
ブロック50においてAr1はCPUIからSB3を経
由しアドレスが送られるとADIOで入力したアドレス
がFB6を示すものかチエツクし、FB6を示すならば
CULL及びCCl3に変換指示信号を出しブロック5
5に進む。FB6以外のアドレスであればAr1は処理
を終了する。
次にブロック55においてCu2SはBR14の値をチ
エツクし、BR14の値が1ならばブロック120に進
む、BR14の値がOならばブロック60に進む。ブロ
ック60においてCCIIは入力されたFB6のアドレ
スを先に説明した画面内のXY座標に変換し、全てのC
MPl2に送る。Y座標は((入力アドレスーFB6先
頭アドレス)÷DP8の横幅(ドツト数))の商で、X
座標は同じく余りである。
次にブロック65においてCMPl2はCCIIにより
生成されたXY座標とCMPl 2に対応するRR13
が保持する座標データとを比較する。
ブロック70においてCMPl2はRR13の■F25
の値が0でXL≦X≦XHかつYL≦Y≦YHならばブ
ロック80に進みCu2Sにヒツト信号を送る。ここで
XL、XH,YL、及びYHはそれぞれXLF20.X
HF21.YLF22、及びYHF23の値を示し、X
及びYはCCIIにより生成されたX座標及びY座標の
値を示す。そうでなければブロック90に進みCu2S
にミスヒツト信号を送る。ブロック70からブロック9
0までの処理は全てのCMPl2が実行する。
ブロック100においてCU 15はヒツト信号がある
かどうかチエツクし、ヒツト信号がなければブロック1
20に進み入力されたアドレスをそのまま出力する。ヒ
ツト信号があればブロック110に進みCu2Sは入力
アドレスを8M5のアドレスに変換する。すなわちヒツ
ト信号をだしたCMPl2に対応するRR13のBMA
F24のビットマツプメモリのアドレスに(Y −Y 
L)X (XH−XL+1)+ (X−XL)を加えて
出力する。
以下、第6図に示すようにウィンドウ30及びウィンド
ウ31が上に重なりに不可視領域を持つウィンドウ32
に線分EFを描画した場合を例にとり本実施例の動作を
説明する。
本実施例ではCPUIがウィンドウ32に描画する場合
CPUIはFB6にウィンドウ32全体が存在するとみ
なしウィンドウ32の不可視領域の矩形35及び36に
対してもFB6のアドレスをアクセスする。しかしなが
ら、ウィンドウ32の不可視領域の矩形35及び36に
対応すべきFB6の領域はそれぞれウィンドウ32の上
に重なっているウィンドウ30及びウィンドウ31の領
域である。そこで、Ar1がウィンドウ32の不可視領
域の矩形35及び36に対するアクセスはビットマツプ
メモリの領域40及び41へのアクセスに変換する。
次にAr1によるアドレス変換手順について第6図のウ
ィンドウ32に線分EFを描画する場合を例にとり説明
する。まずCPUIはウィンドウ32アクセスする前に
Ar4RR13に第7図に示した不可視領域の矩形35
及び36のXY座標における上下限および対応する8M
S内の領域のアドレスを設定し、同時に設定したRR1
3に対してはそのVF25の値を1にする。また、残り
のRR13のVF25には値Oを設定する。BR14に
は値Oを設定する。
次にCPUIは線分EFを描画、すなわち座標E (2
30,180) から座標(231,180)。
座標(232,180) 、−(7)順に座標F(46
5,180)まで点を書くため、各座標に対応するFB
6のアドレスにデータFFを書き込む。ここで、線分E
Fの各座標に対応するFB6のアドレスは11C200
番地、11C201番地、・・・11C31D番地であ
る。
次に、可視領域の線分EGの描画に対するアドレス変換
について座標E (230,180)を例にとり説明す
る。Ar1に対しCPUIから座標Eに対応するFB6
のアドレス11C200番地が呂されると、Ar1のA
DIOがFB6に対するアクセスであると認識し、Cu
2S及びCC11に変換指示信号を出す。これを受け、
CCIIはCPUIから出されたアドレスをXY座標に
変換する。先に述べたとおり、Y座標は((入力アドレ
スーFB6先頭アドレス)÷DP8の横幅(ドツト数)
)の商、X座標は同じく余りとして求めるので、座標E
の場合、入力アドレスは11C200番地で、FB6の
先頭アドレスは100000番地、DP8(7)横幅6
40から座標(230,180)が求まる。
次にCMPl2がCCIIにより生成されたXY座標と
RR13が保持する座標データとを比較する。ここで、
XL≦X≦XHがっYL≦Y≦YHを充たしたCMPl
2はヒツト信号をRR13及びCu2Sに送り、そうで
ないCMPl 2はミスヒツト信号をRR13及びCu
2Sに送り、またRR13のVF25の値が0のものは
比較が行なわれず、CMPl2はミスヒツト信号をRR
13及びCu2Sに送る。座標Eの場合、全てのCMP
l2がミスヒツト信号を出力する。Cu2Sはヒツト信
号が無い場合、Ar1に入力されたアドレスをそのまま
出力する。すなわち、FB6に対するアドレス11C2
00番地が出力され、FB6がCPUIによりアクセス
される。以下、CPUIが座標Eから座標Gまでアクセ
スする場合、同様にアドレスは変換されず、FB6がア
クセスされる。座標Gに対するアクセスの場合、同様に
アドレスがXY座標に変換されCMPl 2によりRR
13の値と比較が行なわれる。座標Eに対しては2番目
のCMPl2がヒツト信号をRR13及びCu2Sに送
り、残り(7)CMP 12はミスヒツト信号をRR1
3及びCu2Sに送る。そこで2番目のRR13はBM
AF24のビットマツプメモリのアドレスをCu2Sに
送り、Cu2Sは該ビットマツプメモリアドレス(Y−
YL)X (XH−XL+1)+ (X−XL)を加え
て出力する。以下、CPUIが座標Gがら座標Hまでア
クセスする場合、同様にアドレスが変換され、8M5が
アクセスされる。また、座標Hがら座標Fまでは、アド
レスは変化されずFB6がアクセスされる。
本実施例では、さらにウィンドウがオーバラップされて
いない場合の高速化を図るためにAr4内で座標の比較
を行なわず、入力されたFB6アドレスをそのまま出力
するモードを設けている。
これは、描画前にAr1のBR14に値1を設定するこ
とにより達成される。
〔発明の効果〕
本発明によれば、プログラムが、不可視領域が全く存在
しないかのごとくウィンドウ領域に描画でき、プログラ
ムを単純化し、描画時のビットマツプメモリからフレー
ムメモリへのデータ転送をなくし、ウィンドウへの描画
処理を高速化することができる。
【図面の簡単な説明】
第1図は本発明の一実施例のシステム構成を示すブロッ
ク図、第2図は従来技術を示すブロック図、第3図はマ
ルチウィンドウの表示状態を表す図、第4図は第1図の
アドレストランスレータの構成を示すブロック図、第5
図は第4図の矩形レジスタ構成を示す図、第6図は本発
明の一実施例のマルチウィンドウの表示状態を表す図、
第7図は第6図のウィンドウの座標を示す図、第8図は
第4図のアドレストランスレータの動作を示す図である
。 1・・・CPU、4・・・アドレストランスレータ、5
・ビットマツプメモリ、6・・・フレームメモリ、7・
・貞 回 η

Claims (1)

  1. 【特許請求の範囲】 1、ディスプレイに表示されるデータを保持するフレー
    ムメモリと表示用のデータを保持するビットマップメモ
    リとを有する電子計算機のマルチウィンドウシステムに
    おいて、 ウィンドウの不可視領域及びそれに対応するビットマッ
    プメモリ領域の変換対を保持し、該変換対をもとにCP
    Uからの該ウィンドウの可視領域に対するアクセスはそ
    のまま出力し、該ウィンドウの不可視領域に対するアク
    セスを対応するビットマップメモリ領域に変換して出力
    するアドレストランスレータを設け、 全てのウィンドウについて、プログラムにはウィンドウ
    全体がフレームメモリに割り付けられていると見なさせ
    、ウインドウへの描画時には、フレームメモリの該ウィ
    ンドウが割り付けられている領域をアクセスさせ、該ウ
    ィンドウの他のウィンドウにより隠された不可視領域に
    ついてはフレームメモリへのアクセスを該不可視領域に
    対応するビットマップメモリ領域へのアクセスに変換す
    る ことを特徴とするマルチウィンドウ制御方法。 2、ウィンドウの不可視領域及びそれに対応するビット
    マップメモリ領域の変換対を保持する手段を有し、該変
    換対をもとにCPUからの該ウィンドウの可視領域に対
    するアクセスはそのまま出力し、該ウィンドウの不可視
    領域に対するアクセスを対応するビットマップメモリ領
    域に変換して出力するアドレストランスレータを備えて
    いることを特徴とする特許請求の範囲第1項記載のマル
    チウィンドウ制御方法。 3、上記アドレストランスレータをCPU内に内蔵した
    ことを特徴とする特許請求の範囲第2項記載のマルチウ
    ィンドウ制御方法。 4、上記アドレストランスレータをグラフィックプロセ
    ッサ内に内蔵したことを特徴とする特許請求の範囲第1
    項乃至第2項のいずれかに記載のマルチウィンドウ制御
    方法。
JP2170033A 1990-06-29 1990-06-29 マルチウインドウ制御方法 Pending JPH0460588A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2170033A JPH0460588A (ja) 1990-06-29 1990-06-29 マルチウインドウ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2170033A JPH0460588A (ja) 1990-06-29 1990-06-29 マルチウインドウ制御方法

Publications (1)

Publication Number Publication Date
JPH0460588A true JPH0460588A (ja) 1992-02-26

Family

ID=15897366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2170033A Pending JPH0460588A (ja) 1990-06-29 1990-06-29 マルチウインドウ制御方法

Country Status (1)

Country Link
JP (1) JPH0460588A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100617210B1 (ko) * 1999-08-12 2006-08-31 엘지전자 주식회사 그래픽 메모리 관리 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100617210B1 (ko) * 1999-08-12 2006-08-31 엘지전자 주식회사 그래픽 메모리 관리 방법

Similar Documents

Publication Publication Date Title
US4104624A (en) Microprocessor controlled CRT display system
US5990902A (en) Apparatus and method for prefetching texture data in a video controller of graphic accelerators
JP2538029B2 (ja) コンピユ−タ・デイスプレイ装置
JPS5995669A (ja) 図形処理装置
JP2774862B2 (ja) Dma制御装置および情報処理装置
WO1992001256A1 (en) Application address display window mapper for a sharable ms-dos processor
JPH0460588A (ja) マルチウインドウ制御方法
JP3043077B2 (ja) フレームバッファ制御装置
JPS58136093A (ja) 表示制御装置
JPH0588838A (ja) マルチウインドウ表示装置
JP2829051B2 (ja) 文字表示方式
JPS59178487A (ja) デイスプレイ装置
JPH031675B2 (ja)
JPH11161255A (ja) 画像表示装置
JP3358698B2 (ja) 描画装置
JPS61180290A (ja) 図形表示装置
JPS6258296A (ja) マルチウインドメモリ管理装置
JPH1011047A (ja) 画像表示制御装置
JPH0216665A (ja) データ転送装置
JPS63304291A (ja) ビットマップディスプレイ管理方式
JPS62115562A (ja) Dmaコントロ−ラ
JPS61228582A (ja) 画像処理装置
JPS61101875A (ja) イメ−ジデ−タの処理方式
JPS60129786A (ja) 画像メモリ装置
JPH09319347A (ja) 表示制御装置