パソコン

PC」以外の各メーカーが独自のアーキテクチャを採用した個人用のコンピュータです。
本体だけでなくオプション・周辺機器なども含みます。

パーソナルなコンピュータの技術情報事情 (ソフトウェア編)

2017-10-14 16:04 — asano

ハードウェア編に続きまして、今回はソフトウェア編です。

トレーニングキットの時代は回路図同様にソフトウェアについてもオープンなものが多かったと思います。
ソフトウェアといってもメモリの内容を表示・変更したりプログラムの実行ができるモニタ等ですが、これのソースコードがマニュアルに掲載されていたりするわけです。これもサンプルとしての意味が大きいからでしょう。オブジェクトのサイズも数kB以下ですから量的にも大したことはありません。

BASICインタープリタをROM搭載したいわゆるパソコンになると状況が変わりました。シャープのようにモニタのソースコードのマニュアルへの掲載を続けたところもありますが、BASIC自体となるとそうはいきません。

  • マイクロソフト等の社外開発のものが多く勝手に公開できない
  • サイズも小さなものでも10kB以上と大きくなり紙面的にも難しい
  • ユーザ層としても必要としない人が増えた

といった事情からソースコードの公開は困難になります。

パーソナルなコンピュータの技術情報事情 (ハードウェア編)

2017-10-13 10:22 — asano
カテゴリー

今パソコン・PCはブラックボックスになっています。どんな回路構成になっているのか、どんなソフトウェアが入っているのか、ほとんどの人は気にしません。

「いや、俺は気にする」という人でも、XXXチップセットを搭載している⇒このくらいのパフォーマンスが期待できる、OSのバージョンがYYY⇒何とか機能がある、といった機能・性能の指標として気にしている人が大半ではないでしょうか。

周辺機器のハードウェア設計者でもPCI・USBといったインターフェイスの仕様は調べますが本体の回路がどうなっているかは(トラブルでも起きないかぎり)普通は調べません。ソフトウェア設計者もAPIの使い方は知っていますがそれがどう実装されているかは考えません。

これはもちろん悪いことではありません。効率を上げ、互換性を保つには必要不可欠でしょう。

しかし昔は事情が違っていました。各社が互換性の無い機種を発売し、標準的なOSも無く(あっても機能が限られ)、ハードウェアを直接叩かなくては十分なパフォーマンスが得られない状況では内部の情報は重要だったのです。

ということで今回はハードウェア情報(主に回路図)について書いてみます。

PC-286/386 NOTE用のFDDケーブル

2017-10-09 18:47 — asano

テーマ

PC-286NOTE FPC-386NOTE Aで使っていたFDDケーブルもありました。

FDDケーブル
右の小さいほうのコネクタが本体側、左の大きいほうがドライブ側です。途中が膨らんでいるのはノイズ対策のコアですね。
固くて取り回しのやりにくいケーブルでした。

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

2017-09-24 16:29 — asano

テーマ

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

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

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

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

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

2017-09-23 21:54 — asano

テーマ

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

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

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

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

2017-09-12 15:45 — asano

テーマ

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

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

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

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

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

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

2017-09-10 12:29 — asano

テーマ

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

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

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

2017-09-09 16:24 — asano

テーマ

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

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

あたりが理由でしょう。

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

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

2017-09-08 09:23 — asano

テーマ

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

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

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