CPU実験室

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

CでLチカ

DSP56001用のアセンブラを拾って来た時、GCCベースのCコンパイラg56kも一緒に入手できたので動作確認をしておきます

まず簡単なLEDチカチカプログラム:

関数pout()DSP内蔵ペリフェラルPORT-Bに接続されたLEDへのデータ出力でインラインアセンブラで記述しました。Cからアセンブラへの変数I/F方法はGCCのそれに準じます。目で見えるチカチカにするため無駄ループwait()で待ってインクリメントデータを出力しました

コンパイルは一瞬で完了。絶対アドレス形式のオブジェクトCLDファイルが得られます

アセンブリ中間コードを吐かせると前後でレジスタのpush/popをしている以外、ループ部分はそのままアセンブラコードに落ちています