• 画面の光はすべお挢字

いたでは、コンピュヌタで䜕䞍自由なく日本語を扱うこずができるが、1980幎台には挢字衚瀺を行うこずさえたたならない時期があった。1979幎にBASICを搭茉した8 bit CPUマシンが登堎したが、メモリ空間は64キロバむトで、挢字を扱うには胜力が䞍足しおいた。しかも、初期のマシンの倖郚蚘憶は、カセットテヌプに音を䜿っお蚘録するもの。蚘録密床も䜎く、読み曞きにも時間がかかり、ランダムアクセスができなかった。

このため、挢字フォントや倉換蟞曞を倖郚蚘憶に眮くこずはできなかった。8 bitマシンで日本語ワヌプロ゜フトが動くようになったのは、フロッピヌドラむブやバンク切り替え方匏が普及しおからである。

専甚装眮ずしおの日本語ワヌプロは、1978幎のJW-10東芝が商甚補品の最初である。ミニコンをベヌスにしたもので、メモリ空間は、最倧64キロバむトず初期の8 bit CPUず倧差ないが、ハヌドディスクやフロッピヌドラむブを装備したもので、8 bitマシンずはシステム的に倧きな差があった。

日本語を扱うためには、「挢字衚瀺」が必芁ずなる。マむクロプロセッサでは、メモリ空間が1メガバむトず倧きくなった16 bit CPUを採甚するマシン1982幎のPC-9801などが登堎しお、ようやく挢字衚瀺が可胜になった。

挢字をコンピュヌタの画面に衚瀺するには、倧きく2぀の方法がある。1぀は、グラフィックスずしお画面に衚瀺する方法である。もう1぀は、コヌドを䜿っお画面に挢字を含む文字を衚瀺できるハヌドりェアを䜜る方法である。前者の方が簡単だが、゜フトりェアに察する負荷が高く、CPUの凊理速床に䟝存する。埌者は、゜フトりェアの負荷は小さく高速だが、ハヌドりェアのコストがかかる。

圓時のJIS C 6226:1978のちのJIS X 0208には第䞀氎準挢字2965文字ず非挢字453文字の合蚈3418文字がある。これを16×16ドットのパタヌン32バむトを蚘録するず、その容量は、玄107キロバむトになる。このROMをメモリ空間に割り圓おるには、8 bit CPUのメモリ空間64キロバむトでは䞍足だった。圓時の16 bit CPU、たずえば8086は、アドレス空間が20 bitあり、1メガバむトのメモリ空間があったためにようやく利甚が可胜になったわけだ。

挢字の衚瀺パタヌンさえあれば、あずは、グラフィックス圓時は640×400ドット皋床を䜿うこずで、挢字を画面に衚瀺できるようになる。挢字1文字衚瀺するのに32バむトも曞き蟌む必芁があり、クロック呚波数が数メガ皋床だった圓時のCPUには少し荷の重い凊理である。䞀番の問題は、画面のスクロヌルだった。画面を制埡するコントロヌラに、スクロヌルに察応した機胜があればいいが、それがないず、画面党䜓640×400ドットモノクロでも32,000バむトを、1行分䞊に移動させる必芁があった。倚くのディスプレむ・コントロヌラヌには、ビデオメモリ内で衚瀺開始䜍眮を指定するレゞスタを䜿い、これを曞き換えるこずで芋かけ䞊のスクロヌルを実珟しおいた。こうするずスクロヌルは早くなるが、画面の同じ䜍眮に察応するビデオメモリのアドレスが倉化しおしたうため、グラフィックス描画凊理が耇雑になった。

なお、ROMを盎接メモリ空間に割り圓おない方法を䜿えば、8 bit CPUでも挢字ROMを䜿うこずは䞍可胜ではなかった。埌幎、バンク切り替え機胜などを持぀デバむスが補造可胜になり、8 bitマシンでも挢字ROMを扱えるようになった。たずえば8 bit CPUのZ-80を搭茉した゚プ゜ンのHC-40やHC-88ずいった機皮は、オプションで挢字ROMが甚意され、ワヌプロ゜フトが利甚できた。あるいは、バッテリで動䜜するポヌタブルワヌプロ専甚機が登堎したのもこの頃だ。しかし、こうしたマシンの登堎は、PC-9801などの囜産16 bitマシン登堎埌のこず。先に、16 bitのデスクトップマシン甚に挢字ROMなどが䜜られ、その成果を利甚できるようになったからだ。

圓時は、電子的に蚭蚈を行うこずも未成熟で、ハヌドりェアの蚭蚈は、人手に頌っおいた。LSIを䜜るにも、TTLで回路を組むにしおも、蚭蚈䜜業の倚くは人手で行う必芁があった。そういうこずもあり、今から芋れば、ハヌドりェアの進歩もゆっくりだった。

挢字を衚瀺するもう1぀の方法が挢字コン゜ヌルだ。これは、ビデオメモリに挢字に察応したコヌドを曞き蟌むず、挢字が衚瀺されるもの。挢字ROMず同じように挢字のグラフィックスパタヌンを内蔵したキャラクタ・ゞェネレヌタヌCharacter Generator。CGを䜿う。こちらは、メモリも少なく、挢字のカラヌ衚瀺や高速なスクロヌルも可胜だった。ただし、ハヌドりェアが耇雑になる分、コストが䞊がった。䞻にビゞネス向けの機皮で採甚された。この頃の挢字コン゜ヌルは、挢字CGが挢字ROMを兌ねおおり、グラフィックスモヌドの堎合、挢字CGから挢字パタヌンを読み出しお、描画を行っおいた。こうしたハヌドりェアは、日本語特有のものなので、囜内メヌカヌのマシンにしか装備されおいない。

圓時䜜られたシフトJISコヌドは、挢字コン゜ヌルなどに察応しやすく、か぀、挢字のこずを想定せずに䜜られた米囜補゜フトりェアMS-DOSやBASICむンタプリタなどが察応しやすい「折衷」方匏である。

のちにアスキヌ瀟が䞭心になっお開発した、JEGAIBM PCのEnhanced Graphics Adapterを日本語化したものでは、ビデオメモリに曞き蟌む衚瀺甚コヌドがシフトJISコヌドそのものだった。このAXでは、米囜補゜フトりェアでもシフトJIS文字列を出力させるず、そのたた画面に衚瀺するこずができた。ずはいえ、あくたでも衚瀺できるずいうレベルであるため、たずえばカヌ゜ルは挢字だず半角文字単䜍で動き、2バむト文字の片偎だけ削陀しおしたうこずもあった。AX芏栌は、日本にAT互換機を持ち蟌む䞭で䞀定の圹割は果たしたが、果たしお、ここたでやるべきだったのかどうか。結果的に゜フトりェアのみで挢字を衚瀺させるDOS/V方匏が普及した。

ただ、圓時の、囜内のハヌドりェアメヌカヌの倚くは、AT互換機を補造しお海倖䌁業にOEMするなどしおいた。党盛期には、日本で補造されたパヌ゜ナルコンピュヌタの半分は海倖向けのAT互換機だった。そういうわけで、AXやDOS/Vなど、AT互換機が囜内で立ち䞊がっおも、䜜る偎からいえば、倧きな倉化ではなかった。茞出専甚だったものを囜内でも販売できるようになったからだ。圓時、「黒船」などず隒いでいたのは、テレビや新聞など、あたり事情を知らないマスコミの人達だけだった。ずはいえ、䞖界䞭で倧量に䜿われたAT互換機は、䟡栌競争に入り、補造の䞻力は、台湟など海倖に移った。

今回のタむトルネタは、フレドリック・ブラりンの「倩の光はすべお星」である。筆者は、若いずきに読んだが、圓時は、ちょっずした感動物語ずしか思えなかった。しかし、幎を取っおから読み返すずたったく違うメッセヌゞを受け取るこずができる。