KIM-1

**KIM-1**(**''K**eyboard **I**nput **M**onitor*の略)は、[[モステクノロジー]]が1976年に開発した[[MOS 6502|6502]]ベースの[[ワンボードマイコン]]（[[マイクロコンピュータ]]）キットである。発売当時、その低価格と拡張性により成功を収めた。

== 歴史 ==
モステクノロジーの最初のプロセッサ *'6501** は[[MC6800]]用のマザーボードにセットして使うことができたので、能力のある技術者やホビーストは既存のハードウェアを使って簡単にシステムを構築することができた。これはモトローラを怒らせ、モスは 6501 を市場から引き上げざるを得なくなった。そこでピン配置を換えて投入したのが[[MOS 6502|6502]]である。機能は 6501 と変わりなかったが、周辺のハードウェアが揃っていないため、その[[CPU]]を使ったシステムを作ることはハードルが高くなってしまった。

モスの650xチームのリーダー[[チャック・ペドル]]（以前は モトローラのMC6800チームのメンバー）は、そのようなニーズを満たすために KIM-1を設計し、1976年にリリースした。マシンは基本的に技術者に使ってもらうことを想定していたが、多くのホビーストがいることがすぐにわかった。システム構築はキットの価格245ドルを含めて500ドル以下で可能で、後は使い古しの[[端末]]と[[カンサスシティスタンダード|カセットテープレコーダー]]があればよかった。

KIM向けの小さな[[アセンブリ言語]]プログラムが載った本がいくつも出版された。例えば、"The First Book of KIM" がある。あるデモプログラムではソフト制御可能な出力ビットを小さな[[スピーカー]]につないでKIMに音楽を奏でさせた。

システムは [[Tiny BASIC]] 言語が使えるようになってさらに人気が高まった。ただしこれを使うにはメモリを拡張する必要があった。また、[[コンパクトカセット|テープ]]からのBASICのロードには15分間かかった。

[[ロックウェル・インターナショナル]]（6502のセカンドソース）は [[:en:Synertek|Synertek]] と共に 1976年に評価ボード [[AIM-65]] をリリースしている。AIMにはフル[[ASCII]]キーボードと20桁の[[14セグメントディスプレイ|14セグメント]]英数字[[発光ダイオード|LED]]ディスプレイ、[[キャッシュレジスター]]のような小さなプリンタを備えていた。[[ファームウェア]]として[[デバッガ|デバッグ]][[機械語モニタ|モニタ]]が標準で搭載されており、ユーザはオプションの[[Read Only Memory|ROM]]チップを購入して[[アセンブリ言語|アセンブラ]]か [[Microsoft BASIC]] [[インタプリタ]]を選ぶことができた。

さらに、Synertekは派生品[[SYM-1]]を出している。これはKIM-1とAIM65の中間とも言うべきもので、KIMのような小さな表示と16進入力用の29キーのキーボードを備えていたが、AIMと互換のある拡張インターフェイスを備え、[[RS-232|RS-232C]]も持っていた。

KIMを出して間もなく[[モステクノロジー]]は[[コモドール]]に買収され、KIM-1はCBMのラベルを付けて売られるようになった。チャック・ペドルは[[QWERTY配列]]のフルキーボードとカセットテープ装置とモノクロディスプレイ装置を組み込んだ拡張版の開発に取り掛かった。

ディスプレイは新たに設計したデジタル回路で駆動され、外付けの端末を不要とした。内蔵ROMには BASIC が格納されるようになり、電源を入れると同時にBASICが使えるようになった。こうして[[1977年]]、[[PET 2001]] がリリースされた。これは同年発売された歴史的な3つの[[ホビーパソコン]]の1つである（他は [[Apple II]] と [[TRS-80]]）。

== 詳細 ==

KIM-1組み立てキットの内容は以下の通りである。
* [[プリント基板]]×1: 部品は片面実装
* CPU：6502×1
* 周辺チップ
** 6530×2（1KB ROM、64バイト RAM、8ビット双方向ポート×2、プログラマブル・インターバルタイマ）
** 6102×8（1Kビット RAM）
* 周辺デバイス
** [[7セグメントディスプレイ|7セグメント]][[発光ダイオード|LED]]×6桁分
** 24キー電卓型キーパッド

KIM-1の説明書には "1 K BYTE RAM" とあるが、6102×8による1024バイトの他に6530×2による128バイトが加わるので、正確には1152バイトである。[[:en:Byte magazine|Byte magazine]] 1976年4月号で紹介され、掲載された広告には "1 K BYTE RAM" および "2048 ROM BYTES" と書かれていた。

6530の多くのI/Oピンは基板の端にあるコネクタ部分に接続されていて、[[ASR-33|TTY 33-ASR]][[テレタイプ端末]]や紙テープ装置を接続する[[シリアル通信|シリアル]]ポートとして使うことができた。一部のコネクタピンは電源供給用、また一部は[[コンパクトカセット|カセットテープ]]レコーダを接続することができる。

初期の[[マイクロコンピュータ]]である [[Altair 8800]] などは、ずらっと並んだスイッチでデータを入力した。使いやすくするためには、まず「[[ブートストラップローダ]]」という小さなプログラムをスイッチを使ってマシンに入力しなければならなかった。一度プログラムを入力し終えると、そのローダがもっと大きなプログラムを[[紙テープ]]読み取り装置などから読み込んだ。これにはどんなに小さなプログラムでも読み込むのに5分以上かかり、スイッチを操作していてちょっとでも間違えるとブートストラップローダが誤動作することになるのである。そうなったら、最初からやり直すことになる。

KIM-1はもう少し複雑なブートストラップ・ローダに相当するプログラム**TIM*'を 6530の内蔵ROMに焼き付けてあった。このプログラムはカセットテープを記憶装置として使う機能を持っており、LED表示を操作し、キーパッドからの入力を受け付けた。電源を入れると、TIMが動作し、ユーザは即座にキーパッドから入力することができた。KIM-1は最初の[[ワンボードマイコン]]の1つであり、電源装置を追加するだけでコンピュータの実験ができた。その事実と比較的低価格で始められることによって1970年代後半を通じてホビーストの間で人気を博した。

== ビデオディスプレイ ==
[[ドン・ランカスター]] は、KIM-1 用の低価格なビデオディスプレイを開発した。追加基板でTVまたはモニターに最大4000文字を表示できる装置であった。一般的な設定は、16行×32桁表示で、大文字だけというものであった。その基板上には10個の低価格なICが使われているだけで、KIM-1 のメモリを表示用に利用していた。

*Popular Electronics* 誌の1977年6月号で TVT-6 プロジェクトが始まった。このキットは PAiA Electronics が 34.95ドルで通信販売した。

ドン・ランカスターはこれを応用してカラー表示と単純なグラフィックス表示が可能な装置を *The Cheap Video Cookbook* という本で紹介した。

== 仕様 ==
* CPU: [[MOS 6502|MCS6502]]
* 2×PIO MCS6530 - 1024×8ビットROM、64×8ビットRAM、2×8ビット[[GPIO]]ポート、
* 8×6102 [[Static Random Access Memory|SRAM]] 1024×1 （合計1152バイト）
* 6×[[7セグメントディスプレイ|7セグメント]][[発光ダイオード|LED]]
* 24キーの電卓型[[キーパッド]]
* 2×[[シリアル通信|シリアル]]ポート
* Terminal Interface Monitor (TIM) - [[ブート]]、キーパッド、7セグメントLED、カセットレコーダを制御

== テープのフォーマット ==
カセットテープ上では、個々のビットが2.484ミリ秒間の音を3つ配置することで表現される。最初の音は常に3700Hzで、2つめの音は "0" なら 3700Hz、"1" なら 2400Hz 、最後の音は常に2400Hz である。これにより、実質のビットレートは134.2ビット毎秒となる。LM565を使った[[位相同期回路|PLL]]で読み取る。

テープ上のフォーマットは次のような順序である。
# 0x16 (SYN) 100バイト
# 0x2A (*) 1バイト
# レコード識別番号
# 開始アドレス（アドレスの下位バイトに対応する2文字に上位バイトに対応する2文字が続く）
# 終了アドレス（開始アドレスと同じ形式）
# 実際のデータ
# 0x2F (/) 1バイト
# [[チェックサム]]2バイト
# 0x04 (EOT) 2バイト

メモリ上の1バイトはテープ上では[[ASCII]]文字2文字で格納される。例えば、[[十六進法]]でB5（十進では181）という値があるとき、テープ上には "B" と "5"（十六進では42と35）が書き込まれる。

== 脚注 ==


== 参考文献 ==
* Bagnall, Brian (2006) *On The Edge - The Spectacular Rise and Fall of Commodore'', Variant Press, ISBN 0-9738649-0-7

## 関連項目
* ワンボードマイコン
* AIM-65
* SYM-1

## 外部リンク

* バーチャル博物館 OLD-COMPUTERS.COM での KIM-1 の展示(英語)(リンク切れ)
* KIM-1 oldcomputermuseum.com
*  – erik.vdbroeck のKIM-1に関するサイト。HTML化されたマニュアルや書籍がある。(リンク切れ)
* Instructions on building your own KIM-1
* KIM-1 Hints/FAQ
* Floodgap Retrobits KIM-1 コモドール64上で動作するKIM-1エミュレータがある。
* Modern KIM-1 clone website(リンク切れ)
* KIM-1 hobbyist's development: KIM-1とそのクローンの写真