現在地

ディスプレイ・ビデオ

パーソナルなコンピュータの漢字事情 (第4回: スケーラブルフォント)

16×16ドットまでは漢字は読めれば(識別できれば)良いと思われていたのが、24×24ドットくらいから美しさが要求されるようになってきます。美しさを考える余裕が生まれたと言ってもよいかもしれません。
また書体(明朝体・ゴシック体など)やサイズを変えたいという要望も出てきます。

ディスプレイよりプリンタのほうが高解像度を実現しやすいこと、プリントは他人に渡すものであること、といった事情からかプリンタでの対応が先行することになります。

AdobeのPostScriptやCanonのLIPSといったページ記述言語では文字のサイズを自由に変化させることが可能になりました。それまでのフォントが(例えば24×24の)ドットの有無で定義されていた(ビットマップフォント)のに対し、文字の輪郭の座標を持って(アウトラインフォント)いて都度必要なサイズのドットに展開するのです。

パーソナルなコンピュータの漢字事情 (第2回: PC-9801の登場)

前回は漢字ROMの登場とかな漢字変換まで書きました。今回はその続きです。

PC-9801ではグラフィック画面ではなくテキスト画面に漢字を表示できるようになりました。これによって漢字を含むテキストを高速で表示・スクロールできるようになりました。
ところで漢字を表示するにはASCII・カナの倍の幅が必要です。幅の違う文字をハードウェアでどう取り扱っていたのでしょうか?
これは実に単純な方式で、漢字は「左半分」と「右半分」の2文字としてテキストVRAMに書き込むようになっていました。左右を正しく組み合わせて漢字を表示するのはソフトウェアの仕事です。

初期のPC-9801のソフトウェアにはバグがあって、画面の右端に漢字が泣き別れるように表示しようとするとおかしな表示になることがありました。

このためPC-9801シリーズのテキストVRAMは漢字コードが格納できるように16ビット幅になっています(上位8ビットは漢字ROMボードに搭載)。必ず左右並べるので8ビット×2文字分で格納することも原理的には可能なはずですが、ハードウェアでやるのは大変だったからでしょう。

パーソナルなコンピュータの漢字事情 (第1回: 漢字ROMと漢字変換)

今ではコンピュータで漢字が表示できるのは当たり前ですが、昔はそうではありません。

グラフィック事情(第1回)に書いたようなCRT以前の時代はもちろん漢字表示などは夢でした。

テレビを使うようになっても文字フォントは6×8か8×8程度ですからまだ無理です。キャラクタジェネレータ(フォント)ROMもアメリカ製がほとんどですからカタカナ表示も一般的ではありませんでした。自分でROMを焼くか、日本のメーカの参入を待つしかありません。

パーソナルなコンピュータのグラフィック事情 (第10回: 落穂拾い)

一応今回で「グラフィック事情」は最後の予定です。

前回の「ハイレゾ」以降もいろいろな進化がありましたが、力技で面白くないのと私があまり詳しくないので項目だけ並べておきます。

  1. マルチシンクのモニタが普及
  2. 表示デバイスのCRTからLCDへの移行
  3. 伝送方式のアナログからシリアル伝送(ディジタル)への移行
  4. ワイド画面の登場
  5. ビデオ再生や3Dのアクセラレータ
  6. GPU

それと書き忘れたことがいくつかあるので、最後にそれを書いておきます。

日本のパソコンでよく使われたコントローラには以下のようなものがありました。

パーソナルなコンピュータのグラフィック事情 (第8回: 高速化)

解像度が上がり色数が増えると書き換えなければならないメモリが増え、相対的に速度が低下します。もちろんCPUに余裕があればよいのですが、そうも言っていられません。ここでは当時の工夫や仕掛けをいくつか見ていきます。

まずソフトウェアだけでできる方法です。直線や円などの描画アルゴリズムの選択はもちろん重要ですが、場合によっては続・80系アセンブラのテクニックのような小手先のテクニックが有効な場合もありました。
当初グラフィック描画には(BASIC用に)ROMに搭載されたルーチンを呼び出すことが多かったのですが、各機種用の高速描画ルーチンが雑誌等に発表されるようになりました。同機能で最適化したもの、頻繁に使う機能に絞ってさらなる高速化を実現したもの、より多機能化したものなどいろいろありましたね。ソフトメーカも独自に作っていたはずです。

パーソナルなコンピュータのグラフィック事情 (第7回: 色数を求めて)

640×200, 640×400ドットが実現すると、次なる改良の方向は使える色数の拡大へと向かいます。

  • さらなる解像度の向上には専用モニタが必要で、ハードルが高いこと
  • テレビ放送程度の画像を再現できるほどの解像度を既に達成していること
  • しかし8色という色数では自然画表現にはまったく不足であること

あたりが理由でしょう。

最初はソフトウェアだけでできるタイルが使われました。
当時大きな画像は線を繋げて輪郭を作り、その中を塗りつぶすという手法がよく用いられました。

パーソナルなコンピュータのグラフィック事情 (第6回: 640x400)

さらに一部の機種では640×400ドットが使えるようになりました。

日本語(漢字)を表示したときに12行ではやはり不便であること、ドットが極端(約1:2)な縦長では使いにくかったことが理由だったのではないかと思います。
これには大きく2通りのアプローチがありました。

一つはFP-1100などで使われた方式です。モニタは640×200で使われていた水平同期周波数が15.7kHzのものをそのまま使用し、インターレススキャンすることにより縦方向の解像度を倍にするのです。実質的な垂直同期周波数が半分になるので若干のちらつきが発生しますが、使えないほどではありませんでした。またインターレスで使うことを想定した長残光性のモニタもありました。

パーソナルなコンピュータのグラフィック事情 (第5回: 640x200)

前回書いた専用モニタの登場で640×200ドットのグラフィックスの実現は目前となりました。残るはメモリ容量とその大容量メモリを書き換えるCPUパワーの問題です。

この頃サードパーティーからグラフィック機能を追加するハードウェアがいろいろと発売されました。
HAL研究所のPCG (Programmable Character Generator)は文字フォントを自由に定義できるようにしたものです。定義できるのは128個までなのでTMS9918のグラフィック2モードのように画面中に並べることはできませんでしたが、ゲームのキャラクタを表示するのに都合よく、対応したソフトウェアも多くありました。
PC-8001用にはFGU-8000/8200というモノクロですが640×200ドットのグラフィックを実現するユニットもありました。

メモリ容量の進歩は早いので解決は時間の問題です。1981年ごろからは富士通のFM-8やNECのPC-8801といった640×200ドットでドット毎に(制約なく)8色が使えるパソコンが発売されます。そしてこれが日本のパソコンの標準的なグラフィックとなり、その後の多くの機種が追従していくことになります。

パーソナルなコンピュータのグラフィック事情 (第4回: 専用モニタ)

2回にわたりテレビに表示する話を書きましたが、やはり実用的に使おうと考えるとテレビではうまくありません。32桁×24行では文字数が不足ですし、滲みもひどく長時間の使用には向きません。

パソコン本体価格がある程度以上の機種では専用モニタの使用を前提に、テキスト表示が40桁×25~80桁×25程度のものが多くありました。1文字は8×8ドットが普通でしたから640×200ドットに相当しますが、まだメモリが高価でそれだけのグラフィック機能はつめません。やはり1文字のエリアをいくつかのタイルに分割するセミグラフィックが主流でした。

この頃の代表機種としてNECのPC-8001とシャープのMZ-80Kについて説明したいと思います。

PC-8001のテキスト表示は最大で80桁×25行表示、文字色は8色から選べ背景色は黒に固定でした。この表示のためにメインメモリから約3kBが使われます。セミグラフィック表示は文字フォントの代わりに2×4分割したタイル(文字コードは8ビットなので8つのタイルのOn/Offを表現できます)を表示します。色は文字単位で黒ともう1色が使用可能、また文字単位でテキストとセミグラフィックを混在させることもできます。

ページ