Cコンパイラ

プログラミング言語として、BASIC言語やアセンブリ言語だけでなくC言語が使用できるようになると、プログラミングの楽しみの場が大幅に広がる人も多いのではないでしょうか。BASICと比べると、体系的なプログラミングができることも魅力です。

CC65

6502にはCC65という大変強力なCコンパイラがオープンソースで整備されています。

CC65は以下のページに、ドキュメントやソースファイル、実行ファイル等が公開されています。

CC65は現在も活発に改良が続けられている「生きている」Cコンパイラです。そのため、ある意味残念なことに1970-1980年代のK&R文法や機能に準じた古いC言語ではなく、C99に準じたANSI Cとなっています。

この点では、CC65を使ってプログラムを書くことは、マイクロコンピュータの「創世期」のPCコンピューティングを楽しむのではなく、「創世期」のコンピュータを使ってはいるものの、その上で、発展を遂げた現代のPCコンピューティングを楽しむことになっているようです。

Cコンパイラでプログラムが書けるようになってからは、非常にプログラムの開発が楽になったことと、プログラムの作成実行時に、小さなコンピュータの6502-CORE が大きく感じられてドキッとすることが頻繁に生じるようになりました。

実際には、C言語のプログラムの作成のほとんど、編集やコンパイルは現代のWindowsマシンで行っているので、当然だろうと言われればそうかもしれませんが、BASIC等を使用しているときとは違った感覚が面白いです。

CC65は、ファミリーコンピュータにも対応しているため、そのゲームの開発で利用されている方の報告をWEB上でよく拝見します。

しかしながら、6502-CORE のような構成のいわゆるシングルボードコンピュータ上での利用は、少なくとも日本ではほとんど見かけない状況です。

うーん。もったいない。

多分皆さん、CC65の利用を敬遠されているのでしょうが、CC65はあまりにも整備が進んでいて、見るからに大規模で複雑な印象を受けるので、以下のような印象で手が出せていないのではないでしょうか。

  • WEB上で少なくとも日本語の活用例がほとんどないので利用の仕方がわからない。
  • システムの全体像が大きくて利用法を調べようと思っても何をどのように利用したらいいのかわからない。
  • 色々な市販システムに対応しているが、自分の独自コンピュータにどのように対応させたらよいのかわからない。
    • (ファミコンは対応機種に含まれているので、利用の敷居が低いのかもしれません。)

私も、最初はどこから手を付けていいのかわからず、多くの人と同じで、プログラムの移植の用途でca65 アセンブラのみを使用していました。

ところが、CC65は使い方がわかると実は気が抜けるほど簡単です。

CC65の利用法がわかれば、C言語で6502のプログラムを開発する人たちのの輪が大きく広がるのではないかと期待しています。


https://www.xenesis.jp/2022/06/cc65-install/
https://www.xenesis.jp/2022/06/cc65-first-programming/
https://www.xenesis.jp/2022/06/cc65-auto-startaddress-setting/
https://www.xenesis.jp/2022/06/c65-seive/
https://www.xenesis.jp/2022/06/cc65-library-reconstruction/
https://www.xenesis.jp/2022/06/cc65-generated-code-evaluation/
https://www.xenesis.jp/2022/06/cc65-orig-conf-programming/