cc65

ソフトウェアのスクリーンショット:
cc65
ソフトウェアの詳細:
バージョン: 2.13.3
日付のアップロード: 14 Apr 15
ライセンス: 無料
人気: 24

Rating: 1.5/5 (Total Votes: 2)

cc65は、強力なマクロアセンブラ、Cコンパイラ、リンカ、ライブラリアンおよび他のいくつかのツールを含む6502システム用の完全なクロス開発パッケージです。 cc65はもともとジョンR.ダニングによるアタリ8ビットコンピュータ用に適応させたCコンパイラに基づいています。
オリジナルのCコンパイラは、小さなC子孫であるが、いくつかの拡張機能を持っており、オリジナルの小さなCコンパイラの限界の一部がなくなっている。オリジナルの著作権は、それがオープンソースの定義によるとオープンソースソフトウェアとしての資格はない場合でも、ソースなど自由に再配布することができます。
オリジナルのアタリコンパイラはhttp://www.umich.edu/~archive/atari/8bit/Languages​​/Cc65/​​から入手できます。完全なパッケージは、コンパイラ、アセンブラ、ライブラリアン、リンカ、アタリのためのCライブラリで構成されています。そこに、DOSやUnix用のクロスコンパイラとして適合であると主張するネット上のいくつかのパッケージがありますが、それらが正しく動作して取得することができませんでした。
私は私のCBMマシン用Cコンパイラを望んでいたので、私はアタリコンパイラを取り、書き換えを開始しました。今日まで、私は、ライブラリのすべてのコンパイラの大部分を書き換えている、完全にアセンブラ、リンカ、ライブラリアンを交換し、使用を簡素化するためにフロントエンドを追加しました。すべての変更は、念頭に置いて携帯性に行われているので、新しい6502のアーキテクチャに移植することは非常に簡単にする必要があります。
コンパイラはほとんどISO Cに互換性があるので、あなたが他のシステムから多くのソースを変換することができるはずです。
他のターゲットシステムに依存する制限があるかもしれません。一つの例は、すべてのプラットフォームで実装されていないファイルI / O、である。これは(上記のようなもののように)技術的な制限はありませんが、ちょうど誰も実際のコードを書くのに十分な世話をしないことを意味している。
コンパイラは、このパッケージで使用可能なツールの一つです。アセンブラスイート(アセンブラ、リンカ、アーカイバ)は、任意の6502マシンのプログラムを書くために用いることができる、それ自体のための完全な開発環境です。 Cコードおよびアセンブラコードを併用してもよいし、互いを呼び出すことができる。
アセンブラは、1パスmacroassemblerで、6502用の出力コード、65SC02と65SC816することができます。これは、ファイル、条件付きアセンブリ、マクロ、ネストされた語彙のレベル(つまり、ローカルシンボルである)、および多くを含むような気の利いた機能をたくさん持っている。アセンブラは、再配置可能なコードを含むオブジェクトファイルを作成します。これらのファイルは、最終的なプログラムを作成するためにリンカーを介して実行する必要があります。
リンカは柔軟な出力フォーマットを有しており、ROM化コード(異なる負荷およびデータの実行アドレス)をサポートすることができる、(セグメントが同じ実行アドレスを共有する場合があります)、複数のROM、無制限のセグメントを持つシステム、システムのバンクに複数のBSSセグメントと他のものがたくさん。
アーカイバは、オブジェクト·ファイルを含むライブラリーを作成するために使用される。これは、コードの管理を簡素化します。リンカは、実際に必要なライブラリからモジュールだけを抽出します。
simplifiy使用するには、cc65パッケージに含まれるツールへのフロントエンドもあります。フロントエンドは、CL65という名前です。それは、Cファイル、アセンブラファイル、オブジェクトファイルとライブラリの一覧からバイナリをビルドする方法を知っている。小さいプロジェクトでは、CL65ユーティリティのひとつの呼び出しは、いくつかのソースファイルとライブラリからバイナリをビルドするために必要とされます。

の特長の:ます。

  • コンパイラは//で始まる単一行コメントをすることができます。この機能は、厳密なANSIモードでは無効になります。
  • コンパイラは、パラメータリストで名前のないパラメータを可能にする。コンパイラは、名前を持っていない未使用のパラメータについての警告を発行しません。この機能は、厳密なANSIモードでは無効になります。
  • コンパイラは、特別な機能のために必要とされるいくつかの追加のキーワードを持っています。厳密なANSIモードでは、追加キーワードは、2つのアンダースコアで始まります。
  • volatile修飾子は効果がありませんします。
  • のデータ型はfloatとdoubleは使用できません。
  • コンパイラは、ビットフィールドをサポートしていませんします。
  • C関数が構造体と構造体を返さないことがあり、値によってパラメータとして渡すことはできません。構造体の割り当てが可能です。
  • ローカル変数のサイズにいくつかの制限があります。ローカル変数のサイズが256バイトを超える場合ではないすべての操作が可能です。
  • Cライブラリの一部は(下記参照)のみfastcall呼び出し規約で使用可能です。これは、ユーザー作成された関数へのポインタとそれらの関数へのポインタを混在させないことを、意味します。

のこのリリースで新しいのは何ですか。

  • Cで生成された不正なコードを持ついくつかのマクロ課題や問題コンパイラは、修正されています。
  • これは、ポインタとランタイム除算ルーチンを無効にする変換機能を備えてます。
  • アセンブラはまた、いくつかのマクロの問題と256バイトを超えるの揃え方で問題を抱えていたします。
  • あり80カラムモードに問題があったとC128ライブラリでのスクロールconioます。
  • アタリライブラリは現在、POSIXのディレクトリルーチンを持っています。
  • はいくつかのドキュメントの変更、修正、および改良が行われているます。

のバージョン2.13.0のの新機能:

  • ビットフィールドのサポートが追加されました<。 / LI>
  • このリリースには、標準への準拠を改善し、追加の警告が怪しげなコードのために放出されているます。
  • はライブラリは、より高速またはより小さなサイズのために調整されています。
  • コンパイラは通常、コードサイズの増加の多くはせずに、多くの場合高速なコードを生成します。

同じようなソフトウェア

Gambas
Gambas

20 Feb 15

Flat Assembler
Flat Assembler

14 Apr 15

TMake
TMake

11 May 15

Pacha
Pacha

11 May 15

へのコメント cc65

コメントが見つかりません
コメントを追加
画像をオンにする!