X68000エミュのxkeropiポータブル化計画のとりあえず現状報告。画面写真をいくつか。
そんな訳でX68000エミュであるxkeropiをPSPやAndroidで動作させるべく、いろいろ作業しているわけですが、ひとまず現状報告など。
ここの所、386アセンブリで書かれたxkeropiのMC68000 MPUコアのC言語化作業を行っていましたが、
・X68000がメモリの0xBFFFFFCを読みだしてバスエラーになることを期待するという素敵な初期シーケンスに対応するために、バスエラーのハンドリングルーチンを追加
・c68kのLine A emulator, Line F emulator処理でスタックに積むPCの値が2バイト先になっていたのを修正
といった感じで、68kem.asm、memory.asm, memory_glue.asmを切り離してC言語化すことができました。
メモリ関連についてはxkeropiの作者様がC言語化されていましたので非常に楽ができました。感謝。
最近文字ばかりになってしまって絵が足りないので、今回は現状報告を兼ねた画面写真をいくつかご紹介。すべてMPUコアはC言語版で動作しています。
まずはディスクを入れないでX68000を起動したときにでる画面。

何でもない画面ですが、ここまで来るまでが長かった。xkeropi自体がassert()で落ちたり、エラーが発生しましただの、不正な命令を実行しました、とかのエラーが出て大変でした。
ちなみにiplromはX68000 EXPERTの物を使用、フォントはWindows 8.1 previewでWin68k高速版を動かして生成されたものを使用。
ここの所、386アセンブリで書かれたxkeropiのMC68000 MPUコアのC言語化作業を行っていましたが、
・X68000がメモリの0xBFFFFFCを読みだしてバスエラーになることを期待するという素敵な初期シーケンスに対応するために、バスエラーのハンドリングルーチンを追加
・c68kのLine A emulator, Line F emulator処理でスタックに積むPCの値が2バイト先になっていたのを修正
といった感じで、68kem.asm、memory.asm, memory_glue.asmを切り離してC言語化すことができました。
メモリ関連についてはxkeropiの作者様がC言語化されていましたので非常に楽ができました。感謝。
最近文字ばかりになってしまって絵が足りないので、今回は現状報告を兼ねた画面写真をいくつかご紹介。すべてMPUコアはC言語版で動作しています。
まずはディスクを入れないでX68000を起動したときにでる画面。

何でもない画面ですが、ここまで来るまでが長かった。xkeropi自体がassert()で落ちたり、エラーが発生しましただの、不正な命令を実行しました、とかのエラーが出て大変でした。
ちなみにiplromはX68000 EXPERTの物を使用、フォントはWindows 8.1 previewでWin68k高速版を動かして生成されたものを使用。
スポンサーサイト