-
Z80 CPUボード(KZ80-CPUB)、 128kB RAMボード(KZ80-1MSRAM)、 Z80 I/Oボード(KZ80-IOB)で動作する機械語モニタープログラムです。
-
Z80の固有命令を使用しているためSBC8080/8085では動作しません。
-
8251シリアル入出力ルーチンは、SBC8080データパックのソースを参考にさせていただきました。
-
KZ80-CPUB+SBC8080サブボードの組み合わせで使用する場合は、RAMエリアを4000h→8000hへ移動する必要があります。
-
-
本モニターは進化中のため、使用できるコマンドは随時追加されていく予定です。
コマンド書式 | 機能 |
---|---|
|
XXXX番地からYYYY番地までのメモリーを16進ダンプ表示する |
|
コマンドヘルプを表示する |
|
バージョンを表示する |
|
IntelHEX形式ファイルをメモリーへロードする |
|
I/O番地XXへI/O入力命令を発行する |
|
I/O番地XXへデータYYを出力するI/O出力命令を発行する |
|
XXXX番地からのメモリーを変更する |
|
XXXX番地からのプログラムを実行する |
|
XXXX番地からのプログラムをパラメーターつき(PARAM1、PARAM2)で実行する |
-
アセンブル済みのIntelHEX形式ファイル(obj/Z80mon_KZ80.hex等)やバイナリファイル(obj/Z80mon_KZ80.bin)を使用して、TL866等のEPROMライタでROMを作成して使用してください。
-
インテルHEXはTL866標準ソフトで読み込みできます。バイナリ(bin)ファイルは minipro Linux用プログラムなどで使えます。
-
-
モニタープログラムは0000番地からスタートするかたちになっています。
ファイル名 | 用途 |
---|---|
Z80mon_KZ80.hex |
|
Z80mon_8080SUB.hex |
|
Z80mon_6850.hex |
|
Z80mon_8259_8254.hex |
|
-
デバイス依存ソースは deviceディレクトリに切り分けました。
-
以下のルーチンを記述してください
ルーチン名 |
内容 |
SETINT |
|
CIN |
|
COUT |
|
CKINCHAR |
|
INIT |
|
-
機械語モニターソースの末尾にデバイス依存ソースがappendされるかたちとなっています。
-
デバイス依存ルーチンで使用するRAMメモリー領域を確保する場合はソースの末尾で定義してください。また、RAM領域の最後に
DEVICE_RAM_END EQU $
の定義を忘れずにお願いします。 -
Z80mon.asmではデバイス依存部分を条件コンパイル文で取り込むかたちをとっています。build.shと合わせて適宜修正してください。
-
Z80アセンブラで記述しています。クロスアセンブラ等でアセンブリしIntelHex形式のファイルやバイナリ形式ファイル(bin)を作成してください。
-
クロスアセンブラ The Macroassembler ASでアセンブリする際のコマンドは build.shとして作成してあります。参考にしてください。
-
build.shによるビルドディレクトリ
./ --+-- lst リスト形式ファイル | +-- obj HEX,bin形式ファイル | +-- p ASコンパイル結果(pファイル)