カテゴリ:エミュレータ


2004年12月28日

Run68(その後5)

先日mcdrv.xがrun68で動かないと報告していただいた方に、昨日、修正版を送ったところ、今日、一応動いているとの報告を受けた。良かった。

現在のバージョンは 0.08a-1 となっています。ソースはこちらからCVSにて取得してください。モジュール名は "run68" です。

Posted by masamic at 23:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)


2004年12月24日

Run68(その後4)

一応、mcdrv.xは登録できるようになったみたい。とりあえず、パッケージングして、問題を報告していただいた人に確認していただこうと思う。

Posted by masamic at 22:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)


2004年12月17日

Run68(その後3)

とりあえず、TRAP命令のトラップ番号0から8までの処理を実装した。初期値でトラップをかけるとどうなるかわからんが、たぶんバスエラーになるだろう。
ということで、一応コミットした。テストプログラムが手元に無いので、テストは帰宅してから。

#なんか「とりあえず」を連発しているな。

Posted by masamic at 18:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)


Run68(その後2)

とりあえず、ライセンスの明確化(GPL)と、
Windows XPでの動作確認、
VisualC++のNMAKEへの対応(Makefile.vc)

を行って、バージョンを 0.08a にした。

Posted by masamic at 00:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)


2004年12月16日

Run68(その後1)

とりあえず、EX68とdb.xでベクタテーブルの内容を確認してみた。
IOCS(IPL)のバージョンによって下位16ビットは違っているが、上位16ビットはTRAP#0が$20FFで、順にTRAP#8が$28FFというようになっていた。
つまり、TRAP#4は$24FFということだ。初期状態では、これらTRAP#0からTRAP#8までが呼ばれると、最上位8ビットの下位4ビットからエラーメッセージを生成して表示している。
これならrun68のTRAP命令のエミュレーションに組み込めそうだ。

Posted by masamic at 00:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)


2004年12月11日

Run68 Windows版メンテ再開か?

X680x0 Human-68k コマンドラインエミュレータ Run68 で、動かないプログラムがあるとの報告を受けた。
あー、そーいや、ここ3~4年ばかしWindows版はメンテしてないなぁ、と思って、sourceforge.netにあるCVSリポジトリを見ると、BSD版は数ヶ月前に更新されてる!(もちろん更新したのは私ではなくBSD版のメンテナの方ですが)
BSD版は、一度、LinuxやCygwinでも動作を確認していますが、今でもコンパイルできるかな。ちょっと興味がわいてくる。

とりあえず、動かないプログラムを提供してもらって、動作確認をした。確かに動かない。んで調べて、動かない原因はわかったが、このプログラムはどうしてこんなチェックをしているのだろうかと思った。

TRAP#4ベクタをフックしているのだが、TRAP#4が利用されていないかをベクタテーブルの該当アドレスの32ビットの上位16ビットが0x24ffであることでチェックしている。実機ではそういう値になっているのかな?その辺はX680x0ハードウェアエミュレータでHuman-68kを動かして、チェックしているアドレスを見てみるしかないなぁ。

とりあえず、確認してみるか。

Posted by masamic at 23:12 [エミュレータ] | 固定リンク | コメント (0) | トラックバック (0)