COSMAC エルフとピクシーグラフィックディスプレイ | |
| 発売日 | 1976年 |
|---|---|
| CPU | RCA 1802 |
| メモリ | 256バイトのRAM、拡張可能 |
| グラフィックス | RCA CDP1861 |
| 音 | ビーパー |

COSMAC Elf は、1976 年と 1977 年にPopular Electronics誌の一連の構築記事で説明されたRCA 1802マイクロプロセッサ ベースのコンピュータです。Netronicsと Quest Electronics の両社は、エレクトロニクス雑誌の裏表紙で、この設計に基づいた低価格の拡張キットを提供しました。このシステムは、非常に初期のシングルボードパーソナル コンピュータでした。内蔵ROMなしで動作し、プログラムは8 つのトグル スイッチと入力プッシュ ボタンを 使用してCPU統合DMAの助けを借りて直接入力されました。
バイト データ値の出力用に 2 つの 16 進 LEDディスプレイと、入力用に 8 つのトグル スイッチのセットを備えていました(16 進キーパッドはオプションの拡張機能でした)。基本構成では 256バイトのRAMがありましたが、拡張プロジェクトではこれを 2 の累乗ベースのメモリ ストアに増やすことができ、アドレス空間の上限は 64K でした。
オリジナルの Elf 設計では、 1802 の内蔵発振器回路で 1 ~ 2 MHz の範囲の周波数の水晶が使用されていました。
1802 の DMA 機能を使用した簡単な回路では、トグル スイッチを介してプログラムとデータを RAM に入力できます。トグル スイッチでバイトを入力し、「入力」ボタンを押すと、バイトが RAM に入力され、16 進 LED のペアに表示され、DMA カウンターが次の位置に進みます。「メモリ保護」スイッチを使用すると、メモリの変更を無効にできます。プログラム入力でエラーが発生した場合は、メモリ保護をオンにし、ロード モードをオフにして (プログラム カウンターをゼロにリセット)、ロード モードをオンにして、「入力」を押して誤ったデータのアドレスに進むことで修正できます。メモリ保護をオフにすると、正しい値を入力できます。
シリーズの 4 番目の記事では、コンパニオンRCA 1861「Pixie」ビデオ ジェネレーターIC (CDP1861) を使用するための変更を紹介しました。Pixie には 1.76 MHz クロックが必要でしたが、これは珍しい水晶周波数であったため、通常は、すぐに入手できる 3.579545 MHzカラーバースト水晶を、マイクロプロセッサとPixie の両方のクロック入力を駆動するための 2 分割回路を備えた別の発振器回路で代わりに使用しました。結果として得られた 1.7897725 MHz クロックは、ハードウェアが動作するのに十分なものでした。モノクロ ビデオ出力 (タイミングはNTSC標準にほぼ近い) は、ソフトウェアの命令として注意深く配置された 1802オペコードでインターリーブされた DMA 操作を使用して生成できます。1861 の最大解像度は、64h x 128v の長方形ピクセルでした。ビデオ ディスプレイ制御および割り込みルーチン内の命令の配置を変更することで、ピクセル行を繰り返して解像度を下げ、256 バイトの RAM (64×32 の正方形ピクセル) でビデオ ディスプレイを使用できるようになりました。
マイクロプロセッサからの 1 ビット出力である Q ラインは、ソフトウェアによって駆動され、接続されたスピーカーから音を出したり、RAM 内のプログラムをカセット レコーダに保存したり、シリアル I/O出力に使用したりできます。1802 命令セットの分岐命令は、EF1 から EF4 の 1 ビット値入力ラインの状態を読み取ることができ、これらのラインは、'I' キーパッド (入力) の瞬間プッシュボタン (通常は EF4)、インターフェイス回路を介したカセット レコーダからのプログラム、シリアル I/O 入力、およびライト ペンなどの周辺機器からの入力を読み取るために使用されました。また、デコードとインターフェイスに使用できる 8 ビット I/O ポートが 7 つあります。
マイクロコンピュータ
オリジナルの Elf コンピュータは、本質的にはRCA Microkit、Microtutor I、および Microtutor IIの自作バージョンであり、これらは RCA の CDP1801 2 チップの前身およびシングルチップ CDP1802 マイクロプロセッサ用のデモ ボードでした。
Netronics Elf IIや Quest Super Elfなどの拡張キットには、データ入力用のキーパッド、シリアル I/O、カセット インターフェイス、CDP1861「Pixie」ビデオチップなどの組み込み機能が追加されました。RCA は後に、同様に拡張された独自のバージョンをCOSMAC VIPとして発表しました。
2006 年 8 月、Nuts and Volts誌は Spare Time Gizmos と共同で、オリジナルの Elf をベースに、より新しく入手しやすいコンポーネントと強化された機能、モジュール、機能 (現在では希少となった RCA CDP1861 集積回路と機能的に同等の STG1861 Pixie Graphics Replacement ボードを含む) を備えた「Cosmac Elf 2000」を構築するプロジェクトを発表しました。
メンバーシップ カードは、レトロ コンピューティング愛好家向けに COSMAC Elf 風にリメイクされたモダンでシンプルなカードで、 Altoids の缶に収まるように設計されています。
FPGA や最新のマイクロコントローラを使用したハードウェア エミュレーターなど、その他のさまざまな趣味のシステムがインターネット上に見つかります。
ソフトウェア
Netronics と Quest が発行した一連のニュースレターや小冊子には、1802 マシン言語とCHIP-8プログラム、および Elf を拡張してライトペンなどの周辺機器を追加するための回路図が掲載されていました。その他の同様の情報や趣味のソフトウェア プロジェクトは、インターネットで見つけることができます。1802 に関する唯一の出版書籍は、トム スワンの「Programmer's Guide to the 1802」(1981 年) で、長年絶版となっていましたが、PDFとして入手可能になりました。 [1]
トム・ピットマンが提供したBASICのバージョンである Tiny BASIC は、エルフ上で小さな BASIC プログラムを書くのに使用でき、Pixie 低解像度モノクログラフィックディスプレイや TV-Typewriter ハードウェアで表示できます。ピットマンはまた、1802 に関する「プログラミング短期コース」というタイトルの小冊子を執筆し、これを出版してオンラインで無料で利用できるようにしました。[2] [3]
Mike Riley は、エディタ、アセンブラ、BASICおよびFORTHインタープリタ、BIOS 、およびCOSMAC Elf 2000 を含む拡張 Elf システムで実行される Elf/OSディスク オペレーティング システムを作成しました。
インタープリタ、コンパイラ、アセンブラなど、利用可能な他の言語については、 RCA 1802 のWikipedia エントリに記載されています。
RCA Studio II のゲーム カートリッジには、他の 1802 システムで実行できる Chip-8 ゲームが含まれています。これらのゲームのファイル ダンプはインターネットで見つかります。
参考文献
- ^ Swan, Tom (1981). 「Programmer's Guide to the 1802」. Tom Swan ホームページ. Tom Swan . 2016 年8 月 19 日閲覧。
- ^ Pittman, Tom (1980). 「A Short Course In Programming」. COSMAC Elf . Dave Ruske . 2016年8月19日閲覧。
- ^ ピットマン、トム (1980)。「プログラミング短期講座」。Itty Bitty Computers。トム・ピットマン。 2016年8月19日閲覧。
建設記事
- ワイズベッカー、ジョセフ (1976 年 8 月)。「COSMAC エルフの構築 (パート 1)」。ポピュラー エレクトロニクス。10 (2)。ジフ デイビス: 33–38。
- ワイズベッカー、ジョセフ (1976 年 9 月)。「COSMAC エルフの構築 (パート 2)」。ポピュラー エレクトロニクス。10 (3)。ジフ デイビス: 37–40。
- ワイズベッカー、ジョセフ (1977 年 3 月)。「COSMAC エルフの構築 (パート 3)」。ポピュラー エレクトロニクス。11 (3)。ジフ デイビス: 63–67。
- ワイズベッカー、ジョセフ (1977 年 7 月)。「COSMAC エルフの構築 (第 4 部 Pixie グラフィックス ディスプレイ)」。ポピュラーエレクトロニクス。12 (1)。Ziff Davis: 41–46。
外部リンク
- Spare Time Gizmo の Cosmac Elf 2000 に関する記事
- エマ 02 (Cosmac Elf エミュレータを含む)
- SimElf COSMAC Elf 風の CDP1802 シミュレーター、JavaScript の拡張 Web アプリ、SimElf++ / COSMAC Elf 2
- FPGA Cosmac ELF サイクル精度の 1802 プロセッサ上で、Cosmac ELF コンピュータを spinalHDL でコーディングした FPGA 再現
