こんにちは。柳平です。 先日、質問しました外部変数定義の不具合と思われた件ですが、 皆様のアドバイスをもとに私は以下のようにして解決しました。 (1) まずスタートアップルーチンで、外部変数のexport宣言およびセク ション 割付で変数用メモリ領域の確保。 (例) .export unsigned int a ・ ・ .section D,DATA,LOCATE=H'FEF10 _a: res.w 1 ・ .end (2)c言語上で外部変数aのextern宣言 extern unsigned int a; void main(void) { a=xxx; } (3)リンク時に、以下のオプション指定。 -START=P(200) これは、スタートアップルーチンのプログラム容量を考慮して(100番地以下に 収まるだろうと 見込んで)200番地からの書き込みとしました。 これで何とか動作するようになりました。 皆様のアドバイス、どうもありがとうございました。