CP/M で由緒ある M80 および L80 ツールを使用して ROM イメージを構築しようとしています。(これは CP/M エミュレータ用であるため、CP/M ツールを使用している理由です。)
残念ながら、L80 は非常に粗雑なようです --- AFAICT では、各オブジェクト ファイルを絶対アドレスにロードし、修正してから、0x0100 からすべてをディスクにダンプします。これは、自身のワークスペース外のアドレスに基づくオブジェクト ファイルがまったく機能していないように見えることを意味します (エラー メッセージが表示されるだけです)。私の ROM には 0xd000 のベース アドレスがあり、これはかなり外側にあります。
M80 と L80 を使用してこれを行うことが可能かどうかは誰にもわかりません。または、CP/M アセンブラー/リンカー スイートを推奨する (そして私を指差す!) ことはできますか?
(可能であれば、クロスコンパイルを避けたいことに注意してください。)