エミュレーションというのは、対象の動作を完全に模擬することにより、元のものの替わりをさせる技術です。似たような概念のシミュレーションの場合は、一般に人間に対する動作モデルを模擬するのですが、エミュレーションの場合はソフトウェアに対する動作を模擬することで、結果的にすべてを模擬します。たとえば Macintosh というパソコンをシミュレーションする場合には、あたかも Macintosh のような外観(人間に対するインターフェース:GUI)を再現すればよいのですが、 Macintosh をエミュレーションする場合には、ソフトウェアに対するインターフェースを再現する必要があります。GUI はソフトウェアの動作により実現するものなので、目に見える部分を知り尽くしていれば再現可能なのに対し、ソフトウェアに対するインターフェースは最終的にはハードウェアの動作により実現するものなので、動作環境となるハードウェア(CPU、周辺チップ、メモリー、外部記憶など)の動作を知り尽くしていないと、再現することはできません。しかし再現できた場合には、見かけだけでなく Macintosh のすべてのソフトウェアをそのまま動作させ、機能を再現することができるのです。
Christian Bauer さんが開発している BasiliskII はそれを実現したソフトウェアです。Windows や Linux などで動作し、Macintosh 上のすべての機能を再現します。つまり Macintosh 用と書かれたソフトウェアは、MacOS や Photoshop などのアプリケーションまで含めて完全に動作します。私は Macintosh を長いこと使っていましたので、Macintosh のソフトウェアを愛用していました。Windows を使い始めるにあたって、これらの Mac 用のソフトウェアはすべて使えなくなりましたが、BasiliskII を動作させることで、これらのソフトウェアがすべて Windows 上で動作するのです。
BasiliskII を使い始めるためには、まず Macintosh から ROM イメージファイルを転送する必要があります。もしソフトはあるけれどハードは手放されたという場合には、場所をとらない Macintosh LC シリーズあたりは中古で 480 円~(!!)で購入できるので、とりあえず用意すればいいでしょう(私も買いました)。ROM イメージファイルを Windows にコピーしたら、次に BasiliskII をインストールします。アプリケーションはコピーするだけなのですが、CD-ROM のドライバと、ネットワークドライバは通常の Windows のドライバインストールの要領でインストールする必要があります。BasiliskII の設定画面では、ハードディスクイメージファイル(HFS を再現するためのファイルです。Mac 上で 200M のハードディスクを使いたかったら、200M のファイルが必要です)を作成することと、ROM イメージファイルパスの設定が必要になります。
設定が済んだら、Run ボタンを押すだけで、あの懐かしいグレイの画面に?マークの Mac の絵が表示されます。
そのあとはどうするかというと、あとはもう、本物の Mac に新しいハードディスクを内蔵したときと同じです。起動可能な MacOS の CD を CD-ROM ドライブにセットして MacOS を起動し、ハードディスクを初期化し、システムをインストール‥説明の必要もありませんね。
CD-ROM だけでなく、当然マウスやキーボードも Windows のもので操作します。特に設定をしないと、Command キーは[Alt]、Option キーは[Windows]、Power キーは[Pause]になっています。嬉しいことにマウスホイールもそれっぽいイベントに置換されるらしく、それなりに動きます。右クリックはもちろん Control+クリックになります。
Mobile PentiumIII/400 のマシンで操作していると、Finder がすばらしく軽快に動作します。Mac といえばディスクやネットワークアクセスが遅いというのは常識ですが、そこがエミュレーションによりかえって速くなっています。さすがに、演算速度はそれなりなものがありますが、動作速度の向上に効果がある JIT(Just In Time)コンパイラをリンクした BasiliskII/JIT では、Photoshop のフィルタあたりも結構速く実行できます。総じて、元の Macintosh より遥かに使いやすく感じます。
さて、ほとんどのソフトが問題なく動くのですが、残念なことに私の愛用ソフトの1つである、Vision3D が、うまく動きませんでした(2002.5 注:とりあえずサンプルファイルではレンダリングまでできました)。描画エリアを操作しても、座標計算がおかしくなってしまうようです。
なお、Basilisk II は技術を公開・共有しながら開発をすすめるオープンソースモデルで開発されています。Basilisk II のコア部分は Christian Bauer 氏が開発していますが、Windows への移植は Lauri Pesonen 氏が行い、JIT コンパイラの統合は、Gwenole Beauchesne 氏が行い、さらに CPU エミュレーションの元となっている Unix Amiga Emulator もまた、Bernd Shmidt 氏 を中心にオープンソースで開発されており、JIT コンパイラも元々 UAE のために Bernie Mayer 氏が開発したものなのです。
もし、UAE がオープンソースじゃなかったら、JIT コンパイラも、BasiliskII 版も、開発されなかったか、あるいは開発期間がより長く、品質もより悪くなったことでしょう。
ところで、Macintosh で動くソフトって、どのバージョンまであるのでしょうか。気になりますが、なかなかまとまっているページがありませんでした。そこで、今回調べた範囲で、下記にまとめておきます。間違っているかもしれませんが‥
名前 | バージョン | 公式配布 |
MacOS | 8.1 | 販売終了 |
漢字Talk | 7.5.5 | ○(無料) |
QuickTime | current | ○ |
ClarisWorks/AppleWorks | 4.04 | 販売終了 |
EGWord/EGWord Pure | 9.0/4.0 | 販売終了 |
MacWord | 4.0 | 販売終了 |
WordPerfect | 3.5(E) | ○(無料) |
Nisus Writer | current | ○(旧版は無料) |
ATOK | 11 | 販売終了 |
EGBridge | 11(11.5は×) | 販売終了(?) |
Adobe Acrobat/Reader | 3.0/3.02(E) | ○(Acrobatは販売終了) |
Adobe Type Manager | 4.0.2 | 販売終了 |
Adobe PhotoShop | 4.0.1 | 販売終了 |
Adobe Illustrator | 7.0.1 | 販売終了 |
Adobe PageMaker | 6.5 | 販売終了 |
SuperCard | current | ○ |
Stuffit Expander | 5.5 | ○ |
Aladdin DropStuff | 5.5 | ○ |
Aladdin ShrinkWrap | 3.0 | 配布停止 |
Netscape Navigator | 4.03/4.08(E) | ○ |
Internet Explorer | 4.01 | 配布停止 |
Macromedia Flash Plugin | 3.0 | ○ |
Microsoft Office | 4.2 | 販売終了 |
MRJ Macintosh Runtime for Java | 2.0(JDK1.1.3) | ○ |
Sun Java Development Kit | 1.0.2 | ○ |
Symantec Think Pascal | 4.5d(E) | ○(無料) |
GraphicConverter | current | ○ |
Dragthing | current | ○ |
Jedit | 3.0 | ○ |
※current は、サポートが継続しているもの
Windows の日本語キーボードから使う場合、そのままではJISキーボードに設定してもキー上の記号通りに文字が出ません。この場合 Apple Japan のサイトから JIS キーボードインストーラをダウンロードして、導入する必要があります。これを行って、かつ BasiliskII の設定でJISキーボードにしておけば、問題なく利用できます。
Win32-JIT バージョン 3 がリリースされています。あと、マキエンタープライズさんの Think Pascal のススメのページへのリンクを追加しました。
今更ですが、PC側のAirH”カード(CFE-02)を使ってPPP接続してみました。方法は、まずBasiliskII GUIのPorts設定でCFE-02のCOMポート(私の場合はCOM4)をモデムポートに割り振るよう設定します。次にCFE-02のMac用CCLファイル(NECインフロンティアのサイトにもあります)を導入し、モデムコントロールパネルで経由先をモデムポート、モデムをCFE-02に設定するだけです(下図参照)。32kbps、遅いですが、Basiliskのレンダリングも速くはないので、まったりノスタルジックにブラウズしてます(WebブラウザはiCab+Flash3 pluginを使用)。
設定はこれだけ 1400×1050pixelsでWebブラウジング。やっぱりMacOSの画面は綺麗です…
ところで、68k時代のワープロソフト『マックライトII』(私は昔これで数百ページのドキュメントを作っていました)では「インライン変換ファイル」がない限りインライン変換ができません。当然、ATOK11用のインライン変換ファイルなど存在しない=インライン変換は不可能な訳ですが、google 検索してみたところ、藤沢純一さんという方がインライン変換ファイルを作るTIPSを公開されていました(下記リンク参照)。早速、ATOK11用のインライン変換ファイルを作成してみたところ、見事にインライン変換できました。
その後BasiliskII-JITのソースコード自体は、動的な解像度切り替えなどをサポートしたバージョン1.0になっていますが、Windows版は開発が止まったままになっているのが残念です。どなたか開発を引き継いでいただけるといいですね。
BasiliskII-JITを開発したGwenole Beauchesne氏はその後初のPowerMacエミュレータSheepShaver for x86を開発中のようです。こちらもUNIX版のみなのがちょっと残念です。
BasiliskIIの最新版及び、SheepShaver for x86はmingwとSDLを使ったWindows版のビルドが可能になったようですが、まだ動作は不安定なようです。
BasiliskII-JIT・SheepShaver for x86 の最新版のWindows版が配布されています。それぞれ SDL ライブラリを使用しているため、これまでのDirectX 版に比べると速度が落ちているとのこと。
長所:ネットワークのサポート、実行速度、再現性
短所:AV の ROM に対応していないこと、JIT 版ではスクロールバーがおかしいこと、My Computer で日本語で始まるファイル名が読めないこと(短所というには些細ですが‥)