TTL でCPUを作成、16bitの手作りコンピューター TANACOM-1 誕生

periphera

周辺の入出力装置

フルキーボード

初めての本格的な入力装置となったのは、このフルキーボードです。

キーボード

このキーボードは「品名 KB-02、型番 AY-5-2376」と言い、秋葉原でユニットのみ売られていたので通販で購入しました。ケースは、地元のパーツ屋で調達。
金ノコでキーボードの外観どおりに切り抜くのが、とても大変だったのを覚えています。

JISコード英数記号カナ(但し英小文字は無し)に対応していました。


キーボードユニットの中身

このキーボードユニットには、本体のキーボードの他に、入出力に関わるコントロールボードを内蔵させ、そこに「Beep回路、スピーカー、リードリレー」を載せていました。また、外部との接続のためのコネクタ3種を搭載していました。


カセットインターフェイス

1978年当時、マイコン(TK-80等)やパソコン(NEC8001等、注)にて、最もポピュラーだった外部記憶装置は、オーディオ用カセットテープレコーダーでした。
プログラムやデータを音声信号に変調してテープに録音してし( SAVE )、再生して復調する仕組み( LOAD )でした。ボーレートは、300ボーから2400ボー程度が主流でした。
当時のマイコン雑誌では「カンサスシティ・スタンダード」や「サッポロシティ・スタンダード」などの記事で賑わっており、テープの読み書き速度を皆競争をしていました。
我がTANACOM-1もそれに負けるなと、オリジナルなカセットインターフェイスを考えました。
0、1の情報をパルスの巾の違いにより表現するPWM方式を使い、ボーレートは3000ボーを叩きだし、スピードチャンプだ!と勝手に自画自賛していました。

オーディオカセットテープレコーダー

使用していたカセットテープレコーダーは、サンヨー製のMR-11DRというもので、これは、何とマイコンの外部記憶装置の目的で売られていたオーディオカセットテープレコーダーでした。

カセットテープレコーダー側面

再生信号は、イヤホン端子からオーディオケーブルを通じてパソコンに送るのですが、同時にスピーカからも聞く事が出来ました。
故に目的の信号が出ている事を確認しながら操作出来るという、すぐれものだったのです。また、信号の+-を反転させるボタンもあり、位相が逆な場合にも対処できるようになっていました。

プログラムを読み込む様子

これは、2011年に当時のカセットテープに入っていたプログラムを読み込ませているデモです。いづれも30年以上時間が経過しているのだが、辛うじてレコーダーも動いてくれ、テープの音声も何とか生きていたので、当時のカセットの大部分から、30年前に作ったソフトウェア達が現代に蘇ってくれました。ただ、テープレコーダーはもう絶命寸前で、たまに停止してしまう事があり、騙し、騙し何とか読み取りました。

注.1978年当時、「パソコン」という単語はまだ存在していなかった。全て「マイコン」と称されていた。
そのマイコンも「マイクロコンピュータ」と「マイ・コンピュータ」という2つの意味を持っていたのである。

キャラクターディスプレー

初めての本格的な出力装置、それがキャラクターディスプレーなのです。
皆、ビデオラム( VRAM )と称しておりました。
これは、普通のテレビを表示装置に見立てて、文字やグラフを表示させるもので、一般的なマイコンでは32文字 x 16行での構成が主流でした。
TANACOM-1のビデオラムは、1KwordのスタティックRAM(P2102-1)を搭載し、キャラクタジェネレータ用ROMにMCM66734を採用して、8 x 16ドットにて構成されるキャラクタを1文字とさせ、1行当たり64文字を16行表示出来る様に設計・製作しました。
また1文字は、2 x 4の四角ドット表示に切り替えるれるようにして、128 x 64ドットの簡易グラフィックも表示できるようにしました。

旧VideoRAM

これが1978年当時のオリジナルのVideoRAMユニットです。
出力用のテレビは、14インチ中古白黒を使っていました。
本来、テレビの水平同期の1周期に64文字を表示するのは大変でした。そこでテレビ側の水平同期、垂直同期の調整ツマミをいじくりまわして、何とか表示させる事に成功しました。

しかし、時が経ち、2009年蘇りの年、当時使っていた白黒テレビは廃棄していたので、中古の14インチ液晶テレビを調達して来ました。
ところが、現代のテレビは水平同期等は全て正確に受信できるように出来上がっていますので、同期の調整ツマミ等は一切ありません。
故にビデオラムを接続しますと、画面は乱れて何も読めません。
そこで、2009年蘇り事業にて、ビデオラムも大改修いたしました。
これが2009年大改修後の新VideoRAMユニットです。

新VideoRAM


最初はロジック回路の構成を変更して実験しましたが、なかなかピタッと周期が同期しません。
ここは、最新のエレクトロニクスの力を借りる事にしました。
同期発生回路に小型マイクロプロセッサ( MSP430F2012 )を組み入れて、正確な周期になるようにしました。
これで何とかTANACOM-1の、あのなつかしい画面と30年ぶりのご対面となったのでした。


画面例1


これは、電源を入れた直後の画面です。
VideoRAM上のRAMには、全くデタラメなデータばかりですので、この様な画面になるのです。



下記はキャラクタと簡易グラフィックの表示例です。
キャラクタとグラフィックは1画面の中で混在することも可能です。
それによりオセロやインベーダーゲームも作り表示する事が出来ました。

画面例2


VRAMのデータ構造は

VRAMは、アドレス 0x3000 ~ 0x33FF に配置された 1Kwordのメモリで構成されており、
正確には、大きさ1024 x 1bit のSRAM ( P2102-1) を10個( 10bit )で作られています。
そのデータ構造は、

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
x x x x x x Rev DATA

注. bit9 ~ 14 は、対応するSRAMが存在しない、空白ビットである。

 1.グラフィック指定
 G   0 = キャラクタ表示( DATAをコードとする文字を表示する )
 1 = グラフィック表示( DATAを 4 x 2 のドットパタンとして画を表示する )

 2.白黒反転の指示
Rev  (キャラクタ時 ) 0 = 普通表示  , 1 = 白黒を反転させる
 (グラフィック時) 1 = 普通表示  , 0 = 白黒を反転させる
注.7404 ( NOT 回路 ) 1 個を節約した為に、この様な仕様になりました。


キャラクタ表示


指定した VRAM 上のその位置に、文字が表示されます。
キャラクタジェネレータとして採用した MCM66734 は、アスキーコードを変形した文字セットになっているため、表示する際は、アスキーコードをその変形コードに変換し VRAM のその位置にセットしてやる必要があります。


グラフィック表示



VRAM のメモリ内容の bit7 ~ bit0 が、左図の各ドットを構成してパタンとなり、その位置に表示されます。

ジョイスティック

ブロックくずしゲームをするために作りました。
B型のボリュームを2個直角に組み合わせて、数センチの棒を取り付け、手作りジョイステックの完成です。
棒の先には、トリガスイッチとして、静電型のタッチスイッチを取り付けました。
ジョイステック回路図
仕組みは簡単です。SN74123のマルチバイブレータ2個にボリュームを接続しボリュームの回転角に応じて発信されるパルスの周期が変動するのを利用して、TANACOM-1側で、パルス周期をカウントして、現在のボリュームの回転角を知る仕組みでした。
1980年当時は、「ブロックくずし」よりも、マイコン雑誌に掲載されていた「ブロックくずれ」というゲームがとても面白く、移植して遊んだのを覚えています。
現物は、2009年の時点で存在していたのですが、腐食がひどく、写真撮影にも耐えられませんで、廃棄となりました。

DAコンバーター

8bitラダー方式のDAコンバータです。
キーボードユニット背面のコネクタに接続して使います。
供給される電源は、+5Vに加え、OPアンプのため+12Vと-12Vを使います。
アナログになった出力は、オーディオケーブルにて、液晶テレビのLINE-INへ接続されます。

DAC

このDACのお陰で、3重奏オルゴールを作り、好きな曲を打ち込んだり、また当時制作中だったアナログシンセサイザーへ音程電圧とトリガーを出して実験していました。

(ボードには、当時の私が書いた「79’3/6」の記入が見られます)

ライトペン

1980年当時、小型コンピュータ等につくディスプレーの中には、画面の上に出た表示をペン型をした「ライトペン」というもので指し、位置情報等を認知する入力デバイスがありました。
まだ「マウス」が発明される前だったはずです。
マイコンの世界では、そのような本格的な物は存在していませんでしたが、マイコン雑誌のアスキー1980年6月号に、超簡易ライトペンの製作記事が載っていたのです。
さっそくTANACOM-1に採用したくて、作ってみました。
ライトペン
これの仕組みは簡単です。キャラクタディスプレー(TV)の画面のある位置に、何か表示させておき、その絵をライトペンで押さえると、ライトペンの先に装着したフォトトランジスタが光に反応します。
その出力をマイク端子に入れて増幅させ、音声信号としてパソコンに取り込みます。
光に当たった時のみ信号が来るので、画面の何処に絵を出したら信号が来るかを数点スキャンさせて、何処の点の絵を読んだかを判断させ「指示された」を関知していたのです。
私は、これを3重奏オルゴールの音符データ入力に使っていました。
(現物は、随分むかしに廃棄したようです)。

powered by Quick Homepage Maker 5.3
based on PukiWiki 1.4.7 License is GPL. QHM

最新の更新 RSS  Valid XHTML 1.0 Transitional