ハイテク昔話 「第5話」 2000.10.11



文字が小さい場合は、ブラウザの”表示”を変更して、文字を大きくして下さい。



このサイトにアクセスして下さる方々は、圧倒的に若い(1948年生まれの私から見て)人が多いと思います。そこで、パソコンが世の中に出てくる前から、普及する頃の極私的な経験を昔話風に紹介します。そして、それを通して、パソコン普及に伴って何が進歩したか、何が変わらなかったか、何か新たに問題になったことはないかを見極めようというページです。徐々に、量を増やしていく予定です。思い出した所から書きたい、項目は年代順に並べたいという二つの希望から、書いた順序がバラバラです。おまけに、量が増えるに伴って、記事が別のファイルに移動する可能性もあります。なるべく、掲載した日付を付けますのでご勘弁下さい。



日本では、完成品としてのパソコンは1979年に発売されたNECのPC-8001が最初です。次いでベストセラーになった1981年12月NECのPC-8801シリーズが発売されました。これらのパソコンにつきましては、多くのサイトで紹介されているので、さらりと流します。

ここでは初めて使った市販ソフトの英文ワープロワードスター ( WardStar ) について、なぜ、8ビットパソコンなのにワープロソフトが可能であったのかに焦点をあわせ、紹介します。( 2000. 10. 11 )

NECのPC-8001を使う

PC-8001シリーズには8001、8001mkII、8001mkIISRがあります。私の使ったのはPC-8001でした。外付けの二つの5インチフロッピィーディスクドライブが付いたユニットが接続されていました。ROMにはマイクロソフトのN-BASICが入っていました。電源を入れるとN-BASICが立ち上がります。フロッピィーディスクは5インチで、ドライブに入れてキーボードから、"mount" と入力しないとディスクを認識してくれません。抜く時は "unmount" だったと思います。まだ市販ソフトはなく、BASICかマシン語で自分で作りました。相変わらず、研究に必要な統計処理などの計算に主として使っていました。それから、マシン語で花札やインベーダーゲームを作りました。

この頃、恋占いをするソフトを作りました。自分と相手の名前、生年月日を入力すると占いをします。占い自体は単に乱数を使っていい加減な答えを出すもので、本当の目的は、入力したデータを当人が気づかぬうちにディスクに保存し、後で見ようというものです。

NECのPC-8801を使う

このシリーズのパソコンも8ビットでした。しかし、漢字を使うことができました。大ヒットしたので色々な型がありますが、その中で、私が使ったのはmkIIでした。市販のソフトも現れました。ゲームソフトも各種発売され、1983年5月に設立された ( 株 ) システムソフトから11月に発売されたアクションパズルゲーム「ロードランナー」は大ヒットしました。私もこれにはまって、昼休みになると毎日のようにやっていました。

英文ワープロソフト「ワードスター」を使う

1979年6月ワードスターが発売になりました。これが、初めて使った市販のソフトです。今では、英文ワープロソフトはワードパーフェクトが主流ですが、このソフトは当時、世界的にヒットし、英文ワープロのスタンダードとなりました。その影響は今日まで残っています。例えば、ワードスターではカーソルを移動させるのに、コントロールキーと文字のキーを組み合わせます。この組み合わせは、現在使われている多くのワープロやエディタに引きつがれています。コントロールキーと 'm' の組み合わせは、リターンキーを押したのと同じ結果になります。ワードスターのヘビーユーザーだったので、これらの組み合わせは、体で覚えています。コントロールキーと 'm' を押すところをワードスター世代でない私より若い人に目撃されると、「何やってんの、おじさん!」と笑われることが時々あります。

8ビットパソコンという制約の中で、ワードスターはどうやってワープロとしての機能を果たしていたのでしょうか。ワープロというと、当然、プロポーショナルスペーシングで文章を表示しなければなりません。8ビットで、なぜそんなことが可能だったのでしょうか。そのことを説明する前にアスキーコードについて説明します。ご存じの方は次の項目を飛ばして下さい。

アスキーコードの説明

まず、16進法について説明します。コンピュータにわかるのは2進法です。2進法で表すのに必要な数字は0と1です。2進法は不便なので、16進法で表します。10進法で表すのに必要な数字は0から9です。16進法では文字が足りないので、アルファベットも使います。16進法では、0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12,- - - - 1F,20,21,- - - - 9E,9F,A0,- - - - FE,FF- - - - となります。

次にバイトとビットを説明します。1960年代初めには統一されていなかったのですが、1バイトを8ビットにしたIBMがメジャーになって、1バイトが8ビットに統一されました。1ビットで表すことができるのは0か1です。1バイトが8ビットなので、1バイトは2の8乗、即ち256になります。1バイトで表すことのできる数は0から255になります。これを16進法で表すと、0からFFです。

コンピューターは数字が得意です。というか、数字しかわかりません。そこで、文字も数字で管理します。日本語は字数が多いので2バイトで管理します。例えば16進数で表すと、'C' は 8262、'言' は 8CBE、'語' は 8CEA、'講' は 8D75、'座' は 8DC0 などです。

英文はアルファベットと数字と、記号などなので7ビットで充分です。各コンピュータシステムで、勝手な数字に文字を当てはめると混乱するので、統一されています。それがアスキーコードです。'a' は 61、'b' は 62、'c' は 63、'd' は 64 などとなっています。アスキーコード表を見るとわかるように、16進表示で0から7Fしか使っていません。つまり、7ビットで英数文字を管理できるわけです。1バイトが8ビットなので、1ビット余っています。

ついでに補足しておくと、日本では余った1ビットを使って半角カタカナ等、を管理しています。

プロポーショナルスペーシングとは

英文は英単語とそれを区切るスペースと、カンマで成り立ち、ピリオッドかクエスチョンマークで終わります。しかし、これは原則で、多くの例外があります。エディターと違って、ワープロソフトでは改行コードがなくても表示や印刷の際にスペースを調整します。行の右端にスペースが入ってはいけません。1行で表せる文の長さを計算して、単語と単語の間のスペースを割り出さなければなりません。

ワードスターの秘密

プロポーショナルスペーシングを行うには単語の終わりを認識しなければなりません。ある行を表示するにはどうしたら良いでしょうか。当時のパソコンでは、1行で80字しか表示できませんでした。表示する行の最初の文字がスペースだったら無視します。次の字から80字を越えない範囲を表示します。行の終わりは単語の末尾か、ハイフンか、カンマか、ピリオッドでなければなりません。つまり、プロポーショナルスペースを行うにはこれらの文字を認識しなければなりません。

先ほど、文字を数字で管理する際、1バイトが8ビットなので、1ビット余っていると書きました。この1ビットを単語の末尾、ハイフン、カンマ、ピリオッドに割り当てればいいのです。これらの行末にくる可能性のある文字だったら、そのビットを1に、それ以外の文字は0にすればよいのです。ちょっと難しかったかも知れませんが、おわかりになりましたか。

ワープロではこのほかにも、文字を強調表示したり、アンダーラインを付けて表示しなければなりません。しかし、8ビットパソコンではもうビットを使い切ってしまったので、それらを表示することはできません。しかし、プリンターにはその機能がありました。例えば、強調文字を印字するには1/120インチずらせて2度打ちすることで実現していました。プリンターのこれらの機能を使うにはどうしたら良いでしょうか。もう一度アスキーコード表を見て下さい。'SP' と書いてあるのがスペースです。スペースは16進表示で20です。これより小さい値はワープロとして使うには必要のないコードが含まれています。その空きにプリンターに対する命令を入れました。キーボードからは、コントロールキーとアルファベットの組み合わせで入力しました。例えば、コントロールと 'B' で、それ以降が強調文字になります。次にこの文字が来たら、強調文字が終わります。画面上ではこんな風に、 'Are you a ^BSakana^B.' 色が変わって表示されました。

ドットコマンドというやっかいなもの

プリンターをコントロールするコマンドには、このほかにも、様々あります。例えば、改行幅とか、余白を指定しなければなりません。アスキーコードの空いているところも既に使い切っています。そこで考えられたのが、ドットコマンドです。



文の初めにプリンターを制御する命令をピリオッドに続いて、一つか二つのアルファベットで指定します。私は、これはいけないことだと思います。これでは、ピリオッドで始まる文章を書くことができないからです。それがどうしたといわれるかもしれませんが、使用者にピリオッドではじまるファイルを作ることを強制的に禁止することになるからです。



なるべく正確を期していますが、当時の資料が不足しているので思い違いや間違いがあるかも知れません。何かお気づきの点があればメールをいただけると助かります。メアドはトップページにあります。




/* (C) 2001- YFプロ. All Rights Reserved. */




トップページへ戻る

サイトマップ

ハイテク昔話の目次へ戻る

前の話

次の話




提供:C言語講座:それ自体コンパイルできる教材を使った講座です。