Raspberry PiのRP2040で1984年に登場した初代Macintoshのエミュレーターを動かすプロジェクト「MicroMac」
Macintosh 128Kは1984年にAppleが発売したMacintoshシリーズ初のモデルであり、現代に続くMacブランドの原点といえる存在です。当時の発売価格が2495ドル(約39万円)だったMacintosh 128Kのエミュレーターを、わずか3.8ポンド(約760円)のRaspberry PiのマイクロコントローラーであるRP2040で動かすプロジェクト「MicroMac」に、ソフトウェア開発者のマット・エヴァンス氏が取り組みました。
https://axio.ms/projects/2024/06/16/MicroMac.html
Macintosh 128Kはわずか128KBのRAMをCPUとディスプレイコントローラーが共有する仕組みであり、256KBのメモリを搭載しているRP 2040は、理論的にはメモリ容量に十分な余裕があるといえます。かつてRP 2040用のシンプルなデスクトップ/GUIの構築について議論したことがあったエヴァンス氏は、RP 2040で初代MacintoshのOSを実行するアイデアを思いついたとのこと。
エヴァンス氏はこれまでMacintosh 128Kを触った経験はあまりなく、せいぜい博物館にあるマシンを数回クリックした程度だったとのこと。しかし、Macintosh 128KがMacDrawやMacWrite、MacPaintといったソフトウェアを実行することができたことは知っており、128KBのマシンとしてはクールだと感じていたそうです。
なお、古いMacをブラウザ上で再現するエミュレーター「Infinite Mac」にアクセスすると、Macintosh 128Kのソフトウェアを実際に使ってみることができます。
「MicroMac」に取り組むに当たり、エヴァンス氏はMacintosh 128KにCPUとして搭載されていたMC68000(68K)のインタプリタとしてよく知られており、より大きなプロジェクトに埋め込むのに適しているMusashiを使うことにしました。そして、このMusashiを基にしてMacintosh 128Kのエミュレーターである「umac」を作成しました。
そして、RP 2040にVideo Graphics Array(VGA)コネクタとケーブル、電源端子、USBマウスやキーボードの接続ケーブルをセットしたハードウェアを構築。
VGAケーブルでつないだディスプレイに画面を出力し、RP 2040に搭載したMacintosh 128Kのエミュレーターを動かすことに成功しました。
なお、当初は動作があまりにも遅く300KIPS(30万命令毎秒)の速度しか出なかったため、エヴァンス氏はMusashiの不要なメインループを削除したり、頻繁に使うコードをRAMに配置したりすることで、約1.4MIPS(140万命令毎秒)の速度が出るように改善したとのことです。
RP 2040のMacintosh 128Kエミュレーターでは、グラフィックソフトウエアのMacDrawを使うことが可能。
1980年にアタリが発売したシューティングゲーム「ミサイルコマンド」を遊ぶこともできます。