SBCZ8002の簡易モニタは単独でプログラムの入力、実行、メモリの表示ができて、必要ならクロス開発環境で作ったHEXファイルを読みこめる。それ自体が素晴らしいプログラムだとは言い難いが、いつか素晴らしいプログラムを作るための第一歩にはなると思う。
●共通事項
英字の入力は大文字でも小文字でもいい。
数値の入力は16進数、桁数が多すぎる場合は下位桁を採用。
プロンプトの数値はカレントアドレス。
度を越した操作ミス(引数が71字を超えるとか)はフォローしきれない。
●HELP
コマンドの概略を表示する。あまり親切ではないのでド忘れ思い出し用。
●xxxx(16進数4桁以内)
カレントアドレスを変更。

●SET
引数で指定した数値や文字をカレントアドレスから並べる。数値は1バイト単位。文字はシングルクォート(‘)で囲む。数値や文字はコンマ(,)で区切って入力制限(78字/行)まで羅列可能。シングルクォートそのものは27、コンマそのものは2Cで指定する。

●DUMP
引数で指定した範囲を含む前後のメモリ内容を表示する。引数は開始アドレスと終了アドレス。開始ア ドレスを省略するとカレントアドレスが使われる。終了アドレスを省略すると開始アドレス+16バイトが使われる。このコマンドを実行した直後、全部を省略する(改行のみ入力する)とカレントアドレスから16バイトを表示する。

●CALL
引数で指定したアドレスのサブルーチンを呼び出す。

●LOAD
HEXファイルを読み込んでRAMに並べる。以降、データパックに含まれるHEXファイルのサンプルhello.hexで操作例を示す。エディタはメモ帳、端末ソフトはTeraTermと仮定。
エディタでhello.hexを開いて内容をコピー。できれば末尾の改行だけはコピーしない。

LOADを実行、アップロード待ちになるからウィンドウを右クリックしてペースト。このあとHEXファイル1行につきピリオド(.)をひとつ表示しながら読み込む。
簡易モニタ用アプリはカレントアドレスに関係なく8000から配置される。開始アドレスも8000と決まっている。だから実行方法はつねにCALL 8000。
簡易モニタの機能はマジで簡易、というか安直。しかし何もないよりはずっとまし。もともとはhello, worldだけ付けて済まそうと思っていたのだから。
ピンバック: SBCZ8002_reference | 電脳伝説