CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

モニタ完成

今までいろいろなCPUボードで共通に記述してきたバイナリ→HEX表示変換ですがADSP2101ではこのような感じになりました。バイト2桁表示のHEX2DSPとその下請けになるニブル1桁表示のHEX1DSPのコーディング例です。

f:id:O3I:20210706173824j:plain

演算に使える汎用レジスタに制限があるのとコーディングに慣れてないこともあり冗長な部分もあると思いますが一応正常動作します。処理は回りくどいですが代数的表記で見通しは非常によく、一発で正しく変換できました。DSP特有の演算に必要になる強力な32bitバレルシフタがオンチップで内蔵されていますが、ここでは役不足。単純な4ビットシフトにしか使ってません

 

これらのルーチンを組み合わせて案外簡単にモニタが完成しました。統合環境から動かすにはL:ロードとG:実行だけあればよいのですが、コーディングが全く苦にならないのでHELPを含めいろいろ追加してみました。ただやはりコマンド引数の評価はめんどくさそうなのでアドレスは暫定で固定です。

f:id:O3I:20210706173836j:plain