JPH052239B2 - - Google Patents

Info

Publication number
JPH052239B2
JPH052239B2 JP60277364A JP27736485A JPH052239B2 JP H052239 B2 JPH052239 B2 JP H052239B2 JP 60277364 A JP60277364 A JP 60277364A JP 27736485 A JP27736485 A JP 27736485A JP H052239 B2 JPH052239 B2 JP H052239B2
Authority
JP
Japan
Prior art keywords
data
color
signal
register
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
Application number
JP60277364A
Other languages
Japanese (ja)
Other versions
JPS62135885A (en
Inventor
Takatoshi Ishii
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.)
ASCII Corp
Original Assignee
ASCII 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 ASCII Corp filed Critical ASCII Corp
Priority to JP60277364A priority Critical patent/JPS62135885A/en
Priority to US06/940,530 priority patent/US4857899A/en
Publication of JPS62135885A publication Critical patent/JPS62135885A/en
Publication of JPH052239B2 publication Critical patent/JPH052239B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

「産業上の利用分野」 この発明は、CPU(中央処理装置)制御による
カラーデイスプレイ装置等に使用する表示コント
ローラに関する。 「従来の技術」 一般に、CPU制御によるカラーデイスプレイ
装置において画像表示を行う場合は、予め
VRAM(ビデオRAM)内に表示ドツト対応でカ
ラーコードを記憶させておき、このカラーコード
を読み出し、カラールツクアツプテーブル(以
下、LUTと称する)によつてR(レツド)、G(グ
リーン)、B(ブルー)カラーデータに変換し、こ
のカラーデータを更にR,G,Bカラー信号(ア
ナログ信号)に変換して、同期信号と共にCRT
カラー表示装置へ出力する。 「発明が解決しようとする問題点」 ところで、従来のこの種のカラーデイスプレイ
装置は、単にVRAMのカラーコードをR,G,
Bカラー信号に変換して表示するだけであり、こ
のため、表示の自由度が低く、また、画像変更の
都度CPUがVRAM内のデータを書き換えなけれ
ばならないことから、CPUの負担が大きい欠点
があつた。 この発明は上述した事情に鑑みてなされたもの
で、従来以上に多彩な画像表示をすることがで
き、しかも、CPU負担を従来より小さくするこ
とができる表示コントローラを提供することを目
的としている。 「問題点を解決するための手段」 この発明による表示コントローラは、表示ドツ
トに対応したカラーデータおよび表示修飾データ
が記憶される記憶手段と、前記記憶手段からカラ
ーデータおよび表示修飾データをドツトクロツク
に同期して順次読み出す読み出し手段と、前記読
み出し手段によつて読み出された表示修飾データ
が特定のデータである場合に、前記読み出し手段
によつて読み出されたカラーデータに対し、該カ
ラーデータに対応したドツトよりも1ドツトクロ
ツクタイミング前に表示されるべきドツトのカラ
ーデータを用いた演算処理を施し、この演算処理
の結果を表示修飾されたカラーデータとして出力
する修飾手段と、前記修飾手段が出力するカラー
データをアナログ信号に変換してカラー表示装置
へ出力するデイジタル/アナログ変換器とを具備
することを特徴としている。 「実施例」 以下、図面を参照してこの発明の一実施例につ
いて説明する。第1図はこの発明の一実施例によ
る表示コントローラ1を用いたドツト表示による
カラーデイスプレイ装置の構成を示すブロツク図
である。以下、このデイスプレイ装置について詳
述する。 (1) 概略構成 第1図において、2はCPU、3はCPU2にお
いて用いられるプログラムが記憶されたROMお
よびデータ記憶用のRAMからなるメモリ、4は
ビデオデイスプレイプロセツサ(以下、VDPと
称す)、5はVRAMである。VDP4は、CPU2
からバスライン6を介して供給されるカラーコー
ドをVRAM5内に書き込み、また、書き込んだ
カラーコードを読み出し、ドツトデータDD7−
0(8ビツト)として表示コントローラ1へ順次
出力する。また、このVDP4は、同期信号
SYN・I、ブランキング信号BLANK、デイス
プレイタイミング信号DTMG、ページセレクト
信号PG−SELおよびドツトクロツクDCLKを
各々表示コントローラ1へ出力する。ここで、同
期信号SYN・IはCRT表示装置における表示の
同期をとるための信号、ブランキング信号
BLANKは画面表示期間において“1”、それ以
外の期間において“0”となる信号、デイスプレ
イタイミング信号DTMGは画像表示期間におい
て“1”、それ以外の期間において“0”となる
信号である。なお、画面表示期間と画像表示期間
とは異なる。すなわち、表示画面は画像表示領域
とボーダ領域とに分けられ、画像は画像表示領域
にのみ表示され、ボーダ領域は一色で表示され
る。画像表示期間とは、画像表示領域が走査され
る期間、また、画面表示期間とは画面(画像表示
領域およびボーダ領域)が走査される期間であ
る。また、ページセレクト信号PG−SELは、例
えば0.5秒“1”、0.5秒“0”を繰り返す信号、
ドツトクロツクDCLKは、表示画面の各ドツト表
示のタイミングを示す信号である。インターフエ
イス回路7は、CPU2と表示コントローラ1と
を接続するための回路である。表示コントローラ
1は、VDP4から供給されるドツトデータDD7
−0をR,G,Bカラーデータに変換し、次いで
これらのカラーデータをレツドカラー信号RS、
グリーンカラー信号GS、ブルーカラー信号BS
(いずれもアナログ信号)に変換し、CRT表示装
置8へ出力する。また、この表示コントローラ1
は信号YSおよび同期信号SYN・OをCRT表示
装置8へ出力する。なお、このコントローラ1に
おいて、端子T1はCPU2のデータバスに直接
接続されている。CRT表示装置8は、テレビジ
ヨン受像機の機能を有するカラー表示装置であ
り、表示コントローラ1から供給される信号YS
が“1”の時、同コントローラ1から供給される
レツドカラー信号RS、グリーンカラー信号GS、
ブルーカラー信号BSおよび同期信号SYN・Oに
基づいてカラー表示を行い、また、信号YSが
“0”の時は、テレビジヨン信号による表示を行
う。 (2) 表示コントローラ1の詳細構成 第2図〜第4図は各々表示コントローラ1の詳
細構成を示す回路図である。この表示コントロー
ラ1は大きく分けると、第2図に示す制御部と、
第3図に示すRAMアドレス形成部と、第4図に
示すデユアルポートRAM11およびカラーデー
タ変換回路12r,12g,12bに分けられ
る。以下、各部の構成を順次説明する。なお、各
部の動作については後に詳述する。 (2‐1) 制御部;第2図 この制御部は、主にCPU2と表示コントロー
ラ1との間のデータ授受の制御を行う回路であ
る。図において、17は3ビツトのレジスタであ
り、そのロード端子Lへ供給されるドツトクロツ
クDCLKに基づいて入力データを読み込み、出力
端から出力する。このレジスタ17は同期をとる
ためのレジスタである。すなわち、CPU2のク
ロツクパルスとVDP4から出力されるドツトク
ロツクDCLKとは同期がとられていない。したが
つて、CPU2のクロツクパルスに同期した信号
およびデータについては、ドツトクロツクDCLK
に同期した信号およびデータに直さなければなら
ない。レジスタ17はこの目的で設けられたもの
である。また、同レジスタ17の下方に示す
DFF(D型フリツプフロツプ)18もこの目的で
設けられたものである。ポインタカウンタ19
は、4ビツトのアツプカウンタであり、そのアツ
プ端子UPに供給される信号をアツプカウントし、
また、ロード端子Lへ信号が供給された時データ
WD3−0を読み込む。なお、データWD3−0
は、同図下部に示すレジスタ60の出力の下位4
ビツトである。ライトデコーダ20は、ポインタ
カウンタ19の出力をデコードするもので、その
エネーブル端子ENへライトストローブWRSTが
供給された時のみエネーブル状態となり、デコー
ド結果をストローブ信号$MW,…として出力す
る。同様に、リードデコーダ21は、ポインタカ
ウンタ19の出力をデコードし、そのデコード結
果をリードストローブRDSTが供給された時のみ
ストローブ信号$MR…として出力する。21,
22はバツフアであり、その制御端子Cへ“1”
信号が供給された時は入力データをそのまま出力
端から出力し、また、“0”信号供給された時は
出力端がハイインピーダンス状態となる。また、
バツフア27と端子T1とを接続するラインは8
ビツトの双方向バスである。レジスタ60は、そ
のロード端子Lへ信号CSが供給された時、端子
T1に得られるデータ、すなわちCPU2のデー
タバスをデータの読み込み、レジスタ24へ出力
する。レジスタ24は、ライトストローブ
WRSTが供給された時レジスタ23の出力デー
タを読み込み、データWDB7−0として出力す
る。モードレジスタ25は、ストローブ信号
$MDが供給された時データWDB5−0(デー
タWDB7−0の下位6ビツト)を読み込む6ビ
ツトのレジスタである。 (2‐2) RAMアドレス形成部:第3図 このRAMアドレス形成部は、ドツトデータ
(カラーコード)DD7−0を変換して新たなド
ツトデータDDa7−0とするブロツクB1と、
アドレスデータRWA7−0(8ビツト)および
BA1−0(2ビツト)を形成するブロツクB2
とから構成され、各データは各々デユアルポート
RAM11(第4図)のアドレス端子AT2,AT
1へ供給される。 ブロツクB1において、30,31は各々4ビ
ツトのページレジスタ、32はマルチプレクサで
ある。このマルチプレクサ32は、その制御端子
Cへ“1”信号が供給された時、入力端<1>の
データを出力し、“0”信号が供給された時は、
入力端<0>のデータを出力する。33は同期用
レジスタ、34は4ビツトのベージマスレジス
タ、35は同期用レジスタ、36〜39はマルチ
プレクサである。また、ブロツクB2において、
41は同期用レジスタ、42はマルチプレクサ、
43はワードカウンタ、44はバイトカウンタで
ある。これらのカウンタ43,44は各々、ロー
ド端子Lへ信号が供給された時データWDB7−
0,WDB1−0を読み込み、また、エネーブル
端子ENへ“1”信号が供給されている場合に、
アツプ端子UPの信号をアツプカウントする。ま
た、バイトカウンタ44のキヤリイアウト信号
COがオアゲート45の入力端へ供給されている。 (2‐3) デユアルポートRAM11;第4図 このデユアルポートRAM11は、カラーコー
ドをカラーデータに変換するLUTであり、1024
バイトのRAM11aと周辺回路とから構成され
ている。第5図はRAM11aの構成を示す図で
あり、このRAM11aの0〜3番地には各々、
カラーコード「0」に対応するR,G,Bカラー
データおよびアトリビユートビツト(各8ビツ
ト)が記憶され、4〜7番地には各カラーコード
「1」に対応するR,G,Bカラーデータおよび
アトリビユートビツトが記憶され、…、1020〜
1023番地には各々カラーコード「255」に対応す
るR,G,Bカラーデータおよびアトリビユート
ビツトが記憶されている。そして、デユアルポー
トRAM11のアドレス端子AT2へ供給される
ドツトデータDDa7−0(カラーコード)に基
づいて、対応するR,G,Bカラーデータおよび
アトリビユートビツトが読み出され、R,G,B
カラーデータが各々出力端子Q2〜Q4からカラ
ーデータRD7−0,GD7−0,BD7−0とし
て出力され、また、アトリビユートビツトが出力
端子Q5から出力される。この場合、アトリビユ
ートビツトの第7、第6ビツトがアトリビユート
データAD7,AD6として出力される。なお、
アトリビユートビツトの第5〜第0ビツトは、こ
の実施例においては使用されていない。また、ア
トリビユートビツトの機能については後に説明す
る。 このように、第4図に示すデユアルポート
RAM11は、そのアドレス端子AT2にドツト
データDDa7−0を印加した場合に、R,G,
Bカラーデータおよびアトリビユートビツトが読
み出されるが、この読み出しと全く独立して、
RAM11aの書き込み/読み出しをバイト単位
で行うことができるようになつている。すなわ
ち、このデユアルポートRAM11のアドレス端
子AT1へアドレスデータ(10ビツト)を印加
し、データ端子WDTへ8ビツトのデータを印加
し、そして、書き込み端子WTへパルス信号を印
加すれば、RAM11aの書き込みが行なわれ、
また、アドレス端子AT1へアドレスデータを印
加し、そして、読み出し端子RTへパルス信号を
印加すれば、該アドレスデータが示す番地内のデ
ータが読み出され、出力端子Q1から出力され
る。前述したアドレスデータRWA7−0および
BA1−0は、上述した読み出し/書き込みの際
のアドレスを指定するデータであり、アドレスデ
ータRWA7−0がアドレス端子AT1の上位8
ビツトに、アドレスデータBA1−0が下位2ビ
ツトに各々印加される。 (2‐4) カラーデータ修飾回路12r,12g,
12b;第4図 このカラーデータ修飾回路12r〜12bは
各々同一構成の回路であり、カラーデータRD7
−0,GD7−0,BD7−0をアトリビユート
信号ASに応じて修飾し、次いでこの修飾のデー
タをアナログ信号に変換し、カラー信号RS,
GS,BGSとして出力する。なおアトリビユート
ビツト信号ASとは、アトリビユートデータAD
7をレジスタ46によつて、1ドツトクロツクタ
イミング(以下、単にタイミングという)遅延さ
せた信号である。 次に、カラーデータ修飾回路12rにおいて、
47rはカラーデータRD7−0を1タイミング
遅延させて出力するレジスタ、48rは上記信号
ASによつて制御されるマルチプレクサ、49r
は加算回路、50rはボーダ領域の色を決めるカ
ラーデータが書き込まれるボーダレジスタであ
る。51rはマルチプレクサ、52rはマルチプ
レクサ51rの出力を1タイミング遅延させるレ
ジスタ、53rはバツフア、54はゲート回路で
ある。このゲート回路54rは、その制御端子C
に“1”信号が印加された時開状態、“0”信号
が印加された時閉状態となる。55rはDAC(デ
イジタル/アナログ変換器)であり、このDAC
55rの出力がアンプ56rを介して、カラー信
号RSとして出力される。 (3) 表示コントローラ1の動作 (3‐1) CPU2による書き込み時の動作 CPU2は、表示処理に先立つて表示コントロ
ーラ1内の各レジスタおよびデユアルポート
RAM11の書き込みを行う。この書き込み時に
は、ライトデコーダ20(第2図)からストロー
ブ信号が出力される。また、各レジスタ等にはレ
ジスタ番号が割り当てられている。このレジスタ
番号、ストローブ信号、書き込みが行なわれるレ
ジスタ等との関係は次の通りである。 0 $MW……デユアルポートRAM11 1 $MD……モードレジスタ25(第2図) 2 $WA……ワードカウンタ43(第3図) 3 $BA……バイトカウンタ44(第3図) 4 $WA……ベージマスレジスタ34(第3
図) 5 $P0……ページレジスタ30(第3図) 6 $P1……ページレジスタ31(第3図) 7 $BR……ボーダレジスタ50r(第4図) 8 $BG……ボーダレジスタ50g(第4図) 9 $BB……ボーダレジスタ50b(第4図) 次に、書き込み時の動作を説明する。なお、イ
ンターフエイス7(第1図)には、ポートアドレ
スとして2アドレス割り当てられている。以下、
これらのアドレスをポートアドレスPA0,PA1
とする。 (i) レジスタ個別書き込み動作 この動作は、上述したレジスタ25,43,…
50bのいずれか1つにデータを書き込む場合の
動作である。この場合、CPU2は、まずポート
アドレスPA0をバスに出力し、次いでレジスタ
番号をデータバスに出力し、そして、書き込みパ
ルスを出力する(以下、第1の処理という)。ポ
ートアドレスPA0が出力されると、インターフ
エイス7がこれを検知し、信号AOとして“0”
を出力する。次いで、書き込みパルスが出力され
ると、インターフエイス7がリード/ライト信号
WRとして“1”を出力すると共に、書き込みパ
ルスと同タイミングでパルス信号CSを出力する。
パルス信号CSがインターフエイス7から出力さ
れると、この信号CSがレジスタ60(第2図)
のロード端子Lへ供給され、これにより、データ
バス上のレジスタ番号がレジスタ60に読み込ま
れ、ポインタカウンタ19の入力端へ供給され
る。一方、信号AOが“0”、信号WRが“1”に
なると、アンドゲート61(第2図)が開状態と
なり、パルス信号CSが同アンドゲート61およ
び同期用レジスタ17を介してポインタカウンタ
19のロード端子Lへ印加される。これにより、
レジスタ60に読み込まれたレジスタ番号が、ポ
インタカウンタ19に読み込まれ、ライトデコー
ダ20へ出力される。 次に、CPU2はポートレジスタPA1をアドレ
スバスへ出力し、次いで書き込みデータをデータ
バスへ出力し、そして、書き込みパルスを出力す
る(以下、第2の処理という)。インターフエイ
ス7は、ポートアドレスPA1を受け、信号AO
として“1”を出力し、また、書き込みパルスを
受け、リード/ライト信号WRとして“1”を出
力すると共に、パルス信号CSを出力する。パル
ス信号CSが出力されると、データバス上のデー
タがレジスタ60に読み込まれる。また、信号
AO,WRが“1”になると、アンドゲート62
が開状態となり、信号CSが同アンドゲート62、
レジスタ17を介して、ライトストローブ
WRSTとして出力される。このライトストロー
ブWRSTにより、レジスタ60内のデータがレ
ジスタ24内に読み込まれ、この読み込まれたデ
ータがレジスタ25,43…へ供給される。ま
た、ライトストローブWRSTが出力されると、
このストローブWRSTが出力されている間、ラ
イトデコーダ20がエネーブル状態となり、ポイ
ンタカウンタ19の出力に対応するストローブ信
号$MW…がライトデコーダ20から出力され
る。これにより、同ストローブ信号が印加される
レジスタ25,43…にレジスタ24内のデータ
が読み込まれる。 (ii) レジスタ連続書き込み動作 この動作は、複数のレジスタ25,43…内に
データを連続して書き込む場合の動作である。こ
の場合、CPU2は、まず上記(i)で説明した処理
によつてモードレジスタ25(第2図)内に第1
ビツトが“1”となるデータを書き込む。これに
より、同レジスタ25から出力される信号AUT
−INCが“1”となり、この“1”信号がアンド
ゲート63(第2図左上)へ供給され、同アンド
ゲート63が開状態となる。次に、例えばレジス
タ番号「4」〜「9」の各レジスタ34,30…
50bにはデータを書き込む場合は、CPU2が
上記(i)の処理によりレジスタ番号「4」のレジス
タ34内にデータを書き込む。この書き込みが終
了した時点で、ポインタカウンタ19内にはレジ
スタ番号「4」が保持される。次にCPU2は、
上記(i)の処理における第2の処理、すなわち、ポ
ートアドレスPA1の出力、レジスタ番号「5」
のレジスタ30に書き込むべきデータの出力、書
き込みパルスの出力を行う。これにより、インタ
ーフエイス7から信号AO,WRとして“1”が
出力されると共に、パルス信号CSが出力され、
パルス信号CSによつて上記データがレジスタ6
0に読み込まれる。次いで、ライトストローブ
WRSTが出力され、このライトストローブ
WRSTによつて、レジスタ60内のデータがレ
ジスタ24に読み込まれる。また、ライトストロ
ーブWRSTは、オアゲート64、アンドゲート
63、レジスタ17を介してポインタカウンタ1
9のアツプ端子UPへ供給され、これにより、ポ
インタカウンタ19がインクリメントされ、その
カウント出力が「5」となり、このカウント出力
「5」がライトデコーダ20へ供給される。この
結果、ライトストローブWRSTのタイミングで
ライトデコーダ20からストローブ信号$P0が
出力され、このストローブ信号$P0によつてレ
ジスタ24内のデータがレジスタ30(第2図)
内に読み込まれる。 以下同様に、CPU2が、上記第2の処理によ
つてレジスタ31,50r,50g,50b内に
書き込むべきデータを順次出力すると、これらの
データが順次各レジスタに書き込まれる。 (iii) RAM個別書き込み動作 この動作は、RAM11aのいずれか1つの番
地内にのみデータを書き込む場合の動作である。
この場合、CPU2はまずモードレジスタ25の
第5ビツトに“0”を書き込む。これにより、信
号DIR−RDが“0”となる。信号DIR−RDが
“0”になると、マルチプレクサ42(第3図)
の入力端子<0>のデータ、すなわち、ワードカ
ウンタ43の出力データWA7−0が同マルチプ
レクサ42からデータRWA7−0として出力さ
れ、デユアルポートRAM11へ供給される。次
にCPU2は、RAM11aのデータ書き込みを行
うべきアドレスの下位2ビツトをバイトカウンタ
44に書き込み、次いで上位8ビツトをワードカ
ウンタ43に書き込む。これにより、同アドレス
がデユアルポートRAM11のアドレス端子AT
1へ供給される。次にCPU2は、ポインタカウ
ンタ19に「0」を書き込み(前記第1の処理)、
次いで、書き込みデータを出力する(第2の処
理)。このデータは、一旦レジスタ24(第2図)
内に書き込まれ、次いでストローブ信号$MWに
よつてRAM11aの当該番地内に書き込まれ
る。 (iv) RAM書き込み動作 デユアルポートRAM11内に連続してデータ
を書き込む場合は、CPU2が、まずモードレジ
スタ25の第0、第1、第5ビツトに各々“0”
を書き込む。これにより、信号FIX−BA,AUT
−INC,DIR−RDが“0”となる。信号FIX−
BAが“0”になると、インバータ66(第3
図)の出力が“1”となり、バイトカウンタ44
がエネーブル状態となり、また、オアゲート45
がスルー状態となる。これにより、2個のカウン
タ44,43が1個の10ビツトのアツプカウンタ
に構成される。また、信号DIR−RDが“0”に
なると、マルチプレクサ42(第3図)の入力端
子<0>のデータが同マルチプレクサ42から出
力される。次にCPU2は、スタートアドレスの
下位2ビツトをバイトカウンタ44に書き込み、
次いで上位8ビツトをワードカウンタ43に書き
込む。例えば、RAM11aの全エリア(1024バ
イト)にデータを書き込む場合(以下、この場合
で説明する)は、カウンタ44,43に各々デー
タ「0」を書き込む。次にCPU2は、ポインタ
カウンタ19に「0」を書き込み、次いでRAM
11aの第0番地に書き込むべきデータを出力す
る。このデータは、一旦レジスタ24(第1図)
内に書き込まれ、次いでストローク信号$MWに
よつてRAM11aの0番地に書き込まれる。ま
た、ストローブ信号$MWはオアゲート67(第
3図)を介してレジスタ44,43の各アツプ端
子UPへ供給される。これにより、カウンタ44,
43によつて構成される10ビツトのカウンタがイ
ンクリメントされる。以下、CPU2はRAM11
aの第1番地、第2番地…に書き込むべきデータ
を、前述した第2の処理によつて順次出力する。
これにより、RAM11aの各番地内に順次デー
タが書き込まれ、また、上述した10ビツトのカウ
ンタが順次インクリメントされる。 (3‐2) CPU2による読み出し時の動作 CPU2は、レジスタおよびデユアルポート
RAM11内のデータを、随時、画像表示と無関
係に読み出すことができる。この読み出し時に
は、リードデコーダ21(第2図)からストロー
ブ信号$MR…が出力される。また、読み出し可
能なデータには予めデータ番号が割り当てられて
いる。このデータ番号、ストローブ信号、読み出
しデータの関係は次の通りである。 0 $MR……デユアルポートRAM11内のデ
ータ 1 $ST……ステイタスデータ 2 $RR……ボーダレジスタ52r(第4図)
内のデータ 3 $RG……ボーダレジスタ52g(第4図)
内のデータ 4 $RB……ボーダレジスタ52b(第4図)
内のデータ ここで、ステイタスデータとは、信号DTMG
(第2図下部)、PG−SEL(第3図左部)、
BLANK3(第4図下部)の各状態を示すデータ
であり、これらの信号はバツフア22(第2図)
の入力端へ印加されている。 次に、読み出し時の動作を説明する。 (i) データ個別読み出し動作 この動作は、データ番号「1」〜「4」のデー
タの内のいずれか1つを読み出す場合の動作であ
る。この場合、CPU2は、まず前述した第1の
処理によりポインタカウンタ19内にデータ番号
を書き込む。次に、ポートアドレスPA1をアド
レスバスへ出力した後、読み出しパルスを出力す
る(以下、第3の処理と言う)。ポートアドレス
PA1が出力されると、インターフエイス7が信
号AOとして“1”を出力し、また、読み出しパ
ルスが出力されると、インターフエイス7が信号
WRとして“0”を出力すると共に、読み出しパ
ルスと同タイミングでパルス信号CSを出力する。
信号AOが“1”、信号WRが“0”になると、第
2図に示すアンドゲート69が開状態となり、パ
ルス信号CSが同アンドゲート69を通して出力
される。これにより、バツフア27がスルー状態
となる。また、アンドゲート69を通過したパル
ス信号は、同期用DFF18を介して、リードス
トローブRDSTとして出力され、リードデコーダ
21へ印加される。これにより、ポインタカウン
タ19内のデータ番号に対応するストローブ信号
が同リードデコーダ21から出力される。そし
て、例えばストローブ信号$STが出力された場
合は、バツフア22がスルー状態となり、ステイ
タスデータがバツフア22,21を介してCPU
2のデータバスへ出力される。また、例えばスト
ローブ信号$RRが出力された場合は、第4図の
バツフア53rがスルー状態となり、レジスタ5
2r内のデータ(Rカラーデータ)が同バツフア
53r、バツフア27を介してCPU2のデータ
バスへ出力される。CPU2のデータバスへ出力
されたデータは所定のタイミングでCPU2に読
み込まれる。 (ii) データ連続読み出し動作 この動作は、CPU2がデータ番号「1」〜
「4」のデータの内の複数のデータを連続して読
み出す場合の動作である。この動作では、前述し
たレジスタ連続書き込み動作とほぼ同じであり、
したがつて、詳しい説明は省略する。この場合、
CPU2が、まずモードレジスタ25の第1ビツ
トに“1”を書き込み、次いで、ポインタカウン
タ19に最初のデータ番号を書き込み、以後、上
述した第3の処理を繰り返す。これにより、各デ
ータが順次CPU2のデータバスへ出力される。 (iii) RAMデータ個別読み出し動作 デユアルポートRAM11内のデータの内のい
ずれかを1つを読み出す場合は、CPU2が、ま
ずモードレジスタ25の第5ビツトに“0”を書
き込み、次いで、ワードカウンタ43、バイトカ
ウンタ44(第3図)内にRAM11aのアドレ
スを書き込む。次に、ポインタカウンタ19にデ
ータ番号「0」を書き込み、次いで第3の処理を
行う。この第3の処理により、リードデコーダ2
1(第2図)からストローブ信号$MRが出力さ
れ、デユアルポートRAM11のリード端子RT
へ供給される。これにより、レジスタ73,44
の出力が示す番地内のデータが読み出され、出力
端子Q1から出力され、この出力されたデータが
バツフア27を介してCPU2のデータバスへ送
られる。 (iv) RAMデータ連続読み出し動作 この場合、CPU2は、前述した「RAM連続書
き込み動作」の場合と同様に、まずモードレジス
タ25の第0、第1、第5ビツトに各々“0”を
書き込み、次に、スタートアドレスの下位2ビツ
トをバイトカウンタ44に、上位8ビツトをワー
ドカウンタ43に書き込む。次に、ポインタカウ
ンタ19にデータ番号「0」を書き込み、以後、
第3の処理を繰り返し行う。この第3の処理の繰
り返しにより、ストローブ信号$MRが繰り返し
出力され、このストローブ信号$MRによりレジ
スタ43,44からなる10ビツトのカウンタが逐
次インクリメントされる。これにより、デユアル
ポートRAM11内のデータがバイト単位で順次
読み出され、バツフア27を介してCPU2のデ
ータバスへ出力される。 (v) RAMデータ選択読み出し動作 この動作は、第5図に示すRAM11a内のR
カラーデータのみ、またはGカラーデータのみ、
またはBカラーデータのみ、またはアトリビユー
トビツトのみを連続的に読み出す場合の動作であ
る。この場合、CPU2は、まずモードレジスタ
25の第0、第1、第5ビツトに各々“1”、
“1”、“0”を書き込む。これにより、信号FIX
−BA、AUT−INCが“1”、信号DIR−RDが
“0”となる。信号FIX−BAが“1”になると、
インバータ66(第3図)の出力が“0”信号と
なり、この“0”信号がバイトカウンタ44のエ
ネーブル端子ENへ供給される。これにより、以
後バイトカウンタ44のアツプ端子へパルス信号
が供給されても、バイトカウンタ44のアツプカ
ウントが行なわれず、バイトカウンタ44の出力
が一定値に保たれる。また、信号FIX−BAが
“0”信号になると、オアゲート45(第3図)
の出力が“1”信号となり、この“1”信号がワ
ードカウンタ43のエネーブル端子ENへ出力さ
れる。これにより、以後ワードカウンタ43が単
独で8ビツトのカウンタとして動作し、そのアツ
プ端子UPへ供給されるパルス信号をアツプカウ
ントする。また、信号AUT−INCが“1”にな
ると、アンドゲート63(第2図)が開状態とな
り、信号DIR−RDが“0”になると、ワードカ
ウンタ43の出力が、マルチプレクサ42(第3
図)から出力される。 次に、CPU2は、バイトカウンタ44に、読
み出すべきデータの種類に対応する数値を書き込
む。すなわち、Rカラーデータを読み出す場合は
「0」を、Gカラーデータを読み出す場合は「1」
を、Bカラーデータを読み出す場合は「2」を、
アトリビユートビツトを読み出す場合は「3」を
各々書き込む(第5図参照)。次にCPU2は、ス
タートアドレスをワードカウンタ43に書き込
み、次いでポインタカウンタ19には「0」を書
き込む。以後、前述した第3の処理を繰り返し行
う。この第3の処理の繰り返しにより、ワードカ
ウンタ43が逐次インクリメントされ、バイトカ
ウンタ44の出力(アドレスデータBA−1−
0)によつて決まるデータのみがRAM11aか
ら順次読み出される。 (vi) 外部アドレスデータに基づくRAM読み出し
動作 モードレジスタ25の第5ビツトに“1”を書
き込むと、信号DIR−RDが“1”信号となり、
マルチプレクサ42の入力端子<1>のデータ
が、同マルチプレクサ42から出力される。した
がつて、この場合、端子T7(第1図、第3図)
へアドレスデータを供給すると、そのアドレスデ
ータが同期用レジスタ41、マルチプレクサ42
を介してデユアルポートRAM11へ供給され
る。すなわち、外部アドレスデータに基づくデー
タ読み出しが可能となる。 (3‐3) 基本表示動作 表示コントローラ1の最も基本的な動作は、
VDP4(第1図)から出力されるドツトデータ
DD7−0をR,G,Bカラーデータに変換し、
次いでこれらのカラーデータをアナログカラー信
号RS,GS,BSに変換し、CRT表示装置8へ出
力することである。以下、この場合の動作につい
て説明する。 この場合、CPU2は、まずモードレジスタ2
5の第2ビツトに“1”を書き込む。これによ
り、信号DISP−ENBが“1”信号となり、アン
ドゲート71(第2図)が開状態となる。次にペ
ージマスレジスタ34(第3図)に4ビツトのデ
ータ「0」を書き込む。これにより、マルチプレ
クサ36〜39の各制御端子Cへ“0”信号が供
給され、同期用レジスタ33の出力がマルチプレ
クサ36〜39を通して出力される。すなわち、
この場合、ドツトデータDD7−0が同期用レジ
スタ33,35を介して、ドツトデータDDa7
−0としてデユアルポートRAM11のアドレス
端子AT2へ印加される状態となる。次に、デユ
アルポートRAM11にR,G,Bカラーデータ
を書き込み、また、各アトリビユートビツトとし
て“0…0”(8ビツト)を書き込む。次に、ボ
ーダレジスタ50r,50g,50b(第4図)
に各々ボーダ領域の色を指定するカラーデータを
書き込む。次にCPU2は、VDP4を介して
VRAM5内にドツトデータ(カラーコード)を
書き込み、そして、VDP4へスタート指令を出
力する。VDP4は、このスタート指令を受け、
以後VRAM5からドツトデータを読み出し、読み
出したドツトデータをドツトデータDD7−0と
して表示コントローラ1の端子T2へ逐次出力す
る。また、このドツトデータDD7−0の出力と
並行して、同期信号SYN・I、ブランキング信
号BLANK、デイスプレイタイミング信号
DTMG、ドツトクロツクDCLKを各々表示コン
トローラ1の端子T3,T4,T5,T17へ出
力する。 表示コントローラ1の端子T2へ供給されたド
ツトデータDD7−0は、レジスタ33,35
(第3図)およびマルチプレクサ36〜39(上
位4ビツト)を介して、ドツトデータDDa7−
0としてデユアルポートRAM11のアドレス端
子AT2へ印加される。これにより、デユアルポ
ートRAM11の出力端子Q2〜Q4から各々、
ドツトデータDDa7−0に対応するR,G,B
カラーデータRD7−0、GD7−0,BD7−0
およびアトリビユートデータAD7,AD6(共
に“0”)が出力される。そして、カラーデータ
RD7−0は、1タイミング遅延用のレジスタ4
7rを介して、加算回路49rの一方の入力端へ
印加される。この時、マルチプレクサ48rの制
御端子Cには、アトリビユート信号AS“0”が印
加されており、したがつて、マルチプレクサ48
rから、その入力端子<0>のデータ「0」が出
力されている。この結果、加算回路49rの出力
は、レジスタ47rの出力と同一のカラーデータ
となり、このカラーデータがマルチプレクサ51
rの入力端子<1>へ供給される。 このマルチプレクサ51rは、画像表示期間に
おいて加算回路49rから出力される画像表示用
のカラーデータを出力し、それ以外の期間におい
ては、ボーダレジスタ50r内のボーダ色用のカ
ラーデータを出力するものである。すなわち、
VDP4から出力されるデイスプレイタイミング
信号DTMG(画像表示期間を示す信号)は、DFF
72(第2図下部)によつてドツトクロツク
DCLKと同期がとられ、DFF73によつて1タ
イミング遅延され、アンドゲート71を介してマ
ルチプレクサ51rの制御端子Cへ供給される。
これにより、画像表示期間においては加算回路4
9rから出力されるカラーデータが、それ以外の
期間においてはレジスタ50r内のカラーデータ
がマルチプレクサ51rから出力され、レジスタ
52rへ供給される。レジスタ52rは、マルチ
プレクサ51rから出力されるカラーデータを1
タイミング遅延させてゲート回路54rへ供給す
る。ゲート回路54rは信号BLANK3によつて
開閉制御される回路である。ここで、信号
BLANK3は、第4図下部に示すように、VDP
4から出力されるブランキング信号BLANK(画
面表示期間を示す信号)を同期用レジスタ75に
よつてドツトクロツクDCLKと同期させ、遅延用
レジスタ46,76によつて2タイミング遅延さ
せた信号であり、したがつて、ゲート回路54r
は、画面表示期間において開となり、レジスタ5
2r内のカラーデータをDA55rへ出力する。
なお、ドツトデータDD7−0は、タイミング的
には、第3図のレジスタ33,35によつて同期
がとられ、第4図のレジスタ47r,52rによ
つて2タイミング遅延されてゲート回路54rへ
印加される。したがつて、ドツトデータDD7−
0がカラーデータに変換されてゲート回路54r
に印加されるタイミングと、ブランキング信号
BLANKが信号BLANK3として出力されるタイ
ミングと同じである。ゲート回路54rを通過し
たカラーデータは、DAC55rにおいてアナロ
グカラー信号に変換され、アンプ56rを介して
カラー信号RSとしてCRT表示装置8へ出力され
る。 以上が、カラーデータRD7−0がカラー信号
RSに変換される過程である。カラーデータGD7
−0,BD7−0も全く同様の過程によつて、カ
ラー信号GS,BSに変換される。 他方、VDP4から出力された同期信号SYN・
Iは、レジスタ75(第4図下部)によつて同期
がとられ、レジスタ46,76によつて2タイミ
ング遅延され、アンプ78を介して同期信号
SYN・OとしてCRT表示装置8へ出力される。
そして、上述したカラー信号RS,GS,BSおよ
び同期信号SYN・Oに基づいてCRT表示装置8
における画像表示が行なわれる。 (3‐4) ブリンク表示動作 この動作は、上述した基本表示動作に基づいて
表示されている画像をブリンクさせる場合の動作
である。この場合、CPU2は、ページレジスタ
30,31(第3図)に各々、第1、第2のデー
タ(各4ビツト)を書き込み、次に、モードレジ
スタ25の第4ビツトに“1”を書き込み、次い
でページマスレジスタ34にデータ“1,1,
1,1”を書き込む。モードレジスタ25の第4
ビツトに“1”が書き込まれると、信号PG−
ENBが“1”信号となり、この“1”信号がア
ンドゲート75(第3図左部)の第1入力端へ供
給される。このアンドゲート75の第2入力端へ
は、VDP4から出力される信号PG−SEL(0.5秒
“1”、0.5秒“0”となる信号)が、同期用DDF
76を介して供給されている。したがつて、信号
PG−ENBが“1”信号になると、アンドゲート
75から0.5秒“1”、0.5秒“0”の信号がマル
チプレクサ32の制御端子Cへ出力され、これに
より、マルチプレクサ32から、ページレジスタ
30内の第1のデータ、ページレジスタ31内の
第2のデータが0.5秒おきに交互に出力される。
そして、出力されたデータがマルチプレクサ36
〜39の入力端子<1>へ印加される。次に、ペ
ージマスクレジスタ34に“1,1,1,1”が
書き込まれると、マルチプレクサ36〜39の各
制御端子Cへ“1”信号が供給されることから、
ドツトデータDD7−0の上位4ビツトに代え
て、ページレジスタ30,31内の第1、第2の
データが交互にマルチプレクサ36〜39から出
力され、ドツトデータDD7−0の下位4ビツト
と共に、ドツトデータDDa7−0としてデユア
ルポートRAM11のアドレス端子AT2へ出力
される。すなわち、ドツトデータDDa7−0が
0.5秒ごとに変化することになり、したがつて、
表示画像がブリンクする。 なお、ページレジスタ34内に、例えば“1,
1,0,0”を書き込んだ場合は、ドツトデータ
DDa7−0の上位2ビツトのみをページレジス
タ30,31内のデータに変えることができ、ま
た、例えばページレジスタ34内に“1,0,
0,0”を書き込んだ場合には、ドツトデータ
DDa7−0の最上位ビツトのみを変えることが
できる。 (3‐5) カラーデータ修飾動作 この表示コントローラ1は、デユアルポート
RAM11のアトリビユートビツトの第7ビツト
に“1”を書き込んでおくことにより、VRAM
4の書き換えを行うことなくカラーデータRD7
−0,GD7−0,BO7−0を変化させること
ができる。以下、この場合の動作を説明する。 いま、例えばあるカラーコードK1に対応する
アトリビユートビツトの第7ビツトに“1”を書
き込んだとする。この場合、ドツトデータDDa
7−0として、カラーコードK1がデユアルポー
トRAM11のアドレス端子AT2へ印加される
と、デユアルポートRAM11からカラーコード
K1に対応するカラーデータRD7−0,GD7
−0,BD7−0が各々出力されると共に、アト
リビユートデータAD7として“1”が出力され
る。そして、次のドツトクロツクDCLKによつ
て、これらのカラーデータがレジスタ47r,4
7g,47bに読み込まれると共に、アトリビユ
ートデータAD7“1”がレジスタ46に読み込
まれ、これにより、アトリビユート信号ASが
“1”信号となる。アトリビユート信号ASが
“1”信号になり、この“1”信号がマルチプレ
クサ48rの制御端子Cへ印加されると、レジス
タ52r内のカラーデータがマルチプレクサ48
rを介して加算回路49rへ供給され、これによ
り、加算回路49rから、レジスタ47r内のカ
ラーデータと、レジスタ52r内のカラーデータ
とを加算した新たなカラーデータが出力される。
ここで、レジスタ52r内のカラーデータは、レ
ジスタ47r内のカラーデータより1ドツトクロ
ツクDCLK前に表示されるドツトの色を決めるデ
ータである。したがつて、レジスタ47r内のカ
ラーデータにレジスタ52r内のカラーデータを
加算するということは、レジスタ47r内のカラ
ーデータに、1ドツトクロツクDCLK前に表示さ
れるドツトのカラーデータを加算することを意味
する。 以上がカラーデータRD7−0についての修飾
動作である。カラーデータGD7−0,BD7−
0についても、アトリビユート信号ASが“1”
の場合に、同様の修飾が行なわれる。 次に、このカラーデータ修飾の効果について説
明する。なお、カラーコード「0」に対応するカ
ラーデータ、すなわち第5図の0〜2番地に記憶
されているカラーデータを各々「0」とする。 いま、例えば第6図に示すように、背景が白
で、この背景の中に、各面の色が赤、青、黄の
箱を表示する前記について考察する。なお、図
において符号Bはボーダ領域を示している。こ
の場合、まず、VRAM5の全域にカラーコー
ド「0」を書き込み(VRAM5をクリアし)、
次に、画像表示領域の最左端のドツト列D1の
各ドツトに対応するVRAM5の記憶位置に白
のカラーコードを書き込み、次いで、デユアル
ポートRAM11内の、カラーコード「0」に
対応するアトリビユートビツトの第7ビツトに
“1”を書き込む。これにより、全画像表示領
域が白となる。この理由は次の通りである。ま
ず、ある時点で、VRAM5から第6図に示す
ドツトd1のカラーコードが読み出される。ド
ツトd1が白で表示される。次に、ドツトd2
のカラーコードとして「0」が読み出され、デ
ユアルポートRAM11に供給されると、同
RAM11からドツトデータRD7−0,GD7
−0,BD7−0として「0」が出力されると
共に、アトリビユートデータAD7として
“1”が出力される。これにより、加算回路4
9r,49g,49bにおいて、1つ前のドツ
トd1のカラーコードと「0」とが加算され、
この加算結果、すなわち白のカラーデータが加
算回路49r,49g,49bから出力され、
このカラーデータによつてドツトd2のカラー
表示が行なわれる。以下同様にして、全画像表
示領域が白で表示される。 次に、ドツト列D2の各ドツトに対応する
VRAM5の記憶位置に赤のカラーコードを書
き込む。これにより、領域R1が赤で表示され
る。次に、ドツト列D3の各ドツトに対応する
VRAM5の記憶位置に白のカラーコードを書
き込む。これにより、領域R1内の領域R2が
白で表示される。以下同様に、ドツト列D4〜
D10に対応してVRAM5内に青、青、赤、
黄、黄、白、白のカラーコードを記憶させれ
ば、第6図の表示を行うことができる。すなわ
ち、従来はVRAM5の全領域にカラーコード
を書き込む必要があつたが、この実施例によれ
ば、画像の境界線に対応するVRAM5の記憶
位置にのみカラーコードを書き込めばよい。 いま、表示画面の、ある横一行のドツトの
各々に対応して、VRAM5内に、第7図イに
示す状態でカラーコードK2,K3,…を書き
込み、また、カラーコード0,K4,K5,K
7,K8,K9,K10に対応するデユアルポ
ートRAM11のアトリビユートビツトの第7
ドツトに“1”を書き込んだとする。ここで、
簡単化のため各カラーコードK2,K3,…は
いずれも赤色のカラーコードとする(Gカラー
データ、Bカラーデータが共に「0」)。また、
この図は、カラーコードK2,K3,…に対応
するRカラーデータの値を示している。また、
負のカラーデータ(カラーコードK5)は、2
の補数によつて記憶されている。 以上の書き込み状態の場合、その行の表示状態
は第7図ロに示す通りとなる。すなわち、まず、
最左端のドツトd1は、カラーコードK2に対応
する赤色で表示され、次のドツト範囲D1もカラ
ーコードK2に対応する赤色で表示され、次のド
ツトd2はカラーコードK3に対応する赤色で表
示され、次のドツト範囲D2は輝度が徐々に増加
する方向でドツト毎に変化する赤色で表示され、
次のドツト範囲D3は輝度が徐々に減少する方向
でドツト毎に変化する赤色で表示され、次のドツ
ト範囲D4はドツト範囲D3の最後の色と同じ赤
色で表示され、次のドツトd3はカラーコードK
6に対応する赤色で表示され、次のドツト範囲D
5は輝度が曲線状に増加する方向でドツト毎に変
化する赤色で表示され、ドツト範囲D6はドツト
範囲D5の最後の色と同じ赤色で表示される。 以上のような表示において、アトリビユートビ
ツトの使用によつて得れる利点は次の点にある。
すなわち、アトリビユートビツトを使用しない場
合、8ビツトのカラーコードに基づいて表示でき
る色は256色である(デユアルポートRAM11
を書き変えない場合)。一方、アトリビユートビ
ツトを使用した上記の表示によれば、ドツト範囲
D2,D3,D5において、RAM11を書き変
えることなく、256色以外の色による表示が可能
となり、例えばカラーコードK4に対応するカラ
ーデータの値が極めて小さい場合は、ドツト範囲
D2において色調を微細に変化させることが可能
となる。そして、この利点は、特に立体図形の表
示等において極めて有用である。 以上がこの発明の一実施例の詳細である。な
お、上記実施例においては、LUT内にアトリビ
ユートビツトを記憶させたが、これに代えて、
VRAM5内にアトリビユートビツトを記憶させ
てもよい。この場合、VRAM5内にドツト対応
でR,G,Bカラーデータおよびアトリビユート
ビツトを記憶させ、このVRAM5内の各データ
を読み出し、第4図のカラーデータ修飾回路12
r,12g,12bおよびレジスタ46へ印加す
る。 「発明の効果」 以上説明したように、この発明によば、表示ド
ツトに対応したカラーデータおよび表示修飾デー
タが記憶される記憶手段と、前記記憶手段からカ
ラーデータおよび表示修飾データをドツトクロツ
クに同期して順次読み出す読み出し手段と、前記
読み出し手段によつて読み出された表示修飾デー
タが特定のデータである場合に、前記読み出し手
段によつて読み出されたカラーデータに対し、該
カラーデータに対応したドツトよりも1ドツトク
ロツクタイミング前に表示されるべきドツトのカ
ラーデータを用いた演算処理を施し、この演算処
理の結果を表示修飾されたカラーデータとして出
力する修飾手段と、前記修飾手段が出力するカラ
ーデータをアナログ信号に変換してカラー表示装
置へ出力するデイジタル/アナログ変換器とを設
けたので、従来以上に多彩な画像表示をすること
ができ、しかも、CPUの負担を従来より小さく
することが可能となる。
"Industrial Application Field" The present invention relates to a display controller used in a color display device or the like controlled by a CPU (Central Processing Unit). "Prior Art" Generally, when displaying images on a CPU-controlled color display device,
A color code is stored in VRAM (video RAM) corresponding to the display dot, and this color code is read out and determined by a color lookup table (hereinafter referred to as LUT) to display R (red), G (green), and B. (blue) color data, and further converts this color data into R, G, B color signals (analog signals) and sends them to the CRT along with the synchronization signal.
Output to color display device. ``Problem to be solved by the invention'' By the way, conventional color display devices of this type simply change the VRAM color code to R, G,
It only converts to a B color signal and displays it, so the degree of display freedom is low, and the CPU has to rewrite the data in VRAM every time the image is changed, so it has the disadvantage of placing a heavy burden on the CPU. It was hot. This invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to provide a display controller that can display a wider variety of images than ever before, and can also reduce the CPU load compared to before. "Means for Solving the Problem" A display controller according to the present invention includes a storage means in which color data and display modification data corresponding to display dots are stored, and a storage means that synchronizes the color data and display modification data from the storage means with a dot clock. a readout means for sequentially reading out color data read by the readout means when the display modification data read by the readout means is specific data; a modifying means for performing arithmetic processing using the color data of a dot to be displayed one dot clock timing before the dot that has been displayed, and outputting the result of the arithmetic processing as display-modified color data; It is characterized by comprising a digital/analog converter that converts the color data to be output into an analog signal and outputs the signal to a color display device. "Embodiment" Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of a color display device with dot display using a display controller 1 according to an embodiment of the present invention. This display device will be described in detail below. (1) General configuration In Fig. 1, 2 is a CPU, 3 is a memory consisting of a ROM that stores programs used by the CPU 2, and a RAM for data storage, 4 is a video display processor (hereinafter referred to as VDP), 5 is VRAM. VDP4 is CPU2
The color code supplied via the bus line 6 is written into the VRAM5, the written color code is read out, and the dot data DD7-
It is sequentially output to the display controller 1 as 0 (8 bits). In addition, this VDP4 has a synchronization signal
It outputs SYN.I, blanking signal BLANK, display timing signal DTMG, page select signal PG-SEL and dot clock DCLK to the display controller 1, respectively. Here, the synchronization signal SYN・I is a signal for synchronizing the display on the CRT display device, and a blanking signal.
BLANK is a signal that is "1" during the screen display period and "0" during other periods, and the display timing signal DTMG is a signal that is "1" during the image display period and "0" during other periods. Note that the screen display period and the image display period are different. That is, the display screen is divided into an image display area and a border area, the image is displayed only in the image display area, and the border area is displayed in one color. The image display period is a period during which the image display area is scanned, and the screen display period is a period during which the screen (image display area and border area) is scanned. In addition, the page select signal PG-SEL is a signal that repeats "1" for 0.5 seconds and "0" for 0.5 seconds, for example.
The dot clock DCLK is a signal indicating the timing of displaying each dot on the display screen. The interface circuit 7 is a circuit for connecting the CPU 2 and the display controller 1. The display controller 1 receives dot data DD7 supplied from the VDP4.
-0 into R, G, B color data, and then convert these color data into red color signals RS,
Green color signal GS, blue color signal BS
(both are analog signals) and output to the CRT display device 8. Also, this display controller 1
outputs the signal YS and the synchronizing signals SYN and O to the CRT display device 8. Note that in this controller 1, the terminal T1 is directly connected to the data bus of the CPU 2. The CRT display device 8 is a color display device that has the function of a television receiver, and the CRT display device 8 is a color display device that has the function of a television receiver.
When is “1”, the red color signal RS, green color signal GS,
Color display is performed based on the blue color signal BS and synchronization signals SYN/O, and when the signal YS is "0", display is performed using the television signal. (2) Detailed configuration of display controller 1 FIGS. 2 to 4 are circuit diagrams each showing a detailed configuration of display controller 1. This display controller 1 can be roughly divided into a control section shown in FIG.
It is divided into a RAM address forming section shown in FIG. 3, and a dual port RAM 11 and color data conversion circuits 12r, 12g, and 12b shown in FIG. The configuration of each part will be explained below. Note that the operation of each part will be explained in detail later. (2-1) Control unit; FIG. 2 This control unit is a circuit that mainly controls data exchange between the CPU 2 and the display controller 1. In the figure, 17 is a 3-bit register, which reads input data based on the dot clock DCLK supplied to its load terminal L, and outputs it from its output terminal. This register 17 is a register for synchronization. That is, the clock pulse of the CPU 2 and the dot clock DCLK output from the VDP 4 are not synchronized. Therefore, for signals and data synchronized with the clock pulse of CPU2, the dot clock DCLK
signals and data that are synchronized with Register 17 is provided for this purpose. Also, shown below the same register 17
A DFF (D-type flip-flop) 18 is also provided for this purpose. pointer counter 19
is a 4-bit up counter that counts up the signal supplied to its up terminal UP,
Also, when a signal is supplied to the load terminal L, the data
Load WD3-0. In addition, data WD3-0
are the lower 4 outputs of the register 60 shown at the bottom of the figure.
It's bit. The write decoder 20 decodes the output of the pointer counter 19, becomes enabled only when the write strobe WRST is supplied to its enable terminal EN, and outputs the decoding result as strobe signals $MW, . . . Similarly, the read decoder 21 decodes the output of the pointer counter 19 and outputs the decoded result as a strobe signal $MR only when the read strobe RDST is supplied. 21,
22 is a buffer, and “1” is sent to its control terminal C.
When a signal is supplied, the input data is output as is from the output terminal, and when a "0" signal is supplied, the output terminal becomes a high impedance state. Also,
The line connecting buffer 27 and terminal T1 is 8.
This is a bit-directional bus. When the signal CS is supplied to the load terminal L of the register 60, the register 60 reads data obtained from the terminal T1, that is, the data bus of the CPU 2, and outputs the data to the register 24. Register 24 is a light strobe
When WRST is supplied, the output data of the register 23 is read and output as data WDB7-0. The mode register 25 is a 6-bit register that reads data WDB5-0 (lower 6 bits of data WDB7-0) when the strobe signal $MD is supplied. (2-2) RAM address forming unit: Figure 3 This RAM address forming unit includes a block B1 that converts dot data (color code) DD7-0 to new dot data DDa7-0,
Address data RWA7-0 (8 bits) and
Block B2 forming BA1-0 (2 bits)
Each data is divided into dual ports.
Address terminals AT2, AT of RAM11 (Figure 4)
1. In block B1, 30 and 31 are each 4-bit page registers, and 32 is a multiplexer. This multiplexer 32 outputs the data at the input terminal <1> when a "1" signal is supplied to its control terminal C, and when a "0" signal is supplied,
Outputs the data at input terminal <0>. 33 is a synchronization register, 34 is a 4-bit page mass register, 35 is a synchronization register, and 36 to 39 are multiplexers. Also, in block B2,
41 is a synchronization register, 42 is a multiplexer,
43 is a word counter, and 44 is a byte counter. These counters 43 and 44 each output data WDB7- when a signal is supplied to the load terminal L.
0, WDB1-0 is read, and when a “1” signal is supplied to the enable terminal EN,
Counts up the signal of the up terminal UP. In addition, the carryout signal of the byte counter 44
CO is supplied to the input end of OR gate 45. (2-3) Dual port RAM 11; Figure 4 This dual port RAM 11 is a LUT that converts color codes into color data, and is 1024
It consists of a byte RAM 11a and peripheral circuits. FIG. 5 is a diagram showing the configuration of the RAM 11a, and addresses 0 to 3 of this RAM 11a each have
R, G, B color data and attribute bits (8 bits each) corresponding to color code "0" are stored, and R, G, B colors corresponding to each color code "1" are stored in addresses 4 to 7. Data and attribute bits are stored, ..., 1020 ~
At address 1023, R, G, and B color data and attribute bits each corresponding to the color code "255" are stored. Then, based on the dot data DDa7-0 (color code) supplied to the address terminal AT2 of the dual port RAM 11, the corresponding R, G, B color data and attribute bits are read out, and the R, G, B
Color data is output as color data RD7-0, GD7-0, BD7-0 from output terminals Q2 to Q4, respectively, and attribute bits are output from output terminal Q5. In this case, the seventh and sixth attribute bits are output as attribute data AD7 and AD6. In addition,
Bits 5 to 0 of the attribute bits are not used in this embodiment. Further, the function of the attribute bit will be explained later. In this way, the dual port shown in Figure 4
When dot data DDa7-0 is applied to the address terminal AT2, the RAM11 responds to R, G,
B color data and attribute bits are read out, but completely independent of this readout,
Writing/reading of the RAM 11a can be performed in byte units. That is, by applying address data (10 bits) to the address terminal AT1 of this dual port RAM 11, applying 8-bit data to the data terminal WDT, and applying a pulse signal to the write terminal WT, writing to the RAM 11a can be performed. done,
Furthermore, by applying address data to the address terminal AT1 and applying a pulse signal to the read terminal RT, data within the address indicated by the address data is read out and output from the output terminal Q1. Address data RWA7-0 and
BA1-0 is data that specifies the address for reading/writing as described above, and address data RWA7-0 is the upper 8 of the address terminal AT1.
Address data BA1-0 is applied to the lower two bits, respectively. (2-4) Color data modification circuit 12r, 12g,
12b; FIG. 4 These color data modification circuits 12r to 12b have the same configuration, and color data RD7
-0, GD7-0, BD7-0 are modified according to the attribute signal AS, then this modification data is converted to an analog signal, and the color signals RS,
Output as GS, BGS. The attribute bit signal AS is the attribute data AD.
7 is delayed by one dot clock timing (hereinafter simply referred to as timing) by the register 46. Next, in the color data modification circuit 12r,
47r is a register that outputs color data RD7-0 with one timing delay, and 48r is the above signal.
Multiplexer controlled by AS, 49r
is an adder circuit, and 50r is a border register into which color data for determining the color of the border area is written. 51r is a multiplexer, 52r is a register that delays the output of the multiplexer 51r by one timing, 53r is a buffer, and 54 is a gate circuit. This gate circuit 54r has a control terminal C
When a "1" signal is applied to the gate, the gate is open, and when a "0" signal is applied, the gate is closed. 55r is a DAC (digital/analog converter), and this DAC
55r is output as a color signal RS via an amplifier 56r. (3) Operation of display controller 1 (3-1) Operation during writing by CPU 2 Prior to display processing, CPU 2 controls each register and dual port in display controller 1.
Write data to RAM11. During this writing, a strobe signal is output from the write decoder 20 (FIG. 2). Further, a register number is assigned to each register. The relationship between the register number, the strobe signal, the register to which writing is performed, etc. is as follows. 0 $MW...Dual port RAM 11 1 $MD...Mode register 25 (Fig. 2) 2 $WA...Word counter 43 (Fig. 3) 3 $BA...Byte counter 44 (Fig. 3) 4 $WA ...Bage mass register 34 (3rd
(Figure) 5 $P0...Page register 30 (Figure 3) 6 $P1...Page register 31 (Figure 3) 7 $BR...Border register 50r (Figure 4) 8 $BG...Border register 50g (Figure) (Fig. 4) 9 $BB...Border register 50b (Fig. 4) Next, the operation at the time of writing will be explained. Note that two addresses are assigned to the interface 7 (FIG. 1) as port addresses. below,
These addresses are used as port addresses PA0 and PA1
shall be. (i) Register individual write operation This operation is performed by registers 25, 43,...
This is an operation when writing data to any one of the 50b. In this case, the CPU 2 first outputs the port address PA0 to the bus, then outputs the register number to the data bus, and then outputs a write pulse (hereinafter referred to as the first process). When port address PA0 is output, interface 7 detects this and outputs “0” as signal AO.
Output. Next, when the write pulse is output, the interface 7 outputs the read/write signal.
It outputs "1" as WR and also outputs a pulse signal CS at the same timing as the write pulse.
When the pulse signal CS is output from the interface 7, this signal CS is sent to the register 60 (Fig. 2).
As a result, the register number on the data bus is read into the register 60 and supplied to the input terminal of the pointer counter 19. On the other hand, when the signal AO becomes "0" and the signal WR becomes "1", the AND gate 61 (FIG. 2) becomes open, and the pulse signal CS passes through the AND gate 61 and the synchronization register 17 to the pointer counter 19. is applied to the load terminal L of. This results in
The register number read into the register 60 is read into the pointer counter 19 and output to the write decoder 20. Next, the CPU 2 outputs the port register PA1 to the address bus, then outputs write data to the data bus, and then outputs a write pulse (hereinafter referred to as second processing). Interface 7 receives port address PA1 and outputs signal AO.
In response to a write pulse, it outputs "1" as a read/write signal WR and outputs a pulse signal CS. When the pulse signal CS is output, data on the data bus is read into the register 60. Also, the signal
When AO and WR become “1”, AND gate 62
is in the open state, and the signal CS is the AND gate 62,
Write strobe via register 17
Output as WRST. This write strobe WRST causes the data in the register 60 to be read into the register 24, and this read data is supplied to the registers 25, 43, . . . . Also, when the write strobe WRST is output,
While this strobe WRST is being output, the write decoder 20 is enabled, and the strobe signal $MW corresponding to the output of the pointer counter 19 is output from the write decoder 20. As a result, the data in the register 24 is read into the registers 25, 43, . . . to which the same strobe signal is applied. (ii) Register continuous write operation This operation is an operation when data is continuously written into a plurality of registers 25, 43, . . . . In this case, the CPU 2 first stores the first value in the mode register 25 (FIG. 2) by the process described in (i) above.
Write data that makes the bit “1”. As a result, the signal AUT output from the same register 25
-INC becomes "1", this "1" signal is supplied to the AND gate 63 (upper left in FIG. 2), and the AND gate 63 becomes open. Next, for example, each register 34, 30 with register numbers "4" to "9"...
When writing data to 50b, the CPU 2 writes the data into the register 34 with register number "4" by performing the process (i) above. When this writing is completed, the register number "4" is held in the pointer counter 19. Next, CPU2
The second process in the process (i) above, that is, output of port address PA1, register number "5"
It outputs data to be written to the register 30 and outputs a write pulse. As a result, "1" is output from the interface 7 as the signals AO and WR, and the pulse signal CS is output.
The above data is sent to register 6 by pulse signal CS.
Reads to 0. Then light strobe
WRST is output and this light strobe
The data in register 60 is read into register 24 by WRST. Also, the write strobe WRST is sent to the pointer counter 1 via the OR gate 64, the AND gate 63, and the register 17.
As a result, the pointer counter 19 is incremented, its count output becomes "5", and this count output "5" is supplied to the write decoder 20. As a result, the strobe signal $P0 is output from the write decoder 20 at the timing of the write strobe WRST, and the data in the register 24 is transferred to the register 30 (FIG. 2) by this strobe signal $P0.
loaded within. Similarly, when the CPU 2 sequentially outputs data to be written into the registers 31, 50r, 50g, and 50b by the second process, these data are sequentially written into each register. (iii) RAM individual write operation This operation is for writing data only into any one address of the RAM 11a.
In this case, the CPU 2 first writes "0" to the fifth bit of the mode register 25. As a result, the signal DIR-RD becomes "0". When the signal DIR-RD becomes “0”, the multiplexer 42 (Fig. 3)
The data at the input terminal <0>, that is, the output data WA7-0 of the word counter 43 is output from the multiplexer 42 as data RWA7-0, and is supplied to the dual port RAM 11. Next, the CPU 2 writes the lower two bits of the address at which data is to be written in the RAM 11a to the byte counter 44, and then writes the upper eight bits to the word counter 43. As a result, the same address is set to address terminal AT of dual port RAM11.
1. Next, the CPU 2 writes "0" to the pointer counter 19 (the first process),
Next, write data is output (second process). This data is temporarily stored in the register 24 (Fig. 2).
Then, it is written into the corresponding address of RAM 11a by the strobe signal $MW. (iv) RAM write operation When writing data continuously into the dual port RAM 11, the CPU 2 first sets the 0th, 1st, and 5th bits of the mode register 25 to “0”.
Write. This allows the signal FIX−BA,AUT
-INC and DIR-RD become "0". Signal FIX−
When BA becomes “0”, inverter 66 (third
(Figure) becomes “1” and the byte counter 44
is enabled, and OR gate 45 is enabled.
is in a through state. As a result, the two counters 44 and 43 are configured into one 10-bit up counter. Further, when the signal DIR-RD becomes "0", the data at the input terminal <0> of the multiplexer 42 (FIG. 3) is output from the multiplexer 42. Next, the CPU 2 writes the lower two bits of the start address to the byte counter 44, and
Then, the upper 8 bits are written into the word counter 43. For example, when writing data to the entire area (1024 bytes) of the RAM 11a (this case will be explained below), data "0" is written to each of the counters 44 and 43. Next, the CPU 2 writes "0" to the pointer counter 19, and then writes "0" to the pointer counter 19, and then
The data to be written to address 0 of 11a is output. This data is temporarily stored in the register 24 (Fig. 1).
Then, it is written to address 0 of the RAM 11a by the stroke signal $MW. Further, the strobe signal $MW is supplied to each up terminal UP of the registers 44 and 43 via an OR gate 67 (FIG. 3). As a result, the counter 44,
43 is incremented. Below, CPU2 is RAM11
The data to be written to the first address, second address, etc. of a is sequentially outputted by the second process described above.
As a result, data is sequentially written into each address of the RAM 11a, and the above-mentioned 10-bit counter is sequentially incremented. (3-2) Operation when reading by CPU2 CPU2 has registers and dual ports.
Data in the RAM 11 can be read out at any time regardless of image display. At the time of this reading, a strobe signal $MR... is output from the read decoder 21 (FIG. 2). Furthermore, data numbers are assigned in advance to readable data. The relationship among this data number, strobe signal, and read data is as follows. 0 $MR...Data 1 in dual port RAM 11 $ST...Status data 2 $RR...Border register 52r (Figure 4)
Data 3 in $RG...Border register 52g (Figure 4)
Data 4 in $RB……Border register 52b (Figure 4)
Here, the status data refers to the signal DTMG
(Figure 2 bottom), PG-SEL (Figure 3 left),
This is data indicating each state of BLANK3 (lower part of Figure 4), and these signals are buffer 22 (Figure 2).
is applied to the input terminal of Next, the operation at the time of reading will be explained. (i) Data individual read operation This operation is for reading any one of the data numbers "1" to "4". In this case, the CPU 2 first writes the data number into the pointer counter 19 by the first process described above. Next, after outputting the port address PA1 to the address bus, a read pulse is output (hereinafter referred to as the third process). port address
When PA1 is output, the interface 7 outputs "1" as the signal AO, and when the read pulse is output, the interface 7 outputs the signal AO.
It outputs "0" as WR and also outputs a pulse signal CS at the same timing as the read pulse.
When the signal AO becomes "1" and the signal WR becomes "0", the AND gate 69 shown in FIG. 2 becomes open, and the pulse signal CS is outputted through the AND gate 69. This causes the buffer 27 to enter the through state. Further, the pulse signal that has passed through the AND gate 69 is outputted as a read strobe RDST via the synchronization DFF 18 and applied to the read decoder 21 . As a result, a strobe signal corresponding to the data number in the pointer counter 19 is output from the read decoder 21. For example, when the strobe signal $ST is output, the buffer 22 becomes a through state, and the status data is passed through the buffers 22 and 21 to the CPU.
It is output to the second data bus. For example, when the strobe signal $RR is output, the buffer 53r in FIG. 4 becomes a through state, and the register 5
The data (R color data) in 2r is output to the data bus of the CPU 2 via the buffer 53r and the buffer 27. The data output to the data bus of the CPU 2 is read into the CPU 2 at a predetermined timing. (ii) Continuous data read operation In this operation, CPU2 reads data number “1”
This is an operation when a plurality of data out of "4" data are read out consecutively. This operation is almost the same as the register continuous write operation described above,
Therefore, detailed explanation will be omitted. in this case,
The CPU 2 first writes "1" to the first bit of the mode register 25, then writes the first data number to the pointer counter 19, and thereafter repeats the third process described above. As a result, each piece of data is sequentially output to the data bus of the CPU 2. (iii) RAM data individual read operation When reading one of the data in the dual port RAM 11, the CPU 2 first writes “0” to the fifth bit of the mode register 25, and then reads the word counter 43. , writes the address of the RAM 11a into the byte counter 44 (FIG. 3). Next, data number "0" is written in the pointer counter 19, and then the third process is performed. With this third process, the read decoder 2
The strobe signal $MR is output from 1 (Fig. 2), and the lead terminal RT of dual port RAM 11 is output.
supplied to As a result, registers 73 and 44
Data within the address indicated by the output is read out and output from the output terminal Q1, and this output data is sent to the data bus of the CPU 2 via the buffer 27. (iv) RAM data continuous read operation In this case, the CPU 2 first writes “0” to the 0th, 1st, and 5th bits of the mode register 25, as in the case of the “RAM continuous write operation” described above. Next, the lower two bits of the start address are written into the byte counter 44, and the upper eight bits are written into the word counter 43. Next, write the data number "0" to the pointer counter 19, and from then on,
Repeat the third process. By repeating this third process, the strobe signal $MR is repeatedly output, and a 10-bit counter consisting of registers 43 and 44 is successively incremented by this strobe signal $MR. As a result, the data in the dual port RAM 11 is sequentially read out in byte units and output to the data bus of the CPU 2 via the buffer 27. (v) RAM data selection read operation This operation is performed by selecting the R in the RAM 11a shown in FIG.
Color data only or G color data only,
Alternatively, this operation is performed when only B color data or only attribute bits are read out continuously. In this case, the CPU 2 first sets "1" to the 0th, 1st, and 5th bits of the mode register 25, respectively.
Write “1” and “0”. This allows the signal FIX
-BA and AUT-INC become "1", and signal DIR-RD becomes "0". When the signal FIX-BA becomes “1”,
The output of the inverter 66 (FIG. 3) becomes a "0" signal, and this "0" signal is supplied to the enable terminal EN of the byte counter 44. As a result, even if a pulse signal is thereafter supplied to the up terminal of the byte counter 44, the up-counting of the byte counter 44 is not performed, and the output of the byte counter 44 is maintained at a constant value. Also, when the signal FIX-BA becomes a “0” signal, the OR gate 45 (Fig. 3)
The output becomes a "1" signal, and this "1" signal is output to the enable terminal EN of the word counter 43. Thereby, the word counter 43 independently operates as an 8-bit counter and counts up the pulse signal supplied to its up terminal UP. Further, when the signal AUT-INC becomes "1", the AND gate 63 (FIG. 2) becomes open, and when the signal DIR-RD becomes "0", the output of the word counter 43 is
Figure) is output. Next, the CPU 2 writes a numerical value corresponding to the type of data to be read into the byte counter 44. In other words, when reading R color data, set "0", and when reading G color data, set "1".
, "2" to read B color data,
When reading the attribute bits, write "3" to each (see FIG. 5). Next, the CPU 2 writes the start address into the word counter 43, and then writes "0" into the pointer counter 19. Thereafter, the third process described above is repeated. By repeating this third process, the word counter 43 is sequentially incremented, and the output of the byte counter 44 (address data BA-1-
0) are sequentially read out from the RAM 11a. (vi) RAM read operation based on external address data When “1” is written to the 5th bit of the mode register 25, the signal DIR-RD becomes a “1” signal,
Data at the input terminal <1> of the multiplexer 42 is output from the multiplexer 42. Therefore, in this case, terminal T7 (Fig. 1, Fig. 3)
When address data is supplied to the synchronization register 41 and multiplexer 42
The data is supplied to the dual port RAM 11 via the dual port RAM 11. In other words, it becomes possible to read data based on external address data. (3-3) Basic display operation The most basic operation of the display controller 1 is as follows.
Dot data output from VDP4 (Figure 1)
Convert DD7-0 to R, G, B color data,
Next, these color data are converted into analog color signals RS, GS, BS and output to the CRT display device 8. The operation in this case will be explained below. In this case, CPU2 first registers mode register 2.
Write “1” to the second bit of 5. As a result, the signal DISP-ENB becomes a "1" signal, and the AND gate 71 (FIG. 2) becomes open. Next, 4-bit data "0" is written into the page mass register 34 (FIG. 3). As a result, a "0" signal is supplied to each control terminal C of the multiplexers 36-39, and the output of the synchronization register 33 is outputted through the multiplexers 36-39. That is,
In this case, the dot data DD7-0 is transferred to the dot data DDa7 via the synchronization registers 33 and 35.
-0 is applied to the address terminal AT2 of the dual port RAM 11. Next, R, G, and B color data are written in the dual port RAM 11, and "0...0" (8 bits) is written as each attribute bit. Next, border registers 50r, 50g, 50b (Figure 4)
Color data specifying the color of each border area is written in each. Next, CPU2 uses VDP4 to
Write dot data (color code) into VRAM5 and output a start command to VDP4. VDP4 receives this start command,
Thereafter, dot data is read from the VRAM 5, and the read dot data is sequentially output to the terminal T2 of the display controller 1 as dot data DD7-0. In addition, in parallel with the output of this dot data DD7-0, a synchronization signal SYN/I, a blanking signal BLANK, a display timing signal
DTMG and dot clock DCLK are output to terminals T3, T4, T5, and T17 of the display controller 1, respectively. The dot data DD7-0 supplied to the terminal T2 of the display controller 1 is sent to the registers 33 and 35.
(Fig. 3) and multiplexers 36 to 39 (upper 4 bits), the dot data DDa7-
It is applied as 0 to the address terminal AT2 of the dual port RAM 11. As a result, from the output terminals Q2 to Q4 of the dual port RAM 11,
R, G, B corresponding to dot data DDa7-0
Color data RD7-0, GD7-0, BD7-0
And attribute data AD7, AD6 (both "0") are output. And color data
RD7-0 is register 4 for one timing delay.
It is applied to one input terminal of the adder circuit 49r via the adder circuit 7r. At this time, the attribute signal AS "0" is applied to the control terminal C of the multiplexer 48r.
Data "0" of its input terminal <0> is output from r. As a result, the output of the adder circuit 49r becomes the same color data as the output of the register 47r, and this color data is transferred to the multiplexer 51.
It is supplied to the input terminal <1> of r. This multiplexer 51r outputs the color data for image display output from the adder circuit 49r during the image display period, and outputs the color data for the border color in the border register 50r during other periods. . That is,
The display timing signal DTMG (signal indicating the image display period) output from VDP4 is DFF
72 (lower part of Figure 2)
It is synchronized with DCLK, delayed by one timing by DFF 73, and supplied to control terminal C of multiplexer 51r via AND gate 71.
As a result, during the image display period, the addition circuit 4
During the other periods, the color data in the register 50r is outputted from the multiplexer 51r and supplied to the register 52r. The register 52r converts the color data output from the multiplexer 51r into 1
The timing is delayed and the signal is supplied to the gate circuit 54r. The gate circuit 54r is a circuit whose opening/closing is controlled by the signal BLANK3. Here, the signal
BLANK3 is VDP as shown in the lower part of Figure 4.
This signal is obtained by synchronizing the blanking signal BLANK (signal indicating the screen display period) outputted from 4 with the dot clock DCLK by the synchronization register 75 and delaying it by 2 timings by the delay registers 46 and 76. Then, the gate circuit 54r
is open during the screen display period, and register 5
Output the color data within 2r to DA55r.
In terms of timing, the dot data DD7-0 is synchronized by the registers 33 and 35 in FIG. 3, is delayed by two timings by the registers 47r and 52r in FIG. 4, and is sent to the gate circuit 54r. applied. Therefore, dot data DD7-
0 is converted into color data and sent to the gate circuit 54r.
The timing and blanking signal applied to
This is the same timing as when BLANK is output as signal BLANK3. The color data that has passed through the gate circuit 54r is converted into an analog color signal by the DAC 55r, and output to the CRT display device 8 as a color signal RS via the amplifier 56r. The above is how color data RD7-0 is a color signal.
This is the process of being converted to RS. Color data GD7
-0 and BD7-0 are also converted into color signals GS and BS through the same process. On the other hand, the synchronization signal SYN・
I is synchronized by register 75 (lower part of FIG. 4), delayed by two timings by registers 46 and 76, and outputted as a synchronizing signal via amplifier 78.
It is output to the CRT display device 8 as SYN・O.
Then, the CRT display device 8
Image display is performed in . (3-4) Blink display operation This operation is for blinking the displayed image based on the basic display operation described above. In this case, the CPU 2 writes the first and second data (4 bits each) to the page registers 30 and 31 (FIG. 3), respectively, and then writes "1" to the fourth bit of the mode register 25. , then data "1, 1," is stored in the page mass register 34.
1, 1” is written. The fourth value of the mode register 25
When “1” is written to the bit, the signal PG-
ENB becomes a "1" signal, and this "1" signal is supplied to the first input terminal of the AND gate 75 (left side in FIG. 3). The signal PG-SEL output from VDP4 (a signal that is "1" for 0.5 seconds and "0" for 0.5 seconds) is input to the second input terminal of this AND gate 75.
76. Therefore, the signal
When PG-ENB becomes a “1” signal, a signal of “1” for 0.5 seconds and “0” for 0.5 seconds is output from the AND gate 75 to the control terminal C of the multiplexer 32. As a result, the multiplexer 32 outputs a signal of “1” for 0.5 seconds and “0” for 0.5 seconds. The first data in the page register 31 and the second data in the page register 31 are output alternately every 0.5 seconds.
Then, the output data is sent to the multiplexer 36
~39 input terminal <1>. Next, when "1, 1, 1, 1" is written in the page mask register 34, a "1" signal is supplied to each control terminal C of the multiplexers 36 to 39.
Instead of the upper 4 bits of the dot data DD7-0, the first and second data in the page registers 30 and 31 are alternately output from the multiplexers 36 to 39, and together with the lower 4 bits of the dot data DD7-0, The data is outputted to the address terminal AT2 of the dual port RAM 11 as data DDa7-0. In other words, dot data DDa7-0 is
It will change every 0.5 seconds, so
The displayed image blinks. In addition, in the page register 34, for example, “1,
If you write “1,0,0”, dot data
Only the upper 2 bits of DDa7-0 can be changed to the data in the page registers 30 and 31, and for example, “1, 0,
If 0,0” is written, dot data
Only the most significant bits of DDa7-0 can be changed. (3-5) Color data modification operation This display controller 1 has dual ports.
By writing “1” to the 7th bit of the attribute bit of RAM11, the VRAM
Color data RD7 without rewriting 4.
-0, GD7-0, BO7-0 can be changed. The operation in this case will be explained below. For example, suppose that "1" is written to the seventh bit of the attribute bit corresponding to a certain color code K1. In this case, dot data DDa
7-0, when the color code K1 is applied to the address terminal AT2 of the dual port RAM 11, the color data RD7-0, GD7 corresponding to the color code K1 is sent from the dual port RAM 11.
-0 and BD7-0 are respectively output, and "1" is output as attribute data AD7. Then, by the next dot clock DCLK, these color data are transferred to registers 47r and 47r.
At the same time, the attribute data AD7 "1" is read into the register 46, and thereby the attribute signal AS becomes a "1" signal. When the attribute signal AS becomes a "1" signal and this "1" signal is applied to the control terminal C of the multiplexer 48r, the color data in the register 52r is transferred to the multiplexer 48.
The color data is supplied to the adder circuit 49r via r, and the adder circuit 49r outputs new color data obtained by adding the color data in the register 47r and the color data in the register 52r.
Here, the color data in register 52r is data that determines the color of a dot to be displayed one dot clock DCLK before the color data in register 47r. Therefore, adding the color data in the register 52r to the color data in the register 47r means adding the color data of a dot displayed one dot clock DCLK ago to the color data in the register 47r. do. The above is the modification operation for color data RD7-0. Color data GD7-0, BD7-
Also for 0, the attribute signal AS is “1”
A similar modification is made in the case of Next, the effect of this color data modification will be explained. Note that the color data corresponding to the color code "0", that is, the color data stored at addresses 0 to 2 in FIG. 5, are each "0". Now, as shown in FIG. 6, for example, we will consider the case where the background is white and boxes with red, blue, and yellow sides are displayed within this background. Note that in the figure, symbol B indicates a border area. In this case, first write the color code "0" to the entire area of VRAM5 (clear VRAM5),
Next, a white color code is written in the memory location of the VRAM 5 corresponding to each dot in the leftmost dot row D1 of the image display area, and then the attribute corresponding to the color code "0" in the dual port RAM 11 is written. Write "1" to the 7th bit. As a result, the entire image display area becomes white. The reason for this is as follows. First, at a certain point in time, the color code of the dot d1 shown in FIG. 6 is read out from the VRAM 5. The dot d1 is displayed in white. Next, dot d2
When "0" is read out as the color code and supplied to the dual port RAM 11, the same
Dot data RD7-0, GD7 from RAM11
-0, BD7-0 is output as "0", and attribute data AD7 is "1". As a result, the adder circuit 4
At 9r, 49g, and 49b, the color code of the previous dot d1 and "0" are added,
This addition result, that is, white color data is output from the addition circuits 49r, 49g, 49b,
This color data is used to display the dot d2 in color. Thereafter, the entire image display area is displayed in white in the same manner. Next, corresponding to each dot in the dot row D2,
Write the red color code to the memory location of VRAM5. As a result, region R1 is displayed in red. Next, correspond to each dot in the dot row D3.
Write the white color code to the memory location of VRAM5. As a result, region R2 within region R1 is displayed in white. Similarly, dot row D4~
Corresponding to D10, blue, blue, red,
If the color codes of yellow, yellow, white, and white are memorized, the display shown in FIG. 6 can be performed. That is, conventionally it was necessary to write the color code in the entire area of the VRAM 5, but according to this embodiment, it is only necessary to write the color code in the storage position of the VRAM 5 corresponding to the boundary line of the image. Now, color codes K2, K3, etc. are written in the VRAM 5 in the state shown in FIG. K
7, the 7th attribute bit of dual port RAM 11 corresponding to K8, K9, K10
Suppose that we write "1" to the dot. here,
For simplicity, each color code K2, K3, . . . is assumed to be a red color code (G color data and B color data are both "0"). Also,
This figure shows the values of R color data corresponding to color codes K2, K3, . . . . Also,
Negative color data (color code K5) is 2
is stored by its complement. In the above writing state, the display state of the line is as shown in FIG. 7B. That is, first,
The leftmost dot d1 is displayed in red corresponding to color code K2, the next dot range D1 is also displayed in red corresponding to color code K2, and the next dot d2 is displayed in red corresponding to color code K3. , the next dot range D2 is displayed in red that changes from dot to dot in a direction where the brightness gradually increases,
The next dot range D3 is displayed in a red color that changes from dot to dot in a direction in which the brightness gradually decreases, the next dot range D4 is displayed in the same red color as the last color of the dot range D3, and the next dot range D3 is code K
Displayed in red corresponding to 6, the next dot range D
5 is displayed in a red color that changes from dot to dot in a direction in which the luminance increases in a curved manner, and the dot range D6 is displayed in the same red as the last color of the dot range D5. In the above display, the advantages obtained by using attribute bits are as follows.
In other words, if attribute bits are not used, 256 colors can be displayed based on the 8-bit color code (dual port RAM 11
(if not rewritten). On the other hand, according to the above display using attribute bits, it is possible to display colors other than 256 colors in the dot ranges D2, D3, and D5 without rewriting the RAM 11. When the value of the color data is extremely small, it is possible to minutely change the color tone in the dot range D2. This advantage is extremely useful especially in displaying three-dimensional figures. The details of one embodiment of the present invention have been described above. Note that in the above embodiment, the attribute bits are stored in the LUT, but instead of this,
The attribute bits may be stored in VRAM5. In this case, R, G, B color data and attribute bits are stored in the VRAM 5 in dot correspondence, each data in the VRAM 5 is read out, and the color data modification circuit 12 shown in FIG.
r, 12g, 12b and register 46. "Effects of the Invention" As explained above, according to the present invention, there is provided a storage means for storing color data and display modification data corresponding to display dots, and a method for synchronizing the color data and display modification data from the storage means with the dot clock. a readout means for sequentially reading out the display modification data read by the readout means; and when the display modification data read out by the readout means is specific data, the color data read out by the readout means corresponds to the color data; a modifying means for performing arithmetic processing using the color data of a dot to be displayed one dot clock timing before the dot that has been displayed, and outputting the result of the arithmetic processing as display-modified color data; A digital/analog converter that converts the color data to be output into an analog signal and outputs it to the color display device is installed, so it is possible to display a wider variety of images than before, and the load on the CPU is lower than before. It becomes possible to do so.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明の一実施例による表示コント
ローラ1を用いたカラーデイスプレイ装置の構成
を示すブロツク図、第2図〜第4図は各々表示コ
ントローラ1の詳細を示す回路図であり、第2図
は制御部の構成を示す図、第3図はRAMアドレ
ス形成部の構成を示す図、第4図はデユアルポー
トRAM11およびカラーデータ修飾回路12
r,12g,12bの構成を示す図、第5図はデ
ユアルポートRAM11内に設けられている
RAM11aの構成を示す図、第6図、第7図は
各々カラーデータ修飾の効果を説明するための図
である。 1……表示コントローラ、11……デユアルポ
ートRAM、12r,12g,12b……カラー
データ修飾回路、49r……加算回路、55r…
…DAC(デイジタル/アナログ変換回路)。
FIG. 1 is a block diagram showing the configuration of a color display device using a display controller 1 according to an embodiment of the present invention, FIGS. 2 to 4 are circuit diagrams showing details of the display controller 1, and FIG. The figure shows the configuration of the control section, FIG. 3 shows the configuration of the RAM address forming section, and FIG. 4 shows the dual port RAM 11 and color data modification circuit 12.
FIG.
Figures 6 and 7 showing the configuration of the RAM 11a are diagrams for explaining the effects of color data modification, respectively. 1...Display controller, 11...Dual port RAM, 12r, 12g, 12b...Color data modification circuit, 49r...Addition circuit, 55r...
...DAC (digital/analog conversion circuit).

Claims (1)

【特許請求の範囲】 1 表示ドツトに対応したカラーデータおよび表
示修飾データが記憶される記憶手段と、 前記記憶手段からカラーデータおよび表示修飾
データをドツトクロツクに同期して順次読み出す
読み出し手段と、 前記読み出し手段によつて読み出された表示修
飾データが特定のデータである場合に、前記読み
出し手段によつて読み出されたカラーデータに対
し、該カラーデータに対応したドツトよりも1ド
ツトクロツクタイミング前に表示されるべきドツ
トのカラーデータを用いた演算処理を施し、この
演算処理の結果を表示修飾されたカラーデータと
して出力する修飾手段と、 前記修飾手段が出力するカラーデータをアナロ
グ信号に変換してカラー表示装置へ出力するデイ
ジタル/アナログ変換器とを具備してなる表示コ
ントローラ。 2 前記記憶手段は、カラーコードをカラーデー
タに変換する変換テーブルである特許請求の範囲
第1項記載の表示コントローラ。
[Scope of Claims] 1. Storage means for storing color data and display modification data corresponding to display dots; Reading means for sequentially reading color data and display modification data from the storage means in synchronization with a dot clock; and the reading means. When the display modification data read out by the reading means is specific data, one dot clock timing earlier than the dot corresponding to the color data read out by the reading means. a modifying means for performing arithmetic processing using the color data of the dots to be displayed on the screen and outputting the result of the arithmetic processing as display-modified color data; and converting the color data output by the modifying means into an analog signal. A display controller comprising a digital/analog converter for outputting data to a color display device. 2. The display controller according to claim 1, wherein the storage means is a conversion table for converting a color code into color data.
JP60277364A 1985-12-10 1985-12-10 Display controller Granted JPS62135885A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP60277364A JPS62135885A (en) 1985-12-10 1985-12-10 Display controller
US06/940,530 US4857899A (en) 1985-12-10 1986-12-10 Image display apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60277364A JPS62135885A (en) 1985-12-10 1985-12-10 Display controller

Publications (2)

Publication Number Publication Date
JPS62135885A JPS62135885A (en) 1987-06-18
JPH052239B2 true JPH052239B2 (en) 1993-01-12

Family

ID=17582494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60277364A Granted JPS62135885A (en) 1985-12-10 1985-12-10 Display controller

Country Status (1)

Country Link
JP (1) JPS62135885A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5876883A (en) * 1981-10-30 1983-05-10 富士通株式会社 Picture display

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5876883A (en) * 1981-10-30 1983-05-10 富士通株式会社 Picture display

Also Published As

Publication number Publication date
JPS62135885A (en) 1987-06-18

Similar Documents

Publication Publication Date Title
JP2572373B2 (en) Color display device
US4857899A (en) Image display apparatus
US7023413B1 (en) Memory controller and liquid crystal display apparatus using the same
JPS60258589A (en) Character/graphic display circuit
JPH052239B2 (en)
JPH0429073B2 (en)
JPH0429072B2 (en)
JPH0690608B2 (en) Display controller
JP2572375B2 (en) Display control circuit
JPH03287296A (en) Image display device
JPH06343142A (en) Image display device
JPH0437435B2 (en)
JP2897223B2 (en) Display controller
JPS62174791A (en) Display unit
KR100206265B1 (en) Address decoding method for crt display interface
JPS6275586A (en) Color graphic display controller
JPH0229186A (en) Color crt control circuit
JPS60158487A (en) Color display unit
JPH06161408A (en) Display controller
JPS60209786A (en) Color display unit
JPS6050590A (en) Color conversion system for color hard copy
JPS6090387A (en) Writing/reading controller for graphic memory
JPS61128323A (en) Graphic display device
JPH07274086A (en) Display controller
JPS61264381A (en) Memory circuit