PC/AT互換機エミュレータ Bochsを動かしてみる

那乃さんが動かそうとしてたのに触発されたので久々にやってみる。早速、Bochsのザウルス用バイナリを探すとX/Qt用のパッケージを発見。バージョンは2.1.1(2004/06/22公開)なので、本家最新版の2.2.6(2006/01/29公開)と比べるとちょっと古い。とりあえずインストールして「which bochs」でbochsのバイナリの場所を調べると、/usr/local/bin/bochsにあるようで「/lib/ld-linux.so.2 --list /usr/local/bin/bochs」で必要なライブラリを調べると、GTK+は使ってないのでXだけ入ってれば動くっぽい。

インストール

X/Qt Server ProjectのダウンロードからX/Qt プロジェクトページへ進んで、X/Qt Server 0.0.9(xqt-server_0.0.9_arm.ipk)とX base packages 4.3.0-2(xlibs_4.3.0-2_arm.ipkとxbase-etc_4.3.0-2_arm.ipk)をダウンロード。フォントやxbase-clientなどは無くても動くので大丈夫。

X/Qt Server Project
http://xqt.sourceforge.jp/index.ja.html

海外のザウルス用ソフトライブラリサイト Embedded Linux Software Index(elsi)のBrowse SoftwareからEmulatorsへ進んで、Bochsのxqt-bochs_2.1.1-1_arm.ipkをダウンロード。zbochs.tgz(2002/10/23公開)はSDL版だけどQVGA用なので無視。

Embedded Linux Software Index
http://www.elsix.org/

これらをxlibs、xqt-server、xbase-etc、xqt-bochsの順に本体メモリー(プログラムエリア)にインストール。
あと、ターミナルが入ってない場合は添付CD-ROM等からターミナル(qpe-terminal-ja_1.5.0-3_arm.ipk)もインストールしておく。(今回はSL-C700で試したので最初から入ってた。)

ディスクイメージ

Bochsの公式ページからDisk Imagesのリンクを辿って、好きなOSのディスクイメージをダウンロードする。今回はFreeDOSfreedos-img.tar.gz)をダウンロードした。SDカードなどに入れてザウルスに持っていき、ターミナルから「tar zxvf /mnt/card/freedos-img.tar.gz」と入力すれば、/home/zaurus/freedos-img ディレクトリに、フロッピーディスクイメージの a.img と b.img、ハードディスクイメージの c.img が出来上がる。

動作手順

アプリケーションのホーム画面に出来たX/Qt ServerアイコンでX/Qtを起動させた後、Qtメニュー等からターミナルを起動して以下のように操作する。

export DISPLAY=:0.0
bochs
3 (3. Edit options を選択)
6 (6. Memory options を選択)
2 (2. Name of VGA BIOS image: を選択)
/usr/local/share/bochs/VGABIOS-lgpl-latest
3 (3. Name of ROM BIOS image: を選択)
/usr/local/share/bochs/BIOS-bochs-latest
0 (0. Return to previous menu を選択)
8 (8. Disk options を選択)
1 (1. Floppy Disk 0: を選択)
/home/zaurus/freedos-img/a.img (ディスクイメージの場所を指定)
1.44M
inserted
0 (0. Return to previous menu を選択)
0 (0. Return to previous menu を選択)
4 (4. Save options to... を選択)
.bochsrc
5 (5. Begin simulation を選択)

これでBochsが起動するので、タスクバーからX/Qt Serverのアイコンを選択する。画面が狭い場合はMenuキーを押してFullScreenを選択する。この状態でMenuキーを押すと元の画面に戻る。終了させる場合はタスクバーからターミナルのアイコンを選択して、Fn+C(Ctrl+C)を押す。X/Qt Serverはアイコンを選択してから、Menuキーを押してShutdownを選択すると終了させられる。
設定は .bochsrc(今回の場合は /home/zaurus/.bochsrc)に保存されているので、これを変更しても良いし、起動後に「2. Read options from..」で読み込んでから修正してもいい。.bochsrc があれば以後は以下のように設定をせずにBochsを起動させられる。

export DISPLAY=:0.0
bochs
5 (5. Begin simulation を選択)