EPFL (ローザンヌ )に展示されている MOS KIM-1
KIM-1 (K eyboard I nput M onitor の略)は、モステクノロジー が1976年に開発した6502 ベースのワンボードマイコン (マイクロコンピュータ )キットである。発売当時、その低価格と拡張性により成功を収めた。
歴史
モステクノロジーの最初のプロセッサ 6501 はMC6800 用のマザーボードにセットして使うことができたので、能力のある技術者やホビーストは既存のハードウェアを使って簡単にシステムを構築することができた。これはモトローラを怒らせ、モスは 6501 を市場から引き上げざるを得なくなった。そこでピン配置を換えて投入したのが6502 である。機能は 6501 と変わりなかったが、周辺のハードウェアが揃っていないため、そのCPU を使ったシステムを作ることはハードルが高くなってしまった。
モスの650xチームのリーダーチャック・ペドル (以前は モトローラのMC6800チームのメンバー)は、そのようなニーズを満たすために KIM-1を設計し、1976年にリリースした。マシンは基本的に技術者に使ってもらうことを想定していたが、多くのホビーストがいることがすぐにわかった。システム構築はキットの価格245ドルを含めて500ドル以下で可能で、後は使い古しの端末 とカセットテープレコーダー があればよかった。
KIM向けの小さなアセンブリ言語 プログラムが載った本がいくつも出版された。例えば、"The First Book of KIM" がある[ 1] 。あるデモプログラムではソフト制御可能な出力ビットを小さなスピーカー につないでKIMに音楽を奏でさせた。
システムは Tiny BASIC 言語が使えるようになってさらに人気が高まった。ただしこれを使うにはメモリを拡張する必要があった[ 2] 。また、テープ からのBASICのロードには15分間かかった。
ロックウェル・インターナショナル (6502のセカンドソース)は Synertek と共に 1976年に評価ボード AIM-65 をリリースしている。AIMにはフルASCII キーボードと20桁の14セグメント 英数字LED ディスプレイ、キャッシュレジスター のような小さなプリンタを備えていた。ファームウェア としてデバッグ モニタ が標準で搭載されており、ユーザはオプションのROM チップを購入してアセンブラ か Microsoft BASIC インタプリタ を選ぶことができた。
さらに、Synertekは派生品SYM-1 を出している。これはKIM-1とAIM65の中間とも言うべきもので、KIMのような小さな表示と16進入力用の29キーのキーボードを備えていたが、AIMと互換のある拡張インターフェイスを備え、RS-232C も持っていた。
KIMを出して間もなくモステクノロジー はコモドール に買収され、KIM-1はCBMのラベルを付けて売られるようになった。チャック・ペドルはQWERTY配列 のフルキーボードとカセットテープ装置とモノクロディスプレイ装置を組み込んだ拡張版の開発に取り掛かった。
ディスプレイは新たに設計したデジタル回路で駆動され、外付けの端末を不要とした。内蔵ROMには BASIC が格納されるようになり、電源を入れると同時にBASICが使えるようになった。こうして1977年 、PET 2001 がリリースされた。これは同年発売された歴史的な3つのホビーパソコン の1つである(他は Apple II と TRS-80 )。
詳細
稼動しているKIM-1
KIM-1組み立てキットの内容は以下の通りである。
プリント基板 ×1: 部品は片面実装
CPU:6502×1
周辺チップ
6530×2(1KB ROM、64バイト RAM、8ビット双方向ポート×2、プログラマブル・インターバルタイマ)[ 3]
6102×8(1Kビット RAM)
周辺デバイス
KIM-1の説明書には "1 K BYTE RAM" とあるが、6102×8による1024バイトの他に6530×2による128バイトが加わるので、正確には1152バイトである。Byte magazine 1976年4月号で紹介され、掲載された広告には "1 K BYTE RAM" および "2048 ROM BYTES" と書かれていた[ 4] 。
6530の多くのI/Oピンは基板の端にあるコネクタ部分に接続されていて、TTY 33-ASR テレタイプ端末 や紙テープ装置を接続するシリアル ポートとして使うことができた。一部のコネクタピンは電源供給用、また一部はカセットテープ レコーダを接続することができる。
初期のマイクロコンピュータ である Altair 8800 などは、ずらっと並んだスイッチでデータを入力した。使いやすくするためには、まず「ブートストラップローダ 」という小さなプログラムをスイッチを使ってマシンに入力しなければならなかった。一度プログラムを入力し終えると、そのローダがもっと大きなプログラムを紙テープ 読み取り装置などから読み込んだ。これにはどんなに小さなプログラムでも読み込むのに5分以上かかり、スイッチを操作していてちょっとでも間違えるとブートストラップローダが誤動作することになるのである。そうなったら、最初からやり直すことになる。
KIM-1はもう少し複雑なブートストラップ・ローダに相当するプログラムTIM を 6530の内蔵ROMに焼き付けてあった[ 5] 。このプログラムはカセットテープを記憶装置として使う機能を持っており、LED表示を操作し、キーパッドからの入力を受け付けた。電源を入れると、TIMが動作し、ユーザは即座にキーパッドから入力することができた。KIM-1は最初のワンボードマイコン の1つであり、電源装置を追加するだけでコンピュータの実験ができた。その事実と比較的低価格で始められることによって1970年代後半を通じてホビーストの間で人気を博した。
ビデオディスプレイ
ドン・ランカスター は、KIM-1 用の低価格なビデオディスプレイを開発した。追加基板でTVまたはモニターに最大4000文字を表示できる装置であった。一般的な設定は、16行×32桁表示で、大文字だけというものであった。その基板上には10個の低価格なICが使われているだけで、KIM-1 のメモリを表示用に利用していた。
Popular Electronics 誌の1977年6月号で TVT-6 プロジェクトが始まった[ 6] 。このキットは PAiA Electronics が 34.95ドルで通信販売した。
ドン・ランカスターはこれを応用してカラー表示と単純なグラフィックス表示が可能な装置を The Cheap Video Cookbook という本で紹介した[ 7] 。
仕様
テープのフォーマット
カセットテープ上では、個々のビットが2.484ミリ秒間の音を3つ配置することで表現される。最初の音は常に3700Hzで、2つめの音は "0" なら 3700Hz、"1" なら 2400Hz 、最後の音は常に2400Hz である。これにより、実質のビットレートは134.2ビット毎秒となる。LM565を使ったPLL で読み取る[ 8] 。
テープ上のフォーマットは次のような順序である[ 8] 。
0x16 (SYN) 100バイト
0x2A (*) 1バイト
レコード識別番号
開始アドレス(アドレスの下位バイトに対応する2文字に上位バイトに対応する2文字が続く)
終了アドレス(開始アドレスと同じ形式)
実際のデータ
0x2F (/) 1バイト
チェックサム 2バイト
0x04 (EOT) 2バイト
メモリ上の1バイトはテープ上ではASCII 文字2文字で格納される。例えば、十六進法 でB5(十進では181)という値があるとき、テープ上には "B" と "5"(十六進では42と35)が書き込まれる[ 8] 。
脚注
参考文献
Bagnall, Brian (2006) On The Edge - The Spectacular Rise and Fall of Commodore , Variant Press, ISBN 0-9738649-0-7
関連項目
外部リンク
ウィキメディア・コモンズには、
KIM-1 に関連するカテゴリがあります。