レトロ コンピューティングを使用すると、現代のコンピューターがどこまで到達したかを示すテクノロジーの歴史を理解できます。動作する独自の Apple I レプリカを構築する方法は次のとおりです。
1976 年に Apple が最初に設立されて以来、コンピュータは長い道のりを歩んできました。スティーブ ジョブズとスティーブ ウォズニアックが最初にオリジナルの Apple I コンピュータ キットを組み立てた当時、すべては手作業で調達され、組み立てられていました。
Apple はスティーブ ジョブズの両親のガレージに拠点を置く小さな会社で、ガレージからキット コンピューターを販売していました。
Apple I キットは、巨大なマザーボード、数十個のロジック チップ、大規模なロジック チップで構成されていました。電源コンデンサ、ダイオード、抵抗器、ROM チップ、および Motorola によって設計され、MOS Technology によって製造された 6502 CPU。
6502 は 1980 年代の一般的な CPU で、Apple、Atari、Commodore コンピュータで使用されていました。これは、初めての真に低価格なマイコン CPU であり、パーソナル コンピュータ革命の実現を可能にした重要な要素でした。
Apple I の場合、ユーザーが自作の電源を構築し、後に Apple II キーボードを製造した Datanetics という会社から供給されるキーボードを入手するという課題も残されました。
Apple を持ったジョブズの 1979 年の写真をご覧ください。 II はコンピュータ歴史博物館の Web サイトにあります。
Apple I はキット形式で販売されました。完全に組み立てられたユニットは販売されませんでした。
このマシンは 1976 年 4 月 11 日に初めてリリースされました。これは、同年のエイプリル フールに Apple が設立されてからわずか 10 日後のことでした。冗談として、スティーブとスティーブはマシンの価格を 666.66 ドルに設定することにしました。
Apple I の売上はわずかでしたが、これは主にその機能が非常に限られていたためでした。また、英国の Sinclair など、他社のより高度なキットも入手可能でした。同社のマシンにはビデオ、グラフィックス、キーボード、カセット ポートが組み込まれ、後にはカラーも追加されました。
ジョブズ家のガレージで作られ、木箱に収められたスティーブ・ウォズニアックのオリジナルの Apple I コンピュータは、もともとカリフォルニア州クパチーノの R+D Six on 1 Infinite Loop にある Apple の社内博物館に展示されていました。 、しかし現在はワシントンDCのスミソニアン博物館に保管されています。
後続のコンピューター、 Apple II は 2 年後に、内部電源とキーボードを備えた完全に組み立てられたケースに入れて出荷されました。これにはグラフィックス モードが含まれており、フロッピー ディスクまたは ROM ベースのアドイン カードからロードする必要がある BASIC がサポートされていました。
2 番目のモデルである Apple II+ は、1 年後に内蔵 BASIC と外部フロッピー ディスクからの起動をサポートしました。
Apple II は Apple の最初のキラー製品であり、その 1 年後に Apple II の最初のキラーアプリ VisiCalc がダン ブリックリンとボブ フランクストンによって書かれたとき、アップルは一夜にしてシリコンバレーで初めてヒットした 10 億ドル規模のパーソナル コンピュータ会社になりました。 。
会計士やその他のビジネスマンが VisiCalc を使用してビジネスを管理し、簿記や予測を自動化するにつれて、Apple II コンピュータが店頭から消えていきました。
Apple I は、主に当時 RAM が非常に高価だったために厳しく制限されており、マシンは 32K まで拡張可能な 4K または 8K の RAM をサポートしていました。 Apple I はテキストのみで、ゲーム作成用のグラフィック モード、カラー、スプライトがありませんでした。
マシンにはオペレーティング システムがありませんでした。BASIC は、ユーザーがマシンの 1 つの拡張ポートに適合するオプションのカセット拡張インターフェイス カードも構築した場合に限り、1970 年代に人気のあったオーディオ形式であるオプションのコンパクト カセットからロードできました。 。
BASIC がなければ、ユーザーが Apple I をプログラムしたい場合は、Motorola 6502 アセンブリ言語とマシンの内蔵モニターである WozMon を使用する必要がありました。
初代 Apple I 。
45 年早送り
今日の世界では、プリント基板 (PCB) はソフトウェアで数時間から数日で設計でき、ファイルは保存され、アップロードされます。世界中の PCB 製造会社にインターネットを接続します。購入者は、ほぼ無料で 1 週間以内にボードを自宅に届けることができます。
これを、FPGA、フラッシュ EPROM などのプロセッサーやマイクロコントローラー、Arduino などの IoT デバイスの最新の進歩と組み合わせると、新しいレトロ コンピューティング革命の基礎がすべて整います。
何人かの進取的な起業家がオリジナルの Apple I PCB を再作成し、eBay や Etsy などのオンラインで販売しています。これらのボードの 1 つを購入し、自分で部品を再実装して、オリジナルの Apple I の動作する正確なレプリカを構築できます。
また、動作するオリジナルの Apple I ROM チップも見つける必要があります。ボード用に独自のカスタム電源を構築するか、事前に構築された電源をオンラインで見つけます。 Apple I のオリジナルのドキュメントはオンラインでも見つけることができますが、このドキュメントは引き続き Apple, Inc. が所有する著作権で保護された資料であることに注意してください。
販売者「newton-computer」から eBay で販売されているレプリカ Apple I PCB。カセット インターフェイス PCB も含まれています。
RC6502 レプリカ PCB
RC6502 の作成に必要なものをすべて購入して組み立てる作業ができない場合は、新しいオリジナルの Apple I、もっと良い方法があります。ノルウェーの Tebi は、RC6502 これは、オリジナルの Apple I ROM、単一の SRAM チップ、1MHz で動作する 6502 CPU、および同じくモトローラ製の単一の 6821P PIA チップを使用します。
このボードには、プログラムをロードする必要がある 1 つの Arduino Nano と、その他のいくつかの小さなコンポーネントも必要です。オプションのバックプレーン PCB を作成して、ビデオ ディスプレイ ユニットなどの他の機能を追加することもできます。
組み立てられた RC6502 コンピューター。
RC6502 はオープンソースであり、ガーバー ファイルをダウンロードしてオンラインで独自のボードを注文したり、eBay、Amazon、Etsy、およびその他のオンライン アウトレットの販売者からボードを注文したりできます。ガーバー ファイルは、PCB の製造に使用される電子回路のコンピューター生成の回路図です。
RC6502 の大きな利点は、ボードの総製造コストが 50 ドル未満であるため、そのサイズとコンポーネント数の少なさにあります。
はじめに
ベア PCB を見てみましょう:
RC6502 レプリカ Apple I PCB。
左上隅には 3 つのコンポーネントがあります: 1MHz 水晶発振器チップ、一般的な 555 タイマー チップ、および MCP23S17-E/SP シリアル ペリフェラル インターフェイス (SPI) チップ。最後のものは、アリゾナ州チャンドラーの Microchip Technology Inc. によって製造されており、ボードが Arduino Nano と通信するのに役立ちます。
MCP23S17-E/SP は、新型コロナウイルスのパンデミックによるサプライ チェーンの問題により、少し高価で見つけるのが難しい場合がありますが、徐々に入手可能になりつつあります。
DigiKey には現在大量の在庫があるようです。または、AliExpress を試してみてください。 AliExpressで見つけたのですが、欠品中は送料込みで7ドルかかりました。
1Mhz の水晶発振器チップを使用します。私が使用したオリジナルの Apple も 1MHz で動作しました。
ボードの右上隅には Arduino Nano ヘッダー用のスペースがあり、Arduino を接続できるようにこれをはんだ付けする必要があります。
その下には、74HCT138N、74HCT04N、および 74HCT00N の 3 つの一般的なロジック チップがあります。これらは論理ゲート、マルチプレクサー、インバーターであり、それぞれ数ドル程度の費用がかかります。
3 つのロジック チップの下には、単一の SRAM チップ (日立製 HM62256BLP-7、または同等品) と単一のフラッシュ可能 EPROM (この場合は Atmel AT28C64-15PC) があります。 Atmel チップをフラッシュするには、USB プログラマ デバイスも必要です。
HM62256BLP-7 の末尾の「-7」は RAM 速度を示します。この場合は 70ns ですが、わずかに遅いチップでも動作する可能性があり、場合によっては 100ns (または 100ns) ほど遅くなる可能性があります。チップモデル名の末尾に「-10」が付きます)。ほとんどの場合、速度が近い場合は、ボードの速度に合わせて RAM の速度を下げることができます。
日立 HM62256BLP-7 SRAM チップ。
RAM と EPROM の左側には、1 MHz で動作する Motorola 6502 CPU がありますが、6502 の最新の同等品である 65C02 も動作する可能性があります。 65C02 は 6502 の最新の代替品で、アリゾナ州メサにある Western Design Center (MOS Technology の後継会社) によって製造されています。
65C02 はより現代的な設計を採用しており、消費電力はオリジナルの 6502 の 1/10 以下で、最大 14MHz の可変速度で動作できます。ピン 37 はクロック入力ピンなので、CPU は外部発振器 (この場合は 1MHz クリスタル) によって駆動できます。
WDC の新しい W65C02S6TPG-14 CPU。
65C02 を使用しない場合は、動作する中古の 6502 か、オンライン販売者から新古品を入手する必要があります。これらは eBay 、場合によっては Amazon、AliExpress、またはその他の多くの海外の販売者で見つけることができます。
元の 6502 は Motorola が製造しましたが、後に MOS にライセンス供与されたため、両社の 6502 モデルが見られる場合があります。 6502 は後にロックウェル インターナショナルと UMC にもライセンス供与されました。
何十年も前に作られたものの、一度も使用されていない NOS Rockwell や UMC 6502 が今でも見つかります。
A NOS UMC 6502、日付コード「9028T」-8 日の第 2 週
通常、チップには製造された週、月、年を示す日付スタンプ コードが付いています。通常、年は日付コードの最初にリストされますが、常にそうとは限りません。
下の写真では、6502 の日付スタンプ コードは「0988」で、1988 年 9 月を示しています。
6502 CPU および Motorola MC6821P PIA チップ。 MC6822P も動作する可能性があります。
初期の生産では問題が発生した可能性があり、ほとんどの場合、チップの材料は時間の経過とともに劣化するため、ほとんどの場合、可能な限り最新のチップを入手することをお勧めします。したがって、1992 年に製造されたチップは、1979 年に製造されたチップよりも一般に優れています。
通常、純正の Motorola 6502 には Motorola の「M」ロゴが付いていますが、常にそうとは限りません。一部のチップは最終的に中国やインドで電子廃棄物として扱われ、基板から引き抜かれ、再生され、通常は上に示したような一般的なプリントが施されて再表面化されます。
中国製の一部のチップは偽物であり、動作する可能性もありますが、信頼性が低く、長時間動作しない可能性があることに注意してください。
IC ソケット、ジャンパー ヘッダー、PC マザーボード スタイルのプラスチック ジャンパー、さまざまな抵抗器、セラミック コンデンサーも必要になります。ほとんどが 104 または 0.1uF ではありませんが、すべてが必要です。
プロジェクトの部品表 (BOM) の完全なリストについては、Tebi の GitHub ページを参照してください。
ソケットと基本部品のはんだ付け
まず、すべての抵抗、セラミック コンデンサ、電解コンデンサ 1 つ、小さな瞬間オン 1 つをはんだ付けします。押しボタンスイッチとジャンパーヘッダー。時間をかけてすべてのはんだ接合を確認してください。
IC ソケットには 2 種類あります。1 種類 (安価な種類) は平らな葉のような接続と、PCB に対して平らに配置されるプラスチックの周囲を備えています。
これらは安価ではありますが、信頼性も低くなります。IC ピンを保持する小さな金属の葉がずれてしまう可能性があり、プラスチックのハウジングは同一平面上にあるため、その下を見ることができません。
もう 1 つの種類のソケットは、上部に丸い穴があり、丸みを帯びた隆起したピンを使用しており、多くの場合、数十年後でも腐食を防ぐために金メッキが施されています。 2 番目のタイプのソケットは少し高価ですが、その価値は十分にあります。
また、PCB 上のはんだ接合部の上面を検査して、穴間に不要なブリッジ (ビアと呼ばれる) がないことを確認することもできます。
ソケットや IC には通常、一端に半円形の切り込みがあることに注意してください。通常、PCB には半円のノッチが付いたマーキングもあります。ノッチが PCB マーキングと一致するようにソケットをはんだ付けします。
ノッチにより、IC がソケットに合わせて正しい方法で挿入されることが保証されます。逆挿入による切りくずの飛び上がりを防止します。
また、ボードの右上隅にある小さなリセット スイッチ、または外部スイッチ、電源、電源 LED のヘッダーをはんだ付けする必要があります。
ボードの底部にある長いピン ヘッダーには、電源やその他の機能を含むさまざまな接続があります。すべての長いジャンパー ピンの完全なピン配置については、GitHub ページとドキュメントを参照してください。
すべての小さなコンポーネントがインストールされた初期ビルドは次のようになります:
最初の RC6502 小さな部品の組み立て: IC、クリスタル、Arduino を除くすべて。
チップの取り付け
次に、ボードの右上隅にある Arduino Nano 用の 2 列のピン ソケット ヘッダーにはんだ付けし、Atmel EPROM チップを除くすべてのチップをソケットに取り付けます。
EPROM は、消去可能プログラム可能読み取り専用メモリを意味します。 EPROM チップをフラッシュするには、PC 上で USB プログラマ デバイスを使用する必要があります。
フラッシュしたら、Atmel チップをソケットに挿入します。また、基板の左上隅にある 1Mhz クリスタルをはんだ付けします。
IC をソケットに挿入するときは、ピンが曲がったり、ソケットの穴を外したりしないように十分注意してください。
次に、ドキュメントの説明に従って、小さなプラスチック製のジャンパーをジャンパー ピンに追加します。 RAM 量、PIA 有効、ROM 有効などのジャンパがあります。各ジャンパ設定により、ボードの動作が変更されます。
バックプレーンとオプションのビデオ
以前のバージョンの RC6502 Apple では、現在でも構築できるバックプレーン ボードと、いくつかのドーター カードを使用していました。ジャンパーが有効または無効になります。ただし、ボードの新しいバージョンは、自己完結型のシングル ボード コンピューター (SBC) 設計です。
バックプレーン ボードを使用する場合は、ボードをバックプレーンに垂直に差し込めるように、長いヘッダー コネクタ用の SBC の角度付きヘッダーを使用する必要があります。
ボードで実際のビデオ ディスプレイを使用したい場合は、2 つの小さな追加ボード (ビデオ ディスプレイ ユニットと呼ばれます) とバックプレーン ボードを追加する必要があります。そうでない場合は、Arduino を介してシリアル接続で SBC ボードに接続します。
Bus.md ドキュメントを参照してください。システム バスとピン配置の詳細については、GitHub ページを参照してください。
電源
Arduino の USB 接続を使用してボードに電源を供給したいが、バックプレーンを使用していない場合は、2 つの接続にジャンパを追加します。-「USB電源」とマークされた電源LEDのすぐ隣にあるピンヘッダー。
そうでない場合、バックプレーンは SBC の長いヘッダーのピン 17 と 18 の DC 電源ジャックから電力を供給します。 Arduino USB 接続の場合は、電源をオン/オフできるように電源スイッチが付いた USB ケーブルを入手するとよいでしょう。
すべての準備ができたら、Arduino USB ケーブルを接続し、Mac に差し込み、電源スイッチをオンにします。
Arduino 接続
電源を入れたら、Mac または PC のツール-> で Arduino IDE アプリを起動する必要があります。ボード-> Arduino AVR ボードでArduino Nanoを選択します。選択後、自動的に選択されない場合は、[ツール]-> [ポート] でシリアル ポートを設定する必要がある場合もあります。
Arduino IDE に接続したら、ドキュメントに記載されているように、IDE を使用して PIA Communicator スケッチ プログラムを Arduino にアップロードします。これにより、IDE のシリアル モニタが Apple I と通信し、その出力を Mac 上のウィンドウに表示できるようになります。
接続に問題がある場合は、ボー レート (シリアル接続を介してデータが転送される速度) を確認してください。 115200 に設定する必要があります。
すべてが計画どおりに動作すると、Arduino IDE のシリアル モニターに 1 つの感嘆符「!」が表示されるはずです。任意の 16 進アドレスを入力して、その内容を表示できるようになりました。
PIA Communicator では、6502 アセンブリと BASIC プログラムの両方を Apple I にアップロードして実行することもできます。 BASIC を Apple I にロードしたら、シリアル接続経由で BASIC プログラムを Apple I に直接入力して実行できます。
BASIC は、コマンド ライン プロンプトを「!」の代わりに「>」を表示するように切り替えます。シリアルウィンドウで。
内蔵アプリ
Apple I ROM には 3 つのアプリが内蔵されています。これらは、アクセスに必要な ROM メモリ アドレス (16 進数) とともに、RC6502 PCB の背面の CPU の下にリストされています。
Integer BASIC (E000) Krusader Assembler (F000) Woz Monitor (FF00)
3 つのプログラムのいずれかを実行するには、「!」プロンプトに 16 進アドレス、スペース、大文字の「R」を入力し、Return を押します。たとえば、Mac の Arduino シリアル ウィンドウから Apple I に Integer BASIC をロードするには、次のように入力します。
Return を押します。
シリアル ウィンドウのプロンプトが「”>」に変わるはずです。
これで BASIC が起動し、BASIC プログラムを入力できるようになりました。 BASIC プログラムを入力したら、「run」と入力し、Return キーを押して実行します。
レトロ コンピューティングの世界は拡大しており、RC6502 は、Apple I が構築したものを迅速かつ安価に開始できる方法です。
Tom Owad の注目すべき書籍もぜひチェックしてください。書籍 Apple I Replica Creation: Back to the Garage ($6 PDF)-スティーブ ウォズニアック自身による序文が含まれています。