現在地

Universal Monitor Z8


テーマ:

カテゴリー:

先日のROMエミュレータを2732には去年作ったZ8613ボードにモニタを移植するのが目的でした。

Universal Monitor Z8
とりあえず基本的な機能が動くようになりましたので、試しているスクリーンショットを載せておきます。

まずは0FFF8H~0FFFFH,0000H~0077Hまでのメモリダンプ、次のHコマンドでCが表示されているのでこれはプログラム(コード)メモリ空間です。

次にHRコマンドでレジスタファイル空間に切り替えてから内容を書き換えて確認したところです。上とアドレスが一部重なっていますが、内容がまったく違っていることがわかると思います。

現時点で実装されているコマンドは以下です。

  • Dump
    メモリ内容をダンプする。
  • Set
    メモリ内容を表示し、対話的に書き換える。
  • Go
    指定したアドレスから実行(ジャンプ)する。(動作未確認)。
  • H
    対象とするメモリ空間を切り替える。
  • Punch
    メモリ内容を Intel HEX または Motorola S record 形式でダンプする。
  • Load
    Intel HEX または Motorola S record 形式で読み込む。(動作未確認)。

今Z8613ボードにはRAMが無いので Go, Load はテストしづらく保留中です。2kBでいいので搭載するかな。

ちなみに、なぜ「Universal」なのかというと、Z8 以外に 8080, Z80, MC6800, MC6809, AVR にもほぼ同仕様のものがあるからです。CPU毎の事情でコマンドが無(例えばMC6809にはHコマンドは無いし、AVRにGoコマンドは無い)かったり、未実装コマンドがあったりはしますが基本的な使い方は共通にしています。

さらにプログラムの構造やソースコードのラベル等も極力統一してあり、どれかのCPUで問題を発見した場合でも他へ展開しやすくなっています。


コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 行と段落は自動的に折り返されます。