現在地

パソコン

パソコン

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

大昔のメモ

カテゴリー:

大昔の懐かしいメモを見つけました。

INT 9H
INT 9H」ということはPC-9801シリーズのキーボード割り込みですね。

FD80:0E44はエントリアドレスかな。エンディアン間違えて訂正していますが、MC68000系から8086系に移った直後だったと思うので一瞬勘違いしたのでしょう。

パーソナルなコンピュータの入力装置事情 (第5回: その他)

カテゴリー:

入力装置事情も今回で最後、まだ取り上げていないものをまとめてこの項を終わりにしようと思います。

最初はデジタイザです。

平板上の座標を入力する機器で、マウスやトラックボールが相対的な移動量を入力するのに対し、絶対的な座標を入力します。今のペンタブレットにあたるものですね。

当時もペン型はありましたが精密なものでは「カーソル」と呼ばれるものが使われました。これはマウスに照準器がついたような形状のもので、デジタイザの平板上に置くと照準の中心の座標が入力できます。主に図面の入力用で、平板上に入力したい図面を固定しておいて頂点の座標を拾っていきます。

パーソナルなコンピュータの入力装置事情 (第4回: マウスとその仲間)

カテゴリー:

今回はいよいよマウスです。

初めてマウスというものを触ったのは中学のときでした。当時、技術科準備室にあったPC-9801F2の純正オプションのPC-9871だったと思います。値段は約3万円くらいでした。マウス本体とCバスのインターフェイスボードのセットです。

まだN88 DISK BASIC(86)を使っていましたから使い道なんて無かったのに何で買ったのだろう...

OSのサポートも無く、アプリケーションが独自に対応しなくてはなりません。図を描くようなソフトウェアで無い限り対応していませんでした。

この頃のマウスは中にボールが入っていて、マウスを動かすとこのボールが転がってその動きを光学エンコーダで読み取る仕組みです。隙間からゴミが入って動きが悪くなるので時々ボールを取り出して中を掃除する必要がありました。

ボールの無い光学式マウスも登場した頃のものは現在のものとは異なり、縦横に特殊な線の印刷された専用のマウスパッドが必要でした。

センサにカメラを使い任意のパターンで移動を検知できるようになったのが現在主流の光学式マウスです。レーザー式などありますが基本原理は共通していると思います。

パーソナルなコンピュータの入力装置事情 (第3回: ジョイスティックとライトペン)

カテゴリー:

コンピュータのパーソナルな使い道というとゲームが重要な位置を占めるのは今も昔も変わりありません。

キーボードでも操作できますが、本格的にプレーするためにはジョイスティックが欲しくなります。前回(第2回: キーボード)でも書いたように壊しても簡単に交換できなかったことも理由の一つかもしれません。

形式としては少なくとも日本ではレバー(上下左右のスイッチ)とボタンが2つというのが一般的でした。
Apple IIなどはレバーをスイッチではなくX軸とY軸のアナログ値として読めるタイプだったと思います。

NECのPC-6001やMSXなどホビー向けの機種は専用のコネクタを持つものがありました。D-Sub 9ピンのコネクタ(いわゆるATARI仕様)が2つ付いているのが多かったと思います。

専用端子のない機種では以下のような接続方法がありました。

パーソナルなコンピュータの入力装置事情 (第2回: キーボード)

カテゴリー:

マイコンキットのモニタや簡易アセンブラ程度なら専用キーボードでもなんとかいけましたが、BASICなどの言語を使用するならフルキーボードが必要になります。

16進テンキーのマイコンでもオプションでフルキーボードが用意されたものもありました。メモリとディスプレイ回路を追加してBASICを実行するためのものです。

基板むき出しではなく完成品のパソコンになるとフルキーボード搭載が一般的になります。

キーボードの形態としては一体型と分離型がありました。

当初はキーボードは本体と一体になっているのが普通でした。現在のキーボードを分厚く(10cm程度)して中に本体機能を収めたようなものです。

ノートパソコンからディスプレイを取り除いて厚くしたような構造です。

厚さを増すと操作しづらくなるのでキーボードの下に基板を1枚配置し、拡張スロットや電源などは奥に配置するのが普通です。

奥行きを伸ばしてディスプレイを上に乗せるようにしたものもあります。日立のベーシックマスターレベル3などがこの形式です。

上位機種の多くは次に述べる分離型に移行していきましたが、低価格機を中心に一体型もしばらくは残りました。

FDCボード (続・ハードウェア編)

テーマ:

カテゴリー:

昨日のハードウェア編の続きです。

50ピンのコネクタに刺さっていたジャンパーピンはREADYGNDに落とすためのもの、34ピンコネクタに接続していないからです。いずれDSKCHGと切り替えられるようにしたいですね。

基板 裏側
裏側、FDDコネクタのところ以外はほとんど一対一の接続なので配線作業は楽でした。

ATmega1284Pのポート割り当ては以下のようになっています。

FDCボード (ハードウェア編)

テーマ:

カテゴリー:

MC68kボード復活作戦(番外編)などで取り上げた大昔の環境は以前イメージ化してあったものですが、フロッピーディスクのままでイメージ化していないものがまだまだ存在します。読めなくなる前に(既に手遅れかもしれませんが)イメージ化しておきたいものです。

以前はまだPCに5.25インチのドライブが接続してあったのでそれを利用したのですが、今やろうとするといろいろ面倒なことになりそうです。

FDCボード
ということでこんなボードを作ってみました。

PCとはシリアル(USB変換ケーブル)で接続します。

Mass Storage Classを使うべきではという意見もあるかもしれませんが、次のような理由でこの形式を選択しました。

MC68kボード復活作戦(番外編)

MC68kボード復活作戦のために当時の開発環境を引っ張り出しました。今回はそれについて書いてみたいと思います。

まずは使用したアセンブラです。

CP/M-68Kが動いてからは付属のアセンブラ・Cコンパイラを使用しましたが、それまではPC-8001mk2上でクロスアセンブラを使用していました。『I/O』1986年2月号掲載のクロスアセンブラです。

これはN BASIC上で動作するもので、ソースは次のようにBASICのエディタを流用して入力します。

10 "loop: bra loop

BASICの文法的には間違っているので「run」すれば当然エラーになりますが、文字列の形式になっているのでそのままメモリに格納されます。アセンブラはそれを読んでアセンブルするというわけです。

これはディスク無しで動作するものなのでアセンブラ本体・ソース・オブジェクト・シンボルテーブルなどすべてがRAM上になければなりません。ソースとオブジェクトはオーバラップさせることもできますが、一度アセンブルするとソースが破壊されます。

パーソナルなコンピュータの数値演算事情 (第5回:32ビット・そして…)

カテゴリー:

32ビットの時代になると32ビットの四則演算が一命令で実行できるのは当然になり、浮動小数点演算についても一般的になってきます。

Intel 80386ではレジスタが32ビットに拡張され、80486では浮動小数点演算機能も内蔵されます。廉価版として浮動小数点演算を省いた486SXというものありましたが主流にはなっていません。

MotorolaはMC68020で外部バスも32ビットになりましたが、このシリーズは最初から32ビット演算命令は持っていました。それよりもMC68020から外部の浮動小数点演算プロセッサであるMC68881に対応したことの方が大きいでしょう。

パーソナルなコンピュータの数値演算事情 (第4回:16ビット)

カテゴリー:

8086, MC68000, Z8000といった16ビットプロセッサになると加減乗除の命令を持っているのが一般的になります。もちろん1命令で16ビット幅の演算が可能で、MC68000などは32ビットまで可能でした。

まだ浮動小数点演算命令は持っていないのが一般的でしたが、NEC V60やPanafacom MN1613のように浮動小数点の加減乗除の命令を持っているものもありました。

また内蔵していないまでも外部に浮動小数点演算プロセッサを接続できるようになっているものもありました。前回取り上げた MM57109, Am9511, Am9512 はI/Oデバイスとして接続するものでしたが、プロセッサの命令を拡張する(浮動小数点演算命令が追加される)タイプが登場します。

Intelの8087は 8086, 8088 に追加することで浮動小数点演算命令が使えるようになります。

ページ