CPU実験室

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

NS32000用GCC(3)

ツール類がそろったので早速テストしてみました。

これも一番簡単なプログラムとしてLEDチカチカから。0x800200番地のパラレルポートにインクリメントデータを出力します。

 

ソースファイル TEST1.C

f:id:O3I:20201116211106j:plain

久しぶりにcygwin上でテキスト編集をしますがUNIXでは改行コードがCR+LFでなくLFのみであること、ファイル終了のctrl-ZがいらないなどWindows/DOSのテキストファイルとフォーマットが異なります。cygwinネイティブ環境で動作するエディタvimとかもインストールしてみましたが恐ろしく使い勝手が悪いのでWindows上でUNIX形式テキストをサポートするnotepad++で編集しています。普通のテキストエディタで編集すると、コンパイル時に「変な文字コードがある」と怒られたりします。

 

次にコンパイルコンパイラドライバGCCで一気にバイナリまで生成できますがここは一段階づつ中間ファイルも見ていきました。-Sオプションでコードジェネレータがアセンブラコードを出力したところで止めます。

ns32k-pc532-netbsd-gcc -S test1.c

 

アセンブラソース TEST.S

f:id:O3I:20201116211626j:plain

 

続いてこのアセンブラコードをasアセンブルします

ns32k-pc532-netbsd-as -a -R test1.s >test1.lst

 

リスティングファイルTEST1.LST

f:id:O3I:20201116211236j:plain