cc65

Tela Software:
cc65
Detalhes de Software:
Versão: 2.13.3
Data de upload: 14 Apr 15
Licença: Livre
Popularidade: 24

Rating: 1.5/5 (Total Votes: 2)

cc65 é um pacote de desenvolvimento transversal completa para 6.502 sistemas, incluindo um poderoso assembler macro, um compilador C, vinculador, bibliotecário e várias outras ferramentas. cc65 baseia-se num compilador C que foi originalmente adaptado para os computadores de 8 bits Atari por John R. Dunning.
O compilador C original é um descendente pequeno C, mas tem várias extensões, e alguns dos limites do compilador original do Small C sumiram. O copyright original permite a redistribuição livre, incluindo fontes, mesmo que não se qualificaria como Open Source Software de acordo com a Open Source Definition.
O compilador Atari original está disponível a partir de http://www.umich.edu/~archive/atari/8bit/Languages/Cc65/. O pacote completo é composto pelo compilador, um montador, um bibliotecário, um ligante, e uma biblioteca C para a Atari. Existem alguns pacotes na rede que afirmam ser adaptado como um compilador cruzado para DOS ou Unix, mas não foi capaz de levá-los a funcionar correctamente.
Porque eu queria um compilador C para minhas máquinas CBM, tomei o compilador Atari e começou uma reescrita. Até hoje, eu ter reescrito grandes partes do compilador, toda a biblioteca, substituiu completamente o montador, o ligante e o bibliotecário, e acrescentou um frontend para simplificar o uso. Todas as alterações foram feitas com portabilidade em mente, então portar para novas arquiteturas de 6502 deve ser muito fácil.
O compilador é quase ISO C compatível, por isso você deve ser capaz de traduzir muitas fontes de outros sistemas.
Pode haver outro sistema alvo limitações dependentes. Um exemplo é o arquivo de I / O, que não está implementado em todas as plataformas. Esta não é uma limitação técnica (como acontece com o material mencionado acima), mas significa apenas que ninguém se importava o suficiente para escrever o código real.
O compilador é apenas uma das ferramentas disponíveis neste pacote. A suíte montador (assembler, linker, arquivador) é um ambiente de desenvolvimento completo para si mesmo, que pode ser usado para escrever programas para qualquer máquina de 6502. Código C e código assembler podem ser utilizados em conjunto e podem chamar uns aos outros.
O montador é um macroassembler uma passagem e é capaz de código de saída para o 6502, o 65SC02 e 65SC816. Ele tem um monte de características interessantes, como incluir arquivos, montagem de condicional, macros níveis lexicais aninhadas (isto é, símbolos locais), e muito mais. O montador cria arquivos de objetos que contêm o código relocatable. Esses arquivos devem ser executados através de um ligante para criar o programa final.
O ligante tem um formato de saída flexível e é capaz de suportar código ROMable (carga diferente e endereços funcionam para dados), os sistemas bancados (segmentos podem compartilhar o mesmo endereço de pista), sistemas com várias ROMs, segmentos ilimitados, mais de um segmento BSS e muitas outras coisas.
O arquivador é usado para criar bibliotecas contendo objetos arquivos. Isso simplifica o gerenciamento de código. O vinculador irá extrair somente os módulos de uma biblioteca que são realmente necessários.
Para uso simplifiy, há também um frontend para as ferramentas contidas no pacote cc65. O frontend é chamado CL65. Ele sabe como construir o binário a partir de uma lista de arquivos C, arquivos Assembler, arquivos de objetos e bibliotecas. Para projetos menores, apenas uma invocação do utilitário CL65 é necessário para construir um binário a partir de vários arquivos de origem e bibliotecas

Características :.

  • O compilador permite comentários de linha única que começam com //. Esse recurso é desativado no modo ANSI estrito.
  • O compilador permite parâmetros sem nome em listas de parâmetros. O compilador não emitirá avisos sobre os parâmetros não utilizados que não têm um nome. Esse recurso é desativado no modo ANSI estrito.
  • O compilador tem algumas palavras-chave que são necessários para características especiais. No modo ANSI estrito, as palavras-chave adicionais começam com dois sublinhados.
  • O modificador volátil não tem efeito.
  • Os tipos de dados float e double não estão disponíveis.
  • O compilador não suporta campos de bits.
  • funções C pode não retornar estruturas e estruturas não podem ser passados ​​como parâmetros em termos de valor. Atribuição Struct é possível.
  • Há alguma limitação do tamanho das variáveis ​​locais. Nem todas as operações estão disponíveis se o tamanho de variáveis ​​locais exceder 256 bytes.
  • Parte da biblioteca C está disponível apenas com fastcall chamando convenções (veja abaixo). Isto significa que você não pode misturar os ponteiros para essas funções com ponteiros para funções de usuário escrita.

O que é novo nesta versão:

  • Algumas questões macro e problemas com o código incorreto geradas pelo C compilador foram corrigidos.
  • Isto inclui a conversão de uma função de anular ponteiro e a rotina de divisão de tempo de execução.
  • A montadora também tinha algumas questões macro e um problema com alinhamentos superiores a 256 bytes.
  • Houve problemas com o modo de 80 colunas e Conio rolagem na biblioteca C128.
  • A biblioteca Atari agora tem rotinas de diretório POSIX.
  • Houve várias mudanças na documentação, correções e melhorias.

O que é novo na versão 2.13.0:.

  • Suporte para campos de bit foi adicionado
  • Esta versão melhora o cumprimento de normas e avisos adicionais são emitidos para o código duvidosa.
  • As bibliotecas são ligados para mais velocidade ou tamanho menor.
  • O compilador gera código mais rápido, em muitos casos, geralmente sem muito de um aumento no tamanho do código.

Programas semelhantes

Yasm
Yasm

17 Feb 15

dasm
dasm

2 Jun 15

OMake
OMake

3 Jun 15

DiffJ
DiffJ

20 Feb 15

Comentário para cc65

Comentários não encontrado
Adicionar comentário
Ligue imagens!