You are here

ASのNanoprocessor対応


1820-1692も例によって適当な開発環境が見当たりません。

というわけでCP-1600のときと同様にASのコードジェネレータを書いてみました。CP-1600同様これも書式は簡単で命令数も少なく、着手してから半日ほどでテストも含めて書けました。

現時点のパッチなどをhttps://electrelic.com/pub/asl-Nanoprocessor-20220616/に置いておきます。

  1. asl-1.42bld223を展開してそのトップディレクトリでpatch -p1 < Nanoprocessor.patchでパッチを当てます。
  2. バイナリファイルt_nano.oritests/t_nanoにコピーします。

後は普通にビルドできるはずです。

ソースの書き方は原則として LID Nano Processor User's Guide に記載のアセンブラに合わせていますが、以下のような点が異なっているので注意してください。

  1. ASは汎用アセンブラなので最初にCPU NANOでNanoprocessorを指定する必要があります。
  2. 数値定数は8進でのみでしたが、あまりに不便なのでAS標準の式が使えるようにしています。8進・16進定数はCスタイルです。
  3. 上に伴いOCT, DEC, BCDには非対応です。これらは一般的なEQU相当の疑似命令で、それぞれ8進・10進・BCDで定数を記述するときに使用されるものですが、Cスタイルで書けるようにしたので不要と判断しました。
  4. EOF疑似命令にも非対応です。
  5. コメントは * ではなくAS標準の ; を使用します。

しばらく寝かせたのち問題が無いようであれば作者に送ろうと思っています。

参考文献・関連図書: 
LID Nano Processor User's Guide, A-5955-0331-1, Hewlett Packard.

Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
※ コメントは原則公開です。個別のご相談などは「ご意見・ご要望」からお願いします。