マシンコード自体は16ビット固定長で上位4ビットは16種類のインストラクション、下位12ビットはそのまま操作対象の実効アドレスなので非常に単純な構造です。
初めはMASMのマクロ定義で展開しようとしたのですが、データアドレスの参照は容易なのですがJMP命令で飛び先アドレスの解決がうまくいかず行き詰ってしまいました。
そこで思いついたのがEXCELのワークシートを使う方法です。
JMPの飛び先は合致するラベルを検索して行番号からわかります。
こうすることで1行ごと入力するたびにリアルタイムでアセンブルされ、検索に失敗すればエラーコードも表示するツールになりました