現在地

モニタ プログラム


カテゴリー:

Z8用モニタについて書きましたが、それ以前にもモニタは何度となく書いています。

  1. Z80ボード3号機
    これはオリジナルではなく『トランジスタ技術』1984年6月号掲載のものをベースに移植・拡張したものです。Z80のアセンブリ言語で記述されています。
    他の多くがシリアルポート経由で操作するのに対し、16進テンキーと8桁7セグメントLEDを使用します。
  2. MC68kボード
    これもオリジナルではありません。やはり『トランジスタ技術』1985年4月号掲載のものを移植拡張しました。MC68000のアセンブリ言語で記述されています。後にMC68010用に変更しています。
  3. 研修課題
    新入社員研修(C言語)の課題として作成したものです。MC68008ボード用で、当然のことながらC言語(スタートアップなど一部はアセンブリ言語のはず)で記述しています。確か Dump, Set, Go が必須機能で、余った時間でレジスタのダンプ・セットを追加したように記憶しています。
    半端なアドレスのダンプをした時の挙動はこの時の仕様を以後は踏襲しています。
  4. 業務関係
    RTOS上で動作するので厳密にはモニタとは呼べませんが、デバッグ用に類似の機能をよく組み込んでいました。必要に応じてタスクテーブルのダンプ機能なんかも...
    これもC言語で記述していました。
  5. MAA-1ボード
    これは完全オリジナル、Z80のアセンブリ言語で書かれています。南青山アドベンチャーのためのBIOSという側面もあるものでした。
  6. ROMエミュレータ
    これも一般的なモニタの範疇からはちょっと外れていますが、メモリのダンプ・セットにHEXファイルの読み書きができるという点でモニタと類似点が多いので挙げておきます。
    上のMAA-1と時期が近いせいかプログラムの構造は似ています。Atmel AVRのアセンブリ言語で記述されています。
  7. Universal Monitor
    SBC6303, SBC6809, SBC6800, SBC8080 とボードごとに操作が異なっているのが不便で、共通に使えるモニタとして計画したものです。
    • Z80
      MAA-1のものをベースにゲーム専用の機能を削除しました。また、シリアル通信の部分を分離して Z80 SIO 以外への移植をしやすくしています。8080用があれば不要な気もしますが、最も慣れ親しんでいるCPUとして残しておきたいですね。
    • 8080
      Z80用のものを8080のニーモニックに書き換えたものです。とりあえずSBC8080用にシリアル部分は8251に対応させています。
    • 6800
      8080用のものを6800に移植しました。シリアル通信部分はSBC6800用にMC6850とSBC6303用にHD6303内蔵UARTに対応させています。
    • 6809
      8080用のものを6809に移植しました。シリアル通信部分はSBC6809用にMC6850に対応させています。
    • AVR
      ROMエミュレータ用のものを元にしています。開発の経緯から構造が他と異なる点もあり、また使い方も違うのでどこまで共通にできるか悩ましいところです。
    • Z8
      基本部分はZ80用をZ8に移植したものです。HEXファイル関係はAVRにしか実装されていないので、HEXファイルの出力機能はAVR用から移植しました。AVR版のHEXファイルの入力機能については難点があったので新規に作成しました。今後HEXファイル機能はこれをZ80, 8080, 6800, 6809に移植する予定です。
  8. FDCボード
    FDCボードのソフトウェアもROMエミュレータ用のものをベースにFDC関係のコマンドを追加したものです。

思い出せるものをリストアップしましたが、まだ忘れているものがあるかもしれません。

参考文献・関連図書: 
安部幸雄(1984)「8748用インサーキット・エミュレータの製作」『トランジスタ技術』1984年6月号, pp.420-429, CQ出版社.
藤井智史・山本強(1985)「保存版 68000/8の徹底研究 システムの起動とモニタ・プログラム」,『トランジスタ技術』1985年4月号, pp.383-403, CQ出版社.

コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 行と段落は自動的に折り返されます。
※ コメントは原則公開です。個別のご相談などは「ご意見・ご要望」からお願いします。