CPU実験室

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

割込みベクタ

最後まで残っていたΦ3.5イヤホンジャックを取り付けて部品実装は全て完了しました。

サンプルコードのリストを読んでコーデックの使い方を勉強しています。アセンブルはノーエラーで通ったのですが細かい修正は要りそうです。

まずサンプルコードはADSP-2181用に書かれているのですがこれをADSP-2101上で動作させるには機能制限があり、前回のようにインストラクションの他、割込み関係も違いがあるようです。

ADSP-2101の割込み要因とベクタアドレスは以下のようになっていますが

ADSP-2181では割込み要因が大幅に拡張されています。この中で使うのはRESETSPORT0 Receiveだけなのでハード的には問題ないのですがベクタアドレスがズレています。本当ならアッパーコンパチで作ってくれればいいんですけど

 

ということで、サンプルコードのベクタテーブル部分を修正。これはブートROMに含まれプログラムエリアの0番地からロードされるオリジナルなベクタテーブルを中継ぎとして飛んでくる2段階目のベクタテーブルで0x800番地からロードされます