nono: runx

nono 1.4.2 (2025/05/17)
[Back]
runx は NetBSD/x68k を含む NetBSD/m68k で Human68k の実行ファイルを直接実行するアプリケーションです。 一般命令を CPU で直接実行し、DOS コール・IOCS コールなど 一部の命令だけをトラップしてソフトウェアエミュレーションしています。

ビルド方法

runx は nono のソースツリーに付属しています。 NetBSD/m68k 用のアプリケーションなので NetBSD/m68k で以下のようにビルドします。
m68k% cd <path/to>/nono-x.x.x
m68k% cd util/runx
m68k% make
あるいは手元の PC に NetBSD の build.sh による m68k のクロスビルド環境が整っていれば それを用いて一瞬でクロスビルドすることも可能です。
amd64% cd <path/to>/nono-x.x.x
amd64% cd util/runx
amd64% make -j5 CXX="<TOOLSDIR>/bin/m68k--netbsdelf-g++ --sysroot=<DESTDIR>"

使い方

runx [-t][-d] executable [arguments...]
-t
トレースオプションです。 DOS コール、IOCS コールおよびトラップされた命令を表示します。
-d
デバッグレベルを上げます。複数回(現状2回まで)指定できます。

サポート状況

拡張子 .X (と .R) の形式の実行ファイルをサポートしています。

Human68k 実行ファイルのうち、 ハードウェアの I/O を直接叩いているようなものは動作しません。 現状、標準入出力など簡単な DOS コール、IOCS コールのみサポートしています。

使用例

nono で NetBSD/luna68k を起動して、
runx XEiJ/misc/instructiontest.x all
を実行すると nono の 68030 CPU の整数命令が正しく 実装されているかを確認することが出来ます。 またこれを使えば、他のエミュレータであっても NetBSD/m68k が動作すれば そのエミュレータの 68030 CPU エミュレーションの完成度がチェック出来るかも知れません。
nono project