VGS8でHello, World!を作ってみて、CPUをデバッグするツールめいたものの必要性が高まったからデバッガを作り始めました。ただ、単にCPUデバッグだけを目的としたツールではなく、ゲーム開発時にも使い物になるレベルのものが欲しいところ。
以前、ファミコンのゲームを開発した際、コマンドライン上でレジスタ値やメモリダンプの簡易チェックができるCLIが欲しかったのですが、そもそも「コマンドラインでゲームをステップ実行できるNESエミュレータ」というものが(軽く探してみた限りですが)見つかりませんでした。GUIでメモリダンプやステップ実行できるものなら幾らかありましたが。
という訳でコマンドライン上で実行できるVGS8のデバッガ(vgsrun)を作成。
実行すると上図のように現在のプログラムカウンタ上の命令を逆アセンブルしながら、レジスタダンプ(a, x, y, s, p)を右側に出力します。(赤くなっている部分は前ステップからレジスタ値が変化したもの)
そのまま実行すると、1フレーム分の命令実行終了で自動的に終了します。
※コマンド引数で実行するフレーム数を任意に指定可能
先日作ったVGS8版Hello, Worldを1フレーム実行した結果
これで、ゲーム開発もVGS8本体開発も大分捗りそうです。
将来的にはもっと拡張して、
・ブレイクポイントの途中書き換え
・ステップ実行
あたりも欲しいかも。
2019年3月25日月曜日
登録:
コメントの投稿 (Atom)
合理的ではないものを作りたい
ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...
-
家電量販店のPCゲームパッドコーナーに行くと、軒並みWindows用のゲームパッドしか売っていません。稀に「Mac OS X対応」を謳っているゲームパッドも置いてありますが、実際に動かしてみると妙に誤動作をして更にガッカリしたりとか(経験済み)。 色々と試してみたのですが、最...
-
MSX版「覇邪の封印」の攻略情報を書きます。 MSX版には、パッケージに布製の地図とフィギュアが同梱されていますが、これらは単なるオマケではなく、ゲームをプレイするために必要なツールでして、説明書でもフィギュアの左足部分を現在位置に置いてプレイする旨が指示されています。実際に地図...
-
ゲームボーイのCPUについて、誤った技術情報が検索トップの方に表示されるので、私が把握する限りでZ80との仕様差を書いておきます。 ゲームボーイのCPUとは? ☓ 8080 ☓ Z80 ○ 8080カスタム or Z80カスタム(正確にはSHARPのLR35902) ...
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。